aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2010-02-01 21:33:45 -0500
committerPaul Mundt <lethal@linux-sh.org>2010-02-01 21:33:45 -0500
commit9d3f1881abeae0494a27716b08fcf2d3264bb0fa (patch)
treef457dd2d35af29bc831b93865efa47229d0b9bee
parentb6c58b1d987a5795086c5c2babd8c7367d2fdb8c (diff)
parentbc10e875d4aeaa93a0d418d8b4346b72f5067ea0 (diff)
Merge branch 'sh/stable-updates'
-rw-r--r--Documentation/feature-removal-schedule.txt49
-rw-r--r--Documentation/input/multi-touch-protocol.txt48
-rw-r--r--Documentation/trace/ftrace-design.txt26
-rw-r--r--Documentation/trace/ftrace.txt2
-rw-r--r--MAINTAINERS15
-rw-r--r--Makefile2
-rw-r--r--arch/arm/Kconfig70
-rw-r--r--arch/arm/Makefile4
-rw-r--r--arch/arm/boot/compressed/head.S8
-rw-r--r--arch/arm/boot/compressed/misc.c13
-rw-r--r--arch/arm/include/asm/cacheflush.h20
-rw-r--r--arch/arm/kernel/debug.S20
-rw-r--r--arch/arm/kernel/elf.c9
-rw-r--r--arch/arm/mach-gemini/include/mach/uncompress.h4
-rw-r--r--arch/arm/mach-kirkwood/rd88f6192-nas-setup.c6
-rw-r--r--arch/arm/mach-omap1/clock.c6
-rw-r--r--arch/arm/mach-omap2/clock34xx_data.c4
-rw-r--r--arch/arm/mach-omap2/clock44xx_data.c62
-rw-r--r--arch/arm/mach-omap2/cpuidle34xx.c2
-rw-r--r--arch/arm/mach-omap2/gpmc.c2
-rw-r--r--arch/arm/mach-omap2/id.c41
-rw-r--r--arch/arm/mach-omap2/irq.c18
-rw-r--r--arch/arm/mach-omap2/mux.c27
-rw-r--r--arch/arm/mach-omap2/mux.h24
-rw-r--r--arch/arm/mach-omap2/omap_hwmod.c3
-rw-r--r--arch/arm/mach-omap2/pm-debug.c12
-rw-r--r--arch/arm/mach-omap2/pm.h8
-rw-r--r--arch/arm/mach-omap2/pm34xx.c47
-rw-r--r--arch/arm/mach-omap2/prcm.c11
-rw-r--r--arch/arm/mach-omap2/prm.h2
-rw-r--r--arch/arm/mach-omap2/prm44xx.h32
-rw-r--r--arch/arm/mach-omap2/sleep34xx.S13
-rw-r--r--arch/arm/mach-orion5x/dns323-setup.c33
-rw-r--r--arch/arm/mach-orion5x/wrt350n-v2-setup.c79
-rw-r--r--arch/arm/mach-pxa/corgi.c1
-rw-r--r--arch/arm/mach-pxa/include/mach/mfp-pxa25x.h6
-rw-r--r--arch/arm/mach-pxa/irq.c14
-rw-r--r--arch/arm/mach-s3c6410/mach-hmt.c2
-rw-r--r--arch/arm/mm/mmu.c2
-rw-r--r--arch/arm/mm/proc-v6.S2
-rw-r--r--arch/arm/mm/proc-v7.S11
-rw-r--r--arch/arm/plat-mxc/include/mach/uncompress.h4
-rw-r--r--arch/arm/plat-omap/common.c26
-rw-r--r--arch/arm/plat-omap/dma.c2
-rw-r--r--arch/arm/plat-omap/dmtimer.c13
-rw-r--r--arch/arm/plat-omap/include/plat/cpu.h1
-rw-r--r--arch/arm/plat-omap/include/plat/irqs.h3
-rw-r--r--arch/arm/plat-omap/include/plat/omap_hwmod.h1
-rw-r--r--arch/arm/plat-orion/pcie.c6
-rw-r--r--arch/arm/tools/mach-types60
-rw-r--r--arch/microblaze/Kconfig2
-rw-r--r--arch/microblaze/include/asm/ptrace.h14
-rw-r--r--arch/microblaze/include/asm/unistd.h5
-rw-r--r--arch/microblaze/kernel/prom_parse.c2
-rw-r--r--arch/microblaze/kernel/syscall_table.S2
-rw-r--r--arch/mips/Kconfig1
-rw-r--r--arch/mips/boot/compressed/Makefile9
-rw-r--r--arch/mips/boot/compressed/decompress.c4
-rw-r--r--arch/mips/include/asm/irq.h1
-rw-r--r--arch/mips/include/asm/mach-powertv/asic_reg_map.h90
-rw-r--r--arch/mips/include/asm/mach-powertv/asic_regs.h135
-rw-r--r--arch/mips/include/asm/mipsregs.h12
-rw-r--r--arch/mips/kernel/cevt-r4k.c2
-rw-r--r--arch/mips/kernel/traps.c6
-rw-r--r--arch/mips/powertv/asic/asic-calliope.c131
-rw-r--r--arch/mips/powertv/asic/asic-cronus.c131
-rw-r--r--arch/mips/powertv/asic/asic-zeus.c131
-rw-r--r--arch/mips/powertv/asic/asic_devices.c46
-rwxr-xr-xarch/powerpc/boot/wrapper7
-rw-r--r--arch/powerpc/configs/40x/acadia_defconfig241
-rw-r--r--arch/powerpc/configs/40x/ep405_defconfig307
-rw-r--r--arch/powerpc/configs/40x/hcu4_defconfig256
-rw-r--r--arch/powerpc/configs/40x/kilauea_defconfig140
-rw-r--r--arch/powerpc/configs/40x/makalu_defconfig190
-rw-r--r--arch/powerpc/configs/40x/walnut_defconfig257
-rw-r--r--arch/powerpc/configs/44x/arches_defconfig135
-rw-r--r--arch/powerpc/configs/44x/bamboo_defconfig255
-rw-r--r--arch/powerpc/configs/44x/canyonlands_defconfig141
-rw-r--r--arch/powerpc/configs/44x/ebony_defconfig258
-rw-r--r--arch/powerpc/configs/44x/eiger_defconfig128
-rw-r--r--arch/powerpc/configs/44x/katmai_defconfig253
-rw-r--r--arch/powerpc/configs/44x/rainier_defconfig254
-rw-r--r--arch/powerpc/configs/44x/redwood_defconfig274
-rw-r--r--arch/powerpc/configs/44x/sam440ep_defconfig284
-rw-r--r--arch/powerpc/configs/44x/sequoia_defconfig202
-rw-r--r--arch/powerpc/configs/44x/taishan_defconfig258
-rw-r--r--arch/powerpc/configs/44x/warp_defconfig228
-rw-r--r--arch/powerpc/configs/52xx/cm5200_defconfig75
-rw-r--r--arch/powerpc/configs/52xx/lite5200b_defconfig90
-rw-r--r--arch/powerpc/configs/52xx/motionpro_defconfig79
-rw-r--r--arch/powerpc/configs/52xx/pcm030_defconfig83
-rw-r--r--arch/powerpc/configs/52xx/tqm5200_defconfig79
-rw-r--r--arch/powerpc/configs/83xx/asp8347_defconfig88
-rw-r--r--arch/powerpc/configs/83xx/kmeter1_defconfig68
-rw-r--r--arch/powerpc/configs/83xx/mpc8313_rdb_defconfig97
-rw-r--r--arch/powerpc/configs/83xx/mpc8315_rdb_defconfig100
-rw-r--r--arch/powerpc/configs/83xx/mpc832x_mds_defconfig89
-rw-r--r--arch/powerpc/configs/83xx/mpc832x_rdb_defconfig93
-rw-r--r--arch/powerpc/configs/83xx/mpc834x_itx_defconfig95
-rw-r--r--arch/powerpc/configs/83xx/mpc834x_itxgp_defconfig92
-rw-r--r--arch/powerpc/configs/83xx/mpc834x_mds_defconfig86
-rw-r--r--arch/powerpc/configs/83xx/mpc836x_mds_defconfig89
-rw-r--r--arch/powerpc/configs/83xx/mpc836x_rdk_defconfig87
-rw-r--r--arch/powerpc/configs/83xx/mpc837x_mds_defconfig89
-rw-r--r--arch/powerpc/configs/83xx/mpc837x_rdb_defconfig91
-rw-r--r--arch/powerpc/configs/83xx/sbc834x_defconfig85
-rw-r--r--arch/powerpc/configs/85xx/ksi8560_defconfig69
-rw-r--r--arch/powerpc/configs/85xx/mpc8540_ads_defconfig69
-rw-r--r--arch/powerpc/configs/85xx/mpc8560_ads_defconfig76
-rw-r--r--arch/powerpc/configs/85xx/mpc85xx_cds_defconfig75
-rw-r--r--arch/powerpc/configs/85xx/sbc8548_defconfig77
-rw-r--r--arch/powerpc/configs/85xx/sbc8560_defconfig72
-rw-r--r--arch/powerpc/configs/85xx/socrates_defconfig99
-rw-r--r--arch/powerpc/configs/85xx/stx_gp3_defconfig87
-rw-r--r--arch/powerpc/configs/85xx/tqm8540_defconfig89
-rw-r--r--arch/powerpc/configs/85xx/tqm8541_defconfig90
-rw-r--r--arch/powerpc/configs/85xx/tqm8548_defconfig95
-rw-r--r--arch/powerpc/configs/85xx/tqm8555_defconfig90
-rw-r--r--arch/powerpc/configs/85xx/tqm8560_defconfig90
-rw-r--r--arch/powerpc/configs/85xx/xes_mpc85xx_defconfig103
-rw-r--r--arch/powerpc/configs/86xx/gef_ppc9a_defconfig102
-rw-r--r--arch/powerpc/configs/86xx/gef_sbc310_defconfig99
-rw-r--r--arch/powerpc/configs/86xx/gef_sbc610_defconfig92
-rw-r--r--arch/powerpc/configs/86xx/mpc8610_hpcd_defconfig88
-rw-r--r--arch/powerpc/configs/86xx/mpc8641_hpcn_defconfig90
-rw-r--r--arch/powerpc/configs/86xx/sbc8641d_defconfig81
-rw-r--r--arch/powerpc/configs/adder875_defconfig57
-rw-r--r--arch/powerpc/configs/c2k_defconfig90
-rw-r--r--arch/powerpc/configs/ep8248e_defconfig64
-rw-r--r--arch/powerpc/configs/ep88xc_defconfig55
-rw-r--r--arch/powerpc/configs/linkstation_defconfig96
-rw-r--r--arch/powerpc/configs/mgcoge_defconfig74
-rw-r--r--arch/powerpc/configs/mgsuvd_defconfig63
-rw-r--r--arch/powerpc/configs/mpc5200_defconfig106
-rw-r--r--arch/powerpc/configs/mpc7448_hpc2_defconfig79
-rw-r--r--arch/powerpc/configs/mpc8272_ads_defconfig70
-rw-r--r--arch/powerpc/configs/mpc83xx_defconfig92
-rw-r--r--arch/powerpc/configs/mpc85xx_defconfig97
-rw-r--r--arch/powerpc/configs/mpc85xx_smp_defconfig97
-rw-r--r--arch/powerpc/configs/mpc866_ads_defconfig65
-rw-r--r--arch/powerpc/configs/mpc86xx_defconfig93
-rw-r--r--arch/powerpc/configs/mpc885_ads_defconfig55
-rw-r--r--arch/powerpc/configs/ppc40x_defconfig292
-rw-r--r--arch/powerpc/configs/ppc44x_defconfig309
-rw-r--r--arch/powerpc/configs/pq2fads_defconfig72
-rw-r--r--arch/powerpc/configs/prpmc2800_defconfig94
-rw-r--r--arch/powerpc/configs/storcenter_defconfig86
-rw-r--r--arch/powerpc/include/asm/elf.h8
-rw-r--r--arch/powerpc/include/asm/thread_info.h2
-rw-r--r--arch/powerpc/include/asm/topology.h4
-rw-r--r--arch/powerpc/kernel/head_8xx.S12
-rw-r--r--arch/powerpc/kernel/pci_of_scan.c10
-rw-r--r--arch/powerpc/kernel/process.c12
-rw-r--r--arch/powerpc/kernel/rtas-proc.c14
-rw-r--r--arch/powerpc/kernel/smp.c12
-rw-r--r--arch/powerpc/kernel/swsusp_32.S2
-rw-r--r--arch/powerpc/kernel/time.c11
-rw-r--r--arch/powerpc/kvm/Kconfig2
-rw-r--r--arch/powerpc/mm/mmap_64.c4
-rw-r--r--arch/powerpc/platforms/cell/spufs/coredump.c2
-rw-r--r--arch/powerpc/platforms/iseries/vio.c2
-rw-r--r--arch/powerpc/platforms/pseries/dlpar.c18
-rw-r--r--arch/powerpc/platforms/pseries/xics.c14
-rw-r--r--arch/powerpc/sysdev/ppc4xx_pci.c3
-rw-r--r--arch/s390/include/asm/irqflags.h9
-rw-r--r--arch/s390/kernel/entry.S1
-rw-r--r--arch/s390/kernel/entry64.S1
-rw-r--r--arch/s390/kernel/signal.c2
-rw-r--r--arch/s390/kvm/intercept.c4
-rw-r--r--arch/sh/boards/mach-se/7724/setup.c2
-rw-r--r--arch/sh/include/asm/unistd_32.h5
-rw-r--r--arch/sh/include/asm/unistd_64.h3
-rw-r--r--arch/sh/kernel/cpu/clock.c4
-rw-r--r--arch/sh/kernel/dwarf.c8
-rw-r--r--arch/sh/kernel/process_64.c2
-rw-r--r--arch/sh/kernel/syscalls_32.S1
-rw-r--r--arch/sh/kernel/syscalls_64.S1
-rw-r--r--arch/sparc/Kconfig5
-rw-r--r--arch/sparc/configs/sparc32_defconfig87
-rw-r--r--arch/sparc/configs/sparc64_defconfig131
-rw-r--r--arch/sparc/include/asm/elf_64.h13
-rw-r--r--arch/sparc/include/asm/io_32.h2
-rw-r--r--arch/sparc/include/asm/page_32.h2
-rw-r--r--arch/sparc/include/asm/param.h19
-rw-r--r--arch/sparc/include/asm/thread_info_64.h4
-rw-r--r--arch/sparc/include/asm/timex_32.h1
-rw-r--r--arch/sparc/include/asm/topology_64.h4
-rw-r--r--arch/sparc/include/asm/uaccess_32.h2
-rw-r--r--arch/sparc/include/asm/uaccess_64.h2
-rw-r--r--arch/sparc/kernel/central.c4
-rw-r--r--arch/sparc/kernel/irq_64.c41
-rw-r--r--arch/sparc/kernel/pcic.c103
-rw-r--r--arch/sparc/kernel/perf_event.c627
-rw-r--r--arch/sparc/kernel/process_64.c8
-rw-r--r--arch/sparc/kernel/sys_sparc_64.c6
-rw-r--r--arch/sparc/kernel/time_32.c116
-rw-r--r--arch/sparc/mm/fault_32.c12
-rw-r--r--arch/sparc/mm/fault_64.c13
-rw-r--r--arch/x86/Kconfig6
-rw-r--r--arch/x86/ia32/ia32_aout.c11
-rw-r--r--arch/x86/include/asm/amd_iommu_proto.h1
-rw-r--r--arch/x86/include/asm/cpu_debug.h127
-rw-r--r--arch/x86/include/asm/elf.h10
-rw-r--r--arch/x86/include/asm/hpet.h1
-rw-r--r--arch/x86/include/asm/microcode.h2
-rw-r--r--arch/x86/include/asm/perf_event.h1
-rw-r--r--arch/x86/include/asm/thread_info.h2
-rw-r--r--arch/x86/kernel/acpi/boot.c22
-rw-r--r--arch/x86/kernel/amd_iommu.c23
-rw-r--r--arch/x86/kernel/amd_iommu_init.c3
-rw-r--r--arch/x86/kernel/apic/apic.c15
-rw-r--r--arch/x86/kernel/apic/apic_flat_64.c5
-rw-r--r--arch/x86/kernel/apic/probe_64.c8
-rw-r--r--arch/x86/kernel/cpu/Makefile2
-rw-r--r--arch/x86/kernel/cpu/cpu_debug.c688
-rw-r--r--arch/x86/kernel/cpu/perf_event.c7
-rw-r--r--arch/x86/kernel/cpuid.c2
-rw-r--r--arch/x86/kernel/hpet.c8
-rw-r--r--arch/x86/kernel/kgdb.c222
-rw-r--r--arch/x86/kernel/microcode_amd.c44
-rw-r--r--arch/x86/kernel/microcode_core.c6
-rw-r--r--arch/x86/kernel/msr.c2
-rw-r--r--arch/x86/kernel/process.c12
-rw-r--r--arch/x86/kernel/process_64.c11
-rw-r--r--arch/x86/kernel/quirks.c13
-rw-r--r--arch/x86/kernel/reboot.c9
-rw-r--r--arch/x86/kernel/setup.c14
-rw-r--r--arch/x86/kernel/uv_time.c13
-rw-r--r--arch/x86/kvm/lapic.c11
-rw-r--r--arch/x86/kvm/mmu.c6
-rw-r--r--arch/x86/kvm/paging_tmpl.h4
-rw-r--r--arch/x86/kvm/x86.c6
-rw-r--r--arch/x86/mm/kmmio.c7
-rw-r--r--arch/x86/mm/srat_64.c4
-rw-r--r--arch/x86/oprofile/nmi_int.c3
-rw-r--r--arch/x86/pci/Makefile2
-rw-r--r--arch/x86/pci/intel_bus.c94
-rw-r--r--block/blk-ioc.c5
-rw-r--r--block/blk-settings.c39
-rw-r--r--block/cfq-iosched.c6
-rw-r--r--block/genhd.c2
-rw-r--r--drivers/acpi/acpi_pad.c37
-rw-r--r--drivers/acpi/bus.c7
-rw-r--r--drivers/acpi/ec.c126
-rw-r--r--drivers/acpi/pci_link.c2
-rw-r--r--drivers/acpi/pci_root.c2
-rw-r--r--drivers/acpi/power.c2
-rw-r--r--drivers/acpi/power_meter.c4
-rw-r--r--drivers/acpi/processor_idle.c64
-rw-r--r--drivers/acpi/processor_pdc.c32
-rw-r--r--drivers/acpi/processor_thermal.c3
-rw-r--r--drivers/acpi/sbs.c3
-rw-r--r--drivers/acpi/sbshc.c2
-rw-r--r--drivers/acpi/video.c43
-rw-r--r--drivers/ata/libata-eh.c5
-rw-r--r--drivers/base/devtmpfs.c3
-rw-r--r--drivers/base/memory.c32
-rw-r--r--drivers/block/drbd/Kconfig2
-rw-r--r--drivers/block/drbd/drbd_int.h7
-rw-r--r--drivers/block/drbd/drbd_main.c1
-rw-r--r--drivers/block/drbd/drbd_nl.c19
-rw-r--r--drivers/block/drbd/drbd_receiver.c46
-rw-r--r--drivers/char/Kconfig2
-rw-r--r--drivers/char/agp/amd64-agp.c13
-rw-r--r--drivers/char/nozomi.c2
-rw-r--r--drivers/char/tty_io.c2
-rw-r--r--drivers/char/uv_mmtimer.c18
-rw-r--r--drivers/firewire/core-card.c41
-rw-r--r--drivers/firewire/core-cdev.c50
-rw-r--r--drivers/firewire/ohci.c4
-rw-r--r--drivers/gpu/drm/Kconfig2
-rw-r--r--drivers/gpu/drm/drm_edid.c3
-rw-r--r--drivers/gpu/drm/drm_fb_helper.c2
-rw-r--r--drivers/gpu/drm/drm_gem.c13
-rw-r--r--drivers/gpu/drm/i915/i915_debugfs.c2
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h2
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c54
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_bios.c187
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_bo.c2
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_connector.c31
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_dma.c76
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_dp.c8
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_drv.c4
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_drv.h3
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_gem.c20
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_irq.c7
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_mem.c15
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_state.c1
-rw-r--r--drivers/gpu/drm/nouveau/nv04_instmem.c2
-rw-r--r--drivers/gpu/drm/nouveau/nv50_crtc.c22
-rw-r--r--drivers/gpu/drm/nouveau/nv50_fifo.c2
-rw-r--r--drivers/gpu/drm/nouveau/nv50_graph.c3
-rw-r--r--drivers/gpu/drm/nouveau/nv50_sor.c13
-rw-r--r--drivers/gpu/drm/radeon/atom.c102
-rw-r--r--drivers/gpu/drm/radeon/atom.h1
-rw-r--r--drivers/gpu/drm/radeon/atombios_crtc.c259
-rw-r--r--drivers/gpu/drm/radeon/atombios_dp.c27
-rw-r--r--drivers/gpu/drm/radeon/r100.c5
-rw-r--r--drivers/gpu/drm/radeon/r200.c7
-rw-r--r--drivers/gpu/drm/radeon/r420.c4
-rw-r--r--drivers/gpu/drm/radeon/r600.c136
-rw-r--r--drivers/gpu/drm/radeon/r600_blit_kms.c21
-rw-r--r--drivers/gpu/drm/radeon/r600_cs.c83
-rw-r--r--drivers/gpu/drm/radeon/r600d.h25
-rw-r--r--drivers/gpu/drm/radeon/radeon.h12
-rw-r--r--drivers/gpu/drm/radeon/radeon_agp.c11
-rw-r--r--drivers/gpu/drm/radeon/radeon_clocks.c4
-rw-r--r--drivers/gpu/drm/radeon/radeon_cs.c3
-rw-r--r--drivers/gpu/drm/radeon/radeon_device.c1
-rw-r--r--drivers/gpu/drm/radeon/radeon_display.c45
-rw-r--r--drivers/gpu/drm/radeon/radeon_encoders.c165
-rw-r--r--drivers/gpu/drm/radeon/radeon_legacy_crtc.c77
-rw-r--r--drivers/gpu/drm/radeon/radeon_mode.h30
-rw-r--r--drivers/gpu/drm/radeon/radeon_object.c3
-rw-r--r--drivers/gpu/drm/radeon/reg_srcs/r2002
-rw-r--r--drivers/gpu/drm/radeon/rv770.c64
-rw-r--r--drivers/gpu/drm/ttm/ttm_bo.c69
-rw-r--r--drivers/gpu/drm/ttm/ttm_bo_util.c9
-rw-r--r--drivers/gpu/drm/ttm/ttm_lock.c2
-rw-r--r--drivers/gpu/drm/ttm/ttm_object.c2
-rw-r--r--drivers/gpu/drm/ttm/ttm_tt.c23
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c25
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_drv.c76
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_drv.h7
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c19
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_fb.c8
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c22
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c2
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_kms.c22
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c9
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_resource.c78
-rw-r--r--drivers/hwmon/amc6821.c1
-rw-r--r--drivers/hwmon/asus_atk0110.c19
-rw-r--r--drivers/hwmon/fschmd.c7
-rw-r--r--drivers/hwmon/smsc47m1.c2
-rw-r--r--drivers/i2c/busses/i2c-imx.c26
-rw-r--r--drivers/infiniband/hw/ipath/ipath_fs.c4
-rw-r--r--drivers/input/input.c1
-rw-r--r--drivers/input/misc/winbond-cir.c2
-rw-r--r--drivers/input/mouse/lifebook.c6
-rw-r--r--drivers/input/touchscreen/ad7879.c197
-rw-r--r--drivers/macintosh/smu.c2
-rw-r--r--drivers/macintosh/therm_pm72.c2
-rw-r--r--drivers/macintosh/therm_windtunnel.c2
-rw-r--r--drivers/md/dm-table.c20
-rw-r--r--drivers/media/IR/ir-keytable.c2
-rw-r--r--drivers/media/common/tuners/tda8290.c12
-rw-r--r--drivers/media/dvb/Kconfig4
-rw-r--r--drivers/media/dvb/Makefile14
-rw-r--r--drivers/media/dvb/frontends/Kconfig19
-rw-r--r--drivers/media/dvb/frontends/Makefile2
-rw-r--r--drivers/media/dvb/frontends/dib8000.h2
-rw-r--r--drivers/media/dvb/frontends/lgdt3305.h6
-rw-r--r--drivers/media/dvb/frontends/mb86a16.c1878
-rw-r--r--drivers/media/dvb/frontends/mb86a16.h52
-rw-r--r--drivers/media/dvb/frontends/mb86a16_priv.h151
-rw-r--r--drivers/media/dvb/frontends/tda10021.c4
-rw-r--r--drivers/media/dvb/frontends/tda665x.c257
-rw-r--r--drivers/media/dvb/frontends/tda665x.h52
-rw-r--r--drivers/media/dvb/mantis/Kconfig32
-rw-r--r--drivers/media/dvb/mantis/Makefile28
-rw-r--r--drivers/media/dvb/mantis/hopper_cards.c275
-rw-r--r--drivers/media/dvb/mantis/hopper_vp3028.c88
-rw-r--r--drivers/media/dvb/mantis/hopper_vp3028.h30
-rw-r--r--drivers/media/dvb/mantis/mantis_ca.c207
-rw-r--r--drivers/media/dvb/mantis/mantis_ca.h27
-rw-r--r--drivers/media/dvb/mantis/mantis_cards.c305
-rw-r--r--drivers/media/dvb/mantis/mantis_common.h179
-rw-r--r--drivers/media/dvb/mantis/mantis_core.c238
-rw-r--r--drivers/media/dvb/mantis/mantis_core.h57
-rw-r--r--drivers/media/dvb/mantis/mantis_dma.c256
-rw-r--r--drivers/media/dvb/mantis/mantis_dma.h30
-rw-r--r--drivers/media/dvb/mantis/mantis_dvb.c296
-rw-r--r--drivers/media/dvb/mantis/mantis_dvb.h35
-rw-r--r--drivers/media/dvb/mantis/mantis_evm.c117
-rw-r--r--drivers/media/dvb/mantis/mantis_hif.c240
-rw-r--r--drivers/media/dvb/mantis/mantis_hif.h29
-rw-r--r--drivers/media/dvb/mantis/mantis_i2c.c267
-rw-r--r--drivers/media/dvb/mantis/mantis_i2c.h30
-rw-r--r--drivers/media/dvb/mantis/mantis_input.c148
-rw-r--r--drivers/media/dvb/mantis/mantis_ioc.c130
-rw-r--r--drivers/media/dvb/mantis/mantis_ioc.h51
-rw-r--r--drivers/media/dvb/mantis/mantis_link.h83
-rw-r--r--drivers/media/dvb/mantis/mantis_pci.c177
-rw-r--r--drivers/media/dvb/mantis/mantis_pci.h27
-rw-r--r--drivers/media/dvb/mantis/mantis_pcmcia.c120
-rw-r--r--drivers/media/dvb/mantis/mantis_reg.h197
-rw-r--r--drivers/media/dvb/mantis/mantis_uart.c186
-rw-r--r--drivers/media/dvb/mantis/mantis_uart.h58
-rw-r--r--drivers/media/dvb/mantis/mantis_vp1033.c212
-rw-r--r--drivers/media/dvb/mantis/mantis_vp1033.h30
-rw-r--r--drivers/media/dvb/mantis/mantis_vp1034.c119
-rw-r--r--drivers/media/dvb/mantis/mantis_vp1034.h33
-rw-r--r--drivers/media/dvb/mantis/mantis_vp1041.c358
-rw-r--r--drivers/media/dvb/mantis/mantis_vp1041.h33
-rw-r--r--drivers/media/dvb/mantis/mantis_vp2033.c187
-rw-r--r--drivers/media/dvb/mantis/mantis_vp2033.h30
-rw-r--r--drivers/media/dvb/mantis/mantis_vp2040.c186
-rw-r--r--drivers/media/dvb/mantis/mantis_vp2040.h32
-rw-r--r--drivers/media/dvb/mantis/mantis_vp3028.c38
-rw-r--r--drivers/media/dvb/mantis/mantis_vp3028.h33
-rw-r--r--drivers/media/dvb/mantis/mantis_vp3030.c105
-rw-r--r--drivers/media/dvb/mantis/mantis_vp3030.h30
-rw-r--r--drivers/media/video/gspca/gspca.c2
-rw-r--r--drivers/media/video/gspca/m5602/m5602_s5k4aa.c6
-rw-r--r--drivers/media/video/gspca/ov534.c2
-rw-r--r--drivers/media/video/gspca/sn9c20x.c2
-rw-r--r--drivers/media/video/gspca/stv06xx/stv06xx_vv6410.h1
-rw-r--r--drivers/media/video/gspca/sunplus.c26
-rw-r--r--drivers/media/video/gspca/vc032x.c4
-rw-r--r--drivers/media/video/mx1_camera.c2
-rw-r--r--drivers/media/video/rj54n1cb0c.c2
-rw-r--r--drivers/media/video/saa7134/saa7134-core.c13
-rw-r--r--drivers/media/video/saa7134/saa7134-ts.c13
-rw-r--r--drivers/media/video/sh_mobile_ceu_camera.c2
-rw-r--r--drivers/media/video/uvc/uvc_ctrl.c2
-rw-r--r--drivers/media/video/uvc/uvc_queue.c13
-rw-r--r--drivers/media/video/uvc/uvc_video.c45
-rw-r--r--drivers/media/video/uvc/uvcvideo.h5
-rw-r--r--drivers/message/fusion/mptbase.c2
-rw-r--r--drivers/mfd/Makefile8
-rw-r--r--drivers/mfd/asic3.c40
-rw-r--r--drivers/mfd/mc13783-core.c4
-rw-r--r--drivers/mfd/t7l66xb.c55
-rw-r--r--drivers/mfd/tc6387xb.c119
-rw-r--r--drivers/mfd/tc6393xb.c56
-rw-r--r--drivers/mfd/tmio_core.c52
-rw-r--r--drivers/mfd/wm8350-core.c3
-rw-r--r--drivers/mfd/wm8350-irq.c4
-rw-r--r--drivers/mmc/host/tmio_mmc.c59
-rw-r--r--drivers/mmc/host/tmio_mmc.h46
-rw-r--r--drivers/mtd/maps/Kconfig17
-rw-r--r--drivers/mtd/maps/pismo.c320
-rw-r--r--drivers/mtd/mtdoops.c2
-rw-r--r--drivers/mtd/tests/mtd_readtest.c6
-rw-r--r--drivers/mtd/tests/mtd_speedtest.c7
-rw-r--r--drivers/mtd/tests/mtd_stresstest.c6
-rw-r--r--drivers/mtd/ubi/cdev.c1
-rw-r--r--drivers/mtd/ubi/kapi.c15
-rw-r--r--drivers/mtd/ubi/upd.c1
-rw-r--r--drivers/mtd/ubi/vtbl.c1
-rw-r--r--drivers/net/benet/be_cmds.c2
-rw-r--r--drivers/net/benet/be_main.c8
-rw-r--r--drivers/net/bfin_mac.c5
-rw-r--r--drivers/net/e1000/e1000.h2
-rw-r--r--drivers/net/e1000/e1000_main.c43
-rw-r--r--drivers/net/e1000e/e1000.h1
-rw-r--r--drivers/net/e1000e/netdev.c57
-rw-r--r--drivers/net/igb/igb_main.c4
-rw-r--r--drivers/net/igbvf/netdev.c14
-rw-r--r--drivers/net/ixgb/ixgb_main.c10
-rw-r--r--drivers/net/ixgbe/ixgbe_main.c12
-rw-r--r--drivers/net/pcmcia/fmvj18x_cs.c1
-rw-r--r--drivers/net/phy/phy.c4
-rw-r--r--drivers/net/phy/phy_device.c1
-rw-r--r--drivers/net/qlge/qlge_main.c15
-rw-r--r--drivers/net/s2io.c2
-rw-r--r--drivers/net/sfc/mcdi.c7
-rw-r--r--drivers/net/sfc/mcdi.h1
-rw-r--r--drivers/net/sfc/mcdi_pcol.h4
-rw-r--r--drivers/net/sfc/mtd.c5
-rw-r--r--drivers/net/sfc/qt202x_phy.c6
-rw-r--r--drivers/net/sky2.c42
-rw-r--r--drivers/net/tulip/tulip_core.c1
-rw-r--r--drivers/net/ucc_geth.c5
-rw-r--r--drivers/net/virtio_net.c3
-rw-r--r--drivers/net/wimax/i2400m/i2400m-usb.h2
-rw-r--r--drivers/net/wimax/i2400m/usb.c12
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-5000.c5
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-devtrace.c26
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-devtrace.h26
-rw-r--r--drivers/net/wireless/iwmc3200wifi/commands.c4
-rw-r--r--drivers/net/wireless/iwmc3200wifi/commands.h1
-rw-r--r--drivers/net/wireless/p54/p54pci.c8
-rw-r--r--drivers/net/wireless/zd1211rw/zd_usb.c1
-rw-r--r--drivers/pci/pcie/aer/aer_inject.c12
-rw-r--r--drivers/pci/probe.c4
-rw-r--r--drivers/platform/x86/Kconfig1
-rw-r--r--drivers/platform/x86/eeepc-laptop.c298
-rw-r--r--drivers/platform/x86/sony-laptop.c9
-rw-r--r--drivers/regulator/wm8350-regulator.c4
-rw-r--r--drivers/s390/block/dasd.c8
-rw-r--r--drivers/s390/block/dasd_eckd.c2
-rw-r--r--drivers/s390/block/dasd_ioctl.c7
-rw-r--r--drivers/s390/block/dasd_proc.c7
-rw-r--r--drivers/s390/char/sclp_vt220.c4
-rw-r--r--drivers/s390/crypto/zcrypt_pcicc.c2
-rw-r--r--drivers/s390/crypto/zcrypt_pcixcc.c2
-rw-r--r--drivers/s390/scsi/zfcp_cfdc.c9
-rw-r--r--drivers/s390/scsi/zfcp_dbf.c2
-rw-r--r--drivers/s390/scsi/zfcp_ext.h5
-rw-r--r--drivers/s390/scsi/zfcp_fc.c84
-rw-r--r--drivers/s390/scsi/zfcp_fc.h2
-rw-r--r--drivers/s390/scsi/zfcp_fsf.c19
-rw-r--r--drivers/s390/scsi/zfcp_scsi.c1
-rw-r--r--drivers/scsi/aacraid/aachba.c52
-rw-r--r--drivers/scsi/aacraid/aacraid.h5
-rw-r--r--drivers/scsi/aacraid/commctrl.c28
-rw-r--r--drivers/scsi/aacraid/comminit.c6
-rw-r--r--drivers/scsi/aacraid/commsup.c72
-rw-r--r--drivers/scsi/aacraid/dpcsup.c36
-rw-r--r--drivers/scsi/aic7xxx/aic79xx_core.c53
-rw-r--r--[-rwxr-xr-x]drivers/scsi/lpfc/lpfc_hbadisc.c0
-rw-r--r--[-rwxr-xr-x]drivers/scsi/lpfc/lpfc_hw4.h0
-rw-r--r--drivers/scsi/qla2xxx/qla_def.h3
-rw-r--r--drivers/scsi/qla2xxx/qla_init.c12
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c12
-rw-r--r--drivers/scsi/qla2xxx/qla_sup.c3
-rw-r--r--drivers/scsi/qla2xxx/qla_version.h2
-rw-r--r--drivers/scsi/scsi_lib.c2
-rw-r--r--drivers/scsi/scsi_transport_fc.c5
-rw-r--r--drivers/serial/8250_pnp.c10
-rw-r--r--drivers/serial/imx.c2
-rw-r--r--drivers/serial/pmac_zilog.c11
-rw-r--r--drivers/serial/serial_core.c105
-rw-r--r--drivers/serial/serial_cs.c4
-rw-r--r--drivers/spi/spi_sh_msiof.c15
-rw-r--r--drivers/staging/Kconfig2
-rw-r--r--drivers/staging/asus_oled/asus_oled.c12
-rw-r--r--drivers/staging/cx25821/cx25821-medusa-video.c4
-rw-r--r--drivers/staging/et131x/et1310_address_map.h18
-rw-r--r--drivers/staging/et131x/et1310_rx.c6
-rw-r--r--drivers/staging/hv/Hv.c50
-rw-r--r--drivers/staging/hv/Hv.h6
-rw-r--r--drivers/staging/hv/Vmbus.c12
-rw-r--r--drivers/usb/core/devices.c2
-rw-r--r--drivers/usb/core/hcd.c18
-rw-r--r--drivers/usb/core/hub.c18
-rw-r--r--drivers/usb/core/message.c8
-rw-r--r--drivers/usb/core/sysfs.c6
-rw-r--r--drivers/usb/host/ehci-hcd.c5
-rw-r--r--drivers/usb/host/ehci-hub.c20
-rw-r--r--drivers/usb/host/ehci-q.c11
-rw-r--r--drivers/usb/host/fhci-hcd.c3
-rw-r--r--drivers/usb/host/isp1362-hcd.c25
-rw-r--r--drivers/usb/host/isp1760-hcd.c6
-rw-r--r--drivers/usb/host/r8a66597-hcd.c17
-rw-r--r--drivers/usb/host/uhci-hcd.c15
-rw-r--r--drivers/usb/host/uhci-hub.c2
-rw-r--r--drivers/usb/serial/generic.c10
-rw-r--r--drivers/usb/storage/unusual_devs.h7
-rw-r--r--drivers/usb/storage/usb.c3
-rw-r--r--drivers/watchdog/Kconfig4
-rw-r--r--drivers/watchdog/iTCO_wdt.c45
-rw-r--r--drivers/watchdog/ixp2000_wdt.c1
-rw-r--r--drivers/watchdog/sbc_fitpc2_wdt.c11
-rw-r--r--fs/9p/vfs_super.c3
-rw-r--r--fs/affs/affs.h2
-rw-r--r--fs/affs/namei.c7
-rw-r--r--fs/affs/super.c31
-rw-r--r--fs/affs/symlink.c7
-rw-r--r--fs/bfs/inode.c43
-rw-r--r--fs/binfmt_aout.c1
-rw-r--r--fs/binfmt_elf.c27
-rw-r--r--fs/binfmt_elf_fdpic.c3
-rw-r--r--fs/binfmt_flat.c1
-rw-r--r--fs/binfmt_som.c1
-rw-r--r--fs/bio.c2
-rw-r--r--fs/btrfs/acl.c13
-rw-r--r--fs/btrfs/ctree.h1
-rw-r--r--fs/btrfs/disk-io.c6
-rw-r--r--fs/btrfs/extent-tree.c32
-rw-r--r--fs/btrfs/extent_map.c14
-rw-r--r--fs/btrfs/file.c100
-rw-r--r--fs/btrfs/inode.c22
-rw-r--r--fs/btrfs/ordered-data.c2
-rw-r--r--fs/btrfs/relocation.c4
-rw-r--r--fs/btrfs/super.c9
-rw-r--r--fs/btrfs/volumes.c17
-rw-r--r--fs/compat_ioctl.c3
-rw-r--r--fs/debugfs/inode.c11
-rw-r--r--fs/ecryptfs/crypto.c4
-rw-r--r--fs/ecryptfs/file.c17
-rw-r--r--fs/ecryptfs/inode.c134
-rw-r--r--fs/ecryptfs/main.c4
-rw-r--r--fs/eventfd.c89
-rw-r--r--fs/exec.c26
-rw-r--r--fs/ext4/ext4.h9
-rw-r--r--fs/ext4/extents.c21
-rw-r--r--fs/ext4/inode.c82
-rw-r--r--fs/fcntl.c6
-rw-r--r--fs/reiserfs/journal.c2
-rw-r--r--fs/romfs/super.c1
-rw-r--r--fs/xfs/linux-2.6/xfs_super.c14
-rw-r--r--fs/xfs/linux-2.6/xfs_sync.c183
-rw-r--r--fs/xfs/linux-2.6/xfs_sync.h2
-rw-r--r--fs/xfs/quota/xfs_qm_syscalls.c2
-rw-r--r--fs/xfs/xfs_dfrag.c106
-rw-r--r--fs/xfs/xfs_iget.c1
-rw-r--r--fs/xfs/xfs_inode.c21
-rw-r--r--fs/xfs/xfs_rtalloc.c2
-rw-r--r--include/acpi/platform/aclinux.h2
-rw-r--r--include/drm/drm_mode.h2
-rw-r--r--include/drm/ttm/ttm_bo_driver.h5
-rw-r--r--include/linux/acpi.h6
-rw-r--r--include/linux/binfmts.h1
-rw-r--r--include/linux/blkdev.h9
-rw-r--r--include/linux/drbd.h2
-rw-r--r--include/linux/drbd_nl.h1
-rw-r--r--include/linux/eventfd.h16
-rw-r--r--include/linux/firewire-cdev.h4
-rw-r--r--include/linux/genhd.h6
-rw-r--r--include/linux/hw_breakpoint.h2
-rw-r--r--include/linux/input.h1
-rw-r--r--include/linux/iocontext.h27
-rw-r--r--include/linux/kmsg_dump.h1
-rw-r--r--include/linux/mfd/tmio.h39
-rw-r--r--include/linux/mfd/wm8350/pmic.h28
-rw-r--r--include/linux/mtd/pismo.h17
-rw-r--r--include/linux/pagemap.h2
-rw-r--r--include/linux/pci.h4
-rw-r--r--include/linux/perf_event.h11
-rw-r--r--include/linux/phy.h1
-rw-r--r--include/linux/sched.h2
-rw-r--r--include/linux/spi/ad7879.h12
-rw-r--r--include/linux/topology.h2
-rw-r--r--include/linux/usb.h1
-rw-r--r--include/net/netns/xfrm.h6
-rw-r--r--include/net/netrom.h2
-rw-r--r--include/net/xfrm.h4
-rw-r--r--include/scsi/scsi_bsg_fc.h2
-rw-r--r--kernel/cpu.c10
-rw-r--r--kernel/fork.c15
-rw-r--r--kernel/hw_breakpoint.c56
-rw-r--r--kernel/kexec.c4
-rw-r--r--kernel/kgdb.c3
-rw-r--r--kernel/lockdep.c2
-rw-r--r--kernel/panic.c3
-rw-r--r--kernel/perf_event.c9
-rw-r--r--kernel/printk.c1
-rw-r--r--kernel/sched.c44
-rw-r--r--kernel/sched_fair.c2
-rw-r--r--kernel/time/clockevents.c3
-rw-r--r--kernel/time/clocksource.c18
-rw-r--r--kernel/timer.c3
-rw-r--r--kernel/trace/Kconfig4
-rw-r--r--kernel/trace/ring_buffer.c24
-rw-r--r--kernel/trace/trace.c5
-rw-r--r--lib/dma-debug.c2
-rw-r--r--mm/filemap.c100
-rw-r--r--mm/page_alloc.c5
-rw-r--r--mm/vmalloc.c4
-rw-r--r--net/8021q/vlan_dev.c2
-rw-r--r--net/appletalk/aarp.c2
-rw-r--r--net/ax25/ax25_out.c6
-rw-r--r--net/dccp/ccid.c18
-rw-r--r--net/dccp/ccid.h2
-rw-r--r--net/dccp/probe.c3
-rw-r--r--net/ipv4/inet_diag.c2
-rw-r--r--net/ipv4/route.c2
-rw-r--r--net/ipv4/tcp_probe.c19
-rw-r--r--net/ipv4/xfrm4_policy.c14
-rw-r--r--net/ipv6/xfrm6_policy.c25
-rw-r--r--net/mac80211/cfg.c3
-rw-r--r--net/mac80211/rc80211_pid_algo.c2
-rw-r--r--net/netrom/nr_route.c11
-rw-r--r--net/rose/rose_link.c8
-rw-r--r--net/rose/rose_route.c5
-rw-r--r--net/wireless/sme.c1
-rw-r--r--net/xfrm/xfrm_policy.c75
-rw-r--r--net/xfrm/xfrm_state.c6
-rw-r--r--net/xfrm/xfrm_user.c14
-rw-r--r--security/inode.c11
-rw-r--r--sound/core/sound.c4
-rw-r--r--sound/core/sound_oss.c2
-rw-r--r--sound/pci/hda/hda_intel.c1
-rw-r--r--sound/pci/hda/patch_realtek.c131
-rw-r--r--sound/pci/hda/patch_sigmatel.c61
-rw-r--r--sound/soc/codecs/tlv320aic23.c2
-rw-r--r--sound/soc/codecs/wm8903.c3
-rw-r--r--sound/soc/omap/Makefile2
-rw-r--r--sound/sound_core.c2
-rw-r--r--tools/perf/.gitignore1
-rw-r--r--tools/perf/builtin-kmem.c7
-rw-r--r--tools/perf/builtin-report.c2
-rw-r--r--tools/perf/builtin-timechart.c2
-rw-r--r--virt/kvm/eventfd.c18
-rw-r--r--virt/kvm/irq_comm.c6
678 files changed, 22185 insertions, 7125 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt
index 870d190fe617..0a46833c1b76 100644
--- a/Documentation/feature-removal-schedule.txt
+++ b/Documentation/feature-removal-schedule.txt
@@ -493,3 +493,52 @@ Why: These two features use non-standard interfaces. There are the
493Who: Corentin Chary <corentin.chary@gmail.com> 493Who: Corentin Chary <corentin.chary@gmail.com>
494 494
495---------------------------- 495----------------------------
496
497What: usbvideo quickcam_messenger driver
498When: 2.6.35
499Files: drivers/media/video/usbvideo/quickcam_messenger.[ch]
500Why: obsolete v4l1 driver replaced by gspca_stv06xx
501Who: Hans de Goede <hdegoede@redhat.com>
502
503----------------------------
504
505What: ov511 v4l1 driver
506When: 2.6.35
507Files: drivers/media/video/ov511.[ch]
508Why: obsolete v4l1 driver replaced by gspca_ov519
509Who: Hans de Goede <hdegoede@redhat.com>
510
511----------------------------
512
513What: w9968cf v4l1 driver
514When: 2.6.35
515Files: drivers/media/video/w9968cf*.[ch]
516Why: obsolete v4l1 driver replaced by gspca_ov519
517Who: Hans de Goede <hdegoede@redhat.com>
518
519----------------------------
520
521What: ovcamchip sensor framework
522When: 2.6.35
523Files: drivers/media/video/ovcamchip/*
524Why: Only used by obsoleted v4l1 drivers
525Who: Hans de Goede <hdegoede@redhat.com>
526
527----------------------------
528
529What: stv680 v4l1 driver
530When: 2.6.35
531Files: drivers/media/video/stv680.[ch]
532Why: obsolete v4l1 driver replaced by gspca_stv0680
533Who: Hans de Goede <hdegoede@redhat.com>
534
535----------------------------
536
537What: zc0301 v4l driver
538When: 2.6.35
539Files: drivers/media/video/zc0301/*
540Why: Duplicate functionality with the gspca_zc3xx driver, zc0301 only
541 supports 2 USB-ID's (because it only supports a limited set of
542 sensors) wich are also supported by the gspca_zc3xx driver
543 (which supports 53 USB-ID's in total)
544Who: Hans de Goede <hdegoede@redhat.com>
diff --git a/Documentation/input/multi-touch-protocol.txt b/Documentation/input/multi-touch-protocol.txt
index a12ea3b586e6..8490480ce432 100644
--- a/Documentation/input/multi-touch-protocol.txt
+++ b/Documentation/input/multi-touch-protocol.txt
@@ -27,12 +27,30 @@ set of events/packets.
27 27
28A set of ABS_MT events with the desired properties is defined. The events 28A set of ABS_MT events with the desired properties is defined. The events
29are divided into categories, to allow for partial implementation. The 29are divided into categories, to allow for partial implementation. The
30minimum set consists of ABS_MT_TOUCH_MAJOR, ABS_MT_POSITION_X and 30minimum set consists of ABS_MT_POSITION_X and ABS_MT_POSITION_Y, which
31ABS_MT_POSITION_Y, which allows for multiple fingers to be tracked. If the 31allows for multiple fingers to be tracked. If the device supports it, the
32device supports it, the ABS_MT_WIDTH_MAJOR may be used to provide the size 32ABS_MT_TOUCH_MAJOR and ABS_MT_WIDTH_MAJOR may be used to provide the size
33of the approaching finger. Anisotropy and direction may be specified with 33of the contact area and approaching finger, respectively.
34ABS_MT_TOUCH_MINOR, ABS_MT_WIDTH_MINOR and ABS_MT_ORIENTATION. The 34
35ABS_MT_TOOL_TYPE may be used to specify whether the touching tool is a 35The TOUCH and WIDTH parameters have a geometrical interpretation; imagine
36looking through a window at someone gently holding a finger against the
37glass. You will see two regions, one inner region consisting of the part
38of the finger actually touching the glass, and one outer region formed by
39the perimeter of the finger. The diameter of the inner region is the
40ABS_MT_TOUCH_MAJOR, the diameter of the outer region is
41ABS_MT_WIDTH_MAJOR. Now imagine the person pressing the finger harder
42against the glass. The inner region will increase, and in general, the
43ratio ABS_MT_TOUCH_MAJOR / ABS_MT_WIDTH_MAJOR, which is always smaller than
44unity, is related to the finger pressure. For pressure-based devices,
45ABS_MT_PRESSURE may be used to provide the pressure on the contact area
46instead.
47
48In addition to the MAJOR parameters, the oval shape of the finger can be
49described by adding the MINOR parameters, such that MAJOR and MINOR are the
50major and minor axis of an ellipse. Finally, the orientation of the oval
51shape can be describe with the ORIENTATION parameter.
52
53The ABS_MT_TOOL_TYPE may be used to specify whether the touching tool is a
36finger or a pen or something else. Devices with more granular information 54finger or a pen or something else. Devices with more granular information
37may specify general shapes as blobs, i.e., as a sequence of rectangular 55may specify general shapes as blobs, i.e., as a sequence of rectangular
38shapes grouped together by an ABS_MT_BLOB_ID. Finally, for the few devices 56shapes grouped together by an ABS_MT_BLOB_ID. Finally, for the few devices
@@ -42,11 +60,9 @@ report finger tracking from hardware [5].
42Here is what a minimal event sequence for a two-finger touch would look 60Here is what a minimal event sequence for a two-finger touch would look
43like: 61like:
44 62
45 ABS_MT_TOUCH_MAJOR
46 ABS_MT_POSITION_X 63 ABS_MT_POSITION_X
47 ABS_MT_POSITION_Y 64 ABS_MT_POSITION_Y
48 SYN_MT_REPORT 65 SYN_MT_REPORT
49 ABS_MT_TOUCH_MAJOR
50 ABS_MT_POSITION_X 66 ABS_MT_POSITION_X
51 ABS_MT_POSITION_Y 67 ABS_MT_POSITION_Y
52 SYN_MT_REPORT 68 SYN_MT_REPORT
@@ -87,6 +103,12 @@ the contact. The ratio ABS_MT_TOUCH_MAJOR / ABS_MT_WIDTH_MAJOR approximates
87the notion of pressure. The fingers of the hand and the palm all have 103the notion of pressure. The fingers of the hand and the palm all have
88different characteristic widths [1]. 104different characteristic widths [1].
89 105
106ABS_MT_PRESSURE
107
108The pressure, in arbitrary units, on the contact area. May be used instead
109of TOUCH and WIDTH for pressure-based devices or any device with a spatial
110signal intensity distribution.
111
90ABS_MT_ORIENTATION 112ABS_MT_ORIENTATION
91 113
92The orientation of the ellipse. The value should describe a signed quarter 114The orientation of the ellipse. The value should describe a signed quarter
@@ -170,6 +192,16 @@ There are a few devices that support trackingID in hardware. User space can
170make use of these native identifiers to reduce bandwidth and cpu usage. 192make use of these native identifiers to reduce bandwidth and cpu usage.
171 193
172 194
195Gestures
196--------
197
198In the specific application of creating gesture events, the TOUCH and WIDTH
199parameters can be used to, e.g., approximate finger pressure or distinguish
200between index finger and thumb. With the addition of the MINOR parameters,
201one can also distinguish between a sweeping finger and a pointing finger,
202and with ORIENTATION, one can detect twisting of fingers.
203
204
173Notes 205Notes
174----- 206-----
175 207
diff --git a/Documentation/trace/ftrace-design.txt b/Documentation/trace/ftrace-design.txt
index 239f14b2b55a..6a5a579126b0 100644
--- a/Documentation/trace/ftrace-design.txt
+++ b/Documentation/trace/ftrace-design.txt
@@ -1,5 +1,6 @@
1 function tracer guts 1 function tracer guts
2 ==================== 2 ====================
3 By Mike Frysinger
3 4
4Introduction 5Introduction
5------------ 6------------
@@ -173,14 +174,16 @@ void ftrace_graph_caller(void)
173 174
174 unsigned long *frompc = &...; 175 unsigned long *frompc = &...;
175 unsigned long selfpc = <return address> - MCOUNT_INSN_SIZE; 176 unsigned long selfpc = <return address> - MCOUNT_INSN_SIZE;
176 prepare_ftrace_return(frompc, selfpc); 177 /* passing frame pointer up is optional -- see below */
178 prepare_ftrace_return(frompc, selfpc, frame_pointer);
177 179
178 /* restore all state needed by the ABI */ 180 /* restore all state needed by the ABI */
179} 181}
180#endif 182#endif
181 183
182For information on how to implement prepare_ftrace_return(), simply look at 184For information on how to implement prepare_ftrace_return(), simply look at the
183the x86 version. The only architecture-specific piece in it is the setup of 185x86 version (the frame pointer passing is optional; see the next section for
186more information). The only architecture-specific piece in it is the setup of
184the fault recovery table (the asm(...) code). The rest should be the same 187the fault recovery table (the asm(...) code). The rest should be the same
185across architectures. 188across architectures.
186 189
@@ -205,6 +208,23 @@ void return_to_handler(void)
205#endif 208#endif
206 209
207 210
211HAVE_FUNCTION_GRAPH_FP_TEST
212---------------------------
213
214An arch may pass in a unique value (frame pointer) to both the entering and
215exiting of a function. On exit, the value is compared and if it does not
216match, then it will panic the kernel. This is largely a sanity check for bad
217code generation with gcc. If gcc for your port sanely updates the frame
218pointer under different opitmization levels, then ignore this option.
219
220However, adding support for it isn't terribly difficult. In your assembly code
221that calls prepare_ftrace_return(), pass the frame pointer as the 3rd argument.
222Then in the C version of that function, do what the x86 port does and pass it
223along to ftrace_push_return_trace() instead of a stub value of 0.
224
225Similarly, when you call ftrace_return_to_handler(), pass it the frame pointer.
226
227
208HAVE_FTRACE_NMI_ENTER 228HAVE_FTRACE_NMI_ENTER
209--------------------- 229---------------------
210 230
diff --git a/Documentation/trace/ftrace.txt b/Documentation/trace/ftrace.txt
index 8179692fbb90..bab3040da548 100644
--- a/Documentation/trace/ftrace.txt
+++ b/Documentation/trace/ftrace.txt
@@ -1625,7 +1625,7 @@ If I am only interested in sys_nanosleep and hrtimer_interrupt:
1625 1625
1626 # echo sys_nanosleep hrtimer_interrupt \ 1626 # echo sys_nanosleep hrtimer_interrupt \
1627 > set_ftrace_filter 1627 > set_ftrace_filter
1628 # echo ftrace > current_tracer 1628 # echo function > current_tracer
1629 # echo 1 > tracing_enabled 1629 # echo 1 > tracing_enabled
1630 # usleep 1 1630 # usleep 1
1631 # echo 0 > tracing_enabled 1631 # echo 0 > tracing_enabled
diff --git a/MAINTAINERS b/MAINTAINERS
index 3f591629e953..03f38c18f323 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -987,7 +987,6 @@ F: drivers/platform/x86/asus-laptop.c
987 987
988ASYNCHRONOUS TRANSFERS/TRANSFORMS (IOAT) API 988ASYNCHRONOUS TRANSFERS/TRANSFORMS (IOAT) API
989M: Dan Williams <dan.j.williams@intel.com> 989M: Dan Williams <dan.j.williams@intel.com>
990M: Maciej Sosnowski <maciej.sosnowski@intel.com>
991W: http://sourceforge.net/projects/xscaleiop 990W: http://sourceforge.net/projects/xscaleiop
992S: Supported 991S: Supported
993F: Documentation/crypto/async-tx-api.txt 992F: Documentation/crypto/async-tx-api.txt
@@ -1637,9 +1636,8 @@ S: Maintained
1637F: sound/pci/cs5535audio/ 1636F: sound/pci/cs5535audio/
1638 1637
1639CX18 VIDEO4LINUX DRIVER 1638CX18 VIDEO4LINUX DRIVER
1640M: Hans Verkuil <hverkuil@xs4all.nl>
1641M: Andy Walls <awalls@radix.net> 1639M: Andy Walls <awalls@radix.net>
1642L: ivtv-devel@ivtvdriver.org 1640L: ivtv-devel@ivtvdriver.org (moderated for non-subscribers)
1643L: linux-media@vger.kernel.org 1641L: linux-media@vger.kernel.org
1644T: git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git 1642T: git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
1645W: http://linuxtv.org 1643W: http://linuxtv.org
@@ -1824,7 +1822,6 @@ S: Supported
1824F: fs/dlm/ 1822F: fs/dlm/
1825 1823
1826DMA GENERIC OFFLOAD ENGINE SUBSYSTEM 1824DMA GENERIC OFFLOAD ENGINE SUBSYSTEM
1827M: Maciej Sosnowski <maciej.sosnowski@intel.com>
1828M: Dan Williams <dan.j.williams@intel.com> 1825M: Dan Williams <dan.j.williams@intel.com>
1829S: Supported 1826S: Supported
1830F: drivers/dma/ 1827F: drivers/dma/
@@ -2787,7 +2784,7 @@ F: arch/x86/kernel/microcode_core.c
2787F: arch/x86/kernel/microcode_intel.c 2784F: arch/x86/kernel/microcode_intel.c
2788 2785
2789INTEL I/OAT DMA DRIVER 2786INTEL I/OAT DMA DRIVER
2790M: Maciej Sosnowski <maciej.sosnowski@intel.com> 2787M: Dan Williams <dan.j.williams@intel.com>
2791S: Supported 2788S: Supported
2792F: drivers/dma/ioat* 2789F: drivers/dma/ioat*
2793 2790
@@ -2825,10 +2822,11 @@ L: netdev@vger.kernel.org
2825S: Maintained 2822S: Maintained
2826F: drivers/net/ixp2000/ 2823F: drivers/net/ixp2000/
2827 2824
2828INTEL ETHERNET DRIVERS (e100/e1000/e1000e/igb/ixgb/ixgbe) 2825INTEL ETHERNET DRIVERS (e100/e1000/e1000e/igb/igbvf/ixgb/ixgbe)
2829M: Jeff Kirsher <jeffrey.t.kirsher@intel.com> 2826M: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2830M: Jesse Brandeburg <jesse.brandeburg@intel.com> 2827M: Jesse Brandeburg <jesse.brandeburg@intel.com>
2831M: Bruce Allan <bruce.w.allan@intel.com> 2828M: Bruce Allan <bruce.w.allan@intel.com>
2829M: Alex Duyck <alexander.h.duyck@intel.com>
2832M: PJ Waskiewicz <peter.p.waskiewicz.jr@intel.com> 2830M: PJ Waskiewicz <peter.p.waskiewicz.jr@intel.com>
2833M: John Ronciak <john.ronciak@intel.com> 2831M: John Ronciak <john.ronciak@intel.com>
2834L: e1000-devel@lists.sourceforge.net 2832L: e1000-devel@lists.sourceforge.net
@@ -2838,6 +2836,7 @@ F: drivers/net/e100.c
2838F: drivers/net/e1000/ 2836F: drivers/net/e1000/
2839F: drivers/net/e1000e/ 2837F: drivers/net/e1000e/
2840F: drivers/net/igb/ 2838F: drivers/net/igb/
2839F: drivers/net/igbvf/
2841F: drivers/net/ixgb/ 2840F: drivers/net/ixgb/
2842F: drivers/net/ixgbe/ 2841F: drivers/net/ixgbe/
2843 2842
@@ -3011,8 +3010,8 @@ S: Maintained
3011F: drivers/isdn/hardware/eicon/ 3010F: drivers/isdn/hardware/eicon/
3012 3011
3013IVTV VIDEO4LINUX DRIVER 3012IVTV VIDEO4LINUX DRIVER
3014M: Hans Verkuil <hverkuil@xs4all.nl> 3013M: Andy Walls <awalls@radix.net>
3015L: ivtv-devel@ivtvdriver.org 3014L: ivtv-devel@ivtvdriver.org (moderated for non-subscribers)
3016L: linux-media@vger.kernel.org 3015L: linux-media@vger.kernel.org
3017T: git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git 3016T: git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
3018W: http://www.ivtvdriver.org 3017W: http://www.ivtvdriver.org
diff --git a/Makefile b/Makefile
index 5f333bf870f4..394aec712c7d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
1VERSION = 2 1VERSION = 2
2PATCHLEVEL = 6 2PATCHLEVEL = 6
3SUBLEVEL = 33 3SUBLEVEL = 33
4EXTRAVERSION = -rc4 4EXTRAVERSION = -rc6
5NAME = Man-Eating Seals of Antiquity 5NAME = Man-Eating Seals of Antiquity
6 6
7# *DOCUMENTATION* 7# *DOCUMENTATION*
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index c2238cd474c7..4c33ca82f9b1 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -729,14 +729,26 @@ config ARCH_U8500
729 729
730endchoice 730endchoice
731 731
732source "arch/arm/mach-aaec2000/Kconfig"
733
734source "arch/arm/mach-at91/Kconfig"
735
736source "arch/arm/mach-bcmring/Kconfig"
737
732source "arch/arm/mach-clps711x/Kconfig" 738source "arch/arm/mach-clps711x/Kconfig"
733 739
740source "arch/arm/mach-davinci/Kconfig"
741
742source "arch/arm/mach-dove/Kconfig"
743
734source "arch/arm/mach-ep93xx/Kconfig" 744source "arch/arm/mach-ep93xx/Kconfig"
735 745
736source "arch/arm/mach-footbridge/Kconfig" 746source "arch/arm/mach-footbridge/Kconfig"
737 747
738source "arch/arm/mach-gemini/Kconfig" 748source "arch/arm/mach-gemini/Kconfig"
739 749
750source "arch/arm/mach-h720x/Kconfig"
751
740source "arch/arm/mach-integrator/Kconfig" 752source "arch/arm/mach-integrator/Kconfig"
741 753
742source "arch/arm/mach-iop32x/Kconfig" 754source "arch/arm/mach-iop32x/Kconfig"
@@ -751,16 +763,26 @@ source "arch/arm/mach-ixp2000/Kconfig"
751 763
752source "arch/arm/mach-ixp23xx/Kconfig" 764source "arch/arm/mach-ixp23xx/Kconfig"
753 765
766source "arch/arm/mach-kirkwood/Kconfig"
767
768source "arch/arm/mach-ks8695/Kconfig"
769
770source "arch/arm/mach-lh7a40x/Kconfig"
771
754source "arch/arm/mach-loki/Kconfig" 772source "arch/arm/mach-loki/Kconfig"
755 773
774source "arch/arm/mach-msm/Kconfig"
775
756source "arch/arm/mach-mv78xx0/Kconfig" 776source "arch/arm/mach-mv78xx0/Kconfig"
757 777
758source "arch/arm/mach-pxa/Kconfig" 778source "arch/arm/plat-mxc/Kconfig"
759source "arch/arm/plat-pxa/Kconfig"
760 779
761source "arch/arm/mach-mmp/Kconfig" 780source "arch/arm/mach-netx/Kconfig"
762 781
763source "arch/arm/mach-sa1100/Kconfig" 782source "arch/arm/mach-nomadik/Kconfig"
783source "arch/arm/plat-nomadik/Kconfig"
784
785source "arch/arm/mach-ns9xxx/Kconfig"
764 786
765source "arch/arm/plat-omap/Kconfig" 787source "arch/arm/plat-omap/Kconfig"
766 788
@@ -770,9 +792,14 @@ source "arch/arm/mach-omap2/Kconfig"
770 792
771source "arch/arm/mach-orion5x/Kconfig" 793source "arch/arm/mach-orion5x/Kconfig"
772 794
773source "arch/arm/mach-kirkwood/Kconfig" 795source "arch/arm/mach-pxa/Kconfig"
796source "arch/arm/plat-pxa/Kconfig"
774 797
775source "arch/arm/mach-dove/Kconfig" 798source "arch/arm/mach-mmp/Kconfig"
799
800source "arch/arm/mach-realview/Kconfig"
801
802source "arch/arm/mach-sa1100/Kconfig"
776 803
777source "arch/arm/plat-samsung/Kconfig" 804source "arch/arm/plat-samsung/Kconfig"
778source "arch/arm/plat-s3c24xx/Kconfig" 805source "arch/arm/plat-s3c24xx/Kconfig"
@@ -800,41 +827,14 @@ if ARCH_S5PC1XX
800source "arch/arm/mach-s5pc100/Kconfig" 827source "arch/arm/mach-s5pc100/Kconfig"
801endif 828endif
802 829
803source "arch/arm/mach-lh7a40x/Kconfig" 830source "arch/arm/mach-u300/Kconfig"
804 831
805source "arch/arm/mach-h720x/Kconfig" 832source "arch/arm/mach-ux500/Kconfig"
806 833
807source "arch/arm/mach-versatile/Kconfig" 834source "arch/arm/mach-versatile/Kconfig"
808 835
809source "arch/arm/mach-aaec2000/Kconfig"
810
811source "arch/arm/mach-realview/Kconfig"
812
813source "arch/arm/mach-at91/Kconfig"
814
815source "arch/arm/plat-mxc/Kconfig"
816
817source "arch/arm/mach-nomadik/Kconfig"
818source "arch/arm/plat-nomadik/Kconfig"
819
820source "arch/arm/mach-netx/Kconfig"
821
822source "arch/arm/mach-ns9xxx/Kconfig"
823
824source "arch/arm/mach-davinci/Kconfig"
825
826source "arch/arm/mach-ks8695/Kconfig"
827
828source "arch/arm/mach-msm/Kconfig"
829
830source "arch/arm/mach-u300/Kconfig"
831
832source "arch/arm/mach-w90x900/Kconfig" 836source "arch/arm/mach-w90x900/Kconfig"
833 837
834source "arch/arm/mach-bcmring/Kconfig"
835
836source "arch/arm/mach-ux500/Kconfig"
837
838# Definitions to make life easier 838# Definitions to make life easier
839config ARCH_ACORN 839config ARCH_ACORN
840 bool 840 bool
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index e9da08483b3c..9e7582572741 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -146,6 +146,7 @@ machine-$(CONFIG_ARCH_MX1) := mx1
146machine-$(CONFIG_ARCH_MX2) := mx2 146machine-$(CONFIG_ARCH_MX2) := mx2
147machine-$(CONFIG_ARCH_MX25) := mx25 147machine-$(CONFIG_ARCH_MX25) := mx25
148machine-$(CONFIG_ARCH_MX3) := mx3 148machine-$(CONFIG_ARCH_MX3) := mx3
149machine-$(CONFIG_ARCH_MXC91231) := mxc91231
149machine-$(CONFIG_ARCH_NETX) := netx 150machine-$(CONFIG_ARCH_NETX) := netx
150machine-$(CONFIG_ARCH_NOMADIK) := nomadik 151machine-$(CONFIG_ARCH_NOMADIK) := nomadik
151machine-$(CONFIG_ARCH_NS9XXX) := ns9xxx 152machine-$(CONFIG_ARCH_NS9XXX) := ns9xxx
@@ -171,12 +172,12 @@ machine-$(CONFIG_ARCH_U8500) := ux500
171machine-$(CONFIG_ARCH_VERSATILE) := versatile 172machine-$(CONFIG_ARCH_VERSATILE) := versatile
172machine-$(CONFIG_ARCH_W90X900) := w90x900 173machine-$(CONFIG_ARCH_W90X900) := w90x900
173machine-$(CONFIG_FOOTBRIDGE) := footbridge 174machine-$(CONFIG_FOOTBRIDGE) := footbridge
174machine-$(CONFIG_ARCH_MXC91231) := mxc91231
175 175
176# Platform directory name. This list is sorted alphanumerically 176# Platform directory name. This list is sorted alphanumerically
177# by CONFIG_* macro name. 177# by CONFIG_* macro name.
178plat-$(CONFIG_ARCH_MXC) := mxc 178plat-$(CONFIG_ARCH_MXC) := mxc
179plat-$(CONFIG_ARCH_OMAP) := omap 179plat-$(CONFIG_ARCH_OMAP) := omap
180plat-$(CONFIG_ARCH_STMP3XXX) := stmp3xxx
180plat-$(CONFIG_PLAT_IOP) := iop 181plat-$(CONFIG_PLAT_IOP) := iop
181plat-$(CONFIG_PLAT_NOMADIK) := nomadik 182plat-$(CONFIG_PLAT_NOMADIK) := nomadik
182plat-$(CONFIG_PLAT_ORION) := orion 183plat-$(CONFIG_PLAT_ORION) := orion
@@ -184,7 +185,6 @@ plat-$(CONFIG_PLAT_PXA) := pxa
184plat-$(CONFIG_PLAT_S3C24XX) := s3c24xx s3c samsung 185plat-$(CONFIG_PLAT_S3C24XX) := s3c24xx s3c samsung
185plat-$(CONFIG_PLAT_S3C64XX) := s3c64xx s3c samsung 186plat-$(CONFIG_PLAT_S3C64XX) := s3c64xx s3c samsung
186plat-$(CONFIG_PLAT_S5PC1XX) := s5pc1xx s3c samsung 187plat-$(CONFIG_PLAT_S5PC1XX) := s5pc1xx s3c samsung
187plat-$(CONFIG_ARCH_STMP3XXX) := stmp3xxx
188 188
189ifeq ($(CONFIG_ARCH_EBSA110),y) 189ifeq ($(CONFIG_ARCH_EBSA110),y)
190# This is what happens if you forget the IOCS16 line. 190# This is what happens if you forget the IOCS16 line.
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S
index d356af7cef82..4fddc509e78e 100644
--- a/arch/arm/boot/compressed/head.S
+++ b/arch/arm/boot/compressed/head.S
@@ -27,6 +27,14 @@
27 .macro writeb, ch, rb 27 .macro writeb, ch, rb
28 mcr p14, 0, \ch, c0, c5, 0 28 mcr p14, 0, \ch, c0, c5, 0
29 .endm 29 .endm
30#elif defined(CONFIG_CPU_V7)
31 .macro loadsp, rb
32 .endm
33 .macro writeb, ch, rb
34wait: mrc p14, 0, pc, c0, c1, 0
35 bcs wait
36 mcr p14, 0, \ch, c0, c5, 0
37 .endm
30#elif defined(CONFIG_CPU_XSCALE) 38#elif defined(CONFIG_CPU_XSCALE)
31 .macro loadsp, rb 39 .macro loadsp, rb
32 .endm 40 .endm
diff --git a/arch/arm/boot/compressed/misc.c b/arch/arm/boot/compressed/misc.c
index 7e0fe4d42c7b..56a0d116d271 100644
--- a/arch/arm/boot/compressed/misc.c
+++ b/arch/arm/boot/compressed/misc.c
@@ -53,6 +53,18 @@ static void icedcc_putc(int ch)
53 53
54 asm("mcr p14, 0, %0, c0, c5, 0" : : "r" (ch)); 54 asm("mcr p14, 0, %0, c0, c5, 0" : : "r" (ch));
55} 55}
56
57#elif defined(CONFIG_CPU_V7)
58
59static void icedcc_putc(int ch)
60{
61 asm(
62 "wait: mrc p14, 0, pc, c0, c1, 0 \n\
63 bcs wait \n\
64 mcr p14, 0, %0, c0, c5, 0 "
65 : : "r" (ch));
66}
67
56#elif defined(CONFIG_CPU_XSCALE) 68#elif defined(CONFIG_CPU_XSCALE)
57 69
58static void icedcc_putc(int ch) 70static void icedcc_putc(int ch)
@@ -88,7 +100,6 @@ static void icedcc_putc(int ch)
88#endif 100#endif
89 101
90#define putc(ch) icedcc_putc(ch) 102#define putc(ch) icedcc_putc(ch)
91#define flush() do { } while (0)
92#endif 103#endif
93 104
94static void putstr(const char *ptr) 105static void putstr(const char *ptr)
diff --git a/arch/arm/include/asm/cacheflush.h b/arch/arm/include/asm/cacheflush.h
index 730aefcfbee3..c77d2fa1f6e5 100644
--- a/arch/arm/include/asm/cacheflush.h
+++ b/arch/arm/include/asm/cacheflush.h
@@ -154,16 +154,16 @@
154 * Please note that the implementation of these, and the required 154 * Please note that the implementation of these, and the required
155 * effects are cache-type (VIVT/VIPT/PIPT) specific. 155 * effects are cache-type (VIVT/VIPT/PIPT) specific.
156 * 156 *
157 * flush_cache_kern_all() 157 * flush_kern_all()
158 * 158 *
159 * Unconditionally clean and invalidate the entire cache. 159 * Unconditionally clean and invalidate the entire cache.
160 * 160 *
161 * flush_cache_user_mm(mm) 161 * flush_user_all()
162 * 162 *
163 * Clean and invalidate all user space cache entries 163 * Clean and invalidate all user space cache entries
164 * before a change of page tables. 164 * before a change of page tables.
165 * 165 *
166 * flush_cache_user_range(start, end, flags) 166 * flush_user_range(start, end, flags)
167 * 167 *
168 * Clean and invalidate a range of cache entries in the 168 * Clean and invalidate a range of cache entries in the
169 * specified address space before a change of page tables. 169 * specified address space before a change of page tables.
@@ -179,6 +179,20 @@
179 * - start - virtual start address 179 * - start - virtual start address
180 * - end - virtual end address 180 * - end - virtual end address
181 * 181 *
182 * coherent_user_range(start, end)
183 *
184 * Ensure coherency between the Icache and the Dcache in the
185 * region described by start, end. If you have non-snooping
186 * Harvard caches, you need to implement this function.
187 * - start - virtual start address
188 * - end - virtual end address
189 *
190 * flush_kern_dcache_area(kaddr, size)
191 *
192 * Ensure that the data held in page is written back.
193 * - kaddr - page address
194 * - size - region size
195 *
182 * DMA Cache Coherency 196 * DMA Cache Coherency
183 * =================== 197 * ===================
184 * 198 *
diff --git a/arch/arm/kernel/debug.S b/arch/arm/kernel/debug.S
index b121b6053cce..5c91addcaebc 100644
--- a/arch/arm/kernel/debug.S
+++ b/arch/arm/kernel/debug.S
@@ -49,6 +49,26 @@
491002: 491002:
50 .endm 50 .endm
51 51
52#elif defined(CONFIG_CPU_V7)
53
54 .macro addruart, rx
55 .endm
56
57 .macro senduart, rd, rx
58 mcr p14, 0, \rd, c0, c5, 0
59 .endm
60
61 .macro busyuart, rd, rx
62busy: mrc p14, 0, pc, c0, c1, 0
63 bcs busy
64 .endm
65
66 .macro waituart, rd, rx
67wait: mrc p14, 0, pc, c0, c1, 0
68 bcs wait
69
70 .endm
71
52#elif defined(CONFIG_CPU_XSCALE) 72#elif defined(CONFIG_CPU_XSCALE)
53 73
54 .macro addruart, rx 74 .macro addruart, rx
diff --git a/arch/arm/kernel/elf.c b/arch/arm/kernel/elf.c
index 950391f194c4..d4a0da1e48f4 100644
--- a/arch/arm/kernel/elf.c
+++ b/arch/arm/kernel/elf.c
@@ -78,15 +78,6 @@ int arm_elf_read_implies_exec(const struct elf32_hdr *x, int executable_stack)
78 return 1; 78 return 1;
79 if (cpu_architecture() < CPU_ARCH_ARMv6) 79 if (cpu_architecture() < CPU_ARCH_ARMv6)
80 return 1; 80 return 1;
81#if !defined(CONFIG_AEABI) || defined(CONFIG_OABI_COMPAT)
82 /*
83 * If we have support for OABI programs, we can never allow NX
84 * support - our signal syscall restart mechanism relies upon
85 * being able to execute code placed on the user stack.
86 */
87 return 1;
88#else
89 return 0; 81 return 0;
90#endif
91} 82}
92EXPORT_SYMBOL(arm_elf_read_implies_exec); 83EXPORT_SYMBOL(arm_elf_read_implies_exec);
diff --git a/arch/arm/mach-gemini/include/mach/uncompress.h b/arch/arm/mach-gemini/include/mach/uncompress.h
index 59c5df7e716c..5483f61a8061 100644
--- a/arch/arm/mach-gemini/include/mach/uncompress.h
+++ b/arch/arm/mach-gemini/include/mach/uncompress.h
@@ -30,7 +30,9 @@ static inline void putc(char c)
30 UART[UART_TX] = c; 30 UART[UART_TX] = c;
31} 31}
32 32
33#define flush() do { } while (0) 33static inline void flush(void)
34{
35}
34 36
35/* 37/*
36 * nothing to do 38 * nothing to do
diff --git a/arch/arm/mach-kirkwood/rd88f6192-nas-setup.c b/arch/arm/mach-kirkwood/rd88f6192-nas-setup.c
index 8bf4153d0840..3bf6304158f6 100644
--- a/arch/arm/mach-kirkwood/rd88f6192-nas-setup.c
+++ b/arch/arm/mach-kirkwood/rd88f6192-nas-setup.c
@@ -13,6 +13,7 @@
13#include <linux/platform_device.h> 13#include <linux/platform_device.h>
14#include <linux/ata_platform.h> 14#include <linux/ata_platform.h>
15#include <linux/mv643xx_eth.h> 15#include <linux/mv643xx_eth.h>
16#include <linux/gpio.h>
16#include <linux/spi/flash.h> 17#include <linux/spi/flash.h>
17#include <linux/spi/spi.h> 18#include <linux/spi/spi.h>
18#include <linux/spi/orion_spi.h> 19#include <linux/spi/orion_spi.h>
@@ -53,6 +54,11 @@ static void __init rd88f6192_init(void)
53 */ 54 */
54 kirkwood_init(); 55 kirkwood_init();
55 56
57 orion_gpio_set_valid(RD88F6192_GPIO_USB_VBUS, 1);
58 if (gpio_request(RD88F6192_GPIO_USB_VBUS, "USB VBUS") != 0 ||
59 gpio_direction_output(RD88F6192_GPIO_USB_VBUS, 1) != 0)
60 pr_err("RD-88F6192-NAS: failed to setup USB VBUS GPIO\n");
61
56 kirkwood_ehci_init(); 62 kirkwood_ehci_init();
57 kirkwood_ge00_init(&rd88f6192_ge00_data); 63 kirkwood_ge00_init(&rd88f6192_ge00_data);
58 kirkwood_sata_init(&rd88f6192_sata_data); 64 kirkwood_sata_init(&rd88f6192_sata_data);
diff --git a/arch/arm/mach-omap1/clock.c b/arch/arm/mach-omap1/clock.c
index 2ba9ab953731..04f1d29cba2c 100644
--- a/arch/arm/mach-omap1/clock.c
+++ b/arch/arm/mach-omap1/clock.c
@@ -214,8 +214,8 @@ int omap1_select_table_rate(struct clk *clk, unsigned long rate)
214 struct mpu_rate * ptr; 214 struct mpu_rate * ptr;
215 unsigned long dpll1_rate, ref_rate; 215 unsigned long dpll1_rate, ref_rate;
216 216
217 dpll1_rate = clk_get_rate(ck_dpll1_p); 217 dpll1_rate = ck_dpll1_p->rate;
218 ref_rate = clk_get_rate(ck_ref_p); 218 ref_rate = ck_ref_p->rate;
219 219
220 for (ptr = omap1_rate_table; ptr->rate; ptr++) { 220 for (ptr = omap1_rate_table; ptr->rate; ptr++) {
221 if (ptr->xtal != ref_rate) 221 if (ptr->xtal != ref_rate)
@@ -306,7 +306,7 @@ long omap1_round_to_table_rate(struct clk *clk, unsigned long rate)
306 long highest_rate; 306 long highest_rate;
307 unsigned long ref_rate; 307 unsigned long ref_rate;
308 308
309 ref_rate = clk_get_rate(ck_ref_p); 309 ref_rate = ck_ref_p->rate;
310 310
311 highest_rate = -EINVAL; 311 highest_rate = -EINVAL;
312 312
diff --git a/arch/arm/mach-omap2/clock34xx_data.c b/arch/arm/mach-omap2/clock34xx_data.c
index c6031d74d6f6..74930e3158e3 100644
--- a/arch/arm/mach-omap2/clock34xx_data.c
+++ b/arch/arm/mach-omap2/clock34xx_data.c
@@ -671,7 +671,6 @@ static struct clk dpll4_m3x2_ck = {
671 .name = "dpll4_m3x2_ck", 671 .name = "dpll4_m3x2_ck",
672 .ops = &clkops_omap2_dflt_wait, 672 .ops = &clkops_omap2_dflt_wait,
673 .parent = &dpll4_m3_ck, 673 .parent = &dpll4_m3_ck,
674 .init = &omap2_init_clksel_parent,
675 .enable_reg = OMAP_CM_REGADDR(PLL_MOD, CM_CLKEN), 674 .enable_reg = OMAP_CM_REGADDR(PLL_MOD, CM_CLKEN),
676 .enable_bit = OMAP3430_PWRDN_TV_SHIFT, 675 .enable_bit = OMAP3430_PWRDN_TV_SHIFT,
677 .flags = INVERT_ENABLE, 676 .flags = INVERT_ENABLE,
@@ -811,7 +810,6 @@ static struct clk dpll4_m6x2_ck = {
811 .name = "dpll4_m6x2_ck", 810 .name = "dpll4_m6x2_ck",
812 .ops = &clkops_omap2_dflt_wait, 811 .ops = &clkops_omap2_dflt_wait,
813 .parent = &dpll4_m6_ck, 812 .parent = &dpll4_m6_ck,
814 .init = &omap2_init_clksel_parent,
815 .enable_reg = OMAP_CM_REGADDR(PLL_MOD, CM_CLKEN), 813 .enable_reg = OMAP_CM_REGADDR(PLL_MOD, CM_CLKEN),
816 .enable_bit = OMAP3430_PWRDN_EMU_PERIPH_SHIFT, 814 .enable_bit = OMAP3430_PWRDN_EMU_PERIPH_SHIFT,
817 .flags = INVERT_ENABLE, 815 .flags = INVERT_ENABLE,
@@ -1047,7 +1045,6 @@ static struct clk iva2_ck = {
1047 .name = "iva2_ck", 1045 .name = "iva2_ck",
1048 .ops = &clkops_omap2_dflt_wait, 1046 .ops = &clkops_omap2_dflt_wait,
1049 .parent = &dpll2_m2_ck, 1047 .parent = &dpll2_m2_ck,
1050 .init = &omap2_init_clksel_parent,
1051 .enable_reg = OMAP_CM_REGADDR(OMAP3430_IVA2_MOD, CM_FCLKEN), 1048 .enable_reg = OMAP_CM_REGADDR(OMAP3430_IVA2_MOD, CM_FCLKEN),
1052 .enable_bit = OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_SHIFT, 1049 .enable_bit = OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_SHIFT,
1053 .clkdm_name = "iva2_clkdm", 1050 .clkdm_name = "iva2_clkdm",
@@ -1121,7 +1118,6 @@ static struct clk gfx_l3_ck = {
1121 .name = "gfx_l3_ck", 1118 .name = "gfx_l3_ck",
1122 .ops = &clkops_omap2_dflt_wait, 1119 .ops = &clkops_omap2_dflt_wait,
1123 .parent = &l3_ick, 1120 .parent = &l3_ick,
1124 .init = &omap2_init_clksel_parent,
1125 .enable_reg = OMAP_CM_REGADDR(GFX_MOD, CM_ICLKEN), 1121 .enable_reg = OMAP_CM_REGADDR(GFX_MOD, CM_ICLKEN),
1126 .enable_bit = OMAP_EN_GFX_SHIFT, 1122 .enable_bit = OMAP_EN_GFX_SHIFT,
1127 .recalc = &followparent_recalc, 1123 .recalc = &followparent_recalc,
diff --git a/arch/arm/mach-omap2/clock44xx_data.c b/arch/arm/mach-omap2/clock44xx_data.c
index 2210e227d78a..9d882bcb56e3 100644
--- a/arch/arm/mach-omap2/clock44xx_data.c
+++ b/arch/arm/mach-omap2/clock44xx_data.c
@@ -346,37 +346,37 @@ static struct clk aess_fclk = {
346}; 346};
347 347
348static const struct clksel_rate div31_1to31_rates[] = { 348static const struct clksel_rate div31_1to31_rates[] = {
349 { .div = 1, .val = 0, .flags = RATE_IN_4430 }, 349 { .div = 1, .val = 1, .flags = RATE_IN_4430 },
350 { .div = 2, .val = 1, .flags = RATE_IN_4430 }, 350 { .div = 2, .val = 2, .flags = RATE_IN_4430 },
351 { .div = 3, .val = 2, .flags = RATE_IN_4430 }, 351 { .div = 3, .val = 3, .flags = RATE_IN_4430 },
352 { .div = 4, .val = 3, .flags = RATE_IN_4430 }, 352 { .div = 4, .val = 4, .flags = RATE_IN_4430 },
353 { .div = 5, .val = 4, .flags = RATE_IN_4430 }, 353 { .div = 5, .val = 5, .flags = RATE_IN_4430 },
354 { .div = 6, .val = 5, .flags = RATE_IN_4430 }, 354 { .div = 6, .val = 6, .flags = RATE_IN_4430 },
355 { .div = 7, .val = 6, .flags = RATE_IN_4430 }, 355 { .div = 7, .val = 7, .flags = RATE_IN_4430 },
356 { .div = 8, .val = 7, .flags = RATE_IN_4430 }, 356 { .div = 8, .val = 8, .flags = RATE_IN_4430 },
357 { .div = 9, .val = 8, .flags = RATE_IN_4430 }, 357 { .div = 9, .val = 9, .flags = RATE_IN_4430 },
358 { .div = 10, .val = 9, .flags = RATE_IN_4430 }, 358 { .div = 10, .val = 10, .flags = RATE_IN_4430 },
359 { .div = 11, .val = 10, .flags = RATE_IN_4430 }, 359 { .div = 11, .val = 11, .flags = RATE_IN_4430 },
360 { .div = 12, .val = 11, .flags = RATE_IN_4430 }, 360 { .div = 12, .val = 12, .flags = RATE_IN_4430 },
361 { .div = 13, .val = 12, .flags = RATE_IN_4430 }, 361 { .div = 13, .val = 13, .flags = RATE_IN_4430 },
362 { .div = 14, .val = 13, .flags = RATE_IN_4430 }, 362 { .div = 14, .val = 14, .flags = RATE_IN_4430 },
363 { .div = 15, .val = 14, .flags = RATE_IN_4430 }, 363 { .div = 15, .val = 15, .flags = RATE_IN_4430 },
364 { .div = 16, .val = 15, .flags = RATE_IN_4430 }, 364 { .div = 16, .val = 16, .flags = RATE_IN_4430 },
365 { .div = 17, .val = 16, .flags = RATE_IN_4430 }, 365 { .div = 17, .val = 17, .flags = RATE_IN_4430 },
366 { .div = 18, .val = 17, .flags = RATE_IN_4430 }, 366 { .div = 18, .val = 18, .flags = RATE_IN_4430 },
367 { .div = 19, .val = 18, .flags = RATE_IN_4430 }, 367 { .div = 19, .val = 19, .flags = RATE_IN_4430 },
368 { .div = 20, .val = 19, .flags = RATE_IN_4430 }, 368 { .div = 20, .val = 20, .flags = RATE_IN_4430 },
369 { .div = 21, .val = 20, .flags = RATE_IN_4430 }, 369 { .div = 21, .val = 21, .flags = RATE_IN_4430 },
370 { .div = 22, .val = 21, .flags = RATE_IN_4430 }, 370 { .div = 22, .val = 22, .flags = RATE_IN_4430 },
371 { .div = 23, .val = 22, .flags = RATE_IN_4430 }, 371 { .div = 23, .val = 23, .flags = RATE_IN_4430 },
372 { .div = 24, .val = 23, .flags = RATE_IN_4430 }, 372 { .div = 24, .val = 24, .flags = RATE_IN_4430 },
373 { .div = 25, .val = 24, .flags = RATE_IN_4430 }, 373 { .div = 25, .val = 25, .flags = RATE_IN_4430 },
374 { .div = 26, .val = 25, .flags = RATE_IN_4430 }, 374 { .div = 26, .val = 26, .flags = RATE_IN_4430 },
375 { .div = 27, .val = 26, .flags = RATE_IN_4430 }, 375 { .div = 27, .val = 27, .flags = RATE_IN_4430 },
376 { .div = 28, .val = 27, .flags = RATE_IN_4430 }, 376 { .div = 28, .val = 28, .flags = RATE_IN_4430 },
377 { .div = 29, .val = 28, .flags = RATE_IN_4430 }, 377 { .div = 29, .val = 29, .flags = RATE_IN_4430 },
378 { .div = 30, .val = 29, .flags = RATE_IN_4430 }, 378 { .div = 30, .val = 30, .flags = RATE_IN_4430 },
379 { .div = 31, .val = 30, .flags = RATE_IN_4430 }, 379 { .div = 31, .val = 31, .flags = RATE_IN_4430 },
380 { .div = 0 }, 380 { .div = 0 },
381}; 381};
382 382
diff --git a/arch/arm/mach-omap2/cpuidle34xx.c b/arch/arm/mach-omap2/cpuidle34xx.c
index a26d6a08ae3f..12f0cbfc2894 100644
--- a/arch/arm/mach-omap2/cpuidle34xx.c
+++ b/arch/arm/mach-omap2/cpuidle34xx.c
@@ -137,7 +137,7 @@ return_sleep_time:
137 local_irq_enable(); 137 local_irq_enable();
138 local_fiq_enable(); 138 local_fiq_enable();
139 139
140 return (u32)timespec_to_ns(&ts_idle)/1000; 140 return ts_idle.tv_nsec / NSEC_PER_USEC + ts_idle.tv_sec * USEC_PER_SEC;
141} 141}
142 142
143/** 143/**
diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c
index bd8cb5974726..3f1334f62e7a 100644
--- a/arch/arm/mach-omap2/gpmc.c
+++ b/arch/arm/mach-omap2/gpmc.c
@@ -534,6 +534,8 @@ void __init gpmc_init(void)
534 BUG(); 534 BUG();
535 } 535 }
536 536
537 clk_enable(gpmc_l3_clk);
538
537 l = gpmc_read_reg(GPMC_REVISION); 539 l = gpmc_read_reg(GPMC_REVISION);
538 printk(KERN_INFO "GPMC revision %d.%d\n", (l >> 4) & 0x0f, l & 0x0f); 540 printk(KERN_INFO "GPMC revision %d.%d\n", (l >> 4) & 0x0f, l & 0x0f);
539 /* Set smart idle mode and automatic L3 clock gating */ 541 /* Set smart idle mode and automatic L3 clock gating */
diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
index a091b53657b9..3d65c50bd017 100644
--- a/arch/arm/mach-omap2/id.c
+++ b/arch/arm/mach-omap2/id.c
@@ -188,6 +188,8 @@ void __init omap3_check_revision(void)
188 u16 hawkeye; 188 u16 hawkeye;
189 u8 rev; 189 u8 rev;
190 190
191 omap_chip.oc = CHIP_IS_OMAP3430;
192
191 /* 193 /*
192 * We cannot access revision registers on ES1.0. 194 * We cannot access revision registers on ES1.0.
193 * If the processor type is Cortex-A8 and the revision is 0x0 195 * If the processor type is Cortex-A8 and the revision is 0x0
@@ -196,6 +198,7 @@ void __init omap3_check_revision(void)
196 cpuid = read_cpuid(CPUID_ID); 198 cpuid = read_cpuid(CPUID_ID);
197 if ((((cpuid >> 4) & 0xfff) == 0xc08) && ((cpuid & 0xf) == 0x0)) { 199 if ((((cpuid >> 4) & 0xfff) == 0xc08) && ((cpuid & 0xf) == 0x0)) {
198 omap_revision = OMAP3430_REV_ES1_0; 200 omap_revision = OMAP3430_REV_ES1_0;
201 omap_chip.oc |= CHIP_IS_OMAP3430ES1;
199 return; 202 return;
200 } 203 }
201 204
@@ -216,18 +219,28 @@ void __init omap3_check_revision(void)
216 case 0: /* Take care of early samples */ 219 case 0: /* Take care of early samples */
217 case 1: 220 case 1:
218 omap_revision = OMAP3430_REV_ES2_0; 221 omap_revision = OMAP3430_REV_ES2_0;
222 omap_chip.oc |= CHIP_IS_OMAP3430ES2;
219 break; 223 break;
220 case 2: 224 case 2:
221 omap_revision = OMAP3430_REV_ES2_1; 225 omap_revision = OMAP3430_REV_ES2_1;
226 omap_chip.oc |= CHIP_IS_OMAP3430ES2;
222 break; 227 break;
223 case 3: 228 case 3:
224 omap_revision = OMAP3430_REV_ES3_0; 229 omap_revision = OMAP3430_REV_ES3_0;
230 omap_chip.oc |= CHIP_IS_OMAP3430ES3_0;
225 break; 231 break;
226 case 4: 232 case 4:
233 omap_revision = OMAP3430_REV_ES3_1;
234 omap_chip.oc |= CHIP_IS_OMAP3430ES3_1;
235 break;
236 case 7:
227 /* FALLTHROUGH */ 237 /* FALLTHROUGH */
228 default: 238 default:
229 /* Use the latest known revision as default */ 239 /* Use the latest known revision as default */
230 omap_revision = OMAP3430_REV_ES3_1; 240 omap_revision = OMAP3430_REV_ES3_1_2;
241
242 /* REVISIT: Add CHIP_IS_OMAP3430ES3_1_2? */
243 omap_chip.oc |= CHIP_IS_OMAP3430ES3_1;
231 } 244 }
232 break; 245 break;
233 case 0xb868: 246 case 0xb868:
@@ -235,14 +248,18 @@ void __init omap3_check_revision(void)
235 * 248 *
236 * Set the device to be OMAP3505 here. Actual device 249 * Set the device to be OMAP3505 here. Actual device
237 * is identified later based on the features. 250 * is identified later based on the features.
251 *
252 * REVISIT: AM3505/AM3517 should have their own CHIP_IS
238 */ 253 */
239 omap_revision = OMAP3505_REV(rev); 254 omap_revision = OMAP3505_REV(rev);
255 omap_chip.oc |= CHIP_IS_OMAP3430ES3_1;
240 break; 256 break;
241 case 0xb891: 257 case 0xb891:
242 /* FALLTHROUGH */ 258 /* FALLTHROUGH */
243 default: 259 default:
244 /* Unknown default to latest silicon rev as default*/ 260 /* Unknown default to latest silicon rev as default*/
245 omap_revision = OMAP3630_REV_ES1_0; 261 omap_revision = OMAP3630_REV_ES1_0;
262 omap_chip.oc |= CHIP_IS_OMAP3630ES1;
246 } 263 }
247} 264}
248 265
@@ -360,6 +377,7 @@ void __init omap2_check_revision(void)
360 omap3_check_revision(); 377 omap3_check_revision();
361 omap3_check_features(); 378 omap3_check_features();
362 omap3_cpuinfo(); 379 omap3_cpuinfo();
380 return;
363 } else if (cpu_is_omap44xx()) { 381 } else if (cpu_is_omap44xx()) {
364 omap4_check_revision(); 382 omap4_check_revision();
365 return; 383 return;
@@ -374,27 +392,14 @@ void __init omap2_check_revision(void)
374 if (cpu_is_omap243x()) { 392 if (cpu_is_omap243x()) {
375 /* Currently only supports 2430ES2.1 and 2430-all */ 393 /* Currently only supports 2430ES2.1 and 2430-all */
376 omap_chip.oc |= CHIP_IS_OMAP2430; 394 omap_chip.oc |= CHIP_IS_OMAP2430;
395 return;
377 } else if (cpu_is_omap242x()) { 396 } else if (cpu_is_omap242x()) {
378 /* Currently only supports 2420ES2.1.1 and 2420-all */ 397 /* Currently only supports 2420ES2.1.1 and 2420-all */
379 omap_chip.oc |= CHIP_IS_OMAP2420; 398 omap_chip.oc |= CHIP_IS_OMAP2420;
380 } else if (cpu_is_omap3505() || cpu_is_omap3517()) { 399 return;
381 omap_chip.oc = CHIP_IS_OMAP3430 | CHIP_IS_OMAP3430ES3_1;
382 } else if (cpu_is_omap343x()) {
383 omap_chip.oc = CHIP_IS_OMAP3430;
384 if (omap_rev() == OMAP3430_REV_ES1_0)
385 omap_chip.oc |= CHIP_IS_OMAP3430ES1;
386 else if (omap_rev() >= OMAP3430_REV_ES2_0 &&
387 omap_rev() <= OMAP3430_REV_ES2_1)
388 omap_chip.oc |= CHIP_IS_OMAP3430ES2;
389 else if (omap_rev() == OMAP3430_REV_ES3_0)
390 omap_chip.oc |= CHIP_IS_OMAP3430ES3_0;
391 else if (omap_rev() == OMAP3430_REV_ES3_1)
392 omap_chip.oc |= CHIP_IS_OMAP3430ES3_1;
393 else if (omap_rev() == OMAP3630_REV_ES1_0)
394 omap_chip.oc |= CHIP_IS_OMAP3630ES1;
395 } else {
396 pr_err("Uninitialized omap_chip, please fix!\n");
397 } 400 }
401
402 pr_err("Uninitialized omap_chip, please fix!\n");
398} 403}
399 404
400/* 405/*
diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c
index e9bc782fa414..27054025da2b 100644
--- a/arch/arm/mach-omap2/irq.c
+++ b/arch/arm/mach-omap2/irq.c
@@ -274,4 +274,22 @@ void omap_intc_restore_context(void)
274 } 274 }
275 /* MIRs are saved and restore with other PRCM registers */ 275 /* MIRs are saved and restore with other PRCM registers */
276} 276}
277
278void omap3_intc_suspend(void)
279{
280 /* A pending interrupt would prevent OMAP from entering suspend */
281 omap_ack_irq(0);
282}
283
284void omap3_intc_prepare_idle(void)
285{
286 /* Disable autoidle as it can stall interrupt controller */
287 intc_bank_write_reg(0, &irq_banks[0], INTC_SYSCONFIG);
288}
289
290void omap3_intc_resume_idle(void)
291{
292 /* Re-enable autoidle */
293 intc_bank_write_reg(1, &irq_banks[0], INTC_SYSCONFIG);
294}
277#endif /* CONFIG_ARCH_OMAP3 */ 295#endif /* CONFIG_ARCH_OMAP3 */
diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
index 459ef23ab8a8..3f59bd12cbbf 100644
--- a/arch/arm/mach-omap2/mux.c
+++ b/arch/arm/mach-omap2/mux.c
@@ -51,7 +51,7 @@ struct omap_mux_entry {
51static unsigned long mux_phys; 51static unsigned long mux_phys;
52static void __iomem *mux_base; 52static void __iomem *mux_base;
53 53
54static inline u16 omap_mux_read(u16 reg) 54u16 omap_mux_read(u16 reg)
55{ 55{
56 if (cpu_is_omap24xx()) 56 if (cpu_is_omap24xx())
57 return __raw_readb(mux_base + reg); 57 return __raw_readb(mux_base + reg);
@@ -59,7 +59,7 @@ static inline u16 omap_mux_read(u16 reg)
59 return __raw_readw(mux_base + reg); 59 return __raw_readw(mux_base + reg);
60} 60}
61 61
62static inline void omap_mux_write(u16 val, u16 reg) 62void omap_mux_write(u16 val, u16 reg)
63{ 63{
64 if (cpu_is_omap24xx()) 64 if (cpu_is_omap24xx())
65 __raw_writeb(val, mux_base + reg); 65 __raw_writeb(val, mux_base + reg);
@@ -67,6 +67,14 @@ static inline void omap_mux_write(u16 val, u16 reg)
67 __raw_writew(val, mux_base + reg); 67 __raw_writew(val, mux_base + reg);
68} 68}
69 69
70void omap_mux_write_array(struct omap_board_mux *board_mux)
71{
72 while (board_mux->reg_offset != OMAP_MUX_TERMINATOR) {
73 omap_mux_write(board_mux->value, board_mux->reg_offset);
74 board_mux++;
75 }
76}
77
70#if defined(CONFIG_ARCH_OMAP24XX) && defined(CONFIG_OMAP_MUX) 78#if defined(CONFIG_ARCH_OMAP24XX) && defined(CONFIG_OMAP_MUX)
71 79
72static struct omap_mux_cfg arch_mux_cfg; 80static struct omap_mux_cfg arch_mux_cfg;
@@ -833,14 +841,6 @@ static void __init omap_mux_set_cmdline_signals(void)
833 kfree(options); 841 kfree(options);
834} 842}
835 843
836static void __init omap_mux_set_board_signals(struct omap_board_mux *board_mux)
837{
838 while (board_mux->reg_offset != OMAP_MUX_TERMINATOR) {
839 omap_mux_write(board_mux->value, board_mux->reg_offset);
840 board_mux++;
841 }
842}
843
844static int __init omap_mux_copy_names(struct omap_mux *src, 844static int __init omap_mux_copy_names(struct omap_mux *src,
845 struct omap_mux *dst) 845 struct omap_mux *dst)
846{ 846{
@@ -998,12 +998,15 @@ int __init omap_mux_init(u32 mux_pbase, u32 mux_size,
998 omap_mux_package_fixup(package_subset, superset); 998 omap_mux_package_fixup(package_subset, superset);
999 if (package_balls) 999 if (package_balls)
1000 omap_mux_package_init_balls(package_balls, superset); 1000 omap_mux_package_init_balls(package_balls, superset);
1001 omap_mux_set_cmdline_signals();
1002 omap_mux_set_board_signals(board_mux);
1003#endif 1001#endif
1004 1002
1005 omap_mux_init_list(superset); 1003 omap_mux_init_list(superset);
1006 1004
1005#ifdef CONFIG_OMAP_MUX
1006 omap_mux_set_cmdline_signals();
1007 omap_mux_write_array(board_mux);
1008#endif
1009
1007 return 0; 1010 return 0;
1008} 1011}
1009 1012
diff --git a/arch/arm/mach-omap2/mux.h b/arch/arm/mach-omap2/mux.h
index d8b4d5ad2278..f8c2e7a8f063 100644
--- a/arch/arm/mach-omap2/mux.h
+++ b/arch/arm/mach-omap2/mux.h
@@ -147,6 +147,30 @@ u16 omap_mux_get_gpio(int gpio);
147void omap_mux_set_gpio(u16 val, int gpio); 147void omap_mux_set_gpio(u16 val, int gpio);
148 148
149/** 149/**
150 * omap_mux_read() - read mux register
151 * @mux_offset: Offset of the mux register
152 *
153 */
154u16 omap_mux_read(u16 mux_offset);
155
156/**
157 * omap_mux_write() - write mux register
158 * @val: New mux register value
159 * @mux_offset: Offset of the mux register
160 *
161 * This should be only needed for dynamic remuxing of non-gpio signals.
162 */
163void omap_mux_write(u16 val, u16 mux_offset);
164
165/**
166 * omap_mux_write_array() - write an array of mux registers
167 * @board_mux: Array of mux registers terminated by MAP_MUX_TERMINATOR
168 *
169 * This should be only needed for dynamic remuxing of non-gpio signals.
170 */
171void omap_mux_write_array(struct omap_board_mux *board_mux);
172
173/**
150 * omap3_mux_init() - initialize mux system with board specific set 174 * omap3_mux_init() - initialize mux system with board specific set
151 * @board_mux: Board specific mux table 175 * @board_mux: Board specific mux table
152 * @flags: OMAP package type used for the board 176 * @flags: OMAP package type used for the board
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c
index d8c8545875b1..478ae585ca39 100644
--- a/arch/arm/mach-omap2/omap_hwmod.c
+++ b/arch/arm/mach-omap2/omap_hwmod.c
@@ -94,7 +94,8 @@ static int _update_sysc_cache(struct omap_hwmod *oh)
94 94
95 oh->_sysc_cache = omap_hwmod_readl(oh, oh->sysconfig->sysc_offs); 95 oh->_sysc_cache = omap_hwmod_readl(oh, oh->sysconfig->sysc_offs);
96 96
97 oh->_int_flags |= _HWMOD_SYSCONFIG_LOADED; 97 if (!(oh->sysconfig->sysc_flags & SYSC_NO_CACHE))
98 oh->_int_flags |= _HWMOD_SYSCONFIG_LOADED;
98 99
99 return 0; 100 return 0;
100} 101}
diff --git a/arch/arm/mach-omap2/pm-debug.c b/arch/arm/mach-omap2/pm-debug.c
index 860b755d2220..a0866268aa41 100644
--- a/arch/arm/mach-omap2/pm-debug.c
+++ b/arch/arm/mach-omap2/pm-debug.c
@@ -54,8 +54,6 @@ int omap2_pm_debug;
54 regs[reg_count++].val = \ 54 regs[reg_count++].val = \
55 __raw_readl(OMAP2_L4_IO_ADDRESS(0x480fe000 + (off))) 55 __raw_readl(OMAP2_L4_IO_ADDRESS(0x480fe000 + (off)))
56 56
57static int __init pm_dbg_init(void);
58
59void omap2_pm_dump(int mode, int resume, unsigned int us) 57void omap2_pm_dump(int mode, int resume, unsigned int us)
60{ 58{
61 struct reg { 59 struct reg {
@@ -167,6 +165,8 @@ struct dentry *pm_dbg_dir;
167 165
168static int pm_dbg_init_done; 166static int pm_dbg_init_done;
169 167
168static int __init pm_dbg_init(void);
169
170enum { 170enum {
171 DEBUG_FILE_COUNTERS = 0, 171 DEBUG_FILE_COUNTERS = 0,
172 DEBUG_FILE_TIMERS, 172 DEBUG_FILE_TIMERS,
@@ -488,9 +488,11 @@ int pm_dbg_regset_init(int reg_set)
488 488
489static int pwrdm_suspend_get(void *data, u64 *val) 489static int pwrdm_suspend_get(void *data, u64 *val)
490{ 490{
491 *val = omap3_pm_get_suspend_state((struct powerdomain *)data); 491 int ret;
492 ret = omap3_pm_get_suspend_state((struct powerdomain *)data);
493 *val = ret;
492 494
493 if (*val >= 0) 495 if (ret >= 0)
494 return 0; 496 return 0;
495 return *val; 497 return *val;
496} 498}
@@ -604,6 +606,4 @@ static int __init pm_dbg_init(void)
604} 606}
605arch_initcall(pm_dbg_init); 607arch_initcall(pm_dbg_init);
606 608
607#else
608void pm_dbg_update_time(struct powerdomain *pwrdm, int prev) {}
609#endif 609#endif
diff --git a/arch/arm/mach-omap2/pm.h b/arch/arm/mach-omap2/pm.h
index 0bf345db7147..7a9c2d004511 100644
--- a/arch/arm/mach-omap2/pm.h
+++ b/arch/arm/mach-omap2/pm.h
@@ -32,12 +32,16 @@ extern struct omap_dm_timer *gptimer_wakeup;
32#ifdef CONFIG_PM_DEBUG 32#ifdef CONFIG_PM_DEBUG
33extern void omap2_pm_dump(int mode, int resume, unsigned int us); 33extern void omap2_pm_dump(int mode, int resume, unsigned int us);
34extern int omap2_pm_debug; 34extern int omap2_pm_debug;
35#else
36#define omap2_pm_dump(mode, resume, us) do {} while (0);
37#define omap2_pm_debug 0
38#endif
39
40#if defined(CONFIG_PM_DEBUG) && defined(CONFIG_DEBUG_FS)
35extern void pm_dbg_update_time(struct powerdomain *pwrdm, int prev); 41extern void pm_dbg_update_time(struct powerdomain *pwrdm, int prev);
36extern int pm_dbg_regset_save(int reg_set); 42extern int pm_dbg_regset_save(int reg_set);
37extern int pm_dbg_regset_init(int reg_set); 43extern int pm_dbg_regset_init(int reg_set);
38#else 44#else
39#define omap2_pm_dump(mode, resume, us) do {} while (0);
40#define omap2_pm_debug 0
41#define pm_dbg_update_time(pwrdm, prev) do {} while (0); 45#define pm_dbg_update_time(pwrdm, prev) do {} while (0);
42#define pm_dbg_regset_save(reg_set) do {} while (0); 46#define pm_dbg_regset_save(reg_set) do {} while (0);
43#define pm_dbg_regset_init(reg_set) do {} while (0); 47#define pm_dbg_regset_init(reg_set) do {} while (0);
diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
index c6cc809afb79..910a7acf542d 100644
--- a/arch/arm/mach-omap2/pm34xx.c
+++ b/arch/arm/mach-omap2/pm34xx.c
@@ -26,6 +26,7 @@
26#include <linux/err.h> 26#include <linux/err.h>
27#include <linux/gpio.h> 27#include <linux/gpio.h>
28#include <linux/clk.h> 28#include <linux/clk.h>
29#include <linux/delay.h>
29 30
30#include <plat/sram.h> 31#include <plat/sram.h>
31#include <plat/clockdomain.h> 32#include <plat/clockdomain.h>
@@ -126,7 +127,15 @@ static void omap3_core_save_context(void)
126 /* wait for the save to complete */ 127 /* wait for the save to complete */
127 while (!(omap_ctrl_readl(OMAP343X_CONTROL_GENERAL_PURPOSE_STATUS) 128 while (!(omap_ctrl_readl(OMAP343X_CONTROL_GENERAL_PURPOSE_STATUS)
128 & PADCONF_SAVE_DONE)) 129 & PADCONF_SAVE_DONE))
129 ; 130 udelay(1);
131
132 /*
133 * Force write last pad into memory, as this can fail in some
134 * cases according to erratas 1.157, 1.185
135 */
136 omap_ctrl_writel(omap_ctrl_readl(OMAP343X_PADCONF_ETK_D14),
137 OMAP343X_CONTROL_MEM_WKUP + 0x2a0);
138
130 /* Save the Interrupt controller context */ 139 /* Save the Interrupt controller context */
131 omap_intc_save_context(); 140 omap_intc_save_context();
132 /* Save the GPMC context */ 141 /* Save the GPMC context */
@@ -392,6 +401,7 @@ void omap_sram_idle(void)
392 prm_set_mod_reg_bits(OMAP3430_EN_IO, WKUP_MOD, PM_WKEN); 401 prm_set_mod_reg_bits(OMAP3430_EN_IO, WKUP_MOD, PM_WKEN);
393 omap3_enable_io_chain(); 402 omap3_enable_io_chain();
394 } 403 }
404 omap3_intc_prepare_idle();
395 405
396 /* 406 /*
397 * On EMU/HS devices ROM code restores a SRDC value 407 * On EMU/HS devices ROM code restores a SRDC value
@@ -438,6 +448,7 @@ void omap_sram_idle(void)
438 OMAP3430_GR_MOD, 448 OMAP3430_GR_MOD,
439 OMAP3_PRM_VOLTCTRL_OFFSET); 449 OMAP3_PRM_VOLTCTRL_OFFSET);
440 } 450 }
451 omap3_intc_resume_idle();
441 452
442 /* PER */ 453 /* PER */
443 if (per_next_state < PWRDM_POWER_ON) { 454 if (per_next_state < PWRDM_POWER_ON) {
@@ -578,6 +589,8 @@ static int omap3_pm_suspend(void)
578 } 589 }
579 590
580 omap_uart_prepare_suspend(); 591 omap_uart_prepare_suspend();
592 omap3_intc_suspend();
593
581 omap_sram_idle(); 594 omap_sram_idle();
582 595
583restore: 596restore:
@@ -835,6 +848,8 @@ static void __init prcm_setup_regs(void)
835 CM_AUTOIDLE); 848 CM_AUTOIDLE);
836 } 849 }
837 850
851 omap_ctrl_writel(OMAP3430_AUTOIDLE, OMAP2_CONTROL_SYSCONFIG);
852
838 /* 853 /*
839 * Set all plls to autoidle. This is needed until autoidle is 854 * Set all plls to autoidle. This is needed until autoidle is
840 * enabled by clockfw 855 * enabled by clockfw
@@ -875,15 +890,23 @@ static void __init prcm_setup_regs(void)
875 prm_write_mod_reg(OMAP3430_IO_EN | OMAP3430_WKUP_EN, 890 prm_write_mod_reg(OMAP3430_IO_EN | OMAP3430_WKUP_EN,
876 OCP_MOD, OMAP3_PRM_IRQENABLE_MPU_OFFSET); 891 OCP_MOD, OMAP3_PRM_IRQENABLE_MPU_OFFSET);
877 892
893 /* Enable PM_WKEN to support DSS LPR */
894 prm_write_mod_reg(OMAP3430_PM_WKEN_DSS_EN_DSS,
895 OMAP3430_DSS_MOD, PM_WKEN);
896
878 /* Enable wakeups in PER */ 897 /* Enable wakeups in PER */
879 prm_write_mod_reg(OMAP3430_EN_GPIO2 | OMAP3430_EN_GPIO3 | 898 prm_write_mod_reg(OMAP3430_EN_GPIO2 | OMAP3430_EN_GPIO3 |
880 OMAP3430_EN_GPIO4 | OMAP3430_EN_GPIO5 | 899 OMAP3430_EN_GPIO4 | OMAP3430_EN_GPIO5 |
881 OMAP3430_EN_GPIO6 | OMAP3430_EN_UART3, 900 OMAP3430_EN_GPIO6 | OMAP3430_EN_UART3 |
901 OMAP3430_EN_MCBSP2 | OMAP3430_EN_MCBSP3 |
902 OMAP3430_EN_MCBSP4,
882 OMAP3430_PER_MOD, PM_WKEN); 903 OMAP3430_PER_MOD, PM_WKEN);
883 /* and allow them to wake up MPU */ 904 /* and allow them to wake up MPU */
884 prm_write_mod_reg(OMAP3430_GRPSEL_GPIO2 | OMAP3430_EN_GPIO3 | 905 prm_write_mod_reg(OMAP3430_GRPSEL_GPIO2 | OMAP3430_EN_GPIO3 |
885 OMAP3430_GRPSEL_GPIO4 | OMAP3430_EN_GPIO5 | 906 OMAP3430_GRPSEL_GPIO4 | OMAP3430_EN_GPIO5 |
886 OMAP3430_GRPSEL_GPIO6 | OMAP3430_EN_UART3, 907 OMAP3430_GRPSEL_GPIO6 | OMAP3430_EN_UART3 |
908 OMAP3430_EN_MCBSP2 | OMAP3430_EN_MCBSP3 |
909 OMAP3430_EN_MCBSP4,
887 OMAP3430_PER_MOD, OMAP3430_PM_MPUGRPSEL); 910 OMAP3430_PER_MOD, OMAP3430_PM_MPUGRPSEL);
888 911
889 /* Don't attach IVA interrupts */ 912 /* Don't attach IVA interrupts */
@@ -904,24 +927,6 @@ static void __init prcm_setup_regs(void)
904 /* Clear any pending PRCM interrupts */ 927 /* Clear any pending PRCM interrupts */
905 prm_write_mod_reg(0, OCP_MOD, OMAP3_PRM_IRQSTATUS_MPU_OFFSET); 928 prm_write_mod_reg(0, OCP_MOD, OMAP3_PRM_IRQSTATUS_MPU_OFFSET);
906 929
907 /* Don't attach IVA interrupts */
908 prm_write_mod_reg(0, WKUP_MOD, OMAP3430_PM_IVAGRPSEL);
909 prm_write_mod_reg(0, CORE_MOD, OMAP3430_PM_IVAGRPSEL1);
910 prm_write_mod_reg(0, CORE_MOD, OMAP3430ES2_PM_IVAGRPSEL3);
911 prm_write_mod_reg(0, OMAP3430_PER_MOD, OMAP3430_PM_IVAGRPSEL);
912
913 /* Clear any pending 'reset' flags */
914 prm_write_mod_reg(0xffffffff, MPU_MOD, RM_RSTST);
915 prm_write_mod_reg(0xffffffff, CORE_MOD, RM_RSTST);
916 prm_write_mod_reg(0xffffffff, OMAP3430_PER_MOD, RM_RSTST);
917 prm_write_mod_reg(0xffffffff, OMAP3430_EMU_MOD, RM_RSTST);
918 prm_write_mod_reg(0xffffffff, OMAP3430_NEON_MOD, RM_RSTST);
919 prm_write_mod_reg(0xffffffff, OMAP3430_DSS_MOD, RM_RSTST);
920 prm_write_mod_reg(0xffffffff, OMAP3430ES2_USBHOST_MOD, RM_RSTST);
921
922 /* Clear any pending PRCM interrupts */
923 prm_write_mod_reg(0, OCP_MOD, OMAP3_PRM_IRQSTATUS_MPU_OFFSET);
924
925 omap3_iva_idle(); 930 omap3_iva_idle();
926 omap3_d2d_idle(); 931 omap3_d2d_idle();
927} 932}
diff --git a/arch/arm/mach-omap2/prcm.c b/arch/arm/mach-omap2/prcm.c
index 3ea8177ffb25..cf466ea1dffc 100644
--- a/arch/arm/mach-omap2/prcm.c
+++ b/arch/arm/mach-omap2/prcm.c
@@ -44,7 +44,6 @@ struct omap3_prcm_regs {
44 u32 iva2_cm_clksel2; 44 u32 iva2_cm_clksel2;
45 u32 cm_sysconfig; 45 u32 cm_sysconfig;
46 u32 sgx_cm_clksel; 46 u32 sgx_cm_clksel;
47 u32 wkup_cm_clksel;
48 u32 dss_cm_clksel; 47 u32 dss_cm_clksel;
49 u32 cam_cm_clksel; 48 u32 cam_cm_clksel;
50 u32 per_cm_clksel; 49 u32 per_cm_clksel;
@@ -53,7 +52,6 @@ struct omap3_prcm_regs {
53 u32 pll_cm_autoidle2; 52 u32 pll_cm_autoidle2;
54 u32 pll_cm_clksel4; 53 u32 pll_cm_clksel4;
55 u32 pll_cm_clksel5; 54 u32 pll_cm_clksel5;
56 u32 pll_cm_clken;
57 u32 pll_cm_clken2; 55 u32 pll_cm_clken2;
58 u32 cm_polctrl; 56 u32 cm_polctrl;
59 u32 iva2_cm_fclken; 57 u32 iva2_cm_fclken;
@@ -77,7 +75,6 @@ struct omap3_prcm_regs {
77 u32 usbhost_cm_iclken; 75 u32 usbhost_cm_iclken;
78 u32 iva2_cm_autiidle2; 76 u32 iva2_cm_autiidle2;
79 u32 mpu_cm_autoidle2; 77 u32 mpu_cm_autoidle2;
80 u32 pll_cm_autoidle;
81 u32 iva2_cm_clkstctrl; 78 u32 iva2_cm_clkstctrl;
82 u32 mpu_cm_clkstctrl; 79 u32 mpu_cm_clkstctrl;
83 u32 core_cm_clkstctrl; 80 u32 core_cm_clkstctrl;
@@ -274,7 +271,6 @@ void omap3_prcm_save_context(void)
274 prcm_context.cm_sysconfig = __raw_readl(OMAP3430_CM_SYSCONFIG); 271 prcm_context.cm_sysconfig = __raw_readl(OMAP3430_CM_SYSCONFIG);
275 prcm_context.sgx_cm_clksel = 272 prcm_context.sgx_cm_clksel =
276 cm_read_mod_reg(OMAP3430ES2_SGX_MOD, CM_CLKSEL); 273 cm_read_mod_reg(OMAP3430ES2_SGX_MOD, CM_CLKSEL);
277 prcm_context.wkup_cm_clksel = cm_read_mod_reg(WKUP_MOD, CM_CLKSEL);
278 prcm_context.dss_cm_clksel = 274 prcm_context.dss_cm_clksel =
279 cm_read_mod_reg(OMAP3430_DSS_MOD, CM_CLKSEL); 275 cm_read_mod_reg(OMAP3430_DSS_MOD, CM_CLKSEL);
280 prcm_context.cam_cm_clksel = 276 prcm_context.cam_cm_clksel =
@@ -291,8 +287,6 @@ void omap3_prcm_save_context(void)
291 cm_read_mod_reg(PLL_MOD, OMAP3430ES2_CM_CLKSEL4); 287 cm_read_mod_reg(PLL_MOD, OMAP3430ES2_CM_CLKSEL4);
292 prcm_context.pll_cm_clksel5 = 288 prcm_context.pll_cm_clksel5 =
293 cm_read_mod_reg(PLL_MOD, OMAP3430ES2_CM_CLKSEL5); 289 cm_read_mod_reg(PLL_MOD, OMAP3430ES2_CM_CLKSEL5);
294 prcm_context.pll_cm_clken =
295 cm_read_mod_reg(PLL_MOD, CM_CLKEN);
296 prcm_context.pll_cm_clken2 = 290 prcm_context.pll_cm_clken2 =
297 cm_read_mod_reg(PLL_MOD, OMAP3430ES2_CM_CLKEN2); 291 cm_read_mod_reg(PLL_MOD, OMAP3430ES2_CM_CLKEN2);
298 prcm_context.cm_polctrl = __raw_readl(OMAP3430_CM_POLCTRL); 292 prcm_context.cm_polctrl = __raw_readl(OMAP3430_CM_POLCTRL);
@@ -338,8 +332,6 @@ void omap3_prcm_save_context(void)
338 cm_read_mod_reg(OMAP3430_IVA2_MOD, CM_AUTOIDLE2); 332 cm_read_mod_reg(OMAP3430_IVA2_MOD, CM_AUTOIDLE2);
339 prcm_context.mpu_cm_autoidle2 = 333 prcm_context.mpu_cm_autoidle2 =
340 cm_read_mod_reg(MPU_MOD, CM_AUTOIDLE2); 334 cm_read_mod_reg(MPU_MOD, CM_AUTOIDLE2);
341 prcm_context.pll_cm_autoidle =
342 cm_read_mod_reg(PLL_MOD, CM_AUTOIDLE);
343 prcm_context.iva2_cm_clkstctrl = 335 prcm_context.iva2_cm_clkstctrl =
344 cm_read_mod_reg(OMAP3430_IVA2_MOD, CM_CLKSTCTRL); 336 cm_read_mod_reg(OMAP3430_IVA2_MOD, CM_CLKSTCTRL);
345 prcm_context.mpu_cm_clkstctrl = 337 prcm_context.mpu_cm_clkstctrl =
@@ -431,7 +423,6 @@ void omap3_prcm_restore_context(void)
431 __raw_writel(prcm_context.cm_sysconfig, OMAP3430_CM_SYSCONFIG); 423 __raw_writel(prcm_context.cm_sysconfig, OMAP3430_CM_SYSCONFIG);
432 cm_write_mod_reg(prcm_context.sgx_cm_clksel, OMAP3430ES2_SGX_MOD, 424 cm_write_mod_reg(prcm_context.sgx_cm_clksel, OMAP3430ES2_SGX_MOD,
433 CM_CLKSEL); 425 CM_CLKSEL);
434 cm_write_mod_reg(prcm_context.wkup_cm_clksel, WKUP_MOD, CM_CLKSEL);
435 cm_write_mod_reg(prcm_context.dss_cm_clksel, OMAP3430_DSS_MOD, 426 cm_write_mod_reg(prcm_context.dss_cm_clksel, OMAP3430_DSS_MOD,
436 CM_CLKSEL); 427 CM_CLKSEL);
437 cm_write_mod_reg(prcm_context.cam_cm_clksel, OMAP3430_CAM_MOD, 428 cm_write_mod_reg(prcm_context.cam_cm_clksel, OMAP3430_CAM_MOD,
@@ -448,7 +439,6 @@ void omap3_prcm_restore_context(void)
448 OMAP3430ES2_CM_CLKSEL4); 439 OMAP3430ES2_CM_CLKSEL4);
449 cm_write_mod_reg(prcm_context.pll_cm_clksel5, PLL_MOD, 440 cm_write_mod_reg(prcm_context.pll_cm_clksel5, PLL_MOD,
450 OMAP3430ES2_CM_CLKSEL5); 441 OMAP3430ES2_CM_CLKSEL5);
451 cm_write_mod_reg(prcm_context.pll_cm_clken, PLL_MOD, CM_CLKEN);
452 cm_write_mod_reg(prcm_context.pll_cm_clken2, PLL_MOD, 442 cm_write_mod_reg(prcm_context.pll_cm_clken2, PLL_MOD,
453 OMAP3430ES2_CM_CLKEN2); 443 OMAP3430ES2_CM_CLKEN2);
454 __raw_writel(prcm_context.cm_polctrl, OMAP3430_CM_POLCTRL); 444 __raw_writel(prcm_context.cm_polctrl, OMAP3430_CM_POLCTRL);
@@ -487,7 +477,6 @@ void omap3_prcm_restore_context(void)
487 cm_write_mod_reg(prcm_context.iva2_cm_autiidle2, OMAP3430_IVA2_MOD, 477 cm_write_mod_reg(prcm_context.iva2_cm_autiidle2, OMAP3430_IVA2_MOD,
488 CM_AUTOIDLE2); 478 CM_AUTOIDLE2);
489 cm_write_mod_reg(prcm_context.mpu_cm_autoidle2, MPU_MOD, CM_AUTOIDLE2); 479 cm_write_mod_reg(prcm_context.mpu_cm_autoidle2, MPU_MOD, CM_AUTOIDLE2);
490 cm_write_mod_reg(prcm_context.pll_cm_autoidle, PLL_MOD, CM_AUTOIDLE);
491 cm_write_mod_reg(prcm_context.iva2_cm_clkstctrl, OMAP3430_IVA2_MOD, 480 cm_write_mod_reg(prcm_context.iva2_cm_clkstctrl, OMAP3430_IVA2_MOD,
492 CM_CLKSTCTRL); 481 CM_CLKSTCTRL);
493 cm_write_mod_reg(prcm_context.mpu_cm_clkstctrl, MPU_MOD, CM_CLKSTCTRL); 482 cm_write_mod_reg(prcm_context.mpu_cm_clkstctrl, MPU_MOD, CM_CLKSTCTRL);
diff --git a/arch/arm/mach-omap2/prm.h b/arch/arm/mach-omap2/prm.h
index ea050ce188a7..40f006285163 100644
--- a/arch/arm/mach-omap2/prm.h
+++ b/arch/arm/mach-omap2/prm.h
@@ -24,6 +24,8 @@
24 OMAP2_L4_IO_ADDRESS(OMAP3430_PRM_BASE + (module) + (reg)) 24 OMAP2_L4_IO_ADDRESS(OMAP3430_PRM_BASE + (module) + (reg))
25#define OMAP44XX_PRM_REGADDR(module, reg) \ 25#define OMAP44XX_PRM_REGADDR(module, reg) \
26 OMAP2_L4_IO_ADDRESS(OMAP4430_PRM_BASE + (module) + (reg)) 26 OMAP2_L4_IO_ADDRESS(OMAP4430_PRM_BASE + (module) + (reg))
27#define OMAP44XX_CHIRONSS_REGADDR(module, reg) \
28 OMAP2_L4_IO_ADDRESS(OMAP4430_CHIRONSS_BASE + (module) + (reg))
27 29
28#include "prm44xx.h" 30#include "prm44xx.h"
29 31
diff --git a/arch/arm/mach-omap2/prm44xx.h b/arch/arm/mach-omap2/prm44xx.h
index 89be97f0589d..adb2558bb121 100644
--- a/arch/arm/mach-omap2/prm44xx.h
+++ b/arch/arm/mach-omap2/prm44xx.h
@@ -386,26 +386,26 @@
386 386
387 387
388/* CHIRON_PRCM.CHIRONSS_OCP_SOCKET_PRCM register offsets */ 388/* CHIRON_PRCM.CHIRONSS_OCP_SOCKET_PRCM register offsets */
389#define OMAP4430_REVISION_PRCM OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_OCP_SOCKET_PRCM_MOD, 0x0000) 389#define OMAP4430_REVISION_PRCM OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_OCP_SOCKET_PRCM_MOD, 0x0000)
390 390
391/* CHIRON_PRCM.CHIRONSS_DEVICE_PRM register offsets */ 391/* CHIRON_PRCM.CHIRONSS_DEVICE_PRM register offsets */
392#define OMAP4430_CHIRON_PRCM_PRM_RSTST OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_DEVICE_PRM_MOD, 0x0000) 392#define OMAP4430_CHIRON_PRCM_PRM_RSTST OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_DEVICE_PRM_MOD, 0x0000)
393 393
394/* CHIRON_PRCM.CHIRONSS_CPU0 register offsets */ 394/* CHIRON_PRCM.CHIRONSS_CPU0 register offsets */
395#define OMAP4430_PM_PDA_CPU0_PWRSTCTRL OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0000) 395#define OMAP4430_PM_PDA_CPU0_PWRSTCTRL OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0000)
396#define OMAP4430_PM_PDA_CPU0_PWRSTST OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0004) 396#define OMAP4430_PM_PDA_CPU0_PWRSTST OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0004)
397#define OMAP4430_RM_PDA_CPU0_CPU0_CONTEXT OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0008) 397#define OMAP4430_RM_PDA_CPU0_CPU0_CONTEXT OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0008)
398#define OMAP4430_RM_PDA_CPU0_CPU0_RSTCTRL OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x000c) 398#define OMAP4430_RM_PDA_CPU0_CPU0_RSTCTRL OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x000c)
399#define OMAP4430_RM_PDA_CPU0_CPU0_RSTST OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0010) 399#define OMAP4430_RM_PDA_CPU0_CPU0_RSTST OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0010)
400#define OMAP4430_CM_PDA_CPU0_CPU0_CLKCTRL OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0014) 400#define OMAP4430_CM_PDA_CPU0_CPU0_CLKCTRL OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0014)
401#define OMAP4430_CM_PDA_CPU0_CLKSTCTRL OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0018) 401#define OMAP4430_CM_PDA_CPU0_CLKSTCTRL OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU0_MOD, 0x0018)
402 402
403/* CHIRON_PRCM.CHIRONSS_CPU1 register offsets */ 403/* CHIRON_PRCM.CHIRONSS_CPU1 register offsets */
404#define OMAP4430_PM_PDA_CPU1_PWRSTCTRL OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0000) 404#define OMAP4430_PM_PDA_CPU1_PWRSTCTRL OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0000)
405#define OMAP4430_PM_PDA_CPU1_PWRSTST OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0004) 405#define OMAP4430_PM_PDA_CPU1_PWRSTST OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0004)
406#define OMAP4430_RM_PDA_CPU1_CPU1_CONTEXT OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0008) 406#define OMAP4430_RM_PDA_CPU1_CPU1_CONTEXT OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0008)
407#define OMAP4430_RM_PDA_CPU1_CPU1_RSTCTRL OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x000c) 407#define OMAP4430_RM_PDA_CPU1_CPU1_RSTCTRL OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x000c)
408#define OMAP4430_RM_PDA_CPU1_CPU1_RSTST OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0010) 408#define OMAP4430_RM_PDA_CPU1_CPU1_RSTST OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0010)
409#define OMAP4430_CM_PDA_CPU1_CPU1_CLKCTRL OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0014) 409#define OMAP4430_CM_PDA_CPU1_CPU1_CLKCTRL OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0014)
410#define OMAP4430_CM_PDA_CPU1_CLKSTCTRL OMAP44XX_PRM_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0018) 410#define OMAP4430_CM_PDA_CPU1_CLKSTCTRL OMAP44XX_CHIRONSS_REGADDR(OMAP4430_CHIRONSS_CHIRONSS_CPU1_MOD, 0x0018)
411#endif 411#endif
diff --git a/arch/arm/mach-omap2/sleep34xx.S b/arch/arm/mach-omap2/sleep34xx.S
index 15268f8b61de..c3626ea48143 100644
--- a/arch/arm/mach-omap2/sleep34xx.S
+++ b/arch/arm/mach-omap2/sleep34xx.S
@@ -245,7 +245,8 @@ restore:
245 mov r1, #0 @ set task id for ROM code in r1 245 mov r1, #0 @ set task id for ROM code in r1
246 mov r2, #4 @ set some flags in r2, r6 246 mov r2, #4 @ set some flags in r2, r6
247 mov r6, #0xff 247 mov r6, #0xff
248 adr r3, write_aux_control_params @ r3 points to parameters 248 ldr r4, scratchpad_base
249 ldr r3, [r4, #0xBC] @ r3 points to parameters
249 mcr p15, 0, r0, c7, c10, 4 @ data write barrier 250 mcr p15, 0, r0, c7, c10, 4 @ data write barrier
250 mcr p15, 0, r0, c7, c10, 5 @ data memory barrier 251 mcr p15, 0, r0, c7, c10, 5 @ data memory barrier
251 .word 0xE1600071 @ call SMI monitor (smi #1) 252 .word 0xE1600071 @ call SMI monitor (smi #1)
@@ -253,14 +254,14 @@ restore:
253 b logic_l1_restore 254 b logic_l1_restore
254l2_inv_api_params: 255l2_inv_api_params:
255 .word 0x1, 0x00 256 .word 0x1, 0x00
256write_aux_control_params:
257 .word 0x1, 0x72
258l2_inv_gp: 257l2_inv_gp:
259 /* Execute smi to invalidate L2 cache */ 258 /* Execute smi to invalidate L2 cache */
260 mov r12, #0x1 @ set up to invalide L2 259 mov r12, #0x1 @ set up to invalide L2
261smi: .word 0xE1600070 @ Call SMI monitor (smieq) 260smi: .word 0xE1600070 @ Call SMI monitor (smieq)
262 /* Write to Aux control register to set some bits */ 261 /* Write to Aux control register to set some bits */
263 mov r0, #0x72 262 ldr r4, scratchpad_base
263 ldr r3, [r4,#0xBC]
264 ldr r0, [r3,#4]
264 mov r12, #0x3 265 mov r12, #0x3
265 .word 0xE1600070 @ Call SMI monitor (smieq) 266 .word 0xE1600070 @ Call SMI monitor (smieq)
266logic_l1_restore: 267logic_l1_restore:
@@ -271,6 +272,7 @@ logic_l1_restore:
271 272
272 ldr r4, scratchpad_base 273 ldr r4, scratchpad_base
273 ldr r3, [r4,#0xBC] 274 ldr r3, [r4,#0xBC]
275 adds r3, r3, #8
274 ldmia r3!, {r4-r6} 276 ldmia r3!, {r4-r6}
275 mov sp, r4 277 mov sp, r4
276 msr spsr_cxsf, r5 278 msr spsr_cxsf, r5
@@ -387,6 +389,9 @@ usettbr0:
387save_context_wfi: 389save_context_wfi:
388 /*b save_context_wfi*/ @ enable to debug save code 390 /*b save_context_wfi*/ @ enable to debug save code
389 mov r8, r0 /* Store SDRAM address in r8 */ 391 mov r8, r0 /* Store SDRAM address in r8 */
392 mrc p15, 0, r5, c1, c0, 1 @ Read Auxiliary Control Register
393 mov r4, #0x1 @ Number of parameters for restore call
394 stmia r8!, {r4-r5}
390 /* Check what that target sleep state is:stored in r1*/ 395 /* Check what that target sleep state is:stored in r1*/
391 /* 1 - Only L1 and logic lost */ 396 /* 1 - Only L1 and logic lost */
392 /* 2 - Only L2 lost */ 397 /* 2 - Only L2 lost */
diff --git a/arch/arm/mach-orion5x/dns323-setup.c b/arch/arm/mach-orion5x/dns323-setup.c
index b31ca4cef365..8f159db4d08a 100644
--- a/arch/arm/mach-orion5x/dns323-setup.c
+++ b/arch/arm/mach-orion5x/dns323-setup.c
@@ -12,6 +12,7 @@
12 12
13#include <linux/kernel.h> 13#include <linux/kernel.h>
14#include <linux/init.h> 14#include <linux/init.h>
15#include <linux/delay.h>
15#include <linux/platform_device.h> 16#include <linux/platform_device.h>
16#include <linux/pci.h> 17#include <linux/pci.h>
17#include <linux/irq.h> 18#include <linux/irq.h>
@@ -32,6 +33,7 @@
32 33
33#define DNS323_GPIO_LED_RIGHT_AMBER 1 34#define DNS323_GPIO_LED_RIGHT_AMBER 1
34#define DNS323_GPIO_LED_LEFT_AMBER 2 35#define DNS323_GPIO_LED_LEFT_AMBER 2
36#define DNS323_GPIO_SYSTEM_UP 3
35#define DNS323_GPIO_LED_POWER 5 37#define DNS323_GPIO_LED_POWER 5
36#define DNS323_GPIO_OVERTEMP 6 38#define DNS323_GPIO_OVERTEMP 6
37#define DNS323_GPIO_RTC 7 39#define DNS323_GPIO_RTC 7
@@ -239,7 +241,7 @@ static struct gpio_led dns323_leds[] = {
239 { 241 {
240 .name = "power:blue", 242 .name = "power:blue",
241 .gpio = DNS323_GPIO_LED_POWER, 243 .gpio = DNS323_GPIO_LED_POWER,
242 .active_low = 1, 244 .default_state = LEDS_GPIO_DEFSTATE_ON,
243 }, { 245 }, {
244 .name = "right:amber", 246 .name = "right:amber",
245 .gpio = DNS323_GPIO_LED_RIGHT_AMBER, 247 .gpio = DNS323_GPIO_LED_RIGHT_AMBER,
@@ -334,7 +336,7 @@ static struct orion5x_mpp_mode dns323_mv88f5182_mpp_modes[] __initdata = {
334 { 0, MPP_UNUSED }, 336 { 0, MPP_UNUSED },
335 { 1, MPP_GPIO }, /* right amber LED (sata ch0) */ 337 { 1, MPP_GPIO }, /* right amber LED (sata ch0) */
336 { 2, MPP_GPIO }, /* left amber LED (sata ch1) */ 338 { 2, MPP_GPIO }, /* left amber LED (sata ch1) */
337 { 3, MPP_UNUSED }, 339 { 3, MPP_GPIO }, /* system up flag */
338 { 4, MPP_GPIO }, /* power button LED */ 340 { 4, MPP_GPIO }, /* power button LED */
339 { 5, MPP_GPIO }, /* power button LED */ 341 { 5, MPP_GPIO }, /* power button LED */
340 { 6, MPP_GPIO }, /* GMT G751-2f overtemp */ 342 { 6, MPP_GPIO }, /* GMT G751-2f overtemp */
@@ -372,13 +374,23 @@ static struct i2c_board_info __initdata dns323_i2c_devices[] = {
372 }, 374 },
373}; 375};
374 376
375/* DNS-323 specific power off method */ 377/* DNS-323 rev. A specific power off method */
376static void dns323_power_off(void) 378static void dns323a_power_off(void)
377{ 379{
378 pr_info("%s: triggering power-off...\n", __func__); 380 pr_info("%s: triggering power-off...\n", __func__);
379 gpio_set_value(DNS323_GPIO_POWER_OFF, 1); 381 gpio_set_value(DNS323_GPIO_POWER_OFF, 1);
380} 382}
381 383
384/* DNS-323 rev B specific power off method */
385static void dns323b_power_off(void)
386{
387 pr_info("%s: triggering power-off...\n", __func__);
388 /* Pin has to be changed to 1 and back to 0 to do actual power off. */
389 gpio_set_value(DNS323_GPIO_POWER_OFF, 1);
390 mdelay(100);
391 gpio_set_value(DNS323_GPIO_POWER_OFF, 0);
392}
393
382static void __init dns323_init(void) 394static void __init dns323_init(void)
383{ 395{
384 /* Setup basic Orion functions. Need to be called early. */ 396 /* Setup basic Orion functions. Need to be called early. */
@@ -424,11 +436,20 @@ static void __init dns323_init(void)
424 if (dns323_dev_id() == MV88F5182_DEV_ID) 436 if (dns323_dev_id() == MV88F5182_DEV_ID)
425 orion5x_sata_init(&dns323_sata_data); 437 orion5x_sata_init(&dns323_sata_data);
426 438
427 /* register dns323 specific power-off method */ 439 /* The 5182 has flag to indicate the system is up. Without this flag
440 * set, power LED will flash and cannot be controlled via leds-gpio.
441 */
442 if (dns323_dev_id() == MV88F5182_DEV_ID)
443 gpio_set_value(DNS323_GPIO_SYSTEM_UP, 1);
444
445 /* Register dns323 specific power-off method */
428 if (gpio_request(DNS323_GPIO_POWER_OFF, "POWEROFF") != 0 || 446 if (gpio_request(DNS323_GPIO_POWER_OFF, "POWEROFF") != 0 ||
429 gpio_direction_output(DNS323_GPIO_POWER_OFF, 0) != 0) 447 gpio_direction_output(DNS323_GPIO_POWER_OFF, 0) != 0)
430 pr_err("DNS323: failed to setup power-off GPIO\n"); 448 pr_err("DNS323: failed to setup power-off GPIO\n");
431 pm_power_off = dns323_power_off; 449 if (dns323_dev_id() == MV88F5182_DEV_ID)
450 pm_power_off = dns323b_power_off;
451 else
452 pm_power_off = dns323a_power_off;
432} 453}
433 454
434/* Warning: D-Link uses a wrong mach-type (=526) in their bootloader */ 455/* Warning: D-Link uses a wrong mach-type (=526) in their bootloader */
diff --git a/arch/arm/mach-orion5x/wrt350n-v2-setup.c b/arch/arm/mach-orion5x/wrt350n-v2-setup.c
index 1b4ad9d5e2eb..cb0feca193d4 100644
--- a/arch/arm/mach-orion5x/wrt350n-v2-setup.c
+++ b/arch/arm/mach-orion5x/wrt350n-v2-setup.c
@@ -15,6 +15,9 @@
15#include <linux/mtd/physmap.h> 15#include <linux/mtd/physmap.h>
16#include <linux/mv643xx_eth.h> 16#include <linux/mv643xx_eth.h>
17#include <linux/ethtool.h> 17#include <linux/ethtool.h>
18#include <linux/leds.h>
19#include <linux/gpio_keys.h>
20#include <linux/input.h>
18#include <net/dsa.h> 21#include <net/dsa.h>
19#include <asm/mach-types.h> 22#include <asm/mach-types.h>
20#include <asm/gpio.h> 23#include <asm/gpio.h>
@@ -24,6 +27,80 @@
24#include "common.h" 27#include "common.h"
25#include "mpp.h" 28#include "mpp.h"
26 29
30/*
31 * LEDs attached to GPIO
32 */
33static struct gpio_led wrt350n_v2_led_pins[] = {
34 {
35 .name = "wrt350nv2:green:power",
36 .gpio = 0,
37 .active_low = 1,
38 }, {
39 .name = "wrt350nv2:green:security",
40 .gpio = 1,
41 .active_low = 1,
42 }, {
43 .name = "wrt350nv2:orange:power",
44 .gpio = 5,
45 .active_low = 1,
46 }, {
47 .name = "wrt350nv2:green:usb",
48 .gpio = 6,
49 .active_low = 1,
50 }, {
51 .name = "wrt350nv2:green:wireless",
52 .gpio = 7,
53 .active_low = 1,
54 },
55};
56
57static struct gpio_led_platform_data wrt350n_v2_led_data = {
58 .leds = wrt350n_v2_led_pins,
59 .num_leds = ARRAY_SIZE(wrt350n_v2_led_pins),
60};
61
62static struct platform_device wrt350n_v2_leds = {
63 .name = "leds-gpio",
64 .id = -1,
65 .dev = {
66 .platform_data = &wrt350n_v2_led_data,
67 },
68};
69
70/*
71 * Buttons attached to GPIO
72 */
73static struct gpio_keys_button wrt350n_v2_buttons[] = {
74 {
75 .code = KEY_RESTART,
76 .gpio = 3,
77 .desc = "Reset Button",
78 .active_low = 1,
79 }, {
80 .code = KEY_WLAN,
81 .gpio = 2,
82 .desc = "WPS Button",
83 .active_low = 1,
84 },
85};
86
87static struct gpio_keys_platform_data wrt350n_v2_button_data = {
88 .buttons = wrt350n_v2_buttons,
89 .nbuttons = ARRAY_SIZE(wrt350n_v2_buttons),
90};
91
92static struct platform_device wrt350n_v2_button_device = {
93 .name = "gpio-keys",
94 .id = -1,
95 .num_resources = 0,
96 .dev = {
97 .platform_data = &wrt350n_v2_button_data,
98 },
99};
100
101/*
102 * General setup
103 */
27static struct orion5x_mpp_mode wrt350n_v2_mpp_modes[] __initdata = { 104static struct orion5x_mpp_mode wrt350n_v2_mpp_modes[] __initdata = {
28 { 0, MPP_GPIO }, /* Power LED green (0=on) */ 105 { 0, MPP_GPIO }, /* Power LED green (0=on) */
29 { 1, MPP_GPIO }, /* Security LED (0=on) */ 106 { 1, MPP_GPIO }, /* Security LED (0=on) */
@@ -140,6 +217,8 @@ static void __init wrt350n_v2_init(void)
140 orion5x_setup_dev_boot_win(WRT350N_V2_NOR_BOOT_BASE, 217 orion5x_setup_dev_boot_win(WRT350N_V2_NOR_BOOT_BASE,
141 WRT350N_V2_NOR_BOOT_SIZE); 218 WRT350N_V2_NOR_BOOT_SIZE);
142 platform_device_register(&wrt350n_v2_nor_flash); 219 platform_device_register(&wrt350n_v2_nor_flash);
220 platform_device_register(&wrt350n_v2_leds);
221 platform_device_register(&wrt350n_v2_button_device);
143} 222}
144 223
145static int __init wrt350n_v2_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin) 224static int __init wrt350n_v2_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c
index 74446cf8ae69..da3156d8690b 100644
--- a/arch/arm/mach-pxa/corgi.c
+++ b/arch/arm/mach-pxa/corgi.c
@@ -457,6 +457,7 @@ static struct pxaficp_platform_data corgi_ficp_platform_data = {
457 * USB Device Controller 457 * USB Device Controller
458 */ 458 */
459static struct pxa2xx_udc_mach_info udc_info __initdata = { 459static struct pxa2xx_udc_mach_info udc_info __initdata = {
460 .gpio_vbus = -1,
460 /* no connect GPIO; corgi can't tell connection status */ 461 /* no connect GPIO; corgi can't tell connection status */
461 .gpio_pullup = CORGI_GPIO_USB_PULLUP, 462 .gpio_pullup = CORGI_GPIO_USB_PULLUP,
462}; 463};
diff --git a/arch/arm/mach-pxa/include/mach/mfp-pxa25x.h b/arch/arm/mach-pxa/include/mach/mfp-pxa25x.h
index b13dc0269a6d..9c787855cf24 100644
--- a/arch/arm/mach-pxa/include/mach/mfp-pxa25x.h
+++ b/arch/arm/mach-pxa/include/mach/mfp-pxa25x.h
@@ -169,7 +169,6 @@
169#define GPIO86_nSDCS2 MFP_CFG_OUT(GPIO86, AF0, DRIVE_HIGH) 169#define GPIO86_nSDCS2 MFP_CFG_OUT(GPIO86, AF0, DRIVE_HIGH)
170#define GPIO87_nSDCS3 MFP_CFG_OUT(GPIO87, AF0, DRIVE_HIGH) 170#define GPIO87_nSDCS3 MFP_CFG_OUT(GPIO87, AF0, DRIVE_HIGH)
171#define GPIO88_RDnWR MFP_CFG_OUT(GPIO88, AF0, DRIVE_HIGH) 171#define GPIO88_RDnWR MFP_CFG_OUT(GPIO88, AF0, DRIVE_HIGH)
172#define GPIO89_nACRESET MFP_CFG_OUT(GPIO89, AF0, DRIVE_HIGH)
173 172
174/* USB */ 173/* USB */
175#define GPIO9_USB_RCV MFP_CFG_IN(GPIO9, AF1) 174#define GPIO9_USB_RCV MFP_CFG_IN(GPIO9, AF1)
@@ -186,6 +185,9 @@
186#define GPIO30_ASSP_TXD MFP_CFG_OUT(GPIO30, AF3, DRIVE_LOW) 185#define GPIO30_ASSP_TXD MFP_CFG_OUT(GPIO30, AF3, DRIVE_LOW)
187#define GPIO31_ASSP_SFRM_IN MFP_CFG_IN(GPIO31, AF1) 186#define GPIO31_ASSP_SFRM_IN MFP_CFG_IN(GPIO31, AF1)
188#define GPIO31_ASSP_SFRM_OUT MFP_CFG_OUT(GPIO31, AF3, DRIVE_LOW) 187#define GPIO31_ASSP_SFRM_OUT MFP_CFG_OUT(GPIO31, AF3, DRIVE_LOW)
189#endif 188
189/* AC97 */
190#define GPIO89_AC97_nRESET MFP_CFG_OUT(GPIO89, AF0, DRIVE_HIGH)
191#endif /* CONFIG_CPU_PXA26x */
190 192
191#endif /* __ASM_ARCH_MFP_PXA25X_H */ 193#endif /* __ASM_ARCH_MFP_PXA25X_H */
diff --git a/arch/arm/mach-pxa/irq.c b/arch/arm/mach-pxa/irq.c
index 6112af431fa4..1beb40f692fc 100644
--- a/arch/arm/mach-pxa/irq.c
+++ b/arch/arm/mach-pxa/irq.c
@@ -164,8 +164,11 @@ static int pxa_irq_suspend(struct sys_device *dev, pm_message_t state)
164 saved_icmr[i] = _ICMR(irq); 164 saved_icmr[i] = _ICMR(irq);
165 _ICMR(irq) = 0; 165 _ICMR(irq) = 0;
166 } 166 }
167 for (i = 0; i < pxa_internal_irq_nr; i++) 167
168 saved_ipr[i] = IPR(i); 168 if (cpu_is_pxa27x() || cpu_is_pxa3xx()) {
169 for (i = 0; i < pxa_internal_irq_nr; i++)
170 saved_ipr[i] = IPR(i);
171 }
169 172
170 return 0; 173 return 0;
171} 174}
@@ -174,12 +177,15 @@ static int pxa_irq_resume(struct sys_device *dev)
174{ 177{
175 int i, irq = PXA_IRQ(0); 178 int i, irq = PXA_IRQ(0);
176 179
180 if (cpu_is_pxa27x() || cpu_is_pxa3xx()) {
181 for (i = 0; i < pxa_internal_irq_nr; i++)
182 IPR(i) = saved_ipr[i];
183 }
184
177 for (i = 0; irq < PXA_IRQ(pxa_internal_irq_nr); i++, irq += 32) { 185 for (i = 0; irq < PXA_IRQ(pxa_internal_irq_nr); i++, irq += 32) {
178 _ICMR(irq) = saved_icmr[i]; 186 _ICMR(irq) = saved_icmr[i];
179 _ICLR(irq) = 0; 187 _ICLR(irq) = 0;
180 } 188 }
181 for (i = 0; i < pxa_internal_irq_nr; i++)
182 IPR(i) = saved_ipr[i];
183 189
184 ICCR = 1; 190 ICCR = 1;
185 return 0; 191 return 0;
diff --git a/arch/arm/mach-s3c6410/mach-hmt.c b/arch/arm/mach-s3c6410/mach-hmt.c
index cdd4b5378552..7619456f2ae8 100644
--- a/arch/arm/mach-s3c6410/mach-hmt.c
+++ b/arch/arm/mach-s3c6410/mach-hmt.c
@@ -82,7 +82,7 @@ static int hmt_bl_init(struct device *dev)
82 return ret; 82 return ret;
83} 83}
84 84
85static int hmt_bl_notify(int brightness) 85static int hmt_bl_notify(struct device *dev, int brightness)
86{ 86{
87 /* 87 /*
88 * translate from CIELUV/CIELAB L*->brightness, E.G. from 88 * translate from CIELUV/CIELAB L*->brightness, E.G. from
diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c
index 1708da82da96..761ffede6a23 100644
--- a/arch/arm/mm/mmu.c
+++ b/arch/arm/mm/mmu.c
@@ -1067,4 +1067,6 @@ void setup_mm_for_reboot(char mode)
1067 pmd[1] = __pmd(pmdval + (1 << (PGDIR_SHIFT - 1))); 1067 pmd[1] = __pmd(pmdval + (1 << (PGDIR_SHIFT - 1)));
1068 flush_pmd_entry(pmd); 1068 flush_pmd_entry(pmd);
1069 } 1069 }
1070
1071 local_flush_tlb_all();
1070} 1072}
diff --git a/arch/arm/mm/proc-v6.S b/arch/arm/mm/proc-v6.S
index 395cc90c6613..7a5337ed7d68 100644
--- a/arch/arm/mm/proc-v6.S
+++ b/arch/arm/mm/proc-v6.S
@@ -59,8 +59,6 @@ ENTRY(cpu_v6_proc_fin)
59 * to what would be the reset vector. 59 * to what would be the reset vector.
60 * 60 *
61 * - loc - location to jump to for soft reset 61 * - loc - location to jump to for soft reset
62 *
63 * It is assumed that:
64 */ 62 */
65 .align 5 63 .align 5
66ENTRY(cpu_v6_reset) 64ENTRY(cpu_v6_reset)
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
index 3a285218fd15..7aaf88a3b7aa 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@ -45,7 +45,14 @@ ENTRY(cpu_v7_proc_init)
45ENDPROC(cpu_v7_proc_init) 45ENDPROC(cpu_v7_proc_init)
46 46
47ENTRY(cpu_v7_proc_fin) 47ENTRY(cpu_v7_proc_fin)
48 mov pc, lr 48 stmfd sp!, {lr}
49 cpsid if @ disable interrupts
50 bl v7_flush_kern_cache_all
51 mrc p15, 0, r0, c1, c0, 0 @ ctrl register
52 bic r0, r0, #0x1000 @ ...i............
53 bic r0, r0, #0x0006 @ .............ca.
54 mcr p15, 0, r0, c1, c0, 0 @ disable caches
55 ldmfd sp!, {pc}
49ENDPROC(cpu_v7_proc_fin) 56ENDPROC(cpu_v7_proc_fin)
50 57
51/* 58/*
@@ -56,8 +63,6 @@ ENDPROC(cpu_v7_proc_fin)
56 * to what would be the reset vector. 63 * to what would be the reset vector.
57 * 64 *
58 * - loc - location to jump to for soft reset 65 * - loc - location to jump to for soft reset
59 *
60 * It is assumed that:
61 */ 66 */
62 .align 5 67 .align 5
63ENTRY(cpu_v7_reset) 68ENTRY(cpu_v7_reset)
diff --git a/arch/arm/plat-mxc/include/mach/uncompress.h b/arch/arm/plat-mxc/include/mach/uncompress.h
index 4d5d395ad63b..d49384cb1e97 100644
--- a/arch/arm/plat-mxc/include/mach/uncompress.h
+++ b/arch/arm/plat-mxc/include/mach/uncompress.h
@@ -60,7 +60,9 @@ static void putc(int ch)
60 UART(TXR) = ch; 60 UART(TXR) = ch;
61} 61}
62 62
63#define flush() do { } while (0) 63static inline void flush(void)
64{
65}
64 66
65#define MX1_UART1_BASE_ADDR 0x00206000 67#define MX1_UART1_BASE_ADDR 0x00206000
66#define MX25_UART1_BASE_ADDR 0x43f90000 68#define MX25_UART1_BASE_ADDR 0x43f90000
diff --git a/arch/arm/plat-omap/common.c b/arch/arm/plat-omap/common.c
index bf1eaf3a27d4..dddc0273bc8b 100644
--- a/arch/arm/plat-omap/common.c
+++ b/arch/arm/plat-omap/common.c
@@ -172,6 +172,32 @@ unsigned long long sched_clock(void)
172 clocksource_32k.mult, clocksource_32k.shift); 172 clocksource_32k.mult, clocksource_32k.shift);
173} 173}
174 174
175/**
176 * read_persistent_clock - Return time from a persistent clock.
177 *
178 * Reads the time from a source which isn't disabled during PM, the
179 * 32k sync timer. Convert the cycles elapsed since last read into
180 * nsecs and adds to a monotonically increasing timespec.
181 */
182static struct timespec persistent_ts;
183static cycles_t cycles, last_cycles;
184void read_persistent_clock(struct timespec *ts)
185{
186 unsigned long long nsecs;
187 cycles_t delta;
188 struct timespec *tsp = &persistent_ts;
189
190 last_cycles = cycles;
191 cycles = clocksource_32k.read(&clocksource_32k);
192 delta = cycles - last_cycles;
193
194 nsecs = clocksource_cyc2ns(delta,
195 clocksource_32k.mult, clocksource_32k.shift);
196
197 timespec_add_ns(tsp, nsecs);
198 *ts = *tsp;
199}
200
175static int __init omap_init_clocksource_32k(void) 201static int __init omap_init_clocksource_32k(void)
176{ 202{
177 static char err[] __initdata = KERN_ERR 203 static char err[] __initdata = KERN_ERR
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c
index 09d82b3c66ce..728c64204184 100644
--- a/arch/arm/plat-omap/dma.c
+++ b/arch/arm/plat-omap/dma.c
@@ -1183,7 +1183,7 @@ void omap_dma_unlink_lch(int lch_head, int lch_queue)
1183 } 1183 }
1184 1184
1185 if ((dma_chan[lch_head].flags & OMAP_DMA_ACTIVE) || 1185 if ((dma_chan[lch_head].flags & OMAP_DMA_ACTIVE) ||
1186 (dma_chan[lch_head].flags & OMAP_DMA_ACTIVE)) { 1186 (dma_chan[lch_queue].flags & OMAP_DMA_ACTIVE)) {
1187 printk(KERN_ERR "omap_dma: You need to stop the DMA channels " 1187 printk(KERN_ERR "omap_dma: You need to stop the DMA channels "
1188 "before unlinking\n"); 1188 "before unlinking\n");
1189 dump_stack(); 1189 dump_stack();
diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
index 64f407ee0f4e..08ccf8922520 100644
--- a/arch/arm/plat-omap/dmtimer.c
+++ b/arch/arm/plat-omap/dmtimer.c
@@ -551,6 +551,19 @@ void omap_dm_timer_stop(struct omap_dm_timer *timer)
551 if (l & OMAP_TIMER_CTRL_ST) { 551 if (l & OMAP_TIMER_CTRL_ST) {
552 l &= ~0x1; 552 l &= ~0x1;
553 omap_dm_timer_write_reg(timer, OMAP_TIMER_CTRL_REG, l); 553 omap_dm_timer_write_reg(timer, OMAP_TIMER_CTRL_REG, l);
554#if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3) || \
555 defined(CONFIG_ARCH_OMAP4)
556 /* Readback to make sure write has completed */
557 omap_dm_timer_read_reg(timer, OMAP_TIMER_CTRL_REG);
558 /*
559 * Wait for functional clock period x 3.5 to make sure that
560 * timer is stopped
561 */
562 udelay(3500000 / clk_get_rate(timer->fclk) + 1);
563 /* Ack possibly pending interrupt */
564 omap_dm_timer_write_reg(timer, OMAP_TIMER_STAT_REG,
565 OMAP_TIMER_INT_OVERFLOW);
566#endif
554 } 567 }
555} 568}
556EXPORT_SYMBOL_GPL(omap_dm_timer_stop); 569EXPORT_SYMBOL_GPL(omap_dm_timer_stop);
diff --git a/arch/arm/plat-omap/include/plat/cpu.h b/arch/arm/plat-omap/include/plat/cpu.h
index 9a028bdebb06..a162f585b1e3 100644
--- a/arch/arm/plat-omap/include/plat/cpu.h
+++ b/arch/arm/plat-omap/include/plat/cpu.h
@@ -434,6 +434,7 @@ IS_OMAP_TYPE(3517, 0x3517)
434#define OMAP3430_REV_ES2_1 0x34302034 434#define OMAP3430_REV_ES2_1 0x34302034
435#define OMAP3430_REV_ES3_0 0x34303034 435#define OMAP3430_REV_ES3_0 0x34303034
436#define OMAP3430_REV_ES3_1 0x34304034 436#define OMAP3430_REV_ES3_1 0x34304034
437#define OMAP3430_REV_ES3_1_2 0x34305034
437 438
438#define OMAP3630_REV_ES1_0 0x36300034 439#define OMAP3630_REV_ES1_0 0x36300034
439 440
diff --git a/arch/arm/plat-omap/include/plat/irqs.h b/arch/arm/plat-omap/include/plat/irqs.h
index 97d6c50c3dcb..c0ab7c80f72e 100644
--- a/arch/arm/plat-omap/include/plat/irqs.h
+++ b/arch/arm/plat-omap/include/plat/irqs.h
@@ -499,6 +499,9 @@ extern void omap_init_irq(void);
499extern int omap_irq_pending(void); 499extern int omap_irq_pending(void);
500void omap_intc_save_context(void); 500void omap_intc_save_context(void);
501void omap_intc_restore_context(void); 501void omap_intc_restore_context(void);
502void omap3_intc_suspend(void);
503void omap3_intc_prepare_idle(void);
504void omap3_intc_resume_idle(void);
502#endif 505#endif
503 506
504#include <mach/hardware.h> 507#include <mach/hardware.h>
diff --git a/arch/arm/plat-omap/include/plat/omap_hwmod.h b/arch/arm/plat-omap/include/plat/omap_hwmod.h
index 007935a921ea..33933256a226 100644
--- a/arch/arm/plat-omap/include/plat/omap_hwmod.h
+++ b/arch/arm/plat-omap/include/plat/omap_hwmod.h
@@ -227,6 +227,7 @@ struct omap_hwmod_ocp_if {
227#define SYSC_HAS_SIDLEMODE (1 << 5) 227#define SYSC_HAS_SIDLEMODE (1 << 5)
228#define SYSC_HAS_MIDLEMODE (1 << 6) 228#define SYSC_HAS_MIDLEMODE (1 << 6)
229#define SYSS_MISSING (1 << 7) 229#define SYSS_MISSING (1 << 7)
230#define SYSC_NO_CACHE (1 << 8) /* XXX SW flag, belongs elsewhere */
230 231
231/* omap_hwmod_sysconfig.clockact flags */ 232/* omap_hwmod_sysconfig.clockact flags */
232#define CLOCKACT_TEST_BOTH 0x0 233#define CLOCKACT_TEST_BOTH 0x0
diff --git a/arch/arm/plat-orion/pcie.c b/arch/arm/plat-orion/pcie.c
index d41d41d78ad9..54c84a492a0f 100644
--- a/arch/arm/plat-orion/pcie.c
+++ b/arch/arm/plat-orion/pcie.c
@@ -133,6 +133,12 @@ static void __init orion_pcie_setup_wins(void __iomem *base,
133 } 133 }
134 134
135 /* 135 /*
136 * Round up 'size' to the nearest power of two.
137 */
138 if ((size & (size - 1)) != 0)
139 size = 1 << fls(size);
140
141 /*
136 * Setup BAR[1] to all DRAM banks. 142 * Setup BAR[1] to all DRAM banks.
137 */ 143 */
138 writel(dram->cs[0].base, base + PCIE_BAR_LO_OFF(1)); 144 writel(dram->cs[0].base, base + PCIE_BAR_LO_OFF(1));
diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types
index c3a74ce24ef6..5a79fc6ee818 100644
--- a/arch/arm/tools/mach-types
+++ b/arch/arm/tools/mach-types
@@ -12,7 +12,7 @@
12# 12#
13# http://www.arm.linux.org.uk/developer/machines/?action=new 13# http://www.arm.linux.org.uk/developer/machines/?action=new
14# 14#
15# Last update: Wed Dec 16 20:06:34 2009 15# Last update: Thu Jan 28 22:15:54 2010
16# 16#
17# machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number 17# machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number
18# 18#
@@ -2536,6 +2536,7 @@ davinci_dm6467tevm MACH_DAVINCI_DM6467TEVM DAVINCI_DM6467TEVM 2548
2536c3ax03 MACH_C3AX03 C3AX03 2549 2536c3ax03 MACH_C3AX03 C3AX03 2549
2537mxt_td60 MACH_MXT_TD60 MXT_TD60 2550 2537mxt_td60 MACH_MXT_TD60 MXT_TD60 2550
2538esyx MACH_ESYX ESYX 2551 2538esyx MACH_ESYX ESYX 2551
2539dove_db2 MACH_DOVE_DB2 DOVE_DB2 2552
2539bulldog MACH_BULLDOG BULLDOG 2553 2540bulldog MACH_BULLDOG BULLDOG 2553
2540derell_me2000 MACH_DERELL_ME2000 DERELL_ME2000 2554 2541derell_me2000 MACH_DERELL_ME2000 DERELL_ME2000 2554
2541bcmring_base MACH_BCMRING_BASE BCMRING_BASE 2555 2542bcmring_base MACH_BCMRING_BASE BCMRING_BASE 2555
@@ -2555,6 +2556,7 @@ iseo MACH_ISEO ISEO 2568
2555cezanne MACH_CEZANNE CEZANNE 2569 2556cezanne MACH_CEZANNE CEZANNE 2569
2556lucca MACH_LUCCA LUCCA 2570 2557lucca MACH_LUCCA LUCCA 2570
2557supersmart MACH_SUPERSMART SUPERSMART 2571 2558supersmart MACH_SUPERSMART SUPERSMART 2571
2559arm11_board MACH_CS_MISANO CS_MISANO 2572
2558magnolia2 MACH_MAGNOLIA2 MAGNOLIA2 2573 2560magnolia2 MACH_MAGNOLIA2 MAGNOLIA2 2573
2559emxx MACH_EMXX EMXX 2574 2561emxx MACH_EMXX EMXX 2574
2560outlaw MACH_OUTLAW OUTLAW 2575 2562outlaw MACH_OUTLAW OUTLAW 2575
@@ -2578,3 +2580,59 @@ glacier MACH_GLACIER GLACIER 2592
2578phrazer_bulldog MACH_PHRAZER_BULLDOG PHRAZER_BULLDOG 2593 2580phrazer_bulldog MACH_PHRAZER_BULLDOG PHRAZER_BULLDOG 2593
2579omap3_bulldog MACH_OMAP3_BULLDOG OMAP3_BULLDOG 2594 2581omap3_bulldog MACH_OMAP3_BULLDOG OMAP3_BULLDOG 2594
2580pca101 MACH_PCA101 PCA101 2595 2582pca101 MACH_PCA101 PCA101 2595
2583buzzc MACH_BUZZC BUZZC 2596
2584sasie2 MACH_SASIE2 SASIE2 2597
2585davinci_cio MACH_DAVINCI_CIO DAVINCI_CIO 2598
2586smartmeter_dl MACH_SMARTMETER_DL SMARTMETER_DL 2599
2587wzl6410 MACH_WZL6410 WZL6410 2600
2588wzl6410m MACH_WZL6410M WZL6410M 2601
2589wzl6410f MACH_WZL6410F WZL6410F 2602
2590wzl6410i MACH_WZL6410I WZL6410I 2603
2591spacecom1 MACH_SPACECOM1 SPACECOM1 2604
2592pingu920 MACH_PINGU920 PINGU920 2605
2593bravoc MACH_BRAVOC BRAVOC 2606
2594cybo2440 MACH_CYBO2440 CYBO2440 2607
2595vdssw MACH_VDSSW VDSSW 2608
2596romulus MACH_ROMULUS ROMULUS 2609
2597omap_magic MACH_OMAP_MAGIC OMAP_MAGIC 2610
2598eltd100 MACH_ELTD100 ELTD100 2611
2599capc7117 MACH_CAPC7117 CAPC7117 2612
2600swan MACH_SWAN SWAN 2613
2601veu MACH_VEU VEU 2614
2602rm2 MACH_RM2 RM2 2615
2603tt2100 MACH_TT2100 TT2100 2616
2604venice MACH_VENICE VENICE 2617
2605pc7323 MACH_PC7323 PC7323 2618
2606masp MACH_MASP MASP 2619
2607fujitsu_tvstbsoc0 MACH_FUJITSU_TVSTBSOC FUJITSU_TVSTBSOC 2620
2608fujitsu_tvstbsoc1 MACH_FUJITSU_TVSTBSOC1 FUJITSU_TVSTBSOC1 2621
2609lexikon MACH_LEXIKON LEXIKON 2622
2610mini2440v2 MACH_MINI2440V2 MINI2440V2 2623
2611icontrol MACH_ICONTROL ICONTROL 2624
2612sheevad MACH_SHEEVAD SHEEVAD 2625
2613qsd8x50a_st1_1 MACH_QSD8X50A_ST1_1 QSD8X50A_ST1_1 2626
2614qsd8x50a_st1_5 MACH_QSD8X50A_ST1_5 QSD8X50A_ST1_5 2627
2615bee MACH_BEE BEE 2628
2616mx23evk MACH_MX23EVK MX23EVK 2629
2617ap4evb MACH_AP4EVB AP4EVB 2630
2618stockholm MACH_STOCKHOLM STOCKHOLM 2631
2619lpc_h3131 MACH_LPC_H3131 LPC_H3131 2632
2620stingray MACH_STINGRAY STINGRAY 2633
2621kraken MACH_KRAKEN KRAKEN 2634
2622gw2388 MACH_GW2388 GW2388 2635
2623jadecpu MACH_JADECPU JADECPU 2636
2624carlisle MACH_CARLISLE CARLISLE 2637
2625lux_sf9 MACH_LUX_SFT9 LUX_SFT9 2638
2626nemid_tb MACH_NEMID_TB NEMID_TB 2639
2627terrier MACH_TERRIER TERRIER 2640
2628turbot MACH_TURBOT TURBOT 2641
2629sanddab MACH_SANDDAB SANDDAB 2642
2630mx35_cicada MACH_MX35_CICADA MX35_CICADA 2643
2631ghi2703d MACH_GHI2703D GHI2703D 2644
2632lux_sfx9 MACH_LUX_SFX9 LUX_SFX9 2645
2633lux_sf9g MACH_LUX_SF9G LUX_SF9G 2646
2634lux_edk9 MACH_LUX_EDK9 LUX_EDK9 2647
2635hw90240 MACH_HW90240 HW90240 2648
2636dm365_leopard MACH_DM365_LEOPARD DM365_LEOPARD 2649
2637mityomapl138 MACH_MITYOMAPL138 MITYOMAPL138 2650
2638scat110 MACH_SCAT110 SCAT110 2651
diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
index fd53e500be67..cd5837e298b2 100644
--- a/arch/microblaze/Kconfig
+++ b/arch/microblaze/Kconfig
@@ -90,7 +90,7 @@ source "arch/microblaze/platform/Kconfig.platform"
90 90
91menu "Processor type and features" 91menu "Processor type and features"
92 92
93source kernel/time/Kconfig 93source "kernel/time/Kconfig"
94 94
95source "kernel/Kconfig.preempt" 95source "kernel/Kconfig.preempt"
96 96
diff --git a/arch/microblaze/include/asm/ptrace.h b/arch/microblaze/include/asm/ptrace.h
index a917dc517736..d74dbfb92c04 100644
--- a/arch/microblaze/include/asm/ptrace.h
+++ b/arch/microblaze/include/asm/ptrace.h
@@ -54,6 +54,7 @@ struct pt_regs {
54 int pt_mode; 54 int pt_mode;
55}; 55};
56 56
57#ifdef __KERNEL__
57#define kernel_mode(regs) ((regs)->pt_mode) 58#define kernel_mode(regs) ((regs)->pt_mode)
58#define user_mode(regs) (!kernel_mode(regs)) 59#define user_mode(regs) (!kernel_mode(regs))
59 60
@@ -62,6 +63,19 @@ struct pt_regs {
62 63
63void show_regs(struct pt_regs *); 64void show_regs(struct pt_regs *);
64 65
66#else /* __KERNEL__ */
67
68/* pt_regs offsets used by gdbserver etc in ptrace syscalls */
69#define PT_GPR(n) ((n) * sizeof(microblaze_reg_t))
70#define PT_PC (32 * sizeof(microblaze_reg_t))
71#define PT_MSR (33 * sizeof(microblaze_reg_t))
72#define PT_EAR (34 * sizeof(microblaze_reg_t))
73#define PT_ESR (35 * sizeof(microblaze_reg_t))
74#define PT_FSR (36 * sizeof(microblaze_reg_t))
75#define PT_KERNEL_MODE (37 * sizeof(microblaze_reg_t))
76
77#endif /* __KERNEL */
78
65#endif /* __ASSEMBLY__ */ 79#endif /* __ASSEMBLY__ */
66 80
67#endif /* _ASM_MICROBLAZE_PTRACE_H */ 81#endif /* _ASM_MICROBLAZE_PTRACE_H */
diff --git a/arch/microblaze/include/asm/unistd.h b/arch/microblaze/include/asm/unistd.h
index cb05a07e55e9..2b67e92a773c 100644
--- a/arch/microblaze/include/asm/unistd.h
+++ b/arch/microblaze/include/asm/unistd.h
@@ -377,13 +377,14 @@
377#define __NR_shutdown 359 /* new */ 377#define __NR_shutdown 359 /* new */
378#define __NR_sendmsg 360 /* new */ 378#define __NR_sendmsg 360 /* new */
379#define __NR_recvmsg 361 /* new */ 379#define __NR_recvmsg 361 /* new */
380#define __NR_accept04 362 /* new */ 380#define __NR_accept4 362 /* new */
381#define __NR_preadv 363 /* new */ 381#define __NR_preadv 363 /* new */
382#define __NR_pwritev 364 /* new */ 382#define __NR_pwritev 364 /* new */
383#define __NR_rt_tgsigqueueinfo 365 /* new */ 383#define __NR_rt_tgsigqueueinfo 365 /* new */
384#define __NR_perf_event_open 366 /* new */ 384#define __NR_perf_event_open 366 /* new */
385#define __NR_recvmmsg 367 /* new */
385 386
386#define __NR_syscalls 367 387#define __NR_syscalls 368
387 388
388#ifdef __KERNEL__ 389#ifdef __KERNEL__
389#ifndef __ASSEMBLY__ 390#ifndef __ASSEMBLY__
diff --git a/arch/microblaze/kernel/prom_parse.c b/arch/microblaze/kernel/prom_parse.c
index ae0352ecd5a9..bf7e6c27e318 100644
--- a/arch/microblaze/kernel/prom_parse.c
+++ b/arch/microblaze/kernel/prom_parse.c
@@ -256,7 +256,7 @@ int of_irq_map_pci(struct pci_dev *pdev, struct of_irq *out_irq)
256 if (ppdev == NULL) { 256 if (ppdev == NULL) {
257 struct pci_controller *host; 257 struct pci_controller *host;
258 host = pci_bus_to_host(pdev->bus); 258 host = pci_bus_to_host(pdev->bus);
259 ppnode = host ? host->arch_data : NULL; 259 ppnode = host ? host->dn : NULL;
260 /* No node for host bridge ? give up */ 260 /* No node for host bridge ? give up */
261 if (ppnode == NULL) 261 if (ppnode == NULL)
262 return -EINVAL; 262 return -EINVAL;
diff --git a/arch/microblaze/kernel/syscall_table.S b/arch/microblaze/kernel/syscall_table.S
index 4088be7d4e29..03376dc814c9 100644
--- a/arch/microblaze/kernel/syscall_table.S
+++ b/arch/microblaze/kernel/syscall_table.S
@@ -366,7 +366,7 @@ ENTRY(sys_call_table)
366 .long sys_shutdown 366 .long sys_shutdown
367 .long sys_sendmsg /* 360 */ 367 .long sys_sendmsg /* 360 */
368 .long sys_recvmsg 368 .long sys_recvmsg
369 .long sys_ni_syscall 369 .long sys_accept4
370 .long sys_ni_syscall 370 .long sys_ni_syscall
371 .long sys_ni_syscall 371 .long sys_ni_syscall
372 .long sys_rt_tgsigqueueinfo /* 365 */ 372 .long sys_rt_tgsigqueueinfo /* 365 */
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 9541171f1220..8b5d174685f0 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -1311,6 +1311,7 @@ config SYS_SUPPORTS_ZBOOT
1311 select HAVE_KERNEL_GZIP 1311 select HAVE_KERNEL_GZIP
1312 select HAVE_KERNEL_BZIP2 1312 select HAVE_KERNEL_BZIP2
1313 select HAVE_KERNEL_LZMA 1313 select HAVE_KERNEL_LZMA
1314 select HAVE_KERNEL_LZO
1314 1315
1315config SYS_SUPPORTS_ZBOOT_UART16550 1316config SYS_SUPPORTS_ZBOOT_UART16550
1316 bool 1317 bool
diff --git a/arch/mips/boot/compressed/Makefile b/arch/mips/boot/compressed/Makefile
index 671d3448fad4..9df903d714d7 100644
--- a/arch/mips/boot/compressed/Makefile
+++ b/arch/mips/boot/compressed/Makefile
@@ -14,8 +14,11 @@
14 14
15# compressed kernel load addr: VMLINUZ_LOAD_ADDRESS > VMLINUX_LOAD_ADDRESS + VMLINUX_SIZE 15# compressed kernel load addr: VMLINUZ_LOAD_ADDRESS > VMLINUX_LOAD_ADDRESS + VMLINUX_SIZE
16VMLINUX_SIZE := $(shell wc -c $(objtree)/$(KBUILD_IMAGE) 2>/dev/null | cut -d' ' -f1) 16VMLINUX_SIZE := $(shell wc -c $(objtree)/$(KBUILD_IMAGE) 2>/dev/null | cut -d' ' -f1)
17VMLINUX_SIZE := $(shell [ -n "$(VMLINUX_SIZE)" ] && echo $$(($(VMLINUX_SIZE) + (65536 - $(VMLINUX_SIZE) % 65536)))) 17VMLINUX_SIZE := $(shell [ -n "$(VMLINUX_SIZE)" ] && echo -n $$(($(VMLINUX_SIZE) + (65536 - $(VMLINUX_SIZE) % 65536))))
18VMLINUZ_LOAD_ADDRESS := 0x$(shell [ -n "$(VMLINUX_SIZE)" ] && printf %x $$(($(VMLINUX_LOAD_ADDRESS) + $(VMLINUX_SIZE)))) 18# VMLINUZ_LOAD_ADDRESS = concat "high32 of VMLINUX_LOAD_ADDRESS" and "(low32 of VMLINUX_LOAD_ADDRESS) + VMLINUX_SIZE"
19HIGH32 := $(shell A=$(VMLINUX_LOAD_ADDRESS); [ $${\#A} -gt 10 ] && expr substr "$(VMLINUX_LOAD_ADDRESS)" 3 $$(($${\#A} - 10)))
20LOW32 := $(shell [ -n "$(HIGH32)" ] && A=11 || A=3; expr substr "$(VMLINUX_LOAD_ADDRESS)" $${A} 8)
21VMLINUZ_LOAD_ADDRESS := 0x$(shell [ -n "$(VMLINUX_SIZE)" -a -n "$(LOW32)" ] && printf "$(HIGH32)%08x" $$(($(VMLINUX_SIZE) + 0x$(LOW32))))
19 22
20# set the default size of the mallocing area for decompressing 23# set the default size of the mallocing area for decompressing
21BOOT_HEAP_SIZE := 0x400000 24BOOT_HEAP_SIZE := 0x400000
@@ -41,9 +44,11 @@ $(obj)/vmlinux.bin: $(KBUILD_IMAGE)
41suffix_$(CONFIG_KERNEL_GZIP) = gz 44suffix_$(CONFIG_KERNEL_GZIP) = gz
42suffix_$(CONFIG_KERNEL_BZIP2) = bz2 45suffix_$(CONFIG_KERNEL_BZIP2) = bz2
43suffix_$(CONFIG_KERNEL_LZMA) = lzma 46suffix_$(CONFIG_KERNEL_LZMA) = lzma
47suffix_$(CONFIG_KERNEL_LZO) = lzo
44tool_$(CONFIG_KERNEL_GZIP) = gzip 48tool_$(CONFIG_KERNEL_GZIP) = gzip
45tool_$(CONFIG_KERNEL_BZIP2) = bzip2 49tool_$(CONFIG_KERNEL_BZIP2) = bzip2
46tool_$(CONFIG_KERNEL_LZMA) = lzma 50tool_$(CONFIG_KERNEL_LZMA) = lzma
51tool_$(CONFIG_KERNEL_LZO) = lzo
47$(obj)/vmlinux.$(suffix_y): $(obj)/vmlinux.bin 52$(obj)/vmlinux.$(suffix_y): $(obj)/vmlinux.bin
48 $(call if_changed,$(tool_y)) 53 $(call if_changed,$(tool_y))
49 54
diff --git a/arch/mips/boot/compressed/decompress.c b/arch/mips/boot/compressed/decompress.c
index e48fd72898a8..55d02b3a6712 100644
--- a/arch/mips/boot/compressed/decompress.c
+++ b/arch/mips/boot/compressed/decompress.c
@@ -77,6 +77,10 @@ void *memset(void *s, int c, size_t n)
77#include "../../../../lib/decompress_unlzma.c" 77#include "../../../../lib/decompress_unlzma.c"
78#endif 78#endif
79 79
80#ifdef CONFIG_KERNEL_LZO
81#include "../../../../lib/decompress_unlzo.c"
82#endif
83
80void decompress_kernel(unsigned long boot_heap_start) 84void decompress_kernel(unsigned long boot_heap_start)
81{ 85{
82 int zimage_size; 86 int zimage_size;
diff --git a/arch/mips/include/asm/irq.h b/arch/mips/include/asm/irq.h
index 06960364c96b..dea4aed6478f 100644
--- a/arch/mips/include/asm/irq.h
+++ b/arch/mips/include/asm/irq.h
@@ -135,6 +135,7 @@ extern void free_irqno(unsigned int irq);
135#define CP0_LEGACY_COMPARE_IRQ 7 135#define CP0_LEGACY_COMPARE_IRQ 7
136 136
137extern int cp0_compare_irq; 137extern int cp0_compare_irq;
138extern int cp0_compare_irq_shift;
138extern int cp0_perfcount_irq; 139extern int cp0_perfcount_irq;
139 140
140#endif /* _ASM_IRQ_H */ 141#endif /* _ASM_IRQ_H */
diff --git a/arch/mips/include/asm/mach-powertv/asic_reg_map.h b/arch/mips/include/asm/mach-powertv/asic_reg_map.h
new file mode 100644
index 000000000000..6f26cb09828e
--- /dev/null
+++ b/arch/mips/include/asm/mach-powertv/asic_reg_map.h
@@ -0,0 +1,90 @@
1/*
2 * asic_reg_map.h
3 *
4 * A macro-enclosed list of the elements for the register_map structure for
5 * use in defining and manipulating the structure.
6 *
7 * Copyright (C) 2009 Cisco Systems, Inc.
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 */
23
24REGISTER_MAP_ELEMENT(eic_slow0_strt_add)
25REGISTER_MAP_ELEMENT(eic_cfg_bits)
26REGISTER_MAP_ELEMENT(eic_ready_status)
27REGISTER_MAP_ELEMENT(chipver3)
28REGISTER_MAP_ELEMENT(chipver2)
29REGISTER_MAP_ELEMENT(chipver1)
30REGISTER_MAP_ELEMENT(chipver0)
31REGISTER_MAP_ELEMENT(uart1_intstat)
32REGISTER_MAP_ELEMENT(uart1_inten)
33REGISTER_MAP_ELEMENT(uart1_config1)
34REGISTER_MAP_ELEMENT(uart1_config2)
35REGISTER_MAP_ELEMENT(uart1_divisorhi)
36REGISTER_MAP_ELEMENT(uart1_divisorlo)
37REGISTER_MAP_ELEMENT(uart1_data)
38REGISTER_MAP_ELEMENT(uart1_status)
39REGISTER_MAP_ELEMENT(int_stat_3)
40REGISTER_MAP_ELEMENT(int_stat_2)
41REGISTER_MAP_ELEMENT(int_stat_1)
42REGISTER_MAP_ELEMENT(int_stat_0)
43REGISTER_MAP_ELEMENT(int_config)
44REGISTER_MAP_ELEMENT(int_int_scan)
45REGISTER_MAP_ELEMENT(ien_int_3)
46REGISTER_MAP_ELEMENT(ien_int_2)
47REGISTER_MAP_ELEMENT(ien_int_1)
48REGISTER_MAP_ELEMENT(ien_int_0)
49REGISTER_MAP_ELEMENT(int_level_3_3)
50REGISTER_MAP_ELEMENT(int_level_3_2)
51REGISTER_MAP_ELEMENT(int_level_3_1)
52REGISTER_MAP_ELEMENT(int_level_3_0)
53REGISTER_MAP_ELEMENT(int_level_2_3)
54REGISTER_MAP_ELEMENT(int_level_2_2)
55REGISTER_MAP_ELEMENT(int_level_2_1)
56REGISTER_MAP_ELEMENT(int_level_2_0)
57REGISTER_MAP_ELEMENT(int_level_1_3)
58REGISTER_MAP_ELEMENT(int_level_1_2)
59REGISTER_MAP_ELEMENT(int_level_1_1)
60REGISTER_MAP_ELEMENT(int_level_1_0)
61REGISTER_MAP_ELEMENT(int_level_0_3)
62REGISTER_MAP_ELEMENT(int_level_0_2)
63REGISTER_MAP_ELEMENT(int_level_0_1)
64REGISTER_MAP_ELEMENT(int_level_0_0)
65REGISTER_MAP_ELEMENT(int_docsis_en)
66REGISTER_MAP_ELEMENT(mips_pll_setup)
67REGISTER_MAP_ELEMENT(usb_fs)
68REGISTER_MAP_ELEMENT(test_bus)
69REGISTER_MAP_ELEMENT(crt_spare)
70REGISTER_MAP_ELEMENT(usb2_ohci_int_mask)
71REGISTER_MAP_ELEMENT(usb2_strap)
72REGISTER_MAP_ELEMENT(ehci_hcapbase)
73REGISTER_MAP_ELEMENT(ohci_hc_revision)
74REGISTER_MAP_ELEMENT(bcm1_bs_lmi_steer)
75REGISTER_MAP_ELEMENT(usb2_control)
76REGISTER_MAP_ELEMENT(usb2_stbus_obc)
77REGISTER_MAP_ELEMENT(usb2_stbus_mess_size)
78REGISTER_MAP_ELEMENT(usb2_stbus_chunk_size)
79REGISTER_MAP_ELEMENT(pcie_regs)
80REGISTER_MAP_ELEMENT(tim_ch)
81REGISTER_MAP_ELEMENT(tim_cl)
82REGISTER_MAP_ELEMENT(gpio_dout)
83REGISTER_MAP_ELEMENT(gpio_din)
84REGISTER_MAP_ELEMENT(gpio_dir)
85REGISTER_MAP_ELEMENT(watchdog)
86REGISTER_MAP_ELEMENT(front_panel)
87REGISTER_MAP_ELEMENT(misc_clk_ctl1)
88REGISTER_MAP_ELEMENT(misc_clk_ctl2)
89REGISTER_MAP_ELEMENT(crt_ext_ctl)
90REGISTER_MAP_ELEMENT(register_maps)
diff --git a/arch/mips/include/asm/mach-powertv/asic_regs.h b/arch/mips/include/asm/mach-powertv/asic_regs.h
index 9a65c93782f9..1e11236c6dbc 100644
--- a/arch/mips/include/asm/mach-powertv/asic_regs.h
+++ b/arch/mips/include/asm/mach-powertv/asic_regs.h
@@ -35,11 +35,12 @@ enum asic_type {
35#define CRONUS_11 0x0B4C1C21 35#define CRONUS_11 0x0B4C1C21
36#define CRONUSLITE_10 0x0B4C1C40 36#define CRONUSLITE_10 0x0B4C1C40
37 37
38#define NAND_FLASH_BASE 0x03000000 38#define NAND_FLASH_BASE 0x03000000
39#define ZEUS_IO_BASE 0x09000000
40#define CALLIOPE_IO_BASE 0x08000000 39#define CALLIOPE_IO_BASE 0x08000000
41#define CRONUS_IO_BASE 0x09000000 40#define CRONUS_IO_BASE 0x09000000
42#define ASIC_IO_SIZE 0x01000000 41#define ZEUS_IO_BASE 0x09000000
42
43#define ASIC_IO_SIZE 0x01000000
43 44
44/* Definitions for backward compatibility */ 45/* Definitions for backward compatibility */
45#define UART1_INTSTAT uart1_intstat 46#define UART1_INTSTAT uart1_intstat
@@ -52,96 +53,62 @@ enum asic_type {
52#define UART1_STATUS uart1_status 53#define UART1_STATUS uart1_status
53 54
54/* ASIC register enumeration */ 55/* ASIC register enumeration */
56union register_map_entry {
57 unsigned long phys;
58 u32 *virt;
59};
60
61#define REGISTER_MAP_ELEMENT(x) union register_map_entry x;
55struct register_map { 62struct register_map {
56 u32 eic_slow0_strt_add; 63#include <asm/mach-powertv/asic_reg_map.h>
57 u32 eic_cfg_bits;
58 u32 eic_ready_status;
59
60 u32 chipver3;
61 u32 chipver2;
62 u32 chipver1;
63 u32 chipver0;
64
65 u32 uart1_intstat;
66 u32 uart1_inten;
67 u32 uart1_config1;
68 u32 uart1_config2;
69 u32 uart1_divisorhi;
70 u32 uart1_divisorlo;
71 u32 uart1_data;
72 u32 uart1_status;
73
74 u32 int_stat_3;
75 u32 int_stat_2;
76 u32 int_stat_1;
77 u32 int_stat_0;
78 u32 int_config;
79 u32 int_int_scan;
80 u32 ien_int_3;
81 u32 ien_int_2;
82 u32 ien_int_1;
83 u32 ien_int_0;
84 u32 int_level_3_3;
85 u32 int_level_3_2;
86 u32 int_level_3_1;
87 u32 int_level_3_0;
88 u32 int_level_2_3;
89 u32 int_level_2_2;
90 u32 int_level_2_1;
91 u32 int_level_2_0;
92 u32 int_level_1_3;
93 u32 int_level_1_2;
94 u32 int_level_1_1;
95 u32 int_level_1_0;
96 u32 int_level_0_3;
97 u32 int_level_0_2;
98 u32 int_level_0_1;
99 u32 int_level_0_0;
100 u32 int_docsis_en;
101
102 u32 mips_pll_setup;
103 u32 usb_fs;
104 u32 test_bus;
105 u32 crt_spare;
106 u32 usb2_ohci_int_mask;
107 u32 usb2_strap;
108 u32 ehci_hcapbase;
109 u32 ohci_hc_revision;
110 u32 bcm1_bs_lmi_steer;
111 u32 usb2_control;
112 u32 usb2_stbus_obc;
113 u32 usb2_stbus_mess_size;
114 u32 usb2_stbus_chunk_size;
115
116 u32 pcie_regs;
117 u32 tim_ch;
118 u32 tim_cl;
119 u32 gpio_dout;
120 u32 gpio_din;
121 u32 gpio_dir;
122 u32 watchdog;
123 u32 front_panel;
124
125 u32 register_maps;
126}; 64};
65#undef REGISTER_MAP_ELEMENT
66
67/**
68 * register_map_offset_phys - add an offset to the physical address
69 * @map: Pointer to the &struct register_map
70 * @offset: Value to add
71 *
72 * Only adds the base to non-zero physical addresses
73 */
74static inline void register_map_offset_phys(struct register_map *map,
75 unsigned long offset)
76{
77#define REGISTER_MAP_ELEMENT(x) do { \
78 if (map->x.phys != 0) \
79 map->x.phys += offset; \
80 } while (false);
81
82#include <asm/mach-powertv/asic_reg_map.h>
83#undef REGISTER_MAP_ELEMENT
84}
85
86/**
87 * register_map_virtualize - Convert &register_map to virtual addresses
88 * @map: Pointer to &register_map to virtualize
89 */
90static inline void register_map_virtualize(struct register_map *map)
91{
92#define REGISTER_MAP_ELEMENT(x) do { \
93 map->x.virt = (!map->x.phys) ? NULL : \
94 UNCAC_ADDR(phys_to_virt(map->x.phys)); \
95 } while (false);
96
97#include <asm/mach-powertv/asic_reg_map.h>
98#undef REGISTER_MAP_ELEMENT
99}
127 100
128extern enum asic_type asic; 101extern struct register_map _asic_register_map;
129extern const struct register_map *register_map;
130extern unsigned long asic_phy_base; /* Physical address of ASIC */
131extern unsigned long asic_base; /* Virtual address of ASIC */
132 102
133/* 103/*
134 * Macros to interface to registers through their ioremapped address 104 * Macros to interface to registers through their ioremapped address
135 * asic_reg_offset Returns the offset of a given register from the start
136 * of the ASIC address space
137 * asic_reg_phys_addr Returns the physical address of the given register 105 * asic_reg_phys_addr Returns the physical address of the given register
138 * asic_reg_addr Returns the iomapped virtual address of the given 106 * asic_reg_addr Returns the iomapped virtual address of the given
139 * register. 107 * register.
140 */ 108 */
141#define asic_reg_offset(x) (register_map->x) 109#define asic_reg_addr(x) (_asic_register_map.x.virt)
142#define asic_reg_phys_addr(x) (asic_phy_base + asic_reg_offset(x)) 110#define asic_reg_phys_addr(x) (virt_to_phys((void *) CAC_ADDR( \
143#define asic_reg_addr(x) \ 111 (unsigned long) asic_reg_addr(x))))
144 ((unsigned int *) (asic_base + asic_reg_offset(x)))
145 112
146/* 113/*
147 * The asic_reg macro is gone. It should be replaced by either asic_read or 114 * The asic_reg macro is gone. It should be replaced by either asic_read or
diff --git a/arch/mips/include/asm/mipsregs.h b/arch/mips/include/asm/mipsregs.h
index a581d60cbcc2..f4ab3139d737 100644
--- a/arch/mips/include/asm/mipsregs.h
+++ b/arch/mips/include/asm/mipsregs.h
@@ -406,6 +406,16 @@
406#define ST0_XX 0x80000000 /* MIPS IV naming */ 406#define ST0_XX 0x80000000 /* MIPS IV naming */
407 407
408/* 408/*
409 * Bitfields and bit numbers in the coprocessor 0 IntCtl register. (MIPSR2)
410 *
411 * Refer to your MIPS R4xx0 manual, chapter 5 for explanation.
412 */
413#define INTCTLB_IPPCI 26
414#define INTCTLF_IPPCI (_ULCAST_(7) << INTCTLB_IPPCI)
415#define INTCTLB_IPTI 29
416#define INTCTLF_IPTI (_ULCAST_(7) << INTCTLB_IPTI)
417
418/*
409 * Bitfields and bit numbers in the coprocessor 0 cause register. 419 * Bitfields and bit numbers in the coprocessor 0 cause register.
410 * 420 *
411 * Refer to your MIPS R4xx0 manual, chapter 5 for explanation. 421 * Refer to your MIPS R4xx0 manual, chapter 5 for explanation.
@@ -434,6 +444,8 @@
434#define CAUSEF_IV (_ULCAST_(1) << 23) 444#define CAUSEF_IV (_ULCAST_(1) << 23)
435#define CAUSEB_CE 28 445#define CAUSEB_CE 28
436#define CAUSEF_CE (_ULCAST_(3) << 28) 446#define CAUSEF_CE (_ULCAST_(3) << 28)
447#define CAUSEB_TI 30
448#define CAUSEF_TI (_ULCAST_(1) << 30)
437#define CAUSEB_BD 31 449#define CAUSEB_BD 31
438#define CAUSEF_BD (_ULCAST_(1) << 31) 450#define CAUSEF_BD (_ULCAST_(1) << 31)
439 451
diff --git a/arch/mips/kernel/cevt-r4k.c b/arch/mips/kernel/cevt-r4k.c
index b469ad05d520..0b2450ceb13f 100644
--- a/arch/mips/kernel/cevt-r4k.c
+++ b/arch/mips/kernel/cevt-r4k.c
@@ -97,7 +97,7 @@ void mips_event_handler(struct clock_event_device *dev)
97 */ 97 */
98static int c0_compare_int_pending(void) 98static int c0_compare_int_pending(void)
99{ 99{
100 return (read_c0_cause() >> cp0_compare_irq) & 0x100; 100 return (read_c0_cause() >> cp0_compare_irq_shift) & (1ul << CAUSEB_IP);
101} 101}
102 102
103/* 103/*
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
index 308e43460864..338dfe8ed002 100644
--- a/arch/mips/kernel/traps.c
+++ b/arch/mips/kernel/traps.c
@@ -1403,6 +1403,7 @@ extern void flush_tlb_handlers(void);
1403 * Timer interrupt 1403 * Timer interrupt
1404 */ 1404 */
1405int cp0_compare_irq; 1405int cp0_compare_irq;
1406int cp0_compare_irq_shift;
1406 1407
1407/* 1408/*
1408 * Performance counter IRQ or -1 if shared with timer 1409 * Performance counter IRQ or -1 if shared with timer
@@ -1493,8 +1494,9 @@ void __cpuinit per_cpu_trap_init(void)
1493 * o read IntCtl.IPPCI to determine the performance counter interrupt 1494 * o read IntCtl.IPPCI to determine the performance counter interrupt
1494 */ 1495 */
1495 if (cpu_has_mips_r2) { 1496 if (cpu_has_mips_r2) {
1496 cp0_compare_irq = (read_c0_intctl() >> 29) & 7; 1497 cp0_compare_irq_shift = CAUSEB_TI - CAUSEB_IP;
1497 cp0_perfcount_irq = (read_c0_intctl() >> 26) & 7; 1498 cp0_compare_irq = (read_c0_intctl() >> INTCTLB_IPTI) & 7;
1499 cp0_perfcount_irq = (read_c0_intctl() >> INTCTLB_IPPCI) & 7;
1498 if (cp0_perfcount_irq == cp0_compare_irq) 1500 if (cp0_perfcount_irq == cp0_compare_irq)
1499 cp0_perfcount_irq = -1; 1501 cp0_perfcount_irq = -1;
1500 } else { 1502 } else {
diff --git a/arch/mips/powertv/asic/asic-calliope.c b/arch/mips/powertv/asic/asic-calliope.c
index 03d3884c6270..1ae6623444b2 100644
--- a/arch/mips/powertv/asic/asic-calliope.c
+++ b/arch/mips/powertv/asic/asic-calliope.c
@@ -23,76 +23,79 @@
23 * Description: Defines the platform resources for the SA settop. 23 * Description: Defines the platform resources for the SA settop.
24 */ 24 */
25 25
26#include <linux/init.h>
26#include <asm/mach-powertv/asic.h> 27#include <asm/mach-powertv/asic.h>
27 28
28const struct register_map calliope_register_map = { 29#define CALLIOPE_ADDR(x) (CALLIOPE_IO_BASE + (x))
29 .eic_slow0_strt_add = 0x800000,
30 .eic_cfg_bits = 0x800038,
31 .eic_ready_status = 0x80004c,
32 30
33 .chipver3 = 0xA00800, 31const struct register_map calliope_register_map __initdata = {
34 .chipver2 = 0xA00804, 32 .eic_slow0_strt_add = {.phys = CALLIOPE_ADDR(0x800000)},
35 .chipver1 = 0xA00808, 33 .eic_cfg_bits = {.phys = CALLIOPE_ADDR(0x800038)},
36 .chipver0 = 0xA0080c, 34 .eic_ready_status = {.phys = CALLIOPE_ADDR(0x80004c)},
35
36 .chipver3 = {.phys = CALLIOPE_ADDR(0xA00800)},
37 .chipver2 = {.phys = CALLIOPE_ADDR(0xA00804)},
38 .chipver1 = {.phys = CALLIOPE_ADDR(0xA00808)},
39 .chipver0 = {.phys = CALLIOPE_ADDR(0xA0080c)},
37 40
38 /* The registers of IRBlaster */ 41 /* The registers of IRBlaster */
39 .uart1_intstat = 0xA01800, 42 .uart1_intstat = {.phys = CALLIOPE_ADDR(0xA01800)},
40 .uart1_inten = 0xA01804, 43 .uart1_inten = {.phys = CALLIOPE_ADDR(0xA01804)},
41 .uart1_config1 = 0xA01808, 44 .uart1_config1 = {.phys = CALLIOPE_ADDR(0xA01808)},
42 .uart1_config2 = 0xA0180C, 45 .uart1_config2 = {.phys = CALLIOPE_ADDR(0xA0180C)},
43 .uart1_divisorhi = 0xA01810, 46 .uart1_divisorhi = {.phys = CALLIOPE_ADDR(0xA01810)},
44 .uart1_divisorlo = 0xA01814, 47 .uart1_divisorlo = {.phys = CALLIOPE_ADDR(0xA01814)},
45 .uart1_data = 0xA01818, 48 .uart1_data = {.phys = CALLIOPE_ADDR(0xA01818)},
46 .uart1_status = 0xA0181C, 49 .uart1_status = {.phys = CALLIOPE_ADDR(0xA0181C)},
47 50
48 .int_stat_3 = 0xA02800, 51 .int_stat_3 = {.phys = CALLIOPE_ADDR(0xA02800)},
49 .int_stat_2 = 0xA02804, 52 .int_stat_2 = {.phys = CALLIOPE_ADDR(0xA02804)},
50 .int_stat_1 = 0xA02808, 53 .int_stat_1 = {.phys = CALLIOPE_ADDR(0xA02808)},
51 .int_stat_0 = 0xA0280c, 54 .int_stat_0 = {.phys = CALLIOPE_ADDR(0xA0280c)},
52 .int_config = 0xA02810, 55 .int_config = {.phys = CALLIOPE_ADDR(0xA02810)},
53 .int_int_scan = 0xA02818, 56 .int_int_scan = {.phys = CALLIOPE_ADDR(0xA02818)},
54 .ien_int_3 = 0xA02830, 57 .ien_int_3 = {.phys = CALLIOPE_ADDR(0xA02830)},
55 .ien_int_2 = 0xA02834, 58 .ien_int_2 = {.phys = CALLIOPE_ADDR(0xA02834)},
56 .ien_int_1 = 0xA02838, 59 .ien_int_1 = {.phys = CALLIOPE_ADDR(0xA02838)},
57 .ien_int_0 = 0xA0283c, 60 .ien_int_0 = {.phys = CALLIOPE_ADDR(0xA0283c)},
58 .int_level_3_3 = 0xA02880, 61 .int_level_3_3 = {.phys = CALLIOPE_ADDR(0xA02880)},
59 .int_level_3_2 = 0xA02884, 62 .int_level_3_2 = {.phys = CALLIOPE_ADDR(0xA02884)},
60 .int_level_3_1 = 0xA02888, 63 .int_level_3_1 = {.phys = CALLIOPE_ADDR(0xA02888)},
61 .int_level_3_0 = 0xA0288c, 64 .int_level_3_0 = {.phys = CALLIOPE_ADDR(0xA0288c)},
62 .int_level_2_3 = 0xA02890, 65 .int_level_2_3 = {.phys = CALLIOPE_ADDR(0xA02890)},
63 .int_level_2_2 = 0xA02894, 66 .int_level_2_2 = {.phys = CALLIOPE_ADDR(0xA02894)},
64 .int_level_2_1 = 0xA02898, 67 .int_level_2_1 = {.phys = CALLIOPE_ADDR(0xA02898)},
65 .int_level_2_0 = 0xA0289c, 68 .int_level_2_0 = {.phys = CALLIOPE_ADDR(0xA0289c)},
66 .int_level_1_3 = 0xA028a0, 69 .int_level_1_3 = {.phys = CALLIOPE_ADDR(0xA028a0)},
67 .int_level_1_2 = 0xA028a4, 70 .int_level_1_2 = {.phys = CALLIOPE_ADDR(0xA028a4)},
68 .int_level_1_1 = 0xA028a8, 71 .int_level_1_1 = {.phys = CALLIOPE_ADDR(0xA028a8)},
69 .int_level_1_0 = 0xA028ac, 72 .int_level_1_0 = {.phys = CALLIOPE_ADDR(0xA028ac)},
70 .int_level_0_3 = 0xA028b0, 73 .int_level_0_3 = {.phys = CALLIOPE_ADDR(0xA028b0)},
71 .int_level_0_2 = 0xA028b4, 74 .int_level_0_2 = {.phys = CALLIOPE_ADDR(0xA028b4)},
72 .int_level_0_1 = 0xA028b8, 75 .int_level_0_1 = {.phys = CALLIOPE_ADDR(0xA028b8)},
73 .int_level_0_0 = 0xA028bc, 76 .int_level_0_0 = {.phys = CALLIOPE_ADDR(0xA028bc)},
74 .int_docsis_en = 0xA028F4, 77 .int_docsis_en = {.phys = CALLIOPE_ADDR(0xA028F4)},
75 78
76 .mips_pll_setup = 0x980000, 79 .mips_pll_setup = {.phys = CALLIOPE_ADDR(0x980000)},
77 .usb_fs = 0x980030, /* -default 72800028- */ 80 .usb_fs = {.phys = CALLIOPE_ADDR(0x980030)},
78 .test_bus = 0x9800CC, 81 .test_bus = {.phys = CALLIOPE_ADDR(0x9800CC)},
79 .crt_spare = 0x9800d4, 82 .crt_spare = {.phys = CALLIOPE_ADDR(0x9800d4)},
80 .usb2_ohci_int_mask = 0x9A000c, 83 .usb2_ohci_int_mask = {.phys = CALLIOPE_ADDR(0x9A000c)},
81 .usb2_strap = 0x9A0014, 84 .usb2_strap = {.phys = CALLIOPE_ADDR(0x9A0014)},
82 .ehci_hcapbase = 0x9BFE00, 85 .ehci_hcapbase = {.phys = CALLIOPE_ADDR(0x9BFE00)},
83 .ohci_hc_revision = 0x9BFC00, 86 .ohci_hc_revision = {.phys = CALLIOPE_ADDR(0x9BFC00)},
84 .bcm1_bs_lmi_steer = 0x9E0004, 87 .bcm1_bs_lmi_steer = {.phys = CALLIOPE_ADDR(0x9E0004)},
85 .usb2_control = 0x9E0054, 88 .usb2_control = {.phys = CALLIOPE_ADDR(0x9E0054)},
86 .usb2_stbus_obc = 0x9BFF00, 89 .usb2_stbus_obc = {.phys = CALLIOPE_ADDR(0x9BFF00)},
87 .usb2_stbus_mess_size = 0x9BFF04, 90 .usb2_stbus_mess_size = {.phys = CALLIOPE_ADDR(0x9BFF04)},
88 .usb2_stbus_chunk_size = 0x9BFF08, 91 .usb2_stbus_chunk_size = {.phys = CALLIOPE_ADDR(0x9BFF08)},
89 92
90 .pcie_regs = 0x000000, /* -doesn't exist- */ 93 .pcie_regs = {.phys = 0x000000}, /* -doesn't exist- */
91 .tim_ch = 0xA02C10, 94 .tim_ch = {.phys = CALLIOPE_ADDR(0xA02C10)},
92 .tim_cl = 0xA02C14, 95 .tim_cl = {.phys = CALLIOPE_ADDR(0xA02C14)},
93 .gpio_dout = 0xA02c20, 96 .gpio_dout = {.phys = CALLIOPE_ADDR(0xA02c20)},
94 .gpio_din = 0xA02c24, 97 .gpio_din = {.phys = CALLIOPE_ADDR(0xA02c24)},
95 .gpio_dir = 0xA02c2C, 98 .gpio_dir = {.phys = CALLIOPE_ADDR(0xA02c2C)},
96 .watchdog = 0xA02c30, 99 .watchdog = {.phys = CALLIOPE_ADDR(0xA02c30)},
97 .front_panel = 0x000000, /* -not used- */ 100 .front_panel = {.phys = 0x000000}, /* -not used- */
98}; 101};
diff --git a/arch/mips/powertv/asic/asic-cronus.c b/arch/mips/powertv/asic/asic-cronus.c
index 5f4589c9f83d..5bb64bfb508b 100644
--- a/arch/mips/powertv/asic/asic-cronus.c
+++ b/arch/mips/powertv/asic/asic-cronus.c
@@ -23,76 +23,79 @@
23 * Description: Defines the platform resources for the SA settop. 23 * Description: Defines the platform resources for the SA settop.
24 */ 24 */
25 25
26#include <linux/init.h>
26#include <asm/mach-powertv/asic.h> 27#include <asm/mach-powertv/asic.h>
27 28
28const struct register_map cronus_register_map = { 29#define CRONUS_ADDR(x) (CRONUS_IO_BASE + (x))
29 .eic_slow0_strt_add = 0x000000,
30 .eic_cfg_bits = 0x000038,
31 .eic_ready_status = 0x00004C,
32 30
33 .chipver3 = 0x2A0800, 31const struct register_map cronus_register_map __initdata = {
34 .chipver2 = 0x2A0804, 32 .eic_slow0_strt_add = {.phys = CRONUS_ADDR(0x000000)},
35 .chipver1 = 0x2A0808, 33 .eic_cfg_bits = {.phys = CRONUS_ADDR(0x000038)},
36 .chipver0 = 0x2A080C, 34 .eic_ready_status = {.phys = CRONUS_ADDR(0x00004C)},
35
36 .chipver3 = {.phys = CRONUS_ADDR(0x2A0800)},
37 .chipver2 = {.phys = CRONUS_ADDR(0x2A0804)},
38 .chipver1 = {.phys = CRONUS_ADDR(0x2A0808)},
39 .chipver0 = {.phys = CRONUS_ADDR(0x2A080C)},
37 40
38 /* The registers of IRBlaster */ 41 /* The registers of IRBlaster */
39 .uart1_intstat = 0x2A1800, 42 .uart1_intstat = {.phys = CRONUS_ADDR(0x2A1800)},
40 .uart1_inten = 0x2A1804, 43 .uart1_inten = {.phys = CRONUS_ADDR(0x2A1804)},
41 .uart1_config1 = 0x2A1808, 44 .uart1_config1 = {.phys = CRONUS_ADDR(0x2A1808)},
42 .uart1_config2 = 0x2A180C, 45 .uart1_config2 = {.phys = CRONUS_ADDR(0x2A180C)},
43 .uart1_divisorhi = 0x2A1810, 46 .uart1_divisorhi = {.phys = CRONUS_ADDR(0x2A1810)},
44 .uart1_divisorlo = 0x2A1814, 47 .uart1_divisorlo = {.phys = CRONUS_ADDR(0x2A1814)},
45 .uart1_data = 0x2A1818, 48 .uart1_data = {.phys = CRONUS_ADDR(0x2A1818)},
46 .uart1_status = 0x2A181C, 49 .uart1_status = {.phys = CRONUS_ADDR(0x2A181C)},
47 50
48 .int_stat_3 = 0x2A2800, 51 .int_stat_3 = {.phys = CRONUS_ADDR(0x2A2800)},
49 .int_stat_2 = 0x2A2804, 52 .int_stat_2 = {.phys = CRONUS_ADDR(0x2A2804)},
50 .int_stat_1 = 0x2A2808, 53 .int_stat_1 = {.phys = CRONUS_ADDR(0x2A2808)},
51 .int_stat_0 = 0x2A280C, 54 .int_stat_0 = {.phys = CRONUS_ADDR(0x2A280C)},
52 .int_config = 0x2A2810, 55 .int_config = {.phys = CRONUS_ADDR(0x2A2810)},
53 .int_int_scan = 0x2A2818, 56 .int_int_scan = {.phys = CRONUS_ADDR(0x2A2818)},
54 .ien_int_3 = 0x2A2830, 57 .ien_int_3 = {.phys = CRONUS_ADDR(0x2A2830)},
55 .ien_int_2 = 0x2A2834, 58 .ien_int_2 = {.phys = CRONUS_ADDR(0x2A2834)},
56 .ien_int_1 = 0x2A2838, 59 .ien_int_1 = {.phys = CRONUS_ADDR(0x2A2838)},
57 .ien_int_0 = 0x2A283C, 60 .ien_int_0 = {.phys = CRONUS_ADDR(0x2A283C)},
58 .int_level_3_3 = 0x2A2880, 61 .int_level_3_3 = {.phys = CRONUS_ADDR(0x2A2880)},
59 .int_level_3_2 = 0x2A2884, 62 .int_level_3_2 = {.phys = CRONUS_ADDR(0x2A2884)},
60 .int_level_3_1 = 0x2A2888, 63 .int_level_3_1 = {.phys = CRONUS_ADDR(0x2A2888)},
61 .int_level_3_0 = 0x2A288C, 64 .int_level_3_0 = {.phys = CRONUS_ADDR(0x2A288C)},
62 .int_level_2_3 = 0x2A2890, 65 .int_level_2_3 = {.phys = CRONUS_ADDR(0x2A2890)},
63 .int_level_2_2 = 0x2A2894, 66 .int_level_2_2 = {.phys = CRONUS_ADDR(0x2A2894)},
64 .int_level_2_1 = 0x2A2898, 67 .int_level_2_1 = {.phys = CRONUS_ADDR(0x2A2898)},
65 .int_level_2_0 = 0x2A289C, 68 .int_level_2_0 = {.phys = CRONUS_ADDR(0x2A289C)},
66 .int_level_1_3 = 0x2A28A0, 69 .int_level_1_3 = {.phys = CRONUS_ADDR(0x2A28A0)},
67 .int_level_1_2 = 0x2A28A4, 70 .int_level_1_2 = {.phys = CRONUS_ADDR(0x2A28A4)},
68 .int_level_1_1 = 0x2A28A8, 71 .int_level_1_1 = {.phys = CRONUS_ADDR(0x2A28A8)},
69 .int_level_1_0 = 0x2A28AC, 72 .int_level_1_0 = {.phys = CRONUS_ADDR(0x2A28AC)},
70 .int_level_0_3 = 0x2A28B0, 73 .int_level_0_3 = {.phys = CRONUS_ADDR(0x2A28B0)},
71 .int_level_0_2 = 0x2A28B4, 74 .int_level_0_2 = {.phys = CRONUS_ADDR(0x2A28B4)},
72 .int_level_0_1 = 0x2A28B8, 75 .int_level_0_1 = {.phys = CRONUS_ADDR(0x2A28B8)},
73 .int_level_0_0 = 0x2A28BC, 76 .int_level_0_0 = {.phys = CRONUS_ADDR(0x2A28BC)},
74 .int_docsis_en = 0x2A28F4, 77 .int_docsis_en = {.phys = CRONUS_ADDR(0x2A28F4)},
75 78
76 .mips_pll_setup = 0x1C0000, 79 .mips_pll_setup = {.phys = CRONUS_ADDR(0x1C0000)},
77 .usb_fs = 0x1C0018, 80 .usb_fs = {.phys = CRONUS_ADDR(0x1C0018)},
78 .test_bus = 0x1C00CC, 81 .test_bus = {.phys = CRONUS_ADDR(0x1C00CC)},
79 .crt_spare = 0x1c00d4, 82 .crt_spare = {.phys = CRONUS_ADDR(0x1c00d4)},
80 .usb2_ohci_int_mask = 0x20000C, 83 .usb2_ohci_int_mask = {.phys = CRONUS_ADDR(0x20000C)},
81 .usb2_strap = 0x200014, 84 .usb2_strap = {.phys = CRONUS_ADDR(0x200014)},
82 .ehci_hcapbase = 0x21FE00, 85 .ehci_hcapbase = {.phys = CRONUS_ADDR(0x21FE00)},
83 .ohci_hc_revision = 0x1E0000, 86 .ohci_hc_revision = {.phys = CRONUS_ADDR(0x1E0000)},
84 .bcm1_bs_lmi_steer = 0x2E0008, 87 .bcm1_bs_lmi_steer = {.phys = CRONUS_ADDR(0x2E0008)},
85 .usb2_control = 0x2E004C, 88 .usb2_control = {.phys = CRONUS_ADDR(0x2E004C)},
86 .usb2_stbus_obc = 0x21FF00, 89 .usb2_stbus_obc = {.phys = CRONUS_ADDR(0x21FF00)},
87 .usb2_stbus_mess_size = 0x21FF04, 90 .usb2_stbus_mess_size = {.phys = CRONUS_ADDR(0x21FF04)},
88 .usb2_stbus_chunk_size = 0x21FF08, 91 .usb2_stbus_chunk_size = {.phys = CRONUS_ADDR(0x21FF08)},
89 92
90 .pcie_regs = 0x220000, 93 .pcie_regs = {.phys = CRONUS_ADDR(0x220000)},
91 .tim_ch = 0x2A2C10, 94 .tim_ch = {.phys = CRONUS_ADDR(0x2A2C10)},
92 .tim_cl = 0x2A2C14, 95 .tim_cl = {.phys = CRONUS_ADDR(0x2A2C14)},
93 .gpio_dout = 0x2A2C20, 96 .gpio_dout = {.phys = CRONUS_ADDR(0x2A2C20)},
94 .gpio_din = 0x2A2C24, 97 .gpio_din = {.phys = CRONUS_ADDR(0x2A2C24)},
95 .gpio_dir = 0x2A2C2C, 98 .gpio_dir = {.phys = CRONUS_ADDR(0x2A2C2C)},
96 .watchdog = 0x2A2C30, 99 .watchdog = {.phys = CRONUS_ADDR(0x2A2C30)},
97 .front_panel = 0x2A3800, 100 .front_panel = {.phys = CRONUS_ADDR(0x2A3800)},
98}; 101};
diff --git a/arch/mips/powertv/asic/asic-zeus.c b/arch/mips/powertv/asic/asic-zeus.c
index 1469daab920e..095cbe10ebb9 100644
--- a/arch/mips/powertv/asic/asic-zeus.c
+++ b/arch/mips/powertv/asic/asic-zeus.c
@@ -23,76 +23,79 @@
23 * Description: Defines the platform resources for the SA settop. 23 * Description: Defines the platform resources for the SA settop.
24 */ 24 */
25 25
26#include <linux/init.h>
26#include <asm/mach-powertv/asic.h> 27#include <asm/mach-powertv/asic.h>
27 28
28const struct register_map zeus_register_map = { 29#define ZEUS_ADDR(x) (ZEUS_IO_BASE + (x))
29 .eic_slow0_strt_add = 0x000000,
30 .eic_cfg_bits = 0x000038,
31 .eic_ready_status = 0x00004c,
32 30
33 .chipver3 = 0x280800, 31const struct register_map zeus_register_map __initdata = {
34 .chipver2 = 0x280804, 32 .eic_slow0_strt_add = {.phys = ZEUS_ADDR(0x000000)},
35 .chipver1 = 0x280808, 33 .eic_cfg_bits = {.phys = ZEUS_ADDR(0x000038)},
36 .chipver0 = 0x28080c, 34 .eic_ready_status = {.phys = ZEUS_ADDR(0x00004c)},
35
36 .chipver3 = {.phys = ZEUS_ADDR(0x280800)},
37 .chipver2 = {.phys = ZEUS_ADDR(0x280804)},
38 .chipver1 = {.phys = ZEUS_ADDR(0x280808)},
39 .chipver0 = {.phys = ZEUS_ADDR(0x28080c)},
37 40
38 /* The registers of IRBlaster */ 41 /* The registers of IRBlaster */
39 .uart1_intstat = 0x281800, 42 .uart1_intstat = {.phys = ZEUS_ADDR(0x281800)},
40 .uart1_inten = 0x281804, 43 .uart1_inten = {.phys = ZEUS_ADDR(0x281804)},
41 .uart1_config1 = 0x281808, 44 .uart1_config1 = {.phys = ZEUS_ADDR(0x281808)},
42 .uart1_config2 = 0x28180C, 45 .uart1_config2 = {.phys = ZEUS_ADDR(0x28180C)},
43 .uart1_divisorhi = 0x281810, 46 .uart1_divisorhi = {.phys = ZEUS_ADDR(0x281810)},
44 .uart1_divisorlo = 0x281814, 47 .uart1_divisorlo = {.phys = ZEUS_ADDR(0x281814)},
45 .uart1_data = 0x281818, 48 .uart1_data = {.phys = ZEUS_ADDR(0x281818)},
46 .uart1_status = 0x28181C, 49 .uart1_status = {.phys = ZEUS_ADDR(0x28181C)},
47 50
48 .int_stat_3 = 0x282800, 51 .int_stat_3 = {.phys = ZEUS_ADDR(0x282800)},
49 .int_stat_2 = 0x282804, 52 .int_stat_2 = {.phys = ZEUS_ADDR(0x282804)},
50 .int_stat_1 = 0x282808, 53 .int_stat_1 = {.phys = ZEUS_ADDR(0x282808)},
51 .int_stat_0 = 0x28280c, 54 .int_stat_0 = {.phys = ZEUS_ADDR(0x28280c)},
52 .int_config = 0x282810, 55 .int_config = {.phys = ZEUS_ADDR(0x282810)},
53 .int_int_scan = 0x282818, 56 .int_int_scan = {.phys = ZEUS_ADDR(0x282818)},
54 .ien_int_3 = 0x282830, 57 .ien_int_3 = {.phys = ZEUS_ADDR(0x282830)},
55 .ien_int_2 = 0x282834, 58 .ien_int_2 = {.phys = ZEUS_ADDR(0x282834)},
56 .ien_int_1 = 0x282838, 59 .ien_int_1 = {.phys = ZEUS_ADDR(0x282838)},
57 .ien_int_0 = 0x28283c, 60 .ien_int_0 = {.phys = ZEUS_ADDR(0x28283c)},
58 .int_level_3_3 = 0x282880, 61 .int_level_3_3 = {.phys = ZEUS_ADDR(0x282880)},
59 .int_level_3_2 = 0x282884, 62 .int_level_3_2 = {.phys = ZEUS_ADDR(0x282884)},
60 .int_level_3_1 = 0x282888, 63 .int_level_3_1 = {.phys = ZEUS_ADDR(0x282888)},
61 .int_level_3_0 = 0x28288c, 64 .int_level_3_0 = {.phys = ZEUS_ADDR(0x28288c)},
62 .int_level_2_3 = 0x282890, 65 .int_level_2_3 = {.phys = ZEUS_ADDR(0x282890)},
63 .int_level_2_2 = 0x282894, 66 .int_level_2_2 = {.phys = ZEUS_ADDR(0x282894)},
64 .int_level_2_1 = 0x282898, 67 .int_level_2_1 = {.phys = ZEUS_ADDR(0x282898)},
65 .int_level_2_0 = 0x28289c, 68 .int_level_2_0 = {.phys = ZEUS_ADDR(0x28289c)},
66 .int_level_1_3 = 0x2828a0, 69 .int_level_1_3 = {.phys = ZEUS_ADDR(0x2828a0)},
67 .int_level_1_2 = 0x2828a4, 70 .int_level_1_2 = {.phys = ZEUS_ADDR(0x2828a4)},
68 .int_level_1_1 = 0x2828a8, 71 .int_level_1_1 = {.phys = ZEUS_ADDR(0x2828a8)},
69 .int_level_1_0 = 0x2828ac, 72 .int_level_1_0 = {.phys = ZEUS_ADDR(0x2828ac)},
70 .int_level_0_3 = 0x2828b0, 73 .int_level_0_3 = {.phys = ZEUS_ADDR(0x2828b0)},
71 .int_level_0_2 = 0x2828b4, 74 .int_level_0_2 = {.phys = ZEUS_ADDR(0x2828b4)},
72 .int_level_0_1 = 0x2828b8, 75 .int_level_0_1 = {.phys = ZEUS_ADDR(0x2828b8)},
73 .int_level_0_0 = 0x2828bc, 76 .int_level_0_0 = {.phys = ZEUS_ADDR(0x2828bc)},
74 .int_docsis_en = 0x2828F4, 77 .int_docsis_en = {.phys = ZEUS_ADDR(0x2828F4)},
75 78
76 .mips_pll_setup = 0x1a0000, 79 .mips_pll_setup = {.phys = ZEUS_ADDR(0x1a0000)},
77 .usb_fs = 0x1a0018, 80 .usb_fs = {.phys = ZEUS_ADDR(0x1a0018)},
78 .test_bus = 0x1a0238, 81 .test_bus = {.phys = ZEUS_ADDR(0x1a0238)},
79 .crt_spare = 0x1a0090, 82 .crt_spare = {.phys = ZEUS_ADDR(0x1a0090)},
80 .usb2_ohci_int_mask = 0x1e000c, 83 .usb2_ohci_int_mask = {.phys = ZEUS_ADDR(0x1e000c)},
81 .usb2_strap = 0x1e0014, 84 .usb2_strap = {.phys = ZEUS_ADDR(0x1e0014)},
82 .ehci_hcapbase = 0x1FFE00, 85 .ehci_hcapbase = {.phys = ZEUS_ADDR(0x1FFE00)},
83 .ohci_hc_revision = 0x1FFC00, 86 .ohci_hc_revision = {.phys = ZEUS_ADDR(0x1FFC00)},
84 .bcm1_bs_lmi_steer = 0x2C0008, 87 .bcm1_bs_lmi_steer = {.phys = ZEUS_ADDR(0x2C0008)},
85 .usb2_control = 0x2c01a0, 88 .usb2_control = {.phys = ZEUS_ADDR(0x2c01a0)},
86 .usb2_stbus_obc = 0x1FFF00, 89 .usb2_stbus_obc = {.phys = ZEUS_ADDR(0x1FFF00)},
87 .usb2_stbus_mess_size = 0x1FFF04, 90 .usb2_stbus_mess_size = {.phys = ZEUS_ADDR(0x1FFF04)},
88 .usb2_stbus_chunk_size = 0x1FFF08, 91 .usb2_stbus_chunk_size = {.phys = ZEUS_ADDR(0x1FFF08)},
89 92
90 .pcie_regs = 0x200000, 93 .pcie_regs = {.phys = ZEUS_ADDR(0x200000)},
91 .tim_ch = 0x282C10, 94 .tim_ch = {.phys = ZEUS_ADDR(0x282C10)},
92 .tim_cl = 0x282C14, 95 .tim_cl = {.phys = ZEUS_ADDR(0x282C14)},
93 .gpio_dout = 0x282c20, 96 .gpio_dout = {.phys = ZEUS_ADDR(0x282c20)},
94 .gpio_din = 0x282c24, 97 .gpio_din = {.phys = ZEUS_ADDR(0x282c24)},
95 .gpio_dir = 0x282c2C, 98 .gpio_dir = {.phys = ZEUS_ADDR(0x282c2C)},
96 .watchdog = 0x282c30, 99 .watchdog = {.phys = ZEUS_ADDR(0x282c30)},
97 .front_panel = 0x283800, 100 .front_panel = {.phys = ZEUS_ADDR(0x283800)},
98}; 101};
diff --git a/arch/mips/powertv/asic/asic_devices.c b/arch/mips/powertv/asic/asic_devices.c
index bae82880b6b5..6a882194e063 100644
--- a/arch/mips/powertv/asic/asic_devices.c
+++ b/arch/mips/powertv/asic/asic_devices.c
@@ -67,8 +67,8 @@ enum asic_type asic;
67 67
68unsigned int platform_features; 68unsigned int platform_features;
69unsigned int platform_family; 69unsigned int platform_family;
70const struct register_map *register_map; 70struct register_map _asic_register_map;
71EXPORT_SYMBOL(register_map); /* Exported for testing */ 71EXPORT_SYMBOL(_asic_register_map); /* Exported for testing */
72unsigned long asic_phy_base; 72unsigned long asic_phy_base;
73unsigned long asic_base; 73unsigned long asic_base;
74EXPORT_SYMBOL(asic_base); /* Exported for testing */ 74EXPORT_SYMBOL(asic_base); /* Exported for testing */
@@ -418,6 +418,15 @@ void platform_unconfigure_usb_ohci()
418{ 418{
419} 419}
420 420
421static void __init set_register_map(unsigned long phys_base,
422 const struct register_map *map)
423{
424 asic_phy_base = phys_base;
425 _asic_register_map = *map;
426 register_map_virtualize(&_asic_register_map);
427 asic_base = (unsigned long)ioremap_nocache(phys_base, ASIC_IO_SIZE);
428}
429
421/** 430/**
422 * configure_platform - configuration based on platform type. 431 * configure_platform - configuration based on platform type.
423 */ 432 */
@@ -431,10 +440,7 @@ void __init configure_platform(void)
431 case FAMILY_1500VZF: 440 case FAMILY_1500VZF:
432 platform_features = FFS_CAPABLE; 441 platform_features = FFS_CAPABLE;
433 asic = ASIC_CALLIOPE; 442 asic = ASIC_CALLIOPE;
434 asic_phy_base = CALLIOPE_IO_BASE; 443 set_register_map(CALLIOPE_IO_BASE, &calliope_register_map);
435 register_map = &calliope_register_map;
436 asic_base = (unsigned long)ioremap_nocache(asic_phy_base,
437 ASIC_IO_SIZE);
438 444
439 if (platform_family == FAMILY_1500VZE) { 445 if (platform_family == FAMILY_1500VZE) {
440 gp_resources = non_dvr_vze_calliope_resources; 446 gp_resources = non_dvr_vze_calliope_resources;
@@ -455,10 +461,7 @@ void __init configure_platform(void)
455 platform_features = FFS_CAPABLE | PCIE_CAPABLE | 461 platform_features = FFS_CAPABLE | PCIE_CAPABLE |
456 DISPLAY_CAPABLE; 462 DISPLAY_CAPABLE;
457 asic = ASIC_ZEUS; 463 asic = ASIC_ZEUS;
458 asic_phy_base = ZEUS_IO_BASE; 464 set_register_map(ZEUS_IO_BASE, &zeus_register_map);
459 register_map = &zeus_register_map;
460 asic_base = (unsigned long)ioremap_nocache(asic_phy_base,
461 ASIC_IO_SIZE);
462 gp_resources = non_dvr_zeus_resources; 465 gp_resources = non_dvr_zeus_resources;
463 466
464 pr_info("Platform: 4500 - ZEUS, NON_DVR_CAPABLE\n"); 467 pr_info("Platform: 4500 - ZEUS, NON_DVR_CAPABLE\n");
@@ -471,11 +474,6 @@ void __init configure_platform(void)
471 /* The settop has PCIE but it isn't used, so don't advertise 474 /* The settop has PCIE but it isn't used, so don't advertise
472 * it*/ 475 * it*/
473 platform_features = FFS_CAPABLE | DISPLAY_CAPABLE; 476 platform_features = FFS_CAPABLE | DISPLAY_CAPABLE;
474 asic_phy_base = CRONUS_IO_BASE; /* same as Cronus */
475 register_map = &cronus_register_map; /* same as Cronus */
476 asic_base = (unsigned long)ioremap_nocache(asic_phy_base,
477 ASIC_IO_SIZE);
478 gp_resources = non_dvr_cronuslite_resources;
479 477
480 /* ASIC version will determine if this is a real CronusLite or 478 /* ASIC version will determine if this is a real CronusLite or
481 * Castrati(Cronus) */ 479 * Castrati(Cronus) */
@@ -489,6 +487,9 @@ void __init configure_platform(void)
489 else 487 else
490 asic = ASIC_CRONUSLITE; 488 asic = ASIC_CRONUSLITE;
491 489
490 /* Cronus and Cronus Lite have the same register map */
491 set_register_map(CRONUS_IO_BASE, &cronus_register_map);
492 gp_resources = non_dvr_cronuslite_resources;
492 pr_info("Platform: 4600 - %s, NON_DVR_CAPABLE, " 493 pr_info("Platform: 4600 - %s, NON_DVR_CAPABLE, "
493 "chipversion=0x%08X\n", 494 "chipversion=0x%08X\n",
494 (asic == ASIC_CRONUS) ? "CRONUS" : "CRONUS LITE", 495 (asic == ASIC_CRONUS) ? "CRONUS" : "CRONUS LITE",
@@ -498,10 +499,7 @@ void __init configure_platform(void)
498 case FAMILY_4600VZA: 499 case FAMILY_4600VZA:
499 platform_features = FFS_CAPABLE | DISPLAY_CAPABLE; 500 platform_features = FFS_CAPABLE | DISPLAY_CAPABLE;
500 asic = ASIC_CRONUS; 501 asic = ASIC_CRONUS;
501 asic_phy_base = CRONUS_IO_BASE; 502 set_register_map(CRONUS_IO_BASE, &cronus_register_map);
502 register_map = &cronus_register_map;
503 asic_base = (unsigned long)ioremap_nocache(asic_phy_base,
504 ASIC_IO_SIZE);
505 gp_resources = non_dvr_cronus_resources; 503 gp_resources = non_dvr_cronus_resources;
506 504
507 pr_info("Platform: Vz Class A - CRONUS, NON_DVR_CAPABLE\n"); 505 pr_info("Platform: Vz Class A - CRONUS, NON_DVR_CAPABLE\n");
@@ -512,10 +510,7 @@ void __init configure_platform(void)
512 platform_features = DVR_CAPABLE | PCIE_CAPABLE | 510 platform_features = DVR_CAPABLE | PCIE_CAPABLE |
513 DISPLAY_CAPABLE; 511 DISPLAY_CAPABLE;
514 asic = ASIC_ZEUS; 512 asic = ASIC_ZEUS;
515 asic_phy_base = ZEUS_IO_BASE; 513 set_register_map(ZEUS_IO_BASE, &zeus_register_map);
516 register_map = &zeus_register_map;
517 asic_base = (unsigned long)ioremap_nocache(asic_phy_base,
518 ASIC_IO_SIZE);
519 gp_resources = dvr_zeus_resources; 514 gp_resources = dvr_zeus_resources;
520 515
521 pr_info("Platform: 8500/RNG200 - ZEUS, DVR_CAPABLE\n"); 516 pr_info("Platform: 8500/RNG200 - ZEUS, DVR_CAPABLE\n");
@@ -526,10 +521,7 @@ void __init configure_platform(void)
526 platform_features = DVR_CAPABLE | PCIE_CAPABLE | 521 platform_features = DVR_CAPABLE | PCIE_CAPABLE |
527 DISPLAY_CAPABLE; 522 DISPLAY_CAPABLE;
528 asic = ASIC_CRONUS; 523 asic = ASIC_CRONUS;
529 asic_phy_base = CRONUS_IO_BASE; 524 set_register_map(CRONUS_IO_BASE, &cronus_register_map);
530 register_map = &cronus_register_map;
531 asic_base = (unsigned long)ioremap_nocache(asic_phy_base,
532 ASIC_IO_SIZE);
533 gp_resources = dvr_cronus_resources; 525 gp_resources = dvr_cronus_resources;
534 526
535 pr_info("Platform: 8600/Vz Class B - CRONUS, " 527 pr_info("Platform: 8600/Vz Class B - CRONUS, "
diff --git a/arch/powerpc/boot/wrapper b/arch/powerpc/boot/wrapper
index 390512ae7f86..f4594ed09a20 100755
--- a/arch/powerpc/boot/wrapper
+++ b/arch/powerpc/boot/wrapper
@@ -43,6 +43,9 @@ gzip=.gz
43# cross-compilation prefix 43# cross-compilation prefix
44CROSS= 44CROSS=
45 45
46# mkimage wrapper script
47MKIMAGE=$srctree/scripts/mkuboot.sh
48
46# directory for object and other files used by this script 49# directory for object and other files used by this script
47object=arch/powerpc/boot 50object=arch/powerpc/boot
48objbin=$object 51objbin=$object
@@ -267,7 +270,7 @@ membase=`${CROSS}objdump -p "$kernel" | grep -m 1 LOAD | awk '{print $7}'`
267case "$platform" in 270case "$platform" in
268uboot) 271uboot)
269 rm -f "$ofile" 272 rm -f "$ofile"
270 mkimage -A ppc -O linux -T kernel -C gzip -a $membase -e $membase \ 273 ${MKIMAGE} -A ppc -O linux -T kernel -C gzip -a $membase -e $membase \
271 $uboot_version -d "$vmz" "$ofile" 274 $uboot_version -d "$vmz" "$ofile"
272 if [ -z "$cacheit" ]; then 275 if [ -z "$cacheit" ]; then
273 rm -f "$vmz" 276 rm -f "$vmz"
@@ -327,7 +330,7 @@ coff)
327 ;; 330 ;;
328cuboot*) 331cuboot*)
329 gzip -f -9 "$ofile" 332 gzip -f -9 "$ofile"
330 mkimage -A ppc -O linux -T kernel -C gzip -a "$base" -e "$entry" \ 333 ${MKIMAGE} -A ppc -O linux -T kernel -C gzip -a "$base" -e "$entry" \
331 $uboot_version -d "$ofile".gz "$ofile" 334 $uboot_version -d "$ofile".gz "$ofile"
332 ;; 335 ;;
333treeboot*) 336treeboot*)
diff --git a/arch/powerpc/configs/40x/acadia_defconfig b/arch/powerpc/configs/40x/acadia_defconfig
index 173a5bb77ca1..8e95f8d227b9 100644
--- a/arch/powerpc/configs/40x/acadia_defconfig
+++ b/arch/powerpc/configs/40x/acadia_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:17:46 2009 4# Mon Jan 4 15:33:07 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14CONFIG_40x=y 14CONFIG_40x=y
@@ -16,6 +16,7 @@ CONFIG_40x=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_4xx=y 17CONFIG_4xx=y
18CONFIG_PPC_MMU_NOHASH=y 18CONFIG_PPC_MMU_NOHASH=y
19CONFIG_PPC_MMU_NOHASH_32=y
19# CONFIG_PPC_MM_SLICES is not set 20# CONFIG_PPC_MM_SLICES is not set
20CONFIG_NOT_COHERENT_CACHE=y 21CONFIG_NOT_COHERENT_CACHE=y
21CONFIG_PPC32=y 22CONFIG_PPC32=y
@@ -27,15 +28,18 @@ CONFIG_GENERIC_TIME=y
27CONFIG_GENERIC_TIME_VSYSCALL=y 28CONFIG_GENERIC_TIME_VSYSCALL=y
28CONFIG_GENERIC_CLOCKEVENTS=y 29CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
30# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
31CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
32CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
33CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
34CONFIG_LOCKDEP_SUPPORT=y 39CONFIG_LOCKDEP_SUPPORT=y
35CONFIG_RWSEM_XCHGADD_ALGORITHM=y 40CONFIG_RWSEM_XCHGADD_ALGORITHM=y
36CONFIG_ARCH_HAS_ILOG2_U32=y 41CONFIG_ARCH_HAS_ILOG2_U32=y
37CONFIG_GENERIC_HWEIGHT=y 42CONFIG_GENERIC_HWEIGHT=y
38CONFIG_GENERIC_CALIBRATE_DELAY=y
39CONFIG_GENERIC_FIND_NEXT_BIT=y 43CONFIG_GENERIC_FIND_NEXT_BIT=y
40# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
41CONFIG_PPC=y 45CONFIG_PPC=y
@@ -49,11 +53,15 @@ CONFIG_PPC_UDBG_16550=y
49# CONFIG_GENERIC_TBSYNC is not set 53# CONFIG_GENERIC_TBSYNC is not set
50CONFIG_AUDIT_ARCH=y 54CONFIG_AUDIT_ARCH=y
51CONFIG_GENERIC_BUG=y 55CONFIG_GENERIC_BUG=y
56CONFIG_DTC=y
52# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
53CONFIG_PPC_DCR_NATIVE=y 59CONFIG_PPC_DCR_NATIVE=y
54# CONFIG_PPC_DCR_MMIO is not set 60# CONFIG_PPC_DCR_MMIO is not set
55CONFIG_PPC_DCR=y 61CONFIG_PPC_DCR=y
62CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
56CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 63CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
64CONFIG_CONSTRUCTORS=y
57 65
58# 66#
59# General setup 67# General setup
@@ -67,9 +75,21 @@ CONFIG_SWAP=y
67CONFIG_SYSVIPC=y 75CONFIG_SYSVIPC=y
68CONFIG_SYSVIPC_SYSCTL=y 76CONFIG_SYSVIPC_SYSCTL=y
69CONFIG_POSIX_MQUEUE=y 77CONFIG_POSIX_MQUEUE=y
78CONFIG_POSIX_MQUEUE_SYSCTL=y
70# CONFIG_BSD_PROCESS_ACCT is not set 79# CONFIG_BSD_PROCESS_ACCT is not set
71# CONFIG_TASKSTATS is not set 80# CONFIG_TASKSTATS is not set
72# CONFIG_AUDIT is not set 81# CONFIG_AUDIT is not set
82
83#
84# RCU Subsystem
85#
86CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set
88# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set
92# CONFIG_TREE_RCU_TRACE is not set
73# CONFIG_IKCONFIG is not set 93# CONFIG_IKCONFIG is not set
74CONFIG_LOG_BUF_SHIFT=14 94CONFIG_LOG_BUF_SHIFT=14
75CONFIG_GROUP_SCHED=y 95CONFIG_GROUP_SCHED=y
@@ -84,31 +104,40 @@ CONFIG_SYSFS_DEPRECATED_V2=y
84# CONFIG_NAMESPACES is not set 104# CONFIG_NAMESPACES is not set
85CONFIG_BLK_DEV_INITRD=y 105CONFIG_BLK_DEV_INITRD=y
86CONFIG_INITRAMFS_SOURCE="" 106CONFIG_INITRAMFS_SOURCE=""
107CONFIG_RD_GZIP=y
108# CONFIG_RD_BZIP2 is not set
109# CONFIG_RD_LZMA is not set
87# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 110# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
88CONFIG_SYSCTL=y 111CONFIG_SYSCTL=y
112CONFIG_ANON_INODES=y
89CONFIG_EMBEDDED=y 113CONFIG_EMBEDDED=y
90CONFIG_SYSCTL_SYSCALL=y 114CONFIG_SYSCTL_SYSCALL=y
91CONFIG_KALLSYMS=y 115CONFIG_KALLSYMS=y
92CONFIG_KALLSYMS_ALL=y 116CONFIG_KALLSYMS_ALL=y
93CONFIG_KALLSYMS_STRIP_GENERATED=y
94CONFIG_KALLSYMS_EXTRA_PASS=y 117CONFIG_KALLSYMS_EXTRA_PASS=y
95CONFIG_HOTPLUG=y 118CONFIG_HOTPLUG=y
96CONFIG_PRINTK=y 119CONFIG_PRINTK=y
97CONFIG_BUG=y 120CONFIG_BUG=y
98CONFIG_ELF_CORE=y 121CONFIG_ELF_CORE=y
99CONFIG_COMPAT_BRK=y
100CONFIG_BASE_FULL=y 122CONFIG_BASE_FULL=y
101CONFIG_FUTEX=y 123CONFIG_FUTEX=y
102CONFIG_ANON_INODES=y
103CONFIG_EPOLL=y 124CONFIG_EPOLL=y
104CONFIG_SIGNALFD=y 125CONFIG_SIGNALFD=y
105CONFIG_TIMERFD=y 126CONFIG_TIMERFD=y
106CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
107CONFIG_SHMEM=y 128CONFIG_SHMEM=y
108CONFIG_AIO=y 129CONFIG_AIO=y
130CONFIG_HAVE_PERF_EVENTS=y
131
132#
133# Kernel Performance Events And Counters
134#
135# CONFIG_PERF_EVENTS is not set
136# CONFIG_PERF_COUNTERS is not set
109CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
110CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
111CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
140CONFIG_COMPAT_BRK=y
112# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
113CONFIG_SLUB=y 142CONFIG_SLUB=y
114# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
@@ -120,6 +149,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
120CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
121CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
122CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
154
155#
156# GCOV-based kernel profiling
157#
158# CONFIG_GCOV_KERNEL is not set
159# CONFIG_SLOW_WORK is not set
123# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 160# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
124CONFIG_SLABINFO=y 161CONFIG_SLABINFO=y
125CONFIG_RT_MUTEXES=y 162CONFIG_RT_MUTEXES=y
@@ -131,8 +168,7 @@ CONFIG_MODULE_UNLOAD=y
131# CONFIG_MODVERSIONS is not set 168# CONFIG_MODVERSIONS is not set
132# CONFIG_MODULE_SRCVERSION_ALL is not set 169# CONFIG_MODULE_SRCVERSION_ALL is not set
133CONFIG_BLOCK=y 170CONFIG_BLOCK=y
134CONFIG_LBD=y 171CONFIG_LBDAF=y
135# CONFIG_BLK_DEV_IO_TRACE is not set
136# CONFIG_BLK_DEV_BSG is not set 172# CONFIG_BLK_DEV_BSG is not set
137# CONFIG_BLK_DEV_INTEGRITY is not set 173# CONFIG_BLK_DEV_INTEGRITY is not set
138 174
@@ -140,19 +176,41 @@ CONFIG_LBD=y
140# IO Schedulers 176# IO Schedulers
141# 177#
142CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
143CONFIG_IOSCHED_AS=y
144CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
145CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
146CONFIG_DEFAULT_AS=y
147# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
148# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
149# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
150CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
151CONFIG_CLASSIC_RCU=y 185# CONFIG_INLINE_SPIN_TRYLOCK is not set
152# CONFIG_TREE_RCU is not set 186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
153# CONFIG_PREEMPT_RCU is not set 187# CONFIG_INLINE_SPIN_LOCK is not set
154# CONFIG_TREE_RCU_TRACE is not set 188# CONFIG_INLINE_SPIN_LOCK_BH is not set
155# CONFIG_PREEMPT_RCU_TRACE is not set 189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
156# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
157# CONFIG_PPC4xx_PCI_EXPRESS is not set 215# CONFIG_PPC4xx_PCI_EXPRESS is not set
158 216
@@ -166,6 +224,7 @@ CONFIG_CLASSIC_RCU=y
166CONFIG_ACADIA=y 224CONFIG_ACADIA=y
167# CONFIG_EP405 is not set 225# CONFIG_EP405 is not set
168# CONFIG_HCU4 is not set 226# CONFIG_HCU4 is not set
227# CONFIG_HOTFOOT is not set
169# CONFIG_KILAUEA is not set 228# CONFIG_KILAUEA is not set
170# CONFIG_MAKALU is not set 229# CONFIG_MAKALU is not set
171# CONFIG_WALNUT is not set 230# CONFIG_WALNUT is not set
@@ -208,10 +267,12 @@ CONFIG_BINFMT_ELF=y
208# CONFIG_BINFMT_MISC is not set 267# CONFIG_BINFMT_MISC is not set
209# CONFIG_MATH_EMULATION is not set 268# CONFIG_MATH_EMULATION is not set
210# CONFIG_IOMMU_HELPER is not set 269# CONFIG_IOMMU_HELPER is not set
211CONFIG_PPC_NEED_DMA_SYNC_OPS=y 270# CONFIG_SWIOTLB is not set
212CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 271CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
213CONFIG_ARCH_HAS_WALK_MEMORY=y 272CONFIG_ARCH_HAS_WALK_MEMORY=y
214CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 273CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
274CONFIG_SPARSE_IRQ=y
275CONFIG_MAX_ACTIVE_REGIONS=32
215CONFIG_ARCH_FLATMEM_ENABLE=y 276CONFIG_ARCH_FLATMEM_ENABLE=y
216CONFIG_ARCH_POPULATES_NODE_MAP=y 277CONFIG_ARCH_POPULATES_NODE_MAP=y
217CONFIG_SELECT_MEMORY_MODEL=y 278CONFIG_SELECT_MEMORY_MODEL=y
@@ -227,10 +288,12 @@ CONFIG_MIGRATION=y
227CONFIG_ZONE_DMA_FLAG=1 288CONFIG_ZONE_DMA_FLAG=1
228CONFIG_BOUNCE=y 289CONFIG_BOUNCE=y
229CONFIG_VIRT_TO_BUS=y 290CONFIG_VIRT_TO_BUS=y
230CONFIG_UNEVICTABLE_LRU=y 291# CONFIG_KSM is not set
292CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
231CONFIG_PPC_4K_PAGES=y 293CONFIG_PPC_4K_PAGES=y
232# CONFIG_PPC_16K_PAGES is not set 294# CONFIG_PPC_16K_PAGES is not set
233# CONFIG_PPC_64K_PAGES is not set 295# CONFIG_PPC_64K_PAGES is not set
296# CONFIG_PPC_256K_PAGES is not set
234CONFIG_FORCE_MAX_ZONEORDER=11 297CONFIG_FORCE_MAX_ZONEORDER=11
235CONFIG_PROC_DEVICETREE=y 298CONFIG_PROC_DEVICETREE=y
236# CONFIG_CMDLINE_BOOL is not set 299# CONFIG_CMDLINE_BOOL is not set
@@ -255,6 +318,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
255# CONFIG_PCI_LEGACY is not set 318# CONFIG_PCI_LEGACY is not set
256# CONFIG_PCI_DEBUG is not set 319# CONFIG_PCI_DEBUG is not set
257# CONFIG_PCI_STUB is not set 320# CONFIG_PCI_STUB is not set
321# CONFIG_PCI_IOV is not set
258# CONFIG_PCCARD is not set 322# CONFIG_PCCARD is not set
259# CONFIG_HOTPLUG_PCI is not set 323# CONFIG_HOTPLUG_PCI is not set
260# CONFIG_HAS_RAPIDIO is not set 324# CONFIG_HAS_RAPIDIO is not set
@@ -272,14 +336,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
272CONFIG_KERNEL_START=0xc0000000 336CONFIG_KERNEL_START=0xc0000000
273CONFIG_PHYSICAL_START=0x00000000 337CONFIG_PHYSICAL_START=0x00000000
274CONFIG_TASK_SIZE=0xc0000000 338CONFIG_TASK_SIZE=0xc0000000
275CONFIG_CONSISTENT_START=0xff100000
276CONFIG_CONSISTENT_SIZE=0x00200000 339CONFIG_CONSISTENT_SIZE=0x00200000
277CONFIG_NET=y 340CONFIG_NET=y
278 341
279# 342#
280# Networking options 343# Networking options
281# 344#
282CONFIG_COMPAT_NET_DEV_OPS=y
283CONFIG_PACKET=y 345CONFIG_PACKET=y
284# CONFIG_PACKET_MMAP is not set 346# CONFIG_PACKET_MMAP is not set
285CONFIG_UNIX=y 347CONFIG_UNIX=y
@@ -316,6 +378,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
316# CONFIG_NETFILTER is not set 378# CONFIG_NETFILTER is not set
317# CONFIG_IP_DCCP is not set 379# CONFIG_IP_DCCP is not set
318# CONFIG_IP_SCTP is not set 380# CONFIG_IP_SCTP is not set
381# CONFIG_RDS is not set
319# CONFIG_TIPC is not set 382# CONFIG_TIPC is not set
320# CONFIG_ATM is not set 383# CONFIG_ATM is not set
321# CONFIG_BRIDGE is not set 384# CONFIG_BRIDGE is not set
@@ -329,6 +392,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
329# CONFIG_LAPB is not set 392# CONFIG_LAPB is not set
330# CONFIG_ECONET is not set 393# CONFIG_ECONET is not set
331# CONFIG_WAN_ROUTER is not set 394# CONFIG_WAN_ROUTER is not set
395# CONFIG_PHONET is not set
396# CONFIG_IEEE802154 is not set
332# CONFIG_NET_SCHED is not set 397# CONFIG_NET_SCHED is not set
333# CONFIG_DCB is not set 398# CONFIG_DCB is not set
334 399
@@ -341,8 +406,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
341# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
342# CONFIG_BT is not set 407# CONFIG_BT is not set
343# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
344# CONFIG_PHONET is not set 409CONFIG_WIRELESS=y
345# CONFIG_WIRELESS is not set 410# CONFIG_CFG80211 is not set
411# CONFIG_LIB80211 is not set
412
413#
414# CFG80211 needs to be enabled for MAC80211
415#
346# CONFIG_WIMAX is not set 416# CONFIG_WIMAX is not set
347# CONFIG_RFKILL is not set 417# CONFIG_RFKILL is not set
348# CONFIG_NET_9P is not set 418# CONFIG_NET_9P is not set
@@ -355,6 +425,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
355# Generic Driver Options 425# Generic Driver Options
356# 426#
357CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 427CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
428# CONFIG_DEVTMPFS is not set
358CONFIG_STANDALONE=y 429CONFIG_STANDALONE=y
359CONFIG_PREVENT_FIRMWARE_BUILD=y 430CONFIG_PREVENT_FIRMWARE_BUILD=y
360CONFIG_FW_LOADER=y 431CONFIG_FW_LOADER=y
@@ -367,9 +438,9 @@ CONFIG_CONNECTOR=y
367CONFIG_PROC_EVENTS=y 438CONFIG_PROC_EVENTS=y
368CONFIG_MTD=y 439CONFIG_MTD=y
369# CONFIG_MTD_DEBUG is not set 440# CONFIG_MTD_DEBUG is not set
441# CONFIG_MTD_TESTS is not set
370# CONFIG_MTD_CONCAT is not set 442# CONFIG_MTD_CONCAT is not set
371CONFIG_MTD_PARTITIONS=y 443CONFIG_MTD_PARTITIONS=y
372# CONFIG_MTD_TESTS is not set
373# CONFIG_MTD_REDBOOT_PARTS is not set 444# CONFIG_MTD_REDBOOT_PARTS is not set
374CONFIG_MTD_CMDLINE_PARTS=y 445CONFIG_MTD_CMDLINE_PARTS=y
375CONFIG_MTD_OF_PARTS=y 446CONFIG_MTD_OF_PARTS=y
@@ -445,7 +516,6 @@ CONFIG_MTD_PHYSMAP_OF=y
445# LPDDR flash memory drivers 516# LPDDR flash memory drivers
446# 517#
447# CONFIG_MTD_LPDDR is not set 518# CONFIG_MTD_LPDDR is not set
448# CONFIG_MTD_QINFO_PROBE is not set
449 519
450# 520#
451# UBI - Unsorted block images 521# UBI - Unsorted block images
@@ -461,6 +531,7 @@ CONFIG_BLK_DEV=y
461# CONFIG_BLK_DEV_UMEM is not set 531# CONFIG_BLK_DEV_UMEM is not set
462# CONFIG_BLK_DEV_COW_COMMON is not set 532# CONFIG_BLK_DEV_COW_COMMON is not set
463# CONFIG_BLK_DEV_LOOP is not set 533# CONFIG_BLK_DEV_LOOP is not set
534# CONFIG_BLK_DEV_DRBD is not set
464# CONFIG_BLK_DEV_NBD is not set 535# CONFIG_BLK_DEV_NBD is not set
465# CONFIG_BLK_DEV_SX8 is not set 536# CONFIG_BLK_DEV_SX8 is not set
466CONFIG_BLK_DEV_RAM=y 537CONFIG_BLK_DEV_RAM=y
@@ -491,7 +562,11 @@ CONFIG_HAVE_IDE=y
491# 562#
492 563
493# 564#
494# Enable only one of the two stacks, unless you know what you are doing 565# You can enable one or both FireWire driver stacks.
566#
567
568#
569# See the help texts for more information.
495# 570#
496# CONFIG_FIREWIRE is not set 571# CONFIG_FIREWIRE is not set
497# CONFIG_IEEE1394 is not set 572# CONFIG_IEEE1394 is not set
@@ -512,6 +587,8 @@ CONFIG_MII=y
512# CONFIG_SUNGEM is not set 587# CONFIG_SUNGEM is not set
513# CONFIG_CASSINI is not set 588# CONFIG_CASSINI is not set
514# CONFIG_NET_VENDOR_3COM is not set 589# CONFIG_NET_VENDOR_3COM is not set
590# CONFIG_ETHOC is not set
591# CONFIG_DNET is not set
515# CONFIG_NET_TULIP is not set 592# CONFIG_NET_TULIP is not set
516# CONFIG_HP100 is not set 593# CONFIG_HP100 is not set
517CONFIG_IBM_NEW_EMAC=y 594CONFIG_IBM_NEW_EMAC=y
@@ -530,17 +607,18 @@ CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT=y
530CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR=y 607CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR=y
531# CONFIG_NET_PCI is not set 608# CONFIG_NET_PCI is not set
532# CONFIG_B44 is not set 609# CONFIG_B44 is not set
610# CONFIG_KS8842 is not set
611# CONFIG_KS8851_MLL is not set
533# CONFIG_ATL2 is not set 612# CONFIG_ATL2 is not set
613# CONFIG_XILINX_EMACLITE is not set
534# CONFIG_NETDEV_1000 is not set 614# CONFIG_NETDEV_1000 is not set
535# CONFIG_NETDEV_10000 is not set 615# CONFIG_NETDEV_10000 is not set
536# CONFIG_TR is not set 616# CONFIG_TR is not set
537 617CONFIG_WLAN=y
538# 618# CONFIG_AIRO is not set
539# Wireless LAN 619# CONFIG_ATMEL is not set
540# 620# CONFIG_PRISM54 is not set
541# CONFIG_WLAN_PRE80211 is not set 621# CONFIG_HOSTAP is not set
542# CONFIG_WLAN_80211 is not set
543# CONFIG_IWLWIFI_LEDS is not set
544 622
545# 623#
546# Enable WiMAX (Networking options) to see the WiMAX drivers 624# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -553,6 +631,7 @@ CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR=y
553# CONFIG_NETCONSOLE is not set 631# CONFIG_NETCONSOLE is not set
554# CONFIG_NETPOLL is not set 632# CONFIG_NETPOLL is not set
555# CONFIG_NET_POLL_CONTROLLER is not set 633# CONFIG_NET_POLL_CONTROLLER is not set
634# CONFIG_VMXNET3 is not set
556# CONFIG_ISDN is not set 635# CONFIG_ISDN is not set
557# CONFIG_PHONE is not set 636# CONFIG_PHONE is not set
558 637
@@ -598,6 +677,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
598# CONFIG_SERIAL_JSM is not set 677# CONFIG_SERIAL_JSM is not set
599CONFIG_SERIAL_OF_PLATFORM=y 678CONFIG_SERIAL_OF_PLATFORM=y
600# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 679# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
680# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
601CONFIG_UNIX98_PTYS=y 681CONFIG_UNIX98_PTYS=y
602# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 682# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
603CONFIG_LEGACY_PTYS=y 683CONFIG_LEGACY_PTYS=y
@@ -614,6 +694,11 @@ CONFIG_LEGACY_PTY_COUNT=256
614CONFIG_DEVPORT=y 694CONFIG_DEVPORT=y
615# CONFIG_I2C is not set 695# CONFIG_I2C is not set
616# CONFIG_SPI is not set 696# CONFIG_SPI is not set
697
698#
699# PPS support
700#
701# CONFIG_PPS is not set
617CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 702CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
618# CONFIG_GPIOLIB is not set 703# CONFIG_GPIOLIB is not set
619# CONFIG_W1 is not set 704# CONFIG_W1 is not set
@@ -636,27 +721,13 @@ CONFIG_SSB_POSSIBLE=y
636# CONFIG_HTC_PASIC3 is not set 721# CONFIG_HTC_PASIC3 is not set
637# CONFIG_MFD_TMIO is not set 722# CONFIG_MFD_TMIO is not set
638# CONFIG_REGULATOR is not set 723# CONFIG_REGULATOR is not set
639 724# CONFIG_MEDIA_SUPPORT is not set
640#
641# Multimedia devices
642#
643
644#
645# Multimedia core support
646#
647# CONFIG_VIDEO_DEV is not set
648# CONFIG_DVB_CORE is not set
649# CONFIG_VIDEO_MEDIA is not set
650
651#
652# Multimedia drivers
653#
654# CONFIG_DAB is not set
655 725
656# 726#
657# Graphics support 727# Graphics support
658# 728#
659# CONFIG_AGP is not set 729# CONFIG_AGP is not set
730CONFIG_VGA_ARB=y
660# CONFIG_DRM is not set 731# CONFIG_DRM is not set
661# CONFIG_VGASTATE is not set 732# CONFIG_VGASTATE is not set
662# CONFIG_VIDEO_OUTPUT_CONTROL is not set 733# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -678,7 +749,12 @@ CONFIG_SSB_POSSIBLE=y
678# CONFIG_EDAC is not set 749# CONFIG_EDAC is not set
679# CONFIG_RTC_CLASS is not set 750# CONFIG_RTC_CLASS is not set
680# CONFIG_DMADEVICES is not set 751# CONFIG_DMADEVICES is not set
752# CONFIG_AUXDISPLAY is not set
681# CONFIG_UIO is not set 753# CONFIG_UIO is not set
754
755#
756# TI VLYNQ
757#
682# CONFIG_STAGING is not set 758# CONFIG_STAGING is not set
683 759
684# 760#
@@ -689,14 +765,17 @@ CONFIG_EXT2_FS=y
689# CONFIG_EXT2_FS_XIP is not set 765# CONFIG_EXT2_FS_XIP is not set
690# CONFIG_EXT3_FS is not set 766# CONFIG_EXT3_FS is not set
691# CONFIG_EXT4_FS is not set 767# CONFIG_EXT4_FS is not set
768CONFIG_EXT4_USE_FOR_EXT23=y
692# CONFIG_REISERFS_FS is not set 769# CONFIG_REISERFS_FS is not set
693# CONFIG_JFS_FS is not set 770# CONFIG_JFS_FS is not set
694# CONFIG_FS_POSIX_ACL is not set 771# CONFIG_FS_POSIX_ACL is not set
695CONFIG_FILE_LOCKING=y
696# CONFIG_XFS_FS is not set 772# CONFIG_XFS_FS is not set
697# CONFIG_GFS2_FS is not set 773# CONFIG_GFS2_FS is not set
698# CONFIG_OCFS2_FS is not set 774# CONFIG_OCFS2_FS is not set
699# CONFIG_BTRFS_FS is not set 775# CONFIG_BTRFS_FS is not set
776# CONFIG_NILFS2_FS is not set
777CONFIG_FILE_LOCKING=y
778CONFIG_FSNOTIFY=y
700CONFIG_DNOTIFY=y 779CONFIG_DNOTIFY=y
701CONFIG_INOTIFY=y 780CONFIG_INOTIFY=y
702CONFIG_INOTIFY_USER=y 781CONFIG_INOTIFY_USER=y
@@ -706,6 +785,11 @@ CONFIG_INOTIFY_USER=y
706# CONFIG_FUSE_FS is not set 785# CONFIG_FUSE_FS is not set
707 786
708# 787#
788# Caches
789#
790# CONFIG_FSCACHE is not set
791
792#
709# CD-ROM/DVD Filesystems 793# CD-ROM/DVD Filesystems
710# 794#
711# CONFIG_ISO9660_FS is not set 795# CONFIG_ISO9660_FS is not set
@@ -760,7 +844,6 @@ CONFIG_LOCKD=y
760CONFIG_LOCKD_V4=y 844CONFIG_LOCKD_V4=y
761CONFIG_NFS_COMMON=y 845CONFIG_NFS_COMMON=y
762CONFIG_SUNRPC=y 846CONFIG_SUNRPC=y
763# CONFIG_SUNRPC_REGISTER_V4 is not set
764# CONFIG_RPCSEC_GSS_KRB5 is not set 847# CONFIG_RPCSEC_GSS_KRB5 is not set
765# CONFIG_RPCSEC_GSS_SPKM3 is not set 848# CONFIG_RPCSEC_GSS_SPKM3 is not set
766# CONFIG_SMB_FS is not set 849# CONFIG_SMB_FS is not set
@@ -776,6 +859,7 @@ CONFIG_SUNRPC=y
776CONFIG_MSDOS_PARTITION=y 859CONFIG_MSDOS_PARTITION=y
777# CONFIG_NLS is not set 860# CONFIG_NLS is not set
778# CONFIG_DLM is not set 861# CONFIG_DLM is not set
862# CONFIG_BINARY_PRINTF is not set
779 863
780# 864#
781# Library routines 865# Library routines
@@ -790,11 +874,13 @@ CONFIG_CRC32=y
790# CONFIG_CRC7 is not set 874# CONFIG_CRC7 is not set
791# CONFIG_LIBCRC32C is not set 875# CONFIG_LIBCRC32C is not set
792CONFIG_ZLIB_INFLATE=y 876CONFIG_ZLIB_INFLATE=y
793CONFIG_PLIST=y 877CONFIG_DECOMPRESS_GZIP=y
794CONFIG_HAS_IOMEM=y 878CONFIG_HAS_IOMEM=y
795CONFIG_HAS_IOPORT=y 879CONFIG_HAS_IOPORT=y
796CONFIG_HAS_DMA=y 880CONFIG_HAS_DMA=y
797CONFIG_HAVE_LMB=y 881CONFIG_HAVE_LMB=y
882CONFIG_NLATTR=y
883CONFIG_GENERIC_ATOMIC64=y
798 884
799# 885#
800# Kernel hacking 886# Kernel hacking
@@ -804,6 +890,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
804CONFIG_ENABLE_MUST_CHECK=y 890CONFIG_ENABLE_MUST_CHECK=y
805CONFIG_FRAME_WARN=1024 891CONFIG_FRAME_WARN=1024
806CONFIG_MAGIC_SYSRQ=y 892CONFIG_MAGIC_SYSRQ=y
893# CONFIG_STRIP_ASM_SYMS is not set
807# CONFIG_UNUSED_SYMBOLS is not set 894# CONFIG_UNUSED_SYMBOLS is not set
808CONFIG_DEBUG_FS=y 895CONFIG_DEBUG_FS=y
809# CONFIG_HEADERS_CHECK is not set 896# CONFIG_HEADERS_CHECK is not set
@@ -812,16 +899,23 @@ CONFIG_DEBUG_KERNEL=y
812CONFIG_DETECT_SOFTLOCKUP=y 899CONFIG_DETECT_SOFTLOCKUP=y
813# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 900# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
814CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 901CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
902CONFIG_DETECT_HUNG_TASK=y
903# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
904CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
815CONFIG_SCHED_DEBUG=y 905CONFIG_SCHED_DEBUG=y
816# CONFIG_SCHEDSTATS is not set 906# CONFIG_SCHEDSTATS is not set
817# CONFIG_TIMER_STATS is not set 907# CONFIG_TIMER_STATS is not set
818# CONFIG_DEBUG_OBJECTS is not set 908# CONFIG_DEBUG_OBJECTS is not set
819# CONFIG_SLUB_DEBUG_ON is not set 909# CONFIG_SLUB_DEBUG_ON is not set
820# CONFIG_SLUB_STATS is not set 910# CONFIG_SLUB_STATS is not set
911# CONFIG_DEBUG_KMEMLEAK is not set
821# CONFIG_DEBUG_RT_MUTEXES is not set 912# CONFIG_DEBUG_RT_MUTEXES is not set
822# CONFIG_RT_MUTEX_TESTER is not set 913# CONFIG_RT_MUTEX_TESTER is not set
823# CONFIG_DEBUG_SPINLOCK is not set 914# CONFIG_DEBUG_SPINLOCK is not set
824# CONFIG_DEBUG_MUTEXES is not set 915# CONFIG_DEBUG_MUTEXES is not set
916# CONFIG_DEBUG_LOCK_ALLOC is not set
917# CONFIG_PROVE_LOCKING is not set
918# CONFIG_LOCK_STAT is not set
825# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 919# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
826# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 920# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
827# CONFIG_DEBUG_KOBJECT is not set 921# CONFIG_DEBUG_KOBJECT is not set
@@ -833,35 +927,45 @@ CONFIG_DEBUG_BUGVERBOSE=y
833# CONFIG_DEBUG_LIST is not set 927# CONFIG_DEBUG_LIST is not set
834# CONFIG_DEBUG_SG is not set 928# CONFIG_DEBUG_SG is not set
835# CONFIG_DEBUG_NOTIFIERS is not set 929# CONFIG_DEBUG_NOTIFIERS is not set
836# CONFIG_BOOT_PRINTK_DELAY is not set 930# CONFIG_DEBUG_CREDENTIALS is not set
837# CONFIG_RCU_TORTURE_TEST is not set 931# CONFIG_RCU_TORTURE_TEST is not set
838# CONFIG_RCU_CPU_STALL_DETECTOR is not set 932# CONFIG_RCU_CPU_STALL_DETECTOR is not set
839# CONFIG_BACKTRACE_SELF_TEST is not set 933# CONFIG_BACKTRACE_SELF_TEST is not set
840# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 934# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
935# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
841# CONFIG_FAULT_INJECTION is not set 936# CONFIG_FAULT_INJECTION is not set
842# CONFIG_LATENCYTOP is not set 937# CONFIG_LATENCYTOP is not set
843CONFIG_SYSCTL_SYSCALL_CHECK=y 938CONFIG_SYSCTL_SYSCALL_CHECK=y
939# CONFIG_DEBUG_PAGEALLOC is not set
844CONFIG_HAVE_FUNCTION_TRACER=y 940CONFIG_HAVE_FUNCTION_TRACER=y
941CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
845CONFIG_HAVE_DYNAMIC_FTRACE=y 942CONFIG_HAVE_DYNAMIC_FTRACE=y
846CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 943CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
847 944CONFIG_TRACING_SUPPORT=y
848# 945CONFIG_FTRACE=y
849# Tracers
850#
851# CONFIG_FUNCTION_TRACER is not set 946# CONFIG_FUNCTION_TRACER is not set
947# CONFIG_IRQSOFF_TRACER is not set
852# CONFIG_SCHED_TRACER is not set 948# CONFIG_SCHED_TRACER is not set
853# CONFIG_CONTEXT_SWITCH_TRACER is not set 949# CONFIG_ENABLE_DEFAULT_TRACERS is not set
854# CONFIG_BOOT_TRACER is not set 950# CONFIG_BOOT_TRACER is not set
855# CONFIG_TRACE_BRANCH_PROFILING is not set 951CONFIG_BRANCH_PROFILE_NONE=y
952# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
953# CONFIG_PROFILE_ALL_BRANCHES is not set
856# CONFIG_STACK_TRACER is not set 954# CONFIG_STACK_TRACER is not set
857# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 955# CONFIG_KMEMTRACE is not set
956# CONFIG_WORKQUEUE_TRACER is not set
957# CONFIG_BLK_DEV_IO_TRACE is not set
958# CONFIG_DYNAMIC_DEBUG is not set
959# CONFIG_DMA_API_DEBUG is not set
858# CONFIG_SAMPLES is not set 960# CONFIG_SAMPLES is not set
859CONFIG_HAVE_ARCH_KGDB=y 961CONFIG_HAVE_ARCH_KGDB=y
860# CONFIG_KGDB is not set 962# CONFIG_KGDB is not set
963# CONFIG_PPC_DISABLE_WERROR is not set
964CONFIG_PPC_WERROR=y
861CONFIG_PRINT_STACK_DEPTH=64 965CONFIG_PRINT_STACK_DEPTH=64
862# CONFIG_DEBUG_STACKOVERFLOW is not set 966# CONFIG_DEBUG_STACKOVERFLOW is not set
863# CONFIG_DEBUG_STACK_USAGE is not set 967# CONFIG_DEBUG_STACK_USAGE is not set
864# CONFIG_DEBUG_PAGEALLOC is not set 968# CONFIG_PPC_EMULATED_STATS is not set
865# CONFIG_CODE_PATCHING_SELFTEST is not set 969# CONFIG_CODE_PATCHING_SELFTEST is not set
866# CONFIG_FTR_FIXUP_SELFTEST is not set 970# CONFIG_FTR_FIXUP_SELFTEST is not set
867# CONFIG_MSI_BITMAP_SELFTEST is not set 971# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -877,13 +981,16 @@ CONFIG_PRINT_STACK_DEPTH=64
877# CONFIG_KEYS is not set 981# CONFIG_KEYS is not set
878# CONFIG_SECURITY is not set 982# CONFIG_SECURITY is not set
879# CONFIG_SECURITYFS is not set 983# CONFIG_SECURITYFS is not set
880# CONFIG_SECURITY_FILE_CAPABILITIES is not set 984# CONFIG_DEFAULT_SECURITY_SELINUX is not set
985# CONFIG_DEFAULT_SECURITY_SMACK is not set
986# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
987CONFIG_DEFAULT_SECURITY_DAC=y
988CONFIG_DEFAULT_SECURITY=""
881CONFIG_CRYPTO=y 989CONFIG_CRYPTO=y
882 990
883# 991#
884# Crypto core or helper 992# Crypto core or helper
885# 993#
886# CONFIG_CRYPTO_FIPS is not set
887CONFIG_CRYPTO_ALGAPI=y 994CONFIG_CRYPTO_ALGAPI=y
888CONFIG_CRYPTO_ALGAPI2=y 995CONFIG_CRYPTO_ALGAPI2=y
889CONFIG_CRYPTO_AEAD2=y 996CONFIG_CRYPTO_AEAD2=y
@@ -892,10 +999,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
892CONFIG_CRYPTO_HASH=y 999CONFIG_CRYPTO_HASH=y
893CONFIG_CRYPTO_HASH2=y 1000CONFIG_CRYPTO_HASH2=y
894CONFIG_CRYPTO_RNG2=y 1001CONFIG_CRYPTO_RNG2=y
1002CONFIG_CRYPTO_PCOMP=y
895CONFIG_CRYPTO_MANAGER=y 1003CONFIG_CRYPTO_MANAGER=y
896CONFIG_CRYPTO_MANAGER2=y 1004CONFIG_CRYPTO_MANAGER2=y
897# CONFIG_CRYPTO_GF128MUL is not set 1005# CONFIG_CRYPTO_GF128MUL is not set
898# CONFIG_CRYPTO_NULL is not set 1006# CONFIG_CRYPTO_NULL is not set
1007CONFIG_CRYPTO_WORKQUEUE=y
899# CONFIG_CRYPTO_CRYPTD is not set 1008# CONFIG_CRYPTO_CRYPTD is not set
900# CONFIG_CRYPTO_AUTHENC is not set 1009# CONFIG_CRYPTO_AUTHENC is not set
901# CONFIG_CRYPTO_TEST is not set 1010# CONFIG_CRYPTO_TEST is not set
@@ -923,11 +1032,13 @@ CONFIG_CRYPTO_PCBC=y
923# 1032#
924# CONFIG_CRYPTO_HMAC is not set 1033# CONFIG_CRYPTO_HMAC is not set
925# CONFIG_CRYPTO_XCBC is not set 1034# CONFIG_CRYPTO_XCBC is not set
1035# CONFIG_CRYPTO_VMAC is not set
926 1036
927# 1037#
928# Digest 1038# Digest
929# 1039#
930# CONFIG_CRYPTO_CRC32C is not set 1040# CONFIG_CRYPTO_CRC32C is not set
1041# CONFIG_CRYPTO_GHASH is not set
931# CONFIG_CRYPTO_MD4 is not set 1042# CONFIG_CRYPTO_MD4 is not set
932CONFIG_CRYPTO_MD5=y 1043CONFIG_CRYPTO_MD5=y
933# CONFIG_CRYPTO_MICHAEL_MIC is not set 1044# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -964,6 +1075,7 @@ CONFIG_CRYPTO_DES=y
964# Compression 1075# Compression
965# 1076#
966# CONFIG_CRYPTO_DEFLATE is not set 1077# CONFIG_CRYPTO_DEFLATE is not set
1078# CONFIG_CRYPTO_ZLIB is not set
967# CONFIG_CRYPTO_LZO is not set 1079# CONFIG_CRYPTO_LZO is not set
968 1080
969# 1081#
@@ -972,5 +1084,6 @@ CONFIG_CRYPTO_DES=y
972# CONFIG_CRYPTO_ANSI_CPRNG is not set 1084# CONFIG_CRYPTO_ANSI_CPRNG is not set
973CONFIG_CRYPTO_HW=y 1085CONFIG_CRYPTO_HW=y
974# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1086# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1087# CONFIG_CRYPTO_DEV_PPC4XX is not set
975# CONFIG_PPC_CLOCK is not set 1088# CONFIG_PPC_CLOCK is not set
976# CONFIG_VIRTUALIZATION is not set 1089# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/40x/ep405_defconfig b/arch/powerpc/configs/40x/ep405_defconfig
index e9b8495cde0c..918f23fd2b18 100644
--- a/arch/powerpc/configs/40x/ep405_defconfig
+++ b/arch/powerpc/configs/40x/ep405_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:17:48 2009 4# Mon Jan 4 15:37:34 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14CONFIG_40x=y 14CONFIG_40x=y
@@ -16,6 +16,7 @@ CONFIG_40x=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_4xx=y 17CONFIG_4xx=y
18CONFIG_PPC_MMU_NOHASH=y 18CONFIG_PPC_MMU_NOHASH=y
19CONFIG_PPC_MMU_NOHASH_32=y
19# CONFIG_PPC_MM_SLICES is not set 20# CONFIG_PPC_MM_SLICES is not set
20CONFIG_NOT_COHERENT_CACHE=y 21CONFIG_NOT_COHERENT_CACHE=y
21CONFIG_PPC32=y 22CONFIG_PPC32=y
@@ -27,15 +28,18 @@ CONFIG_GENERIC_TIME=y
27CONFIG_GENERIC_TIME_VSYSCALL=y 28CONFIG_GENERIC_TIME_VSYSCALL=y
28CONFIG_GENERIC_CLOCKEVENTS=y 29CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
30# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
31CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
32CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
33CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
34CONFIG_LOCKDEP_SUPPORT=y 39CONFIG_LOCKDEP_SUPPORT=y
35CONFIG_RWSEM_XCHGADD_ALGORITHM=y 40CONFIG_RWSEM_XCHGADD_ALGORITHM=y
36CONFIG_ARCH_HAS_ILOG2_U32=y 41CONFIG_ARCH_HAS_ILOG2_U32=y
37CONFIG_GENERIC_HWEIGHT=y 42CONFIG_GENERIC_HWEIGHT=y
38CONFIG_GENERIC_CALIBRATE_DELAY=y
39CONFIG_GENERIC_FIND_NEXT_BIT=y 43CONFIG_GENERIC_FIND_NEXT_BIT=y
40# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
41CONFIG_PPC=y 45CONFIG_PPC=y
@@ -49,11 +53,15 @@ CONFIG_PPC_UDBG_16550=y
49# CONFIG_GENERIC_TBSYNC is not set 53# CONFIG_GENERIC_TBSYNC is not set
50CONFIG_AUDIT_ARCH=y 54CONFIG_AUDIT_ARCH=y
51CONFIG_GENERIC_BUG=y 55CONFIG_GENERIC_BUG=y
56CONFIG_DTC=y
52# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
53CONFIG_PPC_DCR_NATIVE=y 59CONFIG_PPC_DCR_NATIVE=y
54# CONFIG_PPC_DCR_MMIO is not set 60# CONFIG_PPC_DCR_MMIO is not set
55CONFIG_PPC_DCR=y 61CONFIG_PPC_DCR=y
62CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
56CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 63CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
64CONFIG_CONSTRUCTORS=y
57 65
58# 66#
59# General setup 67# General setup
@@ -67,9 +75,21 @@ CONFIG_SWAP=y
67CONFIG_SYSVIPC=y 75CONFIG_SYSVIPC=y
68CONFIG_SYSVIPC_SYSCTL=y 76CONFIG_SYSVIPC_SYSCTL=y
69CONFIG_POSIX_MQUEUE=y 77CONFIG_POSIX_MQUEUE=y
78CONFIG_POSIX_MQUEUE_SYSCTL=y
70# CONFIG_BSD_PROCESS_ACCT is not set 79# CONFIG_BSD_PROCESS_ACCT is not set
71# CONFIG_TASKSTATS is not set 80# CONFIG_TASKSTATS is not set
72# CONFIG_AUDIT is not set 81# CONFIG_AUDIT is not set
82
83#
84# RCU Subsystem
85#
86CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set
88# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set
92# CONFIG_TREE_RCU_TRACE is not set
73# CONFIG_IKCONFIG is not set 93# CONFIG_IKCONFIG is not set
74CONFIG_LOG_BUF_SHIFT=14 94CONFIG_LOG_BUF_SHIFT=14
75CONFIG_GROUP_SCHED=y 95CONFIG_GROUP_SCHED=y
@@ -84,31 +104,40 @@ CONFIG_SYSFS_DEPRECATED_V2=y
84# CONFIG_NAMESPACES is not set 104# CONFIG_NAMESPACES is not set
85CONFIG_BLK_DEV_INITRD=y 105CONFIG_BLK_DEV_INITRD=y
86CONFIG_INITRAMFS_SOURCE="" 106CONFIG_INITRAMFS_SOURCE=""
107CONFIG_RD_GZIP=y
108# CONFIG_RD_BZIP2 is not set
109# CONFIG_RD_LZMA is not set
87# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 110# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
88CONFIG_SYSCTL=y 111CONFIG_SYSCTL=y
112CONFIG_ANON_INODES=y
89CONFIG_EMBEDDED=y 113CONFIG_EMBEDDED=y
90CONFIG_SYSCTL_SYSCALL=y 114CONFIG_SYSCTL_SYSCALL=y
91CONFIG_KALLSYMS=y 115CONFIG_KALLSYMS=y
92CONFIG_KALLSYMS_ALL=y 116CONFIG_KALLSYMS_ALL=y
93CONFIG_KALLSYMS_STRIP_GENERATED=y
94CONFIG_KALLSYMS_EXTRA_PASS=y 117CONFIG_KALLSYMS_EXTRA_PASS=y
95CONFIG_HOTPLUG=y 118CONFIG_HOTPLUG=y
96CONFIG_PRINTK=y 119CONFIG_PRINTK=y
97CONFIG_BUG=y 120CONFIG_BUG=y
98CONFIG_ELF_CORE=y 121CONFIG_ELF_CORE=y
99CONFIG_COMPAT_BRK=y
100CONFIG_BASE_FULL=y 122CONFIG_BASE_FULL=y
101CONFIG_FUTEX=y 123CONFIG_FUTEX=y
102CONFIG_ANON_INODES=y
103CONFIG_EPOLL=y 124CONFIG_EPOLL=y
104CONFIG_SIGNALFD=y 125CONFIG_SIGNALFD=y
105CONFIG_TIMERFD=y 126CONFIG_TIMERFD=y
106CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
107CONFIG_SHMEM=y 128CONFIG_SHMEM=y
108CONFIG_AIO=y 129CONFIG_AIO=y
130CONFIG_HAVE_PERF_EVENTS=y
131
132#
133# Kernel Performance Events And Counters
134#
135# CONFIG_PERF_EVENTS is not set
136# CONFIG_PERF_COUNTERS is not set
109CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
110CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
111CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
140CONFIG_COMPAT_BRK=y
112# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
113CONFIG_SLUB=y 142CONFIG_SLUB=y
114# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
@@ -120,6 +149,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
120CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
121CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
122CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
154
155#
156# GCOV-based kernel profiling
157#
158# CONFIG_GCOV_KERNEL is not set
159# CONFIG_SLOW_WORK is not set
123# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 160# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
124CONFIG_SLABINFO=y 161CONFIG_SLABINFO=y
125CONFIG_RT_MUTEXES=y 162CONFIG_RT_MUTEXES=y
@@ -131,8 +168,7 @@ CONFIG_MODULE_UNLOAD=y
131# CONFIG_MODVERSIONS is not set 168# CONFIG_MODVERSIONS is not set
132# CONFIG_MODULE_SRCVERSION_ALL is not set 169# CONFIG_MODULE_SRCVERSION_ALL is not set
133CONFIG_BLOCK=y 170CONFIG_BLOCK=y
134CONFIG_LBD=y 171CONFIG_LBDAF=y
135# CONFIG_BLK_DEV_IO_TRACE is not set
136# CONFIG_BLK_DEV_BSG is not set 172# CONFIG_BLK_DEV_BSG is not set
137# CONFIG_BLK_DEV_INTEGRITY is not set 173# CONFIG_BLK_DEV_INTEGRITY is not set
138 174
@@ -140,19 +176,41 @@ CONFIG_LBD=y
140# IO Schedulers 176# IO Schedulers
141# 177#
142CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
143CONFIG_IOSCHED_AS=y
144CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
145CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
146CONFIG_DEFAULT_AS=y
147# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
148# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
149# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
150CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
151CONFIG_CLASSIC_RCU=y 185# CONFIG_INLINE_SPIN_TRYLOCK is not set
152# CONFIG_TREE_RCU is not set 186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
153# CONFIG_PREEMPT_RCU is not set 187# CONFIG_INLINE_SPIN_LOCK is not set
154# CONFIG_TREE_RCU_TRACE is not set 188# CONFIG_INLINE_SPIN_LOCK_BH is not set
155# CONFIG_PREEMPT_RCU_TRACE is not set 189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
156# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
157# CONFIG_PPC4xx_PCI_EXPRESS is not set 215# CONFIG_PPC4xx_PCI_EXPRESS is not set
158 216
@@ -166,6 +224,7 @@ CONFIG_CLASSIC_RCU=y
166# CONFIG_ACADIA is not set 224# CONFIG_ACADIA is not set
167CONFIG_EP405=y 225CONFIG_EP405=y
168# CONFIG_HCU4 is not set 226# CONFIG_HCU4 is not set
227# CONFIG_HOTFOOT is not set
169# CONFIG_KILAUEA is not set 228# CONFIG_KILAUEA is not set
170# CONFIG_MAKALU is not set 229# CONFIG_MAKALU is not set
171# CONFIG_WALNUT is not set 230# CONFIG_WALNUT is not set
@@ -210,10 +269,12 @@ CONFIG_BINFMT_ELF=y
210# CONFIG_BINFMT_MISC is not set 269# CONFIG_BINFMT_MISC is not set
211# CONFIG_MATH_EMULATION is not set 270# CONFIG_MATH_EMULATION is not set
212# CONFIG_IOMMU_HELPER is not set 271# CONFIG_IOMMU_HELPER is not set
213CONFIG_PPC_NEED_DMA_SYNC_OPS=y 272# CONFIG_SWIOTLB is not set
214CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 273CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
215CONFIG_ARCH_HAS_WALK_MEMORY=y 274CONFIG_ARCH_HAS_WALK_MEMORY=y
216CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 275CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
276CONFIG_SPARSE_IRQ=y
277CONFIG_MAX_ACTIVE_REGIONS=32
217CONFIG_ARCH_FLATMEM_ENABLE=y 278CONFIG_ARCH_FLATMEM_ENABLE=y
218CONFIG_ARCH_POPULATES_NODE_MAP=y 279CONFIG_ARCH_POPULATES_NODE_MAP=y
219CONFIG_SELECT_MEMORY_MODEL=y 280CONFIG_SELECT_MEMORY_MODEL=y
@@ -229,10 +290,12 @@ CONFIG_MIGRATION=y
229CONFIG_ZONE_DMA_FLAG=1 290CONFIG_ZONE_DMA_FLAG=1
230CONFIG_BOUNCE=y 291CONFIG_BOUNCE=y
231CONFIG_VIRT_TO_BUS=y 292CONFIG_VIRT_TO_BUS=y
232CONFIG_UNEVICTABLE_LRU=y 293# CONFIG_KSM is not set
294CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
233CONFIG_PPC_4K_PAGES=y 295CONFIG_PPC_4K_PAGES=y
234# CONFIG_PPC_16K_PAGES is not set 296# CONFIG_PPC_16K_PAGES is not set
235# CONFIG_PPC_64K_PAGES is not set 297# CONFIG_PPC_64K_PAGES is not set
298# CONFIG_PPC_256K_PAGES is not set
236CONFIG_FORCE_MAX_ZONEORDER=11 299CONFIG_FORCE_MAX_ZONEORDER=11
237CONFIG_PROC_DEVICETREE=y 300CONFIG_PROC_DEVICETREE=y
238# CONFIG_CMDLINE_BOOL is not set 301# CONFIG_CMDLINE_BOOL is not set
@@ -257,6 +320,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
257# CONFIG_PCI_LEGACY is not set 320# CONFIG_PCI_LEGACY is not set
258# CONFIG_PCI_DEBUG is not set 321# CONFIG_PCI_DEBUG is not set
259# CONFIG_PCI_STUB is not set 322# CONFIG_PCI_STUB is not set
323# CONFIG_PCI_IOV is not set
260# CONFIG_PCCARD is not set 324# CONFIG_PCCARD is not set
261# CONFIG_HOTPLUG_PCI is not set 325# CONFIG_HOTPLUG_PCI is not set
262# CONFIG_HAS_RAPIDIO is not set 326# CONFIG_HAS_RAPIDIO is not set
@@ -274,14 +338,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
274CONFIG_KERNEL_START=0xc0000000 338CONFIG_KERNEL_START=0xc0000000
275CONFIG_PHYSICAL_START=0x00000000 339CONFIG_PHYSICAL_START=0x00000000
276CONFIG_TASK_SIZE=0xc0000000 340CONFIG_TASK_SIZE=0xc0000000
277CONFIG_CONSISTENT_START=0xff100000
278CONFIG_CONSISTENT_SIZE=0x00200000 341CONFIG_CONSISTENT_SIZE=0x00200000
279CONFIG_NET=y 342CONFIG_NET=y
280 343
281# 344#
282# Networking options 345# Networking options
283# 346#
284CONFIG_COMPAT_NET_DEV_OPS=y
285CONFIG_PACKET=y 347CONFIG_PACKET=y
286# CONFIG_PACKET_MMAP is not set 348# CONFIG_PACKET_MMAP is not set
287CONFIG_UNIX=y 349CONFIG_UNIX=y
@@ -318,6 +380,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
318# CONFIG_NETFILTER is not set 380# CONFIG_NETFILTER is not set
319# CONFIG_IP_DCCP is not set 381# CONFIG_IP_DCCP is not set
320# CONFIG_IP_SCTP is not set 382# CONFIG_IP_SCTP is not set
383# CONFIG_RDS is not set
321# CONFIG_TIPC is not set 384# CONFIG_TIPC is not set
322# CONFIG_ATM is not set 385# CONFIG_ATM is not set
323# CONFIG_BRIDGE is not set 386# CONFIG_BRIDGE is not set
@@ -331,6 +394,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
331# CONFIG_LAPB is not set 394# CONFIG_LAPB is not set
332# CONFIG_ECONET is not set 395# CONFIG_ECONET is not set
333# CONFIG_WAN_ROUTER is not set 396# CONFIG_WAN_ROUTER is not set
397# CONFIG_PHONET is not set
398# CONFIG_IEEE802154 is not set
334# CONFIG_NET_SCHED is not set 399# CONFIG_NET_SCHED is not set
335# CONFIG_DCB is not set 400# CONFIG_DCB is not set
336 401
@@ -343,8 +408,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
343# CONFIG_IRDA is not set 408# CONFIG_IRDA is not set
344# CONFIG_BT is not set 409# CONFIG_BT is not set
345# CONFIG_AF_RXRPC is not set 410# CONFIG_AF_RXRPC is not set
346# CONFIG_PHONET is not set 411CONFIG_WIRELESS=y
347# CONFIG_WIRELESS is not set 412# CONFIG_CFG80211 is not set
413# CONFIG_LIB80211 is not set
414
415#
416# CFG80211 needs to be enabled for MAC80211
417#
348# CONFIG_WIMAX is not set 418# CONFIG_WIMAX is not set
349# CONFIG_RFKILL is not set 419# CONFIG_RFKILL is not set
350# CONFIG_NET_9P is not set 420# CONFIG_NET_9P is not set
@@ -357,6 +427,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
357# Generic Driver Options 427# Generic Driver Options
358# 428#
359CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 429CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
430# CONFIG_DEVTMPFS is not set
360CONFIG_STANDALONE=y 431CONFIG_STANDALONE=y
361CONFIG_PREVENT_FIRMWARE_BUILD=y 432CONFIG_PREVENT_FIRMWARE_BUILD=y
362CONFIG_FW_LOADER=y 433CONFIG_FW_LOADER=y
@@ -369,9 +440,9 @@ CONFIG_CONNECTOR=y
369CONFIG_PROC_EVENTS=y 440CONFIG_PROC_EVENTS=y
370CONFIG_MTD=y 441CONFIG_MTD=y
371# CONFIG_MTD_DEBUG is not set 442# CONFIG_MTD_DEBUG is not set
443# CONFIG_MTD_TESTS is not set
372# CONFIG_MTD_CONCAT is not set 444# CONFIG_MTD_CONCAT is not set
373CONFIG_MTD_PARTITIONS=y 445CONFIG_MTD_PARTITIONS=y
374# CONFIG_MTD_TESTS is not set
375# CONFIG_MTD_REDBOOT_PARTS is not set 446# CONFIG_MTD_REDBOOT_PARTS is not set
376CONFIG_MTD_CMDLINE_PARTS=y 447CONFIG_MTD_CMDLINE_PARTS=y
377CONFIG_MTD_OF_PARTS=y 448CONFIG_MTD_OF_PARTS=y
@@ -447,7 +518,6 @@ CONFIG_MTD_PHYSMAP_OF=y
447# LPDDR flash memory drivers 518# LPDDR flash memory drivers
448# 519#
449# CONFIG_MTD_LPDDR is not set 520# CONFIG_MTD_LPDDR is not set
450# CONFIG_MTD_QINFO_PROBE is not set
451 521
452# 522#
453# UBI - Unsorted block images 523# UBI - Unsorted block images
@@ -463,6 +533,7 @@ CONFIG_BLK_DEV=y
463# CONFIG_BLK_DEV_UMEM is not set 533# CONFIG_BLK_DEV_UMEM is not set
464# CONFIG_BLK_DEV_COW_COMMON is not set 534# CONFIG_BLK_DEV_COW_COMMON is not set
465# CONFIG_BLK_DEV_LOOP is not set 535# CONFIG_BLK_DEV_LOOP is not set
536# CONFIG_BLK_DEV_DRBD is not set
466# CONFIG_BLK_DEV_NBD is not set 537# CONFIG_BLK_DEV_NBD is not set
467# CONFIG_BLK_DEV_SX8 is not set 538# CONFIG_BLK_DEV_SX8 is not set
468# CONFIG_BLK_DEV_UB is not set 539# CONFIG_BLK_DEV_UB is not set
@@ -476,12 +547,17 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
476# CONFIG_BLK_DEV_HD is not set 547# CONFIG_BLK_DEV_HD is not set
477CONFIG_MISC_DEVICES=y 548CONFIG_MISC_DEVICES=y
478# CONFIG_PHANTOM is not set 549# CONFIG_PHANTOM is not set
479# CONFIG_EEPROM_93CX6 is not set
480# CONFIG_SGI_IOC4 is not set 550# CONFIG_SGI_IOC4 is not set
481# CONFIG_TIFM_CORE is not set 551# CONFIG_TIFM_CORE is not set
482# CONFIG_ENCLOSURE_SERVICES is not set 552# CONFIG_ENCLOSURE_SERVICES is not set
483# CONFIG_HP_ILO is not set 553# CONFIG_HP_ILO is not set
484# CONFIG_C2PORT is not set 554# CONFIG_C2PORT is not set
555
556#
557# EEPROM support
558#
559# CONFIG_EEPROM_93CX6 is not set
560# CONFIG_CB710_CORE is not set
485CONFIG_HAVE_IDE=y 561CONFIG_HAVE_IDE=y
486# CONFIG_IDE is not set 562# CONFIG_IDE is not set
487 563
@@ -501,7 +577,11 @@ CONFIG_HAVE_IDE=y
501# 577#
502 578
503# 579#
504# Enable only one of the two stacks, unless you know what you are doing 580# You can enable one or both FireWire driver stacks.
581#
582
583#
584# See the help texts for more information.
505# 585#
506# CONFIG_FIREWIRE is not set 586# CONFIG_FIREWIRE is not set
507# CONFIG_IEEE1394 is not set 587# CONFIG_IEEE1394 is not set
@@ -522,6 +602,8 @@ CONFIG_NET_ETHERNET=y
522# CONFIG_SUNGEM is not set 602# CONFIG_SUNGEM is not set
523# CONFIG_CASSINI is not set 603# CONFIG_CASSINI is not set
524# CONFIG_NET_VENDOR_3COM is not set 604# CONFIG_NET_VENDOR_3COM is not set
605# CONFIG_ETHOC is not set
606# CONFIG_DNET is not set
525# CONFIG_NET_TULIP is not set 607# CONFIG_NET_TULIP is not set
526# CONFIG_HP100 is not set 608# CONFIG_HP100 is not set
527CONFIG_IBM_NEW_EMAC=y 609CONFIG_IBM_NEW_EMAC=y
@@ -540,7 +622,10 @@ CONFIG_IBM_NEW_EMAC_ZMII=y
540# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 622# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
541# CONFIG_NET_PCI is not set 623# CONFIG_NET_PCI is not set
542# CONFIG_B44 is not set 624# CONFIG_B44 is not set
625# CONFIG_KS8842 is not set
626# CONFIG_KS8851_MLL is not set
543# CONFIG_ATL2 is not set 627# CONFIG_ATL2 is not set
628# CONFIG_XILINX_EMACLITE is not set
544CONFIG_NETDEV_1000=y 629CONFIG_NETDEV_1000=y
545# CONFIG_ACENIC is not set 630# CONFIG_ACENIC is not set
546# CONFIG_DL2K is not set 631# CONFIG_DL2K is not set
@@ -548,6 +633,7 @@ CONFIG_NETDEV_1000=y
548# CONFIG_E1000E is not set 633# CONFIG_E1000E is not set
549# CONFIG_IP1000 is not set 634# CONFIG_IP1000 is not set
550# CONFIG_IGB is not set 635# CONFIG_IGB is not set
636# CONFIG_IGBVF is not set
551# CONFIG_NS83820 is not set 637# CONFIG_NS83820 is not set
552# CONFIG_HAMACHI is not set 638# CONFIG_HAMACHI is not set
553# CONFIG_YELLOWFIN is not set 639# CONFIG_YELLOWFIN is not set
@@ -558,9 +644,13 @@ CONFIG_NETDEV_1000=y
558# CONFIG_VIA_VELOCITY is not set 644# CONFIG_VIA_VELOCITY is not set
559# CONFIG_TIGON3 is not set 645# CONFIG_TIGON3 is not set
560# CONFIG_BNX2 is not set 646# CONFIG_BNX2 is not set
647# CONFIG_CNIC is not set
648# CONFIG_MV643XX_ETH is not set
649# CONFIG_XILINX_LL_TEMAC is not set
561# CONFIG_QLA3XXX is not set 650# CONFIG_QLA3XXX is not set
562# CONFIG_ATL1 is not set 651# CONFIG_ATL1 is not set
563# CONFIG_ATL1E is not set 652# CONFIG_ATL1E is not set
653# CONFIG_ATL1C is not set
564# CONFIG_JME is not set 654# CONFIG_JME is not set
565CONFIG_NETDEV_10000=y 655CONFIG_NETDEV_10000=y
566# CONFIG_CHELSIO_T1 is not set 656# CONFIG_CHELSIO_T1 is not set
@@ -570,6 +660,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
570# CONFIG_IXGBE is not set 660# CONFIG_IXGBE is not set
571# CONFIG_IXGB is not set 661# CONFIG_IXGB is not set
572# CONFIG_S2IO is not set 662# CONFIG_S2IO is not set
663# CONFIG_VXGE is not set
573# CONFIG_MYRI10GE is not set 664# CONFIG_MYRI10GE is not set
574# CONFIG_NETXEN_NIC is not set 665# CONFIG_NETXEN_NIC is not set
575# CONFIG_NIU is not set 666# CONFIG_NIU is not set
@@ -579,14 +670,14 @@ CONFIG_CHELSIO_T3_DEPENDS=y
579# CONFIG_BNX2X is not set 670# CONFIG_BNX2X is not set
580# CONFIG_QLGE is not set 671# CONFIG_QLGE is not set
581# CONFIG_SFC is not set 672# CONFIG_SFC is not set
673# CONFIG_BE2NET is not set
582# CONFIG_TR is not set 674# CONFIG_TR is not set
583 675CONFIG_WLAN=y
584# 676# CONFIG_AIRO is not set
585# Wireless LAN 677# CONFIG_ATMEL is not set
586# 678# CONFIG_PRISM54 is not set
587# CONFIG_WLAN_PRE80211 is not set 679# CONFIG_USB_ZD1201 is not set
588# CONFIG_WLAN_80211 is not set 680# CONFIG_HOSTAP is not set
589# CONFIG_IWLWIFI_LEDS is not set
590 681
591# 682#
592# Enable WiMAX (Networking options) to see the WiMAX drivers 683# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -608,6 +699,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
608# CONFIG_NETCONSOLE is not set 699# CONFIG_NETCONSOLE is not set
609# CONFIG_NETPOLL is not set 700# CONFIG_NETPOLL is not set
610# CONFIG_NET_POLL_CONTROLLER is not set 701# CONFIG_NET_POLL_CONTROLLER is not set
702# CONFIG_VMXNET3 is not set
611# CONFIG_ISDN is not set 703# CONFIG_ISDN is not set
612# CONFIG_PHONE is not set 704# CONFIG_PHONE is not set
613 705
@@ -653,6 +745,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
653# CONFIG_SERIAL_JSM is not set 745# CONFIG_SERIAL_JSM is not set
654CONFIG_SERIAL_OF_PLATFORM=y 746CONFIG_SERIAL_OF_PLATFORM=y
655# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 747# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
748# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
656CONFIG_UNIX98_PTYS=y 749CONFIG_UNIX98_PTYS=y
657# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 750# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
658CONFIG_LEGACY_PTYS=y 751CONFIG_LEGACY_PTYS=y
@@ -669,6 +762,11 @@ CONFIG_LEGACY_PTY_COUNT=256
669CONFIG_DEVPORT=y 762CONFIG_DEVPORT=y
670# CONFIG_I2C is not set 763# CONFIG_I2C is not set
671# CONFIG_SPI is not set 764# CONFIG_SPI is not set
765
766#
767# PPS support
768#
769# CONFIG_PPS is not set
672CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 770CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
673# CONFIG_GPIOLIB is not set 771# CONFIG_GPIOLIB is not set
674# CONFIG_W1 is not set 772# CONFIG_W1 is not set
@@ -691,27 +789,13 @@ CONFIG_SSB_POSSIBLE=y
691# CONFIG_HTC_PASIC3 is not set 789# CONFIG_HTC_PASIC3 is not set
692# CONFIG_MFD_TMIO is not set 790# CONFIG_MFD_TMIO is not set
693# CONFIG_REGULATOR is not set 791# CONFIG_REGULATOR is not set
694 792# CONFIG_MEDIA_SUPPORT is not set
695#
696# Multimedia devices
697#
698
699#
700# Multimedia core support
701#
702# CONFIG_VIDEO_DEV is not set
703# CONFIG_DVB_CORE is not set
704# CONFIG_VIDEO_MEDIA is not set
705
706#
707# Multimedia drivers
708#
709# CONFIG_DAB is not set
710 793
711# 794#
712# Graphics support 795# Graphics support
713# 796#
714# CONFIG_AGP is not set 797# CONFIG_AGP is not set
798CONFIG_VGA_ARB=y
715# CONFIG_DRM is not set 799# CONFIG_DRM is not set
716# CONFIG_VGASTATE is not set 800# CONFIG_VGASTATE is not set
717CONFIG_VIDEO_OUTPUT_CONTROL=m 801CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -748,14 +832,16 @@ CONFIG_USB_MON=y
748# USB Host Controller Drivers 832# USB Host Controller Drivers
749# 833#
750# CONFIG_USB_C67X00_HCD is not set 834# CONFIG_USB_C67X00_HCD is not set
835# CONFIG_USB_XHCI_HCD is not set
751# CONFIG_USB_EHCI_HCD is not set 836# CONFIG_USB_EHCI_HCD is not set
752# CONFIG_USB_OXU210HP_HCD is not set 837# CONFIG_USB_OXU210HP_HCD is not set
753# CONFIG_USB_ISP116X_HCD is not set 838# CONFIG_USB_ISP116X_HCD is not set
754# CONFIG_USB_ISP1760_HCD is not set 839# CONFIG_USB_ISP1760_HCD is not set
840# CONFIG_USB_ISP1362_HCD is not set
755CONFIG_USB_OHCI_HCD=y 841CONFIG_USB_OHCI_HCD=y
756CONFIG_USB_OHCI_HCD_PPC_OF=y
757CONFIG_USB_OHCI_HCD_PPC_OF_BE=y 842CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
758CONFIG_USB_OHCI_HCD_PPC_OF_LE=y 843CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
844CONFIG_USB_OHCI_HCD_PPC_OF=y
759CONFIG_USB_OHCI_HCD_PCI=y 845CONFIG_USB_OHCI_HCD_PCI=y
760CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y 846CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y
761CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y 847CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
@@ -775,11 +861,11 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
775# CONFIG_USB_TMC is not set 861# CONFIG_USB_TMC is not set
776 862
777# 863#
778# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 864# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
779# 865#
780 866
781# 867#
782# see USB_STORAGE Help for more information 868# also be needed; see USB_STORAGE Help for more info
783# 869#
784# CONFIG_USB_LIBUSUAL is not set 870# CONFIG_USB_LIBUSUAL is not set
785 871
@@ -807,7 +893,6 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
807# CONFIG_USB_LED is not set 893# CONFIG_USB_LED is not set
808# CONFIG_USB_CYPRESS_CY7C63 is not set 894# CONFIG_USB_CYPRESS_CY7C63 is not set
809# CONFIG_USB_CYTHERM is not set 895# CONFIG_USB_CYTHERM is not set
810# CONFIG_USB_PHIDGET is not set
811# CONFIG_USB_IDMOUSE is not set 896# CONFIG_USB_IDMOUSE is not set
812# CONFIG_USB_FTDI_ELAN is not set 897# CONFIG_USB_FTDI_ELAN is not set
813# CONFIG_USB_APPLEDISPLAY is not set 898# CONFIG_USB_APPLEDISPLAY is not set
@@ -822,6 +907,7 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
822# 907#
823# OTG and related infrastructure 908# OTG and related infrastructure
824# 909#
910# CONFIG_NOP_USB_XCEIV is not set
825# CONFIG_UWB is not set 911# CONFIG_UWB is not set
826# CONFIG_MMC is not set 912# CONFIG_MMC is not set
827# CONFIG_MEMSTICK is not set 913# CONFIG_MEMSTICK is not set
@@ -831,7 +917,12 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
831# CONFIG_EDAC is not set 917# CONFIG_EDAC is not set
832# CONFIG_RTC_CLASS is not set 918# CONFIG_RTC_CLASS is not set
833# CONFIG_DMADEVICES is not set 919# CONFIG_DMADEVICES is not set
920# CONFIG_AUXDISPLAY is not set
834# CONFIG_UIO is not set 921# CONFIG_UIO is not set
922
923#
924# TI VLYNQ
925#
835# CONFIG_STAGING is not set 926# CONFIG_STAGING is not set
836 927
837# 928#
@@ -842,14 +933,17 @@ CONFIG_EXT2_FS=y
842# CONFIG_EXT2_FS_XIP is not set 933# CONFIG_EXT2_FS_XIP is not set
843# CONFIG_EXT3_FS is not set 934# CONFIG_EXT3_FS is not set
844# CONFIG_EXT4_FS is not set 935# CONFIG_EXT4_FS is not set
936CONFIG_EXT4_USE_FOR_EXT23=y
845# CONFIG_REISERFS_FS is not set 937# CONFIG_REISERFS_FS is not set
846# CONFIG_JFS_FS is not set 938# CONFIG_JFS_FS is not set
847# CONFIG_FS_POSIX_ACL is not set 939# CONFIG_FS_POSIX_ACL is not set
848CONFIG_FILE_LOCKING=y
849# CONFIG_XFS_FS is not set 940# CONFIG_XFS_FS is not set
850# CONFIG_GFS2_FS is not set 941# CONFIG_GFS2_FS is not set
851# CONFIG_OCFS2_FS is not set 942# CONFIG_OCFS2_FS is not set
852# CONFIG_BTRFS_FS is not set 943# CONFIG_BTRFS_FS is not set
944# CONFIG_NILFS2_FS is not set
945CONFIG_FILE_LOCKING=y
946CONFIG_FSNOTIFY=y
853CONFIG_DNOTIFY=y 947CONFIG_DNOTIFY=y
854CONFIG_INOTIFY=y 948CONFIG_INOTIFY=y
855CONFIG_INOTIFY_USER=y 949CONFIG_INOTIFY_USER=y
@@ -859,6 +953,11 @@ CONFIG_INOTIFY_USER=y
859# CONFIG_FUSE_FS is not set 953# CONFIG_FUSE_FS is not set
860 954
861# 955#
956# Caches
957#
958# CONFIG_FSCACHE is not set
959
960#
862# CD-ROM/DVD Filesystems 961# CD-ROM/DVD Filesystems
863# 962#
864# CONFIG_ISO9660_FS is not set 963# CONFIG_ISO9660_FS is not set
@@ -913,7 +1012,6 @@ CONFIG_LOCKD=y
913CONFIG_LOCKD_V4=y 1012CONFIG_LOCKD_V4=y
914CONFIG_NFS_COMMON=y 1013CONFIG_NFS_COMMON=y
915CONFIG_SUNRPC=y 1014CONFIG_SUNRPC=y
916# CONFIG_SUNRPC_REGISTER_V4 is not set
917# CONFIG_RPCSEC_GSS_KRB5 is not set 1015# CONFIG_RPCSEC_GSS_KRB5 is not set
918# CONFIG_RPCSEC_GSS_SPKM3 is not set 1016# CONFIG_RPCSEC_GSS_SPKM3 is not set
919# CONFIG_SMB_FS is not set 1017# CONFIG_SMB_FS is not set
@@ -927,8 +1025,48 @@ CONFIG_SUNRPC=y
927# 1025#
928# CONFIG_PARTITION_ADVANCED is not set 1026# CONFIG_PARTITION_ADVANCED is not set
929CONFIG_MSDOS_PARTITION=y 1027CONFIG_MSDOS_PARTITION=y
930# CONFIG_NLS is not set 1028CONFIG_NLS=y
1029CONFIG_NLS_DEFAULT="iso8859-1"
1030# CONFIG_NLS_CODEPAGE_437 is not set
1031# CONFIG_NLS_CODEPAGE_737 is not set
1032# CONFIG_NLS_CODEPAGE_775 is not set
1033# CONFIG_NLS_CODEPAGE_850 is not set
1034# CONFIG_NLS_CODEPAGE_852 is not set
1035# CONFIG_NLS_CODEPAGE_855 is not set
1036# CONFIG_NLS_CODEPAGE_857 is not set
1037# CONFIG_NLS_CODEPAGE_860 is not set
1038# CONFIG_NLS_CODEPAGE_861 is not set
1039# CONFIG_NLS_CODEPAGE_862 is not set
1040# CONFIG_NLS_CODEPAGE_863 is not set
1041# CONFIG_NLS_CODEPAGE_864 is not set
1042# CONFIG_NLS_CODEPAGE_865 is not set
1043# CONFIG_NLS_CODEPAGE_866 is not set
1044# CONFIG_NLS_CODEPAGE_869 is not set
1045# CONFIG_NLS_CODEPAGE_936 is not set
1046# CONFIG_NLS_CODEPAGE_950 is not set
1047# CONFIG_NLS_CODEPAGE_932 is not set
1048# CONFIG_NLS_CODEPAGE_949 is not set
1049# CONFIG_NLS_CODEPAGE_874 is not set
1050# CONFIG_NLS_ISO8859_8 is not set
1051# CONFIG_NLS_CODEPAGE_1250 is not set
1052# CONFIG_NLS_CODEPAGE_1251 is not set
1053# CONFIG_NLS_ASCII is not set
1054# CONFIG_NLS_ISO8859_1 is not set
1055# CONFIG_NLS_ISO8859_2 is not set
1056# CONFIG_NLS_ISO8859_3 is not set
1057# CONFIG_NLS_ISO8859_4 is not set
1058# CONFIG_NLS_ISO8859_5 is not set
1059# CONFIG_NLS_ISO8859_6 is not set
1060# CONFIG_NLS_ISO8859_7 is not set
1061# CONFIG_NLS_ISO8859_9 is not set
1062# CONFIG_NLS_ISO8859_13 is not set
1063# CONFIG_NLS_ISO8859_14 is not set
1064# CONFIG_NLS_ISO8859_15 is not set
1065# CONFIG_NLS_KOI8_R is not set
1066# CONFIG_NLS_KOI8_U is not set
1067# CONFIG_NLS_UTF8 is not set
931# CONFIG_DLM is not set 1068# CONFIG_DLM is not set
1069# CONFIG_BINARY_PRINTF is not set
932 1070
933# 1071#
934# Library routines 1072# Library routines
@@ -943,11 +1081,13 @@ CONFIG_CRC32=y
943# CONFIG_CRC7 is not set 1081# CONFIG_CRC7 is not set
944# CONFIG_LIBCRC32C is not set 1082# CONFIG_LIBCRC32C is not set
945CONFIG_ZLIB_INFLATE=y 1083CONFIG_ZLIB_INFLATE=y
946CONFIG_PLIST=y 1084CONFIG_DECOMPRESS_GZIP=y
947CONFIG_HAS_IOMEM=y 1085CONFIG_HAS_IOMEM=y
948CONFIG_HAS_IOPORT=y 1086CONFIG_HAS_IOPORT=y
949CONFIG_HAS_DMA=y 1087CONFIG_HAS_DMA=y
950CONFIG_HAVE_LMB=y 1088CONFIG_HAVE_LMB=y
1089CONFIG_NLATTR=y
1090CONFIG_GENERIC_ATOMIC64=y
951 1091
952# 1092#
953# Kernel hacking 1093# Kernel hacking
@@ -957,6 +1097,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
957CONFIG_ENABLE_MUST_CHECK=y 1097CONFIG_ENABLE_MUST_CHECK=y
958CONFIG_FRAME_WARN=1024 1098CONFIG_FRAME_WARN=1024
959CONFIG_MAGIC_SYSRQ=y 1099CONFIG_MAGIC_SYSRQ=y
1100# CONFIG_STRIP_ASM_SYMS is not set
960# CONFIG_UNUSED_SYMBOLS is not set 1101# CONFIG_UNUSED_SYMBOLS is not set
961CONFIG_DEBUG_FS=y 1102CONFIG_DEBUG_FS=y
962# CONFIG_HEADERS_CHECK is not set 1103# CONFIG_HEADERS_CHECK is not set
@@ -965,16 +1106,23 @@ CONFIG_DEBUG_KERNEL=y
965CONFIG_DETECT_SOFTLOCKUP=y 1106CONFIG_DETECT_SOFTLOCKUP=y
966# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 1107# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
967CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 1108CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1109CONFIG_DETECT_HUNG_TASK=y
1110# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
1111CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
968CONFIG_SCHED_DEBUG=y 1112CONFIG_SCHED_DEBUG=y
969# CONFIG_SCHEDSTATS is not set 1113# CONFIG_SCHEDSTATS is not set
970# CONFIG_TIMER_STATS is not set 1114# CONFIG_TIMER_STATS is not set
971# CONFIG_DEBUG_OBJECTS is not set 1115# CONFIG_DEBUG_OBJECTS is not set
972# CONFIG_SLUB_DEBUG_ON is not set 1116# CONFIG_SLUB_DEBUG_ON is not set
973# CONFIG_SLUB_STATS is not set 1117# CONFIG_SLUB_STATS is not set
1118# CONFIG_DEBUG_KMEMLEAK is not set
974# CONFIG_DEBUG_RT_MUTEXES is not set 1119# CONFIG_DEBUG_RT_MUTEXES is not set
975# CONFIG_RT_MUTEX_TESTER is not set 1120# CONFIG_RT_MUTEX_TESTER is not set
976# CONFIG_DEBUG_SPINLOCK is not set 1121# CONFIG_DEBUG_SPINLOCK is not set
977# CONFIG_DEBUG_MUTEXES is not set 1122# CONFIG_DEBUG_MUTEXES is not set
1123# CONFIG_DEBUG_LOCK_ALLOC is not set
1124# CONFIG_PROVE_LOCKING is not set
1125# CONFIG_LOCK_STAT is not set
978# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1126# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
979# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1127# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
980# CONFIG_DEBUG_KOBJECT is not set 1128# CONFIG_DEBUG_KOBJECT is not set
@@ -986,35 +1134,45 @@ CONFIG_DEBUG_BUGVERBOSE=y
986# CONFIG_DEBUG_LIST is not set 1134# CONFIG_DEBUG_LIST is not set
987# CONFIG_DEBUG_SG is not set 1135# CONFIG_DEBUG_SG is not set
988# CONFIG_DEBUG_NOTIFIERS is not set 1136# CONFIG_DEBUG_NOTIFIERS is not set
989# CONFIG_BOOT_PRINTK_DELAY is not set 1137# CONFIG_DEBUG_CREDENTIALS is not set
990# CONFIG_RCU_TORTURE_TEST is not set 1138# CONFIG_RCU_TORTURE_TEST is not set
991# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1139# CONFIG_RCU_CPU_STALL_DETECTOR is not set
992# CONFIG_BACKTRACE_SELF_TEST is not set 1140# CONFIG_BACKTRACE_SELF_TEST is not set
993# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1141# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1142# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
994# CONFIG_FAULT_INJECTION is not set 1143# CONFIG_FAULT_INJECTION is not set
995# CONFIG_LATENCYTOP is not set 1144# CONFIG_LATENCYTOP is not set
996CONFIG_SYSCTL_SYSCALL_CHECK=y 1145CONFIG_SYSCTL_SYSCALL_CHECK=y
1146# CONFIG_DEBUG_PAGEALLOC is not set
997CONFIG_HAVE_FUNCTION_TRACER=y 1147CONFIG_HAVE_FUNCTION_TRACER=y
1148CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
998CONFIG_HAVE_DYNAMIC_FTRACE=y 1149CONFIG_HAVE_DYNAMIC_FTRACE=y
999CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1150CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1000 1151CONFIG_TRACING_SUPPORT=y
1001# 1152CONFIG_FTRACE=y
1002# Tracers
1003#
1004# CONFIG_FUNCTION_TRACER is not set 1153# CONFIG_FUNCTION_TRACER is not set
1154# CONFIG_IRQSOFF_TRACER is not set
1005# CONFIG_SCHED_TRACER is not set 1155# CONFIG_SCHED_TRACER is not set
1006# CONFIG_CONTEXT_SWITCH_TRACER is not set 1156# CONFIG_ENABLE_DEFAULT_TRACERS is not set
1007# CONFIG_BOOT_TRACER is not set 1157# CONFIG_BOOT_TRACER is not set
1008# CONFIG_TRACE_BRANCH_PROFILING is not set 1158CONFIG_BRANCH_PROFILE_NONE=y
1159# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1160# CONFIG_PROFILE_ALL_BRANCHES is not set
1009# CONFIG_STACK_TRACER is not set 1161# CONFIG_STACK_TRACER is not set
1010# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1162# CONFIG_KMEMTRACE is not set
1163# CONFIG_WORKQUEUE_TRACER is not set
1164# CONFIG_BLK_DEV_IO_TRACE is not set
1165# CONFIG_DYNAMIC_DEBUG is not set
1166# CONFIG_DMA_API_DEBUG is not set
1011# CONFIG_SAMPLES is not set 1167# CONFIG_SAMPLES is not set
1012CONFIG_HAVE_ARCH_KGDB=y 1168CONFIG_HAVE_ARCH_KGDB=y
1013# CONFIG_KGDB is not set 1169# CONFIG_KGDB is not set
1170# CONFIG_PPC_DISABLE_WERROR is not set
1171CONFIG_PPC_WERROR=y
1014CONFIG_PRINT_STACK_DEPTH=64 1172CONFIG_PRINT_STACK_DEPTH=64
1015# CONFIG_DEBUG_STACKOVERFLOW is not set 1173# CONFIG_DEBUG_STACKOVERFLOW is not set
1016# CONFIG_DEBUG_STACK_USAGE is not set 1174# CONFIG_DEBUG_STACK_USAGE is not set
1017# CONFIG_DEBUG_PAGEALLOC is not set 1175# CONFIG_PPC_EMULATED_STATS is not set
1018# CONFIG_CODE_PATCHING_SELFTEST is not set 1176# CONFIG_CODE_PATCHING_SELFTEST is not set
1019# CONFIG_FTR_FIXUP_SELFTEST is not set 1177# CONFIG_FTR_FIXUP_SELFTEST is not set
1020# CONFIG_MSI_BITMAP_SELFTEST is not set 1178# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -1030,13 +1188,16 @@ CONFIG_PRINT_STACK_DEPTH=64
1030# CONFIG_KEYS is not set 1188# CONFIG_KEYS is not set
1031# CONFIG_SECURITY is not set 1189# CONFIG_SECURITY is not set
1032# CONFIG_SECURITYFS is not set 1190# CONFIG_SECURITYFS is not set
1033# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1191# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1192# CONFIG_DEFAULT_SECURITY_SMACK is not set
1193# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1194CONFIG_DEFAULT_SECURITY_DAC=y
1195CONFIG_DEFAULT_SECURITY=""
1034CONFIG_CRYPTO=y 1196CONFIG_CRYPTO=y
1035 1197
1036# 1198#
1037# Crypto core or helper 1199# Crypto core or helper
1038# 1200#
1039# CONFIG_CRYPTO_FIPS is not set
1040CONFIG_CRYPTO_ALGAPI=y 1201CONFIG_CRYPTO_ALGAPI=y
1041CONFIG_CRYPTO_ALGAPI2=y 1202CONFIG_CRYPTO_ALGAPI2=y
1042CONFIG_CRYPTO_AEAD2=y 1203CONFIG_CRYPTO_AEAD2=y
@@ -1045,10 +1206,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
1045CONFIG_CRYPTO_HASH=y 1206CONFIG_CRYPTO_HASH=y
1046CONFIG_CRYPTO_HASH2=y 1207CONFIG_CRYPTO_HASH2=y
1047CONFIG_CRYPTO_RNG2=y 1208CONFIG_CRYPTO_RNG2=y
1209CONFIG_CRYPTO_PCOMP=y
1048CONFIG_CRYPTO_MANAGER=y 1210CONFIG_CRYPTO_MANAGER=y
1049CONFIG_CRYPTO_MANAGER2=y 1211CONFIG_CRYPTO_MANAGER2=y
1050# CONFIG_CRYPTO_GF128MUL is not set 1212# CONFIG_CRYPTO_GF128MUL is not set
1051# CONFIG_CRYPTO_NULL is not set 1213# CONFIG_CRYPTO_NULL is not set
1214CONFIG_CRYPTO_WORKQUEUE=y
1052# CONFIG_CRYPTO_CRYPTD is not set 1215# CONFIG_CRYPTO_CRYPTD is not set
1053# CONFIG_CRYPTO_AUTHENC is not set 1216# CONFIG_CRYPTO_AUTHENC is not set
1054# CONFIG_CRYPTO_TEST is not set 1217# CONFIG_CRYPTO_TEST is not set
@@ -1076,11 +1239,13 @@ CONFIG_CRYPTO_PCBC=y
1076# 1239#
1077# CONFIG_CRYPTO_HMAC is not set 1240# CONFIG_CRYPTO_HMAC is not set
1078# CONFIG_CRYPTO_XCBC is not set 1241# CONFIG_CRYPTO_XCBC is not set
1242# CONFIG_CRYPTO_VMAC is not set
1079 1243
1080# 1244#
1081# Digest 1245# Digest
1082# 1246#
1083# CONFIG_CRYPTO_CRC32C is not set 1247# CONFIG_CRYPTO_CRC32C is not set
1248# CONFIG_CRYPTO_GHASH is not set
1084# CONFIG_CRYPTO_MD4 is not set 1249# CONFIG_CRYPTO_MD4 is not set
1085CONFIG_CRYPTO_MD5=y 1250CONFIG_CRYPTO_MD5=y
1086# CONFIG_CRYPTO_MICHAEL_MIC is not set 1251# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1117,6 +1282,7 @@ CONFIG_CRYPTO_DES=y
1117# Compression 1282# Compression
1118# 1283#
1119# CONFIG_CRYPTO_DEFLATE is not set 1284# CONFIG_CRYPTO_DEFLATE is not set
1285# CONFIG_CRYPTO_ZLIB is not set
1120# CONFIG_CRYPTO_LZO is not set 1286# CONFIG_CRYPTO_LZO is not set
1121 1287
1122# 1288#
@@ -1125,5 +1291,6 @@ CONFIG_CRYPTO_DES=y
1125# CONFIG_CRYPTO_ANSI_CPRNG is not set 1291# CONFIG_CRYPTO_ANSI_CPRNG is not set
1126CONFIG_CRYPTO_HW=y 1292CONFIG_CRYPTO_HW=y
1127# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1293# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1294# CONFIG_CRYPTO_DEV_PPC4XX is not set
1128# CONFIG_PPC_CLOCK is not set 1295# CONFIG_PPC_CLOCK is not set
1129# CONFIG_VIRTUALIZATION is not set 1296# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/40x/hcu4_defconfig b/arch/powerpc/configs/40x/hcu4_defconfig
index 8c019d79bf2a..f87ef0382280 100644
--- a/arch/powerpc/configs/40x/hcu4_defconfig
+++ b/arch/powerpc/configs/40x/hcu4_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:17:50 2009 4# Mon Jan 4 15:45:11 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14CONFIG_40x=y 14CONFIG_40x=y
@@ -16,6 +16,7 @@ CONFIG_40x=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_4xx=y 17CONFIG_4xx=y
18CONFIG_PPC_MMU_NOHASH=y 18CONFIG_PPC_MMU_NOHASH=y
19CONFIG_PPC_MMU_NOHASH_32=y
19# CONFIG_PPC_MM_SLICES is not set 20# CONFIG_PPC_MM_SLICES is not set
20CONFIG_NOT_COHERENT_CACHE=y 21CONFIG_NOT_COHERENT_CACHE=y
21CONFIG_PPC32=y 22CONFIG_PPC32=y
@@ -27,15 +28,18 @@ CONFIG_GENERIC_TIME=y
27CONFIG_GENERIC_TIME_VSYSCALL=y 28CONFIG_GENERIC_TIME_VSYSCALL=y
28CONFIG_GENERIC_CLOCKEVENTS=y 29CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
30# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
31CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
32CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
33CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
34CONFIG_LOCKDEP_SUPPORT=y 39CONFIG_LOCKDEP_SUPPORT=y
35CONFIG_RWSEM_XCHGADD_ALGORITHM=y 40CONFIG_RWSEM_XCHGADD_ALGORITHM=y
36CONFIG_ARCH_HAS_ILOG2_U32=y 41CONFIG_ARCH_HAS_ILOG2_U32=y
37CONFIG_GENERIC_HWEIGHT=y 42CONFIG_GENERIC_HWEIGHT=y
38CONFIG_GENERIC_CALIBRATE_DELAY=y
39CONFIG_GENERIC_FIND_NEXT_BIT=y 43CONFIG_GENERIC_FIND_NEXT_BIT=y
40# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
41CONFIG_PPC=y 45CONFIG_PPC=y
@@ -49,11 +53,15 @@ CONFIG_PPC_UDBG_16550=y
49# CONFIG_GENERIC_TBSYNC is not set 53# CONFIG_GENERIC_TBSYNC is not set
50CONFIG_AUDIT_ARCH=y 54CONFIG_AUDIT_ARCH=y
51CONFIG_GENERIC_BUG=y 55CONFIG_GENERIC_BUG=y
56CONFIG_DTC=y
52# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
53CONFIG_PPC_DCR_NATIVE=y 59CONFIG_PPC_DCR_NATIVE=y
54# CONFIG_PPC_DCR_MMIO is not set 60# CONFIG_PPC_DCR_MMIO is not set
55CONFIG_PPC_DCR=y 61CONFIG_PPC_DCR=y
62CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
56CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 63CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
64CONFIG_CONSTRUCTORS=y
57 65
58# 66#
59# General setup 67# General setup
@@ -67,9 +75,21 @@ CONFIG_SWAP=y
67CONFIG_SYSVIPC=y 75CONFIG_SYSVIPC=y
68CONFIG_SYSVIPC_SYSCTL=y 76CONFIG_SYSVIPC_SYSCTL=y
69CONFIG_POSIX_MQUEUE=y 77CONFIG_POSIX_MQUEUE=y
78CONFIG_POSIX_MQUEUE_SYSCTL=y
70# CONFIG_BSD_PROCESS_ACCT is not set 79# CONFIG_BSD_PROCESS_ACCT is not set
71# CONFIG_TASKSTATS is not set 80# CONFIG_TASKSTATS is not set
72# CONFIG_AUDIT is not set 81# CONFIG_AUDIT is not set
82
83#
84# RCU Subsystem
85#
86CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set
88# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set
92# CONFIG_TREE_RCU_TRACE is not set
73# CONFIG_IKCONFIG is not set 93# CONFIG_IKCONFIG is not set
74CONFIG_LOG_BUF_SHIFT=14 94CONFIG_LOG_BUF_SHIFT=14
75CONFIG_GROUP_SCHED=y 95CONFIG_GROUP_SCHED=y
@@ -84,31 +104,40 @@ CONFIG_SYSFS_DEPRECATED_V2=y
84# CONFIG_NAMESPACES is not set 104# CONFIG_NAMESPACES is not set
85CONFIG_BLK_DEV_INITRD=y 105CONFIG_BLK_DEV_INITRD=y
86CONFIG_INITRAMFS_SOURCE="" 106CONFIG_INITRAMFS_SOURCE=""
107CONFIG_RD_GZIP=y
108# CONFIG_RD_BZIP2 is not set
109# CONFIG_RD_LZMA is not set
87# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 110# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
88CONFIG_SYSCTL=y 111CONFIG_SYSCTL=y
112CONFIG_ANON_INODES=y
89CONFIG_EMBEDDED=y 113CONFIG_EMBEDDED=y
90CONFIG_SYSCTL_SYSCALL=y 114CONFIG_SYSCTL_SYSCALL=y
91CONFIG_KALLSYMS=y 115CONFIG_KALLSYMS=y
92CONFIG_KALLSYMS_ALL=y 116CONFIG_KALLSYMS_ALL=y
93CONFIG_KALLSYMS_STRIP_GENERATED=y
94CONFIG_KALLSYMS_EXTRA_PASS=y 117CONFIG_KALLSYMS_EXTRA_PASS=y
95CONFIG_HOTPLUG=y 118CONFIG_HOTPLUG=y
96CONFIG_PRINTK=y 119CONFIG_PRINTK=y
97CONFIG_BUG=y 120CONFIG_BUG=y
98CONFIG_ELF_CORE=y 121CONFIG_ELF_CORE=y
99CONFIG_COMPAT_BRK=y
100CONFIG_BASE_FULL=y 122CONFIG_BASE_FULL=y
101CONFIG_FUTEX=y 123CONFIG_FUTEX=y
102CONFIG_ANON_INODES=y
103CONFIG_EPOLL=y 124CONFIG_EPOLL=y
104CONFIG_SIGNALFD=y 125CONFIG_SIGNALFD=y
105CONFIG_TIMERFD=y 126CONFIG_TIMERFD=y
106CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
107CONFIG_SHMEM=y 128CONFIG_SHMEM=y
108CONFIG_AIO=y 129CONFIG_AIO=y
130CONFIG_HAVE_PERF_EVENTS=y
131
132#
133# Kernel Performance Events And Counters
134#
135# CONFIG_PERF_EVENTS is not set
136# CONFIG_PERF_COUNTERS is not set
109CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
110CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
111CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
140CONFIG_COMPAT_BRK=y
112# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
113CONFIG_SLUB=y 142CONFIG_SLUB=y
114# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
@@ -120,6 +149,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
120CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
121CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
122CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
154
155#
156# GCOV-based kernel profiling
157#
158# CONFIG_GCOV_KERNEL is not set
159# CONFIG_SLOW_WORK is not set
123# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 160# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
124CONFIG_SLABINFO=y 161CONFIG_SLABINFO=y
125CONFIG_RT_MUTEXES=y 162CONFIG_RT_MUTEXES=y
@@ -131,8 +168,7 @@ CONFIG_MODULE_UNLOAD=y
131# CONFIG_MODVERSIONS is not set 168# CONFIG_MODVERSIONS is not set
132# CONFIG_MODULE_SRCVERSION_ALL is not set 169# CONFIG_MODULE_SRCVERSION_ALL is not set
133CONFIG_BLOCK=y 170CONFIG_BLOCK=y
134CONFIG_LBD=y 171CONFIG_LBDAF=y
135# CONFIG_BLK_DEV_IO_TRACE is not set
136# CONFIG_BLK_DEV_BSG is not set 172# CONFIG_BLK_DEV_BSG is not set
137# CONFIG_BLK_DEV_INTEGRITY is not set 173# CONFIG_BLK_DEV_INTEGRITY is not set
138 174
@@ -140,19 +176,41 @@ CONFIG_LBD=y
140# IO Schedulers 176# IO Schedulers
141# 177#
142CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
143CONFIG_IOSCHED_AS=y
144CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
145CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
146CONFIG_DEFAULT_AS=y
147# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
148# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
149# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
150CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
151CONFIG_CLASSIC_RCU=y 185# CONFIG_INLINE_SPIN_TRYLOCK is not set
152# CONFIG_TREE_RCU is not set 186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
153# CONFIG_PREEMPT_RCU is not set 187# CONFIG_INLINE_SPIN_LOCK is not set
154# CONFIG_TREE_RCU_TRACE is not set 188# CONFIG_INLINE_SPIN_LOCK_BH is not set
155# CONFIG_PREEMPT_RCU_TRACE is not set 189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
156# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
157# CONFIG_PPC4xx_PCI_EXPRESS is not set 215# CONFIG_PPC4xx_PCI_EXPRESS is not set
158 216
@@ -166,6 +224,7 @@ CONFIG_CLASSIC_RCU=y
166# CONFIG_ACADIA is not set 224# CONFIG_ACADIA is not set
167# CONFIG_EP405 is not set 225# CONFIG_EP405 is not set
168CONFIG_HCU4=y 226CONFIG_HCU4=y
227# CONFIG_HOTFOOT is not set
169# CONFIG_KILAUEA is not set 228# CONFIG_KILAUEA is not set
170# CONFIG_MAKALU is not set 229# CONFIG_MAKALU is not set
171# CONFIG_WALNUT is not set 230# CONFIG_WALNUT is not set
@@ -208,10 +267,12 @@ CONFIG_BINFMT_ELF=y
208# CONFIG_BINFMT_MISC is not set 267# CONFIG_BINFMT_MISC is not set
209# CONFIG_MATH_EMULATION is not set 268# CONFIG_MATH_EMULATION is not set
210# CONFIG_IOMMU_HELPER is not set 269# CONFIG_IOMMU_HELPER is not set
211CONFIG_PPC_NEED_DMA_SYNC_OPS=y 270# CONFIG_SWIOTLB is not set
212CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 271CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
213CONFIG_ARCH_HAS_WALK_MEMORY=y 272CONFIG_ARCH_HAS_WALK_MEMORY=y
214CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 273CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
274CONFIG_SPARSE_IRQ=y
275CONFIG_MAX_ACTIVE_REGIONS=32
215CONFIG_ARCH_FLATMEM_ENABLE=y 276CONFIG_ARCH_FLATMEM_ENABLE=y
216CONFIG_ARCH_POPULATES_NODE_MAP=y 277CONFIG_ARCH_POPULATES_NODE_MAP=y
217CONFIG_SELECT_MEMORY_MODEL=y 278CONFIG_SELECT_MEMORY_MODEL=y
@@ -227,10 +288,12 @@ CONFIG_MIGRATION=y
227CONFIG_ZONE_DMA_FLAG=1 288CONFIG_ZONE_DMA_FLAG=1
228CONFIG_BOUNCE=y 289CONFIG_BOUNCE=y
229CONFIG_VIRT_TO_BUS=y 290CONFIG_VIRT_TO_BUS=y
230CONFIG_UNEVICTABLE_LRU=y 291# CONFIG_KSM is not set
292CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
231CONFIG_PPC_4K_PAGES=y 293CONFIG_PPC_4K_PAGES=y
232# CONFIG_PPC_16K_PAGES is not set 294# CONFIG_PPC_16K_PAGES is not set
233# CONFIG_PPC_64K_PAGES is not set 295# CONFIG_PPC_64K_PAGES is not set
296# CONFIG_PPC_256K_PAGES is not set
234CONFIG_FORCE_MAX_ZONEORDER=11 297CONFIG_FORCE_MAX_ZONEORDER=11
235CONFIG_PROC_DEVICETREE=y 298CONFIG_PROC_DEVICETREE=y
236# CONFIG_CMDLINE_BOOL is not set 299# CONFIG_CMDLINE_BOOL is not set
@@ -255,6 +318,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
255# CONFIG_PCI_LEGACY is not set 318# CONFIG_PCI_LEGACY is not set
256# CONFIG_PCI_DEBUG is not set 319# CONFIG_PCI_DEBUG is not set
257# CONFIG_PCI_STUB is not set 320# CONFIG_PCI_STUB is not set
321# CONFIG_PCI_IOV is not set
258# CONFIG_PCCARD is not set 322# CONFIG_PCCARD is not set
259# CONFIG_HOTPLUG_PCI is not set 323# CONFIG_HOTPLUG_PCI is not set
260# CONFIG_HAS_RAPIDIO is not set 324# CONFIG_HAS_RAPIDIO is not set
@@ -272,14 +336,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
272CONFIG_KERNEL_START=0xc0000000 336CONFIG_KERNEL_START=0xc0000000
273CONFIG_PHYSICAL_START=0x00000000 337CONFIG_PHYSICAL_START=0x00000000
274CONFIG_TASK_SIZE=0xc0000000 338CONFIG_TASK_SIZE=0xc0000000
275CONFIG_CONSISTENT_START=0xff100000
276CONFIG_CONSISTENT_SIZE=0x00200000 339CONFIG_CONSISTENT_SIZE=0x00200000
277CONFIG_NET=y 340CONFIG_NET=y
278 341
279# 342#
280# Networking options 343# Networking options
281# 344#
282CONFIG_COMPAT_NET_DEV_OPS=y
283CONFIG_PACKET=y 345CONFIG_PACKET=y
284# CONFIG_PACKET_MMAP is not set 346# CONFIG_PACKET_MMAP is not set
285CONFIG_UNIX=y 347CONFIG_UNIX=y
@@ -316,6 +378,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
316# CONFIG_NETFILTER is not set 378# CONFIG_NETFILTER is not set
317# CONFIG_IP_DCCP is not set 379# CONFIG_IP_DCCP is not set
318# CONFIG_IP_SCTP is not set 380# CONFIG_IP_SCTP is not set
381# CONFIG_RDS is not set
319# CONFIG_TIPC is not set 382# CONFIG_TIPC is not set
320# CONFIG_ATM is not set 383# CONFIG_ATM is not set
321# CONFIG_BRIDGE is not set 384# CONFIG_BRIDGE is not set
@@ -329,6 +392,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
329# CONFIG_LAPB is not set 392# CONFIG_LAPB is not set
330# CONFIG_ECONET is not set 393# CONFIG_ECONET is not set
331# CONFIG_WAN_ROUTER is not set 394# CONFIG_WAN_ROUTER is not set
395# CONFIG_PHONET is not set
396# CONFIG_IEEE802154 is not set
332# CONFIG_NET_SCHED is not set 397# CONFIG_NET_SCHED is not set
333# CONFIG_DCB is not set 398# CONFIG_DCB is not set
334 399
@@ -341,8 +406,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
341# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
342# CONFIG_BT is not set 407# CONFIG_BT is not set
343# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
344# CONFIG_PHONET is not set 409CONFIG_WIRELESS=y
345# CONFIG_WIRELESS is not set 410# CONFIG_CFG80211 is not set
411# CONFIG_LIB80211 is not set
412
413#
414# CFG80211 needs to be enabled for MAC80211
415#
346# CONFIG_WIMAX is not set 416# CONFIG_WIMAX is not set
347# CONFIG_RFKILL is not set 417# CONFIG_RFKILL is not set
348# CONFIG_NET_9P is not set 418# CONFIG_NET_9P is not set
@@ -355,6 +425,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
355# Generic Driver Options 425# Generic Driver Options
356# 426#
357CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 427CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
428# CONFIG_DEVTMPFS is not set
358CONFIG_STANDALONE=y 429CONFIG_STANDALONE=y
359CONFIG_PREVENT_FIRMWARE_BUILD=y 430CONFIG_PREVENT_FIRMWARE_BUILD=y
360CONFIG_FW_LOADER=y 431CONFIG_FW_LOADER=y
@@ -367,9 +438,9 @@ CONFIG_CONNECTOR=y
367CONFIG_PROC_EVENTS=y 438CONFIG_PROC_EVENTS=y
368CONFIG_MTD=y 439CONFIG_MTD=y
369# CONFIG_MTD_DEBUG is not set 440# CONFIG_MTD_DEBUG is not set
441# CONFIG_MTD_TESTS is not set
370# CONFIG_MTD_CONCAT is not set 442# CONFIG_MTD_CONCAT is not set
371CONFIG_MTD_PARTITIONS=y 443CONFIG_MTD_PARTITIONS=y
372# CONFIG_MTD_TESTS is not set
373# CONFIG_MTD_REDBOOT_PARTS is not set 444# CONFIG_MTD_REDBOOT_PARTS is not set
374CONFIG_MTD_CMDLINE_PARTS=y 445CONFIG_MTD_CMDLINE_PARTS=y
375CONFIG_MTD_OF_PARTS=y 446CONFIG_MTD_OF_PARTS=y
@@ -445,7 +516,6 @@ CONFIG_MTD_PHYSMAP_OF=y
445# LPDDR flash memory drivers 516# LPDDR flash memory drivers
446# 517#
447# CONFIG_MTD_LPDDR is not set 518# CONFIG_MTD_LPDDR is not set
448# CONFIG_MTD_QINFO_PROBE is not set
449 519
450# 520#
451# UBI - Unsorted block images 521# UBI - Unsorted block images
@@ -461,6 +531,7 @@ CONFIG_BLK_DEV=y
461# CONFIG_BLK_DEV_UMEM is not set 531# CONFIG_BLK_DEV_UMEM is not set
462# CONFIG_BLK_DEV_COW_COMMON is not set 532# CONFIG_BLK_DEV_COW_COMMON is not set
463# CONFIG_BLK_DEV_LOOP is not set 533# CONFIG_BLK_DEV_LOOP is not set
534# CONFIG_BLK_DEV_DRBD is not set
464# CONFIG_BLK_DEV_NBD is not set 535# CONFIG_BLK_DEV_NBD is not set
465# CONFIG_BLK_DEV_SX8 is not set 536# CONFIG_BLK_DEV_SX8 is not set
466CONFIG_BLK_DEV_RAM=y 537CONFIG_BLK_DEV_RAM=y
@@ -473,12 +544,17 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
473# CONFIG_BLK_DEV_HD is not set 544# CONFIG_BLK_DEV_HD is not set
474CONFIG_MISC_DEVICES=y 545CONFIG_MISC_DEVICES=y
475# CONFIG_PHANTOM is not set 546# CONFIG_PHANTOM is not set
476# CONFIG_EEPROM_93CX6 is not set
477# CONFIG_SGI_IOC4 is not set 547# CONFIG_SGI_IOC4 is not set
478# CONFIG_TIFM_CORE is not set 548# CONFIG_TIFM_CORE is not set
479# CONFIG_ENCLOSURE_SERVICES is not set 549# CONFIG_ENCLOSURE_SERVICES is not set
480# CONFIG_HP_ILO is not set 550# CONFIG_HP_ILO is not set
481# CONFIG_C2PORT is not set 551# CONFIG_C2PORT is not set
552
553#
554# EEPROM support
555#
556# CONFIG_EEPROM_93CX6 is not set
557# CONFIG_CB710_CORE is not set
482CONFIG_HAVE_IDE=y 558CONFIG_HAVE_IDE=y
483# CONFIG_IDE is not set 559# CONFIG_IDE is not set
484 560
@@ -498,7 +574,11 @@ CONFIG_HAVE_IDE=y
498# 574#
499 575
500# 576#
501# Enable only one of the two stacks, unless you know what you are doing 577# You can enable one or both FireWire driver stacks.
578#
579
580#
581# See the help texts for more information.
502# 582#
503# CONFIG_FIREWIRE is not set 583# CONFIG_FIREWIRE is not set
504# CONFIG_IEEE1394 is not set 584# CONFIG_IEEE1394 is not set
@@ -519,6 +599,8 @@ CONFIG_NET_ETHERNET=y
519# CONFIG_SUNGEM is not set 599# CONFIG_SUNGEM is not set
520# CONFIG_CASSINI is not set 600# CONFIG_CASSINI is not set
521# CONFIG_NET_VENDOR_3COM is not set 601# CONFIG_NET_VENDOR_3COM is not set
602# CONFIG_ETHOC is not set
603# CONFIG_DNET is not set
522# CONFIG_NET_TULIP is not set 604# CONFIG_NET_TULIP is not set
523# CONFIG_HP100 is not set 605# CONFIG_HP100 is not set
524CONFIG_IBM_NEW_EMAC=y 606CONFIG_IBM_NEW_EMAC=y
@@ -537,7 +619,10 @@ CONFIG_IBM_NEW_EMAC_RX_SKB_HEADROOM=0
537# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 619# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
538# CONFIG_NET_PCI is not set 620# CONFIG_NET_PCI is not set
539# CONFIG_B44 is not set 621# CONFIG_B44 is not set
622# CONFIG_KS8842 is not set
623# CONFIG_KS8851_MLL is not set
540# CONFIG_ATL2 is not set 624# CONFIG_ATL2 is not set
625# CONFIG_XILINX_EMACLITE is not set
541CONFIG_NETDEV_1000=y 626CONFIG_NETDEV_1000=y
542# CONFIG_ACENIC is not set 627# CONFIG_ACENIC is not set
543# CONFIG_DL2K is not set 628# CONFIG_DL2K is not set
@@ -545,6 +630,7 @@ CONFIG_NETDEV_1000=y
545# CONFIG_E1000E is not set 630# CONFIG_E1000E is not set
546# CONFIG_IP1000 is not set 631# CONFIG_IP1000 is not set
547# CONFIG_IGB is not set 632# CONFIG_IGB is not set
633# CONFIG_IGBVF is not set
548# CONFIG_NS83820 is not set 634# CONFIG_NS83820 is not set
549# CONFIG_HAMACHI is not set 635# CONFIG_HAMACHI is not set
550# CONFIG_YELLOWFIN is not set 636# CONFIG_YELLOWFIN is not set
@@ -555,9 +641,13 @@ CONFIG_NETDEV_1000=y
555# CONFIG_VIA_VELOCITY is not set 641# CONFIG_VIA_VELOCITY is not set
556# CONFIG_TIGON3 is not set 642# CONFIG_TIGON3 is not set
557# CONFIG_BNX2 is not set 643# CONFIG_BNX2 is not set
644# CONFIG_CNIC is not set
645# CONFIG_MV643XX_ETH is not set
646# CONFIG_XILINX_LL_TEMAC is not set
558# CONFIG_QLA3XXX is not set 647# CONFIG_QLA3XXX is not set
559# CONFIG_ATL1 is not set 648# CONFIG_ATL1 is not set
560# CONFIG_ATL1E is not set 649# CONFIG_ATL1E is not set
650# CONFIG_ATL1C is not set
561# CONFIG_JME is not set 651# CONFIG_JME is not set
562CONFIG_NETDEV_10000=y 652CONFIG_NETDEV_10000=y
563# CONFIG_CHELSIO_T1 is not set 653# CONFIG_CHELSIO_T1 is not set
@@ -567,6 +657,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
567# CONFIG_IXGBE is not set 657# CONFIG_IXGBE is not set
568# CONFIG_IXGB is not set 658# CONFIG_IXGB is not set
569# CONFIG_S2IO is not set 659# CONFIG_S2IO is not set
660# CONFIG_VXGE is not set
570# CONFIG_MYRI10GE is not set 661# CONFIG_MYRI10GE is not set
571# CONFIG_NETXEN_NIC is not set 662# CONFIG_NETXEN_NIC is not set
572# CONFIG_NIU is not set 663# CONFIG_NIU is not set
@@ -576,14 +667,13 @@ CONFIG_CHELSIO_T3_DEPENDS=y
576# CONFIG_BNX2X is not set 667# CONFIG_BNX2X is not set
577# CONFIG_QLGE is not set 668# CONFIG_QLGE is not set
578# CONFIG_SFC is not set 669# CONFIG_SFC is not set
670# CONFIG_BE2NET is not set
579# CONFIG_TR is not set 671# CONFIG_TR is not set
580 672CONFIG_WLAN=y
581# 673# CONFIG_AIRO is not set
582# Wireless LAN 674# CONFIG_ATMEL is not set
583# 675# CONFIG_PRISM54 is not set
584# CONFIG_WLAN_PRE80211 is not set 676# CONFIG_HOSTAP is not set
585# CONFIG_WLAN_80211 is not set
586# CONFIG_IWLWIFI_LEDS is not set
587 677
588# 678#
589# Enable WiMAX (Networking options) to see the WiMAX drivers 679# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -596,6 +686,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
596# CONFIG_NETCONSOLE is not set 686# CONFIG_NETCONSOLE is not set
597# CONFIG_NETPOLL is not set 687# CONFIG_NETPOLL is not set
598# CONFIG_NET_POLL_CONTROLLER is not set 688# CONFIG_NET_POLL_CONTROLLER is not set
689# CONFIG_VMXNET3 is not set
599# CONFIG_ISDN is not set 690# CONFIG_ISDN is not set
600# CONFIG_PHONE is not set 691# CONFIG_PHONE is not set
601 692
@@ -641,6 +732,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
641# CONFIG_SERIAL_JSM is not set 732# CONFIG_SERIAL_JSM is not set
642CONFIG_SERIAL_OF_PLATFORM=y 733CONFIG_SERIAL_OF_PLATFORM=y
643# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 734# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
735# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
644CONFIG_UNIX98_PTYS=y 736CONFIG_UNIX98_PTYS=y
645# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 737# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
646CONFIG_LEGACY_PTYS=y 738CONFIG_LEGACY_PTYS=y
@@ -657,13 +749,17 @@ CONFIG_LEGACY_PTY_COUNT=256
657CONFIG_DEVPORT=y 749CONFIG_DEVPORT=y
658# CONFIG_I2C is not set 750# CONFIG_I2C is not set
659# CONFIG_SPI is not set 751# CONFIG_SPI is not set
752
753#
754# PPS support
755#
756# CONFIG_PPS is not set
660CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 757CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
661# CONFIG_GPIOLIB is not set 758# CONFIG_GPIOLIB is not set
662# CONFIG_W1 is not set 759# CONFIG_W1 is not set
663# CONFIG_POWER_SUPPLY is not set 760# CONFIG_POWER_SUPPLY is not set
664# CONFIG_HWMON is not set 761# CONFIG_HWMON is not set
665# CONFIG_THERMAL is not set 762# CONFIG_THERMAL is not set
666# CONFIG_THERMAL_HWMON is not set
667# CONFIG_WATCHDOG is not set 763# CONFIG_WATCHDOG is not set
668CONFIG_SSB_POSSIBLE=y 764CONFIG_SSB_POSSIBLE=y
669 765
@@ -680,27 +776,13 @@ CONFIG_SSB_POSSIBLE=y
680# CONFIG_HTC_PASIC3 is not set 776# CONFIG_HTC_PASIC3 is not set
681# CONFIG_MFD_TMIO is not set 777# CONFIG_MFD_TMIO is not set
682# CONFIG_REGULATOR is not set 778# CONFIG_REGULATOR is not set
683 779# CONFIG_MEDIA_SUPPORT is not set
684#
685# Multimedia devices
686#
687
688#
689# Multimedia core support
690#
691# CONFIG_VIDEO_DEV is not set
692# CONFIG_DVB_CORE is not set
693# CONFIG_VIDEO_MEDIA is not set
694
695#
696# Multimedia drivers
697#
698# CONFIG_DAB is not set
699 780
700# 781#
701# Graphics support 782# Graphics support
702# 783#
703# CONFIG_AGP is not set 784# CONFIG_AGP is not set
785CONFIG_VGA_ARB=y
704# CONFIG_DRM is not set 786# CONFIG_DRM is not set
705# CONFIG_VGASTATE is not set 787# CONFIG_VGASTATE is not set
706CONFIG_VIDEO_OUTPUT_CONTROL=m 788CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -722,7 +804,12 @@ CONFIG_VIDEO_OUTPUT_CONTROL=m
722# CONFIG_EDAC is not set 804# CONFIG_EDAC is not set
723# CONFIG_RTC_CLASS is not set 805# CONFIG_RTC_CLASS is not set
724# CONFIG_DMADEVICES is not set 806# CONFIG_DMADEVICES is not set
807# CONFIG_AUXDISPLAY is not set
725# CONFIG_UIO is not set 808# CONFIG_UIO is not set
809
810#
811# TI VLYNQ
812#
726# CONFIG_STAGING is not set 813# CONFIG_STAGING is not set
727 814
728# 815#
@@ -733,14 +820,17 @@ CONFIG_EXT2_FS=y
733# CONFIG_EXT2_FS_XIP is not set 820# CONFIG_EXT2_FS_XIP is not set
734# CONFIG_EXT3_FS is not set 821# CONFIG_EXT3_FS is not set
735# CONFIG_EXT4_FS is not set 822# CONFIG_EXT4_FS is not set
823CONFIG_EXT4_USE_FOR_EXT23=y
736# CONFIG_REISERFS_FS is not set 824# CONFIG_REISERFS_FS is not set
737# CONFIG_JFS_FS is not set 825# CONFIG_JFS_FS is not set
738# CONFIG_FS_POSIX_ACL is not set 826# CONFIG_FS_POSIX_ACL is not set
739CONFIG_FILE_LOCKING=y
740# CONFIG_XFS_FS is not set 827# CONFIG_XFS_FS is not set
741# CONFIG_GFS2_FS is not set 828# CONFIG_GFS2_FS is not set
742# CONFIG_OCFS2_FS is not set 829# CONFIG_OCFS2_FS is not set
743# CONFIG_BTRFS_FS is not set 830# CONFIG_BTRFS_FS is not set
831# CONFIG_NILFS2_FS is not set
832CONFIG_FILE_LOCKING=y
833CONFIG_FSNOTIFY=y
744CONFIG_DNOTIFY=y 834CONFIG_DNOTIFY=y
745CONFIG_INOTIFY=y 835CONFIG_INOTIFY=y
746CONFIG_INOTIFY_USER=y 836CONFIG_INOTIFY_USER=y
@@ -750,6 +840,11 @@ CONFIG_INOTIFY_USER=y
750# CONFIG_FUSE_FS is not set 840# CONFIG_FUSE_FS is not set
751 841
752# 842#
843# Caches
844#
845# CONFIG_FSCACHE is not set
846
847#
753# CD-ROM/DVD Filesystems 848# CD-ROM/DVD Filesystems
754# 849#
755# CONFIG_ISO9660_FS is not set 850# CONFIG_ISO9660_FS is not set
@@ -804,7 +899,6 @@ CONFIG_LOCKD=y
804CONFIG_LOCKD_V4=y 899CONFIG_LOCKD_V4=y
805CONFIG_NFS_COMMON=y 900CONFIG_NFS_COMMON=y
806CONFIG_SUNRPC=y 901CONFIG_SUNRPC=y
807# CONFIG_SUNRPC_REGISTER_V4 is not set
808# CONFIG_RPCSEC_GSS_KRB5 is not set 902# CONFIG_RPCSEC_GSS_KRB5 is not set
809# CONFIG_RPCSEC_GSS_SPKM3 is not set 903# CONFIG_RPCSEC_GSS_SPKM3 is not set
810# CONFIG_SMB_FS is not set 904# CONFIG_SMB_FS is not set
@@ -820,6 +914,7 @@ CONFIG_SUNRPC=y
820CONFIG_MSDOS_PARTITION=y 914CONFIG_MSDOS_PARTITION=y
821# CONFIG_NLS is not set 915# CONFIG_NLS is not set
822# CONFIG_DLM is not set 916# CONFIG_DLM is not set
917# CONFIG_BINARY_PRINTF is not set
823 918
824# 919#
825# Library routines 920# Library routines
@@ -834,11 +929,13 @@ CONFIG_CRC32=y
834# CONFIG_CRC7 is not set 929# CONFIG_CRC7 is not set
835# CONFIG_LIBCRC32C is not set 930# CONFIG_LIBCRC32C is not set
836CONFIG_ZLIB_INFLATE=y 931CONFIG_ZLIB_INFLATE=y
837CONFIG_PLIST=y 932CONFIG_DECOMPRESS_GZIP=y
838CONFIG_HAS_IOMEM=y 933CONFIG_HAS_IOMEM=y
839CONFIG_HAS_IOPORT=y 934CONFIG_HAS_IOPORT=y
840CONFIG_HAS_DMA=y 935CONFIG_HAS_DMA=y
841CONFIG_HAVE_LMB=y 936CONFIG_HAVE_LMB=y
937CONFIG_NLATTR=y
938CONFIG_GENERIC_ATOMIC64=y
842 939
843# 940#
844# Kernel hacking 941# Kernel hacking
@@ -848,6 +945,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
848CONFIG_ENABLE_MUST_CHECK=y 945CONFIG_ENABLE_MUST_CHECK=y
849CONFIG_FRAME_WARN=1024 946CONFIG_FRAME_WARN=1024
850CONFIG_MAGIC_SYSRQ=y 947CONFIG_MAGIC_SYSRQ=y
948# CONFIG_STRIP_ASM_SYMS is not set
851# CONFIG_UNUSED_SYMBOLS is not set 949# CONFIG_UNUSED_SYMBOLS is not set
852CONFIG_DEBUG_FS=y 950CONFIG_DEBUG_FS=y
853# CONFIG_HEADERS_CHECK is not set 951# CONFIG_HEADERS_CHECK is not set
@@ -856,16 +954,23 @@ CONFIG_DEBUG_KERNEL=y
856CONFIG_DETECT_SOFTLOCKUP=y 954CONFIG_DETECT_SOFTLOCKUP=y
857# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 955# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
858CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 956CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
957CONFIG_DETECT_HUNG_TASK=y
958# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
959CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
859CONFIG_SCHED_DEBUG=y 960CONFIG_SCHED_DEBUG=y
860# CONFIG_SCHEDSTATS is not set 961# CONFIG_SCHEDSTATS is not set
861# CONFIG_TIMER_STATS is not set 962# CONFIG_TIMER_STATS is not set
862# CONFIG_DEBUG_OBJECTS is not set 963# CONFIG_DEBUG_OBJECTS is not set
863# CONFIG_SLUB_DEBUG_ON is not set 964# CONFIG_SLUB_DEBUG_ON is not set
864# CONFIG_SLUB_STATS is not set 965# CONFIG_SLUB_STATS is not set
966# CONFIG_DEBUG_KMEMLEAK is not set
865# CONFIG_DEBUG_RT_MUTEXES is not set 967# CONFIG_DEBUG_RT_MUTEXES is not set
866# CONFIG_RT_MUTEX_TESTER is not set 968# CONFIG_RT_MUTEX_TESTER is not set
867# CONFIG_DEBUG_SPINLOCK is not set 969# CONFIG_DEBUG_SPINLOCK is not set
868# CONFIG_DEBUG_MUTEXES is not set 970# CONFIG_DEBUG_MUTEXES is not set
971# CONFIG_DEBUG_LOCK_ALLOC is not set
972# CONFIG_PROVE_LOCKING is not set
973# CONFIG_LOCK_STAT is not set
869# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 974# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
870# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 975# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
871# CONFIG_DEBUG_KOBJECT is not set 976# CONFIG_DEBUG_KOBJECT is not set
@@ -877,35 +982,45 @@ CONFIG_DEBUG_BUGVERBOSE=y
877# CONFIG_DEBUG_LIST is not set 982# CONFIG_DEBUG_LIST is not set
878# CONFIG_DEBUG_SG is not set 983# CONFIG_DEBUG_SG is not set
879# CONFIG_DEBUG_NOTIFIERS is not set 984# CONFIG_DEBUG_NOTIFIERS is not set
880# CONFIG_BOOT_PRINTK_DELAY is not set 985# CONFIG_DEBUG_CREDENTIALS is not set
881# CONFIG_RCU_TORTURE_TEST is not set 986# CONFIG_RCU_TORTURE_TEST is not set
882# CONFIG_RCU_CPU_STALL_DETECTOR is not set 987# CONFIG_RCU_CPU_STALL_DETECTOR is not set
883# CONFIG_BACKTRACE_SELF_TEST is not set 988# CONFIG_BACKTRACE_SELF_TEST is not set
884# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 989# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
990# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
885# CONFIG_FAULT_INJECTION is not set 991# CONFIG_FAULT_INJECTION is not set
886# CONFIG_LATENCYTOP is not set 992# CONFIG_LATENCYTOP is not set
887CONFIG_SYSCTL_SYSCALL_CHECK=y 993CONFIG_SYSCTL_SYSCALL_CHECK=y
994# CONFIG_DEBUG_PAGEALLOC is not set
888CONFIG_HAVE_FUNCTION_TRACER=y 995CONFIG_HAVE_FUNCTION_TRACER=y
996CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
889CONFIG_HAVE_DYNAMIC_FTRACE=y 997CONFIG_HAVE_DYNAMIC_FTRACE=y
890CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 998CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
891 999CONFIG_TRACING_SUPPORT=y
892# 1000CONFIG_FTRACE=y
893# Tracers
894#
895# CONFIG_FUNCTION_TRACER is not set 1001# CONFIG_FUNCTION_TRACER is not set
1002# CONFIG_IRQSOFF_TRACER is not set
896# CONFIG_SCHED_TRACER is not set 1003# CONFIG_SCHED_TRACER is not set
897# CONFIG_CONTEXT_SWITCH_TRACER is not set 1004# CONFIG_ENABLE_DEFAULT_TRACERS is not set
898# CONFIG_BOOT_TRACER is not set 1005# CONFIG_BOOT_TRACER is not set
899# CONFIG_TRACE_BRANCH_PROFILING is not set 1006CONFIG_BRANCH_PROFILE_NONE=y
1007# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1008# CONFIG_PROFILE_ALL_BRANCHES is not set
900# CONFIG_STACK_TRACER is not set 1009# CONFIG_STACK_TRACER is not set
901# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1010# CONFIG_KMEMTRACE is not set
1011# CONFIG_WORKQUEUE_TRACER is not set
1012# CONFIG_BLK_DEV_IO_TRACE is not set
1013# CONFIG_DYNAMIC_DEBUG is not set
1014# CONFIG_DMA_API_DEBUG is not set
902# CONFIG_SAMPLES is not set 1015# CONFIG_SAMPLES is not set
903CONFIG_HAVE_ARCH_KGDB=y 1016CONFIG_HAVE_ARCH_KGDB=y
904# CONFIG_KGDB is not set 1017# CONFIG_KGDB is not set
1018# CONFIG_PPC_DISABLE_WERROR is not set
1019CONFIG_PPC_WERROR=y
905CONFIG_PRINT_STACK_DEPTH=64 1020CONFIG_PRINT_STACK_DEPTH=64
906# CONFIG_DEBUG_STACKOVERFLOW is not set 1021# CONFIG_DEBUG_STACKOVERFLOW is not set
907# CONFIG_DEBUG_STACK_USAGE is not set 1022# CONFIG_DEBUG_STACK_USAGE is not set
908# CONFIG_DEBUG_PAGEALLOC is not set 1023# CONFIG_PPC_EMULATED_STATS is not set
909# CONFIG_CODE_PATCHING_SELFTEST is not set 1024# CONFIG_CODE_PATCHING_SELFTEST is not set
910# CONFIG_FTR_FIXUP_SELFTEST is not set 1025# CONFIG_FTR_FIXUP_SELFTEST is not set
911# CONFIG_MSI_BITMAP_SELFTEST is not set 1026# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -921,13 +1036,16 @@ CONFIG_PRINT_STACK_DEPTH=64
921# CONFIG_KEYS is not set 1036# CONFIG_KEYS is not set
922# CONFIG_SECURITY is not set 1037# CONFIG_SECURITY is not set
923# CONFIG_SECURITYFS is not set 1038# CONFIG_SECURITYFS is not set
924# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1039# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1040# CONFIG_DEFAULT_SECURITY_SMACK is not set
1041# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1042CONFIG_DEFAULT_SECURITY_DAC=y
1043CONFIG_DEFAULT_SECURITY=""
925CONFIG_CRYPTO=y 1044CONFIG_CRYPTO=y
926 1045
927# 1046#
928# Crypto core or helper 1047# Crypto core or helper
929# 1048#
930# CONFIG_CRYPTO_FIPS is not set
931CONFIG_CRYPTO_ALGAPI=y 1049CONFIG_CRYPTO_ALGAPI=y
932CONFIG_CRYPTO_ALGAPI2=y 1050CONFIG_CRYPTO_ALGAPI2=y
933CONFIG_CRYPTO_AEAD2=y 1051CONFIG_CRYPTO_AEAD2=y
@@ -936,10 +1054,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
936CONFIG_CRYPTO_HASH=y 1054CONFIG_CRYPTO_HASH=y
937CONFIG_CRYPTO_HASH2=y 1055CONFIG_CRYPTO_HASH2=y
938CONFIG_CRYPTO_RNG2=y 1056CONFIG_CRYPTO_RNG2=y
1057CONFIG_CRYPTO_PCOMP=y
939CONFIG_CRYPTO_MANAGER=y 1058CONFIG_CRYPTO_MANAGER=y
940CONFIG_CRYPTO_MANAGER2=y 1059CONFIG_CRYPTO_MANAGER2=y
941# CONFIG_CRYPTO_GF128MUL is not set 1060# CONFIG_CRYPTO_GF128MUL is not set
942# CONFIG_CRYPTO_NULL is not set 1061# CONFIG_CRYPTO_NULL is not set
1062CONFIG_CRYPTO_WORKQUEUE=y
943# CONFIG_CRYPTO_CRYPTD is not set 1063# CONFIG_CRYPTO_CRYPTD is not set
944# CONFIG_CRYPTO_AUTHENC is not set 1064# CONFIG_CRYPTO_AUTHENC is not set
945# CONFIG_CRYPTO_TEST is not set 1065# CONFIG_CRYPTO_TEST is not set
@@ -967,11 +1087,13 @@ CONFIG_CRYPTO_PCBC=y
967# 1087#
968# CONFIG_CRYPTO_HMAC is not set 1088# CONFIG_CRYPTO_HMAC is not set
969# CONFIG_CRYPTO_XCBC is not set 1089# CONFIG_CRYPTO_XCBC is not set
1090# CONFIG_CRYPTO_VMAC is not set
970 1091
971# 1092#
972# Digest 1093# Digest
973# 1094#
974# CONFIG_CRYPTO_CRC32C is not set 1095# CONFIG_CRYPTO_CRC32C is not set
1096# CONFIG_CRYPTO_GHASH is not set
975# CONFIG_CRYPTO_MD4 is not set 1097# CONFIG_CRYPTO_MD4 is not set
976CONFIG_CRYPTO_MD5=y 1098CONFIG_CRYPTO_MD5=y
977# CONFIG_CRYPTO_MICHAEL_MIC is not set 1099# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1008,6 +1130,7 @@ CONFIG_CRYPTO_DES=y
1008# Compression 1130# Compression
1009# 1131#
1010# CONFIG_CRYPTO_DEFLATE is not set 1132# CONFIG_CRYPTO_DEFLATE is not set
1133# CONFIG_CRYPTO_ZLIB is not set
1011# CONFIG_CRYPTO_LZO is not set 1134# CONFIG_CRYPTO_LZO is not set
1012 1135
1013# 1136#
@@ -1016,5 +1139,6 @@ CONFIG_CRYPTO_DES=y
1016# CONFIG_CRYPTO_ANSI_CPRNG is not set 1139# CONFIG_CRYPTO_ANSI_CPRNG is not set
1017CONFIG_CRYPTO_HW=y 1140CONFIG_CRYPTO_HW=y
1018# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1141# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1142# CONFIG_CRYPTO_DEV_PPC4XX is not set
1019# CONFIG_PPC_CLOCK is not set 1143# CONFIG_PPC_CLOCK is not set
1020# CONFIG_VIRTUALIZATION is not set 1144# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/40x/kilauea_defconfig b/arch/powerpc/configs/40x/kilauea_defconfig
index 9a05ec0ec312..19fbcb075376 100644
--- a/arch/powerpc/configs/40x/kilauea_defconfig
+++ b/arch/powerpc/configs/40x/kilauea_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.31-rc4 3# Linux kernel version: 2.6.33-rc1
4# Wed Jul 29 13:28:37 2009 4# Mon Jan 4 15:51:23 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,6 +16,7 @@ CONFIG_40x=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_4xx=y 17CONFIG_4xx=y
18CONFIG_PPC_MMU_NOHASH=y 18CONFIG_PPC_MMU_NOHASH=y
19CONFIG_PPC_MMU_NOHASH_32=y
19# CONFIG_PPC_MM_SLICES is not set 20# CONFIG_PPC_MM_SLICES is not set
20CONFIG_NOT_COHERENT_CACHE=y 21CONFIG_NOT_COHERENT_CACHE=y
21CONFIG_PPC32=y 22CONFIG_PPC32=y
@@ -29,7 +30,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
30CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 31CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
31# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
32CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
33CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
34CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
35CONFIG_TRACE_IRQFLAGS_SUPPORT=y 38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -52,6 +55,7 @@ CONFIG_AUDIT_ARCH=y
52CONFIG_GENERIC_BUG=y 55CONFIG_GENERIC_BUG=y
53CONFIG_DTC=y 56CONFIG_DTC=y
54# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
55CONFIG_PPC_DCR_NATIVE=y 59CONFIG_PPC_DCR_NATIVE=y
56# CONFIG_PPC_DCR_MMIO is not set 60# CONFIG_PPC_DCR_MMIO is not set
57CONFIG_PPC_DCR=y 61CONFIG_PPC_DCR=y
@@ -79,11 +83,13 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
79# 83#
80# RCU Subsystem 84# RCU Subsystem
81# 85#
82CONFIG_CLASSIC_RCU=y 86CONFIG_TREE_RCU=y
83# CONFIG_TREE_RCU is not set 87# CONFIG_TREE_PREEMPT_RCU is not set
84# CONFIG_PREEMPT_RCU is not set 88# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set
85# CONFIG_TREE_RCU_TRACE is not set 92# CONFIG_TREE_RCU_TRACE is not set
86# CONFIG_PREEMPT_RCU_TRACE is not set
87# CONFIG_IKCONFIG is not set 93# CONFIG_IKCONFIG is not set
88CONFIG_LOG_BUF_SHIFT=14 94CONFIG_LOG_BUF_SHIFT=14
89CONFIG_GROUP_SCHED=y 95CONFIG_GROUP_SCHED=y
@@ -121,22 +127,21 @@ CONFIG_TIMERFD=y
121CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
122CONFIG_SHMEM=y 128CONFIG_SHMEM=y
123CONFIG_AIO=y 129CONFIG_AIO=y
124CONFIG_HAVE_PERF_COUNTERS=y 130CONFIG_HAVE_PERF_EVENTS=y
125 131
126# 132#
127# Performance Counters 133# Kernel Performance Events And Counters
128# 134#
135# CONFIG_PERF_EVENTS is not set
129# CONFIG_PERF_COUNTERS is not set 136# CONFIG_PERF_COUNTERS is not set
130CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
131CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
132CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
133# CONFIG_STRIP_ASM_SYMS is not set
134CONFIG_COMPAT_BRK=y 140CONFIG_COMPAT_BRK=y
135# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
136CONFIG_SLUB=y 142CONFIG_SLUB=y
137# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
138# CONFIG_PROFILING is not set 144# CONFIG_PROFILING is not set
139# CONFIG_MARKERS is not set
140CONFIG_HAVE_OPROFILE=y 145CONFIG_HAVE_OPROFILE=y
141# CONFIG_KPROBES is not set 146# CONFIG_KPROBES is not set
142CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 147CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
@@ -144,6 +149,8 @@ CONFIG_HAVE_IOREMAP_PROT=y
144CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
145CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
146CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
147 154
148# 155#
149# GCOV-based kernel profiling 156# GCOV-based kernel profiling
@@ -169,14 +176,41 @@ CONFIG_LBDAF=y
169# IO Schedulers 176# IO Schedulers
170# 177#
171CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
172CONFIG_IOSCHED_AS=y
173CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
174CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
175CONFIG_DEFAULT_AS=y
176# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
177# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
178# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
179CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
180# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
181CONFIG_PPC4xx_PCI_EXPRESS=y 215CONFIG_PPC4xx_PCI_EXPRESS=y
182 216
@@ -190,6 +224,7 @@ CONFIG_PPC4xx_PCI_EXPRESS=y
190# CONFIG_ACADIA is not set 224# CONFIG_ACADIA is not set
191# CONFIG_EP405 is not set 225# CONFIG_EP405 is not set
192# CONFIG_HCU4 is not set 226# CONFIG_HCU4 is not set
227# CONFIG_HOTFOOT is not set
193CONFIG_KILAUEA=y 228CONFIG_KILAUEA=y
194# CONFIG_MAKALU is not set 229# CONFIG_MAKALU is not set
195# CONFIG_WALNUT is not set 230# CONFIG_WALNUT is not set
@@ -233,10 +268,11 @@ CONFIG_BINFMT_ELF=y
233# CONFIG_MATH_EMULATION is not set 268# CONFIG_MATH_EMULATION is not set
234# CONFIG_IOMMU_HELPER is not set 269# CONFIG_IOMMU_HELPER is not set
235# CONFIG_SWIOTLB is not set 270# CONFIG_SWIOTLB is not set
236CONFIG_PPC_NEED_DMA_SYNC_OPS=y
237CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 271CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
238CONFIG_ARCH_HAS_WALK_MEMORY=y 272CONFIG_ARCH_HAS_WALK_MEMORY=y
239CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 273CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
274CONFIG_SPARSE_IRQ=y
275CONFIG_MAX_ACTIVE_REGIONS=32
240CONFIG_ARCH_FLATMEM_ENABLE=y 276CONFIG_ARCH_FLATMEM_ENABLE=y
241CONFIG_ARCH_POPULATES_NODE_MAP=y 277CONFIG_ARCH_POPULATES_NODE_MAP=y
242CONFIG_SELECT_MEMORY_MODEL=y 278CONFIG_SELECT_MEMORY_MODEL=y
@@ -252,8 +288,7 @@ CONFIG_MIGRATION=y
252CONFIG_ZONE_DMA_FLAG=1 288CONFIG_ZONE_DMA_FLAG=1
253CONFIG_BOUNCE=y 289CONFIG_BOUNCE=y
254CONFIG_VIRT_TO_BUS=y 290CONFIG_VIRT_TO_BUS=y
255CONFIG_HAVE_MLOCK=y 291# CONFIG_KSM is not set
256CONFIG_HAVE_MLOCKED_PAGE_BIT=y
257CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 292CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
258CONFIG_PPC_4K_PAGES=y 293CONFIG_PPC_4K_PAGES=y
259# CONFIG_PPC_16K_PAGES is not set 294# CONFIG_PPC_16K_PAGES is not set
@@ -343,6 +378,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
343# CONFIG_NETFILTER is not set 378# CONFIG_NETFILTER is not set
344# CONFIG_IP_DCCP is not set 379# CONFIG_IP_DCCP is not set
345# CONFIG_IP_SCTP is not set 380# CONFIG_IP_SCTP is not set
381# CONFIG_RDS is not set
346# CONFIG_TIPC is not set 382# CONFIG_TIPC is not set
347# CONFIG_ATM is not set 383# CONFIG_ATM is not set
348# CONFIG_BRIDGE is not set 384# CONFIG_BRIDGE is not set
@@ -370,7 +406,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
370# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
371# CONFIG_BT is not set 407# CONFIG_BT is not set
372# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
373# CONFIG_WIRELESS is not set 409CONFIG_WIRELESS=y
410# CONFIG_CFG80211 is not set
411# CONFIG_LIB80211 is not set
412
413#
414# CFG80211 needs to be enabled for MAC80211
415#
374# CONFIG_WIMAX is not set 416# CONFIG_WIMAX is not set
375# CONFIG_RFKILL is not set 417# CONFIG_RFKILL is not set
376# CONFIG_NET_9P is not set 418# CONFIG_NET_9P is not set
@@ -383,6 +425,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
383# Generic Driver Options 425# Generic Driver Options
384# 426#
385CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 427CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
428# CONFIG_DEVTMPFS is not set
386CONFIG_STANDALONE=y 429CONFIG_STANDALONE=y
387CONFIG_PREVENT_FIRMWARE_BUILD=y 430CONFIG_PREVENT_FIRMWARE_BUILD=y
388CONFIG_FW_LOADER=y 431CONFIG_FW_LOADER=y
@@ -395,9 +438,9 @@ CONFIG_CONNECTOR=y
395CONFIG_PROC_EVENTS=y 438CONFIG_PROC_EVENTS=y
396CONFIG_MTD=y 439CONFIG_MTD=y
397# CONFIG_MTD_DEBUG is not set 440# CONFIG_MTD_DEBUG is not set
441# CONFIG_MTD_TESTS is not set
398# CONFIG_MTD_CONCAT is not set 442# CONFIG_MTD_CONCAT is not set
399CONFIG_MTD_PARTITIONS=y 443CONFIG_MTD_PARTITIONS=y
400# CONFIG_MTD_TESTS is not set
401# CONFIG_MTD_REDBOOT_PARTS is not set 444# CONFIG_MTD_REDBOOT_PARTS is not set
402CONFIG_MTD_CMDLINE_PARTS=y 445CONFIG_MTD_CMDLINE_PARTS=y
403CONFIG_MTD_OF_PARTS=y 446CONFIG_MTD_OF_PARTS=y
@@ -498,6 +541,7 @@ CONFIG_BLK_DEV=y
498# CONFIG_BLK_DEV_UMEM is not set 541# CONFIG_BLK_DEV_UMEM is not set
499# CONFIG_BLK_DEV_COW_COMMON is not set 542# CONFIG_BLK_DEV_COW_COMMON is not set
500# CONFIG_BLK_DEV_LOOP is not set 543# CONFIG_BLK_DEV_LOOP is not set
544# CONFIG_BLK_DEV_DRBD is not set
501# CONFIG_BLK_DEV_NBD is not set 545# CONFIG_BLK_DEV_NBD is not set
502# CONFIG_BLK_DEV_SX8 is not set 546# CONFIG_BLK_DEV_SX8 is not set
503CONFIG_BLK_DEV_RAM=y 547CONFIG_BLK_DEV_RAM=y
@@ -574,16 +618,17 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
574# CONFIG_NET_PCI is not set 618# CONFIG_NET_PCI is not set
575# CONFIG_B44 is not set 619# CONFIG_B44 is not set
576# CONFIG_KS8842 is not set 620# CONFIG_KS8842 is not set
621# CONFIG_KS8851_MLL is not set
577# CONFIG_ATL2 is not set 622# CONFIG_ATL2 is not set
623# CONFIG_XILINX_EMACLITE is not set
578# CONFIG_NETDEV_1000 is not set 624# CONFIG_NETDEV_1000 is not set
579# CONFIG_NETDEV_10000 is not set 625# CONFIG_NETDEV_10000 is not set
580# CONFIG_TR is not set 626# CONFIG_TR is not set
581 627CONFIG_WLAN=y
582# 628# CONFIG_AIRO is not set
583# Wireless LAN 629# CONFIG_ATMEL is not set
584# 630# CONFIG_PRISM54 is not set
585# CONFIG_WLAN_PRE80211 is not set 631# CONFIG_HOSTAP is not set
586# CONFIG_WLAN_80211 is not set
587 632
588# 633#
589# Enable WiMAX (Networking options) to see the WiMAX drivers 634# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -596,6 +641,7 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
596# CONFIG_NETCONSOLE is not set 641# CONFIG_NETCONSOLE is not set
597# CONFIG_NETPOLL is not set 642# CONFIG_NETPOLL is not set
598# CONFIG_NET_POLL_CONTROLLER is not set 643# CONFIG_NET_POLL_CONTROLLER is not set
644# CONFIG_VMXNET3 is not set
599# CONFIG_ISDN is not set 645# CONFIG_ISDN is not set
600# CONFIG_PHONE is not set 646# CONFIG_PHONE is not set
601 647
@@ -641,6 +687,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
641# CONFIG_SERIAL_JSM is not set 687# CONFIG_SERIAL_JSM is not set
642CONFIG_SERIAL_OF_PLATFORM=y 688CONFIG_SERIAL_OF_PLATFORM=y
643# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 689# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
690# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
644CONFIG_UNIX98_PTYS=y 691CONFIG_UNIX98_PTYS=y
645# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 692# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
646CONFIG_LEGACY_PTYS=y 693CONFIG_LEGACY_PTYS=y
@@ -656,6 +703,7 @@ CONFIG_LEGACY_PTY_COUNT=256
656CONFIG_DEVPORT=y 703CONFIG_DEVPORT=y
657CONFIG_I2C=y 704CONFIG_I2C=y
658CONFIG_I2C_BOARDINFO=y 705CONFIG_I2C_BOARDINFO=y
706CONFIG_I2C_COMPAT=y
659CONFIG_I2C_CHARDEV=y 707CONFIG_I2C_CHARDEV=y
660CONFIG_I2C_HELPER_AUTO=y 708CONFIG_I2C_HELPER_AUTO=y
661 709
@@ -696,11 +744,6 @@ CONFIG_I2C_IBM_IIC=y
696# CONFIG_I2C_TAOS_EVM is not set 744# CONFIG_I2C_TAOS_EVM is not set
697 745
698# 746#
699# Graphics adapter I2C/DDC channel drivers
700#
701# CONFIG_I2C_VOODOO3 is not set
702
703#
704# Other I2C/SMBus bus drivers 747# Other I2C/SMBus bus drivers
705# 748#
706# CONFIG_I2C_PCA_PLATFORM is not set 749# CONFIG_I2C_PCA_PLATFORM is not set
@@ -709,10 +752,6 @@ CONFIG_I2C_IBM_IIC=y
709# 752#
710# Miscellaneous I2C Chip support 753# Miscellaneous I2C Chip support
711# 754#
712# CONFIG_DS1682 is not set
713# CONFIG_SENSORS_PCF8574 is not set
714# CONFIG_PCF8575 is not set
715# CONFIG_SENSORS_PCA9539 is not set
716# CONFIG_SENSORS_TSL2550 is not set 755# CONFIG_SENSORS_TSL2550 is not set
717# CONFIG_I2C_DEBUG_CORE is not set 756# CONFIG_I2C_DEBUG_CORE is not set
718# CONFIG_I2C_DEBUG_ALGO is not set 757# CONFIG_I2C_DEBUG_ALGO is not set
@@ -730,6 +769,11 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
730# CONFIG_POWER_SUPPLY is not set 769# CONFIG_POWER_SUPPLY is not set
731CONFIG_HWMON=y 770CONFIG_HWMON=y
732# CONFIG_HWMON_VID is not set 771# CONFIG_HWMON_VID is not set
772# CONFIG_HWMON_DEBUG_CHIP is not set
773
774#
775# Native drivers
776#
733# CONFIG_SENSORS_AD7414 is not set 777# CONFIG_SENSORS_AD7414 is not set
734# CONFIG_SENSORS_AD7418 is not set 778# CONFIG_SENSORS_AD7418 is not set
735# CONFIG_SENSORS_ADM1021 is not set 779# CONFIG_SENSORS_ADM1021 is not set
@@ -753,6 +797,7 @@ CONFIG_HWMON=y
753# CONFIG_SENSORS_GL520SM is not set 797# CONFIG_SENSORS_GL520SM is not set
754# CONFIG_SENSORS_IT87 is not set 798# CONFIG_SENSORS_IT87 is not set
755# CONFIG_SENSORS_LM63 is not set 799# CONFIG_SENSORS_LM63 is not set
800# CONFIG_SENSORS_LM73 is not set
756CONFIG_SENSORS_LM75=y 801CONFIG_SENSORS_LM75=y
757# CONFIG_SENSORS_LM77 is not set 802# CONFIG_SENSORS_LM77 is not set
758# CONFIG_SENSORS_LM78 is not set 803# CONFIG_SENSORS_LM78 is not set
@@ -779,6 +824,7 @@ CONFIG_SENSORS_LM75=y
779# CONFIG_SENSORS_ADS7828 is not set 824# CONFIG_SENSORS_ADS7828 is not set
780# CONFIG_SENSORS_THMC50 is not set 825# CONFIG_SENSORS_THMC50 is not set
781# CONFIG_SENSORS_TMP401 is not set 826# CONFIG_SENSORS_TMP401 is not set
827# CONFIG_SENSORS_TMP421 is not set
782# CONFIG_SENSORS_VIA686A is not set 828# CONFIG_SENSORS_VIA686A is not set
783# CONFIG_SENSORS_VT1211 is not set 829# CONFIG_SENSORS_VT1211 is not set
784# CONFIG_SENSORS_VT8231 is not set 830# CONFIG_SENSORS_VT8231 is not set
@@ -790,7 +836,6 @@ CONFIG_SENSORS_LM75=y
790# CONFIG_SENSORS_W83L786NG is not set 836# CONFIG_SENSORS_W83L786NG is not set
791# CONFIG_SENSORS_W83627HF is not set 837# CONFIG_SENSORS_W83627HF is not set
792# CONFIG_SENSORS_W83627EHF is not set 838# CONFIG_SENSORS_W83627EHF is not set
793# CONFIG_HWMON_DEBUG_CHIP is not set
794CONFIG_THERMAL=y 839CONFIG_THERMAL=y
795# CONFIG_THERMAL_HWMON is not set 840# CONFIG_THERMAL_HWMON is not set
796# CONFIG_WATCHDOG is not set 841# CONFIG_WATCHDOG is not set
@@ -810,10 +855,13 @@ CONFIG_SSB_POSSIBLE=y
810# CONFIG_TWL4030_CORE is not set 855# CONFIG_TWL4030_CORE is not set
811# CONFIG_MFD_TMIO is not set 856# CONFIG_MFD_TMIO is not set
812# CONFIG_PMIC_DA903X is not set 857# CONFIG_PMIC_DA903X is not set
858# CONFIG_PMIC_ADP5520 is not set
813# CONFIG_MFD_WM8400 is not set 859# CONFIG_MFD_WM8400 is not set
860# CONFIG_MFD_WM831X is not set
814# CONFIG_MFD_WM8350_I2C is not set 861# CONFIG_MFD_WM8350_I2C is not set
815# CONFIG_MFD_PCF50633 is not set 862# CONFIG_MFD_PCF50633 is not set
816# CONFIG_AB3100_CORE is not set 863# CONFIG_AB3100_CORE is not set
864# CONFIG_MFD_88PM8607 is not set
817# CONFIG_REGULATOR is not set 865# CONFIG_REGULATOR is not set
818# CONFIG_MEDIA_SUPPORT is not set 866# CONFIG_MEDIA_SUPPORT is not set
819 867
@@ -821,6 +869,7 @@ CONFIG_SSB_POSSIBLE=y
821# Graphics support 869# Graphics support
822# 870#
823# CONFIG_AGP is not set 871# CONFIG_AGP is not set
872CONFIG_VGA_ARB=y
824# CONFIG_DRM is not set 873# CONFIG_DRM is not set
825# CONFIG_VGASTATE is not set 874# CONFIG_VGASTATE is not set
826# CONFIG_VIDEO_OUTPUT_CONTROL is not set 875# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -868,6 +917,7 @@ CONFIG_RTC_DRV_DS1307=y
868# CONFIG_RTC_DRV_PCF8563 is not set 917# CONFIG_RTC_DRV_PCF8563 is not set
869# CONFIG_RTC_DRV_PCF8583 is not set 918# CONFIG_RTC_DRV_PCF8583 is not set
870# CONFIG_RTC_DRV_M41T80 is not set 919# CONFIG_RTC_DRV_M41T80 is not set
920# CONFIG_RTC_DRV_BQ32K is not set
871# CONFIG_RTC_DRV_S35390A is not set 921# CONFIG_RTC_DRV_S35390A is not set
872# CONFIG_RTC_DRV_FM3130 is not set 922# CONFIG_RTC_DRV_FM3130 is not set
873# CONFIG_RTC_DRV_RX8581 is not set 923# CONFIG_RTC_DRV_RX8581 is not set
@@ -889,7 +939,9 @@ CONFIG_RTC_DRV_DS1307=y
889# CONFIG_RTC_DRV_M48T86 is not set 939# CONFIG_RTC_DRV_M48T86 is not set
890# CONFIG_RTC_DRV_M48T35 is not set 940# CONFIG_RTC_DRV_M48T35 is not set
891# CONFIG_RTC_DRV_M48T59 is not set 941# CONFIG_RTC_DRV_M48T59 is not set
942# CONFIG_RTC_DRV_MSM6242 is not set
892# CONFIG_RTC_DRV_BQ4802 is not set 943# CONFIG_RTC_DRV_BQ4802 is not set
944# CONFIG_RTC_DRV_RP5C01 is not set
893# CONFIG_RTC_DRV_V3020 is not set 945# CONFIG_RTC_DRV_V3020 is not set
894 946
895# 947#
@@ -913,6 +965,7 @@ CONFIG_EXT2_FS=y
913# CONFIG_EXT2_FS_XIP is not set 965# CONFIG_EXT2_FS_XIP is not set
914# CONFIG_EXT3_FS is not set 966# CONFIG_EXT3_FS is not set
915# CONFIG_EXT4_FS is not set 967# CONFIG_EXT4_FS is not set
968CONFIG_EXT4_USE_FOR_EXT23=y
916# CONFIG_REISERFS_FS is not set 969# CONFIG_REISERFS_FS is not set
917# CONFIG_JFS_FS is not set 970# CONFIG_JFS_FS is not set
918# CONFIG_FS_POSIX_ACL is not set 971# CONFIG_FS_POSIX_ACL is not set
@@ -920,6 +973,7 @@ CONFIG_EXT2_FS=y
920# CONFIG_GFS2_FS is not set 973# CONFIG_GFS2_FS is not set
921# CONFIG_OCFS2_FS is not set 974# CONFIG_OCFS2_FS is not set
922# CONFIG_BTRFS_FS is not set 975# CONFIG_BTRFS_FS is not set
976# CONFIG_NILFS2_FS is not set
923CONFIG_FILE_LOCKING=y 977CONFIG_FILE_LOCKING=y
924CONFIG_FSNOTIFY=y 978CONFIG_FSNOTIFY=y
925CONFIG_DNOTIFY=y 979CONFIG_DNOTIFY=y
@@ -979,7 +1033,6 @@ CONFIG_CRAMFS=y
979# CONFIG_ROMFS_FS is not set 1033# CONFIG_ROMFS_FS is not set
980# CONFIG_SYSV_FS is not set 1034# CONFIG_SYSV_FS is not set
981# CONFIG_UFS_FS is not set 1035# CONFIG_UFS_FS is not set
982# CONFIG_NILFS2_FS is not set
983CONFIG_NETWORK_FILESYSTEMS=y 1036CONFIG_NETWORK_FILESYSTEMS=y
984CONFIG_NFS_FS=y 1037CONFIG_NFS_FS=y
985CONFIG_NFS_V3=y 1038CONFIG_NFS_V3=y
@@ -1037,6 +1090,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1037CONFIG_ENABLE_MUST_CHECK=y 1090CONFIG_ENABLE_MUST_CHECK=y
1038CONFIG_FRAME_WARN=1024 1091CONFIG_FRAME_WARN=1024
1039CONFIG_MAGIC_SYSRQ=y 1092CONFIG_MAGIC_SYSRQ=y
1093# CONFIG_STRIP_ASM_SYMS is not set
1040# CONFIG_UNUSED_SYMBOLS is not set 1094# CONFIG_UNUSED_SYMBOLS is not set
1041CONFIG_DEBUG_FS=y 1095CONFIG_DEBUG_FS=y
1042# CONFIG_HEADERS_CHECK is not set 1096# CONFIG_HEADERS_CHECK is not set
@@ -1054,6 +1108,7 @@ CONFIG_SCHED_DEBUG=y
1054# CONFIG_DEBUG_OBJECTS is not set 1108# CONFIG_DEBUG_OBJECTS is not set
1055# CONFIG_SLUB_DEBUG_ON is not set 1109# CONFIG_SLUB_DEBUG_ON is not set
1056# CONFIG_SLUB_STATS is not set 1110# CONFIG_SLUB_STATS is not set
1111# CONFIG_DEBUG_KMEMLEAK is not set
1057# CONFIG_DEBUG_RT_MUTEXES is not set 1112# CONFIG_DEBUG_RT_MUTEXES is not set
1058# CONFIG_RT_MUTEX_TESTER is not set 1113# CONFIG_RT_MUTEX_TESTER is not set
1059# CONFIG_DEBUG_SPINLOCK is not set 1114# CONFIG_DEBUG_SPINLOCK is not set
@@ -1072,10 +1127,12 @@ CONFIG_DEBUG_BUGVERBOSE=y
1072# CONFIG_DEBUG_LIST is not set 1127# CONFIG_DEBUG_LIST is not set
1073# CONFIG_DEBUG_SG is not set 1128# CONFIG_DEBUG_SG is not set
1074# CONFIG_DEBUG_NOTIFIERS is not set 1129# CONFIG_DEBUG_NOTIFIERS is not set
1130# CONFIG_DEBUG_CREDENTIALS is not set
1075# CONFIG_RCU_TORTURE_TEST is not set 1131# CONFIG_RCU_TORTURE_TEST is not set
1076# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1132# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1077# CONFIG_BACKTRACE_SELF_TEST is not set 1133# CONFIG_BACKTRACE_SELF_TEST is not set
1078# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1134# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1135# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1079# CONFIG_FAULT_INJECTION is not set 1136# CONFIG_FAULT_INJECTION is not set
1080# CONFIG_LATENCYTOP is not set 1137# CONFIG_LATENCYTOP is not set
1081CONFIG_SYSCTL_SYSCALL_CHECK=y 1138CONFIG_SYSCTL_SYSCALL_CHECK=y
@@ -1099,10 +1156,10 @@ CONFIG_BRANCH_PROFILE_NONE=y
1099# CONFIG_WORKQUEUE_TRACER is not set 1156# CONFIG_WORKQUEUE_TRACER is not set
1100# CONFIG_BLK_DEV_IO_TRACE is not set 1157# CONFIG_BLK_DEV_IO_TRACE is not set
1101# CONFIG_DYNAMIC_DEBUG is not set 1158# CONFIG_DYNAMIC_DEBUG is not set
1159# CONFIG_DMA_API_DEBUG is not set
1102# CONFIG_SAMPLES is not set 1160# CONFIG_SAMPLES is not set
1103CONFIG_HAVE_ARCH_KGDB=y 1161CONFIG_HAVE_ARCH_KGDB=y
1104# CONFIG_KGDB is not set 1162# CONFIG_KGDB is not set
1105# CONFIG_KMEMCHECK is not set
1106# CONFIG_PPC_DISABLE_WERROR is not set 1163# CONFIG_PPC_DISABLE_WERROR is not set
1107CONFIG_PPC_WERROR=y 1164CONFIG_PPC_WERROR=y
1108CONFIG_PRINT_STACK_DEPTH=64 1165CONFIG_PRINT_STACK_DEPTH=64
@@ -1124,13 +1181,16 @@ CONFIG_PRINT_STACK_DEPTH=64
1124# CONFIG_KEYS is not set 1181# CONFIG_KEYS is not set
1125# CONFIG_SECURITY is not set 1182# CONFIG_SECURITY is not set
1126# CONFIG_SECURITYFS is not set 1183# CONFIG_SECURITYFS is not set
1127# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1184# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1185# CONFIG_DEFAULT_SECURITY_SMACK is not set
1186# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1187CONFIG_DEFAULT_SECURITY_DAC=y
1188CONFIG_DEFAULT_SECURITY=""
1128CONFIG_CRYPTO=y 1189CONFIG_CRYPTO=y
1129 1190
1130# 1191#
1131# Crypto core or helper 1192# Crypto core or helper
1132# 1193#
1133# CONFIG_CRYPTO_FIPS is not set
1134CONFIG_CRYPTO_ALGAPI=y 1194CONFIG_CRYPTO_ALGAPI=y
1135CONFIG_CRYPTO_ALGAPI2=y 1195CONFIG_CRYPTO_ALGAPI2=y
1136CONFIG_CRYPTO_AEAD2=y 1196CONFIG_CRYPTO_AEAD2=y
@@ -1172,11 +1232,13 @@ CONFIG_CRYPTO_PCBC=y
1172# 1232#
1173# CONFIG_CRYPTO_HMAC is not set 1233# CONFIG_CRYPTO_HMAC is not set
1174# CONFIG_CRYPTO_XCBC is not set 1234# CONFIG_CRYPTO_XCBC is not set
1235# CONFIG_CRYPTO_VMAC is not set
1175 1236
1176# 1237#
1177# Digest 1238# Digest
1178# 1239#
1179# CONFIG_CRYPTO_CRC32C is not set 1240# CONFIG_CRYPTO_CRC32C is not set
1241# CONFIG_CRYPTO_GHASH is not set
1180# CONFIG_CRYPTO_MD4 is not set 1242# CONFIG_CRYPTO_MD4 is not set
1181CONFIG_CRYPTO_MD5=y 1243CONFIG_CRYPTO_MD5=y
1182# CONFIG_CRYPTO_MICHAEL_MIC is not set 1244# CONFIG_CRYPTO_MICHAEL_MIC is not set
diff --git a/arch/powerpc/configs/40x/makalu_defconfig b/arch/powerpc/configs/40x/makalu_defconfig
index 146747547873..eb41cd695979 100644
--- a/arch/powerpc/configs/40x/makalu_defconfig
+++ b/arch/powerpc/configs/40x/makalu_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.30-rc7 3# Linux kernel version: 2.6.33-rc1
4# Wed Jun 3 09:11:02 2009 4# Mon Jan 4 15:55:12 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14CONFIG_40x=y 14CONFIG_40x=y
@@ -16,6 +16,7 @@ CONFIG_40x=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_4xx=y 17CONFIG_4xx=y
18CONFIG_PPC_MMU_NOHASH=y 18CONFIG_PPC_MMU_NOHASH=y
19CONFIG_PPC_MMU_NOHASH_32=y
19# CONFIG_PPC_MM_SLICES is not set 20# CONFIG_PPC_MM_SLICES is not set
20CONFIG_NOT_COHERENT_CACHE=y 21CONFIG_NOT_COHERENT_CACHE=y
21CONFIG_PPC32=y 22CONFIG_PPC32=y
@@ -29,14 +30,16 @@ CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
30CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 31CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
31# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
32CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
33CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
34CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
35CONFIG_LOCKDEP_SUPPORT=y 39CONFIG_LOCKDEP_SUPPORT=y
36CONFIG_RWSEM_XCHGADD_ALGORITHM=y 40CONFIG_RWSEM_XCHGADD_ALGORITHM=y
37CONFIG_ARCH_HAS_ILOG2_U32=y 41CONFIG_ARCH_HAS_ILOG2_U32=y
38CONFIG_GENERIC_HWEIGHT=y 42CONFIG_GENERIC_HWEIGHT=y
39CONFIG_GENERIC_CALIBRATE_DELAY=y
40CONFIG_GENERIC_FIND_NEXT_BIT=y 43CONFIG_GENERIC_FIND_NEXT_BIT=y
41# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
42CONFIG_PPC=y 45CONFIG_PPC=y
@@ -52,11 +55,13 @@ CONFIG_AUDIT_ARCH=y
52CONFIG_GENERIC_BUG=y 55CONFIG_GENERIC_BUG=y
53CONFIG_DTC=y 56CONFIG_DTC=y
54# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
55CONFIG_PPC_DCR_NATIVE=y 59CONFIG_PPC_DCR_NATIVE=y
56# CONFIG_PPC_DCR_MMIO is not set 60# CONFIG_PPC_DCR_MMIO is not set
57CONFIG_PPC_DCR=y 61CONFIG_PPC_DCR=y
58CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 62CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
59CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 63CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
64CONFIG_CONSTRUCTORS=y
60 65
61# 66#
62# General setup 67# General setup
@@ -78,11 +83,13 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
78# 83#
79# RCU Subsystem 84# RCU Subsystem
80# 85#
81CONFIG_CLASSIC_RCU=y 86CONFIG_TREE_RCU=y
82# CONFIG_TREE_RCU is not set 87# CONFIG_TREE_PREEMPT_RCU is not set
83# CONFIG_PREEMPT_RCU is not set 88# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set
84# CONFIG_TREE_RCU_TRACE is not set 92# CONFIG_TREE_RCU_TRACE is not set
85# CONFIG_PREEMPT_RCU_TRACE is not set
86# CONFIG_IKCONFIG is not set 93# CONFIG_IKCONFIG is not set
87CONFIG_LOG_BUF_SHIFT=14 94CONFIG_LOG_BUF_SHIFT=14
88CONFIG_GROUP_SCHED=y 95CONFIG_GROUP_SCHED=y
@@ -108,7 +115,6 @@ CONFIG_SYSCTL_SYSCALL=y
108CONFIG_KALLSYMS=y 115CONFIG_KALLSYMS=y
109CONFIG_KALLSYMS_ALL=y 116CONFIG_KALLSYMS_ALL=y
110CONFIG_KALLSYMS_EXTRA_PASS=y 117CONFIG_KALLSYMS_EXTRA_PASS=y
111# CONFIG_STRIP_ASM_SYMS is not set
112CONFIG_HOTPLUG=y 118CONFIG_HOTPLUG=y
113CONFIG_PRINTK=y 119CONFIG_PRINTK=y
114CONFIG_BUG=y 120CONFIG_BUG=y
@@ -121,6 +127,13 @@ CONFIG_TIMERFD=y
121CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
122CONFIG_SHMEM=y 128CONFIG_SHMEM=y
123CONFIG_AIO=y 129CONFIG_AIO=y
130CONFIG_HAVE_PERF_EVENTS=y
131
132#
133# Kernel Performance Events And Counters
134#
135# CONFIG_PERF_EVENTS is not set
136# CONFIG_PERF_COUNTERS is not set
124CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
125CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
126CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
@@ -129,7 +142,6 @@ CONFIG_COMPAT_BRK=y
129CONFIG_SLUB=y 142CONFIG_SLUB=y
130# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
131# CONFIG_PROFILING is not set 144# CONFIG_PROFILING is not set
132# CONFIG_MARKERS is not set
133CONFIG_HAVE_OPROFILE=y 145CONFIG_HAVE_OPROFILE=y
134# CONFIG_KPROBES is not set 146# CONFIG_KPROBES is not set
135CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 147CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
@@ -137,6 +149,13 @@ CONFIG_HAVE_IOREMAP_PROT=y
137CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
138CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
139CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
154
155#
156# GCOV-based kernel profiling
157#
158# CONFIG_GCOV_KERNEL is not set
140# CONFIG_SLOW_WORK is not set 159# CONFIG_SLOW_WORK is not set
141# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 160# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
142CONFIG_SLABINFO=y 161CONFIG_SLABINFO=y
@@ -149,7 +168,7 @@ CONFIG_MODULE_UNLOAD=y
149# CONFIG_MODVERSIONS is not set 168# CONFIG_MODVERSIONS is not set
150# CONFIG_MODULE_SRCVERSION_ALL is not set 169# CONFIG_MODULE_SRCVERSION_ALL is not set
151CONFIG_BLOCK=y 170CONFIG_BLOCK=y
152CONFIG_LBD=y 171CONFIG_LBDAF=y
153# CONFIG_BLK_DEV_BSG is not set 172# CONFIG_BLK_DEV_BSG is not set
154# CONFIG_BLK_DEV_INTEGRITY is not set 173# CONFIG_BLK_DEV_INTEGRITY is not set
155 174
@@ -157,14 +176,41 @@ CONFIG_LBD=y
157# IO Schedulers 176# IO Schedulers
158# 177#
159CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
160CONFIG_IOSCHED_AS=y
161CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
162CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
163CONFIG_DEFAULT_AS=y
164# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
165# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
166# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
167CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
168# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
169CONFIG_PPC4xx_PCI_EXPRESS=y 215CONFIG_PPC4xx_PCI_EXPRESS=y
170 216
@@ -178,6 +224,7 @@ CONFIG_PPC4xx_PCI_EXPRESS=y
178# CONFIG_ACADIA is not set 224# CONFIG_ACADIA is not set
179# CONFIG_EP405 is not set 225# CONFIG_EP405 is not set
180# CONFIG_HCU4 is not set 226# CONFIG_HCU4 is not set
227# CONFIG_HOTFOOT is not set
181# CONFIG_KILAUEA is not set 228# CONFIG_KILAUEA is not set
182CONFIG_MAKALU=y 229CONFIG_MAKALU=y
183# CONFIG_WALNUT is not set 230# CONFIG_WALNUT is not set
@@ -220,10 +267,12 @@ CONFIG_BINFMT_ELF=y
220# CONFIG_BINFMT_MISC is not set 267# CONFIG_BINFMT_MISC is not set
221# CONFIG_MATH_EMULATION is not set 268# CONFIG_MATH_EMULATION is not set
222# CONFIG_IOMMU_HELPER is not set 269# CONFIG_IOMMU_HELPER is not set
223CONFIG_PPC_NEED_DMA_SYNC_OPS=y 270# CONFIG_SWIOTLB is not set
224CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 271CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
225CONFIG_ARCH_HAS_WALK_MEMORY=y 272CONFIG_ARCH_HAS_WALK_MEMORY=y
226CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 273CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
274CONFIG_SPARSE_IRQ=y
275CONFIG_MAX_ACTIVE_REGIONS=32
227CONFIG_ARCH_FLATMEM_ENABLE=y 276CONFIG_ARCH_FLATMEM_ENABLE=y
228CONFIG_ARCH_POPULATES_NODE_MAP=y 277CONFIG_ARCH_POPULATES_NODE_MAP=y
229CONFIG_SELECT_MEMORY_MODEL=y 278CONFIG_SELECT_MEMORY_MODEL=y
@@ -239,9 +288,8 @@ CONFIG_MIGRATION=y
239CONFIG_ZONE_DMA_FLAG=1 288CONFIG_ZONE_DMA_FLAG=1
240CONFIG_BOUNCE=y 289CONFIG_BOUNCE=y
241CONFIG_VIRT_TO_BUS=y 290CONFIG_VIRT_TO_BUS=y
242CONFIG_UNEVICTABLE_LRU=y 291# CONFIG_KSM is not set
243CONFIG_HAVE_MLOCK=y 292CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
244CONFIG_HAVE_MLOCKED_PAGE_BIT=y
245CONFIG_PPC_4K_PAGES=y 293CONFIG_PPC_4K_PAGES=y
246# CONFIG_PPC_16K_PAGES is not set 294# CONFIG_PPC_16K_PAGES is not set
247# CONFIG_PPC_64K_PAGES is not set 295# CONFIG_PPC_64K_PAGES is not set
@@ -330,6 +378,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
330# CONFIG_NETFILTER is not set 378# CONFIG_NETFILTER is not set
331# CONFIG_IP_DCCP is not set 379# CONFIG_IP_DCCP is not set
332# CONFIG_IP_SCTP is not set 380# CONFIG_IP_SCTP is not set
381# CONFIG_RDS is not set
333# CONFIG_TIPC is not set 382# CONFIG_TIPC is not set
334# CONFIG_ATM is not set 383# CONFIG_ATM is not set
335# CONFIG_BRIDGE is not set 384# CONFIG_BRIDGE is not set
@@ -344,6 +393,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
344# CONFIG_ECONET is not set 393# CONFIG_ECONET is not set
345# CONFIG_WAN_ROUTER is not set 394# CONFIG_WAN_ROUTER is not set
346# CONFIG_PHONET is not set 395# CONFIG_PHONET is not set
396# CONFIG_IEEE802154 is not set
347# CONFIG_NET_SCHED is not set 397# CONFIG_NET_SCHED is not set
348# CONFIG_DCB is not set 398# CONFIG_DCB is not set
349 399
@@ -356,7 +406,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
356# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
357# CONFIG_BT is not set 407# CONFIG_BT is not set
358# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
359# CONFIG_WIRELESS is not set 409CONFIG_WIRELESS=y
410# CONFIG_CFG80211 is not set
411# CONFIG_LIB80211 is not set
412
413#
414# CFG80211 needs to be enabled for MAC80211
415#
360# CONFIG_WIMAX is not set 416# CONFIG_WIMAX is not set
361# CONFIG_RFKILL is not set 417# CONFIG_RFKILL is not set
362# CONFIG_NET_9P is not set 418# CONFIG_NET_9P is not set
@@ -369,6 +425,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
369# Generic Driver Options 425# Generic Driver Options
370# 426#
371CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 427CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
428# CONFIG_DEVTMPFS is not set
372CONFIG_STANDALONE=y 429CONFIG_STANDALONE=y
373CONFIG_PREVENT_FIRMWARE_BUILD=y 430CONFIG_PREVENT_FIRMWARE_BUILD=y
374CONFIG_FW_LOADER=y 431CONFIG_FW_LOADER=y
@@ -381,9 +438,9 @@ CONFIG_CONNECTOR=y
381CONFIG_PROC_EVENTS=y 438CONFIG_PROC_EVENTS=y
382CONFIG_MTD=y 439CONFIG_MTD=y
383# CONFIG_MTD_DEBUG is not set 440# CONFIG_MTD_DEBUG is not set
441# CONFIG_MTD_TESTS is not set
384# CONFIG_MTD_CONCAT is not set 442# CONFIG_MTD_CONCAT is not set
385CONFIG_MTD_PARTITIONS=y 443CONFIG_MTD_PARTITIONS=y
386# CONFIG_MTD_TESTS is not set
387# CONFIG_MTD_REDBOOT_PARTS is not set 444# CONFIG_MTD_REDBOOT_PARTS is not set
388CONFIG_MTD_CMDLINE_PARTS=y 445CONFIG_MTD_CMDLINE_PARTS=y
389CONFIG_MTD_OF_PARTS=y 446CONFIG_MTD_OF_PARTS=y
@@ -474,6 +531,7 @@ CONFIG_BLK_DEV=y
474# CONFIG_BLK_DEV_UMEM is not set 531# CONFIG_BLK_DEV_UMEM is not set
475# CONFIG_BLK_DEV_COW_COMMON is not set 532# CONFIG_BLK_DEV_COW_COMMON is not set
476# CONFIG_BLK_DEV_LOOP is not set 533# CONFIG_BLK_DEV_LOOP is not set
534# CONFIG_BLK_DEV_DRBD is not set
477# CONFIG_BLK_DEV_NBD is not set 535# CONFIG_BLK_DEV_NBD is not set
478# CONFIG_BLK_DEV_SX8 is not set 536# CONFIG_BLK_DEV_SX8 is not set
479CONFIG_BLK_DEV_RAM=y 537CONFIG_BLK_DEV_RAM=y
@@ -504,14 +562,17 @@ CONFIG_HAVE_IDE=y
504# 562#
505 563
506# 564#
507# Enable only one of the two stacks, unless you know what you are doing 565# You can enable one or both FireWire driver stacks.
566#
567
568#
569# See the help texts for more information.
508# 570#
509# CONFIG_FIREWIRE is not set 571# CONFIG_FIREWIRE is not set
510# CONFIG_IEEE1394 is not set 572# CONFIG_IEEE1394 is not set
511# CONFIG_I2O is not set 573# CONFIG_I2O is not set
512# CONFIG_MACINTOSH_DRIVERS is not set 574# CONFIG_MACINTOSH_DRIVERS is not set
513CONFIG_NETDEVICES=y 575CONFIG_NETDEVICES=y
514CONFIG_COMPAT_NET_DEV_OPS=y
515# CONFIG_DUMMY is not set 576# CONFIG_DUMMY is not set
516# CONFIG_BONDING is not set 577# CONFIG_BONDING is not set
517# CONFIG_MACVLAN is not set 578# CONFIG_MACVLAN is not set
@@ -546,16 +607,18 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
546# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 607# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
547# CONFIG_NET_PCI is not set 608# CONFIG_NET_PCI is not set
548# CONFIG_B44 is not set 609# CONFIG_B44 is not set
610# CONFIG_KS8842 is not set
611# CONFIG_KS8851_MLL is not set
549# CONFIG_ATL2 is not set 612# CONFIG_ATL2 is not set
613# CONFIG_XILINX_EMACLITE is not set
550# CONFIG_NETDEV_1000 is not set 614# CONFIG_NETDEV_1000 is not set
551# CONFIG_NETDEV_10000 is not set 615# CONFIG_NETDEV_10000 is not set
552# CONFIG_TR is not set 616# CONFIG_TR is not set
553 617CONFIG_WLAN=y
554# 618# CONFIG_AIRO is not set
555# Wireless LAN 619# CONFIG_ATMEL is not set
556# 620# CONFIG_PRISM54 is not set
557# CONFIG_WLAN_PRE80211 is not set 621# CONFIG_HOSTAP is not set
558# CONFIG_WLAN_80211 is not set
559 622
560# 623#
561# Enable WiMAX (Networking options) to see the WiMAX drivers 624# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -568,6 +631,7 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
568# CONFIG_NETCONSOLE is not set 631# CONFIG_NETCONSOLE is not set
569# CONFIG_NETPOLL is not set 632# CONFIG_NETPOLL is not set
570# CONFIG_NET_POLL_CONTROLLER is not set 633# CONFIG_NET_POLL_CONTROLLER is not set
634# CONFIG_VMXNET3 is not set
571# CONFIG_ISDN is not set 635# CONFIG_ISDN is not set
572# CONFIG_PHONE is not set 636# CONFIG_PHONE is not set
573 637
@@ -613,6 +677,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
613# CONFIG_SERIAL_JSM is not set 677# CONFIG_SERIAL_JSM is not set
614CONFIG_SERIAL_OF_PLATFORM=y 678CONFIG_SERIAL_OF_PLATFORM=y
615# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 679# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
680# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
616CONFIG_UNIX98_PTYS=y 681CONFIG_UNIX98_PTYS=y
617# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 682# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
618CONFIG_LEGACY_PTYS=y 683CONFIG_LEGACY_PTYS=y
@@ -629,6 +694,11 @@ CONFIG_LEGACY_PTY_COUNT=256
629CONFIG_DEVPORT=y 694CONFIG_DEVPORT=y
630# CONFIG_I2C is not set 695# CONFIG_I2C is not set
631# CONFIG_SPI is not set 696# CONFIG_SPI is not set
697
698#
699# PPS support
700#
701# CONFIG_PPS is not set
632CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 702CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
633# CONFIG_GPIOLIB is not set 703# CONFIG_GPIOLIB is not set
634# CONFIG_W1 is not set 704# CONFIG_W1 is not set
@@ -651,27 +721,13 @@ CONFIG_SSB_POSSIBLE=y
651# CONFIG_HTC_PASIC3 is not set 721# CONFIG_HTC_PASIC3 is not set
652# CONFIG_MFD_TMIO is not set 722# CONFIG_MFD_TMIO is not set
653# CONFIG_REGULATOR is not set 723# CONFIG_REGULATOR is not set
654 724# CONFIG_MEDIA_SUPPORT is not set
655#
656# Multimedia devices
657#
658
659#
660# Multimedia core support
661#
662# CONFIG_VIDEO_DEV is not set
663# CONFIG_DVB_CORE is not set
664# CONFIG_VIDEO_MEDIA is not set
665
666#
667# Multimedia drivers
668#
669# CONFIG_DAB is not set
670 725
671# 726#
672# Graphics support 727# Graphics support
673# 728#
674# CONFIG_AGP is not set 729# CONFIG_AGP is not set
730CONFIG_VGA_ARB=y
675# CONFIG_DRM is not set 731# CONFIG_DRM is not set
676# CONFIG_VGASTATE is not set 732# CONFIG_VGASTATE is not set
677# CONFIG_VIDEO_OUTPUT_CONTROL is not set 733# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -695,6 +751,10 @@ CONFIG_SSB_POSSIBLE=y
695# CONFIG_DMADEVICES is not set 751# CONFIG_DMADEVICES is not set
696# CONFIG_AUXDISPLAY is not set 752# CONFIG_AUXDISPLAY is not set
697# CONFIG_UIO is not set 753# CONFIG_UIO is not set
754
755#
756# TI VLYNQ
757#
698# CONFIG_STAGING is not set 758# CONFIG_STAGING is not set
699 759
700# 760#
@@ -705,14 +765,17 @@ CONFIG_EXT2_FS=y
705# CONFIG_EXT2_FS_XIP is not set 765# CONFIG_EXT2_FS_XIP is not set
706# CONFIG_EXT3_FS is not set 766# CONFIG_EXT3_FS is not set
707# CONFIG_EXT4_FS is not set 767# CONFIG_EXT4_FS is not set
768CONFIG_EXT4_USE_FOR_EXT23=y
708# CONFIG_REISERFS_FS is not set 769# CONFIG_REISERFS_FS is not set
709# CONFIG_JFS_FS is not set 770# CONFIG_JFS_FS is not set
710# CONFIG_FS_POSIX_ACL is not set 771# CONFIG_FS_POSIX_ACL is not set
711CONFIG_FILE_LOCKING=y
712# CONFIG_XFS_FS is not set 772# CONFIG_XFS_FS is not set
713# CONFIG_GFS2_FS is not set 773# CONFIG_GFS2_FS is not set
714# CONFIG_OCFS2_FS is not set 774# CONFIG_OCFS2_FS is not set
715# CONFIG_BTRFS_FS is not set 775# CONFIG_BTRFS_FS is not set
776# CONFIG_NILFS2_FS is not set
777CONFIG_FILE_LOCKING=y
778CONFIG_FSNOTIFY=y
716CONFIG_DNOTIFY=y 779CONFIG_DNOTIFY=y
717CONFIG_INOTIFY=y 780CONFIG_INOTIFY=y
718CONFIG_INOTIFY_USER=y 781CONFIG_INOTIFY_USER=y
@@ -770,7 +833,6 @@ CONFIG_CRAMFS=y
770# CONFIG_ROMFS_FS is not set 833# CONFIG_ROMFS_FS is not set
771# CONFIG_SYSV_FS is not set 834# CONFIG_SYSV_FS is not set
772# CONFIG_UFS_FS is not set 835# CONFIG_UFS_FS is not set
773# CONFIG_NILFS2_FS is not set
774CONFIG_NETWORK_FILESYSTEMS=y 836CONFIG_NETWORK_FILESYSTEMS=y
775CONFIG_NFS_FS=y 837CONFIG_NFS_FS=y
776CONFIG_NFS_V3=y 838CONFIG_NFS_V3=y
@@ -818,6 +880,7 @@ CONFIG_HAS_IOPORT=y
818CONFIG_HAS_DMA=y 880CONFIG_HAS_DMA=y
819CONFIG_HAVE_LMB=y 881CONFIG_HAVE_LMB=y
820CONFIG_NLATTR=y 882CONFIG_NLATTR=y
883CONFIG_GENERIC_ATOMIC64=y
821 884
822# 885#
823# Kernel hacking 886# Kernel hacking
@@ -827,6 +890,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
827CONFIG_ENABLE_MUST_CHECK=y 890CONFIG_ENABLE_MUST_CHECK=y
828CONFIG_FRAME_WARN=1024 891CONFIG_FRAME_WARN=1024
829CONFIG_MAGIC_SYSRQ=y 892CONFIG_MAGIC_SYSRQ=y
893# CONFIG_STRIP_ASM_SYMS is not set
830# CONFIG_UNUSED_SYMBOLS is not set 894# CONFIG_UNUSED_SYMBOLS is not set
831CONFIG_DEBUG_FS=y 895CONFIG_DEBUG_FS=y
832# CONFIG_HEADERS_CHECK is not set 896# CONFIG_HEADERS_CHECK is not set
@@ -844,10 +908,14 @@ CONFIG_SCHED_DEBUG=y
844# CONFIG_DEBUG_OBJECTS is not set 908# CONFIG_DEBUG_OBJECTS is not set
845# CONFIG_SLUB_DEBUG_ON is not set 909# CONFIG_SLUB_DEBUG_ON is not set
846# CONFIG_SLUB_STATS is not set 910# CONFIG_SLUB_STATS is not set
911# CONFIG_DEBUG_KMEMLEAK is not set
847# CONFIG_DEBUG_RT_MUTEXES is not set 912# CONFIG_DEBUG_RT_MUTEXES is not set
848# CONFIG_RT_MUTEX_TESTER is not set 913# CONFIG_RT_MUTEX_TESTER is not set
849# CONFIG_DEBUG_SPINLOCK is not set 914# CONFIG_DEBUG_SPINLOCK is not set
850# CONFIG_DEBUG_MUTEXES is not set 915# CONFIG_DEBUG_MUTEXES is not set
916# CONFIG_DEBUG_LOCK_ALLOC is not set
917# CONFIG_PROVE_LOCKING is not set
918# CONFIG_LOCK_STAT is not set
851# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 919# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
852# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 920# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
853# CONFIG_DEBUG_KOBJECT is not set 921# CONFIG_DEBUG_KOBJECT is not set
@@ -859,11 +927,12 @@ CONFIG_DEBUG_BUGVERBOSE=y
859# CONFIG_DEBUG_LIST is not set 927# CONFIG_DEBUG_LIST is not set
860# CONFIG_DEBUG_SG is not set 928# CONFIG_DEBUG_SG is not set
861# CONFIG_DEBUG_NOTIFIERS is not set 929# CONFIG_DEBUG_NOTIFIERS is not set
862# CONFIG_BOOT_PRINTK_DELAY is not set 930# CONFIG_DEBUG_CREDENTIALS is not set
863# CONFIG_RCU_TORTURE_TEST is not set 931# CONFIG_RCU_TORTURE_TEST is not set
864# CONFIG_RCU_CPU_STALL_DETECTOR is not set 932# CONFIG_RCU_CPU_STALL_DETECTOR is not set
865# CONFIG_BACKTRACE_SELF_TEST is not set 933# CONFIG_BACKTRACE_SELF_TEST is not set
866# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 934# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
935# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
867# CONFIG_FAULT_INJECTION is not set 936# CONFIG_FAULT_INJECTION is not set
868# CONFIG_LATENCYTOP is not set 937# CONFIG_LATENCYTOP is not set
869CONFIG_SYSCTL_SYSCALL_CHECK=y 938CONFIG_SYSCTL_SYSCALL_CHECK=y
@@ -873,24 +942,26 @@ CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
873CONFIG_HAVE_DYNAMIC_FTRACE=y 942CONFIG_HAVE_DYNAMIC_FTRACE=y
874CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 943CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
875CONFIG_TRACING_SUPPORT=y 944CONFIG_TRACING_SUPPORT=y
876 945CONFIG_FTRACE=y
877#
878# Tracers
879#
880# CONFIG_FUNCTION_TRACER is not set 946# CONFIG_FUNCTION_TRACER is not set
947# CONFIG_IRQSOFF_TRACER is not set
881# CONFIG_SCHED_TRACER is not set 948# CONFIG_SCHED_TRACER is not set
882# CONFIG_CONTEXT_SWITCH_TRACER is not set 949# CONFIG_ENABLE_DEFAULT_TRACERS is not set
883# CONFIG_EVENT_TRACER is not set
884# CONFIG_BOOT_TRACER is not set 950# CONFIG_BOOT_TRACER is not set
885# CONFIG_TRACE_BRANCH_PROFILING is not set 951CONFIG_BRANCH_PROFILE_NONE=y
952# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
953# CONFIG_PROFILE_ALL_BRANCHES is not set
886# CONFIG_STACK_TRACER is not set 954# CONFIG_STACK_TRACER is not set
887# CONFIG_KMEMTRACE is not set 955# CONFIG_KMEMTRACE is not set
888# CONFIG_WORKQUEUE_TRACER is not set 956# CONFIG_WORKQUEUE_TRACER is not set
889# CONFIG_BLK_DEV_IO_TRACE is not set 957# CONFIG_BLK_DEV_IO_TRACE is not set
890# CONFIG_DYNAMIC_DEBUG is not set 958# CONFIG_DYNAMIC_DEBUG is not set
959# CONFIG_DMA_API_DEBUG is not set
891# CONFIG_SAMPLES is not set 960# CONFIG_SAMPLES is not set
892CONFIG_HAVE_ARCH_KGDB=y 961CONFIG_HAVE_ARCH_KGDB=y
893# CONFIG_KGDB is not set 962# CONFIG_KGDB is not set
963# CONFIG_PPC_DISABLE_WERROR is not set
964CONFIG_PPC_WERROR=y
894CONFIG_PRINT_STACK_DEPTH=64 965CONFIG_PRINT_STACK_DEPTH=64
895# CONFIG_DEBUG_STACKOVERFLOW is not set 966# CONFIG_DEBUG_STACKOVERFLOW is not set
896# CONFIG_DEBUG_STACK_USAGE is not set 967# CONFIG_DEBUG_STACK_USAGE is not set
@@ -910,13 +981,16 @@ CONFIG_PRINT_STACK_DEPTH=64
910# CONFIG_KEYS is not set 981# CONFIG_KEYS is not set
911# CONFIG_SECURITY is not set 982# CONFIG_SECURITY is not set
912# CONFIG_SECURITYFS is not set 983# CONFIG_SECURITYFS is not set
913# CONFIG_SECURITY_FILE_CAPABILITIES is not set 984# CONFIG_DEFAULT_SECURITY_SELINUX is not set
985# CONFIG_DEFAULT_SECURITY_SMACK is not set
986# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
987CONFIG_DEFAULT_SECURITY_DAC=y
988CONFIG_DEFAULT_SECURITY=""
914CONFIG_CRYPTO=y 989CONFIG_CRYPTO=y
915 990
916# 991#
917# Crypto core or helper 992# Crypto core or helper
918# 993#
919# CONFIG_CRYPTO_FIPS is not set
920CONFIG_CRYPTO_ALGAPI=y 994CONFIG_CRYPTO_ALGAPI=y
921CONFIG_CRYPTO_ALGAPI2=y 995CONFIG_CRYPTO_ALGAPI2=y
922CONFIG_CRYPTO_AEAD2=y 996CONFIG_CRYPTO_AEAD2=y
@@ -958,11 +1032,13 @@ CONFIG_CRYPTO_PCBC=y
958# 1032#
959# CONFIG_CRYPTO_HMAC is not set 1033# CONFIG_CRYPTO_HMAC is not set
960# CONFIG_CRYPTO_XCBC is not set 1034# CONFIG_CRYPTO_XCBC is not set
1035# CONFIG_CRYPTO_VMAC is not set
961 1036
962# 1037#
963# Digest 1038# Digest
964# 1039#
965# CONFIG_CRYPTO_CRC32C is not set 1040# CONFIG_CRYPTO_CRC32C is not set
1041# CONFIG_CRYPTO_GHASH is not set
966# CONFIG_CRYPTO_MD4 is not set 1042# CONFIG_CRYPTO_MD4 is not set
967CONFIG_CRYPTO_MD5=y 1043CONFIG_CRYPTO_MD5=y
968# CONFIG_CRYPTO_MICHAEL_MIC is not set 1044# CONFIG_CRYPTO_MICHAEL_MIC is not set
diff --git a/arch/powerpc/configs/40x/walnut_defconfig b/arch/powerpc/configs/40x/walnut_defconfig
index 5ab29dddd21c..bfff0eae39d2 100644
--- a/arch/powerpc/configs/40x/walnut_defconfig
+++ b/arch/powerpc/configs/40x/walnut_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:17:57 2009 4# Mon Jan 4 15:56:30 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14CONFIG_40x=y 14CONFIG_40x=y
@@ -16,6 +16,7 @@ CONFIG_40x=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_4xx=y 17CONFIG_4xx=y
18CONFIG_PPC_MMU_NOHASH=y 18CONFIG_PPC_MMU_NOHASH=y
19CONFIG_PPC_MMU_NOHASH_32=y
19# CONFIG_PPC_MM_SLICES is not set 20# CONFIG_PPC_MM_SLICES is not set
20CONFIG_NOT_COHERENT_CACHE=y 21CONFIG_NOT_COHERENT_CACHE=y
21CONFIG_PPC32=y 22CONFIG_PPC32=y
@@ -27,15 +28,18 @@ CONFIG_GENERIC_TIME=y
27CONFIG_GENERIC_TIME_VSYSCALL=y 28CONFIG_GENERIC_TIME_VSYSCALL=y
28CONFIG_GENERIC_CLOCKEVENTS=y 29CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
30# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
31CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
32CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
33CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
34CONFIG_LOCKDEP_SUPPORT=y 39CONFIG_LOCKDEP_SUPPORT=y
35CONFIG_RWSEM_XCHGADD_ALGORITHM=y 40CONFIG_RWSEM_XCHGADD_ALGORITHM=y
36CONFIG_ARCH_HAS_ILOG2_U32=y 41CONFIG_ARCH_HAS_ILOG2_U32=y
37CONFIG_GENERIC_HWEIGHT=y 42CONFIG_GENERIC_HWEIGHT=y
38CONFIG_GENERIC_CALIBRATE_DELAY=y
39CONFIG_GENERIC_FIND_NEXT_BIT=y 43CONFIG_GENERIC_FIND_NEXT_BIT=y
40# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
41CONFIG_PPC=y 45CONFIG_PPC=y
@@ -49,11 +53,15 @@ CONFIG_PPC_UDBG_16550=y
49# CONFIG_GENERIC_TBSYNC is not set 53# CONFIG_GENERIC_TBSYNC is not set
50CONFIG_AUDIT_ARCH=y 54CONFIG_AUDIT_ARCH=y
51CONFIG_GENERIC_BUG=y 55CONFIG_GENERIC_BUG=y
56CONFIG_DTC=y
52# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
53CONFIG_PPC_DCR_NATIVE=y 59CONFIG_PPC_DCR_NATIVE=y
54# CONFIG_PPC_DCR_MMIO is not set 60# CONFIG_PPC_DCR_MMIO is not set
55CONFIG_PPC_DCR=y 61CONFIG_PPC_DCR=y
62CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
56CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 63CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
64CONFIG_CONSTRUCTORS=y
57 65
58# 66#
59# General setup 67# General setup
@@ -67,9 +75,21 @@ CONFIG_SWAP=y
67CONFIG_SYSVIPC=y 75CONFIG_SYSVIPC=y
68CONFIG_SYSVIPC_SYSCTL=y 76CONFIG_SYSVIPC_SYSCTL=y
69CONFIG_POSIX_MQUEUE=y 77CONFIG_POSIX_MQUEUE=y
78CONFIG_POSIX_MQUEUE_SYSCTL=y
70# CONFIG_BSD_PROCESS_ACCT is not set 79# CONFIG_BSD_PROCESS_ACCT is not set
71# CONFIG_TASKSTATS is not set 80# CONFIG_TASKSTATS is not set
72# CONFIG_AUDIT is not set 81# CONFIG_AUDIT is not set
82
83#
84# RCU Subsystem
85#
86CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set
88# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set
92# CONFIG_TREE_RCU_TRACE is not set
73# CONFIG_IKCONFIG is not set 93# CONFIG_IKCONFIG is not set
74CONFIG_LOG_BUF_SHIFT=14 94CONFIG_LOG_BUF_SHIFT=14
75CONFIG_GROUP_SCHED=y 95CONFIG_GROUP_SCHED=y
@@ -84,31 +104,40 @@ CONFIG_SYSFS_DEPRECATED_V2=y
84# CONFIG_NAMESPACES is not set 104# CONFIG_NAMESPACES is not set
85CONFIG_BLK_DEV_INITRD=y 105CONFIG_BLK_DEV_INITRD=y
86CONFIG_INITRAMFS_SOURCE="" 106CONFIG_INITRAMFS_SOURCE=""
107CONFIG_RD_GZIP=y
108# CONFIG_RD_BZIP2 is not set
109# CONFIG_RD_LZMA is not set
87# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 110# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
88CONFIG_SYSCTL=y 111CONFIG_SYSCTL=y
112CONFIG_ANON_INODES=y
89CONFIG_EMBEDDED=y 113CONFIG_EMBEDDED=y
90CONFIG_SYSCTL_SYSCALL=y 114CONFIG_SYSCTL_SYSCALL=y
91CONFIG_KALLSYMS=y 115CONFIG_KALLSYMS=y
92CONFIG_KALLSYMS_ALL=y 116CONFIG_KALLSYMS_ALL=y
93CONFIG_KALLSYMS_STRIP_GENERATED=y
94CONFIG_KALLSYMS_EXTRA_PASS=y 117CONFIG_KALLSYMS_EXTRA_PASS=y
95CONFIG_HOTPLUG=y 118CONFIG_HOTPLUG=y
96CONFIG_PRINTK=y 119CONFIG_PRINTK=y
97CONFIG_BUG=y 120CONFIG_BUG=y
98CONFIG_ELF_CORE=y 121CONFIG_ELF_CORE=y
99CONFIG_COMPAT_BRK=y
100CONFIG_BASE_FULL=y 122CONFIG_BASE_FULL=y
101CONFIG_FUTEX=y 123CONFIG_FUTEX=y
102CONFIG_ANON_INODES=y
103CONFIG_EPOLL=y 124CONFIG_EPOLL=y
104CONFIG_SIGNALFD=y 125CONFIG_SIGNALFD=y
105CONFIG_TIMERFD=y 126CONFIG_TIMERFD=y
106CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
107CONFIG_SHMEM=y 128CONFIG_SHMEM=y
108CONFIG_AIO=y 129CONFIG_AIO=y
130CONFIG_HAVE_PERF_EVENTS=y
131
132#
133# Kernel Performance Events And Counters
134#
135# CONFIG_PERF_EVENTS is not set
136# CONFIG_PERF_COUNTERS is not set
109CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
110CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
111CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
140CONFIG_COMPAT_BRK=y
112# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
113CONFIG_SLUB=y 142CONFIG_SLUB=y
114# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
@@ -120,6 +149,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
120CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
121CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
122CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
154
155#
156# GCOV-based kernel profiling
157#
158# CONFIG_GCOV_KERNEL is not set
159# CONFIG_SLOW_WORK is not set
123# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 160# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
124CONFIG_SLABINFO=y 161CONFIG_SLABINFO=y
125CONFIG_RT_MUTEXES=y 162CONFIG_RT_MUTEXES=y
@@ -131,8 +168,7 @@ CONFIG_MODULE_UNLOAD=y
131# CONFIG_MODVERSIONS is not set 168# CONFIG_MODVERSIONS is not set
132# CONFIG_MODULE_SRCVERSION_ALL is not set 169# CONFIG_MODULE_SRCVERSION_ALL is not set
133CONFIG_BLOCK=y 170CONFIG_BLOCK=y
134CONFIG_LBD=y 171CONFIG_LBDAF=y
135# CONFIG_BLK_DEV_IO_TRACE is not set
136# CONFIG_BLK_DEV_BSG is not set 172# CONFIG_BLK_DEV_BSG is not set
137# CONFIG_BLK_DEV_INTEGRITY is not set 173# CONFIG_BLK_DEV_INTEGRITY is not set
138 174
@@ -140,19 +176,41 @@ CONFIG_LBD=y
140# IO Schedulers 176# IO Schedulers
141# 177#
142CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
143CONFIG_IOSCHED_AS=y
144CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
145CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
146CONFIG_DEFAULT_AS=y
147# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
148# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
149# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
150CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
151CONFIG_CLASSIC_RCU=y 185# CONFIG_INLINE_SPIN_TRYLOCK is not set
152# CONFIG_TREE_RCU is not set 186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
153# CONFIG_PREEMPT_RCU is not set 187# CONFIG_INLINE_SPIN_LOCK is not set
154# CONFIG_TREE_RCU_TRACE is not set 188# CONFIG_INLINE_SPIN_LOCK_BH is not set
155# CONFIG_PREEMPT_RCU_TRACE is not set 189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
156# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
157# CONFIG_PPC4xx_PCI_EXPRESS is not set 215# CONFIG_PPC4xx_PCI_EXPRESS is not set
158 216
@@ -166,6 +224,7 @@ CONFIG_CLASSIC_RCU=y
166# CONFIG_ACADIA is not set 224# CONFIG_ACADIA is not set
167# CONFIG_EP405 is not set 225# CONFIG_EP405 is not set
168# CONFIG_HCU4 is not set 226# CONFIG_HCU4 is not set
227# CONFIG_HOTFOOT is not set
169# CONFIG_KILAUEA is not set 228# CONFIG_KILAUEA is not set
170# CONFIG_MAKALU is not set 229# CONFIG_MAKALU is not set
171CONFIG_WALNUT=y 230CONFIG_WALNUT=y
@@ -211,10 +270,12 @@ CONFIG_BINFMT_ELF=y
211# CONFIG_BINFMT_MISC is not set 270# CONFIG_BINFMT_MISC is not set
212# CONFIG_MATH_EMULATION is not set 271# CONFIG_MATH_EMULATION is not set
213# CONFIG_IOMMU_HELPER is not set 272# CONFIG_IOMMU_HELPER is not set
214CONFIG_PPC_NEED_DMA_SYNC_OPS=y 273# CONFIG_SWIOTLB is not set
215CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 274CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
216CONFIG_ARCH_HAS_WALK_MEMORY=y 275CONFIG_ARCH_HAS_WALK_MEMORY=y
217CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 276CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
277CONFIG_SPARSE_IRQ=y
278CONFIG_MAX_ACTIVE_REGIONS=32
218CONFIG_ARCH_FLATMEM_ENABLE=y 279CONFIG_ARCH_FLATMEM_ENABLE=y
219CONFIG_ARCH_POPULATES_NODE_MAP=y 280CONFIG_ARCH_POPULATES_NODE_MAP=y
220CONFIG_SELECT_MEMORY_MODEL=y 281CONFIG_SELECT_MEMORY_MODEL=y
@@ -230,10 +291,12 @@ CONFIG_MIGRATION=y
230CONFIG_ZONE_DMA_FLAG=1 291CONFIG_ZONE_DMA_FLAG=1
231CONFIG_BOUNCE=y 292CONFIG_BOUNCE=y
232CONFIG_VIRT_TO_BUS=y 293CONFIG_VIRT_TO_BUS=y
233CONFIG_UNEVICTABLE_LRU=y 294# CONFIG_KSM is not set
295CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
234CONFIG_PPC_4K_PAGES=y 296CONFIG_PPC_4K_PAGES=y
235# CONFIG_PPC_16K_PAGES is not set 297# CONFIG_PPC_16K_PAGES is not set
236# CONFIG_PPC_64K_PAGES is not set 298# CONFIG_PPC_64K_PAGES is not set
299# CONFIG_PPC_256K_PAGES is not set
237CONFIG_FORCE_MAX_ZONEORDER=11 300CONFIG_FORCE_MAX_ZONEORDER=11
238CONFIG_PROC_DEVICETREE=y 301CONFIG_PROC_DEVICETREE=y
239# CONFIG_CMDLINE_BOOL is not set 302# CONFIG_CMDLINE_BOOL is not set
@@ -258,6 +321,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
258# CONFIG_PCI_LEGACY is not set 321# CONFIG_PCI_LEGACY is not set
259# CONFIG_PCI_DEBUG is not set 322# CONFIG_PCI_DEBUG is not set
260# CONFIG_PCI_STUB is not set 323# CONFIG_PCI_STUB is not set
324# CONFIG_PCI_IOV is not set
261# CONFIG_PCCARD is not set 325# CONFIG_PCCARD is not set
262# CONFIG_HOTPLUG_PCI is not set 326# CONFIG_HOTPLUG_PCI is not set
263# CONFIG_HAS_RAPIDIO is not set 327# CONFIG_HAS_RAPIDIO is not set
@@ -275,14 +339,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
275CONFIG_KERNEL_START=0xc0000000 339CONFIG_KERNEL_START=0xc0000000
276CONFIG_PHYSICAL_START=0x00000000 340CONFIG_PHYSICAL_START=0x00000000
277CONFIG_TASK_SIZE=0xc0000000 341CONFIG_TASK_SIZE=0xc0000000
278CONFIG_CONSISTENT_START=0xff100000
279CONFIG_CONSISTENT_SIZE=0x00200000 342CONFIG_CONSISTENT_SIZE=0x00200000
280CONFIG_NET=y 343CONFIG_NET=y
281 344
282# 345#
283# Networking options 346# Networking options
284# 347#
285CONFIG_COMPAT_NET_DEV_OPS=y
286CONFIG_PACKET=y 348CONFIG_PACKET=y
287# CONFIG_PACKET_MMAP is not set 349# CONFIG_PACKET_MMAP is not set
288CONFIG_UNIX=y 350CONFIG_UNIX=y
@@ -319,6 +381,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
319# CONFIG_NETFILTER is not set 381# CONFIG_NETFILTER is not set
320# CONFIG_IP_DCCP is not set 382# CONFIG_IP_DCCP is not set
321# CONFIG_IP_SCTP is not set 383# CONFIG_IP_SCTP is not set
384# CONFIG_RDS is not set
322# CONFIG_TIPC is not set 385# CONFIG_TIPC is not set
323# CONFIG_ATM is not set 386# CONFIG_ATM is not set
324# CONFIG_BRIDGE is not set 387# CONFIG_BRIDGE is not set
@@ -332,6 +395,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
332# CONFIG_LAPB is not set 395# CONFIG_LAPB is not set
333# CONFIG_ECONET is not set 396# CONFIG_ECONET is not set
334# CONFIG_WAN_ROUTER is not set 397# CONFIG_WAN_ROUTER is not set
398# CONFIG_PHONET is not set
399# CONFIG_IEEE802154 is not set
335# CONFIG_NET_SCHED is not set 400# CONFIG_NET_SCHED is not set
336# CONFIG_DCB is not set 401# CONFIG_DCB is not set
337 402
@@ -344,8 +409,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
344# CONFIG_IRDA is not set 409# CONFIG_IRDA is not set
345# CONFIG_BT is not set 410# CONFIG_BT is not set
346# CONFIG_AF_RXRPC is not set 411# CONFIG_AF_RXRPC is not set
347# CONFIG_PHONET is not set 412CONFIG_WIRELESS=y
348# CONFIG_WIRELESS is not set 413# CONFIG_CFG80211 is not set
414# CONFIG_LIB80211 is not set
415
416#
417# CFG80211 needs to be enabled for MAC80211
418#
349# CONFIG_WIMAX is not set 419# CONFIG_WIMAX is not set
350# CONFIG_RFKILL is not set 420# CONFIG_RFKILL is not set
351# CONFIG_NET_9P is not set 421# CONFIG_NET_9P is not set
@@ -358,6 +428,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
358# Generic Driver Options 428# Generic Driver Options
359# 429#
360CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 430CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
431# CONFIG_DEVTMPFS is not set
361CONFIG_STANDALONE=y 432CONFIG_STANDALONE=y
362CONFIG_PREVENT_FIRMWARE_BUILD=y 433CONFIG_PREVENT_FIRMWARE_BUILD=y
363CONFIG_FW_LOADER=y 434CONFIG_FW_LOADER=y
@@ -370,9 +441,9 @@ CONFIG_CONNECTOR=y
370CONFIG_PROC_EVENTS=y 441CONFIG_PROC_EVENTS=y
371CONFIG_MTD=y 442CONFIG_MTD=y
372# CONFIG_MTD_DEBUG is not set 443# CONFIG_MTD_DEBUG is not set
444# CONFIG_MTD_TESTS is not set
373# CONFIG_MTD_CONCAT is not set 445# CONFIG_MTD_CONCAT is not set
374CONFIG_MTD_PARTITIONS=y 446CONFIG_MTD_PARTITIONS=y
375# CONFIG_MTD_TESTS is not set
376# CONFIG_MTD_REDBOOT_PARTS is not set 447# CONFIG_MTD_REDBOOT_PARTS is not set
377CONFIG_MTD_CMDLINE_PARTS=y 448CONFIG_MTD_CMDLINE_PARTS=y
378CONFIG_MTD_OF_PARTS=y 449CONFIG_MTD_OF_PARTS=y
@@ -448,7 +519,6 @@ CONFIG_MTD_PHYSMAP_OF=y
448# LPDDR flash memory drivers 519# LPDDR flash memory drivers
449# 520#
450# CONFIG_MTD_LPDDR is not set 521# CONFIG_MTD_LPDDR is not set
451# CONFIG_MTD_QINFO_PROBE is not set
452 522
453# 523#
454# UBI - Unsorted block images 524# UBI - Unsorted block images
@@ -464,6 +534,7 @@ CONFIG_BLK_DEV=y
464# CONFIG_BLK_DEV_UMEM is not set 534# CONFIG_BLK_DEV_UMEM is not set
465# CONFIG_BLK_DEV_COW_COMMON is not set 535# CONFIG_BLK_DEV_COW_COMMON is not set
466# CONFIG_BLK_DEV_LOOP is not set 536# CONFIG_BLK_DEV_LOOP is not set
537# CONFIG_BLK_DEV_DRBD is not set
467# CONFIG_BLK_DEV_NBD is not set 538# CONFIG_BLK_DEV_NBD is not set
468# CONFIG_BLK_DEV_SX8 is not set 539# CONFIG_BLK_DEV_SX8 is not set
469CONFIG_BLK_DEV_RAM=y 540CONFIG_BLK_DEV_RAM=y
@@ -476,12 +547,17 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
476# CONFIG_BLK_DEV_HD is not set 547# CONFIG_BLK_DEV_HD is not set
477CONFIG_MISC_DEVICES=y 548CONFIG_MISC_DEVICES=y
478# CONFIG_PHANTOM is not set 549# CONFIG_PHANTOM is not set
479# CONFIG_EEPROM_93CX6 is not set
480# CONFIG_SGI_IOC4 is not set 550# CONFIG_SGI_IOC4 is not set
481# CONFIG_TIFM_CORE is not set 551# CONFIG_TIFM_CORE is not set
482# CONFIG_ENCLOSURE_SERVICES is not set 552# CONFIG_ENCLOSURE_SERVICES is not set
483# CONFIG_HP_ILO is not set 553# CONFIG_HP_ILO is not set
484# CONFIG_C2PORT is not set 554# CONFIG_C2PORT is not set
555
556#
557# EEPROM support
558#
559# CONFIG_EEPROM_93CX6 is not set
560# CONFIG_CB710_CORE is not set
485CONFIG_HAVE_IDE=y 561CONFIG_HAVE_IDE=y
486# CONFIG_IDE is not set 562# CONFIG_IDE is not set
487 563
@@ -501,7 +577,11 @@ CONFIG_HAVE_IDE=y
501# 577#
502 578
503# 579#
504# Enable only one of the two stacks, unless you know what you are doing 580# You can enable one or both FireWire driver stacks.
581#
582
583#
584# See the help texts for more information.
505# 585#
506# CONFIG_FIREWIRE is not set 586# CONFIG_FIREWIRE is not set
507# CONFIG_IEEE1394 is not set 587# CONFIG_IEEE1394 is not set
@@ -522,6 +602,8 @@ CONFIG_NET_ETHERNET=y
522# CONFIG_SUNGEM is not set 602# CONFIG_SUNGEM is not set
523# CONFIG_CASSINI is not set 603# CONFIG_CASSINI is not set
524# CONFIG_NET_VENDOR_3COM is not set 604# CONFIG_NET_VENDOR_3COM is not set
605# CONFIG_ETHOC is not set
606# CONFIG_DNET is not set
525# CONFIG_NET_TULIP is not set 607# CONFIG_NET_TULIP is not set
526# CONFIG_HP100 is not set 608# CONFIG_HP100 is not set
527CONFIG_IBM_NEW_EMAC=y 609CONFIG_IBM_NEW_EMAC=y
@@ -540,7 +622,10 @@ CONFIG_IBM_NEW_EMAC_ZMII=y
540# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 622# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
541# CONFIG_NET_PCI is not set 623# CONFIG_NET_PCI is not set
542# CONFIG_B44 is not set 624# CONFIG_B44 is not set
625# CONFIG_KS8842 is not set
626# CONFIG_KS8851_MLL is not set
543# CONFIG_ATL2 is not set 627# CONFIG_ATL2 is not set
628# CONFIG_XILINX_EMACLITE is not set
544CONFIG_NETDEV_1000=y 629CONFIG_NETDEV_1000=y
545# CONFIG_ACENIC is not set 630# CONFIG_ACENIC is not set
546# CONFIG_DL2K is not set 631# CONFIG_DL2K is not set
@@ -548,6 +633,7 @@ CONFIG_NETDEV_1000=y
548# CONFIG_E1000E is not set 633# CONFIG_E1000E is not set
549# CONFIG_IP1000 is not set 634# CONFIG_IP1000 is not set
550# CONFIG_IGB is not set 635# CONFIG_IGB is not set
636# CONFIG_IGBVF is not set
551# CONFIG_NS83820 is not set 637# CONFIG_NS83820 is not set
552# CONFIG_HAMACHI is not set 638# CONFIG_HAMACHI is not set
553# CONFIG_YELLOWFIN is not set 639# CONFIG_YELLOWFIN is not set
@@ -558,9 +644,13 @@ CONFIG_NETDEV_1000=y
558# CONFIG_VIA_VELOCITY is not set 644# CONFIG_VIA_VELOCITY is not set
559# CONFIG_TIGON3 is not set 645# CONFIG_TIGON3 is not set
560# CONFIG_BNX2 is not set 646# CONFIG_BNX2 is not set
647# CONFIG_CNIC is not set
648# CONFIG_MV643XX_ETH is not set
649# CONFIG_XILINX_LL_TEMAC is not set
561# CONFIG_QLA3XXX is not set 650# CONFIG_QLA3XXX is not set
562# CONFIG_ATL1 is not set 651# CONFIG_ATL1 is not set
563# CONFIG_ATL1E is not set 652# CONFIG_ATL1E is not set
653# CONFIG_ATL1C is not set
564# CONFIG_JME is not set 654# CONFIG_JME is not set
565CONFIG_NETDEV_10000=y 655CONFIG_NETDEV_10000=y
566# CONFIG_CHELSIO_T1 is not set 656# CONFIG_CHELSIO_T1 is not set
@@ -570,6 +660,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
570# CONFIG_IXGBE is not set 660# CONFIG_IXGBE is not set
571# CONFIG_IXGB is not set 661# CONFIG_IXGB is not set
572# CONFIG_S2IO is not set 662# CONFIG_S2IO is not set
663# CONFIG_VXGE is not set
573# CONFIG_MYRI10GE is not set 664# CONFIG_MYRI10GE is not set
574# CONFIG_NETXEN_NIC is not set 665# CONFIG_NETXEN_NIC is not set
575# CONFIG_NIU is not set 666# CONFIG_NIU is not set
@@ -579,14 +670,13 @@ CONFIG_CHELSIO_T3_DEPENDS=y
579# CONFIG_BNX2X is not set 670# CONFIG_BNX2X is not set
580# CONFIG_QLGE is not set 671# CONFIG_QLGE is not set
581# CONFIG_SFC is not set 672# CONFIG_SFC is not set
673# CONFIG_BE2NET is not set
582# CONFIG_TR is not set 674# CONFIG_TR is not set
583 675CONFIG_WLAN=y
584# 676# CONFIG_AIRO is not set
585# Wireless LAN 677# CONFIG_ATMEL is not set
586# 678# CONFIG_PRISM54 is not set
587# CONFIG_WLAN_PRE80211 is not set 679# CONFIG_HOSTAP is not set
588# CONFIG_WLAN_80211 is not set
589# CONFIG_IWLWIFI_LEDS is not set
590 680
591# 681#
592# Enable WiMAX (Networking options) to see the WiMAX drivers 682# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -599,6 +689,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
599# CONFIG_NETCONSOLE is not set 689# CONFIG_NETCONSOLE is not set
600# CONFIG_NETPOLL is not set 690# CONFIG_NETPOLL is not set
601# CONFIG_NET_POLL_CONTROLLER is not set 691# CONFIG_NET_POLL_CONTROLLER is not set
692# CONFIG_VMXNET3 is not set
602# CONFIG_ISDN is not set 693# CONFIG_ISDN is not set
603# CONFIG_PHONE is not set 694# CONFIG_PHONE is not set
604 695
@@ -644,6 +735,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
644# CONFIG_SERIAL_JSM is not set 735# CONFIG_SERIAL_JSM is not set
645CONFIG_SERIAL_OF_PLATFORM=y 736CONFIG_SERIAL_OF_PLATFORM=y
646# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 737# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
738# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
647CONFIG_UNIX98_PTYS=y 739CONFIG_UNIX98_PTYS=y
648# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 740# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
649CONFIG_LEGACY_PTYS=y 741CONFIG_LEGACY_PTYS=y
@@ -660,6 +752,11 @@ CONFIG_LEGACY_PTY_COUNT=256
660CONFIG_DEVPORT=y 752CONFIG_DEVPORT=y
661# CONFIG_I2C is not set 753# CONFIG_I2C is not set
662# CONFIG_SPI is not set 754# CONFIG_SPI is not set
755
756#
757# PPS support
758#
759# CONFIG_PPS is not set
663CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 760CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
664# CONFIG_GPIOLIB is not set 761# CONFIG_GPIOLIB is not set
665# CONFIG_W1 is not set 762# CONFIG_W1 is not set
@@ -682,27 +779,13 @@ CONFIG_SSB_POSSIBLE=y
682# CONFIG_HTC_PASIC3 is not set 779# CONFIG_HTC_PASIC3 is not set
683# CONFIG_MFD_TMIO is not set 780# CONFIG_MFD_TMIO is not set
684# CONFIG_REGULATOR is not set 781# CONFIG_REGULATOR is not set
685 782# CONFIG_MEDIA_SUPPORT is not set
686#
687# Multimedia devices
688#
689
690#
691# Multimedia core support
692#
693# CONFIG_VIDEO_DEV is not set
694# CONFIG_DVB_CORE is not set
695# CONFIG_VIDEO_MEDIA is not set
696
697#
698# Multimedia drivers
699#
700# CONFIG_DAB is not set
701 783
702# 784#
703# Graphics support 785# Graphics support
704# 786#
705# CONFIG_AGP is not set 787# CONFIG_AGP is not set
788CONFIG_VGA_ARB=y
706# CONFIG_DRM is not set 789# CONFIG_DRM is not set
707# CONFIG_VGASTATE is not set 790# CONFIG_VGASTATE is not set
708CONFIG_VIDEO_OUTPUT_CONTROL=m 791CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -727,7 +810,7 @@ CONFIG_USB_ARCH_HAS_EHCI=y
727# 810#
728 811
729# 812#
730# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 813# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
731# 814#
732# CONFIG_USB_GADGET is not set 815# CONFIG_USB_GADGET is not set
733 816
@@ -743,7 +826,12 @@ CONFIG_USB_ARCH_HAS_EHCI=y
743# CONFIG_EDAC is not set 826# CONFIG_EDAC is not set
744# CONFIG_RTC_CLASS is not set 827# CONFIG_RTC_CLASS is not set
745# CONFIG_DMADEVICES is not set 828# CONFIG_DMADEVICES is not set
829# CONFIG_AUXDISPLAY is not set
746# CONFIG_UIO is not set 830# CONFIG_UIO is not set
831
832#
833# TI VLYNQ
834#
747# CONFIG_STAGING is not set 835# CONFIG_STAGING is not set
748 836
749# 837#
@@ -754,14 +842,17 @@ CONFIG_EXT2_FS=y
754# CONFIG_EXT2_FS_XIP is not set 842# CONFIG_EXT2_FS_XIP is not set
755# CONFIG_EXT3_FS is not set 843# CONFIG_EXT3_FS is not set
756# CONFIG_EXT4_FS is not set 844# CONFIG_EXT4_FS is not set
845CONFIG_EXT4_USE_FOR_EXT23=y
757# CONFIG_REISERFS_FS is not set 846# CONFIG_REISERFS_FS is not set
758# CONFIG_JFS_FS is not set 847# CONFIG_JFS_FS is not set
759# CONFIG_FS_POSIX_ACL is not set 848# CONFIG_FS_POSIX_ACL is not set
760CONFIG_FILE_LOCKING=y
761# CONFIG_XFS_FS is not set 849# CONFIG_XFS_FS is not set
762# CONFIG_GFS2_FS is not set 850# CONFIG_GFS2_FS is not set
763# CONFIG_OCFS2_FS is not set 851# CONFIG_OCFS2_FS is not set
764# CONFIG_BTRFS_FS is not set 852# CONFIG_BTRFS_FS is not set
853# CONFIG_NILFS2_FS is not set
854CONFIG_FILE_LOCKING=y
855CONFIG_FSNOTIFY=y
765CONFIG_DNOTIFY=y 856CONFIG_DNOTIFY=y
766CONFIG_INOTIFY=y 857CONFIG_INOTIFY=y
767CONFIG_INOTIFY_USER=y 858CONFIG_INOTIFY_USER=y
@@ -771,6 +862,11 @@ CONFIG_INOTIFY_USER=y
771# CONFIG_FUSE_FS is not set 862# CONFIG_FUSE_FS is not set
772 863
773# 864#
865# Caches
866#
867# CONFIG_FSCACHE is not set
868
869#
774# CD-ROM/DVD Filesystems 870# CD-ROM/DVD Filesystems
775# 871#
776# CONFIG_ISO9660_FS is not set 872# CONFIG_ISO9660_FS is not set
@@ -825,7 +921,6 @@ CONFIG_LOCKD=y
825CONFIG_LOCKD_V4=y 921CONFIG_LOCKD_V4=y
826CONFIG_NFS_COMMON=y 922CONFIG_NFS_COMMON=y
827CONFIG_SUNRPC=y 923CONFIG_SUNRPC=y
828# CONFIG_SUNRPC_REGISTER_V4 is not set
829# CONFIG_RPCSEC_GSS_KRB5 is not set 924# CONFIG_RPCSEC_GSS_KRB5 is not set
830# CONFIG_RPCSEC_GSS_SPKM3 is not set 925# CONFIG_RPCSEC_GSS_SPKM3 is not set
831# CONFIG_SMB_FS is not set 926# CONFIG_SMB_FS is not set
@@ -841,6 +936,7 @@ CONFIG_SUNRPC=y
841CONFIG_MSDOS_PARTITION=y 936CONFIG_MSDOS_PARTITION=y
842# CONFIG_NLS is not set 937# CONFIG_NLS is not set
843# CONFIG_DLM is not set 938# CONFIG_DLM is not set
939# CONFIG_BINARY_PRINTF is not set
844 940
845# 941#
846# Library routines 942# Library routines
@@ -855,11 +951,13 @@ CONFIG_CRC32=y
855# CONFIG_CRC7 is not set 951# CONFIG_CRC7 is not set
856# CONFIG_LIBCRC32C is not set 952# CONFIG_LIBCRC32C is not set
857CONFIG_ZLIB_INFLATE=y 953CONFIG_ZLIB_INFLATE=y
858CONFIG_PLIST=y 954CONFIG_DECOMPRESS_GZIP=y
859CONFIG_HAS_IOMEM=y 955CONFIG_HAS_IOMEM=y
860CONFIG_HAS_IOPORT=y 956CONFIG_HAS_IOPORT=y
861CONFIG_HAS_DMA=y 957CONFIG_HAS_DMA=y
862CONFIG_HAVE_LMB=y 958CONFIG_HAVE_LMB=y
959CONFIG_NLATTR=y
960CONFIG_GENERIC_ATOMIC64=y
863 961
864# 962#
865# Kernel hacking 963# Kernel hacking
@@ -869,6 +967,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
869CONFIG_ENABLE_MUST_CHECK=y 967CONFIG_ENABLE_MUST_CHECK=y
870CONFIG_FRAME_WARN=1024 968CONFIG_FRAME_WARN=1024
871CONFIG_MAGIC_SYSRQ=y 969CONFIG_MAGIC_SYSRQ=y
970# CONFIG_STRIP_ASM_SYMS is not set
872# CONFIG_UNUSED_SYMBOLS is not set 971# CONFIG_UNUSED_SYMBOLS is not set
873CONFIG_DEBUG_FS=y 972CONFIG_DEBUG_FS=y
874# CONFIG_HEADERS_CHECK is not set 973# CONFIG_HEADERS_CHECK is not set
@@ -877,16 +976,23 @@ CONFIG_DEBUG_KERNEL=y
877CONFIG_DETECT_SOFTLOCKUP=y 976CONFIG_DETECT_SOFTLOCKUP=y
878# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 977# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
879CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 978CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
979CONFIG_DETECT_HUNG_TASK=y
980# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
981CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
880CONFIG_SCHED_DEBUG=y 982CONFIG_SCHED_DEBUG=y
881# CONFIG_SCHEDSTATS is not set 983# CONFIG_SCHEDSTATS is not set
882# CONFIG_TIMER_STATS is not set 984# CONFIG_TIMER_STATS is not set
883# CONFIG_DEBUG_OBJECTS is not set 985# CONFIG_DEBUG_OBJECTS is not set
884# CONFIG_SLUB_DEBUG_ON is not set 986# CONFIG_SLUB_DEBUG_ON is not set
885# CONFIG_SLUB_STATS is not set 987# CONFIG_SLUB_STATS is not set
988# CONFIG_DEBUG_KMEMLEAK is not set
886# CONFIG_DEBUG_RT_MUTEXES is not set 989# CONFIG_DEBUG_RT_MUTEXES is not set
887# CONFIG_RT_MUTEX_TESTER is not set 990# CONFIG_RT_MUTEX_TESTER is not set
888# CONFIG_DEBUG_SPINLOCK is not set 991# CONFIG_DEBUG_SPINLOCK is not set
889# CONFIG_DEBUG_MUTEXES is not set 992# CONFIG_DEBUG_MUTEXES is not set
993# CONFIG_DEBUG_LOCK_ALLOC is not set
994# CONFIG_PROVE_LOCKING is not set
995# CONFIG_LOCK_STAT is not set
890# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 996# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
891# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 997# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
892# CONFIG_DEBUG_KOBJECT is not set 998# CONFIG_DEBUG_KOBJECT is not set
@@ -898,35 +1004,45 @@ CONFIG_DEBUG_BUGVERBOSE=y
898# CONFIG_DEBUG_LIST is not set 1004# CONFIG_DEBUG_LIST is not set
899# CONFIG_DEBUG_SG is not set 1005# CONFIG_DEBUG_SG is not set
900# CONFIG_DEBUG_NOTIFIERS is not set 1006# CONFIG_DEBUG_NOTIFIERS is not set
901# CONFIG_BOOT_PRINTK_DELAY is not set 1007# CONFIG_DEBUG_CREDENTIALS is not set
902# CONFIG_RCU_TORTURE_TEST is not set 1008# CONFIG_RCU_TORTURE_TEST is not set
903# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1009# CONFIG_RCU_CPU_STALL_DETECTOR is not set
904# CONFIG_BACKTRACE_SELF_TEST is not set 1010# CONFIG_BACKTRACE_SELF_TEST is not set
905# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1011# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1012# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
906# CONFIG_FAULT_INJECTION is not set 1013# CONFIG_FAULT_INJECTION is not set
907# CONFIG_LATENCYTOP is not set 1014# CONFIG_LATENCYTOP is not set
908CONFIG_SYSCTL_SYSCALL_CHECK=y 1015CONFIG_SYSCTL_SYSCALL_CHECK=y
1016# CONFIG_DEBUG_PAGEALLOC is not set
909CONFIG_HAVE_FUNCTION_TRACER=y 1017CONFIG_HAVE_FUNCTION_TRACER=y
1018CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
910CONFIG_HAVE_DYNAMIC_FTRACE=y 1019CONFIG_HAVE_DYNAMIC_FTRACE=y
911CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1020CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
912 1021CONFIG_TRACING_SUPPORT=y
913# 1022CONFIG_FTRACE=y
914# Tracers
915#
916# CONFIG_FUNCTION_TRACER is not set 1023# CONFIG_FUNCTION_TRACER is not set
1024# CONFIG_IRQSOFF_TRACER is not set
917# CONFIG_SCHED_TRACER is not set 1025# CONFIG_SCHED_TRACER is not set
918# CONFIG_CONTEXT_SWITCH_TRACER is not set 1026# CONFIG_ENABLE_DEFAULT_TRACERS is not set
919# CONFIG_BOOT_TRACER is not set 1027# CONFIG_BOOT_TRACER is not set
920# CONFIG_TRACE_BRANCH_PROFILING is not set 1028CONFIG_BRANCH_PROFILE_NONE=y
1029# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1030# CONFIG_PROFILE_ALL_BRANCHES is not set
921# CONFIG_STACK_TRACER is not set 1031# CONFIG_STACK_TRACER is not set
922# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1032# CONFIG_KMEMTRACE is not set
1033# CONFIG_WORKQUEUE_TRACER is not set
1034# CONFIG_BLK_DEV_IO_TRACE is not set
1035# CONFIG_DYNAMIC_DEBUG is not set
1036# CONFIG_DMA_API_DEBUG is not set
923# CONFIG_SAMPLES is not set 1037# CONFIG_SAMPLES is not set
924CONFIG_HAVE_ARCH_KGDB=y 1038CONFIG_HAVE_ARCH_KGDB=y
925# CONFIG_KGDB is not set 1039# CONFIG_KGDB is not set
1040# CONFIG_PPC_DISABLE_WERROR is not set
1041CONFIG_PPC_WERROR=y
926CONFIG_PRINT_STACK_DEPTH=64 1042CONFIG_PRINT_STACK_DEPTH=64
927# CONFIG_DEBUG_STACKOVERFLOW is not set 1043# CONFIG_DEBUG_STACKOVERFLOW is not set
928# CONFIG_DEBUG_STACK_USAGE is not set 1044# CONFIG_DEBUG_STACK_USAGE is not set
929# CONFIG_DEBUG_PAGEALLOC is not set 1045# CONFIG_PPC_EMULATED_STATS is not set
930# CONFIG_CODE_PATCHING_SELFTEST is not set 1046# CONFIG_CODE_PATCHING_SELFTEST is not set
931# CONFIG_FTR_FIXUP_SELFTEST is not set 1047# CONFIG_FTR_FIXUP_SELFTEST is not set
932# CONFIG_MSI_BITMAP_SELFTEST is not set 1048# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -942,13 +1058,16 @@ CONFIG_PRINT_STACK_DEPTH=64
942# CONFIG_KEYS is not set 1058# CONFIG_KEYS is not set
943# CONFIG_SECURITY is not set 1059# CONFIG_SECURITY is not set
944# CONFIG_SECURITYFS is not set 1060# CONFIG_SECURITYFS is not set
945# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1061# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1062# CONFIG_DEFAULT_SECURITY_SMACK is not set
1063# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1064CONFIG_DEFAULT_SECURITY_DAC=y
1065CONFIG_DEFAULT_SECURITY=""
946CONFIG_CRYPTO=y 1066CONFIG_CRYPTO=y
947 1067
948# 1068#
949# Crypto core or helper 1069# Crypto core or helper
950# 1070#
951# CONFIG_CRYPTO_FIPS is not set
952CONFIG_CRYPTO_ALGAPI=y 1071CONFIG_CRYPTO_ALGAPI=y
953CONFIG_CRYPTO_ALGAPI2=y 1072CONFIG_CRYPTO_ALGAPI2=y
954CONFIG_CRYPTO_AEAD2=y 1073CONFIG_CRYPTO_AEAD2=y
@@ -957,10 +1076,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
957CONFIG_CRYPTO_HASH=y 1076CONFIG_CRYPTO_HASH=y
958CONFIG_CRYPTO_HASH2=y 1077CONFIG_CRYPTO_HASH2=y
959CONFIG_CRYPTO_RNG2=y 1078CONFIG_CRYPTO_RNG2=y
1079CONFIG_CRYPTO_PCOMP=y
960CONFIG_CRYPTO_MANAGER=y 1080CONFIG_CRYPTO_MANAGER=y
961CONFIG_CRYPTO_MANAGER2=y 1081CONFIG_CRYPTO_MANAGER2=y
962# CONFIG_CRYPTO_GF128MUL is not set 1082# CONFIG_CRYPTO_GF128MUL is not set
963# CONFIG_CRYPTO_NULL is not set 1083# CONFIG_CRYPTO_NULL is not set
1084CONFIG_CRYPTO_WORKQUEUE=y
964# CONFIG_CRYPTO_CRYPTD is not set 1085# CONFIG_CRYPTO_CRYPTD is not set
965# CONFIG_CRYPTO_AUTHENC is not set 1086# CONFIG_CRYPTO_AUTHENC is not set
966# CONFIG_CRYPTO_TEST is not set 1087# CONFIG_CRYPTO_TEST is not set
@@ -988,11 +1109,13 @@ CONFIG_CRYPTO_PCBC=y
988# 1109#
989# CONFIG_CRYPTO_HMAC is not set 1110# CONFIG_CRYPTO_HMAC is not set
990# CONFIG_CRYPTO_XCBC is not set 1111# CONFIG_CRYPTO_XCBC is not set
1112# CONFIG_CRYPTO_VMAC is not set
991 1113
992# 1114#
993# Digest 1115# Digest
994# 1116#
995# CONFIG_CRYPTO_CRC32C is not set 1117# CONFIG_CRYPTO_CRC32C is not set
1118# CONFIG_CRYPTO_GHASH is not set
996# CONFIG_CRYPTO_MD4 is not set 1119# CONFIG_CRYPTO_MD4 is not set
997CONFIG_CRYPTO_MD5=y 1120CONFIG_CRYPTO_MD5=y
998# CONFIG_CRYPTO_MICHAEL_MIC is not set 1121# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1029,6 +1152,7 @@ CONFIG_CRYPTO_DES=y
1029# Compression 1152# Compression
1030# 1153#
1031# CONFIG_CRYPTO_DEFLATE is not set 1154# CONFIG_CRYPTO_DEFLATE is not set
1155# CONFIG_CRYPTO_ZLIB is not set
1032# CONFIG_CRYPTO_LZO is not set 1156# CONFIG_CRYPTO_LZO is not set
1033 1157
1034# 1158#
@@ -1037,5 +1161,6 @@ CONFIG_CRYPTO_DES=y
1037# CONFIG_CRYPTO_ANSI_CPRNG is not set 1161# CONFIG_CRYPTO_ANSI_CPRNG is not set
1038CONFIG_CRYPTO_HW=y 1162CONFIG_CRYPTO_HW=y
1039# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1163# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1164# CONFIG_CRYPTO_DEV_PPC4XX is not set
1040# CONFIG_PPC_CLOCK is not set 1165# CONFIG_PPC_CLOCK is not set
1041# CONFIG_VIRTUALIZATION is not set 1166# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/arches_defconfig b/arch/powerpc/configs/44x/arches_defconfig
index 6f976b51cdd0..1f6d0490e28d 100644
--- a/arch/powerpc/configs/44x/arches_defconfig
+++ b/arch/powerpc/configs/44x/arches_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.31-rc5 3# Linux kernel version: 2.6.33-rc1
4# Thu Aug 13 14:14:07 2009 4# Mon Jan 4 14:02:35 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -20,6 +20,7 @@ CONFIG_BOOKE=y
20CONFIG_PTE_64BIT=y 20CONFIG_PTE_64BIT=y
21CONFIG_PHYS_64BIT=y 21CONFIG_PHYS_64BIT=y
22CONFIG_PPC_MMU_NOHASH=y 22CONFIG_PPC_MMU_NOHASH=y
23CONFIG_PPC_MMU_NOHASH_32=y
23# CONFIG_PPC_MM_SLICES is not set 24# CONFIG_PPC_MM_SLICES is not set
24CONFIG_NOT_COHERENT_CACHE=y 25CONFIG_NOT_COHERENT_CACHE=y
25CONFIG_PPC32=y 26CONFIG_PPC32=y
@@ -33,7 +34,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
33CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
34CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
35# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
36CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
37CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
38CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
39CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -56,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
56CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
57CONFIG_DTC=y 60CONFIG_DTC=y
58# CONFIG_DEFAULT_UIMAGE is not set 61# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
59CONFIG_PPC_DCR_NATIVE=y 63CONFIG_PPC_DCR_NATIVE=y
60# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
61CONFIG_PPC_DCR=y 65CONFIG_PPC_DCR=y
@@ -83,11 +87,13 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
83# 87#
84# RCU Subsystem 88# RCU Subsystem
85# 89#
86CONFIG_CLASSIC_RCU=y 90CONFIG_TREE_RCU=y
87# CONFIG_TREE_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
88# CONFIG_PREEMPT_RCU is not set 92# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set
89# CONFIG_TREE_RCU_TRACE is not set 96# CONFIG_TREE_RCU_TRACE is not set
90# CONFIG_PREEMPT_RCU_TRACE is not set
91# CONFIG_IKCONFIG is not set 97# CONFIG_IKCONFIG is not set
92CONFIG_LOG_BUF_SHIFT=14 98CONFIG_LOG_BUF_SHIFT=14
93# CONFIG_GROUP_SCHED is not set 99# CONFIG_GROUP_SCHED is not set
@@ -121,22 +127,21 @@ CONFIG_TIMERFD=y
121CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
122CONFIG_SHMEM=y 128CONFIG_SHMEM=y
123CONFIG_AIO=y 129CONFIG_AIO=y
124CONFIG_HAVE_PERF_COUNTERS=y 130CONFIG_HAVE_PERF_EVENTS=y
125 131
126# 132#
127# Performance Counters 133# Kernel Performance Events And Counters
128# 134#
135# CONFIG_PERF_EVENTS is not set
129# CONFIG_PERF_COUNTERS is not set 136# CONFIG_PERF_COUNTERS is not set
130CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
131CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
132CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
133# CONFIG_STRIP_ASM_SYMS is not set
134CONFIG_COMPAT_BRK=y 140CONFIG_COMPAT_BRK=y
135# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
136CONFIG_SLUB=y 142CONFIG_SLUB=y
137# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
138# CONFIG_PROFILING is not set 144# CONFIG_PROFILING is not set
139# CONFIG_MARKERS is not set
140CONFIG_HAVE_OPROFILE=y 145CONFIG_HAVE_OPROFILE=y
141# CONFIG_KPROBES is not set 146# CONFIG_KPROBES is not set
142CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 147CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
@@ -144,6 +149,8 @@ CONFIG_HAVE_IOREMAP_PROT=y
144CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
145CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
146CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
147 154
148# 155#
149# GCOV-based kernel profiling 156# GCOV-based kernel profiling
@@ -169,14 +176,41 @@ CONFIG_LBDAF=y
169# IO Schedulers 176# IO Schedulers
170# 177#
171CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
172CONFIG_IOSCHED_AS=y
173CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
174CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
175CONFIG_DEFAULT_AS=y
176# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
177# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
178# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
179CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
180# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
181CONFIG_PPC4xx_PCI_EXPRESS=y 215CONFIG_PPC4xx_PCI_EXPRESS=y
182 216
@@ -198,6 +232,7 @@ CONFIG_ARCHES=y
198# CONFIG_CANYONLANDS is not set 232# CONFIG_CANYONLANDS is not set
199# CONFIG_GLACIER is not set 233# CONFIG_GLACIER is not set
200# CONFIG_REDWOOD is not set 234# CONFIG_REDWOOD is not set
235# CONFIG_EIGER is not set
201# CONFIG_YOSEMITE is not set 236# CONFIG_YOSEMITE is not set
202# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 237# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
203CONFIG_PPC44x_SIMPLE=y 238CONFIG_PPC44x_SIMPLE=y
@@ -241,10 +276,11 @@ CONFIG_BINFMT_ELF=y
241# CONFIG_MATH_EMULATION is not set 276# CONFIG_MATH_EMULATION is not set
242# CONFIG_IOMMU_HELPER is not set 277# CONFIG_IOMMU_HELPER is not set
243# CONFIG_SWIOTLB is not set 278# CONFIG_SWIOTLB is not set
244CONFIG_PPC_NEED_DMA_SYNC_OPS=y
245CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 279CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
246CONFIG_ARCH_HAS_WALK_MEMORY=y 280CONFIG_ARCH_HAS_WALK_MEMORY=y
247CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
282CONFIG_SPARSE_IRQ=y
283CONFIG_MAX_ACTIVE_REGIONS=32
248CONFIG_ARCH_FLATMEM_ENABLE=y 284CONFIG_ARCH_FLATMEM_ENABLE=y
249CONFIG_ARCH_POPULATES_NODE_MAP=y 285CONFIG_ARCH_POPULATES_NODE_MAP=y
250CONFIG_SELECT_MEMORY_MODEL=y 286CONFIG_SELECT_MEMORY_MODEL=y
@@ -260,8 +296,7 @@ CONFIG_PHYS_ADDR_T_64BIT=y
260CONFIG_ZONE_DMA_FLAG=1 296CONFIG_ZONE_DMA_FLAG=1
261CONFIG_BOUNCE=y 297CONFIG_BOUNCE=y
262CONFIG_VIRT_TO_BUS=y 298CONFIG_VIRT_TO_BUS=y
263CONFIG_HAVE_MLOCK=y 299# CONFIG_KSM is not set
264CONFIG_HAVE_MLOCKED_PAGE_BIT=y
265CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 300CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
266CONFIG_STDBINUTILS=y 301CONFIG_STDBINUTILS=y
267CONFIG_PPC_4K_PAGES=y 302CONFIG_PPC_4K_PAGES=y
@@ -352,6 +387,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
352# CONFIG_NETFILTER is not set 387# CONFIG_NETFILTER is not set
353# CONFIG_IP_DCCP is not set 388# CONFIG_IP_DCCP is not set
354# CONFIG_IP_SCTP is not set 389# CONFIG_IP_SCTP is not set
390# CONFIG_RDS is not set
355# CONFIG_TIPC is not set 391# CONFIG_TIPC is not set
356# CONFIG_ATM is not set 392# CONFIG_ATM is not set
357# CONFIG_BRIDGE is not set 393# CONFIG_BRIDGE is not set
@@ -379,7 +415,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
379# CONFIG_IRDA is not set 415# CONFIG_IRDA is not set
380# CONFIG_BT is not set 416# CONFIG_BT is not set
381# CONFIG_AF_RXRPC is not set 417# CONFIG_AF_RXRPC is not set
382# CONFIG_WIRELESS is not set 418CONFIG_WIRELESS=y
419# CONFIG_CFG80211 is not set
420# CONFIG_LIB80211 is not set
421
422#
423# CFG80211 needs to be enabled for MAC80211
424#
383# CONFIG_WIMAX is not set 425# CONFIG_WIMAX is not set
384# CONFIG_RFKILL is not set 426# CONFIG_RFKILL is not set
385# CONFIG_NET_9P is not set 427# CONFIG_NET_9P is not set
@@ -392,6 +434,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
392# Generic Driver Options 434# Generic Driver Options
393# 435#
394CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 436CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
437# CONFIG_DEVTMPFS is not set
395CONFIG_STANDALONE=y 438CONFIG_STANDALONE=y
396CONFIG_PREVENT_FIRMWARE_BUILD=y 439CONFIG_PREVENT_FIRMWARE_BUILD=y
397CONFIG_FW_LOADER=y 440CONFIG_FW_LOADER=y
@@ -404,9 +447,9 @@ CONFIG_CONNECTOR=y
404CONFIG_PROC_EVENTS=y 447CONFIG_PROC_EVENTS=y
405CONFIG_MTD=y 448CONFIG_MTD=y
406# CONFIG_MTD_DEBUG is not set 449# CONFIG_MTD_DEBUG is not set
450# CONFIG_MTD_TESTS is not set
407# CONFIG_MTD_CONCAT is not set 451# CONFIG_MTD_CONCAT is not set
408CONFIG_MTD_PARTITIONS=y 452CONFIG_MTD_PARTITIONS=y
409# CONFIG_MTD_TESTS is not set
410# CONFIG_MTD_REDBOOT_PARTS is not set 453# CONFIG_MTD_REDBOOT_PARTS is not set
411CONFIG_MTD_CMDLINE_PARTS=y 454CONFIG_MTD_CMDLINE_PARTS=y
412CONFIG_MTD_OF_PARTS=y 455CONFIG_MTD_OF_PARTS=y
@@ -497,6 +540,7 @@ CONFIG_BLK_DEV=y
497# CONFIG_BLK_DEV_UMEM is not set 540# CONFIG_BLK_DEV_UMEM is not set
498# CONFIG_BLK_DEV_COW_COMMON is not set 541# CONFIG_BLK_DEV_COW_COMMON is not set
499# CONFIG_BLK_DEV_LOOP is not set 542# CONFIG_BLK_DEV_LOOP is not set
543# CONFIG_BLK_DEV_DRBD is not set
500# CONFIG_BLK_DEV_NBD is not set 544# CONFIG_BLK_DEV_NBD is not set
501# CONFIG_BLK_DEV_SX8 is not set 545# CONFIG_BLK_DEV_SX8 is not set
502CONFIG_BLK_DEV_RAM=y 546CONFIG_BLK_DEV_RAM=y
@@ -573,16 +617,17 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
573# CONFIG_NET_PCI is not set 617# CONFIG_NET_PCI is not set
574# CONFIG_B44 is not set 618# CONFIG_B44 is not set
575# CONFIG_KS8842 is not set 619# CONFIG_KS8842 is not set
620# CONFIG_KS8851_MLL is not set
576# CONFIG_ATL2 is not set 621# CONFIG_ATL2 is not set
622# CONFIG_XILINX_EMACLITE is not set
577# CONFIG_NETDEV_1000 is not set 623# CONFIG_NETDEV_1000 is not set
578# CONFIG_NETDEV_10000 is not set 624# CONFIG_NETDEV_10000 is not set
579# CONFIG_TR is not set 625# CONFIG_TR is not set
580 626CONFIG_WLAN=y
581# 627# CONFIG_AIRO is not set
582# Wireless LAN 628# CONFIG_ATMEL is not set
583# 629# CONFIG_PRISM54 is not set
584# CONFIG_WLAN_PRE80211 is not set 630# CONFIG_HOSTAP is not set
585# CONFIG_WLAN_80211 is not set
586 631
587# 632#
588# Enable WiMAX (Networking options) to see the WiMAX drivers 633# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -595,6 +640,7 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
595# CONFIG_NETCONSOLE is not set 640# CONFIG_NETCONSOLE is not set
596# CONFIG_NETPOLL is not set 641# CONFIG_NETPOLL is not set
597# CONFIG_NET_POLL_CONTROLLER is not set 642# CONFIG_NET_POLL_CONTROLLER is not set
643# CONFIG_VMXNET3 is not set
598# CONFIG_ISDN is not set 644# CONFIG_ISDN is not set
599# CONFIG_PHONE is not set 645# CONFIG_PHONE is not set
600 646
@@ -640,6 +686,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
640# CONFIG_SERIAL_JSM is not set 686# CONFIG_SERIAL_JSM is not set
641CONFIG_SERIAL_OF_PLATFORM=y 687CONFIG_SERIAL_OF_PLATFORM=y
642# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 688# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
689# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
643CONFIG_UNIX98_PTYS=y 690CONFIG_UNIX98_PTYS=y
644# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 691# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
645CONFIG_LEGACY_PTYS=y 692CONFIG_LEGACY_PTYS=y
@@ -656,6 +703,7 @@ CONFIG_LEGACY_PTY_COUNT=256
656CONFIG_DEVPORT=y 703CONFIG_DEVPORT=y
657CONFIG_I2C=y 704CONFIG_I2C=y
658CONFIG_I2C_BOARDINFO=y 705CONFIG_I2C_BOARDINFO=y
706CONFIG_I2C_COMPAT=y
659CONFIG_I2C_CHARDEV=y 707CONFIG_I2C_CHARDEV=y
660CONFIG_I2C_HELPER_AUTO=y 708CONFIG_I2C_HELPER_AUTO=y
661 709
@@ -696,11 +744,6 @@ CONFIG_I2C_IBM_IIC=y
696# CONFIG_I2C_TAOS_EVM is not set 744# CONFIG_I2C_TAOS_EVM is not set
697 745
698# 746#
699# Graphics adapter I2C/DDC channel drivers
700#
701# CONFIG_I2C_VOODOO3 is not set
702
703#
704# Other I2C/SMBus bus drivers 747# Other I2C/SMBus bus drivers
705# 748#
706# CONFIG_I2C_PCA_PLATFORM is not set 749# CONFIG_I2C_PCA_PLATFORM is not set
@@ -709,10 +752,6 @@ CONFIG_I2C_IBM_IIC=y
709# 752#
710# Miscellaneous I2C Chip support 753# Miscellaneous I2C Chip support
711# 754#
712# CONFIG_DS1682 is not set
713# CONFIG_SENSORS_PCF8574 is not set
714# CONFIG_PCF8575 is not set
715# CONFIG_SENSORS_PCA9539 is not set
716# CONFIG_SENSORS_TSL2550 is not set 755# CONFIG_SENSORS_TSL2550 is not set
717# CONFIG_I2C_DEBUG_CORE is not set 756# CONFIG_I2C_DEBUG_CORE is not set
718# CONFIG_I2C_DEBUG_ALGO is not set 757# CONFIG_I2C_DEBUG_ALGO is not set
@@ -730,6 +769,11 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
730# CONFIG_POWER_SUPPLY is not set 769# CONFIG_POWER_SUPPLY is not set
731CONFIG_HWMON=y 770CONFIG_HWMON=y
732# CONFIG_HWMON_VID is not set 771# CONFIG_HWMON_VID is not set
772# CONFIG_HWMON_DEBUG_CHIP is not set
773
774#
775# Native drivers
776#
733CONFIG_SENSORS_AD7414=y 777CONFIG_SENSORS_AD7414=y
734# CONFIG_SENSORS_AD7418 is not set 778# CONFIG_SENSORS_AD7418 is not set
735# CONFIG_SENSORS_ADM1021 is not set 779# CONFIG_SENSORS_ADM1021 is not set
@@ -753,6 +797,7 @@ CONFIG_SENSORS_AD7414=y
753# CONFIG_SENSORS_GL520SM is not set 797# CONFIG_SENSORS_GL520SM is not set
754# CONFIG_SENSORS_IT87 is not set 798# CONFIG_SENSORS_IT87 is not set
755# CONFIG_SENSORS_LM63 is not set 799# CONFIG_SENSORS_LM63 is not set
800# CONFIG_SENSORS_LM73 is not set
756# CONFIG_SENSORS_LM75 is not set 801# CONFIG_SENSORS_LM75 is not set
757# CONFIG_SENSORS_LM77 is not set 802# CONFIG_SENSORS_LM77 is not set
758# CONFIG_SENSORS_LM78 is not set 803# CONFIG_SENSORS_LM78 is not set
@@ -779,6 +824,7 @@ CONFIG_SENSORS_AD7414=y
779# CONFIG_SENSORS_ADS7828 is not set 824# CONFIG_SENSORS_ADS7828 is not set
780# CONFIG_SENSORS_THMC50 is not set 825# CONFIG_SENSORS_THMC50 is not set
781# CONFIG_SENSORS_TMP401 is not set 826# CONFIG_SENSORS_TMP401 is not set
827# CONFIG_SENSORS_TMP421 is not set
782# CONFIG_SENSORS_VIA686A is not set 828# CONFIG_SENSORS_VIA686A is not set
783# CONFIG_SENSORS_VT1211 is not set 829# CONFIG_SENSORS_VT1211 is not set
784# CONFIG_SENSORS_VT8231 is not set 830# CONFIG_SENSORS_VT8231 is not set
@@ -790,9 +836,7 @@ CONFIG_SENSORS_AD7414=y
790# CONFIG_SENSORS_W83L786NG is not set 836# CONFIG_SENSORS_W83L786NG is not set
791# CONFIG_SENSORS_W83627HF is not set 837# CONFIG_SENSORS_W83627HF is not set
792# CONFIG_SENSORS_W83627EHF is not set 838# CONFIG_SENSORS_W83627EHF is not set
793# CONFIG_HWMON_DEBUG_CHIP is not set
794# CONFIG_THERMAL is not set 839# CONFIG_THERMAL is not set
795# CONFIG_THERMAL_HWMON is not set
796# CONFIG_WATCHDOG is not set 840# CONFIG_WATCHDOG is not set
797CONFIG_SSB_POSSIBLE=y 841CONFIG_SSB_POSSIBLE=y
798 842
@@ -810,10 +854,13 @@ CONFIG_SSB_POSSIBLE=y
810# CONFIG_TWL4030_CORE is not set 854# CONFIG_TWL4030_CORE is not set
811# CONFIG_MFD_TMIO is not set 855# CONFIG_MFD_TMIO is not set
812# CONFIG_PMIC_DA903X is not set 856# CONFIG_PMIC_DA903X is not set
857# CONFIG_PMIC_ADP5520 is not set
813# CONFIG_MFD_WM8400 is not set 858# CONFIG_MFD_WM8400 is not set
859# CONFIG_MFD_WM831X is not set
814# CONFIG_MFD_WM8350_I2C is not set 860# CONFIG_MFD_WM8350_I2C is not set
815# CONFIG_MFD_PCF50633 is not set 861# CONFIG_MFD_PCF50633 is not set
816# CONFIG_AB3100_CORE is not set 862# CONFIG_AB3100_CORE is not set
863# CONFIG_MFD_88PM8607 is not set
817# CONFIG_REGULATOR is not set 864# CONFIG_REGULATOR is not set
818# CONFIG_MEDIA_SUPPORT is not set 865# CONFIG_MEDIA_SUPPORT is not set
819 866
@@ -821,6 +868,7 @@ CONFIG_SSB_POSSIBLE=y
821# Graphics support 868# Graphics support
822# 869#
823# CONFIG_AGP is not set 870# CONFIG_AGP is not set
871CONFIG_VGA_ARB=y
824# CONFIG_DRM is not set 872# CONFIG_DRM is not set
825# CONFIG_VGASTATE is not set 873# CONFIG_VGASTATE is not set
826CONFIG_VIDEO_OUTPUT_CONTROL=m 874CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -858,6 +906,7 @@ CONFIG_EXT2_FS=y
858# CONFIG_EXT2_FS_XIP is not set 906# CONFIG_EXT2_FS_XIP is not set
859# CONFIG_EXT3_FS is not set 907# CONFIG_EXT3_FS is not set
860# CONFIG_EXT4_FS is not set 908# CONFIG_EXT4_FS is not set
909CONFIG_EXT4_USE_FOR_EXT23=y
861# CONFIG_REISERFS_FS is not set 910# CONFIG_REISERFS_FS is not set
862# CONFIG_JFS_FS is not set 911# CONFIG_JFS_FS is not set
863# CONFIG_FS_POSIX_ACL is not set 912# CONFIG_FS_POSIX_ACL is not set
@@ -865,6 +914,7 @@ CONFIG_EXT2_FS=y
865# CONFIG_GFS2_FS is not set 914# CONFIG_GFS2_FS is not set
866# CONFIG_OCFS2_FS is not set 915# CONFIG_OCFS2_FS is not set
867# CONFIG_BTRFS_FS is not set 916# CONFIG_BTRFS_FS is not set
917# CONFIG_NILFS2_FS is not set
868CONFIG_FILE_LOCKING=y 918CONFIG_FILE_LOCKING=y
869CONFIG_FSNOTIFY=y 919CONFIG_FSNOTIFY=y
870CONFIG_DNOTIFY=y 920CONFIG_DNOTIFY=y
@@ -934,7 +984,6 @@ CONFIG_CRAMFS=y
934# CONFIG_ROMFS_FS is not set 984# CONFIG_ROMFS_FS is not set
935# CONFIG_SYSV_FS is not set 985# CONFIG_SYSV_FS is not set
936# CONFIG_UFS_FS is not set 986# CONFIG_UFS_FS is not set
937# CONFIG_NILFS2_FS is not set
938CONFIG_NETWORK_FILESYSTEMS=y 987CONFIG_NETWORK_FILESYSTEMS=y
939CONFIG_NFS_FS=y 988CONFIG_NFS_FS=y
940CONFIG_NFS_V3=y 989CONFIG_NFS_V3=y
@@ -993,6 +1042,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
993CONFIG_ENABLE_MUST_CHECK=y 1042CONFIG_ENABLE_MUST_CHECK=y
994CONFIG_FRAME_WARN=1024 1043CONFIG_FRAME_WARN=1024
995CONFIG_MAGIC_SYSRQ=y 1044CONFIG_MAGIC_SYSRQ=y
1045# CONFIG_STRIP_ASM_SYMS is not set
996# CONFIG_UNUSED_SYMBOLS is not set 1046# CONFIG_UNUSED_SYMBOLS is not set
997CONFIG_DEBUG_FS=y 1047CONFIG_DEBUG_FS=y
998# CONFIG_HEADERS_CHECK is not set 1048# CONFIG_HEADERS_CHECK is not set
@@ -1010,6 +1060,7 @@ CONFIG_SCHED_DEBUG=y
1010# CONFIG_DEBUG_OBJECTS is not set 1060# CONFIG_DEBUG_OBJECTS is not set
1011# CONFIG_SLUB_DEBUG_ON is not set 1061# CONFIG_SLUB_DEBUG_ON is not set
1012# CONFIG_SLUB_STATS is not set 1062# CONFIG_SLUB_STATS is not set
1063# CONFIG_DEBUG_KMEMLEAK is not set
1013# CONFIG_DEBUG_RT_MUTEXES is not set 1064# CONFIG_DEBUG_RT_MUTEXES is not set
1014# CONFIG_RT_MUTEX_TESTER is not set 1065# CONFIG_RT_MUTEX_TESTER is not set
1015# CONFIG_DEBUG_SPINLOCK is not set 1066# CONFIG_DEBUG_SPINLOCK is not set
@@ -1028,10 +1079,12 @@ CONFIG_SCHED_DEBUG=y
1028# CONFIG_DEBUG_LIST is not set 1079# CONFIG_DEBUG_LIST is not set
1029# CONFIG_DEBUG_SG is not set 1080# CONFIG_DEBUG_SG is not set
1030# CONFIG_DEBUG_NOTIFIERS is not set 1081# CONFIG_DEBUG_NOTIFIERS is not set
1082# CONFIG_DEBUG_CREDENTIALS is not set
1031# CONFIG_RCU_TORTURE_TEST is not set 1083# CONFIG_RCU_TORTURE_TEST is not set
1032# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1084# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1033# CONFIG_BACKTRACE_SELF_TEST is not set 1085# CONFIG_BACKTRACE_SELF_TEST is not set
1034# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1086# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1087# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1035# CONFIG_FAULT_INJECTION is not set 1088# CONFIG_FAULT_INJECTION is not set
1036# CONFIG_LATENCYTOP is not set 1089# CONFIG_LATENCYTOP is not set
1037CONFIG_SYSCTL_SYSCALL_CHECK=y 1090CONFIG_SYSCTL_SYSCALL_CHECK=y
@@ -1055,10 +1108,10 @@ CONFIG_BRANCH_PROFILE_NONE=y
1055# CONFIG_WORKQUEUE_TRACER is not set 1108# CONFIG_WORKQUEUE_TRACER is not set
1056# CONFIG_BLK_DEV_IO_TRACE is not set 1109# CONFIG_BLK_DEV_IO_TRACE is not set
1057# CONFIG_DYNAMIC_DEBUG is not set 1110# CONFIG_DYNAMIC_DEBUG is not set
1111# CONFIG_DMA_API_DEBUG is not set
1058# CONFIG_SAMPLES is not set 1112# CONFIG_SAMPLES is not set
1059CONFIG_HAVE_ARCH_KGDB=y 1113CONFIG_HAVE_ARCH_KGDB=y
1060# CONFIG_KGDB is not set 1114# CONFIG_KGDB is not set
1061# CONFIG_KMEMCHECK is not set
1062# CONFIG_PPC_DISABLE_WERROR is not set 1115# CONFIG_PPC_DISABLE_WERROR is not set
1063CONFIG_PPC_WERROR=y 1116CONFIG_PPC_WERROR=y
1064CONFIG_PRINT_STACK_DEPTH=64 1117CONFIG_PRINT_STACK_DEPTH=64
@@ -1080,7 +1133,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1080# CONFIG_KEYS is not set 1133# CONFIG_KEYS is not set
1081# CONFIG_SECURITY is not set 1134# CONFIG_SECURITY is not set
1082# CONFIG_SECURITYFS is not set 1135# CONFIG_SECURITYFS is not set
1083# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1136# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1137# CONFIG_DEFAULT_SECURITY_SMACK is not set
1138# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1139CONFIG_DEFAULT_SECURITY_DAC=y
1140CONFIG_DEFAULT_SECURITY=""
1084# CONFIG_CRYPTO is not set 1141# CONFIG_CRYPTO is not set
1085# CONFIG_PPC_CLOCK is not set 1142# CONFIG_PPC_CLOCK is not set
1086# CONFIG_VIRTUALIZATION is not set 1143# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/bamboo_defconfig b/arch/powerpc/configs/44x/bamboo_defconfig
index e57f1e4c1795..788faac6c27a 100644
--- a/arch/powerpc/configs/44x/bamboo_defconfig
+++ b/arch/powerpc/configs/44x/bamboo_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:22:33 2009 4# Mon Jan 4 14:09:03 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -20,6 +20,7 @@ CONFIG_BOOKE=y
20CONFIG_PTE_64BIT=y 20CONFIG_PTE_64BIT=y
21CONFIG_PHYS_64BIT=y 21CONFIG_PHYS_64BIT=y
22CONFIG_PPC_MMU_NOHASH=y 22CONFIG_PPC_MMU_NOHASH=y
23CONFIG_PPC_MMU_NOHASH_32=y
23# CONFIG_PPC_MM_SLICES is not set 24# CONFIG_PPC_MM_SLICES is not set
24CONFIG_NOT_COHERENT_CACHE=y 25CONFIG_NOT_COHERENT_CACHE=y
25CONFIG_PPC32=y 26CONFIG_PPC32=y
@@ -31,15 +32,18 @@ CONFIG_GENERIC_TIME=y
31CONFIG_GENERIC_TIME_VSYSCALL=y 32CONFIG_GENERIC_TIME_VSYSCALL=y
32CONFIG_GENERIC_CLOCKEVENTS=y 33CONFIG_GENERIC_CLOCKEVENTS=y
33CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
34# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
35CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
36CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
37CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
38CONFIG_LOCKDEP_SUPPORT=y 43CONFIG_LOCKDEP_SUPPORT=y
39CONFIG_RWSEM_XCHGADD_ALGORITHM=y 44CONFIG_RWSEM_XCHGADD_ALGORITHM=y
40CONFIG_ARCH_HAS_ILOG2_U32=y 45CONFIG_ARCH_HAS_ILOG2_U32=y
41CONFIG_GENERIC_HWEIGHT=y 46CONFIG_GENERIC_HWEIGHT=y
42CONFIG_GENERIC_CALIBRATE_DELAY=y
43CONFIG_GENERIC_FIND_NEXT_BIT=y 47CONFIG_GENERIC_FIND_NEXT_BIT=y
44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 48# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
45CONFIG_PPC=y 49CONFIG_PPC=y
@@ -53,11 +57,15 @@ CONFIG_PPC_UDBG_16550=y
53# CONFIG_GENERIC_TBSYNC is not set 57# CONFIG_GENERIC_TBSYNC is not set
54CONFIG_AUDIT_ARCH=y 58CONFIG_AUDIT_ARCH=y
55CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y
56# CONFIG_DEFAULT_UIMAGE is not set 61# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
57CONFIG_PPC_DCR_NATIVE=y 63CONFIG_PPC_DCR_NATIVE=y
58# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
59CONFIG_PPC_DCR=y 65CONFIG_PPC_DCR=y
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
60CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 67CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
68CONFIG_CONSTRUCTORS=y
61 69
62# 70#
63# General setup 71# General setup
@@ -71,9 +79,21 @@ CONFIG_SWAP=y
71CONFIG_SYSVIPC=y 79CONFIG_SYSVIPC=y
72CONFIG_SYSVIPC_SYSCTL=y 80CONFIG_SYSVIPC_SYSCTL=y
73CONFIG_POSIX_MQUEUE=y 81CONFIG_POSIX_MQUEUE=y
82CONFIG_POSIX_MQUEUE_SYSCTL=y
74# CONFIG_BSD_PROCESS_ACCT is not set 83# CONFIG_BSD_PROCESS_ACCT is not set
75# CONFIG_TASKSTATS is not set 84# CONFIG_TASKSTATS is not set
76# CONFIG_AUDIT is not set 85# CONFIG_AUDIT is not set
86
87#
88# RCU Subsystem
89#
90CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set
96# CONFIG_TREE_RCU_TRACE is not set
77# CONFIG_IKCONFIG is not set 97# CONFIG_IKCONFIG is not set
78CONFIG_LOG_BUF_SHIFT=14 98CONFIG_LOG_BUF_SHIFT=14
79CONFIG_GROUP_SCHED=y 99CONFIG_GROUP_SCHED=y
@@ -88,8 +108,12 @@ CONFIG_SYSFS_DEPRECATED_V2=y
88# CONFIG_NAMESPACES is not set 108# CONFIG_NAMESPACES is not set
89CONFIG_BLK_DEV_INITRD=y 109CONFIG_BLK_DEV_INITRD=y
90CONFIG_INITRAMFS_SOURCE="" 110CONFIG_INITRAMFS_SOURCE=""
111CONFIG_RD_GZIP=y
112# CONFIG_RD_BZIP2 is not set
113# CONFIG_RD_LZMA is not set
91# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 114# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
92CONFIG_SYSCTL=y 115CONFIG_SYSCTL=y
116CONFIG_ANON_INODES=y
93CONFIG_EMBEDDED=y 117CONFIG_EMBEDDED=y
94CONFIG_SYSCTL_SYSCALL=y 118CONFIG_SYSCTL_SYSCALL=y
95CONFIG_KALLSYMS=y 119CONFIG_KALLSYMS=y
@@ -99,19 +123,25 @@ CONFIG_HOTPLUG=y
99CONFIG_PRINTK=y 123CONFIG_PRINTK=y
100CONFIG_BUG=y 124CONFIG_BUG=y
101CONFIG_ELF_CORE=y 125CONFIG_ELF_CORE=y
102CONFIG_COMPAT_BRK=y
103CONFIG_BASE_FULL=y 126CONFIG_BASE_FULL=y
104CONFIG_FUTEX=y 127CONFIG_FUTEX=y
105CONFIG_ANON_INODES=y
106CONFIG_EPOLL=y 128CONFIG_EPOLL=y
107CONFIG_SIGNALFD=y 129CONFIG_SIGNALFD=y
108CONFIG_TIMERFD=y 130CONFIG_TIMERFD=y
109CONFIG_EVENTFD=y 131CONFIG_EVENTFD=y
110CONFIG_SHMEM=y 132CONFIG_SHMEM=y
111CONFIG_AIO=y 133CONFIG_AIO=y
134CONFIG_HAVE_PERF_EVENTS=y
135
136#
137# Kernel Performance Events And Counters
138#
139# CONFIG_PERF_EVENTS is not set
140# CONFIG_PERF_COUNTERS is not set
112CONFIG_VM_EVENT_COUNTERS=y 141CONFIG_VM_EVENT_COUNTERS=y
113CONFIG_PCI_QUIRKS=y 142CONFIG_PCI_QUIRKS=y
114CONFIG_SLUB_DEBUG=y 143CONFIG_SLUB_DEBUG=y
144CONFIG_COMPAT_BRK=y
115# CONFIG_SLAB is not set 145# CONFIG_SLAB is not set
116CONFIG_SLUB=y 146CONFIG_SLUB=y
117# CONFIG_SLOB is not set 147# CONFIG_SLOB is not set
@@ -123,6 +153,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
123CONFIG_HAVE_KPROBES=y 153CONFIG_HAVE_KPROBES=y
124CONFIG_HAVE_KRETPROBES=y 154CONFIG_HAVE_KRETPROBES=y
125CONFIG_HAVE_ARCH_TRACEHOOK=y 155CONFIG_HAVE_ARCH_TRACEHOOK=y
156CONFIG_HAVE_DMA_ATTRS=y
157CONFIG_HAVE_DMA_API_DEBUG=y
158
159#
160# GCOV-based kernel profiling
161#
162# CONFIG_GCOV_KERNEL is not set
163# CONFIG_SLOW_WORK is not set
126# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 164# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
127CONFIG_SLABINFO=y 165CONFIG_SLABINFO=y
128CONFIG_RT_MUTEXES=y 166CONFIG_RT_MUTEXES=y
@@ -134,8 +172,7 @@ CONFIG_MODULE_UNLOAD=y
134# CONFIG_MODVERSIONS is not set 172# CONFIG_MODVERSIONS is not set
135# CONFIG_MODULE_SRCVERSION_ALL is not set 173# CONFIG_MODULE_SRCVERSION_ALL is not set
136CONFIG_BLOCK=y 174CONFIG_BLOCK=y
137CONFIG_LBD=y 175CONFIG_LBDAF=y
138# CONFIG_BLK_DEV_IO_TRACE is not set
139# CONFIG_BLK_DEV_BSG is not set 176# CONFIG_BLK_DEV_BSG is not set
140# CONFIG_BLK_DEV_INTEGRITY is not set 177# CONFIG_BLK_DEV_INTEGRITY is not set
141 178
@@ -143,19 +180,41 @@ CONFIG_LBD=y
143# IO Schedulers 180# IO Schedulers
144# 181#
145CONFIG_IOSCHED_NOOP=y 182CONFIG_IOSCHED_NOOP=y
146CONFIG_IOSCHED_AS=y
147CONFIG_IOSCHED_DEADLINE=y 183CONFIG_IOSCHED_DEADLINE=y
148CONFIG_IOSCHED_CFQ=y 184CONFIG_IOSCHED_CFQ=y
149CONFIG_DEFAULT_AS=y
150# CONFIG_DEFAULT_DEADLINE is not set 185# CONFIG_DEFAULT_DEADLINE is not set
151# CONFIG_DEFAULT_CFQ is not set 186CONFIG_DEFAULT_CFQ=y
152# CONFIG_DEFAULT_NOOP is not set 187# CONFIG_DEFAULT_NOOP is not set
153CONFIG_DEFAULT_IOSCHED="anticipatory" 188CONFIG_DEFAULT_IOSCHED="cfq"
154CONFIG_CLASSIC_RCU=y 189# CONFIG_INLINE_SPIN_TRYLOCK is not set
155# CONFIG_TREE_RCU is not set 190# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
156# CONFIG_PREEMPT_RCU is not set 191# CONFIG_INLINE_SPIN_LOCK is not set
157# CONFIG_TREE_RCU_TRACE is not set 192# CONFIG_INLINE_SPIN_LOCK_BH is not set
158# CONFIG_PREEMPT_RCU_TRACE is not set 193# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
194# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
195CONFIG_INLINE_SPIN_UNLOCK=y
196# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
197CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
198# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
199# CONFIG_INLINE_READ_TRYLOCK is not set
200# CONFIG_INLINE_READ_LOCK is not set
201# CONFIG_INLINE_READ_LOCK_BH is not set
202# CONFIG_INLINE_READ_LOCK_IRQ is not set
203# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
204CONFIG_INLINE_READ_UNLOCK=y
205# CONFIG_INLINE_READ_UNLOCK_BH is not set
206CONFIG_INLINE_READ_UNLOCK_IRQ=y
207# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
208# CONFIG_INLINE_WRITE_TRYLOCK is not set
209# CONFIG_INLINE_WRITE_LOCK is not set
210# CONFIG_INLINE_WRITE_LOCK_BH is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
212# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
213CONFIG_INLINE_WRITE_UNLOCK=y
214# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
215CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
216# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
217# CONFIG_MUTEX_SPIN_ON_OWNER is not set
159# CONFIG_FREEZER is not set 218# CONFIG_FREEZER is not set
160# CONFIG_PPC4xx_PCI_EXPRESS is not set 219# CONFIG_PPC4xx_PCI_EXPRESS is not set
161 220
@@ -176,6 +235,8 @@ CONFIG_BAMBOO=y
176# CONFIG_ARCHES is not set 235# CONFIG_ARCHES is not set
177# CONFIG_CANYONLANDS is not set 236# CONFIG_CANYONLANDS is not set
178# CONFIG_GLACIER is not set 237# CONFIG_GLACIER is not set
238# CONFIG_REDWOOD is not set
239# CONFIG_EIGER is not set
179# CONFIG_YOSEMITE is not set 240# CONFIG_YOSEMITE is not set
180# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 241# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
181CONFIG_PPC44x_SIMPLE=y 242CONFIG_PPC44x_SIMPLE=y
@@ -218,10 +279,12 @@ CONFIG_BINFMT_ELF=y
218# CONFIG_BINFMT_MISC is not set 279# CONFIG_BINFMT_MISC is not set
219# CONFIG_MATH_EMULATION is not set 280# CONFIG_MATH_EMULATION is not set
220# CONFIG_IOMMU_HELPER is not set 281# CONFIG_IOMMU_HELPER is not set
221CONFIG_PPC_NEED_DMA_SYNC_OPS=y 282# CONFIG_SWIOTLB is not set
222CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
223CONFIG_ARCH_HAS_WALK_MEMORY=y 284CONFIG_ARCH_HAS_WALK_MEMORY=y
224CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 285CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
286CONFIG_SPARSE_IRQ=y
287CONFIG_MAX_ACTIVE_REGIONS=32
225CONFIG_ARCH_FLATMEM_ENABLE=y 288CONFIG_ARCH_FLATMEM_ENABLE=y
226CONFIG_ARCH_POPULATES_NODE_MAP=y 289CONFIG_ARCH_POPULATES_NODE_MAP=y
227CONFIG_SELECT_MEMORY_MODEL=y 290CONFIG_SELECT_MEMORY_MODEL=y
@@ -237,10 +300,13 @@ CONFIG_PHYS_ADDR_T_64BIT=y
237CONFIG_ZONE_DMA_FLAG=1 300CONFIG_ZONE_DMA_FLAG=1
238CONFIG_BOUNCE=y 301CONFIG_BOUNCE=y
239CONFIG_VIRT_TO_BUS=y 302CONFIG_VIRT_TO_BUS=y
240CONFIG_UNEVICTABLE_LRU=y 303# CONFIG_KSM is not set
304CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
305CONFIG_STDBINUTILS=y
241CONFIG_PPC_4K_PAGES=y 306CONFIG_PPC_4K_PAGES=y
242# CONFIG_PPC_16K_PAGES is not set 307# CONFIG_PPC_16K_PAGES is not set
243# CONFIG_PPC_64K_PAGES is not set 308# CONFIG_PPC_64K_PAGES is not set
309# CONFIG_PPC_256K_PAGES is not set
244CONFIG_FORCE_MAX_ZONEORDER=11 310CONFIG_FORCE_MAX_ZONEORDER=11
245CONFIG_PROC_DEVICETREE=y 311CONFIG_PROC_DEVICETREE=y
246CONFIG_CMDLINE_BOOL=y 312CONFIG_CMDLINE_BOOL=y
@@ -265,6 +331,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
265# CONFIG_PCI_LEGACY is not set 331# CONFIG_PCI_LEGACY is not set
266# CONFIG_PCI_DEBUG is not set 332# CONFIG_PCI_DEBUG is not set
267# CONFIG_PCI_STUB is not set 333# CONFIG_PCI_STUB is not set
334# CONFIG_PCI_IOV is not set
268# CONFIG_PCCARD is not set 335# CONFIG_PCCARD is not set
269# CONFIG_HOTPLUG_PCI is not set 336# CONFIG_HOTPLUG_PCI is not set
270# CONFIG_HAS_RAPIDIO is not set 337# CONFIG_HAS_RAPIDIO is not set
@@ -282,14 +349,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
282CONFIG_KERNEL_START=0xc0000000 349CONFIG_KERNEL_START=0xc0000000
283CONFIG_PHYSICAL_START=0x00000000 350CONFIG_PHYSICAL_START=0x00000000
284CONFIG_TASK_SIZE=0xc0000000 351CONFIG_TASK_SIZE=0xc0000000
285CONFIG_CONSISTENT_START=0xff100000
286CONFIG_CONSISTENT_SIZE=0x00200000 352CONFIG_CONSISTENT_SIZE=0x00200000
287CONFIG_NET=y 353CONFIG_NET=y
288 354
289# 355#
290# Networking options 356# Networking options
291# 357#
292CONFIG_COMPAT_NET_DEV_OPS=y
293CONFIG_PACKET=y 358CONFIG_PACKET=y
294# CONFIG_PACKET_MMAP is not set 359# CONFIG_PACKET_MMAP is not set
295CONFIG_UNIX=y 360CONFIG_UNIX=y
@@ -326,6 +391,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
326# CONFIG_NETFILTER is not set 391# CONFIG_NETFILTER is not set
327# CONFIG_IP_DCCP is not set 392# CONFIG_IP_DCCP is not set
328# CONFIG_IP_SCTP is not set 393# CONFIG_IP_SCTP is not set
394# CONFIG_RDS is not set
329# CONFIG_TIPC is not set 395# CONFIG_TIPC is not set
330# CONFIG_ATM is not set 396# CONFIG_ATM is not set
331# CONFIG_BRIDGE is not set 397# CONFIG_BRIDGE is not set
@@ -339,6 +405,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
339# CONFIG_LAPB is not set 405# CONFIG_LAPB is not set
340# CONFIG_ECONET is not set 406# CONFIG_ECONET is not set
341# CONFIG_WAN_ROUTER is not set 407# CONFIG_WAN_ROUTER is not set
408# CONFIG_PHONET is not set
409# CONFIG_IEEE802154 is not set
342# CONFIG_NET_SCHED is not set 410# CONFIG_NET_SCHED is not set
343# CONFIG_DCB is not set 411# CONFIG_DCB is not set
344 412
@@ -351,8 +419,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
351# CONFIG_IRDA is not set 419# CONFIG_IRDA is not set
352# CONFIG_BT is not set 420# CONFIG_BT is not set
353# CONFIG_AF_RXRPC is not set 421# CONFIG_AF_RXRPC is not set
354# CONFIG_PHONET is not set 422CONFIG_WIRELESS=y
355# CONFIG_WIRELESS is not set 423# CONFIG_CFG80211 is not set
424# CONFIG_LIB80211 is not set
425
426#
427# CFG80211 needs to be enabled for MAC80211
428#
356# CONFIG_WIMAX is not set 429# CONFIG_WIMAX is not set
357# CONFIG_RFKILL is not set 430# CONFIG_RFKILL is not set
358# CONFIG_NET_9P is not set 431# CONFIG_NET_9P is not set
@@ -365,6 +438,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
365# Generic Driver Options 438# Generic Driver Options
366# 439#
367CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 440CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
441# CONFIG_DEVTMPFS is not set
368CONFIG_STANDALONE=y 442CONFIG_STANDALONE=y
369CONFIG_PREVENT_FIRMWARE_BUILD=y 443CONFIG_PREVENT_FIRMWARE_BUILD=y
370CONFIG_FW_LOADER=y 444CONFIG_FW_LOADER=y
@@ -386,6 +460,7 @@ CONFIG_BLK_DEV=y
386# CONFIG_BLK_DEV_UMEM is not set 460# CONFIG_BLK_DEV_UMEM is not set
387# CONFIG_BLK_DEV_COW_COMMON is not set 461# CONFIG_BLK_DEV_COW_COMMON is not set
388# CONFIG_BLK_DEV_LOOP is not set 462# CONFIG_BLK_DEV_LOOP is not set
463# CONFIG_BLK_DEV_DRBD is not set
389# CONFIG_BLK_DEV_NBD is not set 464# CONFIG_BLK_DEV_NBD is not set
390# CONFIG_BLK_DEV_SX8 is not set 465# CONFIG_BLK_DEV_SX8 is not set
391CONFIG_BLK_DEV_RAM=y 466CONFIG_BLK_DEV_RAM=y
@@ -398,12 +473,17 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
398# CONFIG_BLK_DEV_HD is not set 473# CONFIG_BLK_DEV_HD is not set
399CONFIG_MISC_DEVICES=y 474CONFIG_MISC_DEVICES=y
400# CONFIG_PHANTOM is not set 475# CONFIG_PHANTOM is not set
401# CONFIG_EEPROM_93CX6 is not set
402# CONFIG_SGI_IOC4 is not set 476# CONFIG_SGI_IOC4 is not set
403# CONFIG_TIFM_CORE is not set 477# CONFIG_TIFM_CORE is not set
404# CONFIG_ENCLOSURE_SERVICES is not set 478# CONFIG_ENCLOSURE_SERVICES is not set
405# CONFIG_HP_ILO is not set 479# CONFIG_HP_ILO is not set
406# CONFIG_C2PORT is not set 480# CONFIG_C2PORT is not set
481
482#
483# EEPROM support
484#
485# CONFIG_EEPROM_93CX6 is not set
486# CONFIG_CB710_CORE is not set
407CONFIG_HAVE_IDE=y 487CONFIG_HAVE_IDE=y
408# CONFIG_IDE is not set 488# CONFIG_IDE is not set
409 489
@@ -423,7 +503,11 @@ CONFIG_HAVE_IDE=y
423# 503#
424 504
425# 505#
426# Enable only one of the two stacks, unless you know what you are doing 506# You can enable one or both FireWire driver stacks.
507#
508
509#
510# See the help texts for more information.
427# 511#
428# CONFIG_FIREWIRE is not set 512# CONFIG_FIREWIRE is not set
429# CONFIG_IEEE1394 is not set 513# CONFIG_IEEE1394 is not set
@@ -444,6 +528,8 @@ CONFIG_NET_ETHERNET=y
444# CONFIG_SUNGEM is not set 528# CONFIG_SUNGEM is not set
445# CONFIG_CASSINI is not set 529# CONFIG_CASSINI is not set
446# CONFIG_NET_VENDOR_3COM is not set 530# CONFIG_NET_VENDOR_3COM is not set
531# CONFIG_ETHOC is not set
532# CONFIG_DNET is not set
447# CONFIG_NET_TULIP is not set 533# CONFIG_NET_TULIP is not set
448# CONFIG_HP100 is not set 534# CONFIG_HP100 is not set
449CONFIG_IBM_NEW_EMAC=y 535CONFIG_IBM_NEW_EMAC=y
@@ -462,7 +548,10 @@ CONFIG_IBM_NEW_EMAC_ZMII=y
462# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 548# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
463# CONFIG_NET_PCI is not set 549# CONFIG_NET_PCI is not set
464# CONFIG_B44 is not set 550# CONFIG_B44 is not set
551# CONFIG_KS8842 is not set
552# CONFIG_KS8851_MLL is not set
465# CONFIG_ATL2 is not set 553# CONFIG_ATL2 is not set
554# CONFIG_XILINX_EMACLITE is not set
466CONFIG_NETDEV_1000=y 555CONFIG_NETDEV_1000=y
467# CONFIG_ACENIC is not set 556# CONFIG_ACENIC is not set
468# CONFIG_DL2K is not set 557# CONFIG_DL2K is not set
@@ -470,6 +559,7 @@ CONFIG_NETDEV_1000=y
470# CONFIG_E1000E is not set 559# CONFIG_E1000E is not set
471# CONFIG_IP1000 is not set 560# CONFIG_IP1000 is not set
472# CONFIG_IGB is not set 561# CONFIG_IGB is not set
562# CONFIG_IGBVF is not set
473# CONFIG_NS83820 is not set 563# CONFIG_NS83820 is not set
474# CONFIG_HAMACHI is not set 564# CONFIG_HAMACHI is not set
475# CONFIG_YELLOWFIN is not set 565# CONFIG_YELLOWFIN is not set
@@ -480,9 +570,13 @@ CONFIG_NETDEV_1000=y
480# CONFIG_VIA_VELOCITY is not set 570# CONFIG_VIA_VELOCITY is not set
481# CONFIG_TIGON3 is not set 571# CONFIG_TIGON3 is not set
482# CONFIG_BNX2 is not set 572# CONFIG_BNX2 is not set
573# CONFIG_CNIC is not set
574# CONFIG_MV643XX_ETH is not set
575# CONFIG_XILINX_LL_TEMAC is not set
483# CONFIG_QLA3XXX is not set 576# CONFIG_QLA3XXX is not set
484# CONFIG_ATL1 is not set 577# CONFIG_ATL1 is not set
485# CONFIG_ATL1E is not set 578# CONFIG_ATL1E is not set
579# CONFIG_ATL1C is not set
486# CONFIG_JME is not set 580# CONFIG_JME is not set
487CONFIG_NETDEV_10000=y 581CONFIG_NETDEV_10000=y
488# CONFIG_CHELSIO_T1 is not set 582# CONFIG_CHELSIO_T1 is not set
@@ -492,6 +586,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
492# CONFIG_IXGBE is not set 586# CONFIG_IXGBE is not set
493# CONFIG_IXGB is not set 587# CONFIG_IXGB is not set
494# CONFIG_S2IO is not set 588# CONFIG_S2IO is not set
589# CONFIG_VXGE is not set
495# CONFIG_MYRI10GE is not set 590# CONFIG_MYRI10GE is not set
496# CONFIG_NETXEN_NIC is not set 591# CONFIG_NETXEN_NIC is not set
497# CONFIG_NIU is not set 592# CONFIG_NIU is not set
@@ -501,14 +596,13 @@ CONFIG_CHELSIO_T3_DEPENDS=y
501# CONFIG_BNX2X is not set 596# CONFIG_BNX2X is not set
502# CONFIG_QLGE is not set 597# CONFIG_QLGE is not set
503# CONFIG_SFC is not set 598# CONFIG_SFC is not set
599# CONFIG_BE2NET is not set
504# CONFIG_TR is not set 600# CONFIG_TR is not set
505 601CONFIG_WLAN=y
506# 602# CONFIG_AIRO is not set
507# Wireless LAN 603# CONFIG_ATMEL is not set
508# 604# CONFIG_PRISM54 is not set
509# CONFIG_WLAN_PRE80211 is not set 605# CONFIG_HOSTAP is not set
510# CONFIG_WLAN_80211 is not set
511# CONFIG_IWLWIFI_LEDS is not set
512 606
513# 607#
514# Enable WiMAX (Networking options) to see the WiMAX drivers 608# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -521,6 +615,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
521# CONFIG_NETCONSOLE is not set 615# CONFIG_NETCONSOLE is not set
522# CONFIG_NETPOLL is not set 616# CONFIG_NETPOLL is not set
523# CONFIG_NET_POLL_CONTROLLER is not set 617# CONFIG_NET_POLL_CONTROLLER is not set
618# CONFIG_VMXNET3 is not set
524# CONFIG_ISDN is not set 619# CONFIG_ISDN is not set
525# CONFIG_PHONE is not set 620# CONFIG_PHONE is not set
526 621
@@ -566,6 +661,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
566# CONFIG_SERIAL_JSM is not set 661# CONFIG_SERIAL_JSM is not set
567CONFIG_SERIAL_OF_PLATFORM=y 662CONFIG_SERIAL_OF_PLATFORM=y
568# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 663# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
664# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
569CONFIG_UNIX98_PTYS=y 665CONFIG_UNIX98_PTYS=y
570# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 666# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
571CONFIG_LEGACY_PTYS=y 667CONFIG_LEGACY_PTYS=y
@@ -582,6 +678,11 @@ CONFIG_LEGACY_PTY_COUNT=256
582CONFIG_DEVPORT=y 678CONFIG_DEVPORT=y
583# CONFIG_I2C is not set 679# CONFIG_I2C is not set
584# CONFIG_SPI is not set 680# CONFIG_SPI is not set
681
682#
683# PPS support
684#
685# CONFIG_PPS is not set
585CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 686CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
586# CONFIG_GPIOLIB is not set 687# CONFIG_GPIOLIB is not set
587# CONFIG_W1 is not set 688# CONFIG_W1 is not set
@@ -604,27 +705,13 @@ CONFIG_SSB_POSSIBLE=y
604# CONFIG_HTC_PASIC3 is not set 705# CONFIG_HTC_PASIC3 is not set
605# CONFIG_MFD_TMIO is not set 706# CONFIG_MFD_TMIO is not set
606# CONFIG_REGULATOR is not set 707# CONFIG_REGULATOR is not set
607 708# CONFIG_MEDIA_SUPPORT is not set
608#
609# Multimedia devices
610#
611
612#
613# Multimedia core support
614#
615# CONFIG_VIDEO_DEV is not set
616# CONFIG_DVB_CORE is not set
617# CONFIG_VIDEO_MEDIA is not set
618
619#
620# Multimedia drivers
621#
622CONFIG_DAB=y
623 709
624# 710#
625# Graphics support 711# Graphics support
626# 712#
627# CONFIG_AGP is not set 713# CONFIG_AGP is not set
714CONFIG_VGA_ARB=y
628# CONFIG_DRM is not set 715# CONFIG_DRM is not set
629# CONFIG_VGASTATE is not set 716# CONFIG_VGASTATE is not set
630CONFIG_VIDEO_OUTPUT_CONTROL=m 717CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -649,7 +736,7 @@ CONFIG_USB_ARCH_HAS_EHCI=y
649# 736#
650 737
651# 738#
652# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 739# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
653# 740#
654# CONFIG_USB_GADGET is not set 741# CONFIG_USB_GADGET is not set
655 742
@@ -665,7 +752,12 @@ CONFIG_USB_ARCH_HAS_EHCI=y
665# CONFIG_EDAC is not set 752# CONFIG_EDAC is not set
666# CONFIG_RTC_CLASS is not set 753# CONFIG_RTC_CLASS is not set
667# CONFIG_DMADEVICES is not set 754# CONFIG_DMADEVICES is not set
755# CONFIG_AUXDISPLAY is not set
668# CONFIG_UIO is not set 756# CONFIG_UIO is not set
757
758#
759# TI VLYNQ
760#
669# CONFIG_STAGING is not set 761# CONFIG_STAGING is not set
670 762
671# 763#
@@ -676,14 +768,17 @@ CONFIG_EXT2_FS=y
676# CONFIG_EXT2_FS_XIP is not set 768# CONFIG_EXT2_FS_XIP is not set
677# CONFIG_EXT3_FS is not set 769# CONFIG_EXT3_FS is not set
678# CONFIG_EXT4_FS is not set 770# CONFIG_EXT4_FS is not set
771CONFIG_EXT4_USE_FOR_EXT23=y
679# CONFIG_REISERFS_FS is not set 772# CONFIG_REISERFS_FS is not set
680# CONFIG_JFS_FS is not set 773# CONFIG_JFS_FS is not set
681# CONFIG_FS_POSIX_ACL is not set 774# CONFIG_FS_POSIX_ACL is not set
682CONFIG_FILE_LOCKING=y
683# CONFIG_XFS_FS is not set 775# CONFIG_XFS_FS is not set
684# CONFIG_GFS2_FS is not set 776# CONFIG_GFS2_FS is not set
685# CONFIG_OCFS2_FS is not set 777# CONFIG_OCFS2_FS is not set
686# CONFIG_BTRFS_FS is not set 778# CONFIG_BTRFS_FS is not set
779# CONFIG_NILFS2_FS is not set
780CONFIG_FILE_LOCKING=y
781CONFIG_FSNOTIFY=y
687CONFIG_DNOTIFY=y 782CONFIG_DNOTIFY=y
688CONFIG_INOTIFY=y 783CONFIG_INOTIFY=y
689CONFIG_INOTIFY_USER=y 784CONFIG_INOTIFY_USER=y
@@ -693,6 +788,11 @@ CONFIG_INOTIFY_USER=y
693# CONFIG_FUSE_FS is not set 788# CONFIG_FUSE_FS is not set
694 789
695# 790#
791# Caches
792#
793# CONFIG_FSCACHE is not set
794
795#
696# CD-ROM/DVD Filesystems 796# CD-ROM/DVD Filesystems
697# 797#
698# CONFIG_ISO9660_FS is not set 798# CONFIG_ISO9660_FS is not set
@@ -746,7 +846,6 @@ CONFIG_LOCKD=y
746CONFIG_LOCKD_V4=y 846CONFIG_LOCKD_V4=y
747CONFIG_NFS_COMMON=y 847CONFIG_NFS_COMMON=y
748CONFIG_SUNRPC=y 848CONFIG_SUNRPC=y
749# CONFIG_SUNRPC_REGISTER_V4 is not set
750# CONFIG_RPCSEC_GSS_KRB5 is not set 849# CONFIG_RPCSEC_GSS_KRB5 is not set
751# CONFIG_RPCSEC_GSS_SPKM3 is not set 850# CONFIG_RPCSEC_GSS_SPKM3 is not set
752# CONFIG_SMB_FS is not set 851# CONFIG_SMB_FS is not set
@@ -762,6 +861,7 @@ CONFIG_SUNRPC=y
762CONFIG_MSDOS_PARTITION=y 861CONFIG_MSDOS_PARTITION=y
763# CONFIG_NLS is not set 862# CONFIG_NLS is not set
764# CONFIG_DLM is not set 863# CONFIG_DLM is not set
864# CONFIG_BINARY_PRINTF is not set
765 865
766# 866#
767# Library routines 867# Library routines
@@ -776,11 +876,13 @@ CONFIG_CRC32=y
776# CONFIG_CRC7 is not set 876# CONFIG_CRC7 is not set
777# CONFIG_LIBCRC32C is not set 877# CONFIG_LIBCRC32C is not set
778CONFIG_ZLIB_INFLATE=y 878CONFIG_ZLIB_INFLATE=y
779CONFIG_PLIST=y 879CONFIG_DECOMPRESS_GZIP=y
780CONFIG_HAS_IOMEM=y 880CONFIG_HAS_IOMEM=y
781CONFIG_HAS_IOPORT=y 881CONFIG_HAS_IOPORT=y
782CONFIG_HAS_DMA=y 882CONFIG_HAS_DMA=y
783CONFIG_HAVE_LMB=y 883CONFIG_HAVE_LMB=y
884CONFIG_NLATTR=y
885CONFIG_GENERIC_ATOMIC64=y
784 886
785# 887#
786# Kernel hacking 888# Kernel hacking
@@ -790,6 +892,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
790CONFIG_ENABLE_MUST_CHECK=y 892CONFIG_ENABLE_MUST_CHECK=y
791CONFIG_FRAME_WARN=1024 893CONFIG_FRAME_WARN=1024
792CONFIG_MAGIC_SYSRQ=y 894CONFIG_MAGIC_SYSRQ=y
895# CONFIG_STRIP_ASM_SYMS is not set
793# CONFIG_UNUSED_SYMBOLS is not set 896# CONFIG_UNUSED_SYMBOLS is not set
794CONFIG_DEBUG_FS=y 897CONFIG_DEBUG_FS=y
795# CONFIG_HEADERS_CHECK is not set 898# CONFIG_HEADERS_CHECK is not set
@@ -798,16 +901,23 @@ CONFIG_DEBUG_KERNEL=y
798CONFIG_DETECT_SOFTLOCKUP=y 901CONFIG_DETECT_SOFTLOCKUP=y
799# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 902# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
800CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 903CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
904CONFIG_DETECT_HUNG_TASK=y
905# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
906CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
801CONFIG_SCHED_DEBUG=y 907CONFIG_SCHED_DEBUG=y
802# CONFIG_SCHEDSTATS is not set 908# CONFIG_SCHEDSTATS is not set
803# CONFIG_TIMER_STATS is not set 909# CONFIG_TIMER_STATS is not set
804# CONFIG_DEBUG_OBJECTS is not set 910# CONFIG_DEBUG_OBJECTS is not set
805# CONFIG_SLUB_DEBUG_ON is not set 911# CONFIG_SLUB_DEBUG_ON is not set
806# CONFIG_SLUB_STATS is not set 912# CONFIG_SLUB_STATS is not set
913# CONFIG_DEBUG_KMEMLEAK is not set
807# CONFIG_DEBUG_RT_MUTEXES is not set 914# CONFIG_DEBUG_RT_MUTEXES is not set
808# CONFIG_RT_MUTEX_TESTER is not set 915# CONFIG_RT_MUTEX_TESTER is not set
809# CONFIG_DEBUG_SPINLOCK is not set 916# CONFIG_DEBUG_SPINLOCK is not set
810# CONFIG_DEBUG_MUTEXES is not set 917# CONFIG_DEBUG_MUTEXES is not set
918# CONFIG_DEBUG_LOCK_ALLOC is not set
919# CONFIG_PROVE_LOCKING is not set
920# CONFIG_LOCK_STAT is not set
811# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 921# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
812# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 922# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
813# CONFIG_DEBUG_KOBJECT is not set 923# CONFIG_DEBUG_KOBJECT is not set
@@ -819,35 +929,45 @@ CONFIG_SCHED_DEBUG=y
819# CONFIG_DEBUG_LIST is not set 929# CONFIG_DEBUG_LIST is not set
820# CONFIG_DEBUG_SG is not set 930# CONFIG_DEBUG_SG is not set
821# CONFIG_DEBUG_NOTIFIERS is not set 931# CONFIG_DEBUG_NOTIFIERS is not set
822# CONFIG_BOOT_PRINTK_DELAY is not set 932# CONFIG_DEBUG_CREDENTIALS is not set
823# CONFIG_RCU_TORTURE_TEST is not set 933# CONFIG_RCU_TORTURE_TEST is not set
824# CONFIG_RCU_CPU_STALL_DETECTOR is not set 934# CONFIG_RCU_CPU_STALL_DETECTOR is not set
825# CONFIG_BACKTRACE_SELF_TEST is not set 935# CONFIG_BACKTRACE_SELF_TEST is not set
826# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 936# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
937# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
827# CONFIG_FAULT_INJECTION is not set 938# CONFIG_FAULT_INJECTION is not set
828# CONFIG_LATENCYTOP is not set 939# CONFIG_LATENCYTOP is not set
829CONFIG_SYSCTL_SYSCALL_CHECK=y 940CONFIG_SYSCTL_SYSCALL_CHECK=y
941# CONFIG_DEBUG_PAGEALLOC is not set
830CONFIG_HAVE_FUNCTION_TRACER=y 942CONFIG_HAVE_FUNCTION_TRACER=y
943CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
831CONFIG_HAVE_DYNAMIC_FTRACE=y 944CONFIG_HAVE_DYNAMIC_FTRACE=y
832CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 945CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
833 946CONFIG_TRACING_SUPPORT=y
834# 947CONFIG_FTRACE=y
835# Tracers
836#
837# CONFIG_FUNCTION_TRACER is not set 948# CONFIG_FUNCTION_TRACER is not set
949# CONFIG_IRQSOFF_TRACER is not set
838# CONFIG_SCHED_TRACER is not set 950# CONFIG_SCHED_TRACER is not set
839# CONFIG_CONTEXT_SWITCH_TRACER is not set 951# CONFIG_ENABLE_DEFAULT_TRACERS is not set
840# CONFIG_BOOT_TRACER is not set 952# CONFIG_BOOT_TRACER is not set
841# CONFIG_TRACE_BRANCH_PROFILING is not set 953CONFIG_BRANCH_PROFILE_NONE=y
954# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
955# CONFIG_PROFILE_ALL_BRANCHES is not set
842# CONFIG_STACK_TRACER is not set 956# CONFIG_STACK_TRACER is not set
843# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 957# CONFIG_KMEMTRACE is not set
958# CONFIG_WORKQUEUE_TRACER is not set
959# CONFIG_BLK_DEV_IO_TRACE is not set
960# CONFIG_DYNAMIC_DEBUG is not set
961# CONFIG_DMA_API_DEBUG is not set
844# CONFIG_SAMPLES is not set 962# CONFIG_SAMPLES is not set
845CONFIG_HAVE_ARCH_KGDB=y 963CONFIG_HAVE_ARCH_KGDB=y
846# CONFIG_KGDB is not set 964# CONFIG_KGDB is not set
965# CONFIG_PPC_DISABLE_WERROR is not set
966CONFIG_PPC_WERROR=y
847CONFIG_PRINT_STACK_DEPTH=64 967CONFIG_PRINT_STACK_DEPTH=64
848# CONFIG_DEBUG_STACKOVERFLOW is not set 968# CONFIG_DEBUG_STACKOVERFLOW is not set
849# CONFIG_DEBUG_STACK_USAGE is not set 969# CONFIG_DEBUG_STACK_USAGE is not set
850# CONFIG_DEBUG_PAGEALLOC is not set 970# CONFIG_PPC_EMULATED_STATS is not set
851# CONFIG_CODE_PATCHING_SELFTEST is not set 971# CONFIG_CODE_PATCHING_SELFTEST is not set
852# CONFIG_FTR_FIXUP_SELFTEST is not set 972# CONFIG_FTR_FIXUP_SELFTEST is not set
853# CONFIG_MSI_BITMAP_SELFTEST is not set 973# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -863,13 +983,16 @@ CONFIG_PRINT_STACK_DEPTH=64
863# CONFIG_KEYS is not set 983# CONFIG_KEYS is not set
864# CONFIG_SECURITY is not set 984# CONFIG_SECURITY is not set
865# CONFIG_SECURITYFS is not set 985# CONFIG_SECURITYFS is not set
866# CONFIG_SECURITY_FILE_CAPABILITIES is not set 986# CONFIG_DEFAULT_SECURITY_SELINUX is not set
987# CONFIG_DEFAULT_SECURITY_SMACK is not set
988# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
989CONFIG_DEFAULT_SECURITY_DAC=y
990CONFIG_DEFAULT_SECURITY=""
867CONFIG_CRYPTO=y 991CONFIG_CRYPTO=y
868 992
869# 993#
870# Crypto core or helper 994# Crypto core or helper
871# 995#
872# CONFIG_CRYPTO_FIPS is not set
873CONFIG_CRYPTO_ALGAPI=y 996CONFIG_CRYPTO_ALGAPI=y
874CONFIG_CRYPTO_ALGAPI2=y 997CONFIG_CRYPTO_ALGAPI2=y
875CONFIG_CRYPTO_AEAD2=y 998CONFIG_CRYPTO_AEAD2=y
@@ -878,10 +1001,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
878CONFIG_CRYPTO_HASH=y 1001CONFIG_CRYPTO_HASH=y
879CONFIG_CRYPTO_HASH2=y 1002CONFIG_CRYPTO_HASH2=y
880CONFIG_CRYPTO_RNG2=y 1003CONFIG_CRYPTO_RNG2=y
1004CONFIG_CRYPTO_PCOMP=y
881CONFIG_CRYPTO_MANAGER=y 1005CONFIG_CRYPTO_MANAGER=y
882CONFIG_CRYPTO_MANAGER2=y 1006CONFIG_CRYPTO_MANAGER2=y
883# CONFIG_CRYPTO_GF128MUL is not set 1007# CONFIG_CRYPTO_GF128MUL is not set
884# CONFIG_CRYPTO_NULL is not set 1008# CONFIG_CRYPTO_NULL is not set
1009CONFIG_CRYPTO_WORKQUEUE=y
885# CONFIG_CRYPTO_CRYPTD is not set 1010# CONFIG_CRYPTO_CRYPTD is not set
886# CONFIG_CRYPTO_AUTHENC is not set 1011# CONFIG_CRYPTO_AUTHENC is not set
887# CONFIG_CRYPTO_TEST is not set 1012# CONFIG_CRYPTO_TEST is not set
@@ -909,11 +1034,13 @@ CONFIG_CRYPTO_PCBC=y
909# 1034#
910# CONFIG_CRYPTO_HMAC is not set 1035# CONFIG_CRYPTO_HMAC is not set
911# CONFIG_CRYPTO_XCBC is not set 1036# CONFIG_CRYPTO_XCBC is not set
1037# CONFIG_CRYPTO_VMAC is not set
912 1038
913# 1039#
914# Digest 1040# Digest
915# 1041#
916# CONFIG_CRYPTO_CRC32C is not set 1042# CONFIG_CRYPTO_CRC32C is not set
1043# CONFIG_CRYPTO_GHASH is not set
917# CONFIG_CRYPTO_MD4 is not set 1044# CONFIG_CRYPTO_MD4 is not set
918CONFIG_CRYPTO_MD5=y 1045CONFIG_CRYPTO_MD5=y
919# CONFIG_CRYPTO_MICHAEL_MIC is not set 1046# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -950,6 +1077,7 @@ CONFIG_CRYPTO_DES=y
950# Compression 1077# Compression
951# 1078#
952# CONFIG_CRYPTO_DEFLATE is not set 1079# CONFIG_CRYPTO_DEFLATE is not set
1080# CONFIG_CRYPTO_ZLIB is not set
953# CONFIG_CRYPTO_LZO is not set 1081# CONFIG_CRYPTO_LZO is not set
954 1082
955# 1083#
@@ -958,5 +1086,6 @@ CONFIG_CRYPTO_DES=y
958# CONFIG_CRYPTO_ANSI_CPRNG is not set 1086# CONFIG_CRYPTO_ANSI_CPRNG is not set
959CONFIG_CRYPTO_HW=y 1087CONFIG_CRYPTO_HW=y
960# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1088# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1089# CONFIG_CRYPTO_DEV_PPC4XX is not set
961# CONFIG_PPC_CLOCK is not set 1090# CONFIG_PPC_CLOCK is not set
962# CONFIG_VIRTUALIZATION is not set 1091# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/canyonlands_defconfig b/arch/powerpc/configs/44x/canyonlands_defconfig
index b312b166be66..4ef8bcab61f8 100644
--- a/arch/powerpc/configs/44x/canyonlands_defconfig
+++ b/arch/powerpc/configs/44x/canyonlands_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.31-rc4 3# Linux kernel version: 2.6.33-rc1
4# Wed Jul 29 17:27:20 2009 4# Mon Jan 4 14:12:20 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -20,6 +20,7 @@ CONFIG_BOOKE=y
20CONFIG_PTE_64BIT=y 20CONFIG_PTE_64BIT=y
21CONFIG_PHYS_64BIT=y 21CONFIG_PHYS_64BIT=y
22CONFIG_PPC_MMU_NOHASH=y 22CONFIG_PPC_MMU_NOHASH=y
23CONFIG_PPC_MMU_NOHASH_32=y
23# CONFIG_PPC_MM_SLICES is not set 24# CONFIG_PPC_MM_SLICES is not set
24CONFIG_NOT_COHERENT_CACHE=y 25CONFIG_NOT_COHERENT_CACHE=y
25CONFIG_PPC32=y 26CONFIG_PPC32=y
@@ -33,7 +34,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
33CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
34CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
35# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
36CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
37CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
38CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
39CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -56,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
56CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
57CONFIG_DTC=y 60CONFIG_DTC=y
58# CONFIG_DEFAULT_UIMAGE is not set 61# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
59CONFIG_PPC_DCR_NATIVE=y 63CONFIG_PPC_DCR_NATIVE=y
60# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
61CONFIG_PPC_DCR=y 65CONFIG_PPC_DCR=y
@@ -83,11 +87,13 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
83# 87#
84# RCU Subsystem 88# RCU Subsystem
85# 89#
86CONFIG_CLASSIC_RCU=y 90CONFIG_TREE_RCU=y
87# CONFIG_TREE_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
88# CONFIG_PREEMPT_RCU is not set 92# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set
89# CONFIG_TREE_RCU_TRACE is not set 96# CONFIG_TREE_RCU_TRACE is not set
90# CONFIG_PREEMPT_RCU_TRACE is not set
91# CONFIG_IKCONFIG is not set 97# CONFIG_IKCONFIG is not set
92CONFIG_LOG_BUF_SHIFT=14 98CONFIG_LOG_BUF_SHIFT=14
93# CONFIG_GROUP_SCHED is not set 99# CONFIG_GROUP_SCHED is not set
@@ -121,22 +127,21 @@ CONFIG_TIMERFD=y
121CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
122CONFIG_SHMEM=y 128CONFIG_SHMEM=y
123CONFIG_AIO=y 129CONFIG_AIO=y
124CONFIG_HAVE_PERF_COUNTERS=y 130CONFIG_HAVE_PERF_EVENTS=y
125 131
126# 132#
127# Performance Counters 133# Kernel Performance Events And Counters
128# 134#
135# CONFIG_PERF_EVENTS is not set
129# CONFIG_PERF_COUNTERS is not set 136# CONFIG_PERF_COUNTERS is not set
130CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
131CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
132CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
133# CONFIG_STRIP_ASM_SYMS is not set
134CONFIG_COMPAT_BRK=y 140CONFIG_COMPAT_BRK=y
135# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
136CONFIG_SLUB=y 142CONFIG_SLUB=y
137# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
138# CONFIG_PROFILING is not set 144# CONFIG_PROFILING is not set
139# CONFIG_MARKERS is not set
140CONFIG_HAVE_OPROFILE=y 145CONFIG_HAVE_OPROFILE=y
141# CONFIG_KPROBES is not set 146# CONFIG_KPROBES is not set
142CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 147CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
@@ -144,6 +149,8 @@ CONFIG_HAVE_IOREMAP_PROT=y
144CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
145CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
146CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
147 154
148# 155#
149# GCOV-based kernel profiling 156# GCOV-based kernel profiling
@@ -169,14 +176,41 @@ CONFIG_LBDAF=y
169# IO Schedulers 176# IO Schedulers
170# 177#
171CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
172CONFIG_IOSCHED_AS=y
173CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
174CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
175CONFIG_DEFAULT_AS=y
176# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
177# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
178# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
179CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
180# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
181CONFIG_PPC4xx_PCI_EXPRESS=y 215CONFIG_PPC4xx_PCI_EXPRESS=y
182 216
@@ -198,6 +232,7 @@ CONFIG_PPC4xx_PCI_EXPRESS=y
198CONFIG_CANYONLANDS=y 232CONFIG_CANYONLANDS=y
199# CONFIG_GLACIER is not set 233# CONFIG_GLACIER is not set
200# CONFIG_REDWOOD is not set 234# CONFIG_REDWOOD is not set
235# CONFIG_EIGER is not set
201# CONFIG_YOSEMITE is not set 236# CONFIG_YOSEMITE is not set
202# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 237# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
203CONFIG_PPC44x_SIMPLE=y 238CONFIG_PPC44x_SIMPLE=y
@@ -241,10 +276,11 @@ CONFIG_BINFMT_ELF=y
241# CONFIG_MATH_EMULATION is not set 276# CONFIG_MATH_EMULATION is not set
242# CONFIG_IOMMU_HELPER is not set 277# CONFIG_IOMMU_HELPER is not set
243# CONFIG_SWIOTLB is not set 278# CONFIG_SWIOTLB is not set
244CONFIG_PPC_NEED_DMA_SYNC_OPS=y
245CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 279CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
246CONFIG_ARCH_HAS_WALK_MEMORY=y 280CONFIG_ARCH_HAS_WALK_MEMORY=y
247CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
282CONFIG_SPARSE_IRQ=y
283CONFIG_MAX_ACTIVE_REGIONS=32
248CONFIG_ARCH_FLATMEM_ENABLE=y 284CONFIG_ARCH_FLATMEM_ENABLE=y
249CONFIG_ARCH_POPULATES_NODE_MAP=y 285CONFIG_ARCH_POPULATES_NODE_MAP=y
250CONFIG_SELECT_MEMORY_MODEL=y 286CONFIG_SELECT_MEMORY_MODEL=y
@@ -260,8 +296,7 @@ CONFIG_PHYS_ADDR_T_64BIT=y
260CONFIG_ZONE_DMA_FLAG=1 296CONFIG_ZONE_DMA_FLAG=1
261CONFIG_BOUNCE=y 297CONFIG_BOUNCE=y
262CONFIG_VIRT_TO_BUS=y 298CONFIG_VIRT_TO_BUS=y
263CONFIG_HAVE_MLOCK=y 299# CONFIG_KSM is not set
264CONFIG_HAVE_MLOCKED_PAGE_BIT=y
265CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 300CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
266CONFIG_STDBINUTILS=y 301CONFIG_STDBINUTILS=y
267CONFIG_PPC_4K_PAGES=y 302CONFIG_PPC_4K_PAGES=y
@@ -352,6 +387,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
352# CONFIG_NETFILTER is not set 387# CONFIG_NETFILTER is not set
353# CONFIG_IP_DCCP is not set 388# CONFIG_IP_DCCP is not set
354# CONFIG_IP_SCTP is not set 389# CONFIG_IP_SCTP is not set
390# CONFIG_RDS is not set
355# CONFIG_TIPC is not set 391# CONFIG_TIPC is not set
356# CONFIG_ATM is not set 392# CONFIG_ATM is not set
357# CONFIG_BRIDGE is not set 393# CONFIG_BRIDGE is not set
@@ -379,7 +415,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
379# CONFIG_IRDA is not set 415# CONFIG_IRDA is not set
380# CONFIG_BT is not set 416# CONFIG_BT is not set
381# CONFIG_AF_RXRPC is not set 417# CONFIG_AF_RXRPC is not set
382# CONFIG_WIRELESS is not set 418CONFIG_WIRELESS=y
419# CONFIG_CFG80211 is not set
420# CONFIG_LIB80211 is not set
421
422#
423# CFG80211 needs to be enabled for MAC80211
424#
383# CONFIG_WIMAX is not set 425# CONFIG_WIMAX is not set
384# CONFIG_RFKILL is not set 426# CONFIG_RFKILL is not set
385# CONFIG_NET_9P is not set 427# CONFIG_NET_9P is not set
@@ -392,6 +434,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
392# Generic Driver Options 434# Generic Driver Options
393# 435#
394CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 436CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
437# CONFIG_DEVTMPFS is not set
395CONFIG_STANDALONE=y 438CONFIG_STANDALONE=y
396CONFIG_PREVENT_FIRMWARE_BUILD=y 439CONFIG_PREVENT_FIRMWARE_BUILD=y
397CONFIG_FW_LOADER=y 440CONFIG_FW_LOADER=y
@@ -404,9 +447,9 @@ CONFIG_CONNECTOR=y
404CONFIG_PROC_EVENTS=y 447CONFIG_PROC_EVENTS=y
405CONFIG_MTD=y 448CONFIG_MTD=y
406# CONFIG_MTD_DEBUG is not set 449# CONFIG_MTD_DEBUG is not set
450# CONFIG_MTD_TESTS is not set
407# CONFIG_MTD_CONCAT is not set 451# CONFIG_MTD_CONCAT is not set
408CONFIG_MTD_PARTITIONS=y 452CONFIG_MTD_PARTITIONS=y
409# CONFIG_MTD_TESTS is not set
410# CONFIG_MTD_REDBOOT_PARTS is not set 453# CONFIG_MTD_REDBOOT_PARTS is not set
411CONFIG_MTD_CMDLINE_PARTS=y 454CONFIG_MTD_CMDLINE_PARTS=y
412CONFIG_MTD_OF_PARTS=y 455CONFIG_MTD_OF_PARTS=y
@@ -508,6 +551,7 @@ CONFIG_BLK_DEV=y
508# CONFIG_BLK_DEV_UMEM is not set 551# CONFIG_BLK_DEV_UMEM is not set
509# CONFIG_BLK_DEV_COW_COMMON is not set 552# CONFIG_BLK_DEV_COW_COMMON is not set
510# CONFIG_BLK_DEV_LOOP is not set 553# CONFIG_BLK_DEV_LOOP is not set
554# CONFIG_BLK_DEV_DRBD is not set
511# CONFIG_BLK_DEV_NBD is not set 555# CONFIG_BLK_DEV_NBD is not set
512# CONFIG_BLK_DEV_SX8 is not set 556# CONFIG_BLK_DEV_SX8 is not set
513# CONFIG_BLK_DEV_UB is not set 557# CONFIG_BLK_DEV_UB is not set
@@ -585,16 +629,18 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
585# CONFIG_NET_PCI is not set 629# CONFIG_NET_PCI is not set
586# CONFIG_B44 is not set 630# CONFIG_B44 is not set
587# CONFIG_KS8842 is not set 631# CONFIG_KS8842 is not set
632# CONFIG_KS8851_MLL is not set
588# CONFIG_ATL2 is not set 633# CONFIG_ATL2 is not set
634# CONFIG_XILINX_EMACLITE is not set
589# CONFIG_NETDEV_1000 is not set 635# CONFIG_NETDEV_1000 is not set
590# CONFIG_NETDEV_10000 is not set 636# CONFIG_NETDEV_10000 is not set
591# CONFIG_TR is not set 637# CONFIG_TR is not set
592 638CONFIG_WLAN=y
593# 639# CONFIG_AIRO is not set
594# Wireless LAN 640# CONFIG_ATMEL is not set
595# 641# CONFIG_PRISM54 is not set
596# CONFIG_WLAN_PRE80211 is not set 642# CONFIG_USB_ZD1201 is not set
597# CONFIG_WLAN_80211 is not set 643# CONFIG_HOSTAP is not set
598 644
599# 645#
600# Enable WiMAX (Networking options) to see the WiMAX drivers 646# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -616,6 +662,7 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
616# CONFIG_NETCONSOLE is not set 662# CONFIG_NETCONSOLE is not set
617# CONFIG_NETPOLL is not set 663# CONFIG_NETPOLL is not set
618# CONFIG_NET_POLL_CONTROLLER is not set 664# CONFIG_NET_POLL_CONTROLLER is not set
665# CONFIG_VMXNET3 is not set
619# CONFIG_ISDN is not set 666# CONFIG_ISDN is not set
620# CONFIG_PHONE is not set 667# CONFIG_PHONE is not set
621 668
@@ -661,6 +708,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
661# CONFIG_SERIAL_JSM is not set 708# CONFIG_SERIAL_JSM is not set
662CONFIG_SERIAL_OF_PLATFORM=y 709CONFIG_SERIAL_OF_PLATFORM=y
663# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 710# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
711# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
664CONFIG_UNIX98_PTYS=y 712CONFIG_UNIX98_PTYS=y
665# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 713# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
666CONFIG_LEGACY_PTYS=y 714CONFIG_LEGACY_PTYS=y
@@ -676,6 +724,7 @@ CONFIG_LEGACY_PTY_COUNT=256
676CONFIG_DEVPORT=y 724CONFIG_DEVPORT=y
677CONFIG_I2C=y 725CONFIG_I2C=y
678CONFIG_I2C_BOARDINFO=y 726CONFIG_I2C_BOARDINFO=y
727CONFIG_I2C_COMPAT=y
679CONFIG_I2C_CHARDEV=y 728CONFIG_I2C_CHARDEV=y
680CONFIG_I2C_HELPER_AUTO=y 729CONFIG_I2C_HELPER_AUTO=y
681 730
@@ -717,11 +766,6 @@ CONFIG_I2C_IBM_IIC=y
717# CONFIG_I2C_TINY_USB is not set 766# CONFIG_I2C_TINY_USB is not set
718 767
719# 768#
720# Graphics adapter I2C/DDC channel drivers
721#
722# CONFIG_I2C_VOODOO3 is not set
723
724#
725# Other I2C/SMBus bus drivers 769# Other I2C/SMBus bus drivers
726# 770#
727# CONFIG_I2C_PCA_PLATFORM is not set 771# CONFIG_I2C_PCA_PLATFORM is not set
@@ -730,10 +774,6 @@ CONFIG_I2C_IBM_IIC=y
730# 774#
731# Miscellaneous I2C Chip support 775# Miscellaneous I2C Chip support
732# 776#
733# CONFIG_DS1682 is not set
734# CONFIG_SENSORS_PCF8574 is not set
735# CONFIG_PCF8575 is not set
736# CONFIG_SENSORS_PCA9539 is not set
737# CONFIG_SENSORS_TSL2550 is not set 777# CONFIG_SENSORS_TSL2550 is not set
738# CONFIG_I2C_DEBUG_CORE is not set 778# CONFIG_I2C_DEBUG_CORE is not set
739# CONFIG_I2C_DEBUG_ALGO is not set 779# CONFIG_I2C_DEBUG_ALGO is not set
@@ -751,6 +791,11 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
751# CONFIG_POWER_SUPPLY is not set 791# CONFIG_POWER_SUPPLY is not set
752CONFIG_HWMON=y 792CONFIG_HWMON=y
753# CONFIG_HWMON_VID is not set 793# CONFIG_HWMON_VID is not set
794# CONFIG_HWMON_DEBUG_CHIP is not set
795
796#
797# Native drivers
798#
754CONFIG_SENSORS_AD7414=y 799CONFIG_SENSORS_AD7414=y
755# CONFIG_SENSORS_AD7418 is not set 800# CONFIG_SENSORS_AD7418 is not set
756# CONFIG_SENSORS_ADM1021 is not set 801# CONFIG_SENSORS_ADM1021 is not set
@@ -774,6 +819,7 @@ CONFIG_SENSORS_AD7414=y
774# CONFIG_SENSORS_GL520SM is not set 819# CONFIG_SENSORS_GL520SM is not set
775# CONFIG_SENSORS_IT87 is not set 820# CONFIG_SENSORS_IT87 is not set
776# CONFIG_SENSORS_LM63 is not set 821# CONFIG_SENSORS_LM63 is not set
822# CONFIG_SENSORS_LM73 is not set
777# CONFIG_SENSORS_LM75 is not set 823# CONFIG_SENSORS_LM75 is not set
778# CONFIG_SENSORS_LM77 is not set 824# CONFIG_SENSORS_LM77 is not set
779# CONFIG_SENSORS_LM78 is not set 825# CONFIG_SENSORS_LM78 is not set
@@ -800,6 +846,7 @@ CONFIG_SENSORS_AD7414=y
800# CONFIG_SENSORS_ADS7828 is not set 846# CONFIG_SENSORS_ADS7828 is not set
801# CONFIG_SENSORS_THMC50 is not set 847# CONFIG_SENSORS_THMC50 is not set
802# CONFIG_SENSORS_TMP401 is not set 848# CONFIG_SENSORS_TMP401 is not set
849# CONFIG_SENSORS_TMP421 is not set
803# CONFIG_SENSORS_VIA686A is not set 850# CONFIG_SENSORS_VIA686A is not set
804# CONFIG_SENSORS_VT1211 is not set 851# CONFIG_SENSORS_VT1211 is not set
805# CONFIG_SENSORS_VT8231 is not set 852# CONFIG_SENSORS_VT8231 is not set
@@ -811,9 +858,7 @@ CONFIG_SENSORS_AD7414=y
811# CONFIG_SENSORS_W83L786NG is not set 858# CONFIG_SENSORS_W83L786NG is not set
812# CONFIG_SENSORS_W83627HF is not set 859# CONFIG_SENSORS_W83627HF is not set
813# CONFIG_SENSORS_W83627EHF is not set 860# CONFIG_SENSORS_W83627EHF is not set
814# CONFIG_HWMON_DEBUG_CHIP is not set
815# CONFIG_THERMAL is not set 861# CONFIG_THERMAL is not set
816# CONFIG_THERMAL_HWMON is not set
817# CONFIG_WATCHDOG is not set 862# CONFIG_WATCHDOG is not set
818CONFIG_SSB_POSSIBLE=y 863CONFIG_SSB_POSSIBLE=y
819 864
@@ -831,10 +876,13 @@ CONFIG_SSB_POSSIBLE=y
831# CONFIG_TWL4030_CORE is not set 876# CONFIG_TWL4030_CORE is not set
832# CONFIG_MFD_TMIO is not set 877# CONFIG_MFD_TMIO is not set
833# CONFIG_PMIC_DA903X is not set 878# CONFIG_PMIC_DA903X is not set
879# CONFIG_PMIC_ADP5520 is not set
834# CONFIG_MFD_WM8400 is not set 880# CONFIG_MFD_WM8400 is not set
881# CONFIG_MFD_WM831X is not set
835# CONFIG_MFD_WM8350_I2C is not set 882# CONFIG_MFD_WM8350_I2C is not set
836# CONFIG_MFD_PCF50633 is not set 883# CONFIG_MFD_PCF50633 is not set
837# CONFIG_AB3100_CORE is not set 884# CONFIG_AB3100_CORE is not set
885# CONFIG_MFD_88PM8607 is not set
838# CONFIG_REGULATOR is not set 886# CONFIG_REGULATOR is not set
839# CONFIG_MEDIA_SUPPORT is not set 887# CONFIG_MEDIA_SUPPORT is not set
840 888
@@ -842,6 +890,7 @@ CONFIG_SSB_POSSIBLE=y
842# Graphics support 890# Graphics support
843# 891#
844# CONFIG_AGP is not set 892# CONFIG_AGP is not set
893CONFIG_VGA_ARB=y
845# CONFIG_DRM is not set 894# CONFIG_DRM is not set
846# CONFIG_VGASTATE is not set 895# CONFIG_VGASTATE is not set
847# CONFIG_VIDEO_OUTPUT_CONTROL is not set 896# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -882,10 +931,12 @@ CONFIG_USB_MON=y
882CONFIG_USB_EHCI_HCD=m 931CONFIG_USB_EHCI_HCD=m
883# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 932# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
884# CONFIG_USB_EHCI_TT_NEWSCHED is not set 933# CONFIG_USB_EHCI_TT_NEWSCHED is not set
934# CONFIG_XPS_USB_HCD_XILINX is not set
885CONFIG_USB_EHCI_HCD_PPC_OF=y 935CONFIG_USB_EHCI_HCD_PPC_OF=y
886# CONFIG_USB_OXU210HP_HCD is not set 936# CONFIG_USB_OXU210HP_HCD is not set
887# CONFIG_USB_ISP116X_HCD is not set 937# CONFIG_USB_ISP116X_HCD is not set
888# CONFIG_USB_ISP1760_HCD is not set 938# CONFIG_USB_ISP1760_HCD is not set
939# CONFIG_USB_ISP1362_HCD is not set
889CONFIG_USB_OHCI_HCD=y 940CONFIG_USB_OHCI_HCD=y
890CONFIG_USB_OHCI_HCD_PPC_OF_BE=y 941CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
891CONFIG_USB_OHCI_HCD_PPC_OF_LE=y 942CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
@@ -993,6 +1044,7 @@ CONFIG_RTC_INTF_DEV=y
993# CONFIG_RTC_DRV_PCF8583 is not set 1044# CONFIG_RTC_DRV_PCF8583 is not set
994CONFIG_RTC_DRV_M41T80=y 1045CONFIG_RTC_DRV_M41T80=y
995# CONFIG_RTC_DRV_M41T80_WDT is not set 1046# CONFIG_RTC_DRV_M41T80_WDT is not set
1047# CONFIG_RTC_DRV_BQ32K is not set
996# CONFIG_RTC_DRV_S35390A is not set 1048# CONFIG_RTC_DRV_S35390A is not set
997# CONFIG_RTC_DRV_FM3130 is not set 1049# CONFIG_RTC_DRV_FM3130 is not set
998# CONFIG_RTC_DRV_RX8581 is not set 1050# CONFIG_RTC_DRV_RX8581 is not set
@@ -1014,7 +1066,9 @@ CONFIG_RTC_DRV_M41T80=y
1014# CONFIG_RTC_DRV_M48T86 is not set 1066# CONFIG_RTC_DRV_M48T86 is not set
1015# CONFIG_RTC_DRV_M48T35 is not set 1067# CONFIG_RTC_DRV_M48T35 is not set
1016# CONFIG_RTC_DRV_M48T59 is not set 1068# CONFIG_RTC_DRV_M48T59 is not set
1069# CONFIG_RTC_DRV_MSM6242 is not set
1017# CONFIG_RTC_DRV_BQ4802 is not set 1070# CONFIG_RTC_DRV_BQ4802 is not set
1071# CONFIG_RTC_DRV_RP5C01 is not set
1018# CONFIG_RTC_DRV_V3020 is not set 1072# CONFIG_RTC_DRV_V3020 is not set
1019 1073
1020# 1074#
@@ -1038,6 +1092,7 @@ CONFIG_EXT2_FS=y
1038# CONFIG_EXT2_FS_XIP is not set 1092# CONFIG_EXT2_FS_XIP is not set
1039# CONFIG_EXT3_FS is not set 1093# CONFIG_EXT3_FS is not set
1040# CONFIG_EXT4_FS is not set 1094# CONFIG_EXT4_FS is not set
1095CONFIG_EXT4_USE_FOR_EXT23=y
1041# CONFIG_REISERFS_FS is not set 1096# CONFIG_REISERFS_FS is not set
1042# CONFIG_JFS_FS is not set 1097# CONFIG_JFS_FS is not set
1043# CONFIG_FS_POSIX_ACL is not set 1098# CONFIG_FS_POSIX_ACL is not set
@@ -1045,6 +1100,7 @@ CONFIG_EXT2_FS=y
1045# CONFIG_GFS2_FS is not set 1100# CONFIG_GFS2_FS is not set
1046# CONFIG_OCFS2_FS is not set 1101# CONFIG_OCFS2_FS is not set
1047# CONFIG_BTRFS_FS is not set 1102# CONFIG_BTRFS_FS is not set
1103# CONFIG_NILFS2_FS is not set
1048CONFIG_FILE_LOCKING=y 1104CONFIG_FILE_LOCKING=y
1049CONFIG_FSNOTIFY=y 1105CONFIG_FSNOTIFY=y
1050CONFIG_DNOTIFY=y 1106CONFIG_DNOTIFY=y
@@ -1104,7 +1160,6 @@ CONFIG_CRAMFS=y
1104# CONFIG_ROMFS_FS is not set 1160# CONFIG_ROMFS_FS is not set
1105# CONFIG_SYSV_FS is not set 1161# CONFIG_SYSV_FS is not set
1106# CONFIG_UFS_FS is not set 1162# CONFIG_UFS_FS is not set
1107# CONFIG_NILFS2_FS is not set
1108CONFIG_NETWORK_FILESYSTEMS=y 1163CONFIG_NETWORK_FILESYSTEMS=y
1109CONFIG_NFS_FS=y 1164CONFIG_NFS_FS=y
1110CONFIG_NFS_V3=y 1165CONFIG_NFS_V3=y
@@ -1201,6 +1256,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1201CONFIG_ENABLE_MUST_CHECK=y 1256CONFIG_ENABLE_MUST_CHECK=y
1202CONFIG_FRAME_WARN=1024 1257CONFIG_FRAME_WARN=1024
1203CONFIG_MAGIC_SYSRQ=y 1258CONFIG_MAGIC_SYSRQ=y
1259# CONFIG_STRIP_ASM_SYMS is not set
1204# CONFIG_UNUSED_SYMBOLS is not set 1260# CONFIG_UNUSED_SYMBOLS is not set
1205CONFIG_DEBUG_FS=y 1261CONFIG_DEBUG_FS=y
1206# CONFIG_HEADERS_CHECK is not set 1262# CONFIG_HEADERS_CHECK is not set
@@ -1218,6 +1274,7 @@ CONFIG_SCHED_DEBUG=y
1218# CONFIG_DEBUG_OBJECTS is not set 1274# CONFIG_DEBUG_OBJECTS is not set
1219# CONFIG_SLUB_DEBUG_ON is not set 1275# CONFIG_SLUB_DEBUG_ON is not set
1220# CONFIG_SLUB_STATS is not set 1276# CONFIG_SLUB_STATS is not set
1277# CONFIG_DEBUG_KMEMLEAK is not set
1221# CONFIG_DEBUG_RT_MUTEXES is not set 1278# CONFIG_DEBUG_RT_MUTEXES is not set
1222# CONFIG_RT_MUTEX_TESTER is not set 1279# CONFIG_RT_MUTEX_TESTER is not set
1223# CONFIG_DEBUG_SPINLOCK is not set 1280# CONFIG_DEBUG_SPINLOCK is not set
@@ -1236,10 +1293,12 @@ CONFIG_SCHED_DEBUG=y
1236# CONFIG_DEBUG_LIST is not set 1293# CONFIG_DEBUG_LIST is not set
1237# CONFIG_DEBUG_SG is not set 1294# CONFIG_DEBUG_SG is not set
1238# CONFIG_DEBUG_NOTIFIERS is not set 1295# CONFIG_DEBUG_NOTIFIERS is not set
1296# CONFIG_DEBUG_CREDENTIALS is not set
1239# CONFIG_RCU_TORTURE_TEST is not set 1297# CONFIG_RCU_TORTURE_TEST is not set
1240# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1298# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1241# CONFIG_BACKTRACE_SELF_TEST is not set 1299# CONFIG_BACKTRACE_SELF_TEST is not set
1242# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1300# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1301# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1243# CONFIG_FAULT_INJECTION is not set 1302# CONFIG_FAULT_INJECTION is not set
1244# CONFIG_LATENCYTOP is not set 1303# CONFIG_LATENCYTOP is not set
1245CONFIG_SYSCTL_SYSCALL_CHECK=y 1304CONFIG_SYSCTL_SYSCALL_CHECK=y
@@ -1263,10 +1322,10 @@ CONFIG_BRANCH_PROFILE_NONE=y
1263# CONFIG_WORKQUEUE_TRACER is not set 1322# CONFIG_WORKQUEUE_TRACER is not set
1264# CONFIG_BLK_DEV_IO_TRACE is not set 1323# CONFIG_BLK_DEV_IO_TRACE is not set
1265# CONFIG_DYNAMIC_DEBUG is not set 1324# CONFIG_DYNAMIC_DEBUG is not set
1325# CONFIG_DMA_API_DEBUG is not set
1266# CONFIG_SAMPLES is not set 1326# CONFIG_SAMPLES is not set
1267CONFIG_HAVE_ARCH_KGDB=y 1327CONFIG_HAVE_ARCH_KGDB=y
1268# CONFIG_KGDB is not set 1328# CONFIG_KGDB is not set
1269# CONFIG_KMEMCHECK is not set
1270# CONFIG_PPC_DISABLE_WERROR is not set 1329# CONFIG_PPC_DISABLE_WERROR is not set
1271CONFIG_PPC_WERROR=y 1330CONFIG_PPC_WERROR=y
1272CONFIG_PRINT_STACK_DEPTH=64 1331CONFIG_PRINT_STACK_DEPTH=64
@@ -1288,7 +1347,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1288# CONFIG_KEYS is not set 1347# CONFIG_KEYS is not set
1289# CONFIG_SECURITY is not set 1348# CONFIG_SECURITY is not set
1290# CONFIG_SECURITYFS is not set 1349# CONFIG_SECURITYFS is not set
1291# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1350# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1351# CONFIG_DEFAULT_SECURITY_SMACK is not set
1352# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1353CONFIG_DEFAULT_SECURITY_DAC=y
1354CONFIG_DEFAULT_SECURITY=""
1292# CONFIG_CRYPTO is not set 1355# CONFIG_CRYPTO is not set
1293# CONFIG_PPC_CLOCK is not set 1356# CONFIG_PPC_CLOCK is not set
1294# CONFIG_VIRTUALIZATION is not set 1357# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/ebony_defconfig b/arch/powerpc/configs/44x/ebony_defconfig
index b652f7dcab5a..ca17b1496e32 100644
--- a/arch/powerpc/configs/44x/ebony_defconfig
+++ b/arch/powerpc/configs/44x/ebony_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:22:36 2009 4# Mon Jan 4 14:20:46 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -19,6 +19,7 @@ CONFIG_BOOKE=y
19CONFIG_PTE_64BIT=y 19CONFIG_PTE_64BIT=y
20CONFIG_PHYS_64BIT=y 20CONFIG_PHYS_64BIT=y
21CONFIG_PPC_MMU_NOHASH=y 21CONFIG_PPC_MMU_NOHASH=y
22CONFIG_PPC_MMU_NOHASH_32=y
22# CONFIG_PPC_MM_SLICES is not set 23# CONFIG_PPC_MM_SLICES is not set
23CONFIG_NOT_COHERENT_CACHE=y 24CONFIG_NOT_COHERENT_CACHE=y
24CONFIG_PPC32=y 25CONFIG_PPC32=y
@@ -30,15 +31,18 @@ CONFIG_GENERIC_TIME=y
30CONFIG_GENERIC_TIME_VSYSCALL=y 31CONFIG_GENERIC_TIME_VSYSCALL=y
31CONFIG_GENERIC_CLOCKEVENTS=y 32CONFIG_GENERIC_CLOCKEVENTS=y
32CONFIG_GENERIC_HARDIRQS=y 33CONFIG_GENERIC_HARDIRQS=y
34CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
33# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 35# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
36# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 37CONFIG_IRQ_PER_CPU=y
38CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 39CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 40CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y
37CONFIG_LOCKDEP_SUPPORT=y 42CONFIG_LOCKDEP_SUPPORT=y
38CONFIG_RWSEM_XCHGADD_ALGORITHM=y 43CONFIG_RWSEM_XCHGADD_ALGORITHM=y
39CONFIG_ARCH_HAS_ILOG2_U32=y 44CONFIG_ARCH_HAS_ILOG2_U32=y
40CONFIG_GENERIC_HWEIGHT=y 45CONFIG_GENERIC_HWEIGHT=y
41CONFIG_GENERIC_CALIBRATE_DELAY=y
42CONFIG_GENERIC_FIND_NEXT_BIT=y 46CONFIG_GENERIC_FIND_NEXT_BIT=y
43# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 47# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
44CONFIG_PPC=y 48CONFIG_PPC=y
@@ -52,11 +56,15 @@ CONFIG_PPC_UDBG_16550=y
52# CONFIG_GENERIC_TBSYNC is not set 56# CONFIG_GENERIC_TBSYNC is not set
53CONFIG_AUDIT_ARCH=y 57CONFIG_AUDIT_ARCH=y
54CONFIG_GENERIC_BUG=y 58CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y
55# CONFIG_DEFAULT_UIMAGE is not set 60# CONFIG_DEFAULT_UIMAGE is not set
61CONFIG_ARCH_HIBERNATION_POSSIBLE=y
56CONFIG_PPC_DCR_NATIVE=y 62CONFIG_PPC_DCR_NATIVE=y
57# CONFIG_PPC_DCR_MMIO is not set 63# CONFIG_PPC_DCR_MMIO is not set
58CONFIG_PPC_DCR=y 64CONFIG_PPC_DCR=y
65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
59CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 66CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
67CONFIG_CONSTRUCTORS=y
60 68
61# 69#
62# General setup 70# General setup
@@ -70,9 +78,21 @@ CONFIG_SWAP=y
70CONFIG_SYSVIPC=y 78CONFIG_SYSVIPC=y
71CONFIG_SYSVIPC_SYSCTL=y 79CONFIG_SYSVIPC_SYSCTL=y
72CONFIG_POSIX_MQUEUE=y 80CONFIG_POSIX_MQUEUE=y
81CONFIG_POSIX_MQUEUE_SYSCTL=y
73# CONFIG_BSD_PROCESS_ACCT is not set 82# CONFIG_BSD_PROCESS_ACCT is not set
74# CONFIG_TASKSTATS is not set 83# CONFIG_TASKSTATS is not set
75# CONFIG_AUDIT is not set 84# CONFIG_AUDIT is not set
85
86#
87# RCU Subsystem
88#
89CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set
91# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set
95# CONFIG_TREE_RCU_TRACE is not set
76# CONFIG_IKCONFIG is not set 96# CONFIG_IKCONFIG is not set
77CONFIG_LOG_BUF_SHIFT=14 97CONFIG_LOG_BUF_SHIFT=14
78CONFIG_GROUP_SCHED=y 98CONFIG_GROUP_SCHED=y
@@ -87,31 +107,40 @@ CONFIG_SYSFS_DEPRECATED_V2=y
87# CONFIG_NAMESPACES is not set 107# CONFIG_NAMESPACES is not set
88CONFIG_BLK_DEV_INITRD=y 108CONFIG_BLK_DEV_INITRD=y
89CONFIG_INITRAMFS_SOURCE="" 109CONFIG_INITRAMFS_SOURCE=""
110CONFIG_RD_GZIP=y
111# CONFIG_RD_BZIP2 is not set
112# CONFIG_RD_LZMA is not set
90# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 113# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
91CONFIG_SYSCTL=y 114CONFIG_SYSCTL=y
115CONFIG_ANON_INODES=y
92CONFIG_EMBEDDED=y 116CONFIG_EMBEDDED=y
93CONFIG_SYSCTL_SYSCALL=y 117CONFIG_SYSCTL_SYSCALL=y
94CONFIG_KALLSYMS=y 118CONFIG_KALLSYMS=y
95CONFIG_KALLSYMS_ALL=y 119CONFIG_KALLSYMS_ALL=y
96CONFIG_KALLSYMS_STRIP_GENERATED=y
97CONFIG_KALLSYMS_EXTRA_PASS=y 120CONFIG_KALLSYMS_EXTRA_PASS=y
98CONFIG_HOTPLUG=y 121CONFIG_HOTPLUG=y
99CONFIG_PRINTK=y 122CONFIG_PRINTK=y
100CONFIG_BUG=y 123CONFIG_BUG=y
101CONFIG_ELF_CORE=y 124CONFIG_ELF_CORE=y
102CONFIG_COMPAT_BRK=y
103CONFIG_BASE_FULL=y 125CONFIG_BASE_FULL=y
104CONFIG_FUTEX=y 126CONFIG_FUTEX=y
105CONFIG_ANON_INODES=y
106CONFIG_EPOLL=y 127CONFIG_EPOLL=y
107CONFIG_SIGNALFD=y 128CONFIG_SIGNALFD=y
108CONFIG_TIMERFD=y 129CONFIG_TIMERFD=y
109CONFIG_EVENTFD=y 130CONFIG_EVENTFD=y
110CONFIG_SHMEM=y 131CONFIG_SHMEM=y
111CONFIG_AIO=y 132CONFIG_AIO=y
133CONFIG_HAVE_PERF_EVENTS=y
134
135#
136# Kernel Performance Events And Counters
137#
138# CONFIG_PERF_EVENTS is not set
139# CONFIG_PERF_COUNTERS is not set
112CONFIG_VM_EVENT_COUNTERS=y 140CONFIG_VM_EVENT_COUNTERS=y
113CONFIG_PCI_QUIRKS=y 141CONFIG_PCI_QUIRKS=y
114CONFIG_SLUB_DEBUG=y 142CONFIG_SLUB_DEBUG=y
143CONFIG_COMPAT_BRK=y
115# CONFIG_SLAB is not set 144# CONFIG_SLAB is not set
116CONFIG_SLUB=y 145CONFIG_SLUB=y
117# CONFIG_SLOB is not set 146# CONFIG_SLOB is not set
@@ -123,6 +152,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
123CONFIG_HAVE_KPROBES=y 152CONFIG_HAVE_KPROBES=y
124CONFIG_HAVE_KRETPROBES=y 153CONFIG_HAVE_KRETPROBES=y
125CONFIG_HAVE_ARCH_TRACEHOOK=y 154CONFIG_HAVE_ARCH_TRACEHOOK=y
155CONFIG_HAVE_DMA_ATTRS=y
156CONFIG_HAVE_DMA_API_DEBUG=y
157
158#
159# GCOV-based kernel profiling
160#
161# CONFIG_GCOV_KERNEL is not set
162# CONFIG_SLOW_WORK is not set
126# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 163# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
127CONFIG_SLABINFO=y 164CONFIG_SLABINFO=y
128CONFIG_RT_MUTEXES=y 165CONFIG_RT_MUTEXES=y
@@ -134,8 +171,7 @@ CONFIG_MODULE_UNLOAD=y
134# CONFIG_MODVERSIONS is not set 171# CONFIG_MODVERSIONS is not set
135# CONFIG_MODULE_SRCVERSION_ALL is not set 172# CONFIG_MODULE_SRCVERSION_ALL is not set
136CONFIG_BLOCK=y 173CONFIG_BLOCK=y
137CONFIG_LBD=y 174CONFIG_LBDAF=y
138# CONFIG_BLK_DEV_IO_TRACE is not set
139# CONFIG_BLK_DEV_BSG is not set 175# CONFIG_BLK_DEV_BSG is not set
140# CONFIG_BLK_DEV_INTEGRITY is not set 176# CONFIG_BLK_DEV_INTEGRITY is not set
141 177
@@ -143,19 +179,41 @@ CONFIG_LBD=y
143# IO Schedulers 179# IO Schedulers
144# 180#
145CONFIG_IOSCHED_NOOP=y 181CONFIG_IOSCHED_NOOP=y
146CONFIG_IOSCHED_AS=y
147CONFIG_IOSCHED_DEADLINE=y 182CONFIG_IOSCHED_DEADLINE=y
148CONFIG_IOSCHED_CFQ=y 183CONFIG_IOSCHED_CFQ=y
149CONFIG_DEFAULT_AS=y
150# CONFIG_DEFAULT_DEADLINE is not set 184# CONFIG_DEFAULT_DEADLINE is not set
151# CONFIG_DEFAULT_CFQ is not set 185CONFIG_DEFAULT_CFQ=y
152# CONFIG_DEFAULT_NOOP is not set 186# CONFIG_DEFAULT_NOOP is not set
153CONFIG_DEFAULT_IOSCHED="anticipatory" 187CONFIG_DEFAULT_IOSCHED="cfq"
154CONFIG_CLASSIC_RCU=y 188# CONFIG_INLINE_SPIN_TRYLOCK is not set
155# CONFIG_TREE_RCU is not set 189# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
156# CONFIG_PREEMPT_RCU is not set 190# CONFIG_INLINE_SPIN_LOCK is not set
157# CONFIG_TREE_RCU_TRACE is not set 191# CONFIG_INLINE_SPIN_LOCK_BH is not set
158# CONFIG_PREEMPT_RCU_TRACE is not set 192# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
193# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
194CONFIG_INLINE_SPIN_UNLOCK=y
195# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
196CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
197# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
198# CONFIG_INLINE_READ_TRYLOCK is not set
199# CONFIG_INLINE_READ_LOCK is not set
200# CONFIG_INLINE_READ_LOCK_BH is not set
201# CONFIG_INLINE_READ_LOCK_IRQ is not set
202# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
203CONFIG_INLINE_READ_UNLOCK=y
204# CONFIG_INLINE_READ_UNLOCK_BH is not set
205CONFIG_INLINE_READ_UNLOCK_IRQ=y
206# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
207# CONFIG_INLINE_WRITE_TRYLOCK is not set
208# CONFIG_INLINE_WRITE_LOCK is not set
209# CONFIG_INLINE_WRITE_LOCK_BH is not set
210# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
212CONFIG_INLINE_WRITE_UNLOCK=y
213# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
214CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
215# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
216# CONFIG_MUTEX_SPIN_ON_OWNER is not set
159# CONFIG_FREEZER is not set 217# CONFIG_FREEZER is not set
160# CONFIG_PPC4xx_PCI_EXPRESS is not set 218# CONFIG_PPC4xx_PCI_EXPRESS is not set
161 219
@@ -176,6 +234,8 @@ CONFIG_EBONY=y
176# CONFIG_ARCHES is not set 234# CONFIG_ARCHES is not set
177# CONFIG_CANYONLANDS is not set 235# CONFIG_CANYONLANDS is not set
178# CONFIG_GLACIER is not set 236# CONFIG_GLACIER is not set
237# CONFIG_REDWOOD is not set
238# CONFIG_EIGER is not set
179# CONFIG_YOSEMITE is not set 239# CONFIG_YOSEMITE is not set
180# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 240# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
181# CONFIG_PPC44x_SIMPLE is not set 241# CONFIG_PPC44x_SIMPLE is not set
@@ -218,10 +278,12 @@ CONFIG_BINFMT_ELF=y
218# CONFIG_BINFMT_MISC is not set 278# CONFIG_BINFMT_MISC is not set
219CONFIG_MATH_EMULATION=y 279CONFIG_MATH_EMULATION=y
220# CONFIG_IOMMU_HELPER is not set 280# CONFIG_IOMMU_HELPER is not set
221CONFIG_PPC_NEED_DMA_SYNC_OPS=y 281# CONFIG_SWIOTLB is not set
222CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 282CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
223CONFIG_ARCH_HAS_WALK_MEMORY=y 283CONFIG_ARCH_HAS_WALK_MEMORY=y
224CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 284CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
285CONFIG_SPARSE_IRQ=y
286CONFIG_MAX_ACTIVE_REGIONS=32
225CONFIG_ARCH_FLATMEM_ENABLE=y 287CONFIG_ARCH_FLATMEM_ENABLE=y
226CONFIG_ARCH_POPULATES_NODE_MAP=y 288CONFIG_ARCH_POPULATES_NODE_MAP=y
227CONFIG_SELECT_MEMORY_MODEL=y 289CONFIG_SELECT_MEMORY_MODEL=y
@@ -237,10 +299,13 @@ CONFIG_PHYS_ADDR_T_64BIT=y
237CONFIG_ZONE_DMA_FLAG=1 299CONFIG_ZONE_DMA_FLAG=1
238CONFIG_BOUNCE=y 300CONFIG_BOUNCE=y
239CONFIG_VIRT_TO_BUS=y 301CONFIG_VIRT_TO_BUS=y
240CONFIG_UNEVICTABLE_LRU=y 302# CONFIG_KSM is not set
303CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
304CONFIG_STDBINUTILS=y
241CONFIG_PPC_4K_PAGES=y 305CONFIG_PPC_4K_PAGES=y
242# CONFIG_PPC_16K_PAGES is not set 306# CONFIG_PPC_16K_PAGES is not set
243# CONFIG_PPC_64K_PAGES is not set 307# CONFIG_PPC_64K_PAGES is not set
308# CONFIG_PPC_256K_PAGES is not set
244CONFIG_FORCE_MAX_ZONEORDER=11 309CONFIG_FORCE_MAX_ZONEORDER=11
245CONFIG_PROC_DEVICETREE=y 310CONFIG_PROC_DEVICETREE=y
246# CONFIG_CMDLINE_BOOL is not set 311# CONFIG_CMDLINE_BOOL is not set
@@ -264,6 +329,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
264# CONFIG_PCI_LEGACY is not set 329# CONFIG_PCI_LEGACY is not set
265# CONFIG_PCI_DEBUG is not set 330# CONFIG_PCI_DEBUG is not set
266# CONFIG_PCI_STUB is not set 331# CONFIG_PCI_STUB is not set
332# CONFIG_PCI_IOV is not set
267# CONFIG_PCCARD is not set 333# CONFIG_PCCARD is not set
268# CONFIG_HOTPLUG_PCI is not set 334# CONFIG_HOTPLUG_PCI is not set
269# CONFIG_HAS_RAPIDIO is not set 335# CONFIG_HAS_RAPIDIO is not set
@@ -281,14 +347,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
281CONFIG_KERNEL_START=0xc0000000 347CONFIG_KERNEL_START=0xc0000000
282CONFIG_PHYSICAL_START=0x00000000 348CONFIG_PHYSICAL_START=0x00000000
283CONFIG_TASK_SIZE=0xc0000000 349CONFIG_TASK_SIZE=0xc0000000
284CONFIG_CONSISTENT_START=0xff100000
285CONFIG_CONSISTENT_SIZE=0x00200000 350CONFIG_CONSISTENT_SIZE=0x00200000
286CONFIG_NET=y 351CONFIG_NET=y
287 352
288# 353#
289# Networking options 354# Networking options
290# 355#
291CONFIG_COMPAT_NET_DEV_OPS=y
292CONFIG_PACKET=y 356CONFIG_PACKET=y
293# CONFIG_PACKET_MMAP is not set 357# CONFIG_PACKET_MMAP is not set
294CONFIG_UNIX=y 358CONFIG_UNIX=y
@@ -325,6 +389,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
325# CONFIG_NETFILTER is not set 389# CONFIG_NETFILTER is not set
326# CONFIG_IP_DCCP is not set 390# CONFIG_IP_DCCP is not set
327# CONFIG_IP_SCTP is not set 391# CONFIG_IP_SCTP is not set
392# CONFIG_RDS is not set
328# CONFIG_TIPC is not set 393# CONFIG_TIPC is not set
329# CONFIG_ATM is not set 394# CONFIG_ATM is not set
330# CONFIG_BRIDGE is not set 395# CONFIG_BRIDGE is not set
@@ -338,6 +403,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
338# CONFIG_LAPB is not set 403# CONFIG_LAPB is not set
339# CONFIG_ECONET is not set 404# CONFIG_ECONET is not set
340# CONFIG_WAN_ROUTER is not set 405# CONFIG_WAN_ROUTER is not set
406# CONFIG_PHONET is not set
407# CONFIG_IEEE802154 is not set
341# CONFIG_NET_SCHED is not set 408# CONFIG_NET_SCHED is not set
342# CONFIG_DCB is not set 409# CONFIG_DCB is not set
343 410
@@ -350,8 +417,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
350# CONFIG_IRDA is not set 417# CONFIG_IRDA is not set
351# CONFIG_BT is not set 418# CONFIG_BT is not set
352# CONFIG_AF_RXRPC is not set 419# CONFIG_AF_RXRPC is not set
353# CONFIG_PHONET is not set 420CONFIG_WIRELESS=y
354# CONFIG_WIRELESS is not set 421# CONFIG_CFG80211 is not set
422# CONFIG_LIB80211 is not set
423
424#
425# CFG80211 needs to be enabled for MAC80211
426#
355# CONFIG_WIMAX is not set 427# CONFIG_WIMAX is not set
356# CONFIG_RFKILL is not set 428# CONFIG_RFKILL is not set
357# CONFIG_NET_9P is not set 429# CONFIG_NET_9P is not set
@@ -364,6 +436,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
364# Generic Driver Options 436# Generic Driver Options
365# 437#
366CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 438CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
439# CONFIG_DEVTMPFS is not set
367CONFIG_STANDALONE=y 440CONFIG_STANDALONE=y
368CONFIG_PREVENT_FIRMWARE_BUILD=y 441CONFIG_PREVENT_FIRMWARE_BUILD=y
369CONFIG_FW_LOADER=y 442CONFIG_FW_LOADER=y
@@ -376,9 +449,9 @@ CONFIG_CONNECTOR=y
376CONFIG_PROC_EVENTS=y 449CONFIG_PROC_EVENTS=y
377CONFIG_MTD=y 450CONFIG_MTD=y
378# CONFIG_MTD_DEBUG is not set 451# CONFIG_MTD_DEBUG is not set
452# CONFIG_MTD_TESTS is not set
379# CONFIG_MTD_CONCAT is not set 453# CONFIG_MTD_CONCAT is not set
380CONFIG_MTD_PARTITIONS=y 454CONFIG_MTD_PARTITIONS=y
381# CONFIG_MTD_TESTS is not set
382# CONFIG_MTD_REDBOOT_PARTS is not set 455# CONFIG_MTD_REDBOOT_PARTS is not set
383# CONFIG_MTD_CMDLINE_PARTS is not set 456# CONFIG_MTD_CMDLINE_PARTS is not set
384CONFIG_MTD_OF_PARTS=y 457CONFIG_MTD_OF_PARTS=y
@@ -453,7 +526,6 @@ CONFIG_MTD_PHYSMAP_OF=y
453# LPDDR flash memory drivers 526# LPDDR flash memory drivers
454# 527#
455# CONFIG_MTD_LPDDR is not set 528# CONFIG_MTD_LPDDR is not set
456# CONFIG_MTD_QINFO_PROBE is not set
457 529
458# 530#
459# UBI - Unsorted block images 531# UBI - Unsorted block images
@@ -469,6 +541,7 @@ CONFIG_BLK_DEV=y
469# CONFIG_BLK_DEV_UMEM is not set 541# CONFIG_BLK_DEV_UMEM is not set
470# CONFIG_BLK_DEV_COW_COMMON is not set 542# CONFIG_BLK_DEV_COW_COMMON is not set
471# CONFIG_BLK_DEV_LOOP is not set 543# CONFIG_BLK_DEV_LOOP is not set
544# CONFIG_BLK_DEV_DRBD is not set
472# CONFIG_BLK_DEV_NBD is not set 545# CONFIG_BLK_DEV_NBD is not set
473# CONFIG_BLK_DEV_SX8 is not set 546# CONFIG_BLK_DEV_SX8 is not set
474CONFIG_BLK_DEV_RAM=y 547CONFIG_BLK_DEV_RAM=y
@@ -481,12 +554,17 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
481# CONFIG_BLK_DEV_HD is not set 554# CONFIG_BLK_DEV_HD is not set
482CONFIG_MISC_DEVICES=y 555CONFIG_MISC_DEVICES=y
483# CONFIG_PHANTOM is not set 556# CONFIG_PHANTOM is not set
484# CONFIG_EEPROM_93CX6 is not set
485# CONFIG_SGI_IOC4 is not set 557# CONFIG_SGI_IOC4 is not set
486# CONFIG_TIFM_CORE is not set 558# CONFIG_TIFM_CORE is not set
487# CONFIG_ENCLOSURE_SERVICES is not set 559# CONFIG_ENCLOSURE_SERVICES is not set
488# CONFIG_HP_ILO is not set 560# CONFIG_HP_ILO is not set
489# CONFIG_C2PORT is not set 561# CONFIG_C2PORT is not set
562
563#
564# EEPROM support
565#
566# CONFIG_EEPROM_93CX6 is not set
567# CONFIG_CB710_CORE is not set
490CONFIG_HAVE_IDE=y 568CONFIG_HAVE_IDE=y
491# CONFIG_IDE is not set 569# CONFIG_IDE is not set
492 570
@@ -506,7 +584,11 @@ CONFIG_HAVE_IDE=y
506# 584#
507 585
508# 586#
509# Enable only one of the two stacks, unless you know what you are doing 587# You can enable one or both FireWire driver stacks.
588#
589
590#
591# See the help texts for more information.
510# 592#
511# CONFIG_FIREWIRE is not set 593# CONFIG_FIREWIRE is not set
512# CONFIG_IEEE1394 is not set 594# CONFIG_IEEE1394 is not set
@@ -527,6 +609,8 @@ CONFIG_NET_ETHERNET=y
527# CONFIG_SUNGEM is not set 609# CONFIG_SUNGEM is not set
528# CONFIG_CASSINI is not set 610# CONFIG_CASSINI is not set
529# CONFIG_NET_VENDOR_3COM is not set 611# CONFIG_NET_VENDOR_3COM is not set
612# CONFIG_ETHOC is not set
613# CONFIG_DNET is not set
530# CONFIG_NET_TULIP is not set 614# CONFIG_NET_TULIP is not set
531# CONFIG_HP100 is not set 615# CONFIG_HP100 is not set
532CONFIG_IBM_NEW_EMAC=y 616CONFIG_IBM_NEW_EMAC=y
@@ -545,7 +629,10 @@ CONFIG_IBM_NEW_EMAC_ZMII=y
545# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 629# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
546# CONFIG_NET_PCI is not set 630# CONFIG_NET_PCI is not set
547# CONFIG_B44 is not set 631# CONFIG_B44 is not set
632# CONFIG_KS8842 is not set
633# CONFIG_KS8851_MLL is not set
548# CONFIG_ATL2 is not set 634# CONFIG_ATL2 is not set
635# CONFIG_XILINX_EMACLITE is not set
549CONFIG_NETDEV_1000=y 636CONFIG_NETDEV_1000=y
550# CONFIG_ACENIC is not set 637# CONFIG_ACENIC is not set
551# CONFIG_DL2K is not set 638# CONFIG_DL2K is not set
@@ -553,6 +640,7 @@ CONFIG_NETDEV_1000=y
553# CONFIG_E1000E is not set 640# CONFIG_E1000E is not set
554# CONFIG_IP1000 is not set 641# CONFIG_IP1000 is not set
555# CONFIG_IGB is not set 642# CONFIG_IGB is not set
643# CONFIG_IGBVF is not set
556# CONFIG_NS83820 is not set 644# CONFIG_NS83820 is not set
557# CONFIG_HAMACHI is not set 645# CONFIG_HAMACHI is not set
558# CONFIG_YELLOWFIN is not set 646# CONFIG_YELLOWFIN is not set
@@ -563,9 +651,13 @@ CONFIG_NETDEV_1000=y
563# CONFIG_VIA_VELOCITY is not set 651# CONFIG_VIA_VELOCITY is not set
564# CONFIG_TIGON3 is not set 652# CONFIG_TIGON3 is not set
565# CONFIG_BNX2 is not set 653# CONFIG_BNX2 is not set
654# CONFIG_CNIC is not set
655# CONFIG_MV643XX_ETH is not set
656# CONFIG_XILINX_LL_TEMAC is not set
566# CONFIG_QLA3XXX is not set 657# CONFIG_QLA3XXX is not set
567# CONFIG_ATL1 is not set 658# CONFIG_ATL1 is not set
568# CONFIG_ATL1E is not set 659# CONFIG_ATL1E is not set
660# CONFIG_ATL1C is not set
569# CONFIG_JME is not set 661# CONFIG_JME is not set
570CONFIG_NETDEV_10000=y 662CONFIG_NETDEV_10000=y
571# CONFIG_CHELSIO_T1 is not set 663# CONFIG_CHELSIO_T1 is not set
@@ -575,6 +667,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
575# CONFIG_IXGBE is not set 667# CONFIG_IXGBE is not set
576# CONFIG_IXGB is not set 668# CONFIG_IXGB is not set
577# CONFIG_S2IO is not set 669# CONFIG_S2IO is not set
670# CONFIG_VXGE is not set
578# CONFIG_MYRI10GE is not set 671# CONFIG_MYRI10GE is not set
579# CONFIG_NETXEN_NIC is not set 672# CONFIG_NETXEN_NIC is not set
580# CONFIG_NIU is not set 673# CONFIG_NIU is not set
@@ -584,14 +677,13 @@ CONFIG_CHELSIO_T3_DEPENDS=y
584# CONFIG_BNX2X is not set 677# CONFIG_BNX2X is not set
585# CONFIG_QLGE is not set 678# CONFIG_QLGE is not set
586# CONFIG_SFC is not set 679# CONFIG_SFC is not set
680# CONFIG_BE2NET is not set
587# CONFIG_TR is not set 681# CONFIG_TR is not set
588 682CONFIG_WLAN=y
589# 683# CONFIG_AIRO is not set
590# Wireless LAN 684# CONFIG_ATMEL is not set
591# 685# CONFIG_PRISM54 is not set
592# CONFIG_WLAN_PRE80211 is not set 686# CONFIG_HOSTAP is not set
593# CONFIG_WLAN_80211 is not set
594# CONFIG_IWLWIFI_LEDS is not set
595 687
596# 688#
597# Enable WiMAX (Networking options) to see the WiMAX drivers 689# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -604,6 +696,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
604# CONFIG_NETCONSOLE is not set 696# CONFIG_NETCONSOLE is not set
605# CONFIG_NETPOLL is not set 697# CONFIG_NETPOLL is not set
606# CONFIG_NET_POLL_CONTROLLER is not set 698# CONFIG_NET_POLL_CONTROLLER is not set
699# CONFIG_VMXNET3 is not set
607# CONFIG_ISDN is not set 700# CONFIG_ISDN is not set
608# CONFIG_PHONE is not set 701# CONFIG_PHONE is not set
609 702
@@ -649,6 +742,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
649# CONFIG_SERIAL_JSM is not set 742# CONFIG_SERIAL_JSM is not set
650CONFIG_SERIAL_OF_PLATFORM=y 743CONFIG_SERIAL_OF_PLATFORM=y
651# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 744# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
745# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
652CONFIG_UNIX98_PTYS=y 746CONFIG_UNIX98_PTYS=y
653# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 747# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
654CONFIG_LEGACY_PTYS=y 748CONFIG_LEGACY_PTYS=y
@@ -665,6 +759,11 @@ CONFIG_LEGACY_PTY_COUNT=256
665CONFIG_DEVPORT=y 759CONFIG_DEVPORT=y
666# CONFIG_I2C is not set 760# CONFIG_I2C is not set
667# CONFIG_SPI is not set 761# CONFIG_SPI is not set
762
763#
764# PPS support
765#
766# CONFIG_PPS is not set
668CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 767CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
669# CONFIG_GPIOLIB is not set 768# CONFIG_GPIOLIB is not set
670# CONFIG_W1 is not set 769# CONFIG_W1 is not set
@@ -687,27 +786,13 @@ CONFIG_SSB_POSSIBLE=y
687# CONFIG_HTC_PASIC3 is not set 786# CONFIG_HTC_PASIC3 is not set
688# CONFIG_MFD_TMIO is not set 787# CONFIG_MFD_TMIO is not set
689# CONFIG_REGULATOR is not set 788# CONFIG_REGULATOR is not set
690 789# CONFIG_MEDIA_SUPPORT is not set
691#
692# Multimedia devices
693#
694
695#
696# Multimedia core support
697#
698# CONFIG_VIDEO_DEV is not set
699# CONFIG_DVB_CORE is not set
700# CONFIG_VIDEO_MEDIA is not set
701
702#
703# Multimedia drivers
704#
705# CONFIG_DAB is not set
706 790
707# 791#
708# Graphics support 792# Graphics support
709# 793#
710# CONFIG_AGP is not set 794# CONFIG_AGP is not set
795CONFIG_VGA_ARB=y
711# CONFIG_DRM is not set 796# CONFIG_DRM is not set
712# CONFIG_VGASTATE is not set 797# CONFIG_VGASTATE is not set
713# CONFIG_VIDEO_OUTPUT_CONTROL is not set 798# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -732,7 +817,7 @@ CONFIG_USB_ARCH_HAS_EHCI=y
732# 817#
733 818
734# 819#
735# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 820# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
736# 821#
737# CONFIG_USB_GADGET is not set 822# CONFIG_USB_GADGET is not set
738 823
@@ -748,7 +833,12 @@ CONFIG_USB_ARCH_HAS_EHCI=y
748# CONFIG_EDAC is not set 833# CONFIG_EDAC is not set
749# CONFIG_RTC_CLASS is not set 834# CONFIG_RTC_CLASS is not set
750# CONFIG_DMADEVICES is not set 835# CONFIG_DMADEVICES is not set
836# CONFIG_AUXDISPLAY is not set
751# CONFIG_UIO is not set 837# CONFIG_UIO is not set
838
839#
840# TI VLYNQ
841#
752# CONFIG_STAGING is not set 842# CONFIG_STAGING is not set
753 843
754# 844#
@@ -759,14 +849,17 @@ CONFIG_EXT2_FS=y
759# CONFIG_EXT2_FS_XIP is not set 849# CONFIG_EXT2_FS_XIP is not set
760# CONFIG_EXT3_FS is not set 850# CONFIG_EXT3_FS is not set
761# CONFIG_EXT4_FS is not set 851# CONFIG_EXT4_FS is not set
852CONFIG_EXT4_USE_FOR_EXT23=y
762# CONFIG_REISERFS_FS is not set 853# CONFIG_REISERFS_FS is not set
763# CONFIG_JFS_FS is not set 854# CONFIG_JFS_FS is not set
764# CONFIG_FS_POSIX_ACL is not set 855# CONFIG_FS_POSIX_ACL is not set
765CONFIG_FILE_LOCKING=y
766# CONFIG_XFS_FS is not set 856# CONFIG_XFS_FS is not set
767# CONFIG_GFS2_FS is not set 857# CONFIG_GFS2_FS is not set
768# CONFIG_OCFS2_FS is not set 858# CONFIG_OCFS2_FS is not set
769# CONFIG_BTRFS_FS is not set 859# CONFIG_BTRFS_FS is not set
860# CONFIG_NILFS2_FS is not set
861CONFIG_FILE_LOCKING=y
862CONFIG_FSNOTIFY=y
770CONFIG_DNOTIFY=y 863CONFIG_DNOTIFY=y
771CONFIG_INOTIFY=y 864CONFIG_INOTIFY=y
772CONFIG_INOTIFY_USER=y 865CONFIG_INOTIFY_USER=y
@@ -776,6 +869,11 @@ CONFIG_INOTIFY_USER=y
776# CONFIG_FUSE_FS is not set 869# CONFIG_FUSE_FS is not set
777 870
778# 871#
872# Caches
873#
874# CONFIG_FSCACHE is not set
875
876#
779# CD-ROM/DVD Filesystems 877# CD-ROM/DVD Filesystems
780# 878#
781# CONFIG_ISO9660_FS is not set 879# CONFIG_ISO9660_FS is not set
@@ -840,7 +938,6 @@ CONFIG_LOCKD=y
840CONFIG_LOCKD_V4=y 938CONFIG_LOCKD_V4=y
841CONFIG_NFS_COMMON=y 939CONFIG_NFS_COMMON=y
842CONFIG_SUNRPC=y 940CONFIG_SUNRPC=y
843# CONFIG_SUNRPC_REGISTER_V4 is not set
844# CONFIG_RPCSEC_GSS_KRB5 is not set 941# CONFIG_RPCSEC_GSS_KRB5 is not set
845# CONFIG_RPCSEC_GSS_SPKM3 is not set 942# CONFIG_RPCSEC_GSS_SPKM3 is not set
846# CONFIG_SMB_FS is not set 943# CONFIG_SMB_FS is not set
@@ -856,6 +953,7 @@ CONFIG_SUNRPC=y
856CONFIG_MSDOS_PARTITION=y 953CONFIG_MSDOS_PARTITION=y
857# CONFIG_NLS is not set 954# CONFIG_NLS is not set
858# CONFIG_DLM is not set 955# CONFIG_DLM is not set
956# CONFIG_BINARY_PRINTF is not set
859 957
860# 958#
861# Library routines 959# Library routines
@@ -871,11 +969,13 @@ CONFIG_CRC32=y
871# CONFIG_LIBCRC32C is not set 969# CONFIG_LIBCRC32C is not set
872CONFIG_ZLIB_INFLATE=y 970CONFIG_ZLIB_INFLATE=y
873CONFIG_ZLIB_DEFLATE=y 971CONFIG_ZLIB_DEFLATE=y
874CONFIG_PLIST=y 972CONFIG_DECOMPRESS_GZIP=y
875CONFIG_HAS_IOMEM=y 973CONFIG_HAS_IOMEM=y
876CONFIG_HAS_IOPORT=y 974CONFIG_HAS_IOPORT=y
877CONFIG_HAS_DMA=y 975CONFIG_HAS_DMA=y
878CONFIG_HAVE_LMB=y 976CONFIG_HAVE_LMB=y
977CONFIG_NLATTR=y
978CONFIG_GENERIC_ATOMIC64=y
879 979
880# 980#
881# Kernel hacking 981# Kernel hacking
@@ -885,6 +985,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
885CONFIG_ENABLE_MUST_CHECK=y 985CONFIG_ENABLE_MUST_CHECK=y
886CONFIG_FRAME_WARN=1024 986CONFIG_FRAME_WARN=1024
887CONFIG_MAGIC_SYSRQ=y 987CONFIG_MAGIC_SYSRQ=y
988# CONFIG_STRIP_ASM_SYMS is not set
888# CONFIG_UNUSED_SYMBOLS is not set 989# CONFIG_UNUSED_SYMBOLS is not set
889CONFIG_DEBUG_FS=y 990CONFIG_DEBUG_FS=y
890# CONFIG_HEADERS_CHECK is not set 991# CONFIG_HEADERS_CHECK is not set
@@ -893,16 +994,23 @@ CONFIG_DEBUG_KERNEL=y
893CONFIG_DETECT_SOFTLOCKUP=y 994CONFIG_DETECT_SOFTLOCKUP=y
894# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 995# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
895CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 996CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
997CONFIG_DETECT_HUNG_TASK=y
998# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
999CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
896CONFIG_SCHED_DEBUG=y 1000CONFIG_SCHED_DEBUG=y
897# CONFIG_SCHEDSTATS is not set 1001# CONFIG_SCHEDSTATS is not set
898# CONFIG_TIMER_STATS is not set 1002# CONFIG_TIMER_STATS is not set
899# CONFIG_DEBUG_OBJECTS is not set 1003# CONFIG_DEBUG_OBJECTS is not set
900# CONFIG_SLUB_DEBUG_ON is not set 1004# CONFIG_SLUB_DEBUG_ON is not set
901# CONFIG_SLUB_STATS is not set 1005# CONFIG_SLUB_STATS is not set
1006# CONFIG_DEBUG_KMEMLEAK is not set
902# CONFIG_DEBUG_RT_MUTEXES is not set 1007# CONFIG_DEBUG_RT_MUTEXES is not set
903# CONFIG_RT_MUTEX_TESTER is not set 1008# CONFIG_RT_MUTEX_TESTER is not set
904# CONFIG_DEBUG_SPINLOCK is not set 1009# CONFIG_DEBUG_SPINLOCK is not set
905# CONFIG_DEBUG_MUTEXES is not set 1010# CONFIG_DEBUG_MUTEXES is not set
1011# CONFIG_DEBUG_LOCK_ALLOC is not set
1012# CONFIG_PROVE_LOCKING is not set
1013# CONFIG_LOCK_STAT is not set
906# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1014# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
907# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1015# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
908# CONFIG_DEBUG_KOBJECT is not set 1016# CONFIG_DEBUG_KOBJECT is not set
@@ -914,35 +1022,45 @@ CONFIG_DEBUG_BUGVERBOSE=y
914# CONFIG_DEBUG_LIST is not set 1022# CONFIG_DEBUG_LIST is not set
915# CONFIG_DEBUG_SG is not set 1023# CONFIG_DEBUG_SG is not set
916# CONFIG_DEBUG_NOTIFIERS is not set 1024# CONFIG_DEBUG_NOTIFIERS is not set
917# CONFIG_BOOT_PRINTK_DELAY is not set 1025# CONFIG_DEBUG_CREDENTIALS is not set
918# CONFIG_RCU_TORTURE_TEST is not set 1026# CONFIG_RCU_TORTURE_TEST is not set
919# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1027# CONFIG_RCU_CPU_STALL_DETECTOR is not set
920# CONFIG_BACKTRACE_SELF_TEST is not set 1028# CONFIG_BACKTRACE_SELF_TEST is not set
921# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1029# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1030# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
922# CONFIG_FAULT_INJECTION is not set 1031# CONFIG_FAULT_INJECTION is not set
923# CONFIG_LATENCYTOP is not set 1032# CONFIG_LATENCYTOP is not set
924CONFIG_SYSCTL_SYSCALL_CHECK=y 1033CONFIG_SYSCTL_SYSCALL_CHECK=y
1034# CONFIG_DEBUG_PAGEALLOC is not set
925CONFIG_HAVE_FUNCTION_TRACER=y 1035CONFIG_HAVE_FUNCTION_TRACER=y
1036CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
926CONFIG_HAVE_DYNAMIC_FTRACE=y 1037CONFIG_HAVE_DYNAMIC_FTRACE=y
927CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1038CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
928 1039CONFIG_TRACING_SUPPORT=y
929# 1040CONFIG_FTRACE=y
930# Tracers
931#
932# CONFIG_FUNCTION_TRACER is not set 1041# CONFIG_FUNCTION_TRACER is not set
1042# CONFIG_IRQSOFF_TRACER is not set
933# CONFIG_SCHED_TRACER is not set 1043# CONFIG_SCHED_TRACER is not set
934# CONFIG_CONTEXT_SWITCH_TRACER is not set 1044# CONFIG_ENABLE_DEFAULT_TRACERS is not set
935# CONFIG_BOOT_TRACER is not set 1045# CONFIG_BOOT_TRACER is not set
936# CONFIG_TRACE_BRANCH_PROFILING is not set 1046CONFIG_BRANCH_PROFILE_NONE=y
1047# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1048# CONFIG_PROFILE_ALL_BRANCHES is not set
937# CONFIG_STACK_TRACER is not set 1049# CONFIG_STACK_TRACER is not set
938# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1050# CONFIG_KMEMTRACE is not set
1051# CONFIG_WORKQUEUE_TRACER is not set
1052# CONFIG_BLK_DEV_IO_TRACE is not set
1053# CONFIG_DYNAMIC_DEBUG is not set
1054# CONFIG_DMA_API_DEBUG is not set
939# CONFIG_SAMPLES is not set 1055# CONFIG_SAMPLES is not set
940CONFIG_HAVE_ARCH_KGDB=y 1056CONFIG_HAVE_ARCH_KGDB=y
941# CONFIG_KGDB is not set 1057# CONFIG_KGDB is not set
1058# CONFIG_PPC_DISABLE_WERROR is not set
1059CONFIG_PPC_WERROR=y
942CONFIG_PRINT_STACK_DEPTH=64 1060CONFIG_PRINT_STACK_DEPTH=64
943# CONFIG_DEBUG_STACKOVERFLOW is not set 1061# CONFIG_DEBUG_STACKOVERFLOW is not set
944# CONFIG_DEBUG_STACK_USAGE is not set 1062# CONFIG_DEBUG_STACK_USAGE is not set
945# CONFIG_DEBUG_PAGEALLOC is not set 1063# CONFIG_PPC_EMULATED_STATS is not set
946# CONFIG_CODE_PATCHING_SELFTEST is not set 1064# CONFIG_CODE_PATCHING_SELFTEST is not set
947# CONFIG_FTR_FIXUP_SELFTEST is not set 1065# CONFIG_FTR_FIXUP_SELFTEST is not set
948# CONFIG_MSI_BITMAP_SELFTEST is not set 1066# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -958,13 +1076,16 @@ CONFIG_PRINT_STACK_DEPTH=64
958# CONFIG_KEYS is not set 1076# CONFIG_KEYS is not set
959# CONFIG_SECURITY is not set 1077# CONFIG_SECURITY is not set
960# CONFIG_SECURITYFS is not set 1078# CONFIG_SECURITYFS is not set
961# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1079# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1080# CONFIG_DEFAULT_SECURITY_SMACK is not set
1081# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1082CONFIG_DEFAULT_SECURITY_DAC=y
1083CONFIG_DEFAULT_SECURITY=""
962CONFIG_CRYPTO=y 1084CONFIG_CRYPTO=y
963 1085
964# 1086#
965# Crypto core or helper 1087# Crypto core or helper
966# 1088#
967# CONFIG_CRYPTO_FIPS is not set
968CONFIG_CRYPTO_ALGAPI=y 1089CONFIG_CRYPTO_ALGAPI=y
969CONFIG_CRYPTO_ALGAPI2=y 1090CONFIG_CRYPTO_ALGAPI2=y
970CONFIG_CRYPTO_AEAD2=y 1091CONFIG_CRYPTO_AEAD2=y
@@ -973,10 +1094,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
973CONFIG_CRYPTO_HASH=y 1094CONFIG_CRYPTO_HASH=y
974CONFIG_CRYPTO_HASH2=y 1095CONFIG_CRYPTO_HASH2=y
975CONFIG_CRYPTO_RNG2=y 1096CONFIG_CRYPTO_RNG2=y
1097CONFIG_CRYPTO_PCOMP=y
976CONFIG_CRYPTO_MANAGER=y 1098CONFIG_CRYPTO_MANAGER=y
977CONFIG_CRYPTO_MANAGER2=y 1099CONFIG_CRYPTO_MANAGER2=y
978# CONFIG_CRYPTO_GF128MUL is not set 1100# CONFIG_CRYPTO_GF128MUL is not set
979# CONFIG_CRYPTO_NULL is not set 1101# CONFIG_CRYPTO_NULL is not set
1102CONFIG_CRYPTO_WORKQUEUE=y
980# CONFIG_CRYPTO_CRYPTD is not set 1103# CONFIG_CRYPTO_CRYPTD is not set
981# CONFIG_CRYPTO_AUTHENC is not set 1104# CONFIG_CRYPTO_AUTHENC is not set
982# CONFIG_CRYPTO_TEST is not set 1105# CONFIG_CRYPTO_TEST is not set
@@ -1004,11 +1127,13 @@ CONFIG_CRYPTO_PCBC=y
1004# 1127#
1005# CONFIG_CRYPTO_HMAC is not set 1128# CONFIG_CRYPTO_HMAC is not set
1006# CONFIG_CRYPTO_XCBC is not set 1129# CONFIG_CRYPTO_XCBC is not set
1130# CONFIG_CRYPTO_VMAC is not set
1007 1131
1008# 1132#
1009# Digest 1133# Digest
1010# 1134#
1011# CONFIG_CRYPTO_CRC32C is not set 1135# CONFIG_CRYPTO_CRC32C is not set
1136# CONFIG_CRYPTO_GHASH is not set
1012# CONFIG_CRYPTO_MD4 is not set 1137# CONFIG_CRYPTO_MD4 is not set
1013CONFIG_CRYPTO_MD5=y 1138CONFIG_CRYPTO_MD5=y
1014# CONFIG_CRYPTO_MICHAEL_MIC is not set 1139# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1045,6 +1170,7 @@ CONFIG_CRYPTO_DES=y
1045# Compression 1170# Compression
1046# 1171#
1047# CONFIG_CRYPTO_DEFLATE is not set 1172# CONFIG_CRYPTO_DEFLATE is not set
1173# CONFIG_CRYPTO_ZLIB is not set
1048# CONFIG_CRYPTO_LZO is not set 1174# CONFIG_CRYPTO_LZO is not set
1049 1175
1050# 1176#
diff --git a/arch/powerpc/configs/44x/eiger_defconfig b/arch/powerpc/configs/44x/eiger_defconfig
index 007f3bd939e7..e3149bade0b2 100644
--- a/arch/powerpc/configs/44x/eiger_defconfig
+++ b/arch/powerpc/configs/44x/eiger_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.31-rc6 3# Linux kernel version: 2.6.33-rc1
4# Wed Aug 19 13:06:50 2009 4# Mon Jan 4 14:33:04 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -34,7 +34,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
34CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
37CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
38CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
39CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
40CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -57,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
57CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
58CONFIG_DTC=y 60CONFIG_DTC=y
59# CONFIG_DEFAULT_UIMAGE is not set 61# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
60CONFIG_PPC_DCR_NATIVE=y 63CONFIG_PPC_DCR_NATIVE=y
61# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
62CONFIG_PPC_DCR=y 65CONFIG_PPC_DCR=y
@@ -84,11 +87,13 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
84# 87#
85# RCU Subsystem 88# RCU Subsystem
86# 89#
87CONFIG_CLASSIC_RCU=y 90CONFIG_TREE_RCU=y
88# CONFIG_TREE_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
89# CONFIG_PREEMPT_RCU is not set 92# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set
90# CONFIG_TREE_RCU_TRACE is not set 96# CONFIG_TREE_RCU_TRACE is not set
91# CONFIG_PREEMPT_RCU_TRACE is not set
92# CONFIG_IKCONFIG is not set 97# CONFIG_IKCONFIG is not set
93CONFIG_LOG_BUF_SHIFT=14 98CONFIG_LOG_BUF_SHIFT=14
94# CONFIG_GROUP_SCHED is not set 99# CONFIG_GROUP_SCHED is not set
@@ -122,22 +127,21 @@ CONFIG_TIMERFD=y
122CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
123CONFIG_SHMEM=y 128CONFIG_SHMEM=y
124CONFIG_AIO=y 129CONFIG_AIO=y
125CONFIG_HAVE_PERF_COUNTERS=y 130CONFIG_HAVE_PERF_EVENTS=y
126 131
127# 132#
128# Performance Counters 133# Kernel Performance Events And Counters
129# 134#
135# CONFIG_PERF_EVENTS is not set
130# CONFIG_PERF_COUNTERS is not set 136# CONFIG_PERF_COUNTERS is not set
131CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
132CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
133CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
134# CONFIG_STRIP_ASM_SYMS is not set
135CONFIG_COMPAT_BRK=y 140CONFIG_COMPAT_BRK=y
136# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
137CONFIG_SLUB=y 142CONFIG_SLUB=y
138# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
139# CONFIG_PROFILING is not set 144# CONFIG_PROFILING is not set
140# CONFIG_MARKERS is not set
141CONFIG_HAVE_OPROFILE=y 145CONFIG_HAVE_OPROFILE=y
142# CONFIG_KPROBES is not set 146# CONFIG_KPROBES is not set
143CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 147CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
@@ -145,6 +149,8 @@ CONFIG_HAVE_IOREMAP_PROT=y
145CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
146CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
147CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
148 154
149# 155#
150# GCOV-based kernel profiling 156# GCOV-based kernel profiling
@@ -170,14 +176,41 @@ CONFIG_LBDAF=y
170# IO Schedulers 176# IO Schedulers
171# 177#
172CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
173CONFIG_IOSCHED_AS=y
174CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
175CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
176CONFIG_DEFAULT_AS=y
177# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
178# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
179# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
180CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
181# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
182CONFIG_PPC4xx_PCI_EXPRESS=y 215CONFIG_PPC4xx_PCI_EXPRESS=y
183 216
@@ -243,10 +276,11 @@ CONFIG_BINFMT_ELF=y
243# CONFIG_MATH_EMULATION is not set 276# CONFIG_MATH_EMULATION is not set
244# CONFIG_IOMMU_HELPER is not set 277# CONFIG_IOMMU_HELPER is not set
245# CONFIG_SWIOTLB is not set 278# CONFIG_SWIOTLB is not set
246CONFIG_PPC_NEED_DMA_SYNC_OPS=y
247CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 279CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
248CONFIG_ARCH_HAS_WALK_MEMORY=y 280CONFIG_ARCH_HAS_WALK_MEMORY=y
249CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
282CONFIG_SPARSE_IRQ=y
283CONFIG_MAX_ACTIVE_REGIONS=32
250CONFIG_ARCH_FLATMEM_ENABLE=y 284CONFIG_ARCH_FLATMEM_ENABLE=y
251CONFIG_ARCH_POPULATES_NODE_MAP=y 285CONFIG_ARCH_POPULATES_NODE_MAP=y
252CONFIG_SELECT_MEMORY_MODEL=y 286CONFIG_SELECT_MEMORY_MODEL=y
@@ -262,8 +296,7 @@ CONFIG_PHYS_ADDR_T_64BIT=y
262CONFIG_ZONE_DMA_FLAG=1 296CONFIG_ZONE_DMA_FLAG=1
263CONFIG_BOUNCE=y 297CONFIG_BOUNCE=y
264CONFIG_VIRT_TO_BUS=y 298CONFIG_VIRT_TO_BUS=y
265CONFIG_HAVE_MLOCK=y 299# CONFIG_KSM is not set
266CONFIG_HAVE_MLOCKED_PAGE_BIT=y
267CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 300CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
268CONFIG_STDBINUTILS=y 301CONFIG_STDBINUTILS=y
269CONFIG_PPC_4K_PAGES=y 302CONFIG_PPC_4K_PAGES=y
@@ -358,6 +391,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
358# CONFIG_NETFILTER is not set 391# CONFIG_NETFILTER is not set
359# CONFIG_IP_DCCP is not set 392# CONFIG_IP_DCCP is not set
360# CONFIG_IP_SCTP is not set 393# CONFIG_IP_SCTP is not set
394# CONFIG_RDS is not set
361# CONFIG_TIPC is not set 395# CONFIG_TIPC is not set
362# CONFIG_ATM is not set 396# CONFIG_ATM is not set
363# CONFIG_BRIDGE is not set 397# CONFIG_BRIDGE is not set
@@ -387,14 +421,11 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
387# CONFIG_AF_RXRPC is not set 421# CONFIG_AF_RXRPC is not set
388CONFIG_WIRELESS=y 422CONFIG_WIRELESS=y
389# CONFIG_CFG80211 is not set 423# CONFIG_CFG80211 is not set
390CONFIG_WIRELESS_OLD_REGULATORY=y
391# CONFIG_WIRELESS_EXT is not set
392# CONFIG_LIB80211 is not set 424# CONFIG_LIB80211 is not set
393 425
394# 426#
395# CFG80211 needs to be enabled for MAC80211 427# CFG80211 needs to be enabled for MAC80211
396# 428#
397CONFIG_MAC80211_DEFAULT_PS_VALUE=0
398# CONFIG_WIMAX is not set 429# CONFIG_WIMAX is not set
399# CONFIG_RFKILL is not set 430# CONFIG_RFKILL is not set
400# CONFIG_NET_9P is not set 431# CONFIG_NET_9P is not set
@@ -407,6 +438,7 @@ CONFIG_MAC80211_DEFAULT_PS_VALUE=0
407# Generic Driver Options 438# Generic Driver Options
408# 439#
409CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 440CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
441# CONFIG_DEVTMPFS is not set
410CONFIG_STANDALONE=y 442CONFIG_STANDALONE=y
411CONFIG_PREVENT_FIRMWARE_BUILD=y 443CONFIG_PREVENT_FIRMWARE_BUILD=y
412CONFIG_FW_LOADER=y 444CONFIG_FW_LOADER=y
@@ -419,9 +451,9 @@ CONFIG_CONNECTOR=y
419CONFIG_PROC_EVENTS=y 451CONFIG_PROC_EVENTS=y
420CONFIG_MTD=y 452CONFIG_MTD=y
421# CONFIG_MTD_DEBUG is not set 453# CONFIG_MTD_DEBUG is not set
454# CONFIG_MTD_TESTS is not set
422CONFIG_MTD_CONCAT=y 455CONFIG_MTD_CONCAT=y
423CONFIG_MTD_PARTITIONS=y 456CONFIG_MTD_PARTITIONS=y
424# CONFIG_MTD_TESTS is not set
425# CONFIG_MTD_REDBOOT_PARTS is not set 457# CONFIG_MTD_REDBOOT_PARTS is not set
426CONFIG_MTD_CMDLINE_PARTS=y 458CONFIG_MTD_CMDLINE_PARTS=y
427CONFIG_MTD_OF_PARTS=y 459CONFIG_MTD_OF_PARTS=y
@@ -522,6 +554,7 @@ CONFIG_BLK_DEV=y
522# CONFIG_BLK_DEV_UMEM is not set 554# CONFIG_BLK_DEV_UMEM is not set
523# CONFIG_BLK_DEV_COW_COMMON is not set 555# CONFIG_BLK_DEV_COW_COMMON is not set
524# CONFIG_BLK_DEV_LOOP is not set 556# CONFIG_BLK_DEV_LOOP is not set
557# CONFIG_BLK_DEV_DRBD is not set
525# CONFIG_BLK_DEV_NBD is not set 558# CONFIG_BLK_DEV_NBD is not set
526# CONFIG_BLK_DEV_SX8 is not set 559# CONFIG_BLK_DEV_SX8 is not set
527CONFIG_BLK_DEV_RAM=y 560CONFIG_BLK_DEV_RAM=y
@@ -573,8 +606,11 @@ CONFIG_SCSI_SAS_ATTRS=y
573CONFIG_SCSI_LOWLEVEL=y 606CONFIG_SCSI_LOWLEVEL=y
574# CONFIG_ISCSI_TCP is not set 607# CONFIG_ISCSI_TCP is not set
575# CONFIG_SCSI_BNX2_ISCSI is not set 608# CONFIG_SCSI_BNX2_ISCSI is not set
609# CONFIG_BE2ISCSI is not set
576# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 610# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
611# CONFIG_SCSI_HPSA is not set
577# CONFIG_SCSI_3W_9XXX is not set 612# CONFIG_SCSI_3W_9XXX is not set
613# CONFIG_SCSI_3W_SAS is not set
578# CONFIG_SCSI_ACARD is not set 614# CONFIG_SCSI_ACARD is not set
579# CONFIG_SCSI_AACRAID is not set 615# CONFIG_SCSI_AACRAID is not set
580# CONFIG_SCSI_AIC7XXX is not set 616# CONFIG_SCSI_AIC7XXX is not set
@@ -611,7 +647,10 @@ CONFIG_SCSI_LOWLEVEL=y
611# CONFIG_SCSI_DC390T is not set 647# CONFIG_SCSI_DC390T is not set
612# CONFIG_SCSI_NSP32 is not set 648# CONFIG_SCSI_NSP32 is not set
613# CONFIG_SCSI_DEBUG is not set 649# CONFIG_SCSI_DEBUG is not set
650# CONFIG_SCSI_PMCRAID is not set
651# CONFIG_SCSI_PM8001 is not set
614# CONFIG_SCSI_SRP is not set 652# CONFIG_SCSI_SRP is not set
653# CONFIG_SCSI_BFA_FC is not set
615# CONFIG_SCSI_DH is not set 654# CONFIG_SCSI_DH is not set
616# CONFIG_SCSI_OSD_INITIATOR is not set 655# CONFIG_SCSI_OSD_INITIATOR is not set
617# CONFIG_ATA is not set 656# CONFIG_ATA is not set
@@ -682,7 +721,9 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
682# CONFIG_NET_PCI is not set 721# CONFIG_NET_PCI is not set
683# CONFIG_B44 is not set 722# CONFIG_B44 is not set
684# CONFIG_KS8842 is not set 723# CONFIG_KS8842 is not set
724# CONFIG_KS8851_MLL is not set
685# CONFIG_ATL2 is not set 725# CONFIG_ATL2 is not set
726# CONFIG_XILINX_EMACLITE is not set
686CONFIG_NETDEV_1000=y 727CONFIG_NETDEV_1000=y
687# CONFIG_ACENIC is not set 728# CONFIG_ACENIC is not set
688# CONFIG_DL2K is not set 729# CONFIG_DL2K is not set
@@ -711,12 +752,11 @@ CONFIG_E1000E=y
711# CONFIG_JME is not set 752# CONFIG_JME is not set
712# CONFIG_NETDEV_10000 is not set 753# CONFIG_NETDEV_10000 is not set
713# CONFIG_TR is not set 754# CONFIG_TR is not set
714 755CONFIG_WLAN=y
715# 756# CONFIG_AIRO is not set
716# Wireless LAN 757# CONFIG_ATMEL is not set
717# 758# CONFIG_PRISM54 is not set
718# CONFIG_WLAN_PRE80211 is not set 759# CONFIG_HOSTAP is not set
719# CONFIG_WLAN_80211 is not set
720 760
721# 761#
722# Enable WiMAX (Networking options) to see the WiMAX drivers 762# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -730,6 +770,7 @@ CONFIG_E1000E=y
730# CONFIG_NETCONSOLE is not set 770# CONFIG_NETCONSOLE is not set
731# CONFIG_NETPOLL is not set 771# CONFIG_NETPOLL is not set
732# CONFIG_NET_POLL_CONTROLLER is not set 772# CONFIG_NET_POLL_CONTROLLER is not set
773# CONFIG_VMXNET3 is not set
733# CONFIG_ISDN is not set 774# CONFIG_ISDN is not set
734# CONFIG_PHONE is not set 775# CONFIG_PHONE is not set
735 776
@@ -775,6 +816,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
775# CONFIG_SERIAL_JSM is not set 816# CONFIG_SERIAL_JSM is not set
776CONFIG_SERIAL_OF_PLATFORM=y 817CONFIG_SERIAL_OF_PLATFORM=y
777# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 818# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
819# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
778CONFIG_UNIX98_PTYS=y 820CONFIG_UNIX98_PTYS=y
779# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 821# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
780CONFIG_LEGACY_PTYS=y 822CONFIG_LEGACY_PTYS=y
@@ -791,6 +833,7 @@ CONFIG_LEGACY_PTY_COUNT=256
791CONFIG_DEVPORT=y 833CONFIG_DEVPORT=y
792CONFIG_I2C=y 834CONFIG_I2C=y
793CONFIG_I2C_BOARDINFO=y 835CONFIG_I2C_BOARDINFO=y
836CONFIG_I2C_COMPAT=y
794CONFIG_I2C_CHARDEV=y 837CONFIG_I2C_CHARDEV=y
795CONFIG_I2C_HELPER_AUTO=y 838CONFIG_I2C_HELPER_AUTO=y
796 839
@@ -831,11 +874,6 @@ CONFIG_I2C_IBM_IIC=y
831# CONFIG_I2C_TAOS_EVM is not set 874# CONFIG_I2C_TAOS_EVM is not set
832 875
833# 876#
834# Graphics adapter I2C/DDC channel drivers
835#
836# CONFIG_I2C_VOODOO3 is not set
837
838#
839# Other I2C/SMBus bus drivers 877# Other I2C/SMBus bus drivers
840# 878#
841# CONFIG_I2C_PCA_PLATFORM is not set 879# CONFIG_I2C_PCA_PLATFORM is not set
@@ -844,10 +882,6 @@ CONFIG_I2C_IBM_IIC=y
844# 882#
845# Miscellaneous I2C Chip support 883# Miscellaneous I2C Chip support
846# 884#
847# CONFIG_DS1682 is not set
848# CONFIG_SENSORS_PCF8574 is not set
849# CONFIG_PCF8575 is not set
850# CONFIG_SENSORS_PCA9539 is not set
851# CONFIG_SENSORS_TSL2550 is not set 885# CONFIG_SENSORS_TSL2550 is not set
852CONFIG_I2C_DEBUG_CORE=y 886CONFIG_I2C_DEBUG_CORE=y
853CONFIG_I2C_DEBUG_ALGO=y 887CONFIG_I2C_DEBUG_ALGO=y
@@ -865,7 +899,6 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
865# CONFIG_POWER_SUPPLY is not set 899# CONFIG_POWER_SUPPLY is not set
866# CONFIG_HWMON is not set 900# CONFIG_HWMON is not set
867# CONFIG_THERMAL is not set 901# CONFIG_THERMAL is not set
868# CONFIG_THERMAL_HWMON is not set
869# CONFIG_WATCHDOG is not set 902# CONFIG_WATCHDOG is not set
870CONFIG_SSB_POSSIBLE=y 903CONFIG_SSB_POSSIBLE=y
871 904
@@ -883,10 +916,13 @@ CONFIG_SSB_POSSIBLE=y
883# CONFIG_TWL4030_CORE is not set 916# CONFIG_TWL4030_CORE is not set
884# CONFIG_MFD_TMIO is not set 917# CONFIG_MFD_TMIO is not set
885# CONFIG_PMIC_DA903X is not set 918# CONFIG_PMIC_DA903X is not set
919# CONFIG_PMIC_ADP5520 is not set
886# CONFIG_MFD_WM8400 is not set 920# CONFIG_MFD_WM8400 is not set
921# CONFIG_MFD_WM831X is not set
887# CONFIG_MFD_WM8350_I2C is not set 922# CONFIG_MFD_WM8350_I2C is not set
888# CONFIG_MFD_PCF50633 is not set 923# CONFIG_MFD_PCF50633 is not set
889# CONFIG_AB3100_CORE is not set 924# CONFIG_AB3100_CORE is not set
925# CONFIG_MFD_88PM8607 is not set
890# CONFIG_REGULATOR is not set 926# CONFIG_REGULATOR is not set
891# CONFIG_MEDIA_SUPPORT is not set 927# CONFIG_MEDIA_SUPPORT is not set
892 928
@@ -894,6 +930,7 @@ CONFIG_SSB_POSSIBLE=y
894# Graphics support 930# Graphics support
895# 931#
896# CONFIG_AGP is not set 932# CONFIG_AGP is not set
933CONFIG_VGA_ARB=y
897# CONFIG_DRM is not set 934# CONFIG_DRM is not set
898# CONFIG_VGASTATE is not set 935# CONFIG_VGASTATE is not set
899CONFIG_VIDEO_OUTPUT_CONTROL=m 936CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -935,6 +972,7 @@ CONFIG_EXT2_FS=y
935# CONFIG_EXT2_FS_XIP is not set 972# CONFIG_EXT2_FS_XIP is not set
936# CONFIG_EXT3_FS is not set 973# CONFIG_EXT3_FS is not set
937# CONFIG_EXT4_FS is not set 974# CONFIG_EXT4_FS is not set
975CONFIG_EXT4_USE_FOR_EXT23=y
938# CONFIG_REISERFS_FS is not set 976# CONFIG_REISERFS_FS is not set
939# CONFIG_JFS_FS is not set 977# CONFIG_JFS_FS is not set
940# CONFIG_FS_POSIX_ACL is not set 978# CONFIG_FS_POSIX_ACL is not set
@@ -942,6 +980,7 @@ CONFIG_EXT2_FS=y
942# CONFIG_GFS2_FS is not set 980# CONFIG_GFS2_FS is not set
943# CONFIG_OCFS2_FS is not set 981# CONFIG_OCFS2_FS is not set
944# CONFIG_BTRFS_FS is not set 982# CONFIG_BTRFS_FS is not set
983# CONFIG_NILFS2_FS is not set
945CONFIG_FILE_LOCKING=y 984CONFIG_FILE_LOCKING=y
946CONFIG_FSNOTIFY=y 985CONFIG_FSNOTIFY=y
947CONFIG_DNOTIFY=y 986CONFIG_DNOTIFY=y
@@ -1001,7 +1040,6 @@ CONFIG_CRAMFS=y
1001# CONFIG_ROMFS_FS is not set 1040# CONFIG_ROMFS_FS is not set
1002# CONFIG_SYSV_FS is not set 1041# CONFIG_SYSV_FS is not set
1003# CONFIG_UFS_FS is not set 1042# CONFIG_UFS_FS is not set
1004# CONFIG_NILFS2_FS is not set
1005CONFIG_NETWORK_FILESYSTEMS=y 1043CONFIG_NETWORK_FILESYSTEMS=y
1006CONFIG_NFS_FS=y 1044CONFIG_NFS_FS=y
1007CONFIG_NFS_V3=y 1045CONFIG_NFS_V3=y
@@ -1059,6 +1097,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1059CONFIG_ENABLE_MUST_CHECK=y 1097CONFIG_ENABLE_MUST_CHECK=y
1060CONFIG_FRAME_WARN=1024 1098CONFIG_FRAME_WARN=1024
1061CONFIG_MAGIC_SYSRQ=y 1099CONFIG_MAGIC_SYSRQ=y
1100# CONFIG_STRIP_ASM_SYMS is not set
1062# CONFIG_UNUSED_SYMBOLS is not set 1101# CONFIG_UNUSED_SYMBOLS is not set
1063CONFIG_DEBUG_FS=y 1102CONFIG_DEBUG_FS=y
1064# CONFIG_HEADERS_CHECK is not set 1103# CONFIG_HEADERS_CHECK is not set
@@ -1095,10 +1134,12 @@ CONFIG_SCHED_DEBUG=y
1095# CONFIG_DEBUG_LIST is not set 1134# CONFIG_DEBUG_LIST is not set
1096# CONFIG_DEBUG_SG is not set 1135# CONFIG_DEBUG_SG is not set
1097# CONFIG_DEBUG_NOTIFIERS is not set 1136# CONFIG_DEBUG_NOTIFIERS is not set
1137# CONFIG_DEBUG_CREDENTIALS is not set
1098# CONFIG_RCU_TORTURE_TEST is not set 1138# CONFIG_RCU_TORTURE_TEST is not set
1099# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1139# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1100# CONFIG_BACKTRACE_SELF_TEST is not set 1140# CONFIG_BACKTRACE_SELF_TEST is not set
1101# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1141# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1142# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1102# CONFIG_FAULT_INJECTION is not set 1143# CONFIG_FAULT_INJECTION is not set
1103# CONFIG_LATENCYTOP is not set 1144# CONFIG_LATENCYTOP is not set
1104CONFIG_SYSCTL_SYSCALL_CHECK=y 1145CONFIG_SYSCTL_SYSCALL_CHECK=y
@@ -1122,10 +1163,10 @@ CONFIG_BRANCH_PROFILE_NONE=y
1122# CONFIG_WORKQUEUE_TRACER is not set 1163# CONFIG_WORKQUEUE_TRACER is not set
1123# CONFIG_BLK_DEV_IO_TRACE is not set 1164# CONFIG_BLK_DEV_IO_TRACE is not set
1124# CONFIG_DYNAMIC_DEBUG is not set 1165# CONFIG_DYNAMIC_DEBUG is not set
1166# CONFIG_DMA_API_DEBUG is not set
1125# CONFIG_SAMPLES is not set 1167# CONFIG_SAMPLES is not set
1126CONFIG_HAVE_ARCH_KGDB=y 1168CONFIG_HAVE_ARCH_KGDB=y
1127# CONFIG_KGDB is not set 1169# CONFIG_KGDB is not set
1128# CONFIG_KMEMCHECK is not set
1129# CONFIG_PPC_DISABLE_WERROR is not set 1170# CONFIG_PPC_DISABLE_WERROR is not set
1130CONFIG_PPC_WERROR=y 1171CONFIG_PPC_WERROR=y
1131CONFIG_PRINT_STACK_DEPTH=64 1172CONFIG_PRINT_STACK_DEPTH=64
@@ -1147,13 +1188,16 @@ CONFIG_PRINT_STACK_DEPTH=64
1147# CONFIG_KEYS is not set 1188# CONFIG_KEYS is not set
1148# CONFIG_SECURITY is not set 1189# CONFIG_SECURITY is not set
1149# CONFIG_SECURITYFS is not set 1190# CONFIG_SECURITYFS is not set
1150# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1191# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1192# CONFIG_DEFAULT_SECURITY_SMACK is not set
1193# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1194CONFIG_DEFAULT_SECURITY_DAC=y
1195CONFIG_DEFAULT_SECURITY=""
1151CONFIG_CRYPTO=y 1196CONFIG_CRYPTO=y
1152 1197
1153# 1198#
1154# Crypto core or helper 1199# Crypto core or helper
1155# 1200#
1156# CONFIG_CRYPTO_FIPS is not set
1157CONFIG_CRYPTO_ALGAPI=y 1201CONFIG_CRYPTO_ALGAPI=y
1158CONFIG_CRYPTO_ALGAPI2=y 1202CONFIG_CRYPTO_ALGAPI2=y
1159CONFIG_CRYPTO_AEAD=y 1203CONFIG_CRYPTO_AEAD=y
@@ -1197,11 +1241,13 @@ CONFIG_CRYPTO_XTS=y
1197# 1241#
1198CONFIG_CRYPTO_HMAC=y 1242CONFIG_CRYPTO_HMAC=y
1199CONFIG_CRYPTO_XCBC=y 1243CONFIG_CRYPTO_XCBC=y
1244# CONFIG_CRYPTO_VMAC is not set
1200 1245
1201# 1246#
1202# Digest 1247# Digest
1203# 1248#
1204# CONFIG_CRYPTO_CRC32C is not set 1249# CONFIG_CRYPTO_CRC32C is not set
1250CONFIG_CRYPTO_GHASH=y
1205CONFIG_CRYPTO_MD4=y 1251CONFIG_CRYPTO_MD4=y
1206CONFIG_CRYPTO_MD5=y 1252CONFIG_CRYPTO_MD5=y
1207# CONFIG_CRYPTO_MICHAEL_MIC is not set 1253# CONFIG_CRYPTO_MICHAEL_MIC is not set
diff --git a/arch/powerpc/configs/44x/katmai_defconfig b/arch/powerpc/configs/44x/katmai_defconfig
index c23a4ef13e45..dec901f9cc84 100644
--- a/arch/powerpc/configs/44x/katmai_defconfig
+++ b/arch/powerpc/configs/44x/katmai_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:22:38 2009 4# Mon Jan 4 14:55:34 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -19,6 +19,7 @@ CONFIG_BOOKE=y
19CONFIG_PTE_64BIT=y 19CONFIG_PTE_64BIT=y
20CONFIG_PHYS_64BIT=y 20CONFIG_PHYS_64BIT=y
21CONFIG_PPC_MMU_NOHASH=y 21CONFIG_PPC_MMU_NOHASH=y
22CONFIG_PPC_MMU_NOHASH_32=y
22# CONFIG_PPC_MM_SLICES is not set 23# CONFIG_PPC_MM_SLICES is not set
23CONFIG_NOT_COHERENT_CACHE=y 24CONFIG_NOT_COHERENT_CACHE=y
24CONFIG_PPC32=y 25CONFIG_PPC32=y
@@ -30,15 +31,18 @@ CONFIG_GENERIC_TIME=y
30CONFIG_GENERIC_TIME_VSYSCALL=y 31CONFIG_GENERIC_TIME_VSYSCALL=y
31CONFIG_GENERIC_CLOCKEVENTS=y 32CONFIG_GENERIC_CLOCKEVENTS=y
32CONFIG_GENERIC_HARDIRQS=y 33CONFIG_GENERIC_HARDIRQS=y
34CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
33# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 35# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
36# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 37CONFIG_IRQ_PER_CPU=y
38CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 39CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 40CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y
37CONFIG_LOCKDEP_SUPPORT=y 42CONFIG_LOCKDEP_SUPPORT=y
38CONFIG_RWSEM_XCHGADD_ALGORITHM=y 43CONFIG_RWSEM_XCHGADD_ALGORITHM=y
39CONFIG_ARCH_HAS_ILOG2_U32=y 44CONFIG_ARCH_HAS_ILOG2_U32=y
40CONFIG_GENERIC_HWEIGHT=y 45CONFIG_GENERIC_HWEIGHT=y
41CONFIG_GENERIC_CALIBRATE_DELAY=y
42CONFIG_GENERIC_FIND_NEXT_BIT=y 46CONFIG_GENERIC_FIND_NEXT_BIT=y
43# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 47# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
44CONFIG_PPC=y 48CONFIG_PPC=y
@@ -52,11 +56,15 @@ CONFIG_PPC_UDBG_16550=y
52# CONFIG_GENERIC_TBSYNC is not set 56# CONFIG_GENERIC_TBSYNC is not set
53CONFIG_AUDIT_ARCH=y 57CONFIG_AUDIT_ARCH=y
54CONFIG_GENERIC_BUG=y 58CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y
55# CONFIG_DEFAULT_UIMAGE is not set 60# CONFIG_DEFAULT_UIMAGE is not set
61CONFIG_ARCH_HIBERNATION_POSSIBLE=y
56CONFIG_PPC_DCR_NATIVE=y 62CONFIG_PPC_DCR_NATIVE=y
57# CONFIG_PPC_DCR_MMIO is not set 63# CONFIG_PPC_DCR_MMIO is not set
58CONFIG_PPC_DCR=y 64CONFIG_PPC_DCR=y
65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
59CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 66CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
67CONFIG_CONSTRUCTORS=y
60 68
61# 69#
62# General setup 70# General setup
@@ -70,9 +78,21 @@ CONFIG_SWAP=y
70CONFIG_SYSVIPC=y 78CONFIG_SYSVIPC=y
71CONFIG_SYSVIPC_SYSCTL=y 79CONFIG_SYSVIPC_SYSCTL=y
72CONFIG_POSIX_MQUEUE=y 80CONFIG_POSIX_MQUEUE=y
81CONFIG_POSIX_MQUEUE_SYSCTL=y
73# CONFIG_BSD_PROCESS_ACCT is not set 82# CONFIG_BSD_PROCESS_ACCT is not set
74# CONFIG_TASKSTATS is not set 83# CONFIG_TASKSTATS is not set
75# CONFIG_AUDIT is not set 84# CONFIG_AUDIT is not set
85
86#
87# RCU Subsystem
88#
89CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set
91# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set
95# CONFIG_TREE_RCU_TRACE is not set
76# CONFIG_IKCONFIG is not set 96# CONFIG_IKCONFIG is not set
77CONFIG_LOG_BUF_SHIFT=14 97CONFIG_LOG_BUF_SHIFT=14
78# CONFIG_GROUP_SCHED is not set 98# CONFIG_GROUP_SCHED is not set
@@ -83,8 +103,12 @@ CONFIG_SYSFS_DEPRECATED_V2=y
83# CONFIG_NAMESPACES is not set 103# CONFIG_NAMESPACES is not set
84CONFIG_BLK_DEV_INITRD=y 104CONFIG_BLK_DEV_INITRD=y
85CONFIG_INITRAMFS_SOURCE="" 105CONFIG_INITRAMFS_SOURCE=""
106CONFIG_RD_GZIP=y
107# CONFIG_RD_BZIP2 is not set
108# CONFIG_RD_LZMA is not set
86# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 109# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
87CONFIG_SYSCTL=y 110CONFIG_SYSCTL=y
111CONFIG_ANON_INODES=y
88CONFIG_EMBEDDED=y 112CONFIG_EMBEDDED=y
89CONFIG_SYSCTL_SYSCALL=y 113CONFIG_SYSCTL_SYSCALL=y
90CONFIG_KALLSYMS=y 114CONFIG_KALLSYMS=y
@@ -94,19 +118,25 @@ CONFIG_HOTPLUG=y
94CONFIG_PRINTK=y 118CONFIG_PRINTK=y
95CONFIG_BUG=y 119CONFIG_BUG=y
96CONFIG_ELF_CORE=y 120CONFIG_ELF_CORE=y
97CONFIG_COMPAT_BRK=y
98CONFIG_BASE_FULL=y 121CONFIG_BASE_FULL=y
99CONFIG_FUTEX=y 122CONFIG_FUTEX=y
100CONFIG_ANON_INODES=y
101CONFIG_EPOLL=y 123CONFIG_EPOLL=y
102CONFIG_SIGNALFD=y 124CONFIG_SIGNALFD=y
103CONFIG_TIMERFD=y 125CONFIG_TIMERFD=y
104CONFIG_EVENTFD=y 126CONFIG_EVENTFD=y
105CONFIG_SHMEM=y 127CONFIG_SHMEM=y
106CONFIG_AIO=y 128CONFIG_AIO=y
129CONFIG_HAVE_PERF_EVENTS=y
130
131#
132# Kernel Performance Events And Counters
133#
134# CONFIG_PERF_EVENTS is not set
135# CONFIG_PERF_COUNTERS is not set
107CONFIG_VM_EVENT_COUNTERS=y 136CONFIG_VM_EVENT_COUNTERS=y
108CONFIG_PCI_QUIRKS=y 137CONFIG_PCI_QUIRKS=y
109CONFIG_SLUB_DEBUG=y 138CONFIG_SLUB_DEBUG=y
139CONFIG_COMPAT_BRK=y
110# CONFIG_SLAB is not set 140# CONFIG_SLAB is not set
111CONFIG_SLUB=y 141CONFIG_SLUB=y
112# CONFIG_SLOB is not set 142# CONFIG_SLOB is not set
@@ -118,6 +148,13 @@ CONFIG_HAVE_IOREMAP_PROT=y
118CONFIG_HAVE_KPROBES=y 148CONFIG_HAVE_KPROBES=y
119CONFIG_HAVE_KRETPROBES=y 149CONFIG_HAVE_KRETPROBES=y
120CONFIG_HAVE_ARCH_TRACEHOOK=y 150CONFIG_HAVE_ARCH_TRACEHOOK=y
151CONFIG_HAVE_DMA_ATTRS=y
152CONFIG_HAVE_DMA_API_DEBUG=y
153
154#
155# GCOV-based kernel profiling
156#
157# CONFIG_SLOW_WORK is not set
121# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 158# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
122CONFIG_SLABINFO=y 159CONFIG_SLABINFO=y
123CONFIG_RT_MUTEXES=y 160CONFIG_RT_MUTEXES=y
@@ -129,8 +166,7 @@ CONFIG_MODULE_UNLOAD=y
129# CONFIG_MODVERSIONS is not set 166# CONFIG_MODVERSIONS is not set
130# CONFIG_MODULE_SRCVERSION_ALL is not set 167# CONFIG_MODULE_SRCVERSION_ALL is not set
131CONFIG_BLOCK=y 168CONFIG_BLOCK=y
132CONFIG_LBD=y 169CONFIG_LBDAF=y
133# CONFIG_BLK_DEV_IO_TRACE is not set
134# CONFIG_BLK_DEV_BSG is not set 170# CONFIG_BLK_DEV_BSG is not set
135# CONFIG_BLK_DEV_INTEGRITY is not set 171# CONFIG_BLK_DEV_INTEGRITY is not set
136 172
@@ -138,19 +174,41 @@ CONFIG_LBD=y
138# IO Schedulers 174# IO Schedulers
139# 175#
140CONFIG_IOSCHED_NOOP=y 176CONFIG_IOSCHED_NOOP=y
141CONFIG_IOSCHED_AS=y
142CONFIG_IOSCHED_DEADLINE=y 177CONFIG_IOSCHED_DEADLINE=y
143CONFIG_IOSCHED_CFQ=y 178CONFIG_IOSCHED_CFQ=y
144CONFIG_DEFAULT_AS=y
145# CONFIG_DEFAULT_DEADLINE is not set 179# CONFIG_DEFAULT_DEADLINE is not set
146# CONFIG_DEFAULT_CFQ is not set 180CONFIG_DEFAULT_CFQ=y
147# CONFIG_DEFAULT_NOOP is not set 181# CONFIG_DEFAULT_NOOP is not set
148CONFIG_DEFAULT_IOSCHED="anticipatory" 182CONFIG_DEFAULT_IOSCHED="cfq"
149CONFIG_CLASSIC_RCU=y 183# CONFIG_INLINE_SPIN_TRYLOCK is not set
150# CONFIG_TREE_RCU is not set 184# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
151# CONFIG_PREEMPT_RCU is not set 185# CONFIG_INLINE_SPIN_LOCK is not set
152# CONFIG_TREE_RCU_TRACE is not set 186# CONFIG_INLINE_SPIN_LOCK_BH is not set
153# CONFIG_PREEMPT_RCU_TRACE is not set 187# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
189CONFIG_INLINE_SPIN_UNLOCK=y
190# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
191CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
192# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
193# CONFIG_INLINE_READ_TRYLOCK is not set
194# CONFIG_INLINE_READ_LOCK is not set
195# CONFIG_INLINE_READ_LOCK_BH is not set
196# CONFIG_INLINE_READ_LOCK_IRQ is not set
197# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
198CONFIG_INLINE_READ_UNLOCK=y
199# CONFIG_INLINE_READ_UNLOCK_BH is not set
200CONFIG_INLINE_READ_UNLOCK_IRQ=y
201# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
202# CONFIG_INLINE_WRITE_TRYLOCK is not set
203# CONFIG_INLINE_WRITE_LOCK is not set
204# CONFIG_INLINE_WRITE_LOCK_BH is not set
205# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
207CONFIG_INLINE_WRITE_UNLOCK=y
208# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
209CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
210# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
211# CONFIG_MUTEX_SPIN_ON_OWNER is not set
154# CONFIG_FREEZER is not set 212# CONFIG_FREEZER is not set
155CONFIG_PPC4xx_PCI_EXPRESS=y 213CONFIG_PPC4xx_PCI_EXPRESS=y
156 214
@@ -171,6 +229,8 @@ CONFIG_KATMAI=y
171# CONFIG_ARCHES is not set 229# CONFIG_ARCHES is not set
172# CONFIG_CANYONLANDS is not set 230# CONFIG_CANYONLANDS is not set
173# CONFIG_GLACIER is not set 231# CONFIG_GLACIER is not set
232# CONFIG_REDWOOD is not set
233# CONFIG_EIGER is not set
174# CONFIG_YOSEMITE is not set 234# CONFIG_YOSEMITE is not set
175# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 235# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
176CONFIG_PPC44x_SIMPLE=y 236CONFIG_PPC44x_SIMPLE=y
@@ -212,10 +272,12 @@ CONFIG_BINFMT_ELF=y
212# CONFIG_BINFMT_MISC is not set 272# CONFIG_BINFMT_MISC is not set
213# CONFIG_MATH_EMULATION is not set 273# CONFIG_MATH_EMULATION is not set
214# CONFIG_IOMMU_HELPER is not set 274# CONFIG_IOMMU_HELPER is not set
215CONFIG_PPC_NEED_DMA_SYNC_OPS=y 275# CONFIG_SWIOTLB is not set
216CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 276CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
217CONFIG_ARCH_HAS_WALK_MEMORY=y 277CONFIG_ARCH_HAS_WALK_MEMORY=y
218CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 278CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
279CONFIG_SPARSE_IRQ=y
280CONFIG_MAX_ACTIVE_REGIONS=32
219CONFIG_ARCH_FLATMEM_ENABLE=y 281CONFIG_ARCH_FLATMEM_ENABLE=y
220CONFIG_ARCH_POPULATES_NODE_MAP=y 282CONFIG_ARCH_POPULATES_NODE_MAP=y
221CONFIG_SELECT_MEMORY_MODEL=y 283CONFIG_SELECT_MEMORY_MODEL=y
@@ -231,10 +293,13 @@ CONFIG_PHYS_ADDR_T_64BIT=y
231CONFIG_ZONE_DMA_FLAG=1 293CONFIG_ZONE_DMA_FLAG=1
232CONFIG_BOUNCE=y 294CONFIG_BOUNCE=y
233CONFIG_VIRT_TO_BUS=y 295CONFIG_VIRT_TO_BUS=y
234CONFIG_UNEVICTABLE_LRU=y 296# CONFIG_KSM is not set
297CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
298CONFIG_STDBINUTILS=y
235CONFIG_PPC_4K_PAGES=y 299CONFIG_PPC_4K_PAGES=y
236# CONFIG_PPC_16K_PAGES is not set 300# CONFIG_PPC_16K_PAGES is not set
237# CONFIG_PPC_64K_PAGES is not set 301# CONFIG_PPC_64K_PAGES is not set
302# CONFIG_PPC_256K_PAGES is not set
238CONFIG_FORCE_MAX_ZONEORDER=11 303CONFIG_FORCE_MAX_ZONEORDER=11
239CONFIG_PROC_DEVICETREE=y 304CONFIG_PROC_DEVICETREE=y
240CONFIG_CMDLINE_BOOL=y 305CONFIG_CMDLINE_BOOL=y
@@ -259,6 +324,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
259# CONFIG_PCI_LEGACY is not set 324# CONFIG_PCI_LEGACY is not set
260# CONFIG_PCI_DEBUG is not set 325# CONFIG_PCI_DEBUG is not set
261# CONFIG_PCI_STUB is not set 326# CONFIG_PCI_STUB is not set
327# CONFIG_PCI_IOV is not set
262# CONFIG_PCCARD is not set 328# CONFIG_PCCARD is not set
263# CONFIG_HOTPLUG_PCI is not set 329# CONFIG_HOTPLUG_PCI is not set
264# CONFIG_HAS_RAPIDIO is not set 330# CONFIG_HAS_RAPIDIO is not set
@@ -276,14 +342,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
276CONFIG_KERNEL_START=0xc0000000 342CONFIG_KERNEL_START=0xc0000000
277CONFIG_PHYSICAL_START=0x00000000 343CONFIG_PHYSICAL_START=0x00000000
278CONFIG_TASK_SIZE=0xc0000000 344CONFIG_TASK_SIZE=0xc0000000
279CONFIG_CONSISTENT_START=0xff100000
280CONFIG_CONSISTENT_SIZE=0x00200000 345CONFIG_CONSISTENT_SIZE=0x00200000
281CONFIG_NET=y 346CONFIG_NET=y
282 347
283# 348#
284# Networking options 349# Networking options
285# 350#
286CONFIG_COMPAT_NET_DEV_OPS=y
287CONFIG_PACKET=y 351CONFIG_PACKET=y
288# CONFIG_PACKET_MMAP is not set 352# CONFIG_PACKET_MMAP is not set
289CONFIG_UNIX=y 353CONFIG_UNIX=y
@@ -320,6 +384,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
320# CONFIG_NETFILTER is not set 384# CONFIG_NETFILTER is not set
321# CONFIG_IP_DCCP is not set 385# CONFIG_IP_DCCP is not set
322# CONFIG_IP_SCTP is not set 386# CONFIG_IP_SCTP is not set
387# CONFIG_RDS is not set
323# CONFIG_TIPC is not set 388# CONFIG_TIPC is not set
324# CONFIG_ATM is not set 389# CONFIG_ATM is not set
325# CONFIG_BRIDGE is not set 390# CONFIG_BRIDGE is not set
@@ -333,6 +398,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
333# CONFIG_LAPB is not set 398# CONFIG_LAPB is not set
334# CONFIG_ECONET is not set 399# CONFIG_ECONET is not set
335# CONFIG_WAN_ROUTER is not set 400# CONFIG_WAN_ROUTER is not set
401# CONFIG_PHONET is not set
402# CONFIG_IEEE802154 is not set
336# CONFIG_NET_SCHED is not set 403# CONFIG_NET_SCHED is not set
337# CONFIG_DCB is not set 404# CONFIG_DCB is not set
338 405
@@ -345,8 +412,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
345# CONFIG_IRDA is not set 412# CONFIG_IRDA is not set
346# CONFIG_BT is not set 413# CONFIG_BT is not set
347# CONFIG_AF_RXRPC is not set 414# CONFIG_AF_RXRPC is not set
348# CONFIG_PHONET is not set 415CONFIG_WIRELESS=y
349# CONFIG_WIRELESS is not set 416# CONFIG_CFG80211 is not set
417# CONFIG_LIB80211 is not set
418
419#
420# CFG80211 needs to be enabled for MAC80211
421#
350# CONFIG_WIMAX is not set 422# CONFIG_WIMAX is not set
351# CONFIG_RFKILL is not set 423# CONFIG_RFKILL is not set
352# CONFIG_NET_9P is not set 424# CONFIG_NET_9P is not set
@@ -359,6 +431,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
359# Generic Driver Options 431# Generic Driver Options
360# 432#
361CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 433CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
434# CONFIG_DEVTMPFS is not set
362CONFIG_STANDALONE=y 435CONFIG_STANDALONE=y
363CONFIG_PREVENT_FIRMWARE_BUILD=y 436CONFIG_PREVENT_FIRMWARE_BUILD=y
364CONFIG_FW_LOADER=y 437CONFIG_FW_LOADER=y
@@ -380,6 +453,7 @@ CONFIG_BLK_DEV=y
380# CONFIG_BLK_DEV_UMEM is not set 453# CONFIG_BLK_DEV_UMEM is not set
381# CONFIG_BLK_DEV_COW_COMMON is not set 454# CONFIG_BLK_DEV_COW_COMMON is not set
382# CONFIG_BLK_DEV_LOOP is not set 455# CONFIG_BLK_DEV_LOOP is not set
456# CONFIG_BLK_DEV_DRBD is not set
383# CONFIG_BLK_DEV_NBD is not set 457# CONFIG_BLK_DEV_NBD is not set
384# CONFIG_BLK_DEV_SX8 is not set 458# CONFIG_BLK_DEV_SX8 is not set
385CONFIG_BLK_DEV_RAM=y 459CONFIG_BLK_DEV_RAM=y
@@ -392,12 +466,17 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
392# CONFIG_BLK_DEV_HD is not set 466# CONFIG_BLK_DEV_HD is not set
393CONFIG_MISC_DEVICES=y 467CONFIG_MISC_DEVICES=y
394# CONFIG_PHANTOM is not set 468# CONFIG_PHANTOM is not set
395# CONFIG_EEPROM_93CX6 is not set
396# CONFIG_SGI_IOC4 is not set 469# CONFIG_SGI_IOC4 is not set
397# CONFIG_TIFM_CORE is not set 470# CONFIG_TIFM_CORE is not set
398# CONFIG_ENCLOSURE_SERVICES is not set 471# CONFIG_ENCLOSURE_SERVICES is not set
399# CONFIG_HP_ILO is not set 472# CONFIG_HP_ILO is not set
400# CONFIG_C2PORT is not set 473# CONFIG_C2PORT is not set
474
475#
476# EEPROM support
477#
478# CONFIG_EEPROM_93CX6 is not set
479# CONFIG_CB710_CORE is not set
401CONFIG_HAVE_IDE=y 480CONFIG_HAVE_IDE=y
402# CONFIG_IDE is not set 481# CONFIG_IDE is not set
403 482
@@ -417,7 +496,11 @@ CONFIG_HAVE_IDE=y
417# 496#
418 497
419# 498#
420# Enable only one of the two stacks, unless you know what you are doing 499# You can enable one or both FireWire driver stacks.
500#
501
502#
503# See the help texts for more information.
421# 504#
422# CONFIG_FIREWIRE is not set 505# CONFIG_FIREWIRE is not set
423# CONFIG_IEEE1394 is not set 506# CONFIG_IEEE1394 is not set
@@ -440,6 +523,8 @@ CONFIG_NET_ETHERNET=y
440# CONFIG_SUNGEM is not set 523# CONFIG_SUNGEM is not set
441# CONFIG_CASSINI is not set 524# CONFIG_CASSINI is not set
442# CONFIG_NET_VENDOR_3COM is not set 525# CONFIG_NET_VENDOR_3COM is not set
526# CONFIG_ETHOC is not set
527# CONFIG_DNET is not set
443# CONFIG_NET_TULIP is not set 528# CONFIG_NET_TULIP is not set
444# CONFIG_HP100 is not set 529# CONFIG_HP100 is not set
445CONFIG_IBM_NEW_EMAC=y 530CONFIG_IBM_NEW_EMAC=y
@@ -458,7 +543,10 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
458# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 543# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
459# CONFIG_NET_PCI is not set 544# CONFIG_NET_PCI is not set
460# CONFIG_B44 is not set 545# CONFIG_B44 is not set
546# CONFIG_KS8842 is not set
547# CONFIG_KS8851_MLL is not set
461# CONFIG_ATL2 is not set 548# CONFIG_ATL2 is not set
549# CONFIG_XILINX_EMACLITE is not set
462CONFIG_NETDEV_1000=y 550CONFIG_NETDEV_1000=y
463# CONFIG_ACENIC is not set 551# CONFIG_ACENIC is not set
464# CONFIG_DL2K is not set 552# CONFIG_DL2K is not set
@@ -466,6 +554,7 @@ CONFIG_NETDEV_1000=y
466# CONFIG_E1000E is not set 554# CONFIG_E1000E is not set
467# CONFIG_IP1000 is not set 555# CONFIG_IP1000 is not set
468# CONFIG_IGB is not set 556# CONFIG_IGB is not set
557# CONFIG_IGBVF is not set
469# CONFIG_NS83820 is not set 558# CONFIG_NS83820 is not set
470# CONFIG_HAMACHI is not set 559# CONFIG_HAMACHI is not set
471# CONFIG_YELLOWFIN is not set 560# CONFIG_YELLOWFIN is not set
@@ -476,9 +565,13 @@ CONFIG_NETDEV_1000=y
476# CONFIG_VIA_VELOCITY is not set 565# CONFIG_VIA_VELOCITY is not set
477# CONFIG_TIGON3 is not set 566# CONFIG_TIGON3 is not set
478# CONFIG_BNX2 is not set 567# CONFIG_BNX2 is not set
568# CONFIG_CNIC is not set
569# CONFIG_MV643XX_ETH is not set
570# CONFIG_XILINX_LL_TEMAC is not set
479# CONFIG_QLA3XXX is not set 571# CONFIG_QLA3XXX is not set
480# CONFIG_ATL1 is not set 572# CONFIG_ATL1 is not set
481# CONFIG_ATL1E is not set 573# CONFIG_ATL1E is not set
574# CONFIG_ATL1C is not set
482# CONFIG_JME is not set 575# CONFIG_JME is not set
483CONFIG_NETDEV_10000=y 576CONFIG_NETDEV_10000=y
484# CONFIG_CHELSIO_T1 is not set 577# CONFIG_CHELSIO_T1 is not set
@@ -488,6 +581,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
488# CONFIG_IXGBE is not set 581# CONFIG_IXGBE is not set
489# CONFIG_IXGB is not set 582# CONFIG_IXGB is not set
490# CONFIG_S2IO is not set 583# CONFIG_S2IO is not set
584# CONFIG_VXGE is not set
491# CONFIG_MYRI10GE is not set 585# CONFIG_MYRI10GE is not set
492# CONFIG_NETXEN_NIC is not set 586# CONFIG_NETXEN_NIC is not set
493# CONFIG_NIU is not set 587# CONFIG_NIU is not set
@@ -497,14 +591,13 @@ CONFIG_CHELSIO_T3_DEPENDS=y
497# CONFIG_BNX2X is not set 591# CONFIG_BNX2X is not set
498# CONFIG_QLGE is not set 592# CONFIG_QLGE is not set
499# CONFIG_SFC is not set 593# CONFIG_SFC is not set
594# CONFIG_BE2NET is not set
500# CONFIG_TR is not set 595# CONFIG_TR is not set
501 596CONFIG_WLAN=y
502# 597# CONFIG_AIRO is not set
503# Wireless LAN 598# CONFIG_ATMEL is not set
504# 599# CONFIG_PRISM54 is not set
505# CONFIG_WLAN_PRE80211 is not set 600# CONFIG_HOSTAP is not set
506# CONFIG_WLAN_80211 is not set
507# CONFIG_IWLWIFI_LEDS is not set
508 601
509# 602#
510# Enable WiMAX (Networking options) to see the WiMAX drivers 603# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -517,6 +610,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
517# CONFIG_NETCONSOLE is not set 610# CONFIG_NETCONSOLE is not set
518# CONFIG_NETPOLL is not set 611# CONFIG_NETPOLL is not set
519# CONFIG_NET_POLL_CONTROLLER is not set 612# CONFIG_NET_POLL_CONTROLLER is not set
613# CONFIG_VMXNET3 is not set
520# CONFIG_ISDN is not set 614# CONFIG_ISDN is not set
521# CONFIG_PHONE is not set 615# CONFIG_PHONE is not set
522 616
@@ -562,6 +656,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
562# CONFIG_SERIAL_JSM is not set 656# CONFIG_SERIAL_JSM is not set
563CONFIG_SERIAL_OF_PLATFORM=y 657CONFIG_SERIAL_OF_PLATFORM=y
564# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 658# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
659# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
565CONFIG_UNIX98_PTYS=y 660CONFIG_UNIX98_PTYS=y
566# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 661# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
567CONFIG_LEGACY_PTYS=y 662CONFIG_LEGACY_PTYS=y
@@ -578,13 +673,17 @@ CONFIG_LEGACY_PTY_COUNT=256
578CONFIG_DEVPORT=y 673CONFIG_DEVPORT=y
579# CONFIG_I2C is not set 674# CONFIG_I2C is not set
580# CONFIG_SPI is not set 675# CONFIG_SPI is not set
676
677#
678# PPS support
679#
680# CONFIG_PPS is not set
581CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 681CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
582# CONFIG_GPIOLIB is not set 682# CONFIG_GPIOLIB is not set
583# CONFIG_W1 is not set 683# CONFIG_W1 is not set
584# CONFIG_POWER_SUPPLY is not set 684# CONFIG_POWER_SUPPLY is not set
585# CONFIG_HWMON is not set 685# CONFIG_HWMON is not set
586# CONFIG_THERMAL is not set 686# CONFIG_THERMAL is not set
587# CONFIG_THERMAL_HWMON is not set
588# CONFIG_WATCHDOG is not set 687# CONFIG_WATCHDOG is not set
589CONFIG_SSB_POSSIBLE=y 688CONFIG_SSB_POSSIBLE=y
590 689
@@ -601,27 +700,13 @@ CONFIG_SSB_POSSIBLE=y
601# CONFIG_HTC_PASIC3 is not set 700# CONFIG_HTC_PASIC3 is not set
602# CONFIG_MFD_TMIO is not set 701# CONFIG_MFD_TMIO is not set
603# CONFIG_REGULATOR is not set 702# CONFIG_REGULATOR is not set
604 703# CONFIG_MEDIA_SUPPORT is not set
605#
606# Multimedia devices
607#
608
609#
610# Multimedia core support
611#
612# CONFIG_VIDEO_DEV is not set
613# CONFIG_DVB_CORE is not set
614# CONFIG_VIDEO_MEDIA is not set
615
616#
617# Multimedia drivers
618#
619CONFIG_DAB=y
620 704
621# 705#
622# Graphics support 706# Graphics support
623# 707#
624# CONFIG_AGP is not set 708# CONFIG_AGP is not set
709CONFIG_VGA_ARB=y
625# CONFIG_DRM is not set 710# CONFIG_DRM is not set
626# CONFIG_VGASTATE is not set 711# CONFIG_VGASTATE is not set
627CONFIG_VIDEO_OUTPUT_CONTROL=m 712CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -646,7 +731,7 @@ CONFIG_USB_ARCH_HAS_EHCI=y
646# 731#
647 732
648# 733#
649# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 734# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
650# 735#
651# CONFIG_USB_GADGET is not set 736# CONFIG_USB_GADGET is not set
652 737
@@ -662,7 +747,12 @@ CONFIG_USB_ARCH_HAS_EHCI=y
662# CONFIG_EDAC is not set 747# CONFIG_EDAC is not set
663# CONFIG_RTC_CLASS is not set 748# CONFIG_RTC_CLASS is not set
664# CONFIG_DMADEVICES is not set 749# CONFIG_DMADEVICES is not set
750# CONFIG_AUXDISPLAY is not set
665# CONFIG_UIO is not set 751# CONFIG_UIO is not set
752
753#
754# TI VLYNQ
755#
666# CONFIG_STAGING is not set 756# CONFIG_STAGING is not set
667 757
668# 758#
@@ -673,14 +763,17 @@ CONFIG_EXT2_FS=y
673# CONFIG_EXT2_FS_XIP is not set 763# CONFIG_EXT2_FS_XIP is not set
674# CONFIG_EXT3_FS is not set 764# CONFIG_EXT3_FS is not set
675# CONFIG_EXT4_FS is not set 765# CONFIG_EXT4_FS is not set
766CONFIG_EXT4_USE_FOR_EXT23=y
676# CONFIG_REISERFS_FS is not set 767# CONFIG_REISERFS_FS is not set
677# CONFIG_JFS_FS is not set 768# CONFIG_JFS_FS is not set
678# CONFIG_FS_POSIX_ACL is not set 769# CONFIG_FS_POSIX_ACL is not set
679CONFIG_FILE_LOCKING=y
680# CONFIG_XFS_FS is not set 770# CONFIG_XFS_FS is not set
681# CONFIG_GFS2_FS is not set 771# CONFIG_GFS2_FS is not set
682# CONFIG_OCFS2_FS is not set 772# CONFIG_OCFS2_FS is not set
683# CONFIG_BTRFS_FS is not set 773# CONFIG_BTRFS_FS is not set
774# CONFIG_NILFS2_FS is not set
775CONFIG_FILE_LOCKING=y
776CONFIG_FSNOTIFY=y
684CONFIG_DNOTIFY=y 777CONFIG_DNOTIFY=y
685CONFIG_INOTIFY=y 778CONFIG_INOTIFY=y
686CONFIG_INOTIFY_USER=y 779CONFIG_INOTIFY_USER=y
@@ -690,6 +783,11 @@ CONFIG_INOTIFY_USER=y
690# CONFIG_FUSE_FS is not set 783# CONFIG_FUSE_FS is not set
691 784
692# 785#
786# Caches
787#
788# CONFIG_FSCACHE is not set
789
790#
693# CD-ROM/DVD Filesystems 791# CD-ROM/DVD Filesystems
694# 792#
695# CONFIG_ISO9660_FS is not set 793# CONFIG_ISO9660_FS is not set
@@ -743,7 +841,6 @@ CONFIG_LOCKD=y
743CONFIG_LOCKD_V4=y 841CONFIG_LOCKD_V4=y
744CONFIG_NFS_COMMON=y 842CONFIG_NFS_COMMON=y
745CONFIG_SUNRPC=y 843CONFIG_SUNRPC=y
746# CONFIG_SUNRPC_REGISTER_V4 is not set
747# CONFIG_RPCSEC_GSS_KRB5 is not set 844# CONFIG_RPCSEC_GSS_KRB5 is not set
748# CONFIG_RPCSEC_GSS_SPKM3 is not set 845# CONFIG_RPCSEC_GSS_SPKM3 is not set
749# CONFIG_SMB_FS is not set 846# CONFIG_SMB_FS is not set
@@ -759,6 +856,7 @@ CONFIG_SUNRPC=y
759CONFIG_MSDOS_PARTITION=y 856CONFIG_MSDOS_PARTITION=y
760# CONFIG_NLS is not set 857# CONFIG_NLS is not set
761# CONFIG_DLM is not set 858# CONFIG_DLM is not set
859# CONFIG_BINARY_PRINTF is not set
762 860
763# 861#
764# Library routines 862# Library routines
@@ -773,11 +871,13 @@ CONFIG_CRC32=y
773# CONFIG_CRC7 is not set 871# CONFIG_CRC7 is not set
774# CONFIG_LIBCRC32C is not set 872# CONFIG_LIBCRC32C is not set
775CONFIG_ZLIB_INFLATE=y 873CONFIG_ZLIB_INFLATE=y
776CONFIG_PLIST=y 874CONFIG_DECOMPRESS_GZIP=y
777CONFIG_HAS_IOMEM=y 875CONFIG_HAS_IOMEM=y
778CONFIG_HAS_IOPORT=y 876CONFIG_HAS_IOPORT=y
779CONFIG_HAS_DMA=y 877CONFIG_HAS_DMA=y
780CONFIG_HAVE_LMB=y 878CONFIG_HAVE_LMB=y
879CONFIG_NLATTR=y
880CONFIG_GENERIC_ATOMIC64=y
781 881
782# 882#
783# Kernel hacking 883# Kernel hacking
@@ -787,6 +887,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
787CONFIG_ENABLE_MUST_CHECK=y 887CONFIG_ENABLE_MUST_CHECK=y
788CONFIG_FRAME_WARN=1024 888CONFIG_FRAME_WARN=1024
789CONFIG_MAGIC_SYSRQ=y 889CONFIG_MAGIC_SYSRQ=y
890# CONFIG_STRIP_ASM_SYMS is not set
790# CONFIG_UNUSED_SYMBOLS is not set 891# CONFIG_UNUSED_SYMBOLS is not set
791# CONFIG_DEBUG_FS is not set 892# CONFIG_DEBUG_FS is not set
792# CONFIG_HEADERS_CHECK is not set 893# CONFIG_HEADERS_CHECK is not set
@@ -795,16 +896,23 @@ CONFIG_DEBUG_KERNEL=y
795CONFIG_DETECT_SOFTLOCKUP=y 896CONFIG_DETECT_SOFTLOCKUP=y
796# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 897# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
797CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 898CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
899CONFIG_DETECT_HUNG_TASK=y
900# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
901CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
798CONFIG_SCHED_DEBUG=y 902CONFIG_SCHED_DEBUG=y
799# CONFIG_SCHEDSTATS is not set 903# CONFIG_SCHEDSTATS is not set
800# CONFIG_TIMER_STATS is not set 904# CONFIG_TIMER_STATS is not set
801# CONFIG_DEBUG_OBJECTS is not set 905# CONFIG_DEBUG_OBJECTS is not set
802# CONFIG_SLUB_DEBUG_ON is not set 906# CONFIG_SLUB_DEBUG_ON is not set
803# CONFIG_SLUB_STATS is not set 907# CONFIG_SLUB_STATS is not set
908# CONFIG_DEBUG_KMEMLEAK is not set
804# CONFIG_DEBUG_RT_MUTEXES is not set 909# CONFIG_DEBUG_RT_MUTEXES is not set
805# CONFIG_RT_MUTEX_TESTER is not set 910# CONFIG_RT_MUTEX_TESTER is not set
806# CONFIG_DEBUG_SPINLOCK is not set 911# CONFIG_DEBUG_SPINLOCK is not set
807# CONFIG_DEBUG_MUTEXES is not set 912# CONFIG_DEBUG_MUTEXES is not set
913# CONFIG_DEBUG_LOCK_ALLOC is not set
914# CONFIG_PROVE_LOCKING is not set
915# CONFIG_LOCK_STAT is not set
808# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 916# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
809# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 917# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
810# CONFIG_DEBUG_KOBJECT is not set 918# CONFIG_DEBUG_KOBJECT is not set
@@ -816,35 +924,43 @@ CONFIG_SCHED_DEBUG=y
816# CONFIG_DEBUG_LIST is not set 924# CONFIG_DEBUG_LIST is not set
817# CONFIG_DEBUG_SG is not set 925# CONFIG_DEBUG_SG is not set
818# CONFIG_DEBUG_NOTIFIERS is not set 926# CONFIG_DEBUG_NOTIFIERS is not set
819# CONFIG_BOOT_PRINTK_DELAY is not set 927# CONFIG_DEBUG_CREDENTIALS is not set
820# CONFIG_RCU_TORTURE_TEST is not set 928# CONFIG_RCU_TORTURE_TEST is not set
821# CONFIG_RCU_CPU_STALL_DETECTOR is not set 929# CONFIG_RCU_CPU_STALL_DETECTOR is not set
822# CONFIG_BACKTRACE_SELF_TEST is not set 930# CONFIG_BACKTRACE_SELF_TEST is not set
823# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 931# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
932# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
824# CONFIG_FAULT_INJECTION is not set 933# CONFIG_FAULT_INJECTION is not set
825# CONFIG_LATENCYTOP is not set 934# CONFIG_LATENCYTOP is not set
826CONFIG_SYSCTL_SYSCALL_CHECK=y 935CONFIG_SYSCTL_SYSCALL_CHECK=y
936# CONFIG_DEBUG_PAGEALLOC is not set
827CONFIG_HAVE_FUNCTION_TRACER=y 937CONFIG_HAVE_FUNCTION_TRACER=y
938CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
828CONFIG_HAVE_DYNAMIC_FTRACE=y 939CONFIG_HAVE_DYNAMIC_FTRACE=y
829CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 940CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
830 941CONFIG_TRACING_SUPPORT=y
831# 942CONFIG_FTRACE=y
832# Tracers
833#
834# CONFIG_FUNCTION_TRACER is not set 943# CONFIG_FUNCTION_TRACER is not set
944# CONFIG_IRQSOFF_TRACER is not set
835# CONFIG_SCHED_TRACER is not set 945# CONFIG_SCHED_TRACER is not set
836# CONFIG_CONTEXT_SWITCH_TRACER is not set 946# CONFIG_ENABLE_DEFAULT_TRACERS is not set
837# CONFIG_BOOT_TRACER is not set 947# CONFIG_BOOT_TRACER is not set
838# CONFIG_TRACE_BRANCH_PROFILING is not set 948CONFIG_BRANCH_PROFILE_NONE=y
949# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
950# CONFIG_PROFILE_ALL_BRANCHES is not set
839# CONFIG_STACK_TRACER is not set 951# CONFIG_STACK_TRACER is not set
840# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 952# CONFIG_KMEMTRACE is not set
953# CONFIG_WORKQUEUE_TRACER is not set
954# CONFIG_BLK_DEV_IO_TRACE is not set
955# CONFIG_DMA_API_DEBUG is not set
841# CONFIG_SAMPLES is not set 956# CONFIG_SAMPLES is not set
842CONFIG_HAVE_ARCH_KGDB=y 957CONFIG_HAVE_ARCH_KGDB=y
843# CONFIG_KGDB is not set 958# CONFIG_KGDB is not set
959# CONFIG_PPC_DISABLE_WERROR is not set
960CONFIG_PPC_WERROR=y
844CONFIG_PRINT_STACK_DEPTH=64 961CONFIG_PRINT_STACK_DEPTH=64
845# CONFIG_DEBUG_STACKOVERFLOW is not set 962# CONFIG_DEBUG_STACKOVERFLOW is not set
846# CONFIG_DEBUG_STACK_USAGE is not set 963# CONFIG_DEBUG_STACK_USAGE is not set
847# CONFIG_DEBUG_PAGEALLOC is not set
848# CONFIG_CODE_PATCHING_SELFTEST is not set 964# CONFIG_CODE_PATCHING_SELFTEST is not set
849# CONFIG_FTR_FIXUP_SELFTEST is not set 965# CONFIG_FTR_FIXUP_SELFTEST is not set
850# CONFIG_MSI_BITMAP_SELFTEST is not set 966# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -859,13 +975,16 @@ CONFIG_PRINT_STACK_DEPTH=64
859# CONFIG_KEYS is not set 975# CONFIG_KEYS is not set
860# CONFIG_SECURITY is not set 976# CONFIG_SECURITY is not set
861# CONFIG_SECURITYFS is not set 977# CONFIG_SECURITYFS is not set
862# CONFIG_SECURITY_FILE_CAPABILITIES is not set 978# CONFIG_DEFAULT_SECURITY_SELINUX is not set
979# CONFIG_DEFAULT_SECURITY_SMACK is not set
980# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
981CONFIG_DEFAULT_SECURITY_DAC=y
982CONFIG_DEFAULT_SECURITY=""
863CONFIG_CRYPTO=y 983CONFIG_CRYPTO=y
864 984
865# 985#
866# Crypto core or helper 986# Crypto core or helper
867# 987#
868# CONFIG_CRYPTO_FIPS is not set
869CONFIG_CRYPTO_ALGAPI=y 988CONFIG_CRYPTO_ALGAPI=y
870CONFIG_CRYPTO_ALGAPI2=y 989CONFIG_CRYPTO_ALGAPI2=y
871CONFIG_CRYPTO_AEAD2=y 990CONFIG_CRYPTO_AEAD2=y
@@ -874,10 +993,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
874CONFIG_CRYPTO_HASH=y 993CONFIG_CRYPTO_HASH=y
875CONFIG_CRYPTO_HASH2=y 994CONFIG_CRYPTO_HASH2=y
876CONFIG_CRYPTO_RNG2=y 995CONFIG_CRYPTO_RNG2=y
996CONFIG_CRYPTO_PCOMP=y
877CONFIG_CRYPTO_MANAGER=y 997CONFIG_CRYPTO_MANAGER=y
878CONFIG_CRYPTO_MANAGER2=y 998CONFIG_CRYPTO_MANAGER2=y
879# CONFIG_CRYPTO_GF128MUL is not set 999# CONFIG_CRYPTO_GF128MUL is not set
880# CONFIG_CRYPTO_NULL is not set 1000# CONFIG_CRYPTO_NULL is not set
1001CONFIG_CRYPTO_WORKQUEUE=y
881# CONFIG_CRYPTO_CRYPTD is not set 1002# CONFIG_CRYPTO_CRYPTD is not set
882# CONFIG_CRYPTO_AUTHENC is not set 1003# CONFIG_CRYPTO_AUTHENC is not set
883# CONFIG_CRYPTO_TEST is not set 1004# CONFIG_CRYPTO_TEST is not set
@@ -905,11 +1026,13 @@ CONFIG_CRYPTO_PCBC=y
905# 1026#
906# CONFIG_CRYPTO_HMAC is not set 1027# CONFIG_CRYPTO_HMAC is not set
907# CONFIG_CRYPTO_XCBC is not set 1028# CONFIG_CRYPTO_XCBC is not set
1029# CONFIG_CRYPTO_VMAC is not set
908 1030
909# 1031#
910# Digest 1032# Digest
911# 1033#
912# CONFIG_CRYPTO_CRC32C is not set 1034# CONFIG_CRYPTO_CRC32C is not set
1035# CONFIG_CRYPTO_GHASH is not set
913# CONFIG_CRYPTO_MD4 is not set 1036# CONFIG_CRYPTO_MD4 is not set
914CONFIG_CRYPTO_MD5=y 1037CONFIG_CRYPTO_MD5=y
915# CONFIG_CRYPTO_MICHAEL_MIC is not set 1038# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -946,6 +1069,7 @@ CONFIG_CRYPTO_DES=y
946# Compression 1069# Compression
947# 1070#
948# CONFIG_CRYPTO_DEFLATE is not set 1071# CONFIG_CRYPTO_DEFLATE is not set
1072# CONFIG_CRYPTO_ZLIB is not set
949# CONFIG_CRYPTO_LZO is not set 1073# CONFIG_CRYPTO_LZO is not set
950 1074
951# 1075#
@@ -954,5 +1078,6 @@ CONFIG_CRYPTO_DES=y
954# CONFIG_CRYPTO_ANSI_CPRNG is not set 1078# CONFIG_CRYPTO_ANSI_CPRNG is not set
955CONFIG_CRYPTO_HW=y 1079CONFIG_CRYPTO_HW=y
956# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1080# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1081# CONFIG_CRYPTO_DEV_PPC4XX is not set
957# CONFIG_PPC_CLOCK is not set 1082# CONFIG_PPC_CLOCK is not set
958# CONFIG_VIRTUALIZATION is not set 1083# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/rainier_defconfig b/arch/powerpc/configs/44x/rainier_defconfig
index b25fad1343dc..8fed3b26af2e 100644
--- a/arch/powerpc/configs/44x/rainier_defconfig
+++ b/arch/powerpc/configs/44x/rainier_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:22:41 2009 4# Mon Jan 4 14:59:12 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -19,6 +19,7 @@ CONFIG_BOOKE=y
19CONFIG_PTE_64BIT=y 19CONFIG_PTE_64BIT=y
20CONFIG_PHYS_64BIT=y 20CONFIG_PHYS_64BIT=y
21CONFIG_PPC_MMU_NOHASH=y 21CONFIG_PPC_MMU_NOHASH=y
22CONFIG_PPC_MMU_NOHASH_32=y
22# CONFIG_PPC_MM_SLICES is not set 23# CONFIG_PPC_MM_SLICES is not set
23CONFIG_NOT_COHERENT_CACHE=y 24CONFIG_NOT_COHERENT_CACHE=y
24CONFIG_PPC32=y 25CONFIG_PPC32=y
@@ -30,15 +31,18 @@ CONFIG_GENERIC_TIME=y
30CONFIG_GENERIC_TIME_VSYSCALL=y 31CONFIG_GENERIC_TIME_VSYSCALL=y
31CONFIG_GENERIC_CLOCKEVENTS=y 32CONFIG_GENERIC_CLOCKEVENTS=y
32CONFIG_GENERIC_HARDIRQS=y 33CONFIG_GENERIC_HARDIRQS=y
34CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
33# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 35# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
36# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 37CONFIG_IRQ_PER_CPU=y
38CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 39CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 40CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y
37CONFIG_LOCKDEP_SUPPORT=y 42CONFIG_LOCKDEP_SUPPORT=y
38CONFIG_RWSEM_XCHGADD_ALGORITHM=y 43CONFIG_RWSEM_XCHGADD_ALGORITHM=y
39CONFIG_ARCH_HAS_ILOG2_U32=y 44CONFIG_ARCH_HAS_ILOG2_U32=y
40CONFIG_GENERIC_HWEIGHT=y 45CONFIG_GENERIC_HWEIGHT=y
41CONFIG_GENERIC_CALIBRATE_DELAY=y
42CONFIG_GENERIC_FIND_NEXT_BIT=y 46CONFIG_GENERIC_FIND_NEXT_BIT=y
43# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 47# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
44CONFIG_PPC=y 48CONFIG_PPC=y
@@ -52,11 +56,15 @@ CONFIG_PPC_UDBG_16550=y
52# CONFIG_GENERIC_TBSYNC is not set 56# CONFIG_GENERIC_TBSYNC is not set
53CONFIG_AUDIT_ARCH=y 57CONFIG_AUDIT_ARCH=y
54CONFIG_GENERIC_BUG=y 58CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y
55# CONFIG_DEFAULT_UIMAGE is not set 60# CONFIG_DEFAULT_UIMAGE is not set
61CONFIG_ARCH_HIBERNATION_POSSIBLE=y
56CONFIG_PPC_DCR_NATIVE=y 62CONFIG_PPC_DCR_NATIVE=y
57# CONFIG_PPC_DCR_MMIO is not set 63# CONFIG_PPC_DCR_MMIO is not set
58CONFIG_PPC_DCR=y 64CONFIG_PPC_DCR=y
65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
59CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 66CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
67CONFIG_CONSTRUCTORS=y
60 68
61# 69#
62# General setup 70# General setup
@@ -70,9 +78,21 @@ CONFIG_SWAP=y
70CONFIG_SYSVIPC=y 78CONFIG_SYSVIPC=y
71CONFIG_SYSVIPC_SYSCTL=y 79CONFIG_SYSVIPC_SYSCTL=y
72CONFIG_POSIX_MQUEUE=y 80CONFIG_POSIX_MQUEUE=y
81CONFIG_POSIX_MQUEUE_SYSCTL=y
73# CONFIG_BSD_PROCESS_ACCT is not set 82# CONFIG_BSD_PROCESS_ACCT is not set
74# CONFIG_TASKSTATS is not set 83# CONFIG_TASKSTATS is not set
75# CONFIG_AUDIT is not set 84# CONFIG_AUDIT is not set
85
86#
87# RCU Subsystem
88#
89CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set
91# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set
95# CONFIG_TREE_RCU_TRACE is not set
76# CONFIG_IKCONFIG is not set 96# CONFIG_IKCONFIG is not set
77CONFIG_LOG_BUF_SHIFT=14 97CONFIG_LOG_BUF_SHIFT=14
78CONFIG_GROUP_SCHED=y 98CONFIG_GROUP_SCHED=y
@@ -87,8 +107,12 @@ CONFIG_SYSFS_DEPRECATED_V2=y
87# CONFIG_NAMESPACES is not set 107# CONFIG_NAMESPACES is not set
88CONFIG_BLK_DEV_INITRD=y 108CONFIG_BLK_DEV_INITRD=y
89CONFIG_INITRAMFS_SOURCE="" 109CONFIG_INITRAMFS_SOURCE=""
110CONFIG_RD_GZIP=y
111# CONFIG_RD_BZIP2 is not set
112# CONFIG_RD_LZMA is not set
90# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 113# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
91CONFIG_SYSCTL=y 114CONFIG_SYSCTL=y
115CONFIG_ANON_INODES=y
92CONFIG_EMBEDDED=y 116CONFIG_EMBEDDED=y
93CONFIG_SYSCTL_SYSCALL=y 117CONFIG_SYSCTL_SYSCALL=y
94CONFIG_KALLSYMS=y 118CONFIG_KALLSYMS=y
@@ -98,19 +122,25 @@ CONFIG_HOTPLUG=y
98CONFIG_PRINTK=y 122CONFIG_PRINTK=y
99CONFIG_BUG=y 123CONFIG_BUG=y
100CONFIG_ELF_CORE=y 124CONFIG_ELF_CORE=y
101CONFIG_COMPAT_BRK=y
102CONFIG_BASE_FULL=y 125CONFIG_BASE_FULL=y
103CONFIG_FUTEX=y 126CONFIG_FUTEX=y
104CONFIG_ANON_INODES=y
105CONFIG_EPOLL=y 127CONFIG_EPOLL=y
106CONFIG_SIGNALFD=y 128CONFIG_SIGNALFD=y
107CONFIG_TIMERFD=y 129CONFIG_TIMERFD=y
108CONFIG_EVENTFD=y 130CONFIG_EVENTFD=y
109CONFIG_SHMEM=y 131CONFIG_SHMEM=y
110CONFIG_AIO=y 132CONFIG_AIO=y
133CONFIG_HAVE_PERF_EVENTS=y
134
135#
136# Kernel Performance Events And Counters
137#
138# CONFIG_PERF_EVENTS is not set
139# CONFIG_PERF_COUNTERS is not set
111CONFIG_VM_EVENT_COUNTERS=y 140CONFIG_VM_EVENT_COUNTERS=y
112CONFIG_PCI_QUIRKS=y 141CONFIG_PCI_QUIRKS=y
113CONFIG_SLUB_DEBUG=y 142CONFIG_SLUB_DEBUG=y
143CONFIG_COMPAT_BRK=y
114# CONFIG_SLAB is not set 144# CONFIG_SLAB is not set
115CONFIG_SLUB=y 145CONFIG_SLUB=y
116# CONFIG_SLOB is not set 146# CONFIG_SLOB is not set
@@ -122,6 +152,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
122CONFIG_HAVE_KPROBES=y 152CONFIG_HAVE_KPROBES=y
123CONFIG_HAVE_KRETPROBES=y 153CONFIG_HAVE_KRETPROBES=y
124CONFIG_HAVE_ARCH_TRACEHOOK=y 154CONFIG_HAVE_ARCH_TRACEHOOK=y
155CONFIG_HAVE_DMA_ATTRS=y
156CONFIG_HAVE_DMA_API_DEBUG=y
157
158#
159# GCOV-based kernel profiling
160#
161# CONFIG_GCOV_KERNEL is not set
162# CONFIG_SLOW_WORK is not set
125# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 163# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
126CONFIG_SLABINFO=y 164CONFIG_SLABINFO=y
127CONFIG_RT_MUTEXES=y 165CONFIG_RT_MUTEXES=y
@@ -133,8 +171,7 @@ CONFIG_MODULE_UNLOAD=y
133# CONFIG_MODVERSIONS is not set 171# CONFIG_MODVERSIONS is not set
134# CONFIG_MODULE_SRCVERSION_ALL is not set 172# CONFIG_MODULE_SRCVERSION_ALL is not set
135CONFIG_BLOCK=y 173CONFIG_BLOCK=y
136CONFIG_LBD=y 174CONFIG_LBDAF=y
137# CONFIG_BLK_DEV_IO_TRACE is not set
138# CONFIG_BLK_DEV_BSG is not set 175# CONFIG_BLK_DEV_BSG is not set
139# CONFIG_BLK_DEV_INTEGRITY is not set 176# CONFIG_BLK_DEV_INTEGRITY is not set
140 177
@@ -142,19 +179,41 @@ CONFIG_LBD=y
142# IO Schedulers 179# IO Schedulers
143# 180#
144CONFIG_IOSCHED_NOOP=y 181CONFIG_IOSCHED_NOOP=y
145CONFIG_IOSCHED_AS=y
146CONFIG_IOSCHED_DEADLINE=y 182CONFIG_IOSCHED_DEADLINE=y
147CONFIG_IOSCHED_CFQ=y 183CONFIG_IOSCHED_CFQ=y
148CONFIG_DEFAULT_AS=y
149# CONFIG_DEFAULT_DEADLINE is not set 184# CONFIG_DEFAULT_DEADLINE is not set
150# CONFIG_DEFAULT_CFQ is not set 185CONFIG_DEFAULT_CFQ=y
151# CONFIG_DEFAULT_NOOP is not set 186# CONFIG_DEFAULT_NOOP is not set
152CONFIG_DEFAULT_IOSCHED="anticipatory" 187CONFIG_DEFAULT_IOSCHED="cfq"
153CONFIG_CLASSIC_RCU=y 188# CONFIG_INLINE_SPIN_TRYLOCK is not set
154# CONFIG_TREE_RCU is not set 189# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
155# CONFIG_PREEMPT_RCU is not set 190# CONFIG_INLINE_SPIN_LOCK is not set
156# CONFIG_TREE_RCU_TRACE is not set 191# CONFIG_INLINE_SPIN_LOCK_BH is not set
157# CONFIG_PREEMPT_RCU_TRACE is not set 192# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
193# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
194CONFIG_INLINE_SPIN_UNLOCK=y
195# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
196CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
197# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
198# CONFIG_INLINE_READ_TRYLOCK is not set
199# CONFIG_INLINE_READ_LOCK is not set
200# CONFIG_INLINE_READ_LOCK_BH is not set
201# CONFIG_INLINE_READ_LOCK_IRQ is not set
202# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
203CONFIG_INLINE_READ_UNLOCK=y
204# CONFIG_INLINE_READ_UNLOCK_BH is not set
205CONFIG_INLINE_READ_UNLOCK_IRQ=y
206# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
207# CONFIG_INLINE_WRITE_TRYLOCK is not set
208# CONFIG_INLINE_WRITE_LOCK is not set
209# CONFIG_INLINE_WRITE_LOCK_BH is not set
210# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
212CONFIG_INLINE_WRITE_UNLOCK=y
213# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
214CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
215# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
216# CONFIG_MUTEX_SPIN_ON_OWNER is not set
158# CONFIG_FREEZER is not set 217# CONFIG_FREEZER is not set
159# CONFIG_PPC4xx_PCI_EXPRESS is not set 218# CONFIG_PPC4xx_PCI_EXPRESS is not set
160 219
@@ -175,6 +234,8 @@ CONFIG_RAINIER=y
175# CONFIG_ARCHES is not set 234# CONFIG_ARCHES is not set
176# CONFIG_CANYONLANDS is not set 235# CONFIG_CANYONLANDS is not set
177# CONFIG_GLACIER is not set 236# CONFIG_GLACIER is not set
237# CONFIG_REDWOOD is not set
238# CONFIG_EIGER is not set
178# CONFIG_YOSEMITE is not set 239# CONFIG_YOSEMITE is not set
179# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 240# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
180CONFIG_PPC44x_SIMPLE=y 241CONFIG_PPC44x_SIMPLE=y
@@ -216,10 +277,12 @@ CONFIG_BINFMT_ELF=y
216# CONFIG_BINFMT_MISC is not set 277# CONFIG_BINFMT_MISC is not set
217CONFIG_MATH_EMULATION=y 278CONFIG_MATH_EMULATION=y
218# CONFIG_IOMMU_HELPER is not set 279# CONFIG_IOMMU_HELPER is not set
219CONFIG_PPC_NEED_DMA_SYNC_OPS=y 280# CONFIG_SWIOTLB is not set
220CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
221CONFIG_ARCH_HAS_WALK_MEMORY=y 282CONFIG_ARCH_HAS_WALK_MEMORY=y
222CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
284CONFIG_SPARSE_IRQ=y
285CONFIG_MAX_ACTIVE_REGIONS=32
223CONFIG_ARCH_FLATMEM_ENABLE=y 286CONFIG_ARCH_FLATMEM_ENABLE=y
224CONFIG_ARCH_POPULATES_NODE_MAP=y 287CONFIG_ARCH_POPULATES_NODE_MAP=y
225CONFIG_SELECT_MEMORY_MODEL=y 288CONFIG_SELECT_MEMORY_MODEL=y
@@ -235,10 +298,13 @@ CONFIG_PHYS_ADDR_T_64BIT=y
235CONFIG_ZONE_DMA_FLAG=1 298CONFIG_ZONE_DMA_FLAG=1
236CONFIG_BOUNCE=y 299CONFIG_BOUNCE=y
237CONFIG_VIRT_TO_BUS=y 300CONFIG_VIRT_TO_BUS=y
238CONFIG_UNEVICTABLE_LRU=y 301# CONFIG_KSM is not set
302CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
303CONFIG_STDBINUTILS=y
239CONFIG_PPC_4K_PAGES=y 304CONFIG_PPC_4K_PAGES=y
240# CONFIG_PPC_16K_PAGES is not set 305# CONFIG_PPC_16K_PAGES is not set
241# CONFIG_PPC_64K_PAGES is not set 306# CONFIG_PPC_64K_PAGES is not set
307# CONFIG_PPC_256K_PAGES is not set
242CONFIG_FORCE_MAX_ZONEORDER=11 308CONFIG_FORCE_MAX_ZONEORDER=11
243CONFIG_PROC_DEVICETREE=y 309CONFIG_PROC_DEVICETREE=y
244CONFIG_CMDLINE_BOOL=y 310CONFIG_CMDLINE_BOOL=y
@@ -263,6 +329,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
263# CONFIG_PCI_LEGACY is not set 329# CONFIG_PCI_LEGACY is not set
264# CONFIG_PCI_DEBUG is not set 330# CONFIG_PCI_DEBUG is not set
265# CONFIG_PCI_STUB is not set 331# CONFIG_PCI_STUB is not set
332# CONFIG_PCI_IOV is not set
266# CONFIG_PCCARD is not set 333# CONFIG_PCCARD is not set
267# CONFIG_HOTPLUG_PCI is not set 334# CONFIG_HOTPLUG_PCI is not set
268# CONFIG_HAS_RAPIDIO is not set 335# CONFIG_HAS_RAPIDIO is not set
@@ -280,14 +347,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
280CONFIG_KERNEL_START=0xc0000000 347CONFIG_KERNEL_START=0xc0000000
281CONFIG_PHYSICAL_START=0x00000000 348CONFIG_PHYSICAL_START=0x00000000
282CONFIG_TASK_SIZE=0xc0000000 349CONFIG_TASK_SIZE=0xc0000000
283CONFIG_CONSISTENT_START=0xff100000
284CONFIG_CONSISTENT_SIZE=0x00200000 350CONFIG_CONSISTENT_SIZE=0x00200000
285CONFIG_NET=y 351CONFIG_NET=y
286 352
287# 353#
288# Networking options 354# Networking options
289# 355#
290CONFIG_COMPAT_NET_DEV_OPS=y
291CONFIG_PACKET=y 356CONFIG_PACKET=y
292# CONFIG_PACKET_MMAP is not set 357# CONFIG_PACKET_MMAP is not set
293CONFIG_UNIX=y 358CONFIG_UNIX=y
@@ -324,6 +389,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
324# CONFIG_NETFILTER is not set 389# CONFIG_NETFILTER is not set
325# CONFIG_IP_DCCP is not set 390# CONFIG_IP_DCCP is not set
326# CONFIG_IP_SCTP is not set 391# CONFIG_IP_SCTP is not set
392# CONFIG_RDS is not set
327# CONFIG_TIPC is not set 393# CONFIG_TIPC is not set
328# CONFIG_ATM is not set 394# CONFIG_ATM is not set
329# CONFIG_BRIDGE is not set 395# CONFIG_BRIDGE is not set
@@ -337,6 +403,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
337# CONFIG_LAPB is not set 403# CONFIG_LAPB is not set
338# CONFIG_ECONET is not set 404# CONFIG_ECONET is not set
339# CONFIG_WAN_ROUTER is not set 405# CONFIG_WAN_ROUTER is not set
406# CONFIG_PHONET is not set
407# CONFIG_IEEE802154 is not set
340# CONFIG_NET_SCHED is not set 408# CONFIG_NET_SCHED is not set
341# CONFIG_DCB is not set 409# CONFIG_DCB is not set
342 410
@@ -349,8 +417,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
349# CONFIG_IRDA is not set 417# CONFIG_IRDA is not set
350# CONFIG_BT is not set 418# CONFIG_BT is not set
351# CONFIG_AF_RXRPC is not set 419# CONFIG_AF_RXRPC is not set
352# CONFIG_PHONET is not set 420CONFIG_WIRELESS=y
353# CONFIG_WIRELESS is not set 421# CONFIG_CFG80211 is not set
422# CONFIG_LIB80211 is not set
423
424#
425# CFG80211 needs to be enabled for MAC80211
426#
354# CONFIG_WIMAX is not set 427# CONFIG_WIMAX is not set
355# CONFIG_RFKILL is not set 428# CONFIG_RFKILL is not set
356# CONFIG_NET_9P is not set 429# CONFIG_NET_9P is not set
@@ -363,6 +436,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
363# Generic Driver Options 436# Generic Driver Options
364# 437#
365CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 438CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
439# CONFIG_DEVTMPFS is not set
366CONFIG_STANDALONE=y 440CONFIG_STANDALONE=y
367CONFIG_PREVENT_FIRMWARE_BUILD=y 441CONFIG_PREVENT_FIRMWARE_BUILD=y
368CONFIG_FW_LOADER=y 442CONFIG_FW_LOADER=y
@@ -375,9 +449,9 @@ CONFIG_CONNECTOR=y
375CONFIG_PROC_EVENTS=y 449CONFIG_PROC_EVENTS=y
376CONFIG_MTD=y 450CONFIG_MTD=y
377# CONFIG_MTD_DEBUG is not set 451# CONFIG_MTD_DEBUG is not set
452# CONFIG_MTD_TESTS is not set
378# CONFIG_MTD_CONCAT is not set 453# CONFIG_MTD_CONCAT is not set
379CONFIG_MTD_PARTITIONS=y 454CONFIG_MTD_PARTITIONS=y
380# CONFIG_MTD_TESTS is not set
381# CONFIG_MTD_REDBOOT_PARTS is not set 455# CONFIG_MTD_REDBOOT_PARTS is not set
382CONFIG_MTD_CMDLINE_PARTS=y 456CONFIG_MTD_CMDLINE_PARTS=y
383CONFIG_MTD_OF_PARTS=y 457CONFIG_MTD_OF_PARTS=y
@@ -453,7 +527,6 @@ CONFIG_MTD_PHYSMAP_OF=y
453# LPDDR flash memory drivers 527# LPDDR flash memory drivers
454# 528#
455# CONFIG_MTD_LPDDR is not set 529# CONFIG_MTD_LPDDR is not set
456# CONFIG_MTD_QINFO_PROBE is not set
457 530
458# 531#
459# UBI - Unsorted block images 532# UBI - Unsorted block images
@@ -469,6 +542,7 @@ CONFIG_BLK_DEV=y
469# CONFIG_BLK_DEV_UMEM is not set 542# CONFIG_BLK_DEV_UMEM is not set
470# CONFIG_BLK_DEV_COW_COMMON is not set 543# CONFIG_BLK_DEV_COW_COMMON is not set
471# CONFIG_BLK_DEV_LOOP is not set 544# CONFIG_BLK_DEV_LOOP is not set
545# CONFIG_BLK_DEV_DRBD is not set
472# CONFIG_BLK_DEV_NBD is not set 546# CONFIG_BLK_DEV_NBD is not set
473# CONFIG_BLK_DEV_SX8 is not set 547# CONFIG_BLK_DEV_SX8 is not set
474CONFIG_BLK_DEV_RAM=y 548CONFIG_BLK_DEV_RAM=y
@@ -481,12 +555,17 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
481# CONFIG_BLK_DEV_HD is not set 555# CONFIG_BLK_DEV_HD is not set
482CONFIG_MISC_DEVICES=y 556CONFIG_MISC_DEVICES=y
483# CONFIG_PHANTOM is not set 557# CONFIG_PHANTOM is not set
484# CONFIG_EEPROM_93CX6 is not set
485# CONFIG_SGI_IOC4 is not set 558# CONFIG_SGI_IOC4 is not set
486# CONFIG_TIFM_CORE is not set 559# CONFIG_TIFM_CORE is not set
487# CONFIG_ENCLOSURE_SERVICES is not set 560# CONFIG_ENCLOSURE_SERVICES is not set
488# CONFIG_HP_ILO is not set 561# CONFIG_HP_ILO is not set
489# CONFIG_C2PORT is not set 562# CONFIG_C2PORT is not set
563
564#
565# EEPROM support
566#
567# CONFIG_EEPROM_93CX6 is not set
568# CONFIG_CB710_CORE is not set
490CONFIG_HAVE_IDE=y 569CONFIG_HAVE_IDE=y
491# CONFIG_IDE is not set 570# CONFIG_IDE is not set
492 571
@@ -506,7 +585,11 @@ CONFIG_HAVE_IDE=y
506# 585#
507 586
508# 587#
509# Enable only one of the two stacks, unless you know what you are doing 588# You can enable one or both FireWire driver stacks.
589#
590
591#
592# See the help texts for more information.
510# 593#
511# CONFIG_FIREWIRE is not set 594# CONFIG_FIREWIRE is not set
512# CONFIG_IEEE1394 is not set 595# CONFIG_IEEE1394 is not set
@@ -533,6 +616,7 @@ CONFIG_NETDEV_1000=y
533# CONFIG_E1000E is not set 616# CONFIG_E1000E is not set
534# CONFIG_IP1000 is not set 617# CONFIG_IP1000 is not set
535# CONFIG_IGB is not set 618# CONFIG_IGB is not set
619# CONFIG_IGBVF is not set
536# CONFIG_NS83820 is not set 620# CONFIG_NS83820 is not set
537# CONFIG_HAMACHI is not set 621# CONFIG_HAMACHI is not set
538# CONFIG_YELLOWFIN is not set 622# CONFIG_YELLOWFIN is not set
@@ -543,9 +627,13 @@ CONFIG_NETDEV_1000=y
543# CONFIG_VIA_VELOCITY is not set 627# CONFIG_VIA_VELOCITY is not set
544# CONFIG_TIGON3 is not set 628# CONFIG_TIGON3 is not set
545# CONFIG_BNX2 is not set 629# CONFIG_BNX2 is not set
630# CONFIG_CNIC is not set
631# CONFIG_MV643XX_ETH is not set
632# CONFIG_XILINX_LL_TEMAC is not set
546# CONFIG_QLA3XXX is not set 633# CONFIG_QLA3XXX is not set
547# CONFIG_ATL1 is not set 634# CONFIG_ATL1 is not set
548# CONFIG_ATL1E is not set 635# CONFIG_ATL1E is not set
636# CONFIG_ATL1C is not set
549# CONFIG_JME is not set 637# CONFIG_JME is not set
550CONFIG_NETDEV_10000=y 638CONFIG_NETDEV_10000=y
551# CONFIG_CHELSIO_T1 is not set 639# CONFIG_CHELSIO_T1 is not set
@@ -555,6 +643,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
555# CONFIG_IXGBE is not set 643# CONFIG_IXGBE is not set
556# CONFIG_IXGB is not set 644# CONFIG_IXGB is not set
557# CONFIG_S2IO is not set 645# CONFIG_S2IO is not set
646# CONFIG_VXGE is not set
558# CONFIG_MYRI10GE is not set 647# CONFIG_MYRI10GE is not set
559# CONFIG_NETXEN_NIC is not set 648# CONFIG_NETXEN_NIC is not set
560# CONFIG_NIU is not set 649# CONFIG_NIU is not set
@@ -564,14 +653,13 @@ CONFIG_CHELSIO_T3_DEPENDS=y
564# CONFIG_BNX2X is not set 653# CONFIG_BNX2X is not set
565# CONFIG_QLGE is not set 654# CONFIG_QLGE is not set
566# CONFIG_SFC is not set 655# CONFIG_SFC is not set
656# CONFIG_BE2NET is not set
567# CONFIG_TR is not set 657# CONFIG_TR is not set
568 658CONFIG_WLAN=y
569# 659# CONFIG_AIRO is not set
570# Wireless LAN 660# CONFIG_ATMEL is not set
571# 661# CONFIG_PRISM54 is not set
572# CONFIG_WLAN_PRE80211 is not set 662# CONFIG_HOSTAP is not set
573# CONFIG_WLAN_80211 is not set
574# CONFIG_IWLWIFI_LEDS is not set
575 663
576# 664#
577# Enable WiMAX (Networking options) to see the WiMAX drivers 665# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -584,6 +672,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
584# CONFIG_NETCONSOLE is not set 672# CONFIG_NETCONSOLE is not set
585# CONFIG_NETPOLL is not set 673# CONFIG_NETPOLL is not set
586# CONFIG_NET_POLL_CONTROLLER is not set 674# CONFIG_NET_POLL_CONTROLLER is not set
675# CONFIG_VMXNET3 is not set
587# CONFIG_ISDN is not set 676# CONFIG_ISDN is not set
588# CONFIG_PHONE is not set 677# CONFIG_PHONE is not set
589 678
@@ -629,6 +718,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
629# CONFIG_SERIAL_JSM is not set 718# CONFIG_SERIAL_JSM is not set
630CONFIG_SERIAL_OF_PLATFORM=y 719CONFIG_SERIAL_OF_PLATFORM=y
631# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 720# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
721# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
632CONFIG_UNIX98_PTYS=y 722CONFIG_UNIX98_PTYS=y
633# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 723# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
634CONFIG_LEGACY_PTYS=y 724CONFIG_LEGACY_PTYS=y
@@ -645,6 +735,11 @@ CONFIG_LEGACY_PTY_COUNT=256
645CONFIG_DEVPORT=y 735CONFIG_DEVPORT=y
646# CONFIG_I2C is not set 736# CONFIG_I2C is not set
647# CONFIG_SPI is not set 737# CONFIG_SPI is not set
738
739#
740# PPS support
741#
742# CONFIG_PPS is not set
648CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 743CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
649# CONFIG_GPIOLIB is not set 744# CONFIG_GPIOLIB is not set
650# CONFIG_W1 is not set 745# CONFIG_W1 is not set
@@ -667,27 +762,13 @@ CONFIG_SSB_POSSIBLE=y
667# CONFIG_HTC_PASIC3 is not set 762# CONFIG_HTC_PASIC3 is not set
668# CONFIG_MFD_TMIO is not set 763# CONFIG_MFD_TMIO is not set
669# CONFIG_REGULATOR is not set 764# CONFIG_REGULATOR is not set
670 765# CONFIG_MEDIA_SUPPORT is not set
671#
672# Multimedia devices
673#
674
675#
676# Multimedia core support
677#
678# CONFIG_VIDEO_DEV is not set
679# CONFIG_DVB_CORE is not set
680# CONFIG_VIDEO_MEDIA is not set
681
682#
683# Multimedia drivers
684#
685CONFIG_DAB=y
686 766
687# 767#
688# Graphics support 768# Graphics support
689# 769#
690# CONFIG_AGP is not set 770# CONFIG_AGP is not set
771CONFIG_VGA_ARB=y
691# CONFIG_DRM is not set 772# CONFIG_DRM is not set
692# CONFIG_VGASTATE is not set 773# CONFIG_VGASTATE is not set
693CONFIG_VIDEO_OUTPUT_CONTROL=m 774CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -712,7 +793,7 @@ CONFIG_USB_ARCH_HAS_EHCI=y
712# 793#
713 794
714# 795#
715# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 796# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
716# 797#
717# CONFIG_USB_GADGET is not set 798# CONFIG_USB_GADGET is not set
718 799
@@ -728,7 +809,12 @@ CONFIG_USB_ARCH_HAS_EHCI=y
728# CONFIG_EDAC is not set 809# CONFIG_EDAC is not set
729# CONFIG_RTC_CLASS is not set 810# CONFIG_RTC_CLASS is not set
730# CONFIG_DMADEVICES is not set 811# CONFIG_DMADEVICES is not set
812# CONFIG_AUXDISPLAY is not set
731# CONFIG_UIO is not set 813# CONFIG_UIO is not set
814
815#
816# TI VLYNQ
817#
732# CONFIG_STAGING is not set 818# CONFIG_STAGING is not set
733 819
734# 820#
@@ -739,14 +825,17 @@ CONFIG_EXT2_FS=y
739# CONFIG_EXT2_FS_XIP is not set 825# CONFIG_EXT2_FS_XIP is not set
740# CONFIG_EXT3_FS is not set 826# CONFIG_EXT3_FS is not set
741# CONFIG_EXT4_FS is not set 827# CONFIG_EXT4_FS is not set
828CONFIG_EXT4_USE_FOR_EXT23=y
742# CONFIG_REISERFS_FS is not set 829# CONFIG_REISERFS_FS is not set
743# CONFIG_JFS_FS is not set 830# CONFIG_JFS_FS is not set
744# CONFIG_FS_POSIX_ACL is not set 831# CONFIG_FS_POSIX_ACL is not set
745CONFIG_FILE_LOCKING=y
746# CONFIG_XFS_FS is not set 832# CONFIG_XFS_FS is not set
747# CONFIG_GFS2_FS is not set 833# CONFIG_GFS2_FS is not set
748# CONFIG_OCFS2_FS is not set 834# CONFIG_OCFS2_FS is not set
749# CONFIG_BTRFS_FS is not set 835# CONFIG_BTRFS_FS is not set
836# CONFIG_NILFS2_FS is not set
837CONFIG_FILE_LOCKING=y
838CONFIG_FSNOTIFY=y
750CONFIG_DNOTIFY=y 839CONFIG_DNOTIFY=y
751CONFIG_INOTIFY=y 840CONFIG_INOTIFY=y
752CONFIG_INOTIFY_USER=y 841CONFIG_INOTIFY_USER=y
@@ -756,6 +845,11 @@ CONFIG_INOTIFY_USER=y
756# CONFIG_FUSE_FS is not set 845# CONFIG_FUSE_FS is not set
757 846
758# 847#
848# Caches
849#
850# CONFIG_FSCACHE is not set
851
852#
759# CD-ROM/DVD Filesystems 853# CD-ROM/DVD Filesystems
760# 854#
761# CONFIG_ISO9660_FS is not set 855# CONFIG_ISO9660_FS is not set
@@ -820,7 +914,6 @@ CONFIG_LOCKD=y
820CONFIG_LOCKD_V4=y 914CONFIG_LOCKD_V4=y
821CONFIG_NFS_COMMON=y 915CONFIG_NFS_COMMON=y
822CONFIG_SUNRPC=y 916CONFIG_SUNRPC=y
823# CONFIG_SUNRPC_REGISTER_V4 is not set
824# CONFIG_RPCSEC_GSS_KRB5 is not set 917# CONFIG_RPCSEC_GSS_KRB5 is not set
825# CONFIG_RPCSEC_GSS_SPKM3 is not set 918# CONFIG_RPCSEC_GSS_SPKM3 is not set
826# CONFIG_SMB_FS is not set 919# CONFIG_SMB_FS is not set
@@ -836,6 +929,7 @@ CONFIG_SUNRPC=y
836CONFIG_MSDOS_PARTITION=y 929CONFIG_MSDOS_PARTITION=y
837# CONFIG_NLS is not set 930# CONFIG_NLS is not set
838# CONFIG_DLM is not set 931# CONFIG_DLM is not set
932# CONFIG_BINARY_PRINTF is not set
839 933
840# 934#
841# Library routines 935# Library routines
@@ -851,11 +945,13 @@ CONFIG_CRC32=y
851# CONFIG_LIBCRC32C is not set 945# CONFIG_LIBCRC32C is not set
852CONFIG_ZLIB_INFLATE=y 946CONFIG_ZLIB_INFLATE=y
853CONFIG_ZLIB_DEFLATE=y 947CONFIG_ZLIB_DEFLATE=y
854CONFIG_PLIST=y 948CONFIG_DECOMPRESS_GZIP=y
855CONFIG_HAS_IOMEM=y 949CONFIG_HAS_IOMEM=y
856CONFIG_HAS_IOPORT=y 950CONFIG_HAS_IOPORT=y
857CONFIG_HAS_DMA=y 951CONFIG_HAS_DMA=y
858CONFIG_HAVE_LMB=y 952CONFIG_HAVE_LMB=y
953CONFIG_NLATTR=y
954CONFIG_GENERIC_ATOMIC64=y
859 955
860# 956#
861# Kernel hacking 957# Kernel hacking
@@ -865,6 +961,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
865CONFIG_ENABLE_MUST_CHECK=y 961CONFIG_ENABLE_MUST_CHECK=y
866CONFIG_FRAME_WARN=1024 962CONFIG_FRAME_WARN=1024
867CONFIG_MAGIC_SYSRQ=y 963CONFIG_MAGIC_SYSRQ=y
964# CONFIG_STRIP_ASM_SYMS is not set
868# CONFIG_UNUSED_SYMBOLS is not set 965# CONFIG_UNUSED_SYMBOLS is not set
869CONFIG_DEBUG_FS=y 966CONFIG_DEBUG_FS=y
870# CONFIG_HEADERS_CHECK is not set 967# CONFIG_HEADERS_CHECK is not set
@@ -873,16 +970,23 @@ CONFIG_DEBUG_KERNEL=y
873CONFIG_DETECT_SOFTLOCKUP=y 970CONFIG_DETECT_SOFTLOCKUP=y
874# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 971# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
875CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 972CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
973CONFIG_DETECT_HUNG_TASK=y
974# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
975CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
876CONFIG_SCHED_DEBUG=y 976CONFIG_SCHED_DEBUG=y
877# CONFIG_SCHEDSTATS is not set 977# CONFIG_SCHEDSTATS is not set
878# CONFIG_TIMER_STATS is not set 978# CONFIG_TIMER_STATS is not set
879# CONFIG_DEBUG_OBJECTS is not set 979# CONFIG_DEBUG_OBJECTS is not set
880# CONFIG_SLUB_DEBUG_ON is not set 980# CONFIG_SLUB_DEBUG_ON is not set
881# CONFIG_SLUB_STATS is not set 981# CONFIG_SLUB_STATS is not set
982# CONFIG_DEBUG_KMEMLEAK is not set
882# CONFIG_DEBUG_RT_MUTEXES is not set 983# CONFIG_DEBUG_RT_MUTEXES is not set
883# CONFIG_RT_MUTEX_TESTER is not set 984# CONFIG_RT_MUTEX_TESTER is not set
884# CONFIG_DEBUG_SPINLOCK is not set 985# CONFIG_DEBUG_SPINLOCK is not set
885# CONFIG_DEBUG_MUTEXES is not set 986# CONFIG_DEBUG_MUTEXES is not set
987# CONFIG_DEBUG_LOCK_ALLOC is not set
988# CONFIG_PROVE_LOCKING is not set
989# CONFIG_LOCK_STAT is not set
886# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 990# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
887# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 991# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
888# CONFIG_DEBUG_KOBJECT is not set 992# CONFIG_DEBUG_KOBJECT is not set
@@ -894,35 +998,45 @@ CONFIG_SCHED_DEBUG=y
894# CONFIG_DEBUG_LIST is not set 998# CONFIG_DEBUG_LIST is not set
895# CONFIG_DEBUG_SG is not set 999# CONFIG_DEBUG_SG is not set
896# CONFIG_DEBUG_NOTIFIERS is not set 1000# CONFIG_DEBUG_NOTIFIERS is not set
897# CONFIG_BOOT_PRINTK_DELAY is not set 1001# CONFIG_DEBUG_CREDENTIALS is not set
898# CONFIG_RCU_TORTURE_TEST is not set 1002# CONFIG_RCU_TORTURE_TEST is not set
899# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1003# CONFIG_RCU_CPU_STALL_DETECTOR is not set
900# CONFIG_BACKTRACE_SELF_TEST is not set 1004# CONFIG_BACKTRACE_SELF_TEST is not set
901# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1005# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1006# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
902# CONFIG_FAULT_INJECTION is not set 1007# CONFIG_FAULT_INJECTION is not set
903# CONFIG_LATENCYTOP is not set 1008# CONFIG_LATENCYTOP is not set
904CONFIG_SYSCTL_SYSCALL_CHECK=y 1009CONFIG_SYSCTL_SYSCALL_CHECK=y
1010# CONFIG_DEBUG_PAGEALLOC is not set
905CONFIG_HAVE_FUNCTION_TRACER=y 1011CONFIG_HAVE_FUNCTION_TRACER=y
1012CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
906CONFIG_HAVE_DYNAMIC_FTRACE=y 1013CONFIG_HAVE_DYNAMIC_FTRACE=y
907CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1014CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
908 1015CONFIG_TRACING_SUPPORT=y
909# 1016CONFIG_FTRACE=y
910# Tracers
911#
912# CONFIG_FUNCTION_TRACER is not set 1017# CONFIG_FUNCTION_TRACER is not set
1018# CONFIG_IRQSOFF_TRACER is not set
913# CONFIG_SCHED_TRACER is not set 1019# CONFIG_SCHED_TRACER is not set
914# CONFIG_CONTEXT_SWITCH_TRACER is not set 1020# CONFIG_ENABLE_DEFAULT_TRACERS is not set
915# CONFIG_BOOT_TRACER is not set 1021# CONFIG_BOOT_TRACER is not set
916# CONFIG_TRACE_BRANCH_PROFILING is not set 1022CONFIG_BRANCH_PROFILE_NONE=y
1023# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1024# CONFIG_PROFILE_ALL_BRANCHES is not set
917# CONFIG_STACK_TRACER is not set 1025# CONFIG_STACK_TRACER is not set
918# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1026# CONFIG_KMEMTRACE is not set
1027# CONFIG_WORKQUEUE_TRACER is not set
1028# CONFIG_BLK_DEV_IO_TRACE is not set
1029# CONFIG_DYNAMIC_DEBUG is not set
1030# CONFIG_DMA_API_DEBUG is not set
919# CONFIG_SAMPLES is not set 1031# CONFIG_SAMPLES is not set
920CONFIG_HAVE_ARCH_KGDB=y 1032CONFIG_HAVE_ARCH_KGDB=y
921# CONFIG_KGDB is not set 1033# CONFIG_KGDB is not set
1034# CONFIG_PPC_DISABLE_WERROR is not set
1035CONFIG_PPC_WERROR=y
922CONFIG_PRINT_STACK_DEPTH=64 1036CONFIG_PRINT_STACK_DEPTH=64
923# CONFIG_DEBUG_STACKOVERFLOW is not set 1037# CONFIG_DEBUG_STACKOVERFLOW is not set
924# CONFIG_DEBUG_STACK_USAGE is not set 1038# CONFIG_DEBUG_STACK_USAGE is not set
925# CONFIG_DEBUG_PAGEALLOC is not set 1039# CONFIG_PPC_EMULATED_STATS is not set
926# CONFIG_CODE_PATCHING_SELFTEST is not set 1040# CONFIG_CODE_PATCHING_SELFTEST is not set
927# CONFIG_FTR_FIXUP_SELFTEST is not set 1041# CONFIG_FTR_FIXUP_SELFTEST is not set
928# CONFIG_MSI_BITMAP_SELFTEST is not set 1042# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -942,6 +1056,7 @@ CONFIG_PPC_EARLY_DEBUG=y
942CONFIG_PPC_EARLY_DEBUG_44x=y 1056CONFIG_PPC_EARLY_DEBUG_44x=y
943# CONFIG_PPC_EARLY_DEBUG_40x is not set 1057# CONFIG_PPC_EARLY_DEBUG_40x is not set
944# CONFIG_PPC_EARLY_DEBUG_CPM is not set 1058# CONFIG_PPC_EARLY_DEBUG_CPM is not set
1059# CONFIG_PPC_EARLY_DEBUG_USBGECKO is not set
945CONFIG_PPC_EARLY_DEBUG_44x_PHYSLOW=0xef600300 1060CONFIG_PPC_EARLY_DEBUG_44x_PHYSLOW=0xef600300
946CONFIG_PPC_EARLY_DEBUG_44x_PHYSHIGH=0x1 1061CONFIG_PPC_EARLY_DEBUG_44x_PHYSHIGH=0x1
947 1062
@@ -951,13 +1066,16 @@ CONFIG_PPC_EARLY_DEBUG_44x_PHYSHIGH=0x1
951# CONFIG_KEYS is not set 1066# CONFIG_KEYS is not set
952# CONFIG_SECURITY is not set 1067# CONFIG_SECURITY is not set
953# CONFIG_SECURITYFS is not set 1068# CONFIG_SECURITYFS is not set
954# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1069# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1070# CONFIG_DEFAULT_SECURITY_SMACK is not set
1071# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1072CONFIG_DEFAULT_SECURITY_DAC=y
1073CONFIG_DEFAULT_SECURITY=""
955CONFIG_CRYPTO=y 1074CONFIG_CRYPTO=y
956 1075
957# 1076#
958# Crypto core or helper 1077# Crypto core or helper
959# 1078#
960# CONFIG_CRYPTO_FIPS is not set
961CONFIG_CRYPTO_ALGAPI=y 1079CONFIG_CRYPTO_ALGAPI=y
962CONFIG_CRYPTO_ALGAPI2=y 1080CONFIG_CRYPTO_ALGAPI2=y
963CONFIG_CRYPTO_AEAD2=y 1081CONFIG_CRYPTO_AEAD2=y
@@ -966,10 +1084,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
966CONFIG_CRYPTO_HASH=y 1084CONFIG_CRYPTO_HASH=y
967CONFIG_CRYPTO_HASH2=y 1085CONFIG_CRYPTO_HASH2=y
968CONFIG_CRYPTO_RNG2=y 1086CONFIG_CRYPTO_RNG2=y
1087CONFIG_CRYPTO_PCOMP=y
969CONFIG_CRYPTO_MANAGER=y 1088CONFIG_CRYPTO_MANAGER=y
970CONFIG_CRYPTO_MANAGER2=y 1089CONFIG_CRYPTO_MANAGER2=y
971# CONFIG_CRYPTO_GF128MUL is not set 1090# CONFIG_CRYPTO_GF128MUL is not set
972# CONFIG_CRYPTO_NULL is not set 1091# CONFIG_CRYPTO_NULL is not set
1092CONFIG_CRYPTO_WORKQUEUE=y
973# CONFIG_CRYPTO_CRYPTD is not set 1093# CONFIG_CRYPTO_CRYPTD is not set
974# CONFIG_CRYPTO_AUTHENC is not set 1094# CONFIG_CRYPTO_AUTHENC is not set
975# CONFIG_CRYPTO_TEST is not set 1095# CONFIG_CRYPTO_TEST is not set
@@ -997,11 +1117,13 @@ CONFIG_CRYPTO_PCBC=y
997# 1117#
998# CONFIG_CRYPTO_HMAC is not set 1118# CONFIG_CRYPTO_HMAC is not set
999# CONFIG_CRYPTO_XCBC is not set 1119# CONFIG_CRYPTO_XCBC is not set
1120# CONFIG_CRYPTO_VMAC is not set
1000 1121
1001# 1122#
1002# Digest 1123# Digest
1003# 1124#
1004# CONFIG_CRYPTO_CRC32C is not set 1125# CONFIG_CRYPTO_CRC32C is not set
1126# CONFIG_CRYPTO_GHASH is not set
1005# CONFIG_CRYPTO_MD4 is not set 1127# CONFIG_CRYPTO_MD4 is not set
1006CONFIG_CRYPTO_MD5=y 1128CONFIG_CRYPTO_MD5=y
1007# CONFIG_CRYPTO_MICHAEL_MIC is not set 1129# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1038,6 +1160,7 @@ CONFIG_CRYPTO_DES=y
1038# Compression 1160# Compression
1039# 1161#
1040# CONFIG_CRYPTO_DEFLATE is not set 1162# CONFIG_CRYPTO_DEFLATE is not set
1163# CONFIG_CRYPTO_ZLIB is not set
1041# CONFIG_CRYPTO_LZO is not set 1164# CONFIG_CRYPTO_LZO is not set
1042 1165
1043# 1166#
@@ -1046,5 +1169,6 @@ CONFIG_CRYPTO_DES=y
1046# CONFIG_CRYPTO_ANSI_CPRNG is not set 1169# CONFIG_CRYPTO_ANSI_CPRNG is not set
1047CONFIG_CRYPTO_HW=y 1170CONFIG_CRYPTO_HW=y
1048# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1171# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1172# CONFIG_CRYPTO_DEV_PPC4XX is not set
1049# CONFIG_PPC_CLOCK is not set 1173# CONFIG_PPC_CLOCK is not set
1050# CONFIG_VIRTUALIZATION is not set 1174# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/redwood_defconfig b/arch/powerpc/configs/44x/redwood_defconfig
index ed31d4f17b5a..a67ec91a28c3 100644
--- a/arch/powerpc/configs/44x/redwood_defconfig
+++ b/arch/powerpc/configs/44x/redwood_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc3 3# Linux kernel version: 2.6.33-rc1
4# Wed Feb 4 14:31:09 2009 4# Mon Jan 4 15:05:05 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -20,6 +20,7 @@ CONFIG_BOOKE=y
20CONFIG_PTE_64BIT=y 20CONFIG_PTE_64BIT=y
21CONFIG_PHYS_64BIT=y 21CONFIG_PHYS_64BIT=y
22CONFIG_PPC_MMU_NOHASH=y 22CONFIG_PPC_MMU_NOHASH=y
23CONFIG_PPC_MMU_NOHASH_32=y
23# CONFIG_PPC_MM_SLICES is not set 24# CONFIG_PPC_MM_SLICES is not set
24CONFIG_NOT_COHERENT_CACHE=y 25CONFIG_NOT_COHERENT_CACHE=y
25CONFIG_PPC32=y 26CONFIG_PPC32=y
@@ -31,15 +32,18 @@ CONFIG_GENERIC_TIME=y
31CONFIG_GENERIC_TIME_VSYSCALL=y 32CONFIG_GENERIC_TIME_VSYSCALL=y
32CONFIG_GENERIC_CLOCKEVENTS=y 33CONFIG_GENERIC_CLOCKEVENTS=y
33CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
34# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
35CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
36CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
37CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
38CONFIG_LOCKDEP_SUPPORT=y 43CONFIG_LOCKDEP_SUPPORT=y
39CONFIG_RWSEM_XCHGADD_ALGORITHM=y 44CONFIG_RWSEM_XCHGADD_ALGORITHM=y
40CONFIG_ARCH_HAS_ILOG2_U32=y 45CONFIG_ARCH_HAS_ILOG2_U32=y
41CONFIG_GENERIC_HWEIGHT=y 46CONFIG_GENERIC_HWEIGHT=y
42CONFIG_GENERIC_CALIBRATE_DELAY=y
43CONFIG_GENERIC_FIND_NEXT_BIT=y 47CONFIG_GENERIC_FIND_NEXT_BIT=y
44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 48# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
45CONFIG_PPC=y 49CONFIG_PPC=y
@@ -53,11 +57,15 @@ CONFIG_PPC_UDBG_16550=y
53# CONFIG_GENERIC_TBSYNC is not set 57# CONFIG_GENERIC_TBSYNC is not set
54CONFIG_AUDIT_ARCH=y 58CONFIG_AUDIT_ARCH=y
55CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y
56# CONFIG_DEFAULT_UIMAGE is not set 61# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
57CONFIG_PPC_DCR_NATIVE=y 63CONFIG_PPC_DCR_NATIVE=y
58# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
59CONFIG_PPC_DCR=y 65CONFIG_PPC_DCR=y
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
60CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 67CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
68CONFIG_CONSTRUCTORS=y
61 69
62# 70#
63# General setup 71# General setup
@@ -71,6 +79,7 @@ CONFIG_SWAP=y
71CONFIG_SYSVIPC=y 79CONFIG_SYSVIPC=y
72CONFIG_SYSVIPC_SYSCTL=y 80CONFIG_SYSVIPC_SYSCTL=y
73CONFIG_POSIX_MQUEUE=y 81CONFIG_POSIX_MQUEUE=y
82CONFIG_POSIX_MQUEUE_SYSCTL=y
74# CONFIG_BSD_PROCESS_ACCT is not set 83# CONFIG_BSD_PROCESS_ACCT is not set
75# CONFIG_TASKSTATS is not set 84# CONFIG_TASKSTATS is not set
76# CONFIG_AUDIT is not set 85# CONFIG_AUDIT is not set
@@ -78,11 +87,13 @@ CONFIG_POSIX_MQUEUE=y
78# 87#
79# RCU Subsystem 88# RCU Subsystem
80# 89#
81CONFIG_CLASSIC_RCU=y 90CONFIG_TREE_RCU=y
82# CONFIG_TREE_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
83# CONFIG_PREEMPT_RCU is not set 92# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set
84# CONFIG_TREE_RCU_TRACE is not set 96# CONFIG_TREE_RCU_TRACE is not set
85# CONFIG_PREEMPT_RCU_TRACE is not set
86# CONFIG_IKCONFIG is not set 97# CONFIG_IKCONFIG is not set
87CONFIG_LOG_BUF_SHIFT=14 98CONFIG_LOG_BUF_SHIFT=14
88# CONFIG_GROUP_SCHED is not set 99# CONFIG_GROUP_SCHED is not set
@@ -93,8 +104,12 @@ CONFIG_SYSFS_DEPRECATED_V2=y
93# CONFIG_NAMESPACES is not set 104# CONFIG_NAMESPACES is not set
94CONFIG_BLK_DEV_INITRD=y 105CONFIG_BLK_DEV_INITRD=y
95CONFIG_INITRAMFS_SOURCE="" 106CONFIG_INITRAMFS_SOURCE=""
107CONFIG_RD_GZIP=y
108# CONFIG_RD_BZIP2 is not set
109# CONFIG_RD_LZMA is not set
96# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 110# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
97CONFIG_SYSCTL=y 111CONFIG_SYSCTL=y
112CONFIG_ANON_INODES=y
98CONFIG_EMBEDDED=y 113CONFIG_EMBEDDED=y
99CONFIG_SYSCTL_SYSCALL=y 114CONFIG_SYSCTL_SYSCALL=y
100CONFIG_KALLSYMS=y 115CONFIG_KALLSYMS=y
@@ -104,19 +119,25 @@ CONFIG_HOTPLUG=y
104CONFIG_PRINTK=y 119CONFIG_PRINTK=y
105CONFIG_BUG=y 120CONFIG_BUG=y
106CONFIG_ELF_CORE=y 121CONFIG_ELF_CORE=y
107CONFIG_COMPAT_BRK=y
108CONFIG_BASE_FULL=y 122CONFIG_BASE_FULL=y
109CONFIG_FUTEX=y 123CONFIG_FUTEX=y
110CONFIG_ANON_INODES=y
111CONFIG_EPOLL=y 124CONFIG_EPOLL=y
112CONFIG_SIGNALFD=y 125CONFIG_SIGNALFD=y
113CONFIG_TIMERFD=y 126CONFIG_TIMERFD=y
114CONFIG_EVENTFD=y 127CONFIG_EVENTFD=y
115CONFIG_SHMEM=y 128CONFIG_SHMEM=y
116CONFIG_AIO=y 129CONFIG_AIO=y
130CONFIG_HAVE_PERF_EVENTS=y
131
132#
133# Kernel Performance Events And Counters
134#
135# CONFIG_PERF_EVENTS is not set
136# CONFIG_PERF_COUNTERS is not set
117CONFIG_VM_EVENT_COUNTERS=y 137CONFIG_VM_EVENT_COUNTERS=y
118CONFIG_PCI_QUIRKS=y 138CONFIG_PCI_QUIRKS=y
119CONFIG_SLUB_DEBUG=y 139CONFIG_SLUB_DEBUG=y
140CONFIG_COMPAT_BRK=y
120# CONFIG_SLAB is not set 141# CONFIG_SLAB is not set
121CONFIG_SLUB=y 142CONFIG_SLUB=y
122# CONFIG_SLOB is not set 143# CONFIG_SLOB is not set
@@ -128,6 +149,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
128CONFIG_HAVE_KPROBES=y 149CONFIG_HAVE_KPROBES=y
129CONFIG_HAVE_KRETPROBES=y 150CONFIG_HAVE_KRETPROBES=y
130CONFIG_HAVE_ARCH_TRACEHOOK=y 151CONFIG_HAVE_ARCH_TRACEHOOK=y
152CONFIG_HAVE_DMA_ATTRS=y
153CONFIG_HAVE_DMA_API_DEBUG=y
154
155#
156# GCOV-based kernel profiling
157#
158# CONFIG_GCOV_KERNEL is not set
159# CONFIG_SLOW_WORK is not set
131# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 160# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
132CONFIG_SLABINFO=y 161CONFIG_SLABINFO=y
133CONFIG_RT_MUTEXES=y 162CONFIG_RT_MUTEXES=y
@@ -139,8 +168,7 @@ CONFIG_MODULE_UNLOAD=y
139# CONFIG_MODVERSIONS is not set 168# CONFIG_MODVERSIONS is not set
140# CONFIG_MODULE_SRCVERSION_ALL is not set 169# CONFIG_MODULE_SRCVERSION_ALL is not set
141CONFIG_BLOCK=y 170CONFIG_BLOCK=y
142CONFIG_LBD=y 171CONFIG_LBDAF=y
143# CONFIG_BLK_DEV_IO_TRACE is not set
144# CONFIG_BLK_DEV_BSG is not set 172# CONFIG_BLK_DEV_BSG is not set
145# CONFIG_BLK_DEV_INTEGRITY is not set 173# CONFIG_BLK_DEV_INTEGRITY is not set
146 174
@@ -148,14 +176,41 @@ CONFIG_LBD=y
148# IO Schedulers 176# IO Schedulers
149# 177#
150CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
151CONFIG_IOSCHED_AS=y
152CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
153CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
154CONFIG_DEFAULT_AS=y
155# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
156# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
157# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
158CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
159# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
160CONFIG_PPC4xx_PCI_EXPRESS=y 215CONFIG_PPC4xx_PCI_EXPRESS=y
161 216
@@ -177,6 +232,7 @@ CONFIG_PPC4xx_PCI_EXPRESS=y
177# CONFIG_CANYONLANDS is not set 232# CONFIG_CANYONLANDS is not set
178# CONFIG_GLACIER is not set 233# CONFIG_GLACIER is not set
179CONFIG_REDWOOD=y 234CONFIG_REDWOOD=y
235# CONFIG_EIGER is not set
180# CONFIG_YOSEMITE is not set 236# CONFIG_YOSEMITE is not set
181# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 237# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
182CONFIG_PPC44x_SIMPLE=y 238CONFIG_PPC44x_SIMPLE=y
@@ -219,10 +275,12 @@ CONFIG_BINFMT_ELF=y
219# CONFIG_BINFMT_MISC is not set 275# CONFIG_BINFMT_MISC is not set
220# CONFIG_MATH_EMULATION is not set 276# CONFIG_MATH_EMULATION is not set
221# CONFIG_IOMMU_HELPER is not set 277# CONFIG_IOMMU_HELPER is not set
222CONFIG_PPC_NEED_DMA_SYNC_OPS=y 278# CONFIG_SWIOTLB is not set
223CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 279CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
224CONFIG_ARCH_HAS_WALK_MEMORY=y 280CONFIG_ARCH_HAS_WALK_MEMORY=y
225CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
282CONFIG_SPARSE_IRQ=y
283CONFIG_MAX_ACTIVE_REGIONS=32
226CONFIG_ARCH_FLATMEM_ENABLE=y 284CONFIG_ARCH_FLATMEM_ENABLE=y
227CONFIG_ARCH_POPULATES_NODE_MAP=y 285CONFIG_ARCH_POPULATES_NODE_MAP=y
228CONFIG_SELECT_MEMORY_MODEL=y 286CONFIG_SELECT_MEMORY_MODEL=y
@@ -238,10 +296,13 @@ CONFIG_PHYS_ADDR_T_64BIT=y
238CONFIG_ZONE_DMA_FLAG=1 296CONFIG_ZONE_DMA_FLAG=1
239CONFIG_BOUNCE=y 297CONFIG_BOUNCE=y
240CONFIG_VIRT_TO_BUS=y 298CONFIG_VIRT_TO_BUS=y
241CONFIG_UNEVICTABLE_LRU=y 299# CONFIG_KSM is not set
300CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
301CONFIG_STDBINUTILS=y
242CONFIG_PPC_4K_PAGES=y 302CONFIG_PPC_4K_PAGES=y
243# CONFIG_PPC_16K_PAGES is not set 303# CONFIG_PPC_16K_PAGES is not set
244# CONFIG_PPC_64K_PAGES is not set 304# CONFIG_PPC_64K_PAGES is not set
305# CONFIG_PPC_256K_PAGES is not set
245CONFIG_FORCE_MAX_ZONEORDER=11 306CONFIG_FORCE_MAX_ZONEORDER=11
246CONFIG_PROC_DEVICETREE=y 307CONFIG_PROC_DEVICETREE=y
247CONFIG_CMDLINE_BOOL=y 308CONFIG_CMDLINE_BOOL=y
@@ -262,12 +323,15 @@ CONFIG_PCI_DOMAINS=y
262CONFIG_PCI_SYSCALL=y 323CONFIG_PCI_SYSCALL=y
263CONFIG_PCIEPORTBUS=y 324CONFIG_PCIEPORTBUS=y
264CONFIG_PCIEAER=y 325CONFIG_PCIEAER=y
326# CONFIG_PCIE_ECRC is not set
327# CONFIG_PCIEAER_INJECT is not set
265# CONFIG_PCIEASPM is not set 328# CONFIG_PCIEASPM is not set
266CONFIG_ARCH_SUPPORTS_MSI=y 329CONFIG_ARCH_SUPPORTS_MSI=y
267# CONFIG_PCI_MSI is not set 330# CONFIG_PCI_MSI is not set
268# CONFIG_PCI_LEGACY is not set 331# CONFIG_PCI_LEGACY is not set
269# CONFIG_PCI_DEBUG is not set 332# CONFIG_PCI_DEBUG is not set
270# CONFIG_PCI_STUB is not set 333# CONFIG_PCI_STUB is not set
334# CONFIG_PCI_IOV is not set
271# CONFIG_PCCARD is not set 335# CONFIG_PCCARD is not set
272# CONFIG_HOTPLUG_PCI is not set 336# CONFIG_HOTPLUG_PCI is not set
273# CONFIG_HAS_RAPIDIO is not set 337# CONFIG_HAS_RAPIDIO is not set
@@ -285,14 +349,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
285CONFIG_KERNEL_START=0xc0000000 349CONFIG_KERNEL_START=0xc0000000
286CONFIG_PHYSICAL_START=0x00000000 350CONFIG_PHYSICAL_START=0x00000000
287CONFIG_TASK_SIZE=0xc0000000 351CONFIG_TASK_SIZE=0xc0000000
288CONFIG_CONSISTENT_START=0xff100000
289CONFIG_CONSISTENT_SIZE=0x00200000 352CONFIG_CONSISTENT_SIZE=0x00200000
290CONFIG_NET=y 353CONFIG_NET=y
291 354
292# 355#
293# Networking options 356# Networking options
294# 357#
295CONFIG_COMPAT_NET_DEV_OPS=y
296CONFIG_PACKET=y 358CONFIG_PACKET=y
297# CONFIG_PACKET_MMAP is not set 359# CONFIG_PACKET_MMAP is not set
298CONFIG_UNIX=y 360CONFIG_UNIX=y
@@ -329,6 +391,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
329# CONFIG_NETFILTER is not set 391# CONFIG_NETFILTER is not set
330# CONFIG_IP_DCCP is not set 392# CONFIG_IP_DCCP is not set
331# CONFIG_IP_SCTP is not set 393# CONFIG_IP_SCTP is not set
394# CONFIG_RDS is not set
332# CONFIG_TIPC is not set 395# CONFIG_TIPC is not set
333# CONFIG_ATM is not set 396# CONFIG_ATM is not set
334# CONFIG_BRIDGE is not set 397# CONFIG_BRIDGE is not set
@@ -342,6 +405,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
342# CONFIG_LAPB is not set 405# CONFIG_LAPB is not set
343# CONFIG_ECONET is not set 406# CONFIG_ECONET is not set
344# CONFIG_WAN_ROUTER is not set 407# CONFIG_WAN_ROUTER is not set
408# CONFIG_PHONET is not set
409# CONFIG_IEEE802154 is not set
345# CONFIG_NET_SCHED is not set 410# CONFIG_NET_SCHED is not set
346# CONFIG_DCB is not set 411# CONFIG_DCB is not set
347 412
@@ -354,13 +419,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
354# CONFIG_IRDA is not set 419# CONFIG_IRDA is not set
355# CONFIG_BT is not set 420# CONFIG_BT is not set
356# CONFIG_AF_RXRPC is not set 421# CONFIG_AF_RXRPC is not set
357# CONFIG_PHONET is not set
358CONFIG_WIRELESS=y 422CONFIG_WIRELESS=y
359# CONFIG_CFG80211 is not set 423# CONFIG_CFG80211 is not set
360CONFIG_WIRELESS_OLD_REGULATORY=y
361# CONFIG_WIRELESS_EXT is not set
362# CONFIG_LIB80211 is not set 424# CONFIG_LIB80211 is not set
363# CONFIG_MAC80211 is not set 425
426#
427# CFG80211 needs to be enabled for MAC80211
428#
364# CONFIG_WIMAX is not set 429# CONFIG_WIMAX is not set
365# CONFIG_RFKILL is not set 430# CONFIG_RFKILL is not set
366# CONFIG_NET_9P is not set 431# CONFIG_NET_9P is not set
@@ -373,6 +438,7 @@ CONFIG_WIRELESS_OLD_REGULATORY=y
373# Generic Driver Options 438# Generic Driver Options
374# 439#
375CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 440CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
441# CONFIG_DEVTMPFS is not set
376CONFIG_STANDALONE=y 442CONFIG_STANDALONE=y
377CONFIG_PREVENT_FIRMWARE_BUILD=y 443CONFIG_PREVENT_FIRMWARE_BUILD=y
378CONFIG_FW_LOADER=y 444CONFIG_FW_LOADER=y
@@ -385,9 +451,9 @@ CONFIG_CONNECTOR=y
385CONFIG_PROC_EVENTS=y 451CONFIG_PROC_EVENTS=y
386CONFIG_MTD=y 452CONFIG_MTD=y
387# CONFIG_MTD_DEBUG is not set 453# CONFIG_MTD_DEBUG is not set
454# CONFIG_MTD_TESTS is not set
388CONFIG_MTD_CONCAT=y 455CONFIG_MTD_CONCAT=y
389CONFIG_MTD_PARTITIONS=y 456CONFIG_MTD_PARTITIONS=y
390# CONFIG_MTD_TESTS is not set
391# CONFIG_MTD_REDBOOT_PARTS is not set 457# CONFIG_MTD_REDBOOT_PARTS is not set
392CONFIG_MTD_CMDLINE_PARTS=y 458CONFIG_MTD_CMDLINE_PARTS=y
393CONFIG_MTD_OF_PARTS=y 459CONFIG_MTD_OF_PARTS=y
@@ -462,7 +528,6 @@ CONFIG_MTD_PHYSMAP_OF=y
462# LPDDR flash memory drivers 528# LPDDR flash memory drivers
463# 529#
464# CONFIG_MTD_LPDDR is not set 530# CONFIG_MTD_LPDDR is not set
465# CONFIG_MTD_QINFO_PROBE is not set
466 531
467# 532#
468# UBI - Unsorted block images 533# UBI - Unsorted block images
@@ -479,6 +544,7 @@ CONFIG_BLK_DEV=y
479# CONFIG_BLK_DEV_UMEM is not set 544# CONFIG_BLK_DEV_UMEM is not set
480# CONFIG_BLK_DEV_COW_COMMON is not set 545# CONFIG_BLK_DEV_COW_COMMON is not set
481# CONFIG_BLK_DEV_LOOP is not set 546# CONFIG_BLK_DEV_LOOP is not set
547# CONFIG_BLK_DEV_DRBD is not set
482# CONFIG_BLK_DEV_NBD is not set 548# CONFIG_BLK_DEV_NBD is not set
483# CONFIG_BLK_DEV_SX8 is not set 549# CONFIG_BLK_DEV_SX8 is not set
484CONFIG_BLK_DEV_RAM=y 550CONFIG_BLK_DEV_RAM=y
@@ -512,10 +578,6 @@ CONFIG_BLK_DEV_SD=y
512# CONFIG_BLK_DEV_SR is not set 578# CONFIG_BLK_DEV_SR is not set
513CONFIG_CHR_DEV_SG=y 579CONFIG_CHR_DEV_SG=y
514# CONFIG_CHR_DEV_SCH is not set 580# CONFIG_CHR_DEV_SCH is not set
515
516#
517# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
518#
519# CONFIG_SCSI_MULTI_LUN is not set 581# CONFIG_SCSI_MULTI_LUN is not set
520# CONFIG_SCSI_CONSTANTS is not set 582# CONFIG_SCSI_CONSTANTS is not set
521# CONFIG_SCSI_LOGGING is not set 583# CONFIG_SCSI_LOGGING is not set
@@ -533,23 +595,30 @@ CONFIG_SCSI_SAS_ATTRS=y
533# CONFIG_SCSI_SRP_ATTRS is not set 595# CONFIG_SCSI_SRP_ATTRS is not set
534CONFIG_SCSI_LOWLEVEL=y 596CONFIG_SCSI_LOWLEVEL=y
535# CONFIG_ISCSI_TCP is not set 597# CONFIG_ISCSI_TCP is not set
598# CONFIG_SCSI_BNX2_ISCSI is not set
599# CONFIG_BE2ISCSI is not set
536# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 600# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
601# CONFIG_SCSI_HPSA is not set
537# CONFIG_SCSI_3W_9XXX is not set 602# CONFIG_SCSI_3W_9XXX is not set
603# CONFIG_SCSI_3W_SAS is not set
538# CONFIG_SCSI_ACARD is not set 604# CONFIG_SCSI_ACARD is not set
539# CONFIG_SCSI_AACRAID is not set 605# CONFIG_SCSI_AACRAID is not set
540# CONFIG_SCSI_AIC7XXX is not set 606# CONFIG_SCSI_AIC7XXX is not set
541# CONFIG_SCSI_AIC7XXX_OLD is not set 607# CONFIG_SCSI_AIC7XXX_OLD is not set
542# CONFIG_SCSI_AIC79XX is not set 608# CONFIG_SCSI_AIC79XX is not set
543# CONFIG_SCSI_AIC94XX is not set 609# CONFIG_SCSI_AIC94XX is not set
610# CONFIG_SCSI_MVSAS is not set
544# CONFIG_SCSI_DPT_I2O is not set 611# CONFIG_SCSI_DPT_I2O is not set
545# CONFIG_SCSI_ADVANSYS is not set 612# CONFIG_SCSI_ADVANSYS is not set
546# CONFIG_SCSI_ARCMSR is not set 613# CONFIG_SCSI_ARCMSR is not set
547# CONFIG_MEGARAID_NEWGEN is not set 614# CONFIG_MEGARAID_NEWGEN is not set
548# CONFIG_MEGARAID_LEGACY is not set 615# CONFIG_MEGARAID_LEGACY is not set
549# CONFIG_MEGARAID_SAS is not set 616# CONFIG_MEGARAID_SAS is not set
617# CONFIG_SCSI_MPT2SAS is not set
550# CONFIG_SCSI_HPTIOP is not set 618# CONFIG_SCSI_HPTIOP is not set
551# CONFIG_SCSI_BUSLOGIC is not set 619# CONFIG_SCSI_BUSLOGIC is not set
552# CONFIG_LIBFC is not set 620# CONFIG_LIBFC is not set
621# CONFIG_LIBFCOE is not set
553# CONFIG_FCOE is not set 622# CONFIG_FCOE is not set
554# CONFIG_SCSI_DMX3191D is not set 623# CONFIG_SCSI_DMX3191D is not set
555# CONFIG_SCSI_EATA is not set 624# CONFIG_SCSI_EATA is not set
@@ -558,7 +627,6 @@ CONFIG_SCSI_LOWLEVEL=y
558# CONFIG_SCSI_IPS is not set 627# CONFIG_SCSI_IPS is not set
559# CONFIG_SCSI_INITIO is not set 628# CONFIG_SCSI_INITIO is not set
560# CONFIG_SCSI_INIA100 is not set 629# CONFIG_SCSI_INIA100 is not set
561# CONFIG_SCSI_MVSAS is not set
562# CONFIG_SCSI_STEX is not set 630# CONFIG_SCSI_STEX is not set
563# CONFIG_SCSI_SYM53C8XX_2 is not set 631# CONFIG_SCSI_SYM53C8XX_2 is not set
564# CONFIG_SCSI_QLOGIC_1280 is not set 632# CONFIG_SCSI_QLOGIC_1280 is not set
@@ -569,8 +637,12 @@ CONFIG_SCSI_LOWLEVEL=y
569# CONFIG_SCSI_DC390T is not set 637# CONFIG_SCSI_DC390T is not set
570# CONFIG_SCSI_NSP32 is not set 638# CONFIG_SCSI_NSP32 is not set
571# CONFIG_SCSI_DEBUG is not set 639# CONFIG_SCSI_DEBUG is not set
640# CONFIG_SCSI_PMCRAID is not set
641# CONFIG_SCSI_PM8001 is not set
572# CONFIG_SCSI_SRP is not set 642# CONFIG_SCSI_SRP is not set
643# CONFIG_SCSI_BFA_FC is not set
573# CONFIG_SCSI_DH is not set 644# CONFIG_SCSI_DH is not set
645# CONFIG_SCSI_OSD_INITIATOR is not set
574# CONFIG_ATA is not set 646# CONFIG_ATA is not set
575# CONFIG_MD is not set 647# CONFIG_MD is not set
576CONFIG_FUSION=y 648CONFIG_FUSION=y
@@ -586,7 +658,11 @@ CONFIG_FUSION_MAX_SGE=128
586# 658#
587 659
588# 660#
589# Enable only one of the two stacks, unless you know what you are doing 661# You can enable one or both FireWire driver stacks.
662#
663
664#
665# See the help texts for more information.
590# 666#
591# CONFIG_FIREWIRE is not set 667# CONFIG_FIREWIRE is not set
592# CONFIG_IEEE1394 is not set 668# CONFIG_IEEE1394 is not set
@@ -614,6 +690,8 @@ CONFIG_NET_ETHERNET=y
614# CONFIG_SUNGEM is not set 690# CONFIG_SUNGEM is not set
615# CONFIG_CASSINI is not set 691# CONFIG_CASSINI is not set
616# CONFIG_NET_VENDOR_3COM is not set 692# CONFIG_NET_VENDOR_3COM is not set
693# CONFIG_ETHOC is not set
694# CONFIG_DNET is not set
617# CONFIG_NET_TULIP is not set 695# CONFIG_NET_TULIP is not set
618# CONFIG_HP100 is not set 696# CONFIG_HP100 is not set
619CONFIG_IBM_NEW_EMAC=y 697CONFIG_IBM_NEW_EMAC=y
@@ -632,7 +710,10 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
632# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 710# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
633# CONFIG_NET_PCI is not set 711# CONFIG_NET_PCI is not set
634# CONFIG_B44 is not set 712# CONFIG_B44 is not set
713# CONFIG_KS8842 is not set
714# CONFIG_KS8851_MLL is not set
635# CONFIG_ATL2 is not set 715# CONFIG_ATL2 is not set
716# CONFIG_XILINX_EMACLITE is not set
636CONFIG_NETDEV_1000=y 717CONFIG_NETDEV_1000=y
637# CONFIG_ACENIC is not set 718# CONFIG_ACENIC is not set
638# CONFIG_DL2K is not set 719# CONFIG_DL2K is not set
@@ -640,6 +721,7 @@ CONFIG_NETDEV_1000=y
640CONFIG_E1000E=y 721CONFIG_E1000E=y
641# CONFIG_IP1000 is not set 722# CONFIG_IP1000 is not set
642# CONFIG_IGB is not set 723# CONFIG_IGB is not set
724# CONFIG_IGBVF is not set
643# CONFIG_NS83820 is not set 725# CONFIG_NS83820 is not set
644# CONFIG_HAMACHI is not set 726# CONFIG_HAMACHI is not set
645# CONFIG_YELLOWFIN is not set 727# CONFIG_YELLOWFIN is not set
@@ -650,19 +732,21 @@ CONFIG_E1000E=y
650# CONFIG_VIA_VELOCITY is not set 732# CONFIG_VIA_VELOCITY is not set
651# CONFIG_TIGON3 is not set 733# CONFIG_TIGON3 is not set
652# CONFIG_BNX2 is not set 734# CONFIG_BNX2 is not set
735# CONFIG_CNIC is not set
736# CONFIG_MV643XX_ETH is not set
737# CONFIG_XILINX_LL_TEMAC is not set
653# CONFIG_QLA3XXX is not set 738# CONFIG_QLA3XXX is not set
654# CONFIG_ATL1 is not set 739# CONFIG_ATL1 is not set
655# CONFIG_ATL1E is not set 740# CONFIG_ATL1E is not set
741# CONFIG_ATL1C is not set
656# CONFIG_JME is not set 742# CONFIG_JME is not set
657# CONFIG_NETDEV_10000 is not set 743# CONFIG_NETDEV_10000 is not set
658# CONFIG_TR is not set 744# CONFIG_TR is not set
659 745CONFIG_WLAN=y
660# 746# CONFIG_AIRO is not set
661# Wireless LAN 747# CONFIG_ATMEL is not set
662# 748# CONFIG_PRISM54 is not set
663# CONFIG_WLAN_PRE80211 is not set 749# CONFIG_HOSTAP is not set
664# CONFIG_WLAN_80211 is not set
665# CONFIG_IWLWIFI_LEDS is not set
666 750
667# 751#
668# Enable WiMAX (Networking options) to see the WiMAX drivers 752# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -676,6 +760,7 @@ CONFIG_E1000E=y
676# CONFIG_NETCONSOLE is not set 760# CONFIG_NETCONSOLE is not set
677# CONFIG_NETPOLL is not set 761# CONFIG_NETPOLL is not set
678# CONFIG_NET_POLL_CONTROLLER is not set 762# CONFIG_NET_POLL_CONTROLLER is not set
763# CONFIG_VMXNET3 is not set
679# CONFIG_ISDN is not set 764# CONFIG_ISDN is not set
680# CONFIG_PHONE is not set 765# CONFIG_PHONE is not set
681 766
@@ -721,6 +806,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
721# CONFIG_SERIAL_JSM is not set 806# CONFIG_SERIAL_JSM is not set
722CONFIG_SERIAL_OF_PLATFORM=y 807CONFIG_SERIAL_OF_PLATFORM=y
723# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 808# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
809# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
724CONFIG_UNIX98_PTYS=y 810CONFIG_UNIX98_PTYS=y
725# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 811# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
726CONFIG_LEGACY_PTYS=y 812CONFIG_LEGACY_PTYS=y
@@ -737,6 +823,7 @@ CONFIG_LEGACY_PTY_COUNT=256
737CONFIG_DEVPORT=y 823CONFIG_DEVPORT=y
738CONFIG_I2C=y 824CONFIG_I2C=y
739CONFIG_I2C_BOARDINFO=y 825CONFIG_I2C_BOARDINFO=y
826CONFIG_I2C_COMPAT=y
740CONFIG_I2C_CHARDEV=y 827CONFIG_I2C_CHARDEV=y
741CONFIG_I2C_HELPER_AUTO=y 828CONFIG_I2C_HELPER_AUTO=y
742 829
@@ -777,11 +864,6 @@ CONFIG_I2C_IBM_IIC=y
777# CONFIG_I2C_TAOS_EVM is not set 864# CONFIG_I2C_TAOS_EVM is not set
778 865
779# 866#
780# Graphics adapter I2C/DDC channel drivers
781#
782# CONFIG_I2C_VOODOO3 is not set
783
784#
785# Other I2C/SMBus bus drivers 867# Other I2C/SMBus bus drivers
786# 868#
787# CONFIG_I2C_PCA_PLATFORM is not set 869# CONFIG_I2C_PCA_PLATFORM is not set
@@ -790,25 +872,23 @@ CONFIG_I2C_IBM_IIC=y
790# 872#
791# Miscellaneous I2C Chip support 873# Miscellaneous I2C Chip support
792# 874#
793# CONFIG_DS1682 is not set
794# CONFIG_SENSORS_PCF8574 is not set
795# CONFIG_PCF8575 is not set
796# CONFIG_SENSORS_PCA9539 is not set
797# CONFIG_SENSORS_PCF8591 is not set
798# CONFIG_SENSORS_MAX6875 is not set
799# CONFIG_SENSORS_TSL2550 is not set 875# CONFIG_SENSORS_TSL2550 is not set
800CONFIG_I2C_DEBUG_CORE=y 876CONFIG_I2C_DEBUG_CORE=y
801CONFIG_I2C_DEBUG_ALGO=y 877CONFIG_I2C_DEBUG_ALGO=y
802CONFIG_I2C_DEBUG_BUS=y 878CONFIG_I2C_DEBUG_BUS=y
803CONFIG_I2C_DEBUG_CHIP=y 879CONFIG_I2C_DEBUG_CHIP=y
804# CONFIG_SPI is not set 880# CONFIG_SPI is not set
881
882#
883# PPS support
884#
885# CONFIG_PPS is not set
805CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 886CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
806# CONFIG_GPIOLIB is not set 887# CONFIG_GPIOLIB is not set
807# CONFIG_W1 is not set 888# CONFIG_W1 is not set
808# CONFIG_POWER_SUPPLY is not set 889# CONFIG_POWER_SUPPLY is not set
809# CONFIG_HWMON is not set 890# CONFIG_HWMON is not set
810# CONFIG_THERMAL is not set 891# CONFIG_THERMAL is not set
811# CONFIG_THERMAL_HWMON is not set
812# CONFIG_WATCHDOG is not set 892# CONFIG_WATCHDOG is not set
813CONFIG_SSB_POSSIBLE=y 893CONFIG_SSB_POSSIBLE=y
814 894
@@ -826,31 +906,21 @@ CONFIG_SSB_POSSIBLE=y
826# CONFIG_TWL4030_CORE is not set 906# CONFIG_TWL4030_CORE is not set
827# CONFIG_MFD_TMIO is not set 907# CONFIG_MFD_TMIO is not set
828# CONFIG_PMIC_DA903X is not set 908# CONFIG_PMIC_DA903X is not set
909# CONFIG_PMIC_ADP5520 is not set
829# CONFIG_MFD_WM8400 is not set 910# CONFIG_MFD_WM8400 is not set
911# CONFIG_MFD_WM831X is not set
830# CONFIG_MFD_WM8350_I2C is not set 912# CONFIG_MFD_WM8350_I2C is not set
831# CONFIG_MFD_PCF50633 is not set 913# CONFIG_MFD_PCF50633 is not set
914# CONFIG_AB3100_CORE is not set
915# CONFIG_MFD_88PM8607 is not set
832# CONFIG_REGULATOR is not set 916# CONFIG_REGULATOR is not set
833 917# CONFIG_MEDIA_SUPPORT is not set
834#
835# Multimedia devices
836#
837
838#
839# Multimedia core support
840#
841# CONFIG_VIDEO_DEV is not set
842# CONFIG_DVB_CORE is not set
843# CONFIG_VIDEO_MEDIA is not set
844
845#
846# Multimedia drivers
847#
848CONFIG_DAB=y
849 918
850# 919#
851# Graphics support 920# Graphics support
852# 921#
853# CONFIG_AGP is not set 922# CONFIG_AGP is not set
923CONFIG_VGA_ARB=y
854# CONFIG_DRM is not set 924# CONFIG_DRM is not set
855# CONFIG_VGASTATE is not set 925# CONFIG_VGASTATE is not set
856CONFIG_VIDEO_OUTPUT_CONTROL=m 926CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -876,7 +946,12 @@ CONFIG_DMADEVICES=y
876# 946#
877# DMA Devices 947# DMA Devices
878# 948#
949# CONFIG_AUXDISPLAY is not set
879# CONFIG_UIO is not set 950# CONFIG_UIO is not set
951
952#
953# TI VLYNQ
954#
880# CONFIG_STAGING is not set 955# CONFIG_STAGING is not set
881 956
882# 957#
@@ -887,14 +962,17 @@ CONFIG_EXT2_FS=y
887# CONFIG_EXT2_FS_XIP is not set 962# CONFIG_EXT2_FS_XIP is not set
888# CONFIG_EXT3_FS is not set 963# CONFIG_EXT3_FS is not set
889# CONFIG_EXT4_FS is not set 964# CONFIG_EXT4_FS is not set
965CONFIG_EXT4_USE_FOR_EXT23=y
890# CONFIG_REISERFS_FS is not set 966# CONFIG_REISERFS_FS is not set
891# CONFIG_JFS_FS is not set 967# CONFIG_JFS_FS is not set
892# CONFIG_FS_POSIX_ACL is not set 968# CONFIG_FS_POSIX_ACL is not set
893CONFIG_FILE_LOCKING=y
894# CONFIG_XFS_FS is not set 969# CONFIG_XFS_FS is not set
895# CONFIG_GFS2_FS is not set 970# CONFIG_GFS2_FS is not set
896# CONFIG_OCFS2_FS is not set 971# CONFIG_OCFS2_FS is not set
897# CONFIG_BTRFS_FS is not set 972# CONFIG_BTRFS_FS is not set
973# CONFIG_NILFS2_FS is not set
974CONFIG_FILE_LOCKING=y
975CONFIG_FSNOTIFY=y
898CONFIG_DNOTIFY=y 976CONFIG_DNOTIFY=y
899CONFIG_INOTIFY=y 977CONFIG_INOTIFY=y
900CONFIG_INOTIFY_USER=y 978CONFIG_INOTIFY_USER=y
@@ -904,6 +982,11 @@ CONFIG_INOTIFY_USER=y
904# CONFIG_FUSE_FS is not set 982# CONFIG_FUSE_FS is not set
905 983
906# 984#
985# Caches
986#
987# CONFIG_FSCACHE is not set
988
989#
907# CD-ROM/DVD Filesystems 990# CD-ROM/DVD Filesystems
908# 991#
909# CONFIG_ISO9660_FS is not set 992# CONFIG_ISO9660_FS is not set
@@ -958,7 +1041,6 @@ CONFIG_LOCKD=y
958CONFIG_LOCKD_V4=y 1041CONFIG_LOCKD_V4=y
959CONFIG_NFS_COMMON=y 1042CONFIG_NFS_COMMON=y
960CONFIG_SUNRPC=y 1043CONFIG_SUNRPC=y
961# CONFIG_SUNRPC_REGISTER_V4 is not set
962# CONFIG_RPCSEC_GSS_KRB5 is not set 1044# CONFIG_RPCSEC_GSS_KRB5 is not set
963# CONFIG_RPCSEC_GSS_SPKM3 is not set 1045# CONFIG_RPCSEC_GSS_SPKM3 is not set
964# CONFIG_SMB_FS is not set 1046# CONFIG_SMB_FS is not set
@@ -974,6 +1056,7 @@ CONFIG_SUNRPC=y
974CONFIG_MSDOS_PARTITION=y 1056CONFIG_MSDOS_PARTITION=y
975# CONFIG_NLS is not set 1057# CONFIG_NLS is not set
976# CONFIG_DLM is not set 1058# CONFIG_DLM is not set
1059# CONFIG_BINARY_PRINTF is not set
977 1060
978# 1061#
979# Library routines 1062# Library routines
@@ -988,11 +1071,13 @@ CONFIG_CRC32=y
988# CONFIG_CRC7 is not set 1071# CONFIG_CRC7 is not set
989# CONFIG_LIBCRC32C is not set 1072# CONFIG_LIBCRC32C is not set
990CONFIG_ZLIB_INFLATE=y 1073CONFIG_ZLIB_INFLATE=y
991CONFIG_PLIST=y 1074CONFIG_DECOMPRESS_GZIP=y
992CONFIG_HAS_IOMEM=y 1075CONFIG_HAS_IOMEM=y
993CONFIG_HAS_IOPORT=y 1076CONFIG_HAS_IOPORT=y
994CONFIG_HAS_DMA=y 1077CONFIG_HAS_DMA=y
995CONFIG_HAVE_LMB=y 1078CONFIG_HAVE_LMB=y
1079CONFIG_NLATTR=y
1080CONFIG_GENERIC_ATOMIC64=y
996 1081
997# 1082#
998# Kernel hacking 1083# Kernel hacking
@@ -1002,6 +1087,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1002CONFIG_ENABLE_MUST_CHECK=y 1087CONFIG_ENABLE_MUST_CHECK=y
1003CONFIG_FRAME_WARN=1024 1088CONFIG_FRAME_WARN=1024
1004CONFIG_MAGIC_SYSRQ=y 1089CONFIG_MAGIC_SYSRQ=y
1090# CONFIG_STRIP_ASM_SYMS is not set
1005# CONFIG_UNUSED_SYMBOLS is not set 1091# CONFIG_UNUSED_SYMBOLS is not set
1006CONFIG_DEBUG_FS=y 1092CONFIG_DEBUG_FS=y
1007# CONFIG_HEADERS_CHECK is not set 1093# CONFIG_HEADERS_CHECK is not set
@@ -1010,16 +1096,23 @@ CONFIG_DEBUG_KERNEL=y
1010CONFIG_DETECT_SOFTLOCKUP=y 1096CONFIG_DETECT_SOFTLOCKUP=y
1011# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 1097# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
1012CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 1098CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1099CONFIG_DETECT_HUNG_TASK=y
1100# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
1101CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
1013CONFIG_SCHED_DEBUG=y 1102CONFIG_SCHED_DEBUG=y
1014# CONFIG_SCHEDSTATS is not set 1103# CONFIG_SCHEDSTATS is not set
1015# CONFIG_TIMER_STATS is not set 1104# CONFIG_TIMER_STATS is not set
1016# CONFIG_DEBUG_OBJECTS is not set 1105# CONFIG_DEBUG_OBJECTS is not set
1017# CONFIG_SLUB_DEBUG_ON is not set 1106# CONFIG_SLUB_DEBUG_ON is not set
1018# CONFIG_SLUB_STATS is not set 1107# CONFIG_SLUB_STATS is not set
1108# CONFIG_DEBUG_KMEMLEAK is not set
1019# CONFIG_DEBUG_RT_MUTEXES is not set 1109# CONFIG_DEBUG_RT_MUTEXES is not set
1020# CONFIG_RT_MUTEX_TESTER is not set 1110# CONFIG_RT_MUTEX_TESTER is not set
1021# CONFIG_DEBUG_SPINLOCK is not set 1111# CONFIG_DEBUG_SPINLOCK is not set
1022# CONFIG_DEBUG_MUTEXES is not set 1112# CONFIG_DEBUG_MUTEXES is not set
1113# CONFIG_DEBUG_LOCK_ALLOC is not set
1114# CONFIG_PROVE_LOCKING is not set
1115# CONFIG_LOCK_STAT is not set
1023# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1116# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1024# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1117# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1025# CONFIG_DEBUG_KOBJECT is not set 1118# CONFIG_DEBUG_KOBJECT is not set
@@ -1031,35 +1124,45 @@ CONFIG_SCHED_DEBUG=y
1031# CONFIG_DEBUG_LIST is not set 1124# CONFIG_DEBUG_LIST is not set
1032# CONFIG_DEBUG_SG is not set 1125# CONFIG_DEBUG_SG is not set
1033# CONFIG_DEBUG_NOTIFIERS is not set 1126# CONFIG_DEBUG_NOTIFIERS is not set
1034# CONFIG_BOOT_PRINTK_DELAY is not set 1127# CONFIG_DEBUG_CREDENTIALS is not set
1035# CONFIG_RCU_TORTURE_TEST is not set 1128# CONFIG_RCU_TORTURE_TEST is not set
1036# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1129# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1037# CONFIG_BACKTRACE_SELF_TEST is not set 1130# CONFIG_BACKTRACE_SELF_TEST is not set
1038# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1131# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1132# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1039# CONFIG_FAULT_INJECTION is not set 1133# CONFIG_FAULT_INJECTION is not set
1040# CONFIG_LATENCYTOP is not set 1134# CONFIG_LATENCYTOP is not set
1041CONFIG_SYSCTL_SYSCALL_CHECK=y 1135CONFIG_SYSCTL_SYSCALL_CHECK=y
1136# CONFIG_DEBUG_PAGEALLOC is not set
1042CONFIG_HAVE_FUNCTION_TRACER=y 1137CONFIG_HAVE_FUNCTION_TRACER=y
1138CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
1043CONFIG_HAVE_DYNAMIC_FTRACE=y 1139CONFIG_HAVE_DYNAMIC_FTRACE=y
1044CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1140CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1045 1141CONFIG_TRACING_SUPPORT=y
1046# 1142CONFIG_FTRACE=y
1047# Tracers
1048#
1049# CONFIG_FUNCTION_TRACER is not set 1143# CONFIG_FUNCTION_TRACER is not set
1144# CONFIG_IRQSOFF_TRACER is not set
1050# CONFIG_SCHED_TRACER is not set 1145# CONFIG_SCHED_TRACER is not set
1051# CONFIG_CONTEXT_SWITCH_TRACER is not set 1146# CONFIG_ENABLE_DEFAULT_TRACERS is not set
1052# CONFIG_BOOT_TRACER is not set 1147# CONFIG_BOOT_TRACER is not set
1053# CONFIG_TRACE_BRANCH_PROFILING is not set 1148CONFIG_BRANCH_PROFILE_NONE=y
1149# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1150# CONFIG_PROFILE_ALL_BRANCHES is not set
1054# CONFIG_STACK_TRACER is not set 1151# CONFIG_STACK_TRACER is not set
1055# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1152# CONFIG_KMEMTRACE is not set
1153# CONFIG_WORKQUEUE_TRACER is not set
1154# CONFIG_BLK_DEV_IO_TRACE is not set
1155# CONFIG_DYNAMIC_DEBUG is not set
1156# CONFIG_DMA_API_DEBUG is not set
1056# CONFIG_SAMPLES is not set 1157# CONFIG_SAMPLES is not set
1057CONFIG_HAVE_ARCH_KGDB=y 1158CONFIG_HAVE_ARCH_KGDB=y
1058# CONFIG_KGDB is not set 1159# CONFIG_KGDB is not set
1160# CONFIG_PPC_DISABLE_WERROR is not set
1161CONFIG_PPC_WERROR=y
1059CONFIG_PRINT_STACK_DEPTH=64 1162CONFIG_PRINT_STACK_DEPTH=64
1060# CONFIG_DEBUG_STACKOVERFLOW is not set 1163# CONFIG_DEBUG_STACKOVERFLOW is not set
1061# CONFIG_DEBUG_STACK_USAGE is not set 1164# CONFIG_DEBUG_STACK_USAGE is not set
1062# CONFIG_DEBUG_PAGEALLOC is not set 1165# CONFIG_PPC_EMULATED_STATS is not set
1063# CONFIG_CODE_PATCHING_SELFTEST is not set 1166# CONFIG_CODE_PATCHING_SELFTEST is not set
1064# CONFIG_FTR_FIXUP_SELFTEST is not set 1167# CONFIG_FTR_FIXUP_SELFTEST is not set
1065# CONFIG_MSI_BITMAP_SELFTEST is not set 1168# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -1075,13 +1178,16 @@ CONFIG_PRINT_STACK_DEPTH=64
1075# CONFIG_KEYS is not set 1178# CONFIG_KEYS is not set
1076# CONFIG_SECURITY is not set 1179# CONFIG_SECURITY is not set
1077# CONFIG_SECURITYFS is not set 1180# CONFIG_SECURITYFS is not set
1078# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1181# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1182# CONFIG_DEFAULT_SECURITY_SMACK is not set
1183# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1184CONFIG_DEFAULT_SECURITY_DAC=y
1185CONFIG_DEFAULT_SECURITY=""
1079CONFIG_CRYPTO=y 1186CONFIG_CRYPTO=y
1080 1187
1081# 1188#
1082# Crypto core or helper 1189# Crypto core or helper
1083# 1190#
1084# CONFIG_CRYPTO_FIPS is not set
1085CONFIG_CRYPTO_ALGAPI=y 1191CONFIG_CRYPTO_ALGAPI=y
1086CONFIG_CRYPTO_ALGAPI2=y 1192CONFIG_CRYPTO_ALGAPI2=y
1087CONFIG_CRYPTO_AEAD=y 1193CONFIG_CRYPTO_AEAD=y
@@ -1092,10 +1198,12 @@ CONFIG_CRYPTO_HASH=y
1092CONFIG_CRYPTO_HASH2=y 1198CONFIG_CRYPTO_HASH2=y
1093CONFIG_CRYPTO_RNG=y 1199CONFIG_CRYPTO_RNG=y
1094CONFIG_CRYPTO_RNG2=y 1200CONFIG_CRYPTO_RNG2=y
1201CONFIG_CRYPTO_PCOMP=y
1095CONFIG_CRYPTO_MANAGER=y 1202CONFIG_CRYPTO_MANAGER=y
1096CONFIG_CRYPTO_MANAGER2=y 1203CONFIG_CRYPTO_MANAGER2=y
1097CONFIG_CRYPTO_GF128MUL=y 1204CONFIG_CRYPTO_GF128MUL=y
1098# CONFIG_CRYPTO_NULL is not set 1205# CONFIG_CRYPTO_NULL is not set
1206CONFIG_CRYPTO_WORKQUEUE=y
1099CONFIG_CRYPTO_CRYPTD=y 1207CONFIG_CRYPTO_CRYPTD=y
1100CONFIG_CRYPTO_AUTHENC=y 1208CONFIG_CRYPTO_AUTHENC=y
1101# CONFIG_CRYPTO_TEST is not set 1209# CONFIG_CRYPTO_TEST is not set
@@ -1123,11 +1231,13 @@ CONFIG_CRYPTO_XTS=y
1123# 1231#
1124CONFIG_CRYPTO_HMAC=y 1232CONFIG_CRYPTO_HMAC=y
1125CONFIG_CRYPTO_XCBC=y 1233CONFIG_CRYPTO_XCBC=y
1234# CONFIG_CRYPTO_VMAC is not set
1126 1235
1127# 1236#
1128# Digest 1237# Digest
1129# 1238#
1130# CONFIG_CRYPTO_CRC32C is not set 1239# CONFIG_CRYPTO_CRC32C is not set
1240CONFIG_CRYPTO_GHASH=y
1131CONFIG_CRYPTO_MD4=y 1241CONFIG_CRYPTO_MD4=y
1132CONFIG_CRYPTO_MD5=y 1242CONFIG_CRYPTO_MD5=y
1133# CONFIG_CRYPTO_MICHAEL_MIC is not set 1243# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1164,6 +1274,7 @@ CONFIG_CRYPTO_DES=y
1164# Compression 1274# Compression
1165# 1275#
1166# CONFIG_CRYPTO_DEFLATE is not set 1276# CONFIG_CRYPTO_DEFLATE is not set
1277# CONFIG_CRYPTO_ZLIB is not set
1167# CONFIG_CRYPTO_LZO is not set 1278# CONFIG_CRYPTO_LZO is not set
1168 1279
1169# 1280#
@@ -1172,5 +1283,6 @@ CONFIG_CRYPTO_DES=y
1172# CONFIG_CRYPTO_ANSI_CPRNG is not set 1283# CONFIG_CRYPTO_ANSI_CPRNG is not set
1173CONFIG_CRYPTO_HW=y 1284CONFIG_CRYPTO_HW=y
1174# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1285# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1286# CONFIG_CRYPTO_DEV_PPC4XX is not set
1175# CONFIG_PPC_CLOCK is not set 1287# CONFIG_PPC_CLOCK is not set
1176# CONFIG_VIRTUALIZATION is not set 1288# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/sam440ep_defconfig b/arch/powerpc/configs/44x/sam440ep_defconfig
index e14e89a5e06b..886cb6aa6432 100644
--- a/arch/powerpc/configs/44x/sam440ep_defconfig
+++ b/arch/powerpc/configs/44x/sam440ep_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:22:42 2009 4# Mon Jan 4 15:11:24 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -20,6 +20,7 @@ CONFIG_BOOKE=y
20CONFIG_PTE_64BIT=y 20CONFIG_PTE_64BIT=y
21CONFIG_PHYS_64BIT=y 21CONFIG_PHYS_64BIT=y
22CONFIG_PPC_MMU_NOHASH=y 22CONFIG_PPC_MMU_NOHASH=y
23CONFIG_PPC_MMU_NOHASH_32=y
23# CONFIG_PPC_MM_SLICES is not set 24# CONFIG_PPC_MM_SLICES is not set
24CONFIG_NOT_COHERENT_CACHE=y 25CONFIG_NOT_COHERENT_CACHE=y
25CONFIG_PPC32=y 26CONFIG_PPC32=y
@@ -31,15 +32,18 @@ CONFIG_GENERIC_TIME=y
31CONFIG_GENERIC_TIME_VSYSCALL=y 32CONFIG_GENERIC_TIME_VSYSCALL=y
32CONFIG_GENERIC_CLOCKEVENTS=y 33CONFIG_GENERIC_CLOCKEVENTS=y
33CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
34# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
35CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
36CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
37CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
38CONFIG_LOCKDEP_SUPPORT=y 43CONFIG_LOCKDEP_SUPPORT=y
39CONFIG_RWSEM_XCHGADD_ALGORITHM=y 44CONFIG_RWSEM_XCHGADD_ALGORITHM=y
40CONFIG_ARCH_HAS_ILOG2_U32=y 45CONFIG_ARCH_HAS_ILOG2_U32=y
41CONFIG_GENERIC_HWEIGHT=y 46CONFIG_GENERIC_HWEIGHT=y
42CONFIG_GENERIC_CALIBRATE_DELAY=y
43CONFIG_GENERIC_FIND_NEXT_BIT=y 47CONFIG_GENERIC_FIND_NEXT_BIT=y
44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 48# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
45CONFIG_PPC=y 49CONFIG_PPC=y
@@ -53,11 +57,15 @@ CONFIG_PPC_UDBG_16550=y
53# CONFIG_GENERIC_TBSYNC is not set 57# CONFIG_GENERIC_TBSYNC is not set
54CONFIG_AUDIT_ARCH=y 58CONFIG_AUDIT_ARCH=y
55CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y
56# CONFIG_DEFAULT_UIMAGE is not set 61# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
57CONFIG_PPC_DCR_NATIVE=y 63CONFIG_PPC_DCR_NATIVE=y
58# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
59CONFIG_PPC_DCR=y 65CONFIG_PPC_DCR=y
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
60CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 67CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
68CONFIG_CONSTRUCTORS=y
61 69
62# 70#
63# General setup 71# General setup
@@ -71,9 +79,21 @@ CONFIG_SWAP=y
71CONFIG_SYSVIPC=y 79CONFIG_SYSVIPC=y
72CONFIG_SYSVIPC_SYSCTL=y 80CONFIG_SYSVIPC_SYSCTL=y
73CONFIG_POSIX_MQUEUE=y 81CONFIG_POSIX_MQUEUE=y
82CONFIG_POSIX_MQUEUE_SYSCTL=y
74# CONFIG_BSD_PROCESS_ACCT is not set 83# CONFIG_BSD_PROCESS_ACCT is not set
75# CONFIG_TASKSTATS is not set 84# CONFIG_TASKSTATS is not set
76# CONFIG_AUDIT is not set 85# CONFIG_AUDIT is not set
86
87#
88# RCU Subsystem
89#
90CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set
96# CONFIG_TREE_RCU_TRACE is not set
77CONFIG_IKCONFIG=y 97CONFIG_IKCONFIG=y
78# CONFIG_IKCONFIG_PROC is not set 98# CONFIG_IKCONFIG_PROC is not set
79CONFIG_LOG_BUF_SHIFT=14 99CONFIG_LOG_BUF_SHIFT=14
@@ -89,8 +109,12 @@ CONFIG_SYSFS_DEPRECATED_V2=y
89# CONFIG_NAMESPACES is not set 109# CONFIG_NAMESPACES is not set
90CONFIG_BLK_DEV_INITRD=y 110CONFIG_BLK_DEV_INITRD=y
91CONFIG_INITRAMFS_SOURCE="" 111CONFIG_INITRAMFS_SOURCE=""
112CONFIG_RD_GZIP=y
113# CONFIG_RD_BZIP2 is not set
114# CONFIG_RD_LZMA is not set
92# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 115# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
93CONFIG_SYSCTL=y 116CONFIG_SYSCTL=y
117CONFIG_ANON_INODES=y
94CONFIG_EMBEDDED=y 118CONFIG_EMBEDDED=y
95CONFIG_SYSCTL_SYSCALL=y 119CONFIG_SYSCTL_SYSCALL=y
96CONFIG_KALLSYMS=y 120CONFIG_KALLSYMS=y
@@ -99,19 +123,25 @@ CONFIG_HOTPLUG=y
99CONFIG_PRINTK=y 123CONFIG_PRINTK=y
100CONFIG_BUG=y 124CONFIG_BUG=y
101CONFIG_ELF_CORE=y 125CONFIG_ELF_CORE=y
102CONFIG_COMPAT_BRK=y
103CONFIG_BASE_FULL=y 126CONFIG_BASE_FULL=y
104CONFIG_FUTEX=y 127CONFIG_FUTEX=y
105CONFIG_ANON_INODES=y
106CONFIG_EPOLL=y 128CONFIG_EPOLL=y
107CONFIG_SIGNALFD=y 129CONFIG_SIGNALFD=y
108CONFIG_TIMERFD=y 130CONFIG_TIMERFD=y
109CONFIG_EVENTFD=y 131CONFIG_EVENTFD=y
110CONFIG_SHMEM=y 132CONFIG_SHMEM=y
111CONFIG_AIO=y 133CONFIG_AIO=y
134CONFIG_HAVE_PERF_EVENTS=y
135
136#
137# Kernel Performance Events And Counters
138#
139# CONFIG_PERF_EVENTS is not set
140# CONFIG_PERF_COUNTERS is not set
112CONFIG_VM_EVENT_COUNTERS=y 141CONFIG_VM_EVENT_COUNTERS=y
113CONFIG_PCI_QUIRKS=y 142CONFIG_PCI_QUIRKS=y
114CONFIG_SLUB_DEBUG=y 143CONFIG_SLUB_DEBUG=y
144CONFIG_COMPAT_BRK=y
115# CONFIG_SLAB is not set 145# CONFIG_SLAB is not set
116CONFIG_SLUB=y 146CONFIG_SLUB=y
117# CONFIG_SLOB is not set 147# CONFIG_SLOB is not set
@@ -123,6 +153,13 @@ CONFIG_HAVE_IOREMAP_PROT=y
123CONFIG_HAVE_KPROBES=y 153CONFIG_HAVE_KPROBES=y
124CONFIG_HAVE_KRETPROBES=y 154CONFIG_HAVE_KRETPROBES=y
125CONFIG_HAVE_ARCH_TRACEHOOK=y 155CONFIG_HAVE_ARCH_TRACEHOOK=y
156CONFIG_HAVE_DMA_ATTRS=y
157CONFIG_HAVE_DMA_API_DEBUG=y
158
159#
160# GCOV-based kernel profiling
161#
162# CONFIG_SLOW_WORK is not set
126# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 163# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
127CONFIG_SLABINFO=y 164CONFIG_SLABINFO=y
128CONFIG_RT_MUTEXES=y 165CONFIG_RT_MUTEXES=y
@@ -134,8 +171,7 @@ CONFIG_MODULE_UNLOAD=y
134# CONFIG_MODVERSIONS is not set 171# CONFIG_MODVERSIONS is not set
135# CONFIG_MODULE_SRCVERSION_ALL is not set 172# CONFIG_MODULE_SRCVERSION_ALL is not set
136CONFIG_BLOCK=y 173CONFIG_BLOCK=y
137# CONFIG_LBD is not set 174CONFIG_LBDAF=y
138# CONFIG_BLK_DEV_IO_TRACE is not set
139# CONFIG_BLK_DEV_BSG is not set 175# CONFIG_BLK_DEV_BSG is not set
140# CONFIG_BLK_DEV_INTEGRITY is not set 176# CONFIG_BLK_DEV_INTEGRITY is not set
141 177
@@ -143,19 +179,41 @@ CONFIG_BLOCK=y
143# IO Schedulers 179# IO Schedulers
144# 180#
145CONFIG_IOSCHED_NOOP=y 181CONFIG_IOSCHED_NOOP=y
146CONFIG_IOSCHED_AS=y
147# CONFIG_IOSCHED_DEADLINE is not set 182# CONFIG_IOSCHED_DEADLINE is not set
148# CONFIG_IOSCHED_CFQ is not set 183# CONFIG_IOSCHED_CFQ is not set
149CONFIG_DEFAULT_AS=y
150# CONFIG_DEFAULT_DEADLINE is not set 184# CONFIG_DEFAULT_DEADLINE is not set
151# CONFIG_DEFAULT_CFQ is not set 185# CONFIG_DEFAULT_CFQ is not set
152# CONFIG_DEFAULT_NOOP is not set 186CONFIG_DEFAULT_NOOP=y
153CONFIG_DEFAULT_IOSCHED="anticipatory" 187CONFIG_DEFAULT_IOSCHED="noop"
154CONFIG_CLASSIC_RCU=y 188# CONFIG_INLINE_SPIN_TRYLOCK is not set
155# CONFIG_TREE_RCU is not set 189# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
156# CONFIG_PREEMPT_RCU is not set 190# CONFIG_INLINE_SPIN_LOCK is not set
157# CONFIG_TREE_RCU_TRACE is not set 191# CONFIG_INLINE_SPIN_LOCK_BH is not set
158# CONFIG_PREEMPT_RCU_TRACE is not set 192# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
193# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
194CONFIG_INLINE_SPIN_UNLOCK=y
195# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
196CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
197# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
198# CONFIG_INLINE_READ_TRYLOCK is not set
199# CONFIG_INLINE_READ_LOCK is not set
200# CONFIG_INLINE_READ_LOCK_BH is not set
201# CONFIG_INLINE_READ_LOCK_IRQ is not set
202# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
203CONFIG_INLINE_READ_UNLOCK=y
204# CONFIG_INLINE_READ_UNLOCK_BH is not set
205CONFIG_INLINE_READ_UNLOCK_IRQ=y
206# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
207# CONFIG_INLINE_WRITE_TRYLOCK is not set
208# CONFIG_INLINE_WRITE_LOCK is not set
209# CONFIG_INLINE_WRITE_LOCK_BH is not set
210# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
212CONFIG_INLINE_WRITE_UNLOCK=y
213# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
214CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
215# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
216# CONFIG_MUTEX_SPIN_ON_OWNER is not set
159# CONFIG_FREEZER is not set 217# CONFIG_FREEZER is not set
160# CONFIG_PPC4xx_PCI_EXPRESS is not set 218# CONFIG_PPC4xx_PCI_EXPRESS is not set
161 219
@@ -176,6 +234,8 @@ CONFIG_SAM440EP=y
176# CONFIG_ARCHES is not set 234# CONFIG_ARCHES is not set
177# CONFIG_CANYONLANDS is not set 235# CONFIG_CANYONLANDS is not set
178# CONFIG_GLACIER is not set 236# CONFIG_GLACIER is not set
237# CONFIG_REDWOOD is not set
238# CONFIG_EIGER is not set
179# CONFIG_YOSEMITE is not set 239# CONFIG_YOSEMITE is not set
180# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 240# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
181# CONFIG_PPC44x_SIMPLE is not set 241# CONFIG_PPC44x_SIMPLE is not set
@@ -218,10 +278,12 @@ CONFIG_BINFMT_ELF=y
218# CONFIG_BINFMT_MISC is not set 278# CONFIG_BINFMT_MISC is not set
219# CONFIG_MATH_EMULATION is not set 279# CONFIG_MATH_EMULATION is not set
220# CONFIG_IOMMU_HELPER is not set 280# CONFIG_IOMMU_HELPER is not set
221CONFIG_PPC_NEED_DMA_SYNC_OPS=y 281# CONFIG_SWIOTLB is not set
222CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 282CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
223CONFIG_ARCH_HAS_WALK_MEMORY=y 283CONFIG_ARCH_HAS_WALK_MEMORY=y
224CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 284CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
285CONFIG_SPARSE_IRQ=y
286CONFIG_MAX_ACTIVE_REGIONS=32
225CONFIG_ARCH_FLATMEM_ENABLE=y 287CONFIG_ARCH_FLATMEM_ENABLE=y
226CONFIG_ARCH_POPULATES_NODE_MAP=y 288CONFIG_ARCH_POPULATES_NODE_MAP=y
227CONFIG_SELECT_MEMORY_MODEL=y 289CONFIG_SELECT_MEMORY_MODEL=y
@@ -237,10 +299,13 @@ CONFIG_PHYS_ADDR_T_64BIT=y
237CONFIG_ZONE_DMA_FLAG=1 299CONFIG_ZONE_DMA_FLAG=1
238CONFIG_BOUNCE=y 300CONFIG_BOUNCE=y
239CONFIG_VIRT_TO_BUS=y 301CONFIG_VIRT_TO_BUS=y
240CONFIG_UNEVICTABLE_LRU=y 302# CONFIG_KSM is not set
303CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
304CONFIG_STDBINUTILS=y
241CONFIG_PPC_4K_PAGES=y 305CONFIG_PPC_4K_PAGES=y
242# CONFIG_PPC_16K_PAGES is not set 306# CONFIG_PPC_16K_PAGES is not set
243# CONFIG_PPC_64K_PAGES is not set 307# CONFIG_PPC_64K_PAGES is not set
308# CONFIG_PPC_256K_PAGES is not set
244CONFIG_FORCE_MAX_ZONEORDER=11 309CONFIG_FORCE_MAX_ZONEORDER=11
245CONFIG_PROC_DEVICETREE=y 310CONFIG_PROC_DEVICETREE=y
246CONFIG_CMDLINE_BOOL=y 311CONFIG_CMDLINE_BOOL=y
@@ -264,6 +329,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
264# CONFIG_PCI_MSI is not set 329# CONFIG_PCI_MSI is not set
265# CONFIG_PCI_LEGACY is not set 330# CONFIG_PCI_LEGACY is not set
266# CONFIG_PCI_STUB is not set 331# CONFIG_PCI_STUB is not set
332# CONFIG_PCI_IOV is not set
267# CONFIG_PCCARD is not set 333# CONFIG_PCCARD is not set
268# CONFIG_HOTPLUG_PCI is not set 334# CONFIG_HOTPLUG_PCI is not set
269# CONFIG_HAS_RAPIDIO is not set 335# CONFIG_HAS_RAPIDIO is not set
@@ -281,14 +347,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
281CONFIG_KERNEL_START=0xc0000000 347CONFIG_KERNEL_START=0xc0000000
282CONFIG_PHYSICAL_START=0x00000000 348CONFIG_PHYSICAL_START=0x00000000
283CONFIG_TASK_SIZE=0xc0000000 349CONFIG_TASK_SIZE=0xc0000000
284CONFIG_CONSISTENT_START=0xff100000
285CONFIG_CONSISTENT_SIZE=0x00200000 350CONFIG_CONSISTENT_SIZE=0x00200000
286CONFIG_NET=y 351CONFIG_NET=y
287 352
288# 353#
289# Networking options 354# Networking options
290# 355#
291CONFIG_COMPAT_NET_DEV_OPS=y
292CONFIG_PACKET=y 356CONFIG_PACKET=y
293# CONFIG_PACKET_MMAP is not set 357# CONFIG_PACKET_MMAP is not set
294CONFIG_UNIX=y 358CONFIG_UNIX=y
@@ -325,6 +389,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
325# CONFIG_NETFILTER is not set 389# CONFIG_NETFILTER is not set
326# CONFIG_IP_DCCP is not set 390# CONFIG_IP_DCCP is not set
327# CONFIG_IP_SCTP is not set 391# CONFIG_IP_SCTP is not set
392# CONFIG_RDS is not set
328# CONFIG_TIPC is not set 393# CONFIG_TIPC is not set
329# CONFIG_ATM is not set 394# CONFIG_ATM is not set
330# CONFIG_BRIDGE is not set 395# CONFIG_BRIDGE is not set
@@ -338,6 +403,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
338# CONFIG_LAPB is not set 403# CONFIG_LAPB is not set
339# CONFIG_ECONET is not set 404# CONFIG_ECONET is not set
340# CONFIG_WAN_ROUTER is not set 405# CONFIG_WAN_ROUTER is not set
406# CONFIG_PHONET is not set
407# CONFIG_IEEE802154 is not set
341# CONFIG_NET_SCHED is not set 408# CONFIG_NET_SCHED is not set
342# CONFIG_DCB is not set 409# CONFIG_DCB is not set
343 410
@@ -350,8 +417,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
350# CONFIG_IRDA is not set 417# CONFIG_IRDA is not set
351# CONFIG_BT is not set 418# CONFIG_BT is not set
352# CONFIG_AF_RXRPC is not set 419# CONFIG_AF_RXRPC is not set
353# CONFIG_PHONET is not set 420CONFIG_WIRELESS=y
354# CONFIG_WIRELESS is not set 421# CONFIG_CFG80211 is not set
422# CONFIG_LIB80211 is not set
423
424#
425# CFG80211 needs to be enabled for MAC80211
426#
355# CONFIG_WIMAX is not set 427# CONFIG_WIMAX is not set
356# CONFIG_RFKILL is not set 428# CONFIG_RFKILL is not set
357# CONFIG_NET_9P is not set 429# CONFIG_NET_9P is not set
@@ -364,6 +436,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
364# Generic Driver Options 436# Generic Driver Options
365# 437#
366CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 438CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
439# CONFIG_DEVTMPFS is not set
367CONFIG_STANDALONE=y 440CONFIG_STANDALONE=y
368CONFIG_PREVENT_FIRMWARE_BUILD=y 441CONFIG_PREVENT_FIRMWARE_BUILD=y
369CONFIG_FW_LOADER=y 442CONFIG_FW_LOADER=y
@@ -385,6 +458,7 @@ CONFIG_BLK_DEV=y
385# CONFIG_BLK_DEV_COW_COMMON is not set 458# CONFIG_BLK_DEV_COW_COMMON is not set
386CONFIG_BLK_DEV_LOOP=y 459CONFIG_BLK_DEV_LOOP=y
387# CONFIG_BLK_DEV_CRYPTOLOOP is not set 460# CONFIG_BLK_DEV_CRYPTOLOOP is not set
461# CONFIG_BLK_DEV_DRBD is not set
388# CONFIG_BLK_DEV_NBD is not set 462# CONFIG_BLK_DEV_NBD is not set
389# CONFIG_BLK_DEV_SX8 is not set 463# CONFIG_BLK_DEV_SX8 is not set
390# CONFIG_BLK_DEV_UB is not set 464# CONFIG_BLK_DEV_UB is not set
@@ -420,10 +494,6 @@ CONFIG_BLK_DEV_SR=y
420# CONFIG_BLK_DEV_SR_VENDOR is not set 494# CONFIG_BLK_DEV_SR_VENDOR is not set
421CONFIG_CHR_DEV_SG=y 495CONFIG_CHR_DEV_SG=y
422# CONFIG_CHR_DEV_SCH is not set 496# CONFIG_CHR_DEV_SCH is not set
423
424#
425# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
426#
427# CONFIG_SCSI_MULTI_LUN is not set 497# CONFIG_SCSI_MULTI_LUN is not set
428# CONFIG_SCSI_CONSTANTS is not set 498# CONFIG_SCSI_CONSTANTS is not set
429# CONFIG_SCSI_LOGGING is not set 499# CONFIG_SCSI_LOGGING is not set
@@ -440,8 +510,10 @@ CONFIG_SCSI_WAIT_SCAN=m
440# CONFIG_SCSI_SRP_ATTRS is not set 510# CONFIG_SCSI_SRP_ATTRS is not set
441# CONFIG_SCSI_LOWLEVEL is not set 511# CONFIG_SCSI_LOWLEVEL is not set
442# CONFIG_SCSI_DH is not set 512# CONFIG_SCSI_DH is not set
513# CONFIG_SCSI_OSD_INITIATOR is not set
443CONFIG_ATA=y 514CONFIG_ATA=y
444# CONFIG_ATA_NONSTANDARD is not set 515# CONFIG_ATA_NONSTANDARD is not set
516CONFIG_ATA_VERBOSE_ERROR=y
445# CONFIG_SATA_PMP is not set 517# CONFIG_SATA_PMP is not set
446# CONFIG_SATA_AHCI is not set 518# CONFIG_SATA_AHCI is not set
447# CONFIG_SATA_SIL24 is not set 519# CONFIG_SATA_SIL24 is not set
@@ -463,6 +535,7 @@ CONFIG_SATA_SIL=y
463# CONFIG_PATA_ALI is not set 535# CONFIG_PATA_ALI is not set
464# CONFIG_PATA_AMD is not set 536# CONFIG_PATA_AMD is not set
465# CONFIG_PATA_ARTOP is not set 537# CONFIG_PATA_ARTOP is not set
538# CONFIG_PATA_ATP867X is not set
466# CONFIG_PATA_ATIIXP is not set 539# CONFIG_PATA_ATIIXP is not set
467# CONFIG_PATA_CMD640_PCI is not set 540# CONFIG_PATA_CMD640_PCI is not set
468# CONFIG_PATA_CMD64X is not set 541# CONFIG_PATA_CMD64X is not set
@@ -488,14 +561,16 @@ CONFIG_SATA_SIL=y
488# CONFIG_PATA_NS87415 is not set 561# CONFIG_PATA_NS87415 is not set
489# CONFIG_PATA_OPTI is not set 562# CONFIG_PATA_OPTI is not set
490# CONFIG_PATA_OPTIDMA is not set 563# CONFIG_PATA_OPTIDMA is not set
564# CONFIG_PATA_PDC2027X is not set
491# CONFIG_PATA_PDC_OLD is not set 565# CONFIG_PATA_PDC_OLD is not set
492# CONFIG_PATA_RADISYS is not set 566# CONFIG_PATA_RADISYS is not set
567# CONFIG_PATA_RDC is not set
493# CONFIG_PATA_RZ1000 is not set 568# CONFIG_PATA_RZ1000 is not set
494# CONFIG_PATA_SC1200 is not set 569# CONFIG_PATA_SC1200 is not set
495# CONFIG_PATA_SERVERWORKS is not set 570# CONFIG_PATA_SERVERWORKS is not set
496# CONFIG_PATA_PDC2027X is not set
497# CONFIG_PATA_SIL680 is not set 571# CONFIG_PATA_SIL680 is not set
498# CONFIG_PATA_SIS is not set 572# CONFIG_PATA_SIS is not set
573# CONFIG_PATA_TOSHIBA is not set
499# CONFIG_PATA_VIA is not set 574# CONFIG_PATA_VIA is not set
500# CONFIG_PATA_WINBOND is not set 575# CONFIG_PATA_WINBOND is not set
501# CONFIG_PATA_PLATFORM is not set 576# CONFIG_PATA_PLATFORM is not set
@@ -508,7 +583,11 @@ CONFIG_SATA_SIL=y
508# 583#
509 584
510# 585#
511# Enable only one of the two stacks, unless you know what you are doing 586# You can enable one or both FireWire driver stacks.
587#
588
589#
590# See the help texts for more information.
512# 591#
513# CONFIG_FIREWIRE is not set 592# CONFIG_FIREWIRE is not set
514# CONFIG_IEEE1394 is not set 593# CONFIG_IEEE1394 is not set
@@ -529,6 +608,8 @@ CONFIG_NET_ETHERNET=y
529# CONFIG_SUNGEM is not set 608# CONFIG_SUNGEM is not set
530# CONFIG_CASSINI is not set 609# CONFIG_CASSINI is not set
531# CONFIG_NET_VENDOR_3COM is not set 610# CONFIG_NET_VENDOR_3COM is not set
611# CONFIG_ETHOC is not set
612# CONFIG_DNET is not set
532# CONFIG_NET_TULIP is not set 613# CONFIG_NET_TULIP is not set
533# CONFIG_HP100 is not set 614# CONFIG_HP100 is not set
534CONFIG_IBM_NEW_EMAC=y 615CONFIG_IBM_NEW_EMAC=y
@@ -547,17 +628,19 @@ CONFIG_IBM_NEW_EMAC_ZMII=y
547# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 628# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
548# CONFIG_NET_PCI is not set 629# CONFIG_NET_PCI is not set
549# CONFIG_B44 is not set 630# CONFIG_B44 is not set
631# CONFIG_KS8842 is not set
632# CONFIG_KS8851_MLL is not set
550# CONFIG_ATL2 is not set 633# CONFIG_ATL2 is not set
634# CONFIG_XILINX_EMACLITE is not set
551# CONFIG_NETDEV_1000 is not set 635# CONFIG_NETDEV_1000 is not set
552# CONFIG_NETDEV_10000 is not set 636# CONFIG_NETDEV_10000 is not set
553# CONFIG_TR is not set 637# CONFIG_TR is not set
554 638CONFIG_WLAN=y
555# 639# CONFIG_AIRO is not set
556# Wireless LAN 640# CONFIG_ATMEL is not set
557# 641# CONFIG_PRISM54 is not set
558# CONFIG_WLAN_PRE80211 is not set 642# CONFIG_USB_ZD1201 is not set
559# CONFIG_WLAN_80211 is not set 643# CONFIG_HOSTAP is not set
560# CONFIG_IWLWIFI_LEDS is not set
561 644
562# 645#
563# Enable WiMAX (Networking options) to see the WiMAX drivers 646# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -580,6 +663,7 @@ CONFIG_IBM_NEW_EMAC_ZMII=y
580# CONFIG_NETCONSOLE is not set 663# CONFIG_NETCONSOLE is not set
581# CONFIG_NETPOLL is not set 664# CONFIG_NETPOLL is not set
582# CONFIG_NET_POLL_CONTROLLER is not set 665# CONFIG_NET_POLL_CONTROLLER is not set
666# CONFIG_VMXNET3 is not set
583# CONFIG_ISDN is not set 667# CONFIG_ISDN is not set
584# CONFIG_PHONE is not set 668# CONFIG_PHONE is not set
585 669
@@ -589,6 +673,7 @@ CONFIG_IBM_NEW_EMAC_ZMII=y
589CONFIG_INPUT=y 673CONFIG_INPUT=y
590CONFIG_INPUT_FF_MEMLESS=m 674CONFIG_INPUT_FF_MEMLESS=m
591# CONFIG_INPUT_POLLDEV is not set 675# CONFIG_INPUT_POLLDEV is not set
676# CONFIG_INPUT_SPARSEKMAP is not set
592 677
593# 678#
594# Userland interfaces 679# Userland interfaces
@@ -605,25 +690,30 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
605# Input Device Drivers 690# Input Device Drivers
606# 691#
607CONFIG_INPUT_KEYBOARD=y 692CONFIG_INPUT_KEYBOARD=y
693# CONFIG_KEYBOARD_ADP5588 is not set
608CONFIG_KEYBOARD_ATKBD=y 694CONFIG_KEYBOARD_ATKBD=y
609# CONFIG_KEYBOARD_SUNKBD is not set 695# CONFIG_QT2160 is not set
610# CONFIG_KEYBOARD_LKKBD is not set 696# CONFIG_KEYBOARD_LKKBD is not set
611# CONFIG_KEYBOARD_XTKBD is not set 697# CONFIG_KEYBOARD_MAX7359 is not set
612# CONFIG_KEYBOARD_NEWTON is not set 698# CONFIG_KEYBOARD_NEWTON is not set
699# CONFIG_KEYBOARD_OPENCORES is not set
613# CONFIG_KEYBOARD_STOWAWAY is not set 700# CONFIG_KEYBOARD_STOWAWAY is not set
701# CONFIG_KEYBOARD_SUNKBD is not set
702# CONFIG_KEYBOARD_XTKBD is not set
614CONFIG_INPUT_MOUSE=y 703CONFIG_INPUT_MOUSE=y
615CONFIG_MOUSE_PS2=y 704CONFIG_MOUSE_PS2=y
616CONFIG_MOUSE_PS2_ALPS=y 705CONFIG_MOUSE_PS2_ALPS=y
617CONFIG_MOUSE_PS2_LOGIPS2PP=y 706CONFIG_MOUSE_PS2_LOGIPS2PP=y
618CONFIG_MOUSE_PS2_SYNAPTICS=y 707CONFIG_MOUSE_PS2_SYNAPTICS=y
619CONFIG_MOUSE_PS2_LIFEBOOK=y
620CONFIG_MOUSE_PS2_TRACKPOINT=y 708CONFIG_MOUSE_PS2_TRACKPOINT=y
621# CONFIG_MOUSE_PS2_ELANTECH is not set 709# CONFIG_MOUSE_PS2_ELANTECH is not set
710# CONFIG_MOUSE_PS2_SENTELIC is not set
622# CONFIG_MOUSE_PS2_TOUCHKIT is not set 711# CONFIG_MOUSE_PS2_TOUCHKIT is not set
623# CONFIG_MOUSE_SERIAL is not set 712# CONFIG_MOUSE_SERIAL is not set
624# CONFIG_MOUSE_APPLETOUCH is not set 713# CONFIG_MOUSE_APPLETOUCH is not set
625# CONFIG_MOUSE_BCM5974 is not set 714# CONFIG_MOUSE_BCM5974 is not set
626# CONFIG_MOUSE_VSXXXAA is not set 715# CONFIG_MOUSE_VSXXXAA is not set
716# CONFIG_MOUSE_SYNAPTICS_I2C is not set
627# CONFIG_INPUT_JOYSTICK is not set 717# CONFIG_INPUT_JOYSTICK is not set
628# CONFIG_INPUT_TABLET is not set 718# CONFIG_INPUT_TABLET is not set
629# CONFIG_INPUT_TOUCHSCREEN is not set 719# CONFIG_INPUT_TOUCHSCREEN is not set
@@ -639,6 +729,7 @@ CONFIG_SERIO_SERPORT=y
639CONFIG_SERIO_LIBPS2=y 729CONFIG_SERIO_LIBPS2=y
640# CONFIG_SERIO_RAW is not set 730# CONFIG_SERIO_RAW is not set
641# CONFIG_SERIO_XILINX_XPS_PS2 is not set 731# CONFIG_SERIO_XILINX_XPS_PS2 is not set
732# CONFIG_SERIO_ALTERA_PS2 is not set
642# CONFIG_GAMEPORT is not set 733# CONFIG_GAMEPORT is not set
643 734
644# 735#
@@ -676,6 +767,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
676# CONFIG_SERIAL_JSM is not set 767# CONFIG_SERIAL_JSM is not set
677CONFIG_SERIAL_OF_PLATFORM=y 768CONFIG_SERIAL_OF_PLATFORM=y
678# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 769# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
770# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
679CONFIG_UNIX98_PTYS=y 771CONFIG_UNIX98_PTYS=y
680# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 772# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
681CONFIG_LEGACY_PTYS=y 773CONFIG_LEGACY_PTYS=y
@@ -691,6 +783,7 @@ CONFIG_LEGACY_PTY_COUNT=256
691CONFIG_DEVPORT=y 783CONFIG_DEVPORT=y
692CONFIG_I2C=y 784CONFIG_I2C=y
693CONFIG_I2C_BOARDINFO=y 785CONFIG_I2C_BOARDINFO=y
786CONFIG_I2C_COMPAT=y
694# CONFIG_I2C_CHARDEV is not set 787# CONFIG_I2C_CHARDEV is not set
695CONFIG_I2C_HELPER_AUTO=y 788CONFIG_I2C_HELPER_AUTO=y
696CONFIG_I2C_ALGOBIT=y 789CONFIG_I2C_ALGOBIT=y
@@ -733,11 +826,6 @@ CONFIG_I2C_IBM_IIC=y
733# CONFIG_I2C_TINY_USB is not set 826# CONFIG_I2C_TINY_USB is not set
734 827
735# 828#
736# Graphics adapter I2C/DDC channel drivers
737#
738# CONFIG_I2C_VOODOO3 is not set
739
740#
741# Other I2C/SMBus bus drivers 829# Other I2C/SMBus bus drivers
742# 830#
743# CONFIG_I2C_PCA_PLATFORM is not set 831# CONFIG_I2C_PCA_PLATFORM is not set
@@ -746,27 +834,23 @@ CONFIG_I2C_IBM_IIC=y
746# 834#
747# Miscellaneous I2C Chip support 835# Miscellaneous I2C Chip support
748# 836#
749# CONFIG_DS1682 is not set
750# CONFIG_EEPROM_AT24 is not set
751# CONFIG_EEPROM_LEGACY is not set
752# CONFIG_SENSORS_PCF8574 is not set
753# CONFIG_PCF8575 is not set
754# CONFIG_SENSORS_PCA9539 is not set
755# CONFIG_SENSORS_PCF8591 is not set
756# CONFIG_SENSORS_MAX6875 is not set
757# CONFIG_SENSORS_TSL2550 is not set 837# CONFIG_SENSORS_TSL2550 is not set
758# CONFIG_I2C_DEBUG_CORE is not set 838# CONFIG_I2C_DEBUG_CORE is not set
759# CONFIG_I2C_DEBUG_ALGO is not set 839# CONFIG_I2C_DEBUG_ALGO is not set
760# CONFIG_I2C_DEBUG_BUS is not set 840# CONFIG_I2C_DEBUG_BUS is not set
761# CONFIG_I2C_DEBUG_CHIP is not set 841# CONFIG_I2C_DEBUG_CHIP is not set
762# CONFIG_SPI is not set 842# CONFIG_SPI is not set
843
844#
845# PPS support
846#
847# CONFIG_PPS is not set
763CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 848CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
764# CONFIG_GPIOLIB is not set 849# CONFIG_GPIOLIB is not set
765# CONFIG_W1 is not set 850# CONFIG_W1 is not set
766# CONFIG_POWER_SUPPLY is not set 851# CONFIG_POWER_SUPPLY is not set
767# CONFIG_HWMON is not set 852# CONFIG_HWMON is not set
768# CONFIG_THERMAL is not set 853# CONFIG_THERMAL is not set
769# CONFIG_THERMAL_HWMON is not set
770# CONFIG_WATCHDOG is not set 854# CONFIG_WATCHDOG is not set
771CONFIG_SSB_POSSIBLE=y 855CONFIG_SSB_POSSIBLE=y
772 856
@@ -784,31 +868,21 @@ CONFIG_SSB_POSSIBLE=y
784# CONFIG_TWL4030_CORE is not set 868# CONFIG_TWL4030_CORE is not set
785# CONFIG_MFD_TMIO is not set 869# CONFIG_MFD_TMIO is not set
786# CONFIG_PMIC_DA903X is not set 870# CONFIG_PMIC_DA903X is not set
871# CONFIG_PMIC_ADP5520 is not set
787# CONFIG_MFD_WM8400 is not set 872# CONFIG_MFD_WM8400 is not set
873# CONFIG_MFD_WM831X is not set
788# CONFIG_MFD_WM8350_I2C is not set 874# CONFIG_MFD_WM8350_I2C is not set
789# CONFIG_MFD_PCF50633 is not set 875# CONFIG_MFD_PCF50633 is not set
876# CONFIG_AB3100_CORE is not set
877# CONFIG_MFD_88PM8607 is not set
790# CONFIG_REGULATOR is not set 878# CONFIG_REGULATOR is not set
791 879# CONFIG_MEDIA_SUPPORT is not set
792#
793# Multimedia devices
794#
795
796#
797# Multimedia core support
798#
799# CONFIG_VIDEO_DEV is not set
800# CONFIG_DVB_CORE is not set
801# CONFIG_VIDEO_MEDIA is not set
802
803#
804# Multimedia drivers
805#
806# CONFIG_DAB is not set
807 880
808# 881#
809# Graphics support 882# Graphics support
810# 883#
811# CONFIG_AGP is not set 884# CONFIG_AGP is not set
885CONFIG_VGA_ARB=y
812# CONFIG_DRM is not set 886# CONFIG_DRM is not set
813# CONFIG_VGASTATE is not set 887# CONFIG_VGASTATE is not set
814CONFIG_VIDEO_OUTPUT_CONTROL=y 888CONFIG_VIDEO_OUTPUT_CONTROL=y
@@ -870,6 +944,7 @@ CONFIG_FB_RADEON_BACKLIGHT=y
870# CONFIG_FB_VIRTUAL is not set 944# CONFIG_FB_VIRTUAL is not set
871# CONFIG_FB_METRONOME is not set 945# CONFIG_FB_METRONOME is not set
872# CONFIG_FB_MB862XX is not set 946# CONFIG_FB_MB862XX is not set
947# CONFIG_FB_BROADSHEET is not set
873CONFIG_BACKLIGHT_LCD_SUPPORT=y 948CONFIG_BACKLIGHT_LCD_SUPPORT=y
874CONFIG_LCD_CLASS_DEVICE=y 949CONFIG_LCD_CLASS_DEVICE=y
875# CONFIG_LCD_ILI9320 is not set 950# CONFIG_LCD_ILI9320 is not set
@@ -899,7 +974,6 @@ CONFIG_LOGO_LINUX_CLUT224=y
899# CONFIG_SOUND is not set 974# CONFIG_SOUND is not set
900CONFIG_HID_SUPPORT=y 975CONFIG_HID_SUPPORT=y
901CONFIG_HID=y 976CONFIG_HID=y
902# CONFIG_HID_DEBUG is not set
903# CONFIG_HIDRAW is not set 977# CONFIG_HIDRAW is not set
904 978
905# 979#
@@ -912,15 +986,18 @@ CONFIG_USB_HID=y
912# 986#
913# Special HID drivers 987# Special HID drivers
914# 988#
915CONFIG_HID_COMPAT=y
916CONFIG_HID_A4TECH=y 989CONFIG_HID_A4TECH=y
917CONFIG_HID_APPLE=y 990CONFIG_HID_APPLE=y
918CONFIG_HID_BELKIN=y 991CONFIG_HID_BELKIN=y
919CONFIG_HID_CHERRY=y 992CONFIG_HID_CHERRY=y
920CONFIG_HID_CHICONY=y 993CONFIG_HID_CHICONY=y
921CONFIG_HID_CYPRESS=y 994CONFIG_HID_CYPRESS=y
995# CONFIG_HID_DRAGONRISE is not set
922CONFIG_HID_EZKEY=y 996CONFIG_HID_EZKEY=y
997# CONFIG_HID_KYE is not set
923CONFIG_HID_GYRATION=y 998CONFIG_HID_GYRATION=y
999# CONFIG_HID_TWINHAN is not set
1000# CONFIG_HID_KENSINGTON is not set
924CONFIG_HID_LOGITECH=y 1001CONFIG_HID_LOGITECH=y
925# CONFIG_LOGITECH_FF is not set 1002# CONFIG_LOGITECH_FF is not set
926# CONFIG_LOGIRUMBLEPAD2_FF is not set 1003# CONFIG_LOGIRUMBLEPAD2_FF is not set
@@ -933,10 +1010,11 @@ CONFIG_HID_PETALYNX=y
933CONFIG_HID_SAMSUNG=y 1010CONFIG_HID_SAMSUNG=y
934CONFIG_HID_SONY=y 1011CONFIG_HID_SONY=y
935CONFIG_HID_SUNPLUS=y 1012CONFIG_HID_SUNPLUS=y
936# CONFIG_GREENASIA_FF is not set 1013# CONFIG_HID_GREENASIA is not set
1014# CONFIG_HID_SMARTJOYPLUS is not set
937# CONFIG_HID_TOPSEED is not set 1015# CONFIG_HID_TOPSEED is not set
938CONFIG_THRUSTMASTER_FF=m 1016# CONFIG_HID_THRUSTMASTER is not set
939CONFIG_ZEROPLUS_FF=m 1017# CONFIG_HID_ZEROPLUS is not set
940CONFIG_USB_SUPPORT=y 1018CONFIG_USB_SUPPORT=y
941CONFIG_USB_ARCH_HAS_HCD=y 1019CONFIG_USB_ARCH_HAS_HCD=y
942CONFIG_USB_ARCH_HAS_OHCI=y 1020CONFIG_USB_ARCH_HAS_OHCI=y
@@ -962,17 +1040,20 @@ CONFIG_USB_DEVICEFS=y
962# USB Host Controller Drivers 1040# USB Host Controller Drivers
963# 1041#
964# CONFIG_USB_C67X00_HCD is not set 1042# CONFIG_USB_C67X00_HCD is not set
1043# CONFIG_USB_XHCI_HCD is not set
965CONFIG_USB_EHCI_HCD=m 1044CONFIG_USB_EHCI_HCD=m
966# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1045# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
967# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1046# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1047# CONFIG_XPS_USB_HCD_XILINX is not set
968CONFIG_USB_EHCI_HCD_PPC_OF=y 1048CONFIG_USB_EHCI_HCD_PPC_OF=y
969# CONFIG_USB_OXU210HP_HCD is not set 1049# CONFIG_USB_OXU210HP_HCD is not set
970# CONFIG_USB_ISP116X_HCD is not set 1050# CONFIG_USB_ISP116X_HCD is not set
971# CONFIG_USB_ISP1760_HCD is not set 1051# CONFIG_USB_ISP1760_HCD is not set
1052# CONFIG_USB_ISP1362_HCD is not set
972CONFIG_USB_OHCI_HCD=y 1053CONFIG_USB_OHCI_HCD=y
973CONFIG_USB_OHCI_HCD_PPC_OF=y
974CONFIG_USB_OHCI_HCD_PPC_OF_BE=y 1054CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
975CONFIG_USB_OHCI_HCD_PPC_OF_LE=y 1055CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
1056CONFIG_USB_OHCI_HCD_PPC_OF=y
976CONFIG_USB_OHCI_HCD_PCI=y 1057CONFIG_USB_OHCI_HCD_PCI=y
977CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y 1058CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y
978CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y 1059CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
@@ -992,11 +1073,11 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
992# CONFIG_USB_TMC is not set 1073# CONFIG_USB_TMC is not set
993 1074
994# 1075#
995# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 1076# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
996# 1077#
997 1078
998# 1079#
999# see USB_STORAGE Help for more information 1080# also be needed; see USB_STORAGE Help for more info
1000# 1081#
1001CONFIG_USB_STORAGE=m 1082CONFIG_USB_STORAGE=m
1002# CONFIG_USB_STORAGE_DEBUG is not set 1083# CONFIG_USB_STORAGE_DEBUG is not set
@@ -1038,7 +1119,6 @@ CONFIG_USB_STORAGE=m
1038# CONFIG_USB_LED is not set 1119# CONFIG_USB_LED is not set
1039# CONFIG_USB_CYPRESS_CY7C63 is not set 1120# CONFIG_USB_CYPRESS_CY7C63 is not set
1040# CONFIG_USB_CYTHERM is not set 1121# CONFIG_USB_CYTHERM is not set
1041# CONFIG_USB_PHIDGET is not set
1042# CONFIG_USB_IDMOUSE is not set 1122# CONFIG_USB_IDMOUSE is not set
1043# CONFIG_USB_FTDI_ELAN is not set 1123# CONFIG_USB_FTDI_ELAN is not set
1044# CONFIG_USB_APPLEDISPLAY is not set 1124# CONFIG_USB_APPLEDISPLAY is not set
@@ -1054,6 +1134,7 @@ CONFIG_USB_STORAGE=m
1054# 1134#
1055# OTG and related infrastructure 1135# OTG and related infrastructure
1056# 1136#
1137# CONFIG_NOP_USB_XCEIV is not set
1057# CONFIG_UWB is not set 1138# CONFIG_UWB is not set
1058# CONFIG_MMC is not set 1139# CONFIG_MMC is not set
1059# CONFIG_MEMSTICK is not set 1140# CONFIG_MEMSTICK is not set
@@ -1090,9 +1171,11 @@ CONFIG_RTC_INTF_DEV=y
1090# CONFIG_RTC_DRV_PCF8583 is not set 1171# CONFIG_RTC_DRV_PCF8583 is not set
1091CONFIG_RTC_DRV_M41T80=y 1172CONFIG_RTC_DRV_M41T80=y
1092CONFIG_RTC_DRV_M41T80_WDT=y 1173CONFIG_RTC_DRV_M41T80_WDT=y
1174# CONFIG_RTC_DRV_BQ32K is not set
1093# CONFIG_RTC_DRV_S35390A is not set 1175# CONFIG_RTC_DRV_S35390A is not set
1094# CONFIG_RTC_DRV_FM3130 is not set 1176# CONFIG_RTC_DRV_FM3130 is not set
1095# CONFIG_RTC_DRV_RX8581 is not set 1177# CONFIG_RTC_DRV_RX8581 is not set
1178# CONFIG_RTC_DRV_RX8025 is not set
1096 1179
1097# 1180#
1098# SPI RTC drivers 1181# SPI RTC drivers
@@ -1110,15 +1193,22 @@ CONFIG_RTC_DRV_M41T80_WDT=y
1110# CONFIG_RTC_DRV_M48T86 is not set 1193# CONFIG_RTC_DRV_M48T86 is not set
1111# CONFIG_RTC_DRV_M48T35 is not set 1194# CONFIG_RTC_DRV_M48T35 is not set
1112# CONFIG_RTC_DRV_M48T59 is not set 1195# CONFIG_RTC_DRV_M48T59 is not set
1196# CONFIG_RTC_DRV_MSM6242 is not set
1113# CONFIG_RTC_DRV_BQ4802 is not set 1197# CONFIG_RTC_DRV_BQ4802 is not set
1198# CONFIG_RTC_DRV_RP5C01 is not set
1114# CONFIG_RTC_DRV_V3020 is not set 1199# CONFIG_RTC_DRV_V3020 is not set
1115 1200
1116# 1201#
1117# on-CPU RTC drivers 1202# on-CPU RTC drivers
1118# 1203#
1119# CONFIG_RTC_DRV_PPC is not set 1204# CONFIG_RTC_DRV_GENERIC is not set
1120# CONFIG_DMADEVICES is not set 1205# CONFIG_DMADEVICES is not set
1206# CONFIG_AUXDISPLAY is not set
1121# CONFIG_UIO is not set 1207# CONFIG_UIO is not set
1208
1209#
1210# TI VLYNQ
1211#
1122# CONFIG_STAGING is not set 1212# CONFIG_STAGING is not set
1123 1213
1124# 1214#
@@ -1130,6 +1220,7 @@ CONFIG_EXT2_FS_POSIX_ACL=y
1130# CONFIG_EXT2_FS_SECURITY is not set 1220# CONFIG_EXT2_FS_SECURITY is not set
1131# CONFIG_EXT2_FS_XIP is not set 1221# CONFIG_EXT2_FS_XIP is not set
1132CONFIG_EXT3_FS=y 1222CONFIG_EXT3_FS=y
1223# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
1133CONFIG_EXT3_FS_XATTR=y 1224CONFIG_EXT3_FS_XATTR=y
1134CONFIG_EXT3_FS_POSIX_ACL=y 1225CONFIG_EXT3_FS_POSIX_ACL=y
1135# CONFIG_EXT3_FS_SECURITY is not set 1226# CONFIG_EXT3_FS_SECURITY is not set
@@ -1142,10 +1233,13 @@ CONFIG_REISERFS_FS=y
1142# CONFIG_REISERFS_FS_XATTR is not set 1233# CONFIG_REISERFS_FS_XATTR is not set
1143# CONFIG_JFS_FS is not set 1234# CONFIG_JFS_FS is not set
1144CONFIG_FS_POSIX_ACL=y 1235CONFIG_FS_POSIX_ACL=y
1145CONFIG_FILE_LOCKING=y
1146# CONFIG_XFS_FS is not set 1236# CONFIG_XFS_FS is not set
1237# CONFIG_GFS2_FS is not set
1147# CONFIG_OCFS2_FS is not set 1238# CONFIG_OCFS2_FS is not set
1148# CONFIG_BTRFS_FS is not set 1239# CONFIG_BTRFS_FS is not set
1240# CONFIG_NILFS2_FS is not set
1241CONFIG_FILE_LOCKING=y
1242CONFIG_FSNOTIFY=y
1149CONFIG_DNOTIFY=y 1243CONFIG_DNOTIFY=y
1150CONFIG_INOTIFY=y 1244CONFIG_INOTIFY=y
1151CONFIG_INOTIFY_USER=y 1245CONFIG_INOTIFY_USER=y
@@ -1155,6 +1249,11 @@ CONFIG_AUTOFS4_FS=y
1155# CONFIG_FUSE_FS is not set 1249# CONFIG_FUSE_FS is not set
1156 1250
1157# 1251#
1252# Caches
1253#
1254# CONFIG_FSCACHE is not set
1255
1256#
1158# CD-ROM/DVD Filesystems 1257# CD-ROM/DVD Filesystems
1159# 1258#
1160CONFIG_ISO9660_FS=y 1259CONFIG_ISO9660_FS=y
@@ -1267,6 +1366,7 @@ CONFIG_NLS_ISO8859_1=y
1267# CONFIG_NLS_KOI8_U is not set 1366# CONFIG_NLS_KOI8_U is not set
1268# CONFIG_NLS_UTF8 is not set 1367# CONFIG_NLS_UTF8 is not set
1269# CONFIG_DLM is not set 1368# CONFIG_DLM is not set
1369# CONFIG_BINARY_PRINTF is not set
1270 1370
1271# 1371#
1272# Library routines 1372# Library routines
@@ -1281,11 +1381,13 @@ CONFIG_CRC32=y
1281# CONFIG_CRC7 is not set 1381# CONFIG_CRC7 is not set
1282# CONFIG_LIBCRC32C is not set 1382# CONFIG_LIBCRC32C is not set
1283CONFIG_ZLIB_INFLATE=y 1383CONFIG_ZLIB_INFLATE=y
1284CONFIG_PLIST=y 1384CONFIG_DECOMPRESS_GZIP=y
1285CONFIG_HAS_IOMEM=y 1385CONFIG_HAS_IOMEM=y
1286CONFIG_HAS_IOPORT=y 1386CONFIG_HAS_IOPORT=y
1287CONFIG_HAS_DMA=y 1387CONFIG_HAS_DMA=y
1288CONFIG_HAVE_LMB=y 1388CONFIG_HAVE_LMB=y
1389CONFIG_NLATTR=y
1390CONFIG_GENERIC_ATOMIC64=y
1289 1391
1290# 1392#
1291# Kernel hacking 1393# Kernel hacking
@@ -1295,27 +1397,29 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1295CONFIG_ENABLE_MUST_CHECK=y 1397CONFIG_ENABLE_MUST_CHECK=y
1296CONFIG_FRAME_WARN=1024 1398CONFIG_FRAME_WARN=1024
1297CONFIG_MAGIC_SYSRQ=y 1399CONFIG_MAGIC_SYSRQ=y
1400# CONFIG_STRIP_ASM_SYMS is not set
1298# CONFIG_UNUSED_SYMBOLS is not set 1401# CONFIG_UNUSED_SYMBOLS is not set
1299# CONFIG_DEBUG_FS is not set 1402# CONFIG_DEBUG_FS is not set
1300# CONFIG_HEADERS_CHECK is not set 1403# CONFIG_HEADERS_CHECK is not set
1301# CONFIG_DEBUG_KERNEL is not set 1404# CONFIG_DEBUG_KERNEL is not set
1302# CONFIG_SLUB_DEBUG_ON is not set 1405# CONFIG_SLUB_DEBUG_ON is not set
1303# CONFIG_SLUB_STATS is not set 1406# CONFIG_SLUB_STATS is not set
1304# CONFIG_DEBUG_BUGVERBOSE is not set 1407CONFIG_DEBUG_BUGVERBOSE=y
1305# CONFIG_DEBUG_MEMORY_INIT is not set 1408# CONFIG_DEBUG_MEMORY_INIT is not set
1306# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1409# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1307# CONFIG_LATENCYTOP is not set 1410# CONFIG_LATENCYTOP is not set
1308CONFIG_SYSCTL_SYSCALL_CHECK=y 1411CONFIG_SYSCTL_SYSCALL_CHECK=y
1309CONFIG_HAVE_FUNCTION_TRACER=y 1412CONFIG_HAVE_FUNCTION_TRACER=y
1413CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
1310CONFIG_HAVE_DYNAMIC_FTRACE=y 1414CONFIG_HAVE_DYNAMIC_FTRACE=y
1311CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1415CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1312 1416CONFIG_TRACING_SUPPORT=y
1313# 1417# CONFIG_FTRACE is not set
1314# Tracers 1418# CONFIG_DMA_API_DEBUG is not set
1315#
1316# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1317# CONFIG_SAMPLES is not set 1419# CONFIG_SAMPLES is not set
1318CONFIG_HAVE_ARCH_KGDB=y 1420CONFIG_HAVE_ARCH_KGDB=y
1421# CONFIG_PPC_DISABLE_WERROR is not set
1422CONFIG_PPC_WERROR=y
1319CONFIG_PRINT_STACK_DEPTH=64 1423CONFIG_PRINT_STACK_DEPTH=64
1320# CONFIG_IRQSTACKS is not set 1424# CONFIG_IRQSTACKS is not set
1321# CONFIG_PPC_EARLY_DEBUG is not set 1425# CONFIG_PPC_EARLY_DEBUG is not set
@@ -1326,7 +1430,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1326# CONFIG_KEYS is not set 1430# CONFIG_KEYS is not set
1327# CONFIG_SECURITY is not set 1431# CONFIG_SECURITY is not set
1328# CONFIG_SECURITYFS is not set 1432# CONFIG_SECURITYFS is not set
1329# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1433# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1434# CONFIG_DEFAULT_SECURITY_SMACK is not set
1435# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1436CONFIG_DEFAULT_SECURITY_DAC=y
1437CONFIG_DEFAULT_SECURITY=""
1330# CONFIG_CRYPTO is not set 1438# CONFIG_CRYPTO is not set
1331# CONFIG_PPC_CLOCK is not set 1439# CONFIG_PPC_CLOCK is not set
1332# CONFIG_VIRTUALIZATION is not set 1440# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/sequoia_defconfig b/arch/powerpc/configs/44x/sequoia_defconfig
index 6400aae04dda..1b2f41dbcafb 100644
--- a/arch/powerpc/configs/44x/sequoia_defconfig
+++ b/arch/powerpc/configs/44x/sequoia_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29 3# Linux kernel version: 2.6.33-rc1
4# Tue Apr 7 17:04:52 2009 4# Mon Jan 4 15:15:51 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -20,6 +20,7 @@ CONFIG_BOOKE=y
20CONFIG_PTE_64BIT=y 20CONFIG_PTE_64BIT=y
21CONFIG_PHYS_64BIT=y 21CONFIG_PHYS_64BIT=y
22CONFIG_PPC_MMU_NOHASH=y 22CONFIG_PPC_MMU_NOHASH=y
23CONFIG_PPC_MMU_NOHASH_32=y
23# CONFIG_PPC_MM_SLICES is not set 24# CONFIG_PPC_MM_SLICES is not set
24CONFIG_NOT_COHERENT_CACHE=y 25CONFIG_NOT_COHERENT_CACHE=y
25CONFIG_PPC32=y 26CONFIG_PPC32=y
@@ -31,15 +32,18 @@ CONFIG_GENERIC_TIME=y
31CONFIG_GENERIC_TIME_VSYSCALL=y 32CONFIG_GENERIC_TIME_VSYSCALL=y
32CONFIG_GENERIC_CLOCKEVENTS=y 33CONFIG_GENERIC_CLOCKEVENTS=y
33CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
34# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
35CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
36CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
37CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
38CONFIG_LOCKDEP_SUPPORT=y 43CONFIG_LOCKDEP_SUPPORT=y
39CONFIG_RWSEM_XCHGADD_ALGORITHM=y 44CONFIG_RWSEM_XCHGADD_ALGORITHM=y
40CONFIG_ARCH_HAS_ILOG2_U32=y 45CONFIG_ARCH_HAS_ILOG2_U32=y
41CONFIG_GENERIC_HWEIGHT=y 46CONFIG_GENERIC_HWEIGHT=y
42CONFIG_GENERIC_CALIBRATE_DELAY=y
43CONFIG_GENERIC_FIND_NEXT_BIT=y 47CONFIG_GENERIC_FIND_NEXT_BIT=y
44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 48# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
45CONFIG_PPC=y 49CONFIG_PPC=y
@@ -53,12 +57,15 @@ CONFIG_PPC_UDBG_16550=y
53# CONFIG_GENERIC_TBSYNC is not set 57# CONFIG_GENERIC_TBSYNC is not set
54CONFIG_AUDIT_ARCH=y 58CONFIG_AUDIT_ARCH=y
55CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y
56# CONFIG_DEFAULT_UIMAGE is not set 61# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
57CONFIG_PPC_DCR_NATIVE=y 63CONFIG_PPC_DCR_NATIVE=y
58# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
59CONFIG_PPC_DCR=y 65CONFIG_PPC_DCR=y
60CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
61CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 67CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
68CONFIG_CONSTRUCTORS=y
62 69
63# 70#
64# General setup 71# General setup
@@ -72,6 +79,7 @@ CONFIG_SWAP=y
72CONFIG_SYSVIPC=y 79CONFIG_SYSVIPC=y
73CONFIG_SYSVIPC_SYSCTL=y 80CONFIG_SYSVIPC_SYSCTL=y
74CONFIG_POSIX_MQUEUE=y 81CONFIG_POSIX_MQUEUE=y
82CONFIG_POSIX_MQUEUE_SYSCTL=y
75# CONFIG_BSD_PROCESS_ACCT is not set 83# CONFIG_BSD_PROCESS_ACCT is not set
76# CONFIG_TASKSTATS is not set 84# CONFIG_TASKSTATS is not set
77# CONFIG_AUDIT is not set 85# CONFIG_AUDIT is not set
@@ -79,11 +87,13 @@ CONFIG_POSIX_MQUEUE=y
79# 87#
80# RCU Subsystem 88# RCU Subsystem
81# 89#
82CONFIG_CLASSIC_RCU=y 90CONFIG_TREE_RCU=y
83# CONFIG_TREE_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
84# CONFIG_PREEMPT_RCU is not set 92# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set
85# CONFIG_TREE_RCU_TRACE is not set 96# CONFIG_TREE_RCU_TRACE is not set
86# CONFIG_PREEMPT_RCU_TRACE is not set
87# CONFIG_IKCONFIG is not set 97# CONFIG_IKCONFIG is not set
88CONFIG_LOG_BUF_SHIFT=14 98CONFIG_LOG_BUF_SHIFT=14
89CONFIG_GROUP_SCHED=y 99CONFIG_GROUP_SCHED=y
@@ -121,6 +131,13 @@ CONFIG_TIMERFD=y
121CONFIG_EVENTFD=y 131CONFIG_EVENTFD=y
122CONFIG_SHMEM=y 132CONFIG_SHMEM=y
123CONFIG_AIO=y 133CONFIG_AIO=y
134CONFIG_HAVE_PERF_EVENTS=y
135
136#
137# Kernel Performance Events And Counters
138#
139# CONFIG_PERF_EVENTS is not set
140# CONFIG_PERF_COUNTERS is not set
124CONFIG_VM_EVENT_COUNTERS=y 141CONFIG_VM_EVENT_COUNTERS=y
125CONFIG_PCI_QUIRKS=y 142CONFIG_PCI_QUIRKS=y
126CONFIG_SLUB_DEBUG=y 143CONFIG_SLUB_DEBUG=y
@@ -129,7 +146,6 @@ CONFIG_COMPAT_BRK=y
129CONFIG_SLUB=y 146CONFIG_SLUB=y
130# CONFIG_SLOB is not set 147# CONFIG_SLOB is not set
131# CONFIG_PROFILING is not set 148# CONFIG_PROFILING is not set
132# CONFIG_MARKERS is not set
133CONFIG_HAVE_OPROFILE=y 149CONFIG_HAVE_OPROFILE=y
134# CONFIG_KPROBES is not set 150# CONFIG_KPROBES is not set
135CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 151CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
@@ -137,6 +153,13 @@ CONFIG_HAVE_IOREMAP_PROT=y
137CONFIG_HAVE_KPROBES=y 153CONFIG_HAVE_KPROBES=y
138CONFIG_HAVE_KRETPROBES=y 154CONFIG_HAVE_KRETPROBES=y
139CONFIG_HAVE_ARCH_TRACEHOOK=y 155CONFIG_HAVE_ARCH_TRACEHOOK=y
156CONFIG_HAVE_DMA_ATTRS=y
157CONFIG_HAVE_DMA_API_DEBUG=y
158
159#
160# GCOV-based kernel profiling
161#
162# CONFIG_GCOV_KERNEL is not set
140# CONFIG_SLOW_WORK is not set 163# CONFIG_SLOW_WORK is not set
141# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 164# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
142CONFIG_SLABINFO=y 165CONFIG_SLABINFO=y
@@ -149,7 +172,7 @@ CONFIG_MODULE_UNLOAD=y
149# CONFIG_MODVERSIONS is not set 172# CONFIG_MODVERSIONS is not set
150# CONFIG_MODULE_SRCVERSION_ALL is not set 173# CONFIG_MODULE_SRCVERSION_ALL is not set
151CONFIG_BLOCK=y 174CONFIG_BLOCK=y
152CONFIG_LBD=y 175CONFIG_LBDAF=y
153# CONFIG_BLK_DEV_BSG is not set 176# CONFIG_BLK_DEV_BSG is not set
154# CONFIG_BLK_DEV_INTEGRITY is not set 177# CONFIG_BLK_DEV_INTEGRITY is not set
155 178
@@ -157,14 +180,41 @@ CONFIG_LBD=y
157# IO Schedulers 180# IO Schedulers
158# 181#
159CONFIG_IOSCHED_NOOP=y 182CONFIG_IOSCHED_NOOP=y
160CONFIG_IOSCHED_AS=y
161CONFIG_IOSCHED_DEADLINE=y 183CONFIG_IOSCHED_DEADLINE=y
162CONFIG_IOSCHED_CFQ=y 184CONFIG_IOSCHED_CFQ=y
163CONFIG_DEFAULT_AS=y
164# CONFIG_DEFAULT_DEADLINE is not set 185# CONFIG_DEFAULT_DEADLINE is not set
165# CONFIG_DEFAULT_CFQ is not set 186CONFIG_DEFAULT_CFQ=y
166# CONFIG_DEFAULT_NOOP is not set 187# CONFIG_DEFAULT_NOOP is not set
167CONFIG_DEFAULT_IOSCHED="anticipatory" 188CONFIG_DEFAULT_IOSCHED="cfq"
189# CONFIG_INLINE_SPIN_TRYLOCK is not set
190# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
191# CONFIG_INLINE_SPIN_LOCK is not set
192# CONFIG_INLINE_SPIN_LOCK_BH is not set
193# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
194# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
195CONFIG_INLINE_SPIN_UNLOCK=y
196# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
197CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
198# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
199# CONFIG_INLINE_READ_TRYLOCK is not set
200# CONFIG_INLINE_READ_LOCK is not set
201# CONFIG_INLINE_READ_LOCK_BH is not set
202# CONFIG_INLINE_READ_LOCK_IRQ is not set
203# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
204CONFIG_INLINE_READ_UNLOCK=y
205# CONFIG_INLINE_READ_UNLOCK_BH is not set
206CONFIG_INLINE_READ_UNLOCK_IRQ=y
207# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
208# CONFIG_INLINE_WRITE_TRYLOCK is not set
209# CONFIG_INLINE_WRITE_LOCK is not set
210# CONFIG_INLINE_WRITE_LOCK_BH is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
212# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
213CONFIG_INLINE_WRITE_UNLOCK=y
214# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
215CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
216# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
217# CONFIG_MUTEX_SPIN_ON_OWNER is not set
168# CONFIG_FREEZER is not set 218# CONFIG_FREEZER is not set
169# CONFIG_PPC4xx_PCI_EXPRESS is not set 219# CONFIG_PPC4xx_PCI_EXPRESS is not set
170 220
@@ -186,6 +236,7 @@ CONFIG_SEQUOIA=y
186# CONFIG_CANYONLANDS is not set 236# CONFIG_CANYONLANDS is not set
187# CONFIG_GLACIER is not set 237# CONFIG_GLACIER is not set
188# CONFIG_REDWOOD is not set 238# CONFIG_REDWOOD is not set
239# CONFIG_EIGER is not set
189# CONFIG_YOSEMITE is not set 240# CONFIG_YOSEMITE is not set
190# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 241# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
191CONFIG_PPC44x_SIMPLE=y 242CONFIG_PPC44x_SIMPLE=y
@@ -228,10 +279,12 @@ CONFIG_BINFMT_ELF=y
228# CONFIG_BINFMT_MISC is not set 279# CONFIG_BINFMT_MISC is not set
229# CONFIG_MATH_EMULATION is not set 280# CONFIG_MATH_EMULATION is not set
230# CONFIG_IOMMU_HELPER is not set 281# CONFIG_IOMMU_HELPER is not set
231CONFIG_PPC_NEED_DMA_SYNC_OPS=y 282# CONFIG_SWIOTLB is not set
232CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
233CONFIG_ARCH_HAS_WALK_MEMORY=y 284CONFIG_ARCH_HAS_WALK_MEMORY=y
234CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 285CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
286CONFIG_SPARSE_IRQ=y
287CONFIG_MAX_ACTIVE_REGIONS=32
235CONFIG_ARCH_FLATMEM_ENABLE=y 288CONFIG_ARCH_FLATMEM_ENABLE=y
236CONFIG_ARCH_POPULATES_NODE_MAP=y 289CONFIG_ARCH_POPULATES_NODE_MAP=y
237CONFIG_SELECT_MEMORY_MODEL=y 290CONFIG_SELECT_MEMORY_MODEL=y
@@ -247,9 +300,8 @@ CONFIG_PHYS_ADDR_T_64BIT=y
247CONFIG_ZONE_DMA_FLAG=1 300CONFIG_ZONE_DMA_FLAG=1
248CONFIG_BOUNCE=y 301CONFIG_BOUNCE=y
249CONFIG_VIRT_TO_BUS=y 302CONFIG_VIRT_TO_BUS=y
250CONFIG_UNEVICTABLE_LRU=y 303# CONFIG_KSM is not set
251CONFIG_HAVE_MLOCK=y 304CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
252CONFIG_HAVE_MLOCKED_PAGE_BIT=y
253CONFIG_STDBINUTILS=y 305CONFIG_STDBINUTILS=y
254CONFIG_PPC_4K_PAGES=y 306CONFIG_PPC_4K_PAGES=y
255# CONFIG_PPC_16K_PAGES is not set 307# CONFIG_PPC_16K_PAGES is not set
@@ -293,11 +345,11 @@ CONFIG_ARCH_SUPPORTS_MSI=y
293# Default settings for advanced configuration options are used 345# Default settings for advanced configuration options are used
294# 346#
295CONFIG_LOWMEM_SIZE=0x30000000 347CONFIG_LOWMEM_SIZE=0x30000000
296CONFIG_LOWMEM_CAM_NUM=3
297CONFIG_PAGE_OFFSET=0xc0000000 348CONFIG_PAGE_OFFSET=0xc0000000
298CONFIG_KERNEL_START=0xc0000000 349CONFIG_KERNEL_START=0xc0000000
299CONFIG_PHYSICAL_START=0x00000000 350CONFIG_PHYSICAL_START=0x00000000
300CONFIG_TASK_SIZE=0xc0000000 351CONFIG_TASK_SIZE=0xc0000000
352CONFIG_CONSISTENT_SIZE=0x00200000
301CONFIG_NET=y 353CONFIG_NET=y
302 354
303# 355#
@@ -339,6 +391,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
339# CONFIG_NETFILTER is not set 391# CONFIG_NETFILTER is not set
340# CONFIG_IP_DCCP is not set 392# CONFIG_IP_DCCP is not set
341# CONFIG_IP_SCTP is not set 393# CONFIG_IP_SCTP is not set
394# CONFIG_RDS is not set
342# CONFIG_TIPC is not set 395# CONFIG_TIPC is not set
343# CONFIG_ATM is not set 396# CONFIG_ATM is not set
344# CONFIG_BRIDGE is not set 397# CONFIG_BRIDGE is not set
@@ -353,6 +406,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
353# CONFIG_ECONET is not set 406# CONFIG_ECONET is not set
354# CONFIG_WAN_ROUTER is not set 407# CONFIG_WAN_ROUTER is not set
355# CONFIG_PHONET is not set 408# CONFIG_PHONET is not set
409# CONFIG_IEEE802154 is not set
356# CONFIG_NET_SCHED is not set 410# CONFIG_NET_SCHED is not set
357# CONFIG_DCB is not set 411# CONFIG_DCB is not set
358 412
@@ -365,7 +419,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
365# CONFIG_IRDA is not set 419# CONFIG_IRDA is not set
366# CONFIG_BT is not set 420# CONFIG_BT is not set
367# CONFIG_AF_RXRPC is not set 421# CONFIG_AF_RXRPC is not set
368# CONFIG_WIRELESS is not set 422CONFIG_WIRELESS=y
423# CONFIG_CFG80211 is not set
424# CONFIG_LIB80211 is not set
425
426#
427# CFG80211 needs to be enabled for MAC80211
428#
369# CONFIG_WIMAX is not set 429# CONFIG_WIMAX is not set
370# CONFIG_RFKILL is not set 430# CONFIG_RFKILL is not set
371# CONFIG_NET_9P is not set 431# CONFIG_NET_9P is not set
@@ -378,6 +438,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
378# Generic Driver Options 438# Generic Driver Options
379# 439#
380CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 440CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
441# CONFIG_DEVTMPFS is not set
381CONFIG_STANDALONE=y 442CONFIG_STANDALONE=y
382CONFIG_PREVENT_FIRMWARE_BUILD=y 443CONFIG_PREVENT_FIRMWARE_BUILD=y
383CONFIG_FW_LOADER=y 444CONFIG_FW_LOADER=y
@@ -390,9 +451,9 @@ CONFIG_CONNECTOR=y
390CONFIG_PROC_EVENTS=y 451CONFIG_PROC_EVENTS=y
391CONFIG_MTD=y 452CONFIG_MTD=y
392# CONFIG_MTD_DEBUG is not set 453# CONFIG_MTD_DEBUG is not set
454# CONFIG_MTD_TESTS is not set
393# CONFIG_MTD_CONCAT is not set 455# CONFIG_MTD_CONCAT is not set
394CONFIG_MTD_PARTITIONS=y 456CONFIG_MTD_PARTITIONS=y
395# CONFIG_MTD_TESTS is not set
396# CONFIG_MTD_REDBOOT_PARTS is not set 457# CONFIG_MTD_REDBOOT_PARTS is not set
397CONFIG_MTD_CMDLINE_PARTS=y 458CONFIG_MTD_CMDLINE_PARTS=y
398CONFIG_MTD_OF_PARTS=y 459CONFIG_MTD_OF_PARTS=y
@@ -493,6 +554,7 @@ CONFIG_BLK_DEV=y
493# CONFIG_BLK_DEV_UMEM is not set 554# CONFIG_BLK_DEV_UMEM is not set
494# CONFIG_BLK_DEV_COW_COMMON is not set 555# CONFIG_BLK_DEV_COW_COMMON is not set
495# CONFIG_BLK_DEV_LOOP is not set 556# CONFIG_BLK_DEV_LOOP is not set
557# CONFIG_BLK_DEV_DRBD is not set
496# CONFIG_BLK_DEV_NBD is not set 558# CONFIG_BLK_DEV_NBD is not set
497# CONFIG_BLK_DEV_SX8 is not set 559# CONFIG_BLK_DEV_SX8 is not set
498CONFIG_BLK_DEV_RAM=y 560CONFIG_BLK_DEV_RAM=y
@@ -515,6 +577,7 @@ CONFIG_MISC_DEVICES=y
515# EEPROM support 577# EEPROM support
516# 578#
517# CONFIG_EEPROM_93CX6 is not set 579# CONFIG_EEPROM_93CX6 is not set
580# CONFIG_CB710_CORE is not set
518CONFIG_HAVE_IDE=y 581CONFIG_HAVE_IDE=y
519# CONFIG_IDE is not set 582# CONFIG_IDE is not set
520 583
@@ -534,14 +597,17 @@ CONFIG_HAVE_IDE=y
534# 597#
535 598
536# 599#
537# Enable only one of the two stacks, unless you know what you are doing 600# You can enable one or both FireWire driver stacks.
601#
602
603#
604# See the help texts for more information.
538# 605#
539# CONFIG_FIREWIRE is not set 606# CONFIG_FIREWIRE is not set
540# CONFIG_IEEE1394 is not set 607# CONFIG_IEEE1394 is not set
541# CONFIG_I2O is not set 608# CONFIG_I2O is not set
542# CONFIG_MACINTOSH_DRIVERS is not set 609# CONFIG_MACINTOSH_DRIVERS is not set
543CONFIG_NETDEVICES=y 610CONFIG_NETDEVICES=y
544CONFIG_COMPAT_NET_DEV_OPS=y
545# CONFIG_DUMMY is not set 611# CONFIG_DUMMY is not set
546# CONFIG_BONDING is not set 612# CONFIG_BONDING is not set
547# CONFIG_MACVLAN is not set 613# CONFIG_MACVLAN is not set
@@ -576,7 +642,10 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
576# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 642# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
577# CONFIG_NET_PCI is not set 643# CONFIG_NET_PCI is not set
578# CONFIG_B44 is not set 644# CONFIG_B44 is not set
645# CONFIG_KS8842 is not set
646# CONFIG_KS8851_MLL is not set
579# CONFIG_ATL2 is not set 647# CONFIG_ATL2 is not set
648# CONFIG_XILINX_EMACLITE is not set
580CONFIG_NETDEV_1000=y 649CONFIG_NETDEV_1000=y
581# CONFIG_ACENIC is not set 650# CONFIG_ACENIC is not set
582# CONFIG_DL2K is not set 651# CONFIG_DL2K is not set
@@ -584,6 +653,7 @@ CONFIG_NETDEV_1000=y
584# CONFIG_E1000E is not set 653# CONFIG_E1000E is not set
585# CONFIG_IP1000 is not set 654# CONFIG_IP1000 is not set
586# CONFIG_IGB is not set 655# CONFIG_IGB is not set
656# CONFIG_IGBVF is not set
587# CONFIG_NS83820 is not set 657# CONFIG_NS83820 is not set
588# CONFIG_HAMACHI is not set 658# CONFIG_HAMACHI is not set
589# CONFIG_YELLOWFIN is not set 659# CONFIG_YELLOWFIN is not set
@@ -594,6 +664,9 @@ CONFIG_NETDEV_1000=y
594# CONFIG_VIA_VELOCITY is not set 664# CONFIG_VIA_VELOCITY is not set
595# CONFIG_TIGON3 is not set 665# CONFIG_TIGON3 is not set
596# CONFIG_BNX2 is not set 666# CONFIG_BNX2 is not set
667# CONFIG_CNIC is not set
668# CONFIG_MV643XX_ETH is not set
669# CONFIG_XILINX_LL_TEMAC is not set
597# CONFIG_QLA3XXX is not set 670# CONFIG_QLA3XXX is not set
598# CONFIG_ATL1 is not set 671# CONFIG_ATL1 is not set
599# CONFIG_ATL1E is not set 672# CONFIG_ATL1E is not set
@@ -619,12 +692,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
619# CONFIG_SFC is not set 692# CONFIG_SFC is not set
620# CONFIG_BE2NET is not set 693# CONFIG_BE2NET is not set
621# CONFIG_TR is not set 694# CONFIG_TR is not set
622 695CONFIG_WLAN=y
623# 696# CONFIG_AIRO is not set
624# Wireless LAN 697# CONFIG_ATMEL is not set
625# 698# CONFIG_PRISM54 is not set
626# CONFIG_WLAN_PRE80211 is not set 699# CONFIG_HOSTAP is not set
627# CONFIG_WLAN_80211 is not set
628 700
629# 701#
630# Enable WiMAX (Networking options) to see the WiMAX drivers 702# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -637,6 +709,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
637# CONFIG_NETCONSOLE is not set 709# CONFIG_NETCONSOLE is not set
638# CONFIG_NETPOLL is not set 710# CONFIG_NETPOLL is not set
639# CONFIG_NET_POLL_CONTROLLER is not set 711# CONFIG_NET_POLL_CONTROLLER is not set
712# CONFIG_VMXNET3 is not set
640# CONFIG_ISDN is not set 713# CONFIG_ISDN is not set
641# CONFIG_PHONE is not set 714# CONFIG_PHONE is not set
642 715
@@ -682,6 +755,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
682# CONFIG_SERIAL_JSM is not set 755# CONFIG_SERIAL_JSM is not set
683CONFIG_SERIAL_OF_PLATFORM=y 756CONFIG_SERIAL_OF_PLATFORM=y
684# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 757# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
758# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
685CONFIG_UNIX98_PTYS=y 759CONFIG_UNIX98_PTYS=y
686# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 760# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
687CONFIG_LEGACY_PTYS=y 761CONFIG_LEGACY_PTYS=y
@@ -698,6 +772,11 @@ CONFIG_LEGACY_PTY_COUNT=256
698CONFIG_DEVPORT=y 772CONFIG_DEVPORT=y
699# CONFIG_I2C is not set 773# CONFIG_I2C is not set
700# CONFIG_SPI is not set 774# CONFIG_SPI is not set
775
776#
777# PPS support
778#
779# CONFIG_PPS is not set
701CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 780CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
702# CONFIG_GPIOLIB is not set 781# CONFIG_GPIOLIB is not set
703# CONFIG_W1 is not set 782# CONFIG_W1 is not set
@@ -720,27 +799,13 @@ CONFIG_SSB_POSSIBLE=y
720# CONFIG_HTC_PASIC3 is not set 799# CONFIG_HTC_PASIC3 is not set
721# CONFIG_MFD_TMIO is not set 800# CONFIG_MFD_TMIO is not set
722# CONFIG_REGULATOR is not set 801# CONFIG_REGULATOR is not set
723 802# CONFIG_MEDIA_SUPPORT is not set
724#
725# Multimedia devices
726#
727
728#
729# Multimedia core support
730#
731# CONFIG_VIDEO_DEV is not set
732# CONFIG_DVB_CORE is not set
733# CONFIG_VIDEO_MEDIA is not set
734
735#
736# Multimedia drivers
737#
738CONFIG_DAB=y
739 803
740# 804#
741# Graphics support 805# Graphics support
742# 806#
743# CONFIG_AGP is not set 807# CONFIG_AGP is not set
808CONFIG_VGA_ARB=y
744# CONFIG_DRM is not set 809# CONFIG_DRM is not set
745# CONFIG_VGASTATE is not set 810# CONFIG_VGASTATE is not set
746CONFIG_VIDEO_OUTPUT_CONTROL=m 811CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -783,6 +848,10 @@ CONFIG_USB_ARCH_HAS_EHCI=y
783# CONFIG_DMADEVICES is not set 848# CONFIG_DMADEVICES is not set
784# CONFIG_AUXDISPLAY is not set 849# CONFIG_AUXDISPLAY is not set
785# CONFIG_UIO is not set 850# CONFIG_UIO is not set
851
852#
853# TI VLYNQ
854#
786# CONFIG_STAGING is not set 855# CONFIG_STAGING is not set
787 856
788# 857#
@@ -793,14 +862,17 @@ CONFIG_EXT2_FS=y
793# CONFIG_EXT2_FS_XIP is not set 862# CONFIG_EXT2_FS_XIP is not set
794# CONFIG_EXT3_FS is not set 863# CONFIG_EXT3_FS is not set
795# CONFIG_EXT4_FS is not set 864# CONFIG_EXT4_FS is not set
865CONFIG_EXT4_USE_FOR_EXT23=y
796# CONFIG_REISERFS_FS is not set 866# CONFIG_REISERFS_FS is not set
797# CONFIG_JFS_FS is not set 867# CONFIG_JFS_FS is not set
798# CONFIG_FS_POSIX_ACL is not set 868# CONFIG_FS_POSIX_ACL is not set
799CONFIG_FILE_LOCKING=y
800# CONFIG_XFS_FS is not set 869# CONFIG_XFS_FS is not set
801# CONFIG_GFS2_FS is not set 870# CONFIG_GFS2_FS is not set
802# CONFIG_OCFS2_FS is not set 871# CONFIG_OCFS2_FS is not set
803# CONFIG_BTRFS_FS is not set 872# CONFIG_BTRFS_FS is not set
873# CONFIG_NILFS2_FS is not set
874CONFIG_FILE_LOCKING=y
875CONFIG_FSNOTIFY=y
804CONFIG_DNOTIFY=y 876CONFIG_DNOTIFY=y
805CONFIG_INOTIFY=y 877CONFIG_INOTIFY=y
806CONFIG_INOTIFY_USER=y 878CONFIG_INOTIFY_USER=y
@@ -916,6 +988,7 @@ CONFIG_HAS_IOPORT=y
916CONFIG_HAS_DMA=y 988CONFIG_HAS_DMA=y
917CONFIG_HAVE_LMB=y 989CONFIG_HAVE_LMB=y
918CONFIG_NLATTR=y 990CONFIG_NLATTR=y
991CONFIG_GENERIC_ATOMIC64=y
919 992
920# 993#
921# Kernel hacking 994# Kernel hacking
@@ -925,6 +998,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
925CONFIG_ENABLE_MUST_CHECK=y 998CONFIG_ENABLE_MUST_CHECK=y
926CONFIG_FRAME_WARN=1024 999CONFIG_FRAME_WARN=1024
927CONFIG_MAGIC_SYSRQ=y 1000CONFIG_MAGIC_SYSRQ=y
1001# CONFIG_STRIP_ASM_SYMS is not set
928# CONFIG_UNUSED_SYMBOLS is not set 1002# CONFIG_UNUSED_SYMBOLS is not set
929CONFIG_DEBUG_FS=y 1003CONFIG_DEBUG_FS=y
930# CONFIG_HEADERS_CHECK is not set 1004# CONFIG_HEADERS_CHECK is not set
@@ -933,16 +1007,23 @@ CONFIG_DEBUG_KERNEL=y
933CONFIG_DETECT_SOFTLOCKUP=y 1007CONFIG_DETECT_SOFTLOCKUP=y
934# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 1008# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
935CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 1009CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1010CONFIG_DETECT_HUNG_TASK=y
1011# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
1012CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
936CONFIG_SCHED_DEBUG=y 1013CONFIG_SCHED_DEBUG=y
937# CONFIG_SCHEDSTATS is not set 1014# CONFIG_SCHEDSTATS is not set
938# CONFIG_TIMER_STATS is not set 1015# CONFIG_TIMER_STATS is not set
939# CONFIG_DEBUG_OBJECTS is not set 1016# CONFIG_DEBUG_OBJECTS is not set
940# CONFIG_SLUB_DEBUG_ON is not set 1017# CONFIG_SLUB_DEBUG_ON is not set
941# CONFIG_SLUB_STATS is not set 1018# CONFIG_SLUB_STATS is not set
1019# CONFIG_DEBUG_KMEMLEAK is not set
942# CONFIG_DEBUG_RT_MUTEXES is not set 1020# CONFIG_DEBUG_RT_MUTEXES is not set
943# CONFIG_RT_MUTEX_TESTER is not set 1021# CONFIG_RT_MUTEX_TESTER is not set
944# CONFIG_DEBUG_SPINLOCK is not set 1022# CONFIG_DEBUG_SPINLOCK is not set
945# CONFIG_DEBUG_MUTEXES is not set 1023# CONFIG_DEBUG_MUTEXES is not set
1024# CONFIG_DEBUG_LOCK_ALLOC is not set
1025# CONFIG_PROVE_LOCKING is not set
1026# CONFIG_LOCK_STAT is not set
946# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1027# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
947# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1028# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
948# CONFIG_DEBUG_KOBJECT is not set 1029# CONFIG_DEBUG_KOBJECT is not set
@@ -954,11 +1035,12 @@ CONFIG_SCHED_DEBUG=y
954# CONFIG_DEBUG_LIST is not set 1035# CONFIG_DEBUG_LIST is not set
955# CONFIG_DEBUG_SG is not set 1036# CONFIG_DEBUG_SG is not set
956# CONFIG_DEBUG_NOTIFIERS is not set 1037# CONFIG_DEBUG_NOTIFIERS is not set
957# CONFIG_BOOT_PRINTK_DELAY is not set 1038# CONFIG_DEBUG_CREDENTIALS is not set
958# CONFIG_RCU_TORTURE_TEST is not set 1039# CONFIG_RCU_TORTURE_TEST is not set
959# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1040# CONFIG_RCU_CPU_STALL_DETECTOR is not set
960# CONFIG_BACKTRACE_SELF_TEST is not set 1041# CONFIG_BACKTRACE_SELF_TEST is not set
961# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1042# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1043# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
962# CONFIG_FAULT_INJECTION is not set 1044# CONFIG_FAULT_INJECTION is not set
963# CONFIG_LATENCYTOP is not set 1045# CONFIG_LATENCYTOP is not set
964CONFIG_SYSCTL_SYSCALL_CHECK=y 1046CONFIG_SYSCTL_SYSCALL_CHECK=y
@@ -968,27 +1050,30 @@ CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
968CONFIG_HAVE_DYNAMIC_FTRACE=y 1050CONFIG_HAVE_DYNAMIC_FTRACE=y
969CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1051CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
970CONFIG_TRACING_SUPPORT=y 1052CONFIG_TRACING_SUPPORT=y
971 1053CONFIG_FTRACE=y
972#
973# Tracers
974#
975# CONFIG_FUNCTION_TRACER is not set 1054# CONFIG_FUNCTION_TRACER is not set
1055# CONFIG_IRQSOFF_TRACER is not set
976# CONFIG_SCHED_TRACER is not set 1056# CONFIG_SCHED_TRACER is not set
977# CONFIG_CONTEXT_SWITCH_TRACER is not set 1057# CONFIG_ENABLE_DEFAULT_TRACERS is not set
978# CONFIG_EVENT_TRACER is not set
979# CONFIG_BOOT_TRACER is not set 1058# CONFIG_BOOT_TRACER is not set
980# CONFIG_TRACE_BRANCH_PROFILING is not set 1059CONFIG_BRANCH_PROFILE_NONE=y
1060# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1061# CONFIG_PROFILE_ALL_BRANCHES is not set
981# CONFIG_STACK_TRACER is not set 1062# CONFIG_STACK_TRACER is not set
982# CONFIG_KMEMTRACE is not set 1063# CONFIG_KMEMTRACE is not set
983# CONFIG_WORKQUEUE_TRACER is not set 1064# CONFIG_WORKQUEUE_TRACER is not set
984# CONFIG_BLK_DEV_IO_TRACE is not set 1065# CONFIG_BLK_DEV_IO_TRACE is not set
985# CONFIG_DYNAMIC_DEBUG is not set 1066# CONFIG_DYNAMIC_DEBUG is not set
1067# CONFIG_DMA_API_DEBUG is not set
986# CONFIG_SAMPLES is not set 1068# CONFIG_SAMPLES is not set
987CONFIG_HAVE_ARCH_KGDB=y 1069CONFIG_HAVE_ARCH_KGDB=y
988# CONFIG_KGDB is not set 1070# CONFIG_KGDB is not set
1071# CONFIG_PPC_DISABLE_WERROR is not set
1072CONFIG_PPC_WERROR=y
989CONFIG_PRINT_STACK_DEPTH=64 1073CONFIG_PRINT_STACK_DEPTH=64
990# CONFIG_DEBUG_STACKOVERFLOW is not set 1074# CONFIG_DEBUG_STACKOVERFLOW is not set
991# CONFIG_DEBUG_STACK_USAGE is not set 1075# CONFIG_DEBUG_STACK_USAGE is not set
1076# CONFIG_PPC_EMULATED_STATS is not set
992# CONFIG_CODE_PATCHING_SELFTEST is not set 1077# CONFIG_CODE_PATCHING_SELFTEST is not set
993# CONFIG_FTR_FIXUP_SELFTEST is not set 1078# CONFIG_FTR_FIXUP_SELFTEST is not set
994# CONFIG_MSI_BITMAP_SELFTEST is not set 1079# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -1004,13 +1089,16 @@ CONFIG_PRINT_STACK_DEPTH=64
1004# CONFIG_KEYS is not set 1089# CONFIG_KEYS is not set
1005# CONFIG_SECURITY is not set 1090# CONFIG_SECURITY is not set
1006# CONFIG_SECURITYFS is not set 1091# CONFIG_SECURITYFS is not set
1007# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1092# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1093# CONFIG_DEFAULT_SECURITY_SMACK is not set
1094# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1095CONFIG_DEFAULT_SECURITY_DAC=y
1096CONFIG_DEFAULT_SECURITY=""
1008CONFIG_CRYPTO=y 1097CONFIG_CRYPTO=y
1009 1098
1010# 1099#
1011# Crypto core or helper 1100# Crypto core or helper
1012# 1101#
1013# CONFIG_CRYPTO_FIPS is not set
1014CONFIG_CRYPTO_ALGAPI=y 1102CONFIG_CRYPTO_ALGAPI=y
1015CONFIG_CRYPTO_ALGAPI2=y 1103CONFIG_CRYPTO_ALGAPI2=y
1016CONFIG_CRYPTO_AEAD2=y 1104CONFIG_CRYPTO_AEAD2=y
@@ -1052,11 +1140,13 @@ CONFIG_CRYPTO_PCBC=y
1052# 1140#
1053# CONFIG_CRYPTO_HMAC is not set 1141# CONFIG_CRYPTO_HMAC is not set
1054# CONFIG_CRYPTO_XCBC is not set 1142# CONFIG_CRYPTO_XCBC is not set
1143# CONFIG_CRYPTO_VMAC is not set
1055 1144
1056# 1145#
1057# Digest 1146# Digest
1058# 1147#
1059# CONFIG_CRYPTO_CRC32C is not set 1148# CONFIG_CRYPTO_CRC32C is not set
1149# CONFIG_CRYPTO_GHASH is not set
1060# CONFIG_CRYPTO_MD4 is not set 1150# CONFIG_CRYPTO_MD4 is not set
1061CONFIG_CRYPTO_MD5=y 1151CONFIG_CRYPTO_MD5=y
1062# CONFIG_CRYPTO_MICHAEL_MIC is not set 1152# CONFIG_CRYPTO_MICHAEL_MIC is not set
diff --git a/arch/powerpc/configs/44x/taishan_defconfig b/arch/powerpc/configs/44x/taishan_defconfig
index ef32cc4f82eb..12041d355b8c 100644
--- a/arch/powerpc/configs/44x/taishan_defconfig
+++ b/arch/powerpc/configs/44x/taishan_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Tue Jan 20 08:22:47 2009 4# Mon Jan 4 15:21:04 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -19,6 +19,7 @@ CONFIG_BOOKE=y
19CONFIG_PTE_64BIT=y 19CONFIG_PTE_64BIT=y
20CONFIG_PHYS_64BIT=y 20CONFIG_PHYS_64BIT=y
21CONFIG_PPC_MMU_NOHASH=y 21CONFIG_PPC_MMU_NOHASH=y
22CONFIG_PPC_MMU_NOHASH_32=y
22# CONFIG_PPC_MM_SLICES is not set 23# CONFIG_PPC_MM_SLICES is not set
23CONFIG_NOT_COHERENT_CACHE=y 24CONFIG_NOT_COHERENT_CACHE=y
24CONFIG_PPC32=y 25CONFIG_PPC32=y
@@ -30,15 +31,18 @@ CONFIG_GENERIC_TIME=y
30CONFIG_GENERIC_TIME_VSYSCALL=y 31CONFIG_GENERIC_TIME_VSYSCALL=y
31CONFIG_GENERIC_CLOCKEVENTS=y 32CONFIG_GENERIC_CLOCKEVENTS=y
32CONFIG_GENERIC_HARDIRQS=y 33CONFIG_GENERIC_HARDIRQS=y
34CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
33# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 35# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
36# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 37CONFIG_IRQ_PER_CPU=y
38CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 39CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 40CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y
37CONFIG_LOCKDEP_SUPPORT=y 42CONFIG_LOCKDEP_SUPPORT=y
38CONFIG_RWSEM_XCHGADD_ALGORITHM=y 43CONFIG_RWSEM_XCHGADD_ALGORITHM=y
39CONFIG_ARCH_HAS_ILOG2_U32=y 44CONFIG_ARCH_HAS_ILOG2_U32=y
40CONFIG_GENERIC_HWEIGHT=y 45CONFIG_GENERIC_HWEIGHT=y
41CONFIG_GENERIC_CALIBRATE_DELAY=y
42CONFIG_GENERIC_FIND_NEXT_BIT=y 46CONFIG_GENERIC_FIND_NEXT_BIT=y
43# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 47# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
44CONFIG_PPC=y 48CONFIG_PPC=y
@@ -52,11 +56,15 @@ CONFIG_PPC_UDBG_16550=y
52# CONFIG_GENERIC_TBSYNC is not set 56# CONFIG_GENERIC_TBSYNC is not set
53CONFIG_AUDIT_ARCH=y 57CONFIG_AUDIT_ARCH=y
54CONFIG_GENERIC_BUG=y 58CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y
55# CONFIG_DEFAULT_UIMAGE is not set 60# CONFIG_DEFAULT_UIMAGE is not set
61CONFIG_ARCH_HIBERNATION_POSSIBLE=y
56CONFIG_PPC_DCR_NATIVE=y 62CONFIG_PPC_DCR_NATIVE=y
57# CONFIG_PPC_DCR_MMIO is not set 63# CONFIG_PPC_DCR_MMIO is not set
58CONFIG_PPC_DCR=y 64CONFIG_PPC_DCR=y
65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
59CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 66CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
67CONFIG_CONSTRUCTORS=y
60 68
61# 69#
62# General setup 70# General setup
@@ -70,9 +78,21 @@ CONFIG_SWAP=y
70CONFIG_SYSVIPC=y 78CONFIG_SYSVIPC=y
71CONFIG_SYSVIPC_SYSCTL=y 79CONFIG_SYSVIPC_SYSCTL=y
72CONFIG_POSIX_MQUEUE=y 80CONFIG_POSIX_MQUEUE=y
81CONFIG_POSIX_MQUEUE_SYSCTL=y
73# CONFIG_BSD_PROCESS_ACCT is not set 82# CONFIG_BSD_PROCESS_ACCT is not set
74# CONFIG_TASKSTATS is not set 83# CONFIG_TASKSTATS is not set
75# CONFIG_AUDIT is not set 84# CONFIG_AUDIT is not set
85
86#
87# RCU Subsystem
88#
89CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set
91# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set
95# CONFIG_TREE_RCU_TRACE is not set
76# CONFIG_IKCONFIG is not set 96# CONFIG_IKCONFIG is not set
77CONFIG_LOG_BUF_SHIFT=14 97CONFIG_LOG_BUF_SHIFT=14
78CONFIG_GROUP_SCHED=y 98CONFIG_GROUP_SCHED=y
@@ -87,8 +107,12 @@ CONFIG_SYSFS_DEPRECATED_V2=y
87# CONFIG_NAMESPACES is not set 107# CONFIG_NAMESPACES is not set
88CONFIG_BLK_DEV_INITRD=y 108CONFIG_BLK_DEV_INITRD=y
89CONFIG_INITRAMFS_SOURCE="" 109CONFIG_INITRAMFS_SOURCE=""
110CONFIG_RD_GZIP=y
111# CONFIG_RD_BZIP2 is not set
112# CONFIG_RD_LZMA is not set
90# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 113# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
91CONFIG_SYSCTL=y 114CONFIG_SYSCTL=y
115CONFIG_ANON_INODES=y
92CONFIG_EMBEDDED=y 116CONFIG_EMBEDDED=y
93CONFIG_SYSCTL_SYSCALL=y 117CONFIG_SYSCTL_SYSCALL=y
94CONFIG_KALLSYMS=y 118CONFIG_KALLSYMS=y
@@ -98,19 +122,25 @@ CONFIG_HOTPLUG=y
98CONFIG_PRINTK=y 122CONFIG_PRINTK=y
99CONFIG_BUG=y 123CONFIG_BUG=y
100CONFIG_ELF_CORE=y 124CONFIG_ELF_CORE=y
101CONFIG_COMPAT_BRK=y
102CONFIG_BASE_FULL=y 125CONFIG_BASE_FULL=y
103CONFIG_FUTEX=y 126CONFIG_FUTEX=y
104CONFIG_ANON_INODES=y
105CONFIG_EPOLL=y 127CONFIG_EPOLL=y
106CONFIG_SIGNALFD=y 128CONFIG_SIGNALFD=y
107CONFIG_TIMERFD=y 129CONFIG_TIMERFD=y
108CONFIG_EVENTFD=y 130CONFIG_EVENTFD=y
109CONFIG_SHMEM=y 131CONFIG_SHMEM=y
110CONFIG_AIO=y 132CONFIG_AIO=y
133CONFIG_HAVE_PERF_EVENTS=y
134
135#
136# Kernel Performance Events And Counters
137#
138# CONFIG_PERF_EVENTS is not set
139# CONFIG_PERF_COUNTERS is not set
111CONFIG_VM_EVENT_COUNTERS=y 140CONFIG_VM_EVENT_COUNTERS=y
112CONFIG_PCI_QUIRKS=y 141CONFIG_PCI_QUIRKS=y
113CONFIG_SLUB_DEBUG=y 142CONFIG_SLUB_DEBUG=y
143CONFIG_COMPAT_BRK=y
114# CONFIG_SLAB is not set 144# CONFIG_SLAB is not set
115CONFIG_SLUB=y 145CONFIG_SLUB=y
116# CONFIG_SLOB is not set 146# CONFIG_SLOB is not set
@@ -122,6 +152,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
122CONFIG_HAVE_KPROBES=y 152CONFIG_HAVE_KPROBES=y
123CONFIG_HAVE_KRETPROBES=y 153CONFIG_HAVE_KRETPROBES=y
124CONFIG_HAVE_ARCH_TRACEHOOK=y 154CONFIG_HAVE_ARCH_TRACEHOOK=y
155CONFIG_HAVE_DMA_ATTRS=y
156CONFIG_HAVE_DMA_API_DEBUG=y
157
158#
159# GCOV-based kernel profiling
160#
161# CONFIG_GCOV_KERNEL is not set
162# CONFIG_SLOW_WORK is not set
125# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 163# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
126CONFIG_SLABINFO=y 164CONFIG_SLABINFO=y
127CONFIG_RT_MUTEXES=y 165CONFIG_RT_MUTEXES=y
@@ -133,8 +171,7 @@ CONFIG_MODULE_UNLOAD=y
133# CONFIG_MODVERSIONS is not set 171# CONFIG_MODVERSIONS is not set
134# CONFIG_MODULE_SRCVERSION_ALL is not set 172# CONFIG_MODULE_SRCVERSION_ALL is not set
135CONFIG_BLOCK=y 173CONFIG_BLOCK=y
136CONFIG_LBD=y 174CONFIG_LBDAF=y
137# CONFIG_BLK_DEV_IO_TRACE is not set
138# CONFIG_BLK_DEV_BSG is not set 175# CONFIG_BLK_DEV_BSG is not set
139# CONFIG_BLK_DEV_INTEGRITY is not set 176# CONFIG_BLK_DEV_INTEGRITY is not set
140 177
@@ -142,19 +179,41 @@ CONFIG_LBD=y
142# IO Schedulers 179# IO Schedulers
143# 180#
144CONFIG_IOSCHED_NOOP=y 181CONFIG_IOSCHED_NOOP=y
145CONFIG_IOSCHED_AS=y
146CONFIG_IOSCHED_DEADLINE=y 182CONFIG_IOSCHED_DEADLINE=y
147CONFIG_IOSCHED_CFQ=y 183CONFIG_IOSCHED_CFQ=y
148CONFIG_DEFAULT_AS=y
149# CONFIG_DEFAULT_DEADLINE is not set 184# CONFIG_DEFAULT_DEADLINE is not set
150# CONFIG_DEFAULT_CFQ is not set 185CONFIG_DEFAULT_CFQ=y
151# CONFIG_DEFAULT_NOOP is not set 186# CONFIG_DEFAULT_NOOP is not set
152CONFIG_DEFAULT_IOSCHED="anticipatory" 187CONFIG_DEFAULT_IOSCHED="cfq"
153CONFIG_CLASSIC_RCU=y 188# CONFIG_INLINE_SPIN_TRYLOCK is not set
154# CONFIG_TREE_RCU is not set 189# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
155# CONFIG_PREEMPT_RCU is not set 190# CONFIG_INLINE_SPIN_LOCK is not set
156# CONFIG_TREE_RCU_TRACE is not set 191# CONFIG_INLINE_SPIN_LOCK_BH is not set
157# CONFIG_PREEMPT_RCU_TRACE is not set 192# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
193# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
194CONFIG_INLINE_SPIN_UNLOCK=y
195# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
196CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
197# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
198# CONFIG_INLINE_READ_TRYLOCK is not set
199# CONFIG_INLINE_READ_LOCK is not set
200# CONFIG_INLINE_READ_LOCK_BH is not set
201# CONFIG_INLINE_READ_LOCK_IRQ is not set
202# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
203CONFIG_INLINE_READ_UNLOCK=y
204# CONFIG_INLINE_READ_UNLOCK_BH is not set
205CONFIG_INLINE_READ_UNLOCK_IRQ=y
206# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
207# CONFIG_INLINE_WRITE_TRYLOCK is not set
208# CONFIG_INLINE_WRITE_LOCK is not set
209# CONFIG_INLINE_WRITE_LOCK_BH is not set
210# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
212CONFIG_INLINE_WRITE_UNLOCK=y
213# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
214CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
215# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
216# CONFIG_MUTEX_SPIN_ON_OWNER is not set
158# CONFIG_FREEZER is not set 217# CONFIG_FREEZER is not set
159# CONFIG_PPC4xx_PCI_EXPRESS is not set 218# CONFIG_PPC4xx_PCI_EXPRESS is not set
160 219
@@ -175,6 +234,8 @@ CONFIG_TAISHAN=y
175# CONFIG_ARCHES is not set 234# CONFIG_ARCHES is not set
176# CONFIG_CANYONLANDS is not set 235# CONFIG_CANYONLANDS is not set
177# CONFIG_GLACIER is not set 236# CONFIG_GLACIER is not set
237# CONFIG_REDWOOD is not set
238# CONFIG_EIGER is not set
178# CONFIG_YOSEMITE is not set 239# CONFIG_YOSEMITE is not set
179# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 240# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
180CONFIG_PPC44x_SIMPLE=y 241CONFIG_PPC44x_SIMPLE=y
@@ -216,10 +277,12 @@ CONFIG_BINFMT_ELF=y
216# CONFIG_BINFMT_MISC is not set 277# CONFIG_BINFMT_MISC is not set
217# CONFIG_MATH_EMULATION is not set 278# CONFIG_MATH_EMULATION is not set
218# CONFIG_IOMMU_HELPER is not set 279# CONFIG_IOMMU_HELPER is not set
219CONFIG_PPC_NEED_DMA_SYNC_OPS=y 280# CONFIG_SWIOTLB is not set
220CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
221CONFIG_ARCH_HAS_WALK_MEMORY=y 282CONFIG_ARCH_HAS_WALK_MEMORY=y
222CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
284CONFIG_SPARSE_IRQ=y
285CONFIG_MAX_ACTIVE_REGIONS=32
223CONFIG_ARCH_FLATMEM_ENABLE=y 286CONFIG_ARCH_FLATMEM_ENABLE=y
224CONFIG_ARCH_POPULATES_NODE_MAP=y 287CONFIG_ARCH_POPULATES_NODE_MAP=y
225CONFIG_SELECT_MEMORY_MODEL=y 288CONFIG_SELECT_MEMORY_MODEL=y
@@ -235,10 +298,13 @@ CONFIG_PHYS_ADDR_T_64BIT=y
235CONFIG_ZONE_DMA_FLAG=1 298CONFIG_ZONE_DMA_FLAG=1
236CONFIG_BOUNCE=y 299CONFIG_BOUNCE=y
237CONFIG_VIRT_TO_BUS=y 300CONFIG_VIRT_TO_BUS=y
238CONFIG_UNEVICTABLE_LRU=y 301# CONFIG_KSM is not set
302CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
303CONFIG_STDBINUTILS=y
239CONFIG_PPC_4K_PAGES=y 304CONFIG_PPC_4K_PAGES=y
240# CONFIG_PPC_16K_PAGES is not set 305# CONFIG_PPC_16K_PAGES is not set
241# CONFIG_PPC_64K_PAGES is not set 306# CONFIG_PPC_64K_PAGES is not set
307# CONFIG_PPC_256K_PAGES is not set
242CONFIG_FORCE_MAX_ZONEORDER=11 308CONFIG_FORCE_MAX_ZONEORDER=11
243CONFIG_PROC_DEVICETREE=y 309CONFIG_PROC_DEVICETREE=y
244CONFIG_CMDLINE_BOOL=y 310CONFIG_CMDLINE_BOOL=y
@@ -263,6 +329,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
263# CONFIG_PCI_LEGACY is not set 329# CONFIG_PCI_LEGACY is not set
264# CONFIG_PCI_DEBUG is not set 330# CONFIG_PCI_DEBUG is not set
265# CONFIG_PCI_STUB is not set 331# CONFIG_PCI_STUB is not set
332# CONFIG_PCI_IOV is not set
266# CONFIG_PCCARD is not set 333# CONFIG_PCCARD is not set
267# CONFIG_HOTPLUG_PCI is not set 334# CONFIG_HOTPLUG_PCI is not set
268# CONFIG_HAS_RAPIDIO is not set 335# CONFIG_HAS_RAPIDIO is not set
@@ -280,14 +347,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
280CONFIG_KERNEL_START=0xc0000000 347CONFIG_KERNEL_START=0xc0000000
281CONFIG_PHYSICAL_START=0x00000000 348CONFIG_PHYSICAL_START=0x00000000
282CONFIG_TASK_SIZE=0xc0000000 349CONFIG_TASK_SIZE=0xc0000000
283CONFIG_CONSISTENT_START=0xff100000
284CONFIG_CONSISTENT_SIZE=0x00200000 350CONFIG_CONSISTENT_SIZE=0x00200000
285CONFIG_NET=y 351CONFIG_NET=y
286 352
287# 353#
288# Networking options 354# Networking options
289# 355#
290CONFIG_COMPAT_NET_DEV_OPS=y
291CONFIG_PACKET=y 356CONFIG_PACKET=y
292# CONFIG_PACKET_MMAP is not set 357# CONFIG_PACKET_MMAP is not set
293CONFIG_UNIX=y 358CONFIG_UNIX=y
@@ -324,6 +389,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
324# CONFIG_NETFILTER is not set 389# CONFIG_NETFILTER is not set
325# CONFIG_IP_DCCP is not set 390# CONFIG_IP_DCCP is not set
326# CONFIG_IP_SCTP is not set 391# CONFIG_IP_SCTP is not set
392# CONFIG_RDS is not set
327# CONFIG_TIPC is not set 393# CONFIG_TIPC is not set
328# CONFIG_ATM is not set 394# CONFIG_ATM is not set
329# CONFIG_BRIDGE is not set 395# CONFIG_BRIDGE is not set
@@ -337,6 +403,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
337# CONFIG_LAPB is not set 403# CONFIG_LAPB is not set
338# CONFIG_ECONET is not set 404# CONFIG_ECONET is not set
339# CONFIG_WAN_ROUTER is not set 405# CONFIG_WAN_ROUTER is not set
406# CONFIG_PHONET is not set
407# CONFIG_IEEE802154 is not set
340# CONFIG_NET_SCHED is not set 408# CONFIG_NET_SCHED is not set
341# CONFIG_DCB is not set 409# CONFIG_DCB is not set
342 410
@@ -349,8 +417,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
349# CONFIG_IRDA is not set 417# CONFIG_IRDA is not set
350# CONFIG_BT is not set 418# CONFIG_BT is not set
351# CONFIG_AF_RXRPC is not set 419# CONFIG_AF_RXRPC is not set
352# CONFIG_PHONET is not set 420CONFIG_WIRELESS=y
353# CONFIG_WIRELESS is not set 421# CONFIG_CFG80211 is not set
422# CONFIG_LIB80211 is not set
423
424#
425# CFG80211 needs to be enabled for MAC80211
426#
354# CONFIG_WIMAX is not set 427# CONFIG_WIMAX is not set
355# CONFIG_RFKILL is not set 428# CONFIG_RFKILL is not set
356# CONFIG_NET_9P is not set 429# CONFIG_NET_9P is not set
@@ -363,6 +436,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
363# Generic Driver Options 436# Generic Driver Options
364# 437#
365CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 438CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
439# CONFIG_DEVTMPFS is not set
366CONFIG_STANDALONE=y 440CONFIG_STANDALONE=y
367CONFIG_PREVENT_FIRMWARE_BUILD=y 441CONFIG_PREVENT_FIRMWARE_BUILD=y
368CONFIG_FW_LOADER=y 442CONFIG_FW_LOADER=y
@@ -375,9 +449,9 @@ CONFIG_CONNECTOR=y
375CONFIG_PROC_EVENTS=y 449CONFIG_PROC_EVENTS=y
376CONFIG_MTD=y 450CONFIG_MTD=y
377# CONFIG_MTD_DEBUG is not set 451# CONFIG_MTD_DEBUG is not set
452# CONFIG_MTD_TESTS is not set
378# CONFIG_MTD_CONCAT is not set 453# CONFIG_MTD_CONCAT is not set
379CONFIG_MTD_PARTITIONS=y 454CONFIG_MTD_PARTITIONS=y
380# CONFIG_MTD_TESTS is not set
381# CONFIG_MTD_REDBOOT_PARTS is not set 455# CONFIG_MTD_REDBOOT_PARTS is not set
382CONFIG_MTD_CMDLINE_PARTS=y 456CONFIG_MTD_CMDLINE_PARTS=y
383# CONFIG_MTD_OF_PARTS is not set 457# CONFIG_MTD_OF_PARTS is not set
@@ -453,7 +527,6 @@ CONFIG_MTD_PHYSMAP_OF=y
453# LPDDR flash memory drivers 527# LPDDR flash memory drivers
454# 528#
455# CONFIG_MTD_LPDDR is not set 529# CONFIG_MTD_LPDDR is not set
456# CONFIG_MTD_QINFO_PROBE is not set
457 530
458# 531#
459# UBI - Unsorted block images 532# UBI - Unsorted block images
@@ -469,6 +542,7 @@ CONFIG_BLK_DEV=y
469# CONFIG_BLK_DEV_UMEM is not set 542# CONFIG_BLK_DEV_UMEM is not set
470# CONFIG_BLK_DEV_COW_COMMON is not set 543# CONFIG_BLK_DEV_COW_COMMON is not set
471# CONFIG_BLK_DEV_LOOP is not set 544# CONFIG_BLK_DEV_LOOP is not set
545# CONFIG_BLK_DEV_DRBD is not set
472# CONFIG_BLK_DEV_NBD is not set 546# CONFIG_BLK_DEV_NBD is not set
473# CONFIG_BLK_DEV_SX8 is not set 547# CONFIG_BLK_DEV_SX8 is not set
474CONFIG_BLK_DEV_RAM=y 548CONFIG_BLK_DEV_RAM=y
@@ -481,12 +555,17 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
481# CONFIG_BLK_DEV_HD is not set 555# CONFIG_BLK_DEV_HD is not set
482CONFIG_MISC_DEVICES=y 556CONFIG_MISC_DEVICES=y
483# CONFIG_PHANTOM is not set 557# CONFIG_PHANTOM is not set
484# CONFIG_EEPROM_93CX6 is not set
485# CONFIG_SGI_IOC4 is not set 558# CONFIG_SGI_IOC4 is not set
486# CONFIG_TIFM_CORE is not set 559# CONFIG_TIFM_CORE is not set
487# CONFIG_ENCLOSURE_SERVICES is not set 560# CONFIG_ENCLOSURE_SERVICES is not set
488# CONFIG_HP_ILO is not set 561# CONFIG_HP_ILO is not set
489# CONFIG_C2PORT is not set 562# CONFIG_C2PORT is not set
563
564#
565# EEPROM support
566#
567# CONFIG_EEPROM_93CX6 is not set
568# CONFIG_CB710_CORE is not set
490CONFIG_HAVE_IDE=y 569CONFIG_HAVE_IDE=y
491# CONFIG_IDE is not set 570# CONFIG_IDE is not set
492 571
@@ -506,7 +585,11 @@ CONFIG_HAVE_IDE=y
506# 585#
507 586
508# 587#
509# Enable only one of the two stacks, unless you know what you are doing 588# You can enable one or both FireWire driver stacks.
589#
590
591#
592# See the help texts for more information.
510# 593#
511# CONFIG_FIREWIRE is not set 594# CONFIG_FIREWIRE is not set
512# CONFIG_IEEE1394 is not set 595# CONFIG_IEEE1394 is not set
@@ -529,6 +612,8 @@ CONFIG_NET_ETHERNET=y
529# CONFIG_SUNGEM is not set 612# CONFIG_SUNGEM is not set
530# CONFIG_CASSINI is not set 613# CONFIG_CASSINI is not set
531# CONFIG_NET_VENDOR_3COM is not set 614# CONFIG_NET_VENDOR_3COM is not set
615# CONFIG_ETHOC is not set
616# CONFIG_DNET is not set
532# CONFIG_NET_TULIP is not set 617# CONFIG_NET_TULIP is not set
533# CONFIG_HP100 is not set 618# CONFIG_HP100 is not set
534CONFIG_IBM_NEW_EMAC=y 619CONFIG_IBM_NEW_EMAC=y
@@ -547,7 +632,10 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
547# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 632# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
548# CONFIG_NET_PCI is not set 633# CONFIG_NET_PCI is not set
549# CONFIG_B44 is not set 634# CONFIG_B44 is not set
635# CONFIG_KS8842 is not set
636# CONFIG_KS8851_MLL is not set
550# CONFIG_ATL2 is not set 637# CONFIG_ATL2 is not set
638# CONFIG_XILINX_EMACLITE is not set
551CONFIG_NETDEV_1000=y 639CONFIG_NETDEV_1000=y
552# CONFIG_ACENIC is not set 640# CONFIG_ACENIC is not set
553# CONFIG_DL2K is not set 641# CONFIG_DL2K is not set
@@ -555,6 +643,7 @@ CONFIG_NETDEV_1000=y
555# CONFIG_E1000E is not set 643# CONFIG_E1000E is not set
556# CONFIG_IP1000 is not set 644# CONFIG_IP1000 is not set
557# CONFIG_IGB is not set 645# CONFIG_IGB is not set
646# CONFIG_IGBVF is not set
558# CONFIG_NS83820 is not set 647# CONFIG_NS83820 is not set
559# CONFIG_HAMACHI is not set 648# CONFIG_HAMACHI is not set
560# CONFIG_YELLOWFIN is not set 649# CONFIG_YELLOWFIN is not set
@@ -565,9 +654,13 @@ CONFIG_NETDEV_1000=y
565# CONFIG_VIA_VELOCITY is not set 654# CONFIG_VIA_VELOCITY is not set
566# CONFIG_TIGON3 is not set 655# CONFIG_TIGON3 is not set
567# CONFIG_BNX2 is not set 656# CONFIG_BNX2 is not set
657# CONFIG_CNIC is not set
658# CONFIG_MV643XX_ETH is not set
659# CONFIG_XILINX_LL_TEMAC is not set
568# CONFIG_QLA3XXX is not set 660# CONFIG_QLA3XXX is not set
569# CONFIG_ATL1 is not set 661# CONFIG_ATL1 is not set
570# CONFIG_ATL1E is not set 662# CONFIG_ATL1E is not set
663# CONFIG_ATL1C is not set
571# CONFIG_JME is not set 664# CONFIG_JME is not set
572CONFIG_NETDEV_10000=y 665CONFIG_NETDEV_10000=y
573# CONFIG_CHELSIO_T1 is not set 666# CONFIG_CHELSIO_T1 is not set
@@ -577,6 +670,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
577# CONFIG_IXGBE is not set 670# CONFIG_IXGBE is not set
578# CONFIG_IXGB is not set 671# CONFIG_IXGB is not set
579# CONFIG_S2IO is not set 672# CONFIG_S2IO is not set
673# CONFIG_VXGE is not set
580# CONFIG_MYRI10GE is not set 674# CONFIG_MYRI10GE is not set
581# CONFIG_NETXEN_NIC is not set 675# CONFIG_NETXEN_NIC is not set
582# CONFIG_NIU is not set 676# CONFIG_NIU is not set
@@ -586,14 +680,13 @@ CONFIG_CHELSIO_T3_DEPENDS=y
586# CONFIG_BNX2X is not set 680# CONFIG_BNX2X is not set
587# CONFIG_QLGE is not set 681# CONFIG_QLGE is not set
588# CONFIG_SFC is not set 682# CONFIG_SFC is not set
683# CONFIG_BE2NET is not set
589# CONFIG_TR is not set 684# CONFIG_TR is not set
590 685CONFIG_WLAN=y
591# 686# CONFIG_AIRO is not set
592# Wireless LAN 687# CONFIG_ATMEL is not set
593# 688# CONFIG_PRISM54 is not set
594# CONFIG_WLAN_PRE80211 is not set 689# CONFIG_HOSTAP is not set
595# CONFIG_WLAN_80211 is not set
596# CONFIG_IWLWIFI_LEDS is not set
597 690
598# 691#
599# Enable WiMAX (Networking options) to see the WiMAX drivers 692# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -606,6 +699,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
606# CONFIG_NETCONSOLE is not set 699# CONFIG_NETCONSOLE is not set
607# CONFIG_NETPOLL is not set 700# CONFIG_NETPOLL is not set
608# CONFIG_NET_POLL_CONTROLLER is not set 701# CONFIG_NET_POLL_CONTROLLER is not set
702# CONFIG_VMXNET3 is not set
609# CONFIG_ISDN is not set 703# CONFIG_ISDN is not set
610# CONFIG_PHONE is not set 704# CONFIG_PHONE is not set
611 705
@@ -651,6 +745,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
651# CONFIG_SERIAL_JSM is not set 745# CONFIG_SERIAL_JSM is not set
652CONFIG_SERIAL_OF_PLATFORM=y 746CONFIG_SERIAL_OF_PLATFORM=y
653# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 747# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
748# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
654CONFIG_UNIX98_PTYS=y 749CONFIG_UNIX98_PTYS=y
655# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 750# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
656CONFIG_LEGACY_PTYS=y 751CONFIG_LEGACY_PTYS=y
@@ -667,6 +762,11 @@ CONFIG_LEGACY_PTY_COUNT=256
667CONFIG_DEVPORT=y 762CONFIG_DEVPORT=y
668# CONFIG_I2C is not set 763# CONFIG_I2C is not set
669# CONFIG_SPI is not set 764# CONFIG_SPI is not set
765
766#
767# PPS support
768#
769# CONFIG_PPS is not set
670CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 770CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
671# CONFIG_GPIOLIB is not set 771# CONFIG_GPIOLIB is not set
672# CONFIG_W1 is not set 772# CONFIG_W1 is not set
@@ -689,27 +789,13 @@ CONFIG_SSB_POSSIBLE=y
689# CONFIG_HTC_PASIC3 is not set 789# CONFIG_HTC_PASIC3 is not set
690# CONFIG_MFD_TMIO is not set 790# CONFIG_MFD_TMIO is not set
691# CONFIG_REGULATOR is not set 791# CONFIG_REGULATOR is not set
692 792# CONFIG_MEDIA_SUPPORT is not set
693#
694# Multimedia devices
695#
696
697#
698# Multimedia core support
699#
700# CONFIG_VIDEO_DEV is not set
701# CONFIG_DVB_CORE is not set
702# CONFIG_VIDEO_MEDIA is not set
703
704#
705# Multimedia drivers
706#
707CONFIG_DAB=y
708 793
709# 794#
710# Graphics support 795# Graphics support
711# 796#
712# CONFIG_AGP is not set 797# CONFIG_AGP is not set
798CONFIG_VGA_ARB=y
713# CONFIG_DRM is not set 799# CONFIG_DRM is not set
714# CONFIG_VGASTATE is not set 800# CONFIG_VGASTATE is not set
715CONFIG_VIDEO_OUTPUT_CONTROL=m 801CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -734,7 +820,7 @@ CONFIG_USB_ARCH_HAS_EHCI=y
734# 820#
735 821
736# 822#
737# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 823# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
738# 824#
739# CONFIG_USB_GADGET is not set 825# CONFIG_USB_GADGET is not set
740 826
@@ -750,7 +836,12 @@ CONFIG_USB_ARCH_HAS_EHCI=y
750# CONFIG_EDAC is not set 836# CONFIG_EDAC is not set
751# CONFIG_RTC_CLASS is not set 837# CONFIG_RTC_CLASS is not set
752# CONFIG_DMADEVICES is not set 838# CONFIG_DMADEVICES is not set
839# CONFIG_AUXDISPLAY is not set
753# CONFIG_UIO is not set 840# CONFIG_UIO is not set
841
842#
843# TI VLYNQ
844#
754# CONFIG_STAGING is not set 845# CONFIG_STAGING is not set
755 846
756# 847#
@@ -761,14 +852,17 @@ CONFIG_EXT2_FS=y
761# CONFIG_EXT2_FS_XIP is not set 852# CONFIG_EXT2_FS_XIP is not set
762# CONFIG_EXT3_FS is not set 853# CONFIG_EXT3_FS is not set
763# CONFIG_EXT4_FS is not set 854# CONFIG_EXT4_FS is not set
855CONFIG_EXT4_USE_FOR_EXT23=y
764# CONFIG_REISERFS_FS is not set 856# CONFIG_REISERFS_FS is not set
765# CONFIG_JFS_FS is not set 857# CONFIG_JFS_FS is not set
766# CONFIG_FS_POSIX_ACL is not set 858# CONFIG_FS_POSIX_ACL is not set
767CONFIG_FILE_LOCKING=y
768# CONFIG_XFS_FS is not set 859# CONFIG_XFS_FS is not set
769# CONFIG_GFS2_FS is not set 860# CONFIG_GFS2_FS is not set
770# CONFIG_OCFS2_FS is not set 861# CONFIG_OCFS2_FS is not set
771# CONFIG_BTRFS_FS is not set 862# CONFIG_BTRFS_FS is not set
863# CONFIG_NILFS2_FS is not set
864CONFIG_FILE_LOCKING=y
865CONFIG_FSNOTIFY=y
772CONFIG_DNOTIFY=y 866CONFIG_DNOTIFY=y
773CONFIG_INOTIFY=y 867CONFIG_INOTIFY=y
774CONFIG_INOTIFY_USER=y 868CONFIG_INOTIFY_USER=y
@@ -778,6 +872,11 @@ CONFIG_INOTIFY_USER=y
778# CONFIG_FUSE_FS is not set 872# CONFIG_FUSE_FS is not set
779 873
780# 874#
875# Caches
876#
877# CONFIG_FSCACHE is not set
878
879#
781# CD-ROM/DVD Filesystems 880# CD-ROM/DVD Filesystems
782# 881#
783# CONFIG_ISO9660_FS is not set 882# CONFIG_ISO9660_FS is not set
@@ -832,7 +931,6 @@ CONFIG_LOCKD=y
832CONFIG_LOCKD_V4=y 931CONFIG_LOCKD_V4=y
833CONFIG_NFS_COMMON=y 932CONFIG_NFS_COMMON=y
834CONFIG_SUNRPC=y 933CONFIG_SUNRPC=y
835# CONFIG_SUNRPC_REGISTER_V4 is not set
836# CONFIG_RPCSEC_GSS_KRB5 is not set 934# CONFIG_RPCSEC_GSS_KRB5 is not set
837# CONFIG_RPCSEC_GSS_SPKM3 is not set 935# CONFIG_RPCSEC_GSS_SPKM3 is not set
838# CONFIG_SMB_FS is not set 936# CONFIG_SMB_FS is not set
@@ -848,6 +946,7 @@ CONFIG_SUNRPC=y
848CONFIG_MSDOS_PARTITION=y 946CONFIG_MSDOS_PARTITION=y
849# CONFIG_NLS is not set 947# CONFIG_NLS is not set
850# CONFIG_DLM is not set 948# CONFIG_DLM is not set
949# CONFIG_BINARY_PRINTF is not set
851 950
852# 951#
853# Library routines 952# Library routines
@@ -862,11 +961,13 @@ CONFIG_CRC32=y
862# CONFIG_CRC7 is not set 961# CONFIG_CRC7 is not set
863# CONFIG_LIBCRC32C is not set 962# CONFIG_LIBCRC32C is not set
864CONFIG_ZLIB_INFLATE=y 963CONFIG_ZLIB_INFLATE=y
865CONFIG_PLIST=y 964CONFIG_DECOMPRESS_GZIP=y
866CONFIG_HAS_IOMEM=y 965CONFIG_HAS_IOMEM=y
867CONFIG_HAS_IOPORT=y 966CONFIG_HAS_IOPORT=y
868CONFIG_HAS_DMA=y 967CONFIG_HAS_DMA=y
869CONFIG_HAVE_LMB=y 968CONFIG_HAVE_LMB=y
969CONFIG_NLATTR=y
970CONFIG_GENERIC_ATOMIC64=y
870 971
871# 972#
872# Kernel hacking 973# Kernel hacking
@@ -876,6 +977,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
876CONFIG_ENABLE_MUST_CHECK=y 977CONFIG_ENABLE_MUST_CHECK=y
877CONFIG_FRAME_WARN=1024 978CONFIG_FRAME_WARN=1024
878CONFIG_MAGIC_SYSRQ=y 979CONFIG_MAGIC_SYSRQ=y
980# CONFIG_STRIP_ASM_SYMS is not set
879# CONFIG_UNUSED_SYMBOLS is not set 981# CONFIG_UNUSED_SYMBOLS is not set
880CONFIG_DEBUG_FS=y 982CONFIG_DEBUG_FS=y
881# CONFIG_HEADERS_CHECK is not set 983# CONFIG_HEADERS_CHECK is not set
@@ -884,16 +986,23 @@ CONFIG_DEBUG_KERNEL=y
884CONFIG_DETECT_SOFTLOCKUP=y 986CONFIG_DETECT_SOFTLOCKUP=y
885# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 987# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
886CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 988CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
989CONFIG_DETECT_HUNG_TASK=y
990# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
991CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
887CONFIG_SCHED_DEBUG=y 992CONFIG_SCHED_DEBUG=y
888# CONFIG_SCHEDSTATS is not set 993# CONFIG_SCHEDSTATS is not set
889# CONFIG_TIMER_STATS is not set 994# CONFIG_TIMER_STATS is not set
890# CONFIG_DEBUG_OBJECTS is not set 995# CONFIG_DEBUG_OBJECTS is not set
891# CONFIG_SLUB_DEBUG_ON is not set 996# CONFIG_SLUB_DEBUG_ON is not set
892# CONFIG_SLUB_STATS is not set 997# CONFIG_SLUB_STATS is not set
998# CONFIG_DEBUG_KMEMLEAK is not set
893# CONFIG_DEBUG_RT_MUTEXES is not set 999# CONFIG_DEBUG_RT_MUTEXES is not set
894# CONFIG_RT_MUTEX_TESTER is not set 1000# CONFIG_RT_MUTEX_TESTER is not set
895# CONFIG_DEBUG_SPINLOCK is not set 1001# CONFIG_DEBUG_SPINLOCK is not set
896# CONFIG_DEBUG_MUTEXES is not set 1002# CONFIG_DEBUG_MUTEXES is not set
1003# CONFIG_DEBUG_LOCK_ALLOC is not set
1004# CONFIG_PROVE_LOCKING is not set
1005# CONFIG_LOCK_STAT is not set
897# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1006# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
898# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1007# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
899# CONFIG_DEBUG_KOBJECT is not set 1008# CONFIG_DEBUG_KOBJECT is not set
@@ -905,35 +1014,45 @@ CONFIG_SCHED_DEBUG=y
905# CONFIG_DEBUG_LIST is not set 1014# CONFIG_DEBUG_LIST is not set
906# CONFIG_DEBUG_SG is not set 1015# CONFIG_DEBUG_SG is not set
907# CONFIG_DEBUG_NOTIFIERS is not set 1016# CONFIG_DEBUG_NOTIFIERS is not set
908# CONFIG_BOOT_PRINTK_DELAY is not set 1017# CONFIG_DEBUG_CREDENTIALS is not set
909# CONFIG_RCU_TORTURE_TEST is not set 1018# CONFIG_RCU_TORTURE_TEST is not set
910# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1019# CONFIG_RCU_CPU_STALL_DETECTOR is not set
911# CONFIG_BACKTRACE_SELF_TEST is not set 1020# CONFIG_BACKTRACE_SELF_TEST is not set
912# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1021# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1022# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
913# CONFIG_FAULT_INJECTION is not set 1023# CONFIG_FAULT_INJECTION is not set
914# CONFIG_LATENCYTOP is not set 1024# CONFIG_LATENCYTOP is not set
915CONFIG_SYSCTL_SYSCALL_CHECK=y 1025CONFIG_SYSCTL_SYSCALL_CHECK=y
1026# CONFIG_DEBUG_PAGEALLOC is not set
916CONFIG_HAVE_FUNCTION_TRACER=y 1027CONFIG_HAVE_FUNCTION_TRACER=y
1028CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
917CONFIG_HAVE_DYNAMIC_FTRACE=y 1029CONFIG_HAVE_DYNAMIC_FTRACE=y
918CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1030CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
919 1031CONFIG_TRACING_SUPPORT=y
920# 1032CONFIG_FTRACE=y
921# Tracers
922#
923# CONFIG_FUNCTION_TRACER is not set 1033# CONFIG_FUNCTION_TRACER is not set
1034# CONFIG_IRQSOFF_TRACER is not set
924# CONFIG_SCHED_TRACER is not set 1035# CONFIG_SCHED_TRACER is not set
925# CONFIG_CONTEXT_SWITCH_TRACER is not set 1036# CONFIG_ENABLE_DEFAULT_TRACERS is not set
926# CONFIG_BOOT_TRACER is not set 1037# CONFIG_BOOT_TRACER is not set
927# CONFIG_TRACE_BRANCH_PROFILING is not set 1038CONFIG_BRANCH_PROFILE_NONE=y
1039# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1040# CONFIG_PROFILE_ALL_BRANCHES is not set
928# CONFIG_STACK_TRACER is not set 1041# CONFIG_STACK_TRACER is not set
929# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1042# CONFIG_KMEMTRACE is not set
1043# CONFIG_WORKQUEUE_TRACER is not set
1044# CONFIG_BLK_DEV_IO_TRACE is not set
1045# CONFIG_DYNAMIC_DEBUG is not set
1046# CONFIG_DMA_API_DEBUG is not set
930# CONFIG_SAMPLES is not set 1047# CONFIG_SAMPLES is not set
931CONFIG_HAVE_ARCH_KGDB=y 1048CONFIG_HAVE_ARCH_KGDB=y
932# CONFIG_KGDB is not set 1049# CONFIG_KGDB is not set
1050# CONFIG_PPC_DISABLE_WERROR is not set
1051CONFIG_PPC_WERROR=y
933CONFIG_PRINT_STACK_DEPTH=64 1052CONFIG_PRINT_STACK_DEPTH=64
934# CONFIG_DEBUG_STACKOVERFLOW is not set 1053# CONFIG_DEBUG_STACKOVERFLOW is not set
935# CONFIG_DEBUG_STACK_USAGE is not set 1054# CONFIG_DEBUG_STACK_USAGE is not set
936# CONFIG_DEBUG_PAGEALLOC is not set 1055# CONFIG_PPC_EMULATED_STATS is not set
937# CONFIG_CODE_PATCHING_SELFTEST is not set 1056# CONFIG_CODE_PATCHING_SELFTEST is not set
938# CONFIG_FTR_FIXUP_SELFTEST is not set 1057# CONFIG_FTR_FIXUP_SELFTEST is not set
939# CONFIG_MSI_BITMAP_SELFTEST is not set 1058# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -949,13 +1068,16 @@ CONFIG_PRINT_STACK_DEPTH=64
949# CONFIG_KEYS is not set 1068# CONFIG_KEYS is not set
950# CONFIG_SECURITY is not set 1069# CONFIG_SECURITY is not set
951# CONFIG_SECURITYFS is not set 1070# CONFIG_SECURITYFS is not set
952# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1071# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1072# CONFIG_DEFAULT_SECURITY_SMACK is not set
1073# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1074CONFIG_DEFAULT_SECURITY_DAC=y
1075CONFIG_DEFAULT_SECURITY=""
953CONFIG_CRYPTO=y 1076CONFIG_CRYPTO=y
954 1077
955# 1078#
956# Crypto core or helper 1079# Crypto core or helper
957# 1080#
958# CONFIG_CRYPTO_FIPS is not set
959CONFIG_CRYPTO_ALGAPI=y 1081CONFIG_CRYPTO_ALGAPI=y
960CONFIG_CRYPTO_ALGAPI2=y 1082CONFIG_CRYPTO_ALGAPI2=y
961CONFIG_CRYPTO_AEAD2=y 1083CONFIG_CRYPTO_AEAD2=y
@@ -964,10 +1086,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
964CONFIG_CRYPTO_HASH=y 1086CONFIG_CRYPTO_HASH=y
965CONFIG_CRYPTO_HASH2=y 1087CONFIG_CRYPTO_HASH2=y
966CONFIG_CRYPTO_RNG2=y 1088CONFIG_CRYPTO_RNG2=y
1089CONFIG_CRYPTO_PCOMP=y
967CONFIG_CRYPTO_MANAGER=y 1090CONFIG_CRYPTO_MANAGER=y
968CONFIG_CRYPTO_MANAGER2=y 1091CONFIG_CRYPTO_MANAGER2=y
969# CONFIG_CRYPTO_GF128MUL is not set 1092# CONFIG_CRYPTO_GF128MUL is not set
970# CONFIG_CRYPTO_NULL is not set 1093# CONFIG_CRYPTO_NULL is not set
1094CONFIG_CRYPTO_WORKQUEUE=y
971# CONFIG_CRYPTO_CRYPTD is not set 1095# CONFIG_CRYPTO_CRYPTD is not set
972# CONFIG_CRYPTO_AUTHENC is not set 1096# CONFIG_CRYPTO_AUTHENC is not set
973# CONFIG_CRYPTO_TEST is not set 1097# CONFIG_CRYPTO_TEST is not set
@@ -995,11 +1119,13 @@ CONFIG_CRYPTO_PCBC=y
995# 1119#
996# CONFIG_CRYPTO_HMAC is not set 1120# CONFIG_CRYPTO_HMAC is not set
997# CONFIG_CRYPTO_XCBC is not set 1121# CONFIG_CRYPTO_XCBC is not set
1122# CONFIG_CRYPTO_VMAC is not set
998 1123
999# 1124#
1000# Digest 1125# Digest
1001# 1126#
1002# CONFIG_CRYPTO_CRC32C is not set 1127# CONFIG_CRYPTO_CRC32C is not set
1128# CONFIG_CRYPTO_GHASH is not set
1003# CONFIG_CRYPTO_MD4 is not set 1129# CONFIG_CRYPTO_MD4 is not set
1004CONFIG_CRYPTO_MD5=y 1130CONFIG_CRYPTO_MD5=y
1005# CONFIG_CRYPTO_MICHAEL_MIC is not set 1131# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1036,6 +1162,7 @@ CONFIG_CRYPTO_DES=y
1036# Compression 1162# Compression
1037# 1163#
1038# CONFIG_CRYPTO_DEFLATE is not set 1164# CONFIG_CRYPTO_DEFLATE is not set
1165# CONFIG_CRYPTO_ZLIB is not set
1039# CONFIG_CRYPTO_LZO is not set 1166# CONFIG_CRYPTO_LZO is not set
1040 1167
1041# 1168#
@@ -1044,5 +1171,6 @@ CONFIG_CRYPTO_DES=y
1044# CONFIG_CRYPTO_ANSI_CPRNG is not set 1171# CONFIG_CRYPTO_ANSI_CPRNG is not set
1045CONFIG_CRYPTO_HW=y 1172CONFIG_CRYPTO_HW=y
1046# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1173# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1174# CONFIG_CRYPTO_DEV_PPC4XX is not set
1047# CONFIG_PPC_CLOCK is not set 1175# CONFIG_PPC_CLOCK is not set
1048# CONFIG_VIRTUALIZATION is not set 1176# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/44x/warp_defconfig b/arch/powerpc/configs/44x/warp_defconfig
index 787635f23d8f..99eff4dd9364 100644
--- a/arch/powerpc/configs/44x/warp_defconfig
+++ b/arch/powerpc/configs/44x/warp_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.30 3# Linux kernel version: 2.6.33-rc1
4# Tue Jun 9 23:35:36 2009 4# Mon Jan 4 15:27:46 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -20,6 +20,7 @@ CONFIG_BOOKE=y
20CONFIG_PTE_64BIT=y 20CONFIG_PTE_64BIT=y
21CONFIG_PHYS_64BIT=y 21CONFIG_PHYS_64BIT=y
22CONFIG_PPC_MMU_NOHASH=y 22CONFIG_PPC_MMU_NOHASH=y
23CONFIG_PPC_MMU_NOHASH_32=y
23# CONFIG_PPC_MM_SLICES is not set 24# CONFIG_PPC_MM_SLICES is not set
24CONFIG_NOT_COHERENT_CACHE=y 25CONFIG_NOT_COHERENT_CACHE=y
25CONFIG_PPC32=y 26CONFIG_PPC32=y
@@ -31,15 +32,18 @@ CONFIG_GENERIC_TIME=y
31CONFIG_GENERIC_TIME_VSYSCALL=y 32CONFIG_GENERIC_TIME_VSYSCALL=y
32CONFIG_GENERIC_CLOCKEVENTS=y 33CONFIG_GENERIC_CLOCKEVENTS=y
33CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
34# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
35CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
36CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
37CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
38CONFIG_LOCKDEP_SUPPORT=y 43CONFIG_LOCKDEP_SUPPORT=y
39CONFIG_RWSEM_XCHGADD_ALGORITHM=y 44CONFIG_RWSEM_XCHGADD_ALGORITHM=y
40CONFIG_ARCH_HAS_ILOG2_U32=y 45CONFIG_ARCH_HAS_ILOG2_U32=y
41CONFIG_GENERIC_HWEIGHT=y 46CONFIG_GENERIC_HWEIGHT=y
42CONFIG_GENERIC_CALIBRATE_DELAY=y
43CONFIG_GENERIC_FIND_NEXT_BIT=y 47CONFIG_GENERIC_FIND_NEXT_BIT=y
44CONFIG_GENERIC_GPIO=y 48CONFIG_GENERIC_GPIO=y
45# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 49# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
@@ -56,11 +60,13 @@ CONFIG_AUDIT_ARCH=y
56CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
57CONFIG_DTC=y 61CONFIG_DTC=y
58# CONFIG_DEFAULT_UIMAGE is not set 62# CONFIG_DEFAULT_UIMAGE is not set
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
59CONFIG_PPC_DCR_NATIVE=y 64CONFIG_PPC_DCR_NATIVE=y
60# CONFIG_PPC_DCR_MMIO is not set 65# CONFIG_PPC_DCR_MMIO is not set
61CONFIG_PPC_DCR=y 66CONFIG_PPC_DCR=y
62CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
63CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 68CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
69CONFIG_CONSTRUCTORS=y
64 70
65# 71#
66# General setup 72# General setup
@@ -81,11 +87,13 @@ CONFIG_SYSVIPC_SYSCTL=y
81# 87#
82# RCU Subsystem 88# RCU Subsystem
83# 89#
84CONFIG_CLASSIC_RCU=y 90CONFIG_TREE_RCU=y
85# CONFIG_TREE_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
86# CONFIG_PREEMPT_RCU is not set 92# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set
87# CONFIG_TREE_RCU_TRACE is not set 96# CONFIG_TREE_RCU_TRACE is not set
88# CONFIG_PREEMPT_RCU_TRACE is not set
89CONFIG_IKCONFIG=y 97CONFIG_IKCONFIG=y
90CONFIG_IKCONFIG_PROC=y 98CONFIG_IKCONFIG_PROC=y
91CONFIG_LOG_BUF_SHIFT=14 99CONFIG_LOG_BUF_SHIFT=14
@@ -111,7 +119,6 @@ CONFIG_SYSCTL_SYSCALL=y
111CONFIG_KALLSYMS=y 119CONFIG_KALLSYMS=y
112# CONFIG_KALLSYMS_ALL is not set 120# CONFIG_KALLSYMS_ALL is not set
113# CONFIG_KALLSYMS_EXTRA_PASS is not set 121# CONFIG_KALLSYMS_EXTRA_PASS is not set
114# CONFIG_STRIP_ASM_SYMS is not set
115CONFIG_HOTPLUG=y 122CONFIG_HOTPLUG=y
116CONFIG_PRINTK=y 123CONFIG_PRINTK=y
117CONFIG_BUG=y 124CONFIG_BUG=y
@@ -124,6 +131,13 @@ CONFIG_TIMERFD=y
124CONFIG_EVENTFD=y 131CONFIG_EVENTFD=y
125CONFIG_SHMEM=y 132CONFIG_SHMEM=y
126CONFIG_AIO=y 133CONFIG_AIO=y
134CONFIG_HAVE_PERF_EVENTS=y
135
136#
137# Kernel Performance Events And Counters
138#
139# CONFIG_PERF_EVENTS is not set
140# CONFIG_PERF_COUNTERS is not set
127CONFIG_VM_EVENT_COUNTERS=y 141CONFIG_VM_EVENT_COUNTERS=y
128CONFIG_SLUB_DEBUG=y 142CONFIG_SLUB_DEBUG=y
129CONFIG_COMPAT_BRK=y 143CONFIG_COMPAT_BRK=y
@@ -131,7 +145,6 @@ CONFIG_COMPAT_BRK=y
131CONFIG_SLUB=y 145CONFIG_SLUB=y
132# CONFIG_SLOB is not set 146# CONFIG_SLOB is not set
133# CONFIG_PROFILING is not set 147# CONFIG_PROFILING is not set
134# CONFIG_MARKERS is not set
135CONFIG_HAVE_OPROFILE=y 148CONFIG_HAVE_OPROFILE=y
136# CONFIG_KPROBES is not set 149# CONFIG_KPROBES is not set
137CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 150CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
@@ -139,6 +152,13 @@ CONFIG_HAVE_IOREMAP_PROT=y
139CONFIG_HAVE_KPROBES=y 152CONFIG_HAVE_KPROBES=y
140CONFIG_HAVE_KRETPROBES=y 153CONFIG_HAVE_KRETPROBES=y
141CONFIG_HAVE_ARCH_TRACEHOOK=y 154CONFIG_HAVE_ARCH_TRACEHOOK=y
155CONFIG_HAVE_DMA_ATTRS=y
156CONFIG_HAVE_DMA_API_DEBUG=y
157
158#
159# GCOV-based kernel profiling
160#
161# CONFIG_GCOV_KERNEL is not set
142# CONFIG_SLOW_WORK is not set 162# CONFIG_SLOW_WORK is not set
143# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 163# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
144CONFIG_SLABINFO=y 164CONFIG_SLABINFO=y
@@ -151,7 +171,7 @@ CONFIG_MODULE_UNLOAD=y
151# CONFIG_MODVERSIONS is not set 171# CONFIG_MODVERSIONS is not set
152# CONFIG_MODULE_SRCVERSION_ALL is not set 172# CONFIG_MODULE_SRCVERSION_ALL is not set
153CONFIG_BLOCK=y 173CONFIG_BLOCK=y
154# CONFIG_LBD is not set 174CONFIG_LBDAF=y
155# CONFIG_BLK_DEV_BSG is not set 175# CONFIG_BLK_DEV_BSG is not set
156# CONFIG_BLK_DEV_INTEGRITY is not set 176# CONFIG_BLK_DEV_INTEGRITY is not set
157 177
@@ -159,14 +179,41 @@ CONFIG_BLOCK=y
159# IO Schedulers 179# IO Schedulers
160# 180#
161CONFIG_IOSCHED_NOOP=y 181CONFIG_IOSCHED_NOOP=y
162CONFIG_IOSCHED_AS=y
163CONFIG_IOSCHED_DEADLINE=y 182CONFIG_IOSCHED_DEADLINE=y
164CONFIG_IOSCHED_CFQ=y 183CONFIG_IOSCHED_CFQ=y
165CONFIG_DEFAULT_AS=y
166# CONFIG_DEFAULT_DEADLINE is not set 184# CONFIG_DEFAULT_DEADLINE is not set
167# CONFIG_DEFAULT_CFQ is not set 185CONFIG_DEFAULT_CFQ=y
168# CONFIG_DEFAULT_NOOP is not set 186# CONFIG_DEFAULT_NOOP is not set
169CONFIG_DEFAULT_IOSCHED="anticipatory" 187CONFIG_DEFAULT_IOSCHED="cfq"
188# CONFIG_INLINE_SPIN_TRYLOCK is not set
189# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
190# CONFIG_INLINE_SPIN_LOCK is not set
191# CONFIG_INLINE_SPIN_LOCK_BH is not set
192# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
193# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
194CONFIG_INLINE_SPIN_UNLOCK=y
195# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
196CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
197# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
198# CONFIG_INLINE_READ_TRYLOCK is not set
199# CONFIG_INLINE_READ_LOCK is not set
200# CONFIG_INLINE_READ_LOCK_BH is not set
201# CONFIG_INLINE_READ_LOCK_IRQ is not set
202# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
203CONFIG_INLINE_READ_UNLOCK=y
204# CONFIG_INLINE_READ_UNLOCK_BH is not set
205CONFIG_INLINE_READ_UNLOCK_IRQ=y
206# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
207# CONFIG_INLINE_WRITE_TRYLOCK is not set
208# CONFIG_INLINE_WRITE_LOCK is not set
209# CONFIG_INLINE_WRITE_LOCK_BH is not set
210# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
212CONFIG_INLINE_WRITE_UNLOCK=y
213# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
214CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
215# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
216# CONFIG_MUTEX_SPIN_ON_OWNER is not set
170# CONFIG_FREEZER is not set 217# CONFIG_FREEZER is not set
171 218
172# 219#
@@ -187,6 +234,7 @@ CONFIG_WARP=y
187# CONFIG_CANYONLANDS is not set 234# CONFIG_CANYONLANDS is not set
188# CONFIG_GLACIER is not set 235# CONFIG_GLACIER is not set
189# CONFIG_REDWOOD is not set 236# CONFIG_REDWOOD is not set
237# CONFIG_EIGER is not set
190# CONFIG_YOSEMITE is not set 238# CONFIG_YOSEMITE is not set
191# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set 239# CONFIG_XILINX_VIRTEX440_GENERIC_BOARD is not set
192# CONFIG_PPC44x_SIMPLE is not set 240# CONFIG_PPC44x_SIMPLE is not set
@@ -229,10 +277,12 @@ CONFIG_BINFMT_ELF=y
229# CONFIG_BINFMT_MISC is not set 277# CONFIG_BINFMT_MISC is not set
230# CONFIG_MATH_EMULATION is not set 278# CONFIG_MATH_EMULATION is not set
231# CONFIG_IOMMU_HELPER is not set 279# CONFIG_IOMMU_HELPER is not set
232CONFIG_PPC_NEED_DMA_SYNC_OPS=y 280# CONFIG_SWIOTLB is not set
233CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
234CONFIG_ARCH_HAS_WALK_MEMORY=y 282CONFIG_ARCH_HAS_WALK_MEMORY=y
235CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
284CONFIG_SPARSE_IRQ=y
285CONFIG_MAX_ACTIVE_REGIONS=32
236CONFIG_ARCH_FLATMEM_ENABLE=y 286CONFIG_ARCH_FLATMEM_ENABLE=y
237CONFIG_ARCH_POPULATES_NODE_MAP=y 287CONFIG_ARCH_POPULATES_NODE_MAP=y
238CONFIG_SELECT_MEMORY_MODEL=y 288CONFIG_SELECT_MEMORY_MODEL=y
@@ -248,9 +298,8 @@ CONFIG_PHYS_ADDR_T_64BIT=y
248CONFIG_ZONE_DMA_FLAG=1 298CONFIG_ZONE_DMA_FLAG=1
249CONFIG_BOUNCE=y 299CONFIG_BOUNCE=y
250CONFIG_VIRT_TO_BUS=y 300CONFIG_VIRT_TO_BUS=y
251CONFIG_UNEVICTABLE_LRU=y 301# CONFIG_KSM is not set
252CONFIG_HAVE_MLOCK=y 302CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
253CONFIG_HAVE_MLOCKED_PAGE_BIT=y
254CONFIG_STDBINUTILS=y 303CONFIG_STDBINUTILS=y
255CONFIG_PPC_4K_PAGES=y 304CONFIG_PPC_4K_PAGES=y
256# CONFIG_PPC_16K_PAGES is not set 305# CONFIG_PPC_16K_PAGES is not set
@@ -356,6 +405,7 @@ CONFIG_NETFILTER_ADVANCED=y
356# CONFIG_IP_NF_ARPTABLES is not set 405# CONFIG_IP_NF_ARPTABLES is not set
357# CONFIG_IP_DCCP is not set 406# CONFIG_IP_DCCP is not set
358# CONFIG_IP_SCTP is not set 407# CONFIG_IP_SCTP is not set
408# CONFIG_RDS is not set
359# CONFIG_TIPC is not set 409# CONFIG_TIPC is not set
360# CONFIG_ATM is not set 410# CONFIG_ATM is not set
361# CONFIG_BRIDGE is not set 411# CONFIG_BRIDGE is not set
@@ -371,6 +421,7 @@ CONFIG_VLAN_8021Q=y
371# CONFIG_ECONET is not set 421# CONFIG_ECONET is not set
372# CONFIG_WAN_ROUTER is not set 422# CONFIG_WAN_ROUTER is not set
373# CONFIG_PHONET is not set 423# CONFIG_PHONET is not set
424# CONFIG_IEEE802154 is not set
374# CONFIG_NET_SCHED is not set 425# CONFIG_NET_SCHED is not set
375# CONFIG_DCB is not set 426# CONFIG_DCB is not set
376 427
@@ -383,7 +434,13 @@ CONFIG_VLAN_8021Q=y
383# CONFIG_IRDA is not set 434# CONFIG_IRDA is not set
384# CONFIG_BT is not set 435# CONFIG_BT is not set
385# CONFIG_AF_RXRPC is not set 436# CONFIG_AF_RXRPC is not set
386# CONFIG_WIRELESS is not set 437CONFIG_WIRELESS=y
438# CONFIG_CFG80211 is not set
439# CONFIG_LIB80211 is not set
440
441#
442# CFG80211 needs to be enabled for MAC80211
443#
387# CONFIG_WIMAX is not set 444# CONFIG_WIMAX is not set
388# CONFIG_RFKILL is not set 445# CONFIG_RFKILL is not set
389# CONFIG_NET_9P is not set 446# CONFIG_NET_9P is not set
@@ -396,6 +453,7 @@ CONFIG_VLAN_8021Q=y
396# Generic Driver Options 453# Generic Driver Options
397# 454#
398CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 455CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
456# CONFIG_DEVTMPFS is not set
399# CONFIG_STANDALONE is not set 457# CONFIG_STANDALONE is not set
400CONFIG_PREVENT_FIRMWARE_BUILD=y 458CONFIG_PREVENT_FIRMWARE_BUILD=y
401CONFIG_FW_LOADER=y 459CONFIG_FW_LOADER=y
@@ -407,9 +465,9 @@ CONFIG_EXTRA_FIRMWARE=""
407# CONFIG_CONNECTOR is not set 465# CONFIG_CONNECTOR is not set
408CONFIG_MTD=y 466CONFIG_MTD=y
409# CONFIG_MTD_DEBUG is not set 467# CONFIG_MTD_DEBUG is not set
468# CONFIG_MTD_TESTS is not set
410# CONFIG_MTD_CONCAT is not set 469# CONFIG_MTD_CONCAT is not set
411CONFIG_MTD_PARTITIONS=y 470CONFIG_MTD_PARTITIONS=y
412# CONFIG_MTD_TESTS is not set
413# CONFIG_MTD_REDBOOT_PARTS is not set 471# CONFIG_MTD_REDBOOT_PARTS is not set
414CONFIG_MTD_CMDLINE_PARTS=y 472CONFIG_MTD_CMDLINE_PARTS=y
415CONFIG_MTD_OF_PARTS=y 473CONFIG_MTD_OF_PARTS=y
@@ -513,6 +571,10 @@ CONFIG_BLK_DEV=y
513# CONFIG_BLK_DEV_FD is not set 571# CONFIG_BLK_DEV_FD is not set
514# CONFIG_BLK_DEV_COW_COMMON is not set 572# CONFIG_BLK_DEV_COW_COMMON is not set
515# CONFIG_BLK_DEV_LOOP is not set 573# CONFIG_BLK_DEV_LOOP is not set
574
575#
576# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
577#
516# CONFIG_BLK_DEV_NBD is not set 578# CONFIG_BLK_DEV_NBD is not set
517# CONFIG_BLK_DEV_UB is not set 579# CONFIG_BLK_DEV_UB is not set
518CONFIG_BLK_DEV_RAM=y 580CONFIG_BLK_DEV_RAM=y
@@ -524,9 +586,11 @@ CONFIG_BLK_DEV_RAM_SIZE=4096
524# CONFIG_XILINX_SYSACE is not set 586# CONFIG_XILINX_SYSACE is not set
525# CONFIG_BLK_DEV_HD is not set 587# CONFIG_BLK_DEV_HD is not set
526CONFIG_MISC_DEVICES=y 588CONFIG_MISC_DEVICES=y
589# CONFIG_AD525X_DPOT is not set
527# CONFIG_ICS932S401 is not set 590# CONFIG_ICS932S401 is not set
528# CONFIG_ENCLOSURE_SERVICES is not set 591# CONFIG_ENCLOSURE_SERVICES is not set
529# CONFIG_ISL29003 is not set 592# CONFIG_ISL29003 is not set
593# CONFIG_DS1682 is not set
530# CONFIG_C2PORT is not set 594# CONFIG_C2PORT is not set
531 595
532# 596#
@@ -534,7 +598,9 @@ CONFIG_MISC_DEVICES=y
534# 598#
535CONFIG_EEPROM_AT24=y 599CONFIG_EEPROM_AT24=y
536# CONFIG_EEPROM_LEGACY is not set 600# CONFIG_EEPROM_LEGACY is not set
601# CONFIG_EEPROM_MAX6875 is not set
537# CONFIG_EEPROM_93CX6 is not set 602# CONFIG_EEPROM_93CX6 is not set
603# CONFIG_IWMC3200TOP is not set
538CONFIG_HAVE_IDE=y 604CONFIG_HAVE_IDE=y
539# CONFIG_IDE is not set 605# CONFIG_IDE is not set
540 606
@@ -557,15 +623,11 @@ CONFIG_BLK_DEV_SD=y
557# CONFIG_BLK_DEV_SR is not set 623# CONFIG_BLK_DEV_SR is not set
558# CONFIG_CHR_DEV_SG is not set 624# CONFIG_CHR_DEV_SG is not set
559# CONFIG_CHR_DEV_SCH is not set 625# CONFIG_CHR_DEV_SCH is not set
560
561#
562# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
563#
564# CONFIG_SCSI_MULTI_LUN is not set 626# CONFIG_SCSI_MULTI_LUN is not set
565# CONFIG_SCSI_CONSTANTS is not set 627# CONFIG_SCSI_CONSTANTS is not set
566# CONFIG_SCSI_LOGGING is not set 628# CONFIG_SCSI_LOGGING is not set
567# CONFIG_SCSI_SCAN_ASYNC is not set 629# CONFIG_SCSI_SCAN_ASYNC is not set
568# CONFIG_SCSI_WAIT_SCAN is not set 630CONFIG_SCSI_WAIT_SCAN=m
569 631
570# 632#
571# SCSI Transports 633# SCSI Transports
@@ -582,7 +644,6 @@ CONFIG_SCSI_SPI_ATTRS=y
582# CONFIG_MD is not set 644# CONFIG_MD is not set
583# CONFIG_MACINTOSH_DRIVERS is not set 645# CONFIG_MACINTOSH_DRIVERS is not set
584CONFIG_NETDEVICES=y 646CONFIG_NETDEVICES=y
585CONFIG_COMPAT_NET_DEV_OPS=y
586# CONFIG_DUMMY is not set 647# CONFIG_DUMMY is not set
587# CONFIG_BONDING is not set 648# CONFIG_BONDING is not set
588# CONFIG_MACVLAN is not set 649# CONFIG_MACVLAN is not set
@@ -609,14 +670,14 @@ CONFIG_IBM_NEW_EMAC_ZMII=y
609# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set 670# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
610# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 671# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
611# CONFIG_B44 is not set 672# CONFIG_B44 is not set
673# CONFIG_KS8842 is not set
674# CONFIG_KS8851_MLL is not set
675# CONFIG_XILINX_EMACLITE is not set
612# CONFIG_NETDEV_1000 is not set 676# CONFIG_NETDEV_1000 is not set
613# CONFIG_NETDEV_10000 is not set 677# CONFIG_NETDEV_10000 is not set
614 678CONFIG_WLAN=y
615# 679# CONFIG_USB_ZD1201 is not set
616# Wireless LAN 680# CONFIG_HOSTAP is not set
617#
618# CONFIG_WLAN_PRE80211 is not set
619# CONFIG_WLAN_80211 is not set
620 681
621# 682#
622# Enable WiMAX (Networking options) to see the WiMAX drivers 683# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -678,6 +739,7 @@ CONFIG_SERIAL_CORE=y
678CONFIG_SERIAL_CORE_CONSOLE=y 739CONFIG_SERIAL_CORE_CONSOLE=y
679# CONFIG_SERIAL_OF_PLATFORM is not set 740# CONFIG_SERIAL_OF_PLATFORM is not set
680# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 741# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
742# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
681CONFIG_UNIX98_PTYS=y 743CONFIG_UNIX98_PTYS=y
682# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 744# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
683CONFIG_LEGACY_PTYS=y 745CONFIG_LEGACY_PTYS=y
@@ -693,6 +755,7 @@ CONFIG_HW_RANDOM=y
693# CONFIG_TCG_TPM is not set 755# CONFIG_TCG_TPM is not set
694CONFIG_I2C=y 756CONFIG_I2C=y
695CONFIG_I2C_BOARDINFO=y 757CONFIG_I2C_BOARDINFO=y
758CONFIG_I2C_COMPAT=y
696# CONFIG_I2C_CHARDEV is not set 759# CONFIG_I2C_CHARDEV is not set
697CONFIG_I2C_HELPER_AUTO=y 760CONFIG_I2C_HELPER_AUTO=y
698 761
@@ -725,17 +788,17 @@ CONFIG_I2C_IBM_IIC=y
725# 788#
726# Miscellaneous I2C Chip support 789# Miscellaneous I2C Chip support
727# 790#
728# CONFIG_DS1682 is not set
729# CONFIG_SENSORS_PCF8574 is not set
730# CONFIG_PCF8575 is not set
731# CONFIG_SENSORS_PCA9539 is not set
732# CONFIG_SENSORS_MAX6875 is not set
733# CONFIG_SENSORS_TSL2550 is not set 791# CONFIG_SENSORS_TSL2550 is not set
734# CONFIG_I2C_DEBUG_CORE is not set 792# CONFIG_I2C_DEBUG_CORE is not set
735# CONFIG_I2C_DEBUG_ALGO is not set 793# CONFIG_I2C_DEBUG_ALGO is not set
736# CONFIG_I2C_DEBUG_BUS is not set 794# CONFIG_I2C_DEBUG_BUS is not set
737# CONFIG_I2C_DEBUG_CHIP is not set 795# CONFIG_I2C_DEBUG_CHIP is not set
738# CONFIG_SPI is not set 796# CONFIG_SPI is not set
797
798#
799# PPS support
800#
801# CONFIG_PPS is not set
739CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 802CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
740CONFIG_ARCH_REQUIRE_GPIOLIB=y 803CONFIG_ARCH_REQUIRE_GPIOLIB=y
741CONFIG_GPIOLIB=y 804CONFIG_GPIOLIB=y
@@ -761,10 +824,19 @@ CONFIG_GPIO_SYSFS=y
761# 824#
762# SPI GPIO expanders: 825# SPI GPIO expanders:
763# 826#
827
828#
829# AC97 GPIO expanders:
830#
764# CONFIG_W1 is not set 831# CONFIG_W1 is not set
765# CONFIG_POWER_SUPPLY is not set 832# CONFIG_POWER_SUPPLY is not set
766CONFIG_HWMON=y 833CONFIG_HWMON=y
767# CONFIG_HWMON_VID is not set 834# CONFIG_HWMON_VID is not set
835# CONFIG_HWMON_DEBUG_CHIP is not set
836
837#
838# Native drivers
839#
768CONFIG_SENSORS_AD7414=y 840CONFIG_SENSORS_AD7414=y
769# CONFIG_SENSORS_AD7418 is not set 841# CONFIG_SENSORS_AD7418 is not set
770# CONFIG_SENSORS_ADM1021 is not set 842# CONFIG_SENSORS_ADM1021 is not set
@@ -787,6 +859,7 @@ CONFIG_SENSORS_AD7414=y
787# CONFIG_SENSORS_GL520SM is not set 859# CONFIG_SENSORS_GL520SM is not set
788# CONFIG_SENSORS_IT87 is not set 860# CONFIG_SENSORS_IT87 is not set
789# CONFIG_SENSORS_LM63 is not set 861# CONFIG_SENSORS_LM63 is not set
862# CONFIG_SENSORS_LM73 is not set
790# CONFIG_SENSORS_LM75 is not set 863# CONFIG_SENSORS_LM75 is not set
791# CONFIG_SENSORS_LM77 is not set 864# CONFIG_SENSORS_LM77 is not set
792# CONFIG_SENSORS_LM78 is not set 865# CONFIG_SENSORS_LM78 is not set
@@ -812,6 +885,8 @@ CONFIG_SENSORS_AD7414=y
812# CONFIG_SENSORS_SMSC47B397 is not set 885# CONFIG_SENSORS_SMSC47B397 is not set
813# CONFIG_SENSORS_ADS7828 is not set 886# CONFIG_SENSORS_ADS7828 is not set
814# CONFIG_SENSORS_THMC50 is not set 887# CONFIG_SENSORS_THMC50 is not set
888# CONFIG_SENSORS_TMP401 is not set
889# CONFIG_SENSORS_TMP421 is not set
815# CONFIG_SENSORS_VT1211 is not set 890# CONFIG_SENSORS_VT1211 is not set
816# CONFIG_SENSORS_W83781D is not set 891# CONFIG_SENSORS_W83781D is not set
817# CONFIG_SENSORS_W83791D is not set 892# CONFIG_SENSORS_W83791D is not set
@@ -821,7 +896,6 @@ CONFIG_SENSORS_AD7414=y
821# CONFIG_SENSORS_W83L786NG is not set 896# CONFIG_SENSORS_W83L786NG is not set
822# CONFIG_SENSORS_W83627HF is not set 897# CONFIG_SENSORS_W83627HF is not set
823# CONFIG_SENSORS_W83627EHF is not set 898# CONFIG_SENSORS_W83627EHF is not set
824# CONFIG_HWMON_DEBUG_CHIP is not set
825CONFIG_THERMAL=y 899CONFIG_THERMAL=y
826CONFIG_THERMAL_HWMON=y 900CONFIG_THERMAL_HWMON=y
827CONFIG_WATCHDOG=y 901CONFIG_WATCHDOG=y
@@ -855,26 +929,15 @@ CONFIG_SSB_POSSIBLE=y
855# CONFIG_TWL4030_CORE is not set 929# CONFIG_TWL4030_CORE is not set
856# CONFIG_MFD_TMIO is not set 930# CONFIG_MFD_TMIO is not set
857# CONFIG_PMIC_DA903X is not set 931# CONFIG_PMIC_DA903X is not set
932# CONFIG_PMIC_ADP5520 is not set
858# CONFIG_MFD_WM8400 is not set 933# CONFIG_MFD_WM8400 is not set
934# CONFIG_MFD_WM831X is not set
859# CONFIG_MFD_WM8350_I2C is not set 935# CONFIG_MFD_WM8350_I2C is not set
860# CONFIG_MFD_PCF50633 is not set 936# CONFIG_MFD_PCF50633 is not set
937# CONFIG_AB3100_CORE is not set
938# CONFIG_MFD_88PM8607 is not set
861# CONFIG_REGULATOR is not set 939# CONFIG_REGULATOR is not set
862 940# CONFIG_MEDIA_SUPPORT is not set
863#
864# Multimedia devices
865#
866
867#
868# Multimedia core support
869#
870# CONFIG_VIDEO_DEV is not set
871# CONFIG_DVB_CORE is not set
872# CONFIG_VIDEO_MEDIA is not set
873
874#
875# Multimedia drivers
876#
877# CONFIG_DAB is not set
878 941
879# 942#
880# Graphics support 943# Graphics support
@@ -917,10 +980,11 @@ CONFIG_USB_MON=y
917# CONFIG_USB_OXU210HP_HCD is not set 980# CONFIG_USB_OXU210HP_HCD is not set
918# CONFIG_USB_ISP116X_HCD is not set 981# CONFIG_USB_ISP116X_HCD is not set
919# CONFIG_USB_ISP1760_HCD is not set 982# CONFIG_USB_ISP1760_HCD is not set
983# CONFIG_USB_ISP1362_HCD is not set
920CONFIG_USB_OHCI_HCD=y 984CONFIG_USB_OHCI_HCD=y
921CONFIG_USB_OHCI_HCD_PPC_OF=y
922CONFIG_USB_OHCI_HCD_PPC_OF_BE=y 985CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
923# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set 986# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set
987CONFIG_USB_OHCI_HCD_PPC_OF=y
924CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y 988CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y
925CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y 989CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
926CONFIG_USB_OHCI_LITTLE_ENDIAN=y 990CONFIG_USB_OHCI_LITTLE_ENDIAN=y
@@ -988,6 +1052,7 @@ CONFIG_USB_STORAGE=y
988# CONFIG_USB_LD is not set 1052# CONFIG_USB_LD is not set
989# CONFIG_USB_TRANCEVIBRATOR is not set 1053# CONFIG_USB_TRANCEVIBRATOR is not set
990# CONFIG_USB_IOWARRIOR is not set 1054# CONFIG_USB_IOWARRIOR is not set
1055# CONFIG_USB_TEST is not set
991# CONFIG_USB_ISIGHTFW is not set 1056# CONFIG_USB_ISIGHTFW is not set
992# CONFIG_USB_VST is not set 1057# CONFIG_USB_VST is not set
993# CONFIG_USB_GADGET is not set 1058# CONFIG_USB_GADGET is not set
@@ -1014,7 +1079,8 @@ CONFIG_MMC_BLOCK_BOUNCE=y
1014# 1079#
1015# CONFIG_MMC_SDHCI is not set 1080# CONFIG_MMC_SDHCI is not set
1016# CONFIG_MMC_WBSD is not set 1081# CONFIG_MMC_WBSD is not set
1017CONFIG_MMC_PIKASD=y 1082# CONFIG_MMC_AT91 is not set
1083# CONFIG_MMC_ATMELMCI is not set
1018# CONFIG_MEMSTICK is not set 1084# CONFIG_MEMSTICK is not set
1019CONFIG_NEW_LEDS=y 1085CONFIG_NEW_LEDS=y
1020CONFIG_LEDS_CLASS=y 1086CONFIG_LEDS_CLASS=y
@@ -1025,9 +1091,10 @@ CONFIG_LEDS_CLASS=y
1025CONFIG_LEDS_GPIO=y 1091CONFIG_LEDS_GPIO=y
1026# CONFIG_LEDS_GPIO_PLATFORM is not set 1092# CONFIG_LEDS_GPIO_PLATFORM is not set
1027CONFIG_LEDS_GPIO_OF=y 1093CONFIG_LEDS_GPIO_OF=y
1028# CONFIG_LEDS_LP5521 is not set 1094# CONFIG_LEDS_LP3944 is not set
1029# CONFIG_LEDS_PCA955X is not set 1095# CONFIG_LEDS_PCA955X is not set
1030# CONFIG_LEDS_BD2802 is not set 1096# CONFIG_LEDS_BD2802 is not set
1097# CONFIG_LEDS_LT3593 is not set
1031 1098
1032# 1099#
1033# LED Triggers 1100# LED Triggers
@@ -1048,6 +1115,10 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
1048# CONFIG_DMADEVICES is not set 1115# CONFIG_DMADEVICES is not set
1049# CONFIG_AUXDISPLAY is not set 1116# CONFIG_AUXDISPLAY is not set
1050# CONFIG_UIO is not set 1117# CONFIG_UIO is not set
1118
1119#
1120# TI VLYNQ
1121#
1051# CONFIG_STAGING is not set 1122# CONFIG_STAGING is not set
1052 1123
1053# 1124#
@@ -1065,10 +1136,13 @@ CONFIG_JBD=y
1065# CONFIG_REISERFS_FS is not set 1136# CONFIG_REISERFS_FS is not set
1066# CONFIG_JFS_FS is not set 1137# CONFIG_JFS_FS is not set
1067# CONFIG_FS_POSIX_ACL is not set 1138# CONFIG_FS_POSIX_ACL is not set
1068CONFIG_FILE_LOCKING=y
1069# CONFIG_XFS_FS is not set 1139# CONFIG_XFS_FS is not set
1140# CONFIG_GFS2_FS is not set
1070# CONFIG_OCFS2_FS is not set 1141# CONFIG_OCFS2_FS is not set
1071# CONFIG_BTRFS_FS is not set 1142# CONFIG_BTRFS_FS is not set
1143# CONFIG_NILFS2_FS is not set
1144CONFIG_FILE_LOCKING=y
1145CONFIG_FSNOTIFY=y
1072CONFIG_DNOTIFY=y 1146CONFIG_DNOTIFY=y
1073CONFIG_INOTIFY=y 1147CONFIG_INOTIFY=y
1074CONFIG_INOTIFY_USER=y 1148CONFIG_INOTIFY_USER=y
@@ -1145,7 +1219,6 @@ CONFIG_CRAMFS=y
1145# CONFIG_ROMFS_FS is not set 1219# CONFIG_ROMFS_FS is not set
1146# CONFIG_SYSV_FS is not set 1220# CONFIG_SYSV_FS is not set
1147# CONFIG_UFS_FS is not set 1221# CONFIG_UFS_FS is not set
1148# CONFIG_NILFS2_FS is not set
1149CONFIG_NETWORK_FILESYSTEMS=y 1222CONFIG_NETWORK_FILESYSTEMS=y
1150CONFIG_NFS_FS=y 1223CONFIG_NFS_FS=y
1151CONFIG_NFS_V3=y 1224CONFIG_NFS_V3=y
@@ -1235,6 +1308,7 @@ CONFIG_HAS_IOPORT=y
1235CONFIG_HAS_DMA=y 1308CONFIG_HAS_DMA=y
1236CONFIG_HAVE_LMB=y 1309CONFIG_HAVE_LMB=y
1237CONFIG_NLATTR=y 1310CONFIG_NLATTR=y
1311CONFIG_GENERIC_ATOMIC64=y
1238 1312
1239# 1313#
1240# Kernel hacking 1314# Kernel hacking
@@ -1244,6 +1318,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1244CONFIG_ENABLE_MUST_CHECK=y 1318CONFIG_ENABLE_MUST_CHECK=y
1245CONFIG_FRAME_WARN=1024 1319CONFIG_FRAME_WARN=1024
1246CONFIG_MAGIC_SYSRQ=y 1320CONFIG_MAGIC_SYSRQ=y
1321# CONFIG_STRIP_ASM_SYMS is not set
1247# CONFIG_UNUSED_SYMBOLS is not set 1322# CONFIG_UNUSED_SYMBOLS is not set
1248CONFIG_DEBUG_FS=y 1323CONFIG_DEBUG_FS=y
1249# CONFIG_HEADERS_CHECK is not set 1324# CONFIG_HEADERS_CHECK is not set
@@ -1261,10 +1336,14 @@ CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
1261# CONFIG_DEBUG_OBJECTS is not set 1336# CONFIG_DEBUG_OBJECTS is not set
1262# CONFIG_SLUB_DEBUG_ON is not set 1337# CONFIG_SLUB_DEBUG_ON is not set
1263# CONFIG_SLUB_STATS is not set 1338# CONFIG_SLUB_STATS is not set
1339# CONFIG_DEBUG_KMEMLEAK is not set
1264# CONFIG_DEBUG_RT_MUTEXES is not set 1340# CONFIG_DEBUG_RT_MUTEXES is not set
1265# CONFIG_RT_MUTEX_TESTER is not set 1341# CONFIG_RT_MUTEX_TESTER is not set
1266# CONFIG_DEBUG_SPINLOCK is not set 1342# CONFIG_DEBUG_SPINLOCK is not set
1267# CONFIG_DEBUG_MUTEXES is not set 1343# CONFIG_DEBUG_MUTEXES is not set
1344# CONFIG_DEBUG_LOCK_ALLOC is not set
1345# CONFIG_PROVE_LOCKING is not set
1346# CONFIG_LOCK_STAT is not set
1268# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1347# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1269# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1348# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1270# CONFIG_DEBUG_KOBJECT is not set 1349# CONFIG_DEBUG_KOBJECT is not set
@@ -1276,11 +1355,12 @@ CONFIG_DEBUG_INFO=y
1276# CONFIG_DEBUG_LIST is not set 1355# CONFIG_DEBUG_LIST is not set
1277# CONFIG_DEBUG_SG is not set 1356# CONFIG_DEBUG_SG is not set
1278# CONFIG_DEBUG_NOTIFIERS is not set 1357# CONFIG_DEBUG_NOTIFIERS is not set
1279# CONFIG_BOOT_PRINTK_DELAY is not set 1358# CONFIG_DEBUG_CREDENTIALS is not set
1280# CONFIG_RCU_TORTURE_TEST is not set 1359# CONFIG_RCU_TORTURE_TEST is not set
1281# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1360# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1282# CONFIG_BACKTRACE_SELF_TEST is not set 1361# CONFIG_BACKTRACE_SELF_TEST is not set
1283# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1362# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1363# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1284# CONFIG_FAULT_INJECTION is not set 1364# CONFIG_FAULT_INJECTION is not set
1285# CONFIG_LATENCYTOP is not set 1365# CONFIG_LATENCYTOP is not set
1286CONFIG_SYSCTL_SYSCALL_CHECK=y 1366CONFIG_SYSCTL_SYSCALL_CHECK=y
@@ -1290,27 +1370,30 @@ CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
1290CONFIG_HAVE_DYNAMIC_FTRACE=y 1370CONFIG_HAVE_DYNAMIC_FTRACE=y
1291CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1371CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1292CONFIG_TRACING_SUPPORT=y 1372CONFIG_TRACING_SUPPORT=y
1293 1373CONFIG_FTRACE=y
1294#
1295# Tracers
1296#
1297# CONFIG_FUNCTION_TRACER is not set 1374# CONFIG_FUNCTION_TRACER is not set
1375# CONFIG_IRQSOFF_TRACER is not set
1298# CONFIG_SCHED_TRACER is not set 1376# CONFIG_SCHED_TRACER is not set
1299# CONFIG_CONTEXT_SWITCH_TRACER is not set 1377# CONFIG_ENABLE_DEFAULT_TRACERS is not set
1300# CONFIG_EVENT_TRACER is not set
1301# CONFIG_BOOT_TRACER is not set 1378# CONFIG_BOOT_TRACER is not set
1302# CONFIG_TRACE_BRANCH_PROFILING is not set 1379CONFIG_BRANCH_PROFILE_NONE=y
1380# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1381# CONFIG_PROFILE_ALL_BRANCHES is not set
1303# CONFIG_STACK_TRACER is not set 1382# CONFIG_STACK_TRACER is not set
1304# CONFIG_KMEMTRACE is not set 1383# CONFIG_KMEMTRACE is not set
1305# CONFIG_WORKQUEUE_TRACER is not set 1384# CONFIG_WORKQUEUE_TRACER is not set
1306# CONFIG_BLK_DEV_IO_TRACE is not set 1385# CONFIG_BLK_DEV_IO_TRACE is not set
1307# CONFIG_DYNAMIC_DEBUG is not set 1386# CONFIG_DYNAMIC_DEBUG is not set
1387# CONFIG_DMA_API_DEBUG is not set
1308# CONFIG_SAMPLES is not set 1388# CONFIG_SAMPLES is not set
1309CONFIG_HAVE_ARCH_KGDB=y 1389CONFIG_HAVE_ARCH_KGDB=y
1310# CONFIG_KGDB is not set 1390# CONFIG_KGDB is not set
1391# CONFIG_PPC_DISABLE_WERROR is not set
1392CONFIG_PPC_WERROR=y
1311CONFIG_PRINT_STACK_DEPTH=64 1393CONFIG_PRINT_STACK_DEPTH=64
1312# CONFIG_DEBUG_STACKOVERFLOW is not set 1394# CONFIG_DEBUG_STACKOVERFLOW is not set
1313# CONFIG_DEBUG_STACK_USAGE is not set 1395# CONFIG_DEBUG_STACK_USAGE is not set
1396# CONFIG_PPC_EMULATED_STATS is not set
1314# CONFIG_CODE_PATCHING_SELFTEST is not set 1397# CONFIG_CODE_PATCHING_SELFTEST is not set
1315# CONFIG_FTR_FIXUP_SELFTEST is not set 1398# CONFIG_FTR_FIXUP_SELFTEST is not set
1316# CONFIG_MSI_BITMAP_SELFTEST is not set 1399# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -1326,13 +1409,16 @@ CONFIG_IRQSTACKS=y
1326# CONFIG_KEYS is not set 1409# CONFIG_KEYS is not set
1327# CONFIG_SECURITY is not set 1410# CONFIG_SECURITY is not set
1328# CONFIG_SECURITYFS is not set 1411# CONFIG_SECURITYFS is not set
1329# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1412# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1413# CONFIG_DEFAULT_SECURITY_SMACK is not set
1414# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1415CONFIG_DEFAULT_SECURITY_DAC=y
1416CONFIG_DEFAULT_SECURITY=""
1330CONFIG_CRYPTO=y 1417CONFIG_CRYPTO=y
1331 1418
1332# 1419#
1333# Crypto core or helper 1420# Crypto core or helper
1334# 1421#
1335# CONFIG_CRYPTO_FIPS is not set
1336CONFIG_CRYPTO_ALGAPI=y 1422CONFIG_CRYPTO_ALGAPI=y
1337CONFIG_CRYPTO_ALGAPI2=y 1423CONFIG_CRYPTO_ALGAPI2=y
1338# CONFIG_CRYPTO_MANAGER is not set 1424# CONFIG_CRYPTO_MANAGER is not set
@@ -1366,11 +1452,13 @@ CONFIG_CRYPTO_ALGAPI2=y
1366# 1452#
1367# CONFIG_CRYPTO_HMAC is not set 1453# CONFIG_CRYPTO_HMAC is not set
1368# CONFIG_CRYPTO_XCBC is not set 1454# CONFIG_CRYPTO_XCBC is not set
1455# CONFIG_CRYPTO_VMAC is not set
1369 1456
1370# 1457#
1371# Digest 1458# Digest
1372# 1459#
1373# CONFIG_CRYPTO_CRC32C is not set 1460# CONFIG_CRYPTO_CRC32C is not set
1461# CONFIG_CRYPTO_GHASH is not set
1374# CONFIG_CRYPTO_MD4 is not set 1462# CONFIG_CRYPTO_MD4 is not set
1375# CONFIG_CRYPTO_MD5 is not set 1463# CONFIG_CRYPTO_MD5 is not set
1376# CONFIG_CRYPTO_MICHAEL_MIC is not set 1464# CONFIG_CRYPTO_MICHAEL_MIC is not set
diff --git a/arch/powerpc/configs/52xx/cm5200_defconfig b/arch/powerpc/configs/52xx/cm5200_defconfig
index 0396ce7bffc6..ff9bdb28197d 100644
--- a/arch/powerpc/configs/52xx/cm5200_defconfig
+++ b/arch/powerpc/configs/52xx/cm5200_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc4 3# Linux kernel version: 2.6.33-rc2
4# Thu Oct 15 10:33:22 2009 4# Wed Dec 30 14:45:07 2009
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -58,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
58CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y 60CONFIG_DTC=y
60CONFIG_DEFAULT_UIMAGE=y 61CONFIG_DEFAULT_UIMAGE=y
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
61# CONFIG_PPC_DCR_NATIVE is not set 63# CONFIG_PPC_DCR_NATIVE is not set
62# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
63CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -85,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
85# 87#
86CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
88# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
89CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
90# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -166,14 +169,41 @@ CONFIG_LBDAF=y
166# IO Schedulers 169# IO Schedulers
167# 170#
168CONFIG_IOSCHED_NOOP=y 171CONFIG_IOSCHED_NOOP=y
169CONFIG_IOSCHED_AS=y
170CONFIG_IOSCHED_DEADLINE=y 172CONFIG_IOSCHED_DEADLINE=y
171CONFIG_IOSCHED_CFQ=y 173CONFIG_IOSCHED_CFQ=y
172CONFIG_DEFAULT_AS=y
173# CONFIG_DEFAULT_DEADLINE is not set 174# CONFIG_DEFAULT_DEADLINE is not set
174# CONFIG_DEFAULT_CFQ is not set 175CONFIG_DEFAULT_CFQ=y
175# CONFIG_DEFAULT_NOOP is not set 176# CONFIG_DEFAULT_NOOP is not set
176CONFIG_DEFAULT_IOSCHED="anticipatory" 177CONFIG_DEFAULT_IOSCHED="cfq"
178# CONFIG_INLINE_SPIN_TRYLOCK is not set
179# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
180# CONFIG_INLINE_SPIN_LOCK is not set
181# CONFIG_INLINE_SPIN_LOCK_BH is not set
182# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
183# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
184CONFIG_INLINE_SPIN_UNLOCK=y
185# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
186CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
187# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
188# CONFIG_INLINE_READ_TRYLOCK is not set
189# CONFIG_INLINE_READ_LOCK is not set
190# CONFIG_INLINE_READ_LOCK_BH is not set
191# CONFIG_INLINE_READ_LOCK_IRQ is not set
192# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
193CONFIG_INLINE_READ_UNLOCK=y
194# CONFIG_INLINE_READ_UNLOCK_BH is not set
195CONFIG_INLINE_READ_UNLOCK_IRQ=y
196# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
197# CONFIG_INLINE_WRITE_TRYLOCK is not set
198# CONFIG_INLINE_WRITE_LOCK is not set
199# CONFIG_INLINE_WRITE_LOCK_BH is not set
200# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
201# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
202CONFIG_INLINE_WRITE_UNLOCK=y
203# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
204CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
205# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
206# CONFIG_MUTEX_SPIN_ON_OWNER is not set
177# CONFIG_FREEZER is not set 207# CONFIG_FREEZER is not set
178 208
179# 209#
@@ -189,6 +219,7 @@ CONFIG_PPC_MPC5200_SIMPLE=y
189# CONFIG_PPC_MEDIA5200 is not set 219# CONFIG_PPC_MEDIA5200 is not set
190# CONFIG_PPC_MPC5200_BUGFIX is not set 220# CONFIG_PPC_MPC5200_BUGFIX is not set
191# CONFIG_PPC_MPC5200_GPIO is not set 221# CONFIG_PPC_MPC5200_GPIO is not set
222# CONFIG_PPC_MPC5200_LPBFIFO is not set
192# CONFIG_PPC_PMAC is not set 223# CONFIG_PPC_PMAC is not set
193# CONFIG_PPC_CELL is not set 224# CONFIG_PPC_CELL is not set
194# CONFIG_PPC_CELL_NATIVE is not set 225# CONFIG_PPC_CELL_NATIVE is not set
@@ -243,6 +274,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
243CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 274CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
244# CONFIG_KEXEC is not set 275# CONFIG_KEXEC is not set
245# CONFIG_CRASH_DUMP is not set 276# CONFIG_CRASH_DUMP is not set
277CONFIG_SPARSE_IRQ=y
246CONFIG_MAX_ACTIVE_REGIONS=32 278CONFIG_MAX_ACTIVE_REGIONS=32
247CONFIG_ARCH_FLATMEM_ENABLE=y 279CONFIG_ARCH_FLATMEM_ENABLE=y
248CONFIG_ARCH_POPULATES_NODE_MAP=y 280CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -259,8 +291,6 @@ CONFIG_MIGRATION=y
259CONFIG_ZONE_DMA_FLAG=1 291CONFIG_ZONE_DMA_FLAG=1
260CONFIG_BOUNCE=y 292CONFIG_BOUNCE=y
261CONFIG_VIRT_TO_BUS=y 293CONFIG_VIRT_TO_BUS=y
262CONFIG_HAVE_MLOCK=y
263CONFIG_HAVE_MLOCKED_PAGE_BIT=y
264# CONFIG_KSM is not set 294# CONFIG_KSM is not set
265CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 295CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
266CONFIG_PPC_4K_PAGES=y 296CONFIG_PPC_4K_PAGES=y
@@ -273,6 +303,7 @@ CONFIG_PROC_DEVICETREE=y
273CONFIG_EXTRA_TARGETS="" 303CONFIG_EXTRA_TARGETS=""
274CONFIG_PM=y 304CONFIG_PM=y
275# CONFIG_PM_DEBUG is not set 305# CONFIG_PM_DEBUG is not set
306# CONFIG_HIBERNATION is not set
276# CONFIG_PM_RUNTIME is not set 307# CONFIG_PM_RUNTIME is not set
277CONFIG_SECCOMP=y 308CONFIG_SECCOMP=y
278CONFIG_ISA_DMA_API=y 309CONFIG_ISA_DMA_API=y
@@ -378,7 +409,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
378# CONFIG_IRDA is not set 409# CONFIG_IRDA is not set
379# CONFIG_BT is not set 410# CONFIG_BT is not set
380# CONFIG_AF_RXRPC is not set 411# CONFIG_AF_RXRPC is not set
381# CONFIG_WIRELESS is not set 412CONFIG_WIRELESS=y
413# CONFIG_CFG80211 is not set
414# CONFIG_LIB80211 is not set
415
416#
417# CFG80211 needs to be enabled for MAC80211
418#
382# CONFIG_WIMAX is not set 419# CONFIG_WIMAX is not set
383# CONFIG_RFKILL is not set 420# CONFIG_RFKILL is not set
384# CONFIG_NET_9P is not set 421# CONFIG_NET_9P is not set
@@ -489,6 +526,10 @@ CONFIG_BLK_DEV=y
489# CONFIG_BLK_DEV_COW_COMMON is not set 526# CONFIG_BLK_DEV_COW_COMMON is not set
490CONFIG_BLK_DEV_LOOP=y 527CONFIG_BLK_DEV_LOOP=y
491# CONFIG_BLK_DEV_CRYPTOLOOP is not set 528# CONFIG_BLK_DEV_CRYPTOLOOP is not set
529
530#
531# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
532#
492# CONFIG_BLK_DEV_NBD is not set 533# CONFIG_BLK_DEV_NBD is not set
493# CONFIG_BLK_DEV_UB is not set 534# CONFIG_BLK_DEV_UB is not set
494CONFIG_BLK_DEV_RAM=y 535CONFIG_BLK_DEV_RAM=y
@@ -587,8 +628,8 @@ CONFIG_FEC_MPC52xx_MDIO=y
587# CONFIG_NETDEV_1000 is not set 628# CONFIG_NETDEV_1000 is not set
588# CONFIG_NETDEV_10000 is not set 629# CONFIG_NETDEV_10000 is not set
589CONFIG_WLAN=y 630CONFIG_WLAN=y
590# CONFIG_WLAN_PRE80211 is not set 631# CONFIG_USB_ZD1201 is not set
591# CONFIG_WLAN_80211 is not set 632# CONFIG_HOSTAP is not set
592 633
593# 634#
594# Enable WiMAX (Networking options) to see the WiMAX drivers 635# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -643,6 +684,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
643CONFIG_SERIAL_MPC52xx=y 684CONFIG_SERIAL_MPC52xx=y
644CONFIG_SERIAL_MPC52xx_CONSOLE=y 685CONFIG_SERIAL_MPC52xx_CONSOLE=y
645CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=57600 686CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=57600
687# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
646CONFIG_UNIX98_PTYS=y 688CONFIG_UNIX98_PTYS=y
647# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 689# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
648CONFIG_LEGACY_PTYS=y 690CONFIG_LEGACY_PTYS=y
@@ -688,7 +730,6 @@ CONFIG_I2C_MPC=y
688# 730#
689# Miscellaneous I2C Chip support 731# Miscellaneous I2C Chip support
690# 732#
691# CONFIG_DS1682 is not set
692# CONFIG_SENSORS_TSL2550 is not set 733# CONFIG_SENSORS_TSL2550 is not set
693# CONFIG_I2C_DEBUG_CORE is not set 734# CONFIG_I2C_DEBUG_CORE is not set
694# CONFIG_I2C_DEBUG_ALGO is not set 735# CONFIG_I2C_DEBUG_ALGO is not set
@@ -735,11 +776,13 @@ CONFIG_SSB_POSSIBLE=y
735# CONFIG_TWL4030_CORE is not set 776# CONFIG_TWL4030_CORE is not set
736# CONFIG_MFD_TMIO is not set 777# CONFIG_MFD_TMIO is not set
737# CONFIG_PMIC_DA903X is not set 778# CONFIG_PMIC_DA903X is not set
779# CONFIG_PMIC_ADP5520 is not set
738# CONFIG_MFD_WM8400 is not set 780# CONFIG_MFD_WM8400 is not set
739# CONFIG_MFD_WM831X is not set 781# CONFIG_MFD_WM831X is not set
740# CONFIG_MFD_WM8350_I2C is not set 782# CONFIG_MFD_WM8350_I2C is not set
741# CONFIG_MFD_PCF50633 is not set 783# CONFIG_MFD_PCF50633 is not set
742# CONFIG_AB3100_CORE is not set 784# CONFIG_AB3100_CORE is not set
785# CONFIG_MFD_88PM8607 is not set
743# CONFIG_REGULATOR is not set 786# CONFIG_REGULATOR is not set
744# CONFIG_MEDIA_SUPPORT is not set 787# CONFIG_MEDIA_SUPPORT is not set
745 788
@@ -797,7 +840,6 @@ CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
797# CONFIG_USB_SL811_HCD is not set 840# CONFIG_USB_SL811_HCD is not set
798# CONFIG_USB_R8A66597_HCD is not set 841# CONFIG_USB_R8A66597_HCD is not set
799# CONFIG_USB_HWA_HCD is not set 842# CONFIG_USB_HWA_HCD is not set
800# CONFIG_USB_MUSB_HDRC is not set
801 843
802# 844#
803# USB Device Class drivers 845# USB Device Class drivers
@@ -1137,6 +1179,7 @@ CONFIG_SCHED_DEBUG=y
1137# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 1179# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1138# CONFIG_FAULT_INJECTION is not set 1180# CONFIG_FAULT_INJECTION is not set
1139# CONFIG_LATENCYTOP is not set 1181# CONFIG_LATENCYTOP is not set
1182# CONFIG_SYSCTL_SYSCALL_CHECK is not set
1140# CONFIG_DEBUG_PAGEALLOC is not set 1183# CONFIG_DEBUG_PAGEALLOC is not set
1141CONFIG_HAVE_FUNCTION_TRACER=y 1184CONFIG_HAVE_FUNCTION_TRACER=y
1142CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 1185CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -1180,7 +1223,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1180# CONFIG_KEYS is not set 1223# CONFIG_KEYS is not set
1181# CONFIG_SECURITY is not set 1224# CONFIG_SECURITY is not set
1182# CONFIG_SECURITYFS is not set 1225# CONFIG_SECURITYFS is not set
1183# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1226# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1227# CONFIG_DEFAULT_SECURITY_SMACK is not set
1228# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1229CONFIG_DEFAULT_SECURITY_DAC=y
1230CONFIG_DEFAULT_SECURITY=""
1184CONFIG_CRYPTO=y 1231CONFIG_CRYPTO=y
1185 1232
1186# 1233#
diff --git a/arch/powerpc/configs/52xx/lite5200b_defconfig b/arch/powerpc/configs/52xx/lite5200b_defconfig
index f5c07fd72239..7b3f4d0ed404 100644
--- a/arch/powerpc/configs/52xx/lite5200b_defconfig
+++ b/arch/powerpc/configs/52xx/lite5200b_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc4 3# Linux kernel version: 2.6.33-rc2
4# Thu Oct 15 10:33:24 2009 4# Wed Dec 30 14:45:09 2009
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -58,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
58CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y 60CONFIG_DTC=y
60CONFIG_DEFAULT_UIMAGE=y 61CONFIG_DEFAULT_UIMAGE=y
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
61CONFIG_ARCH_SUSPEND_POSSIBLE=y 63CONFIG_ARCH_SUSPEND_POSSIBLE=y
62# CONFIG_PPC_DCR_NATIVE is not set 64# CONFIG_PPC_DCR_NATIVE is not set
63# CONFIG_PPC_DCR_MMIO is not set 65# CONFIG_PPC_DCR_MMIO is not set
@@ -86,6 +88,7 @@ CONFIG_SYSVIPC_SYSCTL=y
86# 88#
87CONFIG_TREE_RCU=y 89CONFIG_TREE_RCU=y
88# CONFIG_TREE_PREEMPT_RCU is not set 90# CONFIG_TREE_PREEMPT_RCU is not set
91# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set 92# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32 93CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set 94# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184CONFIG_FREEZER=y 214CONFIG_FREEZER=y
185 215
186# 216#
@@ -196,6 +226,7 @@ CONFIG_PPC_LITE5200=y
196# CONFIG_PPC_MEDIA5200 is not set 226# CONFIG_PPC_MEDIA5200 is not set
197# CONFIG_PPC_MPC5200_BUGFIX is not set 227# CONFIG_PPC_MPC5200_BUGFIX is not set
198# CONFIG_PPC_MPC5200_GPIO is not set 228# CONFIG_PPC_MPC5200_GPIO is not set
229# CONFIG_PPC_MPC5200_LPBFIFO is not set
199# CONFIG_PPC_PMAC is not set 230# CONFIG_PPC_PMAC is not set
200# CONFIG_PPC_CELL is not set 231# CONFIG_PPC_CELL is not set
201# CONFIG_PPC_CELL_NATIVE is not set 232# CONFIG_PPC_CELL_NATIVE is not set
@@ -252,6 +283,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
252CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
253# CONFIG_KEXEC is not set 284# CONFIG_KEXEC is not set
254# CONFIG_CRASH_DUMP is not set 285# CONFIG_CRASH_DUMP is not set
286CONFIG_SPARSE_IRQ=y
255CONFIG_MAX_ACTIVE_REGIONS=32 287CONFIG_MAX_ACTIVE_REGIONS=32
256CONFIG_ARCH_FLATMEM_ENABLE=y 288CONFIG_ARCH_FLATMEM_ENABLE=y
257CONFIG_ARCH_POPULATES_NODE_MAP=y 289CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -268,8 +300,6 @@ CONFIG_MIGRATION=y
268CONFIG_ZONE_DMA_FLAG=1 300CONFIG_ZONE_DMA_FLAG=1
269CONFIG_BOUNCE=y 301CONFIG_BOUNCE=y
270CONFIG_VIRT_TO_BUS=y 302CONFIG_VIRT_TO_BUS=y
271CONFIG_HAVE_MLOCK=y
272CONFIG_HAVE_MLOCKED_PAGE_BIT=y
273# CONFIG_KSM is not set 303# CONFIG_KSM is not set
274CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 304CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
275CONFIG_PPC_4K_PAGES=y 305CONFIG_PPC_4K_PAGES=y
@@ -285,6 +315,7 @@ CONFIG_PM=y
285CONFIG_PM_SLEEP=y 315CONFIG_PM_SLEEP=y
286CONFIG_SUSPEND=y 316CONFIG_SUSPEND=y
287CONFIG_SUSPEND_FREEZER=y 317CONFIG_SUSPEND_FREEZER=y
318# CONFIG_HIBERNATION is not set
288# CONFIG_PM_RUNTIME is not set 319# CONFIG_PM_RUNTIME is not set
289CONFIG_SECCOMP=y 320CONFIG_SECCOMP=y
290CONFIG_ISA_DMA_API=y 321CONFIG_ISA_DMA_API=y
@@ -398,7 +429,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
398# CONFIG_IRDA is not set 429# CONFIG_IRDA is not set
399# CONFIG_BT is not set 430# CONFIG_BT is not set
400# CONFIG_AF_RXRPC is not set 431# CONFIG_AF_RXRPC is not set
401# CONFIG_WIRELESS is not set 432CONFIG_WIRELESS=y
433# CONFIG_CFG80211 is not set
434# CONFIG_LIB80211 is not set
435
436#
437# CFG80211 needs to be enabled for MAC80211
438#
402# CONFIG_WIMAX is not set 439# CONFIG_WIMAX is not set
403# CONFIG_RFKILL is not set 440# CONFIG_RFKILL is not set
404# CONFIG_NET_9P is not set 441# CONFIG_NET_9P is not set
@@ -433,6 +470,10 @@ CONFIG_BLK_DEV=y
433# CONFIG_BLK_DEV_COW_COMMON is not set 470# CONFIG_BLK_DEV_COW_COMMON is not set
434CONFIG_BLK_DEV_LOOP=y 471CONFIG_BLK_DEV_LOOP=y
435# CONFIG_BLK_DEV_CRYPTOLOOP is not set 472# CONFIG_BLK_DEV_CRYPTOLOOP is not set
473
474#
475# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
476#
436# CONFIG_BLK_DEV_NBD is not set 477# CONFIG_BLK_DEV_NBD is not set
437# CONFIG_BLK_DEV_SX8 is not set 478# CONFIG_BLK_DEV_SX8 is not set
438CONFIG_BLK_DEV_RAM=y 479CONFIG_BLK_DEV_RAM=y
@@ -443,6 +484,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
443# CONFIG_ATA_OVER_ETH is not set 484# CONFIG_ATA_OVER_ETH is not set
444# CONFIG_BLK_DEV_HD is not set 485# CONFIG_BLK_DEV_HD is not set
445CONFIG_MISC_DEVICES=y 486CONFIG_MISC_DEVICES=y
487# CONFIG_AD525X_DPOT is not set
446# CONFIG_PHANTOM is not set 488# CONFIG_PHANTOM is not set
447# CONFIG_SGI_IOC4 is not set 489# CONFIG_SGI_IOC4 is not set
448# CONFIG_TIFM_CORE is not set 490# CONFIG_TIFM_CORE is not set
@@ -450,6 +492,7 @@ CONFIG_MISC_DEVICES=y
450# CONFIG_ENCLOSURE_SERVICES is not set 492# CONFIG_ENCLOSURE_SERVICES is not set
451# CONFIG_HP_ILO is not set 493# CONFIG_HP_ILO is not set
452# CONFIG_ISL29003 is not set 494# CONFIG_ISL29003 is not set
495# CONFIG_DS1682 is not set
453# CONFIG_C2PORT is not set 496# CONFIG_C2PORT is not set
454 497
455# 498#
@@ -502,7 +545,9 @@ CONFIG_SCSI_LOWLEVEL=y
502# CONFIG_SCSI_BNX2_ISCSI is not set 545# CONFIG_SCSI_BNX2_ISCSI is not set
503# CONFIG_BE2ISCSI is not set 546# CONFIG_BE2ISCSI is not set
504# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 547# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
548# CONFIG_SCSI_HPSA is not set
505# CONFIG_SCSI_3W_9XXX is not set 549# CONFIG_SCSI_3W_9XXX is not set
550# CONFIG_SCSI_3W_SAS is not set
506# CONFIG_SCSI_ACARD is not set 551# CONFIG_SCSI_ACARD is not set
507# CONFIG_SCSI_AACRAID is not set 552# CONFIG_SCSI_AACRAID is not set
508# CONFIG_SCSI_AIC7XXX is not set 553# CONFIG_SCSI_AIC7XXX is not set
@@ -541,6 +586,7 @@ CONFIG_SCSI_LOWLEVEL=y
541# CONFIG_SCSI_NSP32 is not set 586# CONFIG_SCSI_NSP32 is not set
542# CONFIG_SCSI_DEBUG is not set 587# CONFIG_SCSI_DEBUG is not set
543# CONFIG_SCSI_PMCRAID is not set 588# CONFIG_SCSI_PMCRAID is not set
589# CONFIG_SCSI_PM8001 is not set
544# CONFIG_SCSI_SRP is not set 590# CONFIG_SCSI_SRP is not set
545# CONFIG_SCSI_BFA_FC is not set 591# CONFIG_SCSI_BFA_FC is not set
546# CONFIG_SCSI_DH is not set 592# CONFIG_SCSI_DH is not set
@@ -596,15 +642,16 @@ CONFIG_PATA_MPC52xx=y
596# CONFIG_PATA_NS87415 is not set 642# CONFIG_PATA_NS87415 is not set
597# CONFIG_PATA_OPTI is not set 643# CONFIG_PATA_OPTI is not set
598# CONFIG_PATA_OPTIDMA is not set 644# CONFIG_PATA_OPTIDMA is not set
645# CONFIG_PATA_PDC2027X is not set
599# CONFIG_PATA_PDC_OLD is not set 646# CONFIG_PATA_PDC_OLD is not set
600# CONFIG_PATA_RADISYS is not set 647# CONFIG_PATA_RADISYS is not set
601# CONFIG_PATA_RDC is not set 648# CONFIG_PATA_RDC is not set
602# CONFIG_PATA_RZ1000 is not set 649# CONFIG_PATA_RZ1000 is not set
603# CONFIG_PATA_SC1200 is not set 650# CONFIG_PATA_SC1200 is not set
604# CONFIG_PATA_SERVERWORKS is not set 651# CONFIG_PATA_SERVERWORKS is not set
605# CONFIG_PATA_PDC2027X is not set
606# CONFIG_PATA_SIL680 is not set 652# CONFIG_PATA_SIL680 is not set
607# CONFIG_PATA_SIS is not set 653# CONFIG_PATA_SIS is not set
654# CONFIG_PATA_TOSHIBA is not set
608# CONFIG_PATA_VIA is not set 655# CONFIG_PATA_VIA is not set
609# CONFIG_PATA_WINBOND is not set 656# CONFIG_PATA_WINBOND is not set
610# CONFIG_PATA_PLATFORM is not set 657# CONFIG_PATA_PLATFORM is not set
@@ -726,8 +773,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
726# CONFIG_BE2NET is not set 773# CONFIG_BE2NET is not set
727# CONFIG_TR is not set 774# CONFIG_TR is not set
728CONFIG_WLAN=y 775CONFIG_WLAN=y
729# CONFIG_WLAN_PRE80211 is not set 776# CONFIG_AIRO is not set
730# CONFIG_WLAN_80211 is not set 777# CONFIG_ATMEL is not set
778# CONFIG_PRISM54 is not set
779# CONFIG_HOSTAP is not set
731 780
732# 781#
733# Enable WiMAX (Networking options) to see the WiMAX drivers 782# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -741,6 +790,7 @@ CONFIG_WLAN=y
741# CONFIG_NETCONSOLE is not set 790# CONFIG_NETCONSOLE is not set
742# CONFIG_NETPOLL is not set 791# CONFIG_NETPOLL is not set
743# CONFIG_NET_POLL_CONTROLLER is not set 792# CONFIG_NET_POLL_CONTROLLER is not set
793# CONFIG_VMXNET3 is not set
744# CONFIG_ISDN is not set 794# CONFIG_ISDN is not set
745# CONFIG_PHONE is not set 795# CONFIG_PHONE is not set
746 796
@@ -778,6 +828,7 @@ CONFIG_SERIAL_MPC52xx=y
778CONFIG_SERIAL_MPC52xx_CONSOLE=y 828CONFIG_SERIAL_MPC52xx_CONSOLE=y
779CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200 829CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200
780# CONFIG_SERIAL_JSM is not set 830# CONFIG_SERIAL_JSM is not set
831# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
781CONFIG_UNIX98_PTYS=y 832CONFIG_UNIX98_PTYS=y
782# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 833# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
783CONFIG_LEGACY_PTYS=y 834CONFIG_LEGACY_PTYS=y
@@ -836,11 +887,6 @@ CONFIG_I2C_MPC=y
836# CONFIG_I2C_TAOS_EVM is not set 887# CONFIG_I2C_TAOS_EVM is not set
837 888
838# 889#
839# Graphics adapter I2C/DDC channel drivers
840#
841# CONFIG_I2C_VOODOO3 is not set
842
843#
844# Other I2C/SMBus bus drivers 890# Other I2C/SMBus bus drivers
845# 891#
846# CONFIG_I2C_PCA_PLATFORM is not set 892# CONFIG_I2C_PCA_PLATFORM is not set
@@ -849,7 +895,6 @@ CONFIG_I2C_MPC=y
849# 895#
850# Miscellaneous I2C Chip support 896# Miscellaneous I2C Chip support
851# 897#
852# CONFIG_DS1682 is not set
853# CONFIG_SENSORS_TSL2550 is not set 898# CONFIG_SENSORS_TSL2550 is not set
854# CONFIG_I2C_DEBUG_CORE is not set 899# CONFIG_I2C_DEBUG_CORE is not set
855# CONFIG_I2C_DEBUG_ALGO is not set 900# CONFIG_I2C_DEBUG_ALGO is not set
@@ -884,11 +929,13 @@ CONFIG_SSB_POSSIBLE=y
884# CONFIG_TWL4030_CORE is not set 929# CONFIG_TWL4030_CORE is not set
885# CONFIG_MFD_TMIO is not set 930# CONFIG_MFD_TMIO is not set
886# CONFIG_PMIC_DA903X is not set 931# CONFIG_PMIC_DA903X is not set
932# CONFIG_PMIC_ADP5520 is not set
887# CONFIG_MFD_WM8400 is not set 933# CONFIG_MFD_WM8400 is not set
888# CONFIG_MFD_WM831X is not set 934# CONFIG_MFD_WM831X is not set
889# CONFIG_MFD_WM8350_I2C is not set 935# CONFIG_MFD_WM8350_I2C is not set
890# CONFIG_MFD_PCF50633 is not set 936# CONFIG_MFD_PCF50633 is not set
891# CONFIG_AB3100_CORE is not set 937# CONFIG_AB3100_CORE is not set
938# CONFIG_MFD_88PM8607 is not set
892# CONFIG_REGULATOR is not set 939# CONFIG_REGULATOR is not set
893# CONFIG_MEDIA_SUPPORT is not set 940# CONFIG_MEDIA_SUPPORT is not set
894 941
@@ -1129,6 +1176,7 @@ CONFIG_DEBUG_INFO=y
1129# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 1176# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1130# CONFIG_FAULT_INJECTION is not set 1177# CONFIG_FAULT_INJECTION is not set
1131# CONFIG_LATENCYTOP is not set 1178# CONFIG_LATENCYTOP is not set
1179# CONFIG_SYSCTL_SYSCALL_CHECK is not set
1132# CONFIG_DEBUG_PAGEALLOC is not set 1180# CONFIG_DEBUG_PAGEALLOC is not set
1133CONFIG_HAVE_FUNCTION_TRACER=y 1181CONFIG_HAVE_FUNCTION_TRACER=y
1134CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 1182CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -1172,7 +1220,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1172# CONFIG_KEYS is not set 1220# CONFIG_KEYS is not set
1173# CONFIG_SECURITY is not set 1221# CONFIG_SECURITY is not set
1174# CONFIG_SECURITYFS is not set 1222# CONFIG_SECURITYFS is not set
1175# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1223# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1224# CONFIG_DEFAULT_SECURITY_SMACK is not set
1225# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1226CONFIG_DEFAULT_SECURITY_DAC=y
1227CONFIG_DEFAULT_SECURITY=""
1176CONFIG_CRYPTO=y 1228CONFIG_CRYPTO=y
1177 1229
1178# 1230#
diff --git a/arch/powerpc/configs/52xx/motionpro_defconfig b/arch/powerpc/configs/52xx/motionpro_defconfig
index 4f77a1bdc8f9..eaae2d469aa0 100644
--- a/arch/powerpc/configs/52xx/motionpro_defconfig
+++ b/arch/powerpc/configs/52xx/motionpro_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc4 3# Linux kernel version: 2.6.33-rc2
4# Thu Oct 15 10:33:22 2009 4# Wed Dec 30 14:45:08 2009
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -58,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
58CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y 60CONFIG_DTC=y
60CONFIG_DEFAULT_UIMAGE=y 61CONFIG_DEFAULT_UIMAGE=y
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
61# CONFIG_PPC_DCR_NATIVE is not set 63# CONFIG_PPC_DCR_NATIVE is not set
62# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
63CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -85,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
85# 87#
86CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
88# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
89CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
90# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -166,14 +169,41 @@ CONFIG_LBDAF=y
166# IO Schedulers 169# IO Schedulers
167# 170#
168CONFIG_IOSCHED_NOOP=y 171CONFIG_IOSCHED_NOOP=y
169CONFIG_IOSCHED_AS=y
170CONFIG_IOSCHED_DEADLINE=y 172CONFIG_IOSCHED_DEADLINE=y
171CONFIG_IOSCHED_CFQ=y 173CONFIG_IOSCHED_CFQ=y
172CONFIG_DEFAULT_AS=y
173# CONFIG_DEFAULT_DEADLINE is not set 174# CONFIG_DEFAULT_DEADLINE is not set
174# CONFIG_DEFAULT_CFQ is not set 175CONFIG_DEFAULT_CFQ=y
175# CONFIG_DEFAULT_NOOP is not set 176# CONFIG_DEFAULT_NOOP is not set
176CONFIG_DEFAULT_IOSCHED="anticipatory" 177CONFIG_DEFAULT_IOSCHED="cfq"
178# CONFIG_INLINE_SPIN_TRYLOCK is not set
179# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
180# CONFIG_INLINE_SPIN_LOCK is not set
181# CONFIG_INLINE_SPIN_LOCK_BH is not set
182# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
183# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
184CONFIG_INLINE_SPIN_UNLOCK=y
185# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
186CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
187# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
188# CONFIG_INLINE_READ_TRYLOCK is not set
189# CONFIG_INLINE_READ_LOCK is not set
190# CONFIG_INLINE_READ_LOCK_BH is not set
191# CONFIG_INLINE_READ_LOCK_IRQ is not set
192# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
193CONFIG_INLINE_READ_UNLOCK=y
194# CONFIG_INLINE_READ_UNLOCK_BH is not set
195CONFIG_INLINE_READ_UNLOCK_IRQ=y
196# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
197# CONFIG_INLINE_WRITE_TRYLOCK is not set
198# CONFIG_INLINE_WRITE_LOCK is not set
199# CONFIG_INLINE_WRITE_LOCK_BH is not set
200# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
201# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
202CONFIG_INLINE_WRITE_UNLOCK=y
203# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
204CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
205# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
206# CONFIG_MUTEX_SPIN_ON_OWNER is not set
177# CONFIG_FREEZER is not set 207# CONFIG_FREEZER is not set
178 208
179# 209#
@@ -189,6 +219,7 @@ CONFIG_PPC_MPC5200_SIMPLE=y
189# CONFIG_PPC_MEDIA5200 is not set 219# CONFIG_PPC_MEDIA5200 is not set
190# CONFIG_PPC_MPC5200_BUGFIX is not set 220# CONFIG_PPC_MPC5200_BUGFIX is not set
191# CONFIG_PPC_MPC5200_GPIO is not set 221# CONFIG_PPC_MPC5200_GPIO is not set
222# CONFIG_PPC_MPC5200_LPBFIFO is not set
192# CONFIG_PPC_PMAC is not set 223# CONFIG_PPC_PMAC is not set
193# CONFIG_PPC_CELL is not set 224# CONFIG_PPC_CELL is not set
194# CONFIG_PPC_CELL_NATIVE is not set 225# CONFIG_PPC_CELL_NATIVE is not set
@@ -244,6 +275,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
244CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 275CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
245# CONFIG_KEXEC is not set 276# CONFIG_KEXEC is not set
246# CONFIG_CRASH_DUMP is not set 277# CONFIG_CRASH_DUMP is not set
278CONFIG_SPARSE_IRQ=y
247CONFIG_MAX_ACTIVE_REGIONS=32 279CONFIG_MAX_ACTIVE_REGIONS=32
248CONFIG_ARCH_FLATMEM_ENABLE=y 280CONFIG_ARCH_FLATMEM_ENABLE=y
249CONFIG_ARCH_POPULATES_NODE_MAP=y 281CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -260,8 +292,6 @@ CONFIG_MIGRATION=y
260CONFIG_ZONE_DMA_FLAG=1 292CONFIG_ZONE_DMA_FLAG=1
261CONFIG_BOUNCE=y 293CONFIG_BOUNCE=y
262CONFIG_VIRT_TO_BUS=y 294CONFIG_VIRT_TO_BUS=y
263CONFIG_HAVE_MLOCK=y
264CONFIG_HAVE_MLOCKED_PAGE_BIT=y
265# CONFIG_KSM is not set 295# CONFIG_KSM is not set
266CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 296CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
267CONFIG_PPC_4K_PAGES=y 297CONFIG_PPC_4K_PAGES=y
@@ -274,6 +304,7 @@ CONFIG_PROC_DEVICETREE=y
274CONFIG_EXTRA_TARGETS="" 304CONFIG_EXTRA_TARGETS=""
275CONFIG_PM=y 305CONFIG_PM=y
276# CONFIG_PM_DEBUG is not set 306# CONFIG_PM_DEBUG is not set
307# CONFIG_HIBERNATION is not set
277# CONFIG_PM_RUNTIME is not set 308# CONFIG_PM_RUNTIME is not set
278CONFIG_SECCOMP=y 309CONFIG_SECCOMP=y
279CONFIG_ISA_DMA_API=y 310CONFIG_ISA_DMA_API=y
@@ -379,7 +410,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
379# CONFIG_IRDA is not set 410# CONFIG_IRDA is not set
380# CONFIG_BT is not set 411# CONFIG_BT is not set
381# CONFIG_AF_RXRPC is not set 412# CONFIG_AF_RXRPC is not set
382# CONFIG_WIRELESS is not set 413CONFIG_WIRELESS=y
414# CONFIG_CFG80211 is not set
415# CONFIG_LIB80211 is not set
416
417#
418# CFG80211 needs to be enabled for MAC80211
419#
383# CONFIG_WIMAX is not set 420# CONFIG_WIMAX is not set
384# CONFIG_RFKILL is not set 421# CONFIG_RFKILL is not set
385# CONFIG_NET_9P is not set 422# CONFIG_NET_9P is not set
@@ -490,6 +527,10 @@ CONFIG_BLK_DEV=y
490# CONFIG_BLK_DEV_COW_COMMON is not set 527# CONFIG_BLK_DEV_COW_COMMON is not set
491CONFIG_BLK_DEV_LOOP=y 528CONFIG_BLK_DEV_LOOP=y
492# CONFIG_BLK_DEV_CRYPTOLOOP is not set 529# CONFIG_BLK_DEV_CRYPTOLOOP is not set
530
531#
532# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
533#
493# CONFIG_BLK_DEV_NBD is not set 534# CONFIG_BLK_DEV_NBD is not set
494CONFIG_BLK_DEV_RAM=y 535CONFIG_BLK_DEV_RAM=y
495CONFIG_BLK_DEV_RAM_COUNT=16 536CONFIG_BLK_DEV_RAM_COUNT=16
@@ -499,9 +540,11 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
499# CONFIG_ATA_OVER_ETH is not set 540# CONFIG_ATA_OVER_ETH is not set
500# CONFIG_BLK_DEV_HD is not set 541# CONFIG_BLK_DEV_HD is not set
501CONFIG_MISC_DEVICES=y 542CONFIG_MISC_DEVICES=y
543# CONFIG_AD525X_DPOT is not set
502# CONFIG_ICS932S401 is not set 544# CONFIG_ICS932S401 is not set
503# CONFIG_ENCLOSURE_SERVICES is not set 545# CONFIG_ENCLOSURE_SERVICES is not set
504# CONFIG_ISL29003 is not set 546# CONFIG_ISL29003 is not set
547# CONFIG_DS1682 is not set
505# CONFIG_C2PORT is not set 548# CONFIG_C2PORT is not set
506 549
507# 550#
@@ -610,8 +653,7 @@ CONFIG_FEC_MPC52xx_MDIO=y
610# CONFIG_NETDEV_1000 is not set 653# CONFIG_NETDEV_1000 is not set
611# CONFIG_NETDEV_10000 is not set 654# CONFIG_NETDEV_10000 is not set
612CONFIG_WLAN=y 655CONFIG_WLAN=y
613# CONFIG_WLAN_PRE80211 is not set 656# CONFIG_HOSTAP is not set
614# CONFIG_WLAN_80211 is not set
615 657
616# 658#
617# Enable WiMAX (Networking options) to see the WiMAX drivers 659# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -657,6 +699,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
657CONFIG_SERIAL_MPC52xx=y 699CONFIG_SERIAL_MPC52xx=y
658CONFIG_SERIAL_MPC52xx_CONSOLE=y 700CONFIG_SERIAL_MPC52xx_CONSOLE=y
659CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200 701CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200
702# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
660CONFIG_UNIX98_PTYS=y 703CONFIG_UNIX98_PTYS=y
661# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 704# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
662CONFIG_LEGACY_PTYS=y 705CONFIG_LEGACY_PTYS=y
@@ -700,7 +743,6 @@ CONFIG_I2C_MPC=y
700# 743#
701# Miscellaneous I2C Chip support 744# Miscellaneous I2C Chip support
702# 745#
703# CONFIG_DS1682 is not set
704# CONFIG_SENSORS_TSL2550 is not set 746# CONFIG_SENSORS_TSL2550 is not set
705# CONFIG_I2C_DEBUG_CORE is not set 747# CONFIG_I2C_DEBUG_CORE is not set
706# CONFIG_I2C_DEBUG_ALGO is not set 748# CONFIG_I2C_DEBUG_ALGO is not set
@@ -745,6 +787,7 @@ CONFIG_HWMON=y
745# CONFIG_SENSORS_GL520SM is not set 787# CONFIG_SENSORS_GL520SM is not set
746# CONFIG_SENSORS_IT87 is not set 788# CONFIG_SENSORS_IT87 is not set
747# CONFIG_SENSORS_LM63 is not set 789# CONFIG_SENSORS_LM63 is not set
790# CONFIG_SENSORS_LM73 is not set
748# CONFIG_SENSORS_LM75 is not set 791# CONFIG_SENSORS_LM75 is not set
749# CONFIG_SENSORS_LM77 is not set 792# CONFIG_SENSORS_LM77 is not set
750# CONFIG_SENSORS_LM78 is not set 793# CONFIG_SENSORS_LM78 is not set
@@ -805,11 +848,13 @@ CONFIG_SSB_POSSIBLE=y
805# CONFIG_TWL4030_CORE is not set 848# CONFIG_TWL4030_CORE is not set
806# CONFIG_MFD_TMIO is not set 849# CONFIG_MFD_TMIO is not set
807# CONFIG_PMIC_DA903X is not set 850# CONFIG_PMIC_DA903X is not set
851# CONFIG_PMIC_ADP5520 is not set
808# CONFIG_MFD_WM8400 is not set 852# CONFIG_MFD_WM8400 is not set
809# CONFIG_MFD_WM831X is not set 853# CONFIG_MFD_WM831X is not set
810# CONFIG_MFD_WM8350_I2C is not set 854# CONFIG_MFD_WM8350_I2C is not set
811# CONFIG_MFD_PCF50633 is not set 855# CONFIG_MFD_PCF50633 is not set
812# CONFIG_AB3100_CORE is not set 856# CONFIG_AB3100_CORE is not set
857# CONFIG_MFD_88PM8607 is not set
813# CONFIG_REGULATOR is not set 858# CONFIG_REGULATOR is not set
814# CONFIG_MEDIA_SUPPORT is not set 859# CONFIG_MEDIA_SUPPORT is not set
815 860
@@ -881,6 +926,7 @@ CONFIG_RTC_DRV_DS1307=y
881# CONFIG_RTC_DRV_PCF8563 is not set 926# CONFIG_RTC_DRV_PCF8563 is not set
882# CONFIG_RTC_DRV_PCF8583 is not set 927# CONFIG_RTC_DRV_PCF8583 is not set
883# CONFIG_RTC_DRV_M41T80 is not set 928# CONFIG_RTC_DRV_M41T80 is not set
929# CONFIG_RTC_DRV_BQ32K is not set
884# CONFIG_RTC_DRV_S35390A is not set 930# CONFIG_RTC_DRV_S35390A is not set
885# CONFIG_RTC_DRV_FM3130 is not set 931# CONFIG_RTC_DRV_FM3130 is not set
886# CONFIG_RTC_DRV_RX8581 is not set 932# CONFIG_RTC_DRV_RX8581 is not set
@@ -902,7 +948,9 @@ CONFIG_RTC_DRV_DS1307=y
902# CONFIG_RTC_DRV_M48T86 is not set 948# CONFIG_RTC_DRV_M48T86 is not set
903# CONFIG_RTC_DRV_M48T35 is not set 949# CONFIG_RTC_DRV_M48T35 is not set
904# CONFIG_RTC_DRV_M48T59 is not set 950# CONFIG_RTC_DRV_M48T59 is not set
951# CONFIG_RTC_DRV_MSM6242 is not set
905# CONFIG_RTC_DRV_BQ4802 is not set 952# CONFIG_RTC_DRV_BQ4802 is not set
953# CONFIG_RTC_DRV_RP5C01 is not set
906# CONFIG_RTC_DRV_V3020 is not set 954# CONFIG_RTC_DRV_V3020 is not set
907 955
908# 956#
@@ -1172,6 +1220,7 @@ CONFIG_DEBUG_INFO=y
1172# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 1220# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1173# CONFIG_FAULT_INJECTION is not set 1221# CONFIG_FAULT_INJECTION is not set
1174# CONFIG_LATENCYTOP is not set 1222# CONFIG_LATENCYTOP is not set
1223# CONFIG_SYSCTL_SYSCALL_CHECK is not set
1175# CONFIG_DEBUG_PAGEALLOC is not set 1224# CONFIG_DEBUG_PAGEALLOC is not set
1176CONFIG_HAVE_FUNCTION_TRACER=y 1225CONFIG_HAVE_FUNCTION_TRACER=y
1177CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 1226CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -1215,7 +1264,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1215# CONFIG_KEYS is not set 1264# CONFIG_KEYS is not set
1216# CONFIG_SECURITY is not set 1265# CONFIG_SECURITY is not set
1217# CONFIG_SECURITYFS is not set 1266# CONFIG_SECURITYFS is not set
1218# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1267# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1268# CONFIG_DEFAULT_SECURITY_SMACK is not set
1269# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1270CONFIG_DEFAULT_SECURITY_DAC=y
1271CONFIG_DEFAULT_SECURITY=""
1219CONFIG_CRYPTO=y 1272CONFIG_CRYPTO=y
1220 1273
1221# 1274#
diff --git a/arch/powerpc/configs/52xx/pcm030_defconfig b/arch/powerpc/configs/52xx/pcm030_defconfig
index f9168c1a2fa5..1742c0200b75 100644
--- a/arch/powerpc/configs/52xx/pcm030_defconfig
+++ b/arch/powerpc/configs/52xx/pcm030_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc4 3# Linux kernel version: 2.6.33-rc2
4# Thu Oct 15 10:33:25 2009 4# Wed Dec 30 14:45:10 2009
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -58,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
58CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y 60CONFIG_DTC=y
60CONFIG_DEFAULT_UIMAGE=y 61CONFIG_DEFAULT_UIMAGE=y
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
61# CONFIG_PPC_DCR_NATIVE is not set 63# CONFIG_PPC_DCR_NATIVE is not set
62# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
63CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -87,6 +89,7 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -172,14 +175,41 @@ CONFIG_LBDAF=y
172# IO Schedulers 175# IO Schedulers
173# 176#
174CONFIG_IOSCHED_NOOP=y 177CONFIG_IOSCHED_NOOP=y
175# CONFIG_IOSCHED_AS is not set
176# CONFIG_IOSCHED_DEADLINE is not set 178# CONFIG_IOSCHED_DEADLINE is not set
177# CONFIG_IOSCHED_CFQ is not set 179# CONFIG_IOSCHED_CFQ is not set
178# CONFIG_DEFAULT_AS is not set
179# CONFIG_DEFAULT_DEADLINE is not set 180# CONFIG_DEFAULT_DEADLINE is not set
180# CONFIG_DEFAULT_CFQ is not set 181# CONFIG_DEFAULT_CFQ is not set
181CONFIG_DEFAULT_NOOP=y 182CONFIG_DEFAULT_NOOP=y
182CONFIG_DEFAULT_IOSCHED="noop" 183CONFIG_DEFAULT_IOSCHED="noop"
184# CONFIG_INLINE_SPIN_TRYLOCK is not set
185# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK is not set
187# CONFIG_INLINE_SPIN_LOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
190# CONFIG_INLINE_SPIN_UNLOCK is not set
191# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
192# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
193# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
194# CONFIG_INLINE_READ_TRYLOCK is not set
195# CONFIG_INLINE_READ_LOCK is not set
196# CONFIG_INLINE_READ_LOCK_BH is not set
197# CONFIG_INLINE_READ_LOCK_IRQ is not set
198# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
199# CONFIG_INLINE_READ_UNLOCK is not set
200# CONFIG_INLINE_READ_UNLOCK_BH is not set
201# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
202# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
203# CONFIG_INLINE_WRITE_TRYLOCK is not set
204# CONFIG_INLINE_WRITE_LOCK is not set
205# CONFIG_INLINE_WRITE_LOCK_BH is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
208# CONFIG_INLINE_WRITE_UNLOCK is not set
209# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
210# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
211# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
212# CONFIG_MUTEX_SPIN_ON_OWNER is not set
183# CONFIG_FREEZER is not set 213# CONFIG_FREEZER is not set
184 214
185# 215#
@@ -195,6 +225,7 @@ CONFIG_PPC_MPC5200_SIMPLE=y
195# CONFIG_PPC_MEDIA5200 is not set 225# CONFIG_PPC_MEDIA5200 is not set
196# CONFIG_PPC_MPC5200_BUGFIX is not set 226# CONFIG_PPC_MPC5200_BUGFIX is not set
197# CONFIG_PPC_MPC5200_GPIO is not set 227# CONFIG_PPC_MPC5200_GPIO is not set
228# CONFIG_PPC_MPC5200_LPBFIFO is not set
198# CONFIG_PPC_PMAC is not set 229# CONFIG_PPC_PMAC is not set
199# CONFIG_PPC_CELL is not set 230# CONFIG_PPC_CELL is not set
200# CONFIG_PPC_CELL_NATIVE is not set 231# CONFIG_PPC_CELL_NATIVE is not set
@@ -251,6 +282,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
251CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 282CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
252# CONFIG_KEXEC is not set 283# CONFIG_KEXEC is not set
253# CONFIG_CRASH_DUMP is not set 284# CONFIG_CRASH_DUMP is not set
285CONFIG_SPARSE_IRQ=y
254CONFIG_MAX_ACTIVE_REGIONS=32 286CONFIG_MAX_ACTIVE_REGIONS=32
255CONFIG_ARCH_FLATMEM_ENABLE=y 287CONFIG_ARCH_FLATMEM_ENABLE=y
256CONFIG_ARCH_POPULATES_NODE_MAP=y 288CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -267,8 +299,6 @@ CONFIG_MIGRATION=y
267CONFIG_ZONE_DMA_FLAG=1 299CONFIG_ZONE_DMA_FLAG=1
268CONFIG_BOUNCE=y 300CONFIG_BOUNCE=y
269CONFIG_VIRT_TO_BUS=y 301CONFIG_VIRT_TO_BUS=y
270CONFIG_HAVE_MLOCK=y
271CONFIG_HAVE_MLOCKED_PAGE_BIT=y
272# CONFIG_KSM is not set 302# CONFIG_KSM is not set
273CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 303CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
274CONFIG_PPC_4K_PAGES=y 304CONFIG_PPC_4K_PAGES=y
@@ -385,7 +415,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
385# CONFIG_IRDA is not set 415# CONFIG_IRDA is not set
386# CONFIG_BT is not set 416# CONFIG_BT is not set
387# CONFIG_AF_RXRPC is not set 417# CONFIG_AF_RXRPC is not set
388# CONFIG_WIRELESS is not set 418CONFIG_WIRELESS=y
419# CONFIG_CFG80211 is not set
420# CONFIG_LIB80211 is not set
421
422#
423# CFG80211 needs to be enabled for MAC80211
424#
389# CONFIG_WIMAX is not set 425# CONFIG_WIMAX is not set
390# CONFIG_RFKILL is not set 426# CONFIG_RFKILL is not set
391# CONFIG_NET_9P is not set 427# CONFIG_NET_9P is not set
@@ -585,15 +621,16 @@ CONFIG_PATA_MPC52xx=m
585# CONFIG_PATA_NS87415 is not set 621# CONFIG_PATA_NS87415 is not set
586# CONFIG_PATA_OPTI is not set 622# CONFIG_PATA_OPTI is not set
587# CONFIG_PATA_OPTIDMA is not set 623# CONFIG_PATA_OPTIDMA is not set
624# CONFIG_PATA_PDC2027X is not set
588# CONFIG_PATA_PDC_OLD is not set 625# CONFIG_PATA_PDC_OLD is not set
589# CONFIG_PATA_RADISYS is not set 626# CONFIG_PATA_RADISYS is not set
590# CONFIG_PATA_RDC is not set 627# CONFIG_PATA_RDC is not set
591# CONFIG_PATA_RZ1000 is not set 628# CONFIG_PATA_RZ1000 is not set
592# CONFIG_PATA_SC1200 is not set 629# CONFIG_PATA_SC1200 is not set
593# CONFIG_PATA_SERVERWORKS is not set 630# CONFIG_PATA_SERVERWORKS is not set
594# CONFIG_PATA_PDC2027X is not set
595# CONFIG_PATA_SIL680 is not set 631# CONFIG_PATA_SIL680 is not set
596# CONFIG_PATA_SIS is not set 632# CONFIG_PATA_SIS is not set
633# CONFIG_PATA_TOSHIBA is not set
597# CONFIG_PATA_VIA is not set 634# CONFIG_PATA_VIA is not set
598# CONFIG_PATA_WINBOND is not set 635# CONFIG_PATA_WINBOND is not set
599# CONFIG_PATA_PLATFORM is not set 636# CONFIG_PATA_PLATFORM is not set
@@ -673,8 +710,11 @@ CONFIG_FEC_MPC52xx_MDIO=y
673# CONFIG_NETDEV_10000 is not set 710# CONFIG_NETDEV_10000 is not set
674# CONFIG_TR is not set 711# CONFIG_TR is not set
675CONFIG_WLAN=y 712CONFIG_WLAN=y
676# CONFIG_WLAN_PRE80211 is not set 713# CONFIG_AIRO is not set
677# CONFIG_WLAN_80211 is not set 714# CONFIG_ATMEL is not set
715# CONFIG_PRISM54 is not set
716# CONFIG_USB_ZD1201 is not set
717# CONFIG_HOSTAP is not set
678 718
679# 719#
680# Enable WiMAX (Networking options) to see the WiMAX drivers 720# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -697,6 +737,7 @@ CONFIG_WLAN=y
697# CONFIG_NETCONSOLE is not set 737# CONFIG_NETCONSOLE is not set
698# CONFIG_NETPOLL is not set 738# CONFIG_NETPOLL is not set
699# CONFIG_NET_POLL_CONTROLLER is not set 739# CONFIG_NET_POLL_CONTROLLER is not set
740# CONFIG_VMXNET3 is not set
700# CONFIG_ISDN is not set 741# CONFIG_ISDN is not set
701# CONFIG_PHONE is not set 742# CONFIG_PHONE is not set
702 743
@@ -734,6 +775,7 @@ CONFIG_SERIAL_MPC52xx=y
734CONFIG_SERIAL_MPC52xx_CONSOLE=y 775CONFIG_SERIAL_MPC52xx_CONSOLE=y
735CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=9600 776CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=9600
736# CONFIG_SERIAL_JSM is not set 777# CONFIG_SERIAL_JSM is not set
778# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
737CONFIG_UNIX98_PTYS=y 779CONFIG_UNIX98_PTYS=y
738# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 780# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
739# CONFIG_LEGACY_PTYS is not set 781# CONFIG_LEGACY_PTYS is not set
@@ -791,11 +833,6 @@ CONFIG_I2C_MPC=y
791# CONFIG_I2C_TINY_USB is not set 833# CONFIG_I2C_TINY_USB is not set
792 834
793# 835#
794# Graphics adapter I2C/DDC channel drivers
795#
796# CONFIG_I2C_VOODOO3 is not set
797
798#
799# Other I2C/SMBus bus drivers 836# Other I2C/SMBus bus drivers
800# 837#
801# CONFIG_I2C_PCA_PLATFORM is not set 838# CONFIG_I2C_PCA_PLATFORM is not set
@@ -804,7 +841,6 @@ CONFIG_I2C_MPC=y
804# 841#
805# Miscellaneous I2C Chip support 842# Miscellaneous I2C Chip support
806# 843#
807# CONFIG_DS1682 is not set
808# CONFIG_SENSORS_TSL2550 is not set 844# CONFIG_SENSORS_TSL2550 is not set
809# CONFIG_I2C_DEBUG_CORE is not set 845# CONFIG_I2C_DEBUG_CORE is not set
810# CONFIG_I2C_DEBUG_ALGO is not set 846# CONFIG_I2C_DEBUG_ALGO is not set
@@ -839,11 +875,13 @@ CONFIG_SSB_POSSIBLE=y
839# CONFIG_TWL4030_CORE is not set 875# CONFIG_TWL4030_CORE is not set
840# CONFIG_MFD_TMIO is not set 876# CONFIG_MFD_TMIO is not set
841# CONFIG_PMIC_DA903X is not set 877# CONFIG_PMIC_DA903X is not set
878# CONFIG_PMIC_ADP5520 is not set
842# CONFIG_MFD_WM8400 is not set 879# CONFIG_MFD_WM8400 is not set
843# CONFIG_MFD_WM831X is not set 880# CONFIG_MFD_WM831X is not set
844# CONFIG_MFD_WM8350_I2C is not set 881# CONFIG_MFD_WM8350_I2C is not set
845# CONFIG_MFD_PCF50633 is not set 882# CONFIG_MFD_PCF50633 is not set
846# CONFIG_AB3100_CORE is not set 883# CONFIG_AB3100_CORE is not set
884# CONFIG_MFD_88PM8607 is not set
847# CONFIG_REGULATOR is not set 885# CONFIG_REGULATOR is not set
848# CONFIG_MEDIA_SUPPORT is not set 886# CONFIG_MEDIA_SUPPORT is not set
849 887
@@ -908,7 +946,6 @@ CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
908# CONFIG_USB_R8A66597_HCD is not set 946# CONFIG_USB_R8A66597_HCD is not set
909# CONFIG_USB_WHCI_HCD is not set 947# CONFIG_USB_WHCI_HCD is not set
910# CONFIG_USB_HWA_HCD is not set 948# CONFIG_USB_HWA_HCD is not set
911# CONFIG_USB_MUSB_HDRC is not set
912 949
913# 950#
914# USB Device Class drivers 951# USB Device Class drivers
@@ -1011,6 +1048,7 @@ CONFIG_RTC_INTF_DEV=y
1011CONFIG_RTC_DRV_PCF8563=m 1048CONFIG_RTC_DRV_PCF8563=m
1012# CONFIG_RTC_DRV_PCF8583 is not set 1049# CONFIG_RTC_DRV_PCF8583 is not set
1013# CONFIG_RTC_DRV_M41T80 is not set 1050# CONFIG_RTC_DRV_M41T80 is not set
1051# CONFIG_RTC_DRV_BQ32K is not set
1014# CONFIG_RTC_DRV_S35390A is not set 1052# CONFIG_RTC_DRV_S35390A is not set
1015# CONFIG_RTC_DRV_FM3130 is not set 1053# CONFIG_RTC_DRV_FM3130 is not set
1016# CONFIG_RTC_DRV_RX8581 is not set 1054# CONFIG_RTC_DRV_RX8581 is not set
@@ -1032,7 +1070,9 @@ CONFIG_RTC_DRV_PCF8563=m
1032# CONFIG_RTC_DRV_M48T86 is not set 1070# CONFIG_RTC_DRV_M48T86 is not set
1033# CONFIG_RTC_DRV_M48T35 is not set 1071# CONFIG_RTC_DRV_M48T35 is not set
1034# CONFIG_RTC_DRV_M48T59 is not set 1072# CONFIG_RTC_DRV_M48T59 is not set
1073# CONFIG_RTC_DRV_MSM6242 is not set
1035# CONFIG_RTC_DRV_BQ4802 is not set 1074# CONFIG_RTC_DRV_BQ4802 is not set
1075# CONFIG_RTC_DRV_RP5C01 is not set
1036# CONFIG_RTC_DRV_V3020 is not set 1076# CONFIG_RTC_DRV_V3020 is not set
1037 1077
1038# 1078#
@@ -1243,10 +1283,11 @@ CONFIG_FRAME_WARN=1024
1243# CONFIG_DEBUG_FS is not set 1283# CONFIG_DEBUG_FS is not set
1244# CONFIG_HEADERS_CHECK is not set 1284# CONFIG_HEADERS_CHECK is not set
1245# CONFIG_DEBUG_KERNEL is not set 1285# CONFIG_DEBUG_KERNEL is not set
1246# CONFIG_DEBUG_BUGVERBOSE is not set 1286CONFIG_DEBUG_BUGVERBOSE=y
1247# CONFIG_DEBUG_MEMORY_INIT is not set 1287# CONFIG_DEBUG_MEMORY_INIT is not set
1248# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1288# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1249# CONFIG_LATENCYTOP is not set 1289# CONFIG_LATENCYTOP is not set
1290# CONFIG_SYSCTL_SYSCALL_CHECK is not set
1250CONFIG_HAVE_FUNCTION_TRACER=y 1291CONFIG_HAVE_FUNCTION_TRACER=y
1251CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 1292CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
1252CONFIG_HAVE_DYNAMIC_FTRACE=y 1293CONFIG_HAVE_DYNAMIC_FTRACE=y
@@ -1269,7 +1310,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1269# CONFIG_KEYS is not set 1310# CONFIG_KEYS is not set
1270# CONFIG_SECURITY is not set 1311# CONFIG_SECURITY is not set
1271# CONFIG_SECURITYFS is not set 1312# CONFIG_SECURITYFS is not set
1272# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1313# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1314# CONFIG_DEFAULT_SECURITY_SMACK is not set
1315# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1316CONFIG_DEFAULT_SECURITY_DAC=y
1317CONFIG_DEFAULT_SECURITY=""
1273# CONFIG_CRYPTO is not set 1318# CONFIG_CRYPTO is not set
1274CONFIG_PPC_CLOCK=y 1319CONFIG_PPC_CLOCK=y
1275CONFIG_PPC_LIB_RHEAP=y 1320CONFIG_PPC_LIB_RHEAP=y
diff --git a/arch/powerpc/configs/52xx/tqm5200_defconfig b/arch/powerpc/configs/52xx/tqm5200_defconfig
index 75c835c2ae66..3972438db719 100644
--- a/arch/powerpc/configs/52xx/tqm5200_defconfig
+++ b/arch/powerpc/configs/52xx/tqm5200_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc4 3# Linux kernel version: 2.6.33-rc2
4# Thu Oct 15 10:33:23 2009 4# Wed Dec 30 14:45:09 2009
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -58,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
58CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y 60CONFIG_DTC=y
60CONFIG_DEFAULT_UIMAGE=y 61CONFIG_DEFAULT_UIMAGE=y
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
61# CONFIG_PPC_DCR_NATIVE is not set 63# CONFIG_PPC_DCR_NATIVE is not set
62# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
63CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -85,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
85# 87#
86CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
88# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
89CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
90# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -171,14 +174,41 @@ CONFIG_LBDAF=y
171# IO Schedulers 174# IO Schedulers
172# 175#
173CONFIG_IOSCHED_NOOP=y 176CONFIG_IOSCHED_NOOP=y
174CONFIG_IOSCHED_AS=y
175CONFIG_IOSCHED_DEADLINE=y 177CONFIG_IOSCHED_DEADLINE=y
176CONFIG_IOSCHED_CFQ=y 178CONFIG_IOSCHED_CFQ=y
177CONFIG_DEFAULT_AS=y
178# CONFIG_DEFAULT_DEADLINE is not set 179# CONFIG_DEFAULT_DEADLINE is not set
179# CONFIG_DEFAULT_CFQ is not set 180CONFIG_DEFAULT_CFQ=y
180# CONFIG_DEFAULT_NOOP is not set 181# CONFIG_DEFAULT_NOOP is not set
181CONFIG_DEFAULT_IOSCHED="anticipatory" 182CONFIG_DEFAULT_IOSCHED="cfq"
183# CONFIG_INLINE_SPIN_TRYLOCK is not set
184# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
185# CONFIG_INLINE_SPIN_LOCK is not set
186# CONFIG_INLINE_SPIN_LOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
189CONFIG_INLINE_SPIN_UNLOCK=y
190# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
191CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
192# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
193# CONFIG_INLINE_READ_TRYLOCK is not set
194# CONFIG_INLINE_READ_LOCK is not set
195# CONFIG_INLINE_READ_LOCK_BH is not set
196# CONFIG_INLINE_READ_LOCK_IRQ is not set
197# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
198CONFIG_INLINE_READ_UNLOCK=y
199# CONFIG_INLINE_READ_UNLOCK_BH is not set
200CONFIG_INLINE_READ_UNLOCK_IRQ=y
201# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
202# CONFIG_INLINE_WRITE_TRYLOCK is not set
203# CONFIG_INLINE_WRITE_LOCK is not set
204# CONFIG_INLINE_WRITE_LOCK_BH is not set
205# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
207CONFIG_INLINE_WRITE_UNLOCK=y
208# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
209CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
210# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
211# CONFIG_MUTEX_SPIN_ON_OWNER is not set
182# CONFIG_FREEZER is not set 212# CONFIG_FREEZER is not set
183 213
184# 214#
@@ -194,6 +224,7 @@ CONFIG_PPC_MPC5200_SIMPLE=y
194# CONFIG_PPC_MEDIA5200 is not set 224# CONFIG_PPC_MEDIA5200 is not set
195CONFIG_PPC_MPC5200_BUGFIX=y 225CONFIG_PPC_MPC5200_BUGFIX=y
196# CONFIG_PPC_MPC5200_GPIO is not set 226# CONFIG_PPC_MPC5200_GPIO is not set
227# CONFIG_PPC_MPC5200_LPBFIFO is not set
197# CONFIG_PPC_PMAC is not set 228# CONFIG_PPC_PMAC is not set
198# CONFIG_PPC_CELL is not set 229# CONFIG_PPC_CELL is not set
199# CONFIG_PPC_CELL_NATIVE is not set 230# CONFIG_PPC_CELL_NATIVE is not set
@@ -249,6 +280,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
249CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 280CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
250# CONFIG_KEXEC is not set 281# CONFIG_KEXEC is not set
251# CONFIG_CRASH_DUMP is not set 282# CONFIG_CRASH_DUMP is not set
283CONFIG_SPARSE_IRQ=y
252CONFIG_MAX_ACTIVE_REGIONS=32 284CONFIG_MAX_ACTIVE_REGIONS=32
253CONFIG_ARCH_FLATMEM_ENABLE=y 285CONFIG_ARCH_FLATMEM_ENABLE=y
254CONFIG_ARCH_POPULATES_NODE_MAP=y 286CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -265,8 +297,6 @@ CONFIG_MIGRATION=y
265CONFIG_ZONE_DMA_FLAG=1 297CONFIG_ZONE_DMA_FLAG=1
266CONFIG_BOUNCE=y 298CONFIG_BOUNCE=y
267CONFIG_VIRT_TO_BUS=y 299CONFIG_VIRT_TO_BUS=y
268CONFIG_HAVE_MLOCK=y
269CONFIG_HAVE_MLOCKED_PAGE_BIT=y
270# CONFIG_KSM is not set 300# CONFIG_KSM is not set
271CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 301CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
272CONFIG_PPC_4K_PAGES=y 302CONFIG_PPC_4K_PAGES=y
@@ -279,6 +309,7 @@ CONFIG_PROC_DEVICETREE=y
279CONFIG_EXTRA_TARGETS="" 309CONFIG_EXTRA_TARGETS=""
280CONFIG_PM=y 310CONFIG_PM=y
281# CONFIG_PM_DEBUG is not set 311# CONFIG_PM_DEBUG is not set
312# CONFIG_HIBERNATION is not set
282# CONFIG_PM_RUNTIME is not set 313# CONFIG_PM_RUNTIME is not set
283CONFIG_SECCOMP=y 314CONFIG_SECCOMP=y
284CONFIG_ISA_DMA_API=y 315CONFIG_ISA_DMA_API=y
@@ -384,7 +415,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
384# CONFIG_IRDA is not set 415# CONFIG_IRDA is not set
385# CONFIG_BT is not set 416# CONFIG_BT is not set
386# CONFIG_AF_RXRPC is not set 417# CONFIG_AF_RXRPC is not set
387# CONFIG_WIRELESS is not set 418CONFIG_WIRELESS=y
419# CONFIG_CFG80211 is not set
420# CONFIG_LIB80211 is not set
421
422#
423# CFG80211 needs to be enabled for MAC80211
424#
388# CONFIG_WIMAX is not set 425# CONFIG_WIMAX is not set
389# CONFIG_RFKILL is not set 426# CONFIG_RFKILL is not set
390# CONFIG_NET_9P is not set 427# CONFIG_NET_9P is not set
@@ -496,6 +533,10 @@ CONFIG_BLK_DEV=y
496# CONFIG_BLK_DEV_COW_COMMON is not set 533# CONFIG_BLK_DEV_COW_COMMON is not set
497CONFIG_BLK_DEV_LOOP=y 534CONFIG_BLK_DEV_LOOP=y
498# CONFIG_BLK_DEV_CRYPTOLOOP is not set 535# CONFIG_BLK_DEV_CRYPTOLOOP is not set
536
537#
538# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
539#
499# CONFIG_BLK_DEV_NBD is not set 540# CONFIG_BLK_DEV_NBD is not set
500# CONFIG_BLK_DEV_UB is not set 541# CONFIG_BLK_DEV_UB is not set
501CONFIG_BLK_DEV_RAM=y 542CONFIG_BLK_DEV_RAM=y
@@ -607,8 +648,8 @@ CONFIG_FEC_MPC52xx_MDIO=y
607# CONFIG_NETDEV_1000 is not set 648# CONFIG_NETDEV_1000 is not set
608# CONFIG_NETDEV_10000 is not set 649# CONFIG_NETDEV_10000 is not set
609CONFIG_WLAN=y 650CONFIG_WLAN=y
610# CONFIG_WLAN_PRE80211 is not set 651# CONFIG_USB_ZD1201 is not set
611# CONFIG_WLAN_80211 is not set 652# CONFIG_HOSTAP is not set
612 653
613# 654#
614# Enable WiMAX (Networking options) to see the WiMAX drivers 655# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -663,6 +704,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
663CONFIG_SERIAL_MPC52xx=y 704CONFIG_SERIAL_MPC52xx=y
664CONFIG_SERIAL_MPC52xx_CONSOLE=y 705CONFIG_SERIAL_MPC52xx_CONSOLE=y
665CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200 706CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200
707# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
666CONFIG_UNIX98_PTYS=y 708CONFIG_UNIX98_PTYS=y
667# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 709# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
668CONFIG_LEGACY_PTYS=y 710CONFIG_LEGACY_PTYS=y
@@ -708,7 +750,6 @@ CONFIG_I2C_MPC=y
708# 750#
709# Miscellaneous I2C Chip support 751# Miscellaneous I2C Chip support
710# 752#
711# CONFIG_DS1682 is not set
712# CONFIG_SENSORS_TSL2550 is not set 753# CONFIG_SENSORS_TSL2550 is not set
713# CONFIG_I2C_DEBUG_CORE is not set 754# CONFIG_I2C_DEBUG_CORE is not set
714# CONFIG_I2C_DEBUG_ALGO is not set 755# CONFIG_I2C_DEBUG_ALGO is not set
@@ -753,6 +794,7 @@ CONFIG_HWMON=y
753# CONFIG_SENSORS_GL520SM is not set 794# CONFIG_SENSORS_GL520SM is not set
754# CONFIG_SENSORS_IT87 is not set 795# CONFIG_SENSORS_IT87 is not set
755# CONFIG_SENSORS_LM63 is not set 796# CONFIG_SENSORS_LM63 is not set
797# CONFIG_SENSORS_LM73 is not set
756# CONFIG_SENSORS_LM75 is not set 798# CONFIG_SENSORS_LM75 is not set
757# CONFIG_SENSORS_LM77 is not set 799# CONFIG_SENSORS_LM77 is not set
758# CONFIG_SENSORS_LM78 is not set 800# CONFIG_SENSORS_LM78 is not set
@@ -818,11 +860,13 @@ CONFIG_SSB_POSSIBLE=y
818# CONFIG_TWL4030_CORE is not set 860# CONFIG_TWL4030_CORE is not set
819# CONFIG_MFD_TMIO is not set 861# CONFIG_MFD_TMIO is not set
820# CONFIG_PMIC_DA903X is not set 862# CONFIG_PMIC_DA903X is not set
863# CONFIG_PMIC_ADP5520 is not set
821# CONFIG_MFD_WM8400 is not set 864# CONFIG_MFD_WM8400 is not set
822# CONFIG_MFD_WM831X is not set 865# CONFIG_MFD_WM831X is not set
823# CONFIG_MFD_WM8350_I2C is not set 866# CONFIG_MFD_WM8350_I2C is not set
824# CONFIG_MFD_PCF50633 is not set 867# CONFIG_MFD_PCF50633 is not set
825# CONFIG_AB3100_CORE is not set 868# CONFIG_AB3100_CORE is not set
869# CONFIG_MFD_88PM8607 is not set
826# CONFIG_REGULATOR is not set 870# CONFIG_REGULATOR is not set
827# CONFIG_MEDIA_SUPPORT is not set 871# CONFIG_MEDIA_SUPPORT is not set
828 872
@@ -880,7 +924,6 @@ CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
880# CONFIG_USB_SL811_HCD is not set 924# CONFIG_USB_SL811_HCD is not set
881# CONFIG_USB_R8A66597_HCD is not set 925# CONFIG_USB_R8A66597_HCD is not set
882# CONFIG_USB_HWA_HCD is not set 926# CONFIG_USB_HWA_HCD is not set
883# CONFIG_USB_MUSB_HDRC is not set
884 927
885# 928#
886# USB Device Class drivers 929# USB Device Class drivers
@@ -984,6 +1027,7 @@ CONFIG_RTC_DRV_DS1307=y
984# CONFIG_RTC_DRV_PCF8563 is not set 1027# CONFIG_RTC_DRV_PCF8563 is not set
985# CONFIG_RTC_DRV_PCF8583 is not set 1028# CONFIG_RTC_DRV_PCF8583 is not set
986# CONFIG_RTC_DRV_M41T80 is not set 1029# CONFIG_RTC_DRV_M41T80 is not set
1030# CONFIG_RTC_DRV_BQ32K is not set
987# CONFIG_RTC_DRV_S35390A is not set 1031# CONFIG_RTC_DRV_S35390A is not set
988# CONFIG_RTC_DRV_FM3130 is not set 1032# CONFIG_RTC_DRV_FM3130 is not set
989# CONFIG_RTC_DRV_RX8581 is not set 1033# CONFIG_RTC_DRV_RX8581 is not set
@@ -1005,7 +1049,9 @@ CONFIG_RTC_DRV_DS1307=y
1005# CONFIG_RTC_DRV_M48T86 is not set 1049# CONFIG_RTC_DRV_M48T86 is not set
1006# CONFIG_RTC_DRV_M48T35 is not set 1050# CONFIG_RTC_DRV_M48T35 is not set
1007# CONFIG_RTC_DRV_M48T59 is not set 1051# CONFIG_RTC_DRV_M48T59 is not set
1052# CONFIG_RTC_DRV_MSM6242 is not set
1008# CONFIG_RTC_DRV_BQ4802 is not set 1053# CONFIG_RTC_DRV_BQ4802 is not set
1054# CONFIG_RTC_DRV_RP5C01 is not set
1009# CONFIG_RTC_DRV_V3020 is not set 1055# CONFIG_RTC_DRV_V3020 is not set
1010 1056
1011# 1057#
@@ -1275,6 +1321,7 @@ CONFIG_DEBUG_INFO=y
1275# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 1321# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1276# CONFIG_FAULT_INJECTION is not set 1322# CONFIG_FAULT_INJECTION is not set
1277# CONFIG_LATENCYTOP is not set 1323# CONFIG_LATENCYTOP is not set
1324# CONFIG_SYSCTL_SYSCALL_CHECK is not set
1278# CONFIG_DEBUG_PAGEALLOC is not set 1325# CONFIG_DEBUG_PAGEALLOC is not set
1279CONFIG_HAVE_FUNCTION_TRACER=y 1326CONFIG_HAVE_FUNCTION_TRACER=y
1280CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 1327CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -1318,7 +1365,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1318# CONFIG_KEYS is not set 1365# CONFIG_KEYS is not set
1319# CONFIG_SECURITY is not set 1366# CONFIG_SECURITY is not set
1320# CONFIG_SECURITYFS is not set 1367# CONFIG_SECURITYFS is not set
1321# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1368# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1369# CONFIG_DEFAULT_SECURITY_SMACK is not set
1370# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1371CONFIG_DEFAULT_SECURITY_DAC=y
1372CONFIG_DEFAULT_SECURITY=""
1322CONFIG_CRYPTO=y 1373CONFIG_CRYPTO=y
1323 1374
1324# 1375#
diff --git a/arch/powerpc/configs/83xx/asp8347_defconfig b/arch/powerpc/configs/83xx/asp8347_defconfig
index 466f09ac3153..baa2bbb6c096 100644
--- a/arch/powerpc/configs/83xx/asp8347_defconfig
+++ b/arch/powerpc/configs/83xx/asp8347_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:20 2009 4# Wed Jan 6 09:24:14 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -60,6 +61,7 @@ CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61# CONFIG_DEFAULT_UIMAGE is not set 62# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_REDBOOT=y 63CONFIG_REDBOOT=y
64CONFIG_ARCH_HIBERNATION_POSSIBLE=y
63CONFIG_ARCH_SUSPEND_POSSIBLE=y 65CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 66# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 67# CONFIG_PPC_DCR_MMIO is not set
@@ -88,6 +90,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 90#
89CONFIG_TREE_RCU=y 91CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 92# CONFIG_TREE_PREEMPT_RCU is not set
93# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 94# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 95CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 96# CONFIG_RCU_FANOUT_EXACT is not set
@@ -174,14 +177,41 @@ CONFIG_LBDAF=y
174# IO Schedulers 177# IO Schedulers
175# 178#
176CONFIG_IOSCHED_NOOP=y 179CONFIG_IOSCHED_NOOP=y
177CONFIG_IOSCHED_AS=y
178CONFIG_IOSCHED_DEADLINE=y 180CONFIG_IOSCHED_DEADLINE=y
179CONFIG_IOSCHED_CFQ=y 181CONFIG_IOSCHED_CFQ=y
180CONFIG_DEFAULT_AS=y
181# CONFIG_DEFAULT_DEADLINE is not set 182# CONFIG_DEFAULT_DEADLINE is not set
182# CONFIG_DEFAULT_CFQ is not set 183CONFIG_DEFAULT_CFQ=y
183# CONFIG_DEFAULT_NOOP is not set 184# CONFIG_DEFAULT_NOOP is not set
184CONFIG_DEFAULT_IOSCHED="anticipatory" 185CONFIG_DEFAULT_IOSCHED="cfq"
186# CONFIG_INLINE_SPIN_TRYLOCK is not set
187# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK is not set
189# CONFIG_INLINE_SPIN_LOCK_BH is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
191# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
192CONFIG_INLINE_SPIN_UNLOCK=y
193# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
194CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
195# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
196# CONFIG_INLINE_READ_TRYLOCK is not set
197# CONFIG_INLINE_READ_LOCK is not set
198# CONFIG_INLINE_READ_LOCK_BH is not set
199# CONFIG_INLINE_READ_LOCK_IRQ is not set
200# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
201CONFIG_INLINE_READ_UNLOCK=y
202# CONFIG_INLINE_READ_UNLOCK_BH is not set
203CONFIG_INLINE_READ_UNLOCK_IRQ=y
204# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
205# CONFIG_INLINE_WRITE_TRYLOCK is not set
206# CONFIG_INLINE_WRITE_LOCK is not set
207# CONFIG_INLINE_WRITE_LOCK_BH is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
209# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
210CONFIG_INLINE_WRITE_UNLOCK=y
211# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
212CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
213# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
214# CONFIG_MUTEX_SPIN_ON_OWNER is not set
185# CONFIG_FREEZER is not set 215# CONFIG_FREEZER is not set
186 216
187# 217#
@@ -260,6 +290,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
260CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 290CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
261# CONFIG_KEXEC is not set 291# CONFIG_KEXEC is not set
262# CONFIG_CRASH_DUMP is not set 292# CONFIG_CRASH_DUMP is not set
293CONFIG_SPARSE_IRQ=y
263CONFIG_MAX_ACTIVE_REGIONS=32 294CONFIG_MAX_ACTIVE_REGIONS=32
264CONFIG_ARCH_FLATMEM_ENABLE=y 295CONFIG_ARCH_FLATMEM_ENABLE=y
265CONFIG_ARCH_POPULATES_NODE_MAP=y 296CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -276,8 +307,6 @@ CONFIG_MIGRATION=y
276CONFIG_ZONE_DMA_FLAG=1 307CONFIG_ZONE_DMA_FLAG=1
277CONFIG_BOUNCE=y 308CONFIG_BOUNCE=y
278CONFIG_VIRT_TO_BUS=y 309CONFIG_VIRT_TO_BUS=y
279CONFIG_HAVE_MLOCK=y
280CONFIG_HAVE_MLOCKED_PAGE_BIT=y
281# CONFIG_KSM is not set 310# CONFIG_KSM is not set
282CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 311CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
283CONFIG_PPC_4K_PAGES=y 312CONFIG_PPC_4K_PAGES=y
@@ -404,9 +433,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
404# CONFIG_AF_RXRPC is not set 433# CONFIG_AF_RXRPC is not set
405CONFIG_WIRELESS=y 434CONFIG_WIRELESS=y
406# CONFIG_CFG80211 is not set 435# CONFIG_CFG80211 is not set
407CONFIG_CFG80211_DEFAULT_PS_VALUE=0
408CONFIG_WIRELESS_OLD_REGULATORY=y
409# CONFIG_WIRELESS_EXT is not set
410# CONFIG_LIB80211 is not set 436# CONFIG_LIB80211 is not set
411 437
412# 438#
@@ -530,6 +556,10 @@ CONFIG_BLK_DEV=y
530# CONFIG_BLK_DEV_COW_COMMON is not set 556# CONFIG_BLK_DEV_COW_COMMON is not set
531CONFIG_BLK_DEV_LOOP=y 557CONFIG_BLK_DEV_LOOP=y
532# CONFIG_BLK_DEV_CRYPTOLOOP is not set 558# CONFIG_BLK_DEV_CRYPTOLOOP is not set
559
560#
561# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
562#
533# CONFIG_BLK_DEV_NBD is not set 563# CONFIG_BLK_DEV_NBD is not set
534# CONFIG_BLK_DEV_SX8 is not set 564# CONFIG_BLK_DEV_SX8 is not set
535# CONFIG_BLK_DEV_UB is not set 565# CONFIG_BLK_DEV_UB is not set
@@ -541,6 +571,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
541# CONFIG_ATA_OVER_ETH is not set 571# CONFIG_ATA_OVER_ETH is not set
542# CONFIG_BLK_DEV_HD is not set 572# CONFIG_BLK_DEV_HD is not set
543CONFIG_MISC_DEVICES=y 573CONFIG_MISC_DEVICES=y
574# CONFIG_AD525X_DPOT is not set
544# CONFIG_PHANTOM is not set 575# CONFIG_PHANTOM is not set
545# CONFIG_SGI_IOC4 is not set 576# CONFIG_SGI_IOC4 is not set
546# CONFIG_TIFM_CORE is not set 577# CONFIG_TIFM_CORE is not set
@@ -548,6 +579,7 @@ CONFIG_MISC_DEVICES=y
548# CONFIG_ENCLOSURE_SERVICES is not set 579# CONFIG_ENCLOSURE_SERVICES is not set
549# CONFIG_HP_ILO is not set 580# CONFIG_HP_ILO is not set
550# CONFIG_ISL29003 is not set 581# CONFIG_ISL29003 is not set
582# CONFIG_DS1682 is not set
551# CONFIG_C2PORT is not set 583# CONFIG_C2PORT is not set
552 584
553# 585#
@@ -581,7 +613,7 @@ CONFIG_HAVE_IDE=y
581# 613#
582 614
583# 615#
584# See the help texts for more information. 616# The newer stack is recommended.
585# 617#
586# CONFIG_FIREWIRE is not set 618# CONFIG_FIREWIRE is not set
587# CONFIG_IEEE1394 is not set 619# CONFIG_IEEE1394 is not set
@@ -668,8 +700,11 @@ CONFIG_GIANFAR=y
668# CONFIG_NETDEV_10000 is not set 700# CONFIG_NETDEV_10000 is not set
669# CONFIG_TR is not set 701# CONFIG_TR is not set
670CONFIG_WLAN=y 702CONFIG_WLAN=y
671# CONFIG_WLAN_PRE80211 is not set 703# CONFIG_AIRO is not set
672# CONFIG_WLAN_80211 is not set 704# CONFIG_ATMEL is not set
705# CONFIG_PRISM54 is not set
706# CONFIG_USB_ZD1201 is not set
707# CONFIG_HOSTAP is not set
673 708
674# 709#
675# Enable WiMAX (Networking options) to see the WiMAX drivers 710# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -691,6 +726,7 @@ CONFIG_WLAN=y
691# CONFIG_NETCONSOLE is not set 726# CONFIG_NETCONSOLE is not set
692# CONFIG_NETPOLL is not set 727# CONFIG_NETPOLL is not set
693# CONFIG_NET_POLL_CONTROLLER is not set 728# CONFIG_NET_POLL_CONTROLLER is not set
729# CONFIG_VMXNET3 is not set
694# CONFIG_ISDN is not set 730# CONFIG_ISDN is not set
695# CONFIG_PHONE is not set 731# CONFIG_PHONE is not set
696 732
@@ -700,6 +736,7 @@ CONFIG_WLAN=y
700CONFIG_INPUT=y 736CONFIG_INPUT=y
701# CONFIG_INPUT_FF_MEMLESS is not set 737# CONFIG_INPUT_FF_MEMLESS is not set
702# CONFIG_INPUT_POLLDEV is not set 738# CONFIG_INPUT_POLLDEV is not set
739# CONFIG_INPUT_SPARSEKMAP is not set
703 740
704# 741#
705# Userland interfaces 742# Userland interfaces
@@ -751,6 +788,7 @@ CONFIG_SERIAL_CORE=y
751CONFIG_SERIAL_CORE_CONSOLE=y 788CONFIG_SERIAL_CORE_CONSOLE=y
752# CONFIG_SERIAL_JSM is not set 789# CONFIG_SERIAL_JSM is not set
753# CONFIG_SERIAL_OF_PLATFORM is not set 790# CONFIG_SERIAL_OF_PLATFORM is not set
791# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
754CONFIG_UNIX98_PTYS=y 792CONFIG_UNIX98_PTYS=y
755# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 793# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
756CONFIG_LEGACY_PTYS=y 794CONFIG_LEGACY_PTYS=y
@@ -807,11 +845,6 @@ CONFIG_I2C_MPC=y
807# CONFIG_I2C_TINY_USB is not set 845# CONFIG_I2C_TINY_USB is not set
808 846
809# 847#
810# Graphics adapter I2C/DDC channel drivers
811#
812# CONFIG_I2C_VOODOO3 is not set
813
814#
815# Other I2C/SMBus bus drivers 848# Other I2C/SMBus bus drivers
816# 849#
817# CONFIG_I2C_PCA_PLATFORM is not set 850# CONFIG_I2C_PCA_PLATFORM is not set
@@ -820,7 +853,6 @@ CONFIG_I2C_MPC=y
820# 853#
821# Miscellaneous I2C Chip support 854# Miscellaneous I2C Chip support
822# 855#
823# CONFIG_DS1682 is not set
824# CONFIG_SENSORS_TSL2550 is not set 856# CONFIG_SENSORS_TSL2550 is not set
825# CONFIG_I2C_DEBUG_CORE is not set 857# CONFIG_I2C_DEBUG_CORE is not set
826# CONFIG_I2C_DEBUG_ALGO is not set 858# CONFIG_I2C_DEBUG_ALGO is not set
@@ -866,6 +898,7 @@ CONFIG_HWMON=y
866# CONFIG_SENSORS_GL520SM is not set 898# CONFIG_SENSORS_GL520SM is not set
867# CONFIG_SENSORS_IT87 is not set 899# CONFIG_SENSORS_IT87 is not set
868# CONFIG_SENSORS_LM63 is not set 900# CONFIG_SENSORS_LM63 is not set
901# CONFIG_SENSORS_LM73 is not set
869# CONFIG_SENSORS_LM75 is not set 902# CONFIG_SENSORS_LM75 is not set
870# CONFIG_SENSORS_LM77 is not set 903# CONFIG_SENSORS_LM77 is not set
871# CONFIG_SENSORS_LM78 is not set 904# CONFIG_SENSORS_LM78 is not set
@@ -904,6 +937,7 @@ CONFIG_HWMON=y
904# CONFIG_SENSORS_W83L786NG is not set 937# CONFIG_SENSORS_W83L786NG is not set
905# CONFIG_SENSORS_W83627HF is not set 938# CONFIG_SENSORS_W83627HF is not set
906# CONFIG_SENSORS_W83627EHF is not set 939# CONFIG_SENSORS_W83627EHF is not set
940# CONFIG_SENSORS_LIS3_I2C is not set
907CONFIG_THERMAL=y 941CONFIG_THERMAL=y
908# CONFIG_THERMAL_HWMON is not set 942# CONFIG_THERMAL_HWMON is not set
909CONFIG_WATCHDOG=y 943CONFIG_WATCHDOG=y
@@ -942,11 +976,13 @@ CONFIG_SSB_POSSIBLE=y
942# CONFIG_TWL4030_CORE is not set 976# CONFIG_TWL4030_CORE is not set
943# CONFIG_MFD_TMIO is not set 977# CONFIG_MFD_TMIO is not set
944# CONFIG_PMIC_DA903X is not set 978# CONFIG_PMIC_DA903X is not set
979# CONFIG_PMIC_ADP5520 is not set
945# CONFIG_MFD_WM8400 is not set 980# CONFIG_MFD_WM8400 is not set
946# CONFIG_MFD_WM831X is not set 981# CONFIG_MFD_WM831X is not set
947# CONFIG_MFD_WM8350_I2C is not set 982# CONFIG_MFD_WM8350_I2C is not set
948# CONFIG_MFD_PCF50633 is not set 983# CONFIG_MFD_PCF50633 is not set
949# CONFIG_AB3100_CORE is not set 984# CONFIG_AB3100_CORE is not set
985# CONFIG_MFD_88PM8607 is not set
950# CONFIG_REGULATOR is not set 986# CONFIG_REGULATOR is not set
951# CONFIG_MEDIA_SUPPORT is not set 987# CONFIG_MEDIA_SUPPORT is not set
952 988
@@ -996,6 +1032,7 @@ CONFIG_USB_MON=y
996CONFIG_USB_EHCI_HCD=y 1032CONFIG_USB_EHCI_HCD=y
997CONFIG_USB_EHCI_ROOT_HUB_TT=y 1033CONFIG_USB_EHCI_ROOT_HUB_TT=y
998# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1034# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1035# CONFIG_XPS_USB_HCD_XILINX is not set
999CONFIG_USB_EHCI_FSL=y 1036CONFIG_USB_EHCI_FSL=y
1000CONFIG_USB_EHCI_HCD_PPC_OF=y 1037CONFIG_USB_EHCI_HCD_PPC_OF=y
1001# CONFIG_USB_OXU210HP_HCD is not set 1038# CONFIG_USB_OXU210HP_HCD is not set
@@ -1101,6 +1138,7 @@ CONFIG_RTC_DRV_DS1374=y
1101# CONFIG_RTC_DRV_PCF8563 is not set 1138# CONFIG_RTC_DRV_PCF8563 is not set
1102# CONFIG_RTC_DRV_PCF8583 is not set 1139# CONFIG_RTC_DRV_PCF8583 is not set
1103# CONFIG_RTC_DRV_M41T80 is not set 1140# CONFIG_RTC_DRV_M41T80 is not set
1141# CONFIG_RTC_DRV_BQ32K is not set
1104# CONFIG_RTC_DRV_S35390A is not set 1142# CONFIG_RTC_DRV_S35390A is not set
1105# CONFIG_RTC_DRV_FM3130 is not set 1143# CONFIG_RTC_DRV_FM3130 is not set
1106# CONFIG_RTC_DRV_RX8581 is not set 1144# CONFIG_RTC_DRV_RX8581 is not set
@@ -1122,7 +1160,9 @@ CONFIG_RTC_DRV_DS1374=y
1122# CONFIG_RTC_DRV_M48T86 is not set 1160# CONFIG_RTC_DRV_M48T86 is not set
1123# CONFIG_RTC_DRV_M48T35 is not set 1161# CONFIG_RTC_DRV_M48T35 is not set
1124# CONFIG_RTC_DRV_M48T59 is not set 1162# CONFIG_RTC_DRV_M48T59 is not set
1163# CONFIG_RTC_DRV_MSM6242 is not set
1125# CONFIG_RTC_DRV_BQ4802 is not set 1164# CONFIG_RTC_DRV_BQ4802 is not set
1165# CONFIG_RTC_DRV_RP5C01 is not set
1126# CONFIG_RTC_DRV_V3020 is not set 1166# CONFIG_RTC_DRV_V3020 is not set
1127 1167
1128# 1168#
@@ -1347,7 +1387,7 @@ CONFIG_FRAME_WARN=1024
1347# CONFIG_DEBUG_KERNEL is not set 1387# CONFIG_DEBUG_KERNEL is not set
1348# CONFIG_SLUB_DEBUG_ON is not set 1388# CONFIG_SLUB_DEBUG_ON is not set
1349# CONFIG_SLUB_STATS is not set 1389# CONFIG_SLUB_STATS is not set
1350# CONFIG_DEBUG_BUGVERBOSE is not set 1390CONFIG_DEBUG_BUGVERBOSE=y
1351# CONFIG_DEBUG_MEMORY_INIT is not set 1391# CONFIG_DEBUG_MEMORY_INIT is not set
1352# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1392# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1353# CONFIG_LATENCYTOP is not set 1393# CONFIG_LATENCYTOP is not set
@@ -1374,7 +1414,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1374# CONFIG_KEYS is not set 1414# CONFIG_KEYS is not set
1375# CONFIG_SECURITY is not set 1415# CONFIG_SECURITY is not set
1376# CONFIG_SECURITYFS is not set 1416# CONFIG_SECURITYFS is not set
1377# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1417# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1418# CONFIG_DEFAULT_SECURITY_SMACK is not set
1419# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1420CONFIG_DEFAULT_SECURITY_DAC=y
1421CONFIG_DEFAULT_SECURITY=""
1378CONFIG_CRYPTO=y 1422CONFIG_CRYPTO=y
1379 1423
1380# 1424#
diff --git a/arch/powerpc/configs/83xx/kmeter1_defconfig b/arch/powerpc/configs/83xx/kmeter1_defconfig
index 6694fb73cd99..8b1aa806e548 100644
--- a/arch/powerpc/configs/83xx/kmeter1_defconfig
+++ b/arch/powerpc/configs/83xx/kmeter1_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:21 2009 4# Wed Jan 6 09:24:14 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -89,6 +91,7 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
89# 91#
90CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -168,14 +171,41 @@ CONFIG_LBDAF=y
168# IO Schedulers 171# IO Schedulers
169# 172#
170CONFIG_IOSCHED_NOOP=y 173CONFIG_IOSCHED_NOOP=y
171# CONFIG_IOSCHED_AS is not set
172# CONFIG_IOSCHED_DEADLINE is not set 174# CONFIG_IOSCHED_DEADLINE is not set
173# CONFIG_IOSCHED_CFQ is not set 175# CONFIG_IOSCHED_CFQ is not set
174# CONFIG_DEFAULT_AS is not set
175# CONFIG_DEFAULT_DEADLINE is not set 176# CONFIG_DEFAULT_DEADLINE is not set
176# CONFIG_DEFAULT_CFQ is not set 177# CONFIG_DEFAULT_CFQ is not set
177CONFIG_DEFAULT_NOOP=y 178CONFIG_DEFAULT_NOOP=y
178CONFIG_DEFAULT_IOSCHED="noop" 179CONFIG_DEFAULT_IOSCHED="noop"
180# CONFIG_INLINE_SPIN_TRYLOCK is not set
181# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
182# CONFIG_INLINE_SPIN_LOCK is not set
183# CONFIG_INLINE_SPIN_LOCK_BH is not set
184# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
185# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
186# CONFIG_INLINE_SPIN_UNLOCK is not set
187# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
188# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
189# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
190# CONFIG_INLINE_READ_TRYLOCK is not set
191# CONFIG_INLINE_READ_LOCK is not set
192# CONFIG_INLINE_READ_LOCK_BH is not set
193# CONFIG_INLINE_READ_LOCK_IRQ is not set
194# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
195# CONFIG_INLINE_READ_UNLOCK is not set
196# CONFIG_INLINE_READ_UNLOCK_BH is not set
197# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
198# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
199# CONFIG_INLINE_WRITE_TRYLOCK is not set
200# CONFIG_INLINE_WRITE_LOCK is not set
201# CONFIG_INLINE_WRITE_LOCK_BH is not set
202# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
203# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
204# CONFIG_INLINE_WRITE_UNLOCK is not set
205# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
206# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
207# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
208# CONFIG_MUTEX_SPIN_ON_OWNER is not set
179# CONFIG_FREEZER is not set 209# CONFIG_FREEZER is not set
180 210
181# 211#
@@ -253,6 +283,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
253CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
254# CONFIG_KEXEC is not set 284# CONFIG_KEXEC is not set
255# CONFIG_CRASH_DUMP is not set 285# CONFIG_CRASH_DUMP is not set
286CONFIG_SPARSE_IRQ=y
256CONFIG_MAX_ACTIVE_REGIONS=32 287CONFIG_MAX_ACTIVE_REGIONS=32
257CONFIG_ARCH_FLATMEM_ENABLE=y 288CONFIG_ARCH_FLATMEM_ENABLE=y
258CONFIG_ARCH_POPULATES_NODE_MAP=y 289CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -269,8 +300,6 @@ CONFIG_MIGRATION=y
269CONFIG_ZONE_DMA_FLAG=1 300CONFIG_ZONE_DMA_FLAG=1
270CONFIG_BOUNCE=y 301CONFIG_BOUNCE=y
271CONFIG_VIRT_TO_BUS=y 302CONFIG_VIRT_TO_BUS=y
272CONFIG_HAVE_MLOCK=y
273CONFIG_HAVE_MLOCKED_PAGE_BIT=y
274# CONFIG_KSM is not set 303# CONFIG_KSM is not set
275CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 304CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
276CONFIG_PPC_4K_PAGES=y 305CONFIG_PPC_4K_PAGES=y
@@ -384,7 +413,13 @@ CONFIG_LLC=m
384# CONFIG_IRDA is not set 413# CONFIG_IRDA is not set
385# CONFIG_BT is not set 414# CONFIG_BT is not set
386# CONFIG_AF_RXRPC is not set 415# CONFIG_AF_RXRPC is not set
387# CONFIG_WIRELESS is not set 416CONFIG_WIRELESS=y
417# CONFIG_CFG80211 is not set
418# CONFIG_LIB80211 is not set
419
420#
421# CFG80211 needs to be enabled for MAC80211
422#
388# CONFIG_WIMAX is not set 423# CONFIG_WIMAX is not set
389# CONFIG_RFKILL is not set 424# CONFIG_RFKILL is not set
390# CONFIG_NET_9P is not set 425# CONFIG_NET_9P is not set
@@ -512,6 +547,10 @@ CONFIG_BLK_DEV=y
512# CONFIG_BLK_DEV_FD is not set 547# CONFIG_BLK_DEV_FD is not set
513# CONFIG_BLK_DEV_COW_COMMON is not set 548# CONFIG_BLK_DEV_COW_COMMON is not set
514# CONFIG_BLK_DEV_LOOP is not set 549# CONFIG_BLK_DEV_LOOP is not set
550
551#
552# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
553#
515# CONFIG_BLK_DEV_NBD is not set 554# CONFIG_BLK_DEV_NBD is not set
516# CONFIG_BLK_DEV_RAM is not set 555# CONFIG_BLK_DEV_RAM is not set
517# CONFIG_CDROM_PKTCDVD is not set 556# CONFIG_CDROM_PKTCDVD is not set
@@ -581,8 +620,7 @@ CONFIG_UCC_GETH=y
581# CONFIG_MV643XX_ETH is not set 620# CONFIG_MV643XX_ETH is not set
582# CONFIG_NETDEV_10000 is not set 621# CONFIG_NETDEV_10000 is not set
583CONFIG_WLAN=y 622CONFIG_WLAN=y
584# CONFIG_WLAN_PRE80211 is not set 623# CONFIG_HOSTAP is not set
585# CONFIG_WLAN_80211 is not set
586 624
587# 625#
588# Enable WiMAX (Networking options) to see the WiMAX drivers 626# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -652,6 +690,7 @@ CONFIG_SERIAL_CORE=y
652CONFIG_SERIAL_CORE_CONSOLE=y 690CONFIG_SERIAL_CORE_CONSOLE=y
653# CONFIG_SERIAL_OF_PLATFORM is not set 691# CONFIG_SERIAL_OF_PLATFORM is not set
654# CONFIG_SERIAL_QE is not set 692# CONFIG_SERIAL_QE is not set
693# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
655CONFIG_UNIX98_PTYS=y 694CONFIG_UNIX98_PTYS=y
656# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 695# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
657CONFIG_LEGACY_PTYS=y 696CONFIG_LEGACY_PTYS=y
@@ -697,7 +736,6 @@ CONFIG_I2C_MPC=y
697# 736#
698# Miscellaneous I2C Chip support 737# Miscellaneous I2C Chip support
699# 738#
700# CONFIG_DS1682 is not set
701# CONFIG_SENSORS_TSL2550 is not set 739# CONFIG_SENSORS_TSL2550 is not set
702# CONFIG_I2C_DEBUG_CORE is not set 740# CONFIG_I2C_DEBUG_CORE is not set
703# CONFIG_I2C_DEBUG_ALGO is not set 741# CONFIG_I2C_DEBUG_ALGO is not set
@@ -732,11 +770,13 @@ CONFIG_SSB_POSSIBLE=y
732# CONFIG_TWL4030_CORE is not set 770# CONFIG_TWL4030_CORE is not set
733# CONFIG_MFD_TMIO is not set 771# CONFIG_MFD_TMIO is not set
734# CONFIG_PMIC_DA903X is not set 772# CONFIG_PMIC_DA903X is not set
773# CONFIG_PMIC_ADP5520 is not set
735# CONFIG_MFD_WM8400 is not set 774# CONFIG_MFD_WM8400 is not set
736# CONFIG_MFD_WM831X is not set 775# CONFIG_MFD_WM831X is not set
737# CONFIG_MFD_WM8350_I2C is not set 776# CONFIG_MFD_WM8350_I2C is not set
738# CONFIG_MFD_PCF50633 is not set 777# CONFIG_MFD_PCF50633 is not set
739# CONFIG_AB3100_CORE is not set 778# CONFIG_AB3100_CORE is not set
779# CONFIG_MFD_88PM8607 is not set
740# CONFIG_REGULATOR is not set 780# CONFIG_REGULATOR is not set
741# CONFIG_MEDIA_SUPPORT is not set 781# CONFIG_MEDIA_SUPPORT is not set
742 782
@@ -933,7 +973,7 @@ CONFIG_FRAME_WARN=1024
933CONFIG_DEBUG_FS=y 973CONFIG_DEBUG_FS=y
934# CONFIG_HEADERS_CHECK is not set 974# CONFIG_HEADERS_CHECK is not set
935# CONFIG_DEBUG_KERNEL is not set 975# CONFIG_DEBUG_KERNEL is not set
936# CONFIG_DEBUG_BUGVERBOSE is not set 976CONFIG_DEBUG_BUGVERBOSE=y
937# CONFIG_DEBUG_MEMORY_INIT is not set 977# CONFIG_DEBUG_MEMORY_INIT is not set
938# CONFIG_RCU_CPU_STALL_DETECTOR is not set 978# CONFIG_RCU_CPU_STALL_DETECTOR is not set
939# CONFIG_LATENCYTOP is not set 979# CONFIG_LATENCYTOP is not set
@@ -963,7 +1003,11 @@ CONFIG_PRINT_STACK_DEPTH=64
963# CONFIG_KEYS is not set 1003# CONFIG_KEYS is not set
964# CONFIG_SECURITY is not set 1004# CONFIG_SECURITY is not set
965# CONFIG_SECURITYFS is not set 1005# CONFIG_SECURITYFS is not set
966# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1006# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1007# CONFIG_DEFAULT_SECURITY_SMACK is not set
1008# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1009CONFIG_DEFAULT_SECURITY_DAC=y
1010CONFIG_DEFAULT_SECURITY=""
967# CONFIG_CRYPTO is not set 1011# CONFIG_CRYPTO is not set
968# CONFIG_PPC_CLOCK is not set 1012# CONFIG_PPC_CLOCK is not set
969CONFIG_PPC_LIB_RHEAP=y 1013CONFIG_PPC_LIB_RHEAP=y
diff --git a/arch/powerpc/configs/83xx/mpc8313_rdb_defconfig b/arch/powerpc/configs/83xx/mpc8313_rdb_defconfig
index 86df19f041a4..2f2d98558e44 100644
--- a/arch/powerpc/configs/83xx/mpc8313_rdb_defconfig
+++ b/arch/powerpc/configs/83xx/mpc8313_rdb_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:22 2009 4# Wed Jan 6 09:24:15 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
185 215
186# 216#
@@ -259,6 +289,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
292CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +306,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 309# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -404,9 +433,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
404# CONFIG_AF_RXRPC is not set 433# CONFIG_AF_RXRPC is not set
405CONFIG_WIRELESS=y 434CONFIG_WIRELESS=y
406# CONFIG_CFG80211 is not set 435# CONFIG_CFG80211 is not set
407CONFIG_CFG80211_DEFAULT_PS_VALUE=0
408CONFIG_WIRELESS_OLD_REGULATORY=y
409# CONFIG_WIRELESS_EXT is not set
410# CONFIG_LIB80211 is not set 436# CONFIG_LIB80211 is not set
411 437
412# 438#
@@ -544,6 +570,10 @@ CONFIG_BLK_DEV=y
544# CONFIG_BLK_DEV_COW_COMMON is not set 570# CONFIG_BLK_DEV_COW_COMMON is not set
545CONFIG_BLK_DEV_LOOP=y 571CONFIG_BLK_DEV_LOOP=y
546# CONFIG_BLK_DEV_CRYPTOLOOP is not set 572# CONFIG_BLK_DEV_CRYPTOLOOP is not set
573
574#
575# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
576#
547# CONFIG_BLK_DEV_NBD is not set 577# CONFIG_BLK_DEV_NBD is not set
548# CONFIG_BLK_DEV_SX8 is not set 578# CONFIG_BLK_DEV_SX8 is not set
549# CONFIG_BLK_DEV_UB is not set 579# CONFIG_BLK_DEV_UB is not set
@@ -555,6 +585,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
555# CONFIG_ATA_OVER_ETH is not set 585# CONFIG_ATA_OVER_ETH is not set
556# CONFIG_BLK_DEV_HD is not set 586# CONFIG_BLK_DEV_HD is not set
557CONFIG_MISC_DEVICES=y 587CONFIG_MISC_DEVICES=y
588# CONFIG_AD525X_DPOT is not set
558# CONFIG_PHANTOM is not set 589# CONFIG_PHANTOM is not set
559# CONFIG_SGI_IOC4 is not set 590# CONFIG_SGI_IOC4 is not set
560# CONFIG_TIFM_CORE is not set 591# CONFIG_TIFM_CORE is not set
@@ -562,6 +593,8 @@ CONFIG_MISC_DEVICES=y
562# CONFIG_ENCLOSURE_SERVICES is not set 593# CONFIG_ENCLOSURE_SERVICES is not set
563# CONFIG_HP_ILO is not set 594# CONFIG_HP_ILO is not set
564# CONFIG_ISL29003 is not set 595# CONFIG_ISL29003 is not set
596# CONFIG_DS1682 is not set
597# CONFIG_TI_DAC7512 is not set
565# CONFIG_C2PORT is not set 598# CONFIG_C2PORT is not set
566 599
567# 600#
@@ -615,7 +648,9 @@ CONFIG_SCSI_LOWLEVEL=y
615# CONFIG_SCSI_BNX2_ISCSI is not set 648# CONFIG_SCSI_BNX2_ISCSI is not set
616# CONFIG_BE2ISCSI is not set 649# CONFIG_BE2ISCSI is not set
617# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 650# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
651# CONFIG_SCSI_HPSA is not set
618# CONFIG_SCSI_3W_9XXX is not set 652# CONFIG_SCSI_3W_9XXX is not set
653# CONFIG_SCSI_3W_SAS is not set
619# CONFIG_SCSI_ACARD is not set 654# CONFIG_SCSI_ACARD is not set
620# CONFIG_SCSI_AACRAID is not set 655# CONFIG_SCSI_AACRAID is not set
621# CONFIG_SCSI_AIC7XXX is not set 656# CONFIG_SCSI_AIC7XXX is not set
@@ -653,6 +688,7 @@ CONFIG_SCSI_LOWLEVEL=y
653# CONFIG_SCSI_NSP32 is not set 688# CONFIG_SCSI_NSP32 is not set
654# CONFIG_SCSI_DEBUG is not set 689# CONFIG_SCSI_DEBUG is not set
655# CONFIG_SCSI_PMCRAID is not set 690# CONFIG_SCSI_PMCRAID is not set
691# CONFIG_SCSI_PM8001 is not set
656# CONFIG_SCSI_SRP is not set 692# CONFIG_SCSI_SRP is not set
657# CONFIG_SCSI_BFA_FC is not set 693# CONFIG_SCSI_BFA_FC is not set
658# CONFIG_SCSI_DH is not set 694# CONFIG_SCSI_DH is not set
@@ -680,7 +716,7 @@ CONFIG_MD_RAID1=y
680# 716#
681 717
682# 718#
683# See the help texts for more information. 719# The newer stack is recommended.
684# 720#
685# CONFIG_FIREWIRE is not set 721# CONFIG_FIREWIRE is not set
686# CONFIG_IEEE1394 is not set 722# CONFIG_IEEE1394 is not set
@@ -805,8 +841,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
805# CONFIG_BE2NET is not set 841# CONFIG_BE2NET is not set
806# CONFIG_TR is not set 842# CONFIG_TR is not set
807CONFIG_WLAN=y 843CONFIG_WLAN=y
808# CONFIG_WLAN_PRE80211 is not set 844# CONFIG_AIRO is not set
809# CONFIG_WLAN_80211 is not set 845# CONFIG_ATMEL is not set
846# CONFIG_PRISM54 is not set
847# CONFIG_USB_ZD1201 is not set
848# CONFIG_HOSTAP is not set
810 849
811# 850#
812# Enable WiMAX (Networking options) to see the WiMAX drivers 851# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -829,6 +868,7 @@ CONFIG_WLAN=y
829# CONFIG_NETCONSOLE is not set 868# CONFIG_NETCONSOLE is not set
830# CONFIG_NETPOLL is not set 869# CONFIG_NETPOLL is not set
831# CONFIG_NET_POLL_CONTROLLER is not set 870# CONFIG_NET_POLL_CONTROLLER is not set
871# CONFIG_VMXNET3 is not set
832# CONFIG_ISDN is not set 872# CONFIG_ISDN is not set
833# CONFIG_PHONE is not set 873# CONFIG_PHONE is not set
834 874
@@ -838,6 +878,7 @@ CONFIG_WLAN=y
838CONFIG_INPUT=y 878CONFIG_INPUT=y
839# CONFIG_INPUT_FF_MEMLESS is not set 879# CONFIG_INPUT_FF_MEMLESS is not set
840# CONFIG_INPUT_POLLDEV is not set 880# CONFIG_INPUT_POLLDEV is not set
881# CONFIG_INPUT_SPARSEKMAP is not set
841 882
842# 883#
843# Userland interfaces 884# Userland interfaces
@@ -890,6 +931,7 @@ CONFIG_SERIAL_CORE=y
890CONFIG_SERIAL_CORE_CONSOLE=y 931CONFIG_SERIAL_CORE_CONSOLE=y
891# CONFIG_SERIAL_JSM is not set 932# CONFIG_SERIAL_JSM is not set
892# CONFIG_SERIAL_OF_PLATFORM is not set 933# CONFIG_SERIAL_OF_PLATFORM is not set
934# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
893CONFIG_UNIX98_PTYS=y 935CONFIG_UNIX98_PTYS=y
894# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 936# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
895CONFIG_LEGACY_PTYS=y 937CONFIG_LEGACY_PTYS=y
@@ -947,11 +989,6 @@ CONFIG_I2C_MPC=y
947# CONFIG_I2C_TINY_USB is not set 989# CONFIG_I2C_TINY_USB is not set
948 990
949# 991#
950# Graphics adapter I2C/DDC channel drivers
951#
952# CONFIG_I2C_VOODOO3 is not set
953
954#
955# Other I2C/SMBus bus drivers 992# Other I2C/SMBus bus drivers
956# 993#
957# CONFIG_I2C_PCA_PLATFORM is not set 994# CONFIG_I2C_PCA_PLATFORM is not set
@@ -960,7 +997,6 @@ CONFIG_I2C_MPC=y
960# 997#
961# Miscellaneous I2C Chip support 998# Miscellaneous I2C Chip support
962# 999#
963# CONFIG_DS1682 is not set
964# CONFIG_SENSORS_TSL2550 is not set 1000# CONFIG_SENSORS_TSL2550 is not set
965# CONFIG_I2C_DEBUG_CORE is not set 1001# CONFIG_I2C_DEBUG_CORE is not set
966# CONFIG_I2C_DEBUG_ALGO is not set 1002# CONFIG_I2C_DEBUG_ALGO is not set
@@ -975,6 +1011,8 @@ CONFIG_SPI_MASTER=y
975# 1011#
976CONFIG_SPI_BITBANG=y 1012CONFIG_SPI_BITBANG=y
977# CONFIG_SPI_MPC8xxx is not set 1013# CONFIG_SPI_MPC8xxx is not set
1014# CONFIG_SPI_XILINX is not set
1015# CONFIG_SPI_DESIGNWARE is not set
978 1016
979# 1017#
980# SPI Protocol Masters 1018# SPI Protocol Masters
@@ -1022,6 +1060,7 @@ CONFIG_HWMON=y
1022# CONFIG_SENSORS_IT87 is not set 1060# CONFIG_SENSORS_IT87 is not set
1023# CONFIG_SENSORS_LM63 is not set 1061# CONFIG_SENSORS_LM63 is not set
1024# CONFIG_SENSORS_LM70 is not set 1062# CONFIG_SENSORS_LM70 is not set
1063# CONFIG_SENSORS_LM73 is not set
1025# CONFIG_SENSORS_LM75 is not set 1064# CONFIG_SENSORS_LM75 is not set
1026# CONFIG_SENSORS_LM77 is not set 1065# CONFIG_SENSORS_LM77 is not set
1027# CONFIG_SENSORS_LM78 is not set 1066# CONFIG_SENSORS_LM78 is not set
@@ -1062,6 +1101,7 @@ CONFIG_HWMON=y
1062# CONFIG_SENSORS_W83627HF is not set 1101# CONFIG_SENSORS_W83627HF is not set
1063# CONFIG_SENSORS_W83627EHF is not set 1102# CONFIG_SENSORS_W83627EHF is not set
1064# CONFIG_SENSORS_LIS3_SPI is not set 1103# CONFIG_SENSORS_LIS3_SPI is not set
1104# CONFIG_SENSORS_LIS3_I2C is not set
1065# CONFIG_THERMAL is not set 1105# CONFIG_THERMAL is not set
1066CONFIG_WATCHDOG=y 1106CONFIG_WATCHDOG=y
1067# CONFIG_WATCHDOG_NOWAYOUT is not set 1107# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1099,6 +1139,7 @@ CONFIG_SSB_POSSIBLE=y
1099# CONFIG_TWL4030_CORE is not set 1139# CONFIG_TWL4030_CORE is not set
1100# CONFIG_MFD_TMIO is not set 1140# CONFIG_MFD_TMIO is not set
1101# CONFIG_PMIC_DA903X is not set 1141# CONFIG_PMIC_DA903X is not set
1142# CONFIG_PMIC_ADP5520 is not set
1102# CONFIG_MFD_WM8400 is not set 1143# CONFIG_MFD_WM8400 is not set
1103# CONFIG_MFD_WM831X is not set 1144# CONFIG_MFD_WM831X is not set
1104# CONFIG_MFD_WM8350_I2C is not set 1145# CONFIG_MFD_WM8350_I2C is not set
@@ -1106,6 +1147,8 @@ CONFIG_SSB_POSSIBLE=y
1106# CONFIG_MFD_MC13783 is not set 1147# CONFIG_MFD_MC13783 is not set
1107# CONFIG_AB3100_CORE is not set 1148# CONFIG_AB3100_CORE is not set
1108# CONFIG_EZX_PCAP is not set 1149# CONFIG_EZX_PCAP is not set
1150# CONFIG_MFD_88PM8607 is not set
1151# CONFIG_AB4500_CORE is not set
1109# CONFIG_REGULATOR is not set 1152# CONFIG_REGULATOR is not set
1110# CONFIG_MEDIA_SUPPORT is not set 1153# CONFIG_MEDIA_SUPPORT is not set
1111 1154
@@ -1173,6 +1216,7 @@ CONFIG_USB_MON=y
1173CONFIG_USB_EHCI_HCD=y 1216CONFIG_USB_EHCI_HCD=y
1174CONFIG_USB_EHCI_ROOT_HUB_TT=y 1217CONFIG_USB_EHCI_ROOT_HUB_TT=y
1175# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1218# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1219# CONFIG_XPS_USB_HCD_XILINX is not set
1176CONFIG_USB_EHCI_FSL=y 1220CONFIG_USB_EHCI_FSL=y
1177CONFIG_USB_EHCI_HCD_PPC_OF=y 1221CONFIG_USB_EHCI_HCD_PPC_OF=y
1178# CONFIG_USB_OXU210HP_HCD is not set 1222# CONFIG_USB_OXU210HP_HCD is not set
@@ -1287,15 +1331,17 @@ CONFIG_USB_NET2280=y
1287CONFIG_USB_GADGET_DUALSPEED=y 1331CONFIG_USB_GADGET_DUALSPEED=y
1288# CONFIG_USB_ZERO is not set 1332# CONFIG_USB_ZERO is not set
1289# CONFIG_USB_AUDIO is not set 1333# CONFIG_USB_AUDIO is not set
1290CONFIG_USB_ETH=y 1334CONFIG_USB_ETH=m
1291CONFIG_USB_ETH_RNDIS=y 1335CONFIG_USB_ETH_RNDIS=y
1292# CONFIG_USB_ETH_EEM is not set 1336# CONFIG_USB_ETH_EEM is not set
1293# CONFIG_USB_GADGETFS is not set 1337# CONFIG_USB_GADGETFS is not set
1294# CONFIG_USB_FILE_STORAGE is not set 1338# CONFIG_USB_FILE_STORAGE is not set
1339# CONFIG_USB_MASS_STORAGE is not set
1295# CONFIG_USB_G_SERIAL is not set 1340# CONFIG_USB_G_SERIAL is not set
1296# CONFIG_USB_MIDI_GADGET is not set 1341# CONFIG_USB_MIDI_GADGET is not set
1297# CONFIG_USB_G_PRINTER is not set 1342# CONFIG_USB_G_PRINTER is not set
1298# CONFIG_USB_CDC_COMPOSITE is not set 1343# CONFIG_USB_CDC_COMPOSITE is not set
1344# CONFIG_USB_G_MULTI is not set
1299 1345
1300# 1346#
1301# OTG and related infrastructure 1347# OTG and related infrastructure
@@ -1336,6 +1382,7 @@ CONFIG_RTC_DRV_DS1307=y
1336# CONFIG_RTC_DRV_PCF8563 is not set 1382# CONFIG_RTC_DRV_PCF8563 is not set
1337# CONFIG_RTC_DRV_PCF8583 is not set 1383# CONFIG_RTC_DRV_PCF8583 is not set
1338# CONFIG_RTC_DRV_M41T80 is not set 1384# CONFIG_RTC_DRV_M41T80 is not set
1385# CONFIG_RTC_DRV_BQ32K is not set
1339# CONFIG_RTC_DRV_S35390A is not set 1386# CONFIG_RTC_DRV_S35390A is not set
1340# CONFIG_RTC_DRV_FM3130 is not set 1387# CONFIG_RTC_DRV_FM3130 is not set
1341# CONFIG_RTC_DRV_RX8581 is not set 1388# CONFIG_RTC_DRV_RX8581 is not set
@@ -1365,7 +1412,9 @@ CONFIG_RTC_DRV_DS1307=y
1365# CONFIG_RTC_DRV_M48T86 is not set 1412# CONFIG_RTC_DRV_M48T86 is not set
1366# CONFIG_RTC_DRV_M48T35 is not set 1413# CONFIG_RTC_DRV_M48T35 is not set
1367# CONFIG_RTC_DRV_M48T59 is not set 1414# CONFIG_RTC_DRV_M48T59 is not set
1415# CONFIG_RTC_DRV_MSM6242 is not set
1368# CONFIG_RTC_DRV_BQ4802 is not set 1416# CONFIG_RTC_DRV_BQ4802 is not set
1417# CONFIG_RTC_DRV_RP5C01 is not set
1369# CONFIG_RTC_DRV_V3020 is not set 1418# CONFIG_RTC_DRV_V3020 is not set
1370 1419
1371# 1420#
@@ -1676,7 +1725,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1676# CONFIG_KEYS is not set 1725# CONFIG_KEYS is not set
1677# CONFIG_SECURITY is not set 1726# CONFIG_SECURITY is not set
1678# CONFIG_SECURITYFS is not set 1727# CONFIG_SECURITYFS is not set
1679# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1728# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1729# CONFIG_DEFAULT_SECURITY_SMACK is not set
1730# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1731CONFIG_DEFAULT_SECURITY_DAC=y
1732CONFIG_DEFAULT_SECURITY=""
1680CONFIG_CRYPTO=y 1733CONFIG_CRYPTO=y
1681 1734
1682# 1735#
diff --git a/arch/powerpc/configs/83xx/mpc8315_rdb_defconfig b/arch/powerpc/configs/83xx/mpc8315_rdb_defconfig
index 7bf71d577033..633e61194603 100644
--- a/arch/powerpc/configs/83xx/mpc8315_rdb_defconfig
+++ b/arch/powerpc/configs/83xx/mpc8315_rdb_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:23 2009 4# Wed Jan 6 09:24:16 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
185 215
186# 216#
@@ -259,6 +289,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
292CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +306,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 309# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -404,9 +433,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
404# CONFIG_AF_RXRPC is not set 433# CONFIG_AF_RXRPC is not set
405CONFIG_WIRELESS=y 434CONFIG_WIRELESS=y
406# CONFIG_CFG80211 is not set 435# CONFIG_CFG80211 is not set
407CONFIG_CFG80211_DEFAULT_PS_VALUE=0
408CONFIG_WIRELESS_OLD_REGULATORY=y
409# CONFIG_WIRELESS_EXT is not set
410# CONFIG_LIB80211 is not set 436# CONFIG_LIB80211 is not set
411 437
412# 438#
@@ -544,6 +570,10 @@ CONFIG_BLK_DEV=y
544# CONFIG_BLK_DEV_COW_COMMON is not set 570# CONFIG_BLK_DEV_COW_COMMON is not set
545CONFIG_BLK_DEV_LOOP=y 571CONFIG_BLK_DEV_LOOP=y
546# CONFIG_BLK_DEV_CRYPTOLOOP is not set 572# CONFIG_BLK_DEV_CRYPTOLOOP is not set
573
574#
575# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
576#
547# CONFIG_BLK_DEV_NBD is not set 577# CONFIG_BLK_DEV_NBD is not set
548# CONFIG_BLK_DEV_SX8 is not set 578# CONFIG_BLK_DEV_SX8 is not set
549# CONFIG_BLK_DEV_UB is not set 579# CONFIG_BLK_DEV_UB is not set
@@ -555,6 +585,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
555# CONFIG_ATA_OVER_ETH is not set 585# CONFIG_ATA_OVER_ETH is not set
556# CONFIG_BLK_DEV_HD is not set 586# CONFIG_BLK_DEV_HD is not set
557CONFIG_MISC_DEVICES=y 587CONFIG_MISC_DEVICES=y
588# CONFIG_AD525X_DPOT is not set
558# CONFIG_PHANTOM is not set 589# CONFIG_PHANTOM is not set
559# CONFIG_SGI_IOC4 is not set 590# CONFIG_SGI_IOC4 is not set
560# CONFIG_TIFM_CORE is not set 591# CONFIG_TIFM_CORE is not set
@@ -562,6 +593,8 @@ CONFIG_MISC_DEVICES=y
562# CONFIG_ENCLOSURE_SERVICES is not set 593# CONFIG_ENCLOSURE_SERVICES is not set
563# CONFIG_HP_ILO is not set 594# CONFIG_HP_ILO is not set
564# CONFIG_ISL29003 is not set 595# CONFIG_ISL29003 is not set
596# CONFIG_DS1682 is not set
597# CONFIG_TI_DAC7512 is not set
565# CONFIG_C2PORT is not set 598# CONFIG_C2PORT is not set
566 599
567# 600#
@@ -615,7 +648,9 @@ CONFIG_SCSI_LOWLEVEL=y
615# CONFIG_SCSI_BNX2_ISCSI is not set 648# CONFIG_SCSI_BNX2_ISCSI is not set
616# CONFIG_BE2ISCSI is not set 649# CONFIG_BE2ISCSI is not set
617# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 650# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
651# CONFIG_SCSI_HPSA is not set
618# CONFIG_SCSI_3W_9XXX is not set 652# CONFIG_SCSI_3W_9XXX is not set
653# CONFIG_SCSI_3W_SAS is not set
619# CONFIG_SCSI_ACARD is not set 654# CONFIG_SCSI_ACARD is not set
620# CONFIG_SCSI_AACRAID is not set 655# CONFIG_SCSI_AACRAID is not set
621# CONFIG_SCSI_AIC7XXX is not set 656# CONFIG_SCSI_AIC7XXX is not set
@@ -654,6 +689,7 @@ CONFIG_SCSI_LOWLEVEL=y
654# CONFIG_SCSI_NSP32 is not set 689# CONFIG_SCSI_NSP32 is not set
655# CONFIG_SCSI_DEBUG is not set 690# CONFIG_SCSI_DEBUG is not set
656# CONFIG_SCSI_PMCRAID is not set 691# CONFIG_SCSI_PMCRAID is not set
692# CONFIG_SCSI_PM8001 is not set
657# CONFIG_SCSI_SRP is not set 693# CONFIG_SCSI_SRP is not set
658# CONFIG_SCSI_BFA_FC is not set 694# CONFIG_SCSI_BFA_FC is not set
659# CONFIG_SCSI_DH is not set 695# CONFIG_SCSI_DH is not set
@@ -709,15 +745,16 @@ CONFIG_ATA_SFF=y
709# CONFIG_PATA_NS87415 is not set 745# CONFIG_PATA_NS87415 is not set
710# CONFIG_PATA_OPTI is not set 746# CONFIG_PATA_OPTI is not set
711# CONFIG_PATA_OPTIDMA is not set 747# CONFIG_PATA_OPTIDMA is not set
748# CONFIG_PATA_PDC2027X is not set
712# CONFIG_PATA_PDC_OLD is not set 749# CONFIG_PATA_PDC_OLD is not set
713# CONFIG_PATA_RADISYS is not set 750# CONFIG_PATA_RADISYS is not set
714# CONFIG_PATA_RDC is not set 751# CONFIG_PATA_RDC is not set
715# CONFIG_PATA_RZ1000 is not set 752# CONFIG_PATA_RZ1000 is not set
716# CONFIG_PATA_SC1200 is not set 753# CONFIG_PATA_SC1200 is not set
717# CONFIG_PATA_SERVERWORKS is not set 754# CONFIG_PATA_SERVERWORKS is not set
718# CONFIG_PATA_PDC2027X is not set
719# CONFIG_PATA_SIL680 is not set 755# CONFIG_PATA_SIL680 is not set
720# CONFIG_PATA_SIS is not set 756# CONFIG_PATA_SIS is not set
757# CONFIG_PATA_TOSHIBA is not set
721# CONFIG_PATA_VIA is not set 758# CONFIG_PATA_VIA is not set
722# CONFIG_PATA_WINBOND is not set 759# CONFIG_PATA_WINBOND is not set
723# CONFIG_PATA_PLATFORM is not set 760# CONFIG_PATA_PLATFORM is not set
@@ -744,7 +781,7 @@ CONFIG_MD_RAID1=y
744# 781#
745 782
746# 783#
747# See the help texts for more information. 784# The newer stack is recommended.
748# 785#
749# CONFIG_FIREWIRE is not set 786# CONFIG_FIREWIRE is not set
750# CONFIG_IEEE1394 is not set 787# CONFIG_IEEE1394 is not set
@@ -869,8 +906,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
869# CONFIG_BE2NET is not set 906# CONFIG_BE2NET is not set
870# CONFIG_TR is not set 907# CONFIG_TR is not set
871CONFIG_WLAN=y 908CONFIG_WLAN=y
872# CONFIG_WLAN_PRE80211 is not set 909# CONFIG_AIRO is not set
873# CONFIG_WLAN_80211 is not set 910# CONFIG_ATMEL is not set
911# CONFIG_PRISM54 is not set
912# CONFIG_USB_ZD1201 is not set
913# CONFIG_HOSTAP is not set
874 914
875# 915#
876# Enable WiMAX (Networking options) to see the WiMAX drivers 916# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -893,6 +933,7 @@ CONFIG_WLAN=y
893# CONFIG_NETCONSOLE is not set 933# CONFIG_NETCONSOLE is not set
894# CONFIG_NETPOLL is not set 934# CONFIG_NETPOLL is not set
895# CONFIG_NET_POLL_CONTROLLER is not set 935# CONFIG_NET_POLL_CONTROLLER is not set
936# CONFIG_VMXNET3 is not set
896# CONFIG_ISDN is not set 937# CONFIG_ISDN is not set
897# CONFIG_PHONE is not set 938# CONFIG_PHONE is not set
898 939
@@ -902,6 +943,7 @@ CONFIG_WLAN=y
902CONFIG_INPUT=y 943CONFIG_INPUT=y
903# CONFIG_INPUT_FF_MEMLESS is not set 944# CONFIG_INPUT_FF_MEMLESS is not set
904# CONFIG_INPUT_POLLDEV is not set 945# CONFIG_INPUT_POLLDEV is not set
946# CONFIG_INPUT_SPARSEKMAP is not set
905 947
906# 948#
907# Userland interfaces 949# Userland interfaces
@@ -954,6 +996,7 @@ CONFIG_SERIAL_CORE=y
954CONFIG_SERIAL_CORE_CONSOLE=y 996CONFIG_SERIAL_CORE_CONSOLE=y
955# CONFIG_SERIAL_JSM is not set 997# CONFIG_SERIAL_JSM is not set
956# CONFIG_SERIAL_OF_PLATFORM is not set 998# CONFIG_SERIAL_OF_PLATFORM is not set
999# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
957CONFIG_UNIX98_PTYS=y 1000CONFIG_UNIX98_PTYS=y
958# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1001# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
959CONFIG_LEGACY_PTYS=y 1002CONFIG_LEGACY_PTYS=y
@@ -1011,11 +1054,6 @@ CONFIG_I2C_MPC=y
1011# CONFIG_I2C_TINY_USB is not set 1054# CONFIG_I2C_TINY_USB is not set
1012 1055
1013# 1056#
1014# Graphics adapter I2C/DDC channel drivers
1015#
1016# CONFIG_I2C_VOODOO3 is not set
1017
1018#
1019# Other I2C/SMBus bus drivers 1057# Other I2C/SMBus bus drivers
1020# 1058#
1021# CONFIG_I2C_PCA_PLATFORM is not set 1059# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1024,7 +1062,6 @@ CONFIG_I2C_MPC=y
1024# 1062#
1025# Miscellaneous I2C Chip support 1063# Miscellaneous I2C Chip support
1026# 1064#
1027# CONFIG_DS1682 is not set
1028# CONFIG_SENSORS_TSL2550 is not set 1065# CONFIG_SENSORS_TSL2550 is not set
1029# CONFIG_I2C_DEBUG_CORE is not set 1066# CONFIG_I2C_DEBUG_CORE is not set
1030# CONFIG_I2C_DEBUG_ALGO is not set 1067# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1039,6 +1076,8 @@ CONFIG_SPI_MASTER=y
1039# 1076#
1040CONFIG_SPI_BITBANG=y 1077CONFIG_SPI_BITBANG=y
1041# CONFIG_SPI_MPC8xxx is not set 1078# CONFIG_SPI_MPC8xxx is not set
1079# CONFIG_SPI_XILINX is not set
1080# CONFIG_SPI_DESIGNWARE is not set
1042 1081
1043# 1082#
1044# SPI Protocol Masters 1083# SPI Protocol Masters
@@ -1086,6 +1125,7 @@ CONFIG_HWMON=y
1086# CONFIG_SENSORS_IT87 is not set 1125# CONFIG_SENSORS_IT87 is not set
1087# CONFIG_SENSORS_LM63 is not set 1126# CONFIG_SENSORS_LM63 is not set
1088# CONFIG_SENSORS_LM70 is not set 1127# CONFIG_SENSORS_LM70 is not set
1128# CONFIG_SENSORS_LM73 is not set
1089# CONFIG_SENSORS_LM75 is not set 1129# CONFIG_SENSORS_LM75 is not set
1090# CONFIG_SENSORS_LM77 is not set 1130# CONFIG_SENSORS_LM77 is not set
1091# CONFIG_SENSORS_LM78 is not set 1131# CONFIG_SENSORS_LM78 is not set
@@ -1126,6 +1166,7 @@ CONFIG_HWMON=y
1126# CONFIG_SENSORS_W83627HF is not set 1166# CONFIG_SENSORS_W83627HF is not set
1127# CONFIG_SENSORS_W83627EHF is not set 1167# CONFIG_SENSORS_W83627EHF is not set
1128# CONFIG_SENSORS_LIS3_SPI is not set 1168# CONFIG_SENSORS_LIS3_SPI is not set
1169# CONFIG_SENSORS_LIS3_I2C is not set
1129# CONFIG_THERMAL is not set 1170# CONFIG_THERMAL is not set
1130CONFIG_WATCHDOG=y 1171CONFIG_WATCHDOG=y
1131# CONFIG_WATCHDOG_NOWAYOUT is not set 1172# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1163,6 +1204,7 @@ CONFIG_SSB_POSSIBLE=y
1163# CONFIG_TWL4030_CORE is not set 1204# CONFIG_TWL4030_CORE is not set
1164# CONFIG_MFD_TMIO is not set 1205# CONFIG_MFD_TMIO is not set
1165# CONFIG_PMIC_DA903X is not set 1206# CONFIG_PMIC_DA903X is not set
1207# CONFIG_PMIC_ADP5520 is not set
1166# CONFIG_MFD_WM8400 is not set 1208# CONFIG_MFD_WM8400 is not set
1167# CONFIG_MFD_WM831X is not set 1209# CONFIG_MFD_WM831X is not set
1168# CONFIG_MFD_WM8350_I2C is not set 1210# CONFIG_MFD_WM8350_I2C is not set
@@ -1170,6 +1212,8 @@ CONFIG_SSB_POSSIBLE=y
1170# CONFIG_MFD_MC13783 is not set 1212# CONFIG_MFD_MC13783 is not set
1171# CONFIG_AB3100_CORE is not set 1213# CONFIG_AB3100_CORE is not set
1172# CONFIG_EZX_PCAP is not set 1214# CONFIG_EZX_PCAP is not set
1215# CONFIG_MFD_88PM8607 is not set
1216# CONFIG_AB4500_CORE is not set
1173# CONFIG_REGULATOR is not set 1217# CONFIG_REGULATOR is not set
1174# CONFIG_MEDIA_SUPPORT is not set 1218# CONFIG_MEDIA_SUPPORT is not set
1175 1219
@@ -1237,6 +1281,7 @@ CONFIG_USB_MON=y
1237CONFIG_USB_EHCI_HCD=y 1281CONFIG_USB_EHCI_HCD=y
1238CONFIG_USB_EHCI_ROOT_HUB_TT=y 1282CONFIG_USB_EHCI_ROOT_HUB_TT=y
1239# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1283# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1284# CONFIG_XPS_USB_HCD_XILINX is not set
1240CONFIG_USB_EHCI_FSL=y 1285CONFIG_USB_EHCI_FSL=y
1241CONFIG_USB_EHCI_HCD_PPC_OF=y 1286CONFIG_USB_EHCI_HCD_PPC_OF=y
1242# CONFIG_USB_OXU210HP_HCD is not set 1287# CONFIG_USB_OXU210HP_HCD is not set
@@ -1351,15 +1396,17 @@ CONFIG_USB_NET2280=y
1351CONFIG_USB_GADGET_DUALSPEED=y 1396CONFIG_USB_GADGET_DUALSPEED=y
1352# CONFIG_USB_ZERO is not set 1397# CONFIG_USB_ZERO is not set
1353# CONFIG_USB_AUDIO is not set 1398# CONFIG_USB_AUDIO is not set
1354CONFIG_USB_ETH=y 1399CONFIG_USB_ETH=m
1355CONFIG_USB_ETH_RNDIS=y 1400CONFIG_USB_ETH_RNDIS=y
1356# CONFIG_USB_ETH_EEM is not set 1401# CONFIG_USB_ETH_EEM is not set
1357# CONFIG_USB_GADGETFS is not set 1402# CONFIG_USB_GADGETFS is not set
1358# CONFIG_USB_FILE_STORAGE is not set 1403# CONFIG_USB_FILE_STORAGE is not set
1404# CONFIG_USB_MASS_STORAGE is not set
1359# CONFIG_USB_G_SERIAL is not set 1405# CONFIG_USB_G_SERIAL is not set
1360# CONFIG_USB_MIDI_GADGET is not set 1406# CONFIG_USB_MIDI_GADGET is not set
1361# CONFIG_USB_G_PRINTER is not set 1407# CONFIG_USB_G_PRINTER is not set
1362# CONFIG_USB_CDC_COMPOSITE is not set 1408# CONFIG_USB_CDC_COMPOSITE is not set
1409# CONFIG_USB_G_MULTI is not set
1363 1410
1364# 1411#
1365# OTG and related infrastructure 1412# OTG and related infrastructure
@@ -1400,6 +1447,7 @@ CONFIG_RTC_DRV_DS1307=y
1400# CONFIG_RTC_DRV_PCF8563 is not set 1447# CONFIG_RTC_DRV_PCF8563 is not set
1401# CONFIG_RTC_DRV_PCF8583 is not set 1448# CONFIG_RTC_DRV_PCF8583 is not set
1402# CONFIG_RTC_DRV_M41T80 is not set 1449# CONFIG_RTC_DRV_M41T80 is not set
1450# CONFIG_RTC_DRV_BQ32K is not set
1403# CONFIG_RTC_DRV_S35390A is not set 1451# CONFIG_RTC_DRV_S35390A is not set
1404# CONFIG_RTC_DRV_FM3130 is not set 1452# CONFIG_RTC_DRV_FM3130 is not set
1405# CONFIG_RTC_DRV_RX8581 is not set 1453# CONFIG_RTC_DRV_RX8581 is not set
@@ -1429,7 +1477,9 @@ CONFIG_RTC_DRV_DS1307=y
1429# CONFIG_RTC_DRV_M48T86 is not set 1477# CONFIG_RTC_DRV_M48T86 is not set
1430# CONFIG_RTC_DRV_M48T35 is not set 1478# CONFIG_RTC_DRV_M48T35 is not set
1431# CONFIG_RTC_DRV_M48T59 is not set 1479# CONFIG_RTC_DRV_M48T59 is not set
1480# CONFIG_RTC_DRV_MSM6242 is not set
1432# CONFIG_RTC_DRV_BQ4802 is not set 1481# CONFIG_RTC_DRV_BQ4802 is not set
1482# CONFIG_RTC_DRV_RP5C01 is not set
1433# CONFIG_RTC_DRV_V3020 is not set 1483# CONFIG_RTC_DRV_V3020 is not set
1434 1484
1435# 1485#
@@ -1740,7 +1790,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1740# CONFIG_KEYS is not set 1790# CONFIG_KEYS is not set
1741# CONFIG_SECURITY is not set 1791# CONFIG_SECURITY is not set
1742# CONFIG_SECURITYFS is not set 1792# CONFIG_SECURITYFS is not set
1743# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1793# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1794# CONFIG_DEFAULT_SECURITY_SMACK is not set
1795# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1796CONFIG_DEFAULT_SECURITY_DAC=y
1797CONFIG_DEFAULT_SECURITY=""
1744CONFIG_CRYPTO=y 1798CONFIG_CRYPTO=y
1745 1799
1746# 1800#
diff --git a/arch/powerpc/configs/83xx/mpc832x_mds_defconfig b/arch/powerpc/configs/83xx/mpc832x_mds_defconfig
index 7def83518a6c..0b4262bd4917 100644
--- a/arch/powerpc/configs/83xx/mpc832x_mds_defconfig
+++ b/arch/powerpc/configs/83xx/mpc832x_mds_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:24 2009 4# Wed Jan 6 09:24:17 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
185 215
186# 216#
@@ -260,6 +290,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
260CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 290CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
261# CONFIG_KEXEC is not set 291# CONFIG_KEXEC is not set
262# CONFIG_CRASH_DUMP is not set 292# CONFIG_CRASH_DUMP is not set
293CONFIG_SPARSE_IRQ=y
263CONFIG_MAX_ACTIVE_REGIONS=32 294CONFIG_MAX_ACTIVE_REGIONS=32
264CONFIG_ARCH_FLATMEM_ENABLE=y 295CONFIG_ARCH_FLATMEM_ENABLE=y
265CONFIG_ARCH_POPULATES_NODE_MAP=y 296CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -276,8 +307,6 @@ CONFIG_MIGRATION=y
276CONFIG_ZONE_DMA_FLAG=1 307CONFIG_ZONE_DMA_FLAG=1
277CONFIG_BOUNCE=y 308CONFIG_BOUNCE=y
278CONFIG_VIRT_TO_BUS=y 309CONFIG_VIRT_TO_BUS=y
279CONFIG_HAVE_MLOCK=y
280CONFIG_HAVE_MLOCKED_PAGE_BIT=y
281# CONFIG_KSM is not set 310# CONFIG_KSM is not set
282CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 311CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
283CONFIG_PPC_4K_PAGES=y 312CONFIG_PPC_4K_PAGES=y
@@ -404,9 +433,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
404# CONFIG_AF_RXRPC is not set 433# CONFIG_AF_RXRPC is not set
405CONFIG_WIRELESS=y 434CONFIG_WIRELESS=y
406# CONFIG_CFG80211 is not set 435# CONFIG_CFG80211 is not set
407CONFIG_CFG80211_DEFAULT_PS_VALUE=0
408CONFIG_WIRELESS_OLD_REGULATORY=y
409# CONFIG_WIRELESS_EXT is not set
410# CONFIG_LIB80211 is not set 436# CONFIG_LIB80211 is not set
411 437
412# 438#
@@ -444,6 +470,10 @@ CONFIG_BLK_DEV=y
444# CONFIG_BLK_DEV_COW_COMMON is not set 470# CONFIG_BLK_DEV_COW_COMMON is not set
445CONFIG_BLK_DEV_LOOP=y 471CONFIG_BLK_DEV_LOOP=y
446# CONFIG_BLK_DEV_CRYPTOLOOP is not set 472# CONFIG_BLK_DEV_CRYPTOLOOP is not set
473
474#
475# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
476#
447# CONFIG_BLK_DEV_NBD is not set 477# CONFIG_BLK_DEV_NBD is not set
448# CONFIG_BLK_DEV_SX8 is not set 478# CONFIG_BLK_DEV_SX8 is not set
449CONFIG_BLK_DEV_RAM=y 479CONFIG_BLK_DEV_RAM=y
@@ -454,6 +484,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
454# CONFIG_ATA_OVER_ETH is not set 484# CONFIG_ATA_OVER_ETH is not set
455# CONFIG_BLK_DEV_HD is not set 485# CONFIG_BLK_DEV_HD is not set
456CONFIG_MISC_DEVICES=y 486CONFIG_MISC_DEVICES=y
487# CONFIG_AD525X_DPOT is not set
457# CONFIG_PHANTOM is not set 488# CONFIG_PHANTOM is not set
458# CONFIG_SGI_IOC4 is not set 489# CONFIG_SGI_IOC4 is not set
459# CONFIG_TIFM_CORE is not set 490# CONFIG_TIFM_CORE is not set
@@ -461,6 +492,7 @@ CONFIG_MISC_DEVICES=y
461# CONFIG_ENCLOSURE_SERVICES is not set 492# CONFIG_ENCLOSURE_SERVICES is not set
462# CONFIG_HP_ILO is not set 493# CONFIG_HP_ILO is not set
463# CONFIG_ISL29003 is not set 494# CONFIG_ISL29003 is not set
495# CONFIG_DS1682 is not set
464# CONFIG_C2PORT is not set 496# CONFIG_C2PORT is not set
465 497
466# 498#
@@ -513,7 +545,9 @@ CONFIG_SCSI_LOWLEVEL=y
513# CONFIG_SCSI_BNX2_ISCSI is not set 545# CONFIG_SCSI_BNX2_ISCSI is not set
514# CONFIG_BE2ISCSI is not set 546# CONFIG_BE2ISCSI is not set
515# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 547# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
548# CONFIG_SCSI_HPSA is not set
516# CONFIG_SCSI_3W_9XXX is not set 549# CONFIG_SCSI_3W_9XXX is not set
550# CONFIG_SCSI_3W_SAS is not set
517# CONFIG_SCSI_ACARD is not set 551# CONFIG_SCSI_ACARD is not set
518# CONFIG_SCSI_AACRAID is not set 552# CONFIG_SCSI_AACRAID is not set
519# CONFIG_SCSI_AIC7XXX is not set 553# CONFIG_SCSI_AIC7XXX is not set
@@ -551,6 +585,7 @@ CONFIG_SCSI_LOWLEVEL=y
551# CONFIG_SCSI_NSP32 is not set 585# CONFIG_SCSI_NSP32 is not set
552# CONFIG_SCSI_DEBUG is not set 586# CONFIG_SCSI_DEBUG is not set
553# CONFIG_SCSI_PMCRAID is not set 587# CONFIG_SCSI_PMCRAID is not set
588# CONFIG_SCSI_PM8001 is not set
554# CONFIG_SCSI_SRP is not set 589# CONFIG_SCSI_SRP is not set
555# CONFIG_SCSI_BFA_FC is not set 590# CONFIG_SCSI_BFA_FC is not set
556# CONFIG_SCSI_DH is not set 591# CONFIG_SCSI_DH is not set
@@ -568,7 +603,7 @@ CONFIG_SCSI_LOWLEVEL=y
568# 603#
569 604
570# 605#
571# See the help texts for more information. 606# The newer stack is recommended.
572# 607#
573# CONFIG_FIREWIRE is not set 608# CONFIG_FIREWIRE is not set
574# CONFIG_IEEE1394 is not set 609# CONFIG_IEEE1394 is not set
@@ -675,8 +710,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
675# CONFIG_BE2NET is not set 710# CONFIG_BE2NET is not set
676# CONFIG_TR is not set 711# CONFIG_TR is not set
677CONFIG_WLAN=y 712CONFIG_WLAN=y
678# CONFIG_WLAN_PRE80211 is not set 713# CONFIG_AIRO is not set
679# CONFIG_WLAN_80211 is not set 714# CONFIG_ATMEL is not set
715# CONFIG_PRISM54 is not set
716# CONFIG_HOSTAP is not set
680 717
681# 718#
682# Enable WiMAX (Networking options) to see the WiMAX drivers 719# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -690,6 +727,7 @@ CONFIG_WLAN=y
690# CONFIG_NETCONSOLE is not set 727# CONFIG_NETCONSOLE is not set
691# CONFIG_NETPOLL is not set 728# CONFIG_NETPOLL is not set
692# CONFIG_NET_POLL_CONTROLLER is not set 729# CONFIG_NET_POLL_CONTROLLER is not set
730# CONFIG_VMXNET3 is not set
693# CONFIG_ISDN is not set 731# CONFIG_ISDN is not set
694# CONFIG_PHONE is not set 732# CONFIG_PHONE is not set
695 733
@@ -699,6 +737,7 @@ CONFIG_WLAN=y
699CONFIG_INPUT=y 737CONFIG_INPUT=y
700# CONFIG_INPUT_FF_MEMLESS is not set 738# CONFIG_INPUT_FF_MEMLESS is not set
701# CONFIG_INPUT_POLLDEV is not set 739# CONFIG_INPUT_POLLDEV is not set
740# CONFIG_INPUT_SPARSEKMAP is not set
702 741
703# 742#
704# Userland interfaces 743# Userland interfaces
@@ -751,6 +790,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
751# CONFIG_SERIAL_JSM is not set 790# CONFIG_SERIAL_JSM is not set
752# CONFIG_SERIAL_OF_PLATFORM is not set 791# CONFIG_SERIAL_OF_PLATFORM is not set
753# CONFIG_SERIAL_QE is not set 792# CONFIG_SERIAL_QE is not set
793# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
754CONFIG_UNIX98_PTYS=y 794CONFIG_UNIX98_PTYS=y
755# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 795# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
756CONFIG_LEGACY_PTYS=y 796CONFIG_LEGACY_PTYS=y
@@ -807,11 +847,6 @@ CONFIG_I2C_MPC=y
807# CONFIG_I2C_TAOS_EVM is not set 847# CONFIG_I2C_TAOS_EVM is not set
808 848
809# 849#
810# Graphics adapter I2C/DDC channel drivers
811#
812# CONFIG_I2C_VOODOO3 is not set
813
814#
815# Other I2C/SMBus bus drivers 850# Other I2C/SMBus bus drivers
816# 851#
817# CONFIG_I2C_PCA_PLATFORM is not set 852# CONFIG_I2C_PCA_PLATFORM is not set
@@ -820,7 +855,6 @@ CONFIG_I2C_MPC=y
820# 855#
821# Miscellaneous I2C Chip support 856# Miscellaneous I2C Chip support
822# 857#
823# CONFIG_DS1682 is not set
824# CONFIG_SENSORS_TSL2550 is not set 858# CONFIG_SENSORS_TSL2550 is not set
825# CONFIG_I2C_DEBUG_CORE is not set 859# CONFIG_I2C_DEBUG_CORE is not set
826# CONFIG_I2C_DEBUG_ALGO is not set 860# CONFIG_I2C_DEBUG_ALGO is not set
@@ -866,6 +900,7 @@ CONFIG_HWMON=y
866# CONFIG_SENSORS_GL520SM is not set 900# CONFIG_SENSORS_GL520SM is not set
867# CONFIG_SENSORS_IT87 is not set 901# CONFIG_SENSORS_IT87 is not set
868# CONFIG_SENSORS_LM63 is not set 902# CONFIG_SENSORS_LM63 is not set
903# CONFIG_SENSORS_LM73 is not set
869# CONFIG_SENSORS_LM75 is not set 904# CONFIG_SENSORS_LM75 is not set
870# CONFIG_SENSORS_LM77 is not set 905# CONFIG_SENSORS_LM77 is not set
871# CONFIG_SENSORS_LM78 is not set 906# CONFIG_SENSORS_LM78 is not set
@@ -904,6 +939,7 @@ CONFIG_HWMON=y
904# CONFIG_SENSORS_W83L786NG is not set 939# CONFIG_SENSORS_W83L786NG is not set
905# CONFIG_SENSORS_W83627HF is not set 940# CONFIG_SENSORS_W83627HF is not set
906# CONFIG_SENSORS_W83627EHF is not set 941# CONFIG_SENSORS_W83627EHF is not set
942# CONFIG_SENSORS_LIS3_I2C is not set
907# CONFIG_THERMAL is not set 943# CONFIG_THERMAL is not set
908CONFIG_WATCHDOG=y 944CONFIG_WATCHDOG=y
909# CONFIG_WATCHDOG_NOWAYOUT is not set 945# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -936,11 +972,13 @@ CONFIG_SSB_POSSIBLE=y
936# CONFIG_TWL4030_CORE is not set 972# CONFIG_TWL4030_CORE is not set
937# CONFIG_MFD_TMIO is not set 973# CONFIG_MFD_TMIO is not set
938# CONFIG_PMIC_DA903X is not set 974# CONFIG_PMIC_DA903X is not set
975# CONFIG_PMIC_ADP5520 is not set
939# CONFIG_MFD_WM8400 is not set 976# CONFIG_MFD_WM8400 is not set
940# CONFIG_MFD_WM831X is not set 977# CONFIG_MFD_WM831X is not set
941# CONFIG_MFD_WM8350_I2C is not set 978# CONFIG_MFD_WM8350_I2C is not set
942# CONFIG_MFD_PCF50633 is not set 979# CONFIG_MFD_PCF50633 is not set
943# CONFIG_AB3100_CORE is not set 980# CONFIG_AB3100_CORE is not set
981# CONFIG_MFD_88PM8607 is not set
944# CONFIG_REGULATOR is not set 982# CONFIG_REGULATOR is not set
945# CONFIG_MEDIA_SUPPORT is not set 983# CONFIG_MEDIA_SUPPORT is not set
946 984
@@ -1023,6 +1061,7 @@ CONFIG_RTC_DRV_DS1374=y
1023# CONFIG_RTC_DRV_PCF8563 is not set 1061# CONFIG_RTC_DRV_PCF8563 is not set
1024# CONFIG_RTC_DRV_PCF8583 is not set 1062# CONFIG_RTC_DRV_PCF8583 is not set
1025# CONFIG_RTC_DRV_M41T80 is not set 1063# CONFIG_RTC_DRV_M41T80 is not set
1064# CONFIG_RTC_DRV_BQ32K is not set
1026# CONFIG_RTC_DRV_S35390A is not set 1065# CONFIG_RTC_DRV_S35390A is not set
1027# CONFIG_RTC_DRV_FM3130 is not set 1066# CONFIG_RTC_DRV_FM3130 is not set
1028# CONFIG_RTC_DRV_RX8581 is not set 1067# CONFIG_RTC_DRV_RX8581 is not set
@@ -1044,7 +1083,9 @@ CONFIG_RTC_DRV_DS1374=y
1044# CONFIG_RTC_DRV_M48T86 is not set 1083# CONFIG_RTC_DRV_M48T86 is not set
1045# CONFIG_RTC_DRV_M48T35 is not set 1084# CONFIG_RTC_DRV_M48T35 is not set
1046# CONFIG_RTC_DRV_M48T59 is not set 1085# CONFIG_RTC_DRV_M48T59 is not set
1086# CONFIG_RTC_DRV_MSM6242 is not set
1047# CONFIG_RTC_DRV_BQ4802 is not set 1087# CONFIG_RTC_DRV_BQ4802 is not set
1088# CONFIG_RTC_DRV_RP5C01 is not set
1048# CONFIG_RTC_DRV_V3020 is not set 1089# CONFIG_RTC_DRV_V3020 is not set
1049 1090
1050# 1091#
@@ -1220,7 +1261,7 @@ CONFIG_FRAME_WARN=1024
1220# CONFIG_DEBUG_KERNEL is not set 1261# CONFIG_DEBUG_KERNEL is not set
1221# CONFIG_SLUB_DEBUG_ON is not set 1262# CONFIG_SLUB_DEBUG_ON is not set
1222# CONFIG_SLUB_STATS is not set 1263# CONFIG_SLUB_STATS is not set
1223# CONFIG_DEBUG_BUGVERBOSE is not set 1264CONFIG_DEBUG_BUGVERBOSE=y
1224# CONFIG_DEBUG_MEMORY_INIT is not set 1265# CONFIG_DEBUG_MEMORY_INIT is not set
1225# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1266# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1226# CONFIG_LATENCYTOP is not set 1267# CONFIG_LATENCYTOP is not set
@@ -1247,7 +1288,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1247# CONFIG_KEYS is not set 1288# CONFIG_KEYS is not set
1248# CONFIG_SECURITY is not set 1289# CONFIG_SECURITY is not set
1249# CONFIG_SECURITYFS is not set 1290# CONFIG_SECURITYFS is not set
1250# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1291# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1292# CONFIG_DEFAULT_SECURITY_SMACK is not set
1293# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1294CONFIG_DEFAULT_SECURITY_DAC=y
1295CONFIG_DEFAULT_SECURITY=""
1251CONFIG_CRYPTO=y 1296CONFIG_CRYPTO=y
1252 1297
1253# 1298#
diff --git a/arch/powerpc/configs/83xx/mpc832x_rdb_defconfig b/arch/powerpc/configs/83xx/mpc832x_rdb_defconfig
index b398b9b2b635..155af009f7b5 100644
--- a/arch/powerpc/configs/83xx/mpc832x_rdb_defconfig
+++ b/arch/powerpc/configs/83xx/mpc832x_rdb_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:24 2009 4# Wed Jan 6 09:24:18 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
185 215
186# 216#
@@ -260,6 +290,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
260CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 290CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
261# CONFIG_KEXEC is not set 291# CONFIG_KEXEC is not set
262# CONFIG_CRASH_DUMP is not set 292# CONFIG_CRASH_DUMP is not set
293CONFIG_SPARSE_IRQ=y
263CONFIG_MAX_ACTIVE_REGIONS=32 294CONFIG_MAX_ACTIVE_REGIONS=32
264CONFIG_ARCH_FLATMEM_ENABLE=y 295CONFIG_ARCH_FLATMEM_ENABLE=y
265CONFIG_ARCH_POPULATES_NODE_MAP=y 296CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -276,8 +307,6 @@ CONFIG_MIGRATION=y
276CONFIG_ZONE_DMA_FLAG=1 307CONFIG_ZONE_DMA_FLAG=1
277CONFIG_BOUNCE=y 308CONFIG_BOUNCE=y
278CONFIG_VIRT_TO_BUS=y 309CONFIG_VIRT_TO_BUS=y
279CONFIG_HAVE_MLOCK=y
280CONFIG_HAVE_MLOCKED_PAGE_BIT=y
281# CONFIG_KSM is not set 310# CONFIG_KSM is not set
282CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 311CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
283CONFIG_PPC_4K_PAGES=y 312CONFIG_PPC_4K_PAGES=y
@@ -404,9 +433,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
404# CONFIG_AF_RXRPC is not set 433# CONFIG_AF_RXRPC is not set
405CONFIG_WIRELESS=y 434CONFIG_WIRELESS=y
406# CONFIG_CFG80211 is not set 435# CONFIG_CFG80211 is not set
407CONFIG_CFG80211_DEFAULT_PS_VALUE=0
408CONFIG_WIRELESS_OLD_REGULATORY=y
409# CONFIG_WIRELESS_EXT is not set
410# CONFIG_LIB80211 is not set 436# CONFIG_LIB80211 is not set
411 437
412# 438#
@@ -445,6 +471,10 @@ CONFIG_BLK_DEV=y
445# CONFIG_BLK_DEV_COW_COMMON is not set 471# CONFIG_BLK_DEV_COW_COMMON is not set
446CONFIG_BLK_DEV_LOOP=y 472CONFIG_BLK_DEV_LOOP=y
447# CONFIG_BLK_DEV_CRYPTOLOOP is not set 473# CONFIG_BLK_DEV_CRYPTOLOOP is not set
474
475#
476# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
477#
448# CONFIG_BLK_DEV_NBD is not set 478# CONFIG_BLK_DEV_NBD is not set
449# CONFIG_BLK_DEV_SX8 is not set 479# CONFIG_BLK_DEV_SX8 is not set
450# CONFIG_BLK_DEV_UB is not set 480# CONFIG_BLK_DEV_UB is not set
@@ -456,6 +486,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
456# CONFIG_ATA_OVER_ETH is not set 486# CONFIG_ATA_OVER_ETH is not set
457# CONFIG_BLK_DEV_HD is not set 487# CONFIG_BLK_DEV_HD is not set
458CONFIG_MISC_DEVICES=y 488CONFIG_MISC_DEVICES=y
489# CONFIG_AD525X_DPOT is not set
459# CONFIG_PHANTOM is not set 490# CONFIG_PHANTOM is not set
460# CONFIG_SGI_IOC4 is not set 491# CONFIG_SGI_IOC4 is not set
461# CONFIG_TIFM_CORE is not set 492# CONFIG_TIFM_CORE is not set
@@ -463,6 +494,8 @@ CONFIG_MISC_DEVICES=y
463# CONFIG_ENCLOSURE_SERVICES is not set 494# CONFIG_ENCLOSURE_SERVICES is not set
464# CONFIG_HP_ILO is not set 495# CONFIG_HP_ILO is not set
465# CONFIG_ISL29003 is not set 496# CONFIG_ISL29003 is not set
497# CONFIG_DS1682 is not set
498# CONFIG_TI_DAC7512 is not set
466# CONFIG_C2PORT is not set 499# CONFIG_C2PORT is not set
467 500
468# 501#
@@ -474,6 +507,7 @@ CONFIG_MISC_DEVICES=y
474# CONFIG_EEPROM_MAX6875 is not set 507# CONFIG_EEPROM_MAX6875 is not set
475# CONFIG_EEPROM_93CX6 is not set 508# CONFIG_EEPROM_93CX6 is not set
476# CONFIG_CB710_CORE is not set 509# CONFIG_CB710_CORE is not set
510# CONFIG_IWMC3200TOP is not set
477CONFIG_HAVE_IDE=y 511CONFIG_HAVE_IDE=y
478# CONFIG_IDE is not set 512# CONFIG_IDE is not set
479 513
@@ -516,7 +550,9 @@ CONFIG_SCSI_LOWLEVEL=y
516# CONFIG_SCSI_BNX2_ISCSI is not set 550# CONFIG_SCSI_BNX2_ISCSI is not set
517# CONFIG_BE2ISCSI is not set 551# CONFIG_BE2ISCSI is not set
518# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 552# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
553# CONFIG_SCSI_HPSA is not set
519# CONFIG_SCSI_3W_9XXX is not set 554# CONFIG_SCSI_3W_9XXX is not set
555# CONFIG_SCSI_3W_SAS is not set
520# CONFIG_SCSI_ACARD is not set 556# CONFIG_SCSI_ACARD is not set
521# CONFIG_SCSI_AACRAID is not set 557# CONFIG_SCSI_AACRAID is not set
522# CONFIG_SCSI_AIC7XXX is not set 558# CONFIG_SCSI_AIC7XXX is not set
@@ -554,6 +590,7 @@ CONFIG_SCSI_LOWLEVEL=y
554# CONFIG_SCSI_NSP32 is not set 590# CONFIG_SCSI_NSP32 is not set
555# CONFIG_SCSI_DEBUG is not set 591# CONFIG_SCSI_DEBUG is not set
556# CONFIG_SCSI_PMCRAID is not set 592# CONFIG_SCSI_PMCRAID is not set
593# CONFIG_SCSI_PM8001 is not set
557# CONFIG_SCSI_SRP is not set 594# CONFIG_SCSI_SRP is not set
558# CONFIG_SCSI_BFA_FC is not set 595# CONFIG_SCSI_BFA_FC is not set
559# CONFIG_SCSI_DH is not set 596# CONFIG_SCSI_DH is not set
@@ -571,7 +608,7 @@ CONFIG_SCSI_LOWLEVEL=y
571# 608#
572 609
573# 610#
574# See the help texts for more information. 611# The newer stack is recommended.
575# 612#
576# CONFIG_FIREWIRE is not set 613# CONFIG_FIREWIRE is not set
577# CONFIG_IEEE1394 is not set 614# CONFIG_IEEE1394 is not set
@@ -680,8 +717,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
680# CONFIG_BE2NET is not set 717# CONFIG_BE2NET is not set
681# CONFIG_TR is not set 718# CONFIG_TR is not set
682CONFIG_WLAN=y 719CONFIG_WLAN=y
683# CONFIG_WLAN_PRE80211 is not set 720# CONFIG_AIRO is not set
684# CONFIG_WLAN_80211 is not set 721# CONFIG_ATMEL is not set
722# CONFIG_PRISM54 is not set
723# CONFIG_USB_ZD1201 is not set
724# CONFIG_HOSTAP is not set
685 725
686# 726#
687# Enable WiMAX (Networking options) to see the WiMAX drivers 727# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -704,6 +744,7 @@ CONFIG_WLAN=y
704# CONFIG_NETCONSOLE is not set 744# CONFIG_NETCONSOLE is not set
705# CONFIG_NETPOLL is not set 745# CONFIG_NETPOLL is not set
706# CONFIG_NET_POLL_CONTROLLER is not set 746# CONFIG_NET_POLL_CONTROLLER is not set
747# CONFIG_VMXNET3 is not set
707# CONFIG_ISDN is not set 748# CONFIG_ISDN is not set
708# CONFIG_PHONE is not set 749# CONFIG_PHONE is not set
709 750
@@ -713,6 +754,7 @@ CONFIG_WLAN=y
713CONFIG_INPUT=y 754CONFIG_INPUT=y
714# CONFIG_INPUT_FF_MEMLESS is not set 755# CONFIG_INPUT_FF_MEMLESS is not set
715# CONFIG_INPUT_POLLDEV is not set 756# CONFIG_INPUT_POLLDEV is not set
757# CONFIG_INPUT_SPARSEKMAP is not set
716 758
717# 759#
718# Userland interfaces 760# Userland interfaces
@@ -766,6 +808,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
766# CONFIG_SERIAL_JSM is not set 808# CONFIG_SERIAL_JSM is not set
767# CONFIG_SERIAL_OF_PLATFORM is not set 809# CONFIG_SERIAL_OF_PLATFORM is not set
768# CONFIG_SERIAL_QE is not set 810# CONFIG_SERIAL_QE is not set
811# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
769CONFIG_UNIX98_PTYS=y 812CONFIG_UNIX98_PTYS=y
770# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 813# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
771CONFIG_LEGACY_PTYS=y 814CONFIG_LEGACY_PTYS=y
@@ -825,11 +868,6 @@ CONFIG_I2C_MPC=y
825# CONFIG_I2C_TINY_USB is not set 868# CONFIG_I2C_TINY_USB is not set
826 869
827# 870#
828# Graphics adapter I2C/DDC channel drivers
829#
830# CONFIG_I2C_VOODOO3 is not set
831
832#
833# Other I2C/SMBus bus drivers 871# Other I2C/SMBus bus drivers
834# 872#
835# CONFIG_I2C_PCA_PLATFORM is not set 873# CONFIG_I2C_PCA_PLATFORM is not set
@@ -838,7 +876,6 @@ CONFIG_I2C_MPC=y
838# 876#
839# Miscellaneous I2C Chip support 877# Miscellaneous I2C Chip support
840# 878#
841# CONFIG_DS1682 is not set
842# CONFIG_SENSORS_TSL2550 is not set 879# CONFIG_SENSORS_TSL2550 is not set
843# CONFIG_I2C_DEBUG_CORE is not set 880# CONFIG_I2C_DEBUG_CORE is not set
844# CONFIG_I2C_DEBUG_ALGO is not set 881# CONFIG_I2C_DEBUG_ALGO is not set
@@ -852,6 +889,8 @@ CONFIG_SPI_MASTER=y
852# 889#
853CONFIG_SPI_BITBANG=y 890CONFIG_SPI_BITBANG=y
854# CONFIG_SPI_MPC8xxx is not set 891# CONFIG_SPI_MPC8xxx is not set
892# CONFIG_SPI_XILINX is not set
893# CONFIG_SPI_DESIGNWARE is not set
855 894
856# 895#
857# SPI Protocol Masters 896# SPI Protocol Masters
@@ -899,6 +938,7 @@ CONFIG_HWMON=y
899# CONFIG_SENSORS_IT87 is not set 938# CONFIG_SENSORS_IT87 is not set
900# CONFIG_SENSORS_LM63 is not set 939# CONFIG_SENSORS_LM63 is not set
901# CONFIG_SENSORS_LM70 is not set 940# CONFIG_SENSORS_LM70 is not set
941# CONFIG_SENSORS_LM73 is not set
902# CONFIG_SENSORS_LM75 is not set 942# CONFIG_SENSORS_LM75 is not set
903# CONFIG_SENSORS_LM77 is not set 943# CONFIG_SENSORS_LM77 is not set
904# CONFIG_SENSORS_LM78 is not set 944# CONFIG_SENSORS_LM78 is not set
@@ -939,6 +979,7 @@ CONFIG_HWMON=y
939# CONFIG_SENSORS_W83627HF is not set 979# CONFIG_SENSORS_W83627HF is not set
940# CONFIG_SENSORS_W83627EHF is not set 980# CONFIG_SENSORS_W83627EHF is not set
941# CONFIG_SENSORS_LIS3_SPI is not set 981# CONFIG_SENSORS_LIS3_SPI is not set
982# CONFIG_SENSORS_LIS3_I2C is not set
942# CONFIG_THERMAL is not set 983# CONFIG_THERMAL is not set
943CONFIG_WATCHDOG=y 984CONFIG_WATCHDOG=y
944# CONFIG_WATCHDOG_NOWAYOUT is not set 985# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -976,6 +1017,7 @@ CONFIG_SSB_POSSIBLE=y
976# CONFIG_TWL4030_CORE is not set 1017# CONFIG_TWL4030_CORE is not set
977# CONFIG_MFD_TMIO is not set 1018# CONFIG_MFD_TMIO is not set
978# CONFIG_PMIC_DA903X is not set 1019# CONFIG_PMIC_DA903X is not set
1020# CONFIG_PMIC_ADP5520 is not set
979# CONFIG_MFD_WM8400 is not set 1021# CONFIG_MFD_WM8400 is not set
980# CONFIG_MFD_WM831X is not set 1022# CONFIG_MFD_WM831X is not set
981# CONFIG_MFD_WM8350_I2C is not set 1023# CONFIG_MFD_WM8350_I2C is not set
@@ -983,6 +1025,8 @@ CONFIG_SSB_POSSIBLE=y
983# CONFIG_MFD_MC13783 is not set 1025# CONFIG_MFD_MC13783 is not set
984# CONFIG_AB3100_CORE is not set 1026# CONFIG_AB3100_CORE is not set
985# CONFIG_EZX_PCAP is not set 1027# CONFIG_EZX_PCAP is not set
1028# CONFIG_MFD_88PM8607 is not set
1029# CONFIG_AB4500_CORE is not set
986# CONFIG_REGULATOR is not set 1030# CONFIG_REGULATOR is not set
987# CONFIG_MEDIA_SUPPORT is not set 1031# CONFIG_MEDIA_SUPPORT is not set
988 1032
@@ -1050,6 +1094,7 @@ CONFIG_USB_MON=y
1050CONFIG_USB_EHCI_HCD=y 1094CONFIG_USB_EHCI_HCD=y
1051# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1095# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1052# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1096# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1097# CONFIG_XPS_USB_HCD_XILINX is not set
1053# CONFIG_USB_EHCI_FSL is not set 1098# CONFIG_USB_EHCI_FSL is not set
1054CONFIG_USB_EHCI_HCD_PPC_OF=y 1099CONFIG_USB_EHCI_HCD_PPC_OF=y
1055# CONFIG_USB_OXU210HP_HCD is not set 1100# CONFIG_USB_OXU210HP_HCD is not set
@@ -1387,7 +1432,7 @@ CONFIG_FRAME_WARN=1024
1387# CONFIG_DEBUG_KERNEL is not set 1432# CONFIG_DEBUG_KERNEL is not set
1388# CONFIG_SLUB_DEBUG_ON is not set 1433# CONFIG_SLUB_DEBUG_ON is not set
1389# CONFIG_SLUB_STATS is not set 1434# CONFIG_SLUB_STATS is not set
1390# CONFIG_DEBUG_BUGVERBOSE is not set 1435CONFIG_DEBUG_BUGVERBOSE=y
1391# CONFIG_DEBUG_MEMORY_INIT is not set 1436# CONFIG_DEBUG_MEMORY_INIT is not set
1392# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1437# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1393# CONFIG_LATENCYTOP is not set 1438# CONFIG_LATENCYTOP is not set
@@ -1414,7 +1459,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1414# CONFIG_KEYS is not set 1459# CONFIG_KEYS is not set
1415# CONFIG_SECURITY is not set 1460# CONFIG_SECURITY is not set
1416# CONFIG_SECURITYFS is not set 1461# CONFIG_SECURITYFS is not set
1417# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1462# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1463# CONFIG_DEFAULT_SECURITY_SMACK is not set
1464# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1465CONFIG_DEFAULT_SECURITY_DAC=y
1466CONFIG_DEFAULT_SECURITY=""
1418CONFIG_CRYPTO=y 1467CONFIG_CRYPTO=y
1419 1468
1420# 1469#
diff --git a/arch/powerpc/configs/83xx/mpc834x_itx_defconfig b/arch/powerpc/configs/83xx/mpc834x_itx_defconfig
index f67317e1934c..ff45f4904488 100644
--- a/arch/powerpc/configs/83xx/mpc834x_itx_defconfig
+++ b/arch/powerpc/configs/83xx/mpc834x_itx_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:25 2009 4# Wed Jan 6 09:24:19 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
185 215
186# 216#
@@ -259,6 +289,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
292CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +306,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 309# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -403,9 +432,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
403# CONFIG_AF_RXRPC is not set 432# CONFIG_AF_RXRPC is not set
404CONFIG_WIRELESS=y 433CONFIG_WIRELESS=y
405# CONFIG_CFG80211 is not set 434# CONFIG_CFG80211 is not set
406CONFIG_CFG80211_DEFAULT_PS_VALUE=0
407CONFIG_WIRELESS_OLD_REGULATORY=y
408# CONFIG_WIRELESS_EXT is not set
409# CONFIG_LIB80211 is not set 435# CONFIG_LIB80211 is not set
410 436
411# 437#
@@ -528,6 +554,10 @@ CONFIG_BLK_DEV=y
528# CONFIG_BLK_DEV_COW_COMMON is not set 554# CONFIG_BLK_DEV_COW_COMMON is not set
529CONFIG_BLK_DEV_LOOP=y 555CONFIG_BLK_DEV_LOOP=y
530# CONFIG_BLK_DEV_CRYPTOLOOP is not set 556# CONFIG_BLK_DEV_CRYPTOLOOP is not set
557
558#
559# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
560#
531# CONFIG_BLK_DEV_NBD is not set 561# CONFIG_BLK_DEV_NBD is not set
532# CONFIG_BLK_DEV_SX8 is not set 562# CONFIG_BLK_DEV_SX8 is not set
533# CONFIG_BLK_DEV_UB is not set 563# CONFIG_BLK_DEV_UB is not set
@@ -539,6 +569,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
539# CONFIG_ATA_OVER_ETH is not set 569# CONFIG_ATA_OVER_ETH is not set
540# CONFIG_BLK_DEV_HD is not set 570# CONFIG_BLK_DEV_HD is not set
541CONFIG_MISC_DEVICES=y 571CONFIG_MISC_DEVICES=y
572# CONFIG_AD525X_DPOT is not set
542# CONFIG_PHANTOM is not set 573# CONFIG_PHANTOM is not set
543# CONFIG_SGI_IOC4 is not set 574# CONFIG_SGI_IOC4 is not set
544# CONFIG_TIFM_CORE is not set 575# CONFIG_TIFM_CORE is not set
@@ -546,6 +577,8 @@ CONFIG_MISC_DEVICES=y
546# CONFIG_ENCLOSURE_SERVICES is not set 577# CONFIG_ENCLOSURE_SERVICES is not set
547# CONFIG_HP_ILO is not set 578# CONFIG_HP_ILO is not set
548# CONFIG_ISL29003 is not set 579# CONFIG_ISL29003 is not set
580# CONFIG_DS1682 is not set
581# CONFIG_TI_DAC7512 is not set
549# CONFIG_C2PORT is not set 582# CONFIG_C2PORT is not set
550 583
551# 584#
@@ -647,7 +680,9 @@ CONFIG_SCSI_LOWLEVEL=y
647# CONFIG_SCSI_BNX2_ISCSI is not set 680# CONFIG_SCSI_BNX2_ISCSI is not set
648# CONFIG_BE2ISCSI is not set 681# CONFIG_BE2ISCSI is not set
649# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 682# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
683# CONFIG_SCSI_HPSA is not set
650# CONFIG_SCSI_3W_9XXX is not set 684# CONFIG_SCSI_3W_9XXX is not set
685# CONFIG_SCSI_3W_SAS is not set
651# CONFIG_SCSI_ACARD is not set 686# CONFIG_SCSI_ACARD is not set
652# CONFIG_SCSI_AACRAID is not set 687# CONFIG_SCSI_AACRAID is not set
653# CONFIG_SCSI_AIC7XXX is not set 688# CONFIG_SCSI_AIC7XXX is not set
@@ -686,6 +721,7 @@ CONFIG_SCSI_LOWLEVEL=y
686# CONFIG_SCSI_NSP32 is not set 721# CONFIG_SCSI_NSP32 is not set
687# CONFIG_SCSI_DEBUG is not set 722# CONFIG_SCSI_DEBUG is not set
688# CONFIG_SCSI_PMCRAID is not set 723# CONFIG_SCSI_PMCRAID is not set
724# CONFIG_SCSI_PM8001 is not set
689# CONFIG_SCSI_SRP is not set 725# CONFIG_SCSI_SRP is not set
690# CONFIG_SCSI_BFA_FC is not set 726# CONFIG_SCSI_BFA_FC is not set
691# CONFIG_SCSI_DH is not set 727# CONFIG_SCSI_DH is not set
@@ -741,15 +777,16 @@ CONFIG_SATA_SIL=y
741# CONFIG_PATA_NS87415 is not set 777# CONFIG_PATA_NS87415 is not set
742# CONFIG_PATA_OPTI is not set 778# CONFIG_PATA_OPTI is not set
743# CONFIG_PATA_OPTIDMA is not set 779# CONFIG_PATA_OPTIDMA is not set
780# CONFIG_PATA_PDC2027X is not set
744# CONFIG_PATA_PDC_OLD is not set 781# CONFIG_PATA_PDC_OLD is not set
745# CONFIG_PATA_RADISYS is not set 782# CONFIG_PATA_RADISYS is not set
746# CONFIG_PATA_RDC is not set 783# CONFIG_PATA_RDC is not set
747# CONFIG_PATA_RZ1000 is not set 784# CONFIG_PATA_RZ1000 is not set
748# CONFIG_PATA_SC1200 is not set 785# CONFIG_PATA_SC1200 is not set
749# CONFIG_PATA_SERVERWORKS is not set 786# CONFIG_PATA_SERVERWORKS is not set
750# CONFIG_PATA_PDC2027X is not set
751# CONFIG_PATA_SIL680 is not set 787# CONFIG_PATA_SIL680 is not set
752# CONFIG_PATA_SIS is not set 788# CONFIG_PATA_SIS is not set
789# CONFIG_PATA_TOSHIBA is not set
753# CONFIG_PATA_VIA is not set 790# CONFIG_PATA_VIA is not set
754# CONFIG_PATA_WINBOND is not set 791# CONFIG_PATA_WINBOND is not set
755CONFIG_PATA_PLATFORM=y 792CONFIG_PATA_PLATFORM=y
@@ -777,7 +814,7 @@ CONFIG_MD_RAID1=y
777# 814#
778 815
779# 816#
780# See the help texts for more information. 817# The newer stack is recommended.
781# 818#
782# CONFIG_FIREWIRE is not set 819# CONFIG_FIREWIRE is not set
783# CONFIG_IEEE1394 is not set 820# CONFIG_IEEE1394 is not set
@@ -860,8 +897,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
860# CONFIG_BE2NET is not set 897# CONFIG_BE2NET is not set
861# CONFIG_TR is not set 898# CONFIG_TR is not set
862CONFIG_WLAN=y 899CONFIG_WLAN=y
863# CONFIG_WLAN_PRE80211 is not set 900# CONFIG_AIRO is not set
864# CONFIG_WLAN_80211 is not set 901# CONFIG_ATMEL is not set
902# CONFIG_PRISM54 is not set
903# CONFIG_USB_ZD1201 is not set
904# CONFIG_HOSTAP is not set
865 905
866# 906#
867# Enable WiMAX (Networking options) to see the WiMAX drivers 907# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -884,6 +924,7 @@ CONFIG_WLAN=y
884# CONFIG_NETCONSOLE is not set 924# CONFIG_NETCONSOLE is not set
885# CONFIG_NETPOLL is not set 925# CONFIG_NETPOLL is not set
886# CONFIG_NET_POLL_CONTROLLER is not set 926# CONFIG_NET_POLL_CONTROLLER is not set
927# CONFIG_VMXNET3 is not set
887# CONFIG_ISDN is not set 928# CONFIG_ISDN is not set
888# CONFIG_PHONE is not set 929# CONFIG_PHONE is not set
889 930
@@ -925,6 +966,7 @@ CONFIG_SERIAL_CORE=y
925CONFIG_SERIAL_CORE_CONSOLE=y 966CONFIG_SERIAL_CORE_CONSOLE=y
926# CONFIG_SERIAL_JSM is not set 967# CONFIG_SERIAL_JSM is not set
927# CONFIG_SERIAL_OF_PLATFORM is not set 968# CONFIG_SERIAL_OF_PLATFORM is not set
969# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
928CONFIG_UNIX98_PTYS=y 970CONFIG_UNIX98_PTYS=y
929# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 971# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
930CONFIG_LEGACY_PTYS=y 972CONFIG_LEGACY_PTYS=y
@@ -982,11 +1024,6 @@ CONFIG_I2C_MPC=y
982# CONFIG_I2C_TINY_USB is not set 1024# CONFIG_I2C_TINY_USB is not set
983 1025
984# 1026#
985# Graphics adapter I2C/DDC channel drivers
986#
987# CONFIG_I2C_VOODOO3 is not set
988
989#
990# Other I2C/SMBus bus drivers 1027# Other I2C/SMBus bus drivers
991# 1028#
992# CONFIG_I2C_PCA_PLATFORM is not set 1029# CONFIG_I2C_PCA_PLATFORM is not set
@@ -995,7 +1032,6 @@ CONFIG_I2C_MPC=y
995# 1032#
996# Miscellaneous I2C Chip support 1033# Miscellaneous I2C Chip support
997# 1034#
998# CONFIG_DS1682 is not set
999# CONFIG_SENSORS_TSL2550 is not set 1035# CONFIG_SENSORS_TSL2550 is not set
1000# CONFIG_I2C_DEBUG_CORE is not set 1036# CONFIG_I2C_DEBUG_CORE is not set
1001# CONFIG_I2C_DEBUG_ALGO is not set 1037# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1009,6 +1045,8 @@ CONFIG_SPI_MASTER=y
1009# 1045#
1010CONFIG_SPI_BITBANG=y 1046CONFIG_SPI_BITBANG=y
1011# CONFIG_SPI_MPC8xxx is not set 1047# CONFIG_SPI_MPC8xxx is not set
1048# CONFIG_SPI_XILINX is not set
1049# CONFIG_SPI_DESIGNWARE is not set
1012 1050
1013# 1051#
1014# SPI Protocol Masters 1052# SPI Protocol Masters
@@ -1062,6 +1100,7 @@ CONFIG_SSB_POSSIBLE=y
1062# CONFIG_TWL4030_CORE is not set 1100# CONFIG_TWL4030_CORE is not set
1063# CONFIG_MFD_TMIO is not set 1101# CONFIG_MFD_TMIO is not set
1064# CONFIG_PMIC_DA903X is not set 1102# CONFIG_PMIC_DA903X is not set
1103# CONFIG_PMIC_ADP5520 is not set
1065# CONFIG_MFD_WM8400 is not set 1104# CONFIG_MFD_WM8400 is not set
1066# CONFIG_MFD_WM831X is not set 1105# CONFIG_MFD_WM831X is not set
1067# CONFIG_MFD_WM8350_I2C is not set 1106# CONFIG_MFD_WM8350_I2C is not set
@@ -1069,6 +1108,8 @@ CONFIG_SSB_POSSIBLE=y
1069# CONFIG_MFD_MC13783 is not set 1108# CONFIG_MFD_MC13783 is not set
1070# CONFIG_AB3100_CORE is not set 1109# CONFIG_AB3100_CORE is not set
1071# CONFIG_EZX_PCAP is not set 1110# CONFIG_EZX_PCAP is not set
1111# CONFIG_MFD_88PM8607 is not set
1112# CONFIG_AB4500_CORE is not set
1072# CONFIG_REGULATOR is not set 1113# CONFIG_REGULATOR is not set
1073# CONFIG_MEDIA_SUPPORT is not set 1114# CONFIG_MEDIA_SUPPORT is not set
1074 1115
@@ -1117,6 +1158,7 @@ CONFIG_USB_MON=y
1117CONFIG_USB_EHCI_HCD=y 1158CONFIG_USB_EHCI_HCD=y
1118CONFIG_USB_EHCI_ROOT_HUB_TT=y 1159CONFIG_USB_EHCI_ROOT_HUB_TT=y
1119# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1160# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1161# CONFIG_XPS_USB_HCD_XILINX is not set
1120CONFIG_USB_EHCI_FSL=y 1162CONFIG_USB_EHCI_FSL=y
1121CONFIG_USB_EHCI_HCD_PPC_OF=y 1163CONFIG_USB_EHCI_HCD_PPC_OF=y
1122# CONFIG_USB_OXU210HP_HCD is not set 1164# CONFIG_USB_OXU210HP_HCD is not set
@@ -1235,6 +1277,7 @@ CONFIG_RTC_DRV_DS1307=y
1235# CONFIG_RTC_DRV_PCF8563 is not set 1277# CONFIG_RTC_DRV_PCF8563 is not set
1236# CONFIG_RTC_DRV_PCF8583 is not set 1278# CONFIG_RTC_DRV_PCF8583 is not set
1237# CONFIG_RTC_DRV_M41T80 is not set 1279# CONFIG_RTC_DRV_M41T80 is not set
1280# CONFIG_RTC_DRV_BQ32K is not set
1238# CONFIG_RTC_DRV_S35390A is not set 1281# CONFIG_RTC_DRV_S35390A is not set
1239# CONFIG_RTC_DRV_FM3130 is not set 1282# CONFIG_RTC_DRV_FM3130 is not set
1240# CONFIG_RTC_DRV_RX8581 is not set 1283# CONFIG_RTC_DRV_RX8581 is not set
@@ -1264,7 +1307,9 @@ CONFIG_RTC_DRV_DS1307=y
1264# CONFIG_RTC_DRV_M48T86 is not set 1307# CONFIG_RTC_DRV_M48T86 is not set
1265# CONFIG_RTC_DRV_M48T35 is not set 1308# CONFIG_RTC_DRV_M48T35 is not set
1266# CONFIG_RTC_DRV_M48T59 is not set 1309# CONFIG_RTC_DRV_M48T59 is not set
1310# CONFIG_RTC_DRV_MSM6242 is not set
1267# CONFIG_RTC_DRV_BQ4802 is not set 1311# CONFIG_RTC_DRV_BQ4802 is not set
1312# CONFIG_RTC_DRV_RP5C01 is not set
1268# CONFIG_RTC_DRV_V3020 is not set 1313# CONFIG_RTC_DRV_V3020 is not set
1269 1314
1270# 1315#
@@ -1485,7 +1530,7 @@ CONFIG_FRAME_WARN=1024
1485# CONFIG_DEBUG_KERNEL is not set 1530# CONFIG_DEBUG_KERNEL is not set
1486# CONFIG_SLUB_DEBUG_ON is not set 1531# CONFIG_SLUB_DEBUG_ON is not set
1487# CONFIG_SLUB_STATS is not set 1532# CONFIG_SLUB_STATS is not set
1488# CONFIG_DEBUG_BUGVERBOSE is not set 1533CONFIG_DEBUG_BUGVERBOSE=y
1489# CONFIG_DEBUG_MEMORY_INIT is not set 1534# CONFIG_DEBUG_MEMORY_INIT is not set
1490# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1535# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1491# CONFIG_LATENCYTOP is not set 1536# CONFIG_LATENCYTOP is not set
@@ -1512,7 +1557,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1512# CONFIG_KEYS is not set 1557# CONFIG_KEYS is not set
1513# CONFIG_SECURITY is not set 1558# CONFIG_SECURITY is not set
1514# CONFIG_SECURITYFS is not set 1559# CONFIG_SECURITYFS is not set
1515# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1560# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1561# CONFIG_DEFAULT_SECURITY_SMACK is not set
1562# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1563CONFIG_DEFAULT_SECURITY_DAC=y
1564CONFIG_DEFAULT_SECURITY=""
1516CONFIG_CRYPTO=y 1565CONFIG_CRYPTO=y
1517 1566
1518# 1567#
diff --git a/arch/powerpc/configs/83xx/mpc834x_itxgp_defconfig b/arch/powerpc/configs/83xx/mpc834x_itxgp_defconfig
index a668110c10f6..28d8ff3e8fca 100644
--- a/arch/powerpc/configs/83xx/mpc834x_itxgp_defconfig
+++ b/arch/powerpc/configs/83xx/mpc834x_itxgp_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:26 2009 4# Wed Jan 6 09:24:20 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
185 215
186# 216#
@@ -259,6 +289,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
292CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +306,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 309# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -403,9 +432,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
403# CONFIG_AF_RXRPC is not set 432# CONFIG_AF_RXRPC is not set
404CONFIG_WIRELESS=y 433CONFIG_WIRELESS=y
405# CONFIG_CFG80211 is not set 434# CONFIG_CFG80211 is not set
406CONFIG_CFG80211_DEFAULT_PS_VALUE=0
407CONFIG_WIRELESS_OLD_REGULATORY=y
408# CONFIG_WIRELESS_EXT is not set
409# CONFIG_LIB80211 is not set 435# CONFIG_LIB80211 is not set
410 436
411# 437#
@@ -528,6 +554,10 @@ CONFIG_BLK_DEV=y
528# CONFIG_BLK_DEV_COW_COMMON is not set 554# CONFIG_BLK_DEV_COW_COMMON is not set
529CONFIG_BLK_DEV_LOOP=y 555CONFIG_BLK_DEV_LOOP=y
530# CONFIG_BLK_DEV_CRYPTOLOOP is not set 556# CONFIG_BLK_DEV_CRYPTOLOOP is not set
557
558#
559# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
560#
531# CONFIG_BLK_DEV_NBD is not set 561# CONFIG_BLK_DEV_NBD is not set
532# CONFIG_BLK_DEV_SX8 is not set 562# CONFIG_BLK_DEV_SX8 is not set
533# CONFIG_BLK_DEV_UB is not set 563# CONFIG_BLK_DEV_UB is not set
@@ -539,6 +569,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
539# CONFIG_ATA_OVER_ETH is not set 569# CONFIG_ATA_OVER_ETH is not set
540# CONFIG_BLK_DEV_HD is not set 570# CONFIG_BLK_DEV_HD is not set
541CONFIG_MISC_DEVICES=y 571CONFIG_MISC_DEVICES=y
572# CONFIG_AD525X_DPOT is not set
542# CONFIG_PHANTOM is not set 573# CONFIG_PHANTOM is not set
543# CONFIG_SGI_IOC4 is not set 574# CONFIG_SGI_IOC4 is not set
544# CONFIG_TIFM_CORE is not set 575# CONFIG_TIFM_CORE is not set
@@ -546,6 +577,8 @@ CONFIG_MISC_DEVICES=y
546# CONFIG_ENCLOSURE_SERVICES is not set 577# CONFIG_ENCLOSURE_SERVICES is not set
547# CONFIG_HP_ILO is not set 578# CONFIG_HP_ILO is not set
548# CONFIG_ISL29003 is not set 579# CONFIG_ISL29003 is not set
580# CONFIG_DS1682 is not set
581# CONFIG_TI_DAC7512 is not set
549# CONFIG_C2PORT is not set 582# CONFIG_C2PORT is not set
550 583
551# 584#
@@ -599,7 +632,9 @@ CONFIG_SCSI_LOWLEVEL=y
599# CONFIG_SCSI_BNX2_ISCSI is not set 632# CONFIG_SCSI_BNX2_ISCSI is not set
600# CONFIG_BE2ISCSI is not set 633# CONFIG_BE2ISCSI is not set
601# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 634# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
635# CONFIG_SCSI_HPSA is not set
602# CONFIG_SCSI_3W_9XXX is not set 636# CONFIG_SCSI_3W_9XXX is not set
637# CONFIG_SCSI_3W_SAS is not set
603# CONFIG_SCSI_ACARD is not set 638# CONFIG_SCSI_ACARD is not set
604# CONFIG_SCSI_AACRAID is not set 639# CONFIG_SCSI_AACRAID is not set
605# CONFIG_SCSI_AIC7XXX is not set 640# CONFIG_SCSI_AIC7XXX is not set
@@ -637,6 +672,7 @@ CONFIG_SCSI_LOWLEVEL=y
637# CONFIG_SCSI_NSP32 is not set 672# CONFIG_SCSI_NSP32 is not set
638# CONFIG_SCSI_DEBUG is not set 673# CONFIG_SCSI_DEBUG is not set
639# CONFIG_SCSI_PMCRAID is not set 674# CONFIG_SCSI_PMCRAID is not set
675# CONFIG_SCSI_PM8001 is not set
640# CONFIG_SCSI_SRP is not set 676# CONFIG_SCSI_SRP is not set
641# CONFIG_SCSI_BFA_FC is not set 677# CONFIG_SCSI_BFA_FC is not set
642# CONFIG_SCSI_DH is not set 678# CONFIG_SCSI_DH is not set
@@ -654,7 +690,7 @@ CONFIG_SCSI_LOWLEVEL=y
654# 690#
655 691
656# 692#
657# See the help texts for more information. 693# The newer stack is recommended.
658# 694#
659# CONFIG_FIREWIRE is not set 695# CONFIG_FIREWIRE is not set
660# CONFIG_IEEE1394 is not set 696# CONFIG_IEEE1394 is not set
@@ -737,8 +773,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
737# CONFIG_BE2NET is not set 773# CONFIG_BE2NET is not set
738# CONFIG_TR is not set 774# CONFIG_TR is not set
739CONFIG_WLAN=y 775CONFIG_WLAN=y
740# CONFIG_WLAN_PRE80211 is not set 776# CONFIG_AIRO is not set
741# CONFIG_WLAN_80211 is not set 777# CONFIG_ATMEL is not set
778# CONFIG_PRISM54 is not set
779# CONFIG_USB_ZD1201 is not set
780# CONFIG_HOSTAP is not set
742 781
743# 782#
744# Enable WiMAX (Networking options) to see the WiMAX drivers 783# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -761,6 +800,7 @@ CONFIG_WLAN=y
761# CONFIG_NETCONSOLE is not set 800# CONFIG_NETCONSOLE is not set
762# CONFIG_NETPOLL is not set 801# CONFIG_NETPOLL is not set
763# CONFIG_NET_POLL_CONTROLLER is not set 802# CONFIG_NET_POLL_CONTROLLER is not set
803# CONFIG_VMXNET3 is not set
764# CONFIG_ISDN is not set 804# CONFIG_ISDN is not set
765# CONFIG_PHONE is not set 805# CONFIG_PHONE is not set
766 806
@@ -802,6 +842,7 @@ CONFIG_SERIAL_CORE=y
802CONFIG_SERIAL_CORE_CONSOLE=y 842CONFIG_SERIAL_CORE_CONSOLE=y
803# CONFIG_SERIAL_JSM is not set 843# CONFIG_SERIAL_JSM is not set
804# CONFIG_SERIAL_OF_PLATFORM is not set 844# CONFIG_SERIAL_OF_PLATFORM is not set
845# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
805CONFIG_UNIX98_PTYS=y 846CONFIG_UNIX98_PTYS=y
806# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 847# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
807CONFIG_LEGACY_PTYS=y 848CONFIG_LEGACY_PTYS=y
@@ -859,11 +900,6 @@ CONFIG_I2C_MPC=y
859# CONFIG_I2C_TINY_USB is not set 900# CONFIG_I2C_TINY_USB is not set
860 901
861# 902#
862# Graphics adapter I2C/DDC channel drivers
863#
864# CONFIG_I2C_VOODOO3 is not set
865
866#
867# Other I2C/SMBus bus drivers 903# Other I2C/SMBus bus drivers
868# 904#
869# CONFIG_I2C_PCA_PLATFORM is not set 905# CONFIG_I2C_PCA_PLATFORM is not set
@@ -872,7 +908,6 @@ CONFIG_I2C_MPC=y
872# 908#
873# Miscellaneous I2C Chip support 909# Miscellaneous I2C Chip support
874# 910#
875# CONFIG_DS1682 is not set
876# CONFIG_SENSORS_TSL2550 is not set 911# CONFIG_SENSORS_TSL2550 is not set
877# CONFIG_I2C_DEBUG_CORE is not set 912# CONFIG_I2C_DEBUG_CORE is not set
878# CONFIG_I2C_DEBUG_ALGO is not set 913# CONFIG_I2C_DEBUG_ALGO is not set
@@ -886,6 +921,8 @@ CONFIG_SPI_MASTER=y
886# 921#
887CONFIG_SPI_BITBANG=y 922CONFIG_SPI_BITBANG=y
888# CONFIG_SPI_MPC8xxx is not set 923# CONFIG_SPI_MPC8xxx is not set
924# CONFIG_SPI_XILINX is not set
925# CONFIG_SPI_DESIGNWARE is not set
889 926
890# 927#
891# SPI Protocol Masters 928# SPI Protocol Masters
@@ -939,6 +976,7 @@ CONFIG_SSB_POSSIBLE=y
939# CONFIG_TWL4030_CORE is not set 976# CONFIG_TWL4030_CORE is not set
940# CONFIG_MFD_TMIO is not set 977# CONFIG_MFD_TMIO is not set
941# CONFIG_PMIC_DA903X is not set 978# CONFIG_PMIC_DA903X is not set
979# CONFIG_PMIC_ADP5520 is not set
942# CONFIG_MFD_WM8400 is not set 980# CONFIG_MFD_WM8400 is not set
943# CONFIG_MFD_WM831X is not set 981# CONFIG_MFD_WM831X is not set
944# CONFIG_MFD_WM8350_I2C is not set 982# CONFIG_MFD_WM8350_I2C is not set
@@ -946,6 +984,8 @@ CONFIG_SSB_POSSIBLE=y
946# CONFIG_MFD_MC13783 is not set 984# CONFIG_MFD_MC13783 is not set
947# CONFIG_AB3100_CORE is not set 985# CONFIG_AB3100_CORE is not set
948# CONFIG_EZX_PCAP is not set 986# CONFIG_EZX_PCAP is not set
987# CONFIG_MFD_88PM8607 is not set
988# CONFIG_AB4500_CORE is not set
949# CONFIG_REGULATOR is not set 989# CONFIG_REGULATOR is not set
950# CONFIG_MEDIA_SUPPORT is not set 990# CONFIG_MEDIA_SUPPORT is not set
951 991
@@ -994,6 +1034,7 @@ CONFIG_USB_MON=y
994CONFIG_USB_EHCI_HCD=y 1034CONFIG_USB_EHCI_HCD=y
995CONFIG_USB_EHCI_ROOT_HUB_TT=y 1035CONFIG_USB_EHCI_ROOT_HUB_TT=y
996# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1036# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1037# CONFIG_XPS_USB_HCD_XILINX is not set
997CONFIG_USB_EHCI_FSL=y 1038CONFIG_USB_EHCI_FSL=y
998CONFIG_USB_EHCI_HCD_PPC_OF=y 1039CONFIG_USB_EHCI_HCD_PPC_OF=y
999# CONFIG_USB_OXU210HP_HCD is not set 1040# CONFIG_USB_OXU210HP_HCD is not set
@@ -1112,6 +1153,7 @@ CONFIG_RTC_DRV_DS1307=y
1112# CONFIG_RTC_DRV_PCF8563 is not set 1153# CONFIG_RTC_DRV_PCF8563 is not set
1113# CONFIG_RTC_DRV_PCF8583 is not set 1154# CONFIG_RTC_DRV_PCF8583 is not set
1114# CONFIG_RTC_DRV_M41T80 is not set 1155# CONFIG_RTC_DRV_M41T80 is not set
1156# CONFIG_RTC_DRV_BQ32K is not set
1115# CONFIG_RTC_DRV_S35390A is not set 1157# CONFIG_RTC_DRV_S35390A is not set
1116# CONFIG_RTC_DRV_FM3130 is not set 1158# CONFIG_RTC_DRV_FM3130 is not set
1117# CONFIG_RTC_DRV_RX8581 is not set 1159# CONFIG_RTC_DRV_RX8581 is not set
@@ -1141,7 +1183,9 @@ CONFIG_RTC_DRV_DS1307=y
1141# CONFIG_RTC_DRV_M48T86 is not set 1183# CONFIG_RTC_DRV_M48T86 is not set
1142# CONFIG_RTC_DRV_M48T35 is not set 1184# CONFIG_RTC_DRV_M48T35 is not set
1143# CONFIG_RTC_DRV_M48T59 is not set 1185# CONFIG_RTC_DRV_M48T59 is not set
1186# CONFIG_RTC_DRV_MSM6242 is not set
1144# CONFIG_RTC_DRV_BQ4802 is not set 1187# CONFIG_RTC_DRV_BQ4802 is not set
1188# CONFIG_RTC_DRV_RP5C01 is not set
1145# CONFIG_RTC_DRV_V3020 is not set 1189# CONFIG_RTC_DRV_V3020 is not set
1146 1190
1147# 1191#
@@ -1362,7 +1406,7 @@ CONFIG_FRAME_WARN=1024
1362# CONFIG_DEBUG_KERNEL is not set 1406# CONFIG_DEBUG_KERNEL is not set
1363# CONFIG_SLUB_DEBUG_ON is not set 1407# CONFIG_SLUB_DEBUG_ON is not set
1364# CONFIG_SLUB_STATS is not set 1408# CONFIG_SLUB_STATS is not set
1365# CONFIG_DEBUG_BUGVERBOSE is not set 1409CONFIG_DEBUG_BUGVERBOSE=y
1366# CONFIG_DEBUG_MEMORY_INIT is not set 1410# CONFIG_DEBUG_MEMORY_INIT is not set
1367# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1411# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1368# CONFIG_LATENCYTOP is not set 1412# CONFIG_LATENCYTOP is not set
@@ -1389,7 +1433,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1389# CONFIG_KEYS is not set 1433# CONFIG_KEYS is not set
1390# CONFIG_SECURITY is not set 1434# CONFIG_SECURITY is not set
1391# CONFIG_SECURITYFS is not set 1435# CONFIG_SECURITYFS is not set
1392# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1436# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1437# CONFIG_DEFAULT_SECURITY_SMACK is not set
1438# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1439CONFIG_DEFAULT_SECURITY_DAC=y
1440CONFIG_DEFAULT_SECURITY=""
1393CONFIG_CRYPTO=y 1441CONFIG_CRYPTO=y
1394 1442
1395# 1443#
diff --git a/arch/powerpc/configs/83xx/mpc834x_mds_defconfig b/arch/powerpc/configs/83xx/mpc834x_mds_defconfig
index c4e92ba5c38b..6252ab5bf181 100644
--- a/arch/powerpc/configs/83xx/mpc834x_mds_defconfig
+++ b/arch/powerpc/configs/83xx/mpc834x_mds_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:27 2009 4# Wed Jan 6 09:24:21 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
185 215
186# 216#
@@ -259,6 +289,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
292CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +306,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 309# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -403,9 +432,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
403# CONFIG_AF_RXRPC is not set 432# CONFIG_AF_RXRPC is not set
404CONFIG_WIRELESS=y 433CONFIG_WIRELESS=y
405# CONFIG_CFG80211 is not set 434# CONFIG_CFG80211 is not set
406CONFIG_CFG80211_DEFAULT_PS_VALUE=0
407CONFIG_WIRELESS_OLD_REGULATORY=y
408# CONFIG_WIRELESS_EXT is not set
409# CONFIG_LIB80211 is not set 435# CONFIG_LIB80211 is not set
410 436
411# 437#
@@ -443,6 +469,10 @@ CONFIG_BLK_DEV=y
443# CONFIG_BLK_DEV_COW_COMMON is not set 469# CONFIG_BLK_DEV_COW_COMMON is not set
444CONFIG_BLK_DEV_LOOP=y 470CONFIG_BLK_DEV_LOOP=y
445# CONFIG_BLK_DEV_CRYPTOLOOP is not set 471# CONFIG_BLK_DEV_CRYPTOLOOP is not set
472
473#
474# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
475#
446# CONFIG_BLK_DEV_NBD is not set 476# CONFIG_BLK_DEV_NBD is not set
447# CONFIG_BLK_DEV_SX8 is not set 477# CONFIG_BLK_DEV_SX8 is not set
448CONFIG_BLK_DEV_RAM=y 478CONFIG_BLK_DEV_RAM=y
@@ -453,6 +483,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
453# CONFIG_ATA_OVER_ETH is not set 483# CONFIG_ATA_OVER_ETH is not set
454# CONFIG_BLK_DEV_HD is not set 484# CONFIG_BLK_DEV_HD is not set
455CONFIG_MISC_DEVICES=y 485CONFIG_MISC_DEVICES=y
486# CONFIG_AD525X_DPOT is not set
456# CONFIG_PHANTOM is not set 487# CONFIG_PHANTOM is not set
457# CONFIG_SGI_IOC4 is not set 488# CONFIG_SGI_IOC4 is not set
458# CONFIG_TIFM_CORE is not set 489# CONFIG_TIFM_CORE is not set
@@ -460,6 +491,7 @@ CONFIG_MISC_DEVICES=y
460# CONFIG_ENCLOSURE_SERVICES is not set 491# CONFIG_ENCLOSURE_SERVICES is not set
461# CONFIG_HP_ILO is not set 492# CONFIG_HP_ILO is not set
462# CONFIG_ISL29003 is not set 493# CONFIG_ISL29003 is not set
494# CONFIG_DS1682 is not set
463# CONFIG_C2PORT is not set 495# CONFIG_C2PORT is not set
464 496
465# 497#
@@ -493,7 +525,7 @@ CONFIG_HAVE_IDE=y
493# 525#
494 526
495# 527#
496# See the help texts for more information. 528# The newer stack is recommended.
497# 529#
498# CONFIG_FIREWIRE is not set 530# CONFIG_FIREWIRE is not set
499# CONFIG_IEEE1394 is not set 531# CONFIG_IEEE1394 is not set
@@ -616,8 +648,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
616# CONFIG_BE2NET is not set 648# CONFIG_BE2NET is not set
617# CONFIG_TR is not set 649# CONFIG_TR is not set
618CONFIG_WLAN=y 650CONFIG_WLAN=y
619# CONFIG_WLAN_PRE80211 is not set 651# CONFIG_AIRO is not set
620# CONFIG_WLAN_80211 is not set 652# CONFIG_ATMEL is not set
653# CONFIG_PRISM54 is not set
654# CONFIG_HOSTAP is not set
621 655
622# 656#
623# Enable WiMAX (Networking options) to see the WiMAX drivers 657# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -630,6 +664,7 @@ CONFIG_WLAN=y
630# CONFIG_NETCONSOLE is not set 664# CONFIG_NETCONSOLE is not set
631# CONFIG_NETPOLL is not set 665# CONFIG_NETPOLL is not set
632# CONFIG_NET_POLL_CONTROLLER is not set 666# CONFIG_NET_POLL_CONTROLLER is not set
667# CONFIG_VMXNET3 is not set
633# CONFIG_ISDN is not set 668# CONFIG_ISDN is not set
634# CONFIG_PHONE is not set 669# CONFIG_PHONE is not set
635 670
@@ -639,6 +674,7 @@ CONFIG_WLAN=y
639CONFIG_INPUT=y 674CONFIG_INPUT=y
640# CONFIG_INPUT_FF_MEMLESS is not set 675# CONFIG_INPUT_FF_MEMLESS is not set
641# CONFIG_INPUT_POLLDEV is not set 676# CONFIG_INPUT_POLLDEV is not set
677# CONFIG_INPUT_SPARSEKMAP is not set
642 678
643# 679#
644# Userland interfaces 680# Userland interfaces
@@ -690,6 +726,7 @@ CONFIG_SERIAL_CORE=y
690CONFIG_SERIAL_CORE_CONSOLE=y 726CONFIG_SERIAL_CORE_CONSOLE=y
691# CONFIG_SERIAL_JSM is not set 727# CONFIG_SERIAL_JSM is not set
692# CONFIG_SERIAL_OF_PLATFORM is not set 728# CONFIG_SERIAL_OF_PLATFORM is not set
729# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
693CONFIG_UNIX98_PTYS=y 730CONFIG_UNIX98_PTYS=y
694# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 731# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
695CONFIG_LEGACY_PTYS=y 732CONFIG_LEGACY_PTYS=y
@@ -745,11 +782,6 @@ CONFIG_I2C_MPC=y
745# CONFIG_I2C_TAOS_EVM is not set 782# CONFIG_I2C_TAOS_EVM is not set
746 783
747# 784#
748# Graphics adapter I2C/DDC channel drivers
749#
750# CONFIG_I2C_VOODOO3 is not set
751
752#
753# Other I2C/SMBus bus drivers 785# Other I2C/SMBus bus drivers
754# 786#
755# CONFIG_I2C_PCA_PLATFORM is not set 787# CONFIG_I2C_PCA_PLATFORM is not set
@@ -758,7 +790,6 @@ CONFIG_I2C_MPC=y
758# 790#
759# Miscellaneous I2C Chip support 791# Miscellaneous I2C Chip support
760# 792#
761# CONFIG_DS1682 is not set
762# CONFIG_SENSORS_TSL2550 is not set 793# CONFIG_SENSORS_TSL2550 is not set
763# CONFIG_I2C_DEBUG_CORE is not set 794# CONFIG_I2C_DEBUG_CORE is not set
764# CONFIG_I2C_DEBUG_ALGO is not set 795# CONFIG_I2C_DEBUG_ALGO is not set
@@ -804,6 +835,7 @@ CONFIG_HWMON=y
804# CONFIG_SENSORS_GL520SM is not set 835# CONFIG_SENSORS_GL520SM is not set
805# CONFIG_SENSORS_IT87 is not set 836# CONFIG_SENSORS_IT87 is not set
806# CONFIG_SENSORS_LM63 is not set 837# CONFIG_SENSORS_LM63 is not set
838# CONFIG_SENSORS_LM73 is not set
807# CONFIG_SENSORS_LM75 is not set 839# CONFIG_SENSORS_LM75 is not set
808# CONFIG_SENSORS_LM77 is not set 840# CONFIG_SENSORS_LM77 is not set
809# CONFIG_SENSORS_LM78 is not set 841# CONFIG_SENSORS_LM78 is not set
@@ -842,6 +874,7 @@ CONFIG_HWMON=y
842# CONFIG_SENSORS_W83L786NG is not set 874# CONFIG_SENSORS_W83L786NG is not set
843# CONFIG_SENSORS_W83627HF is not set 875# CONFIG_SENSORS_W83627HF is not set
844# CONFIG_SENSORS_W83627EHF is not set 876# CONFIG_SENSORS_W83627EHF is not set
877# CONFIG_SENSORS_LIS3_I2C is not set
845# CONFIG_THERMAL is not set 878# CONFIG_THERMAL is not set
846CONFIG_WATCHDOG=y 879CONFIG_WATCHDOG=y
847# CONFIG_WATCHDOG_NOWAYOUT is not set 880# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -874,11 +907,13 @@ CONFIG_SSB_POSSIBLE=y
874# CONFIG_TWL4030_CORE is not set 907# CONFIG_TWL4030_CORE is not set
875# CONFIG_MFD_TMIO is not set 908# CONFIG_MFD_TMIO is not set
876# CONFIG_PMIC_DA903X is not set 909# CONFIG_PMIC_DA903X is not set
910# CONFIG_PMIC_ADP5520 is not set
877# CONFIG_MFD_WM8400 is not set 911# CONFIG_MFD_WM8400 is not set
878# CONFIG_MFD_WM831X is not set 912# CONFIG_MFD_WM831X is not set
879# CONFIG_MFD_WM8350_I2C is not set 913# CONFIG_MFD_WM8350_I2C is not set
880# CONFIG_MFD_PCF50633 is not set 914# CONFIG_MFD_PCF50633 is not set
881# CONFIG_AB3100_CORE is not set 915# CONFIG_AB3100_CORE is not set
916# CONFIG_MFD_88PM8607 is not set
882# CONFIG_REGULATOR is not set 917# CONFIG_REGULATOR is not set
883# CONFIG_MEDIA_SUPPORT is not set 918# CONFIG_MEDIA_SUPPORT is not set
884 919
@@ -961,6 +996,7 @@ CONFIG_RTC_DRV_DS1374=y
961# CONFIG_RTC_DRV_PCF8563 is not set 996# CONFIG_RTC_DRV_PCF8563 is not set
962# CONFIG_RTC_DRV_PCF8583 is not set 997# CONFIG_RTC_DRV_PCF8583 is not set
963# CONFIG_RTC_DRV_M41T80 is not set 998# CONFIG_RTC_DRV_M41T80 is not set
999# CONFIG_RTC_DRV_BQ32K is not set
964# CONFIG_RTC_DRV_S35390A is not set 1000# CONFIG_RTC_DRV_S35390A is not set
965# CONFIG_RTC_DRV_FM3130 is not set 1001# CONFIG_RTC_DRV_FM3130 is not set
966# CONFIG_RTC_DRV_RX8581 is not set 1002# CONFIG_RTC_DRV_RX8581 is not set
@@ -982,7 +1018,9 @@ CONFIG_RTC_DRV_DS1374=y
982# CONFIG_RTC_DRV_M48T86 is not set 1018# CONFIG_RTC_DRV_M48T86 is not set
983# CONFIG_RTC_DRV_M48T35 is not set 1019# CONFIG_RTC_DRV_M48T35 is not set
984# CONFIG_RTC_DRV_M48T59 is not set 1020# CONFIG_RTC_DRV_M48T59 is not set
1021# CONFIG_RTC_DRV_MSM6242 is not set
985# CONFIG_RTC_DRV_BQ4802 is not set 1022# CONFIG_RTC_DRV_BQ4802 is not set
1023# CONFIG_RTC_DRV_RP5C01 is not set
986# CONFIG_RTC_DRV_V3020 is not set 1024# CONFIG_RTC_DRV_V3020 is not set
987 1025
988# 1026#
@@ -1156,7 +1194,7 @@ CONFIG_FRAME_WARN=1024
1156# CONFIG_DEBUG_KERNEL is not set 1194# CONFIG_DEBUG_KERNEL is not set
1157# CONFIG_SLUB_DEBUG_ON is not set 1195# CONFIG_SLUB_DEBUG_ON is not set
1158# CONFIG_SLUB_STATS is not set 1196# CONFIG_SLUB_STATS is not set
1159# CONFIG_DEBUG_BUGVERBOSE is not set 1197CONFIG_DEBUG_BUGVERBOSE=y
1160# CONFIG_DEBUG_MEMORY_INIT is not set 1198# CONFIG_DEBUG_MEMORY_INIT is not set
1161# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1199# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1162# CONFIG_LATENCYTOP is not set 1200# CONFIG_LATENCYTOP is not set
@@ -1183,7 +1221,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1183# CONFIG_KEYS is not set 1221# CONFIG_KEYS is not set
1184# CONFIG_SECURITY is not set 1222# CONFIG_SECURITY is not set
1185# CONFIG_SECURITYFS is not set 1223# CONFIG_SECURITYFS is not set
1186# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1224# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1225# CONFIG_DEFAULT_SECURITY_SMACK is not set
1226# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1227CONFIG_DEFAULT_SECURITY_DAC=y
1228CONFIG_DEFAULT_SECURITY=""
1187CONFIG_CRYPTO=y 1229CONFIG_CRYPTO=y
1188 1230
1189# 1231#
diff --git a/arch/powerpc/configs/83xx/mpc836x_mds_defconfig b/arch/powerpc/configs/83xx/mpc836x_mds_defconfig
index 4f434b1492fa..78227378e678 100644
--- a/arch/powerpc/configs/83xx/mpc836x_mds_defconfig
+++ b/arch/powerpc/configs/83xx/mpc836x_mds_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:28 2009 4# Wed Jan 6 09:24:21 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +176,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 176# IO Schedulers
174# 177#
175CONFIG_IOSCHED_NOOP=y 178CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 179CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 180CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 181# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 182CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 183# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 184CONFIG_DEFAULT_IOSCHED="cfq"
185# CONFIG_INLINE_SPIN_TRYLOCK is not set
186# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK is not set
188# CONFIG_INLINE_SPIN_LOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
191CONFIG_INLINE_SPIN_UNLOCK=y
192# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
193CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
194# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
195# CONFIG_INLINE_READ_TRYLOCK is not set
196# CONFIG_INLINE_READ_LOCK is not set
197# CONFIG_INLINE_READ_LOCK_BH is not set
198# CONFIG_INLINE_READ_LOCK_IRQ is not set
199# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
200CONFIG_INLINE_READ_UNLOCK=y
201# CONFIG_INLINE_READ_UNLOCK_BH is not set
202CONFIG_INLINE_READ_UNLOCK_IRQ=y
203# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_WRITE_TRYLOCK is not set
205# CONFIG_INLINE_WRITE_LOCK is not set
206# CONFIG_INLINE_WRITE_LOCK_BH is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
209CONFIG_INLINE_WRITE_UNLOCK=y
210# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
211CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
212# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
213# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 214# CONFIG_FREEZER is not set
185 215
186# 216#
@@ -258,6 +288,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
258CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 288CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
259# CONFIG_KEXEC is not set 289# CONFIG_KEXEC is not set
260# CONFIG_CRASH_DUMP is not set 290# CONFIG_CRASH_DUMP is not set
291CONFIG_SPARSE_IRQ=y
261CONFIG_MAX_ACTIVE_REGIONS=32 292CONFIG_MAX_ACTIVE_REGIONS=32
262CONFIG_ARCH_FLATMEM_ENABLE=y 293CONFIG_ARCH_FLATMEM_ENABLE=y
263CONFIG_ARCH_POPULATES_NODE_MAP=y 294CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -274,8 +305,6 @@ CONFIG_MIGRATION=y
274CONFIG_ZONE_DMA_FLAG=1 305CONFIG_ZONE_DMA_FLAG=1
275CONFIG_BOUNCE=y 306CONFIG_BOUNCE=y
276CONFIG_VIRT_TO_BUS=y 307CONFIG_VIRT_TO_BUS=y
277CONFIG_HAVE_MLOCK=y
278CONFIG_HAVE_MLOCKED_PAGE_BIT=y
279# CONFIG_KSM is not set 308# CONFIG_KSM is not set
280CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 309CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
281CONFIG_PPC_4K_PAGES=y 310CONFIG_PPC_4K_PAGES=y
@@ -402,9 +431,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
402# CONFIG_AF_RXRPC is not set 431# CONFIG_AF_RXRPC is not set
403CONFIG_WIRELESS=y 432CONFIG_WIRELESS=y
404# CONFIG_CFG80211 is not set 433# CONFIG_CFG80211 is not set
405CONFIG_CFG80211_DEFAULT_PS_VALUE=0
406CONFIG_WIRELESS_OLD_REGULATORY=y
407# CONFIG_WIRELESS_EXT is not set
408# CONFIG_LIB80211 is not set 434# CONFIG_LIB80211 is not set
409 435
410# 436#
@@ -525,6 +551,10 @@ CONFIG_BLK_DEV=y
525# CONFIG_BLK_DEV_COW_COMMON is not set 551# CONFIG_BLK_DEV_COW_COMMON is not set
526CONFIG_BLK_DEV_LOOP=y 552CONFIG_BLK_DEV_LOOP=y
527# CONFIG_BLK_DEV_CRYPTOLOOP is not set 553# CONFIG_BLK_DEV_CRYPTOLOOP is not set
554
555#
556# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
557#
528# CONFIG_BLK_DEV_NBD is not set 558# CONFIG_BLK_DEV_NBD is not set
529# CONFIG_BLK_DEV_SX8 is not set 559# CONFIG_BLK_DEV_SX8 is not set
530CONFIG_BLK_DEV_RAM=y 560CONFIG_BLK_DEV_RAM=y
@@ -535,6 +565,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
535# CONFIG_ATA_OVER_ETH is not set 565# CONFIG_ATA_OVER_ETH is not set
536# CONFIG_BLK_DEV_HD is not set 566# CONFIG_BLK_DEV_HD is not set
537CONFIG_MISC_DEVICES=y 567CONFIG_MISC_DEVICES=y
568# CONFIG_AD525X_DPOT is not set
538# CONFIG_PHANTOM is not set 569# CONFIG_PHANTOM is not set
539# CONFIG_SGI_IOC4 is not set 570# CONFIG_SGI_IOC4 is not set
540# CONFIG_TIFM_CORE is not set 571# CONFIG_TIFM_CORE is not set
@@ -542,6 +573,7 @@ CONFIG_MISC_DEVICES=y
542# CONFIG_ENCLOSURE_SERVICES is not set 573# CONFIG_ENCLOSURE_SERVICES is not set
543# CONFIG_HP_ILO is not set 574# CONFIG_HP_ILO is not set
544# CONFIG_ISL29003 is not set 575# CONFIG_ISL29003 is not set
576# CONFIG_DS1682 is not set
545# CONFIG_C2PORT is not set 577# CONFIG_C2PORT is not set
546 578
547# 579#
@@ -594,7 +626,9 @@ CONFIG_SCSI_LOWLEVEL=y
594# CONFIG_SCSI_BNX2_ISCSI is not set 626# CONFIG_SCSI_BNX2_ISCSI is not set
595# CONFIG_BE2ISCSI is not set 627# CONFIG_BE2ISCSI is not set
596# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 628# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
629# CONFIG_SCSI_HPSA is not set
597# CONFIG_SCSI_3W_9XXX is not set 630# CONFIG_SCSI_3W_9XXX is not set
631# CONFIG_SCSI_3W_SAS is not set
598# CONFIG_SCSI_ACARD is not set 632# CONFIG_SCSI_ACARD is not set
599# CONFIG_SCSI_AACRAID is not set 633# CONFIG_SCSI_AACRAID is not set
600# CONFIG_SCSI_AIC7XXX is not set 634# CONFIG_SCSI_AIC7XXX is not set
@@ -632,6 +666,7 @@ CONFIG_SCSI_LOWLEVEL=y
632# CONFIG_SCSI_NSP32 is not set 666# CONFIG_SCSI_NSP32 is not set
633# CONFIG_SCSI_DEBUG is not set 667# CONFIG_SCSI_DEBUG is not set
634# CONFIG_SCSI_PMCRAID is not set 668# CONFIG_SCSI_PMCRAID is not set
669# CONFIG_SCSI_PM8001 is not set
635# CONFIG_SCSI_SRP is not set 670# CONFIG_SCSI_SRP is not set
636# CONFIG_SCSI_BFA_FC is not set 671# CONFIG_SCSI_BFA_FC is not set
637# CONFIG_SCSI_DH is not set 672# CONFIG_SCSI_DH is not set
@@ -649,7 +684,7 @@ CONFIG_SCSI_LOWLEVEL=y
649# 684#
650 685
651# 686#
652# See the help texts for more information. 687# The newer stack is recommended.
653# 688#
654# CONFIG_FIREWIRE is not set 689# CONFIG_FIREWIRE is not set
655# CONFIG_IEEE1394 is not set 690# CONFIG_IEEE1394 is not set
@@ -756,8 +791,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
756# CONFIG_BE2NET is not set 791# CONFIG_BE2NET is not set
757# CONFIG_TR is not set 792# CONFIG_TR is not set
758CONFIG_WLAN=y 793CONFIG_WLAN=y
759# CONFIG_WLAN_PRE80211 is not set 794# CONFIG_AIRO is not set
760# CONFIG_WLAN_80211 is not set 795# CONFIG_ATMEL is not set
796# CONFIG_PRISM54 is not set
797# CONFIG_HOSTAP is not set
761 798
762# 799#
763# Enable WiMAX (Networking options) to see the WiMAX drivers 800# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -771,6 +808,7 @@ CONFIG_WLAN=y
771# CONFIG_NETCONSOLE is not set 808# CONFIG_NETCONSOLE is not set
772# CONFIG_NETPOLL is not set 809# CONFIG_NETPOLL is not set
773# CONFIG_NET_POLL_CONTROLLER is not set 810# CONFIG_NET_POLL_CONTROLLER is not set
811# CONFIG_VMXNET3 is not set
774# CONFIG_ISDN is not set 812# CONFIG_ISDN is not set
775# CONFIG_PHONE is not set 813# CONFIG_PHONE is not set
776 814
@@ -780,6 +818,7 @@ CONFIG_WLAN=y
780CONFIG_INPUT=y 818CONFIG_INPUT=y
781# CONFIG_INPUT_FF_MEMLESS is not set 819# CONFIG_INPUT_FF_MEMLESS is not set
782# CONFIG_INPUT_POLLDEV is not set 820# CONFIG_INPUT_POLLDEV is not set
821# CONFIG_INPUT_SPARSEKMAP is not set
783 822
784# 823#
785# Userland interfaces 824# Userland interfaces
@@ -832,6 +871,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
832# CONFIG_SERIAL_JSM is not set 871# CONFIG_SERIAL_JSM is not set
833# CONFIG_SERIAL_OF_PLATFORM is not set 872# CONFIG_SERIAL_OF_PLATFORM is not set
834# CONFIG_SERIAL_QE is not set 873# CONFIG_SERIAL_QE is not set
874# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
835CONFIG_UNIX98_PTYS=y 875CONFIG_UNIX98_PTYS=y
836# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 876# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
837CONFIG_LEGACY_PTYS=y 877CONFIG_LEGACY_PTYS=y
@@ -888,11 +928,6 @@ CONFIG_I2C_MPC=y
888# CONFIG_I2C_TAOS_EVM is not set 928# CONFIG_I2C_TAOS_EVM is not set
889 929
890# 930#
891# Graphics adapter I2C/DDC channel drivers
892#
893# CONFIG_I2C_VOODOO3 is not set
894
895#
896# Other I2C/SMBus bus drivers 931# Other I2C/SMBus bus drivers
897# 932#
898# CONFIG_I2C_PCA_PLATFORM is not set 933# CONFIG_I2C_PCA_PLATFORM is not set
@@ -901,7 +936,6 @@ CONFIG_I2C_MPC=y
901# 936#
902# Miscellaneous I2C Chip support 937# Miscellaneous I2C Chip support
903# 938#
904# CONFIG_DS1682 is not set
905# CONFIG_SENSORS_TSL2550 is not set 939# CONFIG_SENSORS_TSL2550 is not set
906# CONFIG_I2C_DEBUG_CORE is not set 940# CONFIG_I2C_DEBUG_CORE is not set
907# CONFIG_I2C_DEBUG_ALGO is not set 941# CONFIG_I2C_DEBUG_ALGO is not set
@@ -947,6 +981,7 @@ CONFIG_HWMON=y
947# CONFIG_SENSORS_GL520SM is not set 981# CONFIG_SENSORS_GL520SM is not set
948# CONFIG_SENSORS_IT87 is not set 982# CONFIG_SENSORS_IT87 is not set
949# CONFIG_SENSORS_LM63 is not set 983# CONFIG_SENSORS_LM63 is not set
984# CONFIG_SENSORS_LM73 is not set
950# CONFIG_SENSORS_LM75 is not set 985# CONFIG_SENSORS_LM75 is not set
951# CONFIG_SENSORS_LM77 is not set 986# CONFIG_SENSORS_LM77 is not set
952# CONFIG_SENSORS_LM78 is not set 987# CONFIG_SENSORS_LM78 is not set
@@ -985,6 +1020,7 @@ CONFIG_HWMON=y
985# CONFIG_SENSORS_W83L786NG is not set 1020# CONFIG_SENSORS_W83L786NG is not set
986# CONFIG_SENSORS_W83627HF is not set 1021# CONFIG_SENSORS_W83627HF is not set
987# CONFIG_SENSORS_W83627EHF is not set 1022# CONFIG_SENSORS_W83627EHF is not set
1023# CONFIG_SENSORS_LIS3_I2C is not set
988# CONFIG_THERMAL is not set 1024# CONFIG_THERMAL is not set
989CONFIG_WATCHDOG=y 1025CONFIG_WATCHDOG=y
990# CONFIG_WATCHDOG_NOWAYOUT is not set 1026# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1017,11 +1053,13 @@ CONFIG_SSB_POSSIBLE=y
1017# CONFIG_TWL4030_CORE is not set 1053# CONFIG_TWL4030_CORE is not set
1018# CONFIG_MFD_TMIO is not set 1054# CONFIG_MFD_TMIO is not set
1019# CONFIG_PMIC_DA903X is not set 1055# CONFIG_PMIC_DA903X is not set
1056# CONFIG_PMIC_ADP5520 is not set
1020# CONFIG_MFD_WM8400 is not set 1057# CONFIG_MFD_WM8400 is not set
1021# CONFIG_MFD_WM831X is not set 1058# CONFIG_MFD_WM831X is not set
1022# CONFIG_MFD_WM8350_I2C is not set 1059# CONFIG_MFD_WM8350_I2C is not set
1023# CONFIG_MFD_PCF50633 is not set 1060# CONFIG_MFD_PCF50633 is not set
1024# CONFIG_AB3100_CORE is not set 1061# CONFIG_AB3100_CORE is not set
1062# CONFIG_MFD_88PM8607 is not set
1025# CONFIG_REGULATOR is not set 1063# CONFIG_REGULATOR is not set
1026# CONFIG_MEDIA_SUPPORT is not set 1064# CONFIG_MEDIA_SUPPORT is not set
1027 1065
@@ -1104,6 +1142,7 @@ CONFIG_RTC_DRV_DS1374=y
1104# CONFIG_RTC_DRV_PCF8563 is not set 1142# CONFIG_RTC_DRV_PCF8563 is not set
1105# CONFIG_RTC_DRV_PCF8583 is not set 1143# CONFIG_RTC_DRV_PCF8583 is not set
1106# CONFIG_RTC_DRV_M41T80 is not set 1144# CONFIG_RTC_DRV_M41T80 is not set
1145# CONFIG_RTC_DRV_BQ32K is not set
1107# CONFIG_RTC_DRV_S35390A is not set 1146# CONFIG_RTC_DRV_S35390A is not set
1108# CONFIG_RTC_DRV_FM3130 is not set 1147# CONFIG_RTC_DRV_FM3130 is not set
1109# CONFIG_RTC_DRV_RX8581 is not set 1148# CONFIG_RTC_DRV_RX8581 is not set
@@ -1125,7 +1164,9 @@ CONFIG_RTC_DRV_DS1374=y
1125# CONFIG_RTC_DRV_M48T86 is not set 1164# CONFIG_RTC_DRV_M48T86 is not set
1126# CONFIG_RTC_DRV_M48T35 is not set 1165# CONFIG_RTC_DRV_M48T35 is not set
1127# CONFIG_RTC_DRV_M48T59 is not set 1166# CONFIG_RTC_DRV_M48T59 is not set
1167# CONFIG_RTC_DRV_MSM6242 is not set
1128# CONFIG_RTC_DRV_BQ4802 is not set 1168# CONFIG_RTC_DRV_BQ4802 is not set
1169# CONFIG_RTC_DRV_RP5C01 is not set
1129# CONFIG_RTC_DRV_V3020 is not set 1170# CONFIG_RTC_DRV_V3020 is not set
1130 1171
1131# 1172#
@@ -1302,7 +1343,7 @@ CONFIG_FRAME_WARN=1024
1302# CONFIG_DEBUG_KERNEL is not set 1343# CONFIG_DEBUG_KERNEL is not set
1303# CONFIG_SLUB_DEBUG_ON is not set 1344# CONFIG_SLUB_DEBUG_ON is not set
1304# CONFIG_SLUB_STATS is not set 1345# CONFIG_SLUB_STATS is not set
1305# CONFIG_DEBUG_BUGVERBOSE is not set 1346CONFIG_DEBUG_BUGVERBOSE=y
1306# CONFIG_DEBUG_MEMORY_INIT is not set 1347# CONFIG_DEBUG_MEMORY_INIT is not set
1307# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1348# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1308# CONFIG_LATENCYTOP is not set 1349# CONFIG_LATENCYTOP is not set
@@ -1329,7 +1370,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1329# CONFIG_KEYS is not set 1370# CONFIG_KEYS is not set
1330# CONFIG_SECURITY is not set 1371# CONFIG_SECURITY is not set
1331# CONFIG_SECURITYFS is not set 1372# CONFIG_SECURITYFS is not set
1332# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1373# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1374# CONFIG_DEFAULT_SECURITY_SMACK is not set
1375# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1376CONFIG_DEFAULT_SECURITY_DAC=y
1377CONFIG_DEFAULT_SECURITY=""
1333CONFIG_CRYPTO=y 1378CONFIG_CRYPTO=y
1334 1379
1335# 1380#
diff --git a/arch/powerpc/configs/83xx/mpc836x_rdk_defconfig b/arch/powerpc/configs/83xx/mpc836x_rdk_defconfig
index b52ec0861679..9451d6e5c802 100644
--- a/arch/powerpc/configs/83xx/mpc836x_rdk_defconfig
+++ b/arch/powerpc/configs/83xx/mpc836x_rdk_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:30 2009 4# Wed Jan 6 09:24:23 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -60,6 +61,7 @@ CONFIG_AUDIT_ARCH=y
60CONFIG_GENERIC_BUG=y 61CONFIG_GENERIC_BUG=y
61CONFIG_DTC=y 62CONFIG_DTC=y
62CONFIG_DEFAULT_UIMAGE=y 63CONFIG_DEFAULT_UIMAGE=y
64CONFIG_ARCH_HIBERNATION_POSSIBLE=y
63CONFIG_ARCH_SUSPEND_POSSIBLE=y 65CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 66# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 67# CONFIG_PPC_DCR_MMIO is not set
@@ -88,6 +90,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 90#
89CONFIG_TREE_RCU=y 91CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 92# CONFIG_TREE_PREEMPT_RCU is not set
93# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 94# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 95CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 96# CONFIG_RCU_FANOUT_EXACT is not set
@@ -174,14 +177,41 @@ CONFIG_LBDAF=y
174# IO Schedulers 177# IO Schedulers
175# 178#
176CONFIG_IOSCHED_NOOP=y 179CONFIG_IOSCHED_NOOP=y
177CONFIG_IOSCHED_AS=y
178CONFIG_IOSCHED_DEADLINE=y 180CONFIG_IOSCHED_DEADLINE=y
179CONFIG_IOSCHED_CFQ=y 181CONFIG_IOSCHED_CFQ=y
180CONFIG_DEFAULT_AS=y
181# CONFIG_DEFAULT_DEADLINE is not set 182# CONFIG_DEFAULT_DEADLINE is not set
182# CONFIG_DEFAULT_CFQ is not set 183CONFIG_DEFAULT_CFQ=y
183# CONFIG_DEFAULT_NOOP is not set 184# CONFIG_DEFAULT_NOOP is not set
184CONFIG_DEFAULT_IOSCHED="anticipatory" 185CONFIG_DEFAULT_IOSCHED="cfq"
186# CONFIG_INLINE_SPIN_TRYLOCK is not set
187# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK is not set
189# CONFIG_INLINE_SPIN_LOCK_BH is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
191# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
192CONFIG_INLINE_SPIN_UNLOCK=y
193# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
194CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
195# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
196# CONFIG_INLINE_READ_TRYLOCK is not set
197# CONFIG_INLINE_READ_LOCK is not set
198# CONFIG_INLINE_READ_LOCK_BH is not set
199# CONFIG_INLINE_READ_LOCK_IRQ is not set
200# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
201CONFIG_INLINE_READ_UNLOCK=y
202# CONFIG_INLINE_READ_UNLOCK_BH is not set
203CONFIG_INLINE_READ_UNLOCK_IRQ=y
204# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
205# CONFIG_INLINE_WRITE_TRYLOCK is not set
206# CONFIG_INLINE_WRITE_LOCK is not set
207# CONFIG_INLINE_WRITE_LOCK_BH is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
209# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
210CONFIG_INLINE_WRITE_UNLOCK=y
211# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
212CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
213# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
214# CONFIG_MUTEX_SPIN_ON_OWNER is not set
185# CONFIG_FREEZER is not set 215# CONFIG_FREEZER is not set
186 216
187# 217#
@@ -258,6 +288,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
258CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 288CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
259# CONFIG_KEXEC is not set 289# CONFIG_KEXEC is not set
260# CONFIG_CRASH_DUMP is not set 290# CONFIG_CRASH_DUMP is not set
291CONFIG_SPARSE_IRQ=y
261CONFIG_MAX_ACTIVE_REGIONS=32 292CONFIG_MAX_ACTIVE_REGIONS=32
262CONFIG_ARCH_FLATMEM_ENABLE=y 293CONFIG_ARCH_FLATMEM_ENABLE=y
263CONFIG_ARCH_POPULATES_NODE_MAP=y 294CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -274,8 +305,6 @@ CONFIG_MIGRATION=y
274CONFIG_ZONE_DMA_FLAG=1 305CONFIG_ZONE_DMA_FLAG=1
275CONFIG_BOUNCE=y 306CONFIG_BOUNCE=y
276CONFIG_VIRT_TO_BUS=y 307CONFIG_VIRT_TO_BUS=y
277CONFIG_HAVE_MLOCK=y
278CONFIG_HAVE_MLOCKED_PAGE_BIT=y
279# CONFIG_KSM is not set 308# CONFIG_KSM is not set
280CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 309CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
281CONFIG_PPC_4K_PAGES=y 310CONFIG_PPC_4K_PAGES=y
@@ -404,9 +433,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
404# CONFIG_AF_RXRPC is not set 433# CONFIG_AF_RXRPC is not set
405CONFIG_WIRELESS=y 434CONFIG_WIRELESS=y
406# CONFIG_CFG80211 is not set 435# CONFIG_CFG80211 is not set
407CONFIG_CFG80211_DEFAULT_PS_VALUE=0
408CONFIG_WIRELESS_OLD_REGULATORY=y
409# CONFIG_WIRELESS_EXT is not set
410# CONFIG_LIB80211 is not set 436# CONFIG_LIB80211 is not set
411 437
412# 438#
@@ -539,6 +565,10 @@ CONFIG_BLK_DEV=y
539# CONFIG_BLK_DEV_COW_COMMON is not set 565# CONFIG_BLK_DEV_COW_COMMON is not set
540CONFIG_BLK_DEV_LOOP=y 566CONFIG_BLK_DEV_LOOP=y
541# CONFIG_BLK_DEV_CRYPTOLOOP is not set 567# CONFIG_BLK_DEV_CRYPTOLOOP is not set
568
569#
570# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
571#
542# CONFIG_BLK_DEV_NBD is not set 572# CONFIG_BLK_DEV_NBD is not set
543# CONFIG_BLK_DEV_SX8 is not set 573# CONFIG_BLK_DEV_SX8 is not set
544CONFIG_BLK_DEV_RAM=y 574CONFIG_BLK_DEV_RAM=y
@@ -549,6 +579,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
549# CONFIG_ATA_OVER_ETH is not set 579# CONFIG_ATA_OVER_ETH is not set
550# CONFIG_BLK_DEV_HD is not set 580# CONFIG_BLK_DEV_HD is not set
551CONFIG_MISC_DEVICES=y 581CONFIG_MISC_DEVICES=y
582# CONFIG_AD525X_DPOT is not set
552# CONFIG_PHANTOM is not set 583# CONFIG_PHANTOM is not set
553# CONFIG_SGI_IOC4 is not set 584# CONFIG_SGI_IOC4 is not set
554# CONFIG_TIFM_CORE is not set 585# CONFIG_TIFM_CORE is not set
@@ -556,6 +587,8 @@ CONFIG_MISC_DEVICES=y
556# CONFIG_ENCLOSURE_SERVICES is not set 587# CONFIG_ENCLOSURE_SERVICES is not set
557# CONFIG_HP_ILO is not set 588# CONFIG_HP_ILO is not set
558# CONFIG_ISL29003 is not set 589# CONFIG_ISL29003 is not set
590# CONFIG_DS1682 is not set
591# CONFIG_TI_DAC7512 is not set
559# CONFIG_C2PORT is not set 592# CONFIG_C2PORT is not set
560 593
561# 594#
@@ -590,7 +623,7 @@ CONFIG_HAVE_IDE=y
590# 623#
591 624
592# 625#
593# See the help texts for more information. 626# The newer stack is recommended.
594# 627#
595# CONFIG_FIREWIRE is not set 628# CONFIG_FIREWIRE is not set
596# CONFIG_IEEE1394 is not set 629# CONFIG_IEEE1394 is not set
@@ -657,8 +690,10 @@ CONFIG_UCC_GETH=y
657# CONFIG_NETDEV_10000 is not set 690# CONFIG_NETDEV_10000 is not set
658# CONFIG_TR is not set 691# CONFIG_TR is not set
659CONFIG_WLAN=y 692CONFIG_WLAN=y
660# CONFIG_WLAN_PRE80211 is not set 693# CONFIG_AIRO is not set
661# CONFIG_WLAN_80211 is not set 694# CONFIG_ATMEL is not set
695# CONFIG_PRISM54 is not set
696# CONFIG_HOSTAP is not set
662 697
663# 698#
664# Enable WiMAX (Networking options) to see the WiMAX drivers 699# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -671,6 +706,7 @@ CONFIG_WLAN=y
671# CONFIG_NETCONSOLE is not set 706# CONFIG_NETCONSOLE is not set
672# CONFIG_NETPOLL is not set 707# CONFIG_NETPOLL is not set
673# CONFIG_NET_POLL_CONTROLLER is not set 708# CONFIG_NET_POLL_CONTROLLER is not set
709# CONFIG_VMXNET3 is not set
674# CONFIG_ISDN is not set 710# CONFIG_ISDN is not set
675# CONFIG_PHONE is not set 711# CONFIG_PHONE is not set
676 712
@@ -680,6 +716,7 @@ CONFIG_WLAN=y
680CONFIG_INPUT=y 716CONFIG_INPUT=y
681# CONFIG_INPUT_FF_MEMLESS is not set 717# CONFIG_INPUT_FF_MEMLESS is not set
682# CONFIG_INPUT_POLLDEV is not set 718# CONFIG_INPUT_POLLDEV is not set
719# CONFIG_INPUT_SPARSEKMAP is not set
683 720
684# 721#
685# Userland interfaces 722# Userland interfaces
@@ -737,6 +774,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
737# CONFIG_SERIAL_JSM is not set 774# CONFIG_SERIAL_JSM is not set
738# CONFIG_SERIAL_OF_PLATFORM is not set 775# CONFIG_SERIAL_OF_PLATFORM is not set
739CONFIG_SERIAL_QE=y 776CONFIG_SERIAL_QE=y
777# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
740CONFIG_UNIX98_PTYS=y 778CONFIG_UNIX98_PTYS=y
741# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 779# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
742CONFIG_LEGACY_PTYS=y 780CONFIG_LEGACY_PTYS=y
@@ -795,11 +833,6 @@ CONFIG_I2C_MPC=y
795# CONFIG_I2C_TAOS_EVM is not set 833# CONFIG_I2C_TAOS_EVM is not set
796 834
797# 835#
798# Graphics adapter I2C/DDC channel drivers
799#
800# CONFIG_I2C_VOODOO3 is not set
801
802#
803# Other I2C/SMBus bus drivers 836# Other I2C/SMBus bus drivers
804# 837#
805# CONFIG_I2C_PCA_PLATFORM is not set 838# CONFIG_I2C_PCA_PLATFORM is not set
@@ -808,7 +841,6 @@ CONFIG_I2C_MPC=y
808# 841#
809# Miscellaneous I2C Chip support 842# Miscellaneous I2C Chip support
810# 843#
811# CONFIG_DS1682 is not set
812# CONFIG_SENSORS_TSL2550 is not set 844# CONFIG_SENSORS_TSL2550 is not set
813# CONFIG_I2C_DEBUG_CORE is not set 845# CONFIG_I2C_DEBUG_CORE is not set
814# CONFIG_I2C_DEBUG_ALGO is not set 846# CONFIG_I2C_DEBUG_ALGO is not set
@@ -823,6 +855,8 @@ CONFIG_SPI_MASTER=y
823CONFIG_SPI_BITBANG=y 855CONFIG_SPI_BITBANG=y
824# CONFIG_SPI_GPIO is not set 856# CONFIG_SPI_GPIO is not set
825# CONFIG_SPI_MPC8xxx is not set 857# CONFIG_SPI_MPC8xxx is not set
858# CONFIG_SPI_XILINX is not set
859# CONFIG_SPI_DESIGNWARE is not set
826 860
827# 861#
828# SPI Protocol Masters 862# SPI Protocol Masters
@@ -854,6 +888,7 @@ CONFIG_GPIOLIB=y
854# 888#
855# PCI GPIO expanders: 889# PCI GPIO expanders:
856# 890#
891# CONFIG_GPIO_CS5535 is not set
857# CONFIG_GPIO_BT8XX is not set 892# CONFIG_GPIO_BT8XX is not set
858# CONFIG_GPIO_LANGWELL is not set 893# CONFIG_GPIO_LANGWELL is not set
859 894
@@ -903,6 +938,7 @@ CONFIG_SSB_POSSIBLE=y
903# CONFIG_TWL4030_CORE is not set 938# CONFIG_TWL4030_CORE is not set
904# CONFIG_MFD_TMIO is not set 939# CONFIG_MFD_TMIO is not set
905# CONFIG_PMIC_DA903X is not set 940# CONFIG_PMIC_DA903X is not set
941# CONFIG_PMIC_ADP5520 is not set
906# CONFIG_MFD_WM8400 is not set 942# CONFIG_MFD_WM8400 is not set
907# CONFIG_MFD_WM831X is not set 943# CONFIG_MFD_WM831X is not set
908# CONFIG_MFD_WM8350_I2C is not set 944# CONFIG_MFD_WM8350_I2C is not set
@@ -910,6 +946,8 @@ CONFIG_SSB_POSSIBLE=y
910# CONFIG_MFD_MC13783 is not set 946# CONFIG_MFD_MC13783 is not set
911# CONFIG_AB3100_CORE is not set 947# CONFIG_AB3100_CORE is not set
912# CONFIG_EZX_PCAP is not set 948# CONFIG_EZX_PCAP is not set
949# CONFIG_MFD_88PM8607 is not set
950# CONFIG_AB4500_CORE is not set
913# CONFIG_REGULATOR is not set 951# CONFIG_REGULATOR is not set
914# CONFIG_MEDIA_SUPPORT is not set 952# CONFIG_MEDIA_SUPPORT is not set
915 953
@@ -1199,7 +1237,7 @@ CONFIG_FRAME_WARN=1024
1199# CONFIG_DEBUG_KERNEL is not set 1237# CONFIG_DEBUG_KERNEL is not set
1200# CONFIG_SLUB_DEBUG_ON is not set 1238# CONFIG_SLUB_DEBUG_ON is not set
1201# CONFIG_SLUB_STATS is not set 1239# CONFIG_SLUB_STATS is not set
1202# CONFIG_DEBUG_BUGVERBOSE is not set 1240CONFIG_DEBUG_BUGVERBOSE=y
1203# CONFIG_DEBUG_MEMORY_INIT is not set 1241# CONFIG_DEBUG_MEMORY_INIT is not set
1204# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1242# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1205# CONFIG_LATENCYTOP is not set 1243# CONFIG_LATENCYTOP is not set
@@ -1230,6 +1268,7 @@ CONFIG_PPC_EARLY_DEBUG=y
1230# CONFIG_PPC_EARLY_DEBUG_44x is not set 1268# CONFIG_PPC_EARLY_DEBUG_44x is not set
1231# CONFIG_PPC_EARLY_DEBUG_40x is not set 1269# CONFIG_PPC_EARLY_DEBUG_40x is not set
1232# CONFIG_PPC_EARLY_DEBUG_CPM is not set 1270# CONFIG_PPC_EARLY_DEBUG_CPM is not set
1271# CONFIG_PPC_EARLY_DEBUG_USBGECKO is not set
1233 1272
1234# 1273#
1235# Security options 1274# Security options
@@ -1237,7 +1276,11 @@ CONFIG_PPC_EARLY_DEBUG=y
1237# CONFIG_KEYS is not set 1276# CONFIG_KEYS is not set
1238# CONFIG_SECURITY is not set 1277# CONFIG_SECURITY is not set
1239# CONFIG_SECURITYFS is not set 1278# CONFIG_SECURITYFS is not set
1240# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1279# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1280# CONFIG_DEFAULT_SECURITY_SMACK is not set
1281# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1282CONFIG_DEFAULT_SECURITY_DAC=y
1283CONFIG_DEFAULT_SECURITY=""
1241CONFIG_CRYPTO=y 1284CONFIG_CRYPTO=y
1242 1285
1243# 1286#
diff --git a/arch/powerpc/configs/83xx/mpc837x_mds_defconfig b/arch/powerpc/configs/83xx/mpc837x_mds_defconfig
index 730061574f96..f67b70d0b292 100644
--- a/arch/powerpc/configs/83xx/mpc837x_mds_defconfig
+++ b/arch/powerpc/configs/83xx/mpc837x_mds_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:29 2009 4# Wed Jan 6 09:24:22 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -174,14 +177,41 @@ CONFIG_LBDAF=y
174# IO Schedulers 177# IO Schedulers
175# 178#
176CONFIG_IOSCHED_NOOP=y 179CONFIG_IOSCHED_NOOP=y
177CONFIG_IOSCHED_AS=y
178CONFIG_IOSCHED_DEADLINE=y 180CONFIG_IOSCHED_DEADLINE=y
179CONFIG_IOSCHED_CFQ=y 181CONFIG_IOSCHED_CFQ=y
180CONFIG_DEFAULT_AS=y
181# CONFIG_DEFAULT_DEADLINE is not set 182# CONFIG_DEFAULT_DEADLINE is not set
182# CONFIG_DEFAULT_CFQ is not set 183CONFIG_DEFAULT_CFQ=y
183# CONFIG_DEFAULT_NOOP is not set 184# CONFIG_DEFAULT_NOOP is not set
184CONFIG_DEFAULT_IOSCHED="anticipatory" 185CONFIG_DEFAULT_IOSCHED="cfq"
186# CONFIG_INLINE_SPIN_TRYLOCK is not set
187# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK is not set
189# CONFIG_INLINE_SPIN_LOCK_BH is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
191# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
192CONFIG_INLINE_SPIN_UNLOCK=y
193# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
194CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
195# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
196# CONFIG_INLINE_READ_TRYLOCK is not set
197# CONFIG_INLINE_READ_LOCK is not set
198# CONFIG_INLINE_READ_LOCK_BH is not set
199# CONFIG_INLINE_READ_LOCK_IRQ is not set
200# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
201CONFIG_INLINE_READ_UNLOCK=y
202# CONFIG_INLINE_READ_UNLOCK_BH is not set
203CONFIG_INLINE_READ_UNLOCK_IRQ=y
204# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
205# CONFIG_INLINE_WRITE_TRYLOCK is not set
206# CONFIG_INLINE_WRITE_LOCK is not set
207# CONFIG_INLINE_WRITE_LOCK_BH is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
209# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
210CONFIG_INLINE_WRITE_UNLOCK=y
211# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
212CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
213# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
214# CONFIG_MUTEX_SPIN_ON_OWNER is not set
185# CONFIG_FREEZER is not set 215# CONFIG_FREEZER is not set
186 216
187# 217#
@@ -259,6 +289,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
292CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +306,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 309# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -403,9 +432,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
403# CONFIG_AF_RXRPC is not set 432# CONFIG_AF_RXRPC is not set
404CONFIG_WIRELESS=y 433CONFIG_WIRELESS=y
405# CONFIG_CFG80211 is not set 434# CONFIG_CFG80211 is not set
406CONFIG_CFG80211_DEFAULT_PS_VALUE=0
407CONFIG_WIRELESS_OLD_REGULATORY=y
408# CONFIG_WIRELESS_EXT is not set
409# CONFIG_LIB80211 is not set 435# CONFIG_LIB80211 is not set
410 436
411# 437#
@@ -443,6 +469,10 @@ CONFIG_BLK_DEV=y
443# CONFIG_BLK_DEV_COW_COMMON is not set 469# CONFIG_BLK_DEV_COW_COMMON is not set
444CONFIG_BLK_DEV_LOOP=y 470CONFIG_BLK_DEV_LOOP=y
445# CONFIG_BLK_DEV_CRYPTOLOOP is not set 471# CONFIG_BLK_DEV_CRYPTOLOOP is not set
472
473#
474# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
475#
446# CONFIG_BLK_DEV_NBD is not set 476# CONFIG_BLK_DEV_NBD is not set
447# CONFIG_BLK_DEV_SX8 is not set 477# CONFIG_BLK_DEV_SX8 is not set
448CONFIG_BLK_DEV_RAM=y 478CONFIG_BLK_DEV_RAM=y
@@ -453,6 +483,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
453# CONFIG_ATA_OVER_ETH is not set 483# CONFIG_ATA_OVER_ETH is not set
454# CONFIG_BLK_DEV_HD is not set 484# CONFIG_BLK_DEV_HD is not set
455CONFIG_MISC_DEVICES=y 485CONFIG_MISC_DEVICES=y
486# CONFIG_AD525X_DPOT is not set
456# CONFIG_PHANTOM is not set 487# CONFIG_PHANTOM is not set
457# CONFIG_SGI_IOC4 is not set 488# CONFIG_SGI_IOC4 is not set
458# CONFIG_TIFM_CORE is not set 489# CONFIG_TIFM_CORE is not set
@@ -460,6 +491,7 @@ CONFIG_MISC_DEVICES=y
460# CONFIG_ENCLOSURE_SERVICES is not set 491# CONFIG_ENCLOSURE_SERVICES is not set
461# CONFIG_HP_ILO is not set 492# CONFIG_HP_ILO is not set
462# CONFIG_ISL29003 is not set 493# CONFIG_ISL29003 is not set
494# CONFIG_DS1682 is not set
463# CONFIG_C2PORT is not set 495# CONFIG_C2PORT is not set
464 496
465# 497#
@@ -512,7 +544,9 @@ CONFIG_SCSI_LOWLEVEL=y
512# CONFIG_SCSI_BNX2_ISCSI is not set 544# CONFIG_SCSI_BNX2_ISCSI is not set
513# CONFIG_BE2ISCSI is not set 545# CONFIG_BE2ISCSI is not set
514# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 546# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
547# CONFIG_SCSI_HPSA is not set
515# CONFIG_SCSI_3W_9XXX is not set 548# CONFIG_SCSI_3W_9XXX is not set
549# CONFIG_SCSI_3W_SAS is not set
516# CONFIG_SCSI_ACARD is not set 550# CONFIG_SCSI_ACARD is not set
517# CONFIG_SCSI_AACRAID is not set 551# CONFIG_SCSI_AACRAID is not set
518# CONFIG_SCSI_AIC7XXX is not set 552# CONFIG_SCSI_AIC7XXX is not set
@@ -551,6 +585,7 @@ CONFIG_SCSI_LOWLEVEL=y
551# CONFIG_SCSI_NSP32 is not set 585# CONFIG_SCSI_NSP32 is not set
552# CONFIG_SCSI_DEBUG is not set 586# CONFIG_SCSI_DEBUG is not set
553# CONFIG_SCSI_PMCRAID is not set 587# CONFIG_SCSI_PMCRAID is not set
588# CONFIG_SCSI_PM8001 is not set
554# CONFIG_SCSI_SRP is not set 589# CONFIG_SCSI_SRP is not set
555# CONFIG_SCSI_BFA_FC is not set 590# CONFIG_SCSI_BFA_FC is not set
556# CONFIG_SCSI_DH is not set 591# CONFIG_SCSI_DH is not set
@@ -606,15 +641,16 @@ CONFIG_ATA_SFF=y
606# CONFIG_PATA_NS87415 is not set 641# CONFIG_PATA_NS87415 is not set
607# CONFIG_PATA_OPTI is not set 642# CONFIG_PATA_OPTI is not set
608# CONFIG_PATA_OPTIDMA is not set 643# CONFIG_PATA_OPTIDMA is not set
644# CONFIG_PATA_PDC2027X is not set
609# CONFIG_PATA_PDC_OLD is not set 645# CONFIG_PATA_PDC_OLD is not set
610# CONFIG_PATA_RADISYS is not set 646# CONFIG_PATA_RADISYS is not set
611# CONFIG_PATA_RDC is not set 647# CONFIG_PATA_RDC is not set
612# CONFIG_PATA_RZ1000 is not set 648# CONFIG_PATA_RZ1000 is not set
613# CONFIG_PATA_SC1200 is not set 649# CONFIG_PATA_SC1200 is not set
614# CONFIG_PATA_SERVERWORKS is not set 650# CONFIG_PATA_SERVERWORKS is not set
615# CONFIG_PATA_PDC2027X is not set
616# CONFIG_PATA_SIL680 is not set 651# CONFIG_PATA_SIL680 is not set
617# CONFIG_PATA_SIS is not set 652# CONFIG_PATA_SIS is not set
653# CONFIG_PATA_TOSHIBA is not set
618# CONFIG_PATA_VIA is not set 654# CONFIG_PATA_VIA is not set
619# CONFIG_PATA_WINBOND is not set 655# CONFIG_PATA_WINBOND is not set
620# CONFIG_PATA_PLATFORM is not set 656# CONFIG_PATA_PLATFORM is not set
@@ -631,7 +667,7 @@ CONFIG_ATA_SFF=y
631# 667#
632 668
633# 669#
634# See the help texts for more information. 670# The newer stack is recommended.
635# 671#
636# CONFIG_FIREWIRE is not set 672# CONFIG_FIREWIRE is not set
637# CONFIG_IEEE1394 is not set 673# CONFIG_IEEE1394 is not set
@@ -736,8 +772,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
736# CONFIG_BE2NET is not set 772# CONFIG_BE2NET is not set
737# CONFIG_TR is not set 773# CONFIG_TR is not set
738CONFIG_WLAN=y 774CONFIG_WLAN=y
739# CONFIG_WLAN_PRE80211 is not set 775# CONFIG_AIRO is not set
740# CONFIG_WLAN_80211 is not set 776# CONFIG_ATMEL is not set
777# CONFIG_PRISM54 is not set
778# CONFIG_HOSTAP is not set
741 779
742# 780#
743# Enable WiMAX (Networking options) to see the WiMAX drivers 781# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -751,6 +789,7 @@ CONFIG_WLAN=y
751# CONFIG_NETCONSOLE is not set 789# CONFIG_NETCONSOLE is not set
752# CONFIG_NETPOLL is not set 790# CONFIG_NETPOLL is not set
753# CONFIG_NET_POLL_CONTROLLER is not set 791# CONFIG_NET_POLL_CONTROLLER is not set
792# CONFIG_VMXNET3 is not set
754# CONFIG_ISDN is not set 793# CONFIG_ISDN is not set
755# CONFIG_PHONE is not set 794# CONFIG_PHONE is not set
756 795
@@ -760,6 +799,7 @@ CONFIG_WLAN=y
760CONFIG_INPUT=y 799CONFIG_INPUT=y
761# CONFIG_INPUT_FF_MEMLESS is not set 800# CONFIG_INPUT_FF_MEMLESS is not set
762# CONFIG_INPUT_POLLDEV is not set 801# CONFIG_INPUT_POLLDEV is not set
802# CONFIG_INPUT_SPARSEKMAP is not set
763 803
764# 804#
765# Userland interfaces 805# Userland interfaces
@@ -811,6 +851,7 @@ CONFIG_SERIAL_CORE=y
811CONFIG_SERIAL_CORE_CONSOLE=y 851CONFIG_SERIAL_CORE_CONSOLE=y
812# CONFIG_SERIAL_JSM is not set 852# CONFIG_SERIAL_JSM is not set
813# CONFIG_SERIAL_OF_PLATFORM is not set 853# CONFIG_SERIAL_OF_PLATFORM is not set
854# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
814CONFIG_UNIX98_PTYS=y 855CONFIG_UNIX98_PTYS=y
815# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 856# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
816CONFIG_LEGACY_PTYS=y 857CONFIG_LEGACY_PTYS=y
@@ -868,11 +909,6 @@ CONFIG_I2C_MPC=y
868# CONFIG_I2C_TAOS_EVM is not set 909# CONFIG_I2C_TAOS_EVM is not set
869 910
870# 911#
871# Graphics adapter I2C/DDC channel drivers
872#
873# CONFIG_I2C_VOODOO3 is not set
874
875#
876# Other I2C/SMBus bus drivers 912# Other I2C/SMBus bus drivers
877# 913#
878# CONFIG_I2C_PCA_PLATFORM is not set 914# CONFIG_I2C_PCA_PLATFORM is not set
@@ -881,7 +917,6 @@ CONFIG_I2C_MPC=y
881# 917#
882# Miscellaneous I2C Chip support 918# Miscellaneous I2C Chip support
883# 919#
884# CONFIG_DS1682 is not set
885# CONFIG_SENSORS_TSL2550 is not set 920# CONFIG_SENSORS_TSL2550 is not set
886# CONFIG_I2C_DEBUG_CORE is not set 921# CONFIG_I2C_DEBUG_CORE is not set
887# CONFIG_I2C_DEBUG_ALGO is not set 922# CONFIG_I2C_DEBUG_ALGO is not set
@@ -927,6 +962,7 @@ CONFIG_HWMON=y
927# CONFIG_SENSORS_GL520SM is not set 962# CONFIG_SENSORS_GL520SM is not set
928# CONFIG_SENSORS_IT87 is not set 963# CONFIG_SENSORS_IT87 is not set
929# CONFIG_SENSORS_LM63 is not set 964# CONFIG_SENSORS_LM63 is not set
965# CONFIG_SENSORS_LM73 is not set
930# CONFIG_SENSORS_LM75 is not set 966# CONFIG_SENSORS_LM75 is not set
931# CONFIG_SENSORS_LM77 is not set 967# CONFIG_SENSORS_LM77 is not set
932# CONFIG_SENSORS_LM78 is not set 968# CONFIG_SENSORS_LM78 is not set
@@ -965,6 +1001,7 @@ CONFIG_HWMON=y
965# CONFIG_SENSORS_W83L786NG is not set 1001# CONFIG_SENSORS_W83L786NG is not set
966# CONFIG_SENSORS_W83627HF is not set 1002# CONFIG_SENSORS_W83627HF is not set
967# CONFIG_SENSORS_W83627EHF is not set 1003# CONFIG_SENSORS_W83627EHF is not set
1004# CONFIG_SENSORS_LIS3_I2C is not set
968# CONFIG_THERMAL is not set 1005# CONFIG_THERMAL is not set
969CONFIG_WATCHDOG=y 1006CONFIG_WATCHDOG=y
970# CONFIG_WATCHDOG_NOWAYOUT is not set 1007# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -997,11 +1034,13 @@ CONFIG_SSB_POSSIBLE=y
997# CONFIG_TWL4030_CORE is not set 1034# CONFIG_TWL4030_CORE is not set
998# CONFIG_MFD_TMIO is not set 1035# CONFIG_MFD_TMIO is not set
999# CONFIG_PMIC_DA903X is not set 1036# CONFIG_PMIC_DA903X is not set
1037# CONFIG_PMIC_ADP5520 is not set
1000# CONFIG_MFD_WM8400 is not set 1038# CONFIG_MFD_WM8400 is not set
1001# CONFIG_MFD_WM831X is not set 1039# CONFIG_MFD_WM831X is not set
1002# CONFIG_MFD_WM8350_I2C is not set 1040# CONFIG_MFD_WM8350_I2C is not set
1003# CONFIG_MFD_PCF50633 is not set 1041# CONFIG_MFD_PCF50633 is not set
1004# CONFIG_AB3100_CORE is not set 1042# CONFIG_AB3100_CORE is not set
1043# CONFIG_MFD_88PM8607 is not set
1005# CONFIG_REGULATOR is not set 1044# CONFIG_REGULATOR is not set
1006# CONFIG_MEDIA_SUPPORT is not set 1045# CONFIG_MEDIA_SUPPORT is not set
1007 1046
@@ -1226,7 +1265,7 @@ CONFIG_FRAME_WARN=1024
1226# CONFIG_DEBUG_FS is not set 1265# CONFIG_DEBUG_FS is not set
1227# CONFIG_HEADERS_CHECK is not set 1266# CONFIG_HEADERS_CHECK is not set
1228# CONFIG_DEBUG_KERNEL is not set 1267# CONFIG_DEBUG_KERNEL is not set
1229# CONFIG_DEBUG_BUGVERBOSE is not set 1268CONFIG_DEBUG_BUGVERBOSE=y
1230# CONFIG_DEBUG_MEMORY_INIT is not set 1269# CONFIG_DEBUG_MEMORY_INIT is not set
1231# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1270# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1232# CONFIG_LATENCYTOP is not set 1271# CONFIG_LATENCYTOP is not set
@@ -1253,7 +1292,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1253# CONFIG_KEYS is not set 1292# CONFIG_KEYS is not set
1254# CONFIG_SECURITY is not set 1293# CONFIG_SECURITY is not set
1255# CONFIG_SECURITYFS is not set 1294# CONFIG_SECURITYFS is not set
1256# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1295# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1296# CONFIG_DEFAULT_SECURITY_SMACK is not set
1297# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1298CONFIG_DEFAULT_SECURITY_DAC=y
1299CONFIG_DEFAULT_SECURITY=""
1257CONFIG_CRYPTO=y 1300CONFIG_CRYPTO=y
1258 1301
1259# 1302#
diff --git a/arch/powerpc/configs/83xx/mpc837x_rdb_defconfig b/arch/powerpc/configs/83xx/mpc837x_rdb_defconfig
index 9e9158a5b190..a84fd1194e2b 100644
--- a/arch/powerpc/configs/83xx/mpc837x_rdb_defconfig
+++ b/arch/powerpc/configs/83xx/mpc837x_rdb_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:30 2009 4# Wed Jan 6 09:24:24 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -174,14 +177,41 @@ CONFIG_LBDAF=y
174# IO Schedulers 177# IO Schedulers
175# 178#
176CONFIG_IOSCHED_NOOP=y 179CONFIG_IOSCHED_NOOP=y
177CONFIG_IOSCHED_AS=y
178CONFIG_IOSCHED_DEADLINE=y 180CONFIG_IOSCHED_DEADLINE=y
179CONFIG_IOSCHED_CFQ=y 181CONFIG_IOSCHED_CFQ=y
180CONFIG_DEFAULT_AS=y
181# CONFIG_DEFAULT_DEADLINE is not set 182# CONFIG_DEFAULT_DEADLINE is not set
182# CONFIG_DEFAULT_CFQ is not set 183CONFIG_DEFAULT_CFQ=y
183# CONFIG_DEFAULT_NOOP is not set 184# CONFIG_DEFAULT_NOOP is not set
184CONFIG_DEFAULT_IOSCHED="anticipatory" 185CONFIG_DEFAULT_IOSCHED="cfq"
186# CONFIG_INLINE_SPIN_TRYLOCK is not set
187# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK is not set
189# CONFIG_INLINE_SPIN_LOCK_BH is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
191# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
192CONFIG_INLINE_SPIN_UNLOCK=y
193# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
194CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
195# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
196# CONFIG_INLINE_READ_TRYLOCK is not set
197# CONFIG_INLINE_READ_LOCK is not set
198# CONFIG_INLINE_READ_LOCK_BH is not set
199# CONFIG_INLINE_READ_LOCK_IRQ is not set
200# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
201CONFIG_INLINE_READ_UNLOCK=y
202# CONFIG_INLINE_READ_UNLOCK_BH is not set
203CONFIG_INLINE_READ_UNLOCK_IRQ=y
204# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
205# CONFIG_INLINE_WRITE_TRYLOCK is not set
206# CONFIG_INLINE_WRITE_LOCK is not set
207# CONFIG_INLINE_WRITE_LOCK_BH is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
209# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
210CONFIG_INLINE_WRITE_UNLOCK=y
211# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
212CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
213# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
214# CONFIG_MUTEX_SPIN_ON_OWNER is not set
185# CONFIG_FREEZER is not set 215# CONFIG_FREEZER is not set
186 216
187# 217#
@@ -259,6 +289,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
292CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +306,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 309# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -398,9 +427,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
398# CONFIG_AF_RXRPC is not set 427# CONFIG_AF_RXRPC is not set
399CONFIG_WIRELESS=y 428CONFIG_WIRELESS=y
400# CONFIG_CFG80211 is not set 429# CONFIG_CFG80211 is not set
401CONFIG_CFG80211_DEFAULT_PS_VALUE=0
402CONFIG_WIRELESS_OLD_REGULATORY=y
403# CONFIG_WIRELESS_EXT is not set
404# CONFIG_LIB80211 is not set 430# CONFIG_LIB80211 is not set
405 431
406# 432#
@@ -438,6 +464,10 @@ CONFIG_BLK_DEV=y
438# CONFIG_BLK_DEV_COW_COMMON is not set 464# CONFIG_BLK_DEV_COW_COMMON is not set
439CONFIG_BLK_DEV_LOOP=y 465CONFIG_BLK_DEV_LOOP=y
440# CONFIG_BLK_DEV_CRYPTOLOOP is not set 466# CONFIG_BLK_DEV_CRYPTOLOOP is not set
467
468#
469# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
470#
441# CONFIG_BLK_DEV_NBD is not set 471# CONFIG_BLK_DEV_NBD is not set
442# CONFIG_BLK_DEV_SX8 is not set 472# CONFIG_BLK_DEV_SX8 is not set
443# CONFIG_BLK_DEV_UB is not set 473# CONFIG_BLK_DEV_UB is not set
@@ -449,6 +479,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
449# CONFIG_ATA_OVER_ETH is not set 479# CONFIG_ATA_OVER_ETH is not set
450# CONFIG_BLK_DEV_HD is not set 480# CONFIG_BLK_DEV_HD is not set
451CONFIG_MISC_DEVICES=y 481CONFIG_MISC_DEVICES=y
482# CONFIG_AD525X_DPOT is not set
452# CONFIG_PHANTOM is not set 483# CONFIG_PHANTOM is not set
453# CONFIG_SGI_IOC4 is not set 484# CONFIG_SGI_IOC4 is not set
454# CONFIG_TIFM_CORE is not set 485# CONFIG_TIFM_CORE is not set
@@ -456,6 +487,7 @@ CONFIG_MISC_DEVICES=y
456# CONFIG_ENCLOSURE_SERVICES is not set 487# CONFIG_ENCLOSURE_SERVICES is not set
457# CONFIG_HP_ILO is not set 488# CONFIG_HP_ILO is not set
458# CONFIG_ISL29003 is not set 489# CONFIG_ISL29003 is not set
490# CONFIG_DS1682 is not set
459# CONFIG_C2PORT is not set 491# CONFIG_C2PORT is not set
460 492
461# 493#
@@ -507,7 +539,9 @@ CONFIG_SCSI_LOWLEVEL=y
507# CONFIG_SCSI_BNX2_ISCSI is not set 539# CONFIG_SCSI_BNX2_ISCSI is not set
508# CONFIG_BE2ISCSI is not set 540# CONFIG_BE2ISCSI is not set
509# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 541# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
542# CONFIG_SCSI_HPSA is not set
510# CONFIG_SCSI_3W_9XXX is not set 543# CONFIG_SCSI_3W_9XXX is not set
544# CONFIG_SCSI_3W_SAS is not set
511# CONFIG_SCSI_ACARD is not set 545# CONFIG_SCSI_ACARD is not set
512# CONFIG_SCSI_AACRAID is not set 546# CONFIG_SCSI_AACRAID is not set
513# CONFIG_SCSI_AIC7XXX is not set 547# CONFIG_SCSI_AIC7XXX is not set
@@ -546,6 +580,7 @@ CONFIG_SCSI_LOWLEVEL=y
546# CONFIG_SCSI_NSP32 is not set 580# CONFIG_SCSI_NSP32 is not set
547# CONFIG_SCSI_DEBUG is not set 581# CONFIG_SCSI_DEBUG is not set
548# CONFIG_SCSI_PMCRAID is not set 582# CONFIG_SCSI_PMCRAID is not set
583# CONFIG_SCSI_PM8001 is not set
549# CONFIG_SCSI_SRP is not set 584# CONFIG_SCSI_SRP is not set
550# CONFIG_SCSI_BFA_FC is not set 585# CONFIG_SCSI_BFA_FC is not set
551# CONFIG_SCSI_DH is not set 586# CONFIG_SCSI_DH is not set
@@ -601,15 +636,16 @@ CONFIG_ATA_SFF=y
601# CONFIG_PATA_NS87415 is not set 636# CONFIG_PATA_NS87415 is not set
602# CONFIG_PATA_OPTI is not set 637# CONFIG_PATA_OPTI is not set
603# CONFIG_PATA_OPTIDMA is not set 638# CONFIG_PATA_OPTIDMA is not set
639# CONFIG_PATA_PDC2027X is not set
604# CONFIG_PATA_PDC_OLD is not set 640# CONFIG_PATA_PDC_OLD is not set
605# CONFIG_PATA_RADISYS is not set 641# CONFIG_PATA_RADISYS is not set
606# CONFIG_PATA_RDC is not set 642# CONFIG_PATA_RDC is not set
607# CONFIG_PATA_RZ1000 is not set 643# CONFIG_PATA_RZ1000 is not set
608# CONFIG_PATA_SC1200 is not set 644# CONFIG_PATA_SC1200 is not set
609# CONFIG_PATA_SERVERWORKS is not set 645# CONFIG_PATA_SERVERWORKS is not set
610# CONFIG_PATA_PDC2027X is not set
611# CONFIG_PATA_SIL680 is not set 646# CONFIG_PATA_SIL680 is not set
612# CONFIG_PATA_SIS is not set 647# CONFIG_PATA_SIS is not set
648# CONFIG_PATA_TOSHIBA is not set
613# CONFIG_PATA_VIA is not set 649# CONFIG_PATA_VIA is not set
614# CONFIG_PATA_WINBOND is not set 650# CONFIG_PATA_WINBOND is not set
615# CONFIG_PATA_PLATFORM is not set 651# CONFIG_PATA_PLATFORM is not set
@@ -638,7 +674,7 @@ CONFIG_MD_RAID6_PQ=y
638# 674#
639 675
640# 676#
641# See the help texts for more information. 677# The newer stack is recommended.
642# 678#
643# CONFIG_FIREWIRE is not set 679# CONFIG_FIREWIRE is not set
644# CONFIG_IEEE1394 is not set 680# CONFIG_IEEE1394 is not set
@@ -725,8 +761,11 @@ CONFIG_GIANFAR=y
725# CONFIG_NETDEV_10000 is not set 761# CONFIG_NETDEV_10000 is not set
726# CONFIG_TR is not set 762# CONFIG_TR is not set
727CONFIG_WLAN=y 763CONFIG_WLAN=y
728# CONFIG_WLAN_PRE80211 is not set 764# CONFIG_AIRO is not set
729# CONFIG_WLAN_80211 is not set 765# CONFIG_ATMEL is not set
766# CONFIG_PRISM54 is not set
767# CONFIG_USB_ZD1201 is not set
768# CONFIG_HOSTAP is not set
730 769
731# 770#
732# Enable WiMAX (Networking options) to see the WiMAX drivers 771# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -749,6 +788,7 @@ CONFIG_WLAN=y
749# CONFIG_NETCONSOLE is not set 788# CONFIG_NETCONSOLE is not set
750# CONFIG_NETPOLL is not set 789# CONFIG_NETPOLL is not set
751# CONFIG_NET_POLL_CONTROLLER is not set 790# CONFIG_NET_POLL_CONTROLLER is not set
791# CONFIG_VMXNET3 is not set
752# CONFIG_ISDN is not set 792# CONFIG_ISDN is not set
753# CONFIG_PHONE is not set 793# CONFIG_PHONE is not set
754 794
@@ -758,6 +798,7 @@ CONFIG_WLAN=y
758CONFIG_INPUT=y 798CONFIG_INPUT=y
759CONFIG_INPUT_FF_MEMLESS=m 799CONFIG_INPUT_FF_MEMLESS=m
760# CONFIG_INPUT_POLLDEV is not set 800# CONFIG_INPUT_POLLDEV is not set
801# CONFIG_INPUT_SPARSEKMAP is not set
761 802
762# 803#
763# Userland interfaces 804# Userland interfaces
@@ -809,6 +850,7 @@ CONFIG_SERIAL_CORE=y
809CONFIG_SERIAL_CORE_CONSOLE=y 850CONFIG_SERIAL_CORE_CONSOLE=y
810# CONFIG_SERIAL_JSM is not set 851# CONFIG_SERIAL_JSM is not set
811# CONFIG_SERIAL_OF_PLATFORM is not set 852# CONFIG_SERIAL_OF_PLATFORM is not set
853# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
812CONFIG_UNIX98_PTYS=y 854CONFIG_UNIX98_PTYS=y
813# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 855# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
814CONFIG_LEGACY_PTYS=y 856CONFIG_LEGACY_PTYS=y
@@ -867,11 +909,6 @@ CONFIG_I2C_MPC=y
867# CONFIG_I2C_TINY_USB is not set 909# CONFIG_I2C_TINY_USB is not set
868 910
869# 911#
870# Graphics adapter I2C/DDC channel drivers
871#
872# CONFIG_I2C_VOODOO3 is not set
873
874#
875# Other I2C/SMBus bus drivers 912# Other I2C/SMBus bus drivers
876# 913#
877# CONFIG_I2C_PCA_PLATFORM is not set 914# CONFIG_I2C_PCA_PLATFORM is not set
@@ -880,7 +917,6 @@ CONFIG_I2C_MPC=y
880# 917#
881# Miscellaneous I2C Chip support 918# Miscellaneous I2C Chip support
882# 919#
883# CONFIG_DS1682 is not set
884# CONFIG_SENSORS_TSL2550 is not set 920# CONFIG_SENSORS_TSL2550 is not set
885# CONFIG_I2C_DEBUG_CORE is not set 921# CONFIG_I2C_DEBUG_CORE is not set
886# CONFIG_I2C_DEBUG_ALGO is not set 922# CONFIG_I2C_DEBUG_ALGO is not set
@@ -926,6 +962,7 @@ CONFIG_HWMON=y
926# CONFIG_SENSORS_GL520SM is not set 962# CONFIG_SENSORS_GL520SM is not set
927# CONFIG_SENSORS_IT87 is not set 963# CONFIG_SENSORS_IT87 is not set
928# CONFIG_SENSORS_LM63 is not set 964# CONFIG_SENSORS_LM63 is not set
965# CONFIG_SENSORS_LM73 is not set
929# CONFIG_SENSORS_LM75 is not set 966# CONFIG_SENSORS_LM75 is not set
930# CONFIG_SENSORS_LM77 is not set 967# CONFIG_SENSORS_LM77 is not set
931# CONFIG_SENSORS_LM78 is not set 968# CONFIG_SENSORS_LM78 is not set
@@ -964,6 +1001,7 @@ CONFIG_HWMON=y
964# CONFIG_SENSORS_W83L786NG is not set 1001# CONFIG_SENSORS_W83L786NG is not set
965# CONFIG_SENSORS_W83627HF is not set 1002# CONFIG_SENSORS_W83627HF is not set
966# CONFIG_SENSORS_W83627EHF is not set 1003# CONFIG_SENSORS_W83627EHF is not set
1004# CONFIG_SENSORS_LIS3_I2C is not set
967# CONFIG_THERMAL is not set 1005# CONFIG_THERMAL is not set
968CONFIG_WATCHDOG=y 1006CONFIG_WATCHDOG=y
969# CONFIG_WATCHDOG_NOWAYOUT is not set 1007# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1001,11 +1039,13 @@ CONFIG_SSB_POSSIBLE=y
1001# CONFIG_TWL4030_CORE is not set 1039# CONFIG_TWL4030_CORE is not set
1002# CONFIG_MFD_TMIO is not set 1040# CONFIG_MFD_TMIO is not set
1003# CONFIG_PMIC_DA903X is not set 1041# CONFIG_PMIC_DA903X is not set
1042# CONFIG_PMIC_ADP5520 is not set
1004# CONFIG_MFD_WM8400 is not set 1043# CONFIG_MFD_WM8400 is not set
1005# CONFIG_MFD_WM831X is not set 1044# CONFIG_MFD_WM831X is not set
1006# CONFIG_MFD_WM8350_I2C is not set 1045# CONFIG_MFD_WM8350_I2C is not set
1007# CONFIG_MFD_PCF50633 is not set 1046# CONFIG_MFD_PCF50633 is not set
1008# CONFIG_AB3100_CORE is not set 1047# CONFIG_AB3100_CORE is not set
1048# CONFIG_MFD_88PM8607 is not set
1009# CONFIG_REGULATOR is not set 1049# CONFIG_REGULATOR is not set
1010# CONFIG_MEDIA_SUPPORT is not set 1050# CONFIG_MEDIA_SUPPORT is not set
1011 1051
@@ -1097,6 +1137,7 @@ CONFIG_USB_MON=y
1097CONFIG_USB_EHCI_HCD=y 1137CONFIG_USB_EHCI_HCD=y
1098CONFIG_USB_EHCI_ROOT_HUB_TT=y 1138CONFIG_USB_EHCI_ROOT_HUB_TT=y
1099# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1139# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1140# CONFIG_XPS_USB_HCD_XILINX is not set
1100CONFIG_USB_EHCI_FSL=y 1141CONFIG_USB_EHCI_FSL=y
1101CONFIG_USB_EHCI_HCD_PPC_OF=y 1142CONFIG_USB_EHCI_HCD_PPC_OF=y
1102# CONFIG_USB_OXU210HP_HCD is not set 1143# CONFIG_USB_OXU210HP_HCD is not set
@@ -1385,7 +1426,7 @@ CONFIG_FRAME_WARN=1024
1385# CONFIG_DEBUG_FS is not set 1426# CONFIG_DEBUG_FS is not set
1386# CONFIG_HEADERS_CHECK is not set 1427# CONFIG_HEADERS_CHECK is not set
1387# CONFIG_DEBUG_KERNEL is not set 1428# CONFIG_DEBUG_KERNEL is not set
1388# CONFIG_DEBUG_BUGVERBOSE is not set 1429CONFIG_DEBUG_BUGVERBOSE=y
1389# CONFIG_DEBUG_MEMORY_INIT is not set 1430# CONFIG_DEBUG_MEMORY_INIT is not set
1390# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1431# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1391# CONFIG_LATENCYTOP is not set 1432# CONFIG_LATENCYTOP is not set
@@ -1412,7 +1453,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1412# CONFIG_KEYS is not set 1453# CONFIG_KEYS is not set
1413# CONFIG_SECURITY is not set 1454# CONFIG_SECURITY is not set
1414# CONFIG_SECURITYFS is not set 1455# CONFIG_SECURITYFS is not set
1415# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1456# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1457# CONFIG_DEFAULT_SECURITY_SMACK is not set
1458# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1459CONFIG_DEFAULT_SECURITY_DAC=y
1460CONFIG_DEFAULT_SECURITY=""
1416CONFIG_XOR_BLOCKS=y 1461CONFIG_XOR_BLOCKS=y
1417CONFIG_ASYNC_CORE=y 1462CONFIG_ASYNC_CORE=y
1418CONFIG_ASYNC_MEMCPY=y 1463CONFIG_ASYNC_MEMCPY=y
diff --git a/arch/powerpc/configs/83xx/sbc834x_defconfig b/arch/powerpc/configs/83xx/sbc834x_defconfig
index 6b399154970f..72c2067137b9 100644
--- a/arch/powerpc/configs/83xx/sbc834x_defconfig
+++ b/arch/powerpc/configs/83xx/sbc834x_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:31 2009 4# Wed Jan 6 09:24:25 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -172,14 +175,41 @@ CONFIG_LBDAF=y
172# IO Schedulers 175# IO Schedulers
173# 176#
174CONFIG_IOSCHED_NOOP=y 177CONFIG_IOSCHED_NOOP=y
175CONFIG_IOSCHED_AS=y
176CONFIG_IOSCHED_DEADLINE=y 178CONFIG_IOSCHED_DEADLINE=y
177CONFIG_IOSCHED_CFQ=y 179CONFIG_IOSCHED_CFQ=y
178CONFIG_DEFAULT_AS=y
179# CONFIG_DEFAULT_DEADLINE is not set 180# CONFIG_DEFAULT_DEADLINE is not set
180# CONFIG_DEFAULT_CFQ is not set 181CONFIG_DEFAULT_CFQ=y
181# CONFIG_DEFAULT_NOOP is not set 182# CONFIG_DEFAULT_NOOP is not set
182CONFIG_DEFAULT_IOSCHED="anticipatory" 183CONFIG_DEFAULT_IOSCHED="cfq"
184# CONFIG_INLINE_SPIN_TRYLOCK is not set
185# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK is not set
187# CONFIG_INLINE_SPIN_LOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
190CONFIG_INLINE_SPIN_UNLOCK=y
191# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
192CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
193# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
194# CONFIG_INLINE_READ_TRYLOCK is not set
195# CONFIG_INLINE_READ_LOCK is not set
196# CONFIG_INLINE_READ_LOCK_BH is not set
197# CONFIG_INLINE_READ_LOCK_IRQ is not set
198# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
199CONFIG_INLINE_READ_UNLOCK=y
200# CONFIG_INLINE_READ_UNLOCK_BH is not set
201CONFIG_INLINE_READ_UNLOCK_IRQ=y
202# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
203# CONFIG_INLINE_WRITE_TRYLOCK is not set
204# CONFIG_INLINE_WRITE_LOCK is not set
205# CONFIG_INLINE_WRITE_LOCK_BH is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
208CONFIG_INLINE_WRITE_UNLOCK=y
209# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
210CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
211# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
212# CONFIG_MUTEX_SPIN_ON_OWNER is not set
183# CONFIG_FREEZER is not set 213# CONFIG_FREEZER is not set
184 214
185# 215#
@@ -257,6 +287,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
257CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 287CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
258# CONFIG_KEXEC is not set 288# CONFIG_KEXEC is not set
259# CONFIG_CRASH_DUMP is not set 289# CONFIG_CRASH_DUMP is not set
290CONFIG_SPARSE_IRQ=y
260CONFIG_MAX_ACTIVE_REGIONS=32 291CONFIG_MAX_ACTIVE_REGIONS=32
261CONFIG_ARCH_FLATMEM_ENABLE=y 292CONFIG_ARCH_FLATMEM_ENABLE=y
262CONFIG_ARCH_POPULATES_NODE_MAP=y 293CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -273,8 +304,6 @@ CONFIG_MIGRATION=y
273CONFIG_ZONE_DMA_FLAG=1 304CONFIG_ZONE_DMA_FLAG=1
274CONFIG_BOUNCE=y 305CONFIG_BOUNCE=y
275CONFIG_VIRT_TO_BUS=y 306CONFIG_VIRT_TO_BUS=y
276CONFIG_HAVE_MLOCK=y
277CONFIG_HAVE_MLOCKED_PAGE_BIT=y
278# CONFIG_KSM is not set 307# CONFIG_KSM is not set
279CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 308CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
280CONFIG_PPC_4K_PAGES=y 309CONFIG_PPC_4K_PAGES=y
@@ -401,9 +430,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
401# CONFIG_AF_RXRPC is not set 430# CONFIG_AF_RXRPC is not set
402CONFIG_WIRELESS=y 431CONFIG_WIRELESS=y
403# CONFIG_CFG80211 is not set 432# CONFIG_CFG80211 is not set
404CONFIG_CFG80211_DEFAULT_PS_VALUE=0
405CONFIG_WIRELESS_OLD_REGULATORY=y
406# CONFIG_WIRELESS_EXT is not set
407# CONFIG_LIB80211 is not set 433# CONFIG_LIB80211 is not set
408 434
409# 435#
@@ -524,6 +550,10 @@ CONFIG_BLK_DEV=y
524# CONFIG_BLK_DEV_COW_COMMON is not set 550# CONFIG_BLK_DEV_COW_COMMON is not set
525CONFIG_BLK_DEV_LOOP=y 551CONFIG_BLK_DEV_LOOP=y
526# CONFIG_BLK_DEV_CRYPTOLOOP is not set 552# CONFIG_BLK_DEV_CRYPTOLOOP is not set
553
554#
555# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
556#
527# CONFIG_BLK_DEV_NBD is not set 557# CONFIG_BLK_DEV_NBD is not set
528# CONFIG_BLK_DEV_SX8 is not set 558# CONFIG_BLK_DEV_SX8 is not set
529# CONFIG_BLK_DEV_UB is not set 559# CONFIG_BLK_DEV_UB is not set
@@ -535,6 +565,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
535# CONFIG_ATA_OVER_ETH is not set 565# CONFIG_ATA_OVER_ETH is not set
536# CONFIG_BLK_DEV_HD is not set 566# CONFIG_BLK_DEV_HD is not set
537CONFIG_MISC_DEVICES=y 567CONFIG_MISC_DEVICES=y
568# CONFIG_AD525X_DPOT is not set
538# CONFIG_PHANTOM is not set 569# CONFIG_PHANTOM is not set
539# CONFIG_SGI_IOC4 is not set 570# CONFIG_SGI_IOC4 is not set
540# CONFIG_TIFM_CORE is not set 571# CONFIG_TIFM_CORE is not set
@@ -542,6 +573,7 @@ CONFIG_MISC_DEVICES=y
542# CONFIG_ENCLOSURE_SERVICES is not set 573# CONFIG_ENCLOSURE_SERVICES is not set
543# CONFIG_HP_ILO is not set 574# CONFIG_HP_ILO is not set
544# CONFIG_ISL29003 is not set 575# CONFIG_ISL29003 is not set
576# CONFIG_DS1682 is not set
545# CONFIG_C2PORT is not set 577# CONFIG_C2PORT is not set
546 578
547# 579#
@@ -604,7 +636,7 @@ CONFIG_SCSI_WAIT_SCAN=m
604# 636#
605 637
606# 638#
607# See the help texts for more information. 639# The newer stack is recommended.
608# 640#
609# CONFIG_FIREWIRE is not set 641# CONFIG_FIREWIRE is not set
610# CONFIG_IEEE1394 is not set 642# CONFIG_IEEE1394 is not set
@@ -691,8 +723,11 @@ CONFIG_GIANFAR=y
691# CONFIG_NETDEV_10000 is not set 723# CONFIG_NETDEV_10000 is not set
692# CONFIG_TR is not set 724# CONFIG_TR is not set
693CONFIG_WLAN=y 725CONFIG_WLAN=y
694# CONFIG_WLAN_PRE80211 is not set 726# CONFIG_AIRO is not set
695# CONFIG_WLAN_80211 is not set 727# CONFIG_ATMEL is not set
728# CONFIG_PRISM54 is not set
729# CONFIG_USB_ZD1201 is not set
730# CONFIG_HOSTAP is not set
696 731
697# 732#
698# Enable WiMAX (Networking options) to see the WiMAX drivers 733# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -715,6 +750,7 @@ CONFIG_WLAN=y
715# CONFIG_NETCONSOLE is not set 750# CONFIG_NETCONSOLE is not set
716# CONFIG_NETPOLL is not set 751# CONFIG_NETPOLL is not set
717# CONFIG_NET_POLL_CONTROLLER is not set 752# CONFIG_NET_POLL_CONTROLLER is not set
753# CONFIG_VMXNET3 is not set
718# CONFIG_ISDN is not set 754# CONFIG_ISDN is not set
719# CONFIG_PHONE is not set 755# CONFIG_PHONE is not set
720 756
@@ -724,6 +760,7 @@ CONFIG_WLAN=y
724CONFIG_INPUT=y 760CONFIG_INPUT=y
725# CONFIG_INPUT_FF_MEMLESS is not set 761# CONFIG_INPUT_FF_MEMLESS is not set
726# CONFIG_INPUT_POLLDEV is not set 762# CONFIG_INPUT_POLLDEV is not set
763# CONFIG_INPUT_SPARSEKMAP is not set
727 764
728# 765#
729# Userland interfaces 766# Userland interfaces
@@ -775,6 +812,7 @@ CONFIG_SERIAL_CORE=y
775CONFIG_SERIAL_CORE_CONSOLE=y 812CONFIG_SERIAL_CORE_CONSOLE=y
776# CONFIG_SERIAL_JSM is not set 813# CONFIG_SERIAL_JSM is not set
777# CONFIG_SERIAL_OF_PLATFORM is not set 814# CONFIG_SERIAL_OF_PLATFORM is not set
815# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
778CONFIG_UNIX98_PTYS=y 816CONFIG_UNIX98_PTYS=y
779# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 817# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
780CONFIG_LEGACY_PTYS=y 818CONFIG_LEGACY_PTYS=y
@@ -833,11 +871,6 @@ CONFIG_I2C_MPC=y
833# CONFIG_I2C_TINY_USB is not set 871# CONFIG_I2C_TINY_USB is not set
834 872
835# 873#
836# Graphics adapter I2C/DDC channel drivers
837#
838# CONFIG_I2C_VOODOO3 is not set
839
840#
841# Other I2C/SMBus bus drivers 874# Other I2C/SMBus bus drivers
842# 875#
843# CONFIG_I2C_PCA_PLATFORM is not set 876# CONFIG_I2C_PCA_PLATFORM is not set
@@ -846,7 +879,6 @@ CONFIG_I2C_MPC=y
846# 879#
847# Miscellaneous I2C Chip support 880# Miscellaneous I2C Chip support
848# 881#
849# CONFIG_DS1682 is not set
850# CONFIG_SENSORS_TSL2550 is not set 882# CONFIG_SENSORS_TSL2550 is not set
851# CONFIG_I2C_DEBUG_CORE is not set 883# CONFIG_I2C_DEBUG_CORE is not set
852# CONFIG_I2C_DEBUG_ALGO is not set 884# CONFIG_I2C_DEBUG_ALGO is not set
@@ -892,6 +924,7 @@ CONFIG_HWMON=y
892# CONFIG_SENSORS_GL520SM is not set 924# CONFIG_SENSORS_GL520SM is not set
893# CONFIG_SENSORS_IT87 is not set 925# CONFIG_SENSORS_IT87 is not set
894# CONFIG_SENSORS_LM63 is not set 926# CONFIG_SENSORS_LM63 is not set
927# CONFIG_SENSORS_LM73 is not set
895# CONFIG_SENSORS_LM75 is not set 928# CONFIG_SENSORS_LM75 is not set
896# CONFIG_SENSORS_LM77 is not set 929# CONFIG_SENSORS_LM77 is not set
897# CONFIG_SENSORS_LM78 is not set 930# CONFIG_SENSORS_LM78 is not set
@@ -930,6 +963,7 @@ CONFIG_HWMON=y
930# CONFIG_SENSORS_W83L786NG is not set 963# CONFIG_SENSORS_W83L786NG is not set
931# CONFIG_SENSORS_W83627HF is not set 964# CONFIG_SENSORS_W83627HF is not set
932# CONFIG_SENSORS_W83627EHF is not set 965# CONFIG_SENSORS_W83627EHF is not set
966# CONFIG_SENSORS_LIS3_I2C is not set
933# CONFIG_THERMAL is not set 967# CONFIG_THERMAL is not set
934CONFIG_WATCHDOG=y 968CONFIG_WATCHDOG=y
935# CONFIG_WATCHDOG_NOWAYOUT is not set 969# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -967,11 +1001,13 @@ CONFIG_SSB_POSSIBLE=y
967# CONFIG_TWL4030_CORE is not set 1001# CONFIG_TWL4030_CORE is not set
968# CONFIG_MFD_TMIO is not set 1002# CONFIG_MFD_TMIO is not set
969# CONFIG_PMIC_DA903X is not set 1003# CONFIG_PMIC_DA903X is not set
1004# CONFIG_PMIC_ADP5520 is not set
970# CONFIG_MFD_WM8400 is not set 1005# CONFIG_MFD_WM8400 is not set
971# CONFIG_MFD_WM831X is not set 1006# CONFIG_MFD_WM831X is not set
972# CONFIG_MFD_WM8350_I2C is not set 1007# CONFIG_MFD_WM8350_I2C is not set
973# CONFIG_MFD_PCF50633 is not set 1008# CONFIG_MFD_PCF50633 is not set
974# CONFIG_AB3100_CORE is not set 1009# CONFIG_AB3100_CORE is not set
1010# CONFIG_MFD_88PM8607 is not set
975# CONFIG_REGULATOR is not set 1011# CONFIG_REGULATOR is not set
976# CONFIG_MEDIA_SUPPORT is not set 1012# CONFIG_MEDIA_SUPPORT is not set
977 1013
@@ -1039,6 +1075,7 @@ CONFIG_USB_MON=y
1039CONFIG_USB_EHCI_HCD=y 1075CONFIG_USB_EHCI_HCD=y
1040CONFIG_USB_EHCI_ROOT_HUB_TT=y 1076CONFIG_USB_EHCI_ROOT_HUB_TT=y
1041# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1077# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1078# CONFIG_XPS_USB_HCD_XILINX is not set
1042CONFIG_USB_EHCI_FSL=y 1079CONFIG_USB_EHCI_FSL=y
1043CONFIG_USB_EHCI_HCD_PPC_OF=y 1080CONFIG_USB_EHCI_HCD_PPC_OF=y
1044# CONFIG_USB_OXU210HP_HCD is not set 1081# CONFIG_USB_OXU210HP_HCD is not set
@@ -1321,7 +1358,7 @@ CONFIG_FRAME_WARN=1024
1321# CONFIG_DEBUG_FS is not set 1358# CONFIG_DEBUG_FS is not set
1322# CONFIG_HEADERS_CHECK is not set 1359# CONFIG_HEADERS_CHECK is not set
1323# CONFIG_DEBUG_KERNEL is not set 1360# CONFIG_DEBUG_KERNEL is not set
1324# CONFIG_DEBUG_BUGVERBOSE is not set 1361CONFIG_DEBUG_BUGVERBOSE=y
1325# CONFIG_DEBUG_MEMORY_INIT is not set 1362# CONFIG_DEBUG_MEMORY_INIT is not set
1326# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1363# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1327# CONFIG_LATENCYTOP is not set 1364# CONFIG_LATENCYTOP is not set
@@ -1348,7 +1385,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1348# CONFIG_KEYS is not set 1385# CONFIG_KEYS is not set
1349# CONFIG_SECURITY is not set 1386# CONFIG_SECURITY is not set
1350# CONFIG_SECURITYFS is not set 1387# CONFIG_SECURITYFS is not set
1351# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1388# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1389# CONFIG_DEFAULT_SECURITY_SMACK is not set
1390# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1391CONFIG_DEFAULT_SECURITY_DAC=y
1392CONFIG_DEFAULT_SECURITY=""
1352CONFIG_CRYPTO=y 1393CONFIG_CRYPTO=y
1353 1394
1354# 1395#
diff --git a/arch/powerpc/configs/85xx/ksi8560_defconfig b/arch/powerpc/configs/85xx/ksi8560_defconfig
index a5bde8da462c..21dad38b156f 100644
--- a/arch/powerpc/configs/85xx/ksi8560_defconfig
+++ b/arch/powerpc/configs/85xx/ksi8560_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:32 2009 4# Wed Jan 6 09:24:26 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -89,6 +92,7 @@ CONFIG_SYSVIPC_SYSCTL=y
89# 92#
90CONFIG_TREE_RCU=y 93CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set 94# CONFIG_TREE_PREEMPT_RCU is not set
95# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set 96# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32 97CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set 98# CONFIG_RCU_FANOUT_EXACT is not set
@@ -169,14 +173,41 @@ CONFIG_LBDAF=y
169# IO Schedulers 173# IO Schedulers
170# 174#
171CONFIG_IOSCHED_NOOP=y 175CONFIG_IOSCHED_NOOP=y
172CONFIG_IOSCHED_AS=y
173CONFIG_IOSCHED_DEADLINE=y 176CONFIG_IOSCHED_DEADLINE=y
174CONFIG_IOSCHED_CFQ=y 177CONFIG_IOSCHED_CFQ=y
175CONFIG_DEFAULT_AS=y
176# CONFIG_DEFAULT_DEADLINE is not set 178# CONFIG_DEFAULT_DEADLINE is not set
177# CONFIG_DEFAULT_CFQ is not set 179CONFIG_DEFAULT_CFQ=y
178# CONFIG_DEFAULT_NOOP is not set 180# CONFIG_DEFAULT_NOOP is not set
179CONFIG_DEFAULT_IOSCHED="anticipatory" 181CONFIG_DEFAULT_IOSCHED="cfq"
182# CONFIG_INLINE_SPIN_TRYLOCK is not set
183# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
184# CONFIG_INLINE_SPIN_LOCK is not set
185# CONFIG_INLINE_SPIN_LOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
187# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
188CONFIG_INLINE_SPIN_UNLOCK=y
189# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
190CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
191# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
192# CONFIG_INLINE_READ_TRYLOCK is not set
193# CONFIG_INLINE_READ_LOCK is not set
194# CONFIG_INLINE_READ_LOCK_BH is not set
195# CONFIG_INLINE_READ_LOCK_IRQ is not set
196# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
197CONFIG_INLINE_READ_UNLOCK=y
198# CONFIG_INLINE_READ_UNLOCK_BH is not set
199CONFIG_INLINE_READ_UNLOCK_IRQ=y
200# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
201# CONFIG_INLINE_WRITE_TRYLOCK is not set
202# CONFIG_INLINE_WRITE_LOCK is not set
203# CONFIG_INLINE_WRITE_LOCK_BH is not set
204# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
205# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
206CONFIG_INLINE_WRITE_UNLOCK=y
207# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
208CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
209# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
210# CONFIG_MUTEX_SPIN_ON_OWNER is not set
180# CONFIG_FREEZER is not set 211# CONFIG_FREEZER is not set
181 212
182# 213#
@@ -185,7 +216,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
185# CONFIG_PPC_CELL is not set 216# CONFIG_PPC_CELL is not set
186# CONFIG_PPC_CELL_NATIVE is not set 217# CONFIG_PPC_CELL_NATIVE is not set
187# CONFIG_PQ2ADS is not set 218# CONFIG_PQ2ADS is not set
188CONFIG_MPC85xx=y 219CONFIG_FSL_SOC_BOOKE=y
189# CONFIG_MPC8540_ADS is not set 220# CONFIG_MPC8540_ADS is not set
190# CONFIG_MPC8560_ADS is not set 221# CONFIG_MPC8560_ADS is not set
191# CONFIG_MPC85xx_CDS is not set 222# CONFIG_MPC85xx_CDS is not set
@@ -204,6 +235,7 @@ CONFIG_KSI8560=y
204# CONFIG_TQM8560 is not set 235# CONFIG_TQM8560 is not set
205# CONFIG_SBC8548 is not set 236# CONFIG_SBC8548 is not set
206# CONFIG_SBC8560 is not set 237# CONFIG_SBC8560 is not set
238# CONFIG_P4080_DS is not set
207# CONFIG_IPIC is not set 239# CONFIG_IPIC is not set
208CONFIG_MPIC=y 240CONFIG_MPIC=y
209# CONFIG_MPIC_WEIRD is not set 241# CONFIG_MPIC_WEIRD is not set
@@ -248,6 +280,7 @@ CONFIG_MATH_EMULATION=y
248CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 280CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
249CONFIG_ARCH_HAS_WALK_MEMORY=y 281CONFIG_ARCH_HAS_WALK_MEMORY=y
250CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 282CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
283CONFIG_SPARSE_IRQ=y
251CONFIG_MAX_ACTIVE_REGIONS=32 284CONFIG_MAX_ACTIVE_REGIONS=32
252CONFIG_ARCH_FLATMEM_ENABLE=y 285CONFIG_ARCH_FLATMEM_ENABLE=y
253CONFIG_ARCH_POPULATES_NODE_MAP=y 286CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -264,8 +297,6 @@ CONFIG_MIGRATION=y
264CONFIG_ZONE_DMA_FLAG=1 297CONFIG_ZONE_DMA_FLAG=1
265CONFIG_BOUNCE=y 298CONFIG_BOUNCE=y
266CONFIG_VIRT_TO_BUS=y 299CONFIG_VIRT_TO_BUS=y
267CONFIG_HAVE_MLOCK=y
268CONFIG_HAVE_MLOCKED_PAGE_BIT=y
269# CONFIG_KSM is not set 300# CONFIG_KSM is not set
270CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 301CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
271CONFIG_PPC_4K_PAGES=y 302CONFIG_PPC_4K_PAGES=y
@@ -385,9 +416,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
385# CONFIG_AF_RXRPC is not set 416# CONFIG_AF_RXRPC is not set
386CONFIG_WIRELESS=y 417CONFIG_WIRELESS=y
387# CONFIG_CFG80211 is not set 418# CONFIG_CFG80211 is not set
388CONFIG_CFG80211_DEFAULT_PS_VALUE=0
389CONFIG_WIRELESS_OLD_REGULATORY=y
390# CONFIG_WIRELESS_EXT is not set
391# CONFIG_LIB80211 is not set 419# CONFIG_LIB80211 is not set
392 420
393# 421#
@@ -503,6 +531,10 @@ CONFIG_BLK_DEV=y
503# CONFIG_BLK_DEV_COW_COMMON is not set 531# CONFIG_BLK_DEV_COW_COMMON is not set
504CONFIG_BLK_DEV_LOOP=y 532CONFIG_BLK_DEV_LOOP=y
505# CONFIG_BLK_DEV_CRYPTOLOOP is not set 533# CONFIG_BLK_DEV_CRYPTOLOOP is not set
534
535#
536# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
537#
506# CONFIG_BLK_DEV_NBD is not set 538# CONFIG_BLK_DEV_NBD is not set
507CONFIG_BLK_DEV_RAM=y 539CONFIG_BLK_DEV_RAM=y
508CONFIG_BLK_DEV_RAM_COUNT=16 540CONFIG_BLK_DEV_RAM_COUNT=16
@@ -603,8 +635,7 @@ CONFIG_GIANFAR=y
603# CONFIG_MV643XX_ETH is not set 635# CONFIG_MV643XX_ETH is not set
604CONFIG_NETDEV_10000=y 636CONFIG_NETDEV_10000=y
605CONFIG_WLAN=y 637CONFIG_WLAN=y
606# CONFIG_WLAN_PRE80211 is not set 638# CONFIG_HOSTAP is not set
607# CONFIG_WLAN_80211 is not set
608 639
609# 640#
610# Enable WiMAX (Networking options) to see the WiMAX drivers 641# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -624,6 +655,7 @@ CONFIG_WLAN=y
624CONFIG_INPUT=y 655CONFIG_INPUT=y
625# CONFIG_INPUT_FF_MEMLESS is not set 656# CONFIG_INPUT_FF_MEMLESS is not set
626# CONFIG_INPUT_POLLDEV is not set 657# CONFIG_INPUT_POLLDEV is not set
658# CONFIG_INPUT_SPARSEKMAP is not set
627 659
628# 660#
629# Userland interfaces 661# Userland interfaces
@@ -669,6 +701,7 @@ CONFIG_SERIAL_CORE=y
669CONFIG_SERIAL_CORE_CONSOLE=y 701CONFIG_SERIAL_CORE_CONSOLE=y
670CONFIG_SERIAL_CPM=y 702CONFIG_SERIAL_CPM=y
671CONFIG_SERIAL_CPM_CONSOLE=y 703CONFIG_SERIAL_CPM_CONSOLE=y
704# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
672CONFIG_UNIX98_PTYS=y 705CONFIG_UNIX98_PTYS=y
673# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 706# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
674CONFIG_LEGACY_PTYS=y 707CONFIG_LEGACY_PTYS=y
@@ -1051,7 +1084,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1051# CONFIG_KEYS is not set 1084# CONFIG_KEYS is not set
1052# CONFIG_SECURITY is not set 1085# CONFIG_SECURITY is not set
1053# CONFIG_SECURITYFS is not set 1086# CONFIG_SECURITYFS is not set
1054# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1087# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1088# CONFIG_DEFAULT_SECURITY_SMACK is not set
1089# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1090CONFIG_DEFAULT_SECURITY_DAC=y
1091CONFIG_DEFAULT_SECURITY=""
1055CONFIG_CRYPTO=y 1092CONFIG_CRYPTO=y
1056 1093
1057# 1094#
diff --git a/arch/powerpc/configs/85xx/mpc8540_ads_defconfig b/arch/powerpc/configs/85xx/mpc8540_ads_defconfig
index c10e26f8763f..5db54cd274c6 100644
--- a/arch/powerpc/configs/85xx/mpc8540_ads_defconfig
+++ b/arch/powerpc/configs/85xx/mpc8540_ads_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:33 2009 4# Wed Jan 6 09:24:27 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -88,6 +91,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 91#
89CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -170,14 +174,41 @@ CONFIG_LBDAF=y
170# IO Schedulers 174# IO Schedulers
171# 175#
172CONFIG_IOSCHED_NOOP=y 176CONFIG_IOSCHED_NOOP=y
173CONFIG_IOSCHED_AS=y
174CONFIG_IOSCHED_DEADLINE=y 177CONFIG_IOSCHED_DEADLINE=y
175CONFIG_IOSCHED_CFQ=y 178CONFIG_IOSCHED_CFQ=y
176CONFIG_DEFAULT_AS=y
177# CONFIG_DEFAULT_DEADLINE is not set 179# CONFIG_DEFAULT_DEADLINE is not set
178# CONFIG_DEFAULT_CFQ is not set 180CONFIG_DEFAULT_CFQ=y
179# CONFIG_DEFAULT_NOOP is not set 181# CONFIG_DEFAULT_NOOP is not set
180CONFIG_DEFAULT_IOSCHED="anticipatory" 182CONFIG_DEFAULT_IOSCHED="cfq"
183# CONFIG_INLINE_SPIN_TRYLOCK is not set
184# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
185# CONFIG_INLINE_SPIN_LOCK is not set
186# CONFIG_INLINE_SPIN_LOCK_BH is not set
187# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
189CONFIG_INLINE_SPIN_UNLOCK=y
190# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
191CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
192# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
193# CONFIG_INLINE_READ_TRYLOCK is not set
194# CONFIG_INLINE_READ_LOCK is not set
195# CONFIG_INLINE_READ_LOCK_BH is not set
196# CONFIG_INLINE_READ_LOCK_IRQ is not set
197# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
198CONFIG_INLINE_READ_UNLOCK=y
199# CONFIG_INLINE_READ_UNLOCK_BH is not set
200CONFIG_INLINE_READ_UNLOCK_IRQ=y
201# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
202# CONFIG_INLINE_WRITE_TRYLOCK is not set
203# CONFIG_INLINE_WRITE_LOCK is not set
204# CONFIG_INLINE_WRITE_LOCK_BH is not set
205# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
207CONFIG_INLINE_WRITE_UNLOCK=y
208# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
209CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
210# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
211# CONFIG_MUTEX_SPIN_ON_OWNER is not set
181# CONFIG_FREEZER is not set 212# CONFIG_FREEZER is not set
182 213
183# 214#
@@ -186,7 +217,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
186# CONFIG_PPC_CELL is not set 217# CONFIG_PPC_CELL is not set
187# CONFIG_PPC_CELL_NATIVE is not set 218# CONFIG_PPC_CELL_NATIVE is not set
188# CONFIG_PQ2ADS is not set 219# CONFIG_PQ2ADS is not set
189CONFIG_MPC85xx=y 220CONFIG_FSL_SOC_BOOKE=y
190CONFIG_MPC8540_ADS=y 221CONFIG_MPC8540_ADS=y
191# CONFIG_MPC8560_ADS is not set 222# CONFIG_MPC8560_ADS is not set
192# CONFIG_MPC85xx_CDS is not set 223# CONFIG_MPC85xx_CDS is not set
@@ -205,6 +236,7 @@ CONFIG_MPC8540_ADS=y
205# CONFIG_TQM8560 is not set 236# CONFIG_TQM8560 is not set
206# CONFIG_SBC8548 is not set 237# CONFIG_SBC8548 is not set
207# CONFIG_SBC8560 is not set 238# CONFIG_SBC8560 is not set
239# CONFIG_P4080_DS is not set
208# CONFIG_IPIC is not set 240# CONFIG_IPIC is not set
209CONFIG_MPIC=y 241CONFIG_MPIC=y
210# CONFIG_MPIC_WEIRD is not set 242# CONFIG_MPIC_WEIRD is not set
@@ -249,6 +281,7 @@ CONFIG_MATH_EMULATION=y
249CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
250CONFIG_ARCH_HAS_WALK_MEMORY=y 282CONFIG_ARCH_HAS_WALK_MEMORY=y
251CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
284CONFIG_SPARSE_IRQ=y
252CONFIG_MAX_ACTIVE_REGIONS=32 285CONFIG_MAX_ACTIVE_REGIONS=32
253CONFIG_ARCH_FLATMEM_ENABLE=y 286CONFIG_ARCH_FLATMEM_ENABLE=y
254CONFIG_ARCH_POPULATES_NODE_MAP=y 287CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -265,8 +298,6 @@ CONFIG_MIGRATION=y
265CONFIG_ZONE_DMA_FLAG=1 298CONFIG_ZONE_DMA_FLAG=1
266CONFIG_BOUNCE=y 299CONFIG_BOUNCE=y
267CONFIG_VIRT_TO_BUS=y 300CONFIG_VIRT_TO_BUS=y
268CONFIG_HAVE_MLOCK=y
269CONFIG_HAVE_MLOCKED_PAGE_BIT=y
270# CONFIG_KSM is not set 301# CONFIG_KSM is not set
271CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 302CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
272CONFIG_PPC_4K_PAGES=y 303CONFIG_PPC_4K_PAGES=y
@@ -386,9 +417,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
386# CONFIG_AF_RXRPC is not set 417# CONFIG_AF_RXRPC is not set
387CONFIG_WIRELESS=y 418CONFIG_WIRELESS=y
388# CONFIG_CFG80211 is not set 419# CONFIG_CFG80211 is not set
389CONFIG_CFG80211_DEFAULT_PS_VALUE=0
390CONFIG_WIRELESS_OLD_REGULATORY=y
391# CONFIG_WIRELESS_EXT is not set
392# CONFIG_LIB80211 is not set 420# CONFIG_LIB80211 is not set
393 421
394# 422#
@@ -423,6 +451,10 @@ CONFIG_BLK_DEV=y
423# CONFIG_BLK_DEV_COW_COMMON is not set 451# CONFIG_BLK_DEV_COW_COMMON is not set
424CONFIG_BLK_DEV_LOOP=y 452CONFIG_BLK_DEV_LOOP=y
425# CONFIG_BLK_DEV_CRYPTOLOOP is not set 453# CONFIG_BLK_DEV_CRYPTOLOOP is not set
454
455#
456# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
457#
426# CONFIG_BLK_DEV_NBD is not set 458# CONFIG_BLK_DEV_NBD is not set
427CONFIG_BLK_DEV_RAM=y 459CONFIG_BLK_DEV_RAM=y
428CONFIG_BLK_DEV_RAM_COUNT=16 460CONFIG_BLK_DEV_RAM_COUNT=16
@@ -500,8 +532,7 @@ CONFIG_GIANFAR=y
500# CONFIG_MV643XX_ETH is not set 532# CONFIG_MV643XX_ETH is not set
501CONFIG_NETDEV_10000=y 533CONFIG_NETDEV_10000=y
502CONFIG_WLAN=y 534CONFIG_WLAN=y
503# CONFIG_WLAN_PRE80211 is not set 535# CONFIG_HOSTAP is not set
504# CONFIG_WLAN_80211 is not set
505 536
506# 537#
507# Enable WiMAX (Networking options) to see the WiMAX drivers 538# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -521,6 +552,7 @@ CONFIG_WLAN=y
521CONFIG_INPUT=y 552CONFIG_INPUT=y
522# CONFIG_INPUT_FF_MEMLESS is not set 553# CONFIG_INPUT_FF_MEMLESS is not set
523# CONFIG_INPUT_POLLDEV is not set 554# CONFIG_INPUT_POLLDEV is not set
555# CONFIG_INPUT_SPARSEKMAP is not set
524 556
525# 557#
526# Userland interfaces 558# Userland interfaces
@@ -570,6 +602,7 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y
570CONFIG_SERIAL_CORE=y 602CONFIG_SERIAL_CORE=y
571CONFIG_SERIAL_CORE_CONSOLE=y 603CONFIG_SERIAL_CORE_CONSOLE=y
572# CONFIG_SERIAL_OF_PLATFORM is not set 604# CONFIG_SERIAL_OF_PLATFORM is not set
605# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
573CONFIG_UNIX98_PTYS=y 606CONFIG_UNIX98_PTYS=y
574# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 607# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
575CONFIG_LEGACY_PTYS=y 608CONFIG_LEGACY_PTYS=y
@@ -920,7 +953,11 @@ CONFIG_PRINT_STACK_DEPTH=64
920# CONFIG_KEYS is not set 953# CONFIG_KEYS is not set
921# CONFIG_SECURITY is not set 954# CONFIG_SECURITY is not set
922# CONFIG_SECURITYFS is not set 955# CONFIG_SECURITYFS is not set
923# CONFIG_SECURITY_FILE_CAPABILITIES is not set 956# CONFIG_DEFAULT_SECURITY_SELINUX is not set
957# CONFIG_DEFAULT_SECURITY_SMACK is not set
958# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
959CONFIG_DEFAULT_SECURITY_DAC=y
960CONFIG_DEFAULT_SECURITY=""
924CONFIG_CRYPTO=y 961CONFIG_CRYPTO=y
925 962
926# 963#
diff --git a/arch/powerpc/configs/85xx/mpc8560_ads_defconfig b/arch/powerpc/configs/85xx/mpc8560_ads_defconfig
index 8d9f0a4b5205..76c7018c5cd2 100644
--- a/arch/powerpc/configs/85xx/mpc8560_ads_defconfig
+++ b/arch/powerpc/configs/85xx/mpc8560_ads_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:34 2009 4# Wed Jan 6 09:24:28 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -89,6 +92,7 @@ CONFIG_SYSVIPC_SYSCTL=y
89# 92#
90CONFIG_TREE_RCU=y 93CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set 94# CONFIG_TREE_PREEMPT_RCU is not set
95# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set 96# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32 97CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set 98# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,14 +177,41 @@ CONFIG_LBDAF=y
173# IO Schedulers 177# IO Schedulers
174# 178#
175CONFIG_IOSCHED_NOOP=y 179CONFIG_IOSCHED_NOOP=y
176CONFIG_IOSCHED_AS=y
177CONFIG_IOSCHED_DEADLINE=y 180CONFIG_IOSCHED_DEADLINE=y
178CONFIG_IOSCHED_CFQ=y 181CONFIG_IOSCHED_CFQ=y
179CONFIG_DEFAULT_AS=y
180# CONFIG_DEFAULT_DEADLINE is not set 182# CONFIG_DEFAULT_DEADLINE is not set
181# CONFIG_DEFAULT_CFQ is not set 183CONFIG_DEFAULT_CFQ=y
182# CONFIG_DEFAULT_NOOP is not set 184# CONFIG_DEFAULT_NOOP is not set
183CONFIG_DEFAULT_IOSCHED="anticipatory" 185CONFIG_DEFAULT_IOSCHED="cfq"
186# CONFIG_INLINE_SPIN_TRYLOCK is not set
187# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK is not set
189# CONFIG_INLINE_SPIN_LOCK_BH is not set
190# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
191# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
192CONFIG_INLINE_SPIN_UNLOCK=y
193# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
194CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
195# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
196# CONFIG_INLINE_READ_TRYLOCK is not set
197# CONFIG_INLINE_READ_LOCK is not set
198# CONFIG_INLINE_READ_LOCK_BH is not set
199# CONFIG_INLINE_READ_LOCK_IRQ is not set
200# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
201CONFIG_INLINE_READ_UNLOCK=y
202# CONFIG_INLINE_READ_UNLOCK_BH is not set
203CONFIG_INLINE_READ_UNLOCK_IRQ=y
204# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
205# CONFIG_INLINE_WRITE_TRYLOCK is not set
206# CONFIG_INLINE_WRITE_LOCK is not set
207# CONFIG_INLINE_WRITE_LOCK_BH is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
209# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
210CONFIG_INLINE_WRITE_UNLOCK=y
211# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
212CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
213# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
214# CONFIG_MUTEX_SPIN_ON_OWNER is not set
184# CONFIG_FREEZER is not set 215# CONFIG_FREEZER is not set
185 216
186# 217#
@@ -189,7 +220,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
189# CONFIG_PPC_CELL is not set 220# CONFIG_PPC_CELL is not set
190# CONFIG_PPC_CELL_NATIVE is not set 221# CONFIG_PPC_CELL_NATIVE is not set
191# CONFIG_PQ2ADS is not set 222# CONFIG_PQ2ADS is not set
192CONFIG_MPC85xx=y 223CONFIG_FSL_SOC_BOOKE=y
193# CONFIG_MPC8540_ADS is not set 224# CONFIG_MPC8540_ADS is not set
194CONFIG_MPC8560_ADS=y 225CONFIG_MPC8560_ADS=y
195# CONFIG_MPC85xx_CDS is not set 226# CONFIG_MPC85xx_CDS is not set
@@ -208,6 +239,7 @@ CONFIG_MPC8560_ADS=y
208# CONFIG_TQM8560 is not set 239# CONFIG_TQM8560 is not set
209# CONFIG_SBC8548 is not set 240# CONFIG_SBC8548 is not set
210# CONFIG_SBC8560 is not set 241# CONFIG_SBC8560 is not set
242# CONFIG_P4080_DS is not set
211# CONFIG_IPIC is not set 243# CONFIG_IPIC is not set
212CONFIG_MPIC=y 244CONFIG_MPIC=y
213# CONFIG_MPIC_WEIRD is not set 245# CONFIG_MPIC_WEIRD is not set
@@ -252,6 +284,7 @@ CONFIG_MATH_EMULATION=y
252CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 284CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
253CONFIG_ARCH_HAS_WALK_MEMORY=y 285CONFIG_ARCH_HAS_WALK_MEMORY=y
254CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 286CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
287CONFIG_SPARSE_IRQ=y
255CONFIG_MAX_ACTIVE_REGIONS=32 288CONFIG_MAX_ACTIVE_REGIONS=32
256CONFIG_ARCH_FLATMEM_ENABLE=y 289CONFIG_ARCH_FLATMEM_ENABLE=y
257CONFIG_ARCH_POPULATES_NODE_MAP=y 290CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -268,8 +301,6 @@ CONFIG_MIGRATION=y
268CONFIG_ZONE_DMA_FLAG=1 301CONFIG_ZONE_DMA_FLAG=1
269CONFIG_BOUNCE=y 302CONFIG_BOUNCE=y
270CONFIG_VIRT_TO_BUS=y 303CONFIG_VIRT_TO_BUS=y
271CONFIG_HAVE_MLOCK=y
272CONFIG_HAVE_MLOCKED_PAGE_BIT=y
273# CONFIG_KSM is not set 304# CONFIG_KSM is not set
274CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 305CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
275CONFIG_PPC_4K_PAGES=y 306CONFIG_PPC_4K_PAGES=y
@@ -398,9 +429,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
398# CONFIG_AF_RXRPC is not set 429# CONFIG_AF_RXRPC is not set
399CONFIG_WIRELESS=y 430CONFIG_WIRELESS=y
400# CONFIG_CFG80211 is not set 431# CONFIG_CFG80211 is not set
401CONFIG_CFG80211_DEFAULT_PS_VALUE=0
402CONFIG_WIRELESS_OLD_REGULATORY=y
403# CONFIG_WIRELESS_EXT is not set
404# CONFIG_LIB80211 is not set 432# CONFIG_LIB80211 is not set
405 433
406# 434#
@@ -440,6 +468,10 @@ CONFIG_BLK_DEV=y
440# CONFIG_BLK_DEV_COW_COMMON is not set 468# CONFIG_BLK_DEV_COW_COMMON is not set
441CONFIG_BLK_DEV_LOOP=y 469CONFIG_BLK_DEV_LOOP=y
442# CONFIG_BLK_DEV_CRYPTOLOOP is not set 470# CONFIG_BLK_DEV_CRYPTOLOOP is not set
471
472#
473# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
474#
443# CONFIG_BLK_DEV_NBD is not set 475# CONFIG_BLK_DEV_NBD is not set
444# CONFIG_BLK_DEV_SX8 is not set 476# CONFIG_BLK_DEV_SX8 is not set
445CONFIG_BLK_DEV_RAM=y 477CONFIG_BLK_DEV_RAM=y
@@ -485,7 +517,7 @@ CONFIG_HAVE_IDE=y
485# 517#
486 518
487# 519#
488# See the help texts for more information. 520# The newer stack is recommended.
489# 521#
490# CONFIG_FIREWIRE is not set 522# CONFIG_FIREWIRE is not set
491# CONFIG_IEEE1394 is not set 523# CONFIG_IEEE1394 is not set
@@ -594,8 +626,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
594# CONFIG_BE2NET is not set 626# CONFIG_BE2NET is not set
595# CONFIG_TR is not set 627# CONFIG_TR is not set
596CONFIG_WLAN=y 628CONFIG_WLAN=y
597# CONFIG_WLAN_PRE80211 is not set 629# CONFIG_AIRO is not set
598# CONFIG_WLAN_80211 is not set 630# CONFIG_ATMEL is not set
631# CONFIG_PRISM54 is not set
632# CONFIG_HOSTAP is not set
599 633
600# 634#
601# Enable WiMAX (Networking options) to see the WiMAX drivers 635# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -608,6 +642,7 @@ CONFIG_WLAN=y
608# CONFIG_NETCONSOLE is not set 642# CONFIG_NETCONSOLE is not set
609# CONFIG_NETPOLL is not set 643# CONFIG_NETPOLL is not set
610# CONFIG_NET_POLL_CONTROLLER is not set 644# CONFIG_NET_POLL_CONTROLLER is not set
645# CONFIG_VMXNET3 is not set
611# CONFIG_ISDN is not set 646# CONFIG_ISDN is not set
612# CONFIG_PHONE is not set 647# CONFIG_PHONE is not set
613 648
@@ -617,6 +652,7 @@ CONFIG_WLAN=y
617CONFIG_INPUT=y 652CONFIG_INPUT=y
618# CONFIG_INPUT_FF_MEMLESS is not set 653# CONFIG_INPUT_FF_MEMLESS is not set
619# CONFIG_INPUT_POLLDEV is not set 654# CONFIG_INPUT_POLLDEV is not set
655# CONFIG_INPUT_SPARSEKMAP is not set
620 656
621# 657#
622# Userland interfaces 658# Userland interfaces
@@ -664,6 +700,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
664CONFIG_SERIAL_CPM=y 700CONFIG_SERIAL_CPM=y
665CONFIG_SERIAL_CPM_CONSOLE=y 701CONFIG_SERIAL_CPM_CONSOLE=y
666# CONFIG_SERIAL_JSM is not set 702# CONFIG_SERIAL_JSM is not set
703# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
667CONFIG_UNIX98_PTYS=y 704CONFIG_UNIX98_PTYS=y
668# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 705# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
669CONFIG_LEGACY_PTYS=y 706CONFIG_LEGACY_PTYS=y
@@ -705,6 +742,7 @@ CONFIG_GPIOLIB=y
705# 742#
706# PCI GPIO expanders: 743# PCI GPIO expanders:
707# 744#
745# CONFIG_GPIO_CS5535 is not set
708# CONFIG_GPIO_BT8XX is not set 746# CONFIG_GPIO_BT8XX is not set
709# CONFIG_GPIO_LANGWELL is not set 747# CONFIG_GPIO_LANGWELL is not set
710 748
@@ -1054,7 +1092,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1054# CONFIG_KEYS is not set 1092# CONFIG_KEYS is not set
1055# CONFIG_SECURITY is not set 1093# CONFIG_SECURITY is not set
1056# CONFIG_SECURITYFS is not set 1094# CONFIG_SECURITYFS is not set
1057# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1095# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1096# CONFIG_DEFAULT_SECURITY_SMACK is not set
1097# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1098CONFIG_DEFAULT_SECURITY_DAC=y
1099CONFIG_DEFAULT_SECURITY=""
1058CONFIG_CRYPTO=y 1100CONFIG_CRYPTO=y
1059 1101
1060# 1102#
diff --git a/arch/powerpc/configs/85xx/mpc85xx_cds_defconfig b/arch/powerpc/configs/85xx/mpc85xx_cds_defconfig
index 9b63e258dac6..fab8adacbf79 100644
--- a/arch/powerpc/configs/85xx/mpc85xx_cds_defconfig
+++ b/arch/powerpc/configs/85xx/mpc85xx_cds_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:35 2009 4# Wed Jan 6 09:24:29 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -88,6 +91,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 91#
89CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -171,14 +175,41 @@ CONFIG_LBDAF=y
171# IO Schedulers 175# IO Schedulers
172# 176#
173CONFIG_IOSCHED_NOOP=y 177CONFIG_IOSCHED_NOOP=y
174CONFIG_IOSCHED_AS=y
175CONFIG_IOSCHED_DEADLINE=y 178CONFIG_IOSCHED_DEADLINE=y
176CONFIG_IOSCHED_CFQ=y 179CONFIG_IOSCHED_CFQ=y
177CONFIG_DEFAULT_AS=y
178# CONFIG_DEFAULT_DEADLINE is not set 180# CONFIG_DEFAULT_DEADLINE is not set
179# CONFIG_DEFAULT_CFQ is not set 181CONFIG_DEFAULT_CFQ=y
180# CONFIG_DEFAULT_NOOP is not set 182# CONFIG_DEFAULT_NOOP is not set
181CONFIG_DEFAULT_IOSCHED="anticipatory" 183CONFIG_DEFAULT_IOSCHED="cfq"
184# CONFIG_INLINE_SPIN_TRYLOCK is not set
185# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK is not set
187# CONFIG_INLINE_SPIN_LOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
190CONFIG_INLINE_SPIN_UNLOCK=y
191# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
192CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
193# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
194# CONFIG_INLINE_READ_TRYLOCK is not set
195# CONFIG_INLINE_READ_LOCK is not set
196# CONFIG_INLINE_READ_LOCK_BH is not set
197# CONFIG_INLINE_READ_LOCK_IRQ is not set
198# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
199CONFIG_INLINE_READ_UNLOCK=y
200# CONFIG_INLINE_READ_UNLOCK_BH is not set
201CONFIG_INLINE_READ_UNLOCK_IRQ=y
202# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
203# CONFIG_INLINE_WRITE_TRYLOCK is not set
204# CONFIG_INLINE_WRITE_LOCK is not set
205# CONFIG_INLINE_WRITE_LOCK_BH is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
208CONFIG_INLINE_WRITE_UNLOCK=y
209# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
210CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
211# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
212# CONFIG_MUTEX_SPIN_ON_OWNER is not set
182# CONFIG_FREEZER is not set 213# CONFIG_FREEZER is not set
183 214
184# 215#
@@ -187,7 +218,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
187# CONFIG_PPC_CELL is not set 218# CONFIG_PPC_CELL is not set
188# CONFIG_PPC_CELL_NATIVE is not set 219# CONFIG_PPC_CELL_NATIVE is not set
189# CONFIG_PQ2ADS is not set 220# CONFIG_PQ2ADS is not set
190CONFIG_MPC85xx=y 221CONFIG_FSL_SOC_BOOKE=y
191# CONFIG_MPC8540_ADS is not set 222# CONFIG_MPC8540_ADS is not set
192# CONFIG_MPC8560_ADS is not set 223# CONFIG_MPC8560_ADS is not set
193CONFIG_MPC85xx_CDS=y 224CONFIG_MPC85xx_CDS=y
@@ -206,6 +237,7 @@ CONFIG_MPC85xx_CDS=y
206# CONFIG_TQM8560 is not set 237# CONFIG_TQM8560 is not set
207# CONFIG_SBC8548 is not set 238# CONFIG_SBC8548 is not set
208# CONFIG_SBC8560 is not set 239# CONFIG_SBC8560 is not set
240# CONFIG_P4080_DS is not set
209# CONFIG_IPIC is not set 241# CONFIG_IPIC is not set
210CONFIG_MPIC=y 242CONFIG_MPIC=y
211# CONFIG_MPIC_WEIRD is not set 243# CONFIG_MPIC_WEIRD is not set
@@ -250,6 +282,7 @@ CONFIG_MATH_EMULATION=y
250CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 282CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
251CONFIG_ARCH_HAS_WALK_MEMORY=y 283CONFIG_ARCH_HAS_WALK_MEMORY=y
252CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 284CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
285CONFIG_SPARSE_IRQ=y
253CONFIG_MAX_ACTIVE_REGIONS=32 286CONFIG_MAX_ACTIVE_REGIONS=32
254CONFIG_ARCH_FLATMEM_ENABLE=y 287CONFIG_ARCH_FLATMEM_ENABLE=y
255CONFIG_ARCH_POPULATES_NODE_MAP=y 288CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -266,8 +299,6 @@ CONFIG_MIGRATION=y
266CONFIG_ZONE_DMA_FLAG=1 299CONFIG_ZONE_DMA_FLAG=1
267CONFIG_BOUNCE=y 300CONFIG_BOUNCE=y
268CONFIG_VIRT_TO_BUS=y 301CONFIG_VIRT_TO_BUS=y
269CONFIG_HAVE_MLOCK=y
270CONFIG_HAVE_MLOCKED_PAGE_BIT=y
271# CONFIG_KSM is not set 302# CONFIG_KSM is not set
272CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 303CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
273CONFIG_PPC_4K_PAGES=y 304CONFIG_PPC_4K_PAGES=y
@@ -396,9 +427,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
396# CONFIG_AF_RXRPC is not set 427# CONFIG_AF_RXRPC is not set
397CONFIG_WIRELESS=y 428CONFIG_WIRELESS=y
398# CONFIG_CFG80211 is not set 429# CONFIG_CFG80211 is not set
399CONFIG_CFG80211_DEFAULT_PS_VALUE=0
400CONFIG_WIRELESS_OLD_REGULATORY=y
401# CONFIG_WIRELESS_EXT is not set
402# CONFIG_LIB80211 is not set 430# CONFIG_LIB80211 is not set
403 431
404# 432#
@@ -437,6 +465,10 @@ CONFIG_BLK_DEV=y
437# CONFIG_BLK_DEV_COW_COMMON is not set 465# CONFIG_BLK_DEV_COW_COMMON is not set
438CONFIG_BLK_DEV_LOOP=y 466CONFIG_BLK_DEV_LOOP=y
439# CONFIG_BLK_DEV_CRYPTOLOOP is not set 467# CONFIG_BLK_DEV_CRYPTOLOOP is not set
468
469#
470# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
471#
440# CONFIG_BLK_DEV_NBD is not set 472# CONFIG_BLK_DEV_NBD is not set
441# CONFIG_BLK_DEV_SX8 is not set 473# CONFIG_BLK_DEV_SX8 is not set
442CONFIG_BLK_DEV_RAM=y 474CONFIG_BLK_DEV_RAM=y
@@ -537,7 +569,7 @@ CONFIG_BLK_DEV_IDEDMA=y
537# 569#
538 570
539# 571#
540# See the help texts for more information. 572# The newer stack is recommended.
541# 573#
542# CONFIG_FIREWIRE is not set 574# CONFIG_FIREWIRE is not set
543# CONFIG_IEEE1394 is not set 575# CONFIG_IEEE1394 is not set
@@ -642,8 +674,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
642# CONFIG_BE2NET is not set 674# CONFIG_BE2NET is not set
643# CONFIG_TR is not set 675# CONFIG_TR is not set
644CONFIG_WLAN=y 676CONFIG_WLAN=y
645# CONFIG_WLAN_PRE80211 is not set 677# CONFIG_AIRO is not set
646# CONFIG_WLAN_80211 is not set 678# CONFIG_ATMEL is not set
679# CONFIG_PRISM54 is not set
680# CONFIG_HOSTAP is not set
647 681
648# 682#
649# Enable WiMAX (Networking options) to see the WiMAX drivers 683# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -656,6 +690,7 @@ CONFIG_WLAN=y
656# CONFIG_NETCONSOLE is not set 690# CONFIG_NETCONSOLE is not set
657# CONFIG_NETPOLL is not set 691# CONFIG_NETPOLL is not set
658# CONFIG_NET_POLL_CONTROLLER is not set 692# CONFIG_NET_POLL_CONTROLLER is not set
693# CONFIG_VMXNET3 is not set
659# CONFIG_ISDN is not set 694# CONFIG_ISDN is not set
660# CONFIG_PHONE is not set 695# CONFIG_PHONE is not set
661 696
@@ -665,6 +700,7 @@ CONFIG_WLAN=y
665CONFIG_INPUT=y 700CONFIG_INPUT=y
666# CONFIG_INPUT_FF_MEMLESS is not set 701# CONFIG_INPUT_FF_MEMLESS is not set
667# CONFIG_INPUT_POLLDEV is not set 702# CONFIG_INPUT_POLLDEV is not set
703# CONFIG_INPUT_SPARSEKMAP is not set
668 704
669# 705#
670# Userland interfaces 706# Userland interfaces
@@ -717,6 +753,7 @@ CONFIG_SERIAL_CORE=y
717CONFIG_SERIAL_CORE_CONSOLE=y 753CONFIG_SERIAL_CORE_CONSOLE=y
718# CONFIG_SERIAL_JSM is not set 754# CONFIG_SERIAL_JSM is not set
719# CONFIG_SERIAL_OF_PLATFORM is not set 755# CONFIG_SERIAL_OF_PLATFORM is not set
756# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
720CONFIG_UNIX98_PTYS=y 757CONFIG_UNIX98_PTYS=y
721# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 758# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
722CONFIG_LEGACY_PTYS=y 759CONFIG_LEGACY_PTYS=y
@@ -1079,7 +1116,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1079# CONFIG_KEYS is not set 1116# CONFIG_KEYS is not set
1080# CONFIG_SECURITY is not set 1117# CONFIG_SECURITY is not set
1081# CONFIG_SECURITYFS is not set 1118# CONFIG_SECURITYFS is not set
1082# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1119# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1120# CONFIG_DEFAULT_SECURITY_SMACK is not set
1121# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1122CONFIG_DEFAULT_SECURITY_DAC=y
1123CONFIG_DEFAULT_SECURITY=""
1083CONFIG_CRYPTO=y 1124CONFIG_CRYPTO=y
1084 1125
1085# 1126#
diff --git a/arch/powerpc/configs/85xx/sbc8548_defconfig b/arch/powerpc/configs/85xx/sbc8548_defconfig
index 1b2356830173..8290385e9b94 100644
--- a/arch/powerpc/configs/85xx/sbc8548_defconfig
+++ b/arch/powerpc/configs/85xx/sbc8548_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:36 2009 4# Wed Jan 6 09:24:29 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -88,6 +91,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 91#
89CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -169,14 +173,41 @@ CONFIG_LBDAF=y
169# IO Schedulers 173# IO Schedulers
170# 174#
171CONFIG_IOSCHED_NOOP=y 175CONFIG_IOSCHED_NOOP=y
172CONFIG_IOSCHED_AS=y
173CONFIG_IOSCHED_DEADLINE=y 176CONFIG_IOSCHED_DEADLINE=y
174CONFIG_IOSCHED_CFQ=y 177CONFIG_IOSCHED_CFQ=y
175CONFIG_DEFAULT_AS=y
176# CONFIG_DEFAULT_DEADLINE is not set 178# CONFIG_DEFAULT_DEADLINE is not set
177# CONFIG_DEFAULT_CFQ is not set 179CONFIG_DEFAULT_CFQ=y
178# CONFIG_DEFAULT_NOOP is not set 180# CONFIG_DEFAULT_NOOP is not set
179CONFIG_DEFAULT_IOSCHED="anticipatory" 181CONFIG_DEFAULT_IOSCHED="cfq"
182# CONFIG_INLINE_SPIN_TRYLOCK is not set
183# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
184# CONFIG_INLINE_SPIN_LOCK is not set
185# CONFIG_INLINE_SPIN_LOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
187# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
188CONFIG_INLINE_SPIN_UNLOCK=y
189# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
190CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
191# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
192# CONFIG_INLINE_READ_TRYLOCK is not set
193# CONFIG_INLINE_READ_LOCK is not set
194# CONFIG_INLINE_READ_LOCK_BH is not set
195# CONFIG_INLINE_READ_LOCK_IRQ is not set
196# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
197CONFIG_INLINE_READ_UNLOCK=y
198# CONFIG_INLINE_READ_UNLOCK_BH is not set
199CONFIG_INLINE_READ_UNLOCK_IRQ=y
200# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
201# CONFIG_INLINE_WRITE_TRYLOCK is not set
202# CONFIG_INLINE_WRITE_LOCK is not set
203# CONFIG_INLINE_WRITE_LOCK_BH is not set
204# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
205# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
206CONFIG_INLINE_WRITE_UNLOCK=y
207# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
208CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
209# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
210# CONFIG_MUTEX_SPIN_ON_OWNER is not set
180# CONFIG_FREEZER is not set 211# CONFIG_FREEZER is not set
181 212
182# 213#
@@ -185,7 +216,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
185# CONFIG_PPC_CELL is not set 216# CONFIG_PPC_CELL is not set
186# CONFIG_PPC_CELL_NATIVE is not set 217# CONFIG_PPC_CELL_NATIVE is not set
187# CONFIG_PQ2ADS is not set 218# CONFIG_PQ2ADS is not set
188CONFIG_MPC85xx=y 219CONFIG_FSL_SOC_BOOKE=y
189# CONFIG_MPC8540_ADS is not set 220# CONFIG_MPC8540_ADS is not set
190# CONFIG_MPC8560_ADS is not set 221# CONFIG_MPC8560_ADS is not set
191# CONFIG_MPC85xx_CDS is not set 222# CONFIG_MPC85xx_CDS is not set
@@ -204,6 +235,7 @@ CONFIG_MPC85xx=y
204# CONFIG_TQM8560 is not set 235# CONFIG_TQM8560 is not set
205CONFIG_SBC8548=y 236CONFIG_SBC8548=y
206# CONFIG_SBC8560 is not set 237# CONFIG_SBC8560 is not set
238# CONFIG_P4080_DS is not set
207# CONFIG_IPIC is not set 239# CONFIG_IPIC is not set
208CONFIG_MPIC=y 240CONFIG_MPIC=y
209# CONFIG_MPIC_WEIRD is not set 241# CONFIG_MPIC_WEIRD is not set
@@ -247,6 +279,7 @@ CONFIG_MATH_EMULATION=y
247CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 279CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
248CONFIG_ARCH_HAS_WALK_MEMORY=y 280CONFIG_ARCH_HAS_WALK_MEMORY=y
249CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
282CONFIG_SPARSE_IRQ=y
250CONFIG_MAX_ACTIVE_REGIONS=32 283CONFIG_MAX_ACTIVE_REGIONS=32
251CONFIG_ARCH_FLATMEM_ENABLE=y 284CONFIG_ARCH_FLATMEM_ENABLE=y
252CONFIG_ARCH_POPULATES_NODE_MAP=y 285CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -263,8 +296,6 @@ CONFIG_MIGRATION=y
263CONFIG_ZONE_DMA_FLAG=1 296CONFIG_ZONE_DMA_FLAG=1
264CONFIG_BOUNCE=y 297CONFIG_BOUNCE=y
265CONFIG_VIRT_TO_BUS=y 298CONFIG_VIRT_TO_BUS=y
266CONFIG_HAVE_MLOCK=y
267CONFIG_HAVE_MLOCKED_PAGE_BIT=y
268# CONFIG_KSM is not set 299# CONFIG_KSM is not set
269CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 300CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
270CONFIG_PPC_4K_PAGES=y 301CONFIG_PPC_4K_PAGES=y
@@ -392,9 +423,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
392# CONFIG_AF_RXRPC is not set 423# CONFIG_AF_RXRPC is not set
393CONFIG_WIRELESS=y 424CONFIG_WIRELESS=y
394# CONFIG_CFG80211 is not set 425# CONFIG_CFG80211 is not set
395CONFIG_CFG80211_DEFAULT_PS_VALUE=0
396CONFIG_WIRELESS_OLD_REGULATORY=y
397# CONFIG_WIRELESS_EXT is not set
398# CONFIG_LIB80211 is not set 426# CONFIG_LIB80211 is not set
399 427
400# 428#
@@ -431,6 +459,10 @@ CONFIG_BLK_DEV=y
431# CONFIG_BLK_DEV_COW_COMMON is not set 459# CONFIG_BLK_DEV_COW_COMMON is not set
432CONFIG_BLK_DEV_LOOP=y 460CONFIG_BLK_DEV_LOOP=y
433# CONFIG_BLK_DEV_CRYPTOLOOP is not set 461# CONFIG_BLK_DEV_CRYPTOLOOP is not set
462
463#
464# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
465#
434# CONFIG_BLK_DEV_NBD is not set 466# CONFIG_BLK_DEV_NBD is not set
435# CONFIG_BLK_DEV_SX8 is not set 467# CONFIG_BLK_DEV_SX8 is not set
436CONFIG_BLK_DEV_RAM=y 468CONFIG_BLK_DEV_RAM=y
@@ -476,7 +508,7 @@ CONFIG_HAVE_IDE=y
476# 508#
477 509
478# 510#
479# See the help texts for more information. 511# The newer stack is recommended.
480# 512#
481# CONFIG_FIREWIRE is not set 513# CONFIG_FIREWIRE is not set
482# CONFIG_IEEE1394 is not set 514# CONFIG_IEEE1394 is not set
@@ -581,8 +613,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
581# CONFIG_BE2NET is not set 613# CONFIG_BE2NET is not set
582# CONFIG_TR is not set 614# CONFIG_TR is not set
583CONFIG_WLAN=y 615CONFIG_WLAN=y
584# CONFIG_WLAN_PRE80211 is not set 616# CONFIG_AIRO is not set
585# CONFIG_WLAN_80211 is not set 617# CONFIG_ATMEL is not set
618# CONFIG_PRISM54 is not set
619# CONFIG_HOSTAP is not set
586 620
587# 621#
588# Enable WiMAX (Networking options) to see the WiMAX drivers 622# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -595,6 +629,7 @@ CONFIG_WLAN=y
595# CONFIG_NETCONSOLE is not set 629# CONFIG_NETCONSOLE is not set
596# CONFIG_NETPOLL is not set 630# CONFIG_NETPOLL is not set
597# CONFIG_NET_POLL_CONTROLLER is not set 631# CONFIG_NET_POLL_CONTROLLER is not set
632# CONFIG_VMXNET3 is not set
598# CONFIG_ISDN is not set 633# CONFIG_ISDN is not set
599# CONFIG_PHONE is not set 634# CONFIG_PHONE is not set
600 635
@@ -604,6 +639,7 @@ CONFIG_WLAN=y
604CONFIG_INPUT=y 639CONFIG_INPUT=y
605# CONFIG_INPUT_FF_MEMLESS is not set 640# CONFIG_INPUT_FF_MEMLESS is not set
606# CONFIG_INPUT_POLLDEV is not set 641# CONFIG_INPUT_POLLDEV is not set
642# CONFIG_INPUT_SPARSEKMAP is not set
607 643
608# 644#
609# Userland interfaces 645# Userland interfaces
@@ -656,6 +692,7 @@ CONFIG_SERIAL_CORE=y
656CONFIG_SERIAL_CORE_CONSOLE=y 692CONFIG_SERIAL_CORE_CONSOLE=y
657# CONFIG_SERIAL_JSM is not set 693# CONFIG_SERIAL_JSM is not set
658# CONFIG_SERIAL_OF_PLATFORM is not set 694# CONFIG_SERIAL_OF_PLATFORM is not set
695# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
659CONFIG_UNIX98_PTYS=y 696CONFIG_UNIX98_PTYS=y
660# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 697# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
661CONFIG_LEGACY_PTYS=y 698CONFIG_LEGACY_PTYS=y
@@ -889,7 +926,7 @@ CONFIG_FRAME_WARN=1024
889# CONFIG_DEBUG_FS is not set 926# CONFIG_DEBUG_FS is not set
890# CONFIG_HEADERS_CHECK is not set 927# CONFIG_HEADERS_CHECK is not set
891# CONFIG_DEBUG_KERNEL is not set 928# CONFIG_DEBUG_KERNEL is not set
892# CONFIG_DEBUG_BUGVERBOSE is not set 929CONFIG_DEBUG_BUGVERBOSE=y
893# CONFIG_DEBUG_MEMORY_INIT is not set 930# CONFIG_DEBUG_MEMORY_INIT is not set
894# CONFIG_RCU_CPU_STALL_DETECTOR is not set 931# CONFIG_RCU_CPU_STALL_DETECTOR is not set
895# CONFIG_LATENCYTOP is not set 932# CONFIG_LATENCYTOP is not set
@@ -915,7 +952,11 @@ CONFIG_PRINT_STACK_DEPTH=64
915# CONFIG_KEYS is not set 952# CONFIG_KEYS is not set
916# CONFIG_SECURITY is not set 953# CONFIG_SECURITY is not set
917# CONFIG_SECURITYFS is not set 954# CONFIG_SECURITYFS is not set
918# CONFIG_SECURITY_FILE_CAPABILITIES is not set 955# CONFIG_DEFAULT_SECURITY_SELINUX is not set
956# CONFIG_DEFAULT_SECURITY_SMACK is not set
957# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
958CONFIG_DEFAULT_SECURITY_DAC=y
959CONFIG_DEFAULT_SECURITY=""
919CONFIG_CRYPTO=y 960CONFIG_CRYPTO=y
920 961
921# 962#
diff --git a/arch/powerpc/configs/85xx/sbc8560_defconfig b/arch/powerpc/configs/85xx/sbc8560_defconfig
index 959d0281431b..2499b5ba7141 100644
--- a/arch/powerpc/configs/85xx/sbc8560_defconfig
+++ b/arch/powerpc/configs/85xx/sbc8560_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:37 2009 4# Wed Jan 6 09:24:30 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -88,6 +91,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 91#
89CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -169,14 +173,41 @@ CONFIG_LBDAF=y
169# IO Schedulers 173# IO Schedulers
170# 174#
171CONFIG_IOSCHED_NOOP=y 175CONFIG_IOSCHED_NOOP=y
172CONFIG_IOSCHED_AS=y
173CONFIG_IOSCHED_DEADLINE=y 176CONFIG_IOSCHED_DEADLINE=y
174CONFIG_IOSCHED_CFQ=y 177CONFIG_IOSCHED_CFQ=y
175CONFIG_DEFAULT_AS=y
176# CONFIG_DEFAULT_DEADLINE is not set 178# CONFIG_DEFAULT_DEADLINE is not set
177# CONFIG_DEFAULT_CFQ is not set 179CONFIG_DEFAULT_CFQ=y
178# CONFIG_DEFAULT_NOOP is not set 180# CONFIG_DEFAULT_NOOP is not set
179CONFIG_DEFAULT_IOSCHED="anticipatory" 181CONFIG_DEFAULT_IOSCHED="cfq"
182# CONFIG_INLINE_SPIN_TRYLOCK is not set
183# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
184# CONFIG_INLINE_SPIN_LOCK is not set
185# CONFIG_INLINE_SPIN_LOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
187# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
188CONFIG_INLINE_SPIN_UNLOCK=y
189# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
190CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
191# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
192# CONFIG_INLINE_READ_TRYLOCK is not set
193# CONFIG_INLINE_READ_LOCK is not set
194# CONFIG_INLINE_READ_LOCK_BH is not set
195# CONFIG_INLINE_READ_LOCK_IRQ is not set
196# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
197CONFIG_INLINE_READ_UNLOCK=y
198# CONFIG_INLINE_READ_UNLOCK_BH is not set
199CONFIG_INLINE_READ_UNLOCK_IRQ=y
200# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
201# CONFIG_INLINE_WRITE_TRYLOCK is not set
202# CONFIG_INLINE_WRITE_LOCK is not set
203# CONFIG_INLINE_WRITE_LOCK_BH is not set
204# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
205# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
206CONFIG_INLINE_WRITE_UNLOCK=y
207# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
208CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
209# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
210# CONFIG_MUTEX_SPIN_ON_OWNER is not set
180# CONFIG_FREEZER is not set 211# CONFIG_FREEZER is not set
181 212
182# 213#
@@ -185,7 +216,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
185# CONFIG_PPC_CELL is not set 216# CONFIG_PPC_CELL is not set
186# CONFIG_PPC_CELL_NATIVE is not set 217# CONFIG_PPC_CELL_NATIVE is not set
187# CONFIG_PQ2ADS is not set 218# CONFIG_PQ2ADS is not set
188CONFIG_MPC85xx=y 219CONFIG_FSL_SOC_BOOKE=y
189# CONFIG_MPC8540_ADS is not set 220# CONFIG_MPC8540_ADS is not set
190# CONFIG_MPC8560_ADS is not set 221# CONFIG_MPC8560_ADS is not set
191# CONFIG_MPC85xx_CDS is not set 222# CONFIG_MPC85xx_CDS is not set
@@ -204,6 +235,7 @@ CONFIG_MPC85xx=y
204# CONFIG_TQM8560 is not set 235# CONFIG_TQM8560 is not set
205# CONFIG_SBC8548 is not set 236# CONFIG_SBC8548 is not set
206CONFIG_SBC8560=y 237CONFIG_SBC8560=y
238# CONFIG_P4080_DS is not set
207# CONFIG_IPIC is not set 239# CONFIG_IPIC is not set
208CONFIG_MPIC=y 240CONFIG_MPIC=y
209# CONFIG_MPIC_WEIRD is not set 241# CONFIG_MPIC_WEIRD is not set
@@ -247,6 +279,7 @@ CONFIG_BINFMT_MISC=y
247CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 279CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
248CONFIG_ARCH_HAS_WALK_MEMORY=y 280CONFIG_ARCH_HAS_WALK_MEMORY=y
249CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 281CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
282CONFIG_SPARSE_IRQ=y
250CONFIG_MAX_ACTIVE_REGIONS=32 283CONFIG_MAX_ACTIVE_REGIONS=32
251CONFIG_ARCH_FLATMEM_ENABLE=y 284CONFIG_ARCH_FLATMEM_ENABLE=y
252CONFIG_ARCH_POPULATES_NODE_MAP=y 285CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -263,8 +296,6 @@ CONFIG_MIGRATION=y
263CONFIG_ZONE_DMA_FLAG=1 296CONFIG_ZONE_DMA_FLAG=1
264CONFIG_BOUNCE=y 297CONFIG_BOUNCE=y
265CONFIG_VIRT_TO_BUS=y 298CONFIG_VIRT_TO_BUS=y
266CONFIG_HAVE_MLOCK=y
267CONFIG_HAVE_MLOCKED_PAGE_BIT=y
268# CONFIG_KSM is not set 299# CONFIG_KSM is not set
269CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 300CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
270CONFIG_PPC_4K_PAGES=y 301CONFIG_PPC_4K_PAGES=y
@@ -384,9 +415,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
384# CONFIG_AF_RXRPC is not set 415# CONFIG_AF_RXRPC is not set
385CONFIG_WIRELESS=y 416CONFIG_WIRELESS=y
386# CONFIG_CFG80211 is not set 417# CONFIG_CFG80211 is not set
387CONFIG_CFG80211_DEFAULT_PS_VALUE=0
388CONFIG_WIRELESS_OLD_REGULATORY=y
389# CONFIG_WIRELESS_EXT is not set
390# CONFIG_LIB80211 is not set 418# CONFIG_LIB80211 is not set
391 419
392# 420#
@@ -421,6 +449,10 @@ CONFIG_BLK_DEV=y
421# CONFIG_BLK_DEV_COW_COMMON is not set 449# CONFIG_BLK_DEV_COW_COMMON is not set
422CONFIG_BLK_DEV_LOOP=y 450CONFIG_BLK_DEV_LOOP=y
423# CONFIG_BLK_DEV_CRYPTOLOOP is not set 451# CONFIG_BLK_DEV_CRYPTOLOOP is not set
452
453#
454# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
455#
424# CONFIG_BLK_DEV_NBD is not set 456# CONFIG_BLK_DEV_NBD is not set
425CONFIG_BLK_DEV_RAM=y 457CONFIG_BLK_DEV_RAM=y
426CONFIG_BLK_DEV_RAM_COUNT=16 458CONFIG_BLK_DEV_RAM_COUNT=16
@@ -498,8 +530,7 @@ CONFIG_GIANFAR=y
498# CONFIG_MV643XX_ETH is not set 530# CONFIG_MV643XX_ETH is not set
499CONFIG_NETDEV_10000=y 531CONFIG_NETDEV_10000=y
500CONFIG_WLAN=y 532CONFIG_WLAN=y
501# CONFIG_WLAN_PRE80211 is not set 533# CONFIG_HOSTAP is not set
502# CONFIG_WLAN_80211 is not set
503 534
504# 535#
505# Enable WiMAX (Networking options) to see the WiMAX drivers 536# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -519,6 +550,7 @@ CONFIG_WLAN=y
519CONFIG_INPUT=y 550CONFIG_INPUT=y
520# CONFIG_INPUT_FF_MEMLESS is not set 551# CONFIG_INPUT_FF_MEMLESS is not set
521# CONFIG_INPUT_POLLDEV is not set 552# CONFIG_INPUT_POLLDEV is not set
553# CONFIG_INPUT_SPARSEKMAP is not set
522 554
523# 555#
524# Userland interfaces 556# Userland interfaces
@@ -568,6 +600,7 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y
568CONFIG_SERIAL_CORE=y 600CONFIG_SERIAL_CORE=y
569CONFIG_SERIAL_CORE_CONSOLE=y 601CONFIG_SERIAL_CORE_CONSOLE=y
570# CONFIG_SERIAL_OF_PLATFORM is not set 602# CONFIG_SERIAL_OF_PLATFORM is not set
603# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
571CONFIG_UNIX98_PTYS=y 604CONFIG_UNIX98_PTYS=y
572# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 605# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
573CONFIG_LEGACY_PTYS=y 606CONFIG_LEGACY_PTYS=y
@@ -702,7 +735,9 @@ CONFIG_RTC_INTF_DEV=y
702# CONFIG_RTC_DRV_M48T86 is not set 735# CONFIG_RTC_DRV_M48T86 is not set
703# CONFIG_RTC_DRV_M48T35 is not set 736# CONFIG_RTC_DRV_M48T35 is not set
704CONFIG_RTC_DRV_M48T59=y 737CONFIG_RTC_DRV_M48T59=y
738# CONFIG_RTC_DRV_MSM6242 is not set
705# CONFIG_RTC_DRV_BQ4802 is not set 739# CONFIG_RTC_DRV_BQ4802 is not set
740# CONFIG_RTC_DRV_RP5C01 is not set
706# CONFIG_RTC_DRV_V3020 is not set 741# CONFIG_RTC_DRV_V3020 is not set
707 742
708# 743#
@@ -948,6 +983,7 @@ CONFIG_PPC_EARLY_DEBUG=y
948# CONFIG_PPC_EARLY_DEBUG_44x is not set 983# CONFIG_PPC_EARLY_DEBUG_44x is not set
949# CONFIG_PPC_EARLY_DEBUG_40x is not set 984# CONFIG_PPC_EARLY_DEBUG_40x is not set
950# CONFIG_PPC_EARLY_DEBUG_CPM is not set 985# CONFIG_PPC_EARLY_DEBUG_CPM is not set
986# CONFIG_PPC_EARLY_DEBUG_USBGECKO is not set
951 987
952# 988#
953# Security options 989# Security options
@@ -955,7 +991,11 @@ CONFIG_PPC_EARLY_DEBUG=y
955# CONFIG_KEYS is not set 991# CONFIG_KEYS is not set
956# CONFIG_SECURITY is not set 992# CONFIG_SECURITY is not set
957# CONFIG_SECURITYFS is not set 993# CONFIG_SECURITYFS is not set
958# CONFIG_SECURITY_FILE_CAPABILITIES is not set 994# CONFIG_DEFAULT_SECURITY_SELINUX is not set
995# CONFIG_DEFAULT_SECURITY_SMACK is not set
996# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
997CONFIG_DEFAULT_SECURITY_DAC=y
998CONFIG_DEFAULT_SECURITY=""
959CONFIG_CRYPTO=y 999CONFIG_CRYPTO=y
960 1000
961# 1001#
diff --git a/arch/powerpc/configs/85xx/socrates_defconfig b/arch/powerpc/configs/85xx/socrates_defconfig
index 7f5ec35bf199..e2edb79cfd1a 100644
--- a/arch/powerpc/configs/85xx/socrates_defconfig
+++ b/arch/powerpc/configs/85xx/socrates_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:37 2009 4# Wed Jan 6 09:24:31 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -88,6 +91,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 91#
89CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -174,14 +178,41 @@ CONFIG_LBDAF=y
174# IO Schedulers 178# IO Schedulers
175# 179#
176CONFIG_IOSCHED_NOOP=y 180CONFIG_IOSCHED_NOOP=y
177CONFIG_IOSCHED_AS=y
178CONFIG_IOSCHED_DEADLINE=y 181CONFIG_IOSCHED_DEADLINE=y
179CONFIG_IOSCHED_CFQ=y 182CONFIG_IOSCHED_CFQ=y
180CONFIG_DEFAULT_AS=y
181# CONFIG_DEFAULT_DEADLINE is not set 183# CONFIG_DEFAULT_DEADLINE is not set
182# CONFIG_DEFAULT_CFQ is not set 184CONFIG_DEFAULT_CFQ=y
183# CONFIG_DEFAULT_NOOP is not set 185# CONFIG_DEFAULT_NOOP is not set
184CONFIG_DEFAULT_IOSCHED="anticipatory" 186CONFIG_DEFAULT_IOSCHED="cfq"
187# CONFIG_INLINE_SPIN_TRYLOCK is not set
188# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK is not set
190# CONFIG_INLINE_SPIN_LOCK_BH is not set
191# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
192# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
193CONFIG_INLINE_SPIN_UNLOCK=y
194# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
195CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
196# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
197# CONFIG_INLINE_READ_TRYLOCK is not set
198# CONFIG_INLINE_READ_LOCK is not set
199# CONFIG_INLINE_READ_LOCK_BH is not set
200# CONFIG_INLINE_READ_LOCK_IRQ is not set
201# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
202CONFIG_INLINE_READ_UNLOCK=y
203# CONFIG_INLINE_READ_UNLOCK_BH is not set
204CONFIG_INLINE_READ_UNLOCK_IRQ=y
205# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
206# CONFIG_INLINE_WRITE_TRYLOCK is not set
207# CONFIG_INLINE_WRITE_LOCK is not set
208# CONFIG_INLINE_WRITE_LOCK_BH is not set
209# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
210# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
211CONFIG_INLINE_WRITE_UNLOCK=y
212# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
213CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
214# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
215# CONFIG_MUTEX_SPIN_ON_OWNER is not set
185# CONFIG_FREEZER is not set 216# CONFIG_FREEZER is not set
186 217
187# 218#
@@ -190,7 +221,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
190# CONFIG_PPC_CELL is not set 221# CONFIG_PPC_CELL is not set
191# CONFIG_PPC_CELL_NATIVE is not set 222# CONFIG_PPC_CELL_NATIVE is not set
192# CONFIG_PQ2ADS is not set 223# CONFIG_PQ2ADS is not set
193CONFIG_MPC85xx=y 224CONFIG_FSL_SOC_BOOKE=y
194# CONFIG_MPC8540_ADS is not set 225# CONFIG_MPC8540_ADS is not set
195# CONFIG_MPC8560_ADS is not set 226# CONFIG_MPC8560_ADS is not set
196# CONFIG_MPC85xx_CDS is not set 227# CONFIG_MPC85xx_CDS is not set
@@ -209,6 +240,7 @@ CONFIG_SOCRATES=y
209# CONFIG_TQM8560 is not set 240# CONFIG_TQM8560 is not set
210# CONFIG_SBC8548 is not set 241# CONFIG_SBC8548 is not set
211# CONFIG_SBC8560 is not set 242# CONFIG_SBC8560 is not set
243# CONFIG_P4080_DS is not set
212# CONFIG_IPIC is not set 244# CONFIG_IPIC is not set
213CONFIG_MPIC=y 245CONFIG_MPIC=y
214# CONFIG_MPIC_WEIRD is not set 246# CONFIG_MPIC_WEIRD is not set
@@ -252,6 +284,7 @@ CONFIG_MATH_EMULATION=y
252CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 284CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
253CONFIG_ARCH_HAS_WALK_MEMORY=y 285CONFIG_ARCH_HAS_WALK_MEMORY=y
254CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 286CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
287CONFIG_SPARSE_IRQ=y
255CONFIG_MAX_ACTIVE_REGIONS=32 288CONFIG_MAX_ACTIVE_REGIONS=32
256CONFIG_ARCH_FLATMEM_ENABLE=y 289CONFIG_ARCH_FLATMEM_ENABLE=y
257CONFIG_ARCH_POPULATES_NODE_MAP=y 290CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -268,8 +301,6 @@ CONFIG_MIGRATION=y
268CONFIG_ZONE_DMA_FLAG=1 301CONFIG_ZONE_DMA_FLAG=1
269CONFIG_BOUNCE=y 302CONFIG_BOUNCE=y
270CONFIG_VIRT_TO_BUS=y 303CONFIG_VIRT_TO_BUS=y
271CONFIG_HAVE_MLOCK=y
272CONFIG_HAVE_MLOCKED_PAGE_BIT=y
273# CONFIG_KSM is not set 304# CONFIG_KSM is not set
274CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 305CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
275CONFIG_PPC_4K_PAGES=y 306CONFIG_PPC_4K_PAGES=y
@@ -404,9 +435,6 @@ CONFIG_CAN_BCM=y
404# CONFIG_AF_RXRPC is not set 435# CONFIG_AF_RXRPC is not set
405CONFIG_WIRELESS=y 436CONFIG_WIRELESS=y
406# CONFIG_CFG80211 is not set 437# CONFIG_CFG80211 is not set
407CONFIG_CFG80211_DEFAULT_PS_VALUE=0
408# CONFIG_WIRELESS_OLD_REGULATORY is not set
409# CONFIG_WIRELESS_EXT is not set
410# CONFIG_LIB80211 is not set 438# CONFIG_LIB80211 is not set
411 439
412# 440#
@@ -540,6 +568,10 @@ CONFIG_BLK_DEV=y
540# CONFIG_BLK_DEV_COW_COMMON is not set 568# CONFIG_BLK_DEV_COW_COMMON is not set
541CONFIG_BLK_DEV_LOOP=y 569CONFIG_BLK_DEV_LOOP=y
542# CONFIG_BLK_DEV_CRYPTOLOOP is not set 570# CONFIG_BLK_DEV_CRYPTOLOOP is not set
571
572#
573# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
574#
543# CONFIG_BLK_DEV_NBD is not set 575# CONFIG_BLK_DEV_NBD is not set
544# CONFIG_BLK_DEV_SX8 is not set 576# CONFIG_BLK_DEV_SX8 is not set
545# CONFIG_BLK_DEV_UB is not set 577# CONFIG_BLK_DEV_UB is not set
@@ -551,6 +583,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
551# CONFIG_ATA_OVER_ETH is not set 583# CONFIG_ATA_OVER_ETH is not set
552# CONFIG_BLK_DEV_HD is not set 584# CONFIG_BLK_DEV_HD is not set
553CONFIG_MISC_DEVICES=y 585CONFIG_MISC_DEVICES=y
586# CONFIG_AD525X_DPOT is not set
554# CONFIG_PHANTOM is not set 587# CONFIG_PHANTOM is not set
555# CONFIG_SGI_IOC4 is not set 588# CONFIG_SGI_IOC4 is not set
556# CONFIG_TIFM_CORE is not set 589# CONFIG_TIFM_CORE is not set
@@ -558,6 +591,8 @@ CONFIG_MISC_DEVICES=y
558# CONFIG_ENCLOSURE_SERVICES is not set 591# CONFIG_ENCLOSURE_SERVICES is not set
559# CONFIG_HP_ILO is not set 592# CONFIG_HP_ILO is not set
560# CONFIG_ISL29003 is not set 593# CONFIG_ISL29003 is not set
594# CONFIG_DS1682 is not set
595# CONFIG_TI_DAC7512 is not set
561# CONFIG_C2PORT is not set 596# CONFIG_C2PORT is not set
562 597
563# 598#
@@ -621,7 +656,7 @@ CONFIG_SCSI_WAIT_SCAN=m
621# 656#
622 657
623# 658#
624# See the help texts for more information. 659# The newer stack is recommended.
625# 660#
626# CONFIG_FIREWIRE is not set 661# CONFIG_FIREWIRE is not set
627# CONFIG_IEEE1394 is not set 662# CONFIG_IEEE1394 is not set
@@ -710,8 +745,11 @@ CONFIG_GIANFAR=y
710# CONFIG_NETDEV_10000 is not set 745# CONFIG_NETDEV_10000 is not set
711# CONFIG_TR is not set 746# CONFIG_TR is not set
712CONFIG_WLAN=y 747CONFIG_WLAN=y
713# CONFIG_WLAN_PRE80211 is not set 748# CONFIG_AIRO is not set
714# CONFIG_WLAN_80211 is not set 749# CONFIG_ATMEL is not set
750# CONFIG_PRISM54 is not set
751# CONFIG_USB_ZD1201 is not set
752# CONFIG_HOSTAP is not set
715 753
716# 754#
717# Enable WiMAX (Networking options) to see the WiMAX drivers 755# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -734,6 +772,7 @@ CONFIG_WLAN=y
734# CONFIG_NETCONSOLE is not set 772# CONFIG_NETCONSOLE is not set
735# CONFIG_NETPOLL is not set 773# CONFIG_NETPOLL is not set
736# CONFIG_NET_POLL_CONTROLLER is not set 774# CONFIG_NET_POLL_CONTROLLER is not set
775# CONFIG_VMXNET3 is not set
737# CONFIG_ISDN is not set 776# CONFIG_ISDN is not set
738# CONFIG_PHONE is not set 777# CONFIG_PHONE is not set
739 778
@@ -743,6 +782,7 @@ CONFIG_WLAN=y
743CONFIG_INPUT=y 782CONFIG_INPUT=y
744# CONFIG_INPUT_FF_MEMLESS is not set 783# CONFIG_INPUT_FF_MEMLESS is not set
745# CONFIG_INPUT_POLLDEV is not set 784# CONFIG_INPUT_POLLDEV is not set
785# CONFIG_INPUT_SPARSEKMAP is not set
746 786
747# 787#
748# Userland interfaces 788# Userland interfaces
@@ -768,6 +808,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
768# CONFIG_TOUCHSCREEN_AD7879_I2C is not set 808# CONFIG_TOUCHSCREEN_AD7879_I2C is not set
769# CONFIG_TOUCHSCREEN_AD7879_SPI is not set 809# CONFIG_TOUCHSCREEN_AD7879_SPI is not set
770# CONFIG_TOUCHSCREEN_AD7879 is not set 810# CONFIG_TOUCHSCREEN_AD7879 is not set
811# CONFIG_TOUCHSCREEN_DYNAPRO is not set
771# CONFIG_TOUCHSCREEN_EETI is not set 812# CONFIG_TOUCHSCREEN_EETI is not set
772# CONFIG_TOUCHSCREEN_FUJITSU is not set 813# CONFIG_TOUCHSCREEN_FUJITSU is not set
773# CONFIG_TOUCHSCREEN_GUNZE is not set 814# CONFIG_TOUCHSCREEN_GUNZE is not set
@@ -826,6 +867,7 @@ CONFIG_SERIAL_CORE=y
826CONFIG_SERIAL_CORE_CONSOLE=y 867CONFIG_SERIAL_CORE_CONSOLE=y
827# CONFIG_SERIAL_JSM is not set 868# CONFIG_SERIAL_JSM is not set
828# CONFIG_SERIAL_OF_PLATFORM is not set 869# CONFIG_SERIAL_OF_PLATFORM is not set
870# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
829CONFIG_UNIX98_PTYS=y 871CONFIG_UNIX98_PTYS=y
830# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 872# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
831CONFIG_LEGACY_PTYS=y 873CONFIG_LEGACY_PTYS=y
@@ -883,11 +925,6 @@ CONFIG_I2C_MPC=y
883# CONFIG_I2C_TINY_USB is not set 925# CONFIG_I2C_TINY_USB is not set
884 926
885# 927#
886# Graphics adapter I2C/DDC channel drivers
887#
888# CONFIG_I2C_VOODOO3 is not set
889
890#
891# Other I2C/SMBus bus drivers 928# Other I2C/SMBus bus drivers
892# 929#
893# CONFIG_I2C_PCA_PLATFORM is not set 930# CONFIG_I2C_PCA_PLATFORM is not set
@@ -896,7 +933,6 @@ CONFIG_I2C_MPC=y
896# 933#
897# Miscellaneous I2C Chip support 934# Miscellaneous I2C Chip support
898# 935#
899# CONFIG_DS1682 is not set
900# CONFIG_SENSORS_TSL2550 is not set 936# CONFIG_SENSORS_TSL2550 is not set
901# CONFIG_I2C_DEBUG_CORE is not set 937# CONFIG_I2C_DEBUG_CORE is not set
902# CONFIG_I2C_DEBUG_ALGO is not set 938# CONFIG_I2C_DEBUG_ALGO is not set
@@ -910,6 +946,8 @@ CONFIG_SPI_MASTER=y
910# 946#
911# CONFIG_SPI_BITBANG is not set 947# CONFIG_SPI_BITBANG is not set
912# CONFIG_SPI_MPC8xxx is not set 948# CONFIG_SPI_MPC8xxx is not set
949# CONFIG_SPI_XILINX is not set
950# CONFIG_SPI_DESIGNWARE is not set
913 951
914# 952#
915# SPI Protocol Masters 953# SPI Protocol Masters
@@ -957,6 +995,7 @@ CONFIG_HWMON_DEBUG_CHIP=y
957# CONFIG_SENSORS_IT87 is not set 995# CONFIG_SENSORS_IT87 is not set
958# CONFIG_SENSORS_LM63 is not set 996# CONFIG_SENSORS_LM63 is not set
959# CONFIG_SENSORS_LM70 is not set 997# CONFIG_SENSORS_LM70 is not set
998# CONFIG_SENSORS_LM73 is not set
960CONFIG_SENSORS_LM75=y 999CONFIG_SENSORS_LM75=y
961# CONFIG_SENSORS_LM77 is not set 1000# CONFIG_SENSORS_LM77 is not set
962# CONFIG_SENSORS_LM78 is not set 1001# CONFIG_SENSORS_LM78 is not set
@@ -997,6 +1036,7 @@ CONFIG_SENSORS_W83781D=y
997# CONFIG_SENSORS_W83627HF is not set 1036# CONFIG_SENSORS_W83627HF is not set
998# CONFIG_SENSORS_W83627EHF is not set 1037# CONFIG_SENSORS_W83627EHF is not set
999# CONFIG_SENSORS_LIS3_SPI is not set 1038# CONFIG_SENSORS_LIS3_SPI is not set
1039# CONFIG_SENSORS_LIS3_I2C is not set
1000# CONFIG_THERMAL is not set 1040# CONFIG_THERMAL is not set
1001# CONFIG_WATCHDOG is not set 1041# CONFIG_WATCHDOG is not set
1002CONFIG_SSB_POSSIBLE=y 1042CONFIG_SSB_POSSIBLE=y
@@ -1015,6 +1055,7 @@ CONFIG_SSB_POSSIBLE=y
1015# CONFIG_TWL4030_CORE is not set 1055# CONFIG_TWL4030_CORE is not set
1016# CONFIG_MFD_TMIO is not set 1056# CONFIG_MFD_TMIO is not set
1017# CONFIG_PMIC_DA903X is not set 1057# CONFIG_PMIC_DA903X is not set
1058# CONFIG_PMIC_ADP5520 is not set
1018# CONFIG_MFD_WM8400 is not set 1059# CONFIG_MFD_WM8400 is not set
1019# CONFIG_MFD_WM831X is not set 1060# CONFIG_MFD_WM831X is not set
1020# CONFIG_MFD_WM8350_I2C is not set 1061# CONFIG_MFD_WM8350_I2C is not set
@@ -1022,6 +1063,8 @@ CONFIG_SSB_POSSIBLE=y
1022# CONFIG_MFD_MC13783 is not set 1063# CONFIG_MFD_MC13783 is not set
1023# CONFIG_AB3100_CORE is not set 1064# CONFIG_AB3100_CORE is not set
1024# CONFIG_EZX_PCAP is not set 1065# CONFIG_EZX_PCAP is not set
1066# CONFIG_MFD_88PM8607 is not set
1067# CONFIG_AB4500_CORE is not set
1025# CONFIG_REGULATOR is not set 1068# CONFIG_REGULATOR is not set
1026# CONFIG_MEDIA_SUPPORT is not set 1069# CONFIG_MEDIA_SUPPORT is not set
1027 1070
@@ -1192,6 +1235,7 @@ CONFIG_USB_MON=y
1192CONFIG_USB_EHCI_HCD=y 1235CONFIG_USB_EHCI_HCD=y
1193# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1236# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1194# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1237# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1238# CONFIG_XPS_USB_HCD_XILINX is not set
1195# CONFIG_USB_EHCI_FSL is not set 1239# CONFIG_USB_EHCI_FSL is not set
1196CONFIG_USB_EHCI_HCD_PPC_OF=y 1240CONFIG_USB_EHCI_HCD_PPC_OF=y
1197# CONFIG_USB_OXU210HP_HCD is not set 1241# CONFIG_USB_OXU210HP_HCD is not set
@@ -1318,6 +1362,7 @@ CONFIG_RTC_INTF_DEV=y
1318# CONFIG_RTC_DRV_PCF8563 is not set 1362# CONFIG_RTC_DRV_PCF8563 is not set
1319# CONFIG_RTC_DRV_PCF8583 is not set 1363# CONFIG_RTC_DRV_PCF8583 is not set
1320# CONFIG_RTC_DRV_M41T80 is not set 1364# CONFIG_RTC_DRV_M41T80 is not set
1365# CONFIG_RTC_DRV_BQ32K is not set
1321# CONFIG_RTC_DRV_S35390A is not set 1366# CONFIG_RTC_DRV_S35390A is not set
1322# CONFIG_RTC_DRV_FM3130 is not set 1367# CONFIG_RTC_DRV_FM3130 is not set
1323# CONFIG_RTC_DRV_RX8581 is not set 1368# CONFIG_RTC_DRV_RX8581 is not set
@@ -1347,7 +1392,9 @@ CONFIG_RTC_INTF_DEV=y
1347# CONFIG_RTC_DRV_M48T86 is not set 1392# CONFIG_RTC_DRV_M48T86 is not set
1348# CONFIG_RTC_DRV_M48T35 is not set 1393# CONFIG_RTC_DRV_M48T35 is not set
1349# CONFIG_RTC_DRV_M48T59 is not set 1394# CONFIG_RTC_DRV_M48T59 is not set
1395# CONFIG_RTC_DRV_MSM6242 is not set
1350# CONFIG_RTC_DRV_BQ4802 is not set 1396# CONFIG_RTC_DRV_BQ4802 is not set
1397# CONFIG_RTC_DRV_RP5C01 is not set
1351# CONFIG_RTC_DRV_V3020 is not set 1398# CONFIG_RTC_DRV_V3020 is not set
1352 1399
1353# 1400#
@@ -1574,7 +1621,7 @@ CONFIG_FRAME_WARN=1024
1574# CONFIG_DEBUG_KERNEL is not set 1621# CONFIG_DEBUG_KERNEL is not set
1575# CONFIG_SLUB_DEBUG_ON is not set 1622# CONFIG_SLUB_DEBUG_ON is not set
1576# CONFIG_SLUB_STATS is not set 1623# CONFIG_SLUB_STATS is not set
1577# CONFIG_DEBUG_BUGVERBOSE is not set 1624CONFIG_DEBUG_BUGVERBOSE=y
1578# CONFIG_DEBUG_MEMORY_INIT is not set 1625# CONFIG_DEBUG_MEMORY_INIT is not set
1579# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1626# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1580# CONFIG_LATENCYTOP is not set 1627# CONFIG_LATENCYTOP is not set
@@ -1600,7 +1647,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1600# CONFIG_KEYS is not set 1647# CONFIG_KEYS is not set
1601# CONFIG_SECURITY is not set 1648# CONFIG_SECURITY is not set
1602# CONFIG_SECURITYFS is not set 1649# CONFIG_SECURITYFS is not set
1603# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1650# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1651# CONFIG_DEFAULT_SECURITY_SMACK is not set
1652# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1653CONFIG_DEFAULT_SECURITY_DAC=y
1654CONFIG_DEFAULT_SECURITY=""
1604CONFIG_CRYPTO=y 1655CONFIG_CRYPTO=y
1605 1656
1606# 1657#
diff --git a/arch/powerpc/configs/85xx/stx_gp3_defconfig b/arch/powerpc/configs/85xx/stx_gp3_defconfig
index c8327e88a987..ce313259df14 100644
--- a/arch/powerpc/configs/85xx/stx_gp3_defconfig
+++ b/arch/powerpc/configs/85xx/stx_gp3_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:38 2009 4# Wed Jan 6 09:24:32 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -89,6 +92,7 @@ CONFIG_SYSVIPC_SYSCTL=y
89# 92#
90CONFIG_TREE_RCU=y 93CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set 94# CONFIG_TREE_PREEMPT_RCU is not set
95# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set 96# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32 97CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set 98# CONFIG_RCU_FANOUT_EXACT is not set
@@ -178,14 +182,41 @@ CONFIG_LBDAF=y
178# IO Schedulers 182# IO Schedulers
179# 183#
180CONFIG_IOSCHED_NOOP=y 184CONFIG_IOSCHED_NOOP=y
181CONFIG_IOSCHED_AS=y
182CONFIG_IOSCHED_DEADLINE=y 185CONFIG_IOSCHED_DEADLINE=y
183CONFIG_IOSCHED_CFQ=y 186CONFIG_IOSCHED_CFQ=y
184# CONFIG_DEFAULT_AS is not set
185# CONFIG_DEFAULT_DEADLINE is not set 187# CONFIG_DEFAULT_DEADLINE is not set
186CONFIG_DEFAULT_CFQ=y 188CONFIG_DEFAULT_CFQ=y
187# CONFIG_DEFAULT_NOOP is not set 189# CONFIG_DEFAULT_NOOP is not set
188CONFIG_DEFAULT_IOSCHED="cfq" 190CONFIG_DEFAULT_IOSCHED="cfq"
191# CONFIG_INLINE_SPIN_TRYLOCK is not set
192# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
193# CONFIG_INLINE_SPIN_LOCK is not set
194# CONFIG_INLINE_SPIN_LOCK_BH is not set
195# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
196# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
197CONFIG_INLINE_SPIN_UNLOCK=y
198# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
199CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
200# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
201# CONFIG_INLINE_READ_TRYLOCK is not set
202# CONFIG_INLINE_READ_LOCK is not set
203# CONFIG_INLINE_READ_LOCK_BH is not set
204# CONFIG_INLINE_READ_LOCK_IRQ is not set
205# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
206CONFIG_INLINE_READ_UNLOCK=y
207# CONFIG_INLINE_READ_UNLOCK_BH is not set
208CONFIG_INLINE_READ_UNLOCK_IRQ=y
209# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
210# CONFIG_INLINE_WRITE_TRYLOCK is not set
211# CONFIG_INLINE_WRITE_LOCK is not set
212# CONFIG_INLINE_WRITE_LOCK_BH is not set
213# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
214# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
215CONFIG_INLINE_WRITE_UNLOCK=y
216# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
217CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
218# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
219# CONFIG_MUTEX_SPIN_ON_OWNER is not set
189# CONFIG_FREEZER is not set 220# CONFIG_FREEZER is not set
190 221
191# 222#
@@ -194,7 +225,7 @@ CONFIG_DEFAULT_IOSCHED="cfq"
194# CONFIG_PPC_CELL is not set 225# CONFIG_PPC_CELL is not set
195# CONFIG_PPC_CELL_NATIVE is not set 226# CONFIG_PPC_CELL_NATIVE is not set
196# CONFIG_PQ2ADS is not set 227# CONFIG_PQ2ADS is not set
197CONFIG_MPC85xx=y 228CONFIG_FSL_SOC_BOOKE=y
198# CONFIG_MPC8540_ADS is not set 229# CONFIG_MPC8540_ADS is not set
199# CONFIG_MPC8560_ADS is not set 230# CONFIG_MPC8560_ADS is not set
200# CONFIG_MPC85xx_CDS is not set 231# CONFIG_MPC85xx_CDS is not set
@@ -213,6 +244,7 @@ CONFIG_STX_GP3=y
213# CONFIG_TQM8560 is not set 244# CONFIG_TQM8560 is not set
214# CONFIG_SBC8548 is not set 245# CONFIG_SBC8548 is not set
215# CONFIG_SBC8560 is not set 246# CONFIG_SBC8560 is not set
247# CONFIG_P4080_DS is not set
216# CONFIG_IPIC is not set 248# CONFIG_IPIC is not set
217CONFIG_MPIC=y 249CONFIG_MPIC=y
218# CONFIG_MPIC_WEIRD is not set 250# CONFIG_MPIC_WEIRD is not set
@@ -257,6 +289,7 @@ CONFIG_MATH_EMULATION=y
257CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
258CONFIG_ARCH_HAS_WALK_MEMORY=y 290CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 291CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
292CONFIG_SPARSE_IRQ=y
260CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
261CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
262CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -273,8 +306,6 @@ CONFIG_MIGRATION=y
273CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
274CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
275CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
276CONFIG_HAVE_MLOCK=y
277CONFIG_HAVE_MLOCKED_PAGE_BIT=y
278# CONFIG_KSM is not set 309# CONFIG_KSM is not set
279CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
280CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -463,9 +494,6 @@ CONFIG_NET_PKTGEN=y
463# CONFIG_AF_RXRPC is not set 494# CONFIG_AF_RXRPC is not set
464CONFIG_WIRELESS=y 495CONFIG_WIRELESS=y
465# CONFIG_CFG80211 is not set 496# CONFIG_CFG80211 is not set
466CONFIG_CFG80211_DEFAULT_PS_VALUE=0
467CONFIG_WIRELESS_OLD_REGULATORY=y
468# CONFIG_WIRELESS_EXT is not set
469# CONFIG_LIB80211 is not set 497# CONFIG_LIB80211 is not set
470 498
471# 499#
@@ -513,6 +541,10 @@ CONFIG_BLK_DEV=y
513# CONFIG_BLK_DEV_COW_COMMON is not set 541# CONFIG_BLK_DEV_COW_COMMON is not set
514CONFIG_BLK_DEV_LOOP=m 542CONFIG_BLK_DEV_LOOP=m
515# CONFIG_BLK_DEV_CRYPTOLOOP is not set 543# CONFIG_BLK_DEV_CRYPTOLOOP is not set
544
545#
546# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
547#
516CONFIG_BLK_DEV_NBD=m 548CONFIG_BLK_DEV_NBD=m
517# CONFIG_BLK_DEV_SX8 is not set 549# CONFIG_BLK_DEV_SX8 is not set
518CONFIG_BLK_DEV_RAM=y 550CONFIG_BLK_DEV_RAM=y
@@ -523,6 +555,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
523# CONFIG_ATA_OVER_ETH is not set 555# CONFIG_ATA_OVER_ETH is not set
524# CONFIG_BLK_DEV_HD is not set 556# CONFIG_BLK_DEV_HD is not set
525CONFIG_MISC_DEVICES=y 557CONFIG_MISC_DEVICES=y
558# CONFIG_AD525X_DPOT is not set
526# CONFIG_PHANTOM is not set 559# CONFIG_PHANTOM is not set
527# CONFIG_SGI_IOC4 is not set 560# CONFIG_SGI_IOC4 is not set
528# CONFIG_TIFM_CORE is not set 561# CONFIG_TIFM_CORE is not set
@@ -530,6 +563,7 @@ CONFIG_MISC_DEVICES=y
530# CONFIG_ENCLOSURE_SERVICES is not set 563# CONFIG_ENCLOSURE_SERVICES is not set
531# CONFIG_HP_ILO is not set 564# CONFIG_HP_ILO is not set
532# CONFIG_ISL29003 is not set 565# CONFIG_ISL29003 is not set
566# CONFIG_DS1682 is not set
533# CONFIG_C2PORT is not set 567# CONFIG_C2PORT is not set
534 568
535# 569#
@@ -633,7 +667,9 @@ CONFIG_SCSI_LOWLEVEL=y
633# CONFIG_SCSI_BNX2_ISCSI is not set 667# CONFIG_SCSI_BNX2_ISCSI is not set
634# CONFIG_BE2ISCSI is not set 668# CONFIG_BE2ISCSI is not set
635# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 669# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
670# CONFIG_SCSI_HPSA is not set
636# CONFIG_SCSI_3W_9XXX is not set 671# CONFIG_SCSI_3W_9XXX is not set
672# CONFIG_SCSI_3W_SAS is not set
637# CONFIG_SCSI_ACARD is not set 673# CONFIG_SCSI_ACARD is not set
638# CONFIG_SCSI_AACRAID is not set 674# CONFIG_SCSI_AACRAID is not set
639# CONFIG_SCSI_AIC7XXX is not set 675# CONFIG_SCSI_AIC7XXX is not set
@@ -673,6 +709,7 @@ CONFIG_SCSI_LOWLEVEL=y
673# CONFIG_SCSI_NSP32 is not set 709# CONFIG_SCSI_NSP32 is not set
674# CONFIG_SCSI_DEBUG is not set 710# CONFIG_SCSI_DEBUG is not set
675# CONFIG_SCSI_PMCRAID is not set 711# CONFIG_SCSI_PMCRAID is not set
712# CONFIG_SCSI_PM8001 is not set
676# CONFIG_SCSI_SRP is not set 713# CONFIG_SCSI_SRP is not set
677# CONFIG_SCSI_BFA_FC is not set 714# CONFIG_SCSI_BFA_FC is not set
678# CONFIG_SCSI_DH is not set 715# CONFIG_SCSI_DH is not set
@@ -690,7 +727,7 @@ CONFIG_SCSI_LOWLEVEL=y
690# 727#
691 728
692# 729#
693# See the help texts for more information. 730# The newer stack is recommended.
694# 731#
695# CONFIG_FIREWIRE is not set 732# CONFIG_FIREWIRE is not set
696# CONFIG_IEEE1394 is not set 733# CONFIG_IEEE1394 is not set
@@ -797,8 +834,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
797# CONFIG_BE2NET is not set 834# CONFIG_BE2NET is not set
798# CONFIG_TR is not set 835# CONFIG_TR is not set
799CONFIG_WLAN=y 836CONFIG_WLAN=y
800# CONFIG_WLAN_PRE80211 is not set 837# CONFIG_AIRO is not set
801# CONFIG_WLAN_80211 is not set 838# CONFIG_ATMEL is not set
839# CONFIG_PRISM54 is not set
840# CONFIG_HOSTAP is not set
802 841
803# 842#
804# Enable WiMAX (Networking options) to see the WiMAX drivers 843# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -813,6 +852,7 @@ CONFIG_WLAN=y
813# CONFIG_NETCONSOLE is not set 852# CONFIG_NETCONSOLE is not set
814# CONFIG_NETPOLL is not set 853# CONFIG_NETPOLL is not set
815# CONFIG_NET_POLL_CONTROLLER is not set 854# CONFIG_NET_POLL_CONTROLLER is not set
855# CONFIG_VMXNET3 is not set
816# CONFIG_ISDN is not set 856# CONFIG_ISDN is not set
817# CONFIG_PHONE is not set 857# CONFIG_PHONE is not set
818 858
@@ -822,6 +862,7 @@ CONFIG_WLAN=y
822CONFIG_INPUT=y 862CONFIG_INPUT=y
823# CONFIG_INPUT_FF_MEMLESS is not set 863# CONFIG_INPUT_FF_MEMLESS is not set
824# CONFIG_INPUT_POLLDEV is not set 864# CONFIG_INPUT_POLLDEV is not set
865# CONFIG_INPUT_SPARSEKMAP is not set
825 866
826# 867#
827# Userland interfaces 868# Userland interfaces
@@ -881,6 +922,7 @@ CONFIG_SERIO_SERPORT=y
881CONFIG_SERIO_LIBPS2=y 922CONFIG_SERIO_LIBPS2=y
882# CONFIG_SERIO_RAW is not set 923# CONFIG_SERIO_RAW is not set
883# CONFIG_SERIO_XILINX_XPS_PS2 is not set 924# CONFIG_SERIO_XILINX_XPS_PS2 is not set
925# CONFIG_SERIO_ALTERA_PS2 is not set
884# CONFIG_GAMEPORT is not set 926# CONFIG_GAMEPORT is not set
885 927
886# 928#
@@ -905,6 +947,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
905CONFIG_SERIAL_CPM=y 947CONFIG_SERIAL_CPM=y
906CONFIG_SERIAL_CPM_CONSOLE=y 948CONFIG_SERIAL_CPM_CONSOLE=y
907# CONFIG_SERIAL_JSM is not set 949# CONFIG_SERIAL_JSM is not set
950# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
908CONFIG_UNIX98_PTYS=y 951CONFIG_UNIX98_PTYS=y
909# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 952# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
910CONFIG_LEGACY_PTYS=y 953CONFIG_LEGACY_PTYS=y
@@ -970,11 +1013,6 @@ CONFIG_I2C_ALGOBIT=m
970# CONFIG_I2C_TAOS_EVM is not set 1013# CONFIG_I2C_TAOS_EVM is not set
971 1014
972# 1015#
973# Graphics adapter I2C/DDC channel drivers
974#
975# CONFIG_I2C_VOODOO3 is not set
976
977#
978# Other I2C/SMBus bus drivers 1016# Other I2C/SMBus bus drivers
979# 1017#
980# CONFIG_I2C_PCA_PLATFORM is not set 1018# CONFIG_I2C_PCA_PLATFORM is not set
@@ -983,7 +1021,6 @@ CONFIG_I2C_ALGOBIT=m
983# 1021#
984# Miscellaneous I2C Chip support 1022# Miscellaneous I2C Chip support
985# 1023#
986# CONFIG_DS1682 is not set
987# CONFIG_SENSORS_TSL2550 is not set 1024# CONFIG_SENSORS_TSL2550 is not set
988# CONFIG_I2C_DEBUG_CORE is not set 1025# CONFIG_I2C_DEBUG_CORE is not set
989# CONFIG_I2C_DEBUG_ALGO is not set 1026# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1016,6 +1053,7 @@ CONFIG_GPIOLIB=y
1016# 1053#
1017# PCI GPIO expanders: 1054# PCI GPIO expanders:
1018# 1055#
1056# CONFIG_GPIO_CS5535 is not set
1019# CONFIG_GPIO_BT8XX is not set 1057# CONFIG_GPIO_BT8XX is not set
1020# CONFIG_GPIO_LANGWELL is not set 1058# CONFIG_GPIO_LANGWELL is not set
1021 1059
@@ -1058,6 +1096,7 @@ CONFIG_HWMON=y
1058# CONFIG_SENSORS_GL520SM is not set 1096# CONFIG_SENSORS_GL520SM is not set
1059# CONFIG_SENSORS_IT87 is not set 1097# CONFIG_SENSORS_IT87 is not set
1060# CONFIG_SENSORS_LM63 is not set 1098# CONFIG_SENSORS_LM63 is not set
1099# CONFIG_SENSORS_LM73 is not set
1061# CONFIG_SENSORS_LM75 is not set 1100# CONFIG_SENSORS_LM75 is not set
1062# CONFIG_SENSORS_LM77 is not set 1101# CONFIG_SENSORS_LM77 is not set
1063# CONFIG_SENSORS_LM78 is not set 1102# CONFIG_SENSORS_LM78 is not set
@@ -1097,6 +1136,7 @@ CONFIG_HWMON=y
1097# CONFIG_SENSORS_W83L786NG is not set 1136# CONFIG_SENSORS_W83L786NG is not set
1098# CONFIG_SENSORS_W83627HF is not set 1137# CONFIG_SENSORS_W83627HF is not set
1099# CONFIG_SENSORS_W83627EHF is not set 1138# CONFIG_SENSORS_W83627EHF is not set
1139# CONFIG_SENSORS_LIS3_I2C is not set
1100# CONFIG_THERMAL is not set 1140# CONFIG_THERMAL is not set
1101# CONFIG_WATCHDOG is not set 1141# CONFIG_WATCHDOG is not set
1102CONFIG_SSB_POSSIBLE=y 1142CONFIG_SSB_POSSIBLE=y
@@ -1115,7 +1155,6 @@ CONFIG_SSB_POSSIBLE=y
1115# CONFIG_TPS65010 is not set 1155# CONFIG_TPS65010 is not set
1116# CONFIG_MFD_TMIO is not set 1156# CONFIG_MFD_TMIO is not set
1117# CONFIG_MFD_WM8400 is not set 1157# CONFIG_MFD_WM8400 is not set
1118# CONFIG_MFD_WM831X is not set
1119# CONFIG_MFD_WM8350_I2C is not set 1158# CONFIG_MFD_WM8350_I2C is not set
1120# CONFIG_MFD_PCF50633 is not set 1159# CONFIG_MFD_PCF50633 is not set
1121# CONFIG_AB3100_CORE is not set 1160# CONFIG_AB3100_CORE is not set
@@ -1465,7 +1504,11 @@ CONFIG_BDI_SWITCH=y
1465# CONFIG_KEYS is not set 1504# CONFIG_KEYS is not set
1466# CONFIG_SECURITY is not set 1505# CONFIG_SECURITY is not set
1467# CONFIG_SECURITYFS is not set 1506# CONFIG_SECURITYFS is not set
1468# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1507# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1508# CONFIG_DEFAULT_SECURITY_SMACK is not set
1509# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1510CONFIG_DEFAULT_SECURITY_DAC=y
1511CONFIG_DEFAULT_SECURITY=""
1469CONFIG_CRYPTO=y 1512CONFIG_CRYPTO=y
1470 1513
1471# 1514#
diff --git a/arch/powerpc/configs/85xx/tqm8540_defconfig b/arch/powerpc/configs/85xx/tqm8540_defconfig
index 82563703d5e3..0824b4667229 100644
--- a/arch/powerpc/configs/85xx/tqm8540_defconfig
+++ b/arch/powerpc/configs/85xx/tqm8540_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:39 2009 4# Wed Jan 6 09:24:33 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -88,6 +91,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 91#
89CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -169,14 +173,41 @@ CONFIG_LBDAF=y
169# IO Schedulers 173# IO Schedulers
170# 174#
171CONFIG_IOSCHED_NOOP=y 175CONFIG_IOSCHED_NOOP=y
172CONFIG_IOSCHED_AS=y
173CONFIG_IOSCHED_DEADLINE=y 176CONFIG_IOSCHED_DEADLINE=y
174CONFIG_IOSCHED_CFQ=y 177CONFIG_IOSCHED_CFQ=y
175CONFIG_DEFAULT_AS=y
176# CONFIG_DEFAULT_DEADLINE is not set 178# CONFIG_DEFAULT_DEADLINE is not set
177# CONFIG_DEFAULT_CFQ is not set 179CONFIG_DEFAULT_CFQ=y
178# CONFIG_DEFAULT_NOOP is not set 180# CONFIG_DEFAULT_NOOP is not set
179CONFIG_DEFAULT_IOSCHED="anticipatory" 181CONFIG_DEFAULT_IOSCHED="cfq"
182# CONFIG_INLINE_SPIN_TRYLOCK is not set
183# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
184# CONFIG_INLINE_SPIN_LOCK is not set
185# CONFIG_INLINE_SPIN_LOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
187# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
188CONFIG_INLINE_SPIN_UNLOCK=y
189# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
190CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
191# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
192# CONFIG_INLINE_READ_TRYLOCK is not set
193# CONFIG_INLINE_READ_LOCK is not set
194# CONFIG_INLINE_READ_LOCK_BH is not set
195# CONFIG_INLINE_READ_LOCK_IRQ is not set
196# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
197CONFIG_INLINE_READ_UNLOCK=y
198# CONFIG_INLINE_READ_UNLOCK_BH is not set
199CONFIG_INLINE_READ_UNLOCK_IRQ=y
200# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
201# CONFIG_INLINE_WRITE_TRYLOCK is not set
202# CONFIG_INLINE_WRITE_LOCK is not set
203# CONFIG_INLINE_WRITE_LOCK_BH is not set
204# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
205# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
206CONFIG_INLINE_WRITE_UNLOCK=y
207# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
208CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
209# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
210# CONFIG_MUTEX_SPIN_ON_OWNER is not set
180# CONFIG_FREEZER is not set 211# CONFIG_FREEZER is not set
181 212
182# 213#
@@ -185,7 +216,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
185# CONFIG_PPC_CELL is not set 216# CONFIG_PPC_CELL is not set
186# CONFIG_PPC_CELL_NATIVE is not set 217# CONFIG_PPC_CELL_NATIVE is not set
187# CONFIG_PQ2ADS is not set 218# CONFIG_PQ2ADS is not set
188CONFIG_MPC85xx=y 219CONFIG_FSL_SOC_BOOKE=y
189# CONFIG_MPC8540_ADS is not set 220# CONFIG_MPC8540_ADS is not set
190# CONFIG_MPC8560_ADS is not set 221# CONFIG_MPC8560_ADS is not set
191# CONFIG_MPC85xx_CDS is not set 222# CONFIG_MPC85xx_CDS is not set
@@ -204,6 +235,7 @@ CONFIG_TQM8540=y
204# CONFIG_TQM8560 is not set 235# CONFIG_TQM8560 is not set
205# CONFIG_SBC8548 is not set 236# CONFIG_SBC8548 is not set
206# CONFIG_SBC8560 is not set 237# CONFIG_SBC8560 is not set
238# CONFIG_P4080_DS is not set
207CONFIG_TQM85xx=y 239CONFIG_TQM85xx=y
208# CONFIG_IPIC is not set 240# CONFIG_IPIC is not set
209CONFIG_MPIC=y 241CONFIG_MPIC=y
@@ -248,6 +280,7 @@ CONFIG_MATH_EMULATION=y
248CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 280CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
249CONFIG_ARCH_HAS_WALK_MEMORY=y 281CONFIG_ARCH_HAS_WALK_MEMORY=y
250CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 282CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
283CONFIG_SPARSE_IRQ=y
251CONFIG_MAX_ACTIVE_REGIONS=32 284CONFIG_MAX_ACTIVE_REGIONS=32
252CONFIG_ARCH_FLATMEM_ENABLE=y 285CONFIG_ARCH_FLATMEM_ENABLE=y
253CONFIG_ARCH_POPULATES_NODE_MAP=y 286CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -264,8 +297,6 @@ CONFIG_MIGRATION=y
264CONFIG_ZONE_DMA_FLAG=1 297CONFIG_ZONE_DMA_FLAG=1
265CONFIG_BOUNCE=y 298CONFIG_BOUNCE=y
266CONFIG_VIRT_TO_BUS=y 299CONFIG_VIRT_TO_BUS=y
267CONFIG_HAVE_MLOCK=y
268CONFIG_HAVE_MLOCKED_PAGE_BIT=y
269# CONFIG_KSM is not set 300# CONFIG_KSM is not set
270CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 301CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
271CONFIG_PPC_4K_PAGES=y 302CONFIG_PPC_4K_PAGES=y
@@ -391,9 +422,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
391# CONFIG_AF_RXRPC is not set 422# CONFIG_AF_RXRPC is not set
392CONFIG_WIRELESS=y 423CONFIG_WIRELESS=y
393# CONFIG_CFG80211 is not set 424# CONFIG_CFG80211 is not set
394CONFIG_CFG80211_DEFAULT_PS_VALUE=0
395CONFIG_WIRELESS_OLD_REGULATORY=y
396# CONFIG_WIRELESS_EXT is not set
397# CONFIG_LIB80211 is not set 425# CONFIG_LIB80211 is not set
398 426
399# 427#
@@ -510,6 +538,10 @@ CONFIG_BLK_DEV=y
510# CONFIG_BLK_DEV_COW_COMMON is not set 538# CONFIG_BLK_DEV_COW_COMMON is not set
511CONFIG_BLK_DEV_LOOP=y 539CONFIG_BLK_DEV_LOOP=y
512# CONFIG_BLK_DEV_CRYPTOLOOP is not set 540# CONFIG_BLK_DEV_CRYPTOLOOP is not set
541
542#
543# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
544#
513# CONFIG_BLK_DEV_NBD is not set 545# CONFIG_BLK_DEV_NBD is not set
514# CONFIG_BLK_DEV_SX8 is not set 546# CONFIG_BLK_DEV_SX8 is not set
515CONFIG_BLK_DEV_RAM=y 547CONFIG_BLK_DEV_RAM=y
@@ -520,6 +552,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
520# CONFIG_ATA_OVER_ETH is not set 552# CONFIG_ATA_OVER_ETH is not set
521# CONFIG_BLK_DEV_HD is not set 553# CONFIG_BLK_DEV_HD is not set
522CONFIG_MISC_DEVICES=y 554CONFIG_MISC_DEVICES=y
555# CONFIG_AD525X_DPOT is not set
523# CONFIG_PHANTOM is not set 556# CONFIG_PHANTOM is not set
524# CONFIG_SGI_IOC4 is not set 557# CONFIG_SGI_IOC4 is not set
525# CONFIG_TIFM_CORE is not set 558# CONFIG_TIFM_CORE is not set
@@ -527,6 +560,7 @@ CONFIG_MISC_DEVICES=y
527# CONFIG_ENCLOSURE_SERVICES is not set 560# CONFIG_ENCLOSURE_SERVICES is not set
528# CONFIG_HP_ILO is not set 561# CONFIG_HP_ILO is not set
529# CONFIG_ISL29003 is not set 562# CONFIG_ISL29003 is not set
563# CONFIG_DS1682 is not set
530# CONFIG_C2PORT is not set 564# CONFIG_C2PORT is not set
531 565
532# 566#
@@ -615,7 +649,7 @@ CONFIG_BLK_DEV_IDEDMA=y
615# 649#
616 650
617# 651#
618# See the help texts for more information. 652# The newer stack is recommended.
619# 653#
620# CONFIG_FIREWIRE is not set 654# CONFIG_FIREWIRE is not set
621# CONFIG_IEEE1394 is not set 655# CONFIG_IEEE1394 is not set
@@ -738,8 +772,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
738# CONFIG_BE2NET is not set 772# CONFIG_BE2NET is not set
739# CONFIG_TR is not set 773# CONFIG_TR is not set
740CONFIG_WLAN=y 774CONFIG_WLAN=y
741# CONFIG_WLAN_PRE80211 is not set 775# CONFIG_AIRO is not set
742# CONFIG_WLAN_80211 is not set 776# CONFIG_ATMEL is not set
777# CONFIG_PRISM54 is not set
778# CONFIG_HOSTAP is not set
743 779
744# 780#
745# Enable WiMAX (Networking options) to see the WiMAX drivers 781# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -752,6 +788,7 @@ CONFIG_WLAN=y
752# CONFIG_NETCONSOLE is not set 788# CONFIG_NETCONSOLE is not set
753# CONFIG_NETPOLL is not set 789# CONFIG_NETPOLL is not set
754# CONFIG_NET_POLL_CONTROLLER is not set 790# CONFIG_NET_POLL_CONTROLLER is not set
791# CONFIG_VMXNET3 is not set
755# CONFIG_ISDN is not set 792# CONFIG_ISDN is not set
756# CONFIG_PHONE is not set 793# CONFIG_PHONE is not set
757 794
@@ -761,6 +798,7 @@ CONFIG_WLAN=y
761CONFIG_INPUT=y 798CONFIG_INPUT=y
762# CONFIG_INPUT_FF_MEMLESS is not set 799# CONFIG_INPUT_FF_MEMLESS is not set
763# CONFIG_INPUT_POLLDEV is not set 800# CONFIG_INPUT_POLLDEV is not set
801# CONFIG_INPUT_SPARSEKMAP is not set
764 802
765# 803#
766# Userland interfaces 804# Userland interfaces
@@ -813,6 +851,7 @@ CONFIG_SERIAL_CORE=y
813CONFIG_SERIAL_CORE_CONSOLE=y 851CONFIG_SERIAL_CORE_CONSOLE=y
814# CONFIG_SERIAL_JSM is not set 852# CONFIG_SERIAL_JSM is not set
815# CONFIG_SERIAL_OF_PLATFORM is not set 853# CONFIG_SERIAL_OF_PLATFORM is not set
854# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
816CONFIG_UNIX98_PTYS=y 855CONFIG_UNIX98_PTYS=y
817# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 856# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
818CONFIG_LEGACY_PTYS=y 857CONFIG_LEGACY_PTYS=y
@@ -871,11 +910,6 @@ CONFIG_I2C_MPC=y
871# CONFIG_I2C_TAOS_EVM is not set 910# CONFIG_I2C_TAOS_EVM is not set
872 911
873# 912#
874# Graphics adapter I2C/DDC channel drivers
875#
876# CONFIG_I2C_VOODOO3 is not set
877
878#
879# Other I2C/SMBus bus drivers 913# Other I2C/SMBus bus drivers
880# 914#
881# CONFIG_I2C_PCA_PLATFORM is not set 915# CONFIG_I2C_PCA_PLATFORM is not set
@@ -883,7 +917,6 @@ CONFIG_I2C_MPC=y
883# 917#
884# Miscellaneous I2C Chip support 918# Miscellaneous I2C Chip support
885# 919#
886# CONFIG_DS1682 is not set
887# CONFIG_SENSORS_TSL2550 is not set 920# CONFIG_SENSORS_TSL2550 is not set
888# CONFIG_I2C_DEBUG_CORE is not set 921# CONFIG_I2C_DEBUG_CORE is not set
889# CONFIG_I2C_DEBUG_ALGO is not set 922# CONFIG_I2C_DEBUG_ALGO is not set
@@ -929,6 +962,7 @@ CONFIG_HWMON_DEBUG_CHIP=y
929# CONFIG_SENSORS_GL520SM is not set 962# CONFIG_SENSORS_GL520SM is not set
930# CONFIG_SENSORS_IT87 is not set 963# CONFIG_SENSORS_IT87 is not set
931# CONFIG_SENSORS_LM63 is not set 964# CONFIG_SENSORS_LM63 is not set
965# CONFIG_SENSORS_LM73 is not set
932CONFIG_SENSORS_LM75=y 966CONFIG_SENSORS_LM75=y
933# CONFIG_SENSORS_LM77 is not set 967# CONFIG_SENSORS_LM77 is not set
934# CONFIG_SENSORS_LM78 is not set 968# CONFIG_SENSORS_LM78 is not set
@@ -967,6 +1001,7 @@ CONFIG_SENSORS_LM75=y
967# CONFIG_SENSORS_W83L786NG is not set 1001# CONFIG_SENSORS_W83L786NG is not set
968# CONFIG_SENSORS_W83627HF is not set 1002# CONFIG_SENSORS_W83627HF is not set
969# CONFIG_SENSORS_W83627EHF is not set 1003# CONFIG_SENSORS_W83627EHF is not set
1004# CONFIG_SENSORS_LIS3_I2C is not set
970# CONFIG_THERMAL is not set 1005# CONFIG_THERMAL is not set
971# CONFIG_WATCHDOG is not set 1006# CONFIG_WATCHDOG is not set
972CONFIG_SSB_POSSIBLE=y 1007CONFIG_SSB_POSSIBLE=y
@@ -985,11 +1020,13 @@ CONFIG_SSB_POSSIBLE=y
985# CONFIG_TWL4030_CORE is not set 1020# CONFIG_TWL4030_CORE is not set
986# CONFIG_MFD_TMIO is not set 1021# CONFIG_MFD_TMIO is not set
987# CONFIG_PMIC_DA903X is not set 1022# CONFIG_PMIC_DA903X is not set
1023# CONFIG_PMIC_ADP5520 is not set
988# CONFIG_MFD_WM8400 is not set 1024# CONFIG_MFD_WM8400 is not set
989# CONFIG_MFD_WM831X is not set 1025# CONFIG_MFD_WM831X is not set
990# CONFIG_MFD_WM8350_I2C is not set 1026# CONFIG_MFD_WM8350_I2C is not set
991# CONFIG_MFD_PCF50633 is not set 1027# CONFIG_MFD_PCF50633 is not set
992# CONFIG_AB3100_CORE is not set 1028# CONFIG_AB3100_CORE is not set
1029# CONFIG_MFD_88PM8607 is not set
993# CONFIG_REGULATOR is not set 1030# CONFIG_REGULATOR is not set
994# CONFIG_MEDIA_SUPPORT is not set 1031# CONFIG_MEDIA_SUPPORT is not set
995 1032
@@ -1220,7 +1257,7 @@ CONFIG_FRAME_WARN=1024
1220# CONFIG_DEBUG_KERNEL is not set 1257# CONFIG_DEBUG_KERNEL is not set
1221# CONFIG_SLUB_DEBUG_ON is not set 1258# CONFIG_SLUB_DEBUG_ON is not set
1222# CONFIG_SLUB_STATS is not set 1259# CONFIG_SLUB_STATS is not set
1223# CONFIG_DEBUG_BUGVERBOSE is not set 1260CONFIG_DEBUG_BUGVERBOSE=y
1224# CONFIG_DEBUG_MEMORY_INIT is not set 1261# CONFIG_DEBUG_MEMORY_INIT is not set
1225# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1262# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1226# CONFIG_LATENCYTOP is not set 1263# CONFIG_LATENCYTOP is not set
@@ -1246,7 +1283,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1246# CONFIG_KEYS is not set 1283# CONFIG_KEYS is not set
1247# CONFIG_SECURITY is not set 1284# CONFIG_SECURITY is not set
1248# CONFIG_SECURITYFS is not set 1285# CONFIG_SECURITYFS is not set
1249# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1286# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1287# CONFIG_DEFAULT_SECURITY_SMACK is not set
1288# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1289CONFIG_DEFAULT_SECURITY_DAC=y
1290CONFIG_DEFAULT_SECURITY=""
1250CONFIG_CRYPTO=y 1291CONFIG_CRYPTO=y
1251 1292
1252# 1293#
diff --git a/arch/powerpc/configs/85xx/tqm8541_defconfig b/arch/powerpc/configs/85xx/tqm8541_defconfig
index 91d85d733827..2137be4100ed 100644
--- a/arch/powerpc/configs/85xx/tqm8541_defconfig
+++ b/arch/powerpc/configs/85xx/tqm8541_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:40 2009 4# Wed Jan 6 09:24:34 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -89,6 +92,7 @@ CONFIG_SYSVIPC_SYSCTL=y
89# 92#
90CONFIG_TREE_RCU=y 93CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set 94# CONFIG_TREE_PREEMPT_RCU is not set
95# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set 96# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32 97CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set 98# CONFIG_RCU_FANOUT_EXACT is not set
@@ -171,14 +175,41 @@ CONFIG_LBDAF=y
171# IO Schedulers 175# IO Schedulers
172# 176#
173CONFIG_IOSCHED_NOOP=y 177CONFIG_IOSCHED_NOOP=y
174CONFIG_IOSCHED_AS=y
175CONFIG_IOSCHED_DEADLINE=y 178CONFIG_IOSCHED_DEADLINE=y
176CONFIG_IOSCHED_CFQ=y 179CONFIG_IOSCHED_CFQ=y
177CONFIG_DEFAULT_AS=y
178# CONFIG_DEFAULT_DEADLINE is not set 180# CONFIG_DEFAULT_DEADLINE is not set
179# CONFIG_DEFAULT_CFQ is not set 181CONFIG_DEFAULT_CFQ=y
180# CONFIG_DEFAULT_NOOP is not set 182# CONFIG_DEFAULT_NOOP is not set
181CONFIG_DEFAULT_IOSCHED="anticipatory" 183CONFIG_DEFAULT_IOSCHED="cfq"
184# CONFIG_INLINE_SPIN_TRYLOCK is not set
185# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK is not set
187# CONFIG_INLINE_SPIN_LOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
190CONFIG_INLINE_SPIN_UNLOCK=y
191# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
192CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
193# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
194# CONFIG_INLINE_READ_TRYLOCK is not set
195# CONFIG_INLINE_READ_LOCK is not set
196# CONFIG_INLINE_READ_LOCK_BH is not set
197# CONFIG_INLINE_READ_LOCK_IRQ is not set
198# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
199CONFIG_INLINE_READ_UNLOCK=y
200# CONFIG_INLINE_READ_UNLOCK_BH is not set
201CONFIG_INLINE_READ_UNLOCK_IRQ=y
202# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
203# CONFIG_INLINE_WRITE_TRYLOCK is not set
204# CONFIG_INLINE_WRITE_LOCK is not set
205# CONFIG_INLINE_WRITE_LOCK_BH is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
208CONFIG_INLINE_WRITE_UNLOCK=y
209# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
210CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
211# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
212# CONFIG_MUTEX_SPIN_ON_OWNER is not set
182# CONFIG_FREEZER is not set 213# CONFIG_FREEZER is not set
183 214
184# 215#
@@ -187,7 +218,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
187# CONFIG_PPC_CELL is not set 218# CONFIG_PPC_CELL is not set
188# CONFIG_PPC_CELL_NATIVE is not set 219# CONFIG_PPC_CELL_NATIVE is not set
189# CONFIG_PQ2ADS is not set 220# CONFIG_PQ2ADS is not set
190CONFIG_MPC85xx=y 221CONFIG_FSL_SOC_BOOKE=y
191# CONFIG_MPC8540_ADS is not set 222# CONFIG_MPC8540_ADS is not set
192# CONFIG_MPC8560_ADS is not set 223# CONFIG_MPC8560_ADS is not set
193# CONFIG_MPC85xx_CDS is not set 224# CONFIG_MPC85xx_CDS is not set
@@ -206,6 +237,7 @@ CONFIG_TQM8541=y
206# CONFIG_TQM8560 is not set 237# CONFIG_TQM8560 is not set
207# CONFIG_SBC8548 is not set 238# CONFIG_SBC8548 is not set
208# CONFIG_SBC8560 is not set 239# CONFIG_SBC8560 is not set
240# CONFIG_P4080_DS is not set
209CONFIG_TQM85xx=y 241CONFIG_TQM85xx=y
210# CONFIG_IPIC is not set 242# CONFIG_IPIC is not set
211CONFIG_MPIC=y 243CONFIG_MPIC=y
@@ -251,6 +283,7 @@ CONFIG_MATH_EMULATION=y
251CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
252CONFIG_ARCH_HAS_WALK_MEMORY=y 284CONFIG_ARCH_HAS_WALK_MEMORY=y
253CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 285CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
286CONFIG_SPARSE_IRQ=y
254CONFIG_MAX_ACTIVE_REGIONS=32 287CONFIG_MAX_ACTIVE_REGIONS=32
255CONFIG_ARCH_FLATMEM_ENABLE=y 288CONFIG_ARCH_FLATMEM_ENABLE=y
256CONFIG_ARCH_POPULATES_NODE_MAP=y 289CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -267,8 +300,6 @@ CONFIG_MIGRATION=y
267CONFIG_ZONE_DMA_FLAG=1 300CONFIG_ZONE_DMA_FLAG=1
268CONFIG_BOUNCE=y 301CONFIG_BOUNCE=y
269CONFIG_VIRT_TO_BUS=y 302CONFIG_VIRT_TO_BUS=y
270CONFIG_HAVE_MLOCK=y
271CONFIG_HAVE_MLOCKED_PAGE_BIT=y
272# CONFIG_KSM is not set 303# CONFIG_KSM is not set
273CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 304CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
274CONFIG_PPC_4K_PAGES=y 305CONFIG_PPC_4K_PAGES=y
@@ -394,9 +425,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
394# CONFIG_AF_RXRPC is not set 425# CONFIG_AF_RXRPC is not set
395CONFIG_WIRELESS=y 426CONFIG_WIRELESS=y
396# CONFIG_CFG80211 is not set 427# CONFIG_CFG80211 is not set
397CONFIG_CFG80211_DEFAULT_PS_VALUE=0
398CONFIG_WIRELESS_OLD_REGULATORY=y
399# CONFIG_WIRELESS_EXT is not set
400# CONFIG_LIB80211 is not set 428# CONFIG_LIB80211 is not set
401 429
402# 430#
@@ -514,6 +542,10 @@ CONFIG_BLK_DEV=y
514# CONFIG_BLK_DEV_COW_COMMON is not set 542# CONFIG_BLK_DEV_COW_COMMON is not set
515CONFIG_BLK_DEV_LOOP=y 543CONFIG_BLK_DEV_LOOP=y
516# CONFIG_BLK_DEV_CRYPTOLOOP is not set 544# CONFIG_BLK_DEV_CRYPTOLOOP is not set
545
546#
547# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
548#
517# CONFIG_BLK_DEV_NBD is not set 549# CONFIG_BLK_DEV_NBD is not set
518# CONFIG_BLK_DEV_SX8 is not set 550# CONFIG_BLK_DEV_SX8 is not set
519CONFIG_BLK_DEV_RAM=y 551CONFIG_BLK_DEV_RAM=y
@@ -524,6 +556,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
524# CONFIG_ATA_OVER_ETH is not set 556# CONFIG_ATA_OVER_ETH is not set
525# CONFIG_BLK_DEV_HD is not set 557# CONFIG_BLK_DEV_HD is not set
526CONFIG_MISC_DEVICES=y 558CONFIG_MISC_DEVICES=y
559# CONFIG_AD525X_DPOT is not set
527# CONFIG_PHANTOM is not set 560# CONFIG_PHANTOM is not set
528# CONFIG_SGI_IOC4 is not set 561# CONFIG_SGI_IOC4 is not set
529# CONFIG_TIFM_CORE is not set 562# CONFIG_TIFM_CORE is not set
@@ -531,6 +564,7 @@ CONFIG_MISC_DEVICES=y
531# CONFIG_ENCLOSURE_SERVICES is not set 564# CONFIG_ENCLOSURE_SERVICES is not set
532# CONFIG_HP_ILO is not set 565# CONFIG_HP_ILO is not set
533# CONFIG_ISL29003 is not set 566# CONFIG_ISL29003 is not set
567# CONFIG_DS1682 is not set
534# CONFIG_C2PORT is not set 568# CONFIG_C2PORT is not set
535 569
536# 570#
@@ -619,7 +653,7 @@ CONFIG_BLK_DEV_IDEDMA=y
619# 653#
620 654
621# 655#
622# See the help texts for more information. 656# The newer stack is recommended.
623# 657#
624# CONFIG_FIREWIRE is not set 658# CONFIG_FIREWIRE is not set
625# CONFIG_IEEE1394 is not set 659# CONFIG_IEEE1394 is not set
@@ -743,8 +777,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
743# CONFIG_BE2NET is not set 777# CONFIG_BE2NET is not set
744# CONFIG_TR is not set 778# CONFIG_TR is not set
745CONFIG_WLAN=y 779CONFIG_WLAN=y
746# CONFIG_WLAN_PRE80211 is not set 780# CONFIG_AIRO is not set
747# CONFIG_WLAN_80211 is not set 781# CONFIG_ATMEL is not set
782# CONFIG_PRISM54 is not set
783# CONFIG_HOSTAP is not set
748 784
749# 785#
750# Enable WiMAX (Networking options) to see the WiMAX drivers 786# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -757,6 +793,7 @@ CONFIG_WLAN=y
757# CONFIG_NETCONSOLE is not set 793# CONFIG_NETCONSOLE is not set
758# CONFIG_NETPOLL is not set 794# CONFIG_NETPOLL is not set
759# CONFIG_NET_POLL_CONTROLLER is not set 795# CONFIG_NET_POLL_CONTROLLER is not set
796# CONFIG_VMXNET3 is not set
760# CONFIG_ISDN is not set 797# CONFIG_ISDN is not set
761# CONFIG_PHONE is not set 798# CONFIG_PHONE is not set
762 799
@@ -766,6 +803,7 @@ CONFIG_WLAN=y
766CONFIG_INPUT=y 803CONFIG_INPUT=y
767# CONFIG_INPUT_FF_MEMLESS is not set 804# CONFIG_INPUT_FF_MEMLESS is not set
768# CONFIG_INPUT_POLLDEV is not set 805# CONFIG_INPUT_POLLDEV is not set
806# CONFIG_INPUT_SPARSEKMAP is not set
769 807
770# 808#
771# Userland interfaces 809# Userland interfaces
@@ -820,6 +858,7 @@ CONFIG_SERIAL_CPM=y
820CONFIG_SERIAL_CPM_CONSOLE=y 858CONFIG_SERIAL_CPM_CONSOLE=y
821# CONFIG_SERIAL_JSM is not set 859# CONFIG_SERIAL_JSM is not set
822# CONFIG_SERIAL_OF_PLATFORM is not set 860# CONFIG_SERIAL_OF_PLATFORM is not set
861# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
823CONFIG_UNIX98_PTYS=y 862CONFIG_UNIX98_PTYS=y
824# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 863# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
825CONFIG_LEGACY_PTYS=y 864CONFIG_LEGACY_PTYS=y
@@ -881,11 +920,6 @@ CONFIG_I2C_MPC=y
881# CONFIG_I2C_TAOS_EVM is not set 920# CONFIG_I2C_TAOS_EVM is not set
882 921
883# 922#
884# Graphics adapter I2C/DDC channel drivers
885#
886# CONFIG_I2C_VOODOO3 is not set
887
888#
889# Other I2C/SMBus bus drivers 923# Other I2C/SMBus bus drivers
890# 924#
891# CONFIG_I2C_PCA_PLATFORM is not set 925# CONFIG_I2C_PCA_PLATFORM is not set
@@ -893,7 +927,6 @@ CONFIG_I2C_MPC=y
893# 927#
894# Miscellaneous I2C Chip support 928# Miscellaneous I2C Chip support
895# 929#
896# CONFIG_DS1682 is not set
897# CONFIG_SENSORS_TSL2550 is not set 930# CONFIG_SENSORS_TSL2550 is not set
898# CONFIG_I2C_DEBUG_CORE is not set 931# CONFIG_I2C_DEBUG_CORE is not set
899# CONFIG_I2C_DEBUG_ALGO is not set 932# CONFIG_I2C_DEBUG_ALGO is not set
@@ -925,6 +958,7 @@ CONFIG_GPIOLIB=y
925# 958#
926# PCI GPIO expanders: 959# PCI GPIO expanders:
927# 960#
961# CONFIG_GPIO_CS5535 is not set
928# CONFIG_GPIO_BT8XX is not set 962# CONFIG_GPIO_BT8XX is not set
929# CONFIG_GPIO_LANGWELL is not set 963# CONFIG_GPIO_LANGWELL is not set
930 964
@@ -967,6 +1001,7 @@ CONFIG_HWMON_DEBUG_CHIP=y
967# CONFIG_SENSORS_GL520SM is not set 1001# CONFIG_SENSORS_GL520SM is not set
968# CONFIG_SENSORS_IT87 is not set 1002# CONFIG_SENSORS_IT87 is not set
969# CONFIG_SENSORS_LM63 is not set 1003# CONFIG_SENSORS_LM63 is not set
1004# CONFIG_SENSORS_LM73 is not set
970CONFIG_SENSORS_LM75=y 1005CONFIG_SENSORS_LM75=y
971# CONFIG_SENSORS_LM77 is not set 1006# CONFIG_SENSORS_LM77 is not set
972# CONFIG_SENSORS_LM78 is not set 1007# CONFIG_SENSORS_LM78 is not set
@@ -1006,6 +1041,7 @@ CONFIG_SENSORS_LM75=y
1006# CONFIG_SENSORS_W83L786NG is not set 1041# CONFIG_SENSORS_W83L786NG is not set
1007# CONFIG_SENSORS_W83627HF is not set 1042# CONFIG_SENSORS_W83627HF is not set
1008# CONFIG_SENSORS_W83627EHF is not set 1043# CONFIG_SENSORS_W83627EHF is not set
1044# CONFIG_SENSORS_LIS3_I2C is not set
1009# CONFIG_THERMAL is not set 1045# CONFIG_THERMAL is not set
1010# CONFIG_WATCHDOG is not set 1046# CONFIG_WATCHDOG is not set
1011CONFIG_SSB_POSSIBLE=y 1047CONFIG_SSB_POSSIBLE=y
@@ -1025,11 +1061,13 @@ CONFIG_SSB_POSSIBLE=y
1025# CONFIG_TWL4030_CORE is not set 1061# CONFIG_TWL4030_CORE is not set
1026# CONFIG_MFD_TMIO is not set 1062# CONFIG_MFD_TMIO is not set
1027# CONFIG_PMIC_DA903X is not set 1063# CONFIG_PMIC_DA903X is not set
1064# CONFIG_PMIC_ADP5520 is not set
1028# CONFIG_MFD_WM8400 is not set 1065# CONFIG_MFD_WM8400 is not set
1029# CONFIG_MFD_WM831X is not set 1066# CONFIG_MFD_WM831X is not set
1030# CONFIG_MFD_WM8350_I2C is not set 1067# CONFIG_MFD_WM8350_I2C is not set
1031# CONFIG_MFD_PCF50633 is not set 1068# CONFIG_MFD_PCF50633 is not set
1032# CONFIG_AB3100_CORE is not set 1069# CONFIG_AB3100_CORE is not set
1070# CONFIG_MFD_88PM8607 is not set
1033# CONFIG_REGULATOR is not set 1071# CONFIG_REGULATOR is not set
1034# CONFIG_MEDIA_SUPPORT is not set 1072# CONFIG_MEDIA_SUPPORT is not set
1035 1073
@@ -1260,7 +1298,7 @@ CONFIG_FRAME_WARN=1024
1260# CONFIG_DEBUG_KERNEL is not set 1298# CONFIG_DEBUG_KERNEL is not set
1261# CONFIG_SLUB_DEBUG_ON is not set 1299# CONFIG_SLUB_DEBUG_ON is not set
1262# CONFIG_SLUB_STATS is not set 1300# CONFIG_SLUB_STATS is not set
1263# CONFIG_DEBUG_BUGVERBOSE is not set 1301CONFIG_DEBUG_BUGVERBOSE=y
1264# CONFIG_DEBUG_MEMORY_INIT is not set 1302# CONFIG_DEBUG_MEMORY_INIT is not set
1265# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1303# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1266# CONFIG_LATENCYTOP is not set 1304# CONFIG_LATENCYTOP is not set
@@ -1286,7 +1324,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1286# CONFIG_KEYS is not set 1324# CONFIG_KEYS is not set
1287# CONFIG_SECURITY is not set 1325# CONFIG_SECURITY is not set
1288# CONFIG_SECURITYFS is not set 1326# CONFIG_SECURITYFS is not set
1289# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1327# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1328# CONFIG_DEFAULT_SECURITY_SMACK is not set
1329# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1330CONFIG_DEFAULT_SECURITY_DAC=y
1331CONFIG_DEFAULT_SECURITY=""
1290CONFIG_CRYPTO=y 1332CONFIG_CRYPTO=y
1291 1333
1292# 1334#
diff --git a/arch/powerpc/configs/85xx/tqm8548_defconfig b/arch/powerpc/configs/85xx/tqm8548_defconfig
index debe268f43d1..5cc89aac3fec 100644
--- a/arch/powerpc/configs/85xx/tqm8548_defconfig
+++ b/arch/powerpc/configs/85xx/tqm8548_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:41 2009 4# Wed Jan 6 09:24:35 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -88,6 +91,7 @@ CONFIG_SYSVIPC_SYSCTL=y
88# 91#
89CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -177,14 +181,41 @@ CONFIG_LBDAF=y
177# IO Schedulers 181# IO Schedulers
178# 182#
179CONFIG_IOSCHED_NOOP=y 183CONFIG_IOSCHED_NOOP=y
180CONFIG_IOSCHED_AS=y
181CONFIG_IOSCHED_DEADLINE=y 184CONFIG_IOSCHED_DEADLINE=y
182CONFIG_IOSCHED_CFQ=y 185CONFIG_IOSCHED_CFQ=y
183CONFIG_DEFAULT_AS=y
184# CONFIG_DEFAULT_DEADLINE is not set 186# CONFIG_DEFAULT_DEADLINE is not set
185# CONFIG_DEFAULT_CFQ is not set 187CONFIG_DEFAULT_CFQ=y
186# CONFIG_DEFAULT_NOOP is not set 188# CONFIG_DEFAULT_NOOP is not set
187CONFIG_DEFAULT_IOSCHED="anticipatory" 189CONFIG_DEFAULT_IOSCHED="cfq"
190# CONFIG_INLINE_SPIN_TRYLOCK is not set
191# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
192# CONFIG_INLINE_SPIN_LOCK is not set
193# CONFIG_INLINE_SPIN_LOCK_BH is not set
194# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
195# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
196CONFIG_INLINE_SPIN_UNLOCK=y
197# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
198CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
199# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
200# CONFIG_INLINE_READ_TRYLOCK is not set
201# CONFIG_INLINE_READ_LOCK is not set
202# CONFIG_INLINE_READ_LOCK_BH is not set
203# CONFIG_INLINE_READ_LOCK_IRQ is not set
204# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
205CONFIG_INLINE_READ_UNLOCK=y
206# CONFIG_INLINE_READ_UNLOCK_BH is not set
207CONFIG_INLINE_READ_UNLOCK_IRQ=y
208# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
209# CONFIG_INLINE_WRITE_TRYLOCK is not set
210# CONFIG_INLINE_WRITE_LOCK is not set
211# CONFIG_INLINE_WRITE_LOCK_BH is not set
212# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
213# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
214CONFIG_INLINE_WRITE_UNLOCK=y
215# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
216CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
217# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
218# CONFIG_MUTEX_SPIN_ON_OWNER is not set
188# CONFIG_FREEZER is not set 219# CONFIG_FREEZER is not set
189 220
190# 221#
@@ -193,7 +224,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
193# CONFIG_PPC_CELL is not set 224# CONFIG_PPC_CELL is not set
194# CONFIG_PPC_CELL_NATIVE is not set 225# CONFIG_PPC_CELL_NATIVE is not set
195# CONFIG_PQ2ADS is not set 226# CONFIG_PQ2ADS is not set
196CONFIG_MPC85xx=y 227CONFIG_FSL_SOC_BOOKE=y
197# CONFIG_MPC8540_ADS is not set 228# CONFIG_MPC8540_ADS is not set
198# CONFIG_MPC8560_ADS is not set 229# CONFIG_MPC8560_ADS is not set
199# CONFIG_MPC85xx_CDS is not set 230# CONFIG_MPC85xx_CDS is not set
@@ -212,6 +243,7 @@ CONFIG_TQM8548=y
212# CONFIG_TQM8560 is not set 243# CONFIG_TQM8560 is not set
213# CONFIG_SBC8548 is not set 244# CONFIG_SBC8548 is not set
214# CONFIG_SBC8560 is not set 245# CONFIG_SBC8560 is not set
246# CONFIG_P4080_DS is not set
215CONFIG_TQM85xx=y 247CONFIG_TQM85xx=y
216# CONFIG_IPIC is not set 248# CONFIG_IPIC is not set
217CONFIG_MPIC=y 249CONFIG_MPIC=y
@@ -257,6 +289,7 @@ CONFIG_MATH_EMULATION=y
257CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 289CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
258CONFIG_ARCH_HAS_WALK_MEMORY=y 290CONFIG_ARCH_HAS_WALK_MEMORY=y
259CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 291CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
292CONFIG_SPARSE_IRQ=y
260CONFIG_MAX_ACTIVE_REGIONS=32 293CONFIG_MAX_ACTIVE_REGIONS=32
261CONFIG_ARCH_FLATMEM_ENABLE=y 294CONFIG_ARCH_FLATMEM_ENABLE=y
262CONFIG_ARCH_POPULATES_NODE_MAP=y 295CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -273,8 +306,6 @@ CONFIG_MIGRATION=y
273CONFIG_ZONE_DMA_FLAG=1 306CONFIG_ZONE_DMA_FLAG=1
274CONFIG_BOUNCE=y 307CONFIG_BOUNCE=y
275CONFIG_VIRT_TO_BUS=y 308CONFIG_VIRT_TO_BUS=y
276CONFIG_HAVE_MLOCK=y
277CONFIG_HAVE_MLOCKED_PAGE_BIT=y
278# CONFIG_KSM is not set 309# CONFIG_KSM is not set
279CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 310CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
280CONFIG_PPC_4K_PAGES=y 311CONFIG_PPC_4K_PAGES=y
@@ -406,7 +437,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
406# CONFIG_IRDA is not set 437# CONFIG_IRDA is not set
407# CONFIG_BT is not set 438# CONFIG_BT is not set
408# CONFIG_AF_RXRPC is not set 439# CONFIG_AF_RXRPC is not set
409# CONFIG_WIRELESS is not set 440CONFIG_WIRELESS=y
441# CONFIG_CFG80211 is not set
442# CONFIG_LIB80211 is not set
443
444#
445# CFG80211 needs to be enabled for MAC80211
446#
410# CONFIG_WIMAX is not set 447# CONFIG_WIMAX is not set
411# CONFIG_RFKILL is not set 448# CONFIG_RFKILL is not set
412# CONFIG_NET_9P is not set 449# CONFIG_NET_9P is not set
@@ -535,6 +572,10 @@ CONFIG_BLK_DEV=y
535# CONFIG_BLK_DEV_COW_COMMON is not set 572# CONFIG_BLK_DEV_COW_COMMON is not set
536CONFIG_BLK_DEV_LOOP=y 573CONFIG_BLK_DEV_LOOP=y
537# CONFIG_BLK_DEV_CRYPTOLOOP is not set 574# CONFIG_BLK_DEV_CRYPTOLOOP is not set
575
576#
577# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
578#
538# CONFIG_BLK_DEV_NBD is not set 579# CONFIG_BLK_DEV_NBD is not set
539# CONFIG_BLK_DEV_SX8 is not set 580# CONFIG_BLK_DEV_SX8 is not set
540CONFIG_BLK_DEV_RAM=y 581CONFIG_BLK_DEV_RAM=y
@@ -545,6 +586,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
545# CONFIG_ATA_OVER_ETH is not set 586# CONFIG_ATA_OVER_ETH is not set
546# CONFIG_BLK_DEV_HD is not set 587# CONFIG_BLK_DEV_HD is not set
547CONFIG_MISC_DEVICES=y 588CONFIG_MISC_DEVICES=y
589# CONFIG_AD525X_DPOT is not set
548# CONFIG_PHANTOM is not set 590# CONFIG_PHANTOM is not set
549# CONFIG_SGI_IOC4 is not set 591# CONFIG_SGI_IOC4 is not set
550# CONFIG_TIFM_CORE is not set 592# CONFIG_TIFM_CORE is not set
@@ -552,6 +594,7 @@ CONFIG_MISC_DEVICES=y
552# CONFIG_ENCLOSURE_SERVICES is not set 594# CONFIG_ENCLOSURE_SERVICES is not set
553# CONFIG_HP_ILO is not set 595# CONFIG_HP_ILO is not set
554# CONFIG_ISL29003 is not set 596# CONFIG_ISL29003 is not set
597# CONFIG_DS1682 is not set
555# CONFIG_C2PORT is not set 598# CONFIG_C2PORT is not set
556 599
557# 600#
@@ -585,7 +628,7 @@ CONFIG_HAVE_IDE=y
585# 628#
586 629
587# 630#
588# See the help texts for more information. 631# The newer stack is recommended.
589# 632#
590# CONFIG_FIREWIRE is not set 633# CONFIG_FIREWIRE is not set
591# CONFIG_IEEE1394 is not set 634# CONFIG_IEEE1394 is not set
@@ -690,8 +733,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
690# CONFIG_BE2NET is not set 733# CONFIG_BE2NET is not set
691# CONFIG_TR is not set 734# CONFIG_TR is not set
692CONFIG_WLAN=y 735CONFIG_WLAN=y
693# CONFIG_WLAN_PRE80211 is not set 736# CONFIG_AIRO is not set
694# CONFIG_WLAN_80211 is not set 737# CONFIG_ATMEL is not set
738# CONFIG_PRISM54 is not set
739# CONFIG_HOSTAP is not set
695 740
696# 741#
697# Enable WiMAX (Networking options) to see the WiMAX drivers 742# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -704,6 +749,7 @@ CONFIG_WLAN=y
704# CONFIG_NETCONSOLE is not set 749# CONFIG_NETCONSOLE is not set
705# CONFIG_NETPOLL is not set 750# CONFIG_NETPOLL is not set
706# CONFIG_NET_POLL_CONTROLLER is not set 751# CONFIG_NET_POLL_CONTROLLER is not set
752# CONFIG_VMXNET3 is not set
707# CONFIG_ISDN is not set 753# CONFIG_ISDN is not set
708# CONFIG_PHONE is not set 754# CONFIG_PHONE is not set
709 755
@@ -713,6 +759,7 @@ CONFIG_WLAN=y
713CONFIG_INPUT=y 759CONFIG_INPUT=y
714# CONFIG_INPUT_FF_MEMLESS is not set 760# CONFIG_INPUT_FF_MEMLESS is not set
715# CONFIG_INPUT_POLLDEV is not set 761# CONFIG_INPUT_POLLDEV is not set
762# CONFIG_INPUT_SPARSEKMAP is not set
716 763
717# 764#
718# Userland interfaces 765# Userland interfaces
@@ -765,6 +812,7 @@ CONFIG_SERIAL_CORE=y
765CONFIG_SERIAL_CORE_CONSOLE=y 812CONFIG_SERIAL_CORE_CONSOLE=y
766# CONFIG_SERIAL_JSM is not set 813# CONFIG_SERIAL_JSM is not set
767# CONFIG_SERIAL_OF_PLATFORM is not set 814# CONFIG_SERIAL_OF_PLATFORM is not set
815# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
768CONFIG_UNIX98_PTYS=y 816CONFIG_UNIX98_PTYS=y
769# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 817# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
770CONFIG_LEGACY_PTYS=y 818CONFIG_LEGACY_PTYS=y
@@ -820,11 +868,6 @@ CONFIG_I2C_MPC=y
820# CONFIG_I2C_TAOS_EVM is not set 868# CONFIG_I2C_TAOS_EVM is not set
821 869
822# 870#
823# Graphics adapter I2C/DDC channel drivers
824#
825# CONFIG_I2C_VOODOO3 is not set
826
827#
828# Other I2C/SMBus bus drivers 871# Other I2C/SMBus bus drivers
829# 872#
830# CONFIG_I2C_PCA_PLATFORM is not set 873# CONFIG_I2C_PCA_PLATFORM is not set
@@ -833,7 +876,6 @@ CONFIG_I2C_MPC=y
833# 876#
834# Miscellaneous I2C Chip support 877# Miscellaneous I2C Chip support
835# 878#
836# CONFIG_DS1682 is not set
837# CONFIG_SENSORS_TSL2550 is not set 879# CONFIG_SENSORS_TSL2550 is not set
838# CONFIG_I2C_DEBUG_CORE is not set 880# CONFIG_I2C_DEBUG_CORE is not set
839# CONFIG_I2C_DEBUG_ALGO is not set 881# CONFIG_I2C_DEBUG_ALGO is not set
@@ -879,6 +921,7 @@ CONFIG_HWMON=y
879# CONFIG_SENSORS_GL520SM is not set 921# CONFIG_SENSORS_GL520SM is not set
880# CONFIG_SENSORS_IT87 is not set 922# CONFIG_SENSORS_IT87 is not set
881# CONFIG_SENSORS_LM63 is not set 923# CONFIG_SENSORS_LM63 is not set
924# CONFIG_SENSORS_LM73 is not set
882CONFIG_SENSORS_LM75=y 925CONFIG_SENSORS_LM75=y
883# CONFIG_SENSORS_LM77 is not set 926# CONFIG_SENSORS_LM77 is not set
884# CONFIG_SENSORS_LM78 is not set 927# CONFIG_SENSORS_LM78 is not set
@@ -917,6 +960,7 @@ CONFIG_SENSORS_LM75=y
917# CONFIG_SENSORS_W83L786NG is not set 960# CONFIG_SENSORS_W83L786NG is not set
918# CONFIG_SENSORS_W83627HF is not set 961# CONFIG_SENSORS_W83627HF is not set
919# CONFIG_SENSORS_W83627EHF is not set 962# CONFIG_SENSORS_W83627EHF is not set
963# CONFIG_SENSORS_LIS3_I2C is not set
920# CONFIG_THERMAL is not set 964# CONFIG_THERMAL is not set
921# CONFIG_WATCHDOG is not set 965# CONFIG_WATCHDOG is not set
922CONFIG_SSB_POSSIBLE=y 966CONFIG_SSB_POSSIBLE=y
@@ -935,11 +979,13 @@ CONFIG_SSB_POSSIBLE=y
935# CONFIG_TWL4030_CORE is not set 979# CONFIG_TWL4030_CORE is not set
936# CONFIG_MFD_TMIO is not set 980# CONFIG_MFD_TMIO is not set
937# CONFIG_PMIC_DA903X is not set 981# CONFIG_PMIC_DA903X is not set
982# CONFIG_PMIC_ADP5520 is not set
938# CONFIG_MFD_WM8400 is not set 983# CONFIG_MFD_WM8400 is not set
939# CONFIG_MFD_WM831X is not set 984# CONFIG_MFD_WM831X is not set
940# CONFIG_MFD_WM8350_I2C is not set 985# CONFIG_MFD_WM8350_I2C is not set
941# CONFIG_MFD_PCF50633 is not set 986# CONFIG_MFD_PCF50633 is not set
942# CONFIG_AB3100_CORE is not set 987# CONFIG_AB3100_CORE is not set
988# CONFIG_MFD_88PM8607 is not set
943# CONFIG_REGULATOR is not set 989# CONFIG_REGULATOR is not set
944# CONFIG_MEDIA_SUPPORT is not set 990# CONFIG_MEDIA_SUPPORT is not set
945 991
@@ -1003,6 +1049,7 @@ CONFIG_RTC_DRV_DS1307=y
1003# CONFIG_RTC_DRV_PCF8563 is not set 1049# CONFIG_RTC_DRV_PCF8563 is not set
1004# CONFIG_RTC_DRV_PCF8583 is not set 1050# CONFIG_RTC_DRV_PCF8583 is not set
1005# CONFIG_RTC_DRV_M41T80 is not set 1051# CONFIG_RTC_DRV_M41T80 is not set
1052# CONFIG_RTC_DRV_BQ32K is not set
1006# CONFIG_RTC_DRV_S35390A is not set 1053# CONFIG_RTC_DRV_S35390A is not set
1007# CONFIG_RTC_DRV_FM3130 is not set 1054# CONFIG_RTC_DRV_FM3130 is not set
1008# CONFIG_RTC_DRV_RX8581 is not set 1055# CONFIG_RTC_DRV_RX8581 is not set
@@ -1024,7 +1071,9 @@ CONFIG_RTC_DRV_DS1307=y
1024# CONFIG_RTC_DRV_M48T86 is not set 1071# CONFIG_RTC_DRV_M48T86 is not set
1025# CONFIG_RTC_DRV_M48T35 is not set 1072# CONFIG_RTC_DRV_M48T35 is not set
1026# CONFIG_RTC_DRV_M48T59 is not set 1073# CONFIG_RTC_DRV_M48T59 is not set
1074# CONFIG_RTC_DRV_MSM6242 is not set
1027# CONFIG_RTC_DRV_BQ4802 is not set 1075# CONFIG_RTC_DRV_BQ4802 is not set
1076# CONFIG_RTC_DRV_RP5C01 is not set
1028# CONFIG_RTC_DRV_V3020 is not set 1077# CONFIG_RTC_DRV_V3020 is not set
1029 1078
1030# 1079#
@@ -1280,7 +1329,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1280# CONFIG_KEYS is not set 1329# CONFIG_KEYS is not set
1281# CONFIG_SECURITY is not set 1330# CONFIG_SECURITY is not set
1282# CONFIG_SECURITYFS is not set 1331# CONFIG_SECURITYFS is not set
1283# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1332# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1333# CONFIG_DEFAULT_SECURITY_SMACK is not set
1334# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1335CONFIG_DEFAULT_SECURITY_DAC=y
1336CONFIG_DEFAULT_SECURITY=""
1284CONFIG_CRYPTO=y 1337CONFIG_CRYPTO=y
1285 1338
1286# 1339#
diff --git a/arch/powerpc/configs/85xx/tqm8555_defconfig b/arch/powerpc/configs/85xx/tqm8555_defconfig
index 74515501f5b7..e7b9148e58cf 100644
--- a/arch/powerpc/configs/85xx/tqm8555_defconfig
+++ b/arch/powerpc/configs/85xx/tqm8555_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:42 2009 4# Wed Jan 6 09:24:36 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -89,6 +92,7 @@ CONFIG_SYSVIPC_SYSCTL=y
89# 92#
90CONFIG_TREE_RCU=y 93CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set 94# CONFIG_TREE_PREEMPT_RCU is not set
95# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set 96# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32 97CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set 98# CONFIG_RCU_FANOUT_EXACT is not set
@@ -171,14 +175,41 @@ CONFIG_LBDAF=y
171# IO Schedulers 175# IO Schedulers
172# 176#
173CONFIG_IOSCHED_NOOP=y 177CONFIG_IOSCHED_NOOP=y
174CONFIG_IOSCHED_AS=y
175CONFIG_IOSCHED_DEADLINE=y 178CONFIG_IOSCHED_DEADLINE=y
176CONFIG_IOSCHED_CFQ=y 179CONFIG_IOSCHED_CFQ=y
177CONFIG_DEFAULT_AS=y
178# CONFIG_DEFAULT_DEADLINE is not set 180# CONFIG_DEFAULT_DEADLINE is not set
179# CONFIG_DEFAULT_CFQ is not set 181CONFIG_DEFAULT_CFQ=y
180# CONFIG_DEFAULT_NOOP is not set 182# CONFIG_DEFAULT_NOOP is not set
181CONFIG_DEFAULT_IOSCHED="anticipatory" 183CONFIG_DEFAULT_IOSCHED="cfq"
184# CONFIG_INLINE_SPIN_TRYLOCK is not set
185# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK is not set
187# CONFIG_INLINE_SPIN_LOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
190CONFIG_INLINE_SPIN_UNLOCK=y
191# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
192CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
193# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
194# CONFIG_INLINE_READ_TRYLOCK is not set
195# CONFIG_INLINE_READ_LOCK is not set
196# CONFIG_INLINE_READ_LOCK_BH is not set
197# CONFIG_INLINE_READ_LOCK_IRQ is not set
198# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
199CONFIG_INLINE_READ_UNLOCK=y
200# CONFIG_INLINE_READ_UNLOCK_BH is not set
201CONFIG_INLINE_READ_UNLOCK_IRQ=y
202# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
203# CONFIG_INLINE_WRITE_TRYLOCK is not set
204# CONFIG_INLINE_WRITE_LOCK is not set
205# CONFIG_INLINE_WRITE_LOCK_BH is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
208CONFIG_INLINE_WRITE_UNLOCK=y
209# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
210CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
211# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
212# CONFIG_MUTEX_SPIN_ON_OWNER is not set
182# CONFIG_FREEZER is not set 213# CONFIG_FREEZER is not set
183 214
184# 215#
@@ -187,7 +218,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
187# CONFIG_PPC_CELL is not set 218# CONFIG_PPC_CELL is not set
188# CONFIG_PPC_CELL_NATIVE is not set 219# CONFIG_PPC_CELL_NATIVE is not set
189# CONFIG_PQ2ADS is not set 220# CONFIG_PQ2ADS is not set
190CONFIG_MPC85xx=y 221CONFIG_FSL_SOC_BOOKE=y
191# CONFIG_MPC8540_ADS is not set 222# CONFIG_MPC8540_ADS is not set
192# CONFIG_MPC8560_ADS is not set 223# CONFIG_MPC8560_ADS is not set
193# CONFIG_MPC85xx_CDS is not set 224# CONFIG_MPC85xx_CDS is not set
@@ -206,6 +237,7 @@ CONFIG_TQM8555=y
206# CONFIG_TQM8560 is not set 237# CONFIG_TQM8560 is not set
207# CONFIG_SBC8548 is not set 238# CONFIG_SBC8548 is not set
208# CONFIG_SBC8560 is not set 239# CONFIG_SBC8560 is not set
240# CONFIG_P4080_DS is not set
209CONFIG_TQM85xx=y 241CONFIG_TQM85xx=y
210# CONFIG_IPIC is not set 242# CONFIG_IPIC is not set
211CONFIG_MPIC=y 243CONFIG_MPIC=y
@@ -251,6 +283,7 @@ CONFIG_MATH_EMULATION=y
251CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
252CONFIG_ARCH_HAS_WALK_MEMORY=y 284CONFIG_ARCH_HAS_WALK_MEMORY=y
253CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 285CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
286CONFIG_SPARSE_IRQ=y
254CONFIG_MAX_ACTIVE_REGIONS=32 287CONFIG_MAX_ACTIVE_REGIONS=32
255CONFIG_ARCH_FLATMEM_ENABLE=y 288CONFIG_ARCH_FLATMEM_ENABLE=y
256CONFIG_ARCH_POPULATES_NODE_MAP=y 289CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -267,8 +300,6 @@ CONFIG_MIGRATION=y
267CONFIG_ZONE_DMA_FLAG=1 300CONFIG_ZONE_DMA_FLAG=1
268CONFIG_BOUNCE=y 301CONFIG_BOUNCE=y
269CONFIG_VIRT_TO_BUS=y 302CONFIG_VIRT_TO_BUS=y
270CONFIG_HAVE_MLOCK=y
271CONFIG_HAVE_MLOCKED_PAGE_BIT=y
272# CONFIG_KSM is not set 303# CONFIG_KSM is not set
273CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 304CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
274CONFIG_PPC_4K_PAGES=y 305CONFIG_PPC_4K_PAGES=y
@@ -394,9 +425,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
394# CONFIG_AF_RXRPC is not set 425# CONFIG_AF_RXRPC is not set
395CONFIG_WIRELESS=y 426CONFIG_WIRELESS=y
396# CONFIG_CFG80211 is not set 427# CONFIG_CFG80211 is not set
397CONFIG_CFG80211_DEFAULT_PS_VALUE=0
398CONFIG_WIRELESS_OLD_REGULATORY=y
399# CONFIG_WIRELESS_EXT is not set
400# CONFIG_LIB80211 is not set 428# CONFIG_LIB80211 is not set
401 429
402# 430#
@@ -514,6 +542,10 @@ CONFIG_BLK_DEV=y
514# CONFIG_BLK_DEV_COW_COMMON is not set 542# CONFIG_BLK_DEV_COW_COMMON is not set
515CONFIG_BLK_DEV_LOOP=y 543CONFIG_BLK_DEV_LOOP=y
516# CONFIG_BLK_DEV_CRYPTOLOOP is not set 544# CONFIG_BLK_DEV_CRYPTOLOOP is not set
545
546#
547# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
548#
517# CONFIG_BLK_DEV_NBD is not set 549# CONFIG_BLK_DEV_NBD is not set
518# CONFIG_BLK_DEV_SX8 is not set 550# CONFIG_BLK_DEV_SX8 is not set
519CONFIG_BLK_DEV_RAM=y 551CONFIG_BLK_DEV_RAM=y
@@ -524,6 +556,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
524# CONFIG_ATA_OVER_ETH is not set 556# CONFIG_ATA_OVER_ETH is not set
525# CONFIG_BLK_DEV_HD is not set 557# CONFIG_BLK_DEV_HD is not set
526CONFIG_MISC_DEVICES=y 558CONFIG_MISC_DEVICES=y
559# CONFIG_AD525X_DPOT is not set
527# CONFIG_PHANTOM is not set 560# CONFIG_PHANTOM is not set
528# CONFIG_SGI_IOC4 is not set 561# CONFIG_SGI_IOC4 is not set
529# CONFIG_TIFM_CORE is not set 562# CONFIG_TIFM_CORE is not set
@@ -531,6 +564,7 @@ CONFIG_MISC_DEVICES=y
531# CONFIG_ENCLOSURE_SERVICES is not set 564# CONFIG_ENCLOSURE_SERVICES is not set
532# CONFIG_HP_ILO is not set 565# CONFIG_HP_ILO is not set
533# CONFIG_ISL29003 is not set 566# CONFIG_ISL29003 is not set
567# CONFIG_DS1682 is not set
534# CONFIG_C2PORT is not set 568# CONFIG_C2PORT is not set
535 569
536# 570#
@@ -619,7 +653,7 @@ CONFIG_BLK_DEV_IDEDMA=y
619# 653#
620 654
621# 655#
622# See the help texts for more information. 656# The newer stack is recommended.
623# 657#
624# CONFIG_FIREWIRE is not set 658# CONFIG_FIREWIRE is not set
625# CONFIG_IEEE1394 is not set 659# CONFIG_IEEE1394 is not set
@@ -743,8 +777,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
743# CONFIG_BE2NET is not set 777# CONFIG_BE2NET is not set
744# CONFIG_TR is not set 778# CONFIG_TR is not set
745CONFIG_WLAN=y 779CONFIG_WLAN=y
746# CONFIG_WLAN_PRE80211 is not set 780# CONFIG_AIRO is not set
747# CONFIG_WLAN_80211 is not set 781# CONFIG_ATMEL is not set
782# CONFIG_PRISM54 is not set
783# CONFIG_HOSTAP is not set
748 784
749# 785#
750# Enable WiMAX (Networking options) to see the WiMAX drivers 786# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -757,6 +793,7 @@ CONFIG_WLAN=y
757# CONFIG_NETCONSOLE is not set 793# CONFIG_NETCONSOLE is not set
758# CONFIG_NETPOLL is not set 794# CONFIG_NETPOLL is not set
759# CONFIG_NET_POLL_CONTROLLER is not set 795# CONFIG_NET_POLL_CONTROLLER is not set
796# CONFIG_VMXNET3 is not set
760# CONFIG_ISDN is not set 797# CONFIG_ISDN is not set
761# CONFIG_PHONE is not set 798# CONFIG_PHONE is not set
762 799
@@ -766,6 +803,7 @@ CONFIG_WLAN=y
766CONFIG_INPUT=y 803CONFIG_INPUT=y
767# CONFIG_INPUT_FF_MEMLESS is not set 804# CONFIG_INPUT_FF_MEMLESS is not set
768# CONFIG_INPUT_POLLDEV is not set 805# CONFIG_INPUT_POLLDEV is not set
806# CONFIG_INPUT_SPARSEKMAP is not set
769 807
770# 808#
771# Userland interfaces 809# Userland interfaces
@@ -820,6 +858,7 @@ CONFIG_SERIAL_CPM=y
820CONFIG_SERIAL_CPM_CONSOLE=y 858CONFIG_SERIAL_CPM_CONSOLE=y
821# CONFIG_SERIAL_JSM is not set 859# CONFIG_SERIAL_JSM is not set
822# CONFIG_SERIAL_OF_PLATFORM is not set 860# CONFIG_SERIAL_OF_PLATFORM is not set
861# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
823CONFIG_UNIX98_PTYS=y 862CONFIG_UNIX98_PTYS=y
824# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 863# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
825CONFIG_LEGACY_PTYS=y 864CONFIG_LEGACY_PTYS=y
@@ -881,11 +920,6 @@ CONFIG_I2C_MPC=y
881# CONFIG_I2C_TAOS_EVM is not set 920# CONFIG_I2C_TAOS_EVM is not set
882 921
883# 922#
884# Graphics adapter I2C/DDC channel drivers
885#
886# CONFIG_I2C_VOODOO3 is not set
887
888#
889# Other I2C/SMBus bus drivers 923# Other I2C/SMBus bus drivers
890# 924#
891# CONFIG_I2C_PCA_PLATFORM is not set 925# CONFIG_I2C_PCA_PLATFORM is not set
@@ -893,7 +927,6 @@ CONFIG_I2C_MPC=y
893# 927#
894# Miscellaneous I2C Chip support 928# Miscellaneous I2C Chip support
895# 929#
896# CONFIG_DS1682 is not set
897# CONFIG_SENSORS_TSL2550 is not set 930# CONFIG_SENSORS_TSL2550 is not set
898# CONFIG_I2C_DEBUG_CORE is not set 931# CONFIG_I2C_DEBUG_CORE is not set
899# CONFIG_I2C_DEBUG_ALGO is not set 932# CONFIG_I2C_DEBUG_ALGO is not set
@@ -925,6 +958,7 @@ CONFIG_GPIOLIB=y
925# 958#
926# PCI GPIO expanders: 959# PCI GPIO expanders:
927# 960#
961# CONFIG_GPIO_CS5535 is not set
928# CONFIG_GPIO_BT8XX is not set 962# CONFIG_GPIO_BT8XX is not set
929# CONFIG_GPIO_LANGWELL is not set 963# CONFIG_GPIO_LANGWELL is not set
930 964
@@ -967,6 +1001,7 @@ CONFIG_HWMON_DEBUG_CHIP=y
967# CONFIG_SENSORS_GL520SM is not set 1001# CONFIG_SENSORS_GL520SM is not set
968# CONFIG_SENSORS_IT87 is not set 1002# CONFIG_SENSORS_IT87 is not set
969# CONFIG_SENSORS_LM63 is not set 1003# CONFIG_SENSORS_LM63 is not set
1004# CONFIG_SENSORS_LM73 is not set
970CONFIG_SENSORS_LM75=y 1005CONFIG_SENSORS_LM75=y
971# CONFIG_SENSORS_LM77 is not set 1006# CONFIG_SENSORS_LM77 is not set
972# CONFIG_SENSORS_LM78 is not set 1007# CONFIG_SENSORS_LM78 is not set
@@ -1006,6 +1041,7 @@ CONFIG_SENSORS_LM75=y
1006# CONFIG_SENSORS_W83L786NG is not set 1041# CONFIG_SENSORS_W83L786NG is not set
1007# CONFIG_SENSORS_W83627HF is not set 1042# CONFIG_SENSORS_W83627HF is not set
1008# CONFIG_SENSORS_W83627EHF is not set 1043# CONFIG_SENSORS_W83627EHF is not set
1044# CONFIG_SENSORS_LIS3_I2C is not set
1009# CONFIG_THERMAL is not set 1045# CONFIG_THERMAL is not set
1010# CONFIG_WATCHDOG is not set 1046# CONFIG_WATCHDOG is not set
1011CONFIG_SSB_POSSIBLE=y 1047CONFIG_SSB_POSSIBLE=y
@@ -1025,11 +1061,13 @@ CONFIG_SSB_POSSIBLE=y
1025# CONFIG_TWL4030_CORE is not set 1061# CONFIG_TWL4030_CORE is not set
1026# CONFIG_MFD_TMIO is not set 1062# CONFIG_MFD_TMIO is not set
1027# CONFIG_PMIC_DA903X is not set 1063# CONFIG_PMIC_DA903X is not set
1064# CONFIG_PMIC_ADP5520 is not set
1028# CONFIG_MFD_WM8400 is not set 1065# CONFIG_MFD_WM8400 is not set
1029# CONFIG_MFD_WM831X is not set 1066# CONFIG_MFD_WM831X is not set
1030# CONFIG_MFD_WM8350_I2C is not set 1067# CONFIG_MFD_WM8350_I2C is not set
1031# CONFIG_MFD_PCF50633 is not set 1068# CONFIG_MFD_PCF50633 is not set
1032# CONFIG_AB3100_CORE is not set 1069# CONFIG_AB3100_CORE is not set
1070# CONFIG_MFD_88PM8607 is not set
1033# CONFIG_REGULATOR is not set 1071# CONFIG_REGULATOR is not set
1034# CONFIG_MEDIA_SUPPORT is not set 1072# CONFIG_MEDIA_SUPPORT is not set
1035 1073
@@ -1260,7 +1298,7 @@ CONFIG_FRAME_WARN=1024
1260# CONFIG_DEBUG_KERNEL is not set 1298# CONFIG_DEBUG_KERNEL is not set
1261# CONFIG_SLUB_DEBUG_ON is not set 1299# CONFIG_SLUB_DEBUG_ON is not set
1262# CONFIG_SLUB_STATS is not set 1300# CONFIG_SLUB_STATS is not set
1263# CONFIG_DEBUG_BUGVERBOSE is not set 1301CONFIG_DEBUG_BUGVERBOSE=y
1264# CONFIG_DEBUG_MEMORY_INIT is not set 1302# CONFIG_DEBUG_MEMORY_INIT is not set
1265# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1303# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1266# CONFIG_LATENCYTOP is not set 1304# CONFIG_LATENCYTOP is not set
@@ -1286,7 +1324,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1286# CONFIG_KEYS is not set 1324# CONFIG_KEYS is not set
1287# CONFIG_SECURITY is not set 1325# CONFIG_SECURITY is not set
1288# CONFIG_SECURITYFS is not set 1326# CONFIG_SECURITYFS is not set
1289# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1327# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1328# CONFIG_DEFAULT_SECURITY_SMACK is not set
1329# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1330CONFIG_DEFAULT_SECURITY_DAC=y
1331CONFIG_DEFAULT_SECURITY=""
1290CONFIG_CRYPTO=y 1332CONFIG_CRYPTO=y
1291 1333
1292# 1334#
diff --git a/arch/powerpc/configs/85xx/tqm8560_defconfig b/arch/powerpc/configs/85xx/tqm8560_defconfig
index 631d92b4d4e6..a998e401bbfc 100644
--- a/arch/powerpc/configs/85xx/tqm8560_defconfig
+++ b/arch/powerpc/configs/85xx/tqm8560_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:43 2009 4# Wed Jan 6 09:24:36 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -89,6 +92,7 @@ CONFIG_SYSVIPC_SYSCTL=y
89# 92#
90CONFIG_TREE_RCU=y 93CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set 94# CONFIG_TREE_PREEMPT_RCU is not set
95# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set 96# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32 97CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set 98# CONFIG_RCU_FANOUT_EXACT is not set
@@ -171,14 +175,41 @@ CONFIG_LBDAF=y
171# IO Schedulers 175# IO Schedulers
172# 176#
173CONFIG_IOSCHED_NOOP=y 177CONFIG_IOSCHED_NOOP=y
174CONFIG_IOSCHED_AS=y
175CONFIG_IOSCHED_DEADLINE=y 178CONFIG_IOSCHED_DEADLINE=y
176CONFIG_IOSCHED_CFQ=y 179CONFIG_IOSCHED_CFQ=y
177CONFIG_DEFAULT_AS=y
178# CONFIG_DEFAULT_DEADLINE is not set 180# CONFIG_DEFAULT_DEADLINE is not set
179# CONFIG_DEFAULT_CFQ is not set 181CONFIG_DEFAULT_CFQ=y
180# CONFIG_DEFAULT_NOOP is not set 182# CONFIG_DEFAULT_NOOP is not set
181CONFIG_DEFAULT_IOSCHED="anticipatory" 183CONFIG_DEFAULT_IOSCHED="cfq"
184# CONFIG_INLINE_SPIN_TRYLOCK is not set
185# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK is not set
187# CONFIG_INLINE_SPIN_LOCK_BH is not set
188# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
189# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
190CONFIG_INLINE_SPIN_UNLOCK=y
191# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
192CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
193# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
194# CONFIG_INLINE_READ_TRYLOCK is not set
195# CONFIG_INLINE_READ_LOCK is not set
196# CONFIG_INLINE_READ_LOCK_BH is not set
197# CONFIG_INLINE_READ_LOCK_IRQ is not set
198# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
199CONFIG_INLINE_READ_UNLOCK=y
200# CONFIG_INLINE_READ_UNLOCK_BH is not set
201CONFIG_INLINE_READ_UNLOCK_IRQ=y
202# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
203# CONFIG_INLINE_WRITE_TRYLOCK is not set
204# CONFIG_INLINE_WRITE_LOCK is not set
205# CONFIG_INLINE_WRITE_LOCK_BH is not set
206# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
207# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
208CONFIG_INLINE_WRITE_UNLOCK=y
209# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
210CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
211# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
212# CONFIG_MUTEX_SPIN_ON_OWNER is not set
182# CONFIG_FREEZER is not set 213# CONFIG_FREEZER is not set
183 214
184# 215#
@@ -187,7 +218,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
187# CONFIG_PPC_CELL is not set 218# CONFIG_PPC_CELL is not set
188# CONFIG_PPC_CELL_NATIVE is not set 219# CONFIG_PPC_CELL_NATIVE is not set
189# CONFIG_PQ2ADS is not set 220# CONFIG_PQ2ADS is not set
190CONFIG_MPC85xx=y 221CONFIG_FSL_SOC_BOOKE=y
191# CONFIG_MPC8540_ADS is not set 222# CONFIG_MPC8540_ADS is not set
192# CONFIG_MPC8560_ADS is not set 223# CONFIG_MPC8560_ADS is not set
193# CONFIG_MPC85xx_CDS is not set 224# CONFIG_MPC85xx_CDS is not set
@@ -206,6 +237,7 @@ CONFIG_MPC85xx=y
206CONFIG_TQM8560=y 237CONFIG_TQM8560=y
207# CONFIG_SBC8548 is not set 238# CONFIG_SBC8548 is not set
208# CONFIG_SBC8560 is not set 239# CONFIG_SBC8560 is not set
240# CONFIG_P4080_DS is not set
209CONFIG_TQM85xx=y 241CONFIG_TQM85xx=y
210# CONFIG_IPIC is not set 242# CONFIG_IPIC is not set
211CONFIG_MPIC=y 243CONFIG_MPIC=y
@@ -251,6 +283,7 @@ CONFIG_MATH_EMULATION=y
251CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
252CONFIG_ARCH_HAS_WALK_MEMORY=y 284CONFIG_ARCH_HAS_WALK_MEMORY=y
253CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 285CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
286CONFIG_SPARSE_IRQ=y
254CONFIG_MAX_ACTIVE_REGIONS=32 287CONFIG_MAX_ACTIVE_REGIONS=32
255CONFIG_ARCH_FLATMEM_ENABLE=y 288CONFIG_ARCH_FLATMEM_ENABLE=y
256CONFIG_ARCH_POPULATES_NODE_MAP=y 289CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -267,8 +300,6 @@ CONFIG_MIGRATION=y
267CONFIG_ZONE_DMA_FLAG=1 300CONFIG_ZONE_DMA_FLAG=1
268CONFIG_BOUNCE=y 301CONFIG_BOUNCE=y
269CONFIG_VIRT_TO_BUS=y 302CONFIG_VIRT_TO_BUS=y
270CONFIG_HAVE_MLOCK=y
271CONFIG_HAVE_MLOCKED_PAGE_BIT=y
272# CONFIG_KSM is not set 303# CONFIG_KSM is not set
273CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 304CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
274CONFIG_PPC_4K_PAGES=y 305CONFIG_PPC_4K_PAGES=y
@@ -394,9 +425,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
394# CONFIG_AF_RXRPC is not set 425# CONFIG_AF_RXRPC is not set
395CONFIG_WIRELESS=y 426CONFIG_WIRELESS=y
396# CONFIG_CFG80211 is not set 427# CONFIG_CFG80211 is not set
397CONFIG_CFG80211_DEFAULT_PS_VALUE=0
398CONFIG_WIRELESS_OLD_REGULATORY=y
399# CONFIG_WIRELESS_EXT is not set
400# CONFIG_LIB80211 is not set 428# CONFIG_LIB80211 is not set
401 429
402# 430#
@@ -514,6 +542,10 @@ CONFIG_BLK_DEV=y
514# CONFIG_BLK_DEV_COW_COMMON is not set 542# CONFIG_BLK_DEV_COW_COMMON is not set
515CONFIG_BLK_DEV_LOOP=y 543CONFIG_BLK_DEV_LOOP=y
516# CONFIG_BLK_DEV_CRYPTOLOOP is not set 544# CONFIG_BLK_DEV_CRYPTOLOOP is not set
545
546#
547# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
548#
517# CONFIG_BLK_DEV_NBD is not set 549# CONFIG_BLK_DEV_NBD is not set
518# CONFIG_BLK_DEV_SX8 is not set 550# CONFIG_BLK_DEV_SX8 is not set
519CONFIG_BLK_DEV_RAM=y 551CONFIG_BLK_DEV_RAM=y
@@ -524,6 +556,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
524# CONFIG_ATA_OVER_ETH is not set 556# CONFIG_ATA_OVER_ETH is not set
525# CONFIG_BLK_DEV_HD is not set 557# CONFIG_BLK_DEV_HD is not set
526CONFIG_MISC_DEVICES=y 558CONFIG_MISC_DEVICES=y
559# CONFIG_AD525X_DPOT is not set
527# CONFIG_PHANTOM is not set 560# CONFIG_PHANTOM is not set
528# CONFIG_SGI_IOC4 is not set 561# CONFIG_SGI_IOC4 is not set
529# CONFIG_TIFM_CORE is not set 562# CONFIG_TIFM_CORE is not set
@@ -531,6 +564,7 @@ CONFIG_MISC_DEVICES=y
531# CONFIG_ENCLOSURE_SERVICES is not set 564# CONFIG_ENCLOSURE_SERVICES is not set
532# CONFIG_HP_ILO is not set 565# CONFIG_HP_ILO is not set
533# CONFIG_ISL29003 is not set 566# CONFIG_ISL29003 is not set
567# CONFIG_DS1682 is not set
534# CONFIG_C2PORT is not set 568# CONFIG_C2PORT is not set
535 569
536# 570#
@@ -619,7 +653,7 @@ CONFIG_BLK_DEV_IDEDMA=y
619# 653#
620 654
621# 655#
622# See the help texts for more information. 656# The newer stack is recommended.
623# 657#
624# CONFIG_FIREWIRE is not set 658# CONFIG_FIREWIRE is not set
625# CONFIG_IEEE1394 is not set 659# CONFIG_IEEE1394 is not set
@@ -743,8 +777,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
743# CONFIG_BE2NET is not set 777# CONFIG_BE2NET is not set
744# CONFIG_TR is not set 778# CONFIG_TR is not set
745CONFIG_WLAN=y 779CONFIG_WLAN=y
746# CONFIG_WLAN_PRE80211 is not set 780# CONFIG_AIRO is not set
747# CONFIG_WLAN_80211 is not set 781# CONFIG_ATMEL is not set
782# CONFIG_PRISM54 is not set
783# CONFIG_HOSTAP is not set
748 784
749# 785#
750# Enable WiMAX (Networking options) to see the WiMAX drivers 786# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -757,6 +793,7 @@ CONFIG_WLAN=y
757# CONFIG_NETCONSOLE is not set 793# CONFIG_NETCONSOLE is not set
758# CONFIG_NETPOLL is not set 794# CONFIG_NETPOLL is not set
759# CONFIG_NET_POLL_CONTROLLER is not set 795# CONFIG_NET_POLL_CONTROLLER is not set
796# CONFIG_VMXNET3 is not set
760# CONFIG_ISDN is not set 797# CONFIG_ISDN is not set
761# CONFIG_PHONE is not set 798# CONFIG_PHONE is not set
762 799
@@ -766,6 +803,7 @@ CONFIG_WLAN=y
766CONFIG_INPUT=y 803CONFIG_INPUT=y
767# CONFIG_INPUT_FF_MEMLESS is not set 804# CONFIG_INPUT_FF_MEMLESS is not set
768# CONFIG_INPUT_POLLDEV is not set 805# CONFIG_INPUT_POLLDEV is not set
806# CONFIG_INPUT_SPARSEKMAP is not set
769 807
770# 808#
771# Userland interfaces 809# Userland interfaces
@@ -820,6 +858,7 @@ CONFIG_SERIAL_CPM=y
820CONFIG_SERIAL_CPM_CONSOLE=y 858CONFIG_SERIAL_CPM_CONSOLE=y
821# CONFIG_SERIAL_JSM is not set 859# CONFIG_SERIAL_JSM is not set
822# CONFIG_SERIAL_OF_PLATFORM is not set 860# CONFIG_SERIAL_OF_PLATFORM is not set
861# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
823CONFIG_UNIX98_PTYS=y 862CONFIG_UNIX98_PTYS=y
824# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 863# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
825CONFIG_LEGACY_PTYS=y 864CONFIG_LEGACY_PTYS=y
@@ -881,11 +920,6 @@ CONFIG_I2C_MPC=y
881# CONFIG_I2C_TAOS_EVM is not set 920# CONFIG_I2C_TAOS_EVM is not set
882 921
883# 922#
884# Graphics adapter I2C/DDC channel drivers
885#
886# CONFIG_I2C_VOODOO3 is not set
887
888#
889# Other I2C/SMBus bus drivers 923# Other I2C/SMBus bus drivers
890# 924#
891# CONFIG_I2C_PCA_PLATFORM is not set 925# CONFIG_I2C_PCA_PLATFORM is not set
@@ -893,7 +927,6 @@ CONFIG_I2C_MPC=y
893# 927#
894# Miscellaneous I2C Chip support 928# Miscellaneous I2C Chip support
895# 929#
896# CONFIG_DS1682 is not set
897# CONFIG_SENSORS_TSL2550 is not set 930# CONFIG_SENSORS_TSL2550 is not set
898# CONFIG_I2C_DEBUG_CORE is not set 931# CONFIG_I2C_DEBUG_CORE is not set
899# CONFIG_I2C_DEBUG_ALGO is not set 932# CONFIG_I2C_DEBUG_ALGO is not set
@@ -925,6 +958,7 @@ CONFIG_GPIOLIB=y
925# 958#
926# PCI GPIO expanders: 959# PCI GPIO expanders:
927# 960#
961# CONFIG_GPIO_CS5535 is not set
928# CONFIG_GPIO_BT8XX is not set 962# CONFIG_GPIO_BT8XX is not set
929# CONFIG_GPIO_LANGWELL is not set 963# CONFIG_GPIO_LANGWELL is not set
930 964
@@ -967,6 +1001,7 @@ CONFIG_HWMON_DEBUG_CHIP=y
967# CONFIG_SENSORS_GL520SM is not set 1001# CONFIG_SENSORS_GL520SM is not set
968# CONFIG_SENSORS_IT87 is not set 1002# CONFIG_SENSORS_IT87 is not set
969# CONFIG_SENSORS_LM63 is not set 1003# CONFIG_SENSORS_LM63 is not set
1004# CONFIG_SENSORS_LM73 is not set
970CONFIG_SENSORS_LM75=y 1005CONFIG_SENSORS_LM75=y
971# CONFIG_SENSORS_LM77 is not set 1006# CONFIG_SENSORS_LM77 is not set
972# CONFIG_SENSORS_LM78 is not set 1007# CONFIG_SENSORS_LM78 is not set
@@ -1006,6 +1041,7 @@ CONFIG_SENSORS_LM75=y
1006# CONFIG_SENSORS_W83L786NG is not set 1041# CONFIG_SENSORS_W83L786NG is not set
1007# CONFIG_SENSORS_W83627HF is not set 1042# CONFIG_SENSORS_W83627HF is not set
1008# CONFIG_SENSORS_W83627EHF is not set 1043# CONFIG_SENSORS_W83627EHF is not set
1044# CONFIG_SENSORS_LIS3_I2C is not set
1009# CONFIG_THERMAL is not set 1045# CONFIG_THERMAL is not set
1010# CONFIG_WATCHDOG is not set 1046# CONFIG_WATCHDOG is not set
1011CONFIG_SSB_POSSIBLE=y 1047CONFIG_SSB_POSSIBLE=y
@@ -1025,11 +1061,13 @@ CONFIG_SSB_POSSIBLE=y
1025# CONFIG_TWL4030_CORE is not set 1061# CONFIG_TWL4030_CORE is not set
1026# CONFIG_MFD_TMIO is not set 1062# CONFIG_MFD_TMIO is not set
1027# CONFIG_PMIC_DA903X is not set 1063# CONFIG_PMIC_DA903X is not set
1064# CONFIG_PMIC_ADP5520 is not set
1028# CONFIG_MFD_WM8400 is not set 1065# CONFIG_MFD_WM8400 is not set
1029# CONFIG_MFD_WM831X is not set 1066# CONFIG_MFD_WM831X is not set
1030# CONFIG_MFD_WM8350_I2C is not set 1067# CONFIG_MFD_WM8350_I2C is not set
1031# CONFIG_MFD_PCF50633 is not set 1068# CONFIG_MFD_PCF50633 is not set
1032# CONFIG_AB3100_CORE is not set 1069# CONFIG_AB3100_CORE is not set
1070# CONFIG_MFD_88PM8607 is not set
1033# CONFIG_REGULATOR is not set 1071# CONFIG_REGULATOR is not set
1034# CONFIG_MEDIA_SUPPORT is not set 1072# CONFIG_MEDIA_SUPPORT is not set
1035 1073
@@ -1260,7 +1298,7 @@ CONFIG_FRAME_WARN=1024
1260# CONFIG_DEBUG_KERNEL is not set 1298# CONFIG_DEBUG_KERNEL is not set
1261# CONFIG_SLUB_DEBUG_ON is not set 1299# CONFIG_SLUB_DEBUG_ON is not set
1262# CONFIG_SLUB_STATS is not set 1300# CONFIG_SLUB_STATS is not set
1263# CONFIG_DEBUG_BUGVERBOSE is not set 1301CONFIG_DEBUG_BUGVERBOSE=y
1264# CONFIG_DEBUG_MEMORY_INIT is not set 1302# CONFIG_DEBUG_MEMORY_INIT is not set
1265# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1303# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1266# CONFIG_LATENCYTOP is not set 1304# CONFIG_LATENCYTOP is not set
@@ -1286,7 +1324,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1286# CONFIG_KEYS is not set 1324# CONFIG_KEYS is not set
1287# CONFIG_SECURITY is not set 1325# CONFIG_SECURITY is not set
1288# CONFIG_SECURITYFS is not set 1326# CONFIG_SECURITYFS is not set
1289# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1327# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1328# CONFIG_DEFAULT_SECURITY_SMACK is not set
1329# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1330CONFIG_DEFAULT_SECURITY_DAC=y
1331CONFIG_DEFAULT_SECURITY=""
1290CONFIG_CRYPTO=y 1332CONFIG_CRYPTO=y
1291 1333
1292# 1334#
diff --git a/arch/powerpc/configs/85xx/xes_mpc85xx_defconfig b/arch/powerpc/configs/85xx/xes_mpc85xx_defconfig
index 52acbac0c4fe..fc656af04ea1 100644
--- a/arch/powerpc/configs/85xx/xes_mpc85xx_defconfig
+++ b/arch/powerpc/configs/85xx/xes_mpc85xx_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:44 2009 4# Wed Jan 6 09:24:37 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -40,6 +40,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
40# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 40# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
41# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 41# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
42CONFIG_IRQ_PER_CPU=y 42CONFIG_IRQ_PER_CPU=y
43CONFIG_NR_IRQS=512
43CONFIG_STACKTRACE_SUPPORT=y 44CONFIG_STACKTRACE_SUPPORT=y
44CONFIG_HAVE_LATENCYTOP_SUPPORT=y 45CONFIG_HAVE_LATENCYTOP_SUPPORT=y
45CONFIG_TRACE_IRQFLAGS_SUPPORT=y 46CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -63,6 +64,8 @@ CONFIG_AUDIT_ARCH=y
63CONFIG_GENERIC_BUG=y 64CONFIG_GENERIC_BUG=y
64CONFIG_DTC=y 65CONFIG_DTC=y
65CONFIG_DEFAULT_UIMAGE=y 66CONFIG_DEFAULT_UIMAGE=y
67CONFIG_ARCH_HIBERNATION_POSSIBLE=y
68CONFIG_ARCH_SUSPEND_POSSIBLE=y
66# CONFIG_PPC_DCR_NATIVE is not set 69# CONFIG_PPC_DCR_NATIVE is not set
67# CONFIG_PPC_DCR_MMIO is not set 70# CONFIG_PPC_DCR_MMIO is not set
68CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 71CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -93,6 +96,7 @@ CONFIG_AUDIT=y
93# 96#
94CONFIG_TREE_RCU=y 97CONFIG_TREE_RCU=y
95# CONFIG_TREE_PREEMPT_RCU is not set 98# CONFIG_TREE_PREEMPT_RCU is not set
99# CONFIG_TINY_RCU is not set
96# CONFIG_RCU_TRACE is not set 100# CONFIG_RCU_TRACE is not set
97CONFIG_RCU_FANOUT=32 101CONFIG_RCU_FANOUT=32
98# CONFIG_RCU_FANOUT_EXACT is not set 102# CONFIG_RCU_FANOUT_EXACT is not set
@@ -181,14 +185,41 @@ CONFIG_LBDAF=y
181# IO Schedulers 185# IO Schedulers
182# 186#
183CONFIG_IOSCHED_NOOP=y 187CONFIG_IOSCHED_NOOP=y
184CONFIG_IOSCHED_AS=y
185CONFIG_IOSCHED_DEADLINE=y 188CONFIG_IOSCHED_DEADLINE=y
186CONFIG_IOSCHED_CFQ=y 189CONFIG_IOSCHED_CFQ=y
187# CONFIG_DEFAULT_AS is not set
188# CONFIG_DEFAULT_DEADLINE is not set 190# CONFIG_DEFAULT_DEADLINE is not set
189CONFIG_DEFAULT_CFQ=y 191CONFIG_DEFAULT_CFQ=y
190# CONFIG_DEFAULT_NOOP is not set 192# CONFIG_DEFAULT_NOOP is not set
191CONFIG_DEFAULT_IOSCHED="cfq" 193CONFIG_DEFAULT_IOSCHED="cfq"
194# CONFIG_INLINE_SPIN_TRYLOCK is not set
195# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
196# CONFIG_INLINE_SPIN_LOCK is not set
197# CONFIG_INLINE_SPIN_LOCK_BH is not set
198# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
199# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
200CONFIG_INLINE_SPIN_UNLOCK=y
201# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
202CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
203# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_READ_TRYLOCK is not set
205# CONFIG_INLINE_READ_LOCK is not set
206# CONFIG_INLINE_READ_LOCK_BH is not set
207# CONFIG_INLINE_READ_LOCK_IRQ is not set
208# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
209CONFIG_INLINE_READ_UNLOCK=y
210# CONFIG_INLINE_READ_UNLOCK_BH is not set
211CONFIG_INLINE_READ_UNLOCK_IRQ=y
212# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
213# CONFIG_INLINE_WRITE_TRYLOCK is not set
214# CONFIG_INLINE_WRITE_LOCK is not set
215# CONFIG_INLINE_WRITE_LOCK_BH is not set
216# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
217# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
218CONFIG_INLINE_WRITE_UNLOCK=y
219# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
220CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
221# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
222CONFIG_MUTEX_SPIN_ON_OWNER=y
192# CONFIG_FREEZER is not set 223# CONFIG_FREEZER is not set
193CONFIG_PPC_MSI_BITMAP=y 224CONFIG_PPC_MSI_BITMAP=y
194 225
@@ -198,7 +229,7 @@ CONFIG_PPC_MSI_BITMAP=y
198# CONFIG_PPC_CELL is not set 229# CONFIG_PPC_CELL is not set
199# CONFIG_PPC_CELL_NATIVE is not set 230# CONFIG_PPC_CELL_NATIVE is not set
200# CONFIG_PQ2ADS is not set 231# CONFIG_PQ2ADS is not set
201CONFIG_MPC85xx=y 232CONFIG_FSL_SOC_BOOKE=y
202# CONFIG_MPC8540_ADS is not set 233# CONFIG_MPC8540_ADS is not set
203# CONFIG_MPC8560_ADS is not set 234# CONFIG_MPC8560_ADS is not set
204# CONFIG_MPC85xx_CDS is not set 235# CONFIG_MPC85xx_CDS is not set
@@ -217,6 +248,7 @@ CONFIG_XES_MPC85xx=y
217# CONFIG_TQM8560 is not set 248# CONFIG_TQM8560 is not set
218# CONFIG_SBC8548 is not set 249# CONFIG_SBC8548 is not set
219# CONFIG_SBC8560 is not set 250# CONFIG_SBC8560 is not set
251# CONFIG_P4080_DS is not set
220# CONFIG_IPIC is not set 252# CONFIG_IPIC is not set
221CONFIG_MPIC=y 253CONFIG_MPIC=y
222# CONFIG_MPIC_WEIRD is not set 254# CONFIG_MPIC_WEIRD is not set
@@ -261,6 +293,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
261CONFIG_ARCH_HAS_WALK_MEMORY=y 293CONFIG_ARCH_HAS_WALK_MEMORY=y
262CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 294CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
263# CONFIG_IRQ_ALL_CPUS is not set 295# CONFIG_IRQ_ALL_CPUS is not set
296CONFIG_SPARSE_IRQ=y
264CONFIG_MAX_ACTIVE_REGIONS=32 297CONFIG_MAX_ACTIVE_REGIONS=32
265CONFIG_ARCH_FLATMEM_ENABLE=y 298CONFIG_ARCH_FLATMEM_ENABLE=y
266CONFIG_ARCH_POPULATES_NODE_MAP=y 299CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -277,8 +310,6 @@ CONFIG_MIGRATION=y
277CONFIG_ZONE_DMA_FLAG=1 310CONFIG_ZONE_DMA_FLAG=1
278CONFIG_BOUNCE=y 311CONFIG_BOUNCE=y
279CONFIG_VIRT_TO_BUS=y 312CONFIG_VIRT_TO_BUS=y
280CONFIG_HAVE_MLOCK=y
281CONFIG_HAVE_MLOCKED_PAGE_BIT=y
282# CONFIG_KSM is not set 313# CONFIG_KSM is not set
283CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 314CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
284CONFIG_PPC_4K_PAGES=y 315CONFIG_PPC_4K_PAGES=y
@@ -404,6 +435,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=y
404CONFIG_INET6_XFRM_MODE_BEET=y 435CONFIG_INET6_XFRM_MODE_BEET=y
405# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 436# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
406CONFIG_IPV6_SIT=y 437CONFIG_IPV6_SIT=y
438# CONFIG_IPV6_SIT_6RD is not set
407CONFIG_IPV6_NDISC_NODETYPE=y 439CONFIG_IPV6_NDISC_NODETYPE=y
408# CONFIG_IPV6_TUNNEL is not set 440# CONFIG_IPV6_TUNNEL is not set
409# CONFIG_IPV6_MULTIPLE_TABLES is not set 441# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -441,7 +473,13 @@ CONFIG_IPV6_NDISC_NODETYPE=y
441# CONFIG_BT is not set 473# CONFIG_BT is not set
442# CONFIG_AF_RXRPC is not set 474# CONFIG_AF_RXRPC is not set
443CONFIG_FIB_RULES=y 475CONFIG_FIB_RULES=y
444# CONFIG_WIRELESS is not set 476CONFIG_WIRELESS=y
477# CONFIG_CFG80211 is not set
478# CONFIG_LIB80211 is not set
479
480#
481# CFG80211 needs to be enabled for MAC80211
482#
445# CONFIG_WIMAX is not set 483# CONFIG_WIMAX is not set
446# CONFIG_RFKILL is not set 484# CONFIG_RFKILL is not set
447# CONFIG_NET_9P is not set 485# CONFIG_NET_9P is not set
@@ -576,6 +614,10 @@ CONFIG_BLK_DEV=y
576# CONFIG_BLK_DEV_COW_COMMON is not set 614# CONFIG_BLK_DEV_COW_COMMON is not set
577CONFIG_BLK_DEV_LOOP=y 615CONFIG_BLK_DEV_LOOP=y
578# CONFIG_BLK_DEV_CRYPTOLOOP is not set 616# CONFIG_BLK_DEV_CRYPTOLOOP is not set
617
618#
619# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
620#
579CONFIG_BLK_DEV_NBD=y 621CONFIG_BLK_DEV_NBD=y
580# CONFIG_BLK_DEV_SX8 is not set 622# CONFIG_BLK_DEV_SX8 is not set
581# CONFIG_BLK_DEV_UB is not set 623# CONFIG_BLK_DEV_UB is not set
@@ -587,6 +629,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
587# CONFIG_ATA_OVER_ETH is not set 629# CONFIG_ATA_OVER_ETH is not set
588# CONFIG_BLK_DEV_HD is not set 630# CONFIG_BLK_DEV_HD is not set
589CONFIG_MISC_DEVICES=y 631CONFIG_MISC_DEVICES=y
632# CONFIG_AD525X_DPOT is not set
590# CONFIG_PHANTOM is not set 633# CONFIG_PHANTOM is not set
591# CONFIG_SGI_IOC4 is not set 634# CONFIG_SGI_IOC4 is not set
592# CONFIG_TIFM_CORE is not set 635# CONFIG_TIFM_CORE is not set
@@ -594,6 +637,7 @@ CONFIG_MISC_DEVICES=y
594# CONFIG_ENCLOSURE_SERVICES is not set 637# CONFIG_ENCLOSURE_SERVICES is not set
595# CONFIG_HP_ILO is not set 638# CONFIG_HP_ILO is not set
596# CONFIG_ISL29003 is not set 639# CONFIG_ISL29003 is not set
640# CONFIG_DS1682 is not set
597# CONFIG_C2PORT is not set 641# CONFIG_C2PORT is not set
598 642
599# 643#
@@ -646,7 +690,9 @@ CONFIG_SCSI_LOWLEVEL=y
646# CONFIG_SCSI_BNX2_ISCSI is not set 690# CONFIG_SCSI_BNX2_ISCSI is not set
647# CONFIG_BE2ISCSI is not set 691# CONFIG_BE2ISCSI is not set
648# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 692# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
693# CONFIG_SCSI_HPSA is not set
649# CONFIG_SCSI_3W_9XXX is not set 694# CONFIG_SCSI_3W_9XXX is not set
695# CONFIG_SCSI_3W_SAS is not set
650# CONFIG_SCSI_ACARD is not set 696# CONFIG_SCSI_ACARD is not set
651# CONFIG_SCSI_AACRAID is not set 697# CONFIG_SCSI_AACRAID is not set
652# CONFIG_SCSI_AIC7XXX is not set 698# CONFIG_SCSI_AIC7XXX is not set
@@ -685,6 +731,7 @@ CONFIG_SCSI_LOWLEVEL=y
685# CONFIG_SCSI_NSP32 is not set 731# CONFIG_SCSI_NSP32 is not set
686# CONFIG_SCSI_DEBUG is not set 732# CONFIG_SCSI_DEBUG is not set
687# CONFIG_SCSI_PMCRAID is not set 733# CONFIG_SCSI_PMCRAID is not set
734# CONFIG_SCSI_PM8001 is not set
688# CONFIG_SCSI_SRP is not set 735# CONFIG_SCSI_SRP is not set
689# CONFIG_SCSI_BFA_FC is not set 736# CONFIG_SCSI_BFA_FC is not set
690# CONFIG_SCSI_DH is not set 737# CONFIG_SCSI_DH is not set
@@ -740,15 +787,16 @@ CONFIG_PATA_ALI=y
740# CONFIG_PATA_NS87415 is not set 787# CONFIG_PATA_NS87415 is not set
741# CONFIG_PATA_OPTI is not set 788# CONFIG_PATA_OPTI is not set
742# CONFIG_PATA_OPTIDMA is not set 789# CONFIG_PATA_OPTIDMA is not set
790# CONFIG_PATA_PDC2027X is not set
743# CONFIG_PATA_PDC_OLD is not set 791# CONFIG_PATA_PDC_OLD is not set
744# CONFIG_PATA_RADISYS is not set 792# CONFIG_PATA_RADISYS is not set
745# CONFIG_PATA_RDC is not set 793# CONFIG_PATA_RDC is not set
746# CONFIG_PATA_RZ1000 is not set 794# CONFIG_PATA_RZ1000 is not set
747# CONFIG_PATA_SC1200 is not set 795# CONFIG_PATA_SC1200 is not set
748# CONFIG_PATA_SERVERWORKS is not set 796# CONFIG_PATA_SERVERWORKS is not set
749# CONFIG_PATA_PDC2027X is not set
750# CONFIG_PATA_SIL680 is not set 797# CONFIG_PATA_SIL680 is not set
751# CONFIG_PATA_SIS is not set 798# CONFIG_PATA_SIS is not set
799# CONFIG_PATA_TOSHIBA is not set
752# CONFIG_PATA_VIA is not set 800# CONFIG_PATA_VIA is not set
753# CONFIG_PATA_WINBOND is not set 801# CONFIG_PATA_WINBOND is not set
754# CONFIG_PATA_PLATFORM is not set 802# CONFIG_PATA_PLATFORM is not set
@@ -765,7 +813,7 @@ CONFIG_PATA_ALI=y
765# 813#
766 814
767# 815#
768# See the help texts for more information. 816# The newer stack is recommended.
769# 817#
770# CONFIG_FIREWIRE is not set 818# CONFIG_FIREWIRE is not set
771# CONFIG_IEEE1394 is not set 819# CONFIG_IEEE1394 is not set
@@ -852,8 +900,11 @@ CONFIG_GIANFAR=y
852# CONFIG_NETDEV_10000 is not set 900# CONFIG_NETDEV_10000 is not set
853# CONFIG_TR is not set 901# CONFIG_TR is not set
854CONFIG_WLAN=y 902CONFIG_WLAN=y
855# CONFIG_WLAN_PRE80211 is not set 903# CONFIG_AIRO is not set
856# CONFIG_WLAN_80211 is not set 904# CONFIG_ATMEL is not set
905# CONFIG_PRISM54 is not set
906# CONFIG_USB_ZD1201 is not set
907# CONFIG_HOSTAP is not set
857 908
858# 909#
859# Enable WiMAX (Networking options) to see the WiMAX drivers 910# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -876,6 +927,7 @@ CONFIG_WLAN=y
876# CONFIG_NETCONSOLE is not set 927# CONFIG_NETCONSOLE is not set
877# CONFIG_NETPOLL is not set 928# CONFIG_NETPOLL is not set
878# CONFIG_NET_POLL_CONTROLLER is not set 929# CONFIG_NET_POLL_CONTROLLER is not set
930# CONFIG_VMXNET3 is not set
879# CONFIG_ISDN is not set 931# CONFIG_ISDN is not set
880# CONFIG_PHONE is not set 932# CONFIG_PHONE is not set
881 933
@@ -885,6 +937,7 @@ CONFIG_WLAN=y
885CONFIG_INPUT=y 937CONFIG_INPUT=y
886# CONFIG_INPUT_FF_MEMLESS is not set 938# CONFIG_INPUT_FF_MEMLESS is not set
887# CONFIG_INPUT_POLLDEV is not set 939# CONFIG_INPUT_POLLDEV is not set
940# CONFIG_INPUT_SPARSEKMAP is not set
888 941
889# 942#
890# Userland interfaces 943# Userland interfaces
@@ -914,6 +967,7 @@ CONFIG_SERIO_SERPORT=y
914CONFIG_SERIO_LIBPS2=y 967CONFIG_SERIO_LIBPS2=y
915# CONFIG_SERIO_RAW is not set 968# CONFIG_SERIO_RAW is not set
916# CONFIG_SERIO_XILINX_XPS_PS2 is not set 969# CONFIG_SERIO_XILINX_XPS_PS2 is not set
970# CONFIG_SERIO_ALTERA_PS2 is not set
917# CONFIG_GAMEPORT is not set 971# CONFIG_GAMEPORT is not set
918 972
919# 973#
@@ -950,6 +1004,7 @@ CONFIG_SERIAL_CORE=y
950CONFIG_SERIAL_CORE_CONSOLE=y 1004CONFIG_SERIAL_CORE_CONSOLE=y
951# CONFIG_SERIAL_JSM is not set 1005# CONFIG_SERIAL_JSM is not set
952# CONFIG_SERIAL_OF_PLATFORM is not set 1006# CONFIG_SERIAL_OF_PLATFORM is not set
1007# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
953CONFIG_UNIX98_PTYS=y 1008CONFIG_UNIX98_PTYS=y
954# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1009# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
955CONFIG_LEGACY_PTYS=y 1010CONFIG_LEGACY_PTYS=y
@@ -1007,11 +1062,6 @@ CONFIG_I2C_MPC=y
1007# CONFIG_I2C_TINY_USB is not set 1062# CONFIG_I2C_TINY_USB is not set
1008 1063
1009# 1064#
1010# Graphics adapter I2C/DDC channel drivers
1011#
1012# CONFIG_I2C_VOODOO3 is not set
1013
1014#
1015# Other I2C/SMBus bus drivers 1065# Other I2C/SMBus bus drivers
1016# 1066#
1017# CONFIG_I2C_PCA_PLATFORM is not set 1067# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1020,7 +1070,6 @@ CONFIG_I2C_MPC=y
1020# 1070#
1021# Miscellaneous I2C Chip support 1071# Miscellaneous I2C Chip support
1022# 1072#
1023# CONFIG_DS1682 is not set
1024# CONFIG_SENSORS_TSL2550 is not set 1073# CONFIG_SENSORS_TSL2550 is not set
1025# CONFIG_I2C_DEBUG_CORE is not set 1074# CONFIG_I2C_DEBUG_CORE is not set
1026# CONFIG_I2C_DEBUG_ALGO is not set 1075# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1053,6 +1102,7 @@ CONFIG_GPIO_PCA953X=y
1053# 1102#
1054# PCI GPIO expanders: 1103# PCI GPIO expanders:
1055# 1104#
1105# CONFIG_GPIO_CS5535 is not set
1056# CONFIG_GPIO_BT8XX is not set 1106# CONFIG_GPIO_BT8XX is not set
1057# CONFIG_GPIO_LANGWELL is not set 1107# CONFIG_GPIO_LANGWELL is not set
1058 1108
@@ -1095,6 +1145,7 @@ CONFIG_SENSORS_DS1621=y
1095# CONFIG_SENSORS_GL520SM is not set 1145# CONFIG_SENSORS_GL520SM is not set
1096# CONFIG_SENSORS_IT87 is not set 1146# CONFIG_SENSORS_IT87 is not set
1097# CONFIG_SENSORS_LM63 is not set 1147# CONFIG_SENSORS_LM63 is not set
1148# CONFIG_SENSORS_LM73 is not set
1098# CONFIG_SENSORS_LM75 is not set 1149# CONFIG_SENSORS_LM75 is not set
1099# CONFIG_SENSORS_LM77 is not set 1150# CONFIG_SENSORS_LM77 is not set
1100# CONFIG_SENSORS_LM78 is not set 1151# CONFIG_SENSORS_LM78 is not set
@@ -1134,6 +1185,7 @@ CONFIG_SENSORS_LM90=y
1134# CONFIG_SENSORS_W83L786NG is not set 1185# CONFIG_SENSORS_W83L786NG is not set
1135# CONFIG_SENSORS_W83627HF is not set 1186# CONFIG_SENSORS_W83627HF is not set
1136# CONFIG_SENSORS_W83627EHF is not set 1187# CONFIG_SENSORS_W83627EHF is not set
1188# CONFIG_SENSORS_LIS3_I2C is not set
1137# CONFIG_THERMAL is not set 1189# CONFIG_THERMAL is not set
1138CONFIG_WATCHDOG=y 1190CONFIG_WATCHDOG=y
1139# CONFIG_WATCHDOG_NOWAYOUT is not set 1191# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1172,11 +1224,13 @@ CONFIG_SSB_POSSIBLE=y
1172# CONFIG_TWL4030_CORE is not set 1224# CONFIG_TWL4030_CORE is not set
1173# CONFIG_MFD_TMIO is not set 1225# CONFIG_MFD_TMIO is not set
1174# CONFIG_PMIC_DA903X is not set 1226# CONFIG_PMIC_DA903X is not set
1227# CONFIG_PMIC_ADP5520 is not set
1175# CONFIG_MFD_WM8400 is not set 1228# CONFIG_MFD_WM8400 is not set
1176# CONFIG_MFD_WM831X is not set 1229# CONFIG_MFD_WM831X is not set
1177# CONFIG_MFD_WM8350_I2C is not set 1230# CONFIG_MFD_WM8350_I2C is not set
1178# CONFIG_MFD_PCF50633 is not set 1231# CONFIG_MFD_PCF50633 is not set
1179# CONFIG_AB3100_CORE is not set 1232# CONFIG_AB3100_CORE is not set
1233# CONFIG_MFD_88PM8607 is not set
1180# CONFIG_REGULATOR is not set 1234# CONFIG_REGULATOR is not set
1181# CONFIG_MEDIA_SUPPORT is not set 1235# CONFIG_MEDIA_SUPPORT is not set
1182 1236
@@ -1368,6 +1422,7 @@ CONFIG_LEDS_GPIO_OF=y
1368# CONFIG_LEDS_LP3944 is not set 1422# CONFIG_LEDS_LP3944 is not set
1369CONFIG_LEDS_PCA955X=y 1423CONFIG_LEDS_PCA955X=y
1370# CONFIG_LEDS_BD2802 is not set 1424# CONFIG_LEDS_BD2802 is not set
1425# CONFIG_LEDS_LT3593 is not set
1371 1426
1372# 1427#
1373# LED Triggers 1428# LED Triggers
@@ -1391,7 +1446,6 @@ CONFIG_EDAC=y
1391# 1446#
1392# CONFIG_EDAC_DEBUG is not set 1447# CONFIG_EDAC_DEBUG is not set
1393CONFIG_EDAC_MM_EDAC=y 1448CONFIG_EDAC_MM_EDAC=y
1394CONFIG_EDAC_MPC85XX=y
1395CONFIG_RTC_LIB=y 1449CONFIG_RTC_LIB=y
1396CONFIG_RTC_CLASS=y 1450CONFIG_RTC_CLASS=y
1397CONFIG_RTC_HCTOSYS=y 1451CONFIG_RTC_HCTOSYS=y
@@ -1420,6 +1474,7 @@ CONFIG_RTC_DRV_DS1307=y
1420# CONFIG_RTC_DRV_PCF8563 is not set 1474# CONFIG_RTC_DRV_PCF8563 is not set
1421# CONFIG_RTC_DRV_PCF8583 is not set 1475# CONFIG_RTC_DRV_PCF8583 is not set
1422# CONFIG_RTC_DRV_M41T80 is not set 1476# CONFIG_RTC_DRV_M41T80 is not set
1477# CONFIG_RTC_DRV_BQ32K is not set
1423# CONFIG_RTC_DRV_S35390A is not set 1478# CONFIG_RTC_DRV_S35390A is not set
1424# CONFIG_RTC_DRV_FM3130 is not set 1479# CONFIG_RTC_DRV_FM3130 is not set
1425# CONFIG_RTC_DRV_RX8581 is not set 1480# CONFIG_RTC_DRV_RX8581 is not set
@@ -1441,7 +1496,9 @@ CONFIG_RTC_DRV_CMOS=y
1441# CONFIG_RTC_DRV_M48T86 is not set 1496# CONFIG_RTC_DRV_M48T86 is not set
1442# CONFIG_RTC_DRV_M48T35 is not set 1497# CONFIG_RTC_DRV_M48T35 is not set
1443# CONFIG_RTC_DRV_M48T59 is not set 1498# CONFIG_RTC_DRV_M48T59 is not set
1499# CONFIG_RTC_DRV_MSM6242 is not set
1444# CONFIG_RTC_DRV_BQ4802 is not set 1500# CONFIG_RTC_DRV_BQ4802 is not set
1501# CONFIG_RTC_DRV_RP5C01 is not set
1445# CONFIG_RTC_DRV_V3020 is not set 1502# CONFIG_RTC_DRV_V3020 is not set
1446 1503
1447# 1504#
@@ -1772,7 +1829,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1772# CONFIG_KEYS is not set 1829# CONFIG_KEYS is not set
1773# CONFIG_SECURITY is not set 1830# CONFIG_SECURITY is not set
1774# CONFIG_SECURITYFS is not set 1831# CONFIG_SECURITYFS is not set
1775# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1832# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1833# CONFIG_DEFAULT_SECURITY_SMACK is not set
1834# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1835CONFIG_DEFAULT_SECURITY_DAC=y
1836CONFIG_DEFAULT_SECURITY=""
1776CONFIG_CRYPTO=y 1837CONFIG_CRYPTO=y
1777 1838
1778# 1839#
diff --git a/arch/powerpc/configs/86xx/gef_ppc9a_defconfig b/arch/powerpc/configs/86xx/gef_ppc9a_defconfig
index 6cd2cd65c2cd..a85f927bf225 100644
--- a/arch/powerpc/configs/86xx/gef_ppc9a_defconfig
+++ b/arch/powerpc/configs/86xx/gef_ppc9a_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:49 2009 4# Wed Jan 6 09:24:43 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -38,6 +38,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
40CONFIG_IRQ_PER_CPU=y 40CONFIG_IRQ_PER_CPU=y
41CONFIG_NR_IRQS=512
41CONFIG_STACKTRACE_SUPPORT=y 42CONFIG_STACKTRACE_SUPPORT=y
42CONFIG_HAVE_LATENCYTOP_SUPPORT=y 43CONFIG_HAVE_LATENCYTOP_SUPPORT=y
43CONFIG_TRACE_IRQFLAGS_SUPPORT=y 44CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -91,6 +94,7 @@ CONFIG_BSD_PROCESS_ACCT_V3=y
91# 94#
92CONFIG_TREE_RCU=y 95CONFIG_TREE_RCU=y
93# CONFIG_TREE_PREEMPT_RCU is not set 96# CONFIG_TREE_PREEMPT_RCU is not set
97# CONFIG_TINY_RCU is not set
94# CONFIG_RCU_TRACE is not set 98# CONFIG_RCU_TRACE is not set
95CONFIG_RCU_FANOUT=32 99CONFIG_RCU_FANOUT=32
96# CONFIG_RCU_FANOUT_EXACT is not set 100# CONFIG_RCU_FANOUT_EXACT is not set
@@ -181,14 +185,41 @@ CONFIG_LBDAF=y
181# IO Schedulers 185# IO Schedulers
182# 186#
183CONFIG_IOSCHED_NOOP=y 187CONFIG_IOSCHED_NOOP=y
184CONFIG_IOSCHED_AS=y
185CONFIG_IOSCHED_DEADLINE=y 188CONFIG_IOSCHED_DEADLINE=y
186CONFIG_IOSCHED_CFQ=y 189CONFIG_IOSCHED_CFQ=y
187# CONFIG_DEFAULT_AS is not set
188# CONFIG_DEFAULT_DEADLINE is not set 190# CONFIG_DEFAULT_DEADLINE is not set
189CONFIG_DEFAULT_CFQ=y 191CONFIG_DEFAULT_CFQ=y
190# CONFIG_DEFAULT_NOOP is not set 192# CONFIG_DEFAULT_NOOP is not set
191CONFIG_DEFAULT_IOSCHED="cfq" 193CONFIG_DEFAULT_IOSCHED="cfq"
194# CONFIG_INLINE_SPIN_TRYLOCK is not set
195# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
196# CONFIG_INLINE_SPIN_LOCK is not set
197# CONFIG_INLINE_SPIN_LOCK_BH is not set
198# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
199# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
200# CONFIG_INLINE_SPIN_UNLOCK is not set
201# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
202# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
203# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_READ_TRYLOCK is not set
205# CONFIG_INLINE_READ_LOCK is not set
206# CONFIG_INLINE_READ_LOCK_BH is not set
207# CONFIG_INLINE_READ_LOCK_IRQ is not set
208# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
209# CONFIG_INLINE_READ_UNLOCK is not set
210# CONFIG_INLINE_READ_UNLOCK_BH is not set
211# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
212# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
213# CONFIG_INLINE_WRITE_TRYLOCK is not set
214# CONFIG_INLINE_WRITE_LOCK is not set
215# CONFIG_INLINE_WRITE_LOCK_BH is not set
216# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
217# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
218# CONFIG_INLINE_WRITE_UNLOCK is not set
219# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
220# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
221# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
222CONFIG_MUTEX_SPIN_ON_OWNER=y
192# CONFIG_FREEZER is not set 223# CONFIG_FREEZER is not set
193 224
194# 225#
@@ -259,6 +290,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
259# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
260# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
261CONFIG_IRQ_ALL_CPUS=y 292CONFIG_IRQ_ALL_CPUS=y
293CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 294CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 295CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 296CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +307,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 307CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 308CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 309CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 310# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 311CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 312CONFIG_PPC_4K_PAGES=y
@@ -314,7 +344,6 @@ CONFIG_ARCH_SUPPORTS_MSI=y
314# CONFIG_PCI_STUB is not set 344# CONFIG_PCI_STUB is not set
315# CONFIG_PCI_IOV is not set 345# CONFIG_PCI_IOV is not set
316CONFIG_PCCARD=y 346CONFIG_PCCARD=y
317# CONFIG_PCMCIA_DEBUG is not set
318CONFIG_PCMCIA=y 347CONFIG_PCMCIA=y
319# CONFIG_PCMCIA_LOAD_CIS is not set 348# CONFIG_PCMCIA_LOAD_CIS is not set
320# CONFIG_PCMCIA_IOCTL is not set 349# CONFIG_PCMCIA_IOCTL is not set
@@ -414,6 +443,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
414CONFIG_INET6_XFRM_MODE_BEET=m 443CONFIG_INET6_XFRM_MODE_BEET=m
415# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 444# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
416CONFIG_IPV6_SIT=m 445CONFIG_IPV6_SIT=m
446# CONFIG_IPV6_SIT_6RD is not set
417CONFIG_IPV6_NDISC_NODETYPE=y 447CONFIG_IPV6_NDISC_NODETYPE=y
418CONFIG_IPV6_TUNNEL=m 448CONFIG_IPV6_TUNNEL=m
419# CONFIG_IPV6_MULTIPLE_TABLES is not set 449# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -451,7 +481,13 @@ CONFIG_NET_PKTGEN=m
451# CONFIG_BT is not set 481# CONFIG_BT is not set
452# CONFIG_AF_RXRPC is not set 482# CONFIG_AF_RXRPC is not set
453CONFIG_FIB_RULES=y 483CONFIG_FIB_RULES=y
454# CONFIG_WIRELESS is not set 484CONFIG_WIRELESS=y
485# CONFIG_CFG80211 is not set
486# CONFIG_LIB80211 is not set
487
488#
489# CFG80211 needs to be enabled for MAC80211
490#
455# CONFIG_WIMAX is not set 491# CONFIG_WIMAX is not set
456# CONFIG_RFKILL is not set 492# CONFIG_RFKILL is not set
457# CONFIG_NET_9P is not set 493# CONFIG_NET_9P is not set
@@ -570,6 +606,10 @@ CONFIG_BLK_DEV=y
570# CONFIG_BLK_DEV_COW_COMMON is not set 606# CONFIG_BLK_DEV_COW_COMMON is not set
571CONFIG_BLK_DEV_LOOP=m 607CONFIG_BLK_DEV_LOOP=m
572CONFIG_BLK_DEV_CRYPTOLOOP=m 608CONFIG_BLK_DEV_CRYPTOLOOP=m
609
610#
611# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
612#
573CONFIG_BLK_DEV_NBD=m 613CONFIG_BLK_DEV_NBD=m
574# CONFIG_BLK_DEV_SX8 is not set 614# CONFIG_BLK_DEV_SX8 is not set
575# CONFIG_BLK_DEV_UB is not set 615# CONFIG_BLK_DEV_UB is not set
@@ -581,6 +621,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
581# CONFIG_ATA_OVER_ETH is not set 621# CONFIG_ATA_OVER_ETH is not set
582# CONFIG_BLK_DEV_HD is not set 622# CONFIG_BLK_DEV_HD is not set
583CONFIG_MISC_DEVICES=y 623CONFIG_MISC_DEVICES=y
624# CONFIG_AD525X_DPOT is not set
584# CONFIG_PHANTOM is not set 625# CONFIG_PHANTOM is not set
585# CONFIG_SGI_IOC4 is not set 626# CONFIG_SGI_IOC4 is not set
586# CONFIG_TIFM_CORE is not set 627# CONFIG_TIFM_CORE is not set
@@ -588,6 +629,7 @@ CONFIG_MISC_DEVICES=y
588# CONFIG_ENCLOSURE_SERVICES is not set 629# CONFIG_ENCLOSURE_SERVICES is not set
589# CONFIG_HP_ILO is not set 630# CONFIG_HP_ILO is not set
590# CONFIG_ISL29003 is not set 631# CONFIG_ISL29003 is not set
632CONFIG_DS1682=y
591# CONFIG_C2PORT is not set 633# CONFIG_C2PORT is not set
592 634
593# 635#
@@ -689,7 +731,9 @@ CONFIG_SCSI_LOWLEVEL=y
689# CONFIG_SCSI_BNX2_ISCSI is not set 731# CONFIG_SCSI_BNX2_ISCSI is not set
690# CONFIG_BE2ISCSI is not set 732# CONFIG_BE2ISCSI is not set
691# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 733# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
734# CONFIG_SCSI_HPSA is not set
692# CONFIG_SCSI_3W_9XXX is not set 735# CONFIG_SCSI_3W_9XXX is not set
736# CONFIG_SCSI_3W_SAS is not set
693# CONFIG_SCSI_ACARD is not set 737# CONFIG_SCSI_ACARD is not set
694# CONFIG_SCSI_AACRAID is not set 738# CONFIG_SCSI_AACRAID is not set
695# CONFIG_SCSI_AIC7XXX is not set 739# CONFIG_SCSI_AIC7XXX is not set
@@ -728,6 +772,7 @@ CONFIG_SCSI_LOWLEVEL=y
728# CONFIG_SCSI_NSP32 is not set 772# CONFIG_SCSI_NSP32 is not set
729# CONFIG_SCSI_DEBUG is not set 773# CONFIG_SCSI_DEBUG is not set
730# CONFIG_SCSI_PMCRAID is not set 774# CONFIG_SCSI_PMCRAID is not set
775# CONFIG_SCSI_PM8001 is not set
731# CONFIG_SCSI_SRP is not set 776# CONFIG_SCSI_SRP is not set
732# CONFIG_SCSI_BFA_FC is not set 777# CONFIG_SCSI_BFA_FC is not set
733# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set 778# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
@@ -785,15 +830,16 @@ CONFIG_SATA_SIL=y
785# CONFIG_PATA_OPTI is not set 830# CONFIG_PATA_OPTI is not set
786# CONFIG_PATA_OPTIDMA is not set 831# CONFIG_PATA_OPTIDMA is not set
787# CONFIG_PATA_PCMCIA is not set 832# CONFIG_PATA_PCMCIA is not set
833# CONFIG_PATA_PDC2027X is not set
788# CONFIG_PATA_PDC_OLD is not set 834# CONFIG_PATA_PDC_OLD is not set
789# CONFIG_PATA_RADISYS is not set 835# CONFIG_PATA_RADISYS is not set
790# CONFIG_PATA_RDC is not set 836# CONFIG_PATA_RDC is not set
791# CONFIG_PATA_RZ1000 is not set 837# CONFIG_PATA_RZ1000 is not set
792# CONFIG_PATA_SC1200 is not set 838# CONFIG_PATA_SC1200 is not set
793# CONFIG_PATA_SERVERWORKS is not set 839# CONFIG_PATA_SERVERWORKS is not set
794# CONFIG_PATA_PDC2027X is not set
795# CONFIG_PATA_SIL680 is not set 840# CONFIG_PATA_SIL680 is not set
796# CONFIG_PATA_SIS is not set 841# CONFIG_PATA_SIS is not set
842# CONFIG_PATA_TOSHIBA is not set
797# CONFIG_PATA_VIA is not set 843# CONFIG_PATA_VIA is not set
798# CONFIG_PATA_WINBOND is not set 844# CONFIG_PATA_WINBOND is not set
799# CONFIG_PATA_PLATFORM is not set 845# CONFIG_PATA_PLATFORM is not set
@@ -810,7 +856,7 @@ CONFIG_SATA_SIL=y
810# 856#
811 857
812# 858#
813# See the help texts for more information. 859# The newer stack is recommended.
814# 860#
815# CONFIG_FIREWIRE is not set 861# CONFIG_FIREWIRE is not set
816# CONFIG_IEEE1394 is not set 862# CONFIG_IEEE1394 is not set
@@ -897,8 +943,14 @@ CONFIG_GIANFAR=y
897# CONFIG_NETDEV_10000 is not set 943# CONFIG_NETDEV_10000 is not set
898# CONFIG_TR is not set 944# CONFIG_TR is not set
899CONFIG_WLAN=y 945CONFIG_WLAN=y
900# CONFIG_WLAN_PRE80211 is not set 946# CONFIG_PCMCIA_RAYCS is not set
901# CONFIG_WLAN_80211 is not set 947# CONFIG_AIRO is not set
948# CONFIG_ATMEL is not set
949# CONFIG_AIRO_CS is not set
950# CONFIG_PCMCIA_WL3501 is not set
951# CONFIG_PRISM54 is not set
952# CONFIG_USB_ZD1201 is not set
953# CONFIG_HOSTAP is not set
902 954
903# 955#
904# Enable WiMAX (Networking options) to see the WiMAX drivers 956# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -937,6 +989,7 @@ CONFIG_NETCONSOLE=y
937CONFIG_NETPOLL=y 989CONFIG_NETPOLL=y
938CONFIG_NETPOLL_TRAP=y 990CONFIG_NETPOLL_TRAP=y
939CONFIG_NET_POLL_CONTROLLER=y 991CONFIG_NET_POLL_CONTROLLER=y
992# CONFIG_VMXNET3 is not set
940# CONFIG_ISDN is not set 993# CONFIG_ISDN is not set
941# CONFIG_PHONE is not set 994# CONFIG_PHONE is not set
942 995
@@ -946,6 +999,7 @@ CONFIG_NET_POLL_CONTROLLER=y
946CONFIG_INPUT=y 999CONFIG_INPUT=y
947# CONFIG_INPUT_FF_MEMLESS is not set 1000# CONFIG_INPUT_FF_MEMLESS is not set
948# CONFIG_INPUT_POLLDEV is not set 1001# CONFIG_INPUT_POLLDEV is not set
1002# CONFIG_INPUT_SPARSEKMAP is not set
949 1003
950# 1004#
951# Userland interfaces 1005# Userland interfaces
@@ -1005,6 +1059,7 @@ CONFIG_SERIAL_CORE=y
1005CONFIG_SERIAL_CORE_CONSOLE=y 1059CONFIG_SERIAL_CORE_CONSOLE=y
1006# CONFIG_SERIAL_JSM is not set 1060# CONFIG_SERIAL_JSM is not set
1007# CONFIG_SERIAL_OF_PLATFORM is not set 1061# CONFIG_SERIAL_OF_PLATFORM is not set
1062# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
1008CONFIG_UNIX98_PTYS=y 1063CONFIG_UNIX98_PTYS=y
1009# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1064# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
1010# CONFIG_LEGACY_PTYS is not set 1065# CONFIG_LEGACY_PTYS is not set
@@ -1070,11 +1125,6 @@ CONFIG_I2C_MPC=y
1070# CONFIG_I2C_TINY_USB is not set 1125# CONFIG_I2C_TINY_USB is not set
1071 1126
1072# 1127#
1073# Graphics adapter I2C/DDC channel drivers
1074#
1075# CONFIG_I2C_VOODOO3 is not set
1076
1077#
1078# Other I2C/SMBus bus drivers 1128# Other I2C/SMBus bus drivers
1079# 1129#
1080# CONFIG_I2C_PCA_PLATFORM is not set 1130# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1083,7 +1133,6 @@ CONFIG_I2C_MPC=y
1083# 1133#
1084# Miscellaneous I2C Chip support 1134# Miscellaneous I2C Chip support
1085# 1135#
1086CONFIG_DS1682=y
1087# CONFIG_SENSORS_TSL2550 is not set 1136# CONFIG_SENSORS_TSL2550 is not set
1088# CONFIG_I2C_DEBUG_CORE is not set 1137# CONFIG_I2C_DEBUG_CORE is not set
1089# CONFIG_I2C_DEBUG_ALGO is not set 1138# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1115,6 +1164,7 @@ CONFIG_GPIO_SYSFS=y
1115# 1164#
1116# PCI GPIO expanders: 1165# PCI GPIO expanders:
1117# 1166#
1167# CONFIG_GPIO_CS5535 is not set
1118# CONFIG_GPIO_BT8XX is not set 1168# CONFIG_GPIO_BT8XX is not set
1119# CONFIG_GPIO_LANGWELL is not set 1169# CONFIG_GPIO_LANGWELL is not set
1120 1170
@@ -1157,6 +1207,7 @@ CONFIG_HWMON=y
1157# CONFIG_SENSORS_GL520SM is not set 1207# CONFIG_SENSORS_GL520SM is not set
1158# CONFIG_SENSORS_IT87 is not set 1208# CONFIG_SENSORS_IT87 is not set
1159# CONFIG_SENSORS_LM63 is not set 1209# CONFIG_SENSORS_LM63 is not set
1210# CONFIG_SENSORS_LM73 is not set
1160# CONFIG_SENSORS_LM75 is not set 1211# CONFIG_SENSORS_LM75 is not set
1161# CONFIG_SENSORS_LM77 is not set 1212# CONFIG_SENSORS_LM77 is not set
1162# CONFIG_SENSORS_LM78 is not set 1213# CONFIG_SENSORS_LM78 is not set
@@ -1196,6 +1247,7 @@ CONFIG_SENSORS_LM92=y
1196# CONFIG_SENSORS_W83L786NG is not set 1247# CONFIG_SENSORS_W83L786NG is not set
1197# CONFIG_SENSORS_W83627HF is not set 1248# CONFIG_SENSORS_W83627HF is not set
1198# CONFIG_SENSORS_W83627EHF is not set 1249# CONFIG_SENSORS_W83627EHF is not set
1250# CONFIG_SENSORS_LIS3_I2C is not set
1199# CONFIG_THERMAL is not set 1251# CONFIG_THERMAL is not set
1200CONFIG_WATCHDOG=y 1252CONFIG_WATCHDOG=y
1201# CONFIG_WATCHDOG_NOWAYOUT is not set 1253# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1235,11 +1287,13 @@ CONFIG_SSB_POSSIBLE=y
1235# CONFIG_TWL4030_CORE is not set 1287# CONFIG_TWL4030_CORE is not set
1236# CONFIG_MFD_TMIO is not set 1288# CONFIG_MFD_TMIO is not set
1237# CONFIG_PMIC_DA903X is not set 1289# CONFIG_PMIC_DA903X is not set
1290# CONFIG_PMIC_ADP5520 is not set
1238# CONFIG_MFD_WM8400 is not set 1291# CONFIG_MFD_WM8400 is not set
1239# CONFIG_MFD_WM831X is not set 1292# CONFIG_MFD_WM831X is not set
1240# CONFIG_MFD_WM8350_I2C is not set 1293# CONFIG_MFD_WM8350_I2C is not set
1241# CONFIG_MFD_PCF50633 is not set 1294# CONFIG_MFD_PCF50633 is not set
1242# CONFIG_AB3100_CORE is not set 1295# CONFIG_AB3100_CORE is not set
1296# CONFIG_MFD_88PM8607 is not set
1243# CONFIG_REGULATOR is not set 1297# CONFIG_REGULATOR is not set
1244# CONFIG_MEDIA_SUPPORT is not set 1298# CONFIG_MEDIA_SUPPORT is not set
1245 1299
@@ -1338,6 +1392,7 @@ CONFIG_USB=y
1338CONFIG_USB_EHCI_HCD=y 1392CONFIG_USB_EHCI_HCD=y
1339# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1393# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1340# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1394# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1395# CONFIG_XPS_USB_HCD_XILINX is not set
1341# CONFIG_USB_EHCI_FSL is not set 1396# CONFIG_USB_EHCI_FSL is not set
1342# CONFIG_USB_EHCI_HCD_PPC_OF is not set 1397# CONFIG_USB_EHCI_HCD_PPC_OF is not set
1343# CONFIG_USB_OXU210HP_HCD is not set 1398# CONFIG_USB_OXU210HP_HCD is not set
@@ -1464,6 +1519,7 @@ CONFIG_RTC_INTF_DEV=y
1464# CONFIG_RTC_DRV_PCF8563 is not set 1519# CONFIG_RTC_DRV_PCF8563 is not set
1465# CONFIG_RTC_DRV_PCF8583 is not set 1520# CONFIG_RTC_DRV_PCF8583 is not set
1466# CONFIG_RTC_DRV_M41T80 is not set 1521# CONFIG_RTC_DRV_M41T80 is not set
1522# CONFIG_RTC_DRV_BQ32K is not set
1467# CONFIG_RTC_DRV_S35390A is not set 1523# CONFIG_RTC_DRV_S35390A is not set
1468# CONFIG_RTC_DRV_FM3130 is not set 1524# CONFIG_RTC_DRV_FM3130 is not set
1469CONFIG_RTC_DRV_RX8581=y 1525CONFIG_RTC_DRV_RX8581=y
@@ -1485,7 +1541,9 @@ CONFIG_RTC_DRV_RX8581=y
1485# CONFIG_RTC_DRV_M48T86 is not set 1541# CONFIG_RTC_DRV_M48T86 is not set
1486# CONFIG_RTC_DRV_M48T35 is not set 1542# CONFIG_RTC_DRV_M48T35 is not set
1487# CONFIG_RTC_DRV_M48T59 is not set 1543# CONFIG_RTC_DRV_M48T59 is not set
1544# CONFIG_RTC_DRV_MSM6242 is not set
1488# CONFIG_RTC_DRV_BQ4802 is not set 1545# CONFIG_RTC_DRV_BQ4802 is not set
1546# CONFIG_RTC_DRV_RP5C01 is not set
1489# CONFIG_RTC_DRV_V3020 is not set 1547# CONFIG_RTC_DRV_V3020 is not set
1490 1548
1491# 1549#
@@ -1710,7 +1768,7 @@ CONFIG_MAGIC_SYSRQ=y
1710# CONFIG_DEBUG_FS is not set 1768# CONFIG_DEBUG_FS is not set
1711# CONFIG_HEADERS_CHECK is not set 1769# CONFIG_HEADERS_CHECK is not set
1712# CONFIG_DEBUG_KERNEL is not set 1770# CONFIG_DEBUG_KERNEL is not set
1713# CONFIG_DEBUG_BUGVERBOSE is not set 1771CONFIG_DEBUG_BUGVERBOSE=y
1714# CONFIG_DEBUG_MEMORY_INIT is not set 1772# CONFIG_DEBUG_MEMORY_INIT is not set
1715# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1773# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1716# CONFIG_LATENCYTOP is not set 1774# CONFIG_LATENCYTOP is not set
@@ -1737,7 +1795,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1737# CONFIG_KEYS is not set 1795# CONFIG_KEYS is not set
1738# CONFIG_SECURITY is not set 1796# CONFIG_SECURITY is not set
1739# CONFIG_SECURITYFS is not set 1797# CONFIG_SECURITYFS is not set
1740# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1798# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1799# CONFIG_DEFAULT_SECURITY_SMACK is not set
1800# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1801CONFIG_DEFAULT_SECURITY_DAC=y
1802CONFIG_DEFAULT_SECURITY=""
1741CONFIG_CRYPTO=y 1803CONFIG_CRYPTO=y
1742 1804
1743# 1805#
diff --git a/arch/powerpc/configs/86xx/gef_sbc310_defconfig b/arch/powerpc/configs/86xx/gef_sbc310_defconfig
index a6a3768f7304..eb58dec11a61 100644
--- a/arch/powerpc/configs/86xx/gef_sbc310_defconfig
+++ b/arch/powerpc/configs/86xx/gef_sbc310_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:47 2009 4# Wed Jan 6 09:24:41 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -38,6 +38,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
40CONFIG_IRQ_PER_CPU=y 40CONFIG_IRQ_PER_CPU=y
41CONFIG_NR_IRQS=512
41CONFIG_STACKTRACE_SUPPORT=y 42CONFIG_STACKTRACE_SUPPORT=y
42CONFIG_HAVE_LATENCYTOP_SUPPORT=y 43CONFIG_HAVE_LATENCYTOP_SUPPORT=y
43CONFIG_TRACE_IRQFLAGS_SUPPORT=y 44CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -91,6 +94,7 @@ CONFIG_BSD_PROCESS_ACCT_V3=y
91# 94#
92CONFIG_TREE_RCU=y 95CONFIG_TREE_RCU=y
93# CONFIG_TREE_PREEMPT_RCU is not set 96# CONFIG_TREE_PREEMPT_RCU is not set
97# CONFIG_TINY_RCU is not set
94# CONFIG_RCU_TRACE is not set 98# CONFIG_RCU_TRACE is not set
95CONFIG_RCU_FANOUT=32 99CONFIG_RCU_FANOUT=32
96# CONFIG_RCU_FANOUT_EXACT is not set 100# CONFIG_RCU_FANOUT_EXACT is not set
@@ -181,14 +185,41 @@ CONFIG_LBDAF=y
181# IO Schedulers 185# IO Schedulers
182# 186#
183CONFIG_IOSCHED_NOOP=y 187CONFIG_IOSCHED_NOOP=y
184CONFIG_IOSCHED_AS=y
185CONFIG_IOSCHED_DEADLINE=y 188CONFIG_IOSCHED_DEADLINE=y
186CONFIG_IOSCHED_CFQ=y 189CONFIG_IOSCHED_CFQ=y
187# CONFIG_DEFAULT_AS is not set
188# CONFIG_DEFAULT_DEADLINE is not set 190# CONFIG_DEFAULT_DEADLINE is not set
189CONFIG_DEFAULT_CFQ=y 191CONFIG_DEFAULT_CFQ=y
190# CONFIG_DEFAULT_NOOP is not set 192# CONFIG_DEFAULT_NOOP is not set
191CONFIG_DEFAULT_IOSCHED="cfq" 193CONFIG_DEFAULT_IOSCHED="cfq"
194# CONFIG_INLINE_SPIN_TRYLOCK is not set
195# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
196# CONFIG_INLINE_SPIN_LOCK is not set
197# CONFIG_INLINE_SPIN_LOCK_BH is not set
198# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
199# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
200# CONFIG_INLINE_SPIN_UNLOCK is not set
201# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
202# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
203# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
204# CONFIG_INLINE_READ_TRYLOCK is not set
205# CONFIG_INLINE_READ_LOCK is not set
206# CONFIG_INLINE_READ_LOCK_BH is not set
207# CONFIG_INLINE_READ_LOCK_IRQ is not set
208# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
209# CONFIG_INLINE_READ_UNLOCK is not set
210# CONFIG_INLINE_READ_UNLOCK_BH is not set
211# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
212# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
213# CONFIG_INLINE_WRITE_TRYLOCK is not set
214# CONFIG_INLINE_WRITE_LOCK is not set
215# CONFIG_INLINE_WRITE_LOCK_BH is not set
216# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
217# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
218# CONFIG_INLINE_WRITE_UNLOCK is not set
219# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
220# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
221# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
222CONFIG_MUTEX_SPIN_ON_OWNER=y
192# CONFIG_FREEZER is not set 223# CONFIG_FREEZER is not set
193 224
194# 225#
@@ -259,6 +290,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
259# CONFIG_KEXEC is not set 290# CONFIG_KEXEC is not set
260# CONFIG_CRASH_DUMP is not set 291# CONFIG_CRASH_DUMP is not set
261CONFIG_IRQ_ALL_CPUS=y 292CONFIG_IRQ_ALL_CPUS=y
293CONFIG_SPARSE_IRQ=y
262CONFIG_MAX_ACTIVE_REGIONS=32 294CONFIG_MAX_ACTIVE_REGIONS=32
263CONFIG_ARCH_FLATMEM_ENABLE=y 295CONFIG_ARCH_FLATMEM_ENABLE=y
264CONFIG_ARCH_POPULATES_NODE_MAP=y 296CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -275,8 +307,6 @@ CONFIG_MIGRATION=y
275CONFIG_ZONE_DMA_FLAG=1 307CONFIG_ZONE_DMA_FLAG=1
276CONFIG_BOUNCE=y 308CONFIG_BOUNCE=y
277CONFIG_VIRT_TO_BUS=y 309CONFIG_VIRT_TO_BUS=y
278CONFIG_HAVE_MLOCK=y
279CONFIG_HAVE_MLOCKED_PAGE_BIT=y
280# CONFIG_KSM is not set 310# CONFIG_KSM is not set
281CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 311CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
282CONFIG_PPC_4K_PAGES=y 312CONFIG_PPC_4K_PAGES=y
@@ -314,7 +344,6 @@ CONFIG_ARCH_SUPPORTS_MSI=y
314# CONFIG_PCI_STUB is not set 344# CONFIG_PCI_STUB is not set
315# CONFIG_PCI_IOV is not set 345# CONFIG_PCI_IOV is not set
316CONFIG_PCCARD=y 346CONFIG_PCCARD=y
317# CONFIG_PCMCIA_DEBUG is not set
318CONFIG_PCMCIA=y 347CONFIG_PCMCIA=y
319# CONFIG_PCMCIA_LOAD_CIS is not set 348# CONFIG_PCMCIA_LOAD_CIS is not set
320# CONFIG_PCMCIA_IOCTL is not set 349# CONFIG_PCMCIA_IOCTL is not set
@@ -414,6 +443,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
414CONFIG_INET6_XFRM_MODE_BEET=m 443CONFIG_INET6_XFRM_MODE_BEET=m
415# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 444# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
416CONFIG_IPV6_SIT=m 445CONFIG_IPV6_SIT=m
446# CONFIG_IPV6_SIT_6RD is not set
417CONFIG_IPV6_NDISC_NODETYPE=y 447CONFIG_IPV6_NDISC_NODETYPE=y
418CONFIG_IPV6_TUNNEL=m 448CONFIG_IPV6_TUNNEL=m
419# CONFIG_IPV6_MULTIPLE_TABLES is not set 449# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -451,7 +481,13 @@ CONFIG_NET_PKTGEN=m
451# CONFIG_BT is not set 481# CONFIG_BT is not set
452# CONFIG_AF_RXRPC is not set 482# CONFIG_AF_RXRPC is not set
453CONFIG_FIB_RULES=y 483CONFIG_FIB_RULES=y
454# CONFIG_WIRELESS is not set 484CONFIG_WIRELESS=y
485# CONFIG_CFG80211 is not set
486# CONFIG_LIB80211 is not set
487
488#
489# CFG80211 needs to be enabled for MAC80211
490#
455# CONFIG_WIMAX is not set 491# CONFIG_WIMAX is not set
456# CONFIG_RFKILL is not set 492# CONFIG_RFKILL is not set
457# CONFIG_NET_9P is not set 493# CONFIG_NET_9P is not set
@@ -570,6 +606,10 @@ CONFIG_BLK_DEV=y
570# CONFIG_BLK_DEV_COW_COMMON is not set 606# CONFIG_BLK_DEV_COW_COMMON is not set
571CONFIG_BLK_DEV_LOOP=m 607CONFIG_BLK_DEV_LOOP=m
572CONFIG_BLK_DEV_CRYPTOLOOP=m 608CONFIG_BLK_DEV_CRYPTOLOOP=m
609
610#
611# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
612#
573CONFIG_BLK_DEV_NBD=m 613CONFIG_BLK_DEV_NBD=m
574# CONFIG_BLK_DEV_SX8 is not set 614# CONFIG_BLK_DEV_SX8 is not set
575# CONFIG_BLK_DEV_UB is not set 615# CONFIG_BLK_DEV_UB is not set
@@ -581,6 +621,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
581# CONFIG_ATA_OVER_ETH is not set 621# CONFIG_ATA_OVER_ETH is not set
582# CONFIG_BLK_DEV_HD is not set 622# CONFIG_BLK_DEV_HD is not set
583CONFIG_MISC_DEVICES=y 623CONFIG_MISC_DEVICES=y
624# CONFIG_AD525X_DPOT is not set
584# CONFIG_PHANTOM is not set 625# CONFIG_PHANTOM is not set
585# CONFIG_SGI_IOC4 is not set 626# CONFIG_SGI_IOC4 is not set
586# CONFIG_TIFM_CORE is not set 627# CONFIG_TIFM_CORE is not set
@@ -588,6 +629,7 @@ CONFIG_MISC_DEVICES=y
588# CONFIG_ENCLOSURE_SERVICES is not set 629# CONFIG_ENCLOSURE_SERVICES is not set
589# CONFIG_HP_ILO is not set 630# CONFIG_HP_ILO is not set
590# CONFIG_ISL29003 is not set 631# CONFIG_ISL29003 is not set
632CONFIG_DS1682=y
591# CONFIG_C2PORT is not set 633# CONFIG_C2PORT is not set
592 634
593# 635#
@@ -689,7 +731,9 @@ CONFIG_SCSI_LOWLEVEL=y
689# CONFIG_SCSI_BNX2_ISCSI is not set 731# CONFIG_SCSI_BNX2_ISCSI is not set
690# CONFIG_BE2ISCSI is not set 732# CONFIG_BE2ISCSI is not set
691# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 733# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
734# CONFIG_SCSI_HPSA is not set
692# CONFIG_SCSI_3W_9XXX is not set 735# CONFIG_SCSI_3W_9XXX is not set
736# CONFIG_SCSI_3W_SAS is not set
693# CONFIG_SCSI_ACARD is not set 737# CONFIG_SCSI_ACARD is not set
694# CONFIG_SCSI_AACRAID is not set 738# CONFIG_SCSI_AACRAID is not set
695# CONFIG_SCSI_AIC7XXX is not set 739# CONFIG_SCSI_AIC7XXX is not set
@@ -728,6 +772,7 @@ CONFIG_SCSI_LOWLEVEL=y
728# CONFIG_SCSI_NSP32 is not set 772# CONFIG_SCSI_NSP32 is not set
729# CONFIG_SCSI_DEBUG is not set 773# CONFIG_SCSI_DEBUG is not set
730# CONFIG_SCSI_PMCRAID is not set 774# CONFIG_SCSI_PMCRAID is not set
775# CONFIG_SCSI_PM8001 is not set
731# CONFIG_SCSI_SRP is not set 776# CONFIG_SCSI_SRP is not set
732# CONFIG_SCSI_BFA_FC is not set 777# CONFIG_SCSI_BFA_FC is not set
733# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set 778# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
@@ -753,7 +798,7 @@ CONFIG_SATA_SIL24=y
753# 798#
754 799
755# 800#
756# See the help texts for more information. 801# The newer stack is recommended.
757# 802#
758# CONFIG_FIREWIRE is not set 803# CONFIG_FIREWIRE is not set
759# CONFIG_IEEE1394 is not set 804# CONFIG_IEEE1394 is not set
@@ -840,8 +885,14 @@ CONFIG_GIANFAR=y
840# CONFIG_NETDEV_10000 is not set 885# CONFIG_NETDEV_10000 is not set
841# CONFIG_TR is not set 886# CONFIG_TR is not set
842CONFIG_WLAN=y 887CONFIG_WLAN=y
843# CONFIG_WLAN_PRE80211 is not set 888# CONFIG_PCMCIA_RAYCS is not set
844# CONFIG_WLAN_80211 is not set 889# CONFIG_AIRO is not set
890# CONFIG_ATMEL is not set
891# CONFIG_AIRO_CS is not set
892# CONFIG_PCMCIA_WL3501 is not set
893# CONFIG_PRISM54 is not set
894# CONFIG_USB_ZD1201 is not set
895# CONFIG_HOSTAP is not set
845 896
846# 897#
847# Enable WiMAX (Networking options) to see the WiMAX drivers 898# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -880,6 +931,7 @@ CONFIG_NETCONSOLE=y
880CONFIG_NETPOLL=y 931CONFIG_NETPOLL=y
881CONFIG_NETPOLL_TRAP=y 932CONFIG_NETPOLL_TRAP=y
882CONFIG_NET_POLL_CONTROLLER=y 933CONFIG_NET_POLL_CONTROLLER=y
934# CONFIG_VMXNET3 is not set
883# CONFIG_ISDN is not set 935# CONFIG_ISDN is not set
884# CONFIG_PHONE is not set 936# CONFIG_PHONE is not set
885 937
@@ -889,6 +941,7 @@ CONFIG_NET_POLL_CONTROLLER=y
889CONFIG_INPUT=y 941CONFIG_INPUT=y
890# CONFIG_INPUT_FF_MEMLESS is not set 942# CONFIG_INPUT_FF_MEMLESS is not set
891# CONFIG_INPUT_POLLDEV is not set 943# CONFIG_INPUT_POLLDEV is not set
944# CONFIG_INPUT_SPARSEKMAP is not set
892 945
893# 946#
894# Userland interfaces 947# Userland interfaces
@@ -948,6 +1001,7 @@ CONFIG_SERIAL_CORE=y
948CONFIG_SERIAL_CORE_CONSOLE=y 1001CONFIG_SERIAL_CORE_CONSOLE=y
949# CONFIG_SERIAL_JSM is not set 1002# CONFIG_SERIAL_JSM is not set
950# CONFIG_SERIAL_OF_PLATFORM is not set 1003# CONFIG_SERIAL_OF_PLATFORM is not set
1004# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
951CONFIG_UNIX98_PTYS=y 1005CONFIG_UNIX98_PTYS=y
952# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1006# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
953# CONFIG_LEGACY_PTYS is not set 1007# CONFIG_LEGACY_PTYS is not set
@@ -1013,11 +1067,6 @@ CONFIG_I2C_MPC=y
1013# CONFIG_I2C_TINY_USB is not set 1067# CONFIG_I2C_TINY_USB is not set
1014 1068
1015# 1069#
1016# Graphics adapter I2C/DDC channel drivers
1017#
1018# CONFIG_I2C_VOODOO3 is not set
1019
1020#
1021# Other I2C/SMBus bus drivers 1070# Other I2C/SMBus bus drivers
1022# 1071#
1023# CONFIG_I2C_PCA_PLATFORM is not set 1072# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1026,7 +1075,6 @@ CONFIG_I2C_MPC=y
1026# 1075#
1027# Miscellaneous I2C Chip support 1076# Miscellaneous I2C Chip support
1028# 1077#
1029CONFIG_DS1682=y
1030# CONFIG_SENSORS_TSL2550 is not set 1078# CONFIG_SENSORS_TSL2550 is not set
1031# CONFIG_I2C_DEBUG_CORE is not set 1079# CONFIG_I2C_DEBUG_CORE is not set
1032# CONFIG_I2C_DEBUG_ALGO is not set 1080# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1058,6 +1106,7 @@ CONFIG_GPIO_SYSFS=y
1058# 1106#
1059# PCI GPIO expanders: 1107# PCI GPIO expanders:
1060# 1108#
1109# CONFIG_GPIO_CS5535 is not set
1061# CONFIG_GPIO_BT8XX is not set 1110# CONFIG_GPIO_BT8XX is not set
1062# CONFIG_GPIO_LANGWELL is not set 1111# CONFIG_GPIO_LANGWELL is not set
1063 1112
@@ -1100,6 +1149,7 @@ CONFIG_HWMON=y
1100# CONFIG_SENSORS_GL520SM is not set 1149# CONFIG_SENSORS_GL520SM is not set
1101# CONFIG_SENSORS_IT87 is not set 1150# CONFIG_SENSORS_IT87 is not set
1102# CONFIG_SENSORS_LM63 is not set 1151# CONFIG_SENSORS_LM63 is not set
1152# CONFIG_SENSORS_LM73 is not set
1103# CONFIG_SENSORS_LM75 is not set 1153# CONFIG_SENSORS_LM75 is not set
1104# CONFIG_SENSORS_LM77 is not set 1154# CONFIG_SENSORS_LM77 is not set
1105# CONFIG_SENSORS_LM78 is not set 1155# CONFIG_SENSORS_LM78 is not set
@@ -1139,6 +1189,7 @@ CONFIG_SENSORS_LM92=y
1139# CONFIG_SENSORS_W83L786NG is not set 1189# CONFIG_SENSORS_W83L786NG is not set
1140# CONFIG_SENSORS_W83627HF is not set 1190# CONFIG_SENSORS_W83627HF is not set
1141# CONFIG_SENSORS_W83627EHF is not set 1191# CONFIG_SENSORS_W83627EHF is not set
1192# CONFIG_SENSORS_LIS3_I2C is not set
1142# CONFIG_THERMAL is not set 1193# CONFIG_THERMAL is not set
1143CONFIG_WATCHDOG=y 1194CONFIG_WATCHDOG=y
1144# CONFIG_WATCHDOG_NOWAYOUT is not set 1195# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1178,11 +1229,13 @@ CONFIG_SSB_POSSIBLE=y
1178# CONFIG_TWL4030_CORE is not set 1229# CONFIG_TWL4030_CORE is not set
1179# CONFIG_MFD_TMIO is not set 1230# CONFIG_MFD_TMIO is not set
1180# CONFIG_PMIC_DA903X is not set 1231# CONFIG_PMIC_DA903X is not set
1232# CONFIG_PMIC_ADP5520 is not set
1181# CONFIG_MFD_WM8400 is not set 1233# CONFIG_MFD_WM8400 is not set
1182# CONFIG_MFD_WM831X is not set 1234# CONFIG_MFD_WM831X is not set
1183# CONFIG_MFD_WM8350_I2C is not set 1235# CONFIG_MFD_WM8350_I2C is not set
1184# CONFIG_MFD_PCF50633 is not set 1236# CONFIG_MFD_PCF50633 is not set
1185# CONFIG_AB3100_CORE is not set 1237# CONFIG_AB3100_CORE is not set
1238# CONFIG_MFD_88PM8607 is not set
1186# CONFIG_REGULATOR is not set 1239# CONFIG_REGULATOR is not set
1187# CONFIG_MEDIA_SUPPORT is not set 1240# CONFIG_MEDIA_SUPPORT is not set
1188 1241
@@ -1281,6 +1334,7 @@ CONFIG_USB=y
1281CONFIG_USB_EHCI_HCD=y 1334CONFIG_USB_EHCI_HCD=y
1282# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1335# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1283# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1336# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1337# CONFIG_XPS_USB_HCD_XILINX is not set
1284# CONFIG_USB_EHCI_FSL is not set 1338# CONFIG_USB_EHCI_FSL is not set
1285# CONFIG_USB_EHCI_HCD_PPC_OF is not set 1339# CONFIG_USB_EHCI_HCD_PPC_OF is not set
1286# CONFIG_USB_OXU210HP_HCD is not set 1340# CONFIG_USB_OXU210HP_HCD is not set
@@ -1407,6 +1461,7 @@ CONFIG_RTC_INTF_DEV=y
1407# CONFIG_RTC_DRV_PCF8563 is not set 1461# CONFIG_RTC_DRV_PCF8563 is not set
1408# CONFIG_RTC_DRV_PCF8583 is not set 1462# CONFIG_RTC_DRV_PCF8583 is not set
1409# CONFIG_RTC_DRV_M41T80 is not set 1463# CONFIG_RTC_DRV_M41T80 is not set
1464# CONFIG_RTC_DRV_BQ32K is not set
1410# CONFIG_RTC_DRV_S35390A is not set 1465# CONFIG_RTC_DRV_S35390A is not set
1411# CONFIG_RTC_DRV_FM3130 is not set 1466# CONFIG_RTC_DRV_FM3130 is not set
1412CONFIG_RTC_DRV_RX8581=y 1467CONFIG_RTC_DRV_RX8581=y
@@ -1428,7 +1483,9 @@ CONFIG_RTC_DRV_RX8581=y
1428# CONFIG_RTC_DRV_M48T86 is not set 1483# CONFIG_RTC_DRV_M48T86 is not set
1429# CONFIG_RTC_DRV_M48T35 is not set 1484# CONFIG_RTC_DRV_M48T35 is not set
1430# CONFIG_RTC_DRV_M48T59 is not set 1485# CONFIG_RTC_DRV_M48T59 is not set
1486# CONFIG_RTC_DRV_MSM6242 is not set
1431# CONFIG_RTC_DRV_BQ4802 is not set 1487# CONFIG_RTC_DRV_BQ4802 is not set
1488# CONFIG_RTC_DRV_RP5C01 is not set
1432# CONFIG_RTC_DRV_V3020 is not set 1489# CONFIG_RTC_DRV_V3020 is not set
1433 1490
1434# 1491#
@@ -1653,7 +1710,7 @@ CONFIG_MAGIC_SYSRQ=y
1653# CONFIG_DEBUG_FS is not set 1710# CONFIG_DEBUG_FS is not set
1654# CONFIG_HEADERS_CHECK is not set 1711# CONFIG_HEADERS_CHECK is not set
1655# CONFIG_DEBUG_KERNEL is not set 1712# CONFIG_DEBUG_KERNEL is not set
1656# CONFIG_DEBUG_BUGVERBOSE is not set 1713CONFIG_DEBUG_BUGVERBOSE=y
1657# CONFIG_DEBUG_MEMORY_INIT is not set 1714# CONFIG_DEBUG_MEMORY_INIT is not set
1658# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1715# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1659# CONFIG_LATENCYTOP is not set 1716# CONFIG_LATENCYTOP is not set
@@ -1680,7 +1737,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1680# CONFIG_KEYS is not set 1737# CONFIG_KEYS is not set
1681# CONFIG_SECURITY is not set 1738# CONFIG_SECURITY is not set
1682# CONFIG_SECURITYFS is not set 1739# CONFIG_SECURITYFS is not set
1683# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1740# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1741# CONFIG_DEFAULT_SECURITY_SMACK is not set
1742# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1743CONFIG_DEFAULT_SECURITY_DAC=y
1744CONFIG_DEFAULT_SECURITY=""
1684CONFIG_CRYPTO=y 1745CONFIG_CRYPTO=y
1685 1746
1686# 1747#
diff --git a/arch/powerpc/configs/86xx/gef_sbc610_defconfig b/arch/powerpc/configs/86xx/gef_sbc610_defconfig
index 1975d41e0763..4554d9bb03e5 100644
--- a/arch/powerpc/configs/86xx/gef_sbc610_defconfig
+++ b/arch/powerpc/configs/86xx/gef_sbc610_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:48 2009 4# Wed Jan 6 09:24:42 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -38,6 +38,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
40CONFIG_IRQ_PER_CPU=y 40CONFIG_IRQ_PER_CPU=y
41CONFIG_NR_IRQS=512
41CONFIG_STACKTRACE_SUPPORT=y 42CONFIG_STACKTRACE_SUPPORT=y
42CONFIG_HAVE_LATENCYTOP_SUPPORT=y 43CONFIG_HAVE_LATENCYTOP_SUPPORT=y
43CONFIG_TRACE_IRQFLAGS_SUPPORT=y 44CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -91,6 +94,7 @@ CONFIG_BSD_PROCESS_ACCT_V3=y
91# 94#
92CONFIG_TREE_RCU=y 95CONFIG_TREE_RCU=y
93# CONFIG_TREE_PREEMPT_RCU is not set 96# CONFIG_TREE_PREEMPT_RCU is not set
97# CONFIG_TINY_RCU is not set
94# CONFIG_RCU_TRACE is not set 98# CONFIG_RCU_TRACE is not set
95CONFIG_RCU_FANOUT=32 99CONFIG_RCU_FANOUT=32
96# CONFIG_RCU_FANOUT_EXACT is not set 100# CONFIG_RCU_FANOUT_EXACT is not set
@@ -182,14 +186,41 @@ CONFIG_LBDAF=y
182# IO Schedulers 186# IO Schedulers
183# 187#
184CONFIG_IOSCHED_NOOP=y 188CONFIG_IOSCHED_NOOP=y
185CONFIG_IOSCHED_AS=y
186CONFIG_IOSCHED_DEADLINE=y 189CONFIG_IOSCHED_DEADLINE=y
187CONFIG_IOSCHED_CFQ=y 190CONFIG_IOSCHED_CFQ=y
188# CONFIG_DEFAULT_AS is not set
189# CONFIG_DEFAULT_DEADLINE is not set 191# CONFIG_DEFAULT_DEADLINE is not set
190CONFIG_DEFAULT_CFQ=y 192CONFIG_DEFAULT_CFQ=y
191# CONFIG_DEFAULT_NOOP is not set 193# CONFIG_DEFAULT_NOOP is not set
192CONFIG_DEFAULT_IOSCHED="cfq" 194CONFIG_DEFAULT_IOSCHED="cfq"
195# CONFIG_INLINE_SPIN_TRYLOCK is not set
196# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
197# CONFIG_INLINE_SPIN_LOCK is not set
198# CONFIG_INLINE_SPIN_LOCK_BH is not set
199# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
200# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
201# CONFIG_INLINE_SPIN_UNLOCK is not set
202# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
203# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
204# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
205# CONFIG_INLINE_READ_TRYLOCK is not set
206# CONFIG_INLINE_READ_LOCK is not set
207# CONFIG_INLINE_READ_LOCK_BH is not set
208# CONFIG_INLINE_READ_LOCK_IRQ is not set
209# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
210# CONFIG_INLINE_READ_UNLOCK is not set
211# CONFIG_INLINE_READ_UNLOCK_BH is not set
212# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
213# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
214# CONFIG_INLINE_WRITE_TRYLOCK is not set
215# CONFIG_INLINE_WRITE_LOCK is not set
216# CONFIG_INLINE_WRITE_LOCK_BH is not set
217# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
218# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
219# CONFIG_INLINE_WRITE_UNLOCK is not set
220# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
221# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
222# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
223CONFIG_MUTEX_SPIN_ON_OWNER=y
193# CONFIG_FREEZER is not set 224# CONFIG_FREEZER is not set
194 225
195# 226#
@@ -260,6 +291,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 291# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 292# CONFIG_CRASH_DUMP is not set
262CONFIG_IRQ_ALL_CPUS=y 293CONFIG_IRQ_ALL_CPUS=y
294CONFIG_SPARSE_IRQ=y
263CONFIG_MAX_ACTIVE_REGIONS=32 295CONFIG_MAX_ACTIVE_REGIONS=32
264CONFIG_ARCH_FLATMEM_ENABLE=y 296CONFIG_ARCH_FLATMEM_ENABLE=y
265CONFIG_ARCH_POPULATES_NODE_MAP=y 297CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -276,8 +308,6 @@ CONFIG_MIGRATION=y
276CONFIG_ZONE_DMA_FLAG=1 308CONFIG_ZONE_DMA_FLAG=1
277CONFIG_BOUNCE=y 309CONFIG_BOUNCE=y
278CONFIG_VIRT_TO_BUS=y 310CONFIG_VIRT_TO_BUS=y
279CONFIG_HAVE_MLOCK=y
280CONFIG_HAVE_MLOCKED_PAGE_BIT=y
281# CONFIG_KSM is not set 311# CONFIG_KSM is not set
282CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 312CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
283CONFIG_PPC_4K_PAGES=y 313CONFIG_PPC_4K_PAGES=y
@@ -400,6 +430,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
400CONFIG_INET6_XFRM_MODE_BEET=m 430CONFIG_INET6_XFRM_MODE_BEET=m
401# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 431# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
402CONFIG_IPV6_SIT=m 432CONFIG_IPV6_SIT=m
433# CONFIG_IPV6_SIT_6RD is not set
403CONFIG_IPV6_NDISC_NODETYPE=y 434CONFIG_IPV6_NDISC_NODETYPE=y
404CONFIG_IPV6_TUNNEL=m 435CONFIG_IPV6_TUNNEL=m
405# CONFIG_IPV6_MULTIPLE_TABLES is not set 436# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -588,9 +619,6 @@ CONFIG_NET_PKTGEN=m
588CONFIG_FIB_RULES=y 619CONFIG_FIB_RULES=y
589CONFIG_WIRELESS=y 620CONFIG_WIRELESS=y
590# CONFIG_CFG80211 is not set 621# CONFIG_CFG80211 is not set
591CONFIG_CFG80211_DEFAULT_PS_VALUE=0
592CONFIG_WIRELESS_OLD_REGULATORY=y
593# CONFIG_WIRELESS_EXT is not set
594# CONFIG_LIB80211 is not set 622# CONFIG_LIB80211 is not set
595 623
596# 624#
@@ -719,6 +747,10 @@ CONFIG_BLK_DEV=y
719# CONFIG_BLK_DEV_COW_COMMON is not set 747# CONFIG_BLK_DEV_COW_COMMON is not set
720CONFIG_BLK_DEV_LOOP=m 748CONFIG_BLK_DEV_LOOP=m
721CONFIG_BLK_DEV_CRYPTOLOOP=m 749CONFIG_BLK_DEV_CRYPTOLOOP=m
750
751#
752# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
753#
722CONFIG_BLK_DEV_NBD=m 754CONFIG_BLK_DEV_NBD=m
723# CONFIG_BLK_DEV_SX8 is not set 755# CONFIG_BLK_DEV_SX8 is not set
724# CONFIG_BLK_DEV_UB is not set 756# CONFIG_BLK_DEV_UB is not set
@@ -730,6 +762,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
730# CONFIG_ATA_OVER_ETH is not set 762# CONFIG_ATA_OVER_ETH is not set
731# CONFIG_BLK_DEV_HD is not set 763# CONFIG_BLK_DEV_HD is not set
732CONFIG_MISC_DEVICES=y 764CONFIG_MISC_DEVICES=y
765# CONFIG_AD525X_DPOT is not set
733# CONFIG_PHANTOM is not set 766# CONFIG_PHANTOM is not set
734# CONFIG_SGI_IOC4 is not set 767# CONFIG_SGI_IOC4 is not set
735# CONFIG_TIFM_CORE is not set 768# CONFIG_TIFM_CORE is not set
@@ -737,6 +770,7 @@ CONFIG_MISC_DEVICES=y
737# CONFIG_ENCLOSURE_SERVICES is not set 770# CONFIG_ENCLOSURE_SERVICES is not set
738# CONFIG_HP_ILO is not set 771# CONFIG_HP_ILO is not set
739# CONFIG_ISL29003 is not set 772# CONFIG_ISL29003 is not set
773CONFIG_DS1682=y
740# CONFIG_C2PORT is not set 774# CONFIG_C2PORT is not set
741 775
742# 776#
@@ -789,7 +823,9 @@ CONFIG_SCSI_LOWLEVEL=y
789# CONFIG_SCSI_BNX2_ISCSI is not set 823# CONFIG_SCSI_BNX2_ISCSI is not set
790# CONFIG_BE2ISCSI is not set 824# CONFIG_BE2ISCSI is not set
791# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 825# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
826# CONFIG_SCSI_HPSA is not set
792# CONFIG_SCSI_3W_9XXX is not set 827# CONFIG_SCSI_3W_9XXX is not set
828# CONFIG_SCSI_3W_SAS is not set
793# CONFIG_SCSI_ACARD is not set 829# CONFIG_SCSI_ACARD is not set
794# CONFIG_SCSI_AACRAID is not set 830# CONFIG_SCSI_AACRAID is not set
795# CONFIG_SCSI_AIC7XXX is not set 831# CONFIG_SCSI_AIC7XXX is not set
@@ -828,6 +864,7 @@ CONFIG_SCSI_LOWLEVEL=y
828# CONFIG_SCSI_NSP32 is not set 864# CONFIG_SCSI_NSP32 is not set
829# CONFIG_SCSI_DEBUG is not set 865# CONFIG_SCSI_DEBUG is not set
830# CONFIG_SCSI_PMCRAID is not set 866# CONFIG_SCSI_PMCRAID is not set
867# CONFIG_SCSI_PM8001 is not set
831# CONFIG_SCSI_SRP is not set 868# CONFIG_SCSI_SRP is not set
832# CONFIG_SCSI_BFA_FC is not set 869# CONFIG_SCSI_BFA_FC is not set
833# CONFIG_SCSI_DH is not set 870# CONFIG_SCSI_DH is not set
@@ -883,15 +920,16 @@ CONFIG_SATA_SIL=y
883# CONFIG_PATA_NS87415 is not set 920# CONFIG_PATA_NS87415 is not set
884# CONFIG_PATA_OPTI is not set 921# CONFIG_PATA_OPTI is not set
885# CONFIG_PATA_OPTIDMA is not set 922# CONFIG_PATA_OPTIDMA is not set
923# CONFIG_PATA_PDC2027X is not set
886# CONFIG_PATA_PDC_OLD is not set 924# CONFIG_PATA_PDC_OLD is not set
887# CONFIG_PATA_RADISYS is not set 925# CONFIG_PATA_RADISYS is not set
888# CONFIG_PATA_RDC is not set 926# CONFIG_PATA_RDC is not set
889# CONFIG_PATA_RZ1000 is not set 927# CONFIG_PATA_RZ1000 is not set
890# CONFIG_PATA_SC1200 is not set 928# CONFIG_PATA_SC1200 is not set
891# CONFIG_PATA_SERVERWORKS is not set 929# CONFIG_PATA_SERVERWORKS is not set
892# CONFIG_PATA_PDC2027X is not set
893# CONFIG_PATA_SIL680 is not set 930# CONFIG_PATA_SIL680 is not set
894# CONFIG_PATA_SIS is not set 931# CONFIG_PATA_SIS is not set
932# CONFIG_PATA_TOSHIBA is not set
895# CONFIG_PATA_VIA is not set 933# CONFIG_PATA_VIA is not set
896# CONFIG_PATA_WINBOND is not set 934# CONFIG_PATA_WINBOND is not set
897# CONFIG_PATA_PLATFORM is not set 935# CONFIG_PATA_PLATFORM is not set
@@ -908,7 +946,7 @@ CONFIG_SATA_SIL=y
908# 946#
909 947
910# 948#
911# See the help texts for more information. 949# The newer stack is recommended.
912# 950#
913# CONFIG_FIREWIRE is not set 951# CONFIG_FIREWIRE is not set
914# CONFIG_IEEE1394 is not set 952# CONFIG_IEEE1394 is not set
@@ -995,8 +1033,11 @@ CONFIG_GIANFAR=y
995# CONFIG_NETDEV_10000 is not set 1033# CONFIG_NETDEV_10000 is not set
996# CONFIG_TR is not set 1034# CONFIG_TR is not set
997CONFIG_WLAN=y 1035CONFIG_WLAN=y
998# CONFIG_WLAN_PRE80211 is not set 1036# CONFIG_AIRO is not set
999# CONFIG_WLAN_80211 is not set 1037# CONFIG_ATMEL is not set
1038# CONFIG_PRISM54 is not set
1039# CONFIG_USB_ZD1201 is not set
1040# CONFIG_HOSTAP is not set
1000 1041
1001# 1042#
1002# Enable WiMAX (Networking options) to see the WiMAX drivers 1043# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -1050,6 +1091,7 @@ CONFIG_NETCONSOLE=y
1050CONFIG_NETPOLL=y 1091CONFIG_NETPOLL=y
1051CONFIG_NETPOLL_TRAP=y 1092CONFIG_NETPOLL_TRAP=y
1052CONFIG_NET_POLL_CONTROLLER=y 1093CONFIG_NET_POLL_CONTROLLER=y
1094# CONFIG_VMXNET3 is not set
1053# CONFIG_ISDN is not set 1095# CONFIG_ISDN is not set
1054# CONFIG_PHONE is not set 1096# CONFIG_PHONE is not set
1055 1097
@@ -1059,6 +1101,7 @@ CONFIG_NET_POLL_CONTROLLER=y
1059CONFIG_INPUT=y 1101CONFIG_INPUT=y
1060CONFIG_INPUT_FF_MEMLESS=m 1102CONFIG_INPUT_FF_MEMLESS=m
1061# CONFIG_INPUT_POLLDEV is not set 1103# CONFIG_INPUT_POLLDEV is not set
1104# CONFIG_INPUT_SPARSEKMAP is not set
1062 1105
1063# 1106#
1064# Userland interfaces 1107# Userland interfaces
@@ -1117,6 +1160,7 @@ CONFIG_SERIAL_CORE=y
1117CONFIG_SERIAL_CORE_CONSOLE=y 1160CONFIG_SERIAL_CORE_CONSOLE=y
1118# CONFIG_SERIAL_JSM is not set 1161# CONFIG_SERIAL_JSM is not set
1119# CONFIG_SERIAL_OF_PLATFORM is not set 1162# CONFIG_SERIAL_OF_PLATFORM is not set
1163# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
1120CONFIG_UNIX98_PTYS=y 1164CONFIG_UNIX98_PTYS=y
1121# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1165# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
1122# CONFIG_LEGACY_PTYS is not set 1166# CONFIG_LEGACY_PTYS is not set
@@ -1174,11 +1218,6 @@ CONFIG_I2C_MPC=y
1174# CONFIG_I2C_TINY_USB is not set 1218# CONFIG_I2C_TINY_USB is not set
1175 1219
1176# 1220#
1177# Graphics adapter I2C/DDC channel drivers
1178#
1179# CONFIG_I2C_VOODOO3 is not set
1180
1181#
1182# Other I2C/SMBus bus drivers 1221# Other I2C/SMBus bus drivers
1183# 1222#
1184# CONFIG_I2C_PCA_PLATFORM is not set 1223# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1187,7 +1226,6 @@ CONFIG_I2C_MPC=y
1187# 1226#
1188# Miscellaneous I2C Chip support 1227# Miscellaneous I2C Chip support
1189# 1228#
1190CONFIG_DS1682=y
1191# CONFIG_SENSORS_TSL2550 is not set 1229# CONFIG_SENSORS_TSL2550 is not set
1192# CONFIG_I2C_DEBUG_CORE is not set 1230# CONFIG_I2C_DEBUG_CORE is not set
1193# CONFIG_I2C_DEBUG_ALGO is not set 1231# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1220,6 +1258,7 @@ CONFIG_GPIOLIB=y
1220# 1258#
1221# PCI GPIO expanders: 1259# PCI GPIO expanders:
1222# 1260#
1261# CONFIG_GPIO_CS5535 is not set
1223# CONFIG_GPIO_BT8XX is not set 1262# CONFIG_GPIO_BT8XX is not set
1224# CONFIG_GPIO_LANGWELL is not set 1263# CONFIG_GPIO_LANGWELL is not set
1225 1264
@@ -1262,6 +1301,7 @@ CONFIG_HWMON=y
1262# CONFIG_SENSORS_GL520SM is not set 1301# CONFIG_SENSORS_GL520SM is not set
1263# CONFIG_SENSORS_IT87 is not set 1302# CONFIG_SENSORS_IT87 is not set
1264# CONFIG_SENSORS_LM63 is not set 1303# CONFIG_SENSORS_LM63 is not set
1304# CONFIG_SENSORS_LM73 is not set
1265# CONFIG_SENSORS_LM75 is not set 1305# CONFIG_SENSORS_LM75 is not set
1266# CONFIG_SENSORS_LM77 is not set 1306# CONFIG_SENSORS_LM77 is not set
1267# CONFIG_SENSORS_LM78 is not set 1307# CONFIG_SENSORS_LM78 is not set
@@ -1301,6 +1341,7 @@ CONFIG_SENSORS_LM92=y
1301# CONFIG_SENSORS_W83L786NG is not set 1341# CONFIG_SENSORS_W83L786NG is not set
1302# CONFIG_SENSORS_W83627HF is not set 1342# CONFIG_SENSORS_W83627HF is not set
1303# CONFIG_SENSORS_W83627EHF is not set 1343# CONFIG_SENSORS_W83627EHF is not set
1344# CONFIG_SENSORS_LIS3_I2C is not set
1304# CONFIG_THERMAL is not set 1345# CONFIG_THERMAL is not set
1305CONFIG_WATCHDOG=y 1346CONFIG_WATCHDOG=y
1306# CONFIG_WATCHDOG_NOWAYOUT is not set 1347# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1340,11 +1381,13 @@ CONFIG_SSB_POSSIBLE=y
1340# CONFIG_TWL4030_CORE is not set 1381# CONFIG_TWL4030_CORE is not set
1341# CONFIG_MFD_TMIO is not set 1382# CONFIG_MFD_TMIO is not set
1342# CONFIG_PMIC_DA903X is not set 1383# CONFIG_PMIC_DA903X is not set
1384# CONFIG_PMIC_ADP5520 is not set
1343# CONFIG_MFD_WM8400 is not set 1385# CONFIG_MFD_WM8400 is not set
1344# CONFIG_MFD_WM831X is not set 1386# CONFIG_MFD_WM831X is not set
1345# CONFIG_MFD_WM8350_I2C is not set 1387# CONFIG_MFD_WM8350_I2C is not set
1346# CONFIG_MFD_PCF50633 is not set 1388# CONFIG_MFD_PCF50633 is not set
1347# CONFIG_AB3100_CORE is not set 1389# CONFIG_AB3100_CORE is not set
1390# CONFIG_MFD_88PM8607 is not set
1348# CONFIG_REGULATOR is not set 1391# CONFIG_REGULATOR is not set
1349# CONFIG_MEDIA_SUPPORT is not set 1392# CONFIG_MEDIA_SUPPORT is not set
1350 1393
@@ -1443,6 +1486,7 @@ CONFIG_USB=y
1443CONFIG_USB_EHCI_HCD=y 1486CONFIG_USB_EHCI_HCD=y
1444# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1487# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1445# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1488# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1489# CONFIG_XPS_USB_HCD_XILINX is not set
1446# CONFIG_USB_EHCI_FSL is not set 1490# CONFIG_USB_EHCI_FSL is not set
1447# CONFIG_USB_EHCI_HCD_PPC_OF is not set 1491# CONFIG_USB_EHCI_HCD_PPC_OF is not set
1448# CONFIG_USB_OXU210HP_HCD is not set 1492# CONFIG_USB_OXU210HP_HCD is not set
@@ -1570,6 +1614,7 @@ CONFIG_RTC_INTF_DEV=y
1570# CONFIG_RTC_DRV_PCF8563 is not set 1614# CONFIG_RTC_DRV_PCF8563 is not set
1571# CONFIG_RTC_DRV_PCF8583 is not set 1615# CONFIG_RTC_DRV_PCF8583 is not set
1572# CONFIG_RTC_DRV_M41T80 is not set 1616# CONFIG_RTC_DRV_M41T80 is not set
1617# CONFIG_RTC_DRV_BQ32K is not set
1573# CONFIG_RTC_DRV_S35390A is not set 1618# CONFIG_RTC_DRV_S35390A is not set
1574# CONFIG_RTC_DRV_FM3130 is not set 1619# CONFIG_RTC_DRV_FM3130 is not set
1575CONFIG_RTC_DRV_RX8581=y 1620CONFIG_RTC_DRV_RX8581=y
@@ -1591,7 +1636,9 @@ CONFIG_RTC_DRV_RX8581=y
1591# CONFIG_RTC_DRV_M48T86 is not set 1636# CONFIG_RTC_DRV_M48T86 is not set
1592# CONFIG_RTC_DRV_M48T35 is not set 1637# CONFIG_RTC_DRV_M48T35 is not set
1593# CONFIG_RTC_DRV_M48T59 is not set 1638# CONFIG_RTC_DRV_M48T59 is not set
1639# CONFIG_RTC_DRV_MSM6242 is not set
1594# CONFIG_RTC_DRV_BQ4802 is not set 1640# CONFIG_RTC_DRV_BQ4802 is not set
1641# CONFIG_RTC_DRV_RP5C01 is not set
1595# CONFIG_RTC_DRV_V3020 is not set 1642# CONFIG_RTC_DRV_V3020 is not set
1596 1643
1597# 1644#
@@ -1891,9 +1938,12 @@ CONFIG_SECURITY=y
1891CONFIG_SECURITY_NETWORK=y 1938CONFIG_SECURITY_NETWORK=y
1892# CONFIG_SECURITY_NETWORK_XFRM is not set 1939# CONFIG_SECURITY_NETWORK_XFRM is not set
1893# CONFIG_SECURITY_PATH is not set 1940# CONFIG_SECURITY_PATH is not set
1894# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1895# CONFIG_SECURITY_ROOTPLUG is not set
1896# CONFIG_SECURITY_TOMOYO is not set 1941# CONFIG_SECURITY_TOMOYO is not set
1942# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1943# CONFIG_DEFAULT_SECURITY_SMACK is not set
1944# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1945CONFIG_DEFAULT_SECURITY_DAC=y
1946CONFIG_DEFAULT_SECURITY=""
1897CONFIG_CRYPTO=y 1947CONFIG_CRYPTO=y
1898 1948
1899# 1949#
diff --git a/arch/powerpc/configs/86xx/mpc8610_hpcd_defconfig b/arch/powerpc/configs/86xx/mpc8610_hpcd_defconfig
index de4d52504fe4..aab3baebab8c 100644
--- a/arch/powerpc/configs/86xx/mpc8610_hpcd_defconfig
+++ b/arch/powerpc/configs/86xx/mpc8610_hpcd_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:45 2009 4# Wed Jan 6 09:24:39 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,8 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
64CONFIG_ARCH_SUSPEND_POSSIBLE=y
62# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
63# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
64CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -86,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
86# 89#
87CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
88# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -176,14 +180,41 @@ CONFIG_LBDAF=y
176# IO Schedulers 180# IO Schedulers
177# 181#
178CONFIG_IOSCHED_NOOP=y 182CONFIG_IOSCHED_NOOP=y
179# CONFIG_IOSCHED_AS is not set
180CONFIG_IOSCHED_DEADLINE=y 183CONFIG_IOSCHED_DEADLINE=y
181# CONFIG_IOSCHED_CFQ is not set 184# CONFIG_IOSCHED_CFQ is not set
182# CONFIG_DEFAULT_AS is not set
183CONFIG_DEFAULT_DEADLINE=y 185CONFIG_DEFAULT_DEADLINE=y
184# CONFIG_DEFAULT_CFQ is not set 186# CONFIG_DEFAULT_CFQ is not set
185# CONFIG_DEFAULT_NOOP is not set 187# CONFIG_DEFAULT_NOOP is not set
186CONFIG_DEFAULT_IOSCHED="deadline" 188CONFIG_DEFAULT_IOSCHED="deadline"
189# CONFIG_INLINE_SPIN_TRYLOCK is not set
190# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
191# CONFIG_INLINE_SPIN_LOCK is not set
192# CONFIG_INLINE_SPIN_LOCK_BH is not set
193# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
194# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
195CONFIG_INLINE_SPIN_UNLOCK=y
196# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
197CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
198# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
199# CONFIG_INLINE_READ_TRYLOCK is not set
200# CONFIG_INLINE_READ_LOCK is not set
201# CONFIG_INLINE_READ_LOCK_BH is not set
202# CONFIG_INLINE_READ_LOCK_IRQ is not set
203# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
204CONFIG_INLINE_READ_UNLOCK=y
205# CONFIG_INLINE_READ_UNLOCK_BH is not set
206CONFIG_INLINE_READ_UNLOCK_IRQ=y
207# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
208# CONFIG_INLINE_WRITE_TRYLOCK is not set
209# CONFIG_INLINE_WRITE_LOCK is not set
210# CONFIG_INLINE_WRITE_LOCK_BH is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
212# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
213CONFIG_INLINE_WRITE_UNLOCK=y
214# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
215CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
216# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
217# CONFIG_MUTEX_SPIN_ON_OWNER is not set
187# CONFIG_FREEZER is not set 218# CONFIG_FREEZER is not set
188 219
189# 220#
@@ -254,6 +285,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
254CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 285CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
255# CONFIG_KEXEC is not set 286# CONFIG_KEXEC is not set
256# CONFIG_CRASH_DUMP is not set 287# CONFIG_CRASH_DUMP is not set
288CONFIG_SPARSE_IRQ=y
257CONFIG_MAX_ACTIVE_REGIONS=32 289CONFIG_MAX_ACTIVE_REGIONS=32
258CONFIG_ARCH_FLATMEM_ENABLE=y 290CONFIG_ARCH_FLATMEM_ENABLE=y
259CONFIG_ARCH_POPULATES_NODE_MAP=y 291CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -270,8 +302,6 @@ CONFIG_MIGRATION=y
270CONFIG_ZONE_DMA_FLAG=1 302CONFIG_ZONE_DMA_FLAG=1
271CONFIG_BOUNCE=y 303CONFIG_BOUNCE=y
272CONFIG_VIRT_TO_BUS=y 304CONFIG_VIRT_TO_BUS=y
273CONFIG_HAVE_MLOCK=y
274CONFIG_HAVE_MLOCKED_PAGE_BIT=y
275# CONFIG_KSM is not set 305# CONFIG_KSM is not set
276CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 306CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
277CONFIG_PPC_4K_PAGES=y 307CONFIG_PPC_4K_PAGES=y
@@ -382,6 +412,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=y
382CONFIG_INET6_XFRM_MODE_BEET=y 412CONFIG_INET6_XFRM_MODE_BEET=y
383# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 413# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
384CONFIG_IPV6_SIT=y 414CONFIG_IPV6_SIT=y
415# CONFIG_IPV6_SIT_6RD is not set
385CONFIG_IPV6_NDISC_NODETYPE=y 416CONFIG_IPV6_NDISC_NODETYPE=y
386# CONFIG_IPV6_TUNNEL is not set 417# CONFIG_IPV6_TUNNEL is not set
387# CONFIG_IPV6_MULTIPLE_TABLES is not set 418# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -420,9 +451,6 @@ CONFIG_IPV6_NDISC_NODETYPE=y
420# CONFIG_AF_RXRPC is not set 451# CONFIG_AF_RXRPC is not set
421CONFIG_WIRELESS=y 452CONFIG_WIRELESS=y
422# CONFIG_CFG80211 is not set 453# CONFIG_CFG80211 is not set
423CONFIG_CFG80211_DEFAULT_PS_VALUE=0
424CONFIG_WIRELESS_OLD_REGULATORY=y
425# CONFIG_WIRELESS_EXT is not set
426# CONFIG_LIB80211 is not set 454# CONFIG_LIB80211 is not set
427 455
428# 456#
@@ -555,6 +583,10 @@ CONFIG_BLK_DEV=y
555# CONFIG_BLK_DEV_COW_COMMON is not set 583# CONFIG_BLK_DEV_COW_COMMON is not set
556CONFIG_BLK_DEV_LOOP=y 584CONFIG_BLK_DEV_LOOP=y
557# CONFIG_BLK_DEV_CRYPTOLOOP is not set 585# CONFIG_BLK_DEV_CRYPTOLOOP is not set
586
587#
588# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
589#
558# CONFIG_BLK_DEV_NBD is not set 590# CONFIG_BLK_DEV_NBD is not set
559# CONFIG_BLK_DEV_SX8 is not set 591# CONFIG_BLK_DEV_SX8 is not set
560CONFIG_BLK_DEV_RAM=y 592CONFIG_BLK_DEV_RAM=y
@@ -565,6 +597,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
565# CONFIG_ATA_OVER_ETH is not set 597# CONFIG_ATA_OVER_ETH is not set
566# CONFIG_BLK_DEV_HD is not set 598# CONFIG_BLK_DEV_HD is not set
567CONFIG_MISC_DEVICES=y 599CONFIG_MISC_DEVICES=y
600# CONFIG_AD525X_DPOT is not set
568# CONFIG_PHANTOM is not set 601# CONFIG_PHANTOM is not set
569# CONFIG_SGI_IOC4 is not set 602# CONFIG_SGI_IOC4 is not set
570# CONFIG_TIFM_CORE is not set 603# CONFIG_TIFM_CORE is not set
@@ -572,6 +605,7 @@ CONFIG_MISC_DEVICES=y
572# CONFIG_ENCLOSURE_SERVICES is not set 605# CONFIG_ENCLOSURE_SERVICES is not set
573# CONFIG_HP_ILO is not set 606# CONFIG_HP_ILO is not set
574# CONFIG_ISL29003 is not set 607# CONFIG_ISL29003 is not set
608# CONFIG_DS1682 is not set
575# CONFIG_C2PORT is not set 609# CONFIG_C2PORT is not set
576 610
577# 611#
@@ -671,7 +705,9 @@ CONFIG_SCSI_LOWLEVEL=y
671# CONFIG_SCSI_BNX2_ISCSI is not set 705# CONFIG_SCSI_BNX2_ISCSI is not set
672# CONFIG_BE2ISCSI is not set 706# CONFIG_BE2ISCSI is not set
673# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 707# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
708# CONFIG_SCSI_HPSA is not set
674# CONFIG_SCSI_3W_9XXX is not set 709# CONFIG_SCSI_3W_9XXX is not set
710# CONFIG_SCSI_3W_SAS is not set
675# CONFIG_SCSI_ACARD is not set 711# CONFIG_SCSI_ACARD is not set
676# CONFIG_SCSI_AACRAID is not set 712# CONFIG_SCSI_AACRAID is not set
677# CONFIG_SCSI_AIC7XXX is not set 713# CONFIG_SCSI_AIC7XXX is not set
@@ -710,6 +746,7 @@ CONFIG_SCSI_LOWLEVEL=y
710# CONFIG_SCSI_NSP32 is not set 746# CONFIG_SCSI_NSP32 is not set
711# CONFIG_SCSI_DEBUG is not set 747# CONFIG_SCSI_DEBUG is not set
712# CONFIG_SCSI_PMCRAID is not set 748# CONFIG_SCSI_PMCRAID is not set
749# CONFIG_SCSI_PM8001 is not set
713# CONFIG_SCSI_SRP is not set 750# CONFIG_SCSI_SRP is not set
714# CONFIG_SCSI_BFA_FC is not set 751# CONFIG_SCSI_BFA_FC is not set
715# CONFIG_SCSI_DH is not set 752# CONFIG_SCSI_DH is not set
@@ -765,15 +802,16 @@ CONFIG_PATA_ALI=y
765# CONFIG_PATA_NS87415 is not set 802# CONFIG_PATA_NS87415 is not set
766# CONFIG_PATA_OPTI is not set 803# CONFIG_PATA_OPTI is not set
767# CONFIG_PATA_OPTIDMA is not set 804# CONFIG_PATA_OPTIDMA is not set
805# CONFIG_PATA_PDC2027X is not set
768# CONFIG_PATA_PDC_OLD is not set 806# CONFIG_PATA_PDC_OLD is not set
769# CONFIG_PATA_RADISYS is not set 807# CONFIG_PATA_RADISYS is not set
770# CONFIG_PATA_RDC is not set 808# CONFIG_PATA_RDC is not set
771# CONFIG_PATA_RZ1000 is not set 809# CONFIG_PATA_RZ1000 is not set
772# CONFIG_PATA_SC1200 is not set 810# CONFIG_PATA_SC1200 is not set
773# CONFIG_PATA_SERVERWORKS is not set 811# CONFIG_PATA_SERVERWORKS is not set
774# CONFIG_PATA_PDC2027X is not set
775# CONFIG_PATA_SIL680 is not set 812# CONFIG_PATA_SIL680 is not set
776# CONFIG_PATA_SIS is not set 813# CONFIG_PATA_SIS is not set
814# CONFIG_PATA_TOSHIBA is not set
777# CONFIG_PATA_VIA is not set 815# CONFIG_PATA_VIA is not set
778# CONFIG_PATA_WINBOND is not set 816# CONFIG_PATA_WINBOND is not set
779# CONFIG_PATA_PLATFORM is not set 817# CONFIG_PATA_PLATFORM is not set
@@ -790,7 +828,7 @@ CONFIG_PATA_ALI=y
790# 828#
791 829
792# 830#
793# See the help texts for more information. 831# The newer stack is recommended.
794# 832#
795# CONFIG_FIREWIRE is not set 833# CONFIG_FIREWIRE is not set
796# CONFIG_IEEE1394 is not set 834# CONFIG_IEEE1394 is not set
@@ -838,8 +876,10 @@ CONFIG_ULI526X=y
838# CONFIG_NETDEV_10000 is not set 876# CONFIG_NETDEV_10000 is not set
839# CONFIG_TR is not set 877# CONFIG_TR is not set
840CONFIG_WLAN=y 878CONFIG_WLAN=y
841# CONFIG_WLAN_PRE80211 is not set 879# CONFIG_AIRO is not set
842# CONFIG_WLAN_80211 is not set 880# CONFIG_ATMEL is not set
881# CONFIG_PRISM54 is not set
882# CONFIG_HOSTAP is not set
843 883
844# 884#
845# Enable WiMAX (Networking options) to see the WiMAX drivers 885# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -853,6 +893,7 @@ CONFIG_WLAN=y
853# CONFIG_NETCONSOLE is not set 893# CONFIG_NETCONSOLE is not set
854# CONFIG_NETPOLL is not set 894# CONFIG_NETPOLL is not set
855# CONFIG_NET_POLL_CONTROLLER is not set 895# CONFIG_NET_POLL_CONTROLLER is not set
896# CONFIG_VMXNET3 is not set
856# CONFIG_ISDN is not set 897# CONFIG_ISDN is not set
857# CONFIG_PHONE is not set 898# CONFIG_PHONE is not set
858 899
@@ -862,6 +903,7 @@ CONFIG_WLAN=y
862CONFIG_INPUT=y 903CONFIG_INPUT=y
863# CONFIG_INPUT_FF_MEMLESS is not set 904# CONFIG_INPUT_FF_MEMLESS is not set
864# CONFIG_INPUT_POLLDEV is not set 905# CONFIG_INPUT_POLLDEV is not set
906# CONFIG_INPUT_SPARSEKMAP is not set
865 907
866# 908#
867# Userland interfaces 909# Userland interfaces
@@ -891,6 +933,7 @@ CONFIG_SERIO_SERPORT=y
891CONFIG_SERIO_LIBPS2=y 933CONFIG_SERIO_LIBPS2=y
892# CONFIG_SERIO_RAW is not set 934# CONFIG_SERIO_RAW is not set
893# CONFIG_SERIO_XILINX_XPS_PS2 is not set 935# CONFIG_SERIO_XILINX_XPS_PS2 is not set
936# CONFIG_SERIO_ALTERA_PS2 is not set
894# CONFIG_GAMEPORT is not set 937# CONFIG_GAMEPORT is not set
895 938
896# 939#
@@ -927,6 +970,7 @@ CONFIG_SERIAL_CORE=y
927CONFIG_SERIAL_CORE_CONSOLE=y 970CONFIG_SERIAL_CORE_CONSOLE=y
928# CONFIG_SERIAL_JSM is not set 971# CONFIG_SERIAL_JSM is not set
929# CONFIG_SERIAL_OF_PLATFORM is not set 972# CONFIG_SERIAL_OF_PLATFORM is not set
973# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
930CONFIG_UNIX98_PTYS=y 974CONFIG_UNIX98_PTYS=y
931# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 975# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
932# CONFIG_LEGACY_PTYS is not set 976# CONFIG_LEGACY_PTYS is not set
@@ -981,11 +1025,6 @@ CONFIG_I2C_MPC=y
981# CONFIG_I2C_TAOS_EVM is not set 1025# CONFIG_I2C_TAOS_EVM is not set
982 1026
983# 1027#
984# Graphics adapter I2C/DDC channel drivers
985#
986# CONFIG_I2C_VOODOO3 is not set
987
988#
989# Other I2C/SMBus bus drivers 1028# Other I2C/SMBus bus drivers
990# 1029#
991# CONFIG_I2C_PCA_PLATFORM is not set 1030# CONFIG_I2C_PCA_PLATFORM is not set
@@ -994,7 +1033,6 @@ CONFIG_I2C_MPC=y
994# 1033#
995# Miscellaneous I2C Chip support 1034# Miscellaneous I2C Chip support
996# 1035#
997# CONFIG_DS1682 is not set
998# CONFIG_SENSORS_TSL2550 is not set 1036# CONFIG_SENSORS_TSL2550 is not set
999# CONFIG_I2C_DEBUG_CORE is not set 1037# CONFIG_I2C_DEBUG_CORE is not set
1000# CONFIG_I2C_DEBUG_ALGO is not set 1038# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1029,11 +1067,13 @@ CONFIG_SSB_POSSIBLE=y
1029# CONFIG_TWL4030_CORE is not set 1067# CONFIG_TWL4030_CORE is not set
1030# CONFIG_MFD_TMIO is not set 1068# CONFIG_MFD_TMIO is not set
1031# CONFIG_PMIC_DA903X is not set 1069# CONFIG_PMIC_DA903X is not set
1070# CONFIG_PMIC_ADP5520 is not set
1032# CONFIG_MFD_WM8400 is not set 1071# CONFIG_MFD_WM8400 is not set
1033# CONFIG_MFD_WM831X is not set 1072# CONFIG_MFD_WM831X is not set
1034# CONFIG_MFD_WM8350_I2C is not set 1073# CONFIG_MFD_WM8350_I2C is not set
1035# CONFIG_MFD_PCF50633 is not set 1074# CONFIG_MFD_PCF50633 is not set
1036# CONFIG_AB3100_CORE is not set 1075# CONFIG_AB3100_CORE is not set
1076# CONFIG_MFD_88PM8607 is not set
1037# CONFIG_REGULATOR is not set 1077# CONFIG_REGULATOR is not set
1038# CONFIG_MEDIA_SUPPORT is not set 1078# CONFIG_MEDIA_SUPPORT is not set
1039 1079
@@ -1163,6 +1203,7 @@ CONFIG_SND_PCI=y
1163# CONFIG_SND_CS4281 is not set 1203# CONFIG_SND_CS4281 is not set
1164# CONFIG_SND_CS46XX is not set 1204# CONFIG_SND_CS46XX is not set
1165# CONFIG_SND_CS5530 is not set 1205# CONFIG_SND_CS5530 is not set
1206# CONFIG_SND_CS5535AUDIO is not set
1166# CONFIG_SND_CTXFI is not set 1207# CONFIG_SND_CTXFI is not set
1167# CONFIG_SND_DARLA20 is not set 1208# CONFIG_SND_DARLA20 is not set
1168# CONFIG_SND_GINA20 is not set 1209# CONFIG_SND_GINA20 is not set
@@ -1282,6 +1323,7 @@ CONFIG_RTC_INTF_DEV=y
1282# CONFIG_RTC_DRV_PCF8563 is not set 1323# CONFIG_RTC_DRV_PCF8563 is not set
1283# CONFIG_RTC_DRV_PCF8583 is not set 1324# CONFIG_RTC_DRV_PCF8583 is not set
1284# CONFIG_RTC_DRV_M41T80 is not set 1325# CONFIG_RTC_DRV_M41T80 is not set
1326# CONFIG_RTC_DRV_BQ32K is not set
1285# CONFIG_RTC_DRV_S35390A is not set 1327# CONFIG_RTC_DRV_S35390A is not set
1286# CONFIG_RTC_DRV_FM3130 is not set 1328# CONFIG_RTC_DRV_FM3130 is not set
1287# CONFIG_RTC_DRV_RX8581 is not set 1329# CONFIG_RTC_DRV_RX8581 is not set
@@ -1303,7 +1345,9 @@ CONFIG_RTC_DRV_CMOS=y
1303# CONFIG_RTC_DRV_M48T86 is not set 1345# CONFIG_RTC_DRV_M48T86 is not set
1304# CONFIG_RTC_DRV_M48T35 is not set 1346# CONFIG_RTC_DRV_M48T35 is not set
1305# CONFIG_RTC_DRV_M48T59 is not set 1347# CONFIG_RTC_DRV_M48T59 is not set
1348# CONFIG_RTC_DRV_MSM6242 is not set
1306# CONFIG_RTC_DRV_BQ4802 is not set 1349# CONFIG_RTC_DRV_BQ4802 is not set
1350# CONFIG_RTC_DRV_RP5C01 is not set
1307# CONFIG_RTC_DRV_V3020 is not set 1351# CONFIG_RTC_DRV_V3020 is not set
1308 1352
1309# 1353#
@@ -1606,7 +1650,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1606# CONFIG_KEYS is not set 1650# CONFIG_KEYS is not set
1607# CONFIG_SECURITY is not set 1651# CONFIG_SECURITY is not set
1608# CONFIG_SECURITYFS is not set 1652# CONFIG_SECURITYFS is not set
1609# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1653# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1654# CONFIG_DEFAULT_SECURITY_SMACK is not set
1655# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1656CONFIG_DEFAULT_SECURITY_DAC=y
1657CONFIG_DEFAULT_SECURITY=""
1610CONFIG_CRYPTO=y 1658CONFIG_CRYPTO=y
1611 1659
1612# 1660#
diff --git a/arch/powerpc/configs/86xx/mpc8641_hpcn_defconfig b/arch/powerpc/configs/86xx/mpc8641_hpcn_defconfig
index 754a79ba74a9..727a8c8d15b5 100644
--- a/arch/powerpc/configs/86xx/mpc8641_hpcn_defconfig
+++ b/arch/powerpc/configs/86xx/mpc8641_hpcn_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:46 2009 4# Wed Jan 6 09:24:40 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -38,6 +38,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
40CONFIG_IRQ_PER_CPU=y 40CONFIG_IRQ_PER_CPU=y
41CONFIG_NR_IRQS=512
41CONFIG_STACKTRACE_SUPPORT=y 42CONFIG_STACKTRACE_SUPPORT=y
42CONFIG_HAVE_LATENCYTOP_SUPPORT=y 43CONFIG_HAVE_LATENCYTOP_SUPPORT=y
43CONFIG_TRACE_IRQFLAGS_SUPPORT=y 44CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -60,6 +61,8 @@ CONFIG_AUDIT_ARCH=y
60CONFIG_GENERIC_BUG=y 61CONFIG_GENERIC_BUG=y
61CONFIG_DTC=y 62CONFIG_DTC=y
62CONFIG_DEFAULT_UIMAGE=y 63CONFIG_DEFAULT_UIMAGE=y
64CONFIG_ARCH_HIBERNATION_POSSIBLE=y
65CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 66# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 67# CONFIG_PPC_DCR_MMIO is not set
65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 68CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -90,6 +93,7 @@ CONFIG_AUDIT=y
90# 93#
91CONFIG_TREE_RCU=y 94CONFIG_TREE_RCU=y
92# CONFIG_TREE_PREEMPT_RCU is not set 95# CONFIG_TREE_PREEMPT_RCU is not set
96# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set 97# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32 98CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set 99# CONFIG_RCU_FANOUT_EXACT is not set
@@ -182,14 +186,41 @@ CONFIG_LBDAF=y
182# IO Schedulers 186# IO Schedulers
183# 187#
184CONFIG_IOSCHED_NOOP=y 188CONFIG_IOSCHED_NOOP=y
185CONFIG_IOSCHED_AS=y
186CONFIG_IOSCHED_DEADLINE=y 189CONFIG_IOSCHED_DEADLINE=y
187CONFIG_IOSCHED_CFQ=y 190CONFIG_IOSCHED_CFQ=y
188# CONFIG_DEFAULT_AS is not set
189# CONFIG_DEFAULT_DEADLINE is not set 191# CONFIG_DEFAULT_DEADLINE is not set
190CONFIG_DEFAULT_CFQ=y 192CONFIG_DEFAULT_CFQ=y
191# CONFIG_DEFAULT_NOOP is not set 193# CONFIG_DEFAULT_NOOP is not set
192CONFIG_DEFAULT_IOSCHED="cfq" 194CONFIG_DEFAULT_IOSCHED="cfq"
195# CONFIG_INLINE_SPIN_TRYLOCK is not set
196# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
197# CONFIG_INLINE_SPIN_LOCK is not set
198# CONFIG_INLINE_SPIN_LOCK_BH is not set
199# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
200# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
201CONFIG_INLINE_SPIN_UNLOCK=y
202# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
203CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
204# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
205# CONFIG_INLINE_READ_TRYLOCK is not set
206# CONFIG_INLINE_READ_LOCK is not set
207# CONFIG_INLINE_READ_LOCK_BH is not set
208# CONFIG_INLINE_READ_LOCK_IRQ is not set
209# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
210CONFIG_INLINE_READ_UNLOCK=y
211# CONFIG_INLINE_READ_UNLOCK_BH is not set
212CONFIG_INLINE_READ_UNLOCK_IRQ=y
213# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
214# CONFIG_INLINE_WRITE_TRYLOCK is not set
215# CONFIG_INLINE_WRITE_LOCK is not set
216# CONFIG_INLINE_WRITE_LOCK_BH is not set
217# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
218# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
219CONFIG_INLINE_WRITE_UNLOCK=y
220# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
221CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
222# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
223CONFIG_MUTEX_SPIN_ON_OWNER=y
193# CONFIG_FREEZER is not set 224# CONFIG_FREEZER is not set
194 225
195# 226#
@@ -260,6 +291,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 291# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 292# CONFIG_CRASH_DUMP is not set
262# CONFIG_IRQ_ALL_CPUS is not set 293# CONFIG_IRQ_ALL_CPUS is not set
294CONFIG_SPARSE_IRQ=y
263CONFIG_MAX_ACTIVE_REGIONS=32 295CONFIG_MAX_ACTIVE_REGIONS=32
264CONFIG_ARCH_FLATMEM_ENABLE=y 296CONFIG_ARCH_FLATMEM_ENABLE=y
265CONFIG_ARCH_POPULATES_NODE_MAP=y 297CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -276,8 +308,6 @@ CONFIG_MIGRATION=y
276CONFIG_ZONE_DMA_FLAG=1 308CONFIG_ZONE_DMA_FLAG=1
277CONFIG_BOUNCE=y 309CONFIG_BOUNCE=y
278CONFIG_VIRT_TO_BUS=y 310CONFIG_VIRT_TO_BUS=y
279CONFIG_HAVE_MLOCK=y
280CONFIG_HAVE_MLOCKED_PAGE_BIT=y
281# CONFIG_KSM is not set 311# CONFIG_KSM is not set
282CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 312CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
283CONFIG_PPC_4K_PAGES=y 313CONFIG_PPC_4K_PAGES=y
@@ -395,6 +425,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=y
395CONFIG_INET6_XFRM_MODE_BEET=y 425CONFIG_INET6_XFRM_MODE_BEET=y
396# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 426# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
397CONFIG_IPV6_SIT=y 427CONFIG_IPV6_SIT=y
428# CONFIG_IPV6_SIT_6RD is not set
398CONFIG_IPV6_NDISC_NODETYPE=y 429CONFIG_IPV6_NDISC_NODETYPE=y
399# CONFIG_IPV6_TUNNEL is not set 430# CONFIG_IPV6_TUNNEL is not set
400# CONFIG_IPV6_MULTIPLE_TABLES is not set 431# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -439,9 +470,6 @@ CONFIG_SCTP_HMAC_MD5=y
439CONFIG_FIB_RULES=y 470CONFIG_FIB_RULES=y
440CONFIG_WIRELESS=y 471CONFIG_WIRELESS=y
441# CONFIG_CFG80211 is not set 472# CONFIG_CFG80211 is not set
442CONFIG_CFG80211_DEFAULT_PS_VALUE=0
443CONFIG_WIRELESS_OLD_REGULATORY=y
444# CONFIG_WIRELESS_EXT is not set
445# CONFIG_LIB80211 is not set 473# CONFIG_LIB80211 is not set
446 474
447# 475#
@@ -483,6 +511,10 @@ CONFIG_BLK_DEV=y
483# CONFIG_BLK_DEV_COW_COMMON is not set 511# CONFIG_BLK_DEV_COW_COMMON is not set
484CONFIG_BLK_DEV_LOOP=y 512CONFIG_BLK_DEV_LOOP=y
485# CONFIG_BLK_DEV_CRYPTOLOOP is not set 513# CONFIG_BLK_DEV_CRYPTOLOOP is not set
514
515#
516# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
517#
486CONFIG_BLK_DEV_NBD=y 518CONFIG_BLK_DEV_NBD=y
487# CONFIG_BLK_DEV_SX8 is not set 519# CONFIG_BLK_DEV_SX8 is not set
488# CONFIG_BLK_DEV_UB is not set 520# CONFIG_BLK_DEV_UB is not set
@@ -494,6 +526,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
494# CONFIG_ATA_OVER_ETH is not set 526# CONFIG_ATA_OVER_ETH is not set
495# CONFIG_BLK_DEV_HD is not set 527# CONFIG_BLK_DEV_HD is not set
496CONFIG_MISC_DEVICES=y 528CONFIG_MISC_DEVICES=y
529# CONFIG_AD525X_DPOT is not set
497# CONFIG_PHANTOM is not set 530# CONFIG_PHANTOM is not set
498# CONFIG_SGI_IOC4 is not set 531# CONFIG_SGI_IOC4 is not set
499# CONFIG_TIFM_CORE is not set 532# CONFIG_TIFM_CORE is not set
@@ -501,6 +534,7 @@ CONFIG_MISC_DEVICES=y
501# CONFIG_ENCLOSURE_SERVICES is not set 534# CONFIG_ENCLOSURE_SERVICES is not set
502# CONFIG_HP_ILO is not set 535# CONFIG_HP_ILO is not set
503# CONFIG_ISL29003 is not set 536# CONFIG_ISL29003 is not set
537# CONFIG_DS1682 is not set
504# CONFIG_C2PORT is not set 538# CONFIG_C2PORT is not set
505 539
506# 540#
@@ -554,7 +588,9 @@ CONFIG_SCSI_LOWLEVEL=y
554# CONFIG_SCSI_BNX2_ISCSI is not set 588# CONFIG_SCSI_BNX2_ISCSI is not set
555# CONFIG_BE2ISCSI is not set 589# CONFIG_BE2ISCSI is not set
556# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 590# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
591# CONFIG_SCSI_HPSA is not set
557# CONFIG_SCSI_3W_9XXX is not set 592# CONFIG_SCSI_3W_9XXX is not set
593# CONFIG_SCSI_3W_SAS is not set
558# CONFIG_SCSI_ACARD is not set 594# CONFIG_SCSI_ACARD is not set
559# CONFIG_SCSI_AACRAID is not set 595# CONFIG_SCSI_AACRAID is not set
560# CONFIG_SCSI_AIC7XXX is not set 596# CONFIG_SCSI_AIC7XXX is not set
@@ -593,6 +629,7 @@ CONFIG_SCSI_LOWLEVEL=y
593# CONFIG_SCSI_NSP32 is not set 629# CONFIG_SCSI_NSP32 is not set
594# CONFIG_SCSI_DEBUG is not set 630# CONFIG_SCSI_DEBUG is not set
595# CONFIG_SCSI_PMCRAID is not set 631# CONFIG_SCSI_PMCRAID is not set
632# CONFIG_SCSI_PM8001 is not set
596# CONFIG_SCSI_SRP is not set 633# CONFIG_SCSI_SRP is not set
597# CONFIG_SCSI_BFA_FC is not set 634# CONFIG_SCSI_BFA_FC is not set
598# CONFIG_SCSI_DH is not set 635# CONFIG_SCSI_DH is not set
@@ -648,15 +685,16 @@ CONFIG_PATA_ALI=y
648# CONFIG_PATA_NS87415 is not set 685# CONFIG_PATA_NS87415 is not set
649# CONFIG_PATA_OPTI is not set 686# CONFIG_PATA_OPTI is not set
650# CONFIG_PATA_OPTIDMA is not set 687# CONFIG_PATA_OPTIDMA is not set
688# CONFIG_PATA_PDC2027X is not set
651# CONFIG_PATA_PDC_OLD is not set 689# CONFIG_PATA_PDC_OLD is not set
652# CONFIG_PATA_RADISYS is not set 690# CONFIG_PATA_RADISYS is not set
653# CONFIG_PATA_RDC is not set 691# CONFIG_PATA_RDC is not set
654# CONFIG_PATA_RZ1000 is not set 692# CONFIG_PATA_RZ1000 is not set
655# CONFIG_PATA_SC1200 is not set 693# CONFIG_PATA_SC1200 is not set
656# CONFIG_PATA_SERVERWORKS is not set 694# CONFIG_PATA_SERVERWORKS is not set
657# CONFIG_PATA_PDC2027X is not set
658# CONFIG_PATA_SIL680 is not set 695# CONFIG_PATA_SIL680 is not set
659# CONFIG_PATA_SIS is not set 696# CONFIG_PATA_SIS is not set
697# CONFIG_PATA_TOSHIBA is not set
660# CONFIG_PATA_VIA is not set 698# CONFIG_PATA_VIA is not set
661# CONFIG_PATA_WINBOND is not set 699# CONFIG_PATA_WINBOND is not set
662# CONFIG_PATA_PLATFORM is not set 700# CONFIG_PATA_PLATFORM is not set
@@ -673,7 +711,7 @@ CONFIG_PATA_ALI=y
673# 711#
674 712
675# 713#
676# See the help texts for more information. 714# The newer stack is recommended.
677# 715#
678# CONFIG_FIREWIRE is not set 716# CONFIG_FIREWIRE is not set
679# CONFIG_IEEE1394 is not set 717# CONFIG_IEEE1394 is not set
@@ -778,8 +816,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
778# CONFIG_BE2NET is not set 816# CONFIG_BE2NET is not set
779# CONFIG_TR is not set 817# CONFIG_TR is not set
780CONFIG_WLAN=y 818CONFIG_WLAN=y
781# CONFIG_WLAN_PRE80211 is not set 819# CONFIG_AIRO is not set
782# CONFIG_WLAN_80211 is not set 820# CONFIG_ATMEL is not set
821# CONFIG_PRISM54 is not set
822# CONFIG_USB_ZD1201 is not set
823# CONFIG_HOSTAP is not set
783 824
784# 825#
785# Enable WiMAX (Networking options) to see the WiMAX drivers 826# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -802,6 +843,7 @@ CONFIG_WLAN=y
802# CONFIG_NETCONSOLE is not set 843# CONFIG_NETCONSOLE is not set
803# CONFIG_NETPOLL is not set 844# CONFIG_NETPOLL is not set
804# CONFIG_NET_POLL_CONTROLLER is not set 845# CONFIG_NET_POLL_CONTROLLER is not set
846# CONFIG_VMXNET3 is not set
805# CONFIG_ISDN is not set 847# CONFIG_ISDN is not set
806# CONFIG_PHONE is not set 848# CONFIG_PHONE is not set
807 849
@@ -811,6 +853,7 @@ CONFIG_WLAN=y
811CONFIG_INPUT=y 853CONFIG_INPUT=y
812CONFIG_INPUT_FF_MEMLESS=m 854CONFIG_INPUT_FF_MEMLESS=m
813# CONFIG_INPUT_POLLDEV is not set 855# CONFIG_INPUT_POLLDEV is not set
856# CONFIG_INPUT_SPARSEKMAP is not set
814 857
815# 858#
816# Userland interfaces 859# Userland interfaces
@@ -840,6 +883,7 @@ CONFIG_SERIO_SERPORT=y
840CONFIG_SERIO_LIBPS2=y 883CONFIG_SERIO_LIBPS2=y
841# CONFIG_SERIO_RAW is not set 884# CONFIG_SERIO_RAW is not set
842# CONFIG_SERIO_XILINX_XPS_PS2 is not set 885# CONFIG_SERIO_XILINX_XPS_PS2 is not set
886# CONFIG_SERIO_ALTERA_PS2 is not set
843# CONFIG_GAMEPORT is not set 887# CONFIG_GAMEPORT is not set
844 888
845# 889#
@@ -876,6 +920,7 @@ CONFIG_SERIAL_CORE=y
876CONFIG_SERIAL_CORE_CONSOLE=y 920CONFIG_SERIAL_CORE_CONSOLE=y
877# CONFIG_SERIAL_JSM is not set 921# CONFIG_SERIAL_JSM is not set
878# CONFIG_SERIAL_OF_PLATFORM is not set 922# CONFIG_SERIAL_OF_PLATFORM is not set
923# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
879CONFIG_UNIX98_PTYS=y 924CONFIG_UNIX98_PTYS=y
880# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 925# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
881CONFIG_LEGACY_PTYS=y 926CONFIG_LEGACY_PTYS=y
@@ -932,11 +977,6 @@ CONFIG_I2C_MPC=y
932# CONFIG_I2C_TINY_USB is not set 977# CONFIG_I2C_TINY_USB is not set
933 978
934# 979#
935# Graphics adapter I2C/DDC channel drivers
936#
937# CONFIG_I2C_VOODOO3 is not set
938
939#
940# Other I2C/SMBus bus drivers 980# Other I2C/SMBus bus drivers
941# 981#
942# CONFIG_I2C_PCA_PLATFORM is not set 982# CONFIG_I2C_PCA_PLATFORM is not set
@@ -945,7 +985,6 @@ CONFIG_I2C_MPC=y
945# 985#
946# Miscellaneous I2C Chip support 986# Miscellaneous I2C Chip support
947# 987#
948# CONFIG_DS1682 is not set
949# CONFIG_SENSORS_TSL2550 is not set 988# CONFIG_SENSORS_TSL2550 is not set
950# CONFIG_I2C_DEBUG_CORE is not set 989# CONFIG_I2C_DEBUG_CORE is not set
951# CONFIG_I2C_DEBUG_ALGO is not set 990# CONFIG_I2C_DEBUG_ALGO is not set
@@ -980,11 +1019,13 @@ CONFIG_SSB_POSSIBLE=y
980# CONFIG_TWL4030_CORE is not set 1019# CONFIG_TWL4030_CORE is not set
981# CONFIG_MFD_TMIO is not set 1020# CONFIG_MFD_TMIO is not set
982# CONFIG_PMIC_DA903X is not set 1021# CONFIG_PMIC_DA903X is not set
1022# CONFIG_PMIC_ADP5520 is not set
983# CONFIG_MFD_WM8400 is not set 1023# CONFIG_MFD_WM8400 is not set
984# CONFIG_MFD_WM831X is not set 1024# CONFIG_MFD_WM831X is not set
985# CONFIG_MFD_WM8350_I2C is not set 1025# CONFIG_MFD_WM8350_I2C is not set
986# CONFIG_MFD_PCF50633 is not set 1026# CONFIG_MFD_PCF50633 is not set
987# CONFIG_AB3100_CORE is not set 1027# CONFIG_AB3100_CORE is not set
1028# CONFIG_MFD_88PM8607 is not set
988# CONFIG_REGULATOR is not set 1029# CONFIG_REGULATOR is not set
989# CONFIG_MEDIA_SUPPORT is not set 1030# CONFIG_MEDIA_SUPPORT is not set
990 1031
@@ -1059,6 +1100,7 @@ CONFIG_SND_PCI=y
1059# CONFIG_SND_CS4281 is not set 1100# CONFIG_SND_CS4281 is not set
1060# CONFIG_SND_CS46XX is not set 1101# CONFIG_SND_CS46XX is not set
1061# CONFIG_SND_CS5530 is not set 1102# CONFIG_SND_CS5530 is not set
1103# CONFIG_SND_CS5535AUDIO is not set
1062# CONFIG_SND_CTXFI is not set 1104# CONFIG_SND_CTXFI is not set
1063# CONFIG_SND_DARLA20 is not set 1105# CONFIG_SND_DARLA20 is not set
1064# CONFIG_SND_GINA20 is not set 1106# CONFIG_SND_GINA20 is not set
@@ -1186,6 +1228,7 @@ CONFIG_USB_MON=y
1186CONFIG_USB_EHCI_HCD=y 1228CONFIG_USB_EHCI_HCD=y
1187# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1229# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1188# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1230# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1231# CONFIG_XPS_USB_HCD_XILINX is not set
1189# CONFIG_USB_EHCI_FSL is not set 1232# CONFIG_USB_EHCI_FSL is not set
1190CONFIG_USB_EHCI_HCD_PPC_OF=y 1233CONFIG_USB_EHCI_HCD_PPC_OF=y
1191# CONFIG_USB_OXU210HP_HCD is not set 1234# CONFIG_USB_OXU210HP_HCD is not set
@@ -1312,6 +1355,7 @@ CONFIG_RTC_INTF_DEV=y
1312# CONFIG_RTC_DRV_PCF8563 is not set 1355# CONFIG_RTC_DRV_PCF8563 is not set
1313# CONFIG_RTC_DRV_PCF8583 is not set 1356# CONFIG_RTC_DRV_PCF8583 is not set
1314# CONFIG_RTC_DRV_M41T80 is not set 1357# CONFIG_RTC_DRV_M41T80 is not set
1358# CONFIG_RTC_DRV_BQ32K is not set
1315# CONFIG_RTC_DRV_S35390A is not set 1359# CONFIG_RTC_DRV_S35390A is not set
1316# CONFIG_RTC_DRV_FM3130 is not set 1360# CONFIG_RTC_DRV_FM3130 is not set
1317# CONFIG_RTC_DRV_RX8581 is not set 1361# CONFIG_RTC_DRV_RX8581 is not set
@@ -1333,7 +1377,9 @@ CONFIG_RTC_DRV_CMOS=y
1333# CONFIG_RTC_DRV_M48T86 is not set 1377# CONFIG_RTC_DRV_M48T86 is not set
1334# CONFIG_RTC_DRV_M48T35 is not set 1378# CONFIG_RTC_DRV_M48T35 is not set
1335# CONFIG_RTC_DRV_M48T59 is not set 1379# CONFIG_RTC_DRV_M48T59 is not set
1380# CONFIG_RTC_DRV_MSM6242 is not set
1336# CONFIG_RTC_DRV_BQ4802 is not set 1381# CONFIG_RTC_DRV_BQ4802 is not set
1382# CONFIG_RTC_DRV_RP5C01 is not set
1337# CONFIG_RTC_DRV_V3020 is not set 1383# CONFIG_RTC_DRV_V3020 is not set
1338 1384
1339# 1385#
@@ -1648,7 +1694,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1648# CONFIG_KEYS is not set 1694# CONFIG_KEYS is not set
1649# CONFIG_SECURITY is not set 1695# CONFIG_SECURITY is not set
1650# CONFIG_SECURITYFS is not set 1696# CONFIG_SECURITYFS is not set
1651# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1697# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1698# CONFIG_DEFAULT_SECURITY_SMACK is not set
1699# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1700CONFIG_DEFAULT_SECURITY_DAC=y
1701CONFIG_DEFAULT_SECURITY=""
1652CONFIG_CRYPTO=y 1702CONFIG_CRYPTO=y
1653 1703
1654# 1704#
diff --git a/arch/powerpc/configs/86xx/sbc8641d_defconfig b/arch/powerpc/configs/86xx/sbc8641d_defconfig
index 89991f157ae8..4fb04dd2cde3 100644
--- a/arch/powerpc/configs/86xx/sbc8641d_defconfig
+++ b/arch/powerpc/configs/86xx/sbc8641d_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:45 2009 4# Wed Jan 6 09:24:38 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -38,6 +38,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
40CONFIG_IRQ_PER_CPU=y 40CONFIG_IRQ_PER_CPU=y
41CONFIG_NR_IRQS=512
41CONFIG_STACKTRACE_SUPPORT=y 42CONFIG_STACKTRACE_SUPPORT=y
42CONFIG_HAVE_LATENCYTOP_SUPPORT=y 43CONFIG_HAVE_LATENCYTOP_SUPPORT=y
43CONFIG_TRACE_IRQFLAGS_SUPPORT=y 44CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -90,6 +93,7 @@ CONFIG_BSD_PROCESS_ACCT_V3=y
90# 93#
91CONFIG_TREE_RCU=y 94CONFIG_TREE_RCU=y
92# CONFIG_TREE_PREEMPT_RCU is not set 95# CONFIG_TREE_PREEMPT_RCU is not set
96# CONFIG_TINY_RCU is not set
93# CONFIG_RCU_TRACE is not set 97# CONFIG_RCU_TRACE is not set
94CONFIG_RCU_FANOUT=32 98CONFIG_RCU_FANOUT=32
95# CONFIG_RCU_FANOUT_EXACT is not set 99# CONFIG_RCU_FANOUT_EXACT is not set
@@ -162,6 +166,7 @@ CONFIG_HAVE_DMA_API_DEBUG=y
162# 166#
163# CONFIG_GCOV_KERNEL is not set 167# CONFIG_GCOV_KERNEL is not set
164CONFIG_SLOW_WORK=y 168CONFIG_SLOW_WORK=y
169# CONFIG_SLOW_WORK_DEBUG is not set
165# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 170# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
166CONFIG_SLABINFO=y 171CONFIG_SLABINFO=y
167CONFIG_RT_MUTEXES=y 172CONFIG_RT_MUTEXES=y
@@ -182,14 +187,41 @@ CONFIG_LBDAF=y
182# IO Schedulers 187# IO Schedulers
183# 188#
184CONFIG_IOSCHED_NOOP=y 189CONFIG_IOSCHED_NOOP=y
185CONFIG_IOSCHED_AS=y
186CONFIG_IOSCHED_DEADLINE=y 190CONFIG_IOSCHED_DEADLINE=y
187CONFIG_IOSCHED_CFQ=y 191CONFIG_IOSCHED_CFQ=y
188# CONFIG_DEFAULT_AS is not set
189# CONFIG_DEFAULT_DEADLINE is not set 192# CONFIG_DEFAULT_DEADLINE is not set
190CONFIG_DEFAULT_CFQ=y 193CONFIG_DEFAULT_CFQ=y
191# CONFIG_DEFAULT_NOOP is not set 194# CONFIG_DEFAULT_NOOP is not set
192CONFIG_DEFAULT_IOSCHED="cfq" 195CONFIG_DEFAULT_IOSCHED="cfq"
196# CONFIG_INLINE_SPIN_TRYLOCK is not set
197# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
198# CONFIG_INLINE_SPIN_LOCK is not set
199# CONFIG_INLINE_SPIN_LOCK_BH is not set
200# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
201# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
202# CONFIG_INLINE_SPIN_UNLOCK is not set
203# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
204# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
205# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
206# CONFIG_INLINE_READ_TRYLOCK is not set
207# CONFIG_INLINE_READ_LOCK is not set
208# CONFIG_INLINE_READ_LOCK_BH is not set
209# CONFIG_INLINE_READ_LOCK_IRQ is not set
210# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
211# CONFIG_INLINE_READ_UNLOCK is not set
212# CONFIG_INLINE_READ_UNLOCK_BH is not set
213# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
214# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
215# CONFIG_INLINE_WRITE_TRYLOCK is not set
216# CONFIG_INLINE_WRITE_LOCK is not set
217# CONFIG_INLINE_WRITE_LOCK_BH is not set
218# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
219# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
220# CONFIG_INLINE_WRITE_UNLOCK is not set
221# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
222# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
223# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
224CONFIG_MUTEX_SPIN_ON_OWNER=y
193# CONFIG_FREEZER is not set 225# CONFIG_FREEZER is not set
194 226
195# 227#
@@ -260,6 +292,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
260# CONFIG_KEXEC is not set 292# CONFIG_KEXEC is not set
261# CONFIG_CRASH_DUMP is not set 293# CONFIG_CRASH_DUMP is not set
262CONFIG_IRQ_ALL_CPUS=y 294CONFIG_IRQ_ALL_CPUS=y
295CONFIG_SPARSE_IRQ=y
263CONFIG_MAX_ACTIVE_REGIONS=32 296CONFIG_MAX_ACTIVE_REGIONS=32
264CONFIG_ARCH_FLATMEM_ENABLE=y 297CONFIG_ARCH_FLATMEM_ENABLE=y
265CONFIG_ARCH_POPULATES_NODE_MAP=y 298CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -276,8 +309,6 @@ CONFIG_MIGRATION=y
276CONFIG_ZONE_DMA_FLAG=1 309CONFIG_ZONE_DMA_FLAG=1
277CONFIG_BOUNCE=y 310CONFIG_BOUNCE=y
278CONFIG_VIRT_TO_BUS=y 311CONFIG_VIRT_TO_BUS=y
279CONFIG_HAVE_MLOCK=y
280CONFIG_HAVE_MLOCKED_PAGE_BIT=y
281# CONFIG_KSM is not set 312# CONFIG_KSM is not set
282CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 313CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
283CONFIG_PPC_4K_PAGES=y 314CONFIG_PPC_4K_PAGES=y
@@ -399,6 +430,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
399CONFIG_INET6_XFRM_MODE_BEET=m 430CONFIG_INET6_XFRM_MODE_BEET=m
400# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 431# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
401CONFIG_IPV6_SIT=m 432CONFIG_IPV6_SIT=m
433# CONFIG_IPV6_SIT_6RD is not set
402CONFIG_IPV6_NDISC_NODETYPE=y 434CONFIG_IPV6_NDISC_NODETYPE=y
403CONFIG_IPV6_TUNNEL=m 435CONFIG_IPV6_TUNNEL=m
404# CONFIG_IPV6_MULTIPLE_TABLES is not set 436# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -587,9 +619,6 @@ CONFIG_NET_PKTGEN=m
587CONFIG_FIB_RULES=y 619CONFIG_FIB_RULES=y
588CONFIG_WIRELESS=y 620CONFIG_WIRELESS=y
589# CONFIG_CFG80211 is not set 621# CONFIG_CFG80211 is not set
590CONFIG_CFG80211_DEFAULT_PS_VALUE=0
591CONFIG_WIRELESS_OLD_REGULATORY=y
592# CONFIG_WIRELESS_EXT is not set
593# CONFIG_LIB80211 is not set 622# CONFIG_LIB80211 is not set
594 623
595# 624#
@@ -717,6 +746,10 @@ CONFIG_BLK_DEV=y
717# CONFIG_BLK_DEV_COW_COMMON is not set 746# CONFIG_BLK_DEV_COW_COMMON is not set
718CONFIG_BLK_DEV_LOOP=m 747CONFIG_BLK_DEV_LOOP=m
719CONFIG_BLK_DEV_CRYPTOLOOP=m 748CONFIG_BLK_DEV_CRYPTOLOOP=m
749
750#
751# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
752#
720CONFIG_BLK_DEV_NBD=m 753CONFIG_BLK_DEV_NBD=m
721# CONFIG_BLK_DEV_SX8 is not set 754# CONFIG_BLK_DEV_SX8 is not set
722CONFIG_BLK_DEV_RAM=y 755CONFIG_BLK_DEV_RAM=y
@@ -727,6 +760,7 @@ CONFIG_BLK_DEV_RAM_SIZE=4096
727# CONFIG_ATA_OVER_ETH is not set 760# CONFIG_ATA_OVER_ETH is not set
728# CONFIG_BLK_DEV_HD is not set 761# CONFIG_BLK_DEV_HD is not set
729CONFIG_MISC_DEVICES=y 762CONFIG_MISC_DEVICES=y
763# CONFIG_AD525X_DPOT is not set
730# CONFIG_PHANTOM is not set 764# CONFIG_PHANTOM is not set
731# CONFIG_SGI_IOC4 is not set 765# CONFIG_SGI_IOC4 is not set
732# CONFIG_TIFM_CORE is not set 766# CONFIG_TIFM_CORE is not set
@@ -734,6 +768,7 @@ CONFIG_MISC_DEVICES=y
734# CONFIG_ENCLOSURE_SERVICES is not set 768# CONFIG_ENCLOSURE_SERVICES is not set
735# CONFIG_HP_ILO is not set 769# CONFIG_HP_ILO is not set
736# CONFIG_ISL29003 is not set 770# CONFIG_ISL29003 is not set
771# CONFIG_DS1682 is not set
737# CONFIG_C2PORT is not set 772# CONFIG_C2PORT is not set
738 773
739# 774#
@@ -786,7 +821,7 @@ CONFIG_DM_ZERO=y
786# 821#
787 822
788# 823#
789# See the help texts for more information. 824# The newer stack is recommended.
790# 825#
791# CONFIG_FIREWIRE is not set 826# CONFIG_FIREWIRE is not set
792# CONFIG_IEEE1394 is not set 827# CONFIG_IEEE1394 is not set
@@ -873,8 +908,10 @@ CONFIG_GIANFAR=y
873# CONFIG_NETDEV_10000 is not set 908# CONFIG_NETDEV_10000 is not set
874# CONFIG_TR is not set 909# CONFIG_TR is not set
875CONFIG_WLAN=y 910CONFIG_WLAN=y
876# CONFIG_WLAN_PRE80211 is not set 911# CONFIG_AIRO is not set
877# CONFIG_WLAN_80211 is not set 912# CONFIG_ATMEL is not set
913# CONFIG_PRISM54 is not set
914# CONFIG_HOSTAP is not set
878 915
879# 916#
880# Enable WiMAX (Networking options) to see the WiMAX drivers 917# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -918,6 +955,7 @@ CONFIG_NETCONSOLE=y
918CONFIG_NETPOLL=y 955CONFIG_NETPOLL=y
919CONFIG_NETPOLL_TRAP=y 956CONFIG_NETPOLL_TRAP=y
920CONFIG_NET_POLL_CONTROLLER=y 957CONFIG_NET_POLL_CONTROLLER=y
958# CONFIG_VMXNET3 is not set
921# CONFIG_ISDN is not set 959# CONFIG_ISDN is not set
922# CONFIG_PHONE is not set 960# CONFIG_PHONE is not set
923 961
@@ -927,6 +965,7 @@ CONFIG_NET_POLL_CONTROLLER=y
927CONFIG_INPUT=y 965CONFIG_INPUT=y
928# CONFIG_INPUT_FF_MEMLESS is not set 966# CONFIG_INPUT_FF_MEMLESS is not set
929# CONFIG_INPUT_POLLDEV is not set 967# CONFIG_INPUT_POLLDEV is not set
968# CONFIG_INPUT_SPARSEKMAP is not set
930 969
931# 970#
932# Userland interfaces 971# Userland interfaces
@@ -985,6 +1024,7 @@ CONFIG_SERIAL_CORE=y
985CONFIG_SERIAL_CORE_CONSOLE=y 1024CONFIG_SERIAL_CORE_CONSOLE=y
986# CONFIG_SERIAL_JSM is not set 1025# CONFIG_SERIAL_JSM is not set
987# CONFIG_SERIAL_OF_PLATFORM is not set 1026# CONFIG_SERIAL_OF_PLATFORM is not set
1027# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
988CONFIG_UNIX98_PTYS=y 1028CONFIG_UNIX98_PTYS=y
989# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1029# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
990CONFIG_LEGACY_PTYS=y 1030CONFIG_LEGACY_PTYS=y
@@ -1042,11 +1082,6 @@ CONFIG_I2C_MPC=y
1042# CONFIG_I2C_TAOS_EVM is not set 1082# CONFIG_I2C_TAOS_EVM is not set
1043 1083
1044# 1084#
1045# Graphics adapter I2C/DDC channel drivers
1046#
1047# CONFIG_I2C_VOODOO3 is not set
1048
1049#
1050# Other I2C/SMBus bus drivers 1085# Other I2C/SMBus bus drivers
1051# 1086#
1052# CONFIG_I2C_PCA_PLATFORM is not set 1087# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1055,7 +1090,6 @@ CONFIG_I2C_MPC=y
1055# 1090#
1056# Miscellaneous I2C Chip support 1091# Miscellaneous I2C Chip support
1057# 1092#
1058# CONFIG_DS1682 is not set
1059# CONFIG_SENSORS_TSL2550 is not set 1093# CONFIG_SENSORS_TSL2550 is not set
1060# CONFIG_I2C_DEBUG_CORE is not set 1094# CONFIG_I2C_DEBUG_CORE is not set
1061# CONFIG_I2C_DEBUG_ALGO is not set 1095# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1101,6 +1135,7 @@ CONFIG_HWMON=y
1101# CONFIG_SENSORS_GL520SM is not set 1135# CONFIG_SENSORS_GL520SM is not set
1102# CONFIG_SENSORS_IT87 is not set 1136# CONFIG_SENSORS_IT87 is not set
1103# CONFIG_SENSORS_LM63 is not set 1137# CONFIG_SENSORS_LM63 is not set
1138# CONFIG_SENSORS_LM73 is not set
1104# CONFIG_SENSORS_LM75 is not set 1139# CONFIG_SENSORS_LM75 is not set
1105# CONFIG_SENSORS_LM77 is not set 1140# CONFIG_SENSORS_LM77 is not set
1106# CONFIG_SENSORS_LM78 is not set 1141# CONFIG_SENSORS_LM78 is not set
@@ -1139,6 +1174,7 @@ CONFIG_HWMON=y
1139# CONFIG_SENSORS_W83L786NG is not set 1174# CONFIG_SENSORS_W83L786NG is not set
1140# CONFIG_SENSORS_W83627HF is not set 1175# CONFIG_SENSORS_W83627HF is not set
1141# CONFIG_SENSORS_W83627EHF is not set 1176# CONFIG_SENSORS_W83627EHF is not set
1177# CONFIG_SENSORS_LIS3_I2C is not set
1142# CONFIG_THERMAL is not set 1178# CONFIG_THERMAL is not set
1143CONFIG_WATCHDOG=y 1179CONFIG_WATCHDOG=y
1144# CONFIG_WATCHDOG_NOWAYOUT is not set 1180# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1171,11 +1207,13 @@ CONFIG_SSB_POSSIBLE=y
1171# CONFIG_TWL4030_CORE is not set 1207# CONFIG_TWL4030_CORE is not set
1172# CONFIG_MFD_TMIO is not set 1208# CONFIG_MFD_TMIO is not set
1173# CONFIG_PMIC_DA903X is not set 1209# CONFIG_PMIC_DA903X is not set
1210# CONFIG_PMIC_ADP5520 is not set
1174# CONFIG_MFD_WM8400 is not set 1211# CONFIG_MFD_WM8400 is not set
1175# CONFIG_MFD_WM831X is not set 1212# CONFIG_MFD_WM831X is not set
1176# CONFIG_MFD_WM8350_I2C is not set 1213# CONFIG_MFD_WM8350_I2C is not set
1177# CONFIG_MFD_PCF50633 is not set 1214# CONFIG_MFD_PCF50633 is not set
1178# CONFIG_AB3100_CORE is not set 1215# CONFIG_AB3100_CORE is not set
1216# CONFIG_MFD_88PM8607 is not set
1179# CONFIG_REGULATOR is not set 1217# CONFIG_REGULATOR is not set
1180# CONFIG_MEDIA_SUPPORT is not set 1218# CONFIG_MEDIA_SUPPORT is not set
1181 1219
@@ -1281,7 +1319,6 @@ CONFIG_OCFS2_FS_O2CB=m
1281CONFIG_OCFS2_FS_STATS=y 1319CONFIG_OCFS2_FS_STATS=y
1282CONFIG_OCFS2_DEBUG_MASKLOG=y 1320CONFIG_OCFS2_DEBUG_MASKLOG=y
1283# CONFIG_OCFS2_DEBUG_FS is not set 1321# CONFIG_OCFS2_DEBUG_FS is not set
1284# CONFIG_OCFS2_FS_POSIX_ACL is not set
1285# CONFIG_BTRFS_FS is not set 1322# CONFIG_BTRFS_FS is not set
1286# CONFIG_NILFS2_FS is not set 1323# CONFIG_NILFS2_FS is not set
1287CONFIG_FILE_LOCKING=y 1324CONFIG_FILE_LOCKING=y
@@ -1556,8 +1593,12 @@ CONFIG_SECURITY=y
1556CONFIG_SECURITY_NETWORK=y 1593CONFIG_SECURITY_NETWORK=y
1557# CONFIG_SECURITY_NETWORK_XFRM is not set 1594# CONFIG_SECURITY_NETWORK_XFRM is not set
1558# CONFIG_SECURITY_PATH is not set 1595# CONFIG_SECURITY_PATH is not set
1559# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1560# CONFIG_SECURITY_TOMOYO is not set 1596# CONFIG_SECURITY_TOMOYO is not set
1597# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1598# CONFIG_DEFAULT_SECURITY_SMACK is not set
1599# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1600CONFIG_DEFAULT_SECURITY_DAC=y
1601CONFIG_DEFAULT_SECURITY=""
1561CONFIG_CRYPTO=y 1602CONFIG_CRYPTO=y
1562 1603
1563# 1604#
diff --git a/arch/powerpc/configs/adder875_defconfig b/arch/powerpc/configs/adder875_defconfig
index 052cf134e018..5c1dc768bbd8 100644
--- a/arch/powerpc/configs/adder875_defconfig
+++ b/arch/powerpc/configs/adder875_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:04 2009 4# Wed Jan 6 09:23:58 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -32,6 +32,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
37CONFIG_TRACE_IRQFLAGS_SUPPORT=y 38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -55,6 +56,7 @@ CONFIG_GENERIC_BUG=y
55CONFIG_DTC=y 56CONFIG_DTC=y
56# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
57CONFIG_REDBOOT=y 58CONFIG_REDBOOT=y
59CONFIG_ARCH_HIBERNATION_POSSIBLE=y
58# CONFIG_PPC_DCR_NATIVE is not set 60# CONFIG_PPC_DCR_NATIVE is not set
59# CONFIG_PPC_DCR_MMIO is not set 61# CONFIG_PPC_DCR_MMIO is not set
60CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 62CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -82,6 +84,7 @@ CONFIG_SYSVIPC_SYSCTL=y
82# 84#
83CONFIG_TREE_RCU=y 85CONFIG_TREE_RCU=y
84# CONFIG_TREE_PREEMPT_RCU is not set 86# CONFIG_TREE_PREEMPT_RCU is not set
87# CONFIG_TINY_RCU is not set
85# CONFIG_RCU_TRACE is not set 88# CONFIG_RCU_TRACE is not set
86CONFIG_RCU_FANOUT=32 89CONFIG_RCU_FANOUT=32
87# CONFIG_RCU_FANOUT_EXACT is not set 90# CONFIG_RCU_FANOUT_EXACT is not set
@@ -161,14 +164,41 @@ CONFIG_LBDAF=y
161# IO Schedulers 164# IO Schedulers
162# 165#
163CONFIG_IOSCHED_NOOP=y 166CONFIG_IOSCHED_NOOP=y
164# CONFIG_IOSCHED_AS is not set
165CONFIG_IOSCHED_DEADLINE=y 167CONFIG_IOSCHED_DEADLINE=y
166# CONFIG_IOSCHED_CFQ is not set 168# CONFIG_IOSCHED_CFQ is not set
167# CONFIG_DEFAULT_AS is not set
168CONFIG_DEFAULT_DEADLINE=y 169CONFIG_DEFAULT_DEADLINE=y
169# CONFIG_DEFAULT_CFQ is not set 170# CONFIG_DEFAULT_CFQ is not set
170# CONFIG_DEFAULT_NOOP is not set 171# CONFIG_DEFAULT_NOOP is not set
171CONFIG_DEFAULT_IOSCHED="deadline" 172CONFIG_DEFAULT_IOSCHED="deadline"
173# CONFIG_INLINE_SPIN_TRYLOCK is not set
174# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
175# CONFIG_INLINE_SPIN_LOCK is not set
176# CONFIG_INLINE_SPIN_LOCK_BH is not set
177# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
178# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
179CONFIG_INLINE_SPIN_UNLOCK=y
180# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
181CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
182# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
183# CONFIG_INLINE_READ_TRYLOCK is not set
184# CONFIG_INLINE_READ_LOCK is not set
185# CONFIG_INLINE_READ_LOCK_BH is not set
186# CONFIG_INLINE_READ_LOCK_IRQ is not set
187# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
188CONFIG_INLINE_READ_UNLOCK=y
189# CONFIG_INLINE_READ_UNLOCK_BH is not set
190CONFIG_INLINE_READ_UNLOCK_IRQ=y
191# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
192# CONFIG_INLINE_WRITE_TRYLOCK is not set
193# CONFIG_INLINE_WRITE_LOCK is not set
194# CONFIG_INLINE_WRITE_LOCK_BH is not set
195# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
196# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
197CONFIG_INLINE_WRITE_UNLOCK=y
198# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
199CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
200# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
201# CONFIG_MUTEX_SPIN_ON_OWNER is not set
172# CONFIG_FREEZER is not set 202# CONFIG_FREEZER is not set
173 203
174# 204#
@@ -242,6 +272,7 @@ CONFIG_BINFMT_ELF=y
242CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 272CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
243CONFIG_ARCH_HAS_WALK_MEMORY=y 273CONFIG_ARCH_HAS_WALK_MEMORY=y
244CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 274CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
275CONFIG_SPARSE_IRQ=y
245CONFIG_MAX_ACTIVE_REGIONS=32 276CONFIG_MAX_ACTIVE_REGIONS=32
246CONFIG_ARCH_FLATMEM_ENABLE=y 277CONFIG_ARCH_FLATMEM_ENABLE=y
247CONFIG_ARCH_POPULATES_NODE_MAP=y 278CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -258,8 +289,6 @@ CONFIG_MIGRATION=y
258CONFIG_ZONE_DMA_FLAG=1 289CONFIG_ZONE_DMA_FLAG=1
259CONFIG_BOUNCE=y 290CONFIG_BOUNCE=y
260CONFIG_VIRT_TO_BUS=y 291CONFIG_VIRT_TO_BUS=y
261CONFIG_HAVE_MLOCK=y
262CONFIG_HAVE_MLOCKED_PAGE_BIT=y
263# CONFIG_KSM is not set 292# CONFIG_KSM is not set
264CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 293CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
265CONFIG_PPC_4K_PAGES=y 294CONFIG_PPC_4K_PAGES=y
@@ -373,9 +402,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
373# CONFIG_AF_RXRPC is not set 402# CONFIG_AF_RXRPC is not set
374CONFIG_WIRELESS=y 403CONFIG_WIRELESS=y
375# CONFIG_CFG80211 is not set 404# CONFIG_CFG80211 is not set
376CONFIG_CFG80211_DEFAULT_PS_VALUE=0
377CONFIG_WIRELESS_OLD_REGULATORY=y
378# CONFIG_WIRELESS_EXT is not set
379# CONFIG_LIB80211 is not set 405# CONFIG_LIB80211 is not set
380 406
381# 407#
@@ -546,8 +572,7 @@ CONFIG_FS_ENET_MDIO_FEC=y
546# CONFIG_NETDEV_1000 is not set 572# CONFIG_NETDEV_1000 is not set
547# CONFIG_NETDEV_10000 is not set 573# CONFIG_NETDEV_10000 is not set
548CONFIG_WLAN=y 574CONFIG_WLAN=y
549# CONFIG_WLAN_PRE80211 is not set 575# CONFIG_HOSTAP is not set
550# CONFIG_WLAN_80211 is not set
551 576
552# 577#
553# Enable WiMAX (Networking options) to see the WiMAX drivers 578# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -567,6 +592,7 @@ CONFIG_WLAN=y
567CONFIG_INPUT=y 592CONFIG_INPUT=y
568# CONFIG_INPUT_FF_MEMLESS is not set 593# CONFIG_INPUT_FF_MEMLESS is not set
569# CONFIG_INPUT_POLLDEV is not set 594# CONFIG_INPUT_POLLDEV is not set
595# CONFIG_INPUT_SPARSEKMAP is not set
570 596
571# 597#
572# Userland interfaces 598# Userland interfaces
@@ -615,6 +641,7 @@ CONFIG_SERIO_SERPORT=y
615CONFIG_SERIO_LIBPS2=y 641CONFIG_SERIO_LIBPS2=y
616# CONFIG_SERIO_RAW is not set 642# CONFIG_SERIO_RAW is not set
617# CONFIG_SERIO_XILINX_XPS_PS2 is not set 643# CONFIG_SERIO_XILINX_XPS_PS2 is not set
644# CONFIG_SERIO_ALTERA_PS2 is not set
618# CONFIG_GAMEPORT is not set 645# CONFIG_GAMEPORT is not set
619 646
620# 647#
@@ -637,6 +664,7 @@ CONFIG_SERIAL_CORE=y
637CONFIG_SERIAL_CORE_CONSOLE=y 664CONFIG_SERIAL_CORE_CONSOLE=y
638CONFIG_SERIAL_CPM=y 665CONFIG_SERIAL_CPM=y
639CONFIG_SERIAL_CPM_CONSOLE=y 666CONFIG_SERIAL_CPM_CONSOLE=y
667# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
640CONFIG_UNIX98_PTYS=y 668CONFIG_UNIX98_PTYS=y
641# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 669# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
642# CONFIG_LEGACY_PTYS is not set 670# CONFIG_LEGACY_PTYS is not set
@@ -898,6 +926,7 @@ CONFIG_DEBUG_INFO=y
898# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 926# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
899# CONFIG_FAULT_INJECTION is not set 927# CONFIG_FAULT_INJECTION is not set
900# CONFIG_LATENCYTOP is not set 928# CONFIG_LATENCYTOP is not set
929# CONFIG_SYSCTL_SYSCALL_CHECK is not set
901# CONFIG_DEBUG_PAGEALLOC is not set 930# CONFIG_DEBUG_PAGEALLOC is not set
902CONFIG_HAVE_FUNCTION_TRACER=y 931CONFIG_HAVE_FUNCTION_TRACER=y
903CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 932CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -943,7 +972,11 @@ CONFIG_PRINT_STACK_DEPTH=64
943# CONFIG_KEYS is not set 972# CONFIG_KEYS is not set
944# CONFIG_SECURITY is not set 973# CONFIG_SECURITY is not set
945# CONFIG_SECURITYFS is not set 974# CONFIG_SECURITYFS is not set
946# CONFIG_SECURITY_FILE_CAPABILITIES is not set 975# CONFIG_DEFAULT_SECURITY_SELINUX is not set
976# CONFIG_DEFAULT_SECURITY_SMACK is not set
977# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
978CONFIG_DEFAULT_SECURITY_DAC=y
979CONFIG_DEFAULT_SECURITY=""
947# CONFIG_CRYPTO is not set 980# CONFIG_CRYPTO is not set
948CONFIG_PPC_CLOCK=y 981CONFIG_PPC_CLOCK=y
949CONFIG_PPC_LIB_RHEAP=y 982CONFIG_PPC_LIB_RHEAP=y
diff --git a/arch/powerpc/configs/c2k_defconfig b/arch/powerpc/configs/c2k_defconfig
index 0fb65a85dfdf..72137cd881da 100644
--- a/arch/powerpc/configs/c2k_defconfig
+++ b/arch/powerpc/configs/c2k_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:05 2009 4# Wed Jan 6 09:23:59 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,7 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63# CONFIG_DEFAULT_UIMAGE is not set 64# CONFIG_DEFAULT_UIMAGE is not set
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 66# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 67# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 68CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -92,6 +94,7 @@ CONFIG_AUDIT_TREE=y
92# 94#
93CONFIG_TREE_RCU=y 95CONFIG_TREE_RCU=y
94# CONFIG_TREE_PREEMPT_RCU is not set 96# CONFIG_TREE_PREEMPT_RCU is not set
97# CONFIG_TINY_RCU is not set
95# CONFIG_RCU_TRACE is not set 98# CONFIG_RCU_TRACE is not set
96CONFIG_RCU_FANOUT=32 99CONFIG_RCU_FANOUT=32
97# CONFIG_RCU_FANOUT_EXACT is not set 100# CONFIG_RCU_FANOUT_EXACT is not set
@@ -173,6 +176,7 @@ CONFIG_HAVE_DMA_API_DEBUG=y
173# 176#
174# CONFIG_GCOV_KERNEL is not set 177# CONFIG_GCOV_KERNEL is not set
175CONFIG_SLOW_WORK=y 178CONFIG_SLOW_WORK=y
179# CONFIG_SLOW_WORK_DEBUG is not set
176# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 180# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
177CONFIG_SLABINFO=y 181CONFIG_SLABINFO=y
178CONFIG_RT_MUTEXES=y 182CONFIG_RT_MUTEXES=y
@@ -192,14 +196,41 @@ CONFIG_LBDAF=y
192# IO Schedulers 196# IO Schedulers
193# 197#
194CONFIG_IOSCHED_NOOP=y 198CONFIG_IOSCHED_NOOP=y
195CONFIG_IOSCHED_AS=y
196CONFIG_IOSCHED_DEADLINE=y 199CONFIG_IOSCHED_DEADLINE=y
197CONFIG_IOSCHED_CFQ=y 200CONFIG_IOSCHED_CFQ=y
198# CONFIG_DEFAULT_AS is not set
199# CONFIG_DEFAULT_DEADLINE is not set 201# CONFIG_DEFAULT_DEADLINE is not set
200CONFIG_DEFAULT_CFQ=y 202CONFIG_DEFAULT_CFQ=y
201# CONFIG_DEFAULT_NOOP is not set 203# CONFIG_DEFAULT_NOOP is not set
202CONFIG_DEFAULT_IOSCHED="cfq" 204CONFIG_DEFAULT_IOSCHED="cfq"
205# CONFIG_INLINE_SPIN_TRYLOCK is not set
206# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
207# CONFIG_INLINE_SPIN_LOCK is not set
208# CONFIG_INLINE_SPIN_LOCK_BH is not set
209# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
210# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
211# CONFIG_INLINE_SPIN_UNLOCK is not set
212# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
213# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
214# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
215# CONFIG_INLINE_READ_TRYLOCK is not set
216# CONFIG_INLINE_READ_LOCK is not set
217# CONFIG_INLINE_READ_LOCK_BH is not set
218# CONFIG_INLINE_READ_LOCK_IRQ is not set
219# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
220# CONFIG_INLINE_READ_UNLOCK is not set
221# CONFIG_INLINE_READ_UNLOCK_BH is not set
222# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
223# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
224# CONFIG_INLINE_WRITE_TRYLOCK is not set
225# CONFIG_INLINE_WRITE_LOCK is not set
226# CONFIG_INLINE_WRITE_LOCK_BH is not set
227# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
228# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
229# CONFIG_INLINE_WRITE_UNLOCK is not set
230# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
231# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
232# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
233# CONFIG_MUTEX_SPIN_ON_OWNER is not set
203# CONFIG_FREEZER is not set 234# CONFIG_FREEZER is not set
204 235
205# 236#
@@ -224,6 +255,8 @@ CONFIG_EMBEDDED6xx=y
224# CONFIG_PPC_PRPMC2800 is not set 255# CONFIG_PPC_PRPMC2800 is not set
225CONFIG_PPC_C2K=y 256CONFIG_PPC_C2K=y
226CONFIG_MV64X60=y 257CONFIG_MV64X60=y
258# CONFIG_GAMECUBE is not set
259# CONFIG_WII is not set
227# CONFIG_AMIGAONE is not set 260# CONFIG_AMIGAONE is not set
228CONFIG_PPC_OF_BOOT_TRAMPOLINE=y 261CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
229# CONFIG_IPIC is not set 262# CONFIG_IPIC is not set
@@ -286,6 +319,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
286CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 319CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
287# CONFIG_KEXEC is not set 320# CONFIG_KEXEC is not set
288# CONFIG_CRASH_DUMP is not set 321# CONFIG_CRASH_DUMP is not set
322CONFIG_SPARSE_IRQ=y
289CONFIG_MAX_ACTIVE_REGIONS=32 323CONFIG_MAX_ACTIVE_REGIONS=32
290CONFIG_ARCH_FLATMEM_ENABLE=y 324CONFIG_ARCH_FLATMEM_ENABLE=y
291CONFIG_ARCH_POPULATES_NODE_MAP=y 325CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -296,14 +330,12 @@ CONFIG_FLATMEM_MANUAL=y
296CONFIG_FLATMEM=y 330CONFIG_FLATMEM=y
297CONFIG_FLAT_NODE_MEM_MAP=y 331CONFIG_FLAT_NODE_MEM_MAP=y
298CONFIG_PAGEFLAGS_EXTENDED=y 332CONFIG_PAGEFLAGS_EXTENDED=y
299CONFIG_SPLIT_PTLOCK_CPUS=4 333CONFIG_SPLIT_PTLOCK_CPUS=999999
300CONFIG_MIGRATION=y 334CONFIG_MIGRATION=y
301# CONFIG_PHYS_ADDR_T_64BIT is not set 335# CONFIG_PHYS_ADDR_T_64BIT is not set
302CONFIG_ZONE_DMA_FLAG=1 336CONFIG_ZONE_DMA_FLAG=1
303CONFIG_BOUNCE=y 337CONFIG_BOUNCE=y
304CONFIG_VIRT_TO_BUS=y 338CONFIG_VIRT_TO_BUS=y
305CONFIG_HAVE_MLOCK=y
306CONFIG_HAVE_MLOCKED_PAGE_BIT=y
307# CONFIG_KSM is not set 339# CONFIG_KSM is not set
308CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 340CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
309CONFIG_PPC_4K_PAGES=y 341CONFIG_PPC_4K_PAGES=y
@@ -316,6 +348,7 @@ CONFIG_FORCE_MAX_ZONEORDER=11
316CONFIG_EXTRA_TARGETS="" 348CONFIG_EXTRA_TARGETS=""
317CONFIG_PM=y 349CONFIG_PM=y
318# CONFIG_PM_DEBUG is not set 350# CONFIG_PM_DEBUG is not set
351# CONFIG_HIBERNATION is not set
319# CONFIG_PM_RUNTIME is not set 352# CONFIG_PM_RUNTIME is not set
320CONFIG_SECCOMP=y 353CONFIG_SECCOMP=y
321CONFIG_ISA_DMA_API=y 354CONFIG_ISA_DMA_API=y
@@ -424,6 +457,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
424CONFIG_INET6_XFRM_MODE_BEET=m 457CONFIG_INET6_XFRM_MODE_BEET=m
425# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 458# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
426CONFIG_IPV6_SIT=m 459CONFIG_IPV6_SIT=m
460# CONFIG_IPV6_SIT_6RD is not set
427CONFIG_IPV6_NDISC_NODETYPE=y 461CONFIG_IPV6_NDISC_NODETYPE=y
428CONFIG_IPV6_TUNNEL=m 462CONFIG_IPV6_TUNNEL=m
429# CONFIG_IPV6_MULTIPLE_TABLES is not set 463# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -687,10 +721,6 @@ CONFIG_BT_HCIVHCI=m
687CONFIG_FIB_RULES=y 721CONFIG_FIB_RULES=y
688CONFIG_WIRELESS=y 722CONFIG_WIRELESS=y
689# CONFIG_CFG80211 is not set 723# CONFIG_CFG80211 is not set
690CONFIG_CFG80211_DEFAULT_PS_VALUE=0
691CONFIG_WIRELESS_OLD_REGULATORY=y
692CONFIG_WIRELESS_EXT=y
693CONFIG_WIRELESS_EXT_SYSFS=y
694# CONFIG_LIB80211 is not set 724# CONFIG_LIB80211 is not set
695 725
696# 726#
@@ -773,7 +803,6 @@ CONFIG_MTD_COMPLEX_MAPPINGS=y
773# CONFIG_MTD_PHYSMAP is not set 803# CONFIG_MTD_PHYSMAP is not set
774CONFIG_MTD_PHYSMAP_OF=y 804CONFIG_MTD_PHYSMAP_OF=y
775# CONFIG_MTD_PCI is not set 805# CONFIG_MTD_PCI is not set
776# CONFIG_MTD_GPIO_ADDR is not set
777# CONFIG_MTD_INTEL_VR_NOR is not set 806# CONFIG_MTD_INTEL_VR_NOR is not set
778# CONFIG_MTD_PLATRAM is not set 807# CONFIG_MTD_PLATRAM is not set
779 808
@@ -817,6 +846,10 @@ CONFIG_BLK_DEV=y
817# CONFIG_BLK_DEV_COW_COMMON is not set 846# CONFIG_BLK_DEV_COW_COMMON is not set
818CONFIG_BLK_DEV_LOOP=m 847CONFIG_BLK_DEV_LOOP=m
819CONFIG_BLK_DEV_CRYPTOLOOP=m 848CONFIG_BLK_DEV_CRYPTOLOOP=m
849
850#
851# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
852#
820CONFIG_BLK_DEV_NBD=m 853CONFIG_BLK_DEV_NBD=m
821# CONFIG_BLK_DEV_SX8 is not set 854# CONFIG_BLK_DEV_SX8 is not set
822# CONFIG_BLK_DEV_UB is not set 855# CONFIG_BLK_DEV_UB is not set
@@ -870,7 +903,9 @@ CONFIG_SCSI_LOWLEVEL=y
870# CONFIG_SCSI_BNX2_ISCSI is not set 903# CONFIG_SCSI_BNX2_ISCSI is not set
871# CONFIG_BE2ISCSI is not set 904# CONFIG_BE2ISCSI is not set
872CONFIG_BLK_DEV_3W_XXXX_RAID=m 905CONFIG_BLK_DEV_3W_XXXX_RAID=m
906# CONFIG_SCSI_HPSA is not set
873CONFIG_SCSI_3W_9XXX=m 907CONFIG_SCSI_3W_9XXX=m
908# CONFIG_SCSI_3W_SAS is not set
874CONFIG_SCSI_ACARD=m 909CONFIG_SCSI_ACARD=m
875CONFIG_SCSI_AACRAID=m 910CONFIG_SCSI_AACRAID=m
876CONFIG_SCSI_AIC7XXX=m 911CONFIG_SCSI_AIC7XXX=m
@@ -925,6 +960,7 @@ CONFIG_SCSI_LPFC=m
925# CONFIG_SCSI_NSP32 is not set 960# CONFIG_SCSI_NSP32 is not set
926# CONFIG_SCSI_DEBUG is not set 961# CONFIG_SCSI_DEBUG is not set
927# CONFIG_SCSI_PMCRAID is not set 962# CONFIG_SCSI_PMCRAID is not set
963# CONFIG_SCSI_PM8001 is not set
928# CONFIG_SCSI_SRP is not set 964# CONFIG_SCSI_SRP is not set
929# CONFIG_SCSI_BFA_FC is not set 965# CONFIG_SCSI_BFA_FC is not set
930# CONFIG_SCSI_DH is not set 966# CONFIG_SCSI_DH is not set
@@ -942,7 +978,7 @@ CONFIG_SCSI_LPFC=m
942# 978#
943 979
944# 980#
945# See the help texts for more information. 981# The newer stack is recommended.
946# 982#
947# CONFIG_FIREWIRE is not set 983# CONFIG_FIREWIRE is not set
948# CONFIG_IEEE1394 is not set 984# CONFIG_IEEE1394 is not set
@@ -1027,8 +1063,11 @@ CONFIG_MV643XX_ETH=y
1027# CONFIG_NETDEV_10000 is not set 1063# CONFIG_NETDEV_10000 is not set
1028# CONFIG_TR is not set 1064# CONFIG_TR is not set
1029CONFIG_WLAN=y 1065CONFIG_WLAN=y
1030# CONFIG_WLAN_PRE80211 is not set 1066# CONFIG_AIRO is not set
1031# CONFIG_WLAN_80211 is not set 1067# CONFIG_ATMEL is not set
1068# CONFIG_PRISM54 is not set
1069# CONFIG_USB_ZD1201 is not set
1070# CONFIG_HOSTAP is not set
1032 1071
1033# 1072#
1034# Enable WiMAX (Networking options) to see the WiMAX drivers 1073# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -1054,6 +1093,7 @@ CONFIG_NETCONSOLE=m
1054CONFIG_NETPOLL=y 1093CONFIG_NETPOLL=y
1055CONFIG_NETPOLL_TRAP=y 1094CONFIG_NETPOLL_TRAP=y
1056CONFIG_NET_POLL_CONTROLLER=y 1095CONFIG_NET_POLL_CONTROLLER=y
1096# CONFIG_VMXNET3 is not set
1057# CONFIG_ISDN is not set 1097# CONFIG_ISDN is not set
1058# CONFIG_PHONE is not set 1098# CONFIG_PHONE is not set
1059 1099
@@ -1063,6 +1103,7 @@ CONFIG_NET_POLL_CONTROLLER=y
1063CONFIG_INPUT=y 1103CONFIG_INPUT=y
1064# CONFIG_INPUT_FF_MEMLESS is not set 1104# CONFIG_INPUT_FF_MEMLESS is not set
1065# CONFIG_INPUT_POLLDEV is not set 1105# CONFIG_INPUT_POLLDEV is not set
1106# CONFIG_INPUT_SPARSEKMAP is not set
1066 1107
1067# 1108#
1068# Userland interfaces 1109# Userland interfaces
@@ -1121,8 +1162,6 @@ CONFIG_SERIAL_NONSTANDARD=y
1121# CONFIG_N_HDLC is not set 1162# CONFIG_N_HDLC is not set
1122# CONFIG_RISCOM8 is not set 1163# CONFIG_RISCOM8 is not set
1123# CONFIG_SPECIALIX is not set 1164# CONFIG_SPECIALIX is not set
1124# CONFIG_SX is not set
1125# CONFIG_RIO is not set
1126# CONFIG_STALDRV is not set 1165# CONFIG_STALDRV is not set
1127# CONFIG_NOZOMI is not set 1166# CONFIG_NOZOMI is not set
1128 1167
@@ -1140,6 +1179,7 @@ CONFIG_SERIAL_MPSC_CONSOLE=y
1140CONFIG_SERIAL_CORE=y 1179CONFIG_SERIAL_CORE=y
1141CONFIG_SERIAL_CORE_CONSOLE=y 1180CONFIG_SERIAL_CORE_CONSOLE=y
1142# CONFIG_SERIAL_JSM is not set 1181# CONFIG_SERIAL_JSM is not set
1182# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
1143CONFIG_UNIX98_PTYS=y 1183CONFIG_UNIX98_PTYS=y
1144# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1184# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
1145# CONFIG_LEGACY_PTYS is not set 1185# CONFIG_LEGACY_PTYS is not set
@@ -1200,11 +1240,6 @@ CONFIG_I2C_MV64XXX=m
1200# CONFIG_I2C_TINY_USB is not set 1240# CONFIG_I2C_TINY_USB is not set
1201 1241
1202# 1242#
1203# Graphics adapter I2C/DDC channel drivers
1204#
1205# CONFIG_I2C_VOODOO3 is not set
1206
1207#
1208# Other I2C/SMBus bus drivers 1243# Other I2C/SMBus bus drivers
1209# 1244#
1210# CONFIG_I2C_PCA_PLATFORM is not set 1245# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1213,7 +1248,6 @@ CONFIG_I2C_MV64XXX=m
1213# 1248#
1214# Miscellaneous I2C Chip support 1249# Miscellaneous I2C Chip support
1215# 1250#
1216# CONFIG_DS1682 is not set
1217# CONFIG_SENSORS_TSL2550 is not set 1251# CONFIG_SENSORS_TSL2550 is not set
1218# CONFIG_I2C_DEBUG_CORE is not set 1252# CONFIG_I2C_DEBUG_CORE is not set
1219# CONFIG_I2C_DEBUG_ALGO is not set 1253# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1259,6 +1293,7 @@ CONFIG_SENSORS_GL518SM=m
1259# CONFIG_SENSORS_GL520SM is not set 1293# CONFIG_SENSORS_GL520SM is not set
1260CONFIG_SENSORS_IT87=m 1294CONFIG_SENSORS_IT87=m
1261# CONFIG_SENSORS_LM63 is not set 1295# CONFIG_SENSORS_LM63 is not set
1296# CONFIG_SENSORS_LM73 is not set
1262CONFIG_SENSORS_LM75=m 1297CONFIG_SENSORS_LM75=m
1263CONFIG_SENSORS_LM77=m 1298CONFIG_SENSORS_LM77=m
1264CONFIG_SENSORS_LM78=m 1299CONFIG_SENSORS_LM78=m
@@ -1297,6 +1332,7 @@ CONFIG_SENSORS_W83L785TS=m
1297# CONFIG_SENSORS_W83L786NG is not set 1332# CONFIG_SENSORS_W83L786NG is not set
1298CONFIG_SENSORS_W83627HF=m 1333CONFIG_SENSORS_W83627HF=m
1299# CONFIG_SENSORS_W83627EHF is not set 1334# CONFIG_SENSORS_W83627EHF is not set
1335# CONFIG_SENSORS_LIS3_I2C is not set
1300# CONFIG_THERMAL is not set 1336# CONFIG_THERMAL is not set
1301CONFIG_WATCHDOG=y 1337CONFIG_WATCHDOG=y
1302# CONFIG_WATCHDOG_NOWAYOUT is not set 1338# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1333,7 +1369,6 @@ CONFIG_SSB_POSSIBLE=y
1333# CONFIG_HTC_PASIC3 is not set 1369# CONFIG_HTC_PASIC3 is not set
1334# CONFIG_MFD_TMIO is not set 1370# CONFIG_MFD_TMIO is not set
1335# CONFIG_MFD_WM8400 is not set 1371# CONFIG_MFD_WM8400 is not set
1336# CONFIG_MFD_WM831X is not set
1337# CONFIG_MFD_WM8350_I2C is not set 1372# CONFIG_MFD_WM8350_I2C is not set
1338# CONFIG_MFD_PCF50633 is not set 1373# CONFIG_MFD_PCF50633 is not set
1339# CONFIG_AB3100_CORE is not set 1374# CONFIG_AB3100_CORE is not set
@@ -1392,6 +1427,7 @@ CONFIG_USB_MON=m
1392CONFIG_USB_EHCI_HCD=m 1427CONFIG_USB_EHCI_HCD=m
1393CONFIG_USB_EHCI_ROOT_HUB_TT=y 1428CONFIG_USB_EHCI_ROOT_HUB_TT=y
1394# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1429# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1430# CONFIG_XPS_USB_HCD_XILINX is not set
1395CONFIG_USB_EHCI_HCD_PPC_OF=y 1431CONFIG_USB_EHCI_HCD_PPC_OF=y
1396# CONFIG_USB_OXU210HP_HCD is not set 1432# CONFIG_USB_OXU210HP_HCD is not set
1397# CONFIG_USB_ISP116X_HCD is not set 1433# CONFIG_USB_ISP116X_HCD is not set
@@ -1923,7 +1959,6 @@ CONFIG_SECURITY=y
1923CONFIG_SECURITY_NETWORK=y 1959CONFIG_SECURITY_NETWORK=y
1924# CONFIG_SECURITY_NETWORK_XFRM is not set 1960# CONFIG_SECURITY_NETWORK_XFRM is not set
1925# CONFIG_SECURITY_PATH is not set 1961# CONFIG_SECURITY_PATH is not set
1926# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1927CONFIG_LSM_MMAP_MIN_ADDR=65536 1962CONFIG_LSM_MMAP_MIN_ADDR=65536
1928CONFIG_SECURITY_SELINUX=y 1963CONFIG_SECURITY_SELINUX=y
1929CONFIG_SECURITY_SELINUX_BOOTPARAM=y 1964CONFIG_SECURITY_SELINUX_BOOTPARAM=y
@@ -1934,6 +1969,11 @@ CONFIG_SECURITY_SELINUX_AVC_STATS=y
1934CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 1969CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
1935# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set 1970# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set
1936# CONFIG_SECURITY_TOMOYO is not set 1971# CONFIG_SECURITY_TOMOYO is not set
1972CONFIG_DEFAULT_SECURITY_SELINUX=y
1973# CONFIG_DEFAULT_SECURITY_SMACK is not set
1974# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1975# CONFIG_DEFAULT_SECURITY_DAC is not set
1976CONFIG_DEFAULT_SECURITY="selinux"
1937CONFIG_CRYPTO=y 1977CONFIG_CRYPTO=y
1938 1978
1939# 1979#
diff --git a/arch/powerpc/configs/ep8248e_defconfig b/arch/powerpc/configs/ep8248e_defconfig
index ef5edc7203f5..79105413884e 100644
--- a/arch/powerpc/configs/ep8248e_defconfig
+++ b/arch/powerpc/configs/ep8248e_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:06 2009 4# Wed Jan 6 09:23:59 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61# CONFIG_DEFAULT_UIMAGE is not set 62# CONFIG_DEFAULT_UIMAGE is not set
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62# CONFIG_PPC_DCR_NATIVE is not set 64# CONFIG_PPC_DCR_NATIVE is not set
63# CONFIG_PPC_DCR_MMIO is not set 65# CONFIG_PPC_DCR_MMIO is not set
64CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -85,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
85# 87#
86CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
88# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
89CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
90# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -160,14 +163,41 @@ CONFIG_BLK_DEV_BSG=y
160# IO Schedulers 163# IO Schedulers
161# 164#
162CONFIG_IOSCHED_NOOP=y 165CONFIG_IOSCHED_NOOP=y
163# CONFIG_IOSCHED_AS is not set
164CONFIG_IOSCHED_DEADLINE=y 166CONFIG_IOSCHED_DEADLINE=y
165# CONFIG_IOSCHED_CFQ is not set 167# CONFIG_IOSCHED_CFQ is not set
166# CONFIG_DEFAULT_AS is not set
167CONFIG_DEFAULT_DEADLINE=y 168CONFIG_DEFAULT_DEADLINE=y
168# CONFIG_DEFAULT_CFQ is not set 169# CONFIG_DEFAULT_CFQ is not set
169# CONFIG_DEFAULT_NOOP is not set 170# CONFIG_DEFAULT_NOOP is not set
170CONFIG_DEFAULT_IOSCHED="deadline" 171CONFIG_DEFAULT_IOSCHED="deadline"
172# CONFIG_INLINE_SPIN_TRYLOCK is not set
173# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
174# CONFIG_INLINE_SPIN_LOCK is not set
175# CONFIG_INLINE_SPIN_LOCK_BH is not set
176# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
177# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
178CONFIG_INLINE_SPIN_UNLOCK=y
179# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
180CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
181# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
182# CONFIG_INLINE_READ_TRYLOCK is not set
183# CONFIG_INLINE_READ_LOCK is not set
184# CONFIG_INLINE_READ_LOCK_BH is not set
185# CONFIG_INLINE_READ_LOCK_IRQ is not set
186# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
187CONFIG_INLINE_READ_UNLOCK=y
188# CONFIG_INLINE_READ_UNLOCK_BH is not set
189CONFIG_INLINE_READ_UNLOCK_IRQ=y
190# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
191# CONFIG_INLINE_WRITE_TRYLOCK is not set
192# CONFIG_INLINE_WRITE_LOCK is not set
193# CONFIG_INLINE_WRITE_LOCK_BH is not set
194# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
195# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
196CONFIG_INLINE_WRITE_UNLOCK=y
197# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
198CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
199# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
200# CONFIG_MUTEX_SPIN_ON_OWNER is not set
171# CONFIG_FREEZER is not set 201# CONFIG_FREEZER is not set
172 202
173# 203#
@@ -237,6 +267,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
237CONFIG_ARCH_HAS_WALK_MEMORY=y 267CONFIG_ARCH_HAS_WALK_MEMORY=y
238CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 268CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
239# CONFIG_CRASH_DUMP is not set 269# CONFIG_CRASH_DUMP is not set
270CONFIG_SPARSE_IRQ=y
240CONFIG_MAX_ACTIVE_REGIONS=32 271CONFIG_MAX_ACTIVE_REGIONS=32
241CONFIG_ARCH_FLATMEM_ENABLE=y 272CONFIG_ARCH_FLATMEM_ENABLE=y
242CONFIG_ARCH_POPULATES_NODE_MAP=y 273CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -249,8 +280,6 @@ CONFIG_MIGRATION=y
249CONFIG_ZONE_DMA_FLAG=1 280CONFIG_ZONE_DMA_FLAG=1
250CONFIG_BOUNCE=y 281CONFIG_BOUNCE=y
251CONFIG_VIRT_TO_BUS=y 282CONFIG_VIRT_TO_BUS=y
252CONFIG_HAVE_MLOCK=y
253CONFIG_HAVE_MLOCKED_PAGE_BIT=y
254# CONFIG_KSM is not set 283# CONFIG_KSM is not set
255CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 284CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
256CONFIG_PPC_4K_PAGES=y 285CONFIG_PPC_4K_PAGES=y
@@ -400,9 +429,6 @@ CONFIG_NETFILTER_ADVANCED=y
400# CONFIG_BT is not set 429# CONFIG_BT is not set
401CONFIG_WIRELESS=y 430CONFIG_WIRELESS=y
402# CONFIG_CFG80211 is not set 431# CONFIG_CFG80211 is not set
403CONFIG_CFG80211_DEFAULT_PS_VALUE=0
404CONFIG_WIRELESS_OLD_REGULATORY=y
405# CONFIG_WIRELESS_EXT is not set
406# CONFIG_LIB80211 is not set 432# CONFIG_LIB80211 is not set
407 433
408# 434#
@@ -523,6 +549,10 @@ CONFIG_BLK_DEV=y
523# CONFIG_BLK_DEV_COW_COMMON is not set 549# CONFIG_BLK_DEV_COW_COMMON is not set
524CONFIG_BLK_DEV_LOOP=y 550CONFIG_BLK_DEV_LOOP=y
525# CONFIG_BLK_DEV_CRYPTOLOOP is not set 551# CONFIG_BLK_DEV_CRYPTOLOOP is not set
552
553#
554# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
555#
526# CONFIG_BLK_DEV_NBD is not set 556# CONFIG_BLK_DEV_NBD is not set
527# CONFIG_BLK_DEV_SX8 is not set 557# CONFIG_BLK_DEV_SX8 is not set
528# CONFIG_BLK_DEV_RAM is not set 558# CONFIG_BLK_DEV_RAM is not set
@@ -553,7 +583,7 @@ CONFIG_HAVE_IDE=y
553# 583#
554 584
555# 585#
556# See the help texts for more information. 586# The newer stack is recommended.
557# 587#
558# CONFIG_FIREWIRE is not set 588# CONFIG_FIREWIRE is not set
559# CONFIG_IEEE1394 is not set 589# CONFIG_IEEE1394 is not set
@@ -658,8 +688,9 @@ CONFIG_CHELSIO_T3_DEPENDS=y
658# CONFIG_BE2NET is not set 688# CONFIG_BE2NET is not set
659# CONFIG_TR is not set 689# CONFIG_TR is not set
660CONFIG_WLAN=y 690CONFIG_WLAN=y
661# CONFIG_WLAN_PRE80211 is not set 691# CONFIG_AIRO is not set
662# CONFIG_WLAN_80211 is not set 692# CONFIG_ATMEL is not set
693# CONFIG_HOSTAP is not set
663 694
664# 695#
665# Enable WiMAX (Networking options) to see the WiMAX drivers 696# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -670,6 +701,7 @@ CONFIG_WLAN=y
670# CONFIG_SLIP is not set 701# CONFIG_SLIP is not set
671# CONFIG_NETPOLL is not set 702# CONFIG_NETPOLL is not set
672# CONFIG_NET_POLL_CONTROLLER is not set 703# CONFIG_NET_POLL_CONTROLLER is not set
704# CONFIG_VMXNET3 is not set
673# CONFIG_ISDN is not set 705# CONFIG_ISDN is not set
674# CONFIG_PHONE is not set 706# CONFIG_PHONE is not set
675 707
@@ -705,6 +737,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
705CONFIG_SERIAL_CPM=y 737CONFIG_SERIAL_CPM=y
706CONFIG_SERIAL_CPM_CONSOLE=y 738CONFIG_SERIAL_CPM_CONSOLE=y
707# CONFIG_SERIAL_JSM is not set 739# CONFIG_SERIAL_JSM is not set
740# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
708CONFIG_UNIX98_PTYS=y 741CONFIG_UNIX98_PTYS=y
709# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 742# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
710CONFIG_LEGACY_PTYS=y 743CONFIG_LEGACY_PTYS=y
@@ -741,6 +774,7 @@ CONFIG_GPIOLIB=y
741# 774#
742# PCI GPIO expanders: 775# PCI GPIO expanders:
743# 776#
777# CONFIG_GPIO_CS5535 is not set
744# CONFIG_GPIO_BT8XX is not set 778# CONFIG_GPIO_BT8XX is not set
745# CONFIG_GPIO_LANGWELL is not set 779# CONFIG_GPIO_LANGWELL is not set
746 780
@@ -1061,7 +1095,11 @@ CONFIG_BDI_SWITCH=y
1061# CONFIG_KEYS is not set 1095# CONFIG_KEYS is not set
1062# CONFIG_SECURITY is not set 1096# CONFIG_SECURITY is not set
1063# CONFIG_SECURITYFS is not set 1097# CONFIG_SECURITYFS is not set
1064# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1098# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1099# CONFIG_DEFAULT_SECURITY_SMACK is not set
1100# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1101CONFIG_DEFAULT_SECURITY_DAC=y
1102CONFIG_DEFAULT_SECURITY=""
1065CONFIG_CRYPTO=y 1103CONFIG_CRYPTO=y
1066 1104
1067# 1105#
diff --git a/arch/powerpc/configs/ep88xc_defconfig b/arch/powerpc/configs/ep88xc_defconfig
index 73ef9be41280..58f7ca71a59d 100644
--- a/arch/powerpc/configs/ep88xc_defconfig
+++ b/arch/powerpc/configs/ep88xc_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:07 2009 4# Wed Jan 6 09:24:00 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -32,6 +32,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
37CONFIG_TRACE_IRQFLAGS_SUPPORT=y 38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -54,6 +55,7 @@ CONFIG_AUDIT_ARCH=y
54CONFIG_GENERIC_BUG=y 55CONFIG_GENERIC_BUG=y
55CONFIG_DTC=y 56CONFIG_DTC=y
56# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
57# CONFIG_PPC_DCR_NATIVE is not set 59# CONFIG_PPC_DCR_NATIVE is not set
58# CONFIG_PPC_DCR_MMIO is not set 60# CONFIG_PPC_DCR_MMIO is not set
59CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 61CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -81,6 +83,7 @@ CONFIG_SYSVIPC_SYSCTL=y
81# 83#
82CONFIG_TREE_RCU=y 84CONFIG_TREE_RCU=y
83# CONFIG_TREE_PREEMPT_RCU is not set 85# CONFIG_TREE_PREEMPT_RCU is not set
86# CONFIG_TINY_RCU is not set
84# CONFIG_RCU_TRACE is not set 87# CONFIG_RCU_TRACE is not set
85CONFIG_RCU_FANOUT=32 88CONFIG_RCU_FANOUT=32
86# CONFIG_RCU_FANOUT_EXACT is not set 89# CONFIG_RCU_FANOUT_EXACT is not set
@@ -159,14 +162,41 @@ CONFIG_LBDAF=y
159# IO Schedulers 162# IO Schedulers
160# 163#
161CONFIG_IOSCHED_NOOP=y 164CONFIG_IOSCHED_NOOP=y
162# CONFIG_IOSCHED_AS is not set
163CONFIG_IOSCHED_DEADLINE=y 165CONFIG_IOSCHED_DEADLINE=y
164# CONFIG_IOSCHED_CFQ is not set 166# CONFIG_IOSCHED_CFQ is not set
165# CONFIG_DEFAULT_AS is not set
166CONFIG_DEFAULT_DEADLINE=y 167CONFIG_DEFAULT_DEADLINE=y
167# CONFIG_DEFAULT_CFQ is not set 168# CONFIG_DEFAULT_CFQ is not set
168# CONFIG_DEFAULT_NOOP is not set 169# CONFIG_DEFAULT_NOOP is not set
169CONFIG_DEFAULT_IOSCHED="deadline" 170CONFIG_DEFAULT_IOSCHED="deadline"
171# CONFIG_INLINE_SPIN_TRYLOCK is not set
172# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
173# CONFIG_INLINE_SPIN_LOCK is not set
174# CONFIG_INLINE_SPIN_LOCK_BH is not set
175# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
176# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
177CONFIG_INLINE_SPIN_UNLOCK=y
178# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
179CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
180# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
181# CONFIG_INLINE_READ_TRYLOCK is not set
182# CONFIG_INLINE_READ_LOCK is not set
183# CONFIG_INLINE_READ_LOCK_BH is not set
184# CONFIG_INLINE_READ_LOCK_IRQ is not set
185# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
186CONFIG_INLINE_READ_UNLOCK=y
187# CONFIG_INLINE_READ_UNLOCK_BH is not set
188CONFIG_INLINE_READ_UNLOCK_IRQ=y
189# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
190# CONFIG_INLINE_WRITE_TRYLOCK is not set
191# CONFIG_INLINE_WRITE_LOCK is not set
192# CONFIG_INLINE_WRITE_LOCK_BH is not set
193# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
194# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
195CONFIG_INLINE_WRITE_UNLOCK=y
196# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
197CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
198# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
199# CONFIG_MUTEX_SPIN_ON_OWNER is not set
170# CONFIG_FREEZER is not set 200# CONFIG_FREEZER is not set
171 201
172# 202#
@@ -241,6 +271,7 @@ CONFIG_8XX_MINIMAL_FPEMU=y
241CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 271CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
242CONFIG_ARCH_HAS_WALK_MEMORY=y 272CONFIG_ARCH_HAS_WALK_MEMORY=y
243CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 273CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
274CONFIG_SPARSE_IRQ=y
244CONFIG_MAX_ACTIVE_REGIONS=32 275CONFIG_MAX_ACTIVE_REGIONS=32
245CONFIG_ARCH_FLATMEM_ENABLE=y 276CONFIG_ARCH_FLATMEM_ENABLE=y
246CONFIG_ARCH_POPULATES_NODE_MAP=y 277CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -257,8 +288,6 @@ CONFIG_MIGRATION=y
257CONFIG_ZONE_DMA_FLAG=1 288CONFIG_ZONE_DMA_FLAG=1
258CONFIG_BOUNCE=y 289CONFIG_BOUNCE=y
259CONFIG_VIRT_TO_BUS=y 290CONFIG_VIRT_TO_BUS=y
260CONFIG_HAVE_MLOCK=y
261CONFIG_HAVE_MLOCKED_PAGE_BIT=y
262# CONFIG_KSM is not set 291# CONFIG_KSM is not set
263CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 292CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
264CONFIG_PPC_4K_PAGES=y 293CONFIG_PPC_4K_PAGES=y
@@ -372,9 +401,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
372# CONFIG_AF_RXRPC is not set 401# CONFIG_AF_RXRPC is not set
373CONFIG_WIRELESS=y 402CONFIG_WIRELESS=y
374# CONFIG_CFG80211 is not set 403# CONFIG_CFG80211 is not set
375CONFIG_CFG80211_DEFAULT_PS_VALUE=0
376CONFIG_WIRELESS_OLD_REGULATORY=y
377# CONFIG_WIRELESS_EXT is not set
378# CONFIG_LIB80211 is not set 404# CONFIG_LIB80211 is not set
379 405
380# 406#
@@ -545,8 +571,7 @@ CONFIG_FS_ENET_MDIO_FEC=y
545# CONFIG_NETDEV_1000 is not set 571# CONFIG_NETDEV_1000 is not set
546# CONFIG_NETDEV_10000 is not set 572# CONFIG_NETDEV_10000 is not set
547CONFIG_WLAN=y 573CONFIG_WLAN=y
548# CONFIG_WLAN_PRE80211 is not set 574# CONFIG_HOSTAP is not set
549# CONFIG_WLAN_80211 is not set
550 575
551# 576#
552# Enable WiMAX (Networking options) to see the WiMAX drivers 577# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -591,6 +616,7 @@ CONFIG_SERIAL_CORE=y
591CONFIG_SERIAL_CORE_CONSOLE=y 616CONFIG_SERIAL_CORE_CONSOLE=y
592CONFIG_SERIAL_CPM=y 617CONFIG_SERIAL_CPM=y
593CONFIG_SERIAL_CPM_CONSOLE=y 618CONFIG_SERIAL_CPM_CONSOLE=y
619# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
594CONFIG_UNIX98_PTYS=y 620CONFIG_UNIX98_PTYS=y
595# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 621# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
596# CONFIG_LEGACY_PTYS is not set 622# CONFIG_LEGACY_PTYS is not set
@@ -851,6 +877,7 @@ CONFIG_DEBUG_INFO=y
851# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 877# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
852# CONFIG_FAULT_INJECTION is not set 878# CONFIG_FAULT_INJECTION is not set
853# CONFIG_LATENCYTOP is not set 879# CONFIG_LATENCYTOP is not set
880# CONFIG_SYSCTL_SYSCALL_CHECK is not set
854# CONFIG_DEBUG_PAGEALLOC is not set 881# CONFIG_DEBUG_PAGEALLOC is not set
855CONFIG_HAVE_FUNCTION_TRACER=y 882CONFIG_HAVE_FUNCTION_TRACER=y
856CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 883CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -893,7 +920,11 @@ CONFIG_PRINT_STACK_DEPTH=64
893# CONFIG_KEYS is not set 920# CONFIG_KEYS is not set
894# CONFIG_SECURITY is not set 921# CONFIG_SECURITY is not set
895# CONFIG_SECURITYFS is not set 922# CONFIG_SECURITYFS is not set
896# CONFIG_SECURITY_FILE_CAPABILITIES is not set 923# CONFIG_DEFAULT_SECURITY_SELINUX is not set
924# CONFIG_DEFAULT_SECURITY_SMACK is not set
925# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
926CONFIG_DEFAULT_SECURITY_DAC=y
927CONFIG_DEFAULT_SECURITY=""
897# CONFIG_CRYPTO is not set 928# CONFIG_CRYPTO is not set
898CONFIG_PPC_CLOCK=y 929CONFIG_PPC_CLOCK=y
899CONFIG_PPC_LIB_RHEAP=y 930CONFIG_PPC_LIB_RHEAP=y
diff --git a/arch/powerpc/configs/linkstation_defconfig b/arch/powerpc/configs/linkstation_defconfig
index 63c3e8de8f16..9a0c981277eb 100644
--- a/arch/powerpc/configs/linkstation_defconfig
+++ b/arch/powerpc/configs/linkstation_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:08 2009 4# Wed Jan 6 09:24:01 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -58,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
58CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y 60CONFIG_DTC=y
60CONFIG_DEFAULT_UIMAGE=y 61CONFIG_DEFAULT_UIMAGE=y
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
61# CONFIG_PPC_DCR_NATIVE is not set 63# CONFIG_PPC_DCR_NATIVE is not set
62# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
63CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -86,6 +88,7 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
86# 88#
87CONFIG_TREE_RCU=y 89CONFIG_TREE_RCU=y
88# CONFIG_TREE_PREEMPT_RCU is not set 90# CONFIG_TREE_PREEMPT_RCU is not set
91# CONFIG_TINY_RCU is not set
89# CONFIG_RCU_TRACE is not set 92# CONFIG_RCU_TRACE is not set
90CONFIG_RCU_FANOUT=32 93CONFIG_RCU_FANOUT=32
91# CONFIG_RCU_FANOUT_EXACT is not set 94# CONFIG_RCU_FANOUT_EXACT is not set
@@ -181,14 +184,41 @@ CONFIG_LBDAF=y
181# IO Schedulers 184# IO Schedulers
182# 185#
183CONFIG_IOSCHED_NOOP=y 186CONFIG_IOSCHED_NOOP=y
184CONFIG_IOSCHED_AS=y
185CONFIG_IOSCHED_DEADLINE=y 187CONFIG_IOSCHED_DEADLINE=y
186CONFIG_IOSCHED_CFQ=y 188CONFIG_IOSCHED_CFQ=y
187CONFIG_DEFAULT_AS=y
188# CONFIG_DEFAULT_DEADLINE is not set 189# CONFIG_DEFAULT_DEADLINE is not set
189# CONFIG_DEFAULT_CFQ is not set 190CONFIG_DEFAULT_CFQ=y
190# CONFIG_DEFAULT_NOOP is not set 191# CONFIG_DEFAULT_NOOP is not set
191CONFIG_DEFAULT_IOSCHED="anticipatory" 192CONFIG_DEFAULT_IOSCHED="cfq"
193# CONFIG_INLINE_SPIN_TRYLOCK is not set
194# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
195# CONFIG_INLINE_SPIN_LOCK is not set
196# CONFIG_INLINE_SPIN_LOCK_BH is not set
197# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
198# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
199CONFIG_INLINE_SPIN_UNLOCK=y
200# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
201CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
202# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
203# CONFIG_INLINE_READ_TRYLOCK is not set
204# CONFIG_INLINE_READ_LOCK is not set
205# CONFIG_INLINE_READ_LOCK_BH is not set
206# CONFIG_INLINE_READ_LOCK_IRQ is not set
207# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
208CONFIG_INLINE_READ_UNLOCK=y
209# CONFIG_INLINE_READ_UNLOCK_BH is not set
210CONFIG_INLINE_READ_UNLOCK_IRQ=y
211# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
212# CONFIG_INLINE_WRITE_TRYLOCK is not set
213# CONFIG_INLINE_WRITE_LOCK is not set
214# CONFIG_INLINE_WRITE_LOCK_BH is not set
215# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
216# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
217CONFIG_INLINE_WRITE_UNLOCK=y
218# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
219CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
220# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
221# CONFIG_MUTEX_SPIN_ON_OWNER is not set
192# CONFIG_FREEZER is not set 222# CONFIG_FREEZER is not set
193 223
194# 224#
@@ -215,6 +245,8 @@ CONFIG_LINKSTATION=y
215CONFIG_MPC10X_BRIDGE=y 245CONFIG_MPC10X_BRIDGE=y
216CONFIG_MPC10X_OPENPIC=y 246CONFIG_MPC10X_OPENPIC=y
217# CONFIG_MPC10X_STORE_GATHERING is not set 247# CONFIG_MPC10X_STORE_GATHERING is not set
248# CONFIG_GAMECUBE is not set
249# CONFIG_WII is not set
218# CONFIG_AMIGAONE is not set 250# CONFIG_AMIGAONE is not set
219CONFIG_PPC_OF_BOOT_TRAMPOLINE=y 251CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
220# CONFIG_IPIC is not set 252# CONFIG_IPIC is not set
@@ -261,6 +293,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
261CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 293CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
262# CONFIG_KEXEC is not set 294# CONFIG_KEXEC is not set
263# CONFIG_CRASH_DUMP is not set 295# CONFIG_CRASH_DUMP is not set
296CONFIG_SPARSE_IRQ=y
264CONFIG_MAX_ACTIVE_REGIONS=32 297CONFIG_MAX_ACTIVE_REGIONS=32
265CONFIG_ARCH_FLATMEM_ENABLE=y 298CONFIG_ARCH_FLATMEM_ENABLE=y
266CONFIG_ARCH_POPULATES_NODE_MAP=y 299CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -277,8 +310,6 @@ CONFIG_MIGRATION=y
277CONFIG_ZONE_DMA_FLAG=1 310CONFIG_ZONE_DMA_FLAG=1
278CONFIG_BOUNCE=y 311CONFIG_BOUNCE=y
279CONFIG_VIRT_TO_BUS=y 312CONFIG_VIRT_TO_BUS=y
280CONFIG_HAVE_MLOCK=y
281CONFIG_HAVE_MLOCKED_PAGE_BIT=y
282# CONFIG_KSM is not set 313# CONFIG_KSM is not set
283CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 314CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
284CONFIG_PPC_4K_PAGES=y 315CONFIG_PPC_4K_PAGES=y
@@ -517,10 +548,6 @@ CONFIG_IP_NF_ARP_MANGLE=m
517# CONFIG_AF_RXRPC is not set 548# CONFIG_AF_RXRPC is not set
518CONFIG_WIRELESS=y 549CONFIG_WIRELESS=y
519# CONFIG_CFG80211 is not set 550# CONFIG_CFG80211 is not set
520CONFIG_CFG80211_DEFAULT_PS_VALUE=0
521CONFIG_WIRELESS_OLD_REGULATORY=y
522CONFIG_WIRELESS_EXT=y
523CONFIG_WIRELESS_EXT_SYSFS=y
524# CONFIG_LIB80211 is not set 551# CONFIG_LIB80211 is not set
525 552
526# 553#
@@ -650,6 +677,10 @@ CONFIG_BLK_DEV=y
650# CONFIG_BLK_DEV_COW_COMMON is not set 677# CONFIG_BLK_DEV_COW_COMMON is not set
651CONFIG_BLK_DEV_LOOP=y 678CONFIG_BLK_DEV_LOOP=y
652# CONFIG_BLK_DEV_CRYPTOLOOP is not set 679# CONFIG_BLK_DEV_CRYPTOLOOP is not set
680
681#
682# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
683#
653# CONFIG_BLK_DEV_NBD is not set 684# CONFIG_BLK_DEV_NBD is not set
654# CONFIG_BLK_DEV_SX8 is not set 685# CONFIG_BLK_DEV_SX8 is not set
655# CONFIG_BLK_DEV_UB is not set 686# CONFIG_BLK_DEV_UB is not set
@@ -661,6 +692,7 @@ CONFIG_BLK_DEV_RAM_SIZE=8192
661# CONFIG_ATA_OVER_ETH is not set 692# CONFIG_ATA_OVER_ETH is not set
662# CONFIG_BLK_DEV_HD is not set 693# CONFIG_BLK_DEV_HD is not set
663CONFIG_MISC_DEVICES=y 694CONFIG_MISC_DEVICES=y
695# CONFIG_AD525X_DPOT is not set
664# CONFIG_PHANTOM is not set 696# CONFIG_PHANTOM is not set
665# CONFIG_SGI_IOC4 is not set 697# CONFIG_SGI_IOC4 is not set
666# CONFIG_TIFM_CORE is not set 698# CONFIG_TIFM_CORE is not set
@@ -668,6 +700,7 @@ CONFIG_MISC_DEVICES=y
668# CONFIG_ENCLOSURE_SERVICES is not set 700# CONFIG_ENCLOSURE_SERVICES is not set
669# CONFIG_HP_ILO is not set 701# CONFIG_HP_ILO is not set
670# CONFIG_ISL29003 is not set 702# CONFIG_ISL29003 is not set
703# CONFIG_DS1682 is not set
671# CONFIG_C2PORT is not set 704# CONFIG_C2PORT is not set
672 705
673# 706#
@@ -720,7 +753,9 @@ CONFIG_SCSI_LOWLEVEL=y
720# CONFIG_SCSI_BNX2_ISCSI is not set 753# CONFIG_SCSI_BNX2_ISCSI is not set
721# CONFIG_BE2ISCSI is not set 754# CONFIG_BE2ISCSI is not set
722# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 755# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
756# CONFIG_SCSI_HPSA is not set
723# CONFIG_SCSI_3W_9XXX is not set 757# CONFIG_SCSI_3W_9XXX is not set
758# CONFIG_SCSI_3W_SAS is not set
724# CONFIG_SCSI_ACARD is not set 759# CONFIG_SCSI_ACARD is not set
725# CONFIG_SCSI_AACRAID is not set 760# CONFIG_SCSI_AACRAID is not set
726# CONFIG_SCSI_AIC7XXX is not set 761# CONFIG_SCSI_AIC7XXX is not set
@@ -759,6 +794,7 @@ CONFIG_SCSI_LOWLEVEL=y
759# CONFIG_SCSI_NSP32 is not set 794# CONFIG_SCSI_NSP32 is not set
760# CONFIG_SCSI_DEBUG is not set 795# CONFIG_SCSI_DEBUG is not set
761# CONFIG_SCSI_PMCRAID is not set 796# CONFIG_SCSI_PMCRAID is not set
797# CONFIG_SCSI_PM8001 is not set
762# CONFIG_SCSI_SRP is not set 798# CONFIG_SCSI_SRP is not set
763# CONFIG_SCSI_BFA_FC is not set 799# CONFIG_SCSI_BFA_FC is not set
764# CONFIG_SCSI_DH is not set 800# CONFIG_SCSI_DH is not set
@@ -814,15 +850,16 @@ CONFIG_PATA_IT821X=y
814# CONFIG_PATA_NS87415 is not set 850# CONFIG_PATA_NS87415 is not set
815# CONFIG_PATA_OPTI is not set 851# CONFIG_PATA_OPTI is not set
816# CONFIG_PATA_OPTIDMA is not set 852# CONFIG_PATA_OPTIDMA is not set
853# CONFIG_PATA_PDC2027X is not set
817# CONFIG_PATA_PDC_OLD is not set 854# CONFIG_PATA_PDC_OLD is not set
818# CONFIG_PATA_RADISYS is not set 855# CONFIG_PATA_RADISYS is not set
819# CONFIG_PATA_RDC is not set 856# CONFIG_PATA_RDC is not set
820# CONFIG_PATA_RZ1000 is not set 857# CONFIG_PATA_RZ1000 is not set
821# CONFIG_PATA_SC1200 is not set 858# CONFIG_PATA_SC1200 is not set
822# CONFIG_PATA_SERVERWORKS is not set 859# CONFIG_PATA_SERVERWORKS is not set
823# CONFIG_PATA_PDC2027X is not set
824CONFIG_PATA_SIL680=y 860CONFIG_PATA_SIL680=y
825# CONFIG_PATA_SIS is not set 861# CONFIG_PATA_SIS is not set
862# CONFIG_PATA_TOSHIBA is not set
826# CONFIG_PATA_VIA is not set 863# CONFIG_PATA_VIA is not set
827# CONFIG_PATA_WINBOND is not set 864# CONFIG_PATA_WINBOND is not set
828# CONFIG_PATA_PLATFORM is not set 865# CONFIG_PATA_PLATFORM is not set
@@ -839,7 +876,7 @@ CONFIG_PATA_SIL680=y
839# 876#
840 877
841# 878#
842# See the help texts for more information. 879# The newer stack is recommended.
843# 880#
844# CONFIG_FIREWIRE is not set 881# CONFIG_FIREWIRE is not set
845# CONFIG_IEEE1394 is not set 882# CONFIG_IEEE1394 is not set
@@ -934,8 +971,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
934# CONFIG_BE2NET is not set 971# CONFIG_BE2NET is not set
935# CONFIG_TR is not set 972# CONFIG_TR is not set
936CONFIG_WLAN=y 973CONFIG_WLAN=y
937# CONFIG_WLAN_PRE80211 is not set 974# CONFIG_AIRO is not set
938# CONFIG_WLAN_80211 is not set 975# CONFIG_ATMEL is not set
976# CONFIG_PRISM54 is not set
977# CONFIG_USB_ZD1201 is not set
978# CONFIG_HOSTAP is not set
939 979
940# 980#
941# Enable WiMAX (Networking options) to see the WiMAX drivers 981# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -960,6 +1000,7 @@ CONFIG_NETCONSOLE=y
960CONFIG_NETPOLL=y 1000CONFIG_NETPOLL=y
961# CONFIG_NETPOLL_TRAP is not set 1001# CONFIG_NETPOLL_TRAP is not set
962CONFIG_NET_POLL_CONTROLLER=y 1002CONFIG_NET_POLL_CONTROLLER=y
1003# CONFIG_VMXNET3 is not set
963# CONFIG_ISDN is not set 1004# CONFIG_ISDN is not set
964# CONFIG_PHONE is not set 1005# CONFIG_PHONE is not set
965 1006
@@ -969,6 +1010,7 @@ CONFIG_NET_POLL_CONTROLLER=y
969CONFIG_INPUT=y 1010CONFIG_INPUT=y
970# CONFIG_INPUT_FF_MEMLESS is not set 1011# CONFIG_INPUT_FF_MEMLESS is not set
971# CONFIG_INPUT_POLLDEV is not set 1012# CONFIG_INPUT_POLLDEV is not set
1013# CONFIG_INPUT_SPARSEKMAP is not set
972 1014
973# 1015#
974# Userland interfaces 1016# Userland interfaces
@@ -1007,6 +1049,7 @@ CONFIG_SERIO_SERPORT=y
1007# CONFIG_SERIO_PCIPS2 is not set 1049# CONFIG_SERIO_PCIPS2 is not set
1008# CONFIG_SERIO_RAW is not set 1050# CONFIG_SERIO_RAW is not set
1009# CONFIG_SERIO_XILINX_XPS_PS2 is not set 1051# CONFIG_SERIO_XILINX_XPS_PS2 is not set
1052# CONFIG_SERIO_ALTERA_PS2 is not set
1010# CONFIG_GAMEPORT is not set 1053# CONFIG_GAMEPORT is not set
1011 1054
1012# 1055#
@@ -1039,6 +1082,7 @@ CONFIG_SERIAL_CORE=y
1039CONFIG_SERIAL_CORE_CONSOLE=y 1082CONFIG_SERIAL_CORE_CONSOLE=y
1040# CONFIG_SERIAL_JSM is not set 1083# CONFIG_SERIAL_JSM is not set
1041# CONFIG_SERIAL_OF_PLATFORM is not set 1084# CONFIG_SERIAL_OF_PLATFORM is not set
1085# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
1042CONFIG_UNIX98_PTYS=y 1086CONFIG_UNIX98_PTYS=y
1043# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1087# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
1044CONFIG_LEGACY_PTYS=y 1088CONFIG_LEGACY_PTYS=y
@@ -1096,11 +1140,6 @@ CONFIG_I2C_MPC=y
1096# CONFIG_I2C_TINY_USB is not set 1140# CONFIG_I2C_TINY_USB is not set
1097 1141
1098# 1142#
1099# Graphics adapter I2C/DDC channel drivers
1100#
1101# CONFIG_I2C_VOODOO3 is not set
1102
1103#
1104# Other I2C/SMBus bus drivers 1143# Other I2C/SMBus bus drivers
1105# 1144#
1106# CONFIG_I2C_PCA_PLATFORM is not set 1145# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1109,7 +1148,6 @@ CONFIG_I2C_MPC=y
1109# 1148#
1110# Miscellaneous I2C Chip support 1149# Miscellaneous I2C Chip support
1111# 1150#
1112# CONFIG_DS1682 is not set
1113# CONFIG_SENSORS_TSL2550 is not set 1151# CONFIG_SENSORS_TSL2550 is not set
1114# CONFIG_I2C_DEBUG_CORE is not set 1152# CONFIG_I2C_DEBUG_CORE is not set
1115# CONFIG_I2C_DEBUG_ALGO is not set 1153# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1155,6 +1193,7 @@ CONFIG_HWMON=y
1155# CONFIG_SENSORS_GL520SM is not set 1193# CONFIG_SENSORS_GL520SM is not set
1156# CONFIG_SENSORS_IT87 is not set 1194# CONFIG_SENSORS_IT87 is not set
1157# CONFIG_SENSORS_LM63 is not set 1195# CONFIG_SENSORS_LM63 is not set
1196# CONFIG_SENSORS_LM73 is not set
1158# CONFIG_SENSORS_LM75 is not set 1197# CONFIG_SENSORS_LM75 is not set
1159# CONFIG_SENSORS_LM77 is not set 1198# CONFIG_SENSORS_LM77 is not set
1160# CONFIG_SENSORS_LM78 is not set 1199# CONFIG_SENSORS_LM78 is not set
@@ -1193,6 +1232,7 @@ CONFIG_HWMON=y
1193# CONFIG_SENSORS_W83L786NG is not set 1232# CONFIG_SENSORS_W83L786NG is not set
1194# CONFIG_SENSORS_W83627HF is not set 1233# CONFIG_SENSORS_W83627HF is not set
1195# CONFIG_SENSORS_W83627EHF is not set 1234# CONFIG_SENSORS_W83627EHF is not set
1235# CONFIG_SENSORS_LIS3_I2C is not set
1196# CONFIG_THERMAL is not set 1236# CONFIG_THERMAL is not set
1197# CONFIG_WATCHDOG is not set 1237# CONFIG_WATCHDOG is not set
1198CONFIG_SSB_POSSIBLE=y 1238CONFIG_SSB_POSSIBLE=y
@@ -1211,11 +1251,13 @@ CONFIG_SSB_POSSIBLE=y
1211# CONFIG_TWL4030_CORE is not set 1251# CONFIG_TWL4030_CORE is not set
1212# CONFIG_MFD_TMIO is not set 1252# CONFIG_MFD_TMIO is not set
1213# CONFIG_PMIC_DA903X is not set 1253# CONFIG_PMIC_DA903X is not set
1254# CONFIG_PMIC_ADP5520 is not set
1214# CONFIG_MFD_WM8400 is not set 1255# CONFIG_MFD_WM8400 is not set
1215# CONFIG_MFD_WM831X is not set 1256# CONFIG_MFD_WM831X is not set
1216# CONFIG_MFD_WM8350_I2C is not set 1257# CONFIG_MFD_WM8350_I2C is not set
1217# CONFIG_MFD_PCF50633 is not set 1258# CONFIG_MFD_PCF50633 is not set
1218# CONFIG_AB3100_CORE is not set 1259# CONFIG_AB3100_CORE is not set
1260# CONFIG_MFD_88PM8607 is not set
1219# CONFIG_REGULATOR is not set 1261# CONFIG_REGULATOR is not set
1220# CONFIG_MEDIA_SUPPORT is not set 1262# CONFIG_MEDIA_SUPPORT is not set
1221 1263
@@ -1281,6 +1323,7 @@ CONFIG_USB_MON=y
1281CONFIG_USB_EHCI_HCD=y 1323CONFIG_USB_EHCI_HCD=y
1282# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1324# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1283# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1325# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1326# CONFIG_XPS_USB_HCD_XILINX is not set
1284# CONFIG_USB_EHCI_FSL is not set 1327# CONFIG_USB_EHCI_FSL is not set
1285CONFIG_USB_EHCI_HCD_PPC_OF=y 1328CONFIG_USB_EHCI_HCD_PPC_OF=y
1286# CONFIG_USB_OXU210HP_HCD is not set 1329# CONFIG_USB_OXU210HP_HCD is not set
@@ -1454,6 +1497,7 @@ CONFIG_RTC_DRV_RS5C372=y
1454# CONFIG_RTC_DRV_PCF8563 is not set 1497# CONFIG_RTC_DRV_PCF8563 is not set
1455# CONFIG_RTC_DRV_PCF8583 is not set 1498# CONFIG_RTC_DRV_PCF8583 is not set
1456# CONFIG_RTC_DRV_M41T80 is not set 1499# CONFIG_RTC_DRV_M41T80 is not set
1500# CONFIG_RTC_DRV_BQ32K is not set
1457# CONFIG_RTC_DRV_S35390A is not set 1501# CONFIG_RTC_DRV_S35390A is not set
1458# CONFIG_RTC_DRV_FM3130 is not set 1502# CONFIG_RTC_DRV_FM3130 is not set
1459# CONFIG_RTC_DRV_RX8581 is not set 1503# CONFIG_RTC_DRV_RX8581 is not set
@@ -1475,7 +1519,9 @@ CONFIG_RTC_DRV_RS5C372=y
1475# CONFIG_RTC_DRV_M48T86 is not set 1519# CONFIG_RTC_DRV_M48T86 is not set
1476# CONFIG_RTC_DRV_M48T35 is not set 1520# CONFIG_RTC_DRV_M48T35 is not set
1477# CONFIG_RTC_DRV_M48T59 is not set 1521# CONFIG_RTC_DRV_M48T59 is not set
1522# CONFIG_RTC_DRV_MSM6242 is not set
1478# CONFIG_RTC_DRV_BQ4802 is not set 1523# CONFIG_RTC_DRV_BQ4802 is not set
1524# CONFIG_RTC_DRV_RP5C01 is not set
1479# CONFIG_RTC_DRV_V3020 is not set 1525# CONFIG_RTC_DRV_V3020 is not set
1480 1526
1481# 1527#
@@ -1786,7 +1832,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1786# CONFIG_KEYS is not set 1832# CONFIG_KEYS is not set
1787# CONFIG_SECURITY is not set 1833# CONFIG_SECURITY is not set
1788# CONFIG_SECURITYFS is not set 1834# CONFIG_SECURITYFS is not set
1789# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1835# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1836# CONFIG_DEFAULT_SECURITY_SMACK is not set
1837# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1838CONFIG_DEFAULT_SECURITY_DAC=y
1839CONFIG_DEFAULT_SECURITY=""
1790CONFIG_CRYPTO=y 1840CONFIG_CRYPTO=y
1791 1841
1792# 1842#
diff --git a/arch/powerpc/configs/mgcoge_defconfig b/arch/powerpc/configs/mgcoge_defconfig
index 520b04a0def9..4c2c877f9363 100644
--- a/arch/powerpc/configs/mgcoge_defconfig
+++ b/arch/powerpc/configs/mgcoge_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:09 2009 4# Wed Jan 6 09:24:02 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,7 +60,6 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61# CONFIG_DEFAULT_UIMAGE is not set 62# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_HIBERNATE_32=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y 63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 64# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 65# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 87#
88CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -168,14 +169,41 @@ CONFIG_BLK_DEV_BSG=y
168# IO Schedulers 169# IO Schedulers
169# 170#
170CONFIG_IOSCHED_NOOP=y 171CONFIG_IOSCHED_NOOP=y
171# CONFIG_IOSCHED_AS is not set
172CONFIG_IOSCHED_DEADLINE=y 172CONFIG_IOSCHED_DEADLINE=y
173# CONFIG_IOSCHED_CFQ is not set 173# CONFIG_IOSCHED_CFQ is not set
174# CONFIG_DEFAULT_AS is not set
175CONFIG_DEFAULT_DEADLINE=y 174CONFIG_DEFAULT_DEADLINE=y
176# CONFIG_DEFAULT_CFQ is not set 175# CONFIG_DEFAULT_CFQ is not set
177# CONFIG_DEFAULT_NOOP is not set 176# CONFIG_DEFAULT_NOOP is not set
178CONFIG_DEFAULT_IOSCHED="deadline" 177CONFIG_DEFAULT_IOSCHED="deadline"
178# CONFIG_INLINE_SPIN_TRYLOCK is not set
179# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
180# CONFIG_INLINE_SPIN_LOCK is not set
181# CONFIG_INLINE_SPIN_LOCK_BH is not set
182# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
183# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
184CONFIG_INLINE_SPIN_UNLOCK=y
185# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
186CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
187# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
188# CONFIG_INLINE_READ_TRYLOCK is not set
189# CONFIG_INLINE_READ_LOCK is not set
190# CONFIG_INLINE_READ_LOCK_BH is not set
191# CONFIG_INLINE_READ_LOCK_IRQ is not set
192# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
193CONFIG_INLINE_READ_UNLOCK=y
194# CONFIG_INLINE_READ_UNLOCK_BH is not set
195CONFIG_INLINE_READ_UNLOCK_IRQ=y
196# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
197# CONFIG_INLINE_WRITE_TRYLOCK is not set
198# CONFIG_INLINE_WRITE_LOCK is not set
199# CONFIG_INLINE_WRITE_LOCK_BH is not set
200# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
201# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
202CONFIG_INLINE_WRITE_UNLOCK=y
203# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
204CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
205# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
206# CONFIG_MUTEX_SPIN_ON_OWNER is not set
179# CONFIG_FREEZER is not set 207# CONFIG_FREEZER is not set
180 208
181# 209#
@@ -208,7 +236,8 @@ CONFIG_MPIC=y
208# CONFIG_MPIC_WEIRD is not set 236# CONFIG_MPIC_WEIRD is not set
209CONFIG_PPC_I8259=y 237CONFIG_PPC_I8259=y
210CONFIG_PPC_RTAS=y 238CONFIG_PPC_RTAS=y
211# CONFIG_RTAS_ERROR_LOGGING is not set 239CONFIG_RTAS_ERROR_LOGGING=y
240CONFIG_PPC_RTAS_DAEMON=y
212CONFIG_RTAS_PROC=y 241CONFIG_RTAS_PROC=y
213# CONFIG_MMIO_NVRAM is not set 242# CONFIG_MMIO_NVRAM is not set
214CONFIG_PPC_MPC106=y 243CONFIG_PPC_MPC106=y
@@ -250,6 +279,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
250CONFIG_ARCH_HAS_WALK_MEMORY=y 279CONFIG_ARCH_HAS_WALK_MEMORY=y
251CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 280CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
252# CONFIG_CRASH_DUMP is not set 281# CONFIG_CRASH_DUMP is not set
282CONFIG_SPARSE_IRQ=y
253CONFIG_MAX_ACTIVE_REGIONS=32 283CONFIG_MAX_ACTIVE_REGIONS=32
254CONFIG_ARCH_FLATMEM_ENABLE=y 284CONFIG_ARCH_FLATMEM_ENABLE=y
255CONFIG_ARCH_POPULATES_NODE_MAP=y 285CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -262,8 +292,6 @@ CONFIG_MIGRATION=y
262CONFIG_ZONE_DMA_FLAG=1 292CONFIG_ZONE_DMA_FLAG=1
263CONFIG_BOUNCE=y 293CONFIG_BOUNCE=y
264CONFIG_VIRT_TO_BUS=y 294CONFIG_VIRT_TO_BUS=y
265CONFIG_HAVE_MLOCK=y
266CONFIG_HAVE_MLOCKED_PAGE_BIT=y
267# CONFIG_KSM is not set 295# CONFIG_KSM is not set
268CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 296CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
269CONFIG_PPC_4K_PAGES=y 297CONFIG_PPC_4K_PAGES=y
@@ -395,9 +423,6 @@ CONFIG_NETFILTER_ADVANCED=y
395# CONFIG_BT is not set 423# CONFIG_BT is not set
396CONFIG_WIRELESS=y 424CONFIG_WIRELESS=y
397# CONFIG_CFG80211 is not set 425# CONFIG_CFG80211 is not set
398CONFIG_CFG80211_DEFAULT_PS_VALUE=0
399CONFIG_WIRELESS_OLD_REGULATORY=y
400# CONFIG_WIRELESS_EXT is not set
401# CONFIG_LIB80211 is not set 426# CONFIG_LIB80211 is not set
402 427
403# 428#
@@ -525,6 +550,10 @@ CONFIG_BLK_DEV=y
525# CONFIG_BLK_DEV_COW_COMMON is not set 550# CONFIG_BLK_DEV_COW_COMMON is not set
526CONFIG_BLK_DEV_LOOP=y 551CONFIG_BLK_DEV_LOOP=y
527# CONFIG_BLK_DEV_CRYPTOLOOP is not set 552# CONFIG_BLK_DEV_CRYPTOLOOP is not set
553
554#
555# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
556#
528# CONFIG_BLK_DEV_NBD is not set 557# CONFIG_BLK_DEV_NBD is not set
529# CONFIG_BLK_DEV_SX8 is not set 558# CONFIG_BLK_DEV_SX8 is not set
530CONFIG_BLK_DEV_RAM=y 559CONFIG_BLK_DEV_RAM=y
@@ -558,7 +587,7 @@ CONFIG_HAVE_IDE=y
558# 587#
559 588
560# 589#
561# See the help texts for more information. 590# The newer stack is recommended.
562# 591#
563# CONFIG_FIREWIRE is not set 592# CONFIG_FIREWIRE is not set
564# CONFIG_IEEE1394 is not set 593# CONFIG_IEEE1394 is not set
@@ -625,8 +654,9 @@ CONFIG_FS_ENET_MDIO_FCC=y
625# CONFIG_NETDEV_10000 is not set 654# CONFIG_NETDEV_10000 is not set
626# CONFIG_TR is not set 655# CONFIG_TR is not set
627CONFIG_WLAN=y 656CONFIG_WLAN=y
628# CONFIG_WLAN_PRE80211 is not set 657# CONFIG_AIRO is not set
629# CONFIG_WLAN_80211 is not set 658# CONFIG_ATMEL is not set
659# CONFIG_HOSTAP is not set
630 660
631# 661#
632# Enable WiMAX (Networking options) to see the WiMAX drivers 662# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -637,6 +667,7 @@ CONFIG_WLAN=y
637# CONFIG_SLIP is not set 667# CONFIG_SLIP is not set
638# CONFIG_NETPOLL is not set 668# CONFIG_NETPOLL is not set
639# CONFIG_NET_POLL_CONTROLLER is not set 669# CONFIG_NET_POLL_CONTROLLER is not set
670# CONFIG_VMXNET3 is not set
640# CONFIG_ISDN is not set 671# CONFIG_ISDN is not set
641# CONFIG_PHONE is not set 672# CONFIG_PHONE is not set
642 673
@@ -673,6 +704,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
673CONFIG_SERIAL_CPM=y 704CONFIG_SERIAL_CPM=y
674CONFIG_SERIAL_CPM_CONSOLE=y 705CONFIG_SERIAL_CPM_CONSOLE=y
675# CONFIG_SERIAL_JSM is not set 706# CONFIG_SERIAL_JSM is not set
707# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
676CONFIG_UNIX98_PTYS=y 708CONFIG_UNIX98_PTYS=y
677# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 709# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
678CONFIG_LEGACY_PTYS=y 710CONFIG_LEGACY_PTYS=y
@@ -734,11 +766,6 @@ CONFIG_I2C_CPM=y
734# CONFIG_I2C_PARPORT_LIGHT is not set 766# CONFIG_I2C_PARPORT_LIGHT is not set
735 767
736# 768#
737# Graphics adapter I2C/DDC channel drivers
738#
739# CONFIG_I2C_VOODOO3 is not set
740
741#
742# Other I2C/SMBus bus drivers 769# Other I2C/SMBus bus drivers
743# 770#
744# CONFIG_I2C_PCA_PLATFORM is not set 771# CONFIG_I2C_PCA_PLATFORM is not set
@@ -775,6 +802,7 @@ CONFIG_GPIOLIB=y
775# 802#
776# PCI GPIO expanders: 803# PCI GPIO expanders:
777# 804#
805# CONFIG_GPIO_CS5535 is not set
778# CONFIG_GPIO_BT8XX is not set 806# CONFIG_GPIO_BT8XX is not set
779# CONFIG_GPIO_LANGWELL is not set 807# CONFIG_GPIO_LANGWELL is not set
780 808
@@ -807,11 +835,13 @@ CONFIG_SSB_POSSIBLE=y
807# CONFIG_TWL4030_CORE is not set 835# CONFIG_TWL4030_CORE is not set
808# CONFIG_MFD_TMIO is not set 836# CONFIG_MFD_TMIO is not set
809# CONFIG_PMIC_DA903X is not set 837# CONFIG_PMIC_DA903X is not set
838# CONFIG_PMIC_ADP5520 is not set
810# CONFIG_MFD_WM8400 is not set 839# CONFIG_MFD_WM8400 is not set
811# CONFIG_MFD_WM831X is not set 840# CONFIG_MFD_WM831X is not set
812# CONFIG_MFD_WM8350_I2C is not set 841# CONFIG_MFD_WM8350_I2C is not set
813# CONFIG_MFD_PCF50633 is not set 842# CONFIG_MFD_PCF50633 is not set
814# CONFIG_AB3100_CORE is not set 843# CONFIG_AB3100_CORE is not set
844# CONFIG_MFD_88PM8607 is not set
815# CONFIG_REGULATOR is not set 845# CONFIG_REGULATOR is not set
816# CONFIG_MEDIA_SUPPORT is not set 846# CONFIG_MEDIA_SUPPORT is not set
817 847
@@ -1118,7 +1148,11 @@ CONFIG_BDI_SWITCH=y
1118# CONFIG_KEYS is not set 1148# CONFIG_KEYS is not set
1119# CONFIG_SECURITY is not set 1149# CONFIG_SECURITY is not set
1120# CONFIG_SECURITYFS is not set 1150# CONFIG_SECURITYFS is not set
1121# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1151# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1152# CONFIG_DEFAULT_SECURITY_SMACK is not set
1153# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1154CONFIG_DEFAULT_SECURITY_DAC=y
1155CONFIG_DEFAULT_SECURITY=""
1122CONFIG_CRYPTO=y 1156CONFIG_CRYPTO=y
1123 1157
1124# 1158#
diff --git a/arch/powerpc/configs/mgsuvd_defconfig b/arch/powerpc/configs/mgsuvd_defconfig
index 43c3c4fcdce3..9e090f2c7e36 100644
--- a/arch/powerpc/configs/mgsuvd_defconfig
+++ b/arch/powerpc/configs/mgsuvd_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:10 2009 4# Wed Jan 6 09:24:03 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -32,6 +32,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
37CONFIG_TRACE_IRQFLAGS_SUPPORT=y 38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -53,6 +54,7 @@ CONFIG_OF=y
53CONFIG_AUDIT_ARCH=y 54CONFIG_AUDIT_ARCH=y
54CONFIG_DTC=y 55CONFIG_DTC=y
55# CONFIG_DEFAULT_UIMAGE is not set 56# CONFIG_DEFAULT_UIMAGE is not set
57CONFIG_ARCH_HIBERNATION_POSSIBLE=y
56# CONFIG_PPC_DCR_NATIVE is not set 58# CONFIG_PPC_DCR_NATIVE is not set
57# CONFIG_PPC_DCR_MMIO is not set 59# CONFIG_PPC_DCR_MMIO is not set
58CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 60CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -80,6 +82,7 @@ CONFIG_SYSVIPC_SYSCTL=y
80# 82#
81CONFIG_TREE_RCU=y 83CONFIG_TREE_RCU=y
82# CONFIG_TREE_PREEMPT_RCU is not set 84# CONFIG_TREE_PREEMPT_RCU is not set
85# CONFIG_TINY_RCU is not set
83# CONFIG_RCU_TRACE is not set 86# CONFIG_RCU_TRACE is not set
84CONFIG_RCU_FANOUT=32 87CONFIG_RCU_FANOUT=32
85# CONFIG_RCU_FANOUT_EXACT is not set 88# CONFIG_RCU_FANOUT_EXACT is not set
@@ -162,14 +165,41 @@ CONFIG_LBDAF=y
162# IO Schedulers 165# IO Schedulers
163# 166#
164CONFIG_IOSCHED_NOOP=y 167CONFIG_IOSCHED_NOOP=y
165CONFIG_IOSCHED_AS=y
166CONFIG_IOSCHED_DEADLINE=y 168CONFIG_IOSCHED_DEADLINE=y
167CONFIG_IOSCHED_CFQ=y 169CONFIG_IOSCHED_CFQ=y
168CONFIG_DEFAULT_AS=y
169# CONFIG_DEFAULT_DEADLINE is not set 170# CONFIG_DEFAULT_DEADLINE is not set
170# CONFIG_DEFAULT_CFQ is not set 171CONFIG_DEFAULT_CFQ=y
171# CONFIG_DEFAULT_NOOP is not set 172# CONFIG_DEFAULT_NOOP is not set
172CONFIG_DEFAULT_IOSCHED="anticipatory" 173CONFIG_DEFAULT_IOSCHED="cfq"
174# CONFIG_INLINE_SPIN_TRYLOCK is not set
175# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
176# CONFIG_INLINE_SPIN_LOCK is not set
177# CONFIG_INLINE_SPIN_LOCK_BH is not set
178# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
179# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
180CONFIG_INLINE_SPIN_UNLOCK=y
181# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
182CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
183# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
184# CONFIG_INLINE_READ_TRYLOCK is not set
185# CONFIG_INLINE_READ_LOCK is not set
186# CONFIG_INLINE_READ_LOCK_BH is not set
187# CONFIG_INLINE_READ_LOCK_IRQ is not set
188# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
189CONFIG_INLINE_READ_UNLOCK=y
190# CONFIG_INLINE_READ_UNLOCK_BH is not set
191CONFIG_INLINE_READ_UNLOCK_IRQ=y
192# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
193# CONFIG_INLINE_WRITE_TRYLOCK is not set
194# CONFIG_INLINE_WRITE_LOCK is not set
195# CONFIG_INLINE_WRITE_LOCK_BH is not set
196# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
197# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
198CONFIG_INLINE_WRITE_UNLOCK=y
199# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
200CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
201# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
202# CONFIG_MUTEX_SPIN_ON_OWNER is not set
173# CONFIG_FREEZER is not set 203# CONFIG_FREEZER is not set
174 204
175# 205#
@@ -244,6 +274,7 @@ CONFIG_MATH_EMULATION=y
244CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 274CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
245CONFIG_ARCH_HAS_WALK_MEMORY=y 275CONFIG_ARCH_HAS_WALK_MEMORY=y
246CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 276CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
277CONFIG_SPARSE_IRQ=y
247CONFIG_MAX_ACTIVE_REGIONS=32 278CONFIG_MAX_ACTIVE_REGIONS=32
248CONFIG_ARCH_FLATMEM_ENABLE=y 279CONFIG_ARCH_FLATMEM_ENABLE=y
249CONFIG_ARCH_POPULATES_NODE_MAP=y 280CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -260,8 +291,6 @@ CONFIG_MIGRATION=y
260CONFIG_ZONE_DMA_FLAG=1 291CONFIG_ZONE_DMA_FLAG=1
261CONFIG_BOUNCE=y 292CONFIG_BOUNCE=y
262CONFIG_VIRT_TO_BUS=y 293CONFIG_VIRT_TO_BUS=y
263CONFIG_HAVE_MLOCK=y
264CONFIG_HAVE_MLOCKED_PAGE_BIT=y
265# CONFIG_KSM is not set 294# CONFIG_KSM is not set
266CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 295CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
267CONFIG_PPC_4K_PAGES=y 296CONFIG_PPC_4K_PAGES=y
@@ -379,9 +408,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
379# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
380CONFIG_WIRELESS=y 409CONFIG_WIRELESS=y
381# CONFIG_CFG80211 is not set 410# CONFIG_CFG80211 is not set
382CONFIG_CFG80211_DEFAULT_PS_VALUE=0
383CONFIG_WIRELESS_OLD_REGULATORY=y
384# CONFIG_WIRELESS_EXT is not set
385# CONFIG_LIB80211 is not set 411# CONFIG_LIB80211 is not set
386 412
387# 413#
@@ -497,6 +523,10 @@ CONFIG_BLK_DEV=y
497# CONFIG_BLK_DEV_COW_COMMON is not set 523# CONFIG_BLK_DEV_COW_COMMON is not set
498CONFIG_BLK_DEV_LOOP=y 524CONFIG_BLK_DEV_LOOP=y
499# CONFIG_BLK_DEV_CRYPTOLOOP is not set 525# CONFIG_BLK_DEV_CRYPTOLOOP is not set
526
527#
528# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
529#
500# CONFIG_BLK_DEV_NBD is not set 530# CONFIG_BLK_DEV_NBD is not set
501CONFIG_BLK_DEV_RAM=y 531CONFIG_BLK_DEV_RAM=y
502CONFIG_BLK_DEV_RAM_COUNT=16 532CONFIG_BLK_DEV_RAM_COUNT=16
@@ -568,8 +598,7 @@ CONFIG_FS_ENET_HAS_SCC=y
568# CONFIG_NETDEV_1000 is not set 598# CONFIG_NETDEV_1000 is not set
569# CONFIG_NETDEV_10000 is not set 599# CONFIG_NETDEV_10000 is not set
570CONFIG_WLAN=y 600CONFIG_WLAN=y
571# CONFIG_WLAN_PRE80211 is not set 601# CONFIG_HOSTAP is not set
572# CONFIG_WLAN_80211 is not set
573 602
574# 603#
575# Enable WiMAX (Networking options) to see the WiMAX drivers 604# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -614,6 +643,7 @@ CONFIG_SERIAL_CORE=y
614CONFIG_SERIAL_CORE_CONSOLE=y 643CONFIG_SERIAL_CORE_CONSOLE=y
615CONFIG_SERIAL_CPM=y 644CONFIG_SERIAL_CPM=y
616CONFIG_SERIAL_CPM_CONSOLE=y 645CONFIG_SERIAL_CPM_CONSOLE=y
646# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
617CONFIG_UNIX98_PTYS=y 647CONFIG_UNIX98_PTYS=y
618# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 648# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
619# CONFIG_LEGACY_PTYS is not set 649# CONFIG_LEGACY_PTYS is not set
@@ -863,6 +893,7 @@ CONFIG_DEBUG_FS=y
863# CONFIG_DEBUG_MEMORY_INIT is not set 893# CONFIG_DEBUG_MEMORY_INIT is not set
864# CONFIG_RCU_CPU_STALL_DETECTOR is not set 894# CONFIG_RCU_CPU_STALL_DETECTOR is not set
865# CONFIG_LATENCYTOP is not set 895# CONFIG_LATENCYTOP is not set
896# CONFIG_SYSCTL_SYSCALL_CHECK is not set
866CONFIG_HAVE_FUNCTION_TRACER=y 897CONFIG_HAVE_FUNCTION_TRACER=y
867CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 898CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
868CONFIG_HAVE_DYNAMIC_FTRACE=y 899CONFIG_HAVE_DYNAMIC_FTRACE=y
@@ -887,7 +918,11 @@ CONFIG_PRINT_STACK_DEPTH=64
887# CONFIG_KEYS is not set 918# CONFIG_KEYS is not set
888# CONFIG_SECURITY is not set 919# CONFIG_SECURITY is not set
889# CONFIG_SECURITYFS is not set 920# CONFIG_SECURITYFS is not set
890# CONFIG_SECURITY_FILE_CAPABILITIES is not set 921# CONFIG_DEFAULT_SECURITY_SELINUX is not set
922# CONFIG_DEFAULT_SECURITY_SMACK is not set
923# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
924CONFIG_DEFAULT_SECURITY_DAC=y
925CONFIG_DEFAULT_SECURITY=""
891CONFIG_CRYPTO=y 926CONFIG_CRYPTO=y
892 927
893# 928#
diff --git a/arch/powerpc/configs/mpc5200_defconfig b/arch/powerpc/configs/mpc5200_defconfig
index 523d5fe18c0e..61cf73d0000f 100644
--- a/arch/powerpc/configs/mpc5200_defconfig
+++ b/arch/powerpc/configs/mpc5200_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc4 3# Linux kernel version: 2.6.33-rc2
4# Thu Oct 15 10:33:21 2009 4# Wed Dec 30 15:08:52 2009
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62CONFIG_ARCH_SUSPEND_POSSIBLE=y 64CONFIG_ARCH_SUSPEND_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
@@ -87,6 +89,7 @@ CONFIG_SYSVIPC_SYSCTL=y
87# 89#
88CONFIG_TREE_RCU=y 90CONFIG_TREE_RCU=y
89# CONFIG_TREE_PREEMPT_RCU is not set 91# CONFIG_TREE_PREEMPT_RCU is not set
92# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set 93# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32 94CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set 95# CONFIG_RCU_FANOUT_EXACT is not set
@@ -170,14 +173,41 @@ CONFIG_LBDAF=y
170# IO Schedulers 173# IO Schedulers
171# 174#
172CONFIG_IOSCHED_NOOP=y 175CONFIG_IOSCHED_NOOP=y
173CONFIG_IOSCHED_AS=y
174CONFIG_IOSCHED_DEADLINE=y 176CONFIG_IOSCHED_DEADLINE=y
175CONFIG_IOSCHED_CFQ=y 177CONFIG_IOSCHED_CFQ=y
176CONFIG_DEFAULT_AS=y
177# CONFIG_DEFAULT_DEADLINE is not set 178# CONFIG_DEFAULT_DEADLINE is not set
178# CONFIG_DEFAULT_CFQ is not set 179CONFIG_DEFAULT_CFQ=y
179# CONFIG_DEFAULT_NOOP is not set 180# CONFIG_DEFAULT_NOOP is not set
180CONFIG_DEFAULT_IOSCHED="anticipatory" 181CONFIG_DEFAULT_IOSCHED="cfq"
182# CONFIG_INLINE_SPIN_TRYLOCK is not set
183# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
184# CONFIG_INLINE_SPIN_LOCK is not set
185# CONFIG_INLINE_SPIN_LOCK_BH is not set
186# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
187# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
188CONFIG_INLINE_SPIN_UNLOCK=y
189# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
190CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
191# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
192# CONFIG_INLINE_READ_TRYLOCK is not set
193# CONFIG_INLINE_READ_LOCK is not set
194# CONFIG_INLINE_READ_LOCK_BH is not set
195# CONFIG_INLINE_READ_LOCK_IRQ is not set
196# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
197CONFIG_INLINE_READ_UNLOCK=y
198# CONFIG_INLINE_READ_UNLOCK_BH is not set
199CONFIG_INLINE_READ_UNLOCK_IRQ=y
200# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
201# CONFIG_INLINE_WRITE_TRYLOCK is not set
202# CONFIG_INLINE_WRITE_LOCK is not set
203# CONFIG_INLINE_WRITE_LOCK_BH is not set
204# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
205# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
206CONFIG_INLINE_WRITE_UNLOCK=y
207# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
208CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
209# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
210# CONFIG_MUTEX_SPIN_ON_OWNER is not set
181CONFIG_FREEZER=y 211CONFIG_FREEZER=y
182 212
183# 213#
@@ -193,6 +223,7 @@ CONFIG_PPC_LITE5200=y
193CONFIG_PPC_MEDIA5200=y 223CONFIG_PPC_MEDIA5200=y
194CONFIG_PPC_MPC5200_BUGFIX=y 224CONFIG_PPC_MPC5200_BUGFIX=y
195CONFIG_PPC_MPC5200_GPIO=y 225CONFIG_PPC_MPC5200_GPIO=y
226CONFIG_PPC_MPC5200_LPBFIFO=m
196# CONFIG_PPC_PMAC is not set 227# CONFIG_PPC_PMAC is not set
197# CONFIG_PPC_CELL is not set 228# CONFIG_PPC_CELL is not set
198# CONFIG_PPC_CELL_NATIVE is not set 229# CONFIG_PPC_CELL_NATIVE is not set
@@ -211,6 +242,7 @@ CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
211# CONFIG_PPC_I8259 is not set 242# CONFIG_PPC_I8259 is not set
212CONFIG_PPC_RTAS=y 243CONFIG_PPC_RTAS=y
213# CONFIG_RTAS_ERROR_LOGGING is not set 244# CONFIG_RTAS_ERROR_LOGGING is not set
245# CONFIG_PPC_RTAS_DAEMON is not set
214CONFIG_RTAS_PROC=y 246CONFIG_RTAS_PROC=y
215# CONFIG_MMIO_NVRAM is not set 247# CONFIG_MMIO_NVRAM is not set
216# CONFIG_PPC_MPC106 is not set 248# CONFIG_PPC_MPC106 is not set
@@ -223,6 +255,7 @@ CONFIG_RTAS_PROC=y
223CONFIG_PPC_BESTCOMM=y 255CONFIG_PPC_BESTCOMM=y
224CONFIG_PPC_BESTCOMM_ATA=y 256CONFIG_PPC_BESTCOMM_ATA=y
225CONFIG_PPC_BESTCOMM_FEC=y 257CONFIG_PPC_BESTCOMM_FEC=y
258CONFIG_PPC_BESTCOMM_GEN_BD=m
226CONFIG_SIMPLE_GPIO=y 259CONFIG_SIMPLE_GPIO=y
227 260
228# 261#
@@ -253,6 +286,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
253CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 286CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
254# CONFIG_KEXEC is not set 287# CONFIG_KEXEC is not set
255# CONFIG_CRASH_DUMP is not set 288# CONFIG_CRASH_DUMP is not set
289CONFIG_SPARSE_IRQ=y
256CONFIG_MAX_ACTIVE_REGIONS=32 290CONFIG_MAX_ACTIVE_REGIONS=32
257CONFIG_ARCH_FLATMEM_ENABLE=y 291CONFIG_ARCH_FLATMEM_ENABLE=y
258CONFIG_ARCH_POPULATES_NODE_MAP=y 292CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -269,8 +303,6 @@ CONFIG_MIGRATION=y
269CONFIG_ZONE_DMA_FLAG=1 303CONFIG_ZONE_DMA_FLAG=1
270CONFIG_BOUNCE=y 304CONFIG_BOUNCE=y
271CONFIG_VIRT_TO_BUS=y 305CONFIG_VIRT_TO_BUS=y
272CONFIG_HAVE_MLOCK=y
273CONFIG_HAVE_MLOCKED_PAGE_BIT=y
274# CONFIG_KSM is not set 306# CONFIG_KSM is not set
275CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 307CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
276CONFIG_PPC_4K_PAGES=y 308CONFIG_PPC_4K_PAGES=y
@@ -286,6 +318,7 @@ CONFIG_PM=y
286CONFIG_PM_SLEEP=y 318CONFIG_PM_SLEEP=y
287CONFIG_SUSPEND=y 319CONFIG_SUSPEND=y
288CONFIG_SUSPEND_FREEZER=y 320CONFIG_SUSPEND_FREEZER=y
321# CONFIG_HIBERNATION is not set
289# CONFIG_PM_RUNTIME is not set 322# CONFIG_PM_RUNTIME is not set
290CONFIG_SECCOMP=y 323CONFIG_SECCOMP=y
291CONFIG_ISA_DMA_API=y 324CONFIG_ISA_DMA_API=y
@@ -399,7 +432,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
399# CONFIG_IRDA is not set 432# CONFIG_IRDA is not set
400# CONFIG_BT is not set 433# CONFIG_BT is not set
401# CONFIG_AF_RXRPC is not set 434# CONFIG_AF_RXRPC is not set
402# CONFIG_WIRELESS is not set 435CONFIG_WIRELESS=y
436# CONFIG_CFG80211 is not set
437# CONFIG_LIB80211 is not set
438
439#
440# CFG80211 needs to be enabled for MAC80211
441#
403# CONFIG_WIMAX is not set 442# CONFIG_WIMAX is not set
404# CONFIG_RFKILL is not set 443# CONFIG_RFKILL is not set
405# CONFIG_NET_9P is not set 444# CONFIG_NET_9P is not set
@@ -530,6 +569,10 @@ CONFIG_BLK_DEV=y
530# CONFIG_BLK_DEV_COW_COMMON is not set 569# CONFIG_BLK_DEV_COW_COMMON is not set
531CONFIG_BLK_DEV_LOOP=y 570CONFIG_BLK_DEV_LOOP=y
532# CONFIG_BLK_DEV_CRYPTOLOOP is not set 571# CONFIG_BLK_DEV_CRYPTOLOOP is not set
572
573#
574# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
575#
533# CONFIG_BLK_DEV_NBD is not set 576# CONFIG_BLK_DEV_NBD is not set
534# CONFIG_BLK_DEV_SX8 is not set 577# CONFIG_BLK_DEV_SX8 is not set
535# CONFIG_BLK_DEV_UB is not set 578# CONFIG_BLK_DEV_UB is not set
@@ -541,6 +584,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
541# CONFIG_ATA_OVER_ETH is not set 584# CONFIG_ATA_OVER_ETH is not set
542# CONFIG_BLK_DEV_HD is not set 585# CONFIG_BLK_DEV_HD is not set
543CONFIG_MISC_DEVICES=y 586CONFIG_MISC_DEVICES=y
587# CONFIG_AD525X_DPOT is not set
544# CONFIG_PHANTOM is not set 588# CONFIG_PHANTOM is not set
545# CONFIG_SGI_IOC4 is not set 589# CONFIG_SGI_IOC4 is not set
546# CONFIG_TIFM_CORE is not set 590# CONFIG_TIFM_CORE is not set
@@ -548,6 +592,8 @@ CONFIG_MISC_DEVICES=y
548# CONFIG_ENCLOSURE_SERVICES is not set 592# CONFIG_ENCLOSURE_SERVICES is not set
549# CONFIG_HP_ILO is not set 593# CONFIG_HP_ILO is not set
550# CONFIG_ISL29003 is not set 594# CONFIG_ISL29003 is not set
595# CONFIG_DS1682 is not set
596# CONFIG_TI_DAC7512 is not set
551# CONFIG_C2PORT is not set 597# CONFIG_C2PORT is not set
552 598
553# 599#
@@ -600,7 +646,9 @@ CONFIG_SCSI_LOWLEVEL=y
600# CONFIG_SCSI_BNX2_ISCSI is not set 646# CONFIG_SCSI_BNX2_ISCSI is not set
601# CONFIG_BE2ISCSI is not set 647# CONFIG_BE2ISCSI is not set
602# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 648# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
649# CONFIG_SCSI_HPSA is not set
603# CONFIG_SCSI_3W_9XXX is not set 650# CONFIG_SCSI_3W_9XXX is not set
651# CONFIG_SCSI_3W_SAS is not set
604# CONFIG_SCSI_ACARD is not set 652# CONFIG_SCSI_ACARD is not set
605# CONFIG_SCSI_AACRAID is not set 653# CONFIG_SCSI_AACRAID is not set
606# CONFIG_SCSI_AIC7XXX is not set 654# CONFIG_SCSI_AIC7XXX is not set
@@ -639,6 +687,7 @@ CONFIG_SCSI_LOWLEVEL=y
639# CONFIG_SCSI_NSP32 is not set 687# CONFIG_SCSI_NSP32 is not set
640# CONFIG_SCSI_DEBUG is not set 688# CONFIG_SCSI_DEBUG is not set
641# CONFIG_SCSI_PMCRAID is not set 689# CONFIG_SCSI_PMCRAID is not set
690# CONFIG_SCSI_PM8001 is not set
642# CONFIG_SCSI_SRP is not set 691# CONFIG_SCSI_SRP is not set
643# CONFIG_SCSI_BFA_FC is not set 692# CONFIG_SCSI_BFA_FC is not set
644# CONFIG_SCSI_DH is not set 693# CONFIG_SCSI_DH is not set
@@ -694,15 +743,16 @@ CONFIG_PATA_MPC52xx=y
694# CONFIG_PATA_NS87415 is not set 743# CONFIG_PATA_NS87415 is not set
695# CONFIG_PATA_OPTI is not set 744# CONFIG_PATA_OPTI is not set
696# CONFIG_PATA_OPTIDMA is not set 745# CONFIG_PATA_OPTIDMA is not set
746# CONFIG_PATA_PDC2027X is not set
697# CONFIG_PATA_PDC_OLD is not set 747# CONFIG_PATA_PDC_OLD is not set
698# CONFIG_PATA_RADISYS is not set 748# CONFIG_PATA_RADISYS is not set
699# CONFIG_PATA_RDC is not set 749# CONFIG_PATA_RDC is not set
700# CONFIG_PATA_RZ1000 is not set 750# CONFIG_PATA_RZ1000 is not set
701# CONFIG_PATA_SC1200 is not set 751# CONFIG_PATA_SC1200 is not set
702# CONFIG_PATA_SERVERWORKS is not set 752# CONFIG_PATA_SERVERWORKS is not set
703# CONFIG_PATA_PDC2027X is not set
704# CONFIG_PATA_SIL680 is not set 753# CONFIG_PATA_SIL680 is not set
705# CONFIG_PATA_SIS is not set 754# CONFIG_PATA_SIS is not set
755# CONFIG_PATA_TOSHIBA is not set
706# CONFIG_PATA_VIA is not set 756# CONFIG_PATA_VIA is not set
707# CONFIG_PATA_WINBOND is not set 757# CONFIG_PATA_WINBOND is not set
708CONFIG_PATA_PLATFORM=y 758CONFIG_PATA_PLATFORM=y
@@ -785,8 +835,11 @@ CONFIG_FEC_MPC52xx_MDIO=y
785# CONFIG_NETDEV_10000 is not set 835# CONFIG_NETDEV_10000 is not set
786# CONFIG_TR is not set 836# CONFIG_TR is not set
787CONFIG_WLAN=y 837CONFIG_WLAN=y
788# CONFIG_WLAN_PRE80211 is not set 838# CONFIG_AIRO is not set
789# CONFIG_WLAN_80211 is not set 839# CONFIG_ATMEL is not set
840# CONFIG_PRISM54 is not set
841# CONFIG_USB_ZD1201 is not set
842# CONFIG_HOSTAP is not set
790 843
791# 844#
792# Enable WiMAX (Networking options) to see the WiMAX drivers 845# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -809,6 +862,7 @@ CONFIG_WLAN=y
809# CONFIG_NETCONSOLE is not set 862# CONFIG_NETCONSOLE is not set
810# CONFIG_NETPOLL is not set 863# CONFIG_NETPOLL is not set
811# CONFIG_NET_POLL_CONTROLLER is not set 864# CONFIG_NET_POLL_CONTROLLER is not set
865# CONFIG_VMXNET3 is not set
812# CONFIG_ISDN is not set 866# CONFIG_ISDN is not set
813# CONFIG_PHONE is not set 867# CONFIG_PHONE is not set
814 868
@@ -818,6 +872,7 @@ CONFIG_WLAN=y
818CONFIG_INPUT=y 872CONFIG_INPUT=y
819# CONFIG_INPUT_FF_MEMLESS is not set 873# CONFIG_INPUT_FF_MEMLESS is not set
820# CONFIG_INPUT_POLLDEV is not set 874# CONFIG_INPUT_POLLDEV is not set
875# CONFIG_INPUT_SPARSEKMAP is not set
821 876
822# 877#
823# Userland interfaces 878# Userland interfaces
@@ -874,6 +929,7 @@ CONFIG_SERIAL_MPC52xx=y
874CONFIG_SERIAL_MPC52xx_CONSOLE=y 929CONFIG_SERIAL_MPC52xx_CONSOLE=y
875CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200 930CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200
876# CONFIG_SERIAL_JSM is not set 931# CONFIG_SERIAL_JSM is not set
932# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
877CONFIG_UNIX98_PTYS=y 933CONFIG_UNIX98_PTYS=y
878# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 934# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
879CONFIG_LEGACY_PTYS=y 935CONFIG_LEGACY_PTYS=y
@@ -934,11 +990,6 @@ CONFIG_I2C_MPC=y
934# CONFIG_I2C_TINY_USB is not set 990# CONFIG_I2C_TINY_USB is not set
935 991
936# 992#
937# Graphics adapter I2C/DDC channel drivers
938#
939# CONFIG_I2C_VOODOO3 is not set
940
941#
942# Other I2C/SMBus bus drivers 993# Other I2C/SMBus bus drivers
943# 994#
944# CONFIG_I2C_PCA_PLATFORM is not set 995# CONFIG_I2C_PCA_PLATFORM is not set
@@ -947,7 +998,6 @@ CONFIG_I2C_MPC=y
947# 998#
948# Miscellaneous I2C Chip support 999# Miscellaneous I2C Chip support
949# 1000#
950# CONFIG_DS1682 is not set
951# CONFIG_SENSORS_TSL2550 is not set 1001# CONFIG_SENSORS_TSL2550 is not set
952# CONFIG_I2C_DEBUG_CORE is not set 1002# CONFIG_I2C_DEBUG_CORE is not set
953# CONFIG_I2C_DEBUG_ALGO is not set 1003# CONFIG_I2C_DEBUG_ALGO is not set
@@ -962,7 +1012,10 @@ CONFIG_SPI_MASTER=y
962# 1012#
963# CONFIG_SPI_BITBANG is not set 1013# CONFIG_SPI_BITBANG is not set
964# CONFIG_SPI_GPIO is not set 1014# CONFIG_SPI_GPIO is not set
1015# CONFIG_SPI_MPC52xx is not set
965CONFIG_SPI_MPC52xx_PSC=m 1016CONFIG_SPI_MPC52xx_PSC=m
1017# CONFIG_SPI_XILINX is not set
1018# CONFIG_SPI_DESIGNWARE is not set
966 1019
967# 1020#
968# SPI Protocol Masters 1021# SPI Protocol Masters
@@ -995,6 +1048,7 @@ CONFIG_GPIOLIB=y
995# 1048#
996# PCI GPIO expanders: 1049# PCI GPIO expanders:
997# 1050#
1051# CONFIG_GPIO_CS5535 is not set
998# CONFIG_GPIO_BT8XX is not set 1052# CONFIG_GPIO_BT8XX is not set
999# CONFIG_GPIO_LANGWELL is not set 1053# CONFIG_GPIO_LANGWELL is not set
1000 1054
@@ -1042,6 +1096,7 @@ CONFIG_HWMON=y
1042# CONFIG_SENSORS_IT87 is not set 1096# CONFIG_SENSORS_IT87 is not set
1043# CONFIG_SENSORS_LM63 is not set 1097# CONFIG_SENSORS_LM63 is not set
1044# CONFIG_SENSORS_LM70 is not set 1098# CONFIG_SENSORS_LM70 is not set
1099# CONFIG_SENSORS_LM73 is not set
1045# CONFIG_SENSORS_LM75 is not set 1100# CONFIG_SENSORS_LM75 is not set
1046# CONFIG_SENSORS_LM77 is not set 1101# CONFIG_SENSORS_LM77 is not set
1047# CONFIG_SENSORS_LM78 is not set 1102# CONFIG_SENSORS_LM78 is not set
@@ -1083,6 +1138,7 @@ CONFIG_HWMON=y
1083# CONFIG_SENSORS_W83627HF is not set 1138# CONFIG_SENSORS_W83627HF is not set
1084# CONFIG_SENSORS_W83627EHF is not set 1139# CONFIG_SENSORS_W83627EHF is not set
1085# CONFIG_SENSORS_LIS3_SPI is not set 1140# CONFIG_SENSORS_LIS3_SPI is not set
1141# CONFIG_SENSORS_LIS3_I2C is not set
1086# CONFIG_THERMAL is not set 1142# CONFIG_THERMAL is not set
1087CONFIG_WATCHDOG=y 1143CONFIG_WATCHDOG=y
1088# CONFIG_WATCHDOG_NOWAYOUT is not set 1144# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1122,6 +1178,7 @@ CONFIG_SSB_POSSIBLE=y
1122# CONFIG_TWL4030_CORE is not set 1178# CONFIG_TWL4030_CORE is not set
1123# CONFIG_MFD_TMIO is not set 1179# CONFIG_MFD_TMIO is not set
1124# CONFIG_PMIC_DA903X is not set 1180# CONFIG_PMIC_DA903X is not set
1181# CONFIG_PMIC_ADP5520 is not set
1125# CONFIG_MFD_WM8400 is not set 1182# CONFIG_MFD_WM8400 is not set
1126# CONFIG_MFD_WM831X is not set 1183# CONFIG_MFD_WM831X is not set
1127# CONFIG_MFD_WM8350_I2C is not set 1184# CONFIG_MFD_WM8350_I2C is not set
@@ -1129,6 +1186,8 @@ CONFIG_SSB_POSSIBLE=y
1129# CONFIG_MFD_MC13783 is not set 1186# CONFIG_MFD_MC13783 is not set
1130# CONFIG_AB3100_CORE is not set 1187# CONFIG_AB3100_CORE is not set
1131# CONFIG_EZX_PCAP is not set 1188# CONFIG_EZX_PCAP is not set
1189# CONFIG_MFD_88PM8607 is not set
1190# CONFIG_AB4500_CORE is not set
1132# CONFIG_REGULATOR is not set 1191# CONFIG_REGULATOR is not set
1133# CONFIG_MEDIA_SUPPORT is not set 1192# CONFIG_MEDIA_SUPPORT is not set
1134 1193
@@ -1322,7 +1381,6 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
1322# CONFIG_USB_R8A66597_HCD is not set 1381# CONFIG_USB_R8A66597_HCD is not set
1323# CONFIG_USB_WHCI_HCD is not set 1382# CONFIG_USB_WHCI_HCD is not set
1324# CONFIG_USB_HWA_HCD is not set 1383# CONFIG_USB_HWA_HCD is not set
1325# CONFIG_USB_MUSB_HDRC is not set
1326 1384
1327# 1385#
1328# USB Device Class drivers 1386# USB Device Class drivers
@@ -1440,6 +1498,7 @@ CONFIG_RTC_DRV_DS1307=y
1440# CONFIG_RTC_DRV_PCF8563 is not set 1498# CONFIG_RTC_DRV_PCF8563 is not set
1441# CONFIG_RTC_DRV_PCF8583 is not set 1499# CONFIG_RTC_DRV_PCF8583 is not set
1442# CONFIG_RTC_DRV_M41T80 is not set 1500# CONFIG_RTC_DRV_M41T80 is not set
1501# CONFIG_RTC_DRV_BQ32K is not set
1443# CONFIG_RTC_DRV_S35390A is not set 1502# CONFIG_RTC_DRV_S35390A is not set
1444# CONFIG_RTC_DRV_FM3130 is not set 1503# CONFIG_RTC_DRV_FM3130 is not set
1445# CONFIG_RTC_DRV_RX8581 is not set 1504# CONFIG_RTC_DRV_RX8581 is not set
@@ -1469,7 +1528,9 @@ CONFIG_RTC_DRV_DS1307=y
1469# CONFIG_RTC_DRV_M48T86 is not set 1528# CONFIG_RTC_DRV_M48T86 is not set
1470# CONFIG_RTC_DRV_M48T35 is not set 1529# CONFIG_RTC_DRV_M48T35 is not set
1471# CONFIG_RTC_DRV_M48T59 is not set 1530# CONFIG_RTC_DRV_M48T59 is not set
1531# CONFIG_RTC_DRV_MSM6242 is not set
1472# CONFIG_RTC_DRV_BQ4802 is not set 1532# CONFIG_RTC_DRV_BQ4802 is not set
1533# CONFIG_RTC_DRV_RP5C01 is not set
1473# CONFIG_RTC_DRV_V3020 is not set 1534# CONFIG_RTC_DRV_V3020 is not set
1474 1535
1475# 1536#
@@ -1731,6 +1792,7 @@ CONFIG_DEBUG_INFO=y
1731# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 1792# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1732# CONFIG_FAULT_INJECTION is not set 1793# CONFIG_FAULT_INJECTION is not set
1733# CONFIG_LATENCYTOP is not set 1794# CONFIG_LATENCYTOP is not set
1795# CONFIG_SYSCTL_SYSCALL_CHECK is not set
1734# CONFIG_DEBUG_PAGEALLOC is not set 1796# CONFIG_DEBUG_PAGEALLOC is not set
1735CONFIG_HAVE_FUNCTION_TRACER=y 1797CONFIG_HAVE_FUNCTION_TRACER=y
1736CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 1798CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -1774,7 +1836,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1774# CONFIG_KEYS is not set 1836# CONFIG_KEYS is not set
1775# CONFIG_SECURITY is not set 1837# CONFIG_SECURITY is not set
1776# CONFIG_SECURITYFS is not set 1838# CONFIG_SECURITYFS is not set
1777# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1839# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1840# CONFIG_DEFAULT_SECURITY_SMACK is not set
1841# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1842CONFIG_DEFAULT_SECURITY_DAC=y
1843CONFIG_DEFAULT_SECURITY=""
1778CONFIG_CRYPTO=y 1844CONFIG_CRYPTO=y
1779 1845
1780# 1846#
diff --git a/arch/powerpc/configs/mpc7448_hpc2_defconfig b/arch/powerpc/configs/mpc7448_hpc2_defconfig
index d8b364a45944..1315b775a6d2 100644
--- a/arch/powerpc/configs/mpc7448_hpc2_defconfig
+++ b/arch/powerpc/configs/mpc7448_hpc2_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:10 2009 4# Wed Jan 6 09:24:04 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -58,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
58CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y 60CONFIG_DTC=y
60CONFIG_DEFAULT_UIMAGE=y 61CONFIG_DEFAULT_UIMAGE=y
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
61# CONFIG_PPC_DCR_NATIVE is not set 63# CONFIG_PPC_DCR_NATIVE is not set
62# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
63CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -85,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
85# 87#
86CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
88# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
89CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
90# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -167,14 +170,41 @@ CONFIG_LBDAF=y
167# IO Schedulers 170# IO Schedulers
168# 171#
169CONFIG_IOSCHED_NOOP=y 172CONFIG_IOSCHED_NOOP=y
170CONFIG_IOSCHED_AS=y
171CONFIG_IOSCHED_DEADLINE=y 173CONFIG_IOSCHED_DEADLINE=y
172CONFIG_IOSCHED_CFQ=y 174CONFIG_IOSCHED_CFQ=y
173CONFIG_DEFAULT_AS=y
174# CONFIG_DEFAULT_DEADLINE is not set 175# CONFIG_DEFAULT_DEADLINE is not set
175# CONFIG_DEFAULT_CFQ is not set 176CONFIG_DEFAULT_CFQ=y
176# CONFIG_DEFAULT_NOOP is not set 177# CONFIG_DEFAULT_NOOP is not set
177CONFIG_DEFAULT_IOSCHED="anticipatory" 178CONFIG_DEFAULT_IOSCHED="cfq"
179# CONFIG_INLINE_SPIN_TRYLOCK is not set
180# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
181# CONFIG_INLINE_SPIN_LOCK is not set
182# CONFIG_INLINE_SPIN_LOCK_BH is not set
183# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
184# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
185CONFIG_INLINE_SPIN_UNLOCK=y
186# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
187CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
188# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
189# CONFIG_INLINE_READ_TRYLOCK is not set
190# CONFIG_INLINE_READ_LOCK is not set
191# CONFIG_INLINE_READ_LOCK_BH is not set
192# CONFIG_INLINE_READ_LOCK_IRQ is not set
193# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
194CONFIG_INLINE_READ_UNLOCK=y
195# CONFIG_INLINE_READ_UNLOCK_BH is not set
196CONFIG_INLINE_READ_UNLOCK_IRQ=y
197# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
198# CONFIG_INLINE_WRITE_TRYLOCK is not set
199# CONFIG_INLINE_WRITE_LOCK is not set
200# CONFIG_INLINE_WRITE_LOCK_BH is not set
201# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
202# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
203CONFIG_INLINE_WRITE_UNLOCK=y
204# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
205CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
206# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
207# CONFIG_MUTEX_SPIN_ON_OWNER is not set
178# CONFIG_FREEZER is not set 208# CONFIG_FREEZER is not set
179 209
180# 210#
@@ -199,6 +229,8 @@ CONFIG_MPC7448HPC2=y
199# CONFIG_PPC_PRPMC2800 is not set 229# CONFIG_PPC_PRPMC2800 is not set
200# CONFIG_PPC_C2K is not set 230# CONFIG_PPC_C2K is not set
201CONFIG_TSI108_BRIDGE=y 231CONFIG_TSI108_BRIDGE=y
232# CONFIG_GAMECUBE is not set
233# CONFIG_WII is not set
202# CONFIG_AMIGAONE is not set 234# CONFIG_AMIGAONE is not set
203CONFIG_PPC_OF_BOOT_TRAMPOLINE=y 235CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
204# CONFIG_IPIC is not set 236# CONFIG_IPIC is not set
@@ -244,6 +276,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
244CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 276CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
245# CONFIG_KEXEC is not set 277# CONFIG_KEXEC is not set
246# CONFIG_CRASH_DUMP is not set 278# CONFIG_CRASH_DUMP is not set
279CONFIG_SPARSE_IRQ=y
247CONFIG_MAX_ACTIVE_REGIONS=32 280CONFIG_MAX_ACTIVE_REGIONS=32
248CONFIG_ARCH_FLATMEM_ENABLE=y 281CONFIG_ARCH_FLATMEM_ENABLE=y
249CONFIG_ARCH_POPULATES_NODE_MAP=y 282CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -260,8 +293,6 @@ CONFIG_MIGRATION=y
260CONFIG_ZONE_DMA_FLAG=1 293CONFIG_ZONE_DMA_FLAG=1
261CONFIG_BOUNCE=y 294CONFIG_BOUNCE=y
262CONFIG_VIRT_TO_BUS=y 295CONFIG_VIRT_TO_BUS=y
263CONFIG_HAVE_MLOCK=y
264CONFIG_HAVE_MLOCKED_PAGE_BIT=y
265# CONFIG_KSM is not set 296# CONFIG_KSM is not set
266CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 297CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
267CONFIG_PPC_4K_PAGES=y 298CONFIG_PPC_4K_PAGES=y
@@ -385,9 +416,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
385# CONFIG_AF_RXRPC is not set 416# CONFIG_AF_RXRPC is not set
386CONFIG_WIRELESS=y 417CONFIG_WIRELESS=y
387# CONFIG_CFG80211 is not set 418# CONFIG_CFG80211 is not set
388CONFIG_CFG80211_DEFAULT_PS_VALUE=0
389CONFIG_WIRELESS_OLD_REGULATORY=y
390# CONFIG_WIRELESS_EXT is not set
391# CONFIG_LIB80211 is not set 419# CONFIG_LIB80211 is not set
392 420
393# 421#
@@ -424,6 +452,10 @@ CONFIG_BLK_DEV=y
424# CONFIG_BLK_DEV_COW_COMMON is not set 452# CONFIG_BLK_DEV_COW_COMMON is not set
425CONFIG_BLK_DEV_LOOP=y 453CONFIG_BLK_DEV_LOOP=y
426# CONFIG_BLK_DEV_CRYPTOLOOP is not set 454# CONFIG_BLK_DEV_CRYPTOLOOP is not set
455
456#
457# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
458#
427# CONFIG_BLK_DEV_NBD is not set 459# CONFIG_BLK_DEV_NBD is not set
428# CONFIG_BLK_DEV_SX8 is not set 460# CONFIG_BLK_DEV_SX8 is not set
429CONFIG_BLK_DEV_RAM=y 461CONFIG_BLK_DEV_RAM=y
@@ -487,7 +519,9 @@ CONFIG_SCSI_LOWLEVEL=y
487# CONFIG_SCSI_BNX2_ISCSI is not set 519# CONFIG_SCSI_BNX2_ISCSI is not set
488# CONFIG_BE2ISCSI is not set 520# CONFIG_BE2ISCSI is not set
489# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 521# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
522# CONFIG_SCSI_HPSA is not set
490# CONFIG_SCSI_3W_9XXX is not set 523# CONFIG_SCSI_3W_9XXX is not set
524# CONFIG_SCSI_3W_SAS is not set
491# CONFIG_SCSI_ACARD is not set 525# CONFIG_SCSI_ACARD is not set
492# CONFIG_SCSI_AACRAID is not set 526# CONFIG_SCSI_AACRAID is not set
493# CONFIG_SCSI_AIC7XXX is not set 527# CONFIG_SCSI_AIC7XXX is not set
@@ -526,6 +560,7 @@ CONFIG_SCSI_LOWLEVEL=y
526# CONFIG_SCSI_NSP32 is not set 560# CONFIG_SCSI_NSP32 is not set
527# CONFIG_SCSI_DEBUG is not set 561# CONFIG_SCSI_DEBUG is not set
528# CONFIG_SCSI_PMCRAID is not set 562# CONFIG_SCSI_PMCRAID is not set
563# CONFIG_SCSI_PM8001 is not set
529# CONFIG_SCSI_SRP is not set 564# CONFIG_SCSI_SRP is not set
530# CONFIG_SCSI_BFA_FC is not set 565# CONFIG_SCSI_BFA_FC is not set
531# CONFIG_SCSI_DH is not set 566# CONFIG_SCSI_DH is not set
@@ -580,15 +615,16 @@ CONFIG_SATA_MV=y
580# CONFIG_PATA_NS87415 is not set 615# CONFIG_PATA_NS87415 is not set
581# CONFIG_PATA_OPTI is not set 616# CONFIG_PATA_OPTI is not set
582# CONFIG_PATA_OPTIDMA is not set 617# CONFIG_PATA_OPTIDMA is not set
618# CONFIG_PATA_PDC2027X is not set
583# CONFIG_PATA_PDC_OLD is not set 619# CONFIG_PATA_PDC_OLD is not set
584# CONFIG_PATA_RADISYS is not set 620# CONFIG_PATA_RADISYS is not set
585# CONFIG_PATA_RDC is not set 621# CONFIG_PATA_RDC is not set
586# CONFIG_PATA_RZ1000 is not set 622# CONFIG_PATA_RZ1000 is not set
587# CONFIG_PATA_SC1200 is not set 623# CONFIG_PATA_SC1200 is not set
588# CONFIG_PATA_SERVERWORKS is not set 624# CONFIG_PATA_SERVERWORKS is not set
589# CONFIG_PATA_PDC2027X is not set
590# CONFIG_PATA_SIL680 is not set 625# CONFIG_PATA_SIL680 is not set
591# CONFIG_PATA_SIS is not set 626# CONFIG_PATA_SIS is not set
627# CONFIG_PATA_TOSHIBA is not set
592# CONFIG_PATA_VIA is not set 628# CONFIG_PATA_VIA is not set
593# CONFIG_PATA_WINBOND is not set 629# CONFIG_PATA_WINBOND is not set
594# CONFIG_PATA_PLATFORM is not set 630# CONFIG_PATA_PLATFORM is not set
@@ -605,7 +641,7 @@ CONFIG_SATA_MV=y
605# 641#
606 642
607# 643#
608# See the help texts for more information. 644# The newer stack is recommended.
609# 645#
610# CONFIG_FIREWIRE is not set 646# CONFIG_FIREWIRE is not set
611# CONFIG_IEEE1394 is not set 647# CONFIG_IEEE1394 is not set
@@ -731,8 +767,10 @@ CONFIG_CHELSIO_T3_DEPENDS=y
731# CONFIG_BE2NET is not set 767# CONFIG_BE2NET is not set
732# CONFIG_TR is not set 768# CONFIG_TR is not set
733CONFIG_WLAN=y 769CONFIG_WLAN=y
734# CONFIG_WLAN_PRE80211 is not set 770# CONFIG_AIRO is not set
735# CONFIG_WLAN_80211 is not set 771# CONFIG_ATMEL is not set
772# CONFIG_PRISM54 is not set
773# CONFIG_HOSTAP is not set
736 774
737# 775#
738# Enable WiMAX (Networking options) to see the WiMAX drivers 776# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -746,6 +784,7 @@ CONFIG_WLAN=y
746# CONFIG_NETCONSOLE is not set 784# CONFIG_NETCONSOLE is not set
747# CONFIG_NETPOLL is not set 785# CONFIG_NETPOLL is not set
748# CONFIG_NET_POLL_CONTROLLER is not set 786# CONFIG_NET_POLL_CONTROLLER is not set
787# CONFIG_VMXNET3 is not set
749# CONFIG_ISDN is not set 788# CONFIG_ISDN is not set
750# CONFIG_PHONE is not set 789# CONFIG_PHONE is not set
751 790
@@ -755,6 +794,7 @@ CONFIG_WLAN=y
755CONFIG_INPUT=y 794CONFIG_INPUT=y
756# CONFIG_INPUT_FF_MEMLESS is not set 795# CONFIG_INPUT_FF_MEMLESS is not set
757# CONFIG_INPUT_POLLDEV is not set 796# CONFIG_INPUT_POLLDEV is not set
797# CONFIG_INPUT_SPARSEKMAP is not set
758 798
759# 799#
760# Userland interfaces 800# Userland interfaces
@@ -806,6 +846,7 @@ CONFIG_SERIAL_CORE=y
806CONFIG_SERIAL_CORE_CONSOLE=y 846CONFIG_SERIAL_CORE_CONSOLE=y
807# CONFIG_SERIAL_JSM is not set 847# CONFIG_SERIAL_JSM is not set
808# CONFIG_SERIAL_OF_PLATFORM is not set 848# CONFIG_SERIAL_OF_PLATFORM is not set
849# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
809CONFIG_UNIX98_PTYS=y 850CONFIG_UNIX98_PTYS=y
810# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 851# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
811CONFIG_LEGACY_PTYS=y 852CONFIG_LEGACY_PTYS=y
@@ -1091,7 +1132,7 @@ CONFIG_FRAME_WARN=1024
1091# CONFIG_DEBUG_KERNEL is not set 1132# CONFIG_DEBUG_KERNEL is not set
1092# CONFIG_SLUB_DEBUG_ON is not set 1133# CONFIG_SLUB_DEBUG_ON is not set
1093# CONFIG_SLUB_STATS is not set 1134# CONFIG_SLUB_STATS is not set
1094# CONFIG_DEBUG_BUGVERBOSE is not set 1135CONFIG_DEBUG_BUGVERBOSE=y
1095# CONFIG_DEBUG_MEMORY_INIT is not set 1136# CONFIG_DEBUG_MEMORY_INIT is not set
1096# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1137# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1097# CONFIG_LATENCYTOP is not set 1138# CONFIG_LATENCYTOP is not set
@@ -1118,7 +1159,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1118# CONFIG_KEYS is not set 1159# CONFIG_KEYS is not set
1119# CONFIG_SECURITY is not set 1160# CONFIG_SECURITY is not set
1120# CONFIG_SECURITYFS is not set 1161# CONFIG_SECURITYFS is not set
1121# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1162# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1163# CONFIG_DEFAULT_SECURITY_SMACK is not set
1164# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1165CONFIG_DEFAULT_SECURITY_DAC=y
1166CONFIG_DEFAULT_SECURITY=""
1122CONFIG_CRYPTO=y 1167CONFIG_CRYPTO=y
1123 1168
1124# 1169#
diff --git a/arch/powerpc/configs/mpc8272_ads_defconfig b/arch/powerpc/configs/mpc8272_ads_defconfig
index 00fad81b6fce..9073778d3575 100644
--- a/arch/powerpc/configs/mpc8272_ads_defconfig
+++ b/arch/powerpc/configs/mpc8272_ads_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:11 2009 4# Wed Jan 6 09:24:05 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62# CONFIG_PPC_DCR_NATIVE is not set 64# CONFIG_PPC_DCR_NATIVE is not set
63# CONFIG_PPC_DCR_MMIO is not set 65# CONFIG_PPC_DCR_MMIO is not set
64CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -85,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
85# 87#
86CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
88# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
89CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
90# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -161,14 +164,41 @@ CONFIG_BLK_DEV_BSG=y
161# IO Schedulers 164# IO Schedulers
162# 165#
163CONFIG_IOSCHED_NOOP=y 166CONFIG_IOSCHED_NOOP=y
164CONFIG_IOSCHED_AS=y
165CONFIG_IOSCHED_DEADLINE=y 167CONFIG_IOSCHED_DEADLINE=y
166CONFIG_IOSCHED_CFQ=y 168CONFIG_IOSCHED_CFQ=y
167CONFIG_DEFAULT_AS=y
168# CONFIG_DEFAULT_DEADLINE is not set 169# CONFIG_DEFAULT_DEADLINE is not set
169# CONFIG_DEFAULT_CFQ is not set 170CONFIG_DEFAULT_CFQ=y
170# CONFIG_DEFAULT_NOOP is not set 171# CONFIG_DEFAULT_NOOP is not set
171CONFIG_DEFAULT_IOSCHED="anticipatory" 172CONFIG_DEFAULT_IOSCHED="cfq"
173# CONFIG_INLINE_SPIN_TRYLOCK is not set
174# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
175# CONFIG_INLINE_SPIN_LOCK is not set
176# CONFIG_INLINE_SPIN_LOCK_BH is not set
177# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
178# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
179CONFIG_INLINE_SPIN_UNLOCK=y
180# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
181CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
182# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
183# CONFIG_INLINE_READ_TRYLOCK is not set
184# CONFIG_INLINE_READ_LOCK is not set
185# CONFIG_INLINE_READ_LOCK_BH is not set
186# CONFIG_INLINE_READ_LOCK_IRQ is not set
187# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
188CONFIG_INLINE_READ_UNLOCK=y
189# CONFIG_INLINE_READ_UNLOCK_BH is not set
190CONFIG_INLINE_READ_UNLOCK_IRQ=y
191# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
192# CONFIG_INLINE_WRITE_TRYLOCK is not set
193# CONFIG_INLINE_WRITE_LOCK is not set
194# CONFIG_INLINE_WRITE_LOCK_BH is not set
195# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
196# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
197CONFIG_INLINE_WRITE_UNLOCK=y
198# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
199CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
200# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
201# CONFIG_MUTEX_SPIN_ON_OWNER is not set
172# CONFIG_FREEZER is not set 202# CONFIG_FREEZER is not set
173 203
174# 204#
@@ -240,6 +270,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
240CONFIG_ARCH_HAS_WALK_MEMORY=y 270CONFIG_ARCH_HAS_WALK_MEMORY=y
241CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 271CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
242# CONFIG_CRASH_DUMP is not set 272# CONFIG_CRASH_DUMP is not set
273CONFIG_SPARSE_IRQ=y
243CONFIG_MAX_ACTIVE_REGIONS=32 274CONFIG_MAX_ACTIVE_REGIONS=32
244CONFIG_ARCH_FLATMEM_ENABLE=y 275CONFIG_ARCH_FLATMEM_ENABLE=y
245CONFIG_ARCH_POPULATES_NODE_MAP=y 276CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -252,8 +283,6 @@ CONFIG_MIGRATION=y
252CONFIG_ZONE_DMA_FLAG=1 283CONFIG_ZONE_DMA_FLAG=1
253CONFIG_BOUNCE=y 284CONFIG_BOUNCE=y
254CONFIG_VIRT_TO_BUS=y 285CONFIG_VIRT_TO_BUS=y
255CONFIG_HAVE_MLOCK=y
256CONFIG_HAVE_MLOCKED_PAGE_BIT=y
257# CONFIG_KSM is not set 286# CONFIG_KSM is not set
258CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 287CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
259CONFIG_PPC_4K_PAGES=y 288CONFIG_PPC_4K_PAGES=y
@@ -403,9 +432,6 @@ CONFIG_NETFILTER_ADVANCED=y
403# CONFIG_BT is not set 432# CONFIG_BT is not set
404CONFIG_WIRELESS=y 433CONFIG_WIRELESS=y
405# CONFIG_CFG80211 is not set 434# CONFIG_CFG80211 is not set
406CONFIG_CFG80211_DEFAULT_PS_VALUE=0
407CONFIG_WIRELESS_OLD_REGULATORY=y
408# CONFIG_WIRELESS_EXT is not set
409# CONFIG_LIB80211 is not set 435# CONFIG_LIB80211 is not set
410 436
411# 437#
@@ -526,6 +552,10 @@ CONFIG_BLK_DEV=y
526# CONFIG_BLK_DEV_COW_COMMON is not set 552# CONFIG_BLK_DEV_COW_COMMON is not set
527CONFIG_BLK_DEV_LOOP=y 553CONFIG_BLK_DEV_LOOP=y
528# CONFIG_BLK_DEV_CRYPTOLOOP is not set 554# CONFIG_BLK_DEV_CRYPTOLOOP is not set
555
556#
557# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
558#
529# CONFIG_BLK_DEV_NBD is not set 559# CONFIG_BLK_DEV_NBD is not set
530# CONFIG_BLK_DEV_SX8 is not set 560# CONFIG_BLK_DEV_SX8 is not set
531# CONFIG_BLK_DEV_RAM is not set 561# CONFIG_BLK_DEV_RAM is not set
@@ -556,7 +586,7 @@ CONFIG_HAVE_IDE=y
556# 586#
557 587
558# 588#
559# See the help texts for more information. 589# The newer stack is recommended.
560# 590#
561# CONFIG_FIREWIRE is not set 591# CONFIG_FIREWIRE is not set
562# CONFIG_IEEE1394 is not set 592# CONFIG_IEEE1394 is not set
@@ -661,8 +691,9 @@ CONFIG_CHELSIO_T3_DEPENDS=y
661# CONFIG_BE2NET is not set 691# CONFIG_BE2NET is not set
662# CONFIG_TR is not set 692# CONFIG_TR is not set
663CONFIG_WLAN=y 693CONFIG_WLAN=y
664# CONFIG_WLAN_PRE80211 is not set 694# CONFIG_AIRO is not set
665# CONFIG_WLAN_80211 is not set 695# CONFIG_ATMEL is not set
696# CONFIG_HOSTAP is not set
666 697
667# 698#
668# Enable WiMAX (Networking options) to see the WiMAX drivers 699# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -679,6 +710,7 @@ CONFIG_PPP_DEFLATE=y
679CONFIG_SLHC=y 710CONFIG_SLHC=y
680# CONFIG_NETPOLL is not set 711# CONFIG_NETPOLL is not set
681# CONFIG_NET_POLL_CONTROLLER is not set 712# CONFIG_NET_POLL_CONTROLLER is not set
713# CONFIG_VMXNET3 is not set
682# CONFIG_ISDN is not set 714# CONFIG_ISDN is not set
683# CONFIG_PHONE is not set 715# CONFIG_PHONE is not set
684 716
@@ -688,6 +720,7 @@ CONFIG_SLHC=y
688CONFIG_INPUT=y 720CONFIG_INPUT=y
689# CONFIG_INPUT_FF_MEMLESS is not set 721# CONFIG_INPUT_FF_MEMLESS is not set
690# CONFIG_INPUT_POLLDEV is not set 722# CONFIG_INPUT_POLLDEV is not set
723# CONFIG_INPUT_SPARSEKMAP is not set
691 724
692# 725#
693# Userland interfaces 726# Userland interfaces
@@ -740,6 +773,7 @@ CONFIG_SERIO_SERPORT=y
740CONFIG_SERIO_LIBPS2=y 773CONFIG_SERIO_LIBPS2=y
741# CONFIG_SERIO_RAW is not set 774# CONFIG_SERIO_RAW is not set
742# CONFIG_SERIO_XILINX_XPS_PS2 is not set 775# CONFIG_SERIO_XILINX_XPS_PS2 is not set
776# CONFIG_SERIO_ALTERA_PS2 is not set
743# CONFIG_GAMEPORT is not set 777# CONFIG_GAMEPORT is not set
744 778
745# 779#
@@ -763,6 +797,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
763CONFIG_SERIAL_CPM=y 797CONFIG_SERIAL_CPM=y
764CONFIG_SERIAL_CPM_CONSOLE=y 798CONFIG_SERIAL_CPM_CONSOLE=y
765# CONFIG_SERIAL_JSM is not set 799# CONFIG_SERIAL_JSM is not set
800# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
766CONFIG_UNIX98_PTYS=y 801CONFIG_UNIX98_PTYS=y
767# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 802# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
768CONFIG_LEGACY_PTYS=y 803CONFIG_LEGACY_PTYS=y
@@ -799,6 +834,7 @@ CONFIG_GPIOLIB=y
799# 834#
800# PCI GPIO expanders: 835# PCI GPIO expanders:
801# 836#
837# CONFIG_GPIO_CS5535 is not set
802# CONFIG_GPIO_BT8XX is not set 838# CONFIG_GPIO_BT8XX is not set
803# CONFIG_GPIO_LANGWELL is not set 839# CONFIG_GPIO_LANGWELL is not set
804 840
@@ -1131,7 +1167,11 @@ CONFIG_BDI_SWITCH=y
1131# CONFIG_KEYS is not set 1167# CONFIG_KEYS is not set
1132# CONFIG_SECURITY is not set 1168# CONFIG_SECURITY is not set
1133# CONFIG_SECURITYFS is not set 1169# CONFIG_SECURITYFS is not set
1134# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1170# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1171# CONFIG_DEFAULT_SECURITY_SMACK is not set
1172# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1173CONFIG_DEFAULT_SECURITY_DAC=y
1174CONFIG_DEFAULT_SECURITY=""
1135CONFIG_CRYPTO=y 1175CONFIG_CRYPTO=y
1136 1176
1137# 1177#
diff --git a/arch/powerpc/configs/mpc83xx_defconfig b/arch/powerpc/configs/mpc83xx_defconfig
index 64dff21516cb..05bec4835687 100644
--- a/arch/powerpc/configs/mpc83xx_defconfig
+++ b/arch/powerpc/configs/mpc83xx_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:12 2009 4# Wed Jan 6 09:24:06 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -37,6 +37,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 37# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 38# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
39CONFIG_IRQ_PER_CPU=y 39CONFIG_IRQ_PER_CPU=y
40CONFIG_NR_IRQS=512
40CONFIG_STACKTRACE_SUPPORT=y 41CONFIG_STACKTRACE_SUPPORT=y
41CONFIG_HAVE_LATENCYTOP_SUPPORT=y 42CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y 43CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,7 @@ CONFIG_GENERIC_BUG=y
61CONFIG_DTC=y 62CONFIG_DTC=y
62CONFIG_DEFAULT_UIMAGE=y 63CONFIG_DEFAULT_UIMAGE=y
63CONFIG_REDBOOT=y 64CONFIG_REDBOOT=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
64CONFIG_ARCH_SUSPEND_POSSIBLE=y 66CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
@@ -89,6 +91,7 @@ CONFIG_SYSVIPC_SYSCTL=y
89# 91#
90CONFIG_TREE_RCU=y 92CONFIG_TREE_RCU=y
91# CONFIG_TREE_PREEMPT_RCU is not set 93# CONFIG_TREE_PREEMPT_RCU is not set
94# CONFIG_TINY_RCU is not set
92# CONFIG_RCU_TRACE is not set 95# CONFIG_RCU_TRACE is not set
93CONFIG_RCU_FANOUT=32 96CONFIG_RCU_FANOUT=32
94# CONFIG_RCU_FANOUT_EXACT is not set 97# CONFIG_RCU_FANOUT_EXACT is not set
@@ -176,14 +179,41 @@ CONFIG_LBDAF=y
176# IO Schedulers 179# IO Schedulers
177# 180#
178CONFIG_IOSCHED_NOOP=y 181CONFIG_IOSCHED_NOOP=y
179CONFIG_IOSCHED_AS=y
180CONFIG_IOSCHED_DEADLINE=y 182CONFIG_IOSCHED_DEADLINE=y
181CONFIG_IOSCHED_CFQ=y 183CONFIG_IOSCHED_CFQ=y
182CONFIG_DEFAULT_AS=y
183# CONFIG_DEFAULT_DEADLINE is not set 184# CONFIG_DEFAULT_DEADLINE is not set
184# CONFIG_DEFAULT_CFQ is not set 185CONFIG_DEFAULT_CFQ=y
185# CONFIG_DEFAULT_NOOP is not set 186# CONFIG_DEFAULT_NOOP is not set
186CONFIG_DEFAULT_IOSCHED="anticipatory" 187CONFIG_DEFAULT_IOSCHED="cfq"
188# CONFIG_INLINE_SPIN_TRYLOCK is not set
189# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
190# CONFIG_INLINE_SPIN_LOCK is not set
191# CONFIG_INLINE_SPIN_LOCK_BH is not set
192# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
193# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
194CONFIG_INLINE_SPIN_UNLOCK=y
195# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
196CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
197# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
198# CONFIG_INLINE_READ_TRYLOCK is not set
199# CONFIG_INLINE_READ_LOCK is not set
200# CONFIG_INLINE_READ_LOCK_BH is not set
201# CONFIG_INLINE_READ_LOCK_IRQ is not set
202# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
203CONFIG_INLINE_READ_UNLOCK=y
204# CONFIG_INLINE_READ_UNLOCK_BH is not set
205CONFIG_INLINE_READ_UNLOCK_IRQ=y
206# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
207# CONFIG_INLINE_WRITE_TRYLOCK is not set
208# CONFIG_INLINE_WRITE_LOCK is not set
209# CONFIG_INLINE_WRITE_LOCK_BH is not set
210# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
211# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
212CONFIG_INLINE_WRITE_UNLOCK=y
213# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
214CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
215# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
216# CONFIG_MUTEX_SPIN_ON_OWNER is not set
187# CONFIG_FREEZER is not set 217# CONFIG_FREEZER is not set
188 218
189# 219#
@@ -266,6 +296,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
266CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 296CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
267# CONFIG_KEXEC is not set 297# CONFIG_KEXEC is not set
268# CONFIG_CRASH_DUMP is not set 298# CONFIG_CRASH_DUMP is not set
299CONFIG_SPARSE_IRQ=y
269CONFIG_MAX_ACTIVE_REGIONS=32 300CONFIG_MAX_ACTIVE_REGIONS=32
270CONFIG_ARCH_FLATMEM_ENABLE=y 301CONFIG_ARCH_FLATMEM_ENABLE=y
271CONFIG_ARCH_POPULATES_NODE_MAP=y 302CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -282,8 +313,6 @@ CONFIG_MIGRATION=y
282CONFIG_ZONE_DMA_FLAG=1 313CONFIG_ZONE_DMA_FLAG=1
283CONFIG_BOUNCE=y 314CONFIG_BOUNCE=y
284CONFIG_VIRT_TO_BUS=y 315CONFIG_VIRT_TO_BUS=y
285CONFIG_HAVE_MLOCK=y
286CONFIG_HAVE_MLOCKED_PAGE_BIT=y
287# CONFIG_KSM is not set 316# CONFIG_KSM is not set
288CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 317CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
289CONFIG_PPC_4K_PAGES=y 318CONFIG_PPC_4K_PAGES=y
@@ -413,9 +442,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
413# CONFIG_AF_RXRPC is not set 442# CONFIG_AF_RXRPC is not set
414CONFIG_WIRELESS=y 443CONFIG_WIRELESS=y
415# CONFIG_CFG80211 is not set 444# CONFIG_CFG80211 is not set
416CONFIG_CFG80211_DEFAULT_PS_VALUE=0
417CONFIG_WIRELESS_OLD_REGULATORY=y
418# CONFIG_WIRELESS_EXT is not set
419# CONFIG_LIB80211 is not set 445# CONFIG_LIB80211 is not set
420 446
421# 447#
@@ -548,6 +574,10 @@ CONFIG_BLK_DEV=y
548# CONFIG_BLK_DEV_COW_COMMON is not set 574# CONFIG_BLK_DEV_COW_COMMON is not set
549CONFIG_BLK_DEV_LOOP=y 575CONFIG_BLK_DEV_LOOP=y
550# CONFIG_BLK_DEV_CRYPTOLOOP is not set 576# CONFIG_BLK_DEV_CRYPTOLOOP is not set
577
578#
579# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
580#
551# CONFIG_BLK_DEV_NBD is not set 581# CONFIG_BLK_DEV_NBD is not set
552# CONFIG_BLK_DEV_SX8 is not set 582# CONFIG_BLK_DEV_SX8 is not set
553# CONFIG_BLK_DEV_UB is not set 583# CONFIG_BLK_DEV_UB is not set
@@ -559,6 +589,7 @@ CONFIG_BLK_DEV_RAM_SIZE=32768
559# CONFIG_ATA_OVER_ETH is not set 589# CONFIG_ATA_OVER_ETH is not set
560# CONFIG_BLK_DEV_HD is not set 590# CONFIG_BLK_DEV_HD is not set
561CONFIG_MISC_DEVICES=y 591CONFIG_MISC_DEVICES=y
592# CONFIG_AD525X_DPOT is not set
562# CONFIG_PHANTOM is not set 593# CONFIG_PHANTOM is not set
563# CONFIG_SGI_IOC4 is not set 594# CONFIG_SGI_IOC4 is not set
564# CONFIG_TIFM_CORE is not set 595# CONFIG_TIFM_CORE is not set
@@ -566,6 +597,7 @@ CONFIG_MISC_DEVICES=y
566# CONFIG_ENCLOSURE_SERVICES is not set 597# CONFIG_ENCLOSURE_SERVICES is not set
567# CONFIG_HP_ILO is not set 598# CONFIG_HP_ILO is not set
568# CONFIG_ISL29003 is not set 599# CONFIG_ISL29003 is not set
600# CONFIG_DS1682 is not set
569# CONFIG_C2PORT is not set 601# CONFIG_C2PORT is not set
570 602
571# 603#
@@ -618,7 +650,9 @@ CONFIG_SCSI_LOWLEVEL=y
618# CONFIG_SCSI_BNX2_ISCSI is not set 650# CONFIG_SCSI_BNX2_ISCSI is not set
619# CONFIG_BE2ISCSI is not set 651# CONFIG_BE2ISCSI is not set
620# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 652# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
653# CONFIG_SCSI_HPSA is not set
621# CONFIG_SCSI_3W_9XXX is not set 654# CONFIG_SCSI_3W_9XXX is not set
655# CONFIG_SCSI_3W_SAS is not set
622# CONFIG_SCSI_ACARD is not set 656# CONFIG_SCSI_ACARD is not set
623# CONFIG_SCSI_AACRAID is not set 657# CONFIG_SCSI_AACRAID is not set
624# CONFIG_SCSI_AIC7XXX is not set 658# CONFIG_SCSI_AIC7XXX is not set
@@ -657,6 +691,7 @@ CONFIG_SCSI_LOWLEVEL=y
657# CONFIG_SCSI_NSP32 is not set 691# CONFIG_SCSI_NSP32 is not set
658# CONFIG_SCSI_DEBUG is not set 692# CONFIG_SCSI_DEBUG is not set
659# CONFIG_SCSI_PMCRAID is not set 693# CONFIG_SCSI_PMCRAID is not set
694# CONFIG_SCSI_PM8001 is not set
660# CONFIG_SCSI_SRP is not set 695# CONFIG_SCSI_SRP is not set
661# CONFIG_SCSI_BFA_FC is not set 696# CONFIG_SCSI_BFA_FC is not set
662# CONFIG_SCSI_DH is not set 697# CONFIG_SCSI_DH is not set
@@ -712,15 +747,16 @@ CONFIG_ATA_SFF=y
712# CONFIG_PATA_NS87415 is not set 747# CONFIG_PATA_NS87415 is not set
713# CONFIG_PATA_OPTI is not set 748# CONFIG_PATA_OPTI is not set
714# CONFIG_PATA_OPTIDMA is not set 749# CONFIG_PATA_OPTIDMA is not set
750# CONFIG_PATA_PDC2027X is not set
715# CONFIG_PATA_PDC_OLD is not set 751# CONFIG_PATA_PDC_OLD is not set
716# CONFIG_PATA_RADISYS is not set 752# CONFIG_PATA_RADISYS is not set
717# CONFIG_PATA_RDC is not set 753# CONFIG_PATA_RDC is not set
718# CONFIG_PATA_RZ1000 is not set 754# CONFIG_PATA_RZ1000 is not set
719# CONFIG_PATA_SC1200 is not set 755# CONFIG_PATA_SC1200 is not set
720# CONFIG_PATA_SERVERWORKS is not set 756# CONFIG_PATA_SERVERWORKS is not set
721# CONFIG_PATA_PDC2027X is not set
722# CONFIG_PATA_SIL680 is not set 757# CONFIG_PATA_SIL680 is not set
723# CONFIG_PATA_SIS is not set 758# CONFIG_PATA_SIS is not set
759# CONFIG_PATA_TOSHIBA is not set
724# CONFIG_PATA_VIA is not set 760# CONFIG_PATA_VIA is not set
725# CONFIG_PATA_WINBOND is not set 761# CONFIG_PATA_WINBOND is not set
726# CONFIG_PATA_PLATFORM is not set 762# CONFIG_PATA_PLATFORM is not set
@@ -737,7 +773,7 @@ CONFIG_ATA_SFF=y
737# 773#
738 774
739# 775#
740# See the help texts for more information. 776# The newer stack is recommended.
741# 777#
742# CONFIG_FIREWIRE is not set 778# CONFIG_FIREWIRE is not set
743# CONFIG_IEEE1394 is not set 779# CONFIG_IEEE1394 is not set
@@ -844,8 +880,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
844# CONFIG_BE2NET is not set 880# CONFIG_BE2NET is not set
845# CONFIG_TR is not set 881# CONFIG_TR is not set
846CONFIG_WLAN=y 882CONFIG_WLAN=y
847# CONFIG_WLAN_PRE80211 is not set 883# CONFIG_AIRO is not set
848# CONFIG_WLAN_80211 is not set 884# CONFIG_ATMEL is not set
885# CONFIG_PRISM54 is not set
886# CONFIG_USB_ZD1201 is not set
887# CONFIG_HOSTAP is not set
849 888
850# 889#
851# Enable WiMAX (Networking options) to see the WiMAX drivers 890# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -868,6 +907,7 @@ CONFIG_WLAN=y
868# CONFIG_NETCONSOLE is not set 907# CONFIG_NETCONSOLE is not set
869# CONFIG_NETPOLL is not set 908# CONFIG_NETPOLL is not set
870# CONFIG_NET_POLL_CONTROLLER is not set 909# CONFIG_NET_POLL_CONTROLLER is not set
910# CONFIG_VMXNET3 is not set
871# CONFIG_ISDN is not set 911# CONFIG_ISDN is not set
872# CONFIG_PHONE is not set 912# CONFIG_PHONE is not set
873 913
@@ -877,6 +917,7 @@ CONFIG_WLAN=y
877CONFIG_INPUT=y 917CONFIG_INPUT=y
878CONFIG_INPUT_FF_MEMLESS=m 918CONFIG_INPUT_FF_MEMLESS=m
879# CONFIG_INPUT_POLLDEV is not set 919# CONFIG_INPUT_POLLDEV is not set
920# CONFIG_INPUT_SPARSEKMAP is not set
880 921
881# 922#
882# Userland interfaces 923# Userland interfaces
@@ -929,6 +970,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
929# CONFIG_SERIAL_JSM is not set 970# CONFIG_SERIAL_JSM is not set
930# CONFIG_SERIAL_OF_PLATFORM is not set 971# CONFIG_SERIAL_OF_PLATFORM is not set
931# CONFIG_SERIAL_QE is not set 972# CONFIG_SERIAL_QE is not set
973# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
932CONFIG_UNIX98_PTYS=y 974CONFIG_UNIX98_PTYS=y
933# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 975# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
934CONFIG_LEGACY_PTYS=y 976CONFIG_LEGACY_PTYS=y
@@ -989,11 +1031,6 @@ CONFIG_I2C_MPC=y
989# CONFIG_I2C_TINY_USB is not set 1031# CONFIG_I2C_TINY_USB is not set
990 1032
991# 1033#
992# Graphics adapter I2C/DDC channel drivers
993#
994# CONFIG_I2C_VOODOO3 is not set
995
996#
997# Other I2C/SMBus bus drivers 1034# Other I2C/SMBus bus drivers
998# 1035#
999# CONFIG_I2C_PCA_PLATFORM is not set 1036# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1002,7 +1039,6 @@ CONFIG_I2C_MPC=y
1002# 1039#
1003# Miscellaneous I2C Chip support 1040# Miscellaneous I2C Chip support
1004# 1041#
1005# CONFIG_DS1682 is not set
1006# CONFIG_SENSORS_TSL2550 is not set 1042# CONFIG_SENSORS_TSL2550 is not set
1007# CONFIG_I2C_DEBUG_CORE is not set 1043# CONFIG_I2C_DEBUG_CORE is not set
1008# CONFIG_I2C_DEBUG_ALGO is not set 1044# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1034,6 +1070,7 @@ CONFIG_GPIOLIB=y
1034# 1070#
1035# PCI GPIO expanders: 1071# PCI GPIO expanders:
1036# 1072#
1073# CONFIG_GPIO_CS5535 is not set
1037# CONFIG_GPIO_BT8XX is not set 1074# CONFIG_GPIO_BT8XX is not set
1038# CONFIG_GPIO_LANGWELL is not set 1075# CONFIG_GPIO_LANGWELL is not set
1039 1076
@@ -1076,6 +1113,7 @@ CONFIG_HWMON=y
1076# CONFIG_SENSORS_GL520SM is not set 1113# CONFIG_SENSORS_GL520SM is not set
1077# CONFIG_SENSORS_IT87 is not set 1114# CONFIG_SENSORS_IT87 is not set
1078# CONFIG_SENSORS_LM63 is not set 1115# CONFIG_SENSORS_LM63 is not set
1116# CONFIG_SENSORS_LM73 is not set
1079# CONFIG_SENSORS_LM75 is not set 1117# CONFIG_SENSORS_LM75 is not set
1080# CONFIG_SENSORS_LM77 is not set 1118# CONFIG_SENSORS_LM77 is not set
1081# CONFIG_SENSORS_LM78 is not set 1119# CONFIG_SENSORS_LM78 is not set
@@ -1115,6 +1153,7 @@ CONFIG_HWMON=y
1115# CONFIG_SENSORS_W83L786NG is not set 1153# CONFIG_SENSORS_W83L786NG is not set
1116# CONFIG_SENSORS_W83627HF is not set 1154# CONFIG_SENSORS_W83627HF is not set
1117# CONFIG_SENSORS_W83627EHF is not set 1155# CONFIG_SENSORS_W83627EHF is not set
1156# CONFIG_SENSORS_LIS3_I2C is not set
1118# CONFIG_THERMAL is not set 1157# CONFIG_THERMAL is not set
1119CONFIG_WATCHDOG=y 1158CONFIG_WATCHDOG=y
1120# CONFIG_WATCHDOG_NOWAYOUT is not set 1159# CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -1153,11 +1192,13 @@ CONFIG_SSB_POSSIBLE=y
1153# CONFIG_TWL4030_CORE is not set 1192# CONFIG_TWL4030_CORE is not set
1154# CONFIG_MFD_TMIO is not set 1193# CONFIG_MFD_TMIO is not set
1155# CONFIG_PMIC_DA903X is not set 1194# CONFIG_PMIC_DA903X is not set
1195# CONFIG_PMIC_ADP5520 is not set
1156# CONFIG_MFD_WM8400 is not set 1196# CONFIG_MFD_WM8400 is not set
1157# CONFIG_MFD_WM831X is not set 1197# CONFIG_MFD_WM831X is not set
1158# CONFIG_MFD_WM8350_I2C is not set 1198# CONFIG_MFD_WM8350_I2C is not set
1159# CONFIG_MFD_PCF50633 is not set 1199# CONFIG_MFD_PCF50633 is not set
1160# CONFIG_AB3100_CORE is not set 1200# CONFIG_AB3100_CORE is not set
1201# CONFIG_MFD_88PM8607 is not set
1161# CONFIG_REGULATOR is not set 1202# CONFIG_REGULATOR is not set
1162# CONFIG_MEDIA_SUPPORT is not set 1203# CONFIG_MEDIA_SUPPORT is not set
1163 1204
@@ -1249,6 +1290,7 @@ CONFIG_USB_MON=y
1249CONFIG_USB_EHCI_HCD=y 1290CONFIG_USB_EHCI_HCD=y
1250CONFIG_USB_EHCI_ROOT_HUB_TT=y 1291CONFIG_USB_EHCI_ROOT_HUB_TT=y
1251# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1292# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1293# CONFIG_XPS_USB_HCD_XILINX is not set
1252CONFIG_USB_EHCI_FSL=y 1294CONFIG_USB_EHCI_FSL=y
1253CONFIG_USB_EHCI_HCD_PPC_OF=y 1295CONFIG_USB_EHCI_HCD_PPC_OF=y
1254# CONFIG_USB_OXU210HP_HCD is not set 1296# CONFIG_USB_OXU210HP_HCD is not set
@@ -1542,7 +1584,7 @@ CONFIG_FRAME_WARN=1024
1542# CONFIG_DEBUG_FS is not set 1584# CONFIG_DEBUG_FS is not set
1543# CONFIG_HEADERS_CHECK is not set 1585# CONFIG_HEADERS_CHECK is not set
1544# CONFIG_DEBUG_KERNEL is not set 1586# CONFIG_DEBUG_KERNEL is not set
1545# CONFIG_DEBUG_BUGVERBOSE is not set 1587CONFIG_DEBUG_BUGVERBOSE=y
1546# CONFIG_DEBUG_MEMORY_INIT is not set 1588# CONFIG_DEBUG_MEMORY_INIT is not set
1547# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1589# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1548# CONFIG_LATENCYTOP is not set 1590# CONFIG_LATENCYTOP is not set
@@ -1569,7 +1611,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1569# CONFIG_KEYS is not set 1611# CONFIG_KEYS is not set
1570# CONFIG_SECURITY is not set 1612# CONFIG_SECURITY is not set
1571# CONFIG_SECURITYFS is not set 1613# CONFIG_SECURITYFS is not set
1572# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1614# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1615# CONFIG_DEFAULT_SECURITY_SMACK is not set
1616# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1617CONFIG_DEFAULT_SECURITY_DAC=y
1618CONFIG_DEFAULT_SECURITY=""
1573CONFIG_CRYPTO=y 1619CONFIG_CRYPTO=y
1574 1620
1575# 1621#
diff --git a/arch/powerpc/configs/mpc85xx_defconfig b/arch/powerpc/configs/mpc85xx_defconfig
index a12e7ba87a43..8f35f8049c92 100644
--- a/arch/powerpc/configs/mpc85xx_defconfig
+++ b/arch/powerpc/configs/mpc85xx_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:25:20 2009 4# Wed Jan 6 09:24:06 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -39,6 +39,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 39# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 40# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
41CONFIG_IRQ_PER_CPU=y 41CONFIG_IRQ_PER_CPU=y
42CONFIG_NR_IRQS=512
42CONFIG_STACKTRACE_SUPPORT=y 43CONFIG_STACKTRACE_SUPPORT=y
43CONFIG_HAVE_LATENCYTOP_SUPPORT=y 44CONFIG_HAVE_LATENCYTOP_SUPPORT=y
44CONFIG_TRACE_IRQFLAGS_SUPPORT=y 45CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -62,6 +63,8 @@ CONFIG_AUDIT_ARCH=y
62CONFIG_GENERIC_BUG=y 63CONFIG_GENERIC_BUG=y
63CONFIG_DTC=y 64CONFIG_DTC=y
64CONFIG_DEFAULT_UIMAGE=y 65CONFIG_DEFAULT_UIMAGE=y
66CONFIG_ARCH_HIBERNATION_POSSIBLE=y
67CONFIG_ARCH_SUSPEND_POSSIBLE=y
65# CONFIG_PPC_DCR_NATIVE is not set 68# CONFIG_PPC_DCR_NATIVE is not set
66# CONFIG_PPC_DCR_MMIO is not set 69# CONFIG_PPC_DCR_MMIO is not set
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 70CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -92,6 +95,7 @@ CONFIG_AUDIT=y
92# 95#
93CONFIG_TREE_RCU=y 96CONFIG_TREE_RCU=y
94# CONFIG_TREE_PREEMPT_RCU is not set 97# CONFIG_TREE_PREEMPT_RCU is not set
98# CONFIG_TINY_RCU is not set
95# CONFIG_RCU_TRACE is not set 99# CONFIG_RCU_TRACE is not set
96CONFIG_RCU_FANOUT=32 100CONFIG_RCU_FANOUT=32
97# CONFIG_RCU_FANOUT_EXACT is not set 101# CONFIG_RCU_FANOUT_EXACT is not set
@@ -184,14 +188,41 @@ CONFIG_LBDAF=y
184# IO Schedulers 188# IO Schedulers
185# 189#
186CONFIG_IOSCHED_NOOP=y 190CONFIG_IOSCHED_NOOP=y
187CONFIG_IOSCHED_AS=y
188CONFIG_IOSCHED_DEADLINE=y 191CONFIG_IOSCHED_DEADLINE=y
189CONFIG_IOSCHED_CFQ=y 192CONFIG_IOSCHED_CFQ=y
190# CONFIG_DEFAULT_AS is not set
191# CONFIG_DEFAULT_DEADLINE is not set 193# CONFIG_DEFAULT_DEADLINE is not set
192CONFIG_DEFAULT_CFQ=y 194CONFIG_DEFAULT_CFQ=y
193# CONFIG_DEFAULT_NOOP is not set 195# CONFIG_DEFAULT_NOOP is not set
194CONFIG_DEFAULT_IOSCHED="cfq" 196CONFIG_DEFAULT_IOSCHED="cfq"
197# CONFIG_INLINE_SPIN_TRYLOCK is not set
198# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
199# CONFIG_INLINE_SPIN_LOCK is not set
200# CONFIG_INLINE_SPIN_LOCK_BH is not set
201# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
202# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
203CONFIG_INLINE_SPIN_UNLOCK=y
204# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
205CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
206# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
207# CONFIG_INLINE_READ_TRYLOCK is not set
208# CONFIG_INLINE_READ_LOCK is not set
209# CONFIG_INLINE_READ_LOCK_BH is not set
210# CONFIG_INLINE_READ_LOCK_IRQ is not set
211# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
212CONFIG_INLINE_READ_UNLOCK=y
213# CONFIG_INLINE_READ_UNLOCK_BH is not set
214CONFIG_INLINE_READ_UNLOCK_IRQ=y
215# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
216# CONFIG_INLINE_WRITE_TRYLOCK is not set
217# CONFIG_INLINE_WRITE_LOCK is not set
218# CONFIG_INLINE_WRITE_LOCK_BH is not set
219# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
220# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
221CONFIG_INLINE_WRITE_UNLOCK=y
222# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
223CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
224# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
225# CONFIG_MUTEX_SPIN_ON_OWNER is not set
195# CONFIG_FREEZER is not set 226# CONFIG_FREEZER is not set
196CONFIG_PPC_MSI_BITMAP=y 227CONFIG_PPC_MSI_BITMAP=y
197 228
@@ -201,7 +232,7 @@ CONFIG_PPC_MSI_BITMAP=y
201# CONFIG_PPC_CELL is not set 232# CONFIG_PPC_CELL is not set
202# CONFIG_PPC_CELL_NATIVE is not set 233# CONFIG_PPC_CELL_NATIVE is not set
203# CONFIG_PQ2ADS is not set 234# CONFIG_PQ2ADS is not set
204CONFIG_MPC85xx=y 235CONFIG_FSL_SOC_BOOKE=y
205CONFIG_MPC8540_ADS=y 236CONFIG_MPC8540_ADS=y
206CONFIG_MPC8560_ADS=y 237CONFIG_MPC8560_ADS=y
207CONFIG_MPC85xx_CDS=y 238CONFIG_MPC85xx_CDS=y
@@ -220,6 +251,7 @@ CONFIG_TQM8555=y
220CONFIG_TQM8560=y 251CONFIG_TQM8560=y
221CONFIG_SBC8548=y 252CONFIG_SBC8548=y
222# CONFIG_SBC8560 is not set 253# CONFIG_SBC8560 is not set
254# CONFIG_P4080_DS is not set
223CONFIG_TQM85xx=y 255CONFIG_TQM85xx=y
224# CONFIG_IPIC is not set 256# CONFIG_IPIC is not set
225CONFIG_MPIC=y 257CONFIG_MPIC=y
@@ -267,6 +299,7 @@ CONFIG_SWIOTLB=y
267CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 299CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
268CONFIG_ARCH_HAS_WALK_MEMORY=y 300CONFIG_ARCH_HAS_WALK_MEMORY=y
269CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 301CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
302CONFIG_SPARSE_IRQ=y
270CONFIG_MAX_ACTIVE_REGIONS=32 303CONFIG_MAX_ACTIVE_REGIONS=32
271CONFIG_ARCH_FLATMEM_ENABLE=y 304CONFIG_ARCH_FLATMEM_ENABLE=y
272CONFIG_ARCH_POPULATES_NODE_MAP=y 305CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -283,8 +316,6 @@ CONFIG_MIGRATION=y
283CONFIG_ZONE_DMA_FLAG=1 316CONFIG_ZONE_DMA_FLAG=1
284CONFIG_BOUNCE=y 317CONFIG_BOUNCE=y
285CONFIG_VIRT_TO_BUS=y 318CONFIG_VIRT_TO_BUS=y
286CONFIG_HAVE_MLOCK=y
287CONFIG_HAVE_MLOCKED_PAGE_BIT=y
288# CONFIG_KSM is not set 319# CONFIG_KSM is not set
289CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 320CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
290CONFIG_PPC_4K_PAGES=y 321CONFIG_PPC_4K_PAGES=y
@@ -405,6 +436,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=y
405CONFIG_INET6_XFRM_MODE_BEET=y 436CONFIG_INET6_XFRM_MODE_BEET=y
406# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 437# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
407CONFIG_IPV6_SIT=y 438CONFIG_IPV6_SIT=y
439# CONFIG_IPV6_SIT_6RD is not set
408CONFIG_IPV6_NDISC_NODETYPE=y 440CONFIG_IPV6_NDISC_NODETYPE=y
409# CONFIG_IPV6_TUNNEL is not set 441# CONFIG_IPV6_TUNNEL is not set
410# CONFIG_IPV6_MULTIPLE_TABLES is not set 442# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -449,9 +481,6 @@ CONFIG_SCTP_HMAC_MD5=y
449CONFIG_FIB_RULES=y 481CONFIG_FIB_RULES=y
450CONFIG_WIRELESS=y 482CONFIG_WIRELESS=y
451# CONFIG_CFG80211 is not set 483# CONFIG_CFG80211 is not set
452CONFIG_CFG80211_DEFAULT_PS_VALUE=0
453CONFIG_WIRELESS_OLD_REGULATORY=y
454# CONFIG_WIRELESS_EXT is not set
455# CONFIG_LIB80211 is not set 484# CONFIG_LIB80211 is not set
456 485
457# 486#
@@ -494,6 +523,10 @@ CONFIG_BLK_DEV=y
494# CONFIG_BLK_DEV_COW_COMMON is not set 523# CONFIG_BLK_DEV_COW_COMMON is not set
495CONFIG_BLK_DEV_LOOP=y 524CONFIG_BLK_DEV_LOOP=y
496# CONFIG_BLK_DEV_CRYPTOLOOP is not set 525# CONFIG_BLK_DEV_CRYPTOLOOP is not set
526
527#
528# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
529#
497CONFIG_BLK_DEV_NBD=y 530CONFIG_BLK_DEV_NBD=y
498# CONFIG_BLK_DEV_SX8 is not set 531# CONFIG_BLK_DEV_SX8 is not set
499# CONFIG_BLK_DEV_UB is not set 532# CONFIG_BLK_DEV_UB is not set
@@ -505,6 +538,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
505# CONFIG_ATA_OVER_ETH is not set 538# CONFIG_ATA_OVER_ETH is not set
506# CONFIG_BLK_DEV_HD is not set 539# CONFIG_BLK_DEV_HD is not set
507CONFIG_MISC_DEVICES=y 540CONFIG_MISC_DEVICES=y
541# CONFIG_AD525X_DPOT is not set
508# CONFIG_PHANTOM is not set 542# CONFIG_PHANTOM is not set
509# CONFIG_SGI_IOC4 is not set 543# CONFIG_SGI_IOC4 is not set
510# CONFIG_TIFM_CORE is not set 544# CONFIG_TIFM_CORE is not set
@@ -512,6 +546,7 @@ CONFIG_MISC_DEVICES=y
512# CONFIG_ENCLOSURE_SERVICES is not set 546# CONFIG_ENCLOSURE_SERVICES is not set
513# CONFIG_HP_ILO is not set 547# CONFIG_HP_ILO is not set
514# CONFIG_ISL29003 is not set 548# CONFIG_ISL29003 is not set
549# CONFIG_DS1682 is not set
515# CONFIG_C2PORT is not set 550# CONFIG_C2PORT is not set
516 551
517# 552#
@@ -565,7 +600,9 @@ CONFIG_SCSI_LOWLEVEL=y
565# CONFIG_SCSI_BNX2_ISCSI is not set 600# CONFIG_SCSI_BNX2_ISCSI is not set
566# CONFIG_BE2ISCSI is not set 601# CONFIG_BE2ISCSI is not set
567# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 602# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
603# CONFIG_SCSI_HPSA is not set
568# CONFIG_SCSI_3W_9XXX is not set 604# CONFIG_SCSI_3W_9XXX is not set
605# CONFIG_SCSI_3W_SAS is not set
569# CONFIG_SCSI_ACARD is not set 606# CONFIG_SCSI_ACARD is not set
570# CONFIG_SCSI_AACRAID is not set 607# CONFIG_SCSI_AACRAID is not set
571# CONFIG_SCSI_AIC7XXX is not set 608# CONFIG_SCSI_AIC7XXX is not set
@@ -604,6 +641,7 @@ CONFIG_SCSI_LOWLEVEL=y
604# CONFIG_SCSI_NSP32 is not set 641# CONFIG_SCSI_NSP32 is not set
605# CONFIG_SCSI_DEBUG is not set 642# CONFIG_SCSI_DEBUG is not set
606# CONFIG_SCSI_PMCRAID is not set 643# CONFIG_SCSI_PMCRAID is not set
644# CONFIG_SCSI_PM8001 is not set
607# CONFIG_SCSI_SRP is not set 645# CONFIG_SCSI_SRP is not set
608# CONFIG_SCSI_BFA_FC is not set 646# CONFIG_SCSI_BFA_FC is not set
609# CONFIG_SCSI_DH is not set 647# CONFIG_SCSI_DH is not set
@@ -659,15 +697,16 @@ CONFIG_PATA_ALI=y
659# CONFIG_PATA_NS87415 is not set 697# CONFIG_PATA_NS87415 is not set
660# CONFIG_PATA_OPTI is not set 698# CONFIG_PATA_OPTI is not set
661# CONFIG_PATA_OPTIDMA is not set 699# CONFIG_PATA_OPTIDMA is not set
700# CONFIG_PATA_PDC2027X is not set
662# CONFIG_PATA_PDC_OLD is not set 701# CONFIG_PATA_PDC_OLD is not set
663# CONFIG_PATA_RADISYS is not set 702# CONFIG_PATA_RADISYS is not set
664# CONFIG_PATA_RDC is not set 703# CONFIG_PATA_RDC is not set
665# CONFIG_PATA_RZ1000 is not set 704# CONFIG_PATA_RZ1000 is not set
666# CONFIG_PATA_SC1200 is not set 705# CONFIG_PATA_SC1200 is not set
667# CONFIG_PATA_SERVERWORKS is not set 706# CONFIG_PATA_SERVERWORKS is not set
668# CONFIG_PATA_PDC2027X is not set
669# CONFIG_PATA_SIL680 is not set 707# CONFIG_PATA_SIL680 is not set
670# CONFIG_PATA_SIS is not set 708# CONFIG_PATA_SIS is not set
709# CONFIG_PATA_TOSHIBA is not set
671# CONFIG_PATA_VIA is not set 710# CONFIG_PATA_VIA is not set
672# CONFIG_PATA_WINBOND is not set 711# CONFIG_PATA_WINBOND is not set
673# CONFIG_PATA_PLATFORM is not set 712# CONFIG_PATA_PLATFORM is not set
@@ -684,7 +723,7 @@ CONFIG_PATA_ALI=y
684# 723#
685 724
686# 725#
687# See the help texts for more information. 726# The newer stack is recommended.
688# 727#
689# CONFIG_FIREWIRE is not set 728# CONFIG_FIREWIRE is not set
690# CONFIG_IEEE1394 is not set 729# CONFIG_IEEE1394 is not set
@@ -795,8 +834,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
795# CONFIG_BE2NET is not set 834# CONFIG_BE2NET is not set
796# CONFIG_TR is not set 835# CONFIG_TR is not set
797CONFIG_WLAN=y 836CONFIG_WLAN=y
798# CONFIG_WLAN_PRE80211 is not set 837# CONFIG_AIRO is not set
799# CONFIG_WLAN_80211 is not set 838# CONFIG_ATMEL is not set
839# CONFIG_PRISM54 is not set
840# CONFIG_USB_ZD1201 is not set
841# CONFIG_HOSTAP is not set
800 842
801# 843#
802# Enable WiMAX (Networking options) to see the WiMAX drivers 844# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -820,6 +862,7 @@ CONFIG_WLAN=y
820# CONFIG_NETCONSOLE is not set 862# CONFIG_NETCONSOLE is not set
821# CONFIG_NETPOLL is not set 863# CONFIG_NETPOLL is not set
822# CONFIG_NET_POLL_CONTROLLER is not set 864# CONFIG_NET_POLL_CONTROLLER is not set
865# CONFIG_VMXNET3 is not set
823# CONFIG_ISDN is not set 866# CONFIG_ISDN is not set
824# CONFIG_PHONE is not set 867# CONFIG_PHONE is not set
825 868
@@ -829,6 +872,7 @@ CONFIG_WLAN=y
829CONFIG_INPUT=y 872CONFIG_INPUT=y
830CONFIG_INPUT_FF_MEMLESS=m 873CONFIG_INPUT_FF_MEMLESS=m
831# CONFIG_INPUT_POLLDEV is not set 874# CONFIG_INPUT_POLLDEV is not set
875# CONFIG_INPUT_SPARSEKMAP is not set
832 876
833# 877#
834# Userland interfaces 878# Userland interfaces
@@ -858,6 +902,7 @@ CONFIG_SERIO_SERPORT=y
858CONFIG_SERIO_LIBPS2=y 902CONFIG_SERIO_LIBPS2=y
859# CONFIG_SERIO_RAW is not set 903# CONFIG_SERIO_RAW is not set
860# CONFIG_SERIO_XILINX_XPS_PS2 is not set 904# CONFIG_SERIO_XILINX_XPS_PS2 is not set
905# CONFIG_SERIO_ALTERA_PS2 is not set
861# CONFIG_GAMEPORT is not set 906# CONFIG_GAMEPORT is not set
862 907
863# 908#
@@ -896,6 +941,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
896# CONFIG_SERIAL_JSM is not set 941# CONFIG_SERIAL_JSM is not set
897# CONFIG_SERIAL_OF_PLATFORM is not set 942# CONFIG_SERIAL_OF_PLATFORM is not set
898CONFIG_SERIAL_QE=m 943CONFIG_SERIAL_QE=m
944# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
899CONFIG_UNIX98_PTYS=y 945CONFIG_UNIX98_PTYS=y
900# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 946# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
901CONFIG_LEGACY_PTYS=y 947CONFIG_LEGACY_PTYS=y
@@ -956,11 +1002,6 @@ CONFIG_I2C_MPC=y
956# CONFIG_I2C_TINY_USB is not set 1002# CONFIG_I2C_TINY_USB is not set
957 1003
958# 1004#
959# Graphics adapter I2C/DDC channel drivers
960#
961# CONFIG_I2C_VOODOO3 is not set
962
963#
964# Other I2C/SMBus bus drivers 1005# Other I2C/SMBus bus drivers
965# 1006#
966# CONFIG_I2C_PCA_PLATFORM is not set 1007# CONFIG_I2C_PCA_PLATFORM is not set
@@ -969,7 +1010,6 @@ CONFIG_I2C_MPC=y
969# 1010#
970# Miscellaneous I2C Chip support 1011# Miscellaneous I2C Chip support
971# 1012#
972# CONFIG_DS1682 is not set
973# CONFIG_SENSORS_TSL2550 is not set 1013# CONFIG_SENSORS_TSL2550 is not set
974# CONFIG_I2C_DEBUG_CORE is not set 1014# CONFIG_I2C_DEBUG_CORE is not set
975# CONFIG_I2C_DEBUG_ALGO is not set 1015# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1002,6 +1042,7 @@ CONFIG_GPIOLIB=y
1002# 1042#
1003# PCI GPIO expanders: 1043# PCI GPIO expanders:
1004# 1044#
1045# CONFIG_GPIO_CS5535 is not set
1005# CONFIG_GPIO_BT8XX is not set 1046# CONFIG_GPIO_BT8XX is not set
1006# CONFIG_GPIO_LANGWELL is not set 1047# CONFIG_GPIO_LANGWELL is not set
1007 1048
@@ -1035,11 +1076,13 @@ CONFIG_SSB_POSSIBLE=y
1035# CONFIG_TWL4030_CORE is not set 1076# CONFIG_TWL4030_CORE is not set
1036# CONFIG_MFD_TMIO is not set 1077# CONFIG_MFD_TMIO is not set
1037# CONFIG_PMIC_DA903X is not set 1078# CONFIG_PMIC_DA903X is not set
1079# CONFIG_PMIC_ADP5520 is not set
1038# CONFIG_MFD_WM8400 is not set 1080# CONFIG_MFD_WM8400 is not set
1039# CONFIG_MFD_WM831X is not set 1081# CONFIG_MFD_WM831X is not set
1040# CONFIG_MFD_WM8350_I2C is not set 1082# CONFIG_MFD_WM8350_I2C is not set
1041# CONFIG_MFD_PCF50633 is not set 1083# CONFIG_MFD_PCF50633 is not set
1042# CONFIG_AB3100_CORE is not set 1084# CONFIG_AB3100_CORE is not set
1085# CONFIG_MFD_88PM8607 is not set
1043# CONFIG_REGULATOR is not set 1086# CONFIG_REGULATOR is not set
1044# CONFIG_MEDIA_SUPPORT is not set 1087# CONFIG_MEDIA_SUPPORT is not set
1045 1088
@@ -1114,6 +1157,7 @@ CONFIG_SND_PCI=y
1114# CONFIG_SND_CS4281 is not set 1157# CONFIG_SND_CS4281 is not set
1115# CONFIG_SND_CS46XX is not set 1158# CONFIG_SND_CS46XX is not set
1116# CONFIG_SND_CS5530 is not set 1159# CONFIG_SND_CS5530 is not set
1160# CONFIG_SND_CS5535AUDIO is not set
1117# CONFIG_SND_CTXFI is not set 1161# CONFIG_SND_CTXFI is not set
1118# CONFIG_SND_DARLA20 is not set 1162# CONFIG_SND_DARLA20 is not set
1119# CONFIG_SND_GINA20 is not set 1163# CONFIG_SND_GINA20 is not set
@@ -1241,6 +1285,7 @@ CONFIG_USB_MON=y
1241CONFIG_USB_EHCI_HCD=y 1285CONFIG_USB_EHCI_HCD=y
1242CONFIG_USB_EHCI_ROOT_HUB_TT=y 1286CONFIG_USB_EHCI_ROOT_HUB_TT=y
1243# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1287# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1288# CONFIG_XPS_USB_HCD_XILINX is not set
1244CONFIG_USB_EHCI_FSL=y 1289CONFIG_USB_EHCI_FSL=y
1245CONFIG_USB_EHCI_HCD_PPC_OF=y 1290CONFIG_USB_EHCI_HCD_PPC_OF=y
1246# CONFIG_USB_OXU210HP_HCD is not set 1291# CONFIG_USB_OXU210HP_HCD is not set
@@ -1347,7 +1392,6 @@ CONFIG_EDAC=y
1347# 1392#
1348# CONFIG_EDAC_DEBUG is not set 1393# CONFIG_EDAC_DEBUG is not set
1349CONFIG_EDAC_MM_EDAC=y 1394CONFIG_EDAC_MM_EDAC=y
1350CONFIG_EDAC_MPC85XX=y
1351CONFIG_RTC_LIB=y 1395CONFIG_RTC_LIB=y
1352CONFIG_RTC_CLASS=y 1396CONFIG_RTC_CLASS=y
1353CONFIG_RTC_HCTOSYS=y 1397CONFIG_RTC_HCTOSYS=y
@@ -1376,6 +1420,7 @@ CONFIG_RTC_INTF_DEV=y
1376# CONFIG_RTC_DRV_PCF8563 is not set 1420# CONFIG_RTC_DRV_PCF8563 is not set
1377# CONFIG_RTC_DRV_PCF8583 is not set 1421# CONFIG_RTC_DRV_PCF8583 is not set
1378# CONFIG_RTC_DRV_M41T80 is not set 1422# CONFIG_RTC_DRV_M41T80 is not set
1423# CONFIG_RTC_DRV_BQ32K is not set
1379# CONFIG_RTC_DRV_S35390A is not set 1424# CONFIG_RTC_DRV_S35390A is not set
1380# CONFIG_RTC_DRV_FM3130 is not set 1425# CONFIG_RTC_DRV_FM3130 is not set
1381# CONFIG_RTC_DRV_RX8581 is not set 1426# CONFIG_RTC_DRV_RX8581 is not set
@@ -1397,7 +1442,9 @@ CONFIG_RTC_DRV_CMOS=y
1397# CONFIG_RTC_DRV_M48T86 is not set 1442# CONFIG_RTC_DRV_M48T86 is not set
1398# CONFIG_RTC_DRV_M48T35 is not set 1443# CONFIG_RTC_DRV_M48T35 is not set
1399# CONFIG_RTC_DRV_M48T59 is not set 1444# CONFIG_RTC_DRV_M48T59 is not set
1445# CONFIG_RTC_DRV_MSM6242 is not set
1400# CONFIG_RTC_DRV_BQ4802 is not set 1446# CONFIG_RTC_DRV_BQ4802 is not set
1447# CONFIG_RTC_DRV_RP5C01 is not set
1401# CONFIG_RTC_DRV_V3020 is not set 1448# CONFIG_RTC_DRV_V3020 is not set
1402 1449
1403# 1450#
@@ -1731,7 +1778,11 @@ CONFIG_VIRQ_DEBUG=y
1731# CONFIG_KEYS is not set 1778# CONFIG_KEYS is not set
1732# CONFIG_SECURITY is not set 1779# CONFIG_SECURITY is not set
1733# CONFIG_SECURITYFS is not set 1780# CONFIG_SECURITYFS is not set
1734# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1781# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1782# CONFIG_DEFAULT_SECURITY_SMACK is not set
1783# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1784CONFIG_DEFAULT_SECURITY_DAC=y
1785CONFIG_DEFAULT_SECURITY=""
1735CONFIG_CRYPTO=y 1786CONFIG_CRYPTO=y
1736 1787
1737# 1788#
diff --git a/arch/powerpc/configs/mpc85xx_smp_defconfig b/arch/powerpc/configs/mpc85xx_smp_defconfig
index cd70b4a4ce01..8755ea3c7f5f 100644
--- a/arch/powerpc/configs/mpc85xx_smp_defconfig
+++ b/arch/powerpc/configs/mpc85xx_smp_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:26:01 2009 4# Wed Jan 6 09:24:07 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -16,9 +16,9 @@ CONFIG_PPC_85xx=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_E500=y 17CONFIG_E500=y
18# CONFIG_PPC_E500MC is not set 18# CONFIG_PPC_E500MC is not set
19CONFIG_FSL_EMB_PERFMON=y
19CONFIG_BOOKE=y 20CONFIG_BOOKE=y
20CONFIG_FSL_BOOKE=y 21CONFIG_FSL_BOOKE=y
21CONFIG_FSL_EMB_PERFMON=y
22# CONFIG_PHYS_64BIT is not set 22# CONFIG_PHYS_64BIT is not set
23CONFIG_SPE=y 23CONFIG_SPE=y
24CONFIG_PPC_MMU_NOHASH=y 24CONFIG_PPC_MMU_NOHASH=y
@@ -40,6 +40,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
40# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 40# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
41# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 41# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
42CONFIG_IRQ_PER_CPU=y 42CONFIG_IRQ_PER_CPU=y
43CONFIG_NR_IRQS=512
43CONFIG_STACKTRACE_SUPPORT=y 44CONFIG_STACKTRACE_SUPPORT=y
44CONFIG_HAVE_LATENCYTOP_SUPPORT=y 45CONFIG_HAVE_LATENCYTOP_SUPPORT=y
45CONFIG_TRACE_IRQFLAGS_SUPPORT=y 46CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -63,6 +64,8 @@ CONFIG_AUDIT_ARCH=y
63CONFIG_GENERIC_BUG=y 64CONFIG_GENERIC_BUG=y
64CONFIG_DTC=y 65CONFIG_DTC=y
65CONFIG_DEFAULT_UIMAGE=y 66CONFIG_DEFAULT_UIMAGE=y
67CONFIG_ARCH_HIBERNATION_POSSIBLE=y
68CONFIG_ARCH_SUSPEND_POSSIBLE=y
66# CONFIG_PPC_DCR_NATIVE is not set 69# CONFIG_PPC_DCR_NATIVE is not set
67# CONFIG_PPC_DCR_MMIO is not set 70# CONFIG_PPC_DCR_MMIO is not set
68CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 71CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -93,6 +96,7 @@ CONFIG_AUDIT=y
93# 96#
94CONFIG_TREE_RCU=y 97CONFIG_TREE_RCU=y
95# CONFIG_TREE_PREEMPT_RCU is not set 98# CONFIG_TREE_PREEMPT_RCU is not set
99# CONFIG_TINY_RCU is not set
96# CONFIG_RCU_TRACE is not set 100# CONFIG_RCU_TRACE is not set
97CONFIG_RCU_FANOUT=32 101CONFIG_RCU_FANOUT=32
98# CONFIG_RCU_FANOUT_EXACT is not set 102# CONFIG_RCU_FANOUT_EXACT is not set
@@ -187,14 +191,41 @@ CONFIG_LBDAF=y
187# IO Schedulers 191# IO Schedulers
188# 192#
189CONFIG_IOSCHED_NOOP=y 193CONFIG_IOSCHED_NOOP=y
190CONFIG_IOSCHED_AS=y
191CONFIG_IOSCHED_DEADLINE=y 194CONFIG_IOSCHED_DEADLINE=y
192CONFIG_IOSCHED_CFQ=y 195CONFIG_IOSCHED_CFQ=y
193# CONFIG_DEFAULT_AS is not set
194# CONFIG_DEFAULT_DEADLINE is not set 196# CONFIG_DEFAULT_DEADLINE is not set
195CONFIG_DEFAULT_CFQ=y 197CONFIG_DEFAULT_CFQ=y
196# CONFIG_DEFAULT_NOOP is not set 198# CONFIG_DEFAULT_NOOP is not set
197CONFIG_DEFAULT_IOSCHED="cfq" 199CONFIG_DEFAULT_IOSCHED="cfq"
200# CONFIG_INLINE_SPIN_TRYLOCK is not set
201# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
202# CONFIG_INLINE_SPIN_LOCK is not set
203# CONFIG_INLINE_SPIN_LOCK_BH is not set
204# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
205# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
206CONFIG_INLINE_SPIN_UNLOCK=y
207# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
208CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
209# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
210# CONFIG_INLINE_READ_TRYLOCK is not set
211# CONFIG_INLINE_READ_LOCK is not set
212# CONFIG_INLINE_READ_LOCK_BH is not set
213# CONFIG_INLINE_READ_LOCK_IRQ is not set
214# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
215CONFIG_INLINE_READ_UNLOCK=y
216# CONFIG_INLINE_READ_UNLOCK_BH is not set
217CONFIG_INLINE_READ_UNLOCK_IRQ=y
218# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
219# CONFIG_INLINE_WRITE_TRYLOCK is not set
220# CONFIG_INLINE_WRITE_LOCK is not set
221# CONFIG_INLINE_WRITE_LOCK_BH is not set
222# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
223# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
224CONFIG_INLINE_WRITE_UNLOCK=y
225# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
226CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
227# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
228CONFIG_MUTEX_SPIN_ON_OWNER=y
198# CONFIG_FREEZER is not set 229# CONFIG_FREEZER is not set
199CONFIG_PPC_MSI_BITMAP=y 230CONFIG_PPC_MSI_BITMAP=y
200 231
@@ -204,7 +235,7 @@ CONFIG_PPC_MSI_BITMAP=y
204# CONFIG_PPC_CELL is not set 235# CONFIG_PPC_CELL is not set
205# CONFIG_PPC_CELL_NATIVE is not set 236# CONFIG_PPC_CELL_NATIVE is not set
206# CONFIG_PQ2ADS is not set 237# CONFIG_PQ2ADS is not set
207CONFIG_MPC85xx=y 238CONFIG_FSL_SOC_BOOKE=y
208CONFIG_MPC8540_ADS=y 239CONFIG_MPC8540_ADS=y
209CONFIG_MPC8560_ADS=y 240CONFIG_MPC8560_ADS=y
210CONFIG_MPC85xx_CDS=y 241CONFIG_MPC85xx_CDS=y
@@ -223,6 +254,7 @@ CONFIG_TQM8555=y
223CONFIG_TQM8560=y 254CONFIG_TQM8560=y
224CONFIG_SBC8548=y 255CONFIG_SBC8548=y
225# CONFIG_SBC8560 is not set 256# CONFIG_SBC8560 is not set
257# CONFIG_P4080_DS is not set
226CONFIG_TQM85xx=y 258CONFIG_TQM85xx=y
227# CONFIG_IPIC is not set 259# CONFIG_IPIC is not set
228CONFIG_MPIC=y 260CONFIG_MPIC=y
@@ -271,6 +303,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
271CONFIG_ARCH_HAS_WALK_MEMORY=y 303CONFIG_ARCH_HAS_WALK_MEMORY=y
272CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 304CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
273# CONFIG_IRQ_ALL_CPUS is not set 305# CONFIG_IRQ_ALL_CPUS is not set
306CONFIG_SPARSE_IRQ=y
274CONFIG_MAX_ACTIVE_REGIONS=32 307CONFIG_MAX_ACTIVE_REGIONS=32
275CONFIG_ARCH_FLATMEM_ENABLE=y 308CONFIG_ARCH_FLATMEM_ENABLE=y
276CONFIG_ARCH_POPULATES_NODE_MAP=y 309CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -287,8 +320,6 @@ CONFIG_MIGRATION=y
287CONFIG_ZONE_DMA_FLAG=1 320CONFIG_ZONE_DMA_FLAG=1
288CONFIG_BOUNCE=y 321CONFIG_BOUNCE=y
289CONFIG_VIRT_TO_BUS=y 322CONFIG_VIRT_TO_BUS=y
290CONFIG_HAVE_MLOCK=y
291CONFIG_HAVE_MLOCKED_PAGE_BIT=y
292# CONFIG_KSM is not set 323# CONFIG_KSM is not set
293CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 324CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
294CONFIG_PPC_4K_PAGES=y 325CONFIG_PPC_4K_PAGES=y
@@ -409,6 +440,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=y
409CONFIG_INET6_XFRM_MODE_BEET=y 440CONFIG_INET6_XFRM_MODE_BEET=y
410# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 441# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
411CONFIG_IPV6_SIT=y 442CONFIG_IPV6_SIT=y
443# CONFIG_IPV6_SIT_6RD is not set
412CONFIG_IPV6_NDISC_NODETYPE=y 444CONFIG_IPV6_NDISC_NODETYPE=y
413# CONFIG_IPV6_TUNNEL is not set 445# CONFIG_IPV6_TUNNEL is not set
414# CONFIG_IPV6_MULTIPLE_TABLES is not set 446# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -453,9 +485,6 @@ CONFIG_SCTP_HMAC_MD5=y
453CONFIG_FIB_RULES=y 485CONFIG_FIB_RULES=y
454CONFIG_WIRELESS=y 486CONFIG_WIRELESS=y
455# CONFIG_CFG80211 is not set 487# CONFIG_CFG80211 is not set
456CONFIG_CFG80211_DEFAULT_PS_VALUE=0
457CONFIG_WIRELESS_OLD_REGULATORY=y
458# CONFIG_WIRELESS_EXT is not set
459# CONFIG_LIB80211 is not set 488# CONFIG_LIB80211 is not set
460 489
461# 490#
@@ -498,6 +527,10 @@ CONFIG_BLK_DEV=y
498# CONFIG_BLK_DEV_COW_COMMON is not set 527# CONFIG_BLK_DEV_COW_COMMON is not set
499CONFIG_BLK_DEV_LOOP=y 528CONFIG_BLK_DEV_LOOP=y
500# CONFIG_BLK_DEV_CRYPTOLOOP is not set 529# CONFIG_BLK_DEV_CRYPTOLOOP is not set
530
531#
532# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
533#
501CONFIG_BLK_DEV_NBD=y 534CONFIG_BLK_DEV_NBD=y
502# CONFIG_BLK_DEV_SX8 is not set 535# CONFIG_BLK_DEV_SX8 is not set
503# CONFIG_BLK_DEV_UB is not set 536# CONFIG_BLK_DEV_UB is not set
@@ -509,6 +542,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
509# CONFIG_ATA_OVER_ETH is not set 542# CONFIG_ATA_OVER_ETH is not set
510# CONFIG_BLK_DEV_HD is not set 543# CONFIG_BLK_DEV_HD is not set
511CONFIG_MISC_DEVICES=y 544CONFIG_MISC_DEVICES=y
545# CONFIG_AD525X_DPOT is not set
512# CONFIG_PHANTOM is not set 546# CONFIG_PHANTOM is not set
513# CONFIG_SGI_IOC4 is not set 547# CONFIG_SGI_IOC4 is not set
514# CONFIG_TIFM_CORE is not set 548# CONFIG_TIFM_CORE is not set
@@ -516,6 +550,7 @@ CONFIG_MISC_DEVICES=y
516# CONFIG_ENCLOSURE_SERVICES is not set 550# CONFIG_ENCLOSURE_SERVICES is not set
517# CONFIG_HP_ILO is not set 551# CONFIG_HP_ILO is not set
518# CONFIG_ISL29003 is not set 552# CONFIG_ISL29003 is not set
553# CONFIG_DS1682 is not set
519# CONFIG_C2PORT is not set 554# CONFIG_C2PORT is not set
520 555
521# 556#
@@ -569,7 +604,9 @@ CONFIG_SCSI_LOWLEVEL=y
569# CONFIG_SCSI_BNX2_ISCSI is not set 604# CONFIG_SCSI_BNX2_ISCSI is not set
570# CONFIG_BE2ISCSI is not set 605# CONFIG_BE2ISCSI is not set
571# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 606# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
607# CONFIG_SCSI_HPSA is not set
572# CONFIG_SCSI_3W_9XXX is not set 608# CONFIG_SCSI_3W_9XXX is not set
609# CONFIG_SCSI_3W_SAS is not set
573# CONFIG_SCSI_ACARD is not set 610# CONFIG_SCSI_ACARD is not set
574# CONFIG_SCSI_AACRAID is not set 611# CONFIG_SCSI_AACRAID is not set
575# CONFIG_SCSI_AIC7XXX is not set 612# CONFIG_SCSI_AIC7XXX is not set
@@ -608,6 +645,7 @@ CONFIG_SCSI_LOWLEVEL=y
608# CONFIG_SCSI_NSP32 is not set 645# CONFIG_SCSI_NSP32 is not set
609# CONFIG_SCSI_DEBUG is not set 646# CONFIG_SCSI_DEBUG is not set
610# CONFIG_SCSI_PMCRAID is not set 647# CONFIG_SCSI_PMCRAID is not set
648# CONFIG_SCSI_PM8001 is not set
611# CONFIG_SCSI_SRP is not set 649# CONFIG_SCSI_SRP is not set
612# CONFIG_SCSI_BFA_FC is not set 650# CONFIG_SCSI_BFA_FC is not set
613# CONFIG_SCSI_DH is not set 651# CONFIG_SCSI_DH is not set
@@ -663,15 +701,16 @@ CONFIG_PATA_ALI=y
663# CONFIG_PATA_NS87415 is not set 701# CONFIG_PATA_NS87415 is not set
664# CONFIG_PATA_OPTI is not set 702# CONFIG_PATA_OPTI is not set
665# CONFIG_PATA_OPTIDMA is not set 703# CONFIG_PATA_OPTIDMA is not set
704# CONFIG_PATA_PDC2027X is not set
666# CONFIG_PATA_PDC_OLD is not set 705# CONFIG_PATA_PDC_OLD is not set
667# CONFIG_PATA_RADISYS is not set 706# CONFIG_PATA_RADISYS is not set
668# CONFIG_PATA_RDC is not set 707# CONFIG_PATA_RDC is not set
669# CONFIG_PATA_RZ1000 is not set 708# CONFIG_PATA_RZ1000 is not set
670# CONFIG_PATA_SC1200 is not set 709# CONFIG_PATA_SC1200 is not set
671# CONFIG_PATA_SERVERWORKS is not set 710# CONFIG_PATA_SERVERWORKS is not set
672# CONFIG_PATA_PDC2027X is not set
673# CONFIG_PATA_SIL680 is not set 711# CONFIG_PATA_SIL680 is not set
674# CONFIG_PATA_SIS is not set 712# CONFIG_PATA_SIS is not set
713# CONFIG_PATA_TOSHIBA is not set
675# CONFIG_PATA_VIA is not set 714# CONFIG_PATA_VIA is not set
676# CONFIG_PATA_WINBOND is not set 715# CONFIG_PATA_WINBOND is not set
677# CONFIG_PATA_PLATFORM is not set 716# CONFIG_PATA_PLATFORM is not set
@@ -688,7 +727,7 @@ CONFIG_PATA_ALI=y
688# 727#
689 728
690# 729#
691# See the help texts for more information. 730# The newer stack is recommended.
692# 731#
693# CONFIG_FIREWIRE is not set 732# CONFIG_FIREWIRE is not set
694# CONFIG_IEEE1394 is not set 733# CONFIG_IEEE1394 is not set
@@ -799,8 +838,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
799# CONFIG_BE2NET is not set 838# CONFIG_BE2NET is not set
800# CONFIG_TR is not set 839# CONFIG_TR is not set
801CONFIG_WLAN=y 840CONFIG_WLAN=y
802# CONFIG_WLAN_PRE80211 is not set 841# CONFIG_AIRO is not set
803# CONFIG_WLAN_80211 is not set 842# CONFIG_ATMEL is not set
843# CONFIG_PRISM54 is not set
844# CONFIG_USB_ZD1201 is not set
845# CONFIG_HOSTAP is not set
804 846
805# 847#
806# Enable WiMAX (Networking options) to see the WiMAX drivers 848# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -824,6 +866,7 @@ CONFIG_WLAN=y
824# CONFIG_NETCONSOLE is not set 866# CONFIG_NETCONSOLE is not set
825# CONFIG_NETPOLL is not set 867# CONFIG_NETPOLL is not set
826# CONFIG_NET_POLL_CONTROLLER is not set 868# CONFIG_NET_POLL_CONTROLLER is not set
869# CONFIG_VMXNET3 is not set
827# CONFIG_ISDN is not set 870# CONFIG_ISDN is not set
828# CONFIG_PHONE is not set 871# CONFIG_PHONE is not set
829 872
@@ -833,6 +876,7 @@ CONFIG_WLAN=y
833CONFIG_INPUT=y 876CONFIG_INPUT=y
834CONFIG_INPUT_FF_MEMLESS=m 877CONFIG_INPUT_FF_MEMLESS=m
835# CONFIG_INPUT_POLLDEV is not set 878# CONFIG_INPUT_POLLDEV is not set
879# CONFIG_INPUT_SPARSEKMAP is not set
836 880
837# 881#
838# Userland interfaces 882# Userland interfaces
@@ -862,6 +906,7 @@ CONFIG_SERIO_SERPORT=y
862CONFIG_SERIO_LIBPS2=y 906CONFIG_SERIO_LIBPS2=y
863# CONFIG_SERIO_RAW is not set 907# CONFIG_SERIO_RAW is not set
864# CONFIG_SERIO_XILINX_XPS_PS2 is not set 908# CONFIG_SERIO_XILINX_XPS_PS2 is not set
909# CONFIG_SERIO_ALTERA_PS2 is not set
865# CONFIG_GAMEPORT is not set 910# CONFIG_GAMEPORT is not set
866 911
867# 912#
@@ -900,6 +945,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
900# CONFIG_SERIAL_JSM is not set 945# CONFIG_SERIAL_JSM is not set
901# CONFIG_SERIAL_OF_PLATFORM is not set 946# CONFIG_SERIAL_OF_PLATFORM is not set
902CONFIG_SERIAL_QE=m 947CONFIG_SERIAL_QE=m
948# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
903CONFIG_UNIX98_PTYS=y 949CONFIG_UNIX98_PTYS=y
904# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 950# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
905CONFIG_LEGACY_PTYS=y 951CONFIG_LEGACY_PTYS=y
@@ -960,11 +1006,6 @@ CONFIG_I2C_MPC=y
960# CONFIG_I2C_TINY_USB is not set 1006# CONFIG_I2C_TINY_USB is not set
961 1007
962# 1008#
963# Graphics adapter I2C/DDC channel drivers
964#
965# CONFIG_I2C_VOODOO3 is not set
966
967#
968# Other I2C/SMBus bus drivers 1009# Other I2C/SMBus bus drivers
969# 1010#
970# CONFIG_I2C_PCA_PLATFORM is not set 1011# CONFIG_I2C_PCA_PLATFORM is not set
@@ -973,7 +1014,6 @@ CONFIG_I2C_MPC=y
973# 1014#
974# Miscellaneous I2C Chip support 1015# Miscellaneous I2C Chip support
975# 1016#
976# CONFIG_DS1682 is not set
977# CONFIG_SENSORS_TSL2550 is not set 1017# CONFIG_SENSORS_TSL2550 is not set
978# CONFIG_I2C_DEBUG_CORE is not set 1018# CONFIG_I2C_DEBUG_CORE is not set
979# CONFIG_I2C_DEBUG_ALGO is not set 1019# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1006,6 +1046,7 @@ CONFIG_GPIOLIB=y
1006# 1046#
1007# PCI GPIO expanders: 1047# PCI GPIO expanders:
1008# 1048#
1049# CONFIG_GPIO_CS5535 is not set
1009# CONFIG_GPIO_BT8XX is not set 1050# CONFIG_GPIO_BT8XX is not set
1010# CONFIG_GPIO_LANGWELL is not set 1051# CONFIG_GPIO_LANGWELL is not set
1011 1052
@@ -1039,11 +1080,13 @@ CONFIG_SSB_POSSIBLE=y
1039# CONFIG_TWL4030_CORE is not set 1080# CONFIG_TWL4030_CORE is not set
1040# CONFIG_MFD_TMIO is not set 1081# CONFIG_MFD_TMIO is not set
1041# CONFIG_PMIC_DA903X is not set 1082# CONFIG_PMIC_DA903X is not set
1083# CONFIG_PMIC_ADP5520 is not set
1042# CONFIG_MFD_WM8400 is not set 1084# CONFIG_MFD_WM8400 is not set
1043# CONFIG_MFD_WM831X is not set 1085# CONFIG_MFD_WM831X is not set
1044# CONFIG_MFD_WM8350_I2C is not set 1086# CONFIG_MFD_WM8350_I2C is not set
1045# CONFIG_MFD_PCF50633 is not set 1087# CONFIG_MFD_PCF50633 is not set
1046# CONFIG_AB3100_CORE is not set 1088# CONFIG_AB3100_CORE is not set
1089# CONFIG_MFD_88PM8607 is not set
1047# CONFIG_REGULATOR is not set 1090# CONFIG_REGULATOR is not set
1048# CONFIG_MEDIA_SUPPORT is not set 1091# CONFIG_MEDIA_SUPPORT is not set
1049 1092
@@ -1118,6 +1161,7 @@ CONFIG_SND_PCI=y
1118# CONFIG_SND_CS4281 is not set 1161# CONFIG_SND_CS4281 is not set
1119# CONFIG_SND_CS46XX is not set 1162# CONFIG_SND_CS46XX is not set
1120# CONFIG_SND_CS5530 is not set 1163# CONFIG_SND_CS5530 is not set
1164# CONFIG_SND_CS5535AUDIO is not set
1121# CONFIG_SND_CTXFI is not set 1165# CONFIG_SND_CTXFI is not set
1122# CONFIG_SND_DARLA20 is not set 1166# CONFIG_SND_DARLA20 is not set
1123# CONFIG_SND_GINA20 is not set 1167# CONFIG_SND_GINA20 is not set
@@ -1245,6 +1289,7 @@ CONFIG_USB_MON=y
1245CONFIG_USB_EHCI_HCD=y 1289CONFIG_USB_EHCI_HCD=y
1246CONFIG_USB_EHCI_ROOT_HUB_TT=y 1290CONFIG_USB_EHCI_ROOT_HUB_TT=y
1247# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1291# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1292# CONFIG_XPS_USB_HCD_XILINX is not set
1248CONFIG_USB_EHCI_FSL=y 1293CONFIG_USB_EHCI_FSL=y
1249CONFIG_USB_EHCI_HCD_PPC_OF=y 1294CONFIG_USB_EHCI_HCD_PPC_OF=y
1250# CONFIG_USB_OXU210HP_HCD is not set 1295# CONFIG_USB_OXU210HP_HCD is not set
@@ -1351,7 +1396,6 @@ CONFIG_EDAC=y
1351# 1396#
1352# CONFIG_EDAC_DEBUG is not set 1397# CONFIG_EDAC_DEBUG is not set
1353CONFIG_EDAC_MM_EDAC=y 1398CONFIG_EDAC_MM_EDAC=y
1354CONFIG_EDAC_MPC85XX=y
1355CONFIG_RTC_LIB=y 1399CONFIG_RTC_LIB=y
1356CONFIG_RTC_CLASS=y 1400CONFIG_RTC_CLASS=y
1357CONFIG_RTC_HCTOSYS=y 1401CONFIG_RTC_HCTOSYS=y
@@ -1380,6 +1424,7 @@ CONFIG_RTC_INTF_DEV=y
1380# CONFIG_RTC_DRV_PCF8563 is not set 1424# CONFIG_RTC_DRV_PCF8563 is not set
1381# CONFIG_RTC_DRV_PCF8583 is not set 1425# CONFIG_RTC_DRV_PCF8583 is not set
1382# CONFIG_RTC_DRV_M41T80 is not set 1426# CONFIG_RTC_DRV_M41T80 is not set
1427# CONFIG_RTC_DRV_BQ32K is not set
1383# CONFIG_RTC_DRV_S35390A is not set 1428# CONFIG_RTC_DRV_S35390A is not set
1384# CONFIG_RTC_DRV_FM3130 is not set 1429# CONFIG_RTC_DRV_FM3130 is not set
1385# CONFIG_RTC_DRV_RX8581 is not set 1430# CONFIG_RTC_DRV_RX8581 is not set
@@ -1401,7 +1446,9 @@ CONFIG_RTC_DRV_CMOS=y
1401# CONFIG_RTC_DRV_M48T86 is not set 1446# CONFIG_RTC_DRV_M48T86 is not set
1402# CONFIG_RTC_DRV_M48T35 is not set 1447# CONFIG_RTC_DRV_M48T35 is not set
1403# CONFIG_RTC_DRV_M48T59 is not set 1448# CONFIG_RTC_DRV_M48T59 is not set
1449# CONFIG_RTC_DRV_MSM6242 is not set
1404# CONFIG_RTC_DRV_BQ4802 is not set 1450# CONFIG_RTC_DRV_BQ4802 is not set
1451# CONFIG_RTC_DRV_RP5C01 is not set
1405# CONFIG_RTC_DRV_V3020 is not set 1452# CONFIG_RTC_DRV_V3020 is not set
1406 1453
1407# 1454#
@@ -1735,7 +1782,11 @@ CONFIG_VIRQ_DEBUG=y
1735# CONFIG_KEYS is not set 1782# CONFIG_KEYS is not set
1736# CONFIG_SECURITY is not set 1783# CONFIG_SECURITY is not set
1737# CONFIG_SECURITYFS is not set 1784# CONFIG_SECURITYFS is not set
1738# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1785# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1786# CONFIG_DEFAULT_SECURITY_SMACK is not set
1787# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1788CONFIG_DEFAULT_SECURITY_DAC=y
1789CONFIG_DEFAULT_SECURITY=""
1739CONFIG_CRYPTO=y 1790CONFIG_CRYPTO=y
1740 1791
1741# 1792#
diff --git a/arch/powerpc/configs/mpc866_ads_defconfig b/arch/powerpc/configs/mpc866_ads_defconfig
index 40d6f0568ca5..3f6b11b6f4f3 100644
--- a/arch/powerpc/configs/mpc866_ads_defconfig
+++ b/arch/powerpc/configs/mpc866_ads_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:15 2009 4# Wed Jan 6 09:24:08 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -32,6 +32,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
37CONFIG_TRACE_IRQFLAGS_SUPPORT=y 38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -53,6 +54,7 @@ CONFIG_OF=y
53CONFIG_AUDIT_ARCH=y 54CONFIG_AUDIT_ARCH=y
54CONFIG_DTC=y 55CONFIG_DTC=y
55# CONFIG_DEFAULT_UIMAGE is not set 56# CONFIG_DEFAULT_UIMAGE is not set
57CONFIG_ARCH_HIBERNATION_POSSIBLE=y
56# CONFIG_PPC_DCR_NATIVE is not set 58# CONFIG_PPC_DCR_NATIVE is not set
57# CONFIG_PPC_DCR_MMIO is not set 59# CONFIG_PPC_DCR_MMIO is not set
58CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 60CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -80,6 +82,7 @@ CONFIG_SYSVIPC_SYSCTL=y
80# 82#
81CONFIG_TREE_RCU=y 83CONFIG_TREE_RCU=y
82# CONFIG_TREE_PREEMPT_RCU is not set 84# CONFIG_TREE_PREEMPT_RCU is not set
85# CONFIG_TINY_RCU is not set
83# CONFIG_RCU_TRACE is not set 86# CONFIG_RCU_TRACE is not set
84CONFIG_RCU_FANOUT=32 87CONFIG_RCU_FANOUT=32
85# CONFIG_RCU_FANOUT_EXACT is not set 88# CONFIG_RCU_FANOUT_EXACT is not set
@@ -158,14 +161,41 @@ CONFIG_LBDAF=y
158# IO Schedulers 161# IO Schedulers
159# 162#
160CONFIG_IOSCHED_NOOP=y 163CONFIG_IOSCHED_NOOP=y
161CONFIG_IOSCHED_AS=y
162CONFIG_IOSCHED_DEADLINE=y 164CONFIG_IOSCHED_DEADLINE=y
163CONFIG_IOSCHED_CFQ=y 165CONFIG_IOSCHED_CFQ=y
164CONFIG_DEFAULT_AS=y
165# CONFIG_DEFAULT_DEADLINE is not set 166# CONFIG_DEFAULT_DEADLINE is not set
166# CONFIG_DEFAULT_CFQ is not set 167CONFIG_DEFAULT_CFQ=y
167# CONFIG_DEFAULT_NOOP is not set 168# CONFIG_DEFAULT_NOOP is not set
168CONFIG_DEFAULT_IOSCHED="anticipatory" 169CONFIG_DEFAULT_IOSCHED="cfq"
170# CONFIG_INLINE_SPIN_TRYLOCK is not set
171# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
172# CONFIG_INLINE_SPIN_LOCK is not set
173# CONFIG_INLINE_SPIN_LOCK_BH is not set
174# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
175# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
176CONFIG_INLINE_SPIN_UNLOCK=y
177# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
178CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
179# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
180# CONFIG_INLINE_READ_TRYLOCK is not set
181# CONFIG_INLINE_READ_LOCK is not set
182# CONFIG_INLINE_READ_LOCK_BH is not set
183# CONFIG_INLINE_READ_LOCK_IRQ is not set
184# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
185CONFIG_INLINE_READ_UNLOCK=y
186# CONFIG_INLINE_READ_UNLOCK_BH is not set
187CONFIG_INLINE_READ_UNLOCK_IRQ=y
188# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
189# CONFIG_INLINE_WRITE_TRYLOCK is not set
190# CONFIG_INLINE_WRITE_LOCK is not set
191# CONFIG_INLINE_WRITE_LOCK_BH is not set
192# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
193# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
194CONFIG_INLINE_WRITE_UNLOCK=y
195# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
196CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
197# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
198# CONFIG_MUTEX_SPIN_ON_OWNER is not set
169# CONFIG_FREEZER is not set 199# CONFIG_FREEZER is not set
170 200
171# 201#
@@ -240,6 +270,7 @@ CONFIG_MATH_EMULATION=y
240CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 270CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
241CONFIG_ARCH_HAS_WALK_MEMORY=y 271CONFIG_ARCH_HAS_WALK_MEMORY=y
242CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 272CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
273CONFIG_SPARSE_IRQ=y
243CONFIG_MAX_ACTIVE_REGIONS=32 274CONFIG_MAX_ACTIVE_REGIONS=32
244CONFIG_ARCH_FLATMEM_ENABLE=y 275CONFIG_ARCH_FLATMEM_ENABLE=y
245CONFIG_ARCH_POPULATES_NODE_MAP=y 276CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -256,8 +287,6 @@ CONFIG_MIGRATION=y
256CONFIG_ZONE_DMA_FLAG=1 287CONFIG_ZONE_DMA_FLAG=1
257CONFIG_BOUNCE=y 288CONFIG_BOUNCE=y
258CONFIG_VIRT_TO_BUS=y 289CONFIG_VIRT_TO_BUS=y
259CONFIG_HAVE_MLOCK=y
260CONFIG_HAVE_MLOCKED_PAGE_BIT=y
261# CONFIG_KSM is not set 290# CONFIG_KSM is not set
262CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 291CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
263CONFIG_PPC_4K_PAGES=y 292CONFIG_PPC_4K_PAGES=y
@@ -375,9 +404,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
375# CONFIG_AF_RXRPC is not set 404# CONFIG_AF_RXRPC is not set
376CONFIG_WIRELESS=y 405CONFIG_WIRELESS=y
377# CONFIG_CFG80211 is not set 406# CONFIG_CFG80211 is not set
378CONFIG_CFG80211_DEFAULT_PS_VALUE=0
379CONFIG_WIRELESS_OLD_REGULATORY=y
380# CONFIG_WIRELESS_EXT is not set
381# CONFIG_LIB80211 is not set 407# CONFIG_LIB80211 is not set
382 408
383# 409#
@@ -407,6 +433,10 @@ CONFIG_BLK_DEV=y
407# CONFIG_BLK_DEV_COW_COMMON is not set 433# CONFIG_BLK_DEV_COW_COMMON is not set
408CONFIG_BLK_DEV_LOOP=y 434CONFIG_BLK_DEV_LOOP=y
409# CONFIG_BLK_DEV_CRYPTOLOOP is not set 435# CONFIG_BLK_DEV_CRYPTOLOOP is not set
436
437#
438# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
439#
410# CONFIG_BLK_DEV_NBD is not set 440# CONFIG_BLK_DEV_NBD is not set
411# CONFIG_BLK_DEV_RAM is not set 441# CONFIG_BLK_DEV_RAM is not set
412# CONFIG_CDROM_PKTCDVD is not set 442# CONFIG_CDROM_PKTCDVD is not set
@@ -485,8 +515,7 @@ CONFIG_NETDEV_1000=y
485# CONFIG_MV643XX_ETH is not set 515# CONFIG_MV643XX_ETH is not set
486CONFIG_NETDEV_10000=y 516CONFIG_NETDEV_10000=y
487CONFIG_WLAN=y 517CONFIG_WLAN=y
488# CONFIG_WLAN_PRE80211 is not set 518# CONFIG_HOSTAP is not set
489# CONFIG_WLAN_80211 is not set
490 519
491# 520#
492# Enable WiMAX (Networking options) to see the WiMAX drivers 521# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -506,6 +535,7 @@ CONFIG_WLAN=y
506CONFIG_INPUT=y 535CONFIG_INPUT=y
507# CONFIG_INPUT_FF_MEMLESS is not set 536# CONFIG_INPUT_FF_MEMLESS is not set
508# CONFIG_INPUT_POLLDEV is not set 537# CONFIG_INPUT_POLLDEV is not set
538# CONFIG_INPUT_SPARSEKMAP is not set
509 539
510# 540#
511# Userland interfaces 541# Userland interfaces
@@ -554,6 +584,7 @@ CONFIG_SERIO_SERPORT=y
554CONFIG_SERIO_LIBPS2=y 584CONFIG_SERIO_LIBPS2=y
555# CONFIG_SERIO_RAW is not set 585# CONFIG_SERIO_RAW is not set
556# CONFIG_SERIO_XILINX_XPS_PS2 is not set 586# CONFIG_SERIO_XILINX_XPS_PS2 is not set
587# CONFIG_SERIO_ALTERA_PS2 is not set
557# CONFIG_GAMEPORT is not set 588# CONFIG_GAMEPORT is not set
558 589
559# 590#
@@ -576,6 +607,7 @@ CONFIG_SERIAL_CORE=y
576CONFIG_SERIAL_CORE_CONSOLE=y 607CONFIG_SERIAL_CORE_CONSOLE=y
577CONFIG_SERIAL_CPM=y 608CONFIG_SERIAL_CPM=y
578CONFIG_SERIAL_CPM_CONSOLE=y 609CONFIG_SERIAL_CPM_CONSOLE=y
610# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
579CONFIG_UNIX98_PTYS=y 611CONFIG_UNIX98_PTYS=y
580# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 612# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
581# CONFIG_LEGACY_PTYS is not set 613# CONFIG_LEGACY_PTYS is not set
@@ -855,6 +887,7 @@ CONFIG_FRAME_WARN=1024
855# CONFIG_DEBUG_MEMORY_INIT is not set 887# CONFIG_DEBUG_MEMORY_INIT is not set
856# CONFIG_RCU_CPU_STALL_DETECTOR is not set 888# CONFIG_RCU_CPU_STALL_DETECTOR is not set
857# CONFIG_LATENCYTOP is not set 889# CONFIG_LATENCYTOP is not set
890# CONFIG_SYSCTL_SYSCALL_CHECK is not set
858CONFIG_HAVE_FUNCTION_TRACER=y 891CONFIG_HAVE_FUNCTION_TRACER=y
859CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 892CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
860CONFIG_HAVE_DYNAMIC_FTRACE=y 893CONFIG_HAVE_DYNAMIC_FTRACE=y
@@ -876,7 +909,11 @@ CONFIG_PRINT_STACK_DEPTH=64
876# CONFIG_KEYS is not set 909# CONFIG_KEYS is not set
877# CONFIG_SECURITY is not set 910# CONFIG_SECURITY is not set
878# CONFIG_SECURITYFS is not set 911# CONFIG_SECURITYFS is not set
879# CONFIG_SECURITY_FILE_CAPABILITIES is not set 912# CONFIG_DEFAULT_SECURITY_SELINUX is not set
913# CONFIG_DEFAULT_SECURITY_SMACK is not set
914# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
915CONFIG_DEFAULT_SECURITY_DAC=y
916CONFIG_DEFAULT_SECURITY=""
880CONFIG_CRYPTO=y 917CONFIG_CRYPTO=y
881 918
882# 919#
diff --git a/arch/powerpc/configs/mpc86xx_defconfig b/arch/powerpc/configs/mpc86xx_defconfig
index 5b3abb42ae30..41884c97a4f3 100644
--- a/arch/powerpc/configs/mpc86xx_defconfig
+++ b/arch/powerpc/configs/mpc86xx_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:16 2009 4# Wed Jan 6 09:24:09 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -38,6 +38,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
40CONFIG_IRQ_PER_CPU=y 40CONFIG_IRQ_PER_CPU=y
41CONFIG_NR_IRQS=512
41CONFIG_STACKTRACE_SUPPORT=y 42CONFIG_STACKTRACE_SUPPORT=y
42CONFIG_HAVE_LATENCYTOP_SUPPORT=y 43CONFIG_HAVE_LATENCYTOP_SUPPORT=y
43CONFIG_TRACE_IRQFLAGS_SUPPORT=y 44CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -61,6 +62,8 @@ CONFIG_AUDIT_ARCH=y
61CONFIG_GENERIC_BUG=y 62CONFIG_GENERIC_BUG=y
62CONFIG_DTC=y 63CONFIG_DTC=y
63CONFIG_DEFAULT_UIMAGE=y 64CONFIG_DEFAULT_UIMAGE=y
65CONFIG_ARCH_HIBERNATION_POSSIBLE=y
66CONFIG_ARCH_SUSPEND_POSSIBLE=y
64# CONFIG_PPC_DCR_NATIVE is not set 67# CONFIG_PPC_DCR_NATIVE is not set
65# CONFIG_PPC_DCR_MMIO is not set 68# CONFIG_PPC_DCR_MMIO is not set
66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 69CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -91,6 +94,7 @@ CONFIG_AUDIT=y
91# 94#
92CONFIG_TREE_RCU=y 95CONFIG_TREE_RCU=y
93# CONFIG_TREE_PREEMPT_RCU is not set 96# CONFIG_TREE_PREEMPT_RCU is not set
97# CONFIG_TINY_RCU is not set
94# CONFIG_RCU_TRACE is not set 98# CONFIG_RCU_TRACE is not set
95CONFIG_RCU_FANOUT=32 99CONFIG_RCU_FANOUT=32
96# CONFIG_RCU_FANOUT_EXACT is not set 100# CONFIG_RCU_FANOUT_EXACT is not set
@@ -183,14 +187,41 @@ CONFIG_LBDAF=y
183# IO Schedulers 187# IO Schedulers
184# 188#
185CONFIG_IOSCHED_NOOP=y 189CONFIG_IOSCHED_NOOP=y
186CONFIG_IOSCHED_AS=y
187CONFIG_IOSCHED_DEADLINE=y 190CONFIG_IOSCHED_DEADLINE=y
188CONFIG_IOSCHED_CFQ=y 191CONFIG_IOSCHED_CFQ=y
189# CONFIG_DEFAULT_AS is not set
190# CONFIG_DEFAULT_DEADLINE is not set 192# CONFIG_DEFAULT_DEADLINE is not set
191CONFIG_DEFAULT_CFQ=y 193CONFIG_DEFAULT_CFQ=y
192# CONFIG_DEFAULT_NOOP is not set 194# CONFIG_DEFAULT_NOOP is not set
193CONFIG_DEFAULT_IOSCHED="cfq" 195CONFIG_DEFAULT_IOSCHED="cfq"
196# CONFIG_INLINE_SPIN_TRYLOCK is not set
197# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
198# CONFIG_INLINE_SPIN_LOCK is not set
199# CONFIG_INLINE_SPIN_LOCK_BH is not set
200# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
201# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
202CONFIG_INLINE_SPIN_UNLOCK=y
203# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
204CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
205# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
206# CONFIG_INLINE_READ_TRYLOCK is not set
207# CONFIG_INLINE_READ_LOCK is not set
208# CONFIG_INLINE_READ_LOCK_BH is not set
209# CONFIG_INLINE_READ_LOCK_IRQ is not set
210# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
211CONFIG_INLINE_READ_UNLOCK=y
212# CONFIG_INLINE_READ_UNLOCK_BH is not set
213CONFIG_INLINE_READ_UNLOCK_IRQ=y
214# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
215# CONFIG_INLINE_WRITE_TRYLOCK is not set
216# CONFIG_INLINE_WRITE_LOCK is not set
217# CONFIG_INLINE_WRITE_LOCK_BH is not set
218# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
219# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
220CONFIG_INLINE_WRITE_UNLOCK=y
221# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
222CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
223# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
224CONFIG_MUTEX_SPIN_ON_OWNER=y
194# CONFIG_FREEZER is not set 225# CONFIG_FREEZER is not set
195 226
196# 227#
@@ -221,7 +252,7 @@ CONFIG_MPIC=y
221# CONFIG_MPIC_WEIRD is not set 252# CONFIG_MPIC_WEIRD is not set
222CONFIG_PPC_I8259=y 253CONFIG_PPC_I8259=y
223# CONFIG_PPC_RTAS is not set 254# CONFIG_PPC_RTAS is not set
224# CONFIG_MMIO_NVRAM is not set 255CONFIG_MMIO_NVRAM=y
225# CONFIG_PPC_MPC106 is not set 256# CONFIG_PPC_MPC106 is not set
226# CONFIG_PPC_970_NAP is not set 257# CONFIG_PPC_970_NAP is not set
227# CONFIG_PPC_INDIRECT_IO is not set 258# CONFIG_PPC_INDIRECT_IO is not set
@@ -262,6 +293,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
262# CONFIG_KEXEC is not set 293# CONFIG_KEXEC is not set
263# CONFIG_CRASH_DUMP is not set 294# CONFIG_CRASH_DUMP is not set
264# CONFIG_IRQ_ALL_CPUS is not set 295# CONFIG_IRQ_ALL_CPUS is not set
296CONFIG_SPARSE_IRQ=y
265CONFIG_MAX_ACTIVE_REGIONS=32 297CONFIG_MAX_ACTIVE_REGIONS=32
266CONFIG_ARCH_FLATMEM_ENABLE=y 298CONFIG_ARCH_FLATMEM_ENABLE=y
267CONFIG_ARCH_POPULATES_NODE_MAP=y 299CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -278,8 +310,6 @@ CONFIG_MIGRATION=y
278CONFIG_ZONE_DMA_FLAG=1 310CONFIG_ZONE_DMA_FLAG=1
279CONFIG_BOUNCE=y 311CONFIG_BOUNCE=y
280CONFIG_VIRT_TO_BUS=y 312CONFIG_VIRT_TO_BUS=y
281CONFIG_HAVE_MLOCK=y
282CONFIG_HAVE_MLOCKED_PAGE_BIT=y
283# CONFIG_KSM is not set 313# CONFIG_KSM is not set
284CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 314CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
285CONFIG_PPC_4K_PAGES=y 315CONFIG_PPC_4K_PAGES=y
@@ -397,6 +427,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=y
397CONFIG_INET6_XFRM_MODE_BEET=y 427CONFIG_INET6_XFRM_MODE_BEET=y
398# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 428# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
399CONFIG_IPV6_SIT=y 429CONFIG_IPV6_SIT=y
430# CONFIG_IPV6_SIT_6RD is not set
400CONFIG_IPV6_NDISC_NODETYPE=y 431CONFIG_IPV6_NDISC_NODETYPE=y
401# CONFIG_IPV6_TUNNEL is not set 432# CONFIG_IPV6_TUNNEL is not set
402# CONFIG_IPV6_MULTIPLE_TABLES is not set 433# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -441,9 +472,6 @@ CONFIG_SCTP_HMAC_MD5=y
441CONFIG_FIB_RULES=y 472CONFIG_FIB_RULES=y
442CONFIG_WIRELESS=y 473CONFIG_WIRELESS=y
443# CONFIG_CFG80211 is not set 474# CONFIG_CFG80211 is not set
444CONFIG_CFG80211_DEFAULT_PS_VALUE=0
445CONFIG_WIRELESS_OLD_REGULATORY=y
446# CONFIG_WIRELESS_EXT is not set
447# CONFIG_LIB80211 is not set 475# CONFIG_LIB80211 is not set
448 476
449# 477#
@@ -486,6 +514,10 @@ CONFIG_BLK_DEV=y
486# CONFIG_BLK_DEV_COW_COMMON is not set 514# CONFIG_BLK_DEV_COW_COMMON is not set
487CONFIG_BLK_DEV_LOOP=y 515CONFIG_BLK_DEV_LOOP=y
488# CONFIG_BLK_DEV_CRYPTOLOOP is not set 516# CONFIG_BLK_DEV_CRYPTOLOOP is not set
517
518#
519# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
520#
489CONFIG_BLK_DEV_NBD=y 521CONFIG_BLK_DEV_NBD=y
490# CONFIG_BLK_DEV_SX8 is not set 522# CONFIG_BLK_DEV_SX8 is not set
491# CONFIG_BLK_DEV_UB is not set 523# CONFIG_BLK_DEV_UB is not set
@@ -497,6 +529,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
497# CONFIG_ATA_OVER_ETH is not set 529# CONFIG_ATA_OVER_ETH is not set
498# CONFIG_BLK_DEV_HD is not set 530# CONFIG_BLK_DEV_HD is not set
499CONFIG_MISC_DEVICES=y 531CONFIG_MISC_DEVICES=y
532# CONFIG_AD525X_DPOT is not set
500# CONFIG_PHANTOM is not set 533# CONFIG_PHANTOM is not set
501# CONFIG_SGI_IOC4 is not set 534# CONFIG_SGI_IOC4 is not set
502# CONFIG_TIFM_CORE is not set 535# CONFIG_TIFM_CORE is not set
@@ -504,6 +537,7 @@ CONFIG_MISC_DEVICES=y
504# CONFIG_ENCLOSURE_SERVICES is not set 537# CONFIG_ENCLOSURE_SERVICES is not set
505# CONFIG_HP_ILO is not set 538# CONFIG_HP_ILO is not set
506# CONFIG_ISL29003 is not set 539# CONFIG_ISL29003 is not set
540# CONFIG_DS1682 is not set
507# CONFIG_C2PORT is not set 541# CONFIG_C2PORT is not set
508 542
509# 543#
@@ -557,7 +591,9 @@ CONFIG_SCSI_LOWLEVEL=y
557# CONFIG_SCSI_BNX2_ISCSI is not set 591# CONFIG_SCSI_BNX2_ISCSI is not set
558# CONFIG_BE2ISCSI is not set 592# CONFIG_BE2ISCSI is not set
559# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 593# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
594# CONFIG_SCSI_HPSA is not set
560# CONFIG_SCSI_3W_9XXX is not set 595# CONFIG_SCSI_3W_9XXX is not set
596# CONFIG_SCSI_3W_SAS is not set
561# CONFIG_SCSI_ACARD is not set 597# CONFIG_SCSI_ACARD is not set
562# CONFIG_SCSI_AACRAID is not set 598# CONFIG_SCSI_AACRAID is not set
563# CONFIG_SCSI_AIC7XXX is not set 599# CONFIG_SCSI_AIC7XXX is not set
@@ -596,6 +632,7 @@ CONFIG_SCSI_LOWLEVEL=y
596# CONFIG_SCSI_NSP32 is not set 632# CONFIG_SCSI_NSP32 is not set
597# CONFIG_SCSI_DEBUG is not set 633# CONFIG_SCSI_DEBUG is not set
598# CONFIG_SCSI_PMCRAID is not set 634# CONFIG_SCSI_PMCRAID is not set
635# CONFIG_SCSI_PM8001 is not set
599# CONFIG_SCSI_SRP is not set 636# CONFIG_SCSI_SRP is not set
600# CONFIG_SCSI_BFA_FC is not set 637# CONFIG_SCSI_BFA_FC is not set
601# CONFIG_SCSI_DH is not set 638# CONFIG_SCSI_DH is not set
@@ -651,15 +688,16 @@ CONFIG_PATA_ALI=y
651# CONFIG_PATA_NS87415 is not set 688# CONFIG_PATA_NS87415 is not set
652# CONFIG_PATA_OPTI is not set 689# CONFIG_PATA_OPTI is not set
653# CONFIG_PATA_OPTIDMA is not set 690# CONFIG_PATA_OPTIDMA is not set
691# CONFIG_PATA_PDC2027X is not set
654# CONFIG_PATA_PDC_OLD is not set 692# CONFIG_PATA_PDC_OLD is not set
655# CONFIG_PATA_RADISYS is not set 693# CONFIG_PATA_RADISYS is not set
656# CONFIG_PATA_RDC is not set 694# CONFIG_PATA_RDC is not set
657# CONFIG_PATA_RZ1000 is not set 695# CONFIG_PATA_RZ1000 is not set
658# CONFIG_PATA_SC1200 is not set 696# CONFIG_PATA_SC1200 is not set
659# CONFIG_PATA_SERVERWORKS is not set 697# CONFIG_PATA_SERVERWORKS is not set
660# CONFIG_PATA_PDC2027X is not set
661# CONFIG_PATA_SIL680 is not set 698# CONFIG_PATA_SIL680 is not set
662# CONFIG_PATA_SIS is not set 699# CONFIG_PATA_SIS is not set
700# CONFIG_PATA_TOSHIBA is not set
663# CONFIG_PATA_VIA is not set 701# CONFIG_PATA_VIA is not set
664# CONFIG_PATA_WINBOND is not set 702# CONFIG_PATA_WINBOND is not set
665# CONFIG_PATA_PLATFORM is not set 703# CONFIG_PATA_PLATFORM is not set
@@ -676,7 +714,7 @@ CONFIG_PATA_ALI=y
676# 714#
677 715
678# 716#
679# See the help texts for more information. 717# The newer stack is recommended.
680# 718#
681# CONFIG_FIREWIRE is not set 719# CONFIG_FIREWIRE is not set
682# CONFIG_IEEE1394 is not set 720# CONFIG_IEEE1394 is not set
@@ -781,8 +819,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
781# CONFIG_BE2NET is not set 819# CONFIG_BE2NET is not set
782# CONFIG_TR is not set 820# CONFIG_TR is not set
783CONFIG_WLAN=y 821CONFIG_WLAN=y
784# CONFIG_WLAN_PRE80211 is not set 822# CONFIG_AIRO is not set
785# CONFIG_WLAN_80211 is not set 823# CONFIG_ATMEL is not set
824# CONFIG_PRISM54 is not set
825# CONFIG_USB_ZD1201 is not set
826# CONFIG_HOSTAP is not set
786 827
787# 828#
788# Enable WiMAX (Networking options) to see the WiMAX drivers 829# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -805,6 +846,7 @@ CONFIG_WLAN=y
805# CONFIG_NETCONSOLE is not set 846# CONFIG_NETCONSOLE is not set
806# CONFIG_NETPOLL is not set 847# CONFIG_NETPOLL is not set
807# CONFIG_NET_POLL_CONTROLLER is not set 848# CONFIG_NET_POLL_CONTROLLER is not set
849# CONFIG_VMXNET3 is not set
808# CONFIG_ISDN is not set 850# CONFIG_ISDN is not set
809# CONFIG_PHONE is not set 851# CONFIG_PHONE is not set
810 852
@@ -814,6 +856,7 @@ CONFIG_WLAN=y
814CONFIG_INPUT=y 856CONFIG_INPUT=y
815CONFIG_INPUT_FF_MEMLESS=m 857CONFIG_INPUT_FF_MEMLESS=m
816# CONFIG_INPUT_POLLDEV is not set 858# CONFIG_INPUT_POLLDEV is not set
859# CONFIG_INPUT_SPARSEKMAP is not set
817 860
818# 861#
819# Userland interfaces 862# Userland interfaces
@@ -843,6 +886,7 @@ CONFIG_SERIO_SERPORT=y
843CONFIG_SERIO_LIBPS2=y 886CONFIG_SERIO_LIBPS2=y
844# CONFIG_SERIO_RAW is not set 887# CONFIG_SERIO_RAW is not set
845# CONFIG_SERIO_XILINX_XPS_PS2 is not set 888# CONFIG_SERIO_XILINX_XPS_PS2 is not set
889# CONFIG_SERIO_ALTERA_PS2 is not set
846# CONFIG_GAMEPORT is not set 890# CONFIG_GAMEPORT is not set
847 891
848# 892#
@@ -879,6 +923,7 @@ CONFIG_SERIAL_CORE=y
879CONFIG_SERIAL_CORE_CONSOLE=y 923CONFIG_SERIAL_CORE_CONSOLE=y
880# CONFIG_SERIAL_JSM is not set 924# CONFIG_SERIAL_JSM is not set
881# CONFIG_SERIAL_OF_PLATFORM is not set 925# CONFIG_SERIAL_OF_PLATFORM is not set
926# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
882CONFIG_UNIX98_PTYS=y 927CONFIG_UNIX98_PTYS=y
883# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 928# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
884CONFIG_LEGACY_PTYS=y 929CONFIG_LEGACY_PTYS=y
@@ -936,11 +981,6 @@ CONFIG_I2C_MPC=y
936# CONFIG_I2C_TINY_USB is not set 981# CONFIG_I2C_TINY_USB is not set
937 982
938# 983#
939# Graphics adapter I2C/DDC channel drivers
940#
941# CONFIG_I2C_VOODOO3 is not set
942
943#
944# Other I2C/SMBus bus drivers 984# Other I2C/SMBus bus drivers
945# 985#
946# CONFIG_I2C_PCA_PLATFORM is not set 986# CONFIG_I2C_PCA_PLATFORM is not set
@@ -949,7 +989,6 @@ CONFIG_I2C_MPC=y
949# 989#
950# Miscellaneous I2C Chip support 990# Miscellaneous I2C Chip support
951# 991#
952# CONFIG_DS1682 is not set
953# CONFIG_SENSORS_TSL2550 is not set 992# CONFIG_SENSORS_TSL2550 is not set
954# CONFIG_I2C_DEBUG_CORE is not set 993# CONFIG_I2C_DEBUG_CORE is not set
955# CONFIG_I2C_DEBUG_ALGO is not set 994# CONFIG_I2C_DEBUG_ALGO is not set
@@ -982,6 +1021,7 @@ CONFIG_GPIOLIB=y
982# 1021#
983# PCI GPIO expanders: 1022# PCI GPIO expanders:
984# 1023#
1024# CONFIG_GPIO_CS5535 is not set
985# CONFIG_GPIO_BT8XX is not set 1025# CONFIG_GPIO_BT8XX is not set
986# CONFIG_GPIO_LANGWELL is not set 1026# CONFIG_GPIO_LANGWELL is not set
987 1027
@@ -1015,11 +1055,13 @@ CONFIG_SSB_POSSIBLE=y
1015# CONFIG_TWL4030_CORE is not set 1055# CONFIG_TWL4030_CORE is not set
1016# CONFIG_MFD_TMIO is not set 1056# CONFIG_MFD_TMIO is not set
1017# CONFIG_PMIC_DA903X is not set 1057# CONFIG_PMIC_DA903X is not set
1058# CONFIG_PMIC_ADP5520 is not set
1018# CONFIG_MFD_WM8400 is not set 1059# CONFIG_MFD_WM8400 is not set
1019# CONFIG_MFD_WM831X is not set 1060# CONFIG_MFD_WM831X is not set
1020# CONFIG_MFD_WM8350_I2C is not set 1061# CONFIG_MFD_WM8350_I2C is not set
1021# CONFIG_MFD_PCF50633 is not set 1062# CONFIG_MFD_PCF50633 is not set
1022# CONFIG_AB3100_CORE is not set 1063# CONFIG_AB3100_CORE is not set
1064# CONFIG_MFD_88PM8607 is not set
1023# CONFIG_REGULATOR is not set 1065# CONFIG_REGULATOR is not set
1024# CONFIG_MEDIA_SUPPORT is not set 1066# CONFIG_MEDIA_SUPPORT is not set
1025 1067
@@ -1094,6 +1136,7 @@ CONFIG_SND_PCI=y
1094# CONFIG_SND_CS4281 is not set 1136# CONFIG_SND_CS4281 is not set
1095# CONFIG_SND_CS46XX is not set 1137# CONFIG_SND_CS46XX is not set
1096# CONFIG_SND_CS5530 is not set 1138# CONFIG_SND_CS5530 is not set
1139# CONFIG_SND_CS5535AUDIO is not set
1097# CONFIG_SND_CTXFI is not set 1140# CONFIG_SND_CTXFI is not set
1098# CONFIG_SND_DARLA20 is not set 1141# CONFIG_SND_DARLA20 is not set
1099# CONFIG_SND_GINA20 is not set 1142# CONFIG_SND_GINA20 is not set
@@ -1221,6 +1264,7 @@ CONFIG_USB_MON=y
1221CONFIG_USB_EHCI_HCD=y 1264CONFIG_USB_EHCI_HCD=y
1222# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1265# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1223# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1266# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1267# CONFIG_XPS_USB_HCD_XILINX is not set
1224# CONFIG_USB_EHCI_FSL is not set 1268# CONFIG_USB_EHCI_FSL is not set
1225CONFIG_USB_EHCI_HCD_PPC_OF=y 1269CONFIG_USB_EHCI_HCD_PPC_OF=y
1226# CONFIG_USB_OXU210HP_HCD is not set 1270# CONFIG_USB_OXU210HP_HCD is not set
@@ -1348,6 +1392,7 @@ CONFIG_RTC_INTF_DEV=y
1348# CONFIG_RTC_DRV_PCF8563 is not set 1392# CONFIG_RTC_DRV_PCF8563 is not set
1349# CONFIG_RTC_DRV_PCF8583 is not set 1393# CONFIG_RTC_DRV_PCF8583 is not set
1350# CONFIG_RTC_DRV_M41T80 is not set 1394# CONFIG_RTC_DRV_M41T80 is not set
1395# CONFIG_RTC_DRV_BQ32K is not set
1351# CONFIG_RTC_DRV_S35390A is not set 1396# CONFIG_RTC_DRV_S35390A is not set
1352# CONFIG_RTC_DRV_FM3130 is not set 1397# CONFIG_RTC_DRV_FM3130 is not set
1353# CONFIG_RTC_DRV_RX8581 is not set 1398# CONFIG_RTC_DRV_RX8581 is not set
@@ -1369,7 +1414,9 @@ CONFIG_RTC_DRV_CMOS=y
1369# CONFIG_RTC_DRV_M48T86 is not set 1414# CONFIG_RTC_DRV_M48T86 is not set
1370# CONFIG_RTC_DRV_M48T35 is not set 1415# CONFIG_RTC_DRV_M48T35 is not set
1371# CONFIG_RTC_DRV_M48T59 is not set 1416# CONFIG_RTC_DRV_M48T59 is not set
1417# CONFIG_RTC_DRV_MSM6242 is not set
1372# CONFIG_RTC_DRV_BQ4802 is not set 1418# CONFIG_RTC_DRV_BQ4802 is not set
1419# CONFIG_RTC_DRV_RP5C01 is not set
1373# CONFIG_RTC_DRV_V3020 is not set 1420# CONFIG_RTC_DRV_V3020 is not set
1374 1421
1375# 1422#
@@ -1684,7 +1731,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1684# CONFIG_KEYS is not set 1731# CONFIG_KEYS is not set
1685# CONFIG_SECURITY is not set 1732# CONFIG_SECURITY is not set
1686# CONFIG_SECURITYFS is not set 1733# CONFIG_SECURITYFS is not set
1687# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1734# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1735# CONFIG_DEFAULT_SECURITY_SMACK is not set
1736# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1737CONFIG_DEFAULT_SECURITY_DAC=y
1738CONFIG_DEFAULT_SECURITY=""
1688CONFIG_CRYPTO=y 1739CONFIG_CRYPTO=y
1689 1740
1690# 1741#
diff --git a/arch/powerpc/configs/mpc885_ads_defconfig b/arch/powerpc/configs/mpc885_ads_defconfig
index 1da3488a603d..6b9e6bd2c98d 100644
--- a/arch/powerpc/configs/mpc885_ads_defconfig
+++ b/arch/powerpc/configs/mpc885_ads_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:17 2009 4# Wed Jan 6 09:24:10 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -32,6 +32,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
35CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
37CONFIG_TRACE_IRQFLAGS_SUPPORT=y 38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -54,6 +55,7 @@ CONFIG_AUDIT_ARCH=y
54CONFIG_GENERIC_BUG=y 55CONFIG_GENERIC_BUG=y
55CONFIG_DTC=y 56CONFIG_DTC=y
56# CONFIG_DEFAULT_UIMAGE is not set 57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
57# CONFIG_PPC_DCR_NATIVE is not set 59# CONFIG_PPC_DCR_NATIVE is not set
58# CONFIG_PPC_DCR_MMIO is not set 60# CONFIG_PPC_DCR_MMIO is not set
59CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 61CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -81,6 +83,7 @@ CONFIG_SYSVIPC_SYSCTL=y
81# 83#
82CONFIG_TREE_RCU=y 84CONFIG_TREE_RCU=y
83# CONFIG_TREE_PREEMPT_RCU is not set 85# CONFIG_TREE_PREEMPT_RCU is not set
86# CONFIG_TINY_RCU is not set
84# CONFIG_RCU_TRACE is not set 87# CONFIG_RCU_TRACE is not set
85CONFIG_RCU_FANOUT=32 88CONFIG_RCU_FANOUT=32
86# CONFIG_RCU_FANOUT_EXACT is not set 89# CONFIG_RCU_FANOUT_EXACT is not set
@@ -159,14 +162,41 @@ CONFIG_LBDAF=y
159# IO Schedulers 162# IO Schedulers
160# 163#
161CONFIG_IOSCHED_NOOP=y 164CONFIG_IOSCHED_NOOP=y
162# CONFIG_IOSCHED_AS is not set
163CONFIG_IOSCHED_DEADLINE=y 165CONFIG_IOSCHED_DEADLINE=y
164# CONFIG_IOSCHED_CFQ is not set 166# CONFIG_IOSCHED_CFQ is not set
165# CONFIG_DEFAULT_AS is not set
166CONFIG_DEFAULT_DEADLINE=y 167CONFIG_DEFAULT_DEADLINE=y
167# CONFIG_DEFAULT_CFQ is not set 168# CONFIG_DEFAULT_CFQ is not set
168# CONFIG_DEFAULT_NOOP is not set 169# CONFIG_DEFAULT_NOOP is not set
169CONFIG_DEFAULT_IOSCHED="deadline" 170CONFIG_DEFAULT_IOSCHED="deadline"
171# CONFIG_INLINE_SPIN_TRYLOCK is not set
172# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
173# CONFIG_INLINE_SPIN_LOCK is not set
174# CONFIG_INLINE_SPIN_LOCK_BH is not set
175# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
176# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
177CONFIG_INLINE_SPIN_UNLOCK=y
178# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
179CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
180# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
181# CONFIG_INLINE_READ_TRYLOCK is not set
182# CONFIG_INLINE_READ_LOCK is not set
183# CONFIG_INLINE_READ_LOCK_BH is not set
184# CONFIG_INLINE_READ_LOCK_IRQ is not set
185# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
186CONFIG_INLINE_READ_UNLOCK=y
187# CONFIG_INLINE_READ_UNLOCK_BH is not set
188CONFIG_INLINE_READ_UNLOCK_IRQ=y
189# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
190# CONFIG_INLINE_WRITE_TRYLOCK is not set
191# CONFIG_INLINE_WRITE_LOCK is not set
192# CONFIG_INLINE_WRITE_LOCK_BH is not set
193# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
194# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
195CONFIG_INLINE_WRITE_UNLOCK=y
196# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
197CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
198# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
199# CONFIG_MUTEX_SPIN_ON_OWNER is not set
170# CONFIG_FREEZER is not set 200# CONFIG_FREEZER is not set
171 201
172# 202#
@@ -248,6 +278,7 @@ CONFIG_8XX_MINIMAL_FPEMU=y
248CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 278CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
249CONFIG_ARCH_HAS_WALK_MEMORY=y 279CONFIG_ARCH_HAS_WALK_MEMORY=y
250CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 280CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
281CONFIG_SPARSE_IRQ=y
251CONFIG_MAX_ACTIVE_REGIONS=32 282CONFIG_MAX_ACTIVE_REGIONS=32
252CONFIG_ARCH_FLATMEM_ENABLE=y 283CONFIG_ARCH_FLATMEM_ENABLE=y
253CONFIG_ARCH_POPULATES_NODE_MAP=y 284CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -264,8 +295,6 @@ CONFIG_MIGRATION=y
264CONFIG_ZONE_DMA_FLAG=1 295CONFIG_ZONE_DMA_FLAG=1
265CONFIG_BOUNCE=y 296CONFIG_BOUNCE=y
266CONFIG_VIRT_TO_BUS=y 297CONFIG_VIRT_TO_BUS=y
267CONFIG_HAVE_MLOCK=y
268CONFIG_HAVE_MLOCKED_PAGE_BIT=y
269# CONFIG_KSM is not set 298# CONFIG_KSM is not set
270CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 299CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
271CONFIG_PPC_4K_PAGES=y 300CONFIG_PPC_4K_PAGES=y
@@ -379,9 +408,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
379# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
380CONFIG_WIRELESS=y 409CONFIG_WIRELESS=y
381# CONFIG_CFG80211 is not set 410# CONFIG_CFG80211 is not set
382CONFIG_CFG80211_DEFAULT_PS_VALUE=0
383CONFIG_WIRELESS_OLD_REGULATORY=y
384# CONFIG_WIRELESS_EXT is not set
385# CONFIG_LIB80211 is not set 411# CONFIG_LIB80211 is not set
386 412
387# 413#
@@ -556,8 +582,7 @@ CONFIG_FS_ENET_MDIO_FEC=y
556# CONFIG_NETDEV_1000 is not set 582# CONFIG_NETDEV_1000 is not set
557# CONFIG_NETDEV_10000 is not set 583# CONFIG_NETDEV_10000 is not set
558CONFIG_WLAN=y 584CONFIG_WLAN=y
559# CONFIG_WLAN_PRE80211 is not set 585# CONFIG_HOSTAP is not set
560# CONFIG_WLAN_80211 is not set
561 586
562# 587#
563# Enable WiMAX (Networking options) to see the WiMAX drivers 588# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -602,6 +627,7 @@ CONFIG_SERIAL_CORE=y
602CONFIG_SERIAL_CORE_CONSOLE=y 627CONFIG_SERIAL_CORE_CONSOLE=y
603CONFIG_SERIAL_CPM=y 628CONFIG_SERIAL_CPM=y
604CONFIG_SERIAL_CPM_CONSOLE=y 629CONFIG_SERIAL_CPM_CONSOLE=y
630# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
605CONFIG_UNIX98_PTYS=y 631CONFIG_UNIX98_PTYS=y
606# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 632# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
607# CONFIG_LEGACY_PTYS is not set 633# CONFIG_LEGACY_PTYS is not set
@@ -862,6 +888,7 @@ CONFIG_DEBUG_INFO=y
862# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 888# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
863# CONFIG_FAULT_INJECTION is not set 889# CONFIG_FAULT_INJECTION is not set
864# CONFIG_LATENCYTOP is not set 890# CONFIG_LATENCYTOP is not set
891# CONFIG_SYSCTL_SYSCALL_CHECK is not set
865# CONFIG_DEBUG_PAGEALLOC is not set 892# CONFIG_DEBUG_PAGEALLOC is not set
866CONFIG_HAVE_FUNCTION_TRACER=y 893CONFIG_HAVE_FUNCTION_TRACER=y
867CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 894CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -904,7 +931,11 @@ CONFIG_PRINT_STACK_DEPTH=64
904# CONFIG_KEYS is not set 931# CONFIG_KEYS is not set
905# CONFIG_SECURITY is not set 932# CONFIG_SECURITY is not set
906# CONFIG_SECURITYFS is not set 933# CONFIG_SECURITYFS is not set
907# CONFIG_SECURITY_FILE_CAPABILITIES is not set 934# CONFIG_DEFAULT_SECURITY_SELINUX is not set
935# CONFIG_DEFAULT_SECURITY_SMACK is not set
936# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
937CONFIG_DEFAULT_SECURITY_DAC=y
938CONFIG_DEFAULT_SECURITY=""
908# CONFIG_CRYPTO is not set 939# CONFIG_CRYPTO is not set
909CONFIG_PPC_CLOCK=y 940CONFIG_PPC_CLOCK=y
910CONFIG_PPC_LIB_RHEAP=y 941CONFIG_PPC_LIB_RHEAP=y
diff --git a/arch/powerpc/configs/ppc40x_defconfig b/arch/powerpc/configs/ppc40x_defconfig
index 326205cabf77..35b60683cde5 100644
--- a/arch/powerpc/configs/ppc40x_defconfig
+++ b/arch/powerpc/configs/ppc40x_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Fri Jan 23 08:44:03 2009 4# Mon Jan 4 13:54:06 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14CONFIG_40x=y 14CONFIG_40x=y
@@ -16,6 +16,7 @@ CONFIG_40x=y
16# CONFIG_E200 is not set 16# CONFIG_E200 is not set
17CONFIG_4xx=y 17CONFIG_4xx=y
18CONFIG_PPC_MMU_NOHASH=y 18CONFIG_PPC_MMU_NOHASH=y
19CONFIG_PPC_MMU_NOHASH_32=y
19# CONFIG_PPC_MM_SLICES is not set 20# CONFIG_PPC_MM_SLICES is not set
20CONFIG_NOT_COHERENT_CACHE=y 21CONFIG_NOT_COHERENT_CACHE=y
21CONFIG_PPC32=y 22CONFIG_PPC32=y
@@ -27,15 +28,18 @@ CONFIG_GENERIC_TIME=y
27CONFIG_GENERIC_TIME_VSYSCALL=y 28CONFIG_GENERIC_TIME_VSYSCALL=y
28CONFIG_GENERIC_CLOCKEVENTS=y 29CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
30# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
31CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
32CONFIG_STACKTRACE_SUPPORT=y 36CONFIG_STACKTRACE_SUPPORT=y
33CONFIG_HAVE_LATENCYTOP_SUPPORT=y 37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
34CONFIG_LOCKDEP_SUPPORT=y 39CONFIG_LOCKDEP_SUPPORT=y
35CONFIG_RWSEM_XCHGADD_ALGORITHM=y 40CONFIG_RWSEM_XCHGADD_ALGORITHM=y
36CONFIG_ARCH_HAS_ILOG2_U32=y 41CONFIG_ARCH_HAS_ILOG2_U32=y
37CONFIG_GENERIC_HWEIGHT=y 42CONFIG_GENERIC_HWEIGHT=y
38CONFIG_GENERIC_CALIBRATE_DELAY=y
39CONFIG_GENERIC_FIND_NEXT_BIT=y 43CONFIG_GENERIC_FIND_NEXT_BIT=y
40CONFIG_GENERIC_GPIO=y 44CONFIG_GENERIC_GPIO=y
41# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 45# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
@@ -50,11 +54,15 @@ CONFIG_PPC_UDBG_16550=y
50# CONFIG_GENERIC_TBSYNC is not set 54# CONFIG_GENERIC_TBSYNC is not set
51CONFIG_AUDIT_ARCH=y 55CONFIG_AUDIT_ARCH=y
52CONFIG_GENERIC_BUG=y 56CONFIG_GENERIC_BUG=y
53# CONFIG_DEFAULT_UIMAGE is not set 57CONFIG_DTC=y
58CONFIG_DEFAULT_UIMAGE=y
59CONFIG_ARCH_HIBERNATION_POSSIBLE=y
54CONFIG_PPC_DCR_NATIVE=y 60CONFIG_PPC_DCR_NATIVE=y
55# CONFIG_PPC_DCR_MMIO is not set 61# CONFIG_PPC_DCR_MMIO is not set
56CONFIG_PPC_DCR=y 62CONFIG_PPC_DCR=y
63CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
57CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 64CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
65CONFIG_CONSTRUCTORS=y
58 66
59# 67#
60# General setup 68# General setup
@@ -68,9 +76,21 @@ CONFIG_SWAP=y
68CONFIG_SYSVIPC=y 76CONFIG_SYSVIPC=y
69CONFIG_SYSVIPC_SYSCTL=y 77CONFIG_SYSVIPC_SYSCTL=y
70CONFIG_POSIX_MQUEUE=y 78CONFIG_POSIX_MQUEUE=y
79CONFIG_POSIX_MQUEUE_SYSCTL=y
71# CONFIG_BSD_PROCESS_ACCT is not set 80# CONFIG_BSD_PROCESS_ACCT is not set
72# CONFIG_TASKSTATS is not set 81# CONFIG_TASKSTATS is not set
73# CONFIG_AUDIT is not set 82# CONFIG_AUDIT is not set
83
84#
85# RCU Subsystem
86#
87CONFIG_TREE_RCU=y
88# CONFIG_TREE_PREEMPT_RCU is not set
89# CONFIG_TINY_RCU is not set
90# CONFIG_RCU_TRACE is not set
91CONFIG_RCU_FANOUT=32
92# CONFIG_RCU_FANOUT_EXACT is not set
93# CONFIG_TREE_RCU_TRACE is not set
74# CONFIG_IKCONFIG is not set 94# CONFIG_IKCONFIG is not set
75CONFIG_LOG_BUF_SHIFT=14 95CONFIG_LOG_BUF_SHIFT=14
76CONFIG_GROUP_SCHED=y 96CONFIG_GROUP_SCHED=y
@@ -85,31 +105,40 @@ CONFIG_SYSFS_DEPRECATED_V2=y
85# CONFIG_NAMESPACES is not set 105# CONFIG_NAMESPACES is not set
86CONFIG_BLK_DEV_INITRD=y 106CONFIG_BLK_DEV_INITRD=y
87CONFIG_INITRAMFS_SOURCE="" 107CONFIG_INITRAMFS_SOURCE=""
108CONFIG_RD_GZIP=y
109# CONFIG_RD_BZIP2 is not set
110# CONFIG_RD_LZMA is not set
88# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 111# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
89CONFIG_SYSCTL=y 112CONFIG_SYSCTL=y
113CONFIG_ANON_INODES=y
90CONFIG_EMBEDDED=y 114CONFIG_EMBEDDED=y
91CONFIG_SYSCTL_SYSCALL=y 115CONFIG_SYSCTL_SYSCALL=y
92CONFIG_KALLSYMS=y 116CONFIG_KALLSYMS=y
93CONFIG_KALLSYMS_ALL=y 117CONFIG_KALLSYMS_ALL=y
94CONFIG_KALLSYMS_STRIP_GENERATED=y
95CONFIG_KALLSYMS_EXTRA_PASS=y 118CONFIG_KALLSYMS_EXTRA_PASS=y
96CONFIG_HOTPLUG=y 119CONFIG_HOTPLUG=y
97CONFIG_PRINTK=y 120CONFIG_PRINTK=y
98CONFIG_BUG=y 121CONFIG_BUG=y
99CONFIG_ELF_CORE=y 122CONFIG_ELF_CORE=y
100CONFIG_COMPAT_BRK=y
101CONFIG_BASE_FULL=y 123CONFIG_BASE_FULL=y
102CONFIG_FUTEX=y 124CONFIG_FUTEX=y
103CONFIG_ANON_INODES=y
104CONFIG_EPOLL=y 125CONFIG_EPOLL=y
105CONFIG_SIGNALFD=y 126CONFIG_SIGNALFD=y
106CONFIG_TIMERFD=y 127CONFIG_TIMERFD=y
107CONFIG_EVENTFD=y 128CONFIG_EVENTFD=y
108CONFIG_SHMEM=y 129CONFIG_SHMEM=y
109CONFIG_AIO=y 130CONFIG_AIO=y
131CONFIG_HAVE_PERF_EVENTS=y
132
133#
134# Kernel Performance Events And Counters
135#
136# CONFIG_PERF_EVENTS is not set
137# CONFIG_PERF_COUNTERS is not set
110CONFIG_VM_EVENT_COUNTERS=y 138CONFIG_VM_EVENT_COUNTERS=y
111CONFIG_PCI_QUIRKS=y 139CONFIG_PCI_QUIRKS=y
112CONFIG_SLUB_DEBUG=y 140CONFIG_SLUB_DEBUG=y
141CONFIG_COMPAT_BRK=y
113# CONFIG_SLAB is not set 142# CONFIG_SLAB is not set
114CONFIG_SLUB=y 143CONFIG_SLUB=y
115# CONFIG_SLOB is not set 144# CONFIG_SLOB is not set
@@ -121,6 +150,14 @@ CONFIG_HAVE_IOREMAP_PROT=y
121CONFIG_HAVE_KPROBES=y 150CONFIG_HAVE_KPROBES=y
122CONFIG_HAVE_KRETPROBES=y 151CONFIG_HAVE_KRETPROBES=y
123CONFIG_HAVE_ARCH_TRACEHOOK=y 152CONFIG_HAVE_ARCH_TRACEHOOK=y
153CONFIG_HAVE_DMA_ATTRS=y
154CONFIG_HAVE_DMA_API_DEBUG=y
155
156#
157# GCOV-based kernel profiling
158#
159# CONFIG_GCOV_KERNEL is not set
160# CONFIG_SLOW_WORK is not set
124# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 161# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
125CONFIG_SLABINFO=y 162CONFIG_SLABINFO=y
126CONFIG_RT_MUTEXES=y 163CONFIG_RT_MUTEXES=y
@@ -132,8 +169,7 @@ CONFIG_MODULE_UNLOAD=y
132# CONFIG_MODVERSIONS is not set 169# CONFIG_MODVERSIONS is not set
133# CONFIG_MODULE_SRCVERSION_ALL is not set 170# CONFIG_MODULE_SRCVERSION_ALL is not set
134CONFIG_BLOCK=y 171CONFIG_BLOCK=y
135CONFIG_LBD=y 172CONFIG_LBDAF=y
136# CONFIG_BLK_DEV_IO_TRACE is not set
137# CONFIG_BLK_DEV_BSG is not set 173# CONFIG_BLK_DEV_BSG is not set
138# CONFIG_BLK_DEV_INTEGRITY is not set 174# CONFIG_BLK_DEV_INTEGRITY is not set
139 175
@@ -141,19 +177,41 @@ CONFIG_LBD=y
141# IO Schedulers 177# IO Schedulers
142# 178#
143CONFIG_IOSCHED_NOOP=y 179CONFIG_IOSCHED_NOOP=y
144CONFIG_IOSCHED_AS=y
145CONFIG_IOSCHED_DEADLINE=y 180CONFIG_IOSCHED_DEADLINE=y
146CONFIG_IOSCHED_CFQ=y 181CONFIG_IOSCHED_CFQ=y
147CONFIG_DEFAULT_AS=y
148# CONFIG_DEFAULT_DEADLINE is not set 182# CONFIG_DEFAULT_DEADLINE is not set
149# CONFIG_DEFAULT_CFQ is not set 183CONFIG_DEFAULT_CFQ=y
150# CONFIG_DEFAULT_NOOP is not set 184# CONFIG_DEFAULT_NOOP is not set
151CONFIG_DEFAULT_IOSCHED="anticipatory" 185CONFIG_DEFAULT_IOSCHED="cfq"
152CONFIG_CLASSIC_RCU=y 186# CONFIG_INLINE_SPIN_TRYLOCK is not set
153# CONFIG_TREE_RCU is not set 187# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
154# CONFIG_PREEMPT_RCU is not set 188# CONFIG_INLINE_SPIN_LOCK is not set
155# CONFIG_TREE_RCU_TRACE is not set 189# CONFIG_INLINE_SPIN_LOCK_BH is not set
156# CONFIG_PREEMPT_RCU_TRACE is not set 190# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
191# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
192CONFIG_INLINE_SPIN_UNLOCK=y
193# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
194CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
195# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
196# CONFIG_INLINE_READ_TRYLOCK is not set
197# CONFIG_INLINE_READ_LOCK is not set
198# CONFIG_INLINE_READ_LOCK_BH is not set
199# CONFIG_INLINE_READ_LOCK_IRQ is not set
200# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
201CONFIG_INLINE_READ_UNLOCK=y
202# CONFIG_INLINE_READ_UNLOCK_BH is not set
203CONFIG_INLINE_READ_UNLOCK_IRQ=y
204# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
205# CONFIG_INLINE_WRITE_TRYLOCK is not set
206# CONFIG_INLINE_WRITE_LOCK is not set
207# CONFIG_INLINE_WRITE_LOCK_BH is not set
208# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
209# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
210CONFIG_INLINE_WRITE_UNLOCK=y
211# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
212CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
213# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
214# CONFIG_MUTEX_SPIN_ON_OWNER is not set
157# CONFIG_FREEZER is not set 215# CONFIG_FREEZER is not set
158CONFIG_PPC4xx_PCI_EXPRESS=y 216CONFIG_PPC4xx_PCI_EXPRESS=y
159 217
@@ -168,12 +226,14 @@ CONFIG_XILINX_VIRTEX=y
168CONFIG_ACADIA=y 226CONFIG_ACADIA=y
169CONFIG_EP405=y 227CONFIG_EP405=y
170CONFIG_HCU4=y 228CONFIG_HCU4=y
229CONFIG_HOTFOOT=y
171CONFIG_KILAUEA=y 230CONFIG_KILAUEA=y
172CONFIG_MAKALU=y 231CONFIG_MAKALU=y
173CONFIG_WALNUT=y 232CONFIG_WALNUT=y
174CONFIG_XILINX_VIRTEX_GENERIC_BOARD=y 233CONFIG_XILINX_VIRTEX_GENERIC_BOARD=y
175CONFIG_PPC40x_SIMPLE=y 234CONFIG_PPC40x_SIMPLE=y
176CONFIG_405GP=y 235CONFIG_405GP=y
236CONFIG_405EP=y
177CONFIG_405EX=y 237CONFIG_405EX=y
178CONFIG_405EZ=y 238CONFIG_405EZ=y
179CONFIG_405GPR=y 239CONFIG_405GPR=y
@@ -195,6 +255,7 @@ CONFIG_IBM405_ERR51=y
195# CONFIG_FSL_ULI1575 is not set 255# CONFIG_FSL_ULI1575 is not set
196CONFIG_OF_RTC=y 256CONFIG_OF_RTC=y
197# CONFIG_SIMPLE_GPIO is not set 257# CONFIG_SIMPLE_GPIO is not set
258# CONFIG_XILINX_PCI is not set
198 259
199# 260#
200# Kernel options 261# Kernel options
@@ -218,10 +279,12 @@ CONFIG_BINFMT_ELF=y
218# CONFIG_BINFMT_MISC is not set 279# CONFIG_BINFMT_MISC is not set
219# CONFIG_MATH_EMULATION is not set 280# CONFIG_MATH_EMULATION is not set
220# CONFIG_IOMMU_HELPER is not set 281# CONFIG_IOMMU_HELPER is not set
221CONFIG_PPC_NEED_DMA_SYNC_OPS=y 282# CONFIG_SWIOTLB is not set
222CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 283CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
223CONFIG_ARCH_HAS_WALK_MEMORY=y 284CONFIG_ARCH_HAS_WALK_MEMORY=y
224CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 285CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
286CONFIG_SPARSE_IRQ=y
287CONFIG_MAX_ACTIVE_REGIONS=32
225CONFIG_ARCH_FLATMEM_ENABLE=y 288CONFIG_ARCH_FLATMEM_ENABLE=y
226CONFIG_ARCH_POPULATES_NODE_MAP=y 289CONFIG_ARCH_POPULATES_NODE_MAP=y
227CONFIG_SELECT_MEMORY_MODEL=y 290CONFIG_SELECT_MEMORY_MODEL=y
@@ -237,10 +300,12 @@ CONFIG_MIGRATION=y
237CONFIG_ZONE_DMA_FLAG=1 300CONFIG_ZONE_DMA_FLAG=1
238CONFIG_BOUNCE=y 301CONFIG_BOUNCE=y
239CONFIG_VIRT_TO_BUS=y 302CONFIG_VIRT_TO_BUS=y
240CONFIG_UNEVICTABLE_LRU=y 303# CONFIG_KSM is not set
304CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
241CONFIG_PPC_4K_PAGES=y 305CONFIG_PPC_4K_PAGES=y
242# CONFIG_PPC_16K_PAGES is not set 306# CONFIG_PPC_16K_PAGES is not set
243# CONFIG_PPC_64K_PAGES is not set 307# CONFIG_PPC_64K_PAGES is not set
308# CONFIG_PPC_256K_PAGES is not set
244CONFIG_FORCE_MAX_ZONEORDER=11 309CONFIG_FORCE_MAX_ZONEORDER=11
245CONFIG_PROC_DEVICETREE=y 310CONFIG_PROC_DEVICETREE=y
246# CONFIG_CMDLINE_BOOL is not set 311# CONFIG_CMDLINE_BOOL is not set
@@ -265,6 +330,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
265# CONFIG_PCI_LEGACY is not set 330# CONFIG_PCI_LEGACY is not set
266# CONFIG_PCI_DEBUG is not set 331# CONFIG_PCI_DEBUG is not set
267# CONFIG_PCI_STUB is not set 332# CONFIG_PCI_STUB is not set
333# CONFIG_PCI_IOV is not set
268# CONFIG_PCCARD is not set 334# CONFIG_PCCARD is not set
269# CONFIG_HOTPLUG_PCI is not set 335# CONFIG_HOTPLUG_PCI is not set
270# CONFIG_HAS_RAPIDIO is not set 336# CONFIG_HAS_RAPIDIO is not set
@@ -282,14 +348,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
282CONFIG_KERNEL_START=0xc0000000 348CONFIG_KERNEL_START=0xc0000000
283CONFIG_PHYSICAL_START=0x00000000 349CONFIG_PHYSICAL_START=0x00000000
284CONFIG_TASK_SIZE=0xc0000000 350CONFIG_TASK_SIZE=0xc0000000
285CONFIG_CONSISTENT_START=0xff100000
286CONFIG_CONSISTENT_SIZE=0x00200000 351CONFIG_CONSISTENT_SIZE=0x00200000
287CONFIG_NET=y 352CONFIG_NET=y
288 353
289# 354#
290# Networking options 355# Networking options
291# 356#
292CONFIG_COMPAT_NET_DEV_OPS=y
293CONFIG_PACKET=y 357CONFIG_PACKET=y
294# CONFIG_PACKET_MMAP is not set 358# CONFIG_PACKET_MMAP is not set
295CONFIG_UNIX=y 359CONFIG_UNIX=y
@@ -341,6 +405,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
341CONFIG_INET6_XFRM_MODE_BEET=m 405CONFIG_INET6_XFRM_MODE_BEET=m
342# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 406# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
343CONFIG_IPV6_SIT=m 407CONFIG_IPV6_SIT=m
408# CONFIG_IPV6_SIT_6RD is not set
344CONFIG_IPV6_NDISC_NODETYPE=y 409CONFIG_IPV6_NDISC_NODETYPE=y
345# CONFIG_IPV6_TUNNEL is not set 410# CONFIG_IPV6_TUNNEL is not set
346# CONFIG_IPV6_MULTIPLE_TABLES is not set 411# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -349,6 +414,7 @@ CONFIG_IPV6_NDISC_NODETYPE=y
349# CONFIG_NETFILTER is not set 414# CONFIG_NETFILTER is not set
350# CONFIG_IP_DCCP is not set 415# CONFIG_IP_DCCP is not set
351# CONFIG_IP_SCTP is not set 416# CONFIG_IP_SCTP is not set
417# CONFIG_RDS is not set
352# CONFIG_TIPC is not set 418# CONFIG_TIPC is not set
353# CONFIG_ATM is not set 419# CONFIG_ATM is not set
354# CONFIG_BRIDGE is not set 420# CONFIG_BRIDGE is not set
@@ -362,6 +428,8 @@ CONFIG_IPV6_NDISC_NODETYPE=y
362# CONFIG_LAPB is not set 428# CONFIG_LAPB is not set
363# CONFIG_ECONET is not set 429# CONFIG_ECONET is not set
364# CONFIG_WAN_ROUTER is not set 430# CONFIG_WAN_ROUTER is not set
431# CONFIG_PHONET is not set
432# CONFIG_IEEE802154 is not set
365# CONFIG_NET_SCHED is not set 433# CONFIG_NET_SCHED is not set
366# CONFIG_DCB is not set 434# CONFIG_DCB is not set
367 435
@@ -374,13 +442,13 @@ CONFIG_IPV6_NDISC_NODETYPE=y
374# CONFIG_IRDA is not set 442# CONFIG_IRDA is not set
375# CONFIG_BT is not set 443# CONFIG_BT is not set
376# CONFIG_AF_RXRPC is not set 444# CONFIG_AF_RXRPC is not set
377# CONFIG_PHONET is not set
378CONFIG_WIRELESS=y 445CONFIG_WIRELESS=y
379# CONFIG_CFG80211 is not set 446# CONFIG_CFG80211 is not set
380CONFIG_WIRELESS_OLD_REGULATORY=y
381# CONFIG_WIRELESS_EXT is not set
382# CONFIG_LIB80211 is not set 447# CONFIG_LIB80211 is not set
383# CONFIG_MAC80211 is not set 448
449#
450# CFG80211 needs to be enabled for MAC80211
451#
384# CONFIG_WIMAX is not set 452# CONFIG_WIMAX is not set
385# CONFIG_RFKILL is not set 453# CONFIG_RFKILL is not set
386# CONFIG_NET_9P is not set 454# CONFIG_NET_9P is not set
@@ -393,6 +461,7 @@ CONFIG_WIRELESS_OLD_REGULATORY=y
393# Generic Driver Options 461# Generic Driver Options
394# 462#
395CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 463CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
464# CONFIG_DEVTMPFS is not set
396CONFIG_STANDALONE=y 465CONFIG_STANDALONE=y
397CONFIG_PREVENT_FIRMWARE_BUILD=y 466CONFIG_PREVENT_FIRMWARE_BUILD=y
398CONFIG_FW_LOADER=y 467CONFIG_FW_LOADER=y
@@ -405,9 +474,9 @@ CONFIG_CONNECTOR=y
405CONFIG_PROC_EVENTS=y 474CONFIG_PROC_EVENTS=y
406CONFIG_MTD=y 475CONFIG_MTD=y
407# CONFIG_MTD_DEBUG is not set 476# CONFIG_MTD_DEBUG is not set
477# CONFIG_MTD_TESTS is not set
408# CONFIG_MTD_CONCAT is not set 478# CONFIG_MTD_CONCAT is not set
409CONFIG_MTD_PARTITIONS=y 479CONFIG_MTD_PARTITIONS=y
410# CONFIG_MTD_TESTS is not set
411# CONFIG_MTD_REDBOOT_PARTS is not set 480# CONFIG_MTD_REDBOOT_PARTS is not set
412CONFIG_MTD_CMDLINE_PARTS=y 481CONFIG_MTD_CMDLINE_PARTS=y
413CONFIG_MTD_OF_PARTS=y 482CONFIG_MTD_OF_PARTS=y
@@ -483,7 +552,6 @@ CONFIG_MTD_PHYSMAP_OF=y
483# LPDDR flash memory drivers 552# LPDDR flash memory drivers
484# 553#
485# CONFIG_MTD_LPDDR is not set 554# CONFIG_MTD_LPDDR is not set
486# CONFIG_MTD_QINFO_PROBE is not set
487 555
488# 556#
489# UBI - Unsorted block images 557# UBI - Unsorted block images
@@ -491,7 +559,7 @@ CONFIG_MTD_PHYSMAP_OF=y
491CONFIG_MTD_UBI=m 559CONFIG_MTD_UBI=m
492CONFIG_MTD_UBI_WL_THRESHOLD=4096 560CONFIG_MTD_UBI_WL_THRESHOLD=4096
493CONFIG_MTD_UBI_BEB_RESERVE=1 561CONFIG_MTD_UBI_BEB_RESERVE=1
494CONFIG_MTD_UBI_GLUEBI=y 562CONFIG_MTD_UBI_GLUEBI=m
495 563
496# 564#
497# UBI debugging options 565# UBI debugging options
@@ -509,6 +577,7 @@ CONFIG_BLK_DEV=y
509# CONFIG_BLK_DEV_UMEM is not set 577# CONFIG_BLK_DEV_UMEM is not set
510# CONFIG_BLK_DEV_COW_COMMON is not set 578# CONFIG_BLK_DEV_COW_COMMON is not set
511# CONFIG_BLK_DEV_LOOP is not set 579# CONFIG_BLK_DEV_LOOP is not set
580# CONFIG_BLK_DEV_DRBD is not set
512# CONFIG_BLK_DEV_NBD is not set 581# CONFIG_BLK_DEV_NBD is not set
513# CONFIG_BLK_DEV_SX8 is not set 582# CONFIG_BLK_DEV_SX8 is not set
514CONFIG_BLK_DEV_RAM=y 583CONFIG_BLK_DEV_RAM=y
@@ -520,14 +589,25 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
520CONFIG_XILINX_SYSACE=m 589CONFIG_XILINX_SYSACE=m
521# CONFIG_BLK_DEV_HD is not set 590# CONFIG_BLK_DEV_HD is not set
522CONFIG_MISC_DEVICES=y 591CONFIG_MISC_DEVICES=y
592# CONFIG_AD525X_DPOT is not set
523# CONFIG_PHANTOM is not set 593# CONFIG_PHANTOM is not set
524# CONFIG_EEPROM_93CX6 is not set
525# CONFIG_SGI_IOC4 is not set 594# CONFIG_SGI_IOC4 is not set
526# CONFIG_TIFM_CORE is not set 595# CONFIG_TIFM_CORE is not set
527# CONFIG_ICS932S401 is not set 596# CONFIG_ICS932S401 is not set
528# CONFIG_ENCLOSURE_SERVICES is not set 597# CONFIG_ENCLOSURE_SERVICES is not set
529# CONFIG_HP_ILO is not set 598# CONFIG_HP_ILO is not set
599# CONFIG_ISL29003 is not set
600# CONFIG_DS1682 is not set
530# CONFIG_C2PORT is not set 601# CONFIG_C2PORT is not set
602
603#
604# EEPROM support
605#
606# CONFIG_EEPROM_AT24 is not set
607# CONFIG_EEPROM_LEGACY is not set
608# CONFIG_EEPROM_MAX6875 is not set
609# CONFIG_EEPROM_93CX6 is not set
610# CONFIG_CB710_CORE is not set
531CONFIG_HAVE_IDE=y 611CONFIG_HAVE_IDE=y
532# CONFIG_IDE is not set 612# CONFIG_IDE is not set
533 613
@@ -547,7 +627,11 @@ CONFIG_HAVE_IDE=y
547# 627#
548 628
549# 629#
550# Enable only one of the two stacks, unless you know what you are doing 630# You can enable one or both FireWire driver stacks.
631#
632
633#
634# See the help texts for more information.
551# 635#
552# CONFIG_FIREWIRE is not set 636# CONFIG_FIREWIRE is not set
553# CONFIG_IEEE1394 is not set 637# CONFIG_IEEE1394 is not set
@@ -568,6 +652,8 @@ CONFIG_NET_ETHERNET=y
568# CONFIG_SUNGEM is not set 652# CONFIG_SUNGEM is not set
569# CONFIG_CASSINI is not set 653# CONFIG_CASSINI is not set
570# CONFIG_NET_VENDOR_3COM is not set 654# CONFIG_NET_VENDOR_3COM is not set
655# CONFIG_ETHOC is not set
656# CONFIG_DNET is not set
571# CONFIG_NET_TULIP is not set 657# CONFIG_NET_TULIP is not set
572# CONFIG_HP100 is not set 658# CONFIG_HP100 is not set
573CONFIG_IBM_NEW_EMAC=y 659CONFIG_IBM_NEW_EMAC=y
@@ -586,7 +672,10 @@ CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT=y
586CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR=y 672CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR=y
587# CONFIG_NET_PCI is not set 673# CONFIG_NET_PCI is not set
588# CONFIG_B44 is not set 674# CONFIG_B44 is not set
675# CONFIG_KS8842 is not set
676# CONFIG_KS8851_MLL is not set
589# CONFIG_ATL2 is not set 677# CONFIG_ATL2 is not set
678# CONFIG_XILINX_EMACLITE is not set
590CONFIG_NETDEV_1000=y 679CONFIG_NETDEV_1000=y
591# CONFIG_ACENIC is not set 680# CONFIG_ACENIC is not set
592# CONFIG_DL2K is not set 681# CONFIG_DL2K is not set
@@ -594,6 +683,7 @@ CONFIG_NETDEV_1000=y
594# CONFIG_E1000E is not set 683# CONFIG_E1000E is not set
595# CONFIG_IP1000 is not set 684# CONFIG_IP1000 is not set
596# CONFIG_IGB is not set 685# CONFIG_IGB is not set
686# CONFIG_IGBVF is not set
597# CONFIG_NS83820 is not set 687# CONFIG_NS83820 is not set
598# CONFIG_HAMACHI is not set 688# CONFIG_HAMACHI is not set
599# CONFIG_YELLOWFIN is not set 689# CONFIG_YELLOWFIN is not set
@@ -604,9 +694,13 @@ CONFIG_NETDEV_1000=y
604# CONFIG_VIA_VELOCITY is not set 694# CONFIG_VIA_VELOCITY is not set
605# CONFIG_TIGON3 is not set 695# CONFIG_TIGON3 is not set
606# CONFIG_BNX2 is not set 696# CONFIG_BNX2 is not set
697# CONFIG_CNIC is not set
698# CONFIG_MV643XX_ETH is not set
699# CONFIG_XILINX_LL_TEMAC is not set
607# CONFIG_QLA3XXX is not set 700# CONFIG_QLA3XXX is not set
608# CONFIG_ATL1 is not set 701# CONFIG_ATL1 is not set
609# CONFIG_ATL1E is not set 702# CONFIG_ATL1E is not set
703# CONFIG_ATL1C is not set
610# CONFIG_JME is not set 704# CONFIG_JME is not set
611CONFIG_NETDEV_10000=y 705CONFIG_NETDEV_10000=y
612# CONFIG_CHELSIO_T1 is not set 706# CONFIG_CHELSIO_T1 is not set
@@ -616,6 +710,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
616# CONFIG_IXGBE is not set 710# CONFIG_IXGBE is not set
617# CONFIG_IXGB is not set 711# CONFIG_IXGB is not set
618# CONFIG_S2IO is not set 712# CONFIG_S2IO is not set
713# CONFIG_VXGE is not set
619# CONFIG_MYRI10GE is not set 714# CONFIG_MYRI10GE is not set
620# CONFIG_NETXEN_NIC is not set 715# CONFIG_NETXEN_NIC is not set
621# CONFIG_NIU is not set 716# CONFIG_NIU is not set
@@ -625,14 +720,13 @@ CONFIG_CHELSIO_T3_DEPENDS=y
625# CONFIG_BNX2X is not set 720# CONFIG_BNX2X is not set
626# CONFIG_QLGE is not set 721# CONFIG_QLGE is not set
627# CONFIG_SFC is not set 722# CONFIG_SFC is not set
723# CONFIG_BE2NET is not set
628# CONFIG_TR is not set 724# CONFIG_TR is not set
629 725CONFIG_WLAN=y
630# 726# CONFIG_AIRO is not set
631# Wireless LAN 727# CONFIG_ATMEL is not set
632# 728# CONFIG_PRISM54 is not set
633# CONFIG_WLAN_PRE80211 is not set 729# CONFIG_HOSTAP is not set
634# CONFIG_WLAN_80211 is not set
635# CONFIG_IWLWIFI_LEDS is not set
636 730
637# 731#
638# Enable WiMAX (Networking options) to see the WiMAX drivers 732# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -645,6 +739,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
645# CONFIG_NETCONSOLE is not set 739# CONFIG_NETCONSOLE is not set
646# CONFIG_NETPOLL is not set 740# CONFIG_NETPOLL is not set
647# CONFIG_NET_POLL_CONTROLLER is not set 741# CONFIG_NET_POLL_CONTROLLER is not set
742# CONFIG_VMXNET3 is not set
648# CONFIG_ISDN is not set 743# CONFIG_ISDN is not set
649# CONFIG_PHONE is not set 744# CONFIG_PHONE is not set
650 745
@@ -663,6 +758,7 @@ CONFIG_SERIO=m
663# CONFIG_SERIO_LIBPS2 is not set 758# CONFIG_SERIO_LIBPS2 is not set
664# CONFIG_SERIO_RAW is not set 759# CONFIG_SERIO_RAW is not set
665CONFIG_SERIO_XILINX_XPS_PS2=m 760CONFIG_SERIO_XILINX_XPS_PS2=m
761# CONFIG_SERIO_ALTERA_PS2 is not set
666# CONFIG_GAMEPORT is not set 762# CONFIG_GAMEPORT is not set
667 763
668# 764#
@@ -697,6 +793,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
697# CONFIG_SERIAL_JSM is not set 793# CONFIG_SERIAL_JSM is not set
698CONFIG_SERIAL_OF_PLATFORM=y 794CONFIG_SERIAL_OF_PLATFORM=y
699# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 795# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
796# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
700CONFIG_UNIX98_PTYS=y 797CONFIG_UNIX98_PTYS=y
701# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 798# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
702CONFIG_LEGACY_PTYS=y 799CONFIG_LEGACY_PTYS=y
@@ -714,6 +811,7 @@ CONFIG_XILINX_HWICAP=m
714CONFIG_DEVPORT=y 811CONFIG_DEVPORT=y
715CONFIG_I2C=m 812CONFIG_I2C=m
716CONFIG_I2C_BOARDINFO=y 813CONFIG_I2C_BOARDINFO=y
814CONFIG_I2C_COMPAT=y
717CONFIG_I2C_CHARDEV=m 815CONFIG_I2C_CHARDEV=m
718CONFIG_I2C_HELPER_AUTO=y 816CONFIG_I2C_HELPER_AUTO=y
719CONFIG_I2C_ALGOBIT=m 817CONFIG_I2C_ALGOBIT=m
@@ -756,11 +854,6 @@ CONFIG_I2C_IBM_IIC=m
756# CONFIG_I2C_TAOS_EVM is not set 854# CONFIG_I2C_TAOS_EVM is not set
757 855
758# 856#
759# Graphics adapter I2C/DDC channel drivers
760#
761# CONFIG_I2C_VOODOO3 is not set
762
763#
764# Other I2C/SMBus bus drivers 857# Other I2C/SMBus bus drivers
765# 858#
766# CONFIG_I2C_PCA_PLATFORM is not set 859# CONFIG_I2C_PCA_PLATFORM is not set
@@ -769,20 +862,17 @@ CONFIG_I2C_IBM_IIC=m
769# 862#
770# Miscellaneous I2C Chip support 863# Miscellaneous I2C Chip support
771# 864#
772# CONFIG_DS1682 is not set
773# CONFIG_EEPROM_AT24 is not set
774# CONFIG_EEPROM_LEGACY is not set
775# CONFIG_SENSORS_PCF8574 is not set
776# CONFIG_PCF8575 is not set
777# CONFIG_SENSORS_PCA9539 is not set
778# CONFIG_SENSORS_PCF8591 is not set
779# CONFIG_SENSORS_MAX6875 is not set
780# CONFIG_SENSORS_TSL2550 is not set 865# CONFIG_SENSORS_TSL2550 is not set
781# CONFIG_I2C_DEBUG_CORE is not set 866# CONFIG_I2C_DEBUG_CORE is not set
782# CONFIG_I2C_DEBUG_ALGO is not set 867# CONFIG_I2C_DEBUG_ALGO is not set
783# CONFIG_I2C_DEBUG_BUS is not set 868# CONFIG_I2C_DEBUG_BUS is not set
784# CONFIG_I2C_DEBUG_CHIP is not set 869# CONFIG_I2C_DEBUG_CHIP is not set
785# CONFIG_SPI is not set 870# CONFIG_SPI is not set
871
872#
873# PPS support
874#
875# CONFIG_PPS is not set
786CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 876CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
787CONFIG_ARCH_REQUIRE_GPIOLIB=y 877CONFIG_ARCH_REQUIRE_GPIOLIB=y
788CONFIG_GPIOLIB=y 878CONFIG_GPIOLIB=y
@@ -804,11 +894,17 @@ CONFIG_GPIO_XILINX=y
804# 894#
805# PCI GPIO expanders: 895# PCI GPIO expanders:
806# 896#
897# CONFIG_GPIO_CS5535 is not set
807# CONFIG_GPIO_BT8XX is not set 898# CONFIG_GPIO_BT8XX is not set
899# CONFIG_GPIO_LANGWELL is not set
808 900
809# 901#
810# SPI GPIO expanders: 902# SPI GPIO expanders:
811# 903#
904
905#
906# AC97 GPIO expanders:
907#
812# CONFIG_W1 is not set 908# CONFIG_W1 is not set
813# CONFIG_POWER_SUPPLY is not set 909# CONFIG_POWER_SUPPLY is not set
814# CONFIG_HWMON is not set 910# CONFIG_HWMON is not set
@@ -832,28 +928,15 @@ CONFIG_SSB_POSSIBLE=y
832# CONFIG_MFD_WM8400 is not set 928# CONFIG_MFD_WM8400 is not set
833# CONFIG_MFD_WM8350_I2C is not set 929# CONFIG_MFD_WM8350_I2C is not set
834# CONFIG_MFD_PCF50633 is not set 930# CONFIG_MFD_PCF50633 is not set
931# CONFIG_AB3100_CORE is not set
835# CONFIG_REGULATOR is not set 932# CONFIG_REGULATOR is not set
836 933# CONFIG_MEDIA_SUPPORT is not set
837#
838# Multimedia devices
839#
840
841#
842# Multimedia core support
843#
844# CONFIG_VIDEO_DEV is not set
845# CONFIG_DVB_CORE is not set
846# CONFIG_VIDEO_MEDIA is not set
847
848#
849# Multimedia drivers
850#
851# CONFIG_DAB is not set
852 934
853# 935#
854# Graphics support 936# Graphics support
855# 937#
856# CONFIG_AGP is not set 938# CONFIG_AGP is not set
939CONFIG_VGA_ARB=y
857# CONFIG_DRM is not set 940# CONFIG_DRM is not set
858# CONFIG_VGASTATE is not set 941# CONFIG_VGASTATE is not set
859CONFIG_VIDEO_OUTPUT_CONTROL=m 942CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -909,6 +992,7 @@ CONFIG_FB_XILINX=m
909# CONFIG_FB_VIRTUAL is not set 992# CONFIG_FB_VIRTUAL is not set
910# CONFIG_FB_METRONOME is not set 993# CONFIG_FB_METRONOME is not set
911# CONFIG_FB_MB862XX is not set 994# CONFIG_FB_MB862XX is not set
995# CONFIG_FB_BROADSHEET is not set
912# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 996# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
913 997
914# 998#
@@ -930,7 +1014,7 @@ CONFIG_USB_ARCH_HAS_EHCI=y
930# 1014#
931 1015
932# 1016#
933# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 1017# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
934# 1018#
935# CONFIG_USB_GADGET is not set 1019# CONFIG_USB_GADGET is not set
936 1020
@@ -946,7 +1030,12 @@ CONFIG_USB_ARCH_HAS_EHCI=y
946# CONFIG_EDAC is not set 1030# CONFIG_EDAC is not set
947# CONFIG_RTC_CLASS is not set 1031# CONFIG_RTC_CLASS is not set
948# CONFIG_DMADEVICES is not set 1032# CONFIG_DMADEVICES is not set
1033# CONFIG_AUXDISPLAY is not set
949# CONFIG_UIO is not set 1034# CONFIG_UIO is not set
1035
1036#
1037# TI VLYNQ
1038#
950# CONFIG_STAGING is not set 1039# CONFIG_STAGING is not set
951 1040
952# 1041#
@@ -956,6 +1045,7 @@ CONFIG_EXT2_FS=y
956# CONFIG_EXT2_FS_XATTR is not set 1045# CONFIG_EXT2_FS_XATTR is not set
957# CONFIG_EXT2_FS_XIP is not set 1046# CONFIG_EXT2_FS_XIP is not set
958CONFIG_EXT3_FS=m 1047CONFIG_EXT3_FS=m
1048# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
959CONFIG_EXT3_FS_XATTR=y 1049CONFIG_EXT3_FS_XATTR=y
960# CONFIG_EXT3_FS_POSIX_ACL is not set 1050# CONFIG_EXT3_FS_POSIX_ACL is not set
961# CONFIG_EXT3_FS_SECURITY is not set 1051# CONFIG_EXT3_FS_SECURITY is not set
@@ -966,11 +1056,13 @@ CONFIG_FS_MBCACHE=m
966# CONFIG_REISERFS_FS is not set 1056# CONFIG_REISERFS_FS is not set
967# CONFIG_JFS_FS is not set 1057# CONFIG_JFS_FS is not set
968# CONFIG_FS_POSIX_ACL is not set 1058# CONFIG_FS_POSIX_ACL is not set
969CONFIG_FILE_LOCKING=y
970# CONFIG_XFS_FS is not set 1059# CONFIG_XFS_FS is not set
971# CONFIG_GFS2_FS is not set 1060# CONFIG_GFS2_FS is not set
972# CONFIG_OCFS2_FS is not set 1061# CONFIG_OCFS2_FS is not set
973# CONFIG_BTRFS_FS is not set 1062# CONFIG_BTRFS_FS is not set
1063# CONFIG_NILFS2_FS is not set
1064CONFIG_FILE_LOCKING=y
1065CONFIG_FSNOTIFY=y
974CONFIG_DNOTIFY=y 1066CONFIG_DNOTIFY=y
975CONFIG_INOTIFY=y 1067CONFIG_INOTIFY=y
976CONFIG_INOTIFY_USER=y 1068CONFIG_INOTIFY_USER=y
@@ -980,6 +1072,11 @@ CONFIG_INOTIFY_USER=y
980# CONFIG_FUSE_FS is not set 1072# CONFIG_FUSE_FS is not set
981 1073
982# 1074#
1075# Caches
1076#
1077# CONFIG_FSCACHE is not set
1078
1079#
983# CD-ROM/DVD Filesystems 1080# CD-ROM/DVD Filesystems
984# 1081#
985# CONFIG_ISO9660_FS is not set 1082# CONFIG_ISO9660_FS is not set
@@ -1053,7 +1150,6 @@ CONFIG_LOCKD=y
1053CONFIG_LOCKD_V4=y 1150CONFIG_LOCKD_V4=y
1054CONFIG_NFS_COMMON=y 1151CONFIG_NFS_COMMON=y
1055CONFIG_SUNRPC=y 1152CONFIG_SUNRPC=y
1056# CONFIG_SUNRPC_REGISTER_V4 is not set
1057# CONFIG_RPCSEC_GSS_KRB5 is not set 1153# CONFIG_RPCSEC_GSS_KRB5 is not set
1058# CONFIG_RPCSEC_GSS_SPKM3 is not set 1154# CONFIG_RPCSEC_GSS_SPKM3 is not set
1059# CONFIG_SMB_FS is not set 1155# CONFIG_SMB_FS is not set
@@ -1108,6 +1204,7 @@ CONFIG_NLS_ISO8859_1=m
1108# CONFIG_NLS_KOI8_U is not set 1204# CONFIG_NLS_KOI8_U is not set
1109# CONFIG_NLS_UTF8 is not set 1205# CONFIG_NLS_UTF8 is not set
1110# CONFIG_DLM is not set 1206# CONFIG_DLM is not set
1207# CONFIG_BINARY_PRINTF is not set
1111 1208
1112# 1209#
1113# Library routines 1210# Library routines
@@ -1125,11 +1222,13 @@ CONFIG_ZLIB_INFLATE=y
1125CONFIG_ZLIB_DEFLATE=m 1222CONFIG_ZLIB_DEFLATE=m
1126CONFIG_LZO_COMPRESS=m 1223CONFIG_LZO_COMPRESS=m
1127CONFIG_LZO_DECOMPRESS=m 1224CONFIG_LZO_DECOMPRESS=m
1128CONFIG_PLIST=y 1225CONFIG_DECOMPRESS_GZIP=y
1129CONFIG_HAS_IOMEM=y 1226CONFIG_HAS_IOMEM=y
1130CONFIG_HAS_IOPORT=y 1227CONFIG_HAS_IOPORT=y
1131CONFIG_HAS_DMA=y 1228CONFIG_HAS_DMA=y
1132CONFIG_HAVE_LMB=y 1229CONFIG_HAVE_LMB=y
1230CONFIG_NLATTR=y
1231CONFIG_GENERIC_ATOMIC64=y
1133 1232
1134# 1233#
1135# Kernel hacking 1234# Kernel hacking
@@ -1139,6 +1238,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1139CONFIG_ENABLE_MUST_CHECK=y 1238CONFIG_ENABLE_MUST_CHECK=y
1140CONFIG_FRAME_WARN=1024 1239CONFIG_FRAME_WARN=1024
1141CONFIG_MAGIC_SYSRQ=y 1240CONFIG_MAGIC_SYSRQ=y
1241# CONFIG_STRIP_ASM_SYMS is not set
1142# CONFIG_UNUSED_SYMBOLS is not set 1242# CONFIG_UNUSED_SYMBOLS is not set
1143CONFIG_DEBUG_FS=y 1243CONFIG_DEBUG_FS=y
1144# CONFIG_HEADERS_CHECK is not set 1244# CONFIG_HEADERS_CHECK is not set
@@ -1147,16 +1247,23 @@ CONFIG_DEBUG_KERNEL=y
1147CONFIG_DETECT_SOFTLOCKUP=y 1247CONFIG_DETECT_SOFTLOCKUP=y
1148# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 1248# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
1149CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 1249CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1250CONFIG_DETECT_HUNG_TASK=y
1251# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
1252CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
1150CONFIG_SCHED_DEBUG=y 1253CONFIG_SCHED_DEBUG=y
1151# CONFIG_SCHEDSTATS is not set 1254# CONFIG_SCHEDSTATS is not set
1152# CONFIG_TIMER_STATS is not set 1255# CONFIG_TIMER_STATS is not set
1153# CONFIG_DEBUG_OBJECTS is not set 1256# CONFIG_DEBUG_OBJECTS is not set
1154# CONFIG_SLUB_DEBUG_ON is not set 1257# CONFIG_SLUB_DEBUG_ON is not set
1155# CONFIG_SLUB_STATS is not set 1258# CONFIG_SLUB_STATS is not set
1259# CONFIG_DEBUG_KMEMLEAK is not set
1156# CONFIG_DEBUG_RT_MUTEXES is not set 1260# CONFIG_DEBUG_RT_MUTEXES is not set
1157# CONFIG_RT_MUTEX_TESTER is not set 1261# CONFIG_RT_MUTEX_TESTER is not set
1158# CONFIG_DEBUG_SPINLOCK is not set 1262# CONFIG_DEBUG_SPINLOCK is not set
1159# CONFIG_DEBUG_MUTEXES is not set 1263# CONFIG_DEBUG_MUTEXES is not set
1264# CONFIG_DEBUG_LOCK_ALLOC is not set
1265# CONFIG_PROVE_LOCKING is not set
1266# CONFIG_LOCK_STAT is not set
1160# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1267# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1161# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1268# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1162# CONFIG_DEBUG_KOBJECT is not set 1269# CONFIG_DEBUG_KOBJECT is not set
@@ -1168,35 +1275,45 @@ CONFIG_DEBUG_BUGVERBOSE=y
1168# CONFIG_DEBUG_LIST is not set 1275# CONFIG_DEBUG_LIST is not set
1169# CONFIG_DEBUG_SG is not set 1276# CONFIG_DEBUG_SG is not set
1170# CONFIG_DEBUG_NOTIFIERS is not set 1277# CONFIG_DEBUG_NOTIFIERS is not set
1171# CONFIG_BOOT_PRINTK_DELAY is not set 1278# CONFIG_DEBUG_CREDENTIALS is not set
1172# CONFIG_RCU_TORTURE_TEST is not set 1279# CONFIG_RCU_TORTURE_TEST is not set
1173# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1280# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1174# CONFIG_BACKTRACE_SELF_TEST is not set 1281# CONFIG_BACKTRACE_SELF_TEST is not set
1175# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1282# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1283# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1176# CONFIG_FAULT_INJECTION is not set 1284# CONFIG_FAULT_INJECTION is not set
1177# CONFIG_LATENCYTOP is not set 1285# CONFIG_LATENCYTOP is not set
1178CONFIG_SYSCTL_SYSCALL_CHECK=y 1286CONFIG_SYSCTL_SYSCALL_CHECK=y
1287# CONFIG_DEBUG_PAGEALLOC is not set
1179CONFIG_HAVE_FUNCTION_TRACER=y 1288CONFIG_HAVE_FUNCTION_TRACER=y
1289CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
1180CONFIG_HAVE_DYNAMIC_FTRACE=y 1290CONFIG_HAVE_DYNAMIC_FTRACE=y
1181CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1291CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1182 1292CONFIG_TRACING_SUPPORT=y
1183# 1293CONFIG_FTRACE=y
1184# Tracers
1185#
1186# CONFIG_FUNCTION_TRACER is not set 1294# CONFIG_FUNCTION_TRACER is not set
1295# CONFIG_IRQSOFF_TRACER is not set
1187# CONFIG_SCHED_TRACER is not set 1296# CONFIG_SCHED_TRACER is not set
1188# CONFIG_CONTEXT_SWITCH_TRACER is not set 1297# CONFIG_ENABLE_DEFAULT_TRACERS is not set
1189# CONFIG_BOOT_TRACER is not set 1298# CONFIG_BOOT_TRACER is not set
1190# CONFIG_TRACE_BRANCH_PROFILING is not set 1299CONFIG_BRANCH_PROFILE_NONE=y
1300# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1301# CONFIG_PROFILE_ALL_BRANCHES is not set
1191# CONFIG_STACK_TRACER is not set 1302# CONFIG_STACK_TRACER is not set
1192# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1303# CONFIG_KMEMTRACE is not set
1304# CONFIG_WORKQUEUE_TRACER is not set
1305# CONFIG_BLK_DEV_IO_TRACE is not set
1306# CONFIG_DYNAMIC_DEBUG is not set
1307# CONFIG_DMA_API_DEBUG is not set
1193# CONFIG_SAMPLES is not set 1308# CONFIG_SAMPLES is not set
1194CONFIG_HAVE_ARCH_KGDB=y 1309CONFIG_HAVE_ARCH_KGDB=y
1195# CONFIG_KGDB is not set 1310# CONFIG_KGDB is not set
1311# CONFIG_PPC_DISABLE_WERROR is not set
1312CONFIG_PPC_WERROR=y
1196CONFIG_PRINT_STACK_DEPTH=64 1313CONFIG_PRINT_STACK_DEPTH=64
1197# CONFIG_DEBUG_STACKOVERFLOW is not set 1314# CONFIG_DEBUG_STACKOVERFLOW is not set
1198# CONFIG_DEBUG_STACK_USAGE is not set 1315# CONFIG_DEBUG_STACK_USAGE is not set
1199# CONFIG_DEBUG_PAGEALLOC is not set 1316# CONFIG_PPC_EMULATED_STATS is not set
1200# CONFIG_CODE_PATCHING_SELFTEST is not set 1317# CONFIG_CODE_PATCHING_SELFTEST is not set
1201# CONFIG_FTR_FIXUP_SELFTEST is not set 1318# CONFIG_FTR_FIXUP_SELFTEST is not set
1202# CONFIG_MSI_BITMAP_SELFTEST is not set 1319# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -1212,13 +1329,16 @@ CONFIG_PRINT_STACK_DEPTH=64
1212# CONFIG_KEYS is not set 1329# CONFIG_KEYS is not set
1213# CONFIG_SECURITY is not set 1330# CONFIG_SECURITY is not set
1214# CONFIG_SECURITYFS is not set 1331# CONFIG_SECURITYFS is not set
1215# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1332# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1333# CONFIG_DEFAULT_SECURITY_SMACK is not set
1334# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1335CONFIG_DEFAULT_SECURITY_DAC=y
1336CONFIG_DEFAULT_SECURITY=""
1216CONFIG_CRYPTO=y 1337CONFIG_CRYPTO=y
1217 1338
1218# 1339#
1219# Crypto core or helper 1340# Crypto core or helper
1220# 1341#
1221# CONFIG_CRYPTO_FIPS is not set
1222CONFIG_CRYPTO_ALGAPI=y 1342CONFIG_CRYPTO_ALGAPI=y
1223CONFIG_CRYPTO_ALGAPI2=y 1343CONFIG_CRYPTO_ALGAPI2=y
1224CONFIG_CRYPTO_AEAD2=y 1344CONFIG_CRYPTO_AEAD2=y
@@ -1227,10 +1347,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
1227CONFIG_CRYPTO_HASH=y 1347CONFIG_CRYPTO_HASH=y
1228CONFIG_CRYPTO_HASH2=y 1348CONFIG_CRYPTO_HASH2=y
1229CONFIG_CRYPTO_RNG2=y 1349CONFIG_CRYPTO_RNG2=y
1350CONFIG_CRYPTO_PCOMP=y
1230CONFIG_CRYPTO_MANAGER=y 1351CONFIG_CRYPTO_MANAGER=y
1231CONFIG_CRYPTO_MANAGER2=y 1352CONFIG_CRYPTO_MANAGER2=y
1232# CONFIG_CRYPTO_GF128MUL is not set 1353# CONFIG_CRYPTO_GF128MUL is not set
1233# CONFIG_CRYPTO_NULL is not set 1354# CONFIG_CRYPTO_NULL is not set
1355CONFIG_CRYPTO_WORKQUEUE=y
1234# CONFIG_CRYPTO_CRYPTD is not set 1356# CONFIG_CRYPTO_CRYPTD is not set
1235# CONFIG_CRYPTO_AUTHENC is not set 1357# CONFIG_CRYPTO_AUTHENC is not set
1236# CONFIG_CRYPTO_TEST is not set 1358# CONFIG_CRYPTO_TEST is not set
@@ -1258,11 +1380,13 @@ CONFIG_CRYPTO_PCBC=y
1258# 1380#
1259# CONFIG_CRYPTO_HMAC is not set 1381# CONFIG_CRYPTO_HMAC is not set
1260# CONFIG_CRYPTO_XCBC is not set 1382# CONFIG_CRYPTO_XCBC is not set
1383# CONFIG_CRYPTO_VMAC is not set
1261 1384
1262# 1385#
1263# Digest 1386# Digest
1264# 1387#
1265# CONFIG_CRYPTO_CRC32C is not set 1388# CONFIG_CRYPTO_CRC32C is not set
1389# CONFIG_CRYPTO_GHASH is not set
1266# CONFIG_CRYPTO_MD4 is not set 1390# CONFIG_CRYPTO_MD4 is not set
1267CONFIG_CRYPTO_MD5=y 1391CONFIG_CRYPTO_MD5=y
1268# CONFIG_CRYPTO_MICHAEL_MIC is not set 1392# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1299,6 +1423,7 @@ CONFIG_CRYPTO_DES=y
1299# Compression 1423# Compression
1300# 1424#
1301CONFIG_CRYPTO_DEFLATE=m 1425CONFIG_CRYPTO_DEFLATE=m
1426# CONFIG_CRYPTO_ZLIB is not set
1302CONFIG_CRYPTO_LZO=m 1427CONFIG_CRYPTO_LZO=m
1303 1428
1304# 1429#
@@ -1307,5 +1432,6 @@ CONFIG_CRYPTO_LZO=m
1307# CONFIG_CRYPTO_ANSI_CPRNG is not set 1432# CONFIG_CRYPTO_ANSI_CPRNG is not set
1308CONFIG_CRYPTO_HW=y 1433CONFIG_CRYPTO_HW=y
1309# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1434# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1435# CONFIG_CRYPTO_DEV_PPC4XX is not set
1310# CONFIG_PPC_CLOCK is not set 1436# CONFIG_PPC_CLOCK is not set
1311# CONFIG_VIRTUALIZATION is not set 1437# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/ppc44x_defconfig b/arch/powerpc/configs/ppc44x_defconfig
index 5e6d55f006bb..46f5c47e9f85 100644
--- a/arch/powerpc/configs/ppc44x_defconfig
+++ b/arch/powerpc/configs/ppc44x_defconfig
@@ -1,14 +1,14 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.29-rc2 3# Linux kernel version: 2.6.33-rc1
4# Fri Jan 23 08:43:46 2009 4# Mon Jan 4 13:42:17 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
8# 8#
9# Processor support 9# Processor support
10# 10#
11# CONFIG_6xx is not set 11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set 12# CONFIG_PPC_85xx is not set
13# CONFIG_PPC_8xx is not set 13# CONFIG_PPC_8xx is not set
14# CONFIG_40x is not set 14# CONFIG_40x is not set
@@ -20,6 +20,7 @@ CONFIG_BOOKE=y
20CONFIG_PTE_64BIT=y 20CONFIG_PTE_64BIT=y
21CONFIG_PHYS_64BIT=y 21CONFIG_PHYS_64BIT=y
22CONFIG_PPC_MMU_NOHASH=y 22CONFIG_PPC_MMU_NOHASH=y
23CONFIG_PPC_MMU_NOHASH_32=y
23# CONFIG_PPC_MM_SLICES is not set 24# CONFIG_PPC_MM_SLICES is not set
24CONFIG_NOT_COHERENT_CACHE=y 25CONFIG_NOT_COHERENT_CACHE=y
25CONFIG_PPC32=y 26CONFIG_PPC32=y
@@ -31,15 +32,18 @@ CONFIG_GENERIC_TIME=y
31CONFIG_GENERIC_TIME_VSYSCALL=y 32CONFIG_GENERIC_TIME_VSYSCALL=y
32CONFIG_GENERIC_CLOCKEVENTS=y 33CONFIG_GENERIC_CLOCKEVENTS=y
33CONFIG_GENERIC_HARDIRQS=y 34CONFIG_GENERIC_HARDIRQS=y
35CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
34# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
35CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
36CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
37CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
38CONFIG_LOCKDEP_SUPPORT=y 43CONFIG_LOCKDEP_SUPPORT=y
39CONFIG_RWSEM_XCHGADD_ALGORITHM=y 44CONFIG_RWSEM_XCHGADD_ALGORITHM=y
40CONFIG_ARCH_HAS_ILOG2_U32=y 45CONFIG_ARCH_HAS_ILOG2_U32=y
41CONFIG_GENERIC_HWEIGHT=y 46CONFIG_GENERIC_HWEIGHT=y
42CONFIG_GENERIC_CALIBRATE_DELAY=y
43CONFIG_GENERIC_FIND_NEXT_BIT=y 47CONFIG_GENERIC_FIND_NEXT_BIT=y
44CONFIG_GENERIC_GPIO=y 48CONFIG_GENERIC_GPIO=y
45# CONFIG_ARCH_NO_VIRT_TO_BUS is not set 49# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
@@ -54,11 +58,15 @@ CONFIG_PPC_UDBG_16550=y
54# CONFIG_GENERIC_TBSYNC is not set 58# CONFIG_GENERIC_TBSYNC is not set
55CONFIG_AUDIT_ARCH=y 59CONFIG_AUDIT_ARCH=y
56CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
57# CONFIG_DEFAULT_UIMAGE is not set 61CONFIG_DTC=y
62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
58CONFIG_PPC_DCR_NATIVE=y 64CONFIG_PPC_DCR_NATIVE=y
59# CONFIG_PPC_DCR_MMIO is not set 65# CONFIG_PPC_DCR_MMIO is not set
60CONFIG_PPC_DCR=y 66CONFIG_PPC_DCR=y
67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
61CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 68CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
69CONFIG_CONSTRUCTORS=y
62 70
63# 71#
64# General setup 72# General setup
@@ -72,9 +80,21 @@ CONFIG_SWAP=y
72CONFIG_SYSVIPC=y 80CONFIG_SYSVIPC=y
73CONFIG_SYSVIPC_SYSCTL=y 81CONFIG_SYSVIPC_SYSCTL=y
74CONFIG_POSIX_MQUEUE=y 82CONFIG_POSIX_MQUEUE=y
83CONFIG_POSIX_MQUEUE_SYSCTL=y
75# CONFIG_BSD_PROCESS_ACCT is not set 84# CONFIG_BSD_PROCESS_ACCT is not set
76# CONFIG_TASKSTATS is not set 85# CONFIG_TASKSTATS is not set
77# CONFIG_AUDIT is not set 86# CONFIG_AUDIT is not set
87
88#
89# RCU Subsystem
90#
91CONFIG_TREE_RCU=y
92# CONFIG_TREE_PREEMPT_RCU is not set
93# CONFIG_TINY_RCU is not set
94# CONFIG_RCU_TRACE is not set
95CONFIG_RCU_FANOUT=32
96# CONFIG_RCU_FANOUT_EXACT is not set
97# CONFIG_TREE_RCU_TRACE is not set
78# CONFIG_IKCONFIG is not set 98# CONFIG_IKCONFIG is not set
79CONFIG_LOG_BUF_SHIFT=14 99CONFIG_LOG_BUF_SHIFT=14
80CONFIG_GROUP_SCHED=y 100CONFIG_GROUP_SCHED=y
@@ -89,31 +109,40 @@ CONFIG_SYSFS_DEPRECATED_V2=y
89# CONFIG_NAMESPACES is not set 109# CONFIG_NAMESPACES is not set
90CONFIG_BLK_DEV_INITRD=y 110CONFIG_BLK_DEV_INITRD=y
91CONFIG_INITRAMFS_SOURCE="" 111CONFIG_INITRAMFS_SOURCE=""
112CONFIG_RD_GZIP=y
113# CONFIG_RD_BZIP2 is not set
114# CONFIG_RD_LZMA is not set
92# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 115# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
93CONFIG_SYSCTL=y 116CONFIG_SYSCTL=y
117CONFIG_ANON_INODES=y
94CONFIG_EMBEDDED=y 118CONFIG_EMBEDDED=y
95CONFIG_SYSCTL_SYSCALL=y 119CONFIG_SYSCTL_SYSCALL=y
96CONFIG_KALLSYMS=y 120CONFIG_KALLSYMS=y
97CONFIG_KALLSYMS_ALL=y 121CONFIG_KALLSYMS_ALL=y
98CONFIG_KALLSYMS_STRIP_GENERATED=y
99CONFIG_KALLSYMS_EXTRA_PASS=y 122CONFIG_KALLSYMS_EXTRA_PASS=y
100CONFIG_HOTPLUG=y 123CONFIG_HOTPLUG=y
101CONFIG_PRINTK=y 124CONFIG_PRINTK=y
102CONFIG_BUG=y 125CONFIG_BUG=y
103CONFIG_ELF_CORE=y 126CONFIG_ELF_CORE=y
104CONFIG_COMPAT_BRK=y
105CONFIG_BASE_FULL=y 127CONFIG_BASE_FULL=y
106CONFIG_FUTEX=y 128CONFIG_FUTEX=y
107CONFIG_ANON_INODES=y
108CONFIG_EPOLL=y 129CONFIG_EPOLL=y
109CONFIG_SIGNALFD=y 130CONFIG_SIGNALFD=y
110CONFIG_TIMERFD=y 131CONFIG_TIMERFD=y
111CONFIG_EVENTFD=y 132CONFIG_EVENTFD=y
112CONFIG_SHMEM=y 133CONFIG_SHMEM=y
113CONFIG_AIO=y 134CONFIG_AIO=y
135CONFIG_HAVE_PERF_EVENTS=y
136
137#
138# Kernel Performance Events And Counters
139#
140# CONFIG_PERF_EVENTS is not set
141# CONFIG_PERF_COUNTERS is not set
114CONFIG_VM_EVENT_COUNTERS=y 142CONFIG_VM_EVENT_COUNTERS=y
115CONFIG_PCI_QUIRKS=y 143CONFIG_PCI_QUIRKS=y
116CONFIG_SLUB_DEBUG=y 144CONFIG_SLUB_DEBUG=y
145CONFIG_COMPAT_BRK=y
117# CONFIG_SLAB is not set 146# CONFIG_SLAB is not set
118CONFIG_SLUB=y 147CONFIG_SLUB=y
119# CONFIG_SLOB is not set 148# CONFIG_SLOB is not set
@@ -125,6 +154,13 @@ CONFIG_HAVE_IOREMAP_PROT=y
125CONFIG_HAVE_KPROBES=y 154CONFIG_HAVE_KPROBES=y
126CONFIG_HAVE_KRETPROBES=y 155CONFIG_HAVE_KRETPROBES=y
127CONFIG_HAVE_ARCH_TRACEHOOK=y 156CONFIG_HAVE_ARCH_TRACEHOOK=y
157CONFIG_HAVE_DMA_ATTRS=y
158CONFIG_HAVE_DMA_API_DEBUG=y
159
160#
161# GCOV-based kernel profiling
162#
163# CONFIG_SLOW_WORK is not set
128# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 164# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
129CONFIG_SLABINFO=y 165CONFIG_SLABINFO=y
130CONFIG_RT_MUTEXES=y 166CONFIG_RT_MUTEXES=y
@@ -136,8 +172,7 @@ CONFIG_MODULE_UNLOAD=y
136# CONFIG_MODVERSIONS is not set 172# CONFIG_MODVERSIONS is not set
137# CONFIG_MODULE_SRCVERSION_ALL is not set 173# CONFIG_MODULE_SRCVERSION_ALL is not set
138CONFIG_BLOCK=y 174CONFIG_BLOCK=y
139CONFIG_LBD=y 175CONFIG_LBDAF=y
140# CONFIG_BLK_DEV_IO_TRACE is not set
141# CONFIG_BLK_DEV_BSG is not set 176# CONFIG_BLK_DEV_BSG is not set
142# CONFIG_BLK_DEV_INTEGRITY is not set 177# CONFIG_BLK_DEV_INTEGRITY is not set
143 178
@@ -145,20 +180,42 @@ CONFIG_LBD=y
145# IO Schedulers 180# IO Schedulers
146# 181#
147CONFIG_IOSCHED_NOOP=y 182CONFIG_IOSCHED_NOOP=y
148CONFIG_IOSCHED_AS=y
149CONFIG_IOSCHED_DEADLINE=y 183CONFIG_IOSCHED_DEADLINE=y
150CONFIG_IOSCHED_CFQ=y 184CONFIG_IOSCHED_CFQ=y
151CONFIG_DEFAULT_AS=y
152# CONFIG_DEFAULT_DEADLINE is not set 185# CONFIG_DEFAULT_DEADLINE is not set
153# CONFIG_DEFAULT_CFQ is not set 186CONFIG_DEFAULT_CFQ=y
154# CONFIG_DEFAULT_NOOP is not set 187# CONFIG_DEFAULT_NOOP is not set
155CONFIG_DEFAULT_IOSCHED="anticipatory" 188CONFIG_DEFAULT_IOSCHED="cfq"
156CONFIG_PREEMPT_NOTIFIERS=y 189CONFIG_PREEMPT_NOTIFIERS=y
157CONFIG_CLASSIC_RCU=y 190# CONFIG_INLINE_SPIN_TRYLOCK is not set
158# CONFIG_TREE_RCU is not set 191# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
159# CONFIG_PREEMPT_RCU is not set 192# CONFIG_INLINE_SPIN_LOCK is not set
160# CONFIG_TREE_RCU_TRACE is not set 193# CONFIG_INLINE_SPIN_LOCK_BH is not set
161# CONFIG_PREEMPT_RCU_TRACE is not set 194# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
195# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
196CONFIG_INLINE_SPIN_UNLOCK=y
197# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
198CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
199# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
200# CONFIG_INLINE_READ_TRYLOCK is not set
201# CONFIG_INLINE_READ_LOCK is not set
202# CONFIG_INLINE_READ_LOCK_BH is not set
203# CONFIG_INLINE_READ_LOCK_IRQ is not set
204# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
205CONFIG_INLINE_READ_UNLOCK=y
206# CONFIG_INLINE_READ_UNLOCK_BH is not set
207CONFIG_INLINE_READ_UNLOCK_IRQ=y
208# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
209# CONFIG_INLINE_WRITE_TRYLOCK is not set
210# CONFIG_INLINE_WRITE_LOCK is not set
211# CONFIG_INLINE_WRITE_LOCK_BH is not set
212# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
213# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
214CONFIG_INLINE_WRITE_UNLOCK=y
215# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
216CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
217# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
218# CONFIG_MUTEX_SPIN_ON_OWNER is not set
162# CONFIG_FREEZER is not set 219# CONFIG_FREEZER is not set
163CONFIG_PPC4xx_PCI_EXPRESS=y 220CONFIG_PPC4xx_PCI_EXPRESS=y
164 221
@@ -179,8 +236,11 @@ CONFIG_WARP=y
179CONFIG_ARCHES=y 236CONFIG_ARCHES=y
180CONFIG_CANYONLANDS=y 237CONFIG_CANYONLANDS=y
181CONFIG_GLACIER=y 238CONFIG_GLACIER=y
239CONFIG_REDWOOD=y
240CONFIG_EIGER=y
182CONFIG_YOSEMITE=y 241CONFIG_YOSEMITE=y
183CONFIG_XILINX_VIRTEX440_GENERIC_BOARD=y 242CONFIG_XILINX_VIRTEX440_GENERIC_BOARD=y
243# CONFIG_XILINX_ML510 is not set
184CONFIG_PPC44x_SIMPLE=y 244CONFIG_PPC44x_SIMPLE=y
185CONFIG_PPC4xx_GPIO=y 245CONFIG_PPC4xx_GPIO=y
186CONFIG_440EP=y 246CONFIG_440EP=y
@@ -190,6 +250,7 @@ CONFIG_440GP=y
190CONFIG_440GX=y 250CONFIG_440GX=y
191CONFIG_440SPe=y 251CONFIG_440SPe=y
192CONFIG_460EX=y 252CONFIG_460EX=y
253CONFIG_460SX=y
193CONFIG_IBM440EP_ERR42=y 254CONFIG_IBM440EP_ERR42=y
194CONFIG_XILINX_VIRTEX=y 255CONFIG_XILINX_VIRTEX=y
195CONFIG_XILINX_VIRTEX_5_FXT=y 256CONFIG_XILINX_VIRTEX_5_FXT=y
@@ -207,6 +268,7 @@ CONFIG_XILINX_VIRTEX_5_FXT=y
207# CONFIG_FSL_ULI1575 is not set 268# CONFIG_FSL_ULI1575 is not set
208CONFIG_OF_RTC=y 269CONFIG_OF_RTC=y
209# CONFIG_SIMPLE_GPIO is not set 270# CONFIG_SIMPLE_GPIO is not set
271# CONFIG_XILINX_PCI is not set
210 272
211# 273#
212# Kernel options 274# Kernel options
@@ -230,10 +292,12 @@ CONFIG_BINFMT_ELF=y
230# CONFIG_BINFMT_MISC is not set 292# CONFIG_BINFMT_MISC is not set
231CONFIG_MATH_EMULATION=y 293CONFIG_MATH_EMULATION=y
232# CONFIG_IOMMU_HELPER is not set 294# CONFIG_IOMMU_HELPER is not set
233CONFIG_PPC_NEED_DMA_SYNC_OPS=y 295# CONFIG_SWIOTLB is not set
234CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 296CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
235CONFIG_ARCH_HAS_WALK_MEMORY=y 297CONFIG_ARCH_HAS_WALK_MEMORY=y
236CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 298CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
299CONFIG_SPARSE_IRQ=y
300CONFIG_MAX_ACTIVE_REGIONS=32
237CONFIG_ARCH_FLATMEM_ENABLE=y 301CONFIG_ARCH_FLATMEM_ENABLE=y
238CONFIG_ARCH_POPULATES_NODE_MAP=y 302CONFIG_ARCH_POPULATES_NODE_MAP=y
239CONFIG_SELECT_MEMORY_MODEL=y 303CONFIG_SELECT_MEMORY_MODEL=y
@@ -249,10 +313,13 @@ CONFIG_PHYS_ADDR_T_64BIT=y
249CONFIG_ZONE_DMA_FLAG=1 313CONFIG_ZONE_DMA_FLAG=1
250CONFIG_BOUNCE=y 314CONFIG_BOUNCE=y
251CONFIG_VIRT_TO_BUS=y 315CONFIG_VIRT_TO_BUS=y
252CONFIG_UNEVICTABLE_LRU=y 316# CONFIG_KSM is not set
317CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
318CONFIG_STDBINUTILS=y
253CONFIG_PPC_4K_PAGES=y 319CONFIG_PPC_4K_PAGES=y
254# CONFIG_PPC_16K_PAGES is not set 320# CONFIG_PPC_16K_PAGES is not set
255# CONFIG_PPC_64K_PAGES is not set 321# CONFIG_PPC_64K_PAGES is not set
322# CONFIG_PPC_256K_PAGES is not set
256CONFIG_FORCE_MAX_ZONEORDER=11 323CONFIG_FORCE_MAX_ZONEORDER=11
257CONFIG_PROC_DEVICETREE=y 324CONFIG_PROC_DEVICETREE=y
258# CONFIG_CMDLINE_BOOL is not set 325# CONFIG_CMDLINE_BOOL is not set
@@ -276,6 +343,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
276# CONFIG_PCI_LEGACY is not set 343# CONFIG_PCI_LEGACY is not set
277# CONFIG_PCI_DEBUG is not set 344# CONFIG_PCI_DEBUG is not set
278# CONFIG_PCI_STUB is not set 345# CONFIG_PCI_STUB is not set
346# CONFIG_PCI_IOV is not set
279# CONFIG_PCCARD is not set 347# CONFIG_PCCARD is not set
280# CONFIG_HOTPLUG_PCI is not set 348# CONFIG_HOTPLUG_PCI is not set
281# CONFIG_HAS_RAPIDIO is not set 349# CONFIG_HAS_RAPIDIO is not set
@@ -293,14 +361,12 @@ CONFIG_PAGE_OFFSET=0xc0000000
293CONFIG_KERNEL_START=0xc0000000 361CONFIG_KERNEL_START=0xc0000000
294CONFIG_PHYSICAL_START=0x00000000 362CONFIG_PHYSICAL_START=0x00000000
295CONFIG_TASK_SIZE=0xc0000000 363CONFIG_TASK_SIZE=0xc0000000
296CONFIG_CONSISTENT_START=0xff100000
297CONFIG_CONSISTENT_SIZE=0x00200000 364CONFIG_CONSISTENT_SIZE=0x00200000
298CONFIG_NET=y 365CONFIG_NET=y
299 366
300# 367#
301# Networking options 368# Networking options
302# 369#
303CONFIG_COMPAT_NET_DEV_OPS=y
304CONFIG_PACKET=y 370CONFIG_PACKET=y
305# CONFIG_PACKET_MMAP is not set 371# CONFIG_PACKET_MMAP is not set
306CONFIG_UNIX=y 372CONFIG_UNIX=y
@@ -352,6 +418,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
352CONFIG_INET6_XFRM_MODE_BEET=m 418CONFIG_INET6_XFRM_MODE_BEET=m
353# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 419# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
354CONFIG_IPV6_SIT=m 420CONFIG_IPV6_SIT=m
421# CONFIG_IPV6_SIT_6RD is not set
355CONFIG_IPV6_NDISC_NODETYPE=y 422CONFIG_IPV6_NDISC_NODETYPE=y
356# CONFIG_IPV6_TUNNEL is not set 423# CONFIG_IPV6_TUNNEL is not set
357# CONFIG_IPV6_MULTIPLE_TABLES is not set 424# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -360,6 +427,7 @@ CONFIG_IPV6_NDISC_NODETYPE=y
360# CONFIG_NETFILTER is not set 427# CONFIG_NETFILTER is not set
361# CONFIG_IP_DCCP is not set 428# CONFIG_IP_DCCP is not set
362# CONFIG_IP_SCTP is not set 429# CONFIG_IP_SCTP is not set
430# CONFIG_RDS is not set
363# CONFIG_TIPC is not set 431# CONFIG_TIPC is not set
364# CONFIG_ATM is not set 432# CONFIG_ATM is not set
365CONFIG_STP=m 433CONFIG_STP=m
@@ -375,6 +443,8 @@ CONFIG_LLC=m
375# CONFIG_LAPB is not set 443# CONFIG_LAPB is not set
376# CONFIG_ECONET is not set 444# CONFIG_ECONET is not set
377# CONFIG_WAN_ROUTER is not set 445# CONFIG_WAN_ROUTER is not set
446# CONFIG_PHONET is not set
447# CONFIG_IEEE802154 is not set
378# CONFIG_NET_SCHED is not set 448# CONFIG_NET_SCHED is not set
379# CONFIG_DCB is not set 449# CONFIG_DCB is not set
380 450
@@ -387,8 +457,13 @@ CONFIG_LLC=m
387# CONFIG_IRDA is not set 457# CONFIG_IRDA is not set
388# CONFIG_BT is not set 458# CONFIG_BT is not set
389# CONFIG_AF_RXRPC is not set 459# CONFIG_AF_RXRPC is not set
390# CONFIG_PHONET is not set 460CONFIG_WIRELESS=y
391# CONFIG_WIRELESS is not set 461# CONFIG_CFG80211 is not set
462# CONFIG_LIB80211 is not set
463
464#
465# CFG80211 needs to be enabled for MAC80211
466#
392# CONFIG_WIMAX is not set 467# CONFIG_WIMAX is not set
393# CONFIG_RFKILL is not set 468# CONFIG_RFKILL is not set
394# CONFIG_NET_9P is not set 469# CONFIG_NET_9P is not set
@@ -401,6 +476,7 @@ CONFIG_LLC=m
401# Generic Driver Options 476# Generic Driver Options
402# 477#
403CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 478CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
479# CONFIG_DEVTMPFS is not set
404CONFIG_STANDALONE=y 480CONFIG_STANDALONE=y
405CONFIG_PREVENT_FIRMWARE_BUILD=y 481CONFIG_PREVENT_FIRMWARE_BUILD=y
406CONFIG_FW_LOADER=y 482CONFIG_FW_LOADER=y
@@ -413,9 +489,9 @@ CONFIG_CONNECTOR=y
413CONFIG_PROC_EVENTS=y 489CONFIG_PROC_EVENTS=y
414CONFIG_MTD=y 490CONFIG_MTD=y
415# CONFIG_MTD_DEBUG is not set 491# CONFIG_MTD_DEBUG is not set
492# CONFIG_MTD_TESTS is not set
416# CONFIG_MTD_CONCAT is not set 493# CONFIG_MTD_CONCAT is not set
417CONFIG_MTD_PARTITIONS=y 494CONFIG_MTD_PARTITIONS=y
418# CONFIG_MTD_TESTS is not set
419# CONFIG_MTD_REDBOOT_PARTS is not set 495# CONFIG_MTD_REDBOOT_PARTS is not set
420# CONFIG_MTD_CMDLINE_PARTS is not set 496# CONFIG_MTD_CMDLINE_PARTS is not set
421CONFIG_MTD_OF_PARTS=y 497CONFIG_MTD_OF_PARTS=y
@@ -490,7 +566,6 @@ CONFIG_MTD_PHYSMAP_OF=y
490# LPDDR flash memory drivers 566# LPDDR flash memory drivers
491# 567#
492# CONFIG_MTD_LPDDR is not set 568# CONFIG_MTD_LPDDR is not set
493# CONFIG_MTD_QINFO_PROBE is not set
494 569
495# 570#
496# UBI - Unsorted block images 571# UBI - Unsorted block images
@@ -498,7 +573,7 @@ CONFIG_MTD_PHYSMAP_OF=y
498CONFIG_MTD_UBI=m 573CONFIG_MTD_UBI=m
499CONFIG_MTD_UBI_WL_THRESHOLD=4096 574CONFIG_MTD_UBI_WL_THRESHOLD=4096
500CONFIG_MTD_UBI_BEB_RESERVE=1 575CONFIG_MTD_UBI_BEB_RESERVE=1
501CONFIG_MTD_UBI_GLUEBI=y 576CONFIG_MTD_UBI_GLUEBI=m
502 577
503# 578#
504# UBI debugging options 579# UBI debugging options
@@ -516,6 +591,7 @@ CONFIG_BLK_DEV=y
516# CONFIG_BLK_DEV_UMEM is not set 591# CONFIG_BLK_DEV_UMEM is not set
517# CONFIG_BLK_DEV_COW_COMMON is not set 592# CONFIG_BLK_DEV_COW_COMMON is not set
518# CONFIG_BLK_DEV_LOOP is not set 593# CONFIG_BLK_DEV_LOOP is not set
594# CONFIG_BLK_DEV_DRBD is not set
519# CONFIG_BLK_DEV_NBD is not set 595# CONFIG_BLK_DEV_NBD is not set
520# CONFIG_BLK_DEV_SX8 is not set 596# CONFIG_BLK_DEV_SX8 is not set
521# CONFIG_BLK_DEV_UB is not set 597# CONFIG_BLK_DEV_UB is not set
@@ -528,14 +604,25 @@ CONFIG_BLK_DEV_RAM_SIZE=35000
528CONFIG_XILINX_SYSACE=m 604CONFIG_XILINX_SYSACE=m
529# CONFIG_BLK_DEV_HD is not set 605# CONFIG_BLK_DEV_HD is not set
530CONFIG_MISC_DEVICES=y 606CONFIG_MISC_DEVICES=y
607# CONFIG_AD525X_DPOT is not set
531# CONFIG_PHANTOM is not set 608# CONFIG_PHANTOM is not set
532# CONFIG_EEPROM_93CX6 is not set
533# CONFIG_SGI_IOC4 is not set 609# CONFIG_SGI_IOC4 is not set
534# CONFIG_TIFM_CORE is not set 610# CONFIG_TIFM_CORE is not set
535# CONFIG_ICS932S401 is not set 611# CONFIG_ICS932S401 is not set
536# CONFIG_ENCLOSURE_SERVICES is not set 612# CONFIG_ENCLOSURE_SERVICES is not set
537# CONFIG_HP_ILO is not set 613# CONFIG_HP_ILO is not set
614# CONFIG_ISL29003 is not set
615# CONFIG_DS1682 is not set
538# CONFIG_C2PORT is not set 616# CONFIG_C2PORT is not set
617
618#
619# EEPROM support
620#
621# CONFIG_EEPROM_AT24 is not set
622# CONFIG_EEPROM_LEGACY is not set
623# CONFIG_EEPROM_MAX6875 is not set
624# CONFIG_EEPROM_93CX6 is not set
625# CONFIG_CB710_CORE is not set
539CONFIG_HAVE_IDE=y 626CONFIG_HAVE_IDE=y
540# CONFIG_IDE is not set 627# CONFIG_IDE is not set
541 628
@@ -558,10 +645,6 @@ CONFIG_BLK_DEV_SD=m
558# CONFIG_BLK_DEV_SR is not set 645# CONFIG_BLK_DEV_SR is not set
559# CONFIG_CHR_DEV_SG is not set 646# CONFIG_CHR_DEV_SG is not set
560# CONFIG_CHR_DEV_SCH is not set 647# CONFIG_CHR_DEV_SCH is not set
561
562#
563# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
564#
565# CONFIG_SCSI_MULTI_LUN is not set 648# CONFIG_SCSI_MULTI_LUN is not set
566# CONFIG_SCSI_CONSTANTS is not set 649# CONFIG_SCSI_CONSTANTS is not set
567# CONFIG_SCSI_LOGGING is not set 650# CONFIG_SCSI_LOGGING is not set
@@ -578,6 +661,7 @@ CONFIG_SCSI_WAIT_SCAN=m
578# CONFIG_SCSI_SRP_ATTRS is not set 661# CONFIG_SCSI_SRP_ATTRS is not set
579# CONFIG_SCSI_LOWLEVEL is not set 662# CONFIG_SCSI_LOWLEVEL is not set
580# CONFIG_SCSI_DH is not set 663# CONFIG_SCSI_DH is not set
664# CONFIG_SCSI_OSD_INITIATOR is not set
581# CONFIG_ATA is not set 665# CONFIG_ATA is not set
582# CONFIG_MD is not set 666# CONFIG_MD is not set
583# CONFIG_FUSION is not set 667# CONFIG_FUSION is not set
@@ -587,7 +671,11 @@ CONFIG_SCSI_WAIT_SCAN=m
587# 671#
588 672
589# 673#
590# Enable only one of the two stacks, unless you know what you are doing 674# You can enable one or both FireWire driver stacks.
675#
676
677#
678# See the help texts for more information.
591# 679#
592# CONFIG_FIREWIRE is not set 680# CONFIG_FIREWIRE is not set
593# CONFIG_IEEE1394 is not set 681# CONFIG_IEEE1394 is not set
@@ -608,6 +696,8 @@ CONFIG_NET_ETHERNET=y
608# CONFIG_SUNGEM is not set 696# CONFIG_SUNGEM is not set
609# CONFIG_CASSINI is not set 697# CONFIG_CASSINI is not set
610# CONFIG_NET_VENDOR_3COM is not set 698# CONFIG_NET_VENDOR_3COM is not set
699# CONFIG_ETHOC is not set
700# CONFIG_DNET is not set
611# CONFIG_NET_TULIP is not set 701# CONFIG_NET_TULIP is not set
612# CONFIG_HP100 is not set 702# CONFIG_HP100 is not set
613CONFIG_IBM_NEW_EMAC=y 703CONFIG_IBM_NEW_EMAC=y
@@ -626,7 +716,10 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
626# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set 716# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
627# CONFIG_NET_PCI is not set 717# CONFIG_NET_PCI is not set
628# CONFIG_B44 is not set 718# CONFIG_B44 is not set
719# CONFIG_KS8842 is not set
720# CONFIG_KS8851_MLL is not set
629# CONFIG_ATL2 is not set 721# CONFIG_ATL2 is not set
722# CONFIG_XILINX_EMACLITE is not set
630CONFIG_NETDEV_1000=y 723CONFIG_NETDEV_1000=y
631# CONFIG_ACENIC is not set 724# CONFIG_ACENIC is not set
632# CONFIG_DL2K is not set 725# CONFIG_DL2K is not set
@@ -634,6 +727,7 @@ CONFIG_NETDEV_1000=y
634# CONFIG_E1000E is not set 727# CONFIG_E1000E is not set
635# CONFIG_IP1000 is not set 728# CONFIG_IP1000 is not set
636# CONFIG_IGB is not set 729# CONFIG_IGB is not set
730# CONFIG_IGBVF is not set
637# CONFIG_NS83820 is not set 731# CONFIG_NS83820 is not set
638# CONFIG_HAMACHI is not set 732# CONFIG_HAMACHI is not set
639# CONFIG_YELLOWFIN is not set 733# CONFIG_YELLOWFIN is not set
@@ -644,9 +738,13 @@ CONFIG_NETDEV_1000=y
644# CONFIG_VIA_VELOCITY is not set 738# CONFIG_VIA_VELOCITY is not set
645# CONFIG_TIGON3 is not set 739# CONFIG_TIGON3 is not set
646# CONFIG_BNX2 is not set 740# CONFIG_BNX2 is not set
741# CONFIG_CNIC is not set
742# CONFIG_MV643XX_ETH is not set
743# CONFIG_XILINX_LL_TEMAC is not set
647# CONFIG_QLA3XXX is not set 744# CONFIG_QLA3XXX is not set
648# CONFIG_ATL1 is not set 745# CONFIG_ATL1 is not set
649# CONFIG_ATL1E is not set 746# CONFIG_ATL1E is not set
747# CONFIG_ATL1C is not set
650# CONFIG_JME is not set 748# CONFIG_JME is not set
651CONFIG_NETDEV_10000=y 749CONFIG_NETDEV_10000=y
652# CONFIG_CHELSIO_T1 is not set 750# CONFIG_CHELSIO_T1 is not set
@@ -656,6 +754,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
656# CONFIG_IXGBE is not set 754# CONFIG_IXGBE is not set
657# CONFIG_IXGB is not set 755# CONFIG_IXGB is not set
658# CONFIG_S2IO is not set 756# CONFIG_S2IO is not set
757# CONFIG_VXGE is not set
659# CONFIG_MYRI10GE is not set 758# CONFIG_MYRI10GE is not set
660# CONFIG_NETXEN_NIC is not set 759# CONFIG_NETXEN_NIC is not set
661# CONFIG_NIU is not set 760# CONFIG_NIU is not set
@@ -665,14 +764,14 @@ CONFIG_CHELSIO_T3_DEPENDS=y
665# CONFIG_BNX2X is not set 764# CONFIG_BNX2X is not set
666# CONFIG_QLGE is not set 765# CONFIG_QLGE is not set
667# CONFIG_SFC is not set 766# CONFIG_SFC is not set
767# CONFIG_BE2NET is not set
668# CONFIG_TR is not set 768# CONFIG_TR is not set
669 769CONFIG_WLAN=y
670# 770# CONFIG_AIRO is not set
671# Wireless LAN 771# CONFIG_ATMEL is not set
672# 772# CONFIG_PRISM54 is not set
673# CONFIG_WLAN_PRE80211 is not set 773# CONFIG_USB_ZD1201 is not set
674# CONFIG_WLAN_80211 is not set 774# CONFIG_HOSTAP is not set
675# CONFIG_IWLWIFI_LEDS is not set
676 775
677# 776#
678# Enable WiMAX (Networking options) to see the WiMAX drivers 777# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -695,6 +794,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
695# CONFIG_NETCONSOLE is not set 794# CONFIG_NETCONSOLE is not set
696# CONFIG_NETPOLL is not set 795# CONFIG_NETPOLL is not set
697# CONFIG_NET_POLL_CONTROLLER is not set 796# CONFIG_NET_POLL_CONTROLLER is not set
797# CONFIG_VMXNET3 is not set
698# CONFIG_ISDN is not set 798# CONFIG_ISDN is not set
699# CONFIG_PHONE is not set 799# CONFIG_PHONE is not set
700 800
@@ -713,6 +813,7 @@ CONFIG_SERIO=m
713# CONFIG_SERIO_LIBPS2 is not set 813# CONFIG_SERIO_LIBPS2 is not set
714# CONFIG_SERIO_RAW is not set 814# CONFIG_SERIO_RAW is not set
715CONFIG_SERIO_XILINX_XPS_PS2=m 815CONFIG_SERIO_XILINX_XPS_PS2=m
816# CONFIG_SERIO_ALTERA_PS2 is not set
716# CONFIG_GAMEPORT is not set 817# CONFIG_GAMEPORT is not set
717 818
718# 819#
@@ -747,6 +848,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
747# CONFIG_SERIAL_JSM is not set 848# CONFIG_SERIAL_JSM is not set
748CONFIG_SERIAL_OF_PLATFORM=y 849CONFIG_SERIAL_OF_PLATFORM=y
749# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set 850# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
851# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
750CONFIG_UNIX98_PTYS=y 852CONFIG_UNIX98_PTYS=y
751# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 853# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
752CONFIG_LEGACY_PTYS=y 854CONFIG_LEGACY_PTYS=y
@@ -764,6 +866,7 @@ CONFIG_XILINX_HWICAP=m
764CONFIG_DEVPORT=y 866CONFIG_DEVPORT=y
765CONFIG_I2C=m 867CONFIG_I2C=m
766CONFIG_I2C_BOARDINFO=y 868CONFIG_I2C_BOARDINFO=y
869CONFIG_I2C_COMPAT=y
767CONFIG_I2C_CHARDEV=m 870CONFIG_I2C_CHARDEV=m
768CONFIG_I2C_HELPER_AUTO=y 871CONFIG_I2C_HELPER_AUTO=y
769CONFIG_I2C_ALGOBIT=m 872CONFIG_I2C_ALGOBIT=m
@@ -807,11 +910,6 @@ CONFIG_I2C_IBM_IIC=m
807# CONFIG_I2C_TINY_USB is not set 910# CONFIG_I2C_TINY_USB is not set
808 911
809# 912#
810# Graphics adapter I2C/DDC channel drivers
811#
812# CONFIG_I2C_VOODOO3 is not set
813
814#
815# Other I2C/SMBus bus drivers 913# Other I2C/SMBus bus drivers
816# 914#
817# CONFIG_I2C_PCA_PLATFORM is not set 915# CONFIG_I2C_PCA_PLATFORM is not set
@@ -820,20 +918,17 @@ CONFIG_I2C_IBM_IIC=m
820# 918#
821# Miscellaneous I2C Chip support 919# Miscellaneous I2C Chip support
822# 920#
823# CONFIG_DS1682 is not set
824# CONFIG_EEPROM_AT24 is not set
825# CONFIG_EEPROM_LEGACY is not set
826# CONFIG_SENSORS_PCF8574 is not set
827# CONFIG_PCF8575 is not set
828# CONFIG_SENSORS_PCA9539 is not set
829# CONFIG_SENSORS_PCF8591 is not set
830# CONFIG_SENSORS_MAX6875 is not set
831# CONFIG_SENSORS_TSL2550 is not set 921# CONFIG_SENSORS_TSL2550 is not set
832# CONFIG_I2C_DEBUG_CORE is not set 922# CONFIG_I2C_DEBUG_CORE is not set
833# CONFIG_I2C_DEBUG_ALGO is not set 923# CONFIG_I2C_DEBUG_ALGO is not set
834# CONFIG_I2C_DEBUG_BUS is not set 924# CONFIG_I2C_DEBUG_BUS is not set
835# CONFIG_I2C_DEBUG_CHIP is not set 925# CONFIG_I2C_DEBUG_CHIP is not set
836# CONFIG_SPI is not set 926# CONFIG_SPI is not set
927
928#
929# PPS support
930#
931# CONFIG_PPS is not set
837CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y 932CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
838CONFIG_ARCH_REQUIRE_GPIOLIB=y 933CONFIG_ARCH_REQUIRE_GPIOLIB=y
839CONFIG_GPIOLIB=y 934CONFIG_GPIOLIB=y
@@ -855,16 +950,21 @@ CONFIG_GPIO_XILINX=y
855# 950#
856# PCI GPIO expanders: 951# PCI GPIO expanders:
857# 952#
953# CONFIG_GPIO_CS5535 is not set
858# CONFIG_GPIO_BT8XX is not set 954# CONFIG_GPIO_BT8XX is not set
955# CONFIG_GPIO_LANGWELL is not set
859 956
860# 957#
861# SPI GPIO expanders: 958# SPI GPIO expanders:
862# 959#
960
961#
962# AC97 GPIO expanders:
963#
863# CONFIG_W1 is not set 964# CONFIG_W1 is not set
864# CONFIG_POWER_SUPPLY is not set 965# CONFIG_POWER_SUPPLY is not set
865# CONFIG_HWMON is not set 966# CONFIG_HWMON is not set
866# CONFIG_THERMAL is not set 967# CONFIG_THERMAL is not set
867# CONFIG_THERMAL_HWMON is not set
868# CONFIG_WATCHDOG is not set 968# CONFIG_WATCHDOG is not set
869CONFIG_SSB_POSSIBLE=y 969CONFIG_SSB_POSSIBLE=y
870 970
@@ -884,28 +984,15 @@ CONFIG_SSB_POSSIBLE=y
884# CONFIG_MFD_WM8400 is not set 984# CONFIG_MFD_WM8400 is not set
885# CONFIG_MFD_WM8350_I2C is not set 985# CONFIG_MFD_WM8350_I2C is not set
886# CONFIG_MFD_PCF50633 is not set 986# CONFIG_MFD_PCF50633 is not set
987# CONFIG_AB3100_CORE is not set
887# CONFIG_REGULATOR is not set 988# CONFIG_REGULATOR is not set
888 989# CONFIG_MEDIA_SUPPORT is not set
889#
890# Multimedia devices
891#
892
893#
894# Multimedia core support
895#
896# CONFIG_VIDEO_DEV is not set
897# CONFIG_DVB_CORE is not set
898# CONFIG_VIDEO_MEDIA is not set
899
900#
901# Multimedia drivers
902#
903# CONFIG_DAB is not set
904 990
905# 991#
906# Graphics support 992# Graphics support
907# 993#
908# CONFIG_AGP is not set 994# CONFIG_AGP is not set
995CONFIG_VGA_ARB=y
909# CONFIG_DRM is not set 996# CONFIG_DRM is not set
910# CONFIG_VGASTATE is not set 997# CONFIG_VGASTATE is not set
911# CONFIG_VIDEO_OUTPUT_CONTROL is not set 998# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -961,6 +1048,7 @@ CONFIG_FB_XILINX=m
961# CONFIG_FB_VIRTUAL is not set 1048# CONFIG_FB_VIRTUAL is not set
962# CONFIG_FB_METRONOME is not set 1049# CONFIG_FB_METRONOME is not set
963# CONFIG_FB_MB862XX is not set 1050# CONFIG_FB_MB862XX is not set
1051# CONFIG_FB_BROADSHEET is not set
964# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 1052# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
965 1053
966# 1054#
@@ -994,19 +1082,22 @@ CONFIG_USB_DEVICE_CLASS=y
994# USB Host Controller Drivers 1082# USB Host Controller Drivers
995# 1083#
996# CONFIG_USB_C67X00_HCD is not set 1084# CONFIG_USB_C67X00_HCD is not set
1085# CONFIG_USB_XHCI_HCD is not set
997CONFIG_USB_EHCI_HCD=m 1086CONFIG_USB_EHCI_HCD=m
998# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1087# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
999# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1088# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1000CONFIG_USB_EHCI_BIG_ENDIAN_MMIO=y 1089CONFIG_USB_EHCI_BIG_ENDIAN_MMIO=y
1001CONFIG_USB_EHCI_BIG_ENDIAN_DESC=y 1090CONFIG_USB_EHCI_BIG_ENDIAN_DESC=y
1091# CONFIG_XPS_USB_HCD_XILINX is not set
1002CONFIG_USB_EHCI_HCD_PPC_OF=y 1092CONFIG_USB_EHCI_HCD_PPC_OF=y
1003# CONFIG_USB_OXU210HP_HCD is not set 1093# CONFIG_USB_OXU210HP_HCD is not set
1004# CONFIG_USB_ISP116X_HCD is not set 1094# CONFIG_USB_ISP116X_HCD is not set
1005# CONFIG_USB_ISP1760_HCD is not set 1095# CONFIG_USB_ISP1760_HCD is not set
1096# CONFIG_USB_ISP1362_HCD is not set
1006CONFIG_USB_OHCI_HCD=m 1097CONFIG_USB_OHCI_HCD=m
1007CONFIG_USB_OHCI_HCD_PPC_OF=y
1008CONFIG_USB_OHCI_HCD_PPC_OF_BE=y 1098CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
1009# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set 1099# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set
1100CONFIG_USB_OHCI_HCD_PPC_OF=y
1010# CONFIG_USB_OHCI_HCD_PCI is not set 1101# CONFIG_USB_OHCI_HCD_PCI is not set
1011CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y 1102CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y
1012CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y 1103CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
@@ -1030,11 +1121,11 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
1030# CONFIG_USB_TMC is not set 1121# CONFIG_USB_TMC is not set
1031 1122
1032# 1123#
1033# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; 1124# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
1034# 1125#
1035 1126
1036# 1127#
1037# see USB_STORAGE Help for more information 1128# also be needed; see USB_STORAGE Help for more info
1038# 1129#
1039CONFIG_USB_STORAGE=m 1130CONFIG_USB_STORAGE=m
1040# CONFIG_USB_STORAGE_DEBUG is not set 1131# CONFIG_USB_STORAGE_DEBUG is not set
@@ -1075,7 +1166,6 @@ CONFIG_USB_STORAGE=m
1075# CONFIG_USB_LED is not set 1166# CONFIG_USB_LED is not set
1076# CONFIG_USB_CYPRESS_CY7C63 is not set 1167# CONFIG_USB_CYPRESS_CY7C63 is not set
1077# CONFIG_USB_CYTHERM is not set 1168# CONFIG_USB_CYTHERM is not set
1078# CONFIG_USB_PHIDGET is not set
1079# CONFIG_USB_IDMOUSE is not set 1169# CONFIG_USB_IDMOUSE is not set
1080# CONFIG_USB_FTDI_ELAN is not set 1170# CONFIG_USB_FTDI_ELAN is not set
1081# CONFIG_USB_APPLEDISPLAY is not set 1171# CONFIG_USB_APPLEDISPLAY is not set
@@ -1083,6 +1173,7 @@ CONFIG_USB_STORAGE=m
1083# CONFIG_USB_LD is not set 1173# CONFIG_USB_LD is not set
1084# CONFIG_USB_TRANCEVIBRATOR is not set 1174# CONFIG_USB_TRANCEVIBRATOR is not set
1085# CONFIG_USB_IOWARRIOR is not set 1175# CONFIG_USB_IOWARRIOR is not set
1176# CONFIG_USB_TEST is not set
1086# CONFIG_USB_ISIGHTFW is not set 1177# CONFIG_USB_ISIGHTFW is not set
1087# CONFIG_USB_VST is not set 1178# CONFIG_USB_VST is not set
1088# CONFIG_USB_GADGET is not set 1179# CONFIG_USB_GADGET is not set
@@ -1091,6 +1182,7 @@ CONFIG_USB_STORAGE=m
1091# OTG and related infrastructure 1182# OTG and related infrastructure
1092# 1183#
1093# CONFIG_USB_GPIO_VBUS is not set 1184# CONFIG_USB_GPIO_VBUS is not set
1185# CONFIG_NOP_USB_XCEIV is not set
1094# CONFIG_UWB is not set 1186# CONFIG_UWB is not set
1095# CONFIG_MMC is not set 1187# CONFIG_MMC is not set
1096# CONFIG_MEMSTICK is not set 1188# CONFIG_MEMSTICK is not set
@@ -1100,7 +1192,12 @@ CONFIG_USB_STORAGE=m
1100# CONFIG_EDAC is not set 1192# CONFIG_EDAC is not set
1101# CONFIG_RTC_CLASS is not set 1193# CONFIG_RTC_CLASS is not set
1102# CONFIG_DMADEVICES is not set 1194# CONFIG_DMADEVICES is not set
1195# CONFIG_AUXDISPLAY is not set
1103# CONFIG_UIO is not set 1196# CONFIG_UIO is not set
1197
1198#
1199# TI VLYNQ
1200#
1104# CONFIG_STAGING is not set 1201# CONFIG_STAGING is not set
1105 1202
1106# 1203#
@@ -1110,6 +1207,7 @@ CONFIG_EXT2_FS=y
1110# CONFIG_EXT2_FS_XATTR is not set 1207# CONFIG_EXT2_FS_XATTR is not set
1111# CONFIG_EXT2_FS_XIP is not set 1208# CONFIG_EXT2_FS_XIP is not set
1112CONFIG_EXT3_FS=m 1209CONFIG_EXT3_FS=m
1210# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
1113CONFIG_EXT3_FS_XATTR=y 1211CONFIG_EXT3_FS_XATTR=y
1114# CONFIG_EXT3_FS_POSIX_ACL is not set 1212# CONFIG_EXT3_FS_POSIX_ACL is not set
1115# CONFIG_EXT3_FS_SECURITY is not set 1213# CONFIG_EXT3_FS_SECURITY is not set
@@ -1119,11 +1217,13 @@ CONFIG_FS_MBCACHE=m
1119# CONFIG_REISERFS_FS is not set 1217# CONFIG_REISERFS_FS is not set
1120# CONFIG_JFS_FS is not set 1218# CONFIG_JFS_FS is not set
1121# CONFIG_FS_POSIX_ACL is not set 1219# CONFIG_FS_POSIX_ACL is not set
1122CONFIG_FILE_LOCKING=y
1123# CONFIG_XFS_FS is not set 1220# CONFIG_XFS_FS is not set
1124# CONFIG_GFS2_FS is not set 1221# CONFIG_GFS2_FS is not set
1125# CONFIG_OCFS2_FS is not set 1222# CONFIG_OCFS2_FS is not set
1126# CONFIG_BTRFS_FS is not set 1223# CONFIG_BTRFS_FS is not set
1224# CONFIG_NILFS2_FS is not set
1225CONFIG_FILE_LOCKING=y
1226CONFIG_FSNOTIFY=y
1127CONFIG_DNOTIFY=y 1227CONFIG_DNOTIFY=y
1128CONFIG_INOTIFY=y 1228CONFIG_INOTIFY=y
1129CONFIG_INOTIFY_USER=y 1229CONFIG_INOTIFY_USER=y
@@ -1133,6 +1233,11 @@ CONFIG_INOTIFY_USER=y
1133# CONFIG_FUSE_FS is not set 1233# CONFIG_FUSE_FS is not set
1134 1234
1135# 1235#
1236# Caches
1237#
1238# CONFIG_FSCACHE is not set
1239
1240#
1136# CD-ROM/DVD Filesystems 1241# CD-ROM/DVD Filesystems
1137# 1242#
1138# CONFIG_ISO9660_FS is not set 1243# CONFIG_ISO9660_FS is not set
@@ -1206,7 +1311,6 @@ CONFIG_LOCKD=y
1206CONFIG_LOCKD_V4=y 1311CONFIG_LOCKD_V4=y
1207CONFIG_NFS_COMMON=y 1312CONFIG_NFS_COMMON=y
1208CONFIG_SUNRPC=y 1313CONFIG_SUNRPC=y
1209# CONFIG_SUNRPC_REGISTER_V4 is not set
1210# CONFIG_RPCSEC_GSS_KRB5 is not set 1314# CONFIG_RPCSEC_GSS_KRB5 is not set
1211# CONFIG_RPCSEC_GSS_SPKM3 is not set 1315# CONFIG_RPCSEC_GSS_SPKM3 is not set
1212# CONFIG_SMB_FS is not set 1316# CONFIG_SMB_FS is not set
@@ -1261,6 +1365,7 @@ CONFIG_NLS_ISO8859_1=m
1261# CONFIG_NLS_KOI8_U is not set 1365# CONFIG_NLS_KOI8_U is not set
1262# CONFIG_NLS_UTF8 is not set 1366# CONFIG_NLS_UTF8 is not set
1263# CONFIG_DLM is not set 1367# CONFIG_DLM is not set
1368# CONFIG_BINARY_PRINTF is not set
1264 1369
1265# 1370#
1266# Library routines 1371# Library routines
@@ -1278,11 +1383,13 @@ CONFIG_ZLIB_INFLATE=y
1278CONFIG_ZLIB_DEFLATE=y 1383CONFIG_ZLIB_DEFLATE=y
1279CONFIG_LZO_COMPRESS=m 1384CONFIG_LZO_COMPRESS=m
1280CONFIG_LZO_DECOMPRESS=m 1385CONFIG_LZO_DECOMPRESS=m
1281CONFIG_PLIST=y 1386CONFIG_DECOMPRESS_GZIP=y
1282CONFIG_HAS_IOMEM=y 1387CONFIG_HAS_IOMEM=y
1283CONFIG_HAS_IOPORT=y 1388CONFIG_HAS_IOPORT=y
1284CONFIG_HAS_DMA=y 1389CONFIG_HAS_DMA=y
1285CONFIG_HAVE_LMB=y 1390CONFIG_HAVE_LMB=y
1391CONFIG_NLATTR=y
1392CONFIG_GENERIC_ATOMIC64=y
1286 1393
1287# 1394#
1288# Kernel hacking 1395# Kernel hacking
@@ -1292,6 +1399,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1292CONFIG_ENABLE_MUST_CHECK=y 1399CONFIG_ENABLE_MUST_CHECK=y
1293CONFIG_FRAME_WARN=1024 1400CONFIG_FRAME_WARN=1024
1294CONFIG_MAGIC_SYSRQ=y 1401CONFIG_MAGIC_SYSRQ=y
1402# CONFIG_STRIP_ASM_SYMS is not set
1295# CONFIG_UNUSED_SYMBOLS is not set 1403# CONFIG_UNUSED_SYMBOLS is not set
1296# CONFIG_DEBUG_FS is not set 1404# CONFIG_DEBUG_FS is not set
1297# CONFIG_HEADERS_CHECK is not set 1405# CONFIG_HEADERS_CHECK is not set
@@ -1300,16 +1408,23 @@ CONFIG_DEBUG_KERNEL=y
1300CONFIG_DETECT_SOFTLOCKUP=y 1408CONFIG_DETECT_SOFTLOCKUP=y
1301# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set 1409# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
1302CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 1410CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1411CONFIG_DETECT_HUNG_TASK=y
1412# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
1413CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
1303CONFIG_SCHED_DEBUG=y 1414CONFIG_SCHED_DEBUG=y
1304# CONFIG_SCHEDSTATS is not set 1415# CONFIG_SCHEDSTATS is not set
1305# CONFIG_TIMER_STATS is not set 1416# CONFIG_TIMER_STATS is not set
1306# CONFIG_DEBUG_OBJECTS is not set 1417# CONFIG_DEBUG_OBJECTS is not set
1307# CONFIG_SLUB_DEBUG_ON is not set 1418# CONFIG_SLUB_DEBUG_ON is not set
1308# CONFIG_SLUB_STATS is not set 1419# CONFIG_SLUB_STATS is not set
1420# CONFIG_DEBUG_KMEMLEAK is not set
1309# CONFIG_DEBUG_RT_MUTEXES is not set 1421# CONFIG_DEBUG_RT_MUTEXES is not set
1310# CONFIG_RT_MUTEX_TESTER is not set 1422# CONFIG_RT_MUTEX_TESTER is not set
1311# CONFIG_DEBUG_SPINLOCK is not set 1423# CONFIG_DEBUG_SPINLOCK is not set
1312# CONFIG_DEBUG_MUTEXES is not set 1424# CONFIG_DEBUG_MUTEXES is not set
1425# CONFIG_DEBUG_LOCK_ALLOC is not set
1426# CONFIG_PROVE_LOCKING is not set
1427# CONFIG_LOCK_STAT is not set
1313# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1428# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1314# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1429# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1315# CONFIG_DEBUG_KOBJECT is not set 1430# CONFIG_DEBUG_KOBJECT is not set
@@ -1321,35 +1436,43 @@ CONFIG_DEBUG_BUGVERBOSE=y
1321# CONFIG_DEBUG_LIST is not set 1436# CONFIG_DEBUG_LIST is not set
1322# CONFIG_DEBUG_SG is not set 1437# CONFIG_DEBUG_SG is not set
1323# CONFIG_DEBUG_NOTIFIERS is not set 1438# CONFIG_DEBUG_NOTIFIERS is not set
1324# CONFIG_BOOT_PRINTK_DELAY is not set 1439# CONFIG_DEBUG_CREDENTIALS is not set
1325# CONFIG_RCU_TORTURE_TEST is not set 1440# CONFIG_RCU_TORTURE_TEST is not set
1326# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1441# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1327# CONFIG_BACKTRACE_SELF_TEST is not set 1442# CONFIG_BACKTRACE_SELF_TEST is not set
1328# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1443# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1444# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1329# CONFIG_FAULT_INJECTION is not set 1445# CONFIG_FAULT_INJECTION is not set
1330# CONFIG_LATENCYTOP is not set 1446# CONFIG_LATENCYTOP is not set
1331CONFIG_SYSCTL_SYSCALL_CHECK=y 1447CONFIG_SYSCTL_SYSCALL_CHECK=y
1448# CONFIG_DEBUG_PAGEALLOC is not set
1332CONFIG_HAVE_FUNCTION_TRACER=y 1449CONFIG_HAVE_FUNCTION_TRACER=y
1450CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
1333CONFIG_HAVE_DYNAMIC_FTRACE=y 1451CONFIG_HAVE_DYNAMIC_FTRACE=y
1334CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1452CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1335 1453CONFIG_TRACING_SUPPORT=y
1336# 1454CONFIG_FTRACE=y
1337# Tracers
1338#
1339# CONFIG_FUNCTION_TRACER is not set 1455# CONFIG_FUNCTION_TRACER is not set
1456# CONFIG_IRQSOFF_TRACER is not set
1340# CONFIG_SCHED_TRACER is not set 1457# CONFIG_SCHED_TRACER is not set
1341# CONFIG_CONTEXT_SWITCH_TRACER is not set 1458# CONFIG_ENABLE_DEFAULT_TRACERS is not set
1342# CONFIG_BOOT_TRACER is not set 1459# CONFIG_BOOT_TRACER is not set
1343# CONFIG_TRACE_BRANCH_PROFILING is not set 1460CONFIG_BRANCH_PROFILE_NONE=y
1461# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1462# CONFIG_PROFILE_ALL_BRANCHES is not set
1344# CONFIG_STACK_TRACER is not set 1463# CONFIG_STACK_TRACER is not set
1345# CONFIG_DYNAMIC_PRINTK_DEBUG is not set 1464# CONFIG_KMEMTRACE is not set
1465# CONFIG_WORKQUEUE_TRACER is not set
1466# CONFIG_BLK_DEV_IO_TRACE is not set
1467# CONFIG_DMA_API_DEBUG is not set
1346# CONFIG_SAMPLES is not set 1468# CONFIG_SAMPLES is not set
1347CONFIG_HAVE_ARCH_KGDB=y 1469CONFIG_HAVE_ARCH_KGDB=y
1348# CONFIG_KGDB is not set 1470# CONFIG_KGDB is not set
1471# CONFIG_PPC_DISABLE_WERROR is not set
1472CONFIG_PPC_WERROR=y
1349CONFIG_PRINT_STACK_DEPTH=64 1473CONFIG_PRINT_STACK_DEPTH=64
1350# CONFIG_DEBUG_STACKOVERFLOW is not set 1474# CONFIG_DEBUG_STACKOVERFLOW is not set
1351# CONFIG_DEBUG_STACK_USAGE is not set 1475# CONFIG_DEBUG_STACK_USAGE is not set
1352# CONFIG_DEBUG_PAGEALLOC is not set
1353# CONFIG_CODE_PATCHING_SELFTEST is not set 1476# CONFIG_CODE_PATCHING_SELFTEST is not set
1354# CONFIG_FTR_FIXUP_SELFTEST is not set 1477# CONFIG_FTR_FIXUP_SELFTEST is not set
1355# CONFIG_MSI_BITMAP_SELFTEST is not set 1478# CONFIG_MSI_BITMAP_SELFTEST is not set
@@ -1363,13 +1486,16 @@ CONFIG_PRINT_STACK_DEPTH=64
1363# CONFIG_KEYS is not set 1486# CONFIG_KEYS is not set
1364# CONFIG_SECURITY is not set 1487# CONFIG_SECURITY is not set
1365# CONFIG_SECURITYFS is not set 1488# CONFIG_SECURITYFS is not set
1366# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1489# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1490# CONFIG_DEFAULT_SECURITY_SMACK is not set
1491# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1492CONFIG_DEFAULT_SECURITY_DAC=y
1493CONFIG_DEFAULT_SECURITY=""
1367CONFIG_CRYPTO=y 1494CONFIG_CRYPTO=y
1368 1495
1369# 1496#
1370# Crypto core or helper 1497# Crypto core or helper
1371# 1498#
1372# CONFIG_CRYPTO_FIPS is not set
1373CONFIG_CRYPTO_ALGAPI=y 1499CONFIG_CRYPTO_ALGAPI=y
1374CONFIG_CRYPTO_ALGAPI2=y 1500CONFIG_CRYPTO_ALGAPI2=y
1375CONFIG_CRYPTO_AEAD2=y 1501CONFIG_CRYPTO_AEAD2=y
@@ -1378,10 +1504,12 @@ CONFIG_CRYPTO_BLKCIPHER2=y
1378CONFIG_CRYPTO_HASH=y 1504CONFIG_CRYPTO_HASH=y
1379CONFIG_CRYPTO_HASH2=y 1505CONFIG_CRYPTO_HASH2=y
1380CONFIG_CRYPTO_RNG2=y 1506CONFIG_CRYPTO_RNG2=y
1507CONFIG_CRYPTO_PCOMP=y
1381CONFIG_CRYPTO_MANAGER=y 1508CONFIG_CRYPTO_MANAGER=y
1382CONFIG_CRYPTO_MANAGER2=y 1509CONFIG_CRYPTO_MANAGER2=y
1383# CONFIG_CRYPTO_GF128MUL is not set 1510# CONFIG_CRYPTO_GF128MUL is not set
1384# CONFIG_CRYPTO_NULL is not set 1511# CONFIG_CRYPTO_NULL is not set
1512CONFIG_CRYPTO_WORKQUEUE=y
1385# CONFIG_CRYPTO_CRYPTD is not set 1513# CONFIG_CRYPTO_CRYPTD is not set
1386# CONFIG_CRYPTO_AUTHENC is not set 1514# CONFIG_CRYPTO_AUTHENC is not set
1387# CONFIG_CRYPTO_TEST is not set 1515# CONFIG_CRYPTO_TEST is not set
@@ -1409,11 +1537,13 @@ CONFIG_CRYPTO_PCBC=y
1409# 1537#
1410# CONFIG_CRYPTO_HMAC is not set 1538# CONFIG_CRYPTO_HMAC is not set
1411# CONFIG_CRYPTO_XCBC is not set 1539# CONFIG_CRYPTO_XCBC is not set
1540# CONFIG_CRYPTO_VMAC is not set
1412 1541
1413# 1542#
1414# Digest 1543# Digest
1415# 1544#
1416# CONFIG_CRYPTO_CRC32C is not set 1545# CONFIG_CRYPTO_CRC32C is not set
1546# CONFIG_CRYPTO_GHASH is not set
1417# CONFIG_CRYPTO_MD4 is not set 1547# CONFIG_CRYPTO_MD4 is not set
1418CONFIG_CRYPTO_MD5=y 1548CONFIG_CRYPTO_MD5=y
1419# CONFIG_CRYPTO_MICHAEL_MIC is not set 1549# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1450,6 +1580,7 @@ CONFIG_CRYPTO_DES=y
1450# Compression 1580# Compression
1451# 1581#
1452CONFIG_CRYPTO_DEFLATE=m 1582CONFIG_CRYPTO_DEFLATE=m
1583# CONFIG_CRYPTO_ZLIB is not set
1453CONFIG_CRYPTO_LZO=m 1584CONFIG_CRYPTO_LZO=m
1454 1585
1455# 1586#
diff --git a/arch/powerpc/configs/pq2fads_defconfig b/arch/powerpc/configs/pq2fads_defconfig
index b7911216af78..5d06f2cb8e5e 100644
--- a/arch/powerpc/configs/pq2fads_defconfig
+++ b/arch/powerpc/configs/pq2fads_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:17 2009 4# Wed Jan 6 09:24:11 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -59,6 +60,7 @@ CONFIG_AUDIT_ARCH=y
59CONFIG_GENERIC_BUG=y 60CONFIG_GENERIC_BUG=y
60CONFIG_DTC=y 61CONFIG_DTC=y
61CONFIG_DEFAULT_UIMAGE=y 62CONFIG_DEFAULT_UIMAGE=y
63CONFIG_ARCH_HIBERNATION_POSSIBLE=y
62# CONFIG_PPC_DCR_NATIVE is not set 64# CONFIG_PPC_DCR_NATIVE is not set
63# CONFIG_PPC_DCR_MMIO is not set 65# CONFIG_PPC_DCR_MMIO is not set
64CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 66CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -85,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
85# 87#
86CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
88# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
89CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
90# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -165,14 +168,41 @@ CONFIG_BLK_DEV_BSG=y
165# IO Schedulers 168# IO Schedulers
166# 169#
167CONFIG_IOSCHED_NOOP=y 170CONFIG_IOSCHED_NOOP=y
168CONFIG_IOSCHED_AS=y
169CONFIG_IOSCHED_DEADLINE=y 171CONFIG_IOSCHED_DEADLINE=y
170CONFIG_IOSCHED_CFQ=y 172CONFIG_IOSCHED_CFQ=y
171CONFIG_DEFAULT_AS=y
172# CONFIG_DEFAULT_DEADLINE is not set 173# CONFIG_DEFAULT_DEADLINE is not set
173# CONFIG_DEFAULT_CFQ is not set 174CONFIG_DEFAULT_CFQ=y
174# CONFIG_DEFAULT_NOOP is not set 175# CONFIG_DEFAULT_NOOP is not set
175CONFIG_DEFAULT_IOSCHED="anticipatory" 176CONFIG_DEFAULT_IOSCHED="cfq"
177# CONFIG_INLINE_SPIN_TRYLOCK is not set
178# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
179# CONFIG_INLINE_SPIN_LOCK is not set
180# CONFIG_INLINE_SPIN_LOCK_BH is not set
181# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
182# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
183CONFIG_INLINE_SPIN_UNLOCK=y
184# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
185CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
186# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
187# CONFIG_INLINE_READ_TRYLOCK is not set
188# CONFIG_INLINE_READ_LOCK is not set
189# CONFIG_INLINE_READ_LOCK_BH is not set
190# CONFIG_INLINE_READ_LOCK_IRQ is not set
191# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
192CONFIG_INLINE_READ_UNLOCK=y
193# CONFIG_INLINE_READ_UNLOCK_BH is not set
194CONFIG_INLINE_READ_UNLOCK_IRQ=y
195# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
196# CONFIG_INLINE_WRITE_TRYLOCK is not set
197# CONFIG_INLINE_WRITE_LOCK is not set
198# CONFIG_INLINE_WRITE_LOCK_BH is not set
199# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
200# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
201CONFIG_INLINE_WRITE_UNLOCK=y
202# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
203CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
204# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
205# CONFIG_MUTEX_SPIN_ON_OWNER is not set
176# CONFIG_FREEZER is not set 206# CONFIG_FREEZER is not set
177 207
178# 208#
@@ -243,6 +273,7 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
243CONFIG_ARCH_HAS_WALK_MEMORY=y 273CONFIG_ARCH_HAS_WALK_MEMORY=y
244CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 274CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
245# CONFIG_CRASH_DUMP is not set 275# CONFIG_CRASH_DUMP is not set
276CONFIG_SPARSE_IRQ=y
246CONFIG_MAX_ACTIVE_REGIONS=32 277CONFIG_MAX_ACTIVE_REGIONS=32
247CONFIG_ARCH_FLATMEM_ENABLE=y 278CONFIG_ARCH_FLATMEM_ENABLE=y
248CONFIG_ARCH_POPULATES_NODE_MAP=y 279CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -255,8 +286,6 @@ CONFIG_MIGRATION=y
255CONFIG_ZONE_DMA_FLAG=1 286CONFIG_ZONE_DMA_FLAG=1
256CONFIG_BOUNCE=y 287CONFIG_BOUNCE=y
257CONFIG_VIRT_TO_BUS=y 288CONFIG_VIRT_TO_BUS=y
258CONFIG_HAVE_MLOCK=y
259CONFIG_HAVE_MLOCKED_PAGE_BIT=y
260# CONFIG_KSM is not set 289# CONFIG_KSM is not set
261CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 290CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
262CONFIG_PPC_4K_PAGES=y 291CONFIG_PPC_4K_PAGES=y
@@ -407,9 +436,6 @@ CONFIG_NETFILTER_ADVANCED=y
407# CONFIG_BT is not set 436# CONFIG_BT is not set
408CONFIG_WIRELESS=y 437CONFIG_WIRELESS=y
409# CONFIG_CFG80211 is not set 438# CONFIG_CFG80211 is not set
410CONFIG_CFG80211_DEFAULT_PS_VALUE=0
411CONFIG_WIRELESS_OLD_REGULATORY=y
412# CONFIG_WIRELESS_EXT is not set
413# CONFIG_LIB80211 is not set 439# CONFIG_LIB80211 is not set
414 440
415# 441#
@@ -530,6 +556,10 @@ CONFIG_BLK_DEV=y
530# CONFIG_BLK_DEV_COW_COMMON is not set 556# CONFIG_BLK_DEV_COW_COMMON is not set
531CONFIG_BLK_DEV_LOOP=y 557CONFIG_BLK_DEV_LOOP=y
532# CONFIG_BLK_DEV_CRYPTOLOOP is not set 558# CONFIG_BLK_DEV_CRYPTOLOOP is not set
559
560#
561# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
562#
533# CONFIG_BLK_DEV_NBD is not set 563# CONFIG_BLK_DEV_NBD is not set
534# CONFIG_BLK_DEV_SX8 is not set 564# CONFIG_BLK_DEV_SX8 is not set
535# CONFIG_BLK_DEV_RAM is not set 565# CONFIG_BLK_DEV_RAM is not set
@@ -616,7 +646,7 @@ CONFIG_IDE_PROC_FS=y
616# 646#
617 647
618# 648#
619# See the help texts for more information. 649# The newer stack is recommended.
620# 650#
621# CONFIG_FIREWIRE is not set 651# CONFIG_FIREWIRE is not set
622# CONFIG_IEEE1394 is not set 652# CONFIG_IEEE1394 is not set
@@ -721,8 +751,9 @@ CONFIG_CHELSIO_T3_DEPENDS=y
721# CONFIG_BE2NET is not set 751# CONFIG_BE2NET is not set
722# CONFIG_TR is not set 752# CONFIG_TR is not set
723CONFIG_WLAN=y 753CONFIG_WLAN=y
724# CONFIG_WLAN_PRE80211 is not set 754# CONFIG_AIRO is not set
725# CONFIG_WLAN_80211 is not set 755# CONFIG_ATMEL is not set
756# CONFIG_HOSTAP is not set
726 757
727# 758#
728# Enable WiMAX (Networking options) to see the WiMAX drivers 759# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -739,6 +770,7 @@ CONFIG_PPP_DEFLATE=y
739CONFIG_SLHC=y 770CONFIG_SLHC=y
740# CONFIG_NETPOLL is not set 771# CONFIG_NETPOLL is not set
741# CONFIG_NET_POLL_CONTROLLER is not set 772# CONFIG_NET_POLL_CONTROLLER is not set
773# CONFIG_VMXNET3 is not set
742# CONFIG_ISDN is not set 774# CONFIG_ISDN is not set
743# CONFIG_PHONE is not set 775# CONFIG_PHONE is not set
744 776
@@ -748,6 +780,7 @@ CONFIG_SLHC=y
748CONFIG_INPUT=y 780CONFIG_INPUT=y
749# CONFIG_INPUT_FF_MEMLESS is not set 781# CONFIG_INPUT_FF_MEMLESS is not set
750# CONFIG_INPUT_POLLDEV is not set 782# CONFIG_INPUT_POLLDEV is not set
783# CONFIG_INPUT_SPARSEKMAP is not set
751 784
752# 785#
753# Userland interfaces 786# Userland interfaces
@@ -802,6 +835,7 @@ CONFIG_SERIO_SERPORT=y
802CONFIG_SERIO_LIBPS2=y 835CONFIG_SERIO_LIBPS2=y
803# CONFIG_SERIO_RAW is not set 836# CONFIG_SERIO_RAW is not set
804# CONFIG_SERIO_XILINX_XPS_PS2 is not set 837# CONFIG_SERIO_XILINX_XPS_PS2 is not set
838# CONFIG_SERIO_ALTERA_PS2 is not set
805# CONFIG_GAMEPORT is not set 839# CONFIG_GAMEPORT is not set
806 840
807# 841#
@@ -825,6 +859,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
825CONFIG_SERIAL_CPM=y 859CONFIG_SERIAL_CPM=y
826CONFIG_SERIAL_CPM_CONSOLE=y 860CONFIG_SERIAL_CPM_CONSOLE=y
827# CONFIG_SERIAL_JSM is not set 861# CONFIG_SERIAL_JSM is not set
862# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
828CONFIG_UNIX98_PTYS=y 863CONFIG_UNIX98_PTYS=y
829# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 864# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
830CONFIG_LEGACY_PTYS=y 865CONFIG_LEGACY_PTYS=y
@@ -861,6 +896,7 @@ CONFIG_GPIOLIB=y
861# 896#
862# PCI GPIO expanders: 897# PCI GPIO expanders:
863# 898#
899# CONFIG_GPIO_CS5535 is not set
864# CONFIG_GPIO_BT8XX is not set 900# CONFIG_GPIO_BT8XX is not set
865# CONFIG_GPIO_LANGWELL is not set 901# CONFIG_GPIO_LANGWELL is not set
866 902
@@ -955,10 +991,12 @@ CONFIG_USB_ETH_RNDIS=y
955# CONFIG_USB_ETH_EEM is not set 991# CONFIG_USB_ETH_EEM is not set
956# CONFIG_USB_GADGETFS is not set 992# CONFIG_USB_GADGETFS is not set
957# CONFIG_USB_FILE_STORAGE is not set 993# CONFIG_USB_FILE_STORAGE is not set
994# CONFIG_USB_MASS_STORAGE is not set
958# CONFIG_USB_G_SERIAL is not set 995# CONFIG_USB_G_SERIAL is not set
959# CONFIG_USB_MIDI_GADGET is not set 996# CONFIG_USB_MIDI_GADGET is not set
960# CONFIG_USB_G_PRINTER is not set 997# CONFIG_USB_G_PRINTER is not set
961# CONFIG_USB_CDC_COMPOSITE is not set 998# CONFIG_USB_CDC_COMPOSITE is not set
999# CONFIG_USB_G_MULTI is not set
962 1000
963# 1001#
964# OTG and related infrastructure 1002# OTG and related infrastructure
@@ -1248,7 +1286,11 @@ CONFIG_BDI_SWITCH=y
1248# CONFIG_KEYS is not set 1286# CONFIG_KEYS is not set
1249# CONFIG_SECURITY is not set 1287# CONFIG_SECURITY is not set
1250# CONFIG_SECURITYFS is not set 1288# CONFIG_SECURITYFS is not set
1251# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1289# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1290# CONFIG_DEFAULT_SECURITY_SMACK is not set
1291# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1292CONFIG_DEFAULT_SECURITY_DAC=y
1293CONFIG_DEFAULT_SECURITY=""
1252CONFIG_CRYPTO=y 1294CONFIG_CRYPTO=y
1253 1295
1254# 1296#
diff --git a/arch/powerpc/configs/prpmc2800_defconfig b/arch/powerpc/configs/prpmc2800_defconfig
index ef50ce45d50b..57ab5748a34d 100644
--- a/arch/powerpc/configs/prpmc2800_defconfig
+++ b/arch/powerpc/configs/prpmc2800_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:18 2009 4# Wed Jan 6 09:24:12 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -38,6 +38,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 38# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 39# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
40CONFIG_IRQ_PER_CPU=y 40CONFIG_IRQ_PER_CPU=y
41CONFIG_NR_IRQS=512
41CONFIG_STACKTRACE_SUPPORT=y 42CONFIG_STACKTRACE_SUPPORT=y
42CONFIG_HAVE_LATENCYTOP_SUPPORT=y 43CONFIG_HAVE_LATENCYTOP_SUPPORT=y
43CONFIG_TRACE_IRQFLAGS_SUPPORT=y 44CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -60,6 +61,7 @@ CONFIG_AUDIT_ARCH=y
60CONFIG_GENERIC_BUG=y 61CONFIG_GENERIC_BUG=y
61CONFIG_DTC=y 62CONFIG_DTC=y
62# CONFIG_DEFAULT_UIMAGE is not set 63# CONFIG_DEFAULT_UIMAGE is not set
64CONFIG_ARCH_HIBERNATION_POSSIBLE=y
63# CONFIG_PPC_DCR_NATIVE is not set 65# CONFIG_PPC_DCR_NATIVE is not set
64# CONFIG_PPC_DCR_MMIO is not set 66# CONFIG_PPC_DCR_MMIO is not set
65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 67CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -88,6 +90,7 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
88# 90#
89CONFIG_TREE_RCU=y 91CONFIG_TREE_RCU=y
90# CONFIG_TREE_PREEMPT_RCU is not set 92# CONFIG_TREE_PREEMPT_RCU is not set
93# CONFIG_TINY_RCU is not set
91# CONFIG_RCU_TRACE is not set 94# CONFIG_RCU_TRACE is not set
92CONFIG_RCU_FANOUT=32 95CONFIG_RCU_FANOUT=32
93# CONFIG_RCU_FANOUT_EXACT is not set 96# CONFIG_RCU_FANOUT_EXACT is not set
@@ -175,14 +178,41 @@ CONFIG_LBDAF=y
175# IO Schedulers 178# IO Schedulers
176# 179#
177CONFIG_IOSCHED_NOOP=y 180CONFIG_IOSCHED_NOOP=y
178CONFIG_IOSCHED_AS=y
179# CONFIG_IOSCHED_DEADLINE is not set 181# CONFIG_IOSCHED_DEADLINE is not set
180# CONFIG_IOSCHED_CFQ is not set 182# CONFIG_IOSCHED_CFQ is not set
181CONFIG_DEFAULT_AS=y
182# CONFIG_DEFAULT_DEADLINE is not set 183# CONFIG_DEFAULT_DEADLINE is not set
183# CONFIG_DEFAULT_CFQ is not set 184# CONFIG_DEFAULT_CFQ is not set
184# CONFIG_DEFAULT_NOOP is not set 185CONFIG_DEFAULT_NOOP=y
185CONFIG_DEFAULT_IOSCHED="anticipatory" 186CONFIG_DEFAULT_IOSCHED="noop"
187# CONFIG_INLINE_SPIN_TRYLOCK is not set
188# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
189# CONFIG_INLINE_SPIN_LOCK is not set
190# CONFIG_INLINE_SPIN_LOCK_BH is not set
191# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
192# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
193CONFIG_INLINE_SPIN_UNLOCK=y
194# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
195CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
196# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
197# CONFIG_INLINE_READ_TRYLOCK is not set
198# CONFIG_INLINE_READ_LOCK is not set
199# CONFIG_INLINE_READ_LOCK_BH is not set
200# CONFIG_INLINE_READ_LOCK_IRQ is not set
201# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
202CONFIG_INLINE_READ_UNLOCK=y
203# CONFIG_INLINE_READ_UNLOCK_BH is not set
204CONFIG_INLINE_READ_UNLOCK_IRQ=y
205# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
206# CONFIG_INLINE_WRITE_TRYLOCK is not set
207# CONFIG_INLINE_WRITE_LOCK is not set
208# CONFIG_INLINE_WRITE_LOCK_BH is not set
209# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
210# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
211CONFIG_INLINE_WRITE_UNLOCK=y
212# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
213CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
214# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
215# CONFIG_MUTEX_SPIN_ON_OWNER is not set
186# CONFIG_FREEZER is not set 216# CONFIG_FREEZER is not set
187 217
188# 218#
@@ -207,6 +237,8 @@ CONFIG_EMBEDDED6xx=y
207CONFIG_PPC_PRPMC2800=y 237CONFIG_PPC_PRPMC2800=y
208# CONFIG_PPC_C2K is not set 238# CONFIG_PPC_C2K is not set
209CONFIG_MV64X60=y 239CONFIG_MV64X60=y
240# CONFIG_GAMECUBE is not set
241# CONFIG_WII is not set
210# CONFIG_AMIGAONE is not set 242# CONFIG_AMIGAONE is not set
211CONFIG_PPC_OF_BOOT_TRAMPOLINE=y 243CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
212# CONFIG_IPIC is not set 244# CONFIG_IPIC is not set
@@ -252,6 +284,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
252CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 284CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
253# CONFIG_KEXEC is not set 285# CONFIG_KEXEC is not set
254# CONFIG_CRASH_DUMP is not set 286# CONFIG_CRASH_DUMP is not set
287CONFIG_SPARSE_IRQ=y
255CONFIG_MAX_ACTIVE_REGIONS=32 288CONFIG_MAX_ACTIVE_REGIONS=32
256CONFIG_ARCH_FLATMEM_ENABLE=y 289CONFIG_ARCH_FLATMEM_ENABLE=y
257CONFIG_ARCH_POPULATES_NODE_MAP=y 290CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -268,8 +301,6 @@ CONFIG_MIGRATION=y
268CONFIG_ZONE_DMA_FLAG=1 301CONFIG_ZONE_DMA_FLAG=1
269CONFIG_BOUNCE=y 302CONFIG_BOUNCE=y
270CONFIG_VIRT_TO_BUS=y 303CONFIG_VIRT_TO_BUS=y
271CONFIG_HAVE_MLOCK=y
272CONFIG_HAVE_MLOCKED_PAGE_BIT=y
273# CONFIG_KSM is not set 304# CONFIG_KSM is not set
274CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 305CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
275CONFIG_PPC_4K_PAGES=y 306CONFIG_PPC_4K_PAGES=y
@@ -394,9 +425,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
394# CONFIG_AF_RXRPC is not set 425# CONFIG_AF_RXRPC is not set
395CONFIG_WIRELESS=y 426CONFIG_WIRELESS=y
396# CONFIG_CFG80211 is not set 427# CONFIG_CFG80211 is not set
397CONFIG_CFG80211_DEFAULT_PS_VALUE=0
398CONFIG_WIRELESS_OLD_REGULATORY=y
399# CONFIG_WIRELESS_EXT is not set
400# CONFIG_LIB80211 is not set 428# CONFIG_LIB80211 is not set
401 429
402# 430#
@@ -518,6 +546,10 @@ CONFIG_BLK_DEV=y
518# CONFIG_BLK_DEV_COW_COMMON is not set 546# CONFIG_BLK_DEV_COW_COMMON is not set
519CONFIG_BLK_DEV_LOOP=y 547CONFIG_BLK_DEV_LOOP=y
520# CONFIG_BLK_DEV_CRYPTOLOOP is not set 548# CONFIG_BLK_DEV_CRYPTOLOOP is not set
549
550#
551# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
552#
521# CONFIG_BLK_DEV_NBD is not set 553# CONFIG_BLK_DEV_NBD is not set
522# CONFIG_BLK_DEV_SX8 is not set 554# CONFIG_BLK_DEV_SX8 is not set
523# CONFIG_BLK_DEV_UB is not set 555# CONFIG_BLK_DEV_UB is not set
@@ -529,6 +561,7 @@ CONFIG_BLK_DEV_RAM_SIZE=131072
529# CONFIG_ATA_OVER_ETH is not set 561# CONFIG_ATA_OVER_ETH is not set
530# CONFIG_BLK_DEV_HD is not set 562# CONFIG_BLK_DEV_HD is not set
531CONFIG_MISC_DEVICES=y 563CONFIG_MISC_DEVICES=y
564# CONFIG_AD525X_DPOT is not set
532# CONFIG_PHANTOM is not set 565# CONFIG_PHANTOM is not set
533# CONFIG_SGI_IOC4 is not set 566# CONFIG_SGI_IOC4 is not set
534# CONFIG_TIFM_CORE is not set 567# CONFIG_TIFM_CORE is not set
@@ -536,6 +569,7 @@ CONFIG_MISC_DEVICES=y
536# CONFIG_ENCLOSURE_SERVICES is not set 569# CONFIG_ENCLOSURE_SERVICES is not set
537# CONFIG_HP_ILO is not set 570# CONFIG_HP_ILO is not set
538# CONFIG_ISL29003 is not set 571# CONFIG_ISL29003 is not set
572# CONFIG_DS1682 is not set
539# CONFIG_C2PORT is not set 573# CONFIG_C2PORT is not set
540 574
541# 575#
@@ -641,7 +675,9 @@ CONFIG_SCSI_LOWLEVEL=y
641# CONFIG_SCSI_BNX2_ISCSI is not set 675# CONFIG_SCSI_BNX2_ISCSI is not set
642# CONFIG_BE2ISCSI is not set 676# CONFIG_BE2ISCSI is not set
643# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 677# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
678# CONFIG_SCSI_HPSA is not set
644# CONFIG_SCSI_3W_9XXX is not set 679# CONFIG_SCSI_3W_9XXX is not set
680# CONFIG_SCSI_3W_SAS is not set
645# CONFIG_SCSI_ACARD is not set 681# CONFIG_SCSI_ACARD is not set
646# CONFIG_SCSI_AACRAID is not set 682# CONFIG_SCSI_AACRAID is not set
647# CONFIG_SCSI_AIC7XXX is not set 683# CONFIG_SCSI_AIC7XXX is not set
@@ -680,6 +716,7 @@ CONFIG_SCSI_LOWLEVEL=y
680# CONFIG_SCSI_NSP32 is not set 716# CONFIG_SCSI_NSP32 is not set
681# CONFIG_SCSI_DEBUG is not set 717# CONFIG_SCSI_DEBUG is not set
682# CONFIG_SCSI_PMCRAID is not set 718# CONFIG_SCSI_PMCRAID is not set
719# CONFIG_SCSI_PM8001 is not set
683# CONFIG_SCSI_SRP is not set 720# CONFIG_SCSI_SRP is not set
684# CONFIG_SCSI_BFA_FC is not set 721# CONFIG_SCSI_BFA_FC is not set
685# CONFIG_SCSI_DH is not set 722# CONFIG_SCSI_DH is not set
@@ -734,15 +771,16 @@ CONFIG_SATA_MV=y
734# CONFIG_PATA_NS87415 is not set 771# CONFIG_PATA_NS87415 is not set
735# CONFIG_PATA_OPTI is not set 772# CONFIG_PATA_OPTI is not set
736# CONFIG_PATA_OPTIDMA is not set 773# CONFIG_PATA_OPTIDMA is not set
774# CONFIG_PATA_PDC2027X is not set
737# CONFIG_PATA_PDC_OLD is not set 775# CONFIG_PATA_PDC_OLD is not set
738# CONFIG_PATA_RADISYS is not set 776# CONFIG_PATA_RADISYS is not set
739# CONFIG_PATA_RDC is not set 777# CONFIG_PATA_RDC is not set
740# CONFIG_PATA_RZ1000 is not set 778# CONFIG_PATA_RZ1000 is not set
741# CONFIG_PATA_SC1200 is not set 779# CONFIG_PATA_SC1200 is not set
742# CONFIG_PATA_SERVERWORKS is not set 780# CONFIG_PATA_SERVERWORKS is not set
743# CONFIG_PATA_PDC2027X is not set
744# CONFIG_PATA_SIL680 is not set 781# CONFIG_PATA_SIL680 is not set
745# CONFIG_PATA_SIS is not set 782# CONFIG_PATA_SIS is not set
783# CONFIG_PATA_TOSHIBA is not set
746# CONFIG_PATA_VIA is not set 784# CONFIG_PATA_VIA is not set
747# CONFIG_PATA_WINBOND is not set 785# CONFIG_PATA_WINBOND is not set
748# CONFIG_PATA_PLATFORM is not set 786# CONFIG_PATA_PLATFORM is not set
@@ -759,7 +797,7 @@ CONFIG_SATA_MV=y
759# 797#
760 798
761# 799#
762# See the help texts for more information. 800# The newer stack is recommended.
763# 801#
764# CONFIG_FIREWIRE is not set 802# CONFIG_FIREWIRE is not set
765# CONFIG_IEEE1394 is not set 803# CONFIG_IEEE1394 is not set
@@ -886,8 +924,11 @@ CONFIG_CHELSIO_T3_DEPENDS=y
886# CONFIG_BE2NET is not set 924# CONFIG_BE2NET is not set
887# CONFIG_TR is not set 925# CONFIG_TR is not set
888CONFIG_WLAN=y 926CONFIG_WLAN=y
889# CONFIG_WLAN_PRE80211 is not set 927# CONFIG_AIRO is not set
890# CONFIG_WLAN_80211 is not set 928# CONFIG_ATMEL is not set
929# CONFIG_PRISM54 is not set
930# CONFIG_USB_ZD1201 is not set
931# CONFIG_HOSTAP is not set
891 932
892# 933#
893# Enable WiMAX (Networking options) to see the WiMAX drivers 934# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -910,6 +951,7 @@ CONFIG_WLAN=y
910# CONFIG_NETCONSOLE is not set 951# CONFIG_NETCONSOLE is not set
911# CONFIG_NETPOLL is not set 952# CONFIG_NETPOLL is not set
912# CONFIG_NET_POLL_CONTROLLER is not set 953# CONFIG_NET_POLL_CONTROLLER is not set
954# CONFIG_VMXNET3 is not set
913# CONFIG_ISDN is not set 955# CONFIG_ISDN is not set
914# CONFIG_PHONE is not set 956# CONFIG_PHONE is not set
915 957
@@ -919,6 +961,7 @@ CONFIG_WLAN=y
919CONFIG_INPUT=y 961CONFIG_INPUT=y
920CONFIG_INPUT_FF_MEMLESS=y 962CONFIG_INPUT_FF_MEMLESS=y
921# CONFIG_INPUT_POLLDEV is not set 963# CONFIG_INPUT_POLLDEV is not set
964# CONFIG_INPUT_SPARSEKMAP is not set
922 965
923# 966#
924# Userland interfaces 967# Userland interfaces
@@ -973,6 +1016,7 @@ CONFIG_SERIAL_MPSC_CONSOLE=y
973CONFIG_SERIAL_CORE=y 1016CONFIG_SERIAL_CORE=y
974CONFIG_SERIAL_CORE_CONSOLE=y 1017CONFIG_SERIAL_CORE_CONSOLE=y
975# CONFIG_SERIAL_JSM is not set 1018# CONFIG_SERIAL_JSM is not set
1019# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
976CONFIG_UNIX98_PTYS=y 1020CONFIG_UNIX98_PTYS=y
977# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 1021# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
978CONFIG_LEGACY_PTYS=y 1022CONFIG_LEGACY_PTYS=y
@@ -1030,11 +1074,6 @@ CONFIG_I2C_MV64XXX=y
1030# CONFIG_I2C_TINY_USB is not set 1074# CONFIG_I2C_TINY_USB is not set
1031 1075
1032# 1076#
1033# Graphics adapter I2C/DDC channel drivers
1034#
1035# CONFIG_I2C_VOODOO3 is not set
1036
1037#
1038# Other I2C/SMBus bus drivers 1077# Other I2C/SMBus bus drivers
1039# 1078#
1040# CONFIG_I2C_PCA_PLATFORM is not set 1079# CONFIG_I2C_PCA_PLATFORM is not set
@@ -1042,7 +1081,6 @@ CONFIG_I2C_MV64XXX=y
1042# 1081#
1043# Miscellaneous I2C Chip support 1082# Miscellaneous I2C Chip support
1044# 1083#
1045# CONFIG_DS1682 is not set
1046# CONFIG_SENSORS_TSL2550 is not set 1084# CONFIG_SENSORS_TSL2550 is not set
1047# CONFIG_I2C_DEBUG_CORE is not set 1085# CONFIG_I2C_DEBUG_CORE is not set
1048# CONFIG_I2C_DEBUG_ALGO is not set 1086# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1088,6 +1126,7 @@ CONFIG_HWMON=y
1088# CONFIG_SENSORS_GL520SM is not set 1126# CONFIG_SENSORS_GL520SM is not set
1089# CONFIG_SENSORS_IT87 is not set 1127# CONFIG_SENSORS_IT87 is not set
1090# CONFIG_SENSORS_LM63 is not set 1128# CONFIG_SENSORS_LM63 is not set
1129# CONFIG_SENSORS_LM73 is not set
1091# CONFIG_SENSORS_LM75 is not set 1130# CONFIG_SENSORS_LM75 is not set
1092# CONFIG_SENSORS_LM77 is not set 1131# CONFIG_SENSORS_LM77 is not set
1093# CONFIG_SENSORS_LM78 is not set 1132# CONFIG_SENSORS_LM78 is not set
@@ -1126,6 +1165,7 @@ CONFIG_HWMON=y
1126# CONFIG_SENSORS_W83L786NG is not set 1165# CONFIG_SENSORS_W83L786NG is not set
1127# CONFIG_SENSORS_W83627HF is not set 1166# CONFIG_SENSORS_W83627HF is not set
1128# CONFIG_SENSORS_W83627EHF is not set 1167# CONFIG_SENSORS_W83627EHF is not set
1168# CONFIG_SENSORS_LIS3_I2C is not set
1129# CONFIG_THERMAL is not set 1169# CONFIG_THERMAL is not set
1130# CONFIG_WATCHDOG is not set 1170# CONFIG_WATCHDOG is not set
1131CONFIG_SSB_POSSIBLE=y 1171CONFIG_SSB_POSSIBLE=y
@@ -1144,11 +1184,13 @@ CONFIG_SSB_POSSIBLE=y
1144# CONFIG_TWL4030_CORE is not set 1184# CONFIG_TWL4030_CORE is not set
1145# CONFIG_MFD_TMIO is not set 1185# CONFIG_MFD_TMIO is not set
1146# CONFIG_PMIC_DA903X is not set 1186# CONFIG_PMIC_DA903X is not set
1187# CONFIG_PMIC_ADP5520 is not set
1147# CONFIG_MFD_WM8400 is not set 1188# CONFIG_MFD_WM8400 is not set
1148# CONFIG_MFD_WM831X is not set 1189# CONFIG_MFD_WM831X is not set
1149# CONFIG_MFD_WM8350_I2C is not set 1190# CONFIG_MFD_WM8350_I2C is not set
1150# CONFIG_MFD_PCF50633 is not set 1191# CONFIG_MFD_PCF50633 is not set
1151# CONFIG_AB3100_CORE is not set 1192# CONFIG_AB3100_CORE is not set
1193# CONFIG_MFD_88PM8607 is not set
1152# CONFIG_REGULATOR is not set 1194# CONFIG_REGULATOR is not set
1153# CONFIG_MEDIA_SUPPORT is not set 1195# CONFIG_MEDIA_SUPPORT is not set
1154 1196
@@ -1250,6 +1292,7 @@ CONFIG_USB_MON=y
1250CONFIG_USB_EHCI_HCD=y 1292CONFIG_USB_EHCI_HCD=y
1251# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1293# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1252# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1294# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1295# CONFIG_XPS_USB_HCD_XILINX is not set
1253CONFIG_USB_EHCI_HCD_PPC_OF=y 1296CONFIG_USB_EHCI_HCD_PPC_OF=y
1254# CONFIG_USB_OXU210HP_HCD is not set 1297# CONFIG_USB_OXU210HP_HCD is not set
1255# CONFIG_USB_ISP116X_HCD is not set 1298# CONFIG_USB_ISP116X_HCD is not set
@@ -1362,6 +1405,7 @@ CONFIG_RTC_DRV_MAX6900=y
1362# CONFIG_RTC_DRV_PCF8563 is not set 1405# CONFIG_RTC_DRV_PCF8563 is not set
1363# CONFIG_RTC_DRV_PCF8583 is not set 1406# CONFIG_RTC_DRV_PCF8583 is not set
1364# CONFIG_RTC_DRV_M41T80 is not set 1407# CONFIG_RTC_DRV_M41T80 is not set
1408# CONFIG_RTC_DRV_BQ32K is not set
1365# CONFIG_RTC_DRV_S35390A is not set 1409# CONFIG_RTC_DRV_S35390A is not set
1366# CONFIG_RTC_DRV_FM3130 is not set 1410# CONFIG_RTC_DRV_FM3130 is not set
1367# CONFIG_RTC_DRV_RX8581 is not set 1411# CONFIG_RTC_DRV_RX8581 is not set
@@ -1383,7 +1427,9 @@ CONFIG_RTC_DRV_MAX6900=y
1383# CONFIG_RTC_DRV_M48T86 is not set 1427# CONFIG_RTC_DRV_M48T86 is not set
1384# CONFIG_RTC_DRV_M48T35 is not set 1428# CONFIG_RTC_DRV_M48T35 is not set
1385# CONFIG_RTC_DRV_M48T59 is not set 1429# CONFIG_RTC_DRV_M48T59 is not set
1430# CONFIG_RTC_DRV_MSM6242 is not set
1386# CONFIG_RTC_DRV_BQ4802 is not set 1431# CONFIG_RTC_DRV_BQ4802 is not set
1432# CONFIG_RTC_DRV_RP5C01 is not set
1387# CONFIG_RTC_DRV_V3020 is not set 1433# CONFIG_RTC_DRV_V3020 is not set
1388 1434
1389# 1435#
@@ -1626,7 +1672,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1626# CONFIG_KEYS is not set 1672# CONFIG_KEYS is not set
1627# CONFIG_SECURITY is not set 1673# CONFIG_SECURITY is not set
1628# CONFIG_SECURITYFS is not set 1674# CONFIG_SECURITYFS is not set
1629# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1675# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1676# CONFIG_DEFAULT_SECURITY_SMACK is not set
1677# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1678CONFIG_DEFAULT_SECURITY_DAC=y
1679CONFIG_DEFAULT_SECURITY=""
1630CONFIG_CRYPTO=y 1680CONFIG_CRYPTO=y
1631 1681
1632# 1682#
diff --git a/arch/powerpc/configs/storcenter_defconfig b/arch/powerpc/configs/storcenter_defconfig
index 524263158fc0..f2f832161463 100644
--- a/arch/powerpc/configs/storcenter_defconfig
+++ b/arch/powerpc/configs/storcenter_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.32-rc5 3# Linux kernel version: 2.6.33-rc3
4# Thu Nov 5 08:20:19 2009 4# Wed Jan 6 09:24:13 2010
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -36,6 +36,7 @@ CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 36# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set 37# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
38CONFIG_IRQ_PER_CPU=y 38CONFIG_IRQ_PER_CPU=y
39CONFIG_NR_IRQS=512
39CONFIG_STACKTRACE_SUPPORT=y 40CONFIG_STACKTRACE_SUPPORT=y
40CONFIG_HAVE_LATENCYTOP_SUPPORT=y 41CONFIG_HAVE_LATENCYTOP_SUPPORT=y
41CONFIG_TRACE_IRQFLAGS_SUPPORT=y 42CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -58,6 +59,7 @@ CONFIG_AUDIT_ARCH=y
58CONFIG_GENERIC_BUG=y 59CONFIG_GENERIC_BUG=y
59CONFIG_DTC=y 60CONFIG_DTC=y
60# CONFIG_DEFAULT_UIMAGE is not set 61# CONFIG_DEFAULT_UIMAGE is not set
62CONFIG_ARCH_HIBERNATION_POSSIBLE=y
61# CONFIG_PPC_DCR_NATIVE is not set 63# CONFIG_PPC_DCR_NATIVE is not set
62# CONFIG_PPC_DCR_MMIO is not set 64# CONFIG_PPC_DCR_MMIO is not set
63CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 65CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
@@ -85,6 +87,7 @@ CONFIG_SYSVIPC_SYSCTL=y
85# 87#
86CONFIG_TREE_RCU=y 88CONFIG_TREE_RCU=y
87# CONFIG_TREE_PREEMPT_RCU is not set 89# CONFIG_TREE_PREEMPT_RCU is not set
90# CONFIG_TINY_RCU is not set
88# CONFIG_RCU_TRACE is not set 91# CONFIG_RCU_TRACE is not set
89CONFIG_RCU_FANOUT=32 92CONFIG_RCU_FANOUT=32
90# CONFIG_RCU_FANOUT_EXACT is not set 93# CONFIG_RCU_FANOUT_EXACT is not set
@@ -167,14 +170,41 @@ CONFIG_LBDAF=y
167# IO Schedulers 170# IO Schedulers
168# 171#
169CONFIG_IOSCHED_NOOP=y 172CONFIG_IOSCHED_NOOP=y
170CONFIG_IOSCHED_AS=y
171CONFIG_IOSCHED_DEADLINE=y 173CONFIG_IOSCHED_DEADLINE=y
172CONFIG_IOSCHED_CFQ=y 174CONFIG_IOSCHED_CFQ=y
173# CONFIG_DEFAULT_AS is not set
174# CONFIG_DEFAULT_DEADLINE is not set 175# CONFIG_DEFAULT_DEADLINE is not set
175CONFIG_DEFAULT_CFQ=y 176CONFIG_DEFAULT_CFQ=y
176# CONFIG_DEFAULT_NOOP is not set 177# CONFIG_DEFAULT_NOOP is not set
177CONFIG_DEFAULT_IOSCHED="cfq" 178CONFIG_DEFAULT_IOSCHED="cfq"
179# CONFIG_INLINE_SPIN_TRYLOCK is not set
180# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
181# CONFIG_INLINE_SPIN_LOCK is not set
182# CONFIG_INLINE_SPIN_LOCK_BH is not set
183# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
184# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
185CONFIG_INLINE_SPIN_UNLOCK=y
186# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
187CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
188# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
189# CONFIG_INLINE_READ_TRYLOCK is not set
190# CONFIG_INLINE_READ_LOCK is not set
191# CONFIG_INLINE_READ_LOCK_BH is not set
192# CONFIG_INLINE_READ_LOCK_IRQ is not set
193# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
194CONFIG_INLINE_READ_UNLOCK=y
195# CONFIG_INLINE_READ_UNLOCK_BH is not set
196CONFIG_INLINE_READ_UNLOCK_IRQ=y
197# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
198# CONFIG_INLINE_WRITE_TRYLOCK is not set
199# CONFIG_INLINE_WRITE_LOCK is not set
200# CONFIG_INLINE_WRITE_LOCK_BH is not set
201# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
202# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
203CONFIG_INLINE_WRITE_UNLOCK=y
204# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
205CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
206# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
207# CONFIG_MUTEX_SPIN_ON_OWNER is not set
178# CONFIG_FREEZER is not set 208# CONFIG_FREEZER is not set
179 209
180# 210#
@@ -201,6 +231,8 @@ CONFIG_STORCENTER=y
201CONFIG_MPC10X_BRIDGE=y 231CONFIG_MPC10X_BRIDGE=y
202CONFIG_MPC10X_OPENPIC=y 232CONFIG_MPC10X_OPENPIC=y
203# CONFIG_MPC10X_STORE_GATHERING is not set 233# CONFIG_MPC10X_STORE_GATHERING is not set
234# CONFIG_GAMECUBE is not set
235# CONFIG_WII is not set
204# CONFIG_AMIGAONE is not set 236# CONFIG_AMIGAONE is not set
205CONFIG_PPC_OF_BOOT_TRAMPOLINE=y 237CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
206# CONFIG_IPIC is not set 238# CONFIG_IPIC is not set
@@ -246,6 +278,7 @@ CONFIG_ARCH_HAS_WALK_MEMORY=y
246CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y 278CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
247# CONFIG_KEXEC is not set 279# CONFIG_KEXEC is not set
248# CONFIG_CRASH_DUMP is not set 280# CONFIG_CRASH_DUMP is not set
281CONFIG_SPARSE_IRQ=y
249CONFIG_MAX_ACTIVE_REGIONS=32 282CONFIG_MAX_ACTIVE_REGIONS=32
250CONFIG_ARCH_FLATMEM_ENABLE=y 283CONFIG_ARCH_FLATMEM_ENABLE=y
251CONFIG_ARCH_POPULATES_NODE_MAP=y 284CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -262,8 +295,6 @@ CONFIG_MIGRATION=y
262CONFIG_ZONE_DMA_FLAG=1 295CONFIG_ZONE_DMA_FLAG=1
263CONFIG_BOUNCE=y 296CONFIG_BOUNCE=y
264CONFIG_VIRT_TO_BUS=y 297CONFIG_VIRT_TO_BUS=y
265CONFIG_HAVE_MLOCK=y
266CONFIG_HAVE_MLOCKED_PAGE_BIT=y
267# CONFIG_KSM is not set 298# CONFIG_KSM is not set
268CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 299CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
269CONFIG_PPC_4K_PAGES=y 300CONFIG_PPC_4K_PAGES=y
@@ -384,9 +415,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
384# CONFIG_AF_RXRPC is not set 415# CONFIG_AF_RXRPC is not set
385CONFIG_WIRELESS=y 416CONFIG_WIRELESS=y
386# CONFIG_CFG80211 is not set 417# CONFIG_CFG80211 is not set
387CONFIG_CFG80211_DEFAULT_PS_VALUE=0
388CONFIG_WIRELESS_OLD_REGULATORY=y
389# CONFIG_WIRELESS_EXT is not set
390# CONFIG_LIB80211 is not set 418# CONFIG_LIB80211 is not set
391 419
392# 420#
@@ -507,6 +535,10 @@ CONFIG_BLK_DEV=y
507# CONFIG_BLK_DEV_UMEM is not set 535# CONFIG_BLK_DEV_UMEM is not set
508# CONFIG_BLK_DEV_COW_COMMON is not set 536# CONFIG_BLK_DEV_COW_COMMON is not set
509# CONFIG_BLK_DEV_LOOP is not set 537# CONFIG_BLK_DEV_LOOP is not set
538
539#
540# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
541#
510# CONFIG_BLK_DEV_NBD is not set 542# CONFIG_BLK_DEV_NBD is not set
511# CONFIG_BLK_DEV_SX8 is not set 543# CONFIG_BLK_DEV_SX8 is not set
512# CONFIG_BLK_DEV_UB is not set 544# CONFIG_BLK_DEV_UB is not set
@@ -515,6 +547,7 @@ CONFIG_BLK_DEV=y
515# CONFIG_ATA_OVER_ETH is not set 547# CONFIG_ATA_OVER_ETH is not set
516# CONFIG_BLK_DEV_HD is not set 548# CONFIG_BLK_DEV_HD is not set
517CONFIG_MISC_DEVICES=y 549CONFIG_MISC_DEVICES=y
550# CONFIG_AD525X_DPOT is not set
518# CONFIG_PHANTOM is not set 551# CONFIG_PHANTOM is not set
519# CONFIG_SGI_IOC4 is not set 552# CONFIG_SGI_IOC4 is not set
520# CONFIG_TIFM_CORE is not set 553# CONFIG_TIFM_CORE is not set
@@ -522,6 +555,7 @@ CONFIG_MISC_DEVICES=y
522# CONFIG_ENCLOSURE_SERVICES is not set 555# CONFIG_ENCLOSURE_SERVICES is not set
523# CONFIG_HP_ILO is not set 556# CONFIG_HP_ILO is not set
524# CONFIG_ISL29003 is not set 557# CONFIG_ISL29003 is not set
558# CONFIG_DS1682 is not set
525# CONFIG_C2PORT is not set 559# CONFIG_C2PORT is not set
526 560
527# 561#
@@ -628,7 +662,9 @@ CONFIG_SCSI_LOWLEVEL=y
628# CONFIG_SCSI_BNX2_ISCSI is not set 662# CONFIG_SCSI_BNX2_ISCSI is not set
629# CONFIG_BE2ISCSI is not set 663# CONFIG_BE2ISCSI is not set
630# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 664# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
665# CONFIG_SCSI_HPSA is not set
631# CONFIG_SCSI_3W_9XXX is not set 666# CONFIG_SCSI_3W_9XXX is not set
667# CONFIG_SCSI_3W_SAS is not set
632# CONFIG_SCSI_ACARD is not set 668# CONFIG_SCSI_ACARD is not set
633# CONFIG_SCSI_AACRAID is not set 669# CONFIG_SCSI_AACRAID is not set
634# CONFIG_SCSI_AIC7XXX is not set 670# CONFIG_SCSI_AIC7XXX is not set
@@ -666,6 +702,7 @@ CONFIG_SCSI_LOWLEVEL=y
666# CONFIG_SCSI_NSP32 is not set 702# CONFIG_SCSI_NSP32 is not set
667# CONFIG_SCSI_DEBUG is not set 703# CONFIG_SCSI_DEBUG is not set
668# CONFIG_SCSI_PMCRAID is not set 704# CONFIG_SCSI_PMCRAID is not set
705# CONFIG_SCSI_PM8001 is not set
669# CONFIG_SCSI_SRP is not set 706# CONFIG_SCSI_SRP is not set
670# CONFIG_SCSI_BFA_FC is not set 707# CONFIG_SCSI_BFA_FC is not set
671# CONFIG_SCSI_DH is not set 708# CONFIG_SCSI_DH is not set
@@ -695,7 +732,7 @@ CONFIG_MD_RAID6_PQ=y
695# 732#
696 733
697# 734#
698# See the help texts for more information. 735# The newer stack is recommended.
699# 736#
700# CONFIG_FIREWIRE is not set 737# CONFIG_FIREWIRE is not set
701# CONFIG_IEEE1394 is not set 738# CONFIG_IEEE1394 is not set
@@ -741,8 +778,11 @@ CONFIG_R8169=y
741# CONFIG_NETDEV_10000 is not set 778# CONFIG_NETDEV_10000 is not set
742# CONFIG_TR is not set 779# CONFIG_TR is not set
743CONFIG_WLAN=y 780CONFIG_WLAN=y
744# CONFIG_WLAN_PRE80211 is not set 781# CONFIG_AIRO is not set
745# CONFIG_WLAN_80211 is not set 782# CONFIG_ATMEL is not set
783# CONFIG_PRISM54 is not set
784# CONFIG_USB_ZD1201 is not set
785# CONFIG_HOSTAP is not set
746 786
747# 787#
748# Enable WiMAX (Networking options) to see the WiMAX drivers 788# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -765,6 +805,7 @@ CONFIG_WLAN=y
765# CONFIG_NETCONSOLE is not set 805# CONFIG_NETCONSOLE is not set
766# CONFIG_NETPOLL is not set 806# CONFIG_NETPOLL is not set
767# CONFIG_NET_POLL_CONTROLLER is not set 807# CONFIG_NET_POLL_CONTROLLER is not set
808# CONFIG_VMXNET3 is not set
768# CONFIG_ISDN is not set 809# CONFIG_ISDN is not set
769# CONFIG_PHONE is not set 810# CONFIG_PHONE is not set
770 811
@@ -805,6 +846,7 @@ CONFIG_SERIAL_CORE=y
805CONFIG_SERIAL_CORE_CONSOLE=y 846CONFIG_SERIAL_CORE_CONSOLE=y
806# CONFIG_SERIAL_JSM is not set 847# CONFIG_SERIAL_JSM is not set
807# CONFIG_SERIAL_OF_PLATFORM is not set 848# CONFIG_SERIAL_OF_PLATFORM is not set
849# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
808CONFIG_UNIX98_PTYS=y 850CONFIG_UNIX98_PTYS=y
809# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 851# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
810CONFIG_LEGACY_PTYS=y 852CONFIG_LEGACY_PTYS=y
@@ -862,11 +904,6 @@ CONFIG_I2C_MPC=y
862# CONFIG_I2C_TINY_USB is not set 904# CONFIG_I2C_TINY_USB is not set
863 905
864# 906#
865# Graphics adapter I2C/DDC channel drivers
866#
867# CONFIG_I2C_VOODOO3 is not set
868
869#
870# Other I2C/SMBus bus drivers 907# Other I2C/SMBus bus drivers
871# 908#
872# CONFIG_I2C_PCA_PLATFORM is not set 909# CONFIG_I2C_PCA_PLATFORM is not set
@@ -875,7 +912,6 @@ CONFIG_I2C_MPC=y
875# 912#
876# Miscellaneous I2C Chip support 913# Miscellaneous I2C Chip support
877# 914#
878# CONFIG_DS1682 is not set
879# CONFIG_SENSORS_TSL2550 is not set 915# CONFIG_SENSORS_TSL2550 is not set
880# CONFIG_I2C_DEBUG_CORE is not set 916# CONFIG_I2C_DEBUG_CORE is not set
881# CONFIG_I2C_DEBUG_ALGO is not set 917# CONFIG_I2C_DEBUG_ALGO is not set
@@ -910,11 +946,13 @@ CONFIG_SSB_POSSIBLE=y
910# CONFIG_TWL4030_CORE is not set 946# CONFIG_TWL4030_CORE is not set
911# CONFIG_MFD_TMIO is not set 947# CONFIG_MFD_TMIO is not set
912# CONFIG_PMIC_DA903X is not set 948# CONFIG_PMIC_DA903X is not set
949# CONFIG_PMIC_ADP5520 is not set
913# CONFIG_MFD_WM8400 is not set 950# CONFIG_MFD_WM8400 is not set
914# CONFIG_MFD_WM831X is not set 951# CONFIG_MFD_WM831X is not set
915# CONFIG_MFD_WM8350_I2C is not set 952# CONFIG_MFD_WM8350_I2C is not set
916# CONFIG_MFD_PCF50633 is not set 953# CONFIG_MFD_PCF50633 is not set
917# CONFIG_AB3100_CORE is not set 954# CONFIG_AB3100_CORE is not set
955# CONFIG_MFD_88PM8607 is not set
918# CONFIG_REGULATOR is not set 956# CONFIG_REGULATOR is not set
919# CONFIG_MEDIA_SUPPORT is not set 957# CONFIG_MEDIA_SUPPORT is not set
920 958
@@ -963,6 +1001,7 @@ CONFIG_USB_DEVICE_CLASS=y
963CONFIG_USB_EHCI_HCD=y 1001CONFIG_USB_EHCI_HCD=y
964# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1002# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
965# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1003# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1004# CONFIG_XPS_USB_HCD_XILINX is not set
966# CONFIG_USB_EHCI_FSL is not set 1005# CONFIG_USB_EHCI_FSL is not set
967CONFIG_USB_EHCI_HCD_PPC_OF=y 1006CONFIG_USB_EHCI_HCD_PPC_OF=y
968# CONFIG_USB_OXU210HP_HCD is not set 1007# CONFIG_USB_OXU210HP_HCD is not set
@@ -1087,6 +1126,7 @@ CONFIG_RTC_DRV_DS1307=y
1087# CONFIG_RTC_DRV_PCF8563 is not set 1126# CONFIG_RTC_DRV_PCF8563 is not set
1088# CONFIG_RTC_DRV_PCF8583 is not set 1127# CONFIG_RTC_DRV_PCF8583 is not set
1089# CONFIG_RTC_DRV_M41T80 is not set 1128# CONFIG_RTC_DRV_M41T80 is not set
1129# CONFIG_RTC_DRV_BQ32K is not set
1090# CONFIG_RTC_DRV_S35390A is not set 1130# CONFIG_RTC_DRV_S35390A is not set
1091# CONFIG_RTC_DRV_FM3130 is not set 1131# CONFIG_RTC_DRV_FM3130 is not set
1092# CONFIG_RTC_DRV_RX8581 is not set 1132# CONFIG_RTC_DRV_RX8581 is not set
@@ -1108,7 +1148,9 @@ CONFIG_RTC_DRV_DS1307=y
1108# CONFIG_RTC_DRV_M48T86 is not set 1148# CONFIG_RTC_DRV_M48T86 is not set
1109# CONFIG_RTC_DRV_M48T35 is not set 1149# CONFIG_RTC_DRV_M48T35 is not set
1110# CONFIG_RTC_DRV_M48T59 is not set 1150# CONFIG_RTC_DRV_M48T59 is not set
1151# CONFIG_RTC_DRV_MSM6242 is not set
1111# CONFIG_RTC_DRV_BQ4802 is not set 1152# CONFIG_RTC_DRV_BQ4802 is not set
1153# CONFIG_RTC_DRV_RP5C01 is not set
1112# CONFIG_RTC_DRV_V3020 is not set 1154# CONFIG_RTC_DRV_V3020 is not set
1113 1155
1114# 1156#
@@ -1322,7 +1364,7 @@ CONFIG_FRAME_WARN=1024
1322# CONFIG_DEBUG_KERNEL is not set 1364# CONFIG_DEBUG_KERNEL is not set
1323# CONFIG_SLUB_DEBUG_ON is not set 1365# CONFIG_SLUB_DEBUG_ON is not set
1324# CONFIG_SLUB_STATS is not set 1366# CONFIG_SLUB_STATS is not set
1325# CONFIG_DEBUG_BUGVERBOSE is not set 1367CONFIG_DEBUG_BUGVERBOSE=y
1326# CONFIG_DEBUG_MEMORY_INIT is not set 1368# CONFIG_DEBUG_MEMORY_INIT is not set
1327# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1369# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1328# CONFIG_LATENCYTOP is not set 1370# CONFIG_LATENCYTOP is not set
@@ -1349,7 +1391,11 @@ CONFIG_PRINT_STACK_DEPTH=64
1349# CONFIG_KEYS is not set 1391# CONFIG_KEYS is not set
1350# CONFIG_SECURITY is not set 1392# CONFIG_SECURITY is not set
1351# CONFIG_SECURITYFS is not set 1393# CONFIG_SECURITYFS is not set
1352# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1394# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1395# CONFIG_DEFAULT_SECURITY_SMACK is not set
1396# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1397CONFIG_DEFAULT_SECURITY_DAC=y
1398CONFIG_DEFAULT_SECURITY=""
1353CONFIG_XOR_BLOCKS=y 1399CONFIG_XOR_BLOCKS=y
1354CONFIG_ASYNC_CORE=y 1400CONFIG_ASYNC_CORE=y
1355CONFIG_ASYNC_MEMCPY=y 1401CONFIG_ASYNC_MEMCPY=y
diff --git a/arch/powerpc/include/asm/elf.h b/arch/powerpc/include/asm/elf.h
index 17828ad411eb..c376eda15313 100644
--- a/arch/powerpc/include/asm/elf.h
+++ b/arch/powerpc/include/asm/elf.h
@@ -235,14 +235,10 @@ typedef elf_vrregset_t elf_fpxregset_t;
235#ifdef __powerpc64__ 235#ifdef __powerpc64__
236# define SET_PERSONALITY(ex) \ 236# define SET_PERSONALITY(ex) \
237do { \ 237do { \
238 unsigned long new_flags = 0; \
239 if ((ex).e_ident[EI_CLASS] == ELFCLASS32) \ 238 if ((ex).e_ident[EI_CLASS] == ELFCLASS32) \
240 new_flags = _TIF_32BIT; \ 239 set_thread_flag(TIF_32BIT); \
241 if ((current_thread_info()->flags & _TIF_32BIT) \
242 != new_flags) \
243 set_thread_flag(TIF_ABI_PENDING); \
244 else \ 240 else \
245 clear_thread_flag(TIF_ABI_PENDING); \ 241 clear_thread_flag(TIF_32BIT); \
246 if (personality(current->personality) != PER_LINUX32) \ 242 if (personality(current->personality) != PER_LINUX32) \
247 set_personality(PER_LINUX | \ 243 set_personality(PER_LINUX | \
248 (current->personality & (~PER_MASK))); \ 244 (current->personality & (~PER_MASK))); \
diff --git a/arch/powerpc/include/asm/thread_info.h b/arch/powerpc/include/asm/thread_info.h
index c8b329255678..aa9d383a1c09 100644
--- a/arch/powerpc/include/asm/thread_info.h
+++ b/arch/powerpc/include/asm/thread_info.h
@@ -111,7 +111,6 @@ static inline struct thread_info *current_thread_info(void)
111#define TIF_NOTIFY_RESUME 13 /* callback before returning to user */ 111#define TIF_NOTIFY_RESUME 13 /* callback before returning to user */
112#define TIF_FREEZE 14 /* Freezing for suspend */ 112#define TIF_FREEZE 14 /* Freezing for suspend */
113#define TIF_RUNLATCH 15 /* Is the runlatch enabled? */ 113#define TIF_RUNLATCH 15 /* Is the runlatch enabled? */
114#define TIF_ABI_PENDING 16 /* 32/64 bit switch needed */
115 114
116/* as above, but as bit values */ 115/* as above, but as bit values */
117#define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) 116#define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE)
@@ -129,7 +128,6 @@ static inline struct thread_info *current_thread_info(void)
129#define _TIF_NOTIFY_RESUME (1<<TIF_NOTIFY_RESUME) 128#define _TIF_NOTIFY_RESUME (1<<TIF_NOTIFY_RESUME)
130#define _TIF_FREEZE (1<<TIF_FREEZE) 129#define _TIF_FREEZE (1<<TIF_FREEZE)
131#define _TIF_RUNLATCH (1<<TIF_RUNLATCH) 130#define _TIF_RUNLATCH (1<<TIF_RUNLATCH)
132#define _TIF_ABI_PENDING (1<<TIF_ABI_PENDING)
133#define _TIF_SYSCALL_T_OR_A (_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SECCOMP) 131#define _TIF_SYSCALL_T_OR_A (_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SECCOMP)
134 132
135#define _TIF_USER_WORK_MASK (_TIF_SIGPENDING | _TIF_NEED_RESCHED | \ 133#define _TIF_USER_WORK_MASK (_TIF_SIGPENDING | _TIF_NEED_RESCHED | \
diff --git a/arch/powerpc/include/asm/topology.h b/arch/powerpc/include/asm/topology.h
index 22f738d12ad9..bbf89701d7a4 100644
--- a/arch/powerpc/include/asm/topology.h
+++ b/arch/powerpc/include/asm/topology.h
@@ -17,7 +17,9 @@ static inline int cpu_to_node(int cpu)
17 17
18#define parent_node(node) (node) 18#define parent_node(node) (node)
19 19
20#define cpumask_of_node(node) (&numa_cpumask_lookup_table[node]) 20#define cpumask_of_node(node) ((node) == -1 ? \
21 cpu_all_mask : \
22 &numa_cpumask_lookup_table[node])
21 23
22int of_node_to_nid(struct device_node *device); 24int of_node_to_nid(struct device_node *device);
23 25
diff --git a/arch/powerpc/kernel/head_8xx.S b/arch/powerpc/kernel/head_8xx.S
index 678f98cd5e64..3ef743fa5d7c 100644
--- a/arch/powerpc/kernel/head_8xx.S
+++ b/arch/powerpc/kernel/head_8xx.S
@@ -542,11 +542,11 @@ DARFixed:/* Return from dcbx instruction bug workaround, r10 holds value of DAR
542FixupDAR:/* Entry point for dcbx workaround. */ 542FixupDAR:/* Entry point for dcbx workaround. */
543 /* fetch instruction from memory. */ 543 /* fetch instruction from memory. */
544 mfspr r10, SPRN_SRR0 544 mfspr r10, SPRN_SRR0
545 andis. r11, r10, 0x8000 /* Address >= 0x80000000 */
545 DO_8xx_CPU6(0x3780, r3) 546 DO_8xx_CPU6(0x3780, r3)
546 mtspr SPRN_MD_EPN, r10 547 mtspr SPRN_MD_EPN, r10
547 mfspr r11, SPRN_M_TWB /* Get level 1 table entry address */ 548 mfspr r11, SPRN_M_TWB /* Get level 1 table entry address */
548 cmplwi cr0, r11, 0x0800 549 beq- 3f /* Branch if user space */
549 blt- 3f /* Branch if user space */
550 lis r11, (swapper_pg_dir-PAGE_OFFSET)@h 550 lis r11, (swapper_pg_dir-PAGE_OFFSET)@h
551 ori r11, r11, (swapper_pg_dir-PAGE_OFFSET)@l 551 ori r11, r11, (swapper_pg_dir-PAGE_OFFSET)@l
552 rlwimi r11, r10, 32-20, 0xffc /* r11 = r11&~0xffc|(r10>>20)&0xffc */ 552 rlwimi r11, r10, 32-20, 0xffc /* r11 = r11&~0xffc|(r10>>20)&0xffc */
@@ -768,12 +768,12 @@ start_here:
768 */ 768 */
769initial_mmu: 769initial_mmu:
770 tlbia /* Invalidate all TLB entries */ 770 tlbia /* Invalidate all TLB entries */
771#ifdef CONFIG_PIN_TLB 771/* Always pin the first 8 MB ITLB to prevent ITLB
772 misses while mucking around with SRR0/SRR1 in asm
773*/
772 lis r8, MI_RSV4I@h 774 lis r8, MI_RSV4I@h
773 ori r8, r8, 0x1c00 775 ori r8, r8, 0x1c00
774#else 776
775 li r8, 0
776#endif
777 mtspr SPRN_MI_CTR, r8 /* Set instruction MMU control */ 777 mtspr SPRN_MI_CTR, r8 /* Set instruction MMU control */
778 778
779#ifdef CONFIG_PIN_TLB 779#ifdef CONFIG_PIN_TLB
diff --git a/arch/powerpc/kernel/pci_of_scan.c b/arch/powerpc/kernel/pci_of_scan.c
index 7311fdfb9bf8..4aa17401657b 100644
--- a/arch/powerpc/kernel/pci_of_scan.c
+++ b/arch/powerpc/kernel/pci_of_scan.c
@@ -123,6 +123,7 @@ struct pci_dev *of_create_pci_dev(struct device_node *node,
123{ 123{
124 struct pci_dev *dev; 124 struct pci_dev *dev;
125 const char *type; 125 const char *type;
126 struct pci_slot *slot;
126 127
127 dev = alloc_pci_dev(); 128 dev = alloc_pci_dev();
128 if (!dev) 129 if (!dev)
@@ -140,6 +141,11 @@ struct pci_dev *of_create_pci_dev(struct device_node *node,
140 dev->devfn = devfn; 141 dev->devfn = devfn;
141 dev->multifunction = 0; /* maybe a lie? */ 142 dev->multifunction = 0; /* maybe a lie? */
142 dev->needs_freset = 0; /* pcie fundamental reset required */ 143 dev->needs_freset = 0; /* pcie fundamental reset required */
144 set_pcie_port_type(dev);
145
146 list_for_each_entry(slot, &dev->bus->slots, list)
147 if (PCI_SLOT(dev->devfn) == slot->number)
148 dev->slot = slot;
143 149
144 dev->vendor = get_int_prop(node, "vendor-id", 0xffff); 150 dev->vendor = get_int_prop(node, "vendor-id", 0xffff);
145 dev->device = get_int_prop(node, "device-id", 0xffff); 151 dev->device = get_int_prop(node, "device-id", 0xffff);
@@ -160,10 +166,14 @@ struct pci_dev *of_create_pci_dev(struct device_node *node,
160 dev->error_state = pci_channel_io_normal; 166 dev->error_state = pci_channel_io_normal;
161 dev->dma_mask = 0xffffffff; 167 dev->dma_mask = 0xffffffff;
162 168
169 /* Early fixups, before probing the BARs */
170 pci_fixup_device(pci_fixup_early, dev);
171
163 if (!strcmp(type, "pci") || !strcmp(type, "pciex")) { 172 if (!strcmp(type, "pci") || !strcmp(type, "pciex")) {
164 /* a PCI-PCI bridge */ 173 /* a PCI-PCI bridge */
165 dev->hdr_type = PCI_HEADER_TYPE_BRIDGE; 174 dev->hdr_type = PCI_HEADER_TYPE_BRIDGE;
166 dev->rom_base_reg = PCI_ROM_ADDRESS1; 175 dev->rom_base_reg = PCI_ROM_ADDRESS1;
176 set_pcie_hotplug_bridge(dev);
167 } else if (!strcmp(type, "cardbus")) { 177 } else if (!strcmp(type, "cardbus")) {
168 dev->hdr_type = PCI_HEADER_TYPE_CARDBUS; 178 dev->hdr_type = PCI_HEADER_TYPE_CARDBUS;
169 } else { 179 } else {
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c
index c930ac38e59f..7b816daf3eba 100644
--- a/arch/powerpc/kernel/process.c
+++ b/arch/powerpc/kernel/process.c
@@ -554,18 +554,6 @@ void exit_thread(void)
554 554
555void flush_thread(void) 555void flush_thread(void)
556{ 556{
557#ifdef CONFIG_PPC64
558 struct thread_info *t = current_thread_info();
559
560 if (test_ti_thread_flag(t, TIF_ABI_PENDING)) {
561 clear_ti_thread_flag(t, TIF_ABI_PENDING);
562 if (test_ti_thread_flag(t, TIF_32BIT))
563 clear_ti_thread_flag(t, TIF_32BIT);
564 else
565 set_ti_thread_flag(t, TIF_32BIT);
566 }
567#endif
568
569 discard_lazy_cpu_state(); 557 discard_lazy_cpu_state();
570 558
571 if (current->thread.dabr) { 559 if (current->thread.dabr) {
diff --git a/arch/powerpc/kernel/rtas-proc.c b/arch/powerpc/kernel/rtas-proc.c
index 1be9fe38bcb5..8777fb02349f 100644
--- a/arch/powerpc/kernel/rtas-proc.c
+++ b/arch/powerpc/kernel/rtas-proc.c
@@ -262,19 +262,19 @@ static int __init proc_rtas_init(void)
262 if (rtas_node == NULL) 262 if (rtas_node == NULL)
263 return -ENODEV; 263 return -ENODEV;
264 264
265 proc_create("ppc64/rtas/progress", S_IRUGO|S_IWUSR, NULL, 265 proc_create("powerpc/rtas/progress", S_IRUGO|S_IWUSR, NULL,
266 &ppc_rtas_progress_operations); 266 &ppc_rtas_progress_operations);
267 proc_create("ppc64/rtas/clock", S_IRUGO|S_IWUSR, NULL, 267 proc_create("powerpc/rtas/clock", S_IRUGO|S_IWUSR, NULL,
268 &ppc_rtas_clock_operations); 268 &ppc_rtas_clock_operations);
269 proc_create("ppc64/rtas/poweron", S_IWUSR|S_IRUGO, NULL, 269 proc_create("powerpc/rtas/poweron", S_IWUSR|S_IRUGO, NULL,
270 &ppc_rtas_poweron_operations); 270 &ppc_rtas_poweron_operations);
271 proc_create("ppc64/rtas/sensors", S_IRUGO, NULL, 271 proc_create("powerpc/rtas/sensors", S_IRUGO, NULL,
272 &ppc_rtas_sensors_operations); 272 &ppc_rtas_sensors_operations);
273 proc_create("ppc64/rtas/frequency", S_IWUSR|S_IRUGO, NULL, 273 proc_create("powerpc/rtas/frequency", S_IWUSR|S_IRUGO, NULL,
274 &ppc_rtas_tone_freq_operations); 274 &ppc_rtas_tone_freq_operations);
275 proc_create("ppc64/rtas/volume", S_IWUSR|S_IRUGO, NULL, 275 proc_create("powerpc/rtas/volume", S_IWUSR|S_IRUGO, NULL,
276 &ppc_rtas_tone_volume_operations); 276 &ppc_rtas_tone_volume_operations);
277 proc_create("ppc64/rtas/rmo_buffer", S_IRUSR, NULL, 277 proc_create("powerpc/rtas/rmo_buffer", S_IRUSR, NULL,
278 &ppc_rtas_rmo_buf_ops); 278 &ppc_rtas_rmo_buf_ops);
279 return 0; 279 return 0;
280} 280}
diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c
index a521fb8a40ee..c2ee14498077 100644
--- a/arch/powerpc/kernel/smp.c
+++ b/arch/powerpc/kernel/smp.c
@@ -619,4 +619,16 @@ void __cpu_die(unsigned int cpu)
619 if (smp_ops->cpu_die) 619 if (smp_ops->cpu_die)
620 smp_ops->cpu_die(cpu); 620 smp_ops->cpu_die(cpu);
621} 621}
622
623static DEFINE_MUTEX(powerpc_cpu_hotplug_driver_mutex);
624
625void cpu_hotplug_driver_lock()
626{
627 mutex_lock(&powerpc_cpu_hotplug_driver_mutex);
628}
629
630void cpu_hotplug_driver_unlock()
631{
632 mutex_unlock(&powerpc_cpu_hotplug_driver_mutex);
633}
622#endif 634#endif
diff --git a/arch/powerpc/kernel/swsusp_32.S b/arch/powerpc/kernel/swsusp_32.S
index b47d8ceffb52..b0754e237438 100644
--- a/arch/powerpc/kernel/swsusp_32.S
+++ b/arch/powerpc/kernel/swsusp_32.S
@@ -303,7 +303,7 @@ END_MMU_FTR_SECTION_IFSET(MMU_FTR_USE_HIGH_BATS)
303 lis r4,0x1000 303 lis r4,0x1000
3041: addic. r4,r4,-0x1000 3041: addic. r4,r4,-0x1000
305 tlbie r4 305 tlbie r4
306 blt 1b 306 bgt 1b
307 sync 307 sync
308 308
309 /* restore the MSR and turn on the MMU */ 309 /* restore the MSR and turn on the MMU */
diff --git a/arch/powerpc/kernel/time.c b/arch/powerpc/kernel/time.c
index 9ba2cc88591d..6c6093d67f30 100644
--- a/arch/powerpc/kernel/time.c
+++ b/arch/powerpc/kernel/time.c
@@ -903,12 +903,21 @@ static void decrementer_set_mode(enum clock_event_mode mode,
903 decrementer_set_next_event(DECREMENTER_MAX, dev); 903 decrementer_set_next_event(DECREMENTER_MAX, dev);
904} 904}
905 905
906static inline uint64_t div_sc64(unsigned long ticks, unsigned long nsec,
907 int shift)
908{
909 uint64_t tmp = ((uint64_t)ticks) << shift;
910
911 do_div(tmp, nsec);
912 return tmp;
913}
914
906static void __init setup_clockevent_multiplier(unsigned long hz) 915static void __init setup_clockevent_multiplier(unsigned long hz)
907{ 916{
908 u64 mult, shift = 32; 917 u64 mult, shift = 32;
909 918
910 while (1) { 919 while (1) {
911 mult = div_sc(hz, NSEC_PER_SEC, shift); 920 mult = div_sc64(hz, NSEC_PER_SEC, shift);
912 if (mult && (mult >> 32UL) == 0UL) 921 if (mult && (mult >> 32UL) == 0UL)
913 break; 922 break;
914 923
diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
index 07703f72330e..6fb6e8aa3890 100644
--- a/arch/powerpc/kvm/Kconfig
+++ b/arch/powerpc/kvm/Kconfig
@@ -53,7 +53,7 @@ config KVM_440
53 53
54config KVM_EXIT_TIMING 54config KVM_EXIT_TIMING
55 bool "Detailed exit timing" 55 bool "Detailed exit timing"
56 depends on KVM 56 depends on KVM_440 || KVM_E500
57 ---help--- 57 ---help---
58 Calculate elapsed time for every exit/enter cycle. A per-vcpu 58 Calculate elapsed time for every exit/enter cycle. A per-vcpu
59 report is available in debugfs kvm/vm#_vcpu#_timing. 59 report is available in debugfs kvm/vm#_vcpu#_timing.
diff --git a/arch/powerpc/mm/mmap_64.c b/arch/powerpc/mm/mmap_64.c
index 0d957a4c70fe..5a783d8e8e8e 100644
--- a/arch/powerpc/mm/mmap_64.c
+++ b/arch/powerpc/mm/mmap_64.c
@@ -47,7 +47,7 @@ static inline int mmap_is_legacy(void)
47 if (current->personality & ADDR_COMPAT_LAYOUT) 47 if (current->personality & ADDR_COMPAT_LAYOUT)
48 return 1; 48 return 1;
49 49
50 if (current->signal->rlim[RLIMIT_STACK].rlim_cur == RLIM_INFINITY) 50 if (rlimit(RLIMIT_STACK) == RLIM_INFINITY)
51 return 1; 51 return 1;
52 52
53 return sysctl_legacy_va_layout; 53 return sysctl_legacy_va_layout;
@@ -77,7 +77,7 @@ static unsigned long mmap_rnd(void)
77 77
78static inline unsigned long mmap_base(void) 78static inline unsigned long mmap_base(void)
79{ 79{
80 unsigned long gap = current->signal->rlim[RLIMIT_STACK].rlim_cur; 80 unsigned long gap = rlimit(RLIMIT_STACK);
81 81
82 if (gap < MIN_GAP) 82 if (gap < MIN_GAP)
83 gap = MIN_GAP; 83 gap = MIN_GAP;
diff --git a/arch/powerpc/platforms/cell/spufs/coredump.c b/arch/powerpc/platforms/cell/spufs/coredump.c
index c4d4a19235e0..eea120229cdb 100644
--- a/arch/powerpc/platforms/cell/spufs/coredump.c
+++ b/arch/powerpc/platforms/cell/spufs/coredump.c
@@ -54,7 +54,7 @@ static ssize_t do_coredump_read(int num, struct spu_context *ctx, void *buffer,
54 */ 54 */
55static int spufs_dump_write(struct file *file, const void *addr, int nr, loff_t *foffset) 55static int spufs_dump_write(struct file *file, const void *addr, int nr, loff_t *foffset)
56{ 56{
57 unsigned long limit = current->signal->rlim[RLIMIT_CORE].rlim_cur; 57 unsigned long limit = rlimit(RLIMIT_CORE);
58 ssize_t written; 58 ssize_t written;
59 59
60 if (*foffset + nr > limit) 60 if (*foffset + nr > limit)
diff --git a/arch/powerpc/platforms/iseries/vio.c b/arch/powerpc/platforms/iseries/vio.c
index 657b72f68493..2aa8b5631beb 100644
--- a/arch/powerpc/platforms/iseries/vio.c
+++ b/arch/powerpc/platforms/iseries/vio.c
@@ -474,6 +474,8 @@ static void __init get_viotape_info(struct device_node *vio_root)
474 struct vio_waitevent we; 474 struct vio_waitevent we;
475 int ret; 475 int ret;
476 476
477 init_completion(&we.com);
478
477 ret = viopath_open(viopath_hostLp, viomajorsubtype_tape, 2); 479 ret = viopath_open(viopath_hostLp, viomajorsubtype_tape, 2);
478 if (ret) { 480 if (ret) {
479 printk(KERN_WARNING "get_viotape_info: " 481 printk(KERN_WARNING "get_viotape_info: "
diff --git a/arch/powerpc/platforms/pseries/dlpar.c b/arch/powerpc/platforms/pseries/dlpar.c
index 67b7a10f9fce..37bce52526da 100644
--- a/arch/powerpc/platforms/pseries/dlpar.c
+++ b/arch/powerpc/platforms/pseries/dlpar.c
@@ -236,7 +236,9 @@ static struct device_node *derive_parent(const char *path)
236 236
237int dlpar_attach_node(struct device_node *dn) 237int dlpar_attach_node(struct device_node *dn)
238{ 238{
239#ifdef CONFIG_PROC_DEVICETREE
239 struct proc_dir_entry *ent; 240 struct proc_dir_entry *ent;
241#endif
240 int rc; 242 int rc;
241 243
242 of_node_set_flag(dn, OF_DYNAMIC); 244 of_node_set_flag(dn, OF_DYNAMIC);
@@ -267,10 +269,10 @@ int dlpar_attach_node(struct device_node *dn)
267 269
268int dlpar_detach_node(struct device_node *dn) 270int dlpar_detach_node(struct device_node *dn)
269{ 271{
272#ifdef CONFIG_PROC_DEVICETREE
270 struct device_node *parent = dn->parent; 273 struct device_node *parent = dn->parent;
271 struct property *prop = dn->properties; 274 struct property *prop = dn->properties;
272 275
273#ifdef CONFIG_PROC_DEVICETREE
274 while (prop) { 276 while (prop) {
275 remove_proc_entry(prop->name, dn->pde); 277 remove_proc_entry(prop->name, dn->pde);
276 prop = prop->next; 278 prop = prop->next;
@@ -344,20 +346,6 @@ int dlpar_release_drc(u32 drc_index)
344 346
345#ifdef CONFIG_ARCH_CPU_PROBE_RELEASE 347#ifdef CONFIG_ARCH_CPU_PROBE_RELEASE
346 348
347static DEFINE_MUTEX(pseries_cpu_hotplug_mutex);
348
349void cpu_hotplug_driver_lock(void)
350__acquires(pseries_cpu_hotplug_mutex)
351{
352 mutex_lock(&pseries_cpu_hotplug_mutex);
353}
354
355void cpu_hotplug_driver_unlock(void)
356__releases(pseries_cpu_hotplug_mutex)
357{
358 mutex_unlock(&pseries_cpu_hotplug_mutex);
359}
360
361static int dlpar_online_cpu(struct device_node *dn) 349static int dlpar_online_cpu(struct device_node *dn)
362{ 350{
363 int rc = 0; 351 int rc = 0;
diff --git a/arch/powerpc/platforms/pseries/xics.c b/arch/powerpc/platforms/pseries/xics.c
index b9b9e11609ec..1ee66db003be 100644
--- a/arch/powerpc/platforms/pseries/xics.c
+++ b/arch/powerpc/platforms/pseries/xics.c
@@ -163,14 +163,13 @@ static inline void lpar_qirr_info(int n_cpu , u8 value)
163/* Interface to generic irq subsystem */ 163/* Interface to generic irq subsystem */
164 164
165#ifdef CONFIG_SMP 165#ifdef CONFIG_SMP
166static int get_irq_server(unsigned int virq, unsigned int strict_check) 166static int get_irq_server(unsigned int virq, cpumask_t cpumask,
167 unsigned int strict_check)
167{ 168{
168 int server; 169 int server;
169 /* For the moment only implement delivery to all cpus or one cpu */ 170 /* For the moment only implement delivery to all cpus or one cpu */
170 cpumask_t cpumask;
171 cpumask_t tmp = CPU_MASK_NONE; 171 cpumask_t tmp = CPU_MASK_NONE;
172 172
173 cpumask_copy(&cpumask, irq_to_desc(virq)->affinity);
174 if (!distribute_irqs) 173 if (!distribute_irqs)
175 return default_server; 174 return default_server;
176 175
@@ -192,10 +191,7 @@ static int get_irq_server(unsigned int virq, unsigned int strict_check)
192 return default_server; 191 return default_server;
193} 192}
194#else 193#else
195static int get_irq_server(unsigned int virq, unsigned int strict_check) 194#define get_irq_server(virq, cpumask, strict_check) (default_server)
196{
197 return default_server;
198}
199#endif 195#endif
200 196
201static void xics_unmask_irq(unsigned int virq) 197static void xics_unmask_irq(unsigned int virq)
@@ -211,7 +207,7 @@ static void xics_unmask_irq(unsigned int virq)
211 if (irq == XICS_IPI || irq == XICS_IRQ_SPURIOUS) 207 if (irq == XICS_IPI || irq == XICS_IRQ_SPURIOUS)
212 return; 208 return;
213 209
214 server = get_irq_server(virq, 0); 210 server = get_irq_server(virq, *(irq_to_desc(virq)->affinity), 0);
215 211
216 call_status = rtas_call(ibm_set_xive, 3, 1, NULL, irq, server, 212 call_status = rtas_call(ibm_set_xive, 3, 1, NULL, irq, server,
217 DEFAULT_PRIORITY); 213 DEFAULT_PRIORITY);
@@ -405,7 +401,7 @@ static int xics_set_affinity(unsigned int virq, const struct cpumask *cpumask)
405 * For the moment only implement delivery to all cpus or one cpu. 401 * For the moment only implement delivery to all cpus or one cpu.
406 * Get current irq_server for the given irq 402 * Get current irq_server for the given irq
407 */ 403 */
408 irq_server = get_irq_server(virq, 1); 404 irq_server = get_irq_server(virq, *cpumask, 1);
409 if (irq_server == -1) { 405 if (irq_server == -1) {
410 char cpulist[128]; 406 char cpulist[128];
411 cpumask_scnprintf(cpulist, sizeof(cpulist), cpumask); 407 cpumask_scnprintf(cpulist, sizeof(cpulist), cpumask);
diff --git a/arch/powerpc/sysdev/ppc4xx_pci.c b/arch/powerpc/sysdev/ppc4xx_pci.c
index 6ff9d71b4c0d..8aa33021e50b 100644
--- a/arch/powerpc/sysdev/ppc4xx_pci.c
+++ b/arch/powerpc/sysdev/ppc4xx_pci.c
@@ -569,7 +569,8 @@ static void __init ppc4xx_probe_pcix_bridge(struct device_node *np)
569 hose->last_busno = bus_range ? bus_range[1] : 0xff; 569 hose->last_busno = bus_range ? bus_range[1] : 0xff;
570 570
571 /* Setup config space */ 571 /* Setup config space */
572 setup_indirect_pci(hose, rsrc_cfg.start, rsrc_cfg.start + 0x4, 0); 572 setup_indirect_pci(hose, rsrc_cfg.start, rsrc_cfg.start + 0x4,
573 PPC_INDIRECT_TYPE_SET_CFG_TYPE);
573 574
574 /* Disable all windows */ 575 /* Disable all windows */
575 writel(0, reg + PCIX0_POM0SA); 576 writel(0, reg + PCIX0_POM0SA);
diff --git a/arch/s390/include/asm/irqflags.h b/arch/s390/include/asm/irqflags.h
index 3f26131120b7..c2fb432f576a 100644
--- a/arch/s390/include/asm/irqflags.h
+++ b/arch/s390/include/asm/irqflags.h
@@ -1,14 +1,12 @@
1/* 1/*
2 * include/asm-s390/irqflags.h 2 * Copyright IBM Corp. 2006,2010
3 * 3 * Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com>
4 * Copyright (C) IBM Corp. 2006
5 * Author(s): Heiko Carstens <heiko.carstens@de.ibm.com>
6 */ 4 */
7 5
8#ifndef __ASM_IRQFLAGS_H 6#ifndef __ASM_IRQFLAGS_H
9#define __ASM_IRQFLAGS_H 7#define __ASM_IRQFLAGS_H
10 8
11#ifdef __KERNEL__ 9#include <linux/types.h>
12 10
13#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 2) 11#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 2)
14 12
@@ -102,5 +100,4 @@ static inline int raw_irqs_disabled_flags(unsigned long flags)
102/* For spinlocks etc */ 100/* For spinlocks etc */
103#define raw_local_irq_save(x) ((x) = raw_local_irq_disable()) 101#define raw_local_irq_save(x) ((x) = raw_local_irq_disable())
104 102
105#endif /* __KERNEL__ */
106#endif /* __ASM_IRQFLAGS_H */ 103#endif /* __ASM_IRQFLAGS_H */
diff --git a/arch/s390/kernel/entry.S b/arch/s390/kernel/entry.S
index 48215d15762b..e8ef21c51bbe 100644
--- a/arch/s390/kernel/entry.S
+++ b/arch/s390/kernel/entry.S
@@ -571,6 +571,7 @@ pgm_svcper:
571 mvc __THREAD_per+__PER_access_id(1,%r8),__LC_PER_ACCESS_ID 571 mvc __THREAD_per+__PER_access_id(1,%r8),__LC_PER_ACCESS_ID
572 oi __TI_flags+3(%r9),_TIF_SINGLE_STEP # set TIF_SINGLE_STEP 572 oi __TI_flags+3(%r9),_TIF_SINGLE_STEP # set TIF_SINGLE_STEP
573 TRACE_IRQS_ON 573 TRACE_IRQS_ON
574 lm %r2,%r6,SP_R2(%r15) # load svc arguments
574 stosm __SF_EMPTY(%r15),0x03 # reenable interrupts 575 stosm __SF_EMPTY(%r15),0x03 # reenable interrupts
575 b BASED(sysc_do_svc) 576 b BASED(sysc_do_svc)
576 577
diff --git a/arch/s390/kernel/entry64.S b/arch/s390/kernel/entry64.S
index 9aff1d449b6e..f33658f09dd7 100644
--- a/arch/s390/kernel/entry64.S
+++ b/arch/s390/kernel/entry64.S
@@ -549,6 +549,7 @@ pgm_svcper:
549 mvc __THREAD_per+__PER_access_id(1,%r8),__LC_PER_ACCESS_ID 549 mvc __THREAD_per+__PER_access_id(1,%r8),__LC_PER_ACCESS_ID
550 oi __TI_flags+7(%r9),_TIF_SINGLE_STEP # set TIF_SINGLE_STEP 550 oi __TI_flags+7(%r9),_TIF_SINGLE_STEP # set TIF_SINGLE_STEP
551 TRACE_IRQS_ON 551 TRACE_IRQS_ON
552 lmg %r2,%r6,SP_R2(%r15) # load svc arguments
552 stosm __SF_EMPTY(%r15),0x03 # reenable interrupts 553 stosm __SF_EMPTY(%r15),0x03 # reenable interrupts
553 j sysc_do_svc 554 j sysc_do_svc
554 555
diff --git a/arch/s390/kernel/signal.c b/arch/s390/kernel/signal.c
index 1675c48b9145..6289945562b0 100644
--- a/arch/s390/kernel/signal.c
+++ b/arch/s390/kernel/signal.c
@@ -64,7 +64,7 @@ SYSCALL_DEFINE3(sigsuspend, int, history0, int, history1, old_sigset_t, mask)
64 recalc_sigpending(); 64 recalc_sigpending();
65 spin_unlock_irq(&current->sighand->siglock); 65 spin_unlock_irq(&current->sighand->siglock);
66 66
67 current->state = TASK_INTERRUPTIBLE; 67 set_current_state(TASK_INTERRUPTIBLE);
68 schedule(); 68 schedule();
69 set_thread_flag(TIF_RESTORE_SIGMASK); 69 set_thread_flag(TIF_RESTORE_SIGMASK);
70 70
diff --git a/arch/s390/kvm/intercept.c b/arch/s390/kvm/intercept.c
index ba9d8a7bc1ac..b40096494e46 100644
--- a/arch/s390/kvm/intercept.c
+++ b/arch/s390/kvm/intercept.c
@@ -213,7 +213,7 @@ static int handle_instruction_and_prog(struct kvm_vcpu *vcpu)
213 return rc2; 213 return rc2;
214} 214}
215 215
216static const intercept_handler_t intercept_funcs[0x48 >> 2] = { 216static const intercept_handler_t intercept_funcs[] = {
217 [0x00 >> 2] = handle_noop, 217 [0x00 >> 2] = handle_noop,
218 [0x04 >> 2] = handle_instruction, 218 [0x04 >> 2] = handle_instruction,
219 [0x08 >> 2] = handle_prog, 219 [0x08 >> 2] = handle_prog,
@@ -230,7 +230,7 @@ int kvm_handle_sie_intercept(struct kvm_vcpu *vcpu)
230 intercept_handler_t func; 230 intercept_handler_t func;
231 u8 code = vcpu->arch.sie_block->icptcode; 231 u8 code = vcpu->arch.sie_block->icptcode;
232 232
233 if (code & 3 || code > 0x48) 233 if (code & 3 || (code >> 2) >= ARRAY_SIZE(intercept_funcs))
234 return -ENOTSUPP; 234 return -ENOTSUPP;
235 func = intercept_funcs[code >> 2]; 235 func = intercept_funcs[code >> 2];
236 if (func) 236 if (func)
diff --git a/arch/sh/boards/mach-se/7724/setup.c b/arch/sh/boards/mach-se/7724/setup.c
index 242dc843f574..c7dbbece44b0 100644
--- a/arch/sh/boards/mach-se/7724/setup.c
+++ b/arch/sh/boards/mach-se/7724/setup.c
@@ -524,7 +524,7 @@ static int __init sh_eth_is_eeprom_ready(void)
524 while (t--) { 524 while (t--) {
525 if (!__raw_readw(EEPROM_STAT)) 525 if (!__raw_readw(EEPROM_STAT))
526 return 1; 526 return 1;
527 cpu_relax(); 527 udelay(1);
528 } 528 }
529 529
530 printk(KERN_ERR "ms7724se can not access to eeprom\n"); 530 printk(KERN_ERR "ms7724se can not access to eeprom\n");
diff --git a/arch/sh/include/asm/unistd_32.h b/arch/sh/include/asm/unistd_32.h
index f18c4f9baf27..365744b05269 100644
--- a/arch/sh/include/asm/unistd_32.h
+++ b/arch/sh/include/asm/unistd_32.h
@@ -345,12 +345,13 @@
345#define __NR_pwritev 334 345#define __NR_pwritev 334
346#define __NR_rt_tgsigqueueinfo 335 346#define __NR_rt_tgsigqueueinfo 335
347#define __NR_perf_event_open 336 347#define __NR_perf_event_open 336
348#define __NR_recvmmsg 337
349 348
350#define NR_syscalls 338 349#define NR_syscalls 337
351 350
352#ifdef __KERNEL__ 351#ifdef __KERNEL__
353 352
353#define __IGNORE_recvmmsg
354
354#define __ARCH_WANT_IPC_PARSE_VERSION 355#define __ARCH_WANT_IPC_PARSE_VERSION
355#define __ARCH_WANT_OLD_READDIR 356#define __ARCH_WANT_OLD_READDIR
356#define __ARCH_WANT_OLD_STAT 357#define __ARCH_WANT_OLD_STAT
diff --git a/arch/sh/include/asm/unistd_64.h b/arch/sh/include/asm/unistd_64.h
index 3e7645d11130..25de158aac3a 100644
--- a/arch/sh/include/asm/unistd_64.h
+++ b/arch/sh/include/asm/unistd_64.h
@@ -386,10 +386,11 @@
386#define __NR_rt_tgsigqueueinfo 363 386#define __NR_rt_tgsigqueueinfo 363
387#define __NR_perf_event_open 364 387#define __NR_perf_event_open 364
388#define __NR_recvmmsg 365 388#define __NR_recvmmsg 365
389#define __NR_accept4 366
389 390
390#ifdef __KERNEL__ 391#ifdef __KERNEL__
391 392
392#define NR_syscalls 366 393#define NR_syscalls 367
393 394
394#define __ARCH_WANT_IPC_PARSE_VERSION 395#define __ARCH_WANT_IPC_PARSE_VERSION
395#define __ARCH_WANT_OLD_READDIR 396#define __ARCH_WANT_OLD_READDIR
diff --git a/arch/sh/kernel/cpu/clock.c b/arch/sh/kernel/cpu/clock.c
index f3a46be2ae81..83da5debeedf 100644
--- a/arch/sh/kernel/cpu/clock.c
+++ b/arch/sh/kernel/cpu/clock.c
@@ -598,7 +598,7 @@ static struct dentry *clk_debugfs_root;
598static int clk_debugfs_register_one(struct clk *c) 598static int clk_debugfs_register_one(struct clk *c)
599{ 599{
600 int err; 600 int err;
601 struct dentry *d, *child; 601 struct dentry *d, *child, *child_tmp;
602 struct clk *pa = c->parent; 602 struct clk *pa = c->parent;
603 char s[255]; 603 char s[255];
604 char *p = s; 604 char *p = s;
@@ -630,7 +630,7 @@ static int clk_debugfs_register_one(struct clk *c)
630 630
631err_out: 631err_out:
632 d = c->dentry; 632 d = c->dentry;
633 list_for_each_entry(child, &d->d_subdirs, d_u.d_child) 633 list_for_each_entry_safe(child, child_tmp, &d->d_subdirs, d_u.d_child)
634 debugfs_remove(child); 634 debugfs_remove(child);
635 debugfs_remove(c->dentry); 635 debugfs_remove(c->dentry);
636 return err; 636 return err;
diff --git a/arch/sh/kernel/dwarf.c b/arch/sh/kernel/dwarf.c
index 3576b709f052..88d28ec3780a 100644
--- a/arch/sh/kernel/dwarf.c
+++ b/arch/sh/kernel/dwarf.c
@@ -892,18 +892,18 @@ static struct unwinder dwarf_unwinder = {
892 892
893static void dwarf_unwinder_cleanup(void) 893static void dwarf_unwinder_cleanup(void)
894{ 894{
895 struct dwarf_cie *cie; 895 struct dwarf_cie *cie, *cie_tmp;
896 struct dwarf_fde *fde; 896 struct dwarf_fde *fde, *fde_tmp;
897 897
898 /* 898 /*
899 * Deallocate all the memory allocated for the DWARF unwinder. 899 * Deallocate all the memory allocated for the DWARF unwinder.
900 * Traverse all the FDE/CIE lists and remove and free all the 900 * Traverse all the FDE/CIE lists and remove and free all the
901 * memory associated with those data structures. 901 * memory associated with those data structures.
902 */ 902 */
903 list_for_each_entry(cie, &dwarf_cie_list, link) 903 list_for_each_entry_safe(cie, cie_tmp, &dwarf_cie_list, link)
904 kfree(cie); 904 kfree(cie);
905 905
906 list_for_each_entry(fde, &dwarf_fde_list, link) 906 list_for_each_entry_safe(fde, fde_tmp, &dwarf_fde_list, link)
907 kfree(fde); 907 kfree(fde);
908 908
909 kmem_cache_destroy(dwarf_reg_cachep); 909 kmem_cache_destroy(dwarf_reg_cachep);
diff --git a/arch/sh/kernel/process_64.c b/arch/sh/kernel/process_64.c
index 6ae5987230f8..c90957a459ac 100644
--- a/arch/sh/kernel/process_64.c
+++ b/arch/sh/kernel/process_64.c
@@ -345,7 +345,7 @@ void exit_thread(void)
345void flush_thread(void) 345void flush_thread(void)
346{ 346{
347 347
348 /* Called by fs/exec.c (flush_old_exec) to remove traces of a 348 /* Called by fs/exec.c (setup_new_exec) to remove traces of a
349 * previously running executable. */ 349 * previously running executable. */
350#ifdef CONFIG_SH_FPU 350#ifdef CONFIG_SH_FPU
351 if (last_task_used_math == current) { 351 if (last_task_used_math == current) {
diff --git a/arch/sh/kernel/syscalls_32.S b/arch/sh/kernel/syscalls_32.S
index 4bd5a1146956..19fd11dd9871 100644
--- a/arch/sh/kernel/syscalls_32.S
+++ b/arch/sh/kernel/syscalls_32.S
@@ -353,4 +353,3 @@ ENTRY(sys_call_table)
353 .long sys_pwritev 353 .long sys_pwritev
354 .long sys_rt_tgsigqueueinfo /* 335 */ 354 .long sys_rt_tgsigqueueinfo /* 335 */
355 .long sys_perf_event_open 355 .long sys_perf_event_open
356 .long sys_recvmmsg
diff --git a/arch/sh/kernel/syscalls_64.S b/arch/sh/kernel/syscalls_64.S
index 07d2aaea9ae8..2048a20d7c80 100644
--- a/arch/sh/kernel/syscalls_64.S
+++ b/arch/sh/kernel/syscalls_64.S
@@ -392,3 +392,4 @@ sys_call_table:
392 .long sys_rt_tgsigqueueinfo 392 .long sys_rt_tgsigqueueinfo
393 .long sys_perf_event_open 393 .long sys_perf_event_open
394 .long sys_recvmmsg /* 365 */ 394 .long sys_recvmmsg /* 365 */
395 .long sys_accept4
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 108197ac0d56..4097f6a10860 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -64,8 +64,11 @@ config BITS
64 default 64 if SPARC64 64 default 64 if SPARC64
65 65
66config GENERIC_TIME 66config GENERIC_TIME
67 def_bool y
68
69config ARCH_USES_GETTIMEOFFSET
67 bool 70 bool
68 default y if SPARC64 71 default y if SPARC32
69 72
70config GENERIC_CMOS_UPDATE 73config GENERIC_CMOS_UPDATE
71 bool 74 bool
diff --git a/arch/sparc/configs/sparc32_defconfig b/arch/sparc/configs/sparc32_defconfig
index 983d59824a28..99a1f191497b 100644
--- a/arch/sparc/configs/sparc32_defconfig
+++ b/arch/sparc/configs/sparc32_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.31 3# Linux kernel version: 2.6.33-rc2
4# Wed Sep 16 00:03:43 2009 4# Mon Jan 11 23:20:31 2010
5# 5#
6# CONFIG_64BIT is not set 6# CONFIG_64BIT is not set
7CONFIG_SPARC=y 7CONFIG_SPARC=y
@@ -41,6 +41,7 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
41# 41#
42CONFIG_TREE_RCU=y 42CONFIG_TREE_RCU=y
43# CONFIG_TREE_PREEMPT_RCU is not set 43# CONFIG_TREE_PREEMPT_RCU is not set
44# CONFIG_TINY_RCU is not set
44# CONFIG_RCU_TRACE is not set 45# CONFIG_RCU_TRACE is not set
45CONFIG_RCU_FANOUT=32 46CONFIG_RCU_FANOUT=32
46# CONFIG_RCU_FANOUT_EXACT is not set 47# CONFIG_RCU_FANOUT_EXACT is not set
@@ -88,21 +89,21 @@ CONFIG_TIMERFD=y
88CONFIG_EVENTFD=y 89CONFIG_EVENTFD=y
89CONFIG_SHMEM=y 90CONFIG_SHMEM=y
90CONFIG_AIO=y 91CONFIG_AIO=y
91CONFIG_HAVE_PERF_COUNTERS=y 92CONFIG_HAVE_PERF_EVENTS=y
93CONFIG_PERF_USE_VMALLOC=y
92 94
93# 95#
94# Performance Counters 96# Kernel Performance Events And Counters
95# 97#
98# CONFIG_PERF_EVENTS is not set
96# CONFIG_PERF_COUNTERS is not set 99# CONFIG_PERF_COUNTERS is not set
97CONFIG_VM_EVENT_COUNTERS=y 100CONFIG_VM_EVENT_COUNTERS=y
98CONFIG_PCI_QUIRKS=y 101CONFIG_PCI_QUIRKS=y
99# CONFIG_STRIP_ASM_SYMS is not set
100CONFIG_COMPAT_BRK=y 102CONFIG_COMPAT_BRK=y
101CONFIG_SLAB=y 103CONFIG_SLAB=y
102# CONFIG_SLUB is not set 104# CONFIG_SLUB is not set
103# CONFIG_SLOB is not set 105# CONFIG_SLOB is not set
104# CONFIG_PROFILING is not set 106# CONFIG_PROFILING is not set
105# CONFIG_MARKERS is not set
106CONFIG_HAVE_OPROFILE=y 107CONFIG_HAVE_OPROFILE=y
107CONFIG_HAVE_ARCH_TRACEHOOK=y 108CONFIG_HAVE_ARCH_TRACEHOOK=y
108CONFIG_HAVE_DMA_ATTRS=y 109CONFIG_HAVE_DMA_ATTRS=y
@@ -131,14 +132,41 @@ CONFIG_LBDAF=y
131# IO Schedulers 132# IO Schedulers
132# 133#
133CONFIG_IOSCHED_NOOP=y 134CONFIG_IOSCHED_NOOP=y
134CONFIG_IOSCHED_AS=y
135CONFIG_IOSCHED_DEADLINE=y 135CONFIG_IOSCHED_DEADLINE=y
136CONFIG_IOSCHED_CFQ=y 136CONFIG_IOSCHED_CFQ=y
137# CONFIG_DEFAULT_AS is not set
138# CONFIG_DEFAULT_DEADLINE is not set 137# CONFIG_DEFAULT_DEADLINE is not set
139CONFIG_DEFAULT_CFQ=y 138CONFIG_DEFAULT_CFQ=y
140# CONFIG_DEFAULT_NOOP is not set 139# CONFIG_DEFAULT_NOOP is not set
141CONFIG_DEFAULT_IOSCHED="cfq" 140CONFIG_DEFAULT_IOSCHED="cfq"
141# CONFIG_INLINE_SPIN_TRYLOCK is not set
142# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
143# CONFIG_INLINE_SPIN_LOCK is not set
144# CONFIG_INLINE_SPIN_LOCK_BH is not set
145# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
146# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
147CONFIG_INLINE_SPIN_UNLOCK=y
148# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
149CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
150# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
151# CONFIG_INLINE_READ_TRYLOCK is not set
152# CONFIG_INLINE_READ_LOCK is not set
153# CONFIG_INLINE_READ_LOCK_BH is not set
154# CONFIG_INLINE_READ_LOCK_IRQ is not set
155# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
156CONFIG_INLINE_READ_UNLOCK=y
157# CONFIG_INLINE_READ_UNLOCK_BH is not set
158CONFIG_INLINE_READ_UNLOCK_IRQ=y
159# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
160# CONFIG_INLINE_WRITE_TRYLOCK is not set
161# CONFIG_INLINE_WRITE_LOCK is not set
162# CONFIG_INLINE_WRITE_LOCK_BH is not set
163# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
164# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
165CONFIG_INLINE_WRITE_UNLOCK=y
166# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
167CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
168# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
169# CONFIG_MUTEX_SPIN_ON_OWNER is not set
142# CONFIG_FREEZER is not set 170# CONFIG_FREEZER is not set
143 171
144# 172#
@@ -168,8 +196,7 @@ CONFIG_SPLIT_PTLOCK_CPUS=4
168# CONFIG_PHYS_ADDR_T_64BIT is not set 196# CONFIG_PHYS_ADDR_T_64BIT is not set
169CONFIG_ZONE_DMA_FLAG=1 197CONFIG_ZONE_DMA_FLAG=1
170CONFIG_BOUNCE=y 198CONFIG_BOUNCE=y
171CONFIG_HAVE_MLOCK=y 199# CONFIG_KSM is not set
172CONFIG_HAVE_MLOCKED_PAGE_BIT=y
173CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 200CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
174CONFIG_SUN_PM=y 201CONFIG_SUN_PM=y
175# CONFIG_SPARC_LED is not set 202# CONFIG_SPARC_LED is not set
@@ -257,6 +284,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
257CONFIG_INET6_XFRM_MODE_BEET=m 284CONFIG_INET6_XFRM_MODE_BEET=m
258# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 285# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
259CONFIG_IPV6_SIT=m 286CONFIG_IPV6_SIT=m
287# CONFIG_IPV6_SIT_6RD is not set
260CONFIG_IPV6_NDISC_NODETYPE=y 288CONFIG_IPV6_NDISC_NODETYPE=y
261CONFIG_IPV6_TUNNEL=m 289CONFIG_IPV6_TUNNEL=m
262# CONFIG_IPV6_MULTIPLE_TABLES is not set 290# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -295,9 +323,6 @@ CONFIG_NET_PKTGEN=m
295# CONFIG_AF_RXRPC is not set 323# CONFIG_AF_RXRPC is not set
296CONFIG_WIRELESS=y 324CONFIG_WIRELESS=y
297# CONFIG_CFG80211 is not set 325# CONFIG_CFG80211 is not set
298CONFIG_CFG80211_DEFAULT_PS_VALUE=0
299CONFIG_WIRELESS_OLD_REGULATORY=y
300# CONFIG_WIRELESS_EXT is not set
301# CONFIG_LIB80211 is not set 326# CONFIG_LIB80211 is not set
302 327
303# 328#
@@ -335,6 +360,10 @@ CONFIG_BLK_DEV=y
335# CONFIG_BLK_DEV_COW_COMMON is not set 360# CONFIG_BLK_DEV_COW_COMMON is not set
336CONFIG_BLK_DEV_LOOP=m 361CONFIG_BLK_DEV_LOOP=m
337CONFIG_BLK_DEV_CRYPTOLOOP=m 362CONFIG_BLK_DEV_CRYPTOLOOP=m
363
364#
365# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
366#
338# CONFIG_BLK_DEV_NBD is not set 367# CONFIG_BLK_DEV_NBD is not set
339# CONFIG_BLK_DEV_SX8 is not set 368# CONFIG_BLK_DEV_SX8 is not set
340CONFIG_BLK_DEV_RAM=y 369CONFIG_BLK_DEV_RAM=y
@@ -398,8 +427,11 @@ CONFIG_SCSI_LOWLEVEL=y
398# CONFIG_ISCSI_TCP is not set 427# CONFIG_ISCSI_TCP is not set
399# CONFIG_SCSI_CXGB3_ISCSI is not set 428# CONFIG_SCSI_CXGB3_ISCSI is not set
400# CONFIG_SCSI_BNX2_ISCSI is not set 429# CONFIG_SCSI_BNX2_ISCSI is not set
430# CONFIG_BE2ISCSI is not set
401# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 431# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
432# CONFIG_SCSI_HPSA is not set
402# CONFIG_SCSI_3W_9XXX is not set 433# CONFIG_SCSI_3W_9XXX is not set
434# CONFIG_SCSI_3W_SAS is not set
403# CONFIG_SCSI_ACARD is not set 435# CONFIG_SCSI_ACARD is not set
404# CONFIG_SCSI_AACRAID is not set 436# CONFIG_SCSI_AACRAID is not set
405# CONFIG_SCSI_AIC7XXX is not set 437# CONFIG_SCSI_AIC7XXX is not set
@@ -434,7 +466,9 @@ CONFIG_SCSI_QLOGICPTI=m
434# CONFIG_SCSI_DEBUG is not set 466# CONFIG_SCSI_DEBUG is not set
435CONFIG_SCSI_SUNESP=y 467CONFIG_SCSI_SUNESP=y
436# CONFIG_SCSI_PMCRAID is not set 468# CONFIG_SCSI_PMCRAID is not set
469# CONFIG_SCSI_PM8001 is not set
437# CONFIG_SCSI_SRP is not set 470# CONFIG_SCSI_SRP is not set
471# CONFIG_SCSI_BFA_FC is not set
438# CONFIG_SCSI_DH is not set 472# CONFIG_SCSI_DH is not set
439# CONFIG_SCSI_OSD_INITIATOR is not set 473# CONFIG_SCSI_OSD_INITIATOR is not set
440# CONFIG_ATA is not set 474# CONFIG_ATA is not set
@@ -450,7 +484,7 @@ CONFIG_SCSI_SUNESP=y
450# 484#
451 485
452# 486#
453# See the help texts for more information. 487# The newer stack is recommended.
454# 488#
455# CONFIG_FIREWIRE is not set 489# CONFIG_FIREWIRE is not set
456# CONFIG_IEEE1394 is not set 490# CONFIG_IEEE1394 is not set
@@ -487,6 +521,7 @@ CONFIG_SUNQE=m
487# CONFIG_NET_PCI is not set 521# CONFIG_NET_PCI is not set
488# CONFIG_B44 is not set 522# CONFIG_B44 is not set
489# CONFIG_KS8842 is not set 523# CONFIG_KS8842 is not set
524# CONFIG_KS8851_MLL is not set
490# CONFIG_ATL2 is not set 525# CONFIG_ATL2 is not set
491CONFIG_NETDEV_1000=y 526CONFIG_NETDEV_1000=y
492# CONFIG_ACENIC is not set 527# CONFIG_ACENIC is not set
@@ -546,6 +581,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
546# CONFIG_NETCONSOLE is not set 581# CONFIG_NETCONSOLE is not set
547# CONFIG_NETPOLL is not set 582# CONFIG_NETPOLL is not set
548# CONFIG_NET_POLL_CONTROLLER is not set 583# CONFIG_NET_POLL_CONTROLLER is not set
584# CONFIG_VMXNET3 is not set
549# CONFIG_ISDN is not set 585# CONFIG_ISDN is not set
550# CONFIG_PHONE is not set 586# CONFIG_PHONE is not set
551 587
@@ -555,6 +591,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
555CONFIG_INPUT=y 591CONFIG_INPUT=y
556# CONFIG_INPUT_FF_MEMLESS is not set 592# CONFIG_INPUT_FF_MEMLESS is not set
557# CONFIG_INPUT_POLLDEV is not set 593# CONFIG_INPUT_POLLDEV is not set
594# CONFIG_INPUT_SPARSEKMAP is not set
558 595
559# 596#
560# Userland interfaces 597# Userland interfaces
@@ -574,6 +611,7 @@ CONFIG_INPUT_KEYBOARD=y
574CONFIG_KEYBOARD_ATKBD=m 611CONFIG_KEYBOARD_ATKBD=m
575# CONFIG_KEYBOARD_LKKBD is not set 612# CONFIG_KEYBOARD_LKKBD is not set
576# CONFIG_KEYBOARD_NEWTON is not set 613# CONFIG_KEYBOARD_NEWTON is not set
614# CONFIG_KEYBOARD_OPENCORES is not set
577# CONFIG_KEYBOARD_STOWAWAY is not set 615# CONFIG_KEYBOARD_STOWAWAY is not set
578CONFIG_KEYBOARD_SUNKBD=m 616CONFIG_KEYBOARD_SUNKBD=m
579# CONFIG_KEYBOARD_XTKBD is not set 617# CONFIG_KEYBOARD_XTKBD is not set
@@ -604,6 +642,7 @@ CONFIG_SERIO_SERPORT=m
604# CONFIG_SERIO_PCIPS2 is not set 642# CONFIG_SERIO_PCIPS2 is not set
605CONFIG_SERIO_LIBPS2=m 643CONFIG_SERIO_LIBPS2=m
606# CONFIG_SERIO_RAW is not set 644# CONFIG_SERIO_RAW is not set
645# CONFIG_SERIO_ALTERA_PS2 is not set
607# CONFIG_GAMEPORT is not set 646# CONFIG_GAMEPORT is not set
608 647
609# 648#
@@ -636,6 +675,7 @@ CONFIG_SERIAL_CORE=y
636CONFIG_SERIAL_CORE_CONSOLE=y 675CONFIG_SERIAL_CORE_CONSOLE=y
637CONFIG_CONSOLE_POLL=y 676CONFIG_CONSOLE_POLL=y
638# CONFIG_SERIAL_JSM is not set 677# CONFIG_SERIAL_JSM is not set
678# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
639CONFIG_UNIX98_PTYS=y 679CONFIG_UNIX98_PTYS=y
640# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 680# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
641CONFIG_LEGACY_PTYS=y 681CONFIG_LEGACY_PTYS=y
@@ -661,6 +701,11 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
661# CONFIG_POWER_SUPPLY is not set 701# CONFIG_POWER_SUPPLY is not set
662CONFIG_HWMON=y 702CONFIG_HWMON=y
663# CONFIG_HWMON_VID is not set 703# CONFIG_HWMON_VID is not set
704# CONFIG_HWMON_DEBUG_CHIP is not set
705
706#
707# Native drivers
708#
664# CONFIG_SENSORS_I5K_AMB is not set 709# CONFIG_SENSORS_I5K_AMB is not set
665# CONFIG_SENSORS_F71805F is not set 710# CONFIG_SENSORS_F71805F is not set
666# CONFIG_SENSORS_F71882FG is not set 711# CONFIG_SENSORS_F71882FG is not set
@@ -675,9 +720,7 @@ CONFIG_HWMON=y
675# CONFIG_SENSORS_VT8231 is not set 720# CONFIG_SENSORS_VT8231 is not set
676# CONFIG_SENSORS_W83627HF is not set 721# CONFIG_SENSORS_W83627HF is not set
677# CONFIG_SENSORS_W83627EHF is not set 722# CONFIG_SENSORS_W83627EHF is not set
678# CONFIG_HWMON_DEBUG_CHIP is not set
679# CONFIG_THERMAL is not set 723# CONFIG_THERMAL is not set
680# CONFIG_THERMAL_HWMON is not set
681# CONFIG_WATCHDOG is not set 724# CONFIG_WATCHDOG is not set
682CONFIG_SSB_POSSIBLE=y 725CONFIG_SSB_POSSIBLE=y
683 726
@@ -699,6 +742,7 @@ CONFIG_SSB_POSSIBLE=y
699# 742#
700# Graphics support 743# Graphics support
701# 744#
745CONFIG_VGA_ARB=y
702# CONFIG_VGASTATE is not set 746# CONFIG_VGASTATE is not set
703# CONFIG_VIDEO_OUTPUT_CONTROL is not set 747# CONFIG_VIDEO_OUTPUT_CONTROL is not set
704# CONFIG_FB is not set 748# CONFIG_FB is not set
@@ -776,7 +820,9 @@ CONFIG_RTC_INTF_DEV=y
776# CONFIG_RTC_DRV_M48T86 is not set 820# CONFIG_RTC_DRV_M48T86 is not set
777# CONFIG_RTC_DRV_M48T35 is not set 821# CONFIG_RTC_DRV_M48T35 is not set
778CONFIG_RTC_DRV_M48T59=y 822CONFIG_RTC_DRV_M48T59=y
823# CONFIG_RTC_DRV_MSM6242 is not set
779# CONFIG_RTC_DRV_BQ4802 is not set 824# CONFIG_RTC_DRV_BQ4802 is not set
825# CONFIG_RTC_DRV_RP5C01 is not set
780# CONFIG_RTC_DRV_V3020 is not set 826# CONFIG_RTC_DRV_V3020 is not set
781 827
782# 828#
@@ -955,6 +1001,7 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
955CONFIG_ENABLE_MUST_CHECK=y 1001CONFIG_ENABLE_MUST_CHECK=y
956CONFIG_FRAME_WARN=1024 1002CONFIG_FRAME_WARN=1024
957CONFIG_MAGIC_SYSRQ=y 1003CONFIG_MAGIC_SYSRQ=y
1004# CONFIG_STRIP_ASM_SYMS is not set
958# CONFIG_UNUSED_SYMBOLS is not set 1005# CONFIG_UNUSED_SYMBOLS is not set
959# CONFIG_DEBUG_FS is not set 1006# CONFIG_DEBUG_FS is not set
960# CONFIG_HEADERS_CHECK is not set 1007# CONFIG_HEADERS_CHECK is not set
@@ -1003,9 +1050,9 @@ CONFIG_KGDB=y
1003CONFIG_KGDB_SERIAL_CONSOLE=y 1050CONFIG_KGDB_SERIAL_CONSOLE=y
1004CONFIG_KGDB_TESTS=y 1051CONFIG_KGDB_TESTS=y
1005# CONFIG_KGDB_TESTS_ON_BOOT is not set 1052# CONFIG_KGDB_TESTS_ON_BOOT is not set
1006# CONFIG_KMEMCHECK is not set
1007# CONFIG_DEBUG_STACK_USAGE is not set 1053# CONFIG_DEBUG_STACK_USAGE is not set
1008# CONFIG_STACK_DEBUG is not set 1054# CONFIG_STACK_DEBUG is not set
1055# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
1009 1056
1010# 1057#
1011# Security options 1058# Security options
@@ -1013,7 +1060,11 @@ CONFIG_KGDB_TESTS=y
1013# CONFIG_KEYS is not set 1060# CONFIG_KEYS is not set
1014# CONFIG_SECURITY is not set 1061# CONFIG_SECURITY is not set
1015# CONFIG_SECURITYFS is not set 1062# CONFIG_SECURITYFS is not set
1016# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1063# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1064# CONFIG_DEFAULT_SECURITY_SMACK is not set
1065# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1066CONFIG_DEFAULT_SECURITY_DAC=y
1067CONFIG_DEFAULT_SECURITY=""
1017CONFIG_CRYPTO=y 1068CONFIG_CRYPTO=y
1018 1069
1019# 1070#
diff --git a/arch/sparc/configs/sparc64_defconfig b/arch/sparc/configs/sparc64_defconfig
index f80b881dfea7..41c5a56aa6f2 100644
--- a/arch/sparc/configs/sparc64_defconfig
+++ b/arch/sparc/configs/sparc64_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.31 3# Linux kernel version: 2.6.33-rc2
4# Tue Sep 15 17:06:03 2009 4# Wed Jan 20 16:31:47 2010
5# 5#
6CONFIG_64BIT=y 6CONFIG_64BIT=y
7CONFIG_SPARC=y 7CONFIG_SPARC=y
@@ -20,6 +20,7 @@ CONFIG_HAVE_LATENCYTOP_SUPPORT=y
20CONFIG_AUDIT_ARCH=y 20CONFIG_AUDIT_ARCH=y
21CONFIG_HAVE_SETUP_PER_CPU_AREA=y 21CONFIG_HAVE_SETUP_PER_CPU_AREA=y
22CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y 22CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
23CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
23CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 24CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
24CONFIG_MMU=y 25CONFIG_MMU=y
25CONFIG_ARCH_NO_VIRT_TO_BUS=y 26CONFIG_ARCH_NO_VIRT_TO_BUS=y
@@ -50,6 +51,7 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
50# 51#
51CONFIG_TREE_RCU=y 52CONFIG_TREE_RCU=y
52# CONFIG_TREE_PREEMPT_RCU is not set 53# CONFIG_TREE_PREEMPT_RCU is not set
54# CONFIG_TINY_RCU is not set
53# CONFIG_RCU_TRACE is not set 55# CONFIG_RCU_TRACE is not set
54CONFIG_RCU_FANOUT=64 56CONFIG_RCU_FANOUT=64
55# CONFIG_RCU_FANOUT_EXACT is not set 57# CONFIG_RCU_FANOUT_EXACT is not set
@@ -62,8 +64,7 @@ CONFIG_RT_GROUP_SCHED=y
62CONFIG_USER_SCHED=y 64CONFIG_USER_SCHED=y
63# CONFIG_CGROUP_SCHED is not set 65# CONFIG_CGROUP_SCHED is not set
64# CONFIG_CGROUPS is not set 66# CONFIG_CGROUPS is not set
65CONFIG_SYSFS_DEPRECATED=y 67# CONFIG_SYSFS_DEPRECATED_V2 is not set
66CONFIG_SYSFS_DEPRECATED_V2=y
67CONFIG_RELAY=y 68CONFIG_RELAY=y
68CONFIG_NAMESPACES=y 69CONFIG_NAMESPACES=y
69# CONFIG_UTS_NS is not set 70# CONFIG_UTS_NS is not set
@@ -97,24 +98,25 @@ CONFIG_TIMERFD=y
97CONFIG_EVENTFD=y 98CONFIG_EVENTFD=y
98CONFIG_SHMEM=y 99CONFIG_SHMEM=y
99CONFIG_AIO=y 100CONFIG_AIO=y
100CONFIG_HAVE_PERF_COUNTERS=y 101CONFIG_HAVE_PERF_EVENTS=y
102CONFIG_PERF_USE_VMALLOC=y
101 103
102# 104#
103# Performance Counters 105# Kernel Performance Events And Counters
104# 106#
105CONFIG_PERF_COUNTERS=y 107CONFIG_PERF_EVENTS=y
106CONFIG_EVENT_PROFILE=y 108CONFIG_EVENT_PROFILE=y
109CONFIG_PERF_COUNTERS=y
110# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
107CONFIG_VM_EVENT_COUNTERS=y 111CONFIG_VM_EVENT_COUNTERS=y
108CONFIG_PCI_QUIRKS=y 112CONFIG_PCI_QUIRKS=y
109CONFIG_SLUB_DEBUG=y 113CONFIG_SLUB_DEBUG=y
110# CONFIG_STRIP_ASM_SYMS is not set
111# CONFIG_COMPAT_BRK is not set 114# CONFIG_COMPAT_BRK is not set
112# CONFIG_SLAB is not set 115# CONFIG_SLAB is not set
113CONFIG_SLUB=y 116CONFIG_SLUB=y
114# CONFIG_SLOB is not set 117# CONFIG_SLOB is not set
115CONFIG_PROFILING=y 118CONFIG_PROFILING=y
116CONFIG_TRACEPOINTS=y 119CONFIG_TRACEPOINTS=y
117CONFIG_MARKERS=y
118CONFIG_OPROFILE=m 120CONFIG_OPROFILE=m
119CONFIG_HAVE_OPROFILE=y 121CONFIG_HAVE_OPROFILE=y
120CONFIG_KPROBES=y 122CONFIG_KPROBES=y
@@ -152,14 +154,41 @@ CONFIG_BLOCK_COMPAT=y
152# IO Schedulers 154# IO Schedulers
153# 155#
154CONFIG_IOSCHED_NOOP=y 156CONFIG_IOSCHED_NOOP=y
155CONFIG_IOSCHED_AS=y
156CONFIG_IOSCHED_DEADLINE=y 157CONFIG_IOSCHED_DEADLINE=y
157CONFIG_IOSCHED_CFQ=y 158CONFIG_IOSCHED_CFQ=y
158CONFIG_DEFAULT_AS=y
159# CONFIG_DEFAULT_DEADLINE is not set 159# CONFIG_DEFAULT_DEADLINE is not set
160# CONFIG_DEFAULT_CFQ is not set 160CONFIG_DEFAULT_CFQ=y
161# CONFIG_DEFAULT_NOOP is not set 161# CONFIG_DEFAULT_NOOP is not set
162CONFIG_DEFAULT_IOSCHED="anticipatory" 162CONFIG_DEFAULT_IOSCHED="cfq"
163# CONFIG_INLINE_SPIN_TRYLOCK is not set
164# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
165# CONFIG_INLINE_SPIN_LOCK is not set
166# CONFIG_INLINE_SPIN_LOCK_BH is not set
167# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
168# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
169CONFIG_INLINE_SPIN_UNLOCK=y
170# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
171CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
172# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
173# CONFIG_INLINE_READ_TRYLOCK is not set
174# CONFIG_INLINE_READ_LOCK is not set
175# CONFIG_INLINE_READ_LOCK_BH is not set
176# CONFIG_INLINE_READ_LOCK_IRQ is not set
177# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
178CONFIG_INLINE_READ_UNLOCK=y
179# CONFIG_INLINE_READ_UNLOCK_BH is not set
180CONFIG_INLINE_READ_UNLOCK_IRQ=y
181# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
182# CONFIG_INLINE_WRITE_TRYLOCK is not set
183# CONFIG_INLINE_WRITE_LOCK is not set
184# CONFIG_INLINE_WRITE_LOCK_BH is not set
185# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
186# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
187CONFIG_INLINE_WRITE_UNLOCK=y
188# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
189CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
190# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
191CONFIG_MUTEX_SPIN_ON_OWNER=y
163# CONFIG_FREEZER is not set 192# CONFIG_FREEZER is not set
164 193
165# 194#
@@ -179,6 +208,7 @@ CONFIG_GENERIC_HWEIGHT=y
179CONFIG_GENERIC_CALIBRATE_DELAY=y 208CONFIG_GENERIC_CALIBRATE_DELAY=y
180CONFIG_ARCH_MAY_HAVE_PC_FDC=y 209CONFIG_ARCH_MAY_HAVE_PC_FDC=y
181CONFIG_SPARC64_SMP=y 210CONFIG_SPARC64_SMP=y
211CONFIG_EARLYFB=y
182CONFIG_SPARC64_PAGE_SIZE_8KB=y 212CONFIG_SPARC64_PAGE_SIZE_8KB=y
183# CONFIG_SPARC64_PAGE_SIZE_64KB is not set 213# CONFIG_SPARC64_PAGE_SIZE_64KB is not set
184CONFIG_SECCOMP=y 214CONFIG_SECCOMP=y
@@ -216,8 +246,7 @@ CONFIG_MIGRATION=y
216CONFIG_PHYS_ADDR_T_64BIT=y 246CONFIG_PHYS_ADDR_T_64BIT=y
217CONFIG_ZONE_DMA_FLAG=0 247CONFIG_ZONE_DMA_FLAG=0
218CONFIG_NR_QUICK=1 248CONFIG_NR_QUICK=1
219CONFIG_HAVE_MLOCK=y 249# CONFIG_KSM is not set
220CONFIG_HAVE_MLOCKED_PAGE_BIT=y
221CONFIG_DEFAULT_MMAP_MIN_ADDR=8192 250CONFIG_DEFAULT_MMAP_MIN_ADDR=8192
222CONFIG_SCHED_SMT=y 251CONFIG_SCHED_SMT=y
223CONFIG_SCHED_MC=y 252CONFIG_SCHED_MC=y
@@ -315,6 +344,7 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
315CONFIG_INET6_XFRM_MODE_BEET=m 344CONFIG_INET6_XFRM_MODE_BEET=m
316# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 345# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
317CONFIG_IPV6_SIT=m 346CONFIG_IPV6_SIT=m
347# CONFIG_IPV6_SIT_6RD is not set
318CONFIG_IPV6_NDISC_NODETYPE=y 348CONFIG_IPV6_NDISC_NODETYPE=y
319CONFIG_IPV6_TUNNEL=m 349CONFIG_IPV6_TUNNEL=m
320# CONFIG_IPV6_MULTIPLE_TABLES is not set 350# CONFIG_IPV6_MULTIPLE_TABLES is not set
@@ -356,9 +386,6 @@ CONFIG_NET_TCPPROBE=m
356# CONFIG_AF_RXRPC is not set 386# CONFIG_AF_RXRPC is not set
357CONFIG_WIRELESS=y 387CONFIG_WIRELESS=y
358# CONFIG_CFG80211 is not set 388# CONFIG_CFG80211 is not set
359CONFIG_CFG80211_DEFAULT_PS_VALUE=0
360CONFIG_WIRELESS_OLD_REGULATORY=y
361# CONFIG_WIRELESS_EXT is not set
362# CONFIG_LIB80211 is not set 389# CONFIG_LIB80211 is not set
363 390
364# 391#
@@ -376,6 +403,7 @@ CONFIG_WIRELESS_OLD_REGULATORY=y
376# Generic Driver Options 403# Generic Driver Options
377# 404#
378CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 405CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
406# CONFIG_DEVTMPFS is not set
379CONFIG_STANDALONE=y 407CONFIG_STANDALONE=y
380# CONFIG_PREVENT_FIRMWARE_BUILD is not set 408# CONFIG_PREVENT_FIRMWARE_BUILD is not set
381CONFIG_FW_LOADER=y 409CONFIG_FW_LOADER=y
@@ -397,6 +425,11 @@ CONFIG_BLK_DEV=y
397# CONFIG_BLK_DEV_COW_COMMON is not set 425# CONFIG_BLK_DEV_COW_COMMON is not set
398CONFIG_BLK_DEV_LOOP=m 426CONFIG_BLK_DEV_LOOP=m
399CONFIG_BLK_DEV_CRYPTOLOOP=m 427CONFIG_BLK_DEV_CRYPTOLOOP=m
428
429#
430# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
431#
432# CONFIG_BLK_DEV_DRBD is not set
400CONFIG_BLK_DEV_NBD=m 433CONFIG_BLK_DEV_NBD=m
401# CONFIG_BLK_DEV_SX8 is not set 434# CONFIG_BLK_DEV_SX8 is not set
402# CONFIG_BLK_DEV_UB is not set 435# CONFIG_BLK_DEV_UB is not set
@@ -408,6 +441,7 @@ CONFIG_ATA_OVER_ETH=m
408CONFIG_SUNVDC=m 441CONFIG_SUNVDC=m
409# CONFIG_BLK_DEV_HD is not set 442# CONFIG_BLK_DEV_HD is not set
410CONFIG_MISC_DEVICES=y 443CONFIG_MISC_DEVICES=y
444# CONFIG_AD525X_DPOT is not set
411# CONFIG_PHANTOM is not set 445# CONFIG_PHANTOM is not set
412# CONFIG_SGI_IOC4 is not set 446# CONFIG_SGI_IOC4 is not set
413# CONFIG_TIFM_CORE is not set 447# CONFIG_TIFM_CORE is not set
@@ -415,6 +449,7 @@ CONFIG_MISC_DEVICES=y
415# CONFIG_ENCLOSURE_SERVICES is not set 449# CONFIG_ENCLOSURE_SERVICES is not set
416# CONFIG_HP_ILO is not set 450# CONFIG_HP_ILO is not set
417# CONFIG_ISL29003 is not set 451# CONFIG_ISL29003 is not set
452# CONFIG_DS1682 is not set
418# CONFIG_C2PORT is not set 453# CONFIG_C2PORT is not set
419 454
420# 455#
@@ -522,8 +557,11 @@ CONFIG_SCSI_LOWLEVEL=y
522# CONFIG_ISCSI_TCP is not set 557# CONFIG_ISCSI_TCP is not set
523# CONFIG_SCSI_CXGB3_ISCSI is not set 558# CONFIG_SCSI_CXGB3_ISCSI is not set
524# CONFIG_SCSI_BNX2_ISCSI is not set 559# CONFIG_SCSI_BNX2_ISCSI is not set
560# CONFIG_BE2ISCSI is not set
525# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 561# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
562# CONFIG_SCSI_HPSA is not set
526# CONFIG_SCSI_3W_9XXX is not set 563# CONFIG_SCSI_3W_9XXX is not set
564# CONFIG_SCSI_3W_SAS is not set
527# CONFIG_SCSI_ACARD is not set 565# CONFIG_SCSI_ACARD is not set
528# CONFIG_SCSI_AACRAID is not set 566# CONFIG_SCSI_AACRAID is not set
529# CONFIG_SCSI_AIC7XXX is not set 567# CONFIG_SCSI_AIC7XXX is not set
@@ -557,7 +595,9 @@ CONFIG_SCSI_LOWLEVEL=y
557# CONFIG_SCSI_DEBUG is not set 595# CONFIG_SCSI_DEBUG is not set
558# CONFIG_SCSI_SUNESP is not set 596# CONFIG_SCSI_SUNESP is not set
559# CONFIG_SCSI_PMCRAID is not set 597# CONFIG_SCSI_PMCRAID is not set
598# CONFIG_SCSI_PM8001 is not set
560# CONFIG_SCSI_SRP is not set 599# CONFIG_SCSI_SRP is not set
600# CONFIG_SCSI_BFA_FC is not set
561# CONFIG_SCSI_DH is not set 601# CONFIG_SCSI_DH is not set
562# CONFIG_SCSI_OSD_INITIATOR is not set 602# CONFIG_SCSI_OSD_INITIATOR is not set
563# CONFIG_ATA is not set 603# CONFIG_ATA is not set
@@ -568,7 +608,9 @@ CONFIG_MD_RAID0=m
568CONFIG_MD_RAID1=m 608CONFIG_MD_RAID1=m
569CONFIG_MD_RAID10=m 609CONFIG_MD_RAID10=m
570CONFIG_MD_RAID456=m 610CONFIG_MD_RAID456=m
611# CONFIG_MULTICORE_RAID456 is not set
571CONFIG_MD_RAID6_PQ=m 612CONFIG_MD_RAID6_PQ=m
613# CONFIG_ASYNC_RAID6_TEST is not set
572CONFIG_MD_MULTIPATH=m 614CONFIG_MD_MULTIPATH=m
573# CONFIG_MD_FAULTY is not set 615# CONFIG_MD_FAULTY is not set
574CONFIG_BLK_DEV_DM=m 616CONFIG_BLK_DEV_DM=m
@@ -592,7 +634,7 @@ CONFIG_DM_ZERO=m
592# 634#
593 635
594# 636#
595# See the help texts for more information. 637# The newer stack is recommended.
596# 638#
597# CONFIG_FIREWIRE is not set 639# CONFIG_FIREWIRE is not set
598# CONFIG_IEEE1394 is not set 640# CONFIG_IEEE1394 is not set
@@ -664,6 +706,7 @@ CONFIG_NET_PCI=y
664# CONFIG_SUNDANCE is not set 706# CONFIG_SUNDANCE is not set
665# CONFIG_TLAN is not set 707# CONFIG_TLAN is not set
666# CONFIG_KS8842 is not set 708# CONFIG_KS8842 is not set
709# CONFIG_KS8851_MLL is not set
667# CONFIG_VIA_RHINE is not set 710# CONFIG_VIA_RHINE is not set
668# CONFIG_SC92031 is not set 711# CONFIG_SC92031 is not set
669# CONFIG_ATL2 is not set 712# CONFIG_ATL2 is not set
@@ -745,6 +788,7 @@ CONFIG_SLHC=m
745# CONFIG_NETCONSOLE is not set 788# CONFIG_NETCONSOLE is not set
746# CONFIG_NETPOLL is not set 789# CONFIG_NETPOLL is not set
747# CONFIG_NET_POLL_CONTROLLER is not set 790# CONFIG_NET_POLL_CONTROLLER is not set
791# CONFIG_VMXNET3 is not set
748# CONFIG_ISDN is not set 792# CONFIG_ISDN is not set
749# CONFIG_PHONE is not set 793# CONFIG_PHONE is not set
750 794
@@ -754,6 +798,7 @@ CONFIG_SLHC=m
754CONFIG_INPUT=y 798CONFIG_INPUT=y
755# CONFIG_INPUT_FF_MEMLESS is not set 799# CONFIG_INPUT_FF_MEMLESS is not set
756# CONFIG_INPUT_POLLDEV is not set 800# CONFIG_INPUT_POLLDEV is not set
801# CONFIG_INPUT_SPARSEKMAP is not set
757 802
758# 803#
759# Userland interfaces 804# Userland interfaces
@@ -770,9 +815,13 @@ CONFIG_INPUT_EVDEV=y
770# Input Device Drivers 815# Input Device Drivers
771# 816#
772CONFIG_INPUT_KEYBOARD=y 817CONFIG_INPUT_KEYBOARD=y
818# CONFIG_KEYBOARD_ADP5588 is not set
773CONFIG_KEYBOARD_ATKBD=y 819CONFIG_KEYBOARD_ATKBD=y
820# CONFIG_QT2160 is not set
774CONFIG_KEYBOARD_LKKBD=m 821CONFIG_KEYBOARD_LKKBD=m
822# CONFIG_KEYBOARD_MAX7359 is not set
775# CONFIG_KEYBOARD_NEWTON is not set 823# CONFIG_KEYBOARD_NEWTON is not set
824# CONFIG_KEYBOARD_OPENCORES is not set
776# CONFIG_KEYBOARD_STOWAWAY is not set 825# CONFIG_KEYBOARD_STOWAWAY is not set
777CONFIG_KEYBOARD_SUNKBD=y 826CONFIG_KEYBOARD_SUNKBD=y
778# CONFIG_KEYBOARD_XTKBD is not set 827# CONFIG_KEYBOARD_XTKBD is not set
@@ -812,6 +861,7 @@ CONFIG_SERIO_I8042=y
812CONFIG_SERIO_PCIPS2=m 861CONFIG_SERIO_PCIPS2=m
813CONFIG_SERIO_LIBPS2=y 862CONFIG_SERIO_LIBPS2=y
814CONFIG_SERIO_RAW=m 863CONFIG_SERIO_RAW=m
864# CONFIG_SERIO_ALTERA_PS2 is not set
815# CONFIG_GAMEPORT is not set 865# CONFIG_GAMEPORT is not set
816 866
817# 867#
@@ -844,6 +894,7 @@ CONFIG_SERIAL_SUNHV=y
844CONFIG_SERIAL_CORE=y 894CONFIG_SERIAL_CORE=y
845CONFIG_SERIAL_CORE_CONSOLE=y 895CONFIG_SERIAL_CORE_CONSOLE=y
846# CONFIG_SERIAL_JSM is not set 896# CONFIG_SERIAL_JSM is not set
897# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
847CONFIG_UNIX98_PTYS=y 898CONFIG_UNIX98_PTYS=y
848# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set 899# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
849# CONFIG_LEGACY_PTYS is not set 900# CONFIG_LEGACY_PTYS is not set
@@ -858,6 +909,7 @@ CONFIG_HW_RANDOM_N2RNG=m
858CONFIG_DEVPORT=y 909CONFIG_DEVPORT=y
859CONFIG_I2C=y 910CONFIG_I2C=y
860CONFIG_I2C_BOARDINFO=y 911CONFIG_I2C_BOARDINFO=y
912CONFIG_I2C_COMPAT=y
861# CONFIG_I2C_CHARDEV is not set 913# CONFIG_I2C_CHARDEV is not set
862CONFIG_I2C_HELPER_AUTO=y 914CONFIG_I2C_HELPER_AUTO=y
863CONFIG_I2C_ALGOBIT=y 915CONFIG_I2C_ALGOBIT=y
@@ -898,11 +950,6 @@ CONFIG_I2C_ALGOBIT=y
898# CONFIG_I2C_TINY_USB is not set 950# CONFIG_I2C_TINY_USB is not set
899 951
900# 952#
901# Graphics adapter I2C/DDC channel drivers
902#
903# CONFIG_I2C_VOODOO3 is not set
904
905#
906# Other I2C/SMBus bus drivers 953# Other I2C/SMBus bus drivers
907# 954#
908# CONFIG_I2C_PCA_PLATFORM is not set 955# CONFIG_I2C_PCA_PLATFORM is not set
@@ -911,10 +958,6 @@ CONFIG_I2C_ALGOBIT=y
911# 958#
912# Miscellaneous I2C Chip support 959# Miscellaneous I2C Chip support
913# 960#
914# CONFIG_DS1682 is not set
915# CONFIG_SENSORS_PCF8574 is not set
916# CONFIG_PCF8575 is not set
917# CONFIG_SENSORS_PCA9539 is not set
918# CONFIG_SENSORS_TSL2550 is not set 961# CONFIG_SENSORS_TSL2550 is not set
919# CONFIG_I2C_DEBUG_CORE is not set 962# CONFIG_I2C_DEBUG_CORE is not set
920# CONFIG_I2C_DEBUG_ALGO is not set 963# CONFIG_I2C_DEBUG_ALGO is not set
@@ -932,6 +975,11 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
932# CONFIG_POWER_SUPPLY is not set 975# CONFIG_POWER_SUPPLY is not set
933CONFIG_HWMON=y 976CONFIG_HWMON=y
934# CONFIG_HWMON_VID is not set 977# CONFIG_HWMON_VID is not set
978# CONFIG_HWMON_DEBUG_CHIP is not set
979
980#
981# Native drivers
982#
935# CONFIG_SENSORS_AD7414 is not set 983# CONFIG_SENSORS_AD7414 is not set
936# CONFIG_SENSORS_AD7418 is not set 984# CONFIG_SENSORS_AD7418 is not set
937# CONFIG_SENSORS_ADM1021 is not set 985# CONFIG_SENSORS_ADM1021 is not set
@@ -955,6 +1003,7 @@ CONFIG_HWMON=y
955# CONFIG_SENSORS_GL520SM is not set 1003# CONFIG_SENSORS_GL520SM is not set
956# CONFIG_SENSORS_IT87 is not set 1004# CONFIG_SENSORS_IT87 is not set
957# CONFIG_SENSORS_LM63 is not set 1005# CONFIG_SENSORS_LM63 is not set
1006# CONFIG_SENSORS_LM73 is not set
958# CONFIG_SENSORS_LM75 is not set 1007# CONFIG_SENSORS_LM75 is not set
959# CONFIG_SENSORS_LM77 is not set 1008# CONFIG_SENSORS_LM77 is not set
960# CONFIG_SENSORS_LM78 is not set 1009# CONFIG_SENSORS_LM78 is not set
@@ -981,6 +1030,7 @@ CONFIG_HWMON=y
981# CONFIG_SENSORS_ADS7828 is not set 1030# CONFIG_SENSORS_ADS7828 is not set
982# CONFIG_SENSORS_THMC50 is not set 1031# CONFIG_SENSORS_THMC50 is not set
983# CONFIG_SENSORS_TMP401 is not set 1032# CONFIG_SENSORS_TMP401 is not set
1033# CONFIG_SENSORS_TMP421 is not set
984# CONFIG_SENSORS_VIA686A is not set 1034# CONFIG_SENSORS_VIA686A is not set
985# CONFIG_SENSORS_VT1211 is not set 1035# CONFIG_SENSORS_VT1211 is not set
986# CONFIG_SENSORS_VT8231 is not set 1036# CONFIG_SENSORS_VT8231 is not set
@@ -993,9 +1043,8 @@ CONFIG_HWMON=y
993# CONFIG_SENSORS_W83627HF is not set 1043# CONFIG_SENSORS_W83627HF is not set
994# CONFIG_SENSORS_W83627EHF is not set 1044# CONFIG_SENSORS_W83627EHF is not set
995# CONFIG_SENSORS_ULTRA45 is not set 1045# CONFIG_SENSORS_ULTRA45 is not set
996# CONFIG_HWMON_DEBUG_CHIP is not set 1046# CONFIG_SENSORS_LIS3_I2C is not set
997# CONFIG_THERMAL is not set 1047# CONFIG_THERMAL is not set
998# CONFIG_THERMAL_HWMON is not set
999# CONFIG_WATCHDOG is not set 1048# CONFIG_WATCHDOG is not set
1000CONFIG_SSB_POSSIBLE=y 1049CONFIG_SSB_POSSIBLE=y
1001 1050
@@ -1013,16 +1062,20 @@ CONFIG_SSB_POSSIBLE=y
1013# CONFIG_TWL4030_CORE is not set 1062# CONFIG_TWL4030_CORE is not set
1014# CONFIG_MFD_TMIO is not set 1063# CONFIG_MFD_TMIO is not set
1015# CONFIG_PMIC_DA903X is not set 1064# CONFIG_PMIC_DA903X is not set
1065# CONFIG_PMIC_ADP5520 is not set
1016# CONFIG_MFD_WM8400 is not set 1066# CONFIG_MFD_WM8400 is not set
1067# CONFIG_MFD_WM831X is not set
1017# CONFIG_MFD_WM8350_I2C is not set 1068# CONFIG_MFD_WM8350_I2C is not set
1018# CONFIG_MFD_PCF50633 is not set 1069# CONFIG_MFD_PCF50633 is not set
1019# CONFIG_AB3100_CORE is not set 1070# CONFIG_AB3100_CORE is not set
1071# CONFIG_MFD_88PM8607 is not set
1020# CONFIG_REGULATOR is not set 1072# CONFIG_REGULATOR is not set
1021# CONFIG_MEDIA_SUPPORT is not set 1073# CONFIG_MEDIA_SUPPORT is not set
1022 1074
1023# 1075#
1024# Graphics support 1076# Graphics support
1025# 1077#
1078CONFIG_VGA_ARB=y
1026# CONFIG_DRM is not set 1079# CONFIG_DRM is not set
1027# CONFIG_VGASTATE is not set 1080# CONFIG_VGASTATE is not set
1028# CONFIG_VIDEO_OUTPUT_CONTROL is not set 1081# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -1176,6 +1229,7 @@ CONFIG_SND_ALI5451=m
1176# CONFIG_SND_OXYGEN is not set 1229# CONFIG_SND_OXYGEN is not set
1177# CONFIG_SND_CS4281 is not set 1230# CONFIG_SND_CS4281 is not set
1178# CONFIG_SND_CS46XX is not set 1231# CONFIG_SND_CS46XX is not set
1232# CONFIG_SND_CS5535AUDIO is not set
1179# CONFIG_SND_CTXFI is not set 1233# CONFIG_SND_CTXFI is not set
1180# CONFIG_SND_DARLA20 is not set 1234# CONFIG_SND_DARLA20 is not set
1181# CONFIG_SND_GINA20 is not set 1235# CONFIG_SND_GINA20 is not set
@@ -1311,6 +1365,7 @@ CONFIG_USB_EHCI_HCD=m
1311# CONFIG_USB_OXU210HP_HCD is not set 1365# CONFIG_USB_OXU210HP_HCD is not set
1312# CONFIG_USB_ISP116X_HCD is not set 1366# CONFIG_USB_ISP116X_HCD is not set
1313# CONFIG_USB_ISP1760_HCD is not set 1367# CONFIG_USB_ISP1760_HCD is not set
1368# CONFIG_USB_ISP1362_HCD is not set
1314CONFIG_USB_OHCI_HCD=y 1369CONFIG_USB_OHCI_HCD=y
1315# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 1370# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
1316# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set 1371# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
@@ -1426,6 +1481,7 @@ CONFIG_RTC_INTF_DEV=y
1426# CONFIG_RTC_DRV_PCF8563 is not set 1481# CONFIG_RTC_DRV_PCF8563 is not set
1427# CONFIG_RTC_DRV_PCF8583 is not set 1482# CONFIG_RTC_DRV_PCF8583 is not set
1428# CONFIG_RTC_DRV_M41T80 is not set 1483# CONFIG_RTC_DRV_M41T80 is not set
1484# CONFIG_RTC_DRV_BQ32K is not set
1429# CONFIG_RTC_DRV_S35390A is not set 1485# CONFIG_RTC_DRV_S35390A is not set
1430# CONFIG_RTC_DRV_FM3130 is not set 1486# CONFIG_RTC_DRV_FM3130 is not set
1431# CONFIG_RTC_DRV_RX8581 is not set 1487# CONFIG_RTC_DRV_RX8581 is not set
@@ -1447,7 +1503,9 @@ CONFIG_RTC_DRV_CMOS=y
1447# CONFIG_RTC_DRV_M48T86 is not set 1503# CONFIG_RTC_DRV_M48T86 is not set
1448# CONFIG_RTC_DRV_M48T35 is not set 1504# CONFIG_RTC_DRV_M48T35 is not set
1449CONFIG_RTC_DRV_M48T59=y 1505CONFIG_RTC_DRV_M48T59=y
1506# CONFIG_RTC_DRV_MSM6242 is not set
1450CONFIG_RTC_DRV_BQ4802=y 1507CONFIG_RTC_DRV_BQ4802=y
1508# CONFIG_RTC_DRV_RP5C01 is not set
1451# CONFIG_RTC_DRV_V3020 is not set 1509# CONFIG_RTC_DRV_V3020 is not set
1452 1510
1453# 1511#
@@ -1625,6 +1683,7 @@ CONFIG_PRINTK_TIME=y
1625CONFIG_ENABLE_MUST_CHECK=y 1683CONFIG_ENABLE_MUST_CHECK=y
1626CONFIG_FRAME_WARN=2048 1684CONFIG_FRAME_WARN=2048
1627CONFIG_MAGIC_SYSRQ=y 1685CONFIG_MAGIC_SYSRQ=y
1686# CONFIG_STRIP_ASM_SYMS is not set
1628# CONFIG_UNUSED_SYMBOLS is not set 1687# CONFIG_UNUSED_SYMBOLS is not set
1629CONFIG_DEBUG_FS=y 1688CONFIG_DEBUG_FS=y
1630# CONFIG_HEADERS_CHECK is not set 1689# CONFIG_HEADERS_CHECK is not set
@@ -1678,9 +1737,11 @@ CONFIG_NOP_TRACER=y
1678CONFIG_HAVE_FUNCTION_TRACER=y 1737CONFIG_HAVE_FUNCTION_TRACER=y
1679CONFIG_HAVE_DYNAMIC_FTRACE=y 1738CONFIG_HAVE_DYNAMIC_FTRACE=y
1680CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1739CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1740CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
1681CONFIG_RING_BUFFER=y 1741CONFIG_RING_BUFFER=y
1682CONFIG_EVENT_TRACING=y 1742CONFIG_EVENT_TRACING=y
1683CONFIG_CONTEXT_SWITCH_TRACER=y 1743CONFIG_CONTEXT_SWITCH_TRACER=y
1744CONFIG_RING_BUFFER_ALLOW_SWAP=y
1684CONFIG_TRACING=y 1745CONFIG_TRACING=y
1685CONFIG_GENERIC_TRACER=y 1746CONFIG_GENERIC_TRACER=y
1686CONFIG_TRACING_SUPPORT=y 1747CONFIG_TRACING_SUPPORT=y
@@ -1688,6 +1749,7 @@ CONFIG_FTRACE=y
1688# CONFIG_FUNCTION_TRACER is not set 1749# CONFIG_FUNCTION_TRACER is not set
1689# CONFIG_IRQSOFF_TRACER is not set 1750# CONFIG_IRQSOFF_TRACER is not set
1690# CONFIG_SCHED_TRACER is not set 1751# CONFIG_SCHED_TRACER is not set
1752# CONFIG_FTRACE_SYSCALLS is not set
1691# CONFIG_BOOT_TRACER is not set 1753# CONFIG_BOOT_TRACER is not set
1692CONFIG_BRANCH_PROFILE_NONE=y 1754CONFIG_BRANCH_PROFILE_NONE=y
1693# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set 1755# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
@@ -1706,6 +1768,7 @@ CONFIG_HAVE_ARCH_KGDB=y
1706# CONFIG_DEBUG_STACK_USAGE is not set 1768# CONFIG_DEBUG_STACK_USAGE is not set
1707# CONFIG_DEBUG_DCFLUSH is not set 1769# CONFIG_DEBUG_DCFLUSH is not set
1708# CONFIG_STACK_DEBUG is not set 1770# CONFIG_STACK_DEBUG is not set
1771# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
1709 1772
1710# 1773#
1711# Security options 1774# Security options
@@ -1714,11 +1777,17 @@ CONFIG_KEYS=y
1714# CONFIG_KEYS_DEBUG_PROC_KEYS is not set 1777# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
1715# CONFIG_SECURITY is not set 1778# CONFIG_SECURITY is not set
1716# CONFIG_SECURITYFS is not set 1779# CONFIG_SECURITYFS is not set
1717# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1780# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1781# CONFIG_DEFAULT_SECURITY_SMACK is not set
1782# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1783CONFIG_DEFAULT_SECURITY_DAC=y
1784CONFIG_DEFAULT_SECURITY=""
1718CONFIG_XOR_BLOCKS=m 1785CONFIG_XOR_BLOCKS=m
1719CONFIG_ASYNC_CORE=m 1786CONFIG_ASYNC_CORE=m
1720CONFIG_ASYNC_MEMCPY=m 1787CONFIG_ASYNC_MEMCPY=m
1721CONFIG_ASYNC_XOR=m 1788CONFIG_ASYNC_XOR=m
1789CONFIG_ASYNC_PQ=m
1790CONFIG_ASYNC_RAID6_RECOV=m
1722CONFIG_CRYPTO=y 1791CONFIG_CRYPTO=y
1723 1792
1724# 1793#
diff --git a/arch/sparc/include/asm/elf_64.h b/arch/sparc/include/asm/elf_64.h
index ff66bb88537b..e67880381b84 100644
--- a/arch/sparc/include/asm/elf_64.h
+++ b/arch/sparc/include/asm/elf_64.h
@@ -195,17 +195,10 @@ static inline unsigned int sparc64_elf_hwcap(void)
195#define ELF_PLATFORM (NULL) 195#define ELF_PLATFORM (NULL)
196 196
197#define SET_PERSONALITY(ex) \ 197#define SET_PERSONALITY(ex) \
198do { unsigned long new_flags = current_thread_info()->flags; \ 198do { if ((ex).e_ident[EI_CLASS] == ELFCLASS32) \
199 new_flags &= _TIF_32BIT; \ 199 set_thread_flag(TIF_32BIT); \
200 if ((ex).e_ident[EI_CLASS] == ELFCLASS32) \
201 new_flags |= _TIF_32BIT; \
202 else \ 200 else \
203 new_flags &= ~_TIF_32BIT; \ 201 clear_thread_flag(TIF_32BIT); \
204 if ((current_thread_info()->flags & _TIF_32BIT) \
205 != new_flags) \
206 set_thread_flag(TIF_ABI_PENDING); \
207 else \
208 clear_thread_flag(TIF_ABI_PENDING); \
209 /* flush_thread will update pgd cache */ \ 202 /* flush_thread will update pgd cache */ \
210 if (personality(current->personality) != PER_LINUX32) \ 203 if (personality(current->personality) != PER_LINUX32) \
211 set_personality(PER_LINUX | \ 204 set_personality(PER_LINUX | \
diff --git a/arch/sparc/include/asm/io_32.h b/arch/sparc/include/asm/io_32.h
index 93fe21e02c86..679c7504625a 100644
--- a/arch/sparc/include/asm/io_32.h
+++ b/arch/sparc/include/asm/io_32.h
@@ -8,7 +8,7 @@
8#include <asm/page.h> /* IO address mapping routines need this */ 8#include <asm/page.h> /* IO address mapping routines need this */
9#include <asm/system.h> 9#include <asm/system.h>
10 10
11#define page_to_phys(page) (((page) - mem_map) << PAGE_SHIFT) 11#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT)
12 12
13static inline u32 flip_dword (u32 l) 13static inline u32 flip_dword (u32 l)
14{ 14{
diff --git a/arch/sparc/include/asm/page_32.h b/arch/sparc/include/asm/page_32.h
index f72080bdda94..156707b0f18d 100644
--- a/arch/sparc/include/asm/page_32.h
+++ b/arch/sparc/include/asm/page_32.h
@@ -143,7 +143,7 @@ extern unsigned long pfn_base;
143#define phys_to_virt __va 143#define phys_to_virt __va
144 144
145#define ARCH_PFN_OFFSET (pfn_base) 145#define ARCH_PFN_OFFSET (pfn_base)
146#define virt_to_page(kaddr) (mem_map + ((((unsigned long)(kaddr)-PAGE_OFFSET)>>PAGE_SHIFT))) 146#define virt_to_page(kaddr) pfn_to_page(__pa(kaddr) >> PAGE_SHIFT)
147 147
148#define pfn_valid(pfn) (((pfn) >= (pfn_base)) && (((pfn)-(pfn_base)) < max_mapnr)) 148#define pfn_valid(pfn) (((pfn) >= (pfn_base)) && (((pfn)-(pfn_base)) < max_mapnr))
149#define virt_addr_valid(kaddr) ((((unsigned long)(kaddr)-PAGE_OFFSET)>>PAGE_SHIFT) < max_mapnr) 149#define virt_addr_valid(kaddr) ((((unsigned long)(kaddr)-PAGE_OFFSET)>>PAGE_SHIFT) < max_mapnr)
diff --git a/arch/sparc/include/asm/param.h b/arch/sparc/include/asm/param.h
index 9836d9a3cb9a..0bc356bf8c50 100644
--- a/arch/sparc/include/asm/param.h
+++ b/arch/sparc/include/asm/param.h
@@ -1,22 +1,7 @@
1#ifndef _ASMSPARC_PARAM_H 1#ifndef _ASMSPARC_PARAM_H
2#define _ASMSPARC_PARAM_H 2#define _ASMSPARC_PARAM_H
3 3
4#ifdef __KERNEL__
5# define HZ CONFIG_HZ /* Internal kernel timer frequency */
6# define USER_HZ 100 /* .. some user interfaces are in "ticks" */
7# define CLOCKS_PER_SEC (USER_HZ)
8#endif
9
10#ifndef HZ
11#define HZ 100
12#endif
13
14#define EXEC_PAGESIZE 8192 /* Thanks for sun4's we carry baggage... */ 4#define EXEC_PAGESIZE 8192 /* Thanks for sun4's we carry baggage... */
5#include <asm-generic/param.h>
15 6
16#ifndef NOGROUP 7#endif /* _ASMSPARC_PARAM_H */
17#define NOGROUP (-1)
18#endif
19
20#define MAXHOSTNAMELEN 64 /* max length of hostname */
21
22#endif
diff --git a/arch/sparc/include/asm/thread_info_64.h b/arch/sparc/include/asm/thread_info_64.h
index 7257ebb8f394..39be9f256e5a 100644
--- a/arch/sparc/include/asm/thread_info_64.h
+++ b/arch/sparc/include/asm/thread_info_64.h
@@ -228,12 +228,11 @@ register struct thread_info *current_thread_info_reg asm("g6");
228#define TIF_SECCOMP 9 /* secure computing */ 228#define TIF_SECCOMP 9 /* secure computing */
229#define TIF_SYSCALL_AUDIT 10 /* syscall auditing active */ 229#define TIF_SYSCALL_AUDIT 10 /* syscall auditing active */
230#define TIF_SYSCALL_TRACEPOINT 11 /* syscall tracepoint instrumentation */ 230#define TIF_SYSCALL_TRACEPOINT 11 /* syscall tracepoint instrumentation */
231/* flag bit 11 is available */
232/* NOTE: Thread flags >= 12 should be ones we have no interest 231/* NOTE: Thread flags >= 12 should be ones we have no interest
233 * in using in assembly, else we can't use the mask as 232 * in using in assembly, else we can't use the mask as
234 * an immediate value in instructions such as andcc. 233 * an immediate value in instructions such as andcc.
235 */ 234 */
236#define TIF_ABI_PENDING 12 235/* flag bit 12 is available */
237#define TIF_MEMDIE 13 236#define TIF_MEMDIE 13
238#define TIF_POLLING_NRFLAG 14 237#define TIF_POLLING_NRFLAG 14
239#define TIF_FREEZE 15 /* is freezing for suspend */ 238#define TIF_FREEZE 15 /* is freezing for suspend */
@@ -248,7 +247,6 @@ register struct thread_info *current_thread_info_reg asm("g6");
248#define _TIF_SECCOMP (1<<TIF_SECCOMP) 247#define _TIF_SECCOMP (1<<TIF_SECCOMP)
249#define _TIF_SYSCALL_AUDIT (1<<TIF_SYSCALL_AUDIT) 248#define _TIF_SYSCALL_AUDIT (1<<TIF_SYSCALL_AUDIT)
250#define _TIF_SYSCALL_TRACEPOINT (1<<TIF_SYSCALL_TRACEPOINT) 249#define _TIF_SYSCALL_TRACEPOINT (1<<TIF_SYSCALL_TRACEPOINT)
251#define _TIF_ABI_PENDING (1<<TIF_ABI_PENDING)
252#define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG) 250#define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG)
253#define _TIF_FREEZE (1<<TIF_FREEZE) 251#define _TIF_FREEZE (1<<TIF_FREEZE)
254 252
diff --git a/arch/sparc/include/asm/timex_32.h b/arch/sparc/include/asm/timex_32.h
index b6ccdb0d6f7d..a254750e4c03 100644
--- a/arch/sparc/include/asm/timex_32.h
+++ b/arch/sparc/include/asm/timex_32.h
@@ -12,4 +12,5 @@
12typedef unsigned long cycles_t; 12typedef unsigned long cycles_t;
13#define get_cycles() (0) 13#define get_cycles() (0)
14 14
15extern u32 (*do_arch_gettimeoffset)(void);
15#endif 16#endif
diff --git a/arch/sparc/include/asm/topology_64.h b/arch/sparc/include/asm/topology_64.h
index 600a79035fa1..1c79f32734a0 100644
--- a/arch/sparc/include/asm/topology_64.h
+++ b/arch/sparc/include/asm/topology_64.h
@@ -12,7 +12,9 @@ static inline int cpu_to_node(int cpu)
12 12
13#define parent_node(node) (node) 13#define parent_node(node) (node)
14 14
15#define cpumask_of_node(node) (&numa_cpumask_lookup_table[node]) 15#define cpumask_of_node(node) ((node) == -1 ? \
16 cpu_all_mask : \
17 &numa_cpumask_lookup_table[node])
16 18
17struct pci_bus; 19struct pci_bus;
18#ifdef CONFIG_PCI 20#ifdef CONFIG_PCI
diff --git a/arch/sparc/include/asm/uaccess_32.h b/arch/sparc/include/asm/uaccess_32.h
index 489d2ba92bcb..25f1d10155e8 100644
--- a/arch/sparc/include/asm/uaccess_32.h
+++ b/arch/sparc/include/asm/uaccess_32.h
@@ -274,7 +274,7 @@ static inline unsigned long copy_from_user(void *to, const void __user *from, un
274 274
275 if (unlikely(sz != -1 && sz < n)) { 275 if (unlikely(sz != -1 && sz < n)) {
276 copy_from_user_overflow(); 276 copy_from_user_overflow();
277 return -EFAULT; 277 return n;
278 } 278 }
279 279
280 if (n && __access_ok((unsigned long) from, n)) 280 if (n && __access_ok((unsigned long) from, n))
diff --git a/arch/sparc/include/asm/uaccess_64.h b/arch/sparc/include/asm/uaccess_64.h
index dbc141660994..2406788bfe5f 100644
--- a/arch/sparc/include/asm/uaccess_64.h
+++ b/arch/sparc/include/asm/uaccess_64.h
@@ -221,8 +221,8 @@ extern unsigned long copy_from_user_fixup(void *to, const void __user *from,
221static inline unsigned long __must_check 221static inline unsigned long __must_check
222copy_from_user(void *to, const void __user *from, unsigned long size) 222copy_from_user(void *to, const void __user *from, unsigned long size)
223{ 223{
224 unsigned long ret = (unsigned long) -EFAULT;
225 int sz = __compiletime_object_size(to); 224 int sz = __compiletime_object_size(to);
225 unsigned long ret = size;
226 226
227 if (likely(sz == -1 || sz >= size)) { 227 if (likely(sz == -1 || sz >= size)) {
228 ret = ___copy_from_user(to, from, size); 228 ret = ___copy_from_user(to, from, size);
diff --git a/arch/sparc/kernel/central.c b/arch/sparc/kernel/central.c
index f3b5466c389c..4589ca33220f 100644
--- a/arch/sparc/kernel/central.c
+++ b/arch/sparc/kernel/central.c
@@ -99,7 +99,7 @@ static int __devinit clock_board_probe(struct of_device *op,
99 99
100 p->leds_resource.start = (unsigned long) 100 p->leds_resource.start = (unsigned long)
101 (p->clock_regs + CLOCK_CTRL); 101 (p->clock_regs + CLOCK_CTRL);
102 p->leds_resource.end = p->leds_resource.end; 102 p->leds_resource.end = p->leds_resource.start;
103 p->leds_resource.name = "leds"; 103 p->leds_resource.name = "leds";
104 104
105 p->leds_pdev.name = "sunfire-clockboard-leds"; 105 p->leds_pdev.name = "sunfire-clockboard-leds";
@@ -194,7 +194,7 @@ static int __devinit fhc_probe(struct of_device *op,
194 if (!p->central) { 194 if (!p->central) {
195 p->leds_resource.start = (unsigned long) 195 p->leds_resource.start = (unsigned long)
196 (p->pregs + FHC_PREGS_CTRL); 196 (p->pregs + FHC_PREGS_CTRL);
197 p->leds_resource.end = p->leds_resource.end; 197 p->leds_resource.end = p->leds_resource.start;
198 p->leds_resource.name = "leds"; 198 p->leds_resource.name = "leds";
199 199
200 p->leds_pdev.name = "sunfire-fhc-leds"; 200 p->leds_pdev.name = "sunfire-fhc-leds";
diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c
index 8d6882bb480a..e1cbdb94d97b 100644
--- a/arch/sparc/kernel/irq_64.c
+++ b/arch/sparc/kernel/irq_64.c
@@ -250,12 +250,12 @@ struct irq_handler_data {
250}; 250};
251 251
252#ifdef CONFIG_SMP 252#ifdef CONFIG_SMP
253static int irq_choose_cpu(unsigned int virt_irq) 253static int irq_choose_cpu(unsigned int virt_irq, const struct cpumask *affinity)
254{ 254{
255 cpumask_t mask; 255 cpumask_t mask;
256 int cpuid; 256 int cpuid;
257 257
258 cpumask_copy(&mask, irq_desc[virt_irq].affinity); 258 cpumask_copy(&mask, affinity);
259 if (cpus_equal(mask, cpu_online_map)) { 259 if (cpus_equal(mask, cpu_online_map)) {
260 cpuid = map_to_cpu(virt_irq); 260 cpuid = map_to_cpu(virt_irq);
261 } else { 261 } else {
@@ -268,10 +268,8 @@ static int irq_choose_cpu(unsigned int virt_irq)
268 return cpuid; 268 return cpuid;
269} 269}
270#else 270#else
271static int irq_choose_cpu(unsigned int virt_irq) 271#define irq_choose_cpu(virt_irq, affinity) \
272{ 272 real_hard_smp_processor_id()
273 return real_hard_smp_processor_id();
274}
275#endif 273#endif
276 274
277static void sun4u_irq_enable(unsigned int virt_irq) 275static void sun4u_irq_enable(unsigned int virt_irq)
@@ -282,7 +280,8 @@ static void sun4u_irq_enable(unsigned int virt_irq)
282 unsigned long cpuid, imap, val; 280 unsigned long cpuid, imap, val;
283 unsigned int tid; 281 unsigned int tid;
284 282
285 cpuid = irq_choose_cpu(virt_irq); 283 cpuid = irq_choose_cpu(virt_irq,
284 irq_desc[virt_irq].affinity);
286 imap = data->imap; 285 imap = data->imap;
287 286
288 tid = sun4u_compute_tid(imap, cpuid); 287 tid = sun4u_compute_tid(imap, cpuid);
@@ -299,7 +298,24 @@ static void sun4u_irq_enable(unsigned int virt_irq)
299static int sun4u_set_affinity(unsigned int virt_irq, 298static int sun4u_set_affinity(unsigned int virt_irq,
300 const struct cpumask *mask) 299 const struct cpumask *mask)
301{ 300{
302 sun4u_irq_enable(virt_irq); 301 struct irq_handler_data *data = get_irq_chip_data(virt_irq);
302
303 if (likely(data)) {
304 unsigned long cpuid, imap, val;
305 unsigned int tid;
306
307 cpuid = irq_choose_cpu(virt_irq, mask);
308 imap = data->imap;
309
310 tid = sun4u_compute_tid(imap, cpuid);
311
312 val = upa_readq(imap);
313 val &= ~(IMAP_TID_UPA | IMAP_TID_JBUS |
314 IMAP_AID_SAFARI | IMAP_NID_SAFARI);
315 val |= tid | IMAP_VALID;
316 upa_writeq(val, imap);
317 upa_writeq(ICLR_IDLE, data->iclr);
318 }
303 319
304 return 0; 320 return 0;
305} 321}
@@ -340,7 +356,8 @@ static void sun4u_irq_eoi(unsigned int virt_irq)
340static void sun4v_irq_enable(unsigned int virt_irq) 356static void sun4v_irq_enable(unsigned int virt_irq)
341{ 357{
342 unsigned int ino = virt_irq_table[virt_irq].dev_ino; 358 unsigned int ino = virt_irq_table[virt_irq].dev_ino;
343 unsigned long cpuid = irq_choose_cpu(virt_irq); 359 unsigned long cpuid = irq_choose_cpu(virt_irq,
360 irq_desc[virt_irq].affinity);
344 int err; 361 int err;
345 362
346 err = sun4v_intr_settarget(ino, cpuid); 363 err = sun4v_intr_settarget(ino, cpuid);
@@ -361,7 +378,7 @@ static int sun4v_set_affinity(unsigned int virt_irq,
361 const struct cpumask *mask) 378 const struct cpumask *mask)
362{ 379{
363 unsigned int ino = virt_irq_table[virt_irq].dev_ino; 380 unsigned int ino = virt_irq_table[virt_irq].dev_ino;
364 unsigned long cpuid = irq_choose_cpu(virt_irq); 381 unsigned long cpuid = irq_choose_cpu(virt_irq, mask);
365 int err; 382 int err;
366 383
367 err = sun4v_intr_settarget(ino, cpuid); 384 err = sun4v_intr_settarget(ino, cpuid);
@@ -403,7 +420,7 @@ static void sun4v_virq_enable(unsigned int virt_irq)
403 unsigned long cpuid, dev_handle, dev_ino; 420 unsigned long cpuid, dev_handle, dev_ino;
404 int err; 421 int err;
405 422
406 cpuid = irq_choose_cpu(virt_irq); 423 cpuid = irq_choose_cpu(virt_irq, irq_desc[virt_irq].affinity);
407 424
408 dev_handle = virt_irq_table[virt_irq].dev_handle; 425 dev_handle = virt_irq_table[virt_irq].dev_handle;
409 dev_ino = virt_irq_table[virt_irq].dev_ino; 426 dev_ino = virt_irq_table[virt_irq].dev_ino;
@@ -433,7 +450,7 @@ static int sun4v_virt_set_affinity(unsigned int virt_irq,
433 unsigned long cpuid, dev_handle, dev_ino; 450 unsigned long cpuid, dev_handle, dev_ino;
434 int err; 451 int err;
435 452
436 cpuid = irq_choose_cpu(virt_irq); 453 cpuid = irq_choose_cpu(virt_irq, mask);
437 454
438 dev_handle = virt_irq_table[virt_irq].dev_handle; 455 dev_handle = virt_irq_table[virt_irq].dev_handle;
439 dev_ino = virt_irq_table[virt_irq].dev_ino; 456 dev_ino = virt_irq_table[virt_irq].dev_ino;
diff --git a/arch/sparc/kernel/pcic.c b/arch/sparc/kernel/pcic.c
index 85e7037429b9..4e2724ec2bb6 100644
--- a/arch/sparc/kernel/pcic.c
+++ b/arch/sparc/kernel/pcic.c
@@ -30,6 +30,7 @@
30#include <asm/oplib.h> 30#include <asm/oplib.h>
31#include <asm/prom.h> 31#include <asm/prom.h>
32#include <asm/pcic.h> 32#include <asm/pcic.h>
33#include <asm/timex.h>
33#include <asm/timer.h> 34#include <asm/timer.h>
34#include <asm/uaccess.h> 35#include <asm/uaccess.h>
35#include <asm/irq_regs.h> 36#include <asm/irq_regs.h>
@@ -163,8 +164,6 @@ void __iomem *pcic_regs;
163volatile int pcic_speculative; 164volatile int pcic_speculative;
164volatile int pcic_trapped; 165volatile int pcic_trapped;
165 166
166static void pci_do_gettimeofday(struct timeval *tv);
167static int pci_do_settimeofday(struct timespec *tv);
168 167
169#define CONFIG_CMD(bus, device_fn, where) (0x80000000 | (((unsigned int)bus) << 16) | (((unsigned int)device_fn) << 8) | (where & ~3)) 168#define CONFIG_CMD(bus, device_fn, where) (0x80000000 | (((unsigned int)bus) << 16) | (((unsigned int)device_fn) << 8) | (where & ~3))
170 169
@@ -716,19 +715,27 @@ static irqreturn_t pcic_timer_handler (int irq, void *h)
716#define USECS_PER_JIFFY 10000 /* We have 100HZ "standard" timer for sparc */ 715#define USECS_PER_JIFFY 10000 /* We have 100HZ "standard" timer for sparc */
717#define TICK_TIMER_LIMIT ((100*1000000/4)/100) 716#define TICK_TIMER_LIMIT ((100*1000000/4)/100)
718 717
718u32 pci_gettimeoffset(void)
719{
720 /*
721 * We divide all by 100
722 * to have microsecond resolution and to avoid overflow
723 */
724 unsigned long count =
725 readl(pcic0.pcic_regs+PCI_SYS_COUNTER) & ~PCI_SYS_COUNTER_OVERFLOW;
726 count = ((count/100)*USECS_PER_JIFFY) / (TICK_TIMER_LIMIT/100);
727 return count * 1000;
728}
729
730
719void __init pci_time_init(void) 731void __init pci_time_init(void)
720{ 732{
721 struct linux_pcic *pcic = &pcic0; 733 struct linux_pcic *pcic = &pcic0;
722 unsigned long v; 734 unsigned long v;
723 int timer_irq, irq; 735 int timer_irq, irq;
724 736
725 /* A hack until do_gettimeofday prototype is moved to arch specific headers 737 do_arch_gettimeoffset = pci_gettimeoffset;
726 and btfixupped. Patch do_gettimeofday with ba pci_do_gettimeofday; nop */ 738
727 ((unsigned int *)do_gettimeofday)[0] =
728 0x10800000 | ((((unsigned long)pci_do_gettimeofday -
729 (unsigned long)do_gettimeofday) >> 2) & 0x003fffff);
730 ((unsigned int *)do_gettimeofday)[1] = 0x01000000;
731 BTFIXUPSET_CALL(bus_do_settimeofday, pci_do_settimeofday, BTFIXUPCALL_NORM);
732 btfixup(); 739 btfixup();
733 740
734 writel (TICK_TIMER_LIMIT, pcic->pcic_regs+PCI_SYS_LIMIT); 741 writel (TICK_TIMER_LIMIT, pcic->pcic_regs+PCI_SYS_LIMIT);
@@ -746,84 +753,6 @@ void __init pci_time_init(void)
746 local_irq_enable(); 753 local_irq_enable();
747} 754}
748 755
749static inline unsigned long do_gettimeoffset(void)
750{
751 /*
752 * We divide all by 100
753 * to have microsecond resolution and to avoid overflow
754 */
755 unsigned long count =
756 readl(pcic0.pcic_regs+PCI_SYS_COUNTER) & ~PCI_SYS_COUNTER_OVERFLOW;
757 count = ((count/100)*USECS_PER_JIFFY) / (TICK_TIMER_LIMIT/100);
758 return count;
759}
760
761static void pci_do_gettimeofday(struct timeval *tv)
762{
763 unsigned long flags;
764 unsigned long seq;
765 unsigned long usec, sec;
766 unsigned long max_ntp_tick = tick_usec - tickadj;
767
768 do {
769 seq = read_seqbegin_irqsave(&xtime_lock, flags);
770 usec = do_gettimeoffset();
771
772 /*
773 * If time_adjust is negative then NTP is slowing the clock
774 * so make sure not to go into next possible interval.
775 * Better to lose some accuracy than have time go backwards..
776 */
777 if (unlikely(time_adjust < 0))
778 usec = min(usec, max_ntp_tick);
779
780 sec = xtime.tv_sec;
781 usec += (xtime.tv_nsec / 1000);
782 } while (read_seqretry_irqrestore(&xtime_lock, seq, flags));
783
784 while (usec >= 1000000) {
785 usec -= 1000000;
786 sec++;
787 }
788
789 tv->tv_sec = sec;
790 tv->tv_usec = usec;
791}
792
793static int pci_do_settimeofday(struct timespec *tv)
794{
795 if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC)
796 return -EINVAL;
797
798 /*
799 * This is revolting. We need to set "xtime" correctly. However, the
800 * value in this location is the value at the most recent update of
801 * wall time. Discover what correction gettimeofday() would have
802 * made, and then undo it!
803 */
804 tv->tv_nsec -= 1000 * do_gettimeoffset();
805 while (tv->tv_nsec < 0) {
806 tv->tv_nsec += NSEC_PER_SEC;
807 tv->tv_sec--;
808 }
809
810 wall_to_monotonic.tv_sec += xtime.tv_sec - tv->tv_sec;
811 wall_to_monotonic.tv_nsec += xtime.tv_nsec - tv->tv_nsec;
812
813 if (wall_to_monotonic.tv_nsec > NSEC_PER_SEC) {
814 wall_to_monotonic.tv_nsec -= NSEC_PER_SEC;
815 wall_to_monotonic.tv_sec++;
816 }
817 if (wall_to_monotonic.tv_nsec < 0) {
818 wall_to_monotonic.tv_nsec += NSEC_PER_SEC;
819 wall_to_monotonic.tv_sec--;
820 }
821
822 xtime.tv_sec = tv->tv_sec;
823 xtime.tv_nsec = tv->tv_nsec;
824 ntp_clear();
825 return 0;
826}
827 756
828#if 0 757#if 0
829static void watchdog_reset() { 758static void watchdog_reset() {
diff --git a/arch/sparc/kernel/perf_event.c b/arch/sparc/kernel/perf_event.c
index 198fb4e79ba2..e856456ec02f 100644
--- a/arch/sparc/kernel/perf_event.c
+++ b/arch/sparc/kernel/perf_event.c
@@ -1,6 +1,6 @@
1/* Performance event support for sparc64. 1/* Performance event support for sparc64.
2 * 2 *
3 * Copyright (C) 2009 David S. Miller <davem@davemloft.net> 3 * Copyright (C) 2009, 2010 David S. Miller <davem@davemloft.net>
4 * 4 *
5 * This code is based almost entirely upon the x86 perf event 5 * This code is based almost entirely upon the x86 perf event
6 * code, which is: 6 * code, which is:
@@ -18,11 +18,15 @@
18#include <linux/kdebug.h> 18#include <linux/kdebug.h>
19#include <linux/mutex.h> 19#include <linux/mutex.h>
20 20
21#include <asm/stacktrace.h>
21#include <asm/cpudata.h> 22#include <asm/cpudata.h>
23#include <asm/uaccess.h>
22#include <asm/atomic.h> 24#include <asm/atomic.h>
23#include <asm/nmi.h> 25#include <asm/nmi.h>
24#include <asm/pcr.h> 26#include <asm/pcr.h>
25 27
28#include "kstack.h"
29
26/* Sparc64 chips have two performance counters, 32-bits each, with 30/* Sparc64 chips have two performance counters, 32-bits each, with
27 * overflow interrupts generated on transition from 0xffffffff to 0. 31 * overflow interrupts generated on transition from 0xffffffff to 0.
28 * The counters are accessed in one go using a 64-bit register. 32 * The counters are accessed in one go using a 64-bit register.
@@ -51,16 +55,49 @@
51 55
52#define PIC_UPPER_INDEX 0 56#define PIC_UPPER_INDEX 0
53#define PIC_LOWER_INDEX 1 57#define PIC_LOWER_INDEX 1
58#define PIC_NO_INDEX -1
54 59
55struct cpu_hw_events { 60struct cpu_hw_events {
56 struct perf_event *events[MAX_HWEVENTS]; 61 /* Number of events currently scheduled onto this cpu.
57 unsigned long used_mask[BITS_TO_LONGS(MAX_HWEVENTS)]; 62 * This tells how many entries in the arrays below
58 unsigned long active_mask[BITS_TO_LONGS(MAX_HWEVENTS)]; 63 * are valid.
64 */
65 int n_events;
66
67 /* Number of new events added since the last hw_perf_disable().
68 * This works because the perf event layer always adds new
69 * events inside of a perf_{disable,enable}() sequence.
70 */
71 int n_added;
72
73 /* Array of events current scheduled on this cpu. */
74 struct perf_event *event[MAX_HWEVENTS];
75
76 /* Array of encoded longs, specifying the %pcr register
77 * encoding and the mask of PIC counters this even can
78 * be scheduled on. See perf_event_encode() et al.
79 */
80 unsigned long events[MAX_HWEVENTS];
81
82 /* The current counter index assigned to an event. When the
83 * event hasn't been programmed into the cpu yet, this will
84 * hold PIC_NO_INDEX. The event->hw.idx value tells us where
85 * we ought to schedule the event.
86 */
87 int current_idx[MAX_HWEVENTS];
88
89 /* Software copy of %pcr register on this cpu. */
59 u64 pcr; 90 u64 pcr;
91
92 /* Enabled/disable state. */
60 int enabled; 93 int enabled;
61}; 94};
62DEFINE_PER_CPU(struct cpu_hw_events, cpu_hw_events) = { .enabled = 1, }; 95DEFINE_PER_CPU(struct cpu_hw_events, cpu_hw_events) = { .enabled = 1, };
63 96
97/* An event map describes the characteristics of a performance
98 * counter event. In particular it gives the encoding as well as
99 * a mask telling which counters the event can be measured on.
100 */
64struct perf_event_map { 101struct perf_event_map {
65 u16 encoding; 102 u16 encoding;
66 u8 pic_mask; 103 u8 pic_mask;
@@ -69,15 +106,20 @@ struct perf_event_map {
69#define PIC_LOWER 0x02 106#define PIC_LOWER 0x02
70}; 107};
71 108
109/* Encode a perf_event_map entry into a long. */
72static unsigned long perf_event_encode(const struct perf_event_map *pmap) 110static unsigned long perf_event_encode(const struct perf_event_map *pmap)
73{ 111{
74 return ((unsigned long) pmap->encoding << 16) | pmap->pic_mask; 112 return ((unsigned long) pmap->encoding << 16) | pmap->pic_mask;
75} 113}
76 114
77static void perf_event_decode(unsigned long val, u16 *enc, u8 *msk) 115static u8 perf_event_get_msk(unsigned long val)
78{ 116{
79 *msk = val & 0xff; 117 return val & 0xff;
80 *enc = val >> 16; 118}
119
120static u64 perf_event_get_enc(unsigned long val)
121{
122 return val >> 16;
81} 123}
82 124
83#define C(x) PERF_COUNT_HW_CACHE_##x 125#define C(x) PERF_COUNT_HW_CACHE_##x
@@ -491,53 +533,6 @@ static inline void sparc_pmu_disable_event(struct cpu_hw_events *cpuc, struct hw
491 pcr_ops->write(cpuc->pcr); 533 pcr_ops->write(cpuc->pcr);
492} 534}
493 535
494void hw_perf_enable(void)
495{
496 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
497 u64 val;
498 int i;
499
500 if (cpuc->enabled)
501 return;
502
503 cpuc->enabled = 1;
504 barrier();
505
506 val = cpuc->pcr;
507
508 for (i = 0; i < MAX_HWEVENTS; i++) {
509 struct perf_event *cp = cpuc->events[i];
510 struct hw_perf_event *hwc;
511
512 if (!cp)
513 continue;
514 hwc = &cp->hw;
515 val |= hwc->config_base;
516 }
517
518 cpuc->pcr = val;
519
520 pcr_ops->write(cpuc->pcr);
521}
522
523void hw_perf_disable(void)
524{
525 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
526 u64 val;
527
528 if (!cpuc->enabled)
529 return;
530
531 cpuc->enabled = 0;
532
533 val = cpuc->pcr;
534 val &= ~(PCR_UTRACE | PCR_STRACE |
535 sparc_pmu->hv_bit | sparc_pmu->irq_bit);
536 cpuc->pcr = val;
537
538 pcr_ops->write(cpuc->pcr);
539}
540
541static u32 read_pmc(int idx) 536static u32 read_pmc(int idx)
542{ 537{
543 u64 val; 538 u64 val;
@@ -566,6 +561,30 @@ static void write_pmc(int idx, u64 val)
566 write_pic(pic); 561 write_pic(pic);
567} 562}
568 563
564static u64 sparc_perf_event_update(struct perf_event *event,
565 struct hw_perf_event *hwc, int idx)
566{
567 int shift = 64 - 32;
568 u64 prev_raw_count, new_raw_count;
569 s64 delta;
570
571again:
572 prev_raw_count = atomic64_read(&hwc->prev_count);
573 new_raw_count = read_pmc(idx);
574
575 if (atomic64_cmpxchg(&hwc->prev_count, prev_raw_count,
576 new_raw_count) != prev_raw_count)
577 goto again;
578
579 delta = (new_raw_count << shift) - (prev_raw_count << shift);
580 delta >>= shift;
581
582 atomic64_add(delta, &event->count);
583 atomic64_sub(delta, &hwc->period_left);
584
585 return new_raw_count;
586}
587
569static int sparc_perf_event_set_period(struct perf_event *event, 588static int sparc_perf_event_set_period(struct perf_event *event,
570 struct hw_perf_event *hwc, int idx) 589 struct hw_perf_event *hwc, int idx)
571{ 590{
@@ -598,81 +617,166 @@ static int sparc_perf_event_set_period(struct perf_event *event,
598 return ret; 617 return ret;
599} 618}
600 619
601static int sparc_pmu_enable(struct perf_event *event) 620/* If performance event entries have been added, move existing
621 * events around (if necessary) and then assign new entries to
622 * counters.
623 */
624static u64 maybe_change_configuration(struct cpu_hw_events *cpuc, u64 pcr)
602{ 625{
603 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events); 626 int i;
604 struct hw_perf_event *hwc = &event->hw;
605 int idx = hwc->idx;
606 627
607 if (test_and_set_bit(idx, cpuc->used_mask)) 628 if (!cpuc->n_added)
608 return -EAGAIN; 629 goto out;
609 630
610 sparc_pmu_disable_event(cpuc, hwc, idx); 631 /* Read in the counters which are moving. */
632 for (i = 0; i < cpuc->n_events; i++) {
633 struct perf_event *cp = cpuc->event[i];
611 634
612 cpuc->events[idx] = event; 635 if (cpuc->current_idx[i] != PIC_NO_INDEX &&
613 set_bit(idx, cpuc->active_mask); 636 cpuc->current_idx[i] != cp->hw.idx) {
637 sparc_perf_event_update(cp, &cp->hw,
638 cpuc->current_idx[i]);
639 cpuc->current_idx[i] = PIC_NO_INDEX;
640 }
641 }
614 642
615 sparc_perf_event_set_period(event, hwc, idx); 643 /* Assign to counters all unassigned events. */
616 sparc_pmu_enable_event(cpuc, hwc, idx); 644 for (i = 0; i < cpuc->n_events; i++) {
617 perf_event_update_userpage(event); 645 struct perf_event *cp = cpuc->event[i];
618 return 0; 646 struct hw_perf_event *hwc = &cp->hw;
647 int idx = hwc->idx;
648 u64 enc;
649
650 if (cpuc->current_idx[i] != PIC_NO_INDEX)
651 continue;
652
653 sparc_perf_event_set_period(cp, hwc, idx);
654 cpuc->current_idx[i] = idx;
655
656 enc = perf_event_get_enc(cpuc->events[i]);
657 pcr |= event_encoding(enc, idx);
658 }
659out:
660 return pcr;
619} 661}
620 662
621static u64 sparc_perf_event_update(struct perf_event *event, 663void hw_perf_enable(void)
622 struct hw_perf_event *hwc, int idx)
623{ 664{
624 int shift = 64 - 32; 665 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
625 u64 prev_raw_count, new_raw_count; 666 u64 pcr;
626 s64 delta;
627 667
628again: 668 if (cpuc->enabled)
629 prev_raw_count = atomic64_read(&hwc->prev_count); 669 return;
630 new_raw_count = read_pmc(idx);
631 670
632 if (atomic64_cmpxchg(&hwc->prev_count, prev_raw_count, 671 cpuc->enabled = 1;
633 new_raw_count) != prev_raw_count) 672 barrier();
634 goto again;
635 673
636 delta = (new_raw_count << shift) - (prev_raw_count << shift); 674 pcr = cpuc->pcr;
637 delta >>= shift; 675 if (!cpuc->n_events) {
676 pcr = 0;
677 } else {
678 pcr = maybe_change_configuration(cpuc, pcr);
638 679
639 atomic64_add(delta, &event->count); 680 /* We require that all of the events have the same
640 atomic64_sub(delta, &hwc->period_left); 681 * configuration, so just fetch the settings from the
682 * first entry.
683 */
684 cpuc->pcr = pcr | cpuc->event[0]->hw.config_base;
685 }
641 686
642 return new_raw_count; 687 pcr_ops->write(cpuc->pcr);
688}
689
690void hw_perf_disable(void)
691{
692 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
693 u64 val;
694
695 if (!cpuc->enabled)
696 return;
697
698 cpuc->enabled = 0;
699 cpuc->n_added = 0;
700
701 val = cpuc->pcr;
702 val &= ~(PCR_UTRACE | PCR_STRACE |
703 sparc_pmu->hv_bit | sparc_pmu->irq_bit);
704 cpuc->pcr = val;
705
706 pcr_ops->write(cpuc->pcr);
643} 707}
644 708
645static void sparc_pmu_disable(struct perf_event *event) 709static void sparc_pmu_disable(struct perf_event *event)
646{ 710{
647 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events); 711 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
648 struct hw_perf_event *hwc = &event->hw; 712 struct hw_perf_event *hwc = &event->hw;
649 int idx = hwc->idx; 713 unsigned long flags;
714 int i;
650 715
651 clear_bit(idx, cpuc->active_mask); 716 local_irq_save(flags);
652 sparc_pmu_disable_event(cpuc, hwc, idx); 717 perf_disable();
718
719 for (i = 0; i < cpuc->n_events; i++) {
720 if (event == cpuc->event[i]) {
721 int idx = cpuc->current_idx[i];
722
723 /* Shift remaining entries down into
724 * the existing slot.
725 */
726 while (++i < cpuc->n_events) {
727 cpuc->event[i - 1] = cpuc->event[i];
728 cpuc->events[i - 1] = cpuc->events[i];
729 cpuc->current_idx[i - 1] =
730 cpuc->current_idx[i];
731 }
732
733 /* Absorb the final count and turn off the
734 * event.
735 */
736 sparc_pmu_disable_event(cpuc, hwc, idx);
737 barrier();
738 sparc_perf_event_update(event, hwc, idx);
653 739
654 barrier(); 740 perf_event_update_userpage(event);
655 741
656 sparc_perf_event_update(event, hwc, idx); 742 cpuc->n_events--;
657 cpuc->events[idx] = NULL; 743 break;
658 clear_bit(idx, cpuc->used_mask); 744 }
745 }
659 746
660 perf_event_update_userpage(event); 747 perf_enable();
748 local_irq_restore(flags);
749}
750
751static int active_event_index(struct cpu_hw_events *cpuc,
752 struct perf_event *event)
753{
754 int i;
755
756 for (i = 0; i < cpuc->n_events; i++) {
757 if (cpuc->event[i] == event)
758 break;
759 }
760 BUG_ON(i == cpuc->n_events);
761 return cpuc->current_idx[i];
661} 762}
662 763
663static void sparc_pmu_read(struct perf_event *event) 764static void sparc_pmu_read(struct perf_event *event)
664{ 765{
766 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
767 int idx = active_event_index(cpuc, event);
665 struct hw_perf_event *hwc = &event->hw; 768 struct hw_perf_event *hwc = &event->hw;
666 769
667 sparc_perf_event_update(event, hwc, hwc->idx); 770 sparc_perf_event_update(event, hwc, idx);
668} 771}
669 772
670static void sparc_pmu_unthrottle(struct perf_event *event) 773static void sparc_pmu_unthrottle(struct perf_event *event)
671{ 774{
672 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events); 775 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
776 int idx = active_event_index(cpuc, event);
673 struct hw_perf_event *hwc = &event->hw; 777 struct hw_perf_event *hwc = &event->hw;
674 778
675 sparc_pmu_enable_event(cpuc, hwc, hwc->idx); 779 sparc_pmu_enable_event(cpuc, hwc, idx);
676} 780}
677 781
678static atomic_t active_events = ATOMIC_INIT(0); 782static atomic_t active_events = ATOMIC_INIT(0);
@@ -750,43 +854,75 @@ static void hw_perf_event_destroy(struct perf_event *event)
750/* Make sure all events can be scheduled into the hardware at 854/* Make sure all events can be scheduled into the hardware at
751 * the same time. This is simplified by the fact that we only 855 * the same time. This is simplified by the fact that we only
752 * need to support 2 simultaneous HW events. 856 * need to support 2 simultaneous HW events.
857 *
858 * As a side effect, the evts[]->hw.idx values will be assigned
859 * on success. These are pending indexes. When the events are
860 * actually programmed into the chip, these values will propagate
861 * to the per-cpu cpuc->current_idx[] slots, see the code in
862 * maybe_change_configuration() for details.
753 */ 863 */
754static int sparc_check_constraints(unsigned long *events, int n_ev) 864static int sparc_check_constraints(struct perf_event **evts,
865 unsigned long *events, int n_ev)
755{ 866{
756 if (n_ev <= perf_max_events) { 867 u8 msk0 = 0, msk1 = 0;
757 u8 msk1, msk2; 868 int idx0 = 0;
758 u16 dummy; 869
759 870 /* This case is possible when we are invoked from
760 if (n_ev == 1) 871 * hw_perf_group_sched_in().
761 return 0; 872 */
762 BUG_ON(n_ev != 2); 873 if (!n_ev)
763 perf_event_decode(events[0], &dummy, &msk1); 874 return 0;
764 perf_event_decode(events[1], &dummy, &msk2); 875
765 876 if (n_ev > perf_max_events)
766 /* If both events can go on any counter, OK. */ 877 return -1;
767 if (msk1 == (PIC_UPPER | PIC_LOWER) && 878
768 msk2 == (PIC_UPPER | PIC_LOWER)) 879 msk0 = perf_event_get_msk(events[0]);
769 return 0; 880 if (n_ev == 1) {
770 881 if (msk0 & PIC_LOWER)
771 /* If one event is limited to a specific counter, 882 idx0 = 1;
772 * and the other can go on both, OK. 883 goto success;
773 */
774 if ((msk1 == PIC_UPPER || msk1 == PIC_LOWER) &&
775 msk2 == (PIC_UPPER | PIC_LOWER))
776 return 0;
777 if ((msk2 == PIC_UPPER || msk2 == PIC_LOWER) &&
778 msk1 == (PIC_UPPER | PIC_LOWER))
779 return 0;
780
781 /* If the events are fixed to different counters, OK. */
782 if ((msk1 == PIC_UPPER && msk2 == PIC_LOWER) ||
783 (msk1 == PIC_LOWER && msk2 == PIC_UPPER))
784 return 0;
785
786 /* Otherwise, there is a conflict. */
787 } 884 }
885 BUG_ON(n_ev != 2);
886 msk1 = perf_event_get_msk(events[1]);
887
888 /* If both events can go on any counter, OK. */
889 if (msk0 == (PIC_UPPER | PIC_LOWER) &&
890 msk1 == (PIC_UPPER | PIC_LOWER))
891 goto success;
788 892
893 /* If one event is limited to a specific counter,
894 * and the other can go on both, OK.
895 */
896 if ((msk0 == PIC_UPPER || msk0 == PIC_LOWER) &&
897 msk1 == (PIC_UPPER | PIC_LOWER)) {
898 if (msk0 & PIC_LOWER)
899 idx0 = 1;
900 goto success;
901 }
902
903 if ((msk1 == PIC_UPPER || msk1 == PIC_LOWER) &&
904 msk0 == (PIC_UPPER | PIC_LOWER)) {
905 if (msk1 & PIC_UPPER)
906 idx0 = 1;
907 goto success;
908 }
909
910 /* If the events are fixed to different counters, OK. */
911 if ((msk0 == PIC_UPPER && msk1 == PIC_LOWER) ||
912 (msk0 == PIC_LOWER && msk1 == PIC_UPPER)) {
913 if (msk0 & PIC_LOWER)
914 idx0 = 1;
915 goto success;
916 }
917
918 /* Otherwise, there is a conflict. */
789 return -1; 919 return -1;
920
921success:
922 evts[0]->hw.idx = idx0;
923 if (n_ev == 2)
924 evts[1]->hw.idx = idx0 ^ 1;
925 return 0;
790} 926}
791 927
792static int check_excludes(struct perf_event **evts, int n_prev, int n_new) 928static int check_excludes(struct perf_event **evts, int n_prev, int n_new)
@@ -818,7 +954,8 @@ static int check_excludes(struct perf_event **evts, int n_prev, int n_new)
818} 954}
819 955
820static int collect_events(struct perf_event *group, int max_count, 956static int collect_events(struct perf_event *group, int max_count,
821 struct perf_event *evts[], unsigned long *events) 957 struct perf_event *evts[], unsigned long *events,
958 int *current_idx)
822{ 959{
823 struct perf_event *event; 960 struct perf_event *event;
824 int n = 0; 961 int n = 0;
@@ -827,7 +964,8 @@ static int collect_events(struct perf_event *group, int max_count,
827 if (n >= max_count) 964 if (n >= max_count)
828 return -1; 965 return -1;
829 evts[n] = group; 966 evts[n] = group;
830 events[n++] = group->hw.event_base; 967 events[n] = group->hw.event_base;
968 current_idx[n++] = PIC_NO_INDEX;
831 } 969 }
832 list_for_each_entry(event, &group->sibling_list, group_entry) { 970 list_for_each_entry(event, &group->sibling_list, group_entry) {
833 if (!is_software_event(event) && 971 if (!is_software_event(event) &&
@@ -835,20 +973,100 @@ static int collect_events(struct perf_event *group, int max_count,
835 if (n >= max_count) 973 if (n >= max_count)
836 return -1; 974 return -1;
837 evts[n] = event; 975 evts[n] = event;
838 events[n++] = event->hw.event_base; 976 events[n] = event->hw.event_base;
977 current_idx[n++] = PIC_NO_INDEX;
839 } 978 }
840 } 979 }
841 return n; 980 return n;
842} 981}
843 982
983static void event_sched_in(struct perf_event *event, int cpu)
984{
985 event->state = PERF_EVENT_STATE_ACTIVE;
986 event->oncpu = cpu;
987 event->tstamp_running += event->ctx->time - event->tstamp_stopped;
988 if (is_software_event(event))
989 event->pmu->enable(event);
990}
991
992int hw_perf_group_sched_in(struct perf_event *group_leader,
993 struct perf_cpu_context *cpuctx,
994 struct perf_event_context *ctx, int cpu)
995{
996 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
997 struct perf_event *sub;
998 int n0, n;
999
1000 if (!sparc_pmu)
1001 return 0;
1002
1003 n0 = cpuc->n_events;
1004 n = collect_events(group_leader, perf_max_events - n0,
1005 &cpuc->event[n0], &cpuc->events[n0],
1006 &cpuc->current_idx[n0]);
1007 if (n < 0)
1008 return -EAGAIN;
1009 if (check_excludes(cpuc->event, n0, n))
1010 return -EINVAL;
1011 if (sparc_check_constraints(cpuc->event, cpuc->events, n + n0))
1012 return -EAGAIN;
1013 cpuc->n_events = n0 + n;
1014 cpuc->n_added += n;
1015
1016 cpuctx->active_oncpu += n;
1017 n = 1;
1018 event_sched_in(group_leader, cpu);
1019 list_for_each_entry(sub, &group_leader->sibling_list, group_entry) {
1020 if (sub->state != PERF_EVENT_STATE_OFF) {
1021 event_sched_in(sub, cpu);
1022 n++;
1023 }
1024 }
1025 ctx->nr_active += n;
1026
1027 return 1;
1028}
1029
1030static int sparc_pmu_enable(struct perf_event *event)
1031{
1032 struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
1033 int n0, ret = -EAGAIN;
1034 unsigned long flags;
1035
1036 local_irq_save(flags);
1037 perf_disable();
1038
1039 n0 = cpuc->n_events;
1040 if (n0 >= perf_max_events)
1041 goto out;
1042
1043 cpuc->event[n0] = event;
1044 cpuc->events[n0] = event->hw.event_base;
1045 cpuc->current_idx[n0] = PIC_NO_INDEX;
1046
1047 if (check_excludes(cpuc->event, n0, 1))
1048 goto out;
1049 if (sparc_check_constraints(cpuc->event, cpuc->events, n0 + 1))
1050 goto out;
1051
1052 cpuc->n_events++;
1053 cpuc->n_added++;
1054
1055 ret = 0;
1056out:
1057 perf_enable();
1058 local_irq_restore(flags);
1059 return ret;
1060}
1061
844static int __hw_perf_event_init(struct perf_event *event) 1062static int __hw_perf_event_init(struct perf_event *event)
845{ 1063{
846 struct perf_event_attr *attr = &event->attr; 1064 struct perf_event_attr *attr = &event->attr;
847 struct perf_event *evts[MAX_HWEVENTS]; 1065 struct perf_event *evts[MAX_HWEVENTS];
848 struct hw_perf_event *hwc = &event->hw; 1066 struct hw_perf_event *hwc = &event->hw;
849 unsigned long events[MAX_HWEVENTS]; 1067 unsigned long events[MAX_HWEVENTS];
1068 int current_idx_dmy[MAX_HWEVENTS];
850 const struct perf_event_map *pmap; 1069 const struct perf_event_map *pmap;
851 u64 enc;
852 int n; 1070 int n;
853 1071
854 if (atomic_read(&nmi_active) < 0) 1072 if (atomic_read(&nmi_active) < 0)
@@ -865,10 +1083,7 @@ static int __hw_perf_event_init(struct perf_event *event)
865 } else 1083 } else
866 return -EOPNOTSUPP; 1084 return -EOPNOTSUPP;
867 1085
868 /* We save the enable bits in the config_base. So to 1086 /* We save the enable bits in the config_base. */
869 * turn off sampling just write 'config', and to enable
870 * things write 'config | config_base'.
871 */
872 hwc->config_base = sparc_pmu->irq_bit; 1087 hwc->config_base = sparc_pmu->irq_bit;
873 if (!attr->exclude_user) 1088 if (!attr->exclude_user)
874 hwc->config_base |= PCR_UTRACE; 1089 hwc->config_base |= PCR_UTRACE;
@@ -879,13 +1094,11 @@ static int __hw_perf_event_init(struct perf_event *event)
879 1094
880 hwc->event_base = perf_event_encode(pmap); 1095 hwc->event_base = perf_event_encode(pmap);
881 1096
882 enc = pmap->encoding;
883
884 n = 0; 1097 n = 0;
885 if (event->group_leader != event) { 1098 if (event->group_leader != event) {
886 n = collect_events(event->group_leader, 1099 n = collect_events(event->group_leader,
887 perf_max_events - 1, 1100 perf_max_events - 1,
888 evts, events); 1101 evts, events, current_idx_dmy);
889 if (n < 0) 1102 if (n < 0)
890 return -EINVAL; 1103 return -EINVAL;
891 } 1104 }
@@ -895,9 +1108,11 @@ static int __hw_perf_event_init(struct perf_event *event)
895 if (check_excludes(evts, n, 1)) 1108 if (check_excludes(evts, n, 1))
896 return -EINVAL; 1109 return -EINVAL;
897 1110
898 if (sparc_check_constraints(events, n + 1)) 1111 if (sparc_check_constraints(evts, events, n + 1))
899 return -EINVAL; 1112 return -EINVAL;
900 1113
1114 hwc->idx = PIC_NO_INDEX;
1115
901 /* Try to do all error checking before this point, as unwinding 1116 /* Try to do all error checking before this point, as unwinding
902 * state after grabbing the PMC is difficult. 1117 * state after grabbing the PMC is difficult.
903 */ 1118 */
@@ -910,15 +1125,6 @@ static int __hw_perf_event_init(struct perf_event *event)
910 atomic64_set(&hwc->period_left, hwc->sample_period); 1125 atomic64_set(&hwc->period_left, hwc->sample_period);
911 } 1126 }
912 1127
913 if (pmap->pic_mask & PIC_UPPER) {
914 hwc->idx = PIC_UPPER_INDEX;
915 enc <<= sparc_pmu->upper_shift;
916 } else {
917 hwc->idx = PIC_LOWER_INDEX;
918 enc <<= sparc_pmu->lower_shift;
919 }
920
921 hwc->config |= enc;
922 return 0; 1128 return 0;
923} 1129}
924 1130
@@ -968,7 +1174,7 @@ static int __kprobes perf_event_nmi_handler(struct notifier_block *self,
968 struct perf_sample_data data; 1174 struct perf_sample_data data;
969 struct cpu_hw_events *cpuc; 1175 struct cpu_hw_events *cpuc;
970 struct pt_regs *regs; 1176 struct pt_regs *regs;
971 int idx; 1177 int i;
972 1178
973 if (!atomic_read(&active_events)) 1179 if (!atomic_read(&active_events))
974 return NOTIFY_DONE; 1180 return NOTIFY_DONE;
@@ -997,13 +1203,12 @@ static int __kprobes perf_event_nmi_handler(struct notifier_block *self,
997 if (sparc_pmu->irq_bit) 1203 if (sparc_pmu->irq_bit)
998 pcr_ops->write(cpuc->pcr); 1204 pcr_ops->write(cpuc->pcr);
999 1205
1000 for (idx = 0; idx < MAX_HWEVENTS; idx++) { 1206 for (i = 0; i < cpuc->n_events; i++) {
1001 struct perf_event *event = cpuc->events[idx]; 1207 struct perf_event *event = cpuc->event[i];
1208 int idx = cpuc->current_idx[i];
1002 struct hw_perf_event *hwc; 1209 struct hw_perf_event *hwc;
1003 u64 val; 1210 u64 val;
1004 1211
1005 if (!test_bit(idx, cpuc->active_mask))
1006 continue;
1007 hwc = &event->hw; 1212 hwc = &event->hw;
1008 val = sparc_perf_event_update(event, hwc, idx); 1213 val = sparc_perf_event_update(event, hwc, idx);
1009 if (val & (1ULL << 31)) 1214 if (val & (1ULL << 31))
@@ -1055,10 +1260,122 @@ void __init init_hw_perf_events(void)
1055 1260
1056 pr_cont("Supported PMU type is '%s'\n", sparc_pmu_type); 1261 pr_cont("Supported PMU type is '%s'\n", sparc_pmu_type);
1057 1262
1058 /* All sparc64 PMUs currently have 2 events. But this simple 1263 /* All sparc64 PMUs currently have 2 events. */
1059 * driver only supports one active event at a time. 1264 perf_max_events = 2;
1060 */
1061 perf_max_events = 1;
1062 1265
1063 register_die_notifier(&perf_event_nmi_notifier); 1266 register_die_notifier(&perf_event_nmi_notifier);
1064} 1267}
1268
1269static inline void callchain_store(struct perf_callchain_entry *entry, u64 ip)
1270{
1271 if (entry->nr < PERF_MAX_STACK_DEPTH)
1272 entry->ip[entry->nr++] = ip;
1273}
1274
1275static void perf_callchain_kernel(struct pt_regs *regs,
1276 struct perf_callchain_entry *entry)
1277{
1278 unsigned long ksp, fp;
1279
1280 callchain_store(entry, PERF_CONTEXT_KERNEL);
1281 callchain_store(entry, regs->tpc);
1282
1283 ksp = regs->u_regs[UREG_I6];
1284 fp = ksp + STACK_BIAS;
1285 do {
1286 struct sparc_stackf *sf;
1287 struct pt_regs *regs;
1288 unsigned long pc;
1289
1290 if (!kstack_valid(current_thread_info(), fp))
1291 break;
1292
1293 sf = (struct sparc_stackf *) fp;
1294 regs = (struct pt_regs *) (sf + 1);
1295
1296 if (kstack_is_trap_frame(current_thread_info(), regs)) {
1297 if (user_mode(regs))
1298 break;
1299 pc = regs->tpc;
1300 fp = regs->u_regs[UREG_I6] + STACK_BIAS;
1301 } else {
1302 pc = sf->callers_pc;
1303 fp = (unsigned long)sf->fp + STACK_BIAS;
1304 }
1305 callchain_store(entry, pc);
1306 } while (entry->nr < PERF_MAX_STACK_DEPTH);
1307}
1308
1309static void perf_callchain_user_64(struct pt_regs *regs,
1310 struct perf_callchain_entry *entry)
1311{
1312 unsigned long ufp;
1313
1314 callchain_store(entry, PERF_CONTEXT_USER);
1315 callchain_store(entry, regs->tpc);
1316
1317 ufp = regs->u_regs[UREG_I6] + STACK_BIAS;
1318 do {
1319 struct sparc_stackf *usf, sf;
1320 unsigned long pc;
1321
1322 usf = (struct sparc_stackf *) ufp;
1323 if (__copy_from_user_inatomic(&sf, usf, sizeof(sf)))
1324 break;
1325
1326 pc = sf.callers_pc;
1327 ufp = (unsigned long)sf.fp + STACK_BIAS;
1328 callchain_store(entry, pc);
1329 } while (entry->nr < PERF_MAX_STACK_DEPTH);
1330}
1331
1332static void perf_callchain_user_32(struct pt_regs *regs,
1333 struct perf_callchain_entry *entry)
1334{
1335 unsigned long ufp;
1336
1337 callchain_store(entry, PERF_CONTEXT_USER);
1338 callchain_store(entry, regs->tpc);
1339
1340 ufp = regs->u_regs[UREG_I6];
1341 do {
1342 struct sparc_stackf32 *usf, sf;
1343 unsigned long pc;
1344
1345 usf = (struct sparc_stackf32 *) ufp;
1346 if (__copy_from_user_inatomic(&sf, usf, sizeof(sf)))
1347 break;
1348
1349 pc = sf.callers_pc;
1350 ufp = (unsigned long)sf.fp;
1351 callchain_store(entry, pc);
1352 } while (entry->nr < PERF_MAX_STACK_DEPTH);
1353}
1354
1355/* Like powerpc we can't get PMU interrupts within the PMU handler,
1356 * so no need for seperate NMI and IRQ chains as on x86.
1357 */
1358static DEFINE_PER_CPU(struct perf_callchain_entry, callchain);
1359
1360struct perf_callchain_entry *perf_callchain(struct pt_regs *regs)
1361{
1362 struct perf_callchain_entry *entry = &__get_cpu_var(callchain);
1363
1364 entry->nr = 0;
1365 if (!user_mode(regs)) {
1366 stack_trace_flush();
1367 perf_callchain_kernel(regs, entry);
1368 if (current->mm)
1369 regs = task_pt_regs(current);
1370 else
1371 regs = NULL;
1372 }
1373 if (regs) {
1374 flushw_user();
1375 if (test_thread_flag(TIF_32BIT))
1376 perf_callchain_user_32(regs, entry);
1377 else
1378 perf_callchain_user_64(regs, entry);
1379 }
1380 return entry;
1381}
diff --git a/arch/sparc/kernel/process_64.c b/arch/sparc/kernel/process_64.c
index 18d67854a1b8..c3f1cce0e95e 100644
--- a/arch/sparc/kernel/process_64.c
+++ b/arch/sparc/kernel/process_64.c
@@ -365,14 +365,6 @@ void flush_thread(void)
365 struct thread_info *t = current_thread_info(); 365 struct thread_info *t = current_thread_info();
366 struct mm_struct *mm; 366 struct mm_struct *mm;
367 367
368 if (test_ti_thread_flag(t, TIF_ABI_PENDING)) {
369 clear_ti_thread_flag(t, TIF_ABI_PENDING);
370 if (test_ti_thread_flag(t, TIF_32BIT))
371 clear_ti_thread_flag(t, TIF_32BIT);
372 else
373 set_ti_thread_flag(t, TIF_32BIT);
374 }
375
376 mm = t->task->mm; 368 mm = t->task->mm;
377 if (mm) 369 if (mm)
378 tsb_context_switch(mm); 370 tsb_context_switch(mm);
diff --git a/arch/sparc/kernel/sys_sparc_64.c b/arch/sparc/kernel/sys_sparc_64.c
index cfa0e19abe3b..d77f54316948 100644
--- a/arch/sparc/kernel/sys_sparc_64.c
+++ b/arch/sparc/kernel/sys_sparc_64.c
@@ -365,6 +365,7 @@ EXPORT_SYMBOL(get_fb_unmapped_area);
365void arch_pick_mmap_layout(struct mm_struct *mm) 365void arch_pick_mmap_layout(struct mm_struct *mm)
366{ 366{
367 unsigned long random_factor = 0UL; 367 unsigned long random_factor = 0UL;
368 unsigned long gap;
368 369
369 if (current->flags & PF_RANDOMIZE) { 370 if (current->flags & PF_RANDOMIZE) {
370 random_factor = get_random_int(); 371 random_factor = get_random_int();
@@ -379,9 +380,10 @@ void arch_pick_mmap_layout(struct mm_struct *mm)
379 * Fall back to the standard layout if the personality 380 * Fall back to the standard layout if the personality
380 * bit is set, or if the expected stack growth is unlimited: 381 * bit is set, or if the expected stack growth is unlimited:
381 */ 382 */
383 gap = rlimit(RLIMIT_STACK);
382 if (!test_thread_flag(TIF_32BIT) || 384 if (!test_thread_flag(TIF_32BIT) ||
383 (current->personality & ADDR_COMPAT_LAYOUT) || 385 (current->personality & ADDR_COMPAT_LAYOUT) ||
384 current->signal->rlim[RLIMIT_STACK].rlim_cur == RLIM_INFINITY || 386 gap == RLIM_INFINITY ||
385 sysctl_legacy_va_layout) { 387 sysctl_legacy_va_layout) {
386 mm->mmap_base = TASK_UNMAPPED_BASE + random_factor; 388 mm->mmap_base = TASK_UNMAPPED_BASE + random_factor;
387 mm->get_unmapped_area = arch_get_unmapped_area; 389 mm->get_unmapped_area = arch_get_unmapped_area;
@@ -389,9 +391,7 @@ void arch_pick_mmap_layout(struct mm_struct *mm)
389 } else { 391 } else {
390 /* We know it's 32-bit */ 392 /* We know it's 32-bit */
391 unsigned long task_size = STACK_TOP32; 393 unsigned long task_size = STACK_TOP32;
392 unsigned long gap;
393 394
394 gap = current->signal->rlim[RLIMIT_STACK].rlim_cur;
395 if (gap < 128 * 1024 * 1024) 395 if (gap < 128 * 1024 * 1024)
396 gap = 128 * 1024 * 1024; 396 gap = 128 * 1024 * 1024;
397 if (gap > (task_size / 6 * 5)) 397 if (gap > (task_size / 6 * 5))
diff --git a/arch/sparc/kernel/time_32.c b/arch/sparc/kernel/time_32.c
index 5b2f595fe65b..0d4c09b15efc 100644
--- a/arch/sparc/kernel/time_32.c
+++ b/arch/sparc/kernel/time_32.c
@@ -35,6 +35,7 @@
35#include <linux/platform_device.h> 35#include <linux/platform_device.h>
36 36
37#include <asm/oplib.h> 37#include <asm/oplib.h>
38#include <asm/timex.h>
38#include <asm/timer.h> 39#include <asm/timer.h>
39#include <asm/system.h> 40#include <asm/system.h>
40#include <asm/irq.h> 41#include <asm/irq.h>
@@ -51,7 +52,6 @@ DEFINE_SPINLOCK(rtc_lock);
51EXPORT_SYMBOL(rtc_lock); 52EXPORT_SYMBOL(rtc_lock);
52 53
53static int set_rtc_mmss(unsigned long); 54static int set_rtc_mmss(unsigned long);
54static int sbus_do_settimeofday(struct timespec *tv);
55 55
56unsigned long profile_pc(struct pt_regs *regs) 56unsigned long profile_pc(struct pt_regs *regs)
57{ 57{
@@ -76,6 +76,8 @@ EXPORT_SYMBOL(profile_pc);
76 76
77__volatile__ unsigned int *master_l10_counter; 77__volatile__ unsigned int *master_l10_counter;
78 78
79u32 (*do_arch_gettimeoffset)(void);
80
79/* 81/*
80 * timer_interrupt() needs to keep up the real-time clock, 82 * timer_interrupt() needs to keep up the real-time clock,
81 * as well as call the "do_timer()" routine every clocktick 83 * as well as call the "do_timer()" routine every clocktick
@@ -196,35 +198,14 @@ static int __init clock_init(void)
196{ 198{
197 return of_register_driver(&clock_driver, &of_platform_bus_type); 199 return of_register_driver(&clock_driver, &of_platform_bus_type);
198} 200}
199
200/* Must be after subsys_initcall() so that busses are probed. Must 201/* Must be after subsys_initcall() so that busses are probed. Must
201 * be before device_initcall() because things like the RTC driver 202 * be before device_initcall() because things like the RTC driver
202 * need to see the clock registers. 203 * need to see the clock registers.
203 */ 204 */
204fs_initcall(clock_init); 205fs_initcall(clock_init);
205 206
206static void __init sbus_time_init(void)
207{
208
209 BTFIXUPSET_CALL(bus_do_settimeofday, sbus_do_settimeofday, BTFIXUPCALL_NORM);
210 btfixup();
211
212 sparc_init_timers(timer_interrupt);
213}
214
215void __init time_init(void)
216{
217#ifdef CONFIG_PCI
218 extern void pci_time_init(void);
219 if (pcic_present()) {
220 pci_time_init();
221 return;
222 }
223#endif
224 sbus_time_init();
225}
226 207
227static inline unsigned long do_gettimeoffset(void) 208u32 sbus_do_gettimeoffset(void)
228{ 209{
229 unsigned long val = *master_l10_counter; 210 unsigned long val = *master_l10_counter;
230 unsigned long usec = (val >> 10) & 0x1fffff; 211 unsigned long usec = (val >> 10) & 0x1fffff;
@@ -233,86 +214,39 @@ static inline unsigned long do_gettimeoffset(void)
233 if (val & 0x80000000) 214 if (val & 0x80000000)
234 usec += 1000000 / HZ; 215 usec += 1000000 / HZ;
235 216
236 return usec; 217 return usec * 1000;
237} 218}
238 219
239/* Ok, my cute asm atomicity trick doesn't work anymore.
240 * There are just too many variables that need to be protected
241 * now (both members of xtime, et al.)
242 */
243void do_gettimeofday(struct timeval *tv)
244{
245 unsigned long flags;
246 unsigned long seq;
247 unsigned long usec, sec;
248 unsigned long max_ntp_tick = tick_usec - tickadj;
249
250 do {
251 seq = read_seqbegin_irqsave(&xtime_lock, flags);
252 usec = do_gettimeoffset();
253
254 /*
255 * If time_adjust is negative then NTP is slowing the clock
256 * so make sure not to go into next possible interval.
257 * Better to lose some accuracy than have time go backwards..
258 */
259 if (unlikely(time_adjust < 0))
260 usec = min(usec, max_ntp_tick);
261
262 sec = xtime.tv_sec;
263 usec += (xtime.tv_nsec / 1000);
264 } while (read_seqretry_irqrestore(&xtime_lock, seq, flags));
265
266 while (usec >= 1000000) {
267 usec -= 1000000;
268 sec++;
269 }
270 220
271 tv->tv_sec = sec; 221u32 arch_gettimeoffset(void)
272 tv->tv_usec = usec;
273}
274
275EXPORT_SYMBOL(do_gettimeofday);
276
277int do_settimeofday(struct timespec *tv)
278{ 222{
279 int ret; 223 if (unlikely(!do_arch_gettimeoffset))
280 224 return 0;
281 write_seqlock_irq(&xtime_lock); 225 return do_arch_gettimeoffset();
282 ret = bus_do_settimeofday(tv);
283 write_sequnlock_irq(&xtime_lock);
284 clock_was_set();
285 return ret;
286} 226}
287 227
288EXPORT_SYMBOL(do_settimeofday); 228static void __init sbus_time_init(void)
289
290static int sbus_do_settimeofday(struct timespec *tv)
291{ 229{
292 time_t wtm_sec, sec = tv->tv_sec; 230 do_arch_gettimeoffset = sbus_do_gettimeoffset;
293 long wtm_nsec, nsec = tv->tv_nsec;
294 231
295 if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC) 232 btfixup();
296 return -EINVAL;
297
298 /*
299 * This is revolting. We need to set "xtime" correctly. However, the
300 * value in this location is the value at the most recent update of
301 * wall time. Discover what correction gettimeofday() would have
302 * made, and then undo it!
303 */
304 nsec -= 1000 * do_gettimeoffset();
305
306 wtm_sec = wall_to_monotonic.tv_sec + (xtime.tv_sec - sec);
307 wtm_nsec = wall_to_monotonic.tv_nsec + (xtime.tv_nsec - nsec);
308 233
309 set_normalized_timespec(&xtime, sec, nsec); 234 sparc_init_timers(timer_interrupt);
310 set_normalized_timespec(&wall_to_monotonic, wtm_sec, wtm_nsec); 235}
311 236
312 ntp_clear(); 237void __init time_init(void)
313 return 0; 238{
239#ifdef CONFIG_PCI
240 extern void pci_time_init(void);
241 if (pcic_present()) {
242 pci_time_init();
243 return;
244 }
245#endif
246 sbus_time_init();
314} 247}
315 248
249
316static int set_rtc_mmss(unsigned long secs) 250static int set_rtc_mmss(unsigned long secs)
317{ 251{
318 struct rtc_device *rtc = rtc_class_open("rtc0"); 252 struct rtc_device *rtc = rtc_class_open("rtc0");
diff --git a/arch/sparc/mm/fault_32.c b/arch/sparc/mm/fault_32.c
index b99f81c4906f..a3413acb8f12 100644
--- a/arch/sparc/mm/fault_32.c
+++ b/arch/sparc/mm/fault_32.c
@@ -18,6 +18,7 @@
18#include <linux/signal.h> 18#include <linux/signal.h>
19#include <linux/mm.h> 19#include <linux/mm.h>
20#include <linux/smp.h> 20#include <linux/smp.h>
21#include <linux/perf_event.h>
21#include <linux/interrupt.h> 22#include <linux/interrupt.h>
22#include <linux/module.h> 23#include <linux/module.h>
23#include <linux/kdebug.h> 24#include <linux/kdebug.h>
@@ -203,6 +204,8 @@ asmlinkage void do_sparc_fault(struct pt_regs *regs, int text_fault, int write,
203 if (in_atomic() || !mm) 204 if (in_atomic() || !mm)
204 goto no_context; 205 goto no_context;
205 206
207 perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, 0, regs, address);
208
206 down_read(&mm->mmap_sem); 209 down_read(&mm->mmap_sem);
207 210
208 /* 211 /*
@@ -249,10 +252,15 @@ good_area:
249 goto do_sigbus; 252 goto do_sigbus;
250 BUG(); 253 BUG();
251 } 254 }
252 if (fault & VM_FAULT_MAJOR) 255 if (fault & VM_FAULT_MAJOR) {
253 current->maj_flt++; 256 current->maj_flt++;
254 else 257 perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS_MAJ, 1, 0,
258 regs, address);
259 } else {
255 current->min_flt++; 260 current->min_flt++;
261 perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS_MIN, 1, 0,
262 regs, address);
263 }
256 up_read(&mm->mmap_sem); 264 up_read(&mm->mmap_sem);
257 return; 265 return;
258 266
diff --git a/arch/sparc/mm/fault_64.c b/arch/sparc/mm/fault_64.c
index 6081936bf03b..b9d4ff02b8fc 100644
--- a/arch/sparc/mm/fault_64.c
+++ b/arch/sparc/mm/fault_64.c
@@ -16,6 +16,7 @@
16#include <linux/mm.h> 16#include <linux/mm.h>
17#include <linux/module.h> 17#include <linux/module.h>
18#include <linux/init.h> 18#include <linux/init.h>
19#include <linux/perf_event.h>
19#include <linux/interrupt.h> 20#include <linux/interrupt.h>
20#include <linux/kprobes.h> 21#include <linux/kprobes.h>
21#include <linux/kdebug.h> 22#include <linux/kdebug.h>
@@ -296,6 +297,8 @@ asmlinkage void __kprobes do_sparc64_fault(struct pt_regs *regs)
296 if (in_atomic() || !mm) 297 if (in_atomic() || !mm)
297 goto intr_or_no_mm; 298 goto intr_or_no_mm;
298 299
300 perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, 0, regs, address);
301
299 if (!down_read_trylock(&mm->mmap_sem)) { 302 if (!down_read_trylock(&mm->mmap_sem)) {
300 if ((regs->tstate & TSTATE_PRIV) && 303 if ((regs->tstate & TSTATE_PRIV) &&
301 !search_exception_tables(regs->tpc)) { 304 !search_exception_tables(regs->tpc)) {
@@ -400,11 +403,15 @@ good_area:
400 goto do_sigbus; 403 goto do_sigbus;
401 BUG(); 404 BUG();
402 } 405 }
403 if (fault & VM_FAULT_MAJOR) 406 if (fault & VM_FAULT_MAJOR) {
404 current->maj_flt++; 407 current->maj_flt++;
405 else 408 perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS_MAJ, 1, 0,
409 regs, address);
410 } else {
406 current->min_flt++; 411 current->min_flt++;
407 412 perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS_MIN, 1, 0,
413 regs, address);
414 }
408 up_read(&mm->mmap_sem); 415 up_read(&mm->mmap_sem);
409 416
410 mm_rss = get_mm_rss(mm); 417 mm_rss = get_mm_rss(mm);
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index cbcbfdee3ee0..eb4092568f9e 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -989,12 +989,6 @@ config X86_CPUID
989 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to 989 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
990 /dev/cpu/31/cpuid. 990 /dev/cpu/31/cpuid.
991 991
992config X86_CPU_DEBUG
993 tristate "/sys/kernel/debug/x86/cpu/* - CPU Debug support"
994 ---help---
995 If you select this option, this will provide various x86 CPUs
996 information through debugfs.
997
998choice 992choice
999 prompt "High Memory Support" 993 prompt "High Memory Support"
1000 default HIGHMEM4G if !X86_NUMAQ 994 default HIGHMEM4G if !X86_NUMAQ
diff --git a/arch/x86/ia32/ia32_aout.c b/arch/x86/ia32/ia32_aout.c
index 2a4d073d2cf1..f9f472462753 100644
--- a/arch/x86/ia32/ia32_aout.c
+++ b/arch/x86/ia32/ia32_aout.c
@@ -308,14 +308,15 @@ static int load_aout_binary(struct linux_binprm *bprm, struct pt_regs *regs)
308 if (retval) 308 if (retval)
309 return retval; 309 return retval;
310 310
311 regs->cs = __USER32_CS;
312 regs->r8 = regs->r9 = regs->r10 = regs->r11 = regs->r12 =
313 regs->r13 = regs->r14 = regs->r15 = 0;
314
315 /* OK, This is the point of no return */ 311 /* OK, This is the point of no return */
316 set_personality(PER_LINUX); 312 set_personality(PER_LINUX);
317 set_thread_flag(TIF_IA32); 313 set_thread_flag(TIF_IA32);
318 clear_thread_flag(TIF_ABI_PENDING); 314
315 setup_new_exec(bprm);
316
317 regs->cs = __USER32_CS;
318 regs->r8 = regs->r9 = regs->r10 = regs->r11 = regs->r12 =
319 regs->r13 = regs->r14 = regs->r15 = 0;
319 320
320 current->mm->end_code = ex.a_text + 321 current->mm->end_code = ex.a_text +
321 (current->mm->start_code = N_TXTADDR(ex)); 322 (current->mm->start_code = N_TXTADDR(ex));
diff --git a/arch/x86/include/asm/amd_iommu_proto.h b/arch/x86/include/asm/amd_iommu_proto.h
index 4d817f9e6e77..d2544f1d705d 100644
--- a/arch/x86/include/asm/amd_iommu_proto.h
+++ b/arch/x86/include/asm/amd_iommu_proto.h
@@ -31,6 +31,7 @@ extern void amd_iommu_reset_cmd_buffer(struct amd_iommu *iommu);
31extern int amd_iommu_init_devices(void); 31extern int amd_iommu_init_devices(void);
32extern void amd_iommu_uninit_devices(void); 32extern void amd_iommu_uninit_devices(void);
33extern void amd_iommu_init_notifier(void); 33extern void amd_iommu_init_notifier(void);
34extern void amd_iommu_init_api(void);
34#ifndef CONFIG_AMD_IOMMU_STATS 35#ifndef CONFIG_AMD_IOMMU_STATS
35 36
36static inline void amd_iommu_stats_init(void) { } 37static inline void amd_iommu_stats_init(void) { }
diff --git a/arch/x86/include/asm/cpu_debug.h b/arch/x86/include/asm/cpu_debug.h
deleted file mode 100644
index d96c1ee3a95c..000000000000
--- a/arch/x86/include/asm/cpu_debug.h
+++ /dev/null
@@ -1,127 +0,0 @@
1#ifndef _ASM_X86_CPU_DEBUG_H
2#define _ASM_X86_CPU_DEBUG_H
3
4/*
5 * CPU x86 architecture debug
6 *
7 * Copyright(C) 2009 Jaswinder Singh Rajput
8 */
9
10/* Register flags */
11enum cpu_debug_bit {
12/* Model Specific Registers (MSRs) */
13 CPU_MC_BIT, /* Machine Check */
14 CPU_MONITOR_BIT, /* Monitor */
15 CPU_TIME_BIT, /* Time */
16 CPU_PMC_BIT, /* Performance Monitor */
17 CPU_PLATFORM_BIT, /* Platform */
18 CPU_APIC_BIT, /* APIC */
19 CPU_POWERON_BIT, /* Power-on */
20 CPU_CONTROL_BIT, /* Control */
21 CPU_FEATURES_BIT, /* Features control */
22 CPU_LBRANCH_BIT, /* Last Branch */
23 CPU_BIOS_BIT, /* BIOS */
24 CPU_FREQ_BIT, /* Frequency */
25 CPU_MTTR_BIT, /* MTRR */
26 CPU_PERF_BIT, /* Performance */
27 CPU_CACHE_BIT, /* Cache */
28 CPU_SYSENTER_BIT, /* Sysenter */
29 CPU_THERM_BIT, /* Thermal */
30 CPU_MISC_BIT, /* Miscellaneous */
31 CPU_DEBUG_BIT, /* Debug */
32 CPU_PAT_BIT, /* PAT */
33 CPU_VMX_BIT, /* VMX */
34 CPU_CALL_BIT, /* System Call */
35 CPU_BASE_BIT, /* BASE Address */
36 CPU_VER_BIT, /* Version ID */
37 CPU_CONF_BIT, /* Configuration */
38 CPU_SMM_BIT, /* System mgmt mode */
39 CPU_SVM_BIT, /*Secure Virtual Machine*/
40 CPU_OSVM_BIT, /* OS-Visible Workaround*/
41/* Standard Registers */
42 CPU_TSS_BIT, /* Task Stack Segment */
43 CPU_CR_BIT, /* Control Registers */
44 CPU_DT_BIT, /* Descriptor Table */
45/* End of Registers flags */
46 CPU_REG_ALL_BIT, /* Select all Registers */
47};
48
49#define CPU_REG_ALL (~0) /* Select all Registers */
50
51#define CPU_MC (1 << CPU_MC_BIT)
52#define CPU_MONITOR (1 << CPU_MONITOR_BIT)
53#define CPU_TIME (1 << CPU_TIME_BIT)
54#define CPU_PMC (1 << CPU_PMC_BIT)
55#define CPU_PLATFORM (1 << CPU_PLATFORM_BIT)
56#define CPU_APIC (1 << CPU_APIC_BIT)
57#define CPU_POWERON (1 << CPU_POWERON_BIT)
58#define CPU_CONTROL (1 << CPU_CONTROL_BIT)
59#define CPU_FEATURES (1 << CPU_FEATURES_BIT)
60#define CPU_LBRANCH (1 << CPU_LBRANCH_BIT)
61#define CPU_BIOS (1 << CPU_BIOS_BIT)
62#define CPU_FREQ (1 << CPU_FREQ_BIT)
63#define CPU_MTRR (1 << CPU_MTTR_BIT)
64#define CPU_PERF (1 << CPU_PERF_BIT)
65#define CPU_CACHE (1 << CPU_CACHE_BIT)
66#define CPU_SYSENTER (1 << CPU_SYSENTER_BIT)
67#define CPU_THERM (1 << CPU_THERM_BIT)
68#define CPU_MISC (1 << CPU_MISC_BIT)
69#define CPU_DEBUG (1 << CPU_DEBUG_BIT)
70#define CPU_PAT (1 << CPU_PAT_BIT)
71#define CPU_VMX (1 << CPU_VMX_BIT)
72#define CPU_CALL (1 << CPU_CALL_BIT)
73#define CPU_BASE (1 << CPU_BASE_BIT)
74#define CPU_VER (1 << CPU_VER_BIT)
75#define CPU_CONF (1 << CPU_CONF_BIT)
76#define CPU_SMM (1 << CPU_SMM_BIT)
77#define CPU_SVM (1 << CPU_SVM_BIT)
78#define CPU_OSVM (1 << CPU_OSVM_BIT)
79#define CPU_TSS (1 << CPU_TSS_BIT)
80#define CPU_CR (1 << CPU_CR_BIT)
81#define CPU_DT (1 << CPU_DT_BIT)
82
83/* Register file flags */
84enum cpu_file_bit {
85 CPU_INDEX_BIT, /* index */
86 CPU_VALUE_BIT, /* value */
87};
88
89#define CPU_FILE_VALUE (1 << CPU_VALUE_BIT)
90
91#define MAX_CPU_FILES 512
92
93struct cpu_private {
94 unsigned cpu;
95 unsigned type;
96 unsigned reg;
97 unsigned file;
98};
99
100struct cpu_debug_base {
101 char *name; /* Register name */
102 unsigned flag; /* Register flag */
103 unsigned write; /* Register write flag */
104};
105
106/*
107 * Currently it looks similar to cpu_debug_base but once we add more files
108 * cpu_file_base will go in different direction
109 */
110struct cpu_file_base {
111 char *name; /* Register file name */
112 unsigned flag; /* Register file flag */
113 unsigned write; /* Register write flag */
114};
115
116struct cpu_cpuX_base {
117 struct dentry *dentry; /* Register dentry */
118 int init; /* Register index file */
119};
120
121struct cpu_debug_range {
122 unsigned min; /* Register range min */
123 unsigned max; /* Register range max */
124 unsigned flag; /* Supported flags */
125};
126
127#endif /* _ASM_X86_CPU_DEBUG_H */
diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h
index b4501ee223ad..1994d3f58443 100644
--- a/arch/x86/include/asm/elf.h
+++ b/arch/x86/include/asm/elf.h
@@ -181,14 +181,8 @@ do { \
181void start_thread_ia32(struct pt_regs *regs, u32 new_ip, u32 new_sp); 181void start_thread_ia32(struct pt_regs *regs, u32 new_ip, u32 new_sp);
182#define compat_start_thread start_thread_ia32 182#define compat_start_thread start_thread_ia32
183 183
184#define COMPAT_SET_PERSONALITY(ex) \ 184void set_personality_ia32(void);
185do { \ 185#define COMPAT_SET_PERSONALITY(ex) set_personality_ia32()
186 if (test_thread_flag(TIF_IA32)) \
187 clear_thread_flag(TIF_ABI_PENDING); \
188 else \
189 set_thread_flag(TIF_ABI_PENDING); \
190 current->personality |= force_personality32; \
191} while (0)
192 186
193#define COMPAT_ELF_PLATFORM ("i686") 187#define COMPAT_ELF_PLATFORM ("i686")
194 188
diff --git a/arch/x86/include/asm/hpet.h b/arch/x86/include/asm/hpet.h
index 5d89fd2a3690..1d5c08a1bdfd 100644
--- a/arch/x86/include/asm/hpet.h
+++ b/arch/x86/include/asm/hpet.h
@@ -67,6 +67,7 @@ extern unsigned long hpet_address;
67extern unsigned long force_hpet_address; 67extern unsigned long force_hpet_address;
68extern u8 hpet_blockid; 68extern u8 hpet_blockid;
69extern int hpet_force_user; 69extern int hpet_force_user;
70extern u8 hpet_msi_disable;
70extern int is_hpet_enabled(void); 71extern int is_hpet_enabled(void);
71extern int hpet_enable(void); 72extern int hpet_enable(void);
72extern void hpet_disable(void); 73extern void hpet_disable(void);
diff --git a/arch/x86/include/asm/microcode.h b/arch/x86/include/asm/microcode.h
index c24ca9a56458..ef51b501e22a 100644
--- a/arch/x86/include/asm/microcode.h
+++ b/arch/x86/include/asm/microcode.h
@@ -12,8 +12,6 @@ struct device;
12enum ucode_state { UCODE_ERROR, UCODE_OK, UCODE_NFOUND }; 12enum ucode_state { UCODE_ERROR, UCODE_OK, UCODE_NFOUND };
13 13
14struct microcode_ops { 14struct microcode_ops {
15 void (*init)(struct device *device);
16 void (*fini)(void);
17 enum ucode_state (*request_microcode_user) (int cpu, 15 enum ucode_state (*request_microcode_user) (int cpu,
18 const void __user *buf, size_t size); 16 const void __user *buf, size_t size);
19 17
diff --git a/arch/x86/include/asm/perf_event.h b/arch/x86/include/asm/perf_event.h
index 8d9f8548a870..1380367dabd9 100644
--- a/arch/x86/include/asm/perf_event.h
+++ b/arch/x86/include/asm/perf_event.h
@@ -19,6 +19,7 @@
19#define MSR_ARCH_PERFMON_EVENTSEL1 0x187 19#define MSR_ARCH_PERFMON_EVENTSEL1 0x187
20 20
21#define ARCH_PERFMON_EVENTSEL0_ENABLE (1 << 22) 21#define ARCH_PERFMON_EVENTSEL0_ENABLE (1 << 22)
22#define ARCH_PERFMON_EVENTSEL_ANY (1 << 21)
22#define ARCH_PERFMON_EVENTSEL_INT (1 << 20) 23#define ARCH_PERFMON_EVENTSEL_INT (1 << 20)
23#define ARCH_PERFMON_EVENTSEL_OS (1 << 17) 24#define ARCH_PERFMON_EVENTSEL_OS (1 << 17)
24#define ARCH_PERFMON_EVENTSEL_USR (1 << 16) 25#define ARCH_PERFMON_EVENTSEL_USR (1 << 16)
diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thread_info.h
index 375c917c37d2..e0d28901e969 100644
--- a/arch/x86/include/asm/thread_info.h
+++ b/arch/x86/include/asm/thread_info.h
@@ -87,7 +87,6 @@ struct thread_info {
87#define TIF_NOTSC 16 /* TSC is not accessible in userland */ 87#define TIF_NOTSC 16 /* TSC is not accessible in userland */
88#define TIF_IA32 17 /* 32bit process */ 88#define TIF_IA32 17 /* 32bit process */
89#define TIF_FORK 18 /* ret_from_fork */ 89#define TIF_FORK 18 /* ret_from_fork */
90#define TIF_ABI_PENDING 19
91#define TIF_MEMDIE 20 90#define TIF_MEMDIE 20
92#define TIF_DEBUG 21 /* uses debug registers */ 91#define TIF_DEBUG 21 /* uses debug registers */
93#define TIF_IO_BITMAP 22 /* uses I/O bitmap */ 92#define TIF_IO_BITMAP 22 /* uses I/O bitmap */
@@ -112,7 +111,6 @@ struct thread_info {
112#define _TIF_NOTSC (1 << TIF_NOTSC) 111#define _TIF_NOTSC (1 << TIF_NOTSC)
113#define _TIF_IA32 (1 << TIF_IA32) 112#define _TIF_IA32 (1 << TIF_IA32)
114#define _TIF_FORK (1 << TIF_FORK) 113#define _TIF_FORK (1 << TIF_FORK)
115#define _TIF_ABI_PENDING (1 << TIF_ABI_PENDING)
116#define _TIF_DEBUG (1 << TIF_DEBUG) 114#define _TIF_DEBUG (1 << TIF_DEBUG)
117#define _TIF_IO_BITMAP (1 << TIF_IO_BITMAP) 115#define _TIF_IO_BITMAP (1 << TIF_IO_BITMAP)
118#define _TIF_FREEZE (1 << TIF_FREEZE) 116#define _TIF_FREEZE (1 << TIF_FREEZE)
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index fb1035cd9a6a..036d28adf59d 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -1529,16 +1529,10 @@ static struct dmi_system_id __initdata acpi_dmi_table_late[] = {
1529 * if acpi_blacklisted() acpi_disabled = 1; 1529 * if acpi_blacklisted() acpi_disabled = 1;
1530 * acpi_irq_model=... 1530 * acpi_irq_model=...
1531 * ... 1531 * ...
1532 *
1533 * return value: (currently ignored)
1534 * 0: success
1535 * !0: failure
1536 */ 1532 */
1537 1533
1538int __init acpi_boot_table_init(void) 1534void __init acpi_boot_table_init(void)
1539{ 1535{
1540 int error;
1541
1542 dmi_check_system(acpi_dmi_table); 1536 dmi_check_system(acpi_dmi_table);
1543 1537
1544 /* 1538 /*
@@ -1546,15 +1540,14 @@ int __init acpi_boot_table_init(void)
1546 * One exception: acpi=ht continues far enough to enumerate LAPICs 1540 * One exception: acpi=ht continues far enough to enumerate LAPICs
1547 */ 1541 */
1548 if (acpi_disabled && !acpi_ht) 1542 if (acpi_disabled && !acpi_ht)
1549 return 1; 1543 return;
1550 1544
1551 /* 1545 /*
1552 * Initialize the ACPI boot-time table parser. 1546 * Initialize the ACPI boot-time table parser.
1553 */ 1547 */
1554 error = acpi_table_init(); 1548 if (acpi_table_init()) {
1555 if (error) {
1556 disable_acpi(); 1549 disable_acpi();
1557 return error; 1550 return;
1558 } 1551 }
1559 1552
1560 acpi_table_parse(ACPI_SIG_BOOT, acpi_parse_sbf); 1553 acpi_table_parse(ACPI_SIG_BOOT, acpi_parse_sbf);
@@ -1562,18 +1555,15 @@ int __init acpi_boot_table_init(void)
1562 /* 1555 /*
1563 * blacklist may disable ACPI entirely 1556 * blacklist may disable ACPI entirely
1564 */ 1557 */
1565 error = acpi_blacklisted(); 1558 if (acpi_blacklisted()) {
1566 if (error) {
1567 if (acpi_force) { 1559 if (acpi_force) {
1568 printk(KERN_WARNING PREFIX "acpi=force override\n"); 1560 printk(KERN_WARNING PREFIX "acpi=force override\n");
1569 } else { 1561 } else {
1570 printk(KERN_WARNING PREFIX "Disabling ACPI support\n"); 1562 printk(KERN_WARNING PREFIX "Disabling ACPI support\n");
1571 disable_acpi(); 1563 disable_acpi();
1572 return error; 1564 return;
1573 } 1565 }
1574 } 1566 }
1575
1576 return 0;
1577} 1567}
1578 1568
1579int __init early_acpi_boot_init(void) 1569int __init early_acpi_boot_init(void)
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c
index 23824fef789c..adb0ba025702 100644
--- a/arch/x86/kernel/amd_iommu.c
+++ b/arch/x86/kernel/amd_iommu.c
@@ -980,7 +980,7 @@ static int alloc_new_range(struct dma_ops_domain *dma_dom,
980{ 980{
981 int index = dma_dom->aperture_size >> APERTURE_RANGE_SHIFT; 981 int index = dma_dom->aperture_size >> APERTURE_RANGE_SHIFT;
982 struct amd_iommu *iommu; 982 struct amd_iommu *iommu;
983 int i; 983 unsigned long i;
984 984
985#ifdef CONFIG_IOMMU_STRESS 985#ifdef CONFIG_IOMMU_STRESS
986 populate = false; 986 populate = false;
@@ -1489,11 +1489,14 @@ static void __detach_device(struct device *dev)
1489{ 1489{
1490 struct iommu_dev_data *dev_data = get_dev_data(dev); 1490 struct iommu_dev_data *dev_data = get_dev_data(dev);
1491 struct iommu_dev_data *alias_data; 1491 struct iommu_dev_data *alias_data;
1492 struct protection_domain *domain;
1492 unsigned long flags; 1493 unsigned long flags;
1493 1494
1494 BUG_ON(!dev_data->domain); 1495 BUG_ON(!dev_data->domain);
1495 1496
1496 spin_lock_irqsave(&dev_data->domain->lock, flags); 1497 domain = dev_data->domain;
1498
1499 spin_lock_irqsave(&domain->lock, flags);
1497 1500
1498 if (dev_data->alias != dev) { 1501 if (dev_data->alias != dev) {
1499 alias_data = get_dev_data(dev_data->alias); 1502 alias_data = get_dev_data(dev_data->alias);
@@ -1504,13 +1507,15 @@ static void __detach_device(struct device *dev)
1504 if (atomic_dec_and_test(&dev_data->bind)) 1507 if (atomic_dec_and_test(&dev_data->bind))
1505 do_detach(dev); 1508 do_detach(dev);
1506 1509
1507 spin_unlock_irqrestore(&dev_data->domain->lock, flags); 1510 spin_unlock_irqrestore(&domain->lock, flags);
1508 1511
1509 /* 1512 /*
1510 * If we run in passthrough mode the device must be assigned to the 1513 * If we run in passthrough mode the device must be assigned to the
1511 * passthrough domain if it is detached from any other domain 1514 * passthrough domain if it is detached from any other domain.
1515 * Make sure we can deassign from the pt_domain itself.
1512 */ 1516 */
1513 if (iommu_pass_through && dev_data->domain == NULL) 1517 if (iommu_pass_through &&
1518 (dev_data->domain == NULL && domain != pt_domain))
1514 __attach_device(dev, pt_domain); 1519 __attach_device(dev, pt_domain);
1515} 1520}
1516 1521
@@ -2218,6 +2223,12 @@ static struct dma_map_ops amd_iommu_dma_ops = {
2218/* 2223/*
2219 * The function which clues the AMD IOMMU driver into dma_ops. 2224 * The function which clues the AMD IOMMU driver into dma_ops.
2220 */ 2225 */
2226
2227void __init amd_iommu_init_api(void)
2228{
2229 register_iommu(&amd_iommu_ops);
2230}
2231
2221int __init amd_iommu_init_dma_ops(void) 2232int __init amd_iommu_init_dma_ops(void)
2222{ 2233{
2223 struct amd_iommu *iommu; 2234 struct amd_iommu *iommu;
@@ -2253,8 +2264,6 @@ int __init amd_iommu_init_dma_ops(void)
2253 /* Make the driver finally visible to the drivers */ 2264 /* Make the driver finally visible to the drivers */
2254 dma_ops = &amd_iommu_dma_ops; 2265 dma_ops = &amd_iommu_dma_ops;
2255 2266
2256 register_iommu(&amd_iommu_ops);
2257
2258 amd_iommu_stats_init(); 2267 amd_iommu_stats_init();
2259 2268
2260 return 0; 2269 return 0;
diff --git a/arch/x86/kernel/amd_iommu_init.c b/arch/x86/kernel/amd_iommu_init.c
index fb490ce7dd55..9dc91b431470 100644
--- a/arch/x86/kernel/amd_iommu_init.c
+++ b/arch/x86/kernel/amd_iommu_init.c
@@ -1292,9 +1292,12 @@ static int __init amd_iommu_init(void)
1292 ret = amd_iommu_init_passthrough(); 1292 ret = amd_iommu_init_passthrough();
1293 else 1293 else
1294 ret = amd_iommu_init_dma_ops(); 1294 ret = amd_iommu_init_dma_ops();
1295
1295 if (ret) 1296 if (ret)
1296 goto free; 1297 goto free;
1297 1298
1299 amd_iommu_init_api();
1300
1298 amd_iommu_init_notifier(); 1301 amd_iommu_init_notifier();
1299 1302
1300 enable_iommus(); 1303 enable_iommus();
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
index e80f291472a4..3987e4408f75 100644
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -61,12 +61,6 @@ unsigned int boot_cpu_physical_apicid = -1U;
61 61
62/* 62/*
63 * The highest APIC ID seen during enumeration. 63 * The highest APIC ID seen during enumeration.
64 *
65 * This determines the messaging protocol we can use: if all APIC IDs
66 * are in the 0 ... 7 range, then we can use logical addressing which
67 * has some performance advantages (better broadcasting).
68 *
69 * If there's an APIC ID above 8, we use physical addressing.
70 */ 64 */
71unsigned int max_physical_apicid; 65unsigned int max_physical_apicid;
72 66
@@ -1898,14 +1892,7 @@ void __cpuinit generic_processor_info(int apicid, int version)
1898 max_physical_apicid = apicid; 1892 max_physical_apicid = apicid;
1899 1893
1900#ifdef CONFIG_X86_32 1894#ifdef CONFIG_X86_32
1901 /* 1895 if (num_processors > 8) {
1902 * Would be preferable to switch to bigsmp when CONFIG_HOTPLUG_CPU=y
1903 * but we need to work other dependencies like SMP_SUSPEND etc
1904 * before this can be done without some confusion.
1905 * if (CPU_HOTPLUG_ENABLED || num_processors > 8)
1906 * - Ashok Raj <ashok.raj@intel.com>
1907 */
1908 if (max_physical_apicid >= 8) {
1909 switch (boot_cpu_data.x86_vendor) { 1896 switch (boot_cpu_data.x86_vendor) {
1910 case X86_VENDOR_INTEL: 1897 case X86_VENDOR_INTEL:
1911 if (!APIC_XAPIC(version)) { 1898 if (!APIC_XAPIC(version)) {
diff --git a/arch/x86/kernel/apic/apic_flat_64.c b/arch/x86/kernel/apic/apic_flat_64.c
index eacbd2b31d27..e3c3d820c325 100644
--- a/arch/x86/kernel/apic/apic_flat_64.c
+++ b/arch/x86/kernel/apic/apic_flat_64.c
@@ -240,6 +240,11 @@ static int physflat_acpi_madt_oem_check(char *oem_id, char *oem_table_id)
240 printk(KERN_DEBUG "system APIC only can use physical flat"); 240 printk(KERN_DEBUG "system APIC only can use physical flat");
241 return 1; 241 return 1;
242 } 242 }
243
244 if (!strncmp(oem_id, "IBM", 3) && !strncmp(oem_table_id, "EXA", 3)) {
245 printk(KERN_DEBUG "IBM Summit detected, will use apic physical");
246 return 1;
247 }
243#endif 248#endif
244 249
245 return 0; 250 return 0;
diff --git a/arch/x86/kernel/apic/probe_64.c b/arch/x86/kernel/apic/probe_64.c
index 65edc180fc82..450fe2064a14 100644
--- a/arch/x86/kernel/apic/probe_64.c
+++ b/arch/x86/kernel/apic/probe_64.c
@@ -64,15 +64,13 @@ void __init default_setup_apic_routing(void)
64 apic = &apic_x2apic_phys; 64 apic = &apic_x2apic_phys;
65 else 65 else
66 apic = &apic_x2apic_cluster; 66 apic = &apic_x2apic_cluster;
67 printk(KERN_INFO "Setting APIC routing to %s\n", apic->name);
68 } 67 }
69#endif 68#endif
70 69
71 if (apic == &apic_flat) { 70 if (apic == &apic_flat && num_processors > 8)
72 if (max_physical_apicid >= 8)
73 apic = &apic_physflat; 71 apic = &apic_physflat;
74 printk(KERN_INFO "Setting APIC routing to %s\n", apic->name); 72
75 } 73 printk(KERN_INFO "Setting APIC routing to %s\n", apic->name);
76 74
77 if (is_vsmp_box()) { 75 if (is_vsmp_box()) {
78 /* need to update phys_pkg_id */ 76 /* need to update phys_pkg_id */
diff --git a/arch/x86/kernel/cpu/Makefile b/arch/x86/kernel/cpu/Makefile
index 1d2cb383410e..c202b62f3671 100644
--- a/arch/x86/kernel/cpu/Makefile
+++ b/arch/x86/kernel/cpu/Makefile
@@ -19,8 +19,6 @@ obj-y += vmware.o hypervisor.o sched.o
19obj-$(CONFIG_X86_32) += bugs.o cmpxchg.o 19obj-$(CONFIG_X86_32) += bugs.o cmpxchg.o
20obj-$(CONFIG_X86_64) += bugs_64.o 20obj-$(CONFIG_X86_64) += bugs_64.o
21 21
22obj-$(CONFIG_X86_CPU_DEBUG) += cpu_debug.o
23
24obj-$(CONFIG_CPU_SUP_INTEL) += intel.o 22obj-$(CONFIG_CPU_SUP_INTEL) += intel.o
25obj-$(CONFIG_CPU_SUP_AMD) += amd.o 23obj-$(CONFIG_CPU_SUP_AMD) += amd.o
26obj-$(CONFIG_CPU_SUP_CYRIX_32) += cyrix.o 24obj-$(CONFIG_CPU_SUP_CYRIX_32) += cyrix.o
diff --git a/arch/x86/kernel/cpu/cpu_debug.c b/arch/x86/kernel/cpu/cpu_debug.c
deleted file mode 100644
index b368cd862997..000000000000
--- a/arch/x86/kernel/cpu/cpu_debug.c
+++ /dev/null
@@ -1,688 +0,0 @@
1/*
2 * CPU x86 architecture debug code
3 *
4 * Copyright(C) 2009 Jaswinder Singh Rajput
5 *
6 * For licencing details see kernel-base/COPYING
7 */
8
9#include <linux/interrupt.h>
10#include <linux/compiler.h>
11#include <linux/seq_file.h>
12#include <linux/debugfs.h>
13#include <linux/kprobes.h>
14#include <linux/uaccess.h>
15#include <linux/kernel.h>
16#include <linux/module.h>
17#include <linux/percpu.h>
18#include <linux/signal.h>
19#include <linux/errno.h>
20#include <linux/sched.h>
21#include <linux/types.h>
22#include <linux/init.h>
23#include <linux/slab.h>
24#include <linux/smp.h>
25
26#include <asm/cpu_debug.h>
27#include <asm/paravirt.h>
28#include <asm/system.h>
29#include <asm/traps.h>
30#include <asm/apic.h>
31#include <asm/desc.h>
32
33static DEFINE_PER_CPU(struct cpu_cpuX_base [CPU_REG_ALL_BIT], cpud_arr);
34static DEFINE_PER_CPU(struct cpu_private * [MAX_CPU_FILES], cpud_priv_arr);
35static DEFINE_PER_CPU(int, cpud_priv_count);
36
37static DEFINE_MUTEX(cpu_debug_lock);
38
39static struct dentry *cpu_debugfs_dir;
40
41static struct cpu_debug_base cpu_base[] = {
42 { "mc", CPU_MC, 0 },
43 { "monitor", CPU_MONITOR, 0 },
44 { "time", CPU_TIME, 0 },
45 { "pmc", CPU_PMC, 1 },
46 { "platform", CPU_PLATFORM, 0 },
47 { "apic", CPU_APIC, 0 },
48 { "poweron", CPU_POWERON, 0 },
49 { "control", CPU_CONTROL, 0 },
50 { "features", CPU_FEATURES, 0 },
51 { "lastbranch", CPU_LBRANCH, 0 },
52 { "bios", CPU_BIOS, 0 },
53 { "freq", CPU_FREQ, 0 },
54 { "mtrr", CPU_MTRR, 0 },
55 { "perf", CPU_PERF, 0 },
56 { "cache", CPU_CACHE, 0 },
57 { "sysenter", CPU_SYSENTER, 0 },
58 { "therm", CPU_THERM, 0 },
59 { "misc", CPU_MISC, 0 },
60 { "debug", CPU_DEBUG, 0 },
61 { "pat", CPU_PAT, 0 },
62 { "vmx", CPU_VMX, 0 },
63 { "call", CPU_CALL, 0 },
64 { "base", CPU_BASE, 0 },
65 { "ver", CPU_VER, 0 },
66 { "conf", CPU_CONF, 0 },
67 { "smm", CPU_SMM, 0 },
68 { "svm", CPU_SVM, 0 },
69 { "osvm", CPU_OSVM, 0 },
70 { "tss", CPU_TSS, 0 },
71 { "cr", CPU_CR, 0 },
72 { "dt", CPU_DT, 0 },
73 { "registers", CPU_REG_ALL, 0 },
74};
75
76static struct cpu_file_base cpu_file[] = {
77 { "index", CPU_REG_ALL, 0 },
78 { "value", CPU_REG_ALL, 1 },
79};
80
81/* CPU Registers Range */
82static struct cpu_debug_range cpu_reg_range[] = {
83 { 0x00000000, 0x00000001, CPU_MC, },
84 { 0x00000006, 0x00000007, CPU_MONITOR, },
85 { 0x00000010, 0x00000010, CPU_TIME, },
86 { 0x00000011, 0x00000013, CPU_PMC, },
87 { 0x00000017, 0x00000017, CPU_PLATFORM, },
88 { 0x0000001B, 0x0000001B, CPU_APIC, },
89 { 0x0000002A, 0x0000002B, CPU_POWERON, },
90 { 0x0000002C, 0x0000002C, CPU_FREQ, },
91 { 0x0000003A, 0x0000003A, CPU_CONTROL, },
92 { 0x00000040, 0x00000047, CPU_LBRANCH, },
93 { 0x00000060, 0x00000067, CPU_LBRANCH, },
94 { 0x00000079, 0x00000079, CPU_BIOS, },
95 { 0x00000088, 0x0000008A, CPU_CACHE, },
96 { 0x0000008B, 0x0000008B, CPU_BIOS, },
97 { 0x0000009B, 0x0000009B, CPU_MONITOR, },
98 { 0x000000C1, 0x000000C4, CPU_PMC, },
99 { 0x000000CD, 0x000000CD, CPU_FREQ, },
100 { 0x000000E7, 0x000000E8, CPU_PERF, },
101 { 0x000000FE, 0x000000FE, CPU_MTRR, },
102
103 { 0x00000116, 0x0000011E, CPU_CACHE, },
104 { 0x00000174, 0x00000176, CPU_SYSENTER, },
105 { 0x00000179, 0x0000017B, CPU_MC, },
106 { 0x00000186, 0x00000189, CPU_PMC, },
107 { 0x00000198, 0x00000199, CPU_PERF, },
108 { 0x0000019A, 0x0000019A, CPU_TIME, },
109 { 0x0000019B, 0x0000019D, CPU_THERM, },
110 { 0x000001A0, 0x000001A0, CPU_MISC, },
111 { 0x000001C9, 0x000001C9, CPU_LBRANCH, },
112 { 0x000001D7, 0x000001D8, CPU_LBRANCH, },
113 { 0x000001D9, 0x000001D9, CPU_DEBUG, },
114 { 0x000001DA, 0x000001E0, CPU_LBRANCH, },
115
116 { 0x00000200, 0x0000020F, CPU_MTRR, },
117 { 0x00000250, 0x00000250, CPU_MTRR, },
118 { 0x00000258, 0x00000259, CPU_MTRR, },
119 { 0x00000268, 0x0000026F, CPU_MTRR, },
120 { 0x00000277, 0x00000277, CPU_PAT, },
121 { 0x000002FF, 0x000002FF, CPU_MTRR, },
122
123 { 0x00000300, 0x00000311, CPU_PMC, },
124 { 0x00000345, 0x00000345, CPU_PMC, },
125 { 0x00000360, 0x00000371, CPU_PMC, },
126 { 0x0000038D, 0x00000390, CPU_PMC, },
127 { 0x000003A0, 0x000003BE, CPU_PMC, },
128 { 0x000003C0, 0x000003CD, CPU_PMC, },
129 { 0x000003E0, 0x000003E1, CPU_PMC, },
130 { 0x000003F0, 0x000003F2, CPU_PMC, },
131
132 { 0x00000400, 0x00000417, CPU_MC, },
133 { 0x00000480, 0x0000048B, CPU_VMX, },
134
135 { 0x00000600, 0x00000600, CPU_DEBUG, },
136 { 0x00000680, 0x0000068F, CPU_LBRANCH, },
137 { 0x000006C0, 0x000006CF, CPU_LBRANCH, },
138
139 { 0x000107CC, 0x000107D3, CPU_PMC, },
140
141 { 0xC0000080, 0xC0000080, CPU_FEATURES, },
142 { 0xC0000081, 0xC0000084, CPU_CALL, },
143 { 0xC0000100, 0xC0000102, CPU_BASE, },
144 { 0xC0000103, 0xC0000103, CPU_TIME, },
145
146 { 0xC0010000, 0xC0010007, CPU_PMC, },
147 { 0xC0010010, 0xC0010010, CPU_CONF, },
148 { 0xC0010015, 0xC0010015, CPU_CONF, },
149 { 0xC0010016, 0xC001001A, CPU_MTRR, },
150 { 0xC001001D, 0xC001001D, CPU_MTRR, },
151 { 0xC001001F, 0xC001001F, CPU_CONF, },
152 { 0xC0010030, 0xC0010035, CPU_BIOS, },
153 { 0xC0010044, 0xC0010048, CPU_MC, },
154 { 0xC0010050, 0xC0010056, CPU_SMM, },
155 { 0xC0010058, 0xC0010058, CPU_CONF, },
156 { 0xC0010060, 0xC0010060, CPU_CACHE, },
157 { 0xC0010061, 0xC0010068, CPU_SMM, },
158 { 0xC0010069, 0xC001006B, CPU_SMM, },
159 { 0xC0010070, 0xC0010071, CPU_SMM, },
160 { 0xC0010111, 0xC0010113, CPU_SMM, },
161 { 0xC0010114, 0xC0010118, CPU_SVM, },
162 { 0xC0010140, 0xC0010141, CPU_OSVM, },
163 { 0xC0011022, 0xC0011023, CPU_CONF, },
164};
165
166static int is_typeflag_valid(unsigned cpu, unsigned flag)
167{
168 int i;
169
170 /* Standard Registers should be always valid */
171 if (flag >= CPU_TSS)
172 return 1;
173
174 for (i = 0; i < ARRAY_SIZE(cpu_reg_range); i++) {
175 if (cpu_reg_range[i].flag == flag)
176 return 1;
177 }
178
179 /* Invalid */
180 return 0;
181}
182
183static unsigned get_cpu_range(unsigned cpu, unsigned *min, unsigned *max,
184 int index, unsigned flag)
185{
186 if (cpu_reg_range[index].flag == flag) {
187 *min = cpu_reg_range[index].min;
188 *max = cpu_reg_range[index].max;
189 } else
190 *max = 0;
191
192 return *max;
193}
194
195/* This function can also be called with seq = NULL for printk */
196static void print_cpu_data(struct seq_file *seq, unsigned type,
197 u32 low, u32 high)
198{
199 struct cpu_private *priv;
200 u64 val = high;
201
202 if (seq) {
203 priv = seq->private;
204 if (priv->file) {
205 val = (val << 32) | low;
206 seq_printf(seq, "0x%llx\n", val);
207 } else
208 seq_printf(seq, " %08x: %08x_%08x\n",
209 type, high, low);
210 } else
211 printk(KERN_INFO " %08x: %08x_%08x\n", type, high, low);
212}
213
214/* This function can also be called with seq = NULL for printk */
215static void print_msr(struct seq_file *seq, unsigned cpu, unsigned flag)
216{
217 unsigned msr, msr_min, msr_max;
218 struct cpu_private *priv;
219 u32 low, high;
220 int i;
221
222 if (seq) {
223 priv = seq->private;
224 if (priv->file) {
225 if (!rdmsr_safe_on_cpu(priv->cpu, priv->reg,
226 &low, &high))
227 print_cpu_data(seq, priv->reg, low, high);
228 return;
229 }
230 }
231
232 for (i = 0; i < ARRAY_SIZE(cpu_reg_range); i++) {
233 if (!get_cpu_range(cpu, &msr_min, &msr_max, i, flag))
234 continue;
235
236 for (msr = msr_min; msr <= msr_max; msr++) {
237 if (rdmsr_safe_on_cpu(cpu, msr, &low, &high))
238 continue;
239 print_cpu_data(seq, msr, low, high);
240 }
241 }
242}
243
244static void print_tss(void *arg)
245{
246 struct pt_regs *regs = task_pt_regs(current);
247 struct seq_file *seq = arg;
248 unsigned int seg;
249
250 seq_printf(seq, " RAX\t: %016lx\n", regs->ax);
251 seq_printf(seq, " RBX\t: %016lx\n", regs->bx);
252 seq_printf(seq, " RCX\t: %016lx\n", regs->cx);
253 seq_printf(seq, " RDX\t: %016lx\n", regs->dx);
254
255 seq_printf(seq, " RSI\t: %016lx\n", regs->si);
256 seq_printf(seq, " RDI\t: %016lx\n", regs->di);
257 seq_printf(seq, " RBP\t: %016lx\n", regs->bp);
258 seq_printf(seq, " ESP\t: %016lx\n", regs->sp);
259
260#ifdef CONFIG_X86_64
261 seq_printf(seq, " R08\t: %016lx\n", regs->r8);
262 seq_printf(seq, " R09\t: %016lx\n", regs->r9);
263 seq_printf(seq, " R10\t: %016lx\n", regs->r10);
264 seq_printf(seq, " R11\t: %016lx\n", regs->r11);
265 seq_printf(seq, " R12\t: %016lx\n", regs->r12);
266 seq_printf(seq, " R13\t: %016lx\n", regs->r13);
267 seq_printf(seq, " R14\t: %016lx\n", regs->r14);
268 seq_printf(seq, " R15\t: %016lx\n", regs->r15);
269#endif
270
271 asm("movl %%cs,%0" : "=r" (seg));
272 seq_printf(seq, " CS\t: %04x\n", seg);
273 asm("movl %%ds,%0" : "=r" (seg));
274 seq_printf(seq, " DS\t: %04x\n", seg);
275 seq_printf(seq, " SS\t: %04lx\n", regs->ss & 0xffff);
276 asm("movl %%es,%0" : "=r" (seg));
277 seq_printf(seq, " ES\t: %04x\n", seg);
278 asm("movl %%fs,%0" : "=r" (seg));
279 seq_printf(seq, " FS\t: %04x\n", seg);
280 asm("movl %%gs,%0" : "=r" (seg));
281 seq_printf(seq, " GS\t: %04x\n", seg);
282
283 seq_printf(seq, " EFLAGS\t: %016lx\n", regs->flags);
284
285 seq_printf(seq, " EIP\t: %016lx\n", regs->ip);
286}
287
288static void print_cr(void *arg)
289{
290 struct seq_file *seq = arg;
291
292 seq_printf(seq, " cr0\t: %016lx\n", read_cr0());
293 seq_printf(seq, " cr2\t: %016lx\n", read_cr2());
294 seq_printf(seq, " cr3\t: %016lx\n", read_cr3());
295 seq_printf(seq, " cr4\t: %016lx\n", read_cr4_safe());
296#ifdef CONFIG_X86_64
297 seq_printf(seq, " cr8\t: %016lx\n", read_cr8());
298#endif
299}
300
301static void print_desc_ptr(char *str, struct seq_file *seq, struct desc_ptr dt)
302{
303 seq_printf(seq, " %s\t: %016llx\n", str, (u64)(dt.address | dt.size));
304}
305
306static void print_dt(void *seq)
307{
308 struct desc_ptr dt;
309 unsigned long ldt;
310
311 /* IDT */
312 store_idt((struct desc_ptr *)&dt);
313 print_desc_ptr("IDT", seq, dt);
314
315 /* GDT */
316 store_gdt((struct desc_ptr *)&dt);
317 print_desc_ptr("GDT", seq, dt);
318
319 /* LDT */
320 store_ldt(ldt);
321 seq_printf(seq, " LDT\t: %016lx\n", ldt);
322
323 /* TR */
324 store_tr(ldt);
325 seq_printf(seq, " TR\t: %016lx\n", ldt);
326}
327
328static void print_dr(void *arg)
329{
330 struct seq_file *seq = arg;
331 unsigned long dr;
332 int i;
333
334 for (i = 0; i < 8; i++) {
335 /* Ignore db4, db5 */
336 if ((i == 4) || (i == 5))
337 continue;
338 get_debugreg(dr, i);
339 seq_printf(seq, " dr%d\t: %016lx\n", i, dr);
340 }
341
342 seq_printf(seq, "\n MSR\t:\n");
343}
344
345static void print_apic(void *arg)
346{
347 struct seq_file *seq = arg;
348
349#ifdef CONFIG_X86_LOCAL_APIC
350 seq_printf(seq, " LAPIC\t:\n");
351 seq_printf(seq, " ID\t\t: %08x\n", apic_read(APIC_ID) >> 24);
352 seq_printf(seq, " LVR\t\t: %08x\n", apic_read(APIC_LVR));
353 seq_printf(seq, " TASKPRI\t: %08x\n", apic_read(APIC_TASKPRI));
354 seq_printf(seq, " ARBPRI\t\t: %08x\n", apic_read(APIC_ARBPRI));
355 seq_printf(seq, " PROCPRI\t: %08x\n", apic_read(APIC_PROCPRI));
356 seq_printf(seq, " LDR\t\t: %08x\n", apic_read(APIC_LDR));
357 seq_printf(seq, " DFR\t\t: %08x\n", apic_read(APIC_DFR));
358 seq_printf(seq, " SPIV\t\t: %08x\n", apic_read(APIC_SPIV));
359 seq_printf(seq, " ISR\t\t: %08x\n", apic_read(APIC_ISR));
360 seq_printf(seq, " ESR\t\t: %08x\n", apic_read(APIC_ESR));
361 seq_printf(seq, " ICR\t\t: %08x\n", apic_read(APIC_ICR));
362 seq_printf(seq, " ICR2\t\t: %08x\n", apic_read(APIC_ICR2));
363 seq_printf(seq, " LVTT\t\t: %08x\n", apic_read(APIC_LVTT));
364 seq_printf(seq, " LVTTHMR\t: %08x\n", apic_read(APIC_LVTTHMR));
365 seq_printf(seq, " LVTPC\t\t: %08x\n", apic_read(APIC_LVTPC));
366 seq_printf(seq, " LVT0\t\t: %08x\n", apic_read(APIC_LVT0));
367 seq_printf(seq, " LVT1\t\t: %08x\n", apic_read(APIC_LVT1));
368 seq_printf(seq, " LVTERR\t\t: %08x\n", apic_read(APIC_LVTERR));
369 seq_printf(seq, " TMICT\t\t: %08x\n", apic_read(APIC_TMICT));
370 seq_printf(seq, " TMCCT\t\t: %08x\n", apic_read(APIC_TMCCT));
371 seq_printf(seq, " TDCR\t\t: %08x\n", apic_read(APIC_TDCR));
372 if (boot_cpu_has(X86_FEATURE_EXTAPIC)) {
373 unsigned int i, v, maxeilvt;
374
375 v = apic_read(APIC_EFEAT);
376 maxeilvt = (v >> 16) & 0xff;
377 seq_printf(seq, " EFEAT\t\t: %08x\n", v);
378 seq_printf(seq, " ECTRL\t\t: %08x\n", apic_read(APIC_ECTRL));
379
380 for (i = 0; i < maxeilvt; i++) {
381 v = apic_read(APIC_EILVTn(i));
382 seq_printf(seq, " EILVT%d\t\t: %08x\n", i, v);
383 }
384 }
385#endif /* CONFIG_X86_LOCAL_APIC */
386 seq_printf(seq, "\n MSR\t:\n");
387}
388
389static int cpu_seq_show(struct seq_file *seq, void *v)
390{
391 struct cpu_private *priv = seq->private;
392
393 if (priv == NULL)
394 return -EINVAL;
395
396 switch (cpu_base[priv->type].flag) {
397 case CPU_TSS:
398 smp_call_function_single(priv->cpu, print_tss, seq, 1);
399 break;
400 case CPU_CR:
401 smp_call_function_single(priv->cpu, print_cr, seq, 1);
402 break;
403 case CPU_DT:
404 smp_call_function_single(priv->cpu, print_dt, seq, 1);
405 break;
406 case CPU_DEBUG:
407 if (priv->file == CPU_INDEX_BIT)
408 smp_call_function_single(priv->cpu, print_dr, seq, 1);
409 print_msr(seq, priv->cpu, cpu_base[priv->type].flag);
410 break;
411 case CPU_APIC:
412 if (priv->file == CPU_INDEX_BIT)
413 smp_call_function_single(priv->cpu, print_apic, seq, 1);
414 print_msr(seq, priv->cpu, cpu_base[priv->type].flag);
415 break;
416
417 default:
418 print_msr(seq, priv->cpu, cpu_base[priv->type].flag);
419 break;
420 }
421 seq_printf(seq, "\n");
422
423 return 0;
424}
425
426static void *cpu_seq_start(struct seq_file *seq, loff_t *pos)
427{
428 if (*pos == 0) /* One time is enough ;-) */
429 return seq;
430
431 return NULL;
432}
433
434static void *cpu_seq_next(struct seq_file *seq, void *v, loff_t *pos)
435{
436 (*pos)++;
437
438 return cpu_seq_start(seq, pos);
439}
440
441static void cpu_seq_stop(struct seq_file *seq, void *v)
442{
443}
444
445static const struct seq_operations cpu_seq_ops = {
446 .start = cpu_seq_start,
447 .next = cpu_seq_next,
448 .stop = cpu_seq_stop,
449 .show = cpu_seq_show,
450};
451
452static int cpu_seq_open(struct inode *inode, struct file *file)
453{
454 struct cpu_private *priv = inode->i_private;
455 struct seq_file *seq;
456 int err;
457
458 err = seq_open(file, &cpu_seq_ops);
459 if (!err) {
460 seq = file->private_data;
461 seq->private = priv;
462 }
463
464 return err;
465}
466
467static int write_msr(struct cpu_private *priv, u64 val)
468{
469 u32 low, high;
470
471 high = (val >> 32) & 0xffffffff;
472 low = val & 0xffffffff;
473
474 if (!wrmsr_safe_on_cpu(priv->cpu, priv->reg, low, high))
475 return 0;
476
477 return -EPERM;
478}
479
480static int write_cpu_register(struct cpu_private *priv, const char *buf)
481{
482 int ret = -EPERM;
483 u64 val;
484
485 ret = strict_strtoull(buf, 0, &val);
486 if (ret < 0)
487 return ret;
488
489 /* Supporting only MSRs */
490 if (priv->type < CPU_TSS_BIT)
491 return write_msr(priv, val);
492
493 return ret;
494}
495
496static ssize_t cpu_write(struct file *file, const char __user *ubuf,
497 size_t count, loff_t *off)
498{
499 struct seq_file *seq = file->private_data;
500 struct cpu_private *priv = seq->private;
501 char buf[19];
502
503 if ((priv == NULL) || (count >= sizeof(buf)))
504 return -EINVAL;
505
506 if (copy_from_user(&buf, ubuf, count))
507 return -EFAULT;
508
509 buf[count] = 0;
510
511 if ((cpu_base[priv->type].write) && (cpu_file[priv->file].write))
512 if (!write_cpu_register(priv, buf))
513 return count;
514
515 return -EACCES;
516}
517
518static const struct file_operations cpu_fops = {
519 .owner = THIS_MODULE,
520 .open = cpu_seq_open,
521 .read = seq_read,
522 .write = cpu_write,
523 .llseek = seq_lseek,
524 .release = seq_release,
525};
526
527static int cpu_create_file(unsigned cpu, unsigned type, unsigned reg,
528 unsigned file, struct dentry *dentry)
529{
530 struct cpu_private *priv = NULL;
531
532 /* Already intialized */
533 if (file == CPU_INDEX_BIT)
534 if (per_cpu(cpud_arr[type].init, cpu))
535 return 0;
536
537 priv = kzalloc(sizeof(*priv), GFP_KERNEL);
538 if (priv == NULL)
539 return -ENOMEM;
540
541 priv->cpu = cpu;
542 priv->type = type;
543 priv->reg = reg;
544 priv->file = file;
545 mutex_lock(&cpu_debug_lock);
546 per_cpu(cpud_priv_arr[type], cpu) = priv;
547 per_cpu(cpud_priv_count, cpu)++;
548 mutex_unlock(&cpu_debug_lock);
549
550 if (file)
551 debugfs_create_file(cpu_file[file].name, S_IRUGO,
552 dentry, (void *)priv, &cpu_fops);
553 else {
554 debugfs_create_file(cpu_base[type].name, S_IRUGO,
555 per_cpu(cpud_arr[type].dentry, cpu),
556 (void *)priv, &cpu_fops);
557 mutex_lock(&cpu_debug_lock);
558 per_cpu(cpud_arr[type].init, cpu) = 1;
559 mutex_unlock(&cpu_debug_lock);
560 }
561
562 return 0;
563}
564
565static int cpu_init_regfiles(unsigned cpu, unsigned int type, unsigned reg,
566 struct dentry *dentry)
567{
568 unsigned file;
569 int err = 0;
570
571 for (file = 0; file < ARRAY_SIZE(cpu_file); file++) {
572 err = cpu_create_file(cpu, type, reg, file, dentry);
573 if (err)
574 return err;
575 }
576
577 return err;
578}
579
580static int cpu_init_msr(unsigned cpu, unsigned type, struct dentry *dentry)
581{
582 struct dentry *cpu_dentry = NULL;
583 unsigned reg, reg_min, reg_max;
584 int i, err = 0;
585 char reg_dir[12];
586 u32 low, high;
587
588 for (i = 0; i < ARRAY_SIZE(cpu_reg_range); i++) {
589 if (!get_cpu_range(cpu, &reg_min, &reg_max, i,
590 cpu_base[type].flag))
591 continue;
592
593 for (reg = reg_min; reg <= reg_max; reg++) {
594 if (rdmsr_safe_on_cpu(cpu, reg, &low, &high))
595 continue;
596
597 sprintf(reg_dir, "0x%x", reg);
598 cpu_dentry = debugfs_create_dir(reg_dir, dentry);
599 err = cpu_init_regfiles(cpu, type, reg, cpu_dentry);
600 if (err)
601 return err;
602 }
603 }
604
605 return err;
606}
607
608static int cpu_init_allreg(unsigned cpu, struct dentry *dentry)
609{
610 struct dentry *cpu_dentry = NULL;
611 unsigned type;
612 int err = 0;
613
614 for (type = 0; type < ARRAY_SIZE(cpu_base) - 1; type++) {
615 if (!is_typeflag_valid(cpu, cpu_base[type].flag))
616 continue;
617 cpu_dentry = debugfs_create_dir(cpu_base[type].name, dentry);
618 per_cpu(cpud_arr[type].dentry, cpu) = cpu_dentry;
619
620 if (type < CPU_TSS_BIT)
621 err = cpu_init_msr(cpu, type, cpu_dentry);
622 else
623 err = cpu_create_file(cpu, type, 0, CPU_INDEX_BIT,
624 cpu_dentry);
625 if (err)
626 return err;
627 }
628
629 return err;
630}
631
632static int cpu_init_cpu(void)
633{
634 struct dentry *cpu_dentry = NULL;
635 struct cpuinfo_x86 *cpui;
636 char cpu_dir[12];
637 unsigned cpu;
638 int err = 0;
639
640 for (cpu = 0; cpu < nr_cpu_ids; cpu++) {
641 cpui = &cpu_data(cpu);
642 if (!cpu_has(cpui, X86_FEATURE_MSR))
643 continue;
644
645 sprintf(cpu_dir, "cpu%d", cpu);
646 cpu_dentry = debugfs_create_dir(cpu_dir, cpu_debugfs_dir);
647 err = cpu_init_allreg(cpu, cpu_dentry);
648
649 pr_info("cpu%d(%d) debug files %d\n",
650 cpu, nr_cpu_ids, per_cpu(cpud_priv_count, cpu));
651 if (per_cpu(cpud_priv_count, cpu) > MAX_CPU_FILES) {
652 pr_err("Register files count %d exceeds limit %d\n",
653 per_cpu(cpud_priv_count, cpu), MAX_CPU_FILES);
654 per_cpu(cpud_priv_count, cpu) = MAX_CPU_FILES;
655 err = -ENFILE;
656 }
657 if (err)
658 return err;
659 }
660
661 return err;
662}
663
664static int __init cpu_debug_init(void)
665{
666 cpu_debugfs_dir = debugfs_create_dir("cpu", arch_debugfs_dir);
667
668 return cpu_init_cpu();
669}
670
671static void __exit cpu_debug_exit(void)
672{
673 int i, cpu;
674
675 if (cpu_debugfs_dir)
676 debugfs_remove_recursive(cpu_debugfs_dir);
677
678 for (cpu = 0; cpu < nr_cpu_ids; cpu++)
679 for (i = 0; i < per_cpu(cpud_priv_count, cpu); i++)
680 kfree(per_cpu(cpud_priv_arr[i], cpu));
681}
682
683module_init(cpu_debug_init);
684module_exit(cpu_debug_exit);
685
686MODULE_AUTHOR("Jaswinder Singh Rajput");
687MODULE_DESCRIPTION("CPU Debug module");
688MODULE_LICENSE("GPL");
diff --git a/arch/x86/kernel/cpu/perf_event.c b/arch/x86/kernel/cpu/perf_event.c
index d616c06e99b4..8c1c07073ccc 100644
--- a/arch/x86/kernel/cpu/perf_event.c
+++ b/arch/x86/kernel/cpu/perf_event.c
@@ -1343,6 +1343,13 @@ intel_pmu_enable_fixed(struct hw_perf_event *hwc, int __idx)
1343 bits |= 0x2; 1343 bits |= 0x2;
1344 if (hwc->config & ARCH_PERFMON_EVENTSEL_OS) 1344 if (hwc->config & ARCH_PERFMON_EVENTSEL_OS)
1345 bits |= 0x1; 1345 bits |= 0x1;
1346
1347 /*
1348 * ANY bit is supported in v3 and up
1349 */
1350 if (x86_pmu.version > 2 && hwc->config & ARCH_PERFMON_EVENTSEL_ANY)
1351 bits |= 0x4;
1352
1346 bits <<= (idx * 4); 1353 bits <<= (idx * 4);
1347 mask = 0xfULL << (idx * 4); 1354 mask = 0xfULL << (idx * 4);
1348 1355
diff --git a/arch/x86/kernel/cpuid.c b/arch/x86/kernel/cpuid.c
index cb27fd6136c9..83e5e628de73 100644
--- a/arch/x86/kernel/cpuid.c
+++ b/arch/x86/kernel/cpuid.c
@@ -229,7 +229,7 @@ static void __exit cpuid_exit(void)
229 for_each_online_cpu(cpu) 229 for_each_online_cpu(cpu)
230 cpuid_device_destroy(cpu); 230 cpuid_device_destroy(cpu);
231 class_destroy(cpuid_class); 231 class_destroy(cpuid_class);
232 unregister_chrdev(CPUID_MAJOR, "cpu/cpuid"); 232 __unregister_chrdev(CPUID_MAJOR, 0, NR_CPUS, "cpu/cpuid");
233 unregister_hotcpu_notifier(&cpuid_class_cpu_notifier); 233 unregister_hotcpu_notifier(&cpuid_class_cpu_notifier);
234} 234}
235 235
diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
index ba6e65884603..ad80a1c718c6 100644
--- a/arch/x86/kernel/hpet.c
+++ b/arch/x86/kernel/hpet.c
@@ -34,6 +34,8 @@
34 */ 34 */
35unsigned long hpet_address; 35unsigned long hpet_address;
36u8 hpet_blockid; /* OS timer block num */ 36u8 hpet_blockid; /* OS timer block num */
37u8 hpet_msi_disable;
38
37#ifdef CONFIG_PCI_MSI 39#ifdef CONFIG_PCI_MSI
38static unsigned long hpet_num_timers; 40static unsigned long hpet_num_timers;
39#endif 41#endif
@@ -596,6 +598,9 @@ static void hpet_msi_capability_lookup(unsigned int start_timer)
596 unsigned int num_timers_used = 0; 598 unsigned int num_timers_used = 0;
597 int i; 599 int i;
598 600
601 if (hpet_msi_disable)
602 return;
603
599 if (boot_cpu_has(X86_FEATURE_ARAT)) 604 if (boot_cpu_has(X86_FEATURE_ARAT))
600 return; 605 return;
601 id = hpet_readl(HPET_ID); 606 id = hpet_readl(HPET_ID);
@@ -928,6 +933,9 @@ static __init int hpet_late_init(void)
928 hpet_reserve_platform_timers(hpet_readl(HPET_ID)); 933 hpet_reserve_platform_timers(hpet_readl(HPET_ID));
929 hpet_print_config(); 934 hpet_print_config();
930 935
936 if (hpet_msi_disable)
937 return 0;
938
931 if (boot_cpu_has(X86_FEATURE_ARAT)) 939 if (boot_cpu_has(X86_FEATURE_ARAT))
932 return 0; 940 return 0;
933 941
diff --git a/arch/x86/kernel/kgdb.c b/arch/x86/kernel/kgdb.c
index dd74fe7273b1..bfba6019d762 100644
--- a/arch/x86/kernel/kgdb.c
+++ b/arch/x86/kernel/kgdb.c
@@ -42,6 +42,7 @@
42#include <linux/init.h> 42#include <linux/init.h>
43#include <linux/smp.h> 43#include <linux/smp.h>
44#include <linux/nmi.h> 44#include <linux/nmi.h>
45#include <linux/hw_breakpoint.h>
45 46
46#include <asm/debugreg.h> 47#include <asm/debugreg.h>
47#include <asm/apicdef.h> 48#include <asm/apicdef.h>
@@ -204,40 +205,81 @@ void gdb_regs_to_pt_regs(unsigned long *gdb_regs, struct pt_regs *regs)
204 205
205static struct hw_breakpoint { 206static struct hw_breakpoint {
206 unsigned enabled; 207 unsigned enabled;
207 unsigned type;
208 unsigned len;
209 unsigned long addr; 208 unsigned long addr;
209 int len;
210 int type;
211 struct perf_event **pev;
210} breakinfo[4]; 212} breakinfo[4];
211 213
212static void kgdb_correct_hw_break(void) 214static void kgdb_correct_hw_break(void)
213{ 215{
214 unsigned long dr7;
215 int correctit = 0;
216 int breakbit;
217 int breakno; 216 int breakno;
218 217
219 get_debugreg(dr7, 7);
220 for (breakno = 0; breakno < 4; breakno++) { 218 for (breakno = 0; breakno < 4; breakno++) {
221 breakbit = 2 << (breakno << 1); 219 struct perf_event *bp;
222 if (!(dr7 & breakbit) && breakinfo[breakno].enabled) { 220 struct arch_hw_breakpoint *info;
223 correctit = 1; 221 int val;
224 dr7 |= breakbit; 222 int cpu = raw_smp_processor_id();
225 dr7 &= ~(0xf0000 << (breakno << 2)); 223 if (!breakinfo[breakno].enabled)
226 dr7 |= ((breakinfo[breakno].len << 2) | 224 continue;
227 breakinfo[breakno].type) << 225 bp = *per_cpu_ptr(breakinfo[breakno].pev, cpu);
228 ((breakno << 2) + 16); 226 info = counter_arch_bp(bp);
229 set_debugreg(breakinfo[breakno].addr, breakno); 227 if (bp->attr.disabled != 1)
230 228 continue;
231 } else { 229 bp->attr.bp_addr = breakinfo[breakno].addr;
232 if ((dr7 & breakbit) && !breakinfo[breakno].enabled) { 230 bp->attr.bp_len = breakinfo[breakno].len;
233 correctit = 1; 231 bp->attr.bp_type = breakinfo[breakno].type;
234 dr7 &= ~breakbit; 232 info->address = breakinfo[breakno].addr;
235 dr7 &= ~(0xf0000 << (breakno << 2)); 233 info->len = breakinfo[breakno].len;
236 } 234 info->type = breakinfo[breakno].type;
237 } 235 val = arch_install_hw_breakpoint(bp);
236 if (!val)
237 bp->attr.disabled = 0;
238 }
239 hw_breakpoint_restore();
240}
241
242static int hw_break_reserve_slot(int breakno)
243{
244 int cpu;
245 int cnt = 0;
246 struct perf_event **pevent;
247
248 for_each_online_cpu(cpu) {
249 cnt++;
250 pevent = per_cpu_ptr(breakinfo[breakno].pev, cpu);
251 if (dbg_reserve_bp_slot(*pevent))
252 goto fail;
253 }
254
255 return 0;
256
257fail:
258 for_each_online_cpu(cpu) {
259 cnt--;
260 if (!cnt)
261 break;
262 pevent = per_cpu_ptr(breakinfo[breakno].pev, cpu);
263 dbg_release_bp_slot(*pevent);
238 } 264 }
239 if (correctit) 265 return -1;
240 set_debugreg(dr7, 7); 266}
267
268static int hw_break_release_slot(int breakno)
269{
270 struct perf_event **pevent;
271 int cpu;
272
273 for_each_online_cpu(cpu) {
274 pevent = per_cpu_ptr(breakinfo[breakno].pev, cpu);
275 if (dbg_release_bp_slot(*pevent))
276 /*
277 * The debugger is responisble for handing the retry on
278 * remove failure.
279 */
280 return -1;
281 }
282 return 0;
241} 283}
242 284
243static int 285static int
@@ -251,6 +293,10 @@ kgdb_remove_hw_break(unsigned long addr, int len, enum kgdb_bptype bptype)
251 if (i == 4) 293 if (i == 4)
252 return -1; 294 return -1;
253 295
296 if (hw_break_release_slot(i)) {
297 printk(KERN_ERR "Cannot remove hw breakpoint at %lx\n", addr);
298 return -1;
299 }
254 breakinfo[i].enabled = 0; 300 breakinfo[i].enabled = 0;
255 301
256 return 0; 302 return 0;
@@ -259,15 +305,23 @@ kgdb_remove_hw_break(unsigned long addr, int len, enum kgdb_bptype bptype)
259static void kgdb_remove_all_hw_break(void) 305static void kgdb_remove_all_hw_break(void)
260{ 306{
261 int i; 307 int i;
308 int cpu = raw_smp_processor_id();
309 struct perf_event *bp;
262 310
263 for (i = 0; i < 4; i++) 311 for (i = 0; i < 4; i++) {
264 memset(&breakinfo[i], 0, sizeof(struct hw_breakpoint)); 312 if (!breakinfo[i].enabled)
313 continue;
314 bp = *per_cpu_ptr(breakinfo[i].pev, cpu);
315 if (bp->attr.disabled == 1)
316 continue;
317 arch_uninstall_hw_breakpoint(bp);
318 bp->attr.disabled = 1;
319 }
265} 320}
266 321
267static int 322static int
268kgdb_set_hw_break(unsigned long addr, int len, enum kgdb_bptype bptype) 323kgdb_set_hw_break(unsigned long addr, int len, enum kgdb_bptype bptype)
269{ 324{
270 unsigned type;
271 int i; 325 int i;
272 326
273 for (i = 0; i < 4; i++) 327 for (i = 0; i < 4; i++)
@@ -278,27 +332,42 @@ kgdb_set_hw_break(unsigned long addr, int len, enum kgdb_bptype bptype)
278 332
279 switch (bptype) { 333 switch (bptype) {
280 case BP_HARDWARE_BREAKPOINT: 334 case BP_HARDWARE_BREAKPOINT:
281 type = 0; 335 len = 1;
282 len = 1; 336 breakinfo[i].type = X86_BREAKPOINT_EXECUTE;
283 break; 337 break;
284 case BP_WRITE_WATCHPOINT: 338 case BP_WRITE_WATCHPOINT:
285 type = 1; 339 breakinfo[i].type = X86_BREAKPOINT_WRITE;
286 break; 340 break;
287 case BP_ACCESS_WATCHPOINT: 341 case BP_ACCESS_WATCHPOINT:
288 type = 3; 342 breakinfo[i].type = X86_BREAKPOINT_RW;
289 break; 343 break;
290 default: 344 default:
291 return -1; 345 return -1;
292 } 346 }
293 347 switch (len) {
294 if (len == 1 || len == 2 || len == 4) 348 case 1:
295 breakinfo[i].len = len - 1; 349 breakinfo[i].len = X86_BREAKPOINT_LEN_1;
296 else 350 break;
351 case 2:
352 breakinfo[i].len = X86_BREAKPOINT_LEN_2;
353 break;
354 case 4:
355 breakinfo[i].len = X86_BREAKPOINT_LEN_4;
356 break;
357#ifdef CONFIG_X86_64
358 case 8:
359 breakinfo[i].len = X86_BREAKPOINT_LEN_8;
360 break;
361#endif
362 default:
297 return -1; 363 return -1;
298 364 }
299 breakinfo[i].enabled = 1;
300 breakinfo[i].addr = addr; 365 breakinfo[i].addr = addr;
301 breakinfo[i].type = type; 366 if (hw_break_reserve_slot(i)) {
367 breakinfo[i].addr = 0;
368 return -1;
369 }
370 breakinfo[i].enabled = 1;
302 371
303 return 0; 372 return 0;
304} 373}
@@ -313,8 +382,21 @@ kgdb_set_hw_break(unsigned long addr, int len, enum kgdb_bptype bptype)
313 */ 382 */
314void kgdb_disable_hw_debug(struct pt_regs *regs) 383void kgdb_disable_hw_debug(struct pt_regs *regs)
315{ 384{
385 int i;
386 int cpu = raw_smp_processor_id();
387 struct perf_event *bp;
388
316 /* Disable hardware debugging while we are in kgdb: */ 389 /* Disable hardware debugging while we are in kgdb: */
317 set_debugreg(0UL, 7); 390 set_debugreg(0UL, 7);
391 for (i = 0; i < 4; i++) {
392 if (!breakinfo[i].enabled)
393 continue;
394 bp = *per_cpu_ptr(breakinfo[i].pev, cpu);
395 if (bp->attr.disabled == 1)
396 continue;
397 arch_uninstall_hw_breakpoint(bp);
398 bp->attr.disabled = 1;
399 }
318} 400}
319 401
320/** 402/**
@@ -378,7 +460,6 @@ int kgdb_arch_handle_exception(int e_vector, int signo, int err_code,
378 struct pt_regs *linux_regs) 460 struct pt_regs *linux_regs)
379{ 461{
380 unsigned long addr; 462 unsigned long addr;
381 unsigned long dr6;
382 char *ptr; 463 char *ptr;
383 int newPC; 464 int newPC;
384 465
@@ -404,20 +485,6 @@ int kgdb_arch_handle_exception(int e_vector, int signo, int err_code,
404 raw_smp_processor_id()); 485 raw_smp_processor_id());
405 } 486 }
406 487
407 get_debugreg(dr6, 6);
408 if (!(dr6 & 0x4000)) {
409 int breakno;
410
411 for (breakno = 0; breakno < 4; breakno++) {
412 if (dr6 & (1 << breakno) &&
413 breakinfo[breakno].type == 0) {
414 /* Set restore flag: */
415 linux_regs->flags |= X86_EFLAGS_RF;
416 break;
417 }
418 }
419 }
420 set_debugreg(0UL, 6);
421 kgdb_correct_hw_break(); 488 kgdb_correct_hw_break();
422 489
423 return 0; 490 return 0;
@@ -485,8 +552,7 @@ static int __kgdb_notify(struct die_args *args, unsigned long cmd)
485 break; 552 break;
486 553
487 case DIE_DEBUG: 554 case DIE_DEBUG:
488 if (atomic_read(&kgdb_cpu_doing_single_step) == 555 if (atomic_read(&kgdb_cpu_doing_single_step) != -1) {
489 raw_smp_processor_id()) {
490 if (user_mode(regs)) 556 if (user_mode(regs))
491 return single_step_cont(regs, args); 557 return single_step_cont(regs, args);
492 break; 558 break;
@@ -539,7 +605,42 @@ static struct notifier_block kgdb_notifier = {
539 */ 605 */
540int kgdb_arch_init(void) 606int kgdb_arch_init(void)
541{ 607{
542 return register_die_notifier(&kgdb_notifier); 608 int i, cpu;
609 int ret;
610 struct perf_event_attr attr;
611 struct perf_event **pevent;
612
613 ret = register_die_notifier(&kgdb_notifier);
614 if (ret != 0)
615 return ret;
616 /*
617 * Pre-allocate the hw breakpoint structions in the non-atomic
618 * portion of kgdb because this operation requires mutexs to
619 * complete.
620 */
621 attr.bp_addr = (unsigned long)kgdb_arch_init;
622 attr.type = PERF_TYPE_BREAKPOINT;
623 attr.bp_len = HW_BREAKPOINT_LEN_1;
624 attr.bp_type = HW_BREAKPOINT_W;
625 attr.disabled = 1;
626 for (i = 0; i < 4; i++) {
627 breakinfo[i].pev = register_wide_hw_breakpoint(&attr, NULL);
628 if (IS_ERR(breakinfo[i].pev)) {
629 printk(KERN_ERR "kgdb: Could not allocate hw breakpoints\n");
630 breakinfo[i].pev = NULL;
631 kgdb_arch_exit();
632 return -1;
633 }
634 for_each_online_cpu(cpu) {
635 pevent = per_cpu_ptr(breakinfo[i].pev, cpu);
636 pevent[0]->hw.sample_period = 1;
637 if (pevent[0]->destroy != NULL) {
638 pevent[0]->destroy = NULL;
639 release_bp_slot(*pevent);
640 }
641 }
642 }
643 return ret;
543} 644}
544 645
545/** 646/**
@@ -550,6 +651,13 @@ int kgdb_arch_init(void)
550 */ 651 */
551void kgdb_arch_exit(void) 652void kgdb_arch_exit(void)
552{ 653{
654 int i;
655 for (i = 0; i < 4; i++) {
656 if (breakinfo[i].pev) {
657 unregister_wide_hw_breakpoint(breakinfo[i].pev);
658 breakinfo[i].pev = NULL;
659 }
660 }
553 unregister_die_notifier(&kgdb_notifier); 661 unregister_die_notifier(&kgdb_notifier);
554} 662}
555 663
diff --git a/arch/x86/kernel/microcode_amd.c b/arch/x86/kernel/microcode_amd.c
index 37542b67c57e..e1af7c055c7d 100644
--- a/arch/x86/kernel/microcode_amd.c
+++ b/arch/x86/kernel/microcode_amd.c
@@ -36,9 +36,6 @@ MODULE_LICENSE("GPL v2");
36#define UCODE_EQUIV_CPU_TABLE_TYPE 0x00000000 36#define UCODE_EQUIV_CPU_TABLE_TYPE 0x00000000
37#define UCODE_UCODE_TYPE 0x00000001 37#define UCODE_UCODE_TYPE 0x00000001
38 38
39const struct firmware *firmware;
40static int supported_cpu;
41
42struct equiv_cpu_entry { 39struct equiv_cpu_entry {
43 u32 installed_cpu; 40 u32 installed_cpu;
44 u32 fixed_errata_mask; 41 u32 fixed_errata_mask;
@@ -77,12 +74,15 @@ static struct equiv_cpu_entry *equiv_cpu_table;
77 74
78static int collect_cpu_info_amd(int cpu, struct cpu_signature *csig) 75static int collect_cpu_info_amd(int cpu, struct cpu_signature *csig)
79{ 76{
77 struct cpuinfo_x86 *c = &cpu_data(cpu);
80 u32 dummy; 78 u32 dummy;
81 79
82 if (!supported_cpu)
83 return -1;
84
85 memset(csig, 0, sizeof(*csig)); 80 memset(csig, 0, sizeof(*csig));
81 if (c->x86_vendor != X86_VENDOR_AMD || c->x86 < 0x10) {
82 pr_warning("microcode: CPU%d: AMD CPU family 0x%x not "
83 "supported\n", cpu, c->x86);
84 return -1;
85 }
86 rdmsr(MSR_AMD64_PATCH_LEVEL, csig->rev, dummy); 86 rdmsr(MSR_AMD64_PATCH_LEVEL, csig->rev, dummy);
87 pr_info("CPU%d: patch_level=0x%x\n", cpu, csig->rev); 87 pr_info("CPU%d: patch_level=0x%x\n", cpu, csig->rev);
88 return 0; 88 return 0;
@@ -294,10 +294,14 @@ generic_load_microcode(int cpu, const u8 *data, size_t size)
294 294
295static enum ucode_state request_microcode_fw(int cpu, struct device *device) 295static enum ucode_state request_microcode_fw(int cpu, struct device *device)
296{ 296{
297 const char *fw_name = "amd-ucode/microcode_amd.bin";
298 const struct firmware *firmware;
297 enum ucode_state ret; 299 enum ucode_state ret;
298 300
299 if (firmware == NULL) 301 if (request_firmware(&firmware, fw_name, device)) {
302 printk(KERN_ERR "microcode: failed to load file %s\n", fw_name);
300 return UCODE_NFOUND; 303 return UCODE_NFOUND;
304 }
301 305
302 if (*(u32 *)firmware->data != UCODE_MAGIC) { 306 if (*(u32 *)firmware->data != UCODE_MAGIC) {
303 pr_err("invalid UCODE_MAGIC (0x%08x)\n", 307 pr_err("invalid UCODE_MAGIC (0x%08x)\n",
@@ -307,6 +311,8 @@ static enum ucode_state request_microcode_fw(int cpu, struct device *device)
307 311
308 ret = generic_load_microcode(cpu, firmware->data, firmware->size); 312 ret = generic_load_microcode(cpu, firmware->data, firmware->size);
309 313
314 release_firmware(firmware);
315
310 return ret; 316 return ret;
311} 317}
312 318
@@ -325,31 +331,7 @@ static void microcode_fini_cpu_amd(int cpu)
325 uci->mc = NULL; 331 uci->mc = NULL;
326} 332}
327 333
328void init_microcode_amd(struct device *device)
329{
330 const char *fw_name = "amd-ucode/microcode_amd.bin";
331 struct cpuinfo_x86 *c = &boot_cpu_data;
332
333 WARN_ON(c->x86_vendor != X86_VENDOR_AMD);
334
335 if (c->x86 < 0x10) {
336 pr_warning("AMD CPU family 0x%x not supported\n", c->x86);
337 return;
338 }
339 supported_cpu = 1;
340
341 if (request_firmware(&firmware, fw_name, device))
342 pr_err("failed to load file %s\n", fw_name);
343}
344
345void fini_microcode_amd(void)
346{
347 release_firmware(firmware);
348}
349
350static struct microcode_ops microcode_amd_ops = { 334static struct microcode_ops microcode_amd_ops = {
351 .init = init_microcode_amd,
352 .fini = fini_microcode_amd,
353 .request_microcode_user = request_microcode_user, 335 .request_microcode_user = request_microcode_user,
354 .request_microcode_fw = request_microcode_fw, 336 .request_microcode_fw = request_microcode_fw,
355 .collect_cpu_info = collect_cpu_info_amd, 337 .collect_cpu_info = collect_cpu_info_amd,
diff --git a/arch/x86/kernel/microcode_core.c b/arch/x86/kernel/microcode_core.c
index 0c8632433090..cceb5bc3c3c2 100644
--- a/arch/x86/kernel/microcode_core.c
+++ b/arch/x86/kernel/microcode_core.c
@@ -521,9 +521,6 @@ static int __init microcode_init(void)
521 return PTR_ERR(microcode_pdev); 521 return PTR_ERR(microcode_pdev);
522 } 522 }
523 523
524 if (microcode_ops->init)
525 microcode_ops->init(&microcode_pdev->dev);
526
527 get_online_cpus(); 524 get_online_cpus();
528 mutex_lock(&microcode_mutex); 525 mutex_lock(&microcode_mutex);
529 526
@@ -566,9 +563,6 @@ static void __exit microcode_exit(void)
566 563
567 platform_device_unregister(microcode_pdev); 564 platform_device_unregister(microcode_pdev);
568 565
569 if (microcode_ops->fini)
570 microcode_ops->fini();
571
572 microcode_ops = NULL; 566 microcode_ops = NULL;
573 567
574 pr_info("Microcode Update Driver: v" MICROCODE_VERSION " removed.\n"); 568 pr_info("Microcode Update Driver: v" MICROCODE_VERSION " removed.\n");
diff --git a/arch/x86/kernel/msr.c b/arch/x86/kernel/msr.c
index 4bd93c9b2b27..206735ac8cbd 100644
--- a/arch/x86/kernel/msr.c
+++ b/arch/x86/kernel/msr.c
@@ -285,7 +285,7 @@ static void __exit msr_exit(void)
285 for_each_online_cpu(cpu) 285 for_each_online_cpu(cpu)
286 msr_device_destroy(cpu); 286 msr_device_destroy(cpu);
287 class_destroy(msr_class); 287 class_destroy(msr_class);
288 unregister_chrdev(MSR_MAJOR, "cpu/msr"); 288 __unregister_chrdev(MSR_MAJOR, 0, NR_CPUS, "cpu/msr");
289 unregister_hotcpu_notifier(&msr_class_cpu_notifier); 289 unregister_hotcpu_notifier(&msr_class_cpu_notifier);
290} 290}
291 291
diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c
index 02c3ee013ccd..c9b3522b6b46 100644
--- a/arch/x86/kernel/process.c
+++ b/arch/x86/kernel/process.c
@@ -115,18 +115,6 @@ void flush_thread(void)
115{ 115{
116 struct task_struct *tsk = current; 116 struct task_struct *tsk = current;
117 117
118#ifdef CONFIG_X86_64
119 if (test_tsk_thread_flag(tsk, TIF_ABI_PENDING)) {
120 clear_tsk_thread_flag(tsk, TIF_ABI_PENDING);
121 if (test_tsk_thread_flag(tsk, TIF_IA32)) {
122 clear_tsk_thread_flag(tsk, TIF_IA32);
123 } else {
124 set_tsk_thread_flag(tsk, TIF_IA32);
125 current_thread_info()->status |= TS_COMPAT;
126 }
127 }
128#endif
129
130 flush_ptrace_hw_breakpoint(tsk); 118 flush_ptrace_hw_breakpoint(tsk);
131 memset(tsk->thread.tls_array, 0, sizeof(tsk->thread.tls_array)); 119 memset(tsk->thread.tls_array, 0, sizeof(tsk->thread.tls_array));
132 /* 120 /*
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index f9e033150cdf..41a26a82470a 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -521,6 +521,17 @@ void set_personality_64bit(void)
521 current->personality &= ~READ_IMPLIES_EXEC; 521 current->personality &= ~READ_IMPLIES_EXEC;
522} 522}
523 523
524void set_personality_ia32(void)
525{
526 /* inherit personality from parent */
527
528 /* Make sure to be in 32bit mode */
529 set_thread_flag(TIF_IA32);
530
531 /* Prepare the first "return" to user space */
532 current_thread_info()->status |= TS_COMPAT;
533}
534
524unsigned long get_wchan(struct task_struct *p) 535unsigned long get_wchan(struct task_struct *p)
525{ 536{
526 unsigned long stack; 537 unsigned long stack;
diff --git a/arch/x86/kernel/quirks.c b/arch/x86/kernel/quirks.c
index 18093d7498f0..12e9feaa2f7a 100644
--- a/arch/x86/kernel/quirks.c
+++ b/arch/x86/kernel/quirks.c
@@ -491,6 +491,19 @@ void force_hpet_resume(void)
491 break; 491 break;
492 } 492 }
493} 493}
494
495/*
496 * HPET MSI on some boards (ATI SB700/SB800) has side effect on
497 * floppy DMA. Disable HPET MSI on such platforms.
498 */
499static void force_disable_hpet_msi(struct pci_dev *unused)
500{
501 hpet_msi_disable = 1;
502}
503
504DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SBX00_SMBUS,
505 force_disable_hpet_msi);
506
494#endif 507#endif
495 508
496#if defined(CONFIG_PCI) && defined(CONFIG_NUMA) 509#if defined(CONFIG_PCI) && defined(CONFIG_NUMA)
diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c
index 1545bc0c9845..704bddcdf64d 100644
--- a/arch/x86/kernel/reboot.c
+++ b/arch/x86/kernel/reboot.c
@@ -203,6 +203,15 @@ static struct dmi_system_id __initdata reboot_dmi_table[] = {
203 DMI_MATCH(DMI_BOARD_NAME, "0T656F"), 203 DMI_MATCH(DMI_BOARD_NAME, "0T656F"),
204 }, 204 },
205 }, 205 },
206 { /* Handle problems with rebooting on Dell OptiPlex 760 with 0G919G*/
207 .callback = set_bios_reboot,
208 .ident = "Dell OptiPlex 760",
209 .matches = {
210 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
211 DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 760"),
212 DMI_MATCH(DMI_BOARD_NAME, "0G919G"),
213 },
214 },
206 { /* Handle problems with rebooting on Dell 2400's */ 215 { /* Handle problems with rebooting on Dell 2400's */
207 .callback = set_bios_reboot, 216 .callback = set_bios_reboot,
208 .ident = "Dell PowerEdge 2400", 217 .ident = "Dell PowerEdge 2400",
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index f7b8b9894b22..5d9e40c58628 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -642,19 +642,27 @@ static struct dmi_system_id __initdata bad_bios_dmi_table[] = {
642 DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix/MSC"), 642 DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix/MSC"),
643 }, 643 },
644 }, 644 },
645 {
646 /* 645 /*
647 * AMI BIOS with low memory corruption was found on Intel DG45ID board. 646 * AMI BIOS with low memory corruption was found on Intel DG45ID and
648 * It hase different DMI_BIOS_VENDOR = "Intel Corp.", for now we will 647 * DG45FC boards.
648 * It has a different DMI_BIOS_VENDOR = "Intel Corp.", for now we will
649 * match only DMI_BOARD_NAME and see if there is more bad products 649 * match only DMI_BOARD_NAME and see if there is more bad products
650 * with this vendor. 650 * with this vendor.
651 */ 651 */
652 {
652 .callback = dmi_low_memory_corruption, 653 .callback = dmi_low_memory_corruption,
653 .ident = "AMI BIOS", 654 .ident = "AMI BIOS",
654 .matches = { 655 .matches = {
655 DMI_MATCH(DMI_BOARD_NAME, "DG45ID"), 656 DMI_MATCH(DMI_BOARD_NAME, "DG45ID"),
656 }, 657 },
657 }, 658 },
659 {
660 .callback = dmi_low_memory_corruption,
661 .ident = "AMI BIOS",
662 .matches = {
663 DMI_MATCH(DMI_BOARD_NAME, "DG45FC"),
664 },
665 },
658#endif 666#endif
659 {} 667 {}
660}; 668};
diff --git a/arch/x86/kernel/uv_time.c b/arch/x86/kernel/uv_time.c
index 3c84aa001c11..2b75ef638dbc 100644
--- a/arch/x86/kernel/uv_time.c
+++ b/arch/x86/kernel/uv_time.c
@@ -282,10 +282,21 @@ static int uv_rtc_unset_timer(int cpu, int force)
282 282
283/* 283/*
284 * Read the RTC. 284 * Read the RTC.
285 *
286 * Starting with HUB rev 2.0, the UV RTC register is replicated across all
287 * cachelines of it's own page. This allows faster simultaneous reads
288 * from a given socket.
285 */ 289 */
286static cycle_t uv_read_rtc(struct clocksource *cs) 290static cycle_t uv_read_rtc(struct clocksource *cs)
287{ 291{
288 return (cycle_t)uv_read_local_mmr(UVH_RTC); 292 unsigned long offset;
293
294 if (uv_get_min_hub_revision_id() == 1)
295 offset = 0;
296 else
297 offset = (uv_blade_processor_id() * L1_CACHE_BYTES) % PAGE_SIZE;
298
299 return (cycle_t)uv_read_local_mmr(UVH_RTC | offset);
289} 300}
290 301
291/* 302/*
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
index 3063a0c4858b..ba8c045da782 100644
--- a/arch/x86/kvm/lapic.c
+++ b/arch/x86/kvm/lapic.c
@@ -373,6 +373,12 @@ static int __apic_accept_irq(struct kvm_lapic *apic, int delivery_mode,
373 if (unlikely(!apic_enabled(apic))) 373 if (unlikely(!apic_enabled(apic)))
374 break; 374 break;
375 375
376 if (trig_mode) {
377 apic_debug("level trig mode for vector %d", vector);
378 apic_set_vector(vector, apic->regs + APIC_TMR);
379 } else
380 apic_clear_vector(vector, apic->regs + APIC_TMR);
381
376 result = !apic_test_and_set_irr(vector, apic); 382 result = !apic_test_and_set_irr(vector, apic);
377 trace_kvm_apic_accept_irq(vcpu->vcpu_id, delivery_mode, 383 trace_kvm_apic_accept_irq(vcpu->vcpu_id, delivery_mode,
378 trig_mode, vector, !result); 384 trig_mode, vector, !result);
@@ -383,11 +389,6 @@ static int __apic_accept_irq(struct kvm_lapic *apic, int delivery_mode,
383 break; 389 break;
384 } 390 }
385 391
386 if (trig_mode) {
387 apic_debug("level trig mode for vector %d", vector);
388 apic_set_vector(vector, apic->regs + APIC_TMR);
389 } else
390 apic_clear_vector(vector, apic->regs + APIC_TMR);
391 kvm_vcpu_kick(vcpu); 392 kvm_vcpu_kick(vcpu);
392 break; 393 break;
393 394
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index 4c3e5b2314cb..89a49fb46a27 100644
--- a/arch/x86/kvm/mmu.c
+++ b/arch/x86/kvm/mmu.c
@@ -477,7 +477,7 @@ static int host_mapping_level(struct kvm *kvm, gfn_t gfn)
477 477
478 addr = gfn_to_hva(kvm, gfn); 478 addr = gfn_to_hva(kvm, gfn);
479 if (kvm_is_error_hva(addr)) 479 if (kvm_is_error_hva(addr))
480 return page_size; 480 return PT_PAGE_TABLE_LEVEL;
481 481
482 down_read(&current->mm->mmap_sem); 482 down_read(&current->mm->mmap_sem);
483 vma = find_vma(current->mm, addr); 483 vma = find_vma(current->mm, addr);
@@ -515,11 +515,9 @@ static int mapping_level(struct kvm_vcpu *vcpu, gfn_t large_gfn)
515 if (host_level == PT_PAGE_TABLE_LEVEL) 515 if (host_level == PT_PAGE_TABLE_LEVEL)
516 return host_level; 516 return host_level;
517 517
518 for (level = PT_DIRECTORY_LEVEL; level <= host_level; ++level) { 518 for (level = PT_DIRECTORY_LEVEL; level <= host_level; ++level)
519
520 if (has_wrprotected_page(vcpu->kvm, large_gfn, level)) 519 if (has_wrprotected_page(vcpu->kvm, large_gfn, level))
521 break; 520 break;
522 }
523 521
524 return level - 1; 522 return level - 1;
525} 523}
diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h
index 58a0f1e88596..ede2131a9225 100644
--- a/arch/x86/kvm/paging_tmpl.h
+++ b/arch/x86/kvm/paging_tmpl.h
@@ -150,7 +150,9 @@ walk:
150 walker->table_gfn[walker->level - 1] = table_gfn; 150 walker->table_gfn[walker->level - 1] = table_gfn;
151 walker->pte_gpa[walker->level - 1] = pte_gpa; 151 walker->pte_gpa[walker->level - 1] = pte_gpa;
152 152
153 kvm_read_guest(vcpu->kvm, pte_gpa, &pte, sizeof(pte)); 153 if (kvm_read_guest(vcpu->kvm, pte_gpa, &pte, sizeof(pte)))
154 goto not_present;
155
154 trace_kvm_mmu_paging_element(pte, walker->level); 156 trace_kvm_mmu_paging_element(pte, walker->level);
155 157
156 if (!is_present_gpte(pte)) 158 if (!is_present_gpte(pte))
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 6651dbf58675..1ddcad452add 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -5072,12 +5072,13 @@ int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
5072 GFP_KERNEL); 5072 GFP_KERNEL);
5073 if (!vcpu->arch.mce_banks) { 5073 if (!vcpu->arch.mce_banks) {
5074 r = -ENOMEM; 5074 r = -ENOMEM;
5075 goto fail_mmu_destroy; 5075 goto fail_free_lapic;
5076 } 5076 }
5077 vcpu->arch.mcg_cap = KVM_MAX_MCE_BANKS; 5077 vcpu->arch.mcg_cap = KVM_MAX_MCE_BANKS;
5078 5078
5079 return 0; 5079 return 0;
5080 5080fail_free_lapic:
5081 kvm_free_lapic(vcpu);
5081fail_mmu_destroy: 5082fail_mmu_destroy:
5082 kvm_mmu_destroy(vcpu); 5083 kvm_mmu_destroy(vcpu);
5083fail_free_pio_data: 5084fail_free_pio_data:
@@ -5088,6 +5089,7 @@ fail:
5088 5089
5089void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu) 5090void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
5090{ 5091{
5092 kfree(vcpu->arch.mce_banks);
5091 kvm_free_lapic(vcpu); 5093 kvm_free_lapic(vcpu);
5092 down_read(&vcpu->kvm->slots_lock); 5094 down_read(&vcpu->kvm->slots_lock);
5093 kvm_mmu_destroy(vcpu); 5095 kvm_mmu_destroy(vcpu);
diff --git a/arch/x86/mm/kmmio.c b/arch/x86/mm/kmmio.c
index c0f6198565eb..536fb6823366 100644
--- a/arch/x86/mm/kmmio.c
+++ b/arch/x86/mm/kmmio.c
@@ -538,14 +538,15 @@ static int
538kmmio_die_notifier(struct notifier_block *nb, unsigned long val, void *args) 538kmmio_die_notifier(struct notifier_block *nb, unsigned long val, void *args)
539{ 539{
540 struct die_args *arg = args; 540 struct die_args *arg = args;
541 unsigned long* dr6_p = (unsigned long *)ERR_PTR(arg->err);
541 542
542 if (val == DIE_DEBUG && (arg->err & DR_STEP)) 543 if (val == DIE_DEBUG && (*dr6_p & DR_STEP))
543 if (post_kmmio_handler(arg->err, arg->regs) == 1) { 544 if (post_kmmio_handler(*dr6_p, arg->regs) == 1) {
544 /* 545 /*
545 * Reset the BS bit in dr6 (pointed by args->err) to 546 * Reset the BS bit in dr6 (pointed by args->err) to
546 * denote completion of processing 547 * denote completion of processing
547 */ 548 */
548 (*(unsigned long *)ERR_PTR(arg->err)) &= ~DR_STEP; 549 *dr6_p &= ~DR_STEP;
549 return NOTIFY_STOP; 550 return NOTIFY_STOP;
550 } 551 }
551 552
diff --git a/arch/x86/mm/srat_64.c b/arch/x86/mm/srat_64.c
index a27124185fc1..28c68762648f 100644
--- a/arch/x86/mm/srat_64.c
+++ b/arch/x86/mm/srat_64.c
@@ -229,9 +229,11 @@ update_nodes_add(int node, unsigned long start, unsigned long end)
229 printk(KERN_ERR "SRAT: Hotplug zone not continuous. Partly ignored\n"); 229 printk(KERN_ERR "SRAT: Hotplug zone not continuous. Partly ignored\n");
230 } 230 }
231 231
232 if (changed) 232 if (changed) {
233 node_set(node, cpu_nodes_parsed);
233 printk(KERN_INFO "SRAT: hot plug zone found %Lx - %Lx\n", 234 printk(KERN_INFO "SRAT: hot plug zone found %Lx - %Lx\n",
234 nd->start, nd->end); 235 nd->start, nd->end);
236 }
235} 237}
236 238
237/* Callback for parsing of the Proximity Domain <-> Memory Area mappings */ 239/* Callback for parsing of the Proximity Domain <-> Memory Area mappings */
diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c
index cb88b1a0bd5f..3347f696edc7 100644
--- a/arch/x86/oprofile/nmi_int.c
+++ b/arch/x86/oprofile/nmi_int.c
@@ -222,7 +222,7 @@ static void nmi_cpu_switch(void *dummy)
222 222
223 /* move to next set */ 223 /* move to next set */
224 si += model->num_counters; 224 si += model->num_counters;
225 if ((si > model->num_virt_counters) || (counter_config[si].count == 0)) 225 if ((si >= model->num_virt_counters) || (counter_config[si].count == 0))
226 per_cpu(switch_index, cpu) = 0; 226 per_cpu(switch_index, cpu) = 0;
227 else 227 else
228 per_cpu(switch_index, cpu) = si; 228 per_cpu(switch_index, cpu) = si;
@@ -598,6 +598,7 @@ static int __init ppro_init(char **cpu_type)
598 case 15: case 23: 598 case 15: case 23:
599 *cpu_type = "i386/core_2"; 599 *cpu_type = "i386/core_2";
600 break; 600 break;
601 case 0x2e:
601 case 26: 602 case 26:
602 spec = &op_arch_perfmon_spec; 603 spec = &op_arch_perfmon_spec;
603 *cpu_type = "i386/core_i7"; 604 *cpu_type = "i386/core_i7";
diff --git a/arch/x86/pci/Makefile b/arch/x86/pci/Makefile
index 564b008a51c7..39fba37f702f 100644
--- a/arch/x86/pci/Makefile
+++ b/arch/x86/pci/Makefile
@@ -15,7 +15,7 @@ obj-$(CONFIG_X86_NUMAQ) += numaq_32.o
15 15
16obj-y += common.o early.o 16obj-y += common.o early.o
17obj-y += amd_bus.o 17obj-y += amd_bus.o
18obj-$(CONFIG_X86_64) += bus_numa.o intel_bus.o 18obj-$(CONFIG_X86_64) += bus_numa.o
19 19
20ifeq ($(CONFIG_PCI_DEBUG),y) 20ifeq ($(CONFIG_PCI_DEBUG),y)
21EXTRA_CFLAGS += -DDEBUG 21EXTRA_CFLAGS += -DDEBUG
diff --git a/arch/x86/pci/intel_bus.c b/arch/x86/pci/intel_bus.c
deleted file mode 100644
index f81a2fa8fe25..000000000000
--- a/arch/x86/pci/intel_bus.c
+++ /dev/null
@@ -1,94 +0,0 @@
1/*
2 * to read io range from IOH pci conf, need to do it after mmconfig is there
3 */
4
5#include <linux/delay.h>
6#include <linux/dmi.h>
7#include <linux/pci.h>
8#include <linux/init.h>
9#include <asm/pci_x86.h>
10
11#include "bus_numa.h"
12
13static inline void print_ioh_resources(struct pci_root_info *info)
14{
15 int res_num;
16 int busnum;
17 int i;
18
19 printk(KERN_DEBUG "IOH bus: [%02x, %02x]\n",
20 info->bus_min, info->bus_max);
21 res_num = info->res_num;
22 busnum = info->bus_min;
23 for (i = 0; i < res_num; i++) {
24 struct resource *res;
25
26 res = &info->res[i];
27 printk(KERN_DEBUG "IOH bus: %02x index %x %s: [%llx, %llx]\n",
28 busnum, i,
29 (res->flags & IORESOURCE_IO) ? "io port" :
30 "mmio",
31 res->start, res->end);
32 }
33}
34
35#define IOH_LIO 0x108
36#define IOH_LMMIOL 0x10c
37#define IOH_LMMIOH 0x110
38#define IOH_LMMIOH_BASEU 0x114
39#define IOH_LMMIOH_LIMITU 0x118
40#define IOH_LCFGBUS 0x11c
41
42static void __devinit pci_root_bus_res(struct pci_dev *dev)
43{
44 u16 word;
45 u32 dword;
46 struct pci_root_info *info;
47 u16 io_base, io_end;
48 u32 mmiol_base, mmiol_end;
49 u64 mmioh_base, mmioh_end;
50 int bus_base, bus_end;
51
52 /* some sys doesn't get mmconf enabled */
53 if (dev->cfg_size < 0x120)
54 return;
55
56 if (pci_root_num >= PCI_ROOT_NR) {
57 printk(KERN_DEBUG "intel_bus.c: PCI_ROOT_NR is too small\n");
58 return;
59 }
60
61 info = &pci_root_info[pci_root_num];
62 pci_root_num++;
63
64 pci_read_config_word(dev, IOH_LCFGBUS, &word);
65 bus_base = (word & 0xff);
66 bus_end = (word & 0xff00) >> 8;
67 sprintf(info->name, "PCI Bus #%02x", bus_base);
68 info->bus_min = bus_base;
69 info->bus_max = bus_end;
70
71 pci_read_config_word(dev, IOH_LIO, &word);
72 io_base = (word & 0xf0) << (12 - 4);
73 io_end = (word & 0xf000) | 0xfff;
74 update_res(info, io_base, io_end, IORESOURCE_IO, 0);
75
76 pci_read_config_dword(dev, IOH_LMMIOL, &dword);
77 mmiol_base = (dword & 0xff00) << (24 - 8);
78 mmiol_end = (dword & 0xff000000) | 0xffffff;
79 update_res(info, mmiol_base, mmiol_end, IORESOURCE_MEM, 0);
80
81 pci_read_config_dword(dev, IOH_LMMIOH, &dword);
82 mmioh_base = ((u64)(dword & 0xfc00)) << (26 - 10);
83 mmioh_end = ((u64)(dword & 0xfc000000) | 0x3ffffff);
84 pci_read_config_dword(dev, IOH_LMMIOH_BASEU, &dword);
85 mmioh_base |= ((u64)(dword & 0x7ffff)) << 32;
86 pci_read_config_dword(dev, IOH_LMMIOH_LIMITU, &dword);
87 mmioh_end |= ((u64)(dword & 0x7ffff)) << 32;
88 update_res(info, mmioh_base, mmioh_end, IORESOURCE_MEM, 0);
89
90 print_ioh_resources(info);
91}
92
93/* intel IOH */
94DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x342e, pci_root_bus_res);
diff --git a/block/blk-ioc.c b/block/blk-ioc.c
index cbdabb0dd6d7..98e6bf61b0ac 100644
--- a/block/blk-ioc.c
+++ b/block/blk-ioc.c
@@ -39,8 +39,6 @@ int put_io_context(struct io_context *ioc)
39 39
40 if (atomic_long_dec_and_test(&ioc->refcount)) { 40 if (atomic_long_dec_and_test(&ioc->refcount)) {
41 rcu_read_lock(); 41 rcu_read_lock();
42 if (ioc->aic && ioc->aic->dtor)
43 ioc->aic->dtor(ioc->aic);
44 cfq_dtor(ioc); 42 cfq_dtor(ioc);
45 rcu_read_unlock(); 43 rcu_read_unlock();
46 44
@@ -76,8 +74,6 @@ void exit_io_context(struct task_struct *task)
76 task_unlock(task); 74 task_unlock(task);
77 75
78 if (atomic_dec_and_test(&ioc->nr_tasks)) { 76 if (atomic_dec_and_test(&ioc->nr_tasks)) {
79 if (ioc->aic && ioc->aic->exit)
80 ioc->aic->exit(ioc->aic);
81 cfq_exit(ioc); 77 cfq_exit(ioc);
82 78
83 } 79 }
@@ -97,7 +93,6 @@ struct io_context *alloc_io_context(gfp_t gfp_flags, int node)
97 ret->ioprio = 0; 93 ret->ioprio = 0;
98 ret->last_waited = jiffies; /* doesn't matter... */ 94 ret->last_waited = jiffies; /* doesn't matter... */
99 ret->nr_batch_requests = 0; /* because this is 0 */ 95 ret->nr_batch_requests = 0; /* because this is 0 */
100 ret->aic = NULL;
101 INIT_RADIX_TREE(&ret->radix_root, GFP_ATOMIC | __GFP_HIGH); 96 INIT_RADIX_TREE(&ret->radix_root, GFP_ATOMIC | __GFP_HIGH);
102 INIT_HLIST_HEAD(&ret->cic_list); 97 INIT_HLIST_HEAD(&ret->cic_list);
103 ret->ioc_data = NULL; 98 ret->ioc_data = NULL;
diff --git a/block/blk-settings.c b/block/blk-settings.c
index d52d4adc440b..5eeb9e0d256e 100644
--- a/block/blk-settings.c
+++ b/block/blk-settings.c
@@ -528,7 +528,7 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
528 sector_t offset) 528 sector_t offset)
529{ 529{
530 sector_t alignment; 530 sector_t alignment;
531 unsigned int top, bottom; 531 unsigned int top, bottom, ret = 0;
532 532
533 t->max_sectors = min_not_zero(t->max_sectors, b->max_sectors); 533 t->max_sectors = min_not_zero(t->max_sectors, b->max_sectors);
534 t->max_hw_sectors = min_not_zero(t->max_hw_sectors, b->max_hw_sectors); 534 t->max_hw_sectors = min_not_zero(t->max_hw_sectors, b->max_hw_sectors);
@@ -546,6 +546,8 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
546 t->max_segment_size = min_not_zero(t->max_segment_size, 546 t->max_segment_size = min_not_zero(t->max_segment_size,
547 b->max_segment_size); 547 b->max_segment_size);
548 548
549 t->misaligned |= b->misaligned;
550
549 alignment = queue_limit_alignment_offset(b, offset); 551 alignment = queue_limit_alignment_offset(b, offset);
550 552
551 /* Bottom device has different alignment. Check that it is 553 /* Bottom device has different alignment. Check that it is
@@ -558,8 +560,10 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
558 bottom = max(b->physical_block_size, b->io_min) + alignment; 560 bottom = max(b->physical_block_size, b->io_min) + alignment;
559 561
560 /* Verify that top and bottom intervals line up */ 562 /* Verify that top and bottom intervals line up */
561 if (max(top, bottom) & (min(top, bottom) - 1)) 563 if (max(top, bottom) & (min(top, bottom) - 1)) {
562 t->misaligned = 1; 564 t->misaligned = 1;
565 ret = -1;
566 }
563 } 567 }
564 568
565 t->logical_block_size = max(t->logical_block_size, 569 t->logical_block_size = max(t->logical_block_size,
@@ -578,18 +582,21 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
578 if (t->physical_block_size & (t->logical_block_size - 1)) { 582 if (t->physical_block_size & (t->logical_block_size - 1)) {
579 t->physical_block_size = t->logical_block_size; 583 t->physical_block_size = t->logical_block_size;
580 t->misaligned = 1; 584 t->misaligned = 1;
585 ret = -1;
581 } 586 }
582 587
583 /* Minimum I/O a multiple of the physical block size? */ 588 /* Minimum I/O a multiple of the physical block size? */
584 if (t->io_min & (t->physical_block_size - 1)) { 589 if (t->io_min & (t->physical_block_size - 1)) {
585 t->io_min = t->physical_block_size; 590 t->io_min = t->physical_block_size;
586 t->misaligned = 1; 591 t->misaligned = 1;
592 ret = -1;
587 } 593 }
588 594
589 /* Optimal I/O a multiple of the physical block size? */ 595 /* Optimal I/O a multiple of the physical block size? */
590 if (t->io_opt & (t->physical_block_size - 1)) { 596 if (t->io_opt & (t->physical_block_size - 1)) {
591 t->io_opt = 0; 597 t->io_opt = 0;
592 t->misaligned = 1; 598 t->misaligned = 1;
599 ret = -1;
593 } 600 }
594 601
595 /* Find lowest common alignment_offset */ 602 /* Find lowest common alignment_offset */
@@ -597,8 +604,10 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
597 & (max(t->physical_block_size, t->io_min) - 1); 604 & (max(t->physical_block_size, t->io_min) - 1);
598 605
599 /* Verify that new alignment_offset is on a logical block boundary */ 606 /* Verify that new alignment_offset is on a logical block boundary */
600 if (t->alignment_offset & (t->logical_block_size - 1)) 607 if (t->alignment_offset & (t->logical_block_size - 1)) {
601 t->misaligned = 1; 608 t->misaligned = 1;
609 ret = -1;
610 }
602 611
603 /* Discard alignment and granularity */ 612 /* Discard alignment and granularity */
604 if (b->discard_granularity) { 613 if (b->discard_granularity) {
@@ -626,11 +635,33 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
626 (t->discard_granularity - 1); 635 (t->discard_granularity - 1);
627 } 636 }
628 637
629 return t->misaligned ? -1 : 0; 638 return ret;
630} 639}
631EXPORT_SYMBOL(blk_stack_limits); 640EXPORT_SYMBOL(blk_stack_limits);
632 641
633/** 642/**
643 * bdev_stack_limits - adjust queue limits for stacked drivers
644 * @t: the stacking driver limits (top device)
645 * @bdev: the component block_device (bottom)
646 * @start: first data sector within component device
647 *
648 * Description:
649 * Merges queue limits for a top device and a block_device. Returns
650 * 0 if alignment didn't change. Returns -1 if adding the bottom
651 * device caused misalignment.
652 */
653int bdev_stack_limits(struct queue_limits *t, struct block_device *bdev,
654 sector_t start)
655{
656 struct request_queue *bq = bdev_get_queue(bdev);
657
658 start += get_start_sect(bdev);
659
660 return blk_stack_limits(t, &bq->limits, start << 9);
661}
662EXPORT_SYMBOL(bdev_stack_limits);
663
664/**
634 * disk_stack_limits - adjust queue limits for stacked drivers 665 * disk_stack_limits - adjust queue limits for stacked drivers
635 * @disk: MD/DM gendisk (top) 666 * @disk: MD/DM gendisk (top)
636 * @bdev: the underlying block device (bottom) 667 * @bdev: the underlying block device (bottom)
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
index 918c7fd9aeb1..ee130f14d1fc 100644
--- a/block/cfq-iosched.c
+++ b/block/cfq-iosched.c
@@ -3077,6 +3077,12 @@ cfq_should_preempt(struct cfq_data *cfqd, struct cfq_queue *new_cfqq,
3077 return true; 3077 return true;
3078 3078
3079 /* 3079 /*
3080 * Don't allow a non-RT request to preempt an ongoing RT cfqq timeslice.
3081 */
3082 if (cfq_class_rt(cfqq) && !cfq_class_rt(new_cfqq))
3083 return false;
3084
3085 /*
3080 * if the new request is sync, but the currently running queue is 3086 * if the new request is sync, but the currently running queue is
3081 * not, let the sync request have priority. 3087 * not, let the sync request have priority.
3082 */ 3088 */
diff --git a/block/genhd.c b/block/genhd.c
index b11a4ad7d571..d13ba76a169c 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -867,7 +867,7 @@ static ssize_t disk_discard_alignment_show(struct device *dev,
867{ 867{
868 struct gendisk *disk = dev_to_disk(dev); 868 struct gendisk *disk = dev_to_disk(dev);
869 869
870 return sprintf(buf, "%u\n", queue_discard_alignment(disk->queue)); 870 return sprintf(buf, "%d\n", queue_discard_alignment(disk->queue));
871} 871}
872 872
873static DEVICE_ATTR(range, S_IRUGO, disk_range_show, NULL); 873static DEVICE_ATTR(range, S_IRUGO, disk_range_show, NULL);
diff --git a/drivers/acpi/acpi_pad.c b/drivers/acpi/acpi_pad.c
index 97991ac6f5fc..7e52295f1ecc 100644
--- a/drivers/acpi/acpi_pad.c
+++ b/drivers/acpi/acpi_pad.c
@@ -208,7 +208,7 @@ static int power_saving_thread(void *data)
208 * the mechanism only works when all CPUs have RT task running, 208 * the mechanism only works when all CPUs have RT task running,
209 * as if one CPU hasn't RT task, RT task from other CPUs will 209 * as if one CPU hasn't RT task, RT task from other CPUs will
210 * borrow CPU time from this CPU and cause RT task use > 95% 210 * borrow CPU time from this CPU and cause RT task use > 95%
211 * CPU time. To make 'avoid staration' work, takes a nap here. 211 * CPU time. To make 'avoid starvation' work, takes a nap here.
212 */ 212 */
213 if (do_sleep) 213 if (do_sleep)
214 schedule_timeout_killable(HZ * idle_pct / 100); 214 schedule_timeout_killable(HZ * idle_pct / 100);
@@ -222,14 +222,18 @@ static struct task_struct *ps_tsks[NR_CPUS];
222static unsigned int ps_tsk_num; 222static unsigned int ps_tsk_num;
223static int create_power_saving_task(void) 223static int create_power_saving_task(void)
224{ 224{
225 int rc = -ENOMEM;
226
225 ps_tsks[ps_tsk_num] = kthread_run(power_saving_thread, 227 ps_tsks[ps_tsk_num] = kthread_run(power_saving_thread,
226 (void *)(unsigned long)ps_tsk_num, 228 (void *)(unsigned long)ps_tsk_num,
227 "power_saving/%d", ps_tsk_num); 229 "power_saving/%d", ps_tsk_num);
228 if (ps_tsks[ps_tsk_num]) { 230 rc = IS_ERR(ps_tsks[ps_tsk_num]) ? PTR_ERR(ps_tsks[ps_tsk_num]) : 0;
231 if (!rc)
229 ps_tsk_num++; 232 ps_tsk_num++;
230 return 0; 233 else
231 } 234 ps_tsks[ps_tsk_num] = NULL;
232 return -EINVAL; 235
236 return rc;
233} 237}
234 238
235static void destroy_power_saving_task(void) 239static void destroy_power_saving_task(void)
@@ -237,6 +241,7 @@ static void destroy_power_saving_task(void)
237 if (ps_tsk_num > 0) { 241 if (ps_tsk_num > 0) {
238 ps_tsk_num--; 242 ps_tsk_num--;
239 kthread_stop(ps_tsks[ps_tsk_num]); 243 kthread_stop(ps_tsks[ps_tsk_num]);
244 ps_tsks[ps_tsk_num] = NULL;
240 } 245 }
241} 246}
242 247
@@ -253,7 +258,7 @@ static void set_power_saving_task_num(unsigned int num)
253 } 258 }
254} 259}
255 260
256static int acpi_pad_idle_cpus(unsigned int num_cpus) 261static void acpi_pad_idle_cpus(unsigned int num_cpus)
257{ 262{
258 get_online_cpus(); 263 get_online_cpus();
259 264
@@ -261,7 +266,6 @@ static int acpi_pad_idle_cpus(unsigned int num_cpus)
261 set_power_saving_task_num(num_cpus); 266 set_power_saving_task_num(num_cpus);
262 267
263 put_online_cpus(); 268 put_online_cpus();
264 return 0;
265} 269}
266 270
267static uint32_t acpi_pad_idle_cpus_num(void) 271static uint32_t acpi_pad_idle_cpus_num(void)
@@ -369,19 +373,21 @@ static void acpi_pad_remove_sysfs(struct acpi_device *device)
369static int acpi_pad_pur(acpi_handle handle, int *num_cpus) 373static int acpi_pad_pur(acpi_handle handle, int *num_cpus)
370{ 374{
371 struct acpi_buffer buffer = {ACPI_ALLOCATE_BUFFER, NULL}; 375 struct acpi_buffer buffer = {ACPI_ALLOCATE_BUFFER, NULL};
372 acpi_status status;
373 union acpi_object *package; 376 union acpi_object *package;
374 int rev, num, ret = -EINVAL; 377 int rev, num, ret = -EINVAL;
375 378
376 status = acpi_evaluate_object(handle, "_PUR", NULL, &buffer); 379 if (ACPI_FAILURE(acpi_evaluate_object(handle, "_PUR", NULL, &buffer)))
377 if (ACPI_FAILURE(status)) 380 return -EINVAL;
381
382 if (!buffer.length || !buffer.pointer)
378 return -EINVAL; 383 return -EINVAL;
384
379 package = buffer.pointer; 385 package = buffer.pointer;
380 if (package->type != ACPI_TYPE_PACKAGE || package->package.count != 2) 386 if (package->type != ACPI_TYPE_PACKAGE || package->package.count != 2)
381 goto out; 387 goto out;
382 rev = package->package.elements[0].integer.value; 388 rev = package->package.elements[0].integer.value;
383 num = package->package.elements[1].integer.value; 389 num = package->package.elements[1].integer.value;
384 if (rev != 1) 390 if (rev != 1 || num < 0)
385 goto out; 391 goto out;
386 *num_cpus = num; 392 *num_cpus = num;
387 ret = 0; 393 ret = 0;
@@ -410,7 +416,7 @@ static void acpi_pad_ost(acpi_handle handle, int stat,
410 416
411static void acpi_pad_handle_notify(acpi_handle handle) 417static void acpi_pad_handle_notify(acpi_handle handle)
412{ 418{
413 int num_cpus, ret; 419 int num_cpus;
414 uint32_t idle_cpus; 420 uint32_t idle_cpus;
415 421
416 mutex_lock(&isolated_cpus_lock); 422 mutex_lock(&isolated_cpus_lock);
@@ -418,12 +424,9 @@ static void acpi_pad_handle_notify(acpi_handle handle)
418 mutex_unlock(&isolated_cpus_lock); 424 mutex_unlock(&isolated_cpus_lock);
419 return; 425 return;
420 } 426 }
421 ret = acpi_pad_idle_cpus(num_cpus); 427 acpi_pad_idle_cpus(num_cpus);
422 idle_cpus = acpi_pad_idle_cpus_num(); 428 idle_cpus = acpi_pad_idle_cpus_num();
423 if (!ret) 429 acpi_pad_ost(handle, 0, idle_cpus);
424 acpi_pad_ost(handle, 0, idle_cpus);
425 else
426 acpi_pad_ost(handle, 1, 0);
427 mutex_unlock(&isolated_cpus_lock); 430 mutex_unlock(&isolated_cpus_lock);
428} 431}
429 432
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c
index cf761b904e4a..a52126e46307 100644
--- a/drivers/acpi/bus.c
+++ b/drivers/acpi/bus.c
@@ -490,9 +490,14 @@ static void acpi_bus_osc_support(void)
490 490
491 capbuf[OSC_QUERY_TYPE] = OSC_QUERY_ENABLE; 491 capbuf[OSC_QUERY_TYPE] = OSC_QUERY_ENABLE;
492 capbuf[OSC_SUPPORT_TYPE] = OSC_SB_PR3_SUPPORT; /* _PR3 is in use */ 492 capbuf[OSC_SUPPORT_TYPE] = OSC_SB_PR3_SUPPORT; /* _PR3 is in use */
493#ifdef CONFIG_ACPI_PROCESSOR_AGGREGATOR 493#if defined(CONFIG_ACPI_PROCESSOR_AGGREGATOR) ||\
494 defined(CONFIG_ACPI_PROCESSOR_AGGREGATOR_MODULE)
494 capbuf[OSC_SUPPORT_TYPE] |= OSC_SB_PAD_SUPPORT; 495 capbuf[OSC_SUPPORT_TYPE] |= OSC_SB_PAD_SUPPORT;
495#endif 496#endif
497
498#if defined(CONFIG_ACPI_PROCESSOR) || defined(CONFIG_ACPI_PROCESSOR_MODULE)
499 capbuf[OSC_SUPPORT_TYPE] |= OSC_SB_PPC_OST_SUPPORT;
500#endif
496 if (ACPI_FAILURE(acpi_get_handle(NULL, "\\_SB", &handle))) 501 if (ACPI_FAILURE(acpi_get_handle(NULL, "\\_SB", &handle)))
497 return; 502 return;
498 if (ACPI_SUCCESS(acpi_run_osc(handle, &context))) 503 if (ACPI_SUCCESS(acpi_run_osc(handle, &context)))
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index fd1801bdee66..d6471bb6852f 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -201,14 +201,13 @@ unlock:
201 spin_unlock_irqrestore(&ec->curr_lock, flags); 201 spin_unlock_irqrestore(&ec->curr_lock, flags);
202} 202}
203 203
204static void acpi_ec_gpe_query(void *ec_cxt); 204static int acpi_ec_sync_query(struct acpi_ec *ec);
205 205
206static int ec_check_sci(struct acpi_ec *ec, u8 state) 206static int ec_check_sci_sync(struct acpi_ec *ec, u8 state)
207{ 207{
208 if (state & ACPI_EC_FLAG_SCI) { 208 if (state & ACPI_EC_FLAG_SCI) {
209 if (!test_and_set_bit(EC_FLAGS_QUERY_PENDING, &ec->flags)) 209 if (!test_and_set_bit(EC_FLAGS_QUERY_PENDING, &ec->flags))
210 return acpi_os_execute(OSL_EC_BURST_HANDLER, 210 return acpi_ec_sync_query(ec);
211 acpi_ec_gpe_query, ec);
212 } 211 }
213 return 0; 212 return 0;
214} 213}
@@ -249,11 +248,6 @@ static int acpi_ec_transaction_unlocked(struct acpi_ec *ec,
249{ 248{
250 unsigned long tmp; 249 unsigned long tmp;
251 int ret = 0; 250 int ret = 0;
252 pr_debug(PREFIX "transaction start\n");
253 /* disable GPE during transaction if storm is detected */
254 if (test_bit(EC_FLAGS_GPE_STORM, &ec->flags)) {
255 acpi_disable_gpe(NULL, ec->gpe);
256 }
257 if (EC_FLAGS_MSI) 251 if (EC_FLAGS_MSI)
258 udelay(ACPI_EC_MSI_UDELAY); 252 udelay(ACPI_EC_MSI_UDELAY);
259 /* start transaction */ 253 /* start transaction */
@@ -265,20 +259,9 @@ static int acpi_ec_transaction_unlocked(struct acpi_ec *ec,
265 clear_bit(EC_FLAGS_QUERY_PENDING, &ec->flags); 259 clear_bit(EC_FLAGS_QUERY_PENDING, &ec->flags);
266 spin_unlock_irqrestore(&ec->curr_lock, tmp); 260 spin_unlock_irqrestore(&ec->curr_lock, tmp);
267 ret = ec_poll(ec); 261 ret = ec_poll(ec);
268 pr_debug(PREFIX "transaction end\n");
269 spin_lock_irqsave(&ec->curr_lock, tmp); 262 spin_lock_irqsave(&ec->curr_lock, tmp);
270 ec->curr = NULL; 263 ec->curr = NULL;
271 spin_unlock_irqrestore(&ec->curr_lock, tmp); 264 spin_unlock_irqrestore(&ec->curr_lock, tmp);
272 if (test_bit(EC_FLAGS_GPE_STORM, &ec->flags)) {
273 /* check if we received SCI during transaction */
274 ec_check_sci(ec, acpi_ec_read_status(ec));
275 /* it is safe to enable GPE outside of transaction */
276 acpi_enable_gpe(NULL, ec->gpe);
277 } else if (t->irq_count > ACPI_EC_STORM_THRESHOLD) {
278 pr_info(PREFIX "GPE storm detected, "
279 "transactions will use polling mode\n");
280 set_bit(EC_FLAGS_GPE_STORM, &ec->flags);
281 }
282 return ret; 265 return ret;
283} 266}
284 267
@@ -321,7 +304,26 @@ static int acpi_ec_transaction(struct acpi_ec *ec, struct transaction *t)
321 status = -ETIME; 304 status = -ETIME;
322 goto end; 305 goto end;
323 } 306 }
307 pr_debug(PREFIX "transaction start\n");
308 /* disable GPE during transaction if storm is detected */
309 if (test_bit(EC_FLAGS_GPE_STORM, &ec->flags)) {
310 acpi_disable_gpe(NULL, ec->gpe);
311 }
312
324 status = acpi_ec_transaction_unlocked(ec, t); 313 status = acpi_ec_transaction_unlocked(ec, t);
314
315 /* check if we received SCI during transaction */
316 ec_check_sci_sync(ec, acpi_ec_read_status(ec));
317 if (test_bit(EC_FLAGS_GPE_STORM, &ec->flags)) {
318 msleep(1);
319 /* it is safe to enable GPE outside of transaction */
320 acpi_enable_gpe(NULL, ec->gpe);
321 } else if (t->irq_count > ACPI_EC_STORM_THRESHOLD) {
322 pr_info(PREFIX "GPE storm detected, "
323 "transactions will use polling mode\n");
324 set_bit(EC_FLAGS_GPE_STORM, &ec->flags);
325 }
326 pr_debug(PREFIX "transaction end\n");
325end: 327end:
326 if (ec->global_lock) 328 if (ec->global_lock)
327 acpi_release_global_lock(glk); 329 acpi_release_global_lock(glk);
@@ -443,7 +445,7 @@ int ec_transaction(u8 command,
443 445
444EXPORT_SYMBOL(ec_transaction); 446EXPORT_SYMBOL(ec_transaction);
445 447
446static int acpi_ec_query(struct acpi_ec *ec, u8 * data) 448static int acpi_ec_query_unlocked(struct acpi_ec *ec, u8 * data)
447{ 449{
448 int result; 450 int result;
449 u8 d; 451 u8 d;
@@ -452,20 +454,16 @@ static int acpi_ec_query(struct acpi_ec *ec, u8 * data)
452 .wlen = 0, .rlen = 1}; 454 .wlen = 0, .rlen = 1};
453 if (!ec || !data) 455 if (!ec || !data)
454 return -EINVAL; 456 return -EINVAL;
455
456 /* 457 /*
457 * Query the EC to find out which _Qxx method we need to evaluate. 458 * Query the EC to find out which _Qxx method we need to evaluate.
458 * Note that successful completion of the query causes the ACPI_EC_SCI 459 * Note that successful completion of the query causes the ACPI_EC_SCI
459 * bit to be cleared (and thus clearing the interrupt source). 460 * bit to be cleared (and thus clearing the interrupt source).
460 */ 461 */
461 462 result = acpi_ec_transaction_unlocked(ec, &t);
462 result = acpi_ec_transaction(ec, &t);
463 if (result) 463 if (result)
464 return result; 464 return result;
465
466 if (!d) 465 if (!d)
467 return -ENODATA; 466 return -ENODATA;
468
469 *data = d; 467 *data = d;
470 return 0; 468 return 0;
471} 469}
@@ -509,43 +507,79 @@ void acpi_ec_remove_query_handler(struct acpi_ec *ec, u8 query_bit)
509 507
510EXPORT_SYMBOL_GPL(acpi_ec_remove_query_handler); 508EXPORT_SYMBOL_GPL(acpi_ec_remove_query_handler);
511 509
512static void acpi_ec_gpe_query(void *ec_cxt) 510static void acpi_ec_run(void *cxt)
513{ 511{
514 struct acpi_ec *ec = ec_cxt; 512 struct acpi_ec_query_handler *handler = cxt;
515 u8 value = 0; 513 if (!handler)
516 struct acpi_ec_query_handler *handler, copy;
517
518 if (!ec || acpi_ec_query(ec, &value))
519 return; 514 return;
520 mutex_lock(&ec->lock); 515 pr_debug(PREFIX "start query execution\n");
516 if (handler->func)
517 handler->func(handler->data);
518 else if (handler->handle)
519 acpi_evaluate_object(handler->handle, NULL, NULL, NULL);
520 pr_debug(PREFIX "stop query execution\n");
521 kfree(handler);
522}
523
524static int acpi_ec_sync_query(struct acpi_ec *ec)
525{
526 u8 value = 0;
527 int status;
528 struct acpi_ec_query_handler *handler, *copy;
529 if ((status = acpi_ec_query_unlocked(ec, &value)))
530 return status;
521 list_for_each_entry(handler, &ec->list, node) { 531 list_for_each_entry(handler, &ec->list, node) {
522 if (value == handler->query_bit) { 532 if (value == handler->query_bit) {
523 /* have custom handler for this bit */ 533 /* have custom handler for this bit */
524 memcpy(&copy, handler, sizeof(copy)); 534 copy = kmalloc(sizeof(*handler), GFP_KERNEL);
525 mutex_unlock(&ec->lock); 535 if (!copy)
526 if (copy.func) { 536 return -ENOMEM;
527 copy.func(copy.data); 537 memcpy(copy, handler, sizeof(*copy));
528 } else if (copy.handle) { 538 pr_debug(PREFIX "push query execution (0x%2x) on queue\n", value);
529 acpi_evaluate_object(copy.handle, NULL, NULL, NULL); 539 return acpi_os_execute((copy->func) ?
530 } 540 OSL_NOTIFY_HANDLER : OSL_GPE_HANDLER,
531 return; 541 acpi_ec_run, copy);
532 } 542 }
533 } 543 }
544 return 0;
545}
546
547static void acpi_ec_gpe_query(void *ec_cxt)
548{
549 struct acpi_ec *ec = ec_cxt;
550 if (!ec)
551 return;
552 mutex_lock(&ec->lock);
553 acpi_ec_sync_query(ec);
534 mutex_unlock(&ec->lock); 554 mutex_unlock(&ec->lock);
535} 555}
536 556
557static void acpi_ec_gpe_query(void *ec_cxt);
558
559static int ec_check_sci(struct acpi_ec *ec, u8 state)
560{
561 if (state & ACPI_EC_FLAG_SCI) {
562 if (!test_and_set_bit(EC_FLAGS_QUERY_PENDING, &ec->flags)) {
563 pr_debug(PREFIX "push gpe query to the queue\n");
564 return acpi_os_execute(OSL_NOTIFY_HANDLER,
565 acpi_ec_gpe_query, ec);
566 }
567 }
568 return 0;
569}
570
537static u32 acpi_ec_gpe_handler(void *data) 571static u32 acpi_ec_gpe_handler(void *data)
538{ 572{
539 struct acpi_ec *ec = data; 573 struct acpi_ec *ec = data;
540 u8 status;
541 574
542 pr_debug(PREFIX "~~~> interrupt\n"); 575 pr_debug(PREFIX "~~~> interrupt\n");
543 status = acpi_ec_read_status(ec);
544 576
545 advance_transaction(ec, status); 577 advance_transaction(ec, acpi_ec_read_status(ec));
546 if (ec_transaction_done(ec) && (status & ACPI_EC_FLAG_IBF) == 0) 578 if (ec_transaction_done(ec) &&
579 (acpi_ec_read_status(ec) & ACPI_EC_FLAG_IBF) == 0) {
547 wake_up(&ec->wait); 580 wake_up(&ec->wait);
548 ec_check_sci(ec, status); 581 ec_check_sci(ec, acpi_ec_read_status(ec));
582 }
549 return ACPI_INTERRUPT_HANDLED; 583 return ACPI_INTERRUPT_HANDLED;
550} 584}
551 585
diff --git a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c
index 394ae89409c2..04b0f007c9b7 100644
--- a/drivers/acpi/pci_link.c
+++ b/drivers/acpi/pci_link.c
@@ -56,7 +56,7 @@ ACPI_MODULE_NAME("pci_link");
56static int acpi_pci_link_add(struct acpi_device *device); 56static int acpi_pci_link_add(struct acpi_device *device);
57static int acpi_pci_link_remove(struct acpi_device *device, int type); 57static int acpi_pci_link_remove(struct acpi_device *device, int type);
58 58
59static struct acpi_device_id link_device_ids[] = { 59static const struct acpi_device_id link_device_ids[] = {
60 {"PNP0C0F", 0}, 60 {"PNP0C0F", 0},
61 {"", 0}, 61 {"", 0},
62}; 62};
diff --git a/drivers/acpi/pci_root.c b/drivers/acpi/pci_root.c
index 101cce3681d1..64f55b6db73c 100644
--- a/drivers/acpi/pci_root.c
+++ b/drivers/acpi/pci_root.c
@@ -46,7 +46,7 @@ static int acpi_pci_root_add(struct acpi_device *device);
46static int acpi_pci_root_remove(struct acpi_device *device, int type); 46static int acpi_pci_root_remove(struct acpi_device *device, int type);
47static int acpi_pci_root_start(struct acpi_device *device); 47static int acpi_pci_root_start(struct acpi_device *device);
48 48
49static struct acpi_device_id root_device_ids[] = { 49static const struct acpi_device_id root_device_ids[] = {
50 {"PNP0A03", 0}, 50 {"PNP0A03", 0},
51 {"", 0}, 51 {"", 0},
52}; 52};
diff --git a/drivers/acpi/power.c b/drivers/acpi/power.c
index 22b297916519..0f30c3c1eea4 100644
--- a/drivers/acpi/power.c
+++ b/drivers/acpi/power.c
@@ -65,7 +65,7 @@ static int acpi_power_remove(struct acpi_device *device, int type);
65static int acpi_power_resume(struct acpi_device *device); 65static int acpi_power_resume(struct acpi_device *device);
66static int acpi_power_open_fs(struct inode *inode, struct file *file); 66static int acpi_power_open_fs(struct inode *inode, struct file *file);
67 67
68static struct acpi_device_id power_device_ids[] = { 68static const struct acpi_device_id power_device_ids[] = {
69 {ACPI_POWER_HID, 0}, 69 {ACPI_POWER_HID, 0},
70 {"", 0}, 70 {"", 0},
71}; 71};
diff --git a/drivers/acpi/power_meter.c b/drivers/acpi/power_meter.c
index 2ef7030a0c28..dc4ffadf8122 100644
--- a/drivers/acpi/power_meter.c
+++ b/drivers/acpi/power_meter.c
@@ -64,7 +64,7 @@ static int can_cap_in_hardware(void)
64 return force_cap_on || cap_in_hardware; 64 return force_cap_on || cap_in_hardware;
65} 65}
66 66
67static struct acpi_device_id power_meter_ids[] = { 67static const struct acpi_device_id power_meter_ids[] = {
68 {"ACPI000D", 0}, 68 {"ACPI000D", 0},
69 {"", 0}, 69 {"", 0},
70}; 70};
@@ -534,6 +534,7 @@ static void remove_domain_devices(struct acpi_power_meter_resource *resource)
534 534
535 kfree(resource->domain_devices); 535 kfree(resource->domain_devices);
536 kobject_put(resource->holders_dir); 536 kobject_put(resource->holders_dir);
537 resource->num_domain_devices = 0;
537} 538}
538 539
539static int read_domain_devices(struct acpi_power_meter_resource *resource) 540static int read_domain_devices(struct acpi_power_meter_resource *resource)
@@ -740,7 +741,6 @@ skip_unsafe_cap:
740 741
741 return res; 742 return res;
742error: 743error:
743 remove_domain_devices(resource);
744 remove_attrs(resource); 744 remove_attrs(resource);
745 return res; 745 return res;
746} 746}
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
index d1676b1754d9..7c0441f63b39 100644
--- a/drivers/acpi/processor_idle.c
+++ b/drivers/acpi/processor_idle.c
@@ -305,6 +305,28 @@ static int acpi_processor_get_power_info_fadt(struct acpi_processor *pr)
305 pr->power.states[ACPI_STATE_C2].latency = acpi_gbl_FADT.C2latency; 305 pr->power.states[ACPI_STATE_C2].latency = acpi_gbl_FADT.C2latency;
306 pr->power.states[ACPI_STATE_C3].latency = acpi_gbl_FADT.C3latency; 306 pr->power.states[ACPI_STATE_C3].latency = acpi_gbl_FADT.C3latency;
307 307
308 /*
309 * FADT specified C2 latency must be less than or equal to
310 * 100 microseconds.
311 */
312 if (acpi_gbl_FADT.C2latency > ACPI_PROCESSOR_MAX_C2_LATENCY) {
313 ACPI_DEBUG_PRINT((ACPI_DB_INFO,
314 "C2 latency too large [%d]\n", acpi_gbl_FADT.C2latency));
315 /* invalidate C2 */
316 pr->power.states[ACPI_STATE_C2].address = 0;
317 }
318
319 /*
320 * FADT supplied C3 latency must be less than or equal to
321 * 1000 microseconds.
322 */
323 if (acpi_gbl_FADT.C3latency > ACPI_PROCESSOR_MAX_C3_LATENCY) {
324 ACPI_DEBUG_PRINT((ACPI_DB_INFO,
325 "C3 latency too large [%d]\n", acpi_gbl_FADT.C3latency));
326 /* invalidate C3 */
327 pr->power.states[ACPI_STATE_C3].address = 0;
328 }
329
308 ACPI_DEBUG_PRINT((ACPI_DB_INFO, 330 ACPI_DEBUG_PRINT((ACPI_DB_INFO,
309 "lvl2[0x%08x] lvl3[0x%08x]\n", 331 "lvl2[0x%08x] lvl3[0x%08x]\n",
310 pr->power.states[ACPI_STATE_C2].address, 332 pr->power.states[ACPI_STATE_C2].address,
@@ -494,33 +516,6 @@ static int acpi_processor_get_power_info_cst(struct acpi_processor *pr)
494 return status; 516 return status;
495} 517}
496 518
497static void acpi_processor_power_verify_c2(struct acpi_processor_cx *cx)
498{
499
500 if (!cx->address)
501 return;
502
503 /*
504 * C2 latency must be less than or equal to 100
505 * microseconds.
506 */
507 else if (cx->latency > ACPI_PROCESSOR_MAX_C2_LATENCY) {
508 ACPI_DEBUG_PRINT((ACPI_DB_INFO,
509 "latency too large [%d]\n", cx->latency));
510 return;
511 }
512
513 /*
514 * Otherwise we've met all of our C2 requirements.
515 * Normalize the C2 latency to expidite policy
516 */
517 cx->valid = 1;
518
519 cx->latency_ticks = cx->latency;
520
521 return;
522}
523
524static void acpi_processor_power_verify_c3(struct acpi_processor *pr, 519static void acpi_processor_power_verify_c3(struct acpi_processor *pr,
525 struct acpi_processor_cx *cx) 520 struct acpi_processor_cx *cx)
526{ 521{
@@ -532,16 +527,6 @@ static void acpi_processor_power_verify_c3(struct acpi_processor *pr,
532 return; 527 return;
533 528
534 /* 529 /*
535 * C3 latency must be less than or equal to 1000
536 * microseconds.
537 */
538 else if (cx->latency > ACPI_PROCESSOR_MAX_C3_LATENCY) {
539 ACPI_DEBUG_PRINT((ACPI_DB_INFO,
540 "latency too large [%d]\n", cx->latency));
541 return;
542 }
543
544 /*
545 * PIIX4 Erratum #18: We don't support C3 when Type-F (fast) 530 * PIIX4 Erratum #18: We don't support C3 when Type-F (fast)
546 * DMA transfers are used by any ISA device to avoid livelock. 531 * DMA transfers are used by any ISA device to avoid livelock.
547 * Note that we could disable Type-F DMA (as recommended by 532 * Note that we could disable Type-F DMA (as recommended by
@@ -629,7 +614,10 @@ static int acpi_processor_power_verify(struct acpi_processor *pr)
629 break; 614 break;
630 615
631 case ACPI_STATE_C2: 616 case ACPI_STATE_C2:
632 acpi_processor_power_verify_c2(cx); 617 if (!cx->address)
618 break;
619 cx->valid = 1;
620 cx->latency_ticks = cx->latency; /* Normalize latency */
633 break; 621 break;
634 622
635 case ACPI_STATE_C3: 623 case ACPI_STATE_C3:
diff --git a/drivers/acpi/processor_pdc.c b/drivers/acpi/processor_pdc.c
index 30e4dc0cdf30..7247819dbd80 100644
--- a/drivers/acpi/processor_pdc.c
+++ b/drivers/acpi/processor_pdc.c
@@ -144,6 +144,29 @@ void acpi_processor_set_pdc(acpi_handle handle)
144} 144}
145EXPORT_SYMBOL_GPL(acpi_processor_set_pdc); 145EXPORT_SYMBOL_GPL(acpi_processor_set_pdc);
146 146
147static int early_pdc_optin;
148static int set_early_pdc_optin(const struct dmi_system_id *id)
149{
150 early_pdc_optin = 1;
151 return 0;
152}
153
154static struct dmi_system_id __cpuinitdata early_pdc_optin_table[] = {
155 {
156 set_early_pdc_optin, "HP Envy", {
157 DMI_MATCH(DMI_BIOS_VENDOR, "Hewlett-Packard"),
158 DMI_MATCH(DMI_PRODUCT_NAME, "HP Envy") }, NULL},
159 {
160 set_early_pdc_optin, "HP Pavilion dv6", {
161 DMI_MATCH(DMI_BIOS_VENDOR, "Hewlett-Packard"),
162 DMI_MATCH(DMI_PRODUCT_NAME, "HP Pavilion dv6") }, NULL},
163 {
164 set_early_pdc_optin, "HP Pavilion dv7", {
165 DMI_MATCH(DMI_BIOS_VENDOR, "Hewlett-Packard"),
166 DMI_MATCH(DMI_PRODUCT_NAME, "HP Pavilion dv7") }, NULL},
167 {},
168};
169
147static acpi_status 170static acpi_status
148early_init_pdc(acpi_handle handle, u32 lvl, void *context, void **rv) 171early_init_pdc(acpi_handle handle, u32 lvl, void *context, void **rv)
149{ 172{
@@ -151,7 +174,7 @@ early_init_pdc(acpi_handle handle, u32 lvl, void *context, void **rv)
151 return AE_OK; 174 return AE_OK;
152} 175}
153 176
154void acpi_early_processor_set_pdc(void) 177void __init acpi_early_processor_set_pdc(void)
155{ 178{
156 /* 179 /*
157 * Check whether the system is DMI table. If yes, OSPM 180 * Check whether the system is DMI table. If yes, OSPM
@@ -159,6 +182,13 @@ void acpi_early_processor_set_pdc(void)
159 */ 182 */
160 dmi_check_system(processor_idle_dmi_table); 183 dmi_check_system(processor_idle_dmi_table);
161 184
185 /*
186 * Allow systems to opt-in to early _PDC evaluation.
187 */
188 dmi_check_system(early_pdc_optin_table);
189 if (!early_pdc_optin)
190 return;
191
162 acpi_walk_namespace(ACPI_TYPE_PROCESSOR, ACPI_ROOT_OBJECT, 192 acpi_walk_namespace(ACPI_TYPE_PROCESSOR, ACPI_ROOT_OBJECT,
163 ACPI_UINT32_MAX, 193 ACPI_UINT32_MAX,
164 early_init_pdc, NULL, NULL, NULL); 194 early_init_pdc, NULL, NULL, NULL);
diff --git a/drivers/acpi/processor_thermal.c b/drivers/acpi/processor_thermal.c
index 140c5c5b423c..6deafb4aa0da 100644
--- a/drivers/acpi/processor_thermal.c
+++ b/drivers/acpi/processor_thermal.c
@@ -443,8 +443,7 @@ struct thermal_cooling_device_ops processor_cooling_ops = {
443#ifdef CONFIG_ACPI_PROCFS 443#ifdef CONFIG_ACPI_PROCFS
444static int acpi_processor_limit_seq_show(struct seq_file *seq, void *offset) 444static int acpi_processor_limit_seq_show(struct seq_file *seq, void *offset)
445{ 445{
446 struct acpi_processor *pr = (struct acpi_processor *)seq->private; 446 struct acpi_processor *pr = seq->private;
447
448 447
449 if (!pr) 448 if (!pr)
450 goto end; 449 goto end;
diff --git a/drivers/acpi/sbs.c b/drivers/acpi/sbs.c
index 52b9db8afc20..b16ddbf23a9c 100644
--- a/drivers/acpi/sbs.c
+++ b/drivers/acpi/sbs.c
@@ -822,7 +822,10 @@ static int acpi_battery_add(struct acpi_sbs *sbs, int id)
822 822
823static void acpi_battery_remove(struct acpi_sbs *sbs, int id) 823static void acpi_battery_remove(struct acpi_sbs *sbs, int id)
824{ 824{
825#if defined(CONFIG_ACPI_SYSFS_POWER) || defined(CONFIG_ACPI_PROCFS_POWER)
825 struct acpi_battery *battery = &sbs->battery[id]; 826 struct acpi_battery *battery = &sbs->battery[id];
827#endif
828
826#ifdef CONFIG_ACPI_SYSFS_POWER 829#ifdef CONFIG_ACPI_SYSFS_POWER
827 if (battery->bat.dev) { 830 if (battery->bat.dev) {
828 if (battery->have_sysfs_alarm) 831 if (battery->have_sysfs_alarm)
diff --git a/drivers/acpi/sbshc.c b/drivers/acpi/sbshc.c
index d9339806df45..fd09229282ea 100644
--- a/drivers/acpi/sbshc.c
+++ b/drivers/acpi/sbshc.c
@@ -242,7 +242,7 @@ static int smbus_alarm(void *context)
242 case ACPI_SBS_CHARGER: 242 case ACPI_SBS_CHARGER:
243 case ACPI_SBS_MANAGER: 243 case ACPI_SBS_MANAGER:
244 case ACPI_SBS_BATTERY: 244 case ACPI_SBS_BATTERY:
245 acpi_os_execute(OSL_GPE_HANDLER, 245 acpi_os_execute(OSL_NOTIFY_HANDLER,
246 acpi_smbus_callback, hc); 246 acpi_smbus_callback, hc);
247 default:; 247 default:;
248 } 248 }
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
index 72e76b4b6538..b765790b32be 100644
--- a/drivers/acpi/video.c
+++ b/drivers/acpi/video.c
@@ -78,6 +78,13 @@ MODULE_LICENSE("GPL");
78static int brightness_switch_enabled = 1; 78static int brightness_switch_enabled = 1;
79module_param(brightness_switch_enabled, bool, 0644); 79module_param(brightness_switch_enabled, bool, 0644);
80 80
81/*
82 * By default, we don't allow duplicate ACPI video bus devices
83 * under the same VGA controller
84 */
85static int allow_duplicates;
86module_param(allow_duplicates, bool, 0644);
87
81static int register_count = 0; 88static int register_count = 0;
82static int acpi_video_bus_add(struct acpi_device *device); 89static int acpi_video_bus_add(struct acpi_device *device);
83static int acpi_video_bus_remove(struct acpi_device *device, int type); 90static int acpi_video_bus_remove(struct acpi_device *device, int type);
@@ -2239,11 +2246,47 @@ static int acpi_video_resume(struct acpi_device *device)
2239 return AE_OK; 2246 return AE_OK;
2240} 2247}
2241 2248
2249static acpi_status
2250acpi_video_bus_match(acpi_handle handle, u32 level, void *context,
2251 void **return_value)
2252{
2253 struct acpi_device *device = context;
2254 struct acpi_device *sibling;
2255 int result;
2256
2257 if (handle == device->handle)
2258 return AE_CTRL_TERMINATE;
2259
2260 result = acpi_bus_get_device(handle, &sibling);
2261 if (result)
2262 return AE_OK;
2263
2264 if (!strcmp(acpi_device_name(sibling), ACPI_VIDEO_BUS_NAME))
2265 return AE_ALREADY_EXISTS;
2266
2267 return AE_OK;
2268}
2269
2242static int acpi_video_bus_add(struct acpi_device *device) 2270static int acpi_video_bus_add(struct acpi_device *device)
2243{ 2271{
2244 struct acpi_video_bus *video; 2272 struct acpi_video_bus *video;
2245 struct input_dev *input; 2273 struct input_dev *input;
2246 int error; 2274 int error;
2275 acpi_status status;
2276
2277 status = acpi_walk_namespace(ACPI_TYPE_DEVICE,
2278 device->parent->handle, 1,
2279 acpi_video_bus_match, NULL,
2280 device, NULL);
2281 if (status == AE_ALREADY_EXISTS) {
2282 printk(KERN_WARNING FW_BUG
2283 "Duplicate ACPI video bus devices for the"
2284 " same VGA controller, please try module "
2285 "parameter \"video.allow_duplicates=1\""
2286 "if the current driver doesn't work.\n");
2287 if (!allow_duplicates)
2288 return -ENODEV;
2289 }
2247 2290
2248 video = kzalloc(sizeof(struct acpi_video_bus), GFP_KERNEL); 2291 video = kzalloc(sizeof(struct acpi_video_bus), GFP_KERNEL);
2249 if (!video) 2292 if (!video)
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c
index 0ea97c942ced..9f6cfac0f2cc 100644
--- a/drivers/ata/libata-eh.c
+++ b/drivers/ata/libata-eh.c
@@ -2028,8 +2028,9 @@ static void ata_eh_link_autopsy(struct ata_link *link)
2028 qc->err_mask &= ~(AC_ERR_DEV | AC_ERR_OTHER); 2028 qc->err_mask &= ~(AC_ERR_DEV | AC_ERR_OTHER);
2029 2029
2030 /* determine whether the command is worth retrying */ 2030 /* determine whether the command is worth retrying */
2031 if (!(qc->err_mask & AC_ERR_INVALID) && 2031 if (qc->flags & ATA_QCFLAG_IO ||
2032 ((qc->flags & ATA_QCFLAG_IO) || qc->err_mask != AC_ERR_DEV)) 2032 (!(qc->err_mask & AC_ERR_INVALID) &&
2033 qc->err_mask != AC_ERR_DEV))
2033 qc->flags |= ATA_QCFLAG_RETRY; 2034 qc->flags |= ATA_QCFLAG_RETRY;
2034 2035
2035 /* accumulate error info */ 2036 /* accumulate error info */
diff --git a/drivers/base/devtmpfs.c b/drivers/base/devtmpfs.c
index 090dd4851301..42ae452b36b0 100644
--- a/drivers/base/devtmpfs.c
+++ b/drivers/base/devtmpfs.c
@@ -354,6 +354,7 @@ int __init devtmpfs_init(void)
354{ 354{
355 int err; 355 int err;
356 struct vfsmount *mnt; 356 struct vfsmount *mnt;
357 char options[] = "mode=0755";
357 358
358 err = register_filesystem(&dev_fs_type); 359 err = register_filesystem(&dev_fs_type);
359 if (err) { 360 if (err) {
@@ -362,7 +363,7 @@ int __init devtmpfs_init(void)
362 return err; 363 return err;
363 } 364 }
364 365
365 mnt = kern_mount_data(&dev_fs_type, "mode=0755"); 366 mnt = kern_mount_data(&dev_fs_type, options);
366 if (IS_ERR(mnt)) { 367 if (IS_ERR(mnt)) {
367 err = PTR_ERR(mnt); 368 err = PTR_ERR(mnt);
368 printk(KERN_ERR "devtmpfs: unable to create devtmpfs %i\n", err); 369 printk(KERN_ERR "devtmpfs: unable to create devtmpfs %i\n", err);
diff --git a/drivers/base/memory.c b/drivers/base/memory.c
index ae6b6c43cff9..bd025059711f 100644
--- a/drivers/base/memory.c
+++ b/drivers/base/memory.c
@@ -309,19 +309,17 @@ static SYSDEV_ATTR(removable, 0444, show_mem_removable, NULL);
309 * Block size attribute stuff 309 * Block size attribute stuff
310 */ 310 */
311static ssize_t 311static ssize_t
312print_block_size(struct sysdev_class *class, 312print_block_size(struct class *class, char *buf)
313 struct sysdev_class_attribute *class_attr,
314 char *buf)
315{ 313{
316 return sprintf(buf, "%#lx\n", (unsigned long)PAGES_PER_SECTION * PAGE_SIZE); 314 return sprintf(buf, "%#lx\n", (unsigned long)PAGES_PER_SECTION * PAGE_SIZE);
317} 315}
318 316
319static SYSDEV_CLASS_ATTR(block_size_bytes, 0444, print_block_size, NULL); 317static CLASS_ATTR(block_size_bytes, 0444, print_block_size, NULL);
320 318
321static int block_size_init(void) 319static int block_size_init(void)
322{ 320{
323 return sysfs_create_file(&memory_sysdev_class.kset.kobj, 321 return sysfs_create_file(&memory_sysdev_class.kset.kobj,
324 &attr_block_size_bytes.attr); 322 &class_attr_block_size_bytes.attr);
325} 323}
326 324
327/* 325/*
@@ -332,9 +330,7 @@ static int block_size_init(void)
332 */ 330 */
333#ifdef CONFIG_ARCH_MEMORY_PROBE 331#ifdef CONFIG_ARCH_MEMORY_PROBE
334static ssize_t 332static ssize_t
335memory_probe_store(struct sysdev_class *class, 333memory_probe_store(struct class *class, const char *buf, size_t count)
336 struct sysdev_class_attribute *class_attr,
337 const char *buf, size_t count)
338{ 334{
339 u64 phys_addr; 335 u64 phys_addr;
340 int nid; 336 int nid;
@@ -350,12 +346,12 @@ memory_probe_store(struct sysdev_class *class,
350 346
351 return count; 347 return count;
352} 348}
353static SYSDEV_CLASS_ATTR(probe, S_IWUSR, NULL, memory_probe_store); 349static CLASS_ATTR(probe, S_IWUSR, NULL, memory_probe_store);
354 350
355static int memory_probe_init(void) 351static int memory_probe_init(void)
356{ 352{
357 return sysfs_create_file(&memory_sysdev_class.kset.kobj, 353 return sysfs_create_file(&memory_sysdev_class.kset.kobj,
358 &attr_probe.attr); 354 &class_attr_probe.attr);
359} 355}
360#else 356#else
361static inline int memory_probe_init(void) 357static inline int memory_probe_init(void)
@@ -371,9 +367,7 @@ static inline int memory_probe_init(void)
371 367
372/* Soft offline a page */ 368/* Soft offline a page */
373static ssize_t 369static ssize_t
374store_soft_offline_page(struct sysdev_class *class, 370store_soft_offline_page(struct class *class, const char *buf, size_t count)
375 struct sysdev_class_attribute *class_attr,
376 const char *buf, size_t count)
377{ 371{
378 int ret; 372 int ret;
379 u64 pfn; 373 u64 pfn;
@@ -390,9 +384,7 @@ store_soft_offline_page(struct sysdev_class *class,
390 384
391/* Forcibly offline a page, including killing processes. */ 385/* Forcibly offline a page, including killing processes. */
392static ssize_t 386static ssize_t
393store_hard_offline_page(struct sysdev_class *class, 387store_hard_offline_page(struct class *class, const char *buf, size_t count)
394 struct sysdev_class_attribute *class_attr,
395 const char *buf, size_t count)
396{ 388{
397 int ret; 389 int ret;
398 u64 pfn; 390 u64 pfn;
@@ -405,18 +397,18 @@ store_hard_offline_page(struct sysdev_class *class,
405 return ret ? ret : count; 397 return ret ? ret : count;
406} 398}
407 399
408static SYSDEV_CLASS_ATTR(soft_offline_page, 0644, NULL, store_soft_offline_page); 400static CLASS_ATTR(soft_offline_page, 0644, NULL, store_soft_offline_page);
409static SYSDEV_CLASS_ATTR(hard_offline_page, 0644, NULL, store_hard_offline_page); 401static CLASS_ATTR(hard_offline_page, 0644, NULL, store_hard_offline_page);
410 402
411static __init int memory_fail_init(void) 403static __init int memory_fail_init(void)
412{ 404{
413 int err; 405 int err;
414 406
415 err = sysfs_create_file(&memory_sysdev_class.kset.kobj, 407 err = sysfs_create_file(&memory_sysdev_class.kset.kobj,
416 &attr_soft_offline_page.attr); 408 &class_attr_soft_offline_page.attr);
417 if (!err) 409 if (!err)
418 err = sysfs_create_file(&memory_sysdev_class.kset.kobj, 410 err = sysfs_create_file(&memory_sysdev_class.kset.kobj,
419 &attr_hard_offline_page.attr); 411 &class_attr_hard_offline_page.attr);
420 return err; 412 return err;
421} 413}
422#else 414#else
diff --git a/drivers/block/drbd/Kconfig b/drivers/block/drbd/Kconfig
index f4acd04ebeef..df0983787390 100644
--- a/drivers/block/drbd/Kconfig
+++ b/drivers/block/drbd/Kconfig
@@ -3,7 +3,7 @@
3# 3#
4 4
5comment "DRBD disabled because PROC_FS, INET or CONNECTOR not selected" 5comment "DRBD disabled because PROC_FS, INET or CONNECTOR not selected"
6 depends on !PROC_FS || !INET || !CONNECTOR 6 depends on PROC_FS='n' || INET='n' || CONNECTOR='n'
7 7
8config BLK_DEV_DRBD 8config BLK_DEV_DRBD
9 tristate "DRBD Distributed Replicated Block Device support" 9 tristate "DRBD Distributed Replicated Block Device support"
diff --git a/drivers/block/drbd/drbd_int.h b/drivers/block/drbd/drbd_int.h
index c97558763430..2bf3a6ef3684 100644
--- a/drivers/block/drbd/drbd_int.h
+++ b/drivers/block/drbd/drbd_int.h
@@ -1275,7 +1275,7 @@ struct bm_extent {
1275#if DRBD_MAX_SECTORS_BM < DRBD_MAX_SECTORS_32 1275#if DRBD_MAX_SECTORS_BM < DRBD_MAX_SECTORS_32
1276#define DRBD_MAX_SECTORS DRBD_MAX_SECTORS_BM 1276#define DRBD_MAX_SECTORS DRBD_MAX_SECTORS_BM
1277#define DRBD_MAX_SECTORS_FLEX DRBD_MAX_SECTORS_BM 1277#define DRBD_MAX_SECTORS_FLEX DRBD_MAX_SECTORS_BM
1278#elif !defined(CONFIG_LBD) && BITS_PER_LONG == 32 1278#elif !defined(CONFIG_LBDAF) && BITS_PER_LONG == 32
1279#define DRBD_MAX_SECTORS DRBD_MAX_SECTORS_32 1279#define DRBD_MAX_SECTORS DRBD_MAX_SECTORS_32
1280#define DRBD_MAX_SECTORS_FLEX DRBD_MAX_SECTORS_32 1280#define DRBD_MAX_SECTORS_FLEX DRBD_MAX_SECTORS_32
1281#else 1281#else
@@ -1371,10 +1371,9 @@ extern int is_valid_ar_handle(struct drbd_request *, sector_t);
1371extern void drbd_suspend_io(struct drbd_conf *mdev); 1371extern void drbd_suspend_io(struct drbd_conf *mdev);
1372extern void drbd_resume_io(struct drbd_conf *mdev); 1372extern void drbd_resume_io(struct drbd_conf *mdev);
1373extern char *ppsize(char *buf, unsigned long long size); 1373extern char *ppsize(char *buf, unsigned long long size);
1374extern sector_t drbd_new_dev_size(struct drbd_conf *, 1374extern sector_t drbd_new_dev_size(struct drbd_conf *, struct drbd_backing_dev *, int);
1375 struct drbd_backing_dev *);
1376enum determine_dev_size { dev_size_error = -1, unchanged = 0, shrunk = 1, grew = 2 }; 1375enum determine_dev_size { dev_size_error = -1, unchanged = 0, shrunk = 1, grew = 2 };
1377extern enum determine_dev_size drbd_determin_dev_size(struct drbd_conf *) __must_hold(local); 1376extern enum determine_dev_size drbd_determin_dev_size(struct drbd_conf *, int force) __must_hold(local);
1378extern void resync_after_online_grow(struct drbd_conf *); 1377extern void resync_after_online_grow(struct drbd_conf *);
1379extern void drbd_setup_queue_param(struct drbd_conf *mdev, unsigned int) __must_hold(local); 1378extern void drbd_setup_queue_param(struct drbd_conf *mdev, unsigned int) __must_hold(local);
1380extern int drbd_set_role(struct drbd_conf *mdev, enum drbd_role new_role, 1379extern int drbd_set_role(struct drbd_conf *mdev, enum drbd_role new_role,
diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c
index 9348f33f6242..e898ad9eb1c3 100644
--- a/drivers/block/drbd/drbd_main.c
+++ b/drivers/block/drbd/drbd_main.c
@@ -1298,6 +1298,7 @@ static void after_state_ch(struct drbd_conf *mdev, union drbd_state os,
1298 dev_err(DEV, "Sending state in drbd_io_error() failed\n"); 1298 dev_err(DEV, "Sending state in drbd_io_error() failed\n");
1299 } 1299 }
1300 1300
1301 wait_event(mdev->misc_wait, !atomic_read(&mdev->local_cnt));
1301 lc_destroy(mdev->resync); 1302 lc_destroy(mdev->resync);
1302 mdev->resync = NULL; 1303 mdev->resync = NULL;
1303 lc_destroy(mdev->act_log); 1304 lc_destroy(mdev->act_log);
diff --git a/drivers/block/drbd/drbd_nl.c b/drivers/block/drbd/drbd_nl.c
index 4e0726aa53b0..1292e0620663 100644
--- a/drivers/block/drbd/drbd_nl.c
+++ b/drivers/block/drbd/drbd_nl.c
@@ -510,7 +510,7 @@ void drbd_resume_io(struct drbd_conf *mdev)
510 * Returns 0 on success, negative return values indicate errors. 510 * Returns 0 on success, negative return values indicate errors.
511 * You should call drbd_md_sync() after calling this function. 511 * You should call drbd_md_sync() after calling this function.
512 */ 512 */
513enum determine_dev_size drbd_determin_dev_size(struct drbd_conf *mdev) __must_hold(local) 513enum determine_dev_size drbd_determin_dev_size(struct drbd_conf *mdev, int force) __must_hold(local)
514{ 514{
515 sector_t prev_first_sect, prev_size; /* previous meta location */ 515 sector_t prev_first_sect, prev_size; /* previous meta location */
516 sector_t la_size; 516 sector_t la_size;
@@ -541,7 +541,7 @@ enum determine_dev_size drbd_determin_dev_size(struct drbd_conf *mdev) __must_ho
541 /* TODO: should only be some assert here, not (re)init... */ 541 /* TODO: should only be some assert here, not (re)init... */
542 drbd_md_set_sector_offsets(mdev, mdev->ldev); 542 drbd_md_set_sector_offsets(mdev, mdev->ldev);
543 543
544 size = drbd_new_dev_size(mdev, mdev->ldev); 544 size = drbd_new_dev_size(mdev, mdev->ldev, force);
545 545
546 if (drbd_get_capacity(mdev->this_bdev) != size || 546 if (drbd_get_capacity(mdev->this_bdev) != size ||
547 drbd_bm_capacity(mdev) != size) { 547 drbd_bm_capacity(mdev) != size) {
@@ -596,7 +596,7 @@ out:
596} 596}
597 597
598sector_t 598sector_t
599drbd_new_dev_size(struct drbd_conf *mdev, struct drbd_backing_dev *bdev) 599drbd_new_dev_size(struct drbd_conf *mdev, struct drbd_backing_dev *bdev, int assume_peer_has_space)
600{ 600{
601 sector_t p_size = mdev->p_size; /* partner's disk size. */ 601 sector_t p_size = mdev->p_size; /* partner's disk size. */
602 sector_t la_size = bdev->md.la_size_sect; /* last agreed size. */ 602 sector_t la_size = bdev->md.la_size_sect; /* last agreed size. */
@@ -606,6 +606,11 @@ drbd_new_dev_size(struct drbd_conf *mdev, struct drbd_backing_dev *bdev)
606 606
607 m_size = drbd_get_max_capacity(bdev); 607 m_size = drbd_get_max_capacity(bdev);
608 608
609 if (mdev->state.conn < C_CONNECTED && assume_peer_has_space) {
610 dev_warn(DEV, "Resize while not connected was forced by the user!\n");
611 p_size = m_size;
612 }
613
609 if (p_size && m_size) { 614 if (p_size && m_size) {
610 size = min_t(sector_t, p_size, m_size); 615 size = min_t(sector_t, p_size, m_size);
611 } else { 616 } else {
@@ -965,7 +970,7 @@ static int drbd_nl_disk_conf(struct drbd_conf *mdev, struct drbd_nl_cfg_req *nlp
965 970
966 /* Prevent shrinking of consistent devices ! */ 971 /* Prevent shrinking of consistent devices ! */
967 if (drbd_md_test_flag(nbc, MDF_CONSISTENT) && 972 if (drbd_md_test_flag(nbc, MDF_CONSISTENT) &&
968 drbd_new_dev_size(mdev, nbc) < nbc->md.la_size_sect) { 973 drbd_new_dev_size(mdev, nbc, 0) < nbc->md.la_size_sect) {
969 dev_warn(DEV, "refusing to truncate a consistent device\n"); 974 dev_warn(DEV, "refusing to truncate a consistent device\n");
970 retcode = ERR_DISK_TO_SMALL; 975 retcode = ERR_DISK_TO_SMALL;
971 goto force_diskless_dec; 976 goto force_diskless_dec;
@@ -1052,7 +1057,7 @@ static int drbd_nl_disk_conf(struct drbd_conf *mdev, struct drbd_nl_cfg_req *nlp
1052 !drbd_md_test_flag(mdev->ldev, MDF_CONNECTED_IND)) 1057 !drbd_md_test_flag(mdev->ldev, MDF_CONNECTED_IND))
1053 set_bit(USE_DEGR_WFC_T, &mdev->flags); 1058 set_bit(USE_DEGR_WFC_T, &mdev->flags);
1054 1059
1055 dd = drbd_determin_dev_size(mdev); 1060 dd = drbd_determin_dev_size(mdev, 0);
1056 if (dd == dev_size_error) { 1061 if (dd == dev_size_error) {
1057 retcode = ERR_NOMEM_BITMAP; 1062 retcode = ERR_NOMEM_BITMAP;
1058 goto force_diskless_dec; 1063 goto force_diskless_dec;
@@ -1271,7 +1276,7 @@ static int drbd_nl_net_conf(struct drbd_conf *mdev, struct drbd_nl_cfg_req *nlp,
1271 goto fail; 1276 goto fail;
1272 } 1277 }
1273 1278
1274 if (crypto_tfm_alg_type(crypto_hash_tfm(tfm)) != CRYPTO_ALG_TYPE_SHASH) { 1279 if (!drbd_crypto_is_hash(crypto_hash_tfm(tfm))) {
1275 retcode = ERR_AUTH_ALG_ND; 1280 retcode = ERR_AUTH_ALG_ND;
1276 goto fail; 1281 goto fail;
1277 } 1282 }
@@ -1504,7 +1509,7 @@ static int drbd_nl_resize(struct drbd_conf *mdev, struct drbd_nl_cfg_req *nlp,
1504 } 1509 }
1505 1510
1506 mdev->ldev->dc.disk_size = (sector_t)rs.resize_size; 1511 mdev->ldev->dc.disk_size = (sector_t)rs.resize_size;
1507 dd = drbd_determin_dev_size(mdev); 1512 dd = drbd_determin_dev_size(mdev, rs.resize_force);
1508 drbd_md_sync(mdev); 1513 drbd_md_sync(mdev);
1509 put_ldev(mdev); 1514 put_ldev(mdev);
1510 if (dd == dev_size_error) { 1515 if (dd == dev_size_error) {
diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c
index 259c1351b152..f22a5283128a 100644
--- a/drivers/block/drbd/drbd_receiver.c
+++ b/drivers/block/drbd/drbd_receiver.c
@@ -878,9 +878,13 @@ retry:
878 878
879 if (mdev->cram_hmac_tfm) { 879 if (mdev->cram_hmac_tfm) {
880 /* drbd_request_state(mdev, NS(conn, WFAuth)); */ 880 /* drbd_request_state(mdev, NS(conn, WFAuth)); */
881 if (!drbd_do_auth(mdev)) { 881 switch (drbd_do_auth(mdev)) {
882 case -1:
882 dev_err(DEV, "Authentication of peer failed\n"); 883 dev_err(DEV, "Authentication of peer failed\n");
883 return -1; 884 return -1;
885 case 0:
886 dev_err(DEV, "Authentication of peer failed, trying again.\n");
887 return 0;
884 } 888 }
885 } 889 }
886 890
@@ -1201,10 +1205,11 @@ static int receive_Barrier(struct drbd_conf *mdev, struct p_header *h)
1201 1205
1202 case WO_bdev_flush: 1206 case WO_bdev_flush:
1203 case WO_drain_io: 1207 case WO_drain_io:
1204 D_ASSERT(rv == FE_STILL_LIVE); 1208 if (rv == FE_STILL_LIVE) {
1205 set_bit(DE_BARRIER_IN_NEXT_EPOCH_ISSUED, &mdev->current_epoch->flags); 1209 set_bit(DE_BARRIER_IN_NEXT_EPOCH_ISSUED, &mdev->current_epoch->flags);
1206 drbd_wait_ee_list_empty(mdev, &mdev->active_ee); 1210 drbd_wait_ee_list_empty(mdev, &mdev->active_ee);
1207 rv = drbd_flush_after_epoch(mdev, mdev->current_epoch); 1211 rv = drbd_flush_after_epoch(mdev, mdev->current_epoch);
1212 }
1208 if (rv == FE_RECYCLED) 1213 if (rv == FE_RECYCLED)
1209 return TRUE; 1214 return TRUE;
1210 1215
@@ -2865,7 +2870,7 @@ static int receive_sizes(struct drbd_conf *mdev, struct p_header *h)
2865 2870
2866 /* Never shrink a device with usable data during connect. 2871 /* Never shrink a device with usable data during connect.
2867 But allow online shrinking if we are connected. */ 2872 But allow online shrinking if we are connected. */
2868 if (drbd_new_dev_size(mdev, mdev->ldev) < 2873 if (drbd_new_dev_size(mdev, mdev->ldev, 0) <
2869 drbd_get_capacity(mdev->this_bdev) && 2874 drbd_get_capacity(mdev->this_bdev) &&
2870 mdev->state.disk >= D_OUTDATED && 2875 mdev->state.disk >= D_OUTDATED &&
2871 mdev->state.conn < C_CONNECTED) { 2876 mdev->state.conn < C_CONNECTED) {
@@ -2880,7 +2885,7 @@ static int receive_sizes(struct drbd_conf *mdev, struct p_header *h)
2880#undef min_not_zero 2885#undef min_not_zero
2881 2886
2882 if (get_ldev(mdev)) { 2887 if (get_ldev(mdev)) {
2883 dd = drbd_determin_dev_size(mdev); 2888 dd = drbd_determin_dev_size(mdev, 0);
2884 put_ldev(mdev); 2889 put_ldev(mdev);
2885 if (dd == dev_size_error) 2890 if (dd == dev_size_error)
2886 return FALSE; 2891 return FALSE;
@@ -3830,10 +3835,17 @@ static int drbd_do_auth(struct drbd_conf *mdev)
3830{ 3835{
3831 dev_err(DEV, "This kernel was build without CONFIG_CRYPTO_HMAC.\n"); 3836 dev_err(DEV, "This kernel was build without CONFIG_CRYPTO_HMAC.\n");
3832 dev_err(DEV, "You need to disable 'cram-hmac-alg' in drbd.conf.\n"); 3837 dev_err(DEV, "You need to disable 'cram-hmac-alg' in drbd.conf.\n");
3833 return 0; 3838 return -1;
3834} 3839}
3835#else 3840#else
3836#define CHALLENGE_LEN 64 3841#define CHALLENGE_LEN 64
3842
3843/* Return value:
3844 1 - auth succeeded,
3845 0 - failed, try again (network error),
3846 -1 - auth failed, don't try again.
3847*/
3848
3837static int drbd_do_auth(struct drbd_conf *mdev) 3849static int drbd_do_auth(struct drbd_conf *mdev)
3838{ 3850{
3839 char my_challenge[CHALLENGE_LEN]; /* 64 Bytes... */ 3851 char my_challenge[CHALLENGE_LEN]; /* 64 Bytes... */
@@ -3854,7 +3866,7 @@ static int drbd_do_auth(struct drbd_conf *mdev)
3854 (u8 *)mdev->net_conf->shared_secret, key_len); 3866 (u8 *)mdev->net_conf->shared_secret, key_len);
3855 if (rv) { 3867 if (rv) {
3856 dev_err(DEV, "crypto_hash_setkey() failed with %d\n", rv); 3868 dev_err(DEV, "crypto_hash_setkey() failed with %d\n", rv);
3857 rv = 0; 3869 rv = -1;
3858 goto fail; 3870 goto fail;
3859 } 3871 }
3860 3872
@@ -3877,14 +3889,14 @@ static int drbd_do_auth(struct drbd_conf *mdev)
3877 3889
3878 if (p.length > CHALLENGE_LEN*2) { 3890 if (p.length > CHALLENGE_LEN*2) {
3879 dev_err(DEV, "expected AuthChallenge payload too big.\n"); 3891 dev_err(DEV, "expected AuthChallenge payload too big.\n");
3880 rv = 0; 3892 rv = -1;
3881 goto fail; 3893 goto fail;
3882 } 3894 }
3883 3895
3884 peers_ch = kmalloc(p.length, GFP_NOIO); 3896 peers_ch = kmalloc(p.length, GFP_NOIO);
3885 if (peers_ch == NULL) { 3897 if (peers_ch == NULL) {
3886 dev_err(DEV, "kmalloc of peers_ch failed\n"); 3898 dev_err(DEV, "kmalloc of peers_ch failed\n");
3887 rv = 0; 3899 rv = -1;
3888 goto fail; 3900 goto fail;
3889 } 3901 }
3890 3902
@@ -3900,7 +3912,7 @@ static int drbd_do_auth(struct drbd_conf *mdev)
3900 response = kmalloc(resp_size, GFP_NOIO); 3912 response = kmalloc(resp_size, GFP_NOIO);
3901 if (response == NULL) { 3913 if (response == NULL) {
3902 dev_err(DEV, "kmalloc of response failed\n"); 3914 dev_err(DEV, "kmalloc of response failed\n");
3903 rv = 0; 3915 rv = -1;
3904 goto fail; 3916 goto fail;
3905 } 3917 }
3906 3918
@@ -3910,7 +3922,7 @@ static int drbd_do_auth(struct drbd_conf *mdev)
3910 rv = crypto_hash_digest(&desc, &sg, sg.length, response); 3922 rv = crypto_hash_digest(&desc, &sg, sg.length, response);
3911 if (rv) { 3923 if (rv) {
3912 dev_err(DEV, "crypto_hash_digest() failed with %d\n", rv); 3924 dev_err(DEV, "crypto_hash_digest() failed with %d\n", rv);
3913 rv = 0; 3925 rv = -1;
3914 goto fail; 3926 goto fail;
3915 } 3927 }
3916 3928
@@ -3944,9 +3956,9 @@ static int drbd_do_auth(struct drbd_conf *mdev)
3944 } 3956 }
3945 3957
3946 right_response = kmalloc(resp_size, GFP_NOIO); 3958 right_response = kmalloc(resp_size, GFP_NOIO);
3947 if (response == NULL) { 3959 if (right_response == NULL) {
3948 dev_err(DEV, "kmalloc of right_response failed\n"); 3960 dev_err(DEV, "kmalloc of right_response failed\n");
3949 rv = 0; 3961 rv = -1;
3950 goto fail; 3962 goto fail;
3951 } 3963 }
3952 3964
@@ -3955,7 +3967,7 @@ static int drbd_do_auth(struct drbd_conf *mdev)
3955 rv = crypto_hash_digest(&desc, &sg, sg.length, right_response); 3967 rv = crypto_hash_digest(&desc, &sg, sg.length, right_response);
3956 if (rv) { 3968 if (rv) {
3957 dev_err(DEV, "crypto_hash_digest() failed with %d\n", rv); 3969 dev_err(DEV, "crypto_hash_digest() failed with %d\n", rv);
3958 rv = 0; 3970 rv = -1;
3959 goto fail; 3971 goto fail;
3960 } 3972 }
3961 3973
@@ -3964,6 +3976,8 @@ static int drbd_do_auth(struct drbd_conf *mdev)
3964 if (rv) 3976 if (rv)
3965 dev_info(DEV, "Peer authenticated using %d bytes of '%s' HMAC\n", 3977 dev_info(DEV, "Peer authenticated using %d bytes of '%s' HMAC\n",
3966 resp_size, mdev->net_conf->cram_hmac_alg); 3978 resp_size, mdev->net_conf->cram_hmac_alg);
3979 else
3980 rv = -1;
3967 3981
3968 fail: 3982 fail:
3969 kfree(peers_ch); 3983 kfree(peers_ch);
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
index 31be3ac2e21b..e023682be2c4 100644
--- a/drivers/char/Kconfig
+++ b/drivers/char/Kconfig
@@ -669,7 +669,7 @@ config VIRTIO_CONSOLE
669 669
670config HVCS 670config HVCS
671 tristate "IBM Hypervisor Virtual Console Server support" 671 tristate "IBM Hypervisor Virtual Console Server support"
672 depends on PPC_PSERIES 672 depends on PPC_PSERIES && HVC_CONSOLE
673 help 673 help
674 Partitionable IBM Power5 ppc64 machines allow hosting of 674 Partitionable IBM Power5 ppc64 machines allow hosting of
675 firmware virtual consoles from one Linux partition by 675 firmware virtual consoles from one Linux partition by
diff --git a/drivers/char/agp/amd64-agp.c b/drivers/char/agp/amd64-agp.c
index 1afb8968a342..34cf04e21795 100644
--- a/drivers/char/agp/amd64-agp.c
+++ b/drivers/char/agp/amd64-agp.c
@@ -729,9 +729,6 @@ int __init agp_amd64_init(void)
729 if (agp_off) 729 if (agp_off)
730 return -EINVAL; 730 return -EINVAL;
731 731
732 if (gart_iommu_aperture)
733 return agp_bridges_found ? 0 : -ENODEV;
734
735 err = pci_register_driver(&agp_amd64_pci_driver); 732 err = pci_register_driver(&agp_amd64_pci_driver);
736 if (err < 0) 733 if (err < 0)
737 return err; 734 return err;
@@ -768,6 +765,14 @@ int __init agp_amd64_init(void)
768 return err; 765 return err;
769} 766}
770 767
768static int __init agp_amd64_mod_init(void)
769{
770 if (gart_iommu_aperture)
771 return agp_bridges_found ? 0 : -ENODEV;
772
773 return agp_amd64_init();
774}
775
771static void __exit agp_amd64_cleanup(void) 776static void __exit agp_amd64_cleanup(void)
772{ 777{
773 if (gart_iommu_aperture) 778 if (gart_iommu_aperture)
@@ -777,7 +782,7 @@ static void __exit agp_amd64_cleanup(void)
777 pci_unregister_driver(&agp_amd64_pci_driver); 782 pci_unregister_driver(&agp_amd64_pci_driver);
778} 783}
779 784
780module_init(agp_amd64_init); 785module_init(agp_amd64_mod_init);
781module_exit(agp_amd64_cleanup); 786module_exit(agp_amd64_cleanup);
782 787
783MODULE_AUTHOR("Dave Jones <davej@redhat.com>, Andi Kleen"); 788MODULE_AUTHOR("Dave Jones <davej@redhat.com>, Andi Kleen");
diff --git a/drivers/char/nozomi.c b/drivers/char/nozomi.c
index 7d73cd430340..2ad7d37afbd0 100644
--- a/drivers/char/nozomi.c
+++ b/drivers/char/nozomi.c
@@ -1651,10 +1651,10 @@ static void ntty_close(struct tty_struct *tty, struct file *file)
1651 1651
1652 dc->open_ttys--; 1652 dc->open_ttys--;
1653 port->count--; 1653 port->count--;
1654 tty_port_tty_set(port, NULL);
1655 1654
1656 if (port->count == 0) { 1655 if (port->count == 0) {
1657 DBG1("close: %d", nport->token_dl); 1656 DBG1("close: %d", nport->token_dl);
1657 tty_port_tty_set(port, NULL);
1658 spin_lock_irqsave(&dc->spin_mutex, flags); 1658 spin_lock_irqsave(&dc->spin_mutex, flags);
1659 dc->last_ier &= ~(nport->token_dl); 1659 dc->last_ier &= ~(nport->token_dl);
1660 writew(dc->last_ier, dc->reg_ier); 1660 writew(dc->last_ier, dc->reg_ier);
diff --git a/drivers/char/tty_io.c b/drivers/char/tty_io.c
index f15df40bc318..c6f3b48be9dd 100644
--- a/drivers/char/tty_io.c
+++ b/drivers/char/tty_io.c
@@ -1951,8 +1951,8 @@ static int tty_fasync(int fd, struct file *filp, int on)
1951 pid = task_pid(current); 1951 pid = task_pid(current);
1952 type = PIDTYPE_PID; 1952 type = PIDTYPE_PID;
1953 } 1953 }
1954 spin_unlock_irqrestore(&tty->ctrl_lock, flags);
1955 retval = __f_setown(filp, pid, type, 0); 1954 retval = __f_setown(filp, pid, type, 0);
1955 spin_unlock_irqrestore(&tty->ctrl_lock, flags);
1956 if (retval) 1956 if (retval)
1957 goto out; 1957 goto out;
1958 } else { 1958 } else {
diff --git a/drivers/char/uv_mmtimer.c b/drivers/char/uv_mmtimer.c
index 867b67be9f0a..c7072ba14f48 100644
--- a/drivers/char/uv_mmtimer.c
+++ b/drivers/char/uv_mmtimer.c
@@ -89,13 +89,17 @@ static long uv_mmtimer_ioctl(struct file *file, unsigned int cmd,
89 switch (cmd) { 89 switch (cmd) {
90 case MMTIMER_GETOFFSET: /* offset of the counter */ 90 case MMTIMER_GETOFFSET: /* offset of the counter */
91 /* 91 /*
92 * UV RTC register is on its own page 92 * Starting with HUB rev 2.0, the UV RTC register is
93 * replicated across all cachelines of it's own page.
94 * This allows faster simultaneous reads from a given socket.
95 *
96 * The offset returned is in 64 bit units.
93 */ 97 */
94 if (PAGE_SIZE <= (1 << 16)) 98 if (uv_get_min_hub_revision_id() == 1)
95 ret = ((UV_LOCAL_MMR_BASE | UVH_RTC) & (PAGE_SIZE-1)) 99 ret = 0;
96 / 8;
97 else 100 else
98 ret = -ENOSYS; 101 ret = ((uv_blade_processor_id() * L1_CACHE_BYTES) %
102 PAGE_SIZE) / 8;
99 break; 103 break;
100 104
101 case MMTIMER_GETRES: /* resolution of the clock in 10^-15 s */ 105 case MMTIMER_GETRES: /* resolution of the clock in 10^-15 s */
@@ -115,8 +119,8 @@ static long uv_mmtimer_ioctl(struct file *file, unsigned int cmd,
115 ret = hweight64(UVH_RTC_REAL_TIME_CLOCK_MASK); 119 ret = hweight64(UVH_RTC_REAL_TIME_CLOCK_MASK);
116 break; 120 break;
117 121
118 case MMTIMER_MMAPAVAIL: /* can we mmap the clock into userspace? */ 122 case MMTIMER_MMAPAVAIL:
119 ret = (PAGE_SIZE <= (1 << 16)) ? 1 : 0; 123 ret = 1;
120 break; 124 break;
121 125
122 case MMTIMER_GETCOUNTER: 126 case MMTIMER_GETCOUNTER:
diff --git a/drivers/firewire/core-card.c b/drivers/firewire/core-card.c
index 7083bcc1b9c7..5045156c5313 100644
--- a/drivers/firewire/core-card.c
+++ b/drivers/firewire/core-card.c
@@ -57,6 +57,8 @@ static LIST_HEAD(descriptor_list);
57static int descriptor_count; 57static int descriptor_count;
58 58
59static __be32 tmp_config_rom[256]; 59static __be32 tmp_config_rom[256];
60/* ROM header, bus info block, root dir header, capabilities = 7 quadlets */
61static size_t config_rom_length = 1 + 4 + 1 + 1;
60 62
61#define BIB_CRC(v) ((v) << 0) 63#define BIB_CRC(v) ((v) << 0)
62#define BIB_CRC_LENGTH(v) ((v) << 16) 64#define BIB_CRC_LENGTH(v) ((v) << 16)
@@ -73,7 +75,7 @@ static __be32 tmp_config_rom[256];
73#define BIB_CMC ((1) << 30) 75#define BIB_CMC ((1) << 30)
74#define BIB_IMC ((1) << 31) 76#define BIB_IMC ((1) << 31)
75 77
76static size_t generate_config_rom(struct fw_card *card, __be32 *config_rom) 78static void generate_config_rom(struct fw_card *card, __be32 *config_rom)
77{ 79{
78 struct fw_descriptor *desc; 80 struct fw_descriptor *desc;
79 int i, j, k, length; 81 int i, j, k, length;
@@ -130,23 +132,30 @@ static size_t generate_config_rom(struct fw_card *card, __be32 *config_rom)
130 for (i = 0; i < j; i += length + 1) 132 for (i = 0; i < j; i += length + 1)
131 length = fw_compute_block_crc(config_rom + i); 133 length = fw_compute_block_crc(config_rom + i);
132 134
133 return j; 135 WARN_ON(j != config_rom_length);
134} 136}
135 137
136static void update_config_roms(void) 138static void update_config_roms(void)
137{ 139{
138 struct fw_card *card; 140 struct fw_card *card;
139 size_t length;
140 141
141 list_for_each_entry (card, &card_list, link) { 142 list_for_each_entry (card, &card_list, link) {
142 length = generate_config_rom(card, tmp_config_rom); 143 generate_config_rom(card, tmp_config_rom);
143 card->driver->set_config_rom(card, tmp_config_rom, length); 144 card->driver->set_config_rom(card, tmp_config_rom,
145 config_rom_length);
144 } 146 }
145} 147}
146 148
149static size_t required_space(struct fw_descriptor *desc)
150{
151 /* descriptor + entry into root dir + optional immediate entry */
152 return desc->length + 1 + (desc->immediate > 0 ? 1 : 0);
153}
154
147int fw_core_add_descriptor(struct fw_descriptor *desc) 155int fw_core_add_descriptor(struct fw_descriptor *desc)
148{ 156{
149 size_t i; 157 size_t i;
158 int ret;
150 159
151 /* 160 /*
152 * Check descriptor is valid; the length of all blocks in the 161 * Check descriptor is valid; the length of all blocks in the
@@ -162,15 +171,21 @@ int fw_core_add_descriptor(struct fw_descriptor *desc)
162 171
163 mutex_lock(&card_mutex); 172 mutex_lock(&card_mutex);
164 173
165 list_add_tail(&desc->link, &descriptor_list); 174 if (config_rom_length + required_space(desc) > 256) {
166 descriptor_count++; 175 ret = -EBUSY;
167 if (desc->immediate > 0) 176 } else {
177 list_add_tail(&desc->link, &descriptor_list);
178 config_rom_length += required_space(desc);
168 descriptor_count++; 179 descriptor_count++;
169 update_config_roms(); 180 if (desc->immediate > 0)
181 descriptor_count++;
182 update_config_roms();
183 ret = 0;
184 }
170 185
171 mutex_unlock(&card_mutex); 186 mutex_unlock(&card_mutex);
172 187
173 return 0; 188 return ret;
174} 189}
175EXPORT_SYMBOL(fw_core_add_descriptor); 190EXPORT_SYMBOL(fw_core_add_descriptor);
176 191
@@ -179,6 +194,7 @@ void fw_core_remove_descriptor(struct fw_descriptor *desc)
179 mutex_lock(&card_mutex); 194 mutex_lock(&card_mutex);
180 195
181 list_del(&desc->link); 196 list_del(&desc->link);
197 config_rom_length -= required_space(desc);
182 descriptor_count--; 198 descriptor_count--;
183 if (desc->immediate > 0) 199 if (desc->immediate > 0)
184 descriptor_count--; 200 descriptor_count--;
@@ -428,7 +444,6 @@ EXPORT_SYMBOL(fw_card_initialize);
428int fw_card_add(struct fw_card *card, 444int fw_card_add(struct fw_card *card,
429 u32 max_receive, u32 link_speed, u64 guid) 445 u32 max_receive, u32 link_speed, u64 guid)
430{ 446{
431 size_t length;
432 int ret; 447 int ret;
433 448
434 card->max_receive = max_receive; 449 card->max_receive = max_receive;
@@ -437,8 +452,8 @@ int fw_card_add(struct fw_card *card,
437 452
438 mutex_lock(&card_mutex); 453 mutex_lock(&card_mutex);
439 454
440 length = generate_config_rom(card, tmp_config_rom); 455 generate_config_rom(card, tmp_config_rom);
441 ret = card->driver->enable(card, tmp_config_rom, length); 456 ret = card->driver->enable(card, tmp_config_rom, config_rom_length);
442 if (ret == 0) 457 if (ret == 0)
443 list_add_tail(&card->link, &card_list); 458 list_add_tail(&card->link, &card_list);
444 459
diff --git a/drivers/firewire/core-cdev.c b/drivers/firewire/core-cdev.c
index e6d63849e78e..4eeaed57e219 100644
--- a/drivers/firewire/core-cdev.c
+++ b/drivers/firewire/core-cdev.c
@@ -35,6 +35,7 @@
35#include <linux/preempt.h> 35#include <linux/preempt.h>
36#include <linux/sched.h> 36#include <linux/sched.h>
37#include <linux/spinlock.h> 37#include <linux/spinlock.h>
38#include <linux/string.h>
38#include <linux/time.h> 39#include <linux/time.h>
39#include <linux/uaccess.h> 40#include <linux/uaccess.h>
40#include <linux/vmalloc.h> 41#include <linux/vmalloc.h>
@@ -595,13 +596,20 @@ static int ioctl_send_request(struct client *client, void *buffer)
595 client->device->max_speed); 596 client->device->max_speed);
596} 597}
597 598
599static inline bool is_fcp_request(struct fw_request *request)
600{
601 return request == NULL;
602}
603
598static void release_request(struct client *client, 604static void release_request(struct client *client,
599 struct client_resource *resource) 605 struct client_resource *resource)
600{ 606{
601 struct inbound_transaction_resource *r = container_of(resource, 607 struct inbound_transaction_resource *r = container_of(resource,
602 struct inbound_transaction_resource, resource); 608 struct inbound_transaction_resource, resource);
603 609
604 if (r->request) 610 if (is_fcp_request(r->request))
611 kfree(r->data);
612 else
605 fw_send_response(client->device->card, r->request, 613 fw_send_response(client->device->card, r->request,
606 RCODE_CONFLICT_ERROR); 614 RCODE_CONFLICT_ERROR);
607 kfree(r); 615 kfree(r);
@@ -616,6 +624,7 @@ static void handle_request(struct fw_card *card, struct fw_request *request,
616 struct address_handler_resource *handler = callback_data; 624 struct address_handler_resource *handler = callback_data;
617 struct inbound_transaction_resource *r; 625 struct inbound_transaction_resource *r;
618 struct inbound_transaction_event *e; 626 struct inbound_transaction_event *e;
627 void *fcp_frame = NULL;
619 int ret; 628 int ret;
620 629
621 r = kmalloc(sizeof(*r), GFP_ATOMIC); 630 r = kmalloc(sizeof(*r), GFP_ATOMIC);
@@ -627,6 +636,18 @@ static void handle_request(struct fw_card *card, struct fw_request *request,
627 r->data = payload; 636 r->data = payload;
628 r->length = length; 637 r->length = length;
629 638
639 if (is_fcp_request(request)) {
640 /*
641 * FIXME: Let core-transaction.c manage a
642 * single reference-counted copy?
643 */
644 fcp_frame = kmemdup(payload, length, GFP_ATOMIC);
645 if (fcp_frame == NULL)
646 goto failed;
647
648 r->data = fcp_frame;
649 }
650
630 r->resource.release = release_request; 651 r->resource.release = release_request;
631 ret = add_client_resource(handler->client, &r->resource, GFP_ATOMIC); 652 ret = add_client_resource(handler->client, &r->resource, GFP_ATOMIC);
632 if (ret < 0) 653 if (ret < 0)
@@ -640,13 +661,15 @@ static void handle_request(struct fw_card *card, struct fw_request *request,
640 e->request.closure = handler->closure; 661 e->request.closure = handler->closure;
641 662
642 queue_event(handler->client, &e->event, 663 queue_event(handler->client, &e->event,
643 &e->request, sizeof(e->request), payload, length); 664 &e->request, sizeof(e->request), r->data, length);
644 return; 665 return;
645 666
646 failed: 667 failed:
647 kfree(r); 668 kfree(r);
648 kfree(e); 669 kfree(e);
649 if (request) 670 kfree(fcp_frame);
671
672 if (!is_fcp_request(request))
650 fw_send_response(card, request, RCODE_CONFLICT_ERROR); 673 fw_send_response(card, request, RCODE_CONFLICT_ERROR);
651} 674}
652 675
@@ -717,18 +740,17 @@ static int ioctl_send_response(struct client *client, void *buffer)
717 740
718 r = container_of(resource, struct inbound_transaction_resource, 741 r = container_of(resource, struct inbound_transaction_resource,
719 resource); 742 resource);
720 if (r->request) { 743 if (is_fcp_request(r->request))
721 if (request->length < r->length) 744 goto out;
722 r->length = request->length; 745
723 if (copy_from_user(r->data, u64_to_uptr(request->data), 746 if (request->length < r->length)
724 r->length)) { 747 r->length = request->length;
725 ret = -EFAULT; 748 if (copy_from_user(r->data, u64_to_uptr(request->data), r->length)) {
726 kfree(r->request); 749 ret = -EFAULT;
727 goto out; 750 kfree(r->request);
728 } 751 goto out;
729 fw_send_response(client->device->card, r->request,
730 request->rcode);
731 } 752 }
753 fw_send_response(client->device->card, r->request, request->rcode);
732 out: 754 out:
733 kfree(r); 755 kfree(r);
734 756
diff --git a/drivers/firewire/ohci.c b/drivers/firewire/ohci.c
index a61571c63c59..2345d4103fe6 100644
--- a/drivers/firewire/ohci.c
+++ b/drivers/firewire/ohci.c
@@ -2420,6 +2420,7 @@ static void ohci_pmac_off(struct pci_dev *dev)
2420 2420
2421#define PCI_VENDOR_ID_AGERE PCI_VENDOR_ID_ATT 2421#define PCI_VENDOR_ID_AGERE PCI_VENDOR_ID_ATT
2422#define PCI_DEVICE_ID_AGERE_FW643 0x5901 2422#define PCI_DEVICE_ID_AGERE_FW643 0x5901
2423#define PCI_DEVICE_ID_TI_TSB43AB23 0x8024
2423 2424
2424static int __devinit pci_probe(struct pci_dev *dev, 2425static int __devinit pci_probe(struct pci_dev *dev,
2425 const struct pci_device_id *ent) 2426 const struct pci_device_id *ent)
@@ -2488,7 +2489,8 @@ static int __devinit pci_probe(struct pci_dev *dev,
2488#if !defined(CONFIG_X86_32) 2489#if !defined(CONFIG_X86_32)
2489 /* dual-buffer mode is broken with descriptor addresses above 2G */ 2490 /* dual-buffer mode is broken with descriptor addresses above 2G */
2490 if (dev->vendor == PCI_VENDOR_ID_TI && 2491 if (dev->vendor == PCI_VENDOR_ID_TI &&
2491 dev->device == PCI_DEVICE_ID_TI_TSB43AB22) 2492 (dev->device == PCI_DEVICE_ID_TI_TSB43AB22 ||
2493 dev->device == PCI_DEVICE_ID_TI_TSB43AB23))
2492 ohci->use_dualbuffer = false; 2494 ohci->use_dualbuffer = false;
2493#endif 2495#endif
2494 2496
diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
index 96eddd17e050..305c59003963 100644
--- a/drivers/gpu/drm/Kconfig
+++ b/drivers/gpu/drm/Kconfig
@@ -66,6 +66,8 @@ config DRM_RADEON
66 66
67 If M is selected, the module will be called radeon. 67 If M is selected, the module will be called radeon.
68 68
69source "drivers/gpu/drm/radeon/Kconfig"
70
69config DRM_I810 71config DRM_I810
70 tristate "Intel I810" 72 tristate "Intel I810"
71 depends on DRM && AGP && AGP_INTEL 73 depends on DRM && AGP && AGP_INTEL
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index defcaf108460..f665b05592f3 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -633,8 +633,7 @@ static struct drm_display_mode *drm_mode_detailed(struct drm_device *dev,
633 return NULL; 633 return NULL;
634 } 634 }
635 if (!(pt->misc & DRM_EDID_PT_SEPARATE_SYNC)) { 635 if (!(pt->misc & DRM_EDID_PT_SEPARATE_SYNC)) {
636 printk(KERN_WARNING "integrated sync not supported\n"); 636 printk(KERN_WARNING "composite sync not supported\n");
637 return NULL;
638 } 637 }
639 638
640 /* it is incorrect if hsync/vsync width is zero */ 639 /* it is incorrect if hsync/vsync width is zero */
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index 1c2b7d44ec05..0f9e90552dc4 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -389,7 +389,7 @@ int drm_fb_helper_blank(int blank, struct fb_info *info)
389 break; 389 break;
390 /* Display: Off; HSync: On, VSync: On */ 390 /* Display: Off; HSync: On, VSync: On */
391 case FB_BLANK_NORMAL: 391 case FB_BLANK_NORMAL:
392 drm_fb_helper_off(info, DRM_MODE_DPMS_ON); 392 drm_fb_helper_off(info, DRM_MODE_DPMS_STANDBY);
393 break; 393 break;
394 /* Display: Off; HSync: Off, VSync: On */ 394 /* Display: Off; HSync: Off, VSync: On */
395 case FB_BLANK_HSYNC_SUSPEND: 395 case FB_BLANK_HSYNC_SUSPEND:
diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
index e9dbb481c469..8bf3770f294e 100644
--- a/drivers/gpu/drm/drm_gem.c
+++ b/drivers/gpu/drm/drm_gem.c
@@ -142,19 +142,6 @@ drm_gem_object_alloc(struct drm_device *dev, size_t size)
142 if (IS_ERR(obj->filp)) 142 if (IS_ERR(obj->filp))
143 goto free; 143 goto free;
144 144
145 /* Basically we want to disable the OOM killer and handle ENOMEM
146 * ourselves by sacrificing pages from cached buffers.
147 * XXX shmem_file_[gs]et_gfp_mask()
148 */
149 mapping_set_gfp_mask(obj->filp->f_path.dentry->d_inode->i_mapping,
150 GFP_HIGHUSER |
151 __GFP_COLD |
152 __GFP_FS |
153 __GFP_RECLAIMABLE |
154 __GFP_NORETRY |
155 __GFP_NOWARN |
156 __GFP_NOMEMALLOC);
157
158 kref_init(&obj->refcount); 145 kref_init(&obj->refcount);
159 kref_init(&obj->handlecount); 146 kref_init(&obj->handlecount);
160 obj->size = size; 147 obj->size = size;
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
index 9c9998c4dceb..a894ade03093 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -290,7 +290,7 @@ static int i915_batchbuffer_info(struct seq_file *m, void *data)
290 list_for_each_entry(obj_priv, &dev_priv->mm.active_list, list) { 290 list_for_each_entry(obj_priv, &dev_priv->mm.active_list, list) {
291 obj = obj_priv->obj; 291 obj = obj_priv->obj;
292 if (obj->read_domains & I915_GEM_DOMAIN_COMMAND) { 292 if (obj->read_domains & I915_GEM_DOMAIN_COMMAND) {
293 ret = i915_gem_object_get_pages(obj); 293 ret = i915_gem_object_get_pages(obj, 0);
294 if (ret) { 294 if (ret) {
295 DRM_ERROR("Failed to get pages: %d\n", ret); 295 DRM_ERROR("Failed to get pages: %d\n", ret);
296 spin_unlock(&dev_priv->mm.active_list_lock); 296 spin_unlock(&dev_priv->mm.active_list_lock);
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 2c1669488b5a..aaf934d96f21 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -872,7 +872,7 @@ int i915_gem_attach_phys_object(struct drm_device *dev,
872void i915_gem_detach_phys_object(struct drm_device *dev, 872void i915_gem_detach_phys_object(struct drm_device *dev,
873 struct drm_gem_object *obj); 873 struct drm_gem_object *obj);
874void i915_gem_free_all_phys_object(struct drm_device *dev); 874void i915_gem_free_all_phys_object(struct drm_device *dev);
875int i915_gem_object_get_pages(struct drm_gem_object *obj); 875int i915_gem_object_get_pages(struct drm_gem_object *obj, gfp_t gfpmask);
876void i915_gem_object_put_pages(struct drm_gem_object *obj); 876void i915_gem_object_put_pages(struct drm_gem_object *obj);
877void i915_gem_release(struct drm_device * dev, struct drm_file *file_priv); 877void i915_gem_release(struct drm_device * dev, struct drm_file *file_priv);
878void i915_gem_object_flush_write_domain(struct drm_gem_object *obj); 878void i915_gem_object_flush_write_domain(struct drm_gem_object *obj);
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 0c67924ca80c..dda787aafcc6 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -277,7 +277,7 @@ i915_gem_shmem_pread_fast(struct drm_device *dev, struct drm_gem_object *obj,
277 277
278 mutex_lock(&dev->struct_mutex); 278 mutex_lock(&dev->struct_mutex);
279 279
280 ret = i915_gem_object_get_pages(obj); 280 ret = i915_gem_object_get_pages(obj, 0);
281 if (ret != 0) 281 if (ret != 0)
282 goto fail_unlock; 282 goto fail_unlock;
283 283
@@ -321,40 +321,24 @@ fail_unlock:
321 return ret; 321 return ret;
322} 322}
323 323
324static inline gfp_t
325i915_gem_object_get_page_gfp_mask (struct drm_gem_object *obj)
326{
327 return mapping_gfp_mask(obj->filp->f_path.dentry->d_inode->i_mapping);
328}
329
330static inline void
331i915_gem_object_set_page_gfp_mask (struct drm_gem_object *obj, gfp_t gfp)
332{
333 mapping_set_gfp_mask(obj->filp->f_path.dentry->d_inode->i_mapping, gfp);
334}
335
336static int 324static int
337i915_gem_object_get_pages_or_evict(struct drm_gem_object *obj) 325i915_gem_object_get_pages_or_evict(struct drm_gem_object *obj)
338{ 326{
339 int ret; 327 int ret;
340 328
341 ret = i915_gem_object_get_pages(obj); 329 ret = i915_gem_object_get_pages(obj, __GFP_NORETRY | __GFP_NOWARN);
342 330
343 /* If we've insufficient memory to map in the pages, attempt 331 /* If we've insufficient memory to map in the pages, attempt
344 * to make some space by throwing out some old buffers. 332 * to make some space by throwing out some old buffers.
345 */ 333 */
346 if (ret == -ENOMEM) { 334 if (ret == -ENOMEM) {
347 struct drm_device *dev = obj->dev; 335 struct drm_device *dev = obj->dev;
348 gfp_t gfp;
349 336
350 ret = i915_gem_evict_something(dev, obj->size); 337 ret = i915_gem_evict_something(dev, obj->size);
351 if (ret) 338 if (ret)
352 return ret; 339 return ret;
353 340
354 gfp = i915_gem_object_get_page_gfp_mask(obj); 341 ret = i915_gem_object_get_pages(obj, 0);
355 i915_gem_object_set_page_gfp_mask(obj, gfp & ~__GFP_NORETRY);
356 ret = i915_gem_object_get_pages(obj);
357 i915_gem_object_set_page_gfp_mask (obj, gfp);
358 } 342 }
359 343
360 return ret; 344 return ret;
@@ -790,7 +774,7 @@ i915_gem_shmem_pwrite_fast(struct drm_device *dev, struct drm_gem_object *obj,
790 774
791 mutex_lock(&dev->struct_mutex); 775 mutex_lock(&dev->struct_mutex);
792 776
793 ret = i915_gem_object_get_pages(obj); 777 ret = i915_gem_object_get_pages(obj, 0);
794 if (ret != 0) 778 if (ret != 0)
795 goto fail_unlock; 779 goto fail_unlock;
796 780
@@ -2230,7 +2214,8 @@ i915_gem_evict_something(struct drm_device *dev, int min_size)
2230} 2214}
2231 2215
2232int 2216int
2233i915_gem_object_get_pages(struct drm_gem_object *obj) 2217i915_gem_object_get_pages(struct drm_gem_object *obj,
2218 gfp_t gfpmask)
2234{ 2219{
2235 struct drm_i915_gem_object *obj_priv = obj->driver_private; 2220 struct drm_i915_gem_object *obj_priv = obj->driver_private;
2236 int page_count, i; 2221 int page_count, i;
@@ -2256,7 +2241,10 @@ i915_gem_object_get_pages(struct drm_gem_object *obj)
2256 inode = obj->filp->f_path.dentry->d_inode; 2241 inode = obj->filp->f_path.dentry->d_inode;
2257 mapping = inode->i_mapping; 2242 mapping = inode->i_mapping;
2258 for (i = 0; i < page_count; i++) { 2243 for (i = 0; i < page_count; i++) {
2259 page = read_mapping_page(mapping, i, NULL); 2244 page = read_cache_page_gfp(mapping, i,
2245 mapping_gfp_mask (mapping) |
2246 __GFP_COLD |
2247 gfpmask);
2260 if (IS_ERR(page)) { 2248 if (IS_ERR(page)) {
2261 ret = PTR_ERR(page); 2249 ret = PTR_ERR(page);
2262 i915_gem_object_put_pages(obj); 2250 i915_gem_object_put_pages(obj);
@@ -2579,7 +2567,7 @@ i915_gem_object_bind_to_gtt(struct drm_gem_object *obj, unsigned alignment)
2579 drm_i915_private_t *dev_priv = dev->dev_private; 2567 drm_i915_private_t *dev_priv = dev->dev_private;
2580 struct drm_i915_gem_object *obj_priv = obj->driver_private; 2568 struct drm_i915_gem_object *obj_priv = obj->driver_private;
2581 struct drm_mm_node *free_space; 2569 struct drm_mm_node *free_space;
2582 bool retry_alloc = false; 2570 gfp_t gfpmask = __GFP_NORETRY | __GFP_NOWARN;
2583 int ret; 2571 int ret;
2584 2572
2585 if (obj_priv->madv != I915_MADV_WILLNEED) { 2573 if (obj_priv->madv != I915_MADV_WILLNEED) {
@@ -2623,15 +2611,7 @@ i915_gem_object_bind_to_gtt(struct drm_gem_object *obj, unsigned alignment)
2623 DRM_INFO("Binding object of size %zd at 0x%08x\n", 2611 DRM_INFO("Binding object of size %zd at 0x%08x\n",
2624 obj->size, obj_priv->gtt_offset); 2612 obj->size, obj_priv->gtt_offset);
2625#endif 2613#endif
2626 if (retry_alloc) { 2614 ret = i915_gem_object_get_pages(obj, gfpmask);
2627 i915_gem_object_set_page_gfp_mask (obj,
2628 i915_gem_object_get_page_gfp_mask (obj) & ~__GFP_NORETRY);
2629 }
2630 ret = i915_gem_object_get_pages(obj);
2631 if (retry_alloc) {
2632 i915_gem_object_set_page_gfp_mask (obj,
2633 i915_gem_object_get_page_gfp_mask (obj) | __GFP_NORETRY);
2634 }
2635 if (ret) { 2615 if (ret) {
2636 drm_mm_put_block(obj_priv->gtt_space); 2616 drm_mm_put_block(obj_priv->gtt_space);
2637 obj_priv->gtt_space = NULL; 2617 obj_priv->gtt_space = NULL;
@@ -2641,9 +2621,9 @@ i915_gem_object_bind_to_gtt(struct drm_gem_object *obj, unsigned alignment)
2641 ret = i915_gem_evict_something(dev, obj->size); 2621 ret = i915_gem_evict_something(dev, obj->size);
2642 if (ret) { 2622 if (ret) {
2643 /* now try to shrink everyone else */ 2623 /* now try to shrink everyone else */
2644 if (! retry_alloc) { 2624 if (gfpmask) {
2645 retry_alloc = true; 2625 gfpmask = 0;
2646 goto search_free; 2626 goto search_free;
2647 } 2627 }
2648 2628
2649 return ret; 2629 return ret;
@@ -4946,7 +4926,7 @@ void i915_gem_detach_phys_object(struct drm_device *dev,
4946 if (!obj_priv->phys_obj) 4926 if (!obj_priv->phys_obj)
4947 return; 4927 return;
4948 4928
4949 ret = i915_gem_object_get_pages(obj); 4929 ret = i915_gem_object_get_pages(obj, 0);
4950 if (ret) 4930 if (ret)
4951 goto out; 4931 goto out;
4952 4932
@@ -5004,7 +4984,7 @@ i915_gem_attach_phys_object(struct drm_device *dev,
5004 obj_priv->phys_obj = dev_priv->mm.phys_objs[id - 1]; 4984 obj_priv->phys_obj = dev_priv->mm.phys_objs[id - 1];
5005 obj_priv->phys_obj->cur_obj = obj; 4985 obj_priv->phys_obj->cur_obj = obj;
5006 4986
5007 ret = i915_gem_object_get_pages(obj); 4987 ret = i915_gem_object_get_pages(obj, 0);
5008 if (ret) { 4988 if (ret) {
5009 DRM_ERROR("failed to get page list\n"); 4989 DRM_ERROR("failed to get page list\n");
5010 goto out; 4990 goto out;
diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
index ba143972769f..d7f8d8b4a4b8 100644
--- a/drivers/gpu/drm/nouveau/nouveau_bios.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
@@ -310,63 +310,22 @@ valid_reg(struct nvbios *bios, uint32_t reg)
310 struct drm_device *dev = bios->dev; 310 struct drm_device *dev = bios->dev;
311 311
312 /* C51 has misaligned regs on purpose. Marvellous */ 312 /* C51 has misaligned regs on purpose. Marvellous */
313 if (reg & 0x2 || (reg & 0x1 && dev_priv->VBIOS.pub.chip_version != 0x51)) { 313 if (reg & 0x2 ||
314 NV_ERROR(dev, "========== misaligned reg 0x%08X ==========\n", 314 (reg & 0x1 && dev_priv->VBIOS.pub.chip_version != 0x51))
315 reg); 315 NV_ERROR(dev, "======= misaligned reg 0x%08X =======\n", reg);
316 return 0; 316
317 } 317 /* warn on C51 regs that haven't been verified accessible in tracing */
318 /*
319 * Warn on C51 regs that have not been verified accessible in
320 * mmiotracing
321 */
322 if (reg & 0x1 && dev_priv->VBIOS.pub.chip_version == 0x51 && 318 if (reg & 0x1 && dev_priv->VBIOS.pub.chip_version == 0x51 &&
323 reg != 0x130d && reg != 0x1311 && reg != 0x60081d) 319 reg != 0x130d && reg != 0x1311 && reg != 0x60081d)
324 NV_WARN(dev, "=== C51 misaligned reg 0x%08X not verified ===\n", 320 NV_WARN(dev, "=== C51 misaligned reg 0x%08X not verified ===\n",
325 reg); 321 reg);
326 322
327 /* Trust the init scripts on G80 */ 323 if (reg >= (8*1024*1024)) {
328 if (dev_priv->card_type >= NV_50) 324 NV_ERROR(dev, "=== reg 0x%08x out of mapped bounds ===\n", reg);
329 return 1; 325 return 0;
330
331 #define WITHIN(x, y, z) ((x >= y) && (x < y + z))
332 if (WITHIN(reg, NV_PMC_OFFSET, NV_PMC_SIZE))
333 return 1;
334 if (WITHIN(reg, NV_PBUS_OFFSET, NV_PBUS_SIZE))
335 return 1;
336 if (WITHIN(reg, NV_PFIFO_OFFSET, NV_PFIFO_SIZE))
337 return 1;
338 if (dev_priv->VBIOS.pub.chip_version >= 0x30 &&
339 (WITHIN(reg, 0x4000, 0x600) || reg == 0x00004600))
340 return 1;
341 if (dev_priv->VBIOS.pub.chip_version >= 0x40 &&
342 WITHIN(reg, 0xc000, 0x48))
343 return 1;
344 if (dev_priv->VBIOS.pub.chip_version >= 0x17 && reg == 0x0000d204)
345 return 1;
346 if (dev_priv->VBIOS.pub.chip_version >= 0x40) {
347 if (reg == 0x00011014 || reg == 0x00020328)
348 return 1;
349 if (WITHIN(reg, 0x88000, NV_PBUS_SIZE)) /* new PBUS */
350 return 1;
351 } 326 }
352 if (WITHIN(reg, NV_PFB_OFFSET, NV_PFB_SIZE))
353 return 1;
354 if (WITHIN(reg, NV_PEXTDEV_OFFSET, NV_PEXTDEV_SIZE))
355 return 1;
356 if (WITHIN(reg, NV_PCRTC0_OFFSET, NV_PCRTC0_SIZE * 2))
357 return 1;
358 if (WITHIN(reg, NV_PRAMDAC0_OFFSET, NV_PRAMDAC0_SIZE * 2))
359 return 1;
360 if (dev_priv->VBIOS.pub.chip_version >= 0x17 && reg == 0x0070fff0)
361 return 1;
362 if (dev_priv->VBIOS.pub.chip_version == 0x51 &&
363 WITHIN(reg, NV_PRAMIN_OFFSET, NV_PRAMIN_SIZE))
364 return 1;
365 #undef WITHIN
366 327
367 NV_ERROR(dev, "========== unknown reg 0x%08X ==========\n", reg); 328 return 1;
368
369 return 0;
370} 329}
371 330
372static bool 331static bool
@@ -3196,16 +3155,25 @@ static int call_lvds_manufacturer_script(struct drm_device *dev, struct dcb_entr
3196 } 3155 }
3197#ifdef __powerpc__ 3156#ifdef __powerpc__
3198 /* Powerbook specific quirks */ 3157 /* Powerbook specific quirks */
3199 if (script == LVDS_RESET && ((dev->pci_device & 0xffff) == 0x0179 || (dev->pci_device & 0xffff) == 0x0329)) 3158 if ((dev->pci_device & 0xffff) == 0x0179 ||
3200 nv_write_tmds(dev, dcbent->or, 0, 0x02, 0x72); 3159 (dev->pci_device & 0xffff) == 0x0189 ||
3201 if ((dev->pci_device & 0xffff) == 0x0179 || (dev->pci_device & 0xffff) == 0x0189 || (dev->pci_device & 0xffff) == 0x0329) { 3160 (dev->pci_device & 0xffff) == 0x0329) {
3202 if (script == LVDS_PANEL_ON) { 3161 if (script == LVDS_RESET) {
3203 bios_wr32(bios, NV_PBUS_DEBUG_DUALHEAD_CTL, bios_rd32(bios, NV_PBUS_DEBUG_DUALHEAD_CTL) | (1 << 31)); 3162 nv_write_tmds(dev, dcbent->or, 0, 0x02, 0x72);
3204 bios_wr32(bios, NV_PCRTC_GPIO_EXT, bios_rd32(bios, NV_PCRTC_GPIO_EXT) | 1); 3163
3205 } 3164 } else if (script == LVDS_PANEL_ON) {
3206 if (script == LVDS_PANEL_OFF) { 3165 bios_wr32(bios, NV_PBUS_DEBUG_DUALHEAD_CTL,
3207 bios_wr32(bios, NV_PBUS_DEBUG_DUALHEAD_CTL, bios_rd32(bios, NV_PBUS_DEBUG_DUALHEAD_CTL) & ~(1 << 31)); 3166 bios_rd32(bios, NV_PBUS_DEBUG_DUALHEAD_CTL)
3208 bios_wr32(bios, NV_PCRTC_GPIO_EXT, bios_rd32(bios, NV_PCRTC_GPIO_EXT) & ~3); 3167 | (1 << 31));
3168 bios_wr32(bios, NV_PCRTC_GPIO_EXT,
3169 bios_rd32(bios, NV_PCRTC_GPIO_EXT) | 1);
3170
3171 } else if (script == LVDS_PANEL_OFF) {
3172 bios_wr32(bios, NV_PBUS_DEBUG_DUALHEAD_CTL,
3173 bios_rd32(bios, NV_PBUS_DEBUG_DUALHEAD_CTL)
3174 & ~(1 << 31));
3175 bios_wr32(bios, NV_PCRTC_GPIO_EXT,
3176 bios_rd32(bios, NV_PCRTC_GPIO_EXT) & ~3);
3209 } 3177 }
3210 } 3178 }
3211#endif 3179#endif
@@ -5434,52 +5402,49 @@ static bool
5434parse_dcb15_entry(struct drm_device *dev, struct parsed_dcb *dcb, 5402parse_dcb15_entry(struct drm_device *dev, struct parsed_dcb *dcb,
5435 uint32_t conn, uint32_t conf, struct dcb_entry *entry) 5403 uint32_t conn, uint32_t conf, struct dcb_entry *entry)
5436{ 5404{
5437 if (conn != 0xf0003f00 && conn != 0xf2247f10 && conn != 0xf2204001 && 5405 switch (conn & 0x0000000f) {
5438 conn != 0xf2204301 && conn != 0xf2204311 && conn != 0xf2208001 && 5406 case 0:
5439 conn != 0xf2244001 && conn != 0xf2244301 && conn != 0xf2244311 && 5407 entry->type = OUTPUT_ANALOG;
5440 conn != 0xf4204011 && conn != 0xf4208011 && conn != 0xf4248011 && 5408 break;
5441 conn != 0xf2045ff2 && conn != 0xf2045f14 && conn != 0xf207df14 && 5409 case 1:
5442 conn != 0xf2205004 && conn != 0xf2209004) { 5410 entry->type = OUTPUT_TV;
5443 NV_ERROR(dev, "Unknown DCB 1.5 entry, please report\n"); 5411 break;
5444 5412 case 2:
5445 /* cause output setting to fail for !TV, so message is seen */ 5413 case 3:
5446 if ((conn & 0xf) != 0x1)
5447 dcb->entries = 0;
5448
5449 return false;
5450 }
5451 /* most of the below is a "best guess" atm */
5452 entry->type = conn & 0xf;
5453 if (entry->type == 2)
5454 /* another way of specifying straps based lvds... */
5455 entry->type = OUTPUT_LVDS; 5414 entry->type = OUTPUT_LVDS;
5456 if (entry->type == 4) { /* digital */ 5415 break;
5457 if (conn & 0x10) 5416 case 4:
5458 entry->type = OUTPUT_LVDS; 5417 switch ((conn & 0x000000f0) >> 4) {
5459 else 5418 case 0:
5460 entry->type = OUTPUT_TMDS; 5419 entry->type = OUTPUT_TMDS;
5420 break;
5421 case 1:
5422 entry->type = OUTPUT_LVDS;
5423 break;
5424 default:
5425 NV_ERROR(dev, "Unknown DCB subtype 4/%d\n",
5426 (conn & 0x000000f0) >> 4);
5427 return false;
5428 }
5429 break;
5430 default:
5431 NV_ERROR(dev, "Unknown DCB type %d\n", conn & 0x0000000f);
5432 return false;
5461 } 5433 }
5462 /* what's in bits 5-13? could be some encoder maker thing, in tv case */ 5434
5463 entry->i2c_index = (conn >> 14) & 0xf; 5435 entry->i2c_index = (conn & 0x0003c000) >> 14;
5464 /* raw heads field is in range 0-1, so move to 1-2 */ 5436 entry->heads = ((conn & 0x001c0000) >> 18) + 1;
5465 entry->heads = ((conn >> 18) & 0x7) + 1; 5437 entry->or = entry->heads; /* same as heads, hopefully safe enough */
5466 entry->location = (conn >> 21) & 0xf; 5438 entry->location = (conn & 0x01e00000) >> 21;
5467 /* unused: entry->bus = (conn >> 25) & 0x7; */ 5439 entry->bus = (conn & 0x0e000000) >> 25;
5468 /* set or to be same as heads -- hopefully safe enough */
5469 entry->or = entry->heads;
5470 entry->duallink_possible = false; 5440 entry->duallink_possible = false;
5471 5441
5472 switch (entry->type) { 5442 switch (entry->type) {
5473 case OUTPUT_ANALOG: 5443 case OUTPUT_ANALOG:
5474 entry->crtconf.maxfreq = (conf & 0xffff) * 10; 5444 entry->crtconf.maxfreq = (conf & 0xffff) * 10;
5475 break; 5445 break;
5476 case OUTPUT_LVDS: 5446 case OUTPUT_TV:
5477 /* 5447 entry->tvconf.has_component_output = false;
5478 * This is probably buried in conn's unknown bits.
5479 * This will upset EDID-ful models, if they exist
5480 */
5481 entry->lvdsconf.use_straps_for_mode = true;
5482 entry->lvdsconf.use_power_scripts = true;
5483 break; 5448 break;
5484 case OUTPUT_TMDS: 5449 case OUTPUT_TMDS:
5485 /* 5450 /*
@@ -5488,8 +5453,12 @@ parse_dcb15_entry(struct drm_device *dev, struct parsed_dcb *dcb,
5488 */ 5453 */
5489 fabricate_vga_output(dcb, entry->i2c_index, entry->heads); 5454 fabricate_vga_output(dcb, entry->i2c_index, entry->heads);
5490 break; 5455 break;
5491 case OUTPUT_TV: 5456 case OUTPUT_LVDS:
5492 entry->tvconf.has_component_output = false; 5457 if ((conn & 0x00003f00) != 0x10)
5458 entry->lvdsconf.use_straps_for_mode = true;
5459 entry->lvdsconf.use_power_scripts = true;
5460 break;
5461 default:
5493 break; 5462 break;
5494 } 5463 }
5495 5464
@@ -5564,11 +5533,13 @@ void merge_like_dcb_entries(struct drm_device *dev, struct parsed_dcb *dcb)
5564 dcb->entries = newentries; 5533 dcb->entries = newentries;
5565} 5534}
5566 5535
5567static int parse_dcb_table(struct drm_device *dev, struct nvbios *bios, bool twoHeads) 5536static int
5537parse_dcb_table(struct drm_device *dev, struct nvbios *bios, bool twoHeads)
5568{ 5538{
5539 struct drm_nouveau_private *dev_priv = dev->dev_private;
5569 struct bios_parsed_dcb *bdcb = &bios->bdcb; 5540 struct bios_parsed_dcb *bdcb = &bios->bdcb;
5570 struct parsed_dcb *dcb; 5541 struct parsed_dcb *dcb;
5571 uint16_t dcbptr, i2ctabptr = 0; 5542 uint16_t dcbptr = 0, i2ctabptr = 0;
5572 uint8_t *dcbtable; 5543 uint8_t *dcbtable;
5573 uint8_t headerlen = 0x4, entries = DCB_MAX_NUM_ENTRIES; 5544 uint8_t headerlen = 0x4, entries = DCB_MAX_NUM_ENTRIES;
5574 bool configblock = true; 5545 bool configblock = true;
@@ -5579,16 +5550,18 @@ static int parse_dcb_table(struct drm_device *dev, struct nvbios *bios, bool two
5579 dcb->entries = 0; 5550 dcb->entries = 0;
5580 5551
5581 /* get the offset from 0x36 */ 5552 /* get the offset from 0x36 */
5582 dcbptr = ROM16(bios->data[0x36]); 5553 if (dev_priv->card_type > NV_04) {
5554 dcbptr = ROM16(bios->data[0x36]);
5555 if (dcbptr == 0x0000)
5556 NV_WARN(dev, "No output data (DCB) found in BIOS\n");
5557 }
5583 5558
5559 /* this situation likely means a really old card, pre DCB */
5584 if (dcbptr == 0x0) { 5560 if (dcbptr == 0x0) {
5585 NV_WARN(dev, "No output data (DCB) found in BIOS, " 5561 NV_INFO(dev, "Assuming a CRT output exists\n");
5586 "assuming a CRT output exists\n");
5587 /* this situation likely means a really old card, pre DCB */
5588 fabricate_vga_output(dcb, LEGACY_I2C_CRT, 1); 5562 fabricate_vga_output(dcb, LEGACY_I2C_CRT, 1);
5589 5563
5590 if (nv04_tv_identify(dev, 5564 if (nv04_tv_identify(dev, bios->legacy.i2c_indices.tv) >= 0)
5591 bios->legacy.i2c_indices.tv) >= 0)
5592 fabricate_tv_output(dcb, twoHeads); 5565 fabricate_tv_output(dcb, twoHeads);
5593 5566
5594 return 0; 5567 return 0;
diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c
index e342a418d434..db0ed4c13f98 100644
--- a/drivers/gpu/drm/nouveau/nouveau_bo.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
@@ -469,6 +469,8 @@ nouveau_bo_move_accel_cleanup(struct nouveau_channel *chan,
469 469
470 ret = ttm_bo_move_accel_cleanup(&nvbo->bo, fence, NULL, 470 ret = ttm_bo_move_accel_cleanup(&nvbo->bo, fence, NULL,
471 evict, no_wait, new_mem); 471 evict, no_wait, new_mem);
472 if (nvbo->channel && nvbo->channel != chan)
473 ret = nouveau_fence_wait(fence, NULL, false, false);
472 nouveau_fence_unref((void *)&fence); 474 nouveau_fence_unref((void *)&fence);
473 return ret; 475 return ret;
474} 476}
diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
index 5a10deb8bdbd..7e6d673f3a23 100644
--- a/drivers/gpu/drm/nouveau/nouveau_connector.c
+++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
@@ -24,9 +24,12 @@
24 * 24 *
25 */ 25 */
26 26
27#include <acpi/button.h>
28
27#include "drmP.h" 29#include "drmP.h"
28#include "drm_edid.h" 30#include "drm_edid.h"
29#include "drm_crtc_helper.h" 31#include "drm_crtc_helper.h"
32
30#include "nouveau_reg.h" 33#include "nouveau_reg.h"
31#include "nouveau_drv.h" 34#include "nouveau_drv.h"
32#include "nouveau_encoder.h" 35#include "nouveau_encoder.h"
@@ -83,14 +86,16 @@ nouveau_encoder_connector_get(struct nouveau_encoder *encoder)
83static void 86static void
84nouveau_connector_destroy(struct drm_connector *drm_connector) 87nouveau_connector_destroy(struct drm_connector *drm_connector)
85{ 88{
86 struct nouveau_connector *connector = nouveau_connector(drm_connector); 89 struct nouveau_connector *nv_connector =
87 struct drm_device *dev = connector->base.dev; 90 nouveau_connector(drm_connector);
91 struct drm_device *dev = nv_connector->base.dev;
88 92
89 NV_DEBUG_KMS(dev, "\n"); 93 NV_DEBUG_KMS(dev, "\n");
90 94
91 if (!connector) 95 if (!nv_connector)
92 return; 96 return;
93 97
98 kfree(nv_connector->edid);
94 drm_sysfs_connector_remove(drm_connector); 99 drm_sysfs_connector_remove(drm_connector);
95 drm_connector_cleanup(drm_connector); 100 drm_connector_cleanup(drm_connector);
96 kfree(drm_connector); 101 kfree(drm_connector);
@@ -233,10 +238,21 @@ nouveau_connector_detect(struct drm_connector *connector)
233 if (connector->connector_type == DRM_MODE_CONNECTOR_LVDS) 238 if (connector->connector_type == DRM_MODE_CONNECTOR_LVDS)
234 nv_encoder = find_encoder_by_type(connector, OUTPUT_LVDS); 239 nv_encoder = find_encoder_by_type(connector, OUTPUT_LVDS);
235 if (nv_encoder && nv_connector->native_mode) { 240 if (nv_encoder && nv_connector->native_mode) {
241#ifdef CONFIG_ACPI
242 if (!nouveau_ignorelid && !acpi_lid_open())
243 return connector_status_disconnected;
244#endif
236 nouveau_connector_set_encoder(connector, nv_encoder); 245 nouveau_connector_set_encoder(connector, nv_encoder);
237 return connector_status_connected; 246 return connector_status_connected;
238 } 247 }
239 248
249 /* Cleanup the previous EDID block. */
250 if (nv_connector->edid) {
251 drm_mode_connector_update_edid_property(connector, NULL);
252 kfree(nv_connector->edid);
253 nv_connector->edid = NULL;
254 }
255
240 i2c = nouveau_connector_ddc_detect(connector, &nv_encoder); 256 i2c = nouveau_connector_ddc_detect(connector, &nv_encoder);
241 if (i2c) { 257 if (i2c) {
242 nouveau_connector_ddc_prepare(connector, &flags); 258 nouveau_connector_ddc_prepare(connector, &flags);
@@ -247,7 +263,7 @@ nouveau_connector_detect(struct drm_connector *connector)
247 if (!nv_connector->edid) { 263 if (!nv_connector->edid) {
248 NV_ERROR(dev, "DDC responded, but no EDID for %s\n", 264 NV_ERROR(dev, "DDC responded, but no EDID for %s\n",
249 drm_get_connector_name(connector)); 265 drm_get_connector_name(connector));
250 return connector_status_disconnected; 266 goto detect_analog;
251 } 267 }
252 268
253 if (nv_encoder->dcb->type == OUTPUT_DP && 269 if (nv_encoder->dcb->type == OUTPUT_DP &&
@@ -281,6 +297,7 @@ nouveau_connector_detect(struct drm_connector *connector)
281 return connector_status_connected; 297 return connector_status_connected;
282 } 298 }
283 299
300detect_analog:
284 nv_encoder = find_encoder_by_type(connector, OUTPUT_ANALOG); 301 nv_encoder = find_encoder_by_type(connector, OUTPUT_ANALOG);
285 if (!nv_encoder) 302 if (!nv_encoder)
286 nv_encoder = find_encoder_by_type(connector, OUTPUT_TV); 303 nv_encoder = find_encoder_by_type(connector, OUTPUT_TV);
@@ -687,8 +704,12 @@ nouveau_connector_create_lvds(struct drm_device *dev,
687 */ 704 */
688 if (!nv_connector->edid && !nv_connector->native_mode && 705 if (!nv_connector->edid && !nv_connector->native_mode &&
689 !dev_priv->VBIOS.pub.fp_no_ddc) { 706 !dev_priv->VBIOS.pub.fp_no_ddc) {
690 nv_connector->edid = 707 struct edid *edid =
691 (struct edid *)nouveau_bios_embedded_edid(dev); 708 (struct edid *)nouveau_bios_embedded_edid(dev);
709 if (edid) {
710 nv_connector->edid = kmalloc(EDID_LENGTH, GFP_KERNEL);
711 *(nv_connector->edid) = *edid;
712 }
692 } 713 }
693 714
694 if (!nv_connector->edid) 715 if (!nv_connector->edid)
diff --git a/drivers/gpu/drm/nouveau/nouveau_dma.c b/drivers/gpu/drm/nouveau/nouveau_dma.c
index 7afbe8b40d51..50d9e67745af 100644
--- a/drivers/gpu/drm/nouveau/nouveau_dma.c
+++ b/drivers/gpu/drm/nouveau/nouveau_dma.c
@@ -126,47 +126,52 @@ OUT_RINGp(struct nouveau_channel *chan, const void *data, unsigned nr_dwords)
126 chan->dma.cur += nr_dwords; 126 chan->dma.cur += nr_dwords;
127} 127}
128 128
129static inline bool 129/* Fetch and adjust GPU GET pointer
130READ_GET(struct nouveau_channel *chan, uint32_t *get) 130 *
131 * Returns:
132 * value >= 0, the adjusted GET pointer
133 * -EINVAL if GET pointer currently outside main push buffer
134 * -EBUSY if timeout exceeded
135 */
136static inline int
137READ_GET(struct nouveau_channel *chan, uint32_t *prev_get, uint32_t *timeout)
131{ 138{
132 uint32_t val; 139 uint32_t val;
133 140
134 val = nvchan_rd32(chan, chan->user_get); 141 val = nvchan_rd32(chan, chan->user_get);
135 if (val < chan->pushbuf_base || 142
136 val > chan->pushbuf_base + (chan->dma.max << 2)) { 143 /* reset counter as long as GET is still advancing, this is
137 /* meaningless to dma_wait() except to know whether the 144 * to avoid misdetecting a GPU lockup if the GPU happens to
138 * GPU has stalled or not 145 * just be processing an operation that takes a long time
139 */ 146 */
140 *get = val; 147 if (val != *prev_get) {
141 return false; 148 *prev_get = val;
149 *timeout = 0;
150 }
151
152 if ((++*timeout & 0xff) == 0) {
153 DRM_UDELAY(1);
154 if (*timeout > 100000)
155 return -EBUSY;
142 } 156 }
143 157
144 *get = (val - chan->pushbuf_base) >> 2; 158 if (val < chan->pushbuf_base ||
145 return true; 159 val > chan->pushbuf_base + (chan->dma.max << 2))
160 return -EINVAL;
161
162 return (val - chan->pushbuf_base) >> 2;
146} 163}
147 164
148int 165int
149nouveau_dma_wait(struct nouveau_channel *chan, int size) 166nouveau_dma_wait(struct nouveau_channel *chan, int size)
150{ 167{
151 uint32_t get, prev_get = 0, cnt = 0; 168 uint32_t prev_get = 0, cnt = 0;
152 bool get_valid; 169 int get;
153 170
154 while (chan->dma.free < size) { 171 while (chan->dma.free < size) {
155 /* reset counter as long as GET is still advancing, this is 172 get = READ_GET(chan, &prev_get, &cnt);
156 * to avoid misdetecting a GPU lockup if the GPU happens to 173 if (unlikely(get == -EBUSY))
157 * just be processing an operation that takes a long time 174 return -EBUSY;
158 */
159 get_valid = READ_GET(chan, &get);
160 if (get != prev_get) {
161 prev_get = get;
162 cnt = 0;
163 }
164
165 if ((++cnt & 0xff) == 0) {
166 DRM_UDELAY(1);
167 if (cnt > 100000)
168 return -EBUSY;
169 }
170 175
171 /* loop until we have a usable GET pointer. the value 176 /* loop until we have a usable GET pointer. the value
172 * we read from the GPU may be outside the main ring if 177 * we read from the GPU may be outside the main ring if
@@ -177,7 +182,7 @@ nouveau_dma_wait(struct nouveau_channel *chan, int size)
177 * from the SKIPS area, so the code below doesn't have to deal 182 * from the SKIPS area, so the code below doesn't have to deal
178 * with some fun corner cases. 183 * with some fun corner cases.
179 */ 184 */
180 if (!get_valid || get < NOUVEAU_DMA_SKIPS) 185 if (unlikely(get == -EINVAL) || get < NOUVEAU_DMA_SKIPS)
181 continue; 186 continue;
182 187
183 if (get <= chan->dma.cur) { 188 if (get <= chan->dma.cur) {
@@ -203,6 +208,19 @@ nouveau_dma_wait(struct nouveau_channel *chan, int size)
203 * after processing the currently pending commands. 208 * after processing the currently pending commands.
204 */ 209 */
205 OUT_RING(chan, chan->pushbuf_base | 0x20000000); 210 OUT_RING(chan, chan->pushbuf_base | 0x20000000);
211
212 /* wait for GET to depart from the skips area.
213 * prevents writing GET==PUT and causing a race
214 * condition that causes us to think the GPU is
215 * idle when it's not.
216 */
217 do {
218 get = READ_GET(chan, &prev_get, &cnt);
219 if (unlikely(get == -EBUSY))
220 return -EBUSY;
221 if (unlikely(get == -EINVAL))
222 continue;
223 } while (get <= NOUVEAU_DMA_SKIPS);
206 WRITE_PUT(NOUVEAU_DMA_SKIPS); 224 WRITE_PUT(NOUVEAU_DMA_SKIPS);
207 225
208 /* we're now submitting commands at the start of 226 /* we're now submitting commands at the start of
diff --git a/drivers/gpu/drm/nouveau/nouveau_dp.c b/drivers/gpu/drm/nouveau/nouveau_dp.c
index 9e2926c48579..dd4937224220 100644
--- a/drivers/gpu/drm/nouveau/nouveau_dp.c
+++ b/drivers/gpu/drm/nouveau/nouveau_dp.c
@@ -490,7 +490,8 @@ nouveau_dp_auxch(struct nouveau_i2c_chan *auxch, int cmd, int addr,
490 if (!nv_wait(NV50_AUXCH_CTRL(index), 0x00010000, 0x00000000)) { 490 if (!nv_wait(NV50_AUXCH_CTRL(index), 0x00010000, 0x00000000)) {
491 NV_ERROR(dev, "expected bit 16 == 0, got 0x%08x\n", 491 NV_ERROR(dev, "expected bit 16 == 0, got 0x%08x\n",
492 nv_rd32(dev, NV50_AUXCH_CTRL(index))); 492 nv_rd32(dev, NV50_AUXCH_CTRL(index)));
493 return -EBUSY; 493 ret = -EBUSY;
494 goto out;
494 } 495 }
495 496
496 udelay(400); 497 udelay(400);
@@ -501,6 +502,11 @@ nouveau_dp_auxch(struct nouveau_i2c_chan *auxch, int cmd, int addr,
501 break; 502 break;
502 } 503 }
503 504
505 if ((stat & NV50_AUXCH_STAT_COUNT) != data_nr) {
506 ret = -EREMOTEIO;
507 goto out;
508 }
509
504 if (cmd & 1) { 510 if (cmd & 1) {
505 for (i = 0; i < 4; i++) { 511 for (i = 0; i < 4; i++) {
506 data32[i] = nv_rd32(dev, NV50_AUXCH_DATA_IN(index, i)); 512 data32[i] = nv_rd32(dev, NV50_AUXCH_DATA_IN(index, i));
diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.c b/drivers/gpu/drm/nouveau/nouveau_drv.c
index 06eb993e0883..343ab7f17ccc 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drv.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drv.c
@@ -71,6 +71,10 @@ MODULE_PARM_DESC(uscript_tmds, "TMDS output script table ID (>=GeForce 8)");
71int nouveau_uscript_tmds = -1; 71int nouveau_uscript_tmds = -1;
72module_param_named(uscript_tmds, nouveau_uscript_tmds, int, 0400); 72module_param_named(uscript_tmds, nouveau_uscript_tmds, int, 0400);
73 73
74MODULE_PARM_DESC(ignorelid, "Ignore ACPI lid status");
75int nouveau_ignorelid = 0;
76module_param_named(ignorelid, nouveau_ignorelid, int, 0400);
77
74MODULE_PARM_DESC(tv_norm, "Default TV norm.\n" 78MODULE_PARM_DESC(tv_norm, "Default TV norm.\n"
75 "\t\tSupported: PAL, PAL-M, PAL-N, PAL-Nc, NTSC-M, NTSC-J,\n" 79 "\t\tSupported: PAL, PAL-M, PAL-N, PAL-Nc, NTSC-M, NTSC-J,\n"
76 "\t\t\thd480i, hd480p, hd576i, hd576p, hd720p, hd1080i.\n" 80 "\t\t\thd480i, hd480p, hd576i, hd576p, hd720p, hd1080i.\n"
diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h
index 026419fe8791..6b9690418bc7 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drv.h
+++ b/drivers/gpu/drm/nouveau/nouveau_drv.h
@@ -509,6 +509,8 @@ struct drm_nouveau_private {
509 void __iomem *ramin; 509 void __iomem *ramin;
510 uint32_t ramin_size; 510 uint32_t ramin_size;
511 511
512 struct nouveau_bo *vga_ram;
513
512 struct workqueue_struct *wq; 514 struct workqueue_struct *wq;
513 struct work_struct irq_work; 515 struct work_struct irq_work;
514 516
@@ -675,6 +677,7 @@ extern char *nouveau_tv_norm;
675extern int nouveau_reg_debug; 677extern int nouveau_reg_debug;
676extern char *nouveau_vbios; 678extern char *nouveau_vbios;
677extern int nouveau_ctxfw; 679extern int nouveau_ctxfw;
680extern int nouveau_ignorelid;
678 681
679/* nouveau_state.c */ 682/* nouveau_state.c */
680extern void nouveau_preclose(struct drm_device *dev, struct drm_file *); 683extern void nouveau_preclose(struct drm_device *dev, struct drm_file *);
diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
index 2009db2426c3..6ac804b0c9f9 100644
--- a/drivers/gpu/drm/nouveau/nouveau_gem.c
+++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
@@ -321,6 +321,7 @@ retry:
321 else { 321 else {
322 NV_ERROR(dev, "invalid valid domains: 0x%08x\n", 322 NV_ERROR(dev, "invalid valid domains: 0x%08x\n",
323 b->valid_domains); 323 b->valid_domains);
324 list_add_tail(&nvbo->entry, &op->both_list);
324 validate_fini(op, NULL); 325 validate_fini(op, NULL);
325 return -EINVAL; 326 return -EINVAL;
326 } 327 }
@@ -466,13 +467,14 @@ u_memcpya(uint64_t user, unsigned nmemb, unsigned size)
466static int 467static int
467nouveau_gem_pushbuf_reloc_apply(struct nouveau_channel *chan, int nr_bo, 468nouveau_gem_pushbuf_reloc_apply(struct nouveau_channel *chan, int nr_bo,
468 struct drm_nouveau_gem_pushbuf_bo *bo, 469 struct drm_nouveau_gem_pushbuf_bo *bo,
469 int nr_relocs, uint64_t ptr_relocs, 470 unsigned nr_relocs, uint64_t ptr_relocs,
470 int nr_dwords, int first_dword, 471 unsigned nr_dwords, unsigned first_dword,
471 uint32_t *pushbuf, bool is_iomem) 472 uint32_t *pushbuf, bool is_iomem)
472{ 473{
473 struct drm_nouveau_gem_pushbuf_reloc *reloc = NULL; 474 struct drm_nouveau_gem_pushbuf_reloc *reloc = NULL;
474 struct drm_device *dev = chan->dev; 475 struct drm_device *dev = chan->dev;
475 int ret = 0, i; 476 int ret = 0;
477 unsigned i;
476 478
477 reloc = u_memcpya(ptr_relocs, nr_relocs, sizeof(*reloc)); 479 reloc = u_memcpya(ptr_relocs, nr_relocs, sizeof(*reloc));
478 if (IS_ERR(reloc)) 480 if (IS_ERR(reloc))
@@ -667,6 +669,18 @@ nouveau_gem_ioctl_pushbuf_call(struct drm_device *dev, void *data,
667 } 669 }
668 pbbo = nouveau_gem_object(gem); 670 pbbo = nouveau_gem_object(gem);
669 671
672 if ((req->offset & 3) || req->nr_dwords < 2 ||
673 (unsigned long)req->offset > (unsigned long)pbbo->bo.mem.size ||
674 (unsigned long)req->nr_dwords >
675 ((unsigned long)(pbbo->bo.mem.size - req->offset ) >> 2)) {
676 NV_ERROR(dev, "pb call misaligned or out of bounds: "
677 "%d + %d * 4 > %ld\n",
678 req->offset, req->nr_dwords, pbbo->bo.mem.size);
679 ret = -EINVAL;
680 drm_gem_object_unreference(gem);
681 goto out;
682 }
683
670 ret = ttm_bo_reserve(&pbbo->bo, false, false, true, 684 ret = ttm_bo_reserve(&pbbo->bo, false, false, true,
671 chan->fence.sequence); 685 chan->fence.sequence);
672 if (ret) { 686 if (ret) {
diff --git a/drivers/gpu/drm/nouveau/nouveau_irq.c b/drivers/gpu/drm/nouveau/nouveau_irq.c
index 919a619ca7fa..3b9bad66162a 100644
--- a/drivers/gpu/drm/nouveau/nouveau_irq.c
+++ b/drivers/gpu/drm/nouveau/nouveau_irq.c
@@ -483,6 +483,13 @@ nouveau_pgraph_intr_error(struct drm_device *dev, uint32_t nsource)
483 if (nsource & NV03_PGRAPH_NSOURCE_ILLEGAL_MTHD) { 483 if (nsource & NV03_PGRAPH_NSOURCE_ILLEGAL_MTHD) {
484 if (nouveau_pgraph_intr_swmthd(dev, &trap)) 484 if (nouveau_pgraph_intr_swmthd(dev, &trap))
485 unhandled = 1; 485 unhandled = 1;
486 } else if (nsource & NV03_PGRAPH_NSOURCE_DMA_VTX_PROTECTION) {
487 uint32_t v = nv_rd32(dev, 0x402000);
488 nv_wr32(dev, 0x402000, v);
489
490 /* dump the error anyway for now: it's useful for
491 Gallium development */
492 unhandled = 1;
486 } else { 493 } else {
487 unhandled = 1; 494 unhandled = 1;
488 } 495 }
diff --git a/drivers/gpu/drm/nouveau/nouveau_mem.c b/drivers/gpu/drm/nouveau/nouveau_mem.c
index fb9bdd6edf1f..8f3a12f614ed 100644
--- a/drivers/gpu/drm/nouveau/nouveau_mem.c
+++ b/drivers/gpu/drm/nouveau/nouveau_mem.c
@@ -383,9 +383,8 @@ void nouveau_mem_close(struct drm_device *dev)
383{ 383{
384 struct drm_nouveau_private *dev_priv = dev->dev_private; 384 struct drm_nouveau_private *dev_priv = dev->dev_private;
385 385
386 if (dev_priv->ttm.bdev.man[TTM_PL_PRIV0].has_type) 386 nouveau_bo_unpin(dev_priv->vga_ram);
387 ttm_bo_clean_mm(&dev_priv->ttm.bdev, TTM_PL_PRIV0); 387 nouveau_bo_ref(NULL, &dev_priv->vga_ram);
388 ttm_bo_clean_mm(&dev_priv->ttm.bdev, TTM_PL_VRAM);
389 388
390 ttm_bo_device_release(&dev_priv->ttm.bdev); 389 ttm_bo_device_release(&dev_priv->ttm.bdev);
391 390
@@ -622,6 +621,15 @@ nouveau_mem_init(struct drm_device *dev)
622 return ret; 621 return ret;
623 } 622 }
624 623
624 ret = nouveau_bo_new(dev, NULL, 256*1024, 0, TTM_PL_FLAG_VRAM,
625 0, 0, true, true, &dev_priv->vga_ram);
626 if (ret == 0)
627 ret = nouveau_bo_pin(dev_priv->vga_ram, TTM_PL_FLAG_VRAM);
628 if (ret) {
629 NV_WARN(dev, "failed to reserve VGA memory\n");
630 nouveau_bo_ref(NULL, &dev_priv->vga_ram);
631 }
632
625 /* GART */ 633 /* GART */
626#if !defined(__powerpc__) && !defined(__ia64__) 634#if !defined(__powerpc__) && !defined(__ia64__)
627 if (drm_device_is_agp(dev) && dev->agp) { 635 if (drm_device_is_agp(dev) && dev->agp) {
@@ -653,6 +661,7 @@ nouveau_mem_init(struct drm_device *dev)
653 dev_priv->fb_mtrr = drm_mtrr_add(drm_get_resource_start(dev, 1), 661 dev_priv->fb_mtrr = drm_mtrr_add(drm_get_resource_start(dev, 1),
654 drm_get_resource_len(dev, 1), 662 drm_get_resource_len(dev, 1),
655 DRM_MTRR_WC); 663 DRM_MTRR_WC);
664
656 return 0; 665 return 0;
657} 666}
658 667
diff --git a/drivers/gpu/drm/nouveau/nouveau_state.c b/drivers/gpu/drm/nouveau/nouveau_state.c
index 09b9a46dfc0e..f2d0187ba152 100644
--- a/drivers/gpu/drm/nouveau/nouveau_state.c
+++ b/drivers/gpu/drm/nouveau/nouveau_state.c
@@ -525,6 +525,7 @@ static void nouveau_card_takedown(struct drm_device *dev)
525 engine->mc.takedown(dev); 525 engine->mc.takedown(dev);
526 526
527 mutex_lock(&dev->struct_mutex); 527 mutex_lock(&dev->struct_mutex);
528 ttm_bo_clean_mm(&dev_priv->ttm.bdev, TTM_PL_VRAM);
528 ttm_bo_clean_mm(&dev_priv->ttm.bdev, TTM_PL_TT); 529 ttm_bo_clean_mm(&dev_priv->ttm.bdev, TTM_PL_TT);
529 mutex_unlock(&dev->struct_mutex); 530 mutex_unlock(&dev->struct_mutex);
530 nouveau_sgdma_takedown(dev); 531 nouveau_sgdma_takedown(dev);
diff --git a/drivers/gpu/drm/nouveau/nv04_instmem.c b/drivers/gpu/drm/nouveau/nv04_instmem.c
index a20c206625a2..a3b9563a6f60 100644
--- a/drivers/gpu/drm/nouveau/nv04_instmem.c
+++ b/drivers/gpu/drm/nouveau/nv04_instmem.c
@@ -30,7 +30,7 @@ nv04_instmem_determine_amount(struct drm_device *dev)
30 * of vram. For now, only reserve a small piece until we know 30 * of vram. For now, only reserve a small piece until we know
31 * more about what each chipset requires. 31 * more about what each chipset requires.
32 */ 32 */
33 switch (dev_priv->chipset & 0xf0) { 33 switch (dev_priv->chipset) {
34 case 0x40: 34 case 0x40:
35 case 0x47: 35 case 0x47:
36 case 0x49: 36 case 0x49:
diff --git a/drivers/gpu/drm/nouveau/nv50_crtc.c b/drivers/gpu/drm/nouveau/nv50_crtc.c
index 118d3285fd8c..40b7360841f8 100644
--- a/drivers/gpu/drm/nouveau/nv50_crtc.c
+++ b/drivers/gpu/drm/nouveau/nv50_crtc.c
@@ -432,6 +432,7 @@ nv50_crtc_prepare(struct drm_crtc *crtc)
432 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); 432 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc);
433 struct drm_device *dev = crtc->dev; 433 struct drm_device *dev = crtc->dev;
434 struct drm_encoder *encoder; 434 struct drm_encoder *encoder;
435 uint32_t dac = 0, sor = 0;
435 436
436 NV_DEBUG_KMS(dev, "index %d\n", nv_crtc->index); 437 NV_DEBUG_KMS(dev, "index %d\n", nv_crtc->index);
437 438
@@ -439,9 +440,28 @@ nv50_crtc_prepare(struct drm_crtc *crtc)
439 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) { 440 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {
440 struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder); 441 struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder);
441 442
442 if (drm_helper_encoder_in_use(encoder)) 443 if (!drm_helper_encoder_in_use(encoder))
443 continue; 444 continue;
444 445
446 if (nv_encoder->dcb->type == OUTPUT_ANALOG ||
447 nv_encoder->dcb->type == OUTPUT_TV)
448 dac |= (1 << nv_encoder->or);
449 else
450 sor |= (1 << nv_encoder->or);
451 }
452
453 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {
454 struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder);
455
456 if (nv_encoder->dcb->type == OUTPUT_ANALOG ||
457 nv_encoder->dcb->type == OUTPUT_TV) {
458 if (dac & (1 << nv_encoder->or))
459 continue;
460 } else {
461 if (sor & (1 << nv_encoder->or))
462 continue;
463 }
464
445 nv_encoder->disconnect(nv_encoder); 465 nv_encoder->disconnect(nv_encoder);
446 } 466 }
447 467
diff --git a/drivers/gpu/drm/nouveau/nv50_fifo.c b/drivers/gpu/drm/nouveau/nv50_fifo.c
index 39caf167587d..32b244bcb482 100644
--- a/drivers/gpu/drm/nouveau/nv50_fifo.c
+++ b/drivers/gpu/drm/nouveau/nv50_fifo.c
@@ -272,7 +272,7 @@ nv50_fifo_create_context(struct nouveau_channel *chan)
272 return ret; 272 return ret;
273 ramfc = chan->ramfc->gpuobj; 273 ramfc = chan->ramfc->gpuobj;
274 274
275 ret = nouveau_gpuobj_new_ref(dev, chan, NULL, 0, 4096, 256, 275 ret = nouveau_gpuobj_new_ref(dev, chan, NULL, 0, 4096, 1024,
276 0, &chan->cache); 276 0, &chan->cache);
277 if (ret) 277 if (ret)
278 return ret; 278 return ret;
diff --git a/drivers/gpu/drm/nouveau/nv50_graph.c b/drivers/gpu/drm/nouveau/nv50_graph.c
index ca79f32be44c..20319e59d368 100644
--- a/drivers/gpu/drm/nouveau/nv50_graph.c
+++ b/drivers/gpu/drm/nouveau/nv50_graph.c
@@ -84,7 +84,7 @@ nv50_graph_init_regs__nv(struct drm_device *dev)
84 nv_wr32(dev, 0x400804, 0xc0000000); 84 nv_wr32(dev, 0x400804, 0xc0000000);
85 nv_wr32(dev, 0x406800, 0xc0000000); 85 nv_wr32(dev, 0x406800, 0xc0000000);
86 nv_wr32(dev, 0x400c04, 0xc0000000); 86 nv_wr32(dev, 0x400c04, 0xc0000000);
87 nv_wr32(dev, 0x401804, 0xc0000000); 87 nv_wr32(dev, 0x401800, 0xc0000000);
88 nv_wr32(dev, 0x405018, 0xc0000000); 88 nv_wr32(dev, 0x405018, 0xc0000000);
89 nv_wr32(dev, 0x402000, 0xc0000000); 89 nv_wr32(dev, 0x402000, 0xc0000000);
90 90
@@ -282,6 +282,7 @@ nv50_graph_unload_context(struct drm_device *dev)
282 return 0; 282 return 0;
283 inst &= NV50_PGRAPH_CTXCTL_CUR_INSTANCE; 283 inst &= NV50_PGRAPH_CTXCTL_CUR_INSTANCE;
284 284
285 nouveau_wait_for_idle(dev);
285 nv_wr32(dev, 0x400500, fifo & ~1); 286 nv_wr32(dev, 0x400500, fifo & ~1);
286 nv_wr32(dev, 0x400784, inst); 287 nv_wr32(dev, 0x400784, inst);
287 nv_wr32(dev, 0x400824, nv_rd32(dev, 0x400824) | 0x20); 288 nv_wr32(dev, 0x400824, nv_rd32(dev, 0x400824) | 0x20);
diff --git a/drivers/gpu/drm/nouveau/nv50_sor.c b/drivers/gpu/drm/nouveau/nv50_sor.c
index e395c16d30f5..ecf1936b8224 100644
--- a/drivers/gpu/drm/nouveau/nv50_sor.c
+++ b/drivers/gpu/drm/nouveau/nv50_sor.c
@@ -90,11 +90,24 @@ nv50_sor_dpms(struct drm_encoder *encoder, int mode)
90{ 90{
91 struct drm_device *dev = encoder->dev; 91 struct drm_device *dev = encoder->dev;
92 struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder); 92 struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder);
93 struct drm_encoder *enc;
93 uint32_t val; 94 uint32_t val;
94 int or = nv_encoder->or; 95 int or = nv_encoder->or;
95 96
96 NV_DEBUG_KMS(dev, "or %d mode %d\n", or, mode); 97 NV_DEBUG_KMS(dev, "or %d mode %d\n", or, mode);
97 98
99 nv_encoder->last_dpms = mode;
100 list_for_each_entry(enc, &dev->mode_config.encoder_list, head) {
101 struct nouveau_encoder *nvenc = nouveau_encoder(enc);
102
103 if (nvenc == nv_encoder ||
104 nvenc->dcb->or != nv_encoder->dcb->or)
105 continue;
106
107 if (nvenc->last_dpms == DRM_MODE_DPMS_ON)
108 return;
109 }
110
98 /* wait for it to be done */ 111 /* wait for it to be done */
99 if (!nv_wait(NV50_PDISPLAY_SOR_DPMS_CTRL(or), 112 if (!nv_wait(NV50_PDISPLAY_SOR_DPMS_CTRL(or),
100 NV50_PDISPLAY_SOR_DPMS_CTRL_PENDING, 0)) { 113 NV50_PDISPLAY_SOR_DPMS_CTRL_PENDING, 0)) {
diff --git a/drivers/gpu/drm/radeon/atom.c b/drivers/gpu/drm/radeon/atom.c
index 388140a7e651..e3b44562d265 100644
--- a/drivers/gpu/drm/radeon/atom.c
+++ b/drivers/gpu/drm/radeon/atom.c
@@ -246,6 +246,9 @@ static uint32_t atom_get_src_int(atom_exec_context *ctx, uint8_t attr,
246 case ATOM_WS_ATTRIBUTES: 246 case ATOM_WS_ATTRIBUTES:
247 val = gctx->io_attr; 247 val = gctx->io_attr;
248 break; 248 break;
249 case ATOM_WS_REGPTR:
250 val = gctx->reg_block;
251 break;
249 default: 252 default:
250 val = ctx->ws[idx]; 253 val = ctx->ws[idx];
251 } 254 }
@@ -385,6 +388,32 @@ static uint32_t atom_get_src(atom_exec_context *ctx, uint8_t attr, int *ptr)
385 return atom_get_src_int(ctx, attr, ptr, NULL, 1); 388 return atom_get_src_int(ctx, attr, ptr, NULL, 1);
386} 389}
387 390
391static uint32_t atom_get_src_direct(atom_exec_context *ctx, uint8_t align, int *ptr)
392{
393 uint32_t val = 0xCDCDCDCD;
394
395 switch (align) {
396 case ATOM_SRC_DWORD:
397 val = U32(*ptr);
398 (*ptr) += 4;
399 break;
400 case ATOM_SRC_WORD0:
401 case ATOM_SRC_WORD8:
402 case ATOM_SRC_WORD16:
403 val = U16(*ptr);
404 (*ptr) += 2;
405 break;
406 case ATOM_SRC_BYTE0:
407 case ATOM_SRC_BYTE8:
408 case ATOM_SRC_BYTE16:
409 case ATOM_SRC_BYTE24:
410 val = U8(*ptr);
411 (*ptr)++;
412 break;
413 }
414 return val;
415}
416
388static uint32_t atom_get_dst(atom_exec_context *ctx, int arg, uint8_t attr, 417static uint32_t atom_get_dst(atom_exec_context *ctx, int arg, uint8_t attr,
389 int *ptr, uint32_t *saved, int print) 418 int *ptr, uint32_t *saved, int print)
390{ 419{
@@ -482,6 +511,9 @@ static void atom_put_dst(atom_exec_context *ctx, int arg, uint8_t attr,
482 case ATOM_WS_ATTRIBUTES: 511 case ATOM_WS_ATTRIBUTES:
483 gctx->io_attr = val; 512 gctx->io_attr = val;
484 break; 513 break;
514 case ATOM_WS_REGPTR:
515 gctx->reg_block = val;
516 break;
485 default: 517 default:
486 ctx->ws[idx] = val; 518 ctx->ws[idx] = val;
487 } 519 }
@@ -677,7 +709,7 @@ static void atom_op_mask(atom_exec_context *ctx, int *ptr, int arg)
677 SDEBUG(" dst: "); 709 SDEBUG(" dst: ");
678 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1); 710 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
679 SDEBUG(" src1: "); 711 SDEBUG(" src1: ");
680 src1 = atom_get_src(ctx, attr, ptr); 712 src1 = atom_get_src_direct(ctx, ((attr >> 3) & 7), ptr);
681 SDEBUG(" src2: "); 713 SDEBUG(" src2: ");
682 src2 = atom_get_src(ctx, attr, ptr); 714 src2 = atom_get_src(ctx, attr, ptr);
683 dst &= src1; 715 dst &= src1;
@@ -809,6 +841,38 @@ static void atom_op_setregblock(atom_exec_context *ctx, int *ptr, int arg)
809 SDEBUG(" base: 0x%04X\n", ctx->ctx->reg_block); 841 SDEBUG(" base: 0x%04X\n", ctx->ctx->reg_block);
810} 842}
811 843
844static void atom_op_shift_left(atom_exec_context *ctx, int *ptr, int arg)
845{
846 uint8_t attr = U8((*ptr)++), shift;
847 uint32_t saved, dst;
848 int dptr = *ptr;
849 attr &= 0x38;
850 attr |= atom_def_dst[attr >> 3] << 6;
851 SDEBUG(" dst: ");
852 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
853 shift = atom_get_src_direct(ctx, ATOM_SRC_BYTE0, ptr);
854 SDEBUG(" shift: %d\n", shift);
855 dst <<= shift;
856 SDEBUG(" dst: ");
857 atom_put_dst(ctx, arg, attr, &dptr, dst, saved);
858}
859
860static void atom_op_shift_right(atom_exec_context *ctx, int *ptr, int arg)
861{
862 uint8_t attr = U8((*ptr)++), shift;
863 uint32_t saved, dst;
864 int dptr = *ptr;
865 attr &= 0x38;
866 attr |= atom_def_dst[attr >> 3] << 6;
867 SDEBUG(" dst: ");
868 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
869 shift = atom_get_src_direct(ctx, ATOM_SRC_BYTE0, ptr);
870 SDEBUG(" shift: %d\n", shift);
871 dst >>= shift;
872 SDEBUG(" dst: ");
873 atom_put_dst(ctx, arg, attr, &dptr, dst, saved);
874}
875
812static void atom_op_shl(atom_exec_context *ctx, int *ptr, int arg) 876static void atom_op_shl(atom_exec_context *ctx, int *ptr, int arg)
813{ 877{
814 uint8_t attr = U8((*ptr)++), shift; 878 uint8_t attr = U8((*ptr)++), shift;
@@ -818,7 +882,7 @@ static void atom_op_shl(atom_exec_context *ctx, int *ptr, int arg)
818 attr |= atom_def_dst[attr >> 3] << 6; 882 attr |= atom_def_dst[attr >> 3] << 6;
819 SDEBUG(" dst: "); 883 SDEBUG(" dst: ");
820 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1); 884 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
821 shift = U8((*ptr)++); 885 shift = atom_get_src(ctx, attr, ptr);
822 SDEBUG(" shift: %d\n", shift); 886 SDEBUG(" shift: %d\n", shift);
823 dst <<= shift; 887 dst <<= shift;
824 SDEBUG(" dst: "); 888 SDEBUG(" dst: ");
@@ -834,7 +898,7 @@ static void atom_op_shr(atom_exec_context *ctx, int *ptr, int arg)
834 attr |= atom_def_dst[attr >> 3] << 6; 898 attr |= atom_def_dst[attr >> 3] << 6;
835 SDEBUG(" dst: "); 899 SDEBUG(" dst: ");
836 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1); 900 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
837 shift = U8((*ptr)++); 901 shift = atom_get_src(ctx, attr, ptr);
838 SDEBUG(" shift: %d\n", shift); 902 SDEBUG(" shift: %d\n", shift);
839 dst >>= shift; 903 dst >>= shift;
840 SDEBUG(" dst: "); 904 SDEBUG(" dst: ");
@@ -937,18 +1001,18 @@ static struct {
937 atom_op_or, ATOM_ARG_FB}, { 1001 atom_op_or, ATOM_ARG_FB}, {
938 atom_op_or, ATOM_ARG_PLL}, { 1002 atom_op_or, ATOM_ARG_PLL}, {
939 atom_op_or, ATOM_ARG_MC}, { 1003 atom_op_or, ATOM_ARG_MC}, {
940 atom_op_shl, ATOM_ARG_REG}, { 1004 atom_op_shift_left, ATOM_ARG_REG}, {
941 atom_op_shl, ATOM_ARG_PS}, { 1005 atom_op_shift_left, ATOM_ARG_PS}, {
942 atom_op_shl, ATOM_ARG_WS}, { 1006 atom_op_shift_left, ATOM_ARG_WS}, {
943 atom_op_shl, ATOM_ARG_FB}, { 1007 atom_op_shift_left, ATOM_ARG_FB}, {
944 atom_op_shl, ATOM_ARG_PLL}, { 1008 atom_op_shift_left, ATOM_ARG_PLL}, {
945 atom_op_shl, ATOM_ARG_MC}, { 1009 atom_op_shift_left, ATOM_ARG_MC}, {
946 atom_op_shr, ATOM_ARG_REG}, { 1010 atom_op_shift_right, ATOM_ARG_REG}, {
947 atom_op_shr, ATOM_ARG_PS}, { 1011 atom_op_shift_right, ATOM_ARG_PS}, {
948 atom_op_shr, ATOM_ARG_WS}, { 1012 atom_op_shift_right, ATOM_ARG_WS}, {
949 atom_op_shr, ATOM_ARG_FB}, { 1013 atom_op_shift_right, ATOM_ARG_FB}, {
950 atom_op_shr, ATOM_ARG_PLL}, { 1014 atom_op_shift_right, ATOM_ARG_PLL}, {
951 atom_op_shr, ATOM_ARG_MC}, { 1015 atom_op_shift_right, ATOM_ARG_MC}, {
952 atom_op_mul, ATOM_ARG_REG}, { 1016 atom_op_mul, ATOM_ARG_REG}, {
953 atom_op_mul, ATOM_ARG_PS}, { 1017 atom_op_mul, ATOM_ARG_PS}, {
954 atom_op_mul, ATOM_ARG_WS}, { 1018 atom_op_mul, ATOM_ARG_WS}, {
@@ -1058,8 +1122,6 @@ static void atom_execute_table_locked(struct atom_context *ctx, int index, uint3
1058 1122
1059 SDEBUG(">> execute %04X (len %d, WS %d, PS %d)\n", base, len, ws, ps); 1123 SDEBUG(">> execute %04X (len %d, WS %d, PS %d)\n", base, len, ws, ps);
1060 1124
1061 /* reset reg block */
1062 ctx->reg_block = 0;
1063 ectx.ctx = ctx; 1125 ectx.ctx = ctx;
1064 ectx.ps_shift = ps / 4; 1126 ectx.ps_shift = ps / 4;
1065 ectx.start = base; 1127 ectx.start = base;
@@ -1096,6 +1158,12 @@ static void atom_execute_table_locked(struct atom_context *ctx, int index, uint3
1096void atom_execute_table(struct atom_context *ctx, int index, uint32_t * params) 1158void atom_execute_table(struct atom_context *ctx, int index, uint32_t * params)
1097{ 1159{
1098 mutex_lock(&ctx->mutex); 1160 mutex_lock(&ctx->mutex);
1161 /* reset reg block */
1162 ctx->reg_block = 0;
1163 /* reset fb window */
1164 ctx->fb_base = 0;
1165 /* reset io mode */
1166 ctx->io_mode = ATOM_IO_MM;
1099 atom_execute_table_locked(ctx, index, params); 1167 atom_execute_table_locked(ctx, index, params);
1100 mutex_unlock(&ctx->mutex); 1168 mutex_unlock(&ctx->mutex);
1101} 1169}
diff --git a/drivers/gpu/drm/radeon/atom.h b/drivers/gpu/drm/radeon/atom.h
index 47fd943f6d14..bc73781423a1 100644
--- a/drivers/gpu/drm/radeon/atom.h
+++ b/drivers/gpu/drm/radeon/atom.h
@@ -91,6 +91,7 @@
91#define ATOM_WS_AND_MASK 0x45 91#define ATOM_WS_AND_MASK 0x45
92#define ATOM_WS_FB_WINDOW 0x46 92#define ATOM_WS_FB_WINDOW 0x46
93#define ATOM_WS_ATTRIBUTES 0x47 93#define ATOM_WS_ATTRIBUTES 0x47
94#define ATOM_WS_REGPTR 0x48
94 95
95#define ATOM_IIO_NOP 0 96#define ATOM_IIO_NOP 0
96#define ATOM_IIO_START 1 97#define ATOM_IIO_START 1
diff --git a/drivers/gpu/drm/radeon/atombios_crtc.c b/drivers/gpu/drm/radeon/atombios_crtc.c
index 260fcf59f00c..af464e351fbd 100644
--- a/drivers/gpu/drm/radeon/atombios_crtc.c
+++ b/drivers/gpu/drm/radeon/atombios_crtc.c
@@ -307,7 +307,6 @@ atombios_set_crtc_dtd_timing(struct drm_crtc *crtc,
307 args.susModeMiscInfo.usAccess = cpu_to_le16(misc); 307 args.susModeMiscInfo.usAccess = cpu_to_le16(misc);
308 args.ucCRTC = radeon_crtc->crtc_id; 308 args.ucCRTC = radeon_crtc->crtc_id;
309 309
310 printk("executing set crtc dtd timing\n");
311 atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args); 310 atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args);
312} 311}
313 312
@@ -347,7 +346,6 @@ static void atombios_crtc_set_timing(struct drm_crtc *crtc,
347 args.susModeMiscInfo.usAccess = cpu_to_le16(misc); 346 args.susModeMiscInfo.usAccess = cpu_to_le16(misc);
348 args.ucCRTC = radeon_crtc->crtc_id; 347 args.ucCRTC = radeon_crtc->crtc_id;
349 348
350 printk("executing set crtc timing\n");
351 atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args); 349 atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args);
352} 350}
353 351
@@ -409,59 +407,57 @@ static void atombios_set_ss(struct drm_crtc *crtc, int enable)
409 } 407 }
410} 408}
411 409
412void atombios_crtc_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode) 410union adjust_pixel_clock {
411 ADJUST_DISPLAY_PLL_PS_ALLOCATION v1;
412};
413
414static u32 atombios_adjust_pll(struct drm_crtc *crtc,
415 struct drm_display_mode *mode,
416 struct radeon_pll *pll)
413{ 417{
414 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
415 struct drm_device *dev = crtc->dev; 418 struct drm_device *dev = crtc->dev;
416 struct radeon_device *rdev = dev->dev_private; 419 struct radeon_device *rdev = dev->dev_private;
417 struct drm_encoder *encoder = NULL; 420 struct drm_encoder *encoder = NULL;
418 struct radeon_encoder *radeon_encoder = NULL; 421 struct radeon_encoder *radeon_encoder = NULL;
419 uint8_t frev, crev; 422 u32 adjusted_clock = mode->clock;
420 int index;
421 SET_PIXEL_CLOCK_PS_ALLOCATION args;
422 PIXEL_CLOCK_PARAMETERS *spc1_ptr;
423 PIXEL_CLOCK_PARAMETERS_V2 *spc2_ptr;
424 PIXEL_CLOCK_PARAMETERS_V3 *spc3_ptr;
425 uint32_t pll_clock = mode->clock;
426 uint32_t adjusted_clock;
427 uint32_t ref_div = 0, fb_div = 0, frac_fb_div = 0, post_div = 0;
428 struct radeon_pll *pll;
429 int pll_flags = 0;
430 423
431 memset(&args, 0, sizeof(args)); 424 /* reset the pll flags */
425 pll->flags = 0;
432 426
433 if (ASIC_IS_AVIVO(rdev)) { 427 if (ASIC_IS_AVIVO(rdev)) {
434 if ((rdev->family == CHIP_RS600) || 428 if ((rdev->family == CHIP_RS600) ||
435 (rdev->family == CHIP_RS690) || 429 (rdev->family == CHIP_RS690) ||
436 (rdev->family == CHIP_RS740)) 430 (rdev->family == CHIP_RS740))
437 pll_flags |= (RADEON_PLL_USE_FRAC_FB_DIV | 431 pll->flags |= (RADEON_PLL_USE_FRAC_FB_DIV |
438 RADEON_PLL_PREFER_CLOSEST_LOWER); 432 RADEON_PLL_PREFER_CLOSEST_LOWER);
439 433
440 if (ASIC_IS_DCE32(rdev) && mode->clock > 200000) /* range limits??? */ 434 if (ASIC_IS_DCE32(rdev) && mode->clock > 200000) /* range limits??? */
441 pll_flags |= RADEON_PLL_PREFER_HIGH_FB_DIV; 435 pll->flags |= RADEON_PLL_PREFER_HIGH_FB_DIV;
442 else 436 else
443 pll_flags |= RADEON_PLL_PREFER_LOW_REF_DIV; 437 pll->flags |= RADEON_PLL_PREFER_LOW_REF_DIV;
444 } else { 438 } else {
445 pll_flags |= RADEON_PLL_LEGACY; 439 pll->flags |= RADEON_PLL_LEGACY;
446 440
447 if (mode->clock > 200000) /* range limits??? */ 441 if (mode->clock > 200000) /* range limits??? */
448 pll_flags |= RADEON_PLL_PREFER_HIGH_FB_DIV; 442 pll->flags |= RADEON_PLL_PREFER_HIGH_FB_DIV;
449 else 443 else
450 pll_flags |= RADEON_PLL_PREFER_LOW_REF_DIV; 444 pll->flags |= RADEON_PLL_PREFER_LOW_REF_DIV;
451 445
452 } 446 }
453 447
454 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) { 448 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {
455 if (encoder->crtc == crtc) { 449 if (encoder->crtc == crtc) {
456 if (!ASIC_IS_AVIVO(rdev)) {
457 if (encoder->encoder_type !=
458 DRM_MODE_ENCODER_DAC)
459 pll_flags |= RADEON_PLL_NO_ODD_POST_DIV;
460 if (encoder->encoder_type ==
461 DRM_MODE_ENCODER_LVDS)
462 pll_flags |= RADEON_PLL_USE_REF_DIV;
463 }
464 radeon_encoder = to_radeon_encoder(encoder); 450 radeon_encoder = to_radeon_encoder(encoder);
451 if (ASIC_IS_AVIVO(rdev)) {
452 /* DVO wants 2x pixel clock if the DVO chip is in 12 bit mode */
453 if (radeon_encoder->encoder_id == ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1)
454 adjusted_clock = mode->clock * 2;
455 } else {
456 if (encoder->encoder_type != DRM_MODE_ENCODER_DAC)
457 pll->flags |= RADEON_PLL_NO_ODD_POST_DIV;
458 if (encoder->encoder_type == DRM_MODE_ENCODER_LVDS)
459 pll->flags |= RADEON_PLL_USE_REF_DIV;
460 }
465 break; 461 break;
466 } 462 }
467 } 463 }
@@ -471,46 +467,101 @@ void atombios_crtc_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
471 * special hw requirements. 467 * special hw requirements.
472 */ 468 */
473 if (ASIC_IS_DCE3(rdev)) { 469 if (ASIC_IS_DCE3(rdev)) {
474 ADJUST_DISPLAY_PLL_PS_ALLOCATION adjust_pll_args; 470 union adjust_pixel_clock args;
471 struct radeon_encoder_atom_dig *dig;
472 u8 frev, crev;
473 int index;
475 474
476 if (!encoder) 475 if (!radeon_encoder->enc_priv)
477 return; 476 return adjusted_clock;
478 477 dig = radeon_encoder->enc_priv;
479 memset(&adjust_pll_args, 0, sizeof(adjust_pll_args));
480 adjust_pll_args.usPixelClock = cpu_to_le16(mode->clock / 10);
481 adjust_pll_args.ucTransmitterID = radeon_encoder->encoder_id;
482 adjust_pll_args.ucEncodeMode = atombios_get_encoder_mode(encoder);
483 478
484 index = GetIndexIntoMasterTable(COMMAND, AdjustDisplayPll); 479 index = GetIndexIntoMasterTable(COMMAND, AdjustDisplayPll);
485 atom_execute_table(rdev->mode_info.atom_context, 480 atom_parse_cmd_header(rdev->mode_info.atom_context, index, &frev,
486 index, (uint32_t *)&adjust_pll_args); 481 &crev);
487 adjusted_clock = le16_to_cpu(adjust_pll_args.usPixelClock) * 10; 482
488 } else { 483 memset(&args, 0, sizeof(args));
489 /* DVO wants 2x pixel clock if the DVO chip is in 12 bit mode */ 484
490 if (ASIC_IS_AVIVO(rdev) && 485 switch (frev) {
491 (radeon_encoder->encoder_id == ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1)) 486 case 1:
492 adjusted_clock = mode->clock * 2; 487 switch (crev) {
493 else 488 case 1:
494 adjusted_clock = mode->clock; 489 case 2:
490 args.v1.usPixelClock = cpu_to_le16(mode->clock / 10);
491 args.v1.ucTransmitterID = radeon_encoder->encoder_id;
492 args.v1.ucEncodeMode = atombios_get_encoder_mode(encoder);
493
494 atom_execute_table(rdev->mode_info.atom_context,
495 index, (uint32_t *)&args);
496 adjusted_clock = le16_to_cpu(args.v1.usPixelClock) * 10;
497 break;
498 default:
499 DRM_ERROR("Unknown table version %d %d\n", frev, crev);
500 return adjusted_clock;
501 }
502 break;
503 default:
504 DRM_ERROR("Unknown table version %d %d\n", frev, crev);
505 return adjusted_clock;
506 }
495 } 507 }
508 return adjusted_clock;
509}
510
511union set_pixel_clock {
512 SET_PIXEL_CLOCK_PS_ALLOCATION base;
513 PIXEL_CLOCK_PARAMETERS v1;
514 PIXEL_CLOCK_PARAMETERS_V2 v2;
515 PIXEL_CLOCK_PARAMETERS_V3 v3;
516};
517
518void atombios_crtc_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
519{
520 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
521 struct drm_device *dev = crtc->dev;
522 struct radeon_device *rdev = dev->dev_private;
523 struct drm_encoder *encoder = NULL;
524 struct radeon_encoder *radeon_encoder = NULL;
525 u8 frev, crev;
526 int index;
527 union set_pixel_clock args;
528 u32 pll_clock = mode->clock;
529 u32 ref_div = 0, fb_div = 0, frac_fb_div = 0, post_div = 0;
530 struct radeon_pll *pll;
531 u32 adjusted_clock;
532
533 memset(&args, 0, sizeof(args));
534
535 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {
536 if (encoder->crtc == crtc) {
537 radeon_encoder = to_radeon_encoder(encoder);
538 break;
539 }
540 }
541
542 if (!radeon_encoder)
543 return;
496 544
497 if (radeon_crtc->crtc_id == 0) 545 if (radeon_crtc->crtc_id == 0)
498 pll = &rdev->clock.p1pll; 546 pll = &rdev->clock.p1pll;
499 else 547 else
500 pll = &rdev->clock.p2pll; 548 pll = &rdev->clock.p2pll;
501 549
550 /* adjust pixel clock as needed */
551 adjusted_clock = atombios_adjust_pll(crtc, mode, pll);
552
502 if (ASIC_IS_AVIVO(rdev)) { 553 if (ASIC_IS_AVIVO(rdev)) {
503 if (radeon_new_pll) 554 if (radeon_new_pll)
504 radeon_compute_pll_avivo(pll, adjusted_clock, &pll_clock, 555 radeon_compute_pll_avivo(pll, adjusted_clock, &pll_clock,
505 &fb_div, &frac_fb_div, 556 &fb_div, &frac_fb_div,
506 &ref_div, &post_div, pll_flags); 557 &ref_div, &post_div);
507 else 558 else
508 radeon_compute_pll(pll, adjusted_clock, &pll_clock, 559 radeon_compute_pll(pll, adjusted_clock, &pll_clock,
509 &fb_div, &frac_fb_div, 560 &fb_div, &frac_fb_div,
510 &ref_div, &post_div, pll_flags); 561 &ref_div, &post_div);
511 } else 562 } else
512 radeon_compute_pll(pll, adjusted_clock, &pll_clock, &fb_div, &frac_fb_div, 563 radeon_compute_pll(pll, adjusted_clock, &pll_clock, &fb_div, &frac_fb_div,
513 &ref_div, &post_div, pll_flags); 564 &ref_div, &post_div);
514 565
515 index = GetIndexIntoMasterTable(COMMAND, SetPixelClock); 566 index = GetIndexIntoMasterTable(COMMAND, SetPixelClock);
516 atom_parse_cmd_header(rdev->mode_info.atom_context, index, &frev, 567 atom_parse_cmd_header(rdev->mode_info.atom_context, index, &frev,
@@ -520,45 +571,38 @@ void atombios_crtc_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
520 case 1: 571 case 1:
521 switch (crev) { 572 switch (crev) {
522 case 1: 573 case 1:
523 spc1_ptr = (PIXEL_CLOCK_PARAMETERS *) & args.sPCLKInput; 574 args.v1.usPixelClock = cpu_to_le16(mode->clock / 10);
524 spc1_ptr->usPixelClock = cpu_to_le16(mode->clock / 10); 575 args.v1.usRefDiv = cpu_to_le16(ref_div);
525 spc1_ptr->usRefDiv = cpu_to_le16(ref_div); 576 args.v1.usFbDiv = cpu_to_le16(fb_div);
526 spc1_ptr->usFbDiv = cpu_to_le16(fb_div); 577 args.v1.ucFracFbDiv = frac_fb_div;
527 spc1_ptr->ucFracFbDiv = frac_fb_div; 578 args.v1.ucPostDiv = post_div;
528 spc1_ptr->ucPostDiv = post_div; 579 args.v1.ucPpll =
529 spc1_ptr->ucPpll =
530 radeon_crtc->crtc_id ? ATOM_PPLL2 : ATOM_PPLL1; 580 radeon_crtc->crtc_id ? ATOM_PPLL2 : ATOM_PPLL1;
531 spc1_ptr->ucCRTC = radeon_crtc->crtc_id; 581 args.v1.ucCRTC = radeon_crtc->crtc_id;
532 spc1_ptr->ucRefDivSrc = 1; 582 args.v1.ucRefDivSrc = 1;
533 break; 583 break;
534 case 2: 584 case 2:
535 spc2_ptr = 585 args.v2.usPixelClock = cpu_to_le16(mode->clock / 10);
536 (PIXEL_CLOCK_PARAMETERS_V2 *) & args.sPCLKInput; 586 args.v2.usRefDiv = cpu_to_le16(ref_div);
537 spc2_ptr->usPixelClock = cpu_to_le16(mode->clock / 10); 587 args.v2.usFbDiv = cpu_to_le16(fb_div);
538 spc2_ptr->usRefDiv = cpu_to_le16(ref_div); 588 args.v2.ucFracFbDiv = frac_fb_div;
539 spc2_ptr->usFbDiv = cpu_to_le16(fb_div); 589 args.v2.ucPostDiv = post_div;
540 spc2_ptr->ucFracFbDiv = frac_fb_div; 590 args.v2.ucPpll =
541 spc2_ptr->ucPostDiv = post_div;
542 spc2_ptr->ucPpll =
543 radeon_crtc->crtc_id ? ATOM_PPLL2 : ATOM_PPLL1; 591 radeon_crtc->crtc_id ? ATOM_PPLL2 : ATOM_PPLL1;
544 spc2_ptr->ucCRTC = radeon_crtc->crtc_id; 592 args.v2.ucCRTC = radeon_crtc->crtc_id;
545 spc2_ptr->ucRefDivSrc = 1; 593 args.v2.ucRefDivSrc = 1;
546 break; 594 break;
547 case 3: 595 case 3:
548 if (!encoder) 596 args.v3.usPixelClock = cpu_to_le16(mode->clock / 10);
549 return; 597 args.v3.usRefDiv = cpu_to_le16(ref_div);
550 spc3_ptr = 598 args.v3.usFbDiv = cpu_to_le16(fb_div);
551 (PIXEL_CLOCK_PARAMETERS_V3 *) & args.sPCLKInput; 599 args.v3.ucFracFbDiv = frac_fb_div;
552 spc3_ptr->usPixelClock = cpu_to_le16(mode->clock / 10); 600 args.v3.ucPostDiv = post_div;
553 spc3_ptr->usRefDiv = cpu_to_le16(ref_div); 601 args.v3.ucPpll =
554 spc3_ptr->usFbDiv = cpu_to_le16(fb_div);
555 spc3_ptr->ucFracFbDiv = frac_fb_div;
556 spc3_ptr->ucPostDiv = post_div;
557 spc3_ptr->ucPpll =
558 radeon_crtc->crtc_id ? ATOM_PPLL2 : ATOM_PPLL1; 602 radeon_crtc->crtc_id ? ATOM_PPLL2 : ATOM_PPLL1;
559 spc3_ptr->ucMiscInfo = (radeon_crtc->crtc_id << 2); 603 args.v3.ucMiscInfo = (radeon_crtc->crtc_id << 2);
560 spc3_ptr->ucTransmitterId = radeon_encoder->encoder_id; 604 args.v3.ucTransmitterId = radeon_encoder->encoder_id;
561 spc3_ptr->ucEncoderMode = 605 args.v3.ucEncoderMode =
562 atombios_get_encoder_mode(encoder); 606 atombios_get_encoder_mode(encoder);
563 break; 607 break;
564 default: 608 default:
@@ -571,12 +615,11 @@ void atombios_crtc_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
571 return; 615 return;
572 } 616 }
573 617
574 printk("executing set pll\n");
575 atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args); 618 atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args);
576} 619}
577 620
578int atombios_crtc_set_base(struct drm_crtc *crtc, int x, int y, 621static int avivo_crtc_set_base(struct drm_crtc *crtc, int x, int y,
579 struct drm_framebuffer *old_fb) 622 struct drm_framebuffer *old_fb)
580{ 623{
581 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc); 624 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
582 struct drm_device *dev = crtc->dev; 625 struct drm_device *dev = crtc->dev;
@@ -706,6 +749,42 @@ int atombios_crtc_set_base(struct drm_crtc *crtc, int x, int y,
706 return 0; 749 return 0;
707} 750}
708 751
752int atombios_crtc_set_base(struct drm_crtc *crtc, int x, int y,
753 struct drm_framebuffer *old_fb)
754{
755 struct drm_device *dev = crtc->dev;
756 struct radeon_device *rdev = dev->dev_private;
757
758 if (ASIC_IS_AVIVO(rdev))
759 return avivo_crtc_set_base(crtc, x, y, old_fb);
760 else
761 return radeon_crtc_set_base(crtc, x, y, old_fb);
762}
763
764/* properly set additional regs when using atombios */
765static void radeon_legacy_atom_fixup(struct drm_crtc *crtc)
766{
767 struct drm_device *dev = crtc->dev;
768 struct radeon_device *rdev = dev->dev_private;
769 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
770 u32 disp_merge_cntl;
771
772 switch (radeon_crtc->crtc_id) {
773 case 0:
774 disp_merge_cntl = RREG32(RADEON_DISP_MERGE_CNTL);
775 disp_merge_cntl &= ~RADEON_DISP_RGB_OFFSET_EN;
776 WREG32(RADEON_DISP_MERGE_CNTL, disp_merge_cntl);
777 break;
778 case 1:
779 disp_merge_cntl = RREG32(RADEON_DISP2_MERGE_CNTL);
780 disp_merge_cntl &= ~RADEON_DISP2_RGB_OFFSET_EN;
781 WREG32(RADEON_DISP2_MERGE_CNTL, disp_merge_cntl);
782 WREG32(RADEON_FP_H2_SYNC_STRT_WID, RREG32(RADEON_CRTC2_H_SYNC_STRT_WID));
783 WREG32(RADEON_FP_V2_SYNC_STRT_WID, RREG32(RADEON_CRTC2_V_SYNC_STRT_WID));
784 break;
785 }
786}
787
709int atombios_crtc_mode_set(struct drm_crtc *crtc, 788int atombios_crtc_mode_set(struct drm_crtc *crtc,
710 struct drm_display_mode *mode, 789 struct drm_display_mode *mode,
711 struct drm_display_mode *adjusted_mode, 790 struct drm_display_mode *adjusted_mode,
@@ -727,8 +806,8 @@ int atombios_crtc_mode_set(struct drm_crtc *crtc,
727 else { 806 else {
728 if (radeon_crtc->crtc_id == 0) 807 if (radeon_crtc->crtc_id == 0)
729 atombios_set_crtc_dtd_timing(crtc, adjusted_mode); 808 atombios_set_crtc_dtd_timing(crtc, adjusted_mode);
730 radeon_crtc_set_base(crtc, x, y, old_fb); 809 atombios_crtc_set_base(crtc, x, y, old_fb);
731 radeon_legacy_atom_set_surface(crtc); 810 radeon_legacy_atom_fixup(crtc);
732 } 811 }
733 atombios_overscan_setup(crtc, mode, adjusted_mode); 812 atombios_overscan_setup(crtc, mode, adjusted_mode);
734 atombios_scaler_setup(crtc); 813 atombios_scaler_setup(crtc);
@@ -746,8 +825,8 @@ static bool atombios_crtc_mode_fixup(struct drm_crtc *crtc,
746 825
747static void atombios_crtc_prepare(struct drm_crtc *crtc) 826static void atombios_crtc_prepare(struct drm_crtc *crtc)
748{ 827{
749 atombios_crtc_dpms(crtc, DRM_MODE_DPMS_OFF);
750 atombios_lock_crtc(crtc, 1); 828 atombios_lock_crtc(crtc, 1);
829 atombios_crtc_dpms(crtc, DRM_MODE_DPMS_OFF);
751} 830}
752 831
753static void atombios_crtc_commit(struct drm_crtc *crtc) 832static void atombios_crtc_commit(struct drm_crtc *crtc)
diff --git a/drivers/gpu/drm/radeon/atombios_dp.c b/drivers/gpu/drm/radeon/atombios_dp.c
index 3eb0ca5b3d73..71060114d5de 100644
--- a/drivers/gpu/drm/radeon/atombios_dp.c
+++ b/drivers/gpu/drm/radeon/atombios_dp.c
@@ -468,7 +468,7 @@ void radeon_dp_set_link_config(struct drm_connector *connector,
468 struct radeon_connector *radeon_connector; 468 struct radeon_connector *radeon_connector;
469 struct radeon_connector_atom_dig *dig_connector; 469 struct radeon_connector_atom_dig *dig_connector;
470 470
471 if ((connector->connector_type != DRM_MODE_CONNECTOR_DisplayPort) || 471 if ((connector->connector_type != DRM_MODE_CONNECTOR_DisplayPort) &&
472 (connector->connector_type != DRM_MODE_CONNECTOR_eDP)) 472 (connector->connector_type != DRM_MODE_CONNECTOR_eDP))
473 return; 473 return;
474 474
@@ -583,7 +583,7 @@ void dp_link_train(struct drm_encoder *encoder,
583 u8 train_set[4]; 583 u8 train_set[4];
584 int i; 584 int i;
585 585
586 if ((connector->connector_type != DRM_MODE_CONNECTOR_DisplayPort) || 586 if ((connector->connector_type != DRM_MODE_CONNECTOR_DisplayPort) &&
587 (connector->connector_type != DRM_MODE_CONNECTOR_eDP)) 587 (connector->connector_type != DRM_MODE_CONNECTOR_eDP))
588 return; 588 return;
589 589
@@ -596,21 +596,14 @@ void dp_link_train(struct drm_encoder *encoder,
596 return; 596 return;
597 dig_connector = radeon_connector->con_priv; 597 dig_connector = radeon_connector->con_priv;
598 598
599 if (ASIC_IS_DCE32(rdev)) { 599 if (dig->dig_encoder)
600 if (dig->dig_block) 600 enc_id |= ATOM_DP_CONFIG_DIG2_ENCODER;
601 enc_id |= ATOM_DP_CONFIG_DIG2_ENCODER; 601 else
602 else 602 enc_id |= ATOM_DP_CONFIG_DIG1_ENCODER;
603 enc_id |= ATOM_DP_CONFIG_DIG1_ENCODER; 603 if (dig_connector->linkb)
604 if (dig_connector->linkb) 604 enc_id |= ATOM_DP_CONFIG_LINK_B;
605 enc_id |= ATOM_DP_CONFIG_LINK_B; 605 else
606 else 606 enc_id |= ATOM_DP_CONFIG_LINK_A;
607 enc_id |= ATOM_DP_CONFIG_LINK_A;
608 } else {
609 if (dig_connector->linkb)
610 enc_id |= ATOM_DP_CONFIG_DIG2_ENCODER | ATOM_DP_CONFIG_LINK_B;
611 else
612 enc_id |= ATOM_DP_CONFIG_DIG1_ENCODER | ATOM_DP_CONFIG_LINK_A;
613 }
614 607
615 memset(link_configuration, 0, DP_LINK_CONFIGURATION_SIZE); 608 memset(link_configuration, 0, DP_LINK_CONFIGURATION_SIZE);
616 if (dig_connector->dp_clock == 270000) 609 if (dig_connector->dp_clock == 270000)
diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index 8760d66e058a..11c9a3fe6810 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -1504,6 +1504,7 @@ static int r100_packet3_check(struct radeon_cs_parser *p,
1504 DRM_ERROR("PRIM_WALK must be 3 for IMMD draw\n"); 1504 DRM_ERROR("PRIM_WALK must be 3 for IMMD draw\n");
1505 return -EINVAL; 1505 return -EINVAL;
1506 } 1506 }
1507 track->vtx_size = r100_get_vtx_size(radeon_get_ib_value(p, idx + 0));
1507 track->vap_vf_cntl = radeon_get_ib_value(p, idx + 1); 1508 track->vap_vf_cntl = radeon_get_ib_value(p, idx + 1);
1508 track->immd_dwords = pkt->count - 1; 1509 track->immd_dwords = pkt->count - 1;
1509 r = r100_cs_track_check(p->rdev, track); 1510 r = r100_cs_track_check(p->rdev, track);
@@ -3399,9 +3400,7 @@ int r100_mc_init(struct radeon_device *rdev)
3399 if (rdev->flags & RADEON_IS_AGP) { 3400 if (rdev->flags & RADEON_IS_AGP) {
3400 r = radeon_agp_init(rdev); 3401 r = radeon_agp_init(rdev);
3401 if (r) { 3402 if (r) {
3402 printk(KERN_WARNING "[drm] Disabling AGP\n"); 3403 radeon_agp_disable(rdev);
3403 rdev->flags &= ~RADEON_IS_AGP;
3404 rdev->mc.gtt_size = radeon_gart_size * 1024 * 1024;
3405 } else { 3404 } else {
3406 rdev->mc.gtt_location = rdev->mc.agp_base; 3405 rdev->mc.gtt_location = rdev->mc.agp_base;
3407 } 3406 }
diff --git a/drivers/gpu/drm/radeon/r200.c b/drivers/gpu/drm/radeon/r200.c
index 20942127c46b..ff1e0cd608bf 100644
--- a/drivers/gpu/drm/radeon/r200.c
+++ b/drivers/gpu/drm/radeon/r200.c
@@ -371,13 +371,16 @@ int r200_packet0_check(struct radeon_cs_parser *p,
371 case 5: 371 case 5:
372 case 6: 372 case 6:
373 case 7: 373 case 7:
374 /* 1D/2D */
374 track->textures[i].tex_coord_type = 0; 375 track->textures[i].tex_coord_type = 0;
375 break; 376 break;
376 case 1: 377 case 1:
377 track->textures[i].tex_coord_type = 1; 378 /* CUBE */
379 track->textures[i].tex_coord_type = 2;
378 break; 380 break;
379 case 2: 381 case 2:
380 track->textures[i].tex_coord_type = 2; 382 /* 3D */
383 track->textures[i].tex_coord_type = 1;
381 break; 384 break;
382 } 385 }
383 break; 386 break;
diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c
index 053404e71a9d..4526faaacca8 100644
--- a/drivers/gpu/drm/radeon/r420.c
+++ b/drivers/gpu/drm/radeon/r420.c
@@ -50,9 +50,7 @@ int r420_mc_init(struct radeon_device *rdev)
50 if (rdev->flags & RADEON_IS_AGP) { 50 if (rdev->flags & RADEON_IS_AGP) {
51 r = radeon_agp_init(rdev); 51 r = radeon_agp_init(rdev);
52 if (r) { 52 if (r) {
53 printk(KERN_WARNING "[drm] Disabling AGP\n"); 53 radeon_agp_disable(rdev);
54 rdev->flags &= ~RADEON_IS_AGP;
55 rdev->mc.gtt_size = radeon_gart_size * 1024 * 1024;
56 } else { 54 } else {
57 rdev->mc.gtt_location = rdev->mc.agp_base; 55 rdev->mc.gtt_location = rdev->mc.agp_base;
58 } 56 }
diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
index f5ff3490929f..1b6d0001b20e 100644
--- a/drivers/gpu/drm/radeon/r600.c
+++ b/drivers/gpu/drm/radeon/r600.c
@@ -624,7 +624,6 @@ int r600_mc_init(struct radeon_device *rdev)
624 fixed20_12 a; 624 fixed20_12 a;
625 u32 tmp; 625 u32 tmp;
626 int chansize, numchan; 626 int chansize, numchan;
627 int r;
628 627
629 /* Get VRAM informations */ 628 /* Get VRAM informations */
630 rdev->mc.vram_is_ddr = true; 629 rdev->mc.vram_is_ddr = true;
@@ -667,9 +666,6 @@ int r600_mc_init(struct radeon_device *rdev)
667 rdev->mc.real_vram_size = rdev->mc.aper_size; 666 rdev->mc.real_vram_size = rdev->mc.aper_size;
668 667
669 if (rdev->flags & RADEON_IS_AGP) { 668 if (rdev->flags & RADEON_IS_AGP) {
670 r = radeon_agp_init(rdev);
671 if (r)
672 return r;
673 /* gtt_size is setup by radeon_agp_init */ 669 /* gtt_size is setup by radeon_agp_init */
674 rdev->mc.gtt_location = rdev->mc.agp_base; 670 rdev->mc.gtt_location = rdev->mc.agp_base;
675 tmp = 0xFFFFFFFFUL - rdev->mc.agp_base - rdev->mc.gtt_size; 671 tmp = 0xFFFFFFFFUL - rdev->mc.agp_base - rdev->mc.gtt_size;
@@ -1792,23 +1788,24 @@ void r600_fence_ring_emit(struct radeon_device *rdev,
1792 radeon_ring_write(rdev, RB_INT_STAT); 1788 radeon_ring_write(rdev, RB_INT_STAT);
1793} 1789}
1794 1790
1795int r600_copy_dma(struct radeon_device *rdev,
1796 uint64_t src_offset,
1797 uint64_t dst_offset,
1798 unsigned num_pages,
1799 struct radeon_fence *fence)
1800{
1801 /* FIXME: implement */
1802 return 0;
1803}
1804
1805int r600_copy_blit(struct radeon_device *rdev, 1791int r600_copy_blit(struct radeon_device *rdev,
1806 uint64_t src_offset, uint64_t dst_offset, 1792 uint64_t src_offset, uint64_t dst_offset,
1807 unsigned num_pages, struct radeon_fence *fence) 1793 unsigned num_pages, struct radeon_fence *fence)
1808{ 1794{
1809 r600_blit_prepare_copy(rdev, num_pages * RADEON_GPU_PAGE_SIZE); 1795 int r;
1796
1797 mutex_lock(&rdev->r600_blit.mutex);
1798 rdev->r600_blit.vb_ib = NULL;
1799 r = r600_blit_prepare_copy(rdev, num_pages * RADEON_GPU_PAGE_SIZE);
1800 if (r) {
1801 if (rdev->r600_blit.vb_ib)
1802 radeon_ib_free(rdev, &rdev->r600_blit.vb_ib);
1803 mutex_unlock(&rdev->r600_blit.mutex);
1804 return r;
1805 }
1810 r600_kms_blit_copy(rdev, src_offset, dst_offset, num_pages * RADEON_GPU_PAGE_SIZE); 1806 r600_kms_blit_copy(rdev, src_offset, dst_offset, num_pages * RADEON_GPU_PAGE_SIZE);
1811 r600_blit_done_copy(rdev, fence); 1807 r600_blit_done_copy(rdev, fence);
1808 mutex_unlock(&rdev->r600_blit.mutex);
1812 return 0; 1809 return 0;
1813} 1810}
1814 1811
@@ -1864,26 +1861,19 @@ int r600_startup(struct radeon_device *rdev)
1864 return r; 1861 return r;
1865 } 1862 }
1866 r600_gpu_init(rdev); 1863 r600_gpu_init(rdev);
1867 1864 /* pin copy shader into vram */
1868 if (!rdev->r600_blit.shader_obj) { 1865 if (rdev->r600_blit.shader_obj) {
1869 r = r600_blit_init(rdev); 1866 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false);
1867 if (unlikely(r != 0))
1868 return r;
1869 r = radeon_bo_pin(rdev->r600_blit.shader_obj, RADEON_GEM_DOMAIN_VRAM,
1870 &rdev->r600_blit.shader_gpu_addr);
1871 radeon_bo_unreserve(rdev->r600_blit.shader_obj);
1870 if (r) { 1872 if (r) {
1871 DRM_ERROR("radeon: failed blitter (%d).\n", r); 1873 dev_err(rdev->dev, "(%d) pin blit object failed\n", r);
1872 return r; 1874 return r;
1873 } 1875 }
1874 } 1876 }
1875
1876 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false);
1877 if (unlikely(r != 0))
1878 return r;
1879 r = radeon_bo_pin(rdev->r600_blit.shader_obj, RADEON_GEM_DOMAIN_VRAM,
1880 &rdev->r600_blit.shader_gpu_addr);
1881 radeon_bo_unreserve(rdev->r600_blit.shader_obj);
1882 if (r) {
1883 dev_err(rdev->dev, "(%d) pin blit object failed\n", r);
1884 return r;
1885 }
1886
1887 /* Enable IRQ */ 1877 /* Enable IRQ */
1888 r = r600_irq_init(rdev); 1878 r = r600_irq_init(rdev);
1889 if (r) { 1879 if (r) {
@@ -1958,14 +1948,17 @@ int r600_suspend(struct radeon_device *rdev)
1958 /* FIXME: we should wait for ring to be empty */ 1948 /* FIXME: we should wait for ring to be empty */
1959 r600_cp_stop(rdev); 1949 r600_cp_stop(rdev);
1960 rdev->cp.ready = false; 1950 rdev->cp.ready = false;
1951 r600_irq_suspend(rdev);
1961 r600_wb_disable(rdev); 1952 r600_wb_disable(rdev);
1962 r600_pcie_gart_disable(rdev); 1953 r600_pcie_gart_disable(rdev);
1963 /* unpin shaders bo */ 1954 /* unpin shaders bo */
1964 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false); 1955 if (rdev->r600_blit.shader_obj) {
1965 if (unlikely(r != 0)) 1956 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false);
1966 return r; 1957 if (!r) {
1967 radeon_bo_unpin(rdev->r600_blit.shader_obj); 1958 radeon_bo_unpin(rdev->r600_blit.shader_obj);
1968 radeon_bo_unreserve(rdev->r600_blit.shader_obj); 1959 radeon_bo_unreserve(rdev->r600_blit.shader_obj);
1960 }
1961 }
1969 return 0; 1962 return 0;
1970} 1963}
1971 1964
@@ -2026,6 +2019,11 @@ int r600_init(struct radeon_device *rdev)
2026 r = radeon_fence_driver_init(rdev); 2019 r = radeon_fence_driver_init(rdev);
2027 if (r) 2020 if (r)
2028 return r; 2021 return r;
2022 if (rdev->flags & RADEON_IS_AGP) {
2023 r = radeon_agp_init(rdev);
2024 if (r)
2025 radeon_agp_disable(rdev);
2026 }
2029 r = r600_mc_init(rdev); 2027 r = r600_mc_init(rdev);
2030 if (r) 2028 if (r)
2031 return r; 2029 return r;
@@ -2047,6 +2045,12 @@ int r600_init(struct radeon_device *rdev)
2047 r = r600_pcie_gart_init(rdev); 2045 r = r600_pcie_gart_init(rdev);
2048 if (r) 2046 if (r)
2049 return r; 2047 return r;
2048 r = r600_blit_init(rdev);
2049 if (r) {
2050 r600_blit_fini(rdev);
2051 rdev->asic->copy = NULL;
2052 dev_warn(rdev->dev, "failed blitter (%d) falling back to memcpy\n", r);
2053 }
2050 2054
2051 rdev->accel_working = true; 2055 rdev->accel_working = true;
2052 r = r600_startup(rdev); 2056 r = r600_startup(rdev);
@@ -2060,13 +2064,14 @@ int r600_init(struct radeon_device *rdev)
2060 if (rdev->accel_working) { 2064 if (rdev->accel_working) {
2061 r = radeon_ib_pool_init(rdev); 2065 r = radeon_ib_pool_init(rdev);
2062 if (r) { 2066 if (r) {
2063 DRM_ERROR("radeon: failed initializing IB pool (%d).\n", r); 2067 dev_err(rdev->dev, "IB initialization failed (%d).\n", r);
2064 rdev->accel_working = false;
2065 }
2066 r = r600_ib_test(rdev);
2067 if (r) {
2068 DRM_ERROR("radeon: failed testing IB (%d).\n", r);
2069 rdev->accel_working = false; 2068 rdev->accel_working = false;
2069 } else {
2070 r = r600_ib_test(rdev);
2071 if (r) {
2072 dev_err(rdev->dev, "IB test failed (%d).\n", r);
2073 rdev->accel_working = false;
2074 }
2070 } 2075 }
2071 } 2076 }
2072 2077
@@ -2197,14 +2202,14 @@ void r600_ih_ring_init(struct radeon_device *rdev, unsigned ring_size)
2197 rb_bufsz = drm_order(ring_size / 4); 2202 rb_bufsz = drm_order(ring_size / 4);
2198 ring_size = (1 << rb_bufsz) * 4; 2203 ring_size = (1 << rb_bufsz) * 4;
2199 rdev->ih.ring_size = ring_size; 2204 rdev->ih.ring_size = ring_size;
2200 rdev->ih.align_mask = 4 - 1; 2205 rdev->ih.ptr_mask = rdev->ih.ring_size - 1;
2206 rdev->ih.rptr = 0;
2201} 2207}
2202 2208
2203static int r600_ih_ring_alloc(struct radeon_device *rdev, unsigned ring_size) 2209static int r600_ih_ring_alloc(struct radeon_device *rdev)
2204{ 2210{
2205 int r; 2211 int r;
2206 2212
2207 rdev->ih.ring_size = ring_size;
2208 /* Allocate ring buffer */ 2213 /* Allocate ring buffer */
2209 if (rdev->ih.ring_obj == NULL) { 2214 if (rdev->ih.ring_obj == NULL) {
2210 r = radeon_bo_create(rdev, NULL, rdev->ih.ring_size, 2215 r = radeon_bo_create(rdev, NULL, rdev->ih.ring_size,
@@ -2234,9 +2239,6 @@ static int r600_ih_ring_alloc(struct radeon_device *rdev, unsigned ring_size)
2234 return r; 2239 return r;
2235 } 2240 }
2236 } 2241 }
2237 rdev->ih.ptr_mask = (rdev->cp.ring_size / 4) - 1;
2238 rdev->ih.rptr = 0;
2239
2240 return 0; 2242 return 0;
2241} 2243}
2242 2244
@@ -2386,7 +2388,7 @@ int r600_irq_init(struct radeon_device *rdev)
2386 u32 interrupt_cntl, ih_cntl, ih_rb_cntl; 2388 u32 interrupt_cntl, ih_cntl, ih_rb_cntl;
2387 2389
2388 /* allocate ring */ 2390 /* allocate ring */
2389 ret = r600_ih_ring_alloc(rdev, rdev->ih.ring_size); 2391 ret = r600_ih_ring_alloc(rdev);
2390 if (ret) 2392 if (ret)
2391 return ret; 2393 return ret;
2392 2394
@@ -2449,10 +2451,15 @@ int r600_irq_init(struct radeon_device *rdev)
2449 return ret; 2451 return ret;
2450} 2452}
2451 2453
2452void r600_irq_fini(struct radeon_device *rdev) 2454void r600_irq_suspend(struct radeon_device *rdev)
2453{ 2455{
2454 r600_disable_interrupts(rdev); 2456 r600_disable_interrupts(rdev);
2455 r600_rlc_stop(rdev); 2457 r600_rlc_stop(rdev);
2458}
2459
2460void r600_irq_fini(struct radeon_device *rdev)
2461{
2462 r600_irq_suspend(rdev);
2456 r600_ih_ring_fini(rdev); 2463 r600_ih_ring_fini(rdev);
2457} 2464}
2458 2465
@@ -2467,8 +2474,12 @@ int r600_irq_set(struct radeon_device *rdev)
2467 return -EINVAL; 2474 return -EINVAL;
2468 } 2475 }
2469 /* don't enable anything if the ih is disabled */ 2476 /* don't enable anything if the ih is disabled */
2470 if (!rdev->ih.enabled) 2477 if (!rdev->ih.enabled) {
2478 r600_disable_interrupts(rdev);
2479 /* force the active interrupt state to all disabled */
2480 r600_disable_interrupt_state(rdev);
2471 return 0; 2481 return 0;
2482 }
2472 2483
2473 if (ASIC_IS_DCE3(rdev)) { 2484 if (ASIC_IS_DCE3(rdev)) {
2474 hpd1 = RREG32(DC_HPD1_INT_CONTROL) & ~DC_HPDx_INT_EN; 2485 hpd1 = RREG32(DC_HPD1_INT_CONTROL) & ~DC_HPDx_INT_EN;
@@ -2638,16 +2649,18 @@ static inline u32 r600_get_ih_wptr(struct radeon_device *rdev)
2638 wptr = RREG32(IH_RB_WPTR); 2649 wptr = RREG32(IH_RB_WPTR);
2639 2650
2640 if (wptr & RB_OVERFLOW) { 2651 if (wptr & RB_OVERFLOW) {
2641 WARN_ON(1); 2652 /* When a ring buffer overflow happen start parsing interrupt
2642 /* XXX deal with overflow */ 2653 * from the last not overwritten vector (wptr + 16). Hopefully
2643 DRM_ERROR("IH RB overflow\n"); 2654 * this should allow us to catchup.
2655 */
2656 dev_warn(rdev->dev, "IH ring buffer overflow (0x%08X, %d, %d)\n",
2657 wptr, rdev->ih.rptr, (wptr + 16) + rdev->ih.ptr_mask);
2658 rdev->ih.rptr = (wptr + 16) & rdev->ih.ptr_mask;
2644 tmp = RREG32(IH_RB_CNTL); 2659 tmp = RREG32(IH_RB_CNTL);
2645 tmp |= IH_WPTR_OVERFLOW_CLEAR; 2660 tmp |= IH_WPTR_OVERFLOW_CLEAR;
2646 WREG32(IH_RB_CNTL, tmp); 2661 WREG32(IH_RB_CNTL, tmp);
2647 } 2662 }
2648 wptr = wptr & WPTR_OFFSET_MASK; 2663 return (wptr & rdev->ih.ptr_mask);
2649
2650 return wptr;
2651} 2664}
2652 2665
2653/* r600 IV Ring 2666/* r600 IV Ring
@@ -2683,12 +2696,13 @@ int r600_irq_process(struct radeon_device *rdev)
2683 u32 wptr = r600_get_ih_wptr(rdev); 2696 u32 wptr = r600_get_ih_wptr(rdev);
2684 u32 rptr = rdev->ih.rptr; 2697 u32 rptr = rdev->ih.rptr;
2685 u32 src_id, src_data; 2698 u32 src_id, src_data;
2686 u32 last_entry = rdev->ih.ring_size - 16;
2687 u32 ring_index, disp_int, disp_int_cont, disp_int_cont2; 2699 u32 ring_index, disp_int, disp_int_cont, disp_int_cont2;
2688 unsigned long flags; 2700 unsigned long flags;
2689 bool queue_hotplug = false; 2701 bool queue_hotplug = false;
2690 2702
2691 DRM_DEBUG("r600_irq_process start: rptr %d, wptr %d\n", rptr, wptr); 2703 DRM_DEBUG("r600_irq_process start: rptr %d, wptr %d\n", rptr, wptr);
2704 if (!rdev->ih.enabled)
2705 return IRQ_NONE;
2692 2706
2693 spin_lock_irqsave(&rdev->ih.lock, flags); 2707 spin_lock_irqsave(&rdev->ih.lock, flags);
2694 2708
@@ -2817,10 +2831,8 @@ restart_ih:
2817 } 2831 }
2818 2832
2819 /* wptr/rptr are in bytes! */ 2833 /* wptr/rptr are in bytes! */
2820 if (rptr == last_entry) 2834 rptr += 16;
2821 rptr = 0; 2835 rptr &= rdev->ih.ptr_mask;
2822 else
2823 rptr += 16;
2824 } 2836 }
2825 /* make sure wptr hasn't changed while processing */ 2837 /* make sure wptr hasn't changed while processing */
2826 wptr = r600_get_ih_wptr(rdev); 2838 wptr = r600_get_ih_wptr(rdev);
diff --git a/drivers/gpu/drm/radeon/r600_blit_kms.c b/drivers/gpu/drm/radeon/r600_blit_kms.c
index 8787ea89dc6e..af1c3ca8a4cb 100644
--- a/drivers/gpu/drm/radeon/r600_blit_kms.c
+++ b/drivers/gpu/drm/radeon/r600_blit_kms.c
@@ -449,6 +449,7 @@ int r600_blit_init(struct radeon_device *rdev)
449 u32 packet2s[16]; 449 u32 packet2s[16];
450 int num_packet2s = 0; 450 int num_packet2s = 0;
451 451
452 mutex_init(&rdev->r600_blit.mutex);
452 rdev->r600_blit.state_offset = 0; 453 rdev->r600_blit.state_offset = 0;
453 454
454 if (rdev->family >= CHIP_RV770) 455 if (rdev->family >= CHIP_RV770)
@@ -512,14 +513,16 @@ void r600_blit_fini(struct radeon_device *rdev)
512{ 513{
513 int r; 514 int r;
514 515
516 if (rdev->r600_blit.shader_obj == NULL)
517 return;
518 /* If we can't reserve the bo, unref should be enough to destroy
519 * it when it becomes idle.
520 */
515 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false); 521 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false);
516 if (unlikely(r != 0)) { 522 if (!r) {
517 dev_err(rdev->dev, "(%d) can't finish r600 blit\n", r); 523 radeon_bo_unpin(rdev->r600_blit.shader_obj);
518 goto out_unref; 524 radeon_bo_unreserve(rdev->r600_blit.shader_obj);
519 } 525 }
520 radeon_bo_unpin(rdev->r600_blit.shader_obj);
521 radeon_bo_unreserve(rdev->r600_blit.shader_obj);
522out_unref:
523 radeon_bo_unref(&rdev->r600_blit.shader_obj); 526 radeon_bo_unref(&rdev->r600_blit.shader_obj);
524} 527}
525 528
@@ -555,7 +558,8 @@ int r600_blit_prepare_copy(struct radeon_device *rdev, int size_bytes)
555 int dwords_per_loop = 76, num_loops; 558 int dwords_per_loop = 76, num_loops;
556 559
557 r = r600_vb_ib_get(rdev); 560 r = r600_vb_ib_get(rdev);
558 WARN_ON(r); 561 if (r)
562 return r;
559 563
560 /* set_render_target emits 2 extra dwords on rv6xx */ 564 /* set_render_target emits 2 extra dwords on rv6xx */
561 if (rdev->family > CHIP_R600 && rdev->family < CHIP_RV770) 565 if (rdev->family > CHIP_R600 && rdev->family < CHIP_RV770)
@@ -581,7 +585,8 @@ int r600_blit_prepare_copy(struct radeon_device *rdev, int size_bytes)
581 ring_size += 5; /* done copy */ 585 ring_size += 5; /* done copy */
582 ring_size += 7; /* fence emit for done copy */ 586 ring_size += 7; /* fence emit for done copy */
583 r = radeon_ring_lock(rdev, ring_size); 587 r = radeon_ring_lock(rdev, ring_size);
584 WARN_ON(r); 588 if (r)
589 return r;
585 590
586 set_default_state(rdev); /* 14 */ 591 set_default_state(rdev); /* 14 */
587 set_shaders(rdev); /* 26 */ 592 set_shaders(rdev); /* 26 */
diff --git a/drivers/gpu/drm/radeon/r600_cs.c b/drivers/gpu/drm/radeon/r600_cs.c
index 44060b92d9e6..e4c45ec16507 100644
--- a/drivers/gpu/drm/radeon/r600_cs.c
+++ b/drivers/gpu/drm/radeon/r600_cs.c
@@ -36,6 +36,10 @@ static int r600_cs_packet_next_reloc_nomm(struct radeon_cs_parser *p,
36typedef int (*next_reloc_t)(struct radeon_cs_parser*, struct radeon_cs_reloc**); 36typedef int (*next_reloc_t)(struct radeon_cs_parser*, struct radeon_cs_reloc**);
37static next_reloc_t r600_cs_packet_next_reloc = &r600_cs_packet_next_reloc_mm; 37static next_reloc_t r600_cs_packet_next_reloc = &r600_cs_packet_next_reloc_mm;
38 38
39struct r600_cs_track {
40 u32 cb_color0_base_last;
41};
42
39/** 43/**
40 * r600_cs_packet_parse() - parse cp packet and point ib index to next packet 44 * r600_cs_packet_parse() - parse cp packet and point ib index to next packet
41 * @parser: parser structure holding parsing context. 45 * @parser: parser structure holding parsing context.
@@ -177,6 +181,28 @@ static int r600_cs_packet_next_reloc_nomm(struct radeon_cs_parser *p,
177} 181}
178 182
179/** 183/**
184 * r600_cs_packet_next_is_pkt3_nop() - test if next packet is packet3 nop for reloc
185 * @parser: parser structure holding parsing context.
186 *
187 * Check next packet is relocation packet3, do bo validation and compute
188 * GPU offset using the provided start.
189 **/
190static inline int r600_cs_packet_next_is_pkt3_nop(struct radeon_cs_parser *p)
191{
192 struct radeon_cs_packet p3reloc;
193 int r;
194
195 r = r600_cs_packet_parse(p, &p3reloc, p->idx);
196 if (r) {
197 return 0;
198 }
199 if (p3reloc.type != PACKET_TYPE3 || p3reloc.opcode != PACKET3_NOP) {
200 return 0;
201 }
202 return 1;
203}
204
205/**
180 * r600_cs_packet_next_vline() - parse userspace VLINE packet 206 * r600_cs_packet_next_vline() - parse userspace VLINE packet
181 * @parser: parser structure holding parsing context. 207 * @parser: parser structure holding parsing context.
182 * 208 *
@@ -337,6 +363,7 @@ static int r600_packet3_check(struct radeon_cs_parser *p,
337 struct radeon_cs_packet *pkt) 363 struct radeon_cs_packet *pkt)
338{ 364{
339 struct radeon_cs_reloc *reloc; 365 struct radeon_cs_reloc *reloc;
366 struct r600_cs_track *track;
340 volatile u32 *ib; 367 volatile u32 *ib;
341 unsigned idx; 368 unsigned idx;
342 unsigned i; 369 unsigned i;
@@ -344,6 +371,7 @@ static int r600_packet3_check(struct radeon_cs_parser *p,
344 int r; 371 int r;
345 u32 idx_value; 372 u32 idx_value;
346 373
374 track = (struct r600_cs_track *)p->track;
347 ib = p->ib->ptr; 375 ib = p->ib->ptr;
348 idx = pkt->idx + 1; 376 idx = pkt->idx + 1;
349 idx_value = radeon_get_ib_value(p, idx); 377 idx_value = radeon_get_ib_value(p, idx);
@@ -503,9 +531,60 @@ static int r600_packet3_check(struct radeon_cs_parser *p,
503 for (i = 0; i < pkt->count; i++) { 531 for (i = 0; i < pkt->count; i++) {
504 reg = start_reg + (4 * i); 532 reg = start_reg + (4 * i);
505 switch (reg) { 533 switch (reg) {
534 /* This register were added late, there is userspace
535 * which does provide relocation for those but set
536 * 0 offset. In order to avoid breaking old userspace
537 * we detect this and set address to point to last
538 * CB_COLOR0_BASE, note that if userspace doesn't set
539 * CB_COLOR0_BASE before this register we will report
540 * error. Old userspace always set CB_COLOR0_BASE
541 * before any of this.
542 */
543 case R_0280E0_CB_COLOR0_FRAG:
544 case R_0280E4_CB_COLOR1_FRAG:
545 case R_0280E8_CB_COLOR2_FRAG:
546 case R_0280EC_CB_COLOR3_FRAG:
547 case R_0280F0_CB_COLOR4_FRAG:
548 case R_0280F4_CB_COLOR5_FRAG:
549 case R_0280F8_CB_COLOR6_FRAG:
550 case R_0280FC_CB_COLOR7_FRAG:
551 case R_0280C0_CB_COLOR0_TILE:
552 case R_0280C4_CB_COLOR1_TILE:
553 case R_0280C8_CB_COLOR2_TILE:
554 case R_0280CC_CB_COLOR3_TILE:
555 case R_0280D0_CB_COLOR4_TILE:
556 case R_0280D4_CB_COLOR5_TILE:
557 case R_0280D8_CB_COLOR6_TILE:
558 case R_0280DC_CB_COLOR7_TILE:
559 if (!r600_cs_packet_next_is_pkt3_nop(p)) {
560 if (!track->cb_color0_base_last) {
561 dev_err(p->dev, "Broken old userspace ? no cb_color0_base supplied before trying to write 0x%08X\n", reg);
562 return -EINVAL;
563 }
564 ib[idx+1+i] = track->cb_color0_base_last;
565 printk_once(KERN_WARNING "radeon: You have old & broken userspace "
566 "please consider updating mesa & xf86-video-ati\n");
567 } else {
568 r = r600_cs_packet_next_reloc(p, &reloc);
569 if (r) {
570 dev_err(p->dev, "bad SET_CONTEXT_REG 0x%04X\n", reg);
571 return -EINVAL;
572 }
573 ib[idx+1+i] += (u32)((reloc->lobj.gpu_offset >> 8) & 0xffffffff);
574 }
575 break;
506 case DB_DEPTH_BASE: 576 case DB_DEPTH_BASE:
507 case DB_HTILE_DATA_BASE: 577 case DB_HTILE_DATA_BASE:
508 case CB_COLOR0_BASE: 578 case CB_COLOR0_BASE:
579 r = r600_cs_packet_next_reloc(p, &reloc);
580 if (r) {
581 DRM_ERROR("bad SET_CONTEXT_REG "
582 "0x%04X\n", reg);
583 return -EINVAL;
584 }
585 ib[idx+1+i] += (u32)((reloc->lobj.gpu_offset >> 8) & 0xffffffff);
586 track->cb_color0_base_last = ib[idx+1+i];
587 break;
509 case CB_COLOR1_BASE: 588 case CB_COLOR1_BASE:
510 case CB_COLOR2_BASE: 589 case CB_COLOR2_BASE:
511 case CB_COLOR3_BASE: 590 case CB_COLOR3_BASE:
@@ -678,8 +757,11 @@ static int r600_packet3_check(struct radeon_cs_parser *p,
678int r600_cs_parse(struct radeon_cs_parser *p) 757int r600_cs_parse(struct radeon_cs_parser *p)
679{ 758{
680 struct radeon_cs_packet pkt; 759 struct radeon_cs_packet pkt;
760 struct r600_cs_track *track;
681 int r; 761 int r;
682 762
763 track = kzalloc(sizeof(*track), GFP_KERNEL);
764 p->track = track;
683 do { 765 do {
684 r = r600_cs_packet_parse(p, &pkt, p->idx); 766 r = r600_cs_packet_parse(p, &pkt, p->idx);
685 if (r) { 767 if (r) {
@@ -757,6 +839,7 @@ int r600_cs_legacy(struct drm_device *dev, void *data, struct drm_file *filp,
757 /* initialize parser */ 839 /* initialize parser */
758 memset(&parser, 0, sizeof(struct radeon_cs_parser)); 840 memset(&parser, 0, sizeof(struct radeon_cs_parser));
759 parser.filp = filp; 841 parser.filp = filp;
842 parser.dev = &dev->pdev->dev;
760 parser.rdev = NULL; 843 parser.rdev = NULL;
761 parser.family = family; 844 parser.family = family;
762 parser.ib = &fake_ib; 845 parser.ib = &fake_ib;
diff --git a/drivers/gpu/drm/radeon/r600d.h b/drivers/gpu/drm/radeon/r600d.h
index 05894edadab4..30480881aed1 100644
--- a/drivers/gpu/drm/radeon/r600d.h
+++ b/drivers/gpu/drm/radeon/r600d.h
@@ -882,4 +882,29 @@
882#define S_000E60_SOFT_RESET_VMC(x) (((x) & 1) << 17) 882#define S_000E60_SOFT_RESET_VMC(x) (((x) & 1) << 17)
883 883
884#define R_005480_HDP_MEM_COHERENCY_FLUSH_CNTL 0x5480 884#define R_005480_HDP_MEM_COHERENCY_FLUSH_CNTL 0x5480
885
886#define R_0280E0_CB_COLOR0_FRAG 0x0280E0
887#define S_0280E0_BASE_256B(x) (((x) & 0xFFFFFFFF) << 0)
888#define G_0280E0_BASE_256B(x) (((x) >> 0) & 0xFFFFFFFF)
889#define C_0280E0_BASE_256B 0x00000000
890#define R_0280E4_CB_COLOR1_FRAG 0x0280E4
891#define R_0280E8_CB_COLOR2_FRAG 0x0280E8
892#define R_0280EC_CB_COLOR3_FRAG 0x0280EC
893#define R_0280F0_CB_COLOR4_FRAG 0x0280F0
894#define R_0280F4_CB_COLOR5_FRAG 0x0280F4
895#define R_0280F8_CB_COLOR6_FRAG 0x0280F8
896#define R_0280FC_CB_COLOR7_FRAG 0x0280FC
897#define R_0280C0_CB_COLOR0_TILE 0x0280C0
898#define S_0280C0_BASE_256B(x) (((x) & 0xFFFFFFFF) << 0)
899#define G_0280C0_BASE_256B(x) (((x) >> 0) & 0xFFFFFFFF)
900#define C_0280C0_BASE_256B 0x00000000
901#define R_0280C4_CB_COLOR1_TILE 0x0280C4
902#define R_0280C8_CB_COLOR2_TILE 0x0280C8
903#define R_0280CC_CB_COLOR3_TILE 0x0280CC
904#define R_0280D0_CB_COLOR4_TILE 0x0280D0
905#define R_0280D4_CB_COLOR5_TILE 0x0280D4
906#define R_0280D8_CB_COLOR6_TILE 0x0280D8
907#define R_0280DC_CB_COLOR7_TILE 0x0280DC
908
909
885#endif 910#endif
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index eb5f99b9469d..2d5f2bfa7201 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -410,13 +410,13 @@ struct r600_ih {
410 unsigned wptr_old; 410 unsigned wptr_old;
411 unsigned ring_size; 411 unsigned ring_size;
412 uint64_t gpu_addr; 412 uint64_t gpu_addr;
413 uint32_t align_mask;
414 uint32_t ptr_mask; 413 uint32_t ptr_mask;
415 spinlock_t lock; 414 spinlock_t lock;
416 bool enabled; 415 bool enabled;
417}; 416};
418 417
419struct r600_blit { 418struct r600_blit {
419 struct mutex mutex;
420 struct radeon_bo *shader_obj; 420 struct radeon_bo *shader_obj;
421 u64 shader_gpu_addr; 421 u64 shader_gpu_addr;
422 u32 vs_offset, ps_offset; 422 u32 vs_offset, ps_offset;
@@ -465,6 +465,7 @@ struct radeon_cs_chunk {
465}; 465};
466 466
467struct radeon_cs_parser { 467struct radeon_cs_parser {
468 struct device *dev;
468 struct radeon_device *rdev; 469 struct radeon_device *rdev;
469 struct drm_file *filp; 470 struct drm_file *filp;
470 /* chunks */ 471 /* chunks */
@@ -847,7 +848,7 @@ void r600_kms_blit_copy(struct radeon_device *rdev,
847 848
848static inline uint32_t r100_mm_rreg(struct radeon_device *rdev, uint32_t reg) 849static inline uint32_t r100_mm_rreg(struct radeon_device *rdev, uint32_t reg)
849{ 850{
850 if (reg < 0x10000) 851 if (reg < rdev->rmmio_size)
851 return readl(((void __iomem *)rdev->rmmio) + reg); 852 return readl(((void __iomem *)rdev->rmmio) + reg);
852 else { 853 else {
853 writel(reg, ((void __iomem *)rdev->rmmio) + RADEON_MM_INDEX); 854 writel(reg, ((void __iomem *)rdev->rmmio) + RADEON_MM_INDEX);
@@ -857,7 +858,7 @@ static inline uint32_t r100_mm_rreg(struct radeon_device *rdev, uint32_t reg)
857 858
858static inline void r100_mm_wreg(struct radeon_device *rdev, uint32_t reg, uint32_t v) 859static inline void r100_mm_wreg(struct radeon_device *rdev, uint32_t reg, uint32_t v)
859{ 860{
860 if (reg < 0x10000) 861 if (reg < rdev->rmmio_size)
861 writel(v, ((void __iomem *)rdev->rmmio) + reg); 862 writel(v, ((void __iomem *)rdev->rmmio) + reg);
862 else { 863 else {
863 writel(reg, ((void __iomem *)rdev->rmmio) + RADEON_MM_INDEX); 864 writel(reg, ((void __iomem *)rdev->rmmio) + RADEON_MM_INDEX);
@@ -1017,6 +1018,8 @@ static inline void radeon_ring_write(struct radeon_device *rdev, uint32_t v)
1017#define radeon_hpd_set_polarity(rdev, hpd) (rdev)->asic->hpd_set_polarity((rdev), (hpd)) 1018#define radeon_hpd_set_polarity(rdev, hpd) (rdev)->asic->hpd_set_polarity((rdev), (hpd))
1018 1019
1019/* Common functions */ 1020/* Common functions */
1021/* AGP */
1022extern void radeon_agp_disable(struct radeon_device *rdev);
1020extern int radeon_gart_table_vram_pin(struct radeon_device *rdev); 1023extern int radeon_gart_table_vram_pin(struct radeon_device *rdev);
1021extern int radeon_modeset_init(struct radeon_device *rdev); 1024extern int radeon_modeset_init(struct radeon_device *rdev);
1022extern void radeon_modeset_fini(struct radeon_device *rdev); 1025extern void radeon_modeset_fini(struct radeon_device *rdev);
@@ -1160,7 +1163,8 @@ extern int r600_irq_init(struct radeon_device *rdev);
1160extern void r600_irq_fini(struct radeon_device *rdev); 1163extern void r600_irq_fini(struct radeon_device *rdev);
1161extern void r600_ih_ring_init(struct radeon_device *rdev, unsigned ring_size); 1164extern void r600_ih_ring_init(struct radeon_device *rdev, unsigned ring_size);
1162extern int r600_irq_set(struct radeon_device *rdev); 1165extern int r600_irq_set(struct radeon_device *rdev);
1163 1166extern void r600_irq_suspend(struct radeon_device *rdev);
1167/* r600 audio */
1164extern int r600_audio_init(struct radeon_device *rdev); 1168extern int r600_audio_init(struct radeon_device *rdev);
1165extern int r600_audio_tmds_index(struct drm_encoder *encoder); 1169extern int r600_audio_tmds_index(struct drm_encoder *encoder);
1166extern void r600_audio_set_clock(struct drm_encoder *encoder, int clock); 1170extern void r600_audio_set_clock(struct drm_encoder *encoder, int clock);
diff --git a/drivers/gpu/drm/radeon/radeon_agp.c b/drivers/gpu/drm/radeon/radeon_agp.c
index 220f454ea9fa..c0681a5556dc 100644
--- a/drivers/gpu/drm/radeon/radeon_agp.c
+++ b/drivers/gpu/drm/radeon/radeon_agp.c
@@ -144,9 +144,19 @@ int radeon_agp_init(struct radeon_device *rdev)
144 144
145 ret = drm_agp_info(rdev->ddev, &info); 145 ret = drm_agp_info(rdev->ddev, &info);
146 if (ret) { 146 if (ret) {
147 drm_agp_release(rdev->ddev);
147 DRM_ERROR("Unable to get AGP info: %d\n", ret); 148 DRM_ERROR("Unable to get AGP info: %d\n", ret);
148 return ret; 149 return ret;
149 } 150 }
151
152 if (rdev->ddev->agp->agp_info.aper_size < 32) {
153 drm_agp_release(rdev->ddev);
154 dev_warn(rdev->dev, "AGP aperture too small (%zuM) "
155 "need at least 32M, disabling AGP\n",
156 rdev->ddev->agp->agp_info.aper_size);
157 return -EINVAL;
158 }
159
150 mode.mode = info.mode; 160 mode.mode = info.mode;
151 agp_status = (RREG32(RADEON_AGP_STATUS) | RADEON_AGPv3_MODE) & mode.mode; 161 agp_status = (RREG32(RADEON_AGP_STATUS) | RADEON_AGPv3_MODE) & mode.mode;
152 is_v3 = !!(agp_status & RADEON_AGPv3_MODE); 162 is_v3 = !!(agp_status & RADEON_AGPv3_MODE);
@@ -221,6 +231,7 @@ int radeon_agp_init(struct radeon_device *rdev)
221 ret = drm_agp_enable(rdev->ddev, mode); 231 ret = drm_agp_enable(rdev->ddev, mode);
222 if (ret) { 232 if (ret) {
223 DRM_ERROR("Unable to enable AGP (mode = 0x%lx)\n", mode.mode); 233 DRM_ERROR("Unable to enable AGP (mode = 0x%lx)\n", mode.mode);
234 drm_agp_release(rdev->ddev);
224 return ret; 235 return ret;
225 } 236 }
226 237
diff --git a/drivers/gpu/drm/radeon/radeon_clocks.c b/drivers/gpu/drm/radeon/radeon_clocks.c
index 812f24dbc2a8..73c4405bf42f 100644
--- a/drivers/gpu/drm/radeon/radeon_clocks.c
+++ b/drivers/gpu/drm/radeon/radeon_clocks.c
@@ -56,7 +56,7 @@ uint32_t radeon_legacy_get_engine_clock(struct radeon_device *rdev)
56 else if (post_div == 3) 56 else if (post_div == 3)
57 sclk >>= 2; 57 sclk >>= 2;
58 else if (post_div == 4) 58 else if (post_div == 4)
59 sclk >>= 4; 59 sclk >>= 3;
60 60
61 return sclk; 61 return sclk;
62} 62}
@@ -86,7 +86,7 @@ uint32_t radeon_legacy_get_memory_clock(struct radeon_device *rdev)
86 else if (post_div == 3) 86 else if (post_div == 3)
87 mclk >>= 2; 87 mclk >>= 2;
88 else if (post_div == 4) 88 else if (post_div == 4)
89 mclk >>= 4; 89 mclk >>= 3;
90 90
91 return mclk; 91 return mclk;
92} 92}
diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c
index 65590a0f1d93..1190148cf5e6 100644
--- a/drivers/gpu/drm/radeon/radeon_cs.c
+++ b/drivers/gpu/drm/radeon/radeon_cs.c
@@ -189,7 +189,7 @@ static void radeon_cs_parser_fini(struct radeon_cs_parser *parser, int error)
189{ 189{
190 unsigned i; 190 unsigned i;
191 191
192 if (error) { 192 if (error && parser->ib) {
193 radeon_bo_list_unvalidate(&parser->validated, 193 radeon_bo_list_unvalidate(&parser->validated,
194 parser->ib->fence); 194 parser->ib->fence);
195 } else { 195 } else {
@@ -231,6 +231,7 @@ int radeon_cs_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
231 memset(&parser, 0, sizeof(struct radeon_cs_parser)); 231 memset(&parser, 0, sizeof(struct radeon_cs_parser));
232 parser.filp = filp; 232 parser.filp = filp;
233 parser.rdev = rdev; 233 parser.rdev = rdev;
234 parser.dev = rdev->dev;
234 r = radeon_cs_parser_init(&parser, data); 235 r = radeon_cs_parser_init(&parser, data);
235 if (r) { 236 if (r) {
236 DRM_ERROR("Failed to initialize parser !\n"); 237 DRM_ERROR("Failed to initialize parser !\n");
diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
index 0c51f8e46613..768b1509fa03 100644
--- a/drivers/gpu/drm/radeon/radeon_device.c
+++ b/drivers/gpu/drm/radeon/radeon_device.c
@@ -544,6 +544,7 @@ void radeon_agp_disable(struct radeon_device *rdev)
544 rdev->asic->gart_tlb_flush = &r100_pci_gart_tlb_flush; 544 rdev->asic->gart_tlb_flush = &r100_pci_gart_tlb_flush;
545 rdev->asic->gart_set_page = &r100_pci_gart_set_page; 545 rdev->asic->gart_set_page = &r100_pci_gart_set_page;
546 } 546 }
547 rdev->mc.gtt_size = radeon_gart_size * 1024 * 1024;
547} 548}
548 549
549void radeon_check_arguments(struct radeon_device *rdev) 550void radeon_check_arguments(struct radeon_device *rdev)
diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c
index 0ec491ead2ff..6a92f994cc26 100644
--- a/drivers/gpu/drm/radeon/radeon_display.c
+++ b/drivers/gpu/drm/radeon/radeon_display.c
@@ -357,7 +357,8 @@ int radeon_ddc_get_modes(struct radeon_connector *radeon_connector)
357 if ((radeon_connector->base.connector_type == DRM_MODE_CONNECTOR_DisplayPort) || 357 if ((radeon_connector->base.connector_type == DRM_MODE_CONNECTOR_DisplayPort) ||
358 (radeon_connector->base.connector_type == DRM_MODE_CONNECTOR_eDP)) { 358 (radeon_connector->base.connector_type == DRM_MODE_CONNECTOR_eDP)) {
359 struct radeon_connector_atom_dig *dig = radeon_connector->con_priv; 359 struct radeon_connector_atom_dig *dig = radeon_connector->con_priv;
360 if (dig->dp_i2c_bus) 360 if ((dig->dp_sink_type == CONNECTOR_OBJECT_ID_DISPLAYPORT ||
361 dig->dp_sink_type == CONNECTOR_OBJECT_ID_eDP) && dig->dp_i2c_bus)
361 radeon_connector->edid = drm_get_edid(&radeon_connector->base, &dig->dp_i2c_bus->adapter); 362 radeon_connector->edid = drm_get_edid(&radeon_connector->base, &dig->dp_i2c_bus->adapter);
362 } 363 }
363 if (!radeon_connector->ddc_bus) 364 if (!radeon_connector->ddc_bus)
@@ -410,11 +411,12 @@ void radeon_compute_pll(struct radeon_pll *pll,
410 uint32_t *fb_div_p, 411 uint32_t *fb_div_p,
411 uint32_t *frac_fb_div_p, 412 uint32_t *frac_fb_div_p,
412 uint32_t *ref_div_p, 413 uint32_t *ref_div_p,
413 uint32_t *post_div_p, 414 uint32_t *post_div_p)
414 int flags)
415{ 415{
416 uint32_t min_ref_div = pll->min_ref_div; 416 uint32_t min_ref_div = pll->min_ref_div;
417 uint32_t max_ref_div = pll->max_ref_div; 417 uint32_t max_ref_div = pll->max_ref_div;
418 uint32_t min_post_div = pll->min_post_div;
419 uint32_t max_post_div = pll->max_post_div;
418 uint32_t min_fractional_feed_div = 0; 420 uint32_t min_fractional_feed_div = 0;
419 uint32_t max_fractional_feed_div = 0; 421 uint32_t max_fractional_feed_div = 0;
420 uint32_t best_vco = pll->best_vco; 422 uint32_t best_vco = pll->best_vco;
@@ -430,7 +432,7 @@ void radeon_compute_pll(struct radeon_pll *pll,
430 DRM_DEBUG("PLL freq %llu %u %u\n", freq, pll->min_ref_div, pll->max_ref_div); 432 DRM_DEBUG("PLL freq %llu %u %u\n", freq, pll->min_ref_div, pll->max_ref_div);
431 freq = freq * 1000; 433 freq = freq * 1000;
432 434
433 if (flags & RADEON_PLL_USE_REF_DIV) 435 if (pll->flags & RADEON_PLL_USE_REF_DIV)
434 min_ref_div = max_ref_div = pll->reference_div; 436 min_ref_div = max_ref_div = pll->reference_div;
435 else { 437 else {
436 while (min_ref_div < max_ref_div-1) { 438 while (min_ref_div < max_ref_div-1) {
@@ -445,19 +447,22 @@ void radeon_compute_pll(struct radeon_pll *pll,
445 } 447 }
446 } 448 }
447 449
448 if (flags & RADEON_PLL_USE_FRAC_FB_DIV) { 450 if (pll->flags & RADEON_PLL_USE_POST_DIV)
451 min_post_div = max_post_div = pll->post_div;
452
453 if (pll->flags & RADEON_PLL_USE_FRAC_FB_DIV) {
449 min_fractional_feed_div = pll->min_frac_feedback_div; 454 min_fractional_feed_div = pll->min_frac_feedback_div;
450 max_fractional_feed_div = pll->max_frac_feedback_div; 455 max_fractional_feed_div = pll->max_frac_feedback_div;
451 } 456 }
452 457
453 for (post_div = pll->min_post_div; post_div <= pll->max_post_div; ++post_div) { 458 for (post_div = min_post_div; post_div <= max_post_div; ++post_div) {
454 uint32_t ref_div; 459 uint32_t ref_div;
455 460
456 if ((flags & RADEON_PLL_NO_ODD_POST_DIV) && (post_div & 1)) 461 if ((pll->flags & RADEON_PLL_NO_ODD_POST_DIV) && (post_div & 1))
457 continue; 462 continue;
458 463
459 /* legacy radeons only have a few post_divs */ 464 /* legacy radeons only have a few post_divs */
460 if (flags & RADEON_PLL_LEGACY) { 465 if (pll->flags & RADEON_PLL_LEGACY) {
461 if ((post_div == 5) || 466 if ((post_div == 5) ||
462 (post_div == 7) || 467 (post_div == 7) ||
463 (post_div == 9) || 468 (post_div == 9) ||
@@ -504,7 +509,7 @@ void radeon_compute_pll(struct radeon_pll *pll,
504 tmp += (uint64_t)pll->reference_freq * 1000 * frac_feedback_div; 509 tmp += (uint64_t)pll->reference_freq * 1000 * frac_feedback_div;
505 current_freq = radeon_div(tmp, ref_div * post_div); 510 current_freq = radeon_div(tmp, ref_div * post_div);
506 511
507 if (flags & RADEON_PLL_PREFER_CLOSEST_LOWER) { 512 if (pll->flags & RADEON_PLL_PREFER_CLOSEST_LOWER) {
508 error = freq - current_freq; 513 error = freq - current_freq;
509 error = error < 0 ? 0xffffffff : error; 514 error = error < 0 ? 0xffffffff : error;
510 } else 515 } else
@@ -531,12 +536,12 @@ void radeon_compute_pll(struct radeon_pll *pll,
531 best_freq = current_freq; 536 best_freq = current_freq;
532 best_error = error; 537 best_error = error;
533 best_vco_diff = vco_diff; 538 best_vco_diff = vco_diff;
534 } else if (((flags & RADEON_PLL_PREFER_LOW_REF_DIV) && (ref_div < best_ref_div)) || 539 } else if (((pll->flags & RADEON_PLL_PREFER_LOW_REF_DIV) && (ref_div < best_ref_div)) ||
535 ((flags & RADEON_PLL_PREFER_HIGH_REF_DIV) && (ref_div > best_ref_div)) || 540 ((pll->flags & RADEON_PLL_PREFER_HIGH_REF_DIV) && (ref_div > best_ref_div)) ||
536 ((flags & RADEON_PLL_PREFER_LOW_FB_DIV) && (feedback_div < best_feedback_div)) || 541 ((pll->flags & RADEON_PLL_PREFER_LOW_FB_DIV) && (feedback_div < best_feedback_div)) ||
537 ((flags & RADEON_PLL_PREFER_HIGH_FB_DIV) && (feedback_div > best_feedback_div)) || 542 ((pll->flags & RADEON_PLL_PREFER_HIGH_FB_DIV) && (feedback_div > best_feedback_div)) ||
538 ((flags & RADEON_PLL_PREFER_LOW_POST_DIV) && (post_div < best_post_div)) || 543 ((pll->flags & RADEON_PLL_PREFER_LOW_POST_DIV) && (post_div < best_post_div)) ||
539 ((flags & RADEON_PLL_PREFER_HIGH_POST_DIV) && (post_div > best_post_div))) { 544 ((pll->flags & RADEON_PLL_PREFER_HIGH_POST_DIV) && (post_div > best_post_div))) {
540 best_post_div = post_div; 545 best_post_div = post_div;
541 best_ref_div = ref_div; 546 best_ref_div = ref_div;
542 best_feedback_div = feedback_div; 547 best_feedback_div = feedback_div;
@@ -572,8 +577,7 @@ void radeon_compute_pll_avivo(struct radeon_pll *pll,
572 uint32_t *fb_div_p, 577 uint32_t *fb_div_p,
573 uint32_t *frac_fb_div_p, 578 uint32_t *frac_fb_div_p,
574 uint32_t *ref_div_p, 579 uint32_t *ref_div_p,
575 uint32_t *post_div_p, 580 uint32_t *post_div_p)
576 int flags)
577{ 581{
578 fixed20_12 m, n, frac_n, p, f_vco, f_pclk, best_freq; 582 fixed20_12 m, n, frac_n, p, f_vco, f_pclk, best_freq;
579 fixed20_12 pll_out_max, pll_out_min; 583 fixed20_12 pll_out_max, pll_out_min;
@@ -667,7 +671,6 @@ static void radeon_user_framebuffer_destroy(struct drm_framebuffer *fb)
667 radeonfb_remove(dev, fb); 671 radeonfb_remove(dev, fb);
668 672
669 if (radeon_fb->obj) { 673 if (radeon_fb->obj) {
670 radeon_gem_object_unpin(radeon_fb->obj);
671 mutex_lock(&dev->struct_mutex); 674 mutex_lock(&dev->struct_mutex);
672 drm_gem_object_unreference(radeon_fb->obj); 675 drm_gem_object_unreference(radeon_fb->obj);
673 mutex_unlock(&dev->struct_mutex); 676 mutex_unlock(&dev->struct_mutex);
@@ -715,7 +718,11 @@ radeon_user_framebuffer_create(struct drm_device *dev,
715 struct drm_gem_object *obj; 718 struct drm_gem_object *obj;
716 719
717 obj = drm_gem_object_lookup(dev, file_priv, mode_cmd->handle); 720 obj = drm_gem_object_lookup(dev, file_priv, mode_cmd->handle);
718 721 if (obj == NULL) {
722 dev_err(&dev->pdev->dev, "No GEM object associated to handle 0x%08X, "
723 "can't create framebuffer\n", mode_cmd->handle);
724 return NULL;
725 }
719 return radeon_framebuffer_create(dev, mode_cmd, obj); 726 return radeon_framebuffer_create(dev, mode_cmd, obj);
720} 727}
721 728
diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c b/drivers/gpu/drm/radeon/radeon_encoders.c
index 82eb551970b9..3c91724457ca 100644
--- a/drivers/gpu/drm/radeon/radeon_encoders.c
+++ b/drivers/gpu/drm/radeon/radeon_encoders.c
@@ -156,6 +156,26 @@ radeon_get_encoder_id(struct drm_device *dev, uint32_t supported_device, uint8_t
156 return ret; 156 return ret;
157} 157}
158 158
159static inline bool radeon_encoder_is_digital(struct drm_encoder *encoder)
160{
161 struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
162 switch (radeon_encoder->encoder_id) {
163 case ENCODER_OBJECT_ID_INTERNAL_LVDS:
164 case ENCODER_OBJECT_ID_INTERNAL_TMDS1:
165 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1:
166 case ENCODER_OBJECT_ID_INTERNAL_LVTM1:
167 case ENCODER_OBJECT_ID_INTERNAL_DVO1:
168 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1:
169 case ENCODER_OBJECT_ID_INTERNAL_DDI:
170 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
171 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:
172 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:
173 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:
174 return true;
175 default:
176 return false;
177 }
178}
159void 179void
160radeon_link_encoder_connector(struct drm_device *dev) 180radeon_link_encoder_connector(struct drm_device *dev)
161{ 181{
@@ -202,7 +222,7 @@ radeon_get_connector_for_encoder(struct drm_encoder *encoder)
202 222
203 list_for_each_entry(connector, &dev->mode_config.connector_list, head) { 223 list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
204 radeon_connector = to_radeon_connector(connector); 224 radeon_connector = to_radeon_connector(connector);
205 if (radeon_encoder->devices & radeon_connector->devices) 225 if (radeon_encoder->active_device & radeon_connector->devices)
206 return connector; 226 return connector;
207 } 227 }
208 return NULL; 228 return NULL;
@@ -676,31 +696,11 @@ atombios_dig_encoder_setup(struct drm_encoder *encoder, int action)
676 696
677 memset(&args, 0, sizeof(args)); 697 memset(&args, 0, sizeof(args));
678 698
679 if (ASIC_IS_DCE32(rdev)) { 699 if (dig->dig_encoder)
680 if (dig->dig_block) 700 index = GetIndexIntoMasterTable(COMMAND, DIG2EncoderControl);
681 index = GetIndexIntoMasterTable(COMMAND, DIG2EncoderControl); 701 else
682 else 702 index = GetIndexIntoMasterTable(COMMAND, DIG1EncoderControl);
683 index = GetIndexIntoMasterTable(COMMAND, DIG1EncoderControl); 703 num = dig->dig_encoder + 1;
684 num = dig->dig_block + 1;
685 } else {
686 switch (radeon_encoder->encoder_id) {
687 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
688 /* XXX doesn't really matter which dig encoder we pick as long as it's
689 * not already in use
690 */
691 if (dig_connector->linkb)
692 index = GetIndexIntoMasterTable(COMMAND, DIG2EncoderControl);
693 else
694 index = GetIndexIntoMasterTable(COMMAND, DIG1EncoderControl);
695 num = 1;
696 break;
697 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:
698 /* Only dig2 encoder can drive LVTMA */
699 index = GetIndexIntoMasterTable(COMMAND, DIG2EncoderControl);
700 num = 2;
701 break;
702 }
703 }
704 704
705 atom_parse_cmd_header(rdev->mode_info.atom_context, index, &frev, &crev); 705 atom_parse_cmd_header(rdev->mode_info.atom_context, index, &frev, &crev);
706 706
@@ -822,7 +822,7 @@ atombios_dig_transmitter_setup(struct drm_encoder *encoder, int action, uint8_t
822 args.v1.usPixelClock = cpu_to_le16(radeon_encoder->pixel_clock / 10); 822 args.v1.usPixelClock = cpu_to_le16(radeon_encoder->pixel_clock / 10);
823 } 823 }
824 if (ASIC_IS_DCE32(rdev)) { 824 if (ASIC_IS_DCE32(rdev)) {
825 if (dig->dig_block) 825 if (dig->dig_encoder == 1)
826 args.v2.acConfig.ucEncoderSel = 1; 826 args.v2.acConfig.ucEncoderSel = 1;
827 if (dig_connector->linkb) 827 if (dig_connector->linkb)
828 args.v2.acConfig.ucLinkSel = 1; 828 args.v2.acConfig.ucLinkSel = 1;
@@ -849,17 +849,16 @@ atombios_dig_transmitter_setup(struct drm_encoder *encoder, int action, uint8_t
849 args.v2.acConfig.fCoherentMode = 1; 849 args.v2.acConfig.fCoherentMode = 1;
850 } 850 }
851 } else { 851 } else {
852
852 args.v1.ucConfig = ATOM_TRANSMITTER_CONFIG_CLKSRC_PPLL; 853 args.v1.ucConfig = ATOM_TRANSMITTER_CONFIG_CLKSRC_PPLL;
853 854
855 if (dig->dig_encoder)
856 args.v1.ucConfig |= ATOM_TRANSMITTER_CONFIG_DIG2_ENCODER;
857 else
858 args.v1.ucConfig |= ATOM_TRANSMITTER_CONFIG_DIG1_ENCODER;
859
854 switch (radeon_encoder->encoder_id) { 860 switch (radeon_encoder->encoder_id) {
855 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY: 861 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
856 /* XXX doesn't really matter which dig encoder we pick as long as it's
857 * not already in use
858 */
859 if (dig_connector->linkb)
860 args.v1.ucConfig |= ATOM_TRANSMITTER_CONFIG_DIG2_ENCODER;
861 else
862 args.v1.ucConfig |= ATOM_TRANSMITTER_CONFIG_DIG1_ENCODER;
863 if (rdev->flags & RADEON_IS_IGP) { 862 if (rdev->flags & RADEON_IS_IGP) {
864 if (radeon_encoder->pixel_clock > 165000) { 863 if (radeon_encoder->pixel_clock > 165000) {
865 if (dig_connector->igp_lane_info & 0x3) 864 if (dig_connector->igp_lane_info & 0x3)
@@ -878,10 +877,6 @@ atombios_dig_transmitter_setup(struct drm_encoder *encoder, int action, uint8_t
878 } 877 }
879 } 878 }
880 break; 879 break;
881 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:
882 /* Only dig2 encoder can drive LVTMA */
883 args.v1.ucConfig |= ATOM_TRANSMITTER_CONFIG_DIG2_ENCODER;
884 break;
885 } 880 }
886 881
887 if (radeon_encoder->pixel_clock > 165000) 882 if (radeon_encoder->pixel_clock > 165000)
@@ -1046,6 +1041,7 @@ atombios_set_encoder_crtc_source(struct drm_encoder *encoder)
1046 union crtc_sourc_param args; 1041 union crtc_sourc_param args;
1047 int index = GetIndexIntoMasterTable(COMMAND, SelectCRTC_Source); 1042 int index = GetIndexIntoMasterTable(COMMAND, SelectCRTC_Source);
1048 uint8_t frev, crev; 1043 uint8_t frev, crev;
1044 struct radeon_encoder_atom_dig *dig;
1049 1045
1050 memset(&args, 0, sizeof(args)); 1046 memset(&args, 0, sizeof(args));
1051 1047
@@ -1109,40 +1105,16 @@ atombios_set_encoder_crtc_source(struct drm_encoder *encoder)
1109 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY: 1105 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
1110 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1: 1106 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:
1111 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2: 1107 case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:
1112 if (ASIC_IS_DCE32(rdev)) { 1108 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:
1113 if (radeon_crtc->crtc_id) 1109 dig = radeon_encoder->enc_priv;
1114 args.v2.ucEncoderID = ASIC_INT_DIG2_ENCODER_ID; 1110 if (dig->dig_encoder)
1115 else 1111 args.v2.ucEncoderID = ASIC_INT_DIG2_ENCODER_ID;
1116 args.v2.ucEncoderID = ASIC_INT_DIG1_ENCODER_ID; 1112 else
1117 } else { 1113 args.v2.ucEncoderID = ASIC_INT_DIG1_ENCODER_ID;
1118 struct drm_connector *connector;
1119 struct radeon_connector *radeon_connector;
1120 struct radeon_connector_atom_dig *dig_connector;
1121
1122 connector = radeon_get_connector_for_encoder(encoder);
1123 if (!connector)
1124 return;
1125 radeon_connector = to_radeon_connector(connector);
1126 if (!radeon_connector->con_priv)
1127 return;
1128 dig_connector = radeon_connector->con_priv;
1129
1130 /* XXX doesn't really matter which dig encoder we pick as long as it's
1131 * not already in use
1132 */
1133 if (dig_connector->linkb)
1134 args.v2.ucEncoderID = ASIC_INT_DIG2_ENCODER_ID;
1135 else
1136 args.v2.ucEncoderID = ASIC_INT_DIG1_ENCODER_ID;
1137 }
1138 break; 1114 break;
1139 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1: 1115 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1:
1140 args.v2.ucEncoderID = ASIC_INT_DVO_ENCODER_ID; 1116 args.v2.ucEncoderID = ASIC_INT_DVO_ENCODER_ID;
1141 break; 1117 break;
1142 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:
1143 /* Only dig2 encoder can drive LVTMA */
1144 args.v2.ucEncoderID = ASIC_INT_DIG2_ENCODER_ID;
1145 break;
1146 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: 1118 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1:
1147 if (radeon_encoder->active_device & (ATOM_DEVICE_TV_SUPPORT)) 1119 if (radeon_encoder->active_device & (ATOM_DEVICE_TV_SUPPORT))
1148 args.v2.ucEncoderID = ASIC_INT_TV_ENCODER_ID; 1120 args.v2.ucEncoderID = ASIC_INT_TV_ENCODER_ID;
@@ -1202,6 +1174,47 @@ atombios_apply_encoder_quirks(struct drm_encoder *encoder,
1202 } 1174 }
1203} 1175}
1204 1176
1177static int radeon_atom_pick_dig_encoder(struct drm_encoder *encoder)
1178{
1179 struct drm_device *dev = encoder->dev;
1180 struct radeon_device *rdev = dev->dev_private;
1181 struct radeon_crtc *radeon_crtc = to_radeon_crtc(encoder->crtc);
1182 struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
1183 struct drm_encoder *test_encoder;
1184 struct radeon_encoder_atom_dig *dig;
1185 uint32_t dig_enc_in_use = 0;
1186 /* on DCE32 and encoder can driver any block so just crtc id */
1187 if (ASIC_IS_DCE32(rdev)) {
1188 return radeon_crtc->crtc_id;
1189 }
1190
1191 /* on DCE3 - LVTMA can only be driven by DIGB */
1192 list_for_each_entry(test_encoder, &dev->mode_config.encoder_list, head) {
1193 struct radeon_encoder *radeon_test_encoder;
1194
1195 if (encoder == test_encoder)
1196 continue;
1197
1198 if (!radeon_encoder_is_digital(test_encoder))
1199 continue;
1200
1201 radeon_test_encoder = to_radeon_encoder(test_encoder);
1202 dig = radeon_test_encoder->enc_priv;
1203
1204 if (dig->dig_encoder >= 0)
1205 dig_enc_in_use |= (1 << dig->dig_encoder);
1206 }
1207
1208 if (radeon_encoder->encoder_id == ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA) {
1209 if (dig_enc_in_use & 0x2)
1210 DRM_ERROR("LVDS required digital encoder 2 but it was in use - stealing\n");
1211 return 1;
1212 }
1213 if (!(dig_enc_in_use & 1))
1214 return 0;
1215 return 1;
1216}
1217
1205static void 1218static void
1206radeon_atom_encoder_mode_set(struct drm_encoder *encoder, 1219radeon_atom_encoder_mode_set(struct drm_encoder *encoder,
1207 struct drm_display_mode *mode, 1220 struct drm_display_mode *mode,
@@ -1214,12 +1227,9 @@ radeon_atom_encoder_mode_set(struct drm_encoder *encoder,
1214 1227
1215 if (radeon_encoder->active_device & 1228 if (radeon_encoder->active_device &
1216 (ATOM_DEVICE_DFP_SUPPORT | ATOM_DEVICE_LCD_SUPPORT)) { 1229 (ATOM_DEVICE_DFP_SUPPORT | ATOM_DEVICE_LCD_SUPPORT)) {
1217 if (radeon_encoder->enc_priv) { 1230 struct radeon_encoder_atom_dig *dig = radeon_encoder->enc_priv;
1218 struct radeon_encoder_atom_dig *dig; 1231 if (dig)
1219 1232 dig->dig_encoder = radeon_atom_pick_dig_encoder(encoder);
1220 dig = radeon_encoder->enc_priv;
1221 dig->dig_block = radeon_crtc->crtc_id;
1222 }
1223 } 1233 }
1224 radeon_encoder->pixel_clock = adjusted_mode->clock; 1234 radeon_encoder->pixel_clock = adjusted_mode->clock;
1225 1235
@@ -1379,7 +1389,13 @@ static void radeon_atom_encoder_commit(struct drm_encoder *encoder)
1379static void radeon_atom_encoder_disable(struct drm_encoder *encoder) 1389static void radeon_atom_encoder_disable(struct drm_encoder *encoder)
1380{ 1390{
1381 struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder); 1391 struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
1392 struct radeon_encoder_atom_dig *dig;
1382 radeon_atom_encoder_dpms(encoder, DRM_MODE_DPMS_OFF); 1393 radeon_atom_encoder_dpms(encoder, DRM_MODE_DPMS_OFF);
1394
1395 if (radeon_encoder_is_digital(encoder)) {
1396 dig = radeon_encoder->enc_priv;
1397 dig->dig_encoder = -1;
1398 }
1383 radeon_encoder->active_device = 0; 1399 radeon_encoder->active_device = 0;
1384} 1400}
1385 1401
@@ -1436,6 +1452,7 @@ radeon_atombios_set_dig_info(struct radeon_encoder *radeon_encoder)
1436 1452
1437 /* coherent mode by default */ 1453 /* coherent mode by default */
1438 dig->coherent_mode = true; 1454 dig->coherent_mode = true;
1455 dig->dig_encoder = -1;
1439 1456
1440 return dig; 1457 return dig;
1441} 1458}
diff --git a/drivers/gpu/drm/radeon/radeon_legacy_crtc.c b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
index cc27485a07ad..b6d8081e1246 100644
--- a/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
+++ b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
@@ -339,69 +339,6 @@ void radeon_crtc_dpms(struct drm_crtc *crtc, int mode)
339 } 339 }
340} 340}
341 341
342/* properly set crtc bpp when using atombios */
343void radeon_legacy_atom_set_surface(struct drm_crtc *crtc)
344{
345 struct drm_device *dev = crtc->dev;
346 struct radeon_device *rdev = dev->dev_private;
347 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
348 int format;
349 uint32_t crtc_gen_cntl;
350 uint32_t disp_merge_cntl;
351 uint32_t crtc_pitch;
352
353 switch (crtc->fb->bits_per_pixel) {
354 case 8:
355 format = 2;
356 break;
357 case 15: /* 555 */
358 format = 3;
359 break;
360 case 16: /* 565 */
361 format = 4;
362 break;
363 case 24: /* RGB */
364 format = 5;
365 break;
366 case 32: /* xRGB */
367 format = 6;
368 break;
369 default:
370 return;
371 }
372
373 crtc_pitch = ((((crtc->fb->pitch / (crtc->fb->bits_per_pixel / 8)) * crtc->fb->bits_per_pixel) +
374 ((crtc->fb->bits_per_pixel * 8) - 1)) /
375 (crtc->fb->bits_per_pixel * 8));
376 crtc_pitch |= crtc_pitch << 16;
377
378 WREG32(RADEON_CRTC_PITCH + radeon_crtc->crtc_offset, crtc_pitch);
379
380 switch (radeon_crtc->crtc_id) {
381 case 0:
382 disp_merge_cntl = RREG32(RADEON_DISP_MERGE_CNTL);
383 disp_merge_cntl &= ~RADEON_DISP_RGB_OFFSET_EN;
384 WREG32(RADEON_DISP_MERGE_CNTL, disp_merge_cntl);
385
386 crtc_gen_cntl = RREG32(RADEON_CRTC_GEN_CNTL) & 0xfffff0ff;
387 crtc_gen_cntl |= (format << 8);
388 crtc_gen_cntl |= RADEON_CRTC_EXT_DISP_EN;
389 WREG32(RADEON_CRTC_GEN_CNTL, crtc_gen_cntl);
390 break;
391 case 1:
392 disp_merge_cntl = RREG32(RADEON_DISP2_MERGE_CNTL);
393 disp_merge_cntl &= ~RADEON_DISP2_RGB_OFFSET_EN;
394 WREG32(RADEON_DISP2_MERGE_CNTL, disp_merge_cntl);
395
396 crtc_gen_cntl = RREG32(RADEON_CRTC2_GEN_CNTL) & 0xfffff0ff;
397 crtc_gen_cntl |= (format << 8);
398 WREG32(RADEON_CRTC2_GEN_CNTL, crtc_gen_cntl);
399 WREG32(RADEON_FP_H2_SYNC_STRT_WID, RREG32(RADEON_CRTC2_H_SYNC_STRT_WID));
400 WREG32(RADEON_FP_V2_SYNC_STRT_WID, RREG32(RADEON_CRTC2_V_SYNC_STRT_WID));
401 break;
402 }
403}
404
405int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y, 342int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y,
406 struct drm_framebuffer *old_fb) 343 struct drm_framebuffer *old_fb)
407{ 344{
@@ -755,7 +692,6 @@ static void radeon_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
755 uint32_t post_divider = 0; 692 uint32_t post_divider = 0;
756 uint32_t freq = 0; 693 uint32_t freq = 0;
757 uint8_t pll_gain; 694 uint8_t pll_gain;
758 int pll_flags = RADEON_PLL_LEGACY;
759 bool use_bios_divs = false; 695 bool use_bios_divs = false;
760 /* PLL registers */ 696 /* PLL registers */
761 uint32_t pll_ref_div = 0; 697 uint32_t pll_ref_div = 0;
@@ -789,10 +725,12 @@ static void radeon_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
789 else 725 else
790 pll = &rdev->clock.p1pll; 726 pll = &rdev->clock.p1pll;
791 727
728 pll->flags = RADEON_PLL_LEGACY;
729
792 if (mode->clock > 200000) /* range limits??? */ 730 if (mode->clock > 200000) /* range limits??? */
793 pll_flags |= RADEON_PLL_PREFER_HIGH_FB_DIV; 731 pll->flags |= RADEON_PLL_PREFER_HIGH_FB_DIV;
794 else 732 else
795 pll_flags |= RADEON_PLL_PREFER_LOW_REF_DIV; 733 pll->flags |= RADEON_PLL_PREFER_LOW_REF_DIV;
796 734
797 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) { 735 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {
798 if (encoder->crtc == crtc) { 736 if (encoder->crtc == crtc) {
@@ -804,7 +742,7 @@ static void radeon_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
804 } 742 }
805 743
806 if (encoder->encoder_type != DRM_MODE_ENCODER_DAC) 744 if (encoder->encoder_type != DRM_MODE_ENCODER_DAC)
807 pll_flags |= RADEON_PLL_NO_ODD_POST_DIV; 745 pll->flags |= RADEON_PLL_NO_ODD_POST_DIV;
808 if (encoder->encoder_type == DRM_MODE_ENCODER_LVDS) { 746 if (encoder->encoder_type == DRM_MODE_ENCODER_LVDS) {
809 if (!rdev->is_atom_bios) { 747 if (!rdev->is_atom_bios) {
810 struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder); 748 struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
@@ -819,7 +757,7 @@ static void radeon_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
819 } 757 }
820 } 758 }
821 } 759 }
822 pll_flags |= RADEON_PLL_USE_REF_DIV; 760 pll->flags |= RADEON_PLL_USE_REF_DIV;
823 } 761 }
824 } 762 }
825 } 763 }
@@ -829,8 +767,7 @@ static void radeon_set_pll(struct drm_crtc *crtc, struct drm_display_mode *mode)
829 if (!use_bios_divs) { 767 if (!use_bios_divs) {
830 radeon_compute_pll(pll, mode->clock, 768 radeon_compute_pll(pll, mode->clock,
831 &freq, &feedback_div, &frac_fb_div, 769 &freq, &feedback_div, &frac_fb_div,
832 &reference_div, &post_divider, 770 &reference_div, &post_divider);
833 pll_flags);
834 771
835 for (post_div = &post_divs[0]; post_div->divider; ++post_div) { 772 for (post_div = &post_divs[0]; post_div->divider; ++post_div) {
836 if (post_div->divider == post_divider) 773 if (post_div->divider == post_divider)
diff --git a/drivers/gpu/drm/radeon/radeon_mode.h b/drivers/gpu/drm/radeon/radeon_mode.h
index 91cb041cb40d..e81b2aeb6a8f 100644
--- a/drivers/gpu/drm/radeon/radeon_mode.h
+++ b/drivers/gpu/drm/radeon/radeon_mode.h
@@ -125,16 +125,24 @@ struct radeon_tmds_pll {
125#define RADEON_PLL_PREFER_HIGH_POST_DIV (1 << 9) 125#define RADEON_PLL_PREFER_HIGH_POST_DIV (1 << 9)
126#define RADEON_PLL_USE_FRAC_FB_DIV (1 << 10) 126#define RADEON_PLL_USE_FRAC_FB_DIV (1 << 10)
127#define RADEON_PLL_PREFER_CLOSEST_LOWER (1 << 11) 127#define RADEON_PLL_PREFER_CLOSEST_LOWER (1 << 11)
128#define RADEON_PLL_USE_POST_DIV (1 << 12)
128 129
129struct radeon_pll { 130struct radeon_pll {
130 uint16_t reference_freq; 131 /* reference frequency */
131 uint16_t reference_div; 132 uint32_t reference_freq;
133
134 /* fixed dividers */
135 uint32_t reference_div;
136 uint32_t post_div;
137
138 /* pll in/out limits */
132 uint32_t pll_in_min; 139 uint32_t pll_in_min;
133 uint32_t pll_in_max; 140 uint32_t pll_in_max;
134 uint32_t pll_out_min; 141 uint32_t pll_out_min;
135 uint32_t pll_out_max; 142 uint32_t pll_out_max;
136 uint16_t xclk; 143 uint32_t best_vco;
137 144
145 /* divider limits */
138 uint32_t min_ref_div; 146 uint32_t min_ref_div;
139 uint32_t max_ref_div; 147 uint32_t max_ref_div;
140 uint32_t min_post_div; 148 uint32_t min_post_div;
@@ -143,7 +151,12 @@ struct radeon_pll {
143 uint32_t max_feedback_div; 151 uint32_t max_feedback_div;
144 uint32_t min_frac_feedback_div; 152 uint32_t min_frac_feedback_div;
145 uint32_t max_frac_feedback_div; 153 uint32_t max_frac_feedback_div;
146 uint32_t best_vco; 154
155 /* flags for the current clock */
156 uint32_t flags;
157
158 /* pll id */
159 uint32_t id;
147}; 160};
148 161
149struct radeon_i2c_chan { 162struct radeon_i2c_chan {
@@ -286,7 +299,7 @@ struct radeon_atom_ss {
286struct radeon_encoder_atom_dig { 299struct radeon_encoder_atom_dig {
287 /* atom dig */ 300 /* atom dig */
288 bool coherent_mode; 301 bool coherent_mode;
289 int dig_block; 302 int dig_encoder; /* -1 disabled, 0 DIGA, 1 DIGB */
290 /* atom lvds */ 303 /* atom lvds */
291 uint32_t lvds_misc; 304 uint32_t lvds_misc;
292 uint16_t panel_pwr_delay; 305 uint16_t panel_pwr_delay;
@@ -417,8 +430,7 @@ extern void radeon_compute_pll(struct radeon_pll *pll,
417 uint32_t *fb_div_p, 430 uint32_t *fb_div_p,
418 uint32_t *frac_fb_div_p, 431 uint32_t *frac_fb_div_p,
419 uint32_t *ref_div_p, 432 uint32_t *ref_div_p,
420 uint32_t *post_div_p, 433 uint32_t *post_div_p);
421 int flags);
422 434
423extern void radeon_compute_pll_avivo(struct radeon_pll *pll, 435extern void radeon_compute_pll_avivo(struct radeon_pll *pll,
424 uint64_t freq, 436 uint64_t freq,
@@ -426,8 +438,7 @@ extern void radeon_compute_pll_avivo(struct radeon_pll *pll,
426 uint32_t *fb_div_p, 438 uint32_t *fb_div_p,
427 uint32_t *frac_fb_div_p, 439 uint32_t *frac_fb_div_p,
428 uint32_t *ref_div_p, 440 uint32_t *ref_div_p,
429 uint32_t *post_div_p, 441 uint32_t *post_div_p);
430 int flags);
431 442
432extern void radeon_setup_encoder_clones(struct drm_device *dev); 443extern void radeon_setup_encoder_clones(struct drm_device *dev);
433 444
@@ -453,7 +464,6 @@ extern void atombios_crtc_dpms(struct drm_crtc *crtc, int mode);
453 464
454extern int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y, 465extern int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y,
455 struct drm_framebuffer *old_fb); 466 struct drm_framebuffer *old_fb);
456extern void radeon_legacy_atom_set_surface(struct drm_crtc *crtc);
457 467
458extern int radeon_crtc_cursor_set(struct drm_crtc *crtc, 468extern int radeon_crtc_cursor_set(struct drm_crtc *crtc,
459 struct drm_file *file_priv, 469 struct drm_file *file_priv,
diff --git a/drivers/gpu/drm/radeon/radeon_object.c b/drivers/gpu/drm/radeon/radeon_object.c
index 4e636de877b2..d72a71bff218 100644
--- a/drivers/gpu/drm/radeon/radeon_object.c
+++ b/drivers/gpu/drm/radeon/radeon_object.c
@@ -220,7 +220,8 @@ int radeon_bo_unpin(struct radeon_bo *bo)
220 220
221int radeon_bo_evict_vram(struct radeon_device *rdev) 221int radeon_bo_evict_vram(struct radeon_device *rdev)
222{ 222{
223 if (rdev->flags & RADEON_IS_IGP) { 223 /* late 2.6.33 fix IGP hibernate - we need pm ops to do this correct */
224 if (0 && (rdev->flags & RADEON_IS_IGP)) {
224 if (rdev->mc.igp_sideport_enabled == false) 225 if (rdev->mc.igp_sideport_enabled == false)
225 /* Useless to evict on IGP chips */ 226 /* Useless to evict on IGP chips */
226 return 0; 227 return 0;
diff --git a/drivers/gpu/drm/radeon/reg_srcs/r200 b/drivers/gpu/drm/radeon/reg_srcs/r200
index 6021c8849a16..c29ac434ac9c 100644
--- a/drivers/gpu/drm/radeon/reg_srcs/r200
+++ b/drivers/gpu/drm/radeon/reg_srcs/r200
@@ -91,6 +91,8 @@ r200 0x3294
910x22b8 SE_TCL_TEX_CYL_WRAP_CTL 910x22b8 SE_TCL_TEX_CYL_WRAP_CTL
920x22c0 SE_TCL_UCP_VERT_BLEND_CNTL 920x22c0 SE_TCL_UCP_VERT_BLEND_CNTL
930x22c4 SE_TCL_POINT_SPRITE_CNTL 930x22c4 SE_TCL_POINT_SPRITE_CNTL
940x22d0 SE_PVS_CNTL
950x22d4 SE_PVS_CONST_CNTL
940x2648 RE_POINTSIZE 960x2648 RE_POINTSIZE
950x26c0 RE_TOP_LEFT 970x26c0 RE_TOP_LEFT
960x26c4 RE_MISC 980x26c4 RE_MISC
diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c
index 59c71245fb91..afd9e8213c29 100644
--- a/drivers/gpu/drm/radeon/rv770.c
+++ b/drivers/gpu/drm/radeon/rv770.c
@@ -779,7 +779,6 @@ int rv770_mc_init(struct radeon_device *rdev)
779 fixed20_12 a; 779 fixed20_12 a;
780 u32 tmp; 780 u32 tmp;
781 int chansize, numchan; 781 int chansize, numchan;
782 int r;
783 782
784 /* Get VRAM informations */ 783 /* Get VRAM informations */
785 rdev->mc.vram_is_ddr = true; 784 rdev->mc.vram_is_ddr = true;
@@ -822,9 +821,6 @@ int rv770_mc_init(struct radeon_device *rdev)
822 rdev->mc.real_vram_size = rdev->mc.aper_size; 821 rdev->mc.real_vram_size = rdev->mc.aper_size;
823 822
824 if (rdev->flags & RADEON_IS_AGP) { 823 if (rdev->flags & RADEON_IS_AGP) {
825 r = radeon_agp_init(rdev);
826 if (r)
827 return r;
828 /* gtt_size is setup by radeon_agp_init */ 824 /* gtt_size is setup by radeon_agp_init */
829 rdev->mc.gtt_location = rdev->mc.agp_base; 825 rdev->mc.gtt_location = rdev->mc.agp_base;
830 tmp = 0xFFFFFFFFUL - rdev->mc.agp_base - rdev->mc.gtt_size; 826 tmp = 0xFFFFFFFFUL - rdev->mc.agp_base - rdev->mc.gtt_size;
@@ -891,26 +887,19 @@ static int rv770_startup(struct radeon_device *rdev)
891 return r; 887 return r;
892 } 888 }
893 rv770_gpu_init(rdev); 889 rv770_gpu_init(rdev);
894 890 /* pin copy shader into vram */
895 if (!rdev->r600_blit.shader_obj) { 891 if (rdev->r600_blit.shader_obj) {
896 r = r600_blit_init(rdev); 892 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false);
893 if (unlikely(r != 0))
894 return r;
895 r = radeon_bo_pin(rdev->r600_blit.shader_obj, RADEON_GEM_DOMAIN_VRAM,
896 &rdev->r600_blit.shader_gpu_addr);
897 radeon_bo_unreserve(rdev->r600_blit.shader_obj);
897 if (r) { 898 if (r) {
898 DRM_ERROR("radeon: failed blitter (%d).\n", r); 899 DRM_ERROR("failed to pin blit object %d\n", r);
899 return r; 900 return r;
900 } 901 }
901 } 902 }
902
903 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false);
904 if (unlikely(r != 0))
905 return r;
906 r = radeon_bo_pin(rdev->r600_blit.shader_obj, RADEON_GEM_DOMAIN_VRAM,
907 &rdev->r600_blit.shader_gpu_addr);
908 radeon_bo_unreserve(rdev->r600_blit.shader_obj);
909 if (r) {
910 DRM_ERROR("failed to pin blit object %d\n", r);
911 return r;
912 }
913
914 /* Enable IRQ */ 903 /* Enable IRQ */
915 r = r600_irq_init(rdev); 904 r = r600_irq_init(rdev);
916 if (r) { 905 if (r) {
@@ -972,13 +961,16 @@ int rv770_suspend(struct radeon_device *rdev)
972 /* FIXME: we should wait for ring to be empty */ 961 /* FIXME: we should wait for ring to be empty */
973 r700_cp_stop(rdev); 962 r700_cp_stop(rdev);
974 rdev->cp.ready = false; 963 rdev->cp.ready = false;
964 r600_irq_suspend(rdev);
975 r600_wb_disable(rdev); 965 r600_wb_disable(rdev);
976 rv770_pcie_gart_disable(rdev); 966 rv770_pcie_gart_disable(rdev);
977 /* unpin shaders bo */ 967 /* unpin shaders bo */
978 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false); 968 if (rdev->r600_blit.shader_obj) {
979 if (likely(r == 0)) { 969 r = radeon_bo_reserve(rdev->r600_blit.shader_obj, false);
980 radeon_bo_unpin(rdev->r600_blit.shader_obj); 970 if (likely(r == 0)) {
981 radeon_bo_unreserve(rdev->r600_blit.shader_obj); 971 radeon_bo_unpin(rdev->r600_blit.shader_obj);
972 radeon_bo_unreserve(rdev->r600_blit.shader_obj);
973 }
982 } 974 }
983 return 0; 975 return 0;
984} 976}
@@ -1037,6 +1029,11 @@ int rv770_init(struct radeon_device *rdev)
1037 r = radeon_fence_driver_init(rdev); 1029 r = radeon_fence_driver_init(rdev);
1038 if (r) 1030 if (r)
1039 return r; 1031 return r;
1032 if (rdev->flags & RADEON_IS_AGP) {
1033 r = radeon_agp_init(rdev);
1034 if (r)
1035 radeon_agp_disable(rdev);
1036 }
1040 r = rv770_mc_init(rdev); 1037 r = rv770_mc_init(rdev);
1041 if (r) 1038 if (r)
1042 return r; 1039 return r;
@@ -1058,6 +1055,12 @@ int rv770_init(struct radeon_device *rdev)
1058 r = r600_pcie_gart_init(rdev); 1055 r = r600_pcie_gart_init(rdev);
1059 if (r) 1056 if (r)
1060 return r; 1057 return r;
1058 r = r600_blit_init(rdev);
1059 if (r) {
1060 r600_blit_fini(rdev);
1061 rdev->asic->copy = NULL;
1062 dev_warn(rdev->dev, "failed blitter (%d) falling back to memcpy\n", r);
1063 }
1061 1064
1062 rdev->accel_working = true; 1065 rdev->accel_working = true;
1063 r = rv770_startup(rdev); 1066 r = rv770_startup(rdev);
@@ -1071,13 +1074,14 @@ int rv770_init(struct radeon_device *rdev)
1071 if (rdev->accel_working) { 1074 if (rdev->accel_working) {
1072 r = radeon_ib_pool_init(rdev); 1075 r = radeon_ib_pool_init(rdev);
1073 if (r) { 1076 if (r) {
1074 DRM_ERROR("radeon: failed initializing IB pool (%d).\n", r); 1077 dev_err(rdev->dev, "IB initialization failed (%d).\n", r);
1075 rdev->accel_working = false;
1076 }
1077 r = r600_ib_test(rdev);
1078 if (r) {
1079 DRM_ERROR("radeon: failed testing IB (%d).\n", r);
1080 rdev->accel_working = false; 1078 rdev->accel_working = false;
1079 } else {
1080 r = r600_ib_test(rdev);
1081 if (r) {
1082 dev_err(rdev->dev, "IB test failed (%d).\n", r);
1083 rdev->accel_working = false;
1084 }
1081 } 1085 }
1082 } 1086 }
1083 return 0; 1087 return 0;
diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c
index 2920f9a279e1..1a3e909b7bba 100644
--- a/drivers/gpu/drm/ttm/ttm_bo.c
+++ b/drivers/gpu/drm/ttm/ttm_bo.c
@@ -426,7 +426,8 @@ moved:
426 bdev->man[bo->mem.mem_type].gpu_offset; 426 bdev->man[bo->mem.mem_type].gpu_offset;
427 bo->cur_placement = bo->mem.placement; 427 bo->cur_placement = bo->mem.placement;
428 spin_unlock(&bo->lock); 428 spin_unlock(&bo->lock);
429 } 429 } else
430 bo->offset = 0;
430 431
431 return 0; 432 return 0;
432 433
@@ -523,52 +524,44 @@ static int ttm_bo_cleanup_refs(struct ttm_buffer_object *bo, bool remove_all)
523static int ttm_bo_delayed_delete(struct ttm_bo_device *bdev, bool remove_all) 524static int ttm_bo_delayed_delete(struct ttm_bo_device *bdev, bool remove_all)
524{ 525{
525 struct ttm_bo_global *glob = bdev->glob; 526 struct ttm_bo_global *glob = bdev->glob;
526 struct ttm_buffer_object *entry, *nentry; 527 struct ttm_buffer_object *entry = NULL;
527 struct list_head *list, *next; 528 int ret = 0;
528 int ret;
529 529
530 spin_lock(&glob->lru_lock); 530 spin_lock(&glob->lru_lock);
531 list_for_each_safe(list, next, &bdev->ddestroy) { 531 if (list_empty(&bdev->ddestroy))
532 entry = list_entry(list, struct ttm_buffer_object, ddestroy); 532 goto out_unlock;
533 nentry = NULL;
534 533
535 /* 534 entry = list_first_entry(&bdev->ddestroy,
536 * Protect the next list entry from destruction while we 535 struct ttm_buffer_object, ddestroy);
537 * unlock the lru_lock. 536 kref_get(&entry->list_kref);
538 */
539 537
540 if (next != &bdev->ddestroy) { 538 for (;;) {
541 nentry = list_entry(next, struct ttm_buffer_object, 539 struct ttm_buffer_object *nentry = NULL;
542 ddestroy); 540
541 if (entry->ddestroy.next != &bdev->ddestroy) {
542 nentry = list_first_entry(&entry->ddestroy,
543 struct ttm_buffer_object, ddestroy);
543 kref_get(&nentry->list_kref); 544 kref_get(&nentry->list_kref);
544 } 545 }
545 kref_get(&entry->list_kref);
546 546
547 spin_unlock(&glob->lru_lock); 547 spin_unlock(&glob->lru_lock);
548 ret = ttm_bo_cleanup_refs(entry, remove_all); 548 ret = ttm_bo_cleanup_refs(entry, remove_all);
549 kref_put(&entry->list_kref, ttm_bo_release_list); 549 kref_put(&entry->list_kref, ttm_bo_release_list);
550 entry = nentry;
551
552 if (ret || !entry)
553 goto out;
550 554
551 spin_lock(&glob->lru_lock); 555 spin_lock(&glob->lru_lock);
552 if (nentry) { 556 if (list_empty(&entry->ddestroy))
553 bool next_onlist = !list_empty(next);
554 spin_unlock(&glob->lru_lock);
555 kref_put(&nentry->list_kref, ttm_bo_release_list);
556 spin_lock(&glob->lru_lock);
557 /*
558 * Someone might have raced us and removed the
559 * next entry from the list. We don't bother restarting
560 * list traversal.
561 */
562
563 if (!next_onlist)
564 break;
565 }
566 if (ret)
567 break; 557 break;
568 } 558 }
569 ret = !list_empty(&bdev->ddestroy);
570 spin_unlock(&glob->lru_lock);
571 559
560out_unlock:
561 spin_unlock(&glob->lru_lock);
562out:
563 if (entry)
564 kref_put(&entry->list_kref, ttm_bo_release_list);
572 return ret; 565 return ret;
573} 566}
574 567
@@ -950,6 +943,14 @@ int ttm_bo_mem_space(struct ttm_buffer_object *bo,
950 ttm_flag_masked(&cur_flags, placement->busy_placement[i], 943 ttm_flag_masked(&cur_flags, placement->busy_placement[i],
951 ~TTM_PL_MASK_MEMTYPE); 944 ~TTM_PL_MASK_MEMTYPE);
952 945
946
947 if (mem_type == TTM_PL_SYSTEM) {
948 mem->mem_type = mem_type;
949 mem->placement = cur_flags;
950 mem->mm_node = NULL;
951 return 0;
952 }
953
953 ret = ttm_bo_mem_force_space(bo, mem_type, placement, mem, 954 ret = ttm_bo_mem_force_space(bo, mem_type, placement, mem,
954 interruptible, no_wait); 955 interruptible, no_wait);
955 if (ret == 0 && mem->mm_node) { 956 if (ret == 0 && mem->mm_node) {
@@ -1844,6 +1845,9 @@ static int ttm_bo_swapout(struct ttm_mem_shrink *shrink)
1844 * anyone tries to access a ttm page. 1845 * anyone tries to access a ttm page.
1845 */ 1846 */
1846 1847
1848 if (bo->bdev->driver->swap_notify)
1849 bo->bdev->driver->swap_notify(bo);
1850
1847 ret = ttm_tt_swapout(bo->ttm, bo->persistant_swap_storage); 1851 ret = ttm_tt_swapout(bo->ttm, bo->persistant_swap_storage);
1848out: 1852out:
1849 1853
@@ -1864,3 +1868,4 @@ void ttm_bo_swapout_all(struct ttm_bo_device *bdev)
1864 while (ttm_bo_swapout(&bdev->glob->shrink) == 0) 1868 while (ttm_bo_swapout(&bdev->glob->shrink) == 0)
1865 ; 1869 ;
1866} 1870}
1871EXPORT_SYMBOL(ttm_bo_swapout_all);
diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c
index 2ecf7d0c64f6..5ca37a58a98c 100644
--- a/drivers/gpu/drm/ttm/ttm_bo_util.c
+++ b/drivers/gpu/drm/ttm/ttm_bo_util.c
@@ -53,7 +53,6 @@ int ttm_bo_move_ttm(struct ttm_buffer_object *bo,
53{ 53{
54 struct ttm_tt *ttm = bo->ttm; 54 struct ttm_tt *ttm = bo->ttm;
55 struct ttm_mem_reg *old_mem = &bo->mem; 55 struct ttm_mem_reg *old_mem = &bo->mem;
56 uint32_t save_flags = old_mem->placement;
57 int ret; 56 int ret;
58 57
59 if (old_mem->mem_type != TTM_PL_SYSTEM) { 58 if (old_mem->mem_type != TTM_PL_SYSTEM) {
@@ -62,7 +61,6 @@ int ttm_bo_move_ttm(struct ttm_buffer_object *bo,
62 ttm_flag_masked(&old_mem->placement, TTM_PL_FLAG_SYSTEM, 61 ttm_flag_masked(&old_mem->placement, TTM_PL_FLAG_SYSTEM,
63 TTM_PL_MASK_MEM); 62 TTM_PL_MASK_MEM);
64 old_mem->mem_type = TTM_PL_SYSTEM; 63 old_mem->mem_type = TTM_PL_SYSTEM;
65 save_flags = old_mem->placement;
66 } 64 }
67 65
68 ret = ttm_tt_set_placement_caching(ttm, new_mem->placement); 66 ret = ttm_tt_set_placement_caching(ttm, new_mem->placement);
@@ -77,7 +75,7 @@ int ttm_bo_move_ttm(struct ttm_buffer_object *bo,
77 75
78 *old_mem = *new_mem; 76 *old_mem = *new_mem;
79 new_mem->mm_node = NULL; 77 new_mem->mm_node = NULL;
80 ttm_flag_masked(&save_flags, new_mem->placement, TTM_PL_MASK_MEMTYPE); 78
81 return 0; 79 return 0;
82} 80}
83EXPORT_SYMBOL(ttm_bo_move_ttm); 81EXPORT_SYMBOL(ttm_bo_move_ttm);
@@ -219,7 +217,6 @@ int ttm_bo_move_memcpy(struct ttm_buffer_object *bo,
219 void *old_iomap; 217 void *old_iomap;
220 void *new_iomap; 218 void *new_iomap;
221 int ret; 219 int ret;
222 uint32_t save_flags = old_mem->placement;
223 unsigned long i; 220 unsigned long i;
224 unsigned long page; 221 unsigned long page;
225 unsigned long add = 0; 222 unsigned long add = 0;
@@ -270,7 +267,6 @@ out2:
270 267
271 *old_mem = *new_mem; 268 *old_mem = *new_mem;
272 new_mem->mm_node = NULL; 269 new_mem->mm_node = NULL;
273 ttm_flag_masked(&save_flags, new_mem->placement, TTM_PL_MASK_MEMTYPE);
274 270
275 if ((man->flags & TTM_MEMTYPE_FLAG_FIXED) && (ttm != NULL)) { 271 if ((man->flags & TTM_MEMTYPE_FLAG_FIXED) && (ttm != NULL)) {
276 ttm_tt_unbind(ttm); 272 ttm_tt_unbind(ttm);
@@ -537,7 +533,6 @@ int ttm_bo_move_accel_cleanup(struct ttm_buffer_object *bo,
537 struct ttm_mem_type_manager *man = &bdev->man[new_mem->mem_type]; 533 struct ttm_mem_type_manager *man = &bdev->man[new_mem->mem_type];
538 struct ttm_mem_reg *old_mem = &bo->mem; 534 struct ttm_mem_reg *old_mem = &bo->mem;
539 int ret; 535 int ret;
540 uint32_t save_flags = old_mem->placement;
541 struct ttm_buffer_object *ghost_obj; 536 struct ttm_buffer_object *ghost_obj;
542 void *tmp_obj = NULL; 537 void *tmp_obj = NULL;
543 538
@@ -598,7 +593,7 @@ int ttm_bo_move_accel_cleanup(struct ttm_buffer_object *bo,
598 593
599 *old_mem = *new_mem; 594 *old_mem = *new_mem;
600 new_mem->mm_node = NULL; 595 new_mem->mm_node = NULL;
601 ttm_flag_masked(&save_flags, new_mem->placement, TTM_PL_MASK_MEMTYPE); 596
602 return 0; 597 return 0;
603} 598}
604EXPORT_SYMBOL(ttm_bo_move_accel_cleanup); 599EXPORT_SYMBOL(ttm_bo_move_accel_cleanup);
diff --git a/drivers/gpu/drm/ttm/ttm_lock.c b/drivers/gpu/drm/ttm/ttm_lock.c
index f619ebcaa4ec..3d172ef04ee1 100644
--- a/drivers/gpu/drm/ttm/ttm_lock.c
+++ b/drivers/gpu/drm/ttm/ttm_lock.c
@@ -288,6 +288,7 @@ void ttm_suspend_unlock(struct ttm_lock *lock)
288 wake_up_all(&lock->queue); 288 wake_up_all(&lock->queue);
289 spin_unlock(&lock->lock); 289 spin_unlock(&lock->lock);
290} 290}
291EXPORT_SYMBOL(ttm_suspend_unlock);
291 292
292static bool __ttm_suspend_lock(struct ttm_lock *lock) 293static bool __ttm_suspend_lock(struct ttm_lock *lock)
293{ 294{
@@ -309,3 +310,4 @@ void ttm_suspend_lock(struct ttm_lock *lock)
309{ 310{
310 wait_event(lock->queue, __ttm_suspend_lock(lock)); 311 wait_event(lock->queue, __ttm_suspend_lock(lock));
311} 312}
313EXPORT_SYMBOL(ttm_suspend_lock);
diff --git a/drivers/gpu/drm/ttm/ttm_object.c b/drivers/gpu/drm/ttm/ttm_object.c
index 1099abac824b..75e9d6f86ba4 100644
--- a/drivers/gpu/drm/ttm/ttm_object.c
+++ b/drivers/gpu/drm/ttm/ttm_object.c
@@ -109,8 +109,8 @@ struct ttm_ref_object {
109 struct drm_hash_item hash; 109 struct drm_hash_item hash;
110 struct list_head head; 110 struct list_head head;
111 struct kref kref; 111 struct kref kref;
112 struct ttm_base_object *obj;
113 enum ttm_ref_type ref_type; 112 enum ttm_ref_type ref_type;
113 struct ttm_base_object *obj;
114 struct ttm_object_file *tfile; 114 struct ttm_object_file *tfile;
115}; 115};
116 116
diff --git a/drivers/gpu/drm/ttm/ttm_tt.c b/drivers/gpu/drm/ttm/ttm_tt.c
index 9c2b1cc5dba5..e2123af7775a 100644
--- a/drivers/gpu/drm/ttm/ttm_tt.c
+++ b/drivers/gpu/drm/ttm/ttm_tt.c
@@ -198,17 +198,26 @@ EXPORT_SYMBOL(ttm_tt_populate);
198static inline int ttm_tt_set_page_caching(struct page *p, 198static inline int ttm_tt_set_page_caching(struct page *p,
199 enum ttm_caching_state c_state) 199 enum ttm_caching_state c_state)
200{ 200{
201 int ret = 0;
202
201 if (PageHighMem(p)) 203 if (PageHighMem(p))
202 return 0; 204 return 0;
203 205
204 switch (c_state) { 206 if (get_page_memtype(p) != -1) {
205 case tt_cached: 207 /* p isn't in the default caching state, set it to
206 return set_pages_wb(p, 1); 208 * writeback first to free its current memtype. */
207 case tt_wc: 209
208 return set_memory_wc((unsigned long) page_address(p), 1); 210 ret = set_pages_wb(p, 1);
209 default: 211 if (ret)
210 return set_pages_uc(p, 1); 212 return ret;
211 } 213 }
214
215 if (c_state == tt_wc)
216 ret = set_memory_wc((unsigned long) page_address(p), 1);
217 else if (c_state == tt_uncached)
218 ret = set_pages_uc(p, 1);
219
220 return ret;
212} 221}
213#else /* CONFIG_X86 */ 222#else /* CONFIG_X86 */
214static inline int ttm_tt_set_page_caching(struct page *p, 223static inline int ttm_tt_set_page_caching(struct page *p,
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
index d6f2d2b882e9..825ebe3d89d5 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
@@ -48,6 +48,15 @@ struct ttm_placement vmw_vram_placement = {
48 .busy_placement = &vram_placement_flags 48 .busy_placement = &vram_placement_flags
49}; 49};
50 50
51struct ttm_placement vmw_vram_sys_placement = {
52 .fpfn = 0,
53 .lpfn = 0,
54 .num_placement = 1,
55 .placement = &vram_placement_flags,
56 .num_busy_placement = 1,
57 .busy_placement = &sys_placement_flags
58};
59
51struct ttm_placement vmw_vram_ne_placement = { 60struct ttm_placement vmw_vram_ne_placement = {
52 .fpfn = 0, 61 .fpfn = 0,
53 .lpfn = 0, 62 .lpfn = 0,
@@ -172,6 +181,18 @@ static int vmw_verify_access(struct ttm_buffer_object *bo, struct file *filp)
172 return 0; 181 return 0;
173} 182}
174 183
184static void vmw_move_notify(struct ttm_buffer_object *bo,
185 struct ttm_mem_reg *new_mem)
186{
187 if (new_mem->mem_type != TTM_PL_SYSTEM)
188 vmw_dmabuf_gmr_unbind(bo);
189}
190
191static void vmw_swap_notify(struct ttm_buffer_object *bo)
192{
193 vmw_dmabuf_gmr_unbind(bo);
194}
195
175/** 196/**
176 * FIXME: We're using the old vmware polling method to sync. 197 * FIXME: We're using the old vmware polling method to sync.
177 * Do this with fences instead. 198 * Do this with fences instead.
@@ -225,5 +246,7 @@ struct ttm_bo_driver vmw_bo_driver = {
225 .sync_obj_wait = vmw_sync_obj_wait, 246 .sync_obj_wait = vmw_sync_obj_wait,
226 .sync_obj_flush = vmw_sync_obj_flush, 247 .sync_obj_flush = vmw_sync_obj_flush,
227 .sync_obj_unref = vmw_sync_obj_unref, 248 .sync_obj_unref = vmw_sync_obj_unref,
228 .sync_obj_ref = vmw_sync_obj_ref 249 .sync_obj_ref = vmw_sync_obj_ref,
250 .move_notify = vmw_move_notify,
251 .swap_notify = vmw_swap_notify
229}; 252};
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
index 1db1ef30be2b..a6e8f687fa64 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
@@ -147,6 +147,8 @@ static char *vmw_devname = "vmwgfx";
147 147
148static int vmw_probe(struct pci_dev *, const struct pci_device_id *); 148static int vmw_probe(struct pci_dev *, const struct pci_device_id *);
149static void vmw_master_init(struct vmw_master *); 149static void vmw_master_init(struct vmw_master *);
150static int vmwgfx_pm_notifier(struct notifier_block *nb, unsigned long val,
151 void *ptr);
150 152
151static void vmw_print_capabilities(uint32_t capabilities) 153static void vmw_print_capabilities(uint32_t capabilities)
152{ 154{
@@ -207,6 +209,7 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
207{ 209{
208 struct vmw_private *dev_priv; 210 struct vmw_private *dev_priv;
209 int ret; 211 int ret;
212 uint32_t svga_id;
210 213
211 dev_priv = kzalloc(sizeof(*dev_priv), GFP_KERNEL); 214 dev_priv = kzalloc(sizeof(*dev_priv), GFP_KERNEL);
212 if (unlikely(dev_priv == NULL)) { 215 if (unlikely(dev_priv == NULL)) {
@@ -217,6 +220,7 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
217 220
218 dev_priv->dev = dev; 221 dev_priv->dev = dev;
219 dev_priv->vmw_chipset = chipset; 222 dev_priv->vmw_chipset = chipset;
223 dev_priv->last_read_sequence = (uint32_t) -100;
220 mutex_init(&dev_priv->hw_mutex); 224 mutex_init(&dev_priv->hw_mutex);
221 mutex_init(&dev_priv->cmdbuf_mutex); 225 mutex_init(&dev_priv->cmdbuf_mutex);
222 rwlock_init(&dev_priv->resource_lock); 226 rwlock_init(&dev_priv->resource_lock);
@@ -236,6 +240,16 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
236 dev_priv->mmio_start = pci_resource_start(dev->pdev, 2); 240 dev_priv->mmio_start = pci_resource_start(dev->pdev, 2);
237 241
238 mutex_lock(&dev_priv->hw_mutex); 242 mutex_lock(&dev_priv->hw_mutex);
243
244 vmw_write(dev_priv, SVGA_REG_ID, SVGA_ID_2);
245 svga_id = vmw_read(dev_priv, SVGA_REG_ID);
246 if (svga_id != SVGA_ID_2) {
247 ret = -ENOSYS;
248 DRM_ERROR("Unsuported SVGA ID 0x%x\n", svga_id);
249 mutex_unlock(&dev_priv->hw_mutex);
250 goto out_err0;
251 }
252
239 dev_priv->capabilities = vmw_read(dev_priv, SVGA_REG_CAPABILITIES); 253 dev_priv->capabilities = vmw_read(dev_priv, SVGA_REG_CAPABILITIES);
240 254
241 if (dev_priv->capabilities & SVGA_CAP_GMR) { 255 if (dev_priv->capabilities & SVGA_CAP_GMR) {
@@ -351,6 +365,11 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
351 vmw_fb_init(dev_priv); 365 vmw_fb_init(dev_priv);
352 } 366 }
353 367
368 dev_priv->pm_nb.notifier_call = vmwgfx_pm_notifier;
369 register_pm_notifier(&dev_priv->pm_nb);
370
371 DRM_INFO("%s", vmw_fifo_have_3d(dev_priv) ? "Have 3D\n" : "No 3D\n");
372
354 return 0; 373 return 0;
355 374
356out_no_device: 375out_no_device:
@@ -385,6 +404,8 @@ static int vmw_driver_unload(struct drm_device *dev)
385 404
386 DRM_INFO(VMWGFX_DRIVER_NAME " unload.\n"); 405 DRM_INFO(VMWGFX_DRIVER_NAME " unload.\n");
387 406
407 unregister_pm_notifier(&dev_priv->pm_nb);
408
388 if (!dev_priv->stealth) { 409 if (!dev_priv->stealth) {
389 vmw_fb_close(dev_priv); 410 vmw_fb_close(dev_priv);
390 vmw_kms_close(dev_priv); 411 vmw_kms_close(dev_priv);
@@ -650,6 +671,57 @@ static void vmw_remove(struct pci_dev *pdev)
650 drm_put_dev(dev); 671 drm_put_dev(dev);
651} 672}
652 673
674static int vmwgfx_pm_notifier(struct notifier_block *nb, unsigned long val,
675 void *ptr)
676{
677 struct vmw_private *dev_priv =
678 container_of(nb, struct vmw_private, pm_nb);
679 struct vmw_master *vmaster = dev_priv->active_master;
680
681 switch (val) {
682 case PM_HIBERNATION_PREPARE:
683 case PM_SUSPEND_PREPARE:
684 ttm_suspend_lock(&vmaster->lock);
685
686 /**
687 * This empties VRAM and unbinds all GMR bindings.
688 * Buffer contents is moved to swappable memory.
689 */
690 ttm_bo_swapout_all(&dev_priv->bdev);
691 break;
692 case PM_POST_HIBERNATION:
693 case PM_POST_SUSPEND:
694 ttm_suspend_unlock(&vmaster->lock);
695 break;
696 case PM_RESTORE_PREPARE:
697 break;
698 case PM_POST_RESTORE:
699 break;
700 default:
701 break;
702 }
703 return 0;
704}
705
706/**
707 * These might not be needed with the virtual SVGA device.
708 */
709
710int vmw_pci_suspend(struct pci_dev *pdev, pm_message_t state)
711{
712 pci_save_state(pdev);
713 pci_disable_device(pdev);
714 pci_set_power_state(pdev, PCI_D3hot);
715 return 0;
716}
717
718int vmw_pci_resume(struct pci_dev *pdev)
719{
720 pci_set_power_state(pdev, PCI_D0);
721 pci_restore_state(pdev);
722 return pci_enable_device(pdev);
723}
724
653static struct drm_driver driver = { 725static struct drm_driver driver = {
654 .driver_features = DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED | 726 .driver_features = DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED |
655 DRIVER_MODESET, 727 DRIVER_MODESET,
@@ -689,7 +761,9 @@ static struct drm_driver driver = {
689 .name = VMWGFX_DRIVER_NAME, 761 .name = VMWGFX_DRIVER_NAME,
690 .id_table = vmw_pci_id_list, 762 .id_table = vmw_pci_id_list,
691 .probe = vmw_probe, 763 .probe = vmw_probe,
692 .remove = vmw_remove 764 .remove = vmw_remove,
765 .suspend = vmw_pci_suspend,
766 .resume = vmw_pci_resume
693 }, 767 },
694 .name = VMWGFX_DRIVER_NAME, 768 .name = VMWGFX_DRIVER_NAME,
695 .desc = VMWGFX_DRIVER_DESC, 769 .desc = VMWGFX_DRIVER_DESC,
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
index e61bd85b6975..135be9688c90 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
@@ -32,6 +32,7 @@
32#include "drmP.h" 32#include "drmP.h"
33#include "vmwgfx_drm.h" 33#include "vmwgfx_drm.h"
34#include "drm_hashtab.h" 34#include "drm_hashtab.h"
35#include "linux/suspend.h"
35#include "ttm/ttm_bo_driver.h" 36#include "ttm/ttm_bo_driver.h"
36#include "ttm/ttm_object.h" 37#include "ttm/ttm_object.h"
37#include "ttm/ttm_lock.h" 38#include "ttm/ttm_lock.h"
@@ -95,6 +96,8 @@ struct vmw_surface {
95 struct drm_vmw_size *sizes; 96 struct drm_vmw_size *sizes;
96 uint32_t num_sizes; 97 uint32_t num_sizes;
97 98
99 bool scanout;
100
98 /* TODO so far just a extra pointer */ 101 /* TODO so far just a extra pointer */
99 struct vmw_cursor_snooper snooper; 102 struct vmw_cursor_snooper snooper;
100}; 103};
@@ -258,6 +261,7 @@ struct vmw_private {
258 261
259 struct vmw_master *active_master; 262 struct vmw_master *active_master;
260 struct vmw_master fbdev_master; 263 struct vmw_master fbdev_master;
264 struct notifier_block pm_nb;
261}; 265};
262 266
263static inline struct vmw_private *vmw_priv(struct drm_device *dev) 267static inline struct vmw_private *vmw_priv(struct drm_device *dev)
@@ -353,6 +357,7 @@ extern int vmw_dmabuf_to_start_of_vram(struct vmw_private *vmw_priv,
353 struct vmw_dma_buffer *bo); 357 struct vmw_dma_buffer *bo);
354extern int vmw_dmabuf_from_vram(struct vmw_private *vmw_priv, 358extern int vmw_dmabuf_from_vram(struct vmw_private *vmw_priv,
355 struct vmw_dma_buffer *bo); 359 struct vmw_dma_buffer *bo);
360extern void vmw_dmabuf_gmr_unbind(struct ttm_buffer_object *bo);
356extern int vmw_stream_claim_ioctl(struct drm_device *dev, void *data, 361extern int vmw_stream_claim_ioctl(struct drm_device *dev, void *data,
357 struct drm_file *file_priv); 362 struct drm_file *file_priv);
358extern int vmw_stream_unref_ioctl(struct drm_device *dev, void *data, 363extern int vmw_stream_unref_ioctl(struct drm_device *dev, void *data,
@@ -386,6 +391,7 @@ extern int vmw_fifo_send_fence(struct vmw_private *dev_priv,
386 uint32_t *sequence); 391 uint32_t *sequence);
387extern void vmw_fifo_ping_host(struct vmw_private *dev_priv, uint32_t reason); 392extern void vmw_fifo_ping_host(struct vmw_private *dev_priv, uint32_t reason);
388extern int vmw_fifo_mmap(struct file *filp, struct vm_area_struct *vma); 393extern int vmw_fifo_mmap(struct file *filp, struct vm_area_struct *vma);
394extern bool vmw_fifo_have_3d(struct vmw_private *dev_priv);
389 395
390/** 396/**
391 * TTM glue - vmwgfx_ttm_glue.c 397 * TTM glue - vmwgfx_ttm_glue.c
@@ -401,6 +407,7 @@ extern int vmw_mmap(struct file *filp, struct vm_area_struct *vma);
401 407
402extern struct ttm_placement vmw_vram_placement; 408extern struct ttm_placement vmw_vram_placement;
403extern struct ttm_placement vmw_vram_ne_placement; 409extern struct ttm_placement vmw_vram_ne_placement;
410extern struct ttm_placement vmw_vram_sys_placement;
404extern struct ttm_placement vmw_sys_placement; 411extern struct ttm_placement vmw_sys_placement;
405extern struct ttm_bo_driver vmw_bo_driver; 412extern struct ttm_bo_driver vmw_bo_driver;
406extern int vmw_dma_quiescent(struct drm_device *dev); 413extern int vmw_dma_quiescent(struct drm_device *dev);
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c b/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c
index 2e92da567403..d69caf92ffe7 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c
@@ -490,10 +490,29 @@ static int vmw_validate_single_buffer(struct vmw_private *dev_priv,
490 if (vmw_dmabuf_gmr(bo) != SVGA_GMR_NULL) 490 if (vmw_dmabuf_gmr(bo) != SVGA_GMR_NULL)
491 return 0; 491 return 0;
492 492
493 /**
494 * Put BO in VRAM, only if there is space.
495 */
496
497 ret = ttm_bo_validate(bo, &vmw_vram_sys_placement, true, false);
498 if (unlikely(ret == -ERESTARTSYS))
499 return ret;
500
501 /**
502 * Otherwise, set it up as GMR.
503 */
504
505 if (vmw_dmabuf_gmr(bo) != SVGA_GMR_NULL)
506 return 0;
507
493 ret = vmw_gmr_bind(dev_priv, bo); 508 ret = vmw_gmr_bind(dev_priv, bo);
494 if (likely(ret == 0 || ret == -ERESTARTSYS)) 509 if (likely(ret == 0 || ret == -ERESTARTSYS))
495 return ret; 510 return ret;
496 511
512 /**
513 * If that failed, try VRAM again, this time evicting
514 * previous contents.
515 */
497 516
498 ret = ttm_bo_validate(bo, &vmw_vram_placement, true, false); 517 ret = ttm_bo_validate(bo, &vmw_vram_placement, true, false);
499 return ret; 518 return ret;
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
index 641dde76ada1..4f4f6432be8b 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
@@ -649,14 +649,6 @@ int vmw_dmabuf_to_start_of_vram(struct vmw_private *vmw_priv,
649 if (unlikely(ret != 0)) 649 if (unlikely(ret != 0))
650 goto err_unlock; 650 goto err_unlock;
651 651
652 if (vmw_bo->gmr_bound) {
653 vmw_gmr_unbind(vmw_priv, vmw_bo->gmr_id);
654 spin_lock(&bo->glob->lru_lock);
655 ida_remove(&vmw_priv->gmr_ida, vmw_bo->gmr_id);
656 spin_unlock(&bo->glob->lru_lock);
657 vmw_bo->gmr_bound = NULL;
658 }
659
660 ret = ttm_bo_validate(bo, &ne_placement, false, false); 652 ret = ttm_bo_validate(bo, &ne_placement, false, false);
661 ttm_bo_unreserve(bo); 653 ttm_bo_unreserve(bo);
662err_unlock: 654err_unlock:
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c
index 01feb48af333..4157547cc6e4 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c
@@ -29,6 +29,25 @@
29#include "drmP.h" 29#include "drmP.h"
30#include "ttm/ttm_placement.h" 30#include "ttm/ttm_placement.h"
31 31
32bool vmw_fifo_have_3d(struct vmw_private *dev_priv)
33{
34 __le32 __iomem *fifo_mem = dev_priv->mmio_virt;
35 uint32_t fifo_min, hwversion;
36
37 fifo_min = ioread32(fifo_mem + SVGA_FIFO_MIN);
38 if (fifo_min <= SVGA_FIFO_3D_HWVERSION * sizeof(unsigned int))
39 return false;
40
41 hwversion = ioread32(fifo_mem + SVGA_FIFO_3D_HWVERSION);
42 if (hwversion == 0)
43 return false;
44
45 if (hwversion < SVGA3D_HWVERSION_WS65_B1)
46 return false;
47
48 return true;
49}
50
32int vmw_fifo_init(struct vmw_private *dev_priv, struct vmw_fifo_state *fifo) 51int vmw_fifo_init(struct vmw_private *dev_priv, struct vmw_fifo_state *fifo)
33{ 52{
34 __le32 __iomem *fifo_mem = dev_priv->mmio_virt; 53 __le32 __iomem *fifo_mem = dev_priv->mmio_virt;
@@ -98,8 +117,7 @@ int vmw_fifo_init(struct vmw_private *dev_priv, struct vmw_fifo_state *fifo)
98 (unsigned int) min, 117 (unsigned int) min,
99 (unsigned int) fifo->capabilities); 118 (unsigned int) fifo->capabilities);
100 119
101 dev_priv->fence_seq = (uint32_t) -100; 120 dev_priv->fence_seq = dev_priv->last_read_sequence;
102 dev_priv->last_read_sequence = (uint32_t) -100;
103 iowrite32(dev_priv->last_read_sequence, fifo_mem + SVGA_FIFO_FENCE); 121 iowrite32(dev_priv->last_read_sequence, fifo_mem + SVGA_FIFO_FENCE);
104 122
105 return vmw_fifo_send_fence(dev_priv, &dummy); 123 return vmw_fifo_send_fence(dev_priv, &dummy);
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c
index 5fa6a4ed238a..778851f9f1d6 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c
@@ -43,7 +43,7 @@ int vmw_getparam_ioctl(struct drm_device *dev, void *data,
43 param->value = vmw_overlay_num_free_overlays(dev_priv); 43 param->value = vmw_overlay_num_free_overlays(dev_priv);
44 break; 44 break;
45 case DRM_VMW_PARAM_3D: 45 case DRM_VMW_PARAM_3D:
46 param->value = dev_priv->capabilities & SVGA_CAP_3D ? 1 : 0; 46 param->value = vmw_fifo_have_3d(dev_priv) ? 1 : 0;
47 break; 47 break;
48 case DRM_VMW_PARAM_FIFO_OFFSET: 48 case DRM_VMW_PARAM_FIFO_OFFSET:
49 param->value = dev_priv->mmio_start; 49 param->value = dev_priv->mmio_start;
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
index b1af76e371c3..eeba6d1d06e4 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
@@ -553,9 +553,7 @@ int vmw_framebuffer_dmabuf_dirty(struct drm_framebuffer *framebuffer,
553 } *cmd; 553 } *cmd;
554 int i, increment = 1; 554 int i, increment = 1;
555 555
556 if (!num_clips || 556 if (!num_clips) {
557 !(dev_priv->fifo.capabilities &
558 SVGA_FIFO_CAP_SCREEN_OBJECT)) {
559 num_clips = 1; 557 num_clips = 1;
560 clips = &norect; 558 clips = &norect;
561 norect.x1 = norect.y1 = 0; 559 norect.x1 = norect.y1 = 0;
@@ -574,10 +572,10 @@ int vmw_framebuffer_dmabuf_dirty(struct drm_framebuffer *framebuffer,
574 572
575 for (i = 0; i < num_clips; i++, clips += increment) { 573 for (i = 0; i < num_clips; i++, clips += increment) {
576 cmd[i].header = cpu_to_le32(SVGA_CMD_UPDATE); 574 cmd[i].header = cpu_to_le32(SVGA_CMD_UPDATE);
577 cmd[i].body.x = cpu_to_le32(clips[i].x1); 575 cmd[i].body.x = cpu_to_le32(clips->x1);
578 cmd[i].body.y = cpu_to_le32(clips[i].y1); 576 cmd[i].body.y = cpu_to_le32(clips->y1);
579 cmd[i].body.width = cpu_to_le32(clips[i].x2 - clips[i].x1); 577 cmd[i].body.width = cpu_to_le32(clips->x2 - clips->x1);
580 cmd[i].body.height = cpu_to_le32(clips[i].y2 - clips[i].y1); 578 cmd[i].body.height = cpu_to_le32(clips->y2 - clips->y1);
581 } 579 }
582 580
583 vmw_fifo_commit(dev_priv, sizeof(*cmd) * num_clips); 581 vmw_fifo_commit(dev_priv, sizeof(*cmd) * num_clips);
@@ -709,6 +707,9 @@ static struct drm_framebuffer *vmw_kms_fb_create(struct drm_device *dev,
709 if (ret) 707 if (ret)
710 goto try_dmabuf; 708 goto try_dmabuf;
711 709
710 if (!surface->scanout)
711 goto err_not_scanout;
712
712 ret = vmw_kms_new_framebuffer_surface(dev_priv, surface, &vfb, 713 ret = vmw_kms_new_framebuffer_surface(dev_priv, surface, &vfb,
713 mode_cmd->width, mode_cmd->height); 714 mode_cmd->width, mode_cmd->height);
714 715
@@ -742,6 +743,13 @@ try_dmabuf:
742 } 743 }
743 744
744 return &vfb->base; 745 return &vfb->base;
746
747err_not_scanout:
748 DRM_ERROR("surface not marked as scanout\n");
749 /* vmw_user_surface_lookup takes one ref */
750 vmw_surface_unreference(&surface);
751
752 return NULL;
745} 753}
746 754
747static int vmw_kms_fb_changed(struct drm_device *dev) 755static int vmw_kms_fb_changed(struct drm_device *dev)
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c b/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c
index bb6e6a096d25..5b6eabeb7f51 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c
@@ -104,7 +104,6 @@ static int vmw_dmabuf_pin_in_vram(struct vmw_private *dev_priv,
104 bool pin, bool interruptible) 104 bool pin, bool interruptible)
105{ 105{
106 struct ttm_buffer_object *bo = &buf->base; 106 struct ttm_buffer_object *bo = &buf->base;
107 struct ttm_bo_global *glob = bo->glob;
108 struct ttm_placement *overlay_placement = &vmw_vram_placement; 107 struct ttm_placement *overlay_placement = &vmw_vram_placement;
109 int ret; 108 int ret;
110 109
@@ -116,14 +115,6 @@ static int vmw_dmabuf_pin_in_vram(struct vmw_private *dev_priv,
116 if (unlikely(ret != 0)) 115 if (unlikely(ret != 0))
117 goto err; 116 goto err;
118 117
119 if (buf->gmr_bound) {
120 vmw_gmr_unbind(dev_priv, buf->gmr_id);
121 spin_lock(&glob->lru_lock);
122 ida_remove(&dev_priv->gmr_ida, buf->gmr_id);
123 spin_unlock(&glob->lru_lock);
124 buf->gmr_bound = NULL;
125 }
126
127 if (pin) 118 if (pin)
128 overlay_placement = &vmw_vram_ne_placement; 119 overlay_placement = &vmw_vram_ne_placement;
129 120
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
index c012d5927f65..c7efbd47ab84 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
@@ -35,6 +35,11 @@
35#define VMW_RES_SURFACE ttm_driver_type1 35#define VMW_RES_SURFACE ttm_driver_type1
36#define VMW_RES_STREAM ttm_driver_type2 36#define VMW_RES_STREAM ttm_driver_type2
37 37
38/* XXX: This isn't a real hardware flag, but just a hack for kernel to
39 * know about primary surfaces. Find a better way to accomplish this.
40 */
41#define SVGA3D_SURFACE_HINT_SCANOUT (1 << 9)
42
38struct vmw_user_context { 43struct vmw_user_context {
39 struct ttm_base_object base; 44 struct ttm_base_object base;
40 struct vmw_resource res; 45 struct vmw_resource res;
@@ -599,6 +604,36 @@ int vmw_surface_define_ioctl(struct drm_device *dev, void *data,
599 if (unlikely(ret != 0)) 604 if (unlikely(ret != 0))
600 goto out_err1; 605 goto out_err1;
601 606
607 if (srf->flags & SVGA3D_SURFACE_HINT_SCANOUT) {
608 /* we should not send this flag down to hardware since
609 * its not a official one
610 */
611 srf->flags &= ~SVGA3D_SURFACE_HINT_SCANOUT;
612 srf->scanout = true;
613 } else {
614 srf->scanout = false;
615 }
616
617 if (srf->scanout &&
618 srf->num_sizes == 1 &&
619 srf->sizes[0].width == 64 &&
620 srf->sizes[0].height == 64 &&
621 srf->format == SVGA3D_A8R8G8B8) {
622
623 srf->snooper.image = kmalloc(64 * 64 * 4, GFP_KERNEL);
624 /* clear the image */
625 if (srf->snooper.image) {
626 memset(srf->snooper.image, 0x00, 64 * 64 * 4);
627 } else {
628 DRM_ERROR("Failed to allocate cursor_image\n");
629 ret = -ENOMEM;
630 goto out_err1;
631 }
632 } else {
633 srf->snooper.image = NULL;
634 }
635 srf->snooper.crtc = NULL;
636
602 user_srf->base.shareable = false; 637 user_srf->base.shareable = false;
603 user_srf->base.tfile = NULL; 638 user_srf->base.tfile = NULL;
604 639
@@ -622,24 +657,6 @@ int vmw_surface_define_ioctl(struct drm_device *dev, void *data,
622 return ret; 657 return ret;
623 } 658 }
624 659
625 if (srf->flags & (1 << 9) &&
626 srf->num_sizes == 1 &&
627 srf->sizes[0].width == 64 &&
628 srf->sizes[0].height == 64 &&
629 srf->format == SVGA3D_A8R8G8B8) {
630
631 srf->snooper.image = kmalloc(64 * 64 * 4, GFP_KERNEL);
632 /* clear the image */
633 if (srf->snooper.image)
634 memset(srf->snooper.image, 0x00, 64 * 64 * 4);
635 else
636 DRM_ERROR("Failed to allocate cursor_image\n");
637
638 } else {
639 srf->snooper.image = NULL;
640 }
641 srf->snooper.crtc = NULL;
642
643 rep->sid = user_srf->base.hash.key; 660 rep->sid = user_srf->base.hash.key;
644 if (rep->sid == SVGA3D_INVALID_ID) 661 if (rep->sid == SVGA3D_INVALID_ID)
645 DRM_ERROR("Created bad Surface ID.\n"); 662 DRM_ERROR("Created bad Surface ID.\n");
@@ -754,20 +771,29 @@ static size_t vmw_dmabuf_acc_size(struct ttm_bo_global *glob,
754 return bo_user_size + page_array_size; 771 return bo_user_size + page_array_size;
755} 772}
756 773
757void vmw_dmabuf_bo_free(struct ttm_buffer_object *bo) 774void vmw_dmabuf_gmr_unbind(struct ttm_buffer_object *bo)
758{ 775{
759 struct vmw_dma_buffer *vmw_bo = vmw_dma_buffer(bo); 776 struct vmw_dma_buffer *vmw_bo = vmw_dma_buffer(bo);
760 struct ttm_bo_global *glob = bo->glob; 777 struct ttm_bo_global *glob = bo->glob;
761 struct vmw_private *dev_priv = 778 struct vmw_private *dev_priv =
762 container_of(bo->bdev, struct vmw_private, bdev); 779 container_of(bo->bdev, struct vmw_private, bdev);
763 780
764 ttm_mem_global_free(glob->mem_glob, bo->acc_size);
765 if (vmw_bo->gmr_bound) { 781 if (vmw_bo->gmr_bound) {
766 vmw_gmr_unbind(dev_priv, vmw_bo->gmr_id); 782 vmw_gmr_unbind(dev_priv, vmw_bo->gmr_id);
767 spin_lock(&glob->lru_lock); 783 spin_lock(&glob->lru_lock);
768 ida_remove(&dev_priv->gmr_ida, vmw_bo->gmr_id); 784 ida_remove(&dev_priv->gmr_ida, vmw_bo->gmr_id);
769 spin_unlock(&glob->lru_lock); 785 spin_unlock(&glob->lru_lock);
786 vmw_bo->gmr_bound = false;
770 } 787 }
788}
789
790void vmw_dmabuf_bo_free(struct ttm_buffer_object *bo)
791{
792 struct vmw_dma_buffer *vmw_bo = vmw_dma_buffer(bo);
793 struct ttm_bo_global *glob = bo->glob;
794
795 vmw_dmabuf_gmr_unbind(bo);
796 ttm_mem_global_free(glob->mem_glob, bo->acc_size);
771 kfree(vmw_bo); 797 kfree(vmw_bo);
772} 798}
773 799
@@ -813,18 +839,10 @@ int vmw_dmabuf_init(struct vmw_private *dev_priv,
813static void vmw_user_dmabuf_destroy(struct ttm_buffer_object *bo) 839static void vmw_user_dmabuf_destroy(struct ttm_buffer_object *bo)
814{ 840{
815 struct vmw_user_dma_buffer *vmw_user_bo = vmw_user_dma_buffer(bo); 841 struct vmw_user_dma_buffer *vmw_user_bo = vmw_user_dma_buffer(bo);
816 struct vmw_dma_buffer *vmw_bo = &vmw_user_bo->dma;
817 struct ttm_bo_global *glob = bo->glob; 842 struct ttm_bo_global *glob = bo->glob;
818 struct vmw_private *dev_priv =
819 container_of(bo->bdev, struct vmw_private, bdev);
820 843
844 vmw_dmabuf_gmr_unbind(bo);
821 ttm_mem_global_free(glob->mem_glob, bo->acc_size); 845 ttm_mem_global_free(glob->mem_glob, bo->acc_size);
822 if (vmw_bo->gmr_bound) {
823 vmw_gmr_unbind(dev_priv, vmw_bo->gmr_id);
824 spin_lock(&glob->lru_lock);
825 ida_remove(&dev_priv->gmr_ida, vmw_bo->gmr_id);
826 spin_unlock(&glob->lru_lock);
827 }
828 kfree(vmw_user_bo); 846 kfree(vmw_user_bo);
829} 847}
830 848
@@ -868,7 +886,7 @@ int vmw_dmabuf_alloc_ioctl(struct drm_device *dev, void *data,
868 } 886 }
869 887
870 ret = vmw_dmabuf_init(dev_priv, &vmw_user_bo->dma, req->size, 888 ret = vmw_dmabuf_init(dev_priv, &vmw_user_bo->dma, req->size,
871 &vmw_vram_placement, true, 889 &vmw_vram_sys_placement, true,
872 &vmw_user_dmabuf_destroy); 890 &vmw_user_dmabuf_destroy);
873 if (unlikely(ret != 0)) 891 if (unlikely(ret != 0))
874 return ret; 892 return ret;
diff --git a/drivers/hwmon/amc6821.c b/drivers/hwmon/amc6821.c
index 1c89d922d619..fa9708c2d723 100644
--- a/drivers/hwmon/amc6821.c
+++ b/drivers/hwmon/amc6821.c
@@ -686,7 +686,6 @@ static ssize_t set_fan1_div(
686 data->fan1_div = 4; 686 data->fan1_div = 4;
687 break; 687 break;
688 default: 688 default:
689 mutex_unlock(&data->update_lock);
690 count = -EINVAL; 689 count = -EINVAL;
691 goto EXIT; 690 goto EXIT;
692 } 691 }
diff --git a/drivers/hwmon/asus_atk0110.c b/drivers/hwmon/asus_atk0110.c
index 6811346c1c62..028284f544e3 100644
--- a/drivers/hwmon/asus_atk0110.c
+++ b/drivers/hwmon/asus_atk0110.c
@@ -1329,17 +1329,16 @@ static int atk_add(struct acpi_device *device)
1329 &buf, ACPI_TYPE_PACKAGE); 1329 &buf, ACPI_TYPE_PACKAGE);
1330 if (ret != AE_OK) { 1330 if (ret != AE_OK) {
1331 dev_dbg(&device->dev, "atk: method MBIF not found\n"); 1331 dev_dbg(&device->dev, "atk: method MBIF not found\n");
1332 err = -ENODEV; 1332 } else {
1333 goto out; 1333 obj = buf.pointer;
1334 } 1334 if (obj->package.count >= 2) {
1335 1335 union acpi_object *id = &obj->package.elements[1];
1336 obj = buf.pointer; 1336 if (id->type == ACPI_TYPE_STRING)
1337 if (obj->package.count >= 2 && 1337 dev_dbg(&device->dev, "board ID = %s\n",
1338 obj->package.elements[1].type == ACPI_TYPE_STRING) { 1338 id->string.pointer);
1339 dev_dbg(&device->dev, "board ID = %s\n", 1339 }
1340 obj->package.elements[1].string.pointer); 1340 ACPI_FREE(buf.pointer);
1341 } 1341 }
1342 ACPI_FREE(buf.pointer);
1343 1342
1344 err = atk_probe_if(data); 1343 err = atk_probe_if(data);
1345 if (err) { 1344 if (err) {
diff --git a/drivers/hwmon/fschmd.c b/drivers/hwmon/fschmd.c
index bd0fc67e804b..fa0728232e71 100644
--- a/drivers/hwmon/fschmd.c
+++ b/drivers/hwmon/fschmd.c
@@ -768,6 +768,7 @@ leave:
768static int watchdog_open(struct inode *inode, struct file *filp) 768static int watchdog_open(struct inode *inode, struct file *filp)
769{ 769{
770 struct fschmd_data *pos, *data = NULL; 770 struct fschmd_data *pos, *data = NULL;
771 int watchdog_is_open;
771 772
772 /* We get called from drivers/char/misc.c with misc_mtx hold, and we 773 /* We get called from drivers/char/misc.c with misc_mtx hold, and we
773 call misc_register() from fschmd_probe() with watchdog_data_mutex 774 call misc_register() from fschmd_probe() with watchdog_data_mutex
@@ -782,10 +783,12 @@ static int watchdog_open(struct inode *inode, struct file *filp)
782 } 783 }
783 } 784 }
784 /* Note we can never not have found data, so we don't check for this */ 785 /* Note we can never not have found data, so we don't check for this */
785 kref_get(&data->kref); 786 watchdog_is_open = test_and_set_bit(0, &data->watchdog_is_open);
787 if (!watchdog_is_open)
788 kref_get(&data->kref);
786 mutex_unlock(&watchdog_data_mutex); 789 mutex_unlock(&watchdog_data_mutex);
787 790
788 if (test_and_set_bit(0, &data->watchdog_is_open)) 791 if (watchdog_is_open)
789 return -EBUSY; 792 return -EBUSY;
790 793
791 /* Start the watchdog */ 794 /* Start the watchdog */
diff --git a/drivers/hwmon/smsc47m1.c b/drivers/hwmon/smsc47m1.c
index 9ca97818bd4b..8fa462f2b570 100644
--- a/drivers/hwmon/smsc47m1.c
+++ b/drivers/hwmon/smsc47m1.c
@@ -488,7 +488,7 @@ static int __init smsc47m1_find(unsigned short *addr,
488} 488}
489 489
490/* Restore device to its initial state */ 490/* Restore device to its initial state */
491static void __init smsc47m1_restore(const struct smsc47m1_sio_data *sio_data) 491static void smsc47m1_restore(const struct smsc47m1_sio_data *sio_data)
492{ 492{
493 if ((sio_data->activate & 0x01) == 0) { 493 if ((sio_data->activate & 0x01) == 0) {
494 superio_enter(); 494 superio_enter();
diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c
index e3654d683e15..75bf820e7ccb 100644
--- a/drivers/i2c/busses/i2c-imx.c
+++ b/drivers/i2c/busses/i2c-imx.c
@@ -226,7 +226,6 @@ static void i2c_imx_stop(struct imx_i2c_struct *i2c_imx)
226 temp = readb(i2c_imx->base + IMX_I2C_I2CR); 226 temp = readb(i2c_imx->base + IMX_I2C_I2CR);
227 temp &= ~(I2CR_MSTA | I2CR_MTX); 227 temp &= ~(I2CR_MSTA | I2CR_MTX);
228 writeb(temp, i2c_imx->base + IMX_I2C_I2CR); 228 writeb(temp, i2c_imx->base + IMX_I2C_I2CR);
229 i2c_imx->stopped = 1;
230 } 229 }
231 if (cpu_is_mx1()) { 230 if (cpu_is_mx1()) {
232 /* 231 /*
@@ -236,8 +235,10 @@ static void i2c_imx_stop(struct imx_i2c_struct *i2c_imx)
236 udelay(i2c_imx->disable_delay); 235 udelay(i2c_imx->disable_delay);
237 } 236 }
238 237
239 if (!i2c_imx->stopped) 238 if (!i2c_imx->stopped) {
240 i2c_imx_bus_busy(i2c_imx, 0); 239 i2c_imx_bus_busy(i2c_imx, 0);
240 i2c_imx->stopped = 1;
241 }
241 242
242 /* Disable I2C controller */ 243 /* Disable I2C controller */
243 writeb(0, i2c_imx->base + IMX_I2C_I2CR); 244 writeb(0, i2c_imx->base + IMX_I2C_I2CR);
@@ -496,22 +497,23 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
496 } 497 }
497 498
498 res_size = resource_size(res); 499 res_size = resource_size(res);
500
501 if (!request_mem_region(res->start, res_size, DRIVER_NAME)) {
502 ret = -EBUSY;
503 goto fail0;
504 }
505
499 base = ioremap(res->start, res_size); 506 base = ioremap(res->start, res_size);
500 if (!base) { 507 if (!base) {
501 dev_err(&pdev->dev, "ioremap failed\n"); 508 dev_err(&pdev->dev, "ioremap failed\n");
502 ret = -EIO; 509 ret = -EIO;
503 goto fail0; 510 goto fail1;
504 } 511 }
505 512
506 i2c_imx = kzalloc(sizeof(struct imx_i2c_struct), GFP_KERNEL); 513 i2c_imx = kzalloc(sizeof(struct imx_i2c_struct), GFP_KERNEL);
507 if (!i2c_imx) { 514 if (!i2c_imx) {
508 dev_err(&pdev->dev, "can't allocate interface\n"); 515 dev_err(&pdev->dev, "can't allocate interface\n");
509 ret = -ENOMEM; 516 ret = -ENOMEM;
510 goto fail1;
511 }
512
513 if (!request_mem_region(res->start, res_size, DRIVER_NAME)) {
514 ret = -EBUSY;
515 goto fail2; 517 goto fail2;
516 } 518 }
517 519
@@ -582,11 +584,11 @@ fail5:
582fail4: 584fail4:
583 clk_put(i2c_imx->clk); 585 clk_put(i2c_imx->clk);
584fail3: 586fail3:
585 release_mem_region(i2c_imx->res->start, resource_size(res));
586fail2:
587 kfree(i2c_imx); 587 kfree(i2c_imx);
588fail1: 588fail2:
589 iounmap(base); 589 iounmap(base);
590fail1:
591 release_mem_region(res->start, resource_size(res));
590fail0: 592fail0:
591 if (pdata && pdata->exit) 593 if (pdata && pdata->exit)
592 pdata->exit(&pdev->dev); 594 pdata->exit(&pdev->dev);
@@ -618,8 +620,8 @@ static int __exit i2c_imx_remove(struct platform_device *pdev)
618 620
619 clk_put(i2c_imx->clk); 621 clk_put(i2c_imx->clk);
620 622
621 release_mem_region(i2c_imx->res->start, resource_size(i2c_imx->res));
622 iounmap(i2c_imx->base); 623 iounmap(i2c_imx->base);
624 release_mem_region(i2c_imx->res->start, resource_size(i2c_imx->res));
623 kfree(i2c_imx); 625 kfree(i2c_imx);
624 return 0; 626 return 0;
625} 627}
diff --git a/drivers/infiniband/hw/ipath/ipath_fs.c b/drivers/infiniband/hw/ipath/ipath_fs.c
index b3684060465e..100da8542bba 100644
--- a/drivers/infiniband/hw/ipath/ipath_fs.c
+++ b/drivers/infiniband/hw/ipath/ipath_fs.c
@@ -346,10 +346,8 @@ static int ipathfs_fill_super(struct super_block *sb, void *data,
346 list_for_each_entry_safe(dd, tmp, &ipath_dev_list, ipath_list) { 346 list_for_each_entry_safe(dd, tmp, &ipath_dev_list, ipath_list) {
347 spin_unlock_irqrestore(&ipath_devs_lock, flags); 347 spin_unlock_irqrestore(&ipath_devs_lock, flags);
348 ret = create_device_files(sb, dd); 348 ret = create_device_files(sb, dd);
349 if (ret) { 349 if (ret)
350 deactivate_locked_super(sb);
351 goto bail; 350 goto bail;
352 }
353 spin_lock_irqsave(&ipath_devs_lock, flags); 351 spin_lock_irqsave(&ipath_devs_lock, flags);
354 } 352 }
355 353
diff --git a/drivers/input/input.c b/drivers/input/input.c
index 30b503b8d67b..86cb2d2196ff 100644
--- a/drivers/input/input.c
+++ b/drivers/input/input.c
@@ -46,6 +46,7 @@ static unsigned int input_abs_bypass_init_data[] __initdata = {
46 ABS_MT_TOOL_TYPE, 46 ABS_MT_TOOL_TYPE,
47 ABS_MT_BLOB_ID, 47 ABS_MT_BLOB_ID,
48 ABS_MT_TRACKING_ID, 48 ABS_MT_TRACKING_ID,
49 ABS_MT_PRESSURE,
49 0 50 0
50}; 51};
51static unsigned long input_abs_bypass[BITS_TO_LONGS(ABS_CNT)]; 52static unsigned long input_abs_bypass[BITS_TO_LONGS(ABS_CNT)];
diff --git a/drivers/input/misc/winbond-cir.c b/drivers/input/misc/winbond-cir.c
index 33309fe44e20..c8f5a9a3fa14 100644
--- a/drivers/input/misc/winbond-cir.c
+++ b/drivers/input/misc/winbond-cir.c
@@ -768,7 +768,7 @@ wbcir_parse_rc6(struct device *dev, struct wbcir_data *data)
768 return; 768 return;
769 } 769 }
770 770
771 dev_info(dev, "IR-RC6 ad 0x%02X cm 0x%02X cu 0x%04X " 771 dev_dbg(dev, "IR-RC6 ad 0x%02X cm 0x%02X cu 0x%04X "
772 "toggle %u mode %u scan 0x%08X\n", 772 "toggle %u mode %u scan 0x%08X\n",
773 address, 773 address,
774 command, 774 command,
diff --git a/drivers/input/mouse/lifebook.c b/drivers/input/mouse/lifebook.c
index 6d7aa10d10f0..7c1d7d420ae3 100644
--- a/drivers/input/mouse/lifebook.c
+++ b/drivers/input/mouse/lifebook.c
@@ -53,6 +53,12 @@ static const struct dmi_system_id __initconst lifebook_dmi_table[] = {
53 { 53 {
54 /* LifeBook B */ 54 /* LifeBook B */
55 .matches = { 55 .matches = {
56 DMI_MATCH(DMI_PRODUCT_NAME, "Lifebook B Series"),
57 },
58 },
59 {
60 /* LifeBook B */
61 .matches = {
56 DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook B Series"), 62 DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook B Series"),
57 }, 63 },
58 }, 64 },
diff --git a/drivers/input/touchscreen/ad7879.c b/drivers/input/touchscreen/ad7879.c
index c21e6d3a8844..794d070c6900 100644
--- a/drivers/input/touchscreen/ad7879.c
+++ b/drivers/input/touchscreen/ad7879.c
@@ -47,6 +47,7 @@
47#include <linux/workqueue.h> 47#include <linux/workqueue.h>
48#include <linux/spi/spi.h> 48#include <linux/spi/spi.h>
49#include <linux/i2c.h> 49#include <linux/i2c.h>
50#include <linux/gpio.h>
50 51
51#include <linux/spi/ad7879.h> 52#include <linux/spi/ad7879.h>
52 53
@@ -132,7 +133,9 @@ struct ad7879 {
132 struct input_dev *input; 133 struct input_dev *input;
133 struct work_struct work; 134 struct work_struct work;
134 struct timer_list timer; 135 struct timer_list timer;
135 136#ifdef CONFIG_GPIOLIB
137 struct gpio_chip gc;
138#endif
136 struct mutex mutex; 139 struct mutex mutex;
137 unsigned disabled:1; /* P: mutex */ 140 unsigned disabled:1; /* P: mutex */
138 141
@@ -150,11 +153,9 @@ struct ad7879 {
150 u8 median; 153 u8 median;
151 u16 x_plate_ohms; 154 u16 x_plate_ohms;
152 u16 pressure_max; 155 u16 pressure_max;
153 u16 gpio_init;
154 u16 cmd_crtl1; 156 u16 cmd_crtl1;
155 u16 cmd_crtl2; 157 u16 cmd_crtl2;
156 u16 cmd_crtl3; 158 u16 cmd_crtl3;
157 unsigned gpio:1;
158}; 159};
159 160
160static int ad7879_read(bus_device *, u8); 161static int ad7879_read(bus_device *, u8);
@@ -237,24 +238,6 @@ static irqreturn_t ad7879_irq(int irq, void *handle)
237 238
238static void ad7879_setup(struct ad7879 *ts) 239static void ad7879_setup(struct ad7879 *ts)
239{ 240{
240 ts->cmd_crtl3 = AD7879_YPLUS_BIT |
241 AD7879_XPLUS_BIT |
242 AD7879_Z2_BIT |
243 AD7879_Z1_BIT |
244 AD7879_TEMPMASK_BIT |
245 AD7879_AUXVBATMASK_BIT |
246 AD7879_GPIOALERTMASK_BIT;
247
248 ts->cmd_crtl2 = AD7879_PM(AD7879_PM_DYN) | AD7879_DFR |
249 AD7879_AVG(ts->averaging) |
250 AD7879_MFS(ts->median) |
251 AD7879_FCD(ts->first_conversion_delay) |
252 ts->gpio_init;
253
254 ts->cmd_crtl1 = AD7879_MODE_INT | AD7879_MODE_SEQ1 |
255 AD7879_ACQ(ts->acquisition_time) |
256 AD7879_TMR(ts->pen_down_acc_interval);
257
258 ad7879_write(ts->bus, AD7879_REG_CTRL2, ts->cmd_crtl2); 241 ad7879_write(ts->bus, AD7879_REG_CTRL2, ts->cmd_crtl2);
259 ad7879_write(ts->bus, AD7879_REG_CTRL3, ts->cmd_crtl3); 242 ad7879_write(ts->bus, AD7879_REG_CTRL3, ts->cmd_crtl3);
260 ad7879_write(ts->bus, AD7879_REG_CTRL1, ts->cmd_crtl1); 243 ad7879_write(ts->bus, AD7879_REG_CTRL1, ts->cmd_crtl1);
@@ -324,48 +307,132 @@ static ssize_t ad7879_disable_store(struct device *dev,
324 307
325static DEVICE_ATTR(disable, 0664, ad7879_disable_show, ad7879_disable_store); 308static DEVICE_ATTR(disable, 0664, ad7879_disable_show, ad7879_disable_store);
326 309
327static ssize_t ad7879_gpio_show(struct device *dev, 310static struct attribute *ad7879_attributes[] = {
328 struct device_attribute *attr, char *buf) 311 &dev_attr_disable.attr,
312 NULL
313};
314
315static const struct attribute_group ad7879_attr_group = {
316 .attrs = ad7879_attributes,
317};
318
319#ifdef CONFIG_GPIOLIB
320static int ad7879_gpio_direction_input(struct gpio_chip *chip,
321 unsigned gpio)
329{ 322{
330 struct ad7879 *ts = dev_get_drvdata(dev); 323 struct ad7879 *ts = container_of(chip, struct ad7879, gc);
324 int err;
331 325
332 return sprintf(buf, "%u\n", ts->gpio); 326 mutex_lock(&ts->mutex);
327 ts->cmd_crtl2 |= AD7879_GPIO_EN | AD7879_GPIODIR | AD7879_GPIOPOL;
328 err = ad7879_write(ts->bus, AD7879_REG_CTRL2, ts->cmd_crtl2);
329 mutex_unlock(&ts->mutex);
330
331 return err;
333} 332}
334 333
335static ssize_t ad7879_gpio_store(struct device *dev, 334static int ad7879_gpio_direction_output(struct gpio_chip *chip,
336 struct device_attribute *attr, 335 unsigned gpio, int level)
337 const char *buf, size_t count)
338{ 336{
339 struct ad7879 *ts = dev_get_drvdata(dev); 337 struct ad7879 *ts = container_of(chip, struct ad7879, gc);
340 unsigned long val; 338 int err;
341 int error;
342 339
343 error = strict_strtoul(buf, 10, &val); 340 mutex_lock(&ts->mutex);
344 if (error) 341 ts->cmd_crtl2 &= ~AD7879_GPIODIR;
345 return error; 342 ts->cmd_crtl2 |= AD7879_GPIO_EN | AD7879_GPIOPOL;
343 if (level)
344 ts->cmd_crtl2 |= AD7879_GPIO_DATA;
345 else
346 ts->cmd_crtl2 &= ~AD7879_GPIO_DATA;
347
348 err = ad7879_write(ts->bus, AD7879_REG_CTRL2, ts->cmd_crtl2);
349 mutex_unlock(&ts->mutex);
350
351 return err;
352}
353
354static int ad7879_gpio_get_value(struct gpio_chip *chip, unsigned gpio)
355{
356 struct ad7879 *ts = container_of(chip, struct ad7879, gc);
357 u16 val;
346 358
347 mutex_lock(&ts->mutex); 359 mutex_lock(&ts->mutex);
348 ts->gpio = !!val; 360 val = ad7879_read(ts->bus, AD7879_REG_CTRL2);
349 error = ad7879_write(ts->bus, AD7879_REG_CTRL2,
350 ts->gpio ?
351 ts->cmd_crtl2 & ~AD7879_GPIO_DATA :
352 ts->cmd_crtl2 | AD7879_GPIO_DATA);
353 mutex_unlock(&ts->mutex); 361 mutex_unlock(&ts->mutex);
354 362
355 return error ? : count; 363 return !!(val & AD7879_GPIO_DATA);
356} 364}
357 365
358static DEVICE_ATTR(gpio, 0664, ad7879_gpio_show, ad7879_gpio_store); 366static void ad7879_gpio_set_value(struct gpio_chip *chip,
367 unsigned gpio, int value)
368{
369 struct ad7879 *ts = container_of(chip, struct ad7879, gc);
359 370
360static struct attribute *ad7879_attributes[] = { 371 mutex_lock(&ts->mutex);
361 &dev_attr_disable.attr, 372 if (value)
362 &dev_attr_gpio.attr, 373 ts->cmd_crtl2 |= AD7879_GPIO_DATA;
363 NULL 374 else
364}; 375 ts->cmd_crtl2 &= ~AD7879_GPIO_DATA;
365 376
366static const struct attribute_group ad7879_attr_group = { 377 ad7879_write(ts->bus, AD7879_REG_CTRL2, ts->cmd_crtl2);
367 .attrs = ad7879_attributes, 378 mutex_unlock(&ts->mutex);
368}; 379}
380
381static int __devinit ad7879_gpio_add(struct device *dev)
382{
383 struct ad7879 *ts = dev_get_drvdata(dev);
384 struct ad7879_platform_data *pdata = dev->platform_data;
385 int ret = 0;
386
387 if (pdata->gpio_export) {
388 ts->gc.direction_input = ad7879_gpio_direction_input;
389 ts->gc.direction_output = ad7879_gpio_direction_output;
390 ts->gc.get = ad7879_gpio_get_value;
391 ts->gc.set = ad7879_gpio_set_value;
392 ts->gc.can_sleep = 1;
393 ts->gc.base = pdata->gpio_base;
394 ts->gc.ngpio = 1;
395 ts->gc.label = "AD7879-GPIO";
396 ts->gc.owner = THIS_MODULE;
397 ts->gc.dev = dev;
398
399 ret = gpiochip_add(&ts->gc);
400 if (ret)
401 dev_err(dev, "failed to register gpio %d\n",
402 ts->gc.base);
403 }
404
405 return ret;
406}
407
408/*
409 * We mark ad7879_gpio_remove inline so there is a chance the code
410 * gets discarded when not needed. We can't do __devinit/__devexit
411 * markup since it is used in both probe and remove methods.
412 */
413static inline void ad7879_gpio_remove(struct device *dev)
414{
415 struct ad7879 *ts = dev_get_drvdata(dev);
416 struct ad7879_platform_data *pdata = dev->platform_data;
417 int ret;
418
419 if (pdata->gpio_export) {
420 ret = gpiochip_remove(&ts->gc);
421 if (ret)
422 dev_err(dev, "failed to remove gpio %d\n",
423 ts->gc.base);
424 }
425}
426#else
427static inline int ad7879_gpio_add(struct device *dev)
428{
429 return 0;
430}
431
432static inline void ad7879_gpio_remove(struct device *dev)
433{
434}
435#endif
369 436
370static int __devinit ad7879_construct(bus_device *bus, struct ad7879 *ts) 437static int __devinit ad7879_construct(bus_device *bus, struct ad7879 *ts)
371{ 438{
@@ -403,12 +470,6 @@ static int __devinit ad7879_construct(bus_device *bus, struct ad7879 *ts)
403 ts->pen_down_acc_interval = pdata->pen_down_acc_interval; 470 ts->pen_down_acc_interval = pdata->pen_down_acc_interval;
404 ts->median = pdata->median; 471 ts->median = pdata->median;
405 472
406 if (pdata->gpio_output)
407 ts->gpio_init = AD7879_GPIO_EN |
408 (pdata->gpio_default ? 0 : AD7879_GPIO_DATA);
409 else
410 ts->gpio_init = AD7879_GPIO_EN | AD7879_GPIODIR;
411
412 snprintf(ts->phys, sizeof(ts->phys), "%s/input0", dev_name(&bus->dev)); 473 snprintf(ts->phys, sizeof(ts->phys), "%s/input0", dev_name(&bus->dev));
413 474
414 input_dev->name = "AD7879 Touchscreen"; 475 input_dev->name = "AD7879 Touchscreen";
@@ -446,6 +507,23 @@ static int __devinit ad7879_construct(bus_device *bus, struct ad7879 *ts)
446 goto err_free_mem; 507 goto err_free_mem;
447 } 508 }
448 509
510 ts->cmd_crtl3 = AD7879_YPLUS_BIT |
511 AD7879_XPLUS_BIT |
512 AD7879_Z2_BIT |
513 AD7879_Z1_BIT |
514 AD7879_TEMPMASK_BIT |
515 AD7879_AUXVBATMASK_BIT |
516 AD7879_GPIOALERTMASK_BIT;
517
518 ts->cmd_crtl2 = AD7879_PM(AD7879_PM_DYN) | AD7879_DFR |
519 AD7879_AVG(ts->averaging) |
520 AD7879_MFS(ts->median) |
521 AD7879_FCD(ts->first_conversion_delay);
522
523 ts->cmd_crtl1 = AD7879_MODE_INT | AD7879_MODE_SEQ1 |
524 AD7879_ACQ(ts->acquisition_time) |
525 AD7879_TMR(ts->pen_down_acc_interval);
526
449 ad7879_setup(ts); 527 ad7879_setup(ts);
450 528
451 err = request_irq(bus->irq, ad7879_irq, 529 err = request_irq(bus->irq, ad7879_irq,
@@ -460,15 +538,21 @@ static int __devinit ad7879_construct(bus_device *bus, struct ad7879 *ts)
460 if (err) 538 if (err)
461 goto err_free_irq; 539 goto err_free_irq;
462 540
463 err = input_register_device(input_dev); 541 err = ad7879_gpio_add(&bus->dev);
464 if (err) 542 if (err)
465 goto err_remove_attr; 543 goto err_remove_attr;
466 544
545 err = input_register_device(input_dev);
546 if (err)
547 goto err_remove_gpio;
548
467 dev_info(&bus->dev, "Rev.%d touchscreen, irq %d\n", 549 dev_info(&bus->dev, "Rev.%d touchscreen, irq %d\n",
468 revid >> 8, bus->irq); 550 revid >> 8, bus->irq);
469 551
470 return 0; 552 return 0;
471 553
554err_remove_gpio:
555 ad7879_gpio_remove(&bus->dev);
472err_remove_attr: 556err_remove_attr:
473 sysfs_remove_group(&bus->dev.kobj, &ad7879_attr_group); 557 sysfs_remove_group(&bus->dev.kobj, &ad7879_attr_group);
474err_free_irq: 558err_free_irq:
@@ -481,6 +565,7 @@ err_free_mem:
481 565
482static int __devexit ad7879_destroy(bus_device *bus, struct ad7879 *ts) 566static int __devexit ad7879_destroy(bus_device *bus, struct ad7879 *ts)
483{ 567{
568 ad7879_gpio_remove(&bus->dev);
484 ad7879_disable(ts); 569 ad7879_disable(ts);
485 sysfs_remove_group(&ts->bus->dev.kobj, &ad7879_attr_group); 570 sysfs_remove_group(&ts->bus->dev.kobj, &ad7879_attr_group);
486 free_irq(ts->bus->irq, ts); 571 free_irq(ts->bus->irq, ts);
diff --git a/drivers/macintosh/smu.c b/drivers/macintosh/smu.c
index 96faa799b82a..f96feeb6b9ce 100644
--- a/drivers/macintosh/smu.c
+++ b/drivers/macintosh/smu.c
@@ -660,7 +660,7 @@ static int smu_platform_probe(struct of_device* dev,
660 return 0; 660 return 0;
661} 661}
662 662
663static struct of_device_id smu_platform_match[] = 663static const struct of_device_id smu_platform_match[] =
664{ 664{
665 { 665 {
666 .type = "smu", 666 .type = "smu",
diff --git a/drivers/macintosh/therm_pm72.c b/drivers/macintosh/therm_pm72.c
index ea32c7e5a9af..454bc501df3c 100644
--- a/drivers/macintosh/therm_pm72.c
+++ b/drivers/macintosh/therm_pm72.c
@@ -2211,7 +2211,7 @@ static int fcu_of_remove(struct of_device* dev)
2211 return 0; 2211 return 0;
2212} 2212}
2213 2213
2214static struct of_device_id fcu_match[] = 2214static const struct of_device_id fcu_match[] =
2215{ 2215{
2216 { 2216 {
2217 .type = "fcu", 2217 .type = "fcu",
diff --git a/drivers/macintosh/therm_windtunnel.c b/drivers/macintosh/therm_windtunnel.c
index 3fbe41b0ac07..ba48fd76396e 100644
--- a/drivers/macintosh/therm_windtunnel.c
+++ b/drivers/macintosh/therm_windtunnel.c
@@ -457,7 +457,7 @@ therm_of_remove( struct of_device *dev )
457 return 0; 457 return 0;
458} 458}
459 459
460static struct of_device_id therm_of_match[] = {{ 460static const struct of_device_id therm_of_match[] = {{
461 .name = "fan", 461 .name = "fan",
462 .compatible = "adm1030" 462 .compatible = "adm1030"
463 }, {} 463 }, {}
diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
index be625475cf6d..4b22feb01a0c 100644
--- a/drivers/md/dm-table.c
+++ b/drivers/md/dm-table.c
@@ -503,16 +503,15 @@ int dm_set_device_limits(struct dm_target *ti, struct dm_dev *dev,
503 return 0; 503 return 0;
504 } 504 }
505 505
506 if (blk_stack_limits(limits, &q->limits, start << 9) < 0) 506 if (bdev_stack_limits(limits, bdev, start) < 0)
507 DMWARN("%s: target device %s is misaligned: " 507 DMWARN("%s: adding target device %s caused an alignment inconsistency: "
508 "physical_block_size=%u, logical_block_size=%u, " 508 "physical_block_size=%u, logical_block_size=%u, "
509 "alignment_offset=%u, start=%llu", 509 "alignment_offset=%u, start=%llu",
510 dm_device_name(ti->table->md), bdevname(bdev, b), 510 dm_device_name(ti->table->md), bdevname(bdev, b),
511 q->limits.physical_block_size, 511 q->limits.physical_block_size,
512 q->limits.logical_block_size, 512 q->limits.logical_block_size,
513 q->limits.alignment_offset, 513 q->limits.alignment_offset,
514 (unsigned long long) start << 9); 514 (unsigned long long) start << SECTOR_SHIFT);
515
516 515
517 /* 516 /*
518 * Check if merge fn is supported. 517 * Check if merge fn is supported.
@@ -1026,9 +1025,9 @@ combine_limits:
1026 * for the table. 1025 * for the table.
1027 */ 1026 */
1028 if (blk_stack_limits(limits, &ti_limits, 0) < 0) 1027 if (blk_stack_limits(limits, &ti_limits, 0) < 0)
1029 DMWARN("%s: target device " 1028 DMWARN("%s: adding target device "
1030 "(start sect %llu len %llu) " 1029 "(start sect %llu len %llu) "
1031 "is misaligned", 1030 "caused an alignment inconsistency",
1032 dm_device_name(table->md), 1031 dm_device_name(table->md),
1033 (unsigned long long) ti->begin, 1032 (unsigned long long) ti->begin,
1034 (unsigned long long) ti->len); 1033 (unsigned long long) ti->len);
@@ -1080,15 +1079,6 @@ void dm_table_set_restrictions(struct dm_table *t, struct request_queue *q,
1080 struct queue_limits *limits) 1079 struct queue_limits *limits)
1081{ 1080{
1082 /* 1081 /*
1083 * Each target device in the table has a data area that should normally
1084 * be aligned such that the DM device's alignment_offset is 0.
1085 * FIXME: Propagate alignment_offsets up the stack and warn of
1086 * sub-optimal or inconsistent settings.
1087 */
1088 limits->alignment_offset = 0;
1089 limits->misaligned = 0;
1090
1091 /*
1092 * Copy table's limits to the DM device's request_queue 1082 * Copy table's limits to the DM device's request_queue
1093 */ 1083 */
1094 q->limits = *limits; 1084 q->limits = *limits;
diff --git a/drivers/media/IR/ir-keytable.c b/drivers/media/IR/ir-keytable.c
index bff7a5356037..b521ed9d6e2e 100644
--- a/drivers/media/IR/ir-keytable.c
+++ b/drivers/media/IR/ir-keytable.c
@@ -13,7 +13,7 @@
13 */ 13 */
14 14
15 15
16#include <linux/usb/input.h> 16#include <linux/input.h>
17#include <media/ir-common.h> 17#include <media/ir-common.h>
18 18
19#define IR_TAB_MIN_SIZE 32 19#define IR_TAB_MIN_SIZE 32
diff --git a/drivers/media/common/tuners/tda8290.c b/drivers/media/common/tuners/tda8290.c
index c190b0dedee4..2833137fa819 100644
--- a/drivers/media/common/tuners/tda8290.c
+++ b/drivers/media/common/tuners/tda8290.c
@@ -144,7 +144,8 @@ static void set_audio(struct dvb_frontend *fe,
144 } 144 }
145 145
146 if (params->mode == V4L2_TUNER_RADIO) { 146 if (params->mode == V4L2_TUNER_RADIO) {
147 priv->tda8290_easy_mode = 0x01; /* Start with MN values */ 147 /* Set TDA8295 to FM radio; Start TDA8290 with MN values */
148 priv->tda8290_easy_mode = (priv->ver & TDA8295) ? 0x80 : 0x01;
148 tuner_dbg("setting to radio FM\n"); 149 tuner_dbg("setting to radio FM\n");
149 } else { 150 } else {
150 tuner_dbg("setting tda829x to system %s\n", mode); 151 tuner_dbg("setting tda829x to system %s\n", mode);
@@ -672,16 +673,19 @@ static int tda8290_probe(struct tuner_i2c_props *i2c_props)
672static int tda8295_probe(struct tuner_i2c_props *i2c_props) 673static int tda8295_probe(struct tuner_i2c_props *i2c_props)
673{ 674{
674#define TDA8295_ID 0x8a 675#define TDA8295_ID 0x8a
676#define TDA8295C2_ID 0x8b
675 unsigned char tda8295_id[] = { 0x2f, 0x00 }; 677 unsigned char tda8295_id[] = { 0x2f, 0x00 };
676 678
677 /* detect tda8295 */ 679 /* detect tda8295 */
678 tuner_i2c_xfer_send(i2c_props, &tda8295_id[0], 1); 680 tuner_i2c_xfer_send(i2c_props, &tda8295_id[0], 1);
679 tuner_i2c_xfer_recv(i2c_props, &tda8295_id[1], 1); 681 tuner_i2c_xfer_recv(i2c_props, &tda8295_id[1], 1);
680 682
681 if (tda8295_id[1] == TDA8295_ID) { 683 if ((tda8295_id[1] & 0xfe) == TDA8295_ID) {
682 if (debug) 684 if (debug)
683 printk(KERN_DEBUG "%s: tda8295 detected @ %d-%04x\n", 685 printk(KERN_DEBUG "%s: %s detected @ %d-%04x\n",
684 __func__, i2c_adapter_id(i2c_props->adap), 686 __func__, (tda8295_id[1] == TDA8295_ID) ?
687 "tda8295c1" : "tda8295c2",
688 i2c_adapter_id(i2c_props->adap),
685 i2c_props->addr); 689 i2c_props->addr);
686 return 0; 690 return 0;
687 } 691 }
diff --git a/drivers/media/dvb/Kconfig b/drivers/media/dvb/Kconfig
index 35d0817126e9..cf8f65f309da 100644
--- a/drivers/media/dvb/Kconfig
+++ b/drivers/media/dvb/Kconfig
@@ -72,6 +72,10 @@ comment "Supported Earthsoft PT1 Adapters"
72 depends on DVB_CORE && PCI && I2C 72 depends on DVB_CORE && PCI && I2C
73source "drivers/media/dvb/pt1/Kconfig" 73source "drivers/media/dvb/pt1/Kconfig"
74 74
75comment "Supported Mantis Adapters"
76 depends on DVB_CORE && PCI && I2C
77 source "drivers/media/dvb/mantis/Kconfig"
78
75comment "Supported DVB Frontends" 79comment "Supported DVB Frontends"
76 depends on DVB_CORE 80 depends on DVB_CORE
77source "drivers/media/dvb/frontends/Kconfig" 81source "drivers/media/dvb/frontends/Kconfig"
diff --git a/drivers/media/dvb/Makefile b/drivers/media/dvb/Makefile
index 16d262ddb45d..c12922c3659b 100644
--- a/drivers/media/dvb/Makefile
+++ b/drivers/media/dvb/Makefile
@@ -2,6 +2,18 @@
2# Makefile for the kernel multimedia device drivers. 2# Makefile for the kernel multimedia device drivers.
3# 3#
4 4
5obj-y := dvb-core/ frontends/ ttpci/ ttusb-dec/ ttusb-budget/ b2c2/ bt8xx/ dvb-usb/ pluto2/ siano/ dm1105/ pt1/ 5obj-y := dvb-core/ \
6 frontends/ \
7 ttpci/ \
8 ttusb-dec/ \
9 ttusb-budget/ \
10 b2c2/ \
11 bt8xx/ \
12 dvb-usb/ \
13 pluto2/ \
14 siano/ \
15 dm1105/ \
16 pt1/ \
17 mantis/
6 18
7obj-$(CONFIG_DVB_FIREDTV) += firewire/ 19obj-$(CONFIG_DVB_FIREDTV) += firewire/
diff --git a/drivers/media/dvb/frontends/Kconfig b/drivers/media/dvb/frontends/Kconfig
index a3b8b697349b..cd7f9b7cbffa 100644
--- a/drivers/media/dvb/frontends/Kconfig
+++ b/drivers/media/dvb/frontends/Kconfig
@@ -208,6 +208,14 @@ config DVB_DS3000
208 help 208 help
209 A DVB-S/S2 tuner module. Say Y when you want to support this frontend. 209 A DVB-S/S2 tuner module. Say Y when you want to support this frontend.
210 210
211config DVB_MB86A16
212 tristate "Fujitsu MB86A16 based"
213 depends on DVB_CORE && I2C
214 default m if DVB_FE_CUSTOMISE
215 help
216 A DVB-S/DSS Direct Conversion reveiver.
217 Say Y when you want to support this frontend.
218
211comment "DVB-T (terrestrial) frontends" 219comment "DVB-T (terrestrial) frontends"
212 depends on DVB_CORE 220 depends on DVB_CORE
213 221
@@ -587,6 +595,17 @@ config DVB_ATBM8830
587 help 595 help
588 A DMB-TH tuner module. Say Y when you want to support this frontend. 596 A DMB-TH tuner module. Say Y when you want to support this frontend.
589 597
598config DVB_TDA665x
599 tristate "TDA665x tuner"
600 depends on DVB_CORE && I2C
601 default m if DVB_FE_CUSTOMISE
602 help
603 Support for tuner modules based on Philips TDA6650/TDA6651 chips.
604 Say Y when you want to support this chip.
605
606 Currently supported tuners:
607 * Panasonic ENV57H12D5 (ET-50DT)
608
590comment "Tools to develop new frontends" 609comment "Tools to develop new frontends"
591 610
592config DVB_DUMMY_FE 611config DVB_DUMMY_FE
diff --git a/drivers/media/dvb/frontends/Makefile b/drivers/media/dvb/frontends/Makefile
index 47575cc7b699..874e8ada4d1d 100644
--- a/drivers/media/dvb/frontends/Makefile
+++ b/drivers/media/dvb/frontends/Makefile
@@ -64,6 +64,7 @@ obj-$(CONFIG_DVB_TDA10048) += tda10048.o
64obj-$(CONFIG_DVB_TUNER_CX24113) += cx24113.o 64obj-$(CONFIG_DVB_TUNER_CX24113) += cx24113.o
65obj-$(CONFIG_DVB_S5H1411) += s5h1411.o 65obj-$(CONFIG_DVB_S5H1411) += s5h1411.o
66obj-$(CONFIG_DVB_LGS8GL5) += lgs8gl5.o 66obj-$(CONFIG_DVB_LGS8GL5) += lgs8gl5.o
67obj-$(CONFIG_DVB_TDA665x) += tda665x.o
67obj-$(CONFIG_DVB_LGS8GXX) += lgs8gxx.o 68obj-$(CONFIG_DVB_LGS8GXX) += lgs8gxx.o
68obj-$(CONFIG_DVB_ATBM8830) += atbm8830.o 69obj-$(CONFIG_DVB_ATBM8830) += atbm8830.o
69obj-$(CONFIG_DVB_DUMMY_FE) += dvb_dummy_fe.o 70obj-$(CONFIG_DVB_DUMMY_FE) += dvb_dummy_fe.o
@@ -80,3 +81,4 @@ obj-$(CONFIG_DVB_STV6110x) += stv6110x.o
80obj-$(CONFIG_DVB_ISL6423) += isl6423.o 81obj-$(CONFIG_DVB_ISL6423) += isl6423.o
81obj-$(CONFIG_DVB_EC100) += ec100.o 82obj-$(CONFIG_DVB_EC100) += ec100.o
82obj-$(CONFIG_DVB_DS3000) += ds3000.o 83obj-$(CONFIG_DVB_DS3000) += ds3000.o
84obj-$(CONFIG_DVB_MB86A16) += mb86a16.o
diff --git a/drivers/media/dvb/frontends/dib8000.h b/drivers/media/dvb/frontends/dib8000.h
index d99619ae983c..b1ee20799639 100644
--- a/drivers/media/dvb/frontends/dib8000.h
+++ b/drivers/media/dvb/frontends/dib8000.h
@@ -100,7 +100,7 @@ static inline int dib8000_set_tune_state(struct dvb_frontend *fe, enum frontend_
100static inline enum frontend_tune_state dib8000_get_tune_state(struct dvb_frontend *fe) 100static inline enum frontend_tune_state dib8000_get_tune_state(struct dvb_frontend *fe)
101{ 101{
102 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 102 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
103 return CT_SHUTDOWN, 103 return CT_SHUTDOWN;
104} 104}
105static inline void dib8000_pwm_agc_reset(struct dvb_frontend *fe) 105static inline void dib8000_pwm_agc_reset(struct dvb_frontend *fe)
106{ 106{
diff --git a/drivers/media/dvb/frontends/lgdt3305.h b/drivers/media/dvb/frontends/lgdt3305.h
index 4fa6e52d1fe8..9cb11c9cae53 100644
--- a/drivers/media/dvb/frontends/lgdt3305.h
+++ b/drivers/media/dvb/frontends/lgdt3305.h
@@ -54,13 +54,13 @@ struct lgdt3305_config {
54 u16 usref_qam256; /* default: 0x2a80 */ 54 u16 usref_qam256; /* default: 0x2a80 */
55 55
56 /* disable i2c repeater - 0:repeater enabled 1:repeater disabled */ 56 /* disable i2c repeater - 0:repeater enabled 1:repeater disabled */
57 int deny_i2c_rptr:1; 57 unsigned int deny_i2c_rptr:1;
58 58
59 /* spectral inversion - 0:disabled 1:enabled */ 59 /* spectral inversion - 0:disabled 1:enabled */
60 int spectral_inversion:1; 60 unsigned int spectral_inversion:1;
61 61
62 /* use RF AGC loop - 0:disabled 1:enabled */ 62 /* use RF AGC loop - 0:disabled 1:enabled */
63 int rf_agc_loop:1; 63 unsigned int rf_agc_loop:1;
64 64
65 enum lgdt3305_mpeg_mode mpeg_mode; 65 enum lgdt3305_mpeg_mode mpeg_mode;
66 enum lgdt3305_tp_clock_edge tpclk_edge; 66 enum lgdt3305_tp_clock_edge tpclk_edge;
diff --git a/drivers/media/dvb/frontends/mb86a16.c b/drivers/media/dvb/frontends/mb86a16.c
new file mode 100644
index 000000000000..d05f7500e0c5
--- /dev/null
+++ b/drivers/media/dvb/frontends/mb86a16.c
@@ -0,0 +1,1878 @@
1/*
2 Fujitsu MB86A16 DVB-S/DSS DC Receiver driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/init.h>
22#include <linux/kernel.h>
23#include <linux/module.h>
24#include <linux/moduleparam.h>
25
26#include "dvb_frontend.h"
27#include "mb86a16.h"
28#include "mb86a16_priv.h"
29
30unsigned int verbose = 5;
31module_param(verbose, int, 0644);
32
33#define ABS(x) ((x) < 0 ? (-x) : (x))
34
35struct mb86a16_state {
36 struct i2c_adapter *i2c_adap;
37 const struct mb86a16_config *config;
38 struct dvb_frontend frontend;
39
40 /* tuning parameters */
41 int frequency;
42 int srate;
43
44 /* Internal stuff */
45 int master_clk;
46 int deci;
47 int csel;
48 int rsel;
49};
50
51#define MB86A16_ERROR 0
52#define MB86A16_NOTICE 1
53#define MB86A16_INFO 2
54#define MB86A16_DEBUG 3
55
56#define dprintk(x, y, z, format, arg...) do { \
57 if (z) { \
58 if ((x > MB86A16_ERROR) && (x > y)) \
59 printk(KERN_ERR "%s: " format "\n", __func__, ##arg); \
60 else if ((x > MB86A16_NOTICE) && (x > y)) \
61 printk(KERN_NOTICE "%s: " format "\n", __func__, ##arg); \
62 else if ((x > MB86A16_INFO) && (x > y)) \
63 printk(KERN_INFO "%s: " format "\n", __func__, ##arg); \
64 else if ((x > MB86A16_DEBUG) && (x > y)) \
65 printk(KERN_DEBUG "%s: " format "\n", __func__, ##arg); \
66 } else { \
67 if (x > y) \
68 printk(format, ##arg); \
69 } \
70} while (0)
71
72#define TRACE_IN dprintk(verbose, MB86A16_DEBUG, 1, "-->()")
73#define TRACE_OUT dprintk(verbose, MB86A16_DEBUG, 1, "()-->")
74
75static int mb86a16_write(struct mb86a16_state *state, u8 reg, u8 val)
76{
77 int ret;
78 u8 buf[] = { reg, val };
79
80 struct i2c_msg msg = {
81 .addr = state->config->demod_address,
82 .flags = 0,
83 .buf = buf,
84 .len = 2
85 };
86
87 dprintk(verbose, MB86A16_DEBUG, 1,
88 "writing to [0x%02x],Reg[0x%02x],Data[0x%02x]",
89 state->config->demod_address, buf[0], buf[1]);
90
91 ret = i2c_transfer(state->i2c_adap, &msg, 1);
92
93 return (ret != 1) ? -EREMOTEIO : 0;
94}
95
96static int mb86a16_read(struct mb86a16_state *state, u8 reg, u8 *val)
97{
98 int ret;
99 u8 b0[] = { reg };
100 u8 b1[] = { 0 };
101
102 struct i2c_msg msg[] = {
103 {
104 .addr = state->config->demod_address,
105 .flags = 0,
106 .buf = b0,
107 .len = 1
108 }, {
109 .addr = state->config->demod_address,
110 .flags = I2C_M_RD,
111 .buf = b1,
112 .len = 1
113 }
114 };
115 ret = i2c_transfer(state->i2c_adap, msg, 2);
116 if (ret != 2) {
117 dprintk(verbose, MB86A16_ERROR, 1, "read error(reg=0x%02x, ret=0x%i)",
118 reg, ret);
119
120 return -EREMOTEIO;
121 }
122 *val = b1[0];
123
124 return ret;
125}
126
127static int CNTM_set(struct mb86a16_state *state,
128 unsigned char timint1,
129 unsigned char timint2,
130 unsigned char cnext)
131{
132 unsigned char val;
133
134 val = (timint1 << 4) | (timint2 << 2) | cnext;
135 if (mb86a16_write(state, MB86A16_CNTMR, val) < 0)
136 goto err;
137
138 return 0;
139
140err:
141 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
142 return -EREMOTEIO;
143}
144
145static int smrt_set(struct mb86a16_state *state, int rate)
146{
147 int tmp ;
148 int m ;
149 unsigned char STOFS0, STOFS1;
150
151 m = 1 << state->deci;
152 tmp = (8192 * state->master_clk - 2 * m * rate * 8192 + state->master_clk / 2) / state->master_clk;
153
154 STOFS0 = tmp & 0x0ff;
155 STOFS1 = (tmp & 0xf00) >> 8;
156
157 if (mb86a16_write(state, MB86A16_SRATE1, (state->deci << 2) |
158 (state->csel << 1) |
159 state->rsel) < 0)
160 goto err;
161 if (mb86a16_write(state, MB86A16_SRATE2, STOFS0) < 0)
162 goto err;
163 if (mb86a16_write(state, MB86A16_SRATE3, STOFS1) < 0)
164 goto err;
165
166 return 0;
167err:
168 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
169 return -1;
170}
171
172static int srst(struct mb86a16_state *state)
173{
174 if (mb86a16_write(state, MB86A16_RESET, 0x04) < 0)
175 goto err;
176
177 return 0;
178err:
179 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
180 return -EREMOTEIO;
181
182}
183
184static int afcex_data_set(struct mb86a16_state *state,
185 unsigned char AFCEX_L,
186 unsigned char AFCEX_H)
187{
188 if (mb86a16_write(state, MB86A16_AFCEXL, AFCEX_L) < 0)
189 goto err;
190 if (mb86a16_write(state, MB86A16_AFCEXH, AFCEX_H) < 0)
191 goto err;
192
193 return 0;
194err:
195 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
196
197 return -1;
198}
199
200static int afcofs_data_set(struct mb86a16_state *state,
201 unsigned char AFCEX_L,
202 unsigned char AFCEX_H)
203{
204 if (mb86a16_write(state, 0x58, AFCEX_L) < 0)
205 goto err;
206 if (mb86a16_write(state, 0x59, AFCEX_H) < 0)
207 goto err;
208
209 return 0;
210err:
211 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
212 return -EREMOTEIO;
213}
214
215static int stlp_set(struct mb86a16_state *state,
216 unsigned char STRAS,
217 unsigned char STRBS)
218{
219 if (mb86a16_write(state, MB86A16_STRFILTCOEF1, (STRBS << 3) | (STRAS)) < 0)
220 goto err;
221
222 return 0;
223err:
224 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
225 return -EREMOTEIO;
226}
227
228static int Vi_set(struct mb86a16_state *state, unsigned char ETH, unsigned char VIA)
229{
230 if (mb86a16_write(state, MB86A16_VISET2, 0x04) < 0)
231 goto err;
232 if (mb86a16_write(state, MB86A16_VISET3, 0xf5) < 0)
233 goto err;
234
235 return 0;
236err:
237 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
238 return -EREMOTEIO;
239}
240
241static int initial_set(struct mb86a16_state *state)
242{
243 if (stlp_set(state, 5, 7))
244 goto err;
245
246 udelay(100);
247 if (afcex_data_set(state, 0, 0))
248 goto err;
249
250 udelay(100);
251 if (afcofs_data_set(state, 0, 0))
252 goto err;
253
254 udelay(100);
255 if (mb86a16_write(state, MB86A16_CRLFILTCOEF1, 0x16) < 0)
256 goto err;
257 if (mb86a16_write(state, 0x2f, 0x21) < 0)
258 goto err;
259 if (mb86a16_write(state, MB86A16_VIMAG, 0x38) < 0)
260 goto err;
261 if (mb86a16_write(state, MB86A16_FAGCS1, 0x00) < 0)
262 goto err;
263 if (mb86a16_write(state, MB86A16_FAGCS2, 0x1c) < 0)
264 goto err;
265 if (mb86a16_write(state, MB86A16_FAGCS3, 0x20) < 0)
266 goto err;
267 if (mb86a16_write(state, MB86A16_FAGCS4, 0x1e) < 0)
268 goto err;
269 if (mb86a16_write(state, MB86A16_FAGCS5, 0x23) < 0)
270 goto err;
271 if (mb86a16_write(state, 0x54, 0xff) < 0)
272 goto err;
273 if (mb86a16_write(state, MB86A16_TSOUT, 0x00) < 0)
274 goto err;
275
276 return 0;
277
278err:
279 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
280 return -EREMOTEIO;
281}
282
283static int S01T_set(struct mb86a16_state *state,
284 unsigned char s1t,
285 unsigned s0t)
286{
287 if (mb86a16_write(state, 0x33, (s1t << 3) | s0t) < 0)
288 goto err;
289
290 return 0;
291err:
292 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
293 return -EREMOTEIO;
294}
295
296
297static int EN_set(struct mb86a16_state *state,
298 int cren,
299 int afcen)
300{
301 unsigned char val;
302
303 val = 0x7a | (cren << 7) | (afcen << 2);
304 if (mb86a16_write(state, 0x49, val) < 0)
305 goto err;
306
307 return 0;
308err:
309 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
310 return -EREMOTEIO;
311}
312
313static int AFCEXEN_set(struct mb86a16_state *state,
314 int afcexen,
315 int smrt)
316{
317 unsigned char AFCA ;
318
319 if (smrt > 18875)
320 AFCA = 4;
321 else if (smrt > 9375)
322 AFCA = 3;
323 else if (smrt > 2250)
324 AFCA = 2;
325 else
326 AFCA = 1;
327
328 if (mb86a16_write(state, 0x2a, 0x02 | (afcexen << 5) | (AFCA << 2)) < 0)
329 goto err;
330
331 return 0;
332
333err:
334 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
335 return -EREMOTEIO;
336}
337
338static int DAGC_data_set(struct mb86a16_state *state,
339 unsigned char DAGCA,
340 unsigned char DAGCW)
341{
342 if (mb86a16_write(state, 0x2d, (DAGCA << 3) | DAGCW) < 0)
343 goto err;
344
345 return 0;
346
347err:
348 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
349 return -EREMOTEIO;
350}
351
352static void smrt_info_get(struct mb86a16_state *state, int rate)
353{
354 if (rate >= 37501) {
355 state->deci = 0; state->csel = 0; state->rsel = 0;
356 } else if (rate >= 30001) {
357 state->deci = 0; state->csel = 0; state->rsel = 1;
358 } else if (rate >= 26251) {
359 state->deci = 0; state->csel = 1; state->rsel = 0;
360 } else if (rate >= 22501) {
361 state->deci = 0; state->csel = 1; state->rsel = 1;
362 } else if (rate >= 18751) {
363 state->deci = 1; state->csel = 0; state->rsel = 0;
364 } else if (rate >= 15001) {
365 state->deci = 1; state->csel = 0; state->rsel = 1;
366 } else if (rate >= 13126) {
367 state->deci = 1; state->csel = 1; state->rsel = 0;
368 } else if (rate >= 11251) {
369 state->deci = 1; state->csel = 1; state->rsel = 1;
370 } else if (rate >= 9376) {
371 state->deci = 2; state->csel = 0; state->rsel = 0;
372 } else if (rate >= 7501) {
373 state->deci = 2; state->csel = 0; state->rsel = 1;
374 } else if (rate >= 6563) {
375 state->deci = 2; state->csel = 1; state->rsel = 0;
376 } else if (rate >= 5626) {
377 state->deci = 2; state->csel = 1; state->rsel = 1;
378 } else if (rate >= 4688) {
379 state->deci = 3; state->csel = 0; state->rsel = 0;
380 } else if (rate >= 3751) {
381 state->deci = 3; state->csel = 0; state->rsel = 1;
382 } else if (rate >= 3282) {
383 state->deci = 3; state->csel = 1; state->rsel = 0;
384 } else if (rate >= 2814) {
385 state->deci = 3; state->csel = 1; state->rsel = 1;
386 } else if (rate >= 2344) {
387 state->deci = 4; state->csel = 0; state->rsel = 0;
388 } else if (rate >= 1876) {
389 state->deci = 4; state->csel = 0; state->rsel = 1;
390 } else if (rate >= 1641) {
391 state->deci = 4; state->csel = 1; state->rsel = 0;
392 } else if (rate >= 1407) {
393 state->deci = 4; state->csel = 1; state->rsel = 1;
394 } else if (rate >= 1172) {
395 state->deci = 5; state->csel = 0; state->rsel = 0;
396 } else if (rate >= 939) {
397 state->deci = 5; state->csel = 0; state->rsel = 1;
398 } else if (rate >= 821) {
399 state->deci = 5; state->csel = 1; state->rsel = 0;
400 } else {
401 state->deci = 5; state->csel = 1; state->rsel = 1;
402 }
403
404 if (state->csel == 0)
405 state->master_clk = 92000;
406 else
407 state->master_clk = 61333;
408
409}
410
411static int signal_det(struct mb86a16_state *state,
412 int smrt,
413 unsigned char *SIG)
414{
415
416 int ret ;
417 int smrtd ;
418 int wait_sym ;
419
420 u32 wait_t;
421 unsigned char S[3] ;
422 int i ;
423
424 if (*SIG > 45) {
425 if (CNTM_set(state, 2, 1, 2) < 0) {
426 dprintk(verbose, MB86A16_ERROR, 1, "CNTM set Error");
427 return -1;
428 }
429 wait_sym = 40000;
430 } else {
431 if (CNTM_set(state, 3, 1, 2) < 0) {
432 dprintk(verbose, MB86A16_ERROR, 1, "CNTM set Error");
433 return -1;
434 }
435 wait_sym = 80000;
436 }
437 for (i = 0; i < 3; i++) {
438 if (i == 0)
439 smrtd = smrt * 98 / 100;
440 else if (i == 1)
441 smrtd = smrt;
442 else
443 smrtd = smrt * 102 / 100;
444 smrt_info_get(state, smrtd);
445 smrt_set(state, smrtd);
446 srst(state);
447 wait_t = (wait_sym + 99 * smrtd / 100) / smrtd;
448 if (wait_t == 0)
449 wait_t = 1;
450 msleep_interruptible(10);
451 if (mb86a16_read(state, 0x37, &(S[i])) != 2) {
452 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
453 return -EREMOTEIO;
454 }
455 }
456 if ((S[1] > S[0] * 112 / 100) &&
457 (S[1] > S[2] * 112 / 100)) {
458
459 ret = 1;
460 } else {
461 ret = 0;
462 }
463 *SIG = S[1];
464
465 if (CNTM_set(state, 0, 1, 2) < 0) {
466 dprintk(verbose, MB86A16_ERROR, 1, "CNTM set Error");
467 return -1;
468 }
469
470 return ret;
471}
472
473static int rf_val_set(struct mb86a16_state *state,
474 int f,
475 int smrt,
476 unsigned char R)
477{
478 unsigned char C, F, B;
479 int M;
480 unsigned char rf_val[5];
481 int ack = -1;
482
483 if (smrt > 37750)
484 C = 1;
485 else if (smrt > 18875)
486 C = 2;
487 else if (smrt > 5500)
488 C = 3;
489 else
490 C = 4;
491
492 if (smrt > 30500)
493 F = 3;
494 else if (smrt > 9375)
495 F = 1;
496 else if (smrt > 4625)
497 F = 0;
498 else
499 F = 2;
500
501 if (f < 1060)
502 B = 0;
503 else if (f < 1175)
504 B = 1;
505 else if (f < 1305)
506 B = 2;
507 else if (f < 1435)
508 B = 3;
509 else if (f < 1570)
510 B = 4;
511 else if (f < 1715)
512 B = 5;
513 else if (f < 1845)
514 B = 6;
515 else if (f < 1980)
516 B = 7;
517 else if (f < 2080)
518 B = 8;
519 else
520 B = 9;
521
522 M = f * (1 << R) / 2;
523
524 rf_val[0] = 0x01 | (C << 3) | (F << 1);
525 rf_val[1] = (R << 5) | ((M & 0x1f000) >> 12);
526 rf_val[2] = (M & 0x00ff0) >> 4;
527 rf_val[3] = ((M & 0x0000f) << 4) | B;
528
529 /* Frequency Set */
530 if (mb86a16_write(state, 0x21, rf_val[0]) < 0)
531 ack = 0;
532 if (mb86a16_write(state, 0x22, rf_val[1]) < 0)
533 ack = 0;
534 if (mb86a16_write(state, 0x23, rf_val[2]) < 0)
535 ack = 0;
536 if (mb86a16_write(state, 0x24, rf_val[3]) < 0)
537 ack = 0;
538 if (mb86a16_write(state, 0x25, 0x01) < 0)
539 ack = 0;
540 if (ack == 0) {
541 dprintk(verbose, MB86A16_ERROR, 1, "RF Setup - I2C transfer error");
542 return -EREMOTEIO;
543 }
544
545 return 0;
546}
547
548static int afcerr_chk(struct mb86a16_state *state)
549{
550 unsigned char AFCM_L, AFCM_H ;
551 int AFCM ;
552 int afcm, afcerr ;
553
554 if (mb86a16_read(state, 0x0e, &AFCM_L) != 2)
555 goto err;
556 if (mb86a16_read(state, 0x0f, &AFCM_H) != 2)
557 goto err;
558
559 AFCM = (AFCM_H << 8) + AFCM_L;
560
561 if (AFCM > 2048)
562 afcm = AFCM - 4096;
563 else
564 afcm = AFCM;
565 afcerr = afcm * state->master_clk / 8192;
566
567 return afcerr;
568
569err:
570 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
571 return -EREMOTEIO;
572}
573
574static int dagcm_val_get(struct mb86a16_state *state)
575{
576 int DAGCM;
577 unsigned char DAGCM_H, DAGCM_L;
578
579 if (mb86a16_read(state, 0x45, &DAGCM_L) != 2)
580 goto err;
581 if (mb86a16_read(state, 0x46, &DAGCM_H) != 2)
582 goto err;
583
584 DAGCM = (DAGCM_H << 8) + DAGCM_L;
585
586 return DAGCM;
587
588err:
589 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
590 return -EREMOTEIO;
591}
592
593static int mb86a16_read_status(struct dvb_frontend *fe, fe_status_t *status)
594{
595 u8 stat, stat2;
596 struct mb86a16_state *state = fe->demodulator_priv;
597
598 *status = 0;
599
600 if (mb86a16_read(state, MB86A16_SIG1, &stat) != 2)
601 goto err;
602 if (mb86a16_read(state, MB86A16_SIG2, &stat2) != 2)
603 goto err;
604 if ((stat > 25) && (stat2 > 25))
605 *status |= FE_HAS_SIGNAL;
606 if ((stat > 45) && (stat2 > 45))
607 *status |= FE_HAS_CARRIER;
608
609 if (mb86a16_read(state, MB86A16_STATUS, &stat) != 2)
610 goto err;
611
612 if (stat & 0x01)
613 *status |= FE_HAS_SYNC;
614 if (stat & 0x01)
615 *status |= FE_HAS_VITERBI;
616
617 if (mb86a16_read(state, MB86A16_FRAMESYNC, &stat) != 2)
618 goto err;
619
620 if ((stat & 0x0f) && (*status & FE_HAS_VITERBI))
621 *status |= FE_HAS_LOCK;
622
623 return 0;
624
625err:
626 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
627 return -EREMOTEIO;
628}
629
630static int sync_chk(struct mb86a16_state *state,
631 unsigned char *VIRM)
632{
633 unsigned char val;
634 int sync;
635
636 if (mb86a16_read(state, 0x0d, &val) != 2)
637 goto err;
638
639 dprintk(verbose, MB86A16_INFO, 1, "Status = %02x,", val);
640 sync = val & 0x01;
641 *VIRM = (val & 0x1c) >> 2;
642
643 return sync;
644err:
645 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
646 return -EREMOTEIO;
647
648}
649
650static int freqerr_chk(struct mb86a16_state *state,
651 int fTP,
652 int smrt,
653 int unit)
654{
655 unsigned char CRM, AFCML, AFCMH;
656 unsigned char temp1, temp2, temp3;
657 int crm, afcm, AFCM;
658 int crrerr, afcerr; /* kHz */
659 int frqerr; /* MHz */
660 int afcen, afcexen = 0;
661 int R, M, fOSC, fOSC_OFS;
662
663 if (mb86a16_read(state, 0x43, &CRM) != 2)
664 goto err;
665
666 if (CRM > 127)
667 crm = CRM - 256;
668 else
669 crm = CRM;
670
671 crrerr = smrt * crm / 256;
672 if (mb86a16_read(state, 0x49, &temp1) != 2)
673 goto err;
674
675 afcen = (temp1 & 0x04) >> 2;
676 if (afcen == 0) {
677 if (mb86a16_read(state, 0x2a, &temp1) != 2)
678 goto err;
679 afcexen = (temp1 & 0x20) >> 5;
680 }
681
682 if (afcen == 1) {
683 if (mb86a16_read(state, 0x0e, &AFCML) != 2)
684 goto err;
685 if (mb86a16_read(state, 0x0f, &AFCMH) != 2)
686 goto err;
687 } else if (afcexen == 1) {
688 if (mb86a16_read(state, 0x2b, &AFCML) != 2)
689 goto err;
690 if (mb86a16_read(state, 0x2c, &AFCMH) != 2)
691 goto err;
692 }
693 if ((afcen == 1) || (afcexen == 1)) {
694 smrt_info_get(state, smrt);
695 AFCM = ((AFCMH & 0x01) << 8) + AFCML;
696 if (AFCM > 255)
697 afcm = AFCM - 512;
698 else
699 afcm = AFCM;
700
701 afcerr = afcm * state->master_clk / 8192;
702 } else
703 afcerr = 0;
704
705 if (mb86a16_read(state, 0x22, &temp1) != 2)
706 goto err;
707 if (mb86a16_read(state, 0x23, &temp2) != 2)
708 goto err;
709 if (mb86a16_read(state, 0x24, &temp3) != 2)
710 goto err;
711
712 R = (temp1 & 0xe0) >> 5;
713 M = ((temp1 & 0x1f) << 12) + (temp2 << 4) + (temp3 >> 4);
714 if (R == 0)
715 fOSC = 2 * M;
716 else
717 fOSC = M;
718
719 fOSC_OFS = fOSC - fTP;
720
721 if (unit == 0) { /* MHz */
722 if (crrerr + afcerr + fOSC_OFS * 1000 >= 0)
723 frqerr = (crrerr + afcerr + fOSC_OFS * 1000 + 500) / 1000;
724 else
725 frqerr = (crrerr + afcerr + fOSC_OFS * 1000 - 500) / 1000;
726 } else { /* kHz */
727 frqerr = crrerr + afcerr + fOSC_OFS * 1000;
728 }
729
730 return frqerr;
731err:
732 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
733 return -EREMOTEIO;
734}
735
736static unsigned char vco_dev_get(struct mb86a16_state *state, int smrt)
737{
738 unsigned char R;
739
740 if (smrt > 9375)
741 R = 0;
742 else
743 R = 1;
744
745 return R;
746}
747
748static void swp_info_get(struct mb86a16_state *state,
749 int fOSC_start,
750 int smrt,
751 int v, int R,
752 int swp_ofs,
753 int *fOSC,
754 int *afcex_freq,
755 unsigned char *AFCEX_L,
756 unsigned char *AFCEX_H)
757{
758 int AFCEX ;
759 int crnt_swp_freq ;
760
761 crnt_swp_freq = fOSC_start * 1000 + v * swp_ofs;
762
763 if (R == 0)
764 *fOSC = (crnt_swp_freq + 1000) / 2000 * 2;
765 else
766 *fOSC = (crnt_swp_freq + 500) / 1000;
767
768 if (*fOSC >= crnt_swp_freq)
769 *afcex_freq = *fOSC * 1000 - crnt_swp_freq;
770 else
771 *afcex_freq = crnt_swp_freq - *fOSC * 1000;
772
773 AFCEX = *afcex_freq * 8192 / state->master_clk;
774 *AFCEX_L = AFCEX & 0x00ff;
775 *AFCEX_H = (AFCEX & 0x0f00) >> 8;
776}
777
778
779static int swp_freq_calcuation(struct mb86a16_state *state, int i, int v, int *V, int vmax, int vmin,
780 int SIGMIN, int fOSC, int afcex_freq, int swp_ofs, unsigned char *SIG1)
781{
782 int swp_freq ;
783
784 if ((i % 2 == 1) && (v <= vmax)) {
785 /* positive v (case 1) */
786 if ((v - 1 == vmin) &&
787 (*(V + 30 + v) >= 0) &&
788 (*(V + 30 + v - 1) >= 0) &&
789 (*(V + 30 + v - 1) > *(V + 30 + v)) &&
790 (*(V + 30 + v - 1) > SIGMIN)) {
791
792 swp_freq = fOSC * 1000 + afcex_freq - swp_ofs;
793 *SIG1 = *(V + 30 + v - 1);
794 } else if ((v == vmax) &&
795 (*(V + 30 + v) >= 0) &&
796 (*(V + 30 + v - 1) >= 0) &&
797 (*(V + 30 + v) > *(V + 30 + v - 1)) &&
798 (*(V + 30 + v) > SIGMIN)) {
799 /* (case 2) */
800 swp_freq = fOSC * 1000 + afcex_freq;
801 *SIG1 = *(V + 30 + v);
802 } else if ((*(V + 30 + v) > 0) &&
803 (*(V + 30 + v - 1) > 0) &&
804 (*(V + 30 + v - 2) > 0) &&
805 (*(V + 30 + v - 3) > 0) &&
806 (*(V + 30 + v - 1) > *(V + 30 + v)) &&
807 (*(V + 30 + v - 2) > *(V + 30 + v - 3)) &&
808 ((*(V + 30 + v - 1) > SIGMIN) ||
809 (*(V + 30 + v - 2) > SIGMIN))) {
810 /* (case 3) */
811 if (*(V + 30 + v - 1) >= *(V + 30 + v - 2)) {
812 swp_freq = fOSC * 1000 + afcex_freq - swp_ofs;
813 *SIG1 = *(V + 30 + v - 1);
814 } else {
815 swp_freq = fOSC * 1000 + afcex_freq - swp_ofs * 2;
816 *SIG1 = *(V + 30 + v - 2);
817 }
818 } else if ((v == vmax) &&
819 (*(V + 30 + v) >= 0) &&
820 (*(V + 30 + v - 1) >= 0) &&
821 (*(V + 30 + v - 2) >= 0) &&
822 (*(V + 30 + v) > *(V + 30 + v - 2)) &&
823 (*(V + 30 + v - 1) > *(V + 30 + v - 2)) &&
824 ((*(V + 30 + v) > SIGMIN) ||
825 (*(V + 30 + v - 1) > SIGMIN))) {
826 /* (case 4) */
827 if (*(V + 30 + v) >= *(V + 30 + v - 1)) {
828 swp_freq = fOSC * 1000 + afcex_freq;
829 *SIG1 = *(V + 30 + v);
830 } else {
831 swp_freq = fOSC * 1000 + afcex_freq - swp_ofs;
832 *SIG1 = *(V + 30 + v - 1);
833 }
834 } else {
835 swp_freq = -1 ;
836 }
837 } else if ((i % 2 == 0) && (v >= vmin)) {
838 /* Negative v (case 1) */
839 if ((*(V + 30 + v) > 0) &&
840 (*(V + 30 + v + 1) > 0) &&
841 (*(V + 30 + v + 2) > 0) &&
842 (*(V + 30 + v + 1) > *(V + 30 + v)) &&
843 (*(V + 30 + v + 1) > *(V + 30 + v + 2)) &&
844 (*(V + 30 + v + 1) > SIGMIN)) {
845
846 swp_freq = fOSC * 1000 + afcex_freq + swp_ofs;
847 *SIG1 = *(V + 30 + v + 1);
848 } else if ((v + 1 == vmax) &&
849 (*(V + 30 + v) >= 0) &&
850 (*(V + 30 + v + 1) >= 0) &&
851 (*(V + 30 + v + 1) > *(V + 30 + v)) &&
852 (*(V + 30 + v + 1) > SIGMIN)) {
853 /* (case 2) */
854 swp_freq = fOSC * 1000 + afcex_freq + swp_ofs;
855 *SIG1 = *(V + 30 + v);
856 } else if ((v == vmin) &&
857 (*(V + 30 + v) > 0) &&
858 (*(V + 30 + v + 1) > 0) &&
859 (*(V + 30 + v + 2) > 0) &&
860 (*(V + 30 + v) > *(V + 30 + v + 1)) &&
861 (*(V + 30 + v) > *(V + 30 + v + 2)) &&
862 (*(V + 30 + v) > SIGMIN)) {
863 /* (case 3) */
864 swp_freq = fOSC * 1000 + afcex_freq;
865 *SIG1 = *(V + 30 + v);
866 } else if ((*(V + 30 + v) >= 0) &&
867 (*(V + 30 + v + 1) >= 0) &&
868 (*(V + 30 + v + 2) >= 0) &&
869 (*(V + 30 + v + 3) >= 0) &&
870 (*(V + 30 + v + 1) > *(V + 30 + v)) &&
871 (*(V + 30 + v + 2) > *(V + 30 + v + 3)) &&
872 ((*(V + 30 + v + 1) > SIGMIN) ||
873 (*(V + 30 + v + 2) > SIGMIN))) {
874 /* (case 4) */
875 if (*(V + 30 + v + 1) >= *(V + 30 + v + 2)) {
876 swp_freq = fOSC * 1000 + afcex_freq + swp_ofs;
877 *SIG1 = *(V + 30 + v + 1);
878 } else {
879 swp_freq = fOSC * 1000 + afcex_freq + swp_ofs * 2;
880 *SIG1 = *(V + 30 + v + 2);
881 }
882 } else if ((*(V + 30 + v) >= 0) &&
883 (*(V + 30 + v + 1) >= 0) &&
884 (*(V + 30 + v + 2) >= 0) &&
885 (*(V + 30 + v + 3) >= 0) &&
886 (*(V + 30 + v) > *(V + 30 + v + 2)) &&
887 (*(V + 30 + v + 1) > *(V + 30 + v + 2)) &&
888 (*(V + 30 + v) > *(V + 30 + v + 3)) &&
889 (*(V + 30 + v + 1) > *(V + 30 + v + 3)) &&
890 ((*(V + 30 + v) > SIGMIN) ||
891 (*(V + 30 + v + 1) > SIGMIN))) {
892 /* (case 5) */
893 if (*(V + 30 + v) >= *(V + 30 + v + 1)) {
894 swp_freq = fOSC * 1000 + afcex_freq;
895 *SIG1 = *(V + 30 + v);
896 } else {
897 swp_freq = fOSC * 1000 + afcex_freq + swp_ofs;
898 *SIG1 = *(V + 30 + v + 1);
899 }
900 } else if ((v + 2 == vmin) &&
901 (*(V + 30 + v) >= 0) &&
902 (*(V + 30 + v + 1) >= 0) &&
903 (*(V + 30 + v + 2) >= 0) &&
904 (*(V + 30 + v + 1) > *(V + 30 + v)) &&
905 (*(V + 30 + v + 2) > *(V + 30 + v)) &&
906 ((*(V + 30 + v + 1) > SIGMIN) ||
907 (*(V + 30 + v + 2) > SIGMIN))) {
908 /* (case 6) */
909 if (*(V + 30 + v + 1) >= *(V + 30 + v + 2)) {
910 swp_freq = fOSC * 1000 + afcex_freq + swp_ofs;
911 *SIG1 = *(V + 30 + v + 1);
912 } else {
913 swp_freq = fOSC * 1000 + afcex_freq + swp_ofs * 2;
914 *SIG1 = *(V + 30 + v + 2);
915 }
916 } else if ((vmax == 0) && (vmin == 0) && (*(V + 30 + v) > SIGMIN)) {
917 swp_freq = fOSC * 1000;
918 *SIG1 = *(V + 30 + v);
919 } else
920 swp_freq = -1;
921 } else
922 swp_freq = -1;
923
924 return swp_freq;
925}
926
927static void swp_info_get2(struct mb86a16_state *state,
928 int smrt,
929 int R,
930 int swp_freq,
931 int *afcex_freq,
932 int *fOSC,
933 unsigned char *AFCEX_L,
934 unsigned char *AFCEX_H)
935{
936 int AFCEX ;
937
938 if (R == 0)
939 *fOSC = (swp_freq + 1000) / 2000 * 2;
940 else
941 *fOSC = (swp_freq + 500) / 1000;
942
943 if (*fOSC >= swp_freq)
944 *afcex_freq = *fOSC * 1000 - swp_freq;
945 else
946 *afcex_freq = swp_freq - *fOSC * 1000;
947
948 AFCEX = *afcex_freq * 8192 / state->master_clk;
949 *AFCEX_L = AFCEX & 0x00ff;
950 *AFCEX_H = (AFCEX & 0x0f00) >> 8;
951}
952
953static void afcex_info_get(struct mb86a16_state *state,
954 int afcex_freq,
955 unsigned char *AFCEX_L,
956 unsigned char *AFCEX_H)
957{
958 int AFCEX ;
959
960 AFCEX = afcex_freq * 8192 / state->master_clk;
961 *AFCEX_L = AFCEX & 0x00ff;
962 *AFCEX_H = (AFCEX & 0x0f00) >> 8;
963}
964
965static int SEQ_set(struct mb86a16_state *state, unsigned char loop)
966{
967 /* SLOCK0 = 0 */
968 if (mb86a16_write(state, 0x32, 0x02 | (loop << 2)) < 0) {
969 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
970 return -EREMOTEIO;
971 }
972
973 return 0;
974}
975
976static int iq_vt_set(struct mb86a16_state *state, unsigned char IQINV)
977{
978 /* Viterbi Rate, IQ Settings */
979 if (mb86a16_write(state, 0x06, 0xdf | (IQINV << 5)) < 0) {
980 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
981 return -EREMOTEIO;
982 }
983
984 return 0;
985}
986
987static int FEC_srst(struct mb86a16_state *state)
988{
989 if (mb86a16_write(state, MB86A16_RESET, 0x02) < 0) {
990 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
991 return -EREMOTEIO;
992 }
993
994 return 0;
995}
996
997static int S2T_set(struct mb86a16_state *state, unsigned char S2T)
998{
999 if (mb86a16_write(state, 0x34, 0x70 | S2T) < 0) {
1000 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1001 return -EREMOTEIO;
1002 }
1003
1004 return 0;
1005}
1006
1007static int S45T_set(struct mb86a16_state *state, unsigned char S4T, unsigned char S5T)
1008{
1009 if (mb86a16_write(state, 0x35, 0x00 | (S5T << 4) | S4T) < 0) {
1010 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1011 return -EREMOTEIO;
1012 }
1013
1014 return 0;
1015}
1016
1017
1018static int mb86a16_set_fe(struct mb86a16_state *state)
1019{
1020 u8 agcval, cnmval;
1021
1022 int i, j;
1023 int fOSC = 0;
1024 int fOSC_start = 0;
1025 int wait_t;
1026 int fcp;
1027 int swp_ofs;
1028 int V[60];
1029 u8 SIG1MIN;
1030
1031 unsigned char CREN, AFCEN, AFCEXEN;
1032 unsigned char SIG1;
1033 unsigned char TIMINT1, TIMINT2, TIMEXT;
1034 unsigned char S0T, S1T;
1035 unsigned char S2T;
1036/* unsigned char S2T, S3T; */
1037 unsigned char S4T, S5T;
1038 unsigned char AFCEX_L, AFCEX_H;
1039 unsigned char R;
1040 unsigned char VIRM;
1041 unsigned char ETH, VIA;
1042 unsigned char junk;
1043
1044 int loop;
1045 int ftemp;
1046 int v, vmax, vmin;
1047 int vmax_his, vmin_his;
1048 int swp_freq, prev_swp_freq[20];
1049 int prev_freq_num;
1050 int signal_dupl;
1051 int afcex_freq;
1052 int signal;
1053 int afcerr;
1054 int temp_freq, delta_freq;
1055 int dagcm[4];
1056 int smrt_d;
1057/* int freq_err; */
1058 int n;
1059 int ret = -1;
1060 int sync;
1061
1062 dprintk(verbose, MB86A16_INFO, 1, "freq=%d Mhz, symbrt=%d Ksps", state->frequency, state->srate);
1063
1064 fcp = 3000;
1065 swp_ofs = state->srate / 4;
1066
1067 for (i = 0; i < 60; i++)
1068 V[i] = -1;
1069
1070 for (i = 0; i < 20; i++)
1071 prev_swp_freq[i] = 0;
1072
1073 SIG1MIN = 25;
1074
1075 for (n = 0; ((n < 3) && (ret == -1)); n++) {
1076 SEQ_set(state, 0);
1077 iq_vt_set(state, 0);
1078
1079 CREN = 0;
1080 AFCEN = 0;
1081 AFCEXEN = 1;
1082 TIMINT1 = 0;
1083 TIMINT2 = 1;
1084 TIMEXT = 2;
1085 S1T = 0;
1086 S0T = 0;
1087
1088 if (initial_set(state) < 0) {
1089 dprintk(verbose, MB86A16_ERROR, 1, "initial set failed");
1090 return -1;
1091 }
1092 if (DAGC_data_set(state, 3, 2) < 0) {
1093 dprintk(verbose, MB86A16_ERROR, 1, "DAGC data set error");
1094 return -1;
1095 }
1096 if (EN_set(state, CREN, AFCEN) < 0) {
1097 dprintk(verbose, MB86A16_ERROR, 1, "EN set error");
1098 return -1; /* (0, 0) */
1099 }
1100 if (AFCEXEN_set(state, AFCEXEN, state->srate) < 0) {
1101 dprintk(verbose, MB86A16_ERROR, 1, "AFCEXEN set error");
1102 return -1; /* (1, smrt) = (1, symbolrate) */
1103 }
1104 if (CNTM_set(state, TIMINT1, TIMINT2, TIMEXT) < 0) {
1105 dprintk(verbose, MB86A16_ERROR, 1, "CNTM set error");
1106 return -1; /* (0, 1, 2) */
1107 }
1108 if (S01T_set(state, S1T, S0T) < 0) {
1109 dprintk(verbose, MB86A16_ERROR, 1, "S01T set error");
1110 return -1; /* (0, 0) */
1111 }
1112 smrt_info_get(state, state->srate);
1113 if (smrt_set(state, state->srate) < 0) {
1114 dprintk(verbose, MB86A16_ERROR, 1, "smrt info get error");
1115 return -1;
1116 }
1117
1118 R = vco_dev_get(state, state->srate);
1119 if (R == 1)
1120 fOSC_start = state->frequency;
1121
1122 else if (R == 0) {
1123 if (state->frequency % 2 == 0) {
1124 fOSC_start = state->frequency;
1125 } else {
1126 fOSC_start = state->frequency + 1;
1127 if (fOSC_start > 2150)
1128 fOSC_start = state->frequency - 1;
1129 }
1130 }
1131 loop = 1;
1132 ftemp = fOSC_start * 1000;
1133 vmax = 0 ;
1134 while (loop == 1) {
1135 ftemp = ftemp + swp_ofs;
1136 vmax++;
1137
1138 /* Upper bound */
1139 if (ftemp > 2150000) {
1140 loop = 0;
1141 vmax--;
1142 } else {
1143 if ((ftemp == 2150000) ||
1144 (ftemp - state->frequency * 1000 >= fcp + state->srate / 4))
1145 loop = 0;
1146 }
1147 }
1148
1149 loop = 1;
1150 ftemp = fOSC_start * 1000;
1151 vmin = 0 ;
1152 while (loop == 1) {
1153 ftemp = ftemp - swp_ofs;
1154 vmin--;
1155
1156 /* Lower bound */
1157 if (ftemp < 950000) {
1158 loop = 0;
1159 vmin++;
1160 } else {
1161 if ((ftemp == 950000) ||
1162 (state->frequency * 1000 - ftemp >= fcp + state->srate / 4))
1163 loop = 0;
1164 }
1165 }
1166
1167 wait_t = (8000 + state->srate / 2) / state->srate;
1168 if (wait_t == 0)
1169 wait_t = 1;
1170
1171 i = 0;
1172 j = 0;
1173 prev_freq_num = 0;
1174 loop = 1;
1175 signal = 0;
1176 vmax_his = 0;
1177 vmin_his = 0;
1178 v = 0;
1179
1180 while (loop == 1) {
1181 swp_info_get(state, fOSC_start, state->srate,
1182 v, R, swp_ofs, &fOSC,
1183 &afcex_freq, &AFCEX_L, &AFCEX_H);
1184
1185 udelay(100);
1186 if (rf_val_set(state, fOSC, state->srate, R) < 0) {
1187 dprintk(verbose, MB86A16_ERROR, 1, "rf val set error");
1188 return -1;
1189 }
1190 udelay(100);
1191 if (afcex_data_set(state, AFCEX_L, AFCEX_H) < 0) {
1192 dprintk(verbose, MB86A16_ERROR, 1, "afcex data set error");
1193 return -1;
1194 }
1195 if (srst(state) < 0) {
1196 dprintk(verbose, MB86A16_ERROR, 1, "srst error");
1197 return -1;
1198 }
1199 msleep_interruptible(wait_t);
1200
1201 if (mb86a16_read(state, 0x37, &SIG1) != 2) {
1202 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1203 return -1;
1204 }
1205 V[30 + v] = SIG1 ;
1206 swp_freq = swp_freq_calcuation(state, i, v, V, vmax, vmin,
1207 SIG1MIN, fOSC, afcex_freq,
1208 swp_ofs, &SIG1); /* changed */
1209
1210 signal_dupl = 0;
1211 for (j = 0; j < prev_freq_num; j++) {
1212 if ((ABS(prev_swp_freq[j] - swp_freq)) < (swp_ofs * 3 / 2)) {
1213 signal_dupl = 1;
1214 dprintk(verbose, MB86A16_INFO, 1, "Probably Duplicate Signal, j = %d", j);
1215 }
1216 }
1217 if ((signal_dupl == 0) && (swp_freq > 0) && (ABS(swp_freq - state->frequency * 1000) < fcp + state->srate / 6)) {
1218 dprintk(verbose, MB86A16_DEBUG, 1, "------ Signal detect ------ [swp_freq=[%07d, srate=%05d]]", swp_freq, state->srate);
1219 prev_swp_freq[prev_freq_num] = swp_freq;
1220 prev_freq_num++;
1221 swp_info_get2(state, state->srate, R, swp_freq,
1222 &afcex_freq, &fOSC,
1223 &AFCEX_L, &AFCEX_H);
1224
1225 if (rf_val_set(state, fOSC, state->srate, R) < 0) {
1226 dprintk(verbose, MB86A16_ERROR, 1, "rf val set error");
1227 return -1;
1228 }
1229 if (afcex_data_set(state, AFCEX_L, AFCEX_H) < 0) {
1230 dprintk(verbose, MB86A16_ERROR, 1, "afcex data set error");
1231 return -1;
1232 }
1233 signal = signal_det(state, state->srate, &SIG1);
1234 if (signal == 1) {
1235 dprintk(verbose, MB86A16_ERROR, 1, "***** Signal Found *****");
1236 loop = 0;
1237 } else {
1238 dprintk(verbose, MB86A16_ERROR, 1, "!!!!! No signal !!!!!, try again...");
1239 smrt_info_get(state, state->srate);
1240 if (smrt_set(state, state->srate) < 0) {
1241 dprintk(verbose, MB86A16_ERROR, 1, "smrt set error");
1242 return -1;
1243 }
1244 }
1245 }
1246 if (v > vmax)
1247 vmax_his = 1 ;
1248 if (v < vmin)
1249 vmin_his = 1 ;
1250 i++;
1251
1252 if ((i % 2 == 1) && (vmax_his == 1))
1253 i++;
1254 if ((i % 2 == 0) && (vmin_his == 1))
1255 i++;
1256
1257 if (i % 2 == 1)
1258 v = (i + 1) / 2;
1259 else
1260 v = -i / 2;
1261
1262 if ((vmax_his == 1) && (vmin_his == 1))
1263 loop = 0 ;
1264 }
1265
1266 if (signal == 1) {
1267 dprintk(verbose, MB86A16_INFO, 1, " Start Freq Error Check");
1268 S1T = 7 ;
1269 S0T = 1 ;
1270 CREN = 0 ;
1271 AFCEN = 1 ;
1272 AFCEXEN = 0 ;
1273
1274 if (S01T_set(state, S1T, S0T) < 0) {
1275 dprintk(verbose, MB86A16_ERROR, 1, "S01T set error");
1276 return -1;
1277 }
1278 smrt_info_get(state, state->srate);
1279 if (smrt_set(state, state->srate) < 0) {
1280 dprintk(verbose, MB86A16_ERROR, 1, "smrt set error");
1281 return -1;
1282 }
1283 if (EN_set(state, CREN, AFCEN) < 0) {
1284 dprintk(verbose, MB86A16_ERROR, 1, "EN set error");
1285 return -1;
1286 }
1287 if (AFCEXEN_set(state, AFCEXEN, state->srate) < 0) {
1288 dprintk(verbose, MB86A16_ERROR, 1, "AFCEXEN set error");
1289 return -1;
1290 }
1291 afcex_info_get(state, afcex_freq, &AFCEX_L, &AFCEX_H);
1292 if (afcofs_data_set(state, AFCEX_L, AFCEX_H) < 0) {
1293 dprintk(verbose, MB86A16_ERROR, 1, "AFCOFS data set error");
1294 return -1;
1295 }
1296 if (srst(state) < 0) {
1297 dprintk(verbose, MB86A16_ERROR, 1, "srst error");
1298 return -1;
1299 }
1300 /* delay 4~200 */
1301 wait_t = 200000 / state->master_clk + 200000 / state->srate;
1302 msleep(wait_t);
1303 afcerr = afcerr_chk(state);
1304 if (afcerr == -1)
1305 return -1;
1306
1307 swp_freq = fOSC * 1000 + afcerr ;
1308 AFCEXEN = 1 ;
1309 if (state->srate >= 1500)
1310 smrt_d = state->srate / 3;
1311 else
1312 smrt_d = state->srate / 2;
1313 smrt_info_get(state, smrt_d);
1314 if (smrt_set(state, smrt_d) < 0) {
1315 dprintk(verbose, MB86A16_ERROR, 1, "smrt set error");
1316 return -1;
1317 }
1318 if (AFCEXEN_set(state, AFCEXEN, smrt_d) < 0) {
1319 dprintk(verbose, MB86A16_ERROR, 1, "AFCEXEN set error");
1320 return -1;
1321 }
1322 R = vco_dev_get(state, smrt_d);
1323 if (DAGC_data_set(state, 2, 0) < 0) {
1324 dprintk(verbose, MB86A16_ERROR, 1, "DAGC data set error");
1325 return -1;
1326 }
1327 for (i = 0; i < 3; i++) {
1328 temp_freq = swp_freq + (i - 1) * state->srate / 8;
1329 swp_info_get2(state, smrt_d, R, temp_freq, &afcex_freq, &fOSC, &AFCEX_L, &AFCEX_H);
1330 if (rf_val_set(state, fOSC, smrt_d, R) < 0) {
1331 dprintk(verbose, MB86A16_ERROR, 1, "rf val set error");
1332 return -1;
1333 }
1334 if (afcex_data_set(state, AFCEX_L, AFCEX_H) < 0) {
1335 dprintk(verbose, MB86A16_ERROR, 1, "afcex data set error");
1336 return -1;
1337 }
1338 wait_t = 200000 / state->master_clk + 40000 / smrt_d;
1339 msleep(wait_t);
1340 dagcm[i] = dagcm_val_get(state);
1341 }
1342 if ((dagcm[0] > dagcm[1]) &&
1343 (dagcm[0] > dagcm[2]) &&
1344 (dagcm[0] - dagcm[1] > 2 * (dagcm[2] - dagcm[1]))) {
1345
1346 temp_freq = swp_freq - 2 * state->srate / 8;
1347 swp_info_get2(state, smrt_d, R, temp_freq, &afcex_freq, &fOSC, &AFCEX_L, &AFCEX_H);
1348 if (rf_val_set(state, fOSC, smrt_d, R) < 0) {
1349 dprintk(verbose, MB86A16_ERROR, 1, "rf val set error");
1350 return -1;
1351 }
1352 if (afcex_data_set(state, AFCEX_L, AFCEX_H) < 0) {
1353 dprintk(verbose, MB86A16_ERROR, 1, "afcex data set");
1354 return -1;
1355 }
1356 wait_t = 200000 / state->master_clk + 40000 / smrt_d;
1357 msleep(wait_t);
1358 dagcm[3] = dagcm_val_get(state);
1359 if (dagcm[3] > dagcm[1])
1360 delta_freq = (dagcm[2] - dagcm[0] + dagcm[1] - dagcm[3]) * state->srate / 300;
1361 else
1362 delta_freq = 0;
1363 } else if ((dagcm[2] > dagcm[1]) &&
1364 (dagcm[2] > dagcm[0]) &&
1365 (dagcm[2] - dagcm[1] > 2 * (dagcm[0] - dagcm[1]))) {
1366
1367 temp_freq = swp_freq + 2 * state->srate / 8;
1368 swp_info_get2(state, smrt_d, R, temp_freq, &afcex_freq, &fOSC, &AFCEX_L, &AFCEX_H);
1369 if (rf_val_set(state, fOSC, smrt_d, R) < 0) {
1370 dprintk(verbose, MB86A16_ERROR, 1, "rf val set");
1371 return -1;
1372 }
1373 if (afcex_data_set(state, AFCEX_L, AFCEX_H) < 0) {
1374 dprintk(verbose, MB86A16_ERROR, 1, "afcex data set");
1375 return -1;
1376 }
1377 wait_t = 200000 / state->master_clk + 40000 / smrt_d;
1378 msleep(wait_t);
1379 dagcm[3] = dagcm_val_get(state);
1380 if (dagcm[3] > dagcm[1])
1381 delta_freq = (dagcm[2] - dagcm[0] + dagcm[3] - dagcm[1]) * state->srate / 300;
1382 else
1383 delta_freq = 0 ;
1384
1385 } else {
1386 delta_freq = 0 ;
1387 }
1388 dprintk(verbose, MB86A16_INFO, 1, "SWEEP Frequency = %d", swp_freq);
1389 swp_freq += delta_freq;
1390 dprintk(verbose, MB86A16_INFO, 1, "Adjusting .., DELTA Freq = %d, SWEEP Freq=%d", delta_freq, swp_freq);
1391 if (ABS(state->frequency * 1000 - swp_freq) > 3800) {
1392 dprintk(verbose, MB86A16_INFO, 1, "NO -- SIGNAL !");
1393 } else {
1394
1395 S1T = 0;
1396 S0T = 3;
1397 CREN = 1;
1398 AFCEN = 0;
1399 AFCEXEN = 1;
1400
1401 if (S01T_set(state, S1T, S0T) < 0) {
1402 dprintk(verbose, MB86A16_ERROR, 1, "S01T set error");
1403 return -1;
1404 }
1405 if (DAGC_data_set(state, 0, 0) < 0) {
1406 dprintk(verbose, MB86A16_ERROR, 1, "DAGC data set error");
1407 return -1;
1408 }
1409 R = vco_dev_get(state, state->srate);
1410 smrt_info_get(state, state->srate);
1411 if (smrt_set(state, state->srate) < 0) {
1412 dprintk(verbose, MB86A16_ERROR, 1, "smrt set error");
1413 return -1;
1414 }
1415 if (EN_set(state, CREN, AFCEN) < 0) {
1416 dprintk(verbose, MB86A16_ERROR, 1, "EN set error");
1417 return -1;
1418 }
1419 if (AFCEXEN_set(state, AFCEXEN, state->srate) < 0) {
1420 dprintk(verbose, MB86A16_ERROR, 1, "AFCEXEN set error");
1421 return -1;
1422 }
1423 swp_info_get2(state, state->srate, R, swp_freq, &afcex_freq, &fOSC, &AFCEX_L, &AFCEX_H);
1424 if (rf_val_set(state, fOSC, state->srate, R) < 0) {
1425 dprintk(verbose, MB86A16_ERROR, 1, "rf val set error");
1426 return -1;
1427 }
1428 if (afcex_data_set(state, AFCEX_L, AFCEX_H) < 0) {
1429 dprintk(verbose, MB86A16_ERROR, 1, "afcex data set error");
1430 return -1;
1431 }
1432 if (srst(state) < 0) {
1433 dprintk(verbose, MB86A16_ERROR, 1, "srst error");
1434 return -1;
1435 }
1436 wait_t = 7 + (10000 + state->srate / 2) / state->srate;
1437 if (wait_t == 0)
1438 wait_t = 1;
1439 msleep_interruptible(wait_t);
1440 if (mb86a16_read(state, 0x37, &SIG1) != 2) {
1441 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1442 return -EREMOTEIO;
1443 }
1444
1445 if (SIG1 > 110) {
1446 S2T = 4; S4T = 1; S5T = 6; ETH = 4; VIA = 6;
1447 wait_t = 7 + (917504 + state->srate / 2) / state->srate;
1448 } else if (SIG1 > 105) {
1449 S2T = 4; S4T = 2; S5T = 8; ETH = 7; VIA = 2;
1450 wait_t = 7 + (1048576 + state->srate / 2) / state->srate;
1451 } else if (SIG1 > 85) {
1452 S2T = 5; S4T = 2; S5T = 8; ETH = 7; VIA = 2;
1453 wait_t = 7 + (1310720 + state->srate / 2) / state->srate;
1454 } else if (SIG1 > 65) {
1455 S2T = 6; S4T = 2; S5T = 8; ETH = 7; VIA = 2;
1456 wait_t = 7 + (1572864 + state->srate / 2) / state->srate;
1457 } else {
1458 S2T = 7; S4T = 2; S5T = 8; ETH = 7; VIA = 2;
1459 wait_t = 7 + (2097152 + state->srate / 2) / state->srate;
1460 }
1461 wait_t *= 2; /* FOS */
1462 S2T_set(state, S2T);
1463 S45T_set(state, S4T, S5T);
1464 Vi_set(state, ETH, VIA);
1465 srst(state);
1466 msleep_interruptible(wait_t);
1467 sync = sync_chk(state, &VIRM);
1468 dprintk(verbose, MB86A16_INFO, 1, "-------- Viterbi=[%d] SYNC=[%d] ---------", VIRM, sync);
1469 if (VIRM) {
1470 if (VIRM == 4) {
1471 /* 5/6 */
1472 if (SIG1 > 110)
1473 wait_t = (786432 + state->srate / 2) / state->srate;
1474 else
1475 wait_t = (1572864 + state->srate / 2) / state->srate;
1476 if (state->srate < 5000)
1477 /* FIXME ! , should be a long wait ! */
1478 msleep_interruptible(wait_t);
1479 else
1480 msleep_interruptible(wait_t);
1481
1482 if (sync_chk(state, &junk) == 0) {
1483 iq_vt_set(state, 1);
1484 FEC_srst(state);
1485 }
1486 }
1487 /* 1/2, 2/3, 3/4, 7/8 */
1488 if (SIG1 > 110)
1489 wait_t = (786432 + state->srate / 2) / state->srate;
1490 else
1491 wait_t = (1572864 + state->srate / 2) / state->srate;
1492 msleep_interruptible(wait_t);
1493 SEQ_set(state, 1);
1494 } else {
1495 dprintk(verbose, MB86A16_INFO, 1, "NO -- SYNC");
1496 SEQ_set(state, 1);
1497 ret = -1;
1498 }
1499 }
1500 } else {
1501 dprintk(verbose, MB86A16_INFO, 1, "NO -- SIGNAL");
1502 ret = -1;
1503 }
1504
1505 sync = sync_chk(state, &junk);
1506 if (sync) {
1507 dprintk(verbose, MB86A16_INFO, 1, "******* SYNC *******");
1508 freqerr_chk(state, state->frequency, state->srate, 1);
1509 ret = 0;
1510 break;
1511 }
1512 }
1513
1514 mb86a16_read(state, 0x15, &agcval);
1515 mb86a16_read(state, 0x26, &cnmval);
1516 dprintk(verbose, MB86A16_INFO, 1, "AGC = %02x CNM = %02x", agcval, cnmval);
1517
1518 return ret;
1519}
1520
1521static int mb86a16_send_diseqc_msg(struct dvb_frontend *fe,
1522 struct dvb_diseqc_master_cmd *cmd)
1523{
1524 struct mb86a16_state *state = fe->demodulator_priv;
1525 int i;
1526 u8 regs;
1527
1528 if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA) < 0)
1529 goto err;
1530 if (mb86a16_write(state, MB86A16_DCCOUT, 0x00) < 0)
1531 goto err;
1532 if (mb86a16_write(state, MB86A16_TONEOUT2, 0x04) < 0)
1533 goto err;
1534
1535 regs = 0x18;
1536
1537 if (cmd->msg_len > 5 || cmd->msg_len < 4)
1538 return -EINVAL;
1539
1540 for (i = 0; i < cmd->msg_len; i++) {
1541 if (mb86a16_write(state, regs, cmd->msg[i]) < 0)
1542 goto err;
1543
1544 regs++;
1545 }
1546 i += 0x90;
1547
1548 msleep_interruptible(10);
1549
1550 if (mb86a16_write(state, MB86A16_DCC1, i) < 0)
1551 goto err;
1552 if (mb86a16_write(state, MB86A16_DCCOUT, MB86A16_DCCOUT_DISEN) < 0)
1553 goto err;
1554
1555 return 0;
1556
1557err:
1558 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1559 return -EREMOTEIO;
1560}
1561
1562static int mb86a16_send_diseqc_burst(struct dvb_frontend *fe, fe_sec_mini_cmd_t burst)
1563{
1564 struct mb86a16_state *state = fe->demodulator_priv;
1565
1566 switch (burst) {
1567 case SEC_MINI_A:
1568 if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA |
1569 MB86A16_DCC1_TBEN |
1570 MB86A16_DCC1_TBO) < 0)
1571 goto err;
1572 if (mb86a16_write(state, MB86A16_DCCOUT, MB86A16_DCCOUT_DISEN) < 0)
1573 goto err;
1574 break;
1575 case SEC_MINI_B:
1576 if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA |
1577 MB86A16_DCC1_TBEN) < 0)
1578 goto err;
1579 if (mb86a16_write(state, MB86A16_DCCOUT, MB86A16_DCCOUT_DISEN) < 0)
1580 goto err;
1581 break;
1582 }
1583
1584 return 0;
1585err:
1586 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1587 return -EREMOTEIO;
1588}
1589
1590static int mb86a16_set_tone(struct dvb_frontend *fe, fe_sec_tone_mode_t tone)
1591{
1592 struct mb86a16_state *state = fe->demodulator_priv;
1593
1594 switch (tone) {
1595 case SEC_TONE_ON:
1596 if (mb86a16_write(state, MB86A16_TONEOUT2, 0x00) < 0)
1597 goto err;
1598 if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA |
1599 MB86A16_DCC1_CTOE) < 0)
1600
1601 goto err;
1602 if (mb86a16_write(state, MB86A16_DCCOUT, MB86A16_DCCOUT_DISEN) < 0)
1603 goto err;
1604 break;
1605 case SEC_TONE_OFF:
1606 if (mb86a16_write(state, MB86A16_TONEOUT2, 0x04) < 0)
1607 goto err;
1608 if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA) < 0)
1609 goto err;
1610 if (mb86a16_write(state, MB86A16_DCCOUT, 0x00) < 0)
1611 goto err;
1612 break;
1613 default:
1614 return -EINVAL;
1615 }
1616 return 0;
1617
1618err:
1619 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1620 return -EREMOTEIO;
1621}
1622
1623static enum dvbfe_search mb86a16_search(struct dvb_frontend *fe,
1624 struct dvb_frontend_parameters *p)
1625{
1626 struct mb86a16_state *state = fe->demodulator_priv;
1627
1628 state->frequency = p->frequency / 1000;
1629 state->srate = p->u.qpsk.symbol_rate / 1000;
1630
1631 if (!mb86a16_set_fe(state)) {
1632 dprintk(verbose, MB86A16_ERROR, 1, "Succesfully acquired LOCK");
1633 return DVBFE_ALGO_SEARCH_SUCCESS;
1634 }
1635
1636 dprintk(verbose, MB86A16_ERROR, 1, "Lock acquisition failed!");
1637 return DVBFE_ALGO_SEARCH_FAILED;
1638}
1639
1640static void mb86a16_release(struct dvb_frontend *fe)
1641{
1642 struct mb86a16_state *state = fe->demodulator_priv;
1643 kfree(state);
1644}
1645
1646static int mb86a16_init(struct dvb_frontend *fe)
1647{
1648 return 0;
1649}
1650
1651static int mb86a16_sleep(struct dvb_frontend *fe)
1652{
1653 return 0;
1654}
1655
1656static int mb86a16_read_ber(struct dvb_frontend *fe, u32 *ber)
1657{
1658 u8 ber_mon, ber_tab, ber_lsb, ber_mid, ber_msb, ber_tim, ber_rst;
1659 u32 timer;
1660
1661 struct mb86a16_state *state = fe->demodulator_priv;
1662
1663 *ber = 0;
1664 if (mb86a16_read(state, MB86A16_BERMON, &ber_mon) != 2)
1665 goto err;
1666 if (mb86a16_read(state, MB86A16_BERTAB, &ber_tab) != 2)
1667 goto err;
1668 if (mb86a16_read(state, MB86A16_BERLSB, &ber_lsb) != 2)
1669 goto err;
1670 if (mb86a16_read(state, MB86A16_BERMID, &ber_mid) != 2)
1671 goto err;
1672 if (mb86a16_read(state, MB86A16_BERMSB, &ber_msb) != 2)
1673 goto err;
1674 /* BER monitor invalid when BER_EN = 0 */
1675 if (ber_mon & 0x04) {
1676 /* coarse, fast calculation */
1677 *ber = ber_tab & 0x1f;
1678 dprintk(verbose, MB86A16_DEBUG, 1, "BER coarse=[0x%02x]", *ber);
1679 if (ber_mon & 0x01) {
1680 /*
1681 * BER_SEL = 1, The monitored BER is the estimated
1682 * value with a Reed-Solomon decoder error amount at
1683 * the deinterleaver output.
1684 * monitored BER is expressed as a 20 bit output in total
1685 */
1686 ber_rst = ber_mon >> 3;
1687 *ber = (((ber_msb << 8) | ber_mid) << 8) | ber_lsb;
1688 if (ber_rst == 0)
1689 timer = 12500000;
1690 if (ber_rst == 1)
1691 timer = 25000000;
1692 if (ber_rst == 2)
1693 timer = 50000000;
1694 if (ber_rst == 3)
1695 timer = 100000000;
1696
1697 *ber /= timer;
1698 dprintk(verbose, MB86A16_DEBUG, 1, "BER fine=[0x%02x]", *ber);
1699 } else {
1700 /*
1701 * BER_SEL = 0, The monitored BER is the estimated
1702 * value with a Viterbi decoder error amount at the
1703 * QPSK demodulator output.
1704 * monitored BER is expressed as a 24 bit output in total
1705 */
1706 ber_tim = ber_mon >> 1;
1707 *ber = (((ber_msb << 8) | ber_mid) << 8) | ber_lsb;
1708 if (ber_tim == 0)
1709 timer = 16;
1710 if (ber_tim == 1)
1711 timer = 24;
1712
1713 *ber /= 2 ^ timer;
1714 dprintk(verbose, MB86A16_DEBUG, 1, "BER fine=[0x%02x]", *ber);
1715 }
1716 }
1717 return 0;
1718err:
1719 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1720 return -EREMOTEIO;
1721}
1722
1723static int mb86a16_read_signal_strength(struct dvb_frontend *fe, u16 *strength)
1724{
1725 u8 agcm = 0;
1726 struct mb86a16_state *state = fe->demodulator_priv;
1727
1728 *strength = 0;
1729 if (mb86a16_read(state, MB86A16_AGCM, &agcm) != 2) {
1730 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1731 return -EREMOTEIO;
1732 }
1733
1734 *strength = ((0xff - agcm) * 100) / 256;
1735 dprintk(verbose, MB86A16_DEBUG, 1, "Signal strength=[%d %%]", (u8) *strength);
1736 *strength = (0xffff - 0xff) + agcm;
1737
1738 return 0;
1739}
1740
1741struct cnr {
1742 u8 cn_reg;
1743 u8 cn_val;
1744};
1745
1746static const struct cnr cnr_tab[] = {
1747 { 35, 2 },
1748 { 40, 3 },
1749 { 50, 4 },
1750 { 60, 5 },
1751 { 70, 6 },
1752 { 80, 7 },
1753 { 92, 8 },
1754 { 103, 9 },
1755 { 115, 10 },
1756 { 138, 12 },
1757 { 162, 15 },
1758 { 180, 18 },
1759 { 185, 19 },
1760 { 189, 20 },
1761 { 195, 22 },
1762 { 199, 24 },
1763 { 201, 25 },
1764 { 202, 26 },
1765 { 203, 27 },
1766 { 205, 28 },
1767 { 208, 30 }
1768};
1769
1770static int mb86a16_read_snr(struct dvb_frontend *fe, u16 *snr)
1771{
1772 struct mb86a16_state *state = fe->demodulator_priv;
1773 int i = 0;
1774 int low_tide = 2, high_tide = 30, q_level;
1775 u8 cn;
1776
1777 *snr = 0;
1778 if (mb86a16_read(state, 0x26, &cn) != 2) {
1779 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1780 return -EREMOTEIO;
1781 }
1782
1783 for (i = 0; i < ARRAY_SIZE(cnr_tab); i++) {
1784 if (cn < cnr_tab[i].cn_reg) {
1785 *snr = cnr_tab[i].cn_val;
1786 break;
1787 }
1788 }
1789 q_level = (*snr * 100) / (high_tide - low_tide);
1790 dprintk(verbose, MB86A16_ERROR, 1, "SNR (Quality) = [%d dB], Level=%d %%", *snr, q_level);
1791 *snr = (0xffff - 0xff) + *snr;
1792
1793 return 0;
1794}
1795
1796static int mb86a16_read_ucblocks(struct dvb_frontend *fe, u32 *ucblocks)
1797{
1798 u8 dist;
1799 struct mb86a16_state *state = fe->demodulator_priv;
1800
1801 if (mb86a16_read(state, MB86A16_DISTMON, &dist) != 2) {
1802 dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
1803 return -EREMOTEIO;
1804 }
1805 *ucblocks = dist;
1806
1807 return 0;
1808}
1809
1810static enum dvbfe_algo mb86a16_frontend_algo(struct dvb_frontend *fe)
1811{
1812 return DVBFE_ALGO_CUSTOM;
1813}
1814
1815static struct dvb_frontend_ops mb86a16_ops = {
1816 .info = {
1817 .name = "Fujitsu MB86A16 DVB-S",
1818 .type = FE_QPSK,
1819 .frequency_min = 950000,
1820 .frequency_max = 2150000,
1821 .frequency_stepsize = 3000,
1822 .frequency_tolerance = 0,
1823 .symbol_rate_min = 1000000,
1824 .symbol_rate_max = 45000000,
1825 .symbol_rate_tolerance = 500,
1826 .caps = FE_CAN_FEC_1_2 | FE_CAN_FEC_2_3 |
1827 FE_CAN_FEC_3_4 | FE_CAN_FEC_5_6 |
1828 FE_CAN_FEC_7_8 | FE_CAN_QPSK |
1829 FE_CAN_FEC_AUTO
1830 },
1831 .release = mb86a16_release,
1832
1833 .get_frontend_algo = mb86a16_frontend_algo,
1834 .search = mb86a16_search,
1835 .read_status = mb86a16_read_status,
1836 .init = mb86a16_init,
1837 .sleep = mb86a16_sleep,
1838 .read_status = mb86a16_read_status,
1839
1840 .read_ber = mb86a16_read_ber,
1841 .read_signal_strength = mb86a16_read_signal_strength,
1842 .read_snr = mb86a16_read_snr,
1843 .read_ucblocks = mb86a16_read_ucblocks,
1844
1845 .diseqc_send_master_cmd = mb86a16_send_diseqc_msg,
1846 .diseqc_send_burst = mb86a16_send_diseqc_burst,
1847 .set_tone = mb86a16_set_tone,
1848};
1849
1850struct dvb_frontend *mb86a16_attach(const struct mb86a16_config *config,
1851 struct i2c_adapter *i2c_adap)
1852{
1853 u8 dev_id = 0;
1854 struct mb86a16_state *state = NULL;
1855
1856 state = kmalloc(sizeof(struct mb86a16_state), GFP_KERNEL);
1857 if (state == NULL)
1858 goto error;
1859
1860 state->config = config;
1861 state->i2c_adap = i2c_adap;
1862
1863 mb86a16_read(state, 0x7f, &dev_id);
1864 if (dev_id != 0xfe)
1865 goto error;
1866
1867 memcpy(&state->frontend.ops, &mb86a16_ops, sizeof(struct dvb_frontend_ops));
1868 state->frontend.demodulator_priv = state;
1869 state->frontend.ops.set_voltage = state->config->set_voltage;
1870
1871 return &state->frontend;
1872error:
1873 kfree(state);
1874 return NULL;
1875}
1876EXPORT_SYMBOL(mb86a16_attach);
1877MODULE_LICENSE("GPL");
1878MODULE_AUTHOR("Manu Abraham");
diff --git a/drivers/media/dvb/frontends/mb86a16.h b/drivers/media/dvb/frontends/mb86a16.h
new file mode 100644
index 000000000000..6ea8c376394f
--- /dev/null
+++ b/drivers/media/dvb/frontends/mb86a16.h
@@ -0,0 +1,52 @@
1/*
2 Fujitsu MB86A16 DVB-S/DSS DC Receiver driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MB86A16_H
22#define __MB86A16_H
23
24#include <linux/dvb/frontend.h>
25#include "dvb_frontend.h"
26
27
28struct mb86a16_config {
29 u8 demod_address;
30
31 int (*set_voltage)(struct dvb_frontend *fe, fe_sec_voltage_t voltage);
32};
33
34
35
36#if defined(CONFIG_DVB_MB86A16) || (defined(CONFIG_DVB_MB86A16_MODULE) && defined(MODULE))
37
38extern struct dvb_frontend *mb86a16_attach(const struct mb86a16_config *config,
39 struct i2c_adapter *i2c_adap);
40
41#else
42
43static inline struct dvb_frontend *mb86a16_attach(const struct mb86a16_config *config,
44 struct i2c_adapter *i2c_adap)
45{
46 printk(KERN_WARNING "%s: Driver disabled by Kconfig\n", __func__);
47 return NULL;
48}
49
50#endif /* CONFIG_DVB_MB86A16 */
51
52#endif /* __MB86A16_H */
diff --git a/drivers/media/dvb/frontends/mb86a16_priv.h b/drivers/media/dvb/frontends/mb86a16_priv.h
new file mode 100644
index 000000000000..360a35acfe84
--- /dev/null
+++ b/drivers/media/dvb/frontends/mb86a16_priv.h
@@ -0,0 +1,151 @@
1/*
2 Fujitsu MB86A16 DVB-S/DSS DC Receiver driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MB86A16_PRIV_H
22#define __MB86A16_PRIV_H
23
24#define MB86A16_TSOUT 0x00
25#define MB86A16_TSOUT_HIZSEL (0x01 << 5)
26#define MB86A16_TSOUT_HIZCNTI (0x01 << 4)
27#define MB86A16_TSOUT_MODE (0x01 << 3)
28#define MB86A16_TSOUT_ORDER (0x01 << 2)
29#define MB86A16_TSOUT_ERROR (0x01 << 1)
30#define Mb86A16_TSOUT_EDGE (0x01 << 0)
31
32#define MB86A16_FEC 0x01
33#define MB86A16_FEC_FSYNC (0x01 << 5)
34#define MB86A16_FEC_PCKB8 (0x01 << 4)
35#define MB86A16_FEC_DVDS (0x01 << 3)
36#define MB86A16_FEC_EREN (0x01 << 2)
37#define Mb86A16_FEC_RSEN (0x01 << 1)
38#define MB86A16_FEC_DIEN (0x01 << 0)
39
40#define MB86A16_AGC 0x02
41#define MB86A16_AGC_AGMD (0x01 << 6)
42#define MB86A16_AGC_AGCW (0x0f << 2)
43#define MB86A16_AGC_AGCP (0x01 << 1)
44#define MB86A16_AGC_AGCR (0x01 << 0)
45
46#define MB86A16_SRATE1 0x03
47#define MB86A16_SRATE1_DECI (0x07 << 2)
48#define MB86A16_SRATE1_CSEL (0x01 << 1)
49#define MB86A16_SRATE1_RSEL (0x01 << 0)
50
51#define MB86A16_SRATE2 0x04
52#define MB86A16_SRATE2_STOFSL (0xff << 0)
53
54#define MB86A16_SRATE3 0x05
55#define MB86A16_SRATE2_STOFSH (0xff << 0)
56
57#define MB86A16_VITERBI 0x06
58#define MB86A16_FRAMESYNC 0x07
59#define MB86A16_CRLFILTCOEF1 0x08
60#define MB86A16_CRLFILTCOEF2 0x09
61#define MB86A16_STRFILTCOEF1 0x0a
62#define MB86A16_STRFILTCOEF2 0x0b
63#define MB86A16_RESET 0x0c
64#define MB86A16_STATUS 0x0d
65#define MB86A16_AFCML 0x0e
66#define MB86A16_AFCMH 0x0f
67#define MB86A16_BERMON 0x10
68#define MB86A16_BERTAB 0x11
69#define MB86A16_BERLSB 0x12
70#define MB86A16_BERMID 0x13
71#define MB86A16_BERMSB 0x14
72#define MB86A16_AGCM 0x15
73
74#define MB86A16_DCC1 0x16
75#define MB86A16_DCC1_DISTA (0x01 << 7)
76#define MB86A16_DCC1_PRTY (0x01 << 6)
77#define MB86A16_DCC1_CTOE (0x01 << 5)
78#define MB86A16_DCC1_TBEN (0x01 << 4)
79#define MB86A16_DCC1_TBO (0x01 << 3)
80#define MB86A16_DCC1_NUM (0x07 << 0)
81
82#define MB86A16_DCC2 0x17
83#define MB86A16_DCC2_DCBST (0x01 << 0)
84
85#define MB86A16_DCC3 0x18
86#define MB86A16_DCC3_CODE0 (0xff << 0)
87
88#define MB86A16_DCC4 0x19
89#define MB86A16_DCC4_CODE1 (0xff << 0)
90
91#define MB86A16_DCC5 0x1a
92#define MB86A16_DCC5_CODE2 (0xff << 0)
93
94#define MB86A16_DCC6 0x1b
95#define MB86A16_DCC6_CODE3 (0xff << 0)
96
97#define MB86A16_DCC7 0x1c
98#define MB86A16_DCC7_CODE4 (0xff << 0)
99
100#define MB86A16_DCC8 0x1d
101#define MB86A16_DCC8_CODE5 (0xff << 0)
102
103#define MB86A16_DCCOUT 0x1e
104#define MB86A16_DCCOUT_DISEN (0x01 << 0)
105
106#define MB86A16_TONEOUT1 0x1f
107#define MB86A16_TONE_TDIVL (0xff << 0)
108
109#define MB86A16_TONEOUT2 0x20
110#define MB86A16_TONE_TMD (0x03 << 2)
111#define MB86A16_TONE_TDIVH (0x03 << 0)
112
113#define MB86A16_FREQ1 0x21
114#define MB86A16_FREQ2 0x22
115#define MB86A16_FREQ3 0x23
116#define MB86A16_FREQ4 0x24
117#define MB86A16_FREQSET 0x25
118#define MB86A16_CNM 0x26
119#define MB86A16_PORT0 0x27
120#define MB86A16_PORT1 0x28
121#define MB86A16_DRCFILT 0x29
122#define MB86A16_AFC 0x2a
123#define MB86A16_AFCEXL 0x2b
124#define MB86A16_AFCEXH 0x2c
125#define MB86A16_DAGC 0x2d
126#define MB86A16_SEQMODE 0x32
127#define MB86A16_S0S1T 0x33
128#define MB86A16_S2S3T 0x34
129#define MB86A16_S4S5T 0x35
130#define MB86A16_CNTMR 0x36
131#define MB86A16_SIG1 0x37
132#define MB86A16_SIG2 0x38
133#define MB86A16_VIMAG 0x39
134#define MB86A16_VISET1 0x3a
135#define MB86A16_VISET2 0x3b
136#define MB86A16_VISET3 0x3c
137#define MB86A16_FAGCS1 0x3d
138#define MB86A16_FAGCS2 0x3e
139#define MB86A16_FAGCS3 0x3f
140#define MB86A16_FAGCS4 0x40
141#define MB86A16_FAGCS5 0x41
142#define MB86A16_FAGCS6 0x42
143#define MB86A16_CRM 0x43
144#define MB86A16_STRM 0x44
145#define MB86A16_DAGCML 0x45
146#define MB86A16_DAGCMH 0x46
147#define MB86A16_QPSKTST 0x49
148#define MB86A16_DISTMON 0x52
149#define MB86A16_VERSION 0x7f
150
151#endif /* __MB86A16_PRIV_H */
diff --git a/drivers/media/dvb/frontends/tda10021.c b/drivers/media/dvb/frontends/tda10021.c
index 6c1dbf9288d8..6ca533ea0f0e 100644
--- a/drivers/media/dvb/frontends/tda10021.c
+++ b/drivers/media/dvb/frontends/tda10021.c
@@ -426,6 +426,10 @@ struct dvb_frontend* tda10021_attach(const struct tda1002x_config* config,
426 id = tda10021_readreg(state, 0x1a); 426 id = tda10021_readreg(state, 0x1a);
427 if ((id & 0xf0) != 0x70) goto error; 427 if ((id & 0xf0) != 0x70) goto error;
428 428
429 /* Don't claim TDA10023 */
430 if (id == 0x7d)
431 goto error;
432
429 printk("TDA10021: i2c-addr = 0x%02x, id = 0x%02x\n", 433 printk("TDA10021: i2c-addr = 0x%02x, id = 0x%02x\n",
430 state->config->demod_address, id); 434 state->config->demod_address, id);
431 435
diff --git a/drivers/media/dvb/frontends/tda665x.c b/drivers/media/dvb/frontends/tda665x.c
new file mode 100644
index 000000000000..87d52739c828
--- /dev/null
+++ b/drivers/media/dvb/frontends/tda665x.c
@@ -0,0 +1,257 @@
1/*
2 TDA665x tuner driver
3 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18*/
19
20#include <linux/init.h>
21#include <linux/kernel.h>
22#include <linux/module.h>
23
24#include "dvb_frontend.h"
25#include "tda665x.h"
26
27struct tda665x_state {
28 struct dvb_frontend *fe;
29 struct i2c_adapter *i2c;
30 const struct tda665x_config *config;
31
32 u32 frequency;
33 u32 bandwidth;
34};
35
36static int tda665x_read(struct tda665x_state *state, u8 *buf)
37{
38 const struct tda665x_config *config = state->config;
39 int err = 0;
40 struct i2c_msg msg = { .addr = config->addr, .flags = I2C_M_RD, .buf = buf, .len = 2 };
41
42 err = i2c_transfer(state->i2c, &msg, 1);
43 if (err != 1)
44 goto exit;
45
46 return err;
47exit:
48 printk(KERN_ERR "%s: I/O Error err=<%d>\n", __func__, err);
49 return err;
50}
51
52static int tda665x_write(struct tda665x_state *state, u8 *buf, u8 length)
53{
54 const struct tda665x_config *config = state->config;
55 int err = 0;
56 struct i2c_msg msg = { .addr = config->addr, .flags = 0, .buf = buf, .len = length };
57
58 err = i2c_transfer(state->i2c, &msg, 1);
59 if (err != 1)
60 goto exit;
61
62 return err;
63exit:
64 printk(KERN_ERR "%s: I/O Error err=<%d>\n", __func__, err);
65 return err;
66}
67
68static int tda665x_get_state(struct dvb_frontend *fe,
69 enum tuner_param param,
70 struct tuner_state *tstate)
71{
72 struct tda665x_state *state = fe->tuner_priv;
73 int err = 0;
74
75 switch (param) {
76 case DVBFE_TUNER_FREQUENCY:
77 tstate->frequency = state->frequency;
78 break;
79 case DVBFE_TUNER_BANDWIDTH:
80 break;
81 default:
82 printk(KERN_ERR "%s: Unknown parameter (param=%d)\n", __func__, param);
83 err = -EINVAL;
84 break;
85 }
86
87 return err;
88}
89
90static int tda665x_get_status(struct dvb_frontend *fe, u32 *status)
91{
92 struct tda665x_state *state = fe->tuner_priv;
93 u8 result = 0;
94 int err = 0;
95
96 *status = 0;
97
98 err = tda665x_read(state, &result);
99 if (err < 0)
100 goto exit;
101
102 if ((result >> 6) & 0x01) {
103 printk(KERN_DEBUG "%s: Tuner Phase Locked\n", __func__);
104 *status = 1;
105 }
106
107 return err;
108exit:
109 printk(KERN_ERR "%s: I/O Error\n", __func__);
110 return err;
111}
112
113static int tda665x_set_state(struct dvb_frontend *fe,
114 enum tuner_param param,
115 struct tuner_state *tstate)
116{
117 struct tda665x_state *state = fe->tuner_priv;
118 const struct tda665x_config *config = state->config;
119 u32 frequency, status = 0;
120 u8 buf[4];
121 int err = 0;
122
123 if (param & DVBFE_TUNER_FREQUENCY) {
124
125 frequency = tstate->frequency;
126 if ((frequency < config->frequency_max) || (frequency > config->frequency_min)) {
127 printk(KERN_ERR "%s: Frequency beyond limits, frequency=%d\n", __func__, frequency);
128 return -EINVAL;
129 }
130
131 frequency += config->frequency_offst;
132 frequency *= config->ref_multiplier;
133 frequency += config->ref_divider >> 1;
134 frequency /= config->ref_divider;
135
136 buf[0] = (u8) (frequency & 0x7f00) >> 8;
137 buf[1] = (u8) (frequency & 0x00ff) >> 0;
138 buf[2] = 0x80 | 0x40 | 0x02;
139 buf[3] = 0x00;
140
141 /* restore frequency */
142 frequency = tstate->frequency;
143
144 if (frequency < 153000000) {
145 /* VHF-L */
146 buf[3] |= 0x01; /* fc, Low Band, 47 - 153 MHz */
147 if (frequency < 68000000)
148 buf[3] |= 0x40; /* 83uA */
149 if (frequency < 1040000000)
150 buf[3] |= 0x60; /* 122uA */
151 if (frequency < 1250000000)
152 buf[3] |= 0x80; /* 163uA */
153 else
154 buf[3] |= 0xa0; /* 254uA */
155 } else if (frequency < 438000000) {
156 /* VHF-H */
157 buf[3] |= 0x02; /* fc, Mid Band, 153 - 438 MHz */
158 if (frequency < 230000000)
159 buf[3] |= 0x40;
160 if (frequency < 300000000)
161 buf[3] |= 0x60;
162 else
163 buf[3] |= 0x80;
164 } else {
165 /* UHF */
166 buf[3] |= 0x04; /* fc, High Band, 438 - 862 MHz */
167 if (frequency < 470000000)
168 buf[3] |= 0x60;
169 if (frequency < 526000000)
170 buf[3] |= 0x80;
171 else
172 buf[3] |= 0xa0;
173 }
174
175 /* Set params */
176 err = tda665x_write(state, buf, 5);
177 if (err < 0)
178 goto exit;
179
180 /* sleep for some time */
181 printk(KERN_DEBUG "%s: Waiting to Phase LOCK\n", __func__);
182 msleep(20);
183 /* check status */
184 err = tda665x_get_status(fe, &status);
185 if (err < 0)
186 goto exit;
187
188 if (status == 1) {
189 printk(KERN_DEBUG "%s: Tuner Phase locked: status=%d\n", __func__, status);
190 state->frequency = frequency; /* cache successful state */
191 } else {
192 printk(KERN_ERR "%s: No Phase lock: status=%d\n", __func__, status);
193 }
194 } else {
195 printk(KERN_ERR "%s: Unknown parameter (param=%d)\n", __func__, param);
196 return -EINVAL;
197 }
198
199 return 0;
200exit:
201 printk(KERN_ERR "%s: I/O Error\n", __func__);
202 return err;
203}
204
205static int tda665x_release(struct dvb_frontend *fe)
206{
207 struct tda665x_state *state = fe->tuner_priv;
208
209 fe->tuner_priv = NULL;
210 kfree(state);
211 return 0;
212}
213
214static struct dvb_tuner_ops tda665x_ops = {
215
216 .set_state = tda665x_set_state,
217 .get_state = tda665x_get_state,
218 .get_status = tda665x_get_status,
219 .release = tda665x_release
220};
221
222struct dvb_frontend *tda665x_attach(struct dvb_frontend *fe,
223 const struct tda665x_config *config,
224 struct i2c_adapter *i2c)
225{
226 struct tda665x_state *state = NULL;
227 struct dvb_tuner_info *info;
228
229 state = kzalloc(sizeof(struct tda665x_state), GFP_KERNEL);
230 if (state == NULL)
231 goto exit;
232
233 state->config = config;
234 state->i2c = i2c;
235 state->fe = fe;
236 fe->tuner_priv = state;
237 fe->ops.tuner_ops = tda665x_ops;
238 info = &fe->ops.tuner_ops.info;
239
240 memcpy(info->name, config->name, sizeof(config->name));
241 info->frequency_min = config->frequency_min;
242 info->frequency_max = config->frequency_max;
243 info->frequency_step = config->frequency_offst;
244
245 printk(KERN_DEBUG "%s: Attaching TDA665x (%s) tuner\n", __func__, info->name);
246
247 return fe;
248
249exit:
250 kfree(state);
251 return NULL;
252}
253EXPORT_SYMBOL(tda665x_attach);
254
255MODULE_DESCRIPTION("TDA665x driver");
256MODULE_AUTHOR("Manu Abraham");
257MODULE_LICENSE("GPL");
diff --git a/drivers/media/dvb/frontends/tda665x.h b/drivers/media/dvb/frontends/tda665x.h
new file mode 100644
index 000000000000..ec7927aa75ae
--- /dev/null
+++ b/drivers/media/dvb/frontends/tda665x.h
@@ -0,0 +1,52 @@
1/*
2 TDA665x tuner driver
3 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18*/
19
20#ifndef __TDA665x_H
21#define __TDA665x_H
22
23struct tda665x_config {
24 char name[128];
25
26 u8 addr;
27 u32 frequency_min;
28 u32 frequency_max;
29 u32 frequency_offst;
30 u32 ref_multiplier;
31 u32 ref_divider;
32};
33
34#if defined(CONFIG_DVB_TDA665x) || (defined(CONFIG_DVB_TDA665x_MODULE) && defined(MODULE))
35
36extern struct dvb_frontend *tda665x_attach(struct dvb_frontend *fe,
37 const struct tda665x_config *config,
38 struct i2c_adapter *i2c);
39
40#else
41
42static inline struct dvb_frontend *tda665x_attach(struct dvb_frontend *fe,
43 const struct tda665x_config *config,
44 struct i2c_adapter *i2c)
45{
46 printk(KERN_WARNING "%s: Driver disabled by Kconfig\n", __func__);
47 return NULL;
48}
49
50#endif /* CONFIG_DVB_TDA665x */
51
52#endif /* __TDA665x_H */
diff --git a/drivers/media/dvb/mantis/Kconfig b/drivers/media/dvb/mantis/Kconfig
new file mode 100644
index 000000000000..f7b72a32adf3
--- /dev/null
+++ b/drivers/media/dvb/mantis/Kconfig
@@ -0,0 +1,32 @@
1config MANTIS_CORE
2 tristate "Mantis/Hopper PCI bridge based devices"
3 depends on PCI && I2C && INPUT
4
5 help
6 Support for PCI cards based on the Mantis and Hopper PCi bridge.
7
8 Say Y if you own such a device and want to use it.
9
10config DVB_MANTIS
11 tristate "MANTIS based cards"
12 depends on MANTIS_CORE && DVB_CORE && PCI && I2C
13 select DVB_MB86A16
14 select DVB_ZL10353
15 select DVB_STV0299
16 select DVB_PLL
17 help
18 Support for PCI cards based on the Mantis PCI bridge.
19 Say Y when you have a Mantis based DVB card and want to use it.
20
21 If unsure say N.
22
23config DVB_HOPPER
24 tristate "HOPPER based cards"
25 depends on MANTIS_CORE && DVB_CORE && PCI && I2C
26 select DVB_ZL10353
27 select DVB_PLL
28 help
29 Support for PCI cards based on the Hopper PCI bridge.
30 Say Y when you have a Hopper based DVB card and want to use it.
31
32 If unsure say N
diff --git a/drivers/media/dvb/mantis/Makefile b/drivers/media/dvb/mantis/Makefile
new file mode 100644
index 000000000000..98dc5cd258ac
--- /dev/null
+++ b/drivers/media/dvb/mantis/Makefile
@@ -0,0 +1,28 @@
1mantis_core-objs := mantis_ioc.o \
2 mantis_uart.o \
3 mantis_dma.o \
4 mantis_pci.o \
5 mantis_i2c.o \
6 mantis_dvb.o \
7 mantis_evm.o \
8 mantis_hif.o \
9 mantis_ca.o \
10 mantis_pcmcia.o \
11 mantis_input.o
12
13mantis-objs := mantis_cards.o \
14 mantis_vp1033.o \
15 mantis_vp1034.o \
16 mantis_vp1041.o \
17 mantis_vp2033.o \
18 mantis_vp2040.o \
19 mantis_vp3030.o
20
21hopper-objs := hopper_cards.o \
22 hopper_vp3028.o
23
24obj-$(CONFIG_MANTIS_CORE) += mantis_core.o
25obj-$(CONFIG_DVB_MANTIS) += mantis.o
26obj-$(CONFIG_DVB_HOPPER) += hopper.o
27
28EXTRA_CFLAGS = -Idrivers/media/dvb/dvb-core/ -Idrivers/media/dvb/frontends/
diff --git a/drivers/media/dvb/mantis/hopper_cards.c b/drivers/media/dvb/mantis/hopper_cards.c
new file mode 100644
index 000000000000..d073c61e3c0d
--- /dev/null
+++ b/drivers/media/dvb/mantis/hopper_cards.c
@@ -0,0 +1,275 @@
1/*
2 Hopper PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/module.h>
22#include <linux/moduleparam.h>
23#include <linux/kernel.h>
24#include <linux/pci.h>
25#include <asm/irq.h>
26#include <linux/interrupt.h>
27
28#include "dmxdev.h"
29#include "dvbdev.h"
30#include "dvb_demux.h"
31#include "dvb_frontend.h"
32#include "dvb_net.h"
33
34#include "mantis_common.h"
35#include "hopper_vp3028.h"
36#include "mantis_dma.h"
37#include "mantis_dvb.h"
38#include "mantis_uart.h"
39#include "mantis_ioc.h"
40#include "mantis_pci.h"
41#include "mantis_i2c.h"
42#include "mantis_reg.h"
43
44static unsigned int verbose;
45module_param(verbose, int, 0644);
46MODULE_PARM_DESC(verbose, "verbose startup messages, default is 1 (yes)");
47
48#define DRIVER_NAME "Hopper"
49
50static char *label[10] = {
51 "DMA",
52 "IRQ-0",
53 "IRQ-1",
54 "OCERR",
55 "PABRT",
56 "RIPRR",
57 "PPERR",
58 "FTRGT",
59 "RISCI",
60 "RACK"
61};
62
63static int devs;
64
65static irqreturn_t hopper_irq_handler(int irq, void *dev_id)
66{
67 u32 stat = 0, mask = 0, lstat = 0, mstat = 0;
68 u32 rst_stat = 0, rst_mask = 0;
69
70 struct mantis_pci *mantis;
71 struct mantis_ca *ca;
72
73 mantis = (struct mantis_pci *) dev_id;
74 if (unlikely(mantis == NULL)) {
75 dprintk(MANTIS_ERROR, 1, "Mantis == NULL");
76 return IRQ_NONE;
77 }
78 ca = mantis->mantis_ca;
79
80 stat = mmread(MANTIS_INT_STAT);
81 mask = mmread(MANTIS_INT_MASK);
82 mstat = lstat = stat & ~MANTIS_INT_RISCSTAT;
83 if (!(stat & mask))
84 return IRQ_NONE;
85
86 rst_mask = MANTIS_GPIF_WRACK |
87 MANTIS_GPIF_OTHERR |
88 MANTIS_SBUF_WSTO |
89 MANTIS_GPIF_EXTIRQ;
90
91 rst_stat = mmread(MANTIS_GPIF_STATUS);
92 rst_stat &= rst_mask;
93 mmwrite(rst_stat, MANTIS_GPIF_STATUS);
94
95 mantis->mantis_int_stat = stat;
96 mantis->mantis_int_mask = mask;
97 dprintk(MANTIS_DEBUG, 0, "\n-- Stat=<%02x> Mask=<%02x> --", stat, mask);
98 if (stat & MANTIS_INT_RISCEN) {
99 dprintk(MANTIS_DEBUG, 0, "<%s>", label[0]);
100 }
101 if (stat & MANTIS_INT_IRQ0) {
102 dprintk(MANTIS_DEBUG, 0, "<%s>", label[1]);
103 mantis->gpif_status = rst_stat;
104 wake_up(&ca->hif_write_wq);
105 schedule_work(&ca->hif_evm_work);
106 }
107 if (stat & MANTIS_INT_IRQ1) {
108 dprintk(MANTIS_DEBUG, 0, "<%s>", label[2]);
109 schedule_work(&mantis->uart_work);
110 }
111 if (stat & MANTIS_INT_OCERR) {
112 dprintk(MANTIS_DEBUG, 0, "<%s>", label[3]);
113 }
114 if (stat & MANTIS_INT_PABORT) {
115 dprintk(MANTIS_DEBUG, 0, "<%s>", label[4]);
116 }
117 if (stat & MANTIS_INT_RIPERR) {
118 dprintk(MANTIS_DEBUG, 0, "<%s>", label[5]);
119 }
120 if (stat & MANTIS_INT_PPERR) {
121 dprintk(MANTIS_DEBUG, 0, "<%s>", label[6]);
122 }
123 if (stat & MANTIS_INT_FTRGT) {
124 dprintk(MANTIS_DEBUG, 0, "<%s>", label[7]);
125 }
126 if (stat & MANTIS_INT_RISCI) {
127 dprintk(MANTIS_DEBUG, 0, "<%s>", label[8]);
128 mantis->finished_block = (stat & MANTIS_INT_RISCSTAT) >> 28;
129 tasklet_schedule(&mantis->tasklet);
130 }
131 if (stat & MANTIS_INT_I2CDONE) {
132 dprintk(MANTIS_DEBUG, 0, "<%s>", label[9]);
133 wake_up(&mantis->i2c_wq);
134 }
135 mmwrite(stat, MANTIS_INT_STAT);
136 stat &= ~(MANTIS_INT_RISCEN | MANTIS_INT_I2CDONE |
137 MANTIS_INT_I2CRACK | MANTIS_INT_PCMCIA7 |
138 MANTIS_INT_PCMCIA6 | MANTIS_INT_PCMCIA5 |
139 MANTIS_INT_PCMCIA4 | MANTIS_INT_PCMCIA3 |
140 MANTIS_INT_PCMCIA2 | MANTIS_INT_PCMCIA1 |
141 MANTIS_INT_PCMCIA0 | MANTIS_INT_IRQ1 |
142 MANTIS_INT_IRQ0 | MANTIS_INT_OCERR |
143 MANTIS_INT_PABORT | MANTIS_INT_RIPERR |
144 MANTIS_INT_PPERR | MANTIS_INT_FTRGT |
145 MANTIS_INT_RISCI);
146
147 if (stat)
148 dprintk(MANTIS_DEBUG, 0, "<Unknown> Stat=<%02x> Mask=<%02x>", stat, mask);
149
150 dprintk(MANTIS_DEBUG, 0, "\n");
151 return IRQ_HANDLED;
152}
153
154static int __devinit hopper_pci_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)
155{
156 struct mantis_pci *mantis;
157 struct mantis_hwconfig *config;
158 int err = 0;
159
160 mantis = kzalloc(sizeof(struct mantis_pci), GFP_KERNEL);
161 if (mantis == NULL) {
162 printk(KERN_ERR "%s ERROR: Out of memory\n", __func__);
163 err = -ENOMEM;
164 goto fail0;
165 }
166
167 mantis->num = devs;
168 mantis->verbose = verbose;
169 mantis->pdev = pdev;
170 config = (struct mantis_hwconfig *) pci_id->driver_data;
171 config->irq_handler = &hopper_irq_handler;
172 mantis->hwconfig = config;
173
174 err = mantis_pci_init(mantis);
175 if (err) {
176 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis PCI initialization failed <%d>", err);
177 goto fail1;
178 }
179
180 err = mantis_stream_control(mantis, STREAM_TO_HIF);
181 if (err < 0) {
182 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis stream control failed <%d>", err);
183 goto fail1;
184 }
185
186 err = mantis_i2c_init(mantis);
187 if (err < 0) {
188 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis I2C initialization failed <%d>", err);
189 goto fail2;
190 }
191
192 err = mantis_get_mac(mantis);
193 if (err < 0) {
194 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis MAC address read failed <%d>", err);
195 goto fail2;
196 }
197
198 err = mantis_dma_init(mantis);
199 if (err < 0) {
200 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis DMA initialization failed <%d>", err);
201 goto fail3;
202 }
203
204 err = mantis_dvb_init(mantis);
205 if (err < 0) {
206 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis DVB initialization failed <%d>", err);
207 goto fail4;
208 }
209 devs++;
210
211 return err;
212
213fail4:
214 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis DMA exit! <%d>", err);
215 mantis_dma_exit(mantis);
216
217fail3:
218 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis I2C exit! <%d>", err);
219 mantis_i2c_exit(mantis);
220
221fail2:
222 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis PCI exit! <%d>", err);
223 mantis_pci_exit(mantis);
224
225fail1:
226 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis free! <%d>", err);
227 kfree(mantis);
228
229fail0:
230 return err;
231}
232
233static void __devexit hopper_pci_remove(struct pci_dev *pdev)
234{
235 struct mantis_pci *mantis = pci_get_drvdata(pdev);
236
237 if (mantis) {
238 mantis_dvb_exit(mantis);
239 mantis_dma_exit(mantis);
240 mantis_i2c_exit(mantis);
241 mantis_pci_exit(mantis);
242 kfree(mantis);
243 }
244 return;
245
246}
247
248static struct pci_device_id hopper_pci_table[] = {
249 MAKE_ENTRY(TWINHAN_TECHNOLOGIES, MANTIS_VP_3028_DVB_T, &vp3028_config),
250 { }
251};
252
253static struct pci_driver hopper_pci_driver = {
254 .name = DRIVER_NAME,
255 .id_table = hopper_pci_table,
256 .probe = hopper_pci_probe,
257 .remove = hopper_pci_remove,
258};
259
260static int __devinit hopper_init(void)
261{
262 return pci_register_driver(&hopper_pci_driver);
263}
264
265static void __devexit hopper_exit(void)
266{
267 return pci_unregister_driver(&hopper_pci_driver);
268}
269
270module_init(hopper_init);
271module_exit(hopper_exit);
272
273MODULE_DESCRIPTION("HOPPER driver");
274MODULE_AUTHOR("Manu Abraham");
275MODULE_LICENSE("GPL");
diff --git a/drivers/media/dvb/mantis/hopper_vp3028.c b/drivers/media/dvb/mantis/hopper_vp3028.c
new file mode 100644
index 000000000000..96674c78e86b
--- /dev/null
+++ b/drivers/media/dvb/mantis/hopper_vp3028.c
@@ -0,0 +1,88 @@
1/*
2 Hopper VP-3028 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/signal.h>
22#include <linux/sched.h>
23#include <linux/interrupt.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "zl10353.h"
32#include "mantis_common.h"
33#include "mantis_ioc.h"
34#include "mantis_dvb.h"
35#include "hopper_vp3028.h"
36
37struct zl10353_config hopper_vp3028_config = {
38 .demod_address = 0x0f,
39};
40
41#define MANTIS_MODEL_NAME "VP-3028"
42#define MANTIS_DEV_TYPE "DVB-T"
43
44static int vp3028_frontend_init(struct mantis_pci *mantis, struct dvb_frontend *fe)
45{
46 struct i2c_adapter *adapter = &mantis->adapter;
47 struct mantis_hwconfig *config = mantis->hwconfig;
48 int err = 0;
49
50 gpio_set_bits(mantis, config->reset, 0);
51 msleep(100);
52 err = mantis_frontend_power(mantis, POWER_ON);
53 msleep(100);
54 gpio_set_bits(mantis, config->reset, 1);
55
56 err = mantis_frontend_power(mantis, POWER_ON);
57 if (err == 0) {
58 msleep(250);
59 dprintk(MANTIS_ERROR, 1, "Probing for 10353 (DVB-T)");
60 fe = zl10353_attach(&hopper_vp3028_config, adapter);
61
62 if (!fe)
63 return -1;
64 } else {
65 dprintk(MANTIS_ERROR, 1, "Frontend on <%s> POWER ON failed! <%d>",
66 adapter->name,
67 err);
68
69 return -EIO;
70 }
71 dprintk(MANTIS_ERROR, 1, "Done!");
72
73 return 0;
74}
75
76struct mantis_hwconfig vp3028_config = {
77 .model_name = MANTIS_MODEL_NAME,
78 .dev_type = MANTIS_DEV_TYPE,
79 .ts_size = MANTIS_TS_188,
80
81 .baud_rate = MANTIS_BAUD_9600,
82 .parity = MANTIS_PARITY_NONE,
83 .bytes = 0,
84
85 .frontend_init = vp3028_frontend_init,
86 .power = GPIF_A00,
87 .reset = GPIF_A03,
88};
diff --git a/drivers/media/dvb/mantis/hopper_vp3028.h b/drivers/media/dvb/mantis/hopper_vp3028.h
new file mode 100644
index 000000000000..57239498bc87
--- /dev/null
+++ b/drivers/media/dvb/mantis/hopper_vp3028.h
@@ -0,0 +1,30 @@
1/*
2 Hopper VP-3028 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_VP3028_H
22#define __MANTIS_VP3028_H
23
24#include "mantis_common.h"
25
26#define MANTIS_VP_3028_DVB_T 0x0028
27
28extern struct mantis_hwconfig vp3028_config;
29
30#endif /* __MANTIS_VP3028_H */
diff --git a/drivers/media/dvb/mantis/mantis_ca.c b/drivers/media/dvb/mantis/mantis_ca.c
new file mode 100644
index 000000000000..403ce043d00e
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_ca.c
@@ -0,0 +1,207 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/signal.h>
22#include <linux/sched.h>
23#include <linux/interrupt.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "mantis_common.h"
32#include "mantis_link.h"
33#include "mantis_hif.h"
34#include "mantis_reg.h"
35
36#include "mantis_ca.h"
37
38static int mantis_ca_read_attr_mem(struct dvb_ca_en50221 *en50221, int slot, int addr)
39{
40 struct mantis_ca *ca = en50221->data;
41 struct mantis_pci *mantis = ca->ca_priv;
42
43 dprintk(MANTIS_DEBUG, 1, "Slot(%d): Request Attribute Mem Read", slot);
44
45 if (slot != 0)
46 return -EINVAL;
47
48 return mantis_hif_read_mem(ca, addr);
49}
50
51static int mantis_ca_write_attr_mem(struct dvb_ca_en50221 *en50221, int slot, int addr, u8 data)
52{
53 struct mantis_ca *ca = en50221->data;
54 struct mantis_pci *mantis = ca->ca_priv;
55
56 dprintk(MANTIS_DEBUG, 1, "Slot(%d): Request Attribute Mem Write", slot);
57
58 if (slot != 0)
59 return -EINVAL;
60
61 return mantis_hif_write_mem(ca, addr, data);
62}
63
64static int mantis_ca_read_cam_ctl(struct dvb_ca_en50221 *en50221, int slot, u8 addr)
65{
66 struct mantis_ca *ca = en50221->data;
67 struct mantis_pci *mantis = ca->ca_priv;
68
69 dprintk(MANTIS_DEBUG, 1, "Slot(%d): Request CAM control Read", slot);
70
71 if (slot != 0)
72 return -EINVAL;
73
74 return mantis_hif_read_iom(ca, addr);
75}
76
77static int mantis_ca_write_cam_ctl(struct dvb_ca_en50221 *en50221, int slot, u8 addr, u8 data)
78{
79 struct mantis_ca *ca = en50221->data;
80 struct mantis_pci *mantis = ca->ca_priv;
81
82 dprintk(MANTIS_DEBUG, 1, "Slot(%d): Request CAM control Write", slot);
83
84 if (slot != 0)
85 return -EINVAL;
86
87 return mantis_hif_write_iom(ca, addr, data);
88}
89
90static int mantis_ca_slot_reset(struct dvb_ca_en50221 *en50221, int slot)
91{
92 struct mantis_ca *ca = en50221->data;
93 struct mantis_pci *mantis = ca->ca_priv;
94
95 dprintk(MANTIS_DEBUG, 1, "Slot(%d): Slot RESET", slot);
96 udelay(500); /* Wait.. */
97 mmwrite(0xda, MANTIS_PCMCIA_RESET); /* Leading edge assert */
98 udelay(500);
99 mmwrite(0x00, MANTIS_PCMCIA_RESET); /* Trailing edge deassert */
100 msleep(1000);
101 dvb_ca_en50221_camready_irq(&ca->en50221, 0);
102
103 return 0;
104}
105
106static int mantis_ca_slot_shutdown(struct dvb_ca_en50221 *en50221, int slot)
107{
108 struct mantis_ca *ca = en50221->data;
109 struct mantis_pci *mantis = ca->ca_priv;
110
111 dprintk(MANTIS_DEBUG, 1, "Slot(%d): Slot shutdown", slot);
112
113 return 0;
114}
115
116static int mantis_ts_control(struct dvb_ca_en50221 *en50221, int slot)
117{
118 struct mantis_ca *ca = en50221->data;
119 struct mantis_pci *mantis = ca->ca_priv;
120
121 dprintk(MANTIS_DEBUG, 1, "Slot(%d): TS control", slot);
122/* mantis_set_direction(mantis, 1); */ /* Enable TS through CAM */
123
124 return 0;
125}
126
127static int mantis_slot_status(struct dvb_ca_en50221 *en50221, int slot, int open)
128{
129 struct mantis_ca *ca = en50221->data;
130 struct mantis_pci *mantis = ca->ca_priv;
131
132 dprintk(MANTIS_DEBUG, 1, "Slot(%d): Poll Slot status", slot);
133
134 if (ca->slot_state == MODULE_INSERTED) {
135 dprintk(MANTIS_DEBUG, 1, "CA Module present and ready");
136 return DVB_CA_EN50221_POLL_CAM_PRESENT | DVB_CA_EN50221_POLL_CAM_READY;
137 } else {
138 dprintk(MANTIS_DEBUG, 1, "CA Module not present or not ready");
139 }
140
141 return 0;
142}
143
144int mantis_ca_init(struct mantis_pci *mantis)
145{
146 struct dvb_adapter *dvb_adapter = &mantis->dvb_adapter;
147 struct mantis_ca *ca;
148 int ca_flags = 0, result;
149
150 dprintk(MANTIS_DEBUG, 1, "Initializing Mantis CA");
151 ca = kzalloc(sizeof(struct mantis_ca), GFP_KERNEL);
152 if (!ca) {
153 dprintk(MANTIS_ERROR, 1, "Out of memory!, exiting ..");
154 result = -ENOMEM;
155 goto err;
156 }
157
158 ca->ca_priv = mantis;
159 mantis->mantis_ca = ca;
160 ca_flags = DVB_CA_EN50221_FLAG_IRQ_CAMCHANGE;
161 /* register CA interface */
162 ca->en50221.owner = THIS_MODULE;
163 ca->en50221.read_attribute_mem = mantis_ca_read_attr_mem;
164 ca->en50221.write_attribute_mem = mantis_ca_write_attr_mem;
165 ca->en50221.read_cam_control = mantis_ca_read_cam_ctl;
166 ca->en50221.write_cam_control = mantis_ca_write_cam_ctl;
167 ca->en50221.slot_reset = mantis_ca_slot_reset;
168 ca->en50221.slot_shutdown = mantis_ca_slot_shutdown;
169 ca->en50221.slot_ts_enable = mantis_ts_control;
170 ca->en50221.poll_slot_status = mantis_slot_status;
171 ca->en50221.data = ca;
172
173 mutex_init(&ca->ca_lock);
174
175 init_waitqueue_head(&ca->hif_data_wq);
176 init_waitqueue_head(&ca->hif_opdone_wq);
177 init_waitqueue_head(&ca->hif_write_wq);
178
179 dprintk(MANTIS_ERROR, 1, "Registering EN50221 device");
180 result = dvb_ca_en50221_init(dvb_adapter, &ca->en50221, ca_flags, 1);
181 if (result != 0) {
182 dprintk(MANTIS_ERROR, 1, "EN50221: Initialization failed <%d>", result);
183 goto err;
184 }
185 dprintk(MANTIS_ERROR, 1, "Registered EN50221 device");
186 mantis_evmgr_init(ca);
187 return 0;
188err:
189 kfree(ca);
190 return result;
191}
192EXPORT_SYMBOL_GPL(mantis_ca_init);
193
194void mantis_ca_exit(struct mantis_pci *mantis)
195{
196 struct mantis_ca *ca = mantis->mantis_ca;
197
198 dprintk(MANTIS_DEBUG, 1, "Mantis CA exit");
199
200 mantis_evmgr_exit(ca);
201 dprintk(MANTIS_ERROR, 1, "Unregistering EN50221 device");
202 if (ca)
203 dvb_ca_en50221_release(&ca->en50221);
204
205 kfree(ca);
206}
207EXPORT_SYMBOL_GPL(mantis_ca_exit);
diff --git a/drivers/media/dvb/mantis/mantis_ca.h b/drivers/media/dvb/mantis/mantis_ca.h
new file mode 100644
index 000000000000..dc63e55f7eca
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_ca.h
@@ -0,0 +1,27 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_CA_H
22#define __MANTIS_CA_H
23
24extern int mantis_ca_init(struct mantis_pci *mantis);
25extern void mantis_ca_exit(struct mantis_pci *mantis);
26
27#endif /* __MANTIS_CA_H */
diff --git a/drivers/media/dvb/mantis/mantis_cards.c b/drivers/media/dvb/mantis/mantis_cards.c
new file mode 100644
index 000000000000..16f1708fd3bc
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_cards.c
@@ -0,0 +1,305 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/module.h>
22#include <linux/moduleparam.h>
23#include <linux/kernel.h>
24#include <linux/pci.h>
25#include <asm/irq.h>
26#include <linux/interrupt.h>
27
28#include "dmxdev.h"
29#include "dvbdev.h"
30#include "dvb_demux.h"
31#include "dvb_frontend.h"
32#include "dvb_net.h"
33
34#include "mantis_common.h"
35
36#include "mantis_vp1033.h"
37#include "mantis_vp1034.h"
38#include "mantis_vp1041.h"
39#include "mantis_vp2033.h"
40#include "mantis_vp2040.h"
41#include "mantis_vp3030.h"
42
43#include "mantis_dma.h"
44#include "mantis_ca.h"
45#include "mantis_dvb.h"
46#include "mantis_uart.h"
47#include "mantis_ioc.h"
48#include "mantis_pci.h"
49#include "mantis_i2c.h"
50#include "mantis_reg.h"
51
52static unsigned int verbose;
53module_param(verbose, int, 0644);
54MODULE_PARM_DESC(verbose, "verbose startup messages, default is 1 (yes)");
55
56static int devs;
57
58#define DRIVER_NAME "Mantis"
59
60static char *label[10] = {
61 "DMA",
62 "IRQ-0",
63 "IRQ-1",
64 "OCERR",
65 "PABRT",
66 "RIPRR",
67 "PPERR",
68 "FTRGT",
69 "RISCI",
70 "RACK"
71};
72
73static irqreturn_t mantis_irq_handler(int irq, void *dev_id)
74{
75 u32 stat = 0, mask = 0, lstat = 0, mstat = 0;
76 u32 rst_stat = 0, rst_mask = 0;
77
78 struct mantis_pci *mantis;
79 struct mantis_ca *ca;
80
81 mantis = (struct mantis_pci *) dev_id;
82 if (unlikely(mantis == NULL)) {
83 dprintk(MANTIS_ERROR, 1, "Mantis == NULL");
84 return IRQ_NONE;
85 }
86 ca = mantis->mantis_ca;
87
88 stat = mmread(MANTIS_INT_STAT);
89 mask = mmread(MANTIS_INT_MASK);
90 mstat = lstat = stat & ~MANTIS_INT_RISCSTAT;
91 if (!(stat & mask))
92 return IRQ_NONE;
93
94 rst_mask = MANTIS_GPIF_WRACK |
95 MANTIS_GPIF_OTHERR |
96 MANTIS_SBUF_WSTO |
97 MANTIS_GPIF_EXTIRQ;
98
99 rst_stat = mmread(MANTIS_GPIF_STATUS);
100 rst_stat &= rst_mask;
101 mmwrite(rst_stat, MANTIS_GPIF_STATUS);
102
103 mantis->mantis_int_stat = stat;
104 mantis->mantis_int_mask = mask;
105 dprintk(MANTIS_DEBUG, 0, "\n-- Stat=<%02x> Mask=<%02x> --", stat, mask);
106 if (stat & MANTIS_INT_RISCEN) {
107 dprintk(MANTIS_DEBUG, 0, "<%s>", label[0]);
108 }
109 if (stat & MANTIS_INT_IRQ0) {
110 dprintk(MANTIS_DEBUG, 0, "<%s>", label[1]);
111 mantis->gpif_status = rst_stat;
112 wake_up(&ca->hif_write_wq);
113 schedule_work(&ca->hif_evm_work);
114 }
115 if (stat & MANTIS_INT_IRQ1) {
116 dprintk(MANTIS_DEBUG, 0, "<%s>", label[2]);
117 schedule_work(&mantis->uart_work);
118 }
119 if (stat & MANTIS_INT_OCERR) {
120 dprintk(MANTIS_DEBUG, 0, "<%s>", label[3]);
121 }
122 if (stat & MANTIS_INT_PABORT) {
123 dprintk(MANTIS_DEBUG, 0, "<%s>", label[4]);
124 }
125 if (stat & MANTIS_INT_RIPERR) {
126 dprintk(MANTIS_DEBUG, 0, "<%s>", label[5]);
127 }
128 if (stat & MANTIS_INT_PPERR) {
129 dprintk(MANTIS_DEBUG, 0, "<%s>", label[6]);
130 }
131 if (stat & MANTIS_INT_FTRGT) {
132 dprintk(MANTIS_DEBUG, 0, "<%s>", label[7]);
133 }
134 if (stat & MANTIS_INT_RISCI) {
135 dprintk(MANTIS_DEBUG, 0, "<%s>", label[8]);
136 mantis->finished_block = (stat & MANTIS_INT_RISCSTAT) >> 28;
137 tasklet_schedule(&mantis->tasklet);
138 }
139 if (stat & MANTIS_INT_I2CDONE) {
140 dprintk(MANTIS_DEBUG, 0, "<%s>", label[9]);
141 wake_up(&mantis->i2c_wq);
142 }
143 mmwrite(stat, MANTIS_INT_STAT);
144 stat &= ~(MANTIS_INT_RISCEN | MANTIS_INT_I2CDONE |
145 MANTIS_INT_I2CRACK | MANTIS_INT_PCMCIA7 |
146 MANTIS_INT_PCMCIA6 | MANTIS_INT_PCMCIA5 |
147 MANTIS_INT_PCMCIA4 | MANTIS_INT_PCMCIA3 |
148 MANTIS_INT_PCMCIA2 | MANTIS_INT_PCMCIA1 |
149 MANTIS_INT_PCMCIA0 | MANTIS_INT_IRQ1 |
150 MANTIS_INT_IRQ0 | MANTIS_INT_OCERR |
151 MANTIS_INT_PABORT | MANTIS_INT_RIPERR |
152 MANTIS_INT_PPERR | MANTIS_INT_FTRGT |
153 MANTIS_INT_RISCI);
154
155 if (stat)
156 dprintk(MANTIS_DEBUG, 0, "<Unknown> Stat=<%02x> Mask=<%02x>", stat, mask);
157
158 dprintk(MANTIS_DEBUG, 0, "\n");
159 return IRQ_HANDLED;
160}
161
162static int __devinit mantis_pci_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)
163{
164 struct mantis_pci *mantis;
165 struct mantis_hwconfig *config;
166 int err = 0;
167
168 mantis = kzalloc(sizeof(struct mantis_pci), GFP_KERNEL);
169 if (mantis == NULL) {
170 printk(KERN_ERR "%s ERROR: Out of memory\n", __func__);
171 err = -ENOMEM;
172 goto fail0;
173 }
174
175 mantis->num = devs;
176 mantis->verbose = verbose;
177 mantis->pdev = pdev;
178 config = (struct mantis_hwconfig *) pci_id->driver_data;
179 config->irq_handler = &mantis_irq_handler;
180 mantis->hwconfig = config;
181
182 err = mantis_pci_init(mantis);
183 if (err) {
184 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis PCI initialization failed <%d>", err);
185 goto fail1;
186 }
187
188 err = mantis_stream_control(mantis, STREAM_TO_HIF);
189 if (err < 0) {
190 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis stream control failed <%d>", err);
191 goto fail1;
192 }
193
194 err = mantis_i2c_init(mantis);
195 if (err < 0) {
196 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis I2C initialization failed <%d>", err);
197 goto fail2;
198 }
199
200 err = mantis_get_mac(mantis);
201 if (err < 0) {
202 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis MAC address read failed <%d>", err);
203 goto fail2;
204 }
205
206 err = mantis_dma_init(mantis);
207 if (err < 0) {
208 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis DMA initialization failed <%d>", err);
209 goto fail3;
210 }
211
212 err = mantis_dvb_init(mantis);
213 if (err < 0) {
214 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis DVB initialization failed <%d>", err);
215 goto fail4;
216 }
217 err = mantis_uart_init(mantis);
218 if (err < 0) {
219 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis UART initialization failed <%d>", err);
220 goto fail6;
221 }
222
223 devs++;
224
225 return err;
226
227
228 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis UART exit! <%d>", err);
229 mantis_uart_exit(mantis);
230
231fail6:
232fail4:
233 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis DMA exit! <%d>", err);
234 mantis_dma_exit(mantis);
235
236fail3:
237 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis I2C exit! <%d>", err);
238 mantis_i2c_exit(mantis);
239
240fail2:
241 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis PCI exit! <%d>", err);
242 mantis_pci_exit(mantis);
243
244fail1:
245 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis free! <%d>", err);
246 kfree(mantis);
247
248fail0:
249 return err;
250}
251
252static void __devexit mantis_pci_remove(struct pci_dev *pdev)
253{
254 struct mantis_pci *mantis = pci_get_drvdata(pdev);
255
256 if (mantis) {
257
258 mantis_uart_exit(mantis);
259 mantis_dvb_exit(mantis);
260 mantis_dma_exit(mantis);
261 mantis_i2c_exit(mantis);
262 mantis_pci_exit(mantis);
263 kfree(mantis);
264 }
265 return;
266}
267
268static struct pci_device_id mantis_pci_table[] = {
269 MAKE_ENTRY(TWINHAN_TECHNOLOGIES, MANTIS_VP_1033_DVB_S, &vp1033_config),
270 MAKE_ENTRY(TWINHAN_TECHNOLOGIES, MANTIS_VP_1034_DVB_S, &vp1034_config),
271 MAKE_ENTRY(TWINHAN_TECHNOLOGIES, MANTIS_VP_1041_DVB_S2, &vp1041_config),
272 MAKE_ENTRY(TECHNISAT, SKYSTAR_HD2_10, &vp1041_config),
273 MAKE_ENTRY(TECHNISAT, SKYSTAR_HD2_20, &vp1041_config),
274 MAKE_ENTRY(TERRATEC, CINERGY_S2_PCI_HD, &vp1041_config),
275 MAKE_ENTRY(TWINHAN_TECHNOLOGIES, MANTIS_VP_2033_DVB_C, &vp2033_config),
276 MAKE_ENTRY(TWINHAN_TECHNOLOGIES, MANTIS_VP_2040_DVB_C, &vp2040_config),
277 MAKE_ENTRY(TECHNISAT, CABLESTAR_HD2, &vp2040_config),
278 MAKE_ENTRY(TERRATEC, CINERGY_C, &vp2033_config),
279 MAKE_ENTRY(TWINHAN_TECHNOLOGIES, MANTIS_VP_3030_DVB_T, &vp3030_config),
280 { }
281};
282
283static struct pci_driver mantis_pci_driver = {
284 .name = DRIVER_NAME,
285 .id_table = mantis_pci_table,
286 .probe = mantis_pci_probe,
287 .remove = mantis_pci_remove,
288};
289
290static int __devinit mantis_init(void)
291{
292 return pci_register_driver(&mantis_pci_driver);
293}
294
295static void __devexit mantis_exit(void)
296{
297 return pci_unregister_driver(&mantis_pci_driver);
298}
299
300module_init(mantis_init);
301module_exit(mantis_exit);
302
303MODULE_DESCRIPTION("MANTIS driver");
304MODULE_AUTHOR("Manu Abraham");
305MODULE_LICENSE("GPL");
diff --git a/drivers/media/dvb/mantis/mantis_common.h b/drivers/media/dvb/mantis/mantis_common.h
new file mode 100644
index 000000000000..d0b645a483c9
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_common.h
@@ -0,0 +1,179 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_COMMON_H
22#define __MANTIS_COMMON_H
23
24#include <linux/mutex.h>
25#include <linux/workqueue.h>
26
27#include "mantis_uart.h"
28
29#include "mantis_link.h"
30
31#define MANTIS_ERROR 0
32#define MANTIS_NOTICE 1
33#define MANTIS_INFO 2
34#define MANTIS_DEBUG 3
35#define MANTIS_TMG 9
36
37#define dprintk(y, z, format, arg...) do { \
38 if (z) { \
39 if ((mantis->verbose > MANTIS_ERROR) && (mantis->verbose > y)) \
40 printk(KERN_ERR "%s (%d): " format "\n" , __func__ , mantis->num , ##arg); \
41 else if ((mantis->verbose > MANTIS_NOTICE) && (mantis->verbose > y)) \
42 printk(KERN_NOTICE "%s (%d): " format "\n" , __func__ , mantis->num , ##arg); \
43 else if ((mantis->verbose > MANTIS_INFO) && (mantis->verbose > y)) \
44 printk(KERN_INFO "%s (%d): " format "\n" , __func__ , mantis->num , ##arg); \
45 else if ((mantis->verbose > MANTIS_DEBUG) && (mantis->verbose > y)) \
46 printk(KERN_DEBUG "%s (%d): " format "\n" , __func__ , mantis->num , ##arg); \
47 else if ((mantis->verbose > MANTIS_TMG) && (mantis->verbose > y)) \
48 printk(KERN_DEBUG "%s (%d): " format "\n" , __func__ , mantis->num , ##arg); \
49 } else { \
50 if (mantis->verbose > y) \
51 printk(format , ##arg); \
52 } \
53} while(0)
54
55#define mwrite(dat, addr) writel((dat), addr)
56#define mread(addr) readl(addr)
57
58#define mmwrite(dat, addr) mwrite((dat), (mantis->mmio + (addr)))
59#define mmread(addr) mread(mantis->mmio + (addr))
60
61#define MANTIS_TS_188 0
62#define MANTIS_TS_204 1
63
64#define TWINHAN_TECHNOLOGIES 0x1822
65#define MANTIS 0x4e35
66
67#define TECHNISAT 0x1ae4
68#define TERRATEC 0x153b
69
70#define MAKE_ENTRY(__subven, __subdev, __configptr) { \
71 .vendor = TWINHAN_TECHNOLOGIES, \
72 .device = MANTIS, \
73 .subvendor = (__subven), \
74 .subdevice = (__subdev), \
75 .driver_data = (unsigned long) (__configptr) \
76}
77
78enum mantis_i2c_mode {
79 MANTIS_PAGE_MODE = 0,
80 MANTIS_BYTE_MODE,
81};
82
83struct mantis_pci;
84
85struct mantis_hwconfig {
86 char *model_name;
87 char *dev_type;
88 u32 ts_size;
89
90 enum mantis_baud baud_rate;
91 enum mantis_parity parity;
92 u32 bytes;
93
94 irqreturn_t (*irq_handler)(int irq, void *dev_id);
95 int (*frontend_init)(struct mantis_pci *mantis, struct dvb_frontend *fe);
96
97 u8 power;
98 u8 reset;
99
100 enum mantis_i2c_mode i2c_mode;
101};
102
103struct mantis_pci {
104 unsigned int verbose;
105
106 /* PCI stuff */
107 u16 vendor_id;
108 u16 device_id;
109 u16 subsystem_vendor;
110 u16 subsystem_device;
111
112 u8 latency;
113
114 struct pci_dev *pdev;
115
116 unsigned long mantis_addr;
117 void __iomem *mmio;
118
119 u8 irq;
120 u8 revision;
121
122 unsigned int num;
123
124 /* RISC Core */
125 u32 finished_block;
126 u32 last_block;
127 u32 line_bytes;
128 u32 line_count;
129 u32 risc_pos;
130 u8 *buf_cpu;
131 dma_addr_t buf_dma;
132 u32 *risc_cpu;
133 dma_addr_t risc_dma;
134
135 struct tasklet_struct tasklet;
136
137 struct i2c_adapter adapter;
138 int i2c_rc;
139 wait_queue_head_t i2c_wq;
140 struct mutex i2c_lock;
141
142 /* DVB stuff */
143 struct dvb_adapter dvb_adapter;
144 struct dvb_frontend *fe;
145 struct dvb_demux demux;
146 struct dmxdev dmxdev;
147 struct dmx_frontend fe_hw;
148 struct dmx_frontend fe_mem;
149 struct dvb_net dvbnet;
150
151 u8 feeds;
152
153 struct mantis_hwconfig *hwconfig;
154
155 u32 mantis_int_stat;
156 u32 mantis_int_mask;
157
158 /* board specific */
159 u8 mac_address[8];
160 u32 sub_vendor_id;
161 u32 sub_device_id;
162
163 /* A12 A13 A14 */
164 u32 gpio_status;
165
166 u32 gpif_status;
167
168 struct mantis_ca *mantis_ca;
169
170 wait_queue_head_t uart_wq;
171 struct work_struct uart_work;
172 spinlock_t uart_lock;
173
174 struct input_dev *rc;
175};
176
177#define MANTIS_HIF_STATUS (mantis->gpio_status)
178
179#endif /* __MANTIS_COMMON_H */
diff --git a/drivers/media/dvb/mantis/mantis_core.c b/drivers/media/dvb/mantis/mantis_core.c
new file mode 100644
index 000000000000..8113b23ce448
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_core.c
@@ -0,0 +1,238 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include "mantis_common.h"
22#include "mantis_core.h"
23#include "mantis_vp1033.h"
24#include "mantis_vp1034.h"
25#include "mantis_vp1041.h"
26#include "mantis_vp2033.h"
27#include "mantis_vp2040.h"
28#include "mantis_vp3030.h"
29
30static int read_eeprom_byte(struct mantis_pci *mantis, u8 *data, u8 length)
31{
32 int err;
33 struct i2c_msg msg[] = {
34 {
35 .addr = 0x50,
36 .flags = 0,
37 .buf = data,
38 .len = 1
39 }, {
40 .addr = 0x50,
41 .flags = I2C_M_RD,
42 .buf = data,
43 .len = length
44 },
45 };
46
47 err = i2c_transfer(&mantis->adapter, msg, 2);
48 if (err < 0) {
49 dprintk(verbose, MANTIS_ERROR, 1,
50 "ERROR: i2c read: < err=%i d0=0x%02x d1=0x%02x >",
51 err, data[0], data[1]);
52
53 return err;
54 }
55
56 return 0;
57}
58
59static int write_eeprom_byte(struct mantis_pci *mantis, u8 *data, u8 length)
60{
61 int err;
62
63 struct i2c_msg msg = {
64 .addr = 0x50,
65 .flags = 0,
66 .buf = data,
67 .len = length
68 };
69
70 err = i2c_transfer(&mantis->adapter, &msg, 1);
71 if (err < 0) {
72 dprintk(verbose, MANTIS_ERROR, 1,
73 "ERROR: i2c write: < err=%i length=0x%02x d0=0x%02x, d1=0x%02x >",
74 err, length, data[0], data[1]);
75
76 return err;
77 }
78
79 return 0;
80}
81
82static int get_mac_address(struct mantis_pci *mantis)
83{
84 int err;
85
86 mantis->mac_address[0] = 0x08;
87 err = read_eeprom_byte(mantis, &mantis->mac_address[0], 6);
88 if (err < 0) {
89 dprintk(verbose, MANTIS_ERROR, 1, "Mantis EEPROM read error");
90
91 return err;
92 }
93 dprintk(verbose, MANTIS_ERROR, 0,
94 " MAC Address=[%02x:%02x:%02x:%02x:%02x:%02x]\n",
95 mantis->mac_address[0], mantis->mac_address[1],
96 mantis->mac_address[2], mantis->mac_address[3],
97 mantis->mac_address[4], mantis->mac_address[5]);
98
99 return 0;
100}
101
102#define MANTIS_MODEL_UNKNOWN "UNKNOWN"
103#define MANTIS_DEV_UNKNOWN "UNKNOWN"
104
105struct mantis_hwconfig unknown_device = {
106 .model_name = MANTIS_MODEL_UNKNOWN,
107 .dev_type = MANTIS_DEV_UNKNOWN,
108};
109
110static void mantis_load_config(struct mantis_pci *mantis)
111{
112 switch (mantis->subsystem_device) {
113 case MANTIS_VP_1033_DVB_S: /* VP-1033 */
114 mantis->hwconfig = &vp1033_mantis_config;
115 break;
116 case MANTIS_VP_1034_DVB_S: /* VP-1034 */
117 mantis->hwconfig = &vp1034_mantis_config;
118 break;
119 case MANTIS_VP_1041_DVB_S2: /* VP-1041 */
120 case TECHNISAT_SKYSTAR_HD2:
121 mantis->hwconfig = &vp1041_mantis_config;
122 break;
123 case MANTIS_VP_2033_DVB_C: /* VP-2033 */
124 mantis->hwconfig = &vp2033_mantis_config;
125 break;
126 case MANTIS_VP_2040_DVB_C: /* VP-2040 */
127 case TERRATEC_CINERGY_C_PCI: /* VP-2040 clone */
128 case TECHNISAT_CABLESTAR_HD2:
129 mantis->hwconfig = &vp2040_mantis_config;
130 break;
131 case MANTIS_VP_3030_DVB_T: /* VP-3030 */
132 mantis->hwconfig = &vp3030_mantis_config;
133 break;
134 default:
135 mantis->hwconfig = &unknown_device;
136 break;
137 }
138}
139
140int mantis_core_init(struct mantis_pci *mantis)
141{
142 int err = 0;
143
144 mantis_load_config(mantis);
145 dprintk(verbose, MANTIS_ERROR, 0, "found a %s PCI %s device on (%02x:%02x.%x),\n",
146 mantis->hwconfig->model_name, mantis->hwconfig->dev_type,
147 mantis->pdev->bus->number, PCI_SLOT(mantis->pdev->devfn), PCI_FUNC(mantis->pdev->devfn));
148 dprintk(verbose, MANTIS_ERROR, 0, " Mantis Rev %d [%04x:%04x], ",
149 mantis->revision,
150 mantis->subsystem_vendor, mantis->subsystem_device);
151 dprintk(verbose, MANTIS_ERROR, 0,
152 "irq: %d, latency: %d\n memory: 0x%lx, mmio: 0x%p\n",
153 mantis->pdev->irq, mantis->latency,
154 mantis->mantis_addr, mantis->mantis_mmio);
155
156 err = mantis_i2c_init(mantis);
157 if (err < 0) {
158 dprintk(verbose, MANTIS_ERROR, 1, "Mantis I2C init failed");
159 return err;
160 }
161 err = get_mac_address(mantis);
162 if (err < 0) {
163 dprintk(verbose, MANTIS_ERROR, 1, "get MAC address failed");
164 return err;
165 }
166 err = mantis_dma_init(mantis);
167 if (err < 0) {
168 dprintk(verbose, MANTIS_ERROR, 1, "Mantis DMA init failed");
169 return err;
170 }
171 err = mantis_dvb_init(mantis);
172 if (err < 0) {
173 dprintk(verbose, MANTIS_DEBUG, 1, "Mantis DVB init failed");
174 return err;
175 }
176 err = mantis_uart_init(mantis);
177 if (err < 0) {
178 dprintk(verbose, MANTIS_DEBUG, 1, "Mantis UART init failed");
179 return err;
180 }
181
182 return 0;
183}
184
185int mantis_core_exit(struct mantis_pci *mantis)
186{
187 mantis_dma_stop(mantis);
188 dprintk(verbose, MANTIS_ERROR, 1, "DMA engine stopping");
189
190 mantis_uart_exit(mantis);
191 dprintk(verbose, MANTIS_ERROR, 1, "UART exit failed");
192
193 if (mantis_dma_exit(mantis) < 0)
194 dprintk(verbose, MANTIS_ERROR, 1, "DMA exit failed");
195 if (mantis_dvb_exit(mantis) < 0)
196 dprintk(verbose, MANTIS_ERROR, 1, "DVB exit failed");
197 if (mantis_i2c_exit(mantis) < 0)
198 dprintk(verbose, MANTIS_ERROR, 1, "I2C adapter delete.. failed");
199
200 return 0;
201}
202
203/* Turn the given bit on or off. */
204void gpio_set_bits(struct mantis_pci *mantis, u32 bitpos, u8 value)
205{
206 u32 cur;
207
208 cur = mmread(MANTIS_GPIF_ADDR);
209 if (value)
210 mantis->gpio_status = cur | (1 << bitpos);
211 else
212 mantis->gpio_status = cur & (~(1 << bitpos));
213
214 mmwrite(mantis->gpio_status, MANTIS_GPIF_ADDR);
215 mmwrite(0x00, MANTIS_GPIF_DOUT);
216 udelay(100);
217}
218
219/* direction = 0 , no CI passthrough ; 1 , CI passthrough */
220void mantis_set_direction(struct mantis_pci *mantis, int direction)
221{
222 u32 reg;
223
224 reg = mmread(0x28);
225 dprintk(verbose, MANTIS_DEBUG, 1, "TS direction setup");
226 if (direction == 0x01) {
227 /* to CI */
228 reg |= 0x04;
229 mmwrite(reg, 0x28);
230 reg &= 0xff - 0x04;
231 mmwrite(reg, 0x28);
232 } else {
233 reg &= 0xff - 0x04;
234 mmwrite(reg, 0x28);
235 reg |= 0x04;
236 mmwrite(reg, 0x28);
237 }
238}
diff --git a/drivers/media/dvb/mantis/mantis_core.h b/drivers/media/dvb/mantis/mantis_core.h
new file mode 100644
index 000000000000..833ee42e694e
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_core.h
@@ -0,0 +1,57 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_CORE_H
22#define __MANTIS_CORE_H
23
24#include "mantis_common.h"
25
26
27#define FE_TYPE_SAT 0
28#define FE_TYPE_CAB 1
29#define FE_TYPE_TER 2
30
31#define FE_TYPE_TS204 0
32#define FE_TYPE_TS188 1
33
34
35struct vendorname {
36 u8 *sub_vendor_name;
37 u32 sub_vendor_id;
38};
39
40struct devicetype {
41 u8 *sub_device_name;
42 u32 sub_device_id;
43 u8 device_type;
44 u32 type_flags;
45};
46
47
48extern int mantis_dma_init(struct mantis_pci *mantis);
49extern int mantis_dma_exit(struct mantis_pci *mantis);
50extern void mantis_dma_start(struct mantis_pci *mantis);
51extern void mantis_dma_stop(struct mantis_pci *mantis);
52extern int mantis_i2c_init(struct mantis_pci *mantis);
53extern int mantis_i2c_exit(struct mantis_pci *mantis);
54extern int mantis_core_init(struct mantis_pci *mantis);
55extern int mantis_core_exit(struct mantis_pci *mantis);
56
57#endif /* __MANTIS_CORE_H */
diff --git a/drivers/media/dvb/mantis/mantis_dma.c b/drivers/media/dvb/mantis/mantis_dma.c
new file mode 100644
index 000000000000..46202a4012aa
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_dma.c
@@ -0,0 +1,256 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/kernel.h>
22#include <asm/page.h>
23#include <linux/vmalloc.h>
24#include <linux/pci.h>
25
26#include <asm/irq.h>
27#include <linux/signal.h>
28#include <linux/sched.h>
29#include <linux/interrupt.h>
30
31#include "dmxdev.h"
32#include "dvbdev.h"
33#include "dvb_demux.h"
34#include "dvb_frontend.h"
35#include "dvb_net.h"
36
37#include "mantis_common.h"
38#include "mantis_reg.h"
39#include "mantis_dma.h"
40
41#define RISC_WRITE (0x01 << 28)
42#define RISC_JUMP (0x07 << 28)
43#define RISC_IRQ (0x01 << 24)
44
45#define RISC_STATUS(status) ((((~status) & 0x0f) << 20) | ((status & 0x0f) << 16))
46#define RISC_FLUSH() (mantis->risc_pos = 0)
47#define RISC_INSTR(opcode) (mantis->risc_cpu[mantis->risc_pos++] = cpu_to_le32(opcode))
48
49#define MANTIS_BUF_SIZE (64 * 1024)
50#define MANTIS_BLOCK_BYTES (MANTIS_BUF_SIZE >> 4)
51#define MANTIS_BLOCK_COUNT (1 << 4)
52#define MANTIS_RISC_SIZE PAGE_SIZE
53
54int mantis_dma_exit(struct mantis_pci *mantis)
55{
56 if (mantis->buf_cpu) {
57 dprintk(MANTIS_ERROR, 1,
58 "DMA=0x%lx cpu=0x%p size=%d",
59 (unsigned long) mantis->buf_dma,
60 mantis->buf_cpu,
61 MANTIS_BUF_SIZE);
62
63 pci_free_consistent(mantis->pdev, MANTIS_BUF_SIZE,
64 mantis->buf_cpu, mantis->buf_dma);
65
66 mantis->buf_cpu = NULL;
67 }
68 if (mantis->risc_cpu) {
69 dprintk(MANTIS_ERROR, 1,
70 "RISC=0x%lx cpu=0x%p size=%lx",
71 (unsigned long) mantis->risc_dma,
72 mantis->risc_cpu,
73 MANTIS_RISC_SIZE);
74
75 pci_free_consistent(mantis->pdev, MANTIS_RISC_SIZE,
76 mantis->risc_cpu, mantis->risc_dma);
77
78 mantis->risc_cpu = NULL;
79 }
80
81 return 0;
82}
83EXPORT_SYMBOL_GPL(mantis_dma_exit);
84
85static inline int mantis_alloc_buffers(struct mantis_pci *mantis)
86{
87 if (!mantis->buf_cpu) {
88 mantis->buf_cpu = pci_alloc_consistent(mantis->pdev,
89 MANTIS_BUF_SIZE,
90 &mantis->buf_dma);
91 if (!mantis->buf_cpu) {
92 dprintk(MANTIS_ERROR, 1,
93 "DMA buffer allocation failed");
94
95 goto err;
96 }
97 dprintk(MANTIS_ERROR, 1,
98 "DMA=0x%lx cpu=0x%p size=%d",
99 (unsigned long) mantis->buf_dma,
100 mantis->buf_cpu, MANTIS_BUF_SIZE);
101 }
102 if (!mantis->risc_cpu) {
103 mantis->risc_cpu = pci_alloc_consistent(mantis->pdev,
104 MANTIS_RISC_SIZE,
105 &mantis->risc_dma);
106
107 if (!mantis->risc_cpu) {
108 dprintk(MANTIS_ERROR, 1,
109 "RISC program allocation failed");
110
111 mantis_dma_exit(mantis);
112
113 goto err;
114 }
115 dprintk(MANTIS_ERROR, 1,
116 "RISC=0x%lx cpu=0x%p size=%lx",
117 (unsigned long) mantis->risc_dma,
118 mantis->risc_cpu, MANTIS_RISC_SIZE);
119 }
120
121 return 0;
122err:
123 dprintk(MANTIS_ERROR, 1, "Out of memory (?) .....");
124 return -ENOMEM;
125}
126
127static inline int mantis_calc_lines(struct mantis_pci *mantis)
128{
129 mantis->line_bytes = MANTIS_BLOCK_BYTES;
130 mantis->line_count = MANTIS_BLOCK_COUNT;
131
132 while (mantis->line_bytes > 4095) {
133 mantis->line_bytes >>= 1;
134 mantis->line_count <<= 1;
135 }
136
137 dprintk(MANTIS_DEBUG, 1, "Mantis RISC block bytes=[%d], line bytes=[%d], line count=[%d]",
138 MANTIS_BLOCK_BYTES, mantis->line_bytes, mantis->line_count);
139
140 if (mantis->line_count > 255) {
141 dprintk(MANTIS_ERROR, 1, "Buffer size error");
142 return -EINVAL;
143 }
144
145 return 0;
146}
147
148int mantis_dma_init(struct mantis_pci *mantis)
149{
150 int err = 0;
151
152 dprintk(MANTIS_DEBUG, 1, "Mantis DMA init");
153 if (mantis_alloc_buffers(mantis) < 0) {
154 dprintk(MANTIS_ERROR, 1, "Error allocating DMA buffer");
155
156 /* Stop RISC Engine */
157 mmwrite(0, MANTIS_DMA_CTL);
158
159 goto err;
160 }
161 err = mantis_calc_lines(mantis);
162 if (err < 0) {
163 dprintk(MANTIS_ERROR, 1, "Mantis calc lines failed");
164
165 goto err;
166 }
167
168 return 0;
169err:
170 return err;
171}
172EXPORT_SYMBOL_GPL(mantis_dma_init);
173
174static inline void mantis_risc_program(struct mantis_pci *mantis)
175{
176 u32 buf_pos = 0;
177 u32 line;
178
179 dprintk(MANTIS_DEBUG, 1, "Mantis create RISC program");
180 RISC_FLUSH();
181
182 dprintk(MANTIS_DEBUG, 1, "risc len lines %u, bytes per line %u",
183 mantis->line_count, mantis->line_bytes);
184
185 for (line = 0; line < mantis->line_count; line++) {
186 dprintk(MANTIS_DEBUG, 1, "RISC PROG line=[%d]", line);
187 if (!(buf_pos % MANTIS_BLOCK_BYTES)) {
188 RISC_INSTR(RISC_WRITE |
189 RISC_IRQ |
190 RISC_STATUS(((buf_pos / MANTIS_BLOCK_BYTES) +
191 (MANTIS_BLOCK_COUNT - 1)) %
192 MANTIS_BLOCK_COUNT) |
193 mantis->line_bytes);
194 } else {
195 RISC_INSTR(RISC_WRITE | mantis->line_bytes);
196 }
197 RISC_INSTR(mantis->buf_dma + buf_pos);
198 buf_pos += mantis->line_bytes;
199 }
200 RISC_INSTR(RISC_JUMP);
201 RISC_INSTR(mantis->risc_dma);
202}
203
204void mantis_dma_start(struct mantis_pci *mantis)
205{
206 dprintk(MANTIS_DEBUG, 1, "Mantis Start DMA engine");
207
208 mantis_risc_program(mantis);
209 mmwrite(mantis->risc_dma, MANTIS_RISC_START);
210 mmwrite(mmread(MANTIS_GPIF_ADDR) | MANTIS_GPIF_HIFRDWRN, MANTIS_GPIF_ADDR);
211
212 mmwrite(0, MANTIS_DMA_CTL);
213 mantis->last_block = mantis->finished_block = 0;
214
215 mmwrite(mmread(MANTIS_INT_MASK) | MANTIS_INT_RISCI, MANTIS_INT_MASK);
216
217 mmwrite(MANTIS_FIFO_EN | MANTIS_DCAP_EN
218 | MANTIS_RISC_EN, MANTIS_DMA_CTL);
219
220}
221
222void mantis_dma_stop(struct mantis_pci *mantis)
223{
224 u32 stat = 0, mask = 0;
225
226 stat = mmread(MANTIS_INT_STAT);
227 mask = mmread(MANTIS_INT_MASK);
228 dprintk(MANTIS_DEBUG, 1, "Mantis Stop DMA engine");
229
230 mmwrite((mmread(MANTIS_GPIF_ADDR) & (~(MANTIS_GPIF_HIFRDWRN))), MANTIS_GPIF_ADDR);
231
232 mmwrite((mmread(MANTIS_DMA_CTL) & ~(MANTIS_FIFO_EN |
233 MANTIS_DCAP_EN |
234 MANTIS_RISC_EN)), MANTIS_DMA_CTL);
235
236 mmwrite(mmread(MANTIS_INT_STAT), MANTIS_INT_STAT);
237
238 mmwrite(mmread(MANTIS_INT_MASK) & ~(MANTIS_INT_RISCI |
239 MANTIS_INT_RISCEN), MANTIS_INT_MASK);
240}
241
242
243void mantis_dma_xfer(unsigned long data)
244{
245 struct mantis_pci *mantis = (struct mantis_pci *) data;
246 struct mantis_hwconfig *config = mantis->hwconfig;
247
248 while (mantis->last_block != mantis->finished_block) {
249 dprintk(MANTIS_DEBUG, 1, "last block=[%d] finished block=[%d]",
250 mantis->last_block, mantis->finished_block);
251
252 (config->ts_size ? dvb_dmx_swfilter_204 : dvb_dmx_swfilter)
253 (&mantis->demux, &mantis->buf_cpu[mantis->last_block * MANTIS_BLOCK_BYTES], MANTIS_BLOCK_BYTES);
254 mantis->last_block = (mantis->last_block + 1) % MANTIS_BLOCK_COUNT;
255 }
256}
diff --git a/drivers/media/dvb/mantis/mantis_dma.h b/drivers/media/dvb/mantis/mantis_dma.h
new file mode 100644
index 000000000000..6be00fa82094
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_dma.h
@@ -0,0 +1,30 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_DMA_H
22#define __MANTIS_DMA_H
23
24extern int mantis_dma_init(struct mantis_pci *mantis);
25extern int mantis_dma_exit(struct mantis_pci *mantis);
26extern void mantis_dma_start(struct mantis_pci *mantis);
27extern void mantis_dma_stop(struct mantis_pci *mantis);
28extern void mantis_dma_xfer(unsigned long data);
29
30#endif /* __MANTIS_DMA_H */
diff --git a/drivers/media/dvb/mantis/mantis_dvb.c b/drivers/media/dvb/mantis/mantis_dvb.c
new file mode 100644
index 000000000000..99d82eec3b03
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_dvb.c
@@ -0,0 +1,296 @@
1/*
2 Mantis PCI bridge driver
3 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18*/
19
20#include <linux/kernel.h>
21#include <linux/bitops.h>
22
23#include <linux/signal.h>
24#include <linux/sched.h>
25#include <linux/interrupt.h>
26#include <linux/pci.h>
27#include <linux/i2c.h>
28
29#include "dmxdev.h"
30#include "dvbdev.h"
31#include "dvb_demux.h"
32#include "dvb_frontend.h"
33#include "dvb_net.h"
34
35#include "mantis_common.h"
36#include "mantis_dma.h"
37#include "mantis_ca.h"
38#include "mantis_ioc.h"
39#include "mantis_dvb.h"
40
41DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
42
43int mantis_frontend_power(struct mantis_pci *mantis, enum mantis_power power)
44{
45 struct mantis_hwconfig *config = mantis->hwconfig;
46
47 switch (power) {
48 case POWER_ON:
49 dprintk(MANTIS_DEBUG, 1, "Power ON");
50 gpio_set_bits(mantis, config->power, POWER_ON);
51 msleep(100);
52 gpio_set_bits(mantis, config->power, POWER_ON);
53 msleep(100);
54 break;
55
56 case POWER_OFF:
57 dprintk(MANTIS_DEBUG, 1, "Power OFF");
58 gpio_set_bits(mantis, config->power, POWER_OFF);
59 msleep(100);
60 break;
61
62 default:
63 dprintk(MANTIS_DEBUG, 1, "Unknown state <%02x>", power);
64 return -1;
65 }
66
67 return 0;
68}
69EXPORT_SYMBOL_GPL(mantis_frontend_power);
70
71void mantis_frontend_soft_reset(struct mantis_pci *mantis)
72{
73 struct mantis_hwconfig *config = mantis->hwconfig;
74
75 dprintk(MANTIS_DEBUG, 1, "Frontend RESET");
76 gpio_set_bits(mantis, config->reset, 0);
77 msleep(100);
78 gpio_set_bits(mantis, config->reset, 0);
79 msleep(100);
80 gpio_set_bits(mantis, config->reset, 1);
81 msleep(100);
82 gpio_set_bits(mantis, config->reset, 1);
83 msleep(100);
84
85 return;
86}
87EXPORT_SYMBOL_GPL(mantis_frontend_soft_reset);
88
89static int mantis_frontend_shutdown(struct mantis_pci *mantis)
90{
91 int err;
92
93 mantis_frontend_soft_reset(mantis);
94 err = mantis_frontend_power(mantis, POWER_OFF);
95 if (err != 0) {
96 dprintk(MANTIS_ERROR, 1, "Frontend POWER OFF failed! <%d>", err);
97 return 1;
98 }
99
100 return 0;
101}
102
103static int mantis_dvb_start_feed(struct dvb_demux_feed *dvbdmxfeed)
104{
105 struct dvb_demux *dvbdmx = dvbdmxfeed->demux;
106 struct mantis_pci *mantis = dvbdmx->priv;
107
108 dprintk(MANTIS_DEBUG, 1, "Mantis DVB Start feed");
109 if (!dvbdmx->dmx.frontend) {
110 dprintk(MANTIS_DEBUG, 1, "no frontend ?");
111 return -EINVAL;
112 }
113
114 mantis->feeds++;
115 dprintk(MANTIS_DEBUG, 1, "mantis start feed, feeds=%d", mantis->feeds);
116
117 if (mantis->feeds == 1) {
118 dprintk(MANTIS_DEBUG, 1, "mantis start feed & dma");
119 mantis_dma_start(mantis);
120 }
121
122 return mantis->feeds;
123}
124
125static int mantis_dvb_stop_feed(struct dvb_demux_feed *dvbdmxfeed)
126{
127 struct dvb_demux *dvbdmx = dvbdmxfeed->demux;
128 struct mantis_pci *mantis = dvbdmx->priv;
129
130 dprintk(MANTIS_DEBUG, 1, "Mantis DVB Stop feed");
131 if (!dvbdmx->dmx.frontend) {
132 dprintk(MANTIS_DEBUG, 1, "no frontend ?");
133 return -EINVAL;
134 }
135
136 mantis->feeds--;
137 if (mantis->feeds == 0) {
138 dprintk(MANTIS_DEBUG, 1, "mantis stop feed and dma");
139 mantis_dma_stop(mantis);
140 }
141
142 return 0;
143}
144
145int __devinit mantis_dvb_init(struct mantis_pci *mantis)
146{
147 struct mantis_hwconfig *config = mantis->hwconfig;
148 int result = -1;
149
150 dprintk(MANTIS_DEBUG, 1, "dvb_register_adapter");
151
152 result = dvb_register_adapter(&mantis->dvb_adapter,
153 "Mantis DVB adapter",
154 THIS_MODULE,
155 &mantis->pdev->dev,
156 adapter_nr);
157
158 if (result < 0) {
159
160 dprintk(MANTIS_ERROR, 1, "Error registering adapter");
161 return -ENODEV;
162 }
163
164 mantis->dvb_adapter.priv = mantis;
165 mantis->demux.dmx.capabilities = DMX_TS_FILTERING |
166 DMX_SECTION_FILTERING |
167 DMX_MEMORY_BASED_FILTERING;
168
169 mantis->demux.priv = mantis;
170 mantis->demux.filternum = 256;
171 mantis->demux.feednum = 256;
172 mantis->demux.start_feed = mantis_dvb_start_feed;
173 mantis->demux.stop_feed = mantis_dvb_stop_feed;
174 mantis->demux.write_to_decoder = NULL;
175
176 dprintk(MANTIS_DEBUG, 1, "dvb_dmx_init");
177 result = dvb_dmx_init(&mantis->demux);
178 if (result < 0) {
179 dprintk(MANTIS_ERROR, 1, "dvb_dmx_init failed, ERROR=%d", result);
180
181 goto err0;
182 }
183
184 mantis->dmxdev.filternum = 256;
185 mantis->dmxdev.demux = &mantis->demux.dmx;
186 mantis->dmxdev.capabilities = 0;
187 dprintk(MANTIS_DEBUG, 1, "dvb_dmxdev_init");
188
189 result = dvb_dmxdev_init(&mantis->dmxdev, &mantis->dvb_adapter);
190 if (result < 0) {
191
192 dprintk(MANTIS_ERROR, 1, "dvb_dmxdev_init failed, ERROR=%d", result);
193 goto err1;
194 }
195
196 mantis->fe_hw.source = DMX_FRONTEND_0;
197 result = mantis->demux.dmx.add_frontend(&mantis->demux.dmx, &mantis->fe_hw);
198 if (result < 0) {
199
200 dprintk(MANTIS_ERROR, 1, "dvb_dmx_init failed, ERROR=%d", result);
201 goto err2;
202 }
203
204 mantis->fe_mem.source = DMX_MEMORY_FE;
205 result = mantis->demux.dmx.add_frontend(&mantis->demux.dmx, &mantis->fe_mem);
206 if (result < 0) {
207 dprintk(MANTIS_ERROR, 1, "dvb_dmx_init failed, ERROR=%d", result);
208 goto err3;
209 }
210
211 result = mantis->demux.dmx.connect_frontend(&mantis->demux.dmx, &mantis->fe_hw);
212 if (result < 0) {
213 dprintk(MANTIS_ERROR, 1, "dvb_dmx_init failed, ERROR=%d", result);
214 goto err4;
215 }
216
217 dvb_net_init(&mantis->dvb_adapter, &mantis->dvbnet, &mantis->demux.dmx);
218 tasklet_init(&mantis->tasklet, mantis_dma_xfer, (unsigned long) mantis);
219 if (mantis->hwconfig) {
220 result = config->frontend_init(mantis, mantis->fe);
221 if (result < 0) {
222 dprintk(MANTIS_ERROR, 1, "!!! NO Frontends found !!!");
223 goto err5;
224 } else {
225 if (mantis->fe == NULL) {
226 dprintk(MANTIS_ERROR, 1, "FE <NULL>");
227 goto err5;
228 }
229
230 if (dvb_register_frontend(&mantis->dvb_adapter, mantis->fe)) {
231 dprintk(MANTIS_ERROR, 1, "ERROR: Frontend registration failed");
232
233 if (mantis->fe->ops.release)
234 mantis->fe->ops.release(mantis->fe);
235
236 mantis->fe = NULL;
237 goto err5;
238 }
239 }
240 }
241
242 return 0;
243
244 /* Error conditions .. */
245err5:
246 tasklet_kill(&mantis->tasklet);
247 dvb_net_release(&mantis->dvbnet);
248 dvb_unregister_frontend(mantis->fe);
249 dvb_frontend_detach(mantis->fe);
250err4:
251 mantis->demux.dmx.remove_frontend(&mantis->demux.dmx, &mantis->fe_mem);
252
253err3:
254 mantis->demux.dmx.remove_frontend(&mantis->demux.dmx, &mantis->fe_hw);
255
256err2:
257 dvb_dmxdev_release(&mantis->dmxdev);
258
259err1:
260 dvb_dmx_release(&mantis->demux);
261
262err0:
263 dvb_unregister_adapter(&mantis->dvb_adapter);
264
265 return result;
266}
267EXPORT_SYMBOL_GPL(mantis_dvb_init);
268
269int __devexit mantis_dvb_exit(struct mantis_pci *mantis)
270{
271 int err;
272
273 if (mantis->fe) {
274 /* mantis_ca_exit(mantis); */
275 err = mantis_frontend_shutdown(mantis);
276 if (err != 0)
277 dprintk(MANTIS_ERROR, 1, "Frontend exit while POWER ON! <%d>", err);
278 dvb_unregister_frontend(mantis->fe);
279 dvb_frontend_detach(mantis->fe);
280 }
281
282 tasklet_kill(&mantis->tasklet);
283 dvb_net_release(&mantis->dvbnet);
284
285 mantis->demux.dmx.remove_frontend(&mantis->demux.dmx, &mantis->fe_mem);
286 mantis->demux.dmx.remove_frontend(&mantis->demux.dmx, &mantis->fe_hw);
287
288 dvb_dmxdev_release(&mantis->dmxdev);
289 dvb_dmx_release(&mantis->demux);
290
291 dprintk(MANTIS_DEBUG, 1, "dvb_unregister_adapter");
292 dvb_unregister_adapter(&mantis->dvb_adapter);
293
294 return 0;
295}
296EXPORT_SYMBOL_GPL(mantis_dvb_exit);
diff --git a/drivers/media/dvb/mantis/mantis_dvb.h b/drivers/media/dvb/mantis/mantis_dvb.h
new file mode 100644
index 000000000000..464199db304e
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_dvb.h
@@ -0,0 +1,35 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_DVB_H
22#define __MANTIS_DVB_H
23
24enum mantis_power {
25 POWER_OFF = 0,
26 POWER_ON = 1
27};
28
29extern int mantis_frontend_power(struct mantis_pci *mantis, enum mantis_power power);
30extern void mantis_frontend_soft_reset(struct mantis_pci *mantis);
31
32extern int mantis_dvb_init(struct mantis_pci *mantis);
33extern int mantis_dvb_exit(struct mantis_pci *mantis);
34
35#endif /* __MANTIS_DVB_H */
diff --git a/drivers/media/dvb/mantis/mantis_evm.c b/drivers/media/dvb/mantis/mantis_evm.c
new file mode 100644
index 000000000000..a7b369a439d6
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_evm.c
@@ -0,0 +1,117 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/kernel.h>
22
23#include <linux/signal.h>
24#include <linux/sched.h>
25#include <linux/interrupt.h>
26
27#include "dmxdev.h"
28#include "dvbdev.h"
29#include "dvb_demux.h"
30#include "dvb_frontend.h"
31#include "dvb_net.h"
32
33#include "mantis_common.h"
34#include "mantis_link.h"
35#include "mantis_hif.h"
36#include "mantis_reg.h"
37
38static void mantis_hifevm_work(struct work_struct *work)
39{
40 struct mantis_ca *ca = container_of(work, struct mantis_ca, hif_evm_work);
41 struct mantis_pci *mantis = ca->ca_priv;
42
43 u32 gpif_stat, gpif_mask;
44
45 gpif_stat = mmread(MANTIS_GPIF_STATUS);
46 gpif_mask = mmread(MANTIS_GPIF_IRQCFG);
47
48 if (gpif_stat & MANTIS_GPIF_DETSTAT) {
49 if (gpif_stat & MANTIS_CARD_PLUGIN) {
50 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): CAM Plugin", mantis->num);
51 mmwrite(0xdada0000, MANTIS_CARD_RESET);
52 mantis_event_cam_plugin(ca);
53 dvb_ca_en50221_camchange_irq(&ca->en50221,
54 0,
55 DVB_CA_EN50221_CAMCHANGE_INSERTED);
56 }
57 } else {
58 if (gpif_stat & MANTIS_CARD_PLUGOUT) {
59 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): CAM Unplug", mantis->num);
60 mmwrite(0xdada0000, MANTIS_CARD_RESET);
61 mantis_event_cam_unplug(ca);
62 dvb_ca_en50221_camchange_irq(&ca->en50221,
63 0,
64 DVB_CA_EN50221_CAMCHANGE_REMOVED);
65 }
66 }
67
68 if (mantis->gpif_status & MANTIS_GPIF_EXTIRQ)
69 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): Ext IRQ", mantis->num);
70
71 if (mantis->gpif_status & MANTIS_SBUF_WSTO)
72 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): Smart Buffer Timeout", mantis->num);
73
74 if (mantis->gpif_status & MANTIS_GPIF_OTHERR)
75 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): Alignment Error", mantis->num);
76
77 if (gpif_stat & MANTIS_SBUF_OVFLW)
78 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): Smart Buffer Overflow", mantis->num);
79
80 if (gpif_stat & MANTIS_GPIF_BRRDY)
81 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): Smart Buffer Read Ready", mantis->num);
82
83 if (gpif_stat & MANTIS_GPIF_INTSTAT)
84 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): GPIF IRQ", mantis->num);
85
86 if (gpif_stat & MANTIS_SBUF_EMPTY)
87 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): Smart Buffer Empty", mantis->num);
88
89 if (gpif_stat & MANTIS_SBUF_OPDONE) {
90 dprintk(MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): Smart Buffer operation complete", mantis->num);
91 ca->sbuf_status = MANTIS_SBUF_DATA_AVAIL;
92 ca->hif_event = MANTIS_SBUF_OPDONE;
93 wake_up(&ca->hif_opdone_wq);
94 }
95}
96
97int mantis_evmgr_init(struct mantis_ca *ca)
98{
99 struct mantis_pci *mantis = ca->ca_priv;
100
101 dprintk(MANTIS_DEBUG, 1, "Initializing Mantis Host I/F Event manager");
102 INIT_WORK(&ca->hif_evm_work, mantis_hifevm_work);
103 mantis_pcmcia_init(ca);
104 schedule_work(&ca->hif_evm_work);
105 mantis_hif_init(ca);
106 return 0;
107}
108
109void mantis_evmgr_exit(struct mantis_ca *ca)
110{
111 struct mantis_pci *mantis = ca->ca_priv;
112
113 dprintk(MANTIS_DEBUG, 1, "Mantis Host I/F Event manager exiting");
114 flush_scheduled_work();
115 mantis_hif_exit(ca);
116 mantis_pcmcia_exit(ca);
117}
diff --git a/drivers/media/dvb/mantis/mantis_hif.c b/drivers/media/dvb/mantis/mantis_hif.c
new file mode 100644
index 000000000000..7477dac628b4
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_hif.c
@@ -0,0 +1,240 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/kernel.h>
22#include <linux/signal.h>
23#include <linux/sched.h>
24
25#include <linux/signal.h>
26#include <linux/sched.h>
27#include <linux/interrupt.h>
28
29#include "dmxdev.h"
30#include "dvbdev.h"
31#include "dvb_demux.h"
32#include "dvb_frontend.h"
33#include "dvb_net.h"
34
35#include "mantis_common.h"
36
37#include "mantis_hif.h"
38#include "mantis_link.h" /* temporary due to physical layer stuff */
39
40#include "mantis_reg.h"
41
42
43static int mantis_hif_sbuf_opdone_wait(struct mantis_ca *ca)
44{
45 struct mantis_pci *mantis = ca->ca_priv;
46 int rc = 0;
47
48 if (wait_event_timeout(ca->hif_opdone_wq,
49 ca->hif_event & MANTIS_SBUF_OPDONE,
50 msecs_to_jiffies(500)) == -ERESTARTSYS) {
51
52 dprintk(MANTIS_ERROR, 1, "Adapter(%d) Slot(0): Smart buffer operation timeout !", mantis->num);
53 rc = -EREMOTEIO;
54 }
55 dprintk(MANTIS_DEBUG, 1, "Smart Buffer Operation complete");
56 ca->hif_event &= ~MANTIS_SBUF_OPDONE;
57 return rc;
58}
59
60static int mantis_hif_write_wait(struct mantis_ca *ca)
61{
62 struct mantis_pci *mantis = ca->ca_priv;
63 u32 opdone = 0, timeout = 0;
64 int rc = 0;
65
66 if (wait_event_timeout(ca->hif_write_wq,
67 mantis->gpif_status & MANTIS_GPIF_WRACK,
68 msecs_to_jiffies(500)) == -ERESTARTSYS) {
69
70 dprintk(MANTIS_ERROR, 1, "Adapter(%d) Slot(0): Write ACK timed out !", mantis->num);
71 rc = -EREMOTEIO;
72 }
73 dprintk(MANTIS_DEBUG, 1, "Write Acknowledged");
74 mantis->gpif_status &= ~MANTIS_GPIF_WRACK;
75 while (!opdone) {
76 opdone = (mmread(MANTIS_GPIF_STATUS) & MANTIS_SBUF_OPDONE);
77 udelay(500);
78 timeout++;
79 if (timeout > 100) {
80 dprintk(MANTIS_ERROR, 1, "Adater(%d) Slot(0): Write operation timed out!", mantis->num);
81 rc = -ETIMEDOUT;
82 break;
83 }
84 }
85 dprintk(MANTIS_DEBUG, 1, "HIF Write success");
86 return rc;
87}
88
89
90int mantis_hif_read_mem(struct mantis_ca *ca, u32 addr)
91{
92 struct mantis_pci *mantis = ca->ca_priv;
93 u32 hif_addr = 0, data, count = 4;
94
95 dprintk(MANTIS_DEBUG, 1, "Adapter(%d) Slot(0): Request HIF Mem Read", mantis->num);
96 mutex_lock(&ca->ca_lock);
97 hif_addr &= ~MANTIS_GPIF_PCMCIAREG;
98 hif_addr &= ~MANTIS_GPIF_PCMCIAIOM;
99 hif_addr |= MANTIS_HIF_STATUS;
100 hif_addr |= addr;
101
102 mmwrite(hif_addr, MANTIS_GPIF_BRADDR);
103 mmwrite(count, MANTIS_GPIF_BRBYTES);
104 udelay(20);
105 mmwrite(hif_addr | MANTIS_GPIF_HIFRDWRN, MANTIS_GPIF_ADDR);
106
107 if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
108 dprintk(MANTIS_ERROR, 1, "Adapter(%d) Slot(0): GPIF Smart Buffer operation failed", mantis->num);
109 mutex_unlock(&ca->ca_lock);
110 return -EREMOTEIO;
111 }
112 data = mmread(MANTIS_GPIF_DIN);
113 mutex_unlock(&ca->ca_lock);
114 dprintk(MANTIS_DEBUG, 1, "Mem Read: 0x%02x", data);
115 return (data >> 24) & 0xff;
116}
117
118int mantis_hif_write_mem(struct mantis_ca *ca, u32 addr, u8 data)
119{
120 struct mantis_slot *slot = ca->slot;
121 struct mantis_pci *mantis = ca->ca_priv;
122 u32 hif_addr = 0;
123
124 dprintk(MANTIS_DEBUG, 1, "Adapter(%d) Slot(0): Request HIF Mem Write", mantis->num);
125 mutex_lock(&ca->ca_lock);
126 hif_addr &= ~MANTIS_GPIF_HIFRDWRN;
127 hif_addr &= ~MANTIS_GPIF_PCMCIAREG;
128 hif_addr &= ~MANTIS_GPIF_PCMCIAIOM;
129 hif_addr |= MANTIS_HIF_STATUS;
130 hif_addr |= addr;
131
132 mmwrite(slot->slave_cfg, MANTIS_GPIF_CFGSLA); /* Slot0 alone for now */
133 mmwrite(hif_addr, MANTIS_GPIF_ADDR);
134 mmwrite(data, MANTIS_GPIF_DOUT);
135
136 if (mantis_hif_write_wait(ca) != 0) {
137 dprintk(MANTIS_ERROR, 1, "Adapter(%d) Slot(0): HIF Smart Buffer operation failed", mantis->num);
138 mutex_unlock(&ca->ca_lock);
139 return -EREMOTEIO;
140 }
141 dprintk(MANTIS_DEBUG, 1, "Mem Write: (0x%02x to 0x%02x)", data, addr);
142 mutex_unlock(&ca->ca_lock);
143
144 return 0;
145}
146
147int mantis_hif_read_iom(struct mantis_ca *ca, u32 addr)
148{
149 struct mantis_pci *mantis = ca->ca_priv;
150 u32 data, hif_addr = 0;
151
152 dprintk(MANTIS_DEBUG, 1, "Adapter(%d) Slot(0): Request HIF I/O Read", mantis->num);
153 mutex_lock(&ca->ca_lock);
154 hif_addr &= ~MANTIS_GPIF_PCMCIAREG;
155 hif_addr |= MANTIS_GPIF_PCMCIAIOM;
156 hif_addr |= MANTIS_HIF_STATUS;
157 hif_addr |= addr;
158
159 mmwrite(hif_addr, MANTIS_GPIF_BRADDR);
160 mmwrite(1, MANTIS_GPIF_BRBYTES);
161 udelay(20);
162 mmwrite(hif_addr | MANTIS_GPIF_HIFRDWRN, MANTIS_GPIF_ADDR);
163
164 if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
165 dprintk(MANTIS_ERROR, 1, "Adapter(%d) Slot(0): HIF Smart Buffer operation failed", mantis->num);
166 mutex_unlock(&ca->ca_lock);
167 return -EREMOTEIO;
168 }
169 data = mmread(MANTIS_GPIF_DIN);
170 dprintk(MANTIS_DEBUG, 1, "I/O Read: 0x%02x", data);
171 udelay(50);
172 mutex_unlock(&ca->ca_lock);
173
174 return (u8) data;
175}
176
177int mantis_hif_write_iom(struct mantis_ca *ca, u32 addr, u8 data)
178{
179 struct mantis_pci *mantis = ca->ca_priv;
180 u32 hif_addr = 0;
181
182 dprintk(MANTIS_DEBUG, 1, "Adapter(%d) Slot(0): Request HIF I/O Write", mantis->num);
183 mutex_lock(&ca->ca_lock);
184 hif_addr &= ~MANTIS_GPIF_PCMCIAREG;
185 hif_addr &= ~MANTIS_GPIF_HIFRDWRN;
186 hif_addr |= MANTIS_GPIF_PCMCIAIOM;
187 hif_addr |= MANTIS_HIF_STATUS;
188 hif_addr |= addr;
189
190 mmwrite(hif_addr, MANTIS_GPIF_ADDR);
191 mmwrite(data, MANTIS_GPIF_DOUT);
192
193 if (mantis_hif_write_wait(ca) != 0) {
194 dprintk(MANTIS_ERROR, 1, "Adapter(%d) Slot(0): HIF Smart Buffer operation failed", mantis->num);
195 mutex_unlock(&ca->ca_lock);
196 return -EREMOTEIO;
197 }
198 dprintk(MANTIS_DEBUG, 1, "I/O Write: (0x%02x to 0x%02x)", data, addr);
199 mutex_unlock(&ca->ca_lock);
200 udelay(50);
201
202 return 0;
203}
204
205int mantis_hif_init(struct mantis_ca *ca)
206{
207 struct mantis_slot *slot = ca->slot;
208 struct mantis_pci *mantis = ca->ca_priv;
209 u32 irqcfg;
210
211 slot[0].slave_cfg = 0x70773028;
212 dprintk(MANTIS_ERROR, 1, "Adapter(%d) Initializing Mantis Host Interface", mantis->num);
213
214 mutex_lock(&ca->ca_lock);
215 irqcfg = mmread(MANTIS_GPIF_IRQCFG);
216 irqcfg = MANTIS_MASK_BRRDY |
217 MANTIS_MASK_WRACK |
218 MANTIS_MASK_EXTIRQ |
219 MANTIS_MASK_WSTO |
220 MANTIS_MASK_OTHERR |
221 MANTIS_MASK_OVFLW;
222
223 mmwrite(irqcfg, MANTIS_GPIF_IRQCFG);
224 mutex_unlock(&ca->ca_lock);
225
226 return 0;
227}
228
229void mantis_hif_exit(struct mantis_ca *ca)
230{
231 struct mantis_pci *mantis = ca->ca_priv;
232 u32 irqcfg;
233
234 dprintk(MANTIS_ERROR, 1, "Adapter(%d) Exiting Mantis Host Interface", mantis->num);
235 mutex_lock(&ca->ca_lock);
236 irqcfg = mmread(MANTIS_GPIF_IRQCFG);
237 irqcfg &= ~MANTIS_MASK_BRRDY;
238 mmwrite(irqcfg, MANTIS_GPIF_IRQCFG);
239 mutex_unlock(&ca->ca_lock);
240}
diff --git a/drivers/media/dvb/mantis/mantis_hif.h b/drivers/media/dvb/mantis/mantis_hif.h
new file mode 100644
index 000000000000..9094f9ed2362
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_hif.h
@@ -0,0 +1,29 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_HIF_H
22#define __MANTIS_HIF_H
23
24#define MANTIS_HIF_MEMRD 1
25#define MANTIS_HIF_MEMWR 2
26#define MANTIS_HIF_IOMRD 3
27#define MANTIS_HIF_IOMWR 4
28
29#endif /* __MANTIS_HIF_H */
diff --git a/drivers/media/dvb/mantis/mantis_i2c.c b/drivers/media/dvb/mantis/mantis_i2c.c
new file mode 100644
index 000000000000..7870bcf9689a
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_i2c.c
@@ -0,0 +1,267 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <asm/io.h>
22#include <linux/ioport.h>
23#include <linux/pci.h>
24#include <linux/i2c.h>
25
26#include "dmxdev.h"
27#include "dvbdev.h"
28#include "dvb_demux.h"
29#include "dvb_frontend.h"
30#include "dvb_net.h"
31
32#include "mantis_common.h"
33#include "mantis_reg.h"
34#include "mantis_i2c.h"
35
36#define TRIALS 10000
37
38static int mantis_i2c_read(struct mantis_pci *mantis, const struct i2c_msg *msg)
39{
40 u32 rxd, i, stat, trials;
41
42 dprintk(MANTIS_INFO, 0, " %s: Address=[0x%02x] <R>[ ",
43 __func__, msg->addr);
44
45 for (i = 0; i < msg->len; i++) {
46 rxd = (msg->addr << 25) | (1 << 24)
47 | MANTIS_I2C_RATE_3
48 | MANTIS_I2C_STOP
49 | MANTIS_I2C_PGMODE;
50
51 if (i == (msg->len - 1))
52 rxd &= ~MANTIS_I2C_STOP;
53
54 mmwrite(MANTIS_INT_I2CDONE, MANTIS_INT_STAT);
55 mmwrite(rxd, MANTIS_I2CDATA_CTL);
56
57 /* wait for xfer completion */
58 for (trials = 0; trials < TRIALS; trials++) {
59 stat = mmread(MANTIS_INT_STAT);
60 if (stat & MANTIS_INT_I2CDONE)
61 break;
62 }
63
64 dprintk(MANTIS_TMG, 0, "I2CDONE: trials=%d\n", trials);
65
66 /* wait for xfer completion */
67 for (trials = 0; trials < TRIALS; trials++) {
68 stat = mmread(MANTIS_INT_STAT);
69 if (stat & MANTIS_INT_I2CRACK)
70 break;
71 }
72
73 dprintk(MANTIS_TMG, 0, "I2CRACK: trials=%d\n", trials);
74
75 rxd = mmread(MANTIS_I2CDATA_CTL);
76 msg->buf[i] = (u8)((rxd >> 8) & 0xFF);
77 dprintk(MANTIS_INFO, 0, "%02x ", msg->buf[i]);
78 }
79 dprintk(MANTIS_INFO, 0, "]\n");
80
81 return 0;
82}
83
84static int mantis_i2c_write(struct mantis_pci *mantis, const struct i2c_msg *msg)
85{
86 int i;
87 u32 txd = 0, stat, trials;
88
89 dprintk(MANTIS_INFO, 0, " %s: Address=[0x%02x] <W>[ ",
90 __func__, msg->addr);
91
92 for (i = 0; i < msg->len; i++) {
93 dprintk(MANTIS_INFO, 0, "%02x ", msg->buf[i]);
94 txd = (msg->addr << 25) | (msg->buf[i] << 8)
95 | MANTIS_I2C_RATE_3
96 | MANTIS_I2C_STOP
97 | MANTIS_I2C_PGMODE;
98
99 if (i == (msg->len - 1))
100 txd &= ~MANTIS_I2C_STOP;
101
102 mmwrite(MANTIS_INT_I2CDONE, MANTIS_INT_STAT);
103 mmwrite(txd, MANTIS_I2CDATA_CTL);
104
105 /* wait for xfer completion */
106 for (trials = 0; trials < TRIALS; trials++) {
107 stat = mmread(MANTIS_INT_STAT);
108 if (stat & MANTIS_INT_I2CDONE)
109 break;
110 }
111
112 dprintk(MANTIS_TMG, 0, "I2CDONE: trials=%d\n", trials);
113
114 /* wait for xfer completion */
115 for (trials = 0; trials < TRIALS; trials++) {
116 stat = mmread(MANTIS_INT_STAT);
117 if (stat & MANTIS_INT_I2CRACK)
118 break;
119 }
120
121 dprintk(MANTIS_TMG, 0, "I2CRACK: trials=%d\n", trials);
122 }
123 dprintk(MANTIS_INFO, 0, "]\n");
124
125 return 0;
126}
127
128static int mantis_i2c_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int num)
129{
130 int ret = 0, i = 0, trials;
131 u32 stat, data, txd;
132 struct mantis_pci *mantis;
133 struct mantis_hwconfig *config;
134
135 mantis = i2c_get_adapdata(adapter);
136 BUG_ON(!mantis);
137 config = mantis->hwconfig;
138 BUG_ON(!config);
139
140 dprintk(MANTIS_DEBUG, 1, "Messages:%d", num);
141 mutex_lock(&mantis->i2c_lock);
142
143 while (i < num) {
144 /* Byte MODE */
145 if ((config->i2c_mode & MANTIS_BYTE_MODE) &&
146 ((i + 1) < num) &&
147 (msgs[i].len < 2) &&
148 (msgs[i + 1].len < 2) &&
149 (msgs[i + 1].flags & I2C_M_RD)) {
150
151 dprintk(MANTIS_DEBUG, 0, " Byte MODE:\n");
152
153 /* Read operation */
154 txd = msgs[i].addr << 25 | (0x1 << 24)
155 | (msgs[i].buf[0] << 16)
156 | MANTIS_I2C_RATE_3;
157
158 mmwrite(txd, MANTIS_I2CDATA_CTL);
159 /* wait for xfer completion */
160 for (trials = 0; trials < TRIALS; trials++) {
161 stat = mmread(MANTIS_INT_STAT);
162 if (stat & MANTIS_INT_I2CDONE)
163 break;
164 }
165
166 /* check for xfer completion */
167 if (stat & MANTIS_INT_I2CDONE) {
168 /* check xfer was acknowledged */
169 if (stat & MANTIS_INT_I2CRACK) {
170 data = mmread(MANTIS_I2CDATA_CTL);
171 msgs[i + 1].buf[0] = (data >> 8) & 0xff;
172 dprintk(MANTIS_DEBUG, 0, " Byte <%d> RXD=0x%02x [%02x]\n", 0x0, data, msgs[i + 1].buf[0]);
173 } else {
174 /* I/O error */
175 dprintk(MANTIS_ERROR, 1, " I/O error, LINE:%d", __LINE__);
176 ret = -EIO;
177 break;
178 }
179 } else {
180 /* I/O error */
181 dprintk(MANTIS_ERROR, 1, " I/O error, LINE:%d", __LINE__);
182 ret = -EIO;
183 break;
184 }
185 i += 2; /* Write/Read operation in one go */
186 }
187
188 if (i < num) {
189 if (msgs[i].flags & I2C_M_RD)
190 ret = mantis_i2c_read(mantis, &msgs[i]);
191 else
192 ret = mantis_i2c_write(mantis, &msgs[i]);
193
194 i++;
195 if (ret < 0)
196 goto bail_out;
197 }
198
199 }
200
201 mutex_unlock(&mantis->i2c_lock);
202
203 return num;
204
205bail_out:
206 mutex_unlock(&mantis->i2c_lock);
207 return ret;
208}
209
210static u32 mantis_i2c_func(struct i2c_adapter *adapter)
211{
212 return I2C_FUNC_SMBUS_EMUL;
213}
214
215static struct i2c_algorithm mantis_algo = {
216 .master_xfer = mantis_i2c_xfer,
217 .functionality = mantis_i2c_func,
218};
219
220int __devinit mantis_i2c_init(struct mantis_pci *mantis)
221{
222 u32 intstat, intmask;
223 struct i2c_adapter *i2c_adapter = &mantis->adapter;
224 struct pci_dev *pdev = mantis->pdev;
225
226 init_waitqueue_head(&mantis->i2c_wq);
227 mutex_init(&mantis->i2c_lock);
228 strncpy(i2c_adapter->name, "Mantis I2C", sizeof(i2c_adapter->name));
229 i2c_set_adapdata(i2c_adapter, mantis);
230
231 i2c_adapter->owner = THIS_MODULE;
232 i2c_adapter->class = I2C_CLASS_TV_DIGITAL;
233 i2c_adapter->algo = &mantis_algo;
234 i2c_adapter->algo_data = NULL;
235 i2c_adapter->timeout = 500;
236 i2c_adapter->retries = 3;
237 i2c_adapter->dev.parent = &pdev->dev;
238
239 mantis->i2c_rc = i2c_add_adapter(i2c_adapter);
240 if (mantis->i2c_rc < 0)
241 return mantis->i2c_rc;
242
243 dprintk(MANTIS_DEBUG, 1, "Initializing I2C ..");
244
245 intstat = mmread(MANTIS_INT_STAT);
246 intmask = mmread(MANTIS_INT_MASK);
247 mmwrite(intstat, MANTIS_INT_STAT);
248 dprintk(MANTIS_DEBUG, 1, "Disabling I2C interrupt");
249 intmask = mmread(MANTIS_INT_MASK);
250 mmwrite((intmask & ~MANTIS_INT_I2CDONE), MANTIS_INT_MASK);
251
252 return 0;
253}
254EXPORT_SYMBOL_GPL(mantis_i2c_init);
255
256int mantis_i2c_exit(struct mantis_pci *mantis)
257{
258 u32 intmask;
259
260 dprintk(MANTIS_DEBUG, 1, "Disabling I2C interrupt");
261 intmask = mmread(MANTIS_INT_MASK);
262 mmwrite((intmask & ~MANTIS_INT_I2CDONE), MANTIS_INT_MASK);
263
264 dprintk(MANTIS_DEBUG, 1, "Removing I2C adapter");
265 return i2c_del_adapter(&mantis->adapter);
266}
267EXPORT_SYMBOL_GPL(mantis_i2c_exit);
diff --git a/drivers/media/dvb/mantis/mantis_i2c.h b/drivers/media/dvb/mantis/mantis_i2c.h
new file mode 100644
index 000000000000..1342df2faed8
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_i2c.h
@@ -0,0 +1,30 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_I2C_H
22#define __MANTIS_I2C_H
23
24#define I2C_STOP (1 << 0)
25#define I2C_READ (1 << 1)
26
27extern int mantis_i2c_init(struct mantis_pci *mantis);
28extern int mantis_i2c_exit(struct mantis_pci *mantis);
29
30#endif /* __MANTIS_I2C_H */
diff --git a/drivers/media/dvb/mantis/mantis_input.c b/drivers/media/dvb/mantis/mantis_input.c
new file mode 100644
index 000000000000..6a9df779441f
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_input.c
@@ -0,0 +1,148 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/input.h>
22#include <media/ir-common.h>
23#include <linux/pci.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "mantis_common.h"
32#include "mantis_reg.h"
33#include "mantis_uart.h"
34
35static struct ir_scancode mantis_ir_table[] = {
36 { 0x29, KEY_POWER },
37 { 0x28, KEY_FAVORITES },
38 { 0x30, KEY_TEXT },
39 { 0x17, KEY_INFO }, /* Preview */
40 { 0x23, KEY_EPG },
41 { 0x3b, KEY_F22 }, /* Record List */
42 { 0x3c, KEY_1 },
43 { 0x3e, KEY_2 },
44 { 0x39, KEY_3 },
45 { 0x36, KEY_4 },
46 { 0x22, KEY_5 },
47 { 0x20, KEY_6 },
48 { 0x32, KEY_7 },
49 { 0x26, KEY_8 },
50 { 0x24, KEY_9 },
51 { 0x2a, KEY_0 },
52
53 { 0x33, KEY_CANCEL },
54 { 0x2c, KEY_BACK },
55 { 0x15, KEY_CLEAR },
56 { 0x3f, KEY_TAB },
57 { 0x10, KEY_ENTER },
58 { 0x14, KEY_UP },
59 { 0x0d, KEY_RIGHT },
60 { 0x0e, KEY_DOWN },
61 { 0x11, KEY_LEFT },
62
63 { 0x21, KEY_VOLUMEUP },
64 { 0x35, KEY_VOLUMEDOWN },
65 { 0x3d, KEY_CHANNELDOWN },
66 { 0x3a, KEY_CHANNELUP },
67 { 0x2e, KEY_RECORD },
68 { 0x2b, KEY_PLAY },
69 { 0x13, KEY_PAUSE },
70 { 0x25, KEY_STOP },
71
72 { 0x1f, KEY_REWIND },
73 { 0x2d, KEY_FASTFORWARD },
74 { 0x1e, KEY_PREVIOUS }, /* Replay |< */
75 { 0x1d, KEY_NEXT }, /* Skip >| */
76
77 { 0x0b, KEY_CAMERA }, /* Capture */
78 { 0x0f, KEY_LANGUAGE }, /* SAP */
79 { 0x18, KEY_MODE }, /* PIP */
80 { 0x12, KEY_ZOOM }, /* Full screen */
81 { 0x1c, KEY_SUBTITLE },
82 { 0x2f, KEY_MUTE },
83 { 0x16, KEY_F20 }, /* L/R */
84 { 0x38, KEY_F21 }, /* Hibernate */
85
86 { 0x37, KEY_SWITCHVIDEOMODE }, /* A/V */
87 { 0x31, KEY_AGAIN }, /* Recall */
88 { 0x1a, KEY_KPPLUS }, /* Zoom+ */
89 { 0x19, KEY_KPMINUS }, /* Zoom- */
90 { 0x27, KEY_RED },
91 { 0x0C, KEY_GREEN },
92 { 0x01, KEY_YELLOW },
93 { 0x00, KEY_BLUE },
94};
95
96struct ir_scancode_table ir_mantis = {
97 .scan = mantis_ir_table,
98 .size = ARRAY_SIZE(mantis_ir_table),
99};
100EXPORT_SYMBOL_GPL(ir_mantis);
101
102int mantis_input_init(struct mantis_pci *mantis)
103{
104 struct input_dev *rc;
105 struct ir_input_state rc_state;
106 char name[80], dev[80];
107 int err;
108
109 rc = input_allocate_device();
110 if (!rc) {
111 dprintk(MANTIS_ERROR, 1, "Input device allocate failed");
112 return -ENOMEM;
113 }
114
115 sprintf(name, "Mantis %s IR receiver", mantis->hwconfig->model_name);
116 sprintf(dev, "pci-%s/ir0", pci_name(mantis->pdev));
117
118 rc->name = name;
119 rc->phys = dev;
120
121 ir_input_init(rc, &rc_state, IR_TYPE_OTHER);
122
123 rc->id.bustype = BUS_PCI;
124 rc->id.vendor = mantis->vendor_id;
125 rc->id.product = mantis->device_id;
126 rc->id.version = 1;
127 rc->dev = mantis->pdev->dev;
128
129 err = ir_input_register(rc, &ir_mantis);
130 if (err) {
131 dprintk(MANTIS_ERROR, 1, "IR device registration failed, ret = %d", err);
132 input_free_device(rc);
133 return -ENODEV;
134 }
135
136 mantis->rc = rc;
137
138 return 0;
139}
140
141int mantis_exit(struct mantis_pci *mantis)
142{
143 struct input_dev *rc = mantis->rc;
144
145 ir_input_unregister(rc);
146
147 return 0;
148}
diff --git a/drivers/media/dvb/mantis/mantis_ioc.c b/drivers/media/dvb/mantis/mantis_ioc.c
new file mode 100644
index 000000000000..de148ded52d8
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_ioc.c
@@ -0,0 +1,130 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/kernel.h>
22#include <linux/i2c.h>
23
24#include <linux/signal.h>
25#include <linux/sched.h>
26#include <linux/interrupt.h>
27
28#include "dmxdev.h"
29#include "dvbdev.h"
30#include "dvb_demux.h"
31#include "dvb_frontend.h"
32#include "dvb_net.h"
33
34#include "mantis_common.h"
35#include "mantis_reg.h"
36#include "mantis_ioc.h"
37
38static int read_eeprom_bytes(struct mantis_pci *mantis, u8 reg, u8 *data, u8 length)
39{
40 struct i2c_adapter *adapter = &mantis->adapter;
41 int err;
42 u8 buf = reg;
43
44 struct i2c_msg msg[] = {
45 { .addr = 0x50, .flags = 0, .buf = &buf, .len = 1 },
46 { .addr = 0x50, .flags = I2C_M_RD, .buf = data, .len = length },
47 };
48
49 err = i2c_transfer(adapter, msg, 2);
50 if (err < 0) {
51 dprintk(MANTIS_ERROR, 1, "ERROR: i2c read: < err=%i d0=0x%02x d1=0x%02x >",
52 err, data[0], data[1]);
53
54 return err;
55 }
56
57 return 0;
58}
59int mantis_get_mac(struct mantis_pci *mantis)
60{
61 int err;
62 u8 mac_addr[6] = {0};
63
64 err = read_eeprom_bytes(mantis, 0x08, mac_addr, 6);
65 if (err < 0) {
66 dprintk(MANTIS_ERROR, 1, "ERROR: Mantis EEPROM read error <%d>", err);
67
68 return err;
69 }
70
71 dprintk(MANTIS_ERROR, 0,
72 " MAC Address=[%02x:%02x:%02x:%02x:%02x:%02x]\n",
73 mac_addr[0],
74 mac_addr[1],
75 mac_addr[2],
76 mac_addr[3],
77 mac_addr[4],
78 mac_addr[5]);
79
80 return 0;
81}
82EXPORT_SYMBOL_GPL(mantis_get_mac);
83
84/* Turn the given bit on or off. */
85void gpio_set_bits(struct mantis_pci *mantis, u32 bitpos, u8 value)
86{
87 u32 cur;
88
89 dprintk(MANTIS_DEBUG, 1, "Set Bit <%d> to <%d>", bitpos, value);
90 cur = mmread(MANTIS_GPIF_ADDR);
91 if (value)
92 mantis->gpio_status = cur | (1 << bitpos);
93 else
94 mantis->gpio_status = cur & (~(1 << bitpos));
95
96 dprintk(MANTIS_DEBUG, 1, "GPIO Value <%02x>", mantis->gpio_status);
97 mmwrite(mantis->gpio_status, MANTIS_GPIF_ADDR);
98 mmwrite(0x00, MANTIS_GPIF_DOUT);
99}
100EXPORT_SYMBOL_GPL(gpio_set_bits);
101
102int mantis_stream_control(struct mantis_pci *mantis, enum mantis_stream_control stream_ctl)
103{
104 u32 reg;
105
106 reg = mmread(MANTIS_CONTROL);
107 switch (stream_ctl) {
108 case STREAM_TO_HIF:
109 dprintk(MANTIS_DEBUG, 1, "Set stream to HIF");
110 reg &= 0xff - MANTIS_BYPASS;
111 mmwrite(reg, MANTIS_CONTROL);
112 reg |= MANTIS_BYPASS;
113 mmwrite(reg, MANTIS_CONTROL);
114 break;
115
116 case STREAM_TO_CAM:
117 dprintk(MANTIS_DEBUG, 1, "Set stream to CAM");
118 reg |= MANTIS_BYPASS;
119 mmwrite(reg, MANTIS_CONTROL);
120 reg &= 0xff - MANTIS_BYPASS;
121 mmwrite(reg, MANTIS_CONTROL);
122 break;
123 default:
124 dprintk(MANTIS_ERROR, 1, "Unknown MODE <%02x>", stream_ctl);
125 return -1;
126 }
127
128 return 0;
129}
130EXPORT_SYMBOL_GPL(mantis_stream_control);
diff --git a/drivers/media/dvb/mantis/mantis_ioc.h b/drivers/media/dvb/mantis/mantis_ioc.h
new file mode 100644
index 000000000000..188fe5a81614
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_ioc.h
@@ -0,0 +1,51 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_IOC_H
22#define __MANTIS_IOC_H
23
24#define GPIF_A00 0x00
25#define GPIF_A01 0x01
26#define GPIF_A02 0x02
27#define GPIF_A03 0x03
28#define GPIF_A04 0x04
29#define GPIF_A05 0x05
30#define GPIF_A06 0x06
31#define GPIF_A07 0x07
32#define GPIF_A08 0x08
33#define GPIF_A09 0x09
34#define GPIF_A10 0x0a
35#define GPIF_A11 0x0b
36
37#define GPIF_A12 0x0c
38#define GPIF_A13 0x0d
39#define GPIF_A14 0x0e
40
41enum mantis_stream_control {
42 STREAM_TO_HIF = 0,
43 STREAM_TO_CAM
44};
45
46extern int mantis_get_mac(struct mantis_pci *mantis);
47extern void gpio_set_bits(struct mantis_pci *mantis, u32 bitpos, u8 value);
48
49extern int mantis_stream_control(struct mantis_pci *mantis, enum mantis_stream_control stream_ctl);
50
51#endif /* __MANTIS_IOC_H */
diff --git a/drivers/media/dvb/mantis/mantis_link.h b/drivers/media/dvb/mantis/mantis_link.h
new file mode 100644
index 000000000000..2a814774a001
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_link.h
@@ -0,0 +1,83 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_LINK_H
22#define __MANTIS_LINK_H
23
24#include <linux/mutex.h>
25#include <linux/workqueue.h>
26#include "dvb_ca_en50221.h"
27
28enum mantis_sbuf_status {
29 MANTIS_SBUF_DATA_AVAIL = 1,
30 MANTIS_SBUF_DATA_EMPTY = 2,
31 MANTIS_SBUF_DATA_OVFLW = 3
32};
33
34struct mantis_slot {
35 u32 timeout;
36 u32 slave_cfg;
37 u32 bar;
38};
39
40/* Physical layer */
41enum mantis_slot_state {
42 MODULE_INSERTED = 3,
43 MODULE_XTRACTED = 4
44};
45
46struct mantis_ca {
47 struct mantis_slot slot[4];
48
49 struct work_struct hif_evm_work;
50
51 u32 hif_event;
52 wait_queue_head_t hif_opdone_wq;
53 wait_queue_head_t hif_brrdyw_wq;
54 wait_queue_head_t hif_data_wq;
55 wait_queue_head_t hif_write_wq; /* HIF Write op */
56
57 enum mantis_sbuf_status sbuf_status;
58
59 enum mantis_slot_state slot_state;
60
61 void *ca_priv;
62
63 struct dvb_ca_en50221 en50221;
64 struct mutex ca_lock;
65};
66
67/* CA */
68extern void mantis_event_cam_plugin(struct mantis_ca *ca);
69extern void mantis_event_cam_unplug(struct mantis_ca *ca);
70extern int mantis_pcmcia_init(struct mantis_ca *ca);
71extern void mantis_pcmcia_exit(struct mantis_ca *ca);
72extern int mantis_evmgr_init(struct mantis_ca *ca);
73extern void mantis_evmgr_exit(struct mantis_ca *ca);
74
75/* HIF */
76extern int mantis_hif_init(struct mantis_ca *ca);
77extern void mantis_hif_exit(struct mantis_ca *ca);
78extern int mantis_hif_read_mem(struct mantis_ca *ca, u32 addr);
79extern int mantis_hif_write_mem(struct mantis_ca *ca, u32 addr, u8 data);
80extern int mantis_hif_read_iom(struct mantis_ca *ca, u32 addr);
81extern int mantis_hif_write_iom(struct mantis_ca *ca, u32 addr, u8 data);
82
83#endif /* __MANTIS_LINK_H */
diff --git a/drivers/media/dvb/mantis/mantis_pci.c b/drivers/media/dvb/mantis/mantis_pci.c
new file mode 100644
index 000000000000..6c7534af6b44
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_pci.c
@@ -0,0 +1,177 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/module.h>
22#include <linux/moduleparam.h>
23#include <linux/kernel.h>
24#include <asm/io.h>
25#include <asm/pgtable.h>
26#include <asm/page.h>
27#include <linux/kmod.h>
28#include <linux/vmalloc.h>
29#include <linux/init.h>
30#include <linux/device.h>
31#include <linux/pci.h>
32
33#include <asm/irq.h>
34#include <linux/signal.h>
35#include <linux/sched.h>
36#include <linux/interrupt.h>
37
38#include "dmxdev.h"
39#include "dvbdev.h"
40#include "dvb_demux.h"
41#include "dvb_frontend.h"
42#include "dvb_net.h"
43
44#include <asm/irq.h>
45#include <linux/signal.h>
46#include <linux/sched.h>
47#include <linux/interrupt.h>
48
49#include "mantis_common.h"
50#include "mantis_reg.h"
51#include "mantis_pci.h"
52
53#define DRIVER_NAME "Mantis Core"
54
55int __devinit mantis_pci_init(struct mantis_pci *mantis)
56{
57 u8 revision, latency;
58 struct mantis_hwconfig *config = mantis->hwconfig;
59 struct pci_dev *pdev = mantis->pdev;
60 int err, ret = 0;
61
62 dprintk(MANTIS_ERROR, 0, "found a %s PCI %s device on (%02x:%02x.%x),\n",
63 config->model_name,
64 config->dev_type,
65 mantis->pdev->bus->number,
66 PCI_SLOT(mantis->pdev->devfn),
67 PCI_FUNC(mantis->pdev->devfn));
68
69 err = pci_enable_device(pdev);
70 if (err != 0) {
71 ret = -ENODEV;
72 dprintk(MANTIS_ERROR, 1, "ERROR: PCI enable failed <%i>", err);
73 goto fail0;
74 }
75
76 err = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
77 if (err != 0) {
78 dprintk(MANTIS_ERROR, 1, "ERROR: Unable to obtain 32 bit DMA <%i>", err);
79 ret = -ENOMEM;
80 goto fail1;
81 }
82
83 pci_set_master(pdev);
84
85 if (!request_mem_region(pci_resource_start(pdev, 0),
86 pci_resource_len(pdev, 0),
87 DRIVER_NAME)) {
88
89 dprintk(MANTIS_ERROR, 1, "ERROR: BAR0 Request failed !");
90 ret = -ENODEV;
91 goto fail1;
92 }
93
94 mantis->mmio = ioremap(pci_resource_start(pdev, 0),
95 pci_resource_len(pdev, 0));
96
97 if (!mantis->mmio) {
98 dprintk(MANTIS_ERROR, 1, "ERROR: BAR0 remap failed !");
99 ret = -ENODEV;
100 goto fail2;
101 }
102
103 pci_read_config_byte(pdev, PCI_LATENCY_TIMER, &latency);
104 pci_read_config_byte(pdev, PCI_CLASS_REVISION, &revision);
105 mantis->latency = latency;
106 mantis->revision = revision;
107
108 dprintk(MANTIS_ERROR, 0, " Mantis Rev %d [%04x:%04x], ",
109 mantis->revision,
110 mantis->pdev->subsystem_vendor,
111 mantis->pdev->subsystem_device);
112
113 dprintk(MANTIS_ERROR, 0,
114 "irq: %d, latency: %d\n memory: 0x%lx, mmio: 0x%p\n",
115 mantis->pdev->irq,
116 mantis->latency,
117 mantis->mantis_addr,
118 mantis->mmio);
119
120 err = request_irq(pdev->irq,
121 config->irq_handler,
122 IRQF_SHARED,
123 DRIVER_NAME,
124 mantis);
125
126 if (err != 0) {
127
128 dprintk(MANTIS_ERROR, 1, "ERROR: IRQ registration failed ! <%d>", err);
129 ret = -ENODEV;
130 goto fail3;
131 }
132
133 pci_set_drvdata(pdev, mantis);
134 return ret;
135
136 /* Error conditions */
137fail3:
138 dprintk(MANTIS_ERROR, 1, "ERROR: <%d> I/O unmap", ret);
139 if (mantis->mmio)
140 iounmap(mantis->mmio);
141
142fail2:
143 dprintk(MANTIS_ERROR, 1, "ERROR: <%d> releasing regions", ret);
144 release_mem_region(pci_resource_start(pdev, 0),
145 pci_resource_len(pdev, 0));
146
147fail1:
148 dprintk(MANTIS_ERROR, 1, "ERROR: <%d> disabling device", ret);
149 pci_disable_device(pdev);
150
151fail0:
152 dprintk(MANTIS_ERROR, 1, "ERROR: <%d> exiting", ret);
153 pci_set_drvdata(pdev, NULL);
154 return ret;
155}
156EXPORT_SYMBOL_GPL(mantis_pci_init);
157
158void mantis_pci_exit(struct mantis_pci *mantis)
159{
160 struct pci_dev *pdev = mantis->pdev;
161
162 dprintk(MANTIS_NOTICE, 1, " mem: 0x%p", mantis->mmio);
163 free_irq(pdev->irq, mantis);
164 if (mantis->mmio) {
165 iounmap(mantis->mmio);
166 release_mem_region(pci_resource_start(pdev, 0),
167 pci_resource_len(pdev, 0));
168 }
169
170 pci_disable_device(pdev);
171 pci_set_drvdata(pdev, NULL);
172}
173EXPORT_SYMBOL_GPL(mantis_pci_exit);
174
175MODULE_DESCRIPTION("Mantis PCI DTV bridge driver");
176MODULE_AUTHOR("Manu Abraham");
177MODULE_LICENSE("GPL");
diff --git a/drivers/media/dvb/mantis/mantis_pci.h b/drivers/media/dvb/mantis/mantis_pci.h
new file mode 100644
index 000000000000..65f004519086
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_pci.h
@@ -0,0 +1,27 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_PCI_H
22#define __MANTIS_PCI_H
23
24extern int mantis_pci_init(struct mantis_pci *mantis);
25extern void mantis_pci_exit(struct mantis_pci *mantis);
26
27#endif /* __MANTIS_PCI_H */
diff --git a/drivers/media/dvb/mantis/mantis_pcmcia.c b/drivers/media/dvb/mantis/mantis_pcmcia.c
new file mode 100644
index 000000000000..5cb545b913f6
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_pcmcia.c
@@ -0,0 +1,120 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/kernel.h>
22
23#include <linux/signal.h>
24#include <linux/sched.h>
25#include <linux/interrupt.h>
26
27#include "dmxdev.h"
28#include "dvbdev.h"
29#include "dvb_demux.h"
30#include "dvb_frontend.h"
31#include "dvb_net.h"
32
33#include "mantis_common.h"
34#include "mantis_link.h" /* temporary due to physical layer stuff */
35#include "mantis_reg.h"
36
37/*
38 * If Slot state is already PLUG_IN event and we are called
39 * again, definitely it is jitter alone
40 */
41void mantis_event_cam_plugin(struct mantis_ca *ca)
42{
43 struct mantis_pci *mantis = ca->ca_priv;
44
45 u32 gpif_irqcfg;
46
47 if (ca->slot_state == MODULE_XTRACTED) {
48 dprintk(MANTIS_DEBUG, 1, "Event: CAM Plugged IN: Adapter(%d) Slot(0)", mantis->num);
49 udelay(50);
50 mmwrite(0xda000000, MANTIS_CARD_RESET);
51 gpif_irqcfg = mmread(MANTIS_GPIF_IRQCFG);
52 gpif_irqcfg |= MANTIS_MASK_PLUGOUT;
53 gpif_irqcfg &= ~MANTIS_MASK_PLUGIN;
54 mmwrite(gpif_irqcfg, MANTIS_GPIF_IRQCFG);
55 udelay(500);
56 ca->slot_state = MODULE_INSERTED;
57 }
58 udelay(100);
59}
60
61/*
62 * If Slot state is already UN_PLUG event and we are called
63 * again, definitely it is jitter alone
64 */
65void mantis_event_cam_unplug(struct mantis_ca *ca)
66{
67 struct mantis_pci *mantis = ca->ca_priv;
68
69 u32 gpif_irqcfg;
70
71 if (ca->slot_state == MODULE_INSERTED) {
72 dprintk(MANTIS_DEBUG, 1, "Event: CAM Unplugged: Adapter(%d) Slot(0)", mantis->num);
73 udelay(50);
74 mmwrite(0x00da0000, MANTIS_CARD_RESET);
75 gpif_irqcfg = mmread(MANTIS_GPIF_IRQCFG);
76 gpif_irqcfg |= MANTIS_MASK_PLUGIN;
77 gpif_irqcfg &= ~MANTIS_MASK_PLUGOUT;
78 mmwrite(gpif_irqcfg, MANTIS_GPIF_IRQCFG);
79 udelay(500);
80 ca->slot_state = MODULE_XTRACTED;
81 }
82 udelay(100);
83}
84
85int mantis_pcmcia_init(struct mantis_ca *ca)
86{
87 struct mantis_pci *mantis = ca->ca_priv;
88
89 u32 gpif_stat, card_stat;
90
91 mmwrite(mmread(MANTIS_INT_MASK) | MANTIS_INT_IRQ0, MANTIS_INT_MASK);
92 gpif_stat = mmread(MANTIS_GPIF_STATUS);
93 card_stat = mmread(MANTIS_GPIF_IRQCFG);
94
95 if (gpif_stat & MANTIS_GPIF_DETSTAT) {
96 dprintk(MANTIS_DEBUG, 1, "CAM found on Adapter(%d) Slot(0)", mantis->num);
97 mmwrite(card_stat | MANTIS_MASK_PLUGOUT, MANTIS_GPIF_IRQCFG);
98 ca->slot_state = MODULE_INSERTED;
99 dvb_ca_en50221_camchange_irq(&ca->en50221,
100 0,
101 DVB_CA_EN50221_CAMCHANGE_INSERTED);
102 } else {
103 dprintk(MANTIS_DEBUG, 1, "Empty Slot on Adapter(%d) Slot(0)", mantis->num);
104 mmwrite(card_stat | MANTIS_MASK_PLUGIN, MANTIS_GPIF_IRQCFG);
105 ca->slot_state = MODULE_XTRACTED;
106 dvb_ca_en50221_camchange_irq(&ca->en50221,
107 0,
108 DVB_CA_EN50221_CAMCHANGE_REMOVED);
109 }
110
111 return 0;
112}
113
114void mantis_pcmcia_exit(struct mantis_ca *ca)
115{
116 struct mantis_pci *mantis = ca->ca_priv;
117
118 mmwrite(mmread(MANTIS_GPIF_STATUS) & (~MANTIS_CARD_PLUGOUT | ~MANTIS_CARD_PLUGIN), MANTIS_GPIF_STATUS);
119 mmwrite(mmread(MANTIS_INT_MASK) & ~MANTIS_INT_IRQ0, MANTIS_INT_MASK);
120}
diff --git a/drivers/media/dvb/mantis/mantis_reg.h b/drivers/media/dvb/mantis/mantis_reg.h
new file mode 100644
index 000000000000..7761f9dc7fe0
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_reg.h
@@ -0,0 +1,197 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_REG_H
22#define __MANTIS_REG_H
23
24/* Interrupts */
25#define MANTIS_INT_STAT 0x00
26#define MANTIS_INT_MASK 0x04
27
28#define MANTIS_INT_RISCSTAT (0x0f << 28)
29#define MANTIS_INT_RISCEN (0x01 << 27)
30#define MANTIS_INT_I2CRACK (0x01 << 26)
31
32/* #define MANTIS_INT_GPIF (0xff << 12) */
33
34#define MANTIS_INT_PCMCIA7 (0x01 << 19)
35#define MANTIS_INT_PCMCIA6 (0x01 << 18)
36#define MANTIS_INT_PCMCIA5 (0x01 << 17)
37#define MANTIS_INT_PCMCIA4 (0x01 << 16)
38#define MANTIS_INT_PCMCIA3 (0x01 << 15)
39#define MANTIS_INT_PCMCIA2 (0x01 << 14)
40#define MANTIS_INT_PCMCIA1 (0x01 << 13)
41#define MANTIS_INT_PCMCIA0 (0x01 << 12)
42#define MANTIS_INT_IRQ1 (0x01 << 11)
43#define MANTIS_INT_IRQ0 (0x01 << 10)
44#define MANTIS_INT_OCERR (0x01 << 8)
45#define MANTIS_INT_PABORT (0x01 << 7)
46#define MANTIS_INT_RIPERR (0x01 << 6)
47#define MANTIS_INT_PPERR (0x01 << 5)
48#define MANTIS_INT_FTRGT (0x01 << 3)
49#define MANTIS_INT_RISCI (0x01 << 1)
50#define MANTIS_INT_I2CDONE (0x01 << 0)
51
52/* DMA */
53#define MANTIS_DMA_CTL 0x08
54#define MANTIS_GPIF_RD (0xff << 24)
55#define MANTIS_GPIF_WR (0xff << 16)
56#define MANTIS_CPU_DO (0x01 << 10)
57#define MANTIS_DRV_DO (0x01 << 9)
58#define MANTIS_I2C_RD (0x01 << 7)
59#define MANTIS_I2C_WR (0x01 << 6)
60#define MANTIS_DCAP_MODE (0x01 << 5)
61#define MANTIS_FIFO_TP_4 (0x00 << 3)
62#define MANTIS_FIFO_TP_8 (0x01 << 3)
63#define MANTIS_FIFO_TP_16 (0x02 << 3)
64#define MANTIS_FIFO_EN (0x01 << 2)
65#define MANTIS_DCAP_EN (0x01 << 1)
66#define MANTIS_RISC_EN (0x01 << 0)
67
68/* DEBUG */
69#define MANTIS_DEBUGREG 0x0c
70#define MANTIS_DATINV (0x0e << 7)
71#define MANTIS_TOP_DEBUGSEL (0x07 << 4)
72#define MANTIS_PCMCIA_DEBUGSEL (0x0f << 0)
73
74#define MANTIS_RISC_START 0x10
75#define MANTIS_RISC_PC 0x14
76
77/* I2C */
78#define MANTIS_I2CDATA_CTL 0x18
79#define MANTIS_I2C_RATE_1 (0x00 << 6)
80#define MANTIS_I2C_RATE_2 (0x01 << 6)
81#define MANTIS_I2C_RATE_3 (0x02 << 6)
82#define MANTIS_I2C_RATE_4 (0x03 << 6)
83#define MANTIS_I2C_STOP (0x01 << 5)
84#define MANTIS_I2C_PGMODE (0x01 << 3)
85
86/* DATA */
87#define MANTIS_CMD_DATA_R1 0x20
88#define MANTIS_CMD_DATA_3 (0xff << 24)
89#define MANTIS_CMD_DATA_2 (0xff << 16)
90#define MANTIS_CMD_DATA_1 (0xff << 8)
91#define MANTIS_CMD_DATA_0 (0xff << 0)
92
93#define MANTIS_CMD_DATA_R2 0x24
94#define MANTIS_CMD_DATA_7 (0xff << 24)
95#define MANTIS_CMD_DATA_6 (0xff << 16)
96#define MANTIS_CMD_DATA_5 (0xff << 8)
97#define MANTIS_CMD_DATA_4 (0xff << 0)
98
99#define MANTIS_CONTROL 0x28
100#define MANTIS_DET (0x01 << 7)
101#define MANTIS_DAT_CF_EN (0x01 << 6)
102#define MANTIS_ACS (0x03 << 4)
103#define MANTIS_VCCEN (0x01 << 3)
104#define MANTIS_BYPASS (0x01 << 2)
105#define MANTIS_MRST (0x01 << 1)
106#define MANTIS_CRST_INT (0x01 << 0)
107
108#define MANTIS_GPIF_CFGSLA 0x84
109#define MANTIS_GPIF_WAITSMPL (0x07 << 28)
110#define MANTIS_GPIF_BYTEADDRSUB (0x01 << 25)
111#define MANTIS_GPIF_WAITPOL (0x01 << 24)
112#define MANTIS_GPIF_NCDELAY (0x07 << 20)
113#define MANTIS_GPIF_RW2CSDELAY (0x07 << 16)
114#define MANTIS_GPIF_SLFTIMEDMODE (0x01 << 15)
115#define MANTIS_GPIF_SLFTIMEDDELY (0x7f << 8)
116#define MANTIS_GPIF_DEVTYPE (0x07 << 4)
117#define MANTIS_GPIF_BIGENDIAN (0x01 << 3)
118#define MANTIS_GPIF_FETCHCMD (0x03 << 1)
119#define MANTIS_GPIF_HWORDDEV (0x01 << 0)
120
121#define MANTIS_GPIF_WSTOPER 0x90
122#define MANTIS_GPIF_WSTOPERWREN3 (0x01 << 31)
123#define MANTIS_GPIF_PARBOOTN (0x01 << 29)
124#define MANTIS_GPIF_WSTOPERSLID3 (0x1f << 24)
125#define MANTIS_GPIF_WSTOPERWREN2 (0x01 << 23)
126#define MANTIS_GPIF_WSTOPERSLID2 (0x1f << 16)
127#define MANTIS_GPIF_WSTOPERWREN1 (0x01 << 15)
128#define MANTIS_GPIF_WSTOPERSLID1 (0x1f << 8)
129#define MANTIS_GPIF_WSTOPERWREN0 (0x01 << 7)
130#define MANTIS_GPIF_WSTOPERSLID0 (0x1f << 0)
131
132#define MANTIS_GPIF_CS2RW 0x94
133#define MANTIS_GPIF_CS2RWWREN3 (0x01 << 31)
134#define MANTIS_GPIF_CS2RWDELY3 (0x3f << 24)
135#define MANTIS_GPIF_CS2RWWREN2 (0x01 << 23)
136#define MANTIS_GPIF_CS2RWDELY2 (0x3f << 16)
137#define MANTIS_GPIF_CS2RWWREN1 (0x01 << 15)
138#define MANTIS_GPIF_CS2RWDELY1 (0x3f << 8)
139#define MANTIS_GPIF_CS2RWWREN0 (0x01 << 7)
140#define MANTIS_GPIF_CS2RWDELY0 (0x3f << 0)
141
142#define MANTIS_GPIF_IRQCFG 0x98
143#define MANTIS_GPIF_IRQPOL (0x01 << 8)
144#define MANTIS_MASK_WRACK (0x01 << 7)
145#define MANTIS_MASK_BRRDY (0x01 << 6)
146#define MANTIS_MASK_OVFLW (0x01 << 5)
147#define MANTIS_MASK_OTHERR (0x01 << 4)
148#define MANTIS_MASK_WSTO (0x01 << 3)
149#define MANTIS_MASK_EXTIRQ (0x01 << 2)
150#define MANTIS_MASK_PLUGIN (0x01 << 1)
151#define MANTIS_MASK_PLUGOUT (0x01 << 0)
152
153#define MANTIS_GPIF_STATUS 0x9c
154#define MANTIS_SBUF_KILLOP (0x01 << 15)
155#define MANTIS_SBUF_OPDONE (0x01 << 14)
156#define MANTIS_SBUF_EMPTY (0x01 << 13)
157#define MANTIS_GPIF_DETSTAT (0x01 << 9)
158#define MANTIS_GPIF_INTSTAT (0x01 << 8)
159#define MANTIS_GPIF_WRACK (0x01 << 7)
160#define MANTIS_GPIF_BRRDY (0x01 << 6)
161#define MANTIS_SBUF_OVFLW (0x01 << 5)
162#define MANTIS_GPIF_OTHERR (0x01 << 4)
163#define MANTIS_SBUF_WSTO (0x01 << 3)
164#define MANTIS_GPIF_EXTIRQ (0x01 << 2)
165#define MANTIS_CARD_PLUGIN (0x01 << 1)
166#define MANTIS_CARD_PLUGOUT (0x01 << 0)
167
168#define MANTIS_GPIF_BRADDR 0xa0
169#define MANTIS_GPIF_PCMCIAREG (0x01 << 27)
170#define MANTIS_GPIF_PCMCIAIOM (0x01 << 26)
171#define MANTIS_GPIF_BR_ADDR (0xfffffff << 0)
172
173#define MANTIS_GPIF_BRBYTES 0xa4
174#define MANTIS_GPIF_BRCNT (0xfff << 0)
175
176#define MANTIS_PCMCIA_RESET 0xa8
177#define MANTIS_PCMCIA_RSTVAL (0xff << 0)
178
179#define MANTIS_CARD_RESET 0xac
180
181#define MANTIS_GPIF_ADDR 0xb0
182#define MANTIS_GPIF_HIFRDWRN (0x01 << 31)
183#define MANTIS_GPIF_PCMCIAREG (0x01 << 27)
184#define MANTIS_GPIF_PCMCIAIOM (0x01 << 26)
185#define MANTIS_GPIF_HIFADDR (0xfffffff << 0)
186
187#define MANTIS_GPIF_DOUT 0xb4
188#define MANTIS_GPIF_HIFDOUT (0xfffffff << 0)
189
190#define MANTIS_GPIF_DIN 0xb8
191#define MANTIS_GPIF_HIFDIN (0xfffffff << 0)
192
193#define MANTIS_GPIF_SPARE 0xbc
194#define MANTIS_GPIF_LOGICRD (0xffff << 16)
195#define MANTIS_GPIF_LOGICRW (0xffff << 0)
196
197#endif /* __MANTIS_REG_H */
diff --git a/drivers/media/dvb/mantis/mantis_uart.c b/drivers/media/dvb/mantis/mantis_uart.c
new file mode 100644
index 000000000000..7d2f2398fa8b
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_uart.c
@@ -0,0 +1,186 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/kernel.h>
22#include <linux/spinlock.h>
23
24#include <linux/signal.h>
25#include <linux/sched.h>
26#include <linux/interrupt.h>
27
28#include "dmxdev.h"
29#include "dvbdev.h"
30#include "dvb_demux.h"
31#include "dvb_frontend.h"
32#include "dvb_net.h"
33
34#include "mantis_common.h"
35#include "mantis_reg.h"
36#include "mantis_uart.h"
37
38struct mantis_uart_params {
39 enum mantis_baud baud_rate;
40 enum mantis_parity parity;
41};
42
43static struct {
44 char string[7];
45} rates[5] = {
46 { "9600" },
47 { "19200" },
48 { "38400" },
49 { "57600" },
50 { "115200" }
51};
52
53static struct {
54 char string[5];
55} parity[3] = {
56 { "NONE" },
57 { "ODD" },
58 { "EVEN" }
59};
60
61#define UART_MAX_BUF 16
62
63int mantis_uart_read(struct mantis_pci *mantis, u8 *data)
64{
65 struct mantis_hwconfig *config = mantis->hwconfig;
66 u32 stat = 0, i;
67
68 /* get data */
69 for (i = 0; i < (config->bytes + 1); i++) {
70
71 stat = mmread(MANTIS_UART_STAT);
72
73 if (stat & MANTIS_UART_RXFIFO_FULL) {
74 dprintk(MANTIS_ERROR, 1, "RX Fifo FULL");
75 }
76 data[i] = mmread(MANTIS_UART_RXD) & 0x3f;
77
78 dprintk(MANTIS_DEBUG, 1, "Reading ... <%02x>", data[i] & 0x3f);
79
80 if (data[i] & (1 << 7)) {
81 dprintk(MANTIS_ERROR, 1, "UART framing error");
82 return -EINVAL;
83 }
84 if (data[i] & (1 << 6)) {
85 dprintk(MANTIS_ERROR, 1, "UART parity error");
86 return -EINVAL;
87 }
88 }
89
90 return 0;
91}
92
93static void mantis_uart_work(struct work_struct *work)
94{
95 struct mantis_pci *mantis = container_of(work, struct mantis_pci, uart_work);
96 struct mantis_hwconfig *config = mantis->hwconfig;
97 u8 buf[16];
98 int i;
99
100 mantis_uart_read(mantis, buf);
101
102 for (i = 0; i < (config->bytes + 1); i++)
103 dprintk(MANTIS_INFO, 1, "UART BUF:%d <%02x> ", i, buf[i]);
104
105 dprintk(MANTIS_DEBUG, 0, "\n");
106}
107
108static int mantis_uart_setup(struct mantis_pci *mantis,
109 struct mantis_uart_params *params)
110{
111 u32 reg;
112
113 mmwrite((mmread(MANTIS_UART_CTL) | (params->parity & 0x3)), MANTIS_UART_CTL);
114
115 reg = mmread(MANTIS_UART_BAUD);
116
117 switch (params->baud_rate) {
118 case MANTIS_BAUD_9600:
119 reg |= 0xd8;
120 break;
121 case MANTIS_BAUD_19200:
122 reg |= 0x6c;
123 break;
124 case MANTIS_BAUD_38400:
125 reg |= 0x36;
126 break;
127 case MANTIS_BAUD_57600:
128 reg |= 0x23;
129 break;
130 case MANTIS_BAUD_115200:
131 reg |= 0x11;
132 break;
133 default:
134 return -EINVAL;
135 }
136
137 mmwrite(reg, MANTIS_UART_BAUD);
138
139 return 0;
140}
141
142int mantis_uart_init(struct mantis_pci *mantis)
143{
144 struct mantis_hwconfig *config = mantis->hwconfig;
145 struct mantis_uart_params params;
146
147 /* default parity: */
148 params.baud_rate = config->baud_rate;
149 params.parity = config->parity;
150 dprintk(MANTIS_INFO, 1, "Initializing UART @ %sbps parity:%s",
151 rates[params.baud_rate].string,
152 parity[params.parity].string);
153
154 init_waitqueue_head(&mantis->uart_wq);
155 spin_lock_init(&mantis->uart_lock);
156
157 INIT_WORK(&mantis->uart_work, mantis_uart_work);
158
159 /* disable interrupt */
160 mmwrite(mmread(MANTIS_UART_CTL) & 0xffef, MANTIS_UART_CTL);
161
162 mantis_uart_setup(mantis, &params);
163
164 /* default 1 byte */
165 mmwrite((mmread(MANTIS_UART_BAUD) | (config->bytes << 8)), MANTIS_UART_BAUD);
166
167 /* flush buffer */
168 mmwrite((mmread(MANTIS_UART_CTL) | MANTIS_UART_RXFLUSH), MANTIS_UART_CTL);
169
170 /* enable interrupt */
171 mmwrite(mmread(MANTIS_INT_MASK) | 0x800, MANTIS_INT_MASK);
172 mmwrite(mmread(MANTIS_UART_CTL) | MANTIS_UART_RXINT, MANTIS_UART_CTL);
173
174 schedule_work(&mantis->uart_work);
175 dprintk(MANTIS_DEBUG, 1, "UART succesfully initialized");
176
177 return 0;
178}
179EXPORT_SYMBOL_GPL(mantis_uart_init);
180
181void mantis_uart_exit(struct mantis_pci *mantis)
182{
183 /* disable interrupt */
184 mmwrite(mmread(MANTIS_UART_CTL) & 0xffef, MANTIS_UART_CTL);
185}
186EXPORT_SYMBOL_GPL(mantis_uart_exit);
diff --git a/drivers/media/dvb/mantis/mantis_uart.h b/drivers/media/dvb/mantis/mantis_uart.h
new file mode 100644
index 000000000000..ffb62a0a5a13
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_uart.h
@@ -0,0 +1,58 @@
1/*
2 Mantis PCI bridge driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_UART_H
22#define __MANTIS_UART_H
23
24#define MANTIS_UART_CTL 0xe0
25#define MANTIS_UART_RXINT (1 << 4)
26#define MANTIS_UART_RXFLUSH (1 << 2)
27
28#define MANTIS_UART_RXD 0xe8
29#define MANTIS_UART_BAUD 0xec
30
31#define MANTIS_UART_STAT 0xf0
32#define MANTIS_UART_RXFIFO_DATA (1 << 7)
33#define MANTIS_UART_RXFIFO_EMPTY (1 << 6)
34#define MANTIS_UART_RXFIFO_FULL (1 << 3)
35#define MANTIS_UART_FRAME_ERR (1 << 2)
36#define MANTIS_UART_PARITY_ERR (1 << 1)
37#define MANTIS_UART_RXTHRESH_INT (1 << 0)
38
39enum mantis_baud {
40 MANTIS_BAUD_9600 = 0,
41 MANTIS_BAUD_19200,
42 MANTIS_BAUD_38400,
43 MANTIS_BAUD_57600,
44 MANTIS_BAUD_115200
45};
46
47enum mantis_parity {
48 MANTIS_PARITY_NONE = 0,
49 MANTIS_PARITY_EVEN,
50 MANTIS_PARITY_ODD,
51};
52
53struct mantis_pci;
54
55extern int mantis_uart_init(struct mantis_pci *mantis);
56extern void mantis_uart_exit(struct mantis_pci *mantis);
57
58#endif /* __MANTIS_UART_H */
diff --git a/drivers/media/dvb/mantis/mantis_vp1033.c b/drivers/media/dvb/mantis/mantis_vp1033.c
new file mode 100644
index 000000000000..4a723bda0031
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp1033.c
@@ -0,0 +1,212 @@
1/*
2 Mantis VP-1033 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/signal.h>
22#include <linux/sched.h>
23#include <linux/interrupt.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "stv0299.h"
32#include "mantis_common.h"
33#include "mantis_ioc.h"
34#include "mantis_dvb.h"
35#include "mantis_vp1033.h"
36#include "mantis_reg.h"
37
38u8 lgtdqcs001f_inittab[] = {
39 0x01, 0x15,
40 0x02, 0x00,
41 0x03, 0x00,
42 0x04, 0x2a,
43 0x05, 0x85,
44 0x06, 0x02,
45 0x07, 0x00,
46 0x08, 0x00,
47 0x0c, 0x01,
48 0x0d, 0x81,
49 0x0e, 0x44,
50 0x0f, 0x94,
51 0x10, 0x3c,
52 0x11, 0x84,
53 0x12, 0xb9,
54 0x13, 0xb5,
55 0x14, 0x4f,
56 0x15, 0xc9,
57 0x16, 0x80,
58 0x17, 0x36,
59 0x18, 0xfb,
60 0x19, 0xcf,
61 0x1a, 0xbc,
62 0x1c, 0x2b,
63 0x1d, 0x27,
64 0x1e, 0x00,
65 0x1f, 0x0b,
66 0x20, 0xa1,
67 0x21, 0x60,
68 0x22, 0x00,
69 0x23, 0x00,
70 0x28, 0x00,
71 0x29, 0x28,
72 0x2a, 0x14,
73 0x2b, 0x0f,
74 0x2c, 0x09,
75 0x2d, 0x05,
76 0x31, 0x1f,
77 0x32, 0x19,
78 0x33, 0xfc,
79 0x34, 0x13,
80 0xff, 0xff,
81};
82
83#define MANTIS_MODEL_NAME "VP-1033"
84#define MANTIS_DEV_TYPE "DVB-S/DSS"
85
86int lgtdqcs001f_tuner_set(struct dvb_frontend *fe,
87 struct dvb_frontend_parameters *params)
88{
89 struct mantis_pci *mantis = fe->dvb->priv;
90 struct i2c_adapter *adapter = &mantis->adapter;
91
92 u8 buf[4];
93 u32 div;
94
95
96 struct i2c_msg msg = {.addr = 0x61, .flags = 0, .buf = buf, .len = sizeof(buf)};
97
98 div = params->frequency / 250;
99
100 buf[0] = (div >> 8) & 0x7f;
101 buf[1] = div & 0xff;
102 buf[2] = 0x83;
103 buf[3] = 0xc0;
104
105 if (params->frequency < 1531000)
106 buf[3] |= 0x04;
107 else
108 buf[3] &= ~0x04;
109 if (i2c_transfer(adapter, &msg, 1) < 0) {
110 dprintk(MANTIS_ERROR, 1, "Write: I2C Transfer failed");
111 return -EIO;
112 }
113 msleep_interruptible(100);
114
115 return 0;
116}
117
118int lgtdqcs001f_set_symbol_rate(struct dvb_frontend *fe,
119 u32 srate, u32 ratio)
120{
121 u8 aclk = 0;
122 u8 bclk = 0;
123
124 if (srate < 1500000) {
125 aclk = 0xb7;
126 bclk = 0x47;
127 } else if (srate < 3000000) {
128 aclk = 0xb7;
129 bclk = 0x4b;
130 } else if (srate < 7000000) {
131 aclk = 0xb7;
132 bclk = 0x4f;
133 } else if (srate < 14000000) {
134 aclk = 0xb7;
135 bclk = 0x53;
136 } else if (srate < 30000000) {
137 aclk = 0xb6;
138 bclk = 0x53;
139 } else if (srate < 45000000) {
140 aclk = 0xb4;
141 bclk = 0x51;
142 }
143 stv0299_writereg(fe, 0x13, aclk);
144 stv0299_writereg(fe, 0x14, bclk);
145
146 stv0299_writereg(fe, 0x1f, (ratio >> 16) & 0xff);
147 stv0299_writereg(fe, 0x20, (ratio >> 8) & 0xff);
148 stv0299_writereg(fe, 0x21, ratio & 0xf0);
149
150 return 0;
151}
152
153struct stv0299_config lgtdqcs001f_config = {
154 .demod_address = 0x68,
155 .inittab = lgtdqcs001f_inittab,
156 .mclk = 88000000UL,
157 .invert = 0,
158 .skip_reinit = 0,
159 .volt13_op0_op1 = STV0299_VOLT13_OP0,
160 .min_delay_ms = 100,
161 .set_symbol_rate = lgtdqcs001f_set_symbol_rate,
162};
163
164static int vp1033_frontend_init(struct mantis_pci *mantis, struct dvb_frontend *fe)
165{
166 struct i2c_adapter *adapter = &mantis->adapter;
167
168 int err = 0;
169
170 err = mantis_frontend_power(mantis, POWER_ON);
171 if (err == 0) {
172 mantis_frontend_soft_reset(mantis);
173 msleep(250);
174
175 dprintk(MANTIS_ERROR, 1, "Probing for STV0299 (DVB-S)");
176 fe = stv0299_attach(&lgtdqcs001f_config, adapter);
177
178 if (fe) {
179 fe->ops.tuner_ops.set_params = lgtdqcs001f_tuner_set;
180 dprintk(MANTIS_ERROR, 1, "found STV0299 DVB-S frontend @ 0x%02x",
181 lgtdqcs001f_config.demod_address);
182
183 dprintk(MANTIS_ERROR, 1, "Mantis DVB-S STV0299 frontend attach success");
184 } else {
185 return -1;
186 }
187 } else {
188 dprintk(MANTIS_ERROR, 1, "Frontend on <%s> POWER ON failed! <%d>",
189 adapter->name,
190 err);
191
192 return -EIO;
193 }
194 mantis->fe = fe;
195 dprintk(MANTIS_ERROR, 1, "Done!");
196
197 return 0;
198}
199
200struct mantis_hwconfig vp1033_config = {
201 .model_name = MANTIS_MODEL_NAME,
202 .dev_type = MANTIS_DEV_TYPE,
203 .ts_size = MANTIS_TS_204,
204
205 .baud_rate = MANTIS_BAUD_9600,
206 .parity = MANTIS_PARITY_NONE,
207 .bytes = 0,
208
209 .frontend_init = vp1033_frontend_init,
210 .power = GPIF_A12,
211 .reset = GPIF_A13,
212};
diff --git a/drivers/media/dvb/mantis/mantis_vp1033.h b/drivers/media/dvb/mantis/mantis_vp1033.h
new file mode 100644
index 000000000000..7daaa1bf127d
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp1033.h
@@ -0,0 +1,30 @@
1/*
2 Mantis VP-1033 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_VP1033_H
22#define __MANTIS_VP1033_H
23
24#include "mantis_common.h"
25
26#define MANTIS_VP_1033_DVB_S 0x0016
27
28extern struct mantis_hwconfig vp1033_config;
29
30#endif /* __MANTIS_VP1033_H */
diff --git a/drivers/media/dvb/mantis/mantis_vp1034.c b/drivers/media/dvb/mantis/mantis_vp1034.c
new file mode 100644
index 000000000000..8e6ae558ee57
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp1034.c
@@ -0,0 +1,119 @@
1/*
2 Mantis VP-1034 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/signal.h>
22#include <linux/sched.h>
23#include <linux/interrupt.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "mb86a16.h"
32#include "mantis_common.h"
33#include "mantis_ioc.h"
34#include "mantis_dvb.h"
35#include "mantis_vp1034.h"
36#include "mantis_reg.h"
37
38struct mb86a16_config vp1034_mb86a16_config = {
39 .demod_address = 0x08,
40 .set_voltage = vp1034_set_voltage,
41};
42
43#define MANTIS_MODEL_NAME "VP-1034"
44#define MANTIS_DEV_TYPE "DVB-S/DSS"
45
46int vp1034_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t voltage)
47{
48 struct mantis_pci *mantis = fe->dvb->priv;
49
50 switch (voltage) {
51 case SEC_VOLTAGE_13:
52 dprintk(MANTIS_ERROR, 1, "Polarization=[13V]");
53 gpio_set_bits(mantis, 13, 1);
54 gpio_set_bits(mantis, 14, 0);
55 break;
56 case SEC_VOLTAGE_18:
57 dprintk(MANTIS_ERROR, 1, "Polarization=[18V]");
58 gpio_set_bits(mantis, 13, 1);
59 gpio_set_bits(mantis, 14, 1);
60 break;
61 case SEC_VOLTAGE_OFF:
62 dprintk(MANTIS_ERROR, 1, "Frontend (dummy) POWERDOWN");
63 break;
64 default:
65 dprintk(MANTIS_ERROR, 1, "Invalid = (%d)", (u32) voltage);
66 return -EINVAL;
67 }
68 mmwrite(0x00, MANTIS_GPIF_DOUT);
69
70 return 0;
71}
72
73static int vp1034_frontend_init(struct mantis_pci *mantis, struct dvb_frontend *fe)
74{
75 struct i2c_adapter *adapter = &mantis->adapter;
76
77 int err = 0;
78
79 err = mantis_frontend_power(mantis, POWER_ON);
80 if (err == 0) {
81 mantis_frontend_soft_reset(mantis);
82 msleep(250);
83
84 dprintk(MANTIS_ERROR, 1, "Probing for MB86A16 (DVB-S/DSS)");
85 fe = mb86a16_attach(&vp1034_mb86a16_config, adapter);
86 if (fe) {
87 dprintk(MANTIS_ERROR, 1,
88 "found MB86A16 DVB-S/DSS frontend @0x%02x",
89 vp1034_mb86a16_config.demod_address);
90
91 } else {
92 return -1;
93 }
94 } else {
95 dprintk(MANTIS_ERROR, 1, "Frontend on <%s> POWER ON failed! <%d>",
96 adapter->name,
97 err);
98
99 return -EIO;
100 }
101 mantis->fe = fe;
102 dprintk(MANTIS_ERROR, 1, "Done!");
103
104 return 0;
105}
106
107struct mantis_hwconfig vp1034_config = {
108 .model_name = MANTIS_MODEL_NAME,
109 .dev_type = MANTIS_DEV_TYPE,
110 .ts_size = MANTIS_TS_204,
111
112 .baud_rate = MANTIS_BAUD_9600,
113 .parity = MANTIS_PARITY_NONE,
114 .bytes = 0,
115
116 .frontend_init = vp1034_frontend_init,
117 .power = GPIF_A12,
118 .reset = GPIF_A13,
119};
diff --git a/drivers/media/dvb/mantis/mantis_vp1034.h b/drivers/media/dvb/mantis/mantis_vp1034.h
new file mode 100644
index 000000000000..323f38ef8e3d
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp1034.h
@@ -0,0 +1,33 @@
1/*
2 Mantis VP-1034 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_VP1034_H
22#define __MANTIS_VP1034_H
23
24#include "dvb_frontend.h"
25#include "mantis_common.h"
26
27
28#define MANTIS_VP_1034_DVB_S 0x0014
29
30extern struct mantis_hwconfig vp1034_config;
31extern int vp1034_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t voltage);
32
33#endif /* __MANTIS_VP1034_H */
diff --git a/drivers/media/dvb/mantis/mantis_vp1041.c b/drivers/media/dvb/mantis/mantis_vp1041.c
new file mode 100644
index 000000000000..515346dd31d0
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp1041.c
@@ -0,0 +1,358 @@
1/*
2 Mantis VP-1041 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/signal.h>
22#include <linux/sched.h>
23#include <linux/interrupt.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "mantis_common.h"
32#include "mantis_ioc.h"
33#include "mantis_dvb.h"
34#include "mantis_vp1041.h"
35#include "stb0899_reg.h"
36#include "stb0899_drv.h"
37#include "stb0899_cfg.h"
38#include "stb6100_cfg.h"
39#include "stb6100.h"
40#include "lnbp21.h"
41
42#define MANTIS_MODEL_NAME "VP-1041"
43#define MANTIS_DEV_TYPE "DSS/DVB-S/DVB-S2"
44
45static const struct stb0899_s1_reg vp1041_stb0899_s1_init_1[] = {
46
47 /* 0x0000000b, *//* SYSREG */
48 { STB0899_DEV_ID , 0x30 },
49 { STB0899_DISCNTRL1 , 0x32 },
50 { STB0899_DISCNTRL2 , 0x80 },
51 { STB0899_DISRX_ST0 , 0x04 },
52 { STB0899_DISRX_ST1 , 0x00 },
53 { STB0899_DISPARITY , 0x00 },
54 { STB0899_DISFIFO , 0x00 },
55 { STB0899_DISSTATUS , 0x20 },
56 { STB0899_DISF22 , 0x99 },
57 { STB0899_DISF22RX , 0xa8 },
58 /* SYSREG ? */
59 { STB0899_ACRPRESC , 0x11 },
60 { STB0899_ACRDIV1 , 0x0a },
61 { STB0899_ACRDIV2 , 0x05 },
62 { STB0899_DACR1 , 0x00 },
63 { STB0899_DACR2 , 0x00 },
64 { STB0899_OUTCFG , 0x00 },
65 { STB0899_MODECFG , 0x00 },
66 { STB0899_IRQSTATUS_3 , 0xfe },
67 { STB0899_IRQSTATUS_2 , 0x03 },
68 { STB0899_IRQSTATUS_1 , 0x7c },
69 { STB0899_IRQSTATUS_0 , 0xf4 },
70 { STB0899_IRQMSK_3 , 0xf3 },
71 { STB0899_IRQMSK_2 , 0xfc },
72 { STB0899_IRQMSK_1 , 0xff },
73 { STB0899_IRQMSK_0 , 0xff },
74 { STB0899_IRQCFG , 0x00 },
75 { STB0899_I2CCFG , 0x88 },
76 { STB0899_I2CRPT , 0x58 },
77 { STB0899_IOPVALUE5 , 0x00 },
78 { STB0899_IOPVALUE4 , 0x33 },
79 { STB0899_IOPVALUE3 , 0x6d },
80 { STB0899_IOPVALUE2 , 0x90 },
81 { STB0899_IOPVALUE1 , 0x60 },
82 { STB0899_IOPVALUE0 , 0x00 },
83 { STB0899_GPIO00CFG , 0x82 },
84 { STB0899_GPIO01CFG , 0x82 },
85 { STB0899_GPIO02CFG , 0x82 },
86 { STB0899_GPIO03CFG , 0x82 },
87 { STB0899_GPIO04CFG , 0x82 },
88 { STB0899_GPIO05CFG , 0x82 },
89 { STB0899_GPIO06CFG , 0x82 },
90 { STB0899_GPIO07CFG , 0x82 },
91 { STB0899_GPIO08CFG , 0x82 },
92 { STB0899_GPIO09CFG , 0x82 },
93 { STB0899_GPIO10CFG , 0x82 },
94 { STB0899_GPIO11CFG , 0x82 },
95 { STB0899_GPIO12CFG , 0x82 },
96 { STB0899_GPIO13CFG , 0x82 },
97 { STB0899_GPIO14CFG , 0x82 },
98 { STB0899_GPIO15CFG , 0x82 },
99 { STB0899_GPIO16CFG , 0x82 },
100 { STB0899_GPIO17CFG , 0x82 },
101 { STB0899_GPIO18CFG , 0x82 },
102 { STB0899_GPIO19CFG , 0x82 },
103 { STB0899_GPIO20CFG , 0x82 },
104 { STB0899_SDATCFG , 0xb8 },
105 { STB0899_SCLTCFG , 0xba },
106 { STB0899_AGCRFCFG , 0x1c }, /* 0x11 */
107 { STB0899_GPIO22 , 0x82 }, /* AGCBB2CFG */
108 { STB0899_GPIO21 , 0x91 }, /* AGCBB1CFG */
109 { STB0899_DIRCLKCFG , 0x82 },
110 { STB0899_CLKOUT27CFG , 0x7e },
111 { STB0899_STDBYCFG , 0x82 },
112 { STB0899_CS0CFG , 0x82 },
113 { STB0899_CS1CFG , 0x82 },
114 { STB0899_DISEQCOCFG , 0x20 },
115 { STB0899_GPIO32CFG , 0x82 },
116 { STB0899_GPIO33CFG , 0x82 },
117 { STB0899_GPIO34CFG , 0x82 },
118 { STB0899_GPIO35CFG , 0x82 },
119 { STB0899_GPIO36CFG , 0x82 },
120 { STB0899_GPIO37CFG , 0x82 },
121 { STB0899_GPIO38CFG , 0x82 },
122 { STB0899_GPIO39CFG , 0x82 },
123 { STB0899_NCOARSE , 0x17 }, /* 0x15 = 27 Mhz Clock, F/3 = 198MHz, F/6 = 99MHz */
124 { STB0899_SYNTCTRL , 0x02 }, /* 0x00 = CLK from CLKI, 0x02 = CLK from XTALI */
125 { STB0899_FILTCTRL , 0x00 },
126 { STB0899_SYSCTRL , 0x01 },
127 { STB0899_STOPCLK1 , 0x20 },
128 { STB0899_STOPCLK2 , 0x00 },
129 { STB0899_INTBUFSTATUS , 0x00 },
130 { STB0899_INTBUFCTRL , 0x0a },
131 { 0xffff , 0xff },
132};
133
134static const struct stb0899_s1_reg vp1041_stb0899_s1_init_3[] = {
135 { STB0899_DEMOD , 0x00 },
136 { STB0899_RCOMPC , 0xc9 },
137 { STB0899_AGC1CN , 0x01 },
138 { STB0899_AGC1REF , 0x10 },
139 { STB0899_RTC , 0x23 },
140 { STB0899_TMGCFG , 0x4e },
141 { STB0899_AGC2REF , 0x34 },
142 { STB0899_TLSR , 0x84 },
143 { STB0899_CFD , 0xf7 },
144 { STB0899_ACLC , 0x87 },
145 { STB0899_BCLC , 0x94 },
146 { STB0899_EQON , 0x41 },
147 { STB0899_LDT , 0xf1 },
148 { STB0899_LDT2 , 0xe3 },
149 { STB0899_EQUALREF , 0xb4 },
150 { STB0899_TMGRAMP , 0x10 },
151 { STB0899_TMGTHD , 0x30 },
152 { STB0899_IDCCOMP , 0xfd },
153 { STB0899_QDCCOMP , 0xff },
154 { STB0899_POWERI , 0x0c },
155 { STB0899_POWERQ , 0x0f },
156 { STB0899_RCOMP , 0x6c },
157 { STB0899_AGCIQIN , 0x80 },
158 { STB0899_AGC2I1 , 0x06 },
159 { STB0899_AGC2I2 , 0x00 },
160 { STB0899_TLIR , 0x30 },
161 { STB0899_RTF , 0x7f },
162 { STB0899_DSTATUS , 0x00 },
163 { STB0899_LDI , 0xbc },
164 { STB0899_CFRM , 0xea },
165 { STB0899_CFRL , 0x31 },
166 { STB0899_NIRM , 0x2b },
167 { STB0899_NIRL , 0x80 },
168 { STB0899_ISYMB , 0x1d },
169 { STB0899_QSYMB , 0xa6 },
170 { STB0899_SFRH , 0x2f },
171 { STB0899_SFRM , 0x68 },
172 { STB0899_SFRL , 0x40 },
173 { STB0899_SFRUPH , 0x2f },
174 { STB0899_SFRUPM , 0x68 },
175 { STB0899_SFRUPL , 0x40 },
176 { STB0899_EQUAI1 , 0x02 },
177 { STB0899_EQUAQ1 , 0xff },
178 { STB0899_EQUAI2 , 0x04 },
179 { STB0899_EQUAQ2 , 0x05 },
180 { STB0899_EQUAI3 , 0x02 },
181 { STB0899_EQUAQ3 , 0xfd },
182 { STB0899_EQUAI4 , 0x03 },
183 { STB0899_EQUAQ4 , 0x07 },
184 { STB0899_EQUAI5 , 0x08 },
185 { STB0899_EQUAQ5 , 0xf5 },
186 { STB0899_DSTATUS2 , 0x00 },
187 { STB0899_VSTATUS , 0x00 },
188 { STB0899_VERROR , 0x86 },
189 { STB0899_IQSWAP , 0x2a },
190 { STB0899_ECNT1M , 0x00 },
191 { STB0899_ECNT1L , 0x00 },
192 { STB0899_ECNT2M , 0x00 },
193 { STB0899_ECNT2L , 0x00 },
194 { STB0899_ECNT3M , 0x0a },
195 { STB0899_ECNT3L , 0xad },
196 { STB0899_FECAUTO1 , 0x06 },
197 { STB0899_FECM , 0x01 },
198 { STB0899_VTH12 , 0xb0 },
199 { STB0899_VTH23 , 0x7a },
200 { STB0899_VTH34 , 0x58 },
201 { STB0899_VTH56 , 0x38 },
202 { STB0899_VTH67 , 0x34 },
203 { STB0899_VTH78 , 0x24 },
204 { STB0899_PRVIT , 0xff },
205 { STB0899_VITSYNC , 0x19 },
206 { STB0899_RSULC , 0xb1 }, /* DVB = 0xb1, DSS = 0xa1 */
207 { STB0899_TSULC , 0x42 },
208 { STB0899_RSLLC , 0x41 },
209 { STB0899_TSLPL , 0x12 },
210 { STB0899_TSCFGH , 0x0c },
211 { STB0899_TSCFGM , 0x00 },
212 { STB0899_TSCFGL , 0x00 },
213 { STB0899_TSOUT , 0x69 }, /* 0x0d for CAM */
214 { STB0899_RSSYNCDEL , 0x00 },
215 { STB0899_TSINHDELH , 0x02 },
216 { STB0899_TSINHDELM , 0x00 },
217 { STB0899_TSINHDELL , 0x00 },
218 { STB0899_TSLLSTKM , 0x1b },
219 { STB0899_TSLLSTKL , 0xb3 },
220 { STB0899_TSULSTKM , 0x00 },
221 { STB0899_TSULSTKL , 0x00 },
222 { STB0899_PCKLENUL , 0xbc },
223 { STB0899_PCKLENLL , 0xcc },
224 { STB0899_RSPCKLEN , 0xbd },
225 { STB0899_TSSTATUS , 0x90 },
226 { STB0899_ERRCTRL1 , 0xb6 },
227 { STB0899_ERRCTRL2 , 0x95 },
228 { STB0899_ERRCTRL3 , 0x8d },
229 { STB0899_DMONMSK1 , 0x27 },
230 { STB0899_DMONMSK0 , 0x03 },
231 { STB0899_DEMAPVIT , 0x5c },
232 { STB0899_PLPARM , 0x19 },
233 { STB0899_PDELCTRL , 0x48 },
234 { STB0899_PDELCTRL2 , 0x00 },
235 { STB0899_BBHCTRL1 , 0x00 },
236 { STB0899_BBHCTRL2 , 0x00 },
237 { STB0899_HYSTTHRESH , 0x77 },
238 { STB0899_MATCSTM , 0x00 },
239 { STB0899_MATCSTL , 0x00 },
240 { STB0899_UPLCSTM , 0x00 },
241 { STB0899_UPLCSTL , 0x00 },
242 { STB0899_DFLCSTM , 0x00 },
243 { STB0899_DFLCSTL , 0x00 },
244 { STB0899_SYNCCST , 0x00 },
245 { STB0899_SYNCDCSTM , 0x00 },
246 { STB0899_SYNCDCSTL , 0x00 },
247 { STB0899_ISI_ENTRY , 0x00 },
248 { STB0899_ISI_BIT_EN , 0x00 },
249 { STB0899_MATSTRM , 0xf0 },
250 { STB0899_MATSTRL , 0x02 },
251 { STB0899_UPLSTRM , 0x45 },
252 { STB0899_UPLSTRL , 0x60 },
253 { STB0899_DFLSTRM , 0xe3 },
254 { STB0899_DFLSTRL , 0x00 },
255 { STB0899_SYNCSTR , 0x47 },
256 { STB0899_SYNCDSTRM , 0x05 },
257 { STB0899_SYNCDSTRL , 0x18 },
258 { STB0899_CFGPDELSTATUS1 , 0x19 },
259 { STB0899_CFGPDELSTATUS2 , 0x2b },
260 { STB0899_BBFERRORM , 0x00 },
261 { STB0899_BBFERRORL , 0x01 },
262 { STB0899_UPKTERRORM , 0x00 },
263 { STB0899_UPKTERRORL , 0x00 },
264 { 0xffff , 0xff },
265};
266
267struct stb0899_config vp1041_stb0899_config = {
268 .init_dev = vp1041_stb0899_s1_init_1,
269 .init_s2_demod = stb0899_s2_init_2,
270 .init_s1_demod = vp1041_stb0899_s1_init_3,
271 .init_s2_fec = stb0899_s2_init_4,
272 .init_tst = stb0899_s1_init_5,
273
274 .demod_address = 0x68, /* 0xd0 >> 1 */
275
276 .xtal_freq = 27000000,
277 .inversion = IQ_SWAP_ON, /* 1 */
278
279 .lo_clk = 76500000,
280 .hi_clk = 99000000,
281
282 .esno_ave = STB0899_DVBS2_ESNO_AVE,
283 .esno_quant = STB0899_DVBS2_ESNO_QUANT,
284 .avframes_coarse = STB0899_DVBS2_AVFRAMES_COARSE,
285 .avframes_fine = STB0899_DVBS2_AVFRAMES_FINE,
286 .miss_threshold = STB0899_DVBS2_MISS_THRESHOLD,
287 .uwp_threshold_acq = STB0899_DVBS2_UWP_THRESHOLD_ACQ,
288 .uwp_threshold_track = STB0899_DVBS2_UWP_THRESHOLD_TRACK,
289 .uwp_threshold_sof = STB0899_DVBS2_UWP_THRESHOLD_SOF,
290 .sof_search_timeout = STB0899_DVBS2_SOF_SEARCH_TIMEOUT,
291
292 .btr_nco_bits = STB0899_DVBS2_BTR_NCO_BITS,
293 .btr_gain_shift_offset = STB0899_DVBS2_BTR_GAIN_SHIFT_OFFSET,
294 .crl_nco_bits = STB0899_DVBS2_CRL_NCO_BITS,
295 .ldpc_max_iter = STB0899_DVBS2_LDPC_MAX_ITER,
296
297 .tuner_get_frequency = stb6100_get_frequency,
298 .tuner_set_frequency = stb6100_set_frequency,
299 .tuner_set_bandwidth = stb6100_set_bandwidth,
300 .tuner_get_bandwidth = stb6100_get_bandwidth,
301 .tuner_set_rfsiggain = NULL,
302};
303
304struct stb6100_config vp1041_stb6100_config = {
305 .tuner_address = 0x60,
306 .refclock = 27000000,
307};
308
309static int vp1041_frontend_init(struct mantis_pci *mantis, struct dvb_frontend *fe)
310{
311 struct i2c_adapter *adapter = &mantis->adapter;
312
313 int err = 0;
314
315 err = mantis_frontend_power(mantis, POWER_ON);
316 if (err == 0) {
317 mantis_frontend_soft_reset(mantis);
318 msleep(250);
319 mantis->fe = stb0899_attach(&vp1041_stb0899_config, adapter);
320 if (mantis->fe) {
321 dprintk(MANTIS_ERROR, 1,
322 "found STB0899 DVB-S/DVB-S2 frontend @0x%02x",
323 vp1041_stb0899_config.demod_address);
324
325 if (stb6100_attach(mantis->fe, &vp1041_stb6100_config, adapter)) {
326 if (!lnbp21_attach(mantis->fe, adapter, 0, 0))
327 dprintk(MANTIS_ERROR, 1, "No LNBP21 found!");
328 }
329 } else {
330 return -EREMOTEIO;
331 }
332 } else {
333 dprintk(MANTIS_ERROR, 1, "Frontend on <%s> POWER ON failed! <%d>",
334 adapter->name,
335 err);
336
337 return -EIO;
338 }
339
340
341 dprintk(MANTIS_ERROR, 1, "Done!");
342
343 return 0;
344}
345
346struct mantis_hwconfig vp1041_config = {
347 .model_name = MANTIS_MODEL_NAME,
348 .dev_type = MANTIS_DEV_TYPE,
349 .ts_size = MANTIS_TS_188,
350
351 .baud_rate = MANTIS_BAUD_9600,
352 .parity = MANTIS_PARITY_NONE,
353 .bytes = 0,
354
355 .frontend_init = vp1041_frontend_init,
356 .power = GPIF_A12,
357 .reset = GPIF_A13,
358};
diff --git a/drivers/media/dvb/mantis/mantis_vp1041.h b/drivers/media/dvb/mantis/mantis_vp1041.h
new file mode 100644
index 000000000000..1ae5b3de8081
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp1041.h
@@ -0,0 +1,33 @@
1/*
2 Mantis VP-1041 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_VP1041_H
22#define __MANTIS_VP1041_H
23
24#include "mantis_common.h"
25
26#define MANTIS_VP_1041_DVB_S2 0x0031
27#define SKYSTAR_HD2_10 0x0001
28#define SKYSTAR_HD2_20 0x0003
29#define CINERGY_S2_PCI_HD 0x1179
30
31extern struct mantis_hwconfig vp1041_config;
32
33#endif /* __MANTIS_VP1041_H */
diff --git a/drivers/media/dvb/mantis/mantis_vp2033.c b/drivers/media/dvb/mantis/mantis_vp2033.c
new file mode 100644
index 000000000000..10ce81790a8c
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp2033.c
@@ -0,0 +1,187 @@
1/*
2 Mantis VP-2033 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/signal.h>
22#include <linux/sched.h>
23#include <linux/interrupt.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "tda1002x.h"
32#include "mantis_common.h"
33#include "mantis_ioc.h"
34#include "mantis_dvb.h"
35#include "mantis_vp2033.h"
36
37#define MANTIS_MODEL_NAME "VP-2033"
38#define MANTIS_DEV_TYPE "DVB-C"
39
40struct tda1002x_config vp2033_tda1002x_cu1216_config = {
41 .demod_address = 0x18 >> 1,
42 .invert = 1,
43};
44
45struct tda10023_config vp2033_tda10023_cu1216_config = {
46 .demod_address = 0x18 >> 1,
47 .invert = 1,
48};
49
50static u8 read_pwm(struct mantis_pci *mantis)
51{
52 struct i2c_adapter *adapter = &mantis->adapter;
53
54 u8 b = 0xff;
55 u8 pwm;
56 struct i2c_msg msg[] = {
57 {.addr = 0x50, .flags = 0, .buf = &b, .len = 1},
58 {.addr = 0x50, .flags = I2C_M_RD, .buf = &pwm, .len = 1}
59 };
60
61 if ((i2c_transfer(adapter, msg, 2) != 2)
62 || (pwm == 0xff))
63 pwm = 0x48;
64
65 return pwm;
66}
67
68static int tda1002x_cu1216_tuner_set(struct dvb_frontend *fe, struct dvb_frontend_parameters *params)
69{
70 struct mantis_pci *mantis = fe->dvb->priv;
71 struct i2c_adapter *adapter = &mantis->adapter;
72
73 u8 buf[6];
74 struct i2c_msg msg = {.addr = 0x60, .flags = 0, .buf = buf, .len = sizeof(buf)};
75 int i;
76
77#define CU1216_IF 36125000
78#define TUNER_MUL 62500
79
80 u32 div = (params->frequency + CU1216_IF + TUNER_MUL / 2) / TUNER_MUL;
81
82 buf[0] = (div >> 8) & 0x7f;
83 buf[1] = div & 0xff;
84 buf[2] = 0xce;
85 buf[3] = (params->frequency < 150000000 ? 0x01 :
86 params->frequency < 445000000 ? 0x02 : 0x04);
87 buf[4] = 0xde;
88 buf[5] = 0x20;
89
90 if (fe->ops.i2c_gate_ctrl)
91 fe->ops.i2c_gate_ctrl(fe, 1);
92
93 if (i2c_transfer(adapter, &msg, 1) != 1)
94 return -EIO;
95
96 /* wait for the pll lock */
97 msg.flags = I2C_M_RD;
98 msg.len = 1;
99 for (i = 0; i < 20; i++) {
100 if (fe->ops.i2c_gate_ctrl)
101 fe->ops.i2c_gate_ctrl(fe, 1);
102
103 if (i2c_transfer(adapter, &msg, 1) == 1 && (buf[0] & 0x40))
104 break;
105
106 msleep(10);
107 }
108
109 /* switch the charge pump to the lower current */
110 msg.flags = 0;
111 msg.len = 2;
112 msg.buf = &buf[2];
113 buf[2] &= ~0x40;
114 if (fe->ops.i2c_gate_ctrl)
115 fe->ops.i2c_gate_ctrl(fe, 1);
116
117 if (i2c_transfer(adapter, &msg, 1) != 1)
118 return -EIO;
119
120 return 0;
121}
122
123static int vp2033_frontend_init(struct mantis_pci *mantis, struct dvb_frontend *fe)
124{
125 struct i2c_adapter *adapter = &mantis->adapter;
126
127 int err = 0;
128
129 err = mantis_frontend_power(mantis, POWER_ON);
130 if (err == 0) {
131 mantis_frontend_soft_reset(mantis);
132 msleep(250);
133
134 dprintk(MANTIS_ERROR, 1, "Probing for CU1216 (DVB-C)");
135 fe = tda10021_attach(&vp2033_tda1002x_cu1216_config,
136 adapter,
137 read_pwm(mantis));
138
139 if (fe) {
140 dprintk(MANTIS_ERROR, 1,
141 "found Philips CU1216 DVB-C frontend (TDA10021) @ 0x%02x",
142 vp2033_tda1002x_cu1216_config.demod_address);
143 } else {
144 fe = tda10023_attach(&vp2033_tda10023_cu1216_config,
145 adapter,
146 read_pwm(mantis));
147
148 if (fe) {
149 dprintk(MANTIS_ERROR, 1,
150 "found Philips CU1216 DVB-C frontend (TDA10023) @ 0x%02x",
151 vp2033_tda1002x_cu1216_config.demod_address);
152 }
153 }
154
155 if (fe) {
156 fe->ops.tuner_ops.set_params = tda1002x_cu1216_tuner_set;
157 dprintk(MANTIS_ERROR, 1, "Mantis DVB-C Philips CU1216 frontend attach success");
158 } else {
159 return -1;
160 }
161 } else {
162 dprintk(MANTIS_ERROR, 1, "Frontend on <%s> POWER ON failed! <%d>",
163 adapter->name,
164 err);
165
166 return -EIO;
167 }
168
169 mantis->fe = fe;
170 dprintk(MANTIS_DEBUG, 1, "Done!");
171
172 return 0;
173}
174
175struct mantis_hwconfig vp2033_config = {
176 .model_name = MANTIS_MODEL_NAME,
177 .dev_type = MANTIS_DEV_TYPE,
178 .ts_size = MANTIS_TS_204,
179
180 .baud_rate = MANTIS_BAUD_9600,
181 .parity = MANTIS_PARITY_NONE,
182 .bytes = 0,
183
184 .frontend_init = vp2033_frontend_init,
185 .power = GPIF_A12,
186 .reset = GPIF_A13,
187};
diff --git a/drivers/media/dvb/mantis/mantis_vp2033.h b/drivers/media/dvb/mantis/mantis_vp2033.h
new file mode 100644
index 000000000000..c55242b79d54
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp2033.h
@@ -0,0 +1,30 @@
1/*
2 Mantis VP-2033 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_VP2033_H
22#define __MANTIS_VP2033_H
23
24#include "mantis_common.h"
25
26#define MANTIS_VP_2033_DVB_C 0x0008
27
28extern struct mantis_hwconfig vp2033_config;
29
30#endif /* __MANTIS_VP2033_H */
diff --git a/drivers/media/dvb/mantis/mantis_vp2040.c b/drivers/media/dvb/mantis/mantis_vp2040.c
new file mode 100644
index 000000000000..a7ca233e800b
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp2040.c
@@ -0,0 +1,186 @@
1/*
2 Mantis VP-2040 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/signal.h>
22#include <linux/sched.h>
23#include <linux/interrupt.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "tda1002x.h"
32#include "mantis_common.h"
33#include "mantis_ioc.h"
34#include "mantis_dvb.h"
35#include "mantis_vp2040.h"
36
37#define MANTIS_MODEL_NAME "VP-2040"
38#define MANTIS_DEV_TYPE "DVB-C"
39
40struct tda1002x_config vp2040_tda1002x_cu1216_config = {
41 .demod_address = 0x18 >> 1,
42 .invert = 1,
43};
44
45struct tda10023_config vp2040_tda10023_cu1216_config = {
46 .demod_address = 0x18 >> 1,
47 .invert = 1,
48};
49
50static int tda1002x_cu1216_tuner_set(struct dvb_frontend *fe, struct dvb_frontend_parameters *params)
51{
52 struct mantis_pci *mantis = fe->dvb->priv;
53 struct i2c_adapter *adapter = &mantis->adapter;
54
55 u8 buf[6];
56 struct i2c_msg msg = {.addr = 0x60, .flags = 0, .buf = buf, .len = sizeof(buf)};
57 int i;
58
59#define CU1216_IF 36125000
60#define TUNER_MUL 62500
61
62 u32 div = (params->frequency + CU1216_IF + TUNER_MUL / 2) / TUNER_MUL;
63
64 buf[0] = (div >> 8) & 0x7f;
65 buf[1] = div & 0xff;
66 buf[2] = 0xce;
67 buf[3] = (params->frequency < 150000000 ? 0x01 :
68 params->frequency < 445000000 ? 0x02 : 0x04);
69 buf[4] = 0xde;
70 buf[5] = 0x20;
71
72 if (fe->ops.i2c_gate_ctrl)
73 fe->ops.i2c_gate_ctrl(fe, 1);
74
75 if (i2c_transfer(adapter, &msg, 1) != 1)
76 return -EIO;
77
78 /* wait for the pll lock */
79 msg.flags = I2C_M_RD;
80 msg.len = 1;
81 for (i = 0; i < 20; i++) {
82 if (fe->ops.i2c_gate_ctrl)
83 fe->ops.i2c_gate_ctrl(fe, 1);
84
85 if (i2c_transfer(adapter, &msg, 1) == 1 && (buf[0] & 0x40))
86 break;
87
88 msleep(10);
89 }
90
91 /* switch the charge pump to the lower current */
92 msg.flags = 0;
93 msg.len = 2;
94 msg.buf = &buf[2];
95 buf[2] &= ~0x40;
96 if (fe->ops.i2c_gate_ctrl)
97 fe->ops.i2c_gate_ctrl(fe, 1);
98
99 if (i2c_transfer(adapter, &msg, 1) != 1)
100 return -EIO;
101
102 return 0;
103}
104
105static u8 read_pwm(struct mantis_pci *mantis)
106{
107 struct i2c_adapter *adapter = &mantis->adapter;
108
109 u8 b = 0xff;
110 u8 pwm;
111 struct i2c_msg msg[] = {
112 {.addr = 0x50, .flags = 0, .buf = &b, .len = 1},
113 {.addr = 0x50, .flags = I2C_M_RD, .buf = &pwm, .len = 1}
114 };
115
116 if ((i2c_transfer(adapter, msg, 2) != 2)
117 || (pwm == 0xff))
118 pwm = 0x48;
119
120 return pwm;
121}
122
123static int vp2040_frontend_init(struct mantis_pci *mantis, struct dvb_frontend *fe)
124{
125 struct i2c_adapter *adapter = &mantis->adapter;
126
127 int err = 0;
128
129 err = mantis_frontend_power(mantis, POWER_ON);
130 if (err == 0) {
131 mantis_frontend_soft_reset(mantis);
132 msleep(250);
133
134 dprintk(MANTIS_ERROR, 1, "Probing for CU1216 (DVB-C)");
135 fe = tda10021_attach(&vp2040_tda1002x_cu1216_config,
136 adapter,
137 read_pwm(mantis));
138
139 if (fe) {
140 dprintk(MANTIS_ERROR, 1,
141 "found Philips CU1216 DVB-C frontend (TDA10021) @ 0x%02x",
142 vp2040_tda1002x_cu1216_config.demod_address);
143 } else {
144 fe = tda10023_attach(&vp2040_tda10023_cu1216_config,
145 adapter,
146 read_pwm(mantis));
147
148 if (fe) {
149 dprintk(MANTIS_ERROR, 1,
150 "found Philips CU1216 DVB-C frontend (TDA10023) @ 0x%02x",
151 vp2040_tda1002x_cu1216_config.demod_address);
152 }
153 }
154
155 if (fe) {
156 fe->ops.tuner_ops.set_params = tda1002x_cu1216_tuner_set;
157 dprintk(MANTIS_ERROR, 1, "Mantis DVB-C Philips CU1216 frontend attach success");
158 } else {
159 return -1;
160 }
161 } else {
162 dprintk(MANTIS_ERROR, 1, "Frontend on <%s> POWER ON failed! <%d>",
163 adapter->name,
164 err);
165
166 return -EIO;
167 }
168 mantis->fe = fe;
169 dprintk(MANTIS_DEBUG, 1, "Done!");
170
171 return 0;
172}
173
174struct mantis_hwconfig vp2040_config = {
175 .model_name = MANTIS_MODEL_NAME,
176 .dev_type = MANTIS_DEV_TYPE,
177 .ts_size = MANTIS_TS_204,
178
179 .baud_rate = MANTIS_BAUD_9600,
180 .parity = MANTIS_PARITY_NONE,
181 .bytes = 0,
182
183 .frontend_init = vp2040_frontend_init,
184 .power = GPIF_A12,
185 .reset = GPIF_A13,
186};
diff --git a/drivers/media/dvb/mantis/mantis_vp2040.h b/drivers/media/dvb/mantis/mantis_vp2040.h
new file mode 100644
index 000000000000..d125e219b685
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp2040.h
@@ -0,0 +1,32 @@
1/*
2 Mantis VP-2040 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_VP2040_H
22#define __MANTIS_VP2040_H
23
24#include "mantis_common.h"
25
26#define MANTIS_VP_2040_DVB_C 0x0043
27#define CINERGY_C 0x1178
28#define CABLESTAR_HD2 0x0002
29
30extern struct mantis_hwconfig vp2040_config;
31
32#endif /* __MANTIS_VP2040_H */
diff --git a/drivers/media/dvb/mantis/mantis_vp3028.c b/drivers/media/dvb/mantis/mantis_vp3028.c
new file mode 100644
index 000000000000..4155c838a18a
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp3028.c
@@ -0,0 +1,38 @@
1/*
2 Mantis VP-3028 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include "mantis_common.h"
22#include "mantis_vp3028.h"
23
24struct zl10353_config mantis_vp3028_config = {
25 .demod_address = 0x0f,
26};
27
28#define MANTIS_MODEL_NAME "VP-3028"
29#define MANTIS_DEV_TYPE "DVB-T"
30
31struct mantis_hwconfig vp3028_mantis_config = {
32 .model_name = MANTIS_MODEL_NAME,
33 .dev_type = MANTIS_DEV_TYPE,
34 .ts_size = MANTIS_TS_188,
35 .baud_rate = MANTIS_BAUD_9600,
36 .parity = MANTIS_PARITY_NONE,
37 .bytes = 0,
38};
diff --git a/drivers/media/dvb/mantis/mantis_vp3028.h b/drivers/media/dvb/mantis/mantis_vp3028.h
new file mode 100644
index 000000000000..b07be6adc522
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp3028.h
@@ -0,0 +1,33 @@
1/*
2 Mantis VP-3028 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_VP3028_H
22#define __MANTIS_VP3028_H
23
24#include "dvb_frontend.h"
25#include "mantis_common.h"
26#include "zl10353.h"
27
28#define MANTIS_VP_3028_DVB_T 0x0028
29
30extern struct zl10353_config mantis_vp3028_config;
31extern struct mantis_hwconfig vp3028_mantis_config;
32
33#endif /* __MANTIS_VP3028_H */
diff --git a/drivers/media/dvb/mantis/mantis_vp3030.c b/drivers/media/dvb/mantis/mantis_vp3030.c
new file mode 100644
index 000000000000..1f4334214953
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp3030.c
@@ -0,0 +1,105 @@
1/*
2 Mantis VP-3030 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#include <linux/signal.h>
22#include <linux/sched.h>
23#include <linux/interrupt.h>
24
25#include "dmxdev.h"
26#include "dvbdev.h"
27#include "dvb_demux.h"
28#include "dvb_frontend.h"
29#include "dvb_net.h"
30
31#include "zl10353.h"
32#include "tda665x.h"
33#include "mantis_common.h"
34#include "mantis_ioc.h"
35#include "mantis_dvb.h"
36#include "mantis_vp3030.h"
37
38struct zl10353_config mantis_vp3030_config = {
39 .demod_address = 0x0f,
40};
41
42struct tda665x_config env57h12d5_config = {
43 .name = "ENV57H12D5 (ET-50DT)",
44 .addr = 0x60,
45 .frequency_min = 47000000,
46 .frequency_max = 862000000,
47 .frequency_offst = 3616667,
48 .ref_multiplier = 6, /* 1/6 MHz */
49 .ref_divider = 100000, /* 1/6 MHz */
50};
51
52#define MANTIS_MODEL_NAME "VP-3030"
53#define MANTIS_DEV_TYPE "DVB-T"
54
55
56static int vp3030_frontend_init(struct mantis_pci *mantis, struct dvb_frontend *fe)
57{
58 struct i2c_adapter *adapter = &mantis->adapter;
59 struct mantis_hwconfig *config = mantis->hwconfig;
60 int err = 0;
61
62 gpio_set_bits(mantis, config->reset, 0);
63 msleep(100);
64 err = mantis_frontend_power(mantis, POWER_ON);
65 msleep(100);
66 gpio_set_bits(mantis, config->reset, 1);
67
68 if (err == 0) {
69 msleep(250);
70 dprintk(MANTIS_ERROR, 1, "Probing for 10353 (DVB-T)");
71 fe = zl10353_attach(&mantis_vp3030_config, adapter);
72
73 if (!fe)
74 return -1;
75
76 tda665x_attach(fe, &env57h12d5_config, adapter);
77 } else {
78 dprintk(MANTIS_ERROR, 1, "Frontend on <%s> POWER ON failed! <%d>",
79 adapter->name,
80 err);
81
82 return -EIO;
83
84 }
85 mantis->fe = fe;
86 dprintk(MANTIS_ERROR, 1, "Done!");
87
88 return 0;
89}
90
91struct mantis_hwconfig vp3030_config = {
92 .model_name = MANTIS_MODEL_NAME,
93 .dev_type = MANTIS_DEV_TYPE,
94 .ts_size = MANTIS_TS_188,
95
96 .baud_rate = MANTIS_BAUD_9600,
97 .parity = MANTIS_PARITY_NONE,
98 .bytes = 0,
99
100 .frontend_init = vp3030_frontend_init,
101 .power = GPIF_A12,
102 .reset = GPIF_A13,
103
104 .i2c_mode = MANTIS_BYTE_MODE
105};
diff --git a/drivers/media/dvb/mantis/mantis_vp3030.h b/drivers/media/dvb/mantis/mantis_vp3030.h
new file mode 100644
index 000000000000..5f12c4266277
--- /dev/null
+++ b/drivers/media/dvb/mantis/mantis_vp3030.h
@@ -0,0 +1,30 @@
1/*
2 Mantis VP-3030 driver
3
4 Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*/
20
21#ifndef __MANTIS_VP3030_H
22#define __MANTIS_VP3030_H
23
24#include "mantis_common.h"
25
26#define MANTIS_VP_3030_DVB_T 0x0024
27
28extern struct mantis_hwconfig vp3030_config;
29
30#endif /* __MANTIS_VP3030_H */
diff --git a/drivers/media/video/gspca/gspca.c b/drivers/media/video/gspca/gspca.c
index e930a67d526b..bd6214d4ab3b 100644
--- a/drivers/media/video/gspca/gspca.c
+++ b/drivers/media/video/gspca/gspca.c
@@ -1815,6 +1815,8 @@ static int vidioc_qbuf(struct file *file, void *priv,
1815 /* put the buffer in the 'queued' queue */ 1815 /* put the buffer in the 'queued' queue */
1816 i = gspca_dev->fr_q; 1816 i = gspca_dev->fr_q;
1817 gspca_dev->fr_queue[i] = index; 1817 gspca_dev->fr_queue[i] = index;
1818 if (gspca_dev->fr_i == i)
1819 gspca_dev->cur_frame = frame;
1818 gspca_dev->fr_q = (i + 1) % gspca_dev->nframes; 1820 gspca_dev->fr_q = (i + 1) % gspca_dev->nframes;
1819 PDEBUG(D_FRAM, "qbuf q:%d i:%d o:%d", 1821 PDEBUG(D_FRAM, "qbuf q:%d i:%d o:%d",
1820 gspca_dev->fr_q, 1822 gspca_dev->fr_q,
diff --git a/drivers/media/video/gspca/m5602/m5602_s5k4aa.c b/drivers/media/video/gspca/m5602/m5602_s5k4aa.c
index aa2f3c7e2cb5..1b536f7d30cf 100644
--- a/drivers/media/video/gspca/m5602/m5602_s5k4aa.c
+++ b/drivers/media/video/gspca/m5602/m5602_s5k4aa.c
@@ -48,6 +48,12 @@ static
48 DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Xa 2528") 48 DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Xa 2528")
49 } 49 }
50 }, { 50 }, {
51 .ident = "Fujitsu-Siemens Amilo Xi 2428",
52 .matches = {
53 DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
54 DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Xi 2428")
55 }
56 }, {
51 .ident = "Fujitsu-Siemens Amilo Xi 2528", 57 .ident = "Fujitsu-Siemens Amilo Xi 2528",
52 .matches = { 58 .matches = {
53 DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"), 59 DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
diff --git a/drivers/media/video/gspca/ov534.c b/drivers/media/video/gspca/ov534.c
index 4dbb882c83dc..0a6b8f07a69d 100644
--- a/drivers/media/video/gspca/ov534.c
+++ b/drivers/media/video/gspca/ov534.c
@@ -1533,7 +1533,7 @@ static void setexposure_96(struct gspca_dev *gspca_dev)
1533static void setsharpness_96(struct gspca_dev *gspca_dev) 1533static void setsharpness_96(struct gspca_dev *gspca_dev)
1534{ 1534{
1535 struct sd *sd = (struct sd *) gspca_dev; 1535 struct sd *sd = (struct sd *) gspca_dev;
1536 u8 val; 1536 s8 val;
1537 1537
1538 val = sd->sharpness; 1538 val = sd->sharpness;
1539 if (val < 0) { /* auto */ 1539 if (val < 0) { /* auto */
diff --git a/drivers/media/video/gspca/sn9c20x.c b/drivers/media/video/gspca/sn9c20x.c
index 4cff8035614f..0ca1c06652b1 100644
--- a/drivers/media/video/gspca/sn9c20x.c
+++ b/drivers/media/video/gspca/sn9c20x.c
@@ -2319,7 +2319,7 @@ static void do_autogain(struct gspca_dev *gspca_dev, u16 avg_lum)
2319 } 2319 }
2320 } 2320 }
2321 if (avg_lum > MAX_AVG_LUM) { 2321 if (avg_lum > MAX_AVG_LUM) {
2322 if (sd->gain - 1 >= 0) { 2322 if (sd->gain >= 1) {
2323 sd->gain--; 2323 sd->gain--;
2324 set_gain(gspca_dev); 2324 set_gain(gspca_dev);
2325 } 2325 }
diff --git a/drivers/media/video/gspca/stv06xx/stv06xx_vv6410.h b/drivers/media/video/gspca/stv06xx/stv06xx_vv6410.h
index 487d40555343..96c61926d372 100644
--- a/drivers/media/video/gspca/stv06xx/stv06xx_vv6410.h
+++ b/drivers/media/video/gspca/stv06xx/stv06xx_vv6410.h
@@ -228,6 +228,7 @@ static const struct stv_init stv_bridge_init[] = {
228 /* This reg is written twice. Some kind of reset? */ 228 /* This reg is written twice. Some kind of reset? */
229 {NULL, 0x1620, 0x80}, 229 {NULL, 0x1620, 0x80},
230 {NULL, 0x1620, 0x00}, 230 {NULL, 0x1620, 0x00},
231 {NULL, 0x1443, 0x00},
231 {NULL, 0x1423, 0x04}, 232 {NULL, 0x1423, 0x04},
232 {x1500, 0x1500, ARRAY_SIZE(x1500)}, 233 {x1500, 0x1500, ARRAY_SIZE(x1500)},
233 {x1536, 0x1536, ARRAY_SIZE(x1536)}, 234 {x1536, 0x1536, ARRAY_SIZE(x1536)},
diff --git a/drivers/media/video/gspca/sunplus.c b/drivers/media/video/gspca/sunplus.c
index 716df6b15fc5..306b7d75b4aa 100644
--- a/drivers/media/video/gspca/sunplus.c
+++ b/drivers/media/video/gspca/sunplus.c
@@ -709,7 +709,7 @@ static void spca504B_SetSizeType(struct gspca_dev *gspca_dev)
709 spca504B_PollingDataReady(gspca_dev); 709 spca504B_PollingDataReady(gspca_dev);
710 710
711 /* Init the cam width height with some values get on init ? */ 711 /* Init the cam width height with some values get on init ? */
712 reg_w_riv(gspca_dev, 0x31, 0, 0x04); 712 reg_w_riv(gspca_dev, 0x31, 0x0004, 0x00);
713 spca504B_WaitCmdStatus(gspca_dev); 713 spca504B_WaitCmdStatus(gspca_dev);
714 spca504B_PollingDataReady(gspca_dev); 714 spca504B_PollingDataReady(gspca_dev);
715 break; 715 break;
@@ -807,14 +807,14 @@ static void init_ctl_reg(struct gspca_dev *gspca_dev)
807 default: 807 default:
808/* case BRIDGE_SPCA533: */ 808/* case BRIDGE_SPCA533: */
809/* case BRIDGE_SPCA504B: */ 809/* case BRIDGE_SPCA504B: */
810 reg_w_riv(gspca_dev, 0, 0x00, 0x21ad); /* hue */ 810 reg_w_riv(gspca_dev, 0, 0x21ad, 0x00); /* hue */
811 reg_w_riv(gspca_dev, 0, 0x01, 0x21ac); /* sat/hue */ 811 reg_w_riv(gspca_dev, 0, 0x21ac, 0x01); /* sat/hue */
812 reg_w_riv(gspca_dev, 0, 0x00, 0x21a3); /* gamma */ 812 reg_w_riv(gspca_dev, 0, 0x21a3, 0x00); /* gamma */
813 break; 813 break;
814 case BRIDGE_SPCA536: 814 case BRIDGE_SPCA536:
815 reg_w_riv(gspca_dev, 0, 0x40, 0x20f5); 815 reg_w_riv(gspca_dev, 0, 0x20f5, 0x40);
816 reg_w_riv(gspca_dev, 0, 0x01, 0x20f4); 816 reg_w_riv(gspca_dev, 0, 0x20f4, 0x01);
817 reg_w_riv(gspca_dev, 0, 0x00, 0x2089); 817 reg_w_riv(gspca_dev, 0, 0x2089, 0x00);
818 break; 818 break;
819 } 819 }
820 if (pollreg) 820 if (pollreg)
@@ -887,11 +887,11 @@ static int sd_init(struct gspca_dev *gspca_dev)
887 switch (sd->bridge) { 887 switch (sd->bridge) {
888 case BRIDGE_SPCA504B: 888 case BRIDGE_SPCA504B:
889 reg_w_riv(gspca_dev, 0x1d, 0x00, 0); 889 reg_w_riv(gspca_dev, 0x1d, 0x00, 0);
890 reg_w_riv(gspca_dev, 0, 0x01, 0x2306); 890 reg_w_riv(gspca_dev, 0x00, 0x2306, 0x01);
891 reg_w_riv(gspca_dev, 0, 0x00, 0x0d04); 891 reg_w_riv(gspca_dev, 0x00, 0x0d04, 0x00);
892 reg_w_riv(gspca_dev, 0, 0x00, 0x2000); 892 reg_w_riv(gspca_dev, 0x00, 0x2000, 0x00);
893 reg_w_riv(gspca_dev, 0, 0x13, 0x2301); 893 reg_w_riv(gspca_dev, 0x00, 0x2301, 0x13);
894 reg_w_riv(gspca_dev, 0, 0x00, 0x2306); 894 reg_w_riv(gspca_dev, 0x00, 0x2306, 0x00);
895 /* fall thru */ 895 /* fall thru */
896 case BRIDGE_SPCA533: 896 case BRIDGE_SPCA533:
897 spca504B_PollingDataReady(gspca_dev); 897 spca504B_PollingDataReady(gspca_dev);
@@ -1000,7 +1000,7 @@ static int sd_start(struct gspca_dev *gspca_dev)
1000 spca504B_WaitCmdStatus(gspca_dev); 1000 spca504B_WaitCmdStatus(gspca_dev);
1001 break; 1001 break;
1002 default: 1002 default:
1003 reg_w_riv(gspca_dev, 0x31, 0, 0x04); 1003 reg_w_riv(gspca_dev, 0x31, 0x0004, 0x00);
1004 spca504B_WaitCmdStatus(gspca_dev); 1004 spca504B_WaitCmdStatus(gspca_dev);
1005 spca504B_PollingDataReady(gspca_dev); 1005 spca504B_PollingDataReady(gspca_dev);
1006 break; 1006 break;
diff --git a/drivers/media/video/gspca/vc032x.c b/drivers/media/video/gspca/vc032x.c
index c090efcd8045..71921c878424 100644
--- a/drivers/media/video/gspca/vc032x.c
+++ b/drivers/media/video/gspca/vc032x.c
@@ -3009,6 +3009,10 @@ static void sd_pkt_scan(struct gspca_dev *gspca_dev,
3009 int l; 3009 int l;
3010 3010
3011 frame = gspca_get_i_frame(gspca_dev); 3011 frame = gspca_get_i_frame(gspca_dev);
3012 if (frame == NULL) {
3013 gspca_dev->last_packet_type = DISCARD_PACKET;
3014 return;
3015 }
3012 l = frame->data_end - frame->data; 3016 l = frame->data_end - frame->data;
3013 if (len > frame->v4l2_buf.length - l) 3017 if (len > frame->v4l2_buf.length - l)
3014 len = frame->v4l2_buf.length - l; 3018 len = frame->v4l2_buf.length - l;
diff --git a/drivers/media/video/mx1_camera.c b/drivers/media/video/mx1_camera.c
index 2ba14fb5b031..c167cc3de492 100644
--- a/drivers/media/video/mx1_camera.c
+++ b/drivers/media/video/mx1_camera.c
@@ -718,7 +718,7 @@ static int __init mx1_camera_probe(struct platform_device *pdev)
718 718
719 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 719 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
720 irq = platform_get_irq(pdev, 0); 720 irq = platform_get_irq(pdev, 0);
721 if (!res || !irq) { 721 if (!res || (int)irq <= 0) {
722 err = -ENODEV; 722 err = -ENODEV;
723 goto exit; 723 goto exit;
724 } 724 }
diff --git a/drivers/media/video/rj54n1cb0c.c b/drivers/media/video/rj54n1cb0c.c
index 7e42989ce0e4..805226e0d9c1 100644
--- a/drivers/media/video/rj54n1cb0c.c
+++ b/drivers/media/video/rj54n1cb0c.c
@@ -563,7 +563,7 @@ static int rj54n1_s_crop(struct v4l2_subdev *sd, struct v4l2_crop *a)
563 struct i2c_client *client = sd->priv; 563 struct i2c_client *client = sd->priv;
564 struct rj54n1 *rj54n1 = to_rj54n1(client); 564 struct rj54n1 *rj54n1 = to_rj54n1(client);
565 struct v4l2_rect *rect = &a->c; 565 struct v4l2_rect *rect = &a->c;
566 unsigned int dummy, output_w, output_h, 566 unsigned int dummy = 0, output_w, output_h,
567 input_w = rect->width, input_h = rect->height; 567 input_w = rect->width, input_h = rect->height;
568 int ret; 568 int ret;
569 569
diff --git a/drivers/media/video/saa7134/saa7134-core.c b/drivers/media/video/saa7134/saa7134-core.c
index 9f85e917f9f3..a7ad7810fddc 100644
--- a/drivers/media/video/saa7134/saa7134-core.c
+++ b/drivers/media/video/saa7134/saa7134-core.c
@@ -420,19 +420,6 @@ int saa7134_set_dmabits(struct saa7134_dev *dev)
420 ctrl |= SAA7134_MAIN_CTRL_TE5; 420 ctrl |= SAA7134_MAIN_CTRL_TE5;
421 irq |= SAA7134_IRQ1_INTE_RA2_1 | 421 irq |= SAA7134_IRQ1_INTE_RA2_1 |
422 SAA7134_IRQ1_INTE_RA2_0; 422 SAA7134_IRQ1_INTE_RA2_0;
423
424 /* dma: setup channel 5 (= TS) */
425
426 saa_writeb(SAA7134_TS_DMA0, (dev->ts.nr_packets - 1) & 0xff);
427 saa_writeb(SAA7134_TS_DMA1,
428 ((dev->ts.nr_packets - 1) >> 8) & 0xff);
429 /* TSNOPIT=0, TSCOLAP=0 */
430 saa_writeb(SAA7134_TS_DMA2,
431 (((dev->ts.nr_packets - 1) >> 16) & 0x3f) | 0x00);
432 saa_writel(SAA7134_RS_PITCH(5), TS_PACKET_SIZE);
433 saa_writel(SAA7134_RS_CONTROL(5), SAA7134_RS_CONTROL_BURST_16 |
434 SAA7134_RS_CONTROL_ME |
435 (dev->ts.pt_ts.dma >> 12));
436 } 423 }
437 424
438 /* set task conditions + field handling */ 425 /* set task conditions + field handling */
diff --git a/drivers/media/video/saa7134/saa7134-ts.c b/drivers/media/video/saa7134/saa7134-ts.c
index 03488ba4c99c..b9817d74943f 100644
--- a/drivers/media/video/saa7134/saa7134-ts.c
+++ b/drivers/media/video/saa7134/saa7134-ts.c
@@ -250,6 +250,19 @@ int saa7134_ts_start(struct saa7134_dev *dev)
250 250
251 BUG_ON(dev->ts_started); 251 BUG_ON(dev->ts_started);
252 252
253 /* dma: setup channel 5 (= TS) */
254 saa_writeb(SAA7134_TS_DMA0, (dev->ts.nr_packets - 1) & 0xff);
255 saa_writeb(SAA7134_TS_DMA1,
256 ((dev->ts.nr_packets - 1) >> 8) & 0xff);
257 /* TSNOPIT=0, TSCOLAP=0 */
258 saa_writeb(SAA7134_TS_DMA2,
259 (((dev->ts.nr_packets - 1) >> 16) & 0x3f) | 0x00);
260 saa_writel(SAA7134_RS_PITCH(5), TS_PACKET_SIZE);
261 saa_writel(SAA7134_RS_CONTROL(5), SAA7134_RS_CONTROL_BURST_16 |
262 SAA7134_RS_CONTROL_ME |
263 (dev->ts.pt_ts.dma >> 12));
264
265 /* reset hardware TS buffers */
253 saa_writeb(SAA7134_TS_SERIAL1, 0x00); 266 saa_writeb(SAA7134_TS_SERIAL1, 0x00);
254 saa_writeb(SAA7134_TS_SERIAL1, 0x03); 267 saa_writeb(SAA7134_TS_SERIAL1, 0x03);
255 saa_writeb(SAA7134_TS_SERIAL1, 0x00); 268 saa_writeb(SAA7134_TS_SERIAL1, 0x00);
diff --git a/drivers/media/video/sh_mobile_ceu_camera.c b/drivers/media/video/sh_mobile_ceu_camera.c
index d69363f0d8c9..f09c7140d6b2 100644
--- a/drivers/media/video/sh_mobile_ceu_camera.c
+++ b/drivers/media/video/sh_mobile_ceu_camera.c
@@ -1827,7 +1827,7 @@ static int __devinit sh_mobile_ceu_probe(struct platform_device *pdev)
1827 1827
1828 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 1828 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
1829 irq = platform_get_irq(pdev, 0); 1829 irq = platform_get_irq(pdev, 0);
1830 if (!res || !irq) { 1830 if (!res || (int)irq <= 0) {
1831 dev_err(&pdev->dev, "Not enough CEU platform resources.\n"); 1831 dev_err(&pdev->dev, "Not enough CEU platform resources.\n");
1832 err = -ENODEV; 1832 err = -ENODEV;
1833 goto exit; 1833 goto exit;
diff --git a/drivers/media/video/uvc/uvc_ctrl.c b/drivers/media/video/uvc/uvc_ctrl.c
index 0469d7a876a8..ec8ef8c5560a 100644
--- a/drivers/media/video/uvc/uvc_ctrl.c
+++ b/drivers/media/video/uvc/uvc_ctrl.c
@@ -1393,7 +1393,7 @@ uvc_ctrl_prune_entity(struct uvc_device *dev, struct uvc_entity *entity)
1393 size = entity->processing.bControlSize; 1393 size = entity->processing.bControlSize;
1394 1394
1395 for (i = 0; i < ARRAY_SIZE(blacklist); ++i) { 1395 for (i = 0; i < ARRAY_SIZE(blacklist); ++i) {
1396 if (!usb_match_id(dev->intf, &blacklist[i].id)) 1396 if (!usb_match_one_id(dev->intf, &blacklist[i].id))
1397 continue; 1397 continue;
1398 1398
1399 if (blacklist[i].index >= 8 * size || 1399 if (blacklist[i].index >= 8 * size ||
diff --git a/drivers/media/video/uvc/uvc_queue.c b/drivers/media/video/uvc/uvc_queue.c
index f854698c4061..ea11839cba4a 100644
--- a/drivers/media/video/uvc/uvc_queue.c
+++ b/drivers/media/video/uvc/uvc_queue.c
@@ -59,9 +59,9 @@
59 * returns immediately. 59 * returns immediately.
60 * 60 *
61 * When the buffer is full, the completion handler removes it from the irq 61 * When the buffer is full, the completion handler removes it from the irq
62 * queue, marks it as ready (UVC_BUF_STATE_DONE) and wakes its wait queue. 62 * queue, marks it as done (UVC_BUF_STATE_DONE) and wakes its wait queue.
63 * At that point, any process waiting on the buffer will be woken up. If a 63 * At that point, any process waiting on the buffer will be woken up. If a
64 * process tries to dequeue a buffer after it has been marked ready, the 64 * process tries to dequeue a buffer after it has been marked done, the
65 * dequeing will succeed immediately. 65 * dequeing will succeed immediately.
66 * 66 *
67 * 2. Buffers are queued, user is waiting on a buffer and the device gets 67 * 2. Buffers are queued, user is waiting on a buffer and the device gets
@@ -201,6 +201,7 @@ static void __uvc_query_buffer(struct uvc_buffer *buf,
201 break; 201 break;
202 case UVC_BUF_STATE_QUEUED: 202 case UVC_BUF_STATE_QUEUED:
203 case UVC_BUF_STATE_ACTIVE: 203 case UVC_BUF_STATE_ACTIVE:
204 case UVC_BUF_STATE_READY:
204 v4l2_buf->flags |= V4L2_BUF_FLAG_QUEUED; 205 v4l2_buf->flags |= V4L2_BUF_FLAG_QUEUED;
205 break; 206 break;
206 case UVC_BUF_STATE_IDLE: 207 case UVC_BUF_STATE_IDLE:
@@ -295,13 +296,15 @@ static int uvc_queue_waiton(struct uvc_buffer *buf, int nonblocking)
295{ 296{
296 if (nonblocking) { 297 if (nonblocking) {
297 return (buf->state != UVC_BUF_STATE_QUEUED && 298 return (buf->state != UVC_BUF_STATE_QUEUED &&
298 buf->state != UVC_BUF_STATE_ACTIVE) 299 buf->state != UVC_BUF_STATE_ACTIVE &&
300 buf->state != UVC_BUF_STATE_READY)
299 ? 0 : -EAGAIN; 301 ? 0 : -EAGAIN;
300 } 302 }
301 303
302 return wait_event_interruptible(buf->wait, 304 return wait_event_interruptible(buf->wait,
303 buf->state != UVC_BUF_STATE_QUEUED && 305 buf->state != UVC_BUF_STATE_QUEUED &&
304 buf->state != UVC_BUF_STATE_ACTIVE); 306 buf->state != UVC_BUF_STATE_ACTIVE &&
307 buf->state != UVC_BUF_STATE_READY);
305} 308}
306 309
307/* 310/*
@@ -348,6 +351,7 @@ int uvc_dequeue_buffer(struct uvc_video_queue *queue,
348 case UVC_BUF_STATE_IDLE: 351 case UVC_BUF_STATE_IDLE:
349 case UVC_BUF_STATE_QUEUED: 352 case UVC_BUF_STATE_QUEUED:
350 case UVC_BUF_STATE_ACTIVE: 353 case UVC_BUF_STATE_ACTIVE:
354 case UVC_BUF_STATE_READY:
351 default: 355 default:
352 uvc_trace(UVC_TRACE_CAPTURE, "[E] Invalid buffer state %u " 356 uvc_trace(UVC_TRACE_CAPTURE, "[E] Invalid buffer state %u "
353 "(driver bug?).\n", buf->state); 357 "(driver bug?).\n", buf->state);
@@ -489,6 +493,7 @@ struct uvc_buffer *uvc_queue_next_buffer(struct uvc_video_queue *queue,
489 493
490 spin_lock_irqsave(&queue->irqlock, flags); 494 spin_lock_irqsave(&queue->irqlock, flags);
491 list_del(&buf->queue); 495 list_del(&buf->queue);
496 buf->state = UVC_BUF_STATE_DONE;
492 if (!list_empty(&queue->irqqueue)) 497 if (!list_empty(&queue->irqqueue))
493 nextbuf = list_first_entry(&queue->irqqueue, struct uvc_buffer, 498 nextbuf = list_first_entry(&queue->irqqueue, struct uvc_buffer,
494 queue); 499 queue);
diff --git a/drivers/media/video/uvc/uvc_video.c b/drivers/media/video/uvc/uvc_video.c
index 9a9802830d41..7dcf534a0cf3 100644
--- a/drivers/media/video/uvc/uvc_video.c
+++ b/drivers/media/video/uvc/uvc_video.c
@@ -441,7 +441,7 @@ static int uvc_video_decode_start(struct uvc_streaming *stream,
441 if (fid != stream->last_fid && buf->buf.bytesused != 0) { 441 if (fid != stream->last_fid && buf->buf.bytesused != 0) {
442 uvc_trace(UVC_TRACE_FRAME, "Frame complete (FID bit " 442 uvc_trace(UVC_TRACE_FRAME, "Frame complete (FID bit "
443 "toggled).\n"); 443 "toggled).\n");
444 buf->state = UVC_BUF_STATE_DONE; 444 buf->state = UVC_BUF_STATE_READY;
445 return -EAGAIN; 445 return -EAGAIN;
446 } 446 }
447 447
@@ -470,7 +470,7 @@ static void uvc_video_decode_data(struct uvc_streaming *stream,
470 /* Complete the current frame if the buffer size was exceeded. */ 470 /* Complete the current frame if the buffer size was exceeded. */
471 if (len > maxlen) { 471 if (len > maxlen) {
472 uvc_trace(UVC_TRACE_FRAME, "Frame complete (overflow).\n"); 472 uvc_trace(UVC_TRACE_FRAME, "Frame complete (overflow).\n");
473 buf->state = UVC_BUF_STATE_DONE; 473 buf->state = UVC_BUF_STATE_READY;
474 } 474 }
475} 475}
476 476
@@ -482,7 +482,7 @@ static void uvc_video_decode_end(struct uvc_streaming *stream,
482 uvc_trace(UVC_TRACE_FRAME, "Frame complete (EOF found).\n"); 482 uvc_trace(UVC_TRACE_FRAME, "Frame complete (EOF found).\n");
483 if (data[0] == len) 483 if (data[0] == len)
484 uvc_trace(UVC_TRACE_FRAME, "EOF in empty payload.\n"); 484 uvc_trace(UVC_TRACE_FRAME, "EOF in empty payload.\n");
485 buf->state = UVC_BUF_STATE_DONE; 485 buf->state = UVC_BUF_STATE_READY;
486 if (stream->dev->quirks & UVC_QUIRK_STREAM_NO_FID) 486 if (stream->dev->quirks & UVC_QUIRK_STREAM_NO_FID)
487 stream->last_fid ^= UVC_STREAM_FID; 487 stream->last_fid ^= UVC_STREAM_FID;
488 } 488 }
@@ -568,8 +568,7 @@ static void uvc_video_decode_isoc(struct urb *urb, struct uvc_streaming *stream,
568 uvc_video_decode_end(stream, buf, mem, 568 uvc_video_decode_end(stream, buf, mem,
569 urb->iso_frame_desc[i].actual_length); 569 urb->iso_frame_desc[i].actual_length);
570 570
571 if (buf->state == UVC_BUF_STATE_DONE || 571 if (buf->state == UVC_BUF_STATE_READY)
572 buf->state == UVC_BUF_STATE_ERROR)
573 buf = uvc_queue_next_buffer(&stream->queue, buf); 572 buf = uvc_queue_next_buffer(&stream->queue, buf);
574 } 573 }
575} 574}
@@ -627,8 +626,7 @@ static void uvc_video_decode_bulk(struct urb *urb, struct uvc_streaming *stream,
627 if (!stream->bulk.skip_payload && buf != NULL) { 626 if (!stream->bulk.skip_payload && buf != NULL) {
628 uvc_video_decode_end(stream, buf, stream->bulk.header, 627 uvc_video_decode_end(stream, buf, stream->bulk.header,
629 stream->bulk.payload_size); 628 stream->bulk.payload_size);
630 if (buf->state == UVC_BUF_STATE_DONE || 629 if (buf->state == UVC_BUF_STATE_READY)
631 buf->state == UVC_BUF_STATE_ERROR)
632 buf = uvc_queue_next_buffer(&stream->queue, 630 buf = uvc_queue_next_buffer(&stream->queue,
633 buf); 631 buf);
634 } 632 }
@@ -669,7 +667,7 @@ static void uvc_video_encode_bulk(struct urb *urb, struct uvc_streaming *stream,
669 stream->bulk.payload_size == stream->bulk.max_payload_size) { 667 stream->bulk.payload_size == stream->bulk.max_payload_size) {
670 if (buf->buf.bytesused == stream->queue.buf_used) { 668 if (buf->buf.bytesused == stream->queue.buf_used) {
671 stream->queue.buf_used = 0; 669 stream->queue.buf_used = 0;
672 buf->state = UVC_BUF_STATE_DONE; 670 buf->state = UVC_BUF_STATE_READY;
673 uvc_queue_next_buffer(&stream->queue, buf); 671 uvc_queue_next_buffer(&stream->queue, buf);
674 stream->last_fid ^= UVC_STREAM_FID; 672 stream->last_fid ^= UVC_STREAM_FID;
675 } 673 }
@@ -924,10 +922,8 @@ static int uvc_init_video_bulk(struct uvc_streaming *stream,
924static int uvc_init_video(struct uvc_streaming *stream, gfp_t gfp_flags) 922static int uvc_init_video(struct uvc_streaming *stream, gfp_t gfp_flags)
925{ 923{
926 struct usb_interface *intf = stream->intf; 924 struct usb_interface *intf = stream->intf;
927 struct usb_host_interface *alts; 925 struct usb_host_endpoint *ep;
928 struct usb_host_endpoint *ep = NULL; 926 unsigned int i;
929 int intfnum = stream->intfnum;
930 unsigned int bandwidth, psize, i;
931 int ret; 927 int ret;
932 928
933 stream->last_fid = -1; 929 stream->last_fid = -1;
@@ -936,6 +932,12 @@ static int uvc_init_video(struct uvc_streaming *stream, gfp_t gfp_flags)
936 stream->bulk.payload_size = 0; 932 stream->bulk.payload_size = 0;
937 933
938 if (intf->num_altsetting > 1) { 934 if (intf->num_altsetting > 1) {
935 struct usb_host_endpoint *best_ep = NULL;
936 unsigned int best_psize = 3 * 1024;
937 unsigned int bandwidth;
938 unsigned int uninitialized_var(altsetting);
939 int intfnum = stream->intfnum;
940
939 /* Isochronous endpoint, select the alternate setting. */ 941 /* Isochronous endpoint, select the alternate setting. */
940 bandwidth = stream->ctrl.dwMaxPayloadTransferSize; 942 bandwidth = stream->ctrl.dwMaxPayloadTransferSize;
941 943
@@ -949,6 +951,9 @@ static int uvc_init_video(struct uvc_streaming *stream, gfp_t gfp_flags)
949 } 951 }
950 952
951 for (i = 0; i < intf->num_altsetting; ++i) { 953 for (i = 0; i < intf->num_altsetting; ++i) {
954 struct usb_host_interface *alts;
955 unsigned int psize;
956
952 alts = &intf->altsetting[i]; 957 alts = &intf->altsetting[i];
953 ep = uvc_find_endpoint(alts, 958 ep = uvc_find_endpoint(alts,
954 stream->header.bEndpointAddress); 959 stream->header.bEndpointAddress);
@@ -958,21 +963,27 @@ static int uvc_init_video(struct uvc_streaming *stream, gfp_t gfp_flags)
958 /* Check if the bandwidth is high enough. */ 963 /* Check if the bandwidth is high enough. */
959 psize = le16_to_cpu(ep->desc.wMaxPacketSize); 964 psize = le16_to_cpu(ep->desc.wMaxPacketSize);
960 psize = (psize & 0x07ff) * (1 + ((psize >> 11) & 3)); 965 psize = (psize & 0x07ff) * (1 + ((psize >> 11) & 3));
961 if (psize >= bandwidth) 966 if (psize >= bandwidth && psize <= best_psize) {
962 break; 967 altsetting = i;
968 best_psize = psize;
969 best_ep = ep;
970 }
963 } 971 }
964 972
965 if (i >= intf->num_altsetting) { 973 if (best_ep == NULL) {
966 uvc_trace(UVC_TRACE_VIDEO, "No fast enough alt setting " 974 uvc_trace(UVC_TRACE_VIDEO, "No fast enough alt setting "
967 "for requested bandwidth.\n"); 975 "for requested bandwidth.\n");
968 return -EIO; 976 return -EIO;
969 } 977 }
970 978
971 ret = usb_set_interface(stream->dev->udev, intfnum, i); 979 uvc_trace(UVC_TRACE_VIDEO, "Selecting alternate setting %u "
980 "(%u B/frame bandwidth).\n", altsetting, best_psize);
981
982 ret = usb_set_interface(stream->dev->udev, intfnum, altsetting);
972 if (ret < 0) 983 if (ret < 0)
973 return ret; 984 return ret;
974 985
975 ret = uvc_init_video_isoc(stream, ep, gfp_flags); 986 ret = uvc_init_video_isoc(stream, best_ep, gfp_flags);
976 } else { 987 } else {
977 /* Bulk endpoint, proceed to URB initialization. */ 988 /* Bulk endpoint, proceed to URB initialization. */
978 ep = uvc_find_endpoint(&intf->altsetting[0], 989 ep = uvc_find_endpoint(&intf->altsetting[0],
diff --git a/drivers/media/video/uvc/uvcvideo.h b/drivers/media/video/uvc/uvcvideo.h
index 7ec9a04ced50..2337585001ea 100644
--- a/drivers/media/video/uvc/uvcvideo.h
+++ b/drivers/media/video/uvc/uvcvideo.h
@@ -365,8 +365,9 @@ enum uvc_buffer_state {
365 UVC_BUF_STATE_IDLE = 0, 365 UVC_BUF_STATE_IDLE = 0,
366 UVC_BUF_STATE_QUEUED = 1, 366 UVC_BUF_STATE_QUEUED = 1,
367 UVC_BUF_STATE_ACTIVE = 2, 367 UVC_BUF_STATE_ACTIVE = 2,
368 UVC_BUF_STATE_DONE = 3, 368 UVC_BUF_STATE_READY = 3,
369 UVC_BUF_STATE_ERROR = 4, 369 UVC_BUF_STATE_DONE = 4,
370 UVC_BUF_STATE_ERROR = 5,
370}; 371};
371 372
372struct uvc_buffer { 373struct uvc_buffer {
diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c
index 85bc6a685e36..44d2037e9e56 100644
--- a/drivers/message/fusion/mptbase.c
+++ b/drivers/message/fusion/mptbase.c
@@ -4330,6 +4330,8 @@ initChainBuffers(MPT_ADAPTER *ioc)
4330 4330
4331 if (ioc->bus_type == SPI) 4331 if (ioc->bus_type == SPI)
4332 num_chain *= MPT_SCSI_CAN_QUEUE; 4332 num_chain *= MPT_SCSI_CAN_QUEUE;
4333 else if (ioc->bus_type == SAS)
4334 num_chain *= MPT_SAS_CAN_QUEUE;
4333 else 4335 else
4334 num_chain *= MPT_FC_CAN_QUEUE; 4336 num_chain *= MPT_FC_CAN_QUEUE;
4335 4337
diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile
index ca2f2c4ff05e..e09eb4870db6 100644
--- a/drivers/mfd/Makefile
+++ b/drivers/mfd/Makefile
@@ -3,7 +3,7 @@
3# 3#
4 4
5obj-$(CONFIG_MFD_SM501) += sm501.o 5obj-$(CONFIG_MFD_SM501) += sm501.o
6obj-$(CONFIG_MFD_ASIC3) += asic3.o 6obj-$(CONFIG_MFD_ASIC3) += asic3.o tmio_core.o
7obj-$(CONFIG_MFD_SH_MOBILE_SDHI) += sh_mobile_sdhi.o 7obj-$(CONFIG_MFD_SH_MOBILE_SDHI) += sh_mobile_sdhi.o
8 8
9obj-$(CONFIG_HTC_EGPIO) += htc-egpio.o 9obj-$(CONFIG_HTC_EGPIO) += htc-egpio.o
@@ -11,9 +11,9 @@ obj-$(CONFIG_HTC_PASIC3) += htc-pasic3.o
11 11
12obj-$(CONFIG_MFD_DM355EVM_MSP) += dm355evm_msp.o 12obj-$(CONFIG_MFD_DM355EVM_MSP) += dm355evm_msp.o
13 13
14obj-$(CONFIG_MFD_T7L66XB) += t7l66xb.o 14obj-$(CONFIG_MFD_T7L66XB) += t7l66xb.o tmio_core.o
15obj-$(CONFIG_MFD_TC6387XB) += tc6387xb.o 15obj-$(CONFIG_MFD_TC6387XB) += tc6387xb.o tmio_core.o
16obj-$(CONFIG_MFD_TC6393XB) += tc6393xb.o 16obj-$(CONFIG_MFD_TC6393XB) += tc6393xb.o tmio_core.o
17 17
18obj-$(CONFIG_MFD_WM8400) += wm8400-core.o 18obj-$(CONFIG_MFD_WM8400) += wm8400-core.o
19wm831x-objs := wm831x-core.o wm831x-irq.o wm831x-otp.o 19wm831x-objs := wm831x-core.o wm831x-irq.o wm831x-otp.o
diff --git a/drivers/mfd/asic3.c b/drivers/mfd/asic3.c
index e22128c3e9a8..95c1e6bd1729 100644
--- a/drivers/mfd/asic3.c
+++ b/drivers/mfd/asic3.c
@@ -80,6 +80,7 @@ struct asic3 {
80 u16 irq_bothedge[4]; 80 u16 irq_bothedge[4];
81 struct gpio_chip gpio; 81 struct gpio_chip gpio;
82 struct device *dev; 82 struct device *dev;
83 void __iomem *tmio_cnf;
83 84
84 struct asic3_clk clocks[ARRAY_SIZE(asic3_clk_init)]; 85 struct asic3_clk clocks[ARRAY_SIZE(asic3_clk_init)];
85}; 86};
@@ -685,8 +686,24 @@ static struct mfd_cell asic3_cell_ds1wm = {
685 .resources = ds1wm_resources, 686 .resources = ds1wm_resources,
686}; 687};
687 688
689static void asic3_mmc_pwr(struct platform_device *pdev, int state)
690{
691 struct asic3 *asic = dev_get_drvdata(pdev->dev.parent);
692
693 tmio_core_mmc_pwr(asic->tmio_cnf, 1 - asic->bus_shift, state);
694}
695
696static void asic3_mmc_clk_div(struct platform_device *pdev, int state)
697{
698 struct asic3 *asic = dev_get_drvdata(pdev->dev.parent);
699
700 tmio_core_mmc_clk_div(asic->tmio_cnf, 1 - asic->bus_shift, state);
701}
702
688static struct tmio_mmc_data asic3_mmc_data = { 703static struct tmio_mmc_data asic3_mmc_data = {
689 .hclk = 24576000, 704 .hclk = 24576000,
705 .set_pwr = asic3_mmc_pwr,
706 .set_clk_div = asic3_mmc_clk_div,
690}; 707};
691 708
692static struct resource asic3_mmc_resources[] = { 709static struct resource asic3_mmc_resources[] = {
@@ -696,11 +713,6 @@ static struct resource asic3_mmc_resources[] = {
696 .flags = IORESOURCE_MEM, 713 .flags = IORESOURCE_MEM,
697 }, 714 },
698 { 715 {
699 .start = ASIC3_SD_CONFIG_BASE,
700 .end = ASIC3_SD_CONFIG_BASE + 0x1ff,
701 .flags = IORESOURCE_MEM,
702 },
703 {
704 .start = 0, 716 .start = 0,
705 .end = 0, 717 .end = 0,
706 .flags = IORESOURCE_IRQ, 718 .flags = IORESOURCE_IRQ,
@@ -743,6 +755,10 @@ static int asic3_mmc_enable(struct platform_device *pdev)
743 asic3_set_register(asic, ASIC3_OFFSET(SDHWCTRL, SDCONF), 755 asic3_set_register(asic, ASIC3_OFFSET(SDHWCTRL, SDCONF),
744 ASIC3_SDHWCTRL_SDPWR, 1); 756 ASIC3_SDHWCTRL_SDPWR, 1);
745 757
758 /* ASIC3_SD_CTRL_BASE assumes 32-bit addressing, TMIO is 16-bit */
759 tmio_core_mmc_enable(asic->tmio_cnf, 1 - asic->bus_shift,
760 ASIC3_SD_CTRL_BASE >> 1);
761
746 return 0; 762 return 0;
747} 763}
748 764
@@ -797,10 +813,15 @@ static int __init asic3_mfd_probe(struct platform_device *pdev,
797 asic3_cell_ds1wm.data_size = sizeof(asic3_cell_ds1wm); 813 asic3_cell_ds1wm.data_size = sizeof(asic3_cell_ds1wm);
798 814
799 /* MMC */ 815 /* MMC */
816 asic->tmio_cnf = ioremap((ASIC3_SD_CONFIG_BASE >> asic->bus_shift) +
817 mem_sdio->start, 0x400 >> asic->bus_shift);
818 if (!asic->tmio_cnf) {
819 ret = -ENOMEM;
820 dev_dbg(asic->dev, "Couldn't ioremap SD_CONFIG\n");
821 goto out;
822 }
800 asic3_mmc_resources[0].start >>= asic->bus_shift; 823 asic3_mmc_resources[0].start >>= asic->bus_shift;
801 asic3_mmc_resources[0].end >>= asic->bus_shift; 824 asic3_mmc_resources[0].end >>= asic->bus_shift;
802 asic3_mmc_resources[1].start >>= asic->bus_shift;
803 asic3_mmc_resources[1].end >>= asic->bus_shift;
804 825
805 asic3_cell_mmc.platform_data = &asic3_cell_mmc; 826 asic3_cell_mmc.platform_data = &asic3_cell_mmc;
806 asic3_cell_mmc.data_size = sizeof(asic3_cell_mmc); 827 asic3_cell_mmc.data_size = sizeof(asic3_cell_mmc);
@@ -820,7 +841,10 @@ static int __init asic3_mfd_probe(struct platform_device *pdev,
820 841
821static void asic3_mfd_remove(struct platform_device *pdev) 842static void asic3_mfd_remove(struct platform_device *pdev)
822{ 843{
844 struct asic3 *asic = platform_get_drvdata(pdev);
845
823 mfd_remove_devices(&pdev->dev); 846 mfd_remove_devices(&pdev->dev);
847 iounmap(asic->tmio_cnf);
824} 848}
825 849
826/* Core */ 850/* Core */
diff --git a/drivers/mfd/mc13783-core.c b/drivers/mfd/mc13783-core.c
index a1ade2324ea9..735c8a4d164f 100644
--- a/drivers/mfd/mc13783-core.c
+++ b/drivers/mfd/mc13783-core.c
@@ -619,6 +619,8 @@ err_revision:
619 } 619 }
620 /* This should go away (END) */ 620 /* This should go away (END) */
621 621
622 mc13783_unlock(mc13783);
623
622 if (pdata->flags & MC13783_USE_ADC) 624 if (pdata->flags & MC13783_USE_ADC)
623 mc13783_add_subdevice(mc13783, "mc13783-adc"); 625 mc13783_add_subdevice(mc13783, "mc13783-adc");
624 626
@@ -641,8 +643,6 @@ err_revision:
641 if (pdata->flags & MC13783_USE_TOUCHSCREEN) 643 if (pdata->flags & MC13783_USE_TOUCHSCREEN)
642 mc13783_add_subdevice(mc13783, "mc13783-ts"); 644 mc13783_add_subdevice(mc13783, "mc13783-ts");
643 645
644 mc13783_unlock(mc13783);
645
646 return 0; 646 return 0;
647} 647}
648 648
diff --git a/drivers/mfd/t7l66xb.c b/drivers/mfd/t7l66xb.c
index 0a255c1f1ce7..bcf4687d4af5 100644
--- a/drivers/mfd/t7l66xb.c
+++ b/drivers/mfd/t7l66xb.c
@@ -38,6 +38,19 @@ enum {
38 T7L66XB_CELL_MMC, 38 T7L66XB_CELL_MMC,
39}; 39};
40 40
41static const struct resource t7l66xb_mmc_resources[] = {
42 {
43 .start = 0x800,
44 .end = 0x9ff,
45 .flags = IORESOURCE_MEM,
46 },
47 {
48 .start = IRQ_T7L66XB_MMC,
49 .end = IRQ_T7L66XB_MMC,
50 .flags = IORESOURCE_IRQ,
51 },
52};
53
41#define SCR_REVID 0x08 /* b Revision ID */ 54#define SCR_REVID 0x08 /* b Revision ID */
42#define SCR_IMR 0x42 /* b Interrupt Mask */ 55#define SCR_IMR 0x42 /* b Interrupt Mask */
43#define SCR_DEV_CTL 0xe0 /* b Device control */ 56#define SCR_DEV_CTL 0xe0 /* b Device control */
@@ -83,6 +96,9 @@ static int t7l66xb_mmc_enable(struct platform_device *mmc)
83 96
84 spin_unlock_irqrestore(&t7l66xb->lock, flags); 97 spin_unlock_irqrestore(&t7l66xb->lock, flags);
85 98
99 tmio_core_mmc_enable(t7l66xb->scr + 0x200, 0,
100 t7l66xb_mmc_resources[0].start & 0xfffe);
101
86 return 0; 102 return 0;
87} 103}
88 104
@@ -106,28 +122,28 @@ static int t7l66xb_mmc_disable(struct platform_device *mmc)
106 return 0; 122 return 0;
107} 123}
108 124
125static void t7l66xb_mmc_pwr(struct platform_device *mmc, int state)
126{
127 struct platform_device *dev = to_platform_device(mmc->dev.parent);
128 struct t7l66xb *t7l66xb = platform_get_drvdata(dev);
129
130 tmio_core_mmc_pwr(t7l66xb->scr + 0x200, 0, state);
131}
132
133static void t7l66xb_mmc_clk_div(struct platform_device *mmc, int state)
134{
135 struct platform_device *dev = to_platform_device(mmc->dev.parent);
136 struct t7l66xb *t7l66xb = platform_get_drvdata(dev);
137
138 tmio_core_mmc_clk_div(t7l66xb->scr + 0x200, 0, state);
139}
140
109/*--------------------------------------------------------------------------*/ 141/*--------------------------------------------------------------------------*/
110 142
111static struct tmio_mmc_data t7166xb_mmc_data = { 143static struct tmio_mmc_data t7166xb_mmc_data = {
112 .hclk = 24000000, 144 .hclk = 24000000,
113}; 145 .set_pwr = t7l66xb_mmc_pwr,
114 146 .set_clk_div = t7l66xb_mmc_clk_div,
115static const struct resource t7l66xb_mmc_resources[] = {
116 {
117 .start = 0x800,
118 .end = 0x9ff,
119 .flags = IORESOURCE_MEM,
120 },
121 {
122 .start = 0x200,
123 .end = 0x2ff,
124 .flags = IORESOURCE_MEM,
125 },
126 {
127 .start = IRQ_T7L66XB_MMC,
128 .end = IRQ_T7L66XB_MMC,
129 .flags = IORESOURCE_IRQ,
130 },
131}; 147};
132 148
133static const struct resource t7l66xb_nand_resources[] = { 149static const struct resource t7l66xb_nand_resources[] = {
@@ -282,6 +298,9 @@ static int t7l66xb_resume(struct platform_device *dev)
282 if (pdata && pdata->resume) 298 if (pdata && pdata->resume)
283 pdata->resume(dev); 299 pdata->resume(dev);
284 300
301 tmio_core_mmc_enable(t7l66xb->scr + 0x200, 0,
302 t7l66xb_mmc_resources[0].start & 0xfffe);
303
285 return 0; 304 return 0;
286} 305}
287#else 306#else
diff --git a/drivers/mfd/tc6387xb.c b/drivers/mfd/tc6387xb.c
index 3280ab33f88a..5c7f04343d5c 100644
--- a/drivers/mfd/tc6387xb.c
+++ b/drivers/mfd/tc6387xb.c
@@ -22,28 +22,52 @@ enum {
22 TC6387XB_CELL_MMC, 22 TC6387XB_CELL_MMC,
23}; 23};
24 24
25struct tc6387xb {
26 void __iomem *scr;
27 struct clk *clk32k;
28 struct resource rscr;
29};
30
31static struct resource tc6387xb_mmc_resources[] = {
32 {
33 .start = 0x800,
34 .end = 0x9ff,
35 .flags = IORESOURCE_MEM,
36 },
37 {
38 .start = 0,
39 .end = 0,
40 .flags = IORESOURCE_IRQ,
41 },
42};
43
44/*--------------------------------------------------------------------------*/
45
25#ifdef CONFIG_PM 46#ifdef CONFIG_PM
26static int tc6387xb_suspend(struct platform_device *dev, pm_message_t state) 47static int tc6387xb_suspend(struct platform_device *dev, pm_message_t state)
27{ 48{
28 struct clk *clk32k = platform_get_drvdata(dev); 49 struct tc6387xb *tc6387xb = platform_get_drvdata(dev);
29 struct tc6387xb_platform_data *pdata = dev->dev.platform_data; 50 struct tc6387xb_platform_data *pdata = dev->dev.platform_data;
30 51
31 if (pdata && pdata->suspend) 52 if (pdata && pdata->suspend)
32 pdata->suspend(dev); 53 pdata->suspend(dev);
33 clk_disable(clk32k); 54 clk_disable(tc6387xb->clk32k);
34 55
35 return 0; 56 return 0;
36} 57}
37 58
38static int tc6387xb_resume(struct platform_device *dev) 59static int tc6387xb_resume(struct platform_device *dev)
39{ 60{
40 struct clk *clk32k = platform_get_drvdata(dev); 61 struct tc6387xb *tc6387xb = platform_get_drvdata(dev);
41 struct tc6387xb_platform_data *pdata = dev->dev.platform_data; 62 struct tc6387xb_platform_data *pdata = dev->dev.platform_data;
42 63
43 clk_enable(clk32k); 64 clk_enable(tc6387xb->clk32k);
44 if (pdata && pdata->resume) 65 if (pdata && pdata->resume)
45 pdata->resume(dev); 66 pdata->resume(dev);
46 67
68 tmio_core_mmc_resume(tc6387xb->scr + 0x200, 0,
69 tc6387xb_mmc_resources[0].start & 0xfffe);
70
47 return 0; 71 return 0;
48} 72}
49#else 73#else
@@ -53,12 +77,32 @@ static int tc6387xb_resume(struct platform_device *dev)
53 77
54/*--------------------------------------------------------------------------*/ 78/*--------------------------------------------------------------------------*/
55 79
80static void tc6387xb_mmc_pwr(struct platform_device *mmc, int state)
81{
82 struct platform_device *dev = to_platform_device(mmc->dev.parent);
83 struct tc6387xb *tc6387xb = platform_get_drvdata(dev);
84
85 tmio_core_mmc_pwr(tc6387xb->scr + 0x200, 0, state);
86}
87
88static void tc6387xb_mmc_clk_div(struct platform_device *mmc, int state)
89{
90 struct platform_device *dev = to_platform_device(mmc->dev.parent);
91 struct tc6387xb *tc6387xb = platform_get_drvdata(dev);
92
93 tmio_core_mmc_clk_div(tc6387xb->scr + 0x200, 0, state);
94}
95
96
56static int tc6387xb_mmc_enable(struct platform_device *mmc) 97static int tc6387xb_mmc_enable(struct platform_device *mmc)
57{ 98{
58 struct platform_device *dev = to_platform_device(mmc->dev.parent); 99 struct platform_device *dev = to_platform_device(mmc->dev.parent);
59 struct clk *clk32k = platform_get_drvdata(dev); 100 struct tc6387xb *tc6387xb = platform_get_drvdata(dev);
60 101
61 clk_enable(clk32k); 102 clk_enable(tc6387xb->clk32k);
103
104 tmio_core_mmc_enable(tc6387xb->scr + 0x200, 0,
105 tc6387xb_mmc_resources[0].start & 0xfffe);
62 106
63 return 0; 107 return 0;
64} 108}
@@ -66,36 +110,20 @@ static int tc6387xb_mmc_enable(struct platform_device *mmc)
66static int tc6387xb_mmc_disable(struct platform_device *mmc) 110static int tc6387xb_mmc_disable(struct platform_device *mmc)
67{ 111{
68 struct platform_device *dev = to_platform_device(mmc->dev.parent); 112 struct platform_device *dev = to_platform_device(mmc->dev.parent);
69 struct clk *clk32k = platform_get_drvdata(dev); 113 struct tc6387xb *tc6387xb = platform_get_drvdata(dev);
70 114
71 clk_disable(clk32k); 115 clk_disable(tc6387xb->clk32k);
72 116
73 return 0; 117 return 0;
74} 118}
75 119
76/*--------------------------------------------------------------------------*/
77
78static struct tmio_mmc_data tc6387xb_mmc_data = { 120static struct tmio_mmc_data tc6387xb_mmc_data = {
79 .hclk = 24000000, 121 .hclk = 24000000,
122 .set_pwr = tc6387xb_mmc_pwr,
123 .set_clk_div = tc6387xb_mmc_clk_div,
80}; 124};
81 125
82static struct resource tc6387xb_mmc_resources[] = { 126/*--------------------------------------------------------------------------*/
83 {
84 .start = 0x800,
85 .end = 0x9ff,
86 .flags = IORESOURCE_MEM,
87 },
88 {
89 .start = 0x200,
90 .end = 0x2ff,
91 .flags = IORESOURCE_MEM,
92 },
93 {
94 .start = 0,
95 .end = 0,
96 .flags = IORESOURCE_IRQ,
97 },
98};
99 127
100static struct mfd_cell tc6387xb_cells[] = { 128static struct mfd_cell tc6387xb_cells[] = {
101 [TC6387XB_CELL_MMC] = { 129 [TC6387XB_CELL_MMC] = {
@@ -111,8 +139,9 @@ static struct mfd_cell tc6387xb_cells[] = {
111static int tc6387xb_probe(struct platform_device *dev) 139static int tc6387xb_probe(struct platform_device *dev)
112{ 140{
113 struct tc6387xb_platform_data *pdata = dev->dev.platform_data; 141 struct tc6387xb_platform_data *pdata = dev->dev.platform_data;
114 struct resource *iomem; 142 struct resource *iomem, *rscr;
115 struct clk *clk32k; 143 struct clk *clk32k;
144 struct tc6387xb *tc6387xb;
116 int irq, ret; 145 int irq, ret;
117 146
118 iomem = platform_get_resource(dev, IORESOURCE_MEM, 0); 147 iomem = platform_get_resource(dev, IORESOURCE_MEM, 0);
@@ -120,18 +149,40 @@ static int tc6387xb_probe(struct platform_device *dev)
120 return -EINVAL; 149 return -EINVAL;
121 } 150 }
122 151
152 tc6387xb = kzalloc(sizeof *tc6387xb, GFP_KERNEL);
153 if (!tc6387xb)
154 return -ENOMEM;
155
123 ret = platform_get_irq(dev, 0); 156 ret = platform_get_irq(dev, 0);
124 if (ret >= 0) 157 if (ret >= 0)
125 irq = ret; 158 irq = ret;
126 else 159 else
127 goto err_resource; 160 goto err_no_irq;
128 161
129 clk32k = clk_get(&dev->dev, "CLK_CK32K"); 162 clk32k = clk_get(&dev->dev, "CLK_CK32K");
130 if (IS_ERR(clk32k)) { 163 if (IS_ERR(clk32k)) {
131 ret = PTR_ERR(clk32k); 164 ret = PTR_ERR(clk32k);
165 goto err_no_clk;
166 }
167
168 rscr = &tc6387xb->rscr;
169 rscr->name = "tc6387xb-core";
170 rscr->start = iomem->start;
171 rscr->end = iomem->start + 0xff;
172 rscr->flags = IORESOURCE_MEM;
173
174 ret = request_resource(iomem, rscr);
175 if (ret)
132 goto err_resource; 176 goto err_resource;
177
178 tc6387xb->scr = ioremap(rscr->start, rscr->end - rscr->start + 1);
179 if (!tc6387xb->scr) {
180 ret = -ENOMEM;
181 goto err_ioremap;
133 } 182 }
134 platform_set_drvdata(dev, clk32k); 183
184 tc6387xb->clk32k = clk32k;
185 platform_set_drvdata(dev, tc6387xb);
135 186
136 if (pdata && pdata->enable) 187 if (pdata && pdata->enable)
137 pdata->enable(dev); 188 pdata->enable(dev);
@@ -149,8 +200,13 @@ static int tc6387xb_probe(struct platform_device *dev)
149 if (!ret) 200 if (!ret)
150 return 0; 201 return 0;
151 202
152 clk_put(clk32k); 203err_ioremap:
204 release_resource(&tc6387xb->rscr);
153err_resource: 205err_resource:
206 clk_put(clk32k);
207err_no_clk:
208err_no_irq:
209 kfree(tc6387xb);
154 return ret; 210 return ret;
155} 211}
156 212
@@ -195,3 +251,4 @@ MODULE_DESCRIPTION("Toshiba TC6387XB core driver");
195MODULE_LICENSE("GPL v2"); 251MODULE_LICENSE("GPL v2");
196MODULE_AUTHOR("Ian Molton"); 252MODULE_AUTHOR("Ian Molton");
197MODULE_ALIAS("platform:tc6387xb"); 253MODULE_ALIAS("platform:tc6387xb");
254
diff --git a/drivers/mfd/tc6393xb.c b/drivers/mfd/tc6393xb.c
index 1429a7341a9a..4bc5a08a2b09 100644
--- a/drivers/mfd/tc6393xb.c
+++ b/drivers/mfd/tc6393xb.c
@@ -136,10 +136,6 @@ static int tc6393xb_nand_enable(struct platform_device *nand)
136 return 0; 136 return 0;
137} 137}
138 138
139static struct tmio_mmc_data tc6393xb_mmc_data = {
140 .hclk = 24000000,
141};
142
143static struct resource __devinitdata tc6393xb_nand_resources[] = { 139static struct resource __devinitdata tc6393xb_nand_resources[] = {
144 { 140 {
145 .start = 0x1000, 141 .start = 0x1000,
@@ -165,11 +161,6 @@ static struct resource __devinitdata tc6393xb_mmc_resources[] = {
165 .flags = IORESOURCE_MEM, 161 .flags = IORESOURCE_MEM,
166 }, 162 },
167 { 163 {
168 .start = 0x200,
169 .end = 0x2ff,
170 .flags = IORESOURCE_MEM,
171 },
172 {
173 .start = IRQ_TC6393_MMC, 164 .start = IRQ_TC6393_MMC,
174 .end = IRQ_TC6393_MMC, 165 .end = IRQ_TC6393_MMC,
175 .flags = IORESOURCE_IRQ, 166 .flags = IORESOURCE_IRQ,
@@ -346,6 +337,50 @@ int tc6393xb_lcd_mode(struct platform_device *fb,
346} 337}
347EXPORT_SYMBOL(tc6393xb_lcd_mode); 338EXPORT_SYMBOL(tc6393xb_lcd_mode);
348 339
340static int tc6393xb_mmc_enable(struct platform_device *mmc)
341{
342 struct platform_device *dev = to_platform_device(mmc->dev.parent);
343 struct tc6393xb *tc6393xb = platform_get_drvdata(dev);
344
345 tmio_core_mmc_enable(tc6393xb->scr + 0x200, 0,
346 tc6393xb_mmc_resources[0].start & 0xfffe);
347
348 return 0;
349}
350
351static int tc6393xb_mmc_resume(struct platform_device *mmc)
352{
353 struct platform_device *dev = to_platform_device(mmc->dev.parent);
354 struct tc6393xb *tc6393xb = platform_get_drvdata(dev);
355
356 tmio_core_mmc_resume(tc6393xb->scr + 0x200, 0,
357 tc6393xb_mmc_resources[0].start & 0xfffe);
358
359 return 0;
360}
361
362static void tc6393xb_mmc_pwr(struct platform_device *mmc, int state)
363{
364 struct platform_device *dev = to_platform_device(mmc->dev.parent);
365 struct tc6393xb *tc6393xb = platform_get_drvdata(dev);
366
367 tmio_core_mmc_pwr(tc6393xb->scr + 0x200, 0, state);
368}
369
370static void tc6393xb_mmc_clk_div(struct platform_device *mmc, int state)
371{
372 struct platform_device *dev = to_platform_device(mmc->dev.parent);
373 struct tc6393xb *tc6393xb = platform_get_drvdata(dev);
374
375 tmio_core_mmc_clk_div(tc6393xb->scr + 0x200, 0, state);
376}
377
378static struct tmio_mmc_data tc6393xb_mmc_data = {
379 .hclk = 24000000,
380 .set_pwr = tc6393xb_mmc_pwr,
381 .set_clk_div = tc6393xb_mmc_clk_div,
382};
383
349static struct mfd_cell __devinitdata tc6393xb_cells[] = { 384static struct mfd_cell __devinitdata tc6393xb_cells[] = {
350 [TC6393XB_CELL_NAND] = { 385 [TC6393XB_CELL_NAND] = {
351 .name = "tmio-nand", 386 .name = "tmio-nand",
@@ -355,6 +390,8 @@ static struct mfd_cell __devinitdata tc6393xb_cells[] = {
355 }, 390 },
356 [TC6393XB_CELL_MMC] = { 391 [TC6393XB_CELL_MMC] = {
357 .name = "tmio-mmc", 392 .name = "tmio-mmc",
393 .enable = tc6393xb_mmc_enable,
394 .resume = tc6393xb_mmc_resume,
358 .driver_data = &tc6393xb_mmc_data, 395 .driver_data = &tc6393xb_mmc_data,
359 .num_resources = ARRAY_SIZE(tc6393xb_mmc_resources), 396 .num_resources = ARRAY_SIZE(tc6393xb_mmc_resources),
360 .resources = tc6393xb_mmc_resources, 397 .resources = tc6393xb_mmc_resources,
@@ -836,3 +873,4 @@ MODULE_LICENSE("GPL v2");
836MODULE_AUTHOR("Ian Molton, Dmitry Baryshkov and Dirk Opfer"); 873MODULE_AUTHOR("Ian Molton, Dmitry Baryshkov and Dirk Opfer");
837MODULE_DESCRIPTION("tc6393xb Toshiba Mobile IO Controller"); 874MODULE_DESCRIPTION("tc6393xb Toshiba Mobile IO Controller");
838MODULE_ALIAS("platform:tc6393xb"); 875MODULE_ALIAS("platform:tc6393xb");
876
diff --git a/drivers/mfd/tmio_core.c b/drivers/mfd/tmio_core.c
new file mode 100644
index 000000000000..eddc19ae464b
--- /dev/null
+++ b/drivers/mfd/tmio_core.c
@@ -0,0 +1,52 @@
1/*
2 * Copyright(c) 2009 Ian Molton <spyro@f2s.com>
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9#include <linux/mfd/tmio.h>
10
11int tmio_core_mmc_enable(void __iomem *cnf, int shift, unsigned long base)
12{
13 /* Enable the MMC/SD Control registers */
14 sd_config_write16(cnf, shift, CNF_CMD, SDCREN);
15 sd_config_write32(cnf, shift, CNF_CTL_BASE, base & 0xfffe);
16
17 /* Disable SD power during suspend */
18 sd_config_write8(cnf, shift, CNF_PWR_CTL_3, 0x01);
19
20 /* The below is required but why? FIXME */
21 sd_config_write8(cnf, shift, CNF_STOP_CLK_CTL, 0x1f);
22
23 /* Power down SD bus */
24 sd_config_write8(cnf, shift, CNF_PWR_CTL_2, 0x00);
25
26 return 0;
27}
28EXPORT_SYMBOL(tmio_core_mmc_enable);
29
30int tmio_core_mmc_resume(void __iomem *cnf, int shift, unsigned long base)
31{
32
33 /* Enable the MMC/SD Control registers */
34 sd_config_write16(cnf, shift, CNF_CMD, SDCREN);
35 sd_config_write32(cnf, shift, CNF_CTL_BASE, base & 0xfffe);
36
37 return 0;
38}
39EXPORT_SYMBOL(tmio_core_mmc_resume);
40
41void tmio_core_mmc_pwr(void __iomem *cnf, int shift, int state)
42{
43 sd_config_write8(cnf, shift, CNF_PWR_CTL_2, state ? 0x02 : 0x00);
44}
45EXPORT_SYMBOL(tmio_core_mmc_pwr);
46
47void tmio_core_mmc_clk_div(void __iomem *cnf, int shift, int state)
48{
49 sd_config_write8(cnf, shift, CNF_SD_CLK_MODE, state ? 1 : 0);
50}
51EXPORT_SYMBOL(tmio_core_mmc_clk_div);
52
diff --git a/drivers/mfd/wm8350-core.c b/drivers/mfd/wm8350-core.c
index 8485a7018060..9a970bd68775 100644
--- a/drivers/mfd/wm8350-core.c
+++ b/drivers/mfd/wm8350-core.c
@@ -134,8 +134,7 @@ static inline int is_reg_locked(struct wm8350 *wm8350, u8 reg)
134 wm8350->reg_cache[WM8350_SECURITY] == WM8350_UNLOCK_KEY) 134 wm8350->reg_cache[WM8350_SECURITY] == WM8350_UNLOCK_KEY)
135 return 0; 135 return 0;
136 136
137 if ((reg == WM8350_GPIO_CONFIGURATION_I_O) || 137 if ((reg >= WM8350_GPIO_FUNCTION_SELECT_1 &&
138 (reg >= WM8350_GPIO_FUNCTION_SELECT_1 &&
139 reg <= WM8350_GPIO_FUNCTION_SELECT_4) || 138 reg <= WM8350_GPIO_FUNCTION_SELECT_4) ||
140 (reg >= WM8350_BATTERY_CHARGER_CONTROL_1 && 139 (reg >= WM8350_BATTERY_CHARGER_CONTROL_1 &&
141 reg <= WM8350_BATTERY_CHARGER_CONTROL_3)) 140 reg <= WM8350_BATTERY_CHARGER_CONTROL_3))
diff --git a/drivers/mfd/wm8350-irq.c b/drivers/mfd/wm8350-irq.c
index c8df547c4747..9025f29e2707 100644
--- a/drivers/mfd/wm8350-irq.c
+++ b/drivers/mfd/wm8350-irq.c
@@ -434,7 +434,7 @@ int wm8350_register_irq(struct wm8350 *wm8350, int irq,
434 irq_handler_t handler, unsigned long flags, 434 irq_handler_t handler, unsigned long flags,
435 const char *name, void *data) 435 const char *name, void *data)
436{ 436{
437 if (irq < 0 || irq > WM8350_NUM_IRQ || !handler) 437 if (irq < 0 || irq >= WM8350_NUM_IRQ || !handler)
438 return -EINVAL; 438 return -EINVAL;
439 439
440 if (wm8350->irq[irq].handler) 440 if (wm8350->irq[irq].handler)
@@ -453,7 +453,7 @@ EXPORT_SYMBOL_GPL(wm8350_register_irq);
453 453
454int wm8350_free_irq(struct wm8350 *wm8350, int irq) 454int wm8350_free_irq(struct wm8350 *wm8350, int irq)
455{ 455{
456 if (irq < 0 || irq > WM8350_NUM_IRQ) 456 if (irq < 0 || irq >= WM8350_NUM_IRQ)
457 return -EINVAL; 457 return -EINVAL;
458 458
459 wm8350_mask_irq(wm8350, irq); 459 wm8350_mask_irq(wm8350, irq);
diff --git a/drivers/mmc/host/tmio_mmc.c b/drivers/mmc/host/tmio_mmc.c
index 7cccc8523747..e22c3fa3516a 100644
--- a/drivers/mmc/host/tmio_mmc.c
+++ b/drivers/mmc/host/tmio_mmc.c
@@ -46,7 +46,9 @@ static void tmio_mmc_set_clock(struct tmio_mmc_host *host, int new_clock)
46 clk |= 0x100; 46 clk |= 0x100;
47 } 47 }
48 48
49 sd_config_write8(host, CNF_SD_CLK_MODE, clk >> 22); 49 if (host->set_clk_div)
50 host->set_clk_div(host->pdev, (clk>>22) & 1);
51
50 sd_ctrl_write16(host, CTL_SD_CARD_CLK_CTL, clk & 0x1ff); 52 sd_ctrl_write16(host, CTL_SD_CARD_CLK_CTL, clk & 0x1ff);
51} 53}
52 54
@@ -427,12 +429,13 @@ static void tmio_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
427 /* Power sequence - OFF -> ON -> UP */ 429 /* Power sequence - OFF -> ON -> UP */
428 switch (ios->power_mode) { 430 switch (ios->power_mode) {
429 case MMC_POWER_OFF: /* power down SD bus */ 431 case MMC_POWER_OFF: /* power down SD bus */
430 sd_config_write8(host, CNF_PWR_CTL_2, 0x00); 432 if (host->set_pwr)
433 host->set_pwr(host->pdev, 0);
431 tmio_mmc_clk_stop(host); 434 tmio_mmc_clk_stop(host);
432 break; 435 break;
433 case MMC_POWER_ON: /* power up SD bus */ 436 case MMC_POWER_ON: /* power up SD bus */
434 437 if (host->set_pwr)
435 sd_config_write8(host, CNF_PWR_CTL_2, 0x02); 438 host->set_pwr(host->pdev, 1);
436 break; 439 break;
437 case MMC_POWER_UP: /* start bus clock */ 440 case MMC_POWER_UP: /* start bus clock */
438 tmio_mmc_clk_start(host); 441 tmio_mmc_clk_start(host);
@@ -485,21 +488,15 @@ static int tmio_mmc_resume(struct platform_device *dev)
485{ 488{
486 struct mfd_cell *cell = (struct mfd_cell *)dev->dev.platform_data; 489 struct mfd_cell *cell = (struct mfd_cell *)dev->dev.platform_data;
487 struct mmc_host *mmc = platform_get_drvdata(dev); 490 struct mmc_host *mmc = platform_get_drvdata(dev);
488 struct tmio_mmc_host *host = mmc_priv(mmc);
489 int ret = 0; 491 int ret = 0;
490 492
491 /* Tell the MFD core we are ready to be enabled */ 493 /* Tell the MFD core we are ready to be enabled */
492 if (cell->enable) { 494 if (cell->resume) {
493 ret = cell->enable(dev); 495 ret = cell->resume(dev);
494 if (ret) 496 if (ret)
495 goto out; 497 goto out;
496 } 498 }
497 499
498 /* Enable the MMC/SD Control registers */
499 sd_config_write16(host, CNF_CMD, SDCREN);
500 sd_config_write32(host, CNF_CTL_BASE,
501 (dev->resource[0].start >> host->bus_shift) & 0xfffe);
502
503 mmc_resume_host(mmc); 500 mmc_resume_host(mmc);
504 501
505out: 502out:
@@ -514,17 +511,16 @@ static int __devinit tmio_mmc_probe(struct platform_device *dev)
514{ 511{
515 struct mfd_cell *cell = (struct mfd_cell *)dev->dev.platform_data; 512 struct mfd_cell *cell = (struct mfd_cell *)dev->dev.platform_data;
516 struct tmio_mmc_data *pdata; 513 struct tmio_mmc_data *pdata;
517 struct resource *res_ctl, *res_cnf; 514 struct resource *res_ctl;
518 struct tmio_mmc_host *host; 515 struct tmio_mmc_host *host;
519 struct mmc_host *mmc; 516 struct mmc_host *mmc;
520 int ret = -EINVAL; 517 int ret = -EINVAL;
521 518
522 if (dev->num_resources != 3) 519 if (dev->num_resources != 2)
523 goto out; 520 goto out;
524 521
525 res_ctl = platform_get_resource(dev, IORESOURCE_MEM, 0); 522 res_ctl = platform_get_resource(dev, IORESOURCE_MEM, 0);
526 res_cnf = platform_get_resource(dev, IORESOURCE_MEM, 1); 523 if (!res_ctl)
527 if (!res_ctl || !res_cnf)
528 goto out; 524 goto out;
529 525
530 pdata = cell->driver_data; 526 pdata = cell->driver_data;
@@ -539,8 +535,12 @@ static int __devinit tmio_mmc_probe(struct platform_device *dev)
539 535
540 host = mmc_priv(mmc); 536 host = mmc_priv(mmc);
541 host->mmc = mmc; 537 host->mmc = mmc;
538 host->pdev = dev;
542 platform_set_drvdata(dev, mmc); 539 platform_set_drvdata(dev, mmc);
543 540
541 host->set_pwr = pdata->set_pwr;
542 host->set_clk_div = pdata->set_clk_div;
543
544 /* SD control register space size is 0x200, 0x400 for bus_shift=1 */ 544 /* SD control register space size is 0x200, 0x400 for bus_shift=1 */
545 host->bus_shift = resource_size(res_ctl) >> 10; 545 host->bus_shift = resource_size(res_ctl) >> 10;
546 546
@@ -548,10 +548,6 @@ static int __devinit tmio_mmc_probe(struct platform_device *dev)
548 if (!host->ctl) 548 if (!host->ctl)
549 goto host_free; 549 goto host_free;
550 550
551 host->cnf = ioremap(res_cnf->start, resource_size(res_cnf));
552 if (!host->cnf)
553 goto unmap_ctl;
554
555 mmc->ops = &tmio_mmc_ops; 551 mmc->ops = &tmio_mmc_ops;
556 mmc->caps = MMC_CAP_4_BIT_DATA; 552 mmc->caps = MMC_CAP_4_BIT_DATA;
557 mmc->f_max = pdata->hclk; 553 mmc->f_max = pdata->hclk;
@@ -562,23 +558,9 @@ static int __devinit tmio_mmc_probe(struct platform_device *dev)
562 if (cell->enable) { 558 if (cell->enable) {
563 ret = cell->enable(dev); 559 ret = cell->enable(dev);
564 if (ret) 560 if (ret)
565 goto unmap_cnf; 561 goto unmap_ctl;
566 } 562 }
567 563
568 /* Enable the MMC/SD Control registers */
569 sd_config_write16(host, CNF_CMD, SDCREN);
570 sd_config_write32(host, CNF_CTL_BASE,
571 (dev->resource[0].start >> host->bus_shift) & 0xfffe);
572
573 /* Disable SD power during suspend */
574 sd_config_write8(host, CNF_PWR_CTL_3, 0x01);
575
576 /* The below is required but why? FIXME */
577 sd_config_write8(host, CNF_STOP_CLK_CTL, 0x1f);
578
579 /* Power down SD bus*/
580 sd_config_write8(host, CNF_PWR_CTL_2, 0x00);
581
582 tmio_mmc_clk_stop(host); 564 tmio_mmc_clk_stop(host);
583 reset(host); 565 reset(host);
584 566
@@ -586,14 +568,14 @@ static int __devinit tmio_mmc_probe(struct platform_device *dev)
586 if (ret >= 0) 568 if (ret >= 0)
587 host->irq = ret; 569 host->irq = ret;
588 else 570 else
589 goto unmap_cnf; 571 goto unmap_ctl;
590 572
591 disable_mmc_irqs(host, TMIO_MASK_ALL); 573 disable_mmc_irqs(host, TMIO_MASK_ALL);
592 574
593 ret = request_irq(host->irq, tmio_mmc_irq, IRQF_DISABLED | 575 ret = request_irq(host->irq, tmio_mmc_irq, IRQF_DISABLED |
594 IRQF_TRIGGER_FALLING, dev_name(&dev->dev), host); 576 IRQF_TRIGGER_FALLING, dev_name(&dev->dev), host);
595 if (ret) 577 if (ret)
596 goto unmap_cnf; 578 goto unmap_ctl;
597 579
598 mmc_add_host(mmc); 580 mmc_add_host(mmc);
599 581
@@ -605,8 +587,6 @@ static int __devinit tmio_mmc_probe(struct platform_device *dev)
605 587
606 return 0; 588 return 0;
607 589
608unmap_cnf:
609 iounmap(host->cnf);
610unmap_ctl: 590unmap_ctl:
611 iounmap(host->ctl); 591 iounmap(host->ctl);
612host_free: 592host_free:
@@ -626,7 +606,6 @@ static int __devexit tmio_mmc_remove(struct platform_device *dev)
626 mmc_remove_host(mmc); 606 mmc_remove_host(mmc);
627 free_irq(host->irq, host); 607 free_irq(host->irq, host);
628 iounmap(host->ctl); 608 iounmap(host->ctl);
629 iounmap(host->cnf);
630 mmc_free_host(mmc); 609 mmc_free_host(mmc);
631 } 610 }
632 611
diff --git a/drivers/mmc/host/tmio_mmc.h b/drivers/mmc/host/tmio_mmc.h
index 9fa998594974..692dc23363b9 100644
--- a/drivers/mmc/host/tmio_mmc.h
+++ b/drivers/mmc/host/tmio_mmc.h
@@ -11,26 +11,6 @@
11 11
12#include <linux/highmem.h> 12#include <linux/highmem.h>
13 13
14#define CNF_CMD 0x04
15#define CNF_CTL_BASE 0x10
16#define CNF_INT_PIN 0x3d
17#define CNF_STOP_CLK_CTL 0x40
18#define CNF_GCLK_CTL 0x41
19#define CNF_SD_CLK_MODE 0x42
20#define CNF_PIN_STATUS 0x44
21#define CNF_PWR_CTL_1 0x48
22#define CNF_PWR_CTL_2 0x49
23#define CNF_PWR_CTL_3 0x4a
24#define CNF_CARD_DETECT_MODE 0x4c
25#define CNF_SD_SLOT 0x50
26#define CNF_EXT_GCLK_CTL_1 0xf0
27#define CNF_EXT_GCLK_CTL_2 0xf1
28#define CNF_EXT_GCLK_CTL_3 0xf9
29#define CNF_SD_LED_EN_1 0xfa
30#define CNF_SD_LED_EN_2 0xfe
31
32#define SDCREN 0x2 /* Enable access to MMC CTL regs. (flag in COMMAND_REG)*/
33
34#define CTL_SD_CMD 0x00 14#define CTL_SD_CMD 0x00
35#define CTL_ARG_REG 0x04 15#define CTL_ARG_REG 0x04
36#define CTL_STOP_INTERNAL_ACTION 0x08 16#define CTL_STOP_INTERNAL_ACTION 0x08
@@ -110,7 +90,6 @@
110 90
111 91
112struct tmio_mmc_host { 92struct tmio_mmc_host {
113 void __iomem *cnf;
114 void __iomem *ctl; 93 void __iomem *ctl;
115 unsigned long bus_shift; 94 unsigned long bus_shift;
116 struct mmc_command *cmd; 95 struct mmc_command *cmd;
@@ -119,10 +98,16 @@ struct tmio_mmc_host {
119 struct mmc_host *mmc; 98 struct mmc_host *mmc;
120 int irq; 99 int irq;
121 100
101 /* Callbacks for clock / power control */
102 void (*set_pwr)(struct platform_device *host, int state);
103 void (*set_clk_div)(struct platform_device *host, int state);
104
122 /* pio related stuff */ 105 /* pio related stuff */
123 struct scatterlist *sg_ptr; 106 struct scatterlist *sg_ptr;
124 unsigned int sg_len; 107 unsigned int sg_len;
125 unsigned int sg_off; 108 unsigned int sg_off;
109
110 struct platform_device *pdev;
126}; 111};
127 112
128#include <linux/io.h> 113#include <linux/io.h>
@@ -163,25 +148,6 @@ static inline void sd_ctrl_write32(struct tmio_mmc_host *host, int addr,
163 writew(val >> 16, host->ctl + ((addr + 2) << host->bus_shift)); 148 writew(val >> 16, host->ctl + ((addr + 2) << host->bus_shift));
164} 149}
165 150
166static inline void sd_config_write8(struct tmio_mmc_host *host, int addr,
167 u8 val)
168{
169 writeb(val, host->cnf + (addr << host->bus_shift));
170}
171
172static inline void sd_config_write16(struct tmio_mmc_host *host, int addr,
173 u16 val)
174{
175 writew(val, host->cnf + (addr << host->bus_shift));
176}
177
178static inline void sd_config_write32(struct tmio_mmc_host *host, int addr,
179 u32 val)
180{
181 writew(val, host->cnf + (addr << host->bus_shift));
182 writew(val >> 16, host->cnf + ((addr + 2) << host->bus_shift));
183}
184
185#include <linux/scatterlist.h> 151#include <linux/scatterlist.h>
186#include <linux/blkdev.h> 152#include <linux/blkdev.h>
187 153
diff --git a/drivers/mtd/maps/Kconfig b/drivers/mtd/maps/Kconfig
index 4c364d44ad59..2de0cc823d60 100644
--- a/drivers/mtd/maps/Kconfig
+++ b/drivers/mtd/maps/Kconfig
@@ -549,4 +549,21 @@ config MTD_VMU
549 To build this as a module select M here, the module will be called 549 To build this as a module select M here, the module will be called
550 vmu-flash. 550 vmu-flash.
551 551
552config MTD_PISMO
553 tristate "MTD discovery driver for PISMO modules"
554 depends on I2C
555 depends on ARCH_VERSATILE
556 help
557 This driver allows for discovery of PISMO modules - see
558 <http://www.pismoworld.org/>. These are small modules containing
559 up to five memory devices (eg, SRAM, flash, DOC) described by an
560 I2C EEPROM.
561
562 This driver does not create any MTD maps itself; instead it
563 creates MTD physmap and MTD SRAM platform devices. If you
564 enable this option, you should consider enabling MTD_PHYSMAP
565 and/or MTD_PLATRAM according to the devices on your module.
566
567 When built as a module, it will be called pismo.ko
568
552endmenu 569endmenu
diff --git a/drivers/mtd/maps/pismo.c b/drivers/mtd/maps/pismo.c
new file mode 100644
index 000000000000..c48cad271f5d
--- /dev/null
+++ b/drivers/mtd/maps/pismo.c
@@ -0,0 +1,320 @@
1/*
2 * PISMO memory driver - http://www.pismoworld.org/
3 *
4 * For ARM Realview and Versatile platforms
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License.
9 */
10#include <linux/init.h>
11#include <linux/module.h>
12#include <linux/i2c.h>
13#include <linux/platform_device.h>
14#include <linux/spinlock.h>
15#include <linux/mutex.h>
16#include <linux/mtd/physmap.h>
17#include <linux/mtd/plat-ram.h>
18#include <linux/mtd/pismo.h>
19
20#define PISMO_NUM_CS 5
21
22struct pismo_cs_block {
23 u8 type;
24 u8 width;
25 __le16 access;
26 __le32 size;
27 u32 reserved[2];
28 char device[32];
29} __packed;
30
31struct pismo_eeprom {
32 struct pismo_cs_block cs[PISMO_NUM_CS];
33 char board[15];
34 u8 sum;
35} __packed;
36
37struct pismo_mem {
38 phys_addr_t base;
39 u32 size;
40 u16 access;
41 u8 width;
42 u8 type;
43};
44
45struct pismo_data {
46 struct i2c_client *client;
47 void (*vpp)(void *, int);
48 void *vpp_data;
49 struct platform_device *dev[PISMO_NUM_CS];
50};
51
52/* FIXME: set_vpp could do with a better calling convention */
53static struct pismo_data *vpp_pismo;
54static DEFINE_MUTEX(pismo_mutex);
55
56static int pismo_setvpp_probe_fix(struct pismo_data *pismo)
57{
58 mutex_lock(&pismo_mutex);
59 if (vpp_pismo) {
60 mutex_unlock(&pismo_mutex);
61 kfree(pismo);
62 return -EBUSY;
63 }
64 vpp_pismo = pismo;
65 mutex_unlock(&pismo_mutex);
66 return 0;
67}
68
69static void pismo_setvpp_remove_fix(struct pismo_data *pismo)
70{
71 mutex_lock(&pismo_mutex);
72 if (vpp_pismo == pismo)
73 vpp_pismo = NULL;
74 mutex_unlock(&pismo_mutex);
75}
76
77static void pismo_set_vpp(struct map_info *map, int on)
78{
79 struct pismo_data *pismo = vpp_pismo;
80
81 pismo->vpp(pismo->vpp_data, on);
82}
83/* end of hack */
84
85
86static unsigned int __devinit pismo_width_to_bytes(unsigned int width)
87{
88 width &= 15;
89 if (width > 2)
90 return 0;
91 return 1 << width;
92}
93
94static int __devinit pismo_eeprom_read(struct i2c_client *client, void *buf,
95 u8 addr, size_t size)
96{
97 int ret;
98 struct i2c_msg msg[] = {
99 {
100 .addr = client->addr,
101 .len = sizeof(addr),
102 .buf = &addr,
103 }, {
104 .addr = client->addr,
105 .flags = I2C_M_RD,
106 .len = size,
107 .buf = buf,
108 },
109 };
110
111 ret = i2c_transfer(client->adapter, msg, ARRAY_SIZE(msg));
112
113 return ret == ARRAY_SIZE(msg) ? size : -EIO;
114}
115
116static int __devinit pismo_add_device(struct pismo_data *pismo, int i,
117 struct pismo_mem *region, const char *name, void *pdata, size_t psize)
118{
119 struct platform_device *dev;
120 struct resource res = { };
121 phys_addr_t base = region.base;
122 int ret;
123
124 if (base == ~0)
125 return -ENXIO;
126
127 res.start = base;
128 res.end = base + region->size - 1;
129 res.flags = IORESOURCE_MEM;
130
131 dev = platform_device_alloc(name, i);
132 if (!dev)
133 return -ENOMEM;
134 dev->dev.parent = &pismo->client->dev;
135
136 do {
137 ret = platform_device_add_resources(dev, &res, 1);
138 if (ret)
139 break;
140
141 ret = platform_device_add_data(dev, pdata, psize);
142 if (ret)
143 break;
144
145 ret = platform_device_add(dev);
146 if (ret)
147 break;
148
149 pismo->dev[i] = dev;
150 return 0;
151 } while (0);
152
153 platform_device_put(dev);
154 return ret;
155}
156
157static int __devinit pismo_add_nor(struct pismo_data *pismo, int i,
158 struct pismo_mem *region)
159{
160 struct physmap_flash_data data = {
161 .width = region->width,
162 };
163
164 if (pismo->vpp)
165 data.set_vpp = pismo_set_vpp;
166
167 return pismo_add_device(pismo, i, region, "physmap-flash",
168 &data, sizeof(data));
169}
170
171static int __devinit pismo_add_sram(struct pismo_data *pismo, int i,
172 struct pismo_mem *region)
173{
174 struct platdata_mtd_ram data = {
175 .bankwidth = region->width,
176 };
177
178 return pismo_add_device(pismo, i, region, "mtd-ram",
179 &data, sizeof(data));
180}
181
182static void __devinit pismo_add_one(struct pismo_data *pismo, int i,
183 const struct pismo_cs_block *cs, phys_addr_t base)
184{
185 struct device *dev = &pismo->client->dev;
186 struct pismo_mem region;
187
188 region.base = base;
189 region.type = cs->type;
190 region.width = pismo_width_to_bytes(cs->width);
191 region.access = le16_to_cpu(cs->access);
192 region.size = le32_to_cpu(cs->size);
193
194 if (region.width == 0) {
195 dev_err(dev, "cs%u: bad width: %02x, ignoring\n", i, cs->width);
196 return;
197 }
198
199 /*
200 * FIXME: may need to the platforms memory controller here, but at
201 * the moment we assume that it has already been correctly setup.
202 * The memory controller can also tell us the base address as well.
203 */
204
205 dev_info(dev, "cs%u: %.32s: type %02x access %u00ps size %uK\n",
206 i, cs->device, region.type, region.access, region.size / 1024);
207
208 switch (region.type) {
209 case 0:
210 break;
211 case 1:
212 /* static DOC */
213 break;
214 case 2:
215 /* static NOR */
216 pismo_add_nor(pismo, i, &region);
217 break;
218 case 3:
219 /* static RAM */
220 pismo_add_sram(pismo, i, &region);
221 break;
222 }
223}
224
225static int __devexit pismo_remove(struct i2c_client *client)
226{
227 struct pismo_data *pismo = i2c_get_clientdata(client);
228 int i;
229
230 for (i = 0; i < ARRAY_SIZE(pismo->dev); i++)
231 platform_device_unregister(pismo->dev[i]);
232
233 /* FIXME: set_vpp needs saner arguments */
234 pismo_setvpp_remove_fix(pismo);
235
236 kfree(pismo);
237
238 return 0;
239}
240
241static int __devinit pismo_probe(struct i2c_client *client,
242 const struct i2c_device_id *id)
243{
244 struct i2c_adapter *adapter = to_i2c_adapter(client->dev.parent);
245 struct pismo_pdata *pdata = client->dev.platform_data;
246 struct pismo_eeprom eeprom;
247 struct pismo_data *pismo;
248 int ret, i;
249
250 if (!i2c_check_functionality(adapter, I2C_FUNC_I2C)) {
251 dev_err(&client->dev, "functionality mismatch\n");
252 return -EIO;
253 }
254
255 pismo = kzalloc(sizeof(*pismo), GFP_KERNEL);
256 if (!pismo)
257 return -ENOMEM;
258
259 /* FIXME: set_vpp needs saner arguments */
260 ret = pismo_setvpp_probe_fix(pismo);
261 if (ret)
262 return ret;
263
264 pismo->client = client;
265 if (pdata) {
266 pismo->vpp = pdata->set_vpp;
267 pismo->vpp_data = pdata->vpp_data;
268 }
269 i2c_set_clientdata(client, pismo);
270
271 ret = pismo_eeprom_read(client, &eeprom, 0, sizeof(eeprom));
272 if (ret < 0) {
273 dev_err(&client->dev, "error reading EEPROM: %d\n", ret);
274 return ret;
275 }
276
277 dev_info(&client->dev, "%.15s board found\n", eeprom.board);
278
279 for (i = 0; i < ARRAY_SIZE(eeprom.cs); i++)
280 if (eeprom.cs[i].type != 0xff)
281 pismo_add_one(pismo, i, &eeprom.cs[i],
282 pdata->cs_addrs[i]);
283
284 return 0;
285}
286
287static const struct i2c_device_id pismo_id[] = {
288 { "pismo" },
289 { },
290};
291MODULE_DEVICE_TABLE(i2c, pismo_id);
292
293static struct i2c_driver pismo_driver = {
294 .driver = {
295 .name = "pismo",
296 .owner = THIS_MODULE,
297 },
298 .probe = pismo_probe,
299 .remove = __devexit_p(pismo_remove),
300 .id_table = pismo_id,
301};
302
303static int __init pismo_init(void)
304{
305 BUILD_BUG_ON(sizeof(struct pismo_cs_block) != 48);
306 BUILD_BUG_ON(sizeof(struct pismo_eeprom) != 256);
307
308 return i2c_add_driver(&pismo_driver);
309}
310module_init(pismo_init);
311
312static void __exit pismo_exit(void)
313{
314 i2c_del_driver(&pismo_driver);
315}
316module_exit(pismo_exit);
317
318MODULE_AUTHOR("Russell King <linux@arm.linux.org.uk>");
319MODULE_DESCRIPTION("PISMO memory driver");
320MODULE_LICENSE("GPL");
diff --git a/drivers/mtd/mtdoops.c b/drivers/mtd/mtdoops.c
index a714ec482761..92e12df0917f 100644
--- a/drivers/mtd/mtdoops.c
+++ b/drivers/mtd/mtdoops.c
@@ -322,7 +322,7 @@ static void mtdoops_do_dump(struct kmsg_dumper *dumper,
322 memcpy(dst + l1_cpy, s2 + s2_start, l2_cpy); 322 memcpy(dst + l1_cpy, s2 + s2_start, l2_cpy);
323 323
324 /* Panics must be written immediately */ 324 /* Panics must be written immediately */
325 if (reason == KMSG_DUMP_PANIC) { 325 if (reason != KMSG_DUMP_OOPS) {
326 if (!cxt->mtd->panic_write) 326 if (!cxt->mtd->panic_write)
327 printk(KERN_ERR "mtdoops: Cannot write from panic without panic_write\n"); 327 printk(KERN_ERR "mtdoops: Cannot write from panic without panic_write\n");
328 else 328 else
diff --git a/drivers/mtd/tests/mtd_readtest.c b/drivers/mtd/tests/mtd_readtest.c
index 79fc4530987b..25c5dd03a837 100644
--- a/drivers/mtd/tests/mtd_readtest.c
+++ b/drivers/mtd/tests/mtd_readtest.c
@@ -147,6 +147,10 @@ static int scan_for_bad_eraseblocks(void)
147 } 147 }
148 memset(bbt, 0 , ebcnt); 148 memset(bbt, 0 , ebcnt);
149 149
150 /* NOR flash does not implement block_isbad */
151 if (mtd->block_isbad == NULL)
152 return 0;
153
150 printk(PRINT_PREF "scanning for bad eraseblocks\n"); 154 printk(PRINT_PREF "scanning for bad eraseblocks\n");
151 for (i = 0; i < ebcnt; ++i) { 155 for (i = 0; i < ebcnt; ++i) {
152 bbt[i] = is_block_bad(i) ? 1 : 0; 156 bbt[i] = is_block_bad(i) ? 1 : 0;
@@ -184,7 +188,7 @@ static int __init mtd_readtest_init(void)
184 tmp = mtd->size; 188 tmp = mtd->size;
185 do_div(tmp, mtd->erasesize); 189 do_div(tmp, mtd->erasesize);
186 ebcnt = tmp; 190 ebcnt = tmp;
187 pgcnt = mtd->erasesize / mtd->writesize; 191 pgcnt = mtd->erasesize / pgsize;
188 192
189 printk(PRINT_PREF "MTD device size %llu, eraseblock size %u, " 193 printk(PRINT_PREF "MTD device size %llu, eraseblock size %u, "
190 "page size %u, count of eraseblocks %u, pages per " 194 "page size %u, count of eraseblocks %u, pages per "
diff --git a/drivers/mtd/tests/mtd_speedtest.c b/drivers/mtd/tests/mtd_speedtest.c
index 141363a7e805..7fbb51d4eabe 100644
--- a/drivers/mtd/tests/mtd_speedtest.c
+++ b/drivers/mtd/tests/mtd_speedtest.c
@@ -301,6 +301,10 @@ static int scan_for_bad_eraseblocks(void)
301 } 301 }
302 memset(bbt, 0 , ebcnt); 302 memset(bbt, 0 , ebcnt);
303 303
304 /* NOR flash does not implement block_isbad */
305 if (mtd->block_isbad == NULL)
306 goto out;
307
304 printk(PRINT_PREF "scanning for bad eraseblocks\n"); 308 printk(PRINT_PREF "scanning for bad eraseblocks\n");
305 for (i = 0; i < ebcnt; ++i) { 309 for (i = 0; i < ebcnt; ++i) {
306 bbt[i] = is_block_bad(i) ? 1 : 0; 310 bbt[i] = is_block_bad(i) ? 1 : 0;
@@ -309,6 +313,7 @@ static int scan_for_bad_eraseblocks(void)
309 cond_resched(); 313 cond_resched();
310 } 314 }
311 printk(PRINT_PREF "scanned %d eraseblocks, %d are bad\n", i, bad); 315 printk(PRINT_PREF "scanned %d eraseblocks, %d are bad\n", i, bad);
316out:
312 goodebcnt = ebcnt - bad; 317 goodebcnt = ebcnt - bad;
313 return 0; 318 return 0;
314} 319}
@@ -340,7 +345,7 @@ static int __init mtd_speedtest_init(void)
340 tmp = mtd->size; 345 tmp = mtd->size;
341 do_div(tmp, mtd->erasesize); 346 do_div(tmp, mtd->erasesize);
342 ebcnt = tmp; 347 ebcnt = tmp;
343 pgcnt = mtd->erasesize / mtd->writesize; 348 pgcnt = mtd->erasesize / pgsize;
344 349
345 printk(PRINT_PREF "MTD device size %llu, eraseblock size %u, " 350 printk(PRINT_PREF "MTD device size %llu, eraseblock size %u, "
346 "page size %u, count of eraseblocks %u, pages per " 351 "page size %u, count of eraseblocks %u, pages per "
diff --git a/drivers/mtd/tests/mtd_stresstest.c b/drivers/mtd/tests/mtd_stresstest.c
index 63920476b57a..a99d3cd737d8 100644
--- a/drivers/mtd/tests/mtd_stresstest.c
+++ b/drivers/mtd/tests/mtd_stresstest.c
@@ -227,6 +227,10 @@ static int scan_for_bad_eraseblocks(void)
227 } 227 }
228 memset(bbt, 0 , ebcnt); 228 memset(bbt, 0 , ebcnt);
229 229
230 /* NOR flash does not implement block_isbad */
231 if (mtd->block_isbad == NULL)
232 return 0;
233
230 printk(PRINT_PREF "scanning for bad eraseblocks\n"); 234 printk(PRINT_PREF "scanning for bad eraseblocks\n");
231 for (i = 0; i < ebcnt; ++i) { 235 for (i = 0; i < ebcnt; ++i) {
232 bbt[i] = is_block_bad(i) ? 1 : 0; 236 bbt[i] = is_block_bad(i) ? 1 : 0;
@@ -265,7 +269,7 @@ static int __init mtd_stresstest_init(void)
265 tmp = mtd->size; 269 tmp = mtd->size;
266 do_div(tmp, mtd->erasesize); 270 do_div(tmp, mtd->erasesize);
267 ebcnt = tmp; 271 ebcnt = tmp;
268 pgcnt = mtd->erasesize / mtd->writesize; 272 pgcnt = mtd->erasesize / pgsize;
269 273
270 printk(PRINT_PREF "MTD device size %llu, eraseblock size %u, " 274 printk(PRINT_PREF "MTD device size %llu, eraseblock size %u, "
271 "page size %u, count of eraseblocks %u, pages per " 275 "page size %u, count of eraseblocks %u, pages per "
diff --git a/drivers/mtd/ubi/cdev.c b/drivers/mtd/ubi/cdev.c
index f237ddbb2713..111ea41c4ecd 100644
--- a/drivers/mtd/ubi/cdev.c
+++ b/drivers/mtd/ubi/cdev.c
@@ -853,7 +853,6 @@ static long ubi_cdev_ioctl(struct file *file, unsigned int cmd,
853 break; 853 break;
854 } 854 }
855 855
856 req.name[req.name_len] = '\0';
857 err = verify_mkvol_req(ubi, &req); 856 err = verify_mkvol_req(ubi, &req);
858 if (err) 857 if (err)
859 break; 858 break;
diff --git a/drivers/mtd/ubi/kapi.c b/drivers/mtd/ubi/kapi.c
index 277786ebaa2c..1361574e2b00 100644
--- a/drivers/mtd/ubi/kapi.c
+++ b/drivers/mtd/ubi/kapi.c
@@ -291,8 +291,7 @@ EXPORT_SYMBOL_GPL(ubi_open_volume_nm);
291 */ 291 */
292struct ubi_volume_desc *ubi_open_volume_path(const char *pathname, int mode) 292struct ubi_volume_desc *ubi_open_volume_path(const char *pathname, int mode)
293{ 293{
294 int error, ubi_num, vol_id; 294 int error, ubi_num, vol_id, mod;
295 struct ubi_volume_desc *ret;
296 struct inode *inode; 295 struct inode *inode;
297 struct path path; 296 struct path path;
298 297
@@ -306,16 +305,16 @@ struct ubi_volume_desc *ubi_open_volume_path(const char *pathname, int mode)
306 return ERR_PTR(error); 305 return ERR_PTR(error);
307 306
308 inode = path.dentry->d_inode; 307 inode = path.dentry->d_inode;
308 mod = inode->i_mode;
309 ubi_num = ubi_major2num(imajor(inode)); 309 ubi_num = ubi_major2num(imajor(inode));
310 vol_id = iminor(inode) - 1; 310 vol_id = iminor(inode) - 1;
311 path_put(&path);
311 312
313 if (!S_ISCHR(mod))
314 return ERR_PTR(-EINVAL);
312 if (vol_id >= 0 && ubi_num >= 0) 315 if (vol_id >= 0 && ubi_num >= 0)
313 ret = ubi_open_volume(ubi_num, vol_id, mode); 316 return ubi_open_volume(ubi_num, vol_id, mode);
314 else 317 return ERR_PTR(-ENODEV);
315 ret = ERR_PTR(-ENODEV);
316
317 path_put(&path);
318 return ret;
319} 318}
320EXPORT_SYMBOL_GPL(ubi_open_volume_path); 319EXPORT_SYMBOL_GPL(ubi_open_volume_path);
321 320
diff --git a/drivers/mtd/ubi/upd.c b/drivers/mtd/ubi/upd.c
index c1d7b880c795..425bf5a3edd4 100644
--- a/drivers/mtd/ubi/upd.c
+++ b/drivers/mtd/ubi/upd.c
@@ -155,6 +155,7 @@ int ubi_start_update(struct ubi_device *ubi, struct ubi_volume *vol,
155 if (err) 155 if (err)
156 return err; 156 return err;
157 vol->updating = 0; 157 vol->updating = 0;
158 return 0;
158 } 159 }
159 160
160 vol->upd_buf = vmalloc(ubi->leb_size); 161 vol->upd_buf = vmalloc(ubi->leb_size);
diff --git a/drivers/mtd/ubi/vtbl.c b/drivers/mtd/ubi/vtbl.c
index 1afc61e7455d..40044028d682 100644
--- a/drivers/mtd/ubi/vtbl.c
+++ b/drivers/mtd/ubi/vtbl.c
@@ -566,6 +566,7 @@ static int init_volumes(struct ubi_device *ubi, const struct ubi_scan_info *si,
566 vol->reserved_pebs = be32_to_cpu(vtbl[i].reserved_pebs); 566 vol->reserved_pebs = be32_to_cpu(vtbl[i].reserved_pebs);
567 vol->alignment = be32_to_cpu(vtbl[i].alignment); 567 vol->alignment = be32_to_cpu(vtbl[i].alignment);
568 vol->data_pad = be32_to_cpu(vtbl[i].data_pad); 568 vol->data_pad = be32_to_cpu(vtbl[i].data_pad);
569 vol->upd_marker = vtbl[i].upd_marker;
569 vol->vol_type = vtbl[i].vol_type == UBI_VID_DYNAMIC ? 570 vol->vol_type = vtbl[i].vol_type == UBI_VID_DYNAMIC ?
570 UBI_DYNAMIC_VOLUME : UBI_STATIC_VOLUME; 571 UBI_DYNAMIC_VOLUME : UBI_STATIC_VOLUME;
571 vol->name_len = be16_to_cpu(vtbl[i].name_len); 572 vol->name_len = be16_to_cpu(vtbl[i].name_len);
diff --git a/drivers/net/benet/be_cmds.c b/drivers/net/benet/be_cmds.c
index 102ade134165..fee6eee7ae5b 100644
--- a/drivers/net/benet/be_cmds.c
+++ b/drivers/net/benet/be_cmds.c
@@ -286,7 +286,7 @@ static void be_wrb_hdr_prepare(struct be_mcc_wrb *wrb, int payload_len,
286 MCC_WRB_SGE_CNT_SHIFT; 286 MCC_WRB_SGE_CNT_SHIFT;
287 wrb->payload_length = payload_len; 287 wrb->payload_length = payload_len;
288 wrb->tag0 = opcode; 288 wrb->tag0 = opcode;
289 be_dws_cpu_to_le(wrb, 20); 289 be_dws_cpu_to_le(wrb, 8);
290} 290}
291 291
292/* Don't touch the hdr after it's prepared */ 292/* Don't touch the hdr after it's prepared */
diff --git a/drivers/net/benet/be_main.c b/drivers/net/benet/be_main.c
index 3a1f7902c16d..33ab8c7f14fe 100644
--- a/drivers/net/benet/be_main.c
+++ b/drivers/net/benet/be_main.c
@@ -910,7 +910,7 @@ static inline struct page *be_alloc_pages(u32 size)
910static void be_post_rx_frags(struct be_adapter *adapter) 910static void be_post_rx_frags(struct be_adapter *adapter)
911{ 911{
912 struct be_rx_page_info *page_info_tbl = adapter->rx_obj.page_info_tbl; 912 struct be_rx_page_info *page_info_tbl = adapter->rx_obj.page_info_tbl;
913 struct be_rx_page_info *page_info = NULL; 913 struct be_rx_page_info *page_info = NULL, *prev_page_info = NULL;
914 struct be_queue_info *rxq = &adapter->rx_obj.q; 914 struct be_queue_info *rxq = &adapter->rx_obj.q;
915 struct page *pagep = NULL; 915 struct page *pagep = NULL;
916 struct be_eth_rx_d *rxd; 916 struct be_eth_rx_d *rxd;
@@ -941,7 +941,6 @@ static void be_post_rx_frags(struct be_adapter *adapter)
941 rxd = queue_head_node(rxq); 941 rxd = queue_head_node(rxq);
942 rxd->fragpa_lo = cpu_to_le32(frag_dmaaddr & 0xFFFFFFFF); 942 rxd->fragpa_lo = cpu_to_le32(frag_dmaaddr & 0xFFFFFFFF);
943 rxd->fragpa_hi = cpu_to_le32(upper_32_bits(frag_dmaaddr)); 943 rxd->fragpa_hi = cpu_to_le32(upper_32_bits(frag_dmaaddr));
944 queue_head_inc(rxq);
945 944
946 /* Any space left in the current big page for another frag? */ 945 /* Any space left in the current big page for another frag? */
947 if ((page_offset + rx_frag_size + rx_frag_size) > 946 if ((page_offset + rx_frag_size + rx_frag_size) >
@@ -949,10 +948,13 @@ static void be_post_rx_frags(struct be_adapter *adapter)
949 pagep = NULL; 948 pagep = NULL;
950 page_info->last_page_user = true; 949 page_info->last_page_user = true;
951 } 950 }
951
952 prev_page_info = page_info;
953 queue_head_inc(rxq);
952 page_info = &page_info_tbl[rxq->head]; 954 page_info = &page_info_tbl[rxq->head];
953 } 955 }
954 if (pagep) 956 if (pagep)
955 page_info->last_page_user = true; 957 prev_page_info->last_page_user = true;
956 958
957 if (posted) { 959 if (posted) {
958 atomic_add(posted, &rxq->used); 960 atomic_add(posted, &rxq->used);
diff --git a/drivers/net/bfin_mac.c b/drivers/net/bfin_mac.c
index 8ffea3990d07..0b23bc4f56c6 100644
--- a/drivers/net/bfin_mac.c
+++ b/drivers/net/bfin_mac.c
@@ -33,6 +33,7 @@
33#include <asm/dma.h> 33#include <asm/dma.h>
34#include <linux/dma-mapping.h> 34#include <linux/dma-mapping.h>
35 35
36#include <asm/dpmc.h>
36#include <asm/blackfin.h> 37#include <asm/blackfin.h>
37#include <asm/cacheflush.h> 38#include <asm/cacheflush.h>
38#include <asm/portmux.h> 39#include <asm/portmux.h>
@@ -386,8 +387,8 @@ static int mii_probe(struct net_device *dev)
386 u32 sclk, mdc_div; 387 u32 sclk, mdc_div;
387 388
388 /* Enable PHY output early */ 389 /* Enable PHY output early */
389 if (!(bfin_read_VR_CTL() & PHYCLKOE)) 390 if (!(bfin_read_VR_CTL() & CLKBUFOE))
390 bfin_write_VR_CTL(bfin_read_VR_CTL() | PHYCLKOE); 391 bfin_write_VR_CTL(bfin_read_VR_CTL() | CLKBUFOE);
391 392
392 sclk = get_sclk(); 393 sclk = get_sclk();
393 mdc_div = ((sclk / MDC_CLK) / 2) - 1; 394 mdc_div = ((sclk / MDC_CLK) / 2) - 1;
diff --git a/drivers/net/e1000/e1000.h b/drivers/net/e1000/e1000.h
index 2a567df3ea71..e8932db7ee77 100644
--- a/drivers/net/e1000/e1000.h
+++ b/drivers/net/e1000/e1000.h
@@ -326,6 +326,8 @@ struct e1000_adapter {
326 /* for ioport free */ 326 /* for ioport free */
327 int bars; 327 int bars;
328 int need_ioport; 328 int need_ioport;
329
330 bool discarding;
329}; 331};
330 332
331enum e1000_state_t { 333enum e1000_state_t {
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index 7e855f9bbd97..d29bb532eccf 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -1698,18 +1698,6 @@ static void e1000_setup_rctl(struct e1000_adapter *adapter)
1698 rctl &= ~E1000_RCTL_SZ_4096; 1698 rctl &= ~E1000_RCTL_SZ_4096;
1699 rctl |= E1000_RCTL_BSEX; 1699 rctl |= E1000_RCTL_BSEX;
1700 switch (adapter->rx_buffer_len) { 1700 switch (adapter->rx_buffer_len) {
1701 case E1000_RXBUFFER_256:
1702 rctl |= E1000_RCTL_SZ_256;
1703 rctl &= ~E1000_RCTL_BSEX;
1704 break;
1705 case E1000_RXBUFFER_512:
1706 rctl |= E1000_RCTL_SZ_512;
1707 rctl &= ~E1000_RCTL_BSEX;
1708 break;
1709 case E1000_RXBUFFER_1024:
1710 rctl |= E1000_RCTL_SZ_1024;
1711 rctl &= ~E1000_RCTL_BSEX;
1712 break;
1713 case E1000_RXBUFFER_2048: 1701 case E1000_RXBUFFER_2048:
1714 default: 1702 default:
1715 rctl |= E1000_RCTL_SZ_2048; 1703 rctl |= E1000_RCTL_SZ_2048;
@@ -2802,13 +2790,13 @@ static int e1000_tx_map(struct e1000_adapter *adapter,
2802dma_error: 2790dma_error:
2803 dev_err(&pdev->dev, "TX DMA map failed\n"); 2791 dev_err(&pdev->dev, "TX DMA map failed\n");
2804 buffer_info->dma = 0; 2792 buffer_info->dma = 0;
2805 count--; 2793 if (count)
2806
2807 while (count >= 0) {
2808 count--; 2794 count--;
2809 i--; 2795
2810 if (i < 0) 2796 while (count--) {
2797 if (i==0)
2811 i += tx_ring->count; 2798 i += tx_ring->count;
2799 i--;
2812 buffer_info = &tx_ring->buffer_info[i]; 2800 buffer_info = &tx_ring->buffer_info[i];
2813 e1000_unmap_and_free_tx_resource(adapter, buffer_info); 2801 e1000_unmap_and_free_tx_resource(adapter, buffer_info);
2814 } 2802 }
@@ -3176,13 +3164,7 @@ static int e1000_change_mtu(struct net_device *netdev, int new_mtu)
3176 * however with the new *_jumbo_rx* routines, jumbo receives will use 3164 * however with the new *_jumbo_rx* routines, jumbo receives will use
3177 * fragmented skbs */ 3165 * fragmented skbs */
3178 3166
3179 if (max_frame <= E1000_RXBUFFER_256) 3167 if (max_frame <= E1000_RXBUFFER_2048)
3180 adapter->rx_buffer_len = E1000_RXBUFFER_256;
3181 else if (max_frame <= E1000_RXBUFFER_512)
3182 adapter->rx_buffer_len = E1000_RXBUFFER_512;
3183 else if (max_frame <= E1000_RXBUFFER_1024)
3184 adapter->rx_buffer_len = E1000_RXBUFFER_1024;
3185 else if (max_frame <= E1000_RXBUFFER_2048)
3186 adapter->rx_buffer_len = E1000_RXBUFFER_2048; 3168 adapter->rx_buffer_len = E1000_RXBUFFER_2048;
3187 else 3169 else
3188#if (PAGE_SIZE >= E1000_RXBUFFER_16384) 3170#if (PAGE_SIZE >= E1000_RXBUFFER_16384)
@@ -3850,13 +3832,22 @@ static bool e1000_clean_rx_irq(struct e1000_adapter *adapter,
3850 3832
3851 length = le16_to_cpu(rx_desc->length); 3833 length = le16_to_cpu(rx_desc->length);
3852 /* !EOP means multiple descriptors were used to store a single 3834 /* !EOP means multiple descriptors were used to store a single
3853 * packet, also make sure the frame isn't just CRC only */ 3835 * packet, if thats the case we need to toss it. In fact, we
3854 if (unlikely(!(status & E1000_RXD_STAT_EOP) || (length <= 4))) { 3836 * to toss every packet with the EOP bit clear and the next
3837 * frame that _does_ have the EOP bit set, as it is by
3838 * definition only a frame fragment
3839 */
3840 if (unlikely(!(status & E1000_RXD_STAT_EOP)))
3841 adapter->discarding = true;
3842
3843 if (adapter->discarding) {
3855 /* All receives must fit into a single buffer */ 3844 /* All receives must fit into a single buffer */
3856 E1000_DBG("%s: Receive packet consumed multiple" 3845 E1000_DBG("%s: Receive packet consumed multiple"
3857 " buffers\n", netdev->name); 3846 " buffers\n", netdev->name);
3858 /* recycle */ 3847 /* recycle */
3859 buffer_info->skb = skb; 3848 buffer_info->skb = skb;
3849 if (status & E1000_RXD_STAT_EOP)
3850 adapter->discarding = false;
3860 goto next_desc; 3851 goto next_desc;
3861 } 3852 }
3862 3853
diff --git a/drivers/net/e1000e/e1000.h b/drivers/net/e1000e/e1000.h
index d6ee28f6ea08..d236efaf7478 100644
--- a/drivers/net/e1000e/e1000.h
+++ b/drivers/net/e1000e/e1000.h
@@ -421,6 +421,7 @@ struct e1000_info {
421/* CRC Stripping defines */ 421/* CRC Stripping defines */
422#define FLAG2_CRC_STRIPPING (1 << 0) 422#define FLAG2_CRC_STRIPPING (1 << 0)
423#define FLAG2_HAS_PHY_WAKEUP (1 << 1) 423#define FLAG2_HAS_PHY_WAKEUP (1 << 1)
424#define FLAG2_IS_DISCARDING (1 << 2)
424 425
425#define E1000_RX_DESC_PS(R, i) \ 426#define E1000_RX_DESC_PS(R, i) \
426 (&(((union e1000_rx_desc_packet_split *)((R).desc))[i])) 427 (&(((union e1000_rx_desc_packet_split *)((R).desc))[i]))
diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c
index c45965a256b6..57f149b75fbe 100644
--- a/drivers/net/e1000e/netdev.c
+++ b/drivers/net/e1000e/netdev.c
@@ -450,13 +450,23 @@ static bool e1000_clean_rx_irq(struct e1000_adapter *adapter,
450 450
451 length = le16_to_cpu(rx_desc->length); 451 length = le16_to_cpu(rx_desc->length);
452 452
453 /* !EOP means multiple descriptors were used to store a single 453 /*
454 * packet, also make sure the frame isn't just CRC only */ 454 * !EOP means multiple descriptors were used to store a single
455 if (!(status & E1000_RXD_STAT_EOP) || (length <= 4)) { 455 * packet, if that's the case we need to toss it. In fact, we
456 * need to toss every packet with the EOP bit clear and the
457 * next frame that _does_ have the EOP bit set, as it is by
458 * definition only a frame fragment
459 */
460 if (unlikely(!(status & E1000_RXD_STAT_EOP)))
461 adapter->flags2 |= FLAG2_IS_DISCARDING;
462
463 if (adapter->flags2 & FLAG2_IS_DISCARDING) {
456 /* All receives must fit into a single buffer */ 464 /* All receives must fit into a single buffer */
457 e_dbg("Receive packet consumed multiple buffers\n"); 465 e_dbg("Receive packet consumed multiple buffers\n");
458 /* recycle */ 466 /* recycle */
459 buffer_info->skb = skb; 467 buffer_info->skb = skb;
468 if (status & E1000_RXD_STAT_EOP)
469 adapter->flags2 &= ~FLAG2_IS_DISCARDING;
460 goto next_desc; 470 goto next_desc;
461 } 471 }
462 472
@@ -745,10 +755,16 @@ static bool e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
745 PCI_DMA_FROMDEVICE); 755 PCI_DMA_FROMDEVICE);
746 buffer_info->dma = 0; 756 buffer_info->dma = 0;
747 757
748 if (!(staterr & E1000_RXD_STAT_EOP)) { 758 /* see !EOP comment in other rx routine */
759 if (!(staterr & E1000_RXD_STAT_EOP))
760 adapter->flags2 |= FLAG2_IS_DISCARDING;
761
762 if (adapter->flags2 & FLAG2_IS_DISCARDING) {
749 e_dbg("Packet Split buffers didn't pick up the full " 763 e_dbg("Packet Split buffers didn't pick up the full "
750 "packet\n"); 764 "packet\n");
751 dev_kfree_skb_irq(skb); 765 dev_kfree_skb_irq(skb);
766 if (staterr & E1000_RXD_STAT_EOP)
767 adapter->flags2 &= ~FLAG2_IS_DISCARDING;
752 goto next_desc; 768 goto next_desc;
753 } 769 }
754 770
@@ -1118,6 +1134,7 @@ static void e1000_clean_rx_ring(struct e1000_adapter *adapter)
1118 1134
1119 rx_ring->next_to_clean = 0; 1135 rx_ring->next_to_clean = 0;
1120 rx_ring->next_to_use = 0; 1136 rx_ring->next_to_use = 0;
1137 adapter->flags2 &= ~FLAG2_IS_DISCARDING;
1121 1138
1122 writel(0, adapter->hw.hw_addr + rx_ring->head); 1139 writel(0, adapter->hw.hw_addr + rx_ring->head);
1123 writel(0, adapter->hw.hw_addr + rx_ring->tail); 1140 writel(0, adapter->hw.hw_addr + rx_ring->tail);
@@ -2333,18 +2350,6 @@ static void e1000_setup_rctl(struct e1000_adapter *adapter)
2333 rctl &= ~E1000_RCTL_SZ_4096; 2350 rctl &= ~E1000_RCTL_SZ_4096;
2334 rctl |= E1000_RCTL_BSEX; 2351 rctl |= E1000_RCTL_BSEX;
2335 switch (adapter->rx_buffer_len) { 2352 switch (adapter->rx_buffer_len) {
2336 case 256:
2337 rctl |= E1000_RCTL_SZ_256;
2338 rctl &= ~E1000_RCTL_BSEX;
2339 break;
2340 case 512:
2341 rctl |= E1000_RCTL_SZ_512;
2342 rctl &= ~E1000_RCTL_BSEX;
2343 break;
2344 case 1024:
2345 rctl |= E1000_RCTL_SZ_1024;
2346 rctl &= ~E1000_RCTL_BSEX;
2347 break;
2348 case 2048: 2353 case 2048:
2349 default: 2354 default:
2350 rctl |= E1000_RCTL_SZ_2048; 2355 rctl |= E1000_RCTL_SZ_2048;
@@ -3781,7 +3786,7 @@ static int e1000_tso(struct e1000_adapter *adapter,
3781 0, IPPROTO_TCP, 0); 3786 0, IPPROTO_TCP, 0);
3782 cmd_length = E1000_TXD_CMD_IP; 3787 cmd_length = E1000_TXD_CMD_IP;
3783 ipcse = skb_transport_offset(skb) - 1; 3788 ipcse = skb_transport_offset(skb) - 1;
3784 } else if (skb_shinfo(skb)->gso_type == SKB_GSO_TCPV6) { 3789 } else if (skb_is_gso_v6(skb)) {
3785 ipv6_hdr(skb)->payload_len = 0; 3790 ipv6_hdr(skb)->payload_len = 0;
3786 tcp_hdr(skb)->check = ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr, 3791 tcp_hdr(skb)->check = ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr,
3787 &ipv6_hdr(skb)->daddr, 3792 &ipv6_hdr(skb)->daddr,
@@ -3962,13 +3967,13 @@ static int e1000_tx_map(struct e1000_adapter *adapter,
3962dma_error: 3967dma_error:
3963 dev_err(&pdev->dev, "TX DMA map failed\n"); 3968 dev_err(&pdev->dev, "TX DMA map failed\n");
3964 buffer_info->dma = 0; 3969 buffer_info->dma = 0;
3965 count--; 3970 if (count)
3966
3967 while (count >= 0) {
3968 count--; 3971 count--;
3969 i--; 3972
3970 if (i < 0) 3973 while (count--) {
3974 if (i==0)
3971 i += tx_ring->count; 3975 i += tx_ring->count;
3976 i--;
3972 buffer_info = &tx_ring->buffer_info[i]; 3977 buffer_info = &tx_ring->buffer_info[i];
3973 e1000_put_txbuf(adapter, buffer_info);; 3978 e1000_put_txbuf(adapter, buffer_info);;
3974 } 3979 }
@@ -4317,13 +4322,7 @@ static int e1000_change_mtu(struct net_device *netdev, int new_mtu)
4317 * fragmented skbs 4322 * fragmented skbs
4318 */ 4323 */
4319 4324
4320 if (max_frame <= 256) 4325 if (max_frame <= 2048)
4321 adapter->rx_buffer_len = 256;
4322 else if (max_frame <= 512)
4323 adapter->rx_buffer_len = 512;
4324 else if (max_frame <= 1024)
4325 adapter->rx_buffer_len = 1024;
4326 else if (max_frame <= 2048)
4327 adapter->rx_buffer_len = 2048; 4326 adapter->rx_buffer_len = 2048;
4328 else 4327 else
4329 adapter->rx_buffer_len = 4096; 4328 adapter->rx_buffer_len = 4096;
diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c
index 933c64ff2465..997124d2992a 100644
--- a/drivers/net/igb/igb_main.c
+++ b/drivers/net/igb/igb_main.c
@@ -3422,7 +3422,7 @@ static inline int igb_tso_adv(struct igb_ring *tx_ring,
3422 iph->daddr, 0, 3422 iph->daddr, 0,
3423 IPPROTO_TCP, 3423 IPPROTO_TCP,
3424 0); 3424 0);
3425 } else if (skb_shinfo(skb)->gso_type == SKB_GSO_TCPV6) { 3425 } else if (skb_is_gso_v6(skb)) {
3426 ipv6_hdr(skb)->payload_len = 0; 3426 ipv6_hdr(skb)->payload_len = 0;
3427 tcp_hdr(skb)->check = ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr, 3427 tcp_hdr(skb)->check = ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr,
3428 &ipv6_hdr(skb)->daddr, 3428 &ipv6_hdr(skb)->daddr,
@@ -3584,6 +3584,7 @@ static inline int igb_tx_map_adv(struct igb_ring *tx_ring, struct sk_buff *skb,
3584 for (f = 0; f < skb_shinfo(skb)->nr_frags; f++) { 3584 for (f = 0; f < skb_shinfo(skb)->nr_frags; f++) {
3585 struct skb_frag_struct *frag; 3585 struct skb_frag_struct *frag;
3586 3586
3587 count++;
3587 i++; 3588 i++;
3588 if (i == tx_ring->count) 3589 if (i == tx_ring->count)
3589 i = 0; 3590 i = 0;
@@ -3605,7 +3606,6 @@ static inline int igb_tx_map_adv(struct igb_ring *tx_ring, struct sk_buff *skb,
3605 if (pci_dma_mapping_error(pdev, buffer_info->dma)) 3606 if (pci_dma_mapping_error(pdev, buffer_info->dma))
3606 goto dma_error; 3607 goto dma_error;
3607 3608
3608 count++;
3609 } 3609 }
3610 3610
3611 tx_ring->buffer_info[i].skb = skb; 3611 tx_ring->buffer_info[i].skb = skb;
diff --git a/drivers/net/igbvf/netdev.c b/drivers/net/igbvf/netdev.c
index 0dbd0320023a..297a5ddd77f0 100644
--- a/drivers/net/igbvf/netdev.c
+++ b/drivers/net/igbvf/netdev.c
@@ -1963,7 +1963,7 @@ static int igbvf_tso(struct igbvf_adapter *adapter,
1963 iph->daddr, 0, 1963 iph->daddr, 0,
1964 IPPROTO_TCP, 1964 IPPROTO_TCP,
1965 0); 1965 0);
1966 } else if (skb_shinfo(skb)->gso_type == SKB_GSO_TCPV6) { 1966 } else if (skb_is_gso_v6(skb)) {
1967 ipv6_hdr(skb)->payload_len = 0; 1967 ipv6_hdr(skb)->payload_len = 0;
1968 tcp_hdr(skb)->check = ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr, 1968 tcp_hdr(skb)->check = ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr,
1969 &ipv6_hdr(skb)->daddr, 1969 &ipv6_hdr(skb)->daddr,
@@ -2126,6 +2126,7 @@ static inline int igbvf_tx_map_adv(struct igbvf_adapter *adapter,
2126 for (f = 0; f < skb_shinfo(skb)->nr_frags; f++) { 2126 for (f = 0; f < skb_shinfo(skb)->nr_frags; f++) {
2127 struct skb_frag_struct *frag; 2127 struct skb_frag_struct *frag;
2128 2128
2129 count++;
2129 i++; 2130 i++;
2130 if (i == tx_ring->count) 2131 if (i == tx_ring->count)
2131 i = 0; 2132 i = 0;
@@ -2146,7 +2147,6 @@ static inline int igbvf_tx_map_adv(struct igbvf_adapter *adapter,
2146 PCI_DMA_TODEVICE); 2147 PCI_DMA_TODEVICE);
2147 if (pci_dma_mapping_error(pdev, buffer_info->dma)) 2148 if (pci_dma_mapping_error(pdev, buffer_info->dma))
2148 goto dma_error; 2149 goto dma_error;
2149 count++;
2150 } 2150 }
2151 2151
2152 tx_ring->buffer_info[i].skb = skb; 2152 tx_ring->buffer_info[i].skb = skb;
@@ -2163,14 +2163,14 @@ dma_error:
2163 buffer_info->length = 0; 2163 buffer_info->length = 0;
2164 buffer_info->next_to_watch = 0; 2164 buffer_info->next_to_watch = 0;
2165 buffer_info->mapped_as_page = false; 2165 buffer_info->mapped_as_page = false;
2166 count--; 2166 if (count)
2167 count--;
2167 2168
2168 /* clear timestamp and dma mappings for remaining portion of packet */ 2169 /* clear timestamp and dma mappings for remaining portion of packet */
2169 while (count >= 0) { 2170 while (count--) {
2170 count--; 2171 if (i==0)
2171 i--;
2172 if (i < 0)
2173 i += tx_ring->count; 2172 i += tx_ring->count;
2173 i--;
2174 buffer_info = &tx_ring->buffer_info[i]; 2174 buffer_info = &tx_ring->buffer_info[i];
2175 igbvf_put_txbuf(adapter, buffer_info); 2175 igbvf_put_txbuf(adapter, buffer_info);
2176 } 2176 }
diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index bcd0f01d5feb..593d1a4f217c 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -1363,13 +1363,13 @@ ixgb_tx_map(struct ixgb_adapter *adapter, struct sk_buff *skb,
1363dma_error: 1363dma_error:
1364 dev_err(&pdev->dev, "TX DMA map failed\n"); 1364 dev_err(&pdev->dev, "TX DMA map failed\n");
1365 buffer_info->dma = 0; 1365 buffer_info->dma = 0;
1366 count--; 1366 if (count)
1367
1368 while (count >= 0) {
1369 count--; 1367 count--;
1370 i--; 1368
1371 if (i < 0) 1369 while (count--) {
1370 if (i==0)
1372 i += tx_ring->count; 1371 i += tx_ring->count;
1372 i--;
1373 buffer_info = &tx_ring->buffer_info[i]; 1373 buffer_info = &tx_ring->buffer_info[i];
1374 ixgb_unmap_and_free_tx_resource(adapter, buffer_info); 1374 ixgb_unmap_and_free_tx_resource(adapter, buffer_info);
1375 } 1375 }
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c
index 9c9202f40b10..b5f64ad67975 100644
--- a/drivers/net/ixgbe/ixgbe_main.c
+++ b/drivers/net/ixgbe/ixgbe_main.c
@@ -4928,7 +4928,7 @@ static int ixgbe_tso(struct ixgbe_adapter *adapter,
4928 iph->daddr, 0, 4928 iph->daddr, 0,
4929 IPPROTO_TCP, 4929 IPPROTO_TCP,
4930 0); 4930 0);
4931 } else if (skb_shinfo(skb)->gso_type == SKB_GSO_TCPV6) { 4931 } else if (skb_is_gso_v6(skb)) {
4932 ipv6_hdr(skb)->payload_len = 0; 4932 ipv6_hdr(skb)->payload_len = 0;
4933 tcp_hdr(skb)->check = 4933 tcp_hdr(skb)->check =
4934 ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr, 4934 ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr,
@@ -5167,14 +5167,14 @@ dma_error:
5167 tx_buffer_info->dma = 0; 5167 tx_buffer_info->dma = 0;
5168 tx_buffer_info->time_stamp = 0; 5168 tx_buffer_info->time_stamp = 0;
5169 tx_buffer_info->next_to_watch = 0; 5169 tx_buffer_info->next_to_watch = 0;
5170 count--; 5170 if (count)
5171 count--;
5171 5172
5172 /* clear timestamp and dma mappings for remaining portion of packet */ 5173 /* clear timestamp and dma mappings for remaining portion of packet */
5173 while (count >= 0) { 5174 while (count--) {
5174 count--; 5175 if (i==0)
5175 i--;
5176 if (i < 0)
5177 i += tx_ring->count; 5176 i += tx_ring->count;
5177 i--;
5178 tx_buffer_info = &tx_ring->tx_buffer_info[i]; 5178 tx_buffer_info = &tx_ring->tx_buffer_info[i];
5179 ixgbe_unmap_and_free_tx_resource(adapter, tx_buffer_info); 5179 ixgbe_unmap_and_free_tx_resource(adapter, tx_buffer_info);
5180 } 5180 }
diff --git a/drivers/net/pcmcia/fmvj18x_cs.c b/drivers/net/pcmcia/fmvj18x_cs.c
index 813aca3fc433..7b17404d0858 100644
--- a/drivers/net/pcmcia/fmvj18x_cs.c
+++ b/drivers/net/pcmcia/fmvj18x_cs.c
@@ -717,6 +717,7 @@ static struct pcmcia_device_id fmvj18x_ids[] = {
717 PCMCIA_PFC_DEVICE_PROD_ID12(0, "NEC", "PK-UG-J001" ,0x18df0ba0 ,0x831b1064), 717 PCMCIA_PFC_DEVICE_PROD_ID12(0, "NEC", "PK-UG-J001" ,0x18df0ba0 ,0x831b1064),
718 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0105, 0x0d0a), 718 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0105, 0x0d0a),
719 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0105, 0x0e0a), 719 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0105, 0x0e0a),
720 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0032, 0x0e01),
720 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0032, 0x0a05), 721 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0032, 0x0a05),
721 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0032, 0x1101), 722 PCMCIA_PFC_DEVICE_MANF_CARD(0, 0x0032, 0x1101),
722 PCMCIA_DEVICE_NULL, 723 PCMCIA_DEVICE_NULL,
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
index b0e9f9c51721..0295097d6c44 100644
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -410,7 +410,6 @@ EXPORT_SYMBOL(phy_start_aneg);
410 410
411 411
412static void phy_change(struct work_struct *work); 412static void phy_change(struct work_struct *work);
413static void phy_state_machine(struct work_struct *work);
414 413
415/** 414/**
416 * phy_start_machine - start PHY state machine tracking 415 * phy_start_machine - start PHY state machine tracking
@@ -430,7 +429,6 @@ void phy_start_machine(struct phy_device *phydev,
430{ 429{
431 phydev->adjust_state = handler; 430 phydev->adjust_state = handler;
432 431
433 INIT_DELAYED_WORK(&phydev->state_queue, phy_state_machine);
434 schedule_delayed_work(&phydev->state_queue, HZ); 432 schedule_delayed_work(&phydev->state_queue, HZ);
435} 433}
436 434
@@ -761,7 +759,7 @@ EXPORT_SYMBOL(phy_start);
761 * phy_state_machine - Handle the state machine 759 * phy_state_machine - Handle the state machine
762 * @work: work_struct that describes the work to be done 760 * @work: work_struct that describes the work to be done
763 */ 761 */
764static void phy_state_machine(struct work_struct *work) 762void phy_state_machine(struct work_struct *work)
765{ 763{
766 struct delayed_work *dwork = to_delayed_work(work); 764 struct delayed_work *dwork = to_delayed_work(work);
767 struct phy_device *phydev = 765 struct phy_device *phydev =
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
index 8212b2b93422..adbc0fded130 100644
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
@@ -177,6 +177,7 @@ struct phy_device* phy_device_create(struct mii_bus *bus, int addr, int phy_id)
177 dev->state = PHY_DOWN; 177 dev->state = PHY_DOWN;
178 178
179 mutex_init(&dev->lock); 179 mutex_init(&dev->lock);
180 INIT_DELAYED_WORK(&dev->state_queue, phy_state_machine);
180 181
181 return dev; 182 return dev;
182} 183}
diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c
index 707b391afa02..894a7c84faef 100644
--- a/drivers/net/qlge/qlge_main.c
+++ b/drivers/net/qlge/qlge_main.c
@@ -4119,7 +4119,7 @@ static int __devinit ql_init_device(struct pci_dev *pdev,
4119 err = pcie_set_readrq(pdev, 4096); 4119 err = pcie_set_readrq(pdev, 4096);
4120 if (err) { 4120 if (err) {
4121 dev_err(&pdev->dev, "Set readrq failed.\n"); 4121 dev_err(&pdev->dev, "Set readrq failed.\n");
4122 goto err_out; 4122 goto err_out1;
4123 } 4123 }
4124 4124
4125 err = pci_request_regions(pdev, DRV_NAME); 4125 err = pci_request_regions(pdev, DRV_NAME);
@@ -4140,7 +4140,7 @@ static int __devinit ql_init_device(struct pci_dev *pdev,
4140 4140
4141 if (err) { 4141 if (err) {
4142 dev_err(&pdev->dev, "No usable DMA configuration.\n"); 4142 dev_err(&pdev->dev, "No usable DMA configuration.\n");
4143 goto err_out; 4143 goto err_out2;
4144 } 4144 }
4145 4145
4146 /* Set PCIe reset type for EEH to fundamental. */ 4146 /* Set PCIe reset type for EEH to fundamental. */
@@ -4152,7 +4152,7 @@ static int __devinit ql_init_device(struct pci_dev *pdev,
4152 if (!qdev->reg_base) { 4152 if (!qdev->reg_base) {
4153 dev_err(&pdev->dev, "Register mapping failed.\n"); 4153 dev_err(&pdev->dev, "Register mapping failed.\n");
4154 err = -ENOMEM; 4154 err = -ENOMEM;
4155 goto err_out; 4155 goto err_out2;
4156 } 4156 }
4157 4157
4158 qdev->doorbell_area_size = pci_resource_len(pdev, 3); 4158 qdev->doorbell_area_size = pci_resource_len(pdev, 3);
@@ -4162,14 +4162,14 @@ static int __devinit ql_init_device(struct pci_dev *pdev,
4162 if (!qdev->doorbell_area) { 4162 if (!qdev->doorbell_area) {
4163 dev_err(&pdev->dev, "Doorbell register mapping failed.\n"); 4163 dev_err(&pdev->dev, "Doorbell register mapping failed.\n");
4164 err = -ENOMEM; 4164 err = -ENOMEM;
4165 goto err_out; 4165 goto err_out2;
4166 } 4166 }
4167 4167
4168 err = ql_get_board_info(qdev); 4168 err = ql_get_board_info(qdev);
4169 if (err) { 4169 if (err) {
4170 dev_err(&pdev->dev, "Register access failed.\n"); 4170 dev_err(&pdev->dev, "Register access failed.\n");
4171 err = -EIO; 4171 err = -EIO;
4172 goto err_out; 4172 goto err_out2;
4173 } 4173 }
4174 qdev->msg_enable = netif_msg_init(debug, default_msg); 4174 qdev->msg_enable = netif_msg_init(debug, default_msg);
4175 spin_lock_init(&qdev->hw_lock); 4175 spin_lock_init(&qdev->hw_lock);
@@ -4179,7 +4179,7 @@ static int __devinit ql_init_device(struct pci_dev *pdev,
4179 err = qdev->nic_ops->get_flash(qdev); 4179 err = qdev->nic_ops->get_flash(qdev);
4180 if (err) { 4180 if (err) {
4181 dev_err(&pdev->dev, "Invalid FLASH.\n"); 4181 dev_err(&pdev->dev, "Invalid FLASH.\n");
4182 goto err_out; 4182 goto err_out2;
4183 } 4183 }
4184 4184
4185 memcpy(ndev->perm_addr, ndev->dev_addr, ndev->addr_len); 4185 memcpy(ndev->perm_addr, ndev->dev_addr, ndev->addr_len);
@@ -4212,8 +4212,9 @@ static int __devinit ql_init_device(struct pci_dev *pdev,
4212 DRV_NAME, DRV_VERSION); 4212 DRV_NAME, DRV_VERSION);
4213 } 4213 }
4214 return 0; 4214 return 0;
4215err_out: 4215err_out2:
4216 ql_release_all(pdev); 4216 ql_release_all(pdev);
4217err_out1:
4217 pci_disable_device(pdev); 4218 pci_disable_device(pdev);
4218 return err; 4219 return err;
4219} 4220}
diff --git a/drivers/net/s2io.c b/drivers/net/s2io.c
index cc4218667cba..3c4836d0898f 100644
--- a/drivers/net/s2io.c
+++ b/drivers/net/s2io.c
@@ -3421,7 +3421,7 @@ static int wait_for_cmd_complete(void __iomem *addr, u64 busy_bit,
3421 break; 3421 break;
3422 } 3422 }
3423 } else { 3423 } else {
3424 if (!(val64 & busy_bit)) { 3424 if (val64 & busy_bit) {
3425 ret = SUCCESS; 3425 ret = SUCCESS;
3426 break; 3426 break;
3427 } 3427 }
diff --git a/drivers/net/sfc/mcdi.c b/drivers/net/sfc/mcdi.c
index 0d4eba7266ec..9f035b9f0350 100644
--- a/drivers/net/sfc/mcdi.c
+++ b/drivers/net/sfc/mcdi.c
@@ -804,7 +804,7 @@ int efx_mcdi_nvram_read(struct efx_nic *efx, unsigned int type,
804 loff_t offset, u8 *buffer, size_t length) 804 loff_t offset, u8 *buffer, size_t length)
805{ 805{
806 u8 inbuf[MC_CMD_NVRAM_READ_IN_LEN]; 806 u8 inbuf[MC_CMD_NVRAM_READ_IN_LEN];
807 u8 outbuf[MC_CMD_NVRAM_READ_OUT_LEN(length)]; 807 u8 outbuf[MC_CMD_NVRAM_READ_OUT_LEN(EFX_MCDI_NVRAM_LEN_MAX)];
808 size_t outlen; 808 size_t outlen;
809 int rc; 809 int rc;
810 810
@@ -828,7 +828,7 @@ fail:
828int efx_mcdi_nvram_write(struct efx_nic *efx, unsigned int type, 828int efx_mcdi_nvram_write(struct efx_nic *efx, unsigned int type,
829 loff_t offset, const u8 *buffer, size_t length) 829 loff_t offset, const u8 *buffer, size_t length)
830{ 830{
831 u8 inbuf[MC_CMD_NVRAM_WRITE_IN_LEN(length)]; 831 u8 inbuf[MC_CMD_NVRAM_WRITE_IN_LEN(EFX_MCDI_NVRAM_LEN_MAX)];
832 int rc; 832 int rc;
833 833
834 MCDI_SET_DWORD(inbuf, NVRAM_WRITE_IN_TYPE, type); 834 MCDI_SET_DWORD(inbuf, NVRAM_WRITE_IN_TYPE, type);
@@ -838,7 +838,8 @@ int efx_mcdi_nvram_write(struct efx_nic *efx, unsigned int type,
838 838
839 BUILD_BUG_ON(MC_CMD_NVRAM_WRITE_OUT_LEN != 0); 839 BUILD_BUG_ON(MC_CMD_NVRAM_WRITE_OUT_LEN != 0);
840 840
841 rc = efx_mcdi_rpc(efx, MC_CMD_NVRAM_WRITE, inbuf, sizeof(inbuf), 841 rc = efx_mcdi_rpc(efx, MC_CMD_NVRAM_WRITE, inbuf,
842 ALIGN(MC_CMD_NVRAM_WRITE_IN_LEN(length), 4),
842 NULL, 0, NULL); 843 NULL, 0, NULL);
843 if (rc) 844 if (rc)
844 goto fail; 845 goto fail;
diff --git a/drivers/net/sfc/mcdi.h b/drivers/net/sfc/mcdi.h
index de916728c2e3..10ce98f4c0fb 100644
--- a/drivers/net/sfc/mcdi.h
+++ b/drivers/net/sfc/mcdi.h
@@ -111,6 +111,7 @@ extern int efx_mcdi_nvram_read(struct efx_nic *efx, unsigned int type,
111extern int efx_mcdi_nvram_write(struct efx_nic *efx, unsigned int type, 111extern int efx_mcdi_nvram_write(struct efx_nic *efx, unsigned int type,
112 loff_t offset, const u8 *buffer, 112 loff_t offset, const u8 *buffer,
113 size_t length); 113 size_t length);
114#define EFX_MCDI_NVRAM_LEN_MAX 128
114extern int efx_mcdi_nvram_erase(struct efx_nic *efx, unsigned int type, 115extern int efx_mcdi_nvram_erase(struct efx_nic *efx, unsigned int type,
115 loff_t offset, size_t length); 116 loff_t offset, size_t length);
116extern int efx_mcdi_nvram_update_finish(struct efx_nic *efx, 117extern int efx_mcdi_nvram_update_finish(struct efx_nic *efx,
diff --git a/drivers/net/sfc/mcdi_pcol.h b/drivers/net/sfc/mcdi_pcol.h
index 2a85360a46f0..73e71f420624 100644
--- a/drivers/net/sfc/mcdi_pcol.h
+++ b/drivers/net/sfc/mcdi_pcol.h
@@ -1090,8 +1090,10 @@
1090#define MC_CMD_MAC_RX_LANES01_DISP_ERR 57 1090#define MC_CMD_MAC_RX_LANES01_DISP_ERR 57
1091#define MC_CMD_MAC_RX_LANES23_DISP_ERR 58 1091#define MC_CMD_MAC_RX_LANES23_DISP_ERR 58
1092#define MC_CMD_MAC_RX_MATCH_FAULT 59 1092#define MC_CMD_MAC_RX_MATCH_FAULT 59
1093#define MC_CMD_GMAC_DMABUF_START 64
1094#define MC_CMD_GMAC_DMABUF_END 95
1093/* Insert new members here. */ 1095/* Insert new members here. */
1094#define MC_CMD_MAC_GENERATION_END 60 1096#define MC_CMD_MAC_GENERATION_END 96
1095#define MC_CMD_MAC_NSTATS (MC_CMD_MAC_GENERATION_END+1) 1097#define MC_CMD_MAC_NSTATS (MC_CMD_MAC_GENERATION_END+1)
1096 1098
1097/* MC_CMD_MAC_STATS: 1099/* MC_CMD_MAC_STATS:
diff --git a/drivers/net/sfc/mtd.c b/drivers/net/sfc/mtd.c
index 3a464529a46b..407bbaddfea6 100644
--- a/drivers/net/sfc/mtd.c
+++ b/drivers/net/sfc/mtd.c
@@ -23,7 +23,6 @@
23#include "mcdi_pcol.h" 23#include "mcdi_pcol.h"
24 24
25#define EFX_SPI_VERIFY_BUF_LEN 16 25#define EFX_SPI_VERIFY_BUF_LEN 16
26#define EFX_MCDI_CHUNK_LEN 128
27 26
28struct efx_mtd_partition { 27struct efx_mtd_partition {
29 struct mtd_info mtd; 28 struct mtd_info mtd;
@@ -428,7 +427,7 @@ static int siena_mtd_read(struct mtd_info *mtd, loff_t start,
428 int rc = 0; 427 int rc = 0;
429 428
430 while (offset < end) { 429 while (offset < end) {
431 chunk = min_t(size_t, end - offset, EFX_MCDI_CHUNK_LEN); 430 chunk = min_t(size_t, end - offset, EFX_MCDI_NVRAM_LEN_MAX);
432 rc = efx_mcdi_nvram_read(efx, part->mcdi.nvram_type, offset, 431 rc = efx_mcdi_nvram_read(efx, part->mcdi.nvram_type, offset,
433 buffer, chunk); 432 buffer, chunk);
434 if (rc) 433 if (rc)
@@ -491,7 +490,7 @@ static int siena_mtd_write(struct mtd_info *mtd, loff_t start,
491 } 490 }
492 491
493 while (offset < end) { 492 while (offset < end) {
494 chunk = min_t(size_t, end - offset, EFX_MCDI_CHUNK_LEN); 493 chunk = min_t(size_t, end - offset, EFX_MCDI_NVRAM_LEN_MAX);
495 rc = efx_mcdi_nvram_write(efx, part->mcdi.nvram_type, offset, 494 rc = efx_mcdi_nvram_write(efx, part->mcdi.nvram_type, offset,
496 buffer, chunk); 495 buffer, chunk);
497 if (rc) 496 if (rc)
diff --git a/drivers/net/sfc/qt202x_phy.c b/drivers/net/sfc/qt202x_phy.c
index ff8f0a417fa3..e0d13a451019 100644
--- a/drivers/net/sfc/qt202x_phy.c
+++ b/drivers/net/sfc/qt202x_phy.c
@@ -318,12 +318,6 @@ static int qt202x_reset_phy(struct efx_nic *efx)
318 /* Wait 250ms for the PHY to complete bootup */ 318 /* Wait 250ms for the PHY to complete bootup */
319 msleep(250); 319 msleep(250);
320 320
321 /* Check that all the MMDs we expect are present and responding. We
322 * expect faults on some if the link is down, but not on the PHY XS */
323 rc = efx_mdio_check_mmds(efx, QT202X_REQUIRED_DEVS, MDIO_DEVS_PHYXS);
324 if (rc < 0)
325 goto fail;
326
327 falcon_board(efx)->type->init_phy(efx); 321 falcon_board(efx)->type->init_phy(efx);
328 322
329 return rc; 323 return rc;
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index 37f486b65f63..d760650c5c04 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -644,6 +644,7 @@ static void sky2_phy_power_up(struct sky2_hw *hw, unsigned port)
644{ 644{
645 u32 reg1; 645 u32 reg1;
646 646
647 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
647 reg1 = sky2_pci_read32(hw, PCI_DEV_REG1); 648 reg1 = sky2_pci_read32(hw, PCI_DEV_REG1);
648 reg1 &= ~phy_power[port]; 649 reg1 &= ~phy_power[port];
649 650
@@ -651,6 +652,7 @@ static void sky2_phy_power_up(struct sky2_hw *hw, unsigned port)
651 reg1 |= coma_mode[port]; 652 reg1 |= coma_mode[port];
652 653
653 sky2_pci_write32(hw, PCI_DEV_REG1, reg1); 654 sky2_pci_write32(hw, PCI_DEV_REG1, reg1);
655 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
654 sky2_pci_read32(hw, PCI_DEV_REG1); 656 sky2_pci_read32(hw, PCI_DEV_REG1);
655 657
656 if (hw->chip_id == CHIP_ID_YUKON_FE) 658 if (hw->chip_id == CHIP_ID_YUKON_FE)
@@ -707,9 +709,11 @@ static void sky2_phy_power_down(struct sky2_hw *hw, unsigned port)
707 gm_phy_write(hw, port, PHY_MARV_CTRL, PHY_CT_PDOWN); 709 gm_phy_write(hw, port, PHY_MARV_CTRL, PHY_CT_PDOWN);
708 } 710 }
709 711
712 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
710 reg1 = sky2_pci_read32(hw, PCI_DEV_REG1); 713 reg1 = sky2_pci_read32(hw, PCI_DEV_REG1);
711 reg1 |= phy_power[port]; /* set PHY to PowerDown/COMA Mode */ 714 reg1 |= phy_power[port]; /* set PHY to PowerDown/COMA Mode */
712 sky2_pci_write32(hw, PCI_DEV_REG1, reg1); 715 sky2_pci_write32(hw, PCI_DEV_REG1, reg1);
716 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
713} 717}
714 718
715/* Force a renegotiation */ 719/* Force a renegotiation */
@@ -2149,7 +2153,9 @@ static void sky2_qlink_intr(struct sky2_hw *hw)
2149 2153
2150 /* reset PHY Link Detect */ 2154 /* reset PHY Link Detect */
2151 phy = sky2_pci_read16(hw, PSM_CONFIG_REG4); 2155 phy = sky2_pci_read16(hw, PSM_CONFIG_REG4);
2156 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
2152 sky2_pci_write16(hw, PSM_CONFIG_REG4, phy | 1); 2157 sky2_pci_write16(hw, PSM_CONFIG_REG4, phy | 1);
2158 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2153 2159
2154 sky2_link_up(sky2); 2160 sky2_link_up(sky2);
2155} 2161}
@@ -2640,6 +2646,7 @@ static void sky2_hw_intr(struct sky2_hw *hw)
2640 if (status & (Y2_IS_MST_ERR | Y2_IS_IRQ_STAT)) { 2646 if (status & (Y2_IS_MST_ERR | Y2_IS_IRQ_STAT)) {
2641 u16 pci_err; 2647 u16 pci_err;
2642 2648
2649 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
2643 pci_err = sky2_pci_read16(hw, PCI_STATUS); 2650 pci_err = sky2_pci_read16(hw, PCI_STATUS);
2644 if (net_ratelimit()) 2651 if (net_ratelimit())
2645 dev_err(&pdev->dev, "PCI hardware error (0x%x)\n", 2652 dev_err(&pdev->dev, "PCI hardware error (0x%x)\n",
@@ -2647,12 +2654,14 @@ static void sky2_hw_intr(struct sky2_hw *hw)
2647 2654
2648 sky2_pci_write16(hw, PCI_STATUS, 2655 sky2_pci_write16(hw, PCI_STATUS,
2649 pci_err | PCI_STATUS_ERROR_BITS); 2656 pci_err | PCI_STATUS_ERROR_BITS);
2657 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2650 } 2658 }
2651 2659
2652 if (status & Y2_IS_PCI_EXP) { 2660 if (status & Y2_IS_PCI_EXP) {
2653 /* PCI-Express uncorrectable Error occurred */ 2661 /* PCI-Express uncorrectable Error occurred */
2654 u32 err; 2662 u32 err;
2655 2663
2664 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
2656 err = sky2_read32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS); 2665 err = sky2_read32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS);
2657 sky2_write32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS, 2666 sky2_write32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS,
2658 0xfffffffful); 2667 0xfffffffful);
@@ -2660,6 +2669,7 @@ static void sky2_hw_intr(struct sky2_hw *hw)
2660 dev_err(&pdev->dev, "PCI Express error (0x%x)\n", err); 2669 dev_err(&pdev->dev, "PCI Express error (0x%x)\n", err);
2661 2670
2662 sky2_read32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS); 2671 sky2_read32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS);
2672 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2663 } 2673 }
2664 2674
2665 if (status & Y2_HWE_L1_MASK) 2675 if (status & Y2_HWE_L1_MASK)
@@ -3038,6 +3048,7 @@ static void sky2_reset(struct sky2_hw *hw)
3038 } 3048 }
3039 3049
3040 sky2_power_on(hw); 3050 sky2_power_on(hw);
3051 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
3041 3052
3042 for (i = 0; i < hw->ports; i++) { 3053 for (i = 0; i < hw->ports; i++) {
3043 sky2_write8(hw, SK_REG(i, GMAC_LINK_CTRL), GMLC_RST_SET); 3054 sky2_write8(hw, SK_REG(i, GMAC_LINK_CTRL), GMLC_RST_SET);
@@ -3074,6 +3085,7 @@ static void sky2_reset(struct sky2_hw *hw)
3074 reg <<= PSM_CONFIG_REG4_TIMER_PHY_LINK_DETECT_BASE; 3085 reg <<= PSM_CONFIG_REG4_TIMER_PHY_LINK_DETECT_BASE;
3075 3086
3076 /* reset PHY Link Detect */ 3087 /* reset PHY Link Detect */
3088 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
3077 sky2_pci_write16(hw, PSM_CONFIG_REG4, 3089 sky2_pci_write16(hw, PSM_CONFIG_REG4,
3078 reg | PSM_CONFIG_REG4_RST_PHY_LINK_DETECT); 3090 reg | PSM_CONFIG_REG4_RST_PHY_LINK_DETECT);
3079 sky2_pci_write16(hw, PSM_CONFIG_REG4, reg); 3091 sky2_pci_write16(hw, PSM_CONFIG_REG4, reg);
@@ -3091,6 +3103,7 @@ static void sky2_reset(struct sky2_hw *hw)
3091 /* restore the PCIe Link Control register */ 3103 /* restore the PCIe Link Control register */
3092 sky2_pci_write16(hw, cap + PCI_EXP_LNKCTL, reg); 3104 sky2_pci_write16(hw, cap + PCI_EXP_LNKCTL, reg);
3093 } 3105 }
3106 sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
3094 3107
3095 /* re-enable PEX PM in PEX PHY debug reg. 8 (clear bit 12) */ 3108 /* re-enable PEX PM in PEX PHY debug reg. 8 (clear bit 12) */
3096 sky2_write32(hw, Y2_PEX_PHY_DATA, PEX_DB_ACCESS | (0x08UL << 16)); 3109 sky2_write32(hw, Y2_PEX_PHY_DATA, PEX_DB_ACCESS | (0x08UL << 16));
@@ -3228,6 +3241,27 @@ static inline u8 sky2_wol_supported(const struct sky2_hw *hw)
3228 return sky2_is_copper(hw) ? (WAKE_PHY | WAKE_MAGIC) : 0; 3241 return sky2_is_copper(hw) ? (WAKE_PHY | WAKE_MAGIC) : 0;
3229} 3242}
3230 3243
3244static void sky2_hw_set_wol(struct sky2_hw *hw)
3245{
3246 int wol = 0;
3247 int i;
3248
3249 for (i = 0; i < hw->ports; i++) {
3250 struct net_device *dev = hw->dev[i];
3251 struct sky2_port *sky2 = netdev_priv(dev);
3252
3253 if (sky2->wol)
3254 wol = 1;
3255 }
3256
3257 if (hw->chip_id == CHIP_ID_YUKON_EC_U ||
3258 hw->chip_id == CHIP_ID_YUKON_EX ||
3259 hw->chip_id == CHIP_ID_YUKON_FE_P)
3260 sky2_write32(hw, B0_CTST, wol ? Y2_HW_WOL_ON : Y2_HW_WOL_OFF);
3261
3262 device_set_wakeup_enable(&hw->pdev->dev, wol);
3263}
3264
3231static void sky2_get_wol(struct net_device *dev, struct ethtool_wolinfo *wol) 3265static void sky2_get_wol(struct net_device *dev, struct ethtool_wolinfo *wol)
3232{ 3266{
3233 const struct sky2_port *sky2 = netdev_priv(dev); 3267 const struct sky2_port *sky2 = netdev_priv(dev);
@@ -3247,13 +3281,7 @@ static int sky2_set_wol(struct net_device *dev, struct ethtool_wolinfo *wol)
3247 3281
3248 sky2->wol = wol->wolopts; 3282 sky2->wol = wol->wolopts;
3249 3283
3250 if (hw->chip_id == CHIP_ID_YUKON_EC_U || 3284 sky2_hw_set_wol(hw);
3251 hw->chip_id == CHIP_ID_YUKON_EX ||
3252 hw->chip_id == CHIP_ID_YUKON_FE_P)
3253 sky2_write32(hw, B0_CTST, sky2->wol
3254 ? Y2_HW_WOL_ON : Y2_HW_WOL_OFF);
3255
3256 device_set_wakeup_enable(&hw->pdev->dev, sky2->wol);
3257 3285
3258 if (!netif_running(dev)) 3286 if (!netif_running(dev))
3259 sky2_wol_init(sky2); 3287 sky2_wol_init(sky2);
diff --git a/drivers/net/tulip/tulip_core.c b/drivers/net/tulip/tulip_core.c
index 595777dcadb1..20696b5d60a5 100644
--- a/drivers/net/tulip/tulip_core.c
+++ b/drivers/net/tulip/tulip_core.c
@@ -249,6 +249,7 @@ static struct pci_device_id tulip_pci_tbl[] = {
249 { 0x17B3, 0xAB08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET }, 249 { 0x17B3, 0xAB08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
250 { 0x10b7, 0x9300, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET }, /* 3Com 3CSOHO100B-TX */ 250 { 0x10b7, 0x9300, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET }, /* 3Com 3CSOHO100B-TX */
251 { 0x14ea, 0xab08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET }, /* Planex FNW-3602-TX */ 251 { 0x14ea, 0xab08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET }, /* Planex FNW-3602-TX */
252 { 0x1414, 0x0001, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET }, /* Microsoft MN-120 */
252 { 0x1414, 0x0002, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET }, 253 { 0x1414, 0x0002, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
253 { } /* terminate list */ 254 { } /* terminate list */
254}; 255};
diff --git a/drivers/net/ucc_geth.c b/drivers/net/ucc_geth.c
index 96bdc0b43889..eb8fe7e16c6c 100644
--- a/drivers/net/ucc_geth.c
+++ b/drivers/net/ucc_geth.c
@@ -3279,13 +3279,12 @@ static int ucc_geth_tx(struct net_device *dev, u8 txQ)
3279 /* Handle the transmitted buffer and release */ 3279 /* Handle the transmitted buffer and release */
3280 /* the BD to be used with the current frame */ 3280 /* the BD to be used with the current frame */
3281 3281
3282 if (bd == ugeth->txBd[txQ]) /* queue empty? */ 3282 skb = ugeth->tx_skbuff[txQ][ugeth->skb_dirtytx[txQ]];
3283 if (!skb)
3283 break; 3284 break;
3284 3285
3285 dev->stats.tx_packets++; 3286 dev->stats.tx_packets++;
3286 3287
3287 skb = ugeth->tx_skbuff[txQ][ugeth->skb_dirtytx[txQ]];
3288
3289 if (skb_queue_len(&ugeth->rx_recycle) < RX_BD_RING_LEN && 3288 if (skb_queue_len(&ugeth->rx_recycle) < RX_BD_RING_LEN &&
3290 skb_recycle_check(skb, 3289 skb_recycle_check(skb,
3291 ugeth->ug_info->uf_info.max_rx_buf_length + 3290 ugeth->ug_info->uf_info.max_rx_buf_length +
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index c708ecc3cb2e..9ead30bd00c4 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -395,8 +395,7 @@ static void refill_work(struct work_struct *work)
395 395
396 vi = container_of(work, struct virtnet_info, refill.work); 396 vi = container_of(work, struct virtnet_info, refill.work);
397 napi_disable(&vi->napi); 397 napi_disable(&vi->napi);
398 try_fill_recv(vi, GFP_KERNEL); 398 still_empty = !try_fill_recv(vi, GFP_KERNEL);
399 still_empty = (vi->num == 0);
400 napi_enable(&vi->napi); 399 napi_enable(&vi->napi);
401 400
402 /* In theory, this can happen: if we don't get any buffers in 401 /* In theory, this can happen: if we don't get any buffers in
diff --git a/drivers/net/wimax/i2400m/i2400m-usb.h b/drivers/net/wimax/i2400m/i2400m-usb.h
index 5cc0f279417e..2d7c96d7e865 100644
--- a/drivers/net/wimax/i2400m/i2400m-usb.h
+++ b/drivers/net/wimax/i2400m/i2400m-usb.h
@@ -151,6 +151,7 @@ enum {
151 151
152 /* Device IDs */ 152 /* Device IDs */
153 USB_DEVICE_ID_I6050 = 0x0186, 153 USB_DEVICE_ID_I6050 = 0x0186,
154 USB_DEVICE_ID_I6050_2 = 0x0188,
154}; 155};
155 156
156 157
@@ -234,6 +235,7 @@ struct i2400mu {
234 u8 rx_size_auto_shrink; 235 u8 rx_size_auto_shrink;
235 236
236 struct dentry *debugfs_dentry; 237 struct dentry *debugfs_dentry;
238 unsigned i6050:1; /* 1 if this is a 6050 based SKU */
237}; 239};
238 240
239 241
diff --git a/drivers/net/wimax/i2400m/usb.c b/drivers/net/wimax/i2400m/usb.c
index 3b48681f8a0d..98f4f8c5fb68 100644
--- a/drivers/net/wimax/i2400m/usb.c
+++ b/drivers/net/wimax/i2400m/usb.c
@@ -478,7 +478,16 @@ int i2400mu_probe(struct usb_interface *iface,
478 i2400m->bus_bm_wait_for_ack = i2400mu_bus_bm_wait_for_ack; 478 i2400m->bus_bm_wait_for_ack = i2400mu_bus_bm_wait_for_ack;
479 i2400m->bus_bm_mac_addr_impaired = 0; 479 i2400m->bus_bm_mac_addr_impaired = 0;
480 480
481 if (id->idProduct == USB_DEVICE_ID_I6050) { 481 switch (id->idProduct) {
482 case USB_DEVICE_ID_I6050:
483 case USB_DEVICE_ID_I6050_2:
484 i2400mu->i6050 = 1;
485 break;
486 default:
487 break;
488 }
489
490 if (i2400mu->i6050) {
482 i2400m->bus_fw_names = i2400mu_bus_fw_names_6050; 491 i2400m->bus_fw_names = i2400mu_bus_fw_names_6050;
483 i2400mu->endpoint_cfg.bulk_out = 0; 492 i2400mu->endpoint_cfg.bulk_out = 0;
484 i2400mu->endpoint_cfg.notification = 3; 493 i2400mu->endpoint_cfg.notification = 3;
@@ -719,6 +728,7 @@ int i2400mu_post_reset(struct usb_interface *iface)
719static 728static
720struct usb_device_id i2400mu_id_table[] = { 729struct usb_device_id i2400mu_id_table[] = {
721 { USB_DEVICE(0x8086, USB_DEVICE_ID_I6050) }, 730 { USB_DEVICE(0x8086, USB_DEVICE_ID_I6050) },
731 { USB_DEVICE(0x8086, USB_DEVICE_ID_I6050_2) },
722 { USB_DEVICE(0x8086, 0x0181) }, 732 { USB_DEVICE(0x8086, 0x0181) },
723 { USB_DEVICE(0x8086, 0x1403) }, 733 { USB_DEVICE(0x8086, 0x1403) },
724 { USB_DEVICE(0x8086, 0x1405) }, 734 { USB_DEVICE(0x8086, 0x1405) },
diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless/iwlwifi/iwl-5000.c
index 33a5866538e7..de45f308b744 100644
--- a/drivers/net/wireless/iwlwifi/iwl-5000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-5000.c
@@ -1598,6 +1598,7 @@ struct iwl_cfg iwl5300_agn_cfg = {
1598 .use_bsm = false, 1598 .use_bsm = false,
1599 .ht_greenfield_support = true, 1599 .ht_greenfield_support = true,
1600 .led_compensation = 51, 1600 .led_compensation = 51,
1601 .use_rts_for_ht = true, /* use rts/cts protection */
1601 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS, 1602 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
1602 .sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED, 1603 .sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
1603}; 1604};
@@ -1622,6 +1623,7 @@ struct iwl_cfg iwl5100_bgn_cfg = {
1622 .use_bsm = false, 1623 .use_bsm = false,
1623 .ht_greenfield_support = true, 1624 .ht_greenfield_support = true,
1624 .led_compensation = 51, 1625 .led_compensation = 51,
1626 .use_rts_for_ht = true, /* use rts/cts protection */
1625 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS, 1627 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
1626}; 1628};
1627 1629
@@ -1667,6 +1669,7 @@ struct iwl_cfg iwl5100_agn_cfg = {
1667 .use_bsm = false, 1669 .use_bsm = false,
1668 .ht_greenfield_support = true, 1670 .ht_greenfield_support = true,
1669 .led_compensation = 51, 1671 .led_compensation = 51,
1672 .use_rts_for_ht = true, /* use rts/cts protection */
1670 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS, 1673 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
1671 .sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED, 1674 .sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
1672}; 1675};
@@ -1691,6 +1694,7 @@ struct iwl_cfg iwl5350_agn_cfg = {
1691 .use_bsm = false, 1694 .use_bsm = false,
1692 .ht_greenfield_support = true, 1695 .ht_greenfield_support = true,
1693 .led_compensation = 51, 1696 .led_compensation = 51,
1697 .use_rts_for_ht = true, /* use rts/cts protection */
1694 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS, 1698 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
1695 .sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED, 1699 .sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
1696}; 1700};
@@ -1715,6 +1719,7 @@ struct iwl_cfg iwl5150_agn_cfg = {
1715 .use_bsm = false, 1719 .use_bsm = false,
1716 .ht_greenfield_support = true, 1720 .ht_greenfield_support = true,
1717 .led_compensation = 51, 1721 .led_compensation = 51,
1722 .use_rts_for_ht = true, /* use rts/cts protection */
1718 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS, 1723 .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
1719 .sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED, 1724 .sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
1720}; 1725};
diff --git a/drivers/net/wireless/iwlwifi/iwl-devtrace.c b/drivers/net/wireless/iwlwifi/iwl-devtrace.c
index e7d88d1da15d..83cc4e500a96 100644
--- a/drivers/net/wireless/iwlwifi/iwl-devtrace.c
+++ b/drivers/net/wireless/iwlwifi/iwl-devtrace.c
@@ -1,3 +1,29 @@
1/******************************************************************************
2 *
3 * Copyright(c) 2009 - 2010 Intel Corporation. All rights reserved.
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of version 2 of the GNU General Public License as
7 * published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along with
15 * this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
17 *
18 * The full GNU General Public License is included in this distribution in the
19 * file called LICENSE.
20 *
21 * Contact Information:
22 * Intel Linux Wireless <ilw@linux.intel.com>
23 * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
24 *
25 *****************************************************************************/
26
1#include <linux/module.h> 27#include <linux/module.h>
2 28
3/* sparse doesn't like tracepoint macros */ 29/* sparse doesn't like tracepoint macros */
diff --git a/drivers/net/wireless/iwlwifi/iwl-devtrace.h b/drivers/net/wireless/iwlwifi/iwl-devtrace.h
index 21361968ab7e..d9c7363b1bbb 100644
--- a/drivers/net/wireless/iwlwifi/iwl-devtrace.h
+++ b/drivers/net/wireless/iwlwifi/iwl-devtrace.h
@@ -1,3 +1,29 @@
1/******************************************************************************
2 *
3 * Copyright(c) 2009 - 2010 Intel Corporation. All rights reserved.
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of version 2 of the GNU General Public License as
7 * published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along with
15 * this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
17 *
18 * The full GNU General Public License is included in this distribution in the
19 * file called LICENSE.
20 *
21 * Contact Information:
22 * Intel Linux Wireless <ilw@linux.intel.com>
23 * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
24 *
25 *****************************************************************************/
26
1#if !defined(__IWLWIFI_DEVICE_TRACE) || defined(TRACE_HEADER_MULTI_READ) 27#if !defined(__IWLWIFI_DEVICE_TRACE) || defined(TRACE_HEADER_MULTI_READ)
2#define __IWLWIFI_DEVICE_TRACE 28#define __IWLWIFI_DEVICE_TRACE
3 29
diff --git a/drivers/net/wireless/iwmc3200wifi/commands.c b/drivers/net/wireless/iwmc3200wifi/commands.c
index 777584d76a88..1e41ad0fcad5 100644
--- a/drivers/net/wireless/iwmc3200wifi/commands.c
+++ b/drivers/net/wireless/iwmc3200wifi/commands.c
@@ -973,6 +973,10 @@ int iwm_send_pmkid_update(struct iwm_priv *iwm,
973 973
974 memset(&update, 0, sizeof(struct iwm_umac_pmkid_update)); 974 memset(&update, 0, sizeof(struct iwm_umac_pmkid_update));
975 975
976 update.hdr.oid = UMAC_WIFI_IF_CMD_PMKID_UPDATE;
977 update.hdr.buf_size = cpu_to_le16(sizeof(struct iwm_umac_pmkid_update) -
978 sizeof(struct iwm_umac_wifi_if));
979
976 update.command = cpu_to_le32(command); 980 update.command = cpu_to_le32(command);
977 if (pmksa->bssid) 981 if (pmksa->bssid)
978 memcpy(&update.bssid, pmksa->bssid, ETH_ALEN); 982 memcpy(&update.bssid, pmksa->bssid, ETH_ALEN);
diff --git a/drivers/net/wireless/iwmc3200wifi/commands.h b/drivers/net/wireless/iwmc3200wifi/commands.h
index 06af0552cd75..3dfd9f0e9003 100644
--- a/drivers/net/wireless/iwmc3200wifi/commands.h
+++ b/drivers/net/wireless/iwmc3200wifi/commands.h
@@ -463,6 +463,7 @@ struct iwm_umac_cmd_stop_resume_tx {
463#define IWM_CMD_PMKID_FLUSH 3 463#define IWM_CMD_PMKID_FLUSH 3
464 464
465struct iwm_umac_pmkid_update { 465struct iwm_umac_pmkid_update {
466 struct iwm_umac_wifi_if hdr;
466 __le32 command; 467 __le32 command;
467 u8 bssid[ETH_ALEN]; 468 u8 bssid[ETH_ALEN];
468 __le16 reserved; 469 __le16 reserved;
diff --git a/drivers/net/wireless/p54/p54pci.c b/drivers/net/wireless/p54/p54pci.c
index a15962a19b2a..a72f7c2577de 100644
--- a/drivers/net/wireless/p54/p54pci.c
+++ b/drivers/net/wireless/p54/p54pci.c
@@ -197,6 +197,14 @@ static void p54p_check_rx_ring(struct ieee80211_hw *dev, u32 *index,
197 i %= ring_limit; 197 i %= ring_limit;
198 continue; 198 continue;
199 } 199 }
200
201 if (unlikely(len > priv->common.rx_mtu)) {
202 if (net_ratelimit())
203 dev_err(&priv->pdev->dev, "rx'd frame size "
204 "exceeds length threshold.\n");
205
206 len = priv->common.rx_mtu;
207 }
200 skb_put(skb, len); 208 skb_put(skb, len);
201 209
202 if (p54_rx(dev, skb)) { 210 if (p54_rx(dev, skb)) {
diff --git a/drivers/net/wireless/zd1211rw/zd_usb.c b/drivers/net/wireless/zd1211rw/zd_usb.c
index ac19ecd19cfe..72d3e437e190 100644
--- a/drivers/net/wireless/zd1211rw/zd_usb.c
+++ b/drivers/net/wireless/zd1211rw/zd_usb.c
@@ -62,6 +62,7 @@ static struct usb_device_id usb_ids[] = {
62 { USB_DEVICE(0x6891, 0xa727), .driver_info = DEVICE_ZD1211 }, 62 { USB_DEVICE(0x6891, 0xa727), .driver_info = DEVICE_ZD1211 },
63 /* ZD1211B */ 63 /* ZD1211B */
64 { USB_DEVICE(0x0053, 0x5301), .driver_info = DEVICE_ZD1211B }, 64 { USB_DEVICE(0x0053, 0x5301), .driver_info = DEVICE_ZD1211B },
65 { USB_DEVICE(0x0409, 0x0248), .driver_info = DEVICE_ZD1211B },
65 { USB_DEVICE(0x0411, 0x00da), .driver_info = DEVICE_ZD1211B }, 66 { USB_DEVICE(0x0411, 0x00da), .driver_info = DEVICE_ZD1211B },
66 { USB_DEVICE(0x0471, 0x1236), .driver_info = DEVICE_ZD1211B }, 67 { USB_DEVICE(0x0471, 0x1236), .driver_info = DEVICE_ZD1211B },
67 { USB_DEVICE(0x0471, 0x1237), .driver_info = DEVICE_ZD1211B }, 68 { USB_DEVICE(0x0471, 0x1237), .driver_info = DEVICE_ZD1211B },
diff --git a/drivers/pci/pcie/aer/aer_inject.c b/drivers/pci/pcie/aer/aer_inject.c
index 8c30a9544d61..223052b73563 100644
--- a/drivers/pci/pcie/aer/aer_inject.c
+++ b/drivers/pci/pcie/aer/aer_inject.c
@@ -321,7 +321,7 @@ static int aer_inject(struct aer_error_inj *einj)
321 unsigned long flags; 321 unsigned long flags;
322 unsigned int devfn = PCI_DEVFN(einj->dev, einj->fn); 322 unsigned int devfn = PCI_DEVFN(einj->dev, einj->fn);
323 int pos_cap_err, rp_pos_cap_err; 323 int pos_cap_err, rp_pos_cap_err;
324 u32 sever, mask; 324 u32 sever, cor_mask, uncor_mask;
325 int ret = 0; 325 int ret = 0;
326 326
327 dev = pci_get_domain_bus_and_slot((int)einj->domain, einj->bus, devfn); 327 dev = pci_get_domain_bus_and_slot((int)einj->domain, einj->bus, devfn);
@@ -339,6 +339,9 @@ static int aer_inject(struct aer_error_inj *einj)
339 goto out_put; 339 goto out_put;
340 } 340 }
341 pci_read_config_dword(dev, pos_cap_err + PCI_ERR_UNCOR_SEVER, &sever); 341 pci_read_config_dword(dev, pos_cap_err + PCI_ERR_UNCOR_SEVER, &sever);
342 pci_read_config_dword(dev, pos_cap_err + PCI_ERR_COR_MASK, &cor_mask);
343 pci_read_config_dword(dev, pos_cap_err + PCI_ERR_UNCOR_MASK,
344 &uncor_mask);
342 345
343 rp_pos_cap_err = pci_find_ext_capability(rpdev, PCI_EXT_CAP_ID_ERR); 346 rp_pos_cap_err = pci_find_ext_capability(rpdev, PCI_EXT_CAP_ID_ERR);
344 if (!rp_pos_cap_err) { 347 if (!rp_pos_cap_err) {
@@ -374,17 +377,14 @@ static int aer_inject(struct aer_error_inj *einj)
374 err->header_log2 = einj->header_log2; 377 err->header_log2 = einj->header_log2;
375 err->header_log3 = einj->header_log3; 378 err->header_log3 = einj->header_log3;
376 379
377 pci_read_config_dword(dev, pos_cap_err + PCI_ERR_COR_MASK, &mask); 380 if (einj->cor_status && !(einj->cor_status & ~cor_mask)) {
378 if (einj->cor_status && !(einj->cor_status & ~mask)) {
379 ret = -EINVAL; 381 ret = -EINVAL;
380 printk(KERN_WARNING "The correctable error(s) is masked " 382 printk(KERN_WARNING "The correctable error(s) is masked "
381 "by device\n"); 383 "by device\n");
382 spin_unlock_irqrestore(&inject_lock, flags); 384 spin_unlock_irqrestore(&inject_lock, flags);
383 goto out_put; 385 goto out_put;
384 } 386 }
385 387 if (einj->uncor_status && !(einj->uncor_status & ~uncor_mask)) {
386 pci_read_config_dword(dev, pos_cap_err + PCI_ERR_UNCOR_MASK, &mask);
387 if (einj->uncor_status && !(einj->uncor_status & ~mask)) {
388 ret = -EINVAL; 388 ret = -EINVAL;
389 printk(KERN_WARNING "The uncorrectable error(s) is masked " 389 printk(KERN_WARNING "The uncorrectable error(s) is masked "
390 "by device\n"); 390 "by device\n");
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
index 98ffb2de22e9..446e4a94d7d3 100644
--- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c
@@ -681,7 +681,7 @@ static void pci_read_irq(struct pci_dev *dev)
681 dev->irq = irq; 681 dev->irq = irq;
682} 682}
683 683
684static void set_pcie_port_type(struct pci_dev *pdev) 684void set_pcie_port_type(struct pci_dev *pdev)
685{ 685{
686 int pos; 686 int pos;
687 u16 reg16; 687 u16 reg16;
@@ -695,7 +695,7 @@ static void set_pcie_port_type(struct pci_dev *pdev)
695 pdev->pcie_type = (reg16 & PCI_EXP_FLAGS_TYPE) >> 4; 695 pdev->pcie_type = (reg16 & PCI_EXP_FLAGS_TYPE) >> 4;
696} 696}
697 697
698static void set_pcie_hotplug_bridge(struct pci_dev *pdev) 698void set_pcie_hotplug_bridge(struct pci_dev *pdev)
699{ 699{
700 int pos; 700 int pos;
701 u16 reg16; 701 u16 reg16;
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index db32c25e3605..f526e735c5ab 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -364,6 +364,7 @@ config EEEPC_LAPTOP
364 select HWMON 364 select HWMON
365 select LEDS_CLASS 365 select LEDS_CLASS
366 select NEW_LEDS 366 select NEW_LEDS
367 select INPUT_SPARSEKMAP
367 ---help--- 368 ---help---
368 This driver supports the Fn-Fx keys on Eee PC laptops. 369 This driver supports the Fn-Fx keys on Eee PC laptops.
369 370
diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/x86/eeepc-laptop.c
index 5838c69b2fb3..e2be6bb33d92 100644
--- a/drivers/platform/x86/eeepc-laptop.c
+++ b/drivers/platform/x86/eeepc-laptop.c
@@ -31,10 +31,12 @@
31#include <acpi/acpi_bus.h> 31#include <acpi/acpi_bus.h>
32#include <linux/uaccess.h> 32#include <linux/uaccess.h>
33#include <linux/input.h> 33#include <linux/input.h>
34#include <linux/input/sparse-keymap.h>
34#include <linux/rfkill.h> 35#include <linux/rfkill.h>
35#include <linux/pci.h> 36#include <linux/pci.h>
36#include <linux/pci_hotplug.h> 37#include <linux/pci_hotplug.h>
37#include <linux/leds.h> 38#include <linux/leds.h>
39#include <linux/dmi.h>
38 40
39#define EEEPC_LAPTOP_VERSION "0.1" 41#define EEEPC_LAPTOP_VERSION "0.1"
40#define EEEPC_LAPTOP_NAME "Eee PC Hotkey Driver" 42#define EEEPC_LAPTOP_NAME "Eee PC Hotkey Driver"
@@ -48,6 +50,14 @@ MODULE_AUTHOR("Corentin Chary, Eric Cooper");
48MODULE_DESCRIPTION(EEEPC_LAPTOP_NAME); 50MODULE_DESCRIPTION(EEEPC_LAPTOP_NAME);
49MODULE_LICENSE("GPL"); 51MODULE_LICENSE("GPL");
50 52
53static bool hotplug_disabled;
54
55module_param(hotplug_disabled, bool, 0644);
56MODULE_PARM_DESC(hotplug_disabled,
57 "Disable hotplug for wireless device. "
58 "If your laptop need that, please report to "
59 "acpi4asus-user@lists.sourceforge.net.");
60
51/* 61/*
52 * Definitions for Asus EeePC 62 * Definitions for Asus EeePC
53 */ 63 */
@@ -120,38 +130,28 @@ static const char *cm_setv[] = {
120 NULL, NULL, "PBPS", "TPDS" 130 NULL, NULL, "PBPS", "TPDS"
121}; 131};
122 132
123struct key_entry {
124 char type;
125 u8 code;
126 u16 keycode;
127};
128
129enum { KE_KEY, KE_END };
130
131static const struct key_entry eeepc_keymap[] = { 133static const struct key_entry eeepc_keymap[] = {
132 /* Sleep already handled via generic ACPI code */ 134 { KE_KEY, 0x10, { KEY_WLAN } },
133 {KE_KEY, 0x10, KEY_WLAN }, 135 { KE_KEY, 0x11, { KEY_WLAN } },
134 {KE_KEY, 0x11, KEY_WLAN }, 136 { KE_KEY, 0x12, { KEY_PROG1 } },
135 {KE_KEY, 0x12, KEY_PROG1 }, 137 { KE_KEY, 0x13, { KEY_MUTE } },
136 {KE_KEY, 0x13, KEY_MUTE }, 138 { KE_KEY, 0x14, { KEY_VOLUMEDOWN } },
137 {KE_KEY, 0x14, KEY_VOLUMEDOWN }, 139 { KE_KEY, 0x15, { KEY_VOLUMEUP } },
138 {KE_KEY, 0x15, KEY_VOLUMEUP }, 140 { KE_KEY, 0x16, { KEY_DISPLAY_OFF } },
139 {KE_KEY, 0x16, KEY_DISPLAY_OFF }, 141 { KE_KEY, 0x1a, { KEY_COFFEE } },
140 {KE_KEY, 0x1a, KEY_COFFEE }, 142 { KE_KEY, 0x1b, { KEY_ZOOM } },
141 {KE_KEY, 0x1b, KEY_ZOOM }, 143 { KE_KEY, 0x1c, { KEY_PROG2 } },
142 {KE_KEY, 0x1c, KEY_PROG2 }, 144 { KE_KEY, 0x1d, { KEY_PROG3 } },
143 {KE_KEY, 0x1d, KEY_PROG3 }, 145 { KE_KEY, NOTIFY_BRN_MIN, { KEY_BRIGHTNESSDOWN } },
144 {KE_KEY, NOTIFY_BRN_MIN, KEY_BRIGHTNESSDOWN }, 146 { KE_KEY, NOTIFY_BRN_MAX, { KEY_BRIGHTNESSUP } },
145 {KE_KEY, NOTIFY_BRN_MAX, KEY_BRIGHTNESSUP }, 147 { KE_KEY, 0x30, { KEY_SWITCHVIDEOMODE } },
146 {KE_KEY, 0x30, KEY_SWITCHVIDEOMODE }, 148 { KE_KEY, 0x31, { KEY_SWITCHVIDEOMODE } },
147 {KE_KEY, 0x31, KEY_SWITCHVIDEOMODE }, 149 { KE_KEY, 0x32, { KEY_SWITCHVIDEOMODE } },
148 {KE_KEY, 0x32, KEY_SWITCHVIDEOMODE }, 150 { KE_KEY, 0x37, { KEY_F13 } }, /* Disable Touchpad */
149 {KE_KEY, 0x37, KEY_F13 }, /* Disable Touchpad */ 151 { KE_KEY, 0x38, { KEY_F14 } },
150 {KE_KEY, 0x38, KEY_F14 }, 152 { KE_END, 0 },
151 {KE_END, 0},
152}; 153};
153 154
154
155/* 155/*
156 * This is the main structure, we can use it to store useful information 156 * This is the main structure, we can use it to store useful information
157 */ 157 */
@@ -159,6 +159,8 @@ struct eeepc_laptop {
159 acpi_handle handle; /* the handle of the acpi device */ 159 acpi_handle handle; /* the handle of the acpi device */
160 u32 cm_supported; /* the control methods supported 160 u32 cm_supported; /* the control methods supported
161 by this BIOS */ 161 by this BIOS */
162 bool cpufv_disabled;
163 bool hotplug_disabled;
162 u16 event_count[128]; /* count for each event */ 164 u16 event_count[128]; /* count for each event */
163 165
164 struct platform_device *platform_device; 166 struct platform_device *platform_device;
@@ -378,6 +380,8 @@ static ssize_t store_cpufv(struct device *dev,
378 struct eeepc_cpufv c; 380 struct eeepc_cpufv c;
379 int rv, value; 381 int rv, value;
380 382
383 if (eeepc->cpufv_disabled)
384 return -EPERM;
381 if (get_cpufv(eeepc, &c)) 385 if (get_cpufv(eeepc, &c))
382 return -ENODEV; 386 return -ENODEV;
383 rv = parse_arg(buf, count, &value); 387 rv = parse_arg(buf, count, &value);
@@ -389,6 +393,41 @@ static ssize_t store_cpufv(struct device *dev,
389 return rv; 393 return rv;
390} 394}
391 395
396static ssize_t show_cpufv_disabled(struct device *dev,
397 struct device_attribute *attr,
398 char *buf)
399{
400 struct eeepc_laptop *eeepc = dev_get_drvdata(dev);
401
402 return sprintf(buf, "%d\n", eeepc->cpufv_disabled);
403}
404
405static ssize_t store_cpufv_disabled(struct device *dev,
406 struct device_attribute *attr,
407 const char *buf, size_t count)
408{
409 struct eeepc_laptop *eeepc = dev_get_drvdata(dev);
410 int rv, value;
411
412 rv = parse_arg(buf, count, &value);
413 if (rv < 0)
414 return rv;
415
416 switch (value) {
417 case 0:
418 if (eeepc->cpufv_disabled)
419 pr_warning("cpufv enabled (not officially supported "
420 "on this model)\n");
421 eeepc->cpufv_disabled = false;
422 return rv;
423 case 1:
424 return -EPERM;
425 default:
426 return -EINVAL;
427 }
428}
429
430
392static struct device_attribute dev_attr_cpufv = { 431static struct device_attribute dev_attr_cpufv = {
393 .attr = { 432 .attr = {
394 .name = "cpufv", 433 .name = "cpufv",
@@ -404,12 +443,22 @@ static struct device_attribute dev_attr_available_cpufv = {
404 .show = show_available_cpufv 443 .show = show_available_cpufv
405}; 444};
406 445
446static struct device_attribute dev_attr_cpufv_disabled = {
447 .attr = {
448 .name = "cpufv_disabled",
449 .mode = 0644 },
450 .show = show_cpufv_disabled,
451 .store = store_cpufv_disabled
452};
453
454
407static struct attribute *platform_attributes[] = { 455static struct attribute *platform_attributes[] = {
408 &dev_attr_camera.attr, 456 &dev_attr_camera.attr,
409 &dev_attr_cardr.attr, 457 &dev_attr_cardr.attr,
410 &dev_attr_disp.attr, 458 &dev_attr_disp.attr,
411 &dev_attr_cpufv.attr, 459 &dev_attr_cpufv.attr,
412 &dev_attr_available_cpufv.attr, 460 &dev_attr_available_cpufv.attr,
461 &dev_attr_cpufv_disabled.attr,
413 NULL 462 NULL
414}; 463};
415 464
@@ -796,6 +845,9 @@ static int eeepc_rfkill_init(struct eeepc_laptop *eeepc)
796 if (result && result != -ENODEV) 845 if (result && result != -ENODEV)
797 goto exit; 846 goto exit;
798 847
848 if (eeepc->hotplug_disabled)
849 return 0;
850
799 result = eeepc_setup_pci_hotplug(eeepc); 851 result = eeepc_setup_pci_hotplug(eeepc);
800 /* 852 /*
801 * If we get -EBUSY then something else is handling the PCI hotplug - 853 * If we get -EBUSY then something else is handling the PCI hotplug -
@@ -1090,120 +1142,42 @@ static void eeepc_backlight_exit(struct eeepc_laptop *eeepc)
1090/* 1142/*
1091 * Input device (i.e. hotkeys) 1143 * Input device (i.e. hotkeys)
1092 */ 1144 */
1093static struct key_entry *eeepc_get_entry_by_scancode( 1145static int eeepc_input_init(struct eeepc_laptop *eeepc)
1094 struct eeepc_laptop *eeepc,
1095 int code)
1096{ 1146{
1097 struct key_entry *key; 1147 struct input_dev *input;
1148 int error;
1098 1149
1099 for (key = eeepc->keymap; key->type != KE_END; key++) 1150 input = input_allocate_device();
1100 if (code == key->code) 1151 if (!input) {
1101 return key; 1152 pr_info("Unable to allocate input device\n");
1102 1153 return -ENOMEM;
1103 return NULL;
1104}
1105
1106static void eeepc_input_notify(struct eeepc_laptop *eeepc, int event)
1107{
1108 static struct key_entry *key;
1109
1110 key = eeepc_get_entry_by_scancode(eeepc, event);
1111 if (key) {
1112 switch (key->type) {
1113 case KE_KEY:
1114 input_report_key(eeepc->inputdev, key->keycode,
1115 1);
1116 input_sync(eeepc->inputdev);
1117 input_report_key(eeepc->inputdev, key->keycode,
1118 0);
1119 input_sync(eeepc->inputdev);
1120 break;
1121 }
1122 } 1154 }
1123}
1124
1125static struct key_entry *eeepc_get_entry_by_keycode(
1126 struct eeepc_laptop *eeepc, int code)
1127{
1128 struct key_entry *key;
1129
1130 for (key = eeepc->keymap; key->type != KE_END; key++)
1131 if (code == key->keycode && key->type == KE_KEY)
1132 return key;
1133 1155
1134 return NULL; 1156 input->name = "Asus EeePC extra buttons";
1135} 1157 input->phys = EEEPC_LAPTOP_FILE "/input0";
1158 input->id.bustype = BUS_HOST;
1159 input->dev.parent = &eeepc->platform_device->dev;
1136 1160
1137static int eeepc_getkeycode(struct input_dev *dev, int scancode, int *keycode) 1161 error = sparse_keymap_setup(input, eeepc_keymap, NULL);
1138{ 1162 if (error) {
1139 struct eeepc_laptop *eeepc = input_get_drvdata(dev); 1163 pr_err("Unable to setup input device keymap\n");
1140 struct key_entry *key = eeepc_get_entry_by_scancode(eeepc, scancode); 1164 goto err_free_dev;
1141
1142 if (key && key->type == KE_KEY) {
1143 *keycode = key->keycode;
1144 return 0;
1145 } 1165 }
1146 1166
1147 return -EINVAL; 1167 error = input_register_device(input);
1148} 1168 if (error) {
1149 1169 pr_err("Unable to register input device\n");
1150static int eeepc_setkeycode(struct input_dev *dev, int scancode, int keycode) 1170 goto err_free_keymap;
1151{
1152 struct eeepc_laptop *eeepc = input_get_drvdata(dev);
1153 struct key_entry *key;
1154 int old_keycode;
1155
1156 if (keycode < 0 || keycode > KEY_MAX)
1157 return -EINVAL;
1158
1159 key = eeepc_get_entry_by_scancode(eeepc, scancode);
1160 if (key && key->type == KE_KEY) {
1161 old_keycode = key->keycode;
1162 key->keycode = keycode;
1163 set_bit(keycode, dev->keybit);
1164 if (!eeepc_get_entry_by_keycode(eeepc, old_keycode))
1165 clear_bit(old_keycode, dev->keybit);
1166 return 0;
1167 } 1171 }
1168 1172
1169 return -EINVAL; 1173 eeepc->inputdev = input;
1170}
1171
1172static int eeepc_input_init(struct eeepc_laptop *eeepc)
1173{
1174 const struct key_entry *key;
1175 int result;
1176
1177 eeepc->inputdev = input_allocate_device();
1178 if (!eeepc->inputdev) {
1179 pr_info("Unable to allocate input device\n");
1180 return -ENOMEM;
1181 }
1182 eeepc->inputdev->name = "Asus EeePC extra buttons";
1183 eeepc->inputdev->dev.parent = &eeepc->platform_device->dev;
1184 eeepc->inputdev->phys = EEEPC_LAPTOP_FILE "/input0";
1185 eeepc->inputdev->id.bustype = BUS_HOST;
1186 eeepc->inputdev->getkeycode = eeepc_getkeycode;
1187 eeepc->inputdev->setkeycode = eeepc_setkeycode;
1188 input_set_drvdata(eeepc->inputdev, eeepc);
1189
1190 eeepc->keymap = kmemdup(eeepc_keymap, sizeof(eeepc_keymap),
1191 GFP_KERNEL);
1192 for (key = eeepc_keymap; key->type != KE_END; key++) {
1193 switch (key->type) {
1194 case KE_KEY:
1195 set_bit(EV_KEY, eeepc->inputdev->evbit);
1196 set_bit(key->keycode, eeepc->inputdev->keybit);
1197 break;
1198 }
1199 }
1200 result = input_register_device(eeepc->inputdev);
1201 if (result) {
1202 pr_info("Unable to register input device\n");
1203 input_free_device(eeepc->inputdev);
1204 return result;
1205 }
1206 return 0; 1174 return 0;
1175
1176 err_free_keymap:
1177 sparse_keymap_free(input);
1178 err_free_dev:
1179 input_free_device(input);
1180 return error;
1207} 1181}
1208 1182
1209static void eeepc_input_exit(struct eeepc_laptop *eeepc) 1183static void eeepc_input_exit(struct eeepc_laptop *eeepc)
@@ -1253,11 +1227,59 @@ static void eeepc_acpi_notify(struct acpi_device *device, u32 event)
1253 * event will be desired value (or else ignored) 1227 * event will be desired value (or else ignored)
1254 */ 1228 */
1255 } 1229 }
1256 eeepc_input_notify(eeepc, event); 1230 sparse_keymap_report_event(eeepc->inputdev, event,
1231 1, true);
1257 } 1232 }
1258 } else { 1233 } else {
1259 /* Everything else is a bona-fide keypress event */ 1234 /* Everything else is a bona-fide keypress event */
1260 eeepc_input_notify(eeepc, event); 1235 sparse_keymap_report_event(eeepc->inputdev, event, 1, true);
1236 }
1237}
1238
1239static void eeepc_dmi_check(struct eeepc_laptop *eeepc)
1240{
1241 const char *model;
1242
1243 model = dmi_get_system_info(DMI_PRODUCT_NAME);
1244 if (!model)
1245 return;
1246
1247 /*
1248 * Blacklist for setting cpufv (cpu speed).
1249 *
1250 * EeePC 4G ("701") implements CFVS, but it is not supported
1251 * by the pre-installed OS, and the original option to change it
1252 * in the BIOS setup screen was removed in later versions.
1253 *
1254 * Judging by the lack of "Super Hybrid Engine" on Asus product pages,
1255 * this applies to all "701" models (4G/4G Surf/2G Surf).
1256 *
1257 * So Asus made a deliberate decision not to support it on this model.
1258 * We have several reports that using it can cause the system to hang
1259 *
1260 * The hang has also been reported on a "702" (Model name "8G"?).
1261 *
1262 * We avoid dmi_check_system() / dmi_match(), because they use
1263 * substring matching. We don't want to affect the "701SD"
1264 * and "701SDX" models, because they do support S.H.E.
1265 */
1266 if (strcmp(model, "701") == 0 || strcmp(model, "702") == 0) {
1267 eeepc->cpufv_disabled = true;
1268 pr_info("model %s does not officially support setting cpu "
1269 "speed\n", model);
1270 pr_info("cpufv disabled to avoid instability\n");
1271 }
1272
1273 /*
1274 * Blacklist for wlan hotplug
1275 *
1276 * Eeepc 1005HA doesn't work like others models and don't need the
1277 * hotplug code. In fact, current hotplug code seems to unplug another
1278 * device...
1279 */
1280 if (strcmp(model, "1005HA") == 0 || strcmp(model, "1201N") == 0) {
1281 eeepc->hotplug_disabled = true;
1282 pr_info("wlan hotplug disabled\n");
1261 } 1283 }
1262} 1284}
1263 1285
@@ -1342,6 +1364,10 @@ static int __devinit eeepc_acpi_add(struct acpi_device *device)
1342 strcpy(acpi_device_class(device), EEEPC_ACPI_CLASS); 1364 strcpy(acpi_device_class(device), EEEPC_ACPI_CLASS);
1343 device->driver_data = eeepc; 1365 device->driver_data = eeepc;
1344 1366
1367 eeepc->hotplug_disabled = hotplug_disabled;
1368
1369 eeepc_dmi_check(eeepc);
1370
1345 result = eeepc_acpi_init(eeepc, device); 1371 result = eeepc_acpi_init(eeepc, device);
1346 if (result) 1372 if (result)
1347 goto fail_platform; 1373 goto fail_platform;
@@ -1452,10 +1478,12 @@ static int __init eeepc_laptop_init(void)
1452 result = acpi_bus_register_driver(&eeepc_acpi_driver); 1478 result = acpi_bus_register_driver(&eeepc_acpi_driver);
1453 if (result < 0) 1479 if (result < 0)
1454 goto fail_acpi_driver; 1480 goto fail_acpi_driver;
1481
1455 if (!eeepc_device_present) { 1482 if (!eeepc_device_present) {
1456 result = -ENODEV; 1483 result = -ENODEV;
1457 goto fail_no_device; 1484 goto fail_no_device;
1458 } 1485 }
1486
1459 return 0; 1487 return 0;
1460 1488
1461fail_no_device: 1489fail_no_device:
diff --git a/drivers/platform/x86/sony-laptop.c b/drivers/platform/x86/sony-laptop.c
index 5af53340da6f..3f71a605a492 100644
--- a/drivers/platform/x86/sony-laptop.c
+++ b/drivers/platform/x86/sony-laptop.c
@@ -1201,9 +1201,12 @@ static void sony_nc_rfkill_setup(struct acpi_device *device)
1201 /* the buffer is filled with magic numbers describing the devices 1201 /* the buffer is filled with magic numbers describing the devices
1202 * available, 0xff terminates the enumeration 1202 * available, 0xff terminates the enumeration
1203 */ 1203 */
1204 while ((dev_code = *(device_enum->buffer.pointer + i)) != 0xff && 1204 for (i = 0; i < device_enum->buffer.length; i++) {
1205 i < device_enum->buffer.length) { 1205
1206 i++; 1206 dev_code = *(device_enum->buffer.pointer + i);
1207 if (dev_code == 0xff)
1208 break;
1209
1207 dprintk("Radio devices, looking at 0x%.2x\n", dev_code); 1210 dprintk("Radio devices, looking at 0x%.2x\n", dev_code);
1208 1211
1209 if (dev_code == 0 && !sony_rfkill_devices[SONY_WIFI]) 1212 if (dev_code == 0 && !sony_rfkill_devices[SONY_WIFI])
diff --git a/drivers/regulator/wm8350-regulator.c b/drivers/regulator/wm8350-regulator.c
index 1bbff099a546..e7b89e704af6 100644
--- a/drivers/regulator/wm8350-regulator.c
+++ b/drivers/regulator/wm8350-regulator.c
@@ -1504,7 +1504,8 @@ int wm8350_register_led(struct wm8350 *wm8350, int lednum, int dcdc, int isink,
1504 led->isink_init.consumer_supplies = &led->isink_consumer; 1504 led->isink_init.consumer_supplies = &led->isink_consumer;
1505 led->isink_init.constraints.min_uA = 0; 1505 led->isink_init.constraints.min_uA = 0;
1506 led->isink_init.constraints.max_uA = pdata->max_uA; 1506 led->isink_init.constraints.max_uA = pdata->max_uA;
1507 led->isink_init.constraints.valid_ops_mask = REGULATOR_CHANGE_CURRENT; 1507 led->isink_init.constraints.valid_ops_mask
1508 = REGULATOR_CHANGE_CURRENT | REGULATOR_CHANGE_STATUS;
1508 led->isink_init.constraints.valid_modes_mask = REGULATOR_MODE_NORMAL; 1509 led->isink_init.constraints.valid_modes_mask = REGULATOR_MODE_NORMAL;
1509 ret = wm8350_register_regulator(wm8350, isink, &led->isink_init); 1510 ret = wm8350_register_regulator(wm8350, isink, &led->isink_init);
1510 if (ret != 0) { 1511 if (ret != 0) {
@@ -1517,6 +1518,7 @@ int wm8350_register_led(struct wm8350 *wm8350, int lednum, int dcdc, int isink,
1517 led->dcdc_init.num_consumer_supplies = 1; 1518 led->dcdc_init.num_consumer_supplies = 1;
1518 led->dcdc_init.consumer_supplies = &led->dcdc_consumer; 1519 led->dcdc_init.consumer_supplies = &led->dcdc_consumer;
1519 led->dcdc_init.constraints.valid_modes_mask = REGULATOR_MODE_NORMAL; 1520 led->dcdc_init.constraints.valid_modes_mask = REGULATOR_MODE_NORMAL;
1521 led->dcdc_init.constraints.valid_ops_mask = REGULATOR_CHANGE_STATUS;
1520 ret = wm8350_register_regulator(wm8350, dcdc, &led->dcdc_init); 1522 ret = wm8350_register_regulator(wm8350, dcdc, &led->dcdc_init);
1521 if (ret != 0) { 1523 if (ret != 0) {
1522 platform_device_put(pdev); 1524 platform_device_put(pdev);
diff --git a/drivers/s390/block/dasd.c b/drivers/s390/block/dasd.c
index fdb2e7c14506..5905936c7c60 100644
--- a/drivers/s390/block/dasd.c
+++ b/drivers/s390/block/dasd.c
@@ -1004,8 +1004,8 @@ static void dasd_handle_killed_request(struct ccw_device *cdev,
1004 if (device == NULL || 1004 if (device == NULL ||
1005 device != dasd_device_from_cdev_locked(cdev) || 1005 device != dasd_device_from_cdev_locked(cdev) ||
1006 strncmp(device->discipline->ebcname, (char *) &cqr->magic, 4)) { 1006 strncmp(device->discipline->ebcname, (char *) &cqr->magic, 4)) {
1007 DBF_DEV_EVENT(DBF_DEBUG, device, "invalid device in request: " 1007 DBF_EVENT_DEVID(DBF_DEBUG, cdev, "%s",
1008 "bus_id %s", dev_name(&cdev->dev)); 1008 "invalid device in request");
1009 return; 1009 return;
1010 } 1010 }
1011 1011
@@ -1078,8 +1078,8 @@ void dasd_int_handler(struct ccw_device *cdev, unsigned long intparm,
1078 device = (struct dasd_device *) cqr->startdev; 1078 device = (struct dasd_device *) cqr->startdev;
1079 if (!device || 1079 if (!device ||
1080 strncmp(device->discipline->ebcname, (char *) &cqr->magic, 4)) { 1080 strncmp(device->discipline->ebcname, (char *) &cqr->magic, 4)) {
1081 DBF_DEV_EVENT(DBF_DEBUG, device, "invalid device in request: " 1081 DBF_EVENT_DEVID(DBF_DEBUG, cdev, "%s",
1082 "bus_id %s", dev_name(&cdev->dev)); 1082 "invalid device in request");
1083 return; 1083 return;
1084 } 1084 }
1085 1085
diff --git a/drivers/s390/block/dasd_eckd.c b/drivers/s390/block/dasd_eckd.c
index 1c500c462225..1cca21aafaba 100644
--- a/drivers/s390/block/dasd_eckd.c
+++ b/drivers/s390/block/dasd_eckd.c
@@ -3033,7 +3033,7 @@ static void dasd_eckd_dump_sense_ccw(struct dasd_device *device,
3033 len += sprintf(page + len, KERN_ERR PRINTK_HEADER 3033 len += sprintf(page + len, KERN_ERR PRINTK_HEADER
3034 " in req: %p CS: 0x%02X DS: 0x%02X CC: 0x%02X RC: %d\n", 3034 " in req: %p CS: 0x%02X DS: 0x%02X CC: 0x%02X RC: %d\n",
3035 req, scsw_cstat(&irb->scsw), scsw_dstat(&irb->scsw), 3035 req, scsw_cstat(&irb->scsw), scsw_dstat(&irb->scsw),
3036 scsw_cc(&irb->scsw), req->intrc); 3036 scsw_cc(&irb->scsw), req ? req->intrc : 0);
3037 len += sprintf(page + len, KERN_ERR PRINTK_HEADER 3037 len += sprintf(page + len, KERN_ERR PRINTK_HEADER
3038 " device %s: Failing CCW: %p\n", 3038 " device %s: Failing CCW: %p\n",
3039 dev_name(&device->cdev->dev), 3039 dev_name(&device->cdev->dev),
diff --git a/drivers/s390/block/dasd_ioctl.c b/drivers/s390/block/dasd_ioctl.c
index fc7b30b4a255..7039d9cf0fb4 100644
--- a/drivers/s390/block/dasd_ioctl.c
+++ b/drivers/s390/block/dasd_ioctl.c
@@ -260,7 +260,7 @@ static int dasd_ioctl_information(struct dasd_block *block,
260 struct ccw_dev_id dev_id; 260 struct ccw_dev_id dev_id;
261 261
262 base = block->base; 262 base = block->base;
263 if (!base->discipline->fill_info) 263 if (!base->discipline || !base->discipline->fill_info)
264 return -EINVAL; 264 return -EINVAL;
265 265
266 dasd_info = kzalloc(sizeof(struct dasd_information2_t), GFP_KERNEL); 266 dasd_info = kzalloc(sizeof(struct dasd_information2_t), GFP_KERNEL);
@@ -303,10 +303,7 @@ static int dasd_ioctl_information(struct dasd_block *block,
303 dasd_info->features |= 303 dasd_info->features |=
304 ((base->features & DASD_FEATURE_READONLY) != 0); 304 ((base->features & DASD_FEATURE_READONLY) != 0);
305 305
306 if (base->discipline) 306 memcpy(dasd_info->type, base->discipline->name, 4);
307 memcpy(dasd_info->type, base->discipline->name, 4);
308 else
309 memcpy(dasd_info->type, "none", 4);
310 307
311 if (block->request_queue->request_fn) { 308 if (block->request_queue->request_fn) {
312 struct list_head *l; 309 struct list_head *l;
diff --git a/drivers/s390/block/dasd_proc.c b/drivers/s390/block/dasd_proc.c
index 6315fbd8e68b..71f95f54866f 100644
--- a/drivers/s390/block/dasd_proc.c
+++ b/drivers/s390/block/dasd_proc.c
@@ -72,7 +72,7 @@ dasd_devices_show(struct seq_file *m, void *v)
72 /* Print device number. */ 72 /* Print device number. */
73 seq_printf(m, "%s", dev_name(&device->cdev->dev)); 73 seq_printf(m, "%s", dev_name(&device->cdev->dev));
74 /* Print discipline string. */ 74 /* Print discipline string. */
75 if (device != NULL && device->discipline != NULL) 75 if (device->discipline != NULL)
76 seq_printf(m, "(%s)", device->discipline->name); 76 seq_printf(m, "(%s)", device->discipline->name);
77 else 77 else
78 seq_printf(m, "(none)"); 78 seq_printf(m, "(none)");
@@ -92,10 +92,7 @@ dasd_devices_show(struct seq_file *m, void *v)
92 substr = (device->features & DASD_FEATURE_READONLY) ? "(ro)" : " "; 92 substr = (device->features & DASD_FEATURE_READONLY) ? "(ro)" : " ";
93 seq_printf(m, "%4s: ", substr); 93 seq_printf(m, "%4s: ", substr);
94 /* Print device status information. */ 94 /* Print device status information. */
95 switch ((device != NULL) ? device->state : -1) { 95 switch (device->state) {
96 case -1:
97 seq_printf(m, "unknown");
98 break;
99 case DASD_STATE_NEW: 96 case DASD_STATE_NEW:
100 seq_printf(m, "new"); 97 seq_printf(m, "new");
101 break; 98 break;
diff --git a/drivers/s390/char/sclp_vt220.c b/drivers/s390/char/sclp_vt220.c
index b9d2a007e93b..3796ffdb8479 100644
--- a/drivers/s390/char/sclp_vt220.c
+++ b/drivers/s390/char/sclp_vt220.c
@@ -495,6 +495,10 @@ sclp_vt220_open(struct tty_struct *tty, struct file *filp)
495 if (tty->driver_data == NULL) 495 if (tty->driver_data == NULL)
496 return -ENOMEM; 496 return -ENOMEM;
497 tty->low_latency = 0; 497 tty->low_latency = 0;
498 if (!tty->winsize.ws_row && !tty->winsize.ws_col) {
499 tty->winsize.ws_row = 24;
500 tty->winsize.ws_col = 80;
501 }
498 } 502 }
499 return 0; 503 return 0;
500} 504}
diff --git a/drivers/s390/crypto/zcrypt_pcicc.c b/drivers/s390/crypto/zcrypt_pcicc.c
index a23726a0735c..142f72a2ca5a 100644
--- a/drivers/s390/crypto/zcrypt_pcicc.c
+++ b/drivers/s390/crypto/zcrypt_pcicc.c
@@ -373,6 +373,8 @@ static int convert_type86(struct zcrypt_device *zdev,
373 zdev->max_mod_size = PCICC_MAX_MOD_SIZE_OLD; 373 zdev->max_mod_size = PCICC_MAX_MOD_SIZE_OLD;
374 return -EAGAIN; 374 return -EAGAIN;
375 } 375 }
376 if (service_rc == 8 && service_rs == 72)
377 return -EINVAL;
376 zdev->online = 0; 378 zdev->online = 0;
377 return -EAGAIN; /* repeat the request on a different device. */ 379 return -EAGAIN; /* repeat the request on a different device. */
378 } 380 }
diff --git a/drivers/s390/crypto/zcrypt_pcixcc.c b/drivers/s390/crypto/zcrypt_pcixcc.c
index 79c120578e61..68f3e6204db8 100644
--- a/drivers/s390/crypto/zcrypt_pcixcc.c
+++ b/drivers/s390/crypto/zcrypt_pcixcc.c
@@ -470,6 +470,8 @@ static int convert_type86_ica(struct zcrypt_device *zdev,
470 } 470 }
471 if (service_rc == 12 && service_rs == 769) 471 if (service_rc == 12 && service_rs == 769)
472 return -EINVAL; 472 return -EINVAL;
473 if (service_rc == 8 && service_rs == 72)
474 return -EINVAL;
473 zdev->online = 0; 475 zdev->online = 0;
474 return -EAGAIN; /* repeat the request on a different device. */ 476 return -EAGAIN; /* repeat the request on a different device. */
475 } 477 }
diff --git a/drivers/s390/scsi/zfcp_cfdc.c b/drivers/s390/scsi/zfcp_cfdc.c
index f932400e980a..0eb6eefd2c1a 100644
--- a/drivers/s390/scsi/zfcp_cfdc.c
+++ b/drivers/s390/scsi/zfcp_cfdc.c
@@ -12,6 +12,7 @@
12 12
13#include <linux/types.h> 13#include <linux/types.h>
14#include <linux/miscdevice.h> 14#include <linux/miscdevice.h>
15#include <asm/compat.h>
15#include <asm/ccwdev.h> 16#include <asm/ccwdev.h>
16#include "zfcp_def.h" 17#include "zfcp_def.h"
17#include "zfcp_ext.h" 18#include "zfcp_ext.h"
@@ -163,7 +164,7 @@ static void zfcp_cfdc_req_to_sense(struct zfcp_cfdc_data *data,
163} 164}
164 165
165static long zfcp_cfdc_dev_ioctl(struct file *file, unsigned int command, 166static long zfcp_cfdc_dev_ioctl(struct file *file, unsigned int command,
166 unsigned long buffer) 167 unsigned long arg)
167{ 168{
168 struct zfcp_cfdc_data *data; 169 struct zfcp_cfdc_data *data;
169 struct zfcp_cfdc_data __user *data_user; 170 struct zfcp_cfdc_data __user *data_user;
@@ -175,7 +176,11 @@ static long zfcp_cfdc_dev_ioctl(struct file *file, unsigned int command,
175 if (command != ZFCP_CFDC_IOC) 176 if (command != ZFCP_CFDC_IOC)
176 return -ENOTTY; 177 return -ENOTTY;
177 178
178 data_user = (void __user *) buffer; 179 if (is_compat_task())
180 data_user = compat_ptr(arg);
181 else
182 data_user = (void __user *)arg;
183
179 if (!data_user) 184 if (!data_user)
180 return -EINVAL; 185 return -EINVAL;
181 186
diff --git a/drivers/s390/scsi/zfcp_dbf.c b/drivers/s390/scsi/zfcp_dbf.c
index 84450955ae11..7369c8911bcf 100644
--- a/drivers/s390/scsi/zfcp_dbf.c
+++ b/drivers/s390/scsi/zfcp_dbf.c
@@ -327,7 +327,7 @@ static void zfcp_dbf_hba_view_response(char **p,
327 break; 327 break;
328 zfcp_dbf_out(p, "scsi_cmnd", "0x%0Lx", r->u.fcp.cmnd); 328 zfcp_dbf_out(p, "scsi_cmnd", "0x%0Lx", r->u.fcp.cmnd);
329 zfcp_dbf_out(p, "scsi_serial", "0x%016Lx", r->u.fcp.serial); 329 zfcp_dbf_out(p, "scsi_serial", "0x%016Lx", r->u.fcp.serial);
330 p += sprintf(*p, "\n"); 330 *p += sprintf(*p, "\n");
331 break; 331 break;
332 332
333 case FSF_QTCB_OPEN_PORT_WITH_DID: 333 case FSF_QTCB_OPEN_PORT_WITH_DID:
diff --git a/drivers/s390/scsi/zfcp_ext.h b/drivers/s390/scsi/zfcp_ext.h
index 03dec832b465..66bdb34143cb 100644
--- a/drivers/s390/scsi/zfcp_ext.h
+++ b/drivers/s390/scsi/zfcp_ext.h
@@ -108,6 +108,7 @@ extern void zfcp_fc_wka_ports_force_offline(struct zfcp_fc_wka_ports *);
108extern int zfcp_fc_gs_setup(struct zfcp_adapter *); 108extern int zfcp_fc_gs_setup(struct zfcp_adapter *);
109extern void zfcp_fc_gs_destroy(struct zfcp_adapter *); 109extern void zfcp_fc_gs_destroy(struct zfcp_adapter *);
110extern int zfcp_fc_exec_bsg_job(struct fc_bsg_job *); 110extern int zfcp_fc_exec_bsg_job(struct fc_bsg_job *);
111extern int zfcp_fc_timeout_bsg_job(struct fc_bsg_job *);
111 112
112/* zfcp_fsf.c */ 113/* zfcp_fsf.c */
113extern int zfcp_fsf_open_port(struct zfcp_erp_action *); 114extern int zfcp_fsf_open_port(struct zfcp_erp_action *);
@@ -129,9 +130,9 @@ extern void zfcp_fsf_req_dismiss_all(struct zfcp_adapter *);
129extern int zfcp_fsf_status_read(struct zfcp_qdio *); 130extern int zfcp_fsf_status_read(struct zfcp_qdio *);
130extern int zfcp_status_read_refill(struct zfcp_adapter *adapter); 131extern int zfcp_status_read_refill(struct zfcp_adapter *adapter);
131extern int zfcp_fsf_send_ct(struct zfcp_fc_wka_port *, struct zfcp_fsf_ct_els *, 132extern int zfcp_fsf_send_ct(struct zfcp_fc_wka_port *, struct zfcp_fsf_ct_els *,
132 mempool_t *); 133 mempool_t *, unsigned int);
133extern int zfcp_fsf_send_els(struct zfcp_adapter *, u32, 134extern int zfcp_fsf_send_els(struct zfcp_adapter *, u32,
134 struct zfcp_fsf_ct_els *); 135 struct zfcp_fsf_ct_els *, unsigned int);
135extern int zfcp_fsf_send_fcp_command_task(struct zfcp_unit *, 136extern int zfcp_fsf_send_fcp_command_task(struct zfcp_unit *,
136 struct scsi_cmnd *); 137 struct scsi_cmnd *);
137extern void zfcp_fsf_req_free(struct zfcp_fsf_req *); 138extern void zfcp_fsf_req_free(struct zfcp_fsf_req *);
diff --git a/drivers/s390/scsi/zfcp_fc.c b/drivers/s390/scsi/zfcp_fc.c
index ac5e3b7a3576..0f7b493fb105 100644
--- a/drivers/s390/scsi/zfcp_fc.c
+++ b/drivers/s390/scsi/zfcp_fc.c
@@ -258,7 +258,8 @@ static int zfcp_fc_ns_gid_pn_request(struct zfcp_port *port,
258 gid_pn->gid_pn_req.gid_pn.fn_wwpn = port->wwpn; 258 gid_pn->gid_pn_req.gid_pn.fn_wwpn = port->wwpn;
259 259
260 ret = zfcp_fsf_send_ct(&adapter->gs->ds, &gid_pn->ct, 260 ret = zfcp_fsf_send_ct(&adapter->gs->ds, &gid_pn->ct,
261 adapter->pool.gid_pn_req); 261 adapter->pool.gid_pn_req,
262 ZFCP_FC_CTELS_TMO);
262 if (!ret) { 263 if (!ret) {
263 wait_for_completion(&completion); 264 wait_for_completion(&completion);
264 zfcp_fc_ns_gid_pn_eval(gid_pn); 265 zfcp_fc_ns_gid_pn_eval(gid_pn);
@@ -421,7 +422,8 @@ static int zfcp_fc_adisc(struct zfcp_port *port)
421 hton24(adisc->adisc_req.adisc_port_id, 422 hton24(adisc->adisc_req.adisc_port_id,
422 fc_host_port_id(adapter->scsi_host)); 423 fc_host_port_id(adapter->scsi_host));
423 424
424 ret = zfcp_fsf_send_els(adapter, port->d_id, &adisc->els); 425 ret = zfcp_fsf_send_els(adapter, port->d_id, &adisc->els,
426 ZFCP_FC_CTELS_TMO);
425 if (ret) 427 if (ret)
426 kmem_cache_free(zfcp_data.adisc_cache, adisc); 428 kmem_cache_free(zfcp_data.adisc_cache, adisc);
427 429
@@ -532,7 +534,8 @@ static int zfcp_fc_send_gpn_ft(struct zfcp_fc_gpn_ft *gpn_ft,
532 ct->req = &gpn_ft->sg_req; 534 ct->req = &gpn_ft->sg_req;
533 ct->resp = gpn_ft->sg_resp; 535 ct->resp = gpn_ft->sg_resp;
534 536
535 ret = zfcp_fsf_send_ct(&adapter->gs->ds, ct, NULL); 537 ret = zfcp_fsf_send_ct(&adapter->gs->ds, ct, NULL,
538 ZFCP_FC_CTELS_TMO);
536 if (!ret) 539 if (!ret)
537 wait_for_completion(&completion); 540 wait_for_completion(&completion);
538 return ret; 541 return ret;
@@ -677,6 +680,44 @@ static void zfcp_fc_ct_els_job_handler(void *data)
677 job->job_done(job); 680 job->job_done(job);
678} 681}
679 682
683static struct zfcp_fc_wka_port *zfcp_fc_job_wka_port(struct fc_bsg_job *job)
684{
685 u32 preamble_word1;
686 u8 gs_type;
687 struct zfcp_adapter *adapter;
688
689 preamble_word1 = job->request->rqst_data.r_ct.preamble_word1;
690 gs_type = (preamble_word1 & 0xff000000) >> 24;
691
692 adapter = (struct zfcp_adapter *) job->shost->hostdata[0];
693
694 switch (gs_type) {
695 case FC_FST_ALIAS:
696 return &adapter->gs->as;
697 case FC_FST_MGMT:
698 return &adapter->gs->ms;
699 case FC_FST_TIME:
700 return &adapter->gs->ts;
701 break;
702 case FC_FST_DIR:
703 return &adapter->gs->ds;
704 break;
705 default:
706 return NULL;
707 }
708}
709
710static void zfcp_fc_ct_job_handler(void *data)
711{
712 struct fc_bsg_job *job = data;
713 struct zfcp_fc_wka_port *wka_port;
714
715 wka_port = zfcp_fc_job_wka_port(job);
716 zfcp_fc_wka_port_put(wka_port);
717
718 zfcp_fc_ct_els_job_handler(data);
719}
720
680static int zfcp_fc_exec_els_job(struct fc_bsg_job *job, 721static int zfcp_fc_exec_els_job(struct fc_bsg_job *job,
681 struct zfcp_adapter *adapter) 722 struct zfcp_adapter *adapter)
682{ 723{
@@ -695,43 +736,27 @@ static int zfcp_fc_exec_els_job(struct fc_bsg_job *job,
695 } else 736 } else
696 d_id = ntoh24(job->request->rqst_data.h_els.port_id); 737 d_id = ntoh24(job->request->rqst_data.h_els.port_id);
697 738
698 return zfcp_fsf_send_els(adapter, d_id, els); 739 els->handler = zfcp_fc_ct_els_job_handler;
740 return zfcp_fsf_send_els(adapter, d_id, els, job->req->timeout / HZ);
699} 741}
700 742
701static int zfcp_fc_exec_ct_job(struct fc_bsg_job *job, 743static int zfcp_fc_exec_ct_job(struct fc_bsg_job *job,
702 struct zfcp_adapter *adapter) 744 struct zfcp_adapter *adapter)
703{ 745{
704 int ret; 746 int ret;
705 u8 gs_type;
706 struct zfcp_fsf_ct_els *ct = job->dd_data; 747 struct zfcp_fsf_ct_els *ct = job->dd_data;
707 struct zfcp_fc_wka_port *wka_port; 748 struct zfcp_fc_wka_port *wka_port;
708 u32 preamble_word1;
709 749
710 preamble_word1 = job->request->rqst_data.r_ct.preamble_word1; 750 wka_port = zfcp_fc_job_wka_port(job);
711 gs_type = (preamble_word1 & 0xff000000) >> 24; 751 if (!wka_port)
712 752 return -EINVAL;
713 switch (gs_type) {
714 case FC_FST_ALIAS:
715 wka_port = &adapter->gs->as;
716 break;
717 case FC_FST_MGMT:
718 wka_port = &adapter->gs->ms;
719 break;
720 case FC_FST_TIME:
721 wka_port = &adapter->gs->ts;
722 break;
723 case FC_FST_DIR:
724 wka_port = &adapter->gs->ds;
725 break;
726 default:
727 return -EINVAL; /* no such service */
728 }
729 753
730 ret = zfcp_fc_wka_port_get(wka_port); 754 ret = zfcp_fc_wka_port_get(wka_port);
731 if (ret) 755 if (ret)
732 return ret; 756 return ret;
733 757
734 ret = zfcp_fsf_send_ct(wka_port, ct, NULL); 758 ct->handler = zfcp_fc_ct_job_handler;
759 ret = zfcp_fsf_send_ct(wka_port, ct, NULL, job->req->timeout / HZ);
735 if (ret) 760 if (ret)
736 zfcp_fc_wka_port_put(wka_port); 761 zfcp_fc_wka_port_put(wka_port);
737 762
@@ -752,7 +777,6 @@ int zfcp_fc_exec_bsg_job(struct fc_bsg_job *job)
752 777
753 ct_els->req = job->request_payload.sg_list; 778 ct_els->req = job->request_payload.sg_list;
754 ct_els->resp = job->reply_payload.sg_list; 779 ct_els->resp = job->reply_payload.sg_list;
755 ct_els->handler = zfcp_fc_ct_els_job_handler;
756 ct_els->handler_data = job; 780 ct_els->handler_data = job;
757 781
758 switch (job->request->msgcode) { 782 switch (job->request->msgcode) {
@@ -767,6 +791,12 @@ int zfcp_fc_exec_bsg_job(struct fc_bsg_job *job)
767 } 791 }
768} 792}
769 793
794int zfcp_fc_timeout_bsg_job(struct fc_bsg_job *job)
795{
796 /* hardware tracks timeout, reset bsg timeout to not interfere */
797 return -EAGAIN;
798}
799
770int zfcp_fc_gs_setup(struct zfcp_adapter *adapter) 800int zfcp_fc_gs_setup(struct zfcp_adapter *adapter)
771{ 801{
772 struct zfcp_fc_wka_ports *wka_ports; 802 struct zfcp_fc_wka_ports *wka_ports;
diff --git a/drivers/s390/scsi/zfcp_fc.h b/drivers/s390/scsi/zfcp_fc.h
index cb2a3669a384..0747b087390d 100644
--- a/drivers/s390/scsi/zfcp_fc.h
+++ b/drivers/s390/scsi/zfcp_fc.h
@@ -27,6 +27,8 @@
27#define ZFCP_FC_GPN_FT_MAX_ENT (ZFCP_FC_GPN_FT_NUM_BUFS * \ 27#define ZFCP_FC_GPN_FT_MAX_ENT (ZFCP_FC_GPN_FT_NUM_BUFS * \
28 (ZFCP_FC_GPN_FT_ENT_PAGE + 1)) 28 (ZFCP_FC_GPN_FT_ENT_PAGE + 1))
29 29
30#define ZFCP_FC_CTELS_TMO (2 * FC_DEF_R_A_TOV / 1000)
31
30/** 32/**
31 * struct zfcp_fc_gid_pn_req - container for ct header plus gid_pn request 33 * struct zfcp_fc_gid_pn_req - container for ct header plus gid_pn request
32 * @ct_hdr: FC GS common transport header 34 * @ct_hdr: FC GS common transport header
diff --git a/drivers/s390/scsi/zfcp_fsf.c b/drivers/s390/scsi/zfcp_fsf.c
index 482dcd97aa5d..e8fb4d9baa8b 100644
--- a/drivers/s390/scsi/zfcp_fsf.c
+++ b/drivers/s390/scsi/zfcp_fsf.c
@@ -1068,20 +1068,20 @@ static int zfcp_fsf_setup_ct_els_sbals(struct zfcp_fsf_req *req,
1068static int zfcp_fsf_setup_ct_els(struct zfcp_fsf_req *req, 1068static int zfcp_fsf_setup_ct_els(struct zfcp_fsf_req *req,
1069 struct scatterlist *sg_req, 1069 struct scatterlist *sg_req,
1070 struct scatterlist *sg_resp, 1070 struct scatterlist *sg_resp,
1071 int max_sbals) 1071 int max_sbals, unsigned int timeout)
1072{ 1072{
1073 int ret; 1073 int ret;
1074 unsigned int fcp_chan_timeout;
1075 1074
1076 ret = zfcp_fsf_setup_ct_els_sbals(req, sg_req, sg_resp, max_sbals); 1075 ret = zfcp_fsf_setup_ct_els_sbals(req, sg_req, sg_resp, max_sbals);
1077 if (ret) 1076 if (ret)
1078 return ret; 1077 return ret;
1079 1078
1080 /* common settings for ct/gs and els requests */ 1079 /* common settings for ct/gs and els requests */
1081 fcp_chan_timeout = 2 * FC_DEF_R_A_TOV / 1000; 1080 if (timeout > 255)
1081 timeout = 255; /* max value accepted by hardware */
1082 req->qtcb->bottom.support.service_class = FSF_CLASS_3; 1082 req->qtcb->bottom.support.service_class = FSF_CLASS_3;
1083 req->qtcb->bottom.support.timeout = fcp_chan_timeout; 1083 req->qtcb->bottom.support.timeout = timeout;
1084 zfcp_fsf_start_timer(req, (fcp_chan_timeout + 10) * HZ); 1084 zfcp_fsf_start_timer(req, (timeout + 10) * HZ);
1085 1085
1086 return 0; 1086 return 0;
1087} 1087}
@@ -1092,7 +1092,8 @@ static int zfcp_fsf_setup_ct_els(struct zfcp_fsf_req *req,
1092 * @pool: if non-null this mempool is used to allocate struct zfcp_fsf_req 1092 * @pool: if non-null this mempool is used to allocate struct zfcp_fsf_req
1093 */ 1093 */
1094int zfcp_fsf_send_ct(struct zfcp_fc_wka_port *wka_port, 1094int zfcp_fsf_send_ct(struct zfcp_fc_wka_port *wka_port,
1095 struct zfcp_fsf_ct_els *ct, mempool_t *pool) 1095 struct zfcp_fsf_ct_els *ct, mempool_t *pool,
1096 unsigned int timeout)
1096{ 1097{
1097 struct zfcp_qdio *qdio = wka_port->adapter->qdio; 1098 struct zfcp_qdio *qdio = wka_port->adapter->qdio;
1098 struct zfcp_fsf_req *req; 1099 struct zfcp_fsf_req *req;
@@ -1111,7 +1112,7 @@ int zfcp_fsf_send_ct(struct zfcp_fc_wka_port *wka_port,
1111 1112
1112 req->status |= ZFCP_STATUS_FSFREQ_CLEANUP; 1113 req->status |= ZFCP_STATUS_FSFREQ_CLEANUP;
1113 ret = zfcp_fsf_setup_ct_els(req, ct->req, ct->resp, 1114 ret = zfcp_fsf_setup_ct_els(req, ct->req, ct->resp,
1114 FSF_MAX_SBALS_PER_REQ); 1115 FSF_MAX_SBALS_PER_REQ, timeout);
1115 if (ret) 1116 if (ret)
1116 goto failed_send; 1117 goto failed_send;
1117 1118
@@ -1188,7 +1189,7 @@ skip_fsfstatus:
1188 * @els: pointer to struct zfcp_send_els with data for the command 1189 * @els: pointer to struct zfcp_send_els with data for the command
1189 */ 1190 */
1190int zfcp_fsf_send_els(struct zfcp_adapter *adapter, u32 d_id, 1191int zfcp_fsf_send_els(struct zfcp_adapter *adapter, u32 d_id,
1191 struct zfcp_fsf_ct_els *els) 1192 struct zfcp_fsf_ct_els *els, unsigned int timeout)
1192{ 1193{
1193 struct zfcp_fsf_req *req; 1194 struct zfcp_fsf_req *req;
1194 struct zfcp_qdio *qdio = adapter->qdio; 1195 struct zfcp_qdio *qdio = adapter->qdio;
@@ -1206,7 +1207,7 @@ int zfcp_fsf_send_els(struct zfcp_adapter *adapter, u32 d_id,
1206 } 1207 }
1207 1208
1208 req->status |= ZFCP_STATUS_FSFREQ_CLEANUP; 1209 req->status |= ZFCP_STATUS_FSFREQ_CLEANUP;
1209 ret = zfcp_fsf_setup_ct_els(req, els->req, els->resp, 2); 1210 ret = zfcp_fsf_setup_ct_els(req, els->req, els->resp, 2, timeout);
1210 1211
1211 if (ret) 1212 if (ret)
1212 goto failed_send; 1213 goto failed_send;
diff --git a/drivers/s390/scsi/zfcp_scsi.c b/drivers/s390/scsi/zfcp_scsi.c
index 771cc536a989..8e6fc68d6bd4 100644
--- a/drivers/s390/scsi/zfcp_scsi.c
+++ b/drivers/s390/scsi/zfcp_scsi.c
@@ -652,6 +652,7 @@ struct fc_function_template zfcp_transport_functions = {
652 .show_host_port_state = 1, 652 .show_host_port_state = 1,
653 .show_host_active_fc4s = 1, 653 .show_host_active_fc4s = 1,
654 .bsg_request = zfcp_fc_exec_bsg_job, 654 .bsg_request = zfcp_fc_exec_bsg_job,
655 .bsg_timeout = zfcp_fc_timeout_bsg_job,
655 /* no functions registered for following dynamic attributes but 656 /* no functions registered for following dynamic attributes but
656 directly set by LLDD */ 657 directly set by LLDD */
657 .show_host_port_type = 1, 658 .show_host_port_type = 1,
diff --git a/drivers/scsi/aacraid/aachba.c b/drivers/scsi/aacraid/aachba.c
index 2a889853a106..7e26ebc26661 100644
--- a/drivers/scsi/aacraid/aachba.c
+++ b/drivers/scsi/aacraid/aachba.c
@@ -293,7 +293,10 @@ int aac_get_config_status(struct aac_dev *dev, int commit_flag)
293 status = -EINVAL; 293 status = -EINVAL;
294 } 294 }
295 } 295 }
296 aac_fib_complete(fibptr); 296 /* Do not set XferState to zero unless receives a response from F/W */
297 if (status >= 0)
298 aac_fib_complete(fibptr);
299
297 /* Send a CT_COMMIT_CONFIG to enable discovery of devices */ 300 /* Send a CT_COMMIT_CONFIG to enable discovery of devices */
298 if (status >= 0) { 301 if (status >= 0) {
299 if ((aac_commit == 1) || commit_flag) { 302 if ((aac_commit == 1) || commit_flag) {
@@ -310,13 +313,18 @@ int aac_get_config_status(struct aac_dev *dev, int commit_flag)
310 FsaNormal, 313 FsaNormal,
311 1, 1, 314 1, 1,
312 NULL, NULL); 315 NULL, NULL);
313 aac_fib_complete(fibptr); 316 /* Do not set XferState to zero unless
317 * receives a response from F/W */
318 if (status >= 0)
319 aac_fib_complete(fibptr);
314 } else if (aac_commit == 0) { 320 } else if (aac_commit == 0) {
315 printk(KERN_WARNING 321 printk(KERN_WARNING
316 "aac_get_config_status: Foreign device configurations are being ignored\n"); 322 "aac_get_config_status: Foreign device configurations are being ignored\n");
317 } 323 }
318 } 324 }
319 aac_fib_free(fibptr); 325 /* FIB should be freed only after getting the response from the F/W */
326 if (status != -ERESTARTSYS)
327 aac_fib_free(fibptr);
320 return status; 328 return status;
321} 329}
322 330
@@ -355,7 +363,9 @@ int aac_get_containers(struct aac_dev *dev)
355 maximum_num_containers = le32_to_cpu(dresp->ContainerSwitchEntries); 363 maximum_num_containers = le32_to_cpu(dresp->ContainerSwitchEntries);
356 aac_fib_complete(fibptr); 364 aac_fib_complete(fibptr);
357 } 365 }
358 aac_fib_free(fibptr); 366 /* FIB should be freed only after getting the response from the F/W */
367 if (status != -ERESTARTSYS)
368 aac_fib_free(fibptr);
359 369
360 if (maximum_num_containers < MAXIMUM_NUM_CONTAINERS) 370 if (maximum_num_containers < MAXIMUM_NUM_CONTAINERS)
361 maximum_num_containers = MAXIMUM_NUM_CONTAINERS; 371 maximum_num_containers = MAXIMUM_NUM_CONTAINERS;
@@ -1245,8 +1255,12 @@ int aac_get_adapter_info(struct aac_dev* dev)
1245 NULL); 1255 NULL);
1246 1256
1247 if (rcode < 0) { 1257 if (rcode < 0) {
1248 aac_fib_complete(fibptr); 1258 /* FIB should be freed only after
1249 aac_fib_free(fibptr); 1259 * getting the response from the F/W */
1260 if (rcode != -ERESTARTSYS) {
1261 aac_fib_complete(fibptr);
1262 aac_fib_free(fibptr);
1263 }
1250 return rcode; 1264 return rcode;
1251 } 1265 }
1252 memcpy(&dev->adapter_info, info, sizeof(*info)); 1266 memcpy(&dev->adapter_info, info, sizeof(*info));
@@ -1270,6 +1284,12 @@ int aac_get_adapter_info(struct aac_dev* dev)
1270 1284
1271 if (rcode >= 0) 1285 if (rcode >= 0)
1272 memcpy(&dev->supplement_adapter_info, sinfo, sizeof(*sinfo)); 1286 memcpy(&dev->supplement_adapter_info, sinfo, sizeof(*sinfo));
1287 if (rcode == -ERESTARTSYS) {
1288 fibptr = aac_fib_alloc(dev);
1289 if (!fibptr)
1290 return -ENOMEM;
1291 }
1292
1273 } 1293 }
1274 1294
1275 1295
@@ -1470,9 +1490,11 @@ int aac_get_adapter_info(struct aac_dev* dev)
1470 (dev->scsi_host_ptr->sg_tablesize * 8) + 112; 1490 (dev->scsi_host_ptr->sg_tablesize * 8) + 112;
1471 } 1491 }
1472 } 1492 }
1473 1493 /* FIB should be freed only after getting the response from the F/W */
1474 aac_fib_complete(fibptr); 1494 if (rcode != -ERESTARTSYS) {
1475 aac_fib_free(fibptr); 1495 aac_fib_complete(fibptr);
1496 aac_fib_free(fibptr);
1497 }
1476 1498
1477 return rcode; 1499 return rcode;
1478} 1500}
@@ -1633,6 +1655,7 @@ static int aac_read(struct scsi_cmnd * scsicmd)
1633 * Alocate and initialize a Fib 1655 * Alocate and initialize a Fib
1634 */ 1656 */
1635 if (!(cmd_fibcontext = aac_fib_alloc(dev))) { 1657 if (!(cmd_fibcontext = aac_fib_alloc(dev))) {
1658 printk(KERN_WARNING "aac_read: fib allocation failed\n");
1636 return -1; 1659 return -1;
1637 } 1660 }
1638 1661
@@ -1712,9 +1735,14 @@ static int aac_write(struct scsi_cmnd * scsicmd)
1712 * Allocate and initialize a Fib then setup a BlockWrite command 1735 * Allocate and initialize a Fib then setup a BlockWrite command
1713 */ 1736 */
1714 if (!(cmd_fibcontext = aac_fib_alloc(dev))) { 1737 if (!(cmd_fibcontext = aac_fib_alloc(dev))) {
1715 scsicmd->result = DID_ERROR << 16; 1738 /* FIB temporarily unavailable,not catastrophic failure */
1716 scsicmd->scsi_done(scsicmd); 1739
1717 return 0; 1740 /* scsicmd->result = DID_ERROR << 16;
1741 * scsicmd->scsi_done(scsicmd);
1742 * return 0;
1743 */
1744 printk(KERN_WARNING "aac_write: fib allocation failed\n");
1745 return -1;
1718 } 1746 }
1719 1747
1720 status = aac_adapter_write(cmd_fibcontext, scsicmd, lba, count, fua); 1748 status = aac_adapter_write(cmd_fibcontext, scsicmd, lba, count, fua);
diff --git a/drivers/scsi/aacraid/aacraid.h b/drivers/scsi/aacraid/aacraid.h
index 83986ed86556..619c02d9c862 100644
--- a/drivers/scsi/aacraid/aacraid.h
+++ b/drivers/scsi/aacraid/aacraid.h
@@ -12,7 +12,7 @@
12 *----------------------------------------------------------------------------*/ 12 *----------------------------------------------------------------------------*/
13 13
14#ifndef AAC_DRIVER_BUILD 14#ifndef AAC_DRIVER_BUILD
15# define AAC_DRIVER_BUILD 2461 15# define AAC_DRIVER_BUILD 24702
16# define AAC_DRIVER_BRANCH "-ms" 16# define AAC_DRIVER_BRANCH "-ms"
17#endif 17#endif
18#define MAXIMUM_NUM_CONTAINERS 32 18#define MAXIMUM_NUM_CONTAINERS 32
@@ -1036,6 +1036,9 @@ struct aac_dev
1036 u8 printf_enabled; 1036 u8 printf_enabled;
1037 u8 in_reset; 1037 u8 in_reset;
1038 u8 msi; 1038 u8 msi;
1039 int management_fib_count;
1040 spinlock_t manage_lock;
1041
1039}; 1042};
1040 1043
1041#define aac_adapter_interrupt(dev) \ 1044#define aac_adapter_interrupt(dev) \
diff --git a/drivers/scsi/aacraid/commctrl.c b/drivers/scsi/aacraid/commctrl.c
index 0391d759dfdb..9c0c91178538 100644
--- a/drivers/scsi/aacraid/commctrl.c
+++ b/drivers/scsi/aacraid/commctrl.c
@@ -153,7 +153,7 @@ cleanup:
153 fibptr->hw_fib_pa = hw_fib_pa; 153 fibptr->hw_fib_pa = hw_fib_pa;
154 fibptr->hw_fib_va = hw_fib; 154 fibptr->hw_fib_va = hw_fib;
155 } 155 }
156 if (retval != -EINTR) 156 if (retval != -ERESTARTSYS)
157 aac_fib_free(fibptr); 157 aac_fib_free(fibptr);
158 return retval; 158 return retval;
159} 159}
@@ -322,7 +322,7 @@ return_fib:
322 } 322 }
323 if (f.wait) { 323 if (f.wait) {
324 if(down_interruptible(&fibctx->wait_sem) < 0) { 324 if(down_interruptible(&fibctx->wait_sem) < 0) {
325 status = -EINTR; 325 status = -ERESTARTSYS;
326 } else { 326 } else {
327 /* Lock again and retry */ 327 /* Lock again and retry */
328 spin_lock_irqsave(&dev->fib_lock, flags); 328 spin_lock_irqsave(&dev->fib_lock, flags);
@@ -593,10 +593,10 @@ static int aac_send_raw_srb(struct aac_dev* dev, void __user * arg)
593 u64 addr; 593 u64 addr;
594 void* p; 594 void* p;
595 if (upsg->sg[i].count > 595 if (upsg->sg[i].count >
596 (dev->adapter_info.options & 596 ((dev->adapter_info.options &
597 AAC_OPT_NEW_COMM) ? 597 AAC_OPT_NEW_COMM) ?
598 (dev->scsi_host_ptr->max_sectors << 9) : 598 (dev->scsi_host_ptr->max_sectors << 9) :
599 65536) { 599 65536)) {
600 rcode = -EINVAL; 600 rcode = -EINVAL;
601 goto cleanup; 601 goto cleanup;
602 } 602 }
@@ -645,10 +645,10 @@ static int aac_send_raw_srb(struct aac_dev* dev, void __user * arg)
645 u64 addr; 645 u64 addr;
646 void* p; 646 void* p;
647 if (usg->sg[i].count > 647 if (usg->sg[i].count >
648 (dev->adapter_info.options & 648 ((dev->adapter_info.options &
649 AAC_OPT_NEW_COMM) ? 649 AAC_OPT_NEW_COMM) ?
650 (dev->scsi_host_ptr->max_sectors << 9) : 650 (dev->scsi_host_ptr->max_sectors << 9) :
651 65536) { 651 65536)) {
652 rcode = -EINVAL; 652 rcode = -EINVAL;
653 goto cleanup; 653 goto cleanup;
654 } 654 }
@@ -695,10 +695,10 @@ static int aac_send_raw_srb(struct aac_dev* dev, void __user * arg)
695 uintptr_t addr; 695 uintptr_t addr;
696 void* p; 696 void* p;
697 if (usg->sg[i].count > 697 if (usg->sg[i].count >
698 (dev->adapter_info.options & 698 ((dev->adapter_info.options &
699 AAC_OPT_NEW_COMM) ? 699 AAC_OPT_NEW_COMM) ?
700 (dev->scsi_host_ptr->max_sectors << 9) : 700 (dev->scsi_host_ptr->max_sectors << 9) :
701 65536) { 701 65536)) {
702 rcode = -EINVAL; 702 rcode = -EINVAL;
703 goto cleanup; 703 goto cleanup;
704 } 704 }
@@ -734,10 +734,10 @@ static int aac_send_raw_srb(struct aac_dev* dev, void __user * arg)
734 dma_addr_t addr; 734 dma_addr_t addr;
735 void* p; 735 void* p;
736 if (upsg->sg[i].count > 736 if (upsg->sg[i].count >
737 (dev->adapter_info.options & 737 ((dev->adapter_info.options &
738 AAC_OPT_NEW_COMM) ? 738 AAC_OPT_NEW_COMM) ?
739 (dev->scsi_host_ptr->max_sectors << 9) : 739 (dev->scsi_host_ptr->max_sectors << 9) :
740 65536) { 740 65536)) {
741 rcode = -EINVAL; 741 rcode = -EINVAL;
742 goto cleanup; 742 goto cleanup;
743 } 743 }
@@ -772,8 +772,8 @@ static int aac_send_raw_srb(struct aac_dev* dev, void __user * arg)
772 psg->count = cpu_to_le32(sg_indx+1); 772 psg->count = cpu_to_le32(sg_indx+1);
773 status = aac_fib_send(ScsiPortCommand, srbfib, actual_fibsize, FsaNormal, 1, 1, NULL, NULL); 773 status = aac_fib_send(ScsiPortCommand, srbfib, actual_fibsize, FsaNormal, 1, 1, NULL, NULL);
774 } 774 }
775 if (status == -EINTR) { 775 if (status == -ERESTARTSYS) {
776 rcode = -EINTR; 776 rcode = -ERESTARTSYS;
777 goto cleanup; 777 goto cleanup;
778 } 778 }
779 779
@@ -810,7 +810,7 @@ cleanup:
810 for(i=0; i <= sg_indx; i++){ 810 for(i=0; i <= sg_indx; i++){
811 kfree(sg_list[i]); 811 kfree(sg_list[i]);
812 } 812 }
813 if (rcode != -EINTR) { 813 if (rcode != -ERESTARTSYS) {
814 aac_fib_complete(srbfib); 814 aac_fib_complete(srbfib);
815 aac_fib_free(srbfib); 815 aac_fib_free(srbfib);
816 } 816 }
@@ -848,7 +848,7 @@ int aac_do_ioctl(struct aac_dev * dev, int cmd, void __user *arg)
848 */ 848 */
849 849
850 status = aac_dev_ioctl(dev, cmd, arg); 850 status = aac_dev_ioctl(dev, cmd, arg);
851 if(status != -ENOTTY) 851 if (status != -ENOTTY)
852 return status; 852 return status;
853 853
854 switch (cmd) { 854 switch (cmd) {
diff --git a/drivers/scsi/aacraid/comminit.c b/drivers/scsi/aacraid/comminit.c
index 666d5151d628..a7261486ccd4 100644
--- a/drivers/scsi/aacraid/comminit.c
+++ b/drivers/scsi/aacraid/comminit.c
@@ -194,7 +194,9 @@ int aac_send_shutdown(struct aac_dev * dev)
194 194
195 if (status >= 0) 195 if (status >= 0)
196 aac_fib_complete(fibctx); 196 aac_fib_complete(fibctx);
197 aac_fib_free(fibctx); 197 /* FIB should be freed only after getting the response from the F/W */
198 if (status != -ERESTARTSYS)
199 aac_fib_free(fibctx);
198 return status; 200 return status;
199} 201}
200 202
@@ -304,6 +306,8 @@ struct aac_dev *aac_init_adapter(struct aac_dev *dev)
304 /* 306 /*
305 * Check the preferred comm settings, defaults from template. 307 * Check the preferred comm settings, defaults from template.
306 */ 308 */
309 dev->management_fib_count = 0;
310 spin_lock_init(&dev->manage_lock);
307 dev->max_fib_size = sizeof(struct hw_fib); 311 dev->max_fib_size = sizeof(struct hw_fib);
308 dev->sg_tablesize = host->sg_tablesize = (dev->max_fib_size 312 dev->sg_tablesize = host->sg_tablesize = (dev->max_fib_size
309 - sizeof(struct aac_fibhdr) 313 - sizeof(struct aac_fibhdr)
diff --git a/drivers/scsi/aacraid/commsup.c b/drivers/scsi/aacraid/commsup.c
index 956261f25181..94d2954d79ae 100644
--- a/drivers/scsi/aacraid/commsup.c
+++ b/drivers/scsi/aacraid/commsup.c
@@ -189,7 +189,14 @@ struct fib *aac_fib_alloc(struct aac_dev *dev)
189 189
190void aac_fib_free(struct fib *fibptr) 190void aac_fib_free(struct fib *fibptr)
191{ 191{
192 unsigned long flags; 192 unsigned long flags, flagsv;
193
194 spin_lock_irqsave(&fibptr->event_lock, flagsv);
195 if (fibptr->done == 2) {
196 spin_unlock_irqrestore(&fibptr->event_lock, flagsv);
197 return;
198 }
199 spin_unlock_irqrestore(&fibptr->event_lock, flagsv);
193 200
194 spin_lock_irqsave(&fibptr->dev->fib_lock, flags); 201 spin_lock_irqsave(&fibptr->dev->fib_lock, flags);
195 if (unlikely(fibptr->flags & FIB_CONTEXT_FLAG_TIMED_OUT)) 202 if (unlikely(fibptr->flags & FIB_CONTEXT_FLAG_TIMED_OUT))
@@ -390,6 +397,8 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
390 struct hw_fib * hw_fib = fibptr->hw_fib_va; 397 struct hw_fib * hw_fib = fibptr->hw_fib_va;
391 unsigned long flags = 0; 398 unsigned long flags = 0;
392 unsigned long qflags; 399 unsigned long qflags;
400 unsigned long mflags = 0;
401
393 402
394 if (!(hw_fib->header.XferState & cpu_to_le32(HostOwned))) 403 if (!(hw_fib->header.XferState & cpu_to_le32(HostOwned)))
395 return -EBUSY; 404 return -EBUSY;
@@ -471,9 +480,31 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
471 if (!dev->queues) 480 if (!dev->queues)
472 return -EBUSY; 481 return -EBUSY;
473 482
474 if(wait) 483 if (wait) {
484
485 spin_lock_irqsave(&dev->manage_lock, mflags);
486 if (dev->management_fib_count >= AAC_NUM_MGT_FIB) {
487 printk(KERN_INFO "No management Fibs Available:%d\n",
488 dev->management_fib_count);
489 spin_unlock_irqrestore(&dev->manage_lock, mflags);
490 return -EBUSY;
491 }
492 dev->management_fib_count++;
493 spin_unlock_irqrestore(&dev->manage_lock, mflags);
475 spin_lock_irqsave(&fibptr->event_lock, flags); 494 spin_lock_irqsave(&fibptr->event_lock, flags);
476 aac_adapter_deliver(fibptr); 495 }
496
497 if (aac_adapter_deliver(fibptr) != 0) {
498 printk(KERN_ERR "aac_fib_send: returned -EBUSY\n");
499 if (wait) {
500 spin_unlock_irqrestore(&fibptr->event_lock, flags);
501 spin_lock_irqsave(&dev->manage_lock, mflags);
502 dev->management_fib_count--;
503 spin_unlock_irqrestore(&dev->manage_lock, mflags);
504 }
505 return -EBUSY;
506 }
507
477 508
478 /* 509 /*
479 * If the caller wanted us to wait for response wait now. 510 * If the caller wanted us to wait for response wait now.
@@ -516,14 +547,15 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
516 udelay(5); 547 udelay(5);
517 } 548 }
518 } else if (down_interruptible(&fibptr->event_wait)) { 549 } else if (down_interruptible(&fibptr->event_wait)) {
519 fibptr->done = 2; 550 /* Do nothing ... satisfy
520 up(&fibptr->event_wait); 551 * down_interruptible must_check */
521 } 552 }
553
522 spin_lock_irqsave(&fibptr->event_lock, flags); 554 spin_lock_irqsave(&fibptr->event_lock, flags);
523 if ((fibptr->done == 0) || (fibptr->done == 2)) { 555 if (fibptr->done == 0) {
524 fibptr->done = 2; /* Tell interrupt we aborted */ 556 fibptr->done = 2; /* Tell interrupt we aborted */
525 spin_unlock_irqrestore(&fibptr->event_lock, flags); 557 spin_unlock_irqrestore(&fibptr->event_lock, flags);
526 return -EINTR; 558 return -ERESTARTSYS;
527 } 559 }
528 spin_unlock_irqrestore(&fibptr->event_lock, flags); 560 spin_unlock_irqrestore(&fibptr->event_lock, flags);
529 BUG_ON(fibptr->done == 0); 561 BUG_ON(fibptr->done == 0);
@@ -689,6 +721,7 @@ int aac_fib_adapter_complete(struct fib *fibptr, unsigned short size)
689 721
690int aac_fib_complete(struct fib *fibptr) 722int aac_fib_complete(struct fib *fibptr)
691{ 723{
724 unsigned long flags;
692 struct hw_fib * hw_fib = fibptr->hw_fib_va; 725 struct hw_fib * hw_fib = fibptr->hw_fib_va;
693 726
694 /* 727 /*
@@ -709,6 +742,13 @@ int aac_fib_complete(struct fib *fibptr)
709 * command is complete that we had sent to the adapter and this 742 * command is complete that we had sent to the adapter and this
710 * cdb could be reused. 743 * cdb could be reused.
711 */ 744 */
745 spin_lock_irqsave(&fibptr->event_lock, flags);
746 if (fibptr->done == 2) {
747 spin_unlock_irqrestore(&fibptr->event_lock, flags);
748 return 0;
749 }
750 spin_unlock_irqrestore(&fibptr->event_lock, flags);
751
712 if((hw_fib->header.XferState & cpu_to_le32(SentFromHost)) && 752 if((hw_fib->header.XferState & cpu_to_le32(SentFromHost)) &&
713 (hw_fib->header.XferState & cpu_to_le32(AdapterProcessed))) 753 (hw_fib->header.XferState & cpu_to_le32(AdapterProcessed)))
714 { 754 {
@@ -1355,7 +1395,10 @@ int aac_reset_adapter(struct aac_dev * aac, int forced)
1355 1395
1356 if (status >= 0) 1396 if (status >= 0)
1357 aac_fib_complete(fibctx); 1397 aac_fib_complete(fibctx);
1358 aac_fib_free(fibctx); 1398 /* FIB should be freed only after getting
1399 * the response from the F/W */
1400 if (status != -ERESTARTSYS)
1401 aac_fib_free(fibctx);
1359 } 1402 }
1360 } 1403 }
1361 1404
@@ -1759,6 +1802,7 @@ int aac_command_thread(void *data)
1759 struct fib *fibptr; 1802 struct fib *fibptr;
1760 1803
1761 if ((fibptr = aac_fib_alloc(dev))) { 1804 if ((fibptr = aac_fib_alloc(dev))) {
1805 int status;
1762 __le32 *info; 1806 __le32 *info;
1763 1807
1764 aac_fib_init(fibptr); 1808 aac_fib_init(fibptr);
@@ -1769,15 +1813,21 @@ int aac_command_thread(void *data)
1769 1813
1770 *info = cpu_to_le32(now.tv_sec); 1814 *info = cpu_to_le32(now.tv_sec);
1771 1815
1772 (void)aac_fib_send(SendHostTime, 1816 status = aac_fib_send(SendHostTime,
1773 fibptr, 1817 fibptr,
1774 sizeof(*info), 1818 sizeof(*info),
1775 FsaNormal, 1819 FsaNormal,
1776 1, 1, 1820 1, 1,
1777 NULL, 1821 NULL,
1778 NULL); 1822 NULL);
1779 aac_fib_complete(fibptr); 1823 /* Do not set XferState to zero unless
1780 aac_fib_free(fibptr); 1824 * receives a response from F/W */
1825 if (status >= 0)
1826 aac_fib_complete(fibptr);
1827 /* FIB should be freed only after
1828 * getting the response from the F/W */
1829 if (status != -ERESTARTSYS)
1830 aac_fib_free(fibptr);
1781 } 1831 }
1782 difference = (long)(unsigned)update_interval*HZ; 1832 difference = (long)(unsigned)update_interval*HZ;
1783 } else { 1833 } else {
diff --git a/drivers/scsi/aacraid/dpcsup.c b/drivers/scsi/aacraid/dpcsup.c
index abc9ef5d1b10..9c7408fe8c7d 100644
--- a/drivers/scsi/aacraid/dpcsup.c
+++ b/drivers/scsi/aacraid/dpcsup.c
@@ -57,9 +57,9 @@ unsigned int aac_response_normal(struct aac_queue * q)
57 struct hw_fib * hwfib; 57 struct hw_fib * hwfib;
58 struct fib * fib; 58 struct fib * fib;
59 int consumed = 0; 59 int consumed = 0;
60 unsigned long flags; 60 unsigned long flags, mflags;
61 61
62 spin_lock_irqsave(q->lock, flags); 62 spin_lock_irqsave(q->lock, flags);
63 /* 63 /*
64 * Keep pulling response QEs off the response queue and waking 64 * Keep pulling response QEs off the response queue and waking
65 * up the waiters until there are no more QEs. We then return 65 * up the waiters until there are no more QEs. We then return
@@ -125,12 +125,21 @@ unsigned int aac_response_normal(struct aac_queue * q)
125 } else { 125 } else {
126 unsigned long flagv; 126 unsigned long flagv;
127 spin_lock_irqsave(&fib->event_lock, flagv); 127 spin_lock_irqsave(&fib->event_lock, flagv);
128 if (!fib->done) 128 if (!fib->done) {
129 fib->done = 1; 129 fib->done = 1;
130 up(&fib->event_wait); 130 up(&fib->event_wait);
131 }
131 spin_unlock_irqrestore(&fib->event_lock, flagv); 132 spin_unlock_irqrestore(&fib->event_lock, flagv);
133
134 spin_lock_irqsave(&dev->manage_lock, mflags);
135 dev->management_fib_count--;
136 spin_unlock_irqrestore(&dev->manage_lock, mflags);
137
132 FIB_COUNTER_INCREMENT(aac_config.NormalRecved); 138 FIB_COUNTER_INCREMENT(aac_config.NormalRecved);
133 if (fib->done == 2) { 139 if (fib->done == 2) {
140 spin_lock_irqsave(&fib->event_lock, flagv);
141 fib->done = 0;
142 spin_unlock_irqrestore(&fib->event_lock, flagv);
134 aac_fib_complete(fib); 143 aac_fib_complete(fib);
135 aac_fib_free(fib); 144 aac_fib_free(fib);
136 } 145 }
@@ -232,6 +241,7 @@ unsigned int aac_command_normal(struct aac_queue *q)
232 241
233unsigned int aac_intr_normal(struct aac_dev * dev, u32 index) 242unsigned int aac_intr_normal(struct aac_dev * dev, u32 index)
234{ 243{
244 unsigned long mflags;
235 dprintk((KERN_INFO "aac_intr_normal(%p,%x)\n", dev, index)); 245 dprintk((KERN_INFO "aac_intr_normal(%p,%x)\n", dev, index));
236 if ((index & 0x00000002L)) { 246 if ((index & 0x00000002L)) {
237 struct hw_fib * hw_fib; 247 struct hw_fib * hw_fib;
@@ -320,11 +330,25 @@ unsigned int aac_intr_normal(struct aac_dev * dev, u32 index)
320 unsigned long flagv; 330 unsigned long flagv;
321 dprintk((KERN_INFO "event_wait up\n")); 331 dprintk((KERN_INFO "event_wait up\n"));
322 spin_lock_irqsave(&fib->event_lock, flagv); 332 spin_lock_irqsave(&fib->event_lock, flagv);
323 if (!fib->done) 333 if (!fib->done) {
324 fib->done = 1; 334 fib->done = 1;
325 up(&fib->event_wait); 335 up(&fib->event_wait);
336 }
326 spin_unlock_irqrestore(&fib->event_lock, flagv); 337 spin_unlock_irqrestore(&fib->event_lock, flagv);
338
339 spin_lock_irqsave(&dev->manage_lock, mflags);
340 dev->management_fib_count--;
341 spin_unlock_irqrestore(&dev->manage_lock, mflags);
342
327 FIB_COUNTER_INCREMENT(aac_config.NormalRecved); 343 FIB_COUNTER_INCREMENT(aac_config.NormalRecved);
344 if (fib->done == 2) {
345 spin_lock_irqsave(&fib->event_lock, flagv);
346 fib->done = 0;
347 spin_unlock_irqrestore(&fib->event_lock, flagv);
348 aac_fib_complete(fib);
349 aac_fib_free(fib);
350 }
351
328 } 352 }
329 return 0; 353 return 0;
330 } 354 }
diff --git a/drivers/scsi/aic7xxx/aic79xx_core.c b/drivers/scsi/aic7xxx/aic79xx_core.c
index 4d419c155ce9..78971db5b60e 100644
--- a/drivers/scsi/aic7xxx/aic79xx_core.c
+++ b/drivers/scsi/aic7xxx/aic79xx_core.c
@@ -3171,13 +3171,16 @@ ahd_handle_nonpkt_busfree(struct ahd_softc *ahd)
3171 tinfo->curr.transport_version = 2; 3171 tinfo->curr.transport_version = 2;
3172 tinfo->goal.transport_version = 2; 3172 tinfo->goal.transport_version = 2;
3173 tinfo->goal.ppr_options = 0; 3173 tinfo->goal.ppr_options = 0;
3174 /* 3174 if (scb != NULL) {
3175 * Remove any SCBs in the waiting for selection 3175 /*
3176 * queue that may also be for this target so 3176 * Remove any SCBs in the waiting
3177 * that command ordering is preserved. 3177 * for selection queue that may
3178 */ 3178 * also be for this target so that
3179 ahd_freeze_devq(ahd, scb); 3179 * command ordering is preserved.
3180 ahd_qinfifo_requeue_tail(ahd, scb); 3180 */
3181 ahd_freeze_devq(ahd, scb);
3182 ahd_qinfifo_requeue_tail(ahd, scb);
3183 }
3181 printerror = 0; 3184 printerror = 0;
3182 } 3185 }
3183 } else if (ahd_sent_msg(ahd, AHDMSG_EXT, MSG_EXT_WDTR, FALSE) 3186 } else if (ahd_sent_msg(ahd, AHDMSG_EXT, MSG_EXT_WDTR, FALSE)
@@ -3194,13 +3197,16 @@ ahd_handle_nonpkt_busfree(struct ahd_softc *ahd)
3194 MSG_EXT_WDTR_BUS_8_BIT, 3197 MSG_EXT_WDTR_BUS_8_BIT,
3195 AHD_TRANS_CUR|AHD_TRANS_GOAL, 3198 AHD_TRANS_CUR|AHD_TRANS_GOAL,
3196 /*paused*/TRUE); 3199 /*paused*/TRUE);
3197 /* 3200 if (scb != NULL) {
3198 * Remove any SCBs in the waiting for selection 3201 /*
3199 * queue that may also be for this target so that 3202 * Remove any SCBs in the waiting for
3200 * command ordering is preserved. 3203 * selection queue that may also be for
3201 */ 3204 * this target so that command ordering
3202 ahd_freeze_devq(ahd, scb); 3205 * is preserved.
3203 ahd_qinfifo_requeue_tail(ahd, scb); 3206 */
3207 ahd_freeze_devq(ahd, scb);
3208 ahd_qinfifo_requeue_tail(ahd, scb);
3209 }
3204 printerror = 0; 3210 printerror = 0;
3205 } else if (ahd_sent_msg(ahd, AHDMSG_EXT, MSG_EXT_SDTR, FALSE) 3211 } else if (ahd_sent_msg(ahd, AHDMSG_EXT, MSG_EXT_SDTR, FALSE)
3206 && ppr_busfree == 0) { 3212 && ppr_busfree == 0) {
@@ -3217,13 +3223,16 @@ ahd_handle_nonpkt_busfree(struct ahd_softc *ahd)
3217 /*ppr_options*/0, 3223 /*ppr_options*/0,
3218 AHD_TRANS_CUR|AHD_TRANS_GOAL, 3224 AHD_TRANS_CUR|AHD_TRANS_GOAL,
3219 /*paused*/TRUE); 3225 /*paused*/TRUE);
3220 /* 3226 if (scb != NULL) {
3221 * Remove any SCBs in the waiting for selection 3227 /*
3222 * queue that may also be for this target so that 3228 * Remove any SCBs in the waiting for
3223 * command ordering is preserved. 3229 * selection queue that may also be for
3224 */ 3230 * this target so that command ordering
3225 ahd_freeze_devq(ahd, scb); 3231 * is preserved.
3226 ahd_qinfifo_requeue_tail(ahd, scb); 3232 */
3233 ahd_freeze_devq(ahd, scb);
3234 ahd_qinfifo_requeue_tail(ahd, scb);
3235 }
3227 printerror = 0; 3236 printerror = 0;
3228 } else if ((ahd->msg_flags & MSG_FLAG_EXPECT_IDE_BUSFREE) != 0 3237 } else if ((ahd->msg_flags & MSG_FLAG_EXPECT_IDE_BUSFREE) != 0
3229 && ahd_sent_msg(ahd, AHDMSG_1B, 3238 && ahd_sent_msg(ahd, AHDMSG_1B,
@@ -3251,7 +3260,7 @@ ahd_handle_nonpkt_busfree(struct ahd_softc *ahd)
3251 * the message phases. We check it last in case we 3260 * the message phases. We check it last in case we
3252 * had to send some other message that caused a busfree. 3261 * had to send some other message that caused a busfree.
3253 */ 3262 */
3254 if (printerror != 0 3263 if (scb != NULL && printerror != 0
3255 && (lastphase == P_MESGIN || lastphase == P_MESGOUT) 3264 && (lastphase == P_MESGIN || lastphase == P_MESGOUT)
3256 && ((ahd->msg_flags & MSG_FLAG_EXPECT_PPR_BUSFREE) != 0)) { 3265 && ((ahd->msg_flags & MSG_FLAG_EXPECT_PPR_BUSFREE) != 0)) {
3257 3266
diff --git a/drivers/scsi/lpfc/lpfc_hbadisc.c b/drivers/scsi/lpfc/lpfc_hbadisc.c
index 2445e399fd60..2445e399fd60 100755..100644
--- a/drivers/scsi/lpfc/lpfc_hbadisc.c
+++ b/drivers/scsi/lpfc/lpfc_hbadisc.c
diff --git a/drivers/scsi/lpfc/lpfc_hw4.h b/drivers/scsi/lpfc/lpfc_hw4.h
index 8a2a1c5935c6..8a2a1c5935c6 100755..100644
--- a/drivers/scsi/lpfc/lpfc_hw4.h
+++ b/drivers/scsi/lpfc/lpfc_hw4.h
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h
index 608e675f68c8..1263d9796e89 100644
--- a/drivers/scsi/qla2xxx/qla_def.h
+++ b/drivers/scsi/qla2xxx/qla_def.h
@@ -1586,8 +1586,7 @@ typedef struct fc_port {
1586 */ 1586 */
1587#define FCF_FABRIC_DEVICE BIT_0 1587#define FCF_FABRIC_DEVICE BIT_0
1588#define FCF_LOGIN_NEEDED BIT_1 1588#define FCF_LOGIN_NEEDED BIT_1
1589#define FCF_TAPE_PRESENT BIT_2 1589#define FCF_FCP2_DEVICE BIT_2
1590#define FCF_FCP2_DEVICE BIT_3
1591 1590
1592/* No loop ID flag. */ 1591/* No loop ID flag. */
1593#define FC_NO_LOOP_ID 0x1000 1592#define FC_NO_LOOP_ID 0x1000
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c
index b4a0eac8f96d..3f8e8495b743 100644
--- a/drivers/scsi/qla2xxx/qla_init.c
+++ b/drivers/scsi/qla2xxx/qla_init.c
@@ -205,7 +205,7 @@ qla2x00_async_login_done(struct scsi_qla_host *vha, fc_port_t *fcport,
205 205
206 switch (data[0]) { 206 switch (data[0]) {
207 case MBS_COMMAND_COMPLETE: 207 case MBS_COMMAND_COMPLETE:
208 if (fcport->flags & FCF_TAPE_PRESENT) 208 if (fcport->flags & FCF_FCP2_DEVICE)
209 opts |= BIT_1; 209 opts |= BIT_1;
210 rval = qla2x00_get_port_database(vha, fcport, opts); 210 rval = qla2x00_get_port_database(vha, fcport, opts);
211 if (rval != QLA_SUCCESS) 211 if (rval != QLA_SUCCESS)
@@ -2726,7 +2726,7 @@ qla2x00_configure_fabric(scsi_qla_host_t *vha)
2726 2726
2727 /* 2727 /*
2728 * Logout all previous fabric devices marked lost, except 2728 * Logout all previous fabric devices marked lost, except
2729 * tape devices. 2729 * FCP2 devices.
2730 */ 2730 */
2731 list_for_each_entry(fcport, &vha->vp_fcports, list) { 2731 list_for_each_entry(fcport, &vha->vp_fcports, list) {
2732 if (test_bit(LOOP_RESYNC_NEEDED, &vha->dpc_flags)) 2732 if (test_bit(LOOP_RESYNC_NEEDED, &vha->dpc_flags))
@@ -2739,7 +2739,7 @@ qla2x00_configure_fabric(scsi_qla_host_t *vha)
2739 qla2x00_mark_device_lost(vha, fcport, 2739 qla2x00_mark_device_lost(vha, fcport,
2740 ql2xplogiabsentdevice, 0); 2740 ql2xplogiabsentdevice, 0);
2741 if (fcport->loop_id != FC_NO_LOOP_ID && 2741 if (fcport->loop_id != FC_NO_LOOP_ID &&
2742 (fcport->flags & FCF_TAPE_PRESENT) == 0 && 2742 (fcport->flags & FCF_FCP2_DEVICE) == 0 &&
2743 fcport->port_type != FCT_INITIATOR && 2743 fcport->port_type != FCT_INITIATOR &&
2744 fcport->port_type != FCT_BROADCAST) { 2744 fcport->port_type != FCT_BROADCAST) {
2745 ha->isp_ops->fabric_logout(vha, 2745 ha->isp_ops->fabric_logout(vha,
@@ -3018,7 +3018,7 @@ qla2x00_find_all_fabric_devs(scsi_qla_host_t *vha,
3018 fcport->d_id.b24 = new_fcport->d_id.b24; 3018 fcport->d_id.b24 = new_fcport->d_id.b24;
3019 fcport->flags |= FCF_LOGIN_NEEDED; 3019 fcport->flags |= FCF_LOGIN_NEEDED;
3020 if (fcport->loop_id != FC_NO_LOOP_ID && 3020 if (fcport->loop_id != FC_NO_LOOP_ID &&
3021 (fcport->flags & FCF_TAPE_PRESENT) == 0 && 3021 (fcport->flags & FCF_FCP2_DEVICE) == 0 &&
3022 fcport->port_type != FCT_INITIATOR && 3022 fcport->port_type != FCT_INITIATOR &&
3023 fcport->port_type != FCT_BROADCAST) { 3023 fcport->port_type != FCT_BROADCAST) {
3024 ha->isp_ops->fabric_logout(vha, fcport->loop_id, 3024 ha->isp_ops->fabric_logout(vha, fcport->loop_id,
@@ -3272,9 +3272,9 @@ qla2x00_fabric_dev_login(scsi_qla_host_t *vha, fc_port_t *fcport,
3272 3272
3273 rval = qla2x00_fabric_login(vha, fcport, next_loopid); 3273 rval = qla2x00_fabric_login(vha, fcport, next_loopid);
3274 if (rval == QLA_SUCCESS) { 3274 if (rval == QLA_SUCCESS) {
3275 /* Send an ADISC to tape devices.*/ 3275 /* Send an ADISC to FCP2 devices.*/
3276 opts = 0; 3276 opts = 0;
3277 if (fcport->flags & FCF_TAPE_PRESENT) 3277 if (fcport->flags & FCF_FCP2_DEVICE)
3278 opts |= BIT_1; 3278 opts |= BIT_1;
3279 rval = qla2x00_get_port_database(vha, fcport, opts); 3279 rval = qla2x00_get_port_database(vha, fcport, opts);
3280 if (rval != QLA_SUCCESS) { 3280 if (rval != QLA_SUCCESS) {
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 209f50e788a1..8529eb1f3cd4 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -1188,7 +1188,6 @@ qla2xxx_slave_configure(struct scsi_device *sdev)
1188 scsi_qla_host_t *vha = shost_priv(sdev->host); 1188 scsi_qla_host_t *vha = shost_priv(sdev->host);
1189 struct qla_hw_data *ha = vha->hw; 1189 struct qla_hw_data *ha = vha->hw;
1190 struct fc_rport *rport = starget_to_rport(sdev->sdev_target); 1190 struct fc_rport *rport = starget_to_rport(sdev->sdev_target);
1191 fc_port_t *fcport = *(fc_port_t **)rport->dd_data;
1192 struct req_que *req = vha->req; 1191 struct req_que *req = vha->req;
1193 1192
1194 if (sdev->tagged_supported) 1193 if (sdev->tagged_supported)
@@ -1197,8 +1196,6 @@ qla2xxx_slave_configure(struct scsi_device *sdev)
1197 scsi_deactivate_tcq(sdev, req->max_q_depth); 1196 scsi_deactivate_tcq(sdev, req->max_q_depth);
1198 1197
1199 rport->dev_loss_tmo = ha->port_down_retry_count; 1198 rport->dev_loss_tmo = ha->port_down_retry_count;
1200 if (sdev->type == TYPE_TAPE)
1201 fcport->flags |= FCF_TAPE_PRESENT;
1202 1199
1203 return 0; 1200 return 0;
1204} 1201}
@@ -2805,7 +2802,7 @@ void qla2x00_relogin(struct scsi_qla_host *vha)
2805 2802
2806 fcport->login_retry--; 2803 fcport->login_retry--;
2807 if (fcport->flags & FCF_FABRIC_DEVICE) { 2804 if (fcport->flags & FCF_FABRIC_DEVICE) {
2808 if (fcport->flags & FCF_TAPE_PRESENT) 2805 if (fcport->flags & FCF_FCP2_DEVICE)
2809 ha->isp_ops->fabric_logout(vha, 2806 ha->isp_ops->fabric_logout(vha,
2810 fcport->loop_id, 2807 fcport->loop_id,
2811 fcport->d_id.b.domain, 2808 fcport->d_id.b.domain,
@@ -3141,7 +3138,10 @@ qla2x00_timer(scsi_qla_host_t *vha)
3141 if (!IS_QLA2100(ha) && vha->link_down_timeout) 3138 if (!IS_QLA2100(ha) && vha->link_down_timeout)
3142 atomic_set(&vha->loop_state, LOOP_DEAD); 3139 atomic_set(&vha->loop_state, LOOP_DEAD);
3143 3140
3144 /* Schedule an ISP abort to return any tape commands. */ 3141 /*
3142 * Schedule an ISP abort to return any FCP2-device
3143 * commands.
3144 */
3145 /* NPIV - scan physical port only */ 3145 /* NPIV - scan physical port only */
3146 if (!vha->vp_idx) { 3146 if (!vha->vp_idx) {
3147 spin_lock_irqsave(&ha->hardware_lock, 3147 spin_lock_irqsave(&ha->hardware_lock,
@@ -3158,7 +3158,7 @@ qla2x00_timer(scsi_qla_host_t *vha)
3158 if (sp->ctx) 3158 if (sp->ctx)
3159 continue; 3159 continue;
3160 sfcp = sp->fcport; 3160 sfcp = sp->fcport;
3161 if (!(sfcp->flags & FCF_TAPE_PRESENT)) 3161 if (!(sfcp->flags & FCF_FCP2_DEVICE))
3162 continue; 3162 continue;
3163 3163
3164 set_bit(ISP_ABORT_NEEDED, 3164 set_bit(ISP_ABORT_NEEDED,
diff --git a/drivers/scsi/qla2xxx/qla_sup.c b/drivers/scsi/qla2xxx/qla_sup.c
index 010e69b29afe..371dc895972a 100644
--- a/drivers/scsi/qla2xxx/qla_sup.c
+++ b/drivers/scsi/qla2xxx/qla_sup.c
@@ -2292,11 +2292,14 @@ qla25xx_read_optrom_data(struct scsi_qla_host *vha, uint8_t *buf,
2292 uint32_t faddr, left, burst; 2292 uint32_t faddr, left, burst;
2293 struct qla_hw_data *ha = vha->hw; 2293 struct qla_hw_data *ha = vha->hw;
2294 2294
2295 if (IS_QLA25XX(ha) || IS_QLA81XX(ha))
2296 goto try_fast;
2295 if (offset & 0xfff) 2297 if (offset & 0xfff)
2296 goto slow_read; 2298 goto slow_read;
2297 if (length < OPTROM_BURST_SIZE) 2299 if (length < OPTROM_BURST_SIZE)
2298 goto slow_read; 2300 goto slow_read;
2299 2301
2302try_fast:
2300 optrom = dma_alloc_coherent(&ha->pdev->dev, OPTROM_BURST_SIZE, 2303 optrom = dma_alloc_coherent(&ha->pdev->dev, OPTROM_BURST_SIZE,
2301 &optrom_dma, GFP_KERNEL); 2304 &optrom_dma, GFP_KERNEL);
2302 if (!optrom) { 2305 if (!optrom) {
diff --git a/drivers/scsi/qla2xxx/qla_version.h b/drivers/scsi/qla2xxx/qla_version.h
index a65dd95507c6..ed36279a33c1 100644
--- a/drivers/scsi/qla2xxx/qla_version.h
+++ b/drivers/scsi/qla2xxx/qla_version.h
@@ -7,7 +7,7 @@
7/* 7/*
8 * Driver version 8 * Driver version
9 */ 9 */
10#define QLA2XXX_VERSION "8.03.01-k9" 10#define QLA2XXX_VERSION "8.03.01-k10"
11 11
12#define QLA_DRIVER_MAJOR_VER 8 12#define QLA_DRIVER_MAJOR_VER 8
13#define QLA_DRIVER_MINOR_VER 3 13#define QLA_DRIVER_MINOR_VER 3
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index d8927681ec88..c6642423cc67 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -749,9 +749,9 @@ void scsi_io_completion(struct scsi_cmnd *cmd, unsigned int good_bytes)
749 */ 749 */
750 req->next_rq->resid_len = scsi_in(cmd)->resid; 750 req->next_rq->resid_len = scsi_in(cmd)->resid;
751 751
752 scsi_release_buffers(cmd);
752 blk_end_request_all(req, 0); 753 blk_end_request_all(req, 0);
753 754
754 scsi_release_buffers(cmd);
755 scsi_next_command(cmd); 755 scsi_next_command(cmd);
756 return; 756 return;
757 } 757 }
diff --git a/drivers/scsi/scsi_transport_fc.c b/drivers/scsi/scsi_transport_fc.c
index ddfcecd5099f..653f22a8deb9 100644
--- a/drivers/scsi/scsi_transport_fc.c
+++ b/drivers/scsi/scsi_transport_fc.c
@@ -3527,7 +3527,10 @@ fc_bsg_job_timeout(struct request *req)
3527 if (!done && i->f->bsg_timeout) { 3527 if (!done && i->f->bsg_timeout) {
3528 /* call LLDD to abort the i/o as it has timed out */ 3528 /* call LLDD to abort the i/o as it has timed out */
3529 err = i->f->bsg_timeout(job); 3529 err = i->f->bsg_timeout(job);
3530 if (err) 3530 if (err == -EAGAIN) {
3531 job->ref_cnt--;
3532 return BLK_EH_RESET_TIMER;
3533 } else if (err)
3531 printk(KERN_ERR "ERROR: FC BSG request timeout - LLD " 3534 printk(KERN_ERR "ERROR: FC BSG request timeout - LLD "
3532 "abort failed with status %d\n", err); 3535 "abort failed with status %d\n", err);
3533 } 3536 }
diff --git a/drivers/serial/8250_pnp.c b/drivers/serial/8250_pnp.c
index b5496a19d967..24485cc62ff8 100644
--- a/drivers/serial/8250_pnp.c
+++ b/drivers/serial/8250_pnp.c
@@ -328,15 +328,7 @@ static const struct pnp_device_id pnp_dev_table[] = {
328 /* U.S. Robotics 56K Voice INT PnP*/ 328 /* U.S. Robotics 56K Voice INT PnP*/
329 { "USR9190", 0 }, 329 { "USR9190", 0 },
330 /* Wacom tablets */ 330 /* Wacom tablets */
331 { "WACF004", 0 }, 331 { "WACFXXX", 0 },
332 { "WACF005", 0 },
333 { "WACF006", 0 },
334 { "WACF007", 0 },
335 { "WACF008", 0 },
336 { "WACF009", 0 },
337 { "WACF00A", 0 },
338 { "WACF00B", 0 },
339 { "WACF00C", 0 },
340 /* Compaq touchscreen */ 332 /* Compaq touchscreen */
341 { "FPI2002", 0 }, 333 { "FPI2002", 0 },
342 /* Fujitsu Stylistic touchscreens */ 334 /* Fujitsu Stylistic touchscreens */
diff --git a/drivers/serial/imx.c b/drivers/serial/imx.c
index 18130f11238e..60d665a17a88 100644
--- a/drivers/serial/imx.c
+++ b/drivers/serial/imx.c
@@ -1088,7 +1088,7 @@ imx_console_get_options(struct imx_port *sport, int *baud,
1088 int *parity, int *bits) 1088 int *parity, int *bits)
1089{ 1089{
1090 1090
1091 if ( readl(sport->port.membase + UCR1) | UCR1_UARTEN ) { 1091 if (readl(sport->port.membase + UCR1) & UCR1_UARTEN) {
1092 /* ok, the port was enabled */ 1092 /* ok, the port was enabled */
1093 unsigned int ucr2, ubir,ubmr, uartclk; 1093 unsigned int ucr2, ubir,ubmr, uartclk;
1094 unsigned int baud_raw; 1094 unsigned int baud_raw;
diff --git a/drivers/serial/pmac_zilog.c b/drivers/serial/pmac_zilog.c
index 0700cd10b97c..683e66f18e8c 100644
--- a/drivers/serial/pmac_zilog.c
+++ b/drivers/serial/pmac_zilog.c
@@ -411,6 +411,17 @@ static void pmz_transmit_chars(struct uart_pmac_port *uap)
411 goto ack_tx_int; 411 goto ack_tx_int;
412 } 412 }
413 413
414 /* Under some circumstances, we see interrupts reported for
415 * a closed channel. The interrupt mask in R1 is clear, but
416 * R3 still signals the interrupts and we see them when taking
417 * an interrupt for the other channel (this could be a qemu
418 * bug but since the ESCC doc doesn't specify precsiely whether
419 * R3 interrup status bits are masked by R1 interrupt enable
420 * bits, better safe than sorry). --BenH.
421 */
422 if (!ZS_IS_OPEN(uap))
423 goto ack_tx_int;
424
414 if (uap->port.x_char) { 425 if (uap->port.x_char) {
415 uap->flags |= PMACZILOG_FLAG_TX_ACTIVE; 426 uap->flags |= PMACZILOG_FLAG_TX_ACTIVE;
416 write_zsdata(uap, uap->port.x_char); 427 write_zsdata(uap, uap->port.x_char);
diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c
index 047530b285bb..7f2830709512 100644
--- a/drivers/serial/serial_core.c
+++ b/drivers/serial/serial_core.c
@@ -385,13 +385,20 @@ uart_get_baud_rate(struct uart_port *port, struct ktermios *termios,
385 } 385 }
386 386
387 /* 387 /*
388 * As a last resort, if the quotient is zero, 388 * As a last resort, if the range cannot be met then clip to
389 * default to 9600 bps 389 * the nearest chip supported rate.
390 */ 390 */
391 if (!hung_up) 391 if (!hung_up) {
392 tty_termios_encode_baud_rate(termios, 9600, 9600); 392 if (baud <= min)
393 tty_termios_encode_baud_rate(termios,
394 min + 1, min + 1);
395 else
396 tty_termios_encode_baud_rate(termios,
397 max - 1, max - 1);
398 }
393 } 399 }
394 400 /* Should never happen */
401 WARN_ON(1);
395 return 0; 402 return 0;
396} 403}
397 404
@@ -2006,12 +2013,6 @@ int uart_suspend_port(struct uart_driver *drv, struct uart_port *uport)
2006 2013
2007 mutex_lock(&port->mutex); 2014 mutex_lock(&port->mutex);
2008 2015
2009 if (!console_suspend_enabled && uart_console(uport)) {
2010 /* we're going to avoid suspending serial console */
2011 mutex_unlock(&port->mutex);
2012 return 0;
2013 }
2014
2015 tty_dev = device_find_child(uport->dev, &match, serial_match_port); 2016 tty_dev = device_find_child(uport->dev, &match, serial_match_port);
2016 if (device_may_wakeup(tty_dev)) { 2017 if (device_may_wakeup(tty_dev)) {
2017 enable_irq_wake(uport->irq); 2018 enable_irq_wake(uport->irq);
@@ -2019,20 +2020,23 @@ int uart_suspend_port(struct uart_driver *drv, struct uart_port *uport)
2019 mutex_unlock(&port->mutex); 2020 mutex_unlock(&port->mutex);
2020 return 0; 2021 return 0;
2021 } 2022 }
2022 uport->suspended = 1; 2023 if (console_suspend_enabled || !uart_console(uport))
2024 uport->suspended = 1;
2023 2025
2024 if (port->flags & ASYNC_INITIALIZED) { 2026 if (port->flags & ASYNC_INITIALIZED) {
2025 const struct uart_ops *ops = uport->ops; 2027 const struct uart_ops *ops = uport->ops;
2026 int tries; 2028 int tries;
2027 2029
2028 set_bit(ASYNCB_SUSPENDED, &port->flags); 2030 if (console_suspend_enabled || !uart_console(uport)) {
2029 clear_bit(ASYNCB_INITIALIZED, &port->flags); 2031 set_bit(ASYNCB_SUSPENDED, &port->flags);
2032 clear_bit(ASYNCB_INITIALIZED, &port->flags);
2030 2033
2031 spin_lock_irq(&uport->lock); 2034 spin_lock_irq(&uport->lock);
2032 ops->stop_tx(uport); 2035 ops->stop_tx(uport);
2033 ops->set_mctrl(uport, 0); 2036 ops->set_mctrl(uport, 0);
2034 ops->stop_rx(uport); 2037 ops->stop_rx(uport);
2035 spin_unlock_irq(&uport->lock); 2038 spin_unlock_irq(&uport->lock);
2039 }
2036 2040
2037 /* 2041 /*
2038 * Wait for the transmitter to empty. 2042 * Wait for the transmitter to empty.
@@ -2047,16 +2051,18 @@ int uart_suspend_port(struct uart_driver *drv, struct uart_port *uport)
2047 drv->dev_name, 2051 drv->dev_name,
2048 drv->tty_driver->name_base + uport->line); 2052 drv->tty_driver->name_base + uport->line);
2049 2053
2050 ops->shutdown(uport); 2054 if (console_suspend_enabled || !uart_console(uport))
2055 ops->shutdown(uport);
2051 } 2056 }
2052 2057
2053 /* 2058 /*
2054 * Disable the console device before suspending. 2059 * Disable the console device before suspending.
2055 */ 2060 */
2056 if (uart_console(uport)) 2061 if (console_suspend_enabled && uart_console(uport))
2057 console_stop(uport->cons); 2062 console_stop(uport->cons);
2058 2063
2059 uart_change_pm(state, 3); 2064 if (console_suspend_enabled || !uart_console(uport))
2065 uart_change_pm(state, 3);
2060 2066
2061 mutex_unlock(&port->mutex); 2067 mutex_unlock(&port->mutex);
2062 2068
@@ -2073,29 +2079,6 @@ int uart_resume_port(struct uart_driver *drv, struct uart_port *uport)
2073 2079
2074 mutex_lock(&port->mutex); 2080 mutex_lock(&port->mutex);
2075 2081
2076 if (!console_suspend_enabled && uart_console(uport)) {
2077 /* no need to resume serial console, it wasn't suspended */
2078 /*
2079 * First try to use the console cflag setting.
2080 */
2081 memset(&termios, 0, sizeof(struct ktermios));
2082 termios.c_cflag = uport->cons->cflag;
2083 /*
2084 * If that's unset, use the tty termios setting.
2085 */
2086 if (termios.c_cflag == 0)
2087 termios = *state->port.tty->termios;
2088 else {
2089 termios.c_ispeed = termios.c_ospeed =
2090 tty_termios_input_baud_rate(&termios);
2091 termios.c_ispeed = termios.c_ospeed =
2092 tty_termios_baud_rate(&termios);
2093 }
2094 uport->ops->set_termios(uport, &termios, NULL);
2095 mutex_unlock(&port->mutex);
2096 return 0;
2097 }
2098
2099 tty_dev = device_find_child(uport->dev, &match, serial_match_port); 2082 tty_dev = device_find_child(uport->dev, &match, serial_match_port);
2100 if (!uport->suspended && device_may_wakeup(tty_dev)) { 2083 if (!uport->suspended && device_may_wakeup(tty_dev)) {
2101 disable_irq_wake(uport->irq); 2084 disable_irq_wake(uport->irq);
@@ -2121,21 +2104,23 @@ int uart_resume_port(struct uart_driver *drv, struct uart_port *uport)
2121 spin_lock_irq(&uport->lock); 2104 spin_lock_irq(&uport->lock);
2122 ops->set_mctrl(uport, 0); 2105 ops->set_mctrl(uport, 0);
2123 spin_unlock_irq(&uport->lock); 2106 spin_unlock_irq(&uport->lock);
2124 ret = ops->startup(uport); 2107 if (console_suspend_enabled || !uart_console(uport)) {
2125 if (ret == 0) { 2108 ret = ops->startup(uport);
2126 uart_change_speed(state, NULL); 2109 if (ret == 0) {
2127 spin_lock_irq(&uport->lock); 2110 uart_change_speed(state, NULL);
2128 ops->set_mctrl(uport, uport->mctrl); 2111 spin_lock_irq(&uport->lock);
2129 ops->start_tx(uport); 2112 ops->set_mctrl(uport, uport->mctrl);
2130 spin_unlock_irq(&uport->lock); 2113 ops->start_tx(uport);
2131 set_bit(ASYNCB_INITIALIZED, &port->flags); 2114 spin_unlock_irq(&uport->lock);
2132 } else { 2115 set_bit(ASYNCB_INITIALIZED, &port->flags);
2133 /* 2116 } else {
2134 * Failed to resume - maybe hardware went away? 2117 /*
2135 * Clear the "initialized" flag so we won't try 2118 * Failed to resume - maybe hardware went away?
2136 * to call the low level drivers shutdown method. 2119 * Clear the "initialized" flag so we won't try
2137 */ 2120 * to call the low level drivers shutdown method.
2138 uart_shutdown(state); 2121 */
2122 uart_shutdown(state);
2123 }
2139 } 2124 }
2140 2125
2141 clear_bit(ASYNCB_SUSPENDED, &port->flags); 2126 clear_bit(ASYNCB_SUSPENDED, &port->flags);
diff --git a/drivers/serial/serial_cs.c b/drivers/serial/serial_cs.c
index 0ee7239c5d69..95421fa3b304 100644
--- a/drivers/serial/serial_cs.c
+++ b/drivers/serial/serial_cs.c
@@ -146,7 +146,8 @@ static void quirk_wakeup_oxsemi(struct pcmcia_device *link)
146{ 146{
147 struct serial_info *info = link->priv; 147 struct serial_info *info = link->priv;
148 148
149 outb(12, info->c950ctrl + 1); 149 if (info->c950ctrl)
150 outb(12, info->c950ctrl + 1);
150} 151}
151 152
152/* request_region? oxsemi branch does no request_region too... */ 153/* request_region? oxsemi branch does no request_region too... */
@@ -757,6 +758,7 @@ static struct pcmcia_device_id serial_ids[] = {
757 PCMCIA_PFC_DEVICE_PROD_ID12(1, "PCMCIAs", "LanModem", 0xdcfe12d3, 0xc67c648f), 758 PCMCIA_PFC_DEVICE_PROD_ID12(1, "PCMCIAs", "LanModem", 0xdcfe12d3, 0xc67c648f),
758 PCMCIA_PFC_DEVICE_PROD_ID12(1, "TDK", "GlobalNetworker 3410/3412", 0x1eae9475, 0xd9a93bed), 759 PCMCIA_PFC_DEVICE_PROD_ID12(1, "TDK", "GlobalNetworker 3410/3412", 0x1eae9475, 0xd9a93bed),
759 PCMCIA_PFC_DEVICE_PROD_ID12(1, "Xircom", "CreditCard Ethernet+Modem II", 0x2e3ee845, 0xeca401bf), 760 PCMCIA_PFC_DEVICE_PROD_ID12(1, "Xircom", "CreditCard Ethernet+Modem II", 0x2e3ee845, 0xeca401bf),
761 PCMCIA_PFC_DEVICE_MANF_CARD(1, 0x0032, 0x0e01),
760 PCMCIA_PFC_DEVICE_MANF_CARD(1, 0x0032, 0x0a05), 762 PCMCIA_PFC_DEVICE_MANF_CARD(1, 0x0032, 0x0a05),
761 PCMCIA_PFC_DEVICE_MANF_CARD(1, 0x0032, 0x1101), 763 PCMCIA_PFC_DEVICE_MANF_CARD(1, 0x0032, 0x1101),
762 PCMCIA_MFC_DEVICE_MANF_CARD(0, 0x0104, 0x0070), 764 PCMCIA_MFC_DEVICE_MANF_CARD(0, 0x0104, 0x0070),
diff --git a/drivers/spi/spi_sh_msiof.c b/drivers/spi/spi_sh_msiof.c
index 51e5e1dfa6e5..30973ec16a93 100644
--- a/drivers/spi/spi_sh_msiof.c
+++ b/drivers/spi/spi_sh_msiof.c
@@ -173,15 +173,12 @@ static void sh_msiof_spi_set_pin_regs(struct sh_msiof_spi_priv *p,
173 int edge; 173 int edge;
174 174
175 /* 175 /*
176 * CPOL CPHA TSCKIZ RSCKIZ TEDG REDG(!) 176 * CPOL CPHA TSCKIZ RSCKIZ TEDG REDG
177 * 0 0 10 10 1 0 177 * 0 0 10 10 1 1
178 * 0 1 10 10 0 1 178 * 0 1 10 10 0 0
179 * 1 0 11 11 0 1 179 * 1 0 11 11 0 0
180 * 1 1 11 11 1 0 180 * 1 1 11 11 1 1
181 *
182 * (!) Note: REDG is inverted recommended data sheet setting
183 */ 181 */
184
185 sh_msiof_write(p, FCTR, 0); 182 sh_msiof_write(p, FCTR, 0);
186 sh_msiof_write(p, TMDR1, 0xe2000005 | (lsb_first << 24)); 183 sh_msiof_write(p, TMDR1, 0xe2000005 | (lsb_first << 24));
187 sh_msiof_write(p, RMDR1, 0x22000005 | (lsb_first << 24)); 184 sh_msiof_write(p, RMDR1, 0x22000005 | (lsb_first << 24));
@@ -193,7 +190,7 @@ static void sh_msiof_spi_set_pin_regs(struct sh_msiof_spi_priv *p,
193 edge = cpol ? cpha : !cpha; 190 edge = cpol ? cpha : !cpha;
194 191
195 tmp |= edge << 27; /* TEDG */ 192 tmp |= edge << 27; /* TEDG */
196 tmp |= !edge << 26; /* REDG */ 193 tmp |= edge << 26; /* REDG */
197 tmp |= (tx_hi_z ? 2 : 0) << 22; /* TXDIZ */ 194 tmp |= (tx_hi_z ? 2 : 0) << 22; /* TXDIZ */
198 sh_msiof_write(p, CTR, tmp); 195 sh_msiof_write(p, CTR, tmp);
199} 196}
diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig
index 94eb86319ff3..fc2e963e65e9 100644
--- a/drivers/staging/Kconfig
+++ b/drivers/staging/Kconfig
@@ -99,8 +99,6 @@ source "drivers/staging/line6/Kconfig"
99 99
100source "drivers/gpu/drm/vmwgfx/Kconfig" 100source "drivers/gpu/drm/vmwgfx/Kconfig"
101 101
102source "drivers/gpu/drm/radeon/Kconfig"
103
104source "drivers/gpu/drm/nouveau/Kconfig" 102source "drivers/gpu/drm/nouveau/Kconfig"
105 103
106source "drivers/staging/octeon/Kconfig" 104source "drivers/staging/octeon/Kconfig"
diff --git a/drivers/staging/asus_oled/asus_oled.c b/drivers/staging/asus_oled/asus_oled.c
index f4c26572c7df..43c57b7688ab 100644
--- a/drivers/staging/asus_oled/asus_oled.c
+++ b/drivers/staging/asus_oled/asus_oled.c
@@ -194,9 +194,11 @@ static ssize_t set_enabled(struct device *dev, struct device_attribute *attr,
194{ 194{
195 struct usb_interface *intf = to_usb_interface(dev); 195 struct usb_interface *intf = to_usb_interface(dev);
196 struct asus_oled_dev *odev = usb_get_intfdata(intf); 196 struct asus_oled_dev *odev = usb_get_intfdata(intf);
197 int temp = strict_strtoul(buf, 10, NULL); 197 unsigned long value;
198 if (strict_strtoul(buf, 10, &value))
199 return -EINVAL;
198 200
199 enable_oled(odev, temp); 201 enable_oled(odev, value);
200 202
201 return count; 203 return count;
202} 204}
@@ -207,10 +209,12 @@ static ssize_t class_set_enabled(struct device *device,
207{ 209{
208 struct asus_oled_dev *odev = 210 struct asus_oled_dev *odev =
209 (struct asus_oled_dev *) dev_get_drvdata(device); 211 (struct asus_oled_dev *) dev_get_drvdata(device);
212 unsigned long value;
210 213
211 int temp = strict_strtoul(buf, 10, NULL); 214 if (strict_strtoul(buf, 10, &value))
215 return -EINVAL;
212 216
213 enable_oled(odev, temp); 217 enable_oled(odev, value);
214 218
215 return count; 219 return count;
216} 220}
diff --git a/drivers/staging/cx25821/cx25821-medusa-video.c b/drivers/staging/cx25821/cx25821-medusa-video.c
index e4df8134f059..1eb079b3d429 100644
--- a/drivers/staging/cx25821/cx25821-medusa-video.c
+++ b/drivers/staging/cx25821/cx25821-medusa-video.c
@@ -860,10 +860,8 @@ int medusa_video_init(struct cx25821_dev *dev)
860 860
861 ret_val = medusa_set_videostandard(dev); 861 ret_val = medusa_set_videostandard(dev);
862 862
863 if (ret_val < 0) { 863 if (ret_val < 0)
864 mutex_unlock(&dev->lock);
865 return -EINVAL; 864 return -EINVAL;
866 }
867 865
868 return 1; 866 return 1;
869} 867}
diff --git a/drivers/staging/et131x/et1310_address_map.h b/drivers/staging/et131x/et1310_address_map.h
index 6da843cc343c..e715e4dcb523 100644
--- a/drivers/staging/et131x/et1310_address_map.h
+++ b/drivers/staging/et131x/et1310_address_map.h
@@ -203,11 +203,14 @@ typedef struct _GLOBAL_t { /* Location: */
203 * 9-0: pr ndes 203 * 9-0: pr ndes
204 */ 204 */
205 205
206#define ET_DMA10_MASK 0x3FF /* 10 bit mask for DMA10W types */ 206#define ET_DMA12_MASK 0x0FFF /* 12 bit mask for DMA12W types */
207#define ET_DMA10_WRAP 0x400 207#define ET_DMA12_WRAP 0x1000
208#define ET_DMA4_MASK 0x00F /* 4 bit mask for DMA4W types */ 208#define ET_DMA10_MASK 0x03FF /* 10 bit mask for DMA10W types */
209#define ET_DMA4_WRAP 0x010 209#define ET_DMA10_WRAP 0x0400
210 210#define ET_DMA4_MASK 0x000F /* 4 bit mask for DMA4W types */
211#define ET_DMA4_WRAP 0x0010
212
213#define INDEX12(x) ((x) & ET_DMA12_MASK)
211#define INDEX10(x) ((x) & ET_DMA10_MASK) 214#define INDEX10(x) ((x) & ET_DMA10_MASK)
212#define INDEX4(x) ((x) & ET_DMA4_MASK) 215#define INDEX4(x) ((x) & ET_DMA4_MASK)
213 216
@@ -216,6 +219,11 @@ extern inline void add_10bit(u32 *v, int n)
216 *v = INDEX10(*v + n) | (*v & ET_DMA10_WRAP); 219 *v = INDEX10(*v + n) | (*v & ET_DMA10_WRAP);
217} 220}
218 221
222extern inline void add_12bit(u32 *v, int n)
223{
224 *v = INDEX12(*v + n) | (*v & ET_DMA12_WRAP);
225}
226
219/* 227/*
220 * 10bit DMA with wrap 228 * 10bit DMA with wrap
221 * txdma tx queue write address reg in txdma address map at 0x1010 229 * txdma tx queue write address reg in txdma address map at 0x1010
diff --git a/drivers/staging/et131x/et1310_rx.c b/drivers/staging/et131x/et1310_rx.c
index 3ddc9b12b8db..81c1a7478ad6 100644
--- a/drivers/staging/et131x/et1310_rx.c
+++ b/drivers/staging/et131x/et1310_rx.c
@@ -831,10 +831,10 @@ PMP_RFD nic_rx_pkts(struct et131x_adapter *etdev)
831 831
832 /* Indicate that we have used this PSR entry. */ 832 /* Indicate that we have used this PSR entry. */
833 /* FIXME wrap 12 */ 833 /* FIXME wrap 12 */
834 rx_local->local_psr_full = (rx_local->local_psr_full + 1) & 0xFFF; 834 add_12bit(&rx_local->local_psr_full, 1);
835 if (rx_local->local_psr_full > rx_local->PsrNumEntries - 1) { 835 if ((rx_local->local_psr_full & 0xFFF) > rx_local->PsrNumEntries - 1) {
836 /* Clear psr full and toggle the wrap bit */ 836 /* Clear psr full and toggle the wrap bit */
837 rx_local->local_psr_full &= 0xFFF; 837 rx_local->local_psr_full &= ~0xFFF;
838 rx_local->local_psr_full ^= 0x1000; 838 rx_local->local_psr_full ^= 0x1000;
839 } 839 }
840 840
diff --git a/drivers/staging/hv/Hv.c b/drivers/staging/hv/Hv.c
index c5b6613f2f2f..c2809f2a2ce0 100644
--- a/drivers/staging/hv/Hv.c
+++ b/drivers/staging/hv/Hv.c
@@ -386,7 +386,7 @@ u16 HvSignalEvent(void)
386 * retrieve the initialized message and event pages. Otherwise, we create and 386 * retrieve the initialized message and event pages. Otherwise, we create and
387 * initialize the message and event pages. 387 * initialize the message and event pages.
388 */ 388 */
389int HvSynicInit(u32 irqVector) 389void HvSynicInit(void *irqarg)
390{ 390{
391 u64 version; 391 u64 version;
392 union hv_synic_simp simp; 392 union hv_synic_simp simp;
@@ -394,13 +394,14 @@ int HvSynicInit(u32 irqVector)
394 union hv_synic_sint sharedSint; 394 union hv_synic_sint sharedSint;
395 union hv_synic_scontrol sctrl; 395 union hv_synic_scontrol sctrl;
396 u64 guestID; 396 u64 guestID;
397 int ret = 0; 397 u32 irqVector = *((u32 *)(irqarg));
398 int cpu = smp_processor_id();
398 399
399 DPRINT_ENTER(VMBUS); 400 DPRINT_ENTER(VMBUS);
400 401
401 if (!gHvContext.HypercallPage) { 402 if (!gHvContext.HypercallPage) {
402 DPRINT_EXIT(VMBUS); 403 DPRINT_EXIT(VMBUS);
403 return ret; 404 return;
404 } 405 }
405 406
406 /* Check the version */ 407 /* Check the version */
@@ -425,27 +426,27 @@ int HvSynicInit(u32 irqVector)
425 */ 426 */
426 rdmsrl(HV_X64_MSR_GUEST_OS_ID, guestID); 427 rdmsrl(HV_X64_MSR_GUEST_OS_ID, guestID);
427 if (guestID == HV_LINUX_GUEST_ID) { 428 if (guestID == HV_LINUX_GUEST_ID) {
428 gHvContext.synICMessagePage[0] = 429 gHvContext.synICMessagePage[cpu] =
429 phys_to_virt(simp.BaseSimpGpa << PAGE_SHIFT); 430 phys_to_virt(simp.BaseSimpGpa << PAGE_SHIFT);
430 gHvContext.synICEventPage[0] = 431 gHvContext.synICEventPage[cpu] =
431 phys_to_virt(siefp.BaseSiefpGpa << PAGE_SHIFT); 432 phys_to_virt(siefp.BaseSiefpGpa << PAGE_SHIFT);
432 } else { 433 } else {
433 DPRINT_ERR(VMBUS, "unknown guest id!!"); 434 DPRINT_ERR(VMBUS, "unknown guest id!!");
434 goto Cleanup; 435 goto Cleanup;
435 } 436 }
436 DPRINT_DBG(VMBUS, "MAPPED: Simp: %p, Sifep: %p", 437 DPRINT_DBG(VMBUS, "MAPPED: Simp: %p, Sifep: %p",
437 gHvContext.synICMessagePage[0], 438 gHvContext.synICMessagePage[cpu],
438 gHvContext.synICEventPage[0]); 439 gHvContext.synICEventPage[cpu]);
439 } else { 440 } else {
440 gHvContext.synICMessagePage[0] = osd_PageAlloc(1); 441 gHvContext.synICMessagePage[cpu] = (void *)get_zeroed_page(GFP_ATOMIC);
441 if (gHvContext.synICMessagePage[0] == NULL) { 442 if (gHvContext.synICMessagePage[cpu] == NULL) {
442 DPRINT_ERR(VMBUS, 443 DPRINT_ERR(VMBUS,
443 "unable to allocate SYNIC message page!!"); 444 "unable to allocate SYNIC message page!!");
444 goto Cleanup; 445 goto Cleanup;
445 } 446 }
446 447
447 gHvContext.synICEventPage[0] = osd_PageAlloc(1); 448 gHvContext.synICEventPage[cpu] = (void *)get_zeroed_page(GFP_ATOMIC);
448 if (gHvContext.synICEventPage[0] == NULL) { 449 if (gHvContext.synICEventPage[cpu] == NULL) {
449 DPRINT_ERR(VMBUS, 450 DPRINT_ERR(VMBUS,
450 "unable to allocate SYNIC event page!!"); 451 "unable to allocate SYNIC event page!!");
451 goto Cleanup; 452 goto Cleanup;
@@ -454,7 +455,7 @@ int HvSynicInit(u32 irqVector)
454 /* Setup the Synic's message page */ 455 /* Setup the Synic's message page */
455 rdmsrl(HV_X64_MSR_SIMP, simp.AsUINT64); 456 rdmsrl(HV_X64_MSR_SIMP, simp.AsUINT64);
456 simp.SimpEnabled = 1; 457 simp.SimpEnabled = 1;
457 simp.BaseSimpGpa = virt_to_phys(gHvContext.synICMessagePage[0]) 458 simp.BaseSimpGpa = virt_to_phys(gHvContext.synICMessagePage[cpu])
458 >> PAGE_SHIFT; 459 >> PAGE_SHIFT;
459 460
460 DPRINT_DBG(VMBUS, "HV_X64_MSR_SIMP msr set to: %llx", 461 DPRINT_DBG(VMBUS, "HV_X64_MSR_SIMP msr set to: %llx",
@@ -465,7 +466,7 @@ int HvSynicInit(u32 irqVector)
465 /* Setup the Synic's event page */ 466 /* Setup the Synic's event page */
466 rdmsrl(HV_X64_MSR_SIEFP, siefp.AsUINT64); 467 rdmsrl(HV_X64_MSR_SIEFP, siefp.AsUINT64);
467 siefp.SiefpEnabled = 1; 468 siefp.SiefpEnabled = 1;
468 siefp.BaseSiefpGpa = virt_to_phys(gHvContext.synICEventPage[0]) 469 siefp.BaseSiefpGpa = virt_to_phys(gHvContext.synICEventPage[cpu])
469 >> PAGE_SHIFT; 470 >> PAGE_SHIFT;
470 471
471 DPRINT_DBG(VMBUS, "HV_X64_MSR_SIEFP msr set to: %llx", 472 DPRINT_DBG(VMBUS, "HV_X64_MSR_SIEFP msr set to: %llx",
@@ -501,32 +502,30 @@ int HvSynicInit(u32 irqVector)
501 502
502 DPRINT_EXIT(VMBUS); 503 DPRINT_EXIT(VMBUS);
503 504
504 return ret; 505 return;
505 506
506Cleanup: 507Cleanup:
507 ret = -1;
508
509 if (gHvContext.GuestId == HV_LINUX_GUEST_ID) { 508 if (gHvContext.GuestId == HV_LINUX_GUEST_ID) {
510 if (gHvContext.synICEventPage[0]) 509 if (gHvContext.synICEventPage[cpu])
511 osd_PageFree(gHvContext.synICEventPage[0], 1); 510 osd_PageFree(gHvContext.synICEventPage[cpu], 1);
512 511
513 if (gHvContext.synICMessagePage[0]) 512 if (gHvContext.synICMessagePage[cpu])
514 osd_PageFree(gHvContext.synICMessagePage[0], 1); 513 osd_PageFree(gHvContext.synICMessagePage[cpu], 1);
515 } 514 }
516 515
517 DPRINT_EXIT(VMBUS); 516 DPRINT_EXIT(VMBUS);
518 517 return;
519 return ret;
520} 518}
521 519
522/** 520/**
523 * HvSynicCleanup - Cleanup routine for HvSynicInit(). 521 * HvSynicCleanup - Cleanup routine for HvSynicInit().
524 */ 522 */
525void HvSynicCleanup(void) 523void HvSynicCleanup(void *arg)
526{ 524{
527 union hv_synic_sint sharedSint; 525 union hv_synic_sint sharedSint;
528 union hv_synic_simp simp; 526 union hv_synic_simp simp;
529 union hv_synic_siefp siefp; 527 union hv_synic_siefp siefp;
528 int cpu = smp_processor_id();
530 529
531 DPRINT_ENTER(VMBUS); 530 DPRINT_ENTER(VMBUS);
532 531
@@ -539,6 +538,7 @@ void HvSynicCleanup(void)
539 538
540 sharedSint.Masked = 1; 539 sharedSint.Masked = 1;
541 540
541 /* Need to correctly cleanup in the case of SMP!!! */
542 /* Disable the interrupt */ 542 /* Disable the interrupt */
543 wrmsrl(HV_X64_MSR_SINT0 + VMBUS_MESSAGE_SINT, sharedSint.AsUINT64); 543 wrmsrl(HV_X64_MSR_SINT0 + VMBUS_MESSAGE_SINT, sharedSint.AsUINT64);
544 544
@@ -560,8 +560,8 @@ void HvSynicCleanup(void)
560 560
561 wrmsrl(HV_X64_MSR_SIEFP, siefp.AsUINT64); 561 wrmsrl(HV_X64_MSR_SIEFP, siefp.AsUINT64);
562 562
563 osd_PageFree(gHvContext.synICMessagePage[0], 1); 563 osd_PageFree(gHvContext.synICMessagePage[cpu], 1);
564 osd_PageFree(gHvContext.synICEventPage[0], 1); 564 osd_PageFree(gHvContext.synICEventPage[cpu], 1);
565 } 565 }
566 566
567 DPRINT_EXIT(VMBUS); 567 DPRINT_EXIT(VMBUS);
diff --git a/drivers/staging/hv/Hv.h b/drivers/staging/hv/Hv.h
index 5379e4bfc56e..fce4b5cdac30 100644
--- a/drivers/staging/hv/Hv.h
+++ b/drivers/staging/hv/Hv.h
@@ -93,7 +93,7 @@ static const struct hv_guid VMBUS_SERVICE_ID = {
93 }, 93 },
94}; 94};
95 95
96#define MAX_NUM_CPUS 1 96#define MAX_NUM_CPUS 32
97 97
98 98
99struct hv_input_signal_event_buffer { 99struct hv_input_signal_event_buffer {
@@ -137,8 +137,8 @@ extern u16 HvPostMessage(union hv_connection_id connectionId,
137 137
138extern u16 HvSignalEvent(void); 138extern u16 HvSignalEvent(void);
139 139
140extern int HvSynicInit(u32 irqVector); 140extern void HvSynicInit(void *irqarg);
141 141
142extern void HvSynicCleanup(void); 142extern void HvSynicCleanup(void *arg);
143 143
144#endif /* __HV_H__ */ 144#endif /* __HV_H__ */
diff --git a/drivers/staging/hv/Vmbus.c b/drivers/staging/hv/Vmbus.c
index a4dd06f6d459..35a023e9f9d1 100644
--- a/drivers/staging/hv/Vmbus.c
+++ b/drivers/staging/hv/Vmbus.c
@@ -129,7 +129,7 @@ static int VmbusOnDeviceAdd(struct hv_device *dev, void *AdditionalInfo)
129 129
130 /* strcpy(dev->name, "vmbus"); */ 130 /* strcpy(dev->name, "vmbus"); */
131 /* SynIC setup... */ 131 /* SynIC setup... */
132 ret = HvSynicInit(*irqvector); 132 on_each_cpu(HvSynicInit, (void *)irqvector, 1);
133 133
134 /* Connect to VMBus in the root partition */ 134 /* Connect to VMBus in the root partition */
135 ret = VmbusConnect(); 135 ret = VmbusConnect();
@@ -150,7 +150,7 @@ static int VmbusOnDeviceRemove(struct hv_device *dev)
150 DPRINT_ENTER(VMBUS); 150 DPRINT_ENTER(VMBUS);
151 VmbusChannelReleaseUnattachedChannels(); 151 VmbusChannelReleaseUnattachedChannels();
152 VmbusDisconnect(); 152 VmbusDisconnect();
153 HvSynicCleanup(); 153 on_each_cpu(HvSynicCleanup, NULL, 1);
154 DPRINT_EXIT(VMBUS); 154 DPRINT_EXIT(VMBUS);
155 155
156 return ret; 156 return ret;
@@ -173,7 +173,8 @@ static void VmbusOnCleanup(struct hv_driver *drv)
173 */ 173 */
174static void VmbusOnMsgDPC(struct hv_driver *drv) 174static void VmbusOnMsgDPC(struct hv_driver *drv)
175{ 175{
176 void *page_addr = gHvContext.synICMessagePage[0]; 176 int cpu = smp_processor_id();
177 void *page_addr = gHvContext.synICMessagePage[cpu];
177 struct hv_message *msg = (struct hv_message *)page_addr + 178 struct hv_message *msg = (struct hv_message *)page_addr +
178 VMBUS_MESSAGE_SINT; 179 VMBUS_MESSAGE_SINT;
179 struct hv_message *copied; 180 struct hv_message *copied;
@@ -230,11 +231,12 @@ static void VmbusOnEventDPC(struct hv_driver *drv)
230static int VmbusOnISR(struct hv_driver *drv) 231static int VmbusOnISR(struct hv_driver *drv)
231{ 232{
232 int ret = 0; 233 int ret = 0;
234 int cpu = smp_processor_id();
233 void *page_addr; 235 void *page_addr;
234 struct hv_message *msg; 236 struct hv_message *msg;
235 union hv_synic_event_flags *event; 237 union hv_synic_event_flags *event;
236 238
237 page_addr = gHvContext.synICMessagePage[0]; 239 page_addr = gHvContext.synICMessagePage[cpu];
238 msg = (struct hv_message *)page_addr + VMBUS_MESSAGE_SINT; 240 msg = (struct hv_message *)page_addr + VMBUS_MESSAGE_SINT;
239 241
240 DPRINT_ENTER(VMBUS); 242 DPRINT_ENTER(VMBUS);
@@ -248,7 +250,7 @@ static int VmbusOnISR(struct hv_driver *drv)
248 } 250 }
249 251
250 /* TODO: Check if there are events to be process */ 252 /* TODO: Check if there are events to be process */
251 page_addr = gHvContext.synICEventPage[0]; 253 page_addr = gHvContext.synICEventPage[cpu];
252 event = (union hv_synic_event_flags *)page_addr + VMBUS_MESSAGE_SINT; 254 event = (union hv_synic_event_flags *)page_addr + VMBUS_MESSAGE_SINT;
253 255
254 /* Since we are a child, we only need to check bit 0 */ 256 /* Since we are a child, we only need to check bit 0 */
diff --git a/drivers/usb/core/devices.c b/drivers/usb/core/devices.c
index 96f11715cd26..355dffcc23b0 100644
--- a/drivers/usb/core/devices.c
+++ b/drivers/usb/core/devices.c
@@ -494,7 +494,7 @@ static ssize_t usb_device_dump(char __user **buffer, size_t *nbytes,
494 return 0; 494 return 0;
495 /* allocate 2^1 pages = 8K (on i386); 495 /* allocate 2^1 pages = 8K (on i386);
496 * should be more than enough for one device */ 496 * should be more than enough for one device */
497 pages_start = (char *)__get_free_pages(GFP_KERNEL, 1); 497 pages_start = (char *)__get_free_pages(GFP_NOIO, 1);
498 if (!pages_start) 498 if (!pages_start)
499 return -ENOMEM; 499 return -ENOMEM;
500 500
diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
index 0495fa651225..80995ef0868c 100644
--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
@@ -1684,6 +1684,24 @@ int usb_hcd_alloc_bandwidth(struct usb_device *udev,
1684 } 1684 }
1685 } 1685 }
1686 if (cur_alt && new_alt) { 1686 if (cur_alt && new_alt) {
1687 struct usb_interface *iface = usb_ifnum_to_if(udev,
1688 cur_alt->desc.bInterfaceNumber);
1689
1690 if (iface->resetting_device) {
1691 /*
1692 * The USB core just reset the device, so the xHCI host
1693 * and the device will think alt setting 0 is installed.
1694 * However, the USB core will pass in the alternate
1695 * setting installed before the reset as cur_alt. Dig
1696 * out the alternate setting 0 structure, or the first
1697 * alternate setting if a broken device doesn't have alt
1698 * setting 0.
1699 */
1700 cur_alt = usb_altnum_to_altsetting(iface, 0);
1701 if (!cur_alt)
1702 cur_alt = &iface->altsetting[0];
1703 }
1704
1687 /* Drop all the endpoints in the current alt setting */ 1705 /* Drop all the endpoints in the current alt setting */
1688 for (i = 0; i < cur_alt->desc.bNumEndpoints; i++) { 1706 for (i = 0; i < cur_alt->desc.bNumEndpoints; i++) {
1689 ret = hcd->driver->drop_endpoint(hcd, udev, 1707 ret = hcd->driver->drop_endpoint(hcd, udev,
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index 0cec6caf6e9b..35cc8b9ba1f5 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -3347,6 +3347,9 @@ static void hub_events(void)
3347 USB_PORT_FEAT_C_SUSPEND); 3347 USB_PORT_FEAT_C_SUSPEND);
3348 udev = hdev->children[i-1]; 3348 udev = hdev->children[i-1];
3349 if (udev) { 3349 if (udev) {
3350 /* TRSMRCY = 10 msec */
3351 msleep(10);
3352
3350 usb_lock_device(udev); 3353 usb_lock_device(udev);
3351 ret = remote_wakeup(hdev-> 3354 ret = remote_wakeup(hdev->
3352 children[i-1]); 3355 children[i-1]);
@@ -3692,19 +3695,14 @@ static int usb_reset_and_verify_device(struct usb_device *udev)
3692 usb_enable_interface(udev, intf, true); 3695 usb_enable_interface(udev, intf, true);
3693 ret = 0; 3696 ret = 0;
3694 } else { 3697 } else {
3695 /* We've just reset the device, so it will think alt 3698 /* Let the bandwidth allocation function know that this
3696 * setting 0 is installed. For usb_set_interface() to 3699 * device has been reset, and it will have to use
3697 * work properly, we need to set the current alternate 3700 * alternate setting 0 as the current alternate setting.
3698 * interface setting to 0 (or the first alt setting, if
3699 * the device doesn't have alt setting 0).
3700 */ 3701 */
3701 intf->cur_altsetting = 3702 intf->resetting_device = 1;
3702 usb_find_alt_setting(config, i, 0);
3703 if (!intf->cur_altsetting)
3704 intf->cur_altsetting =
3705 &config->intf_cache[i]->altsetting[0];
3706 ret = usb_set_interface(udev, desc->bInterfaceNumber, 3703 ret = usb_set_interface(udev, desc->bInterfaceNumber,
3707 desc->bAlternateSetting); 3704 desc->bAlternateSetting);
3705 intf->resetting_device = 0;
3708 } 3706 }
3709 if (ret < 0) { 3707 if (ret < 0) {
3710 dev_err(&udev->dev, "failed to restore interface %d " 3708 dev_err(&udev->dev, "failed to restore interface %d "
diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c
index 1b994846e8e0..9bc95fec793f 100644
--- a/drivers/usb/core/message.c
+++ b/drivers/usb/core/message.c
@@ -906,11 +906,11 @@ char *usb_cache_string(struct usb_device *udev, int index)
906 if (index <= 0) 906 if (index <= 0)
907 return NULL; 907 return NULL;
908 908
909 buf = kmalloc(MAX_USB_STRING_SIZE, GFP_KERNEL); 909 buf = kmalloc(MAX_USB_STRING_SIZE, GFP_NOIO);
910 if (buf) { 910 if (buf) {
911 len = usb_string(udev, index, buf, MAX_USB_STRING_SIZE); 911 len = usb_string(udev, index, buf, MAX_USB_STRING_SIZE);
912 if (len > 0) { 912 if (len > 0) {
913 smallbuf = kmalloc(++len, GFP_KERNEL); 913 smallbuf = kmalloc(++len, GFP_NOIO);
914 if (!smallbuf) 914 if (!smallbuf)
915 return buf; 915 return buf;
916 memcpy(smallbuf, buf, len); 916 memcpy(smallbuf, buf, len);
@@ -1731,7 +1731,7 @@ int usb_set_configuration(struct usb_device *dev, int configuration)
1731 if (cp) { 1731 if (cp) {
1732 nintf = cp->desc.bNumInterfaces; 1732 nintf = cp->desc.bNumInterfaces;
1733 new_interfaces = kmalloc(nintf * sizeof(*new_interfaces), 1733 new_interfaces = kmalloc(nintf * sizeof(*new_interfaces),
1734 GFP_KERNEL); 1734 GFP_NOIO);
1735 if (!new_interfaces) { 1735 if (!new_interfaces) {
1736 dev_err(&dev->dev, "Out of memory\n"); 1736 dev_err(&dev->dev, "Out of memory\n");
1737 return -ENOMEM; 1737 return -ENOMEM;
@@ -1740,7 +1740,7 @@ int usb_set_configuration(struct usb_device *dev, int configuration)
1740 for (; n < nintf; ++n) { 1740 for (; n < nintf; ++n) {
1741 new_interfaces[n] = kzalloc( 1741 new_interfaces[n] = kzalloc(
1742 sizeof(struct usb_interface), 1742 sizeof(struct usb_interface),
1743 GFP_KERNEL); 1743 GFP_NOIO);
1744 if (!new_interfaces[n]) { 1744 if (!new_interfaces[n]) {
1745 dev_err(&dev->dev, "Out of memory\n"); 1745 dev_err(&dev->dev, "Out of memory\n");
1746 ret = -ENOMEM; 1746 ret = -ENOMEM;
diff --git a/drivers/usb/core/sysfs.c b/drivers/usb/core/sysfs.c
index 485edf937f25..5f3908f6e2dc 100644
--- a/drivers/usb/core/sysfs.c
+++ b/drivers/usb/core/sysfs.c
@@ -115,6 +115,12 @@ show_speed(struct device *dev, struct device_attribute *attr, char *buf)
115 case USB_SPEED_HIGH: 115 case USB_SPEED_HIGH:
116 speed = "480"; 116 speed = "480";
117 break; 117 break;
118 case USB_SPEED_VARIABLE:
119 speed = "480";
120 break;
121 case USB_SPEED_SUPER:
122 speed = "5000";
123 break;
118 default: 124 default:
119 speed = "unknown"; 125 speed = "unknown";
120 } 126 }
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
index 5859522d6edd..1ec3857f22e6 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -787,9 +787,10 @@ static irqreturn_t ehci_irq (struct usb_hcd *hcd)
787 787
788 /* start 20 msec resume signaling from this port, 788 /* start 20 msec resume signaling from this port,
789 * and make khubd collect PORT_STAT_C_SUSPEND to 789 * and make khubd collect PORT_STAT_C_SUSPEND to
790 * stop that signaling. 790 * stop that signaling. Use 5 ms extra for safety,
791 * like usb_port_resume() does.
791 */ 792 */
792 ehci->reset_done [i] = jiffies + msecs_to_jiffies (20); 793 ehci->reset_done[i] = jiffies + msecs_to_jiffies(25);
793 ehci_dbg (ehci, "port %d remote wakeup\n", i + 1); 794 ehci_dbg (ehci, "port %d remote wakeup\n", i + 1);
794 mod_timer(&hcd->rh_timer, ehci->reset_done[i]); 795 mod_timer(&hcd->rh_timer, ehci->reset_done[i]);
795 } 796 }
diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c
index 2c6571c05f35..c75d9270c752 100644
--- a/drivers/usb/host/ehci-hub.c
+++ b/drivers/usb/host/ehci-hub.c
@@ -120,9 +120,26 @@ static int ehci_bus_suspend (struct usb_hcd *hcd)
120 del_timer_sync(&ehci->watchdog); 120 del_timer_sync(&ehci->watchdog);
121 del_timer_sync(&ehci->iaa_watchdog); 121 del_timer_sync(&ehci->iaa_watchdog);
122 122
123 port = HCS_N_PORTS (ehci->hcs_params);
124 spin_lock_irq (&ehci->lock); 123 spin_lock_irq (&ehci->lock);
125 124
125 /* Once the controller is stopped, port resumes that are already
126 * in progress won't complete. Hence if remote wakeup is enabled
127 * for the root hub and any ports are in the middle of a resume or
128 * remote wakeup, we must fail the suspend.
129 */
130 if (hcd->self.root_hub->do_remote_wakeup) {
131 port = HCS_N_PORTS(ehci->hcs_params);
132 while (port--) {
133 if (ehci->reset_done[port] != 0) {
134 spin_unlock_irq(&ehci->lock);
135 ehci_dbg(ehci, "suspend failed because "
136 "port %d is resuming\n",
137 port + 1);
138 return -EBUSY;
139 }
140 }
141 }
142
126 /* stop schedules, clean any completed work */ 143 /* stop schedules, clean any completed work */
127 if (HC_IS_RUNNING(hcd->state)) { 144 if (HC_IS_RUNNING(hcd->state)) {
128 ehci_quiesce (ehci); 145 ehci_quiesce (ehci);
@@ -138,6 +155,7 @@ static int ehci_bus_suspend (struct usb_hcd *hcd)
138 */ 155 */
139 ehci->bus_suspended = 0; 156 ehci->bus_suspended = 0;
140 ehci->owned_ports = 0; 157 ehci->owned_ports = 0;
158 port = HCS_N_PORTS(ehci->hcs_params);
141 while (port--) { 159 while (port--) {
142 u32 __iomem *reg = &ehci->regs->port_status [port]; 160 u32 __iomem *reg = &ehci->regs->port_status [port];
143 u32 t1 = ehci_readl(ehci, reg) & ~PORT_RWC_BITS; 161 u32 t1 = ehci_readl(ehci, reg) & ~PORT_RWC_BITS;
diff --git a/drivers/usb/host/ehci-q.c b/drivers/usb/host/ehci-q.c
index a427d3b00634..89521775c567 100644
--- a/drivers/usb/host/ehci-q.c
+++ b/drivers/usb/host/ehci-q.c
@@ -849,9 +849,10 @@ qh_make (
849 * But interval 1 scheduling is simpler, and 849 * But interval 1 scheduling is simpler, and
850 * includes high bandwidth. 850 * includes high bandwidth.
851 */ 851 */
852 dbg ("intr period %d uframes, NYET!", 852 urb->interval = 1;
853 urb->interval); 853 } else if (qh->period > ehci->periodic_size) {
854 goto done; 854 qh->period = ehci->periodic_size;
855 urb->interval = qh->period << 3;
855 } 856 }
856 } else { 857 } else {
857 int think_time; 858 int think_time;
@@ -874,6 +875,10 @@ qh_make (
874 usb_calc_bus_time (urb->dev->speed, 875 usb_calc_bus_time (urb->dev->speed,
875 is_input, 0, max_packet (maxp))); 876 is_input, 0, max_packet (maxp)));
876 qh->period = urb->interval; 877 qh->period = urb->interval;
878 if (qh->period > ehci->periodic_size) {
879 qh->period = ehci->periodic_size;
880 urb->interval = qh->period;
881 }
877 } 882 }
878 } 883 }
879 884
diff --git a/drivers/usb/host/fhci-hcd.c b/drivers/usb/host/fhci-hcd.c
index 0951818ef93b..78e7c3cfcb72 100644
--- a/drivers/usb/host/fhci-hcd.c
+++ b/drivers/usb/host/fhci-hcd.c
@@ -242,9 +242,10 @@ err:
242static void fhci_usb_free(void *lld) 242static void fhci_usb_free(void *lld)
243{ 243{
244 struct fhci_usb *usb = lld; 244 struct fhci_usb *usb = lld;
245 struct fhci_hcd *fhci = usb->fhci; 245 struct fhci_hcd *fhci;
246 246
247 if (usb) { 247 if (usb) {
248 fhci = usb->fhci;
248 fhci_config_transceiver(fhci, FHCI_PORT_POWER_OFF); 249 fhci_config_transceiver(fhci, FHCI_PORT_POWER_OFF);
249 fhci_ep0_free(usb); 250 fhci_ep0_free(usb);
250 kfree(usb->actual_frame); 251 kfree(usb->actual_frame);
diff --git a/drivers/usb/host/isp1362-hcd.c b/drivers/usb/host/isp1362-hcd.c
index 73352f3739b5..42971657fde2 100644
--- a/drivers/usb/host/isp1362-hcd.c
+++ b/drivers/usb/host/isp1362-hcd.c
@@ -2270,10 +2270,10 @@ static int isp1362_mem_config(struct usb_hcd *hcd)
2270 dev_info(hcd->self.controller, "ISP1362 Memory usage:\n"); 2270 dev_info(hcd->self.controller, "ISP1362 Memory usage:\n");
2271 dev_info(hcd->self.controller, " ISTL: 2 * %4d: %4d @ $%04x:$%04x\n", 2271 dev_info(hcd->self.controller, " ISTL: 2 * %4d: %4d @ $%04x:$%04x\n",
2272 istl_size / 2, istl_size, 0, istl_size / 2); 2272 istl_size / 2, istl_size, 0, istl_size / 2);
2273 dev_info(hcd->self.controller, " INTL: %4d * (%3lu+8): %4d @ $%04x\n", 2273 dev_info(hcd->self.controller, " INTL: %4d * (%3zu+8): %4d @ $%04x\n",
2274 ISP1362_INTL_BUFFERS, intl_blksize - PTD_HEADER_SIZE, 2274 ISP1362_INTL_BUFFERS, intl_blksize - PTD_HEADER_SIZE,
2275 intl_size, istl_size); 2275 intl_size, istl_size);
2276 dev_info(hcd->self.controller, " ATL : %4d * (%3lu+8): %4d @ $%04x\n", 2276 dev_info(hcd->self.controller, " ATL : %4d * (%3zu+8): %4d @ $%04x\n",
2277 atl_buffers, atl_blksize - PTD_HEADER_SIZE, 2277 atl_buffers, atl_blksize - PTD_HEADER_SIZE,
2278 atl_size, istl_size + intl_size); 2278 atl_size, istl_size + intl_size);
2279 dev_info(hcd->self.controller, " USED/FREE: %4d %4d\n", total, 2279 dev_info(hcd->self.controller, " USED/FREE: %4d %4d\n", total,
@@ -2697,6 +2697,8 @@ static int __init isp1362_probe(struct platform_device *pdev)
2697 void __iomem *data_reg; 2697 void __iomem *data_reg;
2698 int irq; 2698 int irq;
2699 int retval = 0; 2699 int retval = 0;
2700 struct resource *irq_res;
2701 unsigned int irq_flags = 0;
2700 2702
2701 /* basic sanity checks first. board-specific init logic should 2703 /* basic sanity checks first. board-specific init logic should
2702 * have initialized this the three resources and probably board 2704 * have initialized this the three resources and probably board
@@ -2710,11 +2712,12 @@ static int __init isp1362_probe(struct platform_device *pdev)
2710 2712
2711 data = platform_get_resource(pdev, IORESOURCE_MEM, 0); 2713 data = platform_get_resource(pdev, IORESOURCE_MEM, 0);
2712 addr = platform_get_resource(pdev, IORESOURCE_MEM, 1); 2714 addr = platform_get_resource(pdev, IORESOURCE_MEM, 1);
2713 irq = platform_get_irq(pdev, 0); 2715 irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
2714 if (!addr || !data || irq < 0) { 2716 if (!addr || !data || !irq_res) {
2715 retval = -ENODEV; 2717 retval = -ENODEV;
2716 goto err1; 2718 goto err1;
2717 } 2719 }
2720 irq = irq_res->start;
2718 2721
2719#ifdef CONFIG_USB_HCD_DMA 2722#ifdef CONFIG_USB_HCD_DMA
2720 if (pdev->dev.dma_mask) { 2723 if (pdev->dev.dma_mask) {
@@ -2781,12 +2784,16 @@ static int __init isp1362_probe(struct platform_device *pdev)
2781 } 2784 }
2782#endif 2785#endif
2783 2786
2784#ifdef CONFIG_ARM 2787 if (irq_res->flags & IORESOURCE_IRQ_HIGHEDGE)
2785 if (isp1362_hcd->board) 2788 irq_flags |= IRQF_TRIGGER_RISING;
2786 set_irq_type(irq, isp1362_hcd->board->int_act_high ? IRQT_RISING : IRQT_FALLING); 2789 if (irq_res->flags & IORESOURCE_IRQ_LOWEDGE)
2787#endif 2790 irq_flags |= IRQF_TRIGGER_FALLING;
2791 if (irq_res->flags & IORESOURCE_IRQ_HIGHLEVEL)
2792 irq_flags |= IRQF_TRIGGER_HIGH;
2793 if (irq_res->flags & IORESOURCE_IRQ_LOWLEVEL)
2794 irq_flags |= IRQF_TRIGGER_LOW;
2788 2795
2789 retval = usb_add_hcd(hcd, irq, IRQF_TRIGGER_LOW | IRQF_DISABLED | IRQF_SHARED); 2796 retval = usb_add_hcd(hcd, irq, irq_flags | IRQF_DISABLED | IRQF_SHARED);
2790 if (retval != 0) 2797 if (retval != 0)
2791 goto err6; 2798 goto err6;
2792 pr_info("%s, irq %d\n", hcd->product_desc, irq); 2799 pr_info("%s, irq %d\n", hcd->product_desc, irq);
diff --git a/drivers/usb/host/isp1760-hcd.c b/drivers/usb/host/isp1760-hcd.c
index 9600a58299db..27b8f7cb4471 100644
--- a/drivers/usb/host/isp1760-hcd.c
+++ b/drivers/usb/host/isp1760-hcd.c
@@ -1039,12 +1039,12 @@ static void do_atl_int(struct usb_hcd *usb_hcd)
1039 if (!nakcount && (dw3 & DW3_QTD_ACTIVE)) { 1039 if (!nakcount && (dw3 & DW3_QTD_ACTIVE)) {
1040 u32 buffstatus; 1040 u32 buffstatus;
1041 1041
1042 /* XXX 1042 /*
1043 * NAKs are handled in HW by the chip. Usually if the 1043 * NAKs are handled in HW by the chip. Usually if the
1044 * device is not able to send data fast enough. 1044 * device is not able to send data fast enough.
1045 * This did not trigger for a long time now. 1045 * This happens mostly on slower hardware.
1046 */ 1046 */
1047 printk(KERN_ERR "Reloading ptd %p/%p... qh %p readed: " 1047 printk(KERN_NOTICE "Reloading ptd %p/%p... qh %p read: "
1048 "%d of %zu done: %08x cur: %08x\n", qtd, 1048 "%d of %zu done: %08x cur: %08x\n", qtd,
1049 urb, qh, PTD_XFERRED_LENGTH(dw3), 1049 urb, qh, PTD_XFERRED_LENGTH(dw3),
1050 qtd->length, done_map, 1050 qtd->length, done_map,
diff --git a/drivers/usb/host/r8a66597-hcd.c b/drivers/usb/host/r8a66597-hcd.c
index b7a661c02bcd..0ceec123ddfd 100644
--- a/drivers/usb/host/r8a66597-hcd.c
+++ b/drivers/usb/host/r8a66597-hcd.c
@@ -216,8 +216,17 @@ static void disable_controller(struct r8a66597 *r8a66597)
216{ 216{
217 int port; 217 int port;
218 218
219 /* disable interrupts */
219 r8a66597_write(r8a66597, 0, INTENB0); 220 r8a66597_write(r8a66597, 0, INTENB0);
220 r8a66597_write(r8a66597, 0, INTSTS0); 221 r8a66597_write(r8a66597, 0, INTENB1);
222 r8a66597_write(r8a66597, 0, BRDYENB);
223 r8a66597_write(r8a66597, 0, BEMPENB);
224 r8a66597_write(r8a66597, 0, NRDYENB);
225
226 /* clear status */
227 r8a66597_write(r8a66597, 0, BRDYSTS);
228 r8a66597_write(r8a66597, 0, NRDYSTS);
229 r8a66597_write(r8a66597, 0, BEMPSTS);
221 230
222 for (port = 0; port < r8a66597->max_root_hub; port++) 231 for (port = 0; port < r8a66597->max_root_hub; port++)
223 r8a66597_disable_port(r8a66597, port); 232 r8a66597_disable_port(r8a66597, port);
@@ -2466,6 +2475,12 @@ static int __devinit r8a66597_probe(struct platform_device *pdev)
2466 r8a66597->rh_timer.data = (unsigned long)r8a66597; 2475 r8a66597->rh_timer.data = (unsigned long)r8a66597;
2467 r8a66597->reg = (unsigned long)reg; 2476 r8a66597->reg = (unsigned long)reg;
2468 2477
2478 /* make sure no interrupts are pending */
2479 ret = r8a66597_clock_enable(r8a66597);
2480 if (ret < 0)
2481 goto clean_up3;
2482 disable_controller(r8a66597);
2483
2469 for (i = 0; i < R8A66597_MAX_NUM_PIPE; i++) { 2484 for (i = 0; i < R8A66597_MAX_NUM_PIPE; i++) {
2470 INIT_LIST_HEAD(&r8a66597->pipe_queue[i]); 2485 INIT_LIST_HEAD(&r8a66597->pipe_queue[i]);
2471 init_timer(&r8a66597->td_timer[i]); 2486 init_timer(&r8a66597->td_timer[i]);
diff --git a/drivers/usb/host/uhci-hcd.c b/drivers/usb/host/uhci-hcd.c
index 5cd0e48f67fb..99cd00fd3514 100644
--- a/drivers/usb/host/uhci-hcd.c
+++ b/drivers/usb/host/uhci-hcd.c
@@ -749,7 +749,20 @@ static int uhci_rh_suspend(struct usb_hcd *hcd)
749 spin_lock_irq(&uhci->lock); 749 spin_lock_irq(&uhci->lock);
750 if (!test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags)) 750 if (!test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags))
751 rc = -ESHUTDOWN; 751 rc = -ESHUTDOWN;
752 else if (!uhci->dead) 752 else if (uhci->dead)
753 ; /* Dead controllers tell no tales */
754
755 /* Once the controller is stopped, port resumes that are already
756 * in progress won't complete. Hence if remote wakeup is enabled
757 * for the root hub and any ports are in the middle of a resume or
758 * remote wakeup, we must fail the suspend.
759 */
760 else if (hcd->self.root_hub->do_remote_wakeup &&
761 uhci->resuming_ports) {
762 dev_dbg(uhci_dev(uhci), "suspend failed because a port "
763 "is resuming\n");
764 rc = -EBUSY;
765 } else
753 suspend_rh(uhci, UHCI_RH_SUSPENDED); 766 suspend_rh(uhci, UHCI_RH_SUSPENDED);
754 spin_unlock_irq(&uhci->lock); 767 spin_unlock_irq(&uhci->lock);
755 return rc; 768 return rc;
diff --git a/drivers/usb/host/uhci-hub.c b/drivers/usb/host/uhci-hub.c
index 885b585360b9..8270055848ca 100644
--- a/drivers/usb/host/uhci-hub.c
+++ b/drivers/usb/host/uhci-hub.c
@@ -167,7 +167,7 @@ static void uhci_check_ports(struct uhci_hcd *uhci)
167 /* Port received a wakeup request */ 167 /* Port received a wakeup request */
168 set_bit(port, &uhci->resuming_ports); 168 set_bit(port, &uhci->resuming_ports);
169 uhci->ports_timeout = jiffies + 169 uhci->ports_timeout = jiffies +
170 msecs_to_jiffies(20); 170 msecs_to_jiffies(25);
171 171
172 /* Make sure we see the port again 172 /* Make sure we see the port again
173 * after the resuming period is over. */ 173 * after the resuming period is over. */
diff --git a/drivers/usb/serial/generic.c b/drivers/usb/serial/generic.c
index f1ea3a33b6e6..83443d6306d6 100644
--- a/drivers/usb/serial/generic.c
+++ b/drivers/usb/serial/generic.c
@@ -386,12 +386,12 @@ int usb_serial_generic_chars_in_buffer(struct tty_struct *tty)
386 386
387 dbg("%s - port %d", __func__, port->number); 387 dbg("%s - port %d", __func__, port->number);
388 388
389 if (serial->type->max_in_flight_urbs) { 389 spin_lock_irqsave(&port->lock, flags);
390 spin_lock_irqsave(&port->lock, flags); 390 if (serial->type->max_in_flight_urbs)
391 chars = port->tx_bytes_flight; 391 chars = port->tx_bytes_flight;
392 spin_unlock_irqrestore(&port->lock, flags); 392 else if (serial->num_bulk_out)
393 } else if (serial->num_bulk_out)
394 chars = kfifo_len(&port->write_fifo); 393 chars = kfifo_len(&port->write_fifo);
394 spin_unlock_irqrestore(&port->lock, flags);
395 395
396 dbg("%s - returns %d", __func__, chars); 396 dbg("%s - returns %d", __func__, chars);
397 return chars; 397 return chars;
@@ -489,6 +489,8 @@ void usb_serial_generic_write_bulk_callback(struct urb *urb)
489 dbg("%s - port %d", __func__, port->number); 489 dbg("%s - port %d", __func__, port->number);
490 490
491 if (port->serial->type->max_in_flight_urbs) { 491 if (port->serial->type->max_in_flight_urbs) {
492 kfree(urb->transfer_buffer);
493
492 spin_lock_irqsave(&port->lock, flags); 494 spin_lock_irqsave(&port->lock, flags);
493 --port->urbs_in_flight; 495 --port->urbs_in_flight;
494 port->tx_bytes_flight -= urb->transfer_buffer_length; 496 port->tx_bytes_flight -= urb->transfer_buffer_length;
diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h
index 64a0a2c27e12..c932f9053188 100644
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
@@ -1807,13 +1807,6 @@ UNUSUAL_DEV( 0x2735, 0x100b, 0x0000, 0x9999,
1807 US_SC_DEVICE, US_PR_DEVICE, NULL, 1807 US_SC_DEVICE, US_PR_DEVICE, NULL,
1808 US_FL_GO_SLOW ), 1808 US_FL_GO_SLOW ),
1809 1809
1810/* Reported by Rohan Hart <rohan.hart17@gmail.com> */
1811UNUSUAL_DEV( 0x2770, 0x915d, 0x0010, 0x0010,
1812 "INTOVA",
1813 "Pixtreme",
1814 US_SC_DEVICE, US_PR_DEVICE, NULL,
1815 US_FL_FIX_CAPACITY ),
1816
1817/* Reported by Frederic Marchal <frederic.marchal@wowcompany.com> 1810/* Reported by Frederic Marchal <frederic.marchal@wowcompany.com>
1818 * Mio Moov 330 1811 * Mio Moov 330
1819 */ 1812 */
diff --git a/drivers/usb/storage/usb.c b/drivers/usb/storage/usb.c
index 5a53d4f0dd11..e9f995486ec1 100644
--- a/drivers/usb/storage/usb.c
+++ b/drivers/usb/storage/usb.c
@@ -434,7 +434,8 @@ static void adjust_quirks(struct us_data *us)
434 u16 vid = le16_to_cpu(us->pusb_dev->descriptor.idVendor); 434 u16 vid = le16_to_cpu(us->pusb_dev->descriptor.idVendor);
435 u16 pid = le16_to_cpu(us->pusb_dev->descriptor.idProduct); 435 u16 pid = le16_to_cpu(us->pusb_dev->descriptor.idProduct);
436 unsigned f = 0; 436 unsigned f = 0;
437 unsigned int mask = (US_FL_SANE_SENSE | US_FL_FIX_CAPACITY | 437 unsigned int mask = (US_FL_SANE_SENSE | US_FL_BAD_SENSE |
438 US_FL_FIX_CAPACITY |
438 US_FL_CAPACITY_HEURISTICS | US_FL_IGNORE_DEVICE | 439 US_FL_CAPACITY_HEURISTICS | US_FL_IGNORE_DEVICE |
439 US_FL_NOT_LOCKABLE | US_FL_MAX_SECTORS_64 | 440 US_FL_NOT_LOCKABLE | US_FL_MAX_SECTORS_64 |
440 US_FL_CAPACITY_OK | US_FL_IGNORE_RESIDUE | 441 US_FL_CAPACITY_OK | US_FL_IGNORE_RESIDUE |
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index 088f32f29a6e..050ee147592f 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -396,8 +396,8 @@ config SBC_FITPC2_WATCHDOG
396 tristate "Compulab SBC-FITPC2 watchdog" 396 tristate "Compulab SBC-FITPC2 watchdog"
397 depends on X86 397 depends on X86
398 ---help--- 398 ---help---
399 This is the driver for the built-in watchdog timer on the fit-PC2 399 This is the driver for the built-in watchdog timer on the fit-PC2,
400 Single-board computer made by Compulab. 400 fit-PC2i, CM-iAM single-board computers made by Compulab.
401 401
402 It`s possible to enable watchdog timer either from BIOS (F2) or from booted Linux. 402 It`s possible to enable watchdog timer either from BIOS (F2) or from booted Linux.
403 When "Watchdog Timer Value" enabled one can set 31-255 s operational range. 403 When "Watchdog Timer Value" enabled one can set 31-255 s operational range.
diff --git a/drivers/watchdog/iTCO_wdt.c b/drivers/watchdog/iTCO_wdt.c
index c8a3bec26830..4bdb7f1a9077 100644
--- a/drivers/watchdog/iTCO_wdt.c
+++ b/drivers/watchdog/iTCO_wdt.c
@@ -29,8 +29,9 @@
29 * document number 313056-003, 313057-017: 82801H (ICH8) 29 * document number 313056-003, 313057-017: 82801H (ICH8)
30 * document number 316972-004, 316973-012: 82801I (ICH9) 30 * document number 316972-004, 316973-012: 82801I (ICH9)
31 * document number 319973-002, 319974-002: 82801J (ICH10) 31 * document number 319973-002, 319974-002: 82801J (ICH10)
32 * document number 322169-001, 322170-001: 5 Series, 3400 Series (PCH) 32 * document number 322169-001, 322170-003: 5 Series, 3400 Series (PCH)
33 * document number 320066-003, 320257-008: EP80597 (IICH) 33 * document number 320066-003, 320257-008: EP80597 (IICH)
34 * document number TBD : Cougar Point (CPT)
34 */ 35 */
35 36
36/* 37/*
@@ -100,8 +101,22 @@ enum iTCO_chipsets {
100 TCO_ICH10DO, /* ICH10DO */ 101 TCO_ICH10DO, /* ICH10DO */
101 TCO_PCH, /* PCH Desktop Full Featured */ 102 TCO_PCH, /* PCH Desktop Full Featured */
102 TCO_PCHM, /* PCH Mobile Full Featured */ 103 TCO_PCHM, /* PCH Mobile Full Featured */
104 TCO_P55, /* P55 */
105 TCO_PM55, /* PM55 */
106 TCO_H55, /* H55 */
107 TCO_QM57, /* QM57 */
108 TCO_H57, /* H57 */
109 TCO_HM55, /* HM55 */
110 TCO_Q57, /* Q57 */
111 TCO_HM57, /* HM57 */
103 TCO_PCHMSFF, /* PCH Mobile SFF Full Featured */ 112 TCO_PCHMSFF, /* PCH Mobile SFF Full Featured */
113 TCO_QS57, /* QS57 */
114 TCO_3400, /* 3400 */
115 TCO_3420, /* 3420 */
116 TCO_3450, /* 3450 */
104 TCO_EP80579, /* EP80579 */ 117 TCO_EP80579, /* EP80579 */
118 TCO_CPTD, /* CPT Desktop */
119 TCO_CPTM, /* CPT Mobile */
105}; 120};
106 121
107static struct { 122static struct {
@@ -144,8 +159,22 @@ static struct {
144 {"ICH10DO", 2}, 159 {"ICH10DO", 2},
145 {"PCH Desktop Full Featured", 2}, 160 {"PCH Desktop Full Featured", 2},
146 {"PCH Mobile Full Featured", 2}, 161 {"PCH Mobile Full Featured", 2},
162 {"P55", 2},
163 {"PM55", 2},
164 {"H55", 2},
165 {"QM57", 2},
166 {"H57", 2},
167 {"HM55", 2},
168 {"Q57", 2},
169 {"HM57", 2},
147 {"PCH Mobile SFF Full Featured", 2}, 170 {"PCH Mobile SFF Full Featured", 2},
171 {"QS57", 2},
172 {"3400", 2},
173 {"3420", 2},
174 {"3450", 2},
148 {"EP80579", 2}, 175 {"EP80579", 2},
176 {"CPT Desktop", 2},
177 {"CPT Mobile", 2},
149 {NULL, 0} 178 {NULL, 0}
150}; 179};
151 180
@@ -216,8 +245,22 @@ static struct pci_device_id iTCO_wdt_pci_tbl[] = {
216 { ITCO_PCI_DEVICE(0x3a14, TCO_ICH10DO)}, 245 { ITCO_PCI_DEVICE(0x3a14, TCO_ICH10DO)},
217 { ITCO_PCI_DEVICE(0x3b00, TCO_PCH)}, 246 { ITCO_PCI_DEVICE(0x3b00, TCO_PCH)},
218 { ITCO_PCI_DEVICE(0x3b01, TCO_PCHM)}, 247 { ITCO_PCI_DEVICE(0x3b01, TCO_PCHM)},
248 { ITCO_PCI_DEVICE(0x3b02, TCO_P55)},
249 { ITCO_PCI_DEVICE(0x3b03, TCO_PM55)},
250 { ITCO_PCI_DEVICE(0x3b06, TCO_H55)},
251 { ITCO_PCI_DEVICE(0x3b07, TCO_QM57)},
252 { ITCO_PCI_DEVICE(0x3b08, TCO_H57)},
253 { ITCO_PCI_DEVICE(0x3b09, TCO_HM55)},
254 { ITCO_PCI_DEVICE(0x3b0a, TCO_Q57)},
255 { ITCO_PCI_DEVICE(0x3b0b, TCO_HM57)},
219 { ITCO_PCI_DEVICE(0x3b0d, TCO_PCHMSFF)}, 256 { ITCO_PCI_DEVICE(0x3b0d, TCO_PCHMSFF)},
257 { ITCO_PCI_DEVICE(0x3b0f, TCO_QS57)},
258 { ITCO_PCI_DEVICE(0x3b12, TCO_3400)},
259 { ITCO_PCI_DEVICE(0x3b14, TCO_3420)},
260 { ITCO_PCI_DEVICE(0x3b16, TCO_3450)},
220 { ITCO_PCI_DEVICE(0x5031, TCO_EP80579)}, 261 { ITCO_PCI_DEVICE(0x5031, TCO_EP80579)},
262 { ITCO_PCI_DEVICE(0x1c42, TCO_CPTD)},
263 { ITCO_PCI_DEVICE(0x1c43, TCO_CPTM)},
221 { 0, }, /* End of list */ 264 { 0, }, /* End of list */
222}; 265};
223MODULE_DEVICE_TABLE(pci, iTCO_wdt_pci_tbl); 266MODULE_DEVICE_TABLE(pci, iTCO_wdt_pci_tbl);
diff --git a/drivers/watchdog/ixp2000_wdt.c b/drivers/watchdog/ixp2000_wdt.c
index 4f4b35a20d84..3c79dc587958 100644
--- a/drivers/watchdog/ixp2000_wdt.c
+++ b/drivers/watchdog/ixp2000_wdt.c
@@ -19,6 +19,7 @@
19#include <linux/module.h> 19#include <linux/module.h>
20#include <linux/moduleparam.h> 20#include <linux/moduleparam.h>
21#include <linux/types.h> 21#include <linux/types.h>
22#include <linux/timer.h>
22#include <linux/kernel.h> 23#include <linux/kernel.h>
23#include <linux/fs.h> 24#include <linux/fs.h>
24#include <linux/miscdevice.h> 25#include <linux/miscdevice.h>
diff --git a/drivers/watchdog/sbc_fitpc2_wdt.c b/drivers/watchdog/sbc_fitpc2_wdt.c
index 91430a89107c..e6763d2a567b 100644
--- a/drivers/watchdog/sbc_fitpc2_wdt.c
+++ b/drivers/watchdog/sbc_fitpc2_wdt.c
@@ -46,9 +46,9 @@ static DEFINE_SPINLOCK(wdt_lock);
46static void wdt_send_data(unsigned char command, unsigned char data) 46static void wdt_send_data(unsigned char command, unsigned char data)
47{ 47{
48 outb(command, COMMAND_PORT); 48 outb(command, COMMAND_PORT);
49 mdelay(100); 49 msleep(100);
50 outb(data, DATA_PORT); 50 outb(data, DATA_PORT);
51 mdelay(200); 51 msleep(200);
52} 52}
53 53
54static void wdt_enable(void) 54static void wdt_enable(void)
@@ -202,11 +202,10 @@ static int __init fitpc2_wdt_init(void)
202{ 202{
203 int err; 203 int err;
204 204
205 if (strcmp("SBC-FITPC2", dmi_get_system_info(DMI_BOARD_NAME))) { 205 if (!strstr(dmi_get_system_info(DMI_BOARD_NAME), "SBC-FITPC2"))
206 pr_info("board name is: %s. Should be SBC-FITPC2\n",
207 dmi_get_system_info(DMI_BOARD_NAME));
208 return -ENODEV; 206 return -ENODEV;
209 } 207
208 pr_info("%s found\n", dmi_get_system_info(DMI_BOARD_NAME));
210 209
211 if (!request_region(COMMAND_PORT, 1, WATCHDOG_NAME)) { 210 if (!request_region(COMMAND_PORT, 1, WATCHDOG_NAME)) {
212 pr_err("I/O address 0x%04x already in use\n", COMMAND_PORT); 211 pr_err("I/O address 0x%04x already in use\n", COMMAND_PORT);
diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c
index 14a86448572c..69357c0d9899 100644
--- a/fs/9p/vfs_super.c
+++ b/fs/9p/vfs_super.c
@@ -188,7 +188,8 @@ static void v9fs_kill_super(struct super_block *s)
188 188
189 P9_DPRINTK(P9_DEBUG_VFS, " %p\n", s); 189 P9_DPRINTK(P9_DEBUG_VFS, " %p\n", s);
190 190
191 v9fs_dentry_release(s->s_root); /* clunk root */ 191 if (s->s_root)
192 v9fs_dentry_release(s->s_root); /* clunk root */
192 193
193 kill_anon_super(s); 194 kill_anon_super(s);
194 195
diff --git a/fs/affs/affs.h b/fs/affs/affs.h
index e511dc621a2e..0e40caaba456 100644
--- a/fs/affs/affs.h
+++ b/fs/affs/affs.h
@@ -106,8 +106,8 @@ struct affs_sb_info {
106 u32 s_last_bmap; 106 u32 s_last_bmap;
107 struct buffer_head *s_bmap_bh; 107 struct buffer_head *s_bmap_bh;
108 char *s_prefix; /* Prefix for volumes and assigns. */ 108 char *s_prefix; /* Prefix for volumes and assigns. */
109 int s_prefix_len; /* Length of prefix. */
110 char s_volume[32]; /* Volume prefix for absolute symlinks. */ 109 char s_volume[32]; /* Volume prefix for absolute symlinks. */
110 spinlock_t symlink_lock; /* protects the previous two */
111}; 111};
112 112
113#define SF_INTL 0x0001 /* International filesystem. */ 113#define SF_INTL 0x0001 /* International filesystem. */
diff --git a/fs/affs/namei.c b/fs/affs/namei.c
index 960d336ec694..d70bbbac6b7b 100644
--- a/fs/affs/namei.c
+++ b/fs/affs/namei.c
@@ -341,10 +341,13 @@ affs_symlink(struct inode *dir, struct dentry *dentry, const char *symname)
341 p = (char *)AFFS_HEAD(bh)->table; 341 p = (char *)AFFS_HEAD(bh)->table;
342 lc = '/'; 342 lc = '/';
343 if (*symname == '/') { 343 if (*symname == '/') {
344 struct affs_sb_info *sbi = AFFS_SB(sb);
344 while (*symname == '/') 345 while (*symname == '/')
345 symname++; 346 symname++;
346 while (AFFS_SB(sb)->s_volume[i]) /* Cannot overflow */ 347 spin_lock(&sbi->symlink_lock);
347 *p++ = AFFS_SB(sb)->s_volume[i++]; 348 while (sbi->s_volume[i]) /* Cannot overflow */
349 *p++ = sbi->s_volume[i++];
350 spin_unlock(&sbi->symlink_lock);
348 } 351 }
349 while (i < maxlen && (c = *symname++)) { 352 while (i < maxlen && (c = *symname++)) {
350 if (c == '.' && lc == '/' && *symname == '.' && symname[1] == '/') { 353 if (c == '.' && lc == '/' && *symname == '.' && symname[1] == '/') {
diff --git a/fs/affs/super.c b/fs/affs/super.c
index 104fdcb3a7fc..d41e9673cd97 100644
--- a/fs/affs/super.c
+++ b/fs/affs/super.c
@@ -203,7 +203,7 @@ parse_options(char *options, uid_t *uid, gid_t *gid, int *mode, int *reserved, s
203 switch (token) { 203 switch (token) {
204 case Opt_bs: 204 case Opt_bs:
205 if (match_int(&args[0], &n)) 205 if (match_int(&args[0], &n))
206 return -EINVAL; 206 return 0;
207 if (n != 512 && n != 1024 && n != 2048 207 if (n != 512 && n != 1024 && n != 2048
208 && n != 4096) { 208 && n != 4096) {
209 printk ("AFFS: Invalid blocksize (512, 1024, 2048, 4096 allowed)\n"); 209 printk ("AFFS: Invalid blocksize (512, 1024, 2048, 4096 allowed)\n");
@@ -213,7 +213,7 @@ parse_options(char *options, uid_t *uid, gid_t *gid, int *mode, int *reserved, s
213 break; 213 break;
214 case Opt_mode: 214 case Opt_mode:
215 if (match_octal(&args[0], &option)) 215 if (match_octal(&args[0], &option))
216 return 1; 216 return 0;
217 *mode = option & 0777; 217 *mode = option & 0777;
218 *mount_opts |= SF_SETMODE; 218 *mount_opts |= SF_SETMODE;
219 break; 219 break;
@@ -221,8 +221,6 @@ parse_options(char *options, uid_t *uid, gid_t *gid, int *mode, int *reserved, s
221 *mount_opts |= SF_MUFS; 221 *mount_opts |= SF_MUFS;
222 break; 222 break;
223 case Opt_prefix: 223 case Opt_prefix:
224 /* Free any previous prefix */
225 kfree(*prefix);
226 *prefix = match_strdup(&args[0]); 224 *prefix = match_strdup(&args[0]);
227 if (!*prefix) 225 if (!*prefix)
228 return 0; 226 return 0;
@@ -233,21 +231,21 @@ parse_options(char *options, uid_t *uid, gid_t *gid, int *mode, int *reserved, s
233 break; 231 break;
234 case Opt_reserved: 232 case Opt_reserved:
235 if (match_int(&args[0], reserved)) 233 if (match_int(&args[0], reserved))
236 return 1; 234 return 0;
237 break; 235 break;
238 case Opt_root: 236 case Opt_root:
239 if (match_int(&args[0], root)) 237 if (match_int(&args[0], root))
240 return 1; 238 return 0;
241 break; 239 break;
242 case Opt_setgid: 240 case Opt_setgid:
243 if (match_int(&args[0], &option)) 241 if (match_int(&args[0], &option))
244 return 1; 242 return 0;
245 *gid = option; 243 *gid = option;
246 *mount_opts |= SF_SETGID; 244 *mount_opts |= SF_SETGID;
247 break; 245 break;
248 case Opt_setuid: 246 case Opt_setuid:
249 if (match_int(&args[0], &option)) 247 if (match_int(&args[0], &option))
250 return -EINVAL; 248 return 0;
251 *uid = option; 249 *uid = option;
252 *mount_opts |= SF_SETUID; 250 *mount_opts |= SF_SETUID;
253 break; 251 break;
@@ -311,11 +309,14 @@ static int affs_fill_super(struct super_block *sb, void *data, int silent)
311 return -ENOMEM; 309 return -ENOMEM;
312 sb->s_fs_info = sbi; 310 sb->s_fs_info = sbi;
313 mutex_init(&sbi->s_bmlock); 311 mutex_init(&sbi->s_bmlock);
312 spin_lock_init(&sbi->symlink_lock);
314 313
315 if (!parse_options(data,&uid,&gid,&i,&reserved,&root_block, 314 if (!parse_options(data,&uid,&gid,&i,&reserved,&root_block,
316 &blocksize,&sbi->s_prefix, 315 &blocksize,&sbi->s_prefix,
317 sbi->s_volume, &mount_flags)) { 316 sbi->s_volume, &mount_flags)) {
318 printk(KERN_ERR "AFFS: Error parsing options\n"); 317 printk(KERN_ERR "AFFS: Error parsing options\n");
318 kfree(sbi->s_prefix);
319 kfree(sbi);
319 return -EINVAL; 320 return -EINVAL;
320 } 321 }
321 /* N.B. after this point s_prefix must be released */ 322 /* N.B. after this point s_prefix must be released */
@@ -516,14 +517,18 @@ affs_remount(struct super_block *sb, int *flags, char *data)
516 unsigned long mount_flags; 517 unsigned long mount_flags;
517 int res = 0; 518 int res = 0;
518 char *new_opts = kstrdup(data, GFP_KERNEL); 519 char *new_opts = kstrdup(data, GFP_KERNEL);
520 char volume[32];
521 char *prefix = NULL;
519 522
520 pr_debug("AFFS: remount(flags=0x%x,opts=\"%s\")\n",*flags,data); 523 pr_debug("AFFS: remount(flags=0x%x,opts=\"%s\")\n",*flags,data);
521 524
522 *flags |= MS_NODIRATIME; 525 *flags |= MS_NODIRATIME;
523 526
527 memcpy(volume, sbi->s_volume, 32);
524 if (!parse_options(data, &uid, &gid, &mode, &reserved, &root_block, 528 if (!parse_options(data, &uid, &gid, &mode, &reserved, &root_block,
525 &blocksize, &sbi->s_prefix, sbi->s_volume, 529 &blocksize, &prefix, volume,
526 &mount_flags)) { 530 &mount_flags)) {
531 kfree(prefix);
527 kfree(new_opts); 532 kfree(new_opts);
528 return -EINVAL; 533 return -EINVAL;
529 } 534 }
@@ -534,6 +539,14 @@ affs_remount(struct super_block *sb, int *flags, char *data)
534 sbi->s_mode = mode; 539 sbi->s_mode = mode;
535 sbi->s_uid = uid; 540 sbi->s_uid = uid;
536 sbi->s_gid = gid; 541 sbi->s_gid = gid;
542 /* protect against readers */
543 spin_lock(&sbi->symlink_lock);
544 if (prefix) {
545 kfree(sbi->s_prefix);
546 sbi->s_prefix = prefix;
547 }
548 memcpy(sbi->s_volume, volume, 32);
549 spin_unlock(&sbi->symlink_lock);
537 550
538 if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY)) { 551 if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY)) {
539 unlock_kernel(); 552 unlock_kernel();
diff --git a/fs/affs/symlink.c b/fs/affs/symlink.c
index 41782539c907..ee00f08c4f53 100644
--- a/fs/affs/symlink.c
+++ b/fs/affs/symlink.c
@@ -20,7 +20,6 @@ static int affs_symlink_readpage(struct file *file, struct page *page)
20 int i, j; 20 int i, j;
21 char c; 21 char c;
22 char lc; 22 char lc;
23 char *pf;
24 23
25 pr_debug("AFFS: follow_link(ino=%lu)\n",inode->i_ino); 24 pr_debug("AFFS: follow_link(ino=%lu)\n",inode->i_ino);
26 25
@@ -32,11 +31,15 @@ static int affs_symlink_readpage(struct file *file, struct page *page)
32 j = 0; 31 j = 0;
33 lf = (struct slink_front *)bh->b_data; 32 lf = (struct slink_front *)bh->b_data;
34 lc = 0; 33 lc = 0;
35 pf = AFFS_SB(inode->i_sb)->s_prefix ? AFFS_SB(inode->i_sb)->s_prefix : "/";
36 34
37 if (strchr(lf->symname,':')) { /* Handle assign or volume name */ 35 if (strchr(lf->symname,':')) { /* Handle assign or volume name */
36 struct affs_sb_info *sbi = AFFS_SB(inode->i_sb);
37 char *pf;
38 spin_lock(&sbi->symlink_lock);
39 pf = sbi->s_prefix ? sbi->s_prefix : "/";
38 while (i < 1023 && (c = pf[i])) 40 while (i < 1023 && (c = pf[i]))
39 link[i++] = c; 41 link[i++] = c;
42 spin_unlock(&sbi->symlink_lock);
40 while (i < 1023 && lf->symname[j] != ':') 43 while (i < 1023 && lf->symname[j] != ':')
41 link[i++] = lf->symname[j++]; 44 link[i++] = lf->symname[j++];
42 if (i < 1023) 45 if (i < 1023)
diff --git a/fs/bfs/inode.c b/fs/bfs/inode.c
index 6f60336c6628..8f3d9fd89604 100644
--- a/fs/bfs/inode.c
+++ b/fs/bfs/inode.c
@@ -353,35 +353,35 @@ static int bfs_fill_super(struct super_block *s, void *data, int silent)
353 struct inode *inode; 353 struct inode *inode;
354 unsigned i, imap_len; 354 unsigned i, imap_len;
355 struct bfs_sb_info *info; 355 struct bfs_sb_info *info;
356 long ret = -EINVAL; 356 int ret = -EINVAL;
357 unsigned long i_sblock, i_eblock, i_eoff, s_size; 357 unsigned long i_sblock, i_eblock, i_eoff, s_size;
358 358
359 info = kzalloc(sizeof(*info), GFP_KERNEL); 359 info = kzalloc(sizeof(*info), GFP_KERNEL);
360 if (!info) 360 if (!info)
361 return -ENOMEM; 361 return -ENOMEM;
362 mutex_init(&info->bfs_lock);
362 s->s_fs_info = info; 363 s->s_fs_info = info;
363 364
364 sb_set_blocksize(s, BFS_BSIZE); 365 sb_set_blocksize(s, BFS_BSIZE);
365 366
366 bh = sb_bread(s, 0); 367 info->si_sbh = sb_bread(s, 0);
367 if(!bh) 368 if (!info->si_sbh)
368 goto out; 369 goto out;
369 bfs_sb = (struct bfs_super_block *)bh->b_data; 370 bfs_sb = (struct bfs_super_block *)info->si_sbh->b_data;
370 if (le32_to_cpu(bfs_sb->s_magic) != BFS_MAGIC) { 371 if (le32_to_cpu(bfs_sb->s_magic) != BFS_MAGIC) {
371 if (!silent) 372 if (!silent)
372 printf("No BFS filesystem on %s (magic=%08x)\n", 373 printf("No BFS filesystem on %s (magic=%08x)\n",
373 s->s_id, le32_to_cpu(bfs_sb->s_magic)); 374 s->s_id, le32_to_cpu(bfs_sb->s_magic));
374 goto out; 375 goto out1;
375 } 376 }
376 if (BFS_UNCLEAN(bfs_sb, s) && !silent) 377 if (BFS_UNCLEAN(bfs_sb, s) && !silent)
377 printf("%s is unclean, continuing\n", s->s_id); 378 printf("%s is unclean, continuing\n", s->s_id);
378 379
379 s->s_magic = BFS_MAGIC; 380 s->s_magic = BFS_MAGIC;
380 info->si_sbh = bh;
381 381
382 if (le32_to_cpu(bfs_sb->s_start) > le32_to_cpu(bfs_sb->s_end)) { 382 if (le32_to_cpu(bfs_sb->s_start) > le32_to_cpu(bfs_sb->s_end)) {
383 printf("Superblock is corrupted\n"); 383 printf("Superblock is corrupted\n");
384 goto out; 384 goto out1;
385 } 385 }
386 386
387 info->si_lasti = (le32_to_cpu(bfs_sb->s_start) - BFS_BSIZE) / 387 info->si_lasti = (le32_to_cpu(bfs_sb->s_start) - BFS_BSIZE) /
@@ -390,7 +390,7 @@ static int bfs_fill_super(struct super_block *s, void *data, int silent)
390 imap_len = (info->si_lasti / 8) + 1; 390 imap_len = (info->si_lasti / 8) + 1;
391 info->si_imap = kzalloc(imap_len, GFP_KERNEL); 391 info->si_imap = kzalloc(imap_len, GFP_KERNEL);
392 if (!info->si_imap) 392 if (!info->si_imap)
393 goto out; 393 goto out1;
394 for (i = 0; i < BFS_ROOT_INO; i++) 394 for (i = 0; i < BFS_ROOT_INO; i++)
395 set_bit(i, info->si_imap); 395 set_bit(i, info->si_imap);
396 396
@@ -398,15 +398,13 @@ static int bfs_fill_super(struct super_block *s, void *data, int silent)
398 inode = bfs_iget(s, BFS_ROOT_INO); 398 inode = bfs_iget(s, BFS_ROOT_INO);
399 if (IS_ERR(inode)) { 399 if (IS_ERR(inode)) {
400 ret = PTR_ERR(inode); 400 ret = PTR_ERR(inode);
401 kfree(info->si_imap); 401 goto out2;
402 goto out;
403 } 402 }
404 s->s_root = d_alloc_root(inode); 403 s->s_root = d_alloc_root(inode);
405 if (!s->s_root) { 404 if (!s->s_root) {
406 iput(inode); 405 iput(inode);
407 ret = -ENOMEM; 406 ret = -ENOMEM;
408 kfree(info->si_imap); 407 goto out2;
409 goto out;
410 } 408 }
411 409
412 info->si_blocks = (le32_to_cpu(bfs_sb->s_end) + 1) >> BFS_BSIZE_BITS; 410 info->si_blocks = (le32_to_cpu(bfs_sb->s_end) + 1) >> BFS_BSIZE_BITS;
@@ -419,10 +417,8 @@ static int bfs_fill_super(struct super_block *s, void *data, int silent)
419 bh = sb_bread(s, info->si_blocks - 1); 417 bh = sb_bread(s, info->si_blocks - 1);
420 if (!bh) { 418 if (!bh) {
421 printf("Last block not available: %lu\n", info->si_blocks - 1); 419 printf("Last block not available: %lu\n", info->si_blocks - 1);
422 iput(inode);
423 ret = -EIO; 420 ret = -EIO;
424 kfree(info->si_imap); 421 goto out3;
425 goto out;
426 } 422 }
427 brelse(bh); 423 brelse(bh);
428 424
@@ -459,11 +455,8 @@ static int bfs_fill_super(struct super_block *s, void *data, int silent)
459 printf("Inode 0x%08x corrupted\n", i); 455 printf("Inode 0x%08x corrupted\n", i);
460 456
461 brelse(bh); 457 brelse(bh);
462 s->s_root = NULL; 458 ret = -EIO;
463 kfree(info->si_imap); 459 goto out3;
464 kfree(info);
465 s->s_fs_info = NULL;
466 return -EIO;
467 } 460 }
468 461
469 if (!di->i_ino) { 462 if (!di->i_ino) {
@@ -483,11 +476,17 @@ static int bfs_fill_super(struct super_block *s, void *data, int silent)
483 s->s_dirt = 1; 476 s->s_dirt = 1;
484 } 477 }
485 dump_imap("read_super", s); 478 dump_imap("read_super", s);
486 mutex_init(&info->bfs_lock);
487 return 0; 479 return 0;
488 480
481out3:
482 dput(s->s_root);
483 s->s_root = NULL;
484out2:
485 kfree(info->si_imap);
486out1:
487 brelse(info->si_sbh);
489out: 488out:
490 brelse(bh); 489 mutex_destroy(&info->bfs_lock);
491 kfree(info); 490 kfree(info);
492 s->s_fs_info = NULL; 491 s->s_fs_info = NULL;
493 return ret; 492 return ret;
diff --git a/fs/binfmt_aout.c b/fs/binfmt_aout.c
index 346b69405363..fdd397099172 100644
--- a/fs/binfmt_aout.c
+++ b/fs/binfmt_aout.c
@@ -264,6 +264,7 @@ static int load_aout_binary(struct linux_binprm * bprm, struct pt_regs * regs)
264#else 264#else
265 set_personality(PER_LINUX); 265 set_personality(PER_LINUX);
266#endif 266#endif
267 setup_new_exec(bprm);
267 268
268 current->mm->end_code = ex.a_text + 269 current->mm->end_code = ex.a_text +
269 (current->mm->start_code = N_TXTADDR(ex)); 270 (current->mm->start_code = N_TXTADDR(ex));
diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c
index edd90c49003c..fd5b2ea5d299 100644
--- a/fs/binfmt_elf.c
+++ b/fs/binfmt_elf.c
@@ -662,27 +662,6 @@ static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs)
662 if (elf_interpreter[elf_ppnt->p_filesz - 1] != '\0') 662 if (elf_interpreter[elf_ppnt->p_filesz - 1] != '\0')
663 goto out_free_interp; 663 goto out_free_interp;
664 664
665 /*
666 * The early SET_PERSONALITY here is so that the lookup
667 * for the interpreter happens in the namespace of the
668 * to-be-execed image. SET_PERSONALITY can select an
669 * alternate root.
670 *
671 * However, SET_PERSONALITY is NOT allowed to switch
672 * this task into the new images's memory mapping
673 * policy - that is, TASK_SIZE must still evaluate to
674 * that which is appropriate to the execing application.
675 * This is because exit_mmap() needs to have TASK_SIZE
676 * evaluate to the size of the old image.
677 *
678 * So if (say) a 64-bit application is execing a 32-bit
679 * application it is the architecture's responsibility
680 * to defer changing the value of TASK_SIZE until the
681 * switch really is going to happen - do this in
682 * flush_thread(). - akpm
683 */
684 SET_PERSONALITY(loc->elf_ex);
685
686 interpreter = open_exec(elf_interpreter); 665 interpreter = open_exec(elf_interpreter);
687 retval = PTR_ERR(interpreter); 666 retval = PTR_ERR(interpreter);
688 if (IS_ERR(interpreter)) 667 if (IS_ERR(interpreter))
@@ -730,9 +709,6 @@ static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs)
730 /* Verify the interpreter has a valid arch */ 709 /* Verify the interpreter has a valid arch */
731 if (!elf_check_arch(&loc->interp_elf_ex)) 710 if (!elf_check_arch(&loc->interp_elf_ex))
732 goto out_free_dentry; 711 goto out_free_dentry;
733 } else {
734 /* Executables without an interpreter also need a personality */
735 SET_PERSONALITY(loc->elf_ex);
736 } 712 }
737 713
738 /* Flush all traces of the currently running executable */ 714 /* Flush all traces of the currently running executable */
@@ -752,7 +728,8 @@ static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs)
752 728
753 if (!(current->personality & ADDR_NO_RANDOMIZE) && randomize_va_space) 729 if (!(current->personality & ADDR_NO_RANDOMIZE) && randomize_va_space)
754 current->flags |= PF_RANDOMIZE; 730 current->flags |= PF_RANDOMIZE;
755 arch_pick_mmap_layout(current->mm); 731
732 setup_new_exec(bprm);
756 733
757 /* Do this so that we can load the interpreter, if need be. We will 734 /* Do this so that we can load the interpreter, if need be. We will
758 change some of these later */ 735 change some of these later */
diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c
index c57d9ce5ff7e..18d77297ccc8 100644
--- a/fs/binfmt_elf_fdpic.c
+++ b/fs/binfmt_elf_fdpic.c
@@ -321,6 +321,9 @@ static int load_elf_fdpic_binary(struct linux_binprm *bprm,
321 set_personality(PER_LINUX_FDPIC); 321 set_personality(PER_LINUX_FDPIC);
322 if (elf_read_implies_exec(&exec_params.hdr, executable_stack)) 322 if (elf_read_implies_exec(&exec_params.hdr, executable_stack))
323 current->personality |= READ_IMPLIES_EXEC; 323 current->personality |= READ_IMPLIES_EXEC;
324
325 setup_new_exec(bprm);
326
324 set_binfmt(&elf_fdpic_format); 327 set_binfmt(&elf_fdpic_format);
325 328
326 current->mm->start_code = 0; 329 current->mm->start_code = 0;
diff --git a/fs/binfmt_flat.c b/fs/binfmt_flat.c
index d4a00ea1054c..42c6b4a54445 100644
--- a/fs/binfmt_flat.c
+++ b/fs/binfmt_flat.c
@@ -519,6 +519,7 @@ static int load_flat_file(struct linux_binprm * bprm,
519 519
520 /* OK, This is the point of no return */ 520 /* OK, This is the point of no return */
521 set_personality(PER_LINUX_32BIT); 521 set_personality(PER_LINUX_32BIT);
522 setup_new_exec(bprm);
522 } 523 }
523 524
524 /* 525 /*
diff --git a/fs/binfmt_som.c b/fs/binfmt_som.c
index 2a9b5330cc5e..cc8560f6c9b0 100644
--- a/fs/binfmt_som.c
+++ b/fs/binfmt_som.c
@@ -227,6 +227,7 @@ load_som_binary(struct linux_binprm * bprm, struct pt_regs * regs)
227 /* OK, This is the point of no return */ 227 /* OK, This is the point of no return */
228 current->flags &= ~PF_FORKNOEXEC; 228 current->flags &= ~PF_FORKNOEXEC;
229 current->personality = PER_HPUX; 229 current->personality = PER_HPUX;
230 setup_new_exec(bprm);
230 231
231 /* Set the task size for HP-UX processes such that 232 /* Set the task size for HP-UX processes such that
232 * the gateway page is outside the address space. 233 * the gateway page is outside the address space.
diff --git a/fs/bio.c b/fs/bio.c
index 76e6713abf94..12429c9553eb 100644
--- a/fs/bio.c
+++ b/fs/bio.c
@@ -78,7 +78,7 @@ static struct kmem_cache *bio_find_or_create_slab(unsigned int extra_size)
78 78
79 i = 0; 79 i = 0;
80 while (i < bio_slab_nr) { 80 while (i < bio_slab_nr) {
81 struct bio_slab *bslab = &bio_slabs[i]; 81 bslab = &bio_slabs[i];
82 82
83 if (!bslab->slab && entry == -1) 83 if (!bslab->slab && entry == -1)
84 entry = i; 84 entry = i;
diff --git a/fs/btrfs/acl.c b/fs/btrfs/acl.c
index 2e9e69987a82..6df6d6ed74fd 100644
--- a/fs/btrfs/acl.c
+++ b/fs/btrfs/acl.c
@@ -112,12 +112,14 @@ static int btrfs_set_acl(struct btrfs_trans_handle *trans,
112 switch (type) { 112 switch (type) {
113 case ACL_TYPE_ACCESS: 113 case ACL_TYPE_ACCESS:
114 mode = inode->i_mode; 114 mode = inode->i_mode;
115 ret = posix_acl_equiv_mode(acl, &mode);
116 if (ret < 0)
117 return ret;
118 ret = 0;
119 inode->i_mode = mode;
120 name = POSIX_ACL_XATTR_ACCESS; 115 name = POSIX_ACL_XATTR_ACCESS;
116 if (acl) {
117 ret = posix_acl_equiv_mode(acl, &mode);
118 if (ret < 0)
119 return ret;
120 inode->i_mode = mode;
121 }
122 ret = 0;
121 break; 123 break;
122 case ACL_TYPE_DEFAULT: 124 case ACL_TYPE_DEFAULT:
123 if (!S_ISDIR(inode->i_mode)) 125 if (!S_ISDIR(inode->i_mode))
@@ -242,6 +244,7 @@ int btrfs_init_acl(struct btrfs_trans_handle *trans,
242 ACL_TYPE_ACCESS); 244 ACL_TYPE_ACCESS);
243 } 245 }
244 } 246 }
247 posix_acl_release(clone);
245 } 248 }
246failed: 249failed:
247 posix_acl_release(acl); 250 posix_acl_release(acl);
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
index 9f806dd04c27..2aa8ec6a0981 100644
--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
@@ -1161,6 +1161,7 @@ struct btrfs_root {
1161#define BTRFS_MOUNT_SSD_SPREAD (1 << 8) 1161#define BTRFS_MOUNT_SSD_SPREAD (1 << 8)
1162#define BTRFS_MOUNT_NOSSD (1 << 9) 1162#define BTRFS_MOUNT_NOSSD (1 << 9)
1163#define BTRFS_MOUNT_DISCARD (1 << 10) 1163#define BTRFS_MOUNT_DISCARD (1 << 10)
1164#define BTRFS_MOUNT_FORCE_COMPRESS (1 << 11)
1164 1165
1165#define btrfs_clear_opt(o, opt) ((o) &= ~BTRFS_MOUNT_##opt) 1166#define btrfs_clear_opt(o, opt) ((o) &= ~BTRFS_MOUNT_##opt)
1166#define btrfs_set_opt(o, opt) ((o) |= BTRFS_MOUNT_##opt) 1167#define btrfs_set_opt(o, opt) ((o) |= BTRFS_MOUNT_##opt)
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 009e3bd18f23..87b25543d7d1 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -1993,6 +1993,12 @@ struct btrfs_root *open_ctree(struct super_block *sb,
1993 if (!fs_info->fs_root) 1993 if (!fs_info->fs_root)
1994 goto fail_trans_kthread; 1994 goto fail_trans_kthread;
1995 1995
1996 if (!(sb->s_flags & MS_RDONLY)) {
1997 down_read(&fs_info->cleanup_work_sem);
1998 btrfs_orphan_cleanup(fs_info->fs_root);
1999 up_read(&fs_info->cleanup_work_sem);
2000 }
2001
1996 return tree_root; 2002 return tree_root;
1997 2003
1998fail_trans_kthread: 2004fail_trans_kthread:
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 56e50137d0e6..432a2da4641e 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -83,6 +83,17 @@ static int block_group_bits(struct btrfs_block_group_cache *cache, u64 bits)
83 return (cache->flags & bits) == bits; 83 return (cache->flags & bits) == bits;
84} 84}
85 85
86void btrfs_get_block_group(struct btrfs_block_group_cache *cache)
87{
88 atomic_inc(&cache->count);
89}
90
91void btrfs_put_block_group(struct btrfs_block_group_cache *cache)
92{
93 if (atomic_dec_and_test(&cache->count))
94 kfree(cache);
95}
96
86/* 97/*
87 * this adds the block group to the fs_info rb tree for the block group 98 * this adds the block group to the fs_info rb tree for the block group
88 * cache 99 * cache
@@ -156,7 +167,7 @@ block_group_cache_tree_search(struct btrfs_fs_info *info, u64 bytenr,
156 } 167 }
157 } 168 }
158 if (ret) 169 if (ret)
159 atomic_inc(&ret->count); 170 btrfs_get_block_group(ret);
160 spin_unlock(&info->block_group_cache_lock); 171 spin_unlock(&info->block_group_cache_lock);
161 172
162 return ret; 173 return ret;
@@ -407,6 +418,8 @@ err:
407 418
408 put_caching_control(caching_ctl); 419 put_caching_control(caching_ctl);
409 atomic_dec(&block_group->space_info->caching_threads); 420 atomic_dec(&block_group->space_info->caching_threads);
421 btrfs_put_block_group(block_group);
422
410 return 0; 423 return 0;
411} 424}
412 425
@@ -447,6 +460,7 @@ static int cache_block_group(struct btrfs_block_group_cache *cache)
447 up_write(&fs_info->extent_commit_sem); 460 up_write(&fs_info->extent_commit_sem);
448 461
449 atomic_inc(&cache->space_info->caching_threads); 462 atomic_inc(&cache->space_info->caching_threads);
463 btrfs_get_block_group(cache);
450 464
451 tsk = kthread_run(caching_kthread, cache, "btrfs-cache-%llu\n", 465 tsk = kthread_run(caching_kthread, cache, "btrfs-cache-%llu\n",
452 cache->key.objectid); 466 cache->key.objectid);
@@ -486,12 +500,6 @@ struct btrfs_block_group_cache *btrfs_lookup_block_group(
486 return cache; 500 return cache;
487} 501}
488 502
489void btrfs_put_block_group(struct btrfs_block_group_cache *cache)
490{
491 if (atomic_dec_and_test(&cache->count))
492 kfree(cache);
493}
494
495static struct btrfs_space_info *__find_space_info(struct btrfs_fs_info *info, 503static struct btrfs_space_info *__find_space_info(struct btrfs_fs_info *info,
496 u64 flags) 504 u64 flags)
497{ 505{
@@ -2582,7 +2590,7 @@ next_block_group(struct btrfs_root *root,
2582 if (node) { 2590 if (node) {
2583 cache = rb_entry(node, struct btrfs_block_group_cache, 2591 cache = rb_entry(node, struct btrfs_block_group_cache,
2584 cache_node); 2592 cache_node);
2585 atomic_inc(&cache->count); 2593 btrfs_get_block_group(cache);
2586 } else 2594 } else
2587 cache = NULL; 2595 cache = NULL;
2588 spin_unlock(&root->fs_info->block_group_cache_lock); 2596 spin_unlock(&root->fs_info->block_group_cache_lock);
@@ -4227,7 +4235,7 @@ search:
4227 u64 offset; 4235 u64 offset;
4228 int cached; 4236 int cached;
4229 4237
4230 atomic_inc(&block_group->count); 4238 btrfs_get_block_group(block_group);
4231 search_start = block_group->key.objectid; 4239 search_start = block_group->key.objectid;
4232 4240
4233have_block_group: 4241have_block_group:
@@ -4315,7 +4323,7 @@ have_block_group:
4315 4323
4316 btrfs_put_block_group(block_group); 4324 btrfs_put_block_group(block_group);
4317 block_group = last_ptr->block_group; 4325 block_group = last_ptr->block_group;
4318 atomic_inc(&block_group->count); 4326 btrfs_get_block_group(block_group);
4319 spin_unlock(&last_ptr->lock); 4327 spin_unlock(&last_ptr->lock);
4320 spin_unlock(&last_ptr->refill_lock); 4328 spin_unlock(&last_ptr->refill_lock);
4321 4329
@@ -7395,9 +7403,7 @@ int btrfs_free_block_groups(struct btrfs_fs_info *info)
7395 wait_block_group_cache_done(block_group); 7403 wait_block_group_cache_done(block_group);
7396 7404
7397 btrfs_remove_free_space_cache(block_group); 7405 btrfs_remove_free_space_cache(block_group);
7398 7406 btrfs_put_block_group(block_group);
7399 WARN_ON(atomic_read(&block_group->count) != 1);
7400 kfree(block_group);
7401 7407
7402 spin_lock(&info->block_group_cache_lock); 7408 spin_lock(&info->block_group_cache_lock);
7403 } 7409 }
diff --git a/fs/btrfs/extent_map.c b/fs/btrfs/extent_map.c
index 46bea0f4dc7b..428fcac45f90 100644
--- a/fs/btrfs/extent_map.c
+++ b/fs/btrfs/extent_map.c
@@ -155,20 +155,6 @@ static struct rb_node *__tree_search(struct rb_root *root, u64 offset,
155 return NULL; 155 return NULL;
156} 156}
157 157
158/*
159 * look for an offset in the tree, and if it can't be found, return
160 * the first offset we can find smaller than 'offset'.
161 */
162static inline struct rb_node *tree_search(struct rb_root *root, u64 offset)
163{
164 struct rb_node *prev;
165 struct rb_node *ret;
166 ret = __tree_search(root, offset, &prev, NULL);
167 if (!ret)
168 return prev;
169 return ret;
170}
171
172/* check to see if two extent_map structs are adjacent and safe to merge */ 158/* check to see if two extent_map structs are adjacent and safe to merge */
173static int mergable_maps(struct extent_map *prev, struct extent_map *next) 159static int mergable_maps(struct extent_map *prev, struct extent_map *next)
174{ 160{
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index feaa13b105d9..c02033596f02 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -506,7 +506,8 @@ next_slot:
506} 506}
507 507
508static int extent_mergeable(struct extent_buffer *leaf, int slot, 508static int extent_mergeable(struct extent_buffer *leaf, int slot,
509 u64 objectid, u64 bytenr, u64 *start, u64 *end) 509 u64 objectid, u64 bytenr, u64 orig_offset,
510 u64 *start, u64 *end)
510{ 511{
511 struct btrfs_file_extent_item *fi; 512 struct btrfs_file_extent_item *fi;
512 struct btrfs_key key; 513 struct btrfs_key key;
@@ -522,6 +523,7 @@ static int extent_mergeable(struct extent_buffer *leaf, int slot,
522 fi = btrfs_item_ptr(leaf, slot, struct btrfs_file_extent_item); 523 fi = btrfs_item_ptr(leaf, slot, struct btrfs_file_extent_item);
523 if (btrfs_file_extent_type(leaf, fi) != BTRFS_FILE_EXTENT_REG || 524 if (btrfs_file_extent_type(leaf, fi) != BTRFS_FILE_EXTENT_REG ||
524 btrfs_file_extent_disk_bytenr(leaf, fi) != bytenr || 525 btrfs_file_extent_disk_bytenr(leaf, fi) != bytenr ||
526 btrfs_file_extent_offset(leaf, fi) != key.offset - orig_offset ||
525 btrfs_file_extent_compression(leaf, fi) || 527 btrfs_file_extent_compression(leaf, fi) ||
526 btrfs_file_extent_encryption(leaf, fi) || 528 btrfs_file_extent_encryption(leaf, fi) ||
527 btrfs_file_extent_other_encoding(leaf, fi)) 529 btrfs_file_extent_other_encoding(leaf, fi))
@@ -561,6 +563,7 @@ int btrfs_mark_extent_written(struct btrfs_trans_handle *trans,
561 u64 split; 563 u64 split;
562 int del_nr = 0; 564 int del_nr = 0;
563 int del_slot = 0; 565 int del_slot = 0;
566 int recow;
564 int ret; 567 int ret;
565 568
566 btrfs_drop_extent_cache(inode, start, end - 1, 0); 569 btrfs_drop_extent_cache(inode, start, end - 1, 0);
@@ -568,6 +571,7 @@ int btrfs_mark_extent_written(struct btrfs_trans_handle *trans,
568 path = btrfs_alloc_path(); 571 path = btrfs_alloc_path();
569 BUG_ON(!path); 572 BUG_ON(!path);
570again: 573again:
574 recow = 0;
571 split = start; 575 split = start;
572 key.objectid = inode->i_ino; 576 key.objectid = inode->i_ino;
573 key.type = BTRFS_EXTENT_DATA_KEY; 577 key.type = BTRFS_EXTENT_DATA_KEY;
@@ -591,12 +595,60 @@ again:
591 bytenr = btrfs_file_extent_disk_bytenr(leaf, fi); 595 bytenr = btrfs_file_extent_disk_bytenr(leaf, fi);
592 num_bytes = btrfs_file_extent_disk_num_bytes(leaf, fi); 596 num_bytes = btrfs_file_extent_disk_num_bytes(leaf, fi);
593 orig_offset = key.offset - btrfs_file_extent_offset(leaf, fi); 597 orig_offset = key.offset - btrfs_file_extent_offset(leaf, fi);
598 memcpy(&new_key, &key, sizeof(new_key));
599
600 if (start == key.offset && end < extent_end) {
601 other_start = 0;
602 other_end = start;
603 if (extent_mergeable(leaf, path->slots[0] - 1,
604 inode->i_ino, bytenr, orig_offset,
605 &other_start, &other_end)) {
606 new_key.offset = end;
607 btrfs_set_item_key_safe(trans, root, path, &new_key);
608 fi = btrfs_item_ptr(leaf, path->slots[0],
609 struct btrfs_file_extent_item);
610 btrfs_set_file_extent_num_bytes(leaf, fi,
611 extent_end - end);
612 btrfs_set_file_extent_offset(leaf, fi,
613 end - orig_offset);
614 fi = btrfs_item_ptr(leaf, path->slots[0] - 1,
615 struct btrfs_file_extent_item);
616 btrfs_set_file_extent_num_bytes(leaf, fi,
617 end - other_start);
618 btrfs_mark_buffer_dirty(leaf);
619 goto out;
620 }
621 }
622
623 if (start > key.offset && end == extent_end) {
624 other_start = end;
625 other_end = 0;
626 if (extent_mergeable(leaf, path->slots[0] + 1,
627 inode->i_ino, bytenr, orig_offset,
628 &other_start, &other_end)) {
629 fi = btrfs_item_ptr(leaf, path->slots[0],
630 struct btrfs_file_extent_item);
631 btrfs_set_file_extent_num_bytes(leaf, fi,
632 start - key.offset);
633 path->slots[0]++;
634 new_key.offset = start;
635 btrfs_set_item_key_safe(trans, root, path, &new_key);
636
637 fi = btrfs_item_ptr(leaf, path->slots[0],
638 struct btrfs_file_extent_item);
639 btrfs_set_file_extent_num_bytes(leaf, fi,
640 other_end - start);
641 btrfs_set_file_extent_offset(leaf, fi,
642 start - orig_offset);
643 btrfs_mark_buffer_dirty(leaf);
644 goto out;
645 }
646 }
594 647
595 while (start > key.offset || end < extent_end) { 648 while (start > key.offset || end < extent_end) {
596 if (key.offset == start) 649 if (key.offset == start)
597 split = end; 650 split = end;
598 651
599 memcpy(&new_key, &key, sizeof(new_key));
600 new_key.offset = split; 652 new_key.offset = split;
601 ret = btrfs_duplicate_item(trans, root, path, &new_key); 653 ret = btrfs_duplicate_item(trans, root, path, &new_key);
602 if (ret == -EAGAIN) { 654 if (ret == -EAGAIN) {
@@ -631,15 +683,18 @@ again:
631 path->slots[0]--; 683 path->slots[0]--;
632 extent_end = end; 684 extent_end = end;
633 } 685 }
686 recow = 1;
634 } 687 }
635 688
636 fi = btrfs_item_ptr(leaf, path->slots[0],
637 struct btrfs_file_extent_item);
638
639 other_start = end; 689 other_start = end;
640 other_end = 0; 690 other_end = 0;
641 if (extent_mergeable(leaf, path->slots[0] + 1, inode->i_ino, 691 if (extent_mergeable(leaf, path->slots[0] + 1,
642 bytenr, &other_start, &other_end)) { 692 inode->i_ino, bytenr, orig_offset,
693 &other_start, &other_end)) {
694 if (recow) {
695 btrfs_release_path(root, path);
696 goto again;
697 }
643 extent_end = other_end; 698 extent_end = other_end;
644 del_slot = path->slots[0] + 1; 699 del_slot = path->slots[0] + 1;
645 del_nr++; 700 del_nr++;
@@ -650,8 +705,13 @@ again:
650 } 705 }
651 other_start = 0; 706 other_start = 0;
652 other_end = start; 707 other_end = start;
653 if (extent_mergeable(leaf, path->slots[0] - 1, inode->i_ino, 708 if (extent_mergeable(leaf, path->slots[0] - 1,
654 bytenr, &other_start, &other_end)) { 709 inode->i_ino, bytenr, orig_offset,
710 &other_start, &other_end)) {
711 if (recow) {
712 btrfs_release_path(root, path);
713 goto again;
714 }
655 key.offset = other_start; 715 key.offset = other_start;
656 del_slot = path->slots[0]; 716 del_slot = path->slots[0];
657 del_nr++; 717 del_nr++;
@@ -660,22 +720,22 @@ again:
660 inode->i_ino, orig_offset); 720 inode->i_ino, orig_offset);
661 BUG_ON(ret); 721 BUG_ON(ret);
662 } 722 }
723 fi = btrfs_item_ptr(leaf, path->slots[0],
724 struct btrfs_file_extent_item);
663 if (del_nr == 0) { 725 if (del_nr == 0) {
664 btrfs_set_file_extent_type(leaf, fi, 726 btrfs_set_file_extent_type(leaf, fi,
665 BTRFS_FILE_EXTENT_REG); 727 BTRFS_FILE_EXTENT_REG);
666 btrfs_mark_buffer_dirty(leaf); 728 btrfs_mark_buffer_dirty(leaf);
667 goto out; 729 } else {
668 } 730 btrfs_set_file_extent_type(leaf, fi,
669 731 BTRFS_FILE_EXTENT_REG);
670 fi = btrfs_item_ptr(leaf, del_slot - 1, 732 btrfs_set_file_extent_num_bytes(leaf, fi,
671 struct btrfs_file_extent_item); 733 extent_end - key.offset);
672 btrfs_set_file_extent_type(leaf, fi, BTRFS_FILE_EXTENT_REG); 734 btrfs_mark_buffer_dirty(leaf);
673 btrfs_set_file_extent_num_bytes(leaf, fi,
674 extent_end - key.offset);
675 btrfs_mark_buffer_dirty(leaf);
676 735
677 ret = btrfs_del_items(trans, root, path, del_slot, del_nr); 736 ret = btrfs_del_items(trans, root, path, del_slot, del_nr);
678 BUG_ON(ret); 737 BUG_ON(ret);
738 }
679out: 739out:
680 btrfs_free_path(path); 740 btrfs_free_path(path);
681 return 0; 741 return 0;
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index 5440bab23635..8cd109972fa6 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -483,7 +483,8 @@ again:
483 nr_pages_ret = 0; 483 nr_pages_ret = 0;
484 484
485 /* flag the file so we don't compress in the future */ 485 /* flag the file so we don't compress in the future */
486 BTRFS_I(inode)->flags |= BTRFS_INODE_NOCOMPRESS; 486 if (!btrfs_test_opt(root, FORCE_COMPRESS))
487 BTRFS_I(inode)->flags |= BTRFS_INODE_NOCOMPRESS;
487 } 488 }
488 if (will_compress) { 489 if (will_compress) {
489 *num_added += 1; 490 *num_added += 1;
@@ -3995,7 +3996,11 @@ skip:
3995 3996
3996 /* Reached end of directory/root. Bump pos past the last item. */ 3997 /* Reached end of directory/root. Bump pos past the last item. */
3997 if (key_type == BTRFS_DIR_INDEX_KEY) 3998 if (key_type == BTRFS_DIR_INDEX_KEY)
3998 filp->f_pos = INT_LIMIT(off_t); 3999 /*
4000 * 32-bit glibc will use getdents64, but then strtol -
4001 * so the last number we can serve is this.
4002 */
4003 filp->f_pos = 0x7fffffff;
3999 else 4004 else
4000 filp->f_pos++; 4005 filp->f_pos++;
4001nopos: 4006nopos:
@@ -5789,7 +5794,7 @@ out_fail:
5789} 5794}
5790 5795
5791static int prealloc_file_range(struct inode *inode, u64 start, u64 end, 5796static int prealloc_file_range(struct inode *inode, u64 start, u64 end,
5792 u64 alloc_hint, int mode) 5797 u64 alloc_hint, int mode, loff_t actual_len)
5793{ 5798{
5794 struct btrfs_trans_handle *trans; 5799 struct btrfs_trans_handle *trans;
5795 struct btrfs_root *root = BTRFS_I(inode)->root; 5800 struct btrfs_root *root = BTRFS_I(inode)->root;
@@ -5798,6 +5803,7 @@ static int prealloc_file_range(struct inode *inode, u64 start, u64 end,
5798 u64 cur_offset = start; 5803 u64 cur_offset = start;
5799 u64 num_bytes = end - start; 5804 u64 num_bytes = end - start;
5800 int ret = 0; 5805 int ret = 0;
5806 u64 i_size;
5801 5807
5802 while (num_bytes > 0) { 5808 while (num_bytes > 0) {
5803 alloc_size = min(num_bytes, root->fs_info->max_extent); 5809 alloc_size = min(num_bytes, root->fs_info->max_extent);
@@ -5836,8 +5842,12 @@ static int prealloc_file_range(struct inode *inode, u64 start, u64 end,
5836 BTRFS_I(inode)->flags |= BTRFS_INODE_PREALLOC; 5842 BTRFS_I(inode)->flags |= BTRFS_INODE_PREALLOC;
5837 if (!(mode & FALLOC_FL_KEEP_SIZE) && 5843 if (!(mode & FALLOC_FL_KEEP_SIZE) &&
5838 cur_offset > inode->i_size) { 5844 cur_offset > inode->i_size) {
5839 i_size_write(inode, cur_offset); 5845 if (cur_offset > actual_len)
5840 btrfs_ordered_update_i_size(inode, cur_offset, NULL); 5846 i_size = actual_len;
5847 else
5848 i_size = cur_offset;
5849 i_size_write(inode, i_size);
5850 btrfs_ordered_update_i_size(inode, i_size, NULL);
5841 } 5851 }
5842 5852
5843 ret = btrfs_update_inode(trans, root, inode); 5853 ret = btrfs_update_inode(trans, root, inode);
@@ -5930,7 +5940,7 @@ static long btrfs_fallocate(struct inode *inode, int mode,
5930 !test_bit(EXTENT_FLAG_PREALLOC, &em->flags))) { 5940 !test_bit(EXTENT_FLAG_PREALLOC, &em->flags))) {
5931 ret = prealloc_file_range(inode, 5941 ret = prealloc_file_range(inode,
5932 cur_offset, last_byte, 5942 cur_offset, last_byte,
5933 alloc_hint, mode); 5943 alloc_hint, mode, offset+len);
5934 if (ret < 0) { 5944 if (ret < 0) {
5935 free_extent_map(em); 5945 free_extent_map(em);
5936 break; 5946 break;
diff --git a/fs/btrfs/ordered-data.c b/fs/btrfs/ordered-data.c
index b10a49d4bc6a..5c2a9e78a949 100644
--- a/fs/btrfs/ordered-data.c
+++ b/fs/btrfs/ordered-data.c
@@ -626,6 +626,8 @@ int btrfs_ordered_update_i_size(struct inode *inode, u64 offset,
626 626
627 if (ordered) 627 if (ordered)
628 offset = entry_end(ordered); 628 offset = entry_end(ordered);
629 else
630 offset = ALIGN(offset, BTRFS_I(inode)->root->sectorsize);
629 631
630 mutex_lock(&tree->mutex); 632 mutex_lock(&tree->mutex);
631 disk_i_size = BTRFS_I(inode)->disk_i_size; 633 disk_i_size = BTRFS_I(inode)->disk_i_size;
diff --git a/fs/btrfs/relocation.c b/fs/btrfs/relocation.c
index a9728680eca8..ed3e4a2ec2c8 100644
--- a/fs/btrfs/relocation.c
+++ b/fs/btrfs/relocation.c
@@ -3281,8 +3281,10 @@ static noinline_for_stack int relocate_block_group(struct reloc_control *rc)
3281 return -ENOMEM; 3281 return -ENOMEM;
3282 3282
3283 path = btrfs_alloc_path(); 3283 path = btrfs_alloc_path();
3284 if (!path) 3284 if (!path) {
3285 kfree(cluster);
3285 return -ENOMEM; 3286 return -ENOMEM;
3287 }
3286 3288
3287 rc->extents_found = 0; 3289 rc->extents_found = 0;
3288 rc->extents_skipped = 0; 3290 rc->extents_skipped = 0;
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index 3f9b45704fcd..8a1ea6e64575 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -66,7 +66,8 @@ enum {
66 Opt_degraded, Opt_subvol, Opt_device, Opt_nodatasum, Opt_nodatacow, 66 Opt_degraded, Opt_subvol, Opt_device, Opt_nodatasum, Opt_nodatacow,
67 Opt_max_extent, Opt_max_inline, Opt_alloc_start, Opt_nobarrier, 67 Opt_max_extent, Opt_max_inline, Opt_alloc_start, Opt_nobarrier,
68 Opt_ssd, Opt_nossd, Opt_ssd_spread, Opt_thread_pool, Opt_noacl, 68 Opt_ssd, Opt_nossd, Opt_ssd_spread, Opt_thread_pool, Opt_noacl,
69 Opt_compress, Opt_notreelog, Opt_ratio, Opt_flushoncommit, 69 Opt_compress, Opt_compress_force, Opt_notreelog, Opt_ratio,
70 Opt_flushoncommit,
70 Opt_discard, Opt_err, 71 Opt_discard, Opt_err,
71}; 72};
72 73
@@ -82,6 +83,7 @@ static match_table_t tokens = {
82 {Opt_alloc_start, "alloc_start=%s"}, 83 {Opt_alloc_start, "alloc_start=%s"},
83 {Opt_thread_pool, "thread_pool=%d"}, 84 {Opt_thread_pool, "thread_pool=%d"},
84 {Opt_compress, "compress"}, 85 {Opt_compress, "compress"},
86 {Opt_compress_force, "compress-force"},
85 {Opt_ssd, "ssd"}, 87 {Opt_ssd, "ssd"},
86 {Opt_ssd_spread, "ssd_spread"}, 88 {Opt_ssd_spread, "ssd_spread"},
87 {Opt_nossd, "nossd"}, 89 {Opt_nossd, "nossd"},
@@ -173,6 +175,11 @@ int btrfs_parse_options(struct btrfs_root *root, char *options)
173 printk(KERN_INFO "btrfs: use compression\n"); 175 printk(KERN_INFO "btrfs: use compression\n");
174 btrfs_set_opt(info->mount_opt, COMPRESS); 176 btrfs_set_opt(info->mount_opt, COMPRESS);
175 break; 177 break;
178 case Opt_compress_force:
179 printk(KERN_INFO "btrfs: forcing compression\n");
180 btrfs_set_opt(info->mount_opt, FORCE_COMPRESS);
181 btrfs_set_opt(info->mount_opt, COMPRESS);
182 break;
176 case Opt_ssd: 183 case Opt_ssd:
177 printk(KERN_INFO "btrfs: use ssd allocation scheme\n"); 184 printk(KERN_INFO "btrfs: use ssd allocation scheme\n");
178 btrfs_set_opt(info->mount_opt, SSD); 185 btrfs_set_opt(info->mount_opt, SSD);
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 198cff28766d..41ecbb2347f2 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -1135,7 +1135,7 @@ int btrfs_rm_device(struct btrfs_root *root, char *device_path)
1135 root->fs_info->avail_metadata_alloc_bits; 1135 root->fs_info->avail_metadata_alloc_bits;
1136 1136
1137 if ((all_avail & BTRFS_BLOCK_GROUP_RAID10) && 1137 if ((all_avail & BTRFS_BLOCK_GROUP_RAID10) &&
1138 root->fs_info->fs_devices->rw_devices <= 4) { 1138 root->fs_info->fs_devices->num_devices <= 4) {
1139 printk(KERN_ERR "btrfs: unable to go below four devices " 1139 printk(KERN_ERR "btrfs: unable to go below four devices "
1140 "on raid10\n"); 1140 "on raid10\n");
1141 ret = -EINVAL; 1141 ret = -EINVAL;
@@ -1143,7 +1143,7 @@ int btrfs_rm_device(struct btrfs_root *root, char *device_path)
1143 } 1143 }
1144 1144
1145 if ((all_avail & BTRFS_BLOCK_GROUP_RAID1) && 1145 if ((all_avail & BTRFS_BLOCK_GROUP_RAID1) &&
1146 root->fs_info->fs_devices->rw_devices <= 2) { 1146 root->fs_info->fs_devices->num_devices <= 2) {
1147 printk(KERN_ERR "btrfs: unable to go below two " 1147 printk(KERN_ERR "btrfs: unable to go below two "
1148 "devices on raid1\n"); 1148 "devices on raid1\n");
1149 ret = -EINVAL; 1149 ret = -EINVAL;
@@ -1434,8 +1434,8 @@ int btrfs_init_new_device(struct btrfs_root *root, char *device_path)
1434 return -EINVAL; 1434 return -EINVAL;
1435 1435
1436 bdev = open_bdev_exclusive(device_path, 0, root->fs_info->bdev_holder); 1436 bdev = open_bdev_exclusive(device_path, 0, root->fs_info->bdev_holder);
1437 if (!bdev) 1437 if (IS_ERR(bdev))
1438 return -EIO; 1438 return PTR_ERR(bdev);
1439 1439
1440 if (root->fs_info->fs_devices->seeding) { 1440 if (root->fs_info->fs_devices->seeding) {
1441 seeding_dev = 1; 1441 seeding_dev = 1;
@@ -2538,6 +2538,11 @@ int btrfs_chunk_readonly(struct btrfs_root *root, u64 chunk_offset)
2538 if (!em) 2538 if (!em)
2539 return 1; 2539 return 1;
2540 2540
2541 if (btrfs_test_opt(root, DEGRADED)) {
2542 free_extent_map(em);
2543 return 0;
2544 }
2545
2541 map = (struct map_lookup *)em->bdev; 2546 map = (struct map_lookup *)em->bdev;
2542 for (i = 0; i < map->num_stripes; i++) { 2547 for (i = 0; i < map->num_stripes; i++) {
2543 if (!map->stripes[i].dev->writeable) { 2548 if (!map->stripes[i].dev->writeable) {
@@ -2649,8 +2654,10 @@ again:
2649 em = lookup_extent_mapping(em_tree, logical, *length); 2654 em = lookup_extent_mapping(em_tree, logical, *length);
2650 read_unlock(&em_tree->lock); 2655 read_unlock(&em_tree->lock);
2651 2656
2652 if (!em && unplug_page) 2657 if (!em && unplug_page) {
2658 kfree(multi);
2653 return 0; 2659 return 0;
2660 }
2654 2661
2655 if (!em) { 2662 if (!em) {
2656 printk(KERN_CRIT "unable to find logical %llu len %llu\n", 2663 printk(KERN_CRIT "unable to find logical %llu len %llu\n",
diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c
index 332dd00f0894..c5c45de1a2ee 100644
--- a/fs/compat_ioctl.c
+++ b/fs/compat_ioctl.c
@@ -1005,6 +1005,9 @@ COMPATIBLE_IOCTL(SCSI_IOCTL_SEND_COMMAND)
1005COMPATIBLE_IOCTL(SCSI_IOCTL_PROBE_HOST) 1005COMPATIBLE_IOCTL(SCSI_IOCTL_PROBE_HOST)
1006COMPATIBLE_IOCTL(SCSI_IOCTL_GET_PCI) 1006COMPATIBLE_IOCTL(SCSI_IOCTL_GET_PCI)
1007#endif 1007#endif
1008/* Big V (don't complain on serial console) */
1009IGNORE_IOCTL(VT_OPENQRY)
1010IGNORE_IOCTL(VT_GETMODE)
1008/* Little p (/dev/rtc, /dev/envctrl, etc.) */ 1011/* Little p (/dev/rtc, /dev/envctrl, etc.) */
1009COMPATIBLE_IOCTL(RTC_AIE_ON) 1012COMPATIBLE_IOCTL(RTC_AIE_ON)
1010COMPATIBLE_IOCTL(RTC_AIE_OFF) 1013COMPATIBLE_IOCTL(RTC_AIE_OFF)
diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c
index b486169f42bf..274ac865bae8 100644
--- a/fs/debugfs/inode.c
+++ b/fs/debugfs/inode.c
@@ -160,15 +160,8 @@ static int debugfs_create_by_name(const char *name, mode_t mode,
160 * block. A pointer to that is in the struct vfsmount that we 160 * block. A pointer to that is in the struct vfsmount that we
161 * have around. 161 * have around.
162 */ 162 */
163 if (!parent) { 163 if (!parent)
164 if (debugfs_mount && debugfs_mount->mnt_sb) { 164 parent = debugfs_mount->mnt_sb->s_root;
165 parent = debugfs_mount->mnt_sb->s_root;
166 }
167 }
168 if (!parent) {
169 pr_debug("debugfs: Ah! can not find a parent!\n");
170 return -EFAULT;
171 }
172 165
173 *dentry = NULL; 166 *dentry = NULL;
174 mutex_lock(&parent->d_inode->i_mutex); 167 mutex_lock(&parent->d_inode->i_mutex);
diff --git a/fs/ecryptfs/crypto.c b/fs/ecryptfs/crypto.c
index fbb6e5eed697..7cb0a59f4b9d 100644
--- a/fs/ecryptfs/crypto.c
+++ b/fs/ecryptfs/crypto.c
@@ -1748,7 +1748,7 @@ ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm,
1748 char *cipher_name, size_t *key_size) 1748 char *cipher_name, size_t *key_size)
1749{ 1749{
1750 char dummy_key[ECRYPTFS_MAX_KEY_BYTES]; 1750 char dummy_key[ECRYPTFS_MAX_KEY_BYTES];
1751 char *full_alg_name; 1751 char *full_alg_name = NULL;
1752 int rc; 1752 int rc;
1753 1753
1754 *key_tfm = NULL; 1754 *key_tfm = NULL;
@@ -1763,7 +1763,6 @@ ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm,
1763 if (rc) 1763 if (rc)
1764 goto out; 1764 goto out;
1765 *key_tfm = crypto_alloc_blkcipher(full_alg_name, 0, CRYPTO_ALG_ASYNC); 1765 *key_tfm = crypto_alloc_blkcipher(full_alg_name, 0, CRYPTO_ALG_ASYNC);
1766 kfree(full_alg_name);
1767 if (IS_ERR(*key_tfm)) { 1766 if (IS_ERR(*key_tfm)) {
1768 rc = PTR_ERR(*key_tfm); 1767 rc = PTR_ERR(*key_tfm);
1769 printk(KERN_ERR "Unable to allocate crypto cipher with name " 1768 printk(KERN_ERR "Unable to allocate crypto cipher with name "
@@ -1786,6 +1785,7 @@ ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm,
1786 goto out; 1785 goto out;
1787 } 1786 }
1788out: 1787out:
1788 kfree(full_alg_name);
1789 return rc; 1789 return rc;
1790} 1790}
1791 1791
diff --git a/fs/ecryptfs/file.c b/fs/ecryptfs/file.c
index 9e944057001b..678172b61be2 100644
--- a/fs/ecryptfs/file.c
+++ b/fs/ecryptfs/file.c
@@ -158,7 +158,7 @@ static int ecryptfs_open(struct inode *inode, struct file *file)
158 struct dentry *ecryptfs_dentry = file->f_path.dentry; 158 struct dentry *ecryptfs_dentry = file->f_path.dentry;
159 /* Private value of ecryptfs_dentry allocated in 159 /* Private value of ecryptfs_dentry allocated in
160 * ecryptfs_lookup() */ 160 * ecryptfs_lookup() */
161 struct dentry *lower_dentry = ecryptfs_dentry_to_lower(ecryptfs_dentry); 161 struct dentry *lower_dentry;
162 struct ecryptfs_file_info *file_info; 162 struct ecryptfs_file_info *file_info;
163 163
164 mount_crypt_stat = &ecryptfs_superblock_to_private( 164 mount_crypt_stat = &ecryptfs_superblock_to_private(
@@ -191,13 +191,6 @@ static int ecryptfs_open(struct inode *inode, struct file *file)
191 | ECRYPTFS_ENCRYPTED); 191 | ECRYPTFS_ENCRYPTED);
192 } 192 }
193 mutex_unlock(&crypt_stat->cs_mutex); 193 mutex_unlock(&crypt_stat->cs_mutex);
194 if ((ecryptfs_inode_to_private(inode)->lower_file->f_flags & O_RDONLY)
195 && !(file->f_flags & O_RDONLY)) {
196 rc = -EPERM;
197 printk(KERN_WARNING "%s: Lower persistent file is RO; eCryptfs "
198 "file must hence be opened RO\n", __func__);
199 goto out;
200 }
201 if (!ecryptfs_inode_to_private(inode)->lower_file) { 194 if (!ecryptfs_inode_to_private(inode)->lower_file) {
202 rc = ecryptfs_init_persistent_file(ecryptfs_dentry); 195 rc = ecryptfs_init_persistent_file(ecryptfs_dentry);
203 if (rc) { 196 if (rc) {
@@ -208,6 +201,13 @@ static int ecryptfs_open(struct inode *inode, struct file *file)
208 goto out; 201 goto out;
209 } 202 }
210 } 203 }
204 if ((ecryptfs_inode_to_private(inode)->lower_file->f_flags & O_RDONLY)
205 && !(file->f_flags & O_RDONLY)) {
206 rc = -EPERM;
207 printk(KERN_WARNING "%s: Lower persistent file is RO; eCryptfs "
208 "file must hence be opened RO\n", __func__);
209 goto out;
210 }
211 ecryptfs_set_file_lower( 211 ecryptfs_set_file_lower(
212 file, ecryptfs_inode_to_private(inode)->lower_file); 212 file, ecryptfs_inode_to_private(inode)->lower_file);
213 if (S_ISDIR(ecryptfs_dentry->d_inode->i_mode)) { 213 if (S_ISDIR(ecryptfs_dentry->d_inode->i_mode)) {
@@ -299,7 +299,6 @@ static int ecryptfs_ioctl(struct inode *inode, struct file *file,
299const struct file_operations ecryptfs_dir_fops = { 299const struct file_operations ecryptfs_dir_fops = {
300 .readdir = ecryptfs_readdir, 300 .readdir = ecryptfs_readdir,
301 .ioctl = ecryptfs_ioctl, 301 .ioctl = ecryptfs_ioctl,
302 .mmap = generic_file_mmap,
303 .open = ecryptfs_open, 302 .open = ecryptfs_open,
304 .flush = ecryptfs_flush, 303 .flush = ecryptfs_flush,
305 .release = ecryptfs_release, 304 .release = ecryptfs_release,
diff --git a/fs/ecryptfs/inode.c b/fs/ecryptfs/inode.c
index 7f8545032930..4a430ab4115c 100644
--- a/fs/ecryptfs/inode.c
+++ b/fs/ecryptfs/inode.c
@@ -282,7 +282,8 @@ int ecryptfs_lookup_and_interpose_lower(struct dentry *ecryptfs_dentry,
282 goto out; 282 goto out;
283 } 283 }
284 rc = ecryptfs_interpose(lower_dentry, ecryptfs_dentry, 284 rc = ecryptfs_interpose(lower_dentry, ecryptfs_dentry,
285 ecryptfs_dir_inode->i_sb, 1); 285 ecryptfs_dir_inode->i_sb,
286 ECRYPTFS_INTERPOSE_FLAG_D_ADD);
286 if (rc) { 287 if (rc) {
287 printk(KERN_ERR "%s: Error interposing; rc = [%d]\n", 288 printk(KERN_ERR "%s: Error interposing; rc = [%d]\n",
288 __func__, rc); 289 __func__, rc);
@@ -463,9 +464,6 @@ out_lock:
463 unlock_dir(lower_dir_dentry); 464 unlock_dir(lower_dir_dentry);
464 dput(lower_new_dentry); 465 dput(lower_new_dentry);
465 dput(lower_old_dentry); 466 dput(lower_old_dentry);
466 d_drop(lower_old_dentry);
467 d_drop(new_dentry);
468 d_drop(old_dentry);
469 return rc; 467 return rc;
470} 468}
471 469
@@ -614,6 +612,7 @@ ecryptfs_rename(struct inode *old_dir, struct dentry *old_dentry,
614 struct dentry *lower_new_dentry; 612 struct dentry *lower_new_dentry;
615 struct dentry *lower_old_dir_dentry; 613 struct dentry *lower_old_dir_dentry;
616 struct dentry *lower_new_dir_dentry; 614 struct dentry *lower_new_dir_dentry;
615 struct dentry *trap = NULL;
617 616
618 lower_old_dentry = ecryptfs_dentry_to_lower(old_dentry); 617 lower_old_dentry = ecryptfs_dentry_to_lower(old_dentry);
619 lower_new_dentry = ecryptfs_dentry_to_lower(new_dentry); 618 lower_new_dentry = ecryptfs_dentry_to_lower(new_dentry);
@@ -621,7 +620,17 @@ ecryptfs_rename(struct inode *old_dir, struct dentry *old_dentry,
621 dget(lower_new_dentry); 620 dget(lower_new_dentry);
622 lower_old_dir_dentry = dget_parent(lower_old_dentry); 621 lower_old_dir_dentry = dget_parent(lower_old_dentry);
623 lower_new_dir_dentry = dget_parent(lower_new_dentry); 622 lower_new_dir_dentry = dget_parent(lower_new_dentry);
624 lock_rename(lower_old_dir_dentry, lower_new_dir_dentry); 623 trap = lock_rename(lower_old_dir_dentry, lower_new_dir_dentry);
624 /* source should not be ancestor of target */
625 if (trap == lower_old_dentry) {
626 rc = -EINVAL;
627 goto out_lock;
628 }
629 /* target should not be ancestor of source */
630 if (trap == lower_new_dentry) {
631 rc = -ENOTEMPTY;
632 goto out_lock;
633 }
625 rc = vfs_rename(lower_old_dir_dentry->d_inode, lower_old_dentry, 634 rc = vfs_rename(lower_old_dir_dentry->d_inode, lower_old_dentry,
626 lower_new_dir_dentry->d_inode, lower_new_dentry); 635 lower_new_dir_dentry->d_inode, lower_new_dentry);
627 if (rc) 636 if (rc)
@@ -772,18 +781,23 @@ upper_size_to_lower_size(struct ecryptfs_crypt_stat *crypt_stat,
772} 781}
773 782
774/** 783/**
775 * ecryptfs_truncate 784 * truncate_upper
776 * @dentry: The ecryptfs layer dentry 785 * @dentry: The ecryptfs layer dentry
777 * @new_length: The length to expand the file to 786 * @ia: Address of the ecryptfs inode's attributes
787 * @lower_ia: Address of the lower inode's attributes
778 * 788 *
779 * Function to handle truncations modifying the size of the file. Note 789 * Function to handle truncations modifying the size of the file. Note
780 * that the file sizes are interpolated. When expanding, we are simply 790 * that the file sizes are interpolated. When expanding, we are simply
781 * writing strings of 0's out. When truncating, we need to modify the 791 * writing strings of 0's out. When truncating, we truncate the upper
782 * underlying file size according to the page index interpolations. 792 * inode and update the lower_ia according to the page index
793 * interpolations. If ATTR_SIZE is set in lower_ia->ia_valid upon return,
794 * the caller must use lower_ia in a call to notify_change() to perform
795 * the truncation of the lower inode.
783 * 796 *
784 * Returns zero on success; non-zero otherwise 797 * Returns zero on success; non-zero otherwise
785 */ 798 */
786int ecryptfs_truncate(struct dentry *dentry, loff_t new_length) 799static int truncate_upper(struct dentry *dentry, struct iattr *ia,
800 struct iattr *lower_ia)
787{ 801{
788 int rc = 0; 802 int rc = 0;
789 struct inode *inode = dentry->d_inode; 803 struct inode *inode = dentry->d_inode;
@@ -794,8 +808,10 @@ int ecryptfs_truncate(struct dentry *dentry, loff_t new_length)
794 loff_t lower_size_before_truncate; 808 loff_t lower_size_before_truncate;
795 loff_t lower_size_after_truncate; 809 loff_t lower_size_after_truncate;
796 810
797 if (unlikely((new_length == i_size))) 811 if (unlikely((ia->ia_size == i_size))) {
812 lower_ia->ia_valid &= ~ATTR_SIZE;
798 goto out; 813 goto out;
814 }
799 crypt_stat = &ecryptfs_inode_to_private(dentry->d_inode)->crypt_stat; 815 crypt_stat = &ecryptfs_inode_to_private(dentry->d_inode)->crypt_stat;
800 /* Set up a fake ecryptfs file, this is used to interface with 816 /* Set up a fake ecryptfs file, this is used to interface with
801 * the file in the underlying filesystem so that the 817 * the file in the underlying filesystem so that the
@@ -815,28 +831,30 @@ int ecryptfs_truncate(struct dentry *dentry, loff_t new_length)
815 &fake_ecryptfs_file, 831 &fake_ecryptfs_file,
816 ecryptfs_inode_to_private(dentry->d_inode)->lower_file); 832 ecryptfs_inode_to_private(dentry->d_inode)->lower_file);
817 /* Switch on growing or shrinking file */ 833 /* Switch on growing or shrinking file */
818 if (new_length > i_size) { 834 if (ia->ia_size > i_size) {
819 char zero[] = { 0x00 }; 835 char zero[] = { 0x00 };
820 836
837 lower_ia->ia_valid &= ~ATTR_SIZE;
821 /* Write a single 0 at the last position of the file; 838 /* Write a single 0 at the last position of the file;
822 * this triggers code that will fill in 0's throughout 839 * this triggers code that will fill in 0's throughout
823 * the intermediate portion of the previous end of the 840 * the intermediate portion of the previous end of the
824 * file and the new and of the file */ 841 * file and the new and of the file */
825 rc = ecryptfs_write(&fake_ecryptfs_file, zero, 842 rc = ecryptfs_write(&fake_ecryptfs_file, zero,
826 (new_length - 1), 1); 843 (ia->ia_size - 1), 1);
827 } else { /* new_length < i_size_read(inode) */ 844 } else { /* ia->ia_size < i_size_read(inode) */
828 /* We're chopping off all the pages down do the page 845 /* We're chopping off all the pages down to the page
829 * in which new_length is located. Fill in the end of 846 * in which ia->ia_size is located. Fill in the end of
830 * that page from (new_length & ~PAGE_CACHE_MASK) to 847 * that page from (ia->ia_size & ~PAGE_CACHE_MASK) to
831 * PAGE_CACHE_SIZE with zeros. */ 848 * PAGE_CACHE_SIZE with zeros. */
832 size_t num_zeros = (PAGE_CACHE_SIZE 849 size_t num_zeros = (PAGE_CACHE_SIZE
833 - (new_length & ~PAGE_CACHE_MASK)); 850 - (ia->ia_size & ~PAGE_CACHE_MASK));
834 851
835 if (!(crypt_stat->flags & ECRYPTFS_ENCRYPTED)) { 852 if (!(crypt_stat->flags & ECRYPTFS_ENCRYPTED)) {
836 rc = vmtruncate(inode, new_length); 853 rc = vmtruncate(inode, ia->ia_size);
837 if (rc) 854 if (rc)
838 goto out_free; 855 goto out_free;
839 rc = vmtruncate(lower_dentry->d_inode, new_length); 856 lower_ia->ia_size = ia->ia_size;
857 lower_ia->ia_valid |= ATTR_SIZE;
840 goto out_free; 858 goto out_free;
841 } 859 }
842 if (num_zeros) { 860 if (num_zeros) {
@@ -848,7 +866,7 @@ int ecryptfs_truncate(struct dentry *dentry, loff_t new_length)
848 goto out_free; 866 goto out_free;
849 } 867 }
850 rc = ecryptfs_write(&fake_ecryptfs_file, zeros_virt, 868 rc = ecryptfs_write(&fake_ecryptfs_file, zeros_virt,
851 new_length, num_zeros); 869 ia->ia_size, num_zeros);
852 kfree(zeros_virt); 870 kfree(zeros_virt);
853 if (rc) { 871 if (rc) {
854 printk(KERN_ERR "Error attempting to zero out " 872 printk(KERN_ERR "Error attempting to zero out "
@@ -857,7 +875,7 @@ int ecryptfs_truncate(struct dentry *dentry, loff_t new_length)
857 goto out_free; 875 goto out_free;
858 } 876 }
859 } 877 }
860 vmtruncate(inode, new_length); 878 vmtruncate(inode, ia->ia_size);
861 rc = ecryptfs_write_inode_size_to_metadata(inode); 879 rc = ecryptfs_write_inode_size_to_metadata(inode);
862 if (rc) { 880 if (rc) {
863 printk(KERN_ERR "Problem with " 881 printk(KERN_ERR "Problem with "
@@ -870,10 +888,12 @@ int ecryptfs_truncate(struct dentry *dentry, loff_t new_length)
870 lower_size_before_truncate = 888 lower_size_before_truncate =
871 upper_size_to_lower_size(crypt_stat, i_size); 889 upper_size_to_lower_size(crypt_stat, i_size);
872 lower_size_after_truncate = 890 lower_size_after_truncate =
873 upper_size_to_lower_size(crypt_stat, new_length); 891 upper_size_to_lower_size(crypt_stat, ia->ia_size);
874 if (lower_size_after_truncate < lower_size_before_truncate) 892 if (lower_size_after_truncate < lower_size_before_truncate) {
875 vmtruncate(lower_dentry->d_inode, 893 lower_ia->ia_size = lower_size_after_truncate;
876 lower_size_after_truncate); 894 lower_ia->ia_valid |= ATTR_SIZE;
895 } else
896 lower_ia->ia_valid &= ~ATTR_SIZE;
877 } 897 }
878out_free: 898out_free:
879 if (ecryptfs_file_to_private(&fake_ecryptfs_file)) 899 if (ecryptfs_file_to_private(&fake_ecryptfs_file))
@@ -883,6 +903,33 @@ out:
883 return rc; 903 return rc;
884} 904}
885 905
906/**
907 * ecryptfs_truncate
908 * @dentry: The ecryptfs layer dentry
909 * @new_length: The length to expand the file to
910 *
911 * Simple function that handles the truncation of an eCryptfs inode and
912 * its corresponding lower inode.
913 *
914 * Returns zero on success; non-zero otherwise
915 */
916int ecryptfs_truncate(struct dentry *dentry, loff_t new_length)
917{
918 struct iattr ia = { .ia_valid = ATTR_SIZE, .ia_size = new_length };
919 struct iattr lower_ia = { .ia_valid = 0 };
920 int rc;
921
922 rc = truncate_upper(dentry, &ia, &lower_ia);
923 if (!rc && lower_ia.ia_valid & ATTR_SIZE) {
924 struct dentry *lower_dentry = ecryptfs_dentry_to_lower(dentry);
925
926 mutex_lock(&lower_dentry->d_inode->i_mutex);
927 rc = notify_change(lower_dentry, &lower_ia);
928 mutex_unlock(&lower_dentry->d_inode->i_mutex);
929 }
930 return rc;
931}
932
886static int 933static int
887ecryptfs_permission(struct inode *inode, int mask) 934ecryptfs_permission(struct inode *inode, int mask)
888{ 935{
@@ -905,6 +952,7 @@ static int ecryptfs_setattr(struct dentry *dentry, struct iattr *ia)
905{ 952{
906 int rc = 0; 953 int rc = 0;
907 struct dentry *lower_dentry; 954 struct dentry *lower_dentry;
955 struct iattr lower_ia;
908 struct inode *inode; 956 struct inode *inode;
909 struct inode *lower_inode; 957 struct inode *lower_inode;
910 struct ecryptfs_crypt_stat *crypt_stat; 958 struct ecryptfs_crypt_stat *crypt_stat;
@@ -943,15 +991,11 @@ static int ecryptfs_setattr(struct dentry *dentry, struct iattr *ia)
943 } 991 }
944 } 992 }
945 mutex_unlock(&crypt_stat->cs_mutex); 993 mutex_unlock(&crypt_stat->cs_mutex);
994 memcpy(&lower_ia, ia, sizeof(lower_ia));
995 if (ia->ia_valid & ATTR_FILE)
996 lower_ia.ia_file = ecryptfs_file_to_lower(ia->ia_file);
946 if (ia->ia_valid & ATTR_SIZE) { 997 if (ia->ia_valid & ATTR_SIZE) {
947 ecryptfs_printk(KERN_DEBUG, 998 rc = truncate_upper(dentry, ia, &lower_ia);
948 "ia->ia_valid = [0x%x] ATTR_SIZE" " = [0x%x]\n",
949 ia->ia_valid, ATTR_SIZE);
950 rc = ecryptfs_truncate(dentry, ia->ia_size);
951 /* ecryptfs_truncate handles resizing of the lower file */
952 ia->ia_valid &= ~ATTR_SIZE;
953 ecryptfs_printk(KERN_DEBUG, "ia->ia_valid = [%x]\n",
954 ia->ia_valid);
955 if (rc < 0) 999 if (rc < 0)
956 goto out; 1000 goto out;
957 } 1001 }
@@ -960,17 +1004,32 @@ static int ecryptfs_setattr(struct dentry *dentry, struct iattr *ia)
960 * mode change is for clearing setuid/setgid bits. Allow lower fs 1004 * mode change is for clearing setuid/setgid bits. Allow lower fs
961 * to interpret this in its own way. 1005 * to interpret this in its own way.
962 */ 1006 */
963 if (ia->ia_valid & (ATTR_KILL_SUID | ATTR_KILL_SGID)) 1007 if (lower_ia.ia_valid & (ATTR_KILL_SUID | ATTR_KILL_SGID))
964 ia->ia_valid &= ~ATTR_MODE; 1008 lower_ia.ia_valid &= ~ATTR_MODE;
965 1009
966 mutex_lock(&lower_dentry->d_inode->i_mutex); 1010 mutex_lock(&lower_dentry->d_inode->i_mutex);
967 rc = notify_change(lower_dentry, ia); 1011 rc = notify_change(lower_dentry, &lower_ia);
968 mutex_unlock(&lower_dentry->d_inode->i_mutex); 1012 mutex_unlock(&lower_dentry->d_inode->i_mutex);
969out: 1013out:
970 fsstack_copy_attr_all(inode, lower_inode); 1014 fsstack_copy_attr_all(inode, lower_inode);
971 return rc; 1015 return rc;
972} 1016}
973 1017
1018int ecryptfs_getattr(struct vfsmount *mnt, struct dentry *dentry,
1019 struct kstat *stat)
1020{
1021 struct kstat lower_stat;
1022 int rc;
1023
1024 rc = vfs_getattr(ecryptfs_dentry_to_lower_mnt(dentry),
1025 ecryptfs_dentry_to_lower(dentry), &lower_stat);
1026 if (!rc) {
1027 generic_fillattr(dentry->d_inode, stat);
1028 stat->blocks = lower_stat.blocks;
1029 }
1030 return rc;
1031}
1032
974int 1033int
975ecryptfs_setxattr(struct dentry *dentry, const char *name, const void *value, 1034ecryptfs_setxattr(struct dentry *dentry, const char *name, const void *value,
976 size_t size, int flags) 1035 size_t size, int flags)
@@ -1100,6 +1159,7 @@ const struct inode_operations ecryptfs_dir_iops = {
1100const struct inode_operations ecryptfs_main_iops = { 1159const struct inode_operations ecryptfs_main_iops = {
1101 .permission = ecryptfs_permission, 1160 .permission = ecryptfs_permission,
1102 .setattr = ecryptfs_setattr, 1161 .setattr = ecryptfs_setattr,
1162 .getattr = ecryptfs_getattr,
1103 .setxattr = ecryptfs_setxattr, 1163 .setxattr = ecryptfs_setxattr,
1104 .getxattr = ecryptfs_getxattr, 1164 .getxattr = ecryptfs_getxattr,
1105 .listxattr = ecryptfs_listxattr, 1165 .listxattr = ecryptfs_listxattr,
diff --git a/fs/ecryptfs/main.c b/fs/ecryptfs/main.c
index 567bc4b9f70a..ea2f92101dfe 100644
--- a/fs/ecryptfs/main.c
+++ b/fs/ecryptfs/main.c
@@ -585,8 +585,8 @@ out:
585 * with as much information as it can before needing 585 * with as much information as it can before needing
586 * the lower filesystem. 586 * the lower filesystem.
587 * ecryptfs_read_super(): this accesses the lower filesystem and uses 587 * ecryptfs_read_super(): this accesses the lower filesystem and uses
588 * ecryptfs_interpolate to perform most of the linking 588 * ecryptfs_interpose to perform most of the linking
589 * ecryptfs_interpolate(): links the lower filesystem into ecryptfs 589 * ecryptfs_interpose(): links the lower filesystem into ecryptfs (inode.c)
590 */ 590 */
591static int ecryptfs_get_sb(struct file_system_type *fs_type, int flags, 591static int ecryptfs_get_sb(struct file_system_type *fs_type, int flags,
592 const char *dev_name, void *raw_data, 592 const char *dev_name, void *raw_data,
diff --git a/fs/eventfd.c b/fs/eventfd.c
index d26402ff06ea..7758cc382ef0 100644
--- a/fs/eventfd.c
+++ b/fs/eventfd.c
@@ -135,26 +135,71 @@ static unsigned int eventfd_poll(struct file *file, poll_table *wait)
135 return events; 135 return events;
136} 136}
137 137
138static ssize_t eventfd_read(struct file *file, char __user *buf, size_t count, 138static void eventfd_ctx_do_read(struct eventfd_ctx *ctx, __u64 *cnt)
139 loff_t *ppos) 139{
140 *cnt = (ctx->flags & EFD_SEMAPHORE) ? 1 : ctx->count;
141 ctx->count -= *cnt;
142}
143
144/**
145 * eventfd_ctx_remove_wait_queue - Read the current counter and removes wait queue.
146 * @ctx: [in] Pointer to eventfd context.
147 * @wait: [in] Wait queue to be removed.
148 * @cnt: [out] Pointer to the 64bit conter value.
149 *
150 * Returns zero if successful, or the following error codes:
151 *
152 * -EAGAIN : The operation would have blocked.
153 *
154 * This is used to atomically remove a wait queue entry from the eventfd wait
155 * queue head, and read/reset the counter value.
156 */
157int eventfd_ctx_remove_wait_queue(struct eventfd_ctx *ctx, wait_queue_t *wait,
158 __u64 *cnt)
159{
160 unsigned long flags;
161
162 spin_lock_irqsave(&ctx->wqh.lock, flags);
163 eventfd_ctx_do_read(ctx, cnt);
164 __remove_wait_queue(&ctx->wqh, wait);
165 if (*cnt != 0 && waitqueue_active(&ctx->wqh))
166 wake_up_locked_poll(&ctx->wqh, POLLOUT);
167 spin_unlock_irqrestore(&ctx->wqh.lock, flags);
168
169 return *cnt != 0 ? 0 : -EAGAIN;
170}
171EXPORT_SYMBOL_GPL(eventfd_ctx_remove_wait_queue);
172
173/**
174 * eventfd_ctx_read - Reads the eventfd counter or wait if it is zero.
175 * @ctx: [in] Pointer to eventfd context.
176 * @no_wait: [in] Different from zero if the operation should not block.
177 * @cnt: [out] Pointer to the 64bit conter value.
178 *
179 * Returns zero if successful, or the following error codes:
180 *
181 * -EAGAIN : The operation would have blocked but @no_wait was nonzero.
182 * -ERESTARTSYS : A signal interrupted the wait operation.
183 *
184 * If @no_wait is zero, the function might sleep until the eventfd internal
185 * counter becomes greater than zero.
186 */
187ssize_t eventfd_ctx_read(struct eventfd_ctx *ctx, int no_wait, __u64 *cnt)
140{ 188{
141 struct eventfd_ctx *ctx = file->private_data;
142 ssize_t res; 189 ssize_t res;
143 __u64 ucnt = 0;
144 DECLARE_WAITQUEUE(wait, current); 190 DECLARE_WAITQUEUE(wait, current);
145 191
146 if (count < sizeof(ucnt))
147 return -EINVAL;
148 spin_lock_irq(&ctx->wqh.lock); 192 spin_lock_irq(&ctx->wqh.lock);
193 *cnt = 0;
149 res = -EAGAIN; 194 res = -EAGAIN;
150 if (ctx->count > 0) 195 if (ctx->count > 0)
151 res = sizeof(ucnt); 196 res = 0;
152 else if (!(file->f_flags & O_NONBLOCK)) { 197 else if (!no_wait) {
153 __add_wait_queue(&ctx->wqh, &wait); 198 __add_wait_queue(&ctx->wqh, &wait);
154 for (res = 0;;) { 199 for (;;) {
155 set_current_state(TASK_INTERRUPTIBLE); 200 set_current_state(TASK_INTERRUPTIBLE);
156 if (ctx->count > 0) { 201 if (ctx->count > 0) {
157 res = sizeof(ucnt); 202 res = 0;
158 break; 203 break;
159 } 204 }
160 if (signal_pending(current)) { 205 if (signal_pending(current)) {
@@ -168,18 +213,32 @@ static ssize_t eventfd_read(struct file *file, char __user *buf, size_t count,
168 __remove_wait_queue(&ctx->wqh, &wait); 213 __remove_wait_queue(&ctx->wqh, &wait);
169 __set_current_state(TASK_RUNNING); 214 __set_current_state(TASK_RUNNING);
170 } 215 }
171 if (likely(res > 0)) { 216 if (likely(res == 0)) {
172 ucnt = (ctx->flags & EFD_SEMAPHORE) ? 1 : ctx->count; 217 eventfd_ctx_do_read(ctx, cnt);
173 ctx->count -= ucnt;
174 if (waitqueue_active(&ctx->wqh)) 218 if (waitqueue_active(&ctx->wqh))
175 wake_up_locked_poll(&ctx->wqh, POLLOUT); 219 wake_up_locked_poll(&ctx->wqh, POLLOUT);
176 } 220 }
177 spin_unlock_irq(&ctx->wqh.lock); 221 spin_unlock_irq(&ctx->wqh.lock);
178 if (res > 0 && put_user(ucnt, (__u64 __user *) buf))
179 return -EFAULT;
180 222
181 return res; 223 return res;
182} 224}
225EXPORT_SYMBOL_GPL(eventfd_ctx_read);
226
227static ssize_t eventfd_read(struct file *file, char __user *buf, size_t count,
228 loff_t *ppos)
229{
230 struct eventfd_ctx *ctx = file->private_data;
231 ssize_t res;
232 __u64 cnt;
233
234 if (count < sizeof(cnt))
235 return -EINVAL;
236 res = eventfd_ctx_read(ctx, file->f_flags & O_NONBLOCK, &cnt);
237 if (res < 0)
238 return res;
239
240 return put_user(cnt, (__u64 __user *) buf) ? -EFAULT : sizeof(cnt);
241}
183 242
184static ssize_t eventfd_write(struct file *file, const char __user *buf, size_t count, 243static ssize_t eventfd_write(struct file *file, const char __user *buf, size_t count,
185 loff_t *ppos) 244 loff_t *ppos)
diff --git a/fs/exec.c b/fs/exec.c
index 632b02e34ec7..675c3f44c2ea 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -941,9 +941,7 @@ void set_task_comm(struct task_struct *tsk, char *buf)
941 941
942int flush_old_exec(struct linux_binprm * bprm) 942int flush_old_exec(struct linux_binprm * bprm)
943{ 943{
944 char * name; 944 int retval;
945 int i, ch, retval;
946 char tcomm[sizeof(current->comm)];
947 945
948 /* 946 /*
949 * Make sure we have a private signal table and that 947 * Make sure we have a private signal table and that
@@ -963,6 +961,20 @@ int flush_old_exec(struct linux_binprm * bprm)
963 goto out; 961 goto out;
964 962
965 bprm->mm = NULL; /* We're using it now */ 963 bprm->mm = NULL; /* We're using it now */
964 return 0;
965
966out:
967 return retval;
968}
969EXPORT_SYMBOL(flush_old_exec);
970
971void setup_new_exec(struct linux_binprm * bprm)
972{
973 int i, ch;
974 char * name;
975 char tcomm[sizeof(current->comm)];
976
977 arch_pick_mmap_layout(current->mm);
966 978
967 /* This is the point of no return */ 979 /* This is the point of no return */
968 current->sas_ss_sp = current->sas_ss_size = 0; 980 current->sas_ss_sp = current->sas_ss_size = 0;
@@ -1019,14 +1031,8 @@ int flush_old_exec(struct linux_binprm * bprm)
1019 1031
1020 flush_signal_handlers(current, 0); 1032 flush_signal_handlers(current, 0);
1021 flush_old_files(current->files); 1033 flush_old_files(current->files);
1022
1023 return 0;
1024
1025out:
1026 return retval;
1027} 1034}
1028 1035EXPORT_SYMBOL(setup_new_exec);
1029EXPORT_SYMBOL(flush_old_exec);
1030 1036
1031/* 1037/*
1032 * Prepare credentials and lock ->cred_guard_mutex. 1038 * Prepare credentials and lock ->cred_guard_mutex.
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
index af7b62699ea9..874d169a193e 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
@@ -361,14 +361,11 @@ struct ext4_new_group_data {
361 so set the magic i_delalloc_reserve_flag after taking the 361 so set the magic i_delalloc_reserve_flag after taking the
362 inode allocation semaphore for */ 362 inode allocation semaphore for */
363#define EXT4_GET_BLOCKS_DELALLOC_RESERVE 0x0004 363#define EXT4_GET_BLOCKS_DELALLOC_RESERVE 0x0004
364 /* Call ext4_da_update_reserve_space() after successfully
365 allocating the blocks */
366#define EXT4_GET_BLOCKS_UPDATE_RESERVE_SPACE 0x0008
367 /* caller is from the direct IO path, request to creation of an 364 /* caller is from the direct IO path, request to creation of an
368 unitialized extents if not allocated, split the uninitialized 365 unitialized extents if not allocated, split the uninitialized
369 extent if blocks has been preallocated already*/ 366 extent if blocks has been preallocated already*/
370#define EXT4_GET_BLOCKS_DIO 0x0010 367#define EXT4_GET_BLOCKS_DIO 0x0008
371#define EXT4_GET_BLOCKS_CONVERT 0x0020 368#define EXT4_GET_BLOCKS_CONVERT 0x0010
372#define EXT4_GET_BLOCKS_DIO_CREATE_EXT (EXT4_GET_BLOCKS_DIO|\ 369#define EXT4_GET_BLOCKS_DIO_CREATE_EXT (EXT4_GET_BLOCKS_DIO|\
373 EXT4_GET_BLOCKS_CREATE_UNINIT_EXT) 370 EXT4_GET_BLOCKS_CREATE_UNINIT_EXT)
374 /* Convert extent to initialized after direct IO complete */ 371 /* Convert extent to initialized after direct IO complete */
@@ -1443,6 +1440,8 @@ extern int ext4_block_truncate_page(handle_t *handle,
1443extern int ext4_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf); 1440extern int ext4_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf);
1444extern qsize_t *ext4_get_reserved_space(struct inode *inode); 1441extern qsize_t *ext4_get_reserved_space(struct inode *inode);
1445extern int flush_aio_dio_completed_IO(struct inode *inode); 1442extern int flush_aio_dio_completed_IO(struct inode *inode);
1443extern void ext4_da_update_reserve_space(struct inode *inode,
1444 int used, int quota_claim);
1446/* ioctl.c */ 1445/* ioctl.c */
1447extern long ext4_ioctl(struct file *, unsigned int, unsigned long); 1446extern long ext4_ioctl(struct file *, unsigned int, unsigned long);
1448extern long ext4_compat_ioctl(struct file *, unsigned int, unsigned long); 1447extern long ext4_compat_ioctl(struct file *, unsigned int, unsigned long);
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index 7d7b74e94687..765a4826b118 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -3132,7 +3132,19 @@ out:
3132 unmap_underlying_metadata_blocks(inode->i_sb->s_bdev, 3132 unmap_underlying_metadata_blocks(inode->i_sb->s_bdev,
3133 newblock + max_blocks, 3133 newblock + max_blocks,
3134 allocated - max_blocks); 3134 allocated - max_blocks);
3135 allocated = max_blocks;
3135 } 3136 }
3137
3138 /*
3139 * If we have done fallocate with the offset that is already
3140 * delayed allocated, we would have block reservation
3141 * and quota reservation done in the delayed write path.
3142 * But fallocate would have already updated quota and block
3143 * count for this offset. So cancel these reservation
3144 */
3145 if (flags & EXT4_GET_BLOCKS_DELALLOC_RESERVE)
3146 ext4_da_update_reserve_space(inode, allocated, 0);
3147
3136map_out: 3148map_out:
3137 set_buffer_mapped(bh_result); 3149 set_buffer_mapped(bh_result);
3138out1: 3150out1:
@@ -3368,9 +3380,18 @@ int ext4_ext_get_blocks(handle_t *handle, struct inode *inode,
3368 /* previous routine could use block we allocated */ 3380 /* previous routine could use block we allocated */
3369 newblock = ext_pblock(&newex); 3381 newblock = ext_pblock(&newex);
3370 allocated = ext4_ext_get_actual_len(&newex); 3382 allocated = ext4_ext_get_actual_len(&newex);
3383 if (allocated > max_blocks)
3384 allocated = max_blocks;
3371 set_buffer_new(bh_result); 3385 set_buffer_new(bh_result);
3372 3386
3373 /* 3387 /*
3388 * Update reserved blocks/metadata blocks after successful
3389 * block allocation which had been deferred till now.
3390 */
3391 if (flags & EXT4_GET_BLOCKS_DELALLOC_RESERVE)
3392 ext4_da_update_reserve_space(inode, allocated, 1);
3393
3394 /*
3374 * Cache the extent and update transaction to commit on fdatasync only 3395 * Cache the extent and update transaction to commit on fdatasync only
3375 * when it is _not_ an uninitialized extent. 3396 * when it is _not_ an uninitialized extent.
3376 */ 3397 */
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index c818972c8302..e11952404e02 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -1053,11 +1053,12 @@ static int ext4_calc_metadata_amount(struct inode *inode, sector_t lblock)
1053 * Called with i_data_sem down, which is important since we can call 1053 * Called with i_data_sem down, which is important since we can call
1054 * ext4_discard_preallocations() from here. 1054 * ext4_discard_preallocations() from here.
1055 */ 1055 */
1056static void ext4_da_update_reserve_space(struct inode *inode, int used) 1056void ext4_da_update_reserve_space(struct inode *inode,
1057 int used, int quota_claim)
1057{ 1058{
1058 struct ext4_sb_info *sbi = EXT4_SB(inode->i_sb); 1059 struct ext4_sb_info *sbi = EXT4_SB(inode->i_sb);
1059 struct ext4_inode_info *ei = EXT4_I(inode); 1060 struct ext4_inode_info *ei = EXT4_I(inode);
1060 int mdb_free = 0; 1061 int mdb_free = 0, allocated_meta_blocks = 0;
1061 1062
1062 spin_lock(&ei->i_block_reservation_lock); 1063 spin_lock(&ei->i_block_reservation_lock);
1063 if (unlikely(used > ei->i_reserved_data_blocks)) { 1064 if (unlikely(used > ei->i_reserved_data_blocks)) {
@@ -1073,6 +1074,7 @@ static void ext4_da_update_reserve_space(struct inode *inode, int used)
1073 ei->i_reserved_data_blocks -= used; 1074 ei->i_reserved_data_blocks -= used;
1074 used += ei->i_allocated_meta_blocks; 1075 used += ei->i_allocated_meta_blocks;
1075 ei->i_reserved_meta_blocks -= ei->i_allocated_meta_blocks; 1076 ei->i_reserved_meta_blocks -= ei->i_allocated_meta_blocks;
1077 allocated_meta_blocks = ei->i_allocated_meta_blocks;
1076 ei->i_allocated_meta_blocks = 0; 1078 ei->i_allocated_meta_blocks = 0;
1077 percpu_counter_sub(&sbi->s_dirtyblocks_counter, used); 1079 percpu_counter_sub(&sbi->s_dirtyblocks_counter, used);
1078 1080
@@ -1090,9 +1092,23 @@ static void ext4_da_update_reserve_space(struct inode *inode, int used)
1090 spin_unlock(&EXT4_I(inode)->i_block_reservation_lock); 1092 spin_unlock(&EXT4_I(inode)->i_block_reservation_lock);
1091 1093
1092 /* Update quota subsystem */ 1094 /* Update quota subsystem */
1093 vfs_dq_claim_block(inode, used); 1095 if (quota_claim) {
1094 if (mdb_free) 1096 vfs_dq_claim_block(inode, used);
1095 vfs_dq_release_reservation_block(inode, mdb_free); 1097 if (mdb_free)
1098 vfs_dq_release_reservation_block(inode, mdb_free);
1099 } else {
1100 /*
1101 * We did fallocate with an offset that is already delayed
1102 * allocated. So on delayed allocated writeback we should
1103 * not update the quota for allocated blocks. But then
1104 * converting an fallocate region to initialized region would
1105 * have caused a metadata allocation. So claim quota for
1106 * that
1107 */
1108 if (allocated_meta_blocks)
1109 vfs_dq_claim_block(inode, allocated_meta_blocks);
1110 vfs_dq_release_reservation_block(inode, mdb_free + used);
1111 }
1096 1112
1097 /* 1113 /*
1098 * If we have done all the pending block allocations and if 1114 * If we have done all the pending block allocations and if
@@ -1292,18 +1308,20 @@ int ext4_get_blocks(handle_t *handle, struct inode *inode, sector_t block,
1292 */ 1308 */
1293 EXT4_I(inode)->i_state &= ~EXT4_STATE_EXT_MIGRATE; 1309 EXT4_I(inode)->i_state &= ~EXT4_STATE_EXT_MIGRATE;
1294 } 1310 }
1295 }
1296 1311
1312 /*
1313 * Update reserved blocks/metadata blocks after successful
1314 * block allocation which had been deferred till now. We don't
1315 * support fallocate for non extent files. So we can update
1316 * reserve space here.
1317 */
1318 if ((retval > 0) &&
1319 (flags & EXT4_GET_BLOCKS_DELALLOC_RESERVE))
1320 ext4_da_update_reserve_space(inode, retval, 1);
1321 }
1297 if (flags & EXT4_GET_BLOCKS_DELALLOC_RESERVE) 1322 if (flags & EXT4_GET_BLOCKS_DELALLOC_RESERVE)
1298 EXT4_I(inode)->i_delalloc_reserved_flag = 0; 1323 EXT4_I(inode)->i_delalloc_reserved_flag = 0;
1299 1324
1300 /*
1301 * Update reserved blocks/metadata blocks after successful
1302 * block allocation which had been deferred till now.
1303 */
1304 if ((retval > 0) && (flags & EXT4_GET_BLOCKS_UPDATE_RESERVE_SPACE))
1305 ext4_da_update_reserve_space(inode, retval);
1306
1307 up_write((&EXT4_I(inode)->i_data_sem)); 1325 up_write((&EXT4_I(inode)->i_data_sem));
1308 if (retval > 0 && buffer_mapped(bh)) { 1326 if (retval > 0 && buffer_mapped(bh)) {
1309 int ret = check_block_validity(inode, "file system " 1327 int ret = check_block_validity(inode, "file system "
@@ -1835,24 +1853,12 @@ repeat:
1835 * later. Real quota accounting is done at pages writeout 1853 * later. Real quota accounting is done at pages writeout
1836 * time. 1854 * time.
1837 */ 1855 */
1838 if (vfs_dq_reserve_block(inode, md_needed + 1)) { 1856 if (vfs_dq_reserve_block(inode, md_needed + 1))
1839 /*
1840 * We tend to badly over-estimate the amount of
1841 * metadata blocks which are needed, so if we have
1842 * reserved any metadata blocks, try to force out the
1843 * inode and see if we have any better luck.
1844 */
1845 if (md_reserved && retries++ <= 3)
1846 goto retry;
1847 return -EDQUOT; 1857 return -EDQUOT;
1848 }
1849 1858
1850 if (ext4_claim_free_blocks(sbi, md_needed + 1)) { 1859 if (ext4_claim_free_blocks(sbi, md_needed + 1)) {
1851 vfs_dq_release_reservation_block(inode, md_needed + 1); 1860 vfs_dq_release_reservation_block(inode, md_needed + 1);
1852 if (ext4_should_retry_alloc(inode->i_sb, &retries)) { 1861 if (ext4_should_retry_alloc(inode->i_sb, &retries)) {
1853 retry:
1854 if (md_reserved)
1855 write_inode_now(inode, (retries == 3));
1856 yield(); 1862 yield();
1857 goto repeat; 1863 goto repeat;
1858 } 1864 }
@@ -2213,10 +2219,10 @@ static int mpage_da_map_blocks(struct mpage_da_data *mpd)
2213 * variables are updated after the blocks have been allocated. 2219 * variables are updated after the blocks have been allocated.
2214 */ 2220 */
2215 new.b_state = 0; 2221 new.b_state = 0;
2216 get_blocks_flags = (EXT4_GET_BLOCKS_CREATE | 2222 get_blocks_flags = EXT4_GET_BLOCKS_CREATE;
2217 EXT4_GET_BLOCKS_DELALLOC_RESERVE);
2218 if (mpd->b_state & (1 << BH_Delay)) 2223 if (mpd->b_state & (1 << BH_Delay))
2219 get_blocks_flags |= EXT4_GET_BLOCKS_UPDATE_RESERVE_SPACE; 2224 get_blocks_flags |= EXT4_GET_BLOCKS_DELALLOC_RESERVE;
2225
2220 blks = ext4_get_blocks(handle, mpd->inode, next, max_blocks, 2226 blks = ext4_get_blocks(handle, mpd->inode, next, max_blocks,
2221 &new, get_blocks_flags); 2227 &new, get_blocks_flags);
2222 if (blks < 0) { 2228 if (blks < 0) {
@@ -3032,7 +3038,7 @@ static int ext4_da_write_begin(struct file *file, struct address_space *mapping,
3032 loff_t pos, unsigned len, unsigned flags, 3038 loff_t pos, unsigned len, unsigned flags,
3033 struct page **pagep, void **fsdata) 3039 struct page **pagep, void **fsdata)
3034{ 3040{
3035 int ret, retries = 0; 3041 int ret, retries = 0, quota_retries = 0;
3036 struct page *page; 3042 struct page *page;
3037 pgoff_t index; 3043 pgoff_t index;
3038 unsigned from, to; 3044 unsigned from, to;
@@ -3091,6 +3097,22 @@ retry:
3091 3097
3092 if (ret == -ENOSPC && ext4_should_retry_alloc(inode->i_sb, &retries)) 3098 if (ret == -ENOSPC && ext4_should_retry_alloc(inode->i_sb, &retries))
3093 goto retry; 3099 goto retry;
3100
3101 if ((ret == -EDQUOT) &&
3102 EXT4_I(inode)->i_reserved_meta_blocks &&
3103 (quota_retries++ < 3)) {
3104 /*
3105 * Since we often over-estimate the number of meta
3106 * data blocks required, we may sometimes get a
3107 * spurios out of quota error even though there would
3108 * be enough space once we write the data blocks and
3109 * find out how many meta data blocks were _really_
3110 * required. So try forcing the inode write to see if
3111 * that helps.
3112 */
3113 write_inode_now(inode, (quota_retries == 3));
3114 goto retry;
3115 }
3094out: 3116out:
3095 return ret; 3117 return ret;
3096} 3118}
diff --git a/fs/fcntl.c b/fs/fcntl.c
index 97e01dc0d95f..5ef953e6f908 100644
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
@@ -199,7 +199,9 @@ static int setfl(int fd, struct file * filp, unsigned long arg)
199static void f_modown(struct file *filp, struct pid *pid, enum pid_type type, 199static void f_modown(struct file *filp, struct pid *pid, enum pid_type type,
200 int force) 200 int force)
201{ 201{
202 write_lock_irq(&filp->f_owner.lock); 202 unsigned long flags;
203
204 write_lock_irqsave(&filp->f_owner.lock, flags);
203 if (force || !filp->f_owner.pid) { 205 if (force || !filp->f_owner.pid) {
204 put_pid(filp->f_owner.pid); 206 put_pid(filp->f_owner.pid);
205 filp->f_owner.pid = get_pid(pid); 207 filp->f_owner.pid = get_pid(pid);
@@ -211,7 +213,7 @@ static void f_modown(struct file *filp, struct pid *pid, enum pid_type type,
211 filp->f_owner.euid = cred->euid; 213 filp->f_owner.euid = cred->euid;
212 } 214 }
213 } 215 }
214 write_unlock_irq(&filp->f_owner.lock); 216 write_unlock_irqrestore(&filp->f_owner.lock, flags);
215} 217}
216 218
217int __f_setown(struct file *filp, struct pid *pid, enum pid_type type, 219int __f_setown(struct file *filp, struct pid *pid, enum pid_type type,
diff --git a/fs/reiserfs/journal.c b/fs/reiserfs/journal.c
index 83ac4d3b3cb0..ba98546fabbd 100644
--- a/fs/reiserfs/journal.c
+++ b/fs/reiserfs/journal.c
@@ -2913,7 +2913,9 @@ int journal_init(struct super_block *sb, const char *j_dev_name,
2913 journal->j_mount_id = 10; 2913 journal->j_mount_id = 10;
2914 journal->j_state = 0; 2914 journal->j_state = 0;
2915 atomic_set(&(journal->j_jlock), 0); 2915 atomic_set(&(journal->j_jlock), 0);
2916 reiserfs_write_unlock(sb);
2916 journal->j_cnode_free_list = allocate_cnodes(num_cnodes); 2917 journal->j_cnode_free_list = allocate_cnodes(num_cnodes);
2918 reiserfs_write_lock(sb);
2917 journal->j_cnode_free_orig = journal->j_cnode_free_list; 2919 journal->j_cnode_free_orig = journal->j_cnode_free_list;
2918 journal->j_cnode_free = journal->j_cnode_free_list ? num_cnodes : 0; 2920 journal->j_cnode_free = journal->j_cnode_free_list ? num_cnodes : 0;
2919 journal->j_cnode_used = 0; 2921 journal->j_cnode_used = 0;
diff --git a/fs/romfs/super.c b/fs/romfs/super.c
index c117fa80d1e9..42d213546894 100644
--- a/fs/romfs/super.c
+++ b/fs/romfs/super.c
@@ -544,6 +544,7 @@ error:
544error_rsb_inval: 544error_rsb_inval:
545 ret = -EINVAL; 545 ret = -EINVAL;
546error_rsb: 546error_rsb:
547 kfree(rsb);
547 return ret; 548 return ret;
548} 549}
549 550
diff --git a/fs/xfs/linux-2.6/xfs_super.c b/fs/xfs/linux-2.6/xfs_super.c
index 09783cc444ac..77414db10dc2 100644
--- a/fs/xfs/linux-2.6/xfs_super.c
+++ b/fs/xfs/linux-2.6/xfs_super.c
@@ -954,16 +954,14 @@ xfs_fs_destroy_inode(
954 ASSERT_ALWAYS(!xfs_iflags_test(ip, XFS_IRECLAIM)); 954 ASSERT_ALWAYS(!xfs_iflags_test(ip, XFS_IRECLAIM));
955 955
956 /* 956 /*
957 * If we have nothing to flush with this inode then complete the 957 * We always use background reclaim here because even if the
958 * teardown now, otherwise delay the flush operation. 958 * inode is clean, it still may be under IO and hence we have
959 * to take the flush lock. The background reclaim path handles
960 * this more efficiently than we can here, so simply let background
961 * reclaim tear down all inodes.
959 */ 962 */
960 if (!xfs_inode_clean(ip)) {
961 xfs_inode_set_reclaim_tag(ip);
962 return;
963 }
964
965out_reclaim: 963out_reclaim:
966 xfs_ireclaim(ip); 964 xfs_inode_set_reclaim_tag(ip);
967} 965}
968 966
969/* 967/*
diff --git a/fs/xfs/linux-2.6/xfs_sync.c b/fs/xfs/linux-2.6/xfs_sync.c
index 6fed97a8cd3e..1f5e4bb5e970 100644
--- a/fs/xfs/linux-2.6/xfs_sync.c
+++ b/fs/xfs/linux-2.6/xfs_sync.c
@@ -65,7 +65,6 @@ xfs_inode_ag_lookup(
65 * as the tree is sparse and a gang lookup walks to find 65 * as the tree is sparse and a gang lookup walks to find
66 * the number of objects requested. 66 * the number of objects requested.
67 */ 67 */
68 read_lock(&pag->pag_ici_lock);
69 if (tag == XFS_ICI_NO_TAG) { 68 if (tag == XFS_ICI_NO_TAG) {
70 nr_found = radix_tree_gang_lookup(&pag->pag_ici_root, 69 nr_found = radix_tree_gang_lookup(&pag->pag_ici_root,
71 (void **)&ip, *first_index, 1); 70 (void **)&ip, *first_index, 1);
@@ -74,7 +73,7 @@ xfs_inode_ag_lookup(
74 (void **)&ip, *first_index, 1, tag); 73 (void **)&ip, *first_index, 1, tag);
75 } 74 }
76 if (!nr_found) 75 if (!nr_found)
77 goto unlock; 76 return NULL;
78 77
79 /* 78 /*
80 * Update the index for the next lookup. Catch overflows 79 * Update the index for the next lookup. Catch overflows
@@ -84,13 +83,8 @@ xfs_inode_ag_lookup(
84 */ 83 */
85 *first_index = XFS_INO_TO_AGINO(mp, ip->i_ino + 1); 84 *first_index = XFS_INO_TO_AGINO(mp, ip->i_ino + 1);
86 if (*first_index < XFS_INO_TO_AGINO(mp, ip->i_ino)) 85 if (*first_index < XFS_INO_TO_AGINO(mp, ip->i_ino))
87 goto unlock; 86 return NULL;
88
89 return ip; 87 return ip;
90
91unlock:
92 read_unlock(&pag->pag_ici_lock);
93 return NULL;
94} 88}
95 89
96STATIC int 90STATIC int
@@ -100,7 +94,8 @@ xfs_inode_ag_walk(
100 int (*execute)(struct xfs_inode *ip, 94 int (*execute)(struct xfs_inode *ip,
101 struct xfs_perag *pag, int flags), 95 struct xfs_perag *pag, int flags),
102 int flags, 96 int flags,
103 int tag) 97 int tag,
98 int exclusive)
104{ 99{
105 struct xfs_perag *pag = &mp->m_perag[ag]; 100 struct xfs_perag *pag = &mp->m_perag[ag];
106 uint32_t first_index; 101 uint32_t first_index;
@@ -114,10 +109,20 @@ restart:
114 int error = 0; 109 int error = 0;
115 xfs_inode_t *ip; 110 xfs_inode_t *ip;
116 111
112 if (exclusive)
113 write_lock(&pag->pag_ici_lock);
114 else
115 read_lock(&pag->pag_ici_lock);
117 ip = xfs_inode_ag_lookup(mp, pag, &first_index, tag); 116 ip = xfs_inode_ag_lookup(mp, pag, &first_index, tag);
118 if (!ip) 117 if (!ip) {
118 if (exclusive)
119 write_unlock(&pag->pag_ici_lock);
120 else
121 read_unlock(&pag->pag_ici_lock);
119 break; 122 break;
123 }
120 124
125 /* execute releases pag->pag_ici_lock */
121 error = execute(ip, pag, flags); 126 error = execute(ip, pag, flags);
122 if (error == EAGAIN) { 127 if (error == EAGAIN) {
123 skipped++; 128 skipped++;
@@ -125,9 +130,8 @@ restart:
125 } 130 }
126 if (error) 131 if (error)
127 last_error = error; 132 last_error = error;
128 /* 133
129 * bail out if the filesystem is corrupted. 134 /* bail out if the filesystem is corrupted. */
130 */
131 if (error == EFSCORRUPTED) 135 if (error == EFSCORRUPTED)
132 break; 136 break;
133 137
@@ -148,7 +152,8 @@ xfs_inode_ag_iterator(
148 int (*execute)(struct xfs_inode *ip, 152 int (*execute)(struct xfs_inode *ip,
149 struct xfs_perag *pag, int flags), 153 struct xfs_perag *pag, int flags),
150 int flags, 154 int flags,
151 int tag) 155 int tag,
156 int exclusive)
152{ 157{
153 int error = 0; 158 int error = 0;
154 int last_error = 0; 159 int last_error = 0;
@@ -157,7 +162,8 @@ xfs_inode_ag_iterator(
157 for (ag = 0; ag < mp->m_sb.sb_agcount; ag++) { 162 for (ag = 0; ag < mp->m_sb.sb_agcount; ag++) {
158 if (!mp->m_perag[ag].pag_ici_init) 163 if (!mp->m_perag[ag].pag_ici_init)
159 continue; 164 continue;
160 error = xfs_inode_ag_walk(mp, ag, execute, flags, tag); 165 error = xfs_inode_ag_walk(mp, ag, execute, flags, tag,
166 exclusive);
161 if (error) { 167 if (error) {
162 last_error = error; 168 last_error = error;
163 if (error == EFSCORRUPTED) 169 if (error == EFSCORRUPTED)
@@ -174,30 +180,31 @@ xfs_sync_inode_valid(
174 struct xfs_perag *pag) 180 struct xfs_perag *pag)
175{ 181{
176 struct inode *inode = VFS_I(ip); 182 struct inode *inode = VFS_I(ip);
183 int error = EFSCORRUPTED;
177 184
178 /* nothing to sync during shutdown */ 185 /* nothing to sync during shutdown */
179 if (XFS_FORCED_SHUTDOWN(ip->i_mount)) { 186 if (XFS_FORCED_SHUTDOWN(ip->i_mount))
180 read_unlock(&pag->pag_ici_lock); 187 goto out_unlock;
181 return EFSCORRUPTED;
182 }
183 188
184 /* 189 /* avoid new or reclaimable inodes. Leave for reclaim code to flush */
185 * If we can't get a reference on the inode, it must be in reclaim. 190 error = ENOENT;
186 * Leave it for the reclaim code to flush. Also avoid inodes that 191 if (xfs_iflags_test(ip, XFS_INEW | XFS_IRECLAIMABLE | XFS_IRECLAIM))
187 * haven't been fully initialised. 192 goto out_unlock;
188 */
189 if (!igrab(inode)) {
190 read_unlock(&pag->pag_ici_lock);
191 return ENOENT;
192 }
193 read_unlock(&pag->pag_ici_lock);
194 193
195 if (is_bad_inode(inode) || xfs_iflags_test(ip, XFS_INEW)) { 194 /* If we can't grab the inode, it must on it's way to reclaim. */
195 if (!igrab(inode))
196 goto out_unlock;
197
198 if (is_bad_inode(inode)) {
196 IRELE(ip); 199 IRELE(ip);
197 return ENOENT; 200 goto out_unlock;
198 } 201 }
199 202
200 return 0; 203 /* inode is valid */
204 error = 0;
205out_unlock:
206 read_unlock(&pag->pag_ici_lock);
207 return error;
201} 208}
202 209
203STATIC int 210STATIC int
@@ -282,7 +289,7 @@ xfs_sync_data(
282 ASSERT((flags & ~(SYNC_TRYLOCK|SYNC_WAIT)) == 0); 289 ASSERT((flags & ~(SYNC_TRYLOCK|SYNC_WAIT)) == 0);
283 290
284 error = xfs_inode_ag_iterator(mp, xfs_sync_inode_data, flags, 291 error = xfs_inode_ag_iterator(mp, xfs_sync_inode_data, flags,
285 XFS_ICI_NO_TAG); 292 XFS_ICI_NO_TAG, 0);
286 if (error) 293 if (error)
287 return XFS_ERROR(error); 294 return XFS_ERROR(error);
288 295
@@ -304,7 +311,7 @@ xfs_sync_attr(
304 ASSERT((flags & ~SYNC_WAIT) == 0); 311 ASSERT((flags & ~SYNC_WAIT) == 0);
305 312
306 return xfs_inode_ag_iterator(mp, xfs_sync_inode_attr, flags, 313 return xfs_inode_ag_iterator(mp, xfs_sync_inode_attr, flags,
307 XFS_ICI_NO_TAG); 314 XFS_ICI_NO_TAG, 0);
308} 315}
309 316
310STATIC int 317STATIC int
@@ -664,60 +671,6 @@ xfs_syncd_stop(
664 kthread_stop(mp->m_sync_task); 671 kthread_stop(mp->m_sync_task);
665} 672}
666 673
667STATIC int
668xfs_reclaim_inode(
669 xfs_inode_t *ip,
670 int sync_mode)
671{
672 xfs_perag_t *pag = xfs_get_perag(ip->i_mount, ip->i_ino);
673
674 /* The hash lock here protects a thread in xfs_iget_core from
675 * racing with us on linking the inode back with a vnode.
676 * Once we have the XFS_IRECLAIM flag set it will not touch
677 * us.
678 */
679 write_lock(&pag->pag_ici_lock);
680 spin_lock(&ip->i_flags_lock);
681 if (__xfs_iflags_test(ip, XFS_IRECLAIM) ||
682 !__xfs_iflags_test(ip, XFS_IRECLAIMABLE)) {
683 spin_unlock(&ip->i_flags_lock);
684 write_unlock(&pag->pag_ici_lock);
685 return -EAGAIN;
686 }
687 __xfs_iflags_set(ip, XFS_IRECLAIM);
688 spin_unlock(&ip->i_flags_lock);
689 write_unlock(&pag->pag_ici_lock);
690 xfs_put_perag(ip->i_mount, pag);
691
692 /*
693 * If the inode is still dirty, then flush it out. If the inode
694 * is not in the AIL, then it will be OK to flush it delwri as
695 * long as xfs_iflush() does not keep any references to the inode.
696 * We leave that decision up to xfs_iflush() since it has the
697 * knowledge of whether it's OK to simply do a delwri flush of
698 * the inode or whether we need to wait until the inode is
699 * pulled from the AIL.
700 * We get the flush lock regardless, though, just to make sure
701 * we don't free it while it is being flushed.
702 */
703 xfs_ilock(ip, XFS_ILOCK_EXCL);
704 xfs_iflock(ip);
705
706 /*
707 * In the case of a forced shutdown we rely on xfs_iflush() to
708 * wait for the inode to be unpinned before returning an error.
709 */
710 if (!is_bad_inode(VFS_I(ip)) && xfs_iflush(ip, sync_mode) == 0) {
711 /* synchronize with xfs_iflush_done */
712 xfs_iflock(ip);
713 xfs_ifunlock(ip);
714 }
715
716 xfs_iunlock(ip, XFS_ILOCK_EXCL);
717 xfs_ireclaim(ip);
718 return 0;
719}
720
721void 674void
722__xfs_inode_set_reclaim_tag( 675__xfs_inode_set_reclaim_tag(
723 struct xfs_perag *pag, 676 struct xfs_perag *pag,
@@ -760,19 +713,55 @@ __xfs_inode_clear_reclaim_tag(
760} 713}
761 714
762STATIC int 715STATIC int
763xfs_reclaim_inode_now( 716xfs_reclaim_inode(
764 struct xfs_inode *ip, 717 struct xfs_inode *ip,
765 struct xfs_perag *pag, 718 struct xfs_perag *pag,
766 int flags) 719 int sync_mode)
767{ 720{
768 /* ignore if already under reclaim */ 721 /*
769 if (xfs_iflags_test(ip, XFS_IRECLAIM)) { 722 * The radix tree lock here protects a thread in xfs_iget from racing
770 read_unlock(&pag->pag_ici_lock); 723 * with us starting reclaim on the inode. Once we have the
724 * XFS_IRECLAIM flag set it will not touch us.
725 */
726 spin_lock(&ip->i_flags_lock);
727 ASSERT_ALWAYS(__xfs_iflags_test(ip, XFS_IRECLAIMABLE));
728 if (__xfs_iflags_test(ip, XFS_IRECLAIM)) {
729 /* ignore as it is already under reclaim */
730 spin_unlock(&ip->i_flags_lock);
731 write_unlock(&pag->pag_ici_lock);
771 return 0; 732 return 0;
772 } 733 }
773 read_unlock(&pag->pag_ici_lock); 734 __xfs_iflags_set(ip, XFS_IRECLAIM);
735 spin_unlock(&ip->i_flags_lock);
736 write_unlock(&pag->pag_ici_lock);
774 737
775 return xfs_reclaim_inode(ip, flags); 738 /*
739 * If the inode is still dirty, then flush it out. If the inode
740 * is not in the AIL, then it will be OK to flush it delwri as
741 * long as xfs_iflush() does not keep any references to the inode.
742 * We leave that decision up to xfs_iflush() since it has the
743 * knowledge of whether it's OK to simply do a delwri flush of
744 * the inode or whether we need to wait until the inode is
745 * pulled from the AIL.
746 * We get the flush lock regardless, though, just to make sure
747 * we don't free it while it is being flushed.
748 */
749 xfs_ilock(ip, XFS_ILOCK_EXCL);
750 xfs_iflock(ip);
751
752 /*
753 * In the case of a forced shutdown we rely on xfs_iflush() to
754 * wait for the inode to be unpinned before returning an error.
755 */
756 if (!is_bad_inode(VFS_I(ip)) && xfs_iflush(ip, sync_mode) == 0) {
757 /* synchronize with xfs_iflush_done */
758 xfs_iflock(ip);
759 xfs_ifunlock(ip);
760 }
761
762 xfs_iunlock(ip, XFS_ILOCK_EXCL);
763 xfs_ireclaim(ip);
764 return 0;
776} 765}
777 766
778int 767int
@@ -780,6 +769,6 @@ xfs_reclaim_inodes(
780 xfs_mount_t *mp, 769 xfs_mount_t *mp,
781 int mode) 770 int mode)
782{ 771{
783 return xfs_inode_ag_iterator(mp, xfs_reclaim_inode_now, mode, 772 return xfs_inode_ag_iterator(mp, xfs_reclaim_inode, mode,
784 XFS_ICI_RECLAIM_TAG); 773 XFS_ICI_RECLAIM_TAG, 1);
785} 774}
diff --git a/fs/xfs/linux-2.6/xfs_sync.h b/fs/xfs/linux-2.6/xfs_sync.h
index a500b4d91835..ea932b43335d 100644
--- a/fs/xfs/linux-2.6/xfs_sync.h
+++ b/fs/xfs/linux-2.6/xfs_sync.h
@@ -54,6 +54,6 @@ void __xfs_inode_clear_reclaim_tag(struct xfs_mount *mp, struct xfs_perag *pag,
54int xfs_sync_inode_valid(struct xfs_inode *ip, struct xfs_perag *pag); 54int xfs_sync_inode_valid(struct xfs_inode *ip, struct xfs_perag *pag);
55int xfs_inode_ag_iterator(struct xfs_mount *mp, 55int xfs_inode_ag_iterator(struct xfs_mount *mp,
56 int (*execute)(struct xfs_inode *ip, struct xfs_perag *pag, int flags), 56 int (*execute)(struct xfs_inode *ip, struct xfs_perag *pag, int flags),
57 int flags, int tag); 57 int flags, int tag, int write_lock);
58 58
59#endif 59#endif
diff --git a/fs/xfs/quota/xfs_qm_syscalls.c b/fs/xfs/quota/xfs_qm_syscalls.c
index 71af76fe8a23..873e07e29074 100644
--- a/fs/xfs/quota/xfs_qm_syscalls.c
+++ b/fs/xfs/quota/xfs_qm_syscalls.c
@@ -891,7 +891,7 @@ xfs_qm_dqrele_all_inodes(
891 uint flags) 891 uint flags)
892{ 892{
893 ASSERT(mp->m_quotainfo); 893 ASSERT(mp->m_quotainfo);
894 xfs_inode_ag_iterator(mp, xfs_dqrele_inode, flags, XFS_ICI_NO_TAG); 894 xfs_inode_ag_iterator(mp, xfs_dqrele_inode, flags, XFS_ICI_NO_TAG, 0);
895} 895}
896 896
897/*------------------------------------------------------------------------*/ 897/*------------------------------------------------------------------------*/
diff --git a/fs/xfs/xfs_dfrag.c b/fs/xfs/xfs_dfrag.c
index d1483a4f71b8..84ca1cf16a1e 100644
--- a/fs/xfs/xfs_dfrag.c
+++ b/fs/xfs/xfs_dfrag.c
@@ -114,10 +114,82 @@ xfs_swapext(
114 return error; 114 return error;
115} 115}
116 116
117/*
118 * We need to check that the format of the data fork in the temporary inode is
119 * valid for the target inode before doing the swap. This is not a problem with
120 * attr1 because of the fixed fork offset, but attr2 has a dynamically sized
121 * data fork depending on the space the attribute fork is taking so we can get
122 * invalid formats on the target inode.
123 *
124 * E.g. target has space for 7 extents in extent format, temp inode only has
125 * space for 6. If we defragment down to 7 extents, then the tmp format is a
126 * btree, but when swapped it needs to be in extent format. Hence we can't just
127 * blindly swap data forks on attr2 filesystems.
128 *
129 * Note that we check the swap in both directions so that we don't end up with
130 * a corrupt temporary inode, either.
131 *
132 * Note that fixing the way xfs_fsr sets up the attribute fork in the source
133 * inode will prevent this situation from occurring, so all we do here is
134 * reject and log the attempt. basically we are putting the responsibility on
135 * userspace to get this right.
136 */
137static int
138xfs_swap_extents_check_format(
139 xfs_inode_t *ip, /* target inode */
140 xfs_inode_t *tip) /* tmp inode */
141{
142
143 /* Should never get a local format */
144 if (ip->i_d.di_format == XFS_DINODE_FMT_LOCAL ||
145 tip->i_d.di_format == XFS_DINODE_FMT_LOCAL)
146 return EINVAL;
147
148 /*
149 * if the target inode has less extents that then temporary inode then
150 * why did userspace call us?
151 */
152 if (ip->i_d.di_nextents < tip->i_d.di_nextents)
153 return EINVAL;
154
155 /*
156 * if the target inode is in extent form and the temp inode is in btree
157 * form then we will end up with the target inode in the wrong format
158 * as we already know there are less extents in the temp inode.
159 */
160 if (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
161 tip->i_d.di_format == XFS_DINODE_FMT_BTREE)
162 return EINVAL;
163
164 /* Check temp in extent form to max in target */
165 if (tip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
166 XFS_IFORK_NEXTENTS(tip, XFS_DATA_FORK) > ip->i_df.if_ext_max)
167 return EINVAL;
168
169 /* Check target in extent form to max in temp */
170 if (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
171 XFS_IFORK_NEXTENTS(ip, XFS_DATA_FORK) > tip->i_df.if_ext_max)
172 return EINVAL;
173
174 /* Check root block of temp in btree form to max in target */
175 if (tip->i_d.di_format == XFS_DINODE_FMT_BTREE &&
176 XFS_IFORK_BOFF(ip) &&
177 tip->i_df.if_broot_bytes > XFS_IFORK_BOFF(ip))
178 return EINVAL;
179
180 /* Check root block of target in btree form to max in temp */
181 if (ip->i_d.di_format == XFS_DINODE_FMT_BTREE &&
182 XFS_IFORK_BOFF(tip) &&
183 ip->i_df.if_broot_bytes > XFS_IFORK_BOFF(tip))
184 return EINVAL;
185
186 return 0;
187}
188
117int 189int
118xfs_swap_extents( 190xfs_swap_extents(
119 xfs_inode_t *ip, 191 xfs_inode_t *ip, /* target inode */
120 xfs_inode_t *tip, 192 xfs_inode_t *tip, /* tmp inode */
121 xfs_swapext_t *sxp) 193 xfs_swapext_t *sxp)
122{ 194{
123 xfs_mount_t *mp; 195 xfs_mount_t *mp;
@@ -161,13 +233,6 @@ xfs_swap_extents(
161 goto out_unlock; 233 goto out_unlock;
162 } 234 }
163 235
164 /* Should never get a local format */
165 if (ip->i_d.di_format == XFS_DINODE_FMT_LOCAL ||
166 tip->i_d.di_format == XFS_DINODE_FMT_LOCAL) {
167 error = XFS_ERROR(EINVAL);
168 goto out_unlock;
169 }
170
171 if (VN_CACHED(VFS_I(tip)) != 0) { 236 if (VN_CACHED(VFS_I(tip)) != 0) {
172 error = xfs_flushinval_pages(tip, 0, -1, 237 error = xfs_flushinval_pages(tip, 0, -1,
173 FI_REMAPF_LOCKED); 238 FI_REMAPF_LOCKED);
@@ -189,13 +254,12 @@ xfs_swap_extents(
189 goto out_unlock; 254 goto out_unlock;
190 } 255 }
191 256
192 /* 257 /* check inode formats now that data is flushed */
193 * If the target has extended attributes, the tmp file 258 error = xfs_swap_extents_check_format(ip, tip);
194 * must also in order to ensure the correct data fork 259 if (error) {
195 * format. 260 xfs_fs_cmn_err(CE_NOTE, mp,
196 */ 261 "%s: inode 0x%llx format is incompatible for exchanging.",
197 if ( XFS_IFORK_Q(ip) != XFS_IFORK_Q(tip) ) { 262 __FILE__, ip->i_ino);
198 error = XFS_ERROR(EINVAL);
199 goto out_unlock; 263 goto out_unlock;
200 } 264 }
201 265
@@ -276,6 +340,16 @@ xfs_swap_extents(
276 *tifp = *tempifp; /* struct copy */ 340 *tifp = *tempifp; /* struct copy */
277 341
278 /* 342 /*
343 * Fix the in-memory data fork values that are dependent on the fork
344 * offset in the inode. We can't assume they remain the same as attr2
345 * has dynamic fork offsets.
346 */
347 ifp->if_ext_max = XFS_IFORK_SIZE(ip, XFS_DATA_FORK) /
348 (uint)sizeof(xfs_bmbt_rec_t);
349 tifp->if_ext_max = XFS_IFORK_SIZE(tip, XFS_DATA_FORK) /
350 (uint)sizeof(xfs_bmbt_rec_t);
351
352 /*
279 * Fix the on-disk inode values 353 * Fix the on-disk inode values
280 */ 354 */
281 tmp = (__uint64_t)ip->i_d.di_nblocks; 355 tmp = (__uint64_t)ip->i_d.di_nblocks;
diff --git a/fs/xfs/xfs_iget.c b/fs/xfs/xfs_iget.c
index fa402a6bbbcf..155e798f30a1 100644
--- a/fs/xfs/xfs_iget.c
+++ b/fs/xfs/xfs_iget.c
@@ -73,7 +73,6 @@ xfs_inode_alloc(
73 ASSERT(atomic_read(&ip->i_pincount) == 0); 73 ASSERT(atomic_read(&ip->i_pincount) == 0);
74 ASSERT(!spin_is_locked(&ip->i_flags_lock)); 74 ASSERT(!spin_is_locked(&ip->i_flags_lock));
75 ASSERT(completion_done(&ip->i_flush)); 75 ASSERT(completion_done(&ip->i_flush));
76 ASSERT(!rwsem_is_locked(&ip->i_iolock.mr_lock));
77 76
78 mrlock_init(&ip->i_iolock, MRLOCK_BARRIER, "xfsio", ip->i_ino); 77 mrlock_init(&ip->i_iolock, MRLOCK_BARRIER, "xfsio", ip->i_ino);
79 78
diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c
index 391d36b0e68c..ef77fd88c8e3 100644
--- a/fs/xfs/xfs_inode.c
+++ b/fs/xfs/xfs_inode.c
@@ -2842,13 +2842,9 @@ xfs_iflush(
2842 2842
2843 /* 2843 /*
2844 * If the inode isn't dirty, then just release the inode flush lock and 2844 * If the inode isn't dirty, then just release the inode flush lock and
2845 * do nothing. Treat stale inodes the same; we cannot rely on the 2845 * do nothing.
2846 * backing buffer remaining stale in cache for the remaining life of
2847 * the stale inode and so xfs_itobp() below may give us a buffer that
2848 * no longer contains inodes below. Doing this stale check here also
2849 * avoids forcing the log on pinned, stale inodes.
2850 */ 2846 */
2851 if (xfs_inode_clean(ip) || xfs_iflags_test(ip, XFS_ISTALE)) { 2847 if (xfs_inode_clean(ip)) {
2852 xfs_ifunlock(ip); 2848 xfs_ifunlock(ip);
2853 return 0; 2849 return 0;
2854 } 2850 }
@@ -2872,6 +2868,19 @@ xfs_iflush(
2872 xfs_iunpin_wait(ip); 2868 xfs_iunpin_wait(ip);
2873 2869
2874 /* 2870 /*
2871 * For stale inodes we cannot rely on the backing buffer remaining
2872 * stale in cache for the remaining life of the stale inode and so
2873 * xfs_itobp() below may give us a buffer that no longer contains
2874 * inodes below. We have to check this after ensuring the inode is
2875 * unpinned so that it is safe to reclaim the stale inode after the
2876 * flush call.
2877 */
2878 if (xfs_iflags_test(ip, XFS_ISTALE)) {
2879 xfs_ifunlock(ip);
2880 return 0;
2881 }
2882
2883 /*
2875 * This may have been unpinned because the filesystem is shutting 2884 * This may have been unpinned because the filesystem is shutting
2876 * down forcibly. If that's the case we must not write this inode 2885 * down forcibly. If that's the case we must not write this inode
2877 * to disk, because the log record didn't make it to disk! 2886 * to disk, because the log record didn't make it to disk!
diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c
index 9e15a1185362..6be05f756d59 100644
--- a/fs/xfs/xfs_rtalloc.c
+++ b/fs/xfs/xfs_rtalloc.c
@@ -1517,6 +1517,8 @@ xfs_rtfree_range(
1517 */ 1517 */
1518 error = xfs_rtfind_forw(mp, tp, end, mp->m_sb.sb_rextents - 1, 1518 error = xfs_rtfind_forw(mp, tp, end, mp->m_sb.sb_rextents - 1,
1519 &postblock); 1519 &postblock);
1520 if (error)
1521 return error;
1520 /* 1522 /*
1521 * If there are blocks not being freed at the front of the 1523 * If there are blocks not being freed at the front of the
1522 * old extent, add summary data for them to be allocated. 1524 * old extent, add summary data for them to be allocated.
diff --git a/include/acpi/platform/aclinux.h b/include/acpi/platform/aclinux.h
index 9d7febde10a1..09469971472f 100644
--- a/include/acpi/platform/aclinux.h
+++ b/include/acpi/platform/aclinux.h
@@ -152,7 +152,7 @@ static inline void *acpi_os_acquire_object(acpi_cache_t * cache)
152#include <linux/hardirq.h> 152#include <linux/hardirq.h>
153#define ACPI_PREEMPTION_POINT() \ 153#define ACPI_PREEMPTION_POINT() \
154 do { \ 154 do { \
155 if (!in_atomic_preempt_off()) \ 155 if (!in_atomic_preempt_off() && !irqs_disabled()) \
156 cond_resched(); \ 156 cond_resched(); \
157 } while (0) 157 } while (0)
158 158
diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h
index bc4fdf27bd2e..c5ba1636613c 100644
--- a/include/drm/drm_mode.h
+++ b/include/drm/drm_mode.h
@@ -85,7 +85,7 @@ struct drm_mode_modeinfo {
85 __u16 hdisplay, hsync_start, hsync_end, htotal, hskew; 85 __u16 hdisplay, hsync_start, hsync_end, htotal, hskew;
86 __u16 vdisplay, vsync_start, vsync_end, vtotal, vscan; 86 __u16 vdisplay, vsync_start, vsync_end, vtotal, vscan;
87 87
88 __u32 vrefresh; /* vertical refresh * 1000 */ 88 __u32 vrefresh;
89 89
90 __u32 flags; 90 __u32 flags;
91 __u32 type; 91 __u32 type;
diff --git a/include/drm/ttm/ttm_bo_driver.h b/include/drm/ttm/ttm_bo_driver.h
index ff7664e0c3cd..4c4e0f8375b3 100644
--- a/include/drm/ttm/ttm_bo_driver.h
+++ b/include/drm/ttm/ttm_bo_driver.h
@@ -353,6 +353,11 @@ struct ttm_bo_driver {
353 /* notify the driver we are taking a fault on this BO 353 /* notify the driver we are taking a fault on this BO
354 * and have reserved it */ 354 * and have reserved it */
355 void (*fault_reserve_notify)(struct ttm_buffer_object *bo); 355 void (*fault_reserve_notify)(struct ttm_buffer_object *bo);
356
357 /**
358 * notify the driver that we're about to swap out this bo
359 */
360 void (*swap_notify) (struct ttm_buffer_object *bo);
356}; 361};
357 362
358/** 363/**
diff --git a/include/linux/acpi.h b/include/linux/acpi.h
index 36924255c0d5..b926afe8c03e 100644
--- a/include/linux/acpi.h
+++ b/include/linux/acpi.h
@@ -80,7 +80,7 @@ char * __acpi_map_table (unsigned long phys_addr, unsigned long size);
80void __acpi_unmap_table(char *map, unsigned long size); 80void __acpi_unmap_table(char *map, unsigned long size);
81int early_acpi_boot_init(void); 81int early_acpi_boot_init(void);
82int acpi_boot_init (void); 82int acpi_boot_init (void);
83int acpi_boot_table_init (void); 83void acpi_boot_table_init (void);
84int acpi_mps_check (void); 84int acpi_mps_check (void);
85int acpi_numa_init (void); 85int acpi_numa_init (void);
86 86
@@ -321,9 +321,9 @@ static inline int acpi_boot_init(void)
321 return 0; 321 return 0;
322} 322}
323 323
324static inline int acpi_boot_table_init(void) 324static inline void acpi_boot_table_init(void)
325{ 325{
326 return 0; 326 return;
327} 327}
328 328
329static inline int acpi_mps_check(void) 329static inline int acpi_mps_check(void)
diff --git a/include/linux/binfmts.h b/include/linux/binfmts.h
index cd4349bdc34e..89c6249fc561 100644
--- a/include/linux/binfmts.h
+++ b/include/linux/binfmts.h
@@ -109,6 +109,7 @@ extern int prepare_binprm(struct linux_binprm *);
109extern int __must_check remove_arg_zero(struct linux_binprm *); 109extern int __must_check remove_arg_zero(struct linux_binprm *);
110extern int search_binary_handler(struct linux_binprm *,struct pt_regs *); 110extern int search_binary_handler(struct linux_binprm *,struct pt_regs *);
111extern int flush_old_exec(struct linux_binprm * bprm); 111extern int flush_old_exec(struct linux_binprm * bprm);
112extern void setup_new_exec(struct linux_binprm * bprm);
112 113
113extern int suid_dumpable; 114extern int suid_dumpable;
114#define SUID_DUMP_DISABLE 0 /* No setuid dumping */ 115#define SUID_DUMP_DISABLE 0 /* No setuid dumping */
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 9b98173a8184..5c8018977efa 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -938,6 +938,8 @@ extern void blk_queue_io_opt(struct request_queue *q, unsigned int opt);
938extern void blk_set_default_limits(struct queue_limits *lim); 938extern void blk_set_default_limits(struct queue_limits *lim);
939extern int blk_stack_limits(struct queue_limits *t, struct queue_limits *b, 939extern int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
940 sector_t offset); 940 sector_t offset);
941extern int bdev_stack_limits(struct queue_limits *t, struct block_device *bdev,
942 sector_t offset);
941extern void disk_stack_limits(struct gendisk *disk, struct block_device *bdev, 943extern void disk_stack_limits(struct gendisk *disk, struct block_device *bdev,
942 sector_t offset); 944 sector_t offset);
943extern void blk_queue_stack_limits(struct request_queue *t, struct request_queue *b); 945extern void blk_queue_stack_limits(struct request_queue *t, struct request_queue *b);
@@ -1148,8 +1150,11 @@ static inline int queue_discard_alignment(struct request_queue *q)
1148static inline int queue_sector_discard_alignment(struct request_queue *q, 1150static inline int queue_sector_discard_alignment(struct request_queue *q,
1149 sector_t sector) 1151 sector_t sector)
1150{ 1152{
1151 return ((sector << 9) - q->limits.discard_alignment) 1153 struct queue_limits *lim = &q->limits;
1152 & (q->limits.discard_granularity - 1); 1154 unsigned int alignment = (sector << 9) & (lim->discard_granularity - 1);
1155
1156 return (lim->discard_granularity + lim->discard_alignment - alignment)
1157 & (lim->discard_granularity - 1);
1153} 1158}
1154 1159
1155static inline unsigned int queue_discard_zeroes_data(struct request_queue *q) 1160static inline unsigned int queue_discard_zeroes_data(struct request_queue *q)
diff --git a/include/linux/drbd.h b/include/linux/drbd.h
index e84f4733cb55..78962272338a 100644
--- a/include/linux/drbd.h
+++ b/include/linux/drbd.h
@@ -53,7 +53,7 @@
53 53
54 54
55extern const char *drbd_buildtag(void); 55extern const char *drbd_buildtag(void);
56#define REL_VERSION "8.3.6" 56#define REL_VERSION "8.3.7"
57#define API_VERSION 88 57#define API_VERSION 88
58#define PRO_VERSION_MIN 86 58#define PRO_VERSION_MIN 86
59#define PRO_VERSION_MAX 91 59#define PRO_VERSION_MAX 91
diff --git a/include/linux/drbd_nl.h b/include/linux/drbd_nl.h
index db5721ad50d1..a4d82f895994 100644
--- a/include/linux/drbd_nl.h
+++ b/include/linux/drbd_nl.h
@@ -69,6 +69,7 @@ NL_PACKET(disconnect, 6, )
69 69
70NL_PACKET(resize, 7, 70NL_PACKET(resize, 7,
71 NL_INT64( 29, T_MAY_IGNORE, resize_size) 71 NL_INT64( 29, T_MAY_IGNORE, resize_size)
72 NL_BIT( 68, T_MAY_IGNORE, resize_force)
72) 73)
73 74
74NL_PACKET(syncer_conf, 8, 75NL_PACKET(syncer_conf, 8,
diff --git a/include/linux/eventfd.h b/include/linux/eventfd.h
index 94dd10366a78..91bb4f27238c 100644
--- a/include/linux/eventfd.h
+++ b/include/linux/eventfd.h
@@ -10,6 +10,7 @@
10 10
11#include <linux/fcntl.h> 11#include <linux/fcntl.h>
12#include <linux/file.h> 12#include <linux/file.h>
13#include <linux/wait.h>
13 14
14/* 15/*
15 * CAREFUL: Check include/asm-generic/fcntl.h when defining 16 * CAREFUL: Check include/asm-generic/fcntl.h when defining
@@ -34,6 +35,9 @@ struct file *eventfd_fget(int fd);
34struct eventfd_ctx *eventfd_ctx_fdget(int fd); 35struct eventfd_ctx *eventfd_ctx_fdget(int fd);
35struct eventfd_ctx *eventfd_ctx_fileget(struct file *file); 36struct eventfd_ctx *eventfd_ctx_fileget(struct file *file);
36int eventfd_signal(struct eventfd_ctx *ctx, int n); 37int eventfd_signal(struct eventfd_ctx *ctx, int n);
38ssize_t eventfd_ctx_read(struct eventfd_ctx *ctx, int no_wait, __u64 *cnt);
39int eventfd_ctx_remove_wait_queue(struct eventfd_ctx *ctx, wait_queue_t *wait,
40 __u64 *cnt);
37 41
38#else /* CONFIG_EVENTFD */ 42#else /* CONFIG_EVENTFD */
39 43
@@ -61,6 +65,18 @@ static inline void eventfd_ctx_put(struct eventfd_ctx *ctx)
61 65
62} 66}
63 67
68static inline ssize_t eventfd_ctx_read(struct eventfd_ctx *ctx, int no_wait,
69 __u64 *cnt)
70{
71 return -ENOSYS;
72}
73
74static inline int eventfd_ctx_remove_wait_queue(struct eventfd_ctx *ctx,
75 wait_queue_t *wait, __u64 *cnt)
76{
77 return -ENOSYS;
78}
79
64#endif 80#endif
65 81
66#endif /* _LINUX_EVENTFD_H */ 82#endif /* _LINUX_EVENTFD_H */
diff --git a/include/linux/firewire-cdev.h b/include/linux/firewire-cdev.h
index 1f716d9f714b..520ecf86cbb3 100644
--- a/include/linux/firewire-cdev.h
+++ b/include/linux/firewire-cdev.h
@@ -380,7 +380,7 @@ struct fw_cdev_initiate_bus_reset {
380 * @immediate: If non-zero, immediate key to insert before pointer 380 * @immediate: If non-zero, immediate key to insert before pointer
381 * @key: Upper 8 bits of root directory pointer 381 * @key: Upper 8 bits of root directory pointer
382 * @data: Userspace pointer to contents of descriptor block 382 * @data: Userspace pointer to contents of descriptor block
383 * @length: Length of descriptor block data, in bytes 383 * @length: Length of descriptor block data, in quadlets
384 * @handle: Handle to the descriptor, written by the kernel 384 * @handle: Handle to the descriptor, written by the kernel
385 * 385 *
386 * Add a descriptor block and optionally a preceding immediate key to the local 386 * Add a descriptor block and optionally a preceding immediate key to the local
@@ -394,6 +394,8 @@ struct fw_cdev_initiate_bus_reset {
394 * If not 0, the @immediate field specifies an immediate key which will be 394 * If not 0, the @immediate field specifies an immediate key which will be
395 * inserted before the root directory pointer. 395 * inserted before the root directory pointer.
396 * 396 *
397 * @immediate, @key, and @data array elements are CPU-endian quadlets.
398 *
397 * If successful, the kernel adds the descriptor and writes back a handle to the 399 * If successful, the kernel adds the descriptor and writes back a handle to the
398 * kernel-side object to be used for later removal of the descriptor block and 400 * kernel-side object to be used for later removal of the descriptor block and
399 * immediate key. 401 * immediate key.
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index c6c0c41af35f..9717081c75ad 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -256,9 +256,9 @@ extern struct hd_struct *disk_map_sector_rcu(struct gendisk *disk,
256#define part_stat_read(part, field) \ 256#define part_stat_read(part, field) \
257({ \ 257({ \
258 typeof((part)->dkstats->field) res = 0; \ 258 typeof((part)->dkstats->field) res = 0; \
259 int i; \ 259 unsigned int _cpu; \
260 for_each_possible_cpu(i) \ 260 for_each_possible_cpu(_cpu) \
261 res += per_cpu_ptr((part)->dkstats, i)->field; \ 261 res += per_cpu_ptr((part)->dkstats, _cpu)->field; \
262 res; \ 262 res; \
263}) 263})
264 264
diff --git a/include/linux/hw_breakpoint.h b/include/linux/hw_breakpoint.h
index 41235c93e4e9..070ba0621738 100644
--- a/include/linux/hw_breakpoint.h
+++ b/include/linux/hw_breakpoint.h
@@ -75,6 +75,8 @@ extern int __register_perf_hw_breakpoint(struct perf_event *bp);
75extern void unregister_hw_breakpoint(struct perf_event *bp); 75extern void unregister_hw_breakpoint(struct perf_event *bp);
76extern void unregister_wide_hw_breakpoint(struct perf_event **cpu_events); 76extern void unregister_wide_hw_breakpoint(struct perf_event **cpu_events);
77 77
78extern int dbg_reserve_bp_slot(struct perf_event *bp);
79extern int dbg_release_bp_slot(struct perf_event *bp);
78extern int reserve_bp_slot(struct perf_event *bp); 80extern int reserve_bp_slot(struct perf_event *bp);
79extern void release_bp_slot(struct perf_event *bp); 81extern void release_bp_slot(struct perf_event *bp);
80 82
diff --git a/include/linux/input.h b/include/linux/input.h
index 7be8a6537b57..735ceaf1bc2d 100644
--- a/include/linux/input.h
+++ b/include/linux/input.h
@@ -660,6 +660,7 @@ struct input_absinfo {
660#define ABS_MT_TOOL_TYPE 0x37 /* Type of touching device */ 660#define ABS_MT_TOOL_TYPE 0x37 /* Type of touching device */
661#define ABS_MT_BLOB_ID 0x38 /* Group a set of packets as a blob */ 661#define ABS_MT_BLOB_ID 0x38 /* Group a set of packets as a blob */
662#define ABS_MT_TRACKING_ID 0x39 /* Unique ID of initiated contact */ 662#define ABS_MT_TRACKING_ID 0x39 /* Unique ID of initiated contact */
663#define ABS_MT_PRESSURE 0x3a /* Pressure on contact area */
663 664
664#define ABS_MAX 0x3f 665#define ABS_MAX 0x3f
665#define ABS_CNT (ABS_MAX+1) 666#define ABS_CNT (ABS_MAX+1)
diff --git a/include/linux/iocontext.h b/include/linux/iocontext.h
index a63235996309..78ef023227d4 100644
--- a/include/linux/iocontext.h
+++ b/include/linux/iocontext.h
@@ -4,32 +4,6 @@
4#include <linux/radix-tree.h> 4#include <linux/radix-tree.h>
5#include <linux/rcupdate.h> 5#include <linux/rcupdate.h>
6 6
7/*
8 * This is the per-process anticipatory I/O scheduler state.
9 */
10struct as_io_context {
11 spinlock_t lock;
12
13 void (*dtor)(struct as_io_context *aic); /* destructor */
14 void (*exit)(struct as_io_context *aic); /* called on task exit */
15
16 unsigned long state;
17 atomic_t nr_queued; /* queued reads & sync writes */
18 atomic_t nr_dispatched; /* number of requests gone to the drivers */
19
20 /* IO History tracking */
21 /* Thinktime */
22 unsigned long last_end_request;
23 unsigned long ttime_total;
24 unsigned long ttime_samples;
25 unsigned long ttime_mean;
26 /* Layout pattern */
27 unsigned int seek_samples;
28 sector_t last_request_pos;
29 u64 seek_total;
30 sector_t seek_mean;
31};
32
33struct cfq_queue; 7struct cfq_queue;
34struct cfq_io_context { 8struct cfq_io_context {
35 void *key; 9 void *key;
@@ -78,7 +52,6 @@ struct io_context {
78 unsigned long last_waited; /* Time last woken after wait for request */ 52 unsigned long last_waited; /* Time last woken after wait for request */
79 int nr_batch_requests; /* Number of requests left in the batch */ 53 int nr_batch_requests; /* Number of requests left in the batch */
80 54
81 struct as_io_context *aic;
82 struct radix_tree_root radix_root; 55 struct radix_tree_root radix_root;
83 struct hlist_head cic_list; 56 struct hlist_head cic_list;
84 void *ioc_data; 57 void *ioc_data;
diff --git a/include/linux/kmsg_dump.h b/include/linux/kmsg_dump.h
index e32aa268efac..24b44145a886 100644
--- a/include/linux/kmsg_dump.h
+++ b/include/linux/kmsg_dump.h
@@ -17,6 +17,7 @@
17enum kmsg_dump_reason { 17enum kmsg_dump_reason {
18 KMSG_DUMP_OOPS, 18 KMSG_DUMP_OOPS,
19 KMSG_DUMP_PANIC, 19 KMSG_DUMP_PANIC,
20 KMSG_DUMP_KEXEC,
20}; 21};
21 22
22/** 23/**
diff --git a/include/linux/mfd/tmio.h b/include/linux/mfd/tmio.h
index 6b9c5d06690c..9cb1834deffa 100644
--- a/include/linux/mfd/tmio.h
+++ b/include/linux/mfd/tmio.h
@@ -2,6 +2,8 @@
2#define MFD_TMIO_H 2#define MFD_TMIO_H
3 3
4#include <linux/fb.h> 4#include <linux/fb.h>
5#include <linux/io.h>
6#include <linux/platform_device.h>
5 7
6#define tmio_ioread8(addr) readb(addr) 8#define tmio_ioread8(addr) readb(addr)
7#define tmio_ioread16(addr) readw(addr) 9#define tmio_ioread16(addr) readw(addr)
@@ -18,11 +20,48 @@
18 writew((val) >> 16, (addr) + 2); \ 20 writew((val) >> 16, (addr) + 2); \
19 } while (0) 21 } while (0)
20 22
23#define CNF_CMD 0x04
24#define CNF_CTL_BASE 0x10
25#define CNF_INT_PIN 0x3d
26#define CNF_STOP_CLK_CTL 0x40
27#define CNF_GCLK_CTL 0x41
28#define CNF_SD_CLK_MODE 0x42
29#define CNF_PIN_STATUS 0x44
30#define CNF_PWR_CTL_1 0x48
31#define CNF_PWR_CTL_2 0x49
32#define CNF_PWR_CTL_3 0x4a
33#define CNF_CARD_DETECT_MODE 0x4c
34#define CNF_SD_SLOT 0x50
35#define CNF_EXT_GCLK_CTL_1 0xf0
36#define CNF_EXT_GCLK_CTL_2 0xf1
37#define CNF_EXT_GCLK_CTL_3 0xf9
38#define CNF_SD_LED_EN_1 0xfa
39#define CNF_SD_LED_EN_2 0xfe
40
41#define SDCREN 0x2 /* Enable access to MMC CTL regs. (flag in COMMAND_REG)*/
42
43#define sd_config_write8(base, shift, reg, val) \
44 tmio_iowrite8((val), (base) + ((reg) << (shift)))
45#define sd_config_write16(base, shift, reg, val) \
46 tmio_iowrite16((val), (base) + ((reg) << (shift)))
47#define sd_config_write32(base, shift, reg, val) \
48 do { \
49 tmio_iowrite16((val), (base) + ((reg) << (shift))); \
50 tmio_iowrite16((val) >> 16, (base) + ((reg + 2) << (shift))); \
51 } while (0)
52
53int tmio_core_mmc_enable(void __iomem *cnf, int shift, unsigned long base);
54int tmio_core_mmc_resume(void __iomem *cnf, int shift, unsigned long base);
55void tmio_core_mmc_pwr(void __iomem *cnf, int shift, int state);
56void tmio_core_mmc_clk_div(void __iomem *cnf, int shift, int state);
57
21/* 58/*
22 * data for the MMC controller 59 * data for the MMC controller
23 */ 60 */
24struct tmio_mmc_data { 61struct tmio_mmc_data {
25 const unsigned int hclk; 62 const unsigned int hclk;
63 void (*set_pwr)(struct platform_device *host, int state);
64 void (*set_clk_div)(struct platform_device *host, int state);
26}; 65};
27 66
28/* 67/*
diff --git a/include/linux/mfd/wm8350/pmic.h b/include/linux/mfd/wm8350/pmic.h
index be3264e286e0..e786fe9841ef 100644
--- a/include/linux/mfd/wm8350/pmic.h
+++ b/include/linux/mfd/wm8350/pmic.h
@@ -666,20 +666,20 @@
666#define WM8350_ISINK_FLASH_DUR_64MS (1 << 8) 666#define WM8350_ISINK_FLASH_DUR_64MS (1 << 8)
667#define WM8350_ISINK_FLASH_DUR_96MS (2 << 8) 667#define WM8350_ISINK_FLASH_DUR_96MS (2 << 8)
668#define WM8350_ISINK_FLASH_DUR_1024MS (3 << 8) 668#define WM8350_ISINK_FLASH_DUR_1024MS (3 << 8)
669#define WM8350_ISINK_FLASH_ON_INSTANT (0 << 4) 669#define WM8350_ISINK_FLASH_ON_INSTANT (0 << 0)
670#define WM8350_ISINK_FLASH_ON_0_25S (1 << 4) 670#define WM8350_ISINK_FLASH_ON_0_25S (1 << 0)
671#define WM8350_ISINK_FLASH_ON_0_50S (2 << 4) 671#define WM8350_ISINK_FLASH_ON_0_50S (2 << 0)
672#define WM8350_ISINK_FLASH_ON_1_00S (3 << 4) 672#define WM8350_ISINK_FLASH_ON_1_00S (3 << 0)
673#define WM8350_ISINK_FLASH_ON_1_95S (1 << 4) 673#define WM8350_ISINK_FLASH_ON_1_95S (1 << 0)
674#define WM8350_ISINK_FLASH_ON_3_91S (2 << 4) 674#define WM8350_ISINK_FLASH_ON_3_91S (2 << 0)
675#define WM8350_ISINK_FLASH_ON_7_80S (3 << 4) 675#define WM8350_ISINK_FLASH_ON_7_80S (3 << 0)
676#define WM8350_ISINK_FLASH_OFF_INSTANT (0 << 0) 676#define WM8350_ISINK_FLASH_OFF_INSTANT (0 << 4)
677#define WM8350_ISINK_FLASH_OFF_0_25S (1 << 0) 677#define WM8350_ISINK_FLASH_OFF_0_25S (1 << 4)
678#define WM8350_ISINK_FLASH_OFF_0_50S (2 << 0) 678#define WM8350_ISINK_FLASH_OFF_0_50S (2 << 4)
679#define WM8350_ISINK_FLASH_OFF_1_00S (3 << 0) 679#define WM8350_ISINK_FLASH_OFF_1_00S (3 << 4)
680#define WM8350_ISINK_FLASH_OFF_1_95S (1 << 0) 680#define WM8350_ISINK_FLASH_OFF_1_95S (1 << 4)
681#define WM8350_ISINK_FLASH_OFF_3_91S (2 << 0) 681#define WM8350_ISINK_FLASH_OFF_3_91S (2 << 4)
682#define WM8350_ISINK_FLASH_OFF_7_80S (3 << 0) 682#define WM8350_ISINK_FLASH_OFF_7_80S (3 << 4)
683 683
684/* 684/*
685 * Regulator Interrupts. 685 * Regulator Interrupts.
diff --git a/include/linux/mtd/pismo.h b/include/linux/mtd/pismo.h
new file mode 100644
index 000000000000..8dfb7e1421c5
--- /dev/null
+++ b/include/linux/mtd/pismo.h
@@ -0,0 +1,17 @@
1/*
2 * PISMO memory driver - http://www.pismoworld.org/
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License.
7 */
8#ifndef __LINUX_MTD_PISMO_H
9#define __LINUX_MTD_PISMO_H
10
11struct pismo_pdata {
12 void (*set_vpp)(void *, int);
13 void *vpp_data;
14 phys_addr_t cs_addrs[5];
15};
16
17#endif
diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h
index ed5d7501e181..3c62ed408492 100644
--- a/include/linux/pagemap.h
+++ b/include/linux/pagemap.h
@@ -253,6 +253,8 @@ extern struct page * read_cache_page_async(struct address_space *mapping,
253extern struct page * read_cache_page(struct address_space *mapping, 253extern struct page * read_cache_page(struct address_space *mapping,
254 pgoff_t index, filler_t *filler, 254 pgoff_t index, filler_t *filler,
255 void *data); 255 void *data);
256extern struct page * read_cache_page_gfp(struct address_space *mapping,
257 pgoff_t index, gfp_t gfp_mask);
256extern int read_cache_pages(struct address_space *mapping, 258extern int read_cache_pages(struct address_space *mapping,
257 struct list_head *pages, filler_t *filler, void *data); 259 struct list_head *pages, filler_t *filler, void *data);
258 260
diff --git a/include/linux/pci.h b/include/linux/pci.h
index 174e5392e51e..c1968f464c38 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -756,6 +756,10 @@ pci_power_t pci_target_state(struct pci_dev *dev);
756int pci_prepare_to_sleep(struct pci_dev *dev); 756int pci_prepare_to_sleep(struct pci_dev *dev);
757int pci_back_from_sleep(struct pci_dev *dev); 757int pci_back_from_sleep(struct pci_dev *dev);
758 758
759/* For use by arch with custom probe code */
760void set_pcie_port_type(struct pci_dev *pdev);
761void set_pcie_hotplug_bridge(struct pci_dev *pdev);
762
759/* Functions for PCI Hotplug drivers to use */ 763/* Functions for PCI Hotplug drivers to use */
760int pci_bus_find_capability(struct pci_bus *bus, unsigned int devfn, int cap); 764int pci_bus_find_capability(struct pci_bus *bus, unsigned int devfn, int cap);
761#ifdef CONFIG_HOTPLUG 765#ifdef CONFIG_HOTPLUG
diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
index c66b34f75eea..8fa71874113f 100644
--- a/include/linux/perf_event.h
+++ b/include/linux/perf_event.h
@@ -814,9 +814,14 @@ extern int perf_event_overflow(struct perf_event *event, int nmi,
814 */ 814 */
815static inline int is_software_event(struct perf_event *event) 815static inline int is_software_event(struct perf_event *event)
816{ 816{
817 return (event->attr.type != PERF_TYPE_RAW) && 817 switch (event->attr.type) {
818 (event->attr.type != PERF_TYPE_HARDWARE) && 818 case PERF_TYPE_SOFTWARE:
819 (event->attr.type != PERF_TYPE_HW_CACHE); 819 case PERF_TYPE_TRACEPOINT:
820 /* for now the breakpoint stuff also works as software event */
821 case PERF_TYPE_BREAKPOINT:
822 return 1;
823 }
824 return 0;
820} 825}
821 826
822extern atomic_t perf_swevent_enabled[PERF_COUNT_SW_MAX]; 827extern atomic_t perf_swevent_enabled[PERF_COUNT_SW_MAX];
diff --git a/include/linux/phy.h b/include/linux/phy.h
index 7968defd2fa7..6a7eb402165d 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -485,6 +485,7 @@ void phy_driver_unregister(struct phy_driver *drv);
485int phy_driver_register(struct phy_driver *new_driver); 485int phy_driver_register(struct phy_driver *new_driver);
486void phy_prepare_link(struct phy_device *phydev, 486void phy_prepare_link(struct phy_device *phydev,
487 void (*adjust_link)(struct net_device *)); 487 void (*adjust_link)(struct net_device *));
488void phy_state_machine(struct work_struct *work);
488void phy_start_machine(struct phy_device *phydev, 489void phy_start_machine(struct phy_device *phydev,
489 void (*handler)(struct net_device *)); 490 void (*handler)(struct net_device *));
490void phy_stop_machine(struct phy_device *phydev); 491void phy_stop_machine(struct phy_device *phydev);
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 6f7bba93929b..abdfacc58653 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1369,7 +1369,7 @@ struct task_struct {
1369 char comm[TASK_COMM_LEN]; /* executable name excluding path 1369 char comm[TASK_COMM_LEN]; /* executable name excluding path
1370 - access with [gs]et_task_comm (which lock 1370 - access with [gs]et_task_comm (which lock
1371 it with task_lock()) 1371 it with task_lock())
1372 - initialized normally by flush_old_exec */ 1372 - initialized normally by setup_new_exec */
1373/* file system info */ 1373/* file system info */
1374 int link_count, total_link_count; 1374 int link_count, total_link_count;
1375#ifdef CONFIG_SYSVIPC 1375#ifdef CONFIG_SYSVIPC
diff --git a/include/linux/spi/ad7879.h b/include/linux/spi/ad7879.h
index 4231104c9afa..6334cee1a3be 100644
--- a/include/linux/spi/ad7879.h
+++ b/include/linux/spi/ad7879.h
@@ -28,8 +28,12 @@ struct ad7879_platform_data {
28 * 1 = 4, 2 = 8, 3 = 16 (median > averaging) 28 * 1 = 4, 2 = 8, 3 = 16 (median > averaging)
29 */ 29 */
30 u8 median; 30 u8 median;
31 /* 1 = AUX/VBAT/GPIO set to GPIO Output */ 31 /* 1 = AUX/VBAT/GPIO export GPIO to gpiolib
32 u8 gpio_output; 32 * requires CONFIG_GPIOLIB
33 /* Initial GPIO pin state (valid if gpio_output = 1) */ 33 */
34 u8 gpio_default; 34 bool gpio_export;
35 /* identifies the first GPIO number handled by this chip;
36 * or, if negative, requests dynamic ID allocation.
37 */
38 s32 gpio_base;
35}; 39};
diff --git a/include/linux/topology.h b/include/linux/topology.h
index 57e63579bfdd..5b81156780b1 100644
--- a/include/linux/topology.h
+++ b/include/linux/topology.h
@@ -99,7 +99,7 @@ int arch_update_cpu_topology(void);
99 | 1*SD_WAKE_AFFINE \ 99 | 1*SD_WAKE_AFFINE \
100 | 1*SD_SHARE_CPUPOWER \ 100 | 1*SD_SHARE_CPUPOWER \
101 | 0*SD_POWERSAVINGS_BALANCE \ 101 | 0*SD_POWERSAVINGS_BALANCE \
102 | 0*SD_SHARE_PKG_RESOURCES \ 102 | 1*SD_SHARE_PKG_RESOURCES \
103 | 0*SD_SERIALIZE \ 103 | 0*SD_SERIALIZE \
104 | 0*SD_PREFER_SIBLING \ 104 | 0*SD_PREFER_SIBLING \
105 , \ 105 , \
diff --git a/include/linux/usb.h b/include/linux/usb.h
index e101a2d04d75..d7ace1b80f09 100644
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
@@ -192,6 +192,7 @@ struct usb_interface {
192 unsigned needs_altsetting0:1; /* switch to altsetting 0 is pending */ 192 unsigned needs_altsetting0:1; /* switch to altsetting 0 is pending */
193 unsigned needs_binding:1; /* needs delayed unbind/rebind */ 193 unsigned needs_binding:1; /* needs delayed unbind/rebind */
194 unsigned reset_running:1; 194 unsigned reset_running:1;
195 unsigned resetting_device:1; /* true: bandwidth alloc after reset */
195 196
196 struct device dev; /* interface specific device info */ 197 struct device dev; /* interface specific device info */
197 struct device *usb_dev; 198 struct device *usb_dev;
diff --git a/include/net/netns/xfrm.h b/include/net/netns/xfrm.h
index 56f8e5585df7..74f119a2829a 100644
--- a/include/net/netns/xfrm.h
+++ b/include/net/netns/xfrm.h
@@ -5,6 +5,7 @@
5#include <linux/wait.h> 5#include <linux/wait.h>
6#include <linux/workqueue.h> 6#include <linux/workqueue.h>
7#include <linux/xfrm.h> 7#include <linux/xfrm.h>
8#include <net/dst_ops.h>
8 9
9struct ctl_table_header; 10struct ctl_table_header;
10 11
@@ -42,6 +43,11 @@ struct netns_xfrm {
42 unsigned int policy_count[XFRM_POLICY_MAX * 2]; 43 unsigned int policy_count[XFRM_POLICY_MAX * 2];
43 struct work_struct policy_hash_work; 44 struct work_struct policy_hash_work;
44 45
46 struct dst_ops xfrm4_dst_ops;
47#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
48 struct dst_ops xfrm6_dst_ops;
49#endif
50
45 struct sock *nlsk; 51 struct sock *nlsk;
46 struct sock *nlsk_stash; 52 struct sock *nlsk_stash;
47 53
diff --git a/include/net/netrom.h b/include/net/netrom.h
index 15696b1fd30f..ab170a60e7d3 100644
--- a/include/net/netrom.h
+++ b/include/net/netrom.h
@@ -132,6 +132,8 @@ static __inline__ void nr_node_put(struct nr_node *nr_node)
132static __inline__ void nr_neigh_put(struct nr_neigh *nr_neigh) 132static __inline__ void nr_neigh_put(struct nr_neigh *nr_neigh)
133{ 133{
134 if (atomic_dec_and_test(&nr_neigh->refcount)) { 134 if (atomic_dec_and_test(&nr_neigh->refcount)) {
135 if (nr_neigh->ax25)
136 ax25_cb_put(nr_neigh->ax25);
135 kfree(nr_neigh->digipeat); 137 kfree(nr_neigh->digipeat);
136 kfree(nr_neigh); 138 kfree(nr_neigh);
137 } 139 }
diff --git a/include/net/xfrm.h b/include/net/xfrm.h
index 6d85861ab990..60c27706e7b9 100644
--- a/include/net/xfrm.h
+++ b/include/net/xfrm.h
@@ -1367,8 +1367,8 @@ struct xfrmk_spdinfo {
1367extern struct xfrm_state *xfrm_find_acq_byseq(struct net *net, u32 seq); 1367extern struct xfrm_state *xfrm_find_acq_byseq(struct net *net, u32 seq);
1368extern int xfrm_state_delete(struct xfrm_state *x); 1368extern int xfrm_state_delete(struct xfrm_state *x);
1369extern int xfrm_state_flush(struct net *net, u8 proto, struct xfrm_audit *audit_info); 1369extern int xfrm_state_flush(struct net *net, u8 proto, struct xfrm_audit *audit_info);
1370extern void xfrm_sad_getinfo(struct xfrmk_sadinfo *si); 1370extern void xfrm_sad_getinfo(struct net *net, struct xfrmk_sadinfo *si);
1371extern void xfrm_spd_getinfo(struct xfrmk_spdinfo *si); 1371extern void xfrm_spd_getinfo(struct net *net, struct xfrmk_spdinfo *si);
1372extern int xfrm_replay_check(struct xfrm_state *x, 1372extern int xfrm_replay_check(struct xfrm_state *x,
1373 struct sk_buff *skb, __be32 seq); 1373 struct sk_buff *skb, __be32 seq);
1374extern void xfrm_replay_advance(struct xfrm_state *x, __be32 seq); 1374extern void xfrm_replay_advance(struct xfrm_state *x, __be32 seq);
diff --git a/include/scsi/scsi_bsg_fc.h b/include/scsi/scsi_bsg_fc.h
index a4b233318179..91a4e4ff9a9b 100644
--- a/include/scsi/scsi_bsg_fc.h
+++ b/include/scsi/scsi_bsg_fc.h
@@ -292,7 +292,7 @@ struct fc_bsg_request {
292 struct fc_bsg_rport_els r_els; 292 struct fc_bsg_rport_els r_els;
293 struct fc_bsg_rport_ct r_ct; 293 struct fc_bsg_rport_ct r_ct;
294 } rqst_data; 294 } rqst_data;
295}; 295} __attribute__((packed));
296 296
297 297
298/* response (request sense data) structure of the sg_io_v4 */ 298/* response (request sense data) structure of the sg_io_v4 */
diff --git a/kernel/cpu.c b/kernel/cpu.c
index 1c8ddd6ee940..677f25376a38 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -151,13 +151,13 @@ static inline void check_for_tasks(int cpu)
151 151
152 write_lock_irq(&tasklist_lock); 152 write_lock_irq(&tasklist_lock);
153 for_each_process(p) { 153 for_each_process(p) {
154 if (task_cpu(p) == cpu && 154 if (task_cpu(p) == cpu && p->state == TASK_RUNNING &&
155 (!cputime_eq(p->utime, cputime_zero) || 155 (!cputime_eq(p->utime, cputime_zero) ||
156 !cputime_eq(p->stime, cputime_zero))) 156 !cputime_eq(p->stime, cputime_zero)))
157 printk(KERN_WARNING "Task %s (pid = %d) is on cpu %d\ 157 printk(KERN_WARNING "Task %s (pid = %d) is on cpu %d "
158 (state = %ld, flags = %x) \n", 158 "(state = %ld, flags = %x)\n",
159 p->comm, task_pid_nr(p), cpu, 159 p->comm, task_pid_nr(p), cpu,
160 p->state, p->flags); 160 p->state, p->flags);
161 } 161 }
162 write_unlock_irq(&tasklist_lock); 162 write_unlock_irq(&tasklist_lock);
163} 163}
diff --git a/kernel/fork.c b/kernel/fork.c
index 5b2959b3ffc2..f88bd984df35 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -1241,21 +1241,6 @@ static struct task_struct *copy_process(unsigned long clone_flags,
1241 /* Need tasklist lock for parent etc handling! */ 1241 /* Need tasklist lock for parent etc handling! */
1242 write_lock_irq(&tasklist_lock); 1242 write_lock_irq(&tasklist_lock);
1243 1243
1244 /*
1245 * The task hasn't been attached yet, so its cpus_allowed mask will
1246 * not be changed, nor will its assigned CPU.
1247 *
1248 * The cpus_allowed mask of the parent may have changed after it was
1249 * copied first time - so re-copy it here, then check the child's CPU
1250 * to ensure it is on a valid CPU (and if not, just force it back to
1251 * parent's CPU). This avoids alot of nasty races.
1252 */
1253 p->cpus_allowed = current->cpus_allowed;
1254 p->rt.nr_cpus_allowed = current->rt.nr_cpus_allowed;
1255 if (unlikely(!cpu_isset(task_cpu(p), p->cpus_allowed) ||
1256 !cpu_online(task_cpu(p))))
1257 set_task_cpu(p, smp_processor_id());
1258
1259 /* CLONE_PARENT re-uses the old parent */ 1244 /* CLONE_PARENT re-uses the old parent */
1260 if (clone_flags & (CLONE_PARENT|CLONE_THREAD)) { 1245 if (clone_flags & (CLONE_PARENT|CLONE_THREAD)) {
1261 p->real_parent = current->real_parent; 1246 p->real_parent = current->real_parent;
diff --git a/kernel/hw_breakpoint.c b/kernel/hw_breakpoint.c
index 50dbd5999588..8a5c7d55ac9f 100644
--- a/kernel/hw_breakpoint.c
+++ b/kernel/hw_breakpoint.c
@@ -243,38 +243,70 @@ static void toggle_bp_slot(struct perf_event *bp, bool enable)
243 * ((per_cpu(nr_bp_flexible, *) > 1) + max(per_cpu(nr_cpu_bp_pinned, *)) 243 * ((per_cpu(nr_bp_flexible, *) > 1) + max(per_cpu(nr_cpu_bp_pinned, *))
244 * + max(per_cpu(nr_task_bp_pinned, *))) < HBP_NUM 244 * + max(per_cpu(nr_task_bp_pinned, *))) < HBP_NUM
245 */ 245 */
246int reserve_bp_slot(struct perf_event *bp) 246static int __reserve_bp_slot(struct perf_event *bp)
247{ 247{
248 struct bp_busy_slots slots = {0}; 248 struct bp_busy_slots slots = {0};
249 int ret = 0;
250
251 mutex_lock(&nr_bp_mutex);
252 249
253 fetch_bp_busy_slots(&slots, bp); 250 fetch_bp_busy_slots(&slots, bp);
254 251
255 /* Flexible counters need to keep at least one slot */ 252 /* Flexible counters need to keep at least one slot */
256 if (slots.pinned + (!!slots.flexible) == HBP_NUM) { 253 if (slots.pinned + (!!slots.flexible) == HBP_NUM)
257 ret = -ENOSPC; 254 return -ENOSPC;
258 goto end;
259 }
260 255
261 toggle_bp_slot(bp, true); 256 toggle_bp_slot(bp, true);
262 257
263end: 258 return 0;
259}
260
261int reserve_bp_slot(struct perf_event *bp)
262{
263 int ret;
264
265 mutex_lock(&nr_bp_mutex);
266
267 ret = __reserve_bp_slot(bp);
268
264 mutex_unlock(&nr_bp_mutex); 269 mutex_unlock(&nr_bp_mutex);
265 270
266 return ret; 271 return ret;
267} 272}
268 273
274static void __release_bp_slot(struct perf_event *bp)
275{
276 toggle_bp_slot(bp, false);
277}
278
269void release_bp_slot(struct perf_event *bp) 279void release_bp_slot(struct perf_event *bp)
270{ 280{
271 mutex_lock(&nr_bp_mutex); 281 mutex_lock(&nr_bp_mutex);
272 282
273 toggle_bp_slot(bp, false); 283 __release_bp_slot(bp);
274 284
275 mutex_unlock(&nr_bp_mutex); 285 mutex_unlock(&nr_bp_mutex);
276} 286}
277 287
288/*
289 * Allow the kernel debugger to reserve breakpoint slots without
290 * taking a lock using the dbg_* variant of for the reserve and
291 * release breakpoint slots.
292 */
293int dbg_reserve_bp_slot(struct perf_event *bp)
294{
295 if (mutex_is_locked(&nr_bp_mutex))
296 return -1;
297
298 return __reserve_bp_slot(bp);
299}
300
301int dbg_release_bp_slot(struct perf_event *bp)
302{
303 if (mutex_is_locked(&nr_bp_mutex))
304 return -1;
305
306 __release_bp_slot(bp);
307
308 return 0;
309}
278 310
279int register_perf_hw_breakpoint(struct perf_event *bp) 311int register_perf_hw_breakpoint(struct perf_event *bp)
280{ 312{
@@ -296,6 +328,10 @@ int register_perf_hw_breakpoint(struct perf_event *bp)
296 if (!bp->attr.disabled || !bp->overflow_handler) 328 if (!bp->attr.disabled || !bp->overflow_handler)
297 ret = arch_validate_hwbkpt_settings(bp, bp->ctx->task); 329 ret = arch_validate_hwbkpt_settings(bp, bp->ctx->task);
298 330
331 /* if arch_validate_hwbkpt_settings() fails then release bp slot */
332 if (ret)
333 release_bp_slot(bp);
334
299 return ret; 335 return ret;
300} 336}
301 337
diff --git a/kernel/kexec.c b/kernel/kexec.c
index a9a93d9ee7a7..ef077fb73155 100644
--- a/kernel/kexec.c
+++ b/kernel/kexec.c
@@ -32,6 +32,7 @@
32#include <linux/console.h> 32#include <linux/console.h>
33#include <linux/vmalloc.h> 33#include <linux/vmalloc.h>
34#include <linux/swap.h> 34#include <linux/swap.h>
35#include <linux/kmsg_dump.h>
35 36
36#include <asm/page.h> 37#include <asm/page.h>
37#include <asm/uaccess.h> 38#include <asm/uaccess.h>
@@ -1074,6 +1075,9 @@ void crash_kexec(struct pt_regs *regs)
1074 if (mutex_trylock(&kexec_mutex)) { 1075 if (mutex_trylock(&kexec_mutex)) {
1075 if (kexec_crash_image) { 1076 if (kexec_crash_image) {
1076 struct pt_regs fixed_regs; 1077 struct pt_regs fixed_regs;
1078
1079 kmsg_dump(KMSG_DUMP_KEXEC);
1080
1077 crash_setup_regs(&fixed_regs, regs); 1081 crash_setup_regs(&fixed_regs, regs);
1078 crash_save_vmcoreinfo(); 1082 crash_save_vmcoreinfo();
1079 machine_crash_shutdown(&fixed_regs); 1083 machine_crash_shutdown(&fixed_regs);
diff --git a/kernel/kgdb.c b/kernel/kgdb.c
index 2eb517e23514..c7ade62e4ef0 100644
--- a/kernel/kgdb.c
+++ b/kernel/kgdb.c
@@ -583,6 +583,9 @@ static void kgdb_wait(struct pt_regs *regs)
583 smp_wmb(); 583 smp_wmb();
584 atomic_set(&cpu_in_kgdb[cpu], 1); 584 atomic_set(&cpu_in_kgdb[cpu], 1);
585 585
586 /* Disable any cpu specific hw breakpoints */
587 kgdb_disable_hw_debug(regs);
588
586 /* Wait till primary CPU is done with debugging */ 589 /* Wait till primary CPU is done with debugging */
587 while (atomic_read(&passive_cpu_wait[cpu])) 590 while (atomic_read(&passive_cpu_wait[cpu]))
588 cpu_relax(); 591 cpu_relax();
diff --git a/kernel/lockdep.c b/kernel/lockdep.c
index 5feaddcdbe49..c62ec14609b9 100644
--- a/kernel/lockdep.c
+++ b/kernel/lockdep.c
@@ -2147,7 +2147,7 @@ check_usage_backwards(struct task_struct *curr, struct held_lock *this,
2147 return ret; 2147 return ret;
2148 2148
2149 return print_irq_inversion_bug(curr, &root, target_entry, 2149 return print_irq_inversion_bug(curr, &root, target_entry,
2150 this, 1, irqclass); 2150 this, 0, irqclass);
2151} 2151}
2152 2152
2153void print_irqtrace_events(struct task_struct *curr) 2153void print_irqtrace_events(struct task_struct *curr)
diff --git a/kernel/panic.c b/kernel/panic.c
index 5827f7b97254..c787333282b8 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -75,7 +75,6 @@ NORET_TYPE void panic(const char * fmt, ...)
75 dump_stack(); 75 dump_stack();
76#endif 76#endif
77 77
78 kmsg_dump(KMSG_DUMP_PANIC);
79 /* 78 /*
80 * If we have crashed and we have a crash kernel loaded let it handle 79 * If we have crashed and we have a crash kernel loaded let it handle
81 * everything else. 80 * everything else.
@@ -83,6 +82,8 @@ NORET_TYPE void panic(const char * fmt, ...)
83 */ 82 */
84 crash_kexec(NULL); 83 crash_kexec(NULL);
85 84
85 kmsg_dump(KMSG_DUMP_PANIC);
86
86 /* 87 /*
87 * Note smp_send_stop is the usual smp shutdown function, which 88 * Note smp_send_stop is the usual smp shutdown function, which
88 * unfortunately means it may not be hardened to work in a panic 89 * unfortunately means it may not be hardened to work in a panic
diff --git a/kernel/perf_event.c b/kernel/perf_event.c
index 603c0d8b5df1..d27746bd3a06 100644
--- a/kernel/perf_event.c
+++ b/kernel/perf_event.c
@@ -3268,6 +3268,9 @@ static void perf_event_task_output(struct perf_event *event,
3268 3268
3269static int perf_event_task_match(struct perf_event *event) 3269static int perf_event_task_match(struct perf_event *event)
3270{ 3270{
3271 if (event->state != PERF_EVENT_STATE_ACTIVE)
3272 return 0;
3273
3271 if (event->cpu != -1 && event->cpu != smp_processor_id()) 3274 if (event->cpu != -1 && event->cpu != smp_processor_id())
3272 return 0; 3275 return 0;
3273 3276
@@ -3377,6 +3380,9 @@ static void perf_event_comm_output(struct perf_event *event,
3377 3380
3378static int perf_event_comm_match(struct perf_event *event) 3381static int perf_event_comm_match(struct perf_event *event)
3379{ 3382{
3383 if (event->state != PERF_EVENT_STATE_ACTIVE)
3384 return 0;
3385
3380 if (event->cpu != -1 && event->cpu != smp_processor_id()) 3386 if (event->cpu != -1 && event->cpu != smp_processor_id())
3381 return 0; 3387 return 0;
3382 3388
@@ -3494,6 +3500,9 @@ static void perf_event_mmap_output(struct perf_event *event,
3494static int perf_event_mmap_match(struct perf_event *event, 3500static int perf_event_mmap_match(struct perf_event *event,
3495 struct perf_mmap_event *mmap_event) 3501 struct perf_mmap_event *mmap_event)
3496{ 3502{
3503 if (event->state != PERF_EVENT_STATE_ACTIVE)
3504 return 0;
3505
3497 if (event->cpu != -1 && event->cpu != smp_processor_id()) 3506 if (event->cpu != -1 && event->cpu != smp_processor_id())
3498 return 0; 3507 return 0;
3499 3508
diff --git a/kernel/printk.c b/kernel/printk.c
index 17463ca2e229..1751c456b71f 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -1467,6 +1467,7 @@ EXPORT_SYMBOL_GPL(kmsg_dump_unregister);
1467static const char const *kmsg_reasons[] = { 1467static const char const *kmsg_reasons[] = {
1468 [KMSG_DUMP_OOPS] = "oops", 1468 [KMSG_DUMP_OOPS] = "oops",
1469 [KMSG_DUMP_PANIC] = "panic", 1469 [KMSG_DUMP_PANIC] = "panic",
1470 [KMSG_DUMP_KEXEC] = "kexec",
1470}; 1471};
1471 1472
1472static const char *kmsg_to_str(enum kmsg_dump_reason reason) 1473static const char *kmsg_to_str(enum kmsg_dump_reason reason)
diff --git a/kernel/sched.c b/kernel/sched.c
index c535cc4f6428..3a8fb30a91b1 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2320,14 +2320,12 @@ static int select_fallback_rq(int cpu, struct task_struct *p)
2320} 2320}
2321 2321
2322/* 2322/*
2323 * Called from: 2323 * Gets called from 3 sites (exec, fork, wakeup), since it is called without
2324 * holding rq->lock we need to ensure ->cpus_allowed is stable, this is done
2325 * by:
2324 * 2326 *
2325 * - fork, @p is stable because it isn't on the tasklist yet 2327 * exec: is unstable, retry loop
2326 * 2328 * fork & wake-up: serialize ->cpus_allowed against TASK_WAKING
2327 * - exec, @p is unstable, retry loop
2328 *
2329 * - wake-up, we serialize ->cpus_allowed against TASK_WAKING so
2330 * we should be good.
2331 */ 2329 */
2332static inline 2330static inline
2333int select_task_rq(struct task_struct *p, int sd_flags, int wake_flags) 2331int select_task_rq(struct task_struct *p, int sd_flags, int wake_flags)
@@ -2620,9 +2618,6 @@ void sched_fork(struct task_struct *p, int clone_flags)
2620 if (p->sched_class->task_fork) 2618 if (p->sched_class->task_fork)
2621 p->sched_class->task_fork(p); 2619 p->sched_class->task_fork(p);
2622 2620
2623#ifdef CONFIG_SMP
2624 cpu = select_task_rq(p, SD_BALANCE_FORK, 0);
2625#endif
2626 set_task_cpu(p, cpu); 2621 set_task_cpu(p, cpu);
2627 2622
2628#if defined(CONFIG_SCHEDSTATS) || defined(CONFIG_TASK_DELAY_ACCT) 2623#if defined(CONFIG_SCHEDSTATS) || defined(CONFIG_TASK_DELAY_ACCT)
@@ -2652,6 +2647,21 @@ void wake_up_new_task(struct task_struct *p, unsigned long clone_flags)
2652{ 2647{
2653 unsigned long flags; 2648 unsigned long flags;
2654 struct rq *rq; 2649 struct rq *rq;
2650 int cpu = get_cpu();
2651
2652#ifdef CONFIG_SMP
2653 /*
2654 * Fork balancing, do it here and not earlier because:
2655 * - cpus_allowed can change in the fork path
2656 * - any previously selected cpu might disappear through hotplug
2657 *
2658 * We still have TASK_WAKING but PF_STARTING is gone now, meaning
2659 * ->cpus_allowed is stable, we have preemption disabled, meaning
2660 * cpu_online_mask is stable.
2661 */
2662 cpu = select_task_rq(p, SD_BALANCE_FORK, 0);
2663 set_task_cpu(p, cpu);
2664#endif
2655 2665
2656 rq = task_rq_lock(p, &flags); 2666 rq = task_rq_lock(p, &flags);
2657 BUG_ON(p->state != TASK_WAKING); 2667 BUG_ON(p->state != TASK_WAKING);
@@ -2665,6 +2675,7 @@ void wake_up_new_task(struct task_struct *p, unsigned long clone_flags)
2665 p->sched_class->task_woken(rq, p); 2675 p->sched_class->task_woken(rq, p);
2666#endif 2676#endif
2667 task_rq_unlock(rq, &flags); 2677 task_rq_unlock(rq, &flags);
2678 put_cpu();
2668} 2679}
2669 2680
2670#ifdef CONFIG_PREEMPT_NOTIFIERS 2681#ifdef CONFIG_PREEMPT_NOTIFIERS
@@ -5530,8 +5541,11 @@ need_resched_nonpreemptible:
5530 5541
5531 post_schedule(rq); 5542 post_schedule(rq);
5532 5543
5533 if (unlikely(reacquire_kernel_lock(current) < 0)) 5544 if (unlikely(reacquire_kernel_lock(current) < 0)) {
5545 prev = rq->curr;
5546 switch_count = &prev->nivcsw;
5534 goto need_resched_nonpreemptible; 5547 goto need_resched_nonpreemptible;
5548 }
5535 5549
5536 preempt_enable_no_resched(); 5550 preempt_enable_no_resched();
5537 if (need_resched()) 5551 if (need_resched())
@@ -7136,14 +7150,18 @@ int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask)
7136 * the ->cpus_allowed mask from under waking tasks, which would be 7150 * the ->cpus_allowed mask from under waking tasks, which would be
7137 * possible when we change rq->lock in ttwu(), so synchronize against 7151 * possible when we change rq->lock in ttwu(), so synchronize against
7138 * TASK_WAKING to avoid that. 7152 * TASK_WAKING to avoid that.
7153 *
7154 * Make an exception for freshly cloned tasks, since cpuset namespaces
7155 * might move the task about, we have to validate the target in
7156 * wake_up_new_task() anyway since the cpu might have gone away.
7139 */ 7157 */
7140again: 7158again:
7141 while (p->state == TASK_WAKING) 7159 while (p->state == TASK_WAKING && !(p->flags & PF_STARTING))
7142 cpu_relax(); 7160 cpu_relax();
7143 7161
7144 rq = task_rq_lock(p, &flags); 7162 rq = task_rq_lock(p, &flags);
7145 7163
7146 if (p->state == TASK_WAKING) { 7164 if (p->state == TASK_WAKING && !(p->flags & PF_STARTING)) {
7147 task_rq_unlock(rq, &flags); 7165 task_rq_unlock(rq, &flags);
7148 goto again; 7166 goto again;
7149 } 7167 }
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
index 42ac3c9f66f6..8fe7ee81c552 100644
--- a/kernel/sched_fair.c
+++ b/kernel/sched_fair.c
@@ -1508,7 +1508,7 @@ static int select_task_rq_fair(struct task_struct *p, int sd_flag, int wake_flag
1508 * If there's an idle sibling in this domain, make that 1508 * If there's an idle sibling in this domain, make that
1509 * the wake_affine target instead of the current cpu. 1509 * the wake_affine target instead of the current cpu.
1510 */ 1510 */
1511 if (tmp->flags & SD_PREFER_SIBLING) 1511 if (tmp->flags & SD_SHARE_PKG_RESOURCES)
1512 target = select_idle_sibling(p, tmp, target); 1512 target = select_idle_sibling(p, tmp, target);
1513 1513
1514 if (target >= 0) { 1514 if (target >= 0) {
diff --git a/kernel/time/clockevents.c b/kernel/time/clockevents.c
index 6f740d9f0948..d7395fdfb9f3 100644
--- a/kernel/time/clockevents.c
+++ b/kernel/time/clockevents.c
@@ -259,7 +259,8 @@ void clockevents_notify(unsigned long reason, void *arg)
259 cpu = *((int *)arg); 259 cpu = *((int *)arg);
260 list_for_each_entry_safe(dev, tmp, &clockevent_devices, list) { 260 list_for_each_entry_safe(dev, tmp, &clockevent_devices, list) {
261 if (cpumask_test_cpu(cpu, dev->cpumask) && 261 if (cpumask_test_cpu(cpu, dev->cpumask) &&
262 cpumask_weight(dev->cpumask) == 1) { 262 cpumask_weight(dev->cpumask) == 1 &&
263 !tick_is_broadcast_device(dev)) {
263 BUG_ON(dev->mode != CLOCK_EVT_MODE_UNUSED); 264 BUG_ON(dev->mode != CLOCK_EVT_MODE_UNUSED);
264 list_del(&dev->list); 265 list_del(&dev->list);
265 } 266 }
diff --git a/kernel/time/clocksource.c b/kernel/time/clocksource.c
index e85c23404d34..13700833c181 100644
--- a/kernel/time/clocksource.c
+++ b/kernel/time/clocksource.c
@@ -343,7 +343,19 @@ static void clocksource_resume_watchdog(void)
343{ 343{
344 unsigned long flags; 344 unsigned long flags;
345 345
346 spin_lock_irqsave(&watchdog_lock, flags); 346 /*
347 * We use trylock here to avoid a potential dead lock when
348 * kgdb calls this code after the kernel has been stopped with
349 * watchdog_lock held. When watchdog_lock is held we just
350 * return and accept, that the watchdog might trigger and mark
351 * the monitored clock source (usually TSC) unstable.
352 *
353 * This does not affect the other caller clocksource_resume()
354 * because at this point the kernel is UP, interrupts are
355 * disabled and nothing can hold watchdog_lock.
356 */
357 if (!spin_trylock_irqsave(&watchdog_lock, flags))
358 return;
347 clocksource_reset_watchdog(); 359 clocksource_reset_watchdog();
348 spin_unlock_irqrestore(&watchdog_lock, flags); 360 spin_unlock_irqrestore(&watchdog_lock, flags);
349} 361}
@@ -458,8 +470,8 @@ void clocksource_resume(void)
458 * clocksource_touch_watchdog - Update watchdog 470 * clocksource_touch_watchdog - Update watchdog
459 * 471 *
460 * Update the watchdog after exception contexts such as kgdb so as not 472 * Update the watchdog after exception contexts such as kgdb so as not
461 * to incorrectly trip the watchdog. 473 * to incorrectly trip the watchdog. This might fail when the kernel
462 * 474 * was stopped in code which holds watchdog_lock.
463 */ 475 */
464void clocksource_touch_watchdog(void) 476void clocksource_touch_watchdog(void)
465{ 477{
diff --git a/kernel/timer.c b/kernel/timer.c
index 15533b792397..c61a7949387f 100644
--- a/kernel/timer.c
+++ b/kernel/timer.c
@@ -1198,6 +1198,7 @@ void update_process_times(int user_tick)
1198 run_local_timers(); 1198 run_local_timers();
1199 rcu_check_callbacks(cpu, user_tick); 1199 rcu_check_callbacks(cpu, user_tick);
1200 printk_tick(); 1200 printk_tick();
1201 perf_event_do_pending();
1201 scheduler_tick(); 1202 scheduler_tick();
1202 run_posix_cpu_timers(p); 1203 run_posix_cpu_timers(p);
1203} 1204}
@@ -1209,8 +1210,6 @@ static void run_timer_softirq(struct softirq_action *h)
1209{ 1210{
1210 struct tvec_base *base = __get_cpu_var(tvec_bases); 1211 struct tvec_base *base = __get_cpu_var(tvec_bases);
1211 1212
1212 perf_event_do_pending();
1213
1214 hrtimer_run_pending(); 1213 hrtimer_run_pending();
1215 1214
1216 if (time_after_eq(jiffies, base->timer_jiffies)) 1215 if (time_after_eq(jiffies, base->timer_jiffies))
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
index 6c22d8a2f289..60e2ce0181ee 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -27,9 +27,7 @@ config HAVE_FUNCTION_GRAPH_TRACER
27config HAVE_FUNCTION_GRAPH_FP_TEST 27config HAVE_FUNCTION_GRAPH_FP_TEST
28 bool 28 bool
29 help 29 help
30 An arch may pass in a unique value (frame pointer) to both the 30 See Documentation/trace/ftrace-design.txt
31 entering and exiting of a function. On exit, the value is compared
32 and if it does not match, then it will panic the kernel.
33 31
34config HAVE_FUNCTION_TRACE_MCOUNT_TEST 32config HAVE_FUNCTION_TRACE_MCOUNT_TEST
35 bool 33 bool
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
index edefe3b2801b..8c1b2d290718 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -464,6 +464,8 @@ struct ring_buffer_iter {
464 struct ring_buffer_per_cpu *cpu_buffer; 464 struct ring_buffer_per_cpu *cpu_buffer;
465 unsigned long head; 465 unsigned long head;
466 struct buffer_page *head_page; 466 struct buffer_page *head_page;
467 struct buffer_page *cache_reader_page;
468 unsigned long cache_read;
467 u64 read_stamp; 469 u64 read_stamp;
468}; 470};
469 471
@@ -2716,6 +2718,8 @@ static void rb_iter_reset(struct ring_buffer_iter *iter)
2716 iter->read_stamp = cpu_buffer->read_stamp; 2718 iter->read_stamp = cpu_buffer->read_stamp;
2717 else 2719 else
2718 iter->read_stamp = iter->head_page->page->time_stamp; 2720 iter->read_stamp = iter->head_page->page->time_stamp;
2721 iter->cache_reader_page = cpu_buffer->reader_page;
2722 iter->cache_read = cpu_buffer->read;
2719} 2723}
2720 2724
2721/** 2725/**
@@ -3060,13 +3064,22 @@ rb_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
3060 struct ring_buffer_event *event; 3064 struct ring_buffer_event *event;
3061 int nr_loops = 0; 3065 int nr_loops = 0;
3062 3066
3063 if (ring_buffer_iter_empty(iter))
3064 return NULL;
3065
3066 cpu_buffer = iter->cpu_buffer; 3067 cpu_buffer = iter->cpu_buffer;
3067 buffer = cpu_buffer->buffer; 3068 buffer = cpu_buffer->buffer;
3068 3069
3070 /*
3071 * Check if someone performed a consuming read to
3072 * the buffer. A consuming read invalidates the iterator
3073 * and we need to reset the iterator in this case.
3074 */
3075 if (unlikely(iter->cache_read != cpu_buffer->read ||
3076 iter->cache_reader_page != cpu_buffer->reader_page))
3077 rb_iter_reset(iter);
3078
3069 again: 3079 again:
3080 if (ring_buffer_iter_empty(iter))
3081 return NULL;
3082
3070 /* 3083 /*
3071 * We repeat when a timestamp is encountered. 3084 * We repeat when a timestamp is encountered.
3072 * We can get multiple timestamps by nested interrupts or also 3085 * We can get multiple timestamps by nested interrupts or also
@@ -3081,6 +3094,11 @@ rb_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
3081 if (rb_per_cpu_empty(cpu_buffer)) 3094 if (rb_per_cpu_empty(cpu_buffer))
3082 return NULL; 3095 return NULL;
3083 3096
3097 if (iter->head >= local_read(&iter->head_page->page->commit)) {
3098 rb_inc_iter(iter);
3099 goto again;
3100 }
3101
3084 event = rb_iter_head_event(iter); 3102 event = rb_iter_head_event(iter);
3085 3103
3086 switch (event->type_len) { 3104 switch (event->type_len) {
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 0df1b0f2cb9e..eac6875cb990 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -951,6 +951,11 @@ void trace_find_cmdline(int pid, char comm[])
951 return; 951 return;
952 } 952 }
953 953
954 if (WARN_ON_ONCE(pid < 0)) {
955 strcpy(comm, "<XXX>");
956 return;
957 }
958
954 if (pid > PID_MAX_DEFAULT) { 959 if (pid > PID_MAX_DEFAULT) {
955 strcpy(comm, "<...>"); 960 strcpy(comm, "<...>");
956 return; 961 return;
diff --git a/lib/dma-debug.c b/lib/dma-debug.c
index 7d2f0b33e5a8..ba8b67039d13 100644
--- a/lib/dma-debug.c
+++ b/lib/dma-debug.c
@@ -587,7 +587,7 @@ out_unlock:
587 return count; 587 return count;
588} 588}
589 589
590const struct file_operations filter_fops = { 590static const struct file_operations filter_fops = {
591 .read = filter_read, 591 .read = filter_read,
592 .write = filter_write, 592 .write = filter_write,
593}; 593};
diff --git a/mm/filemap.c b/mm/filemap.c
index 96ac6b0eb6cb..e3736923220e 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -1634,14 +1634,15 @@ EXPORT_SYMBOL(generic_file_readonly_mmap);
1634static struct page *__read_cache_page(struct address_space *mapping, 1634static struct page *__read_cache_page(struct address_space *mapping,
1635 pgoff_t index, 1635 pgoff_t index,
1636 int (*filler)(void *,struct page*), 1636 int (*filler)(void *,struct page*),
1637 void *data) 1637 void *data,
1638 gfp_t gfp)
1638{ 1639{
1639 struct page *page; 1640 struct page *page;
1640 int err; 1641 int err;
1641repeat: 1642repeat:
1642 page = find_get_page(mapping, index); 1643 page = find_get_page(mapping, index);
1643 if (!page) { 1644 if (!page) {
1644 page = page_cache_alloc_cold(mapping); 1645 page = __page_cache_alloc(gfp | __GFP_COLD);
1645 if (!page) 1646 if (!page)
1646 return ERR_PTR(-ENOMEM); 1647 return ERR_PTR(-ENOMEM);
1647 err = add_to_page_cache_lru(page, mapping, index, GFP_KERNEL); 1648 err = add_to_page_cache_lru(page, mapping, index, GFP_KERNEL);
@@ -1661,31 +1662,18 @@ repeat:
1661 return page; 1662 return page;
1662} 1663}
1663 1664
1664/** 1665static struct page *do_read_cache_page(struct address_space *mapping,
1665 * read_cache_page_async - read into page cache, fill it if needed
1666 * @mapping: the page's address_space
1667 * @index: the page index
1668 * @filler: function to perform the read
1669 * @data: destination for read data
1670 *
1671 * Same as read_cache_page, but don't wait for page to become unlocked
1672 * after submitting it to the filler.
1673 *
1674 * Read into the page cache. If a page already exists, and PageUptodate() is
1675 * not set, try to fill the page but don't wait for it to become unlocked.
1676 *
1677 * If the page does not get brought uptodate, return -EIO.
1678 */
1679struct page *read_cache_page_async(struct address_space *mapping,
1680 pgoff_t index, 1666 pgoff_t index,
1681 int (*filler)(void *,struct page*), 1667 int (*filler)(void *,struct page*),
1682 void *data) 1668 void *data,
1669 gfp_t gfp)
1670
1683{ 1671{
1684 struct page *page; 1672 struct page *page;
1685 int err; 1673 int err;
1686 1674
1687retry: 1675retry:
1688 page = __read_cache_page(mapping, index, filler, data); 1676 page = __read_cache_page(mapping, index, filler, data, gfp);
1689 if (IS_ERR(page)) 1677 if (IS_ERR(page))
1690 return page; 1678 return page;
1691 if (PageUptodate(page)) 1679 if (PageUptodate(page))
@@ -1710,8 +1698,67 @@ out:
1710 mark_page_accessed(page); 1698 mark_page_accessed(page);
1711 return page; 1699 return page;
1712} 1700}
1701
1702/**
1703 * read_cache_page_async - read into page cache, fill it if needed
1704 * @mapping: the page's address_space
1705 * @index: the page index
1706 * @filler: function to perform the read
1707 * @data: destination for read data
1708 *
1709 * Same as read_cache_page, but don't wait for page to become unlocked
1710 * after submitting it to the filler.
1711 *
1712 * Read into the page cache. If a page already exists, and PageUptodate() is
1713 * not set, try to fill the page but don't wait for it to become unlocked.
1714 *
1715 * If the page does not get brought uptodate, return -EIO.
1716 */
1717struct page *read_cache_page_async(struct address_space *mapping,
1718 pgoff_t index,
1719 int (*filler)(void *,struct page*),
1720 void *data)
1721{
1722 return do_read_cache_page(mapping, index, filler, data, mapping_gfp_mask(mapping));
1723}
1713EXPORT_SYMBOL(read_cache_page_async); 1724EXPORT_SYMBOL(read_cache_page_async);
1714 1725
1726static struct page *wait_on_page_read(struct page *page)
1727{
1728 if (!IS_ERR(page)) {
1729 wait_on_page_locked(page);
1730 if (!PageUptodate(page)) {
1731 page_cache_release(page);
1732 page = ERR_PTR(-EIO);
1733 }
1734 }
1735 return page;
1736}
1737
1738/**
1739 * read_cache_page_gfp - read into page cache, using specified page allocation flags.
1740 * @mapping: the page's address_space
1741 * @index: the page index
1742 * @gfp: the page allocator flags to use if allocating
1743 *
1744 * This is the same as "read_mapping_page(mapping, index, NULL)", but with
1745 * any new page allocations done using the specified allocation flags. Note
1746 * that the Radix tree operations will still use GFP_KERNEL, so you can't
1747 * expect to do this atomically or anything like that - but you can pass in
1748 * other page requirements.
1749 *
1750 * If the page does not get brought uptodate, return -EIO.
1751 */
1752struct page *read_cache_page_gfp(struct address_space *mapping,
1753 pgoff_t index,
1754 gfp_t gfp)
1755{
1756 filler_t *filler = (filler_t *)mapping->a_ops->readpage;
1757
1758 return wait_on_page_read(do_read_cache_page(mapping, index, filler, NULL, gfp));
1759}
1760EXPORT_SYMBOL(read_cache_page_gfp);
1761
1715/** 1762/**
1716 * read_cache_page - read into page cache, fill it if needed 1763 * read_cache_page - read into page cache, fill it if needed
1717 * @mapping: the page's address_space 1764 * @mapping: the page's address_space
@@ -1729,18 +1776,7 @@ struct page *read_cache_page(struct address_space *mapping,
1729 int (*filler)(void *,struct page*), 1776 int (*filler)(void *,struct page*),
1730 void *data) 1777 void *data)
1731{ 1778{
1732 struct page *page; 1779 return wait_on_page_read(read_cache_page_async(mapping, index, filler, data));
1733
1734 page = read_cache_page_async(mapping, index, filler, data);
1735 if (IS_ERR(page))
1736 goto out;
1737 wait_on_page_locked(page);
1738 if (!PageUptodate(page)) {
1739 page_cache_release(page);
1740 page = ERR_PTR(-EIO);
1741 }
1742 out:
1743 return page;
1744} 1780}
1745EXPORT_SYMBOL(read_cache_page); 1781EXPORT_SYMBOL(read_cache_page);
1746 1782
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index d2a8889b4c58..8deb9d0fd5b1 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -556,8 +556,9 @@ static void free_pcppages_bulk(struct zone *zone, int count,
556 page = list_entry(list->prev, struct page, lru); 556 page = list_entry(list->prev, struct page, lru);
557 /* must delete as __free_one_page list manipulates */ 557 /* must delete as __free_one_page list manipulates */
558 list_del(&page->lru); 558 list_del(&page->lru);
559 __free_one_page(page, zone, 0, migratetype); 559 /* MIGRATE_MOVABLE list may include MIGRATE_RESERVEs */
560 trace_mm_page_pcpu_drain(page, 0, migratetype); 560 __free_one_page(page, zone, 0, page_private(page));
561 trace_mm_page_pcpu_drain(page, 0, page_private(page));
561 } while (--count && --batch_free && !list_empty(list)); 562 } while (--count && --batch_free && !list_empty(list));
562 } 563 }
563 spin_unlock(&zone->lock); 564 spin_unlock(&zone->lock);
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index 37e69295f250..d55d905463eb 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -555,10 +555,8 @@ static void __purge_vmap_area_lazy(unsigned long *start, unsigned long *end,
555 } 555 }
556 rcu_read_unlock(); 556 rcu_read_unlock();
557 557
558 if (nr) { 558 if (nr)
559 BUG_ON(nr > atomic_read(&vmap_lazy_nr));
560 atomic_sub(nr, &vmap_lazy_nr); 559 atomic_sub(nr, &vmap_lazy_nr);
561 }
562 560
563 if (nr || force_flush) 561 if (nr || force_flush)
564 flush_tlb_kernel_range(*start, *end); 562 flush_tlb_kernel_range(*start, *end);
diff --git a/net/8021q/vlan_dev.c b/net/8021q/vlan_dev.c
index b7889782047e..c1b92cab46c7 100644
--- a/net/8021q/vlan_dev.c
+++ b/net/8021q/vlan_dev.c
@@ -163,7 +163,7 @@ int vlan_skb_recv(struct sk_buff *skb, struct net_device *dev,
163 goto err_unlock; 163 goto err_unlock;
164 } 164 }
165 165
166 rx_stats = per_cpu_ptr(vlan_dev_info(dev)->vlan_rx_stats, 166 rx_stats = per_cpu_ptr(vlan_dev_info(skb->dev)->vlan_rx_stats,
167 smp_processor_id()); 167 smp_processor_id());
168 rx_stats->rx_packets++; 168 rx_stats->rx_packets++;
169 rx_stats->rx_bytes += skb->len; 169 rx_stats->rx_bytes += skb->len;
diff --git a/net/appletalk/aarp.c b/net/appletalk/aarp.c
index 9d4adfd22757..f2b3b56aa779 100644
--- a/net/appletalk/aarp.c
+++ b/net/appletalk/aarp.c
@@ -819,7 +819,7 @@ static int aarp_rcv(struct sk_buff *skb, struct net_device *dev,
819 ma = &ifa->address; 819 ma = &ifa->address;
820 else { /* We need to make a copy of the entry. */ 820 else { /* We need to make a copy of the entry. */
821 da.s_node = sa.s_node; 821 da.s_node = sa.s_node;
822 da.s_net = da.s_net; 822 da.s_net = sa.s_net;
823 ma = &da; 823 ma = &da;
824 } 824 }
825 825
diff --git a/net/ax25/ax25_out.c b/net/ax25/ax25_out.c
index bf706f83a5c9..14912600ec57 100644
--- a/net/ax25/ax25_out.c
+++ b/net/ax25/ax25_out.c
@@ -92,6 +92,12 @@ ax25_cb *ax25_send_frame(struct sk_buff *skb, int paclen, ax25_address *src, ax2
92#endif 92#endif
93 } 93 }
94 94
95 /*
96 * There is one ref for the state machine; a caller needs
97 * one more to put it back, just like with the existing one.
98 */
99 ax25_cb_hold(ax25);
100
95 ax25_cb_add(ax25); 101 ax25_cb_add(ax25);
96 102
97 ax25->state = AX25_STATE_1; 103 ax25->state = AX25_STATE_1;
diff --git a/net/dccp/ccid.c b/net/dccp/ccid.c
index f3e9ba1cfd01..57dfb9c8c4f2 100644
--- a/net/dccp/ccid.c
+++ b/net/dccp/ccid.c
@@ -77,34 +77,24 @@ int ccid_getsockopt_builtin_ccids(struct sock *sk, int len,
77 return err; 77 return err;
78} 78}
79 79
80static struct kmem_cache *ccid_kmem_cache_create(int obj_size, const char *fmt,...) 80static struct kmem_cache *ccid_kmem_cache_create(int obj_size, char *slab_name_fmt, const char *fmt,...)
81{ 81{
82 struct kmem_cache *slab; 82 struct kmem_cache *slab;
83 char slab_name_fmt[32], *slab_name;
84 va_list args; 83 va_list args;
85 84
86 va_start(args, fmt); 85 va_start(args, fmt);
87 vsnprintf(slab_name_fmt, sizeof(slab_name_fmt), fmt, args); 86 vsnprintf(slab_name_fmt, sizeof(slab_name_fmt), fmt, args);
88 va_end(args); 87 va_end(args);
89 88
90 slab_name = kstrdup(slab_name_fmt, GFP_KERNEL); 89 slab = kmem_cache_create(slab_name_fmt, sizeof(struct ccid) + obj_size, 0,
91 if (slab_name == NULL)
92 return NULL;
93 slab = kmem_cache_create(slab_name, sizeof(struct ccid) + obj_size, 0,
94 SLAB_HWCACHE_ALIGN, NULL); 90 SLAB_HWCACHE_ALIGN, NULL);
95 if (slab == NULL)
96 kfree(slab_name);
97 return slab; 91 return slab;
98} 92}
99 93
100static void ccid_kmem_cache_destroy(struct kmem_cache *slab) 94static void ccid_kmem_cache_destroy(struct kmem_cache *slab)
101{ 95{
102 if (slab != NULL) { 96 if (slab != NULL)
103 const char *name = kmem_cache_name(slab);
104
105 kmem_cache_destroy(slab); 97 kmem_cache_destroy(slab);
106 kfree(name);
107 }
108} 98}
109 99
110static int ccid_activate(struct ccid_operations *ccid_ops) 100static int ccid_activate(struct ccid_operations *ccid_ops)
@@ -113,6 +103,7 @@ static int ccid_activate(struct ccid_operations *ccid_ops)
113 103
114 ccid_ops->ccid_hc_rx_slab = 104 ccid_ops->ccid_hc_rx_slab =
115 ccid_kmem_cache_create(ccid_ops->ccid_hc_rx_obj_size, 105 ccid_kmem_cache_create(ccid_ops->ccid_hc_rx_obj_size,
106 ccid_ops->ccid_hc_rx_slab_name,
116 "ccid%u_hc_rx_sock", 107 "ccid%u_hc_rx_sock",
117 ccid_ops->ccid_id); 108 ccid_ops->ccid_id);
118 if (ccid_ops->ccid_hc_rx_slab == NULL) 109 if (ccid_ops->ccid_hc_rx_slab == NULL)
@@ -120,6 +111,7 @@ static int ccid_activate(struct ccid_operations *ccid_ops)
120 111
121 ccid_ops->ccid_hc_tx_slab = 112 ccid_ops->ccid_hc_tx_slab =
122 ccid_kmem_cache_create(ccid_ops->ccid_hc_tx_obj_size, 113 ccid_kmem_cache_create(ccid_ops->ccid_hc_tx_obj_size,
114 ccid_ops->ccid_hc_tx_slab_name,
123 "ccid%u_hc_tx_sock", 115 "ccid%u_hc_tx_sock",
124 ccid_ops->ccid_id); 116 ccid_ops->ccid_id);
125 if (ccid_ops->ccid_hc_tx_slab == NULL) 117 if (ccid_ops->ccid_hc_tx_slab == NULL)
diff --git a/net/dccp/ccid.h b/net/dccp/ccid.h
index facedd20b531..269958bf7fe9 100644
--- a/net/dccp/ccid.h
+++ b/net/dccp/ccid.h
@@ -49,6 +49,8 @@ struct ccid_operations {
49 const char *ccid_name; 49 const char *ccid_name;
50 struct kmem_cache *ccid_hc_rx_slab, 50 struct kmem_cache *ccid_hc_rx_slab,
51 *ccid_hc_tx_slab; 51 *ccid_hc_tx_slab;
52 char ccid_hc_rx_slab_name[32];
53 char ccid_hc_tx_slab_name[32];
52 __u32 ccid_hc_rx_obj_size, 54 __u32 ccid_hc_rx_obj_size,
53 ccid_hc_tx_obj_size; 55 ccid_hc_tx_obj_size;
54 /* Interface Routines */ 56 /* Interface Routines */
diff --git a/net/dccp/probe.c b/net/dccp/probe.c
index a1362dc8abb0..bace1d8cbcfd 100644
--- a/net/dccp/probe.c
+++ b/net/dccp/probe.c
@@ -161,7 +161,8 @@ static __init int dccpprobe_init(void)
161 if (!proc_net_fops_create(&init_net, procname, S_IRUSR, &dccpprobe_fops)) 161 if (!proc_net_fops_create(&init_net, procname, S_IRUSR, &dccpprobe_fops))
162 goto err0; 162 goto err0;
163 163
164 ret = register_jprobe(&dccp_send_probe); 164 ret = try_then_request_module((register_jprobe(&dccp_send_probe) == 0),
165 "dccp");
165 if (ret) 166 if (ret)
166 goto err1; 167 goto err1;
167 168
diff --git a/net/ipv4/inet_diag.c b/net/ipv4/inet_diag.c
index bdb78dd180ce..1aaa8110d84b 100644
--- a/net/ipv4/inet_diag.c
+++ b/net/ipv4/inet_diag.c
@@ -368,7 +368,7 @@ static int inet_diag_bc_run(const void *bc, int len,
368 yes = entry->sport >= op[1].no; 368 yes = entry->sport >= op[1].no;
369 break; 369 break;
370 case INET_DIAG_BC_S_LE: 370 case INET_DIAG_BC_S_LE:
371 yes = entry->dport <= op[1].no; 371 yes = entry->sport <= op[1].no;
372 break; 372 break;
373 case INET_DIAG_BC_D_GE: 373 case INET_DIAG_BC_D_GE:
374 yes = entry->dport >= op[1].no; 374 yes = entry->dport >= op[1].no;
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
index e446496f564f..d62b05d33384 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -586,7 +586,9 @@ static void __net_exit ip_rt_do_proc_exit(struct net *net)
586{ 586{
587 remove_proc_entry("rt_cache", net->proc_net_stat); 587 remove_proc_entry("rt_cache", net->proc_net_stat);
588 remove_proc_entry("rt_cache", net->proc_net); 588 remove_proc_entry("rt_cache", net->proc_net);
589#ifdef CONFIG_NET_CLS_ROUTE
589 remove_proc_entry("rt_acct", net->proc_net); 590 remove_proc_entry("rt_acct", net->proc_net);
591#endif
590} 592}
591 593
592static struct pernet_operations ip_rt_proc_ops __net_initdata = { 594static struct pernet_operations ip_rt_proc_ops __net_initdata = {
diff --git a/net/ipv4/tcp_probe.c b/net/ipv4/tcp_probe.c
index bb110c5ce1d2..9bc805df95d2 100644
--- a/net/ipv4/tcp_probe.c
+++ b/net/ipv4/tcp_probe.c
@@ -39,9 +39,9 @@ static int port __read_mostly = 0;
39MODULE_PARM_DESC(port, "Port to match (0=all)"); 39MODULE_PARM_DESC(port, "Port to match (0=all)");
40module_param(port, int, 0); 40module_param(port, int, 0);
41 41
42static int bufsize __read_mostly = 4096; 42static unsigned int bufsize __read_mostly = 4096;
43MODULE_PARM_DESC(bufsize, "Log buffer size in packets (4096)"); 43MODULE_PARM_DESC(bufsize, "Log buffer size in packets (4096)");
44module_param(bufsize, int, 0); 44module_param(bufsize, uint, 0);
45 45
46static int full __read_mostly; 46static int full __read_mostly;
47MODULE_PARM_DESC(full, "Full log (1=every ack packet received, 0=only cwnd changes)"); 47MODULE_PARM_DESC(full, "Full log (1=every ack packet received, 0=only cwnd changes)");
@@ -75,12 +75,12 @@ static struct {
75 75
76static inline int tcp_probe_used(void) 76static inline int tcp_probe_used(void)
77{ 77{
78 return (tcp_probe.head - tcp_probe.tail) % bufsize; 78 return (tcp_probe.head - tcp_probe.tail) & (bufsize - 1);
79} 79}
80 80
81static inline int tcp_probe_avail(void) 81static inline int tcp_probe_avail(void)
82{ 82{
83 return bufsize - tcp_probe_used(); 83 return bufsize - tcp_probe_used() - 1;
84} 84}
85 85
86/* 86/*
@@ -116,7 +116,7 @@ static int jtcp_rcv_established(struct sock *sk, struct sk_buff *skb,
116 p->ssthresh = tcp_current_ssthresh(sk); 116 p->ssthresh = tcp_current_ssthresh(sk);
117 p->srtt = tp->srtt >> 3; 117 p->srtt = tp->srtt >> 3;
118 118
119 tcp_probe.head = (tcp_probe.head + 1) % bufsize; 119 tcp_probe.head = (tcp_probe.head + 1) & (bufsize - 1);
120 } 120 }
121 tcp_probe.lastcwnd = tp->snd_cwnd; 121 tcp_probe.lastcwnd = tp->snd_cwnd;
122 spin_unlock(&tcp_probe.lock); 122 spin_unlock(&tcp_probe.lock);
@@ -149,7 +149,7 @@ static int tcpprobe_open(struct inode * inode, struct file * file)
149static int tcpprobe_sprint(char *tbuf, int n) 149static int tcpprobe_sprint(char *tbuf, int n)
150{ 150{
151 const struct tcp_log *p 151 const struct tcp_log *p
152 = tcp_probe.log + tcp_probe.tail % bufsize; 152 = tcp_probe.log + tcp_probe.tail;
153 struct timespec tv 153 struct timespec tv
154 = ktime_to_timespec(ktime_sub(p->tstamp, tcp_probe.start)); 154 = ktime_to_timespec(ktime_sub(p->tstamp, tcp_probe.start));
155 155
@@ -192,7 +192,7 @@ static ssize_t tcpprobe_read(struct file *file, char __user *buf,
192 width = tcpprobe_sprint(tbuf, sizeof(tbuf)); 192 width = tcpprobe_sprint(tbuf, sizeof(tbuf));
193 193
194 if (cnt + width < len) 194 if (cnt + width < len)
195 tcp_probe.tail = (tcp_probe.tail + 1) % bufsize; 195 tcp_probe.tail = (tcp_probe.tail + 1) & (bufsize - 1);
196 196
197 spin_unlock_bh(&tcp_probe.lock); 197 spin_unlock_bh(&tcp_probe.lock);
198 198
@@ -222,9 +222,10 @@ static __init int tcpprobe_init(void)
222 init_waitqueue_head(&tcp_probe.wait); 222 init_waitqueue_head(&tcp_probe.wait);
223 spin_lock_init(&tcp_probe.lock); 223 spin_lock_init(&tcp_probe.lock);
224 224
225 if (bufsize < 0) 225 if (bufsize == 0)
226 return -EINVAL; 226 return -EINVAL;
227 227
228 bufsize = roundup_pow_of_two(bufsize);
228 tcp_probe.log = kcalloc(bufsize, sizeof(struct tcp_log), GFP_KERNEL); 229 tcp_probe.log = kcalloc(bufsize, sizeof(struct tcp_log), GFP_KERNEL);
229 if (!tcp_probe.log) 230 if (!tcp_probe.log)
230 goto err0; 231 goto err0;
@@ -236,7 +237,7 @@ static __init int tcpprobe_init(void)
236 if (ret) 237 if (ret)
237 goto err1; 238 goto err1;
238 239
239 pr_info("TCP probe registered (port=%d)\n", port); 240 pr_info("TCP probe registered (port=%d) bufsize=%u\n", port, bufsize);
240 return 0; 241 return 0;
241 err1: 242 err1:
242 proc_net_remove(&init_net, procname); 243 proc_net_remove(&init_net, procname);
diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c
index 8c08a28d8f83..67107d63c1cd 100644
--- a/net/ipv4/xfrm4_policy.c
+++ b/net/ipv4/xfrm4_policy.c
@@ -15,7 +15,6 @@
15#include <net/xfrm.h> 15#include <net/xfrm.h>
16#include <net/ip.h> 16#include <net/ip.h>
17 17
18static struct dst_ops xfrm4_dst_ops;
19static struct xfrm_policy_afinfo xfrm4_policy_afinfo; 18static struct xfrm_policy_afinfo xfrm4_policy_afinfo;
20 19
21static struct dst_entry *xfrm4_dst_lookup(struct net *net, int tos, 20static struct dst_entry *xfrm4_dst_lookup(struct net *net, int tos,
@@ -190,8 +189,10 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
190 189
191static inline int xfrm4_garbage_collect(struct dst_ops *ops) 190static inline int xfrm4_garbage_collect(struct dst_ops *ops)
192{ 191{
193 xfrm4_policy_afinfo.garbage_collect(&init_net); 192 struct net *net = container_of(ops, struct net, xfrm.xfrm4_dst_ops);
194 return (atomic_read(&xfrm4_dst_ops.entries) > xfrm4_dst_ops.gc_thresh*2); 193
194 xfrm4_policy_afinfo.garbage_collect(net);
195 return (atomic_read(&ops->entries) > ops->gc_thresh * 2);
195} 196}
196 197
197static void xfrm4_update_pmtu(struct dst_entry *dst, u32 mtu) 198static void xfrm4_update_pmtu(struct dst_entry *dst, u32 mtu)
@@ -268,7 +269,7 @@ static struct xfrm_policy_afinfo xfrm4_policy_afinfo = {
268static struct ctl_table xfrm4_policy_table[] = { 269static struct ctl_table xfrm4_policy_table[] = {
269 { 270 {
270 .procname = "xfrm4_gc_thresh", 271 .procname = "xfrm4_gc_thresh",
271 .data = &xfrm4_dst_ops.gc_thresh, 272 .data = &init_net.xfrm.xfrm4_dst_ops.gc_thresh,
272 .maxlen = sizeof(int), 273 .maxlen = sizeof(int),
273 .mode = 0644, 274 .mode = 0644,
274 .proc_handler = proc_dointvec, 275 .proc_handler = proc_dointvec,
@@ -295,8 +296,6 @@ static void __exit xfrm4_policy_fini(void)
295 296
296void __init xfrm4_init(int rt_max_size) 297void __init xfrm4_init(int rt_max_size)
297{ 298{
298 xfrm4_state_init();
299 xfrm4_policy_init();
300 /* 299 /*
301 * Select a default value for the gc_thresh based on the main route 300 * Select a default value for the gc_thresh based on the main route
302 * table hash size. It seems to me the worst case scenario is when 301 * table hash size. It seems to me the worst case scenario is when
@@ -308,6 +307,9 @@ void __init xfrm4_init(int rt_max_size)
308 * and start cleaning when were 1/2 full 307 * and start cleaning when were 1/2 full
309 */ 308 */
310 xfrm4_dst_ops.gc_thresh = rt_max_size/2; 309 xfrm4_dst_ops.gc_thresh = rt_max_size/2;
310
311 xfrm4_state_init();
312 xfrm4_policy_init();
311#ifdef CONFIG_SYSCTL 313#ifdef CONFIG_SYSCTL
312 sysctl_hdr = register_net_sysctl_table(&init_net, net_ipv4_ctl_path, 314 sysctl_hdr = register_net_sysctl_table(&init_net, net_ipv4_ctl_path,
313 xfrm4_policy_table); 315 xfrm4_policy_table);
diff --git a/net/ipv6/xfrm6_policy.c b/net/ipv6/xfrm6_policy.c
index 7254e3f899a7..dbdc696f5fc5 100644
--- a/net/ipv6/xfrm6_policy.c
+++ b/net/ipv6/xfrm6_policy.c
@@ -24,7 +24,6 @@
24#include <net/mip6.h> 24#include <net/mip6.h>
25#endif 25#endif
26 26
27static struct dst_ops xfrm6_dst_ops;
28static struct xfrm_policy_afinfo xfrm6_policy_afinfo; 27static struct xfrm_policy_afinfo xfrm6_policy_afinfo;
29 28
30static struct dst_entry *xfrm6_dst_lookup(struct net *net, int tos, 29static struct dst_entry *xfrm6_dst_lookup(struct net *net, int tos,
@@ -224,8 +223,10 @@ _decode_session6(struct sk_buff *skb, struct flowi *fl, int reverse)
224 223
225static inline int xfrm6_garbage_collect(struct dst_ops *ops) 224static inline int xfrm6_garbage_collect(struct dst_ops *ops)
226{ 225{
227 xfrm6_policy_afinfo.garbage_collect(&init_net); 226 struct net *net = container_of(ops, struct net, xfrm.xfrm6_dst_ops);
228 return (atomic_read(&xfrm6_dst_ops.entries) > xfrm6_dst_ops.gc_thresh*2); 227
228 xfrm6_policy_afinfo.garbage_collect(net);
229 return (atomic_read(&ops->entries) > ops->gc_thresh * 2);
229} 230}
230 231
231static void xfrm6_update_pmtu(struct dst_entry *dst, u32 mtu) 232static void xfrm6_update_pmtu(struct dst_entry *dst, u32 mtu)
@@ -310,7 +311,7 @@ static void xfrm6_policy_fini(void)
310static struct ctl_table xfrm6_policy_table[] = { 311static struct ctl_table xfrm6_policy_table[] = {
311 { 312 {
312 .procname = "xfrm6_gc_thresh", 313 .procname = "xfrm6_gc_thresh",
313 .data = &xfrm6_dst_ops.gc_thresh, 314 .data = &init_net.xfrm.xfrm6_dst_ops.gc_thresh,
314 .maxlen = sizeof(int), 315 .maxlen = sizeof(int),
315 .mode = 0644, 316 .mode = 0644,
316 .proc_handler = proc_dointvec, 317 .proc_handler = proc_dointvec,
@@ -326,13 +327,6 @@ int __init xfrm6_init(void)
326 int ret; 327 int ret;
327 unsigned int gc_thresh; 328 unsigned int gc_thresh;
328 329
329 ret = xfrm6_policy_init();
330 if (ret)
331 goto out;
332
333 ret = xfrm6_state_init();
334 if (ret)
335 goto out_policy;
336 /* 330 /*
337 * We need a good default value for the xfrm6 gc threshold. 331 * We need a good default value for the xfrm6 gc threshold.
338 * In ipv4 we set it to the route hash table size * 8, which 332 * In ipv4 we set it to the route hash table size * 8, which
@@ -346,6 +340,15 @@ int __init xfrm6_init(void)
346 */ 340 */
347 gc_thresh = FIB6_TABLE_HASHSZ * 8; 341 gc_thresh = FIB6_TABLE_HASHSZ * 8;
348 xfrm6_dst_ops.gc_thresh = (gc_thresh < 1024) ? 1024 : gc_thresh; 342 xfrm6_dst_ops.gc_thresh = (gc_thresh < 1024) ? 1024 : gc_thresh;
343
344 ret = xfrm6_policy_init();
345 if (ret)
346 goto out;
347
348 ret = xfrm6_state_init();
349 if (ret)
350 goto out_policy;
351
349#ifdef CONFIG_SYSCTL 352#ifdef CONFIG_SYSCTL
350 sysctl_hdr = register_net_sysctl_table(&init_net, net_ipv6_ctl_path, 353 sysctl_hdr = register_net_sysctl_table(&init_net, net_ipv6_ctl_path,
351 xfrm6_policy_table); 354 xfrm6_policy_table);
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
index 6dc3579c0ac5..9ae1a4760b58 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -1331,6 +1331,9 @@ static int ieee80211_set_power_mgmt(struct wiphy *wiphy, struct net_device *dev,
1331 struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr); 1331 struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr);
1332 struct ieee80211_conf *conf = &local->hw.conf; 1332 struct ieee80211_conf *conf = &local->hw.conf;
1333 1333
1334 if (sdata->vif.type != NL80211_IFTYPE_STATION)
1335 return -EOPNOTSUPP;
1336
1334 if (!(local->hw.flags & IEEE80211_HW_SUPPORTS_PS)) 1337 if (!(local->hw.flags & IEEE80211_HW_SUPPORTS_PS))
1335 return -EOPNOTSUPP; 1338 return -EOPNOTSUPP;
1336 1339
diff --git a/net/mac80211/rc80211_pid_algo.c b/net/mac80211/rc80211_pid_algo.c
index 699d3ed869c4..29bc4c516238 100644
--- a/net/mac80211/rc80211_pid_algo.c
+++ b/net/mac80211/rc80211_pid_algo.c
@@ -190,7 +190,7 @@ static void rate_control_pid_sample(struct rc_pid_info *pinfo,
190 rate_control_pid_normalize(pinfo, sband->n_bitrates); 190 rate_control_pid_normalize(pinfo, sband->n_bitrates);
191 191
192 /* Compute the proportional, integral and derivative errors. */ 192 /* Compute the proportional, integral and derivative errors. */
193 err_prop = (pinfo->target << RC_PID_ARITH_SHIFT) - pf; 193 err_prop = (pinfo->target - pf) << RC_PID_ARITH_SHIFT;
194 194
195 err_avg = spinfo->err_avg_sc >> pinfo->smoothing_shift; 195 err_avg = spinfo->err_avg_sc >> pinfo->smoothing_shift;
196 spinfo->err_avg_sc = spinfo->err_avg_sc - err_avg + err_prop; 196 spinfo->err_avg_sc = spinfo->err_avg_sc - err_avg + err_prop;
diff --git a/net/netrom/nr_route.c b/net/netrom/nr_route.c
index aacba76070fc..e2e2d33cafdf 100644
--- a/net/netrom/nr_route.c
+++ b/net/netrom/nr_route.c
@@ -843,12 +843,13 @@ int nr_route_frame(struct sk_buff *skb, ax25_cb *ax25)
843 dptr = skb_push(skb, 1); 843 dptr = skb_push(skb, 1);
844 *dptr = AX25_P_NETROM; 844 *dptr = AX25_P_NETROM;
845 845
846 ax25s = ax25_send_frame(skb, 256, (ax25_address *)dev->dev_addr, &nr_neigh->callsign, nr_neigh->digipeat, nr_neigh->dev); 846 ax25s = nr_neigh->ax25;
847 if (nr_neigh->ax25 && ax25s) { 847 nr_neigh->ax25 = ax25_send_frame(skb, 256,
848 /* We were already holding this ax25_cb */ 848 (ax25_address *)dev->dev_addr,
849 &nr_neigh->callsign,
850 nr_neigh->digipeat, nr_neigh->dev);
851 if (ax25s)
849 ax25_cb_put(ax25s); 852 ax25_cb_put(ax25s);
850 }
851 nr_neigh->ax25 = ax25s;
852 853
853 dev_put(dev); 854 dev_put(dev);
854 ret = (nr_neigh->ax25 != NULL); 855 ret = (nr_neigh->ax25 != NULL);
diff --git a/net/rose/rose_link.c b/net/rose/rose_link.c
index bd86a63960ce..5ef5f6988a2e 100644
--- a/net/rose/rose_link.c
+++ b/net/rose/rose_link.c
@@ -101,13 +101,17 @@ static void rose_t0timer_expiry(unsigned long param)
101static int rose_send_frame(struct sk_buff *skb, struct rose_neigh *neigh) 101static int rose_send_frame(struct sk_buff *skb, struct rose_neigh *neigh)
102{ 102{
103 ax25_address *rose_call; 103 ax25_address *rose_call;
104 ax25_cb *ax25s;
104 105
105 if (ax25cmp(&rose_callsign, &null_ax25_address) == 0) 106 if (ax25cmp(&rose_callsign, &null_ax25_address) == 0)
106 rose_call = (ax25_address *)neigh->dev->dev_addr; 107 rose_call = (ax25_address *)neigh->dev->dev_addr;
107 else 108 else
108 rose_call = &rose_callsign; 109 rose_call = &rose_callsign;
109 110
111 ax25s = neigh->ax25;
110 neigh->ax25 = ax25_send_frame(skb, 260, rose_call, &neigh->callsign, neigh->digipeat, neigh->dev); 112 neigh->ax25 = ax25_send_frame(skb, 260, rose_call, &neigh->callsign, neigh->digipeat, neigh->dev);
113 if (ax25s)
114 ax25_cb_put(ax25s);
111 115
112 return (neigh->ax25 != NULL); 116 return (neigh->ax25 != NULL);
113} 117}
@@ -120,13 +124,17 @@ static int rose_send_frame(struct sk_buff *skb, struct rose_neigh *neigh)
120static int rose_link_up(struct rose_neigh *neigh) 124static int rose_link_up(struct rose_neigh *neigh)
121{ 125{
122 ax25_address *rose_call; 126 ax25_address *rose_call;
127 ax25_cb *ax25s;
123 128
124 if (ax25cmp(&rose_callsign, &null_ax25_address) == 0) 129 if (ax25cmp(&rose_callsign, &null_ax25_address) == 0)
125 rose_call = (ax25_address *)neigh->dev->dev_addr; 130 rose_call = (ax25_address *)neigh->dev->dev_addr;
126 else 131 else
127 rose_call = &rose_callsign; 132 rose_call = &rose_callsign;
128 133
134 ax25s = neigh->ax25;
129 neigh->ax25 = ax25_find_cb(rose_call, &neigh->callsign, neigh->digipeat, neigh->dev); 135 neigh->ax25 = ax25_find_cb(rose_call, &neigh->callsign, neigh->digipeat, neigh->dev);
136 if (ax25s)
137 ax25_cb_put(ax25s);
130 138
131 return (neigh->ax25 != NULL); 139 return (neigh->ax25 != NULL);
132} 140}
diff --git a/net/rose/rose_route.c b/net/rose/rose_route.c
index 795c4b025e31..70a0b3b4b4d2 100644
--- a/net/rose/rose_route.c
+++ b/net/rose/rose_route.c
@@ -235,6 +235,8 @@ static void rose_remove_neigh(struct rose_neigh *rose_neigh)
235 235
236 if ((s = rose_neigh_list) == rose_neigh) { 236 if ((s = rose_neigh_list) == rose_neigh) {
237 rose_neigh_list = rose_neigh->next; 237 rose_neigh_list = rose_neigh->next;
238 if (rose_neigh->ax25)
239 ax25_cb_put(rose_neigh->ax25);
238 kfree(rose_neigh->digipeat); 240 kfree(rose_neigh->digipeat);
239 kfree(rose_neigh); 241 kfree(rose_neigh);
240 return; 242 return;
@@ -243,6 +245,8 @@ static void rose_remove_neigh(struct rose_neigh *rose_neigh)
243 while (s != NULL && s->next != NULL) { 245 while (s != NULL && s->next != NULL) {
244 if (s->next == rose_neigh) { 246 if (s->next == rose_neigh) {
245 s->next = rose_neigh->next; 247 s->next = rose_neigh->next;
248 if (rose_neigh->ax25)
249 ax25_cb_put(rose_neigh->ax25);
246 kfree(rose_neigh->digipeat); 250 kfree(rose_neigh->digipeat);
247 kfree(rose_neigh); 251 kfree(rose_neigh);
248 return; 252 return;
@@ -812,6 +816,7 @@ void rose_link_failed(ax25_cb *ax25, int reason)
812 816
813 if (rose_neigh != NULL) { 817 if (rose_neigh != NULL) {
814 rose_neigh->ax25 = NULL; 818 rose_neigh->ax25 = NULL;
819 ax25_cb_put(ax25);
815 820
816 rose_del_route_by_neigh(rose_neigh); 821 rose_del_route_by_neigh(rose_neigh);
817 rose_kill_by_neigh(rose_neigh); 822 rose_kill_by_neigh(rose_neigh);
diff --git a/net/wireless/sme.c b/net/wireless/sme.c
index 2333d78187e4..dc0fc4989d54 100644
--- a/net/wireless/sme.c
+++ b/net/wireless/sme.c
@@ -655,6 +655,7 @@ void __cfg80211_disconnected(struct net_device *dev, const u8 *ie,
655 memset(&wrqu, 0, sizeof(wrqu)); 655 memset(&wrqu, 0, sizeof(wrqu));
656 wrqu.ap_addr.sa_family = ARPHRD_ETHER; 656 wrqu.ap_addr.sa_family = ARPHRD_ETHER;
657 wireless_send_event(dev, SIOCGIWAP, &wrqu, NULL); 657 wireless_send_event(dev, SIOCGIWAP, &wrqu, NULL);
658 wdev->wext.connect.ssid_len = 0;
658#endif 659#endif
659} 660}
660 661
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c
index 4725a549ad4d..0ecb16a9a883 100644
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
@@ -469,16 +469,16 @@ static inline int xfrm_byidx_should_resize(struct net *net, int total)
469 return 0; 469 return 0;
470} 470}
471 471
472void xfrm_spd_getinfo(struct xfrmk_spdinfo *si) 472void xfrm_spd_getinfo(struct net *net, struct xfrmk_spdinfo *si)
473{ 473{
474 read_lock_bh(&xfrm_policy_lock); 474 read_lock_bh(&xfrm_policy_lock);
475 si->incnt = init_net.xfrm.policy_count[XFRM_POLICY_IN]; 475 si->incnt = net->xfrm.policy_count[XFRM_POLICY_IN];
476 si->outcnt = init_net.xfrm.policy_count[XFRM_POLICY_OUT]; 476 si->outcnt = net->xfrm.policy_count[XFRM_POLICY_OUT];
477 si->fwdcnt = init_net.xfrm.policy_count[XFRM_POLICY_FWD]; 477 si->fwdcnt = net->xfrm.policy_count[XFRM_POLICY_FWD];
478 si->inscnt = init_net.xfrm.policy_count[XFRM_POLICY_IN+XFRM_POLICY_MAX]; 478 si->inscnt = net->xfrm.policy_count[XFRM_POLICY_IN+XFRM_POLICY_MAX];
479 si->outscnt = init_net.xfrm.policy_count[XFRM_POLICY_OUT+XFRM_POLICY_MAX]; 479 si->outscnt = net->xfrm.policy_count[XFRM_POLICY_OUT+XFRM_POLICY_MAX];
480 si->fwdscnt = init_net.xfrm.policy_count[XFRM_POLICY_FWD+XFRM_POLICY_MAX]; 480 si->fwdscnt = net->xfrm.policy_count[XFRM_POLICY_FWD+XFRM_POLICY_MAX];
481 si->spdhcnt = init_net.xfrm.policy_idx_hmask; 481 si->spdhcnt = net->xfrm.policy_idx_hmask;
482 si->spdhmcnt = xfrm_policy_hashmax; 482 si->spdhmcnt = xfrm_policy_hashmax;
483 read_unlock_bh(&xfrm_policy_lock); 483 read_unlock_bh(&xfrm_policy_lock);
484} 484}
@@ -1309,15 +1309,28 @@ static inline int xfrm_get_tos(struct flowi *fl, int family)
1309 return tos; 1309 return tos;
1310} 1310}
1311 1311
1312static inline struct xfrm_dst *xfrm_alloc_dst(int family) 1312static inline struct xfrm_dst *xfrm_alloc_dst(struct net *net, int family)
1313{ 1313{
1314 struct xfrm_policy_afinfo *afinfo = xfrm_policy_get_afinfo(family); 1314 struct xfrm_policy_afinfo *afinfo = xfrm_policy_get_afinfo(family);
1315 struct dst_ops *dst_ops;
1315 struct xfrm_dst *xdst; 1316 struct xfrm_dst *xdst;
1316 1317
1317 if (!afinfo) 1318 if (!afinfo)
1318 return ERR_PTR(-EINVAL); 1319 return ERR_PTR(-EINVAL);
1319 1320
1320 xdst = dst_alloc(afinfo->dst_ops) ?: ERR_PTR(-ENOBUFS); 1321 switch (family) {
1322 case AF_INET:
1323 dst_ops = &net->xfrm.xfrm4_dst_ops;
1324 break;
1325#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
1326 case AF_INET6:
1327 dst_ops = &net->xfrm.xfrm6_dst_ops;
1328 break;
1329#endif
1330 default:
1331 BUG();
1332 }
1333 xdst = dst_alloc(dst_ops) ?: ERR_PTR(-ENOBUFS);
1321 1334
1322 xfrm_policy_put_afinfo(afinfo); 1335 xfrm_policy_put_afinfo(afinfo);
1323 1336
@@ -1366,6 +1379,7 @@ static struct dst_entry *xfrm_bundle_create(struct xfrm_policy *policy,
1366 struct flowi *fl, 1379 struct flowi *fl,
1367 struct dst_entry *dst) 1380 struct dst_entry *dst)
1368{ 1381{
1382 struct net *net = xp_net(policy);
1369 unsigned long now = jiffies; 1383 unsigned long now = jiffies;
1370 struct net_device *dev; 1384 struct net_device *dev;
1371 struct dst_entry *dst_prev = NULL; 1385 struct dst_entry *dst_prev = NULL;
@@ -1389,7 +1403,7 @@ static struct dst_entry *xfrm_bundle_create(struct xfrm_policy *policy,
1389 dst_hold(dst); 1403 dst_hold(dst);
1390 1404
1391 for (; i < nx; i++) { 1405 for (; i < nx; i++) {
1392 struct xfrm_dst *xdst = xfrm_alloc_dst(family); 1406 struct xfrm_dst *xdst = xfrm_alloc_dst(net, family);
1393 struct dst_entry *dst1 = &xdst->u.dst; 1407 struct dst_entry *dst1 = &xdst->u.dst;
1394 1408
1395 err = PTR_ERR(xdst); 1409 err = PTR_ERR(xdst);
@@ -2279,6 +2293,7 @@ EXPORT_SYMBOL(xfrm_bundle_ok);
2279 2293
2280int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo) 2294int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo)
2281{ 2295{
2296 struct net *net;
2282 int err = 0; 2297 int err = 0;
2283 if (unlikely(afinfo == NULL)) 2298 if (unlikely(afinfo == NULL))
2284 return -EINVAL; 2299 return -EINVAL;
@@ -2302,6 +2317,27 @@ int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo)
2302 xfrm_policy_afinfo[afinfo->family] = afinfo; 2317 xfrm_policy_afinfo[afinfo->family] = afinfo;
2303 } 2318 }
2304 write_unlock_bh(&xfrm_policy_afinfo_lock); 2319 write_unlock_bh(&xfrm_policy_afinfo_lock);
2320
2321 rtnl_lock();
2322 for_each_net(net) {
2323 struct dst_ops *xfrm_dst_ops;
2324
2325 switch (afinfo->family) {
2326 case AF_INET:
2327 xfrm_dst_ops = &net->xfrm.xfrm4_dst_ops;
2328 break;
2329#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
2330 case AF_INET6:
2331 xfrm_dst_ops = &net->xfrm.xfrm6_dst_ops;
2332 break;
2333#endif
2334 default:
2335 BUG();
2336 }
2337 *xfrm_dst_ops = *afinfo->dst_ops;
2338 }
2339 rtnl_unlock();
2340
2305 return err; 2341 return err;
2306} 2342}
2307EXPORT_SYMBOL(xfrm_policy_register_afinfo); 2343EXPORT_SYMBOL(xfrm_policy_register_afinfo);
@@ -2332,6 +2368,22 @@ int xfrm_policy_unregister_afinfo(struct xfrm_policy_afinfo *afinfo)
2332} 2368}
2333EXPORT_SYMBOL(xfrm_policy_unregister_afinfo); 2369EXPORT_SYMBOL(xfrm_policy_unregister_afinfo);
2334 2370
2371static void __net_init xfrm_dst_ops_init(struct net *net)
2372{
2373 struct xfrm_policy_afinfo *afinfo;
2374
2375 read_lock_bh(&xfrm_policy_afinfo_lock);
2376 afinfo = xfrm_policy_afinfo[AF_INET];
2377 if (afinfo)
2378 net->xfrm.xfrm4_dst_ops = *afinfo->dst_ops;
2379#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
2380 afinfo = xfrm_policy_afinfo[AF_INET6];
2381 if (afinfo)
2382 net->xfrm.xfrm6_dst_ops = *afinfo->dst_ops;
2383#endif
2384 read_unlock_bh(&xfrm_policy_afinfo_lock);
2385}
2386
2335static struct xfrm_policy_afinfo *xfrm_policy_get_afinfo(unsigned short family) 2387static struct xfrm_policy_afinfo *xfrm_policy_get_afinfo(unsigned short family)
2336{ 2388{
2337 struct xfrm_policy_afinfo *afinfo; 2389 struct xfrm_policy_afinfo *afinfo;
@@ -2494,6 +2546,7 @@ static int __net_init xfrm_net_init(struct net *net)
2494 rv = xfrm_policy_init(net); 2546 rv = xfrm_policy_init(net);
2495 if (rv < 0) 2547 if (rv < 0)
2496 goto out_policy; 2548 goto out_policy;
2549 xfrm_dst_ops_init(net);
2497 rv = xfrm_sysctl_init(net); 2550 rv = xfrm_sysctl_init(net);
2498 if (rv < 0) 2551 if (rv < 0)
2499 goto out_sysctl; 2552 goto out_sysctl;
diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c
index d847f1a52b44..b36cc344474b 100644
--- a/net/xfrm/xfrm_state.c
+++ b/net/xfrm/xfrm_state.c
@@ -641,11 +641,11 @@ out:
641} 641}
642EXPORT_SYMBOL(xfrm_state_flush); 642EXPORT_SYMBOL(xfrm_state_flush);
643 643
644void xfrm_sad_getinfo(struct xfrmk_sadinfo *si) 644void xfrm_sad_getinfo(struct net *net, struct xfrmk_sadinfo *si)
645{ 645{
646 spin_lock_bh(&xfrm_state_lock); 646 spin_lock_bh(&xfrm_state_lock);
647 si->sadcnt = init_net.xfrm.state_num; 647 si->sadcnt = net->xfrm.state_num;
648 si->sadhcnt = init_net.xfrm.state_hmask; 648 si->sadhcnt = net->xfrm.state_hmask;
649 si->sadhmcnt = xfrm_state_hashmax; 649 si->sadhmcnt = xfrm_state_hashmax;
650 spin_unlock_bh(&xfrm_state_lock); 650 spin_unlock_bh(&xfrm_state_lock);
651} 651}
diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c
index 1ada6186933c..d5a712976004 100644
--- a/net/xfrm/xfrm_user.c
+++ b/net/xfrm/xfrm_user.c
@@ -781,7 +781,8 @@ static inline size_t xfrm_spdinfo_msgsize(void)
781 + nla_total_size(sizeof(struct xfrmu_spdhinfo)); 781 + nla_total_size(sizeof(struct xfrmu_spdhinfo));
782} 782}
783 783
784static int build_spdinfo(struct sk_buff *skb, u32 pid, u32 seq, u32 flags) 784static int build_spdinfo(struct sk_buff *skb, struct net *net,
785 u32 pid, u32 seq, u32 flags)
785{ 786{
786 struct xfrmk_spdinfo si; 787 struct xfrmk_spdinfo si;
787 struct xfrmu_spdinfo spc; 788 struct xfrmu_spdinfo spc;
@@ -795,7 +796,7 @@ static int build_spdinfo(struct sk_buff *skb, u32 pid, u32 seq, u32 flags)
795 796
796 f = nlmsg_data(nlh); 797 f = nlmsg_data(nlh);
797 *f = flags; 798 *f = flags;
798 xfrm_spd_getinfo(&si); 799 xfrm_spd_getinfo(net, &si);
799 spc.incnt = si.incnt; 800 spc.incnt = si.incnt;
800 spc.outcnt = si.outcnt; 801 spc.outcnt = si.outcnt;
801 spc.fwdcnt = si.fwdcnt; 802 spc.fwdcnt = si.fwdcnt;
@@ -828,7 +829,7 @@ static int xfrm_get_spdinfo(struct sk_buff *skb, struct nlmsghdr *nlh,
828 if (r_skb == NULL) 829 if (r_skb == NULL)
829 return -ENOMEM; 830 return -ENOMEM;
830 831
831 if (build_spdinfo(r_skb, spid, seq, *flags) < 0) 832 if (build_spdinfo(r_skb, net, spid, seq, *flags) < 0)
832 BUG(); 833 BUG();
833 834
834 return nlmsg_unicast(net->xfrm.nlsk, r_skb, spid); 835 return nlmsg_unicast(net->xfrm.nlsk, r_skb, spid);
@@ -841,7 +842,8 @@ static inline size_t xfrm_sadinfo_msgsize(void)
841 + nla_total_size(4); /* XFRMA_SAD_CNT */ 842 + nla_total_size(4); /* XFRMA_SAD_CNT */
842} 843}
843 844
844static int build_sadinfo(struct sk_buff *skb, u32 pid, u32 seq, u32 flags) 845static int build_sadinfo(struct sk_buff *skb, struct net *net,
846 u32 pid, u32 seq, u32 flags)
845{ 847{
846 struct xfrmk_sadinfo si; 848 struct xfrmk_sadinfo si;
847 struct xfrmu_sadhinfo sh; 849 struct xfrmu_sadhinfo sh;
@@ -854,7 +856,7 @@ static int build_sadinfo(struct sk_buff *skb, u32 pid, u32 seq, u32 flags)
854 856
855 f = nlmsg_data(nlh); 857 f = nlmsg_data(nlh);
856 *f = flags; 858 *f = flags;
857 xfrm_sad_getinfo(&si); 859 xfrm_sad_getinfo(net, &si);
858 860
859 sh.sadhmcnt = si.sadhmcnt; 861 sh.sadhmcnt = si.sadhmcnt;
860 sh.sadhcnt = si.sadhcnt; 862 sh.sadhcnt = si.sadhcnt;
@@ -882,7 +884,7 @@ static int xfrm_get_sadinfo(struct sk_buff *skb, struct nlmsghdr *nlh,
882 if (r_skb == NULL) 884 if (r_skb == NULL)
883 return -ENOMEM; 885 return -ENOMEM;
884 886
885 if (build_sadinfo(r_skb, spid, seq, *flags) < 0) 887 if (build_sadinfo(r_skb, net, spid, seq, *flags) < 0)
886 BUG(); 888 BUG();
887 889
888 return nlmsg_unicast(net->xfrm.nlsk, r_skb, spid); 890 return nlmsg_unicast(net->xfrm.nlsk, r_skb, spid);
diff --git a/security/inode.c b/security/inode.c
index f7496c6a022b..c3a793881d04 100644
--- a/security/inode.c
+++ b/security/inode.c
@@ -156,15 +156,8 @@ static int create_by_name(const char *name, mode_t mode,
156 * block. A pointer to that is in the struct vfsmount that we 156 * block. A pointer to that is in the struct vfsmount that we
157 * have around. 157 * have around.
158 */ 158 */
159 if (!parent ) { 159 if (!parent)
160 if (mount && mount->mnt_sb) { 160 parent = mount->mnt_sb->s_root;
161 parent = mount->mnt_sb->s_root;
162 }
163 }
164 if (!parent) {
165 pr_debug("securityfs: Ah! can not find a parent!\n");
166 return -EFAULT;
167 }
168 161
169 mutex_lock(&parent->d_inode->i_mutex); 162 mutex_lock(&parent->d_inode->i_mutex);
170 *dentry = lookup_one_len(name, parent, strlen(name)); 163 *dentry = lookup_one_len(name, parent, strlen(name));
diff --git a/sound/core/sound.c b/sound/core/sound.c
index 7872a02f6ca9..563d1967a0ad 100644
--- a/sound/core/sound.c
+++ b/sound/core/sound.c
@@ -468,5 +468,5 @@ static void __exit alsa_sound_exit(void)
468 unregister_chrdev(major, "alsa"); 468 unregister_chrdev(major, "alsa");
469} 469}
470 470
471module_init(alsa_sound_init) 471subsys_initcall(alsa_sound_init);
472module_exit(alsa_sound_exit) 472module_exit(alsa_sound_exit);
diff --git a/sound/core/sound_oss.c b/sound/core/sound_oss.c
index 7fe12264ff80..0c164e5e4322 100644
--- a/sound/core/sound_oss.c
+++ b/sound/core/sound_oss.c
@@ -93,7 +93,7 @@ static int snd_oss_kernel_minor(int type, struct snd_card *card, int dev)
93 default: 93 default:
94 return -EINVAL; 94 return -EINVAL;
95 } 95 }
96 if (snd_BUG_ON(minor < 0 || minor >= SNDRV_OSS_MINORS)) 96 if (minor < 0 || minor >= SNDRV_OSS_MINORS)
97 return -EINVAL; 97 return -EINVAL;
98 return minor; 98 return minor;
99} 99}
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index ec9c348336cc..565de38a3fc7 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -2332,6 +2332,7 @@ static void __devinit check_probe_mask(struct azx *chip, int dev)
2332 */ 2332 */
2333static struct snd_pci_quirk msi_black_list[] __devinitdata = { 2333static struct snd_pci_quirk msi_black_list[] __devinitdata = {
2334 SND_PCI_QUIRK(0x1043, 0x81f2, "ASUS", 0), /* Athlon64 X2 + nvidia */ 2334 SND_PCI_QUIRK(0x1043, 0x81f2, "ASUS", 0), /* Athlon64 X2 + nvidia */
2335 SND_PCI_QUIRK(0x1043, 0x829c, "ASUS", 0), /* nvidia */
2335 {} 2336 {}
2336}; 2337};
2337 2338
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index e3caa78ccd54..da34095c707f 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -1093,6 +1093,16 @@ static void alc889_coef_init(struct hda_codec *codec)
1093 snd_hda_codec_write(codec, 0x20, 0, AC_VERB_SET_PROC_COEF, tmp|0x2010); 1093 snd_hda_codec_write(codec, 0x20, 0, AC_VERB_SET_PROC_COEF, tmp|0x2010);
1094} 1094}
1095 1095
1096/* turn on/off EAPD control (only if available) */
1097static void set_eapd(struct hda_codec *codec, hda_nid_t nid, int on)
1098{
1099 if (get_wcaps_type(get_wcaps(codec, nid)) != AC_WID_PIN)
1100 return;
1101 if (snd_hda_query_pin_caps(codec, nid) & AC_PINCAP_EAPD)
1102 snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_EAPD_BTLENABLE,
1103 on ? 2 : 0);
1104}
1105
1096static void alc_auto_init_amp(struct hda_codec *codec, int type) 1106static void alc_auto_init_amp(struct hda_codec *codec, int type)
1097{ 1107{
1098 unsigned int tmp; 1108 unsigned int tmp;
@@ -1110,25 +1120,22 @@ static void alc_auto_init_amp(struct hda_codec *codec, int type)
1110 case ALC_INIT_DEFAULT: 1120 case ALC_INIT_DEFAULT:
1111 switch (codec->vendor_id) { 1121 switch (codec->vendor_id) {
1112 case 0x10ec0260: 1122 case 0x10ec0260:
1113 snd_hda_codec_write(codec, 0x0f, 0, 1123 set_eapd(codec, 0x0f, 1);
1114 AC_VERB_SET_EAPD_BTLENABLE, 2); 1124 set_eapd(codec, 0x10, 1);
1115 snd_hda_codec_write(codec, 0x10, 0,
1116 AC_VERB_SET_EAPD_BTLENABLE, 2);
1117 break; 1125 break;
1118 case 0x10ec0262: 1126 case 0x10ec0262:
1119 case 0x10ec0267: 1127 case 0x10ec0267:
1120 case 0x10ec0268: 1128 case 0x10ec0268:
1121 case 0x10ec0269: 1129 case 0x10ec0269:
1130 case 0x10ec0270:
1122 case 0x10ec0272: 1131 case 0x10ec0272:
1123 case 0x10ec0660: 1132 case 0x10ec0660:
1124 case 0x10ec0662: 1133 case 0x10ec0662:
1125 case 0x10ec0663: 1134 case 0x10ec0663:
1126 case 0x10ec0862: 1135 case 0x10ec0862:
1127 case 0x10ec0889: 1136 case 0x10ec0889:
1128 snd_hda_codec_write(codec, 0x14, 0, 1137 set_eapd(codec, 0x14, 1);
1129 AC_VERB_SET_EAPD_BTLENABLE, 2); 1138 set_eapd(codec, 0x15, 1);
1130 snd_hda_codec_write(codec, 0x15, 0,
1131 AC_VERB_SET_EAPD_BTLENABLE, 2);
1132 break; 1139 break;
1133 } 1140 }
1134 switch (codec->vendor_id) { 1141 switch (codec->vendor_id) {
@@ -1230,6 +1237,8 @@ static void alc_init_auto_mic(struct hda_codec *codec)
1230 return; /* invalid entry */ 1237 return; /* invalid entry */
1231 } 1238 }
1232 } 1239 }
1240 if (!ext || !fixed)
1241 return;
1233 if (!(get_wcaps(codec, ext) & AC_WCAP_UNSOL_CAP)) 1242 if (!(get_wcaps(codec, ext) & AC_WCAP_UNSOL_CAP))
1234 return; /* no unsol support */ 1243 return; /* no unsol support */
1235 snd_printdd("realtek: Enable auto-mic switch on NID 0x%x/0x%x\n", 1244 snd_printdd("realtek: Enable auto-mic switch on NID 0x%x/0x%x\n",
@@ -1834,10 +1843,8 @@ static void alc889_acer_aspire_8930g_setup(struct hda_codec *codec)
1834#ifdef CONFIG_SND_HDA_POWER_SAVE 1843#ifdef CONFIG_SND_HDA_POWER_SAVE
1835static void alc889_power_eapd(struct hda_codec *codec, int power) 1844static void alc889_power_eapd(struct hda_codec *codec, int power)
1836{ 1845{
1837 snd_hda_codec_write(codec, 0x14, 0, 1846 set_eapd(codec, 0x14, power);
1838 AC_VERB_SET_EAPD_BTLENABLE, power ? 2 : 0); 1847 set_eapd(codec, 0x15, power);
1839 snd_hda_codec_write(codec, 0x15, 0,
1840 AC_VERB_SET_EAPD_BTLENABLE, power ? 2 : 0);
1841} 1848}
1842#endif 1849#endif
1843 1850
@@ -4812,6 +4819,49 @@ static void fixup_automic_adc(struct hda_codec *codec)
4812 spec->auto_mic = 0; /* disable auto-mic to be sure */ 4819 spec->auto_mic = 0; /* disable auto-mic to be sure */
4813} 4820}
4814 4821
4822/* choose the ADC/MUX containing the input pin and initialize the setup */
4823static void fixup_single_adc(struct hda_codec *codec)
4824{
4825 struct alc_spec *spec = codec->spec;
4826 hda_nid_t pin;
4827 int i;
4828
4829 /* search for the input pin; there must be only one */
4830 for (i = 0; i < AUTO_PIN_LAST; i++) {
4831 if (spec->autocfg.input_pins[i]) {
4832 pin = spec->autocfg.input_pins[i];
4833 break;
4834 }
4835 }
4836 if (!pin)
4837 return;
4838
4839 /* set the default connection to that pin */
4840 for (i = 0; i < spec->num_adc_nids; i++) {
4841 hda_nid_t cap = spec->capsrc_nids ?
4842 spec->capsrc_nids[i] : spec->adc_nids[i];
4843 int idx;
4844
4845 idx = get_connection_index(codec, cap, pin);
4846 if (idx < 0)
4847 continue;
4848 /* use only this ADC */
4849 if (spec->capsrc_nids)
4850 spec->capsrc_nids += i;
4851 spec->adc_nids += i;
4852 spec->num_adc_nids = 1;
4853 /* select or unmute this route */
4854 if (get_wcaps_type(get_wcaps(codec, cap)) == AC_WID_AUD_MIX) {
4855 snd_hda_codec_amp_stereo(codec, cap, HDA_INPUT, idx,
4856 HDA_AMP_MUTE, 0);
4857 } else {
4858 snd_hda_codec_write_cache(codec, cap, 0,
4859 AC_VERB_SET_CONNECT_SEL, idx);
4860 }
4861 return;
4862 }
4863}
4864
4815static void set_capture_mixer(struct hda_codec *codec) 4865static void set_capture_mixer(struct hda_codec *codec)
4816{ 4866{
4817 struct alc_spec *spec = codec->spec; 4867 struct alc_spec *spec = codec->spec;
@@ -4824,14 +4874,15 @@ static void set_capture_mixer(struct hda_codec *codec)
4824 alc_capture_mixer3 }, 4874 alc_capture_mixer3 },
4825 }; 4875 };
4826 if (spec->num_adc_nids > 0 && spec->num_adc_nids <= 3) { 4876 if (spec->num_adc_nids > 0 && spec->num_adc_nids <= 3) {
4827 int mux; 4877 int mux = 0;
4828 if (spec->auto_mic) { 4878 if (spec->auto_mic)
4829 mux = 0;
4830 fixup_automic_adc(codec); 4879 fixup_automic_adc(codec);
4831 } else if (spec->input_mux && spec->input_mux->num_items > 1) 4880 else if (spec->input_mux) {
4832 mux = 1; 4881 if (spec->input_mux->num_items > 1)
4833 else 4882 mux = 1;
4834 mux = 0; 4883 else if (spec->input_mux->num_items == 1)
4884 fixup_single_adc(codec);
4885 }
4835 spec->cap_mixer = caps[mux][spec->num_adc_nids - 1]; 4886 spec->cap_mixer = caps[mux][spec->num_adc_nids - 1];
4836 } 4887 }
4837} 4888}
@@ -7094,8 +7145,8 @@ static struct snd_kcontrol_new alc885_mb5_mixer[] = {
7094 HDA_BIND_MUTE ("Surround Playback Switch", 0x0d, 0x02, HDA_INPUT), 7145 HDA_BIND_MUTE ("Surround Playback Switch", 0x0d, 0x02, HDA_INPUT),
7095 HDA_CODEC_VOLUME("LFE Playback Volume", 0x0e, 0x00, HDA_OUTPUT), 7146 HDA_CODEC_VOLUME("LFE Playback Volume", 0x0e, 0x00, HDA_OUTPUT),
7096 HDA_BIND_MUTE ("LFE Playback Switch", 0x0e, 0x02, HDA_INPUT), 7147 HDA_BIND_MUTE ("LFE Playback Switch", 0x0e, 0x02, HDA_INPUT),
7097 HDA_CODEC_VOLUME("HP Playback Volume", 0x0f, 0x00, HDA_OUTPUT), 7148 HDA_CODEC_VOLUME("Headphone Playback Volume", 0x0f, 0x00, HDA_OUTPUT),
7098 HDA_BIND_MUTE ("HP Playback Switch", 0x0f, 0x02, HDA_INPUT), 7149 HDA_BIND_MUTE ("Headphone Playback Switch", 0x0f, 0x02, HDA_INPUT),
7099 HDA_CODEC_VOLUME("Line Playback Volume", 0x0b, 0x02, HDA_INPUT), 7150 HDA_CODEC_VOLUME("Line Playback Volume", 0x0b, 0x02, HDA_INPUT),
7100 HDA_CODEC_MUTE ("Line Playback Switch", 0x0b, 0x02, HDA_INPUT), 7151 HDA_CODEC_MUTE ("Line Playback Switch", 0x0b, 0x02, HDA_INPUT),
7101 HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x01, HDA_INPUT), 7152 HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x01, HDA_INPUT),
@@ -7496,6 +7547,7 @@ static struct hda_verb alc885_mb5_init_verbs[] = {
7496 {0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, 7547 {0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT},
7497 {0x14, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, 7548 {0x14, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE},
7498 {0x14, AC_VERB_SET_CONNECT_SEL, 0x03}, 7549 {0x14, AC_VERB_SET_CONNECT_SEL, 0x03},
7550 {0x14, AC_VERB_SET_UNSOLICITED_ENABLE, ALC880_HP_EVENT | AC_USRSP_EN},
7499 /* Front Mic pin: input vref at 80% */ 7551 /* Front Mic pin: input vref at 80% */
7500 {0x19, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80}, 7552 {0x19, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80},
7501 {0x19, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE}, 7553 {0x19, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE},
@@ -7680,6 +7732,27 @@ static void alc885_mbp3_setup(struct hda_codec *codec)
7680 spec->autocfg.speaker_pins[0] = 0x14; 7732 spec->autocfg.speaker_pins[0] = 0x14;
7681} 7733}
7682 7734
7735static void alc885_mb5_automute(struct hda_codec *codec)
7736{
7737 unsigned int present;
7738
7739 present = snd_hda_codec_read(codec, 0x14, 0,
7740 AC_VERB_GET_PIN_SENSE, 0) & 0x80000000;
7741 snd_hda_codec_amp_stereo(codec, 0x18, HDA_OUTPUT, 0,
7742 HDA_AMP_MUTE, present ? HDA_AMP_MUTE : 0);
7743 snd_hda_codec_amp_stereo(codec, 0x1a, HDA_OUTPUT, 0,
7744 HDA_AMP_MUTE, present ? HDA_AMP_MUTE : 0);
7745
7746}
7747
7748static void alc885_mb5_unsol_event(struct hda_codec *codec,
7749 unsigned int res)
7750{
7751 /* Headphone insertion or removal. */
7752 if ((res >> 26) == ALC880_HP_EVENT)
7753 alc885_mb5_automute(codec);
7754}
7755
7683static void alc885_imac91_automute(struct hda_codec *codec) 7756static void alc885_imac91_automute(struct hda_codec *codec)
7684{ 7757{
7685 unsigned int present; 7758 unsigned int present;
@@ -9126,6 +9199,8 @@ static struct alc_config_preset alc882_presets[] = {
9126 .input_mux = &mb5_capture_source, 9199 .input_mux = &mb5_capture_source,
9127 .dig_out_nid = ALC882_DIGOUT_NID, 9200 .dig_out_nid = ALC882_DIGOUT_NID,
9128 .dig_in_nid = ALC882_DIGIN_NID, 9201 .dig_in_nid = ALC882_DIGIN_NID,
9202 .unsol_event = alc885_mb5_unsol_event,
9203 .init_hook = alc885_mb5_automute,
9129 }, 9204 },
9130 [ALC885_MACPRO] = { 9205 [ALC885_MACPRO] = {
9131 .mixers = { alc882_macpro_mixer }, 9206 .mixers = { alc882_macpro_mixer },
@@ -9403,6 +9478,7 @@ static struct alc_config_preset alc882_presets[] = {
9403 .num_channel_mode = ARRAY_SIZE(alc883_3ST_6ch_modes), 9478 .num_channel_mode = ARRAY_SIZE(alc883_3ST_6ch_modes),
9404 .channel_mode = alc883_3ST_6ch_modes, 9479 .channel_mode = alc883_3ST_6ch_modes,
9405 .need_dac_fix = 1, 9480 .need_dac_fix = 1,
9481 .const_channel_count = 6,
9406 .num_mux_defs = 9482 .num_mux_defs =
9407 ARRAY_SIZE(alc888_2_capture_sources), 9483 ARRAY_SIZE(alc888_2_capture_sources),
9408 .input_mux = alc888_2_capture_sources, 9484 .input_mux = alc888_2_capture_sources,
@@ -10307,7 +10383,7 @@ static void alc262_hp_t5735_setup(struct hda_codec *codec)
10307 struct alc_spec *spec = codec->spec; 10383 struct alc_spec *spec = codec->spec;
10308 10384
10309 spec->autocfg.hp_pins[0] = 0x15; 10385 spec->autocfg.hp_pins[0] = 0x15;
10310 spec->autocfg.speaker_pins[0] = 0x0c; /* HACK: not actually a pin */ 10386 spec->autocfg.speaker_pins[0] = 0x14;
10311} 10387}
10312 10388
10313static struct snd_kcontrol_new alc262_hp_t5735_mixer[] = { 10389static struct snd_kcontrol_new alc262_hp_t5735_mixer[] = {
@@ -11179,7 +11255,7 @@ static int alc262_auto_create_multi_out_ctls(struct alc_spec *spec,
11179} 11255}
11180 11256
11181#define alc262_auto_create_input_ctls \ 11257#define alc262_auto_create_input_ctls \
11182 alc880_auto_create_input_ctls 11258 alc882_auto_create_input_ctls
11183 11259
11184/* 11260/*
11185 * generic initialization of ADC, input mixers and output mixers 11261 * generic initialization of ADC, input mixers and output mixers
@@ -11718,9 +11794,9 @@ static struct alc_config_preset alc262_presets[] = {
11718 .num_channel_mode = ARRAY_SIZE(alc262_modes), 11794 .num_channel_mode = ARRAY_SIZE(alc262_modes),
11719 .channel_mode = alc262_modes, 11795 .channel_mode = alc262_modes,
11720 .input_mux = &alc262_capture_source, 11796 .input_mux = &alc262_capture_source,
11721 .unsol_event = alc_automute_amp_unsol_event, 11797 .unsol_event = alc_sku_unsol_event,
11722 .setup = alc262_hp_t5735_setup, 11798 .setup = alc262_hp_t5735_setup,
11723 .init_hook = alc_automute_amp, 11799 .init_hook = alc_inithook,
11724 }, 11800 },
11725 [ALC262_HP_RP5700] = { 11801 [ALC262_HP_RP5700] = {
11726 .mixers = { alc262_hp_rp5700_mixer }, 11802 .mixers = { alc262_hp_rp5700_mixer },
@@ -12471,6 +12547,7 @@ static int alc268_new_analog_output(struct alc_spec *spec, hda_nid_t nid,
12471 dac = 0x02; 12547 dac = 0x02;
12472 break; 12548 break;
12473 case 0x15: 12549 case 0x15:
12550 case 0x21:
12474 dac = 0x03; 12551 dac = 0x03;
12475 break; 12552 break;
12476 default: 12553 default:
@@ -14855,6 +14932,8 @@ static int patch_alc861(struct hda_codec *codec)
14855 spec->stream_digital_playback = &alc861_pcm_digital_playback; 14932 spec->stream_digital_playback = &alc861_pcm_digital_playback;
14856 spec->stream_digital_capture = &alc861_pcm_digital_capture; 14933 spec->stream_digital_capture = &alc861_pcm_digital_capture;
14857 14934
14935 if (!spec->cap_mixer)
14936 set_capture_mixer(codec);
14858 set_beep_amp(spec, 0x23, 0, HDA_OUTPUT); 14937 set_beep_amp(spec, 0x23, 0, HDA_OUTPUT);
14859 14938
14860 spec->vmaster_nid = 0x03; 14939 spec->vmaster_nid = 0x03;
@@ -17251,7 +17330,7 @@ static struct snd_pci_quirk alc662_cfg_tbl[] = {
17251 SND_PCI_QUIRK(0x105b, 0x0cd6, "Foxconn", ALC662_ECS), 17330 SND_PCI_QUIRK(0x105b, 0x0cd6, "Foxconn", ALC662_ECS),
17252 SND_PCI_QUIRK(0x105b, 0x0d47, "Foxconn 45CMX/45GMX/45CMX-K", 17331 SND_PCI_QUIRK(0x105b, 0x0d47, "Foxconn 45CMX/45GMX/45CMX-K",
17253 ALC662_3ST_6ch_DIG), 17332 ALC662_3ST_6ch_DIG),
17254 SND_PCI_QUIRK(0x1179, 0xff6e, "Toshiba NB200", ALC663_ASUS_MODE4), 17333 SND_PCI_QUIRK(0x1179, 0xff6e, "Toshiba NB20x", ALC662_AUTO),
17255 SND_PCI_QUIRK(0x144d, 0xca00, "Samsung NC10", ALC272_SAMSUNG_NC10), 17334 SND_PCI_QUIRK(0x144d, 0xca00, "Samsung NC10", ALC272_SAMSUNG_NC10),
17256 SND_PCI_QUIRK(0x1458, 0xa002, "Gigabyte 945GCM-S2L", 17335 SND_PCI_QUIRK(0x1458, 0xa002, "Gigabyte 945GCM-S2L",
17257 ALC662_3ST_6ch_DIG), 17336 ALC662_3ST_6ch_DIG),
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 2291a8396817..799ba2570902 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -4730,6 +4730,26 @@ static void stac92xx_unsol_event(struct hda_codec *codec, unsigned int res)
4730 } 4730 }
4731} 4731}
4732 4732
4733static int hp_blike_system(u32 subsystem_id);
4734
4735static void set_hp_led_gpio(struct hda_codec *codec)
4736{
4737 struct sigmatel_spec *spec = codec->spec;
4738 switch (codec->vendor_id) {
4739 case 0x111d7608:
4740 /* GPIO 0 */
4741 spec->gpio_led = 0x01;
4742 break;
4743 case 0x111d7600:
4744 case 0x111d7601:
4745 case 0x111d7602:
4746 case 0x111d7603:
4747 /* GPIO 3 */
4748 spec->gpio_led = 0x08;
4749 break;
4750 }
4751}
4752
4733/* 4753/*
4734 * This method searches for the mute LED GPIO configuration 4754 * This method searches for the mute LED GPIO configuration
4735 * provided as OEM string in SMBIOS. The format of that string 4755 * provided as OEM string in SMBIOS. The format of that string
@@ -4741,6 +4761,14 @@ static void stac92xx_unsol_event(struct hda_codec *codec, unsigned int res)
4741 * 4761 *
4742 * So, HP B-series like systems may have HP_Mute_LED_0 (current models) 4762 * So, HP B-series like systems may have HP_Mute_LED_0 (current models)
4743 * or HP_Mute_LED_0_3 (future models) OEM SMBIOS strings 4763 * or HP_Mute_LED_0_3 (future models) OEM SMBIOS strings
4764 *
4765 *
4766 * The dv-series laptops don't seem to have the HP_Mute_LED* strings in
4767 * SMBIOS - at least the ones I have seen do not have them - which include
4768 * my own system (HP Pavilion dv6-1110ax) and my cousin's
4769 * HP Pavilion dv9500t CTO.
4770 * Need more information on whether it is true across the entire series.
4771 * -- kunal
4744 */ 4772 */
4745static int find_mute_led_gpio(struct hda_codec *codec) 4773static int find_mute_led_gpio(struct hda_codec *codec)
4746{ 4774{
@@ -4751,28 +4779,27 @@ static int find_mute_led_gpio(struct hda_codec *codec)
4751 while ((dev = dmi_find_device(DMI_DEV_TYPE_OEM_STRING, 4779 while ((dev = dmi_find_device(DMI_DEV_TYPE_OEM_STRING,
4752 NULL, dev))) { 4780 NULL, dev))) {
4753 if (sscanf(dev->name, "HP_Mute_LED_%d_%d", 4781 if (sscanf(dev->name, "HP_Mute_LED_%d_%d",
4754 &spec->gpio_led_polarity, 4782 &spec->gpio_led_polarity,
4755 &spec->gpio_led) == 2) { 4783 &spec->gpio_led) == 2) {
4756 spec->gpio_led = 1 << spec->gpio_led; 4784 spec->gpio_led = 1 << spec->gpio_led;
4757 return 1; 4785 return 1;
4758 } 4786 }
4759 if (sscanf(dev->name, "HP_Mute_LED_%d", 4787 if (sscanf(dev->name, "HP_Mute_LED_%d",
4760 &spec->gpio_led_polarity) == 1) { 4788 &spec->gpio_led_polarity) == 1) {
4761 switch (codec->vendor_id) { 4789 set_hp_led_gpio(codec);
4762 case 0x111d7608: 4790 return 1;
4763 /* GPIO 0 */
4764 spec->gpio_led = 0x01;
4765 return 1;
4766 case 0x111d7600:
4767 case 0x111d7601:
4768 case 0x111d7602:
4769 case 0x111d7603:
4770 /* GPIO 3 */
4771 spec->gpio_led = 0x08;
4772 return 1;
4773 }
4774 } 4791 }
4775 } 4792 }
4793
4794 /*
4795 * Fallback case - if we don't find the DMI strings,
4796 * we statically set the GPIO - if not a B-series system.
4797 */
4798 if (!hp_blike_system(codec->subsystem_id)) {
4799 set_hp_led_gpio(codec);
4800 spec->gpio_led_polarity = 1;
4801 return 1;
4802 }
4776 } 4803 }
4777 return 0; 4804 return 0;
4778} 4805}
@@ -5548,6 +5575,8 @@ again:
5548 spec->num_dmuxes = ARRAY_SIZE(stac92hd71bxx_dmux_nids); 5575 spec->num_dmuxes = ARRAY_SIZE(stac92hd71bxx_dmux_nids);
5549 spec->num_smuxes = stac92hd71bxx_connected_smuxes(codec, 0x1e); 5576 spec->num_smuxes = stac92hd71bxx_connected_smuxes(codec, 0x1e);
5550 5577
5578 snd_printdd("Found board config: %d\n", spec->board_config);
5579
5551 switch (spec->board_config) { 5580 switch (spec->board_config) {
5552 case STAC_HP_M4: 5581 case STAC_HP_M4:
5553 /* enable internal microphone */ 5582 /* enable internal microphone */
diff --git a/sound/soc/codecs/tlv320aic23.c b/sound/soc/codecs/tlv320aic23.c
index a9dc5fb54774..da589d8664d0 100644
--- a/sound/soc/codecs/tlv320aic23.c
+++ b/sound/soc/codecs/tlv320aic23.c
@@ -627,7 +627,7 @@ static int tlv320aic23_resume(struct platform_device *pdev)
627 u16 reg; 627 u16 reg;
628 628
629 /* Sync reg_cache with the hardware */ 629 /* Sync reg_cache with the hardware */
630 for (reg = 0; reg < TLV320AIC23_RESET; reg++) { 630 for (reg = 0; reg <= TLV320AIC23_ACTIVE; reg++) {
631 u16 val = tlv320aic23_read_reg_cache(codec, reg); 631 u16 val = tlv320aic23_read_reg_cache(codec, reg);
632 tlv320aic23_write(codec, reg, val); 632 tlv320aic23_write(codec, reg, val);
633 } 633 }
diff --git a/sound/soc/codecs/wm8903.c b/sound/soc/codecs/wm8903.c
index ce5515e3f2b0..3595bd57c4eb 100644
--- a/sound/soc/codecs/wm8903.c
+++ b/sound/soc/codecs/wm8903.c
@@ -1504,7 +1504,7 @@ static int wm8903_resume(struct platform_device *pdev)
1504 struct i2c_client *i2c = codec->control_data; 1504 struct i2c_client *i2c = codec->control_data;
1505 int i; 1505 int i;
1506 u16 *reg_cache = codec->reg_cache; 1506 u16 *reg_cache = codec->reg_cache;
1507 u16 *tmp_cache = kmemdup(codec->reg_cache, sizeof(wm8903_reg_defaults), 1507 u16 *tmp_cache = kmemdup(reg_cache, sizeof(wm8903_reg_defaults),
1508 GFP_KERNEL); 1508 GFP_KERNEL);
1509 1509
1510 /* Bring the codec back up to standby first to minimise pop/clicks */ 1510 /* Bring the codec back up to standby first to minimise pop/clicks */
@@ -1516,6 +1516,7 @@ static int wm8903_resume(struct platform_device *pdev)
1516 for (i = 2; i < ARRAY_SIZE(wm8903_reg_defaults); i++) 1516 for (i = 2; i < ARRAY_SIZE(wm8903_reg_defaults); i++)
1517 if (tmp_cache[i] != reg_cache[i]) 1517 if (tmp_cache[i] != reg_cache[i])
1518 snd_soc_write(codec, i, tmp_cache[i]); 1518 snd_soc_write(codec, i, tmp_cache[i]);
1519 kfree(tmp_cache);
1519 } else { 1520 } else {
1520 dev_err(&i2c->dev, "Failed to allocate temporary cache\n"); 1521 dev_err(&i2c->dev, "Failed to allocate temporary cache\n");
1521 } 1522 }
diff --git a/sound/soc/omap/Makefile b/sound/soc/omap/Makefile
index 3db8a6c523f4..19283e5edfbf 100644
--- a/sound/soc/omap/Makefile
+++ b/sound/soc/omap/Makefile
@@ -25,7 +25,7 @@ obj-$(CONFIG_SND_OMAP_SOC_OSK5912) += snd-soc-osk5912.o
25obj-$(CONFIG_SND_OMAP_SOC_OVERO) += snd-soc-overo.o 25obj-$(CONFIG_SND_OMAP_SOC_OVERO) += snd-soc-overo.o
26obj-$(CONFIG_SND_OMAP_SOC_OMAP2EVM) += snd-soc-omap2evm.o 26obj-$(CONFIG_SND_OMAP_SOC_OMAP2EVM) += snd-soc-omap2evm.o
27obj-$(CONFIG_SND_OMAP_SOC_OMAP3EVM) += snd-soc-omap3evm.o 27obj-$(CONFIG_SND_OMAP_SOC_OMAP3EVM) += snd-soc-omap3evm.o
28obj-$(CONFIG_SND_OMAP_SOC_OMAP3517EVM) += snd-soc-am3517evm.o 28obj-$(CONFIG_SND_OMAP_SOC_AM3517EVM) += snd-soc-am3517evm.o
29obj-$(CONFIG_SND_OMAP_SOC_SDP3430) += snd-soc-sdp3430.o 29obj-$(CONFIG_SND_OMAP_SOC_SDP3430) += snd-soc-sdp3430.o
30obj-$(CONFIG_SND_OMAP_SOC_OMAP3_PANDORA) += snd-soc-omap3pandora.o 30obj-$(CONFIG_SND_OMAP_SOC_OMAP3_PANDORA) += snd-soc-omap3pandora.o
31obj-$(CONFIG_SND_OMAP_SOC_OMAP3_BEAGLE) += snd-soc-omap3beagle.o 31obj-$(CONFIG_SND_OMAP_SOC_OMAP3_BEAGLE) += snd-soc-omap3beagle.o
diff --git a/sound/sound_core.c b/sound/sound_core.c
index dbca7c909a31..7c2d677a2df5 100644
--- a/sound/sound_core.c
+++ b/sound/sound_core.c
@@ -61,7 +61,7 @@ static void __exit cleanup_soundcore(void)
61 class_destroy(sound_class); 61 class_destroy(sound_class);
62} 62}
63 63
64module_init(init_soundcore); 64subsys_initcall(init_soundcore);
65module_exit(cleanup_soundcore); 65module_exit(cleanup_soundcore);
66 66
67 67
diff --git a/tools/perf/.gitignore b/tools/perf/.gitignore
index fe08660ce0bd..124760bb37b5 100644
--- a/tools/perf/.gitignore
+++ b/tools/perf/.gitignore
@@ -13,6 +13,7 @@ perf*.xml
13perf*.html 13perf*.html
14common-cmds.h 14common-cmds.h
15perf.data 15perf.data
16perf.data.old
16tags 17tags
17TAGS 18TAGS
18cscope* 19cscope*
diff --git a/tools/perf/builtin-kmem.c b/tools/perf/builtin-kmem.c
index 7ceb7416c316..93c67bf53d2c 100644
--- a/tools/perf/builtin-kmem.c
+++ b/tools/perf/builtin-kmem.c
@@ -375,7 +375,7 @@ static void __print_result(struct rb_root *root, struct perf_session *session,
375 375
376 printf("%.102s\n", graph_dotted_line); 376 printf("%.102s\n", graph_dotted_line);
377 printf(" %-34s |", is_caller ? "Callsite": "Alloc Ptr"); 377 printf(" %-34s |", is_caller ? "Callsite": "Alloc Ptr");
378 printf(" Total_alloc/Per | Total_req/Per | Hit | Ping-pong | Frag\n"); 378 printf(" Total_alloc/Per | Total_req/Per | Hit | Ping-pong | Frag\n");
379 printf("%.102s\n", graph_dotted_line); 379 printf("%.102s\n", graph_dotted_line);
380 380
381 next = rb_first(root); 381 next = rb_first(root);
@@ -401,7 +401,7 @@ static void __print_result(struct rb_root *root, struct perf_session *session,
401 snprintf(buf, sizeof(buf), "%#Lx", addr); 401 snprintf(buf, sizeof(buf), "%#Lx", addr);
402 printf(" %-34s |", buf); 402 printf(" %-34s |", buf);
403 403
404 printf(" %9llu/%-5lu | %9llu/%-5lu | %6lu | %8lu | %6.3f%%\n", 404 printf(" %9llu/%-5lu | %9llu/%-5lu | %8lu | %8lu | %6.3f%%\n",
405 (unsigned long long)data->bytes_alloc, 405 (unsigned long long)data->bytes_alloc,
406 (unsigned long)data->bytes_alloc / data->hit, 406 (unsigned long)data->bytes_alloc / data->hit,
407 (unsigned long long)data->bytes_req, 407 (unsigned long long)data->bytes_req,
@@ -784,7 +784,8 @@ int cmd_kmem(int argc, const char **argv, const char *prefix __used)
784 setup_sorting(&alloc_sort, default_sort_order); 784 setup_sorting(&alloc_sort, default_sort_order);
785 785
786 return __cmd_kmem(); 786 return __cmd_kmem();
787 } 787 } else
788 usage_with_options(kmem_usage, kmem_options);
788 789
789 return 0; 790 return 0;
790} 791}
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index db10c0e8ecae..860f1eeeea7d 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -269,7 +269,7 @@ parse_callchain_opt(const struct option *opt __used, const char *arg,
269 269
270 else if (!strncmp(tok, "none", strlen(arg))) { 270 else if (!strncmp(tok, "none", strlen(arg))) {
271 callchain_param.mode = CHAIN_NONE; 271 callchain_param.mode = CHAIN_NONE;
272 symbol_conf.use_callchain = true; 272 symbol_conf.use_callchain = false;
273 273
274 return 0; 274 return 0;
275 } 275 }
diff --git a/tools/perf/builtin-timechart.c b/tools/perf/builtin-timechart.c
index a589a43112d6..3f8bbcfb1e9b 100644
--- a/tools/perf/builtin-timechart.c
+++ b/tools/perf/builtin-timechart.c
@@ -280,7 +280,7 @@ static u64 cpus_pstate_state[MAX_CPUS];
280 280
281static int process_comm_event(event_t *event, struct perf_session *session __used) 281static int process_comm_event(event_t *event, struct perf_session *session __used)
282{ 282{
283 pid_set_comm(event->comm.pid, event->comm.comm); 283 pid_set_comm(event->comm.tid, event->comm.comm);
284 return 0; 284 return 0;
285} 285}
286 286
diff --git a/virt/kvm/eventfd.c b/virt/kvm/eventfd.c
index 30f70fd511c4..a9d3fc6c681c 100644
--- a/virt/kvm/eventfd.c
+++ b/virt/kvm/eventfd.c
@@ -72,12 +72,13 @@ static void
72irqfd_shutdown(struct work_struct *work) 72irqfd_shutdown(struct work_struct *work)
73{ 73{
74 struct _irqfd *irqfd = container_of(work, struct _irqfd, shutdown); 74 struct _irqfd *irqfd = container_of(work, struct _irqfd, shutdown);
75 u64 cnt;
75 76
76 /* 77 /*
77 * Synchronize with the wait-queue and unhook ourselves to prevent 78 * Synchronize with the wait-queue and unhook ourselves to prevent
78 * further events. 79 * further events.
79 */ 80 */
80 remove_wait_queue(irqfd->wqh, &irqfd->wait); 81 eventfd_ctx_remove_wait_queue(irqfd->eventfd, &irqfd->wait, &cnt);
81 82
82 /* 83 /*
83 * We know no new events will be scheduled at this point, so block 84 * We know no new events will be scheduled at this point, so block
@@ -166,7 +167,7 @@ irqfd_ptable_queue_proc(struct file *file, wait_queue_head_t *wqh,
166static int 167static int
167kvm_irqfd_assign(struct kvm *kvm, int fd, int gsi) 168kvm_irqfd_assign(struct kvm *kvm, int fd, int gsi)
168{ 169{
169 struct _irqfd *irqfd; 170 struct _irqfd *irqfd, *tmp;
170 struct file *file = NULL; 171 struct file *file = NULL;
171 struct eventfd_ctx *eventfd = NULL; 172 struct eventfd_ctx *eventfd = NULL;
172 int ret; 173 int ret;
@@ -203,9 +204,20 @@ kvm_irqfd_assign(struct kvm *kvm, int fd, int gsi)
203 init_waitqueue_func_entry(&irqfd->wait, irqfd_wakeup); 204 init_waitqueue_func_entry(&irqfd->wait, irqfd_wakeup);
204 init_poll_funcptr(&irqfd->pt, irqfd_ptable_queue_proc); 205 init_poll_funcptr(&irqfd->pt, irqfd_ptable_queue_proc);
205 206
207 spin_lock_irq(&kvm->irqfds.lock);
208
209 ret = 0;
210 list_for_each_entry(tmp, &kvm->irqfds.items, list) {
211 if (irqfd->eventfd != tmp->eventfd)
212 continue;
213 /* This fd is used for another irq already. */
214 ret = -EBUSY;
215 spin_unlock_irq(&kvm->irqfds.lock);
216 goto fail;
217 }
218
206 events = file->f_op->poll(file, &irqfd->pt); 219 events = file->f_op->poll(file, &irqfd->pt);
207 220
208 spin_lock_irq(&kvm->irqfds.lock);
209 list_add_tail(&irqfd->list, &kvm->irqfds.items); 221 list_add_tail(&irqfd->list, &kvm->irqfds.items);
210 spin_unlock_irq(&kvm->irqfds.lock); 222 spin_unlock_irq(&kvm->irqfds.lock);
211 223
diff --git a/virt/kvm/irq_comm.c b/virt/kvm/irq_comm.c
index 9b077342ab54..9fd5b3ebc517 100644
--- a/virt/kvm/irq_comm.c
+++ b/virt/kvm/irq_comm.c
@@ -302,6 +302,7 @@ static int setup_routing_entry(struct kvm_irq_routing_table *rt,
302{ 302{
303 int r = -EINVAL; 303 int r = -EINVAL;
304 int delta; 304 int delta;
305 unsigned max_pin;
305 struct kvm_kernel_irq_routing_entry *ei; 306 struct kvm_kernel_irq_routing_entry *ei;
306 struct hlist_node *n; 307 struct hlist_node *n;
307 308
@@ -322,12 +323,15 @@ static int setup_routing_entry(struct kvm_irq_routing_table *rt,
322 switch (ue->u.irqchip.irqchip) { 323 switch (ue->u.irqchip.irqchip) {
323 case KVM_IRQCHIP_PIC_MASTER: 324 case KVM_IRQCHIP_PIC_MASTER:
324 e->set = kvm_set_pic_irq; 325 e->set = kvm_set_pic_irq;
326 max_pin = 16;
325 break; 327 break;
326 case KVM_IRQCHIP_PIC_SLAVE: 328 case KVM_IRQCHIP_PIC_SLAVE:
327 e->set = kvm_set_pic_irq; 329 e->set = kvm_set_pic_irq;
330 max_pin = 16;
328 delta = 8; 331 delta = 8;
329 break; 332 break;
330 case KVM_IRQCHIP_IOAPIC: 333 case KVM_IRQCHIP_IOAPIC:
334 max_pin = KVM_IOAPIC_NUM_PINS;
331 e->set = kvm_set_ioapic_irq; 335 e->set = kvm_set_ioapic_irq;
332 break; 336 break;
333 default: 337 default:
@@ -335,7 +339,7 @@ static int setup_routing_entry(struct kvm_irq_routing_table *rt,
335 } 339 }
336 e->irqchip.irqchip = ue->u.irqchip.irqchip; 340 e->irqchip.irqchip = ue->u.irqchip.irqchip;
337 e->irqchip.pin = ue->u.irqchip.pin + delta; 341 e->irqchip.pin = ue->u.irqchip.pin + delta;
338 if (e->irqchip.pin >= KVM_IOAPIC_NUM_PINS) 342 if (e->irqchip.pin >= max_pin)
339 goto out; 343 goto out;
340 rt->chip[ue->u.irqchip.irqchip][e->irqchip.pin] = ue->gsi; 344 rt->chip[ue->u.irqchip.irqchip][e->irqchip.pin] = ue->gsi;
341 break; 345 break;