aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/local_ops.txt2
-rw-r--r--MAINTAINERS14
-rw-r--r--Makefile2
-rw-r--r--arch/arm/configs/omap3_pandora_defconfig1409
-rw-r--r--arch/arm/configs/omap_ldp_defconfig148
-rw-r--r--arch/arm/include/asm/bitops.h16
-rw-r--r--arch/arm/include/asm/processor.h2
-rw-r--r--arch/arm/mach-omap1/board-fsample.c7
-rw-r--r--arch/arm/mach-omap1/board-h2.c24
-rw-r--r--arch/arm/mach-omap1/board-h3.c9
-rw-r--r--arch/arm/mach-omap1/board-innovator.c2
-rw-r--r--arch/arm/mach-omap1/board-nokia770.c12
-rw-r--r--arch/arm/mach-omap1/board-osk.c43
-rw-r--r--arch/arm/mach-omap1/board-palmte.c14
-rw-r--r--arch/arm/mach-omap1/board-palmtt.c2
-rw-r--r--arch/arm/mach-omap1/board-palmz71.c23
-rw-r--r--arch/arm/mach-omap1/board-perseus2.c7
-rw-r--r--arch/arm/mach-omap1/board-sx1.c11
-rw-r--r--arch/arm/mach-omap1/board-voiceblue.c49
-rw-r--r--arch/arm/mach-omap1/fpga.c6
-rw-r--r--arch/arm/mach-omap1/id.c53
-rw-r--r--arch/arm/mach-omap1/io.c2
-rw-r--r--arch/arm/mach-omap1/leds-h2p2-debug.c10
-rw-r--r--arch/arm/mach-omap1/leds-osk.c4
-rw-r--r--arch/arm/mach-omap1/leds.c8
-rw-r--r--arch/arm/mach-omap1/pm.c6
-rw-r--r--arch/arm/mach-omap1/serial.c10
-rw-r--r--arch/arm/mach-omap2/Kconfig4
-rw-r--r--arch/arm/mach-omap2/Makefile1
-rw-r--r--arch/arm/mach-omap2/board-2430sdp.c4
-rw-r--r--arch/arm/mach-omap2/board-apollon.c15
-rw-r--r--arch/arm/mach-omap2/board-h4.c14
-rw-r--r--arch/arm/mach-omap2/board-ldp.c57
-rw-r--r--arch/arm/mach-omap2/board-omap3pandora.c180
-rw-r--r--arch/arm/mach-omap2/clock34xx.c2
-rw-r--r--arch/arm/mach-omap2/clock34xx.h36
-rw-r--r--arch/arm/mach-omap2/id.c305
-rw-r--r--arch/arm/mach-omap2/irq.c39
-rw-r--r--arch/arm/mach-omap2/mux.c44
-rw-r--r--arch/arm/mach-omap2/usb-tusb6010.c6
-rw-r--r--arch/arm/mm/alignment.c26
-rw-r--r--arch/arm/plat-omap/debug-devices.c8
-rw-r--r--arch/arm/plat-omap/debug-leds.c10
-rw-r--r--arch/arm/plat-omap/dma.c15
-rw-r--r--arch/arm/plat-omap/dmtimer.c11
-rw-r--r--arch/arm/plat-omap/gpio.c127
-rw-r--r--arch/arm/plat-omap/i2c.c55
-rw-r--r--arch/arm/plat-omap/include/mach/board-apollon.h4
-rw-r--r--arch/arm/plat-omap/include/mach/board-ldp.h5
-rw-r--r--arch/arm/plat-omap/include/mach/cpu.h82
-rw-r--r--arch/arm/plat-omap/include/mach/gpio.h31
-rw-r--r--arch/arm/plat-omap/include/mach/mux.h41
-rw-r--r--arch/arm/plat-omap/include/mach/omapfb.h4
-rw-r--r--arch/arm/plat-omap/sram.c11
-rw-r--r--arch/arm/plat-orion/pcie.c2
-rw-r--r--arch/ia64/configs/generic_defconfig218
-rw-r--r--arch/ia64/include/asm/paravirt_privop.h1
-rw-r--r--arch/ia64/kernel/topology.c4
-rw-r--r--arch/ia64/kvm/Makefile2
-rw-r--r--arch/ia64/kvm/optvfault.S11
-rw-r--r--arch/ia64/sn/kernel/irq.c9
-rw-r--r--arch/ia64/sn/kernel/setup.c9
-rw-r--r--arch/m68k/configs/amiga_defconfig126
-rw-r--r--arch/m68k/configs/apollo_defconfig115
-rw-r--r--arch/m68k/configs/atari_defconfig130
-rw-r--r--arch/m68k/configs/bvme6000_defconfig112
-rw-r--r--arch/m68k/configs/hp300_defconfig115
-rw-r--r--arch/m68k/configs/mac_defconfig125
-rw-r--r--arch/m68k/configs/multi_defconfig129
-rw-r--r--arch/m68k/configs/mvme147_defconfig112
-rw-r--r--arch/m68k/configs/mvme16x_defconfig112
-rw-r--r--arch/m68k/configs/q40_defconfig125
-rw-r--r--arch/m68k/configs/sun3_defconfig124
-rw-r--r--arch/m68k/configs/sun3x_defconfig115
-rw-r--r--arch/mips/configs/fulong_defconfig921
-rw-r--r--arch/mips/configs/ip22_defconfig518
-rw-r--r--arch/mips/configs/malta_defconfig631
-rw-r--r--arch/mips/include/asm/pci.h5
-rw-r--r--arch/mips/kernel/scall32-o32.S7
-rw-r--r--arch/mips/kernel/scall64-n32.S2
-rw-r--r--arch/mips/kernel/scall64-o32.S16
-rw-r--r--arch/mips/kernel/vpe.c2
-rw-r--r--arch/mips/mti-malta/Makefile5
-rw-r--r--arch/mips/mti-malta/malta-mtd.c63
-rw-r--r--arch/mips/mti-malta/malta-platform.c107
-rw-r--r--arch/mips/pci/pci.c24
-rw-r--r--arch/mn10300/kernel/entry.S3
-rw-r--r--arch/mn10300/kernel/gdb-io-serial.c2
-rw-r--r--arch/mn10300/kernel/mn10300-serial.c5
-rw-r--r--arch/mn10300/kernel/module.c35
-rw-r--r--arch/mn10300/kernel/setup.c2
-rw-r--r--arch/mn10300/kernel/vmlinux.lds.S22
-rw-r--r--arch/powerpc/boot/dts/mpc8349emitx.dts16
-rw-r--r--arch/powerpc/configs/83xx/mpc834x_itx_defconfig2
-rw-r--r--arch/powerpc/configs/mpc83xx_defconfig2
-rw-r--r--arch/powerpc/include/asm/kvm_ppc.h2
-rw-r--r--arch/powerpc/kernel/cpu_setup_44x.S1
-rw-r--r--arch/powerpc/kernel/cputable.c3
-rw-r--r--arch/powerpc/kernel/dma.c1
-rw-r--r--arch/powerpc/kvm/44x_tlb.c8
-rw-r--r--arch/powerpc/kvm/powerpc.c1
-rw-r--r--arch/powerpc/sysdev/mpic.c2
-rw-r--r--arch/s390/kvm/sigp.c5
-rw-r--r--arch/sparc/include/asm/bitops_32.h1
-rw-r--r--arch/sparc64/kernel/ptrace.c2
-rw-r--r--arch/sparc64/kernel/visemul.c6
-rw-r--r--arch/sparc64/lib/user_fixup.c2
-rw-r--r--arch/um/drivers/mconsole_kern.c4
-rw-r--r--arch/x86/include/asm/amd_iommu_types.h24
-rw-r--r--arch/x86/include/asm/dma-mapping.h6
-rw-r--r--arch/x86/include/asm/topology.h2
-rw-r--r--arch/x86/kernel/amd_iommu.c49
-rw-r--r--arch/x86/kernel/mpparse.c3
-rw-r--r--arch/x86/kernel/paravirt-spinlocks.c3
-rw-r--r--arch/x86/kernel/pci-gart_64.c2
-rw-r--r--arch/x86/kvm/mmu.c2
-rw-r--r--arch/x86/kvm/paging_tmpl.h1
-rw-r--r--arch/x86/kvm/vmx.c4
-rw-r--r--arch/x86/oprofile/nmi_int.c5
-rw-r--r--arch/x86/oprofile/op_model_ppro.c4
-rw-r--r--block/blk-barrier.c4
-rw-r--r--block/blk-core.c26
-rw-r--r--block/blk-map.c2
-rw-r--r--block/blk-settings.c4
-rw-r--r--block/bsg.c2
-rw-r--r--block/compat_ioctl.c31
-rw-r--r--block/elevator.c7
-rw-r--r--block/genhd.c2
-rw-r--r--block/scsi_ioctl.c2
-rw-r--r--crypto/Kconfig36
-rw-r--r--crypto/Makefile18
-rw-r--r--drivers/acpi/battery.c9
-rw-r--r--drivers/ata/Kconfig44
-rw-r--r--drivers/ata/ata_piix.c9
-rw-r--r--drivers/ata/pata_hpt366.c4
-rw-r--r--drivers/ata/pata_ninja32.c9
-rw-r--r--drivers/ata/pata_sis.c1
-rw-r--r--drivers/atm/horizon.c2
-rw-r--r--drivers/block/pktcdvd.c6
-rw-r--r--drivers/char/serial167.c2
-rw-r--r--drivers/firewire/fw-ohci.c11
-rw-r--r--drivers/firewire/fw-transaction.c3
-rw-r--r--drivers/firewire/fw-transaction.h2
-rw-r--r--drivers/gpu/drm/i915/i915_dma.c5
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h15
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c639
-rw-r--r--drivers/gpu/drm/i915/i915_gem_proc.c5
-rw-r--r--drivers/gpu/drm/i915/i915_gem_tiling.c7
-rw-r--r--drivers/gpu/drm/i915/i915_reg.h1
-rw-r--r--drivers/gpu/drm/radeon/radeon_drv.h1
-rw-r--r--drivers/gpu/drm/radeon/radeon_irq.c8
-rw-r--r--drivers/ide/Kconfig14
-rw-r--r--drivers/ide/alim15x3.c2
-rw-r--r--drivers/ide/amd74xx.c11
-rw-r--r--drivers/ide/ide-io.c24
-rw-r--r--drivers/ide/ide-iops.c9
-rw-r--r--drivers/ide/ide-probe.c3
-rw-r--r--drivers/ide/pmac.c30
-rw-r--r--drivers/ide/sgiioc4.c6
-rw-r--r--drivers/ieee1394/nodemgr.c2
-rw-r--r--drivers/input/keyboard/omap-keypad.c8
-rw-r--r--drivers/isdn/hardware/avm/b1isa.c6
-rw-r--r--drivers/isdn/hysdn/hysdn_net.c4
-rw-r--r--drivers/md/dm-table.c2
-rw-r--r--drivers/message/i2o/i2o_block.c2
-rw-r--r--drivers/message/i2o/iop.c1
-rw-r--r--drivers/misc/sgi-gru/grufault.c4
-rw-r--r--drivers/misc/sgi-gru/grufile.c2
-rw-r--r--drivers/mtd/devices/m25p80.c28
-rw-r--r--drivers/mtd/maps/physmap.c26
-rw-r--r--drivers/mtd/nand/fsl_upm.c8
-rw-r--r--drivers/mtd/nand/pasemi_nand.c1
-rw-r--r--drivers/mtd/nand/pxa3xx_nand.c1
-rw-r--r--drivers/mtd/onenand/omap2.c27
-rw-r--r--drivers/net/Makefile2
-rw-r--r--drivers/net/bnx2.c35
-rw-r--r--drivers/net/bnx2.h6
-rw-r--r--drivers/net/chelsio/sge.c4
-rw-r--r--drivers/net/e1000e/netdev.c1
-rw-r--r--drivers/net/enc28j60.c16
-rw-r--r--drivers/net/hp-plus.c2
-rw-r--r--drivers/net/igb/igb_main.c4
-rw-r--r--drivers/net/ixgbe/ixgbe_main.c1
-rw-r--r--drivers/net/macvlan.c3
-rw-r--r--drivers/net/netx-eth.c2
-rw-r--r--drivers/net/pcmcia/axnet_cs.c2
-rw-r--r--drivers/net/pcmcia/pcnet_cs.c1
-rw-r--r--drivers/net/phy/phy_device.c13
-rw-r--r--drivers/net/phy/vitesse.c64
-rw-r--r--drivers/net/pppol2tp.c1
-rw-r--r--drivers/net/sis900.c1
-rw-r--r--drivers/net/spider_net.c4
-rw-r--r--drivers/net/sungem.c2
-rw-r--r--drivers/net/wireless/ath5k/base.c35
-rw-r--r--drivers/net/wireless/ath5k/base.h1
-rw-r--r--drivers/net/wireless/ath5k/debug.c10
-rw-r--r--drivers/net/wireless/ath9k/beacon.c10
-rw-r--r--drivers/net/wireless/ath9k/recv.c19
-rw-r--r--drivers/net/wireless/ipw2200.c4
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn.c8
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-core.c3
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-sta.c24
-rw-r--r--drivers/net/wireless/zd1211rw/zd_mac.c2
-rw-r--r--drivers/pci/pcie/aspm.c29
-rw-r--r--drivers/pci/quirks.c17
-rw-r--r--drivers/pci/slot.c1
-rw-r--r--drivers/rtc/rtc-ds1672.c6
-rw-r--r--drivers/rtc/rtc-max6900.c6
-rw-r--r--drivers/rtc/rtc-starfire.c66
-rw-r--r--drivers/rtc/rtc-twl4030.c2
-rw-r--r--drivers/s390/scsi/zfcp_erp.c7
-rw-r--r--drivers/s390/scsi/zfcp_fc.c7
-rw-r--r--drivers/s390/scsi/zfcp_fsf.c20
-rw-r--r--drivers/s390/scsi/zfcp_scsi.c2
-rw-r--r--drivers/scsi/aacraid/linit.c4
-rw-r--r--drivers/scsi/ibmvscsi/ibmvscsi.c2
-rw-r--r--drivers/scsi/megaraid/megaraid_sas.c3
-rw-r--r--drivers/scsi/scsi_error.c3
-rw-r--r--drivers/scsi/scsi_lib.c23
-rw-r--r--drivers/scsi/sd.c2
-rw-r--r--drivers/scsi/sr.c2
-rw-r--r--drivers/scsi/stex.c2
-rw-r--r--drivers/serial/ioc3_serial.c6
-rw-r--r--drivers/serial/mpc52xx_uart.c4
-rw-r--r--drivers/serial/s3c2440.c2
-rw-r--r--drivers/usb/host/ohci-omap.c8
-rw-r--r--drivers/usb/serial/ftdi_sio.c2
-rw-r--r--drivers/video/aty/radeon_accel.c3
-rw-r--r--drivers/video/aty/radeon_base.c6
-rw-r--r--drivers/video/aty/radeonfb.h2
-rw-r--r--drivers/video/console/fbcon.c6
-rw-r--r--drivers/video/macfb.c74
-rw-r--r--drivers/video/mb862xx/mb862xxfb.c4
-rw-r--r--drivers/video/omap/omapfb_main.c2
-rw-r--r--drivers/watchdog/hpwdt.c5
-rw-r--r--drivers/watchdog/iTCO_vendor_support.c31
-rw-r--r--drivers/watchdog/iTCO_wdt.c164
-rw-r--r--drivers/watchdog/mtx-1_wdt.c4
-rw-r--r--fs/block_dev.c21
-rw-r--r--fs/exec.c10
-rw-r--r--fs/exportfs/expfs.c4
-rw-r--r--fs/ext4/balloc.c4
-rw-r--r--fs/fcntl.c7
-rw-r--r--fs/inotify.c2
-rw-r--r--fs/ioctl.c12
-rw-r--r--fs/lockd/host.c3
-rw-r--r--fs/lockd/svc.c1
-rw-r--r--fs/nfsd/nfs4recover.c2
-rw-r--r--fs/nfsd/nfs4state.c1
-rw-r--r--fs/proc/base.c2
-rw-r--r--fs/proc/task_mmu.c4
-rw-r--r--fs/ubifs/commit.c4
-rw-r--r--fs/ubifs/debug.c66
-rw-r--r--fs/ubifs/dir.c5
-rw-r--r--fs/ubifs/file.c91
-rw-r--r--fs/ubifs/journal.c8
-rw-r--r--fs/ubifs/key.h4
-rw-r--r--fs/ubifs/lpt_commit.c2
-rw-r--r--fs/ubifs/orphan.c28
-rw-r--r--fs/ubifs/recovery.c17
-rw-r--r--fs/ubifs/replay.c2
-rw-r--r--fs/ubifs/sb.c9
-rw-r--r--fs/ubifs/super.c70
-rw-r--r--fs/ubifs/tnc.c12
-rw-r--r--fs/ubifs/ubifs.h12
-rw-r--r--fs/xfs/xfs_rename.c2
-rw-r--r--include/asm-generic/atomic.h2
-rw-r--r--include/asm-generic/audit_write.h2
-rw-r--r--include/asm-mn10300/uaccess.h2
-rw-r--r--include/linux/audit.h6
-rw-r--r--include/linux/blkdev.h10
-rw-r--r--include/linux/can/core.h2
-rw-r--r--include/linux/fs.h33
-rw-r--r--include/linux/ftrace.h3
-rw-r--r--include/linux/ide.h8
-rw-r--r--include/linux/netfilter/x_tables.h2
-rw-r--r--include/linux/security.h12
-rw-r--r--include/net/af_unix.h1
-rw-r--r--include/net/request_sock.h1
-rw-r--r--include/net/timewait_sock.h1
-rw-r--r--include/scsi/scsi_transport_fc.h2
-rw-r--r--kernel/audit.c32
-rw-r--r--kernel/auditsc.c24
-rw-r--r--kernel/fork.c16
-rw-r--r--kernel/latencytop.c2
-rw-r--r--kernel/posix-cpu-timers.c2
-rw-r--r--kernel/power/swap.c2
-rw-r--r--kernel/relay.c7
-rw-r--r--kernel/sched.c2
-rw-r--r--kernel/softlockup.c2
-rw-r--r--kernel/time/timekeeping.c22
-rw-r--r--lib/idr.c8
-rw-r--r--lib/percpu_counter.c7
-rw-r--r--mm/backing-dev.c3
-rw-r--r--mm/migrate.c59
-rw-r--r--mm/page_cgroup.c3
-rw-r--r--mm/slub.c2
-rw-r--r--mm/swap.c20
-rw-r--r--mm/vmalloc.c2
-rw-r--r--net/atm/svc.c6
-rw-r--r--net/bridge/br_netfilter.c13
-rw-r--r--net/can/af_can.c68
-rw-r--r--net/can/bcm.c7
-rw-r--r--net/core/skbuff.c2
-rw-r--r--net/core/sock.c31
-rw-r--r--net/ipv4/tcp_output.c15
-rw-r--r--net/ipv4/tcp_vegas.c2
-rw-r--r--net/mac80211/sta_info.c2
-rw-r--r--net/mac80211/wext.c8
-rw-r--r--net/netfilter/nf_conntrack_core.c2
-rw-r--r--net/netfilter/nf_conntrack_netlink.c7
-rw-r--r--net/netfilter/xt_socket.c2
-rw-r--r--net/netlabel/netlabel_unlabeled.c10
-rw-r--r--net/phonet/pn_dev.c2
-rw-r--r--net/phonet/pn_netlink.c3
-rw-r--r--net/rose/af_rose.c10
-rw-r--r--net/sunrpc/svcsock.c9
-rw-r--r--net/unix/af_unix.c2
-rw-r--r--net/unix/garbage.c13
-rw-r--r--net/wireless/reg.c4
-rw-r--r--net/xfrm/xfrm_policy.c1
321 files changed, 6891 insertions, 3241 deletions
diff --git a/Documentation/local_ops.txt b/Documentation/local_ops.txt
index f4f8b1c6c8ba..23045b8b50f0 100644
--- a/Documentation/local_ops.txt
+++ b/Documentation/local_ops.txt
@@ -149,7 +149,7 @@ static void do_test_timer(unsigned long data)
149 int cpu; 149 int cpu;
150 150
151 /* Increment the counters */ 151 /* Increment the counters */
152 on_each_cpu(test_each, NULL, 0, 1); 152 on_each_cpu(test_each, NULL, 1);
153 /* Read all the counters */ 153 /* Read all the counters */
154 printk("Counters read from CPU %d\n", smp_processor_id()); 154 printk("Counters read from CPU %d\n", smp_processor_id());
155 for_each_online_cpu(cpu) { 155 for_each_online_cpu(cpu) {
diff --git a/MAINTAINERS b/MAINTAINERS
index 618c1ef4a397..24741de12a39 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -779,6 +779,7 @@ ATM
779P: Chas Williams 779P: Chas Williams
780M: chas@cmf.nrl.navy.mil 780M: chas@cmf.nrl.navy.mil
781L: linux-atm-general@lists.sourceforge.net (subscribers-only) 781L: linux-atm-general@lists.sourceforge.net (subscribers-only)
782L: netdev@vger.kernel.org
782W: http://linux-atm.sourceforge.net 783W: http://linux-atm.sourceforge.net
783S: Maintained 784S: Maintained
784 785
@@ -3758,6 +3759,15 @@ M: drzeus-sdhci@drzeus.cx
3758L: sdhci-devel@list.drzeus.cx 3759L: sdhci-devel@list.drzeus.cx
3759S: Maintained 3760S: Maintained
3760 3761
3762SECURITY SUBSYSTEM
3763F: security/
3764P: James Morris
3765M: jmorris@namei.org
3766L: linux-kernel@vger.kernel.org
3767L: linux-security-module@vger.kernel.org (suggested Cc:)
3768T: git kernel.org:pub/scm/linux/kernel/git/jmorris/security-testing-2.6.git
3769S: Supported
3770
3761SECURITY CONTACT 3771SECURITY CONTACT
3762P: Security Officers 3772P: Security Officers
3763M: security@kernel.org 3773M: security@kernel.org
@@ -4235,7 +4245,7 @@ M: dedekind@infradead.org
4235P: Adrian Hunter 4245P: Adrian Hunter
4236M: ext-adrian.hunter@nokia.com 4246M: ext-adrian.hunter@nokia.com
4237L: linux-mtd@lists.infradead.org 4247L: linux-mtd@lists.infradead.org
4238T: git git://git.infradead.org/~dedekind/ubifs-2.6.git 4248T: git git://git.infradead.org/ubifs-2.6.git
4239W: http://www.linux-mtd.infradead.org/doc/ubifs.html 4249W: http://www.linux-mtd.infradead.org/doc/ubifs.html
4240S: Maintained 4250S: Maintained
4241 4251
@@ -4289,7 +4299,7 @@ P: Artem Bityutskiy
4289M: dedekind@infradead.org 4299M: dedekind@infradead.org
4290W: http://www.linux-mtd.infradead.org/ 4300W: http://www.linux-mtd.infradead.org/
4291L: linux-mtd@lists.infradead.org 4301L: linux-mtd@lists.infradead.org
4292T: git git://git.infradead.org/~dedekind/ubi-2.6.git 4302T: git git://git.infradead.org/ubi-2.6.git
4293S: Maintained 4303S: Maintained
4294 4304
4295USB ACM DRIVER 4305USB ACM DRIVER
diff --git a/Makefile b/Makefile
index 9a49960f7aad..6c2f51b70454 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
1VERSION = 2 1VERSION = 2
2PATCHLEVEL = 6 2PATCHLEVEL = 6
3SUBLEVEL = 28 3SUBLEVEL = 28
4EXTRAVERSION = -rc7 4EXTRAVERSION = -rc8
5NAME = Erotic Pickled Herring 5NAME = Erotic Pickled Herring
6 6
7# *DOCUMENTATION* 7# *DOCUMENTATION*
diff --git a/arch/arm/configs/omap3_pandora_defconfig b/arch/arm/configs/omap3_pandora_defconfig
new file mode 100644
index 000000000000..09543f4de5bc
--- /dev/null
+++ b/arch/arm/configs/omap3_pandora_defconfig
@@ -0,0 +1,1409 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.28-rc7
4# Fri Dec 5 11:54:09 2008
5#
6CONFIG_ARM=y
7CONFIG_SYS_SUPPORTS_APM_EMULATION=y
8CONFIG_GENERIC_GPIO=y
9CONFIG_GENERIC_TIME=y
10CONFIG_GENERIC_CLOCKEVENTS=y
11CONFIG_MMU=y
12# CONFIG_NO_IOPORT is not set
13CONFIG_GENERIC_HARDIRQS=y
14CONFIG_STACKTRACE_SUPPORT=y
15CONFIG_HAVE_LATENCYTOP_SUPPORT=y
16CONFIG_LOCKDEP_SUPPORT=y
17CONFIG_TRACE_IRQFLAGS_SUPPORT=y
18CONFIG_HARDIRQS_SW_RESEND=y
19CONFIG_GENERIC_IRQ_PROBE=y
20CONFIG_RWSEM_GENERIC_SPINLOCK=y
21# CONFIG_ARCH_HAS_ILOG2_U32 is not set
22# CONFIG_ARCH_HAS_ILOG2_U64 is not set
23CONFIG_GENERIC_HWEIGHT=y
24CONFIG_GENERIC_CALIBRATE_DELAY=y
25CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
26CONFIG_VECTORS_BASE=0xffff0000
27CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
28
29#
30# General setup
31#
32CONFIG_EXPERIMENTAL=y
33CONFIG_BROKEN_ON_SMP=y
34CONFIG_INIT_ENV_ARG_LIMIT=32
35CONFIG_LOCALVERSION=""
36CONFIG_LOCALVERSION_AUTO=y
37CONFIG_SWAP=y
38CONFIG_SYSVIPC=y
39CONFIG_SYSVIPC_SYSCTL=y
40# CONFIG_POSIX_MQUEUE is not set
41CONFIG_BSD_PROCESS_ACCT=y
42# CONFIG_BSD_PROCESS_ACCT_V3 is not set
43# CONFIG_TASKSTATS is not set
44# CONFIG_AUDIT is not set
45CONFIG_IKCONFIG=y
46CONFIG_IKCONFIG_PROC=y
47CONFIG_LOG_BUF_SHIFT=14
48# CONFIG_CGROUPS is not set
49CONFIG_GROUP_SCHED=y
50CONFIG_FAIR_GROUP_SCHED=y
51# CONFIG_RT_GROUP_SCHED is not set
52CONFIG_USER_SCHED=y
53# CONFIG_CGROUP_SCHED is not set
54CONFIG_SYSFS_DEPRECATED=y
55CONFIG_SYSFS_DEPRECATED_V2=y
56# CONFIG_RELAY is not set
57# CONFIG_NAMESPACES is not set
58CONFIG_BLK_DEV_INITRD=y
59CONFIG_INITRAMFS_SOURCE=""
60CONFIG_CC_OPTIMIZE_FOR_SIZE=y
61CONFIG_SYSCTL=y
62CONFIG_EMBEDDED=y
63CONFIG_UID16=y
64# CONFIG_SYSCTL_SYSCALL is not set
65CONFIG_KALLSYMS=y
66# CONFIG_KALLSYMS_ALL is not set
67CONFIG_KALLSYMS_EXTRA_PASS=y
68CONFIG_HOTPLUG=y
69CONFIG_PRINTK=y
70CONFIG_BUG=y
71CONFIG_ELF_CORE=y
72CONFIG_COMPAT_BRK=y
73CONFIG_BASE_FULL=y
74CONFIG_FUTEX=y
75CONFIG_ANON_INODES=y
76CONFIG_EPOLL=y
77CONFIG_SIGNALFD=y
78CONFIG_TIMERFD=y
79CONFIG_EVENTFD=y
80CONFIG_SHMEM=y
81CONFIG_AIO=y
82CONFIG_VM_EVENT_COUNTERS=y
83CONFIG_SLAB=y
84# CONFIG_SLUB is not set
85# CONFIG_SLOB is not set
86# CONFIG_PROFILING is not set
87# CONFIG_MARKERS is not set
88CONFIG_HAVE_OPROFILE=y
89# CONFIG_KPROBES is not set
90CONFIG_HAVE_KPROBES=y
91CONFIG_HAVE_KRETPROBES=y
92CONFIG_HAVE_CLK=y
93CONFIG_HAVE_GENERIC_DMA_COHERENT=y
94CONFIG_SLABINFO=y
95CONFIG_RT_MUTEXES=y
96# CONFIG_TINY_SHMEM is not set
97CONFIG_BASE_SMALL=0
98CONFIG_MODULES=y
99# CONFIG_MODULE_FORCE_LOAD is not set
100CONFIG_MODULE_UNLOAD=y
101# CONFIG_MODULE_FORCE_UNLOAD is not set
102CONFIG_MODVERSIONS=y
103CONFIG_MODULE_SRCVERSION_ALL=y
104CONFIG_KMOD=y
105CONFIG_BLOCK=y
106# CONFIG_LBD is not set
107# CONFIG_BLK_DEV_IO_TRACE is not set
108# CONFIG_LSF is not set
109# CONFIG_BLK_DEV_BSG is not set
110# CONFIG_BLK_DEV_INTEGRITY is not set
111
112#
113# IO Schedulers
114#
115CONFIG_IOSCHED_NOOP=y
116CONFIG_IOSCHED_AS=y
117CONFIG_IOSCHED_DEADLINE=y
118CONFIG_IOSCHED_CFQ=y
119CONFIG_DEFAULT_AS=y
120# CONFIG_DEFAULT_DEADLINE is not set
121# CONFIG_DEFAULT_CFQ is not set
122# CONFIG_DEFAULT_NOOP is not set
123CONFIG_DEFAULT_IOSCHED="anticipatory"
124CONFIG_CLASSIC_RCU=y
125# CONFIG_FREEZER is not set
126
127#
128# System Type
129#
130# CONFIG_ARCH_AAEC2000 is not set
131# CONFIG_ARCH_INTEGRATOR is not set
132# CONFIG_ARCH_REALVIEW is not set
133# CONFIG_ARCH_VERSATILE is not set
134# CONFIG_ARCH_AT91 is not set
135# CONFIG_ARCH_CLPS7500 is not set
136# CONFIG_ARCH_CLPS711X is not set
137# CONFIG_ARCH_EBSA110 is not set
138# CONFIG_ARCH_EP93XX is not set
139# CONFIG_ARCH_FOOTBRIDGE is not set
140# CONFIG_ARCH_NETX is not set
141# CONFIG_ARCH_H720X is not set
142# CONFIG_ARCH_IMX is not set
143# CONFIG_ARCH_IOP13XX is not set
144# CONFIG_ARCH_IOP32X is not set
145# CONFIG_ARCH_IOP33X is not set
146# CONFIG_ARCH_IXP23XX is not set
147# CONFIG_ARCH_IXP2000 is not set
148# CONFIG_ARCH_IXP4XX is not set
149# CONFIG_ARCH_L7200 is not set
150# CONFIG_ARCH_KIRKWOOD is not set
151# CONFIG_ARCH_KS8695 is not set
152# CONFIG_ARCH_NS9XXX is not set
153# CONFIG_ARCH_LOKI is not set
154# CONFIG_ARCH_MV78XX0 is not set
155# CONFIG_ARCH_MXC is not set
156# CONFIG_ARCH_ORION5X is not set
157# CONFIG_ARCH_PNX4008 is not set
158# CONFIG_ARCH_PXA is not set
159# CONFIG_ARCH_RPC is not set
160# CONFIG_ARCH_SA1100 is not set
161# CONFIG_ARCH_S3C2410 is not set
162# CONFIG_ARCH_SHARK is not set
163# CONFIG_ARCH_LH7A40X is not set
164# CONFIG_ARCH_DAVINCI is not set
165CONFIG_ARCH_OMAP=y
166# CONFIG_ARCH_MSM is not set
167
168#
169# TI OMAP Implementations
170#
171CONFIG_ARCH_OMAP_OTG=y
172# CONFIG_ARCH_OMAP1 is not set
173# CONFIG_ARCH_OMAP2 is not set
174CONFIG_ARCH_OMAP3=y
175
176#
177# OMAP Feature Selections
178#
179# CONFIG_OMAP_DEBUG_POWERDOMAIN is not set
180# CONFIG_OMAP_DEBUG_CLOCKDOMAIN is not set
181# CONFIG_OMAP_RESET_CLOCKS is not set
182# CONFIG_OMAP_MUX is not set
183CONFIG_OMAP_MCBSP=y
184# CONFIG_OMAP_MPU_TIMER is not set
185CONFIG_OMAP_32K_TIMER=y
186CONFIG_OMAP_32K_TIMER_HZ=128
187CONFIG_OMAP_DM_TIMER=y
188# CONFIG_OMAP_LL_DEBUG_UART1 is not set
189# CONFIG_OMAP_LL_DEBUG_UART2 is not set
190CONFIG_OMAP_LL_DEBUG_UART3=y
191CONFIG_ARCH_OMAP34XX=y
192CONFIG_ARCH_OMAP3430=y
193
194#
195# OMAP Board Type
196#
197# CONFIG_MACH_OMAP3_BEAGLE is not set
198# CONFIG_MACH_OMAP_LDP is not set
199# CONFIG_MACH_OVERO is not set
200CONFIG_MACH_OMAP3_PANDORA=y
201
202#
203# Boot options
204#
205
206#
207# Power management
208#
209
210#
211# Processor Type
212#
213CONFIG_CPU_32=y
214CONFIG_CPU_32v6K=y
215CONFIG_CPU_V7=y
216CONFIG_CPU_32v7=y
217CONFIG_CPU_ABRT_EV7=y
218CONFIG_CPU_PABRT_IFAR=y
219CONFIG_CPU_CACHE_V7=y
220CONFIG_CPU_CACHE_VIPT=y
221CONFIG_CPU_COPY_V6=y
222CONFIG_CPU_TLB_V7=y
223CONFIG_CPU_HAS_ASID=y
224CONFIG_CPU_CP15=y
225CONFIG_CPU_CP15_MMU=y
226
227#
228# Processor Features
229#
230CONFIG_ARM_THUMB=y
231CONFIG_ARM_THUMBEE=y
232# CONFIG_CPU_ICACHE_DISABLE is not set
233# CONFIG_CPU_DCACHE_DISABLE is not set
234# CONFIG_CPU_BPREDICT_DISABLE is not set
235CONFIG_HAS_TLS_REG=y
236# CONFIG_OUTER_CACHE is not set
237
238#
239# Bus support
240#
241# CONFIG_PCI_SYSCALL is not set
242# CONFIG_ARCH_SUPPORTS_MSI is not set
243# CONFIG_PCCARD is not set
244
245#
246# Kernel Features
247#
248CONFIG_TICK_ONESHOT=y
249CONFIG_NO_HZ=y
250CONFIG_HIGH_RES_TIMERS=y
251CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
252CONFIG_VMSPLIT_3G=y
253# CONFIG_VMSPLIT_2G is not set
254# CONFIG_VMSPLIT_1G is not set
255CONFIG_PAGE_OFFSET=0xC0000000
256# CONFIG_PREEMPT is not set
257CONFIG_HZ=128
258CONFIG_AEABI=y
259CONFIG_OABI_COMPAT=y
260CONFIG_ARCH_FLATMEM_HAS_HOLES=y
261# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
262# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
263CONFIG_SELECT_MEMORY_MODEL=y
264CONFIG_FLATMEM_MANUAL=y
265# CONFIG_DISCONTIGMEM_MANUAL is not set
266# CONFIG_SPARSEMEM_MANUAL is not set
267CONFIG_FLATMEM=y
268CONFIG_FLAT_NODE_MEM_MAP=y
269CONFIG_PAGEFLAGS_EXTENDED=y
270CONFIG_SPLIT_PTLOCK_CPUS=4
271# CONFIG_RESOURCES_64BIT is not set
272# CONFIG_PHYS_ADDR_T_64BIT is not set
273CONFIG_ZONE_DMA_FLAG=0
274CONFIG_VIRT_TO_BUS=y
275CONFIG_UNEVICTABLE_LRU=y
276# CONFIG_LEDS is not set
277CONFIG_ALIGNMENT_TRAP=y
278
279#
280# Boot options
281#
282CONFIG_ZBOOT_ROM_TEXT=0x0
283CONFIG_ZBOOT_ROM_BSS=0x0
284CONFIG_CMDLINE=" debug "
285# CONFIG_XIP_KERNEL is not set
286# CONFIG_KEXEC is not set
287
288#
289# CPU Power Management
290#
291# CONFIG_CPU_FREQ is not set
292# CONFIG_CPU_IDLE is not set
293
294#
295# Floating point emulation
296#
297
298#
299# At least one emulation must be selected
300#
301CONFIG_FPE_NWFPE=y
302# CONFIG_FPE_NWFPE_XP is not set
303# CONFIG_FPE_FASTFPE is not set
304CONFIG_VFP=y
305CONFIG_VFPv3=y
306CONFIG_NEON=y
307
308#
309# Userspace binary formats
310#
311CONFIG_BINFMT_ELF=y
312# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
313CONFIG_HAVE_AOUT=y
314# CONFIG_BINFMT_AOUT is not set
315CONFIG_BINFMT_MISC=y
316
317#
318# Power management options
319#
320# CONFIG_PM is not set
321CONFIG_ARCH_SUSPEND_POSSIBLE=y
322CONFIG_NET=y
323
324#
325# Networking options
326#
327CONFIG_PACKET=y
328# CONFIG_PACKET_MMAP is not set
329CONFIG_UNIX=y
330CONFIG_XFRM=y
331# CONFIG_XFRM_USER is not set
332# CONFIG_XFRM_SUB_POLICY is not set
333# CONFIG_XFRM_MIGRATE is not set
334# CONFIG_XFRM_STATISTICS is not set
335CONFIG_NET_KEY=y
336# CONFIG_NET_KEY_MIGRATE is not set
337CONFIG_INET=y
338# CONFIG_IP_MULTICAST is not set
339# CONFIG_IP_ADVANCED_ROUTER is not set
340CONFIG_IP_FIB_HASH=y
341CONFIG_IP_PNP=y
342CONFIG_IP_PNP_DHCP=y
343CONFIG_IP_PNP_BOOTP=y
344CONFIG_IP_PNP_RARP=y
345# CONFIG_NET_IPIP is not set
346# CONFIG_NET_IPGRE is not set
347# CONFIG_ARPD is not set
348# CONFIG_SYN_COOKIES is not set
349# CONFIG_INET_AH is not set
350# CONFIG_INET_ESP is not set
351# CONFIG_INET_IPCOMP is not set
352# CONFIG_INET_XFRM_TUNNEL is not set
353# CONFIG_INET_TUNNEL is not set
354CONFIG_INET_XFRM_MODE_TRANSPORT=y
355CONFIG_INET_XFRM_MODE_TUNNEL=y
356CONFIG_INET_XFRM_MODE_BEET=y
357# CONFIG_INET_LRO is not set
358CONFIG_INET_DIAG=y
359CONFIG_INET_TCP_DIAG=y
360# CONFIG_TCP_CONG_ADVANCED is not set
361CONFIG_TCP_CONG_CUBIC=y
362CONFIG_DEFAULT_TCP_CONG="cubic"
363# CONFIG_TCP_MD5SIG is not set
364# CONFIG_IPV6 is not set
365# CONFIG_NETWORK_SECMARK is not set
366# CONFIG_NETFILTER is not set
367# CONFIG_IP_DCCP is not set
368# CONFIG_IP_SCTP is not set
369# CONFIG_TIPC is not set
370# CONFIG_ATM is not set
371# CONFIG_BRIDGE is not set
372# CONFIG_NET_DSA is not set
373# CONFIG_VLAN_8021Q is not set
374# CONFIG_DECNET is not set
375# CONFIG_LLC2 is not set
376# CONFIG_IPX is not set
377# CONFIG_ATALK is not set
378# CONFIG_X25 is not set
379# CONFIG_LAPB is not set
380# CONFIG_ECONET is not set
381# CONFIG_WAN_ROUTER is not set
382# CONFIG_NET_SCHED is not set
383
384#
385# Network testing
386#
387# CONFIG_NET_PKTGEN is not set
388# CONFIG_HAMRADIO is not set
389# CONFIG_CAN is not set
390# CONFIG_IRDA is not set
391# CONFIG_BT is not set
392# CONFIG_AF_RXRPC is not set
393# CONFIG_PHONET is not set
394# CONFIG_WIRELESS is not set
395# CONFIG_RFKILL is not set
396# CONFIG_NET_9P is not set
397
398#
399# Device Drivers
400#
401
402#
403# Generic Driver Options
404#
405CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
406CONFIG_STANDALONE=y
407CONFIG_PREVENT_FIRMWARE_BUILD=y
408# CONFIG_FW_LOADER is not set
409# CONFIG_DEBUG_DRIVER is not set
410# CONFIG_DEBUG_DEVRES is not set
411# CONFIG_SYS_HYPERVISOR is not set
412# CONFIG_CONNECTOR is not set
413CONFIG_MTD=y
414# CONFIG_MTD_DEBUG is not set
415# CONFIG_MTD_CONCAT is not set
416CONFIG_MTD_PARTITIONS=y
417# CONFIG_MTD_REDBOOT_PARTS is not set
418# CONFIG_MTD_CMDLINE_PARTS is not set
419# CONFIG_MTD_AFS_PARTS is not set
420# CONFIG_MTD_AR7_PARTS is not set
421
422#
423# User Modules And Translation Layers
424#
425CONFIG_MTD_CHAR=y
426CONFIG_MTD_BLKDEVS=y
427CONFIG_MTD_BLOCK=y
428# CONFIG_FTL is not set
429# CONFIG_NFTL is not set
430# CONFIG_INFTL is not set
431# CONFIG_RFD_FTL is not set
432# CONFIG_SSFDC is not set
433# CONFIG_MTD_OOPS is not set
434
435#
436# RAM/ROM/Flash chip drivers
437#
438# CONFIG_MTD_CFI is not set
439# CONFIG_MTD_JEDECPROBE is not set
440CONFIG_MTD_MAP_BANK_WIDTH_1=y
441CONFIG_MTD_MAP_BANK_WIDTH_2=y
442CONFIG_MTD_MAP_BANK_WIDTH_4=y
443# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
444# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
445# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
446CONFIG_MTD_CFI_I1=y
447CONFIG_MTD_CFI_I2=y
448# CONFIG_MTD_CFI_I4 is not set
449# CONFIG_MTD_CFI_I8 is not set
450# CONFIG_MTD_RAM is not set
451# CONFIG_MTD_ROM is not set
452# CONFIG_MTD_ABSENT is not set
453
454#
455# Mapping drivers for chip access
456#
457# CONFIG_MTD_COMPLEX_MAPPINGS is not set
458# CONFIG_MTD_PLATRAM is not set
459
460#
461# Self-contained MTD device drivers
462#
463# CONFIG_MTD_DATAFLASH is not set
464# CONFIG_MTD_M25P80 is not set
465# CONFIG_MTD_SLRAM is not set
466# CONFIG_MTD_PHRAM is not set
467# CONFIG_MTD_MTDRAM is not set
468# CONFIG_MTD_BLOCK2MTD is not set
469
470#
471# Disk-On-Chip Device Drivers
472#
473# CONFIG_MTD_DOC2000 is not set
474# CONFIG_MTD_DOC2001 is not set
475# CONFIG_MTD_DOC2001PLUS is not set
476CONFIG_MTD_NAND=y
477# CONFIG_MTD_NAND_VERIFY_WRITE is not set
478# CONFIG_MTD_NAND_ECC_SMC is not set
479# CONFIG_MTD_NAND_MUSEUM_IDS is not set
480# CONFIG_MTD_NAND_GPIO is not set
481CONFIG_MTD_NAND_IDS=y
482# CONFIG_MTD_NAND_DISKONCHIP is not set
483# CONFIG_MTD_NAND_NANDSIM is not set
484# CONFIG_MTD_NAND_PLATFORM is not set
485# CONFIG_MTD_ALAUDA is not set
486# CONFIG_MTD_ONENAND is not set
487
488#
489# UBI - Unsorted block images
490#
491# CONFIG_MTD_UBI is not set
492# CONFIG_PARPORT is not set
493CONFIG_BLK_DEV=y
494# CONFIG_BLK_DEV_COW_COMMON is not set
495CONFIG_BLK_DEV_LOOP=y
496# CONFIG_BLK_DEV_CRYPTOLOOP is not set
497# CONFIG_BLK_DEV_NBD is not set
498# CONFIG_BLK_DEV_UB is not set
499CONFIG_BLK_DEV_RAM=y
500CONFIG_BLK_DEV_RAM_COUNT=16
501CONFIG_BLK_DEV_RAM_SIZE=16384
502# CONFIG_BLK_DEV_XIP is not set
503# CONFIG_CDROM_PKTCDVD is not set
504# CONFIG_ATA_OVER_ETH is not set
505# CONFIG_MISC_DEVICES is not set
506CONFIG_HAVE_IDE=y
507# CONFIG_IDE is not set
508
509#
510# SCSI device support
511#
512# CONFIG_RAID_ATTRS is not set
513CONFIG_SCSI=y
514CONFIG_SCSI_DMA=y
515# CONFIG_SCSI_TGT is not set
516# CONFIG_SCSI_NETLINK is not set
517CONFIG_SCSI_PROC_FS=y
518
519#
520# SCSI support type (disk, tape, CD-ROM)
521#
522CONFIG_BLK_DEV_SD=y
523# CONFIG_CHR_DEV_ST is not set
524# CONFIG_CHR_DEV_OSST is not set
525# CONFIG_BLK_DEV_SR is not set
526# CONFIG_CHR_DEV_SG is not set
527# CONFIG_CHR_DEV_SCH is not set
528
529#
530# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
531#
532# CONFIG_SCSI_MULTI_LUN is not set
533# CONFIG_SCSI_CONSTANTS is not set
534# CONFIG_SCSI_LOGGING is not set
535# CONFIG_SCSI_SCAN_ASYNC is not set
536CONFIG_SCSI_WAIT_SCAN=m
537
538#
539# SCSI Transports
540#
541# CONFIG_SCSI_SPI_ATTRS is not set
542# CONFIG_SCSI_FC_ATTRS is not set
543# CONFIG_SCSI_ISCSI_ATTRS is not set
544# CONFIG_SCSI_SAS_LIBSAS is not set
545# CONFIG_SCSI_SRP_ATTRS is not set
546CONFIG_SCSI_LOWLEVEL=y
547# CONFIG_ISCSI_TCP is not set
548# CONFIG_SCSI_DEBUG is not set
549# CONFIG_SCSI_DH is not set
550# CONFIG_ATA is not set
551# CONFIG_MD is not set
552CONFIG_NETDEVICES=y
553# CONFIG_DUMMY is not set
554# CONFIG_BONDING is not set
555# CONFIG_MACVLAN is not set
556# CONFIG_EQUALIZER is not set
557# CONFIG_TUN is not set
558# CONFIG_VETH is not set
559# CONFIG_NET_ETHERNET is not set
560# CONFIG_NETDEV_1000 is not set
561# CONFIG_NETDEV_10000 is not set
562
563#
564# Wireless LAN
565#
566# CONFIG_WLAN_PRE80211 is not set
567# CONFIG_WLAN_80211 is not set
568# CONFIG_IWLWIFI_LEDS is not set
569
570#
571# USB Network Adapters
572#
573# CONFIG_USB_CATC is not set
574# CONFIG_USB_KAWETH is not set
575# CONFIG_USB_PEGASUS is not set
576# CONFIG_USB_RTL8150 is not set
577# CONFIG_USB_USBNET is not set
578# CONFIG_WAN is not set
579# CONFIG_PPP is not set
580# CONFIG_SLIP is not set
581# CONFIG_NETCONSOLE is not set
582# CONFIG_NETPOLL is not set
583# CONFIG_NET_POLL_CONTROLLER is not set
584# CONFIG_ISDN is not set
585
586#
587# Input device support
588#
589CONFIG_INPUT=y
590# CONFIG_INPUT_FF_MEMLESS is not set
591# CONFIG_INPUT_POLLDEV is not set
592
593#
594# Userland interfaces
595#
596CONFIG_INPUT_MOUSEDEV=y
597CONFIG_INPUT_MOUSEDEV_PSAUX=y
598CONFIG_INPUT_MOUSEDEV_SCREEN_X=800
599CONFIG_INPUT_MOUSEDEV_SCREEN_Y=480
600CONFIG_INPUT_JOYDEV=y
601CONFIG_INPUT_EVDEV=y
602# CONFIG_INPUT_EVBUG is not set
603
604#
605# Input Device Drivers
606#
607CONFIG_INPUT_KEYBOARD=y
608# CONFIG_KEYBOARD_ATKBD is not set
609# CONFIG_KEYBOARD_SUNKBD is not set
610# CONFIG_KEYBOARD_LKKBD is not set
611# CONFIG_KEYBOARD_XTKBD is not set
612# CONFIG_KEYBOARD_NEWTON is not set
613# CONFIG_KEYBOARD_STOWAWAY is not set
614# CONFIG_KEYBOARD_GPIO is not set
615CONFIG_INPUT_MOUSE=y
616# CONFIG_MOUSE_PS2 is not set
617# CONFIG_MOUSE_SERIAL is not set
618# CONFIG_MOUSE_APPLETOUCH is not set
619# CONFIG_MOUSE_BCM5974 is not set
620# CONFIG_MOUSE_VSXXXAA is not set
621# CONFIG_MOUSE_GPIO is not set
622# CONFIG_INPUT_JOYSTICK is not set
623# CONFIG_INPUT_TABLET is not set
624CONFIG_INPUT_TOUCHSCREEN=y
625CONFIG_TOUCHSCREEN_ADS7846=y
626# CONFIG_TOUCHSCREEN_FUJITSU is not set
627# CONFIG_TOUCHSCREEN_GUNZE is not set
628# CONFIG_TOUCHSCREEN_ELO is not set
629# CONFIG_TOUCHSCREEN_MTOUCH is not set
630# CONFIG_TOUCHSCREEN_INEXIO is not set
631# CONFIG_TOUCHSCREEN_MK712 is not set
632# CONFIG_TOUCHSCREEN_PENMOUNT is not set
633# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
634# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
635# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
636# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
637# CONFIG_INPUT_MISC is not set
638
639#
640# Hardware I/O ports
641#
642# CONFIG_SERIO is not set
643# CONFIG_GAMEPORT is not set
644
645#
646# Character devices
647#
648CONFIG_VT=y
649CONFIG_CONSOLE_TRANSLATIONS=y
650CONFIG_VT_CONSOLE=y
651CONFIG_HW_CONSOLE=y
652# CONFIG_VT_HW_CONSOLE_BINDING is not set
653CONFIG_DEVKMEM=y
654# CONFIG_SERIAL_NONSTANDARD is not set
655
656#
657# Serial drivers
658#
659CONFIG_SERIAL_8250=y
660CONFIG_SERIAL_8250_CONSOLE=y
661CONFIG_SERIAL_8250_NR_UARTS=32
662CONFIG_SERIAL_8250_RUNTIME_UARTS=4
663CONFIG_SERIAL_8250_EXTENDED=y
664CONFIG_SERIAL_8250_MANY_PORTS=y
665CONFIG_SERIAL_8250_SHARE_IRQ=y
666CONFIG_SERIAL_8250_DETECT_IRQ=y
667CONFIG_SERIAL_8250_RSA=y
668
669#
670# Non-8250 serial port support
671#
672CONFIG_SERIAL_CORE=y
673CONFIG_SERIAL_CORE_CONSOLE=y
674CONFIG_UNIX98_PTYS=y
675# CONFIG_LEGACY_PTYS is not set
676# CONFIG_IPMI_HANDLER is not set
677CONFIG_HW_RANDOM=y
678# CONFIG_NVRAM is not set
679# CONFIG_R3964 is not set
680# CONFIG_RAW_DRIVER is not set
681# CONFIG_TCG_TPM is not set
682CONFIG_I2C=y
683CONFIG_I2C_BOARDINFO=y
684CONFIG_I2C_CHARDEV=y
685CONFIG_I2C_HELPER_AUTO=y
686
687#
688# I2C Hardware Bus support
689#
690
691#
692# I2C system bus drivers (mostly embedded / system-on-chip)
693#
694# CONFIG_I2C_GPIO is not set
695# CONFIG_I2C_OCORES is not set
696CONFIG_I2C_OMAP=y
697# CONFIG_I2C_SIMTEC is not set
698
699#
700# External I2C/SMBus adapter drivers
701#
702# CONFIG_I2C_PARPORT_LIGHT is not set
703# CONFIG_I2C_TAOS_EVM is not set
704# CONFIG_I2C_TINY_USB is not set
705
706#
707# Other I2C/SMBus bus drivers
708#
709# CONFIG_I2C_PCA_PLATFORM is not set
710# CONFIG_I2C_STUB is not set
711
712#
713# Miscellaneous I2C Chip support
714#
715# CONFIG_DS1682 is not set
716# CONFIG_AT24 is not set
717# CONFIG_SENSORS_EEPROM is not set
718# CONFIG_SENSORS_PCF8574 is not set
719# CONFIG_PCF8575 is not set
720# CONFIG_SENSORS_PCA9539 is not set
721# CONFIG_SENSORS_PCF8591 is not set
722# CONFIG_ISP1301_OMAP is not set
723# CONFIG_TPS65010 is not set
724# CONFIG_SENSORS_MAX6875 is not set
725# CONFIG_SENSORS_TSL2550 is not set
726# CONFIG_I2C_DEBUG_CORE is not set
727# CONFIG_I2C_DEBUG_ALGO is not set
728# CONFIG_I2C_DEBUG_BUS is not set
729# CONFIG_I2C_DEBUG_CHIP is not set
730CONFIG_SPI=y
731# CONFIG_SPI_DEBUG is not set
732CONFIG_SPI_MASTER=y
733
734#
735# SPI Master Controller Drivers
736#
737# CONFIG_SPI_BITBANG is not set
738CONFIG_SPI_OMAP24XX=y
739
740#
741# SPI Protocol Masters
742#
743# CONFIG_SPI_AT25 is not set
744# CONFIG_SPI_SPIDEV is not set
745# CONFIG_SPI_TLE62X0 is not set
746CONFIG_ARCH_REQUIRE_GPIOLIB=y
747CONFIG_GPIOLIB=y
748# CONFIG_DEBUG_GPIO is not set
749# CONFIG_GPIO_SYSFS is not set
750
751#
752# Memory mapped GPIO expanders:
753#
754
755#
756# I2C GPIO expanders:
757#
758# CONFIG_GPIO_MAX732X is not set
759# CONFIG_GPIO_PCA953X is not set
760# CONFIG_GPIO_PCF857X is not set
761CONFIG_GPIO_TWL4030=y
762
763#
764# PCI GPIO expanders:
765#
766
767#
768# SPI GPIO expanders:
769#
770# CONFIG_GPIO_MAX7301 is not set
771# CONFIG_GPIO_MCP23S08 is not set
772# CONFIG_W1 is not set
773# CONFIG_POWER_SUPPLY is not set
774# CONFIG_HWMON is not set
775# CONFIG_THERMAL is not set
776# CONFIG_THERMAL_HWMON is not set
777# CONFIG_WATCHDOG is not set
778CONFIG_SSB_POSSIBLE=y
779
780#
781# Sonics Silicon Backplane
782#
783# CONFIG_SSB is not set
784
785#
786# Multifunction device drivers
787#
788# CONFIG_MFD_CORE is not set
789# CONFIG_MFD_SM501 is not set
790# CONFIG_MFD_ASIC3 is not set
791# CONFIG_HTC_EGPIO is not set
792# CONFIG_HTC_PASIC3 is not set
793CONFIG_TWL4030_CORE=y
794# CONFIG_MFD_TMIO is not set
795# CONFIG_MFD_T7L66XB is not set
796# CONFIG_MFD_TC6387XB is not set
797# CONFIG_MFD_TC6393XB is not set
798# CONFIG_PMIC_DA903X is not set
799# CONFIG_MFD_WM8400 is not set
800# CONFIG_MFD_WM8350_I2C is not set
801
802#
803# Multimedia devices
804#
805
806#
807# Multimedia core support
808#
809# CONFIG_VIDEO_DEV is not set
810# CONFIG_DVB_CORE is not set
811# CONFIG_VIDEO_MEDIA is not set
812
813#
814# Multimedia drivers
815#
816CONFIG_DAB=y
817# CONFIG_USB_DABUSB is not set
818
819#
820# Graphics support
821#
822# CONFIG_VGASTATE is not set
823# CONFIG_VIDEO_OUTPUT_CONTROL is not set
824# CONFIG_FB is not set
825# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
826
827#
828# Display device support
829#
830# CONFIG_DISPLAY_SUPPORT is not set
831
832#
833# Console display driver support
834#
835# CONFIG_VGA_CONSOLE is not set
836CONFIG_DUMMY_CONSOLE=y
837# CONFIG_SOUND is not set
838CONFIG_HID_SUPPORT=y
839CONFIG_HID=y
840# CONFIG_HID_DEBUG is not set
841# CONFIG_HIDRAW is not set
842
843#
844# USB Input Devices
845#
846CONFIG_USB_HID=y
847# CONFIG_HID_PID is not set
848# CONFIG_USB_HIDDEV is not set
849
850#
851# Special HID drivers
852#
853# CONFIG_HID_COMPAT is not set
854# CONFIG_HID_A4TECH is not set
855# CONFIG_HID_APPLE is not set
856# CONFIG_HID_BELKIN is not set
857# CONFIG_HID_BRIGHT is not set
858# CONFIG_HID_CHERRY is not set
859# CONFIG_HID_CHICONY is not set
860# CONFIG_HID_CYPRESS is not set
861# CONFIG_HID_DELL is not set
862# CONFIG_HID_EZKEY is not set
863# CONFIG_HID_GYRATION is not set
864# CONFIG_HID_LOGITECH is not set
865# CONFIG_HID_MICROSOFT is not set
866# CONFIG_HID_MONTEREY is not set
867# CONFIG_HID_PANTHERLORD is not set
868# CONFIG_HID_PETALYNX is not set
869# CONFIG_HID_SAMSUNG is not set
870# CONFIG_HID_SONY is not set
871# CONFIG_HID_SUNPLUS is not set
872# CONFIG_THRUSTMASTER_FF is not set
873# CONFIG_ZEROPLUS_FF is not set
874CONFIG_USB_SUPPORT=y
875CONFIG_USB_ARCH_HAS_HCD=y
876CONFIG_USB_ARCH_HAS_OHCI=y
877# CONFIG_USB_ARCH_HAS_EHCI is not set
878CONFIG_USB=y
879# CONFIG_USB_DEBUG is not set
880# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
881
882#
883# Miscellaneous USB options
884#
885CONFIG_USB_DEVICEFS=y
886CONFIG_USB_DEVICE_CLASS=y
887# CONFIG_USB_DYNAMIC_MINORS is not set
888# CONFIG_USB_OTG is not set
889# CONFIG_USB_OTG_WHITELIST is not set
890# CONFIG_USB_OTG_BLACKLIST_HUB is not set
891CONFIG_USB_MON=y
892# CONFIG_USB_WUSB is not set
893# CONFIG_USB_WUSB_CBAF is not set
894
895#
896# USB Host Controller Drivers
897#
898# CONFIG_USB_C67X00_HCD is not set
899# CONFIG_USB_ISP116X_HCD is not set
900# CONFIG_USB_OHCI_HCD is not set
901# CONFIG_USB_SL811_HCD is not set
902# CONFIG_USB_R8A66597_HCD is not set
903# CONFIG_USB_HWA_HCD is not set
904CONFIG_USB_MUSB_HDRC=y
905CONFIG_USB_MUSB_SOC=y
906
907#
908# OMAP 343x high speed USB support
909#
910CONFIG_USB_MUSB_HOST=y
911# CONFIG_USB_MUSB_PERIPHERAL is not set
912# CONFIG_USB_MUSB_OTG is not set
913# CONFIG_USB_GADGET_MUSB_HDRC is not set
914CONFIG_USB_MUSB_HDRC_HCD=y
915# CONFIG_MUSB_PIO_ONLY is not set
916CONFIG_USB_INVENTRA_DMA=y
917# CONFIG_USB_TI_CPPI_DMA is not set
918# CONFIG_USB_MUSB_DEBUG is not set
919
920#
921# USB Device Class drivers
922#
923# CONFIG_USB_ACM is not set
924# CONFIG_USB_PRINTER is not set
925# CONFIG_USB_WDM is not set
926# CONFIG_USB_TMC is not set
927
928#
929# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed;
930#
931
932#
933# see USB_STORAGE Help for more information
934#
935# CONFIG_USB_STORAGE is not set
936# CONFIG_USB_LIBUSUAL is not set
937
938#
939# USB Imaging devices
940#
941# CONFIG_USB_MDC800 is not set
942# CONFIG_USB_MICROTEK is not set
943
944#
945# USB port drivers
946#
947# CONFIG_USB_SERIAL is not set
948
949#
950# USB Miscellaneous drivers
951#
952# CONFIG_USB_EMI62 is not set
953# CONFIG_USB_EMI26 is not set
954# CONFIG_USB_ADUTUX is not set
955# CONFIG_USB_SEVSEG is not set
956# CONFIG_USB_RIO500 is not set
957# CONFIG_USB_LEGOTOWER is not set
958# CONFIG_USB_LCD is not set
959# CONFIG_USB_BERRY_CHARGE is not set
960# CONFIG_USB_LED is not set
961# CONFIG_USB_CYPRESS_CY7C63 is not set
962# CONFIG_USB_CYTHERM is not set
963# CONFIG_USB_PHIDGET is not set
964# CONFIG_USB_IDMOUSE is not set
965# CONFIG_USB_FTDI_ELAN is not set
966# CONFIG_USB_APPLEDISPLAY is not set
967# CONFIG_USB_LD is not set
968# CONFIG_USB_TRANCEVIBRATOR is not set
969# CONFIG_USB_IOWARRIOR is not set
970# CONFIG_USB_TEST is not set
971# CONFIG_USB_ISIGHTFW is not set
972# CONFIG_USB_VST is not set
973CONFIG_USB_GADGET=y
974# CONFIG_USB_GADGET_DEBUG is not set
975# CONFIG_USB_GADGET_DEBUG_FILES is not set
976CONFIG_USB_GADGET_VBUS_DRAW=2
977CONFIG_USB_GADGET_SELECTED=y
978# CONFIG_USB_GADGET_AT91 is not set
979# CONFIG_USB_GADGET_ATMEL_USBA is not set
980# CONFIG_USB_GADGET_FSL_USB2 is not set
981# CONFIG_USB_GADGET_LH7A40X is not set
982CONFIG_USB_GADGET_OMAP=y
983CONFIG_USB_OMAP=y
984# CONFIG_USB_GADGET_PXA25X is not set
985# CONFIG_USB_GADGET_PXA27X is not set
986# CONFIG_USB_GADGET_S3C2410 is not set
987# CONFIG_USB_GADGET_M66592 is not set
988# CONFIG_USB_GADGET_AMD5536UDC is not set
989# CONFIG_USB_GADGET_FSL_QE is not set
990# CONFIG_USB_GADGET_NET2280 is not set
991# CONFIG_USB_GADGET_GOKU is not set
992# CONFIG_USB_GADGET_DUMMY_HCD is not set
993# CONFIG_USB_GADGET_DUALSPEED is not set
994# CONFIG_USB_ZERO is not set
995CONFIG_USB_ETH=y
996CONFIG_USB_ETH_RNDIS=y
997# CONFIG_USB_GADGETFS is not set
998# CONFIG_USB_FILE_STORAGE is not set
999# CONFIG_USB_G_SERIAL is not set
1000# CONFIG_USB_MIDI_GADGET is not set
1001# CONFIG_USB_G_PRINTER is not set
1002# CONFIG_USB_CDC_COMPOSITE is not set
1003CONFIG_MMC=y
1004# CONFIG_MMC_DEBUG is not set
1005# CONFIG_MMC_UNSAFE_RESUME is not set
1006
1007#
1008# MMC/SD/SDIO Card Drivers
1009#
1010CONFIG_MMC_BLOCK=y
1011CONFIG_MMC_BLOCK_BOUNCE=y
1012# CONFIG_SDIO_UART is not set
1013# CONFIG_MMC_TEST is not set
1014
1015#
1016# MMC/SD/SDIO Host Controller Drivers
1017#
1018# CONFIG_MMC_SDHCI is not set
1019# CONFIG_MMC_OMAP is not set
1020# CONFIG_MMC_SPI is not set
1021# CONFIG_MEMSTICK is not set
1022# CONFIG_ACCESSIBILITY is not set
1023# CONFIG_NEW_LEDS is not set
1024CONFIG_RTC_LIB=y
1025CONFIG_RTC_CLASS=y
1026CONFIG_RTC_HCTOSYS=y
1027CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
1028# CONFIG_RTC_DEBUG is not set
1029
1030#
1031# RTC interfaces
1032#
1033CONFIG_RTC_INTF_SYSFS=y
1034CONFIG_RTC_INTF_PROC=y
1035CONFIG_RTC_INTF_DEV=y
1036# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
1037# CONFIG_RTC_DRV_TEST is not set
1038
1039#
1040# I2C RTC drivers
1041#
1042# CONFIG_RTC_DRV_DS1307 is not set
1043# CONFIG_RTC_DRV_DS1374 is not set
1044# CONFIG_RTC_DRV_DS1672 is not set
1045# CONFIG_RTC_DRV_MAX6900 is not set
1046# CONFIG_RTC_DRV_RS5C372 is not set
1047# CONFIG_RTC_DRV_ISL1208 is not set
1048# CONFIG_RTC_DRV_X1205 is not set
1049# CONFIG_RTC_DRV_PCF8563 is not set
1050# CONFIG_RTC_DRV_PCF8583 is not set
1051# CONFIG_RTC_DRV_M41T80 is not set
1052CONFIG_RTC_DRV_TWL4030=y
1053# CONFIG_RTC_DRV_S35390A is not set
1054# CONFIG_RTC_DRV_FM3130 is not set
1055# CONFIG_RTC_DRV_RX8581 is not set
1056
1057#
1058# SPI RTC drivers
1059#
1060# CONFIG_RTC_DRV_M41T94 is not set
1061# CONFIG_RTC_DRV_DS1305 is not set
1062# CONFIG_RTC_DRV_DS1390 is not set
1063# CONFIG_RTC_DRV_MAX6902 is not set
1064# CONFIG_RTC_DRV_R9701 is not set
1065# CONFIG_RTC_DRV_RS5C348 is not set
1066# CONFIG_RTC_DRV_DS3234 is not set
1067
1068#
1069# Platform RTC drivers
1070#
1071# CONFIG_RTC_DRV_CMOS is not set
1072# CONFIG_RTC_DRV_DS1286 is not set
1073# CONFIG_RTC_DRV_DS1511 is not set
1074# CONFIG_RTC_DRV_DS1553 is not set
1075# CONFIG_RTC_DRV_DS1742 is not set
1076# CONFIG_RTC_DRV_STK17TA8 is not set
1077# CONFIG_RTC_DRV_M48T86 is not set
1078# CONFIG_RTC_DRV_M48T35 is not set
1079# CONFIG_RTC_DRV_M48T59 is not set
1080# CONFIG_RTC_DRV_BQ4802 is not set
1081# CONFIG_RTC_DRV_V3020 is not set
1082
1083#
1084# on-CPU RTC drivers
1085#
1086# CONFIG_DMADEVICES is not set
1087# CONFIG_REGULATOR is not set
1088# CONFIG_UIO is not set
1089
1090#
1091# File systems
1092#
1093CONFIG_EXT2_FS=y
1094# CONFIG_EXT2_FS_XATTR is not set
1095# CONFIG_EXT2_FS_XIP is not set
1096CONFIG_EXT3_FS=y
1097# CONFIG_EXT3_FS_XATTR is not set
1098# CONFIG_EXT4_FS is not set
1099CONFIG_JBD=y
1100# CONFIG_REISERFS_FS is not set
1101# CONFIG_JFS_FS is not set
1102# CONFIG_FS_POSIX_ACL is not set
1103CONFIG_FILE_LOCKING=y
1104# CONFIG_XFS_FS is not set
1105# CONFIG_OCFS2_FS is not set
1106CONFIG_DNOTIFY=y
1107CONFIG_INOTIFY=y
1108CONFIG_INOTIFY_USER=y
1109CONFIG_QUOTA=y
1110# CONFIG_QUOTA_NETLINK_INTERFACE is not set
1111CONFIG_PRINT_QUOTA_WARNING=y
1112# CONFIG_QFMT_V1 is not set
1113CONFIG_QFMT_V2=y
1114CONFIG_QUOTACTL=y
1115# CONFIG_AUTOFS_FS is not set
1116# CONFIG_AUTOFS4_FS is not set
1117# CONFIG_FUSE_FS is not set
1118
1119#
1120# CD-ROM/DVD Filesystems
1121#
1122# CONFIG_ISO9660_FS is not set
1123# CONFIG_UDF_FS is not set
1124
1125#
1126# DOS/FAT/NT Filesystems
1127#
1128CONFIG_FAT_FS=y
1129CONFIG_MSDOS_FS=y
1130CONFIG_VFAT_FS=y
1131CONFIG_FAT_DEFAULT_CODEPAGE=437
1132CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
1133# CONFIG_NTFS_FS is not set
1134
1135#
1136# Pseudo filesystems
1137#
1138CONFIG_PROC_FS=y
1139CONFIG_PROC_SYSCTL=y
1140CONFIG_PROC_PAGE_MONITOR=y
1141CONFIG_SYSFS=y
1142CONFIG_TMPFS=y
1143# CONFIG_TMPFS_POSIX_ACL is not set
1144# CONFIG_HUGETLB_PAGE is not set
1145# CONFIG_CONFIGFS_FS is not set
1146
1147#
1148# Miscellaneous filesystems
1149#
1150# CONFIG_ADFS_FS is not set
1151# CONFIG_AFFS_FS is not set
1152# CONFIG_HFS_FS is not set
1153# CONFIG_HFSPLUS_FS is not set
1154# CONFIG_BEFS_FS is not set
1155# CONFIG_BFS_FS is not set
1156# CONFIG_EFS_FS is not set
1157# CONFIG_JFFS2_FS is not set
1158# CONFIG_CRAMFS is not set
1159# CONFIG_VXFS_FS is not set
1160# CONFIG_MINIX_FS is not set
1161# CONFIG_OMFS_FS is not set
1162# CONFIG_HPFS_FS is not set
1163# CONFIG_QNX4FS_FS is not set
1164# CONFIG_ROMFS_FS is not set
1165# CONFIG_SYSV_FS is not set
1166# CONFIG_UFS_FS is not set
1167# CONFIG_NETWORK_FILESYSTEMS is not set
1168
1169#
1170# Partition Types
1171#
1172CONFIG_PARTITION_ADVANCED=y
1173# CONFIG_ACORN_PARTITION is not set
1174# CONFIG_OSF_PARTITION is not set
1175# CONFIG_AMIGA_PARTITION is not set
1176# CONFIG_ATARI_PARTITION is not set
1177# CONFIG_MAC_PARTITION is not set
1178CONFIG_MSDOS_PARTITION=y
1179# CONFIG_BSD_DISKLABEL is not set
1180# CONFIG_MINIX_SUBPARTITION is not set
1181# CONFIG_SOLARIS_X86_PARTITION is not set
1182# CONFIG_UNIXWARE_DISKLABEL is not set
1183# CONFIG_LDM_PARTITION is not set
1184# CONFIG_SGI_PARTITION is not set
1185# CONFIG_ULTRIX_PARTITION is not set
1186# CONFIG_SUN_PARTITION is not set
1187# CONFIG_KARMA_PARTITION is not set
1188# CONFIG_EFI_PARTITION is not set
1189# CONFIG_SYSV68_PARTITION is not set
1190CONFIG_NLS=y
1191CONFIG_NLS_DEFAULT="iso8859-1"
1192CONFIG_NLS_CODEPAGE_437=y
1193# CONFIG_NLS_CODEPAGE_737 is not set
1194# CONFIG_NLS_CODEPAGE_775 is not set
1195# CONFIG_NLS_CODEPAGE_850 is not set
1196# CONFIG_NLS_CODEPAGE_852 is not set
1197# CONFIG_NLS_CODEPAGE_855 is not set
1198# CONFIG_NLS_CODEPAGE_857 is not set
1199# CONFIG_NLS_CODEPAGE_860 is not set
1200# CONFIG_NLS_CODEPAGE_861 is not set
1201# CONFIG_NLS_CODEPAGE_862 is not set
1202# CONFIG_NLS_CODEPAGE_863 is not set
1203# CONFIG_NLS_CODEPAGE_864 is not set
1204# CONFIG_NLS_CODEPAGE_865 is not set
1205# CONFIG_NLS_CODEPAGE_866 is not set
1206# CONFIG_NLS_CODEPAGE_869 is not set
1207# CONFIG_NLS_CODEPAGE_936 is not set
1208# CONFIG_NLS_CODEPAGE_950 is not set
1209# CONFIG_NLS_CODEPAGE_932 is not set
1210# CONFIG_NLS_CODEPAGE_949 is not set
1211# CONFIG_NLS_CODEPAGE_874 is not set
1212# CONFIG_NLS_ISO8859_8 is not set
1213# CONFIG_NLS_CODEPAGE_1250 is not set
1214# CONFIG_NLS_CODEPAGE_1251 is not set
1215# CONFIG_NLS_ASCII is not set
1216CONFIG_NLS_ISO8859_1=y
1217# CONFIG_NLS_ISO8859_2 is not set
1218# CONFIG_NLS_ISO8859_3 is not set
1219# CONFIG_NLS_ISO8859_4 is not set
1220# CONFIG_NLS_ISO8859_5 is not set
1221# CONFIG_NLS_ISO8859_6 is not set
1222# CONFIG_NLS_ISO8859_7 is not set
1223# CONFIG_NLS_ISO8859_9 is not set
1224# CONFIG_NLS_ISO8859_13 is not set
1225# CONFIG_NLS_ISO8859_14 is not set
1226# CONFIG_NLS_ISO8859_15 is not set
1227# CONFIG_NLS_KOI8_R is not set
1228# CONFIG_NLS_KOI8_U is not set
1229# CONFIG_NLS_UTF8 is not set
1230# CONFIG_DLM is not set
1231
1232#
1233# Kernel hacking
1234#
1235# CONFIG_PRINTK_TIME is not set
1236CONFIG_ENABLE_WARN_DEPRECATED=y
1237CONFIG_ENABLE_MUST_CHECK=y
1238CONFIG_FRAME_WARN=1024
1239CONFIG_MAGIC_SYSRQ=y
1240# CONFIG_UNUSED_SYMBOLS is not set
1241# CONFIG_DEBUG_FS is not set
1242# CONFIG_HEADERS_CHECK is not set
1243CONFIG_DEBUG_KERNEL=y
1244# CONFIG_DEBUG_SHIRQ is not set
1245CONFIG_DETECT_SOFTLOCKUP=y
1246# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
1247CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1248CONFIG_SCHED_DEBUG=y
1249# CONFIG_SCHEDSTATS is not set
1250# CONFIG_TIMER_STATS is not set
1251# CONFIG_DEBUG_OBJECTS is not set
1252# CONFIG_DEBUG_SLAB is not set
1253# CONFIG_DEBUG_RT_MUTEXES is not set
1254# CONFIG_RT_MUTEX_TESTER is not set
1255# CONFIG_DEBUG_SPINLOCK is not set
1256CONFIG_DEBUG_MUTEXES=y
1257# CONFIG_DEBUG_LOCK_ALLOC is not set
1258# CONFIG_PROVE_LOCKING is not set
1259# CONFIG_LOCK_STAT is not set
1260# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1261# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1262# CONFIG_DEBUG_KOBJECT is not set
1263# CONFIG_DEBUG_BUGVERBOSE is not set
1264CONFIG_DEBUG_INFO=y
1265# CONFIG_DEBUG_VM is not set
1266# CONFIG_DEBUG_WRITECOUNT is not set
1267# CONFIG_DEBUG_MEMORY_INIT is not set
1268# CONFIG_DEBUG_LIST is not set
1269# CONFIG_DEBUG_SG is not set
1270CONFIG_FRAME_POINTER=y
1271# CONFIG_BOOT_PRINTK_DELAY is not set
1272# CONFIG_RCU_TORTURE_TEST is not set
1273# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1274# CONFIG_BACKTRACE_SELF_TEST is not set
1275# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1276# CONFIG_FAULT_INJECTION is not set
1277# CONFIG_LATENCYTOP is not set
1278CONFIG_HAVE_FUNCTION_TRACER=y
1279
1280#
1281# Tracers
1282#
1283# CONFIG_FUNCTION_TRACER is not set
1284# CONFIG_IRQSOFF_TRACER is not set
1285# CONFIG_SCHED_TRACER is not set
1286# CONFIG_CONTEXT_SWITCH_TRACER is not set
1287# CONFIG_BOOT_TRACER is not set
1288# CONFIG_STACK_TRACER is not set
1289# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1290# CONFIG_SAMPLES is not set
1291CONFIG_HAVE_ARCH_KGDB=y
1292# CONFIG_KGDB is not set
1293# CONFIG_DEBUG_USER is not set
1294# CONFIG_DEBUG_ERRORS is not set
1295# CONFIG_DEBUG_STACK_USAGE is not set
1296# CONFIG_DEBUG_LL is not set
1297
1298#
1299# Security options
1300#
1301# CONFIG_KEYS is not set
1302# CONFIG_SECURITY is not set
1303# CONFIG_SECURITYFS is not set
1304# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1305CONFIG_CRYPTO=y
1306
1307#
1308# Crypto core or helper
1309#
1310# CONFIG_CRYPTO_FIPS is not set
1311CONFIG_CRYPTO_ALGAPI=y
1312CONFIG_CRYPTO_AEAD=y
1313CONFIG_CRYPTO_BLKCIPHER=y
1314CONFIG_CRYPTO_HASH=y
1315CONFIG_CRYPTO_RNG=y
1316CONFIG_CRYPTO_MANAGER=y
1317# CONFIG_CRYPTO_GF128MUL is not set
1318# CONFIG_CRYPTO_NULL is not set
1319# CONFIG_CRYPTO_CRYPTD is not set
1320# CONFIG_CRYPTO_AUTHENC is not set
1321# CONFIG_CRYPTO_TEST is not set
1322
1323#
1324# Authenticated Encryption with Associated Data
1325#
1326# CONFIG_CRYPTO_CCM is not set
1327# CONFIG_CRYPTO_GCM is not set
1328# CONFIG_CRYPTO_SEQIV is not set
1329
1330#
1331# Block modes
1332#
1333CONFIG_CRYPTO_CBC=y
1334# CONFIG_CRYPTO_CTR is not set
1335# CONFIG_CRYPTO_CTS is not set
1336CONFIG_CRYPTO_ECB=m
1337# CONFIG_CRYPTO_LRW is not set
1338CONFIG_CRYPTO_PCBC=m
1339# CONFIG_CRYPTO_XTS is not set
1340
1341#
1342# Hash modes
1343#
1344# CONFIG_CRYPTO_HMAC is not set
1345# CONFIG_CRYPTO_XCBC is not set
1346
1347#
1348# Digest
1349#
1350# CONFIG_CRYPTO_CRC32C is not set
1351# CONFIG_CRYPTO_MD4 is not set
1352CONFIG_CRYPTO_MD5=y
1353# CONFIG_CRYPTO_MICHAEL_MIC is not set
1354# CONFIG_CRYPTO_RMD128 is not set
1355# CONFIG_CRYPTO_RMD160 is not set
1356# CONFIG_CRYPTO_RMD256 is not set
1357# CONFIG_CRYPTO_RMD320 is not set
1358# CONFIG_CRYPTO_SHA1 is not set
1359# CONFIG_CRYPTO_SHA256 is not set
1360# CONFIG_CRYPTO_SHA512 is not set
1361# CONFIG_CRYPTO_TGR192 is not set
1362# CONFIG_CRYPTO_WP512 is not set
1363
1364#
1365# Ciphers
1366#
1367# CONFIG_CRYPTO_AES is not set
1368# CONFIG_CRYPTO_ANUBIS is not set
1369# CONFIG_CRYPTO_ARC4 is not set
1370# CONFIG_CRYPTO_BLOWFISH is not set
1371# CONFIG_CRYPTO_CAMELLIA is not set
1372# CONFIG_CRYPTO_CAST5 is not set
1373# CONFIG_CRYPTO_CAST6 is not set
1374CONFIG_CRYPTO_DES=y
1375# CONFIG_CRYPTO_FCRYPT is not set
1376# CONFIG_CRYPTO_KHAZAD is not set
1377# CONFIG_CRYPTO_SALSA20 is not set
1378# CONFIG_CRYPTO_SEED is not set
1379# CONFIG_CRYPTO_SERPENT is not set
1380# CONFIG_CRYPTO_TEA is not set
1381# CONFIG_CRYPTO_TWOFISH is not set
1382
1383#
1384# Compression
1385#
1386# CONFIG_CRYPTO_DEFLATE is not set
1387# CONFIG_CRYPTO_LZO is not set
1388
1389#
1390# Random Number Generation
1391#
1392# CONFIG_CRYPTO_ANSI_CPRNG is not set
1393CONFIG_CRYPTO_HW=y
1394
1395#
1396# Library routines
1397#
1398CONFIG_BITREVERSE=y
1399CONFIG_CRC_CCITT=y
1400# CONFIG_CRC16 is not set
1401# CONFIG_CRC_T10DIF is not set
1402# CONFIG_CRC_ITU_T is not set
1403CONFIG_CRC32=y
1404# CONFIG_CRC7 is not set
1405CONFIG_LIBCRC32C=y
1406CONFIG_PLIST=y
1407CONFIG_HAS_IOMEM=y
1408CONFIG_HAS_IOPORT=y
1409CONFIG_HAS_DMA=y
diff --git a/arch/arm/configs/omap_ldp_defconfig b/arch/arm/configs/omap_ldp_defconfig
index 948a212fb1cc..b77d054169ee 100644
--- a/arch/arm/configs/omap_ldp_defconfig
+++ b/arch/arm/configs/omap_ldp_defconfig
@@ -316,7 +316,82 @@ CONFIG_BINFMT_MISC=y
316# 316#
317# CONFIG_PM is not set 317# CONFIG_PM is not set
318CONFIG_ARCH_SUSPEND_POSSIBLE=y 318CONFIG_ARCH_SUSPEND_POSSIBLE=y
319# CONFIG_NET is not set 319CONFIG_NET=y
320
321#
322# Networking options
323#
324CONFIG_PACKET=y
325# CONFIG_PACKET_MMAP is not set
326CONFIG_UNIX=y
327CONFIG_XFRM=y
328CONFIG_XFRM_USER=y
329# CONFIG_XFRM_SUB_POLICY is not set
330CONFIG_XFRM_MIGRATE=y
331# CONFIG_XFRM_STATISTICS is not set
332CONFIG_NET_KEY=y
333CONFIG_NET_KEY_MIGRATE=y
334CONFIG_INET=y
335CONFIG_IP_MULTICAST=y
336# CONFIG_IP_ADVANCED_ROUTER is not set
337CONFIG_IP_FIB_HASH=y
338CONFIG_IP_PNP=y
339CONFIG_IP_PNP_DHCP=y
340CONFIG_IP_PNP_BOOTP=y
341CONFIG_IP_PNP_RARP=y
342# CONFIG_NET_IPIP is not set
343# CONFIG_NET_IPGRE is not set
344# CONFIG_IP_MROUTE is not set
345# CONFIG_ARPD is not set
346# CONFIG_SYN_COOKIES is not set
347# CONFIG_INET_AH is not set
348# CONFIG_INET_ESP is not set
349# CONFIG_INET_IPCOMP is not set
350# CONFIG_INET_XFRM_TUNNEL is not set
351# CONFIG_INET_TUNNEL is not set
352CONFIG_INET_XFRM_MODE_TRANSPORT=y
353CONFIG_INET_XFRM_MODE_TUNNEL=y
354CONFIG_INET_XFRM_MODE_BEET=y
355# CONFIG_INET_LRO is not set
356CONFIG_INET_DIAG=y
357CONFIG_INET_TCP_DIAG=y
358# CONFIG_TCP_CONG_ADVANCED is not set
359CONFIG_TCP_CONG_CUBIC=y
360CONFIG_DEFAULT_TCP_CONG="cubic"
361# CONFIG_TCP_MD5SIG is not set
362# CONFIG_IPV6 is not set
363# CONFIG_NETWORK_SECMARK is not set
364# CONFIG_NETFILTER is not set
365# CONFIG_IP_DCCP is not set
366# CONFIG_IP_SCTP is not set
367# CONFIG_TIPC is not set
368# CONFIG_ATM is not set
369# CONFIG_BRIDGE is not set
370# CONFIG_NET_DSA is not set
371# CONFIG_VLAN_8021Q is not set
372# CONFIG_DECNET is not set
373# CONFIG_LLC2 is not set
374# CONFIG_IPX is not set
375# CONFIG_ATALK is not set
376# CONFIG_X25 is not set
377# CONFIG_LAPB is not set
378# CONFIG_ECONET is not set
379# CONFIG_WAN_ROUTER is not set
380# CONFIG_NET_SCHED is not set
381
382#
383# Network testing
384#
385# CONFIG_NET_PKTGEN is not set
386# CONFIG_HAMRADIO is not set
387# CONFIG_CAN is not set
388# CONFIG_IRDA is not set
389# CONFIG_BT is not set
390# CONFIG_AF_RXRPC is not set
391# CONFIG_PHONET is not set
392# CONFIG_WIRELESS is not set
393# CONFIG_RFKILL is not set
394# CONFIG_NET_9P is not set
320 395
321# 396#
322# Device Drivers 397# Device Drivers
@@ -332,6 +407,8 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
332# CONFIG_DEBUG_DRIVER is not set 407# CONFIG_DEBUG_DRIVER is not set
333# CONFIG_DEBUG_DEVRES is not set 408# CONFIG_DEBUG_DEVRES is not set
334# CONFIG_SYS_HYPERVISOR is not set 409# CONFIG_SYS_HYPERVISOR is not set
410CONFIG_CONNECTOR=y
411CONFIG_PROC_EVENTS=y
335# CONFIG_MTD is not set 412# CONFIG_MTD is not set
336# CONFIG_PARPORT is not set 413# CONFIG_PARPORT is not set
337CONFIG_BLK_DEV=y 414CONFIG_BLK_DEV=y
@@ -390,6 +467,54 @@ CONFIG_SCSI_LOWLEVEL=y
390# CONFIG_SCSI_DH is not set 467# CONFIG_SCSI_DH is not set
391# CONFIG_ATA is not set 468# CONFIG_ATA is not set
392# CONFIG_MD is not set 469# CONFIG_MD is not set
470CONFIG_NETDEVICES=y
471# CONFIG_DUMMY is not set
472# CONFIG_BONDING is not set
473# CONFIG_MACVLAN is not set
474# CONFIG_EQUALIZER is not set
475# CONFIG_TUN is not set
476# CONFIG_VETH is not set
477# CONFIG_PHYLIB is not set
478CONFIG_NET_ETHERNET=y
479CONFIG_MII=y
480# CONFIG_AX88796 is not set
481# CONFIG_SMC91X is not set
482# CONFIG_DM9000 is not set
483# CONFIG_ENC28J60 is not set
484CONFIG_SMC911X=y
485# CONFIG_IBM_NEW_EMAC_ZMII is not set
486# CONFIG_IBM_NEW_EMAC_RGMII is not set
487# CONFIG_IBM_NEW_EMAC_TAH is not set
488# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
489# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
490# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
491# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
492# CONFIG_B44 is not set
493CONFIG_NETDEV_1000=y
494CONFIG_NETDEV_10000=y
495
496#
497# Wireless LAN
498#
499# CONFIG_WLAN_PRE80211 is not set
500# CONFIG_WLAN_80211 is not set
501# CONFIG_IWLWIFI_LEDS is not set
502
503#
504# USB Network Adapters
505#
506# CONFIG_USB_CATC is not set
507# CONFIG_USB_KAWETH is not set
508# CONFIG_USB_PEGASUS is not set
509# CONFIG_USB_RTL8150 is not set
510# CONFIG_USB_USBNET is not set
511# CONFIG_WAN is not set
512# CONFIG_PPP is not set
513# CONFIG_SLIP is not set
514# CONFIG_NETCONSOLE is not set
515# CONFIG_NETPOLL is not set
516# CONFIG_NET_POLL_CONTROLLER is not set
517# CONFIG_ISDN is not set
393 518
394# 519#
395# Input device support 520# Input device support
@@ -816,6 +941,27 @@ CONFIG_TMPFS=y
816# CONFIG_ROMFS_FS is not set 941# CONFIG_ROMFS_FS is not set
817# CONFIG_SYSV_FS is not set 942# CONFIG_SYSV_FS is not set
818# CONFIG_UFS_FS is not set 943# CONFIG_UFS_FS is not set
944CONFIG_NETWORK_FILESYSTEMS=y
945CONFIG_NFS_FS=y
946CONFIG_NFS_V3=y
947CONFIG_NFS_V3_ACL=y
948CONFIG_NFS_V4=y
949CONFIG_ROOT_NFS=y
950# CONFIG_NFSD is not set
951CONFIG_LOCKD=y
952CONFIG_LOCKD_V4=y
953CONFIG_NFS_ACL_SUPPORT=y
954CONFIG_NFS_COMMON=y
955CONFIG_SUNRPC=y
956CONFIG_SUNRPC_GSS=y
957# CONFIG_SUNRPC_REGISTER_V4 is not set
958CONFIG_RPCSEC_GSS_KRB5=y
959# CONFIG_RPCSEC_GSS_SPKM3 is not set
960# CONFIG_SMB_FS is not set
961# CONFIG_CIFS is not set
962# CONFIG_NCP_FS is not set
963# CONFIG_CODA_FS is not set
964# CONFIG_AFS_FS is not set
819 965
820# 966#
821# Partition Types 967# Partition Types
diff --git a/arch/arm/include/asm/bitops.h b/arch/arm/include/asm/bitops.h
index 9a1db20e032a..63a481fbbed4 100644
--- a/arch/arm/include/asm/bitops.h
+++ b/arch/arm/include/asm/bitops.h
@@ -237,6 +237,7 @@ extern int _find_next_bit_be(const unsigned long *p, int size, int offset);
237#if __LINUX_ARM_ARCH__ < 5 237#if __LINUX_ARM_ARCH__ < 5
238 238
239#include <asm-generic/bitops/ffz.h> 239#include <asm-generic/bitops/ffz.h>
240#include <asm-generic/bitops/__fls.h>
240#include <asm-generic/bitops/__ffs.h> 241#include <asm-generic/bitops/__ffs.h>
241#include <asm-generic/bitops/fls.h> 242#include <asm-generic/bitops/fls.h>
242#include <asm-generic/bitops/ffs.h> 243#include <asm-generic/bitops/ffs.h>
@@ -277,16 +278,19 @@ static inline int constant_fls(int x)
277 * the clz instruction for much better code efficiency. 278 * the clz instruction for much better code efficiency.
278 */ 279 */
279 280
280#define __fls(x) \
281 ( __builtin_constant_p(x) ? constant_fls(x) : \
282 ({ int __r; asm("clz\t%0, %1" : "=r"(__r) : "r"(x) : "cc"); 32-__r; }) )
283
284/* Implement fls() in C so that 64-bit args are suitably truncated */
285static inline int fls(int x) 281static inline int fls(int x)
286{ 282{
287 return __fls(x); 283 int ret;
284
285 if (__builtin_constant_p(x))
286 return constant_fls(x);
287
288 asm("clz\t%0, %1" : "=r" (ret) : "r" (x) : "cc");
289 ret = 32 - ret;
290 return ret;
288} 291}
289 292
293#define __fls(x) (fls(x) - 1)
290#define ffs(x) ({ unsigned long __t = (x); fls(__t & -__t); }) 294#define ffs(x) ({ unsigned long __t = (x); fls(__t & -__t); })
291#define __ffs(x) (ffs(x) - 1) 295#define __ffs(x) (ffs(x) - 1)
292#define ffz(x) __ffs( ~(x) ) 296#define ffz(x) __ffs( ~(x) )
diff --git a/arch/arm/include/asm/processor.h b/arch/arm/include/asm/processor.h
index 2320508443a5..1845892260e7 100644
--- a/arch/arm/include/asm/processor.h
+++ b/arch/arm/include/asm/processor.h
@@ -23,7 +23,7 @@
23#include <asm/types.h> 23#include <asm/types.h>
24 24
25#ifdef __KERNEL__ 25#ifdef __KERNEL__
26#define STACK_TOP ((current->personality == PER_LINUX_32BIT) ? \ 26#define STACK_TOP ((current->personality & ADDR_LIMIT_32BIT) ? \
27 TASK_SIZE : TASK_SIZE_26) 27 TASK_SIZE : TASK_SIZE_26)
28#define STACK_TOP_MAX TASK_SIZE 28#define STACK_TOP_MAX TASK_SIZE
29#endif 29#endif
diff --git a/arch/arm/mach-omap1/board-fsample.c b/arch/arm/mach-omap1/board-fsample.c
index db789461fca4..30308294e7c1 100644
--- a/arch/arm/mach-omap1/board-fsample.c
+++ b/arch/arm/mach-omap1/board-fsample.c
@@ -205,7 +205,7 @@ static struct platform_device *devices[] __initdata = {
205 205
206static int nand_dev_ready(struct omap_nand_platform_data *data) 206static int nand_dev_ready(struct omap_nand_platform_data *data)
207{ 207{
208 return omap_get_gpio_datain(P2_NAND_RB_GPIO_PIN); 208 return gpio_get_value(P2_NAND_RB_GPIO_PIN);
209} 209}
210 210
211static struct omap_uart_config fsample_uart_config __initdata = { 211static struct omap_uart_config fsample_uart_config __initdata = {
@@ -223,8 +223,9 @@ static struct omap_board_config_kernel fsample_config[] = {
223 223
224static void __init omap_fsample_init(void) 224static void __init omap_fsample_init(void)
225{ 225{
226 if (!(omap_request_gpio(P2_NAND_RB_GPIO_PIN))) 226 if (gpio_request(P2_NAND_RB_GPIO_PIN, "NAND ready") < 0)
227 nand_data.dev_ready = nand_dev_ready; 227 BUG();
228 nand_data.dev_ready = nand_dev_ready;
228 229
229 omap_cfg_reg(L3_1610_FLASH_CS2B_OE); 230 omap_cfg_reg(L3_1610_FLASH_CS2B_OE);
230 omap_cfg_reg(M8_1610_FLASH_CS2B_WE); 231 omap_cfg_reg(M8_1610_FLASH_CS2B_WE);
diff --git a/arch/arm/mach-omap1/board-h2.c b/arch/arm/mach-omap1/board-h2.c
index 3b65914b9141..c5b4a3b718cf 100644
--- a/arch/arm/mach-omap1/board-h2.c
+++ b/arch/arm/mach-omap1/board-h2.c
@@ -250,11 +250,8 @@ static struct platform_device h2_kp_device = {
250#if defined(CONFIG_OMAP_IR) || defined(CONFIG_OMAP_IR_MODULE) 250#if defined(CONFIG_OMAP_IR) || defined(CONFIG_OMAP_IR_MODULE)
251static int h2_transceiver_mode(struct device *dev, int state) 251static int h2_transceiver_mode(struct device *dev, int state)
252{ 252{
253 if (state & IR_SIRMODE) 253 /* SIR when low, else MIR/FIR when HIGH */
254 omap_set_gpio_dataout(H2_IRDA_FIRSEL_GPIO_PIN, 0); 254 gpio_set_value(H2_IRDA_FIRSEL_GPIO_PIN, !(state & IR_SIRMODE));
255 else /* MIR/FIR */
256 omap_set_gpio_dataout(H2_IRDA_FIRSEL_GPIO_PIN, 1);
257
258 return 0; 255 return 0;
259} 256}
260#endif 257#endif
@@ -342,7 +339,7 @@ static struct platform_device *h2_devices[] __initdata = {
342 339
343static void __init h2_init_smc91x(void) 340static void __init h2_init_smc91x(void)
344{ 341{
345 if ((omap_request_gpio(0)) < 0) { 342 if (gpio_request(0, "SMC91x irq") < 0) {
346 printk("Error requesting gpio 0 for smc91x irq\n"); 343 printk("Error requesting gpio 0 for smc91x irq\n");
347 return; 344 return;
348 } 345 }
@@ -409,7 +406,7 @@ static struct omap_board_config_kernel h2_config[] __initdata = {
409 406
410static int h2_nand_dev_ready(struct omap_nand_platform_data *data) 407static int h2_nand_dev_ready(struct omap_nand_platform_data *data)
411{ 408{
412 return omap_get_gpio_datain(H2_NAND_RB_GPIO_PIN); 409 return gpio_get_value(H2_NAND_RB_GPIO_PIN);
413} 410}
414 411
415static void __init h2_init(void) 412static void __init h2_init(void)
@@ -428,8 +425,9 @@ static void __init h2_init(void)
428 425
429 h2_nand_resource.end = h2_nand_resource.start = OMAP_CS2B_PHYS; 426 h2_nand_resource.end = h2_nand_resource.start = OMAP_CS2B_PHYS;
430 h2_nand_resource.end += SZ_4K - 1; 427 h2_nand_resource.end += SZ_4K - 1;
431 if (!(omap_request_gpio(H2_NAND_RB_GPIO_PIN))) 428 if (gpio_request(H2_NAND_RB_GPIO_PIN, "NAND ready") < 0)
432 h2_nand_data.dev_ready = h2_nand_dev_ready; 429 BUG();
430 gpio_direction_input(H2_NAND_RB_GPIO_PIN);
433 431
434 omap_cfg_reg(L3_1610_FLASH_CS2B_OE); 432 omap_cfg_reg(L3_1610_FLASH_CS2B_OE);
435 omap_cfg_reg(M8_1610_FLASH_CS2B_WE); 433 omap_cfg_reg(M8_1610_FLASH_CS2B_WE);
@@ -441,10 +439,10 @@ static void __init h2_init(void)
441 /* Irda */ 439 /* Irda */
442#if defined(CONFIG_OMAP_IR) || defined(CONFIG_OMAP_IR_MODULE) 440#if defined(CONFIG_OMAP_IR) || defined(CONFIG_OMAP_IR_MODULE)
443 omap_writel(omap_readl(FUNC_MUX_CTRL_A) | 7, FUNC_MUX_CTRL_A); 441 omap_writel(omap_readl(FUNC_MUX_CTRL_A) | 7, FUNC_MUX_CTRL_A);
444 if (!(omap_request_gpio(H2_IRDA_FIRSEL_GPIO_PIN))) { 442 if (gpio_request(H2_IRDA_FIRSEL_GPIO_PIN, "IRDA mode") < 0)
445 omap_set_gpio_direction(H2_IRDA_FIRSEL_GPIO_PIN, 0); 443 BUG();
446 h2_irda_data.transceiver_mode = h2_transceiver_mode; 444 gpio_direction_output(H2_IRDA_FIRSEL_GPIO_PIN, 0);
447 } 445 h2_irda_data.transceiver_mode = h2_transceiver_mode;
448#endif 446#endif
449 447
450 platform_add_devices(h2_devices, ARRAY_SIZE(h2_devices)); 448 platform_add_devices(h2_devices, ARRAY_SIZE(h2_devices));
diff --git a/arch/arm/mach-omap1/board-h3.c b/arch/arm/mach-omap1/board-h3.c
index adfcd7b51393..0332203bd53d 100644
--- a/arch/arm/mach-omap1/board-h3.c
+++ b/arch/arm/mach-omap1/board-h3.c
@@ -498,7 +498,7 @@ static struct omap_gpio_switch h3_gpio_switches[] __initdata = {
498 498
499static int nand_dev_ready(struct omap_nand_platform_data *data) 499static int nand_dev_ready(struct omap_nand_platform_data *data)
500{ 500{
501 return omap_get_gpio_datain(H3_NAND_RB_GPIO_PIN); 501 return gpio_get_value(H3_NAND_RB_GPIO_PIN);
502} 502}
503 503
504static void __init h3_init(void) 504static void __init h3_init(void)
@@ -516,8 +516,9 @@ static void __init h3_init(void)
516 516
517 nand_resource.end = nand_resource.start = OMAP_CS2B_PHYS; 517 nand_resource.end = nand_resource.start = OMAP_CS2B_PHYS;
518 nand_resource.end += SZ_4K - 1; 518 nand_resource.end += SZ_4K - 1;
519 if (!(omap_request_gpio(H3_NAND_RB_GPIO_PIN))) 519 if (gpio_request(H3_NAND_RB_GPIO_PIN, "NAND ready") < 0)
520 nand_data.dev_ready = nand_dev_ready; 520 BUG();
521 nand_data.dev_ready = nand_dev_ready;
521 522
522 /* GPIO10 Func_MUX_CTRL reg bit 29:27, Configure V2 to mode1 as GPIO */ 523 /* GPIO10 Func_MUX_CTRL reg bit 29:27, Configure V2 to mode1 as GPIO */
523 /* GPIO10 pullup/down register, Enable pullup on GPIO10 */ 524 /* GPIO10 pullup/down register, Enable pullup on GPIO10 */
@@ -537,7 +538,7 @@ static void __init h3_init(void)
537static void __init h3_init_smc91x(void) 538static void __init h3_init_smc91x(void)
538{ 539{
539 omap_cfg_reg(W15_1710_GPIO40); 540 omap_cfg_reg(W15_1710_GPIO40);
540 if (omap_request_gpio(40) < 0) { 541 if (gpio_request(40, "SMC91x irq") < 0) {
541 printk("Error requesting gpio 40 for smc91x irq\n"); 542 printk("Error requesting gpio 40 for smc91x irq\n");
542 return; 543 return;
543 } 544 }
diff --git a/arch/arm/mach-omap1/board-innovator.c b/arch/arm/mach-omap1/board-innovator.c
index cbc11be5cd2a..a21e365a7a87 100644
--- a/arch/arm/mach-omap1/board-innovator.c
+++ b/arch/arm/mach-omap1/board-innovator.c
@@ -301,7 +301,7 @@ static void __init innovator_init_smc91x(void)
301 OMAP1510_FPGA_RST); 301 OMAP1510_FPGA_RST);
302 udelay(750); 302 udelay(750);
303 } else { 303 } else {
304 if ((omap_request_gpio(0)) < 0) { 304 if (gpio_request(0, "SMC91x irq") < 0) {
305 printk("Error requesting gpio 0 for smc91x irq\n"); 305 printk("Error requesting gpio 0 for smc91x irq\n");
306 return; 306 return;
307 } 307 }
diff --git a/arch/arm/mach-omap1/board-nokia770.c b/arch/arm/mach-omap1/board-nokia770.c
index 38d9783ac6d6..b26782471e59 100644
--- a/arch/arm/mach-omap1/board-nokia770.c
+++ b/arch/arm/mach-omap1/board-nokia770.c
@@ -102,7 +102,7 @@ static void mipid_shutdown(struct mipid_platform_data *pdata)
102{ 102{
103 if (pdata->nreset_gpio != -1) { 103 if (pdata->nreset_gpio != -1) {
104 printk(KERN_INFO "shutdown LCD\n"); 104 printk(KERN_INFO "shutdown LCD\n");
105 omap_set_gpio_dataout(pdata->nreset_gpio, 0); 105 gpio_set_value(pdata->nreset_gpio, 0);
106 msleep(120); 106 msleep(120);
107 } 107 }
108} 108}
@@ -124,13 +124,13 @@ static void mipid_dev_init(void)
124 124
125static void ads7846_dev_init(void) 125static void ads7846_dev_init(void)
126{ 126{
127 if (omap_request_gpio(ADS7846_PENDOWN_GPIO) < 0) 127 if (gpio_request(ADS7846_PENDOWN_GPIO, "ADS7846 pendown") < 0)
128 printk(KERN_ERR "can't get ads7846 pen down GPIO\n"); 128 printk(KERN_ERR "can't get ads7846 pen down GPIO\n");
129} 129}
130 130
131static int ads7846_get_pendown_state(void) 131static int ads7846_get_pendown_state(void)
132{ 132{
133 return !omap_get_gpio_datain(ADS7846_PENDOWN_GPIO); 133 return !gpio_get_value(ADS7846_PENDOWN_GPIO);
134} 134}
135 135
136static struct ads7846_platform_data nokia770_ads7846_platform_data __initdata = { 136static struct ads7846_platform_data nokia770_ads7846_platform_data __initdata = {
@@ -228,9 +228,9 @@ static void nokia770_audio_pwr_up(void)
228 /* Turn on codec */ 228 /* Turn on codec */
229 aic23_power_up(); 229 aic23_power_up();
230 230
231 if (omap_get_gpio_datain(HEADPHONE_GPIO)) 231 if (gpio_get_value(HEADPHONE_GPIO))
232 /* HP not connected, turn on amplifier */ 232 /* HP not connected, turn on amplifier */
233 omap_set_gpio_dataout(AMPLIFIER_CTRL_GPIO, 1); 233 gpio_set_value(AMPLIFIER_CTRL_GPIO, 1);
234 else 234 else
235 /* HP connected, do not turn on amplifier */ 235 /* HP connected, do not turn on amplifier */
236 printk("HP connected\n"); 236 printk("HP connected\n");
@@ -250,7 +250,7 @@ static DECLARE_DELAYED_WORK(codec_power_down_work, codec_delayed_power_down);
250static void nokia770_audio_pwr_down(void) 250static void nokia770_audio_pwr_down(void)
251{ 251{
252 /* Turn off amplifier */ 252 /* Turn off amplifier */
253 omap_set_gpio_dataout(AMPLIFIER_CTRL_GPIO, 0); 253 gpio_set_value(AMPLIFIER_CTRL_GPIO, 0);
254 254
255 /* Turn off codec: schedule delayed work */ 255 /* Turn off codec: schedule delayed work */
256 schedule_delayed_work(&codec_power_down_work, HZ / 20); /* 50ms */ 256 schedule_delayed_work(&codec_power_down_work, HZ / 20); /* 50ms */
diff --git a/arch/arm/mach-omap1/board-osk.c b/arch/arm/mach-omap1/board-osk.c
index 3e766e49f7cc..ff9e67baa5c9 100644
--- a/arch/arm/mach-omap1/board-osk.c
+++ b/arch/arm/mach-omap1/board-osk.c
@@ -188,7 +188,8 @@ static struct gpio_led tps_leds[] = {
188 /* NOTE: D9 and D2 have hardware blink support. 188 /* NOTE: D9 and D2 have hardware blink support.
189 * Also, D9 requires non-battery power. 189 * Also, D9 requires non-battery power.
190 */ 190 */
191 { .gpio = OSK_TPS_GPIO_LED_D9, .name = "d9", }, 191 { .gpio = OSK_TPS_GPIO_LED_D9, .name = "d9",
192 .default_trigger = "ide-disk", },
192 { .gpio = OSK_TPS_GPIO_LED_D2, .name = "d2", }, 193 { .gpio = OSK_TPS_GPIO_LED_D2, .name = "d2", },
193 { .gpio = OSK_TPS_GPIO_LED_D3, .name = "d3", .active_low = 1, 194 { .gpio = OSK_TPS_GPIO_LED_D3, .name = "d3", .active_low = 1,
194 .default_trigger = "heartbeat", }, 195 .default_trigger = "heartbeat", },
@@ -260,7 +261,6 @@ static struct i2c_board_info __initdata osk_i2c_board_info[] = {
260 }, 261 },
261 /* TODO when driver support is ready: 262 /* TODO when driver support is ready:
262 * - aic23 audio chip at 0x1a 263 * - aic23 audio chip at 0x1a
263 * - on Mistral, 24c04 eeprom at 0x50
264 * - optionally on Mistral, ov9640 camera sensor at 0x30 264 * - optionally on Mistral, ov9640 camera sensor at 0x30
265 */ 265 */
266}; 266};
@@ -288,7 +288,7 @@ static void __init osk_init_cf(void)
288 return; 288 return;
289 } 289 }
290 /* the CF I/O IRQ is really active-low */ 290 /* the CF I/O IRQ is really active-low */
291 set_irq_type(OMAP_GPIO_IRQ(62), IRQ_TYPE_EDGE_FALLING); 291 set_irq_type(gpio_to_irq(62), IRQ_TYPE_EDGE_FALLING);
292} 292}
293 293
294static void __init osk_init_irq(void) 294static void __init osk_init_irq(void)
@@ -337,11 +337,28 @@ static struct omap_board_config_kernel osk_config[] __initdata = {
337#ifdef CONFIG_OMAP_OSK_MISTRAL 337#ifdef CONFIG_OMAP_OSK_MISTRAL
338 338
339#include <linux/input.h> 339#include <linux/input.h>
340#include <linux/i2c/at24.h>
340#include <linux/spi/spi.h> 341#include <linux/spi/spi.h>
341#include <linux/spi/ads7846.h> 342#include <linux/spi/ads7846.h>
342 343
343#include <mach/keypad.h> 344#include <mach/keypad.h>
344 345
346static struct at24_platform_data at24c04 = {
347 .byte_len = SZ_4K / 8,
348 .page_size = 16,
349};
350
351static struct i2c_board_info __initdata mistral_i2c_board_info[] = {
352 {
353 /* NOTE: powered from LCD supply */
354 I2C_BOARD_INFO("24c04", 0x50),
355 .platform_data = &at24c04,
356 },
357 /* TODO when driver support is ready:
358 * - optionally ov9640 camera sensor at 0x30
359 */
360};
361
345static const int osk_keymap[] = { 362static const int osk_keymap[] = {
346 /* KEY(col, row, code) */ 363 /* KEY(col, row, code) */
347 KEY(0, 0, KEY_F1), /* SW4 */ 364 KEY(0, 0, KEY_F1), /* SW4 */
@@ -483,23 +500,30 @@ static void __init osk_mistral_init(void)
483 omap_cfg_reg(P20_1610_GPIO4); /* PENIRQ */ 500 omap_cfg_reg(P20_1610_GPIO4); /* PENIRQ */
484 gpio_request(4, "ts_int"); 501 gpio_request(4, "ts_int");
485 gpio_direction_input(4); 502 gpio_direction_input(4);
486 set_irq_type(OMAP_GPIO_IRQ(4), IRQ_TYPE_EDGE_FALLING); 503 set_irq_type(gpio_to_irq(4), IRQ_TYPE_EDGE_FALLING);
487 504
488 spi_register_board_info(mistral_boardinfo, 505 spi_register_board_info(mistral_boardinfo,
489 ARRAY_SIZE(mistral_boardinfo)); 506 ARRAY_SIZE(mistral_boardinfo));
490 507
491 /* the sideways button (SW1) is for use as a "wakeup" button */ 508 /* the sideways button (SW1) is for use as a "wakeup" button
509 *
510 * NOTE: The Mistral board has the wakeup button (SW1) wired
511 * to the LCD 3.3V rail, which is powered down during suspend.
512 * To allow this button to wake up the omap, work around this
513 * HW bug by rewiring SW1 to use the main 3.3V rail.
514 */
492 omap_cfg_reg(N15_1610_MPUIO2); 515 omap_cfg_reg(N15_1610_MPUIO2);
493 if (gpio_request(OMAP_MPUIO(2), "wakeup") == 0) { 516 if (gpio_request(OMAP_MPUIO(2), "wakeup") == 0) {
494 int ret = 0; 517 int ret = 0;
518 int irq = gpio_to_irq(OMAP_MPUIO(2));
495 519
496 gpio_direction_input(OMAP_MPUIO(2)); 520 gpio_direction_input(OMAP_MPUIO(2));
497 set_irq_type(OMAP_GPIO_IRQ(OMAP_MPUIO(2)), IRQ_TYPE_EDGE_RISING); 521 set_irq_type(irq, IRQ_TYPE_EDGE_RISING);
498#ifdef CONFIG_PM 522#ifdef CONFIG_PM
499 /* share the IRQ in case someone wants to use the 523 /* share the IRQ in case someone wants to use the
500 * button for more than wakeup from system sleep. 524 * button for more than wakeup from system sleep.
501 */ 525 */
502 ret = request_irq(OMAP_GPIO_IRQ(OMAP_MPUIO(2)), 526 ret = request_irq(irq,
503 &osk_mistral_wake_interrupt, 527 &osk_mistral_wake_interrupt,
504 IRQF_SHARED, "mistral_wakeup", 528 IRQF_SHARED, "mistral_wakeup",
505 &osk_mistral_wake_interrupt); 529 &osk_mistral_wake_interrupt);
@@ -508,7 +532,7 @@ static void __init osk_mistral_init(void)
508 printk(KERN_ERR "OSK+Mistral: no wakeup irq, %d?\n", 532 printk(KERN_ERR "OSK+Mistral: no wakeup irq, %d?\n",
509 ret); 533 ret);
510 } else 534 } else
511 enable_irq_wake(OMAP_GPIO_IRQ(OMAP_MPUIO(2))); 535 enable_irq_wake(irq);
512#endif 536#endif
513 } else 537 } else
514 printk(KERN_ERR "OSK+Mistral: wakeup button is awol\n"); 538 printk(KERN_ERR "OSK+Mistral: wakeup button is awol\n");
@@ -520,6 +544,9 @@ static void __init osk_mistral_init(void)
520 if (gpio_request(2, "lcd_pwr") == 0) 544 if (gpio_request(2, "lcd_pwr") == 0)
521 gpio_direction_output(2, 1); 545 gpio_direction_output(2, 1);
522 546
547 i2c_register_board_info(1, mistral_i2c_board_info,
548 ARRAY_SIZE(mistral_i2c_board_info));
549
523 platform_add_devices(mistral_devices, ARRAY_SIZE(mistral_devices)); 550 platform_add_devices(mistral_devices, ARRAY_SIZE(mistral_devices));
524} 551}
525#else 552#else
diff --git a/arch/arm/mach-omap1/board-palmte.c b/arch/arm/mach-omap1/board-palmte.c
index b58043644a6f..4141e3917d7c 100644
--- a/arch/arm/mach-omap1/board-palmte.c
+++ b/arch/arm/mach-omap1/board-palmte.c
@@ -255,7 +255,7 @@ static void palmte_get_power_status(struct apm_power_info *info, int *battery)
255{ 255{
256 int charging, batt, hi, lo, mid; 256 int charging, batt, hi, lo, mid;
257 257
258 charging = !omap_get_gpio_datain(PALMTE_DC_GPIO); 258 charging = !gpio_get_value(PALMTE_DC_GPIO);
259 batt = battery[0]; 259 batt = battery[0];
260 if (charging) 260 if (charging)
261 batt -= 60; 261 batt -= 60;
@@ -335,11 +335,11 @@ static void palmte_headphones_detect(void *data, int state)
335{ 335{
336 if (state) { 336 if (state) {
337 /* Headphones connected, disable speaker */ 337 /* Headphones connected, disable speaker */
338 omap_set_gpio_dataout(PALMTE_SPEAKER_GPIO, 0); 338 gpio_set_value(PALMTE_SPEAKER_GPIO, 0);
339 printk(KERN_INFO "PM: speaker off\n"); 339 printk(KERN_INFO "PM: speaker off\n");
340 } else { 340 } else {
341 /* Headphones unplugged, re-enable speaker */ 341 /* Headphones unplugged, re-enable speaker */
342 omap_set_gpio_dataout(PALMTE_SPEAKER_GPIO, 1); 342 gpio_set_value(PALMTE_SPEAKER_GPIO, 1);
343 printk(KERN_INFO "PM: speaker on\n"); 343 printk(KERN_INFO "PM: speaker on\n");
344 } 344 }
345} 345}
@@ -347,18 +347,18 @@ static void palmte_headphones_detect(void *data, int state)
347static void __init palmte_misc_gpio_setup(void) 347static void __init palmte_misc_gpio_setup(void)
348{ 348{
349 /* Set TSC2102 PINTDAV pin as input (used by TSC2102 driver) */ 349 /* Set TSC2102 PINTDAV pin as input (used by TSC2102 driver) */
350 if (omap_request_gpio(PALMTE_PINTDAV_GPIO)) { 350 if (gpio_request(PALMTE_PINTDAV_GPIO, "TSC2102 PINTDAV") < 0) {
351 printk(KERN_ERR "Could not reserve PINTDAV GPIO!\n"); 351 printk(KERN_ERR "Could not reserve PINTDAV GPIO!\n");
352 return; 352 return;
353 } 353 }
354 omap_set_gpio_direction(PALMTE_PINTDAV_GPIO, 1); 354 gpio_direction_input(PALMTE_PINTDAV_GPIO);
355 355
356 /* Set USB-or-DC-IN pin as input (unused) */ 356 /* Set USB-or-DC-IN pin as input (unused) */
357 if (omap_request_gpio(PALMTE_USB_OR_DC_GPIO)) { 357 if (gpio_request(PALMTE_USB_OR_DC_GPIO, "USB/DC-IN") < 0) {
358 printk(KERN_ERR "Could not reserve cable signal GPIO!\n"); 358 printk(KERN_ERR "Could not reserve cable signal GPIO!\n");
359 return; 359 return;
360 } 360 }
361 omap_set_gpio_direction(PALMTE_USB_OR_DC_GPIO, 1); 361 gpio_direction_input(PALMTE_USB_OR_DC_GPIO);
362} 362}
363 363
364static void __init omap_palmte_init(void) 364static void __init omap_palmte_init(void)
diff --git a/arch/arm/mach-omap1/board-palmtt.c b/arch/arm/mach-omap1/board-palmtt.c
index 40f9860a09df..5c001afe8062 100644
--- a/arch/arm/mach-omap1/board-palmtt.c
+++ b/arch/arm/mach-omap1/board-palmtt.c
@@ -268,7 +268,7 @@ static struct platform_device *palmtt_devices[] __initdata = {
268 268
269static int palmtt_get_pendown_state(void) 269static int palmtt_get_pendown_state(void)
270{ 270{
271 return !omap_get_gpio_datain(6); 271 return !gpio_get_value(6);
272} 272}
273 273
274static const struct ads7846_platform_data palmtt_ts_info = { 274static const struct ads7846_platform_data palmtt_ts_info = {
diff --git a/arch/arm/mach-omap1/board-palmz71.c b/arch/arm/mach-omap1/board-palmz71.c
index e719294250b1..801fb5f62ed7 100644
--- a/arch/arm/mach-omap1/board-palmz71.c
+++ b/arch/arm/mach-omap1/board-palmz71.c
@@ -239,7 +239,7 @@ static struct platform_device *devices[] __initdata = {
239static int 239static int
240palmz71_get_pendown_state(void) 240palmz71_get_pendown_state(void)
241{ 241{
242 return !omap_get_gpio_datain(PALMZ71_PENIRQ_GPIO); 242 return !gpio_get_value(PALMZ71_PENIRQ_GPIO);
243} 243}
244 244
245static const struct ads7846_platform_data palmz71_ts_info = { 245static const struct ads7846_platform_data palmz71_ts_info = {
@@ -295,13 +295,13 @@ static struct omap_board_config_kernel palmz71_config[] __initdata = {
295static irqreturn_t 295static irqreturn_t
296palmz71_powercable(int irq, void *dev_id) 296palmz71_powercable(int irq, void *dev_id)
297{ 297{
298 if (omap_get_gpio_datain(PALMZ71_USBDETECT_GPIO)) { 298 if (gpio_get_value(PALMZ71_USBDETECT_GPIO)) {
299 printk(KERN_INFO "PM: Power cable connected\n"); 299 printk(KERN_INFO "PM: Power cable connected\n");
300 set_irq_type(OMAP_GPIO_IRQ(PALMZ71_USBDETECT_GPIO), 300 set_irq_type(gpio_to_irq(PALMZ71_USBDETECT_GPIO),
301 IRQ_TYPE_EDGE_FALLING); 301 IRQ_TYPE_EDGE_FALLING);
302 } else { 302 } else {
303 printk(KERN_INFO "PM: Power cable disconnected\n"); 303 printk(KERN_INFO "PM: Power cable disconnected\n");
304 set_irq_type(OMAP_GPIO_IRQ(PALMZ71_USBDETECT_GPIO), 304 set_irq_type(gpio_to_irq(PALMZ71_USBDETECT_GPIO),
305 IRQ_TYPE_EDGE_RISING); 305 IRQ_TYPE_EDGE_RISING);
306 } 306 }
307 return IRQ_HANDLED; 307 return IRQ_HANDLED;
@@ -323,29 +323,28 @@ palmz71_gpio_setup(int early)
323{ 323{
324 if (early) { 324 if (early) {
325 /* Only set GPIO1 so we have a working serial */ 325 /* Only set GPIO1 so we have a working serial */
326 omap_set_gpio_dataout(1, 1); 326 gpio_direction_output(1, 1);
327 omap_set_gpio_direction(1, 0);
328 } else { 327 } else {
329 /* Set MMC/SD host WP pin as input */ 328 /* Set MMC/SD host WP pin as input */
330 if (omap_request_gpio(PALMZ71_MMC_WP_GPIO)) { 329 if (gpio_request(PALMZ71_MMC_WP_GPIO, "MMC WP") < 0) {
331 printk(KERN_ERR "Could not reserve WP GPIO!\n"); 330 printk(KERN_ERR "Could not reserve WP GPIO!\n");
332 return; 331 return;
333 } 332 }
334 omap_set_gpio_direction(PALMZ71_MMC_WP_GPIO, 1); 333 gpio_direction_input(PALMZ71_MMC_WP_GPIO);
335 334
336 /* Monitor the Power-cable-connected signal */ 335 /* Monitor the Power-cable-connected signal */
337 if (omap_request_gpio(PALMZ71_USBDETECT_GPIO)) { 336 if (gpio_request(PALMZ71_USBDETECT_GPIO, "USB detect") < 0) {
338 printk(KERN_ERR 337 printk(KERN_ERR
339 "Could not reserve cable signal GPIO!\n"); 338 "Could not reserve cable signal GPIO!\n");
340 return; 339 return;
341 } 340 }
342 omap_set_gpio_direction(PALMZ71_USBDETECT_GPIO, 1); 341 gpio_direction_input(PALMZ71_USBDETECT_GPIO);
343 if (request_irq(OMAP_GPIO_IRQ(PALMZ71_USBDETECT_GPIO), 342 if (request_irq(gpio_to_irq(PALMZ71_USBDETECT_GPIO),
344 palmz71_powercable, IRQF_SAMPLE_RANDOM, 343 palmz71_powercable, IRQF_SAMPLE_RANDOM,
345 "palmz71-cable", 0)) 344 "palmz71-cable", 0))
346 printk(KERN_ERR 345 printk(KERN_ERR
347 "IRQ request for power cable failed!\n"); 346 "IRQ request for power cable failed!\n");
348 palmz71_powercable(OMAP_GPIO_IRQ(PALMZ71_USBDETECT_GPIO), 0); 347 palmz71_powercable(gpio_to_irq(PALMZ71_USBDETECT_GPIO), 0);
349 } 348 }
350} 349}
351 350
diff --git a/arch/arm/mach-omap1/board-perseus2.c b/arch/arm/mach-omap1/board-perseus2.c
index b715917bfdaf..3b9f907aa899 100644
--- a/arch/arm/mach-omap1/board-perseus2.c
+++ b/arch/arm/mach-omap1/board-perseus2.c
@@ -205,7 +205,7 @@ static struct platform_device *devices[] __initdata = {
205 205
206static int nand_dev_ready(struct omap_nand_platform_data *data) 206static int nand_dev_ready(struct omap_nand_platform_data *data)
207{ 207{
208 return omap_get_gpio_datain(P2_NAND_RB_GPIO_PIN); 208 return gpio_get_value(P2_NAND_RB_GPIO_PIN);
209} 209}
210 210
211static struct omap_uart_config perseus2_uart_config __initdata = { 211static struct omap_uart_config perseus2_uart_config __initdata = {
@@ -223,8 +223,9 @@ static struct omap_board_config_kernel perseus2_config[] __initdata = {
223 223
224static void __init omap_perseus2_init(void) 224static void __init omap_perseus2_init(void)
225{ 225{
226 if (!(omap_request_gpio(P2_NAND_RB_GPIO_PIN))) 226 if (gpio_request(P2_NAND_RB_GPIO_PIN, "NAND ready") < 0)
227 nand_data.dev_ready = nand_dev_ready; 227 BUG();
228 nand_data.dev_ready = nand_dev_ready;
228 229
229 omap_cfg_reg(L3_1610_FLASH_CS2B_OE); 230 omap_cfg_reg(L3_1610_FLASH_CS2B_OE);
230 omap_cfg_reg(M8_1610_FLASH_CS2B_WE); 231 omap_cfg_reg(M8_1610_FLASH_CS2B_WE);
diff --git a/arch/arm/mach-omap1/board-sx1.c b/arch/arm/mach-omap1/board-sx1.c
index 130bcc6fd082..93bd395b9972 100644
--- a/arch/arm/mach-omap1/board-sx1.c
+++ b/arch/arm/mach-omap1/board-sx1.c
@@ -436,14 +436,9 @@ static void __init omap_sx1_init(void)
436 omap_request_gpio(1); /* A_IRDA_OFF */ 436 omap_request_gpio(1); /* A_IRDA_OFF */
437 omap_request_gpio(11); /* A_SWITCH */ 437 omap_request_gpio(11); /* A_SWITCH */
438 omap_request_gpio(15); /* A_USB_ON */ 438 omap_request_gpio(15); /* A_USB_ON */
439 omap_set_gpio_direction(1, 0);/* gpio1 -> output */ 439 gpio_direction_output(1, 1); /*A_IRDA_OFF = 1 */
440 omap_set_gpio_direction(11, 0);/* gpio11 -> output */ 440 gpio_direction_output(11, 0); /*A_SWITCH = 0 */
441 omap_set_gpio_direction(15, 0);/* gpio15 -> output */ 441 gpio_direction_output(15, 0); /*A_USB_ON = 0 */
442 /* set GPIO data */
443 omap_set_gpio_dataout(1, 1);/*A_IRDA_OFF = 1 */
444 omap_set_gpio_dataout(11, 0);/*A_SWITCH = 0 */
445 omap_set_gpio_dataout(15, 0);/*A_USB_ON = 0 */
446
447} 442}
448/*----------------------------------------*/ 443/*----------------------------------------*/
449static void __init omap_sx1_init_irq(void) 444static void __init omap_sx1_init_irq(void)
diff --git a/arch/arm/mach-omap1/board-voiceblue.c b/arch/arm/mach-omap1/board-voiceblue.c
index 45a01311669a..92c9de1090a9 100644
--- a/arch/arm/mach-omap1/board-voiceblue.c
+++ b/arch/arm/mach-omap1/board-voiceblue.c
@@ -168,29 +168,27 @@ static void __init voiceblue_init_irq(void)
168static void __init voiceblue_init(void) 168static void __init voiceblue_init(void)
169{ 169{
170 /* Watchdog */ 170 /* Watchdog */
171 omap_request_gpio(0); 171 gpio_request(0, "Watchdog");
172 /* smc91x reset */ 172 /* smc91x reset */
173 omap_request_gpio(7); 173 gpio_request(7, "SMC91x reset");
174 omap_set_gpio_direction(7, 0); 174 gpio_direction_output(7, 1);
175 omap_set_gpio_dataout(7, 1);
176 udelay(2); /* wait at least 100ns */ 175 udelay(2); /* wait at least 100ns */
177 omap_set_gpio_dataout(7, 0); 176 gpio_set_value(7, 0);
178 mdelay(50); /* 50ms until PHY ready */ 177 mdelay(50); /* 50ms until PHY ready */
179 /* smc91x interrupt pin */ 178 /* smc91x interrupt pin */
180 omap_request_gpio(8); 179 gpio_request(8, "SMC91x irq");
181 /* 16C554 reset*/ 180 /* 16C554 reset*/
182 omap_request_gpio(6); 181 gpio_request(6, "16C554 reset");
183 omap_set_gpio_direction(6, 0); 182 gpio_direction_output(6, 0);
184 omap_set_gpio_dataout(6, 0);
185 /* 16C554 interrupt pins */ 183 /* 16C554 interrupt pins */
186 omap_request_gpio(12); 184 gpio_request(12, "16C554 irq");
187 omap_request_gpio(13); 185 gpio_request(13, "16C554 irq");
188 omap_request_gpio(14); 186 gpio_request(14, "16C554 irq");
189 omap_request_gpio(15); 187 gpio_request(15, "16C554 irq");
190 set_irq_type(OMAP_GPIO_IRQ(12), IRQ_TYPE_EDGE_RISING); 188 set_irq_type(gpio_to_irq(12), IRQ_TYPE_EDGE_RISING);
191 set_irq_type(OMAP_GPIO_IRQ(13), IRQ_TYPE_EDGE_RISING); 189 set_irq_type(gpio_to_irq(13), IRQ_TYPE_EDGE_RISING);
192 set_irq_type(OMAP_GPIO_IRQ(14), IRQ_TYPE_EDGE_RISING); 190 set_irq_type(gpio_to_irq(14), IRQ_TYPE_EDGE_RISING);
193 set_irq_type(OMAP_GPIO_IRQ(15), IRQ_TYPE_EDGE_RISING); 191 set_irq_type(gpio_to_irq(15), IRQ_TYPE_EDGE_RISING);
194 192
195 platform_add_devices(voiceblue_devices, ARRAY_SIZE(voiceblue_devices)); 193 platform_add_devices(voiceblue_devices, ARRAY_SIZE(voiceblue_devices));
196 omap_board_config = voiceblue_config; 194 omap_board_config = voiceblue_config;
@@ -244,19 +242,18 @@ static int wdt_gpio_state;
244 242
245void voiceblue_wdt_enable(void) 243void voiceblue_wdt_enable(void)
246{ 244{
247 omap_set_gpio_direction(0, 0); 245 gpio_direction_output(0, 0);
248 omap_set_gpio_dataout(0, 0); 246 gpio_set_value(0, 1);
249 omap_set_gpio_dataout(0, 1); 247 gpio_set_value(0, 0);
250 omap_set_gpio_dataout(0, 0);
251 wdt_gpio_state = 0; 248 wdt_gpio_state = 0;
252} 249}
253 250
254void voiceblue_wdt_disable(void) 251void voiceblue_wdt_disable(void)
255{ 252{
256 omap_set_gpio_dataout(0, 0); 253 gpio_set_value(0, 0);
257 omap_set_gpio_dataout(0, 1); 254 gpio_set_value(0, 1);
258 omap_set_gpio_dataout(0, 0); 255 gpio_set_value(0, 0);
259 omap_set_gpio_direction(0, 1); 256 gpio_direction_input(0);
260} 257}
261 258
262void voiceblue_wdt_ping(void) 259void voiceblue_wdt_ping(void)
@@ -265,7 +262,7 @@ void voiceblue_wdt_ping(void)
265 return; 262 return;
266 263
267 wdt_gpio_state = !wdt_gpio_state; 264 wdt_gpio_state = !wdt_gpio_state;
268 omap_set_gpio_dataout(0, wdt_gpio_state); 265 gpio_set_value(0, wdt_gpio_state);
269} 266}
270 267
271void voiceblue_reset(void) 268void voiceblue_reset(void)
diff --git a/arch/arm/mach-omap1/fpga.c b/arch/arm/mach-omap1/fpga.c
index 04995381aa5c..4f2b8a7adb19 100644
--- a/arch/arm/mach-omap1/fpga.c
+++ b/arch/arm/mach-omap1/fpga.c
@@ -177,9 +177,9 @@ void omap1510_fpga_init_irq(void)
177 * NOTE: For general GPIO/MPUIO access and interrupts, please see 177 * NOTE: For general GPIO/MPUIO access and interrupts, please see
178 * gpio.[ch] 178 * gpio.[ch]
179 */ 179 */
180 omap_request_gpio(13); 180 gpio_request(13, "FPGA irq");
181 omap_set_gpio_direction(13, 1); 181 gpio_direction_input(13);
182 set_irq_type(OMAP_GPIO_IRQ(13), IRQ_TYPE_EDGE_RISING); 182 set_irq_type(gpio_to_irq(13), IRQ_TYPE_EDGE_RISING);
183 set_irq_chained_handler(OMAP1510_INT_FPGA, innovator_fpga_IRQ_demux); 183 set_irq_chained_handler(OMAP1510_INT_FPGA, innovator_fpga_IRQ_demux);
184} 184}
185 185
diff --git a/arch/arm/mach-omap1/id.c b/arch/arm/mach-omap1/id.c
index 13083d7e692d..89bb8756f450 100644
--- a/arch/arm/mach-omap1/id.c
+++ b/arch/arm/mach-omap1/id.c
@@ -15,6 +15,7 @@
15#include <linux/kernel.h> 15#include <linux/kernel.h>
16#include <linux/init.h> 16#include <linux/init.h>
17#include <linux/io.h> 17#include <linux/io.h>
18#include <mach/cpu.h>
18 19
19#define OMAP_DIE_ID_0 0xfffe1800 20#define OMAP_DIE_ID_0 0xfffe1800
20#define OMAP_DIE_ID_1 0xfffe1804 21#define OMAP_DIE_ID_1 0xfffe1804
@@ -30,6 +31,8 @@ struct omap_id {
30 u32 type; /* Cpu id bits [31:08], cpu class bits [07:00] */ 31 u32 type; /* Cpu id bits [31:08], cpu class bits [07:00] */
31}; 32};
32 33
34static unsigned int omap_revision;
35
33/* Register values to detect the OMAP version */ 36/* Register values to detect the OMAP version */
34static struct omap_id omap_ids[] __initdata = { 37static struct omap_id omap_ids[] __initdata = {
35 { .jtag_id = 0xb574, .die_rev = 0x2, .omap_id = 0x03310315, .type = 0x03100000}, 38 { .jtag_id = 0xb574, .die_rev = 0x2, .omap_id = 0x03310315, .type = 0x03100000},
@@ -53,6 +56,12 @@ static struct omap_id omap_ids[] __initdata = {
53 { .jtag_id = 0xb5f7, .die_rev = 0x2, .omap_id = 0x03330100, .type = 0x17100000}, 56 { .jtag_id = 0xb5f7, .die_rev = 0x2, .omap_id = 0x03330100, .type = 0x17100000},
54}; 57};
55 58
59unsigned int omap_rev(void)
60{
61 return omap_revision;
62}
63EXPORT_SYMBOL(omap_rev);
64
56/* 65/*
57 * Get OMAP type from PROD_ID. 66 * Get OMAP type from PROD_ID.
58 * 1710 has the PROD_ID in bits 15:00, not in 16:01 as documented in TRM. 67 * 1710 has the PROD_ID in bits 15:00, not in 16:01 as documented in TRM.
@@ -121,17 +130,18 @@ void __init omap_check_revision(void)
121 omap_id = omap_readl(OMAP32_ID_0); 130 omap_id = omap_readl(OMAP32_ID_0);
122 131
123#ifdef DEBUG 132#ifdef DEBUG
124 printk("OMAP_DIE_ID_0: 0x%08x\n", omap_readl(OMAP_DIE_ID_0)); 133 printk(KERN_DEBUG "OMAP_DIE_ID_0: 0x%08x\n", omap_readl(OMAP_DIE_ID_0));
125 printk("OMAP_DIE_ID_1: 0x%08x DIE_REV: %i\n", 134 printk(KERN_DEBUG "OMAP_DIE_ID_1: 0x%08x DIE_REV: %i\n",
126 omap_readl(OMAP_DIE_ID_1), 135 omap_readl(OMAP_DIE_ID_1),
127 (omap_readl(OMAP_DIE_ID_1) >> 17) & 0xf); 136 (omap_readl(OMAP_DIE_ID_1) >> 17) & 0xf);
128 printk("OMAP_PRODUCTION_ID_0: 0x%08x\n", omap_readl(OMAP_PRODUCTION_ID_0)); 137 printk(KERN_DEBUG "OMAP_PRODUCTION_ID_0: 0x%08x\n",
129 printk("OMAP_PRODUCTION_ID_1: 0x%08x JTAG_ID: 0x%04x\n", 138 omap_readl(OMAP_PRODUCTION_ID_0));
139 printk(KERN_DEBUG "OMAP_PRODUCTION_ID_1: 0x%08x JTAG_ID: 0x%04x\n",
130 omap_readl(OMAP_PRODUCTION_ID_1), 140 omap_readl(OMAP_PRODUCTION_ID_1),
131 omap_readl(OMAP_PRODUCTION_ID_1) & 0xffff); 141 omap_readl(OMAP_PRODUCTION_ID_1) & 0xffff);
132 printk("OMAP32_ID_0: 0x%08x\n", omap_readl(OMAP32_ID_0)); 142 printk(KERN_DEBUG "OMAP32_ID_0: 0x%08x\n", omap_readl(OMAP32_ID_0));
133 printk("OMAP32_ID_1: 0x%08x\n", omap_readl(OMAP32_ID_1)); 143 printk(KERN_DEBUG "OMAP32_ID_1: 0x%08x\n", omap_readl(OMAP32_ID_1));
134 printk("JTAG_ID: 0x%04x DIE_REV: %i\n", jtag_id, die_rev); 144 printk(KERN_DEBUG "JTAG_ID: 0x%04x DIE_REV: %i\n", jtag_id, die_rev);
135#endif 145#endif
136 146
137 system_serial_high = omap_readl(OMAP_DIE_ID_0); 147 system_serial_high = omap_readl(OMAP_DIE_ID_0);
@@ -140,7 +150,7 @@ void __init omap_check_revision(void)
140 /* First check only the major version in a safe way */ 150 /* First check only the major version in a safe way */
141 for (i = 0; i < ARRAY_SIZE(omap_ids); i++) { 151 for (i = 0; i < ARRAY_SIZE(omap_ids); i++) {
142 if (jtag_id == (omap_ids[i].jtag_id)) { 152 if (jtag_id == (omap_ids[i].jtag_id)) {
143 system_rev = omap_ids[i].type; 153 omap_revision = omap_ids[i].type;
144 break; 154 break;
145 } 155 }
146 } 156 }
@@ -148,7 +158,7 @@ void __init omap_check_revision(void)
148 /* Check if we can find the die revision */ 158 /* Check if we can find the die revision */
149 for (i = 0; i < ARRAY_SIZE(omap_ids); i++) { 159 for (i = 0; i < ARRAY_SIZE(omap_ids); i++) {
150 if (jtag_id == omap_ids[i].jtag_id && die_rev == omap_ids[i].die_rev) { 160 if (jtag_id == omap_ids[i].jtag_id && die_rev == omap_ids[i].die_rev) {
151 system_rev = omap_ids[i].type; 161 omap_revision = omap_ids[i].type;
152 break; 162 break;
153 } 163 }
154 } 164 }
@@ -158,38 +168,35 @@ void __init omap_check_revision(void)
158 if (jtag_id == omap_ids[i].jtag_id 168 if (jtag_id == omap_ids[i].jtag_id
159 && die_rev == omap_ids[i].die_rev 169 && die_rev == omap_ids[i].die_rev
160 && omap_id == omap_ids[i].omap_id) { 170 && omap_id == omap_ids[i].omap_id) {
161 system_rev = omap_ids[i].type; 171 omap_revision = omap_ids[i].type;
162 break; 172 break;
163 } 173 }
164 } 174 }
165 175
166 /* Add the cpu class info (7xx, 15xx, 16xx, 24xx) */ 176 /* Add the cpu class info (7xx, 15xx, 16xx, 24xx) */
167 cpu_type = system_rev >> 24; 177 cpu_type = omap_revision >> 24;
168 178
169 switch (cpu_type) { 179 switch (cpu_type) {
170 case 0x07: 180 case 0x07:
171 system_rev |= 0x07; 181 omap_revision |= 0x07;
172 break; 182 break;
173 case 0x03: 183 case 0x03:
174 case 0x15: 184 case 0x15:
175 system_rev |= 0x15; 185 omap_revision |= 0x15;
176 break; 186 break;
177 case 0x16: 187 case 0x16:
178 case 0x17: 188 case 0x17:
179 system_rev |= 0x16; 189 omap_revision |= 0x16;
180 break;
181 case 0x24:
182 system_rev |= 0x24;
183 break; 190 break;
184 default: 191 default:
185 printk("Unknown OMAP cpu type: 0x%02x\n", cpu_type); 192 printk(KERN_INFO "Unknown OMAP cpu type: 0x%02x\n", cpu_type);
186 } 193 }
187 194
188 printk("OMAP%04x", system_rev >> 16); 195 printk(KERN_INFO "OMAP%04x", omap_revision >> 16);
189 if ((system_rev >> 8) & 0xff) 196 if ((omap_revision >> 8) & 0xff)
190 printk("%x", (system_rev >> 8) & 0xff); 197 printk(KERN_INFO "%x", (omap_revision >> 8) & 0xff);
191 printk(" revision %i handled as %02xxx id: %08x%08x\n", 198 printk(KERN_INFO " revision %i handled as %02xxx id: %08x%08x\n",
192 die_rev, system_rev & 0xff, system_serial_low, 199 die_rev, omap_revision & 0xff, system_serial_low,
193 system_serial_high); 200 system_serial_high);
194} 201}
195 202
diff --git a/arch/arm/mach-omap1/io.c b/arch/arm/mach-omap1/io.c
index b3bd8ca85118..4c3e582f3d3c 100644
--- a/arch/arm/mach-omap1/io.c
+++ b/arch/arm/mach-omap1/io.c
@@ -128,7 +128,7 @@ void __init omap1_map_common_io(void)
128 * Common low-level hardware init for omap1. This should only get called from 128 * Common low-level hardware init for omap1. This should only get called from
129 * board specific init. 129 * board specific init.
130 */ 130 */
131void __init omap1_init_common_hw() 131void __init omap1_init_common_hw(void)
132{ 132{
133 /* REVISIT: Refer to OMAP5910 Errata, Advisory SYS_1: "Timeout Abort 133 /* REVISIT: Refer to OMAP5910 Errata, Advisory SYS_1: "Timeout Abort
134 * on a Posted Write in the TIPB Bridge". 134 * on a Posted Write in the TIPB Bridge".
diff --git a/arch/arm/mach-omap1/leds-h2p2-debug.c b/arch/arm/mach-omap1/leds-h2p2-debug.c
index 71fe2cc7f7cf..17c9d0e04216 100644
--- a/arch/arm/mach-omap1/leds-h2p2-debug.c
+++ b/arch/arm/mach-omap1/leds-h2p2-debug.c
@@ -65,8 +65,8 @@ void h2p2_dbg_leds_event(led_event_t evt)
65 /* all leds off during suspend or shutdown */ 65 /* all leds off during suspend or shutdown */
66 66
67 if (! machine_is_omap_perseus2()) { 67 if (! machine_is_omap_perseus2()) {
68 omap_set_gpio_dataout(GPIO_TIMER, 0); 68 gpio_set_value(GPIO_TIMER, 0);
69 omap_set_gpio_dataout(GPIO_IDLE, 0); 69 gpio_set_value(GPIO_IDLE, 0);
70 } 70 }
71 71
72 __raw_writew(~0, &fpga->leds); 72 __raw_writew(~0, &fpga->leds);
@@ -94,7 +94,7 @@ void h2p2_dbg_leds_event(led_event_t evt)
94 if (machine_is_omap_perseus2()) 94 if (machine_is_omap_perseus2())
95 hw_led_state ^= H2P2_DBG_FPGA_P2_LED_TIMER; 95 hw_led_state ^= H2P2_DBG_FPGA_P2_LED_TIMER;
96 else { 96 else {
97 omap_set_gpio_dataout(GPIO_TIMER, led_state & LED_TIMER_ON); 97 gpio_set_value(GPIO_TIMER, led_state & LED_TIMER_ON);
98 goto done; 98 goto done;
99 } 99 }
100 100
@@ -106,7 +106,7 @@ void h2p2_dbg_leds_event(led_event_t evt)
106 if (machine_is_omap_perseus2()) 106 if (machine_is_omap_perseus2())
107 hw_led_state |= H2P2_DBG_FPGA_P2_LED_IDLE; 107 hw_led_state |= H2P2_DBG_FPGA_P2_LED_IDLE;
108 else { 108 else {
109 omap_set_gpio_dataout(GPIO_IDLE, 1); 109 gpio_set_value(GPIO_IDLE, 1);
110 goto done; 110 goto done;
111 } 111 }
112 112
@@ -116,7 +116,7 @@ void h2p2_dbg_leds_event(led_event_t evt)
116 if (machine_is_omap_perseus2()) 116 if (machine_is_omap_perseus2())
117 hw_led_state &= ~H2P2_DBG_FPGA_P2_LED_IDLE; 117 hw_led_state &= ~H2P2_DBG_FPGA_P2_LED_IDLE;
118 else { 118 else {
119 omap_set_gpio_dataout(GPIO_IDLE, 0); 119 gpio_set_value(GPIO_IDLE, 0);
120 goto done; 120 goto done;
121 } 121 }
122 122
diff --git a/arch/arm/mach-omap1/leds-osk.c b/arch/arm/mach-omap1/leds-osk.c
index 98e789622dfd..499d7ad8697d 100644
--- a/arch/arm/mach-omap1/leds-osk.c
+++ b/arch/arm/mach-omap1/leds-osk.c
@@ -44,8 +44,8 @@ static void mistral_setled(void)
44 green = 1; 44 green = 1;
45 /* else both sides are disabled */ 45 /* else both sides are disabled */
46 46
47 omap_set_gpio_dataout(GPIO_LED_GREEN, green); 47 gpio_set_value(GPIO_LED_GREEN, green);
48 omap_set_gpio_dataout(GPIO_LED_RED, red); 48 gpio_set_value(GPIO_LED_RED, red);
49} 49}
50 50
51#endif 51#endif
diff --git a/arch/arm/mach-omap1/leds.c b/arch/arm/mach-omap1/leds.c
index 6cdad93c4a00..8cbf2562dcaa 100644
--- a/arch/arm/mach-omap1/leds.c
+++ b/arch/arm/mach-omap1/leds.c
@@ -47,14 +47,14 @@ omap_leds_init(void)
47 * that's a different kind of LED (just one color at a time). 47 * that's a different kind of LED (just one color at a time).
48 */ 48 */
49 omap_cfg_reg(P18_1610_GPIO3); 49 omap_cfg_reg(P18_1610_GPIO3);
50 if (omap_request_gpio(3) == 0) 50 if (gpio_request(3, "LED red") == 0)
51 omap_set_gpio_direction(3, 0); 51 gpio_direction_output(3, 1);
52 else 52 else
53 printk(KERN_WARNING "LED: can't get GPIO3/red?\n"); 53 printk(KERN_WARNING "LED: can't get GPIO3/red?\n");
54 54
55 omap_cfg_reg(MPUIO4); 55 omap_cfg_reg(MPUIO4);
56 if (omap_request_gpio(OMAP_MPUIO(4)) == 0) 56 if (gpio_request(OMAP_MPUIO(4), "LED green") == 0)
57 omap_set_gpio_direction(OMAP_MPUIO(4), 0); 57 gpio_direction_output(OMAP_MPUIO(4), 1);
58 else 58 else
59 printk(KERN_WARNING "LED: can't get MPUIO4/green?\n"); 59 printk(KERN_WARNING "LED: can't get MPUIO4/green?\n");
60 } 60 }
diff --git a/arch/arm/mach-omap1/pm.c b/arch/arm/mach-omap1/pm.c
index 770d256c790b..9774c1f5311e 100644
--- a/arch/arm/mach-omap1/pm.c
+++ b/arch/arm/mach-omap1/pm.c
@@ -226,7 +226,8 @@ void omap_pm_suspend(void)
226{ 226{
227 unsigned long arg0 = 0, arg1 = 0; 227 unsigned long arg0 = 0, arg1 = 0;
228 228
229 printk("PM: OMAP%x is trying to enter deep sleep...\n", system_rev); 229 printk(KERN_INFO "PM: OMAP%x is trying to enter deep sleep...\n",
230 omap_rev());
230 231
231 omap_serial_wake_trigger(1); 232 omap_serial_wake_trigger(1);
232 233
@@ -421,7 +422,8 @@ void omap_pm_suspend(void)
421 422
422 omap_serial_wake_trigger(0); 423 omap_serial_wake_trigger(0);
423 424
424 printk("PM: OMAP%x is re-starting from deep sleep...\n", system_rev); 425 printk(KERN_INFO "PM: OMAP%x is re-starting from deep sleep...\n",
426 omap_rev());
425} 427}
426 428
427#if defined(DEBUG) && defined(CONFIG_PROC_FS) 429#if defined(DEBUG) && defined(CONFIG_PROC_FS)
diff --git a/arch/arm/mach-omap1/serial.c b/arch/arm/mach-omap1/serial.c
index 528691d5cb51..0002084e0655 100644
--- a/arch/arm/mach-omap1/serial.c
+++ b/arch/arm/mach-omap1/serial.c
@@ -244,22 +244,22 @@ static void __init omap_serial_set_port_wakeup(int gpio_nr)
244{ 244{
245 int ret; 245 int ret;
246 246
247 ret = omap_request_gpio(gpio_nr); 247 ret = gpio_request(gpio_nr, "UART wake");
248 if (ret < 0) { 248 if (ret < 0) {
249 printk(KERN_ERR "Could not request UART wake GPIO: %i\n", 249 printk(KERN_ERR "Could not request UART wake GPIO: %i\n",
250 gpio_nr); 250 gpio_nr);
251 return; 251 return;
252 } 252 }
253 omap_set_gpio_direction(gpio_nr, 1); 253 gpio_direction_input(gpio_nr);
254 ret = request_irq(OMAP_GPIO_IRQ(gpio_nr), &omap_serial_wake_interrupt, 254 ret = request_irq(gpio_to_irq(gpio_nr), &omap_serial_wake_interrupt,
255 IRQF_TRIGGER_RISING, "serial wakeup", NULL); 255 IRQF_TRIGGER_RISING, "serial wakeup", NULL);
256 if (ret) { 256 if (ret) {
257 omap_free_gpio(gpio_nr); 257 gpio_free(gpio_nr);
258 printk(KERN_ERR "No interrupt for UART wake GPIO: %i\n", 258 printk(KERN_ERR "No interrupt for UART wake GPIO: %i\n",
259 gpio_nr); 259 gpio_nr);
260 return; 260 return;
261 } 261 }
262 enable_irq_wake(OMAP_GPIO_IRQ(gpio_nr)); 262 enable_irq_wake(gpio_to_irq(gpio_nr));
263} 263}
264 264
265static int __init omap_serial_wakeup_init(void) 265static int __init omap_serial_wakeup_init(void)
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 4832fcc7d04a..3754b79092ab 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -55,3 +55,7 @@ config MACH_OMAP_LDP
55config MACH_OVERO 55config MACH_OVERO
56 bool "Gumstix Overo board" 56 bool "Gumstix Overo board"
57 depends on ARCH_OMAP3 && ARCH_OMAP34XX 57 depends on ARCH_OMAP3 && ARCH_OMAP34XX
58
59config MACH_OMAP3_PANDORA
60 bool "OMAP3 Pandora"
61 depends on ARCH_OMAP3 && ARCH_OMAP34XX \ No newline at end of file
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index c69392372c99..f12c43e4932f 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -32,4 +32,5 @@ obj-$(CONFIG_MACH_OMAP_APOLLON) += board-apollon.o
32obj-$(CONFIG_MACH_OMAP3_BEAGLE) += board-omap3beagle.o 32obj-$(CONFIG_MACH_OMAP3_BEAGLE) += board-omap3beagle.o
33obj-$(CONFIG_MACH_OMAP_LDP) += board-ldp.o 33obj-$(CONFIG_MACH_OMAP_LDP) += board-ldp.o
34obj-$(CONFIG_MACH_OVERO) += board-overo.o 34obj-$(CONFIG_MACH_OVERO) += board-overo.o
35obj-$(CONFIG_MACH_OMAP3_PANDORA) += board-omap3pandora.o
35 36
diff --git a/arch/arm/mach-omap2/board-2430sdp.c b/arch/arm/mach-omap2/board-2430sdp.c
index 24688efaa445..6748de6e19a8 100644
--- a/arch/arm/mach-omap2/board-2430sdp.c
+++ b/arch/arm/mach-omap2/board-2430sdp.c
@@ -168,13 +168,13 @@ static inline void __init sdp2430_init_smc91x(void)
168 sdp2430_smc91x_resources[0].end = cs_mem_base + 0x30f; 168 sdp2430_smc91x_resources[0].end = cs_mem_base + 0x30f;
169 udelay(100); 169 udelay(100);
170 170
171 if (omap_request_gpio(OMAP24XX_ETHR_GPIO_IRQ) < 0) { 171 if (gpio_request(OMAP24XX_ETHR_GPIO_IRQ, "SMC91x irq") < 0) {
172 printk(KERN_ERR "Failed to request GPIO%d for smc91x IRQ\n", 172 printk(KERN_ERR "Failed to request GPIO%d for smc91x IRQ\n",
173 OMAP24XX_ETHR_GPIO_IRQ); 173 OMAP24XX_ETHR_GPIO_IRQ);
174 gpmc_cs_free(eth_cs); 174 gpmc_cs_free(eth_cs);
175 goto out; 175 goto out;
176 } 176 }
177 omap_set_gpio_direction(OMAP24XX_ETHR_GPIO_IRQ, 1); 177 gpio_direction_input(OMAP24XX_ETHR_GPIO_IRQ);
178 178
179out: 179out:
180 clk_disable(gpmc_fck); 180 clk_disable(gpmc_fck);
diff --git a/arch/arm/mach-omap2/board-apollon.c b/arch/arm/mach-omap2/board-apollon.c
index 989ad152d7f8..d83035b436d5 100644
--- a/arch/arm/mach-omap2/board-apollon.c
+++ b/arch/arm/mach-omap2/board-apollon.c
@@ -236,13 +236,13 @@ static inline void __init apollon_init_smc91x(void)
236 udelay(100); 236 udelay(100);
237 237
238 omap_cfg_reg(W4__24XX_GPIO74); 238 omap_cfg_reg(W4__24XX_GPIO74);
239 if (omap_request_gpio(APOLLON_ETHR_GPIO_IRQ) < 0) { 239 if (gpio_request(APOLLON_ETHR_GPIO_IRQ, "SMC91x irq") < 0) {
240 printk(KERN_ERR "Failed to request GPIO%d for smc91x IRQ\n", 240 printk(KERN_ERR "Failed to request GPIO%d for smc91x IRQ\n",
241 APOLLON_ETHR_GPIO_IRQ); 241 APOLLON_ETHR_GPIO_IRQ);
242 gpmc_cs_free(APOLLON_ETH_CS); 242 gpmc_cs_free(APOLLON_ETH_CS);
243 goto out; 243 goto out;
244 } 244 }
245 omap_set_gpio_direction(APOLLON_ETHR_GPIO_IRQ, 1); 245 gpio_direction_input(APOLLON_ETHR_GPIO_IRQ);
246 246
247out: 247out:
248 clk_disable(gpmc_fck); 248 clk_disable(gpmc_fck);
@@ -327,15 +327,15 @@ static void __init apollon_sw_init(void)
327 /* Enter SW - Y11 */ 327 /* Enter SW - Y11 */
328 omap_cfg_reg(Y11_242X_GPIO16); 328 omap_cfg_reg(Y11_242X_GPIO16);
329 omap_request_gpio(SW_ENTER_GPIO16); 329 omap_request_gpio(SW_ENTER_GPIO16);
330 omap_set_gpio_direction(SW_ENTER_GPIO16, 1); 330 gpio_direction_input(SW_ENTER_GPIO16);
331 /* Up SW - AA12 */ 331 /* Up SW - AA12 */
332 omap_cfg_reg(AA12_242X_GPIO17); 332 omap_cfg_reg(AA12_242X_GPIO17);
333 omap_request_gpio(SW_UP_GPIO17); 333 omap_request_gpio(SW_UP_GPIO17);
334 omap_set_gpio_direction(SW_UP_GPIO17, 1); 334 gpio_direction_input(SW_UP_GPIO17);
335 /* Down SW - AA8 */ 335 /* Down SW - AA8 */
336 omap_cfg_reg(AA8_242X_GPIO58); 336 omap_cfg_reg(AA8_242X_GPIO58);
337 omap_request_gpio(SW_DOWN_GPIO58); 337 omap_request_gpio(SW_DOWN_GPIO58);
338 omap_set_gpio_direction(SW_DOWN_GPIO58, 1); 338 gpio_direction_input(SW_DOWN_GPIO58);
339 339
340 set_irq_type(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING); 340 set_irq_type(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
341 if (request_irq(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), &apollon_sw_interrupt, 341 if (request_irq(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), &apollon_sw_interrupt,
@@ -359,9 +359,8 @@ static void __init apollon_usb_init(void)
359 /* USB device */ 359 /* USB device */
360 /* DEVICE_SUSPEND */ 360 /* DEVICE_SUSPEND */
361 omap_cfg_reg(P21_242X_GPIO12); 361 omap_cfg_reg(P21_242X_GPIO12);
362 omap_request_gpio(12); 362 gpio_request(12, "USB suspend");
363 omap_set_gpio_direction(12, 0); /* OUT */ 363 gpio_direction_output(12, 0);
364 omap_set_gpio_dataout(12, 0);
365} 364}
366 365
367static void __init omap_apollon_init(void) 366static void __init omap_apollon_init(void)
diff --git a/arch/arm/mach-omap2/board-h4.c b/arch/arm/mach-omap2/board-h4.c
index 2fef2c845083..7de0506e1e29 100644
--- a/arch/arm/mach-omap2/board-h4.c
+++ b/arch/arm/mach-omap2/board-h4.c
@@ -19,6 +19,7 @@
19#include <linux/delay.h> 19#include <linux/delay.h>
20#include <linux/workqueue.h> 20#include <linux/workqueue.h>
21#include <linux/i2c.h> 21#include <linux/i2c.h>
22#include <linux/i2c/at24.h>
22#include <linux/input.h> 23#include <linux/input.h>
23#include <linux/err.h> 24#include <linux/err.h>
24#include <linux/clk.h> 25#include <linux/clk.h>
@@ -392,11 +393,24 @@ static struct omap_board_config_kernel h4_config[] = {
392 { OMAP_TAG_LCD, &h4_lcd_config }, 393 { OMAP_TAG_LCD, &h4_lcd_config },
393}; 394};
394 395
396static struct at24_platform_data m24c01 = {
397 .byte_len = SZ_1K / 8,
398 .page_size = 16,
399};
400
395static struct i2c_board_info __initdata h4_i2c_board_info[] = { 401static struct i2c_board_info __initdata h4_i2c_board_info[] = {
396 { 402 {
397 I2C_BOARD_INFO("isp1301_omap", 0x2d), 403 I2C_BOARD_INFO("isp1301_omap", 0x2d),
398 .irq = OMAP_GPIO_IRQ(125), 404 .irq = OMAP_GPIO_IRQ(125),
399 }, 405 },
406 { /* EEPROM on mainboard */
407 I2C_BOARD_INFO("24c01", 0x52),
408 .platform_data = &m24c01,
409 },
410 { /* EEPROM on cpu card */
411 I2C_BOARD_INFO("24c01", 0x57),
412 .platform_data = &m24c01,
413 },
400}; 414};
401 415
402static void __init omap_h4_init(void) 416static void __init omap_h4_init(void)
diff --git a/arch/arm/mach-omap2/board-ldp.c b/arch/arm/mach-omap2/board-ldp.c
index 1ea59986aa7a..43c7ac4b7f8f 100644
--- a/arch/arm/mach-omap2/board-ldp.c
+++ b/arch/arm/mach-omap2/board-ldp.c
@@ -38,11 +38,67 @@
38#include <asm/delay.h> 38#include <asm/delay.h>
39#include <mach/control.h> 39#include <mach/control.h>
40 40
41#define SDP3430_SMC91X_CS 3
42
43static struct resource ldp_smc911x_resources[] = {
44 [0] = {
45 .start = OMAP34XX_ETHR_START,
46 .end = OMAP34XX_ETHR_START + SZ_4K,
47 .flags = IORESOURCE_MEM,
48 },
49 [1] = {
50 .start = 0,
51 .end = 0,
52 .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL,
53 },
54};
55
56static struct platform_device ldp_smc911x_device = {
57 .name = "smc911x",
58 .id = -1,
59 .num_resources = ARRAY_SIZE(ldp_smc911x_resources),
60 .resource = ldp_smc911x_resources,
61};
62
63static struct platform_device *ldp_devices[] __initdata = {
64 &ldp_smc911x_device,
65};
66
67static inline void __init ldp_init_smc911x(void)
68{
69 int eth_cs;
70 unsigned long cs_mem_base;
71 int eth_gpio = 0;
72
73 eth_cs = LDP_SMC911X_CS;
74
75 if (gpmc_cs_request(eth_cs, SZ_16M, &cs_mem_base) < 0) {
76 printk(KERN_ERR "Failed to request GPMC mem for smc911x\n");
77 return;
78 }
79
80 ldp_smc911x_resources[0].start = cs_mem_base + 0x0;
81 ldp_smc911x_resources[0].end = cs_mem_base + 0xf;
82 udelay(100);
83
84 eth_gpio = LDP_SMC911X_GPIO;
85
86 ldp_smc911x_resources[1].start = OMAP_GPIO_IRQ(eth_gpio);
87
88 if (omap_request_gpio(eth_gpio) < 0) {
89 printk(KERN_ERR "Failed to request GPIO%d for smc911x IRQ\n",
90 eth_gpio);
91 return;
92 }
93 gpio_direction_input(eth_gpio);
94}
95
41static void __init omap_ldp_init_irq(void) 96static void __init omap_ldp_init_irq(void)
42{ 97{
43 omap2_init_common_hw(); 98 omap2_init_common_hw();
44 omap_init_irq(); 99 omap_init_irq();
45 omap_gpio_init(); 100 omap_gpio_init();
101 ldp_init_smc911x();
46} 102}
47 103
48static struct omap_uart_config ldp_uart_config __initdata = { 104static struct omap_uart_config ldp_uart_config __initdata = {
@@ -64,6 +120,7 @@ static int __init omap_i2c_init(void)
64static void __init omap_ldp_init(void) 120static void __init omap_ldp_init(void)
65{ 121{
66 omap_i2c_init(); 122 omap_i2c_init();
123 platform_add_devices(ldp_devices, ARRAY_SIZE(ldp_devices));
67 omap_board_config = ldp_config; 124 omap_board_config = ldp_config;
68 omap_board_config_size = ARRAY_SIZE(ldp_config); 125 omap_board_config_size = ARRAY_SIZE(ldp_config);
69 omap_serial_init(); 126 omap_serial_init();
diff --git a/arch/arm/mach-omap2/board-omap3pandora.c b/arch/arm/mach-omap2/board-omap3pandora.c
new file mode 100644
index 000000000000..7236c7be05b3
--- /dev/null
+++ b/arch/arm/mach-omap2/board-omap3pandora.c
@@ -0,0 +1,180 @@
1/*
2 * board-omap3pandora.c (Pandora Handheld Console)
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * version 2 as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
16 * 02110-1301 USA
17 *
18 */
19
20#include <linux/init.h>
21#include <linux/kernel.h>
22#include <linux/platform_device.h>
23
24#include <linux/spi/spi.h>
25#include <linux/spi/ads7846.h>
26#include <linux/i2c/twl4030.h>
27
28#include <asm/mach-types.h>
29#include <asm/mach/arch.h>
30#include <asm/mach/map.h>
31
32#include <mach/board.h>
33#include <mach/common.h>
34#include <mach/gpio.h>
35#include <mach/hardware.h>
36#include <mach/mcspi.h>
37
38#define OMAP3_PANDORA_TS_GPIO 94
39
40static struct omap_uart_config omap3pandora_uart_config __initdata = {
41 .enabled_uarts = (1 << 2), /* UART3 */
42};
43
44static struct twl4030_gpio_platform_data omap3pandora_gpio_data = {
45 .gpio_base = OMAP_MAX_GPIO_LINES,
46 .irq_base = TWL4030_GPIO_IRQ_BASE,
47 .irq_end = TWL4030_GPIO_IRQ_END,
48};
49
50static struct twl4030_usb_data omap3pandora_usb_data = {
51 .usb_mode = T2_USB_MODE_ULPI,
52};
53
54static struct twl4030_platform_data omap3pandora_twldata = {
55 .irq_base = TWL4030_IRQ_BASE,
56 .irq_end = TWL4030_IRQ_END,
57 .gpio = &omap3pandora_gpio_data,
58 .usb = &omap3pandora_usb_data,
59};
60
61static struct i2c_board_info __initdata omap3pandora_i2c_boardinfo[] = {
62 {
63 I2C_BOARD_INFO("tps65950", 0x48),
64 .flags = I2C_CLIENT_WAKE,
65 .irq = INT_34XX_SYS_NIRQ,
66 .platform_data = &omap3pandora_twldata,
67 },
68};
69
70static int __init omap3pandora_i2c_init(void)
71{
72 omap_register_i2c_bus(1, 2600, omap3pandora_i2c_boardinfo,
73 ARRAY_SIZE(omap3pandora_i2c_boardinfo));
74 /* i2c2 pins are not connected */
75 omap_register_i2c_bus(3, 400, NULL, 0);
76 return 0;
77}
78
79static void __init omap3pandora_init_irq(void)
80{
81 omap2_init_common_hw();
82 omap_init_irq();
83 omap_gpio_init();
84}
85
86static void __init omap3pandora_ads7846_init(void)
87{
88 int gpio = OMAP3_PANDORA_TS_GPIO;
89 int ret;
90
91 ret = gpio_request(gpio, "ads7846_pen_down");
92 if (ret < 0) {
93 printk(KERN_ERR "Failed to request GPIO %d for "
94 "ads7846 pen down IRQ\n", gpio);
95 return;
96 }
97
98 gpio_direction_input(gpio);
99}
100
101static int ads7846_get_pendown_state(void)
102{
103 return !gpio_get_value(OMAP3_PANDORA_TS_GPIO);
104}
105
106static struct ads7846_platform_data ads7846_config = {
107 .x_max = 0x0fff,
108 .y_max = 0x0fff,
109 .x_plate_ohms = 180,
110 .pressure_max = 255,
111 .debounce_max = 10,
112 .debounce_tol = 3,
113 .debounce_rep = 1,
114 .get_pendown_state = ads7846_get_pendown_state,
115 .keep_vref_on = 1,
116};
117
118static struct omap2_mcspi_device_config ads7846_mcspi_config = {
119 .turbo_mode = 0,
120 .single_channel = 1, /* 0: slave, 1: master */
121};
122
123static struct spi_board_info omap3pandora_spi_board_info[] __initdata = {
124 {
125 .modalias = "ads7846",
126 .bus_num = 1,
127 .chip_select = 0,
128 .max_speed_hz = 1500000,
129 .controller_data = &ads7846_mcspi_config,
130 .irq = OMAP_GPIO_IRQ(OMAP3_PANDORA_TS_GPIO),
131 .platform_data = &ads7846_config,
132 }
133};
134
135static struct platform_device omap3pandora_lcd_device = {
136 .name = "pandora_lcd",
137 .id = -1,
138};
139
140static struct omap_lcd_config omap3pandora_lcd_config __initdata = {
141 .ctrl_name = "internal",
142};
143
144static struct omap_board_config_kernel omap3pandora_config[] __initdata = {
145 { OMAP_TAG_UART, &omap3pandora_uart_config },
146 { OMAP_TAG_LCD, &omap3pandora_lcd_config },
147};
148
149static struct platform_device *omap3pandora_devices[] __initdata = {
150 &omap3pandora_lcd_device,
151};
152
153static void __init omap3pandora_init(void)
154{
155 omap3pandora_i2c_init();
156 platform_add_devices(omap3pandora_devices,
157 ARRAY_SIZE(omap3pandora_devices));
158 omap_board_config = omap3pandora_config;
159 omap_board_config_size = ARRAY_SIZE(omap3pandora_config);
160 omap_serial_init();
161 spi_register_board_info(omap3pandora_spi_board_info,
162 ARRAY_SIZE(omap3pandora_spi_board_info));
163 omap3pandora_ads7846_init();
164}
165
166static void __init omap3pandora_map_io(void)
167{
168 omap2_set_globals_343x();
169 omap2_map_common_io();
170}
171
172MACHINE_START(OMAP3_PANDORA, "Pandora Handheld Console")
173 .phys_io = 0x48000000,
174 .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc,
175 .boot_params = 0x80000100,
176 .map_io = omap3pandora_map_io,
177 .init_irq = omap3pandora_init_irq,
178 .init_machine = omap3pandora_init,
179 .timer = &omap_timer,
180MACHINE_END
diff --git a/arch/arm/mach-omap2/clock34xx.c b/arch/arm/mach-omap2/clock34xx.c
index 084e11082f80..31bb7010bd48 100644
--- a/arch/arm/mach-omap2/clock34xx.c
+++ b/arch/arm/mach-omap2/clock34xx.c
@@ -475,7 +475,7 @@ int __init omap2_clk_init(void)
475 * Update this if there are further clock changes between ES2 475 * Update this if there are further clock changes between ES2
476 * and production parts 476 * and production parts
477 */ 477 */
478 if (is_sil_rev_equal_to(OMAP3430_REV_ES1_0)) { 478 if (omap_rev() == OMAP3430_REV_ES1_0) {
479 /* No 3430ES1-only rates exist, so no RATE_IN_3430ES1 */ 479 /* No 3430ES1-only rates exist, so no RATE_IN_3430ES1 */
480 cpu_clkflg |= CLOCK_IN_OMAP3430ES1; 480 cpu_clkflg |= CLOCK_IN_OMAP3430ES1;
481 } else { 481 } else {
diff --git a/arch/arm/mach-omap2/clock34xx.h b/arch/arm/mach-omap2/clock34xx.h
index c38a8a09692f..7217a0824ec4 100644
--- a/arch/arm/mach-omap2/clock34xx.h
+++ b/arch/arm/mach-omap2/clock34xx.h
@@ -2280,8 +2280,8 @@ static struct clk wkup_32k_fck = {
2280 .recalc = &followparent_recalc, 2280 .recalc = &followparent_recalc,
2281}; 2281};
2282 2282
2283static struct clk gpio1_fck = { 2283static struct clk gpio1_dbck = {
2284 .name = "gpio1_fck", 2284 .name = "gpio1_dbck",
2285 .parent = &wkup_32k_fck, 2285 .parent = &wkup_32k_fck,
2286 .enable_reg = OMAP_CM_REGADDR(WKUP_MOD, CM_FCLKEN), 2286 .enable_reg = OMAP_CM_REGADDR(WKUP_MOD, CM_FCLKEN),
2287 .enable_bit = OMAP3430_EN_GPIO1_SHIFT, 2287 .enable_bit = OMAP3430_EN_GPIO1_SHIFT,
@@ -2527,8 +2527,8 @@ static struct clk per_32k_alwon_fck = {
2527 .recalc = &followparent_recalc, 2527 .recalc = &followparent_recalc,
2528}; 2528};
2529 2529
2530static struct clk gpio6_fck = { 2530static struct clk gpio6_dbck = {
2531 .name = "gpio6_fck", 2531 .name = "gpio6_dbck",
2532 .parent = &per_32k_alwon_fck, 2532 .parent = &per_32k_alwon_fck,
2533 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2533 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2534 .enable_bit = OMAP3430_EN_GPIO6_SHIFT, 2534 .enable_bit = OMAP3430_EN_GPIO6_SHIFT,
@@ -2537,8 +2537,8 @@ static struct clk gpio6_fck = {
2537 .recalc = &followparent_recalc, 2537 .recalc = &followparent_recalc,
2538}; 2538};
2539 2539
2540static struct clk gpio5_fck = { 2540static struct clk gpio5_dbck = {
2541 .name = "gpio5_fck", 2541 .name = "gpio5_dbck",
2542 .parent = &per_32k_alwon_fck, 2542 .parent = &per_32k_alwon_fck,
2543 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2543 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2544 .enable_bit = OMAP3430_EN_GPIO5_SHIFT, 2544 .enable_bit = OMAP3430_EN_GPIO5_SHIFT,
@@ -2547,8 +2547,8 @@ static struct clk gpio5_fck = {
2547 .recalc = &followparent_recalc, 2547 .recalc = &followparent_recalc,
2548}; 2548};
2549 2549
2550static struct clk gpio4_fck = { 2550static struct clk gpio4_dbck = {
2551 .name = "gpio4_fck", 2551 .name = "gpio4_dbck",
2552 .parent = &per_32k_alwon_fck, 2552 .parent = &per_32k_alwon_fck,
2553 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2553 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2554 .enable_bit = OMAP3430_EN_GPIO4_SHIFT, 2554 .enable_bit = OMAP3430_EN_GPIO4_SHIFT,
@@ -2557,8 +2557,8 @@ static struct clk gpio4_fck = {
2557 .recalc = &followparent_recalc, 2557 .recalc = &followparent_recalc,
2558}; 2558};
2559 2559
2560static struct clk gpio3_fck = { 2560static struct clk gpio3_dbck = {
2561 .name = "gpio3_fck", 2561 .name = "gpio3_dbck",
2562 .parent = &per_32k_alwon_fck, 2562 .parent = &per_32k_alwon_fck,
2563 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2563 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2564 .enable_bit = OMAP3430_EN_GPIO3_SHIFT, 2564 .enable_bit = OMAP3430_EN_GPIO3_SHIFT,
@@ -2567,8 +2567,8 @@ static struct clk gpio3_fck = {
2567 .recalc = &followparent_recalc, 2567 .recalc = &followparent_recalc,
2568}; 2568};
2569 2569
2570static struct clk gpio2_fck = { 2570static struct clk gpio2_dbck = {
2571 .name = "gpio2_fck", 2571 .name = "gpio2_dbck",
2572 .parent = &per_32k_alwon_fck, 2572 .parent = &per_32k_alwon_fck,
2573 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2573 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2574 .enable_bit = OMAP3430_EN_GPIO2_SHIFT, 2574 .enable_bit = OMAP3430_EN_GPIO2_SHIFT,
@@ -3170,7 +3170,7 @@ static struct clk *onchip_34xx_clks[] __initdata = {
3170 &usim_fck, 3170 &usim_fck,
3171 &gpt1_fck, 3171 &gpt1_fck,
3172 &wkup_32k_fck, 3172 &wkup_32k_fck,
3173 &gpio1_fck, 3173 &gpio1_dbck,
3174 &wdt2_fck, 3174 &wdt2_fck,
3175 &wkup_l4_ick, 3175 &wkup_l4_ick,
3176 &usim_ick, 3176 &usim_ick,
@@ -3192,11 +3192,11 @@ static struct clk *onchip_34xx_clks[] __initdata = {
3192 &gpt8_fck, 3192 &gpt8_fck,
3193 &gpt9_fck, 3193 &gpt9_fck,
3194 &per_32k_alwon_fck, 3194 &per_32k_alwon_fck,
3195 &gpio6_fck, 3195 &gpio6_dbck,
3196 &gpio5_fck, 3196 &gpio5_dbck,
3197 &gpio4_fck, 3197 &gpio4_dbck,
3198 &gpio3_fck, 3198 &gpio3_dbck,
3199 &gpio2_fck, 3199 &gpio2_dbck,
3200 &wdt3_fck, 3200 &wdt3_fck,
3201 &per_l4_ick, 3201 &per_l4_ick,
3202 &gpio6_ick, 3202 &gpio6_ick,
diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
index bf45ff39a7b5..b0f8e7d62798 100644
--- a/arch/arm/mach-omap2/id.c
+++ b/arch/arm/mach-omap2/id.c
@@ -22,40 +22,15 @@
22#include <mach/control.h> 22#include <mach/control.h>
23#include <mach/cpu.h> 23#include <mach/cpu.h>
24 24
25static u32 class; 25static struct omap_chip_id omap_chip;
26static void __iomem *tap_base; 26static unsigned int omap_revision;
27static u16 tap_prod_id;
28
29#define OMAP_TAP_IDCODE 0x0204
30#define OMAP_TAP_DIE_ID_0 0x0218
31#define OMAP_TAP_DIE_ID_1 0x021C
32#define OMAP_TAP_DIE_ID_2 0x0220
33#define OMAP_TAP_DIE_ID_3 0x0224
34
35/* system_rev fields for OMAP2 processors:
36 * CPU id bits [31:16],
37 * CPU device type [15:12], (unprg,normal,POP)
38 * CPU revision [11:08]
39 * CPU class bits [07:00]
40 */
41
42struct omap_id {
43 u16 hawkeye; /* Silicon type (Hawkeye id) */
44 u8 dev; /* Device type from production_id reg */
45 u32 type; /* combined type id copied to system_rev */
46};
47 27
48/* Register values to detect the OMAP version */
49static struct omap_id omap_ids[] __initdata = {
50 { .hawkeye = 0xb5d9, .dev = 0x0, .type = 0x24200000 },
51 { .hawkeye = 0xb5d9, .dev = 0x1, .type = 0x24201000 },
52 { .hawkeye = 0xb5d9, .dev = 0x2, .type = 0x24202000 },
53 { .hawkeye = 0xb5d9, .dev = 0x4, .type = 0x24220000 },
54 { .hawkeye = 0xb5d9, .dev = 0x8, .type = 0x24230000 },
55 { .hawkeye = 0xb68a, .dev = 0x0, .type = 0x24300000 },
56};
57 28
58static struct omap_chip_id omap_chip; 29unsigned int omap_rev(void)
30{
31 return omap_revision;
32}
33EXPORT_SYMBOL(omap_rev);
59 34
60/** 35/**
61 * omap_chip_is - test whether currently running OMAP matches a chip type 36 * omap_chip_is - test whether currently running OMAP matches a chip type
@@ -70,135 +45,41 @@ int omap_chip_is(struct omap_chip_id oci)
70} 45}
71EXPORT_SYMBOL(omap_chip_is); 46EXPORT_SYMBOL(omap_chip_is);
72 47
73static u32 __init read_tap_reg(int reg) 48/*----------------------------------------------------------------------------*/
74{
75 unsigned int regval = 0;
76 u32 cpuid;
77
78 /* Reading the IDCODE register on 3430 ES1 results in a
79 * data abort as the register is not exposed on the OCP
80 * Hence reading the Cortex Rev
81 */
82 cpuid = read_cpuid(CPUID_ID);
83
84 /* If the processor type is Cortex-A8 and the revision is 0x0
85 * it means its Cortex r0p0 which is 3430 ES1
86 */
87 if ((((cpuid >> 4) & 0xFFF) == 0xC08) && ((cpuid & 0xF) == 0x0)) {
88
89 if (reg == tap_prod_id) {
90 regval = 0x000F00F0;
91 goto out;
92 }
93
94 switch (reg) {
95 case OMAP_TAP_IDCODE : regval = 0x0B7AE02F; break;
96 /* Making DevType as 0xF in ES1 to differ from ES2 */
97 case OMAP_TAP_DIE_ID_0: regval = 0x01000000; break;
98 case OMAP_TAP_DIE_ID_1: regval = 0x1012d687; break;
99 case OMAP_TAP_DIE_ID_2: regval = 0x00000000; break;
100 case OMAP_TAP_DIE_ID_3: regval = 0x2d2c0000; break;
101 }
102 } else
103 regval = __raw_readl(tap_base + reg);
104
105out:
106 return regval;
107
108}
109 49
110/* 50#define OMAP_TAP_IDCODE 0x0204
111 * _set_system_rev - set the system_rev global based on current OMAP chip type 51#define OMAP_TAP_DIE_ID_0 0x0218
112 * 52#define OMAP_TAP_DIE_ID_1 0x021C
113 * Set the system_rev global. This is primarily used by the cpu_is_omapxxxx() 53#define OMAP_TAP_DIE_ID_2 0x0220
114 * macros. 54#define OMAP_TAP_DIE_ID_3 0x0224
115 */
116static void __init _set_system_rev(u32 type, u8 rev)
117{
118 u32 i, ctrl_status;
119
120 /*
121 * system_rev encoding is as follows
122 * system_rev & 0xff000000 -> Omap Class (24xx/34xx)
123 * system_rev & 0xfff00000 -> Omap Sub Class (242x/343x)
124 * system_rev & 0xffff0000 -> Omap type (2420/2422/2423/2430/3430)
125 * system_rev & 0x0000f000 -> Silicon revision (ES1, ES2 )
126 * system_rev & 0x00000700 -> Device Type ( EMU/HS/GP/BAD )
127 * system_rev & 0x000000c0 -> IDCODE revision[6:7]
128 * system_rev & 0x0000003f -> sys_boot[0:5]
129 */
130 /* Embedding the ES revision info in type field */
131 system_rev = type;
132 /* Also add IDCODE revision info only two lower bits */
133 system_rev |= ((rev & 0x3) << 6);
134
135 /* Add in the device type and sys_boot fields (see above) */
136 if (cpu_is_omap24xx()) {
137 i = OMAP24XX_CONTROL_STATUS;
138 } else if (cpu_is_omap343x()) {
139 i = OMAP343X_CONTROL_STATUS;
140 } else {
141 printk(KERN_ERR "id: unknown CPU type\n");
142 BUG();
143 }
144 ctrl_status = omap_ctrl_readl(i);
145 system_rev |= (ctrl_status & (OMAP2_SYSBOOT_5_MASK |
146 OMAP2_SYSBOOT_4_MASK |
147 OMAP2_SYSBOOT_3_MASK |
148 OMAP2_SYSBOOT_2_MASK |
149 OMAP2_SYSBOOT_1_MASK |
150 OMAP2_SYSBOOT_0_MASK));
151 system_rev |= (ctrl_status & OMAP2_DEVICETYPE_MASK);
152}
153
154
155/*
156 * _set_omap_chip - set the omap_chip global based on OMAP chip type
157 *
158 * Build the omap_chip bits. This variable is used by powerdomain and
159 * clockdomain code to indicate whether structures are applicable for
160 * the current OMAP chip type by ANDing it against a 'platform' bitfield
161 * in the structure.
162 */
163static void __init _set_omap_chip(void)
164{
165 if (cpu_is_omap343x()) {
166
167 omap_chip.oc = CHIP_IS_OMAP3430;
168 if (is_sil_rev_equal_to(OMAP3430_REV_ES1_0))
169 omap_chip.oc |= CHIP_IS_OMAP3430ES1;
170 else if (is_sil_rev_greater_than(OMAP3430_REV_ES1_0))
171 omap_chip.oc |= CHIP_IS_OMAP3430ES2;
172
173 } else if (cpu_is_omap243x()) {
174
175 /* Currently only supports 2430ES2.1 and 2430-all */
176 omap_chip.oc |= CHIP_IS_OMAP2430;
177
178 } else if (cpu_is_omap242x()) {
179
180 /* Currently only supports 2420ES2.1.1 and 2420-all */
181 omap_chip.oc |= CHIP_IS_OMAP2420;
182 55
183 } else { 56#define read_tap_reg(reg) __raw_readl(tap_base + (reg))
184 57
185 /* Current CPU not supported by this code. */ 58struct omap_id {
186 printk(KERN_WARNING "OMAP chip type code does not yet support " 59 u16 hawkeye; /* Silicon type (Hawkeye id) */
187 "this CPU type.\n"); 60 u8 dev; /* Device type from production_id reg */
188 WARN_ON(1); 61 u32 type; /* Combined type id copied to omap_revision */
62};
189 63
190 } 64/* Register values to detect the OMAP version */
65static struct omap_id omap_ids[] __initdata = {
66 { .hawkeye = 0xb5d9, .dev = 0x0, .type = 0x24200024 },
67 { .hawkeye = 0xb5d9, .dev = 0x1, .type = 0x24201024 },
68 { .hawkeye = 0xb5d9, .dev = 0x2, .type = 0x24202024 },
69 { .hawkeye = 0xb5d9, .dev = 0x4, .type = 0x24220024 },
70 { .hawkeye = 0xb5d9, .dev = 0x8, .type = 0x24230024 },
71 { .hawkeye = 0xb68a, .dev = 0x0, .type = 0x24300024 },
72};
191 73
192} 74static void __iomem *tap_base;
75static u16 tap_prod_id;
193 76
194void __init omap2_check_revision(void) 77void __init omap24xx_check_revision(void)
195{ 78{
196 int i, j; 79 int i, j;
197 u32 idcode; 80 u32 idcode, prod_id;
198 u32 prod_id;
199 u16 hawkeye; 81 u16 hawkeye;
200 u8 dev_type; 82 u8 dev_type, rev;
201 u8 rev;
202 83
203 idcode = read_tap_reg(OMAP_TAP_IDCODE); 84 idcode = read_tap_reg(OMAP_TAP_IDCODE);
204 prod_id = read_tap_reg(tap_prod_id); 85 prod_id = read_tap_reg(tap_prod_id);
@@ -220,18 +101,6 @@ void __init omap2_check_revision(void)
220 pr_debug("OMAP_TAP_PROD_ID_0: 0x%08x DEV_TYPE: %i\n", 101 pr_debug("OMAP_TAP_PROD_ID_0: 0x%08x DEV_TYPE: %i\n",
221 prod_id, dev_type); 102 prod_id, dev_type);
222 103
223 /*
224 * Detection for 34xx ES2.0 and above can be done with just
225 * hawkeye and rev. See TRM 1.5.2 Device Identification.
226 * Note that rev cannot be used directly as ES1.0 uses value 0.
227 */
228 if (hawkeye == 0xb7ae) {
229 system_rev = 0x34300000 | ((1 + rev) << 12);
230 pr_info("OMAP%04x ES2.%i\n", system_rev >> 16, rev);
231 _set_omap_chip();
232 return;
233 }
234
235 /* Check hawkeye ids */ 104 /* Check hawkeye ids */
236 for (i = 0; i < ARRAY_SIZE(omap_ids); i++) { 105 for (i = 0; i < ARRAY_SIZE(omap_ids); i++) {
237 if (hawkeye == omap_ids[i].hawkeye) 106 if (hawkeye == omap_ids[i].hawkeye)
@@ -255,23 +124,115 @@ void __init omap2_check_revision(void)
255 j = i; 124 j = i;
256 } 125 }
257 126
258 _set_system_rev(omap_ids[j].type, rev); 127 pr_info("OMAP%04x", omap_rev() >> 16);
128 if ((omap_rev() >> 8) & 0x0f)
129 pr_info("ES%x", (omap_rev() >> 12) & 0xf);
130 pr_info("\n");
131}
259 132
260 _set_omap_chip(); 133void __init omap34xx_check_revision(void)
134{
135 u32 cpuid, idcode;
136 u16 hawkeye;
137 u8 rev;
138 char *rev_name = "ES1.0";
261 139
262 pr_info("OMAP%04x", system_rev >> 16); 140 /*
263 if ((system_rev >> 8) & 0x0f) 141 * We cannot access revision registers on ES1.0.
264 pr_info("ES%x", (system_rev >> 12) & 0xf); 142 * If the processor type is Cortex-A8 and the revision is 0x0
265 pr_info("\n"); 143 * it means its Cortex r0p0 which is 3430 ES1.0.
144 */
145 cpuid = read_cpuid(CPUID_ID);
146 if ((((cpuid >> 4) & 0xfff) == 0xc08) && ((cpuid & 0xf) == 0x0)) {
147 omap_revision = OMAP3430_REV_ES1_0;
148 goto out;
149 }
266 150
151 /*
152 * Detection for 34xx ES2.0 and above can be done with just
153 * hawkeye and rev. See TRM 1.5.2 Device Identification.
154 * Note that rev does not map directly to our defined processor
155 * revision numbers as ES1.0 uses value 0.
156 */
157 idcode = read_tap_reg(OMAP_TAP_IDCODE);
158 hawkeye = (idcode >> 12) & 0xffff;
159 rev = (idcode >> 28) & 0xff;
160
161 if (hawkeye == 0xb7ae) {
162 switch (rev) {
163 case 0:
164 omap_revision = OMAP3430_REV_ES2_0;
165 rev_name = "ES2.0";
166 break;
167 case 2:
168 omap_revision = OMAP3430_REV_ES2_1;
169 rev_name = "ES2.1";
170 break;
171 case 3:
172 omap_revision = OMAP3430_REV_ES3_0;
173 rev_name = "ES3.0";
174 break;
175 default:
176 /* Use the latest known revision as default */
177 omap_revision = OMAP3430_REV_ES3_0;
178 rev_name = "Unknown revision\n";
179 }
180 }
181
182out:
183 pr_info("OMAP%04x %s\n", omap_rev() >> 16, rev_name);
267} 184}
268 185
186/*
187 * Try to detect the exact revision of the omap we're running on
188 */
189void __init omap2_check_revision(void)
190{
191 /*
192 * At this point we have an idea about the processor revision set
193 * earlier with omap2_set_globals_tap().
194 */
195 if (cpu_is_omap24xx())
196 omap24xx_check_revision();
197 else if (cpu_is_omap34xx())
198 omap34xx_check_revision();
199 else
200 pr_err("OMAP revision unknown, please fix!\n");
201
202 /*
203 * OK, now we know the exact revision. Initialize omap_chip bits
204 * for powerdowmain and clockdomain code.
205 */
206 if (cpu_is_omap243x()) {
207 /* Currently only supports 2430ES2.1 and 2430-all */
208 omap_chip.oc |= CHIP_IS_OMAP2430;
209 } else if (cpu_is_omap242x()) {
210 /* Currently only supports 2420ES2.1.1 and 2420-all */
211 omap_chip.oc |= CHIP_IS_OMAP2420;
212 } else if (cpu_is_omap343x()) {
213 omap_chip.oc = CHIP_IS_OMAP3430;
214 if (omap_rev() == OMAP3430_REV_ES1_0)
215 omap_chip.oc |= CHIP_IS_OMAP3430ES1;
216 else if (omap_rev() > OMAP3430_REV_ES1_0)
217 omap_chip.oc |= CHIP_IS_OMAP3430ES2;
218 } else {
219 pr_err("Uninitialized omap_chip, please fix!\n");
220 }
221}
222
223/*
224 * Set up things for map_io and processor detection later on. Gets called
225 * pretty much first thing from board init. For multi-omap, this gets
226 * cpu_is_omapxxxx() working accurately enough for map_io. Then we'll try to
227 * detect the exact revision later on in omap2_detect_revision() once map_io
228 * is done.
229 */
269void __init omap2_set_globals_tap(struct omap_globals *omap2_globals) 230void __init omap2_set_globals_tap(struct omap_globals *omap2_globals)
270{ 231{
271 class = omap2_globals->class; 232 omap_revision = omap2_globals->class;
272 tap_base = omap2_globals->tap; 233 tap_base = omap2_globals->tap;
273 234
274 if (class == 0x3430) 235 if (cpu_is_omap34xx())
275 tap_prod_id = 0x0210; 236 tap_prod_id = 0x0210;
276 else 237 else
277 tap_prod_id = 0x0208; 238 tap_prod_id = 0x0208;
diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c
index c40fc378a251..636e2821af7d 100644
--- a/arch/arm/mach-omap2/irq.c
+++ b/arch/arm/mach-omap2/irq.c
@@ -23,6 +23,7 @@
23#define INTC_REVISION 0x0000 23#define INTC_REVISION 0x0000
24#define INTC_SYSCONFIG 0x0010 24#define INTC_SYSCONFIG 0x0010
25#define INTC_SYSSTATUS 0x0014 25#define INTC_SYSSTATUS 0x0014
26#define INTC_SIR 0x0040
26#define INTC_CONTROL 0x0048 27#define INTC_CONTROL 0x0048
27#define INTC_MIR_CLEAR0 0x0088 28#define INTC_MIR_CLEAR0 0x0088
28#define INTC_MIR_SET0 0x008c 29#define INTC_MIR_SET0 0x008c
@@ -60,6 +61,30 @@ static u32 intc_bank_read_reg(struct omap_irq_bank *bank, u16 reg)
60 return __raw_readl(bank->base_reg + reg); 61 return __raw_readl(bank->base_reg + reg);
61} 62}
62 63
64static int previous_irq;
65
66/*
67 * On 34xx we can get occasional spurious interrupts if the ack from
68 * an interrupt handler does not get posted before we unmask. Warn about
69 * the interrupt handlers that need to flush posted writes.
70 */
71static int omap_check_spurious(unsigned int irq)
72{
73 u32 sir, spurious;
74
75 sir = intc_bank_read_reg(&irq_banks[0], INTC_SIR);
76 spurious = sir >> 6;
77
78 if (spurious > 1) {
79 printk(KERN_WARNING "Spurious irq %i: 0x%08x, please flush "
80 "posted write for irq %i\n",
81 irq, sir, previous_irq);
82 return spurious;
83 }
84
85 return 0;
86}
87
63/* XXX: FIQ and additional INTC support (only MPU at the moment) */ 88/* XXX: FIQ and additional INTC support (only MPU at the moment) */
64static void omap_ack_irq(unsigned int irq) 89static void omap_ack_irq(unsigned int irq)
65{ 90{
@@ -70,6 +95,20 @@ static void omap_mask_irq(unsigned int irq)
70{ 95{
71 int offset = irq & (~(IRQ_BITS_PER_REG - 1)); 96 int offset = irq & (~(IRQ_BITS_PER_REG - 1));
72 97
98 if (cpu_is_omap34xx()) {
99 int spurious = 0;
100
101 /*
102 * INT_34XX_GPT12_IRQ is also the spurious irq. Maybe because
103 * it is the highest irq number?
104 */
105 if (irq == INT_34XX_GPT12_IRQ)
106 spurious = omap_check_spurious(irq);
107
108 if (!spurious)
109 previous_irq = irq;
110 }
111
73 irq &= (IRQ_BITS_PER_REG - 1); 112 irq &= (IRQ_BITS_PER_REG - 1);
74 113
75 intc_bank_write_reg(1 << irq, &irq_banks[0], INTC_MIR_SET0 + offset); 114 intc_bank_write_reg(1 << irq, &irq_banks[0], INTC_MIR_SET0 + offset);
diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
index b1393673d95d..dacb41f130c0 100644
--- a/arch/arm/mach-omap2/mux.c
+++ b/arch/arm/mach-omap2/mux.c
@@ -203,6 +203,15 @@ MUX_CFG_24XX("AE9_2430_USB0HS_NXT", 0x13D, 0, 0, 0, 1)
203MUX_CFG_24XX("AC7_2430_USB0HS_DATA7", 0x13E, 0, 0, 0, 1) 203MUX_CFG_24XX("AC7_2430_USB0HS_DATA7", 0x13E, 0, 0, 0, 1)
204 204
205/* 2430 McBSP */ 205/* 2430 McBSP */
206MUX_CFG_24XX("AD6_2430_MCBSP_CLKS", 0x011E, 0, 0, 0, 1)
207
208MUX_CFG_24XX("AB2_2430_MCBSP1_CLKR", 0x011A, 0, 0, 0, 1)
209MUX_CFG_24XX("AD5_2430_MCBSP1_FSR", 0x011B, 0, 0, 0, 1)
210MUX_CFG_24XX("AA1_2430_MCBSP1_DX", 0x011C, 0, 0, 0, 1)
211MUX_CFG_24XX("AF3_2430_MCBSP1_DR", 0x011D, 0, 0, 0, 1)
212MUX_CFG_24XX("AB3_2430_MCBSP1_FSX", 0x011F, 0, 0, 0, 1)
213MUX_CFG_24XX("Y9_2430_MCBSP1_CLKX", 0x0120, 0, 0, 0, 1)
214
206MUX_CFG_24XX("AC10_2430_MCBSP2_FSX", 0x012E, 1, 0, 0, 1) 215MUX_CFG_24XX("AC10_2430_MCBSP2_FSX", 0x012E, 1, 0, 0, 1)
207MUX_CFG_24XX("AD16_2430_MCBSP2_CLX", 0x012F, 1, 0, 0, 1) 216MUX_CFG_24XX("AD16_2430_MCBSP2_CLX", 0x012F, 1, 0, 0, 1)
208MUX_CFG_24XX("AE13_2430_MCBSP2_DX", 0x0130, 1, 0, 0, 1) 217MUX_CFG_24XX("AE13_2430_MCBSP2_DX", 0x0130, 1, 0, 0, 1)
@@ -211,6 +220,31 @@ MUX_CFG_24XX("AC10_2430_MCBSP2_FSX_OFF",0x012E, 0, 0, 0, 1)
211MUX_CFG_24XX("AD16_2430_MCBSP2_CLX_OFF",0x012F, 0, 0, 0, 1) 220MUX_CFG_24XX("AD16_2430_MCBSP2_CLX_OFF",0x012F, 0, 0, 0, 1)
212MUX_CFG_24XX("AE13_2430_MCBSP2_DX_OFF", 0x0130, 0, 0, 0, 1) 221MUX_CFG_24XX("AE13_2430_MCBSP2_DX_OFF", 0x0130, 0, 0, 0, 1)
213MUX_CFG_24XX("AD13_2430_MCBSP2_DR_OFF", 0x0131, 0, 0, 0, 1) 222MUX_CFG_24XX("AD13_2430_MCBSP2_DR_OFF", 0x0131, 0, 0, 0, 1)
223
224MUX_CFG_24XX("AC9_2430_MCBSP3_CLKX", 0x0103, 0, 0, 0, 1)
225MUX_CFG_24XX("AE4_2430_MCBSP3_FSX", 0x0104, 0, 0, 0, 1)
226MUX_CFG_24XX("AE2_2430_MCBSP3_DR", 0x0105, 0, 0, 0, 1)
227MUX_CFG_24XX("AF4_2430_MCBSP3_DX", 0x0106, 0, 0, 0, 1)
228
229MUX_CFG_24XX("N3_2430_MCBSP4_CLKX", 0x010B, 1, 0, 0, 1)
230MUX_CFG_24XX("AD23_2430_MCBSP4_DR", 0x010C, 1, 0, 0, 1)
231MUX_CFG_24XX("AB25_2430_MCBSP4_DX", 0x010D, 1, 0, 0, 1)
232MUX_CFG_24XX("AC25_2430_MCBSP4_FSX", 0x010E, 1, 0, 0, 1)
233
234MUX_CFG_24XX("AE16_2430_MCBSP5_CLKX", 0x00ED, 1, 0, 0, 1)
235MUX_CFG_24XX("AF12_2430_MCBSP5_FSX", 0x00ED, 1, 0, 0, 1)
236MUX_CFG_24XX("K7_2430_MCBSP5_DX", 0x00EF, 1, 0, 0, 1)
237MUX_CFG_24XX("M1_2430_MCBSP5_DR", 0x00F0, 1, 0, 0, 1)
238
239/* 2430 MCSPI1 */
240MUX_CFG_24XX("Y18_2430_MCSPI1_CLK", 0x010F, 0, 0, 0, 1)
241MUX_CFG_24XX("AD15_2430_MCSPI1_SIMO", 0x0110, 0, 0, 0, 1)
242MUX_CFG_24XX("AE17_2430_MCSPI1_SOMI", 0x0111, 0, 0, 0, 1)
243MUX_CFG_24XX("U1_2430_MCSPI1_CS0", 0x0112, 0, 0, 0, 1)
244
245/* Touchscreen GPIO */
246MUX_CFG_24XX("AF19_2430_GPIO_85", 0x0113, 3, 0, 0, 1)
247
214}; 248};
215 249
216#define OMAP24XX_PINS_SZ ARRAY_SIZE(omap24xx_pins) 250#define OMAP24XX_PINS_SZ ARRAY_SIZE(omap24xx_pins)
@@ -417,6 +451,14 @@ MUX_CFG_34XX("AD2_3430_USB3FS_PHY_MM3_TXDAT", 0x188,
417MUX_CFG_34XX("AC1_3430_USB3FS_PHY_MM3_TXEN_N", 0x18a, 451MUX_CFG_34XX("AC1_3430_USB3FS_PHY_MM3_TXEN_N", 0x18a,
418 OMAP34XX_MUX_MODE6 | OMAP34XX_PIN_OUTPUT) 452 OMAP34XX_MUX_MODE6 | OMAP34XX_PIN_OUTPUT)
419 453
454
455/* 34XX GPIO - bidirectional, unless the name has an "_OUT" suffix.
456 * No internal pullup/pulldown without "_UP" or "_DOWN" suffix.
457 */
458MUX_CFG_34XX("AH8_34XX_GPIO29", 0x5fa,
459 OMAP34XX_MUX_MODE4 | OMAP34XX_PIN_INPUT)
460MUX_CFG_34XX("J25_34XX_GPIO170", 0x1c6,
461 OMAP34XX_MUX_MODE4 | OMAP34XX_PIN_INPUT)
420}; 462};
421 463
422#define OMAP34XX_PINS_SZ ARRAY_SIZE(omap34xx_pins) 464#define OMAP34XX_PINS_SZ ARRAY_SIZE(omap34xx_pins)
@@ -452,7 +494,7 @@ static void __init_or_module omap2_cfg_debug(const struct pin_config *cfg, u16 r
452#endif 494#endif
453 495
454#ifdef CONFIG_ARCH_OMAP24XX 496#ifdef CONFIG_ARCH_OMAP24XX
455int __init_or_module omap24xx_cfg_reg(const struct pin_config *cfg) 497static int __init_or_module omap24xx_cfg_reg(const struct pin_config *cfg)
456{ 498{
457 static DEFINE_SPINLOCK(mux_spin_lock); 499 static DEFINE_SPINLOCK(mux_spin_lock);
458 unsigned long flags; 500 unsigned long flags;
diff --git a/arch/arm/mach-omap2/usb-tusb6010.c b/arch/arm/mach-omap2/usb-tusb6010.c
index 10ef464d6be7..15e509013def 100644
--- a/arch/arm/mach-omap2/usb-tusb6010.c
+++ b/arch/arm/mach-omap2/usb-tusb6010.c
@@ -12,11 +12,11 @@
12#include <linux/errno.h> 12#include <linux/errno.h>
13#include <linux/delay.h> 13#include <linux/delay.h>
14#include <linux/platform_device.h> 14#include <linux/platform_device.h>
15#include <linux/gpio.h>
15 16
16#include <linux/usb/musb.h> 17#include <linux/usb/musb.h>
17 18
18#include <mach/gpmc.h> 19#include <mach/gpmc.h>
19#include <mach/gpio.h>
20#include <mach/mux.h> 20#include <mach/mux.h>
21 21
22 22
@@ -292,12 +292,12 @@ tusb6010_setup_interface(struct musb_hdrc_platform_data *data,
292 ); 292 );
293 293
294 /* IRQ */ 294 /* IRQ */
295 status = omap_request_gpio(irq); 295 status = gpio_request(irq, "TUSB6010 irq");
296 if (status < 0) { 296 if (status < 0) {
297 printk(error, 3, status); 297 printk(error, 3, status);
298 return status; 298 return status;
299 } 299 }
300 omap_set_gpio_direction(irq, 1); 300 gpio_direction_input(irq);
301 tusb_resources[2].start = irq + IH_GPIO_BASE; 301 tusb_resources[2].start = irq + IH_GPIO_BASE;
302 302
303 /* set up memory timings ... can speed them up later */ 303 /* set up memory timings ... can speed them up later */
diff --git a/arch/arm/mm/alignment.c b/arch/arm/mm/alignment.c
index c5a57fbf095d..3a398befed41 100644
--- a/arch/arm/mm/alignment.c
+++ b/arch/arm/mm/alignment.c
@@ -71,6 +71,10 @@ static unsigned long ai_dword;
71static unsigned long ai_multi; 71static unsigned long ai_multi;
72static int ai_usermode; 72static int ai_usermode;
73 73
74#define UM_WARN (1 << 0)
75#define UM_FIXUP (1 << 1)
76#define UM_SIGNAL (1 << 2)
77
74#ifdef CONFIG_PROC_FS 78#ifdef CONFIG_PROC_FS
75static const char *usermode_action[] = { 79static const char *usermode_action[] = {
76 "ignored", 80 "ignored",
@@ -755,7 +759,7 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
755 user: 759 user:
756 ai_user += 1; 760 ai_user += 1;
757 761
758 if (ai_usermode & 1) 762 if (ai_usermode & UM_WARN)
759 printk("Alignment trap: %s (%d) PC=0x%08lx Instr=0x%0*lx " 763 printk("Alignment trap: %s (%d) PC=0x%08lx Instr=0x%0*lx "
760 "Address=0x%08lx FSR 0x%03x\n", current->comm, 764 "Address=0x%08lx FSR 0x%03x\n", current->comm,
761 task_pid_nr(current), instrptr, 765 task_pid_nr(current), instrptr,
@@ -763,10 +767,10 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
763 thumb_mode(regs) ? tinstr : instr, 767 thumb_mode(regs) ? tinstr : instr,
764 addr, fsr); 768 addr, fsr);
765 769
766 if (ai_usermode & 2) 770 if (ai_usermode & UM_FIXUP)
767 goto fixup; 771 goto fixup;
768 772
769 if (ai_usermode & 4) 773 if (ai_usermode & UM_SIGNAL)
770 force_sig(SIGBUS, current); 774 force_sig(SIGBUS, current);
771 else 775 else
772 set_cr(cr_no_alignment); 776 set_cr(cr_no_alignment);
@@ -797,6 +801,22 @@ static int __init alignment_init(void)
797 res->write_proc = proc_alignment_write; 801 res->write_proc = proc_alignment_write;
798#endif 802#endif
799 803
804 /*
805 * ARMv6 and later CPUs can perform unaligned accesses for
806 * most single load and store instructions up to word size.
807 * LDM, STM, LDRD and STRD still need to be handled.
808 *
809 * Ignoring the alignment fault is not an option on these
810 * CPUs since we spin re-faulting the instruction without
811 * making any progress.
812 */
813 if (cpu_architecture() >= CPU_ARCH_ARMv6 && (cr_alignment & CR_U)) {
814 cr_alignment &= ~CR_A;
815 cr_no_alignment &= ~CR_A;
816 set_cr(cr_alignment);
817 ai_usermode = UM_FIXUP;
818 }
819
800 hook_fault_code(1, do_alignment, SIGILL, "alignment exception"); 820 hook_fault_code(1, do_alignment, SIGILL, "alignment exception");
801 hook_fault_code(3, do_alignment, SIGILL, "alignment exception"); 821 hook_fault_code(3, do_alignment, SIGILL, "alignment exception");
802 822
diff --git a/arch/arm/plat-omap/debug-devices.c b/arch/arm/plat-omap/debug-devices.c
index e31154b15d9e..f6684832ca8f 100644
--- a/arch/arm/plat-omap/debug-devices.c
+++ b/arch/arm/plat-omap/debug-devices.c
@@ -69,15 +69,15 @@ int __init debug_card_init(u32 addr, unsigned gpio)
69 smc91x_resources[0].start = addr + 0x300; 69 smc91x_resources[0].start = addr + 0x300;
70 smc91x_resources[0].end = addr + 0x30f; 70 smc91x_resources[0].end = addr + 0x30f;
71 71
72 smc91x_resources[1].start = OMAP_GPIO_IRQ(gpio); 72 smc91x_resources[1].start = gpio_to_irq(gpio);
73 smc91x_resources[1].end = OMAP_GPIO_IRQ(gpio); 73 smc91x_resources[1].end = gpio_to_irq(gpio);
74 74
75 status = omap_request_gpio(gpio); 75 status = gpio_request(gpio, "SMC91x irq");
76 if (status < 0) { 76 if (status < 0) {
77 printk(KERN_ERR "GPIO%d unavailable for smc91x IRQ\n", gpio); 77 printk(KERN_ERR "GPIO%d unavailable for smc91x IRQ\n", gpio);
78 return status; 78 return status;
79 } 79 }
80 omap_set_gpio_direction(gpio, 1); 80 gpio_direction_input(gpio);
81 81
82 led_resources[0].start = addr; 82 led_resources[0].start = addr;
83 led_resources[0].end = addr + SZ_4K - 1; 83 led_resources[0].end = addr + SZ_4K - 1;
diff --git a/arch/arm/plat-omap/debug-leds.c b/arch/arm/plat-omap/debug-leds.c
index 2f4c0cabfd34..be4eefda4767 100644
--- a/arch/arm/plat-omap/debug-leds.c
+++ b/arch/arm/plat-omap/debug-leds.c
@@ -83,8 +83,8 @@ static void h2p2_dbg_leds_event(led_event_t evt)
83 /* all leds off during suspend or shutdown */ 83 /* all leds off during suspend or shutdown */
84 84
85 if (!(machine_is_omap_perseus2() || machine_is_omap_h4())) { 85 if (!(machine_is_omap_perseus2() || machine_is_omap_h4())) {
86 omap_set_gpio_dataout(GPIO_TIMER, 0); 86 gpio_set_value(GPIO_TIMER, 0);
87 omap_set_gpio_dataout(GPIO_IDLE, 0); 87 gpio_set_value(GPIO_IDLE, 0);
88 } 88 }
89 89
90 __raw_writew(~0, &fpga->leds); 90 __raw_writew(~0, &fpga->leds);
@@ -107,7 +107,7 @@ static void h2p2_dbg_leds_event(led_event_t evt)
107 if (machine_is_omap_perseus2() || machine_is_omap_h4()) 107 if (machine_is_omap_perseus2() || machine_is_omap_h4())
108 hw_led_state ^= H2P2_DBG_FPGA_P2_LED_TIMER; 108 hw_led_state ^= H2P2_DBG_FPGA_P2_LED_TIMER;
109 else { 109 else {
110 omap_set_gpio_dataout(GPIO_TIMER, 110 gpio_set_value(GPIO_TIMER,
111 led_state & LED_TIMER_ON); 111 led_state & LED_TIMER_ON);
112 goto done; 112 goto done;
113 } 113 }
@@ -121,7 +121,7 @@ static void h2p2_dbg_leds_event(led_event_t evt)
121 if (machine_is_omap_perseus2() || machine_is_omap_h4()) 121 if (machine_is_omap_perseus2() || machine_is_omap_h4())
122 hw_led_state &= ~H2P2_DBG_FPGA_P2_LED_IDLE; 122 hw_led_state &= ~H2P2_DBG_FPGA_P2_LED_IDLE;
123 else { 123 else {
124 omap_set_gpio_dataout(GPIO_IDLE, 1); 124 gpio_set_value(GPIO_IDLE, 1);
125 goto done; 125 goto done;
126 } 126 }
127 127
@@ -131,7 +131,7 @@ static void h2p2_dbg_leds_event(led_event_t evt)
131 if (machine_is_omap_perseus2() || machine_is_omap_h4()) 131 if (machine_is_omap_perseus2() || machine_is_omap_h4())
132 hw_led_state |= H2P2_DBG_FPGA_P2_LED_IDLE; 132 hw_led_state |= H2P2_DBG_FPGA_P2_LED_IDLE;
133 else { 133 else {
134 omap_set_gpio_dataout(GPIO_IDLE, 0); 134 gpio_set_value(GPIO_IDLE, 0);
135 goto done; 135 goto done;
136 } 136 }
137 137
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c
index 7686b9fa53f2..692d2b495af3 100644
--- a/arch/arm/plat-omap/dma.c
+++ b/arch/arm/plat-omap/dma.c
@@ -1848,9 +1848,22 @@ static int omap2_dma_handle_ch(int ch)
1848 printk(KERN_INFO 1848 printk(KERN_INFO
1849 "DMA synchronization event drop occurred with device " 1849 "DMA synchronization event drop occurred with device "
1850 "%d\n", dma_chan[ch].dev_id); 1850 "%d\n", dma_chan[ch].dev_id);
1851 if (unlikely(status & OMAP2_DMA_TRANS_ERR_IRQ)) 1851 if (unlikely(status & OMAP2_DMA_TRANS_ERR_IRQ)) {
1852 printk(KERN_INFO "DMA transaction error with device %d\n", 1852 printk(KERN_INFO "DMA transaction error with device %d\n",
1853 dma_chan[ch].dev_id); 1853 dma_chan[ch].dev_id);
1854 if (cpu_class_is_omap2()) {
1855 /* Errata: sDMA Channel is not disabled
1856 * after a transaction error. So we explicitely
1857 * disable the channel
1858 */
1859 u32 ccr;
1860
1861 ccr = dma_read(CCR(ch));
1862 ccr &= ~OMAP_DMA_CCR_EN;
1863 dma_write(ccr, CCR(ch));
1864 dma_chan[ch].flags &= ~OMAP_DMA_ACTIVE;
1865 }
1866 }
1854 if (unlikely(status & OMAP2_DMA_SECURE_ERR_IRQ)) 1867 if (unlikely(status & OMAP2_DMA_SECURE_ERR_IRQ))
1855 printk(KERN_INFO "DMA secure error with device %d\n", 1868 printk(KERN_INFO "DMA secure error with device %d\n",
1856 dma_chan[ch].dev_id); 1869 dma_chan[ch].dev_id);
diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
index 963c31cd1541..e4f0ce04ba92 100644
--- a/arch/arm/plat-omap/dmtimer.c
+++ b/arch/arm/plat-omap/dmtimer.c
@@ -539,10 +539,6 @@ void omap_dm_timer_set_load(struct omap_dm_timer *timer, int autoreload,
539 omap_dm_timer_write_reg(timer, OMAP_TIMER_CTRL_REG, l); 539 omap_dm_timer_write_reg(timer, OMAP_TIMER_CTRL_REG, l);
540 omap_dm_timer_write_reg(timer, OMAP_TIMER_LOAD_REG, load); 540 omap_dm_timer_write_reg(timer, OMAP_TIMER_LOAD_REG, load);
541 541
542 /* REVISIT: hw feature, ttgr overtaking tldr? */
543 while (readl(timer->io_base + (OMAP_TIMER_WRITE_PEND_REG & 0xff)))
544 cpu_relax();
545
546 omap_dm_timer_write_reg(timer, OMAP_TIMER_TRIGGER_REG, 0); 542 omap_dm_timer_write_reg(timer, OMAP_TIMER_TRIGGER_REG, 0);
547} 543}
548 544
@@ -553,14 +549,15 @@ void omap_dm_timer_set_load_start(struct omap_dm_timer *timer, int autoreload,
553 u32 l; 549 u32 l;
554 550
555 l = omap_dm_timer_read_reg(timer, OMAP_TIMER_CTRL_REG); 551 l = omap_dm_timer_read_reg(timer, OMAP_TIMER_CTRL_REG);
556 if (autoreload) 552 if (autoreload) {
557 l |= OMAP_TIMER_CTRL_AR; 553 l |= OMAP_TIMER_CTRL_AR;
558 else 554 omap_dm_timer_write_reg(timer, OMAP_TIMER_LOAD_REG, load);
555 } else {
559 l &= ~OMAP_TIMER_CTRL_AR; 556 l &= ~OMAP_TIMER_CTRL_AR;
557 }
560 l |= OMAP_TIMER_CTRL_ST; 558 l |= OMAP_TIMER_CTRL_ST;
561 559
562 omap_dm_timer_write_reg(timer, OMAP_TIMER_COUNTER_REG, load); 560 omap_dm_timer_write_reg(timer, OMAP_TIMER_COUNTER_REG, load);
563 omap_dm_timer_write_reg(timer, OMAP_TIMER_LOAD_REG, load);
564 omap_dm_timer_write_reg(timer, OMAP_TIMER_CTRL_REG, l); 561 omap_dm_timer_write_reg(timer, OMAP_TIMER_CTRL_REG, l);
565} 562}
566 563
diff --git a/arch/arm/plat-omap/gpio.c b/arch/arm/plat-omap/gpio.c
index 424049d83fbe..07b6968a7d16 100644
--- a/arch/arm/plat-omap/gpio.c
+++ b/arch/arm/plat-omap/gpio.c
@@ -152,6 +152,7 @@ struct gpio_bank {
152 u32 level_mask; 152 u32 level_mask;
153 spinlock_t lock; 153 spinlock_t lock;
154 struct gpio_chip chip; 154 struct gpio_chip chip;
155 struct clk *dbck;
155}; 156};
156 157
157#define METHOD_MPUIO 0 158#define METHOD_MPUIO 0
@@ -244,6 +245,8 @@ static inline struct gpio_bank *get_gpio_bank(int gpio)
244 return &gpio_bank[gpio >> 5]; 245 return &gpio_bank[gpio >> 5];
245 if (cpu_is_omap34xx()) 246 if (cpu_is_omap34xx())
246 return &gpio_bank[gpio >> 5]; 247 return &gpio_bank[gpio >> 5];
248 BUG();
249 return NULL;
247} 250}
248 251
249static inline int get_gpio_index(int gpio) 252static inline int get_gpio_index(int gpio)
@@ -332,19 +335,6 @@ static void _set_gpio_direction(struct gpio_bank *bank, int gpio, int is_input)
332 __raw_writel(l, reg); 335 __raw_writel(l, reg);
333} 336}
334 337
335void omap_set_gpio_direction(int gpio, int is_input)
336{
337 struct gpio_bank *bank;
338 unsigned long flags;
339
340 if (check_gpio(gpio) < 0)
341 return;
342 bank = get_gpio_bank(gpio);
343 spin_lock_irqsave(&bank->lock, flags);
344 _set_gpio_direction(bank, get_gpio_index(gpio), is_input);
345 spin_unlock_irqrestore(&bank->lock, flags);
346}
347
348static void _set_gpio_dataout(struct gpio_bank *bank, int gpio, int enable) 338static void _set_gpio_dataout(struct gpio_bank *bank, int gpio, int enable)
349{ 339{
350 void __iomem *reg = bank->base; 340 void __iomem *reg = bank->base;
@@ -406,20 +396,7 @@ static void _set_gpio_dataout(struct gpio_bank *bank, int gpio, int enable)
406 __raw_writel(l, reg); 396 __raw_writel(l, reg);
407} 397}
408 398
409void omap_set_gpio_dataout(int gpio, int enable) 399static int __omap_get_gpio_datain(int gpio)
410{
411 struct gpio_bank *bank;
412 unsigned long flags;
413
414 if (check_gpio(gpio) < 0)
415 return;
416 bank = get_gpio_bank(gpio);
417 spin_lock_irqsave(&bank->lock, flags);
418 _set_gpio_dataout(bank, get_gpio_index(gpio), enable);
419 spin_unlock_irqrestore(&bank->lock, flags);
420}
421
422int omap_get_gpio_datain(int gpio)
423{ 400{
424 struct gpio_bank *bank; 401 struct gpio_bank *bank;
425 void __iomem *reg; 402 void __iomem *reg;
@@ -473,6 +450,7 @@ void omap_set_gpio_debounce(int gpio, int enable)
473{ 450{
474 struct gpio_bank *bank; 451 struct gpio_bank *bank;
475 void __iomem *reg; 452 void __iomem *reg;
453 unsigned long flags;
476 u32 val, l = 1 << get_gpio_index(gpio); 454 u32 val, l = 1 << get_gpio_index(gpio);
477 455
478 if (cpu_class_is_omap1()) 456 if (cpu_class_is_omap1())
@@ -480,16 +458,28 @@ void omap_set_gpio_debounce(int gpio, int enable)
480 458
481 bank = get_gpio_bank(gpio); 459 bank = get_gpio_bank(gpio);
482 reg = bank->base; 460 reg = bank->base;
483
484 reg += OMAP24XX_GPIO_DEBOUNCE_EN; 461 reg += OMAP24XX_GPIO_DEBOUNCE_EN;
462
463 spin_lock_irqsave(&bank->lock, flags);
485 val = __raw_readl(reg); 464 val = __raw_readl(reg);
486 465
487 if (enable) 466 if (enable && !(val & l))
488 val |= l; 467 val |= l;
489 else 468 else if (!enable && (val & l))
490 val &= ~l; 469 val &= ~l;
470 else
471 goto done;
472
473 if (cpu_is_omap34xx()) {
474 if (enable)
475 clk_enable(bank->dbck);
476 else
477 clk_disable(bank->dbck);
478 }
491 479
492 __raw_writel(val, reg); 480 __raw_writel(val, reg);
481done:
482 spin_unlock_irqrestore(&bank->lock, flags);
493} 483}
494EXPORT_SYMBOL(omap_set_gpio_debounce); 484EXPORT_SYMBOL(omap_set_gpio_debounce);
495 485
@@ -906,26 +896,17 @@ static int gpio_wake_enable(unsigned int irq, unsigned int enable)
906 return retval; 896 return retval;
907} 897}
908 898
909int omap_request_gpio(int gpio) 899static int omap_gpio_request(struct gpio_chip *chip, unsigned offset)
910{ 900{
911 struct gpio_bank *bank; 901 struct gpio_bank *bank = container_of(chip, struct gpio_bank, chip);
912 unsigned long flags; 902 unsigned long flags;
913 int status;
914
915 if (check_gpio(gpio) < 0)
916 return -EINVAL;
917 903
918 status = gpio_request(gpio, NULL);
919 if (status < 0)
920 return status;
921
922 bank = get_gpio_bank(gpio);
923 spin_lock_irqsave(&bank->lock, flags); 904 spin_lock_irqsave(&bank->lock, flags);
924 905
925 /* Set trigger to none. You need to enable the desired trigger with 906 /* Set trigger to none. You need to enable the desired trigger with
926 * request_irq() or set_irq_type(). 907 * request_irq() or set_irq_type().
927 */ 908 */
928 _set_gpio_triggering(bank, get_gpio_index(gpio), IRQ_TYPE_NONE); 909 _set_gpio_triggering(bank, offset, IRQ_TYPE_NONE);
929 910
930#ifdef CONFIG_ARCH_OMAP15XX 911#ifdef CONFIG_ARCH_OMAP15XX
931 if (bank->method == METHOD_GPIO_1510) { 912 if (bank->method == METHOD_GPIO_1510) {
@@ -933,7 +914,7 @@ int omap_request_gpio(int gpio)
933 914
934 /* Claim the pin for MPU */ 915 /* Claim the pin for MPU */
935 reg = bank->base + OMAP1510_GPIO_PIN_CONTROL; 916 reg = bank->base + OMAP1510_GPIO_PIN_CONTROL;
936 __raw_writel(__raw_readl(reg) | (1 << get_gpio_index(gpio)), reg); 917 __raw_writel(__raw_readl(reg) | (1 << offset), reg);
937 } 918 }
938#endif 919#endif
939 spin_unlock_irqrestore(&bank->lock, flags); 920 spin_unlock_irqrestore(&bank->lock, flags);
@@ -941,39 +922,28 @@ int omap_request_gpio(int gpio)
941 return 0; 922 return 0;
942} 923}
943 924
944void omap_free_gpio(int gpio) 925static void omap_gpio_free(struct gpio_chip *chip, unsigned offset)
945{ 926{
946 struct gpio_bank *bank; 927 struct gpio_bank *bank = container_of(chip, struct gpio_bank, chip);
947 unsigned long flags; 928 unsigned long flags;
948 929
949 if (check_gpio(gpio) < 0)
950 return;
951 bank = get_gpio_bank(gpio);
952 spin_lock_irqsave(&bank->lock, flags); 930 spin_lock_irqsave(&bank->lock, flags);
953 if (unlikely(!gpiochip_is_requested(&bank->chip,
954 get_gpio_index(gpio)))) {
955 spin_unlock_irqrestore(&bank->lock, flags);
956 printk(KERN_ERR "omap-gpio: GPIO %d wasn't reserved!\n", gpio);
957 dump_stack();
958 return;
959 }
960#ifdef CONFIG_ARCH_OMAP16XX 931#ifdef CONFIG_ARCH_OMAP16XX
961 if (bank->method == METHOD_GPIO_1610) { 932 if (bank->method == METHOD_GPIO_1610) {
962 /* Disable wake-up during idle for dynamic tick */ 933 /* Disable wake-up during idle for dynamic tick */
963 void __iomem *reg = bank->base + OMAP1610_GPIO_CLEAR_WAKEUPENA; 934 void __iomem *reg = bank->base + OMAP1610_GPIO_CLEAR_WAKEUPENA;
964 __raw_writel(1 << get_gpio_index(gpio), reg); 935 __raw_writel(1 << offset, reg);
965 } 936 }
966#endif 937#endif
967#if defined(CONFIG_ARCH_OMAP24XX) || defined(CONFIG_ARCH_OMAP34XX) 938#if defined(CONFIG_ARCH_OMAP24XX) || defined(CONFIG_ARCH_OMAP34XX)
968 if (bank->method == METHOD_GPIO_24XX) { 939 if (bank->method == METHOD_GPIO_24XX) {
969 /* Disable wake-up during idle for dynamic tick */ 940 /* Disable wake-up during idle for dynamic tick */
970 void __iomem *reg = bank->base + OMAP24XX_GPIO_CLEARWKUENA; 941 void __iomem *reg = bank->base + OMAP24XX_GPIO_CLEARWKUENA;
971 __raw_writel(1 << get_gpio_index(gpio), reg); 942 __raw_writel(1 << offset, reg);
972 } 943 }
973#endif 944#endif
974 _reset_gpio(bank, gpio); 945 _reset_gpio(bank, bank->chip.base + offset);
975 spin_unlock_irqrestore(&bank->lock, flags); 946 spin_unlock_irqrestore(&bank->lock, flags);
976 gpio_free(gpio);
977} 947}
978 948
979/* 949/*
@@ -1252,7 +1222,7 @@ static int gpio_input(struct gpio_chip *chip, unsigned offset)
1252 1222
1253static int gpio_get(struct gpio_chip *chip, unsigned offset) 1223static int gpio_get(struct gpio_chip *chip, unsigned offset)
1254{ 1224{
1255 return omap_get_gpio_datain(chip->base + offset); 1225 return __omap_get_gpio_datain(chip->base + offset);
1256} 1226}
1257 1227
1258static int gpio_output(struct gpio_chip *chip, unsigned offset, int value) 1228static int gpio_output(struct gpio_chip *chip, unsigned offset, int value)
@@ -1279,6 +1249,14 @@ static void gpio_set(struct gpio_chip *chip, unsigned offset, int value)
1279 spin_unlock_irqrestore(&bank->lock, flags); 1249 spin_unlock_irqrestore(&bank->lock, flags);
1280} 1250}
1281 1251
1252static int gpio_2irq(struct gpio_chip *chip, unsigned offset)
1253{
1254 struct gpio_bank *bank;
1255
1256 bank = container_of(chip, struct gpio_bank, chip);
1257 return bank->virtual_irq_start + offset;
1258}
1259
1282/*---------------------------------------------------------------------*/ 1260/*---------------------------------------------------------------------*/
1283 1261
1284static int initialized; 1262static int initialized;
@@ -1296,7 +1274,6 @@ static struct clk * gpio5_fck;
1296#endif 1274#endif
1297 1275
1298#if defined(CONFIG_ARCH_OMAP3) 1276#if defined(CONFIG_ARCH_OMAP3)
1299static struct clk *gpio_fclks[OMAP34XX_NR_GPIOS];
1300static struct clk *gpio_iclks[OMAP34XX_NR_GPIOS]; 1277static struct clk *gpio_iclks[OMAP34XX_NR_GPIOS];
1301#endif 1278#endif
1302 1279
@@ -1310,9 +1287,7 @@ static int __init _omap_gpio_init(void)
1310 int i; 1287 int i;
1311 int gpio = 0; 1288 int gpio = 0;
1312 struct gpio_bank *bank; 1289 struct gpio_bank *bank;
1313#if defined(CONFIG_ARCH_OMAP3)
1314 char clk_name[11]; 1290 char clk_name[11];
1315#endif
1316 1291
1317 initialized = 1; 1292 initialized = 1;
1318 1293
@@ -1367,12 +1342,6 @@ static int __init _omap_gpio_init(void)
1367 printk(KERN_ERR "Could not get %s\n", clk_name); 1342 printk(KERN_ERR "Could not get %s\n", clk_name);
1368 else 1343 else
1369 clk_enable(gpio_iclks[i]); 1344 clk_enable(gpio_iclks[i]);
1370 sprintf(clk_name, "gpio%d_fck", i + 1);
1371 gpio_fclks[i] = clk_get(NULL, clk_name);
1372 if (IS_ERR(gpio_fclks[i]))
1373 printk(KERN_ERR "Could not get %s\n", clk_name);
1374 else
1375 clk_enable(gpio_fclks[i]);
1376 } 1345 }
1377 } 1346 }
1378#endif 1347#endif
@@ -1479,10 +1448,13 @@ static int __init _omap_gpio_init(void)
1479 /* REVISIT eventually switch from OMAP-specific gpio structs 1448 /* REVISIT eventually switch from OMAP-specific gpio structs
1480 * over to the generic ones 1449 * over to the generic ones
1481 */ 1450 */
1451 bank->chip.request = omap_gpio_request;
1452 bank->chip.free = omap_gpio_free;
1482 bank->chip.direction_input = gpio_input; 1453 bank->chip.direction_input = gpio_input;
1483 bank->chip.get = gpio_get; 1454 bank->chip.get = gpio_get;
1484 bank->chip.direction_output = gpio_output; 1455 bank->chip.direction_output = gpio_output;
1485 bank->chip.set = gpio_set; 1456 bank->chip.set = gpio_set;
1457 bank->chip.to_irq = gpio_2irq;
1486 if (bank_is_mpuio(bank)) { 1458 if (bank_is_mpuio(bank)) {
1487 bank->chip.label = "mpuio"; 1459 bank->chip.label = "mpuio";
1488#ifdef CONFIG_ARCH_OMAP16XX 1460#ifdef CONFIG_ARCH_OMAP16XX
@@ -1511,6 +1483,13 @@ static int __init _omap_gpio_init(void)
1511 } 1483 }
1512 set_irq_chained_handler(bank->irq, gpio_irq_handler); 1484 set_irq_chained_handler(bank->irq, gpio_irq_handler);
1513 set_irq_data(bank->irq, bank); 1485 set_irq_data(bank->irq, bank);
1486
1487 if (cpu_is_omap34xx()) {
1488 sprintf(clk_name, "gpio%d_dbck", i + 1);
1489 bank->dbck = clk_get(NULL, clk_name);
1490 if (IS_ERR(bank->dbck))
1491 printk(KERN_ERR "Could not get %s\n", clk_name);
1492 }
1514 } 1493 }
1515 1494
1516 /* Enable system clock for GPIO module. 1495 /* Enable system clock for GPIO module.
@@ -1739,12 +1718,6 @@ static int __init omap_gpio_sysinit(void)
1739 return ret; 1718 return ret;
1740} 1719}
1741 1720
1742EXPORT_SYMBOL(omap_request_gpio);
1743EXPORT_SYMBOL(omap_free_gpio);
1744EXPORT_SYMBOL(omap_set_gpio_direction);
1745EXPORT_SYMBOL(omap_set_gpio_dataout);
1746EXPORT_SYMBOL(omap_get_gpio_datain);
1747
1748arch_initcall(omap_gpio_sysinit); 1721arch_initcall(omap_gpio_sysinit);
1749 1722
1750 1723
@@ -1801,14 +1774,14 @@ static int dbg_gpio_show(struct seq_file *s, void *unused)
1801 continue; 1774 continue;
1802 1775
1803 irq = bank->virtual_irq_start + j; 1776 irq = bank->virtual_irq_start + j;
1804 value = omap_get_gpio_datain(gpio); 1777 value = gpio_get_value(gpio);
1805 is_in = gpio_is_input(bank, mask); 1778 is_in = gpio_is_input(bank, mask);
1806 1779
1807 if (bank_is_mpuio(bank)) 1780 if (bank_is_mpuio(bank))
1808 seq_printf(s, "MPUIO %2d ", j); 1781 seq_printf(s, "MPUIO %2d ", j);
1809 else 1782 else
1810 seq_printf(s, "GPIO %3d ", gpio); 1783 seq_printf(s, "GPIO %3d ", gpio);
1811 seq_printf(s, "(%10s): %s %s", 1784 seq_printf(s, "(%-20.20s): %s %s",
1812 label, 1785 label,
1813 is_in ? "in " : "out", 1786 is_in ? "in " : "out",
1814 value ? "hi" : "lo"); 1787 value ? "hi" : "lo");
diff --git a/arch/arm/plat-omap/i2c.c b/arch/arm/plat-omap/i2c.c
index 0e6d147ab6f8..89a6ab0b7db8 100644
--- a/arch/arm/plat-omap/i2c.c
+++ b/arch/arm/plat-omap/i2c.c
@@ -79,26 +79,43 @@ static struct platform_device omap_i2c_devices[] = {
79#endif 79#endif
80}; 80};
81 81
82static void __init omap_i2c_mux_pins(int bus_id) 82#if defined(CONFIG_ARCH_OMAP24XX)
83static const int omap24xx_pins[][2] = {
84 { M19_24XX_I2C1_SCL, L15_24XX_I2C1_SDA },
85 { J15_24XX_I2C2_SCL, H19_24XX_I2C2_SDA },
86};
87#else
88static const int omap24xx_pins[][2] = {};
89#endif
90#if defined(CONFIG_ARCH_OMAP34XX)
91static const int omap34xx_pins[][2] = {
92 { K21_34XX_I2C1_SCL, J21_34XX_I2C1_SDA},
93 { AF15_34XX_I2C2_SCL, AE15_34XX_I2C2_SDA},
94 { AF14_34XX_I2C3_SCL, AG14_34XX_I2C3_SDA},
95};
96#else
97static const int omap34xx_pins[][2] = {};
98#endif
99
100static void __init omap_i2c_mux_pins(int bus)
83{ 101{
84 /* TODO: Muxing for OMAP3 */ 102 int scl, sda;
85 switch (bus_id) { 103
86 case 1: 104 if (cpu_class_is_omap1()) {
87 if (cpu_class_is_omap1()) { 105 scl = I2C_SCL;
88 omap_cfg_reg(I2C_SCL); 106 sda = I2C_SDA;
89 omap_cfg_reg(I2C_SDA); 107 } else if (cpu_is_omap24xx()) {
90 } else if (cpu_is_omap24xx()) { 108 scl = omap24xx_pins[bus][0];
91 omap_cfg_reg(M19_24XX_I2C1_SCL); 109 sda = omap24xx_pins[bus][1];
92 omap_cfg_reg(L15_24XX_I2C1_SDA); 110 } else if (cpu_is_omap34xx()) {
93 } 111 scl = omap34xx_pins[bus][0];
94 break; 112 sda = omap34xx_pins[bus][1];
95 case 2: 113 } else {
96 if (cpu_is_omap24xx()) { 114 return;
97 omap_cfg_reg(J15_24XX_I2C2_SCL);
98 omap_cfg_reg(H19_24XX_I2C2_SDA);
99 }
100 break;
101 } 115 }
116
117 omap_cfg_reg(sda);
118 omap_cfg_reg(scl);
102} 119}
103 120
104int __init omap_register_i2c_bus(int bus_id, u32 clkrate, 121int __init omap_register_i2c_bus(int bus_id, u32 clkrate,
@@ -142,6 +159,6 @@ int __init omap_register_i2c_bus(int bus_id, u32 clkrate,
142 res[1].start = irq; 159 res[1].start = irq;
143 } 160 }
144 161
145 omap_i2c_mux_pins(bus_id); 162 omap_i2c_mux_pins(bus_id - 1);
146 return platform_device_register(pdev); 163 return platform_device_register(pdev);
147} 164}
diff --git a/arch/arm/plat-omap/include/mach/board-apollon.h b/arch/arm/plat-omap/include/mach/board-apollon.h
index 731c858cf3fe..61bd5e8f09b1 100644
--- a/arch/arm/plat-omap/include/mach/board-apollon.h
+++ b/arch/arm/plat-omap/include/mach/board-apollon.h
@@ -29,12 +29,14 @@
29#ifndef __ASM_ARCH_OMAP_APOLLON_H 29#ifndef __ASM_ARCH_OMAP_APOLLON_H
30#define __ASM_ARCH_OMAP_APOLLON_H 30#define __ASM_ARCH_OMAP_APOLLON_H
31 31
32#include <mach/cpu.h>
33
32extern void apollon_mmc_init(void); 34extern void apollon_mmc_init(void);
33 35
34static inline int apollon_plus(void) 36static inline int apollon_plus(void)
35{ 37{
36 /* The apollon plus has IDCODE revision 5 */ 38 /* The apollon plus has IDCODE revision 5 */
37 return system_rev & 0xc0; 39 return omap_rev() & 0xc0;
38} 40}
39 41
40/* Placeholder for APOLLON specific defines */ 42/* Placeholder for APOLLON specific defines */
diff --git a/arch/arm/plat-omap/include/mach/board-ldp.h b/arch/arm/plat-omap/include/mach/board-ldp.h
index 66e2746c04ca..f23399665212 100644
--- a/arch/arm/plat-omap/include/mach/board-ldp.h
+++ b/arch/arm/plat-omap/include/mach/board-ldp.h
@@ -32,5 +32,8 @@
32extern void twl4030_bci_battery_init(void); 32extern void twl4030_bci_battery_init(void);
33 33
34#define TWL4030_IRQNUM INT_34XX_SYS_NIRQ 34#define TWL4030_IRQNUM INT_34XX_SYS_NIRQ
35 35#define LDP_SMC911X_CS 1
36#define LDP_SMC911X_GPIO 152
37#define DEBUG_BASE 0x08000000
38#define OMAP34XX_ETHR_START DEBUG_BASE
36#endif /* __ASM_ARCH_OMAP_LDP_H */ 39#endif /* __ASM_ARCH_OMAP_LDP_H */
diff --git a/arch/arm/plat-omap/include/mach/cpu.h b/arch/arm/plat-omap/include/mach/cpu.h
index e0464187209d..b2062f1175de 100644
--- a/arch/arm/plat-omap/include/mach/cpu.h
+++ b/arch/arm/plat-omap/include/mach/cpu.h
@@ -28,13 +28,18 @@
28 28
29struct omap_chip_id { 29struct omap_chip_id {
30 u8 oc; 30 u8 oc;
31 u8 type;
31}; 32};
32 33
33#define OMAP_CHIP_INIT(x) { .oc = x } 34#define OMAP_CHIP_INIT(x) { .oc = x }
34 35
35extern unsigned int system_rev; 36/*
36 37 * omap_rev bits:
37#define omap2_cpu_rev() ((system_rev >> 12) & 0x0f) 38 * CPU id bits (0730, 1510, 1710, 2422...) [31:16]
39 * CPU revision (See _REV_ defined in cpu.h) [15:08]
40 * CPU class bits (15xx, 16xx, 24xx, 34xx...) [07:00]
41 */
42unsigned int omap_rev(void);
38 43
39/* 44/*
40 * Test if multicore OMAP support is needed 45 * Test if multicore OMAP support is needed
@@ -108,7 +113,7 @@ extern unsigned int system_rev;
108 * cpu_is_omap243x(): True for OMAP2430 113 * cpu_is_omap243x(): True for OMAP2430
109 * cpu_is_omap343x(): True for OMAP3430 114 * cpu_is_omap343x(): True for OMAP3430
110 */ 115 */
111#define GET_OMAP_CLASS ((system_rev >> 24) & 0xff) 116#define GET_OMAP_CLASS (omap_rev() & 0xff)
112 117
113#define IS_OMAP_CLASS(class, id) \ 118#define IS_OMAP_CLASS(class, id) \
114static inline int is_omap ##class (void) \ 119static inline int is_omap ##class (void) \
@@ -116,7 +121,7 @@ static inline int is_omap ##class (void) \
116 return (GET_OMAP_CLASS == (id)) ? 1 : 0; \ 121 return (GET_OMAP_CLASS == (id)) ? 1 : 0; \
117} 122}
118 123
119#define GET_OMAP_SUBCLASS ((system_rev >> 20) & 0x0fff) 124#define GET_OMAP_SUBCLASS ((omap_rev() >> 20) & 0x0fff)
120 125
121#define IS_OMAP_SUBCLASS(subclass, id) \ 126#define IS_OMAP_SUBCLASS(subclass, id) \
122static inline int is_omap ##subclass (void) \ 127static inline int is_omap ##subclass (void) \
@@ -226,7 +231,7 @@ IS_OMAP_SUBCLASS(343x, 0x343)
226 * cpu_is_omap2430(): True for OMAP2430 231 * cpu_is_omap2430(): True for OMAP2430
227 * cpu_is_omap3430(): True for OMAP3430 232 * cpu_is_omap3430(): True for OMAP3430
228 */ 233 */
229#define GET_OMAP_TYPE ((system_rev >> 16) & 0xffff) 234#define GET_OMAP_TYPE ((omap_rev() >> 16) & 0xffff)
230 235
231#define IS_OMAP_TYPE(type, id) \ 236#define IS_OMAP_TYPE(type, id) \
232static inline int is_omap ##type (void) \ 237static inline int is_omap ##type (void) \
@@ -320,44 +325,20 @@ IS_OMAP_TYPE(3430, 0x3430)
320#define cpu_class_is_omap2() (cpu_is_omap24xx() || cpu_is_omap34xx()) 325#define cpu_class_is_omap2() (cpu_is_omap24xx() || cpu_is_omap34xx())
321 326
322#if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3) 327#if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3)
323/*
324 * Macros to detect silicon revision of OMAP2/3 processors.
325 * is_sil_rev_greater_than: true if passed cpu type & its rev is greater.
326 * is_sil_rev_lesser_than: true if passed cpu type & its rev is lesser.
327 * is_sil_rev_equal_to: true if passed cpu type & its rev is equal.
328 * get_sil_rev: return the silicon rev value.
329 */
330#define get_sil_omap_type(rev) ((rev & 0xffff0000) >> 16)
331#define get_sil_revision(rev) ((rev & 0x0000f000) >> 12)
332 328
333#define is_sil_rev_greater_than(rev) \ 329/* Various silicon revisions for omap2 */
334 ((get_sil_omap_type(system_rev) == get_sil_omap_type(rev)) && \ 330#define OMAP242X_CLASS 0x24200024
335 (get_sil_revision(system_rev) > get_sil_revision(rev))) 331#define OMAP2420_REV_ES1_0 0x24200024
332#define OMAP2420_REV_ES2_0 0x24201024
336 333
337#define is_sil_rev_less_than(rev) \ 334#define OMAP243X_CLASS 0x24300024
338 ((get_sil_omap_type(system_rev) == get_sil_omap_type(rev)) && \ 335#define OMAP2430_REV_ES1_0 0x24300024
339 (get_sil_revision(system_rev) < get_sil_revision(rev)))
340 336
341#define is_sil_rev_equal_to(rev) \ 337#define OMAP343X_CLASS 0x34300034
342 ((get_sil_omap_type(system_rev) == get_sil_omap_type(rev)) && \ 338#define OMAP3430_REV_ES1_0 0x34300034
343 (get_sil_revision(system_rev) == get_sil_revision(rev))) 339#define OMAP3430_REV_ES2_0 0x34301034
344 340#define OMAP3430_REV_ES2_1 0x34302034
345#define get_sil_rev() \ 341#define OMAP3430_REV_ES3_0 0x34303034
346 get_sil_revision(system_rev)
347
348/* Various silicon macros defined here */
349#define OMAP242X_CLASS 0x24200000
350#define OMAP2420_REV_ES1_0 0x24200000
351#define OMAP2420_REV_ES2_0 0x24201000
352
353#define OMAP243X_CLASS 0x24300000
354#define OMAP2430_REV_ES1_0 0x24300000
355
356#define OMAP343X_CLASS 0x34300000
357#define OMAP3430_REV_ES1_0 0x34300000
358#define OMAP3430_REV_ES2_0 0x34301000
359#define OMAP3430_REV_ES2_1 0x34302000
360#define OMAP3430_REV_ES2_2 0x34303000
361 342
362/* 343/*
363 * omap_chip bits 344 * omap_chip bits
@@ -382,23 +363,16 @@ IS_OMAP_TYPE(3430, 0x3430)
382#define CHIP_IS_OMAP24XX (CHIP_IS_OMAP2420 | CHIP_IS_OMAP2430) 363#define CHIP_IS_OMAP24XX (CHIP_IS_OMAP2420 | CHIP_IS_OMAP2430)
383 364
384int omap_chip_is(struct omap_chip_id oci); 365int omap_chip_is(struct omap_chip_id oci);
385 366int omap_type(void);
386 367
387/* 368/*
388 * Macro to detect device type i.e. EMU/HS/TST/GP/BAD 369 * Macro to detect device type i.e. EMU/HS/TST/GP/BAD
389 */ 370 */
390#define DEVICE_TYPE_TEST 0 371#define OMAP2_DEVICE_TYPE_TEST 0
391#define DEVICE_TYPE_EMU 1 372#define OMAP2_DEVICE_TYPE_EMU 1
392#define DEVICE_TYPE_SEC 2 373#define OMAP2_DEVICE_TYPE_SEC 2
393#define DEVICE_TYPE_GP 3 374#define OMAP2_DEVICE_TYPE_GP 3
394#define DEVICE_TYPE_BAD 4 375#define OMAP2_DEVICE_TYPE_BAD 4
395
396#define get_device_type() ((system_rev & 0x700) >> 8)
397#define is_device_type_test() (get_device_type() == DEVICE_TYPE_TEST)
398#define is_device_type_emu() (get_device_type() == DEVICE_TYPE_EMU)
399#define is_device_type_sec() (get_device_type() == DEVICE_TYPE_SEC)
400#define is_device_type_gp() (get_device_type() == DEVICE_TYPE_GP)
401#define is_device_type_bad() (get_device_type() == DEVICE_TYPE_BAD)
402 376
403void omap2_check_revision(void); 377void omap2_check_revision(void);
404 378
diff --git a/arch/arm/plat-omap/include/mach/gpio.h b/arch/arm/plat-omap/include/mach/gpio.h
index 98e9008b7e9d..04e68e88f134 100644
--- a/arch/arm/plat-omap/include/mach/gpio.h
+++ b/arch/arm/plat-omap/include/mach/gpio.h
@@ -71,11 +71,6 @@
71 IH_GPIO_BASE + (nr)) 71 IH_GPIO_BASE + (nr))
72 72
73extern int omap_gpio_init(void); /* Call from board init only */ 73extern int omap_gpio_init(void); /* Call from board init only */
74extern int omap_request_gpio(int gpio);
75extern void omap_free_gpio(int gpio);
76extern void omap_set_gpio_direction(int gpio, int is_input);
77extern void omap_set_gpio_dataout(int gpio, int enable);
78extern int omap_get_gpio_datain(int gpio);
79extern void omap2_gpio_prepare_for_retention(void); 74extern void omap2_gpio_prepare_for_retention(void);
80extern void omap2_gpio_resume_after_retention(void); 75extern void omap2_gpio_resume_after_retention(void);
81extern void omap_set_gpio_debounce(int gpio, int enable); 76extern void omap_set_gpio_debounce(int gpio, int enable);
@@ -92,6 +87,16 @@ extern void omap_set_gpio_debounce_time(int gpio, int enable);
92#include <linux/errno.h> 87#include <linux/errno.h>
93#include <asm-generic/gpio.h> 88#include <asm-generic/gpio.h>
94 89
90static inline int omap_request_gpio(int gpio)
91{
92 return gpio_request(gpio, "FIXME");
93}
94
95static inline void omap_free_gpio(int gpio)
96{
97 gpio_free(gpio);
98}
99
95static inline int gpio_get_value(unsigned gpio) 100static inline int gpio_get_value(unsigned gpio)
96{ 101{
97 return __gpio_get_value(gpio); 102 return __gpio_get_value(gpio);
@@ -109,16 +114,24 @@ static inline int gpio_cansleep(unsigned gpio)
109 114
110static inline int gpio_to_irq(unsigned gpio) 115static inline int gpio_to_irq(unsigned gpio)
111{ 116{
112 if (gpio < (OMAP_MAX_GPIO_LINES + 16)) 117 return __gpio_to_irq(gpio);
113 return OMAP_GPIO_IRQ(gpio);
114 return -EINVAL;
115} 118}
116 119
117static inline int irq_to_gpio(unsigned irq) 120static inline int irq_to_gpio(unsigned irq)
118{ 121{
122 int tmp;
123
124 /* omap1 SOC mpuio */
119 if (cpu_class_is_omap1() && (irq < (IH_MPUIO_BASE + 16))) 125 if (cpu_class_is_omap1() && (irq < (IH_MPUIO_BASE + 16)))
120 return (irq - IH_MPUIO_BASE) + OMAP_MAX_GPIO_LINES; 126 return (irq - IH_MPUIO_BASE) + OMAP_MAX_GPIO_LINES;
121 return irq - IH_GPIO_BASE; 127
128 /* SOC gpio */
129 tmp = irq - IH_GPIO_BASE;
130 if (tmp < OMAP_MAX_GPIO_LINES)
131 return tmp;
132
133 /* we don't supply reverse mappings for non-SOC gpios */
134 return -EIO;
122} 135}
123 136
124#endif 137#endif
diff --git a/arch/arm/plat-omap/include/mach/mux.h b/arch/arm/plat-omap/include/mach/mux.h
index 6bbf1789bed5..f4362b8682c7 100644
--- a/arch/arm/plat-omap/include/mach/mux.h
+++ b/arch/arm/plat-omap/include/mach/mux.h
@@ -632,6 +632,15 @@ enum omap24xx_index {
632 AC7_2430_USB0HS_DATA7, 632 AC7_2430_USB0HS_DATA7,
633 633
634 /* 2430 McBSP */ 634 /* 2430 McBSP */
635 AD6_2430_MCBSP_CLKS,
636
637 AB2_2430_MCBSP1_CLKR,
638 AD5_2430_MCBSP1_FSR,
639 AA1_2430_MCBSP1_DX,
640 AF3_2430_MCBSP1_DR,
641 AB3_2430_MCBSP1_FSX,
642 Y9_2430_MCBSP1_CLKX,
643
635 AC10_2430_MCBSP2_FSX, 644 AC10_2430_MCBSP2_FSX,
636 AD16_2430_MCBSP2_CLX, 645 AD16_2430_MCBSP2_CLX,
637 AE13_2430_MCBSP2_DX, 646 AE13_2430_MCBSP2_DX,
@@ -641,6 +650,30 @@ enum omap24xx_index {
641 AE13_2430_MCBSP2_DX_OFF, 650 AE13_2430_MCBSP2_DX_OFF,
642 AD13_2430_MCBSP2_DR_OFF, 651 AD13_2430_MCBSP2_DR_OFF,
643 652
653 AC9_2430_MCBSP3_CLKX,
654 AE4_2430_MCBSP3_FSX,
655 AE2_2430_MCBSP3_DR,
656 AF4_2430_MCBSP3_DX,
657
658 N3_2430_MCBSP4_CLKX,
659 AD23_2430_MCBSP4_DR,
660 AB25_2430_MCBSP4_DX,
661 AC25_2430_MCBSP4_FSX,
662
663 AE16_2430_MCBSP5_CLKX,
664 AF12_2430_MCBSP5_FSX,
665 K7_2430_MCBSP5_DX,
666 M1_2430_MCBSP5_DR,
667
668 /* 2430 McSPI*/
669 Y18_2430_MCSPI1_CLK,
670 AD15_2430_MCSPI1_SIMO,
671 AE17_2430_MCSPI1_SOMI,
672 U1_2430_MCSPI1_CS0,
673
674 /* Touchscreen GPIO */
675 AF19_2430_GPIO_85,
676
644}; 677};
645 678
646enum omap34xx_index { 679enum omap34xx_index {
@@ -749,6 +782,14 @@ enum omap34xx_index {
749 AD2_3430_USB3FS_PHY_MM3_TXDAT, 782 AD2_3430_USB3FS_PHY_MM3_TXDAT,
750 AC1_3430_USB3FS_PHY_MM3_TXEN_N, 783 AC1_3430_USB3FS_PHY_MM3_TXEN_N,
751 784
785 /* 34xx GPIO
786 * - normally these are bidirectional, no internal pullup/pulldown
787 * - "_UP" suffix (GPIO3_UP) if internal pullup is configured
788 * - "_DOWN" suffix (GPIO3_DOWN) with internal pulldown
789 * - "_OUT" suffix (GPIO3_OUT) for output-only pins (unlike 24xx)
790 */
791 AH8_34XX_GPIO29,
792 J25_34XX_GPIO170,
752}; 793};
753 794
754struct omap_mux_cfg { 795struct omap_mux_cfg {
diff --git a/arch/arm/plat-omap/include/mach/omapfb.h b/arch/arm/plat-omap/include/mach/omapfb.h
index ec67fb428607..7b74d1255e0b 100644
--- a/arch/arm/plat-omap/include/mach/omapfb.h
+++ b/arch/arm/plat-omap/include/mach/omapfb.h
@@ -353,8 +353,8 @@ struct omapfb_device {
353 u32 pseudo_palette[17]; 353 u32 pseudo_palette[17];
354 354
355 struct lcd_panel *panel; /* LCD panel */ 355 struct lcd_panel *panel; /* LCD panel */
356 struct lcd_ctrl *ctrl; /* LCD controller */ 356 const struct lcd_ctrl *ctrl; /* LCD controller */
357 struct lcd_ctrl *int_ctrl; /* internal LCD ctrl */ 357 const struct lcd_ctrl *int_ctrl; /* internal LCD ctrl */
358 struct lcd_ctrl_extif *ext_if; /* LCD ctrl external 358 struct lcd_ctrl_extif *ext_if; /* LCD ctrl external
359 interface */ 359 interface */
360 struct device *dev; 360 struct device *dev;
diff --git a/arch/arm/plat-omap/sram.c b/arch/arm/plat-omap/sram.c
index 9f9a921829c0..be7bcaf2b832 100644
--- a/arch/arm/plat-omap/sram.c
+++ b/arch/arm/plat-omap/sram.c
@@ -24,6 +24,7 @@
24 24
25#include <mach/sram.h> 25#include <mach/sram.h>
26#include <mach/board.h> 26#include <mach/board.h>
27#include <mach/cpu.h>
27 28
28#include <mach/control.h> 29#include <mach/control.h>
29 30
@@ -87,7 +88,7 @@ static int is_sram_locked(void)
87 int type = 0; 88 int type = 0;
88 89
89 if (cpu_is_omap242x()) 90 if (cpu_is_omap242x())
90 type = system_rev & OMAP2_DEVICETYPE_MASK; 91 type = omap_rev() & OMAP2_DEVICETYPE_MASK;
91 92
92 if (type == GP_DEVICE) { 93 if (type == GP_DEVICE) {
93 /* RAMFW: R/W access to all initiators for all qualifier sets */ 94 /* RAMFW: R/W access to all initiators for all qualifier sets */
@@ -255,7 +256,7 @@ void omap_sram_reprogram_clock(u32 dpllctl, u32 ckctl)
255 if (!_omap_sram_reprogram_clock) 256 if (!_omap_sram_reprogram_clock)
256 omap_sram_error(); 257 omap_sram_error();
257 258
258 return _omap_sram_reprogram_clock(dpllctl, ckctl); 259 _omap_sram_reprogram_clock(dpllctl, ckctl);
259} 260}
260 261
261int __init omap1_sram_init(void) 262int __init omap1_sram_init(void)
@@ -282,8 +283,8 @@ void omap2_sram_ddr_init(u32 *slow_dll_ctrl, u32 fast_dll_ctrl,
282 if (!_omap2_sram_ddr_init) 283 if (!_omap2_sram_ddr_init)
283 omap_sram_error(); 284 omap_sram_error();
284 285
285 return _omap2_sram_ddr_init(slow_dll_ctrl, fast_dll_ctrl, 286 _omap2_sram_ddr_init(slow_dll_ctrl, fast_dll_ctrl,
286 base_cs, force_unlock); 287 base_cs, force_unlock);
287} 288}
288 289
289static void (*_omap2_sram_reprogram_sdrc)(u32 perf_level, u32 dll_val, 290static void (*_omap2_sram_reprogram_sdrc)(u32 perf_level, u32 dll_val,
@@ -294,7 +295,7 @@ void omap2_sram_reprogram_sdrc(u32 perf_level, u32 dll_val, u32 mem_type)
294 if (!_omap2_sram_reprogram_sdrc) 295 if (!_omap2_sram_reprogram_sdrc)
295 omap_sram_error(); 296 omap_sram_error();
296 297
297 return _omap2_sram_reprogram_sdrc(perf_level, dll_val, mem_type); 298 _omap2_sram_reprogram_sdrc(perf_level, dll_val, mem_type);
298} 299}
299 300
300static u32 (*_omap2_set_prcm)(u32 dpll_ctrl_val, u32 sdrc_rfr_val, int bypass); 301static u32 (*_omap2_set_prcm)(u32 dpll_ctrl_val, u32 sdrc_rfr_val, int bypass);
diff --git a/arch/arm/plat-orion/pcie.c b/arch/arm/plat-orion/pcie.c
index 883902fead89..d41d41d78ad9 100644
--- a/arch/arm/plat-orion/pcie.c
+++ b/arch/arm/plat-orion/pcie.c
@@ -35,7 +35,7 @@
35#define PCIE_CONF_REG(r) ((((r) & 0xf00) << 16) | ((r) & 0xfc)) 35#define PCIE_CONF_REG(r) ((((r) & 0xf00) << 16) | ((r) & 0xfc))
36#define PCIE_CONF_BUS(b) (((b) & 0xff) << 16) 36#define PCIE_CONF_BUS(b) (((b) & 0xff) << 16)
37#define PCIE_CONF_DEV(d) (((d) & 0x1f) << 11) 37#define PCIE_CONF_DEV(d) (((d) & 0x1f) << 11)
38#define PCIE_CONF_FUNC(f) (((f) & 0x3) << 8) 38#define PCIE_CONF_FUNC(f) (((f) & 0x7) << 8)
39#define PCIE_CONF_DATA_OFF 0x18fc 39#define PCIE_CONF_DATA_OFF 0x18fc
40#define PCIE_MASK_OFF 0x1910 40#define PCIE_MASK_OFF 0x1910
41#define PCIE_CTRL_OFF 0x1a00 41#define PCIE_CTRL_OFF 0x1a00
diff --git a/arch/ia64/configs/generic_defconfig b/arch/ia64/configs/generic_defconfig
index e05f9e1d3faa..27eb67604c53 100644
--- a/arch/ia64/configs/generic_defconfig
+++ b/arch/ia64/configs/generic_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.27-rc1 3# Linux kernel version: 2.6.28-rc7
4# Mon Aug 4 15:38:01 2008 4# Mon Dec 8 08:12:07 2008
5# 5#
6CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 6CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
7 7
@@ -26,6 +26,7 @@ CONFIG_LOG_BUF_SHIFT=20
26CONFIG_CGROUPS=y 26CONFIG_CGROUPS=y
27# CONFIG_CGROUP_DEBUG is not set 27# CONFIG_CGROUP_DEBUG is not set
28# CONFIG_CGROUP_NS is not set 28# CONFIG_CGROUP_NS is not set
29# CONFIG_CGROUP_FREEZER is not set
29# CONFIG_CGROUP_DEVICE is not set 30# CONFIG_CGROUP_DEVICE is not set
30CONFIG_CPUSETS=y 31CONFIG_CPUSETS=y
31# CONFIG_GROUP_SCHED is not set 32# CONFIG_GROUP_SCHED is not set
@@ -46,7 +47,6 @@ CONFIG_CC_OPTIMIZE_FOR_SIZE=y
46CONFIG_SYSCTL=y 47CONFIG_SYSCTL=y
47# CONFIG_EMBEDDED is not set 48# CONFIG_EMBEDDED is not set
48CONFIG_SYSCTL_SYSCALL=y 49CONFIG_SYSCTL_SYSCALL=y
49CONFIG_SYSCTL_SYSCALL_CHECK=y
50CONFIG_KALLSYMS=y 50CONFIG_KALLSYMS=y
51CONFIG_KALLSYMS_ALL=y 51CONFIG_KALLSYMS_ALL=y
52# CONFIG_KALLSYMS_EXTRA_PASS is not set 52# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -63,7 +63,9 @@ CONFIG_SIGNALFD=y
63CONFIG_TIMERFD=y 63CONFIG_TIMERFD=y
64CONFIG_EVENTFD=y 64CONFIG_EVENTFD=y
65CONFIG_SHMEM=y 65CONFIG_SHMEM=y
66CONFIG_AIO=y
66CONFIG_VM_EVENT_COUNTERS=y 67CONFIG_VM_EVENT_COUNTERS=y
68CONFIG_PCI_QUIRKS=y
67CONFIG_SLUB_DEBUG=y 69CONFIG_SLUB_DEBUG=y
68# CONFIG_SLAB is not set 70# CONFIG_SLAB is not set
69CONFIG_SLUB=y 71CONFIG_SLUB=y
@@ -72,15 +74,11 @@ CONFIG_SLUB=y
72# CONFIG_MARKERS is not set 74# CONFIG_MARKERS is not set
73CONFIG_HAVE_OPROFILE=y 75CONFIG_HAVE_OPROFILE=y
74# CONFIG_KPROBES is not set 76# CONFIG_KPROBES is not set
75# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
76# CONFIG_HAVE_IOREMAP_PROT is not set
77CONFIG_HAVE_KPROBES=y 77CONFIG_HAVE_KPROBES=y
78CONFIG_HAVE_KRETPROBES=y 78CONFIG_HAVE_KRETPROBES=y
79# CONFIG_HAVE_ARCH_TRACEHOOK is not set 79CONFIG_HAVE_ARCH_TRACEHOOK=y
80CONFIG_HAVE_DMA_ATTRS=y 80CONFIG_HAVE_DMA_ATTRS=y
81CONFIG_USE_GENERIC_SMP_HELPERS=y 81CONFIG_USE_GENERIC_SMP_HELPERS=y
82# CONFIG_HAVE_CLK is not set
83CONFIG_PROC_PAGE_MONITOR=y
84# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 82# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
85CONFIG_SLABINFO=y 83CONFIG_SLABINFO=y
86CONFIG_RT_MUTEXES=y 84CONFIG_RT_MUTEXES=y
@@ -113,6 +111,7 @@ CONFIG_DEFAULT_AS=y
113# CONFIG_DEFAULT_NOOP is not set 111# CONFIG_DEFAULT_NOOP is not set
114CONFIG_DEFAULT_IOSCHED="anticipatory" 112CONFIG_DEFAULT_IOSCHED="anticipatory"
115CONFIG_CLASSIC_RCU=y 113CONFIG_CLASSIC_RCU=y
114# CONFIG_FREEZER is not set
116 115
117# 116#
118# Processor type and features 117# Processor type and features
@@ -125,8 +124,6 @@ CONFIG_MMU=y
125CONFIG_SWIOTLB=y 124CONFIG_SWIOTLB=y
126CONFIG_IOMMU_HELPER=y 125CONFIG_IOMMU_HELPER=y
127CONFIG_RWSEM_XCHGADD_ALGORITHM=y 126CONFIG_RWSEM_XCHGADD_ALGORITHM=y
128# CONFIG_ARCH_HAS_ILOG2_U32 is not set
129# CONFIG_ARCH_HAS_ILOG2_U64 is not set
130CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y 127CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y
131CONFIG_GENERIC_FIND_NEXT_BIT=y 128CONFIG_GENERIC_FIND_NEXT_BIT=y
132CONFIG_GENERIC_CALIBRATE_DELAY=y 129CONFIG_GENERIC_CALIBRATE_DELAY=y
@@ -139,13 +136,16 @@ CONFIG_GENERIC_IOMAP=y
139CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 136CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
140CONFIG_IA64_UNCACHED_ALLOCATOR=y 137CONFIG_IA64_UNCACHED_ALLOCATOR=y
141CONFIG_AUDIT_ARCH=y 138CONFIG_AUDIT_ARCH=y
139# CONFIG_PARAVIRT_GUEST is not set
142CONFIG_IA64_GENERIC=y 140CONFIG_IA64_GENERIC=y
143# CONFIG_IA64_DIG is not set 141# CONFIG_IA64_DIG is not set
142# CONFIG_IA64_DIG_VTD is not set
144# CONFIG_IA64_HP_ZX1 is not set 143# CONFIG_IA64_HP_ZX1 is not set
145# CONFIG_IA64_HP_ZX1_SWIOTLB is not set 144# CONFIG_IA64_HP_ZX1_SWIOTLB is not set
146# CONFIG_IA64_SGI_SN2 is not set 145# CONFIG_IA64_SGI_SN2 is not set
147# CONFIG_IA64_SGI_UV is not set 146# CONFIG_IA64_SGI_UV is not set
148# CONFIG_IA64_HP_SIM is not set 147# CONFIG_IA64_HP_SIM is not set
148# CONFIG_IA64_XEN_GUEST is not set
149# CONFIG_ITANIUM is not set 149# CONFIG_ITANIUM is not set
150CONFIG_MCKINLEY=y 150CONFIG_MCKINLEY=y
151# CONFIG_IA64_PAGE_SIZE_4KB is not set 151# CONFIG_IA64_PAGE_SIZE_4KB is not set
@@ -182,16 +182,17 @@ CONFIG_DISCONTIGMEM_MANUAL=y
182CONFIG_DISCONTIGMEM=y 182CONFIG_DISCONTIGMEM=y
183CONFIG_FLAT_NODE_MEM_MAP=y 183CONFIG_FLAT_NODE_MEM_MAP=y
184CONFIG_NEED_MULTIPLE_NODES=y 184CONFIG_NEED_MULTIPLE_NODES=y
185# CONFIG_SPARSEMEM_STATIC is not set
186CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y 185CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
187CONFIG_PAGEFLAGS_EXTENDED=y 186CONFIG_PAGEFLAGS_EXTENDED=y
188CONFIG_SPLIT_PTLOCK_CPUS=4 187CONFIG_SPLIT_PTLOCK_CPUS=4
189CONFIG_MIGRATION=y 188CONFIG_MIGRATION=y
190CONFIG_RESOURCES_64BIT=y 189CONFIG_RESOURCES_64BIT=y
190CONFIG_PHYS_ADDR_T_64BIT=y
191CONFIG_ZONE_DMA_FLAG=1 191CONFIG_ZONE_DMA_FLAG=1
192CONFIG_BOUNCE=y 192CONFIG_BOUNCE=y
193CONFIG_NR_QUICK=1 193CONFIG_NR_QUICK=1
194CONFIG_VIRT_TO_BUS=y 194CONFIG_VIRT_TO_BUS=y
195CONFIG_UNEVICTABLE_LRU=y
195CONFIG_MMU_NOTIFIER=y 196CONFIG_MMU_NOTIFIER=y
196CONFIG_ARCH_SELECT_MEMORY_MODEL=y 197CONFIG_ARCH_SELECT_MEMORY_MODEL=y
197CONFIG_ARCH_DISCONTIGMEM_ENABLE=y 198CONFIG_ARCH_DISCONTIGMEM_ENABLE=y
@@ -231,12 +232,12 @@ CONFIG_EFI_VARS=y
231CONFIG_EFI_PCDP=y 232CONFIG_EFI_PCDP=y
232CONFIG_DMIID=y 233CONFIG_DMIID=y
233CONFIG_BINFMT_ELF=y 234CONFIG_BINFMT_ELF=y
235# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
236# CONFIG_HAVE_AOUT is not set
234CONFIG_BINFMT_MISC=m 237CONFIG_BINFMT_MISC=m
235 238
236# CONFIG_DMAR is not set
237
238# 239#
239# Power management and ACPI 240# Power management and ACPI options
240# 241#
241CONFIG_PM=y 242CONFIG_PM=y
242# CONFIG_PM_DEBUG is not set 243# CONFIG_PM_DEBUG is not set
@@ -248,7 +249,6 @@ CONFIG_ACPI_PROC_EVENT=y
248CONFIG_ACPI_BUTTON=m 249CONFIG_ACPI_BUTTON=m
249CONFIG_ACPI_FAN=m 250CONFIG_ACPI_FAN=m
250CONFIG_ACPI_DOCK=y 251CONFIG_ACPI_DOCK=y
251# CONFIG_ACPI_BAY is not set
252CONFIG_ACPI_PROCESSOR=m 252CONFIG_ACPI_PROCESSOR=m
253CONFIG_ACPI_HOTPLUG_CPU=y 253CONFIG_ACPI_HOTPLUG_CPU=y
254CONFIG_ACPI_THERMAL=m 254CONFIG_ACPI_THERMAL=m
@@ -256,9 +256,7 @@ CONFIG_ACPI_NUMA=y
256# CONFIG_ACPI_CUSTOM_DSDT is not set 256# CONFIG_ACPI_CUSTOM_DSDT is not set
257CONFIG_ACPI_BLACKLIST_YEAR=0 257CONFIG_ACPI_BLACKLIST_YEAR=0
258# CONFIG_ACPI_DEBUG is not set 258# CONFIG_ACPI_DEBUG is not set
259CONFIG_ACPI_EC=y
260# CONFIG_ACPI_PCI_SLOT is not set 259# CONFIG_ACPI_PCI_SLOT is not set
261CONFIG_ACPI_POWER=y
262CONFIG_ACPI_SYSTEM=y 260CONFIG_ACPI_SYSTEM=y
263CONFIG_ACPI_CONTAINER=m 261CONFIG_ACPI_CONTAINER=m
264 262
@@ -275,7 +273,7 @@ CONFIG_PCI_DOMAINS=y
275CONFIG_PCI_SYSCALL=y 273CONFIG_PCI_SYSCALL=y
276# CONFIG_PCIEPORTBUS is not set 274# CONFIG_PCIEPORTBUS is not set
277CONFIG_ARCH_SUPPORTS_MSI=y 275CONFIG_ARCH_SUPPORTS_MSI=y
278# CONFIG_PCI_MSI is not set 276CONFIG_PCI_MSI=y
279CONFIG_PCI_LEGACY=y 277CONFIG_PCI_LEGACY=y
280# CONFIG_PCI_DEBUG is not set 278# CONFIG_PCI_DEBUG is not set
281CONFIG_HOTPLUG_PCI=m 279CONFIG_HOTPLUG_PCI=m
@@ -286,6 +284,7 @@ CONFIG_HOTPLUG_PCI_ACPI=m
286# CONFIG_HOTPLUG_PCI_SHPC is not set 284# CONFIG_HOTPLUG_PCI_SHPC is not set
287# CONFIG_HOTPLUG_PCI_SGI is not set 285# CONFIG_HOTPLUG_PCI_SGI is not set
288# CONFIG_PCCARD is not set 286# CONFIG_PCCARD is not set
287CONFIG_DMAR=y
289CONFIG_NET=y 288CONFIG_NET=y
290 289
291# 290#
@@ -333,6 +332,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
333# CONFIG_TIPC is not set 332# CONFIG_TIPC is not set
334# CONFIG_ATM is not set 333# CONFIG_ATM is not set
335# CONFIG_BRIDGE is not set 334# CONFIG_BRIDGE is not set
335# CONFIG_NET_DSA is not set
336# CONFIG_VLAN_8021Q is not set 336# CONFIG_VLAN_8021Q is not set
337# CONFIG_DECNET is not set 337# CONFIG_DECNET is not set
338# CONFIG_LLC2 is not set 338# CONFIG_LLC2 is not set
@@ -353,11 +353,10 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
353# CONFIG_IRDA is not set 353# CONFIG_IRDA is not set
354# CONFIG_BT is not set 354# CONFIG_BT is not set
355# CONFIG_AF_RXRPC is not set 355# CONFIG_AF_RXRPC is not set
356 356# CONFIG_PHONET is not set
357# 357CONFIG_WIRELESS=y
358# Wireless
359#
360# CONFIG_CFG80211 is not set 358# CONFIG_CFG80211 is not set
359CONFIG_WIRELESS_OLD_REGULATORY=y
361# CONFIG_WIRELESS_EXT is not set 360# CONFIG_WIRELESS_EXT is not set
362# CONFIG_MAC80211 is not set 361# CONFIG_MAC80211 is not set
363# CONFIG_IEEE80211 is not set 362# CONFIG_IEEE80211 is not set
@@ -385,7 +384,7 @@ CONFIG_PROC_EVENTS=y
385# CONFIG_MTD is not set 384# CONFIG_MTD is not set
386# CONFIG_PARPORT is not set 385# CONFIG_PARPORT is not set
387CONFIG_PNP=y 386CONFIG_PNP=y
388# CONFIG_PNP_DEBUG is not set 387# CONFIG_PNP_DEBUG_MESSAGES is not set
389 388
390# 389#
391# Protocols 390# Protocols
@@ -419,10 +418,9 @@ CONFIG_SGI_XP=m
419# CONFIG_HP_ILO is not set 418# CONFIG_HP_ILO is not set
420CONFIG_SGI_GRU=m 419CONFIG_SGI_GRU=m
421# CONFIG_SGI_GRU_DEBUG is not set 420# CONFIG_SGI_GRU_DEBUG is not set
421# CONFIG_C2PORT is not set
422CONFIG_HAVE_IDE=y 422CONFIG_HAVE_IDE=y
423CONFIG_IDE=y 423CONFIG_IDE=y
424CONFIG_IDE_MAX_HWIFS=4
425CONFIG_BLK_DEV_IDE=y
426 424
427# 425#
428# Please see Documentation/ide/ide.txt for help/info on IDE drives 426# Please see Documentation/ide/ide.txt for help/info on IDE drives
@@ -430,12 +428,12 @@ CONFIG_BLK_DEV_IDE=y
430CONFIG_IDE_TIMINGS=y 428CONFIG_IDE_TIMINGS=y
431CONFIG_IDE_ATAPI=y 429CONFIG_IDE_ATAPI=y
432# CONFIG_BLK_DEV_IDE_SATA is not set 430# CONFIG_BLK_DEV_IDE_SATA is not set
433CONFIG_BLK_DEV_IDEDISK=y 431CONFIG_IDE_GD=y
434# CONFIG_IDEDISK_MULTI_MODE is not set 432CONFIG_IDE_GD_ATA=y
433# CONFIG_IDE_GD_ATAPI is not set
435CONFIG_BLK_DEV_IDECD=y 434CONFIG_BLK_DEV_IDECD=y
436CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y 435CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
437# CONFIG_BLK_DEV_IDETAPE is not set 436# CONFIG_BLK_DEV_IDETAPE is not set
438CONFIG_BLK_DEV_IDEFLOPPY=y
439CONFIG_BLK_DEV_IDESCSI=m 437CONFIG_BLK_DEV_IDESCSI=m
440# CONFIG_BLK_DEV_IDEACPI is not set 438# CONFIG_BLK_DEV_IDEACPI is not set
441# CONFIG_IDE_TASK_IOCTL is not set 439# CONFIG_IDE_TASK_IOCTL is not set
@@ -705,6 +703,9 @@ CONFIG_TULIP=m
705# CONFIG_IBM_NEW_EMAC_RGMII is not set 703# CONFIG_IBM_NEW_EMAC_RGMII is not set
706# CONFIG_IBM_NEW_EMAC_TAH is not set 704# CONFIG_IBM_NEW_EMAC_TAH is not set
707# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 705# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
706# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
707# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
708# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
708CONFIG_NET_PCI=y 709CONFIG_NET_PCI=y
709# CONFIG_PCNET32 is not set 710# CONFIG_PCNET32 is not set
710# CONFIG_AMD8111_ETH is not set 711# CONFIG_AMD8111_ETH is not set
@@ -725,11 +726,11 @@ CONFIG_E100=m
725# CONFIG_TLAN is not set 726# CONFIG_TLAN is not set
726# CONFIG_VIA_RHINE is not set 727# CONFIG_VIA_RHINE is not set
727# CONFIG_SC92031 is not set 728# CONFIG_SC92031 is not set
729# CONFIG_ATL2 is not set
728CONFIG_NETDEV_1000=y 730CONFIG_NETDEV_1000=y
729# CONFIG_ACENIC is not set 731# CONFIG_ACENIC is not set
730# CONFIG_DL2K is not set 732# CONFIG_DL2K is not set
731CONFIG_E1000=y 733CONFIG_E1000=y
732# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
733# CONFIG_E1000E is not set 734# CONFIG_E1000E is not set
734# CONFIG_IP1000 is not set 735# CONFIG_IP1000 is not set
735CONFIG_IGB=y 736CONFIG_IGB=y
@@ -747,18 +748,22 @@ CONFIG_TIGON3=y
747# CONFIG_QLA3XXX is not set 748# CONFIG_QLA3XXX is not set
748# CONFIG_ATL1 is not set 749# CONFIG_ATL1 is not set
749# CONFIG_ATL1E is not set 750# CONFIG_ATL1E is not set
751# CONFIG_JME is not set
750CONFIG_NETDEV_10000=y 752CONFIG_NETDEV_10000=y
751# CONFIG_CHELSIO_T1 is not set 753# CONFIG_CHELSIO_T1 is not set
752# CONFIG_CHELSIO_T3 is not set 754# CONFIG_CHELSIO_T3 is not set
755# CONFIG_ENIC is not set
753# CONFIG_IXGBE is not set 756# CONFIG_IXGBE is not set
754# CONFIG_IXGB is not set 757# CONFIG_IXGB is not set
755# CONFIG_S2IO is not set 758# CONFIG_S2IO is not set
756# CONFIG_MYRI10GE is not set 759# CONFIG_MYRI10GE is not set
757# CONFIG_NETXEN_NIC is not set 760# CONFIG_NETXEN_NIC is not set
758# CONFIG_NIU is not set 761# CONFIG_NIU is not set
762# CONFIG_MLX4_EN is not set
759# CONFIG_MLX4_CORE is not set 763# CONFIG_MLX4_CORE is not set
760# CONFIG_TEHUTI is not set 764# CONFIG_TEHUTI is not set
761# CONFIG_BNX2X is not set 765# CONFIG_BNX2X is not set
766# CONFIG_QLGE is not set
762# CONFIG_SFC is not set 767# CONFIG_SFC is not set
763# CONFIG_TR is not set 768# CONFIG_TR is not set
764 769
@@ -826,9 +831,11 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
826CONFIG_MOUSE_PS2_SYNAPTICS=y 831CONFIG_MOUSE_PS2_SYNAPTICS=y
827CONFIG_MOUSE_PS2_LIFEBOOK=y 832CONFIG_MOUSE_PS2_LIFEBOOK=y
828CONFIG_MOUSE_PS2_TRACKPOINT=y 833CONFIG_MOUSE_PS2_TRACKPOINT=y
834# CONFIG_MOUSE_PS2_ELANTECH is not set
829# CONFIG_MOUSE_PS2_TOUCHKIT is not set 835# CONFIG_MOUSE_PS2_TOUCHKIT is not set
830# CONFIG_MOUSE_SERIAL is not set 836# CONFIG_MOUSE_SERIAL is not set
831# CONFIG_MOUSE_APPLETOUCH is not set 837# CONFIG_MOUSE_APPLETOUCH is not set
838# CONFIG_MOUSE_BCM5974 is not set
832# CONFIG_MOUSE_VSXXXAA is not set 839# CONFIG_MOUSE_VSXXXAA is not set
833# CONFIG_INPUT_JOYSTICK is not set 840# CONFIG_INPUT_JOYSTICK is not set
834# CONFIG_INPUT_TABLET is not set 841# CONFIG_INPUT_TABLET is not set
@@ -942,15 +949,16 @@ CONFIG_HWMON=y
942# CONFIG_SENSORS_VT8231 is not set 949# CONFIG_SENSORS_VT8231 is not set
943# CONFIG_SENSORS_W83627HF is not set 950# CONFIG_SENSORS_W83627HF is not set
944# CONFIG_SENSORS_W83627EHF is not set 951# CONFIG_SENSORS_W83627EHF is not set
952# CONFIG_SENSORS_LIS3LV02D is not set
945# CONFIG_HWMON_DEBUG_CHIP is not set 953# CONFIG_HWMON_DEBUG_CHIP is not set
946CONFIG_THERMAL=m 954CONFIG_THERMAL=m
947# CONFIG_THERMAL_HWMON is not set 955# CONFIG_THERMAL_HWMON is not set
948# CONFIG_WATCHDOG is not set 956# CONFIG_WATCHDOG is not set
957CONFIG_SSB_POSSIBLE=y
949 958
950# 959#
951# Sonics Silicon Backplane 960# Sonics Silicon Backplane
952# 961#
953CONFIG_SSB_POSSIBLE=y
954# CONFIG_SSB is not set 962# CONFIG_SSB is not set
955 963
956# 964#
@@ -959,6 +967,8 @@ CONFIG_SSB_POSSIBLE=y
959# CONFIG_MFD_CORE is not set 967# CONFIG_MFD_CORE is not set
960# CONFIG_MFD_SM501 is not set 968# CONFIG_MFD_SM501 is not set
961# CONFIG_HTC_PASIC3 is not set 969# CONFIG_HTC_PASIC3 is not set
970# CONFIG_MFD_TMIO is not set
971# CONFIG_REGULATOR is not set
962 972
963# 973#
964# Multimedia devices 974# Multimedia devices
@@ -1009,6 +1019,7 @@ CONFIG_VGA_CONSOLE=y
1009# CONFIG_VGACON_SOFT_SCROLLBACK is not set 1019# CONFIG_VGACON_SOFT_SCROLLBACK is not set
1010CONFIG_DUMMY_CONSOLE=y 1020CONFIG_DUMMY_CONSOLE=y
1011CONFIG_SOUND=m 1021CONFIG_SOUND=m
1022CONFIG_SOUND_OSS_CORE=y
1012CONFIG_SND=m 1023CONFIG_SND=m
1013CONFIG_SND_TIMER=m 1024CONFIG_SND_TIMER=m
1014CONFIG_SND_PCM=m 1025CONFIG_SND_PCM=m
@@ -1113,8 +1124,7 @@ CONFIG_HID=y
1113# USB Input Devices 1124# USB Input Devices
1114# 1125#
1115CONFIG_USB_HID=m 1126CONFIG_USB_HID=m
1116# CONFIG_USB_HIDINPUT_POWERBOOK is not set 1127# CONFIG_HID_PID is not set
1117# CONFIG_HID_FF is not set
1118# CONFIG_USB_HIDDEV is not set 1128# CONFIG_USB_HIDDEV is not set
1119 1129
1120# 1130#
@@ -1122,6 +1132,34 @@ CONFIG_USB_HID=m
1122# 1132#
1123# CONFIG_USB_KBD is not set 1133# CONFIG_USB_KBD is not set
1124# CONFIG_USB_MOUSE is not set 1134# CONFIG_USB_MOUSE is not set
1135
1136#
1137# Special HID drivers
1138#
1139CONFIG_HID_COMPAT=y
1140CONFIG_HID_A4TECH=m
1141CONFIG_HID_APPLE=m
1142CONFIG_HID_BELKIN=m
1143CONFIG_HID_BRIGHT=m
1144CONFIG_HID_CHERRY=m
1145CONFIG_HID_CHICONY=m
1146CONFIG_HID_CYPRESS=m
1147CONFIG_HID_DELL=m
1148CONFIG_HID_EZKEY=m
1149CONFIG_HID_GYRATION=m
1150CONFIG_HID_LOGITECH=m
1151# CONFIG_LOGITECH_FF is not set
1152# CONFIG_LOGIRUMBLEPAD2_FF is not set
1153CONFIG_HID_MICROSOFT=m
1154CONFIG_HID_MONTEREY=m
1155CONFIG_HID_PANTHERLORD=m
1156# CONFIG_PANTHERLORD_FF is not set
1157CONFIG_HID_PETALYNX=m
1158CONFIG_HID_SAMSUNG=m
1159CONFIG_HID_SONY=m
1160CONFIG_HID_SUNPLUS=m
1161# CONFIG_THRUSTMASTER_FF is not set
1162# CONFIG_ZEROPLUS_FF is not set
1125CONFIG_USB_SUPPORT=y 1163CONFIG_USB_SUPPORT=y
1126CONFIG_USB_ARCH_HAS_HCD=y 1164CONFIG_USB_ARCH_HAS_HCD=y
1127CONFIG_USB_ARCH_HAS_OHCI=y 1165CONFIG_USB_ARCH_HAS_OHCI=y
@@ -1138,6 +1176,9 @@ CONFIG_USB_DEVICE_CLASS=y
1138# CONFIG_USB_DYNAMIC_MINORS is not set 1176# CONFIG_USB_DYNAMIC_MINORS is not set
1139# CONFIG_USB_SUSPEND is not set 1177# CONFIG_USB_SUSPEND is not set
1140# CONFIG_USB_OTG is not set 1178# CONFIG_USB_OTG is not set
1179CONFIG_USB_MON=y
1180# CONFIG_USB_WUSB is not set
1181# CONFIG_USB_WUSB_CBAF is not set
1141 1182
1142# 1183#
1143# USB Host Controller Drivers 1184# USB Host Controller Drivers
@@ -1155,6 +1196,12 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
1155CONFIG_USB_UHCI_HCD=m 1196CONFIG_USB_UHCI_HCD=m
1156# CONFIG_USB_SL811_HCD is not set 1197# CONFIG_USB_SL811_HCD is not set
1157# CONFIG_USB_R8A66597_HCD is not set 1198# CONFIG_USB_R8A66597_HCD is not set
1199# CONFIG_USB_WHCI_HCD is not set
1200# CONFIG_USB_HWA_HCD is not set
1201
1202#
1203# Enable Host or Gadget support to see Inventra options
1204#
1158 1205
1159# 1206#
1160# USB Device Class drivers 1207# USB Device Class drivers
@@ -1162,13 +1209,14 @@ CONFIG_USB_UHCI_HCD=m
1162# CONFIG_USB_ACM is not set 1209# CONFIG_USB_ACM is not set
1163# CONFIG_USB_PRINTER is not set 1210# CONFIG_USB_PRINTER is not set
1164# CONFIG_USB_WDM is not set 1211# CONFIG_USB_WDM is not set
1212# CONFIG_USB_TMC is not set
1165 1213
1166# 1214#
1167# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 1215# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed;
1168# 1216#
1169 1217
1170# 1218#
1171# may also be needed; see USB_STORAGE Help for more information 1219# see USB_STORAGE Help for more information
1172# 1220#
1173CONFIG_USB_STORAGE=m 1221CONFIG_USB_STORAGE=m
1174# CONFIG_USB_STORAGE_DEBUG is not set 1222# CONFIG_USB_STORAGE_DEBUG is not set
@@ -1191,7 +1239,6 @@ CONFIG_USB_STORAGE=m
1191# 1239#
1192# CONFIG_USB_MDC800 is not set 1240# CONFIG_USB_MDC800 is not set
1193# CONFIG_USB_MICROTEK is not set 1241# CONFIG_USB_MICROTEK is not set
1194CONFIG_USB_MON=y
1195 1242
1196# 1243#
1197# USB port drivers 1244# USB port drivers
@@ -1204,7 +1251,7 @@ CONFIG_USB_MON=y
1204# CONFIG_USB_EMI62 is not set 1251# CONFIG_USB_EMI62 is not set
1205# CONFIG_USB_EMI26 is not set 1252# CONFIG_USB_EMI26 is not set
1206# CONFIG_USB_ADUTUX is not set 1253# CONFIG_USB_ADUTUX is not set
1207# CONFIG_USB_AUERSWALD is not set 1254# CONFIG_USB_SEVSEG is not set
1208# CONFIG_USB_RIO500 is not set 1255# CONFIG_USB_RIO500 is not set
1209# CONFIG_USB_LEGOTOWER is not set 1256# CONFIG_USB_LEGOTOWER is not set
1210# CONFIG_USB_LCD is not set 1257# CONFIG_USB_LCD is not set
@@ -1222,7 +1269,9 @@ CONFIG_USB_MON=y
1222# CONFIG_USB_IOWARRIOR is not set 1269# CONFIG_USB_IOWARRIOR is not set
1223# CONFIG_USB_TEST is not set 1270# CONFIG_USB_TEST is not set
1224# CONFIG_USB_ISIGHTFW is not set 1271# CONFIG_USB_ISIGHTFW is not set
1272# CONFIG_USB_VST is not set
1225# CONFIG_USB_GADGET is not set 1273# CONFIG_USB_GADGET is not set
1274# CONFIG_UWB is not set
1226# CONFIG_MMC is not set 1275# CONFIG_MMC is not set
1227# CONFIG_MEMSTICK is not set 1276# CONFIG_MEMSTICK is not set
1228# CONFIG_NEW_LEDS is not set 1277# CONFIG_NEW_LEDS is not set
@@ -1246,6 +1295,15 @@ CONFIG_INFINIBAND_IPOIB_DEBUG=y
1246# CONFIG_RTC_CLASS is not set 1295# CONFIG_RTC_CLASS is not set
1247# CONFIG_DMADEVICES is not set 1296# CONFIG_DMADEVICES is not set
1248# CONFIG_UIO is not set 1297# CONFIG_UIO is not set
1298# CONFIG_STAGING is not set
1299CONFIG_STAGING_EXCLUDE_BUILD=y
1300
1301#
1302# HP Simulator drivers
1303#
1304# CONFIG_HP_SIMETH is not set
1305# CONFIG_HP_SIMSERIAL is not set
1306# CONFIG_HP_SIMSCSI is not set
1249CONFIG_MSPEC=m 1307CONFIG_MSPEC=m
1250 1308
1251# 1309#
@@ -1260,7 +1318,7 @@ CONFIG_EXT3_FS=y
1260CONFIG_EXT3_FS_XATTR=y 1318CONFIG_EXT3_FS_XATTR=y
1261CONFIG_EXT3_FS_POSIX_ACL=y 1319CONFIG_EXT3_FS_POSIX_ACL=y
1262CONFIG_EXT3_FS_SECURITY=y 1320CONFIG_EXT3_FS_SECURITY=y
1263# CONFIG_EXT4DEV_FS is not set 1321# CONFIG_EXT4_FS is not set
1264CONFIG_JBD=y 1322CONFIG_JBD=y
1265CONFIG_FS_MBCACHE=y 1323CONFIG_FS_MBCACHE=y
1266CONFIG_REISERFS_FS=y 1324CONFIG_REISERFS_FS=y
@@ -1271,6 +1329,7 @@ CONFIG_REISERFS_FS_POSIX_ACL=y
1271CONFIG_REISERFS_FS_SECURITY=y 1329CONFIG_REISERFS_FS_SECURITY=y
1272# CONFIG_JFS_FS is not set 1330# CONFIG_JFS_FS is not set
1273CONFIG_FS_POSIX_ACL=y 1331CONFIG_FS_POSIX_ACL=y
1332CONFIG_FILE_LOCKING=y
1274CONFIG_XFS_FS=y 1333CONFIG_XFS_FS=y
1275# CONFIG_XFS_QUOTA is not set 1334# CONFIG_XFS_QUOTA is not set
1276# CONFIG_XFS_POSIX_ACL is not set 1335# CONFIG_XFS_POSIX_ACL is not set
@@ -1282,8 +1341,8 @@ CONFIG_DNOTIFY=y
1282CONFIG_INOTIFY=y 1341CONFIG_INOTIFY=y
1283CONFIG_INOTIFY_USER=y 1342CONFIG_INOTIFY_USER=y
1284# CONFIG_QUOTA is not set 1343# CONFIG_QUOTA is not set
1285CONFIG_AUTOFS_FS=y 1344CONFIG_AUTOFS_FS=m
1286CONFIG_AUTOFS4_FS=y 1345CONFIG_AUTOFS4_FS=m
1287# CONFIG_FUSE_FS is not set 1346# CONFIG_FUSE_FS is not set
1288 1347
1289# 1348#
@@ -1314,6 +1373,7 @@ CONFIG_PROC_FS=y
1314CONFIG_PROC_KCORE=y 1373CONFIG_PROC_KCORE=y
1315CONFIG_PROC_VMCORE=y 1374CONFIG_PROC_VMCORE=y
1316CONFIG_PROC_SYSCTL=y 1375CONFIG_PROC_SYSCTL=y
1376CONFIG_PROC_PAGE_MONITOR=y
1317CONFIG_SYSFS=y 1377CONFIG_SYSFS=y
1318CONFIG_TMPFS=y 1378CONFIG_TMPFS=y
1319# CONFIG_TMPFS_POSIX_ACL is not set 1379# CONFIG_TMPFS_POSIX_ACL is not set
@@ -1356,6 +1416,7 @@ CONFIG_NFS_COMMON=y
1356CONFIG_SUNRPC=m 1416CONFIG_SUNRPC=m
1357CONFIG_SUNRPC_GSS=m 1417CONFIG_SUNRPC_GSS=m
1358CONFIG_SUNRPC_XPRT_RDMA=m 1418CONFIG_SUNRPC_XPRT_RDMA=m
1419# CONFIG_SUNRPC_REGISTER_V4 is not set
1359CONFIG_RPCSEC_GSS_KRB5=m 1420CONFIG_RPCSEC_GSS_KRB5=m
1360# CONFIG_RPCSEC_GSS_SPKM3 is not set 1421# CONFIG_RPCSEC_GSS_SPKM3 is not set
1361CONFIG_SMB_FS=m 1422CONFIG_SMB_FS=m
@@ -1433,38 +1494,6 @@ CONFIG_NLS_KOI8_R=m
1433CONFIG_NLS_KOI8_U=m 1494CONFIG_NLS_KOI8_U=m
1434CONFIG_NLS_UTF8=m 1495CONFIG_NLS_UTF8=m
1435# CONFIG_DLM is not set 1496# CONFIG_DLM is not set
1436CONFIG_HAVE_KVM=y
1437CONFIG_VIRTUALIZATION=y
1438# CONFIG_KVM is not set
1439
1440#
1441# Library routines
1442#
1443CONFIG_BITREVERSE=y
1444# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1445# CONFIG_CRC_CCITT is not set
1446# CONFIG_CRC16 is not set
1447CONFIG_CRC_T10DIF=y
1448CONFIG_CRC_ITU_T=m
1449CONFIG_CRC32=y
1450# CONFIG_CRC7 is not set
1451# CONFIG_LIBCRC32C is not set
1452CONFIG_GENERIC_ALLOCATOR=y
1453CONFIG_PLIST=y
1454CONFIG_HAS_IOMEM=y
1455CONFIG_HAS_IOPORT=y
1456CONFIG_HAS_DMA=y
1457CONFIG_GENERIC_HARDIRQS=y
1458CONFIG_GENERIC_IRQ_PROBE=y
1459CONFIG_GENERIC_PENDING_IRQ=y
1460CONFIG_IRQ_PER_CPU=y
1461
1462#
1463# HP Simulator drivers
1464#
1465# CONFIG_HP_SIMETH is not set
1466# CONFIG_HP_SIMSERIAL is not set
1467# CONFIG_HP_SIMSCSI is not set
1468 1497
1469# 1498#
1470# Kernel hacking 1499# Kernel hacking
@@ -1503,8 +1532,19 @@ CONFIG_DEBUG_MEMORY_INIT=y
1503# CONFIG_DEBUG_SG is not set 1532# CONFIG_DEBUG_SG is not set
1504# CONFIG_BOOT_PRINTK_DELAY is not set 1533# CONFIG_BOOT_PRINTK_DELAY is not set
1505# CONFIG_RCU_TORTURE_TEST is not set 1534# CONFIG_RCU_TORTURE_TEST is not set
1535# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1506# CONFIG_BACKTRACE_SELF_TEST is not set 1536# CONFIG_BACKTRACE_SELF_TEST is not set
1537# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1507# CONFIG_FAULT_INJECTION is not set 1538# CONFIG_FAULT_INJECTION is not set
1539CONFIG_SYSCTL_SYSCALL_CHECK=y
1540
1541#
1542# Tracers
1543#
1544# CONFIG_SCHED_TRACER is not set
1545# CONFIG_CONTEXT_SWITCH_TRACER is not set
1546# CONFIG_BOOT_TRACER is not set
1547# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1508# CONFIG_SAMPLES is not set 1548# CONFIG_SAMPLES is not set
1509CONFIG_IA64_GRANULE_16MB=y 1549CONFIG_IA64_GRANULE_16MB=y
1510# CONFIG_IA64_GRANULE_64MB is not set 1550# CONFIG_IA64_GRANULE_64MB is not set
@@ -1519,14 +1559,19 @@ CONFIG_SYSVIPC_COMPAT=y
1519# 1559#
1520# CONFIG_KEYS is not set 1560# CONFIG_KEYS is not set
1521# CONFIG_SECURITY is not set 1561# CONFIG_SECURITY is not set
1562# CONFIG_SECURITYFS is not set
1522# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1563# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1523CONFIG_CRYPTO=y 1564CONFIG_CRYPTO=y
1524 1565
1525# 1566#
1526# Crypto core or helper 1567# Crypto core or helper
1527# 1568#
1569# CONFIG_CRYPTO_FIPS is not set
1528CONFIG_CRYPTO_ALGAPI=y 1570CONFIG_CRYPTO_ALGAPI=y
1571CONFIG_CRYPTO_AEAD=m
1529CONFIG_CRYPTO_BLKCIPHER=m 1572CONFIG_CRYPTO_BLKCIPHER=m
1573CONFIG_CRYPTO_HASH=m
1574CONFIG_CRYPTO_RNG=m
1530CONFIG_CRYPTO_MANAGER=m 1575CONFIG_CRYPTO_MANAGER=m
1531# CONFIG_CRYPTO_GF128MUL is not set 1576# CONFIG_CRYPTO_GF128MUL is not set
1532# CONFIG_CRYPTO_NULL is not set 1577# CONFIG_CRYPTO_NULL is not set
@@ -1599,5 +1644,36 @@ CONFIG_CRYPTO_DES=m
1599# 1644#
1600# CONFIG_CRYPTO_DEFLATE is not set 1645# CONFIG_CRYPTO_DEFLATE is not set
1601# CONFIG_CRYPTO_LZO is not set 1646# CONFIG_CRYPTO_LZO is not set
1647
1648#
1649# Random Number Generation
1650#
1651# CONFIG_CRYPTO_ANSI_CPRNG is not set
1602CONFIG_CRYPTO_HW=y 1652CONFIG_CRYPTO_HW=y
1603# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1653# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1654CONFIG_HAVE_KVM=y
1655CONFIG_VIRTUALIZATION=y
1656# CONFIG_KVM is not set
1657# CONFIG_VIRTIO_PCI is not set
1658# CONFIG_VIRTIO_BALLOON is not set
1659
1660#
1661# Library routines
1662#
1663CONFIG_BITREVERSE=y
1664# CONFIG_CRC_CCITT is not set
1665# CONFIG_CRC16 is not set
1666CONFIG_CRC_T10DIF=y
1667CONFIG_CRC_ITU_T=m
1668CONFIG_CRC32=y
1669# CONFIG_CRC7 is not set
1670# CONFIG_LIBCRC32C is not set
1671CONFIG_GENERIC_ALLOCATOR=y
1672CONFIG_PLIST=y
1673CONFIG_HAS_IOMEM=y
1674CONFIG_HAS_IOPORT=y
1675CONFIG_HAS_DMA=y
1676CONFIG_GENERIC_HARDIRQS=y
1677CONFIG_GENERIC_IRQ_PROBE=y
1678CONFIG_GENERIC_PENDING_IRQ=y
1679CONFIG_IRQ_PER_CPU=y
diff --git a/arch/ia64/include/asm/paravirt_privop.h b/arch/ia64/include/asm/paravirt_privop.h
index 0b597424fcfc..33c8e55f5775 100644
--- a/arch/ia64/include/asm/paravirt_privop.h
+++ b/arch/ia64/include/asm/paravirt_privop.h
@@ -83,7 +83,6 @@ extern unsigned long ia64_native_getreg_func(int regnum);
83#define paravirt_getreg(reg) \ 83#define paravirt_getreg(reg) \
84 ({ \ 84 ({ \
85 unsigned long res; \ 85 unsigned long res; \
86 BUILD_BUG_ON(!__builtin_constant_p(reg)); \
87 if ((reg) == _IA64_REG_IP) \ 86 if ((reg) == _IA64_REG_IP) \
88 res = ia64_native_getreg(_IA64_REG_IP); \ 87 res = ia64_native_getreg(_IA64_REG_IP); \
89 else \ 88 else \
diff --git a/arch/ia64/kernel/topology.c b/arch/ia64/kernel/topology.c
index 26228e2d01ae..c75b914f2d6b 100644
--- a/arch/ia64/kernel/topology.c
+++ b/arch/ia64/kernel/topology.c
@@ -53,10 +53,12 @@ int __ref arch_register_cpu(int num)
53} 53}
54EXPORT_SYMBOL(arch_register_cpu); 54EXPORT_SYMBOL(arch_register_cpu);
55 55
56void arch_unregister_cpu(int num) 56void __ref arch_unregister_cpu(int num)
57{ 57{
58 unregister_cpu(&sysfs_cpus[num].cpu); 58 unregister_cpu(&sysfs_cpus[num].cpu);
59#ifdef CONFIG_ACPI
59 unmap_cpu_from_node(num, cpu_to_node(num)); 60 unmap_cpu_from_node(num, cpu_to_node(num));
61#endif
60} 62}
61EXPORT_SYMBOL(arch_unregister_cpu); 63EXPORT_SYMBOL(arch_unregister_cpu);
62#else 64#else
diff --git a/arch/ia64/kvm/Makefile b/arch/ia64/kvm/Makefile
index 3ab4d6d50704..92cef66ca268 100644
--- a/arch/ia64/kvm/Makefile
+++ b/arch/ia64/kvm/Makefile
@@ -58,7 +58,7 @@ endif
58kvm-objs := $(common-objs) kvm-ia64.o kvm_fw.o 58kvm-objs := $(common-objs) kvm-ia64.o kvm_fw.o
59obj-$(CONFIG_KVM) += kvm.o 59obj-$(CONFIG_KVM) += kvm.o
60 60
61EXTRA_CFLAGS_vcpu.o += -mfixed-range=f2-f5,f12-f127 61CFLAGS_vcpu.o += -mfixed-range=f2-f5,f12-f127
62kvm-intel-objs = vmm.o vmm_ivt.o trampoline.o vcpu.o optvfault.o mmio.o \ 62kvm-intel-objs = vmm.o vmm_ivt.o trampoline.o vcpu.o optvfault.o mmio.o \
63 vtlb.o process.o 63 vtlb.o process.o
64#Add link memcpy and memset to avoid possible structure assignment error 64#Add link memcpy and memset to avoid possible structure assignment error
diff --git a/arch/ia64/kvm/optvfault.S b/arch/ia64/kvm/optvfault.S
index 634abad979b5..32254ce9a1bd 100644
--- a/arch/ia64/kvm/optvfault.S
+++ b/arch/ia64/kvm/optvfault.S
@@ -107,10 +107,10 @@ END(kvm_vps_resume_normal)
107GLOBAL_ENTRY(kvm_vps_resume_handler) 107GLOBAL_ENTRY(kvm_vps_resume_handler)
108 movl r30 = PAL_VPS_RESUME_HANDLER 108 movl r30 = PAL_VPS_RESUME_HANDLER
109 ;; 109 ;;
110 ld8 r27=[r25] 110 ld8 r26=[r25]
111 shr r17=r17,IA64_ISR_IR_BIT 111 shr r17=r17,IA64_ISR_IR_BIT
112 ;; 112 ;;
113 dep r27=r17,r27,63,1 // bit 63 of r27 indicate whether enable CFLE 113 dep r26=r17,r26,63,1 // bit 63 of r26 indicate whether enable CFLE
114 mov pr=r23,-2 114 mov pr=r23,-2
115 br.sptk.many kvm_vps_entry 115 br.sptk.many kvm_vps_entry
116END(kvm_vps_resume_handler) 116END(kvm_vps_resume_handler)
@@ -894,12 +894,15 @@ ENTRY(kvm_resume_to_guest)
894 ;; 894 ;;
895 ld8 r19=[r19] 895 ld8 r19=[r19]
896 mov b0=r29 896 mov b0=r29
897 cmp.ne p6,p7 = r0,r0 897 mov r27=cr.isr
898 ;; 898 ;;
899 tbit.z p6,p7 = r19,IA64_PSR_IC_BIT // p1=vpsr.ic 899 tbit.z p6,p7 = r19,IA64_PSR_IC_BIT // p7=vpsr.ic
900 shr r27=r27,IA64_ISR_IR_BIT
900 ;; 901 ;;
901 (p6) ld8 r26=[r25] 902 (p6) ld8 r26=[r25]
902 (p7) mov b0=r28 903 (p7) mov b0=r28
904 ;;
905 (p6) dep r26=r27,r26,63,1
903 mov pr=r31,-2 906 mov pr=r31,-2
904 br.sptk.many b0 // call pal service 907 br.sptk.many b0 // call pal service
905 ;; 908 ;;
diff --git a/arch/ia64/sn/kernel/irq.c b/arch/ia64/sn/kernel/irq.c
index 96c31b4180c3..0c66dbdd1d72 100644
--- a/arch/ia64/sn/kernel/irq.c
+++ b/arch/ia64/sn/kernel/irq.c
@@ -5,7 +5,7 @@
5 * License. See the file "COPYING" in the main directory of this archive 5 * License. See the file "COPYING" in the main directory of this archive
6 * for more details. 6 * for more details.
7 * 7 *
8 * Copyright (c) 2000-2007 Silicon Graphics, Inc. All Rights Reserved. 8 * Copyright (c) 2000-2008 Silicon Graphics, Inc. All Rights Reserved.
9 */ 9 */
10 10
11#include <linux/irq.h> 11#include <linux/irq.h>
@@ -375,6 +375,7 @@ void sn_irq_fixup(struct pci_dev *pci_dev, struct sn_irq_info *sn_irq_info)
375 int cpu = nasid_slice_to_cpuid(nasid, slice); 375 int cpu = nasid_slice_to_cpuid(nasid, slice);
376#ifdef CONFIG_SMP 376#ifdef CONFIG_SMP
377 int cpuphys; 377 int cpuphys;
378 irq_desc_t *desc;
378#endif 379#endif
379 380
380 pci_dev_get(pci_dev); 381 pci_dev_get(pci_dev);
@@ -391,6 +392,12 @@ void sn_irq_fixup(struct pci_dev *pci_dev, struct sn_irq_info *sn_irq_info)
391#ifdef CONFIG_SMP 392#ifdef CONFIG_SMP
392 cpuphys = cpu_physical_id(cpu); 393 cpuphys = cpu_physical_id(cpu);
393 set_irq_affinity_info(sn_irq_info->irq_irq, cpuphys, 0); 394 set_irq_affinity_info(sn_irq_info->irq_irq, cpuphys, 0);
395 desc = irq_to_desc(sn_irq_info->irq_irq);
396 /*
397 * Affinity was set by the PROM, prevent it from
398 * being reset by the request_irq() path.
399 */
400 desc->status |= IRQ_AFFINITY_SET;
394#endif 401#endif
395} 402}
396 403
diff --git a/arch/ia64/sn/kernel/setup.c b/arch/ia64/sn/kernel/setup.c
index bb1d24929640..02c5b8a9fb60 100644
--- a/arch/ia64/sn/kernel/setup.c
+++ b/arch/ia64/sn/kernel/setup.c
@@ -200,7 +200,7 @@ static int __cpuinitdata shub_1_1_found;
200 * Set flag for enabling shub specific wars 200 * Set flag for enabling shub specific wars
201 */ 201 */
202 202
203static inline int __init is_shub_1_1(int nasid) 203static inline int __cpuinit is_shub_1_1(int nasid)
204{ 204{
205 unsigned long id; 205 unsigned long id;
206 int rev; 206 int rev;
@@ -212,7 +212,7 @@ static inline int __init is_shub_1_1(int nasid)
212 return rev <= 2; 212 return rev <= 2;
213} 213}
214 214
215static void __init sn_check_for_wars(void) 215static void __cpuinit sn_check_for_wars(void)
216{ 216{
217 int cnode; 217 int cnode;
218 218
@@ -512,7 +512,6 @@ static void __init sn_init_pdas(char **cmdline_p)
512 for_each_online_node(cnode) { 512 for_each_online_node(cnode) {
513 nodepdaindr[cnode] = 513 nodepdaindr[cnode] =
514 alloc_bootmem_node(NODE_DATA(cnode), sizeof(nodepda_t)); 514 alloc_bootmem_node(NODE_DATA(cnode), sizeof(nodepda_t));
515 memset(nodepdaindr[cnode], 0, sizeof(nodepda_t));
516 memset(nodepdaindr[cnode]->phys_cpuid, -1, 515 memset(nodepdaindr[cnode]->phys_cpuid, -1,
517 sizeof(nodepdaindr[cnode]->phys_cpuid)); 516 sizeof(nodepdaindr[cnode]->phys_cpuid));
518 spin_lock_init(&nodepdaindr[cnode]->ptc_lock); 517 spin_lock_init(&nodepdaindr[cnode]->ptc_lock);
@@ -521,11 +520,9 @@ static void __init sn_init_pdas(char **cmdline_p)
521 /* 520 /*
522 * Allocate & initialize nodepda for TIOs. For now, put them on node 0. 521 * Allocate & initialize nodepda for TIOs. For now, put them on node 0.
523 */ 522 */
524 for (cnode = num_online_nodes(); cnode < num_cnodes; cnode++) { 523 for (cnode = num_online_nodes(); cnode < num_cnodes; cnode++)
525 nodepdaindr[cnode] = 524 nodepdaindr[cnode] =
526 alloc_bootmem_node(NODE_DATA(0), sizeof(nodepda_t)); 525 alloc_bootmem_node(NODE_DATA(0), sizeof(nodepda_t));
527 memset(nodepdaindr[cnode], 0, sizeof(nodepda_t));
528 }
529 526
530 /* 527 /*
531 * Now copy the array of nodepda pointers to each nodepda. 528 * Now copy the array of nodepda pointers to each nodepda.
diff --git a/arch/m68k/configs/amiga_defconfig b/arch/m68k/configs/amiga_defconfig
index 8bd61a640fc9..23597beb66c1 100644
--- a/arch/m68k/configs/amiga_defconfig
+++ b/arch/m68k/configs/amiga_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:00 2008 4# Tue Dec 2 20:27:42 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123CONFIG_AMIGA=y 113CONFIG_AMIGA=y
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -148,19 +138,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
148CONFIG_DISCONTIGMEM=y 138CONFIG_DISCONTIGMEM=y
149CONFIG_FLAT_NODE_MEM_MAP=y 139CONFIG_FLAT_NODE_MEM_MAP=y
150CONFIG_NEED_MULTIPLE_NODES=y 140CONFIG_NEED_MULTIPLE_NODES=y
151# CONFIG_SPARSEMEM_STATIC is not set
152# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
153CONFIG_PAGEFLAGS_EXTENDED=y 141CONFIG_PAGEFLAGS_EXTENDED=y
154CONFIG_SPLIT_PTLOCK_CPUS=4 142CONFIG_SPLIT_PTLOCK_CPUS=4
155# CONFIG_RESOURCES_64BIT is not set 143# CONFIG_RESOURCES_64BIT is not set
144# CONFIG_PHYS_ADDR_T_64BIT is not set
156CONFIG_ZONE_DMA_FLAG=1 145CONFIG_ZONE_DMA_FLAG=1
157CONFIG_BOUNCE=y 146CONFIG_BOUNCE=y
158CONFIG_VIRT_TO_BUS=y 147CONFIG_VIRT_TO_BUS=y
148CONFIG_UNEVICTABLE_LRU=y
159 149
160# 150#
161# General setup 151# General setup
162# 152#
163CONFIG_BINFMT_ELF=y 153CONFIG_BINFMT_ELF=y
154# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
155CONFIG_HAVE_AOUT=y
164CONFIG_BINFMT_AOUT=m 156CONFIG_BINFMT_AOUT=m
165CONFIG_BINFMT_MISC=m 157CONFIG_BINFMT_MISC=m
166CONFIG_ZORRO=y 158CONFIG_ZORRO=y
@@ -212,7 +204,6 @@ CONFIG_INET_TCP_DIAG=m
212CONFIG_TCP_CONG_CUBIC=y 204CONFIG_TCP_CONG_CUBIC=y
213CONFIG_DEFAULT_TCP_CONG="cubic" 205CONFIG_DEFAULT_TCP_CONG="cubic"
214# CONFIG_TCP_MD5SIG is not set 206# CONFIG_TCP_MD5SIG is not set
215# CONFIG_IP_VS is not set
216CONFIG_IPV6=m 207CONFIG_IPV6=m
217CONFIG_IPV6_PRIVACY=y 208CONFIG_IPV6_PRIVACY=y
218CONFIG_IPV6_ROUTER_PREF=y 209CONFIG_IPV6_ROUTER_PREF=y
@@ -262,13 +253,14 @@ CONFIG_NF_CONNTRACK_SANE=m
262CONFIG_NF_CONNTRACK_SIP=m 253CONFIG_NF_CONNTRACK_SIP=m
263CONFIG_NF_CONNTRACK_TFTP=m 254CONFIG_NF_CONNTRACK_TFTP=m
264# CONFIG_NF_CT_NETLINK is not set 255# CONFIG_NF_CT_NETLINK is not set
256# CONFIG_NETFILTER_TPROXY is not set
265CONFIG_NETFILTER_XTABLES=m 257CONFIG_NETFILTER_XTABLES=m
266CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 258CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
267CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 259CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
268CONFIG_NETFILTER_XT_TARGET_DSCP=m 260CONFIG_NETFILTER_XT_TARGET_DSCP=m
269CONFIG_NETFILTER_XT_TARGET_MARK=m 261CONFIG_NETFILTER_XT_TARGET_MARK=m
270CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
271CONFIG_NETFILTER_XT_TARGET_NFLOG=m 262CONFIG_NETFILTER_XT_TARGET_NFLOG=m
263CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
272CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 264CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
273CONFIG_NETFILTER_XT_TARGET_RATEEST=m 265CONFIG_NETFILTER_XT_TARGET_RATEEST=m
274CONFIG_NETFILTER_XT_TARGET_TRACE=m 266CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -282,19 +274,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
282CONFIG_NETFILTER_XT_MATCH_DCCP=m 274CONFIG_NETFILTER_XT_MATCH_DCCP=m
283CONFIG_NETFILTER_XT_MATCH_DSCP=m 275CONFIG_NETFILTER_XT_MATCH_DSCP=m
284CONFIG_NETFILTER_XT_MATCH_ESP=m 276CONFIG_NETFILTER_XT_MATCH_ESP=m
277CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
285CONFIG_NETFILTER_XT_MATCH_HELPER=m 278CONFIG_NETFILTER_XT_MATCH_HELPER=m
286CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 279CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
287CONFIG_NETFILTER_XT_MATCH_LENGTH=m 280CONFIG_NETFILTER_XT_MATCH_LENGTH=m
288CONFIG_NETFILTER_XT_MATCH_LIMIT=m 281CONFIG_NETFILTER_XT_MATCH_LIMIT=m
289CONFIG_NETFILTER_XT_MATCH_MAC=m 282CONFIG_NETFILTER_XT_MATCH_MAC=m
290CONFIG_NETFILTER_XT_MATCH_MARK=m 283CONFIG_NETFILTER_XT_MATCH_MARK=m
284CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
291CONFIG_NETFILTER_XT_MATCH_OWNER=m 285CONFIG_NETFILTER_XT_MATCH_OWNER=m
292CONFIG_NETFILTER_XT_MATCH_POLICY=m 286CONFIG_NETFILTER_XT_MATCH_POLICY=m
293CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
294CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 287CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
295CONFIG_NETFILTER_XT_MATCH_QUOTA=m 288CONFIG_NETFILTER_XT_MATCH_QUOTA=m
296CONFIG_NETFILTER_XT_MATCH_RATEEST=m 289CONFIG_NETFILTER_XT_MATCH_RATEEST=m
297CONFIG_NETFILTER_XT_MATCH_REALM=m 290CONFIG_NETFILTER_XT_MATCH_REALM=m
291CONFIG_NETFILTER_XT_MATCH_RECENT=m
292# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
298CONFIG_NETFILTER_XT_MATCH_SCTP=m 293CONFIG_NETFILTER_XT_MATCH_SCTP=m
299CONFIG_NETFILTER_XT_MATCH_STATE=m 294CONFIG_NETFILTER_XT_MATCH_STATE=m
300CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 295CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -302,20 +297,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
302CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 297CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
303CONFIG_NETFILTER_XT_MATCH_TIME=m 298CONFIG_NETFILTER_XT_MATCH_TIME=m
304CONFIG_NETFILTER_XT_MATCH_U32=m 299CONFIG_NETFILTER_XT_MATCH_U32=m
305CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 300# CONFIG_IP_VS is not set
306 301
307# 302#
308# IP: Netfilter Configuration 303# IP: Netfilter Configuration
309# 304#
305CONFIG_NF_DEFRAG_IPV4=m
310CONFIG_NF_CONNTRACK_IPV4=m 306CONFIG_NF_CONNTRACK_IPV4=m
311CONFIG_NF_CONNTRACK_PROC_COMPAT=y 307CONFIG_NF_CONNTRACK_PROC_COMPAT=y
312CONFIG_IP_NF_QUEUE=m 308CONFIG_IP_NF_QUEUE=m
313CONFIG_IP_NF_IPTABLES=m 309CONFIG_IP_NF_IPTABLES=m
314CONFIG_IP_NF_MATCH_RECENT=m 310CONFIG_IP_NF_MATCH_ADDRTYPE=m
315CONFIG_IP_NF_MATCH_ECN=m
316CONFIG_IP_NF_MATCH_AH=m 311CONFIG_IP_NF_MATCH_AH=m
312CONFIG_IP_NF_MATCH_ECN=m
317CONFIG_IP_NF_MATCH_TTL=m 313CONFIG_IP_NF_MATCH_TTL=m
318CONFIG_IP_NF_MATCH_ADDRTYPE=m
319CONFIG_IP_NF_FILTER=m 314CONFIG_IP_NF_FILTER=m
320CONFIG_IP_NF_TARGET_REJECT=m 315CONFIG_IP_NF_TARGET_REJECT=m
321CONFIG_IP_NF_TARGET_LOG=m 316CONFIG_IP_NF_TARGET_LOG=m
@@ -323,8 +318,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
323CONFIG_NF_NAT=m 318CONFIG_NF_NAT=m
324CONFIG_NF_NAT_NEEDED=y 319CONFIG_NF_NAT_NEEDED=y
325CONFIG_IP_NF_TARGET_MASQUERADE=m 320CONFIG_IP_NF_TARGET_MASQUERADE=m
326CONFIG_IP_NF_TARGET_REDIRECT=m
327CONFIG_IP_NF_TARGET_NETMAP=m 321CONFIG_IP_NF_TARGET_NETMAP=m
322CONFIG_IP_NF_TARGET_REDIRECT=m
328CONFIG_NF_NAT_SNMP_BASIC=m 323CONFIG_NF_NAT_SNMP_BASIC=m
329CONFIG_NF_NAT_PROTO_GRE=m 324CONFIG_NF_NAT_PROTO_GRE=m
330CONFIG_NF_NAT_PROTO_UDPLITE=m 325CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -337,9 +332,9 @@ CONFIG_NF_NAT_PPTP=m
337CONFIG_NF_NAT_H323=m 332CONFIG_NF_NAT_H323=m
338CONFIG_NF_NAT_SIP=m 333CONFIG_NF_NAT_SIP=m
339CONFIG_IP_NF_MANGLE=m 334CONFIG_IP_NF_MANGLE=m
335CONFIG_IP_NF_TARGET_CLUSTERIP=m
340CONFIG_IP_NF_TARGET_ECN=m 336CONFIG_IP_NF_TARGET_ECN=m
341CONFIG_IP_NF_TARGET_TTL=m 337CONFIG_IP_NF_TARGET_TTL=m
342CONFIG_IP_NF_TARGET_CLUSTERIP=m
343CONFIG_IP_NF_RAW=m 338CONFIG_IP_NF_RAW=m
344CONFIG_IP_NF_ARPTABLES=m 339CONFIG_IP_NF_ARPTABLES=m
345CONFIG_IP_NF_ARPFILTER=m 340CONFIG_IP_NF_ARPFILTER=m
@@ -351,16 +346,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
351CONFIG_NF_CONNTRACK_IPV6=m 346CONFIG_NF_CONNTRACK_IPV6=m
352CONFIG_IP6_NF_QUEUE=m 347CONFIG_IP6_NF_QUEUE=m
353CONFIG_IP6_NF_IPTABLES=m 348CONFIG_IP6_NF_IPTABLES=m
354CONFIG_IP6_NF_MATCH_RT=m 349CONFIG_IP6_NF_MATCH_AH=m
355CONFIG_IP6_NF_MATCH_OPTS=m 350CONFIG_IP6_NF_MATCH_EUI64=m
356CONFIG_IP6_NF_MATCH_FRAG=m 351CONFIG_IP6_NF_MATCH_FRAG=m
352CONFIG_IP6_NF_MATCH_OPTS=m
357CONFIG_IP6_NF_MATCH_HL=m 353CONFIG_IP6_NF_MATCH_HL=m
358CONFIG_IP6_NF_MATCH_IPV6HEADER=m 354CONFIG_IP6_NF_MATCH_IPV6HEADER=m
359CONFIG_IP6_NF_MATCH_AH=m
360CONFIG_IP6_NF_MATCH_MH=m 355CONFIG_IP6_NF_MATCH_MH=m
361CONFIG_IP6_NF_MATCH_EUI64=m 356CONFIG_IP6_NF_MATCH_RT=m
362CONFIG_IP6_NF_FILTER=m
363CONFIG_IP6_NF_TARGET_LOG=m 357CONFIG_IP6_NF_TARGET_LOG=m
358CONFIG_IP6_NF_FILTER=m
364CONFIG_IP6_NF_TARGET_REJECT=m 359CONFIG_IP6_NF_TARGET_REJECT=m
365CONFIG_IP6_NF_MANGLE=m 360CONFIG_IP6_NF_MANGLE=m
366CONFIG_IP6_NF_TARGET_HL=m 361CONFIG_IP6_NF_TARGET_HL=m
@@ -387,6 +382,7 @@ CONFIG_SCTP_HMAC_MD5=y
387# CONFIG_TIPC is not set 382# CONFIG_TIPC is not set
388# CONFIG_ATM is not set 383# CONFIG_ATM is not set
389# CONFIG_BRIDGE is not set 384# CONFIG_BRIDGE is not set
385# CONFIG_NET_DSA is not set
390# CONFIG_VLAN_8021Q is not set 386# CONFIG_VLAN_8021Q is not set
391# CONFIG_DECNET is not set 387# CONFIG_DECNET is not set
392CONFIG_LLC=m 388CONFIG_LLC=m
@@ -410,19 +406,8 @@ CONFIG_NET_CLS_ROUTE=y
410# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
411# CONFIG_BT is not set 407# CONFIG_BT is not set
412# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
413 409# CONFIG_PHONET is not set
414# 410# CONFIG_WIRELESS is not set
415# Wireless
416#
417# CONFIG_CFG80211 is not set
418CONFIG_WIRELESS_EXT=y
419# CONFIG_WIRELESS_EXT_SYSFS is not set
420# CONFIG_MAC80211 is not set
421CONFIG_IEEE80211=m
422# CONFIG_IEEE80211_DEBUG is not set
423CONFIG_IEEE80211_CRYPT_WEP=m
424CONFIG_IEEE80211_CRYPT_CCMP=m
425CONFIG_IEEE80211_CRYPT_TKIP=m
426# CONFIG_RFKILL is not set 411# CONFIG_RFKILL is not set
427# CONFIG_NET_9P is not set 412# CONFIG_NET_9P is not set
428 413
@@ -470,21 +455,20 @@ CONFIG_ATA_OVER_ETH=m
470CONFIG_MISC_DEVICES=y 455CONFIG_MISC_DEVICES=y
471# CONFIG_EEPROM_93CX6 is not set 456# CONFIG_EEPROM_93CX6 is not set
472# CONFIG_ENCLOSURE_SERVICES is not set 457# CONFIG_ENCLOSURE_SERVICES is not set
458# CONFIG_C2PORT is not set
473CONFIG_HAVE_IDE=y 459CONFIG_HAVE_IDE=y
474CONFIG_IDE=y 460CONFIG_IDE=y
475CONFIG_BLK_DEV_IDE=y
476 461
477# 462#
478# Please see Documentation/ide/ide.txt for help/info on IDE drives 463# Please see Documentation/ide/ide.txt for help/info on IDE drives
479# 464#
480CONFIG_IDE_ATAPI=y
481# CONFIG_BLK_DEV_IDE_SATA is not set 465# CONFIG_BLK_DEV_IDE_SATA is not set
482CONFIG_BLK_DEV_IDEDISK=y 466CONFIG_IDE_GD=y
483# CONFIG_IDEDISK_MULTI_MODE is not set 467CONFIG_IDE_GD_ATA=y
468# CONFIG_IDE_GD_ATAPI is not set
484CONFIG_BLK_DEV_IDECD=y 469CONFIG_BLK_DEV_IDECD=y
485CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y 470CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
486# CONFIG_BLK_DEV_IDETAPE is not set 471# CONFIG_BLK_DEV_IDETAPE is not set
487CONFIG_BLK_DEV_IDEFLOPPY=m
488# CONFIG_BLK_DEV_IDESCSI is not set 472# CONFIG_BLK_DEV_IDESCSI is not set
489# CONFIG_IDE_TASK_IOCTL is not set 473# CONFIG_IDE_TASK_IOCTL is not set
490CONFIG_IDE_PROC_FS=y 474CONFIG_IDE_PROC_FS=y
@@ -609,8 +593,12 @@ CONFIG_APNE=m
609# CONFIG_IBM_NEW_EMAC_RGMII is not set 593# CONFIG_IBM_NEW_EMAC_RGMII is not set
610# CONFIG_IBM_NEW_EMAC_TAH is not set 594# CONFIG_IBM_NEW_EMAC_TAH is not set
611# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 595# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
596# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
597# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
598# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
612# CONFIG_NET_PCI is not set 599# CONFIG_NET_PCI is not set
613# CONFIG_B44 is not set 600# CONFIG_B44 is not set
601# CONFIG_CS89x0 is not set
614# CONFIG_NET_POCKET is not set 602# CONFIG_NET_POCKET is not set
615# CONFIG_NETDEV_1000 is not set 603# CONFIG_NETDEV_1000 is not set
616# CONFIG_NETDEV_10000 is not set 604# CONFIG_NETDEV_10000 is not set
@@ -763,11 +751,11 @@ CONFIG_GEN_RTC_X=y
763# CONFIG_THERMAL is not set 751# CONFIG_THERMAL is not set
764# CONFIG_THERMAL_HWMON is not set 752# CONFIG_THERMAL_HWMON is not set
765# CONFIG_WATCHDOG is not set 753# CONFIG_WATCHDOG is not set
754CONFIG_SSB_POSSIBLE=y
766 755
767# 756#
768# Sonics Silicon Backplane 757# Sonics Silicon Backplane
769# 758#
770CONFIG_SSB_POSSIBLE=y
771# CONFIG_SSB is not set 759# CONFIG_SSB is not set
772 760
773# 761#
@@ -777,6 +765,7 @@ CONFIG_SSB_POSSIBLE=y
777# CONFIG_MFD_SM501 is not set 765# CONFIG_MFD_SM501 is not set
778# CONFIG_HTC_PASIC3 is not set 766# CONFIG_HTC_PASIC3 is not set
779# CONFIG_MFD_TMIO is not set 767# CONFIG_MFD_TMIO is not set
768# CONFIG_REGULATOR is not set
780 769
781# 770#
782# Multimedia devices 771# Multimedia devices
@@ -802,6 +791,7 @@ CONFIG_SSB_POSSIBLE=y
802CONFIG_FB=y 791CONFIG_FB=y
803# CONFIG_FIRMWARE_EDID is not set 792# CONFIG_FIRMWARE_EDID is not set
804# CONFIG_FB_DDC is not set 793# CONFIG_FB_DDC is not set
794# CONFIG_FB_BOOT_VESA_SUPPORT is not set
805CONFIG_FB_CFB_FILLRECT=y 795CONFIG_FB_CFB_FILLRECT=y
806CONFIG_FB_CFB_COPYAREA=y 796CONFIG_FB_CFB_COPYAREA=y
807CONFIG_FB_CFB_IMAGEBLIT=y 797CONFIG_FB_CFB_IMAGEBLIT=y
@@ -829,6 +819,8 @@ CONFIG_FB_FM2=y
829# CONFIG_FB_UVESA is not set 819# CONFIG_FB_UVESA is not set
830# CONFIG_FB_S1D13XXX is not set 820# CONFIG_FB_S1D13XXX is not set
831# CONFIG_FB_VIRTUAL is not set 821# CONFIG_FB_VIRTUAL is not set
822# CONFIG_FB_METRONOME is not set
823# CONFIG_FB_MB862XX is not set
832# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 824# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
833 825
834# 826#
@@ -852,12 +844,19 @@ CONFIG_LOGO_LINUX_MONO=y
852CONFIG_LOGO_LINUX_VGA16=y 844CONFIG_LOGO_LINUX_VGA16=y
853CONFIG_LOGO_LINUX_CLUT224=y 845CONFIG_LOGO_LINUX_CLUT224=y
854CONFIG_SOUND=m 846CONFIG_SOUND=m
847CONFIG_SOUND_OSS_CORE=y
855CONFIG_DMASOUND_PAULA=m 848CONFIG_DMASOUND_PAULA=m
856CONFIG_DMASOUND=m 849CONFIG_DMASOUND=m
857CONFIG_HID_SUPPORT=y 850CONFIG_HID_SUPPORT=y
858CONFIG_HID=m 851CONFIG_HID=m
859# CONFIG_HID_DEBUG is not set 852# CONFIG_HID_DEBUG is not set
860CONFIG_HIDRAW=y 853CONFIG_HIDRAW=y
854# CONFIG_HID_PID is not set
855
856#
857# Special HID drivers
858#
859CONFIG_HID_COMPAT=y
861# CONFIG_USB_SUPPORT is not set 860# CONFIG_USB_SUPPORT is not set
862# CONFIG_MMC is not set 861# CONFIG_MMC is not set
863# CONFIG_MEMSTICK is not set 862# CONFIG_MEMSTICK is not set
@@ -867,6 +866,8 @@ CONFIG_HIDRAW=y
867# CONFIG_DMADEVICES is not set 866# CONFIG_DMADEVICES is not set
868# CONFIG_AUXDISPLAY is not set 867# CONFIG_AUXDISPLAY is not set
869# CONFIG_UIO is not set 868# CONFIG_UIO is not set
869# CONFIG_STAGING is not set
870CONFIG_STAGING_EXCLUDE_BUILD=y
870 871
871# 872#
872# Character devices 873# Character devices
@@ -883,8 +884,9 @@ CONFIG_EXT2_FS=y
883# CONFIG_EXT2_FS_XIP is not set 884# CONFIG_EXT2_FS_XIP is not set
884CONFIG_EXT3_FS=y 885CONFIG_EXT3_FS=y
885# CONFIG_EXT3_FS_XATTR is not set 886# CONFIG_EXT3_FS_XATTR is not set
886# CONFIG_EXT4DEV_FS is not set 887# CONFIG_EXT4_FS is not set
887CONFIG_JBD=y 888CONFIG_JBD=y
889CONFIG_JBD2=m
888CONFIG_REISERFS_FS=m 890CONFIG_REISERFS_FS=m
889# CONFIG_REISERFS_CHECK is not set 891# CONFIG_REISERFS_CHECK is not set
890# CONFIG_REISERFS_PROC_INFO is not set 892# CONFIG_REISERFS_PROC_INFO is not set
@@ -895,6 +897,7 @@ CONFIG_JFS_FS=m
895# CONFIG_JFS_DEBUG is not set 897# CONFIG_JFS_DEBUG is not set
896# CONFIG_JFS_STATISTICS is not set 898# CONFIG_JFS_STATISTICS is not set
897# CONFIG_FS_POSIX_ACL is not set 899# CONFIG_FS_POSIX_ACL is not set
900CONFIG_FILE_LOCKING=y
898CONFIG_XFS_FS=m 901CONFIG_XFS_FS=m
899# CONFIG_XFS_QUOTA is not set 902# CONFIG_XFS_QUOTA is not set
900# CONFIG_XFS_POSIX_ACL is not set 903# CONFIG_XFS_POSIX_ACL is not set
@@ -906,6 +909,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
906# CONFIG_OCFS2_FS_STATS is not set 909# CONFIG_OCFS2_FS_STATS is not set
907# CONFIG_OCFS2_DEBUG_MASKLOG is not set 910# CONFIG_OCFS2_DEBUG_MASKLOG is not set
908# CONFIG_OCFS2_DEBUG_FS is not set 911# CONFIG_OCFS2_DEBUG_FS is not set
912# CONFIG_OCFS2_COMPAT_JBD is not set
909CONFIG_DNOTIFY=y 913CONFIG_DNOTIFY=y
910CONFIG_INOTIFY=y 914CONFIG_INOTIFY=y
911CONFIG_INOTIFY_USER=y 915CONFIG_INOTIFY_USER=y
@@ -944,6 +948,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
944CONFIG_PROC_FS=y 948CONFIG_PROC_FS=y
945CONFIG_PROC_KCORE=y 949CONFIG_PROC_KCORE=y
946CONFIG_PROC_SYSCTL=y 950CONFIG_PROC_SYSCTL=y
951CONFIG_PROC_PAGE_MONITOR=y
947CONFIG_SYSFS=y 952CONFIG_SYSFS=y
948CONFIG_TMPFS=y 953CONFIG_TMPFS=y
949# CONFIG_TMPFS_POSIX_ACL is not set 954# CONFIG_TMPFS_POSIX_ACL is not set
@@ -986,6 +991,7 @@ CONFIG_EXPORTFS=m
986CONFIG_NFS_COMMON=y 991CONFIG_NFS_COMMON=y
987CONFIG_SUNRPC=m 992CONFIG_SUNRPC=m
988CONFIG_SUNRPC_GSS=m 993CONFIG_SUNRPC_GSS=m
994# CONFIG_SUNRPC_REGISTER_V4 is not set
989CONFIG_RPCSEC_GSS_KRB5=m 995CONFIG_RPCSEC_GSS_KRB5=m
990# CONFIG_RPCSEC_GSS_SPKM3 is not set 996# CONFIG_RPCSEC_GSS_SPKM3 is not set
991CONFIG_SMB_FS=m 997CONFIG_SMB_FS=m
@@ -1059,7 +1065,13 @@ CONFIG_MAGIC_SYSRQ=y
1059# CONFIG_DEBUG_KERNEL is not set 1065# CONFIG_DEBUG_KERNEL is not set
1060CONFIG_DEBUG_BUGVERBOSE=y 1066CONFIG_DEBUG_BUGVERBOSE=y
1061CONFIG_DEBUG_MEMORY_INIT=y 1067CONFIG_DEBUG_MEMORY_INIT=y
1068# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1062CONFIG_SYSCTL_SYSCALL_CHECK=y 1069CONFIG_SYSCTL_SYSCALL_CHECK=y
1070
1071#
1072# Tracers
1073#
1074# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1063# CONFIG_SAMPLES is not set 1075# CONFIG_SAMPLES is not set
1064 1076
1065# 1077#
@@ -1067,6 +1079,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
1067# 1079#
1068# CONFIG_KEYS is not set 1080# CONFIG_KEYS is not set
1069# CONFIG_SECURITY is not set 1081# CONFIG_SECURITY is not set
1082# CONFIG_SECURITYFS is not set
1070# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1083# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1071CONFIG_XOR_BLOCKS=m 1084CONFIG_XOR_BLOCKS=m
1072CONFIG_ASYNC_CORE=m 1085CONFIG_ASYNC_CORE=m
@@ -1077,10 +1090,12 @@ CONFIG_CRYPTO=y
1077# 1090#
1078# Crypto core or helper 1091# Crypto core or helper
1079# 1092#
1093# CONFIG_CRYPTO_FIPS is not set
1080CONFIG_CRYPTO_ALGAPI=y 1094CONFIG_CRYPTO_ALGAPI=y
1081CONFIG_CRYPTO_AEAD=m 1095CONFIG_CRYPTO_AEAD=y
1082CONFIG_CRYPTO_BLKCIPHER=m 1096CONFIG_CRYPTO_BLKCIPHER=y
1083CONFIG_CRYPTO_HASH=y 1097CONFIG_CRYPTO_HASH=y
1098CONFIG_CRYPTO_RNG=y
1084CONFIG_CRYPTO_MANAGER=y 1099CONFIG_CRYPTO_MANAGER=y
1085CONFIG_CRYPTO_GF128MUL=m 1100CONFIG_CRYPTO_GF128MUL=m
1086CONFIG_CRYPTO_NULL=m 1101CONFIG_CRYPTO_NULL=m
@@ -1154,14 +1169,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1154# 1169#
1155CONFIG_CRYPTO_DEFLATE=m 1170CONFIG_CRYPTO_DEFLATE=m
1156CONFIG_CRYPTO_LZO=m 1171CONFIG_CRYPTO_LZO=m
1172
1173#
1174# Random Number Generation
1175#
1176# CONFIG_CRYPTO_ANSI_CPRNG is not set
1157# CONFIG_CRYPTO_HW is not set 1177# CONFIG_CRYPTO_HW is not set
1158 1178
1159# 1179#
1160# Library routines 1180# Library routines
1161# 1181#
1162CONFIG_BITREVERSE=y 1182CONFIG_BITREVERSE=y
1163# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1164# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1165CONFIG_CRC_CCITT=m 1183CONFIG_CRC_CCITT=m
1166CONFIG_CRC16=m 1184CONFIG_CRC16=m
1167CONFIG_CRC_T10DIF=y 1185CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/apollo_defconfig b/arch/m68k/configs/apollo_defconfig
index c41b854c0284..935108d115a0 100644
--- a/arch/m68k/configs/apollo_defconfig
+++ b/arch/m68k/configs/apollo_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:01 2008 4# Tue Dec 2 20:27:43 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -148,19 +138,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
148CONFIG_DISCONTIGMEM=y 138CONFIG_DISCONTIGMEM=y
149CONFIG_FLAT_NODE_MEM_MAP=y 139CONFIG_FLAT_NODE_MEM_MAP=y
150CONFIG_NEED_MULTIPLE_NODES=y 140CONFIG_NEED_MULTIPLE_NODES=y
151# CONFIG_SPARSEMEM_STATIC is not set
152# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
153CONFIG_PAGEFLAGS_EXTENDED=y 141CONFIG_PAGEFLAGS_EXTENDED=y
154CONFIG_SPLIT_PTLOCK_CPUS=4 142CONFIG_SPLIT_PTLOCK_CPUS=4
155# CONFIG_RESOURCES_64BIT is not set 143# CONFIG_RESOURCES_64BIT is not set
144# CONFIG_PHYS_ADDR_T_64BIT is not set
156CONFIG_ZONE_DMA_FLAG=1 145CONFIG_ZONE_DMA_FLAG=1
157CONFIG_BOUNCE=y 146CONFIG_BOUNCE=y
158CONFIG_VIRT_TO_BUS=y 147CONFIG_VIRT_TO_BUS=y
148CONFIG_UNEVICTABLE_LRU=y
159 149
160# 150#
161# General setup 151# General setup
162# 152#
163CONFIG_BINFMT_ELF=y 153CONFIG_BINFMT_ELF=y
154# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
155CONFIG_HAVE_AOUT=y
164CONFIG_BINFMT_AOUT=m 156CONFIG_BINFMT_AOUT=m
165CONFIG_BINFMT_MISC=m 157CONFIG_BINFMT_MISC=m
166CONFIG_HEARTBEAT=y 158CONFIG_HEARTBEAT=y
@@ -210,7 +202,6 @@ CONFIG_INET_TCP_DIAG=m
210CONFIG_TCP_CONG_CUBIC=y 202CONFIG_TCP_CONG_CUBIC=y
211CONFIG_DEFAULT_TCP_CONG="cubic" 203CONFIG_DEFAULT_TCP_CONG="cubic"
212# CONFIG_TCP_MD5SIG is not set 204# CONFIG_TCP_MD5SIG is not set
213# CONFIG_IP_VS is not set
214CONFIG_IPV6=m 205CONFIG_IPV6=m
215CONFIG_IPV6_PRIVACY=y 206CONFIG_IPV6_PRIVACY=y
216CONFIG_IPV6_ROUTER_PREF=y 207CONFIG_IPV6_ROUTER_PREF=y
@@ -260,13 +251,14 @@ CONFIG_NF_CONNTRACK_SANE=m
260CONFIG_NF_CONNTRACK_SIP=m 251CONFIG_NF_CONNTRACK_SIP=m
261CONFIG_NF_CONNTRACK_TFTP=m 252CONFIG_NF_CONNTRACK_TFTP=m
262# CONFIG_NF_CT_NETLINK is not set 253# CONFIG_NF_CT_NETLINK is not set
254# CONFIG_NETFILTER_TPROXY is not set
263CONFIG_NETFILTER_XTABLES=m 255CONFIG_NETFILTER_XTABLES=m
264CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 256CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
265CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 257CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
266CONFIG_NETFILTER_XT_TARGET_DSCP=m 258CONFIG_NETFILTER_XT_TARGET_DSCP=m
267CONFIG_NETFILTER_XT_TARGET_MARK=m 259CONFIG_NETFILTER_XT_TARGET_MARK=m
268CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
269CONFIG_NETFILTER_XT_TARGET_NFLOG=m 260CONFIG_NETFILTER_XT_TARGET_NFLOG=m
261CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
270CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 262CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
271CONFIG_NETFILTER_XT_TARGET_RATEEST=m 263CONFIG_NETFILTER_XT_TARGET_RATEEST=m
272CONFIG_NETFILTER_XT_TARGET_TRACE=m 264CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -280,19 +272,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
280CONFIG_NETFILTER_XT_MATCH_DCCP=m 272CONFIG_NETFILTER_XT_MATCH_DCCP=m
281CONFIG_NETFILTER_XT_MATCH_DSCP=m 273CONFIG_NETFILTER_XT_MATCH_DSCP=m
282CONFIG_NETFILTER_XT_MATCH_ESP=m 274CONFIG_NETFILTER_XT_MATCH_ESP=m
275CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
283CONFIG_NETFILTER_XT_MATCH_HELPER=m 276CONFIG_NETFILTER_XT_MATCH_HELPER=m
284CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 277CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
285CONFIG_NETFILTER_XT_MATCH_LENGTH=m 278CONFIG_NETFILTER_XT_MATCH_LENGTH=m
286CONFIG_NETFILTER_XT_MATCH_LIMIT=m 279CONFIG_NETFILTER_XT_MATCH_LIMIT=m
287CONFIG_NETFILTER_XT_MATCH_MAC=m 280CONFIG_NETFILTER_XT_MATCH_MAC=m
288CONFIG_NETFILTER_XT_MATCH_MARK=m 281CONFIG_NETFILTER_XT_MATCH_MARK=m
282CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
289CONFIG_NETFILTER_XT_MATCH_OWNER=m 283CONFIG_NETFILTER_XT_MATCH_OWNER=m
290CONFIG_NETFILTER_XT_MATCH_POLICY=m 284CONFIG_NETFILTER_XT_MATCH_POLICY=m
291CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
292CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 285CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
293CONFIG_NETFILTER_XT_MATCH_QUOTA=m 286CONFIG_NETFILTER_XT_MATCH_QUOTA=m
294CONFIG_NETFILTER_XT_MATCH_RATEEST=m 287CONFIG_NETFILTER_XT_MATCH_RATEEST=m
295CONFIG_NETFILTER_XT_MATCH_REALM=m 288CONFIG_NETFILTER_XT_MATCH_REALM=m
289CONFIG_NETFILTER_XT_MATCH_RECENT=m
290# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
296CONFIG_NETFILTER_XT_MATCH_SCTP=m 291CONFIG_NETFILTER_XT_MATCH_SCTP=m
297CONFIG_NETFILTER_XT_MATCH_STATE=m 292CONFIG_NETFILTER_XT_MATCH_STATE=m
298CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 293CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -300,20 +295,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
300CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 295CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
301CONFIG_NETFILTER_XT_MATCH_TIME=m 296CONFIG_NETFILTER_XT_MATCH_TIME=m
302CONFIG_NETFILTER_XT_MATCH_U32=m 297CONFIG_NETFILTER_XT_MATCH_U32=m
303CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 298# CONFIG_IP_VS is not set
304 299
305# 300#
306# IP: Netfilter Configuration 301# IP: Netfilter Configuration
307# 302#
303CONFIG_NF_DEFRAG_IPV4=m
308CONFIG_NF_CONNTRACK_IPV4=m 304CONFIG_NF_CONNTRACK_IPV4=m
309CONFIG_NF_CONNTRACK_PROC_COMPAT=y 305CONFIG_NF_CONNTRACK_PROC_COMPAT=y
310CONFIG_IP_NF_QUEUE=m 306CONFIG_IP_NF_QUEUE=m
311CONFIG_IP_NF_IPTABLES=m 307CONFIG_IP_NF_IPTABLES=m
312CONFIG_IP_NF_MATCH_RECENT=m 308CONFIG_IP_NF_MATCH_ADDRTYPE=m
313CONFIG_IP_NF_MATCH_ECN=m
314CONFIG_IP_NF_MATCH_AH=m 309CONFIG_IP_NF_MATCH_AH=m
310CONFIG_IP_NF_MATCH_ECN=m
315CONFIG_IP_NF_MATCH_TTL=m 311CONFIG_IP_NF_MATCH_TTL=m
316CONFIG_IP_NF_MATCH_ADDRTYPE=m
317CONFIG_IP_NF_FILTER=m 312CONFIG_IP_NF_FILTER=m
318CONFIG_IP_NF_TARGET_REJECT=m 313CONFIG_IP_NF_TARGET_REJECT=m
319CONFIG_IP_NF_TARGET_LOG=m 314CONFIG_IP_NF_TARGET_LOG=m
@@ -321,8 +316,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
321CONFIG_NF_NAT=m 316CONFIG_NF_NAT=m
322CONFIG_NF_NAT_NEEDED=y 317CONFIG_NF_NAT_NEEDED=y
323CONFIG_IP_NF_TARGET_MASQUERADE=m 318CONFIG_IP_NF_TARGET_MASQUERADE=m
324CONFIG_IP_NF_TARGET_REDIRECT=m
325CONFIG_IP_NF_TARGET_NETMAP=m 319CONFIG_IP_NF_TARGET_NETMAP=m
320CONFIG_IP_NF_TARGET_REDIRECT=m
326CONFIG_NF_NAT_SNMP_BASIC=m 321CONFIG_NF_NAT_SNMP_BASIC=m
327CONFIG_NF_NAT_PROTO_GRE=m 322CONFIG_NF_NAT_PROTO_GRE=m
328CONFIG_NF_NAT_PROTO_UDPLITE=m 323CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -335,9 +330,9 @@ CONFIG_NF_NAT_PPTP=m
335CONFIG_NF_NAT_H323=m 330CONFIG_NF_NAT_H323=m
336CONFIG_NF_NAT_SIP=m 331CONFIG_NF_NAT_SIP=m
337CONFIG_IP_NF_MANGLE=m 332CONFIG_IP_NF_MANGLE=m
333CONFIG_IP_NF_TARGET_CLUSTERIP=m
338CONFIG_IP_NF_TARGET_ECN=m 334CONFIG_IP_NF_TARGET_ECN=m
339CONFIG_IP_NF_TARGET_TTL=m 335CONFIG_IP_NF_TARGET_TTL=m
340CONFIG_IP_NF_TARGET_CLUSTERIP=m
341CONFIG_IP_NF_RAW=m 336CONFIG_IP_NF_RAW=m
342CONFIG_IP_NF_ARPTABLES=m 337CONFIG_IP_NF_ARPTABLES=m
343CONFIG_IP_NF_ARPFILTER=m 338CONFIG_IP_NF_ARPFILTER=m
@@ -349,16 +344,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
349CONFIG_NF_CONNTRACK_IPV6=m 344CONFIG_NF_CONNTRACK_IPV6=m
350CONFIG_IP6_NF_QUEUE=m 345CONFIG_IP6_NF_QUEUE=m
351CONFIG_IP6_NF_IPTABLES=m 346CONFIG_IP6_NF_IPTABLES=m
352CONFIG_IP6_NF_MATCH_RT=m 347CONFIG_IP6_NF_MATCH_AH=m
353CONFIG_IP6_NF_MATCH_OPTS=m 348CONFIG_IP6_NF_MATCH_EUI64=m
354CONFIG_IP6_NF_MATCH_FRAG=m 349CONFIG_IP6_NF_MATCH_FRAG=m
350CONFIG_IP6_NF_MATCH_OPTS=m
355CONFIG_IP6_NF_MATCH_HL=m 351CONFIG_IP6_NF_MATCH_HL=m
356CONFIG_IP6_NF_MATCH_IPV6HEADER=m 352CONFIG_IP6_NF_MATCH_IPV6HEADER=m
357CONFIG_IP6_NF_MATCH_AH=m
358CONFIG_IP6_NF_MATCH_MH=m 353CONFIG_IP6_NF_MATCH_MH=m
359CONFIG_IP6_NF_MATCH_EUI64=m 354CONFIG_IP6_NF_MATCH_RT=m
360CONFIG_IP6_NF_FILTER=m
361CONFIG_IP6_NF_TARGET_LOG=m 355CONFIG_IP6_NF_TARGET_LOG=m
356CONFIG_IP6_NF_FILTER=m
362CONFIG_IP6_NF_TARGET_REJECT=m 357CONFIG_IP6_NF_TARGET_REJECT=m
363CONFIG_IP6_NF_MANGLE=m 358CONFIG_IP6_NF_MANGLE=m
364CONFIG_IP6_NF_TARGET_HL=m 359CONFIG_IP6_NF_TARGET_HL=m
@@ -385,6 +380,7 @@ CONFIG_SCTP_HMAC_MD5=y
385# CONFIG_TIPC is not set 380# CONFIG_TIPC is not set
386# CONFIG_ATM is not set 381# CONFIG_ATM is not set
387# CONFIG_BRIDGE is not set 382# CONFIG_BRIDGE is not set
383# CONFIG_NET_DSA is not set
388# CONFIG_VLAN_8021Q is not set 384# CONFIG_VLAN_8021Q is not set
389# CONFIG_DECNET is not set 385# CONFIG_DECNET is not set
390CONFIG_LLC=m 386CONFIG_LLC=m
@@ -408,19 +404,8 @@ CONFIG_NET_CLS_ROUTE=y
408# CONFIG_IRDA is not set 404# CONFIG_IRDA is not set
409# CONFIG_BT is not set 405# CONFIG_BT is not set
410# CONFIG_AF_RXRPC is not set 406# CONFIG_AF_RXRPC is not set
411 407# CONFIG_PHONET is not set
412# 408# CONFIG_WIRELESS is not set
413# Wireless
414#
415# CONFIG_CFG80211 is not set
416CONFIG_WIRELESS_EXT=y
417# CONFIG_WIRELESS_EXT_SYSFS is not set
418# CONFIG_MAC80211 is not set
419CONFIG_IEEE80211=m
420# CONFIG_IEEE80211_DEBUG is not set
421CONFIG_IEEE80211_CRYPT_WEP=m
422CONFIG_IEEE80211_CRYPT_CCMP=m
423CONFIG_IEEE80211_CRYPT_TKIP=m
424# CONFIG_RFKILL is not set 409# CONFIG_RFKILL is not set
425# CONFIG_NET_9P is not set 410# CONFIG_NET_9P is not set
426 411
@@ -458,6 +443,7 @@ CONFIG_ATA_OVER_ETH=m
458CONFIG_MISC_DEVICES=y 443CONFIG_MISC_DEVICES=y
459# CONFIG_EEPROM_93CX6 is not set 444# CONFIG_EEPROM_93CX6 is not set
460# CONFIG_ENCLOSURE_SERVICES is not set 445# CONFIG_ENCLOSURE_SERVICES is not set
446# CONFIG_C2PORT is not set
461CONFIG_HAVE_IDE=y 447CONFIG_HAVE_IDE=y
462# CONFIG_IDE is not set 448# CONFIG_IDE is not set
463 449
@@ -540,6 +526,9 @@ CONFIG_NET_ETHERNET=y
540# CONFIG_IBM_NEW_EMAC_RGMII is not set 526# CONFIG_IBM_NEW_EMAC_RGMII is not set
541# CONFIG_IBM_NEW_EMAC_TAH is not set 527# CONFIG_IBM_NEW_EMAC_TAH is not set
542# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 528# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
529# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
530# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
531# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
543# CONFIG_B44 is not set 532# CONFIG_B44 is not set
544# CONFIG_NETDEV_1000 is not set 533# CONFIG_NETDEV_1000 is not set
545# CONFIG_NETDEV_10000 is not set 534# CONFIG_NETDEV_10000 is not set
@@ -609,6 +598,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
609CONFIG_MOUSE_PS2_SYNAPTICS=y 598CONFIG_MOUSE_PS2_SYNAPTICS=y
610CONFIG_MOUSE_PS2_LIFEBOOK=y 599CONFIG_MOUSE_PS2_LIFEBOOK=y
611CONFIG_MOUSE_PS2_TRACKPOINT=y 600CONFIG_MOUSE_PS2_TRACKPOINT=y
601# CONFIG_MOUSE_PS2_ELANTECH is not set
612# CONFIG_MOUSE_PS2_TOUCHKIT is not set 602# CONFIG_MOUSE_PS2_TOUCHKIT is not set
613CONFIG_MOUSE_SERIAL=m 603CONFIG_MOUSE_SERIAL=m
614# CONFIG_MOUSE_VSXXXAA is not set 604# CONFIG_MOUSE_VSXXXAA is not set
@@ -663,11 +653,11 @@ CONFIG_GEN_RTC_X=y
663# CONFIG_THERMAL is not set 653# CONFIG_THERMAL is not set
664# CONFIG_THERMAL_HWMON is not set 654# CONFIG_THERMAL_HWMON is not set
665# CONFIG_WATCHDOG is not set 655# CONFIG_WATCHDOG is not set
656CONFIG_SSB_POSSIBLE=y
666 657
667# 658#
668# Sonics Silicon Backplane 659# Sonics Silicon Backplane
669# 660#
670CONFIG_SSB_POSSIBLE=y
671# CONFIG_SSB is not set 661# CONFIG_SSB is not set
672 662
673# 663#
@@ -677,6 +667,7 @@ CONFIG_SSB_POSSIBLE=y
677# CONFIG_MFD_SM501 is not set 667# CONFIG_MFD_SM501 is not set
678# CONFIG_HTC_PASIC3 is not set 668# CONFIG_HTC_PASIC3 is not set
679# CONFIG_MFD_TMIO is not set 669# CONFIG_MFD_TMIO is not set
670# CONFIG_REGULATOR is not set
680 671
681# 672#
682# Multimedia devices 673# Multimedia devices
@@ -702,6 +693,7 @@ CONFIG_SSB_POSSIBLE=y
702CONFIG_FB=y 693CONFIG_FB=y
703# CONFIG_FIRMWARE_EDID is not set 694# CONFIG_FIRMWARE_EDID is not set
704# CONFIG_FB_DDC is not set 695# CONFIG_FB_DDC is not set
696# CONFIG_FB_BOOT_VESA_SUPPORT is not set
705CONFIG_FB_CFB_FILLRECT=y 697CONFIG_FB_CFB_FILLRECT=y
706# CONFIG_FB_CFB_COPYAREA is not set 698# CONFIG_FB_CFB_COPYAREA is not set
707CONFIG_FB_CFB_IMAGEBLIT=y 699CONFIG_FB_CFB_IMAGEBLIT=y
@@ -724,6 +716,8 @@ CONFIG_FB_APOLLO=y
724# CONFIG_FB_UVESA is not set 716# CONFIG_FB_UVESA is not set
725# CONFIG_FB_S1D13XXX is not set 717# CONFIG_FB_S1D13XXX is not set
726# CONFIG_FB_VIRTUAL is not set 718# CONFIG_FB_VIRTUAL is not set
719# CONFIG_FB_METRONOME is not set
720# CONFIG_FB_MB862XX is not set
727# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 721# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
728 722
729# 723#
@@ -750,6 +744,12 @@ CONFIG_HID_SUPPORT=y
750CONFIG_HID=m 744CONFIG_HID=m
751# CONFIG_HID_DEBUG is not set 745# CONFIG_HID_DEBUG is not set
752CONFIG_HIDRAW=y 746CONFIG_HIDRAW=y
747# CONFIG_HID_PID is not set
748
749#
750# Special HID drivers
751#
752CONFIG_HID_COMPAT=y
753# CONFIG_USB_SUPPORT is not set 753# CONFIG_USB_SUPPORT is not set
754# CONFIG_MMC is not set 754# CONFIG_MMC is not set
755# CONFIG_MEMSTICK is not set 755# CONFIG_MEMSTICK is not set
@@ -758,6 +758,8 @@ CONFIG_HIDRAW=y
758# CONFIG_RTC_CLASS is not set 758# CONFIG_RTC_CLASS is not set
759# CONFIG_DMADEVICES is not set 759# CONFIG_DMADEVICES is not set
760# CONFIG_UIO is not set 760# CONFIG_UIO is not set
761# CONFIG_STAGING is not set
762CONFIG_STAGING_EXCLUDE_BUILD=y
761 763
762# 764#
763# Character devices 765# Character devices
@@ -773,8 +775,9 @@ CONFIG_EXT2_FS=y
773# CONFIG_EXT2_FS_XIP is not set 775# CONFIG_EXT2_FS_XIP is not set
774CONFIG_EXT3_FS=y 776CONFIG_EXT3_FS=y
775# CONFIG_EXT3_FS_XATTR is not set 777# CONFIG_EXT3_FS_XATTR is not set
776# CONFIG_EXT4DEV_FS is not set 778# CONFIG_EXT4_FS is not set
777CONFIG_JBD=y 779CONFIG_JBD=y
780CONFIG_JBD2=m
778CONFIG_REISERFS_FS=m 781CONFIG_REISERFS_FS=m
779# CONFIG_REISERFS_CHECK is not set 782# CONFIG_REISERFS_CHECK is not set
780# CONFIG_REISERFS_PROC_INFO is not set 783# CONFIG_REISERFS_PROC_INFO is not set
@@ -785,6 +788,7 @@ CONFIG_JFS_FS=m
785# CONFIG_JFS_DEBUG is not set 788# CONFIG_JFS_DEBUG is not set
786# CONFIG_JFS_STATISTICS is not set 789# CONFIG_JFS_STATISTICS is not set
787# CONFIG_FS_POSIX_ACL is not set 790# CONFIG_FS_POSIX_ACL is not set
791CONFIG_FILE_LOCKING=y
788CONFIG_XFS_FS=m 792CONFIG_XFS_FS=m
789# CONFIG_XFS_QUOTA is not set 793# CONFIG_XFS_QUOTA is not set
790# CONFIG_XFS_POSIX_ACL is not set 794# CONFIG_XFS_POSIX_ACL is not set
@@ -796,6 +800,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
796# CONFIG_OCFS2_FS_STATS is not set 800# CONFIG_OCFS2_FS_STATS is not set
797# CONFIG_OCFS2_DEBUG_MASKLOG is not set 801# CONFIG_OCFS2_DEBUG_MASKLOG is not set
798# CONFIG_OCFS2_DEBUG_FS is not set 802# CONFIG_OCFS2_DEBUG_FS is not set
803# CONFIG_OCFS2_COMPAT_JBD is not set
799CONFIG_DNOTIFY=y 804CONFIG_DNOTIFY=y
800CONFIG_INOTIFY=y 805CONFIG_INOTIFY=y
801CONFIG_INOTIFY_USER=y 806CONFIG_INOTIFY_USER=y
@@ -834,6 +839,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
834CONFIG_PROC_FS=y 839CONFIG_PROC_FS=y
835CONFIG_PROC_KCORE=y 840CONFIG_PROC_KCORE=y
836CONFIG_PROC_SYSCTL=y 841CONFIG_PROC_SYSCTL=y
842CONFIG_PROC_PAGE_MONITOR=y
837CONFIG_SYSFS=y 843CONFIG_SYSFS=y
838CONFIG_TMPFS=y 844CONFIG_TMPFS=y
839# CONFIG_TMPFS_POSIX_ACL is not set 845# CONFIG_TMPFS_POSIX_ACL is not set
@@ -877,6 +883,7 @@ CONFIG_EXPORTFS=m
877CONFIG_NFS_COMMON=y 883CONFIG_NFS_COMMON=y
878CONFIG_SUNRPC=y 884CONFIG_SUNRPC=y
879CONFIG_SUNRPC_GSS=y 885CONFIG_SUNRPC_GSS=y
886# CONFIG_SUNRPC_REGISTER_V4 is not set
880CONFIG_RPCSEC_GSS_KRB5=y 887CONFIG_RPCSEC_GSS_KRB5=y
881# CONFIG_RPCSEC_GSS_SPKM3 is not set 888# CONFIG_RPCSEC_GSS_SPKM3 is not set
882CONFIG_SMB_FS=m 889CONFIG_SMB_FS=m
@@ -949,7 +956,13 @@ CONFIG_MAGIC_SYSRQ=y
949# CONFIG_DEBUG_KERNEL is not set 956# CONFIG_DEBUG_KERNEL is not set
950CONFIG_DEBUG_BUGVERBOSE=y 957CONFIG_DEBUG_BUGVERBOSE=y
951CONFIG_DEBUG_MEMORY_INIT=y 958CONFIG_DEBUG_MEMORY_INIT=y
959# CONFIG_RCU_CPU_STALL_DETECTOR is not set
952CONFIG_SYSCTL_SYSCALL_CHECK=y 960CONFIG_SYSCTL_SYSCALL_CHECK=y
961
962#
963# Tracers
964#
965# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
953# CONFIG_SAMPLES is not set 966# CONFIG_SAMPLES is not set
954 967
955# 968#
@@ -957,6 +970,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
957# 970#
958# CONFIG_KEYS is not set 971# CONFIG_KEYS is not set
959# CONFIG_SECURITY is not set 972# CONFIG_SECURITY is not set
973# CONFIG_SECURITYFS is not set
960# CONFIG_SECURITY_FILE_CAPABILITIES is not set 974# CONFIG_SECURITY_FILE_CAPABILITIES is not set
961CONFIG_XOR_BLOCKS=m 975CONFIG_XOR_BLOCKS=m
962CONFIG_ASYNC_CORE=m 976CONFIG_ASYNC_CORE=m
@@ -967,10 +981,12 @@ CONFIG_CRYPTO=y
967# 981#
968# Crypto core or helper 982# Crypto core or helper
969# 983#
984# CONFIG_CRYPTO_FIPS is not set
970CONFIG_CRYPTO_ALGAPI=y 985CONFIG_CRYPTO_ALGAPI=y
971CONFIG_CRYPTO_AEAD=m 986CONFIG_CRYPTO_AEAD=y
972CONFIG_CRYPTO_BLKCIPHER=y 987CONFIG_CRYPTO_BLKCIPHER=y
973CONFIG_CRYPTO_HASH=y 988CONFIG_CRYPTO_HASH=y
989CONFIG_CRYPTO_RNG=y
974CONFIG_CRYPTO_MANAGER=y 990CONFIG_CRYPTO_MANAGER=y
975CONFIG_CRYPTO_GF128MUL=m 991CONFIG_CRYPTO_GF128MUL=m
976CONFIG_CRYPTO_NULL=m 992CONFIG_CRYPTO_NULL=m
@@ -1044,14 +1060,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1044# 1060#
1045CONFIG_CRYPTO_DEFLATE=m 1061CONFIG_CRYPTO_DEFLATE=m
1046CONFIG_CRYPTO_LZO=m 1062CONFIG_CRYPTO_LZO=m
1063
1064#
1065# Random Number Generation
1066#
1067# CONFIG_CRYPTO_ANSI_CPRNG is not set
1047# CONFIG_CRYPTO_HW is not set 1068# CONFIG_CRYPTO_HW is not set
1048 1069
1049# 1070#
1050# Library routines 1071# Library routines
1051# 1072#
1052CONFIG_BITREVERSE=y 1073CONFIG_BITREVERSE=y
1053# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1054# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1055CONFIG_CRC_CCITT=m 1074CONFIG_CRC_CCITT=m
1056CONFIG_CRC16=m 1075CONFIG_CRC16=m
1057CONFIG_CRC_T10DIF=y 1076CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/atari_defconfig b/arch/m68k/configs/atari_defconfig
index 654c5acb9e86..a594a1d47b62 100644
--- a/arch/m68k/configs/atari_defconfig
+++ b/arch/m68k/configs/atari_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:02 2008 4# Tue Dec 2 20:27:44 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124CONFIG_ATARI=y 114CONFIG_ATARI=y
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -148,19 +138,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
148CONFIG_DISCONTIGMEM=y 138CONFIG_DISCONTIGMEM=y
149CONFIG_FLAT_NODE_MEM_MAP=y 139CONFIG_FLAT_NODE_MEM_MAP=y
150CONFIG_NEED_MULTIPLE_NODES=y 140CONFIG_NEED_MULTIPLE_NODES=y
151# CONFIG_SPARSEMEM_STATIC is not set
152# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
153CONFIG_PAGEFLAGS_EXTENDED=y 141CONFIG_PAGEFLAGS_EXTENDED=y
154CONFIG_SPLIT_PTLOCK_CPUS=4 142CONFIG_SPLIT_PTLOCK_CPUS=4
155# CONFIG_RESOURCES_64BIT is not set 143# CONFIG_RESOURCES_64BIT is not set
144# CONFIG_PHYS_ADDR_T_64BIT is not set
156CONFIG_ZONE_DMA_FLAG=1 145CONFIG_ZONE_DMA_FLAG=1
157CONFIG_BOUNCE=y 146CONFIG_BOUNCE=y
158CONFIG_VIRT_TO_BUS=y 147CONFIG_VIRT_TO_BUS=y
148CONFIG_UNEVICTABLE_LRU=y
159 149
160# 150#
161# General setup 151# General setup
162# 152#
163CONFIG_BINFMT_ELF=y 153CONFIG_BINFMT_ELF=y
154# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
155CONFIG_HAVE_AOUT=y
164CONFIG_BINFMT_AOUT=m 156CONFIG_BINFMT_AOUT=m
165CONFIG_BINFMT_MISC=m 157CONFIG_BINFMT_MISC=m
166CONFIG_STRAM_PROC=y 158CONFIG_STRAM_PROC=y
@@ -208,7 +200,6 @@ CONFIG_INET_TCP_DIAG=m
208CONFIG_TCP_CONG_CUBIC=y 200CONFIG_TCP_CONG_CUBIC=y
209CONFIG_DEFAULT_TCP_CONG="cubic" 201CONFIG_DEFAULT_TCP_CONG="cubic"
210# CONFIG_TCP_MD5SIG is not set 202# CONFIG_TCP_MD5SIG is not set
211# CONFIG_IP_VS is not set
212CONFIG_IPV6=m 203CONFIG_IPV6=m
213CONFIG_IPV6_PRIVACY=y 204CONFIG_IPV6_PRIVACY=y
214CONFIG_IPV6_ROUTER_PREF=y 205CONFIG_IPV6_ROUTER_PREF=y
@@ -258,13 +249,14 @@ CONFIG_NF_CONNTRACK_SANE=m
258CONFIG_NF_CONNTRACK_SIP=m 249CONFIG_NF_CONNTRACK_SIP=m
259CONFIG_NF_CONNTRACK_TFTP=m 250CONFIG_NF_CONNTRACK_TFTP=m
260# CONFIG_NF_CT_NETLINK is not set 251# CONFIG_NF_CT_NETLINK is not set
252# CONFIG_NETFILTER_TPROXY is not set
261CONFIG_NETFILTER_XTABLES=m 253CONFIG_NETFILTER_XTABLES=m
262CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 254CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
263CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 255CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
264CONFIG_NETFILTER_XT_TARGET_DSCP=m 256CONFIG_NETFILTER_XT_TARGET_DSCP=m
265CONFIG_NETFILTER_XT_TARGET_MARK=m 257CONFIG_NETFILTER_XT_TARGET_MARK=m
266CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
267CONFIG_NETFILTER_XT_TARGET_NFLOG=m 258CONFIG_NETFILTER_XT_TARGET_NFLOG=m
259CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
268CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 260CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
269CONFIG_NETFILTER_XT_TARGET_RATEEST=m 261CONFIG_NETFILTER_XT_TARGET_RATEEST=m
270CONFIG_NETFILTER_XT_TARGET_TRACE=m 262CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -278,19 +270,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
278CONFIG_NETFILTER_XT_MATCH_DCCP=m 270CONFIG_NETFILTER_XT_MATCH_DCCP=m
279CONFIG_NETFILTER_XT_MATCH_DSCP=m 271CONFIG_NETFILTER_XT_MATCH_DSCP=m
280CONFIG_NETFILTER_XT_MATCH_ESP=m 272CONFIG_NETFILTER_XT_MATCH_ESP=m
273CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
281CONFIG_NETFILTER_XT_MATCH_HELPER=m 274CONFIG_NETFILTER_XT_MATCH_HELPER=m
282CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 275CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
283CONFIG_NETFILTER_XT_MATCH_LENGTH=m 276CONFIG_NETFILTER_XT_MATCH_LENGTH=m
284CONFIG_NETFILTER_XT_MATCH_LIMIT=m 277CONFIG_NETFILTER_XT_MATCH_LIMIT=m
285CONFIG_NETFILTER_XT_MATCH_MAC=m 278CONFIG_NETFILTER_XT_MATCH_MAC=m
286CONFIG_NETFILTER_XT_MATCH_MARK=m 279CONFIG_NETFILTER_XT_MATCH_MARK=m
280CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
287CONFIG_NETFILTER_XT_MATCH_OWNER=m 281CONFIG_NETFILTER_XT_MATCH_OWNER=m
288CONFIG_NETFILTER_XT_MATCH_POLICY=m 282CONFIG_NETFILTER_XT_MATCH_POLICY=m
289CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
290CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 283CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
291CONFIG_NETFILTER_XT_MATCH_QUOTA=m 284CONFIG_NETFILTER_XT_MATCH_QUOTA=m
292CONFIG_NETFILTER_XT_MATCH_RATEEST=m 285CONFIG_NETFILTER_XT_MATCH_RATEEST=m
293CONFIG_NETFILTER_XT_MATCH_REALM=m 286CONFIG_NETFILTER_XT_MATCH_REALM=m
287CONFIG_NETFILTER_XT_MATCH_RECENT=m
288# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
294CONFIG_NETFILTER_XT_MATCH_SCTP=m 289CONFIG_NETFILTER_XT_MATCH_SCTP=m
295CONFIG_NETFILTER_XT_MATCH_STATE=m 290CONFIG_NETFILTER_XT_MATCH_STATE=m
296CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 291CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -298,20 +293,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
298CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 293CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
299CONFIG_NETFILTER_XT_MATCH_TIME=m 294CONFIG_NETFILTER_XT_MATCH_TIME=m
300CONFIG_NETFILTER_XT_MATCH_U32=m 295CONFIG_NETFILTER_XT_MATCH_U32=m
301CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 296# CONFIG_IP_VS is not set
302 297
303# 298#
304# IP: Netfilter Configuration 299# IP: Netfilter Configuration
305# 300#
301CONFIG_NF_DEFRAG_IPV4=m
306CONFIG_NF_CONNTRACK_IPV4=m 302CONFIG_NF_CONNTRACK_IPV4=m
307CONFIG_NF_CONNTRACK_PROC_COMPAT=y 303CONFIG_NF_CONNTRACK_PROC_COMPAT=y
308CONFIG_IP_NF_QUEUE=m 304CONFIG_IP_NF_QUEUE=m
309CONFIG_IP_NF_IPTABLES=m 305CONFIG_IP_NF_IPTABLES=m
310CONFIG_IP_NF_MATCH_RECENT=m 306CONFIG_IP_NF_MATCH_ADDRTYPE=m
311CONFIG_IP_NF_MATCH_ECN=m
312CONFIG_IP_NF_MATCH_AH=m 307CONFIG_IP_NF_MATCH_AH=m
308CONFIG_IP_NF_MATCH_ECN=m
313CONFIG_IP_NF_MATCH_TTL=m 309CONFIG_IP_NF_MATCH_TTL=m
314CONFIG_IP_NF_MATCH_ADDRTYPE=m
315CONFIG_IP_NF_FILTER=m 310CONFIG_IP_NF_FILTER=m
316CONFIG_IP_NF_TARGET_REJECT=m 311CONFIG_IP_NF_TARGET_REJECT=m
317CONFIG_IP_NF_TARGET_LOG=m 312CONFIG_IP_NF_TARGET_LOG=m
@@ -319,8 +314,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
319CONFIG_NF_NAT=m 314CONFIG_NF_NAT=m
320CONFIG_NF_NAT_NEEDED=y 315CONFIG_NF_NAT_NEEDED=y
321CONFIG_IP_NF_TARGET_MASQUERADE=m 316CONFIG_IP_NF_TARGET_MASQUERADE=m
322CONFIG_IP_NF_TARGET_REDIRECT=m
323CONFIG_IP_NF_TARGET_NETMAP=m 317CONFIG_IP_NF_TARGET_NETMAP=m
318CONFIG_IP_NF_TARGET_REDIRECT=m
324CONFIG_NF_NAT_SNMP_BASIC=m 319CONFIG_NF_NAT_SNMP_BASIC=m
325CONFIG_NF_NAT_PROTO_GRE=m 320CONFIG_NF_NAT_PROTO_GRE=m
326CONFIG_NF_NAT_PROTO_UDPLITE=m 321CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -333,9 +328,9 @@ CONFIG_NF_NAT_PPTP=m
333CONFIG_NF_NAT_H323=m 328CONFIG_NF_NAT_H323=m
334CONFIG_NF_NAT_SIP=m 329CONFIG_NF_NAT_SIP=m
335CONFIG_IP_NF_MANGLE=m 330CONFIG_IP_NF_MANGLE=m
331CONFIG_IP_NF_TARGET_CLUSTERIP=m
336CONFIG_IP_NF_TARGET_ECN=m 332CONFIG_IP_NF_TARGET_ECN=m
337CONFIG_IP_NF_TARGET_TTL=m 333CONFIG_IP_NF_TARGET_TTL=m
338CONFIG_IP_NF_TARGET_CLUSTERIP=m
339CONFIG_IP_NF_RAW=m 334CONFIG_IP_NF_RAW=m
340CONFIG_IP_NF_ARPTABLES=m 335CONFIG_IP_NF_ARPTABLES=m
341CONFIG_IP_NF_ARPFILTER=m 336CONFIG_IP_NF_ARPFILTER=m
@@ -347,16 +342,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
347CONFIG_NF_CONNTRACK_IPV6=m 342CONFIG_NF_CONNTRACK_IPV6=m
348CONFIG_IP6_NF_QUEUE=m 343CONFIG_IP6_NF_QUEUE=m
349CONFIG_IP6_NF_IPTABLES=m 344CONFIG_IP6_NF_IPTABLES=m
350CONFIG_IP6_NF_MATCH_RT=m 345CONFIG_IP6_NF_MATCH_AH=m
351CONFIG_IP6_NF_MATCH_OPTS=m 346CONFIG_IP6_NF_MATCH_EUI64=m
352CONFIG_IP6_NF_MATCH_FRAG=m 347CONFIG_IP6_NF_MATCH_FRAG=m
348CONFIG_IP6_NF_MATCH_OPTS=m
353CONFIG_IP6_NF_MATCH_HL=m 349CONFIG_IP6_NF_MATCH_HL=m
354CONFIG_IP6_NF_MATCH_IPV6HEADER=m 350CONFIG_IP6_NF_MATCH_IPV6HEADER=m
355CONFIG_IP6_NF_MATCH_AH=m
356CONFIG_IP6_NF_MATCH_MH=m 351CONFIG_IP6_NF_MATCH_MH=m
357CONFIG_IP6_NF_MATCH_EUI64=m 352CONFIG_IP6_NF_MATCH_RT=m
358CONFIG_IP6_NF_FILTER=m
359CONFIG_IP6_NF_TARGET_LOG=m 353CONFIG_IP6_NF_TARGET_LOG=m
354CONFIG_IP6_NF_FILTER=m
360CONFIG_IP6_NF_TARGET_REJECT=m 355CONFIG_IP6_NF_TARGET_REJECT=m
361CONFIG_IP6_NF_MANGLE=m 356CONFIG_IP6_NF_MANGLE=m
362CONFIG_IP6_NF_TARGET_HL=m 357CONFIG_IP6_NF_TARGET_HL=m
@@ -383,6 +378,7 @@ CONFIG_SCTP_HMAC_MD5=y
383# CONFIG_TIPC is not set 378# CONFIG_TIPC is not set
384# CONFIG_ATM is not set 379# CONFIG_ATM is not set
385# CONFIG_BRIDGE is not set 380# CONFIG_BRIDGE is not set
381# CONFIG_NET_DSA is not set
386# CONFIG_VLAN_8021Q is not set 382# CONFIG_VLAN_8021Q is not set
387# CONFIG_DECNET is not set 383# CONFIG_DECNET is not set
388CONFIG_LLC=m 384CONFIG_LLC=m
@@ -406,19 +402,8 @@ CONFIG_NET_CLS_ROUTE=y
406# CONFIG_IRDA is not set 402# CONFIG_IRDA is not set
407# CONFIG_BT is not set 403# CONFIG_BT is not set
408# CONFIG_AF_RXRPC is not set 404# CONFIG_AF_RXRPC is not set
409 405# CONFIG_PHONET is not set
410# 406# CONFIG_WIRELESS is not set
411# Wireless
412#
413# CONFIG_CFG80211 is not set
414CONFIG_WIRELESS_EXT=y
415# CONFIG_WIRELESS_EXT_SYSFS is not set
416# CONFIG_MAC80211 is not set
417CONFIG_IEEE80211=m
418# CONFIG_IEEE80211_DEBUG is not set
419CONFIG_IEEE80211_CRYPT_WEP=m
420CONFIG_IEEE80211_CRYPT_CCMP=m
421CONFIG_IEEE80211_CRYPT_TKIP=m
422# CONFIG_RFKILL is not set 407# CONFIG_RFKILL is not set
423# CONFIG_NET_9P is not set 408# CONFIG_NET_9P is not set
424 409
@@ -462,21 +447,20 @@ CONFIG_ATA_OVER_ETH=m
462CONFIG_MISC_DEVICES=y 447CONFIG_MISC_DEVICES=y
463# CONFIG_EEPROM_93CX6 is not set 448# CONFIG_EEPROM_93CX6 is not set
464# CONFIG_ENCLOSURE_SERVICES is not set 449# CONFIG_ENCLOSURE_SERVICES is not set
450# CONFIG_C2PORT is not set
465CONFIG_HAVE_IDE=y 451CONFIG_HAVE_IDE=y
466CONFIG_IDE=y 452CONFIG_IDE=y
467CONFIG_BLK_DEV_IDE=y
468 453
469# 454#
470# Please see Documentation/ide/ide.txt for help/info on IDE drives 455# Please see Documentation/ide/ide.txt for help/info on IDE drives
471# 456#
472CONFIG_IDE_ATAPI=y
473# CONFIG_BLK_DEV_IDE_SATA is not set 457# CONFIG_BLK_DEV_IDE_SATA is not set
474CONFIG_BLK_DEV_IDEDISK=y 458CONFIG_IDE_GD=y
475# CONFIG_IDEDISK_MULTI_MODE is not set 459CONFIG_IDE_GD_ATA=y
460# CONFIG_IDE_GD_ATAPI is not set
476CONFIG_BLK_DEV_IDECD=y 461CONFIG_BLK_DEV_IDECD=y
477CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y 462CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
478# CONFIG_BLK_DEV_IDETAPE is not set 463# CONFIG_BLK_DEV_IDETAPE is not set
479CONFIG_BLK_DEV_IDEFLOPPY=m
480# CONFIG_BLK_DEV_IDESCSI is not set 464# CONFIG_BLK_DEV_IDESCSI is not set
481# CONFIG_IDE_TASK_IOCTL is not set 465# CONFIG_IDE_TASK_IOCTL is not set
482CONFIG_IDE_PROC_FS=y 466CONFIG_IDE_PROC_FS=y
@@ -565,12 +549,15 @@ CONFIG_EQUALIZER=m
565CONFIG_VETH=m 549CONFIG_VETH=m
566# CONFIG_PHYLIB is not set 550# CONFIG_PHYLIB is not set
567CONFIG_NET_ETHERNET=y 551CONFIG_NET_ETHERNET=y
568CONFIG_MII=m 552CONFIG_MII=y
569CONFIG_ATARILANCE=m 553CONFIG_ATARILANCE=m
570# CONFIG_IBM_NEW_EMAC_ZMII is not set 554# CONFIG_IBM_NEW_EMAC_ZMII is not set
571# CONFIG_IBM_NEW_EMAC_RGMII is not set 555# CONFIG_IBM_NEW_EMAC_RGMII is not set
572# CONFIG_IBM_NEW_EMAC_TAH is not set 556# CONFIG_IBM_NEW_EMAC_TAH is not set
573# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 557# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
558# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
559# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
560# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
574# CONFIG_B44 is not set 561# CONFIG_B44 is not set
575# CONFIG_NET_POCKET is not set 562# CONFIG_NET_POCKET is not set
576# CONFIG_NETDEV_1000 is not set 563# CONFIG_NETDEV_1000 is not set
@@ -644,6 +631,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
644CONFIG_MOUSE_PS2_SYNAPTICS=y 631CONFIG_MOUSE_PS2_SYNAPTICS=y
645CONFIG_MOUSE_PS2_LIFEBOOK=y 632CONFIG_MOUSE_PS2_LIFEBOOK=y
646CONFIG_MOUSE_PS2_TRACKPOINT=y 633CONFIG_MOUSE_PS2_TRACKPOINT=y
634# CONFIG_MOUSE_PS2_ELANTECH is not set
647# CONFIG_MOUSE_PS2_TOUCHKIT is not set 635# CONFIG_MOUSE_PS2_TOUCHKIT is not set
648# CONFIG_MOUSE_SERIAL is not set 636# CONFIG_MOUSE_SERIAL is not set
649CONFIG_MOUSE_ATARI=m 637CONFIG_MOUSE_ATARI=m
@@ -706,11 +694,11 @@ CONFIG_GEN_RTC_X=y
706# CONFIG_THERMAL is not set 694# CONFIG_THERMAL is not set
707# CONFIG_THERMAL_HWMON is not set 695# CONFIG_THERMAL_HWMON is not set
708# CONFIG_WATCHDOG is not set 696# CONFIG_WATCHDOG is not set
697CONFIG_SSB_POSSIBLE=y
709 698
710# 699#
711# Sonics Silicon Backplane 700# Sonics Silicon Backplane
712# 701#
713CONFIG_SSB_POSSIBLE=y
714# CONFIG_SSB is not set 702# CONFIG_SSB is not set
715 703
716# 704#
@@ -720,6 +708,7 @@ CONFIG_SSB_POSSIBLE=y
720# CONFIG_MFD_SM501 is not set 708# CONFIG_MFD_SM501 is not set
721# CONFIG_HTC_PASIC3 is not set 709# CONFIG_HTC_PASIC3 is not set
722# CONFIG_MFD_TMIO is not set 710# CONFIG_MFD_TMIO is not set
711# CONFIG_REGULATOR is not set
723 712
724# 713#
725# Multimedia devices 714# Multimedia devices
@@ -745,6 +734,7 @@ CONFIG_SSB_POSSIBLE=y
745CONFIG_FB=y 734CONFIG_FB=y
746# CONFIG_FIRMWARE_EDID is not set 735# CONFIG_FIRMWARE_EDID is not set
747# CONFIG_FB_DDC is not set 736# CONFIG_FB_DDC is not set
737# CONFIG_FB_BOOT_VESA_SUPPORT is not set
748CONFIG_FB_CFB_FILLRECT=y 738CONFIG_FB_CFB_FILLRECT=y
749CONFIG_FB_CFB_COPYAREA=y 739CONFIG_FB_CFB_COPYAREA=y
750CONFIG_FB_CFB_IMAGEBLIT=y 740CONFIG_FB_CFB_IMAGEBLIT=y
@@ -768,6 +758,8 @@ CONFIG_FB_ATARI=y
768# CONFIG_FB_S1D13XXX is not set 758# CONFIG_FB_S1D13XXX is not set
769# CONFIG_FB_ATY is not set 759# CONFIG_FB_ATY is not set
770# CONFIG_FB_VIRTUAL is not set 760# CONFIG_FB_VIRTUAL is not set
761# CONFIG_FB_METRONOME is not set
762# CONFIG_FB_MB862XX is not set
771# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 763# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
772 764
773# 765#
@@ -790,12 +782,19 @@ CONFIG_LOGO_LINUX_MONO=y
790CONFIG_LOGO_LINUX_VGA16=y 782CONFIG_LOGO_LINUX_VGA16=y
791CONFIG_LOGO_LINUX_CLUT224=y 783CONFIG_LOGO_LINUX_CLUT224=y
792CONFIG_SOUND=m 784CONFIG_SOUND=m
785CONFIG_SOUND_OSS_CORE=y
793CONFIG_DMASOUND_ATARI=m 786CONFIG_DMASOUND_ATARI=m
794CONFIG_DMASOUND=m 787CONFIG_DMASOUND=m
795CONFIG_HID_SUPPORT=y 788CONFIG_HID_SUPPORT=y
796CONFIG_HID=m 789CONFIG_HID=m
797# CONFIG_HID_DEBUG is not set 790# CONFIG_HID_DEBUG is not set
798CONFIG_HIDRAW=y 791CONFIG_HIDRAW=y
792# CONFIG_HID_PID is not set
793
794#
795# Special HID drivers
796#
797CONFIG_HID_COMPAT=y
799# CONFIG_USB_SUPPORT is not set 798# CONFIG_USB_SUPPORT is not set
800# CONFIG_MMC is not set 799# CONFIG_MMC is not set
801# CONFIG_MEMSTICK is not set 800# CONFIG_MEMSTICK is not set
@@ -805,6 +804,8 @@ CONFIG_HIDRAW=y
805# CONFIG_DMADEVICES is not set 804# CONFIG_DMADEVICES is not set
806# CONFIG_AUXDISPLAY is not set 805# CONFIG_AUXDISPLAY is not set
807# CONFIG_UIO is not set 806# CONFIG_UIO is not set
807# CONFIG_STAGING is not set
808CONFIG_STAGING_EXCLUDE_BUILD=y
808 809
809# 810#
810# Character devices 811# Character devices
@@ -821,10 +822,9 @@ CONFIG_EXT2_FS=y
821# CONFIG_EXT2_FS_XIP is not set 822# CONFIG_EXT2_FS_XIP is not set
822CONFIG_EXT3_FS=y 823CONFIG_EXT3_FS=y
823# CONFIG_EXT3_FS_XATTR is not set 824# CONFIG_EXT3_FS_XATTR is not set
824CONFIG_EXT4DEV_FS=y 825# CONFIG_EXT4_FS is not set
825# CONFIG_EXT4DEV_FS_XATTR is not set
826CONFIG_JBD=y 826CONFIG_JBD=y
827CONFIG_JBD2=y 827CONFIG_JBD2=m
828CONFIG_REISERFS_FS=m 828CONFIG_REISERFS_FS=m
829# CONFIG_REISERFS_CHECK is not set 829# CONFIG_REISERFS_CHECK is not set
830# CONFIG_REISERFS_PROC_INFO is not set 830# CONFIG_REISERFS_PROC_INFO is not set
@@ -835,6 +835,7 @@ CONFIG_JFS_FS=m
835# CONFIG_JFS_DEBUG is not set 835# CONFIG_JFS_DEBUG is not set
836# CONFIG_JFS_STATISTICS is not set 836# CONFIG_JFS_STATISTICS is not set
837# CONFIG_FS_POSIX_ACL is not set 837# CONFIG_FS_POSIX_ACL is not set
838CONFIG_FILE_LOCKING=y
838CONFIG_XFS_FS=m 839CONFIG_XFS_FS=m
839# CONFIG_XFS_QUOTA is not set 840# CONFIG_XFS_QUOTA is not set
840# CONFIG_XFS_POSIX_ACL is not set 841# CONFIG_XFS_POSIX_ACL is not set
@@ -846,6 +847,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
846# CONFIG_OCFS2_FS_STATS is not set 847# CONFIG_OCFS2_FS_STATS is not set
847# CONFIG_OCFS2_DEBUG_MASKLOG is not set 848# CONFIG_OCFS2_DEBUG_MASKLOG is not set
848# CONFIG_OCFS2_DEBUG_FS is not set 849# CONFIG_OCFS2_DEBUG_FS is not set
850# CONFIG_OCFS2_COMPAT_JBD is not set
849CONFIG_DNOTIFY=y 851CONFIG_DNOTIFY=y
850CONFIG_INOTIFY=y 852CONFIG_INOTIFY=y
851CONFIG_INOTIFY_USER=y 853CONFIG_INOTIFY_USER=y
@@ -884,6 +886,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
884CONFIG_PROC_FS=y 886CONFIG_PROC_FS=y
885CONFIG_PROC_KCORE=y 887CONFIG_PROC_KCORE=y
886CONFIG_PROC_SYSCTL=y 888CONFIG_PROC_SYSCTL=y
889CONFIG_PROC_PAGE_MONITOR=y
887CONFIG_SYSFS=y 890CONFIG_SYSFS=y
888CONFIG_TMPFS=y 891CONFIG_TMPFS=y
889# CONFIG_TMPFS_POSIX_ACL is not set 892# CONFIG_TMPFS_POSIX_ACL is not set
@@ -925,6 +928,7 @@ CONFIG_LOCKD_V4=y
925CONFIG_EXPORTFS=m 928CONFIG_EXPORTFS=m
926CONFIG_NFS_COMMON=y 929CONFIG_NFS_COMMON=y
927CONFIG_SUNRPC=m 930CONFIG_SUNRPC=m
931# CONFIG_SUNRPC_REGISTER_V4 is not set
928# CONFIG_RPCSEC_GSS_KRB5 is not set 932# CONFIG_RPCSEC_GSS_KRB5 is not set
929# CONFIG_RPCSEC_GSS_SPKM3 is not set 933# CONFIG_RPCSEC_GSS_SPKM3 is not set
930CONFIG_SMB_FS=m 934CONFIG_SMB_FS=m
@@ -998,7 +1002,13 @@ CONFIG_MAGIC_SYSRQ=y
998# CONFIG_DEBUG_KERNEL is not set 1002# CONFIG_DEBUG_KERNEL is not set
999CONFIG_DEBUG_BUGVERBOSE=y 1003CONFIG_DEBUG_BUGVERBOSE=y
1000CONFIG_DEBUG_MEMORY_INIT=y 1004CONFIG_DEBUG_MEMORY_INIT=y
1005# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1001CONFIG_SYSCTL_SYSCALL_CHECK=y 1006CONFIG_SYSCTL_SYSCALL_CHECK=y
1007
1008#
1009# Tracers
1010#
1011# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1002# CONFIG_SAMPLES is not set 1012# CONFIG_SAMPLES is not set
1003 1013
1004# 1014#
@@ -1006,6 +1016,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
1006# 1016#
1007# CONFIG_KEYS is not set 1017# CONFIG_KEYS is not set
1008# CONFIG_SECURITY is not set 1018# CONFIG_SECURITY is not set
1019# CONFIG_SECURITYFS is not set
1009# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1020# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1010CONFIG_XOR_BLOCKS=m 1021CONFIG_XOR_BLOCKS=m
1011CONFIG_ASYNC_CORE=m 1022CONFIG_ASYNC_CORE=m
@@ -1016,10 +1027,12 @@ CONFIG_CRYPTO=y
1016# 1027#
1017# Crypto core or helper 1028# Crypto core or helper
1018# 1029#
1030# CONFIG_CRYPTO_FIPS is not set
1019CONFIG_CRYPTO_ALGAPI=y 1031CONFIG_CRYPTO_ALGAPI=y
1020CONFIG_CRYPTO_AEAD=m 1032CONFIG_CRYPTO_AEAD=y
1021CONFIG_CRYPTO_BLKCIPHER=m 1033CONFIG_CRYPTO_BLKCIPHER=y
1022CONFIG_CRYPTO_HASH=y 1034CONFIG_CRYPTO_HASH=y
1035CONFIG_CRYPTO_RNG=y
1023CONFIG_CRYPTO_MANAGER=y 1036CONFIG_CRYPTO_MANAGER=y
1024CONFIG_CRYPTO_GF128MUL=m 1037CONFIG_CRYPTO_GF128MUL=m
1025CONFIG_CRYPTO_NULL=m 1038CONFIG_CRYPTO_NULL=m
@@ -1093,14 +1106,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1093# 1106#
1094CONFIG_CRYPTO_DEFLATE=m 1107CONFIG_CRYPTO_DEFLATE=m
1095CONFIG_CRYPTO_LZO=m 1108CONFIG_CRYPTO_LZO=m
1109
1110#
1111# Random Number Generation
1112#
1113# CONFIG_CRYPTO_ANSI_CPRNG is not set
1096# CONFIG_CRYPTO_HW is not set 1114# CONFIG_CRYPTO_HW is not set
1097 1115
1098# 1116#
1099# Library routines 1117# Library routines
1100# 1118#
1101CONFIG_BITREVERSE=y 1119CONFIG_BITREVERSE=y
1102# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1103# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1104CONFIG_CRC_CCITT=m 1120CONFIG_CRC_CCITT=m
1105CONFIG_CRC16=y 1121CONFIG_CRC16=y
1106CONFIG_CRC_T10DIF=y 1122CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/bvme6000_defconfig b/arch/m68k/configs/bvme6000_defconfig
index 2e44af0fe54a..d3d9814a91de 100644
--- a/arch/m68k/configs/bvme6000_defconfig
+++ b/arch/m68k/configs/bvme6000_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:03 2008 4# Tue Dec 2 20:27:45 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -151,19 +141,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
151CONFIG_DISCONTIGMEM=y 141CONFIG_DISCONTIGMEM=y
152CONFIG_FLAT_NODE_MEM_MAP=y 142CONFIG_FLAT_NODE_MEM_MAP=y
153CONFIG_NEED_MULTIPLE_NODES=y 143CONFIG_NEED_MULTIPLE_NODES=y
154# CONFIG_SPARSEMEM_STATIC is not set
155# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
156CONFIG_PAGEFLAGS_EXTENDED=y 144CONFIG_PAGEFLAGS_EXTENDED=y
157CONFIG_SPLIT_PTLOCK_CPUS=4 145CONFIG_SPLIT_PTLOCK_CPUS=4
158# CONFIG_RESOURCES_64BIT is not set 146# CONFIG_RESOURCES_64BIT is not set
147# CONFIG_PHYS_ADDR_T_64BIT is not set
159CONFIG_ZONE_DMA_FLAG=1 148CONFIG_ZONE_DMA_FLAG=1
160CONFIG_BOUNCE=y 149CONFIG_BOUNCE=y
161CONFIG_VIRT_TO_BUS=y 150CONFIG_VIRT_TO_BUS=y
151CONFIG_UNEVICTABLE_LRU=y
162 152
163# 153#
164# General setup 154# General setup
165# 155#
166CONFIG_BINFMT_ELF=y 156CONFIG_BINFMT_ELF=y
157# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
158CONFIG_HAVE_AOUT=y
167CONFIG_BINFMT_AOUT=m 159CONFIG_BINFMT_AOUT=m
168CONFIG_BINFMT_MISC=m 160CONFIG_BINFMT_MISC=m
169CONFIG_PROC_HARDWARE=y 161CONFIG_PROC_HARDWARE=y
@@ -212,7 +204,6 @@ CONFIG_INET_TCP_DIAG=m
212CONFIG_TCP_CONG_CUBIC=y 204CONFIG_TCP_CONG_CUBIC=y
213CONFIG_DEFAULT_TCP_CONG="cubic" 205CONFIG_DEFAULT_TCP_CONG="cubic"
214# CONFIG_TCP_MD5SIG is not set 206# CONFIG_TCP_MD5SIG is not set
215# CONFIG_IP_VS is not set
216CONFIG_IPV6=m 207CONFIG_IPV6=m
217CONFIG_IPV6_PRIVACY=y 208CONFIG_IPV6_PRIVACY=y
218CONFIG_IPV6_ROUTER_PREF=y 209CONFIG_IPV6_ROUTER_PREF=y
@@ -262,13 +253,14 @@ CONFIG_NF_CONNTRACK_SANE=m
262CONFIG_NF_CONNTRACK_SIP=m 253CONFIG_NF_CONNTRACK_SIP=m
263CONFIG_NF_CONNTRACK_TFTP=m 254CONFIG_NF_CONNTRACK_TFTP=m
264# CONFIG_NF_CT_NETLINK is not set 255# CONFIG_NF_CT_NETLINK is not set
256# CONFIG_NETFILTER_TPROXY is not set
265CONFIG_NETFILTER_XTABLES=m 257CONFIG_NETFILTER_XTABLES=m
266CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 258CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
267CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 259CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
268CONFIG_NETFILTER_XT_TARGET_DSCP=m 260CONFIG_NETFILTER_XT_TARGET_DSCP=m
269CONFIG_NETFILTER_XT_TARGET_MARK=m 261CONFIG_NETFILTER_XT_TARGET_MARK=m
270CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
271CONFIG_NETFILTER_XT_TARGET_NFLOG=m 262CONFIG_NETFILTER_XT_TARGET_NFLOG=m
263CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
272CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 264CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
273CONFIG_NETFILTER_XT_TARGET_RATEEST=m 265CONFIG_NETFILTER_XT_TARGET_RATEEST=m
274CONFIG_NETFILTER_XT_TARGET_TRACE=m 266CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -282,19 +274,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
282CONFIG_NETFILTER_XT_MATCH_DCCP=m 274CONFIG_NETFILTER_XT_MATCH_DCCP=m
283CONFIG_NETFILTER_XT_MATCH_DSCP=m 275CONFIG_NETFILTER_XT_MATCH_DSCP=m
284CONFIG_NETFILTER_XT_MATCH_ESP=m 276CONFIG_NETFILTER_XT_MATCH_ESP=m
277CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
285CONFIG_NETFILTER_XT_MATCH_HELPER=m 278CONFIG_NETFILTER_XT_MATCH_HELPER=m
286CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 279CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
287CONFIG_NETFILTER_XT_MATCH_LENGTH=m 280CONFIG_NETFILTER_XT_MATCH_LENGTH=m
288CONFIG_NETFILTER_XT_MATCH_LIMIT=m 281CONFIG_NETFILTER_XT_MATCH_LIMIT=m
289CONFIG_NETFILTER_XT_MATCH_MAC=m 282CONFIG_NETFILTER_XT_MATCH_MAC=m
290CONFIG_NETFILTER_XT_MATCH_MARK=m 283CONFIG_NETFILTER_XT_MATCH_MARK=m
284CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
291CONFIG_NETFILTER_XT_MATCH_OWNER=m 285CONFIG_NETFILTER_XT_MATCH_OWNER=m
292CONFIG_NETFILTER_XT_MATCH_POLICY=m 286CONFIG_NETFILTER_XT_MATCH_POLICY=m
293CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
294CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 287CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
295CONFIG_NETFILTER_XT_MATCH_QUOTA=m 288CONFIG_NETFILTER_XT_MATCH_QUOTA=m
296CONFIG_NETFILTER_XT_MATCH_RATEEST=m 289CONFIG_NETFILTER_XT_MATCH_RATEEST=m
297CONFIG_NETFILTER_XT_MATCH_REALM=m 290CONFIG_NETFILTER_XT_MATCH_REALM=m
291CONFIG_NETFILTER_XT_MATCH_RECENT=m
292# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
298CONFIG_NETFILTER_XT_MATCH_SCTP=m 293CONFIG_NETFILTER_XT_MATCH_SCTP=m
299CONFIG_NETFILTER_XT_MATCH_STATE=m 294CONFIG_NETFILTER_XT_MATCH_STATE=m
300CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 295CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -302,20 +297,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
302CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 297CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
303CONFIG_NETFILTER_XT_MATCH_TIME=m 298CONFIG_NETFILTER_XT_MATCH_TIME=m
304CONFIG_NETFILTER_XT_MATCH_U32=m 299CONFIG_NETFILTER_XT_MATCH_U32=m
305CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 300# CONFIG_IP_VS is not set
306 301
307# 302#
308# IP: Netfilter Configuration 303# IP: Netfilter Configuration
309# 304#
305CONFIG_NF_DEFRAG_IPV4=m
310CONFIG_NF_CONNTRACK_IPV4=m 306CONFIG_NF_CONNTRACK_IPV4=m
311CONFIG_NF_CONNTRACK_PROC_COMPAT=y 307CONFIG_NF_CONNTRACK_PROC_COMPAT=y
312CONFIG_IP_NF_QUEUE=m 308CONFIG_IP_NF_QUEUE=m
313CONFIG_IP_NF_IPTABLES=m 309CONFIG_IP_NF_IPTABLES=m
314CONFIG_IP_NF_MATCH_RECENT=m 310CONFIG_IP_NF_MATCH_ADDRTYPE=m
315CONFIG_IP_NF_MATCH_ECN=m
316CONFIG_IP_NF_MATCH_AH=m 311CONFIG_IP_NF_MATCH_AH=m
312CONFIG_IP_NF_MATCH_ECN=m
317CONFIG_IP_NF_MATCH_TTL=m 313CONFIG_IP_NF_MATCH_TTL=m
318CONFIG_IP_NF_MATCH_ADDRTYPE=m
319CONFIG_IP_NF_FILTER=m 314CONFIG_IP_NF_FILTER=m
320CONFIG_IP_NF_TARGET_REJECT=m 315CONFIG_IP_NF_TARGET_REJECT=m
321CONFIG_IP_NF_TARGET_LOG=m 316CONFIG_IP_NF_TARGET_LOG=m
@@ -323,8 +318,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
323CONFIG_NF_NAT=m 318CONFIG_NF_NAT=m
324CONFIG_NF_NAT_NEEDED=y 319CONFIG_NF_NAT_NEEDED=y
325CONFIG_IP_NF_TARGET_MASQUERADE=m 320CONFIG_IP_NF_TARGET_MASQUERADE=m
326CONFIG_IP_NF_TARGET_REDIRECT=m
327CONFIG_IP_NF_TARGET_NETMAP=m 321CONFIG_IP_NF_TARGET_NETMAP=m
322CONFIG_IP_NF_TARGET_REDIRECT=m
328CONFIG_NF_NAT_SNMP_BASIC=m 323CONFIG_NF_NAT_SNMP_BASIC=m
329CONFIG_NF_NAT_PROTO_GRE=m 324CONFIG_NF_NAT_PROTO_GRE=m
330CONFIG_NF_NAT_PROTO_UDPLITE=m 325CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -337,9 +332,9 @@ CONFIG_NF_NAT_PPTP=m
337CONFIG_NF_NAT_H323=m 332CONFIG_NF_NAT_H323=m
338CONFIG_NF_NAT_SIP=m 333CONFIG_NF_NAT_SIP=m
339CONFIG_IP_NF_MANGLE=m 334CONFIG_IP_NF_MANGLE=m
335CONFIG_IP_NF_TARGET_CLUSTERIP=m
340CONFIG_IP_NF_TARGET_ECN=m 336CONFIG_IP_NF_TARGET_ECN=m
341CONFIG_IP_NF_TARGET_TTL=m 337CONFIG_IP_NF_TARGET_TTL=m
342CONFIG_IP_NF_TARGET_CLUSTERIP=m
343CONFIG_IP_NF_RAW=m 338CONFIG_IP_NF_RAW=m
344CONFIG_IP_NF_ARPTABLES=m 339CONFIG_IP_NF_ARPTABLES=m
345CONFIG_IP_NF_ARPFILTER=m 340CONFIG_IP_NF_ARPFILTER=m
@@ -351,16 +346,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
351CONFIG_NF_CONNTRACK_IPV6=m 346CONFIG_NF_CONNTRACK_IPV6=m
352CONFIG_IP6_NF_QUEUE=m 347CONFIG_IP6_NF_QUEUE=m
353CONFIG_IP6_NF_IPTABLES=m 348CONFIG_IP6_NF_IPTABLES=m
354CONFIG_IP6_NF_MATCH_RT=m 349CONFIG_IP6_NF_MATCH_AH=m
355CONFIG_IP6_NF_MATCH_OPTS=m 350CONFIG_IP6_NF_MATCH_EUI64=m
356CONFIG_IP6_NF_MATCH_FRAG=m 351CONFIG_IP6_NF_MATCH_FRAG=m
352CONFIG_IP6_NF_MATCH_OPTS=m
357CONFIG_IP6_NF_MATCH_HL=m 353CONFIG_IP6_NF_MATCH_HL=m
358CONFIG_IP6_NF_MATCH_IPV6HEADER=m 354CONFIG_IP6_NF_MATCH_IPV6HEADER=m
359CONFIG_IP6_NF_MATCH_AH=m
360CONFIG_IP6_NF_MATCH_MH=m 355CONFIG_IP6_NF_MATCH_MH=m
361CONFIG_IP6_NF_MATCH_EUI64=m 356CONFIG_IP6_NF_MATCH_RT=m
362CONFIG_IP6_NF_FILTER=m
363CONFIG_IP6_NF_TARGET_LOG=m 357CONFIG_IP6_NF_TARGET_LOG=m
358CONFIG_IP6_NF_FILTER=m
364CONFIG_IP6_NF_TARGET_REJECT=m 359CONFIG_IP6_NF_TARGET_REJECT=m
365CONFIG_IP6_NF_MANGLE=m 360CONFIG_IP6_NF_MANGLE=m
366CONFIG_IP6_NF_TARGET_HL=m 361CONFIG_IP6_NF_TARGET_HL=m
@@ -387,6 +382,7 @@ CONFIG_SCTP_HMAC_MD5=y
387# CONFIG_TIPC is not set 382# CONFIG_TIPC is not set
388# CONFIG_ATM is not set 383# CONFIG_ATM is not set
389# CONFIG_BRIDGE is not set 384# CONFIG_BRIDGE is not set
385# CONFIG_NET_DSA is not set
390# CONFIG_VLAN_8021Q is not set 386# CONFIG_VLAN_8021Q is not set
391# CONFIG_DECNET is not set 387# CONFIG_DECNET is not set
392CONFIG_LLC=m 388CONFIG_LLC=m
@@ -410,19 +406,8 @@ CONFIG_NET_CLS_ROUTE=y
410# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
411# CONFIG_BT is not set 407# CONFIG_BT is not set
412# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
413 409# CONFIG_PHONET is not set
414# 410# CONFIG_WIRELESS is not set
415# Wireless
416#
417# CONFIG_CFG80211 is not set
418CONFIG_WIRELESS_EXT=y
419# CONFIG_WIRELESS_EXT_SYSFS is not set
420# CONFIG_MAC80211 is not set
421CONFIG_IEEE80211=m
422# CONFIG_IEEE80211_DEBUG is not set
423CONFIG_IEEE80211_CRYPT_WEP=m
424CONFIG_IEEE80211_CRYPT_CCMP=m
425CONFIG_IEEE80211_CRYPT_TKIP=m
426# CONFIG_RFKILL is not set 411# CONFIG_RFKILL is not set
427# CONFIG_NET_9P is not set 412# CONFIG_NET_9P is not set
428 413
@@ -460,6 +445,7 @@ CONFIG_ATA_OVER_ETH=m
460CONFIG_MISC_DEVICES=y 445CONFIG_MISC_DEVICES=y
461# CONFIG_EEPROM_93CX6 is not set 446# CONFIG_EEPROM_93CX6 is not set
462# CONFIG_ENCLOSURE_SERVICES is not set 447# CONFIG_ENCLOSURE_SERVICES is not set
448# CONFIG_C2PORT is not set
463CONFIG_HAVE_IDE=y 449CONFIG_HAVE_IDE=y
464# CONFIG_IDE is not set 450# CONFIG_IDE is not set
465 451
@@ -545,6 +531,9 @@ CONFIG_BVME6000_NET=y
545# CONFIG_IBM_NEW_EMAC_RGMII is not set 531# CONFIG_IBM_NEW_EMAC_RGMII is not set
546# CONFIG_IBM_NEW_EMAC_TAH is not set 532# CONFIG_IBM_NEW_EMAC_TAH is not set
547# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 533# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
534# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
535# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
536# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
548# CONFIG_B44 is not set 537# CONFIG_B44 is not set
549# CONFIG_NETDEV_1000 is not set 538# CONFIG_NETDEV_1000 is not set
550# CONFIG_NETDEV_10000 is not set 539# CONFIG_NETDEV_10000 is not set
@@ -614,6 +603,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
614CONFIG_MOUSE_PS2_SYNAPTICS=y 603CONFIG_MOUSE_PS2_SYNAPTICS=y
615CONFIG_MOUSE_PS2_LIFEBOOK=y 604CONFIG_MOUSE_PS2_LIFEBOOK=y
616CONFIG_MOUSE_PS2_TRACKPOINT=y 605CONFIG_MOUSE_PS2_TRACKPOINT=y
606# CONFIG_MOUSE_PS2_ELANTECH is not set
617# CONFIG_MOUSE_PS2_TOUCHKIT is not set 607# CONFIG_MOUSE_PS2_TOUCHKIT is not set
618CONFIG_MOUSE_SERIAL=m 608CONFIG_MOUSE_SERIAL=m
619# CONFIG_MOUSE_VSXXXAA is not set 609# CONFIG_MOUSE_VSXXXAA is not set
@@ -668,11 +658,11 @@ CONFIG_GEN_RTC_X=y
668# CONFIG_THERMAL is not set 658# CONFIG_THERMAL is not set
669# CONFIG_THERMAL_HWMON is not set 659# CONFIG_THERMAL_HWMON is not set
670# CONFIG_WATCHDOG is not set 660# CONFIG_WATCHDOG is not set
661CONFIG_SSB_POSSIBLE=y
671 662
672# 663#
673# Sonics Silicon Backplane 664# Sonics Silicon Backplane
674# 665#
675CONFIG_SSB_POSSIBLE=y
676# CONFIG_SSB is not set 666# CONFIG_SSB is not set
677 667
678# 668#
@@ -682,6 +672,7 @@ CONFIG_SSB_POSSIBLE=y
682# CONFIG_MFD_SM501 is not set 672# CONFIG_MFD_SM501 is not set
683# CONFIG_HTC_PASIC3 is not set 673# CONFIG_HTC_PASIC3 is not set
684# CONFIG_MFD_TMIO is not set 674# CONFIG_MFD_TMIO is not set
675# CONFIG_REGULATOR is not set
685 676
686# 677#
687# Multimedia devices 678# Multimedia devices
@@ -721,6 +712,12 @@ CONFIG_HID_SUPPORT=y
721CONFIG_HID=m 712CONFIG_HID=m
722# CONFIG_HID_DEBUG is not set 713# CONFIG_HID_DEBUG is not set
723CONFIG_HIDRAW=y 714CONFIG_HIDRAW=y
715# CONFIG_HID_PID is not set
716
717#
718# Special HID drivers
719#
720CONFIG_HID_COMPAT=y
724# CONFIG_USB_SUPPORT is not set 721# CONFIG_USB_SUPPORT is not set
725# CONFIG_MMC is not set 722# CONFIG_MMC is not set
726# CONFIG_MEMSTICK is not set 723# CONFIG_MEMSTICK is not set
@@ -729,6 +726,8 @@ CONFIG_HIDRAW=y
729# CONFIG_RTC_CLASS is not set 726# CONFIG_RTC_CLASS is not set
730# CONFIG_DMADEVICES is not set 727# CONFIG_DMADEVICES is not set
731# CONFIG_UIO is not set 728# CONFIG_UIO is not set
729# CONFIG_STAGING is not set
730CONFIG_STAGING_EXCLUDE_BUILD=y
732 731
733# 732#
734# Character devices 733# Character devices
@@ -744,8 +743,9 @@ CONFIG_EXT2_FS=y
744# CONFIG_EXT2_FS_XIP is not set 743# CONFIG_EXT2_FS_XIP is not set
745CONFIG_EXT3_FS=y 744CONFIG_EXT3_FS=y
746# CONFIG_EXT3_FS_XATTR is not set 745# CONFIG_EXT3_FS_XATTR is not set
747# CONFIG_EXT4DEV_FS is not set 746# CONFIG_EXT4_FS is not set
748CONFIG_JBD=y 747CONFIG_JBD=y
748CONFIG_JBD2=m
749CONFIG_REISERFS_FS=m 749CONFIG_REISERFS_FS=m
750# CONFIG_REISERFS_CHECK is not set 750# CONFIG_REISERFS_CHECK is not set
751# CONFIG_REISERFS_PROC_INFO is not set 751# CONFIG_REISERFS_PROC_INFO is not set
@@ -756,6 +756,7 @@ CONFIG_JFS_FS=m
756# CONFIG_JFS_DEBUG is not set 756# CONFIG_JFS_DEBUG is not set
757# CONFIG_JFS_STATISTICS is not set 757# CONFIG_JFS_STATISTICS is not set
758# CONFIG_FS_POSIX_ACL is not set 758# CONFIG_FS_POSIX_ACL is not set
759CONFIG_FILE_LOCKING=y
759CONFIG_XFS_FS=m 760CONFIG_XFS_FS=m
760# CONFIG_XFS_QUOTA is not set 761# CONFIG_XFS_QUOTA is not set
761# CONFIG_XFS_POSIX_ACL is not set 762# CONFIG_XFS_POSIX_ACL is not set
@@ -767,6 +768,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
767# CONFIG_OCFS2_FS_STATS is not set 768# CONFIG_OCFS2_FS_STATS is not set
768# CONFIG_OCFS2_DEBUG_MASKLOG is not set 769# CONFIG_OCFS2_DEBUG_MASKLOG is not set
769# CONFIG_OCFS2_DEBUG_FS is not set 770# CONFIG_OCFS2_DEBUG_FS is not set
771# CONFIG_OCFS2_COMPAT_JBD is not set
770CONFIG_DNOTIFY=y 772CONFIG_DNOTIFY=y
771CONFIG_INOTIFY=y 773CONFIG_INOTIFY=y
772CONFIG_INOTIFY_USER=y 774CONFIG_INOTIFY_USER=y
@@ -805,6 +807,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
805CONFIG_PROC_FS=y 807CONFIG_PROC_FS=y
806CONFIG_PROC_KCORE=y 808CONFIG_PROC_KCORE=y
807CONFIG_PROC_SYSCTL=y 809CONFIG_PROC_SYSCTL=y
810CONFIG_PROC_PAGE_MONITOR=y
808CONFIG_SYSFS=y 811CONFIG_SYSFS=y
809CONFIG_TMPFS=y 812CONFIG_TMPFS=y
810# CONFIG_TMPFS_POSIX_ACL is not set 813# CONFIG_TMPFS_POSIX_ACL is not set
@@ -848,6 +851,7 @@ CONFIG_EXPORTFS=m
848CONFIG_NFS_COMMON=y 851CONFIG_NFS_COMMON=y
849CONFIG_SUNRPC=y 852CONFIG_SUNRPC=y
850CONFIG_SUNRPC_GSS=y 853CONFIG_SUNRPC_GSS=y
854# CONFIG_SUNRPC_REGISTER_V4 is not set
851CONFIG_RPCSEC_GSS_KRB5=y 855CONFIG_RPCSEC_GSS_KRB5=y
852# CONFIG_RPCSEC_GSS_SPKM3 is not set 856# CONFIG_RPCSEC_GSS_SPKM3 is not set
853CONFIG_SMB_FS=m 857CONFIG_SMB_FS=m
@@ -921,7 +925,13 @@ CONFIG_MAGIC_SYSRQ=y
921# CONFIG_DEBUG_KERNEL is not set 925# CONFIG_DEBUG_KERNEL is not set
922CONFIG_DEBUG_BUGVERBOSE=y 926CONFIG_DEBUG_BUGVERBOSE=y
923CONFIG_DEBUG_MEMORY_INIT=y 927CONFIG_DEBUG_MEMORY_INIT=y
928# CONFIG_RCU_CPU_STALL_DETECTOR is not set
924CONFIG_SYSCTL_SYSCALL_CHECK=y 929CONFIG_SYSCTL_SYSCALL_CHECK=y
930
931#
932# Tracers
933#
934# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
925# CONFIG_SAMPLES is not set 935# CONFIG_SAMPLES is not set
926 936
927# 937#
@@ -929,6 +939,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
929# 939#
930# CONFIG_KEYS is not set 940# CONFIG_KEYS is not set
931# CONFIG_SECURITY is not set 941# CONFIG_SECURITY is not set
942# CONFIG_SECURITYFS is not set
932# CONFIG_SECURITY_FILE_CAPABILITIES is not set 943# CONFIG_SECURITY_FILE_CAPABILITIES is not set
933CONFIG_XOR_BLOCKS=m 944CONFIG_XOR_BLOCKS=m
934CONFIG_ASYNC_CORE=m 945CONFIG_ASYNC_CORE=m
@@ -939,10 +950,12 @@ CONFIG_CRYPTO=y
939# 950#
940# Crypto core or helper 951# Crypto core or helper
941# 952#
953# CONFIG_CRYPTO_FIPS is not set
942CONFIG_CRYPTO_ALGAPI=y 954CONFIG_CRYPTO_ALGAPI=y
943CONFIG_CRYPTO_AEAD=m 955CONFIG_CRYPTO_AEAD=y
944CONFIG_CRYPTO_BLKCIPHER=y 956CONFIG_CRYPTO_BLKCIPHER=y
945CONFIG_CRYPTO_HASH=y 957CONFIG_CRYPTO_HASH=y
958CONFIG_CRYPTO_RNG=y
946CONFIG_CRYPTO_MANAGER=y 959CONFIG_CRYPTO_MANAGER=y
947CONFIG_CRYPTO_GF128MUL=m 960CONFIG_CRYPTO_GF128MUL=m
948CONFIG_CRYPTO_NULL=m 961CONFIG_CRYPTO_NULL=m
@@ -1016,14 +1029,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1016# 1029#
1017CONFIG_CRYPTO_DEFLATE=m 1030CONFIG_CRYPTO_DEFLATE=m
1018CONFIG_CRYPTO_LZO=m 1031CONFIG_CRYPTO_LZO=m
1032
1033#
1034# Random Number Generation
1035#
1036# CONFIG_CRYPTO_ANSI_CPRNG is not set
1019# CONFIG_CRYPTO_HW is not set 1037# CONFIG_CRYPTO_HW is not set
1020 1038
1021# 1039#
1022# Library routines 1040# Library routines
1023# 1041#
1024CONFIG_BITREVERSE=m 1042CONFIG_BITREVERSE=m
1025# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1026# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1027CONFIG_CRC_CCITT=m 1043CONFIG_CRC_CCITT=m
1028CONFIG_CRC16=m 1044CONFIG_CRC16=m
1029CONFIG_CRC_T10DIF=y 1045CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/hp300_defconfig b/arch/m68k/configs/hp300_defconfig
index 3570fc89b089..5556ef088d04 100644
--- a/arch/m68k/configs/hp300_defconfig
+++ b/arch/m68k/configs/hp300_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:04 2008 4# Tue Dec 2 20:27:46 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -149,19 +139,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
149CONFIG_DISCONTIGMEM=y 139CONFIG_DISCONTIGMEM=y
150CONFIG_FLAT_NODE_MEM_MAP=y 140CONFIG_FLAT_NODE_MEM_MAP=y
151CONFIG_NEED_MULTIPLE_NODES=y 141CONFIG_NEED_MULTIPLE_NODES=y
152# CONFIG_SPARSEMEM_STATIC is not set
153# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
154CONFIG_PAGEFLAGS_EXTENDED=y 142CONFIG_PAGEFLAGS_EXTENDED=y
155CONFIG_SPLIT_PTLOCK_CPUS=4 143CONFIG_SPLIT_PTLOCK_CPUS=4
156# CONFIG_RESOURCES_64BIT is not set 144# CONFIG_RESOURCES_64BIT is not set
145# CONFIG_PHYS_ADDR_T_64BIT is not set
157CONFIG_ZONE_DMA_FLAG=1 146CONFIG_ZONE_DMA_FLAG=1
158CONFIG_BOUNCE=y 147CONFIG_BOUNCE=y
159CONFIG_VIRT_TO_BUS=y 148CONFIG_VIRT_TO_BUS=y
149CONFIG_UNEVICTABLE_LRU=y
160 150
161# 151#
162# General setup 152# General setup
163# 153#
164CONFIG_BINFMT_ELF=y 154CONFIG_BINFMT_ELF=y
155# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
156CONFIG_HAVE_AOUT=y
165CONFIG_BINFMT_AOUT=m 157CONFIG_BINFMT_AOUT=m
166CONFIG_BINFMT_MISC=m 158CONFIG_BINFMT_MISC=m
167CONFIG_HEARTBEAT=y 159CONFIG_HEARTBEAT=y
@@ -211,7 +203,6 @@ CONFIG_INET_TCP_DIAG=m
211CONFIG_TCP_CONG_CUBIC=y 203CONFIG_TCP_CONG_CUBIC=y
212CONFIG_DEFAULT_TCP_CONG="cubic" 204CONFIG_DEFAULT_TCP_CONG="cubic"
213# CONFIG_TCP_MD5SIG is not set 205# CONFIG_TCP_MD5SIG is not set
214# CONFIG_IP_VS is not set
215CONFIG_IPV6=m 206CONFIG_IPV6=m
216CONFIG_IPV6_PRIVACY=y 207CONFIG_IPV6_PRIVACY=y
217CONFIG_IPV6_ROUTER_PREF=y 208CONFIG_IPV6_ROUTER_PREF=y
@@ -261,13 +252,14 @@ CONFIG_NF_CONNTRACK_SANE=m
261CONFIG_NF_CONNTRACK_SIP=m 252CONFIG_NF_CONNTRACK_SIP=m
262CONFIG_NF_CONNTRACK_TFTP=m 253CONFIG_NF_CONNTRACK_TFTP=m
263# CONFIG_NF_CT_NETLINK is not set 254# CONFIG_NF_CT_NETLINK is not set
255# CONFIG_NETFILTER_TPROXY is not set
264CONFIG_NETFILTER_XTABLES=m 256CONFIG_NETFILTER_XTABLES=m
265CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 257CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
266CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 258CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
267CONFIG_NETFILTER_XT_TARGET_DSCP=m 259CONFIG_NETFILTER_XT_TARGET_DSCP=m
268CONFIG_NETFILTER_XT_TARGET_MARK=m 260CONFIG_NETFILTER_XT_TARGET_MARK=m
269CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
270CONFIG_NETFILTER_XT_TARGET_NFLOG=m 261CONFIG_NETFILTER_XT_TARGET_NFLOG=m
262CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
271CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 263CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
272CONFIG_NETFILTER_XT_TARGET_RATEEST=m 264CONFIG_NETFILTER_XT_TARGET_RATEEST=m
273CONFIG_NETFILTER_XT_TARGET_TRACE=m 265CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -281,19 +273,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
281CONFIG_NETFILTER_XT_MATCH_DCCP=m 273CONFIG_NETFILTER_XT_MATCH_DCCP=m
282CONFIG_NETFILTER_XT_MATCH_DSCP=m 274CONFIG_NETFILTER_XT_MATCH_DSCP=m
283CONFIG_NETFILTER_XT_MATCH_ESP=m 275CONFIG_NETFILTER_XT_MATCH_ESP=m
276CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
284CONFIG_NETFILTER_XT_MATCH_HELPER=m 277CONFIG_NETFILTER_XT_MATCH_HELPER=m
285CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 278CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
286CONFIG_NETFILTER_XT_MATCH_LENGTH=m 279CONFIG_NETFILTER_XT_MATCH_LENGTH=m
287CONFIG_NETFILTER_XT_MATCH_LIMIT=m 280CONFIG_NETFILTER_XT_MATCH_LIMIT=m
288CONFIG_NETFILTER_XT_MATCH_MAC=m 281CONFIG_NETFILTER_XT_MATCH_MAC=m
289CONFIG_NETFILTER_XT_MATCH_MARK=m 282CONFIG_NETFILTER_XT_MATCH_MARK=m
283CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
290CONFIG_NETFILTER_XT_MATCH_OWNER=m 284CONFIG_NETFILTER_XT_MATCH_OWNER=m
291CONFIG_NETFILTER_XT_MATCH_POLICY=m 285CONFIG_NETFILTER_XT_MATCH_POLICY=m
292CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
293CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 286CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
294CONFIG_NETFILTER_XT_MATCH_QUOTA=m 287CONFIG_NETFILTER_XT_MATCH_QUOTA=m
295CONFIG_NETFILTER_XT_MATCH_RATEEST=m 288CONFIG_NETFILTER_XT_MATCH_RATEEST=m
296CONFIG_NETFILTER_XT_MATCH_REALM=m 289CONFIG_NETFILTER_XT_MATCH_REALM=m
290CONFIG_NETFILTER_XT_MATCH_RECENT=m
291# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
297CONFIG_NETFILTER_XT_MATCH_SCTP=m 292CONFIG_NETFILTER_XT_MATCH_SCTP=m
298CONFIG_NETFILTER_XT_MATCH_STATE=m 293CONFIG_NETFILTER_XT_MATCH_STATE=m
299CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 294CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -301,20 +296,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
301CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 296CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
302CONFIG_NETFILTER_XT_MATCH_TIME=m 297CONFIG_NETFILTER_XT_MATCH_TIME=m
303CONFIG_NETFILTER_XT_MATCH_U32=m 298CONFIG_NETFILTER_XT_MATCH_U32=m
304CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 299# CONFIG_IP_VS is not set
305 300
306# 301#
307# IP: Netfilter Configuration 302# IP: Netfilter Configuration
308# 303#
304CONFIG_NF_DEFRAG_IPV4=m
309CONFIG_NF_CONNTRACK_IPV4=m 305CONFIG_NF_CONNTRACK_IPV4=m
310CONFIG_NF_CONNTRACK_PROC_COMPAT=y 306CONFIG_NF_CONNTRACK_PROC_COMPAT=y
311CONFIG_IP_NF_QUEUE=m 307CONFIG_IP_NF_QUEUE=m
312CONFIG_IP_NF_IPTABLES=m 308CONFIG_IP_NF_IPTABLES=m
313CONFIG_IP_NF_MATCH_RECENT=m 309CONFIG_IP_NF_MATCH_ADDRTYPE=m
314CONFIG_IP_NF_MATCH_ECN=m
315CONFIG_IP_NF_MATCH_AH=m 310CONFIG_IP_NF_MATCH_AH=m
311CONFIG_IP_NF_MATCH_ECN=m
316CONFIG_IP_NF_MATCH_TTL=m 312CONFIG_IP_NF_MATCH_TTL=m
317CONFIG_IP_NF_MATCH_ADDRTYPE=m
318CONFIG_IP_NF_FILTER=m 313CONFIG_IP_NF_FILTER=m
319CONFIG_IP_NF_TARGET_REJECT=m 314CONFIG_IP_NF_TARGET_REJECT=m
320CONFIG_IP_NF_TARGET_LOG=m 315CONFIG_IP_NF_TARGET_LOG=m
@@ -322,8 +317,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
322CONFIG_NF_NAT=m 317CONFIG_NF_NAT=m
323CONFIG_NF_NAT_NEEDED=y 318CONFIG_NF_NAT_NEEDED=y
324CONFIG_IP_NF_TARGET_MASQUERADE=m 319CONFIG_IP_NF_TARGET_MASQUERADE=m
325CONFIG_IP_NF_TARGET_REDIRECT=m
326CONFIG_IP_NF_TARGET_NETMAP=m 320CONFIG_IP_NF_TARGET_NETMAP=m
321CONFIG_IP_NF_TARGET_REDIRECT=m
327CONFIG_NF_NAT_SNMP_BASIC=m 322CONFIG_NF_NAT_SNMP_BASIC=m
328CONFIG_NF_NAT_PROTO_GRE=m 323CONFIG_NF_NAT_PROTO_GRE=m
329CONFIG_NF_NAT_PROTO_UDPLITE=m 324CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -336,9 +331,9 @@ CONFIG_NF_NAT_PPTP=m
336CONFIG_NF_NAT_H323=m 331CONFIG_NF_NAT_H323=m
337CONFIG_NF_NAT_SIP=m 332CONFIG_NF_NAT_SIP=m
338CONFIG_IP_NF_MANGLE=m 333CONFIG_IP_NF_MANGLE=m
334CONFIG_IP_NF_TARGET_CLUSTERIP=m
339CONFIG_IP_NF_TARGET_ECN=m 335CONFIG_IP_NF_TARGET_ECN=m
340CONFIG_IP_NF_TARGET_TTL=m 336CONFIG_IP_NF_TARGET_TTL=m
341CONFIG_IP_NF_TARGET_CLUSTERIP=m
342CONFIG_IP_NF_RAW=m 337CONFIG_IP_NF_RAW=m
343CONFIG_IP_NF_ARPTABLES=m 338CONFIG_IP_NF_ARPTABLES=m
344CONFIG_IP_NF_ARPFILTER=m 339CONFIG_IP_NF_ARPFILTER=m
@@ -350,16 +345,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
350CONFIG_NF_CONNTRACK_IPV6=m 345CONFIG_NF_CONNTRACK_IPV6=m
351CONFIG_IP6_NF_QUEUE=m 346CONFIG_IP6_NF_QUEUE=m
352CONFIG_IP6_NF_IPTABLES=m 347CONFIG_IP6_NF_IPTABLES=m
353CONFIG_IP6_NF_MATCH_RT=m 348CONFIG_IP6_NF_MATCH_AH=m
354CONFIG_IP6_NF_MATCH_OPTS=m 349CONFIG_IP6_NF_MATCH_EUI64=m
355CONFIG_IP6_NF_MATCH_FRAG=m 350CONFIG_IP6_NF_MATCH_FRAG=m
351CONFIG_IP6_NF_MATCH_OPTS=m
356CONFIG_IP6_NF_MATCH_HL=m 352CONFIG_IP6_NF_MATCH_HL=m
357CONFIG_IP6_NF_MATCH_IPV6HEADER=m 353CONFIG_IP6_NF_MATCH_IPV6HEADER=m
358CONFIG_IP6_NF_MATCH_AH=m
359CONFIG_IP6_NF_MATCH_MH=m 354CONFIG_IP6_NF_MATCH_MH=m
360CONFIG_IP6_NF_MATCH_EUI64=m 355CONFIG_IP6_NF_MATCH_RT=m
361CONFIG_IP6_NF_FILTER=m
362CONFIG_IP6_NF_TARGET_LOG=m 356CONFIG_IP6_NF_TARGET_LOG=m
357CONFIG_IP6_NF_FILTER=m
363CONFIG_IP6_NF_TARGET_REJECT=m 358CONFIG_IP6_NF_TARGET_REJECT=m
364CONFIG_IP6_NF_MANGLE=m 359CONFIG_IP6_NF_MANGLE=m
365CONFIG_IP6_NF_TARGET_HL=m 360CONFIG_IP6_NF_TARGET_HL=m
@@ -386,6 +381,7 @@ CONFIG_SCTP_HMAC_MD5=y
386# CONFIG_TIPC is not set 381# CONFIG_TIPC is not set
387# CONFIG_ATM is not set 382# CONFIG_ATM is not set
388# CONFIG_BRIDGE is not set 383# CONFIG_BRIDGE is not set
384# CONFIG_NET_DSA is not set
389# CONFIG_VLAN_8021Q is not set 385# CONFIG_VLAN_8021Q is not set
390# CONFIG_DECNET is not set 386# CONFIG_DECNET is not set
391CONFIG_LLC=m 387CONFIG_LLC=m
@@ -409,19 +405,8 @@ CONFIG_NET_CLS_ROUTE=y
409# CONFIG_IRDA is not set 405# CONFIG_IRDA is not set
410# CONFIG_BT is not set 406# CONFIG_BT is not set
411# CONFIG_AF_RXRPC is not set 407# CONFIG_AF_RXRPC is not set
412 408# CONFIG_PHONET is not set
413# 409# CONFIG_WIRELESS is not set
414# Wireless
415#
416# CONFIG_CFG80211 is not set
417CONFIG_WIRELESS_EXT=y
418# CONFIG_WIRELESS_EXT_SYSFS is not set
419# CONFIG_MAC80211 is not set
420CONFIG_IEEE80211=m
421# CONFIG_IEEE80211_DEBUG is not set
422CONFIG_IEEE80211_CRYPT_WEP=m
423CONFIG_IEEE80211_CRYPT_CCMP=m
424CONFIG_IEEE80211_CRYPT_TKIP=m
425# CONFIG_RFKILL is not set 410# CONFIG_RFKILL is not set
426# CONFIG_NET_9P is not set 411# CONFIG_NET_9P is not set
427 412
@@ -459,6 +444,7 @@ CONFIG_ATA_OVER_ETH=m
459CONFIG_MISC_DEVICES=y 444CONFIG_MISC_DEVICES=y
460# CONFIG_EEPROM_93CX6 is not set 445# CONFIG_EEPROM_93CX6 is not set
461# CONFIG_ENCLOSURE_SERVICES is not set 446# CONFIG_ENCLOSURE_SERVICES is not set
447# CONFIG_C2PORT is not set
462CONFIG_HAVE_IDE=y 448CONFIG_HAVE_IDE=y
463# CONFIG_IDE is not set 449# CONFIG_IDE is not set
464 450
@@ -542,6 +528,9 @@ CONFIG_HPLANCE=y
542# CONFIG_IBM_NEW_EMAC_RGMII is not set 528# CONFIG_IBM_NEW_EMAC_RGMII is not set
543# CONFIG_IBM_NEW_EMAC_TAH is not set 529# CONFIG_IBM_NEW_EMAC_TAH is not set
544# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 530# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
531# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
532# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
533# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
545# CONFIG_B44 is not set 534# CONFIG_B44 is not set
546# CONFIG_NETDEV_1000 is not set 535# CONFIG_NETDEV_1000 is not set
547# CONFIG_NETDEV_10000 is not set 536# CONFIG_NETDEV_10000 is not set
@@ -613,6 +602,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
613CONFIG_MOUSE_PS2_SYNAPTICS=y 602CONFIG_MOUSE_PS2_SYNAPTICS=y
614CONFIG_MOUSE_PS2_LIFEBOOK=y 603CONFIG_MOUSE_PS2_LIFEBOOK=y
615CONFIG_MOUSE_PS2_TRACKPOINT=y 604CONFIG_MOUSE_PS2_TRACKPOINT=y
605# CONFIG_MOUSE_PS2_ELANTECH is not set
616# CONFIG_MOUSE_PS2_TOUCHKIT is not set 606# CONFIG_MOUSE_PS2_TOUCHKIT is not set
617CONFIG_MOUSE_SERIAL=m 607CONFIG_MOUSE_SERIAL=m
618# CONFIG_MOUSE_VSXXXAA is not set 608# CONFIG_MOUSE_VSXXXAA is not set
@@ -673,11 +663,11 @@ CONFIG_GEN_RTC_X=y
673# CONFIG_THERMAL is not set 663# CONFIG_THERMAL is not set
674# CONFIG_THERMAL_HWMON is not set 664# CONFIG_THERMAL_HWMON is not set
675# CONFIG_WATCHDOG is not set 665# CONFIG_WATCHDOG is not set
666CONFIG_SSB_POSSIBLE=y
676 667
677# 668#
678# Sonics Silicon Backplane 669# Sonics Silicon Backplane
679# 670#
680CONFIG_SSB_POSSIBLE=y
681# CONFIG_SSB is not set 671# CONFIG_SSB is not set
682 672
683# 673#
@@ -687,6 +677,7 @@ CONFIG_SSB_POSSIBLE=y
687# CONFIG_MFD_SM501 is not set 677# CONFIG_MFD_SM501 is not set
688# CONFIG_HTC_PASIC3 is not set 678# CONFIG_HTC_PASIC3 is not set
689# CONFIG_MFD_TMIO is not set 679# CONFIG_MFD_TMIO is not set
680# CONFIG_REGULATOR is not set
690 681
691# 682#
692# Multimedia devices 683# Multimedia devices
@@ -712,6 +703,7 @@ CONFIG_SSB_POSSIBLE=y
712CONFIG_FB=y 703CONFIG_FB=y
713# CONFIG_FIRMWARE_EDID is not set 704# CONFIG_FIRMWARE_EDID is not set
714# CONFIG_FB_DDC is not set 705# CONFIG_FB_DDC is not set
706# CONFIG_FB_BOOT_VESA_SUPPORT is not set
715# CONFIG_FB_CFB_FILLRECT is not set 707# CONFIG_FB_CFB_FILLRECT is not set
716# CONFIG_FB_CFB_COPYAREA is not set 708# CONFIG_FB_CFB_COPYAREA is not set
717CONFIG_FB_CFB_IMAGEBLIT=y 709CONFIG_FB_CFB_IMAGEBLIT=y
@@ -734,6 +726,8 @@ CONFIG_FB_HP300=y
734# CONFIG_FB_UVESA is not set 726# CONFIG_FB_UVESA is not set
735# CONFIG_FB_S1D13XXX is not set 727# CONFIG_FB_S1D13XXX is not set
736# CONFIG_FB_VIRTUAL is not set 728# CONFIG_FB_VIRTUAL is not set
729# CONFIG_FB_METRONOME is not set
730# CONFIG_FB_MB862XX is not set
737# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 731# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
738 732
739# 733#
@@ -760,6 +754,12 @@ CONFIG_HID_SUPPORT=y
760CONFIG_HID=m 754CONFIG_HID=m
761# CONFIG_HID_DEBUG is not set 755# CONFIG_HID_DEBUG is not set
762CONFIG_HIDRAW=y 756CONFIG_HIDRAW=y
757# CONFIG_HID_PID is not set
758
759#
760# Special HID drivers
761#
762CONFIG_HID_COMPAT=y
763# CONFIG_USB_SUPPORT is not set 763# CONFIG_USB_SUPPORT is not set
764# CONFIG_MMC is not set 764# CONFIG_MMC is not set
765# CONFIG_MEMSTICK is not set 765# CONFIG_MEMSTICK is not set
@@ -768,6 +768,8 @@ CONFIG_HIDRAW=y
768# CONFIG_RTC_CLASS is not set 768# CONFIG_RTC_CLASS is not set
769# CONFIG_DMADEVICES is not set 769# CONFIG_DMADEVICES is not set
770# CONFIG_UIO is not set 770# CONFIG_UIO is not set
771# CONFIG_STAGING is not set
772CONFIG_STAGING_EXCLUDE_BUILD=y
771 773
772# 774#
773# Character devices 775# Character devices
@@ -781,8 +783,9 @@ CONFIG_EXT2_FS=y
781# CONFIG_EXT2_FS_XIP is not set 783# CONFIG_EXT2_FS_XIP is not set
782CONFIG_EXT3_FS=y 784CONFIG_EXT3_FS=y
783# CONFIG_EXT3_FS_XATTR is not set 785# CONFIG_EXT3_FS_XATTR is not set
784# CONFIG_EXT4DEV_FS is not set 786# CONFIG_EXT4_FS is not set
785CONFIG_JBD=y 787CONFIG_JBD=y
788CONFIG_JBD2=m
786CONFIG_REISERFS_FS=m 789CONFIG_REISERFS_FS=m
787# CONFIG_REISERFS_CHECK is not set 790# CONFIG_REISERFS_CHECK is not set
788# CONFIG_REISERFS_PROC_INFO is not set 791# CONFIG_REISERFS_PROC_INFO is not set
@@ -793,6 +796,7 @@ CONFIG_JFS_FS=m
793# CONFIG_JFS_DEBUG is not set 796# CONFIG_JFS_DEBUG is not set
794# CONFIG_JFS_STATISTICS is not set 797# CONFIG_JFS_STATISTICS is not set
795# CONFIG_FS_POSIX_ACL is not set 798# CONFIG_FS_POSIX_ACL is not set
799CONFIG_FILE_LOCKING=y
796CONFIG_XFS_FS=m 800CONFIG_XFS_FS=m
797# CONFIG_XFS_QUOTA is not set 801# CONFIG_XFS_QUOTA is not set
798# CONFIG_XFS_POSIX_ACL is not set 802# CONFIG_XFS_POSIX_ACL is not set
@@ -804,6 +808,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
804# CONFIG_OCFS2_FS_STATS is not set 808# CONFIG_OCFS2_FS_STATS is not set
805# CONFIG_OCFS2_DEBUG_MASKLOG is not set 809# CONFIG_OCFS2_DEBUG_MASKLOG is not set
806# CONFIG_OCFS2_DEBUG_FS is not set 810# CONFIG_OCFS2_DEBUG_FS is not set
811# CONFIG_OCFS2_COMPAT_JBD is not set
807CONFIG_DNOTIFY=y 812CONFIG_DNOTIFY=y
808CONFIG_INOTIFY=y 813CONFIG_INOTIFY=y
809CONFIG_INOTIFY_USER=y 814CONFIG_INOTIFY_USER=y
@@ -842,6 +847,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
842CONFIG_PROC_FS=y 847CONFIG_PROC_FS=y
843CONFIG_PROC_KCORE=y 848CONFIG_PROC_KCORE=y
844CONFIG_PROC_SYSCTL=y 849CONFIG_PROC_SYSCTL=y
850CONFIG_PROC_PAGE_MONITOR=y
845CONFIG_SYSFS=y 851CONFIG_SYSFS=y
846CONFIG_TMPFS=y 852CONFIG_TMPFS=y
847# CONFIG_TMPFS_POSIX_ACL is not set 853# CONFIG_TMPFS_POSIX_ACL is not set
@@ -885,6 +891,7 @@ CONFIG_EXPORTFS=m
885CONFIG_NFS_COMMON=y 891CONFIG_NFS_COMMON=y
886CONFIG_SUNRPC=y 892CONFIG_SUNRPC=y
887CONFIG_SUNRPC_GSS=y 893CONFIG_SUNRPC_GSS=y
894# CONFIG_SUNRPC_REGISTER_V4 is not set
888CONFIG_RPCSEC_GSS_KRB5=y 895CONFIG_RPCSEC_GSS_KRB5=y
889# CONFIG_RPCSEC_GSS_SPKM3 is not set 896# CONFIG_RPCSEC_GSS_SPKM3 is not set
890CONFIG_SMB_FS=m 897CONFIG_SMB_FS=m
@@ -957,7 +964,13 @@ CONFIG_MAGIC_SYSRQ=y
957# CONFIG_DEBUG_KERNEL is not set 964# CONFIG_DEBUG_KERNEL is not set
958CONFIG_DEBUG_BUGVERBOSE=y 965CONFIG_DEBUG_BUGVERBOSE=y
959CONFIG_DEBUG_MEMORY_INIT=y 966CONFIG_DEBUG_MEMORY_INIT=y
967# CONFIG_RCU_CPU_STALL_DETECTOR is not set
960CONFIG_SYSCTL_SYSCALL_CHECK=y 968CONFIG_SYSCTL_SYSCALL_CHECK=y
969
970#
971# Tracers
972#
973# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
961# CONFIG_SAMPLES is not set 974# CONFIG_SAMPLES is not set
962 975
963# 976#
@@ -965,6 +978,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
965# 978#
966# CONFIG_KEYS is not set 979# CONFIG_KEYS is not set
967# CONFIG_SECURITY is not set 980# CONFIG_SECURITY is not set
981# CONFIG_SECURITYFS is not set
968# CONFIG_SECURITY_FILE_CAPABILITIES is not set 982# CONFIG_SECURITY_FILE_CAPABILITIES is not set
969CONFIG_XOR_BLOCKS=m 983CONFIG_XOR_BLOCKS=m
970CONFIG_ASYNC_CORE=m 984CONFIG_ASYNC_CORE=m
@@ -975,10 +989,12 @@ CONFIG_CRYPTO=y
975# 989#
976# Crypto core or helper 990# Crypto core or helper
977# 991#
992# CONFIG_CRYPTO_FIPS is not set
978CONFIG_CRYPTO_ALGAPI=y 993CONFIG_CRYPTO_ALGAPI=y
979CONFIG_CRYPTO_AEAD=m 994CONFIG_CRYPTO_AEAD=y
980CONFIG_CRYPTO_BLKCIPHER=y 995CONFIG_CRYPTO_BLKCIPHER=y
981CONFIG_CRYPTO_HASH=y 996CONFIG_CRYPTO_HASH=y
997CONFIG_CRYPTO_RNG=y
982CONFIG_CRYPTO_MANAGER=y 998CONFIG_CRYPTO_MANAGER=y
983CONFIG_CRYPTO_GF128MUL=m 999CONFIG_CRYPTO_GF128MUL=m
984CONFIG_CRYPTO_NULL=m 1000CONFIG_CRYPTO_NULL=m
@@ -1052,14 +1068,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1052# 1068#
1053CONFIG_CRYPTO_DEFLATE=m 1069CONFIG_CRYPTO_DEFLATE=m
1054CONFIG_CRYPTO_LZO=m 1070CONFIG_CRYPTO_LZO=m
1071
1072#
1073# Random Number Generation
1074#
1075# CONFIG_CRYPTO_ANSI_CPRNG is not set
1055# CONFIG_CRYPTO_HW is not set 1076# CONFIG_CRYPTO_HW is not set
1056 1077
1057# 1078#
1058# Library routines 1079# Library routines
1059# 1080#
1060CONFIG_BITREVERSE=y 1081CONFIG_BITREVERSE=y
1061# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1062# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1063CONFIG_CRC_CCITT=m 1082CONFIG_CRC_CCITT=m
1064CONFIG_CRC16=m 1083CONFIG_CRC16=m
1065CONFIG_CRC_T10DIF=y 1084CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/mac_defconfig b/arch/m68k/configs/mac_defconfig
index db6e8822594a..c6de25724a25 100644
--- a/arch/m68k/configs/mac_defconfig
+++ b/arch/m68k/configs/mac_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:06 2008 4# Tue Dec 2 20:27:47 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125CONFIG_MAC=y 115CONFIG_MAC=y
@@ -150,19 +140,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
150CONFIG_DISCONTIGMEM=y 140CONFIG_DISCONTIGMEM=y
151CONFIG_FLAT_NODE_MEM_MAP=y 141CONFIG_FLAT_NODE_MEM_MAP=y
152CONFIG_NEED_MULTIPLE_NODES=y 142CONFIG_NEED_MULTIPLE_NODES=y
153# CONFIG_SPARSEMEM_STATIC is not set
154# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
155CONFIG_PAGEFLAGS_EXTENDED=y 143CONFIG_PAGEFLAGS_EXTENDED=y
156CONFIG_SPLIT_PTLOCK_CPUS=4 144CONFIG_SPLIT_PTLOCK_CPUS=4
157# CONFIG_RESOURCES_64BIT is not set 145# CONFIG_RESOURCES_64BIT is not set
146# CONFIG_PHYS_ADDR_T_64BIT is not set
158CONFIG_ZONE_DMA_FLAG=1 147CONFIG_ZONE_DMA_FLAG=1
159CONFIG_BOUNCE=y 148CONFIG_BOUNCE=y
160CONFIG_VIRT_TO_BUS=y 149CONFIG_VIRT_TO_BUS=y
150CONFIG_UNEVICTABLE_LRU=y
161 151
162# 152#
163# General setup 153# General setup
164# 154#
165CONFIG_BINFMT_ELF=y 155CONFIG_BINFMT_ELF=y
156# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
157CONFIG_HAVE_AOUT=y
166CONFIG_BINFMT_AOUT=m 158CONFIG_BINFMT_AOUT=m
167CONFIG_BINFMT_MISC=m 159CONFIG_BINFMT_MISC=m
168# CONFIG_HEARTBEAT is not set 160# CONFIG_HEARTBEAT is not set
@@ -209,7 +201,6 @@ CONFIG_INET_TCP_DIAG=m
209CONFIG_TCP_CONG_CUBIC=y 201CONFIG_TCP_CONG_CUBIC=y
210CONFIG_DEFAULT_TCP_CONG="cubic" 202CONFIG_DEFAULT_TCP_CONG="cubic"
211# CONFIG_TCP_MD5SIG is not set 203# CONFIG_TCP_MD5SIG is not set
212# CONFIG_IP_VS is not set
213CONFIG_IPV6=m 204CONFIG_IPV6=m
214CONFIG_IPV6_PRIVACY=y 205CONFIG_IPV6_PRIVACY=y
215CONFIG_IPV6_ROUTER_PREF=y 206CONFIG_IPV6_ROUTER_PREF=y
@@ -259,13 +250,14 @@ CONFIG_NF_CONNTRACK_SANE=m
259CONFIG_NF_CONNTRACK_SIP=m 250CONFIG_NF_CONNTRACK_SIP=m
260CONFIG_NF_CONNTRACK_TFTP=m 251CONFIG_NF_CONNTRACK_TFTP=m
261# CONFIG_NF_CT_NETLINK is not set 252# CONFIG_NF_CT_NETLINK is not set
253# CONFIG_NETFILTER_TPROXY is not set
262CONFIG_NETFILTER_XTABLES=m 254CONFIG_NETFILTER_XTABLES=m
263CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 255CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
264CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 256CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
265CONFIG_NETFILTER_XT_TARGET_DSCP=m 257CONFIG_NETFILTER_XT_TARGET_DSCP=m
266CONFIG_NETFILTER_XT_TARGET_MARK=m 258CONFIG_NETFILTER_XT_TARGET_MARK=m
267CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
268CONFIG_NETFILTER_XT_TARGET_NFLOG=m 259CONFIG_NETFILTER_XT_TARGET_NFLOG=m
260CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
269CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 261CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
270CONFIG_NETFILTER_XT_TARGET_RATEEST=m 262CONFIG_NETFILTER_XT_TARGET_RATEEST=m
271CONFIG_NETFILTER_XT_TARGET_TRACE=m 263CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -279,19 +271,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
279CONFIG_NETFILTER_XT_MATCH_DCCP=m 271CONFIG_NETFILTER_XT_MATCH_DCCP=m
280CONFIG_NETFILTER_XT_MATCH_DSCP=m 272CONFIG_NETFILTER_XT_MATCH_DSCP=m
281CONFIG_NETFILTER_XT_MATCH_ESP=m 273CONFIG_NETFILTER_XT_MATCH_ESP=m
274CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
282CONFIG_NETFILTER_XT_MATCH_HELPER=m 275CONFIG_NETFILTER_XT_MATCH_HELPER=m
283CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 276CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
284CONFIG_NETFILTER_XT_MATCH_LENGTH=m 277CONFIG_NETFILTER_XT_MATCH_LENGTH=m
285CONFIG_NETFILTER_XT_MATCH_LIMIT=m 278CONFIG_NETFILTER_XT_MATCH_LIMIT=m
286CONFIG_NETFILTER_XT_MATCH_MAC=m 279CONFIG_NETFILTER_XT_MATCH_MAC=m
287CONFIG_NETFILTER_XT_MATCH_MARK=m 280CONFIG_NETFILTER_XT_MATCH_MARK=m
281CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
288CONFIG_NETFILTER_XT_MATCH_OWNER=m 282CONFIG_NETFILTER_XT_MATCH_OWNER=m
289CONFIG_NETFILTER_XT_MATCH_POLICY=m 283CONFIG_NETFILTER_XT_MATCH_POLICY=m
290CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
291CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 284CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
292CONFIG_NETFILTER_XT_MATCH_QUOTA=m 285CONFIG_NETFILTER_XT_MATCH_QUOTA=m
293CONFIG_NETFILTER_XT_MATCH_RATEEST=m 286CONFIG_NETFILTER_XT_MATCH_RATEEST=m
294CONFIG_NETFILTER_XT_MATCH_REALM=m 287CONFIG_NETFILTER_XT_MATCH_REALM=m
288CONFIG_NETFILTER_XT_MATCH_RECENT=m
289# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
295CONFIG_NETFILTER_XT_MATCH_SCTP=m 290CONFIG_NETFILTER_XT_MATCH_SCTP=m
296CONFIG_NETFILTER_XT_MATCH_STATE=m 291CONFIG_NETFILTER_XT_MATCH_STATE=m
297CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 292CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -299,20 +294,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
299CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 294CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
300CONFIG_NETFILTER_XT_MATCH_TIME=m 295CONFIG_NETFILTER_XT_MATCH_TIME=m
301CONFIG_NETFILTER_XT_MATCH_U32=m 296CONFIG_NETFILTER_XT_MATCH_U32=m
302CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 297# CONFIG_IP_VS is not set
303 298
304# 299#
305# IP: Netfilter Configuration 300# IP: Netfilter Configuration
306# 301#
302CONFIG_NF_DEFRAG_IPV4=m
307CONFIG_NF_CONNTRACK_IPV4=m 303CONFIG_NF_CONNTRACK_IPV4=m
308CONFIG_NF_CONNTRACK_PROC_COMPAT=y 304CONFIG_NF_CONNTRACK_PROC_COMPAT=y
309CONFIG_IP_NF_QUEUE=m 305CONFIG_IP_NF_QUEUE=m
310CONFIG_IP_NF_IPTABLES=m 306CONFIG_IP_NF_IPTABLES=m
311CONFIG_IP_NF_MATCH_RECENT=m 307CONFIG_IP_NF_MATCH_ADDRTYPE=m
312CONFIG_IP_NF_MATCH_ECN=m
313CONFIG_IP_NF_MATCH_AH=m 308CONFIG_IP_NF_MATCH_AH=m
309CONFIG_IP_NF_MATCH_ECN=m
314CONFIG_IP_NF_MATCH_TTL=m 310CONFIG_IP_NF_MATCH_TTL=m
315CONFIG_IP_NF_MATCH_ADDRTYPE=m
316CONFIG_IP_NF_FILTER=m 311CONFIG_IP_NF_FILTER=m
317CONFIG_IP_NF_TARGET_REJECT=m 312CONFIG_IP_NF_TARGET_REJECT=m
318CONFIG_IP_NF_TARGET_LOG=m 313CONFIG_IP_NF_TARGET_LOG=m
@@ -320,8 +315,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
320CONFIG_NF_NAT=m 315CONFIG_NF_NAT=m
321CONFIG_NF_NAT_NEEDED=y 316CONFIG_NF_NAT_NEEDED=y
322CONFIG_IP_NF_TARGET_MASQUERADE=m 317CONFIG_IP_NF_TARGET_MASQUERADE=m
323CONFIG_IP_NF_TARGET_REDIRECT=m
324CONFIG_IP_NF_TARGET_NETMAP=m 318CONFIG_IP_NF_TARGET_NETMAP=m
319CONFIG_IP_NF_TARGET_REDIRECT=m
325CONFIG_NF_NAT_SNMP_BASIC=m 320CONFIG_NF_NAT_SNMP_BASIC=m
326CONFIG_NF_NAT_PROTO_GRE=m 321CONFIG_NF_NAT_PROTO_GRE=m
327CONFIG_NF_NAT_PROTO_UDPLITE=m 322CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -334,9 +329,9 @@ CONFIG_NF_NAT_PPTP=m
334CONFIG_NF_NAT_H323=m 329CONFIG_NF_NAT_H323=m
335CONFIG_NF_NAT_SIP=m 330CONFIG_NF_NAT_SIP=m
336CONFIG_IP_NF_MANGLE=m 331CONFIG_IP_NF_MANGLE=m
332CONFIG_IP_NF_TARGET_CLUSTERIP=m
337CONFIG_IP_NF_TARGET_ECN=m 333CONFIG_IP_NF_TARGET_ECN=m
338CONFIG_IP_NF_TARGET_TTL=m 334CONFIG_IP_NF_TARGET_TTL=m
339CONFIG_IP_NF_TARGET_CLUSTERIP=m
340CONFIG_IP_NF_RAW=m 335CONFIG_IP_NF_RAW=m
341CONFIG_IP_NF_ARPTABLES=m 336CONFIG_IP_NF_ARPTABLES=m
342CONFIG_IP_NF_ARPFILTER=m 337CONFIG_IP_NF_ARPFILTER=m
@@ -348,16 +343,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
348CONFIG_NF_CONNTRACK_IPV6=m 343CONFIG_NF_CONNTRACK_IPV6=m
349CONFIG_IP6_NF_QUEUE=m 344CONFIG_IP6_NF_QUEUE=m
350CONFIG_IP6_NF_IPTABLES=m 345CONFIG_IP6_NF_IPTABLES=m
351CONFIG_IP6_NF_MATCH_RT=m 346CONFIG_IP6_NF_MATCH_AH=m
352CONFIG_IP6_NF_MATCH_OPTS=m 347CONFIG_IP6_NF_MATCH_EUI64=m
353CONFIG_IP6_NF_MATCH_FRAG=m 348CONFIG_IP6_NF_MATCH_FRAG=m
349CONFIG_IP6_NF_MATCH_OPTS=m
354CONFIG_IP6_NF_MATCH_HL=m 350CONFIG_IP6_NF_MATCH_HL=m
355CONFIG_IP6_NF_MATCH_IPV6HEADER=m 351CONFIG_IP6_NF_MATCH_IPV6HEADER=m
356CONFIG_IP6_NF_MATCH_AH=m
357CONFIG_IP6_NF_MATCH_MH=m 352CONFIG_IP6_NF_MATCH_MH=m
358CONFIG_IP6_NF_MATCH_EUI64=m 353CONFIG_IP6_NF_MATCH_RT=m
359CONFIG_IP6_NF_FILTER=m
360CONFIG_IP6_NF_TARGET_LOG=m 354CONFIG_IP6_NF_TARGET_LOG=m
355CONFIG_IP6_NF_FILTER=m
361CONFIG_IP6_NF_TARGET_REJECT=m 356CONFIG_IP6_NF_TARGET_REJECT=m
362CONFIG_IP6_NF_MANGLE=m 357CONFIG_IP6_NF_MANGLE=m
363CONFIG_IP6_NF_TARGET_HL=m 358CONFIG_IP6_NF_TARGET_HL=m
@@ -384,6 +379,7 @@ CONFIG_SCTP_HMAC_MD5=y
384# CONFIG_TIPC is not set 379# CONFIG_TIPC is not set
385# CONFIG_ATM is not set 380# CONFIG_ATM is not set
386# CONFIG_BRIDGE is not set 381# CONFIG_BRIDGE is not set
382# CONFIG_NET_DSA is not set
387# CONFIG_VLAN_8021Q is not set 383# CONFIG_VLAN_8021Q is not set
388# CONFIG_DECNET is not set 384# CONFIG_DECNET is not set
389CONFIG_LLC=m 385CONFIG_LLC=m
@@ -410,19 +406,8 @@ CONFIG_NET_CLS_ROUTE=y
410# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
411# CONFIG_BT is not set 407# CONFIG_BT is not set
412# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
413 409# CONFIG_PHONET is not set
414# 410# CONFIG_WIRELESS is not set
415# Wireless
416#
417# CONFIG_CFG80211 is not set
418CONFIG_WIRELESS_EXT=y
419# CONFIG_WIRELESS_EXT_SYSFS is not set
420# CONFIG_MAC80211 is not set
421CONFIG_IEEE80211=m
422# CONFIG_IEEE80211_DEBUG is not set
423CONFIG_IEEE80211_CRYPT_WEP=m
424CONFIG_IEEE80211_CRYPT_CCMP=m
425CONFIG_IEEE80211_CRYPT_TKIP=m
426# CONFIG_RFKILL is not set 411# CONFIG_RFKILL is not set
427# CONFIG_NET_9P is not set 412# CONFIG_NET_9P is not set
428 413
@@ -460,21 +445,20 @@ CONFIG_ATA_OVER_ETH=m
460CONFIG_MISC_DEVICES=y 445CONFIG_MISC_DEVICES=y
461# CONFIG_EEPROM_93CX6 is not set 446# CONFIG_EEPROM_93CX6 is not set
462# CONFIG_ENCLOSURE_SERVICES is not set 447# CONFIG_ENCLOSURE_SERVICES is not set
448# CONFIG_C2PORT is not set
463CONFIG_HAVE_IDE=y 449CONFIG_HAVE_IDE=y
464CONFIG_IDE=y 450CONFIG_IDE=y
465CONFIG_BLK_DEV_IDE=y
466 451
467# 452#
468# Please see Documentation/ide/ide.txt for help/info on IDE drives 453# Please see Documentation/ide/ide.txt for help/info on IDE drives
469# 454#
470CONFIG_IDE_ATAPI=y
471# CONFIG_BLK_DEV_IDE_SATA is not set 455# CONFIG_BLK_DEV_IDE_SATA is not set
472CONFIG_BLK_DEV_IDEDISK=y 456CONFIG_IDE_GD=y
473# CONFIG_IDEDISK_MULTI_MODE is not set 457CONFIG_IDE_GD_ATA=y
458# CONFIG_IDE_GD_ATAPI is not set
474CONFIG_BLK_DEV_IDECD=y 459CONFIG_BLK_DEV_IDECD=y
475CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y 460CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
476# CONFIG_BLK_DEV_IDETAPE is not set 461# CONFIG_BLK_DEV_IDETAPE is not set
477CONFIG_BLK_DEV_IDEFLOPPY=m
478# CONFIG_BLK_DEV_IDESCSI is not set 462# CONFIG_BLK_DEV_IDESCSI is not set
479# CONFIG_IDE_TASK_IOCTL is not set 463# CONFIG_IDE_TASK_IOCTL is not set
480CONFIG_IDE_PROC_FS=y 464CONFIG_IDE_PROC_FS=y
@@ -581,6 +565,9 @@ CONFIG_MACMACE=y
581# CONFIG_IBM_NEW_EMAC_RGMII is not set 565# CONFIG_IBM_NEW_EMAC_RGMII is not set
582# CONFIG_IBM_NEW_EMAC_TAH is not set 566# CONFIG_IBM_NEW_EMAC_TAH is not set
583# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 567# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
568# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
569# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
570# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
584# CONFIG_B44 is not set 571# CONFIG_B44 is not set
585# CONFIG_NETDEV_1000 is not set 572# CONFIG_NETDEV_1000 is not set
586# CONFIG_NETDEV_10000 is not set 573# CONFIG_NETDEV_10000 is not set
@@ -650,6 +637,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
650CONFIG_MOUSE_PS2_SYNAPTICS=y 637CONFIG_MOUSE_PS2_SYNAPTICS=y
651CONFIG_MOUSE_PS2_LIFEBOOK=y 638CONFIG_MOUSE_PS2_LIFEBOOK=y
652CONFIG_MOUSE_PS2_TRACKPOINT=y 639CONFIG_MOUSE_PS2_TRACKPOINT=y
640# CONFIG_MOUSE_PS2_ELANTECH is not set
653# CONFIG_MOUSE_PS2_TOUCHKIT is not set 641# CONFIG_MOUSE_PS2_TOUCHKIT is not set
654CONFIG_MOUSE_SERIAL=m 642CONFIG_MOUSE_SERIAL=m
655# CONFIG_MOUSE_VSXXXAA is not set 643# CONFIG_MOUSE_VSXXXAA is not set
@@ -706,11 +694,11 @@ CONFIG_GEN_RTC_X=y
706# CONFIG_THERMAL is not set 694# CONFIG_THERMAL is not set
707# CONFIG_THERMAL_HWMON is not set 695# CONFIG_THERMAL_HWMON is not set
708# CONFIG_WATCHDOG is not set 696# CONFIG_WATCHDOG is not set
697CONFIG_SSB_POSSIBLE=y
709 698
710# 699#
711# Sonics Silicon Backplane 700# Sonics Silicon Backplane
712# 701#
713CONFIG_SSB_POSSIBLE=y
714# CONFIG_SSB is not set 702# CONFIG_SSB is not set
715 703
716# 704#
@@ -720,6 +708,7 @@ CONFIG_SSB_POSSIBLE=y
720# CONFIG_MFD_SM501 is not set 708# CONFIG_MFD_SM501 is not set
721# CONFIG_HTC_PASIC3 is not set 709# CONFIG_HTC_PASIC3 is not set
722# CONFIG_MFD_TMIO is not set 710# CONFIG_MFD_TMIO is not set
711# CONFIG_REGULATOR is not set
723 712
724# 713#
725# Multimedia devices 714# Multimedia devices
@@ -745,6 +734,7 @@ CONFIG_SSB_POSSIBLE=y
745CONFIG_FB=y 734CONFIG_FB=y
746# CONFIG_FIRMWARE_EDID is not set 735# CONFIG_FIRMWARE_EDID is not set
747# CONFIG_FB_DDC is not set 736# CONFIG_FB_DDC is not set
737# CONFIG_FB_BOOT_VESA_SUPPORT is not set
748CONFIG_FB_CFB_FILLRECT=y 738CONFIG_FB_CFB_FILLRECT=y
749CONFIG_FB_CFB_COPYAREA=y 739CONFIG_FB_CFB_COPYAREA=y
750CONFIG_FB_CFB_IMAGEBLIT=y 740CONFIG_FB_CFB_IMAGEBLIT=y
@@ -768,6 +758,8 @@ CONFIG_FB_MAC=y
768# CONFIG_FB_UVESA is not set 758# CONFIG_FB_UVESA is not set
769# CONFIG_FB_S1D13XXX is not set 759# CONFIG_FB_S1D13XXX is not set
770# CONFIG_FB_VIRTUAL is not set 760# CONFIG_FB_VIRTUAL is not set
761# CONFIG_FB_METRONOME is not set
762# CONFIG_FB_MB862XX is not set
771# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 763# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
772 764
773# 765#
@@ -796,6 +788,12 @@ CONFIG_HID_SUPPORT=y
796CONFIG_HID=m 788CONFIG_HID=m
797# CONFIG_HID_DEBUG is not set 789# CONFIG_HID_DEBUG is not set
798CONFIG_HIDRAW=y 790CONFIG_HIDRAW=y
791# CONFIG_HID_PID is not set
792
793#
794# Special HID drivers
795#
796CONFIG_HID_COMPAT=y
799# CONFIG_USB_SUPPORT is not set 797# CONFIG_USB_SUPPORT is not set
800# CONFIG_MMC is not set 798# CONFIG_MMC is not set
801# CONFIG_MEMSTICK is not set 799# CONFIG_MEMSTICK is not set
@@ -804,6 +802,8 @@ CONFIG_HIDRAW=y
804# CONFIG_RTC_CLASS is not set 802# CONFIG_RTC_CLASS is not set
805# CONFIG_DMADEVICES is not set 803# CONFIG_DMADEVICES is not set
806# CONFIG_UIO is not set 804# CONFIG_UIO is not set
805# CONFIG_STAGING is not set
806CONFIG_STAGING_EXCLUDE_BUILD=y
807 807
808# 808#
809# Character devices 809# Character devices
@@ -820,8 +820,9 @@ CONFIG_EXT2_FS=y
820# CONFIG_EXT2_FS_XIP is not set 820# CONFIG_EXT2_FS_XIP is not set
821CONFIG_EXT3_FS=y 821CONFIG_EXT3_FS=y
822# CONFIG_EXT3_FS_XATTR is not set 822# CONFIG_EXT3_FS_XATTR is not set
823# CONFIG_EXT4DEV_FS is not set 823# CONFIG_EXT4_FS is not set
824CONFIG_JBD=y 824CONFIG_JBD=y
825CONFIG_JBD2=m
825CONFIG_REISERFS_FS=m 826CONFIG_REISERFS_FS=m
826# CONFIG_REISERFS_CHECK is not set 827# CONFIG_REISERFS_CHECK is not set
827# CONFIG_REISERFS_PROC_INFO is not set 828# CONFIG_REISERFS_PROC_INFO is not set
@@ -832,6 +833,7 @@ CONFIG_JFS_FS=m
832# CONFIG_JFS_DEBUG is not set 833# CONFIG_JFS_DEBUG is not set
833# CONFIG_JFS_STATISTICS is not set 834# CONFIG_JFS_STATISTICS is not set
834# CONFIG_FS_POSIX_ACL is not set 835# CONFIG_FS_POSIX_ACL is not set
836CONFIG_FILE_LOCKING=y
835CONFIG_XFS_FS=m 837CONFIG_XFS_FS=m
836# CONFIG_XFS_QUOTA is not set 838# CONFIG_XFS_QUOTA is not set
837# CONFIG_XFS_POSIX_ACL is not set 839# CONFIG_XFS_POSIX_ACL is not set
@@ -843,6 +845,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
843# CONFIG_OCFS2_FS_STATS is not set 845# CONFIG_OCFS2_FS_STATS is not set
844# CONFIG_OCFS2_DEBUG_MASKLOG is not set 846# CONFIG_OCFS2_DEBUG_MASKLOG is not set
845# CONFIG_OCFS2_DEBUG_FS is not set 847# CONFIG_OCFS2_DEBUG_FS is not set
848# CONFIG_OCFS2_COMPAT_JBD is not set
846CONFIG_DNOTIFY=y 849CONFIG_DNOTIFY=y
847CONFIG_INOTIFY=y 850CONFIG_INOTIFY=y
848CONFIG_INOTIFY_USER=y 851CONFIG_INOTIFY_USER=y
@@ -881,6 +884,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
881CONFIG_PROC_FS=y 884CONFIG_PROC_FS=y
882CONFIG_PROC_KCORE=y 885CONFIG_PROC_KCORE=y
883CONFIG_PROC_SYSCTL=y 886CONFIG_PROC_SYSCTL=y
887CONFIG_PROC_PAGE_MONITOR=y
884CONFIG_SYSFS=y 888CONFIG_SYSFS=y
885CONFIG_TMPFS=y 889CONFIG_TMPFS=y
886# CONFIG_TMPFS_POSIX_ACL is not set 890# CONFIG_TMPFS_POSIX_ACL is not set
@@ -923,6 +927,7 @@ CONFIG_EXPORTFS=m
923CONFIG_NFS_COMMON=y 927CONFIG_NFS_COMMON=y
924CONFIG_SUNRPC=m 928CONFIG_SUNRPC=m
925CONFIG_SUNRPC_GSS=m 929CONFIG_SUNRPC_GSS=m
930# CONFIG_SUNRPC_REGISTER_V4 is not set
926CONFIG_RPCSEC_GSS_KRB5=m 931CONFIG_RPCSEC_GSS_KRB5=m
927# CONFIG_RPCSEC_GSS_SPKM3 is not set 932# CONFIG_RPCSEC_GSS_SPKM3 is not set
928CONFIG_SMB_FS=m 933CONFIG_SMB_FS=m
@@ -996,7 +1001,13 @@ CONFIG_MAGIC_SYSRQ=y
996# CONFIG_DEBUG_KERNEL is not set 1001# CONFIG_DEBUG_KERNEL is not set
997CONFIG_DEBUG_BUGVERBOSE=y 1002CONFIG_DEBUG_BUGVERBOSE=y
998CONFIG_DEBUG_MEMORY_INIT=y 1003CONFIG_DEBUG_MEMORY_INIT=y
1004# CONFIG_RCU_CPU_STALL_DETECTOR is not set
999CONFIG_SYSCTL_SYSCALL_CHECK=y 1005CONFIG_SYSCTL_SYSCALL_CHECK=y
1006
1007#
1008# Tracers
1009#
1010# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1000# CONFIG_SAMPLES is not set 1011# CONFIG_SAMPLES is not set
1001 1012
1002# 1013#
@@ -1004,6 +1015,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
1004# 1015#
1005# CONFIG_KEYS is not set 1016# CONFIG_KEYS is not set
1006# CONFIG_SECURITY is not set 1017# CONFIG_SECURITY is not set
1018# CONFIG_SECURITYFS is not set
1007# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1019# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1008CONFIG_XOR_BLOCKS=m 1020CONFIG_XOR_BLOCKS=m
1009CONFIG_ASYNC_CORE=m 1021CONFIG_ASYNC_CORE=m
@@ -1014,10 +1026,12 @@ CONFIG_CRYPTO=y
1014# 1026#
1015# Crypto core or helper 1027# Crypto core or helper
1016# 1028#
1029# CONFIG_CRYPTO_FIPS is not set
1017CONFIG_CRYPTO_ALGAPI=y 1030CONFIG_CRYPTO_ALGAPI=y
1018CONFIG_CRYPTO_AEAD=m 1031CONFIG_CRYPTO_AEAD=y
1019CONFIG_CRYPTO_BLKCIPHER=m 1032CONFIG_CRYPTO_BLKCIPHER=y
1020CONFIG_CRYPTO_HASH=y 1033CONFIG_CRYPTO_HASH=y
1034CONFIG_CRYPTO_RNG=y
1021CONFIG_CRYPTO_MANAGER=y 1035CONFIG_CRYPTO_MANAGER=y
1022CONFIG_CRYPTO_GF128MUL=m 1036CONFIG_CRYPTO_GF128MUL=m
1023CONFIG_CRYPTO_NULL=m 1037CONFIG_CRYPTO_NULL=m
@@ -1091,14 +1105,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1091# 1105#
1092CONFIG_CRYPTO_DEFLATE=m 1106CONFIG_CRYPTO_DEFLATE=m
1093CONFIG_CRYPTO_LZO=m 1107CONFIG_CRYPTO_LZO=m
1108
1109#
1110# Random Number Generation
1111#
1112# CONFIG_CRYPTO_ANSI_CPRNG is not set
1094# CONFIG_CRYPTO_HW is not set 1113# CONFIG_CRYPTO_HW is not set
1095 1114
1096# 1115#
1097# Library routines 1116# Library routines
1098# 1117#
1099CONFIG_BITREVERSE=y 1118CONFIG_BITREVERSE=y
1100# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1101# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1102CONFIG_CRC_CCITT=m 1119CONFIG_CRC_CCITT=m
1103CONFIG_CRC16=m 1120CONFIG_CRC16=m
1104CONFIG_CRC_T10DIF=y 1121CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/multi_defconfig b/arch/m68k/configs/multi_defconfig
index 1a806102b999..70693588031e 100644
--- a/arch/m68k/configs/multi_defconfig
+++ b/arch/m68k/configs/multi_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:07 2008 4# Tue Dec 2 20:27:48 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123CONFIG_AMIGA=y 113CONFIG_AMIGA=y
124CONFIG_ATARI=y 114CONFIG_ATARI=y
125CONFIG_MAC=y 115CONFIG_MAC=y
@@ -154,19 +144,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
154CONFIG_DISCONTIGMEM=y 144CONFIG_DISCONTIGMEM=y
155CONFIG_FLAT_NODE_MEM_MAP=y 145CONFIG_FLAT_NODE_MEM_MAP=y
156CONFIG_NEED_MULTIPLE_NODES=y 146CONFIG_NEED_MULTIPLE_NODES=y
157# CONFIG_SPARSEMEM_STATIC is not set
158# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
159CONFIG_PAGEFLAGS_EXTENDED=y 147CONFIG_PAGEFLAGS_EXTENDED=y
160CONFIG_SPLIT_PTLOCK_CPUS=4 148CONFIG_SPLIT_PTLOCK_CPUS=4
161# CONFIG_RESOURCES_64BIT is not set 149# CONFIG_RESOURCES_64BIT is not set
150# CONFIG_PHYS_ADDR_T_64BIT is not set
162CONFIG_ZONE_DMA_FLAG=1 151CONFIG_ZONE_DMA_FLAG=1
163CONFIG_BOUNCE=y 152CONFIG_BOUNCE=y
164CONFIG_VIRT_TO_BUS=y 153CONFIG_VIRT_TO_BUS=y
154CONFIG_UNEVICTABLE_LRU=y
165 155
166# 156#
167# General setup 157# General setup
168# 158#
169CONFIG_BINFMT_ELF=y 159CONFIG_BINFMT_ELF=y
160# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
161CONFIG_HAVE_AOUT=y
170CONFIG_BINFMT_AOUT=m 162CONFIG_BINFMT_AOUT=m
171CONFIG_BINFMT_MISC=m 163CONFIG_BINFMT_MISC=m
172CONFIG_ZORRO=y 164CONFIG_ZORRO=y
@@ -222,7 +214,6 @@ CONFIG_INET_TCP_DIAG=m
222CONFIG_TCP_CONG_CUBIC=y 214CONFIG_TCP_CONG_CUBIC=y
223CONFIG_DEFAULT_TCP_CONG="cubic" 215CONFIG_DEFAULT_TCP_CONG="cubic"
224# CONFIG_TCP_MD5SIG is not set 216# CONFIG_TCP_MD5SIG is not set
225# CONFIG_IP_VS is not set
226CONFIG_IPV6=m 217CONFIG_IPV6=m
227CONFIG_IPV6_PRIVACY=y 218CONFIG_IPV6_PRIVACY=y
228CONFIG_IPV6_ROUTER_PREF=y 219CONFIG_IPV6_ROUTER_PREF=y
@@ -272,13 +263,14 @@ CONFIG_NF_CONNTRACK_SANE=m
272CONFIG_NF_CONNTRACK_SIP=m 263CONFIG_NF_CONNTRACK_SIP=m
273CONFIG_NF_CONNTRACK_TFTP=m 264CONFIG_NF_CONNTRACK_TFTP=m
274# CONFIG_NF_CT_NETLINK is not set 265# CONFIG_NF_CT_NETLINK is not set
266# CONFIG_NETFILTER_TPROXY is not set
275CONFIG_NETFILTER_XTABLES=m 267CONFIG_NETFILTER_XTABLES=m
276CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 268CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
277CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 269CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
278CONFIG_NETFILTER_XT_TARGET_DSCP=m 270CONFIG_NETFILTER_XT_TARGET_DSCP=m
279CONFIG_NETFILTER_XT_TARGET_MARK=m 271CONFIG_NETFILTER_XT_TARGET_MARK=m
280CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
281CONFIG_NETFILTER_XT_TARGET_NFLOG=m 272CONFIG_NETFILTER_XT_TARGET_NFLOG=m
273CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
282CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 274CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
283CONFIG_NETFILTER_XT_TARGET_RATEEST=m 275CONFIG_NETFILTER_XT_TARGET_RATEEST=m
284CONFIG_NETFILTER_XT_TARGET_TRACE=m 276CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -292,19 +284,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
292CONFIG_NETFILTER_XT_MATCH_DCCP=m 284CONFIG_NETFILTER_XT_MATCH_DCCP=m
293CONFIG_NETFILTER_XT_MATCH_DSCP=m 285CONFIG_NETFILTER_XT_MATCH_DSCP=m
294CONFIG_NETFILTER_XT_MATCH_ESP=m 286CONFIG_NETFILTER_XT_MATCH_ESP=m
287CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
295CONFIG_NETFILTER_XT_MATCH_HELPER=m 288CONFIG_NETFILTER_XT_MATCH_HELPER=m
296CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 289CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
297CONFIG_NETFILTER_XT_MATCH_LENGTH=m 290CONFIG_NETFILTER_XT_MATCH_LENGTH=m
298CONFIG_NETFILTER_XT_MATCH_LIMIT=m 291CONFIG_NETFILTER_XT_MATCH_LIMIT=m
299CONFIG_NETFILTER_XT_MATCH_MAC=m 292CONFIG_NETFILTER_XT_MATCH_MAC=m
300CONFIG_NETFILTER_XT_MATCH_MARK=m 293CONFIG_NETFILTER_XT_MATCH_MARK=m
294CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
301CONFIG_NETFILTER_XT_MATCH_OWNER=m 295CONFIG_NETFILTER_XT_MATCH_OWNER=m
302CONFIG_NETFILTER_XT_MATCH_POLICY=m 296CONFIG_NETFILTER_XT_MATCH_POLICY=m
303CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
304CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 297CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
305CONFIG_NETFILTER_XT_MATCH_QUOTA=m 298CONFIG_NETFILTER_XT_MATCH_QUOTA=m
306CONFIG_NETFILTER_XT_MATCH_RATEEST=m 299CONFIG_NETFILTER_XT_MATCH_RATEEST=m
307CONFIG_NETFILTER_XT_MATCH_REALM=m 300CONFIG_NETFILTER_XT_MATCH_REALM=m
301CONFIG_NETFILTER_XT_MATCH_RECENT=m
302# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
308CONFIG_NETFILTER_XT_MATCH_SCTP=m 303CONFIG_NETFILTER_XT_MATCH_SCTP=m
309CONFIG_NETFILTER_XT_MATCH_STATE=m 304CONFIG_NETFILTER_XT_MATCH_STATE=m
310CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 305CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -312,20 +307,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
312CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 307CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
313CONFIG_NETFILTER_XT_MATCH_TIME=m 308CONFIG_NETFILTER_XT_MATCH_TIME=m
314CONFIG_NETFILTER_XT_MATCH_U32=m 309CONFIG_NETFILTER_XT_MATCH_U32=m
315CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 310# CONFIG_IP_VS is not set
316 311
317# 312#
318# IP: Netfilter Configuration 313# IP: Netfilter Configuration
319# 314#
315CONFIG_NF_DEFRAG_IPV4=m
320CONFIG_NF_CONNTRACK_IPV4=m 316CONFIG_NF_CONNTRACK_IPV4=m
321CONFIG_NF_CONNTRACK_PROC_COMPAT=y 317CONFIG_NF_CONNTRACK_PROC_COMPAT=y
322CONFIG_IP_NF_QUEUE=m 318CONFIG_IP_NF_QUEUE=m
323CONFIG_IP_NF_IPTABLES=m 319CONFIG_IP_NF_IPTABLES=m
324CONFIG_IP_NF_MATCH_RECENT=m 320CONFIG_IP_NF_MATCH_ADDRTYPE=m
325CONFIG_IP_NF_MATCH_ECN=m
326CONFIG_IP_NF_MATCH_AH=m 321CONFIG_IP_NF_MATCH_AH=m
322CONFIG_IP_NF_MATCH_ECN=m
327CONFIG_IP_NF_MATCH_TTL=m 323CONFIG_IP_NF_MATCH_TTL=m
328CONFIG_IP_NF_MATCH_ADDRTYPE=m
329CONFIG_IP_NF_FILTER=m 324CONFIG_IP_NF_FILTER=m
330CONFIG_IP_NF_TARGET_REJECT=m 325CONFIG_IP_NF_TARGET_REJECT=m
331CONFIG_IP_NF_TARGET_LOG=m 326CONFIG_IP_NF_TARGET_LOG=m
@@ -333,8 +328,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
333CONFIG_NF_NAT=m 328CONFIG_NF_NAT=m
334CONFIG_NF_NAT_NEEDED=y 329CONFIG_NF_NAT_NEEDED=y
335CONFIG_IP_NF_TARGET_MASQUERADE=m 330CONFIG_IP_NF_TARGET_MASQUERADE=m
336CONFIG_IP_NF_TARGET_REDIRECT=m
337CONFIG_IP_NF_TARGET_NETMAP=m 331CONFIG_IP_NF_TARGET_NETMAP=m
332CONFIG_IP_NF_TARGET_REDIRECT=m
338CONFIG_NF_NAT_SNMP_BASIC=m 333CONFIG_NF_NAT_SNMP_BASIC=m
339CONFIG_NF_NAT_PROTO_GRE=m 334CONFIG_NF_NAT_PROTO_GRE=m
340CONFIG_NF_NAT_PROTO_UDPLITE=m 335CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -347,9 +342,9 @@ CONFIG_NF_NAT_PPTP=m
347CONFIG_NF_NAT_H323=m 342CONFIG_NF_NAT_H323=m
348CONFIG_NF_NAT_SIP=m 343CONFIG_NF_NAT_SIP=m
349CONFIG_IP_NF_MANGLE=m 344CONFIG_IP_NF_MANGLE=m
345CONFIG_IP_NF_TARGET_CLUSTERIP=m
350CONFIG_IP_NF_TARGET_ECN=m 346CONFIG_IP_NF_TARGET_ECN=m
351CONFIG_IP_NF_TARGET_TTL=m 347CONFIG_IP_NF_TARGET_TTL=m
352CONFIG_IP_NF_TARGET_CLUSTERIP=m
353CONFIG_IP_NF_RAW=m 348CONFIG_IP_NF_RAW=m
354CONFIG_IP_NF_ARPTABLES=m 349CONFIG_IP_NF_ARPTABLES=m
355CONFIG_IP_NF_ARPFILTER=m 350CONFIG_IP_NF_ARPFILTER=m
@@ -361,16 +356,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
361CONFIG_NF_CONNTRACK_IPV6=m 356CONFIG_NF_CONNTRACK_IPV6=m
362CONFIG_IP6_NF_QUEUE=m 357CONFIG_IP6_NF_QUEUE=m
363CONFIG_IP6_NF_IPTABLES=m 358CONFIG_IP6_NF_IPTABLES=m
364CONFIG_IP6_NF_MATCH_RT=m 359CONFIG_IP6_NF_MATCH_AH=m
365CONFIG_IP6_NF_MATCH_OPTS=m 360CONFIG_IP6_NF_MATCH_EUI64=m
366CONFIG_IP6_NF_MATCH_FRAG=m 361CONFIG_IP6_NF_MATCH_FRAG=m
362CONFIG_IP6_NF_MATCH_OPTS=m
367CONFIG_IP6_NF_MATCH_HL=m 363CONFIG_IP6_NF_MATCH_HL=m
368CONFIG_IP6_NF_MATCH_IPV6HEADER=m 364CONFIG_IP6_NF_MATCH_IPV6HEADER=m
369CONFIG_IP6_NF_MATCH_AH=m
370CONFIG_IP6_NF_MATCH_MH=m 365CONFIG_IP6_NF_MATCH_MH=m
371CONFIG_IP6_NF_MATCH_EUI64=m 366CONFIG_IP6_NF_MATCH_RT=m
372CONFIG_IP6_NF_FILTER=m
373CONFIG_IP6_NF_TARGET_LOG=m 367CONFIG_IP6_NF_TARGET_LOG=m
368CONFIG_IP6_NF_FILTER=m
374CONFIG_IP6_NF_TARGET_REJECT=m 369CONFIG_IP6_NF_TARGET_REJECT=m
375CONFIG_IP6_NF_MANGLE=m 370CONFIG_IP6_NF_MANGLE=m
376CONFIG_IP6_NF_TARGET_HL=m 371CONFIG_IP6_NF_TARGET_HL=m
@@ -397,6 +392,7 @@ CONFIG_SCTP_HMAC_MD5=y
397# CONFIG_TIPC is not set 392# CONFIG_TIPC is not set
398# CONFIG_ATM is not set 393# CONFIG_ATM is not set
399# CONFIG_BRIDGE is not set 394# CONFIG_BRIDGE is not set
395# CONFIG_NET_DSA is not set
400# CONFIG_VLAN_8021Q is not set 396# CONFIG_VLAN_8021Q is not set
401# CONFIG_DECNET is not set 397# CONFIG_DECNET is not set
402CONFIG_LLC=m 398CONFIG_LLC=m
@@ -424,19 +420,8 @@ CONFIG_NET_CLS_ROUTE=y
424# CONFIG_IRDA is not set 420# CONFIG_IRDA is not set
425# CONFIG_BT is not set 421# CONFIG_BT is not set
426# CONFIG_AF_RXRPC is not set 422# CONFIG_AF_RXRPC is not set
427 423# CONFIG_PHONET is not set
428# 424# CONFIG_WIRELESS is not set
429# Wireless
430#
431# CONFIG_CFG80211 is not set
432CONFIG_WIRELESS_EXT=y
433# CONFIG_WIRELESS_EXT_SYSFS is not set
434# CONFIG_MAC80211 is not set
435CONFIG_IEEE80211=m
436# CONFIG_IEEE80211_DEBUG is not set
437CONFIG_IEEE80211_CRYPT_WEP=m
438CONFIG_IEEE80211_CRYPT_CCMP=m
439CONFIG_IEEE80211_CRYPT_TKIP=m
440# CONFIG_RFKILL is not set 425# CONFIG_RFKILL is not set
441# CONFIG_NET_9P is not set 426# CONFIG_NET_9P is not set
442 427
@@ -486,21 +471,20 @@ CONFIG_ATA_OVER_ETH=m
486CONFIG_MISC_DEVICES=y 471CONFIG_MISC_DEVICES=y
487# CONFIG_EEPROM_93CX6 is not set 472# CONFIG_EEPROM_93CX6 is not set
488# CONFIG_ENCLOSURE_SERVICES is not set 473# CONFIG_ENCLOSURE_SERVICES is not set
474# CONFIG_C2PORT is not set
489CONFIG_HAVE_IDE=y 475CONFIG_HAVE_IDE=y
490CONFIG_IDE=y 476CONFIG_IDE=y
491CONFIG_BLK_DEV_IDE=y
492 477
493# 478#
494# Please see Documentation/ide/ide.txt for help/info on IDE drives 479# Please see Documentation/ide/ide.txt for help/info on IDE drives
495# 480#
496CONFIG_IDE_ATAPI=y
497# CONFIG_BLK_DEV_IDE_SATA is not set 481# CONFIG_BLK_DEV_IDE_SATA is not set
498CONFIG_BLK_DEV_IDEDISK=y 482CONFIG_IDE_GD=y
499# CONFIG_IDEDISK_MULTI_MODE is not set 483CONFIG_IDE_GD_ATA=y
484# CONFIG_IDE_GD_ATAPI is not set
500CONFIG_BLK_DEV_IDECD=y 485CONFIG_BLK_DEV_IDECD=y
501CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y 486CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
502# CONFIG_BLK_DEV_IDETAPE is not set 487# CONFIG_BLK_DEV_IDETAPE is not set
503CONFIG_BLK_DEV_IDEFLOPPY=m
504# CONFIG_BLK_DEV_IDESCSI is not set 488# CONFIG_BLK_DEV_IDESCSI is not set
505# CONFIG_IDE_TASK_IOCTL is not set 489# CONFIG_IDE_TASK_IOCTL is not set
506CONFIG_IDE_PROC_FS=y 490CONFIG_IDE_PROC_FS=y
@@ -629,7 +613,7 @@ CONFIG_VETH=m
629# CONFIG_ARCNET is not set 613# CONFIG_ARCNET is not set
630# CONFIG_PHYLIB is not set 614# CONFIG_PHYLIB is not set
631CONFIG_NET_ETHERNET=y 615CONFIG_NET_ETHERNET=y
632CONFIG_MII=m 616CONFIG_MII=y
633CONFIG_ARIADNE=m 617CONFIG_ARIADNE=m
634CONFIG_A2065=m 618CONFIG_A2065=m
635CONFIG_HYDRA=m 619CONFIG_HYDRA=m
@@ -657,8 +641,12 @@ CONFIG_NE2000=m
657# CONFIG_IBM_NEW_EMAC_RGMII is not set 641# CONFIG_IBM_NEW_EMAC_RGMII is not set
658# CONFIG_IBM_NEW_EMAC_TAH is not set 642# CONFIG_IBM_NEW_EMAC_TAH is not set
659# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 643# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
644# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
645# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
646# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
660# CONFIG_NET_PCI is not set 647# CONFIG_NET_PCI is not set
661# CONFIG_B44 is not set 648# CONFIG_B44 is not set
649# CONFIG_CS89x0 is not set
662# CONFIG_NET_POCKET is not set 650# CONFIG_NET_POCKET is not set
663# CONFIG_NETDEV_1000 is not set 651# CONFIG_NETDEV_1000 is not set
664# CONFIG_NETDEV_10000 is not set 652# CONFIG_NETDEV_10000 is not set
@@ -735,6 +723,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
735CONFIG_MOUSE_PS2_SYNAPTICS=y 723CONFIG_MOUSE_PS2_SYNAPTICS=y
736CONFIG_MOUSE_PS2_LIFEBOOK=y 724CONFIG_MOUSE_PS2_LIFEBOOK=y
737CONFIG_MOUSE_PS2_TRACKPOINT=y 725CONFIG_MOUSE_PS2_TRACKPOINT=y
726# CONFIG_MOUSE_PS2_ELANTECH is not set
738# CONFIG_MOUSE_PS2_TOUCHKIT is not set 727# CONFIG_MOUSE_PS2_TOUCHKIT is not set
739CONFIG_MOUSE_SERIAL=m 728CONFIG_MOUSE_SERIAL=m
740# CONFIG_MOUSE_INPORT is not set 729# CONFIG_MOUSE_INPORT is not set
@@ -832,11 +821,11 @@ CONFIG_GEN_RTC_X=y
832# CONFIG_THERMAL is not set 821# CONFIG_THERMAL is not set
833# CONFIG_THERMAL_HWMON is not set 822# CONFIG_THERMAL_HWMON is not set
834# CONFIG_WATCHDOG is not set 823# CONFIG_WATCHDOG is not set
824CONFIG_SSB_POSSIBLE=y
835 825
836# 826#
837# Sonics Silicon Backplane 827# Sonics Silicon Backplane
838# 828#
839CONFIG_SSB_POSSIBLE=y
840# CONFIG_SSB is not set 829# CONFIG_SSB is not set
841 830
842# 831#
@@ -846,6 +835,7 @@ CONFIG_SSB_POSSIBLE=y
846# CONFIG_MFD_SM501 is not set 835# CONFIG_MFD_SM501 is not set
847# CONFIG_HTC_PASIC3 is not set 836# CONFIG_HTC_PASIC3 is not set
848# CONFIG_MFD_TMIO is not set 837# CONFIG_MFD_TMIO is not set
838# CONFIG_REGULATOR is not set
849 839
850# 840#
851# Multimedia devices 841# Multimedia devices
@@ -871,6 +861,7 @@ CONFIG_SSB_POSSIBLE=y
871CONFIG_FB=y 861CONFIG_FB=y
872# CONFIG_FIRMWARE_EDID is not set 862# CONFIG_FIRMWARE_EDID is not set
873# CONFIG_FB_DDC is not set 863# CONFIG_FB_DDC is not set
864# CONFIG_FB_BOOT_VESA_SUPPORT is not set
874CONFIG_FB_CFB_FILLRECT=y 865CONFIG_FB_CFB_FILLRECT=y
875CONFIG_FB_CFB_COPYAREA=y 866CONFIG_FB_CFB_COPYAREA=y
876CONFIG_FB_CFB_IMAGEBLIT=y 867CONFIG_FB_CFB_IMAGEBLIT=y
@@ -905,6 +896,8 @@ CONFIG_FB_HP300=y
905# CONFIG_FB_S1D13XXX is not set 896# CONFIG_FB_S1D13XXX is not set
906# CONFIG_FB_ATY is not set 897# CONFIG_FB_ATY is not set
907# CONFIG_FB_VIRTUAL is not set 898# CONFIG_FB_VIRTUAL is not set
899# CONFIG_FB_METRONOME is not set
900# CONFIG_FB_MB862XX is not set
908# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 901# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
909 902
910# 903#
@@ -930,6 +923,7 @@ CONFIG_LOGO_LINUX_VGA16=y
930CONFIG_LOGO_LINUX_CLUT224=y 923CONFIG_LOGO_LINUX_CLUT224=y
931CONFIG_LOGO_MAC_CLUT224=y 924CONFIG_LOGO_MAC_CLUT224=y
932CONFIG_SOUND=m 925CONFIG_SOUND=m
926CONFIG_SOUND_OSS_CORE=y
933CONFIG_DMASOUND_ATARI=m 927CONFIG_DMASOUND_ATARI=m
934CONFIG_DMASOUND_PAULA=m 928CONFIG_DMASOUND_PAULA=m
935CONFIG_DMASOUND_Q40=m 929CONFIG_DMASOUND_Q40=m
@@ -938,6 +932,12 @@ CONFIG_HID_SUPPORT=y
938CONFIG_HID=m 932CONFIG_HID=m
939# CONFIG_HID_DEBUG is not set 933# CONFIG_HID_DEBUG is not set
940CONFIG_HIDRAW=y 934CONFIG_HIDRAW=y
935# CONFIG_HID_PID is not set
936
937#
938# Special HID drivers
939#
940CONFIG_HID_COMPAT=y
941# CONFIG_USB_SUPPORT is not set 941# CONFIG_USB_SUPPORT is not set
942# CONFIG_MMC is not set 942# CONFIG_MMC is not set
943# CONFIG_MEMSTICK is not set 943# CONFIG_MEMSTICK is not set
@@ -947,6 +947,8 @@ CONFIG_HIDRAW=y
947# CONFIG_DMADEVICES is not set 947# CONFIG_DMADEVICES is not set
948# CONFIG_AUXDISPLAY is not set 948# CONFIG_AUXDISPLAY is not set
949# CONFIG_UIO is not set 949# CONFIG_UIO is not set
950# CONFIG_STAGING is not set
951CONFIG_STAGING_EXCLUDE_BUILD=y
950 952
951# 953#
952# Character devices 954# Character devices
@@ -973,10 +975,9 @@ CONFIG_EXT2_FS=y
973# CONFIG_EXT2_FS_XIP is not set 975# CONFIG_EXT2_FS_XIP is not set
974CONFIG_EXT3_FS=y 976CONFIG_EXT3_FS=y
975# CONFIG_EXT3_FS_XATTR is not set 977# CONFIG_EXT3_FS_XATTR is not set
976CONFIG_EXT4DEV_FS=y 978# CONFIG_EXT4_FS is not set
977# CONFIG_EXT4DEV_FS_XATTR is not set
978CONFIG_JBD=y 979CONFIG_JBD=y
979CONFIG_JBD2=y 980CONFIG_JBD2=m
980CONFIG_REISERFS_FS=m 981CONFIG_REISERFS_FS=m
981# CONFIG_REISERFS_CHECK is not set 982# CONFIG_REISERFS_CHECK is not set
982# CONFIG_REISERFS_PROC_INFO is not set 983# CONFIG_REISERFS_PROC_INFO is not set
@@ -987,6 +988,7 @@ CONFIG_JFS_FS=m
987# CONFIG_JFS_DEBUG is not set 988# CONFIG_JFS_DEBUG is not set
988# CONFIG_JFS_STATISTICS is not set 989# CONFIG_JFS_STATISTICS is not set
989# CONFIG_FS_POSIX_ACL is not set 990# CONFIG_FS_POSIX_ACL is not set
991CONFIG_FILE_LOCKING=y
990CONFIG_XFS_FS=m 992CONFIG_XFS_FS=m
991# CONFIG_XFS_QUOTA is not set 993# CONFIG_XFS_QUOTA is not set
992# CONFIG_XFS_POSIX_ACL is not set 994# CONFIG_XFS_POSIX_ACL is not set
@@ -998,6 +1000,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
998# CONFIG_OCFS2_FS_STATS is not set 1000# CONFIG_OCFS2_FS_STATS is not set
999# CONFIG_OCFS2_DEBUG_MASKLOG is not set 1001# CONFIG_OCFS2_DEBUG_MASKLOG is not set
1000# CONFIG_OCFS2_DEBUG_FS is not set 1002# CONFIG_OCFS2_DEBUG_FS is not set
1003# CONFIG_OCFS2_COMPAT_JBD is not set
1001CONFIG_DNOTIFY=y 1004CONFIG_DNOTIFY=y
1002CONFIG_INOTIFY=y 1005CONFIG_INOTIFY=y
1003CONFIG_INOTIFY_USER=y 1006CONFIG_INOTIFY_USER=y
@@ -1036,6 +1039,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
1036CONFIG_PROC_FS=y 1039CONFIG_PROC_FS=y
1037CONFIG_PROC_KCORE=y 1040CONFIG_PROC_KCORE=y
1038CONFIG_PROC_SYSCTL=y 1041CONFIG_PROC_SYSCTL=y
1042CONFIG_PROC_PAGE_MONITOR=y
1039CONFIG_SYSFS=y 1043CONFIG_SYSFS=y
1040CONFIG_TMPFS=y 1044CONFIG_TMPFS=y
1041# CONFIG_TMPFS_POSIX_ACL is not set 1045# CONFIG_TMPFS_POSIX_ACL is not set
@@ -1079,6 +1083,7 @@ CONFIG_EXPORTFS=m
1079CONFIG_NFS_COMMON=y 1083CONFIG_NFS_COMMON=y
1080CONFIG_SUNRPC=y 1084CONFIG_SUNRPC=y
1081CONFIG_SUNRPC_GSS=y 1085CONFIG_SUNRPC_GSS=y
1086# CONFIG_SUNRPC_REGISTER_V4 is not set
1082CONFIG_RPCSEC_GSS_KRB5=y 1087CONFIG_RPCSEC_GSS_KRB5=y
1083# CONFIG_RPCSEC_GSS_SPKM3 is not set 1088# CONFIG_RPCSEC_GSS_SPKM3 is not set
1084CONFIG_SMB_FS=m 1089CONFIG_SMB_FS=m
@@ -1156,7 +1161,13 @@ CONFIG_MAGIC_SYSRQ=y
1156# CONFIG_DEBUG_KERNEL is not set 1161# CONFIG_DEBUG_KERNEL is not set
1157CONFIG_DEBUG_BUGVERBOSE=y 1162CONFIG_DEBUG_BUGVERBOSE=y
1158CONFIG_DEBUG_MEMORY_INIT=y 1163CONFIG_DEBUG_MEMORY_INIT=y
1164# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1159CONFIG_SYSCTL_SYSCALL_CHECK=y 1165CONFIG_SYSCTL_SYSCALL_CHECK=y
1166
1167#
1168# Tracers
1169#
1170# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1160# CONFIG_SAMPLES is not set 1171# CONFIG_SAMPLES is not set
1161 1172
1162# 1173#
@@ -1164,6 +1175,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
1164# 1175#
1165# CONFIG_KEYS is not set 1176# CONFIG_KEYS is not set
1166# CONFIG_SECURITY is not set 1177# CONFIG_SECURITY is not set
1178# CONFIG_SECURITYFS is not set
1167# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1179# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1168CONFIG_XOR_BLOCKS=m 1180CONFIG_XOR_BLOCKS=m
1169CONFIG_ASYNC_CORE=m 1181CONFIG_ASYNC_CORE=m
@@ -1174,10 +1186,12 @@ CONFIG_CRYPTO=y
1174# 1186#
1175# Crypto core or helper 1187# Crypto core or helper
1176# 1188#
1189# CONFIG_CRYPTO_FIPS is not set
1177CONFIG_CRYPTO_ALGAPI=y 1190CONFIG_CRYPTO_ALGAPI=y
1178CONFIG_CRYPTO_AEAD=m 1191CONFIG_CRYPTO_AEAD=y
1179CONFIG_CRYPTO_BLKCIPHER=y 1192CONFIG_CRYPTO_BLKCIPHER=y
1180CONFIG_CRYPTO_HASH=y 1193CONFIG_CRYPTO_HASH=y
1194CONFIG_CRYPTO_RNG=y
1181CONFIG_CRYPTO_MANAGER=y 1195CONFIG_CRYPTO_MANAGER=y
1182CONFIG_CRYPTO_GF128MUL=m 1196CONFIG_CRYPTO_GF128MUL=m
1183CONFIG_CRYPTO_NULL=m 1197CONFIG_CRYPTO_NULL=m
@@ -1251,14 +1265,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1251# 1265#
1252CONFIG_CRYPTO_DEFLATE=m 1266CONFIG_CRYPTO_DEFLATE=m
1253CONFIG_CRYPTO_LZO=m 1267CONFIG_CRYPTO_LZO=m
1268
1269#
1270# Random Number Generation
1271#
1272# CONFIG_CRYPTO_ANSI_CPRNG is not set
1254# CONFIG_CRYPTO_HW is not set 1273# CONFIG_CRYPTO_HW is not set
1255 1274
1256# 1275#
1257# Library routines 1276# Library routines
1258# 1277#
1259CONFIG_BITREVERSE=y 1278CONFIG_BITREVERSE=y
1260# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1261# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1262CONFIG_CRC_CCITT=m 1279CONFIG_CRC_CCITT=m
1263CONFIG_CRC16=y 1280CONFIG_CRC16=y
1264CONFIG_CRC_T10DIF=y 1281CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/mvme147_defconfig b/arch/m68k/configs/mvme147_defconfig
index cacb5aef6a37..52d42715bd0b 100644
--- a/arch/m68k/configs/mvme147_defconfig
+++ b/arch/m68k/configs/mvme147_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:08 2008 4# Tue Dec 2 20:27:50 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -151,19 +141,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
151CONFIG_DISCONTIGMEM=y 141CONFIG_DISCONTIGMEM=y
152CONFIG_FLAT_NODE_MEM_MAP=y 142CONFIG_FLAT_NODE_MEM_MAP=y
153CONFIG_NEED_MULTIPLE_NODES=y 143CONFIG_NEED_MULTIPLE_NODES=y
154# CONFIG_SPARSEMEM_STATIC is not set
155# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
156CONFIG_PAGEFLAGS_EXTENDED=y 144CONFIG_PAGEFLAGS_EXTENDED=y
157CONFIG_SPLIT_PTLOCK_CPUS=4 145CONFIG_SPLIT_PTLOCK_CPUS=4
158# CONFIG_RESOURCES_64BIT is not set 146# CONFIG_RESOURCES_64BIT is not set
147# CONFIG_PHYS_ADDR_T_64BIT is not set
159CONFIG_ZONE_DMA_FLAG=1 148CONFIG_ZONE_DMA_FLAG=1
160CONFIG_BOUNCE=y 149CONFIG_BOUNCE=y
161CONFIG_VIRT_TO_BUS=y 150CONFIG_VIRT_TO_BUS=y
151CONFIG_UNEVICTABLE_LRU=y
162 152
163# 153#
164# General setup 154# General setup
165# 155#
166CONFIG_BINFMT_ELF=y 156CONFIG_BINFMT_ELF=y
157# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
158CONFIG_HAVE_AOUT=y
167CONFIG_BINFMT_AOUT=m 159CONFIG_BINFMT_AOUT=m
168CONFIG_BINFMT_MISC=m 160CONFIG_BINFMT_MISC=m
169CONFIG_PROC_HARDWARE=y 161CONFIG_PROC_HARDWARE=y
@@ -212,7 +204,6 @@ CONFIG_INET_TCP_DIAG=m
212CONFIG_TCP_CONG_CUBIC=y 204CONFIG_TCP_CONG_CUBIC=y
213CONFIG_DEFAULT_TCP_CONG="cubic" 205CONFIG_DEFAULT_TCP_CONG="cubic"
214# CONFIG_TCP_MD5SIG is not set 206# CONFIG_TCP_MD5SIG is not set
215# CONFIG_IP_VS is not set
216CONFIG_IPV6=m 207CONFIG_IPV6=m
217CONFIG_IPV6_PRIVACY=y 208CONFIG_IPV6_PRIVACY=y
218CONFIG_IPV6_ROUTER_PREF=y 209CONFIG_IPV6_ROUTER_PREF=y
@@ -262,13 +253,14 @@ CONFIG_NF_CONNTRACK_SANE=m
262CONFIG_NF_CONNTRACK_SIP=m 253CONFIG_NF_CONNTRACK_SIP=m
263CONFIG_NF_CONNTRACK_TFTP=m 254CONFIG_NF_CONNTRACK_TFTP=m
264# CONFIG_NF_CT_NETLINK is not set 255# CONFIG_NF_CT_NETLINK is not set
256# CONFIG_NETFILTER_TPROXY is not set
265CONFIG_NETFILTER_XTABLES=m 257CONFIG_NETFILTER_XTABLES=m
266CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 258CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
267CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 259CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
268CONFIG_NETFILTER_XT_TARGET_DSCP=m 260CONFIG_NETFILTER_XT_TARGET_DSCP=m
269CONFIG_NETFILTER_XT_TARGET_MARK=m 261CONFIG_NETFILTER_XT_TARGET_MARK=m
270CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
271CONFIG_NETFILTER_XT_TARGET_NFLOG=m 262CONFIG_NETFILTER_XT_TARGET_NFLOG=m
263CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
272CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 264CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
273CONFIG_NETFILTER_XT_TARGET_RATEEST=m 265CONFIG_NETFILTER_XT_TARGET_RATEEST=m
274CONFIG_NETFILTER_XT_TARGET_TRACE=m 266CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -282,19 +274,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
282CONFIG_NETFILTER_XT_MATCH_DCCP=m 274CONFIG_NETFILTER_XT_MATCH_DCCP=m
283CONFIG_NETFILTER_XT_MATCH_DSCP=m 275CONFIG_NETFILTER_XT_MATCH_DSCP=m
284CONFIG_NETFILTER_XT_MATCH_ESP=m 276CONFIG_NETFILTER_XT_MATCH_ESP=m
277CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
285CONFIG_NETFILTER_XT_MATCH_HELPER=m 278CONFIG_NETFILTER_XT_MATCH_HELPER=m
286CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 279CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
287CONFIG_NETFILTER_XT_MATCH_LENGTH=m 280CONFIG_NETFILTER_XT_MATCH_LENGTH=m
288CONFIG_NETFILTER_XT_MATCH_LIMIT=m 281CONFIG_NETFILTER_XT_MATCH_LIMIT=m
289CONFIG_NETFILTER_XT_MATCH_MAC=m 282CONFIG_NETFILTER_XT_MATCH_MAC=m
290CONFIG_NETFILTER_XT_MATCH_MARK=m 283CONFIG_NETFILTER_XT_MATCH_MARK=m
284CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
291CONFIG_NETFILTER_XT_MATCH_OWNER=m 285CONFIG_NETFILTER_XT_MATCH_OWNER=m
292CONFIG_NETFILTER_XT_MATCH_POLICY=m 286CONFIG_NETFILTER_XT_MATCH_POLICY=m
293CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
294CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 287CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
295CONFIG_NETFILTER_XT_MATCH_QUOTA=m 288CONFIG_NETFILTER_XT_MATCH_QUOTA=m
296CONFIG_NETFILTER_XT_MATCH_RATEEST=m 289CONFIG_NETFILTER_XT_MATCH_RATEEST=m
297CONFIG_NETFILTER_XT_MATCH_REALM=m 290CONFIG_NETFILTER_XT_MATCH_REALM=m
291CONFIG_NETFILTER_XT_MATCH_RECENT=m
292# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
298CONFIG_NETFILTER_XT_MATCH_SCTP=m 293CONFIG_NETFILTER_XT_MATCH_SCTP=m
299CONFIG_NETFILTER_XT_MATCH_STATE=m 294CONFIG_NETFILTER_XT_MATCH_STATE=m
300CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 295CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -302,20 +297,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
302CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 297CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
303CONFIG_NETFILTER_XT_MATCH_TIME=m 298CONFIG_NETFILTER_XT_MATCH_TIME=m
304CONFIG_NETFILTER_XT_MATCH_U32=m 299CONFIG_NETFILTER_XT_MATCH_U32=m
305CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 300# CONFIG_IP_VS is not set
306 301
307# 302#
308# IP: Netfilter Configuration 303# IP: Netfilter Configuration
309# 304#
305CONFIG_NF_DEFRAG_IPV4=m
310CONFIG_NF_CONNTRACK_IPV4=m 306CONFIG_NF_CONNTRACK_IPV4=m
311CONFIG_NF_CONNTRACK_PROC_COMPAT=y 307CONFIG_NF_CONNTRACK_PROC_COMPAT=y
312CONFIG_IP_NF_QUEUE=m 308CONFIG_IP_NF_QUEUE=m
313CONFIG_IP_NF_IPTABLES=m 309CONFIG_IP_NF_IPTABLES=m
314CONFIG_IP_NF_MATCH_RECENT=m 310CONFIG_IP_NF_MATCH_ADDRTYPE=m
315CONFIG_IP_NF_MATCH_ECN=m
316CONFIG_IP_NF_MATCH_AH=m 311CONFIG_IP_NF_MATCH_AH=m
312CONFIG_IP_NF_MATCH_ECN=m
317CONFIG_IP_NF_MATCH_TTL=m 313CONFIG_IP_NF_MATCH_TTL=m
318CONFIG_IP_NF_MATCH_ADDRTYPE=m
319CONFIG_IP_NF_FILTER=m 314CONFIG_IP_NF_FILTER=m
320CONFIG_IP_NF_TARGET_REJECT=m 315CONFIG_IP_NF_TARGET_REJECT=m
321CONFIG_IP_NF_TARGET_LOG=m 316CONFIG_IP_NF_TARGET_LOG=m
@@ -323,8 +318,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
323CONFIG_NF_NAT=m 318CONFIG_NF_NAT=m
324CONFIG_NF_NAT_NEEDED=y 319CONFIG_NF_NAT_NEEDED=y
325CONFIG_IP_NF_TARGET_MASQUERADE=m 320CONFIG_IP_NF_TARGET_MASQUERADE=m
326CONFIG_IP_NF_TARGET_REDIRECT=m
327CONFIG_IP_NF_TARGET_NETMAP=m 321CONFIG_IP_NF_TARGET_NETMAP=m
322CONFIG_IP_NF_TARGET_REDIRECT=m
328CONFIG_NF_NAT_SNMP_BASIC=m 323CONFIG_NF_NAT_SNMP_BASIC=m
329CONFIG_NF_NAT_PROTO_GRE=m 324CONFIG_NF_NAT_PROTO_GRE=m
330CONFIG_NF_NAT_PROTO_UDPLITE=m 325CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -337,9 +332,9 @@ CONFIG_NF_NAT_PPTP=m
337CONFIG_NF_NAT_H323=m 332CONFIG_NF_NAT_H323=m
338CONFIG_NF_NAT_SIP=m 333CONFIG_NF_NAT_SIP=m
339CONFIG_IP_NF_MANGLE=m 334CONFIG_IP_NF_MANGLE=m
335CONFIG_IP_NF_TARGET_CLUSTERIP=m
340CONFIG_IP_NF_TARGET_ECN=m 336CONFIG_IP_NF_TARGET_ECN=m
341CONFIG_IP_NF_TARGET_TTL=m 337CONFIG_IP_NF_TARGET_TTL=m
342CONFIG_IP_NF_TARGET_CLUSTERIP=m
343CONFIG_IP_NF_RAW=m 338CONFIG_IP_NF_RAW=m
344CONFIG_IP_NF_ARPTABLES=m 339CONFIG_IP_NF_ARPTABLES=m
345CONFIG_IP_NF_ARPFILTER=m 340CONFIG_IP_NF_ARPFILTER=m
@@ -351,16 +346,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
351CONFIG_NF_CONNTRACK_IPV6=m 346CONFIG_NF_CONNTRACK_IPV6=m
352CONFIG_IP6_NF_QUEUE=m 347CONFIG_IP6_NF_QUEUE=m
353CONFIG_IP6_NF_IPTABLES=m 348CONFIG_IP6_NF_IPTABLES=m
354CONFIG_IP6_NF_MATCH_RT=m 349CONFIG_IP6_NF_MATCH_AH=m
355CONFIG_IP6_NF_MATCH_OPTS=m 350CONFIG_IP6_NF_MATCH_EUI64=m
356CONFIG_IP6_NF_MATCH_FRAG=m 351CONFIG_IP6_NF_MATCH_FRAG=m
352CONFIG_IP6_NF_MATCH_OPTS=m
357CONFIG_IP6_NF_MATCH_HL=m 353CONFIG_IP6_NF_MATCH_HL=m
358CONFIG_IP6_NF_MATCH_IPV6HEADER=m 354CONFIG_IP6_NF_MATCH_IPV6HEADER=m
359CONFIG_IP6_NF_MATCH_AH=m
360CONFIG_IP6_NF_MATCH_MH=m 355CONFIG_IP6_NF_MATCH_MH=m
361CONFIG_IP6_NF_MATCH_EUI64=m 356CONFIG_IP6_NF_MATCH_RT=m
362CONFIG_IP6_NF_FILTER=m
363CONFIG_IP6_NF_TARGET_LOG=m 357CONFIG_IP6_NF_TARGET_LOG=m
358CONFIG_IP6_NF_FILTER=m
364CONFIG_IP6_NF_TARGET_REJECT=m 359CONFIG_IP6_NF_TARGET_REJECT=m
365CONFIG_IP6_NF_MANGLE=m 360CONFIG_IP6_NF_MANGLE=m
366CONFIG_IP6_NF_TARGET_HL=m 361CONFIG_IP6_NF_TARGET_HL=m
@@ -387,6 +382,7 @@ CONFIG_SCTP_HMAC_MD5=y
387# CONFIG_TIPC is not set 382# CONFIG_TIPC is not set
388# CONFIG_ATM is not set 383# CONFIG_ATM is not set
389# CONFIG_BRIDGE is not set 384# CONFIG_BRIDGE is not set
385# CONFIG_NET_DSA is not set
390# CONFIG_VLAN_8021Q is not set 386# CONFIG_VLAN_8021Q is not set
391# CONFIG_DECNET is not set 387# CONFIG_DECNET is not set
392CONFIG_LLC=m 388CONFIG_LLC=m
@@ -410,19 +406,8 @@ CONFIG_NET_CLS_ROUTE=y
410# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
411# CONFIG_BT is not set 407# CONFIG_BT is not set
412# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
413 409# CONFIG_PHONET is not set
414# 410# CONFIG_WIRELESS is not set
415# Wireless
416#
417# CONFIG_CFG80211 is not set
418CONFIG_WIRELESS_EXT=y
419# CONFIG_WIRELESS_EXT_SYSFS is not set
420# CONFIG_MAC80211 is not set
421CONFIG_IEEE80211=m
422# CONFIG_IEEE80211_DEBUG is not set
423CONFIG_IEEE80211_CRYPT_WEP=m
424CONFIG_IEEE80211_CRYPT_CCMP=m
425CONFIG_IEEE80211_CRYPT_TKIP=m
426# CONFIG_RFKILL is not set 411# CONFIG_RFKILL is not set
427# CONFIG_NET_9P is not set 412# CONFIG_NET_9P is not set
428 413
@@ -460,6 +445,7 @@ CONFIG_ATA_OVER_ETH=m
460CONFIG_MISC_DEVICES=y 445CONFIG_MISC_DEVICES=y
461# CONFIG_EEPROM_93CX6 is not set 446# CONFIG_EEPROM_93CX6 is not set
462# CONFIG_ENCLOSURE_SERVICES is not set 447# CONFIG_ENCLOSURE_SERVICES is not set
448# CONFIG_C2PORT is not set
463CONFIG_HAVE_IDE=y 449CONFIG_HAVE_IDE=y
464# CONFIG_IDE is not set 450# CONFIG_IDE is not set
465 451
@@ -544,6 +530,9 @@ CONFIG_MVME147_NET=y
544# CONFIG_IBM_NEW_EMAC_RGMII is not set 530# CONFIG_IBM_NEW_EMAC_RGMII is not set
545# CONFIG_IBM_NEW_EMAC_TAH is not set 531# CONFIG_IBM_NEW_EMAC_TAH is not set
546# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 532# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
533# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
534# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
535# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
547# CONFIG_B44 is not set 536# CONFIG_B44 is not set
548# CONFIG_NETDEV_1000 is not set 537# CONFIG_NETDEV_1000 is not set
549# CONFIG_NETDEV_10000 is not set 538# CONFIG_NETDEV_10000 is not set
@@ -613,6 +602,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
613CONFIG_MOUSE_PS2_SYNAPTICS=y 602CONFIG_MOUSE_PS2_SYNAPTICS=y
614CONFIG_MOUSE_PS2_LIFEBOOK=y 603CONFIG_MOUSE_PS2_LIFEBOOK=y
615CONFIG_MOUSE_PS2_TRACKPOINT=y 604CONFIG_MOUSE_PS2_TRACKPOINT=y
605# CONFIG_MOUSE_PS2_ELANTECH is not set
616# CONFIG_MOUSE_PS2_TOUCHKIT is not set 606# CONFIG_MOUSE_PS2_TOUCHKIT is not set
617CONFIG_MOUSE_SERIAL=m 607CONFIG_MOUSE_SERIAL=m
618# CONFIG_MOUSE_VSXXXAA is not set 608# CONFIG_MOUSE_VSXXXAA is not set
@@ -667,11 +657,11 @@ CONFIG_GEN_RTC_X=y
667# CONFIG_THERMAL is not set 657# CONFIG_THERMAL is not set
668# CONFIG_THERMAL_HWMON is not set 658# CONFIG_THERMAL_HWMON is not set
669# CONFIG_WATCHDOG is not set 659# CONFIG_WATCHDOG is not set
660CONFIG_SSB_POSSIBLE=y
670 661
671# 662#
672# Sonics Silicon Backplane 663# Sonics Silicon Backplane
673# 664#
674CONFIG_SSB_POSSIBLE=y
675# CONFIG_SSB is not set 665# CONFIG_SSB is not set
676 666
677# 667#
@@ -681,6 +671,7 @@ CONFIG_SSB_POSSIBLE=y
681# CONFIG_MFD_SM501 is not set 671# CONFIG_MFD_SM501 is not set
682# CONFIG_HTC_PASIC3 is not set 672# CONFIG_HTC_PASIC3 is not set
683# CONFIG_MFD_TMIO is not set 673# CONFIG_MFD_TMIO is not set
674# CONFIG_REGULATOR is not set
684 675
685# 676#
686# Multimedia devices 677# Multimedia devices
@@ -720,6 +711,12 @@ CONFIG_HID_SUPPORT=y
720CONFIG_HID=m 711CONFIG_HID=m
721# CONFIG_HID_DEBUG is not set 712# CONFIG_HID_DEBUG is not set
722CONFIG_HIDRAW=y 713CONFIG_HIDRAW=y
714# CONFIG_HID_PID is not set
715
716#
717# Special HID drivers
718#
719CONFIG_HID_COMPAT=y
723# CONFIG_USB_SUPPORT is not set 720# CONFIG_USB_SUPPORT is not set
724# CONFIG_MMC is not set 721# CONFIG_MMC is not set
725# CONFIG_MEMSTICK is not set 722# CONFIG_MEMSTICK is not set
@@ -728,6 +725,8 @@ CONFIG_HIDRAW=y
728# CONFIG_RTC_CLASS is not set 725# CONFIG_RTC_CLASS is not set
729# CONFIG_DMADEVICES is not set 726# CONFIG_DMADEVICES is not set
730# CONFIG_UIO is not set 727# CONFIG_UIO is not set
728# CONFIG_STAGING is not set
729CONFIG_STAGING_EXCLUDE_BUILD=y
731 730
732# 731#
733# Character devices 732# Character devices
@@ -743,8 +742,9 @@ CONFIG_EXT2_FS=y
743# CONFIG_EXT2_FS_XIP is not set 742# CONFIG_EXT2_FS_XIP is not set
744CONFIG_EXT3_FS=y 743CONFIG_EXT3_FS=y
745# CONFIG_EXT3_FS_XATTR is not set 744# CONFIG_EXT3_FS_XATTR is not set
746# CONFIG_EXT4DEV_FS is not set 745# CONFIG_EXT4_FS is not set
747CONFIG_JBD=y 746CONFIG_JBD=y
747CONFIG_JBD2=m
748CONFIG_REISERFS_FS=m 748CONFIG_REISERFS_FS=m
749# CONFIG_REISERFS_CHECK is not set 749# CONFIG_REISERFS_CHECK is not set
750# CONFIG_REISERFS_PROC_INFO is not set 750# CONFIG_REISERFS_PROC_INFO is not set
@@ -755,6 +755,7 @@ CONFIG_JFS_FS=m
755# CONFIG_JFS_DEBUG is not set 755# CONFIG_JFS_DEBUG is not set
756# CONFIG_JFS_STATISTICS is not set 756# CONFIG_JFS_STATISTICS is not set
757# CONFIG_FS_POSIX_ACL is not set 757# CONFIG_FS_POSIX_ACL is not set
758CONFIG_FILE_LOCKING=y
758CONFIG_XFS_FS=m 759CONFIG_XFS_FS=m
759# CONFIG_XFS_QUOTA is not set 760# CONFIG_XFS_QUOTA is not set
760# CONFIG_XFS_POSIX_ACL is not set 761# CONFIG_XFS_POSIX_ACL is not set
@@ -766,6 +767,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
766# CONFIG_OCFS2_FS_STATS is not set 767# CONFIG_OCFS2_FS_STATS is not set
767# CONFIG_OCFS2_DEBUG_MASKLOG is not set 768# CONFIG_OCFS2_DEBUG_MASKLOG is not set
768# CONFIG_OCFS2_DEBUG_FS is not set 769# CONFIG_OCFS2_DEBUG_FS is not set
770# CONFIG_OCFS2_COMPAT_JBD is not set
769CONFIG_DNOTIFY=y 771CONFIG_DNOTIFY=y
770CONFIG_INOTIFY=y 772CONFIG_INOTIFY=y
771CONFIG_INOTIFY_USER=y 773CONFIG_INOTIFY_USER=y
@@ -804,6 +806,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
804CONFIG_PROC_FS=y 806CONFIG_PROC_FS=y
805CONFIG_PROC_KCORE=y 807CONFIG_PROC_KCORE=y
806CONFIG_PROC_SYSCTL=y 808CONFIG_PROC_SYSCTL=y
809CONFIG_PROC_PAGE_MONITOR=y
807CONFIG_SYSFS=y 810CONFIG_SYSFS=y
808CONFIG_TMPFS=y 811CONFIG_TMPFS=y
809# CONFIG_TMPFS_POSIX_ACL is not set 812# CONFIG_TMPFS_POSIX_ACL is not set
@@ -847,6 +850,7 @@ CONFIG_EXPORTFS=m
847CONFIG_NFS_COMMON=y 850CONFIG_NFS_COMMON=y
848CONFIG_SUNRPC=y 851CONFIG_SUNRPC=y
849CONFIG_SUNRPC_GSS=y 852CONFIG_SUNRPC_GSS=y
853# CONFIG_SUNRPC_REGISTER_V4 is not set
850CONFIG_RPCSEC_GSS_KRB5=y 854CONFIG_RPCSEC_GSS_KRB5=y
851# CONFIG_RPCSEC_GSS_SPKM3 is not set 855# CONFIG_RPCSEC_GSS_SPKM3 is not set
852CONFIG_SMB_FS=m 856CONFIG_SMB_FS=m
@@ -920,7 +924,13 @@ CONFIG_MAGIC_SYSRQ=y
920# CONFIG_DEBUG_KERNEL is not set 924# CONFIG_DEBUG_KERNEL is not set
921CONFIG_DEBUG_BUGVERBOSE=y 925CONFIG_DEBUG_BUGVERBOSE=y
922CONFIG_DEBUG_MEMORY_INIT=y 926CONFIG_DEBUG_MEMORY_INIT=y
927# CONFIG_RCU_CPU_STALL_DETECTOR is not set
923CONFIG_SYSCTL_SYSCALL_CHECK=y 928CONFIG_SYSCTL_SYSCALL_CHECK=y
929
930#
931# Tracers
932#
933# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
924# CONFIG_SAMPLES is not set 934# CONFIG_SAMPLES is not set
925 935
926# 936#
@@ -928,6 +938,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
928# 938#
929# CONFIG_KEYS is not set 939# CONFIG_KEYS is not set
930# CONFIG_SECURITY is not set 940# CONFIG_SECURITY is not set
941# CONFIG_SECURITYFS is not set
931# CONFIG_SECURITY_FILE_CAPABILITIES is not set 942# CONFIG_SECURITY_FILE_CAPABILITIES is not set
932CONFIG_XOR_BLOCKS=m 943CONFIG_XOR_BLOCKS=m
933CONFIG_ASYNC_CORE=m 944CONFIG_ASYNC_CORE=m
@@ -938,10 +949,12 @@ CONFIG_CRYPTO=y
938# 949#
939# Crypto core or helper 950# Crypto core or helper
940# 951#
952# CONFIG_CRYPTO_FIPS is not set
941CONFIG_CRYPTO_ALGAPI=y 953CONFIG_CRYPTO_ALGAPI=y
942CONFIG_CRYPTO_AEAD=m 954CONFIG_CRYPTO_AEAD=y
943CONFIG_CRYPTO_BLKCIPHER=y 955CONFIG_CRYPTO_BLKCIPHER=y
944CONFIG_CRYPTO_HASH=y 956CONFIG_CRYPTO_HASH=y
957CONFIG_CRYPTO_RNG=y
945CONFIG_CRYPTO_MANAGER=y 958CONFIG_CRYPTO_MANAGER=y
946CONFIG_CRYPTO_GF128MUL=m 959CONFIG_CRYPTO_GF128MUL=m
947CONFIG_CRYPTO_NULL=m 960CONFIG_CRYPTO_NULL=m
@@ -1015,14 +1028,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1015# 1028#
1016CONFIG_CRYPTO_DEFLATE=m 1029CONFIG_CRYPTO_DEFLATE=m
1017CONFIG_CRYPTO_LZO=m 1030CONFIG_CRYPTO_LZO=m
1031
1032#
1033# Random Number Generation
1034#
1035# CONFIG_CRYPTO_ANSI_CPRNG is not set
1018# CONFIG_CRYPTO_HW is not set 1036# CONFIG_CRYPTO_HW is not set
1019 1037
1020# 1038#
1021# Library routines 1039# Library routines
1022# 1040#
1023CONFIG_BITREVERSE=y 1041CONFIG_BITREVERSE=y
1024# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1025# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1026CONFIG_CRC_CCITT=m 1042CONFIG_CRC_CCITT=m
1027CONFIG_CRC16=m 1043CONFIG_CRC16=m
1028CONFIG_CRC_T10DIF=y 1044CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/mvme16x_defconfig b/arch/m68k/configs/mvme16x_defconfig
index a183e25e348d..3403ed2eda79 100644
--- a/arch/m68k/configs/mvme16x_defconfig
+++ b/arch/m68k/configs/mvme16x_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:09 2008 4# Tue Dec 2 20:27:51 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -151,19 +141,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
151CONFIG_DISCONTIGMEM=y 141CONFIG_DISCONTIGMEM=y
152CONFIG_FLAT_NODE_MEM_MAP=y 142CONFIG_FLAT_NODE_MEM_MAP=y
153CONFIG_NEED_MULTIPLE_NODES=y 143CONFIG_NEED_MULTIPLE_NODES=y
154# CONFIG_SPARSEMEM_STATIC is not set
155# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
156CONFIG_PAGEFLAGS_EXTENDED=y 144CONFIG_PAGEFLAGS_EXTENDED=y
157CONFIG_SPLIT_PTLOCK_CPUS=4 145CONFIG_SPLIT_PTLOCK_CPUS=4
158# CONFIG_RESOURCES_64BIT is not set 146# CONFIG_RESOURCES_64BIT is not set
147# CONFIG_PHYS_ADDR_T_64BIT is not set
159CONFIG_ZONE_DMA_FLAG=1 148CONFIG_ZONE_DMA_FLAG=1
160CONFIG_BOUNCE=y 149CONFIG_BOUNCE=y
161CONFIG_VIRT_TO_BUS=y 150CONFIG_VIRT_TO_BUS=y
151CONFIG_UNEVICTABLE_LRU=y
162 152
163# 153#
164# General setup 154# General setup
165# 155#
166CONFIG_BINFMT_ELF=y 156CONFIG_BINFMT_ELF=y
157# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
158CONFIG_HAVE_AOUT=y
167CONFIG_BINFMT_AOUT=m 159CONFIG_BINFMT_AOUT=m
168CONFIG_BINFMT_MISC=m 160CONFIG_BINFMT_MISC=m
169CONFIG_PROC_HARDWARE=y 161CONFIG_PROC_HARDWARE=y
@@ -212,7 +204,6 @@ CONFIG_INET_TCP_DIAG=m
212CONFIG_TCP_CONG_CUBIC=y 204CONFIG_TCP_CONG_CUBIC=y
213CONFIG_DEFAULT_TCP_CONG="cubic" 205CONFIG_DEFAULT_TCP_CONG="cubic"
214# CONFIG_TCP_MD5SIG is not set 206# CONFIG_TCP_MD5SIG is not set
215# CONFIG_IP_VS is not set
216CONFIG_IPV6=m 207CONFIG_IPV6=m
217CONFIG_IPV6_PRIVACY=y 208CONFIG_IPV6_PRIVACY=y
218CONFIG_IPV6_ROUTER_PREF=y 209CONFIG_IPV6_ROUTER_PREF=y
@@ -262,13 +253,14 @@ CONFIG_NF_CONNTRACK_SANE=m
262CONFIG_NF_CONNTRACK_SIP=m 253CONFIG_NF_CONNTRACK_SIP=m
263CONFIG_NF_CONNTRACK_TFTP=m 254CONFIG_NF_CONNTRACK_TFTP=m
264# CONFIG_NF_CT_NETLINK is not set 255# CONFIG_NF_CT_NETLINK is not set
256# CONFIG_NETFILTER_TPROXY is not set
265CONFIG_NETFILTER_XTABLES=m 257CONFIG_NETFILTER_XTABLES=m
266CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 258CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
267CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 259CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
268CONFIG_NETFILTER_XT_TARGET_DSCP=m 260CONFIG_NETFILTER_XT_TARGET_DSCP=m
269CONFIG_NETFILTER_XT_TARGET_MARK=m 261CONFIG_NETFILTER_XT_TARGET_MARK=m
270CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
271CONFIG_NETFILTER_XT_TARGET_NFLOG=m 262CONFIG_NETFILTER_XT_TARGET_NFLOG=m
263CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
272CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 264CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
273CONFIG_NETFILTER_XT_TARGET_RATEEST=m 265CONFIG_NETFILTER_XT_TARGET_RATEEST=m
274CONFIG_NETFILTER_XT_TARGET_TRACE=m 266CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -282,19 +274,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
282CONFIG_NETFILTER_XT_MATCH_DCCP=m 274CONFIG_NETFILTER_XT_MATCH_DCCP=m
283CONFIG_NETFILTER_XT_MATCH_DSCP=m 275CONFIG_NETFILTER_XT_MATCH_DSCP=m
284CONFIG_NETFILTER_XT_MATCH_ESP=m 276CONFIG_NETFILTER_XT_MATCH_ESP=m
277CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
285CONFIG_NETFILTER_XT_MATCH_HELPER=m 278CONFIG_NETFILTER_XT_MATCH_HELPER=m
286CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 279CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
287CONFIG_NETFILTER_XT_MATCH_LENGTH=m 280CONFIG_NETFILTER_XT_MATCH_LENGTH=m
288CONFIG_NETFILTER_XT_MATCH_LIMIT=m 281CONFIG_NETFILTER_XT_MATCH_LIMIT=m
289CONFIG_NETFILTER_XT_MATCH_MAC=m 282CONFIG_NETFILTER_XT_MATCH_MAC=m
290CONFIG_NETFILTER_XT_MATCH_MARK=m 283CONFIG_NETFILTER_XT_MATCH_MARK=m
284CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
291CONFIG_NETFILTER_XT_MATCH_OWNER=m 285CONFIG_NETFILTER_XT_MATCH_OWNER=m
292CONFIG_NETFILTER_XT_MATCH_POLICY=m 286CONFIG_NETFILTER_XT_MATCH_POLICY=m
293CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
294CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 287CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
295CONFIG_NETFILTER_XT_MATCH_QUOTA=m 288CONFIG_NETFILTER_XT_MATCH_QUOTA=m
296CONFIG_NETFILTER_XT_MATCH_RATEEST=m 289CONFIG_NETFILTER_XT_MATCH_RATEEST=m
297CONFIG_NETFILTER_XT_MATCH_REALM=m 290CONFIG_NETFILTER_XT_MATCH_REALM=m
291CONFIG_NETFILTER_XT_MATCH_RECENT=m
292# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
298CONFIG_NETFILTER_XT_MATCH_SCTP=m 293CONFIG_NETFILTER_XT_MATCH_SCTP=m
299CONFIG_NETFILTER_XT_MATCH_STATE=m 294CONFIG_NETFILTER_XT_MATCH_STATE=m
300CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 295CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -302,20 +297,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
302CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 297CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
303CONFIG_NETFILTER_XT_MATCH_TIME=m 298CONFIG_NETFILTER_XT_MATCH_TIME=m
304CONFIG_NETFILTER_XT_MATCH_U32=m 299CONFIG_NETFILTER_XT_MATCH_U32=m
305CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 300# CONFIG_IP_VS is not set
306 301
307# 302#
308# IP: Netfilter Configuration 303# IP: Netfilter Configuration
309# 304#
305CONFIG_NF_DEFRAG_IPV4=m
310CONFIG_NF_CONNTRACK_IPV4=m 306CONFIG_NF_CONNTRACK_IPV4=m
311CONFIG_NF_CONNTRACK_PROC_COMPAT=y 307CONFIG_NF_CONNTRACK_PROC_COMPAT=y
312CONFIG_IP_NF_QUEUE=m 308CONFIG_IP_NF_QUEUE=m
313CONFIG_IP_NF_IPTABLES=m 309CONFIG_IP_NF_IPTABLES=m
314CONFIG_IP_NF_MATCH_RECENT=m 310CONFIG_IP_NF_MATCH_ADDRTYPE=m
315CONFIG_IP_NF_MATCH_ECN=m
316CONFIG_IP_NF_MATCH_AH=m 311CONFIG_IP_NF_MATCH_AH=m
312CONFIG_IP_NF_MATCH_ECN=m
317CONFIG_IP_NF_MATCH_TTL=m 313CONFIG_IP_NF_MATCH_TTL=m
318CONFIG_IP_NF_MATCH_ADDRTYPE=m
319CONFIG_IP_NF_FILTER=m 314CONFIG_IP_NF_FILTER=m
320CONFIG_IP_NF_TARGET_REJECT=m 315CONFIG_IP_NF_TARGET_REJECT=m
321CONFIG_IP_NF_TARGET_LOG=m 316CONFIG_IP_NF_TARGET_LOG=m
@@ -323,8 +318,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
323CONFIG_NF_NAT=m 318CONFIG_NF_NAT=m
324CONFIG_NF_NAT_NEEDED=y 319CONFIG_NF_NAT_NEEDED=y
325CONFIG_IP_NF_TARGET_MASQUERADE=m 320CONFIG_IP_NF_TARGET_MASQUERADE=m
326CONFIG_IP_NF_TARGET_REDIRECT=m
327CONFIG_IP_NF_TARGET_NETMAP=m 321CONFIG_IP_NF_TARGET_NETMAP=m
322CONFIG_IP_NF_TARGET_REDIRECT=m
328CONFIG_NF_NAT_SNMP_BASIC=m 323CONFIG_NF_NAT_SNMP_BASIC=m
329CONFIG_NF_NAT_PROTO_GRE=m 324CONFIG_NF_NAT_PROTO_GRE=m
330CONFIG_NF_NAT_PROTO_UDPLITE=m 325CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -337,9 +332,9 @@ CONFIG_NF_NAT_PPTP=m
337CONFIG_NF_NAT_H323=m 332CONFIG_NF_NAT_H323=m
338CONFIG_NF_NAT_SIP=m 333CONFIG_NF_NAT_SIP=m
339CONFIG_IP_NF_MANGLE=m 334CONFIG_IP_NF_MANGLE=m
335CONFIG_IP_NF_TARGET_CLUSTERIP=m
340CONFIG_IP_NF_TARGET_ECN=m 336CONFIG_IP_NF_TARGET_ECN=m
341CONFIG_IP_NF_TARGET_TTL=m 337CONFIG_IP_NF_TARGET_TTL=m
342CONFIG_IP_NF_TARGET_CLUSTERIP=m
343CONFIG_IP_NF_RAW=m 338CONFIG_IP_NF_RAW=m
344CONFIG_IP_NF_ARPTABLES=m 339CONFIG_IP_NF_ARPTABLES=m
345CONFIG_IP_NF_ARPFILTER=m 340CONFIG_IP_NF_ARPFILTER=m
@@ -351,16 +346,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
351CONFIG_NF_CONNTRACK_IPV6=m 346CONFIG_NF_CONNTRACK_IPV6=m
352CONFIG_IP6_NF_QUEUE=m 347CONFIG_IP6_NF_QUEUE=m
353CONFIG_IP6_NF_IPTABLES=m 348CONFIG_IP6_NF_IPTABLES=m
354CONFIG_IP6_NF_MATCH_RT=m 349CONFIG_IP6_NF_MATCH_AH=m
355CONFIG_IP6_NF_MATCH_OPTS=m 350CONFIG_IP6_NF_MATCH_EUI64=m
356CONFIG_IP6_NF_MATCH_FRAG=m 351CONFIG_IP6_NF_MATCH_FRAG=m
352CONFIG_IP6_NF_MATCH_OPTS=m
357CONFIG_IP6_NF_MATCH_HL=m 353CONFIG_IP6_NF_MATCH_HL=m
358CONFIG_IP6_NF_MATCH_IPV6HEADER=m 354CONFIG_IP6_NF_MATCH_IPV6HEADER=m
359CONFIG_IP6_NF_MATCH_AH=m
360CONFIG_IP6_NF_MATCH_MH=m 355CONFIG_IP6_NF_MATCH_MH=m
361CONFIG_IP6_NF_MATCH_EUI64=m 356CONFIG_IP6_NF_MATCH_RT=m
362CONFIG_IP6_NF_FILTER=m
363CONFIG_IP6_NF_TARGET_LOG=m 357CONFIG_IP6_NF_TARGET_LOG=m
358CONFIG_IP6_NF_FILTER=m
364CONFIG_IP6_NF_TARGET_REJECT=m 359CONFIG_IP6_NF_TARGET_REJECT=m
365CONFIG_IP6_NF_MANGLE=m 360CONFIG_IP6_NF_MANGLE=m
366CONFIG_IP6_NF_TARGET_HL=m 361CONFIG_IP6_NF_TARGET_HL=m
@@ -387,6 +382,7 @@ CONFIG_SCTP_HMAC_MD5=y
387# CONFIG_TIPC is not set 382# CONFIG_TIPC is not set
388# CONFIG_ATM is not set 383# CONFIG_ATM is not set
389# CONFIG_BRIDGE is not set 384# CONFIG_BRIDGE is not set
385# CONFIG_NET_DSA is not set
390# CONFIG_VLAN_8021Q is not set 386# CONFIG_VLAN_8021Q is not set
391# CONFIG_DECNET is not set 387# CONFIG_DECNET is not set
392CONFIG_LLC=m 388CONFIG_LLC=m
@@ -410,19 +406,8 @@ CONFIG_NET_CLS_ROUTE=y
410# CONFIG_IRDA is not set 406# CONFIG_IRDA is not set
411# CONFIG_BT is not set 407# CONFIG_BT is not set
412# CONFIG_AF_RXRPC is not set 408# CONFIG_AF_RXRPC is not set
413 409# CONFIG_PHONET is not set
414# 410# CONFIG_WIRELESS is not set
415# Wireless
416#
417# CONFIG_CFG80211 is not set
418CONFIG_WIRELESS_EXT=y
419# CONFIG_WIRELESS_EXT_SYSFS is not set
420# CONFIG_MAC80211 is not set
421CONFIG_IEEE80211=m
422# CONFIG_IEEE80211_DEBUG is not set
423CONFIG_IEEE80211_CRYPT_WEP=m
424CONFIG_IEEE80211_CRYPT_CCMP=m
425CONFIG_IEEE80211_CRYPT_TKIP=m
426# CONFIG_RFKILL is not set 411# CONFIG_RFKILL is not set
427# CONFIG_NET_9P is not set 412# CONFIG_NET_9P is not set
428 413
@@ -460,6 +445,7 @@ CONFIG_ATA_OVER_ETH=m
460CONFIG_MISC_DEVICES=y 445CONFIG_MISC_DEVICES=y
461# CONFIG_EEPROM_93CX6 is not set 446# CONFIG_EEPROM_93CX6 is not set
462# CONFIG_ENCLOSURE_SERVICES is not set 447# CONFIG_ENCLOSURE_SERVICES is not set
448# CONFIG_C2PORT is not set
463CONFIG_HAVE_IDE=y 449CONFIG_HAVE_IDE=y
464# CONFIG_IDE is not set 450# CONFIG_IDE is not set
465 451
@@ -545,6 +531,9 @@ CONFIG_MVME16x_NET=y
545# CONFIG_IBM_NEW_EMAC_RGMII is not set 531# CONFIG_IBM_NEW_EMAC_RGMII is not set
546# CONFIG_IBM_NEW_EMAC_TAH is not set 532# CONFIG_IBM_NEW_EMAC_TAH is not set
547# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 533# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
534# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
535# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
536# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
548# CONFIG_B44 is not set 537# CONFIG_B44 is not set
549# CONFIG_NETDEV_1000 is not set 538# CONFIG_NETDEV_1000 is not set
550# CONFIG_NETDEV_10000 is not set 539# CONFIG_NETDEV_10000 is not set
@@ -614,6 +603,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
614CONFIG_MOUSE_PS2_SYNAPTICS=y 603CONFIG_MOUSE_PS2_SYNAPTICS=y
615CONFIG_MOUSE_PS2_LIFEBOOK=y 604CONFIG_MOUSE_PS2_LIFEBOOK=y
616CONFIG_MOUSE_PS2_TRACKPOINT=y 605CONFIG_MOUSE_PS2_TRACKPOINT=y
606# CONFIG_MOUSE_PS2_ELANTECH is not set
617# CONFIG_MOUSE_PS2_TOUCHKIT is not set 607# CONFIG_MOUSE_PS2_TOUCHKIT is not set
618CONFIG_MOUSE_SERIAL=m 608CONFIG_MOUSE_SERIAL=m
619# CONFIG_MOUSE_VSXXXAA is not set 609# CONFIG_MOUSE_VSXXXAA is not set
@@ -668,11 +658,11 @@ CONFIG_GEN_RTC_X=y
668# CONFIG_THERMAL is not set 658# CONFIG_THERMAL is not set
669# CONFIG_THERMAL_HWMON is not set 659# CONFIG_THERMAL_HWMON is not set
670# CONFIG_WATCHDOG is not set 660# CONFIG_WATCHDOG is not set
661CONFIG_SSB_POSSIBLE=y
671 662
672# 663#
673# Sonics Silicon Backplane 664# Sonics Silicon Backplane
674# 665#
675CONFIG_SSB_POSSIBLE=y
676# CONFIG_SSB is not set 666# CONFIG_SSB is not set
677 667
678# 668#
@@ -682,6 +672,7 @@ CONFIG_SSB_POSSIBLE=y
682# CONFIG_MFD_SM501 is not set 672# CONFIG_MFD_SM501 is not set
683# CONFIG_HTC_PASIC3 is not set 673# CONFIG_HTC_PASIC3 is not set
684# CONFIG_MFD_TMIO is not set 674# CONFIG_MFD_TMIO is not set
675# CONFIG_REGULATOR is not set
685 676
686# 677#
687# Multimedia devices 678# Multimedia devices
@@ -721,6 +712,12 @@ CONFIG_HID_SUPPORT=y
721CONFIG_HID=m 712CONFIG_HID=m
722# CONFIG_HID_DEBUG is not set 713# CONFIG_HID_DEBUG is not set
723CONFIG_HIDRAW=y 714CONFIG_HIDRAW=y
715# CONFIG_HID_PID is not set
716
717#
718# Special HID drivers
719#
720CONFIG_HID_COMPAT=y
724# CONFIG_USB_SUPPORT is not set 721# CONFIG_USB_SUPPORT is not set
725# CONFIG_MMC is not set 722# CONFIG_MMC is not set
726# CONFIG_MEMSTICK is not set 723# CONFIG_MEMSTICK is not set
@@ -729,6 +726,8 @@ CONFIG_HIDRAW=y
729# CONFIG_RTC_CLASS is not set 726# CONFIG_RTC_CLASS is not set
730# CONFIG_DMADEVICES is not set 727# CONFIG_DMADEVICES is not set
731# CONFIG_UIO is not set 728# CONFIG_UIO is not set
729# CONFIG_STAGING is not set
730CONFIG_STAGING_EXCLUDE_BUILD=y
732 731
733# 732#
734# Character devices 733# Character devices
@@ -745,8 +744,9 @@ CONFIG_EXT2_FS=y
745# CONFIG_EXT2_FS_XIP is not set 744# CONFIG_EXT2_FS_XIP is not set
746CONFIG_EXT3_FS=y 745CONFIG_EXT3_FS=y
747# CONFIG_EXT3_FS_XATTR is not set 746# CONFIG_EXT3_FS_XATTR is not set
748# CONFIG_EXT4DEV_FS is not set 747# CONFIG_EXT4_FS is not set
749CONFIG_JBD=y 748CONFIG_JBD=y
749CONFIG_JBD2=m
750CONFIG_REISERFS_FS=m 750CONFIG_REISERFS_FS=m
751# CONFIG_REISERFS_CHECK is not set 751# CONFIG_REISERFS_CHECK is not set
752# CONFIG_REISERFS_PROC_INFO is not set 752# CONFIG_REISERFS_PROC_INFO is not set
@@ -757,6 +757,7 @@ CONFIG_JFS_FS=m
757# CONFIG_JFS_DEBUG is not set 757# CONFIG_JFS_DEBUG is not set
758# CONFIG_JFS_STATISTICS is not set 758# CONFIG_JFS_STATISTICS is not set
759# CONFIG_FS_POSIX_ACL is not set 759# CONFIG_FS_POSIX_ACL is not set
760CONFIG_FILE_LOCKING=y
760CONFIG_XFS_FS=m 761CONFIG_XFS_FS=m
761# CONFIG_XFS_QUOTA is not set 762# CONFIG_XFS_QUOTA is not set
762# CONFIG_XFS_POSIX_ACL is not set 763# CONFIG_XFS_POSIX_ACL is not set
@@ -768,6 +769,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
768# CONFIG_OCFS2_FS_STATS is not set 769# CONFIG_OCFS2_FS_STATS is not set
769# CONFIG_OCFS2_DEBUG_MASKLOG is not set 770# CONFIG_OCFS2_DEBUG_MASKLOG is not set
770# CONFIG_OCFS2_DEBUG_FS is not set 771# CONFIG_OCFS2_DEBUG_FS is not set
772# CONFIG_OCFS2_COMPAT_JBD is not set
771CONFIG_DNOTIFY=y 773CONFIG_DNOTIFY=y
772CONFIG_INOTIFY=y 774CONFIG_INOTIFY=y
773CONFIG_INOTIFY_USER=y 775CONFIG_INOTIFY_USER=y
@@ -806,6 +808,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
806CONFIG_PROC_FS=y 808CONFIG_PROC_FS=y
807CONFIG_PROC_KCORE=y 809CONFIG_PROC_KCORE=y
808CONFIG_PROC_SYSCTL=y 810CONFIG_PROC_SYSCTL=y
811CONFIG_PROC_PAGE_MONITOR=y
809CONFIG_SYSFS=y 812CONFIG_SYSFS=y
810CONFIG_TMPFS=y 813CONFIG_TMPFS=y
811# CONFIG_TMPFS_POSIX_ACL is not set 814# CONFIG_TMPFS_POSIX_ACL is not set
@@ -849,6 +852,7 @@ CONFIG_EXPORTFS=m
849CONFIG_NFS_COMMON=y 852CONFIG_NFS_COMMON=y
850CONFIG_SUNRPC=y 853CONFIG_SUNRPC=y
851CONFIG_SUNRPC_GSS=y 854CONFIG_SUNRPC_GSS=y
855# CONFIG_SUNRPC_REGISTER_V4 is not set
852CONFIG_RPCSEC_GSS_KRB5=y 856CONFIG_RPCSEC_GSS_KRB5=y
853# CONFIG_RPCSEC_GSS_SPKM3 is not set 857# CONFIG_RPCSEC_GSS_SPKM3 is not set
854CONFIG_SMB_FS=m 858CONFIG_SMB_FS=m
@@ -922,7 +926,13 @@ CONFIG_MAGIC_SYSRQ=y
922# CONFIG_DEBUG_KERNEL is not set 926# CONFIG_DEBUG_KERNEL is not set
923CONFIG_DEBUG_BUGVERBOSE=y 927CONFIG_DEBUG_BUGVERBOSE=y
924CONFIG_DEBUG_MEMORY_INIT=y 928CONFIG_DEBUG_MEMORY_INIT=y
929# CONFIG_RCU_CPU_STALL_DETECTOR is not set
925CONFIG_SYSCTL_SYSCALL_CHECK=y 930CONFIG_SYSCTL_SYSCALL_CHECK=y
931
932#
933# Tracers
934#
935# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
926# CONFIG_SAMPLES is not set 936# CONFIG_SAMPLES is not set
927 937
928# 938#
@@ -930,6 +940,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
930# 940#
931# CONFIG_KEYS is not set 941# CONFIG_KEYS is not set
932# CONFIG_SECURITY is not set 942# CONFIG_SECURITY is not set
943# CONFIG_SECURITYFS is not set
933# CONFIG_SECURITY_FILE_CAPABILITIES is not set 944# CONFIG_SECURITY_FILE_CAPABILITIES is not set
934CONFIG_XOR_BLOCKS=m 945CONFIG_XOR_BLOCKS=m
935CONFIG_ASYNC_CORE=m 946CONFIG_ASYNC_CORE=m
@@ -940,10 +951,12 @@ CONFIG_CRYPTO=y
940# 951#
941# Crypto core or helper 952# Crypto core or helper
942# 953#
954# CONFIG_CRYPTO_FIPS is not set
943CONFIG_CRYPTO_ALGAPI=y 955CONFIG_CRYPTO_ALGAPI=y
944CONFIG_CRYPTO_AEAD=m 956CONFIG_CRYPTO_AEAD=y
945CONFIG_CRYPTO_BLKCIPHER=y 957CONFIG_CRYPTO_BLKCIPHER=y
946CONFIG_CRYPTO_HASH=y 958CONFIG_CRYPTO_HASH=y
959CONFIG_CRYPTO_RNG=y
947CONFIG_CRYPTO_MANAGER=y 960CONFIG_CRYPTO_MANAGER=y
948CONFIG_CRYPTO_GF128MUL=m 961CONFIG_CRYPTO_GF128MUL=m
949CONFIG_CRYPTO_NULL=m 962CONFIG_CRYPTO_NULL=m
@@ -1017,14 +1030,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1017# 1030#
1018CONFIG_CRYPTO_DEFLATE=m 1031CONFIG_CRYPTO_DEFLATE=m
1019CONFIG_CRYPTO_LZO=m 1032CONFIG_CRYPTO_LZO=m
1033
1034#
1035# Random Number Generation
1036#
1037# CONFIG_CRYPTO_ANSI_CPRNG is not set
1020# CONFIG_CRYPTO_HW is not set 1038# CONFIG_CRYPTO_HW is not set
1021 1039
1022# 1040#
1023# Library routines 1041# Library routines
1024# 1042#
1025CONFIG_BITREVERSE=y 1043CONFIG_BITREVERSE=y
1026# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1027# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1028CONFIG_CRC_CCITT=m 1044CONFIG_CRC_CCITT=m
1029CONFIG_CRC16=m 1045CONFIG_CRC16=m
1030CONFIG_CRC_T10DIF=y 1046CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/q40_defconfig b/arch/m68k/configs/q40_defconfig
index 72eaff0776b8..3459c594194b 100644
--- a/arch/m68k/configs/q40_defconfig
+++ b/arch/m68k/configs/q40_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:10 2008 4# Tue Dec 2 20:27:52 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -148,19 +138,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
148CONFIG_DISCONTIGMEM=y 138CONFIG_DISCONTIGMEM=y
149CONFIG_FLAT_NODE_MEM_MAP=y 139CONFIG_FLAT_NODE_MEM_MAP=y
150CONFIG_NEED_MULTIPLE_NODES=y 140CONFIG_NEED_MULTIPLE_NODES=y
151# CONFIG_SPARSEMEM_STATIC is not set
152# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
153CONFIG_PAGEFLAGS_EXTENDED=y 141CONFIG_PAGEFLAGS_EXTENDED=y
154CONFIG_SPLIT_PTLOCK_CPUS=4 142CONFIG_SPLIT_PTLOCK_CPUS=4
155# CONFIG_RESOURCES_64BIT is not set 143# CONFIG_RESOURCES_64BIT is not set
144# CONFIG_PHYS_ADDR_T_64BIT is not set
156CONFIG_ZONE_DMA_FLAG=1 145CONFIG_ZONE_DMA_FLAG=1
157CONFIG_BOUNCE=y 146CONFIG_BOUNCE=y
158CONFIG_VIRT_TO_BUS=y 147CONFIG_VIRT_TO_BUS=y
148CONFIG_UNEVICTABLE_LRU=y
159 149
160# 150#
161# General setup 151# General setup
162# 152#
163CONFIG_BINFMT_ELF=y 153CONFIG_BINFMT_ELF=y
154# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
155CONFIG_HAVE_AOUT=y
164CONFIG_BINFMT_AOUT=m 156CONFIG_BINFMT_AOUT=m
165CONFIG_BINFMT_MISC=m 157CONFIG_BINFMT_MISC=m
166CONFIG_HEARTBEAT=y 158CONFIG_HEARTBEAT=y
@@ -209,7 +201,6 @@ CONFIG_INET_TCP_DIAG=m
209CONFIG_TCP_CONG_CUBIC=y 201CONFIG_TCP_CONG_CUBIC=y
210CONFIG_DEFAULT_TCP_CONG="cubic" 202CONFIG_DEFAULT_TCP_CONG="cubic"
211# CONFIG_TCP_MD5SIG is not set 203# CONFIG_TCP_MD5SIG is not set
212# CONFIG_IP_VS is not set
213CONFIG_IPV6=m 204CONFIG_IPV6=m
214CONFIG_IPV6_PRIVACY=y 205CONFIG_IPV6_PRIVACY=y
215CONFIG_IPV6_ROUTER_PREF=y 206CONFIG_IPV6_ROUTER_PREF=y
@@ -259,13 +250,14 @@ CONFIG_NF_CONNTRACK_SANE=m
259CONFIG_NF_CONNTRACK_SIP=m 250CONFIG_NF_CONNTRACK_SIP=m
260CONFIG_NF_CONNTRACK_TFTP=m 251CONFIG_NF_CONNTRACK_TFTP=m
261# CONFIG_NF_CT_NETLINK is not set 252# CONFIG_NF_CT_NETLINK is not set
253# CONFIG_NETFILTER_TPROXY is not set
262CONFIG_NETFILTER_XTABLES=m 254CONFIG_NETFILTER_XTABLES=m
263CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 255CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
264CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 256CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
265CONFIG_NETFILTER_XT_TARGET_DSCP=m 257CONFIG_NETFILTER_XT_TARGET_DSCP=m
266CONFIG_NETFILTER_XT_TARGET_MARK=m 258CONFIG_NETFILTER_XT_TARGET_MARK=m
267CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
268CONFIG_NETFILTER_XT_TARGET_NFLOG=m 259CONFIG_NETFILTER_XT_TARGET_NFLOG=m
260CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
269CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 261CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
270CONFIG_NETFILTER_XT_TARGET_RATEEST=m 262CONFIG_NETFILTER_XT_TARGET_RATEEST=m
271CONFIG_NETFILTER_XT_TARGET_TRACE=m 263CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -279,19 +271,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
279CONFIG_NETFILTER_XT_MATCH_DCCP=m 271CONFIG_NETFILTER_XT_MATCH_DCCP=m
280CONFIG_NETFILTER_XT_MATCH_DSCP=m 272CONFIG_NETFILTER_XT_MATCH_DSCP=m
281CONFIG_NETFILTER_XT_MATCH_ESP=m 273CONFIG_NETFILTER_XT_MATCH_ESP=m
274CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
282CONFIG_NETFILTER_XT_MATCH_HELPER=m 275CONFIG_NETFILTER_XT_MATCH_HELPER=m
283CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 276CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
284CONFIG_NETFILTER_XT_MATCH_LENGTH=m 277CONFIG_NETFILTER_XT_MATCH_LENGTH=m
285CONFIG_NETFILTER_XT_MATCH_LIMIT=m 278CONFIG_NETFILTER_XT_MATCH_LIMIT=m
286CONFIG_NETFILTER_XT_MATCH_MAC=m 279CONFIG_NETFILTER_XT_MATCH_MAC=m
287CONFIG_NETFILTER_XT_MATCH_MARK=m 280CONFIG_NETFILTER_XT_MATCH_MARK=m
281CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
288CONFIG_NETFILTER_XT_MATCH_OWNER=m 282CONFIG_NETFILTER_XT_MATCH_OWNER=m
289CONFIG_NETFILTER_XT_MATCH_POLICY=m 283CONFIG_NETFILTER_XT_MATCH_POLICY=m
290CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
291CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 284CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
292CONFIG_NETFILTER_XT_MATCH_QUOTA=m 285CONFIG_NETFILTER_XT_MATCH_QUOTA=m
293CONFIG_NETFILTER_XT_MATCH_RATEEST=m 286CONFIG_NETFILTER_XT_MATCH_RATEEST=m
294CONFIG_NETFILTER_XT_MATCH_REALM=m 287CONFIG_NETFILTER_XT_MATCH_REALM=m
288CONFIG_NETFILTER_XT_MATCH_RECENT=m
289# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
295CONFIG_NETFILTER_XT_MATCH_SCTP=m 290CONFIG_NETFILTER_XT_MATCH_SCTP=m
296CONFIG_NETFILTER_XT_MATCH_STATE=m 291CONFIG_NETFILTER_XT_MATCH_STATE=m
297CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 292CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -299,20 +294,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
299CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 294CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
300CONFIG_NETFILTER_XT_MATCH_TIME=m 295CONFIG_NETFILTER_XT_MATCH_TIME=m
301CONFIG_NETFILTER_XT_MATCH_U32=m 296CONFIG_NETFILTER_XT_MATCH_U32=m
302CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 297# CONFIG_IP_VS is not set
303 298
304# 299#
305# IP: Netfilter Configuration 300# IP: Netfilter Configuration
306# 301#
302CONFIG_NF_DEFRAG_IPV4=m
307CONFIG_NF_CONNTRACK_IPV4=m 303CONFIG_NF_CONNTRACK_IPV4=m
308CONFIG_NF_CONNTRACK_PROC_COMPAT=y 304CONFIG_NF_CONNTRACK_PROC_COMPAT=y
309CONFIG_IP_NF_QUEUE=m 305CONFIG_IP_NF_QUEUE=m
310CONFIG_IP_NF_IPTABLES=m 306CONFIG_IP_NF_IPTABLES=m
311CONFIG_IP_NF_MATCH_RECENT=m 307CONFIG_IP_NF_MATCH_ADDRTYPE=m
312CONFIG_IP_NF_MATCH_ECN=m
313CONFIG_IP_NF_MATCH_AH=m 308CONFIG_IP_NF_MATCH_AH=m
309CONFIG_IP_NF_MATCH_ECN=m
314CONFIG_IP_NF_MATCH_TTL=m 310CONFIG_IP_NF_MATCH_TTL=m
315CONFIG_IP_NF_MATCH_ADDRTYPE=m
316CONFIG_IP_NF_FILTER=m 311CONFIG_IP_NF_FILTER=m
317CONFIG_IP_NF_TARGET_REJECT=m 312CONFIG_IP_NF_TARGET_REJECT=m
318CONFIG_IP_NF_TARGET_LOG=m 313CONFIG_IP_NF_TARGET_LOG=m
@@ -320,8 +315,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
320CONFIG_NF_NAT=m 315CONFIG_NF_NAT=m
321CONFIG_NF_NAT_NEEDED=y 316CONFIG_NF_NAT_NEEDED=y
322CONFIG_IP_NF_TARGET_MASQUERADE=m 317CONFIG_IP_NF_TARGET_MASQUERADE=m
323CONFIG_IP_NF_TARGET_REDIRECT=m
324CONFIG_IP_NF_TARGET_NETMAP=m 318CONFIG_IP_NF_TARGET_NETMAP=m
319CONFIG_IP_NF_TARGET_REDIRECT=m
325CONFIG_NF_NAT_SNMP_BASIC=m 320CONFIG_NF_NAT_SNMP_BASIC=m
326CONFIG_NF_NAT_PROTO_GRE=m 321CONFIG_NF_NAT_PROTO_GRE=m
327CONFIG_NF_NAT_PROTO_UDPLITE=m 322CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -334,9 +329,9 @@ CONFIG_NF_NAT_PPTP=m
334CONFIG_NF_NAT_H323=m 329CONFIG_NF_NAT_H323=m
335CONFIG_NF_NAT_SIP=m 330CONFIG_NF_NAT_SIP=m
336CONFIG_IP_NF_MANGLE=m 331CONFIG_IP_NF_MANGLE=m
332CONFIG_IP_NF_TARGET_CLUSTERIP=m
337CONFIG_IP_NF_TARGET_ECN=m 333CONFIG_IP_NF_TARGET_ECN=m
338CONFIG_IP_NF_TARGET_TTL=m 334CONFIG_IP_NF_TARGET_TTL=m
339CONFIG_IP_NF_TARGET_CLUSTERIP=m
340CONFIG_IP_NF_RAW=m 335CONFIG_IP_NF_RAW=m
341CONFIG_IP_NF_ARPTABLES=m 336CONFIG_IP_NF_ARPTABLES=m
342CONFIG_IP_NF_ARPFILTER=m 337CONFIG_IP_NF_ARPFILTER=m
@@ -348,16 +343,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
348CONFIG_NF_CONNTRACK_IPV6=m 343CONFIG_NF_CONNTRACK_IPV6=m
349CONFIG_IP6_NF_QUEUE=m 344CONFIG_IP6_NF_QUEUE=m
350CONFIG_IP6_NF_IPTABLES=m 345CONFIG_IP6_NF_IPTABLES=m
351CONFIG_IP6_NF_MATCH_RT=m 346CONFIG_IP6_NF_MATCH_AH=m
352CONFIG_IP6_NF_MATCH_OPTS=m 347CONFIG_IP6_NF_MATCH_EUI64=m
353CONFIG_IP6_NF_MATCH_FRAG=m 348CONFIG_IP6_NF_MATCH_FRAG=m
349CONFIG_IP6_NF_MATCH_OPTS=m
354CONFIG_IP6_NF_MATCH_HL=m 350CONFIG_IP6_NF_MATCH_HL=m
355CONFIG_IP6_NF_MATCH_IPV6HEADER=m 351CONFIG_IP6_NF_MATCH_IPV6HEADER=m
356CONFIG_IP6_NF_MATCH_AH=m
357CONFIG_IP6_NF_MATCH_MH=m 352CONFIG_IP6_NF_MATCH_MH=m
358CONFIG_IP6_NF_MATCH_EUI64=m 353CONFIG_IP6_NF_MATCH_RT=m
359CONFIG_IP6_NF_FILTER=m
360CONFIG_IP6_NF_TARGET_LOG=m 354CONFIG_IP6_NF_TARGET_LOG=m
355CONFIG_IP6_NF_FILTER=m
361CONFIG_IP6_NF_TARGET_REJECT=m 356CONFIG_IP6_NF_TARGET_REJECT=m
362CONFIG_IP6_NF_MANGLE=m 357CONFIG_IP6_NF_MANGLE=m
363CONFIG_IP6_NF_TARGET_HL=m 358CONFIG_IP6_NF_TARGET_HL=m
@@ -384,6 +379,7 @@ CONFIG_SCTP_HMAC_MD5=y
384# CONFIG_TIPC is not set 379# CONFIG_TIPC is not set
385# CONFIG_ATM is not set 380# CONFIG_ATM is not set
386# CONFIG_BRIDGE is not set 381# CONFIG_BRIDGE is not set
382# CONFIG_NET_DSA is not set
387# CONFIG_VLAN_8021Q is not set 383# CONFIG_VLAN_8021Q is not set
388# CONFIG_DECNET is not set 384# CONFIG_DECNET is not set
389CONFIG_LLC=m 385CONFIG_LLC=m
@@ -407,19 +403,8 @@ CONFIG_NET_CLS_ROUTE=y
407# CONFIG_IRDA is not set 403# CONFIG_IRDA is not set
408# CONFIG_BT is not set 404# CONFIG_BT is not set
409# CONFIG_AF_RXRPC is not set 405# CONFIG_AF_RXRPC is not set
410 406# CONFIG_PHONET is not set
411# 407# CONFIG_WIRELESS is not set
412# Wireless
413#
414# CONFIG_CFG80211 is not set
415CONFIG_WIRELESS_EXT=y
416# CONFIG_WIRELESS_EXT_SYSFS is not set
417# CONFIG_MAC80211 is not set
418CONFIG_IEEE80211=m
419# CONFIG_IEEE80211_DEBUG is not set
420CONFIG_IEEE80211_CRYPT_WEP=m
421CONFIG_IEEE80211_CRYPT_CCMP=m
422CONFIG_IEEE80211_CRYPT_TKIP=m
423# CONFIG_RFKILL is not set 408# CONFIG_RFKILL is not set
424# CONFIG_NET_9P is not set 409# CONFIG_NET_9P is not set
425 410
@@ -458,21 +443,20 @@ CONFIG_ATA_OVER_ETH=m
458CONFIG_MISC_DEVICES=y 443CONFIG_MISC_DEVICES=y
459# CONFIG_EEPROM_93CX6 is not set 444# CONFIG_EEPROM_93CX6 is not set
460# CONFIG_ENCLOSURE_SERVICES is not set 445# CONFIG_ENCLOSURE_SERVICES is not set
446# CONFIG_C2PORT is not set
461CONFIG_HAVE_IDE=y 447CONFIG_HAVE_IDE=y
462CONFIG_IDE=y 448CONFIG_IDE=y
463CONFIG_BLK_DEV_IDE=y
464 449
465# 450#
466# Please see Documentation/ide/ide.txt for help/info on IDE drives 451# Please see Documentation/ide/ide.txt for help/info on IDE drives
467# 452#
468CONFIG_IDE_ATAPI=y
469# CONFIG_BLK_DEV_IDE_SATA is not set 453# CONFIG_BLK_DEV_IDE_SATA is not set
470CONFIG_BLK_DEV_IDEDISK=y 454CONFIG_IDE_GD=y
471# CONFIG_IDEDISK_MULTI_MODE is not set 455CONFIG_IDE_GD_ATA=y
456# CONFIG_IDE_GD_ATAPI is not set
472CONFIG_BLK_DEV_IDECD=y 457CONFIG_BLK_DEV_IDECD=y
473CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y 458CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
474# CONFIG_BLK_DEV_IDETAPE is not set 459# CONFIG_BLK_DEV_IDETAPE is not set
475CONFIG_BLK_DEV_IDEFLOPPY=m
476# CONFIG_BLK_DEV_IDESCSI is not set 460# CONFIG_BLK_DEV_IDESCSI is not set
477# CONFIG_IDE_TASK_IOCTL is not set 461# CONFIG_IDE_TASK_IOCTL is not set
478CONFIG_IDE_PROC_FS=y 462CONFIG_IDE_PROC_FS=y
@@ -585,8 +569,12 @@ CONFIG_NE2000=m
585# CONFIG_IBM_NEW_EMAC_RGMII is not set 569# CONFIG_IBM_NEW_EMAC_RGMII is not set
586# CONFIG_IBM_NEW_EMAC_TAH is not set 570# CONFIG_IBM_NEW_EMAC_TAH is not set
587# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 571# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
572# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
573# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
574# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
588# CONFIG_NET_PCI is not set 575# CONFIG_NET_PCI is not set
589# CONFIG_B44 is not set 576# CONFIG_B44 is not set
577# CONFIG_CS89x0 is not set
590# CONFIG_NETDEV_1000 is not set 578# CONFIG_NETDEV_1000 is not set
591# CONFIG_NETDEV_10000 is not set 579# CONFIG_NETDEV_10000 is not set
592# CONFIG_TR is not set 580# CONFIG_TR is not set
@@ -656,6 +644,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
656CONFIG_MOUSE_PS2_SYNAPTICS=y 644CONFIG_MOUSE_PS2_SYNAPTICS=y
657CONFIG_MOUSE_PS2_LIFEBOOK=y 645CONFIG_MOUSE_PS2_LIFEBOOK=y
658CONFIG_MOUSE_PS2_TRACKPOINT=y 646CONFIG_MOUSE_PS2_TRACKPOINT=y
647# CONFIG_MOUSE_PS2_ELANTECH is not set
659# CONFIG_MOUSE_PS2_TOUCHKIT is not set 648# CONFIG_MOUSE_PS2_TOUCHKIT is not set
660CONFIG_MOUSE_SERIAL=m 649CONFIG_MOUSE_SERIAL=m
661# CONFIG_MOUSE_INPORT is not set 650# CONFIG_MOUSE_INPORT is not set
@@ -717,11 +706,11 @@ CONFIG_GEN_RTC_X=y
717# CONFIG_THERMAL is not set 706# CONFIG_THERMAL is not set
718# CONFIG_THERMAL_HWMON is not set 707# CONFIG_THERMAL_HWMON is not set
719# CONFIG_WATCHDOG is not set 708# CONFIG_WATCHDOG is not set
709CONFIG_SSB_POSSIBLE=y
720 710
721# 711#
722# Sonics Silicon Backplane 712# Sonics Silicon Backplane
723# 713#
724CONFIG_SSB_POSSIBLE=y
725# CONFIG_SSB is not set 714# CONFIG_SSB is not set
726 715
727# 716#
@@ -731,6 +720,7 @@ CONFIG_SSB_POSSIBLE=y
731# CONFIG_MFD_SM501 is not set 720# CONFIG_MFD_SM501 is not set
732# CONFIG_HTC_PASIC3 is not set 721# CONFIG_HTC_PASIC3 is not set
733# CONFIG_MFD_TMIO is not set 722# CONFIG_MFD_TMIO is not set
723# CONFIG_REGULATOR is not set
734 724
735# 725#
736# Multimedia devices 726# Multimedia devices
@@ -756,6 +746,7 @@ CONFIG_SSB_POSSIBLE=y
756CONFIG_FB=y 746CONFIG_FB=y
757# CONFIG_FIRMWARE_EDID is not set 747# CONFIG_FIRMWARE_EDID is not set
758# CONFIG_FB_DDC is not set 748# CONFIG_FB_DDC is not set
749# CONFIG_FB_BOOT_VESA_SUPPORT is not set
759CONFIG_FB_CFB_FILLRECT=y 750CONFIG_FB_CFB_FILLRECT=y
760CONFIG_FB_CFB_COPYAREA=y 751CONFIG_FB_CFB_COPYAREA=y
761CONFIG_FB_CFB_IMAGEBLIT=y 752CONFIG_FB_CFB_IMAGEBLIT=y
@@ -778,6 +769,8 @@ CONFIG_FB_Q40=y
778# CONFIG_FB_UVESA is not set 769# CONFIG_FB_UVESA is not set
779# CONFIG_FB_S1D13XXX is not set 770# CONFIG_FB_S1D13XXX is not set
780# CONFIG_FB_VIRTUAL is not set 771# CONFIG_FB_VIRTUAL is not set
772# CONFIG_FB_METRONOME is not set
773# CONFIG_FB_MB862XX is not set
781# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 774# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
782 775
783# 776#
@@ -800,12 +793,19 @@ CONFIG_LOGO_LINUX_MONO=y
800CONFIG_LOGO_LINUX_VGA16=y 793CONFIG_LOGO_LINUX_VGA16=y
801CONFIG_LOGO_LINUX_CLUT224=y 794CONFIG_LOGO_LINUX_CLUT224=y
802CONFIG_SOUND=m 795CONFIG_SOUND=m
796CONFIG_SOUND_OSS_CORE=y
803CONFIG_DMASOUND_Q40=m 797CONFIG_DMASOUND_Q40=m
804CONFIG_DMASOUND=m 798CONFIG_DMASOUND=m
805CONFIG_HID_SUPPORT=y 799CONFIG_HID_SUPPORT=y
806CONFIG_HID=m 800CONFIG_HID=m
807# CONFIG_HID_DEBUG is not set 801# CONFIG_HID_DEBUG is not set
808CONFIG_HIDRAW=y 802CONFIG_HIDRAW=y
803# CONFIG_HID_PID is not set
804
805#
806# Special HID drivers
807#
808CONFIG_HID_COMPAT=y
809# CONFIG_USB_SUPPORT is not set 809# CONFIG_USB_SUPPORT is not set
810# CONFIG_MMC is not set 810# CONFIG_MMC is not set
811# CONFIG_MEMSTICK is not set 811# CONFIG_MEMSTICK is not set
@@ -814,6 +814,8 @@ CONFIG_HIDRAW=y
814# CONFIG_RTC_CLASS is not set 814# CONFIG_RTC_CLASS is not set
815# CONFIG_DMADEVICES is not set 815# CONFIG_DMADEVICES is not set
816# CONFIG_UIO is not set 816# CONFIG_UIO is not set
817# CONFIG_STAGING is not set
818CONFIG_STAGING_EXCLUDE_BUILD=y
817 819
818# 820#
819# Character devices 821# Character devices
@@ -827,8 +829,9 @@ CONFIG_EXT2_FS=y
827# CONFIG_EXT2_FS_XIP is not set 829# CONFIG_EXT2_FS_XIP is not set
828CONFIG_EXT3_FS=y 830CONFIG_EXT3_FS=y
829# CONFIG_EXT3_FS_XATTR is not set 831# CONFIG_EXT3_FS_XATTR is not set
830# CONFIG_EXT4DEV_FS is not set 832# CONFIG_EXT4_FS is not set
831CONFIG_JBD=y 833CONFIG_JBD=y
834CONFIG_JBD2=m
832CONFIG_REISERFS_FS=m 835CONFIG_REISERFS_FS=m
833# CONFIG_REISERFS_CHECK is not set 836# CONFIG_REISERFS_CHECK is not set
834# CONFIG_REISERFS_PROC_INFO is not set 837# CONFIG_REISERFS_PROC_INFO is not set
@@ -839,6 +842,7 @@ CONFIG_JFS_FS=m
839# CONFIG_JFS_DEBUG is not set 842# CONFIG_JFS_DEBUG is not set
840# CONFIG_JFS_STATISTICS is not set 843# CONFIG_JFS_STATISTICS is not set
841# CONFIG_FS_POSIX_ACL is not set 844# CONFIG_FS_POSIX_ACL is not set
845CONFIG_FILE_LOCKING=y
842CONFIG_XFS_FS=m 846CONFIG_XFS_FS=m
843# CONFIG_XFS_QUOTA is not set 847# CONFIG_XFS_QUOTA is not set
844# CONFIG_XFS_POSIX_ACL is not set 848# CONFIG_XFS_POSIX_ACL is not set
@@ -850,6 +854,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
850# CONFIG_OCFS2_FS_STATS is not set 854# CONFIG_OCFS2_FS_STATS is not set
851# CONFIG_OCFS2_DEBUG_MASKLOG is not set 855# CONFIG_OCFS2_DEBUG_MASKLOG is not set
852# CONFIG_OCFS2_DEBUG_FS is not set 856# CONFIG_OCFS2_DEBUG_FS is not set
857# CONFIG_OCFS2_COMPAT_JBD is not set
853CONFIG_DNOTIFY=y 858CONFIG_DNOTIFY=y
854CONFIG_INOTIFY=y 859CONFIG_INOTIFY=y
855CONFIG_INOTIFY_USER=y 860CONFIG_INOTIFY_USER=y
@@ -888,6 +893,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
888CONFIG_PROC_FS=y 893CONFIG_PROC_FS=y
889CONFIG_PROC_KCORE=y 894CONFIG_PROC_KCORE=y
890CONFIG_PROC_SYSCTL=y 895CONFIG_PROC_SYSCTL=y
896CONFIG_PROC_PAGE_MONITOR=y
891CONFIG_SYSFS=y 897CONFIG_SYSFS=y
892CONFIG_TMPFS=y 898CONFIG_TMPFS=y
893# CONFIG_TMPFS_POSIX_ACL is not set 899# CONFIG_TMPFS_POSIX_ACL is not set
@@ -930,6 +936,7 @@ CONFIG_EXPORTFS=m
930CONFIG_NFS_COMMON=y 936CONFIG_NFS_COMMON=y
931CONFIG_SUNRPC=y 937CONFIG_SUNRPC=y
932CONFIG_SUNRPC_GSS=y 938CONFIG_SUNRPC_GSS=y
939# CONFIG_SUNRPC_REGISTER_V4 is not set
933CONFIG_RPCSEC_GSS_KRB5=y 940CONFIG_RPCSEC_GSS_KRB5=y
934# CONFIG_RPCSEC_GSS_SPKM3 is not set 941# CONFIG_RPCSEC_GSS_SPKM3 is not set
935CONFIG_SMB_FS=m 942CONFIG_SMB_FS=m
@@ -1002,7 +1009,13 @@ CONFIG_MAGIC_SYSRQ=y
1002# CONFIG_DEBUG_KERNEL is not set 1009# CONFIG_DEBUG_KERNEL is not set
1003CONFIG_DEBUG_BUGVERBOSE=y 1010CONFIG_DEBUG_BUGVERBOSE=y
1004CONFIG_DEBUG_MEMORY_INIT=y 1011CONFIG_DEBUG_MEMORY_INIT=y
1012# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1005CONFIG_SYSCTL_SYSCALL_CHECK=y 1013CONFIG_SYSCTL_SYSCALL_CHECK=y
1014
1015#
1016# Tracers
1017#
1018# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1006# CONFIG_SAMPLES is not set 1019# CONFIG_SAMPLES is not set
1007 1020
1008# 1021#
@@ -1010,6 +1023,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
1010# 1023#
1011# CONFIG_KEYS is not set 1024# CONFIG_KEYS is not set
1012# CONFIG_SECURITY is not set 1025# CONFIG_SECURITY is not set
1026# CONFIG_SECURITYFS is not set
1013# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1027# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1014CONFIG_XOR_BLOCKS=m 1028CONFIG_XOR_BLOCKS=m
1015CONFIG_ASYNC_CORE=m 1029CONFIG_ASYNC_CORE=m
@@ -1020,10 +1034,12 @@ CONFIG_CRYPTO=y
1020# 1034#
1021# Crypto core or helper 1035# Crypto core or helper
1022# 1036#
1037# CONFIG_CRYPTO_FIPS is not set
1023CONFIG_CRYPTO_ALGAPI=y 1038CONFIG_CRYPTO_ALGAPI=y
1024CONFIG_CRYPTO_AEAD=m 1039CONFIG_CRYPTO_AEAD=y
1025CONFIG_CRYPTO_BLKCIPHER=y 1040CONFIG_CRYPTO_BLKCIPHER=y
1026CONFIG_CRYPTO_HASH=y 1041CONFIG_CRYPTO_HASH=y
1042CONFIG_CRYPTO_RNG=y
1027CONFIG_CRYPTO_MANAGER=y 1043CONFIG_CRYPTO_MANAGER=y
1028CONFIG_CRYPTO_GF128MUL=m 1044CONFIG_CRYPTO_GF128MUL=m
1029CONFIG_CRYPTO_NULL=m 1045CONFIG_CRYPTO_NULL=m
@@ -1097,14 +1113,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1097# 1113#
1098CONFIG_CRYPTO_DEFLATE=m 1114CONFIG_CRYPTO_DEFLATE=m
1099CONFIG_CRYPTO_LZO=m 1115CONFIG_CRYPTO_LZO=m
1116
1117#
1118# Random Number Generation
1119#
1120# CONFIG_CRYPTO_ANSI_CPRNG is not set
1100# CONFIG_CRYPTO_HW is not set 1121# CONFIG_CRYPTO_HW is not set
1101 1122
1102# 1123#
1103# Library routines 1124# Library routines
1104# 1125#
1105CONFIG_BITREVERSE=y 1126CONFIG_BITREVERSE=y
1106# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1107# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1108CONFIG_CRC_CCITT=m 1127CONFIG_CRC_CCITT=m
1109CONFIG_CRC16=m 1128CONFIG_CRC16=m
1110CONFIG_CRC_T10DIF=y 1129CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/sun3_defconfig b/arch/m68k/configs/sun3_defconfig
index cb62b96d766e..f404917429fa 100644
--- a/arch/m68k/configs/sun3_defconfig
+++ b/arch/m68k/configs/sun3_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:11 2008 4# Tue Dec 2 20:27:53 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16CONFIG_NO_DMA=y 16CONFIG_NO_DMA=y
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,10 +105,19 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
113# CONFIG_AMIGA is not set
114# CONFIG_ATARI is not set
115# CONFIG_MAC is not set
116# CONFIG_APOLLO is not set
117# CONFIG_VME is not set
118# CONFIG_HP300 is not set
119# CONFIG_SUN3X is not set
120# CONFIG_Q40 is not set
122CONFIG_SUN3=y 121CONFIG_SUN3=y
123 122
124# 123#
@@ -137,19 +136,21 @@ CONFIG_FLATMEM_MANUAL=y
137CONFIG_FLATMEM=y 136CONFIG_FLATMEM=y
138CONFIG_FLAT_NODE_MEM_MAP=y 137CONFIG_FLAT_NODE_MEM_MAP=y
139CONFIG_NEED_MULTIPLE_NODES=y 138CONFIG_NEED_MULTIPLE_NODES=y
140# CONFIG_SPARSEMEM_STATIC is not set
141# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
142CONFIG_PAGEFLAGS_EXTENDED=y 139CONFIG_PAGEFLAGS_EXTENDED=y
143CONFIG_SPLIT_PTLOCK_CPUS=4 140CONFIG_SPLIT_PTLOCK_CPUS=4
144# CONFIG_RESOURCES_64BIT is not set 141# CONFIG_RESOURCES_64BIT is not set
142# CONFIG_PHYS_ADDR_T_64BIT is not set
145CONFIG_ZONE_DMA_FLAG=1 143CONFIG_ZONE_DMA_FLAG=1
146CONFIG_BOUNCE=y 144CONFIG_BOUNCE=y
147CONFIG_VIRT_TO_BUS=y 145CONFIG_VIRT_TO_BUS=y
146CONFIG_UNEVICTABLE_LRU=y
148 147
149# 148#
150# General setup 149# General setup
151# 150#
152CONFIG_BINFMT_ELF=y 151CONFIG_BINFMT_ELF=y
152# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
153CONFIG_HAVE_AOUT=y
153CONFIG_BINFMT_AOUT=m 154CONFIG_BINFMT_AOUT=m
154CONFIG_BINFMT_MISC=m 155CONFIG_BINFMT_MISC=m
155CONFIG_PROC_HARDWARE=y 156CONFIG_PROC_HARDWARE=y
@@ -198,7 +199,6 @@ CONFIG_INET_TCP_DIAG=m
198CONFIG_TCP_CONG_CUBIC=y 199CONFIG_TCP_CONG_CUBIC=y
199CONFIG_DEFAULT_TCP_CONG="cubic" 200CONFIG_DEFAULT_TCP_CONG="cubic"
200# CONFIG_TCP_MD5SIG is not set 201# CONFIG_TCP_MD5SIG is not set
201# CONFIG_IP_VS is not set
202CONFIG_IPV6=m 202CONFIG_IPV6=m
203CONFIG_IPV6_PRIVACY=y 203CONFIG_IPV6_PRIVACY=y
204CONFIG_IPV6_ROUTER_PREF=y 204CONFIG_IPV6_ROUTER_PREF=y
@@ -248,13 +248,14 @@ CONFIG_NF_CONNTRACK_SANE=m
248CONFIG_NF_CONNTRACK_SIP=m 248CONFIG_NF_CONNTRACK_SIP=m
249CONFIG_NF_CONNTRACK_TFTP=m 249CONFIG_NF_CONNTRACK_TFTP=m
250# CONFIG_NF_CT_NETLINK is not set 250# CONFIG_NF_CT_NETLINK is not set
251# CONFIG_NETFILTER_TPROXY is not set
251CONFIG_NETFILTER_XTABLES=m 252CONFIG_NETFILTER_XTABLES=m
252CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 253CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
253CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 254CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
254CONFIG_NETFILTER_XT_TARGET_DSCP=m 255CONFIG_NETFILTER_XT_TARGET_DSCP=m
255CONFIG_NETFILTER_XT_TARGET_MARK=m 256CONFIG_NETFILTER_XT_TARGET_MARK=m
256CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
257CONFIG_NETFILTER_XT_TARGET_NFLOG=m 257CONFIG_NETFILTER_XT_TARGET_NFLOG=m
258CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
258CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 259CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
259CONFIG_NETFILTER_XT_TARGET_RATEEST=m 260CONFIG_NETFILTER_XT_TARGET_RATEEST=m
260CONFIG_NETFILTER_XT_TARGET_TRACE=m 261CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -268,19 +269,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
268CONFIG_NETFILTER_XT_MATCH_DCCP=m 269CONFIG_NETFILTER_XT_MATCH_DCCP=m
269CONFIG_NETFILTER_XT_MATCH_DSCP=m 270CONFIG_NETFILTER_XT_MATCH_DSCP=m
270CONFIG_NETFILTER_XT_MATCH_ESP=m 271CONFIG_NETFILTER_XT_MATCH_ESP=m
272CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
271CONFIG_NETFILTER_XT_MATCH_HELPER=m 273CONFIG_NETFILTER_XT_MATCH_HELPER=m
272CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 274CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
273CONFIG_NETFILTER_XT_MATCH_LENGTH=m 275CONFIG_NETFILTER_XT_MATCH_LENGTH=m
274CONFIG_NETFILTER_XT_MATCH_LIMIT=m 276CONFIG_NETFILTER_XT_MATCH_LIMIT=m
275CONFIG_NETFILTER_XT_MATCH_MAC=m 277CONFIG_NETFILTER_XT_MATCH_MAC=m
276CONFIG_NETFILTER_XT_MATCH_MARK=m 278CONFIG_NETFILTER_XT_MATCH_MARK=m
279CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
277CONFIG_NETFILTER_XT_MATCH_OWNER=m 280CONFIG_NETFILTER_XT_MATCH_OWNER=m
278CONFIG_NETFILTER_XT_MATCH_POLICY=m 281CONFIG_NETFILTER_XT_MATCH_POLICY=m
279CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
280CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 282CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
281CONFIG_NETFILTER_XT_MATCH_QUOTA=m 283CONFIG_NETFILTER_XT_MATCH_QUOTA=m
282CONFIG_NETFILTER_XT_MATCH_RATEEST=m 284CONFIG_NETFILTER_XT_MATCH_RATEEST=m
283CONFIG_NETFILTER_XT_MATCH_REALM=m 285CONFIG_NETFILTER_XT_MATCH_REALM=m
286CONFIG_NETFILTER_XT_MATCH_RECENT=m
287# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
284CONFIG_NETFILTER_XT_MATCH_SCTP=m 288CONFIG_NETFILTER_XT_MATCH_SCTP=m
285CONFIG_NETFILTER_XT_MATCH_STATE=m 289CONFIG_NETFILTER_XT_MATCH_STATE=m
286CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 290CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -288,20 +292,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
288CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 292CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
289CONFIG_NETFILTER_XT_MATCH_TIME=m 293CONFIG_NETFILTER_XT_MATCH_TIME=m
290CONFIG_NETFILTER_XT_MATCH_U32=m 294CONFIG_NETFILTER_XT_MATCH_U32=m
291CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 295# CONFIG_IP_VS is not set
292 296
293# 297#
294# IP: Netfilter Configuration 298# IP: Netfilter Configuration
295# 299#
300CONFIG_NF_DEFRAG_IPV4=m
296CONFIG_NF_CONNTRACK_IPV4=m 301CONFIG_NF_CONNTRACK_IPV4=m
297CONFIG_NF_CONNTRACK_PROC_COMPAT=y 302CONFIG_NF_CONNTRACK_PROC_COMPAT=y
298CONFIG_IP_NF_QUEUE=m 303CONFIG_IP_NF_QUEUE=m
299CONFIG_IP_NF_IPTABLES=m 304CONFIG_IP_NF_IPTABLES=m
300CONFIG_IP_NF_MATCH_RECENT=m 305CONFIG_IP_NF_MATCH_ADDRTYPE=m
301CONFIG_IP_NF_MATCH_ECN=m
302CONFIG_IP_NF_MATCH_AH=m 306CONFIG_IP_NF_MATCH_AH=m
307CONFIG_IP_NF_MATCH_ECN=m
303CONFIG_IP_NF_MATCH_TTL=m 308CONFIG_IP_NF_MATCH_TTL=m
304CONFIG_IP_NF_MATCH_ADDRTYPE=m
305CONFIG_IP_NF_FILTER=m 309CONFIG_IP_NF_FILTER=m
306CONFIG_IP_NF_TARGET_REJECT=m 310CONFIG_IP_NF_TARGET_REJECT=m
307CONFIG_IP_NF_TARGET_LOG=m 311CONFIG_IP_NF_TARGET_LOG=m
@@ -309,8 +313,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
309CONFIG_NF_NAT=m 313CONFIG_NF_NAT=m
310CONFIG_NF_NAT_NEEDED=y 314CONFIG_NF_NAT_NEEDED=y
311CONFIG_IP_NF_TARGET_MASQUERADE=m 315CONFIG_IP_NF_TARGET_MASQUERADE=m
312CONFIG_IP_NF_TARGET_REDIRECT=m
313CONFIG_IP_NF_TARGET_NETMAP=m 316CONFIG_IP_NF_TARGET_NETMAP=m
317CONFIG_IP_NF_TARGET_REDIRECT=m
314CONFIG_NF_NAT_SNMP_BASIC=m 318CONFIG_NF_NAT_SNMP_BASIC=m
315CONFIG_NF_NAT_PROTO_GRE=m 319CONFIG_NF_NAT_PROTO_GRE=m
316CONFIG_NF_NAT_PROTO_UDPLITE=m 320CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -323,9 +327,9 @@ CONFIG_NF_NAT_PPTP=m
323CONFIG_NF_NAT_H323=m 327CONFIG_NF_NAT_H323=m
324CONFIG_NF_NAT_SIP=m 328CONFIG_NF_NAT_SIP=m
325CONFIG_IP_NF_MANGLE=m 329CONFIG_IP_NF_MANGLE=m
330CONFIG_IP_NF_TARGET_CLUSTERIP=m
326CONFIG_IP_NF_TARGET_ECN=m 331CONFIG_IP_NF_TARGET_ECN=m
327CONFIG_IP_NF_TARGET_TTL=m 332CONFIG_IP_NF_TARGET_TTL=m
328CONFIG_IP_NF_TARGET_CLUSTERIP=m
329CONFIG_IP_NF_RAW=m 333CONFIG_IP_NF_RAW=m
330CONFIG_IP_NF_ARPTABLES=m 334CONFIG_IP_NF_ARPTABLES=m
331CONFIG_IP_NF_ARPFILTER=m 335CONFIG_IP_NF_ARPFILTER=m
@@ -337,16 +341,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
337CONFIG_NF_CONNTRACK_IPV6=m 341CONFIG_NF_CONNTRACK_IPV6=m
338CONFIG_IP6_NF_QUEUE=m 342CONFIG_IP6_NF_QUEUE=m
339CONFIG_IP6_NF_IPTABLES=m 343CONFIG_IP6_NF_IPTABLES=m
340CONFIG_IP6_NF_MATCH_RT=m 344CONFIG_IP6_NF_MATCH_AH=m
341CONFIG_IP6_NF_MATCH_OPTS=m 345CONFIG_IP6_NF_MATCH_EUI64=m
342CONFIG_IP6_NF_MATCH_FRAG=m 346CONFIG_IP6_NF_MATCH_FRAG=m
347CONFIG_IP6_NF_MATCH_OPTS=m
343CONFIG_IP6_NF_MATCH_HL=m 348CONFIG_IP6_NF_MATCH_HL=m
344CONFIG_IP6_NF_MATCH_IPV6HEADER=m 349CONFIG_IP6_NF_MATCH_IPV6HEADER=m
345CONFIG_IP6_NF_MATCH_AH=m
346CONFIG_IP6_NF_MATCH_MH=m 350CONFIG_IP6_NF_MATCH_MH=m
347CONFIG_IP6_NF_MATCH_EUI64=m 351CONFIG_IP6_NF_MATCH_RT=m
348CONFIG_IP6_NF_FILTER=m
349CONFIG_IP6_NF_TARGET_LOG=m 352CONFIG_IP6_NF_TARGET_LOG=m
353CONFIG_IP6_NF_FILTER=m
350CONFIG_IP6_NF_TARGET_REJECT=m 354CONFIG_IP6_NF_TARGET_REJECT=m
351CONFIG_IP6_NF_MANGLE=m 355CONFIG_IP6_NF_MANGLE=m
352CONFIG_IP6_NF_TARGET_HL=m 356CONFIG_IP6_NF_TARGET_HL=m
@@ -373,6 +377,7 @@ CONFIG_SCTP_HMAC_MD5=y
373# CONFIG_TIPC is not set 377# CONFIG_TIPC is not set
374# CONFIG_ATM is not set 378# CONFIG_ATM is not set
375# CONFIG_BRIDGE is not set 379# CONFIG_BRIDGE is not set
380# CONFIG_NET_DSA is not set
376# CONFIG_VLAN_8021Q is not set 381# CONFIG_VLAN_8021Q is not set
377# CONFIG_DECNET is not set 382# CONFIG_DECNET is not set
378CONFIG_LLC=m 383CONFIG_LLC=m
@@ -396,19 +401,8 @@ CONFIG_NET_CLS_ROUTE=y
396# CONFIG_IRDA is not set 401# CONFIG_IRDA is not set
397# CONFIG_BT is not set 402# CONFIG_BT is not set
398# CONFIG_AF_RXRPC is not set 403# CONFIG_AF_RXRPC is not set
399 404# CONFIG_PHONET is not set
400# 405# CONFIG_WIRELESS is not set
401# Wireless
402#
403# CONFIG_CFG80211 is not set
404CONFIG_WIRELESS_EXT=y
405# CONFIG_WIRELESS_EXT_SYSFS is not set
406# CONFIG_MAC80211 is not set
407CONFIG_IEEE80211=m
408# CONFIG_IEEE80211_DEBUG is not set
409CONFIG_IEEE80211_CRYPT_WEP=m
410CONFIG_IEEE80211_CRYPT_CCMP=m
411CONFIG_IEEE80211_CRYPT_TKIP=m
412# CONFIG_RFKILL is not set 406# CONFIG_RFKILL is not set
413# CONFIG_NET_9P is not set 407# CONFIG_NET_9P is not set
414 408
@@ -446,6 +440,7 @@ CONFIG_ATA_OVER_ETH=m
446CONFIG_MISC_DEVICES=y 440CONFIG_MISC_DEVICES=y
447# CONFIG_EEPROM_93CX6 is not set 441# CONFIG_EEPROM_93CX6 is not set
448# CONFIG_ENCLOSURE_SERVICES is not set 442# CONFIG_ENCLOSURE_SERVICES is not set
443# CONFIG_C2PORT is not set
449CONFIG_HAVE_IDE=y 444CONFIG_HAVE_IDE=y
450# CONFIG_IDE is not set 445# CONFIG_IDE is not set
451 446
@@ -531,6 +526,9 @@ CONFIG_SUN3_82586=y
531# CONFIG_IBM_NEW_EMAC_RGMII is not set 526# CONFIG_IBM_NEW_EMAC_RGMII is not set
532# CONFIG_IBM_NEW_EMAC_TAH is not set 527# CONFIG_IBM_NEW_EMAC_TAH is not set
533# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 528# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
529# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
530# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
531# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
534# CONFIG_NETDEV_1000 is not set 532# CONFIG_NETDEV_1000 is not set
535# CONFIG_NETDEV_10000 is not set 533# CONFIG_NETDEV_10000 is not set
536 534
@@ -599,6 +597,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
599CONFIG_MOUSE_PS2_SYNAPTICS=y 597CONFIG_MOUSE_PS2_SYNAPTICS=y
600CONFIG_MOUSE_PS2_LIFEBOOK=y 598CONFIG_MOUSE_PS2_LIFEBOOK=y
601CONFIG_MOUSE_PS2_TRACKPOINT=y 599CONFIG_MOUSE_PS2_TRACKPOINT=y
600# CONFIG_MOUSE_PS2_ELANTECH is not set
602# CONFIG_MOUSE_PS2_TOUCHKIT is not set 601# CONFIG_MOUSE_PS2_TOUCHKIT is not set
603CONFIG_MOUSE_SERIAL=m 602CONFIG_MOUSE_SERIAL=m
604# CONFIG_MOUSE_VSXXXAA is not set 603# CONFIG_MOUSE_VSXXXAA is not set
@@ -655,16 +654,13 @@ CONFIG_GEN_RTC_X=y
655# CONFIG_WATCHDOG is not set 654# CONFIG_WATCHDOG is not set
656 655
657# 656#
658# Sonics Silicon Backplane
659#
660
661#
662# Multifunction device drivers 657# Multifunction device drivers
663# 658#
664# CONFIG_MFD_CORE is not set 659# CONFIG_MFD_CORE is not set
665# CONFIG_MFD_SM501 is not set 660# CONFIG_MFD_SM501 is not set
666# CONFIG_HTC_PASIC3 is not set 661# CONFIG_HTC_PASIC3 is not set
667# CONFIG_MFD_TMIO is not set 662# CONFIG_MFD_TMIO is not set
663# CONFIG_REGULATOR is not set
668 664
669# 665#
670# Multimedia devices 666# Multimedia devices
@@ -690,6 +686,7 @@ CONFIG_GEN_RTC_X=y
690CONFIG_FB=y 686CONFIG_FB=y
691# CONFIG_FIRMWARE_EDID is not set 687# CONFIG_FIRMWARE_EDID is not set
692# CONFIG_FB_DDC is not set 688# CONFIG_FB_DDC is not set
689# CONFIG_FB_BOOT_VESA_SUPPORT is not set
693# CONFIG_FB_CFB_FILLRECT is not set 690# CONFIG_FB_CFB_FILLRECT is not set
694# CONFIG_FB_CFB_COPYAREA is not set 691# CONFIG_FB_CFB_COPYAREA is not set
695# CONFIG_FB_CFB_IMAGEBLIT is not set 692# CONFIG_FB_CFB_IMAGEBLIT is not set
@@ -711,6 +708,8 @@ CONFIG_FB=y
711# CONFIG_FB_UVESA is not set 708# CONFIG_FB_UVESA is not set
712# CONFIG_FB_S1D13XXX is not set 709# CONFIG_FB_S1D13XXX is not set
713# CONFIG_FB_VIRTUAL is not set 710# CONFIG_FB_VIRTUAL is not set
711# CONFIG_FB_METRONOME is not set
712# CONFIG_FB_MB862XX is not set
714# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 713# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
715 714
716# 715#
@@ -737,6 +736,12 @@ CONFIG_HID_SUPPORT=y
737CONFIG_HID=m 736CONFIG_HID=m
738# CONFIG_HID_DEBUG is not set 737# CONFIG_HID_DEBUG is not set
739CONFIG_HIDRAW=y 738CONFIG_HIDRAW=y
739# CONFIG_HID_PID is not set
740
741#
742# Special HID drivers
743#
744CONFIG_HID_COMPAT=y
740# CONFIG_USB_SUPPORT is not set 745# CONFIG_USB_SUPPORT is not set
741# CONFIG_MMC is not set 746# CONFIG_MMC is not set
742# CONFIG_MEMSTICK is not set 747# CONFIG_MEMSTICK is not set
@@ -744,6 +749,8 @@ CONFIG_HIDRAW=y
744# CONFIG_ACCESSIBILITY is not set 749# CONFIG_ACCESSIBILITY is not set
745# CONFIG_RTC_CLASS is not set 750# CONFIG_RTC_CLASS is not set
746# CONFIG_UIO is not set 751# CONFIG_UIO is not set
752# CONFIG_STAGING is not set
753CONFIG_STAGING_EXCLUDE_BUILD=y
747 754
748# 755#
749# Character devices 756# Character devices
@@ -757,8 +764,9 @@ CONFIG_EXT2_FS=y
757# CONFIG_EXT2_FS_XIP is not set 764# CONFIG_EXT2_FS_XIP is not set
758CONFIG_EXT3_FS=y 765CONFIG_EXT3_FS=y
759# CONFIG_EXT3_FS_XATTR is not set 766# CONFIG_EXT3_FS_XATTR is not set
760# CONFIG_EXT4DEV_FS is not set 767# CONFIG_EXT4_FS is not set
761CONFIG_JBD=y 768CONFIG_JBD=y
769CONFIG_JBD2=m
762CONFIG_REISERFS_FS=m 770CONFIG_REISERFS_FS=m
763# CONFIG_REISERFS_CHECK is not set 771# CONFIG_REISERFS_CHECK is not set
764# CONFIG_REISERFS_PROC_INFO is not set 772# CONFIG_REISERFS_PROC_INFO is not set
@@ -769,6 +777,7 @@ CONFIG_JFS_FS=m
769# CONFIG_JFS_DEBUG is not set 777# CONFIG_JFS_DEBUG is not set
770# CONFIG_JFS_STATISTICS is not set 778# CONFIG_JFS_STATISTICS is not set
771# CONFIG_FS_POSIX_ACL is not set 779# CONFIG_FS_POSIX_ACL is not set
780CONFIG_FILE_LOCKING=y
772CONFIG_XFS_FS=m 781CONFIG_XFS_FS=m
773# CONFIG_XFS_QUOTA is not set 782# CONFIG_XFS_QUOTA is not set
774# CONFIG_XFS_POSIX_ACL is not set 783# CONFIG_XFS_POSIX_ACL is not set
@@ -780,6 +789,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
780# CONFIG_OCFS2_FS_STATS is not set 789# CONFIG_OCFS2_FS_STATS is not set
781# CONFIG_OCFS2_DEBUG_MASKLOG is not set 790# CONFIG_OCFS2_DEBUG_MASKLOG is not set
782# CONFIG_OCFS2_DEBUG_FS is not set 791# CONFIG_OCFS2_DEBUG_FS is not set
792# CONFIG_OCFS2_COMPAT_JBD is not set
783CONFIG_DNOTIFY=y 793CONFIG_DNOTIFY=y
784CONFIG_INOTIFY=y 794CONFIG_INOTIFY=y
785CONFIG_INOTIFY_USER=y 795CONFIG_INOTIFY_USER=y
@@ -818,6 +828,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
818CONFIG_PROC_FS=y 828CONFIG_PROC_FS=y
819CONFIG_PROC_KCORE=y 829CONFIG_PROC_KCORE=y
820CONFIG_PROC_SYSCTL=y 830CONFIG_PROC_SYSCTL=y
831CONFIG_PROC_PAGE_MONITOR=y
821CONFIG_SYSFS=y 832CONFIG_SYSFS=y
822CONFIG_TMPFS=y 833CONFIG_TMPFS=y
823# CONFIG_TMPFS_POSIX_ACL is not set 834# CONFIG_TMPFS_POSIX_ACL is not set
@@ -861,6 +872,7 @@ CONFIG_EXPORTFS=m
861CONFIG_NFS_COMMON=y 872CONFIG_NFS_COMMON=y
862CONFIG_SUNRPC=y 873CONFIG_SUNRPC=y
863CONFIG_SUNRPC_GSS=y 874CONFIG_SUNRPC_GSS=y
875# CONFIG_SUNRPC_REGISTER_V4 is not set
864CONFIG_RPCSEC_GSS_KRB5=y 876CONFIG_RPCSEC_GSS_KRB5=y
865# CONFIG_RPCSEC_GSS_SPKM3 is not set 877# CONFIG_RPCSEC_GSS_SPKM3 is not set
866CONFIG_SMB_FS=m 878CONFIG_SMB_FS=m
@@ -934,7 +946,13 @@ CONFIG_MAGIC_SYSRQ=y
934# CONFIG_DEBUG_KERNEL is not set 946# CONFIG_DEBUG_KERNEL is not set
935CONFIG_DEBUG_BUGVERBOSE=y 947CONFIG_DEBUG_BUGVERBOSE=y
936CONFIG_DEBUG_MEMORY_INIT=y 948CONFIG_DEBUG_MEMORY_INIT=y
949# CONFIG_RCU_CPU_STALL_DETECTOR is not set
937CONFIG_SYSCTL_SYSCALL_CHECK=y 950CONFIG_SYSCTL_SYSCALL_CHECK=y
951
952#
953# Tracers
954#
955# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
938# CONFIG_SAMPLES is not set 956# CONFIG_SAMPLES is not set
939 957
940# 958#
@@ -942,6 +960,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
942# 960#
943# CONFIG_KEYS is not set 961# CONFIG_KEYS is not set
944# CONFIG_SECURITY is not set 962# CONFIG_SECURITY is not set
963# CONFIG_SECURITYFS is not set
945# CONFIG_SECURITY_FILE_CAPABILITIES is not set 964# CONFIG_SECURITY_FILE_CAPABILITIES is not set
946CONFIG_XOR_BLOCKS=m 965CONFIG_XOR_BLOCKS=m
947CONFIG_ASYNC_CORE=m 966CONFIG_ASYNC_CORE=m
@@ -952,10 +971,12 @@ CONFIG_CRYPTO=y
952# 971#
953# Crypto core or helper 972# Crypto core or helper
954# 973#
974# CONFIG_CRYPTO_FIPS is not set
955CONFIG_CRYPTO_ALGAPI=y 975CONFIG_CRYPTO_ALGAPI=y
956CONFIG_CRYPTO_AEAD=m 976CONFIG_CRYPTO_AEAD=y
957CONFIG_CRYPTO_BLKCIPHER=y 977CONFIG_CRYPTO_BLKCIPHER=y
958CONFIG_CRYPTO_HASH=y 978CONFIG_CRYPTO_HASH=y
979CONFIG_CRYPTO_RNG=y
959CONFIG_CRYPTO_MANAGER=y 980CONFIG_CRYPTO_MANAGER=y
960CONFIG_CRYPTO_GF128MUL=m 981CONFIG_CRYPTO_GF128MUL=m
961CONFIG_CRYPTO_NULL=m 982CONFIG_CRYPTO_NULL=m
@@ -1029,14 +1050,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1029# 1050#
1030CONFIG_CRYPTO_DEFLATE=m 1051CONFIG_CRYPTO_DEFLATE=m
1031CONFIG_CRYPTO_LZO=m 1052CONFIG_CRYPTO_LZO=m
1053
1054#
1055# Random Number Generation
1056#
1057# CONFIG_CRYPTO_ANSI_CPRNG is not set
1032# CONFIG_CRYPTO_HW is not set 1058# CONFIG_CRYPTO_HW is not set
1033 1059
1034# 1060#
1035# Library routines 1061# Library routines
1036# 1062#
1037CONFIG_BITREVERSE=y 1063CONFIG_BITREVERSE=y
1038# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1039# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1040CONFIG_CRC_CCITT=m 1064CONFIG_CRC_CCITT=m
1041CONFIG_CRC16=m 1065CONFIG_CRC16=m
1042CONFIG_CRC_T10DIF=y 1066CONFIG_CRC_T10DIF=y
diff --git a/arch/m68k/configs/sun3x_defconfig b/arch/m68k/configs/sun3x_defconfig
index 04b4363a7050..4d8a1e84e39f 100644
--- a/arch/m68k/configs/sun3x_defconfig
+++ b/arch/m68k/configs/sun3x_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.27-rc6 3# Linux kernel version: 2.6.28-rc7
4# Wed Sep 10 09:02:12 2008 4# Tue Dec 2 20:27:54 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -14,7 +14,6 @@ CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100 17CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 18CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20 19
@@ -67,22 +66,13 @@ CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y 66CONFIG_TIMERFD=y
68CONFIG_EVENTFD=y 67CONFIG_EVENTFD=y
69CONFIG_SHMEM=y 68CONFIG_SHMEM=y
69CONFIG_AIO=y
70CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
71CONFIG_SLAB=y 71CONFIG_SLAB=y
72# CONFIG_SLUB is not set 72# CONFIG_SLUB is not set
73# CONFIG_SLOB is not set 73# CONFIG_SLOB is not set
74# CONFIG_PROFILING is not set 74# CONFIG_PROFILING is not set
75# CONFIG_MARKERS is not set 75# CONFIG_MARKERS is not set
76# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
78# CONFIG_HAVE_IOREMAP_PROT is not set
79# CONFIG_HAVE_KPROBES is not set
80# CONFIG_HAVE_KRETPROBES is not set
81# CONFIG_HAVE_ARCH_TRACEHOOK is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83# CONFIG_USE_GENERIC_SMP_HELPERS is not set
84# CONFIG_HAVE_CLK is not set
85CONFIG_PROC_PAGE_MONITOR=y
86# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set 76# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
87CONFIG_SLABINFO=y 77CONFIG_SLABINFO=y
88CONFIG_RT_MUTEXES=y 78CONFIG_RT_MUTEXES=y
@@ -115,11 +105,11 @@ CONFIG_DEFAULT_AS=y
115# CONFIG_DEFAULT_NOOP is not set 105# CONFIG_DEFAULT_NOOP is not set
116CONFIG_DEFAULT_IOSCHED="anticipatory" 106CONFIG_DEFAULT_IOSCHED="anticipatory"
117CONFIG_CLASSIC_RCU=y 107CONFIG_CLASSIC_RCU=y
108# CONFIG_FREEZER is not set
118 109
119# 110#
120# Platform dependent setup 111# Platform dependent setup
121# 112#
122# CONFIG_SUN3 is not set
123# CONFIG_AMIGA is not set 113# CONFIG_AMIGA is not set
124# CONFIG_ATARI is not set 114# CONFIG_ATARI is not set
125# CONFIG_MAC is not set 115# CONFIG_MAC is not set
@@ -148,19 +138,21 @@ CONFIG_DISCONTIGMEM_MANUAL=y
148CONFIG_DISCONTIGMEM=y 138CONFIG_DISCONTIGMEM=y
149CONFIG_FLAT_NODE_MEM_MAP=y 139CONFIG_FLAT_NODE_MEM_MAP=y
150CONFIG_NEED_MULTIPLE_NODES=y 140CONFIG_NEED_MULTIPLE_NODES=y
151# CONFIG_SPARSEMEM_STATIC is not set
152# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
153CONFIG_PAGEFLAGS_EXTENDED=y 141CONFIG_PAGEFLAGS_EXTENDED=y
154CONFIG_SPLIT_PTLOCK_CPUS=4 142CONFIG_SPLIT_PTLOCK_CPUS=4
155# CONFIG_RESOURCES_64BIT is not set 143# CONFIG_RESOURCES_64BIT is not set
144# CONFIG_PHYS_ADDR_T_64BIT is not set
156CONFIG_ZONE_DMA_FLAG=1 145CONFIG_ZONE_DMA_FLAG=1
157CONFIG_BOUNCE=y 146CONFIG_BOUNCE=y
158CONFIG_VIRT_TO_BUS=y 147CONFIG_VIRT_TO_BUS=y
148CONFIG_UNEVICTABLE_LRU=y
159 149
160# 150#
161# General setup 151# General setup
162# 152#
163CONFIG_BINFMT_ELF=y 153CONFIG_BINFMT_ELF=y
154# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
155CONFIG_HAVE_AOUT=y
164CONFIG_BINFMT_AOUT=m 156CONFIG_BINFMT_AOUT=m
165CONFIG_BINFMT_MISC=m 157CONFIG_BINFMT_MISC=m
166CONFIG_PROC_HARDWARE=y 158CONFIG_PROC_HARDWARE=y
@@ -209,7 +201,6 @@ CONFIG_INET_TCP_DIAG=m
209CONFIG_TCP_CONG_CUBIC=y 201CONFIG_TCP_CONG_CUBIC=y
210CONFIG_DEFAULT_TCP_CONG="cubic" 202CONFIG_DEFAULT_TCP_CONG="cubic"
211# CONFIG_TCP_MD5SIG is not set 203# CONFIG_TCP_MD5SIG is not set
212# CONFIG_IP_VS is not set
213CONFIG_IPV6=m 204CONFIG_IPV6=m
214CONFIG_IPV6_PRIVACY=y 205CONFIG_IPV6_PRIVACY=y
215CONFIG_IPV6_ROUTER_PREF=y 206CONFIG_IPV6_ROUTER_PREF=y
@@ -259,13 +250,14 @@ CONFIG_NF_CONNTRACK_SANE=m
259CONFIG_NF_CONNTRACK_SIP=m 250CONFIG_NF_CONNTRACK_SIP=m
260CONFIG_NF_CONNTRACK_TFTP=m 251CONFIG_NF_CONNTRACK_TFTP=m
261# CONFIG_NF_CT_NETLINK is not set 252# CONFIG_NF_CT_NETLINK is not set
253# CONFIG_NETFILTER_TPROXY is not set
262CONFIG_NETFILTER_XTABLES=m 254CONFIG_NETFILTER_XTABLES=m
263CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 255CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
264CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 256CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
265CONFIG_NETFILTER_XT_TARGET_DSCP=m 257CONFIG_NETFILTER_XT_TARGET_DSCP=m
266CONFIG_NETFILTER_XT_TARGET_MARK=m 258CONFIG_NETFILTER_XT_TARGET_MARK=m
267CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
268CONFIG_NETFILTER_XT_TARGET_NFLOG=m 259CONFIG_NETFILTER_XT_TARGET_NFLOG=m
260CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
269CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 261CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
270CONFIG_NETFILTER_XT_TARGET_RATEEST=m 262CONFIG_NETFILTER_XT_TARGET_RATEEST=m
271CONFIG_NETFILTER_XT_TARGET_TRACE=m 263CONFIG_NETFILTER_XT_TARGET_TRACE=m
@@ -279,19 +271,22 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
279CONFIG_NETFILTER_XT_MATCH_DCCP=m 271CONFIG_NETFILTER_XT_MATCH_DCCP=m
280CONFIG_NETFILTER_XT_MATCH_DSCP=m 272CONFIG_NETFILTER_XT_MATCH_DSCP=m
281CONFIG_NETFILTER_XT_MATCH_ESP=m 273CONFIG_NETFILTER_XT_MATCH_ESP=m
274CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
282CONFIG_NETFILTER_XT_MATCH_HELPER=m 275CONFIG_NETFILTER_XT_MATCH_HELPER=m
283CONFIG_NETFILTER_XT_MATCH_IPRANGE=m 276CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
284CONFIG_NETFILTER_XT_MATCH_LENGTH=m 277CONFIG_NETFILTER_XT_MATCH_LENGTH=m
285CONFIG_NETFILTER_XT_MATCH_LIMIT=m 278CONFIG_NETFILTER_XT_MATCH_LIMIT=m
286CONFIG_NETFILTER_XT_MATCH_MAC=m 279CONFIG_NETFILTER_XT_MATCH_MAC=m
287CONFIG_NETFILTER_XT_MATCH_MARK=m 280CONFIG_NETFILTER_XT_MATCH_MARK=m
281CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
288CONFIG_NETFILTER_XT_MATCH_OWNER=m 282CONFIG_NETFILTER_XT_MATCH_OWNER=m
289CONFIG_NETFILTER_XT_MATCH_POLICY=m 283CONFIG_NETFILTER_XT_MATCH_POLICY=m
290CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
291CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 284CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
292CONFIG_NETFILTER_XT_MATCH_QUOTA=m 285CONFIG_NETFILTER_XT_MATCH_QUOTA=m
293CONFIG_NETFILTER_XT_MATCH_RATEEST=m 286CONFIG_NETFILTER_XT_MATCH_RATEEST=m
294CONFIG_NETFILTER_XT_MATCH_REALM=m 287CONFIG_NETFILTER_XT_MATCH_REALM=m
288CONFIG_NETFILTER_XT_MATCH_RECENT=m
289# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
295CONFIG_NETFILTER_XT_MATCH_SCTP=m 290CONFIG_NETFILTER_XT_MATCH_SCTP=m
296CONFIG_NETFILTER_XT_MATCH_STATE=m 291CONFIG_NETFILTER_XT_MATCH_STATE=m
297CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 292CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
@@ -299,20 +294,20 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
299CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 294CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
300CONFIG_NETFILTER_XT_MATCH_TIME=m 295CONFIG_NETFILTER_XT_MATCH_TIME=m
301CONFIG_NETFILTER_XT_MATCH_U32=m 296CONFIG_NETFILTER_XT_MATCH_U32=m
302CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 297# CONFIG_IP_VS is not set
303 298
304# 299#
305# IP: Netfilter Configuration 300# IP: Netfilter Configuration
306# 301#
302CONFIG_NF_DEFRAG_IPV4=m
307CONFIG_NF_CONNTRACK_IPV4=m 303CONFIG_NF_CONNTRACK_IPV4=m
308CONFIG_NF_CONNTRACK_PROC_COMPAT=y 304CONFIG_NF_CONNTRACK_PROC_COMPAT=y
309CONFIG_IP_NF_QUEUE=m 305CONFIG_IP_NF_QUEUE=m
310CONFIG_IP_NF_IPTABLES=m 306CONFIG_IP_NF_IPTABLES=m
311CONFIG_IP_NF_MATCH_RECENT=m 307CONFIG_IP_NF_MATCH_ADDRTYPE=m
312CONFIG_IP_NF_MATCH_ECN=m
313CONFIG_IP_NF_MATCH_AH=m 308CONFIG_IP_NF_MATCH_AH=m
309CONFIG_IP_NF_MATCH_ECN=m
314CONFIG_IP_NF_MATCH_TTL=m 310CONFIG_IP_NF_MATCH_TTL=m
315CONFIG_IP_NF_MATCH_ADDRTYPE=m
316CONFIG_IP_NF_FILTER=m 311CONFIG_IP_NF_FILTER=m
317CONFIG_IP_NF_TARGET_REJECT=m 312CONFIG_IP_NF_TARGET_REJECT=m
318CONFIG_IP_NF_TARGET_LOG=m 313CONFIG_IP_NF_TARGET_LOG=m
@@ -320,8 +315,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
320CONFIG_NF_NAT=m 315CONFIG_NF_NAT=m
321CONFIG_NF_NAT_NEEDED=y 316CONFIG_NF_NAT_NEEDED=y
322CONFIG_IP_NF_TARGET_MASQUERADE=m 317CONFIG_IP_NF_TARGET_MASQUERADE=m
323CONFIG_IP_NF_TARGET_REDIRECT=m
324CONFIG_IP_NF_TARGET_NETMAP=m 318CONFIG_IP_NF_TARGET_NETMAP=m
319CONFIG_IP_NF_TARGET_REDIRECT=m
325CONFIG_NF_NAT_SNMP_BASIC=m 320CONFIG_NF_NAT_SNMP_BASIC=m
326CONFIG_NF_NAT_PROTO_GRE=m 321CONFIG_NF_NAT_PROTO_GRE=m
327CONFIG_NF_NAT_PROTO_UDPLITE=m 322CONFIG_NF_NAT_PROTO_UDPLITE=m
@@ -334,9 +329,9 @@ CONFIG_NF_NAT_PPTP=m
334CONFIG_NF_NAT_H323=m 329CONFIG_NF_NAT_H323=m
335CONFIG_NF_NAT_SIP=m 330CONFIG_NF_NAT_SIP=m
336CONFIG_IP_NF_MANGLE=m 331CONFIG_IP_NF_MANGLE=m
332CONFIG_IP_NF_TARGET_CLUSTERIP=m
337CONFIG_IP_NF_TARGET_ECN=m 333CONFIG_IP_NF_TARGET_ECN=m
338CONFIG_IP_NF_TARGET_TTL=m 334CONFIG_IP_NF_TARGET_TTL=m
339CONFIG_IP_NF_TARGET_CLUSTERIP=m
340CONFIG_IP_NF_RAW=m 335CONFIG_IP_NF_RAW=m
341CONFIG_IP_NF_ARPTABLES=m 336CONFIG_IP_NF_ARPTABLES=m
342CONFIG_IP_NF_ARPFILTER=m 337CONFIG_IP_NF_ARPFILTER=m
@@ -348,16 +343,16 @@ CONFIG_IP_NF_ARP_MANGLE=m
348CONFIG_NF_CONNTRACK_IPV6=m 343CONFIG_NF_CONNTRACK_IPV6=m
349CONFIG_IP6_NF_QUEUE=m 344CONFIG_IP6_NF_QUEUE=m
350CONFIG_IP6_NF_IPTABLES=m 345CONFIG_IP6_NF_IPTABLES=m
351CONFIG_IP6_NF_MATCH_RT=m 346CONFIG_IP6_NF_MATCH_AH=m
352CONFIG_IP6_NF_MATCH_OPTS=m 347CONFIG_IP6_NF_MATCH_EUI64=m
353CONFIG_IP6_NF_MATCH_FRAG=m 348CONFIG_IP6_NF_MATCH_FRAG=m
349CONFIG_IP6_NF_MATCH_OPTS=m
354CONFIG_IP6_NF_MATCH_HL=m 350CONFIG_IP6_NF_MATCH_HL=m
355CONFIG_IP6_NF_MATCH_IPV6HEADER=m 351CONFIG_IP6_NF_MATCH_IPV6HEADER=m
356CONFIG_IP6_NF_MATCH_AH=m
357CONFIG_IP6_NF_MATCH_MH=m 352CONFIG_IP6_NF_MATCH_MH=m
358CONFIG_IP6_NF_MATCH_EUI64=m 353CONFIG_IP6_NF_MATCH_RT=m
359CONFIG_IP6_NF_FILTER=m
360CONFIG_IP6_NF_TARGET_LOG=m 354CONFIG_IP6_NF_TARGET_LOG=m
355CONFIG_IP6_NF_FILTER=m
361CONFIG_IP6_NF_TARGET_REJECT=m 356CONFIG_IP6_NF_TARGET_REJECT=m
362CONFIG_IP6_NF_MANGLE=m 357CONFIG_IP6_NF_MANGLE=m
363CONFIG_IP6_NF_TARGET_HL=m 358CONFIG_IP6_NF_TARGET_HL=m
@@ -384,6 +379,7 @@ CONFIG_SCTP_HMAC_MD5=y
384# CONFIG_TIPC is not set 379# CONFIG_TIPC is not set
385# CONFIG_ATM is not set 380# CONFIG_ATM is not set
386# CONFIG_BRIDGE is not set 381# CONFIG_BRIDGE is not set
382# CONFIG_NET_DSA is not set
387# CONFIG_VLAN_8021Q is not set 383# CONFIG_VLAN_8021Q is not set
388# CONFIG_DECNET is not set 384# CONFIG_DECNET is not set
389CONFIG_LLC=m 385CONFIG_LLC=m
@@ -407,19 +403,8 @@ CONFIG_NET_CLS_ROUTE=y
407# CONFIG_IRDA is not set 403# CONFIG_IRDA is not set
408# CONFIG_BT is not set 404# CONFIG_BT is not set
409# CONFIG_AF_RXRPC is not set 405# CONFIG_AF_RXRPC is not set
410 406# CONFIG_PHONET is not set
411# 407# CONFIG_WIRELESS is not set
412# Wireless
413#
414# CONFIG_CFG80211 is not set
415CONFIG_WIRELESS_EXT=y
416# CONFIG_WIRELESS_EXT_SYSFS is not set
417# CONFIG_MAC80211 is not set
418CONFIG_IEEE80211=m
419# CONFIG_IEEE80211_DEBUG is not set
420CONFIG_IEEE80211_CRYPT_WEP=m
421CONFIG_IEEE80211_CRYPT_CCMP=m
422CONFIG_IEEE80211_CRYPT_TKIP=m
423# CONFIG_RFKILL is not set 408# CONFIG_RFKILL is not set
424# CONFIG_NET_9P is not set 409# CONFIG_NET_9P is not set
425 410
@@ -457,6 +442,7 @@ CONFIG_ATA_OVER_ETH=m
457CONFIG_MISC_DEVICES=y 442CONFIG_MISC_DEVICES=y
458# CONFIG_EEPROM_93CX6 is not set 443# CONFIG_EEPROM_93CX6 is not set
459# CONFIG_ENCLOSURE_SERVICES is not set 444# CONFIG_ENCLOSURE_SERVICES is not set
445# CONFIG_C2PORT is not set
460CONFIG_HAVE_IDE=y 446CONFIG_HAVE_IDE=y
461# CONFIG_IDE is not set 447# CONFIG_IDE is not set
462 448
@@ -541,6 +527,9 @@ CONFIG_SUN3LANCE=y
541# CONFIG_IBM_NEW_EMAC_RGMII is not set 527# CONFIG_IBM_NEW_EMAC_RGMII is not set
542# CONFIG_IBM_NEW_EMAC_TAH is not set 528# CONFIG_IBM_NEW_EMAC_TAH is not set
543# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 529# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
530# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
531# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
532# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
544# CONFIG_B44 is not set 533# CONFIG_B44 is not set
545# CONFIG_NETDEV_1000 is not set 534# CONFIG_NETDEV_1000 is not set
546# CONFIG_NETDEV_10000 is not set 535# CONFIG_NETDEV_10000 is not set
@@ -610,6 +599,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
610CONFIG_MOUSE_PS2_SYNAPTICS=y 599CONFIG_MOUSE_PS2_SYNAPTICS=y
611CONFIG_MOUSE_PS2_LIFEBOOK=y 600CONFIG_MOUSE_PS2_LIFEBOOK=y
612CONFIG_MOUSE_PS2_TRACKPOINT=y 601CONFIG_MOUSE_PS2_TRACKPOINT=y
602# CONFIG_MOUSE_PS2_ELANTECH is not set
613# CONFIG_MOUSE_PS2_TOUCHKIT is not set 603# CONFIG_MOUSE_PS2_TOUCHKIT is not set
614CONFIG_MOUSE_SERIAL=m 604CONFIG_MOUSE_SERIAL=m
615# CONFIG_MOUSE_VSXXXAA is not set 605# CONFIG_MOUSE_VSXXXAA is not set
@@ -664,11 +654,11 @@ CONFIG_GEN_RTC_X=y
664# CONFIG_THERMAL is not set 654# CONFIG_THERMAL is not set
665# CONFIG_THERMAL_HWMON is not set 655# CONFIG_THERMAL_HWMON is not set
666# CONFIG_WATCHDOG is not set 656# CONFIG_WATCHDOG is not set
657CONFIG_SSB_POSSIBLE=y
667 658
668# 659#
669# Sonics Silicon Backplane 660# Sonics Silicon Backplane
670# 661#
671CONFIG_SSB_POSSIBLE=y
672# CONFIG_SSB is not set 662# CONFIG_SSB is not set
673 663
674# 664#
@@ -678,6 +668,7 @@ CONFIG_SSB_POSSIBLE=y
678# CONFIG_MFD_SM501 is not set 668# CONFIG_MFD_SM501 is not set
679# CONFIG_HTC_PASIC3 is not set 669# CONFIG_HTC_PASIC3 is not set
680# CONFIG_MFD_TMIO is not set 670# CONFIG_MFD_TMIO is not set
671# CONFIG_REGULATOR is not set
681 672
682# 673#
683# Multimedia devices 674# Multimedia devices
@@ -703,6 +694,7 @@ CONFIG_SSB_POSSIBLE=y
703CONFIG_FB=y 694CONFIG_FB=y
704# CONFIG_FIRMWARE_EDID is not set 695# CONFIG_FIRMWARE_EDID is not set
705# CONFIG_FB_DDC is not set 696# CONFIG_FB_DDC is not set
697# CONFIG_FB_BOOT_VESA_SUPPORT is not set
706# CONFIG_FB_CFB_FILLRECT is not set 698# CONFIG_FB_CFB_FILLRECT is not set
707# CONFIG_FB_CFB_COPYAREA is not set 699# CONFIG_FB_CFB_COPYAREA is not set
708# CONFIG_FB_CFB_IMAGEBLIT is not set 700# CONFIG_FB_CFB_IMAGEBLIT is not set
@@ -724,6 +716,8 @@ CONFIG_FB=y
724# CONFIG_FB_UVESA is not set 716# CONFIG_FB_UVESA is not set
725# CONFIG_FB_S1D13XXX is not set 717# CONFIG_FB_S1D13XXX is not set
726# CONFIG_FB_VIRTUAL is not set 718# CONFIG_FB_VIRTUAL is not set
719# CONFIG_FB_METRONOME is not set
720# CONFIG_FB_MB862XX is not set
727# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 721# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
728 722
729# 723#
@@ -750,6 +744,12 @@ CONFIG_HID_SUPPORT=y
750CONFIG_HID=m 744CONFIG_HID=m
751# CONFIG_HID_DEBUG is not set 745# CONFIG_HID_DEBUG is not set
752CONFIG_HIDRAW=y 746CONFIG_HIDRAW=y
747# CONFIG_HID_PID is not set
748
749#
750# Special HID drivers
751#
752CONFIG_HID_COMPAT=y
753# CONFIG_USB_SUPPORT is not set 753# CONFIG_USB_SUPPORT is not set
754# CONFIG_MMC is not set 754# CONFIG_MMC is not set
755# CONFIG_MEMSTICK is not set 755# CONFIG_MEMSTICK is not set
@@ -758,6 +758,8 @@ CONFIG_HIDRAW=y
758# CONFIG_RTC_CLASS is not set 758# CONFIG_RTC_CLASS is not set
759# CONFIG_DMADEVICES is not set 759# CONFIG_DMADEVICES is not set
760# CONFIG_UIO is not set 760# CONFIG_UIO is not set
761# CONFIG_STAGING is not set
762CONFIG_STAGING_EXCLUDE_BUILD=y
761 763
762# 764#
763# Character devices 765# Character devices
@@ -771,8 +773,9 @@ CONFIG_EXT2_FS=y
771# CONFIG_EXT2_FS_XIP is not set 773# CONFIG_EXT2_FS_XIP is not set
772CONFIG_EXT3_FS=y 774CONFIG_EXT3_FS=y
773# CONFIG_EXT3_FS_XATTR is not set 775# CONFIG_EXT3_FS_XATTR is not set
774# CONFIG_EXT4DEV_FS is not set 776# CONFIG_EXT4_FS is not set
775CONFIG_JBD=y 777CONFIG_JBD=y
778CONFIG_JBD2=m
776CONFIG_REISERFS_FS=m 779CONFIG_REISERFS_FS=m
777# CONFIG_REISERFS_CHECK is not set 780# CONFIG_REISERFS_CHECK is not set
778# CONFIG_REISERFS_PROC_INFO is not set 781# CONFIG_REISERFS_PROC_INFO is not set
@@ -783,6 +786,7 @@ CONFIG_JFS_FS=m
783# CONFIG_JFS_DEBUG is not set 786# CONFIG_JFS_DEBUG is not set
784# CONFIG_JFS_STATISTICS is not set 787# CONFIG_JFS_STATISTICS is not set
785# CONFIG_FS_POSIX_ACL is not set 788# CONFIG_FS_POSIX_ACL is not set
789CONFIG_FILE_LOCKING=y
786CONFIG_XFS_FS=m 790CONFIG_XFS_FS=m
787# CONFIG_XFS_QUOTA is not set 791# CONFIG_XFS_QUOTA is not set
788# CONFIG_XFS_POSIX_ACL is not set 792# CONFIG_XFS_POSIX_ACL is not set
@@ -794,6 +798,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
794# CONFIG_OCFS2_FS_STATS is not set 798# CONFIG_OCFS2_FS_STATS is not set
795# CONFIG_OCFS2_DEBUG_MASKLOG is not set 799# CONFIG_OCFS2_DEBUG_MASKLOG is not set
796# CONFIG_OCFS2_DEBUG_FS is not set 800# CONFIG_OCFS2_DEBUG_FS is not set
801# CONFIG_OCFS2_COMPAT_JBD is not set
797CONFIG_DNOTIFY=y 802CONFIG_DNOTIFY=y
798CONFIG_INOTIFY=y 803CONFIG_INOTIFY=y
799CONFIG_INOTIFY_USER=y 804CONFIG_INOTIFY_USER=y
@@ -832,6 +837,7 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
832CONFIG_PROC_FS=y 837CONFIG_PROC_FS=y
833CONFIG_PROC_KCORE=y 838CONFIG_PROC_KCORE=y
834CONFIG_PROC_SYSCTL=y 839CONFIG_PROC_SYSCTL=y
840CONFIG_PROC_PAGE_MONITOR=y
835CONFIG_SYSFS=y 841CONFIG_SYSFS=y
836CONFIG_TMPFS=y 842CONFIG_TMPFS=y
837# CONFIG_TMPFS_POSIX_ACL is not set 843# CONFIG_TMPFS_POSIX_ACL is not set
@@ -875,6 +881,7 @@ CONFIG_EXPORTFS=m
875CONFIG_NFS_COMMON=y 881CONFIG_NFS_COMMON=y
876CONFIG_SUNRPC=y 882CONFIG_SUNRPC=y
877CONFIG_SUNRPC_GSS=y 883CONFIG_SUNRPC_GSS=y
884# CONFIG_SUNRPC_REGISTER_V4 is not set
878CONFIG_RPCSEC_GSS_KRB5=y 885CONFIG_RPCSEC_GSS_KRB5=y
879# CONFIG_RPCSEC_GSS_SPKM3 is not set 886# CONFIG_RPCSEC_GSS_SPKM3 is not set
880CONFIG_SMB_FS=m 887CONFIG_SMB_FS=m
@@ -948,7 +955,13 @@ CONFIG_MAGIC_SYSRQ=y
948# CONFIG_DEBUG_KERNEL is not set 955# CONFIG_DEBUG_KERNEL is not set
949CONFIG_DEBUG_BUGVERBOSE=y 956CONFIG_DEBUG_BUGVERBOSE=y
950CONFIG_DEBUG_MEMORY_INIT=y 957CONFIG_DEBUG_MEMORY_INIT=y
958# CONFIG_RCU_CPU_STALL_DETECTOR is not set
951CONFIG_SYSCTL_SYSCALL_CHECK=y 959CONFIG_SYSCTL_SYSCALL_CHECK=y
960
961#
962# Tracers
963#
964# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
952# CONFIG_SAMPLES is not set 965# CONFIG_SAMPLES is not set
953 966
954# 967#
@@ -956,6 +969,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
956# 969#
957# CONFIG_KEYS is not set 970# CONFIG_KEYS is not set
958# CONFIG_SECURITY is not set 971# CONFIG_SECURITY is not set
972# CONFIG_SECURITYFS is not set
959# CONFIG_SECURITY_FILE_CAPABILITIES is not set 973# CONFIG_SECURITY_FILE_CAPABILITIES is not set
960CONFIG_XOR_BLOCKS=m 974CONFIG_XOR_BLOCKS=m
961CONFIG_ASYNC_CORE=m 975CONFIG_ASYNC_CORE=m
@@ -966,10 +980,12 @@ CONFIG_CRYPTO=y
966# 980#
967# Crypto core or helper 981# Crypto core or helper
968# 982#
983# CONFIG_CRYPTO_FIPS is not set
969CONFIG_CRYPTO_ALGAPI=y 984CONFIG_CRYPTO_ALGAPI=y
970CONFIG_CRYPTO_AEAD=m 985CONFIG_CRYPTO_AEAD=y
971CONFIG_CRYPTO_BLKCIPHER=y 986CONFIG_CRYPTO_BLKCIPHER=y
972CONFIG_CRYPTO_HASH=y 987CONFIG_CRYPTO_HASH=y
988CONFIG_CRYPTO_RNG=y
973CONFIG_CRYPTO_MANAGER=y 989CONFIG_CRYPTO_MANAGER=y
974CONFIG_CRYPTO_GF128MUL=m 990CONFIG_CRYPTO_GF128MUL=m
975CONFIG_CRYPTO_NULL=m 991CONFIG_CRYPTO_NULL=m
@@ -1043,14 +1059,17 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m
1043# 1059#
1044CONFIG_CRYPTO_DEFLATE=m 1060CONFIG_CRYPTO_DEFLATE=m
1045CONFIG_CRYPTO_LZO=m 1061CONFIG_CRYPTO_LZO=m
1062
1063#
1064# Random Number Generation
1065#
1066# CONFIG_CRYPTO_ANSI_CPRNG is not set
1046# CONFIG_CRYPTO_HW is not set 1067# CONFIG_CRYPTO_HW is not set
1047 1068
1048# 1069#
1049# Library routines 1070# Library routines
1050# 1071#
1051CONFIG_BITREVERSE=y 1072CONFIG_BITREVERSE=y
1052# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1053# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1054CONFIG_CRC_CCITT=m 1073CONFIG_CRC_CCITT=m
1055CONFIG_CRC16=m 1074CONFIG_CRC16=m
1056CONFIG_CRC_T10DIF=y 1075CONFIG_CRC_T10DIF=y
diff --git a/arch/mips/configs/fulong_defconfig b/arch/mips/configs/fulong_defconfig
index 620980081a30..b6698a232ae9 100644
--- a/arch/mips/configs/fulong_defconfig
+++ b/arch/mips/configs/fulong_defconfig
@@ -1,63 +1,78 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.22-rc4 3# Linux kernel version: 2.6.28-rc6
4# Mon Jun 11 00:23:51 2007 4# Fri Nov 28 17:53:48 2008
5# 5#
6CONFIG_MIPS=y 6CONFIG_MIPS=y
7 7
8# 8#
9# Machine selection 9# Machine selection
10# 10#
11CONFIG_LEMOTE_FULONG=y
12# CONFIG_MACH_ALCHEMY is not set 11# CONFIG_MACH_ALCHEMY is not set
13# CONFIG_BASLER_EXCITE is not set 12# CONFIG_BASLER_EXCITE is not set
13# CONFIG_BCM47XX is not set
14# CONFIG_MIPS_COBALT is not set 14# CONFIG_MIPS_COBALT is not set
15# CONFIG_MACH_DECSTATION is not set 15# CONFIG_MACH_DECSTATION is not set
16# CONFIG_MACH_JAZZ is not set 16# CONFIG_MACH_JAZZ is not set
17# CONFIG_LASAT is not set
18CONFIG_LEMOTE_FULONG=y
17# CONFIG_MIPS_MALTA is not set 19# CONFIG_MIPS_MALTA is not set
18# CONFIG_WR_PPMC is not set
19# CONFIG_MIPS_SIM is not set 20# CONFIG_MIPS_SIM is not set
21# CONFIG_MACH_EMMA is not set
22# CONFIG_MACH_VR41XX is not set
23# CONFIG_NXP_STB220 is not set
24# CONFIG_NXP_STB225 is not set
20# CONFIG_PNX8550_JBS is not set 25# CONFIG_PNX8550_JBS is not set
21# CONFIG_PNX8550_STB810 is not set 26# CONFIG_PNX8550_STB810 is not set
22# CONFIG_MACH_VR41XX is not set 27# CONFIG_PMC_MSP is not set
23# CONFIG_PMC_YOSEMITE is not set 28# CONFIG_PMC_YOSEMITE is not set
24# CONFIG_MARKEINS is not set
25# CONFIG_SGI_IP22 is not set 29# CONFIG_SGI_IP22 is not set
26# CONFIG_SGI_IP27 is not set 30# CONFIG_SGI_IP27 is not set
31# CONFIG_SGI_IP28 is not set
27# CONFIG_SGI_IP32 is not set 32# CONFIG_SGI_IP32 is not set
28# CONFIG_SIBYTE_BIGSUR is not set
29# CONFIG_SIBYTE_SWARM is not set
30# CONFIG_SIBYTE_SENTOSA is not set
31# CONFIG_SIBYTE_RHONE is not set
32# CONFIG_SIBYTE_CARMEL is not set
33# CONFIG_SIBYTE_LITTLESUR is not set
34# CONFIG_SIBYTE_CRHINE is not set 33# CONFIG_SIBYTE_CRHINE is not set
34# CONFIG_SIBYTE_CARMEL is not set
35# CONFIG_SIBYTE_CRHONE is not set 35# CONFIG_SIBYTE_CRHONE is not set
36# CONFIG_SIBYTE_RHONE is not set
37# CONFIG_SIBYTE_SWARM is not set
38# CONFIG_SIBYTE_LITTLESUR is not set
39# CONFIG_SIBYTE_SENTOSA is not set
40# CONFIG_SIBYTE_BIGSUR is not set
36# CONFIG_SNI_RM is not set 41# CONFIG_SNI_RM is not set
37# CONFIG_TOSHIBA_JMR3927 is not set 42# CONFIG_MACH_TX39XX is not set
38# CONFIG_TOSHIBA_RBTX4927 is not set 43# CONFIG_MACH_TX49XX is not set
39# CONFIG_TOSHIBA_RBTX4938 is not set 44# CONFIG_MIKROTIK_RB532 is not set
45# CONFIG_WR_PPMC is not set
40CONFIG_RWSEM_GENERIC_SPINLOCK=y 46CONFIG_RWSEM_GENERIC_SPINLOCK=y
41# CONFIG_ARCH_HAS_ILOG2_U32 is not set 47# CONFIG_ARCH_HAS_ILOG2_U32 is not set
42# CONFIG_ARCH_HAS_ILOG2_U64 is not set 48# CONFIG_ARCH_HAS_ILOG2_U64 is not set
49CONFIG_ARCH_SUPPORTS_OPROFILE=y
43CONFIG_GENERIC_FIND_NEXT_BIT=y 50CONFIG_GENERIC_FIND_NEXT_BIT=y
44CONFIG_GENERIC_HWEIGHT=y 51CONFIG_GENERIC_HWEIGHT=y
45CONFIG_GENERIC_CALIBRATE_DELAY=y 52CONFIG_GENERIC_CALIBRATE_DELAY=y
53CONFIG_GENERIC_CLOCKEVENTS=y
46CONFIG_GENERIC_TIME=y 54CONFIG_GENERIC_TIME=y
55CONFIG_GENERIC_CMOS_UPDATE=y
47CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 56CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
48CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 57CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
58CONFIG_CEVT_R4K=y
59CONFIG_CSRC_R4K=y
49CONFIG_DMA_NONCOHERENT=y 60CONFIG_DMA_NONCOHERENT=y
50CONFIG_DMA_NEED_PCI_MAP_STATE=y 61CONFIG_DMA_NEED_PCI_MAP_STATE=y
51CONFIG_EARLY_PRINTK=y 62CONFIG_EARLY_PRINTK=y
52CONFIG_SYS_HAS_EARLY_PRINTK=y 63CONFIG_SYS_HAS_EARLY_PRINTK=y
64# CONFIG_HOTPLUG_CPU is not set
53CONFIG_I8259=y 65CONFIG_I8259=y
54# CONFIG_NO_IOPORT is not set 66# CONFIG_NO_IOPORT is not set
67CONFIG_GENERIC_ISA_DMA=y
68CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y
55# CONFIG_CPU_BIG_ENDIAN is not set 69# CONFIG_CPU_BIG_ENDIAN is not set
56CONFIG_CPU_LITTLE_ENDIAN=y 70CONFIG_CPU_LITTLE_ENDIAN=y
57CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y 71CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
58CONFIG_IRQ_CPU=y 72CONFIG_IRQ_CPU=y
59CONFIG_BOOT_ELF32=y 73CONFIG_BOOT_ELF32=y
60CONFIG_MIPS_L1_CACHE_SHIFT=5 74CONFIG_MIPS_L1_CACHE_SHIFT=5
75CONFIG_HAVE_STD_PC_SERIAL_PORT=y
61 76
62# 77#
63# CPU selection 78# CPU selection
@@ -75,6 +90,7 @@ CONFIG_CPU_LOONGSON2=y
75# CONFIG_CPU_TX49XX is not set 90# CONFIG_CPU_TX49XX is not set
76# CONFIG_CPU_R5000 is not set 91# CONFIG_CPU_R5000 is not set
77# CONFIG_CPU_R5432 is not set 92# CONFIG_CPU_R5432 is not set
93# CONFIG_CPU_R5500 is not set
78# CONFIG_CPU_R6000 is not set 94# CONFIG_CPU_R6000 is not set
79# CONFIG_CPU_NEVADA is not set 95# CONFIG_CPU_NEVADA is not set
80# CONFIG_CPU_R8000 is not set 96# CONFIG_CPU_R8000 is not set
@@ -101,7 +117,6 @@ CONFIG_BOARD_SCACHE=y
101CONFIG_MIPS_MT_DISABLED=y 117CONFIG_MIPS_MT_DISABLED=y
102# CONFIG_MIPS_MT_SMP is not set 118# CONFIG_MIPS_MT_SMP is not set
103# CONFIG_MIPS_MT_SMTC is not set 119# CONFIG_MIPS_MT_SMTC is not set
104# CONFIG_MIPS_VPE_LOADER is not set
105CONFIG_CPU_HAS_WB=y 120CONFIG_CPU_HAS_WB=y
106CONFIG_CPU_HAS_SYNC=y 121CONFIG_CPU_HAS_SYNC=y
107CONFIG_GENERIC_HARDIRQS=y 122CONFIG_GENERIC_HARDIRQS=y
@@ -109,6 +124,7 @@ CONFIG_GENERIC_IRQ_PROBE=y
109CONFIG_CPU_SUPPORTS_HIGHMEM=y 124CONFIG_CPU_SUPPORTS_HIGHMEM=y
110CONFIG_SYS_SUPPORTS_HIGHMEM=y 125CONFIG_SYS_SUPPORTS_HIGHMEM=y
111CONFIG_ARCH_FLATMEM_ENABLE=y 126CONFIG_ARCH_FLATMEM_ENABLE=y
127CONFIG_ARCH_POPULATES_NODE_MAP=y
112CONFIG_ARCH_SPARSEMEM_ENABLE=y 128CONFIG_ARCH_SPARSEMEM_ENABLE=y
113CONFIG_SELECT_MEMORY_MODEL=y 129CONFIG_SELECT_MEMORY_MODEL=y
114CONFIG_FLATMEM_MANUAL=y 130CONFIG_FLATMEM_MANUAL=y
@@ -117,9 +133,17 @@ CONFIG_FLATMEM_MANUAL=y
117CONFIG_FLATMEM=y 133CONFIG_FLATMEM=y
118CONFIG_FLAT_NODE_MEM_MAP=y 134CONFIG_FLAT_NODE_MEM_MAP=y
119CONFIG_SPARSEMEM_STATIC=y 135CONFIG_SPARSEMEM_STATIC=y
136CONFIG_PAGEFLAGS_EXTENDED=y
120CONFIG_SPLIT_PTLOCK_CPUS=4 137CONFIG_SPLIT_PTLOCK_CPUS=4
121CONFIG_RESOURCES_64BIT=y 138CONFIG_RESOURCES_64BIT=y
139CONFIG_PHYS_ADDR_T_64BIT=y
122CONFIG_ZONE_DMA_FLAG=0 140CONFIG_ZONE_DMA_FLAG=0
141CONFIG_VIRT_TO_BUS=y
142CONFIG_UNEVICTABLE_LRU=y
143CONFIG_TICK_ONESHOT=y
144CONFIG_NO_HZ=y
145CONFIG_HIGH_RES_TIMERS=y
146CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
123# CONFIG_HZ_48 is not set 147# CONFIG_HZ_48 is not set
124# CONFIG_HZ_100 is not set 148# CONFIG_HZ_100 is not set
125# CONFIG_HZ_128 is not set 149# CONFIG_HZ_128 is not set
@@ -133,37 +157,40 @@ CONFIG_HZ=250
133CONFIG_PREEMPT_VOLUNTARY=y 157CONFIG_PREEMPT_VOLUNTARY=y
134# CONFIG_PREEMPT is not set 158# CONFIG_PREEMPT is not set
135# CONFIG_KEXEC is not set 159# CONFIG_KEXEC is not set
160CONFIG_SECCOMP=y
136CONFIG_LOCKDEP_SUPPORT=y 161CONFIG_LOCKDEP_SUPPORT=y
137CONFIG_STACKTRACE_SUPPORT=y 162CONFIG_STACKTRACE_SUPPORT=y
138CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 163CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
139 164
140# 165#
141# Code maturity level options 166# General setup
142# 167#
143CONFIG_EXPERIMENTAL=y 168CONFIG_EXPERIMENTAL=y
144CONFIG_BROKEN_ON_SMP=y 169CONFIG_BROKEN_ON_SMP=y
145CONFIG_INIT_ENV_ARG_LIMIT=32 170CONFIG_INIT_ENV_ARG_LIMIT=32
146
147#
148# General setup
149#
150CONFIG_LOCALVERSION="lm32" 171CONFIG_LOCALVERSION="lm32"
151# CONFIG_LOCALVERSION_AUTO is not set 172# CONFIG_LOCALVERSION_AUTO is not set
152CONFIG_SWAP=y 173CONFIG_SWAP=y
153CONFIG_SYSVIPC=y 174CONFIG_SYSVIPC=y
154# CONFIG_IPC_NS is not set
155CONFIG_SYSVIPC_SYSCTL=y 175CONFIG_SYSVIPC_SYSCTL=y
156CONFIG_POSIX_MQUEUE=y 176CONFIG_POSIX_MQUEUE=y
157CONFIG_BSD_PROCESS_ACCT=y 177CONFIG_BSD_PROCESS_ACCT=y
158# CONFIG_BSD_PROCESS_ACCT_V3 is not set 178# CONFIG_BSD_PROCESS_ACCT_V3 is not set
159# CONFIG_TASKSTATS is not set 179# CONFIG_TASKSTATS is not set
160# CONFIG_UTS_NS is not set
161# CONFIG_AUDIT is not set 180# CONFIG_AUDIT is not set
162CONFIG_IKCONFIG=y 181CONFIG_IKCONFIG=y
163CONFIG_IKCONFIG_PROC=y 182CONFIG_IKCONFIG_PROC=y
164CONFIG_LOG_BUF_SHIFT=14 183CONFIG_LOG_BUF_SHIFT=14
184# CONFIG_CGROUPS is not set
185# CONFIG_GROUP_SCHED is not set
165CONFIG_SYSFS_DEPRECATED=y 186CONFIG_SYSFS_DEPRECATED=y
187CONFIG_SYSFS_DEPRECATED_V2=y
166# CONFIG_RELAY is not set 188# CONFIG_RELAY is not set
189CONFIG_NAMESPACES=y
190# CONFIG_UTS_NS is not set
191# CONFIG_IPC_NS is not set
192CONFIG_USER_NS=y
193CONFIG_PID_NS=y
167# CONFIG_BLK_DEV_INITRD is not set 194# CONFIG_BLK_DEV_INITRD is not set
168# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 195# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
169CONFIG_SYSCTL=y 196CONFIG_SYSCTL=y
@@ -175,6 +202,8 @@ CONFIG_HOTPLUG=y
175CONFIG_PRINTK=y 202CONFIG_PRINTK=y
176CONFIG_BUG=y 203CONFIG_BUG=y
177CONFIG_ELF_CORE=y 204CONFIG_ELF_CORE=y
205# CONFIG_PCSPKR_PLATFORM is not set
206# CONFIG_COMPAT_BRK is not set
178CONFIG_BASE_FULL=y 207CONFIG_BASE_FULL=y
179CONFIG_FUTEX=y 208CONFIG_FUTEX=y
180CONFIG_ANON_INODES=y 209CONFIG_ANON_INODES=y
@@ -183,29 +212,33 @@ CONFIG_SIGNALFD=y
183CONFIG_TIMERFD=y 212CONFIG_TIMERFD=y
184CONFIG_EVENTFD=y 213CONFIG_EVENTFD=y
185CONFIG_SHMEM=y 214CONFIG_SHMEM=y
215CONFIG_AIO=y
186CONFIG_VM_EVENT_COUNTERS=y 216CONFIG_VM_EVENT_COUNTERS=y
217CONFIG_PCI_QUIRKS=y
187CONFIG_SLAB=y 218CONFIG_SLAB=y
188# CONFIG_SLUB is not set 219# CONFIG_SLUB is not set
189# CONFIG_SLOB is not set 220# CONFIG_SLOB is not set
221CONFIG_PROFILING=y
222# CONFIG_MARKERS is not set
223CONFIG_OPROFILE=m
224CONFIG_HAVE_OPROFILE=y
225# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
226CONFIG_SLABINFO=y
190CONFIG_RT_MUTEXES=y 227CONFIG_RT_MUTEXES=y
191# CONFIG_TINY_SHMEM is not set 228# CONFIG_TINY_SHMEM is not set
192CONFIG_BASE_SMALL=0 229CONFIG_BASE_SMALL=0
193
194#
195# Loadable module support
196#
197CONFIG_MODULES=y 230CONFIG_MODULES=y
231# CONFIG_MODULE_FORCE_LOAD is not set
198CONFIG_MODULE_UNLOAD=y 232CONFIG_MODULE_UNLOAD=y
199CONFIG_MODULE_FORCE_UNLOAD=y 233CONFIG_MODULE_FORCE_UNLOAD=y
200# CONFIG_MODVERSIONS is not set 234# CONFIG_MODVERSIONS is not set
201# CONFIG_MODULE_SRCVERSION_ALL is not set 235# CONFIG_MODULE_SRCVERSION_ALL is not set
202CONFIG_KMOD=y 236CONFIG_KMOD=y
203
204#
205# Block layer
206#
207CONFIG_BLOCK=y 237CONFIG_BLOCK=y
208# CONFIG_BLK_DEV_IO_TRACE is not set 238# CONFIG_BLK_DEV_IO_TRACE is not set
239CONFIG_BLK_DEV_BSG=y
240# CONFIG_BLK_DEV_INTEGRITY is not set
241CONFIG_BLOCK_COMPAT=y
209 242
210# 243#
211# IO Schedulers 244# IO Schedulers
@@ -219,19 +252,19 @@ CONFIG_IOSCHED_CFQ=y
219CONFIG_DEFAULT_CFQ=y 252CONFIG_DEFAULT_CFQ=y
220# CONFIG_DEFAULT_NOOP is not set 253# CONFIG_DEFAULT_NOOP is not set
221CONFIG_DEFAULT_IOSCHED="cfq" 254CONFIG_DEFAULT_IOSCHED="cfq"
255CONFIG_CLASSIC_RCU=y
256CONFIG_FREEZER=y
222 257
223# 258#
224# Bus options (PCI, PCMCIA, EISA, ISA, TC) 259# Bus options (PCI, PCMCIA, EISA, ISA, TC)
225# 260#
226CONFIG_HW_HAS_PCI=y 261CONFIG_HW_HAS_PCI=y
227CONFIG_PCI=y 262CONFIG_PCI=y
263CONFIG_PCI_DOMAINS=y
228# CONFIG_ARCH_SUPPORTS_MSI is not set 264# CONFIG_ARCH_SUPPORTS_MSI is not set
265CONFIG_PCI_LEGACY=y
229CONFIG_ISA=y 266CONFIG_ISA=y
230CONFIG_MMU=y 267CONFIG_MMU=y
231
232#
233# PCCARD (PCMCIA/CardBus) support
234#
235# CONFIG_PCCARD is not set 268# CONFIG_PCCARD is not set
236# CONFIG_HOTPLUG_PCI is not set 269# CONFIG_HOTPLUG_PCI is not set
237 270
@@ -239,8 +272,9 @@ CONFIG_MMU=y
239# Executable file formats 272# Executable file formats
240# 273#
241CONFIG_BINFMT_ELF=y 274CONFIG_BINFMT_ELF=y
275# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
276# CONFIG_HAVE_AOUT is not set
242CONFIG_BINFMT_MISC=y 277CONFIG_BINFMT_MISC=y
243# CONFIG_BUILD_ELF64 is not set
244CONFIG_MIPS32_COMPAT=y 278CONFIG_MIPS32_COMPAT=y
245CONFIG_COMPAT=y 279CONFIG_COMPAT=y
246CONFIG_SYSVIPC_COMPAT=y 280CONFIG_SYSVIPC_COMPAT=y
@@ -251,14 +285,12 @@ CONFIG_BINFMT_ELF32=y
251# 285#
252# Power management options 286# Power management options
253# 287#
288CONFIG_ARCH_SUSPEND_POSSIBLE=y
254CONFIG_PM=y 289CONFIG_PM=y
255# CONFIG_PM_LEGACY is not set
256# CONFIG_PM_DEBUG is not set 290# CONFIG_PM_DEBUG is not set
257# CONFIG_PM_SYSFS_DEPRECATED is not set 291CONFIG_PM_SLEEP=y
258 292CONFIG_SUSPEND=y
259# 293CONFIG_SUSPEND_FREEZER=y
260# Networking
261#
262CONFIG_NET=y 294CONFIG_NET=y
263 295
264# 296#
@@ -271,6 +303,7 @@ CONFIG_XFRM=y
271# CONFIG_XFRM_USER is not set 303# CONFIG_XFRM_USER is not set
272# CONFIG_XFRM_SUB_POLICY is not set 304# CONFIG_XFRM_SUB_POLICY is not set
273# CONFIG_XFRM_MIGRATE is not set 305# CONFIG_XFRM_MIGRATE is not set
306# CONFIG_XFRM_STATISTICS is not set
274# CONFIG_NET_KEY is not set 307# CONFIG_NET_KEY is not set
275CONFIG_INET=y 308CONFIG_INET=y
276CONFIG_IP_MULTICAST=y 309CONFIG_IP_MULTICAST=y
@@ -294,18 +327,17 @@ CONFIG_INET_TUNNEL=m
294# CONFIG_INET_XFRM_MODE_TRANSPORT is not set 327# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
295# CONFIG_INET_XFRM_MODE_TUNNEL is not set 328# CONFIG_INET_XFRM_MODE_TUNNEL is not set
296CONFIG_INET_XFRM_MODE_BEET=y 329CONFIG_INET_XFRM_MODE_BEET=y
330# CONFIG_INET_LRO is not set
297# CONFIG_INET_DIAG is not set 331# CONFIG_INET_DIAG is not set
298# CONFIG_TCP_CONG_ADVANCED is not set 332# CONFIG_TCP_CONG_ADVANCED is not set
299CONFIG_TCP_CONG_CUBIC=y 333CONFIG_TCP_CONG_CUBIC=y
300CONFIG_DEFAULT_TCP_CONG="cubic" 334CONFIG_DEFAULT_TCP_CONG="cubic"
301# CONFIG_TCP_MD5SIG is not set 335# CONFIG_TCP_MD5SIG is not set
302# CONFIG_IP_VS is not set
303# CONFIG_IPV6 is not set 336# CONFIG_IPV6 is not set
304# CONFIG_INET6_XFRM_TUNNEL is not set
305# CONFIG_INET6_TUNNEL is not set
306# CONFIG_NETWORK_SECMARK is not set 337# CONFIG_NETWORK_SECMARK is not set
307CONFIG_NETFILTER=y 338CONFIG_NETFILTER=y
308# CONFIG_NETFILTER_DEBUG is not set 339# CONFIG_NETFILTER_DEBUG is not set
340CONFIG_NETFILTER_ADVANCED=y
309 341
310# 342#
311# Core Netfilter Configuration 343# Core Netfilter Configuration
@@ -313,53 +345,59 @@ CONFIG_NETFILTER=y
313CONFIG_NETFILTER_NETLINK=m 345CONFIG_NETFILTER_NETLINK=m
314CONFIG_NETFILTER_NETLINK_QUEUE=m 346CONFIG_NETFILTER_NETLINK_QUEUE=m
315CONFIG_NETFILTER_NETLINK_LOG=m 347CONFIG_NETFILTER_NETLINK_LOG=m
316# CONFIG_NF_CONNTRACK_ENABLED is not set
317# CONFIG_NF_CONNTRACK is not set 348# CONFIG_NF_CONNTRACK is not set
318CONFIG_NETFILTER_XTABLES=m 349CONFIG_NETFILTER_XTABLES=m
319CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 350CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
320# CONFIG_NETFILTER_XT_TARGET_DSCP is not set 351# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
321CONFIG_NETFILTER_XT_TARGET_MARK=m 352CONFIG_NETFILTER_XT_TARGET_MARK=m
322CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
323# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set 353# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
354CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
355CONFIG_NETFILTER_XT_TARGET_RATEEST=m
356CONFIG_NETFILTER_XT_TARGET_TRACE=m
324# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set 357# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
358CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
325CONFIG_NETFILTER_XT_MATCH_COMMENT=m 359CONFIG_NETFILTER_XT_MATCH_COMMENT=m
326CONFIG_NETFILTER_XT_MATCH_DCCP=m 360CONFIG_NETFILTER_XT_MATCH_DCCP=m
327# CONFIG_NETFILTER_XT_MATCH_DSCP is not set 361# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
328CONFIG_NETFILTER_XT_MATCH_ESP=m 362CONFIG_NETFILTER_XT_MATCH_ESP=m
363# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
364CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
329CONFIG_NETFILTER_XT_MATCH_LENGTH=m 365CONFIG_NETFILTER_XT_MATCH_LENGTH=m
330CONFIG_NETFILTER_XT_MATCH_LIMIT=m 366CONFIG_NETFILTER_XT_MATCH_LIMIT=m
331CONFIG_NETFILTER_XT_MATCH_MAC=m 367CONFIG_NETFILTER_XT_MATCH_MAC=m
332CONFIG_NETFILTER_XT_MATCH_MARK=m 368CONFIG_NETFILTER_XT_MATCH_MARK=m
333# CONFIG_NETFILTER_XT_MATCH_POLICY is not set
334CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m 369CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
370CONFIG_NETFILTER_XT_MATCH_OWNER=m
371# CONFIG_NETFILTER_XT_MATCH_POLICY is not set
335CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 372CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
336CONFIG_NETFILTER_XT_MATCH_QUOTA=m 373CONFIG_NETFILTER_XT_MATCH_QUOTA=m
374CONFIG_NETFILTER_XT_MATCH_RATEEST=m
337CONFIG_NETFILTER_XT_MATCH_REALM=m 375CONFIG_NETFILTER_XT_MATCH_REALM=m
376CONFIG_NETFILTER_XT_MATCH_RECENT=m
377# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
338CONFIG_NETFILTER_XT_MATCH_SCTP=m 378CONFIG_NETFILTER_XT_MATCH_SCTP=m
339CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 379CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
340CONFIG_NETFILTER_XT_MATCH_STRING=m 380CONFIG_NETFILTER_XT_MATCH_STRING=m
341CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 381CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
342# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set 382CONFIG_NETFILTER_XT_MATCH_TIME=m
383CONFIG_NETFILTER_XT_MATCH_U32=m
384# CONFIG_IP_VS is not set
343 385
344# 386#
345# IP: Netfilter Configuration 387# IP: Netfilter Configuration
346# 388#
389# CONFIG_NF_DEFRAG_IPV4 is not set
347CONFIG_IP_NF_QUEUE=m 390CONFIG_IP_NF_QUEUE=m
348CONFIG_IP_NF_IPTABLES=m 391CONFIG_IP_NF_IPTABLES=m
349CONFIG_IP_NF_MATCH_IPRANGE=m 392CONFIG_IP_NF_MATCH_ADDRTYPE=m
350CONFIG_IP_NF_MATCH_TOS=m
351CONFIG_IP_NF_MATCH_RECENT=m
352CONFIG_IP_NF_MATCH_ECN=m
353CONFIG_IP_NF_MATCH_AH=m 393CONFIG_IP_NF_MATCH_AH=m
394CONFIG_IP_NF_MATCH_ECN=m
354CONFIG_IP_NF_MATCH_TTL=m 395CONFIG_IP_NF_MATCH_TTL=m
355CONFIG_IP_NF_MATCH_OWNER=m
356CONFIG_IP_NF_MATCH_ADDRTYPE=m
357CONFIG_IP_NF_FILTER=m 396CONFIG_IP_NF_FILTER=m
358CONFIG_IP_NF_TARGET_REJECT=m 397CONFIG_IP_NF_TARGET_REJECT=m
359CONFIG_IP_NF_TARGET_LOG=m 398CONFIG_IP_NF_TARGET_LOG=m
360CONFIG_IP_NF_TARGET_ULOG=m 399CONFIG_IP_NF_TARGET_ULOG=m
361CONFIG_IP_NF_MANGLE=m 400CONFIG_IP_NF_MANGLE=m
362CONFIG_IP_NF_TARGET_TOS=m
363CONFIG_IP_NF_TARGET_ECN=m 401CONFIG_IP_NF_TARGET_ECN=m
364CONFIG_IP_NF_TARGET_TTL=m 402CONFIG_IP_NF_TARGET_TTL=m
365CONFIG_IP_NF_RAW=m 403CONFIG_IP_NF_RAW=m
@@ -371,6 +409,7 @@ CONFIG_IP_NF_ARP_MANGLE=m
371# CONFIG_TIPC is not set 409# CONFIG_TIPC is not set
372# CONFIG_ATM is not set 410# CONFIG_ATM is not set
373# CONFIG_BRIDGE is not set 411# CONFIG_BRIDGE is not set
412# CONFIG_NET_DSA is not set
374# CONFIG_VLAN_8021Q is not set 413# CONFIG_VLAN_8021Q is not set
375# CONFIG_DECNET is not set 414# CONFIG_DECNET is not set
376# CONFIG_LLC2 is not set 415# CONFIG_LLC2 is not set
@@ -380,10 +419,6 @@ CONFIG_IP_NF_ARP_MANGLE=m
380# CONFIG_LAPB is not set 419# CONFIG_LAPB is not set
381# CONFIG_ECONET is not set 420# CONFIG_ECONET is not set
382# CONFIG_WAN_ROUTER is not set 421# CONFIG_WAN_ROUTER is not set
383
384#
385# QoS and/or fair queueing
386#
387# CONFIG_NET_SCHED is not set 422# CONFIG_NET_SCHED is not set
388CONFIG_NET_CLS_ROUTE=y 423CONFIG_NET_CLS_ROUTE=y
389 424
@@ -392,23 +427,25 @@ CONFIG_NET_CLS_ROUTE=y
392# 427#
393# CONFIG_NET_PKTGEN is not set 428# CONFIG_NET_PKTGEN is not set
394# CONFIG_HAMRADIO is not set 429# CONFIG_HAMRADIO is not set
430# CONFIG_CAN is not set
395# CONFIG_IRDA is not set 431# CONFIG_IRDA is not set
396# CONFIG_BT is not set 432# CONFIG_BT is not set
397# CONFIG_AF_RXRPC is not set 433# CONFIG_AF_RXRPC is not set
398 434CONFIG_PHONET=m
399# 435CONFIG_WIRELESS=y
400# Wireless
401#
402# CONFIG_CFG80211 is not set 436# CONFIG_CFG80211 is not set
437CONFIG_WIRELESS_OLD_REGULATORY=y
403CONFIG_WIRELESS_EXT=y 438CONFIG_WIRELESS_EXT=y
439CONFIG_WIRELESS_EXT_SYSFS=y
404# CONFIG_MAC80211 is not set 440# CONFIG_MAC80211 is not set
405CONFIG_IEEE80211=m 441CONFIG_IEEE80211=m
406# CONFIG_IEEE80211_DEBUG is not set 442# CONFIG_IEEE80211_DEBUG is not set
407CONFIG_IEEE80211_CRYPT_WEP=m 443CONFIG_IEEE80211_CRYPT_WEP=m
408# CONFIG_IEEE80211_CRYPT_CCMP is not set 444# CONFIG_IEEE80211_CRYPT_CCMP is not set
409# CONFIG_IEEE80211_CRYPT_TKIP is not set 445# CONFIG_IEEE80211_CRYPT_TKIP is not set
410# CONFIG_IEEE80211_SOFTMAC is not set
411# CONFIG_RFKILL is not set 446# CONFIG_RFKILL is not set
447CONFIG_NET_9P=m
448# CONFIG_NET_9P_DEBUG is not set
412 449
413# 450#
414# Device Drivers 451# Device Drivers
@@ -417,14 +454,13 @@ CONFIG_IEEE80211_CRYPT_WEP=m
417# 454#
418# Generic Driver Options 455# Generic Driver Options
419# 456#
457CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
420CONFIG_STANDALONE=y 458CONFIG_STANDALONE=y
421CONFIG_PREVENT_FIRMWARE_BUILD=y 459CONFIG_PREVENT_FIRMWARE_BUILD=y
422CONFIG_FW_LOADER=m 460CONFIG_FW_LOADER=m
461CONFIG_FIRMWARE_IN_KERNEL=y
462CONFIG_EXTRA_FIRMWARE=""
423# CONFIG_SYS_HYPERVISOR is not set 463# CONFIG_SYS_HYPERVISOR is not set
424
425#
426# Connector - unified userspace <-> kernelspace linker
427#
428# CONFIG_CONNECTOR is not set 464# CONFIG_CONNECTOR is not set
429CONFIG_MTD=m 465CONFIG_MTD=m
430# CONFIG_MTD_DEBUG is not set 466# CONFIG_MTD_DEBUG is not set
@@ -443,6 +479,7 @@ CONFIG_MTD_BLOCK=m
443# CONFIG_INFTL is not set 479# CONFIG_INFTL is not set
444# CONFIG_RFD_FTL is not set 480# CONFIG_RFD_FTL is not set
445# CONFIG_SSFDC is not set 481# CONFIG_SSFDC is not set
482# CONFIG_MTD_OOPS is not set
446 483
447# 484#
448# RAM/ROM/Flash chip drivers 485# RAM/ROM/Flash chip drivers
@@ -482,6 +519,7 @@ CONFIG_MTD_PHYSMAP=m
482CONFIG_MTD_PHYSMAP_START=0x1fc00000 519CONFIG_MTD_PHYSMAP_START=0x1fc00000
483CONFIG_MTD_PHYSMAP_LEN=0x80000 520CONFIG_MTD_PHYSMAP_LEN=0x80000
484CONFIG_MTD_PHYSMAP_BANKWIDTH=1 521CONFIG_MTD_PHYSMAP_BANKWIDTH=1
522# CONFIG_MTD_INTEL_VR_NOR is not set
485# CONFIG_MTD_PLATRAM is not set 523# CONFIG_MTD_PLATRAM is not set
486 524
487# 525#
@@ -506,21 +544,9 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=1
506# UBI - Unsorted block images 544# UBI - Unsorted block images
507# 545#
508# CONFIG_MTD_UBI is not set 546# CONFIG_MTD_UBI is not set
509
510#
511# Parallel port support
512#
513# CONFIG_PARPORT is not set 547# CONFIG_PARPORT is not set
514
515#
516# Plug and Play support
517#
518# CONFIG_PNP is not set 548# CONFIG_PNP is not set
519# CONFIG_PNPACPI is not set 549CONFIG_BLK_DEV=y
520
521#
522# Block devices
523#
524# CONFIG_BLK_CPQ_DA is not set 550# CONFIG_BLK_CPQ_DA is not set
525# CONFIG_BLK_CPQ_CISS_DA is not set 551# CONFIG_BLK_CPQ_CISS_DA is not set
526# CONFIG_BLK_DEV_DAC960 is not set 552# CONFIG_BLK_DEV_DAC960 is not set
@@ -534,32 +560,28 @@ CONFIG_BLK_DEV_CRYPTOLOOP=m
534CONFIG_BLK_DEV_RAM=m 560CONFIG_BLK_DEV_RAM=m
535CONFIG_BLK_DEV_RAM_COUNT=16 561CONFIG_BLK_DEV_RAM_COUNT=16
536CONFIG_BLK_DEV_RAM_SIZE=4096 562CONFIG_BLK_DEV_RAM_SIZE=4096
537CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 563# CONFIG_BLK_DEV_XIP is not set
538CONFIG_CDROM_PKTCDVD=m 564CONFIG_CDROM_PKTCDVD=m
539CONFIG_CDROM_PKTCDVD_BUFFERS=8 565CONFIG_CDROM_PKTCDVD_BUFFERS=8
540# CONFIG_CDROM_PKTCDVD_WCACHE is not set 566# CONFIG_CDROM_PKTCDVD_WCACHE is not set
541CONFIG_ATA_OVER_ETH=m 567CONFIG_ATA_OVER_ETH=m
542 568# CONFIG_BLK_DEV_HD is not set
543# 569# CONFIG_MISC_DEVICES is not set
544# Misc devices 570CONFIG_HAVE_IDE=y
545#
546# CONFIG_PHANTOM is not set
547# CONFIG_SGI_IOC4 is not set
548# CONFIG_TIFM_CORE is not set
549# CONFIG_BLINK is not set
550CONFIG_IDE=y 571CONFIG_IDE=y
551CONFIG_IDE_MAX_HWIFS=4
552CONFIG_BLK_DEV_IDE=y
553 572
554# 573#
555# Please see Documentation/ide.txt for help/info on IDE drives 574# Please see Documentation/ide/ide.txt for help/info on IDE drives
556# 575#
576CONFIG_IDE_TIMINGS=y
577CONFIG_IDE_ATAPI=y
557# CONFIG_BLK_DEV_IDE_SATA is not set 578# CONFIG_BLK_DEV_IDE_SATA is not set
558CONFIG_BLK_DEV_IDEDISK=y 579CONFIG_IDE_GD=y
559CONFIG_IDEDISK_MULTI_MODE=y 580CONFIG_IDE_GD_ATA=y
581# CONFIG_IDE_GD_ATAPI is not set
560CONFIG_BLK_DEV_IDECD=y 582CONFIG_BLK_DEV_IDECD=y
583CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
561# CONFIG_BLK_DEV_IDETAPE is not set 584# CONFIG_BLK_DEV_IDETAPE is not set
562# CONFIG_BLK_DEV_IDEFLOPPY is not set
563CONFIG_BLK_DEV_IDESCSI=y 585CONFIG_BLK_DEV_IDESCSI=y
564CONFIG_IDE_TASK_IOCTL=y 586CONFIG_IDE_TASK_IOCTL=y
565CONFIG_IDE_PROC_FS=y 587CONFIG_IDE_PROC_FS=y
@@ -568,24 +590,25 @@ CONFIG_IDE_PROC_FS=y
568# IDE chipset support/bugfixes 590# IDE chipset support/bugfixes
569# 591#
570CONFIG_IDE_GENERIC=y 592CONFIG_IDE_GENERIC=y
593# CONFIG_BLK_DEV_PLATFORM is not set
594CONFIG_BLK_DEV_IDEDMA_SFF=y
595
596#
597# PCI IDE chipsets support
598#
571CONFIG_BLK_DEV_IDEPCI=y 599CONFIG_BLK_DEV_IDEPCI=y
572CONFIG_IDEPCI_SHARE_IRQ=y
573CONFIG_IDEPCI_PCIBUS_ORDER=y 600CONFIG_IDEPCI_PCIBUS_ORDER=y
574# CONFIG_BLK_DEV_OFFBOARD is not set 601# CONFIG_BLK_DEV_OFFBOARD is not set
575CONFIG_BLK_DEV_GENERIC=y 602CONFIG_BLK_DEV_GENERIC=y
576# CONFIG_BLK_DEV_OPTI621 is not set 603# CONFIG_BLK_DEV_OPTI621 is not set
577CONFIG_BLK_DEV_IDEDMA_PCI=y 604CONFIG_BLK_DEV_IDEDMA_PCI=y
578# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
579# CONFIG_IDEDMA_ONLYDISK is not set
580# CONFIG_BLK_DEV_AEC62XX is not set 605# CONFIG_BLK_DEV_AEC62XX is not set
581# CONFIG_BLK_DEV_ALI15X3 is not set 606# CONFIG_BLK_DEV_ALI15X3 is not set
582# CONFIG_BLK_DEV_AMD74XX is not set 607# CONFIG_BLK_DEV_AMD74XX is not set
583# CONFIG_BLK_DEV_CMD64X is not set 608# CONFIG_BLK_DEV_CMD64X is not set
584# CONFIG_BLK_DEV_TRIFLEX is not set 609# CONFIG_BLK_DEV_TRIFLEX is not set
585# CONFIG_BLK_DEV_CY82C693 is not set
586# CONFIG_BLK_DEV_CS5520 is not set 610# CONFIG_BLK_DEV_CS5520 is not set
587# CONFIG_BLK_DEV_CS5530 is not set 611# CONFIG_BLK_DEV_CS5530 is not set
588# CONFIG_BLK_DEV_HPT34X is not set
589# CONFIG_BLK_DEV_HPT366 is not set 612# CONFIG_BLK_DEV_HPT366 is not set
590# CONFIG_BLK_DEV_JMICRON is not set 613# CONFIG_BLK_DEV_JMICRON is not set
591# CONFIG_BLK_DEV_SC1200 is not set 614# CONFIG_BLK_DEV_SC1200 is not set
@@ -601,17 +624,28 @@ CONFIG_BLK_DEV_IDEDMA_PCI=y
601# CONFIG_BLK_DEV_TRM290 is not set 624# CONFIG_BLK_DEV_TRM290 is not set
602CONFIG_BLK_DEV_VIA82CXXX=y 625CONFIG_BLK_DEV_VIA82CXXX=y
603# CONFIG_BLK_DEV_TC86C001 is not set 626# CONFIG_BLK_DEV_TC86C001 is not set
604# CONFIG_IDE_ARM is not set 627
605# CONFIG_IDE_CHIPSETS is not set 628#
629# Other IDE chipsets support
630#
631
632#
633# Note: most of these also require special kernel boot parameters
634#
635# CONFIG_BLK_DEV_4DRIVES is not set
636# CONFIG_BLK_DEV_ALI14XX is not set
637# CONFIG_BLK_DEV_DTC2278 is not set
638# CONFIG_BLK_DEV_HT6560B is not set
639# CONFIG_BLK_DEV_QD65XX is not set
640# CONFIG_BLK_DEV_UMC8672 is not set
606CONFIG_BLK_DEV_IDEDMA=y 641CONFIG_BLK_DEV_IDEDMA=y
607# CONFIG_IDEDMA_IVB is not set
608# CONFIG_BLK_DEV_HD is not set
609 642
610# 643#
611# SCSI device support 644# SCSI device support
612# 645#
613# CONFIG_RAID_ATTRS is not set 646# CONFIG_RAID_ATTRS is not set
614CONFIG_SCSI=y 647CONFIG_SCSI=y
648CONFIG_SCSI_DMA=y
615# CONFIG_SCSI_TGT is not set 649# CONFIG_SCSI_TGT is not set
616# CONFIG_SCSI_NETLINK is not set 650# CONFIG_SCSI_NETLINK is not set
617CONFIG_SCSI_PROC_FS=y 651CONFIG_SCSI_PROC_FS=y
@@ -644,88 +678,30 @@ CONFIG_SCSI_WAIT_SCAN=m
644# CONFIG_SCSI_ISCSI_ATTRS is not set 678# CONFIG_SCSI_ISCSI_ATTRS is not set
645# CONFIG_SCSI_SAS_ATTRS is not set 679# CONFIG_SCSI_SAS_ATTRS is not set
646# CONFIG_SCSI_SAS_LIBSAS is not set 680# CONFIG_SCSI_SAS_LIBSAS is not set
647 681# CONFIG_SCSI_SRP_ATTRS is not set
648# 682# CONFIG_SCSI_LOWLEVEL is not set
649# SCSI low-level drivers 683# CONFIG_SCSI_DH is not set
650#
651# CONFIG_ISCSI_TCP is not set
652# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
653# CONFIG_SCSI_3W_9XXX is not set
654# CONFIG_SCSI_ACARD is not set
655# CONFIG_SCSI_AACRAID is not set
656# CONFIG_SCSI_AIC7XXX is not set
657# CONFIG_SCSI_AIC7XXX_OLD is not set
658# CONFIG_SCSI_AIC79XX is not set
659# CONFIG_SCSI_AIC94XX is not set
660# CONFIG_SCSI_IN2000 is not set
661# CONFIG_SCSI_ARCMSR is not set
662# CONFIG_MEGARAID_NEWGEN is not set
663# CONFIG_MEGARAID_LEGACY is not set
664# CONFIG_MEGARAID_SAS is not set
665# CONFIG_SCSI_HPTIOP is not set
666# CONFIG_SCSI_DMX3191D is not set
667# CONFIG_SCSI_DTC3280 is not set
668# CONFIG_SCSI_FUTURE_DOMAIN is not set
669# CONFIG_SCSI_GENERIC_NCR5380 is not set
670# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
671# CONFIG_SCSI_IPS is not set
672# CONFIG_SCSI_INITIO is not set
673# CONFIG_SCSI_INIA100 is not set
674# CONFIG_SCSI_NCR53C406A is not set
675# CONFIG_SCSI_STEX is not set
676# CONFIG_SCSI_SYM53C8XX_2 is not set
677# CONFIG_SCSI_PAS16 is not set
678# CONFIG_SCSI_PSI240I is not set
679# CONFIG_SCSI_QLOGIC_FAS is not set
680# CONFIG_SCSI_QLOGIC_1280 is not set
681# CONFIG_SCSI_QLA_FC is not set
682# CONFIG_SCSI_QLA_ISCSI is not set
683# CONFIG_SCSI_LPFC is not set
684# CONFIG_SCSI_SYM53C416 is not set
685# CONFIG_SCSI_DC395x is not set
686# CONFIG_SCSI_DC390T is not set
687# CONFIG_SCSI_T128 is not set
688# CONFIG_SCSI_DEBUG is not set
689# CONFIG_SCSI_SRP is not set
690# CONFIG_ATA is not set 684# CONFIG_ATA is not set
691
692#
693# Old CD-ROM drivers (not SCSI, not IDE)
694#
695# CONFIG_CD_NO_IDESCSI is not set
696
697#
698# Multi-device support (RAID and LVM)
699#
700# CONFIG_MD is not set 685# CONFIG_MD is not set
701
702#
703# Fusion MPT device support
704#
705# CONFIG_FUSION is not set 686# CONFIG_FUSION is not set
706# CONFIG_FUSION_SPI is not set
707# CONFIG_FUSION_FC is not set
708# CONFIG_FUSION_SAS is not set
709 687
710# 688#
711# IEEE 1394 (FireWire) support 689# IEEE 1394 (FireWire) support
712# 690#
713# CONFIG_FIREWIRE is not set
714# CONFIG_IEEE1394 is not set
715 691
716# 692#
717# I2O device support 693# Enable only one of the two stacks, unless you know what you are doing
718# 694#
695# CONFIG_FIREWIRE is not set
696# CONFIG_IEEE1394 is not set
719# CONFIG_I2O is not set 697# CONFIG_I2O is not set
720
721#
722# Network device support
723#
724CONFIG_NETDEVICES=y 698CONFIG_NETDEVICES=y
725# CONFIG_DUMMY is not set 699# CONFIG_DUMMY is not set
726# CONFIG_BONDING is not set 700# CONFIG_BONDING is not set
701CONFIG_MACVLAN=m
727# CONFIG_EQUALIZER is not set 702# CONFIG_EQUALIZER is not set
728# CONFIG_TUN is not set 703# CONFIG_TUN is not set
704CONFIG_VETH=m
729# CONFIG_ARCNET is not set 705# CONFIG_ARCNET is not set
730CONFIG_PHYLIB=m 706CONFIG_PHYLIB=m
731 707
@@ -740,29 +716,32 @@ CONFIG_CICADA_PHY=m
740# CONFIG_VITESSE_PHY is not set 716# CONFIG_VITESSE_PHY is not set
741# CONFIG_SMSC_PHY is not set 717# CONFIG_SMSC_PHY is not set
742# CONFIG_BROADCOM_PHY is not set 718# CONFIG_BROADCOM_PHY is not set
743# CONFIG_FIXED_PHY is not set 719# CONFIG_ICPLUS_PHY is not set
744 720# CONFIG_REALTEK_PHY is not set
745# 721# CONFIG_MDIO_BITBANG is not set
746# Ethernet (10 or 100Mbit)
747#
748CONFIG_NET_ETHERNET=y 722CONFIG_NET_ETHERNET=y
749CONFIG_MII=y 723CONFIG_MII=y
724# CONFIG_AX88796 is not set
750# CONFIG_HAPPYMEAL is not set 725# CONFIG_HAPPYMEAL is not set
751# CONFIG_SUNGEM is not set 726# CONFIG_SUNGEM is not set
752# CONFIG_CASSINI is not set 727# CONFIG_CASSINI is not set
753# CONFIG_NET_VENDOR_3COM is not set 728# CONFIG_NET_VENDOR_3COM is not set
754# CONFIG_NET_VENDOR_SMC is not set 729# CONFIG_NET_VENDOR_SMC is not set
730# CONFIG_SMC91X is not set
755# CONFIG_DM9000 is not set 731# CONFIG_DM9000 is not set
756# CONFIG_NET_VENDOR_RACAL is not set 732# CONFIG_NET_VENDOR_RACAL is not set
757
758#
759# Tulip family network device support
760#
761# CONFIG_NET_TULIP is not set 733# CONFIG_NET_TULIP is not set
762# CONFIG_AT1700 is not set 734# CONFIG_AT1700 is not set
763# CONFIG_DEPCA is not set 735# CONFIG_DEPCA is not set
764# CONFIG_HP100 is not set 736# CONFIG_HP100 is not set
765# CONFIG_NET_ISA is not set 737# CONFIG_NET_ISA is not set
738# CONFIG_IBM_NEW_EMAC_ZMII is not set
739# CONFIG_IBM_NEW_EMAC_RGMII is not set
740# CONFIG_IBM_NEW_EMAC_TAH is not set
741# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
742# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
743# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
744# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
766CONFIG_NET_PCI=y 745CONFIG_NET_PCI=y
767# CONFIG_PCNET32 is not set 746# CONFIG_PCNET32 is not set
768# CONFIG_AMD8111_ETH is not set 747# CONFIG_AMD8111_ETH is not set
@@ -773,7 +752,6 @@ CONFIG_NET_PCI=y
773# CONFIG_FORCEDETH is not set 752# CONFIG_FORCEDETH is not set
774# CONFIG_CS89x0 is not set 753# CONFIG_CS89x0 is not set
775# CONFIG_TC35815 is not set 754# CONFIG_TC35815 is not set
776# CONFIG_DGRS is not set
777# CONFIG_EEPRO100 is not set 755# CONFIG_EEPRO100 is not set
778# CONFIG_E100 is not set 756# CONFIG_E100 is not set
779# CONFIG_FEALNX is not set 757# CONFIG_FEALNX is not set
@@ -785,15 +763,21 @@ CONFIG_8139TOO=y
785# CONFIG_8139TOO_TUNE_TWISTER is not set 763# CONFIG_8139TOO_TUNE_TWISTER is not set
786# CONFIG_8139TOO_8129 is not set 764# CONFIG_8139TOO_8129 is not set
787# CONFIG_8139_OLD_RX_RESET is not set 765# CONFIG_8139_OLD_RX_RESET is not set
766# CONFIG_R6040 is not set
788# CONFIG_SIS900 is not set 767# CONFIG_SIS900 is not set
789# CONFIG_EPIC100 is not set 768# CONFIG_EPIC100 is not set
790# CONFIG_SUNDANCE is not set 769# CONFIG_SUNDANCE is not set
770# CONFIG_TLAN is not set
791# CONFIG_VIA_RHINE is not set 771# CONFIG_VIA_RHINE is not set
792# CONFIG_SC92031 is not set 772# CONFIG_SC92031 is not set
773# CONFIG_ATL2 is not set
793CONFIG_NETDEV_1000=y 774CONFIG_NETDEV_1000=y
794# CONFIG_ACENIC is not set 775# CONFIG_ACENIC is not set
795# CONFIG_DL2K is not set 776# CONFIG_DL2K is not set
796# CONFIG_E1000 is not set 777# CONFIG_E1000 is not set
778# CONFIG_E1000E is not set
779# CONFIG_IP1000 is not set
780# CONFIG_IGB is not set
797# CONFIG_NS83820 is not set 781# CONFIG_NS83820 is not set
798# CONFIG_HAMACHI is not set 782# CONFIG_HAMACHI is not set
799# CONFIG_YELLOWFIN is not set 783# CONFIG_YELLOWFIN is not set
@@ -801,20 +785,29 @@ CONFIG_NETDEV_1000=y
801# CONFIG_SIS190 is not set 785# CONFIG_SIS190 is not set
802# CONFIG_SKGE is not set 786# CONFIG_SKGE is not set
803# CONFIG_SKY2 is not set 787# CONFIG_SKY2 is not set
804# CONFIG_SK98LIN is not set
805# CONFIG_VIA_VELOCITY is not set 788# CONFIG_VIA_VELOCITY is not set
806# CONFIG_TIGON3 is not set 789# CONFIG_TIGON3 is not set
807# CONFIG_BNX2 is not set 790# CONFIG_BNX2 is not set
808# CONFIG_QLA3XXX is not set 791# CONFIG_QLA3XXX is not set
809# CONFIG_ATL1 is not set 792# CONFIG_ATL1 is not set
793# CONFIG_ATL1E is not set
794# CONFIG_JME is not set
810CONFIG_NETDEV_10000=y 795CONFIG_NETDEV_10000=y
811# CONFIG_CHELSIO_T1 is not set 796# CONFIG_CHELSIO_T1 is not set
812# CONFIG_CHELSIO_T3 is not set 797# CONFIG_CHELSIO_T3 is not set
798# CONFIG_ENIC is not set
799# CONFIG_IXGBE is not set
813# CONFIG_IXGB is not set 800# CONFIG_IXGB is not set
814# CONFIG_S2IO is not set 801# CONFIG_S2IO is not set
815# CONFIG_MYRI10GE is not set 802# CONFIG_MYRI10GE is not set
816# CONFIG_NETXEN_NIC is not set 803# CONFIG_NETXEN_NIC is not set
804# CONFIG_NIU is not set
805# CONFIG_MLX4_EN is not set
817# CONFIG_MLX4_CORE is not set 806# CONFIG_MLX4_CORE is not set
807# CONFIG_TEHUTI is not set
808# CONFIG_BNX2X is not set
809# CONFIG_QLGE is not set
810# CONFIG_SFC is not set
818# CONFIG_TR is not set 811# CONFIG_TR is not set
819 812
820# 813#
@@ -822,6 +815,7 @@ CONFIG_NETDEV_10000=y
822# 815#
823# CONFIG_WLAN_PRE80211 is not set 816# CONFIG_WLAN_PRE80211 is not set
824# CONFIG_WLAN_80211 is not set 817# CONFIG_WLAN_80211 is not set
818# CONFIG_IWLWIFI_LEDS is not set
825 819
826# 820#
827# USB Network Adapters 821# USB Network Adapters
@@ -830,7 +824,6 @@ CONFIG_NETDEV_10000=y
830# CONFIG_USB_KAWETH is not set 824# CONFIG_USB_KAWETH is not set
831# CONFIG_USB_PEGASUS is not set 825# CONFIG_USB_PEGASUS is not set
832# CONFIG_USB_RTL8150 is not set 826# CONFIG_USB_RTL8150 is not set
833# CONFIG_USB_USBNET_MII is not set
834# CONFIG_USB_USBNET is not set 827# CONFIG_USB_USBNET is not set
835# CONFIG_WAN is not set 828# CONFIG_WAN is not set
836# CONFIG_FDDI is not set 829# CONFIG_FDDI is not set
@@ -844,25 +837,17 @@ CONFIG_PPP_DEFLATE=m
844CONFIG_PPP_BSDCOMP=m 837CONFIG_PPP_BSDCOMP=m
845CONFIG_PPP_MPPE=m 838CONFIG_PPP_MPPE=m
846CONFIG_PPPOE=m 839CONFIG_PPPOE=m
840CONFIG_PPPOL2TP=m
847CONFIG_SLIP=m 841CONFIG_SLIP=m
848CONFIG_SLIP_COMPRESSED=y 842CONFIG_SLIP_COMPRESSED=y
849CONFIG_SLHC=m 843CONFIG_SLHC=m
850CONFIG_SLIP_SMART=y 844CONFIG_SLIP_SMART=y
851CONFIG_SLIP_MODE_SLIP6=y 845CONFIG_SLIP_MODE_SLIP6=y
852CONFIG_NET_FC=y 846CONFIG_NET_FC=y
853# CONFIG_SHAPER is not set
854# CONFIG_NETCONSOLE is not set 847# CONFIG_NETCONSOLE is not set
855# CONFIG_NETPOLL is not set 848# CONFIG_NETPOLL is not set
856# CONFIG_NET_POLL_CONTROLLER is not set 849# CONFIG_NET_POLL_CONTROLLER is not set
857
858#
859# ISDN subsystem
860#
861# CONFIG_ISDN is not set 850# CONFIG_ISDN is not set
862
863#
864# Telephony Support
865#
866# CONFIG_PHONE is not set 851# CONFIG_PHONE is not set
867 852
868# 853#
@@ -870,6 +855,7 @@ CONFIG_NET_FC=y
870# 855#
871CONFIG_INPUT=y 856CONFIG_INPUT=y
872CONFIG_INPUT_FF_MEMLESS=y 857CONFIG_INPUT_FF_MEMLESS=y
858# CONFIG_INPUT_POLLDEV is not set
873 859
874# 860#
875# Userland interfaces 861# Userland interfaces
@@ -879,7 +865,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y
879CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 865CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
880CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 866CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
881# CONFIG_INPUT_JOYDEV is not set 867# CONFIG_INPUT_JOYDEV is not set
882# CONFIG_INPUT_TSDEV is not set
883# CONFIG_INPUT_EVDEV is not set 868# CONFIG_INPUT_EVDEV is not set
884# CONFIG_INPUT_EVBUG is not set 869# CONFIG_INPUT_EVBUG is not set
885 870
@@ -900,9 +885,11 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
900CONFIG_MOUSE_PS2_SYNAPTICS=y 885CONFIG_MOUSE_PS2_SYNAPTICS=y
901CONFIG_MOUSE_PS2_LIFEBOOK=y 886CONFIG_MOUSE_PS2_LIFEBOOK=y
902CONFIG_MOUSE_PS2_TRACKPOINT=y 887CONFIG_MOUSE_PS2_TRACKPOINT=y
888# CONFIG_MOUSE_PS2_ELANTECH is not set
903# CONFIG_MOUSE_PS2_TOUCHKIT is not set 889# CONFIG_MOUSE_PS2_TOUCHKIT is not set
904CONFIG_MOUSE_SERIAL=y 890CONFIG_MOUSE_SERIAL=y
905# CONFIG_MOUSE_APPLETOUCH is not set 891# CONFIG_MOUSE_APPLETOUCH is not set
892# CONFIG_MOUSE_BCM5974 is not set
906# CONFIG_MOUSE_INPORT is not set 893# CONFIG_MOUSE_INPORT is not set
907# CONFIG_MOUSE_LOGIBM is not set 894# CONFIG_MOUSE_LOGIBM is not set
908# CONFIG_MOUSE_PC110PAD is not set 895# CONFIG_MOUSE_PC110PAD is not set
@@ -927,10 +914,13 @@ CONFIG_SERIO_LIBPS2=y
927# Character devices 914# Character devices
928# 915#
929CONFIG_VT=y 916CONFIG_VT=y
917CONFIG_CONSOLE_TRANSLATIONS=y
930CONFIG_VT_CONSOLE=y 918CONFIG_VT_CONSOLE=y
931CONFIG_HW_CONSOLE=y 919CONFIG_HW_CONSOLE=y
932# CONFIG_VT_HW_CONSOLE_BINDING is not set 920# CONFIG_VT_HW_CONSOLE_BINDING is not set
921CONFIG_DEVKMEM=y
933# CONFIG_SERIAL_NONSTANDARD is not set 922# CONFIG_SERIAL_NONSTANDARD is not set
923# CONFIG_NOZOMI is not set
934 924
935# 925#
936# Serial drivers 926# Serial drivers
@@ -951,105 +941,152 @@ CONFIG_SERIAL_CORE_CONSOLE=y
951CONFIG_UNIX98_PTYS=y 941CONFIG_UNIX98_PTYS=y
952CONFIG_LEGACY_PTYS=y 942CONFIG_LEGACY_PTYS=y
953CONFIG_LEGACY_PTY_COUNT=256 943CONFIG_LEGACY_PTY_COUNT=256
954
955#
956# IPMI
957#
958# CONFIG_IPMI_HANDLER is not set 944# CONFIG_IPMI_HANDLER is not set
959# CONFIG_WATCHDOG is not set
960CONFIG_HW_RANDOM=y 945CONFIG_HW_RANDOM=y
961CONFIG_RTC=y
962# CONFIG_DTLK is not set 946# CONFIG_DTLK is not set
963# CONFIG_R3964 is not set 947# CONFIG_R3964 is not set
964# CONFIG_APPLICOM is not set 948# CONFIG_APPLICOM is not set
965# CONFIG_DRM is not set
966# CONFIG_RAW_DRIVER is not set 949# CONFIG_RAW_DRIVER is not set
967
968#
969# TPM devices
970#
971# CONFIG_TCG_TPM is not set 950# CONFIG_TCG_TPM is not set
972CONFIG_DEVPORT=y 951CONFIG_DEVPORT=y
973CONFIG_I2C=m 952CONFIG_I2C=m
974CONFIG_I2C_BOARDINFO=y 953CONFIG_I2C_BOARDINFO=y
975CONFIG_I2C_CHARDEV=m 954CONFIG_I2C_CHARDEV=m
955CONFIG_I2C_HELPER_AUTO=y
976 956
977# 957#
978# I2C Algorithms 958# I2C Hardware Bus support
979# 959#
980# CONFIG_I2C_ALGOBIT is not set
981# CONFIG_I2C_ALGOPCF is not set
982# CONFIG_I2C_ALGOPCA is not set
983 960
984# 961#
985# I2C Hardware Bus support 962# PC SMBus host controller drivers
986# 963#
987# CONFIG_I2C_ALI1535 is not set 964# CONFIG_I2C_ALI1535 is not set
988# CONFIG_I2C_ALI1563 is not set 965# CONFIG_I2C_ALI1563 is not set
989# CONFIG_I2C_ALI15X3 is not set 966# CONFIG_I2C_ALI15X3 is not set
990# CONFIG_I2C_AMD756 is not set 967# CONFIG_I2C_AMD756 is not set
991# CONFIG_I2C_AMD8111 is not set 968# CONFIG_I2C_AMD8111 is not set
992# CONFIG_I2C_ELEKTOR is not set
993# CONFIG_I2C_I801 is not set 969# CONFIG_I2C_I801 is not set
994# CONFIG_I2C_I810 is not set 970# CONFIG_I2C_ISCH is not set
995# CONFIG_I2C_PIIX4 is not set 971# CONFIG_I2C_PIIX4 is not set
996# CONFIG_I2C_NFORCE2 is not set 972# CONFIG_I2C_NFORCE2 is not set
997# CONFIG_I2C_OCORES is not set
998# CONFIG_I2C_PARPORT_LIGHT is not set
999# CONFIG_I2C_PROSAVAGE is not set
1000# CONFIG_I2C_SAVAGE4 is not set
1001# CONFIG_I2C_SIMTEC is not set
1002# CONFIG_I2C_SIS5595 is not set 973# CONFIG_I2C_SIS5595 is not set
1003# CONFIG_I2C_SIS630 is not set 974# CONFIG_I2C_SIS630 is not set
1004# CONFIG_I2C_SIS96X is not set 975# CONFIG_I2C_SIS96X is not set
1005# CONFIG_I2C_STUB is not set
1006# CONFIG_I2C_TINY_USB is not set
1007# CONFIG_I2C_VIA is not set 976# CONFIG_I2C_VIA is not set
1008CONFIG_I2C_VIAPRO=m 977CONFIG_I2C_VIAPRO=m
978
979#
980# I2C system bus drivers (mostly embedded / system-on-chip)
981#
982# CONFIG_I2C_OCORES is not set
983# CONFIG_I2C_SIMTEC is not set
984
985#
986# External I2C/SMBus adapter drivers
987#
988# CONFIG_I2C_PARPORT_LIGHT is not set
989# CONFIG_I2C_TAOS_EVM is not set
990# CONFIG_I2C_TINY_USB is not set
991
992#
993# Graphics adapter I2C/DDC channel drivers
994#
1009# CONFIG_I2C_VOODOO3 is not set 995# CONFIG_I2C_VOODOO3 is not set
996
997#
998# Other I2C/SMBus bus drivers
999#
1000# CONFIG_I2C_ELEKTOR is not set
1010# CONFIG_I2C_PCA_ISA is not set 1001# CONFIG_I2C_PCA_ISA is not set
1002# CONFIG_I2C_PCA_PLATFORM is not set
1003# CONFIG_I2C_STUB is not set
1011 1004
1012# 1005#
1013# Miscellaneous I2C Chip support 1006# Miscellaneous I2C Chip support
1014# 1007#
1015# CONFIG_SENSORS_DS1337 is not set 1008# CONFIG_DS1682 is not set
1016# CONFIG_SENSORS_DS1374 is not set 1009# CONFIG_AT24 is not set
1017# CONFIG_SENSORS_EEPROM is not set 1010# CONFIG_SENSORS_EEPROM is not set
1018# CONFIG_SENSORS_PCF8574 is not set 1011# CONFIG_SENSORS_PCF8574 is not set
1012# CONFIG_PCF8575 is not set
1019# CONFIG_SENSORS_PCA9539 is not set 1013# CONFIG_SENSORS_PCA9539 is not set
1020# CONFIG_SENSORS_PCF8591 is not set 1014# CONFIG_SENSORS_PCF8591 is not set
1021# CONFIG_SENSORS_MAX6875 is not set 1015# CONFIG_SENSORS_MAX6875 is not set
1016# CONFIG_SENSORS_TSL2550 is not set
1022# CONFIG_I2C_DEBUG_CORE is not set 1017# CONFIG_I2C_DEBUG_CORE is not set
1023# CONFIG_I2C_DEBUG_ALGO is not set 1018# CONFIG_I2C_DEBUG_ALGO is not set
1024# CONFIG_I2C_DEBUG_BUS is not set 1019# CONFIG_I2C_DEBUG_BUS is not set
1025# CONFIG_I2C_DEBUG_CHIP is not set 1020# CONFIG_I2C_DEBUG_CHIP is not set
1026
1027#
1028# SPI support
1029#
1030# CONFIG_SPI is not set 1021# CONFIG_SPI is not set
1031# CONFIG_SPI_MASTER is not set 1022# CONFIG_W1 is not set
1023# CONFIG_POWER_SUPPLY is not set
1024# CONFIG_HWMON is not set
1025# CONFIG_THERMAL is not set
1026# CONFIG_THERMAL_HWMON is not set
1027# CONFIG_WATCHDOG is not set
1028CONFIG_SSB_POSSIBLE=y
1032 1029
1033# 1030#
1034# Dallas's 1-wire bus 1031# Sonics Silicon Backplane
1035# 1032#
1036# CONFIG_W1 is not set 1033# CONFIG_SSB is not set
1037# CONFIG_HWMON is not set
1038 1034
1039# 1035#
1040# Multifunction device drivers 1036# Multifunction device drivers
1041# 1037#
1038# CONFIG_MFD_CORE is not set
1042# CONFIG_MFD_SM501 is not set 1039# CONFIG_MFD_SM501 is not set
1040# CONFIG_HTC_PASIC3 is not set
1041# CONFIG_MFD_TMIO is not set
1042# CONFIG_MFD_WM8400 is not set
1043# CONFIG_MFD_WM8350_I2C is not set
1044# CONFIG_REGULATOR is not set
1043 1045
1044# 1046#
1045# Multimedia devices 1047# Multimedia devices
1046# 1048#
1049
1050#
1051# Multimedia core support
1052#
1047CONFIG_VIDEO_DEV=m 1053CONFIG_VIDEO_DEV=m
1048CONFIG_VIDEO_V4L1=y 1054CONFIG_VIDEO_V4L2_COMMON=m
1055CONFIG_VIDEO_ALLOW_V4L1=y
1049CONFIG_VIDEO_V4L1_COMPAT=y 1056CONFIG_VIDEO_V4L1_COMPAT=y
1050CONFIG_VIDEO_V4L2=y 1057# CONFIG_DVB_CORE is not set
1058CONFIG_VIDEO_MEDIA=m
1059
1060#
1061# Multimedia drivers
1062#
1063CONFIG_MEDIA_ATTACH=y
1064CONFIG_MEDIA_TUNER=m
1065CONFIG_MEDIA_TUNER_CUSTOMIZE=y
1066CONFIG_MEDIA_TUNER_SIMPLE=m
1067CONFIG_MEDIA_TUNER_TDA8290=m
1068CONFIG_MEDIA_TUNER_TDA827X=m
1069CONFIG_MEDIA_TUNER_TDA18271=m
1070CONFIG_MEDIA_TUNER_TDA9887=m
1071CONFIG_MEDIA_TUNER_TEA5761=m
1072CONFIG_MEDIA_TUNER_TEA5767=m
1073CONFIG_MEDIA_TUNER_MT20XX=m
1074CONFIG_MEDIA_TUNER_MT2060=m
1075CONFIG_MEDIA_TUNER_MT2266=m
1076CONFIG_MEDIA_TUNER_MT2131=m
1077CONFIG_MEDIA_TUNER_QT1010=m
1078CONFIG_MEDIA_TUNER_XC2028=m
1079CONFIG_MEDIA_TUNER_XC5000=m
1080CONFIG_MEDIA_TUNER_MXL5005S=m
1081CONFIG_MEDIA_TUNER_MXL5007T=m
1082CONFIG_VIDEO_V4L2=m
1083CONFIG_VIDEO_V4L1=m
1084CONFIG_VIDEOBUF_GEN=m
1085CONFIG_VIDEOBUF_VMALLOC=m
1086CONFIG_VIDEOBUF_DMA_CONTIG=m
1051CONFIG_VIDEO_CAPTURE_DRIVERS=y 1087CONFIG_VIDEO_CAPTURE_DRIVERS=y
1052# CONFIG_VIDEO_ADV_DEBUG is not set 1088# CONFIG_VIDEO_ADV_DEBUG is not set
1089# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
1053CONFIG_VIDEO_HELPER_CHIPS_AUTO=y 1090CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
1054# CONFIG_VIDEO_VIVI is not set 1091# CONFIG_VIDEO_VIVI is not set
1055# CONFIG_VIDEO_BT848 is not set 1092# CONFIG_VIDEO_BT848 is not set
@@ -1058,17 +1095,46 @@ CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
1058# CONFIG_VIDEO_CPIA2 is not set 1095# CONFIG_VIDEO_CPIA2 is not set
1059# CONFIG_VIDEO_SAA5246A is not set 1096# CONFIG_VIDEO_SAA5246A is not set
1060# CONFIG_VIDEO_SAA5249 is not set 1097# CONFIG_VIDEO_SAA5249 is not set
1061# CONFIG_TUNER_3036 is not set
1062# CONFIG_VIDEO_STRADIS is not set 1098# CONFIG_VIDEO_STRADIS is not set
1063# CONFIG_VIDEO_SAA7134 is not set 1099# CONFIG_VIDEO_SAA7134 is not set
1064# CONFIG_VIDEO_MXB is not set 1100# CONFIG_VIDEO_MXB is not set
1065# CONFIG_VIDEO_DPC is not set
1066# CONFIG_VIDEO_HEXIUM_ORION is not set 1101# CONFIG_VIDEO_HEXIUM_ORION is not set
1067# CONFIG_VIDEO_HEXIUM_GEMINI is not set 1102# CONFIG_VIDEO_HEXIUM_GEMINI is not set
1068# CONFIG_VIDEO_CX88 is not set 1103# CONFIG_VIDEO_CX88 is not set
1069# CONFIG_VIDEO_IVTV is not set 1104# CONFIG_VIDEO_IVTV is not set
1070# CONFIG_VIDEO_CAFE_CCIC is not set 1105# CONFIG_VIDEO_CAFE_CCIC is not set
1106CONFIG_SOC_CAMERA=m
1107CONFIG_SOC_CAMERA_MT9M001=m
1108CONFIG_SOC_CAMERA_MT9M111=m
1109CONFIG_SOC_CAMERA_MT9V022=m
1110CONFIG_SOC_CAMERA_PLATFORM=m
1111CONFIG_VIDEO_SH_MOBILE_CEU=m
1071CONFIG_V4L_USB_DRIVERS=y 1112CONFIG_V4L_USB_DRIVERS=y
1113CONFIG_USB_VIDEO_CLASS=m
1114CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
1115CONFIG_USB_GSPCA=m
1116CONFIG_USB_M5602=m
1117CONFIG_USB_GSPCA_CONEX=m
1118CONFIG_USB_GSPCA_ETOMS=m
1119CONFIG_USB_GSPCA_FINEPIX=m
1120CONFIG_USB_GSPCA_MARS=m
1121CONFIG_USB_GSPCA_OV519=m
1122CONFIG_USB_GSPCA_PAC207=m
1123CONFIG_USB_GSPCA_PAC7311=m
1124CONFIG_USB_GSPCA_SONIXB=m
1125CONFIG_USB_GSPCA_SONIXJ=m
1126CONFIG_USB_GSPCA_SPCA500=m
1127CONFIG_USB_GSPCA_SPCA501=m
1128CONFIG_USB_GSPCA_SPCA505=m
1129CONFIG_USB_GSPCA_SPCA506=m
1130CONFIG_USB_GSPCA_SPCA508=m
1131CONFIG_USB_GSPCA_SPCA561=m
1132CONFIG_USB_GSPCA_STK014=m
1133CONFIG_USB_GSPCA_SUNPLUS=m
1134CONFIG_USB_GSPCA_T613=m
1135CONFIG_USB_GSPCA_TV8532=m
1136CONFIG_USB_GSPCA_VC032X=m
1137CONFIG_USB_GSPCA_ZC3XX=m
1072# CONFIG_VIDEO_PVRUSB2 is not set 1138# CONFIG_VIDEO_PVRUSB2 is not set
1073# CONFIG_VIDEO_EM28XX is not set 1139# CONFIG_VIDEO_EM28XX is not set
1074# CONFIG_VIDEO_USBVISION is not set 1140# CONFIG_VIDEO_USBVISION is not set
@@ -1079,7 +1145,6 @@ CONFIG_USB_KONICAWC=m
1079CONFIG_USB_QUICKCAM_MESSENGER=m 1145CONFIG_USB_QUICKCAM_MESSENGER=m
1080CONFIG_USB_ET61X251=m 1146CONFIG_USB_ET61X251=m
1081# CONFIG_VIDEO_OVCAMCHIP is not set 1147# CONFIG_VIDEO_OVCAMCHIP is not set
1082# CONFIG_USB_W9968CF is not set
1083CONFIG_USB_OV511=m 1148CONFIG_USB_OV511=m
1084CONFIG_USB_SE401=m 1149CONFIG_USB_SE401=m
1085CONFIG_USB_SN9C102=m 1150CONFIG_USB_SN9C102=m
@@ -1088,6 +1153,8 @@ CONFIG_USB_ZC0301=m
1088CONFIG_USB_PWC=m 1153CONFIG_USB_PWC=m
1089# CONFIG_USB_PWC_DEBUG is not set 1154# CONFIG_USB_PWC_DEBUG is not set
1090# CONFIG_USB_ZR364XX is not set 1155# CONFIG_USB_ZR364XX is not set
1156CONFIG_USB_STKWEBCAM=m
1157CONFIG_USB_S2255=m
1091CONFIG_RADIO_ADAPTERS=y 1158CONFIG_RADIO_ADAPTERS=y
1092# CONFIG_RADIO_CADET is not set 1159# CONFIG_RADIO_CADET is not set
1093# CONFIG_RADIO_RTRACK is not set 1160# CONFIG_RADIO_RTRACK is not set
@@ -1104,33 +1171,30 @@ CONFIG_RADIO_ADAPTERS=y
1104# CONFIG_RADIO_TYPHOON is not set 1171# CONFIG_RADIO_TYPHOON is not set
1105# CONFIG_RADIO_ZOLTRIX is not set 1172# CONFIG_RADIO_ZOLTRIX is not set
1106# CONFIG_USB_DSBR is not set 1173# CONFIG_USB_DSBR is not set
1107# CONFIG_DVB_CORE is not set 1174CONFIG_USB_SI470X=m
1175CONFIG_USB_MR800=m
1108CONFIG_DAB=y 1176CONFIG_DAB=y
1109# CONFIG_USB_DABUSB is not set 1177# CONFIG_USB_DABUSB is not set
1110 1178
1111# 1179#
1112# Graphics support 1180# Graphics support
1113# 1181#
1114CONFIG_BACKLIGHT_LCD_SUPPORT=y 1182# CONFIG_DRM is not set
1115CONFIG_BACKLIGHT_CLASS_DEVICE=y
1116CONFIG_LCD_CLASS_DEVICE=m
1117
1118#
1119# Display device support
1120#
1121# CONFIG_DISPLAY_SUPPORT is not set
1122# CONFIG_VGASTATE is not set 1183# CONFIG_VGASTATE is not set
1184CONFIG_VIDEO_OUTPUT_CONTROL=m
1123CONFIG_FB=y 1185CONFIG_FB=y
1124# CONFIG_FIRMWARE_EDID is not set 1186# CONFIG_FIRMWARE_EDID is not set
1125# CONFIG_FB_DDC is not set 1187# CONFIG_FB_DDC is not set
1188# CONFIG_FB_BOOT_VESA_SUPPORT is not set
1126CONFIG_FB_CFB_FILLRECT=y 1189CONFIG_FB_CFB_FILLRECT=y
1127CONFIG_FB_CFB_COPYAREA=y 1190CONFIG_FB_CFB_COPYAREA=y
1128CONFIG_FB_CFB_IMAGEBLIT=y 1191CONFIG_FB_CFB_IMAGEBLIT=y
1192# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
1129# CONFIG_FB_SYS_FILLRECT is not set 1193# CONFIG_FB_SYS_FILLRECT is not set
1130# CONFIG_FB_SYS_COPYAREA is not set 1194# CONFIG_FB_SYS_COPYAREA is not set
1131# CONFIG_FB_SYS_IMAGEBLIT is not set 1195# CONFIG_FB_SYS_IMAGEBLIT is not set
1196# CONFIG_FB_FOREIGN_ENDIAN is not set
1132# CONFIG_FB_SYS_FOPS is not set 1197# CONFIG_FB_SYS_FOPS is not set
1133CONFIG_FB_DEFERRED_IO=y
1134# CONFIG_FB_SVGALIB is not set 1198# CONFIG_FB_SVGALIB is not set
1135# CONFIG_FB_MACMODES is not set 1199# CONFIG_FB_MACMODES is not set
1136CONFIG_FB_BACKLIGHT=y 1200CONFIG_FB_BACKLIGHT=y
@@ -1158,16 +1222,30 @@ CONFIG_FB_RADEON_BACKLIGHT=y
1158# CONFIG_FB_S3 is not set 1222# CONFIG_FB_S3 is not set
1159# CONFIG_FB_SAVAGE is not set 1223# CONFIG_FB_SAVAGE is not set
1160# CONFIG_FB_SIS is not set 1224# CONFIG_FB_SIS is not set
1225# CONFIG_FB_VIA is not set
1161# CONFIG_FB_NEOMAGIC is not set 1226# CONFIG_FB_NEOMAGIC is not set
1162# CONFIG_FB_KYRO is not set 1227# CONFIG_FB_KYRO is not set
1163# CONFIG_FB_3DFX is not set 1228# CONFIG_FB_3DFX is not set
1164# CONFIG_FB_VOODOO1 is not set 1229# CONFIG_FB_VOODOO1 is not set
1165# CONFIG_FB_SMIVGX is not set
1166# CONFIG_FB_VT8623 is not set 1230# CONFIG_FB_VT8623 is not set
1167# CONFIG_FB_TRIDENT is not set 1231# CONFIG_FB_TRIDENT is not set
1168# CONFIG_FB_ARK is not set 1232# CONFIG_FB_ARK is not set
1169# CONFIG_FB_PM3 is not set 1233# CONFIG_FB_PM3 is not set
1234# CONFIG_FB_CARMINE is not set
1170# CONFIG_FB_VIRTUAL is not set 1235# CONFIG_FB_VIRTUAL is not set
1236# CONFIG_FB_METRONOME is not set
1237# CONFIG_FB_MB862XX is not set
1238CONFIG_BACKLIGHT_LCD_SUPPORT=y
1239CONFIG_LCD_CLASS_DEVICE=m
1240# CONFIG_LCD_ILI9320 is not set
1241# CONFIG_LCD_PLATFORM is not set
1242CONFIG_BACKLIGHT_CLASS_DEVICE=y
1243# CONFIG_BACKLIGHT_CORGI is not set
1244
1245#
1246# Display device support
1247#
1248# CONFIG_DISPLAY_SUPPORT is not set
1171 1249
1172# 1250#
1173# Console display driver support 1251# Console display driver support
@@ -1176,20 +1254,14 @@ CONFIG_FB_RADEON_BACKLIGHT=y
1176# CONFIG_MDA_CONSOLE is not set 1254# CONFIG_MDA_CONSOLE is not set
1177CONFIG_DUMMY_CONSOLE=y 1255CONFIG_DUMMY_CONSOLE=y
1178CONFIG_FRAMEBUFFER_CONSOLE=y 1256CONFIG_FRAMEBUFFER_CONSOLE=y
1257# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
1179# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set 1258# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
1180# CONFIG_FONTS is not set 1259# CONFIG_FONTS is not set
1181CONFIG_FONT_8x8=y 1260CONFIG_FONT_8x8=y
1182CONFIG_FONT_8x16=y 1261CONFIG_FONT_8x16=y
1183# CONFIG_LOGO is not set 1262# CONFIG_LOGO is not set
1184
1185#
1186# Sound
1187#
1188CONFIG_SOUND=y 1263CONFIG_SOUND=y
1189 1264CONFIG_SOUND_OSS_CORE=y
1190#
1191# Advanced Linux Sound Architecture
1192#
1193CONFIG_SND=m 1265CONFIG_SND=m
1194CONFIG_SND_TIMER=m 1266CONFIG_SND_TIMER=m
1195CONFIG_SND_PCM=m 1267CONFIG_SND_PCM=m
@@ -1201,28 +1273,22 @@ CONFIG_SND_MIXER_OSS=m
1201CONFIG_SND_PCM_OSS=m 1273CONFIG_SND_PCM_OSS=m
1202CONFIG_SND_PCM_OSS_PLUGINS=y 1274CONFIG_SND_PCM_OSS_PLUGINS=y
1203CONFIG_SND_SEQUENCER_OSS=y 1275CONFIG_SND_SEQUENCER_OSS=y
1204CONFIG_SND_RTCTIMER=m
1205CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
1206# CONFIG_SND_DYNAMIC_MINORS is not set 1276# CONFIG_SND_DYNAMIC_MINORS is not set
1207CONFIG_SND_SUPPORT_OLD_API=y 1277CONFIG_SND_SUPPORT_OLD_API=y
1208CONFIG_SND_VERBOSE_PROCFS=y 1278CONFIG_SND_VERBOSE_PROCFS=y
1209# CONFIG_SND_VERBOSE_PRINTK is not set 1279# CONFIG_SND_VERBOSE_PRINTK is not set
1210# CONFIG_SND_DEBUG is not set 1280# CONFIG_SND_DEBUG is not set
1211 1281CONFIG_SND_VMASTER=y
1212#
1213# Generic devices
1214#
1215CONFIG_SND_MPU401_UART=m 1282CONFIG_SND_MPU401_UART=m
1216CONFIG_SND_AC97_CODEC=m 1283CONFIG_SND_AC97_CODEC=m
1284CONFIG_SND_DRIVERS=y
1217# CONFIG_SND_DUMMY is not set 1285# CONFIG_SND_DUMMY is not set
1218# CONFIG_SND_VIRMIDI is not set 1286# CONFIG_SND_VIRMIDI is not set
1219# CONFIG_SND_MTPAV is not set 1287# CONFIG_SND_MTPAV is not set
1220# CONFIG_SND_SERIAL_U16550 is not set 1288# CONFIG_SND_SERIAL_U16550 is not set
1221# CONFIG_SND_MPU401 is not set 1289# CONFIG_SND_MPU401 is not set
1222 1290# CONFIG_SND_AC97_POWER_SAVE is not set
1223# 1291CONFIG_SND_PCI=y
1224# PCI devices
1225#
1226# CONFIG_SND_AD1889 is not set 1292# CONFIG_SND_AD1889 is not set
1227# CONFIG_SND_ALS300 is not set 1293# CONFIG_SND_ALS300 is not set
1228# CONFIG_SND_ALI5451 is not set 1294# CONFIG_SND_ALI5451 is not set
@@ -1231,10 +1297,12 @@ CONFIG_SND_AC97_CODEC=m
1231# CONFIG_SND_AU8810 is not set 1297# CONFIG_SND_AU8810 is not set
1232# CONFIG_SND_AU8820 is not set 1298# CONFIG_SND_AU8820 is not set
1233# CONFIG_SND_AU8830 is not set 1299# CONFIG_SND_AU8830 is not set
1300# CONFIG_SND_AW2 is not set
1234# CONFIG_SND_AZT3328 is not set 1301# CONFIG_SND_AZT3328 is not set
1235# CONFIG_SND_BT87X is not set 1302# CONFIG_SND_BT87X is not set
1236# CONFIG_SND_CA0106 is not set 1303# CONFIG_SND_CA0106 is not set
1237# CONFIG_SND_CMIPCI is not set 1304# CONFIG_SND_CMIPCI is not set
1305# CONFIG_SND_OXYGEN is not set
1238# CONFIG_SND_CS4281 is not set 1306# CONFIG_SND_CS4281 is not set
1239# CONFIG_SND_CS46XX is not set 1307# CONFIG_SND_CS46XX is not set
1240# CONFIG_SND_DARLA20 is not set 1308# CONFIG_SND_DARLA20 is not set
@@ -1259,6 +1327,7 @@ CONFIG_SND_AC97_CODEC=m
1259# CONFIG_SND_HDA_INTEL is not set 1327# CONFIG_SND_HDA_INTEL is not set
1260# CONFIG_SND_HDSP is not set 1328# CONFIG_SND_HDSP is not set
1261# CONFIG_SND_HDSPM is not set 1329# CONFIG_SND_HDSPM is not set
1330# CONFIG_SND_HIFIER is not set
1262# CONFIG_SND_ICE1712 is not set 1331# CONFIG_SND_ICE1712 is not set
1263# CONFIG_SND_ICE1724 is not set 1332# CONFIG_SND_ICE1724 is not set
1264# CONFIG_SND_INTEL8X0 is not set 1333# CONFIG_SND_INTEL8X0 is not set
@@ -1276,43 +1345,26 @@ CONFIG_SND_AC97_CODEC=m
1276# CONFIG_SND_TRIDENT is not set 1345# CONFIG_SND_TRIDENT is not set
1277CONFIG_SND_VIA82XX=m 1346CONFIG_SND_VIA82XX=m
1278# CONFIG_SND_VIA82XX_MODEM is not set 1347# CONFIG_SND_VIA82XX_MODEM is not set
1348# CONFIG_SND_VIRTUOSO is not set
1279# CONFIG_SND_VX222 is not set 1349# CONFIG_SND_VX222 is not set
1280# CONFIG_SND_YMFPCI is not set 1350# CONFIG_SND_YMFPCI is not set
1281# CONFIG_SND_AC97_POWER_SAVE is not set 1351CONFIG_SND_MIPS=y
1282 1352CONFIG_SND_USB=y
1283#
1284# ALSA MIPS devices
1285#
1286
1287#
1288# USB devices
1289#
1290# CONFIG_SND_USB_AUDIO is not set 1353# CONFIG_SND_USB_AUDIO is not set
1291# CONFIG_SND_USB_CAIAQ is not set 1354# CONFIG_SND_USB_CAIAQ is not set
1292
1293#
1294# System on Chip audio support
1295#
1296# CONFIG_SND_SOC is not set 1355# CONFIG_SND_SOC is not set
1297
1298#
1299# Open Sound System
1300#
1301# CONFIG_SOUND_PRIME is not set 1356# CONFIG_SOUND_PRIME is not set
1302CONFIG_AC97_BUS=m 1357CONFIG_AC97_BUS=m
1303 1358CONFIG_HID_SUPPORT=y
1304#
1305# HID Devices
1306#
1307CONFIG_HID=y 1359CONFIG_HID=y
1308# CONFIG_HID_DEBUG is not set 1360# CONFIG_HID_DEBUG is not set
1361CONFIG_HIDRAW=y
1309 1362
1310# 1363#
1311# USB Input Devices 1364# USB Input Devices
1312# 1365#
1313CONFIG_USB_HID=m 1366CONFIG_USB_HID=m
1314# CONFIG_USB_HIDINPUT_POWERBOOK is not set 1367CONFIG_HID_PID=y
1315# CONFIG_HID_FF is not set
1316CONFIG_USB_HIDDEV=y 1368CONFIG_USB_HIDDEV=y
1317 1369
1318# 1370#
@@ -1322,13 +1374,39 @@ CONFIG_USB_HIDDEV=y
1322# CONFIG_USB_MOUSE is not set 1374# CONFIG_USB_MOUSE is not set
1323 1375
1324# 1376#
1325# USB support 1377# Special HID drivers
1326# 1378#
1379CONFIG_HID_COMPAT=y
1380CONFIG_HID_A4TECH=m
1381CONFIG_HID_APPLE=m
1382CONFIG_HID_BELKIN=m
1383CONFIG_HID_BRIGHT=m
1384CONFIG_HID_CHERRY=m
1385CONFIG_HID_CHICONY=m
1386CONFIG_HID_CYPRESS=m
1387CONFIG_HID_DELL=m
1388CONFIG_HID_EZKEY=m
1389CONFIG_HID_GYRATION=m
1390CONFIG_HID_LOGITECH=m
1391CONFIG_LOGITECH_FF=y
1392CONFIG_LOGIRUMBLEPAD2_FF=y
1393CONFIG_HID_MICROSOFT=m
1394CONFIG_HID_MONTEREY=m
1395CONFIG_HID_PANTHERLORD=m
1396# CONFIG_PANTHERLORD_FF is not set
1397CONFIG_HID_PETALYNX=m
1398CONFIG_HID_SAMSUNG=m
1399CONFIG_HID_SONY=m
1400CONFIG_HID_SUNPLUS=m
1401# CONFIG_THRUSTMASTER_FF is not set
1402CONFIG_ZEROPLUS_FF=m
1403CONFIG_USB_SUPPORT=y
1327CONFIG_USB_ARCH_HAS_HCD=y 1404CONFIG_USB_ARCH_HAS_HCD=y
1328CONFIG_USB_ARCH_HAS_OHCI=y 1405CONFIG_USB_ARCH_HAS_OHCI=y
1329CONFIG_USB_ARCH_HAS_EHCI=y 1406CONFIG_USB_ARCH_HAS_EHCI=y
1330CONFIG_USB=y 1407CONFIG_USB=y
1331# CONFIG_USB_DEBUG is not set 1408# CONFIG_USB_DEBUG is not set
1409CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
1332 1410
1333# 1411#
1334# Miscellaneous USB options 1412# Miscellaneous USB options
@@ -1338,35 +1416,46 @@ CONFIG_USB_DEVICEFS=y
1338# CONFIG_USB_DYNAMIC_MINORS is not set 1416# CONFIG_USB_DYNAMIC_MINORS is not set
1339# CONFIG_USB_SUSPEND is not set 1417# CONFIG_USB_SUSPEND is not set
1340# CONFIG_USB_OTG is not set 1418# CONFIG_USB_OTG is not set
1419CONFIG_USB_OTG_WHITELIST=y
1420# CONFIG_USB_OTG_BLACKLIST_HUB is not set
1421# CONFIG_USB_MON is not set
1422# CONFIG_USB_WUSB is not set
1423CONFIG_USB_WUSB_CBAF=m
1424# CONFIG_USB_WUSB_CBAF_DEBUG is not set
1341 1425
1342# 1426#
1343# USB Host Controller Drivers 1427# USB Host Controller Drivers
1344# 1428#
1429CONFIG_USB_C67X00_HCD=m
1345CONFIG_USB_EHCI_HCD=y 1430CONFIG_USB_EHCI_HCD=y
1346CONFIG_USB_EHCI_SPLIT_ISO=y
1347CONFIG_USB_EHCI_ROOT_HUB_TT=y 1431CONFIG_USB_EHCI_ROOT_HUB_TT=y
1348CONFIG_USB_EHCI_TT_NEWSCHED=y 1432CONFIG_USB_EHCI_TT_NEWSCHED=y
1349# CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set
1350# CONFIG_USB_ISP116X_HCD is not set 1433# CONFIG_USB_ISP116X_HCD is not set
1434CONFIG_USB_ISP1760_HCD=m
1351CONFIG_USB_OHCI_HCD=y 1435CONFIG_USB_OHCI_HCD=y
1352# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 1436# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
1353# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set 1437# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
1354CONFIG_USB_OHCI_LITTLE_ENDIAN=y 1438CONFIG_USB_OHCI_LITTLE_ENDIAN=y
1355CONFIG_USB_UHCI_HCD=m 1439CONFIG_USB_UHCI_HCD=m
1356# CONFIG_USB_SL811_HCD is not set 1440# CONFIG_USB_SL811_HCD is not set
1441CONFIG_USB_R8A66597_HCD=m
1442# CONFIG_USB_WHCI_HCD is not set
1443# CONFIG_USB_HWA_HCD is not set
1357 1444
1358# 1445#
1359# USB Device Class drivers 1446# USB Device Class drivers
1360# 1447#
1361CONFIG_USB_ACM=y 1448CONFIG_USB_ACM=y
1362CONFIG_USB_PRINTER=y 1449CONFIG_USB_PRINTER=y
1450CONFIG_USB_WDM=m
1451CONFIG_USB_TMC=m
1363 1452
1364# 1453#
1365# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 1454# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed;
1366# 1455#
1367 1456
1368# 1457#
1369# may also be needed; see USB_STORAGE Help for more information 1458# see USB_STORAGE Help for more information
1370# 1459#
1371CONFIG_USB_STORAGE=y 1460CONFIG_USB_STORAGE=y
1372# CONFIG_USB_STORAGE_DEBUG is not set 1461# CONFIG_USB_STORAGE_DEBUG is not set
@@ -1379,7 +1468,9 @@ CONFIG_USB_STORAGE=y
1379# CONFIG_USB_STORAGE_SDDR55 is not set 1468# CONFIG_USB_STORAGE_SDDR55 is not set
1380# CONFIG_USB_STORAGE_JUMPSHOT is not set 1469# CONFIG_USB_STORAGE_JUMPSHOT is not set
1381# CONFIG_USB_STORAGE_ALAUDA is not set 1470# CONFIG_USB_STORAGE_ALAUDA is not set
1471CONFIG_USB_STORAGE_ONETOUCH=y
1382# CONFIG_USB_STORAGE_KARMA is not set 1472# CONFIG_USB_STORAGE_KARMA is not set
1473CONFIG_USB_STORAGE_CYPRESS_ATACB=y
1383CONFIG_USB_LIBUSUAL=y 1474CONFIG_USB_LIBUSUAL=y
1384 1475
1385# 1476#
@@ -1387,15 +1478,10 @@ CONFIG_USB_LIBUSUAL=y
1387# 1478#
1388# CONFIG_USB_MDC800 is not set 1479# CONFIG_USB_MDC800 is not set
1389# CONFIG_USB_MICROTEK is not set 1480# CONFIG_USB_MICROTEK is not set
1390# CONFIG_USB_MON is not set
1391 1481
1392# 1482#
1393# USB port drivers 1483# USB port drivers
1394# 1484#
1395
1396#
1397# USB Serial Converter support
1398#
1399# CONFIG_USB_SERIAL is not set 1485# CONFIG_USB_SERIAL is not set
1400 1486
1401# 1487#
@@ -1404,7 +1490,7 @@ CONFIG_USB_LIBUSUAL=y
1404# CONFIG_USB_EMI62 is not set 1490# CONFIG_USB_EMI62 is not set
1405# CONFIG_USB_EMI26 is not set 1491# CONFIG_USB_EMI26 is not set
1406# CONFIG_USB_ADUTUX is not set 1492# CONFIG_USB_ADUTUX is not set
1407# CONFIG_USB_AUERSWALD is not set 1493CONFIG_USB_SEVSEG=m
1408# CONFIG_USB_RIO500 is not set 1494# CONFIG_USB_RIO500 is not set
1409# CONFIG_USB_LEGOTOWER is not set 1495# CONFIG_USB_LEGOTOWER is not set
1410# CONFIG_USB_LCD is not set 1496# CONFIG_USB_LCD is not set
@@ -1421,56 +1507,75 @@ CONFIG_USB_LIBUSUAL=y
1421# CONFIG_USB_TRANCEVIBRATOR is not set 1507# CONFIG_USB_TRANCEVIBRATOR is not set
1422# CONFIG_USB_IOWARRIOR is not set 1508# CONFIG_USB_IOWARRIOR is not set
1423# CONFIG_USB_TEST is not set 1509# CONFIG_USB_TEST is not set
1424 1510CONFIG_USB_ISIGHTFW=m
1425# 1511CONFIG_USB_VST=m
1426# USB DSL modem support
1427#
1428
1429#
1430# USB Gadget Support
1431#
1432# CONFIG_USB_GADGET is not set 1512# CONFIG_USB_GADGET is not set
1513# CONFIG_UWB is not set
1433# CONFIG_MMC is not set 1514# CONFIG_MMC is not set
1434 1515# CONFIG_MEMSTICK is not set
1435#
1436# LED devices
1437#
1438# CONFIG_NEW_LEDS is not set 1516# CONFIG_NEW_LEDS is not set
1439 1517# CONFIG_ACCESSIBILITY is not set
1440#
1441# LED drivers
1442#
1443
1444#
1445# LED Triggers
1446#
1447
1448#
1449# InfiniBand support
1450#
1451# CONFIG_INFINIBAND is not set 1518# CONFIG_INFINIBAND is not set
1519CONFIG_RTC_LIB=y
1520CONFIG_RTC_CLASS=m
1452 1521
1453# 1522#
1454# EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 1523# RTC interfaces
1455# 1524#
1525CONFIG_RTC_INTF_SYSFS=y
1526CONFIG_RTC_INTF_PROC=y
1527CONFIG_RTC_INTF_DEV=y
1528CONFIG_RTC_INTF_DEV_UIE_EMUL=y
1529# CONFIG_RTC_DRV_TEST is not set
1456 1530
1457# 1531#
1458# Real Time Clock 1532# I2C RTC drivers
1459# 1533#
1460# CONFIG_RTC_CLASS is not set 1534# CONFIG_RTC_DRV_DS1307 is not set
1535# CONFIG_RTC_DRV_DS1374 is not set
1536# CONFIG_RTC_DRV_DS1672 is not set
1537# CONFIG_RTC_DRV_MAX6900 is not set
1538# CONFIG_RTC_DRV_RS5C372 is not set
1539# CONFIG_RTC_DRV_ISL1208 is not set
1540# CONFIG_RTC_DRV_X1205 is not set
1541# CONFIG_RTC_DRV_PCF8563 is not set
1542# CONFIG_RTC_DRV_PCF8583 is not set
1543# CONFIG_RTC_DRV_M41T80 is not set
1544# CONFIG_RTC_DRV_S35390A is not set
1545# CONFIG_RTC_DRV_FM3130 is not set
1546# CONFIG_RTC_DRV_RX8581 is not set
1461 1547
1462# 1548#
1463# DMA Engine support 1549# SPI RTC drivers
1464# 1550#
1465# CONFIG_DMA_ENGINE is not set
1466 1551
1467# 1552#
1468# DMA Clients 1553# Platform RTC drivers
1469# 1554#
1555CONFIG_RTC_DRV_CMOS=m
1556# CONFIG_RTC_DRV_DS1286 is not set
1557# CONFIG_RTC_DRV_DS1511 is not set
1558# CONFIG_RTC_DRV_DS1553 is not set
1559# CONFIG_RTC_DRV_DS1742 is not set
1560# CONFIG_RTC_DRV_STK17TA8 is not set
1561# CONFIG_RTC_DRV_M48T86 is not set
1562# CONFIG_RTC_DRV_M48T35 is not set
1563# CONFIG_RTC_DRV_M48T59 is not set
1564# CONFIG_RTC_DRV_BQ4802 is not set
1565# CONFIG_RTC_DRV_V3020 is not set
1470 1566
1471# 1567#
1472# DMA Devices 1568# on-CPU RTC drivers
1473# 1569#
1570# CONFIG_DMADEVICES is not set
1571CONFIG_UIO=m
1572CONFIG_UIO_CIF=m
1573# CONFIG_UIO_PDRV is not set
1574# CONFIG_UIO_PDRV_GENIRQ is not set
1575# CONFIG_UIO_SMX is not set
1576# CONFIG_UIO_SERCOS3 is not set
1577# CONFIG_STAGING is not set
1578CONFIG_STAGING_EXCLUDE_BUILD=y
1474 1579
1475# 1580#
1476# File systems 1581# File systems
@@ -1478,27 +1583,31 @@ CONFIG_USB_LIBUSUAL=y
1478CONFIG_EXT2_FS=y 1583CONFIG_EXT2_FS=y
1479# CONFIG_EXT2_FS_XATTR is not set 1584# CONFIG_EXT2_FS_XATTR is not set
1480CONFIG_EXT2_FS_XIP=y 1585CONFIG_EXT2_FS_XIP=y
1481CONFIG_FS_XIP=y
1482CONFIG_EXT3_FS=y 1586CONFIG_EXT3_FS=y
1483# CONFIG_EXT3_FS_XATTR is not set 1587# CONFIG_EXT3_FS_XATTR is not set
1484# CONFIG_EXT4DEV_FS is not set 1588CONFIG_EXT4_FS=m
1589CONFIG_EXT4DEV_COMPAT=y
1590CONFIG_EXT4_FS_XATTR=y
1591CONFIG_EXT4_FS_POSIX_ACL=y
1592CONFIG_EXT4_FS_SECURITY=y
1593CONFIG_FS_XIP=y
1485CONFIG_JBD=y 1594CONFIG_JBD=y
1486# CONFIG_JBD_DEBUG is not set 1595CONFIG_JBD2=m
1596CONFIG_FS_MBCACHE=m
1487CONFIG_REISERFS_FS=m 1597CONFIG_REISERFS_FS=m
1488# CONFIG_REISERFS_CHECK is not set 1598# CONFIG_REISERFS_CHECK is not set
1489# CONFIG_REISERFS_PROC_INFO is not set 1599# CONFIG_REISERFS_PROC_INFO is not set
1490# CONFIG_REISERFS_FS_XATTR is not set 1600# CONFIG_REISERFS_FS_XATTR is not set
1491# CONFIG_JFS_FS is not set 1601# CONFIG_JFS_FS is not set
1492CONFIG_FS_POSIX_ACL=y 1602CONFIG_FS_POSIX_ACL=y
1603CONFIG_FILE_LOCKING=y
1493# CONFIG_XFS_FS is not set 1604# CONFIG_XFS_FS is not set
1494# CONFIG_GFS2_FS is not set 1605# CONFIG_GFS2_FS is not set
1495# CONFIG_OCFS2_FS is not set 1606# CONFIG_OCFS2_FS is not set
1496# CONFIG_MINIX_FS is not set 1607CONFIG_DNOTIFY=y
1497# CONFIG_ROMFS_FS is not set
1498CONFIG_INOTIFY=y 1608CONFIG_INOTIFY=y
1499CONFIG_INOTIFY_USER=y 1609CONFIG_INOTIFY_USER=y
1500# CONFIG_QUOTA is not set 1610# CONFIG_QUOTA is not set
1501CONFIG_DNOTIFY=y
1502CONFIG_AUTOFS_FS=y 1611CONFIG_AUTOFS_FS=y
1503CONFIG_AUTOFS4_FS=y 1612CONFIG_AUTOFS4_FS=y
1504CONFIG_FUSE_FS=y 1613CONFIG_FUSE_FS=y
@@ -1530,11 +1639,11 @@ CONFIG_NTFS_RW=y
1530CONFIG_PROC_FS=y 1639CONFIG_PROC_FS=y
1531CONFIG_PROC_KCORE=y 1640CONFIG_PROC_KCORE=y
1532CONFIG_PROC_SYSCTL=y 1641CONFIG_PROC_SYSCTL=y
1642CONFIG_PROC_PAGE_MONITOR=y
1533CONFIG_SYSFS=y 1643CONFIG_SYSFS=y
1534CONFIG_TMPFS=y 1644CONFIG_TMPFS=y
1535# CONFIG_TMPFS_POSIX_ACL is not set 1645# CONFIG_TMPFS_POSIX_ACL is not set
1536# CONFIG_HUGETLB_PAGE is not set 1646# CONFIG_HUGETLB_PAGE is not set
1537CONFIG_RAMFS=y
1538# CONFIG_CONFIGFS_FS is not set 1647# CONFIG_CONFIGFS_FS is not set
1539 1648
1540# 1649#
@@ -1550,25 +1659,23 @@ CONFIG_RAMFS=y
1550# CONFIG_JFFS2_FS is not set 1659# CONFIG_JFFS2_FS is not set
1551# CONFIG_CRAMFS is not set 1660# CONFIG_CRAMFS is not set
1552# CONFIG_VXFS_FS is not set 1661# CONFIG_VXFS_FS is not set
1662# CONFIG_MINIX_FS is not set
1663CONFIG_OMFS_FS=m
1553# CONFIG_HPFS_FS is not set 1664# CONFIG_HPFS_FS is not set
1554# CONFIG_QNX4FS_FS is not set 1665# CONFIG_QNX4FS_FS is not set
1666# CONFIG_ROMFS_FS is not set
1555# CONFIG_SYSV_FS is not set 1667# CONFIG_SYSV_FS is not set
1556# CONFIG_UFS_FS is not set 1668# CONFIG_UFS_FS is not set
1557 1669CONFIG_NETWORK_FILESYSTEMS=y
1558#
1559# Network File Systems
1560#
1561CONFIG_NFS_FS=m 1670CONFIG_NFS_FS=m
1562CONFIG_NFS_V3=y 1671CONFIG_NFS_V3=y
1563CONFIG_NFS_V3_ACL=y 1672CONFIG_NFS_V3_ACL=y
1564CONFIG_NFS_V4=y 1673CONFIG_NFS_V4=y
1565CONFIG_NFS_DIRECTIO=y
1566CONFIG_NFSD=m 1674CONFIG_NFSD=m
1567CONFIG_NFSD_V2_ACL=y 1675CONFIG_NFSD_V2_ACL=y
1568CONFIG_NFSD_V3=y 1676CONFIG_NFSD_V3=y
1569CONFIG_NFSD_V3_ACL=y 1677CONFIG_NFSD_V3_ACL=y
1570CONFIG_NFSD_V4=y 1678CONFIG_NFSD_V4=y
1571CONFIG_NFSD_TCP=y
1572CONFIG_LOCKD=m 1679CONFIG_LOCKD=m
1573CONFIG_LOCKD_V4=y 1680CONFIG_LOCKD_V4=y
1574CONFIG_EXPORTFS=m 1681CONFIG_EXPORTFS=m
@@ -1576,7 +1683,7 @@ CONFIG_NFS_ACL_SUPPORT=m
1576CONFIG_NFS_COMMON=y 1683CONFIG_NFS_COMMON=y
1577CONFIG_SUNRPC=m 1684CONFIG_SUNRPC=m
1578CONFIG_SUNRPC_GSS=m 1685CONFIG_SUNRPC_GSS=m
1579# CONFIG_SUNRPC_BIND34 is not set 1686# CONFIG_SUNRPC_REGISTER_V4 is not set
1580CONFIG_RPCSEC_GSS_KRB5=m 1687CONFIG_RPCSEC_GSS_KRB5=m
1581# CONFIG_RPCSEC_GSS_SPKM3 is not set 1688# CONFIG_RPCSEC_GSS_SPKM3 is not set
1582CONFIG_SMB_FS=m 1689CONFIG_SMB_FS=m
@@ -1616,10 +1723,6 @@ CONFIG_MSDOS_PARTITION=y
1616# CONFIG_KARMA_PARTITION is not set 1723# CONFIG_KARMA_PARTITION is not set
1617# CONFIG_EFI_PARTITION is not set 1724# CONFIG_EFI_PARTITION is not set
1618# CONFIG_SYSV68_PARTITION is not set 1725# CONFIG_SYSV68_PARTITION is not set
1619
1620#
1621# Native Language Support
1622#
1623CONFIG_NLS=y 1726CONFIG_NLS=y
1624CONFIG_NLS_DEFAULT="utf8" 1727CONFIG_NLS_DEFAULT="utf8"
1625# CONFIG_NLS_CODEPAGE_437 is not set 1728# CONFIG_NLS_CODEPAGE_437 is not set
@@ -1660,30 +1763,31 @@ CONFIG_NLS_ISO8859_1=y
1660# CONFIG_NLS_KOI8_R is not set 1763# CONFIG_NLS_KOI8_R is not set
1661# CONFIG_NLS_KOI8_U is not set 1764# CONFIG_NLS_KOI8_U is not set
1662CONFIG_NLS_UTF8=y 1765CONFIG_NLS_UTF8=y
1663
1664#
1665# Distributed Lock Manager
1666#
1667# CONFIG_DLM is not set 1766# CONFIG_DLM is not set
1668 1767
1669# 1768#
1670# Profiling support
1671#
1672CONFIG_PROFILING=y
1673CONFIG_OPROFILE=m
1674
1675#
1676# Kernel hacking 1769# Kernel hacking
1677# 1770#
1678CONFIG_TRACE_IRQFLAGS_SUPPORT=y 1771CONFIG_TRACE_IRQFLAGS_SUPPORT=y
1679# CONFIG_PRINTK_TIME is not set 1772# CONFIG_PRINTK_TIME is not set
1773CONFIG_ENABLE_WARN_DEPRECATED=y
1680# CONFIG_ENABLE_MUST_CHECK is not set 1774# CONFIG_ENABLE_MUST_CHECK is not set
1775CONFIG_FRAME_WARN=2048
1681# CONFIG_MAGIC_SYSRQ is not set 1776# CONFIG_MAGIC_SYSRQ is not set
1682# CONFIG_UNUSED_SYMBOLS is not set 1777# CONFIG_UNUSED_SYMBOLS is not set
1683# CONFIG_DEBUG_FS is not set 1778# CONFIG_DEBUG_FS is not set
1684# CONFIG_HEADERS_CHECK is not set 1779# CONFIG_HEADERS_CHECK is not set
1685# CONFIG_DEBUG_KERNEL is not set 1780# CONFIG_DEBUG_KERNEL is not set
1686CONFIG_CROSSCOMPILE=y 1781# CONFIG_DEBUG_MEMORY_INIT is not set
1782# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1783CONFIG_SYSCTL_SYSCALL_CHECK=y
1784
1785#
1786# Tracers
1787#
1788CONFIG_DYNAMIC_PRINTK_DEBUG=y
1789# CONFIG_SAMPLES is not set
1790CONFIG_HAVE_ARCH_KGDB=y
1687CONFIG_CMDLINE="" 1791CONFIG_CMDLINE=""
1688 1792
1689# 1793#
@@ -1691,64 +1795,113 @@ CONFIG_CMDLINE=""
1691# 1795#
1692# CONFIG_KEYS is not set 1796# CONFIG_KEYS is not set
1693# CONFIG_SECURITY is not set 1797# CONFIG_SECURITY is not set
1798# CONFIG_SECURITYFS is not set
1799CONFIG_SECURITY_FILE_CAPABILITIES=y
1800CONFIG_CRYPTO=y
1694 1801
1695# 1802#
1696# Cryptographic options 1803# Crypto core or helper
1697# 1804#
1698CONFIG_CRYPTO=y 1805CONFIG_CRYPTO_FIPS=y
1699CONFIG_CRYPTO_ALGAPI=y 1806CONFIG_CRYPTO_ALGAPI=y
1700CONFIG_CRYPTO_BLKCIPHER=m 1807CONFIG_CRYPTO_AEAD=y
1808CONFIG_CRYPTO_BLKCIPHER=y
1701CONFIG_CRYPTO_HASH=y 1809CONFIG_CRYPTO_HASH=y
1810CONFIG_CRYPTO_RNG=y
1702CONFIG_CRYPTO_MANAGER=y 1811CONFIG_CRYPTO_MANAGER=y
1812CONFIG_CRYPTO_GF128MUL=m
1813# CONFIG_CRYPTO_NULL is not set
1814# CONFIG_CRYPTO_CRYPTD is not set
1815CONFIG_CRYPTO_AUTHENC=m
1816# CONFIG_CRYPTO_TEST is not set
1817
1818#
1819# Authenticated Encryption with Associated Data
1820#
1821CONFIG_CRYPTO_CCM=m
1822CONFIG_CRYPTO_GCM=m
1823CONFIG_CRYPTO_SEQIV=m
1824
1825#
1826# Block modes
1827#
1828CONFIG_CRYPTO_CBC=m
1829CONFIG_CRYPTO_CTR=m
1830CONFIG_CRYPTO_CTS=m
1831CONFIG_CRYPTO_ECB=m
1832# CONFIG_CRYPTO_LRW is not set
1833CONFIG_CRYPTO_PCBC=m
1834CONFIG_CRYPTO_XTS=m
1835
1836#
1837# Hash modes
1838#
1703CONFIG_CRYPTO_HMAC=y 1839CONFIG_CRYPTO_HMAC=y
1704# CONFIG_CRYPTO_XCBC is not set 1840# CONFIG_CRYPTO_XCBC is not set
1705# CONFIG_CRYPTO_NULL is not set 1841
1842#
1843# Digest
1844#
1845# CONFIG_CRYPTO_CRC32C is not set
1706# CONFIG_CRYPTO_MD4 is not set 1846# CONFIG_CRYPTO_MD4 is not set
1707CONFIG_CRYPTO_MD5=m 1847CONFIG_CRYPTO_MD5=m
1848# CONFIG_CRYPTO_MICHAEL_MIC is not set
1849CONFIG_CRYPTO_RMD128=m
1850CONFIG_CRYPTO_RMD160=m
1851CONFIG_CRYPTO_RMD256=m
1852CONFIG_CRYPTO_RMD320=m
1708CONFIG_CRYPTO_SHA1=m 1853CONFIG_CRYPTO_SHA1=m
1709# CONFIG_CRYPTO_SHA256 is not set 1854# CONFIG_CRYPTO_SHA256 is not set
1710# CONFIG_CRYPTO_SHA512 is not set 1855# CONFIG_CRYPTO_SHA512 is not set
1711# CONFIG_CRYPTO_WP512 is not set
1712# CONFIG_CRYPTO_TGR192 is not set 1856# CONFIG_CRYPTO_TGR192 is not set
1713# CONFIG_CRYPTO_GF128MUL is not set 1857# CONFIG_CRYPTO_WP512 is not set
1714CONFIG_CRYPTO_ECB=m 1858
1715CONFIG_CRYPTO_CBC=m 1859#
1716CONFIG_CRYPTO_PCBC=m 1860# Ciphers
1717# CONFIG_CRYPTO_LRW is not set 1861#
1718# CONFIG_CRYPTO_CRYPTD is not set 1862CONFIG_CRYPTO_AES=m
1719CONFIG_CRYPTO_DES=m 1863# CONFIG_CRYPTO_ANUBIS is not set
1720# CONFIG_CRYPTO_FCRYPT is not set 1864CONFIG_CRYPTO_ARC4=m
1721# CONFIG_CRYPTO_BLOWFISH is not set 1865# CONFIG_CRYPTO_BLOWFISH is not set
1722# CONFIG_CRYPTO_TWOFISH is not set 1866# CONFIG_CRYPTO_CAMELLIA is not set
1723# CONFIG_CRYPTO_SERPENT is not set
1724# CONFIG_CRYPTO_AES is not set
1725# CONFIG_CRYPTO_CAST5 is not set 1867# CONFIG_CRYPTO_CAST5 is not set
1726# CONFIG_CRYPTO_CAST6 is not set 1868# CONFIG_CRYPTO_CAST6 is not set
1727# CONFIG_CRYPTO_TEA is not set 1869CONFIG_CRYPTO_DES=m
1728CONFIG_CRYPTO_ARC4=m 1870# CONFIG_CRYPTO_FCRYPT is not set
1729# CONFIG_CRYPTO_KHAZAD is not set 1871# CONFIG_CRYPTO_KHAZAD is not set
1730# CONFIG_CRYPTO_ANUBIS is not set 1872CONFIG_CRYPTO_SALSA20=m
1873CONFIG_CRYPTO_SEED=m
1874# CONFIG_CRYPTO_SERPENT is not set
1875# CONFIG_CRYPTO_TEA is not set
1876# CONFIG_CRYPTO_TWOFISH is not set
1877
1878#
1879# Compression
1880#
1731CONFIG_CRYPTO_DEFLATE=m 1881CONFIG_CRYPTO_DEFLATE=m
1732# CONFIG_CRYPTO_MICHAEL_MIC is not set 1882CONFIG_CRYPTO_LZO=m
1733# CONFIG_CRYPTO_CRC32C is not set
1734# CONFIG_CRYPTO_CAMELLIA is not set
1735# CONFIG_CRYPTO_TEST is not set
1736 1883
1737# 1884#
1738# Hardware crypto devices 1885# Random Number Generation
1739# 1886#
1887CONFIG_CRYPTO_ANSI_CPRNG=m
1888# CONFIG_CRYPTO_HW is not set
1740 1889
1741# 1890#
1742# Library routines 1891# Library routines
1743# 1892#
1744CONFIG_BITREVERSE=y 1893CONFIG_BITREVERSE=y
1745CONFIG_CRC_CCITT=y 1894CONFIG_CRC_CCITT=y
1746# CONFIG_CRC16 is not set 1895CONFIG_CRC16=m
1747# CONFIG_CRC_ITU_T is not set 1896# CONFIG_CRC_T10DIF is not set
1897CONFIG_CRC_ITU_T=m
1748CONFIG_CRC32=y 1898CONFIG_CRC32=y
1899CONFIG_CRC7=m
1749# CONFIG_LIBCRC32C is not set 1900# CONFIG_LIBCRC32C is not set
1750CONFIG_ZLIB_INFLATE=m 1901CONFIG_ZLIB_INFLATE=m
1751CONFIG_ZLIB_DEFLATE=m 1902CONFIG_ZLIB_DEFLATE=m
1903CONFIG_LZO_COMPRESS=m
1904CONFIG_LZO_DECOMPRESS=m
1752CONFIG_TEXTSEARCH=y 1905CONFIG_TEXTSEARCH=y
1753CONFIG_TEXTSEARCH_KMP=m 1906CONFIG_TEXTSEARCH_KMP=m
1754CONFIG_TEXTSEARCH_BM=m 1907CONFIG_TEXTSEARCH_BM=m
diff --git a/arch/mips/configs/ip22_defconfig b/arch/mips/configs/ip22_defconfig
index f719bf5e01aa..115822876417 100644
--- a/arch/mips/configs/ip22_defconfig
+++ b/arch/mips/configs/ip22_defconfig
@@ -1,30 +1,34 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.23-rc2 3# Linux kernel version: 2.6.28-rc6
4# Tue Aug 7 12:39:49 2007 4# Fri Nov 28 15:41:33 2008
5# 5#
6CONFIG_MIPS=y 6CONFIG_MIPS=y
7 7
8# 8#
9# Machine selection 9# Machine selection
10# 10#
11CONFIG_ZONE_DMA=y
12# CONFIG_MACH_ALCHEMY is not set 11# CONFIG_MACH_ALCHEMY is not set
13# CONFIG_BASLER_EXCITE is not set 12# CONFIG_BASLER_EXCITE is not set
13# CONFIG_BCM47XX is not set
14# CONFIG_MIPS_COBALT is not set 14# CONFIG_MIPS_COBALT is not set
15# CONFIG_MACH_DECSTATION is not set 15# CONFIG_MACH_DECSTATION is not set
16# CONFIG_MACH_JAZZ is not set 16# CONFIG_MACH_JAZZ is not set
17# CONFIG_LASAT is not set
17# CONFIG_LEMOTE_FULONG is not set 18# CONFIG_LEMOTE_FULONG is not set
18# CONFIG_MIPS_MALTA is not set 19# CONFIG_MIPS_MALTA is not set
19# CONFIG_MIPS_SIM is not set 20# CONFIG_MIPS_SIM is not set
20# CONFIG_MARKEINS is not set 21# CONFIG_MACH_EMMA is not set
21# CONFIG_MACH_VR41XX is not set 22# CONFIG_MACH_VR41XX is not set
23# CONFIG_NXP_STB220 is not set
24# CONFIG_NXP_STB225 is not set
22# CONFIG_PNX8550_JBS is not set 25# CONFIG_PNX8550_JBS is not set
23# CONFIG_PNX8550_STB810 is not set 26# CONFIG_PNX8550_STB810 is not set
24# CONFIG_PMC_MSP is not set 27# CONFIG_PMC_MSP is not set
25# CONFIG_PMC_YOSEMITE is not set 28# CONFIG_PMC_YOSEMITE is not set
26CONFIG_SGI_IP22=y 29CONFIG_SGI_IP22=y
27# CONFIG_SGI_IP27 is not set 30# CONFIG_SGI_IP27 is not set
31# CONFIG_SGI_IP28 is not set
28# CONFIG_SGI_IP32 is not set 32# CONFIG_SGI_IP32 is not set
29# CONFIG_SIBYTE_CRHINE is not set 33# CONFIG_SIBYTE_CRHINE is not set
30# CONFIG_SIBYTE_CARMEL is not set 34# CONFIG_SIBYTE_CARMEL is not set
@@ -35,34 +39,49 @@ CONFIG_SGI_IP22=y
35# CONFIG_SIBYTE_SENTOSA is not set 39# CONFIG_SIBYTE_SENTOSA is not set
36# CONFIG_SIBYTE_BIGSUR is not set 40# CONFIG_SIBYTE_BIGSUR is not set
37# CONFIG_SNI_RM is not set 41# CONFIG_SNI_RM is not set
38# CONFIG_TOSHIBA_JMR3927 is not set 42# CONFIG_MACH_TX39XX is not set
39# CONFIG_TOSHIBA_RBTX4927 is not set 43# CONFIG_MACH_TX49XX is not set
40# CONFIG_TOSHIBA_RBTX4938 is not set 44# CONFIG_MIKROTIK_RB532 is not set
41# CONFIG_WR_PPMC is not set 45# CONFIG_WR_PPMC is not set
42CONFIG_RWSEM_GENERIC_SPINLOCK=y 46CONFIG_RWSEM_GENERIC_SPINLOCK=y
43# CONFIG_ARCH_HAS_ILOG2_U32 is not set 47# CONFIG_ARCH_HAS_ILOG2_U32 is not set
44# CONFIG_ARCH_HAS_ILOG2_U64 is not set 48# CONFIG_ARCH_HAS_ILOG2_U64 is not set
49CONFIG_ARCH_SUPPORTS_OPROFILE=y
45CONFIG_GENERIC_FIND_NEXT_BIT=y 50CONFIG_GENERIC_FIND_NEXT_BIT=y
46CONFIG_GENERIC_HWEIGHT=y 51CONFIG_GENERIC_HWEIGHT=y
47CONFIG_GENERIC_CALIBRATE_DELAY=y 52CONFIG_GENERIC_CALIBRATE_DELAY=y
53CONFIG_GENERIC_CLOCKEVENTS=y
48CONFIG_GENERIC_TIME=y 54CONFIG_GENERIC_TIME=y
55CONFIG_GENERIC_CMOS_UPDATE=y
49CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 56CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
50# CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set 57# CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set
51CONFIG_ARC=y 58CONFIG_ARC=y
59CONFIG_CEVT_R4K=y
60CONFIG_CSRC_R4K=y
52CONFIG_DMA_NONCOHERENT=y 61CONFIG_DMA_NONCOHERENT=y
53CONFIG_DMA_NEED_PCI_MAP_STATE=y 62CONFIG_DMA_NEED_PCI_MAP_STATE=y
54CONFIG_EARLY_PRINTK=y 63CONFIG_EARLY_PRINTK=y
55CONFIG_SYS_HAS_EARLY_PRINTK=y 64CONFIG_SYS_HAS_EARLY_PRINTK=y
65# CONFIG_HOTPLUG_CPU is not set
66CONFIG_I8259=y
56# CONFIG_NO_IOPORT is not set 67# CONFIG_NO_IOPORT is not set
68CONFIG_GENERIC_ISA_DMA=y
57CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y 69CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y
58CONFIG_CPU_BIG_ENDIAN=y 70CONFIG_CPU_BIG_ENDIAN=y
59# CONFIG_CPU_LITTLE_ENDIAN is not set 71# CONFIG_CPU_LITTLE_ENDIAN is not set
60CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y 72CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
61CONFIG_IRQ_CPU=y 73CONFIG_IRQ_CPU=y
62CONFIG_SWAP_IO_SPACE=y 74CONFIG_SWAP_IO_SPACE=y
75CONFIG_SGI_HAS_INDYDOG=y
76CONFIG_SGI_HAS_HAL2=y
77CONFIG_SGI_HAS_SEEQ=y
78CONFIG_SGI_HAS_WD93=y
79CONFIG_SGI_HAS_ZILOG=y
80CONFIG_SGI_HAS_I8042=y
81CONFIG_DEFAULT_SGI_PARTITION=y
63CONFIG_ARC32=y 82CONFIG_ARC32=y
64CONFIG_BOOT_ELF32=y 83CONFIG_BOOT_ELF32=y
65CONFIG_MIPS_L1_CACHE_SHIFT=5 84CONFIG_MIPS_L1_CACHE_SHIFT=7
66CONFIG_ARC_CONSOLE=y 85CONFIG_ARC_CONSOLE=y
67CONFIG_ARC_PROMLIB=y 86CONFIG_ARC_PROMLIB=y
68 87
@@ -82,6 +101,7 @@ CONFIG_ARC_PROMLIB=y
82# CONFIG_CPU_TX49XX is not set 101# CONFIG_CPU_TX49XX is not set
83CONFIG_CPU_R5000=y 102CONFIG_CPU_R5000=y
84# CONFIG_CPU_R5432 is not set 103# CONFIG_CPU_R5432 is not set
104# CONFIG_CPU_R5500 is not set
85# CONFIG_CPU_R6000 is not set 105# CONFIG_CPU_R6000 is not set
86# CONFIG_CPU_NEVADA is not set 106# CONFIG_CPU_NEVADA is not set
87# CONFIG_CPU_R8000 is not set 107# CONFIG_CPU_R8000 is not set
@@ -115,18 +135,24 @@ CONFIG_CPU_HAS_SYNC=y
115CONFIG_GENERIC_HARDIRQS=y 135CONFIG_GENERIC_HARDIRQS=y
116CONFIG_GENERIC_IRQ_PROBE=y 136CONFIG_GENERIC_IRQ_PROBE=y
117CONFIG_ARCH_FLATMEM_ENABLE=y 137CONFIG_ARCH_FLATMEM_ENABLE=y
138CONFIG_ARCH_POPULATES_NODE_MAP=y
118CONFIG_SELECT_MEMORY_MODEL=y 139CONFIG_SELECT_MEMORY_MODEL=y
119CONFIG_FLATMEM_MANUAL=y 140CONFIG_FLATMEM_MANUAL=y
120# CONFIG_DISCONTIGMEM_MANUAL is not set 141# CONFIG_DISCONTIGMEM_MANUAL is not set
121# CONFIG_SPARSEMEM_MANUAL is not set 142# CONFIG_SPARSEMEM_MANUAL is not set
122CONFIG_FLATMEM=y 143CONFIG_FLATMEM=y
123CONFIG_FLAT_NODE_MEM_MAP=y 144CONFIG_FLAT_NODE_MEM_MAP=y
124# CONFIG_SPARSEMEM_STATIC is not set 145CONFIG_PAGEFLAGS_EXTENDED=y
125CONFIG_SPLIT_PTLOCK_CPUS=4 146CONFIG_SPLIT_PTLOCK_CPUS=4
126# CONFIG_RESOURCES_64BIT is not set 147# CONFIG_RESOURCES_64BIT is not set
127CONFIG_ZONE_DMA_FLAG=1 148# CONFIG_PHYS_ADDR_T_64BIT is not set
128CONFIG_BOUNCE=y 149CONFIG_ZONE_DMA_FLAG=0
129CONFIG_VIRT_TO_BUS=y 150CONFIG_VIRT_TO_BUS=y
151CONFIG_UNEVICTABLE_LRU=y
152CONFIG_TICK_ONESHOT=y
153CONFIG_NO_HZ=y
154CONFIG_HIGH_RES_TIMERS=y
155CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
130# CONFIG_HZ_48 is not set 156# CONFIG_HZ_48 is not set
131# CONFIG_HZ_100 is not set 157# CONFIG_HZ_100 is not set
132# CONFIG_HZ_128 is not set 158# CONFIG_HZ_128 is not set
@@ -159,13 +185,20 @@ CONFIG_SYSVIPC_SYSCTL=y
159# CONFIG_POSIX_MQUEUE is not set 185# CONFIG_POSIX_MQUEUE is not set
160# CONFIG_BSD_PROCESS_ACCT is not set 186# CONFIG_BSD_PROCESS_ACCT is not set
161# CONFIG_TASKSTATS is not set 187# CONFIG_TASKSTATS is not set
162# CONFIG_USER_NS is not set
163# CONFIG_AUDIT is not set 188# CONFIG_AUDIT is not set
164CONFIG_IKCONFIG=y 189CONFIG_IKCONFIG=y
165CONFIG_IKCONFIG_PROC=y 190CONFIG_IKCONFIG_PROC=y
166CONFIG_LOG_BUF_SHIFT=14 191CONFIG_LOG_BUF_SHIFT=14
192# CONFIG_CGROUPS is not set
193# CONFIG_GROUP_SCHED is not set
167CONFIG_SYSFS_DEPRECATED=y 194CONFIG_SYSFS_DEPRECATED=y
195CONFIG_SYSFS_DEPRECATED_V2=y
168CONFIG_RELAY=y 196CONFIG_RELAY=y
197CONFIG_NAMESPACES=y
198CONFIG_UTS_NS=y
199CONFIG_IPC_NS=y
200CONFIG_USER_NS=y
201CONFIG_PID_NS=y
169# CONFIG_BLK_DEV_INITRD is not set 202# CONFIG_BLK_DEV_INITRD is not set
170# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 203# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
171CONFIG_SYSCTL=y 204CONFIG_SYSCTL=y
@@ -177,6 +210,8 @@ CONFIG_KALLSYMS=y
177CONFIG_PRINTK=y 210CONFIG_PRINTK=y
178CONFIG_BUG=y 211CONFIG_BUG=y
179CONFIG_ELF_CORE=y 212CONFIG_ELF_CORE=y
213# CONFIG_PCSPKR_PLATFORM is not set
214# CONFIG_COMPAT_BRK is not set
180CONFIG_BASE_FULL=y 215CONFIG_BASE_FULL=y
181CONFIG_FUTEX=y 216CONFIG_FUTEX=y
182CONFIG_ANON_INODES=y 217CONFIG_ANON_INODES=y
@@ -185,14 +220,21 @@ CONFIG_SIGNALFD=y
185CONFIG_TIMERFD=y 220CONFIG_TIMERFD=y
186CONFIG_EVENTFD=y 221CONFIG_EVENTFD=y
187CONFIG_SHMEM=y 222CONFIG_SHMEM=y
223CONFIG_AIO=y
188CONFIG_VM_EVENT_COUNTERS=y 224CONFIG_VM_EVENT_COUNTERS=y
189CONFIG_SLAB=y 225CONFIG_SLAB=y
190# CONFIG_SLUB is not set 226# CONFIG_SLUB is not set
191# CONFIG_SLOB is not set 227# CONFIG_SLOB is not set
228# CONFIG_PROFILING is not set
229# CONFIG_MARKERS is not set
230CONFIG_HAVE_OPROFILE=y
231# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
232CONFIG_SLABINFO=y
192CONFIG_RT_MUTEXES=y 233CONFIG_RT_MUTEXES=y
193# CONFIG_TINY_SHMEM is not set 234# CONFIG_TINY_SHMEM is not set
194CONFIG_BASE_SMALL=0 235CONFIG_BASE_SMALL=0
195CONFIG_MODULES=y 236CONFIG_MODULES=y
237# CONFIG_MODULE_FORCE_LOAD is not set
196CONFIG_MODULE_UNLOAD=y 238CONFIG_MODULE_UNLOAD=y
197# CONFIG_MODULE_FORCE_UNLOAD is not set 239# CONFIG_MODULE_FORCE_UNLOAD is not set
198CONFIG_MODVERSIONS=y 240CONFIG_MODVERSIONS=y
@@ -203,6 +245,7 @@ CONFIG_BLOCK=y
203# CONFIG_BLK_DEV_IO_TRACE is not set 245# CONFIG_BLK_DEV_IO_TRACE is not set
204# CONFIG_LSF is not set 246# CONFIG_LSF is not set
205# CONFIG_BLK_DEV_BSG is not set 247# CONFIG_BLK_DEV_BSG is not set
248# CONFIG_BLK_DEV_INTEGRITY is not set
206 249
207# 250#
208# IO Schedulers 251# IO Schedulers
@@ -216,6 +259,8 @@ CONFIG_DEFAULT_AS=y
216# CONFIG_DEFAULT_CFQ is not set 259# CONFIG_DEFAULT_CFQ is not set
217# CONFIG_DEFAULT_NOOP is not set 260# CONFIG_DEFAULT_NOOP is not set
218CONFIG_DEFAULT_IOSCHED="anticipatory" 261CONFIG_DEFAULT_IOSCHED="anticipatory"
262CONFIG_CLASSIC_RCU=y
263# CONFIG_FREEZER is not set
219 264
220# 265#
221# Bus options (PCI, PCMCIA, EISA, ISA, TC) 266# Bus options (PCI, PCMCIA, EISA, ISA, TC)
@@ -224,29 +269,24 @@ CONFIG_HW_HAS_EISA=y
224# CONFIG_ARCH_SUPPORTS_MSI is not set 269# CONFIG_ARCH_SUPPORTS_MSI is not set
225# CONFIG_EISA is not set 270# CONFIG_EISA is not set
226CONFIG_MMU=y 271CONFIG_MMU=y
227 272CONFIG_I8253=y
228#
229# PCCARD (PCMCIA/CardBus) support
230#
231 273
232# 274#
233# Executable file formats 275# Executable file formats
234# 276#
235CONFIG_BINFMT_ELF=y 277CONFIG_BINFMT_ELF=y
278# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
279# CONFIG_HAVE_AOUT is not set
236CONFIG_BINFMT_MISC=m 280CONFIG_BINFMT_MISC=m
237CONFIG_TRAD_SIGNALS=y 281CONFIG_TRAD_SIGNALS=y
238 282
239# 283#
240# Power management options 284# Power management options
241# 285#
286CONFIG_ARCH_SUSPEND_POSSIBLE=y
242CONFIG_PM=y 287CONFIG_PM=y
243# CONFIG_PM_LEGACY is not set
244# CONFIG_PM_DEBUG is not set 288# CONFIG_PM_DEBUG is not set
245# CONFIG_SUSPEND is not set 289# CONFIG_SUSPEND is not set
246
247#
248# Networking
249#
250CONFIG_NET=y 290CONFIG_NET=y
251 291
252# 292#
@@ -259,6 +299,8 @@ CONFIG_XFRM=y
259CONFIG_XFRM_USER=m 299CONFIG_XFRM_USER=m
260# CONFIG_XFRM_SUB_POLICY is not set 300# CONFIG_XFRM_SUB_POLICY is not set
261CONFIG_XFRM_MIGRATE=y 301CONFIG_XFRM_MIGRATE=y
302# CONFIG_XFRM_STATISTICS is not set
303CONFIG_XFRM_IPCOMP=m
262CONFIG_NET_KEY=y 304CONFIG_NET_KEY=y
263CONFIG_NET_KEY_MIGRATE=y 305CONFIG_NET_KEY_MIGRATE=y
264CONFIG_INET=y 306CONFIG_INET=y
@@ -282,42 +324,13 @@ CONFIG_INET_TUNNEL=m
282CONFIG_INET_XFRM_MODE_TRANSPORT=m 324CONFIG_INET_XFRM_MODE_TRANSPORT=m
283CONFIG_INET_XFRM_MODE_TUNNEL=m 325CONFIG_INET_XFRM_MODE_TUNNEL=m
284CONFIG_INET_XFRM_MODE_BEET=m 326CONFIG_INET_XFRM_MODE_BEET=m
327# CONFIG_INET_LRO is not set
285CONFIG_INET_DIAG=y 328CONFIG_INET_DIAG=y
286CONFIG_INET_TCP_DIAG=y 329CONFIG_INET_TCP_DIAG=y
287# CONFIG_TCP_CONG_ADVANCED is not set 330# CONFIG_TCP_CONG_ADVANCED is not set
288CONFIG_TCP_CONG_CUBIC=y 331CONFIG_TCP_CONG_CUBIC=y
289CONFIG_DEFAULT_TCP_CONG="cubic" 332CONFIG_DEFAULT_TCP_CONG="cubic"
290CONFIG_TCP_MD5SIG=y 333CONFIG_TCP_MD5SIG=y
291CONFIG_IP_VS=m
292# CONFIG_IP_VS_DEBUG is not set
293CONFIG_IP_VS_TAB_BITS=12
294
295#
296# IPVS transport protocol load balancing support
297#
298CONFIG_IP_VS_PROTO_TCP=y
299CONFIG_IP_VS_PROTO_UDP=y
300CONFIG_IP_VS_PROTO_ESP=y
301CONFIG_IP_VS_PROTO_AH=y
302
303#
304# IPVS scheduler
305#
306CONFIG_IP_VS_RR=m
307CONFIG_IP_VS_WRR=m
308CONFIG_IP_VS_LC=m
309CONFIG_IP_VS_WLC=m
310CONFIG_IP_VS_LBLC=m
311CONFIG_IP_VS_LBLCR=m
312CONFIG_IP_VS_DH=m
313CONFIG_IP_VS_SH=m
314CONFIG_IP_VS_SED=m
315CONFIG_IP_VS_NQ=m
316
317#
318# IPVS application helper
319#
320CONFIG_IP_VS_FTP=m
321CONFIG_IPV6=m 334CONFIG_IPV6=m
322CONFIG_IPV6_PRIVACY=y 335CONFIG_IPV6_PRIVACY=y
323CONFIG_IPV6_ROUTER_PREF=y 336CONFIG_IPV6_ROUTER_PREF=y
@@ -334,12 +347,16 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
334CONFIG_INET6_XFRM_MODE_BEET=m 347CONFIG_INET6_XFRM_MODE_BEET=m
335CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 348CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
336CONFIG_IPV6_SIT=m 349CONFIG_IPV6_SIT=m
350CONFIG_IPV6_NDISC_NODETYPE=y
337CONFIG_IPV6_TUNNEL=m 351CONFIG_IPV6_TUNNEL=m
338CONFIG_IPV6_MULTIPLE_TABLES=y 352CONFIG_IPV6_MULTIPLE_TABLES=y
339CONFIG_IPV6_SUBTREES=y 353CONFIG_IPV6_SUBTREES=y
354CONFIG_IPV6_MROUTE=y
355CONFIG_IPV6_PIMSM_V2=y
340CONFIG_NETWORK_SECMARK=y 356CONFIG_NETWORK_SECMARK=y
341CONFIG_NETFILTER=y 357CONFIG_NETFILTER=y
342# CONFIG_NETFILTER_DEBUG is not set 358# CONFIG_NETFILTER_DEBUG is not set
359CONFIG_NETFILTER_ADVANCED=y
343 360
344# 361#
345# Core Netfilter Configuration 362# Core Netfilter Configuration
@@ -347,12 +364,12 @@ CONFIG_NETFILTER=y
347CONFIG_NETFILTER_NETLINK=m 364CONFIG_NETFILTER_NETLINK=m
348CONFIG_NETFILTER_NETLINK_QUEUE=m 365CONFIG_NETFILTER_NETLINK_QUEUE=m
349CONFIG_NETFILTER_NETLINK_LOG=m 366CONFIG_NETFILTER_NETLINK_LOG=m
350CONFIG_NF_CONNTRACK_ENABLED=m
351CONFIG_NF_CONNTRACK=m 367CONFIG_NF_CONNTRACK=m
352CONFIG_NF_CT_ACCT=y 368CONFIG_NF_CT_ACCT=y
353CONFIG_NF_CONNTRACK_MARK=y 369CONFIG_NF_CONNTRACK_MARK=y
354CONFIG_NF_CONNTRACK_SECMARK=y 370CONFIG_NF_CONNTRACK_SECMARK=y
355CONFIG_NF_CONNTRACK_EVENTS=y 371CONFIG_NF_CONNTRACK_EVENTS=y
372CONFIG_NF_CT_PROTO_DCCP=m
356CONFIG_NF_CT_PROTO_GRE=m 373CONFIG_NF_CT_PROTO_GRE=m
357CONFIG_NF_CT_PROTO_SCTP=m 374CONFIG_NF_CT_PROTO_SCTP=m
358CONFIG_NF_CT_PROTO_UDPLITE=m 375CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -366,18 +383,22 @@ CONFIG_NF_CONNTRACK_SANE=m
366CONFIG_NF_CONNTRACK_SIP=m 383CONFIG_NF_CONNTRACK_SIP=m
367CONFIG_NF_CONNTRACK_TFTP=m 384CONFIG_NF_CONNTRACK_TFTP=m
368CONFIG_NF_CT_NETLINK=m 385CONFIG_NF_CT_NETLINK=m
386CONFIG_NETFILTER_TPROXY=m
369CONFIG_NETFILTER_XTABLES=m 387CONFIG_NETFILTER_XTABLES=m
370CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 388CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
371CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 389CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
390CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
372CONFIG_NETFILTER_XT_TARGET_DSCP=m 391CONFIG_NETFILTER_XT_TARGET_DSCP=m
373CONFIG_NETFILTER_XT_TARGET_MARK=m 392CONFIG_NETFILTER_XT_TARGET_MARK=m
374CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
375CONFIG_NETFILTER_XT_TARGET_NFLOG=m 393CONFIG_NETFILTER_XT_TARGET_NFLOG=m
394CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
376CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 395CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
396CONFIG_NETFILTER_XT_TARGET_RATEEST=m
397CONFIG_NETFILTER_XT_TARGET_TPROXY=m
377CONFIG_NETFILTER_XT_TARGET_TRACE=m 398CONFIG_NETFILTER_XT_TARGET_TRACE=m
378CONFIG_NETFILTER_XT_TARGET_SECMARK=m 399CONFIG_NETFILTER_XT_TARGET_SECMARK=m
379CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
380CONFIG_NETFILTER_XT_TARGET_TCPMSS=m 400CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
401CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
381CONFIG_NETFILTER_XT_MATCH_COMMENT=m 402CONFIG_NETFILTER_XT_MATCH_COMMENT=m
382CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m 403CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
383CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m 404CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
@@ -386,39 +407,75 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
386CONFIG_NETFILTER_XT_MATCH_DCCP=m 407CONFIG_NETFILTER_XT_MATCH_DCCP=m
387CONFIG_NETFILTER_XT_MATCH_DSCP=m 408CONFIG_NETFILTER_XT_MATCH_DSCP=m
388CONFIG_NETFILTER_XT_MATCH_ESP=m 409CONFIG_NETFILTER_XT_MATCH_ESP=m
410CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
389CONFIG_NETFILTER_XT_MATCH_HELPER=m 411CONFIG_NETFILTER_XT_MATCH_HELPER=m
412CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
390CONFIG_NETFILTER_XT_MATCH_LENGTH=m 413CONFIG_NETFILTER_XT_MATCH_LENGTH=m
391CONFIG_NETFILTER_XT_MATCH_LIMIT=m 414CONFIG_NETFILTER_XT_MATCH_LIMIT=m
392CONFIG_NETFILTER_XT_MATCH_MAC=m 415CONFIG_NETFILTER_XT_MATCH_MAC=m
393CONFIG_NETFILTER_XT_MATCH_MARK=m 416CONFIG_NETFILTER_XT_MATCH_MARK=m
394CONFIG_NETFILTER_XT_MATCH_POLICY=m
395CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m 417CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
418CONFIG_NETFILTER_XT_MATCH_OWNER=m
419CONFIG_NETFILTER_XT_MATCH_POLICY=m
396CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 420CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
397CONFIG_NETFILTER_XT_MATCH_QUOTA=m 421CONFIG_NETFILTER_XT_MATCH_QUOTA=m
422CONFIG_NETFILTER_XT_MATCH_RATEEST=m
398CONFIG_NETFILTER_XT_MATCH_REALM=m 423CONFIG_NETFILTER_XT_MATCH_REALM=m
424CONFIG_NETFILTER_XT_MATCH_RECENT=m
425CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT=y
399CONFIG_NETFILTER_XT_MATCH_SCTP=m 426CONFIG_NETFILTER_XT_MATCH_SCTP=m
427CONFIG_NETFILTER_XT_MATCH_SOCKET=m
400CONFIG_NETFILTER_XT_MATCH_STATE=m 428CONFIG_NETFILTER_XT_MATCH_STATE=m
401CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 429CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
402CONFIG_NETFILTER_XT_MATCH_STRING=m 430CONFIG_NETFILTER_XT_MATCH_STRING=m
403CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 431CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
432CONFIG_NETFILTER_XT_MATCH_TIME=m
404CONFIG_NETFILTER_XT_MATCH_U32=m 433CONFIG_NETFILTER_XT_MATCH_U32=m
405CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 434CONFIG_IP_VS=m
435CONFIG_IP_VS_IPV6=y
436# CONFIG_IP_VS_DEBUG is not set
437CONFIG_IP_VS_TAB_BITS=12
438
439#
440# IPVS transport protocol load balancing support
441#
442CONFIG_IP_VS_PROTO_TCP=y
443CONFIG_IP_VS_PROTO_UDP=y
444CONFIG_IP_VS_PROTO_AH_ESP=y
445CONFIG_IP_VS_PROTO_ESP=y
446CONFIG_IP_VS_PROTO_AH=y
447
448#
449# IPVS scheduler
450#
451CONFIG_IP_VS_RR=m
452CONFIG_IP_VS_WRR=m
453CONFIG_IP_VS_LC=m
454CONFIG_IP_VS_WLC=m
455CONFIG_IP_VS_LBLC=m
456CONFIG_IP_VS_LBLCR=m
457CONFIG_IP_VS_DH=m
458CONFIG_IP_VS_SH=m
459CONFIG_IP_VS_SED=m
460CONFIG_IP_VS_NQ=m
461
462#
463# IPVS application helper
464#
465CONFIG_IP_VS_FTP=m
406 466
407# 467#
408# IP: Netfilter Configuration 468# IP: Netfilter Configuration
409# 469#
470CONFIG_NF_DEFRAG_IPV4=m
410CONFIG_NF_CONNTRACK_IPV4=m 471CONFIG_NF_CONNTRACK_IPV4=m
411CONFIG_NF_CONNTRACK_PROC_COMPAT=y 472CONFIG_NF_CONNTRACK_PROC_COMPAT=y
412CONFIG_IP_NF_QUEUE=m 473CONFIG_IP_NF_QUEUE=m
413CONFIG_IP_NF_IPTABLES=m 474CONFIG_IP_NF_IPTABLES=m
414CONFIG_IP_NF_MATCH_IPRANGE=m 475CONFIG_IP_NF_MATCH_ADDRTYPE=m
415CONFIG_IP_NF_MATCH_TOS=m
416CONFIG_IP_NF_MATCH_RECENT=m
417CONFIG_IP_NF_MATCH_ECN=m
418CONFIG_IP_NF_MATCH_AH=m 476CONFIG_IP_NF_MATCH_AH=m
477CONFIG_IP_NF_MATCH_ECN=m
419CONFIG_IP_NF_MATCH_TTL=m 478CONFIG_IP_NF_MATCH_TTL=m
420CONFIG_IP_NF_MATCH_OWNER=m
421CONFIG_IP_NF_MATCH_ADDRTYPE=m
422CONFIG_IP_NF_FILTER=m 479CONFIG_IP_NF_FILTER=m
423CONFIG_IP_NF_TARGET_REJECT=m 480CONFIG_IP_NF_TARGET_REJECT=m
424CONFIG_IP_NF_TARGET_LOG=m 481CONFIG_IP_NF_TARGET_LOG=m
@@ -426,11 +483,13 @@ CONFIG_IP_NF_TARGET_ULOG=m
426CONFIG_NF_NAT=m 483CONFIG_NF_NAT=m
427CONFIG_NF_NAT_NEEDED=y 484CONFIG_NF_NAT_NEEDED=y
428CONFIG_IP_NF_TARGET_MASQUERADE=m 485CONFIG_IP_NF_TARGET_MASQUERADE=m
429CONFIG_IP_NF_TARGET_REDIRECT=m
430CONFIG_IP_NF_TARGET_NETMAP=m 486CONFIG_IP_NF_TARGET_NETMAP=m
431CONFIG_IP_NF_TARGET_SAME=m 487CONFIG_IP_NF_TARGET_REDIRECT=m
432CONFIG_NF_NAT_SNMP_BASIC=m 488CONFIG_NF_NAT_SNMP_BASIC=m
489CONFIG_NF_NAT_PROTO_DCCP=m
433CONFIG_NF_NAT_PROTO_GRE=m 490CONFIG_NF_NAT_PROTO_GRE=m
491CONFIG_NF_NAT_PROTO_UDPLITE=m
492CONFIG_NF_NAT_PROTO_SCTP=m
434CONFIG_NF_NAT_FTP=m 493CONFIG_NF_NAT_FTP=m
435CONFIG_NF_NAT_IRC=m 494CONFIG_NF_NAT_IRC=m
436CONFIG_NF_NAT_TFTP=m 495CONFIG_NF_NAT_TFTP=m
@@ -439,32 +498,30 @@ CONFIG_NF_NAT_PPTP=m
439CONFIG_NF_NAT_H323=m 498CONFIG_NF_NAT_H323=m
440CONFIG_NF_NAT_SIP=m 499CONFIG_NF_NAT_SIP=m
441CONFIG_IP_NF_MANGLE=m 500CONFIG_IP_NF_MANGLE=m
442CONFIG_IP_NF_TARGET_TOS=m 501CONFIG_IP_NF_TARGET_CLUSTERIP=m
443CONFIG_IP_NF_TARGET_ECN=m 502CONFIG_IP_NF_TARGET_ECN=m
444CONFIG_IP_NF_TARGET_TTL=m 503CONFIG_IP_NF_TARGET_TTL=m
445CONFIG_IP_NF_TARGET_CLUSTERIP=m
446CONFIG_IP_NF_RAW=m 504CONFIG_IP_NF_RAW=m
447CONFIG_IP_NF_ARPTABLES=m 505CONFIG_IP_NF_ARPTABLES=m
448CONFIG_IP_NF_ARPFILTER=m 506CONFIG_IP_NF_ARPFILTER=m
449CONFIG_IP_NF_ARP_MANGLE=m 507CONFIG_IP_NF_ARP_MANGLE=m
450 508
451# 509#
452# IPv6: Netfilter Configuration (EXPERIMENTAL) 510# IPv6: Netfilter Configuration
453# 511#
454CONFIG_NF_CONNTRACK_IPV6=m 512CONFIG_NF_CONNTRACK_IPV6=m
455CONFIG_IP6_NF_QUEUE=m 513CONFIG_IP6_NF_QUEUE=m
456CONFIG_IP6_NF_IPTABLES=m 514CONFIG_IP6_NF_IPTABLES=m
457CONFIG_IP6_NF_MATCH_RT=m 515CONFIG_IP6_NF_MATCH_AH=m
458CONFIG_IP6_NF_MATCH_OPTS=m 516CONFIG_IP6_NF_MATCH_EUI64=m
459CONFIG_IP6_NF_MATCH_FRAG=m 517CONFIG_IP6_NF_MATCH_FRAG=m
518CONFIG_IP6_NF_MATCH_OPTS=m
460CONFIG_IP6_NF_MATCH_HL=m 519CONFIG_IP6_NF_MATCH_HL=m
461CONFIG_IP6_NF_MATCH_OWNER=m
462CONFIG_IP6_NF_MATCH_IPV6HEADER=m 520CONFIG_IP6_NF_MATCH_IPV6HEADER=m
463CONFIG_IP6_NF_MATCH_AH=m
464CONFIG_IP6_NF_MATCH_MH=m 521CONFIG_IP6_NF_MATCH_MH=m
465CONFIG_IP6_NF_MATCH_EUI64=m 522CONFIG_IP6_NF_MATCH_RT=m
466CONFIG_IP6_NF_FILTER=m
467CONFIG_IP6_NF_TARGET_LOG=m 523CONFIG_IP6_NF_TARGET_LOG=m
524CONFIG_IP6_NF_FILTER=m
468CONFIG_IP6_NF_TARGET_REJECT=m 525CONFIG_IP6_NF_TARGET_REJECT=m
469CONFIG_IP6_NF_MANGLE=m 526CONFIG_IP6_NF_MANGLE=m
470CONFIG_IP6_NF_TARGET_HL=m 527CONFIG_IP6_NF_TARGET_HL=m
@@ -479,6 +536,7 @@ CONFIG_SCTP_HMAC_MD5=y
479# CONFIG_TIPC is not set 536# CONFIG_TIPC is not set
480# CONFIG_ATM is not set 537# CONFIG_ATM is not set
481# CONFIG_BRIDGE is not set 538# CONFIG_BRIDGE is not set
539# CONFIG_NET_DSA is not set
482# CONFIG_VLAN_8021Q is not set 540# CONFIG_VLAN_8021Q is not set
483# CONFIG_DECNET is not set 541# CONFIG_DECNET is not set
484# CONFIG_LLC2 is not set 542# CONFIG_LLC2 is not set
@@ -488,12 +546,7 @@ CONFIG_SCTP_HMAC_MD5=y
488# CONFIG_LAPB is not set 546# CONFIG_LAPB is not set
489# CONFIG_ECONET is not set 547# CONFIG_ECONET is not set
490# CONFIG_WAN_ROUTER is not set 548# CONFIG_WAN_ROUTER is not set
491
492#
493# QoS and/or fair queueing
494#
495CONFIG_NET_SCHED=y 549CONFIG_NET_SCHED=y
496CONFIG_NET_SCH_FIFO=y
497 550
498# 551#
499# Queueing/Scheduling 552# Queueing/Scheduling
@@ -502,7 +555,7 @@ CONFIG_NET_SCH_CBQ=m
502CONFIG_NET_SCH_HTB=m 555CONFIG_NET_SCH_HTB=m
503CONFIG_NET_SCH_HFSC=m 556CONFIG_NET_SCH_HFSC=m
504CONFIG_NET_SCH_PRIO=m 557CONFIG_NET_SCH_PRIO=m
505CONFIG_NET_SCH_RR=m 558# CONFIG_NET_SCH_MULTIQ is not set
506CONFIG_NET_SCH_RED=m 559CONFIG_NET_SCH_RED=m
507CONFIG_NET_SCH_SFQ=m 560CONFIG_NET_SCH_SFQ=m
508CONFIG_NET_SCH_TEQL=m 561CONFIG_NET_SCH_TEQL=m
@@ -526,6 +579,7 @@ CONFIG_NET_CLS_U32=m
526# CONFIG_CLS_U32_MARK is not set 579# CONFIG_CLS_U32_MARK is not set
527CONFIG_NET_CLS_RSVP=m 580CONFIG_NET_CLS_RSVP=m
528CONFIG_NET_CLS_RSVP6=m 581CONFIG_NET_CLS_RSVP6=m
582CONFIG_NET_CLS_FLOW=m
529# CONFIG_NET_EMATCH is not set 583# CONFIG_NET_EMATCH is not set
530CONFIG_NET_CLS_ACT=y 584CONFIG_NET_CLS_ACT=y
531CONFIG_NET_ACT_POLICE=y 585CONFIG_NET_ACT_POLICE=y
@@ -533,35 +587,28 @@ CONFIG_NET_ACT_GACT=m
533CONFIG_GACT_PROB=y 587CONFIG_GACT_PROB=y
534CONFIG_NET_ACT_MIRRED=m 588CONFIG_NET_ACT_MIRRED=m
535CONFIG_NET_ACT_IPT=m 589CONFIG_NET_ACT_IPT=m
590CONFIG_NET_ACT_NAT=m
536CONFIG_NET_ACT_PEDIT=m 591CONFIG_NET_ACT_PEDIT=m
537CONFIG_NET_ACT_SIMP=m 592CONFIG_NET_ACT_SIMP=m
538CONFIG_NET_CLS_POLICE=y 593CONFIG_NET_ACT_SKBEDIT=m
539# CONFIG_NET_CLS_IND is not set 594# CONFIG_NET_CLS_IND is not set
595CONFIG_NET_SCH_FIFO=y
540 596
541# 597#
542# Network testing 598# Network testing
543# 599#
544# CONFIG_NET_PKTGEN is not set 600# CONFIG_NET_PKTGEN is not set
545# CONFIG_HAMRADIO is not set 601# CONFIG_HAMRADIO is not set
602# CONFIG_CAN is not set
546# CONFIG_IRDA is not set 603# CONFIG_IRDA is not set
547# CONFIG_BT is not set 604# CONFIG_BT is not set
548# CONFIG_AF_RXRPC is not set 605# CONFIG_AF_RXRPC is not set
606CONFIG_PHONET=m
549CONFIG_FIB_RULES=y 607CONFIG_FIB_RULES=y
550 608# CONFIG_WIRELESS is not set
551#
552# Wireless
553#
554CONFIG_CFG80211=m
555CONFIG_WIRELESS_EXT=y 609CONFIG_WIRELESS_EXT=y
556CONFIG_MAC80211=m
557# CONFIG_MAC80211_DEBUG is not set
558CONFIG_IEEE80211=m 610CONFIG_IEEE80211=m
559# CONFIG_IEEE80211_DEBUG is not set
560CONFIG_IEEE80211_CRYPT_WEP=m 611CONFIG_IEEE80211_CRYPT_WEP=m
561CONFIG_IEEE80211_CRYPT_CCMP=m
562CONFIG_IEEE80211_CRYPT_TKIP=m
563CONFIG_IEEE80211_SOFTMAC=m
564# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
565CONFIG_RFKILL=m 612CONFIG_RFKILL=m
566CONFIG_RFKILL_INPUT=m 613CONFIG_RFKILL_INPUT=m
567# CONFIG_NET_9P is not set 614# CONFIG_NET_9P is not set
@@ -588,7 +635,9 @@ CONFIG_CDROM_PKTCDVD=m
588CONFIG_CDROM_PKTCDVD_BUFFERS=8 635CONFIG_CDROM_PKTCDVD_BUFFERS=8
589# CONFIG_CDROM_PKTCDVD_WCACHE is not set 636# CONFIG_CDROM_PKTCDVD_WCACHE is not set
590CONFIG_ATA_OVER_ETH=m 637CONFIG_ATA_OVER_ETH=m
638# CONFIG_BLK_DEV_HD is not set
591# CONFIG_MISC_DEVICES is not set 639# CONFIG_MISC_DEVICES is not set
640CONFIG_HAVE_IDE=y
592# CONFIG_IDE is not set 641# CONFIG_IDE is not set
593 642
594# 643#
@@ -628,20 +677,22 @@ CONFIG_SCSI_SPI_ATTRS=m
628# CONFIG_SCSI_FC_ATTRS is not set 677# CONFIG_SCSI_FC_ATTRS is not set
629CONFIG_SCSI_ISCSI_ATTRS=m 678CONFIG_SCSI_ISCSI_ATTRS=m
630# CONFIG_SCSI_SAS_LIBSAS is not set 679# CONFIG_SCSI_SAS_LIBSAS is not set
680# CONFIG_SCSI_SRP_ATTRS is not set
631CONFIG_SCSI_LOWLEVEL=y 681CONFIG_SCSI_LOWLEVEL=y
632CONFIG_ISCSI_TCP=m 682CONFIG_ISCSI_TCP=m
633CONFIG_SGIWD93_SCSI=y 683CONFIG_SGIWD93_SCSI=y
634# CONFIG_SCSI_DEBUG is not set 684# CONFIG_SCSI_DEBUG is not set
685# CONFIG_SCSI_DH is not set
635# CONFIG_ATA is not set 686# CONFIG_ATA is not set
636# CONFIG_MD is not set 687# CONFIG_MD is not set
637CONFIG_NETDEVICES=y 688CONFIG_NETDEVICES=y
638# CONFIG_NETDEVICES_MULTIQUEUE is not set
639# CONFIG_IFB is not set 689# CONFIG_IFB is not set
640CONFIG_DUMMY=m 690CONFIG_DUMMY=m
641CONFIG_BONDING=m 691CONFIG_BONDING=m
642CONFIG_MACVLAN=m 692CONFIG_MACVLAN=m
643CONFIG_EQUALIZER=m 693CONFIG_EQUALIZER=m
644CONFIG_TUN=m 694CONFIG_TUN=m
695CONFIG_VETH=m
645CONFIG_PHYLIB=m 696CONFIG_PHYLIB=m
646 697
647# 698#
@@ -656,11 +707,21 @@ CONFIG_CICADA_PHY=m
656# CONFIG_SMSC_PHY is not set 707# CONFIG_SMSC_PHY is not set
657# CONFIG_BROADCOM_PHY is not set 708# CONFIG_BROADCOM_PHY is not set
658# CONFIG_ICPLUS_PHY is not set 709# CONFIG_ICPLUS_PHY is not set
659# CONFIG_FIXED_PHY is not set 710CONFIG_REALTEK_PHY=m
711CONFIG_MDIO_BITBANG=m
660CONFIG_NET_ETHERNET=y 712CONFIG_NET_ETHERNET=y
661# CONFIG_MII is not set 713CONFIG_MII=m
662# CONFIG_AX88796 is not set 714# CONFIG_AX88796 is not set
715CONFIG_SMC91X=m
663# CONFIG_DM9000 is not set 716# CONFIG_DM9000 is not set
717# CONFIG_IBM_NEW_EMAC_ZMII is not set
718# CONFIG_IBM_NEW_EMAC_RGMII is not set
719# CONFIG_IBM_NEW_EMAC_TAH is not set
720# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
721# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
722# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
723# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
724# CONFIG_B44 is not set
664CONFIG_SGISEEQ=y 725CONFIG_SGISEEQ=y
665# CONFIG_NETDEV_1000 is not set 726# CONFIG_NETDEV_1000 is not set
666# CONFIG_NETDEV_10000 is not set 727# CONFIG_NETDEV_10000 is not set
@@ -672,12 +733,12 @@ CONFIG_WLAN_PRE80211=y
672CONFIG_STRIP=m 733CONFIG_STRIP=m
673CONFIG_WLAN_80211=y 734CONFIG_WLAN_80211=y
674# CONFIG_LIBERTAS is not set 735# CONFIG_LIBERTAS is not set
736# CONFIG_IWLWIFI_LEDS is not set
675CONFIG_HOSTAP=m 737CONFIG_HOSTAP=m
676# CONFIG_HOSTAP_FIRMWARE is not set 738# CONFIG_HOSTAP_FIRMWARE is not set
677# CONFIG_WAN is not set 739# CONFIG_WAN is not set
678# CONFIG_PPP is not set 740# CONFIG_PPP is not set
679# CONFIG_SLIP is not set 741# CONFIG_SLIP is not set
680# CONFIG_SHAPER is not set
681# CONFIG_NETCONSOLE is not set 742# CONFIG_NETCONSOLE is not set
682# CONFIG_NETPOLL is not set 743# CONFIG_NETPOLL is not set
683# CONFIG_NET_POLL_CONTROLLER is not set 744# CONFIG_NET_POLL_CONTROLLER is not set
@@ -699,7 +760,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y
699CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 760CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
700CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 761CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
701# CONFIG_INPUT_JOYDEV is not set 762# CONFIG_INPUT_JOYDEV is not set
702# CONFIG_INPUT_TSDEV is not set
703# CONFIG_INPUT_EVDEV is not set 763# CONFIG_INPUT_EVDEV is not set
704# CONFIG_INPUT_EVBUG is not set 764# CONFIG_INPUT_EVBUG is not set
705 765
@@ -720,6 +780,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
720# CONFIG_MOUSE_PS2_SYNAPTICS is not set 780# CONFIG_MOUSE_PS2_SYNAPTICS is not set
721# CONFIG_MOUSE_PS2_LIFEBOOK is not set 781# CONFIG_MOUSE_PS2_LIFEBOOK is not set
722CONFIG_MOUSE_PS2_TRACKPOINT=y 782CONFIG_MOUSE_PS2_TRACKPOINT=y
783# CONFIG_MOUSE_PS2_ELANTECH is not set
723# CONFIG_MOUSE_PS2_TOUCHKIT is not set 784# CONFIG_MOUSE_PS2_TOUCHKIT is not set
724CONFIG_MOUSE_SERIAL=m 785CONFIG_MOUSE_SERIAL=m
725# CONFIG_MOUSE_VSXXXAA is not set 786# CONFIG_MOUSE_VSXXXAA is not set
@@ -742,9 +803,11 @@ CONFIG_SERIO_RAW=m
742# Character devices 803# Character devices
743# 804#
744CONFIG_VT=y 805CONFIG_VT=y
806CONFIG_CONSOLE_TRANSLATIONS=y
745CONFIG_VT_CONSOLE=y 807CONFIG_VT_CONSOLE=y
746CONFIG_HW_CONSOLE=y 808CONFIG_HW_CONSOLE=y
747CONFIG_VT_HW_CONSOLE_BINDING=y 809CONFIG_VT_HW_CONSOLE_BINDING=y
810CONFIG_DEVKMEM=y
748# CONFIG_SERIAL_NONSTANDARD is not set 811# CONFIG_SERIAL_NONSTANDARD is not set
749 812
750# 813#
@@ -761,6 +824,17 @@ CONFIG_UNIX98_PTYS=y
761CONFIG_LEGACY_PTYS=y 824CONFIG_LEGACY_PTYS=y
762CONFIG_LEGACY_PTY_COUNT=256 825CONFIG_LEGACY_PTY_COUNT=256
763# CONFIG_IPMI_HANDLER is not set 826# CONFIG_IPMI_HANDLER is not set
827# CONFIG_HW_RANDOM is not set
828# CONFIG_R3964 is not set
829CONFIG_RAW_DRIVER=m
830CONFIG_MAX_RAW_DEVS=256
831# CONFIG_TCG_TPM is not set
832# CONFIG_I2C is not set
833# CONFIG_SPI is not set
834# CONFIG_W1 is not set
835# CONFIG_POWER_SUPPLY is not set
836# CONFIG_HWMON is not set
837CONFIG_THERMAL=m
764CONFIG_WATCHDOG=y 838CONFIG_WATCHDOG=y
765# CONFIG_WATCHDOG_NOWAYOUT is not set 839# CONFIG_WATCHDOG_NOWAYOUT is not set
766 840
@@ -769,47 +843,50 @@ CONFIG_WATCHDOG=y
769# 843#
770# CONFIG_SOFT_WATCHDOG is not set 844# CONFIG_SOFT_WATCHDOG is not set
771CONFIG_INDYDOG=m 845CONFIG_INDYDOG=m
772# CONFIG_HW_RANDOM is not set 846CONFIG_SSB_POSSIBLE=y
773# CONFIG_RTC is not set
774# CONFIG_R3964 is not set
775CONFIG_RAW_DRIVER=m
776CONFIG_MAX_RAW_DEVS=256
777# CONFIG_TCG_TPM is not set
778# CONFIG_I2C is not set
779 847
780# 848#
781# SPI support 849# Sonics Silicon Backplane
782# 850#
783# CONFIG_SPI is not set 851# CONFIG_SSB is not set
784# CONFIG_SPI_MASTER is not set
785# CONFIG_W1 is not set
786# CONFIG_POWER_SUPPLY is not set
787# CONFIG_HWMON is not set
788 852
789# 853#
790# Multifunction device drivers 854# Multifunction device drivers
791# 855#
856# CONFIG_MFD_CORE is not set
792# CONFIG_MFD_SM501 is not set 857# CONFIG_MFD_SM501 is not set
858# CONFIG_HTC_PASIC3 is not set
859# CONFIG_MFD_TMIO is not set
860# CONFIG_REGULATOR is not set
793 861
794# 862#
795# Multimedia devices 863# Multimedia devices
796# 864#
865
866#
867# Multimedia core support
868#
797# CONFIG_VIDEO_DEV is not set 869# CONFIG_VIDEO_DEV is not set
798# CONFIG_DVB_CORE is not set 870# CONFIG_DVB_CORE is not set
871# CONFIG_VIDEO_MEDIA is not set
872
873#
874# Multimedia drivers
875#
799# CONFIG_DAB is not set 876# CONFIG_DAB is not set
800 877
801# 878#
802# Graphics support 879# Graphics support
803# 880#
881# CONFIG_VGASTATE is not set
882# CONFIG_VIDEO_OUTPUT_CONTROL is not set
883# CONFIG_FB is not set
804# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 884# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
805 885
806# 886#
807# Display device support 887# Display device support
808# 888#
809# CONFIG_DISPLAY_SUPPORT is not set 889# CONFIG_DISPLAY_SUPPORT is not set
810# CONFIG_VGASTATE is not set
811# CONFIG_VIDEO_OUTPUT_CONTROL is not set
812# CONFIG_FB is not set
813 890
814# 891#
815# Console display driver support 892# Console display driver support
@@ -823,48 +900,77 @@ CONFIG_LOGO=y
823# CONFIG_LOGO_LINUX_VGA16 is not set 900# CONFIG_LOGO_LINUX_VGA16 is not set
824# CONFIG_LOGO_LINUX_CLUT224 is not set 901# CONFIG_LOGO_LINUX_CLUT224 is not set
825CONFIG_LOGO_SGI_CLUT224=y 902CONFIG_LOGO_SGI_CLUT224=y
826
827#
828# Sound
829#
830# CONFIG_SOUND is not set 903# CONFIG_SOUND is not set
831CONFIG_HID_SUPPORT=y 904CONFIG_HID_SUPPORT=y
832CONFIG_HID=y 905CONFIG_HID=y
833# CONFIG_HID_DEBUG is not set 906# CONFIG_HID_DEBUG is not set
907CONFIG_HIDRAW=y
908CONFIG_HID_PID=y
909
910#
911# Special HID drivers
912#
913CONFIG_HID_COMPAT=y
834CONFIG_USB_SUPPORT=y 914CONFIG_USB_SUPPORT=y
835# CONFIG_USB_ARCH_HAS_HCD is not set 915# CONFIG_USB_ARCH_HAS_HCD is not set
836# CONFIG_USB_ARCH_HAS_OHCI is not set 916# CONFIG_USB_ARCH_HAS_OHCI is not set
837# CONFIG_USB_ARCH_HAS_EHCI is not set 917# CONFIG_USB_ARCH_HAS_EHCI is not set
918# CONFIG_USB_OTG_WHITELIST is not set
919# CONFIG_USB_OTG_BLACKLIST_HUB is not set
838 920
839# 921#
840# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 922# Enable Host or Gadget support to see Inventra options
841# 923#
842 924
843# 925#
844# USB Gadget Support 926# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed;
845# 927#
846# CONFIG_USB_GADGET is not set 928# CONFIG_USB_GADGET is not set
847# CONFIG_MMC is not set 929# CONFIG_MMC is not set
930# CONFIG_MEMSTICK is not set
848# CONFIG_NEW_LEDS is not set 931# CONFIG_NEW_LEDS is not set
849# CONFIG_RTC_CLASS is not set 932# CONFIG_ACCESSIBILITY is not set
933CONFIG_RTC_LIB=y
934CONFIG_RTC_CLASS=y
935CONFIG_RTC_HCTOSYS=y
936CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
937# CONFIG_RTC_DEBUG is not set
850 938
851# 939#
852# DMA Engine support 940# RTC interfaces
853# 941#
854# CONFIG_DMA_ENGINE is not set 942CONFIG_RTC_INTF_SYSFS=y
943CONFIG_RTC_INTF_PROC=y
944CONFIG_RTC_INTF_DEV=y
945CONFIG_RTC_INTF_DEV_UIE_EMUL=y
946# CONFIG_RTC_DRV_TEST is not set
855 947
856# 948#
857# DMA Clients 949# SPI RTC drivers
858# 950#
859 951
860# 952#
861# DMA Devices 953# Platform RTC drivers
862# 954#
955# CONFIG_RTC_DRV_CMOS is not set
956CONFIG_RTC_DRV_DS1286=y
957# CONFIG_RTC_DRV_DS1511 is not set
958# CONFIG_RTC_DRV_DS1553 is not set
959# CONFIG_RTC_DRV_DS1742 is not set
960# CONFIG_RTC_DRV_STK17TA8 is not set
961# CONFIG_RTC_DRV_M48T86 is not set
962# CONFIG_RTC_DRV_M48T35 is not set
963# CONFIG_RTC_DRV_M48T59 is not set
964# CONFIG_RTC_DRV_BQ4802 is not set
965# CONFIG_RTC_DRV_V3020 is not set
863 966
864# 967#
865# Userspace I/O 968# on-CPU RTC drivers
866# 969#
970# CONFIG_DMADEVICES is not set
867# CONFIG_UIO is not set 971# CONFIG_UIO is not set
972# CONFIG_STAGING is not set
973CONFIG_STAGING_EXCLUDE_BUILD=y
868 974
869# 975#
870# File systems 976# File systems
@@ -876,29 +982,33 @@ CONFIG_EXT3_FS=y
876CONFIG_EXT3_FS_XATTR=y 982CONFIG_EXT3_FS_XATTR=y
877CONFIG_EXT3_FS_POSIX_ACL=y 983CONFIG_EXT3_FS_POSIX_ACL=y
878CONFIG_EXT3_FS_SECURITY=y 984CONFIG_EXT3_FS_SECURITY=y
879# CONFIG_EXT4DEV_FS is not set 985CONFIG_EXT4_FS=m
986CONFIG_EXT4DEV_COMPAT=y
987CONFIG_EXT4_FS_XATTR=y
988CONFIG_EXT4_FS_POSIX_ACL=y
989CONFIG_EXT4_FS_SECURITY=y
880CONFIG_JBD=y 990CONFIG_JBD=y
881# CONFIG_JBD_DEBUG is not set 991CONFIG_JBD2=m
882CONFIG_FS_MBCACHE=y 992CONFIG_FS_MBCACHE=y
883# CONFIG_REISERFS_FS is not set 993# CONFIG_REISERFS_FS is not set
884# CONFIG_JFS_FS is not set 994# CONFIG_JFS_FS is not set
885CONFIG_FS_POSIX_ACL=y 995CONFIG_FS_POSIX_ACL=y
996CONFIG_FILE_LOCKING=y
886CONFIG_XFS_FS=m 997CONFIG_XFS_FS=m
887CONFIG_XFS_QUOTA=y 998CONFIG_XFS_QUOTA=y
888CONFIG_XFS_SECURITY=y
889# CONFIG_XFS_POSIX_ACL is not set 999# CONFIG_XFS_POSIX_ACL is not set
890# CONFIG_XFS_RT is not set 1000# CONFIG_XFS_RT is not set
891# CONFIG_GFS2_FS is not set 1001# CONFIG_XFS_DEBUG is not set
892# CONFIG_OCFS2_FS is not set 1002# CONFIG_OCFS2_FS is not set
893CONFIG_MINIX_FS=m 1003CONFIG_DNOTIFY=y
894# CONFIG_ROMFS_FS is not set
895CONFIG_INOTIFY=y 1004CONFIG_INOTIFY=y
896CONFIG_INOTIFY_USER=y 1005CONFIG_INOTIFY_USER=y
897CONFIG_QUOTA=y 1006CONFIG_QUOTA=y
1007CONFIG_QUOTA_NETLINK_INTERFACE=y
1008# CONFIG_PRINT_QUOTA_WARNING is not set
898# CONFIG_QFMT_V1 is not set 1009# CONFIG_QFMT_V1 is not set
899CONFIG_QFMT_V2=m 1010CONFIG_QFMT_V2=m
900CONFIG_QUOTACTL=y 1011CONFIG_QUOTACTL=y
901CONFIG_DNOTIFY=y
902CONFIG_AUTOFS_FS=m 1012CONFIG_AUTOFS_FS=m
903CONFIG_AUTOFS4_FS=m 1013CONFIG_AUTOFS4_FS=m
904CONFIG_FUSE_FS=m 1014CONFIG_FUSE_FS=m
@@ -929,11 +1039,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
929CONFIG_PROC_FS=y 1039CONFIG_PROC_FS=y
930CONFIG_PROC_KCORE=y 1040CONFIG_PROC_KCORE=y
931CONFIG_PROC_SYSCTL=y 1041CONFIG_PROC_SYSCTL=y
1042CONFIG_PROC_PAGE_MONITOR=y
932CONFIG_SYSFS=y 1043CONFIG_SYSFS=y
933CONFIG_TMPFS=y 1044CONFIG_TMPFS=y
934CONFIG_TMPFS_POSIX_ACL=y 1045CONFIG_TMPFS_POSIX_ACL=y
935# CONFIG_HUGETLB_PAGE is not set 1046# CONFIG_HUGETLB_PAGE is not set
936CONFIG_RAMFS=y
937CONFIG_CONFIGFS_FS=m 1047CONFIG_CONFIGFS_FS=m
938 1048
939# 1049#
@@ -949,27 +1059,25 @@ CONFIG_CONFIGFS_FS=m
949CONFIG_EFS_FS=m 1059CONFIG_EFS_FS=m
950# CONFIG_CRAMFS is not set 1060# CONFIG_CRAMFS is not set
951# CONFIG_VXFS_FS is not set 1061# CONFIG_VXFS_FS is not set
1062CONFIG_MINIX_FS=m
1063CONFIG_OMFS_FS=m
952# CONFIG_HPFS_FS is not set 1064# CONFIG_HPFS_FS is not set
953# CONFIG_QNX4FS_FS is not set 1065# CONFIG_QNX4FS_FS is not set
1066# CONFIG_ROMFS_FS is not set
954# CONFIG_SYSV_FS is not set 1067# CONFIG_SYSV_FS is not set
955CONFIG_UFS_FS=m 1068CONFIG_UFS_FS=m
956# CONFIG_UFS_FS_WRITE is not set 1069# CONFIG_UFS_FS_WRITE is not set
957# CONFIG_UFS_DEBUG is not set 1070# CONFIG_UFS_DEBUG is not set
958 1071CONFIG_NETWORK_FILESYSTEMS=y
959#
960# Network File Systems
961#
962CONFIG_NFS_FS=m 1072CONFIG_NFS_FS=m
963CONFIG_NFS_V3=y 1073CONFIG_NFS_V3=y
964CONFIG_NFS_V3_ACL=y 1074CONFIG_NFS_V3_ACL=y
965# CONFIG_NFS_V4 is not set 1075# CONFIG_NFS_V4 is not set
966# CONFIG_NFS_DIRECTIO is not set
967CONFIG_NFSD=m 1076CONFIG_NFSD=m
968CONFIG_NFSD_V2_ACL=y 1077CONFIG_NFSD_V2_ACL=y
969CONFIG_NFSD_V3=y 1078CONFIG_NFSD_V3=y
970CONFIG_NFSD_V3_ACL=y 1079CONFIG_NFSD_V3_ACL=y
971# CONFIG_NFSD_V4 is not set 1080# CONFIG_NFSD_V4 is not set
972CONFIG_NFSD_TCP=y
973CONFIG_LOCKD=m 1081CONFIG_LOCKD=m
974CONFIG_LOCKD_V4=y 1082CONFIG_LOCKD_V4=y
975CONFIG_EXPORTFS=m 1083CONFIG_EXPORTFS=m
@@ -977,7 +1085,7 @@ CONFIG_NFS_ACL_SUPPORT=m
977CONFIG_NFS_COMMON=y 1085CONFIG_NFS_COMMON=y
978CONFIG_SUNRPC=m 1086CONFIG_SUNRPC=m
979CONFIG_SUNRPC_GSS=m 1087CONFIG_SUNRPC_GSS=m
980# CONFIG_SUNRPC_BIND34 is not set 1088# CONFIG_SUNRPC_REGISTER_V4 is not set
981CONFIG_RPCSEC_GSS_KRB5=m 1089CONFIG_RPCSEC_GSS_KRB5=m
982# CONFIG_RPCSEC_GSS_SPKM3 is not set 1090# CONFIG_RPCSEC_GSS_SPKM3 is not set
983CONFIG_SMB_FS=m 1091CONFIG_SMB_FS=m
@@ -986,12 +1094,12 @@ CONFIG_SMB_NLS_REMOTE="cp437"
986CONFIG_CIFS=m 1094CONFIG_CIFS=m
987# CONFIG_CIFS_STATS is not set 1095# CONFIG_CIFS_STATS is not set
988# CONFIG_CIFS_WEAK_PW_HASH is not set 1096# CONFIG_CIFS_WEAK_PW_HASH is not set
1097CONFIG_CIFS_UPCALL=y
989# CONFIG_CIFS_XATTR is not set 1098# CONFIG_CIFS_XATTR is not set
990# CONFIG_CIFS_DEBUG2 is not set 1099# CONFIG_CIFS_DEBUG2 is not set
991# CONFIG_CIFS_EXPERIMENTAL is not set 1100# CONFIG_CIFS_EXPERIMENTAL is not set
992# CONFIG_NCP_FS is not set 1101# CONFIG_NCP_FS is not set
993CONFIG_CODA_FS=m 1102CONFIG_CODA_FS=m
994# CONFIG_CODA_FS_OLD_API is not set
995# CONFIG_AFS_FS is not set 1103# CONFIG_AFS_FS is not set
996 1104
997# 1105#
@@ -1015,10 +1123,6 @@ CONFIG_SGI_PARTITION=y
1015# CONFIG_KARMA_PARTITION is not set 1123# CONFIG_KARMA_PARTITION is not set
1016# CONFIG_EFI_PARTITION is not set 1124# CONFIG_EFI_PARTITION is not set
1017# CONFIG_SYSV68_PARTITION is not set 1125# CONFIG_SYSV68_PARTITION is not set
1018
1019#
1020# Native Language Support
1021#
1022CONFIG_NLS=m 1126CONFIG_NLS=m
1023CONFIG_NLS_DEFAULT="iso8859-1" 1127CONFIG_NLS_DEFAULT="iso8859-1"
1024CONFIG_NLS_CODEPAGE_437=m 1128CONFIG_NLS_CODEPAGE_437=m
@@ -1059,30 +1163,32 @@ CONFIG_NLS_ISO8859_15=m
1059CONFIG_NLS_KOI8_R=m 1163CONFIG_NLS_KOI8_R=m
1060CONFIG_NLS_KOI8_U=m 1164CONFIG_NLS_KOI8_U=m
1061CONFIG_NLS_UTF8=m 1165CONFIG_NLS_UTF8=m
1062
1063#
1064# Distributed Lock Manager
1065#
1066CONFIG_DLM=m 1166CONFIG_DLM=m
1067# CONFIG_DLM_DEBUG is not set 1167# CONFIG_DLM_DEBUG is not set
1068 1168
1069# 1169#
1070# Profiling support
1071#
1072# CONFIG_PROFILING is not set
1073
1074#
1075# Kernel hacking 1170# Kernel hacking
1076# 1171#
1077CONFIG_TRACE_IRQFLAGS_SUPPORT=y 1172CONFIG_TRACE_IRQFLAGS_SUPPORT=y
1078# CONFIG_PRINTK_TIME is not set 1173# CONFIG_PRINTK_TIME is not set
1174CONFIG_ENABLE_WARN_DEPRECATED=y
1079CONFIG_ENABLE_MUST_CHECK=y 1175CONFIG_ENABLE_MUST_CHECK=y
1176CONFIG_FRAME_WARN=1024
1080# CONFIG_MAGIC_SYSRQ is not set 1177# CONFIG_MAGIC_SYSRQ is not set
1081# CONFIG_UNUSED_SYMBOLS is not set 1178# CONFIG_UNUSED_SYMBOLS is not set
1082# CONFIG_DEBUG_FS is not set 1179# CONFIG_DEBUG_FS is not set
1083# CONFIG_HEADERS_CHECK is not set 1180# CONFIG_HEADERS_CHECK is not set
1084# CONFIG_DEBUG_KERNEL is not set 1181# CONFIG_DEBUG_KERNEL is not set
1085CONFIG_CROSSCOMPILE=y 1182CONFIG_DEBUG_MEMORY_INIT=y
1183# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1184# CONFIG_SYSCTL_SYSCALL_CHECK is not set
1185
1186#
1187# Tracers
1188#
1189CONFIG_DYNAMIC_PRINTK_DEBUG=y
1190# CONFIG_SAMPLES is not set
1191CONFIG_HAVE_ARCH_KGDB=y
1086CONFIG_CMDLINE="" 1192CONFIG_CMDLINE=""
1087 1193
1088# 1194#
@@ -1091,46 +1197,97 @@ CONFIG_CMDLINE=""
1091CONFIG_KEYS=y 1197CONFIG_KEYS=y
1092CONFIG_KEYS_DEBUG_PROC_KEYS=y 1198CONFIG_KEYS_DEBUG_PROC_KEYS=y
1093# CONFIG_SECURITY is not set 1199# CONFIG_SECURITY is not set
1200# CONFIG_SECURITYFS is not set
1201CONFIG_SECURITY_FILE_CAPABILITIES=y
1094CONFIG_CRYPTO=y 1202CONFIG_CRYPTO=y
1203
1204#
1205# Crypto core or helper
1206#
1207CONFIG_CRYPTO_FIPS=y
1095CONFIG_CRYPTO_ALGAPI=y 1208CONFIG_CRYPTO_ALGAPI=y
1096CONFIG_CRYPTO_ABLKCIPHER=m 1209CONFIG_CRYPTO_AEAD=y
1097CONFIG_CRYPTO_BLKCIPHER=m 1210CONFIG_CRYPTO_BLKCIPHER=y
1098CONFIG_CRYPTO_HASH=y 1211CONFIG_CRYPTO_HASH=y
1212CONFIG_CRYPTO_RNG=y
1099CONFIG_CRYPTO_MANAGER=y 1213CONFIG_CRYPTO_MANAGER=y
1214CONFIG_CRYPTO_GF128MUL=m
1215CONFIG_CRYPTO_NULL=m
1216CONFIG_CRYPTO_CRYPTD=m
1217CONFIG_CRYPTO_AUTHENC=m
1218# CONFIG_CRYPTO_TEST is not set
1219
1220#
1221# Authenticated Encryption with Associated Data
1222#
1223CONFIG_CRYPTO_CCM=m
1224CONFIG_CRYPTO_GCM=m
1225CONFIG_CRYPTO_SEQIV=m
1226
1227#
1228# Block modes
1229#
1230CONFIG_CRYPTO_CBC=m
1231CONFIG_CRYPTO_CTR=m
1232CONFIG_CRYPTO_CTS=m
1233CONFIG_CRYPTO_ECB=m
1234CONFIG_CRYPTO_LRW=m
1235CONFIG_CRYPTO_PCBC=m
1236CONFIG_CRYPTO_XTS=m
1237
1238#
1239# Hash modes
1240#
1100CONFIG_CRYPTO_HMAC=y 1241CONFIG_CRYPTO_HMAC=y
1101CONFIG_CRYPTO_XCBC=m 1242CONFIG_CRYPTO_XCBC=m
1102CONFIG_CRYPTO_NULL=m 1243
1244#
1245# Digest
1246#
1247CONFIG_CRYPTO_CRC32C=m
1103CONFIG_CRYPTO_MD4=m 1248CONFIG_CRYPTO_MD4=m
1104CONFIG_CRYPTO_MD5=y 1249CONFIG_CRYPTO_MD5=y
1250CONFIG_CRYPTO_MICHAEL_MIC=m
1251CONFIG_CRYPTO_RMD128=m
1252CONFIG_CRYPTO_RMD160=m
1253CONFIG_CRYPTO_RMD256=m
1254CONFIG_CRYPTO_RMD320=m
1105CONFIG_CRYPTO_SHA1=m 1255CONFIG_CRYPTO_SHA1=m
1106CONFIG_CRYPTO_SHA256=m 1256CONFIG_CRYPTO_SHA256=m
1107CONFIG_CRYPTO_SHA512=m 1257CONFIG_CRYPTO_SHA512=m
1108CONFIG_CRYPTO_WP512=m
1109CONFIG_CRYPTO_TGR192=m 1258CONFIG_CRYPTO_TGR192=m
1110CONFIG_CRYPTO_GF128MUL=m 1259CONFIG_CRYPTO_WP512=m
1111CONFIG_CRYPTO_ECB=m 1260
1112CONFIG_CRYPTO_CBC=m 1261#
1113CONFIG_CRYPTO_PCBC=m 1262# Ciphers
1114CONFIG_CRYPTO_LRW=m 1263#
1115CONFIG_CRYPTO_CRYPTD=m
1116CONFIG_CRYPTO_DES=m
1117CONFIG_CRYPTO_FCRYPT=m
1118CONFIG_CRYPTO_BLOWFISH=m
1119CONFIG_CRYPTO_TWOFISH=m
1120CONFIG_CRYPTO_TWOFISH_COMMON=m
1121CONFIG_CRYPTO_SERPENT=m
1122CONFIG_CRYPTO_AES=m 1264CONFIG_CRYPTO_AES=m
1265CONFIG_CRYPTO_ANUBIS=m
1266CONFIG_CRYPTO_ARC4=m
1267CONFIG_CRYPTO_BLOWFISH=m
1268CONFIG_CRYPTO_CAMELLIA=m
1123CONFIG_CRYPTO_CAST5=m 1269CONFIG_CRYPTO_CAST5=m
1124CONFIG_CRYPTO_CAST6=m 1270CONFIG_CRYPTO_CAST6=m
1125CONFIG_CRYPTO_TEA=m 1271CONFIG_CRYPTO_DES=m
1126CONFIG_CRYPTO_ARC4=m 1272CONFIG_CRYPTO_FCRYPT=m
1127CONFIG_CRYPTO_KHAZAD=m 1273CONFIG_CRYPTO_KHAZAD=m
1128CONFIG_CRYPTO_ANUBIS=m 1274CONFIG_CRYPTO_SALSA20=m
1275CONFIG_CRYPTO_SEED=m
1276CONFIG_CRYPTO_SERPENT=m
1277CONFIG_CRYPTO_TEA=m
1278CONFIG_CRYPTO_TWOFISH=m
1279CONFIG_CRYPTO_TWOFISH_COMMON=m
1280
1281#
1282# Compression
1283#
1129CONFIG_CRYPTO_DEFLATE=m 1284CONFIG_CRYPTO_DEFLATE=m
1130CONFIG_CRYPTO_MICHAEL_MIC=m 1285CONFIG_CRYPTO_LZO=m
1131CONFIG_CRYPTO_CRC32C=m 1286
1132CONFIG_CRYPTO_CAMELLIA=m 1287#
1133# CONFIG_CRYPTO_TEST is not set 1288# Random Number Generation
1289#
1290CONFIG_CRYPTO_ANSI_CPRNG=m
1134# CONFIG_CRYPTO_HW is not set 1291# CONFIG_CRYPTO_HW is not set
1135 1292
1136# 1293#
@@ -1139,12 +1296,15 @@ CONFIG_CRYPTO_CAMELLIA=m
1139CONFIG_BITREVERSE=m 1296CONFIG_BITREVERSE=m
1140# CONFIG_CRC_CCITT is not set 1297# CONFIG_CRC_CCITT is not set
1141CONFIG_CRC16=m 1298CONFIG_CRC16=m
1142# CONFIG_CRC_ITU_T is not set 1299CONFIG_CRC_T10DIF=m
1300CONFIG_CRC_ITU_T=m
1143CONFIG_CRC32=m 1301CONFIG_CRC32=m
1144# CONFIG_CRC7 is not set 1302# CONFIG_CRC7 is not set
1145CONFIG_LIBCRC32C=m 1303CONFIG_LIBCRC32C=m
1146CONFIG_ZLIB_INFLATE=m 1304CONFIG_ZLIB_INFLATE=m
1147CONFIG_ZLIB_DEFLATE=m 1305CONFIG_ZLIB_DEFLATE=m
1306CONFIG_LZO_COMPRESS=m
1307CONFIG_LZO_DECOMPRESS=m
1148CONFIG_TEXTSEARCH=y 1308CONFIG_TEXTSEARCH=y
1149CONFIG_TEXTSEARCH_KMP=m 1309CONFIG_TEXTSEARCH_KMP=m
1150CONFIG_TEXTSEARCH_BM=m 1310CONFIG_TEXTSEARCH_BM=m
diff --git a/arch/mips/configs/malta_defconfig b/arch/mips/configs/malta_defconfig
index 74daa0cf87e6..1ecdd3b65dc7 100644
--- a/arch/mips/configs/malta_defconfig
+++ b/arch/mips/configs/malta_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.23-rc2 3# Linux kernel version: 2.6.28-rc6
4# Tue Aug 7 12:59:29 2007 4# Mon Dec 1 08:08:19 2008
5# 5#
6CONFIG_MIPS=y 6CONFIG_MIPS=y
7 7
@@ -11,20 +11,25 @@ CONFIG_MIPS=y
11CONFIG_ZONE_DMA=y 11CONFIG_ZONE_DMA=y
12# CONFIG_MACH_ALCHEMY is not set 12# CONFIG_MACH_ALCHEMY is not set
13# CONFIG_BASLER_EXCITE is not set 13# CONFIG_BASLER_EXCITE is not set
14# CONFIG_BCM47XX is not set
14# CONFIG_MIPS_COBALT is not set 15# CONFIG_MIPS_COBALT is not set
15# CONFIG_MACH_DECSTATION is not set 16# CONFIG_MACH_DECSTATION is not set
16# CONFIG_MACH_JAZZ is not set 17# CONFIG_MACH_JAZZ is not set
18# CONFIG_LASAT is not set
17# CONFIG_LEMOTE_FULONG is not set 19# CONFIG_LEMOTE_FULONG is not set
18CONFIG_MIPS_MALTA=y 20CONFIG_MIPS_MALTA=y
19# CONFIG_MIPS_SIM is not set 21# CONFIG_MIPS_SIM is not set
20# CONFIG_MARKEINS is not set 22# CONFIG_MACH_EMMA is not set
21# CONFIG_MACH_VR41XX is not set 23# CONFIG_MACH_VR41XX is not set
24# CONFIG_NXP_STB220 is not set
25# CONFIG_NXP_STB225 is not set
22# CONFIG_PNX8550_JBS is not set 26# CONFIG_PNX8550_JBS is not set
23# CONFIG_PNX8550_STB810 is not set 27# CONFIG_PNX8550_STB810 is not set
24# CONFIG_PMC_MSP is not set 28# CONFIG_PMC_MSP is not set
25# CONFIG_PMC_YOSEMITE is not set 29# CONFIG_PMC_YOSEMITE is not set
26# CONFIG_SGI_IP22 is not set 30# CONFIG_SGI_IP22 is not set
27# CONFIG_SGI_IP27 is not set 31# CONFIG_SGI_IP27 is not set
32# CONFIG_SGI_IP28 is not set
28# CONFIG_SGI_IP32 is not set 33# CONFIG_SGI_IP32 is not set
29# CONFIG_SIBYTE_CRHINE is not set 34# CONFIG_SIBYTE_CRHINE is not set
30# CONFIG_SIBYTE_CARMEL is not set 35# CONFIG_SIBYTE_CARMEL is not set
@@ -35,13 +40,14 @@ CONFIG_MIPS_MALTA=y
35# CONFIG_SIBYTE_SENTOSA is not set 40# CONFIG_SIBYTE_SENTOSA is not set
36# CONFIG_SIBYTE_BIGSUR is not set 41# CONFIG_SIBYTE_BIGSUR is not set
37# CONFIG_SNI_RM is not set 42# CONFIG_SNI_RM is not set
38# CONFIG_TOSHIBA_JMR3927 is not set 43# CONFIG_MACH_TX39XX is not set
39# CONFIG_TOSHIBA_RBTX4927 is not set 44# CONFIG_MACH_TX49XX is not set
40# CONFIG_TOSHIBA_RBTX4938 is not set 45# CONFIG_MIKROTIK_RB532 is not set
41# CONFIG_WR_PPMC is not set 46# CONFIG_WR_PPMC is not set
42CONFIG_RWSEM_GENERIC_SPINLOCK=y 47CONFIG_RWSEM_GENERIC_SPINLOCK=y
43# CONFIG_ARCH_HAS_ILOG2_U32 is not set 48# CONFIG_ARCH_HAS_ILOG2_U32 is not set
44# CONFIG_ARCH_HAS_ILOG2_U64 is not set 49# CONFIG_ARCH_HAS_ILOG2_U64 is not set
50CONFIG_ARCH_SUPPORTS_OPROFILE=y
45CONFIG_GENERIC_FIND_NEXT_BIT=y 51CONFIG_GENERIC_FIND_NEXT_BIT=y
46CONFIG_GENERIC_HWEIGHT=y 52CONFIG_GENERIC_HWEIGHT=y
47CONFIG_GENERIC_CALIBRATE_DELAY=y 53CONFIG_GENERIC_CALIBRATE_DELAY=y
@@ -51,21 +57,26 @@ CONFIG_GENERIC_CMOS_UPDATE=y
51CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 57CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
52# CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set 58# CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set
53CONFIG_ARCH_MAY_HAVE_PC_FDC=y 59CONFIG_ARCH_MAY_HAVE_PC_FDC=y
60CONFIG_BOOT_RAW=y
54CONFIG_CEVT_R4K=y 61CONFIG_CEVT_R4K=y
62CONFIG_CSRC_R4K=y
55CONFIG_DMA_NONCOHERENT=y 63CONFIG_DMA_NONCOHERENT=y
56CONFIG_DMA_NEED_PCI_MAP_STATE=y 64CONFIG_DMA_NEED_PCI_MAP_STATE=y
57CONFIG_EARLY_PRINTK=y 65CONFIG_EARLY_PRINTK=y
58CONFIG_SYS_HAS_EARLY_PRINTK=y 66CONFIG_SYS_HAS_EARLY_PRINTK=y
59CONFIG_GENERIC_ISA_DMA=y 67# CONFIG_HOTPLUG_CPU is not set
60CONFIG_I8259=y 68CONFIG_I8259=y
61CONFIG_MIPS_BONITO64=y 69CONFIG_MIPS_BONITO64=y
62CONFIG_MIPS_MSC=y 70CONFIG_MIPS_MSC=y
63# CONFIG_NO_IOPORT is not set 71# CONFIG_NO_IOPORT is not set
72CONFIG_GENERIC_ISA_DMA=y
64# CONFIG_CPU_BIG_ENDIAN is not set 73# CONFIG_CPU_BIG_ENDIAN is not set
65CONFIG_CPU_LITTLE_ENDIAN=y 74CONFIG_CPU_LITTLE_ENDIAN=y
66CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y 75CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
67CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y 76CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
68CONFIG_IRQ_CPU=y 77CONFIG_IRQ_CPU=y
78CONFIG_IRQ_GIC=y
79CONFIG_MIPS_BOARDS_GEN=y
69CONFIG_PCI_GT64XXX_PCI0=y 80CONFIG_PCI_GT64XXX_PCI0=y
70CONFIG_SWAP_IO_SPACE=y 81CONFIG_SWAP_IO_SPACE=y
71CONFIG_BOOT_ELF32=y 82CONFIG_BOOT_ELF32=y
@@ -74,10 +85,6 @@ CONFIG_MIPS_L1_CACHE_SHIFT=5
74# 85#
75# CPU selection 86# CPU selection
76# 87#
77CONFIG_TICK_ONESHOT=y
78CONFIG_NO_HZ=y
79CONFIG_HIGH_RES_TIMERS=y
80CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
81# CONFIG_CPU_LOONGSON2 is not set 88# CONFIG_CPU_LOONGSON2 is not set
82# CONFIG_CPU_MIPS32_R1 is not set 89# CONFIG_CPU_MIPS32_R1 is not set
83CONFIG_CPU_MIPS32_R2=y 90CONFIG_CPU_MIPS32_R2=y
@@ -91,6 +98,7 @@ CONFIG_CPU_MIPS32_R2=y
91# CONFIG_CPU_TX49XX is not set 98# CONFIG_CPU_TX49XX is not set
92# CONFIG_CPU_R5000 is not set 99# CONFIG_CPU_R5000 is not set
93# CONFIG_CPU_R5432 is not set 100# CONFIG_CPU_R5432 is not set
101# CONFIG_CPU_R5500 is not set
94# CONFIG_CPU_R6000 is not set 102# CONFIG_CPU_R6000 is not set
95# CONFIG_CPU_NEVADA is not set 103# CONFIG_CPU_NEVADA is not set
96# CONFIG_CPU_R8000 is not set 104# CONFIG_CPU_R8000 is not set
@@ -108,6 +116,7 @@ CONFIG_CPU_MIPSR2=y
108CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y 116CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
109CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y 117CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y
110CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y 118CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
119CONFIG_HARDWARE_WATCHPOINTS=y
111 120
112# 121#
113# Kernel type 122# Kernel type
@@ -125,6 +134,8 @@ CONFIG_CPU_HAS_PREFETCH=y
125CONFIG_MIPS_MT_SMP=y 134CONFIG_MIPS_MT_SMP=y
126# CONFIG_MIPS_MT_SMTC is not set 135# CONFIG_MIPS_MT_SMTC is not set
127CONFIG_MIPS_MT=y 136CONFIG_MIPS_MT=y
137# CONFIG_SCHED_SMT is not set
138CONFIG_SYS_SUPPORTS_SCHED_SMT=y
128CONFIG_SYS_SUPPORTS_MULTITHREADING=y 139CONFIG_SYS_SUPPORTS_MULTITHREADING=y
129CONFIG_MIPS_MT_FPAFF=y 140CONFIG_MIPS_MT_FPAFF=y
130# CONFIG_MIPS_VPE_LOADER is not set 141# CONFIG_MIPS_VPE_LOADER is not set
@@ -132,7 +143,6 @@ CONFIG_CPU_HAS_LLSC=y
132# CONFIG_CPU_HAS_SMARTMIPS is not set 143# CONFIG_CPU_HAS_SMARTMIPS is not set
133CONFIG_CPU_MIPSR2_IRQ_VI=y 144CONFIG_CPU_MIPSR2_IRQ_VI=y
134CONFIG_CPU_MIPSR2_IRQ_EI=y 145CONFIG_CPU_MIPSR2_IRQ_EI=y
135CONFIG_CPU_MIPSR2_SRS=y
136CONFIG_CPU_HAS_SYNC=y 146CONFIG_CPU_HAS_SYNC=y
137CONFIG_GENERIC_HARDIRQS=y 147CONFIG_GENERIC_HARDIRQS=y
138CONFIG_GENERIC_IRQ_PROBE=y 148CONFIG_GENERIC_IRQ_PROBE=y
@@ -140,22 +150,30 @@ CONFIG_IRQ_PER_CPU=y
140CONFIG_CPU_SUPPORTS_HIGHMEM=y 150CONFIG_CPU_SUPPORTS_HIGHMEM=y
141CONFIG_SYS_SUPPORTS_SMARTMIPS=y 151CONFIG_SYS_SUPPORTS_SMARTMIPS=y
142CONFIG_ARCH_FLATMEM_ENABLE=y 152CONFIG_ARCH_FLATMEM_ENABLE=y
153CONFIG_ARCH_POPULATES_NODE_MAP=y
143CONFIG_SELECT_MEMORY_MODEL=y 154CONFIG_SELECT_MEMORY_MODEL=y
144CONFIG_FLATMEM_MANUAL=y 155CONFIG_FLATMEM_MANUAL=y
145# CONFIG_DISCONTIGMEM_MANUAL is not set 156# CONFIG_DISCONTIGMEM_MANUAL is not set
146# CONFIG_SPARSEMEM_MANUAL is not set 157# CONFIG_SPARSEMEM_MANUAL is not set
147CONFIG_FLATMEM=y 158CONFIG_FLATMEM=y
148CONFIG_FLAT_NODE_MEM_MAP=y 159CONFIG_FLAT_NODE_MEM_MAP=y
149# CONFIG_SPARSEMEM_STATIC is not set 160CONFIG_PAGEFLAGS_EXTENDED=y
150CONFIG_SPLIT_PTLOCK_CPUS=4 161CONFIG_SPLIT_PTLOCK_CPUS=4
151# CONFIG_RESOURCES_64BIT is not set 162# CONFIG_RESOURCES_64BIT is not set
163# CONFIG_PHYS_ADDR_T_64BIT is not set
152CONFIG_ZONE_DMA_FLAG=1 164CONFIG_ZONE_DMA_FLAG=1
153CONFIG_BOUNCE=y 165CONFIG_BOUNCE=y
154CONFIG_VIRT_TO_BUS=y 166CONFIG_VIRT_TO_BUS=y
167CONFIG_UNEVICTABLE_LRU=y
155CONFIG_SMP=y 168CONFIG_SMP=y
169CONFIG_SMP_UP=y
156CONFIG_SYS_SUPPORTS_SMP=y 170CONFIG_SYS_SUPPORTS_SMP=y
157CONFIG_NR_CPUS_DEFAULT_2=y 171CONFIG_NR_CPUS_DEFAULT_2=y
158CONFIG_NR_CPUS=2 172CONFIG_NR_CPUS=2
173CONFIG_TICK_ONESHOT=y
174CONFIG_NO_HZ=y
175CONFIG_HIGH_RES_TIMERS=y
176CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
159# CONFIG_HZ_48 is not set 177# CONFIG_HZ_48 is not set
160CONFIG_HZ_100=y 178CONFIG_HZ_100=y
161# CONFIG_HZ_128 is not set 179# CONFIG_HZ_128 is not set
@@ -168,7 +186,6 @@ CONFIG_HZ=100
168CONFIG_PREEMPT_NONE=y 186CONFIG_PREEMPT_NONE=y
169# CONFIG_PREEMPT_VOLUNTARY is not set 187# CONFIG_PREEMPT_VOLUNTARY is not set
170# CONFIG_PREEMPT is not set 188# CONFIG_PREEMPT is not set
171CONFIG_PREEMPT_BKL=y
172# CONFIG_KEXEC is not set 189# CONFIG_KEXEC is not set
173CONFIG_SECCOMP=y 190CONFIG_SECCOMP=y
174CONFIG_LOCKDEP_SUPPORT=y 191CONFIG_LOCKDEP_SUPPORT=y
@@ -189,13 +206,19 @@ CONFIG_SYSVIPC_SYSCTL=y
189# CONFIG_POSIX_MQUEUE is not set 206# CONFIG_POSIX_MQUEUE is not set
190# CONFIG_BSD_PROCESS_ACCT is not set 207# CONFIG_BSD_PROCESS_ACCT is not set
191# CONFIG_TASKSTATS is not set 208# CONFIG_TASKSTATS is not set
192# CONFIG_USER_NS is not set
193# CONFIG_AUDIT is not set 209# CONFIG_AUDIT is not set
194# CONFIG_IKCONFIG is not set 210# CONFIG_IKCONFIG is not set
195CONFIG_LOG_BUF_SHIFT=15 211CONFIG_LOG_BUF_SHIFT=15
196# CONFIG_CPUSETS is not set 212# CONFIG_CGROUPS is not set
213# CONFIG_GROUP_SCHED is not set
197CONFIG_SYSFS_DEPRECATED=y 214CONFIG_SYSFS_DEPRECATED=y
215CONFIG_SYSFS_DEPRECATED_V2=y
198CONFIG_RELAY=y 216CONFIG_RELAY=y
217CONFIG_NAMESPACES=y
218CONFIG_UTS_NS=y
219CONFIG_IPC_NS=y
220# CONFIG_USER_NS is not set
221CONFIG_PID_NS=y
199# CONFIG_BLK_DEV_INITRD is not set 222# CONFIG_BLK_DEV_INITRD is not set
200# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 223# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
201CONFIG_SYSCTL=y 224CONFIG_SYSCTL=y
@@ -207,6 +230,8 @@ CONFIG_HOTPLUG=y
207CONFIG_PRINTK=y 230CONFIG_PRINTK=y
208CONFIG_BUG=y 231CONFIG_BUG=y
209CONFIG_ELF_CORE=y 232CONFIG_ELF_CORE=y
233CONFIG_PCSPKR_PLATFORM=y
234# CONFIG_COMPAT_BRK is not set
210CONFIG_BASE_FULL=y 235CONFIG_BASE_FULL=y
211CONFIG_FUTEX=y 236CONFIG_FUTEX=y
212CONFIG_ANON_INODES=y 237CONFIG_ANON_INODES=y
@@ -215,14 +240,23 @@ CONFIG_SIGNALFD=y
215CONFIG_TIMERFD=y 240CONFIG_TIMERFD=y
216CONFIG_EVENTFD=y 241CONFIG_EVENTFD=y
217CONFIG_SHMEM=y 242CONFIG_SHMEM=y
243CONFIG_AIO=y
218CONFIG_VM_EVENT_COUNTERS=y 244CONFIG_VM_EVENT_COUNTERS=y
245CONFIG_PCI_QUIRKS=y
219CONFIG_SLAB=y 246CONFIG_SLAB=y
220# CONFIG_SLUB is not set 247# CONFIG_SLUB is not set
221# CONFIG_SLOB is not set 248# CONFIG_SLOB is not set
249# CONFIG_PROFILING is not set
250# CONFIG_MARKERS is not set
251CONFIG_HAVE_OPROFILE=y
252CONFIG_USE_GENERIC_SMP_HELPERS=y
253# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
254CONFIG_SLABINFO=y
222CONFIG_RT_MUTEXES=y 255CONFIG_RT_MUTEXES=y
223# CONFIG_TINY_SHMEM is not set 256# CONFIG_TINY_SHMEM is not set
224CONFIG_BASE_SMALL=0 257CONFIG_BASE_SMALL=0
225CONFIG_MODULES=y 258CONFIG_MODULES=y
259# CONFIG_MODULE_FORCE_LOAD is not set
226CONFIG_MODULE_UNLOAD=y 260CONFIG_MODULE_UNLOAD=y
227# CONFIG_MODULE_FORCE_UNLOAD is not set 261# CONFIG_MODULE_FORCE_UNLOAD is not set
228CONFIG_MODVERSIONS=y 262CONFIG_MODVERSIONS=y
@@ -234,6 +268,7 @@ CONFIG_BLOCK=y
234# CONFIG_BLK_DEV_IO_TRACE is not set 268# CONFIG_BLK_DEV_IO_TRACE is not set
235# CONFIG_LSF is not set 269# CONFIG_LSF is not set
236# CONFIG_BLK_DEV_BSG is not set 270# CONFIG_BLK_DEV_BSG is not set
271# CONFIG_BLK_DEV_INTEGRITY is not set
237 272
238# 273#
239# IO Schedulers 274# IO Schedulers
@@ -247,19 +282,19 @@ CONFIG_DEFAULT_AS=y
247# CONFIG_DEFAULT_CFQ is not set 282# CONFIG_DEFAULT_CFQ is not set
248# CONFIG_DEFAULT_NOOP is not set 283# CONFIG_DEFAULT_NOOP is not set
249CONFIG_DEFAULT_IOSCHED="anticipatory" 284CONFIG_DEFAULT_IOSCHED="anticipatory"
285CONFIG_CLASSIC_RCU=y
286# CONFIG_FREEZER is not set
250 287
251# 288#
252# Bus options (PCI, PCMCIA, EISA, ISA, TC) 289# Bus options (PCI, PCMCIA, EISA, ISA, TC)
253# 290#
254CONFIG_HW_HAS_PCI=y 291CONFIG_HW_HAS_PCI=y
255CONFIG_PCI=y 292CONFIG_PCI=y
293CONFIG_PCI_DOMAINS=y
256# CONFIG_ARCH_SUPPORTS_MSI is not set 294# CONFIG_ARCH_SUPPORTS_MSI is not set
295CONFIG_PCI_LEGACY=y
257CONFIG_MMU=y 296CONFIG_MMU=y
258CONFIG_I8253=y 297CONFIG_I8253=y
259
260#
261# PCCARD (PCMCIA/CardBus) support
262#
263# CONFIG_PCCARD is not set 298# CONFIG_PCCARD is not set
264# CONFIG_HOTPLUG_PCI is not set 299# CONFIG_HOTPLUG_PCI is not set
265 300
@@ -267,6 +302,8 @@ CONFIG_I8253=y
267# Executable file formats 302# Executable file formats
268# 303#
269CONFIG_BINFMT_ELF=y 304CONFIG_BINFMT_ELF=y
305# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
306# CONFIG_HAVE_AOUT is not set
270# CONFIG_BINFMT_MISC is not set 307# CONFIG_BINFMT_MISC is not set
271CONFIG_TRAD_SIGNALS=y 308CONFIG_TRAD_SIGNALS=y
272 309
@@ -274,12 +311,7 @@ CONFIG_TRAD_SIGNALS=y
274# Power management options 311# Power management options
275# 312#
276CONFIG_PM=y 313CONFIG_PM=y
277# CONFIG_PM_LEGACY is not set
278# CONFIG_PM_DEBUG is not set 314# CONFIG_PM_DEBUG is not set
279
280#
281# Networking
282#
283CONFIG_NET=y 315CONFIG_NET=y
284 316
285# 317#
@@ -292,6 +324,8 @@ CONFIG_XFRM=y
292CONFIG_XFRM_USER=m 324CONFIG_XFRM_USER=m
293# CONFIG_XFRM_SUB_POLICY is not set 325# CONFIG_XFRM_SUB_POLICY is not set
294CONFIG_XFRM_MIGRATE=y 326CONFIG_XFRM_MIGRATE=y
327# CONFIG_XFRM_STATISTICS is not set
328CONFIG_XFRM_IPCOMP=m
295CONFIG_NET_KEY=y 329CONFIG_NET_KEY=y
296CONFIG_NET_KEY_MIGRATE=y 330CONFIG_NET_KEY_MIGRATE=y
297CONFIG_INET=y 331CONFIG_INET=y
@@ -323,42 +357,13 @@ CONFIG_INET_TUNNEL=m
323CONFIG_INET_XFRM_MODE_TRANSPORT=m 357CONFIG_INET_XFRM_MODE_TRANSPORT=m
324CONFIG_INET_XFRM_MODE_TUNNEL=m 358CONFIG_INET_XFRM_MODE_TUNNEL=m
325CONFIG_INET_XFRM_MODE_BEET=y 359CONFIG_INET_XFRM_MODE_BEET=y
360CONFIG_INET_LRO=m
326CONFIG_INET_DIAG=y 361CONFIG_INET_DIAG=y
327CONFIG_INET_TCP_DIAG=y 362CONFIG_INET_TCP_DIAG=y
328# CONFIG_TCP_CONG_ADVANCED is not set 363# CONFIG_TCP_CONG_ADVANCED is not set
329CONFIG_TCP_CONG_CUBIC=y 364CONFIG_TCP_CONG_CUBIC=y
330CONFIG_DEFAULT_TCP_CONG="cubic" 365CONFIG_DEFAULT_TCP_CONG="cubic"
331CONFIG_TCP_MD5SIG=y 366CONFIG_TCP_MD5SIG=y
332CONFIG_IP_VS=m
333# CONFIG_IP_VS_DEBUG is not set
334CONFIG_IP_VS_TAB_BITS=12
335
336#
337# IPVS transport protocol load balancing support
338#
339CONFIG_IP_VS_PROTO_TCP=y
340CONFIG_IP_VS_PROTO_UDP=y
341CONFIG_IP_VS_PROTO_ESP=y
342CONFIG_IP_VS_PROTO_AH=y
343
344#
345# IPVS scheduler
346#
347CONFIG_IP_VS_RR=m
348CONFIG_IP_VS_WRR=m
349CONFIG_IP_VS_LC=m
350CONFIG_IP_VS_WLC=m
351CONFIG_IP_VS_LBLC=m
352CONFIG_IP_VS_LBLCR=m
353CONFIG_IP_VS_DH=m
354CONFIG_IP_VS_SH=m
355CONFIG_IP_VS_SED=m
356CONFIG_IP_VS_NQ=m
357
358#
359# IPVS application helper
360#
361CONFIG_IP_VS_FTP=m
362CONFIG_IPV6=m 367CONFIG_IPV6=m
363CONFIG_IPV6_PRIVACY=y 368CONFIG_IPV6_PRIVACY=y
364CONFIG_IPV6_ROUTER_PREF=y 369CONFIG_IPV6_ROUTER_PREF=y
@@ -375,11 +380,15 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
375CONFIG_INET6_XFRM_MODE_BEET=m 380CONFIG_INET6_XFRM_MODE_BEET=m
376# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 381# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
377CONFIG_IPV6_SIT=m 382CONFIG_IPV6_SIT=m
383CONFIG_IPV6_NDISC_NODETYPE=y
378CONFIG_IPV6_TUNNEL=m 384CONFIG_IPV6_TUNNEL=m
379# CONFIG_IPV6_MULTIPLE_TABLES is not set 385# CONFIG_IPV6_MULTIPLE_TABLES is not set
386CONFIG_IPV6_MROUTE=y
387CONFIG_IPV6_PIMSM_V2=y
380CONFIG_NETWORK_SECMARK=y 388CONFIG_NETWORK_SECMARK=y
381CONFIG_NETFILTER=y 389CONFIG_NETFILTER=y
382# CONFIG_NETFILTER_DEBUG is not set 390# CONFIG_NETFILTER_DEBUG is not set
391CONFIG_NETFILTER_ADVANCED=y
383CONFIG_BRIDGE_NETFILTER=y 392CONFIG_BRIDGE_NETFILTER=y
384 393
385# 394#
@@ -388,12 +397,12 @@ CONFIG_BRIDGE_NETFILTER=y
388CONFIG_NETFILTER_NETLINK=m 397CONFIG_NETFILTER_NETLINK=m
389CONFIG_NETFILTER_NETLINK_QUEUE=m 398CONFIG_NETFILTER_NETLINK_QUEUE=m
390CONFIG_NETFILTER_NETLINK_LOG=m 399CONFIG_NETFILTER_NETLINK_LOG=m
391CONFIG_NF_CONNTRACK_ENABLED=m
392CONFIG_NF_CONNTRACK=m 400CONFIG_NF_CONNTRACK=m
393CONFIG_NF_CT_ACCT=y 401CONFIG_NF_CT_ACCT=y
394CONFIG_NF_CONNTRACK_MARK=y 402CONFIG_NF_CONNTRACK_MARK=y
395CONFIG_NF_CONNTRACK_SECMARK=y 403CONFIG_NF_CONNTRACK_SECMARK=y
396CONFIG_NF_CONNTRACK_EVENTS=y 404CONFIG_NF_CONNTRACK_EVENTS=y
405CONFIG_NF_CT_PROTO_DCCP=m
397CONFIG_NF_CT_PROTO_GRE=m 406CONFIG_NF_CT_PROTO_GRE=m
398CONFIG_NF_CT_PROTO_SCTP=m 407CONFIG_NF_CT_PROTO_SCTP=m
399CONFIG_NF_CT_PROTO_UDPLITE=m 408CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -407,18 +416,22 @@ CONFIG_NF_CONNTRACK_SANE=m
407CONFIG_NF_CONNTRACK_SIP=m 416CONFIG_NF_CONNTRACK_SIP=m
408CONFIG_NF_CONNTRACK_TFTP=m 417CONFIG_NF_CONNTRACK_TFTP=m
409CONFIG_NF_CT_NETLINK=m 418CONFIG_NF_CT_NETLINK=m
419CONFIG_NETFILTER_TPROXY=m
410CONFIG_NETFILTER_XTABLES=m 420CONFIG_NETFILTER_XTABLES=m
411CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m 421CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
412CONFIG_NETFILTER_XT_TARGET_CONNMARK=m 422CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
423# CONFIG_NETFILTER_XT_TARGET_CONNSECMARK is not set
413# CONFIG_NETFILTER_XT_TARGET_DSCP is not set 424# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
414CONFIG_NETFILTER_XT_TARGET_MARK=m 425CONFIG_NETFILTER_XT_TARGET_MARK=m
415CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
416CONFIG_NETFILTER_XT_TARGET_NFLOG=m 426CONFIG_NETFILTER_XT_TARGET_NFLOG=m
427CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
417CONFIG_NETFILTER_XT_TARGET_NOTRACK=m 428CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
429CONFIG_NETFILTER_XT_TARGET_RATEEST=m
430CONFIG_NETFILTER_XT_TARGET_TPROXY=m
418CONFIG_NETFILTER_XT_TARGET_TRACE=m 431CONFIG_NETFILTER_XT_TARGET_TRACE=m
419CONFIG_NETFILTER_XT_TARGET_SECMARK=m 432CONFIG_NETFILTER_XT_TARGET_SECMARK=m
420# CONFIG_NETFILTER_XT_TARGET_CONNSECMARK is not set
421CONFIG_NETFILTER_XT_TARGET_TCPMSS=m 433CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
434CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
422CONFIG_NETFILTER_XT_MATCH_COMMENT=m 435CONFIG_NETFILTER_XT_MATCH_COMMENT=m
423CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m 436CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
424CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m 437CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
@@ -427,40 +440,76 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
427CONFIG_NETFILTER_XT_MATCH_DCCP=m 440CONFIG_NETFILTER_XT_MATCH_DCCP=m
428# CONFIG_NETFILTER_XT_MATCH_DSCP is not set 441# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
429CONFIG_NETFILTER_XT_MATCH_ESP=m 442CONFIG_NETFILTER_XT_MATCH_ESP=m
443CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
430CONFIG_NETFILTER_XT_MATCH_HELPER=m 444CONFIG_NETFILTER_XT_MATCH_HELPER=m
445CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
431CONFIG_NETFILTER_XT_MATCH_LENGTH=m 446CONFIG_NETFILTER_XT_MATCH_LENGTH=m
432CONFIG_NETFILTER_XT_MATCH_LIMIT=m 447CONFIG_NETFILTER_XT_MATCH_LIMIT=m
433CONFIG_NETFILTER_XT_MATCH_MAC=m 448CONFIG_NETFILTER_XT_MATCH_MAC=m
434CONFIG_NETFILTER_XT_MATCH_MARK=m 449CONFIG_NETFILTER_XT_MATCH_MARK=m
435CONFIG_NETFILTER_XT_MATCH_POLICY=m
436CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m 450CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
451CONFIG_NETFILTER_XT_MATCH_OWNER=m
452CONFIG_NETFILTER_XT_MATCH_POLICY=m
437# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set 453# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
438CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 454CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
439CONFIG_NETFILTER_XT_MATCH_QUOTA=m 455CONFIG_NETFILTER_XT_MATCH_QUOTA=m
456CONFIG_NETFILTER_XT_MATCH_RATEEST=m
440CONFIG_NETFILTER_XT_MATCH_REALM=m 457CONFIG_NETFILTER_XT_MATCH_REALM=m
458CONFIG_NETFILTER_XT_MATCH_RECENT=m
459# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set
441CONFIG_NETFILTER_XT_MATCH_SCTP=m 460CONFIG_NETFILTER_XT_MATCH_SCTP=m
461CONFIG_NETFILTER_XT_MATCH_SOCKET=m
442CONFIG_NETFILTER_XT_MATCH_STATE=m 462CONFIG_NETFILTER_XT_MATCH_STATE=m
443CONFIG_NETFILTER_XT_MATCH_STATISTIC=m 463CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
444CONFIG_NETFILTER_XT_MATCH_STRING=m 464CONFIG_NETFILTER_XT_MATCH_STRING=m
445CONFIG_NETFILTER_XT_MATCH_TCPMSS=m 465CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
466CONFIG_NETFILTER_XT_MATCH_TIME=m
446CONFIG_NETFILTER_XT_MATCH_U32=m 467CONFIG_NETFILTER_XT_MATCH_U32=m
447CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m 468CONFIG_IP_VS=m
469CONFIG_IP_VS_IPV6=y
470# CONFIG_IP_VS_DEBUG is not set
471CONFIG_IP_VS_TAB_BITS=12
472
473#
474# IPVS transport protocol load balancing support
475#
476CONFIG_IP_VS_PROTO_TCP=y
477CONFIG_IP_VS_PROTO_UDP=y
478CONFIG_IP_VS_PROTO_AH_ESP=y
479CONFIG_IP_VS_PROTO_ESP=y
480CONFIG_IP_VS_PROTO_AH=y
481
482#
483# IPVS scheduler
484#
485CONFIG_IP_VS_RR=m
486CONFIG_IP_VS_WRR=m
487CONFIG_IP_VS_LC=m
488CONFIG_IP_VS_WLC=m
489CONFIG_IP_VS_LBLC=m
490CONFIG_IP_VS_LBLCR=m
491CONFIG_IP_VS_DH=m
492CONFIG_IP_VS_SH=m
493CONFIG_IP_VS_SED=m
494CONFIG_IP_VS_NQ=m
495
496#
497# IPVS application helper
498#
499CONFIG_IP_VS_FTP=m
448 500
449# 501#
450# IP: Netfilter Configuration 502# IP: Netfilter Configuration
451# 503#
504CONFIG_NF_DEFRAG_IPV4=m
452CONFIG_NF_CONNTRACK_IPV4=m 505CONFIG_NF_CONNTRACK_IPV4=m
453CONFIG_NF_CONNTRACK_PROC_COMPAT=y 506CONFIG_NF_CONNTRACK_PROC_COMPAT=y
454CONFIG_IP_NF_QUEUE=m 507CONFIG_IP_NF_QUEUE=m
455CONFIG_IP_NF_IPTABLES=m 508CONFIG_IP_NF_IPTABLES=m
456CONFIG_IP_NF_MATCH_IPRANGE=m 509CONFIG_IP_NF_MATCH_ADDRTYPE=m
457CONFIG_IP_NF_MATCH_TOS=m
458CONFIG_IP_NF_MATCH_RECENT=m
459CONFIG_IP_NF_MATCH_ECN=m
460CONFIG_IP_NF_MATCH_AH=m 510CONFIG_IP_NF_MATCH_AH=m
511CONFIG_IP_NF_MATCH_ECN=m
461CONFIG_IP_NF_MATCH_TTL=m 512CONFIG_IP_NF_MATCH_TTL=m
462CONFIG_IP_NF_MATCH_OWNER=m
463CONFIG_IP_NF_MATCH_ADDRTYPE=m
464CONFIG_IP_NF_FILTER=m 513CONFIG_IP_NF_FILTER=m
465CONFIG_IP_NF_TARGET_REJECT=m 514CONFIG_IP_NF_TARGET_REJECT=m
466CONFIG_IP_NF_TARGET_LOG=m 515CONFIG_IP_NF_TARGET_LOG=m
@@ -468,11 +517,13 @@ CONFIG_IP_NF_TARGET_ULOG=m
468CONFIG_NF_NAT=m 517CONFIG_NF_NAT=m
469CONFIG_NF_NAT_NEEDED=y 518CONFIG_NF_NAT_NEEDED=y
470CONFIG_IP_NF_TARGET_MASQUERADE=m 519CONFIG_IP_NF_TARGET_MASQUERADE=m
471CONFIG_IP_NF_TARGET_REDIRECT=m
472CONFIG_IP_NF_TARGET_NETMAP=m 520CONFIG_IP_NF_TARGET_NETMAP=m
473CONFIG_IP_NF_TARGET_SAME=m 521CONFIG_IP_NF_TARGET_REDIRECT=m
474CONFIG_NF_NAT_SNMP_BASIC=m 522CONFIG_NF_NAT_SNMP_BASIC=m
523CONFIG_NF_NAT_PROTO_DCCP=m
475CONFIG_NF_NAT_PROTO_GRE=m 524CONFIG_NF_NAT_PROTO_GRE=m
525CONFIG_NF_NAT_PROTO_UDPLITE=m
526CONFIG_NF_NAT_PROTO_SCTP=m
476CONFIG_NF_NAT_FTP=m 527CONFIG_NF_NAT_FTP=m
477CONFIG_NF_NAT_IRC=m 528CONFIG_NF_NAT_IRC=m
478CONFIG_NF_NAT_TFTP=m 529CONFIG_NF_NAT_TFTP=m
@@ -481,40 +532,34 @@ CONFIG_NF_NAT_PPTP=m
481CONFIG_NF_NAT_H323=m 532CONFIG_NF_NAT_H323=m
482CONFIG_NF_NAT_SIP=m 533CONFIG_NF_NAT_SIP=m
483CONFIG_IP_NF_MANGLE=m 534CONFIG_IP_NF_MANGLE=m
484CONFIG_IP_NF_TARGET_TOS=m 535CONFIG_IP_NF_TARGET_CLUSTERIP=m
485CONFIG_IP_NF_TARGET_ECN=m 536CONFIG_IP_NF_TARGET_ECN=m
486CONFIG_IP_NF_TARGET_TTL=m 537CONFIG_IP_NF_TARGET_TTL=m
487CONFIG_IP_NF_TARGET_CLUSTERIP=m
488CONFIG_IP_NF_RAW=m 538CONFIG_IP_NF_RAW=m
489CONFIG_IP_NF_ARPTABLES=m 539CONFIG_IP_NF_ARPTABLES=m
490CONFIG_IP_NF_ARPFILTER=m 540CONFIG_IP_NF_ARPFILTER=m
491CONFIG_IP_NF_ARP_MANGLE=m 541CONFIG_IP_NF_ARP_MANGLE=m
492 542
493# 543#
494# IPv6: Netfilter Configuration (EXPERIMENTAL) 544# IPv6: Netfilter Configuration
495# 545#
496CONFIG_NF_CONNTRACK_IPV6=m 546CONFIG_NF_CONNTRACK_IPV6=m
497CONFIG_IP6_NF_QUEUE=m 547CONFIG_IP6_NF_QUEUE=m
498CONFIG_IP6_NF_IPTABLES=m 548CONFIG_IP6_NF_IPTABLES=m
499CONFIG_IP6_NF_MATCH_RT=m 549CONFIG_IP6_NF_MATCH_AH=m
500CONFIG_IP6_NF_MATCH_OPTS=m 550CONFIG_IP6_NF_MATCH_EUI64=m
501CONFIG_IP6_NF_MATCH_FRAG=m 551CONFIG_IP6_NF_MATCH_FRAG=m
552CONFIG_IP6_NF_MATCH_OPTS=m
502CONFIG_IP6_NF_MATCH_HL=m 553CONFIG_IP6_NF_MATCH_HL=m
503CONFIG_IP6_NF_MATCH_OWNER=m
504CONFIG_IP6_NF_MATCH_IPV6HEADER=m 554CONFIG_IP6_NF_MATCH_IPV6HEADER=m
505CONFIG_IP6_NF_MATCH_AH=m
506CONFIG_IP6_NF_MATCH_MH=m 555CONFIG_IP6_NF_MATCH_MH=m
507CONFIG_IP6_NF_MATCH_EUI64=m 556CONFIG_IP6_NF_MATCH_RT=m
508CONFIG_IP6_NF_FILTER=m
509CONFIG_IP6_NF_TARGET_LOG=m 557CONFIG_IP6_NF_TARGET_LOG=m
558CONFIG_IP6_NF_FILTER=m
510CONFIG_IP6_NF_TARGET_REJECT=m 559CONFIG_IP6_NF_TARGET_REJECT=m
511CONFIG_IP6_NF_MANGLE=m 560CONFIG_IP6_NF_MANGLE=m
512CONFIG_IP6_NF_TARGET_HL=m 561CONFIG_IP6_NF_TARGET_HL=m
513CONFIG_IP6_NF_RAW=m 562CONFIG_IP6_NF_RAW=m
514
515#
516# Bridge: Netfilter Configuration
517#
518CONFIG_BRIDGE_NF_EBTABLES=m 563CONFIG_BRIDGE_NF_EBTABLES=m
519CONFIG_BRIDGE_EBT_BROUTE=m 564CONFIG_BRIDGE_EBT_BROUTE=m
520CONFIG_BRIDGE_EBT_T_FILTER=m 565CONFIG_BRIDGE_EBT_T_FILTER=m
@@ -523,6 +568,7 @@ CONFIG_BRIDGE_EBT_802_3=m
523CONFIG_BRIDGE_EBT_AMONG=m 568CONFIG_BRIDGE_EBT_AMONG=m
524CONFIG_BRIDGE_EBT_ARP=m 569CONFIG_BRIDGE_EBT_ARP=m
525CONFIG_BRIDGE_EBT_IP=m 570CONFIG_BRIDGE_EBT_IP=m
571CONFIG_BRIDGE_EBT_IP6=m
526CONFIG_BRIDGE_EBT_LIMIT=m 572CONFIG_BRIDGE_EBT_LIMIT=m
527CONFIG_BRIDGE_EBT_MARK=m 573CONFIG_BRIDGE_EBT_MARK=m
528CONFIG_BRIDGE_EBT_PKTTYPE=m 574CONFIG_BRIDGE_EBT_PKTTYPE=m
@@ -535,6 +581,7 @@ CONFIG_BRIDGE_EBT_REDIRECT=m
535CONFIG_BRIDGE_EBT_SNAT=m 581CONFIG_BRIDGE_EBT_SNAT=m
536CONFIG_BRIDGE_EBT_LOG=m 582CONFIG_BRIDGE_EBT_LOG=m
537CONFIG_BRIDGE_EBT_ULOG=m 583CONFIG_BRIDGE_EBT_ULOG=m
584CONFIG_BRIDGE_EBT_NFLOG=m
538# CONFIG_IP_DCCP is not set 585# CONFIG_IP_DCCP is not set
539CONFIG_IP_SCTP=m 586CONFIG_IP_SCTP=m
540# CONFIG_SCTP_DBG_MSG is not set 587# CONFIG_SCTP_DBG_MSG is not set
@@ -544,8 +591,12 @@ CONFIG_IP_SCTP=m
544CONFIG_SCTP_HMAC_MD5=y 591CONFIG_SCTP_HMAC_MD5=y
545# CONFIG_TIPC is not set 592# CONFIG_TIPC is not set
546# CONFIG_ATM is not set 593# CONFIG_ATM is not set
594CONFIG_STP=m
595CONFIG_GARP=m
547CONFIG_BRIDGE=m 596CONFIG_BRIDGE=m
597# CONFIG_NET_DSA is not set
548CONFIG_VLAN_8021Q=m 598CONFIG_VLAN_8021Q=m
599CONFIG_VLAN_8021Q_GVRP=y
549# CONFIG_DECNET is not set 600# CONFIG_DECNET is not set
550CONFIG_LLC=m 601CONFIG_LLC=m
551# CONFIG_LLC2 is not set 602# CONFIG_LLC2 is not set
@@ -559,12 +610,7 @@ CONFIG_IPDDP_DECAP=y
559# CONFIG_LAPB is not set 610# CONFIG_LAPB is not set
560# CONFIG_ECONET is not set 611# CONFIG_ECONET is not set
561# CONFIG_WAN_ROUTER is not set 612# CONFIG_WAN_ROUTER is not set
562
563#
564# QoS and/or fair queueing
565#
566CONFIG_NET_SCHED=y 613CONFIG_NET_SCHED=y
567CONFIG_NET_SCH_FIFO=y
568 614
569# 615#
570# Queueing/Scheduling 616# Queueing/Scheduling
@@ -573,7 +619,7 @@ CONFIG_NET_SCH_CBQ=m
573CONFIG_NET_SCH_HTB=m 619CONFIG_NET_SCH_HTB=m
574CONFIG_NET_SCH_HFSC=m 620CONFIG_NET_SCH_HFSC=m
575CONFIG_NET_SCH_PRIO=m 621CONFIG_NET_SCH_PRIO=m
576CONFIG_NET_SCH_RR=m 622# CONFIG_NET_SCH_MULTIQ is not set
577CONFIG_NET_SCH_RED=m 623CONFIG_NET_SCH_RED=m
578CONFIG_NET_SCH_SFQ=m 624CONFIG_NET_SCH_SFQ=m
579CONFIG_NET_SCH_TEQL=m 625CONFIG_NET_SCH_TEQL=m
@@ -597,6 +643,7 @@ CONFIG_NET_CLS_U32=m
597# CONFIG_CLS_U32_MARK is not set 643# CONFIG_CLS_U32_MARK is not set
598CONFIG_NET_CLS_RSVP=m 644CONFIG_NET_CLS_RSVP=m
599CONFIG_NET_CLS_RSVP6=m 645CONFIG_NET_CLS_RSVP6=m
646CONFIG_NET_CLS_FLOW=m
600# CONFIG_NET_EMATCH is not set 647# CONFIG_NET_EMATCH is not set
601CONFIG_NET_CLS_ACT=y 648CONFIG_NET_CLS_ACT=y
602CONFIG_NET_ACT_POLICE=y 649CONFIG_NET_ACT_POLICE=y
@@ -604,37 +651,51 @@ CONFIG_NET_ACT_GACT=m
604CONFIG_GACT_PROB=y 651CONFIG_GACT_PROB=y
605CONFIG_NET_ACT_MIRRED=m 652CONFIG_NET_ACT_MIRRED=m
606CONFIG_NET_ACT_IPT=m 653CONFIG_NET_ACT_IPT=m
654CONFIG_NET_ACT_NAT=m
607CONFIG_NET_ACT_PEDIT=m 655CONFIG_NET_ACT_PEDIT=m
608CONFIG_NET_ACT_SIMP=m 656CONFIG_NET_ACT_SIMP=m
609CONFIG_NET_CLS_POLICE=y 657CONFIG_NET_ACT_SKBEDIT=m
610CONFIG_NET_CLS_IND=y 658CONFIG_NET_CLS_IND=y
659CONFIG_NET_SCH_FIFO=y
611 660
612# 661#
613# Network testing 662# Network testing
614# 663#
615# CONFIG_NET_PKTGEN is not set 664# CONFIG_NET_PKTGEN is not set
616# CONFIG_HAMRADIO is not set 665# CONFIG_HAMRADIO is not set
666# CONFIG_CAN is not set
617# CONFIG_IRDA is not set 667# CONFIG_IRDA is not set
618# CONFIG_BT is not set 668# CONFIG_BT is not set
619# CONFIG_AF_RXRPC is not set 669# CONFIG_AF_RXRPC is not set
670CONFIG_PHONET=m
620CONFIG_FIB_RULES=y 671CONFIG_FIB_RULES=y
621 672CONFIG_WIRELESS=y
622#
623# Wireless
624#
625CONFIG_CFG80211=m 673CONFIG_CFG80211=m
674CONFIG_NL80211=y
675CONFIG_WIRELESS_OLD_REGULATORY=y
626CONFIG_WIRELESS_EXT=y 676CONFIG_WIRELESS_EXT=y
677CONFIG_WIRELESS_EXT_SYSFS=y
627CONFIG_MAC80211=m 678CONFIG_MAC80211=m
628# CONFIG_MAC80211_DEBUG is not set 679
680#
681# Rate control algorithm selection
682#
683CONFIG_MAC80211_RC_PID=y
684CONFIG_MAC80211_RC_MINSTREL=y
685CONFIG_MAC80211_RC_DEFAULT_PID=y
686# CONFIG_MAC80211_RC_DEFAULT_MINSTREL is not set
687CONFIG_MAC80211_RC_DEFAULT="pid"
688CONFIG_MAC80211_MESH=y
689CONFIG_MAC80211_LEDS=y
690# CONFIG_MAC80211_DEBUG_MENU is not set
629CONFIG_IEEE80211=m 691CONFIG_IEEE80211=m
630# CONFIG_IEEE80211_DEBUG is not set 692# CONFIG_IEEE80211_DEBUG is not set
631CONFIG_IEEE80211_CRYPT_WEP=m 693CONFIG_IEEE80211_CRYPT_WEP=m
632CONFIG_IEEE80211_CRYPT_CCMP=m 694CONFIG_IEEE80211_CRYPT_CCMP=m
633CONFIG_IEEE80211_CRYPT_TKIP=m 695CONFIG_IEEE80211_CRYPT_TKIP=m
634CONFIG_IEEE80211_SOFTMAC=m
635# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
636CONFIG_RFKILL=m 696CONFIG_RFKILL=m
637CONFIG_RFKILL_INPUT=m 697CONFIG_RFKILL_INPUT=m
698CONFIG_RFKILL_LEDS=y
638# CONFIG_NET_9P is not set 699# CONFIG_NET_9P is not set
639 700
640# 701#
@@ -644,9 +705,12 @@ CONFIG_RFKILL_INPUT=m
644# 705#
645# Generic Driver Options 706# Generic Driver Options
646# 707#
708CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
647CONFIG_STANDALONE=y 709CONFIG_STANDALONE=y
648CONFIG_PREVENT_FIRMWARE_BUILD=y 710CONFIG_PREVENT_FIRMWARE_BUILD=y
649CONFIG_FW_LOADER=y 711CONFIG_FW_LOADER=y
712CONFIG_FIRMWARE_IN_KERNEL=y
713CONFIG_EXTRA_FIRMWARE=""
650# CONFIG_SYS_HYPERVISOR is not set 714# CONFIG_SYS_HYPERVISOR is not set
651CONFIG_CONNECTOR=m 715CONFIG_CONNECTOR=m
652CONFIG_MTD=y 716CONFIG_MTD=y
@@ -655,6 +719,7 @@ CONFIG_MTD=y
655CONFIG_MTD_PARTITIONS=y 719CONFIG_MTD_PARTITIONS=y
656# CONFIG_MTD_REDBOOT_PARTS is not set 720# CONFIG_MTD_REDBOOT_PARTS is not set
657# CONFIG_MTD_CMDLINE_PARTS is not set 721# CONFIG_MTD_CMDLINE_PARTS is not set
722# CONFIG_MTD_AR7_PARTS is not set
658 723
659# 724#
660# User Modules And Translation Layers 725# User Modules And Translation Layers
@@ -667,6 +732,7 @@ CONFIG_MTD_BLOCK=y
667# CONFIG_INFTL is not set 732# CONFIG_INFTL is not set
668# CONFIG_RFD_FTL is not set 733# CONFIG_RFD_FTL is not set
669# CONFIG_SSFDC is not set 734# CONFIG_SSFDC is not set
735CONFIG_MTD_OOPS=m
670 736
671# 737#
672# RAM/ROM/Flash chip drivers 738# RAM/ROM/Flash chip drivers
@@ -701,6 +767,7 @@ CONFIG_MTD_PHYSMAP=y
701CONFIG_MTD_PHYSMAP_START=0x0 767CONFIG_MTD_PHYSMAP_START=0x0
702CONFIG_MTD_PHYSMAP_LEN=0x0 768CONFIG_MTD_PHYSMAP_LEN=0x0
703CONFIG_MTD_PHYSMAP_BANKWIDTH=0 769CONFIG_MTD_PHYSMAP_BANKWIDTH=0
770# CONFIG_MTD_INTEL_VR_NOR is not set
704# CONFIG_MTD_PLATRAM is not set 771# CONFIG_MTD_PLATRAM is not set
705 772
706# 773#
@@ -748,25 +815,26 @@ CONFIG_BLK_DEV_NBD=m
748CONFIG_BLK_DEV_RAM=y 815CONFIG_BLK_DEV_RAM=y
749CONFIG_BLK_DEV_RAM_COUNT=16 816CONFIG_BLK_DEV_RAM_COUNT=16
750CONFIG_BLK_DEV_RAM_SIZE=4096 817CONFIG_BLK_DEV_RAM_SIZE=4096
751CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 818# CONFIG_BLK_DEV_XIP is not set
752CONFIG_CDROM_PKTCDVD=m 819CONFIG_CDROM_PKTCDVD=m
753CONFIG_CDROM_PKTCDVD_BUFFERS=8 820CONFIG_CDROM_PKTCDVD_BUFFERS=8
754# CONFIG_CDROM_PKTCDVD_WCACHE is not set 821# CONFIG_CDROM_PKTCDVD_WCACHE is not set
755CONFIG_ATA_OVER_ETH=m 822CONFIG_ATA_OVER_ETH=m
823# CONFIG_BLK_DEV_HD is not set
756# CONFIG_MISC_DEVICES is not set 824# CONFIG_MISC_DEVICES is not set
825CONFIG_HAVE_IDE=y
757CONFIG_IDE=y 826CONFIG_IDE=y
758CONFIG_IDE_MAX_HWIFS=4
759CONFIG_BLK_DEV_IDE=y
760 827
761# 828#
762# Please see Documentation/ide.txt for help/info on IDE drives 829# Please see Documentation/ide/ide.txt for help/info on IDE drives
763# 830#
764# CONFIG_BLK_DEV_IDE_SATA is not set 831# CONFIG_BLK_DEV_IDE_SATA is not set
765CONFIG_BLK_DEV_IDEDISK=y 832CONFIG_IDE_GD=y
766# CONFIG_IDEDISK_MULTI_MODE is not set 833CONFIG_IDE_GD_ATA=y
834# CONFIG_IDE_GD_ATAPI is not set
767CONFIG_BLK_DEV_IDECD=y 835CONFIG_BLK_DEV_IDECD=y
836CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
768# CONFIG_BLK_DEV_IDETAPE is not set 837# CONFIG_BLK_DEV_IDETAPE is not set
769# CONFIG_BLK_DEV_IDEFLOPPY is not set
770# CONFIG_BLK_DEV_IDESCSI is not set 838# CONFIG_BLK_DEV_IDESCSI is not set
771# CONFIG_IDE_TASK_IOCTL is not set 839# CONFIG_IDE_TASK_IOCTL is not set
772CONFIG_IDE_PROC_FS=y 840CONFIG_IDE_PROC_FS=y
@@ -775,24 +843,25 @@ CONFIG_IDE_PROC_FS=y
775# IDE chipset support/bugfixes 843# IDE chipset support/bugfixes
776# 844#
777CONFIG_IDE_GENERIC=y 845CONFIG_IDE_GENERIC=y
846# CONFIG_BLK_DEV_PLATFORM is not set
847CONFIG_BLK_DEV_IDEDMA_SFF=y
848
849#
850# PCI IDE chipsets support
851#
778CONFIG_BLK_DEV_IDEPCI=y 852CONFIG_BLK_DEV_IDEPCI=y
779# CONFIG_IDEPCI_SHARE_IRQ is not set
780CONFIG_IDEPCI_PCIBUS_ORDER=y 853CONFIG_IDEPCI_PCIBUS_ORDER=y
781# CONFIG_BLK_DEV_OFFBOARD is not set 854# CONFIG_BLK_DEV_OFFBOARD is not set
782CONFIG_BLK_DEV_GENERIC=y 855CONFIG_BLK_DEV_GENERIC=y
783# CONFIG_BLK_DEV_OPTI621 is not set 856# CONFIG_BLK_DEV_OPTI621 is not set
784CONFIG_BLK_DEV_IDEDMA_PCI=y 857CONFIG_BLK_DEV_IDEDMA_PCI=y
785# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
786# CONFIG_IDEDMA_ONLYDISK is not set
787# CONFIG_BLK_DEV_AEC62XX is not set 858# CONFIG_BLK_DEV_AEC62XX is not set
788# CONFIG_BLK_DEV_ALI15X3 is not set 859# CONFIG_BLK_DEV_ALI15X3 is not set
789# CONFIG_BLK_DEV_AMD74XX is not set 860# CONFIG_BLK_DEV_AMD74XX is not set
790# CONFIG_BLK_DEV_CMD64X is not set 861# CONFIG_BLK_DEV_CMD64X is not set
791# CONFIG_BLK_DEV_TRIFLEX is not set 862# CONFIG_BLK_DEV_TRIFLEX is not set
792# CONFIG_BLK_DEV_CY82C693 is not set
793# CONFIG_BLK_DEV_CS5520 is not set 863# CONFIG_BLK_DEV_CS5520 is not set
794# CONFIG_BLK_DEV_CS5530 is not set 864# CONFIG_BLK_DEV_CS5530 is not set
795# CONFIG_BLK_DEV_HPT34X is not set
796# CONFIG_BLK_DEV_HPT366 is not set 865# CONFIG_BLK_DEV_HPT366 is not set
797# CONFIG_BLK_DEV_JMICRON is not set 866# CONFIG_BLK_DEV_JMICRON is not set
798# CONFIG_BLK_DEV_SC1200 is not set 867# CONFIG_BLK_DEV_SC1200 is not set
@@ -808,10 +877,7 @@ CONFIG_BLK_DEV_IT8213=m
808# CONFIG_BLK_DEV_TRM290 is not set 877# CONFIG_BLK_DEV_TRM290 is not set
809# CONFIG_BLK_DEV_VIA82CXXX is not set 878# CONFIG_BLK_DEV_VIA82CXXX is not set
810CONFIG_BLK_DEV_TC86C001=m 879CONFIG_BLK_DEV_TC86C001=m
811# CONFIG_IDE_ARM is not set
812CONFIG_BLK_DEV_IDEDMA=y 880CONFIG_BLK_DEV_IDEDMA=y
813# CONFIG_IDEDMA_IVB is not set
814# CONFIG_BLK_DEV_HD is not set
815 881
816# 882#
817# SCSI device support 883# SCSI device support
@@ -848,8 +914,10 @@ CONFIG_SCSI_WAIT_SCAN=m
848# 914#
849CONFIG_SCSI_SPI_ATTRS=m 915CONFIG_SCSI_SPI_ATTRS=m
850CONFIG_SCSI_FC_ATTRS=m 916CONFIG_SCSI_FC_ATTRS=m
917# CONFIG_SCSI_FC_TGT_ATTRS is not set
851CONFIG_SCSI_ISCSI_ATTRS=m 918CONFIG_SCSI_ISCSI_ATTRS=m
852# CONFIG_SCSI_SAS_LIBSAS is not set 919# CONFIG_SCSI_SAS_LIBSAS is not set
920# CONFIG_SCSI_SRP_ATTRS is not set
853CONFIG_SCSI_LOWLEVEL=y 921CONFIG_SCSI_LOWLEVEL=y
854CONFIG_ISCSI_TCP=m 922CONFIG_ISCSI_TCP=m
855CONFIG_BLK_DEV_3W_XXXX_RAID=m 923CONFIG_BLK_DEV_3W_XXXX_RAID=m
@@ -866,6 +934,7 @@ CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
866# CONFIG_SCSI_AIC79XX is not set 934# CONFIG_SCSI_AIC79XX is not set
867# CONFIG_SCSI_AIC94XX is not set 935# CONFIG_SCSI_AIC94XX is not set
868# CONFIG_SCSI_DPT_I2O is not set 936# CONFIG_SCSI_DPT_I2O is not set
937# CONFIG_SCSI_ADVANSYS is not set
869# CONFIG_SCSI_ARCMSR is not set 938# CONFIG_SCSI_ARCMSR is not set
870# CONFIG_MEGARAID_NEWGEN is not set 939# CONFIG_MEGARAID_NEWGEN is not set
871# CONFIG_MEGARAID_LEGACY is not set 940# CONFIG_MEGARAID_LEGACY is not set
@@ -876,6 +945,7 @@ CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
876# CONFIG_SCSI_IPS is not set 945# CONFIG_SCSI_IPS is not set
877# CONFIG_SCSI_INITIO is not set 946# CONFIG_SCSI_INITIO is not set
878# CONFIG_SCSI_INIA100 is not set 947# CONFIG_SCSI_INIA100 is not set
948# CONFIG_SCSI_MVSAS is not set
879# CONFIG_SCSI_STEX is not set 949# CONFIG_SCSI_STEX is not set
880# CONFIG_SCSI_SYM53C8XX_2 is not set 950# CONFIG_SCSI_SYM53C8XX_2 is not set
881# CONFIG_SCSI_QLOGIC_1280 is not set 951# CONFIG_SCSI_QLOGIC_1280 is not set
@@ -887,6 +957,7 @@ CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
887# CONFIG_SCSI_NSP32 is not set 957# CONFIG_SCSI_NSP32 is not set
888# CONFIG_SCSI_DEBUG is not set 958# CONFIG_SCSI_DEBUG is not set
889# CONFIG_SCSI_SRP is not set 959# CONFIG_SCSI_SRP is not set
960# CONFIG_SCSI_DH is not set
890# CONFIG_ATA is not set 961# CONFIG_ATA is not set
891CONFIG_MD=y 962CONFIG_MD=y
892CONFIG_BLK_DEV_MD=m 963CONFIG_BLK_DEV_MD=m
@@ -905,32 +976,28 @@ CONFIG_DM_SNAPSHOT=m
905CONFIG_DM_MIRROR=m 976CONFIG_DM_MIRROR=m
906CONFIG_DM_ZERO=m 977CONFIG_DM_ZERO=m
907CONFIG_DM_MULTIPATH=m 978CONFIG_DM_MULTIPATH=m
908CONFIG_DM_MULTIPATH_EMC=m
909CONFIG_DM_MULTIPATH_RDAC=m
910# CONFIG_DM_DELAY is not set 979# CONFIG_DM_DELAY is not set
980# CONFIG_DM_UEVENT is not set
981# CONFIG_FUSION is not set
911 982
912# 983#
913# Fusion MPT device support 984# IEEE 1394 (FireWire) support
914# 985#
915# CONFIG_FUSION is not set
916# CONFIG_FUSION_SPI is not set
917# CONFIG_FUSION_FC is not set
918# CONFIG_FUSION_SAS is not set
919 986
920# 987#
921# IEEE 1394 (FireWire) support 988# Enable only one of the two stacks, unless you know what you are doing
922# 989#
923# CONFIG_FIREWIRE is not set 990# CONFIG_FIREWIRE is not set
924# CONFIG_IEEE1394 is not set 991# CONFIG_IEEE1394 is not set
925# CONFIG_I2O is not set 992# CONFIG_I2O is not set
926CONFIG_NETDEVICES=y 993CONFIG_NETDEVICES=y
927CONFIG_NETDEVICES_MULTIQUEUE=y
928CONFIG_IFB=m 994CONFIG_IFB=m
929CONFIG_DUMMY=m 995CONFIG_DUMMY=m
930CONFIG_BONDING=m 996CONFIG_BONDING=m
931CONFIG_MACVLAN=m 997CONFIG_MACVLAN=m
932CONFIG_EQUALIZER=m 998CONFIG_EQUALIZER=m
933CONFIG_TUN=m 999CONFIG_TUN=m
1000CONFIG_VETH=m
934# CONFIG_ARCNET is not set 1001# CONFIG_ARCNET is not set
935CONFIG_PHYLIB=m 1002CONFIG_PHYLIB=m
936 1003
@@ -946,26 +1013,34 @@ CONFIG_VITESSE_PHY=m
946CONFIG_SMSC_PHY=m 1013CONFIG_SMSC_PHY=m
947CONFIG_BROADCOM_PHY=m 1014CONFIG_BROADCOM_PHY=m
948CONFIG_ICPLUS_PHY=m 1015CONFIG_ICPLUS_PHY=m
949# CONFIG_FIXED_PHY is not set 1016CONFIG_REALTEK_PHY=m
1017CONFIG_MDIO_BITBANG=m
950CONFIG_NET_ETHERNET=y 1018CONFIG_NET_ETHERNET=y
951CONFIG_MII=y 1019CONFIG_MII=y
952CONFIG_AX88796=m 1020CONFIG_AX88796=m
1021# CONFIG_AX88796_93CX6 is not set
953# CONFIG_HAPPYMEAL is not set 1022# CONFIG_HAPPYMEAL is not set
954# CONFIG_SUNGEM is not set 1023# CONFIG_SUNGEM is not set
955# CONFIG_CASSINI is not set 1024# CONFIG_CASSINI is not set
956# CONFIG_NET_VENDOR_3COM is not set 1025# CONFIG_NET_VENDOR_3COM is not set
1026# CONFIG_SMC91X is not set
957# CONFIG_DM9000 is not set 1027# CONFIG_DM9000 is not set
958# CONFIG_NET_TULIP is not set 1028# CONFIG_NET_TULIP is not set
959# CONFIG_HP100 is not set 1029# CONFIG_HP100 is not set
1030# CONFIG_IBM_NEW_EMAC_ZMII is not set
1031# CONFIG_IBM_NEW_EMAC_RGMII is not set
1032# CONFIG_IBM_NEW_EMAC_TAH is not set
1033# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
1034# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
1035# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
1036# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
960CONFIG_NET_PCI=y 1037CONFIG_NET_PCI=y
961CONFIG_PCNET32=y 1038CONFIG_PCNET32=y
962# CONFIG_PCNET32_NAPI is not set
963# CONFIG_AMD8111_ETH is not set 1039# CONFIG_AMD8111_ETH is not set
964# CONFIG_ADAPTEC_STARFIRE is not set 1040# CONFIG_ADAPTEC_STARFIRE is not set
965# CONFIG_B44 is not set 1041# CONFIG_B44 is not set
966# CONFIG_FORCEDETH is not set 1042# CONFIG_FORCEDETH is not set
967CONFIG_TC35815=m 1043CONFIG_TC35815=m
968# CONFIG_DGRS is not set
969# CONFIG_EEPRO100 is not set 1044# CONFIG_EEPRO100 is not set
970# CONFIG_E100 is not set 1045# CONFIG_E100 is not set
971# CONFIG_FEALNX is not set 1046# CONFIG_FEALNX is not set
@@ -973,16 +1048,21 @@ CONFIG_TC35815=m
973# CONFIG_NE2K_PCI is not set 1048# CONFIG_NE2K_PCI is not set
974# CONFIG_8139CP is not set 1049# CONFIG_8139CP is not set
975# CONFIG_8139TOO is not set 1050# CONFIG_8139TOO is not set
1051# CONFIG_R6040 is not set
976# CONFIG_SIS900 is not set 1052# CONFIG_SIS900 is not set
977# CONFIG_EPIC100 is not set 1053# CONFIG_EPIC100 is not set
978# CONFIG_SUNDANCE is not set 1054# CONFIG_SUNDANCE is not set
979# CONFIG_TLAN is not set 1055# CONFIG_TLAN is not set
980# CONFIG_VIA_RHINE is not set 1056# CONFIG_VIA_RHINE is not set
981# CONFIG_SC92031 is not set 1057# CONFIG_SC92031 is not set
1058# CONFIG_ATL2 is not set
982CONFIG_NETDEV_1000=y 1059CONFIG_NETDEV_1000=y
983# CONFIG_ACENIC is not set 1060# CONFIG_ACENIC is not set
984# CONFIG_DL2K is not set 1061# CONFIG_DL2K is not set
985# CONFIG_E1000 is not set 1062# CONFIG_E1000 is not set
1063# CONFIG_E1000E is not set
1064# CONFIG_IP1000 is not set
1065# CONFIG_IGB is not set
986# CONFIG_NS83820 is not set 1066# CONFIG_NS83820 is not set
987# CONFIG_HAMACHI is not set 1067# CONFIG_HAMACHI is not set
988# CONFIG_YELLOWFIN is not set 1068# CONFIG_YELLOWFIN is not set
@@ -995,14 +1075,24 @@ CONFIG_NETDEV_1000=y
995# CONFIG_BNX2 is not set 1075# CONFIG_BNX2 is not set
996# CONFIG_QLA3XXX is not set 1076# CONFIG_QLA3XXX is not set
997# CONFIG_ATL1 is not set 1077# CONFIG_ATL1 is not set
1078# CONFIG_ATL1E is not set
1079# CONFIG_JME is not set
998CONFIG_NETDEV_10000=y 1080CONFIG_NETDEV_10000=y
999# CONFIG_CHELSIO_T1 is not set 1081# CONFIG_CHELSIO_T1 is not set
1000CONFIG_CHELSIO_T3=m 1082CONFIG_CHELSIO_T3=m
1083# CONFIG_ENIC is not set
1084# CONFIG_IXGBE is not set
1001# CONFIG_IXGB is not set 1085# CONFIG_IXGB is not set
1002# CONFIG_S2IO is not set 1086# CONFIG_S2IO is not set
1003# CONFIG_MYRI10GE is not set 1087# CONFIG_MYRI10GE is not set
1004CONFIG_NETXEN_NIC=m 1088CONFIG_NETXEN_NIC=m
1089# CONFIG_NIU is not set
1090# CONFIG_MLX4_EN is not set
1005# CONFIG_MLX4_CORE is not set 1091# CONFIG_MLX4_CORE is not set
1092# CONFIG_TEHUTI is not set
1093# CONFIG_BNX2X is not set
1094# CONFIG_QLGE is not set
1095# CONFIG_SFC is not set
1006# CONFIG_TR is not set 1096# CONFIG_TR is not set
1007 1097
1008# 1098#
@@ -1022,6 +1112,7 @@ CONFIG_IPW2200_QOS=y
1022# CONFIG_IPW2200_DEBUG is not set 1112# CONFIG_IPW2200_DEBUG is not set
1023CONFIG_LIBERTAS=m 1113CONFIG_LIBERTAS=m
1024# CONFIG_LIBERTAS_DEBUG is not set 1114# CONFIG_LIBERTAS_DEBUG is not set
1115# CONFIG_LIBERTAS_THINFIRM is not set
1025CONFIG_HERMES=m 1116CONFIG_HERMES=m
1026CONFIG_PLX_HERMES=m 1117CONFIG_PLX_HERMES=m
1027CONFIG_TMD_HERMES=m 1118CONFIG_TMD_HERMES=m
@@ -1030,25 +1121,30 @@ CONFIG_PCI_HERMES=m
1030CONFIG_ATMEL=m 1121CONFIG_ATMEL=m
1031CONFIG_PCI_ATMEL=m 1122CONFIG_PCI_ATMEL=m
1032CONFIG_PRISM54=m 1123CONFIG_PRISM54=m
1124# CONFIG_RTL8180 is not set
1125# CONFIG_ADM8211 is not set
1126# CONFIG_MAC80211_HWSIM is not set
1127# CONFIG_P54_COMMON is not set
1128# CONFIG_ATH5K is not set
1129# CONFIG_ATH9K is not set
1130# CONFIG_IWLCORE is not set
1131# CONFIG_IWLWIFI_LEDS is not set
1132# CONFIG_IWLAGN is not set
1133# CONFIG_IWL3945 is not set
1033CONFIG_HOSTAP=m 1134CONFIG_HOSTAP=m
1034CONFIG_HOSTAP_FIRMWARE=y 1135CONFIG_HOSTAP_FIRMWARE=y
1035CONFIG_HOSTAP_FIRMWARE_NVRAM=y 1136CONFIG_HOSTAP_FIRMWARE_NVRAM=y
1036CONFIG_HOSTAP_PLX=m 1137CONFIG_HOSTAP_PLX=m
1037CONFIG_HOSTAP_PCI=m 1138CONFIG_HOSTAP_PCI=m
1038CONFIG_BCM43XX=m 1139# CONFIG_B43 is not set
1039CONFIG_BCM43XX_DEBUG=y 1140# CONFIG_B43LEGACY is not set
1040CONFIG_BCM43XX_DMA=y 1141# CONFIG_RT2X00 is not set
1041CONFIG_BCM43XX_PIO=y
1042CONFIG_BCM43XX_DMA_AND_PIO_MODE=y
1043# CONFIG_BCM43XX_DMA_MODE is not set
1044# CONFIG_BCM43XX_PIO_MODE is not set
1045# CONFIG_WAN is not set 1142# CONFIG_WAN is not set
1046# CONFIG_FDDI is not set 1143# CONFIG_FDDI is not set
1047# CONFIG_HIPPI is not set 1144# CONFIG_HIPPI is not set
1048# CONFIG_PPP is not set 1145# CONFIG_PPP is not set
1049# CONFIG_SLIP is not set 1146# CONFIG_SLIP is not set
1050# CONFIG_NET_FC is not set 1147# CONFIG_NET_FC is not set
1051# CONFIG_SHAPER is not set
1052# CONFIG_NETCONSOLE is not set 1148# CONFIG_NETCONSOLE is not set
1053# CONFIG_NETPOLL is not set 1149# CONFIG_NETPOLL is not set
1054# CONFIG_NET_POLL_CONTROLLER is not set 1150# CONFIG_NET_POLL_CONTROLLER is not set
@@ -1070,7 +1166,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y
1070CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 1166CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
1071CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 1167CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
1072# CONFIG_INPUT_JOYDEV is not set 1168# CONFIG_INPUT_JOYDEV is not set
1073# CONFIG_INPUT_TSDEV is not set
1074# CONFIG_INPUT_EVDEV is not set 1169# CONFIG_INPUT_EVDEV is not set
1075# CONFIG_INPUT_EVBUG is not set 1170# CONFIG_INPUT_EVBUG is not set
1076 1171
@@ -1099,10 +1194,13 @@ CONFIG_SERIO_SERPORT=y
1099# Character devices 1194# Character devices
1100# 1195#
1101CONFIG_VT=y 1196CONFIG_VT=y
1197CONFIG_CONSOLE_TRANSLATIONS=y
1102CONFIG_VT_CONSOLE=y 1198CONFIG_VT_CONSOLE=y
1103CONFIG_HW_CONSOLE=y 1199CONFIG_HW_CONSOLE=y
1104CONFIG_VT_HW_CONSOLE_BINDING=y 1200CONFIG_VT_HW_CONSOLE_BINDING=y
1201CONFIG_DEVKMEM=y
1105# CONFIG_SERIAL_NONSTANDARD is not set 1202# CONFIG_SERIAL_NONSTANDARD is not set
1203# CONFIG_NOZOMI is not set
1106 1204
1107# 1205#
1108# Serial drivers 1206# Serial drivers
@@ -1124,101 +1222,165 @@ CONFIG_UNIX98_PTYS=y
1124CONFIG_LEGACY_PTYS=y 1222CONFIG_LEGACY_PTYS=y
1125CONFIG_LEGACY_PTY_COUNT=256 1223CONFIG_LEGACY_PTY_COUNT=256
1126# CONFIG_IPMI_HANDLER is not set 1224# CONFIG_IPMI_HANDLER is not set
1127# CONFIG_WATCHDOG is not set
1128CONFIG_HW_RANDOM=m 1225CONFIG_HW_RANDOM=m
1129CONFIG_RTC=y
1130# CONFIG_R3964 is not set 1226# CONFIG_R3964 is not set
1131# CONFIG_APPLICOM is not set 1227# CONFIG_APPLICOM is not set
1132# CONFIG_DRM is not set
1133# CONFIG_RAW_DRIVER is not set 1228# CONFIG_RAW_DRIVER is not set
1134# CONFIG_TCG_TPM is not set 1229# CONFIG_TCG_TPM is not set
1135CONFIG_DEVPORT=y 1230CONFIG_DEVPORT=y
1136# CONFIG_I2C is not set 1231# CONFIG_I2C is not set
1137
1138#
1139# SPI support
1140#
1141# CONFIG_SPI is not set 1232# CONFIG_SPI is not set
1142# CONFIG_SPI_MASTER is not set
1143# CONFIG_W1 is not set 1233# CONFIG_W1 is not set
1144# CONFIG_POWER_SUPPLY is not set 1234# CONFIG_POWER_SUPPLY is not set
1145# CONFIG_HWMON is not set 1235# CONFIG_HWMON is not set
1236# CONFIG_THERMAL is not set
1237# CONFIG_THERMAL_HWMON is not set
1238# CONFIG_WATCHDOG is not set
1239CONFIG_SSB_POSSIBLE=y
1240
1241#
1242# Sonics Silicon Backplane
1243#
1244# CONFIG_SSB is not set
1146 1245
1147# 1246#
1148# Multifunction device drivers 1247# Multifunction device drivers
1149# 1248#
1249# CONFIG_MFD_CORE is not set
1150# CONFIG_MFD_SM501 is not set 1250# CONFIG_MFD_SM501 is not set
1251# CONFIG_HTC_PASIC3 is not set
1252# CONFIG_MFD_TMIO is not set
1253# CONFIG_REGULATOR is not set
1151 1254
1152# 1255#
1153# Multimedia devices 1256# Multimedia devices
1154# 1257#
1258
1259#
1260# Multimedia core support
1261#
1155# CONFIG_VIDEO_DEV is not set 1262# CONFIG_VIDEO_DEV is not set
1156# CONFIG_DVB_CORE is not set 1263# CONFIG_DVB_CORE is not set
1264# CONFIG_VIDEO_MEDIA is not set
1265
1266#
1267# Multimedia drivers
1268#
1157# CONFIG_DAB is not set 1269# CONFIG_DAB is not set
1158 1270
1159# 1271#
1160# Graphics support 1272# Graphics support
1161# 1273#
1274# CONFIG_DRM is not set
1275# CONFIG_VGASTATE is not set
1276# CONFIG_VIDEO_OUTPUT_CONTROL is not set
1277# CONFIG_FB is not set
1162# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 1278# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
1163 1279
1164# 1280#
1165# Display device support 1281# Display device support
1166# 1282#
1167# CONFIG_DISPLAY_SUPPORT is not set 1283# CONFIG_DISPLAY_SUPPORT is not set
1168# CONFIG_VGASTATE is not set
1169# CONFIG_VIDEO_OUTPUT_CONTROL is not set
1170# CONFIG_FB is not set
1171 1284
1172# 1285#
1173# Console display driver support 1286# Console display driver support
1174# 1287#
1175# CONFIG_VGA_CONSOLE is not set 1288# CONFIG_VGA_CONSOLE is not set
1176CONFIG_DUMMY_CONSOLE=y 1289CONFIG_DUMMY_CONSOLE=y
1177
1178#
1179# Sound
1180#
1181# CONFIG_SOUND is not set 1290# CONFIG_SOUND is not set
1182CONFIG_HID_SUPPORT=y 1291CONFIG_HID_SUPPORT=y
1183CONFIG_HID=m 1292CONFIG_HID=m
1184# CONFIG_HID_DEBUG is not set 1293# CONFIG_HID_DEBUG is not set
1294# CONFIG_HIDRAW is not set
1295# CONFIG_HID_PID is not set
1296
1297#
1298# Special HID drivers
1299#
1300CONFIG_HID_COMPAT=y
1185CONFIG_USB_SUPPORT=y 1301CONFIG_USB_SUPPORT=y
1186CONFIG_USB_ARCH_HAS_HCD=y 1302CONFIG_USB_ARCH_HAS_HCD=y
1187CONFIG_USB_ARCH_HAS_OHCI=y 1303CONFIG_USB_ARCH_HAS_OHCI=y
1188CONFIG_USB_ARCH_HAS_EHCI=y 1304CONFIG_USB_ARCH_HAS_EHCI=y
1189# CONFIG_USB is not set 1305# CONFIG_USB is not set
1306# CONFIG_USB_OTG_WHITELIST is not set
1307# CONFIG_USB_OTG_BLACKLIST_HUB is not set
1190 1308
1191# 1309#
1192# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 1310# Enable Host or Gadget support to see Inventra options
1193# 1311#
1194 1312
1195# 1313#
1196# USB Gadget Support 1314# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed;
1197# 1315#
1198# CONFIG_USB_GADGET is not set 1316# CONFIG_USB_GADGET is not set
1317# CONFIG_UWB is not set
1199# CONFIG_MMC is not set 1318# CONFIG_MMC is not set
1200# CONFIG_NEW_LEDS is not set 1319# CONFIG_MEMSTICK is not set
1320CONFIG_NEW_LEDS=y
1321CONFIG_LEDS_CLASS=m
1322
1323#
1324# LED drivers
1325#
1326
1327#
1328# LED Triggers
1329#
1330CONFIG_LEDS_TRIGGERS=y
1331CONFIG_LEDS_TRIGGER_TIMER=m
1332CONFIG_LEDS_TRIGGER_IDE_DISK=y
1333CONFIG_LEDS_TRIGGER_HEARTBEAT=m
1334CONFIG_LEDS_TRIGGER_BACKLIGHT=m
1335CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
1336# CONFIG_ACCESSIBILITY is not set
1201# CONFIG_INFINIBAND is not set 1337# CONFIG_INFINIBAND is not set
1202# CONFIG_RTC_CLASS is not set 1338CONFIG_RTC_LIB=y
1339CONFIG_RTC_CLASS=y
1340CONFIG_RTC_HCTOSYS=y
1341CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
1342# CONFIG_RTC_DEBUG is not set
1203 1343
1204# 1344#
1205# DMA Engine support 1345# RTC interfaces
1206# 1346#
1207# CONFIG_DMA_ENGINE is not set 1347CONFIG_RTC_INTF_SYSFS=y
1348CONFIG_RTC_INTF_PROC=y
1349CONFIG_RTC_INTF_DEV=y
1350# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
1351# CONFIG_RTC_DRV_TEST is not set
1208 1352
1209# 1353#
1210# DMA Clients 1354# SPI RTC drivers
1211# 1355#
1212 1356
1213# 1357#
1214# DMA Devices 1358# Platform RTC drivers
1215# 1359#
1360CONFIG_RTC_DRV_CMOS=y
1361# CONFIG_RTC_DRV_DS1286 is not set
1362# CONFIG_RTC_DRV_DS1511 is not set
1363# CONFIG_RTC_DRV_DS1553 is not set
1364# CONFIG_RTC_DRV_DS1742 is not set
1365# CONFIG_RTC_DRV_STK17TA8 is not set
1366# CONFIG_RTC_DRV_M48T86 is not set
1367# CONFIG_RTC_DRV_M48T35 is not set
1368# CONFIG_RTC_DRV_M48T59 is not set
1369# CONFIG_RTC_DRV_BQ4802 is not set
1370# CONFIG_RTC_DRV_V3020 is not set
1216 1371
1217# 1372#
1218# Userspace I/O 1373# on-CPU RTC drivers
1219# 1374#
1375# CONFIG_DMADEVICES is not set
1220CONFIG_UIO=m 1376CONFIG_UIO=m
1221CONFIG_UIO_CIF=m 1377CONFIG_UIO_CIF=m
1378# CONFIG_UIO_PDRV is not set
1379# CONFIG_UIO_PDRV_GENIRQ is not set
1380# CONFIG_UIO_SMX is not set
1381# CONFIG_UIO_SERCOS3 is not set
1382# CONFIG_STAGING is not set
1383CONFIG_STAGING_EXCLUDE_BUILD=y
1222 1384
1223# 1385#
1224# File systems 1386# File systems
@@ -1230,9 +1392,8 @@ CONFIG_EXT3_FS=y
1230CONFIG_EXT3_FS_XATTR=y 1392CONFIG_EXT3_FS_XATTR=y
1231# CONFIG_EXT3_FS_POSIX_ACL is not set 1393# CONFIG_EXT3_FS_POSIX_ACL is not set
1232# CONFIG_EXT3_FS_SECURITY is not set 1394# CONFIG_EXT3_FS_SECURITY is not set
1233# CONFIG_EXT4DEV_FS is not set 1395# CONFIG_EXT4_FS is not set
1234CONFIG_JBD=y 1396CONFIG_JBD=y
1235# CONFIG_JBD_DEBUG is not set
1236CONFIG_FS_MBCACHE=y 1397CONFIG_FS_MBCACHE=y
1237CONFIG_REISERFS_FS=m 1398CONFIG_REISERFS_FS=m
1238# CONFIG_REISERFS_CHECK is not set 1399# CONFIG_REISERFS_CHECK is not set
@@ -1246,22 +1407,22 @@ CONFIG_JFS_SECURITY=y
1246# CONFIG_JFS_DEBUG is not set 1407# CONFIG_JFS_DEBUG is not set
1247# CONFIG_JFS_STATISTICS is not set 1408# CONFIG_JFS_STATISTICS is not set
1248CONFIG_FS_POSIX_ACL=y 1409CONFIG_FS_POSIX_ACL=y
1410CONFIG_FILE_LOCKING=y
1249CONFIG_XFS_FS=m 1411CONFIG_XFS_FS=m
1250CONFIG_XFS_QUOTA=y 1412CONFIG_XFS_QUOTA=y
1251CONFIG_XFS_SECURITY=y
1252CONFIG_XFS_POSIX_ACL=y 1413CONFIG_XFS_POSIX_ACL=y
1253# CONFIG_XFS_RT is not set 1414# CONFIG_XFS_RT is not set
1254# CONFIG_GFS2_FS is not set 1415# CONFIG_XFS_DEBUG is not set
1255# CONFIG_OCFS2_FS is not set 1416# CONFIG_OCFS2_FS is not set
1256CONFIG_MINIX_FS=m 1417CONFIG_DNOTIFY=y
1257CONFIG_ROMFS_FS=m
1258CONFIG_INOTIFY=y 1418CONFIG_INOTIFY=y
1259CONFIG_INOTIFY_USER=y 1419CONFIG_INOTIFY_USER=y
1260CONFIG_QUOTA=y 1420CONFIG_QUOTA=y
1421# CONFIG_QUOTA_NETLINK_INTERFACE is not set
1422CONFIG_PRINT_QUOTA_WARNING=y
1261# CONFIG_QFMT_V1 is not set 1423# CONFIG_QFMT_V1 is not set
1262CONFIG_QFMT_V2=y 1424CONFIG_QFMT_V2=y
1263CONFIG_QUOTACTL=y 1425CONFIG_QUOTACTL=y
1264CONFIG_DNOTIFY=y
1265CONFIG_AUTOFS_FS=y 1426CONFIG_AUTOFS_FS=y
1266# CONFIG_AUTOFS4_FS is not set 1427# CONFIG_AUTOFS4_FS is not set
1267CONFIG_FUSE_FS=m 1428CONFIG_FUSE_FS=m
@@ -1291,11 +1452,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
1291CONFIG_PROC_FS=y 1452CONFIG_PROC_FS=y
1292CONFIG_PROC_KCORE=y 1453CONFIG_PROC_KCORE=y
1293CONFIG_PROC_SYSCTL=y 1454CONFIG_PROC_SYSCTL=y
1455CONFIG_PROC_PAGE_MONITOR=y
1294CONFIG_SYSFS=y 1456CONFIG_SYSFS=y
1295CONFIG_TMPFS=y 1457CONFIG_TMPFS=y
1296# CONFIG_TMPFS_POSIX_ACL is not set 1458# CONFIG_TMPFS_POSIX_ACL is not set
1297# CONFIG_HUGETLB_PAGE is not set 1459# CONFIG_HUGETLB_PAGE is not set
1298CONFIG_RAMFS=y
1299# CONFIG_CONFIGFS_FS is not set 1460# CONFIG_CONFIGFS_FS is not set
1300 1461
1301# 1462#
@@ -1312,46 +1473,48 @@ CONFIG_EFS_FS=m
1312CONFIG_JFFS2_FS=m 1473CONFIG_JFFS2_FS=m
1313CONFIG_JFFS2_FS_DEBUG=0 1474CONFIG_JFFS2_FS_DEBUG=0
1314CONFIG_JFFS2_FS_WRITEBUFFER=y 1475CONFIG_JFFS2_FS_WRITEBUFFER=y
1476# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
1315# CONFIG_JFFS2_SUMMARY is not set 1477# CONFIG_JFFS2_SUMMARY is not set
1316CONFIG_JFFS2_FS_XATTR=y 1478CONFIG_JFFS2_FS_XATTR=y
1317CONFIG_JFFS2_FS_POSIX_ACL=y 1479CONFIG_JFFS2_FS_POSIX_ACL=y
1318CONFIG_JFFS2_FS_SECURITY=y 1480CONFIG_JFFS2_FS_SECURITY=y
1319CONFIG_JFFS2_COMPRESSION_OPTIONS=y 1481CONFIG_JFFS2_COMPRESSION_OPTIONS=y
1320CONFIG_JFFS2_ZLIB=y 1482CONFIG_JFFS2_ZLIB=y
1483# CONFIG_JFFS2_LZO is not set
1321CONFIG_JFFS2_RTIME=y 1484CONFIG_JFFS2_RTIME=y
1322CONFIG_JFFS2_RUBIN=y 1485CONFIG_JFFS2_RUBIN=y
1323# CONFIG_JFFS2_CMODE_NONE is not set 1486# CONFIG_JFFS2_CMODE_NONE is not set
1324CONFIG_JFFS2_CMODE_PRIORITY=y 1487CONFIG_JFFS2_CMODE_PRIORITY=y
1325# CONFIG_JFFS2_CMODE_SIZE is not set 1488# CONFIG_JFFS2_CMODE_SIZE is not set
1489# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
1490# CONFIG_UBIFS_FS is not set
1326CONFIG_CRAMFS=m 1491CONFIG_CRAMFS=m
1327CONFIG_VXFS_FS=m 1492CONFIG_VXFS_FS=m
1493CONFIG_MINIX_FS=m
1494# CONFIG_OMFS_FS is not set
1328# CONFIG_HPFS_FS is not set 1495# CONFIG_HPFS_FS is not set
1329# CONFIG_QNX4FS_FS is not set 1496# CONFIG_QNX4FS_FS is not set
1497CONFIG_ROMFS_FS=m
1330CONFIG_SYSV_FS=m 1498CONFIG_SYSV_FS=m
1331CONFIG_UFS_FS=m 1499CONFIG_UFS_FS=m
1332# CONFIG_UFS_FS_WRITE is not set 1500# CONFIG_UFS_FS_WRITE is not set
1333# CONFIG_UFS_DEBUG is not set 1501# CONFIG_UFS_DEBUG is not set
1334 1502CONFIG_NETWORK_FILESYSTEMS=y
1335#
1336# Network File Systems
1337#
1338CONFIG_NFS_FS=y 1503CONFIG_NFS_FS=y
1339CONFIG_NFS_V3=y 1504CONFIG_NFS_V3=y
1340# CONFIG_NFS_V3_ACL is not set 1505# CONFIG_NFS_V3_ACL is not set
1341# CONFIG_NFS_V4 is not set 1506# CONFIG_NFS_V4 is not set
1342# CONFIG_NFS_DIRECTIO is not set 1507CONFIG_ROOT_NFS=y
1343CONFIG_NFSD=y 1508CONFIG_NFSD=y
1344CONFIG_NFSD_V3=y 1509CONFIG_NFSD_V3=y
1345# CONFIG_NFSD_V3_ACL is not set 1510# CONFIG_NFSD_V3_ACL is not set
1346# CONFIG_NFSD_V4 is not set 1511# CONFIG_NFSD_V4 is not set
1347# CONFIG_NFSD_TCP is not set
1348CONFIG_ROOT_NFS=y
1349CONFIG_LOCKD=y 1512CONFIG_LOCKD=y
1350CONFIG_LOCKD_V4=y 1513CONFIG_LOCKD_V4=y
1351CONFIG_EXPORTFS=y 1514CONFIG_EXPORTFS=y
1352CONFIG_NFS_COMMON=y 1515CONFIG_NFS_COMMON=y
1353CONFIG_SUNRPC=y 1516CONFIG_SUNRPC=y
1354# CONFIG_SUNRPC_BIND34 is not set 1517# CONFIG_SUNRPC_REGISTER_V4 is not set
1355# CONFIG_RPCSEC_GSS_KRB5 is not set 1518# CONFIG_RPCSEC_GSS_KRB5 is not set
1356# CONFIG_RPCSEC_GSS_SPKM3 is not set 1519# CONFIG_RPCSEC_GSS_SPKM3 is not set
1357# CONFIG_SMB_FS is not set 1520# CONFIG_SMB_FS is not set
@@ -1365,10 +1528,6 @@ CONFIG_SUNRPC=y
1365# 1528#
1366# CONFIG_PARTITION_ADVANCED is not set 1529# CONFIG_PARTITION_ADVANCED is not set
1367CONFIG_MSDOS_PARTITION=y 1530CONFIG_MSDOS_PARTITION=y
1368
1369#
1370# Native Language Support
1371#
1372CONFIG_NLS=m 1531CONFIG_NLS=m
1373CONFIG_NLS_DEFAULT="iso8859-1" 1532CONFIG_NLS_DEFAULT="iso8859-1"
1374CONFIG_NLS_CODEPAGE_437=m 1533CONFIG_NLS_CODEPAGE_437=m
@@ -1409,29 +1568,30 @@ CONFIG_NLS_ISO8859_15=m
1409CONFIG_NLS_KOI8_R=m 1568CONFIG_NLS_KOI8_R=m
1410CONFIG_NLS_KOI8_U=m 1569CONFIG_NLS_KOI8_U=m
1411CONFIG_NLS_UTF8=m 1570CONFIG_NLS_UTF8=m
1412
1413#
1414# Distributed Lock Manager
1415#
1416# CONFIG_DLM is not set 1571# CONFIG_DLM is not set
1417 1572
1418# 1573#
1419# Profiling support
1420#
1421# CONFIG_PROFILING is not set
1422
1423#
1424# Kernel hacking 1574# Kernel hacking
1425# 1575#
1426CONFIG_TRACE_IRQFLAGS_SUPPORT=y 1576CONFIG_TRACE_IRQFLAGS_SUPPORT=y
1427# CONFIG_PRINTK_TIME is not set 1577# CONFIG_PRINTK_TIME is not set
1578CONFIG_ENABLE_WARN_DEPRECATED=y
1428CONFIG_ENABLE_MUST_CHECK=y 1579CONFIG_ENABLE_MUST_CHECK=y
1580CONFIG_FRAME_WARN=1024
1429# CONFIG_MAGIC_SYSRQ is not set 1581# CONFIG_MAGIC_SYSRQ is not set
1430# CONFIG_UNUSED_SYMBOLS is not set 1582# CONFIG_UNUSED_SYMBOLS is not set
1431# CONFIG_DEBUG_FS is not set 1583# CONFIG_DEBUG_FS is not set
1432# CONFIG_HEADERS_CHECK is not set 1584# CONFIG_HEADERS_CHECK is not set
1433# CONFIG_DEBUG_KERNEL is not set 1585# CONFIG_DEBUG_KERNEL is not set
1434CONFIG_CROSSCOMPILE=y 1586# CONFIG_DEBUG_MEMORY_INIT is not set
1587# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1588
1589#
1590# Tracers
1591#
1592# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
1593# CONFIG_SAMPLES is not set
1594CONFIG_HAVE_ARCH_KGDB=y
1435CONFIG_CMDLINE="" 1595CONFIG_CMDLINE=""
1436 1596
1437# 1597#
@@ -1439,51 +1599,103 @@ CONFIG_CMDLINE=""
1439# 1599#
1440# CONFIG_KEYS is not set 1600# CONFIG_KEYS is not set
1441# CONFIG_SECURITY is not set 1601# CONFIG_SECURITY is not set
1602# CONFIG_SECURITYFS is not set
1603# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1442CONFIG_XOR_BLOCKS=m 1604CONFIG_XOR_BLOCKS=m
1443CONFIG_ASYNC_CORE=m 1605CONFIG_ASYNC_CORE=m
1444CONFIG_ASYNC_MEMCPY=m 1606CONFIG_ASYNC_MEMCPY=m
1445CONFIG_ASYNC_XOR=m 1607CONFIG_ASYNC_XOR=m
1446CONFIG_CRYPTO=y 1608CONFIG_CRYPTO=y
1609
1610#
1611# Crypto core or helper
1612#
1613# CONFIG_CRYPTO_FIPS is not set
1447CONFIG_CRYPTO_ALGAPI=y 1614CONFIG_CRYPTO_ALGAPI=y
1448CONFIG_CRYPTO_ABLKCIPHER=m 1615CONFIG_CRYPTO_AEAD=y
1449CONFIG_CRYPTO_BLKCIPHER=m 1616CONFIG_CRYPTO_BLKCIPHER=y
1450CONFIG_CRYPTO_HASH=y 1617CONFIG_CRYPTO_HASH=y
1618CONFIG_CRYPTO_RNG=y
1451CONFIG_CRYPTO_MANAGER=y 1619CONFIG_CRYPTO_MANAGER=y
1620CONFIG_CRYPTO_GF128MUL=m
1621CONFIG_CRYPTO_NULL=m
1622CONFIG_CRYPTO_CRYPTD=m
1623CONFIG_CRYPTO_AUTHENC=m
1624# CONFIG_CRYPTO_TEST is not set
1625
1626#
1627# Authenticated Encryption with Associated Data
1628#
1629# CONFIG_CRYPTO_CCM is not set
1630# CONFIG_CRYPTO_GCM is not set
1631# CONFIG_CRYPTO_SEQIV is not set
1632
1633#
1634# Block modes
1635#
1636CONFIG_CRYPTO_CBC=m
1637# CONFIG_CRYPTO_CTR is not set
1638# CONFIG_CRYPTO_CTS is not set
1639CONFIG_CRYPTO_ECB=m
1640CONFIG_CRYPTO_LRW=m
1641CONFIG_CRYPTO_PCBC=m
1642# CONFIG_CRYPTO_XTS is not set
1643
1644#
1645# Hash modes
1646#
1452CONFIG_CRYPTO_HMAC=y 1647CONFIG_CRYPTO_HMAC=y
1453CONFIG_CRYPTO_XCBC=m 1648CONFIG_CRYPTO_XCBC=m
1454CONFIG_CRYPTO_NULL=m 1649
1650#
1651# Digest
1652#
1653CONFIG_CRYPTO_CRC32C=m
1455CONFIG_CRYPTO_MD4=m 1654CONFIG_CRYPTO_MD4=m
1456CONFIG_CRYPTO_MD5=y 1655CONFIG_CRYPTO_MD5=y
1656CONFIG_CRYPTO_MICHAEL_MIC=m
1657# CONFIG_CRYPTO_RMD128 is not set
1658# CONFIG_CRYPTO_RMD160 is not set
1659# CONFIG_CRYPTO_RMD256 is not set
1660# CONFIG_CRYPTO_RMD320 is not set
1457CONFIG_CRYPTO_SHA1=m 1661CONFIG_CRYPTO_SHA1=m
1458CONFIG_CRYPTO_SHA256=m 1662CONFIG_CRYPTO_SHA256=m
1459CONFIG_CRYPTO_SHA512=m 1663CONFIG_CRYPTO_SHA512=m
1460CONFIG_CRYPTO_WP512=m
1461CONFIG_CRYPTO_TGR192=m 1664CONFIG_CRYPTO_TGR192=m
1462CONFIG_CRYPTO_GF128MUL=m 1665CONFIG_CRYPTO_WP512=m
1463CONFIG_CRYPTO_ECB=m 1666
1464CONFIG_CRYPTO_CBC=m 1667#
1465CONFIG_CRYPTO_PCBC=m 1668# Ciphers
1466CONFIG_CRYPTO_LRW=m 1669#
1467CONFIG_CRYPTO_CRYPTD=m
1468CONFIG_CRYPTO_DES=m
1469CONFIG_CRYPTO_FCRYPT=m
1470CONFIG_CRYPTO_BLOWFISH=m
1471CONFIG_CRYPTO_TWOFISH=m
1472CONFIG_CRYPTO_TWOFISH_COMMON=m
1473CONFIG_CRYPTO_SERPENT=m
1474CONFIG_CRYPTO_AES=m 1670CONFIG_CRYPTO_AES=m
1671CONFIG_CRYPTO_ANUBIS=m
1672CONFIG_CRYPTO_ARC4=m
1673CONFIG_CRYPTO_BLOWFISH=m
1674CONFIG_CRYPTO_CAMELLIA=m
1475CONFIG_CRYPTO_CAST5=m 1675CONFIG_CRYPTO_CAST5=m
1476CONFIG_CRYPTO_CAST6=m 1676CONFIG_CRYPTO_CAST6=m
1477CONFIG_CRYPTO_TEA=m 1677CONFIG_CRYPTO_DES=m
1478CONFIG_CRYPTO_ARC4=m 1678CONFIG_CRYPTO_FCRYPT=m
1479CONFIG_CRYPTO_KHAZAD=m 1679CONFIG_CRYPTO_KHAZAD=m
1480CONFIG_CRYPTO_ANUBIS=m 1680# CONFIG_CRYPTO_SALSA20 is not set
1681# CONFIG_CRYPTO_SEED is not set
1682CONFIG_CRYPTO_SERPENT=m
1683CONFIG_CRYPTO_TEA=m
1684CONFIG_CRYPTO_TWOFISH=m
1685CONFIG_CRYPTO_TWOFISH_COMMON=m
1686
1687#
1688# Compression
1689#
1481CONFIG_CRYPTO_DEFLATE=m 1690CONFIG_CRYPTO_DEFLATE=m
1482CONFIG_CRYPTO_MICHAEL_MIC=m 1691# CONFIG_CRYPTO_LZO is not set
1483CONFIG_CRYPTO_CRC32C=m 1692
1484CONFIG_CRYPTO_CAMELLIA=m 1693#
1485# CONFIG_CRYPTO_TEST is not set 1694# Random Number Generation
1695#
1696# CONFIG_CRYPTO_ANSI_CPRNG is not set
1486CONFIG_CRYPTO_HW=y 1697CONFIG_CRYPTO_HW=y
1698# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1487 1699
1488# 1700#
1489# Library routines 1701# Library routines
@@ -1491,7 +1703,8 @@ CONFIG_CRYPTO_HW=y
1491CONFIG_BITREVERSE=y 1703CONFIG_BITREVERSE=y
1492# CONFIG_CRC_CCITT is not set 1704# CONFIG_CRC_CCITT is not set
1493CONFIG_CRC16=m 1705CONFIG_CRC16=m
1494# CONFIG_CRC_ITU_T is not set 1706# CONFIG_CRC_T10DIF is not set
1707CONFIG_CRC_ITU_T=m
1495CONFIG_CRC32=y 1708CONFIG_CRC32=y
1496# CONFIG_CRC7 is not set 1709# CONFIG_CRC7 is not set
1497CONFIG_LIBCRC32C=m 1710CONFIG_LIBCRC32C=m
diff --git a/arch/mips/include/asm/pci.h b/arch/mips/include/asm/pci.h
index 5510c53b7feb..053e4634acee 100644
--- a/arch/mips/include/asm/pci.h
+++ b/arch/mips/include/asm/pci.h
@@ -79,6 +79,11 @@ static inline void pcibios_penalize_isa_irq(int irq, int active)
79 /* We don't do dynamic PCI IRQ allocation */ 79 /* We don't do dynamic PCI IRQ allocation */
80} 80}
81 81
82#define HAVE_PCI_MMAP
83
84extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
85 enum pci_mmap_state mmap_state, int write_combine);
86
82/* 87/*
83 * Dynamic DMA mapping stuff. 88 * Dynamic DMA mapping stuff.
84 * MIPS has everything mapped statically. 89 * MIPS has everything mapped statically.
diff --git a/arch/mips/kernel/scall32-o32.S b/arch/mips/kernel/scall32-o32.S
index 759f68066b5d..d0916a55cd77 100644
--- a/arch/mips/kernel/scall32-o32.S
+++ b/arch/mips/kernel/scall32-o32.S
@@ -262,14 +262,11 @@ bad_alignment:
262 LEAF(sys_syscall) 262 LEAF(sys_syscall)
263 subu t0, a0, __NR_O32_Linux # check syscall number 263 subu t0, a0, __NR_O32_Linux # check syscall number
264 sltiu v0, t0, __NR_O32_Linux_syscalls + 1 264 sltiu v0, t0, __NR_O32_Linux_syscalls + 1
265 beqz t0, einval # do not recurse
265 sll t1, t0, 3 266 sll t1, t0, 3
266 beqz v0, einval 267 beqz v0, einval
267
268 lw t2, sys_call_table(t1) # syscall routine 268 lw t2, sys_call_table(t1) # syscall routine
269 269
270 li v1, 4000 - __NR_O32_Linux # index of sys_syscall
271 beq t0, v1, einval # do not recurse
272
273 /* Some syscalls like execve get their arguments from struct pt_regs 270 /* Some syscalls like execve get their arguments from struct pt_regs
274 and claim zero arguments in the syscall table. Thus we have to 271 and claim zero arguments in the syscall table. Thus we have to
275 assume the worst case and shuffle around all potential arguments. 272 assume the worst case and shuffle around all potential arguments.
@@ -627,7 +624,7 @@ einval: li v0, -ENOSYS
627 sys sys_pselect6 6 624 sys sys_pselect6 6
628 sys sys_ppoll 5 625 sys sys_ppoll 5
629 sys sys_unshare 1 626 sys sys_unshare 1
630 sys sys_splice 4 627 sys sys_splice 6
631 sys sys_sync_file_range 7 /* 4305 */ 628 sys sys_sync_file_range 7 /* 4305 */
632 sys sys_tee 4 629 sys sys_tee 4
633 sys sys_vmsplice 4 630 sys sys_vmsplice 4
diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S
index e266b3aa6560..30f3b6317a83 100644
--- a/arch/mips/kernel/scall64-n32.S
+++ b/arch/mips/kernel/scall64-n32.S
@@ -390,7 +390,7 @@ EXPORT(sysn32_call_table)
390 PTR sys_splice 390 PTR sys_splice
391 PTR sys_sync_file_range 391 PTR sys_sync_file_range
392 PTR sys_tee 392 PTR sys_tee
393 PTR sys_vmsplice /* 6270 */ 393 PTR compat_sys_vmsplice /* 6270 */
394 PTR sys_move_pages 394 PTR sys_move_pages
395 PTR compat_sys_set_robust_list 395 PTR compat_sys_set_robust_list
396 PTR compat_sys_get_robust_list 396 PTR compat_sys_get_robust_list
diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S
index 6c7ef8313ebd..fefef4af8595 100644
--- a/arch/mips/kernel/scall64-o32.S
+++ b/arch/mips/kernel/scall64-o32.S
@@ -174,14 +174,12 @@ not_o32_scall:
174 END(handle_sys) 174 END(handle_sys)
175 175
176LEAF(sys32_syscall) 176LEAF(sys32_syscall)
177 sltu v0, a0, __NR_O32_Linux + __NR_O32_Linux_syscalls + 1 177 subu t0, a0, __NR_O32_Linux # check syscall number
178 sltiu v0, t0, __NR_O32_Linux_syscalls + 1
179 beqz t0, einval # do not recurse
180 dsll t1, t0, 3
178 beqz v0, einval 181 beqz v0, einval
179 182 ld t2, sys_call_table(t1) # syscall routine
180 dsll v0, a0, 3
181 ld t2, (sys_call_table - (__NR_O32_Linux * 8))(v0)
182
183 li v1, 4000 # indirect syscall number
184 beq a0, v1, einval # do not recurse
185 183
186 move a0, a1 # shift argument registers 184 move a0, a1 # shift argument registers
187 move a1, a2 185 move a1, a2
@@ -198,7 +196,7 @@ LEAF(sys32_syscall)
198 jr t2 196 jr t2
199 /* Unreached */ 197 /* Unreached */
200 198
201einval: li v0, -EINVAL 199einval: li v0, -ENOSYS
202 jr ra 200 jr ra
203 END(sys32_syscall) 201 END(sys32_syscall)
204 202
@@ -512,7 +510,7 @@ sys_call_table:
512 PTR sys_splice 510 PTR sys_splice
513 PTR sys32_sync_file_range /* 4305 */ 511 PTR sys32_sync_file_range /* 4305 */
514 PTR sys_tee 512 PTR sys_tee
515 PTR sys_vmsplice 513 PTR compat_sys_vmsplice
516 PTR compat_sys_move_pages 514 PTR compat_sys_move_pages
517 PTR compat_sys_set_robust_list 515 PTR compat_sys_set_robust_list
518 PTR compat_sys_get_robust_list /* 4310 */ 516 PTR compat_sys_get_robust_list /* 4310 */
diff --git a/arch/mips/kernel/vpe.c b/arch/mips/kernel/vpe.c
index 972b2d2b8401..a1b3da6bad5c 100644
--- a/arch/mips/kernel/vpe.c
+++ b/arch/mips/kernel/vpe.c
@@ -1134,7 +1134,7 @@ static int vpe_release(struct inode *inode, struct file *filp)
1134 1134
1135 /* It's good to be able to run the SP and if it chokes have a look at 1135 /* It's good to be able to run the SP and if it chokes have a look at
1136 the /dev/rt?. But if we reset the pointer to the shared struct we 1136 the /dev/rt?. But if we reset the pointer to the shared struct we
1137 loose what has happened. So perhaps if garbage is sent to the vpe 1137 lose what has happened. So perhaps if garbage is sent to the vpe
1138 device, use it as a trigger for the reset. Hopefully a nice 1138 device, use it as a trigger for the reset. Hopefully a nice
1139 executable will be along shortly. */ 1139 executable will be along shortly. */
1140 if (ret < 0) 1140 if (ret < 0)
diff --git a/arch/mips/mti-malta/Makefile b/arch/mips/mti-malta/Makefile
index cef2db8d2225..32e847808df1 100644
--- a/arch/mips/mti-malta/Makefile
+++ b/arch/mips/mti-malta/Makefile
@@ -7,9 +7,8 @@
7# 7#
8obj-y := malta-amon.o malta-cmdline.o \ 8obj-y := malta-amon.o malta-cmdline.o \
9 malta-display.o malta-init.o malta-int.o \ 9 malta-display.o malta-init.o malta-int.o \
10 malta-memory.o malta-mtd.o \ 10 malta-memory.o malta-platform.o \
11 malta-platform.o malta-reset.o \ 11 malta-reset.o malta-setup.o malta-time.o
12 malta-setup.o malta-time.o
13 12
14obj-$(CONFIG_EARLY_PRINTK) += malta-console.o 13obj-$(CONFIG_EARLY_PRINTK) += malta-console.o
15obj-$(CONFIG_PCI) += malta-pci.o 14obj-$(CONFIG_PCI) += malta-pci.o
diff --git a/arch/mips/mti-malta/malta-mtd.c b/arch/mips/mti-malta/malta-mtd.c
deleted file mode 100644
index 8ad9bdf25dce..000000000000
--- a/arch/mips/mti-malta/malta-mtd.c
+++ /dev/null
@@ -1,63 +0,0 @@
1/*
2 * This file is subject to the terms and conditions of the GNU General Public
3 * License. See the file "COPYING" in the main directory of this archive
4 * for more details.
5 *
6 * Copyright (C) 2006 MIPS Technologies, Inc.
7 * written by Ralf Baechle <ralf@linux-mips.org>
8 */
9
10#include <linux/init.h>
11#include <linux/platform_device.h>
12#include <linux/mtd/partitions.h>
13#include <linux/mtd/physmap.h>
14#include <mtd/mtd-abi.h>
15
16static struct mtd_partition malta_mtd_partitions[] = {
17 {
18 .name = "YAMON",
19 .offset = 0x0,
20 .size = 0x100000,
21 .mask_flags = MTD_WRITEABLE
22 }, {
23 .name = "User FS",
24 .offset = 0x100000,
25 .size = 0x2e0000
26 }, {
27 .name = "Board Config",
28 .offset = 0x3e0000,
29 .size = 0x020000,
30 .mask_flags = MTD_WRITEABLE
31 }
32};
33
34static struct physmap_flash_data malta_flash_data = {
35 .width = 4,
36 .nr_parts = ARRAY_SIZE(malta_mtd_partitions),
37 .parts = malta_mtd_partitions
38};
39
40static struct resource malta_flash_resource = {
41 .start = 0x1e000000,
42 .end = 0x1e3fffff,
43 .flags = IORESOURCE_MEM
44};
45
46static struct platform_device malta_flash = {
47 .name = "physmap-flash",
48 .id = 0,
49 .dev = {
50 .platform_data = &malta_flash_data,
51 },
52 .num_resources = 1,
53 .resource = &malta_flash_resource,
54};
55
56static int __init malta_mtd_init(void)
57{
58 platform_device_register(&malta_flash);
59
60 return 0;
61}
62
63module_init(malta_mtd_init)
diff --git a/arch/mips/mti-malta/malta-platform.c b/arch/mips/mti-malta/malta-platform.c
index 83b9bab3cd3f..72e32a7715be 100644
--- a/arch/mips/mti-malta/malta-platform.c
+++ b/arch/mips/mti-malta/malta-platform.c
@@ -3,10 +3,14 @@
3 * License. See the file "COPYING" in the main directory of this archive 3 * License. See the file "COPYING" in the main directory of this archive
4 * for more details. 4 * for more details.
5 * 5 *
6 * Copyright (C) 2007 MIPS Technologies, Inc. 6 * Copyright (C) 2006, 07 MIPS Technologies, Inc.
7 * written by Ralf Baechle (ralf@linux-mips.org) 7 * written by Ralf Baechle (ralf@linux-mips.org)
8 * written by Ralf Baechle <ralf@linux-mips.org>
8 * 9 *
9 * Probe driver for the Malta's UART ports: 10 * Copyright (C) 2008 Wind River Systems, Inc.
11 * updated by Tiejun Chen <tiejun.chen@windriver.com>
12 *
13 * 1. Probe driver for the Malta's UART ports:
10 * 14 *
11 * o 2 ports in the SMC SuperIO 15 * o 2 ports in the SMC SuperIO
12 * o 1 port in the CBUS UART, a discrete 16550 which normally is only used 16 * o 1 port in the CBUS UART, a discrete 16550 which normally is only used
@@ -14,10 +18,17 @@
14 * 18 *
15 * We don't use 8250_platform.c on Malta as it would result in the CBUS 19 * We don't use 8250_platform.c on Malta as it would result in the CBUS
16 * UART becoming ttyS0. 20 * UART becoming ttyS0.
21 *
22 * 2. Register RTC-CMOS platform device on Malta.
17 */ 23 */
18#include <linux/module.h>
19#include <linux/init.h> 24#include <linux/init.h>
20#include <linux/serial_8250.h> 25#include <linux/serial_8250.h>
26#include <linux/mc146818rtc.h>
27#include <linux/module.h>
28#include <linux/mtd/partitions.h>
29#include <linux/mtd/physmap.h>
30#include <linux/platform_device.h>
31#include <mtd/mtd-abi.h>
21 32
22#define SMC_PORT(base, int) \ 33#define SMC_PORT(base, int) \
23{ \ 34{ \
@@ -45,21 +56,93 @@ static struct plat_serial8250_port uart8250_data[] = {
45 { }, 56 { },
46}; 57};
47 58
48static struct platform_device uart8250_device = { 59static struct platform_device malta_uart8250_device = {
49 .name = "serial8250", 60 .name = "serial8250",
50 .id = PLAT8250_DEV_PLATFORM2, 61 .id = PLAT8250_DEV_PLATFORM,
51 .dev = { 62 .dev = {
52 .platform_data = uart8250_data, 63 .platform_data = uart8250_data,
53 }, 64 },
54}; 65};
55 66
56static int __init uart8250_init(void) 67struct resource malta_rtc_resources[] = {
68 {
69 .start = RTC_PORT(0),
70 .end = RTC_PORT(7),
71 .flags = IORESOURCE_IO,
72 }, {
73 .start = RTC_IRQ,
74 .end = RTC_IRQ,
75 .flags = IORESOURCE_IRQ,
76 }
77};
78
79static struct platform_device malta_rtc_device = {
80 .name = "rtc_cmos",
81 .id = -1,
82 .resource = malta_rtc_resources,
83 .num_resources = ARRAY_SIZE(malta_rtc_resources),
84};
85
86static struct mtd_partition malta_mtd_partitions[] = {
87 {
88 .name = "YAMON",
89 .offset = 0x0,
90 .size = 0x100000,
91 .mask_flags = MTD_WRITEABLE
92 }, {
93 .name = "User FS",
94 .offset = 0x100000,
95 .size = 0x2e0000
96 }, {
97 .name = "Board Config",
98 .offset = 0x3e0000,
99 .size = 0x020000,
100 .mask_flags = MTD_WRITEABLE
101 }
102};
103
104static struct physmap_flash_data malta_flash_data = {
105 .width = 4,
106 .nr_parts = ARRAY_SIZE(malta_mtd_partitions),
107 .parts = malta_mtd_partitions
108};
109
110static struct resource malta_flash_resource = {
111 .start = 0x1e000000,
112 .end = 0x1e3fffff,
113 .flags = IORESOURCE_MEM
114};
115
116static struct platform_device malta_flash_device = {
117 .name = "physmap-flash",
118 .id = 0,
119 .dev = {
120 .platform_data = &malta_flash_data,
121 },
122 .num_resources = 1,
123 .resource = &malta_flash_resource,
124};
125
126static struct platform_device *malta_devices[] __initdata = {
127 &malta_uart8250_device,
128 &malta_rtc_device,
129 &malta_flash_device,
130};
131
132static int __init malta_add_devices(void)
57{ 133{
58 return platform_device_register(&uart8250_device); 134 int err;
59}
60 135
61module_init(uart8250_init); 136 err = platform_add_devices(malta_devices, ARRAY_SIZE(malta_devices));
137 if (err)
138 return err;
139
140 /*
141 * Set RTC to BCD mode to support current alarm code.
142 */
143 CMOS_WRITE(CMOS_READ(RTC_CONTROL) & ~RTC_DM_BINARY, RTC_CONTROL);
144
145 return 0;
146}
62 147
63MODULE_AUTHOR("Ralf Baechle <ralf@linux-mips.org>"); 148device_initcall(malta_add_devices);
64MODULE_LICENSE("GPL");
65MODULE_DESCRIPTION("8250 UART probe driver for the Malta CBUS UART");
diff --git a/arch/mips/pci/pci.c b/arch/mips/pci/pci.c
index a377e9d2d029..62cae740e250 100644
--- a/arch/mips/pci/pci.c
+++ b/arch/mips/pci/pci.c
@@ -354,6 +354,30 @@ EXPORT_SYMBOL(PCIBIOS_MIN_IO);
354EXPORT_SYMBOL(PCIBIOS_MIN_MEM); 354EXPORT_SYMBOL(PCIBIOS_MIN_MEM);
355#endif 355#endif
356 356
357int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
358 enum pci_mmap_state mmap_state, int write_combine)
359{
360 unsigned long prot;
361
362 /*
363 * I/O space can be accessed via normal processor loads and stores on
364 * this platform but for now we elect not to do this and portable
365 * drivers should not do this anyway.
366 */
367 if (mmap_state == pci_mmap_io)
368 return -EINVAL;
369
370 /*
371 * Ignore write-combine; for now only return uncached mappings.
372 */
373 prot = pgprot_val(vma->vm_page_prot);
374 prot = (prot & ~_CACHE_MASK) | _CACHE_UNCACHED;
375 vma->vm_page_prot = __pgprot(prot);
376
377 return remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff,
378 vma->vm_end - vma->vm_start, vma->vm_page_prot);
379}
380
357char * (*pcibios_plat_setup)(char *str) __devinitdata; 381char * (*pcibios_plat_setup)(char *str) __devinitdata;
358 382
359char *__devinit pcibios_setup(char *str) 383char *__devinit pcibios_setup(char *str)
diff --git a/arch/mn10300/kernel/entry.S b/arch/mn10300/kernel/entry.S
index b7cbb1487af4..62fba8aa9b6e 100644
--- a/arch/mn10300/kernel/entry.S
+++ b/arch/mn10300/kernel/entry.S
@@ -180,6 +180,7 @@ ENTRY(resume_userspace)
180 180
181#ifdef CONFIG_PREEMPT 181#ifdef CONFIG_PREEMPT
182ENTRY(resume_kernel) 182ENTRY(resume_kernel)
183 __cli
183 mov (TI_preempt_count,a2),d0 # non-zero preempt_count ? 184 mov (TI_preempt_count,a2),d0 # non-zero preempt_count ?
184 cmp 0,d0 185 cmp 0,d0
185 bne restore_all 186 bne restore_all
@@ -190,7 +191,7 @@ need_resched:
190 mov (REG_EPSW,fp),d0 191 mov (REG_EPSW,fp),d0
191 and EPSW_IM,d0 192 and EPSW_IM,d0
192 cmp EPSW_IM_7,d0 # interrupts off (exception path) ? 193 cmp EPSW_IM_7,d0 # interrupts off (exception path) ?
193 beq restore_all 194 bne restore_all
194 call preempt_schedule_irq[],0 195 call preempt_schedule_irq[],0
195 jmp need_resched 196 jmp need_resched
196#endif 197#endif
diff --git a/arch/mn10300/kernel/gdb-io-serial.c b/arch/mn10300/kernel/gdb-io-serial.c
index 9a6d4e8ebe73..11584c51acd9 100644
--- a/arch/mn10300/kernel/gdb-io-serial.c
+++ b/arch/mn10300/kernel/gdb-io-serial.c
@@ -99,6 +99,7 @@ int gdbstub_io_rx_char(unsigned char *_ch, int nonblock)
99 try_again: 99 try_again:
100 /* pull chars out of the buffer */ 100 /* pull chars out of the buffer */
101 ix = gdbstub_rx_outp; 101 ix = gdbstub_rx_outp;
102 barrier();
102 if (ix == gdbstub_rx_inp) { 103 if (ix == gdbstub_rx_inp) {
103 if (nonblock) 104 if (nonblock)
104 return -EAGAIN; 105 return -EAGAIN;
@@ -110,6 +111,7 @@ int gdbstub_io_rx_char(unsigned char *_ch, int nonblock)
110 111
111 ch = gdbstub_rx_buffer[ix++]; 112 ch = gdbstub_rx_buffer[ix++];
112 st = gdbstub_rx_buffer[ix++]; 113 st = gdbstub_rx_buffer[ix++];
114 barrier();
113 gdbstub_rx_outp = ix & 0x00000fff; 115 gdbstub_rx_outp = ix & 0x00000fff;
114 116
115 if (st & UART_LSR_BI) { 117 if (st & UART_LSR_BI) {
diff --git a/arch/mn10300/kernel/mn10300-serial.c b/arch/mn10300/kernel/mn10300-serial.c
index aa07d0cd1905..59b9c4bf9583 100644
--- a/arch/mn10300/kernel/mn10300-serial.c
+++ b/arch/mn10300/kernel/mn10300-serial.c
@@ -566,6 +566,11 @@ static void mn10300_serial_transmit_interrupt(struct mn10300_serial_port *port)
566{ 566{
567 _enter("%s", port->name); 567 _enter("%s", port->name);
568 568
569 if (!port->uart.info || !port->uart.info->port.tty) {
570 mn10300_serial_dis_tx_intr(port);
571 return;
572 }
573
569 if (uart_tx_stopped(&port->uart) || 574 if (uart_tx_stopped(&port->uart) ||
570 uart_circ_empty(&port->uart.info->xmit)) 575 uart_circ_empty(&port->uart.info->xmit))
571 mn10300_serial_dis_tx_intr(port); 576 mn10300_serial_dis_tx_intr(port);
diff --git a/arch/mn10300/kernel/module.c b/arch/mn10300/kernel/module.c
index 8fa36893df7a..6b287f2e8e84 100644
--- a/arch/mn10300/kernel/module.c
+++ b/arch/mn10300/kernel/module.c
@@ -1,6 +1,6 @@
1/* MN10300 Kernel module helper routines 1/* MN10300 Kernel module helper routines
2 * 2 *
3 * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved. 3 * Copyright (C) 2007, 2008 Red Hat, Inc. All Rights Reserved.
4 * Written by Mark Salter (msalter@redhat.com) 4 * Written by Mark Salter (msalter@redhat.com)
5 * - Derived from arch/i386/kernel/module.c 5 * - Derived from arch/i386/kernel/module.c
6 * 6 *
@@ -64,21 +64,6 @@ int module_frob_arch_sections(Elf_Ehdr *hdr,
64 return 0; 64 return 0;
65} 65}
66 66
67static uint32_t reloc_get16(uint8_t *p)
68{
69 return p[0] | (p[1] << 8);
70}
71
72static uint32_t reloc_get24(uint8_t *p)
73{
74 return reloc_get16(p) | (p[2] << 16);
75}
76
77static uint32_t reloc_get32(uint8_t *p)
78{
79 return reloc_get16(p) | (reloc_get16(p+2) << 16);
80}
81
82static void reloc_put16(uint8_t *p, uint32_t val) 67static void reloc_put16(uint8_t *p, uint32_t val)
83{ 68{
84 p[0] = val & 0xff; 69 p[0] = val & 0xff;
@@ -144,25 +129,19 @@ int apply_relocate_add(Elf32_Shdr *sechdrs,
144 relocation = sym->st_value + rel[i].r_addend; 129 relocation = sym->st_value + rel[i].r_addend;
145 130
146 switch (ELF32_R_TYPE(rel[i].r_info)) { 131 switch (ELF32_R_TYPE(rel[i].r_info)) {
147 /* for the first four relocation types, we add the 132 /* for the first four relocation types, we simply
148 * adjustment into the value at the location given */ 133 * store the adjustment at the location given */
149 case R_MN10300_32: 134 case R_MN10300_32:
150 value = reloc_get32(location); 135 reloc_put32(location, relocation);
151 value += relocation;
152 reloc_put32(location, value);
153 break; 136 break;
154 case R_MN10300_24: 137 case R_MN10300_24:
155 value = reloc_get24(location); 138 reloc_put24(location, relocation);
156 value += relocation;
157 reloc_put24(location, value);
158 break; 139 break;
159 case R_MN10300_16: 140 case R_MN10300_16:
160 value = reloc_get16(location); 141 reloc_put16(location, relocation);
161 value += relocation;
162 reloc_put16(location, value);
163 break; 142 break;
164 case R_MN10300_8: 143 case R_MN10300_8:
165 *location += relocation; 144 *location = relocation;
166 break; 145 break;
167 146
168 /* for the next three relocation types, we write the 147 /* for the next three relocation types, we write the
diff --git a/arch/mn10300/kernel/setup.c b/arch/mn10300/kernel/setup.c
index 017121ce896f..e1d88ab51008 100644
--- a/arch/mn10300/kernel/setup.c
+++ b/arch/mn10300/kernel/setup.c
@@ -161,7 +161,7 @@ void __init setup_arch(char **cmdline_p)
161 reserve the page it is occupying. */ 161 reserve the page it is occupying. */
162 if (CONFIG_INTERRUPT_VECTOR_BASE >= CONFIG_KERNEL_RAM_BASE_ADDRESS && 162 if (CONFIG_INTERRUPT_VECTOR_BASE >= CONFIG_KERNEL_RAM_BASE_ADDRESS &&
163 CONFIG_INTERRUPT_VECTOR_BASE < memory_end) 163 CONFIG_INTERRUPT_VECTOR_BASE < memory_end)
164 reserve_bootmem(CONFIG_INTERRUPT_VECTOR_BASE, 1, 164 reserve_bootmem(CONFIG_INTERRUPT_VECTOR_BASE, PAGE_SIZE,
165 BOOTMEM_DEFAULT); 165 BOOTMEM_DEFAULT);
166 166
167 reserve_bootmem(PAGE_ALIGN(PFN_PHYS(free_pfn)), bootmap_size, 167 reserve_bootmem(PAGE_ALIGN(PFN_PHYS(free_pfn)), bootmap_size,
diff --git a/arch/mn10300/kernel/vmlinux.lds.S b/arch/mn10300/kernel/vmlinux.lds.S
index a3e80f444f55..b8259668f7dc 100644
--- a/arch/mn10300/kernel/vmlinux.lds.S
+++ b/arch/mn10300/kernel/vmlinux.lds.S
@@ -11,6 +11,7 @@
11#define __VMLINUX_LDS__ 11#define __VMLINUX_LDS__
12#include <asm-generic/vmlinux.lds.h> 12#include <asm-generic/vmlinux.lds.h>
13#include <asm/thread_info.h> 13#include <asm/thread_info.h>
14#include <asm/page.h>
14 15
15OUTPUT_FORMAT("elf32-am33lin", "elf32-am33lin", "elf32-am33lin") 16OUTPUT_FORMAT("elf32-am33lin", "elf32-am33lin", "elf32-am33lin")
16OUTPUT_ARCH(mn10300) 17OUTPUT_ARCH(mn10300)
@@ -55,13 +56,13 @@ SECTIONS
55 CONSTRUCTORS 56 CONSTRUCTORS
56 } 57 }
57 58
58 . = ALIGN(4096); 59 . = ALIGN(PAGE_SIZE);
59 __nosave_begin = .; 60 __nosave_begin = .;
60 .data_nosave : { *(.data.nosave) } 61 .data_nosave : { *(.data.nosave) }
61 . = ALIGN(4096); 62 . = ALIGN(PAGE_SIZE);
62 __nosave_end = .; 63 __nosave_end = .;
63 64
64 . = ALIGN(4096); 65 . = ALIGN(PAGE_SIZE);
65 .data.page_aligned : { *(.data.idt) } 66 .data.page_aligned : { *(.data.idt) }
66 67
67 . = ALIGN(32); 68 . = ALIGN(32);
@@ -78,7 +79,7 @@ SECTIONS
78 .data.init_task : { *(.data.init_task) } 79 .data.init_task : { *(.data.init_task) }
79 80
80 /* might get freed after init */ 81 /* might get freed after init */
81 . = ALIGN(4096); 82 . = ALIGN(PAGE_SIZE);
82 .smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) { 83 .smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) {
83 __smp_locks = .; 84 __smp_locks = .;
84 *(.smp_locks) 85 *(.smp_locks)
@@ -86,7 +87,7 @@ SECTIONS
86 } 87 }
87 88
88 /* will be freed after init */ 89 /* will be freed after init */
89 . = ALIGN(4096); /* Init code and data */ 90 . = ALIGN(PAGE_SIZE); /* Init code and data */
90 __init_begin = .; 91 __init_begin = .;
91 .init.text : { 92 .init.text : {
92 _sinittext = .; 93 _sinittext = .;
@@ -120,17 +121,14 @@ SECTIONS
120 .exit.data : { *(.exit.data) } 121 .exit.data : { *(.exit.data) }
121 122
122#ifdef CONFIG_BLK_DEV_INITRD 123#ifdef CONFIG_BLK_DEV_INITRD
123 . = ALIGN(4096); 124 . = ALIGN(PAGE_SIZE);
124 __initramfs_start = .; 125 __initramfs_start = .;
125 .init.ramfs : { *(.init.ramfs) } 126 .init.ramfs : { *(.init.ramfs) }
126 __initramfs_end = .; 127 __initramfs_end = .;
127#endif 128#endif
128 129
129 . = ALIGN(32); 130 PERCPU(32)
130 __per_cpu_start = .; 131 . = ALIGN(PAGE_SIZE);
131 .data.percpu : { *(.data.percpu) }
132 __per_cpu_end = .;
133 . = ALIGN(4096);
134 __init_end = .; 132 __init_end = .;
135 /* freed after init ends here */ 133 /* freed after init ends here */
136 134
@@ -145,7 +143,7 @@ SECTIONS
145 _end = . ; 143 _end = . ;
146 144
147 /* This is where the kernel creates the early boot page tables */ 145 /* This is where the kernel creates the early boot page tables */
148 . = ALIGN(4096); 146 . = ALIGN(PAGE_SIZE);
149 pg0 = .; 147 pg0 = .;
150 148
151 /* Sections to be discarded */ 149 /* Sections to be discarded */
diff --git a/arch/powerpc/boot/dts/mpc8349emitx.dts b/arch/powerpc/boot/dts/mpc8349emitx.dts
index 2c9d54a35bc3..4bdbaf4993a1 100644
--- a/arch/powerpc/boot/dts/mpc8349emitx.dts
+++ b/arch/powerpc/boot/dts/mpc8349emitx.dts
@@ -91,6 +91,14 @@
91 interrupts = <18 0x8>; 91 interrupts = <18 0x8>;
92 interrupt-parent = <&ipic>; 92 interrupt-parent = <&ipic>;
93 }; 93 };
94
95 mcu_pio: mcu@a {
96 #gpio-cells = <2>;
97 compatible = "fsl,mc9s08qg8-mpc8349emitx",
98 "fsl,mcu-mpc8349emitx";
99 reg = <0x0a>;
100 gpio-controller;
101 };
94 }; 102 };
95 103
96 spi@7000 { 104 spi@7000 {
@@ -139,14 +147,6 @@
139 interrupt-parent = <&ipic>; 147 interrupt-parent = <&ipic>;
140 interrupts = <71 8>; 148 interrupts = <71 8>;
141 }; 149 };
142
143 mcu_pio: mcu@a {
144 #gpio-cells = <2>;
145 compatible = "fsl,mc9s08qg8-mpc8349emitx",
146 "fsl,mcu-mpc8349emitx";
147 reg = <0x0a>;
148 gpio-controller;
149 };
150 }; 150 };
151 151
152 usb@22000 { 152 usb@22000 {
diff --git a/arch/powerpc/configs/83xx/mpc834x_itx_defconfig b/arch/powerpc/configs/83xx/mpc834x_itx_defconfig
index e55ff7c47a36..07a674f5344e 100644
--- a/arch/powerpc/configs/83xx/mpc834x_itx_defconfig
+++ b/arch/powerpc/configs/83xx/mpc834x_itx_defconfig
@@ -723,7 +723,7 @@ CONFIG_CICADA_PHY=y
723# CONFIG_BROADCOM_PHY is not set 723# CONFIG_BROADCOM_PHY is not set
724# CONFIG_ICPLUS_PHY is not set 724# CONFIG_ICPLUS_PHY is not set
725# CONFIG_REALTEK_PHY is not set 725# CONFIG_REALTEK_PHY is not set
726# CONFIG_FIXED_PHY is not set 726CONFIG_FIXED_PHY=y
727# CONFIG_MDIO_BITBANG is not set 727# CONFIG_MDIO_BITBANG is not set
728# CONFIG_NET_ETHERNET is not set 728# CONFIG_NET_ETHERNET is not set
729CONFIG_NETDEV_1000=y 729CONFIG_NETDEV_1000=y
diff --git a/arch/powerpc/configs/mpc83xx_defconfig b/arch/powerpc/configs/mpc83xx_defconfig
index 15eb30c9b3f9..d582014b0a38 100644
--- a/arch/powerpc/configs/mpc83xx_defconfig
+++ b/arch/powerpc/configs/mpc83xx_defconfig
@@ -682,7 +682,7 @@ CONFIG_VITESSE_PHY=y
682# CONFIG_BROADCOM_PHY is not set 682# CONFIG_BROADCOM_PHY is not set
683CONFIG_ICPLUS_PHY=y 683CONFIG_ICPLUS_PHY=y
684# CONFIG_REALTEK_PHY is not set 684# CONFIG_REALTEK_PHY is not set
685# CONFIG_FIXED_PHY is not set 685CONFIG_FIXED_PHY=y
686# CONFIG_MDIO_BITBANG is not set 686# CONFIG_MDIO_BITBANG is not set
687CONFIG_NET_ETHERNET=y 687CONFIG_NET_ETHERNET=y
688CONFIG_MII=y 688CONFIG_MII=y
diff --git a/arch/powerpc/include/asm/kvm_ppc.h b/arch/powerpc/include/asm/kvm_ppc.h
index 8931ba729d2b..bb62ad876de3 100644
--- a/arch/powerpc/include/asm/kvm_ppc.h
+++ b/arch/powerpc/include/asm/kvm_ppc.h
@@ -104,4 +104,6 @@ static inline void kvmppc_set_pid(struct kvm_vcpu *vcpu, u32 new_pid)
104 } 104 }
105} 105}
106 106
107extern void kvmppc_core_destroy_mmu(struct kvm_vcpu *vcpu);
108
107#endif /* __POWERPC_KVM_PPC_H__ */ 109#endif /* __POWERPC_KVM_PPC_H__ */
diff --git a/arch/powerpc/kernel/cpu_setup_44x.S b/arch/powerpc/kernel/cpu_setup_44x.S
index 31c18b52affb..10b4ab1008af 100644
--- a/arch/powerpc/kernel/cpu_setup_44x.S
+++ b/arch/powerpc/kernel/cpu_setup_44x.S
@@ -40,6 +40,7 @@ _GLOBAL(__setup_cpu_460gt)
40 mtlr r4 40 mtlr r4
41 blr 41 blr
42 42
43_GLOBAL(__setup_cpu_440x5)
43_GLOBAL(__setup_cpu_440gx) 44_GLOBAL(__setup_cpu_440gx)
44_GLOBAL(__setup_cpu_440spe) 45_GLOBAL(__setup_cpu_440spe)
45 b __fixup_440A_mcheck 46 b __fixup_440A_mcheck
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c
index b1eb834bc0fc..7e8719504f39 100644
--- a/arch/powerpc/kernel/cputable.c
+++ b/arch/powerpc/kernel/cputable.c
@@ -39,6 +39,7 @@ extern void __setup_cpu_440epx(unsigned long offset, struct cpu_spec* spec);
39extern void __setup_cpu_440gx(unsigned long offset, struct cpu_spec* spec); 39extern void __setup_cpu_440gx(unsigned long offset, struct cpu_spec* spec);
40extern void __setup_cpu_440grx(unsigned long offset, struct cpu_spec* spec); 40extern void __setup_cpu_440grx(unsigned long offset, struct cpu_spec* spec);
41extern void __setup_cpu_440spe(unsigned long offset, struct cpu_spec* spec); 41extern void __setup_cpu_440spe(unsigned long offset, struct cpu_spec* spec);
42extern void __setup_cpu_440x5(unsigned long offset, struct cpu_spec* spec);
42extern void __setup_cpu_460ex(unsigned long offset, struct cpu_spec* spec); 43extern void __setup_cpu_460ex(unsigned long offset, struct cpu_spec* spec);
43extern void __setup_cpu_460gt(unsigned long offset, struct cpu_spec* spec); 44extern void __setup_cpu_460gt(unsigned long offset, struct cpu_spec* spec);
44extern void __setup_cpu_603(unsigned long offset, struct cpu_spec* spec); 45extern void __setup_cpu_603(unsigned long offset, struct cpu_spec* spec);
@@ -1500,6 +1501,8 @@ static struct cpu_spec __initdata cpu_specs[] = {
1500 .cpu_user_features = COMMON_USER_BOOKE, 1501 .cpu_user_features = COMMON_USER_BOOKE,
1501 .icache_bsize = 32, 1502 .icache_bsize = 32,
1502 .dcache_bsize = 32, 1503 .dcache_bsize = 32,
1504 .cpu_setup = __setup_cpu_440x5,
1505 .machine_check = machine_check_440A,
1503 .platform = "ppc440", 1506 .platform = "ppc440",
1504 }, 1507 },
1505 { /* 460EX */ 1508 { /* 460EX */
diff --git a/arch/powerpc/kernel/dma.c b/arch/powerpc/kernel/dma.c
index 1562daf8839a..3a6eaa876ee1 100644
--- a/arch/powerpc/kernel/dma.c
+++ b/arch/powerpc/kernel/dma.c
@@ -75,6 +75,7 @@ static int dma_direct_map_sg(struct device *dev, struct scatterlist *sgl,
75 for_each_sg(sgl, sg, nents, i) { 75 for_each_sg(sgl, sg, nents, i) {
76 sg->dma_address = sg_phys(sg) + get_dma_direct_offset(dev); 76 sg->dma_address = sg_phys(sg) + get_dma_direct_offset(dev);
77 sg->dma_length = sg->length; 77 sg->dma_length = sg->length;
78 __dma_sync_page(sg_page(sg), sg->offset, sg->length, direction);
78 } 79 }
79 80
80 return nents; 81 return nents;
diff --git a/arch/powerpc/kvm/44x_tlb.c b/arch/powerpc/kvm/44x_tlb.c
index 2e227a412bc2..ad72c6f9811f 100644
--- a/arch/powerpc/kvm/44x_tlb.c
+++ b/arch/powerpc/kvm/44x_tlb.c
@@ -124,6 +124,14 @@ static void kvmppc_44x_shadow_release(struct kvm_vcpu *vcpu,
124 } 124 }
125} 125}
126 126
127void kvmppc_core_destroy_mmu(struct kvm_vcpu *vcpu)
128{
129 int i;
130
131 for (i = 0; i <= tlb_44x_hwater; i++)
132 kvmppc_44x_shadow_release(vcpu, i);
133}
134
127void kvmppc_tlbe_set_modified(struct kvm_vcpu *vcpu, unsigned int i) 135void kvmppc_tlbe_set_modified(struct kvm_vcpu *vcpu, unsigned int i)
128{ 136{
129 vcpu->arch.shadow_tlb_mod[i] = 1; 137 vcpu->arch.shadow_tlb_mod[i] = 1;
diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c
index 90a6fc422b23..fda9baada132 100644
--- a/arch/powerpc/kvm/powerpc.c
+++ b/arch/powerpc/kvm/powerpc.c
@@ -238,6 +238,7 @@ int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
238 238
239void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu) 239void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
240{ 240{
241 kvmppc_core_destroy_mmu(vcpu);
241} 242}
242 243
243/* Note: clearing MSR[DE] just means that the debug interrupt will not be 244/* Note: clearing MSR[DE] just means that the debug interrupt will not be
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c
index b24e1d085557..1890fb085cde 100644
--- a/arch/powerpc/sysdev/mpic.c
+++ b/arch/powerpc/sysdev/mpic.c
@@ -600,7 +600,7 @@ static int irq_choose_cpu(unsigned int virt_irq)
600 cpuid = first_cpu(tmp); 600 cpuid = first_cpu(tmp);
601 } 601 }
602 602
603 return cpuid; 603 return get_hard_smp_processor_id(cpuid);
604} 604}
605#else 605#else
606static int irq_choose_cpu(unsigned int virt_irq) 606static int irq_choose_cpu(unsigned int virt_irq)
diff --git a/arch/s390/kvm/sigp.c b/arch/s390/kvm/sigp.c
index 170392687ce0..2a01b9e02801 100644
--- a/arch/s390/kvm/sigp.c
+++ b/arch/s390/kvm/sigp.c
@@ -237,6 +237,11 @@ int kvm_s390_handle_sigp(struct kvm_vcpu *vcpu)
237 u8 order_code; 237 u8 order_code;
238 int rc; 238 int rc;
239 239
240 /* sigp in userspace can exit */
241 if (vcpu->arch.sie_block->gpsw.mask & PSW_MASK_PSTATE)
242 return kvm_s390_inject_program_int(vcpu,
243 PGM_PRIVILEGED_OPERATION);
244
240 order_code = disp2; 245 order_code = disp2;
241 if (base2) 246 if (base2)
242 order_code += vcpu->arch.guest_gprs[base2]; 247 order_code += vcpu->arch.guest_gprs[base2];
diff --git a/arch/sparc/include/asm/bitops_32.h b/arch/sparc/include/asm/bitops_32.h
index 68b98a7e6454..9cf4ae0cd7ba 100644
--- a/arch/sparc/include/asm/bitops_32.h
+++ b/arch/sparc/include/asm/bitops_32.h
@@ -98,6 +98,7 @@ static inline void change_bit(unsigned long nr, volatile unsigned long *addr)
98#include <asm-generic/bitops/sched.h> 98#include <asm-generic/bitops/sched.h>
99#include <asm-generic/bitops/ffs.h> 99#include <asm-generic/bitops/ffs.h>
100#include <asm-generic/bitops/fls.h> 100#include <asm-generic/bitops/fls.h>
101#include <asm-generic/bitops/__fls.h>
101#include <asm-generic/bitops/fls64.h> 102#include <asm-generic/bitops/fls64.h>
102#include <asm-generic/bitops/hweight.h> 103#include <asm-generic/bitops/hweight.h>
103#include <asm-generic/bitops/lock.h> 104#include <asm-generic/bitops/lock.h>
diff --git a/arch/sparc64/kernel/ptrace.c b/arch/sparc64/kernel/ptrace.c
index f43adbc773ca..a941c610e7ce 100644
--- a/arch/sparc64/kernel/ptrace.c
+++ b/arch/sparc64/kernel/ptrace.c
@@ -1014,7 +1014,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data)
1014 break; 1014 break;
1015 1015
1016 case PTRACE_SETFPREGS64: 1016 case PTRACE_SETFPREGS64:
1017 ret = copy_regset_to_user(child, view, REGSET_FP, 1017 ret = copy_regset_from_user(child, view, REGSET_FP,
1018 0 * sizeof(u64), 1018 0 * sizeof(u64),
1019 33 * sizeof(u64), 1019 33 * sizeof(u64),
1020 fps); 1020 fps);
diff --git a/arch/sparc64/kernel/visemul.c b/arch/sparc64/kernel/visemul.c
index 9e05cb5cb855..b956fd71c131 100644
--- a/arch/sparc64/kernel/visemul.c
+++ b/arch/sparc64/kernel/visemul.c
@@ -131,7 +131,7 @@
131#define VIS_OPF_SHIFT 5 131#define VIS_OPF_SHIFT 5
132#define VIS_OPF_MASK (0x1ff << VIS_OPF_SHIFT) 132#define VIS_OPF_MASK (0x1ff << VIS_OPF_SHIFT)
133 133
134#define RS1(INSN) (((INSN) >> 24) & 0x1f) 134#define RS1(INSN) (((INSN) >> 14) & 0x1f)
135#define RS2(INSN) (((INSN) >> 0) & 0x1f) 135#define RS2(INSN) (((INSN) >> 0) & 0x1f)
136#define RD(INSN) (((INSN) >> 25) & 0x1f) 136#define RD(INSN) (((INSN) >> 25) & 0x1f)
137 137
@@ -445,7 +445,7 @@ static void pdist(struct pt_regs *regs, unsigned int insn)
445 unsigned long i; 445 unsigned long i;
446 446
447 rs1 = fpd_regval(f, RS1(insn)); 447 rs1 = fpd_regval(f, RS1(insn));
448 rs2 = fpd_regval(f, RS1(insn)); 448 rs2 = fpd_regval(f, RS2(insn));
449 rd = fpd_regaddr(f, RD(insn)); 449 rd = fpd_regaddr(f, RD(insn));
450 450
451 rd_val = *rd; 451 rd_val = *rd;
@@ -807,6 +807,8 @@ int vis_emul(struct pt_regs *regs, unsigned int insn)
807 if (get_user(insn, (u32 __user *) pc)) 807 if (get_user(insn, (u32 __user *) pc))
808 return -EFAULT; 808 return -EFAULT;
809 809
810 save_and_clear_fpu();
811
810 opf = (insn & VIS_OPF_MASK) >> VIS_OPF_SHIFT; 812 opf = (insn & VIS_OPF_MASK) >> VIS_OPF_SHIFT;
811 switch (opf) { 813 switch (opf) {
812 default: 814 default:
diff --git a/arch/sparc64/lib/user_fixup.c b/arch/sparc64/lib/user_fixup.c
index 19d1fdb17d0e..05a361b0a1a4 100644
--- a/arch/sparc64/lib/user_fixup.c
+++ b/arch/sparc64/lib/user_fixup.c
@@ -24,7 +24,7 @@ static unsigned long compute_size(unsigned long start, unsigned long size, unsig
24 if (fault_addr < start || fault_addr >= end) { 24 if (fault_addr < start || fault_addr >= end) {
25 *offset = 0; 25 *offset = 0;
26 } else { 26 } else {
27 *offset = start - fault_addr; 27 *offset = fault_addr - start;
28 size = end - fault_addr; 28 size = end - fault_addr;
29 } 29 }
30 return size; 30 return size;
diff --git a/arch/um/drivers/mconsole_kern.c b/arch/um/drivers/mconsole_kern.c
index 19d579d74d27..8f44ebb0dec8 100644
--- a/arch/um/drivers/mconsole_kern.c
+++ b/arch/um/drivers/mconsole_kern.c
@@ -16,6 +16,8 @@
16#include <linux/slab.h> 16#include <linux/slab.h>
17#include <linux/syscalls.h> 17#include <linux/syscalls.h>
18#include <linux/utsname.h> 18#include <linux/utsname.h>
19#include <linux/socket.h>
20#include <linux/un.h>
19#include <linux/workqueue.h> 21#include <linux/workqueue.h>
20#include <linux/mutex.h> 22#include <linux/mutex.h>
21#include <asm/uaccess.h> 23#include <asm/uaccess.h>
@@ -785,7 +787,7 @@ static int __init mconsole_init(void)
785 /* long to avoid size mismatch warnings from gcc */ 787 /* long to avoid size mismatch warnings from gcc */
786 long sock; 788 long sock;
787 int err; 789 int err;
788 char file[256]; 790 char file[UNIX_PATH_MAX];
789 791
790 if (umid_file_name("mconsole", file, sizeof(file))) 792 if (umid_file_name("mconsole", file, sizeof(file)))
791 return -1; 793 return -1;
diff --git a/arch/x86/include/asm/amd_iommu_types.h b/arch/x86/include/asm/amd_iommu_types.h
index 1a30c0440c6b..ac302a2fa339 100644
--- a/arch/x86/include/asm/amd_iommu_types.h
+++ b/arch/x86/include/asm/amd_iommu_types.h
@@ -251,13 +251,6 @@ struct amd_iommu {
251 /* Pointer to PCI device of this IOMMU */ 251 /* Pointer to PCI device of this IOMMU */
252 struct pci_dev *dev; 252 struct pci_dev *dev;
253 253
254 /*
255 * Capability pointer. There could be more than one IOMMU per PCI
256 * device function if there are more than one AMD IOMMU capability
257 * pointers.
258 */
259 u16 cap_ptr;
260
261 /* physical address of MMIO space */ 254 /* physical address of MMIO space */
262 u64 mmio_phys; 255 u64 mmio_phys;
263 /* virtual address of MMIO space */ 256 /* virtual address of MMIO space */
@@ -266,6 +259,13 @@ struct amd_iommu {
266 /* capabilities of that IOMMU read from ACPI */ 259 /* capabilities of that IOMMU read from ACPI */
267 u32 cap; 260 u32 cap;
268 261
262 /*
263 * Capability pointer. There could be more than one IOMMU per PCI
264 * device function if there are more than one AMD IOMMU capability
265 * pointers.
266 */
267 u16 cap_ptr;
268
269 /* pci domain of this IOMMU */ 269 /* pci domain of this IOMMU */
270 u16 pci_seg; 270 u16 pci_seg;
271 271
@@ -284,19 +284,19 @@ struct amd_iommu {
284 /* size of command buffer */ 284 /* size of command buffer */
285 u32 cmd_buf_size; 285 u32 cmd_buf_size;
286 286
287 /* event buffer virtual address */
288 u8 *evt_buf;
289 /* size of event buffer */ 287 /* size of event buffer */
290 u32 evt_buf_size; 288 u32 evt_buf_size;
289 /* event buffer virtual address */
290 u8 *evt_buf;
291 /* MSI number for event interrupt */ 291 /* MSI number for event interrupt */
292 u16 evt_msi_num; 292 u16 evt_msi_num;
293 293
294 /* if one, we need to send a completion wait command */
295 int need_sync;
296
297 /* true if interrupts for this IOMMU are already enabled */ 294 /* true if interrupts for this IOMMU are already enabled */
298 bool int_enabled; 295 bool int_enabled;
299 296
297 /* if one, we need to send a completion wait command */
298 int need_sync;
299
300 /* default dma_ops domain for that IOMMU */ 300 /* default dma_ops domain for that IOMMU */
301 struct dma_ops_domain *default_dom; 301 struct dma_ops_domain *default_dom;
302}; 302};
diff --git a/arch/x86/include/asm/dma-mapping.h b/arch/x86/include/asm/dma-mapping.h
index 7f225a4b2a26..097794ff6b79 100644
--- a/arch/x86/include/asm/dma-mapping.h
+++ b/arch/x86/include/asm/dma-mapping.h
@@ -71,15 +71,13 @@ static inline struct dma_mapping_ops *get_dma_ops(struct device *dev)
71/* Make sure we keep the same behaviour */ 71/* Make sure we keep the same behaviour */
72static inline int dma_mapping_error(struct device *dev, dma_addr_t dma_addr) 72static inline int dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
73{ 73{
74#ifdef CONFIG_X86_32 74#ifdef CONFIG_X86_64
75 return 0;
76#else
77 struct dma_mapping_ops *ops = get_dma_ops(dev); 75 struct dma_mapping_ops *ops = get_dma_ops(dev);
78 if (ops->mapping_error) 76 if (ops->mapping_error)
79 return ops->mapping_error(dev, dma_addr); 77 return ops->mapping_error(dev, dma_addr);
80 78
81 return (dma_addr == bad_dma_address);
82#endif 79#endif
80 return (dma_addr == bad_dma_address);
83} 81}
84 82
85#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) 83#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
diff --git a/arch/x86/include/asm/topology.h b/arch/x86/include/asm/topology.h
index 4850e4b02b61..ff386ff50ed7 100644
--- a/arch/x86/include/asm/topology.h
+++ b/arch/x86/include/asm/topology.h
@@ -239,7 +239,7 @@ struct pci_bus;
239void set_pci_bus_resources_arch_default(struct pci_bus *b); 239void set_pci_bus_resources_arch_default(struct pci_bus *b);
240 240
241#ifdef CONFIG_SMP 241#ifdef CONFIG_SMP
242#define mc_capable() (boot_cpu_data.x86_max_cores > 1) 242#define mc_capable() (cpus_weight(per_cpu(cpu_core_map, 0)) != nr_cpu_ids)
243#define smt_capable() (smp_num_siblings > 1) 243#define smt_capable() (smp_num_siblings > 1)
244#endif 244#endif
245 245
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c
index e4899e0e8787..a7b6dec6fc3f 100644
--- a/arch/x86/kernel/amd_iommu.c
+++ b/arch/x86/kernel/amd_iommu.c
@@ -187,6 +187,8 @@ static int iommu_queue_command(struct amd_iommu *iommu, struct iommu_cmd *cmd)
187 187
188 spin_lock_irqsave(&iommu->lock, flags); 188 spin_lock_irqsave(&iommu->lock, flags);
189 ret = __iommu_queue_command(iommu, cmd); 189 ret = __iommu_queue_command(iommu, cmd);
190 if (!ret)
191 iommu->need_sync = 1;
190 spin_unlock_irqrestore(&iommu->lock, flags); 192 spin_unlock_irqrestore(&iommu->lock, flags);
191 193
192 return ret; 194 return ret;
@@ -210,10 +212,13 @@ static int iommu_completion_wait(struct amd_iommu *iommu)
210 cmd.data[0] = CMD_COMPL_WAIT_INT_MASK; 212 cmd.data[0] = CMD_COMPL_WAIT_INT_MASK;
211 CMD_SET_TYPE(&cmd, CMD_COMPL_WAIT); 213 CMD_SET_TYPE(&cmd, CMD_COMPL_WAIT);
212 214
213 iommu->need_sync = 0;
214
215 spin_lock_irqsave(&iommu->lock, flags); 215 spin_lock_irqsave(&iommu->lock, flags);
216 216
217 if (!iommu->need_sync)
218 goto out;
219
220 iommu->need_sync = 0;
221
217 ret = __iommu_queue_command(iommu, &cmd); 222 ret = __iommu_queue_command(iommu, &cmd);
218 223
219 if (ret) 224 if (ret)
@@ -254,8 +259,6 @@ static int iommu_queue_inv_dev_entry(struct amd_iommu *iommu, u16 devid)
254 259
255 ret = iommu_queue_command(iommu, &cmd); 260 ret = iommu_queue_command(iommu, &cmd);
256 261
257 iommu->need_sync = 1;
258
259 return ret; 262 return ret;
260} 263}
261 264
@@ -281,8 +284,6 @@ static int iommu_queue_inv_iommu_pages(struct amd_iommu *iommu,
281 284
282 ret = iommu_queue_command(iommu, &cmd); 285 ret = iommu_queue_command(iommu, &cmd);
283 286
284 iommu->need_sync = 1;
285
286 return ret; 287 return ret;
287} 288}
288 289
@@ -343,7 +344,7 @@ static int iommu_map(struct protection_domain *dom,
343 u64 __pte, *pte, *page; 344 u64 __pte, *pte, *page;
344 345
345 bus_addr = PAGE_ALIGN(bus_addr); 346 bus_addr = PAGE_ALIGN(bus_addr);
346 phys_addr = PAGE_ALIGN(bus_addr); 347 phys_addr = PAGE_ALIGN(phys_addr);
347 348
348 /* only support 512GB address spaces for now */ 349 /* only support 512GB address spaces for now */
349 if (bus_addr > IOMMU_MAP_SIZE_L3 || !(prot & IOMMU_PROT_MASK)) 350 if (bus_addr > IOMMU_MAP_SIZE_L3 || !(prot & IOMMU_PROT_MASK))
@@ -599,7 +600,7 @@ static void dma_ops_free_pagetable(struct dma_ops_domain *dma_dom)
599 continue; 600 continue;
600 601
601 p2 = IOMMU_PTE_PAGE(p1[i]); 602 p2 = IOMMU_PTE_PAGE(p1[i]);
602 for (j = 0; j < 512; ++i) { 603 for (j = 0; j < 512; ++j) {
603 if (!IOMMU_PTE_PRESENT(p2[j])) 604 if (!IOMMU_PTE_PRESENT(p2[j]))
604 continue; 605 continue;
605 p3 = IOMMU_PTE_PAGE(p2[j]); 606 p3 = IOMMU_PTE_PAGE(p2[j]);
@@ -762,8 +763,6 @@ static void set_device_domain(struct amd_iommu *iommu,
762 write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); 763 write_unlock_irqrestore(&amd_iommu_devtable_lock, flags);
763 764
764 iommu_queue_inv_dev_entry(iommu, devid); 765 iommu_queue_inv_dev_entry(iommu, devid);
765
766 iommu->need_sync = 1;
767} 766}
768 767
769/***************************************************************************** 768/*****************************************************************************
@@ -858,6 +857,9 @@ static int get_device_resources(struct device *dev,
858 print_devid(_bdf, 1); 857 print_devid(_bdf, 1);
859 } 858 }
860 859
860 if (domain_for_device(_bdf) == NULL)
861 set_device_domain(*iommu, *domain, _bdf);
862
861 return 1; 863 return 1;
862} 864}
863 865
@@ -908,7 +910,7 @@ static void dma_ops_domain_unmap(struct amd_iommu *iommu,
908 if (address >= dom->aperture_size) 910 if (address >= dom->aperture_size)
909 return; 911 return;
910 912
911 WARN_ON(address & 0xfffULL || address > dom->aperture_size); 913 WARN_ON(address & ~PAGE_MASK || address >= dom->aperture_size);
912 914
913 pte = dom->pte_pages[IOMMU_PTE_L1_INDEX(address)]; 915 pte = dom->pte_pages[IOMMU_PTE_L1_INDEX(address)];
914 pte += IOMMU_PTE_L0_INDEX(address); 916 pte += IOMMU_PTE_L0_INDEX(address);
@@ -920,8 +922,8 @@ static void dma_ops_domain_unmap(struct amd_iommu *iommu,
920 922
921/* 923/*
922 * This function contains common code for mapping of a physically 924 * This function contains common code for mapping of a physically
923 * contiguous memory region into DMA address space. It is uses by all 925 * contiguous memory region into DMA address space. It is used by all
924 * mapping functions provided by this IOMMU driver. 926 * mapping functions provided with this IOMMU driver.
925 * Must be called with the domain lock held. 927 * Must be called with the domain lock held.
926 */ 928 */
927static dma_addr_t __map_single(struct device *dev, 929static dma_addr_t __map_single(struct device *dev,
@@ -981,7 +983,8 @@ static void __unmap_single(struct amd_iommu *iommu,
981 dma_addr_t i, start; 983 dma_addr_t i, start;
982 unsigned int pages; 984 unsigned int pages;
983 985
984 if ((dma_addr == 0) || (dma_addr + size > dma_dom->aperture_size)) 986 if ((dma_addr == bad_dma_address) ||
987 (dma_addr + size > dma_dom->aperture_size))
985 return; 988 return;
986 989
987 pages = iommu_num_pages(dma_addr, size, PAGE_SIZE); 990 pages = iommu_num_pages(dma_addr, size, PAGE_SIZE);
@@ -1031,8 +1034,7 @@ static dma_addr_t map_single(struct device *dev, phys_addr_t paddr,
1031 if (addr == bad_dma_address) 1034 if (addr == bad_dma_address)
1032 goto out; 1035 goto out;
1033 1036
1034 if (unlikely(iommu->need_sync)) 1037 iommu_completion_wait(iommu);
1035 iommu_completion_wait(iommu);
1036 1038
1037out: 1039out:
1038 spin_unlock_irqrestore(&domain->lock, flags); 1040 spin_unlock_irqrestore(&domain->lock, flags);
@@ -1060,8 +1062,7 @@ static void unmap_single(struct device *dev, dma_addr_t dma_addr,
1060 1062
1061 __unmap_single(iommu, domain->priv, dma_addr, size, dir); 1063 __unmap_single(iommu, domain->priv, dma_addr, size, dir);
1062 1064
1063 if (unlikely(iommu->need_sync)) 1065 iommu_completion_wait(iommu);
1064 iommu_completion_wait(iommu);
1065 1066
1066 spin_unlock_irqrestore(&domain->lock, flags); 1067 spin_unlock_irqrestore(&domain->lock, flags);
1067} 1068}
@@ -1127,8 +1128,7 @@ static int map_sg(struct device *dev, struct scatterlist *sglist,
1127 goto unmap; 1128 goto unmap;
1128 } 1129 }
1129 1130
1130 if (unlikely(iommu->need_sync)) 1131 iommu_completion_wait(iommu);
1131 iommu_completion_wait(iommu);
1132 1132
1133out: 1133out:
1134 spin_unlock_irqrestore(&domain->lock, flags); 1134 spin_unlock_irqrestore(&domain->lock, flags);
@@ -1173,8 +1173,7 @@ static void unmap_sg(struct device *dev, struct scatterlist *sglist,
1173 s->dma_address = s->dma_length = 0; 1173 s->dma_address = s->dma_length = 0;
1174 } 1174 }
1175 1175
1176 if (unlikely(iommu->need_sync)) 1176 iommu_completion_wait(iommu);
1177 iommu_completion_wait(iommu);
1178 1177
1179 spin_unlock_irqrestore(&domain->lock, flags); 1178 spin_unlock_irqrestore(&domain->lock, flags);
1180} 1179}
@@ -1225,8 +1224,7 @@ static void *alloc_coherent(struct device *dev, size_t size,
1225 goto out; 1224 goto out;
1226 } 1225 }
1227 1226
1228 if (unlikely(iommu->need_sync)) 1227 iommu_completion_wait(iommu);
1229 iommu_completion_wait(iommu);
1230 1228
1231out: 1229out:
1232 spin_unlock_irqrestore(&domain->lock, flags); 1230 spin_unlock_irqrestore(&domain->lock, flags);
@@ -1257,8 +1255,7 @@ static void free_coherent(struct device *dev, size_t size,
1257 1255
1258 __unmap_single(iommu, domain->priv, dma_addr, size, DMA_BIDIRECTIONAL); 1256 __unmap_single(iommu, domain->priv, dma_addr, size, DMA_BIDIRECTIONAL);
1259 1257
1260 if (unlikely(iommu->need_sync)) 1258 iommu_completion_wait(iommu);
1261 iommu_completion_wait(iommu);
1262 1259
1263 spin_unlock_irqrestore(&domain->lock, flags); 1260 spin_unlock_irqrestore(&domain->lock, flags);
1264 1261
diff --git a/arch/x86/kernel/mpparse.c b/arch/x86/kernel/mpparse.c
index f98f4e1dba09..0f4c1fd5a1f4 100644
--- a/arch/x86/kernel/mpparse.c
+++ b/arch/x86/kernel/mpparse.c
@@ -604,6 +604,9 @@ static void __init __get_smp_config(unsigned int early)
604 printk(KERN_INFO "Using ACPI for processor (LAPIC) " 604 printk(KERN_INFO "Using ACPI for processor (LAPIC) "
605 "configuration information\n"); 605 "configuration information\n");
606 606
607 if (!mpf)
608 return;
609
607 printk(KERN_INFO "Intel MultiProcessor Specification v1.%d\n", 610 printk(KERN_INFO "Intel MultiProcessor Specification v1.%d\n",
608 mpf->mpf_specification); 611 mpf->mpf_specification);
609#if defined(CONFIG_X86_LOCAL_APIC) && defined(CONFIG_X86_32) 612#if defined(CONFIG_X86_LOCAL_APIC) && defined(CONFIG_X86_32)
diff --git a/arch/x86/kernel/paravirt-spinlocks.c b/arch/x86/kernel/paravirt-spinlocks.c
index 0e9f1982b1dd..95777b0faa73 100644
--- a/arch/x86/kernel/paravirt-spinlocks.c
+++ b/arch/x86/kernel/paravirt-spinlocks.c
@@ -7,7 +7,8 @@
7 7
8#include <asm/paravirt.h> 8#include <asm/paravirt.h>
9 9
10static void default_spin_lock_flags(struct raw_spinlock *lock, unsigned long flags) 10static inline void
11default_spin_lock_flags(raw_spinlock_t *lock, unsigned long flags)
11{ 12{
12 __raw_spin_lock(lock); 13 __raw_spin_lock(lock);
13} 14}
diff --git a/arch/x86/kernel/pci-gart_64.c b/arch/x86/kernel/pci-gart_64.c
index a42b02b4df68..ba7ad83e20a8 100644
--- a/arch/x86/kernel/pci-gart_64.c
+++ b/arch/x86/kernel/pci-gart_64.c
@@ -123,6 +123,8 @@ static void free_iommu(unsigned long offset, int size)
123 123
124 spin_lock_irqsave(&iommu_bitmap_lock, flags); 124 spin_lock_irqsave(&iommu_bitmap_lock, flags);
125 iommu_area_free(iommu_gart_bitmap, offset, size); 125 iommu_area_free(iommu_gart_bitmap, offset, size);
126 if (offset >= next_bit)
127 next_bit = offset + size;
126 spin_unlock_irqrestore(&iommu_bitmap_lock, flags); 128 spin_unlock_irqrestore(&iommu_bitmap_lock, flags);
127} 129}
128 130
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index f1983d9477cd..410ddbc1aa2e 100644
--- a/arch/x86/kvm/mmu.c
+++ b/arch/x86/kvm/mmu.c
@@ -1038,13 +1038,13 @@ static int kvm_sync_page(struct kvm_vcpu *vcpu, struct kvm_mmu_page *sp)
1038 } 1038 }
1039 1039
1040 rmap_write_protect(vcpu->kvm, sp->gfn); 1040 rmap_write_protect(vcpu->kvm, sp->gfn);
1041 kvm_unlink_unsync_page(vcpu->kvm, sp);
1041 if (vcpu->arch.mmu.sync_page(vcpu, sp)) { 1042 if (vcpu->arch.mmu.sync_page(vcpu, sp)) {
1042 kvm_mmu_zap_page(vcpu->kvm, sp); 1043 kvm_mmu_zap_page(vcpu->kvm, sp);
1043 return 1; 1044 return 1;
1044 } 1045 }
1045 1046
1046 kvm_mmu_flush_tlb(vcpu); 1047 kvm_mmu_flush_tlb(vcpu);
1047 kvm_unlink_unsync_page(vcpu->kvm, sp);
1048 return 0; 1048 return 0;
1049} 1049}
1050 1050
diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h
index 613ec9aa674a..84eee43bbe74 100644
--- a/arch/x86/kvm/paging_tmpl.h
+++ b/arch/x86/kvm/paging_tmpl.h
@@ -331,6 +331,7 @@ static int FNAME(shadow_walk_entry)(struct kvm_shadow_walk *_sw,
331 r = kvm_read_guest_atomic(vcpu->kvm, gw->pte_gpa[level - 2], 331 r = kvm_read_guest_atomic(vcpu->kvm, gw->pte_gpa[level - 2],
332 &curr_pte, sizeof(curr_pte)); 332 &curr_pte, sizeof(curr_pte));
333 if (r || curr_pte != gw->ptes[level - 2]) { 333 if (r || curr_pte != gw->ptes[level - 2]) {
334 kvm_mmu_put_page(shadow_page, sptep);
334 kvm_release_pfn_clean(sw->pfn); 335 kvm_release_pfn_clean(sw->pfn);
335 sw->sptep = NULL; 336 sw->sptep = NULL;
336 return 1; 337 return 1;
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index d06b4dc0e2ea..a4018b01e1f9 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
@@ -3149,7 +3149,9 @@ static void vmx_intr_assist(struct kvm_vcpu *vcpu)
3149 3149
3150 if (cpu_has_virtual_nmis()) { 3150 if (cpu_has_virtual_nmis()) {
3151 if (vcpu->arch.nmi_pending && !vcpu->arch.nmi_injected) { 3151 if (vcpu->arch.nmi_pending && !vcpu->arch.nmi_injected) {
3152 if (vmx_nmi_enabled(vcpu)) { 3152 if (vcpu->arch.interrupt.pending) {
3153 enable_nmi_window(vcpu);
3154 } else if (vmx_nmi_enabled(vcpu)) {
3153 vcpu->arch.nmi_pending = false; 3155 vcpu->arch.nmi_pending = false;
3154 vcpu->arch.nmi_injected = true; 3156 vcpu->arch.nmi_injected = true;
3155 } else { 3157 } else {
diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c
index 022cd41ea9b4..202864ad49a7 100644
--- a/arch/x86/oprofile/nmi_int.c
+++ b/arch/x86/oprofile/nmi_int.c
@@ -401,14 +401,13 @@ static int __init ppro_init(char **cpu_type)
401 *cpu_type = "i386/pii"; 401 *cpu_type = "i386/pii";
402 break; 402 break;
403 case 6 ... 8: 403 case 6 ... 8:
404 case 10 ... 11:
404 *cpu_type = "i386/piii"; 405 *cpu_type = "i386/piii";
405 break; 406 break;
406 case 9: 407 case 9:
408 case 13:
407 *cpu_type = "i386/p6_mobile"; 409 *cpu_type = "i386/p6_mobile";
408 break; 410 break;
409 case 10 ... 13:
410 *cpu_type = "i386/p6";
411 break;
412 case 14: 411 case 14:
413 *cpu_type = "i386/core"; 412 *cpu_type = "i386/core";
414 break; 413 break;
diff --git a/arch/x86/oprofile/op_model_ppro.c b/arch/x86/oprofile/op_model_ppro.c
index 716d26f0e5d4..e9f80c744cf3 100644
--- a/arch/x86/oprofile/op_model_ppro.c
+++ b/arch/x86/oprofile/op_model_ppro.c
@@ -156,6 +156,8 @@ static void ppro_start(struct op_msrs const * const msrs)
156 unsigned int low, high; 156 unsigned int low, high;
157 int i; 157 int i;
158 158
159 if (!reset_value)
160 return;
159 for (i = 0; i < num_counters; ++i) { 161 for (i = 0; i < num_counters; ++i) {
160 if (reset_value[i]) { 162 if (reset_value[i]) {
161 CTRL_READ(low, high, msrs, i); 163 CTRL_READ(low, high, msrs, i);
@@ -171,6 +173,8 @@ static void ppro_stop(struct op_msrs const * const msrs)
171 unsigned int low, high; 173 unsigned int low, high;
172 int i; 174 int i;
173 175
176 if (!reset_value)
177 return;
174 for (i = 0; i < num_counters; ++i) { 178 for (i = 0; i < num_counters; ++i) {
175 if (!reset_value[i]) 179 if (!reset_value[i])
176 continue; 180 continue;
diff --git a/block/blk-barrier.c b/block/blk-barrier.c
index 5c99ff8d2db8..6e72d661ae42 100644
--- a/block/blk-barrier.c
+++ b/block/blk-barrier.c
@@ -161,7 +161,7 @@ static inline struct request *start_ordered(struct request_queue *q,
161 /* 161 /*
162 * Prep proxy barrier request. 162 * Prep proxy barrier request.
163 */ 163 */
164 blkdev_dequeue_request(rq); 164 elv_dequeue_request(q, rq);
165 q->orig_bar_rq = rq; 165 q->orig_bar_rq = rq;
166 rq = &q->bar_rq; 166 rq = &q->bar_rq;
167 blk_rq_init(q, rq); 167 blk_rq_init(q, rq);
@@ -219,7 +219,7 @@ int blk_do_ordered(struct request_queue *q, struct request **rqp)
219 * This can happen when the queue switches to 219 * This can happen when the queue switches to
220 * ORDERED_NONE while this request is on it. 220 * ORDERED_NONE while this request is on it.
221 */ 221 */
222 blkdev_dequeue_request(rq); 222 elv_dequeue_request(q, rq);
223 if (__blk_end_request(rq, -EOPNOTSUPP, 223 if (__blk_end_request(rq, -EOPNOTSUPP,
224 blk_rq_bytes(rq))) 224 blk_rq_bytes(rq)))
225 BUG(); 225 BUG();
diff --git a/block/blk-core.c b/block/blk-core.c
index 10e8a64a5a5b..c36aa98fafa3 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -592,7 +592,7 @@ blk_init_queue_node(request_fn_proc *rfn, spinlock_t *lock, int node_id)
592 1 << QUEUE_FLAG_STACKABLE); 592 1 << QUEUE_FLAG_STACKABLE);
593 q->queue_lock = lock; 593 q->queue_lock = lock;
594 594
595 blk_queue_segment_boundary(q, 0xffffffff); 595 blk_queue_segment_boundary(q, BLK_SEG_BOUNDARY_MASK);
596 596
597 blk_queue_make_request(q, __make_request); 597 blk_queue_make_request(q, __make_request);
598 blk_queue_max_segment_size(q, MAX_SEGMENT_SIZE); 598 blk_queue_max_segment_size(q, MAX_SEGMENT_SIZE);
@@ -1637,6 +1637,28 @@ int blk_insert_cloned_request(struct request_queue *q, struct request *rq)
1637EXPORT_SYMBOL_GPL(blk_insert_cloned_request); 1637EXPORT_SYMBOL_GPL(blk_insert_cloned_request);
1638 1638
1639/** 1639/**
1640 * blkdev_dequeue_request - dequeue request and start timeout timer
1641 * @req: request to dequeue
1642 *
1643 * Dequeue @req and start timeout timer on it. This hands off the
1644 * request to the driver.
1645 *
1646 * Block internal functions which don't want to start timer should
1647 * call elv_dequeue_request().
1648 */
1649void blkdev_dequeue_request(struct request *req)
1650{
1651 elv_dequeue_request(req->q, req);
1652
1653 /*
1654 * We are now handing the request to the hardware, add the
1655 * timeout handler.
1656 */
1657 blk_add_timer(req);
1658}
1659EXPORT_SYMBOL(blkdev_dequeue_request);
1660
1661/**
1640 * __end_that_request_first - end I/O on a request 1662 * __end_that_request_first - end I/O on a request
1641 * @req: the request being processed 1663 * @req: the request being processed
1642 * @error: %0 for success, < %0 for error 1664 * @error: %0 for success, < %0 for error
@@ -1774,7 +1796,7 @@ static void end_that_request_last(struct request *req, int error)
1774 blk_queue_end_tag(req->q, req); 1796 blk_queue_end_tag(req->q, req);
1775 1797
1776 if (blk_queued_rq(req)) 1798 if (blk_queued_rq(req))
1777 blkdev_dequeue_request(req); 1799 elv_dequeue_request(req->q, req);
1778 1800
1779 if (unlikely(laptop_mode) && blk_fs_request(req)) 1801 if (unlikely(laptop_mode) && blk_fs_request(req))
1780 laptop_io_completion(); 1802 laptop_io_completion();
diff --git a/block/blk-map.c b/block/blk-map.c
index 0f4b4b881811..2990447f45e9 100644
--- a/block/blk-map.c
+++ b/block/blk-map.c
@@ -224,7 +224,7 @@ int blk_rq_map_user_iov(struct request_queue *q, struct request *rq,
224 */ 224 */
225 bio_get(bio); 225 bio_get(bio);
226 bio_endio(bio, 0); 226 bio_endio(bio, 0);
227 bio_unmap_user(bio); 227 __blk_rq_unmap_user(bio);
228 return -EINVAL; 228 return -EINVAL;
229 } 229 }
230 230
diff --git a/block/blk-settings.c b/block/blk-settings.c
index 41392fbe19ff..afa55e14e278 100644
--- a/block/blk-settings.c
+++ b/block/blk-settings.c
@@ -125,6 +125,9 @@ void blk_queue_make_request(struct request_queue *q, make_request_fn *mfn)
125 q->nr_requests = BLKDEV_MAX_RQ; 125 q->nr_requests = BLKDEV_MAX_RQ;
126 blk_queue_max_phys_segments(q, MAX_PHYS_SEGMENTS); 126 blk_queue_max_phys_segments(q, MAX_PHYS_SEGMENTS);
127 blk_queue_max_hw_segments(q, MAX_HW_SEGMENTS); 127 blk_queue_max_hw_segments(q, MAX_HW_SEGMENTS);
128 blk_queue_segment_boundary(q, BLK_SEG_BOUNDARY_MASK);
129 blk_queue_max_segment_size(q, MAX_SEGMENT_SIZE);
130
128 q->make_request_fn = mfn; 131 q->make_request_fn = mfn;
129 q->backing_dev_info.ra_pages = 132 q->backing_dev_info.ra_pages =
130 (VM_MAX_READAHEAD * 1024) / PAGE_CACHE_SIZE; 133 (VM_MAX_READAHEAD * 1024) / PAGE_CACHE_SIZE;
@@ -314,6 +317,7 @@ void blk_queue_stack_limits(struct request_queue *t, struct request_queue *b)
314 /* zero is "infinity" */ 317 /* zero is "infinity" */
315 t->max_sectors = min_not_zero(t->max_sectors, b->max_sectors); 318 t->max_sectors = min_not_zero(t->max_sectors, b->max_sectors);
316 t->max_hw_sectors = min_not_zero(t->max_hw_sectors, b->max_hw_sectors); 319 t->max_hw_sectors = min_not_zero(t->max_hw_sectors, b->max_hw_sectors);
320 t->seg_boundary_mask = min_not_zero(t->seg_boundary_mask, b->seg_boundary_mask);
317 321
318 t->max_phys_segments = min(t->max_phys_segments, b->max_phys_segments); 322 t->max_phys_segments = min(t->max_phys_segments, b->max_phys_segments);
319 t->max_hw_segments = min(t->max_hw_segments, b->max_hw_segments); 323 t->max_hw_segments = min(t->max_hw_segments, b->max_hw_segments);
diff --git a/block/bsg.c b/block/bsg.c
index e8bd2475682a..e73e50daf3d0 100644
--- a/block/bsg.c
+++ b/block/bsg.c
@@ -202,6 +202,8 @@ static int blk_fill_sgv4_hdr_rq(struct request_queue *q, struct request *rq,
202 rq->timeout = q->sg_timeout; 202 rq->timeout = q->sg_timeout;
203 if (!rq->timeout) 203 if (!rq->timeout)
204 rq->timeout = BLK_DEFAULT_SG_TIMEOUT; 204 rq->timeout = BLK_DEFAULT_SG_TIMEOUT;
205 if (rq->timeout < BLK_MIN_SG_TIMEOUT)
206 rq->timeout = BLK_MIN_SG_TIMEOUT;
205 207
206 return 0; 208 return 0;
207} 209}
diff --git a/block/compat_ioctl.c b/block/compat_ioctl.c
index 3d3e7a46f38c..67eb93cff699 100644
--- a/block/compat_ioctl.c
+++ b/block/compat_ioctl.c
@@ -677,6 +677,29 @@ static int compat_blkdev_driver_ioctl(struct block_device *bdev, fmode_t mode,
677 case DVD_WRITE_STRUCT: 677 case DVD_WRITE_STRUCT:
678 case DVD_AUTH: 678 case DVD_AUTH:
679 arg = (unsigned long)compat_ptr(arg); 679 arg = (unsigned long)compat_ptr(arg);
680 /* These intepret arg as an unsigned long, not as a pointer,
681 * so we must not do compat_ptr() conversion. */
682 case HDIO_SET_MULTCOUNT:
683 case HDIO_SET_UNMASKINTR:
684 case HDIO_SET_KEEPSETTINGS:
685 case HDIO_SET_32BIT:
686 case HDIO_SET_NOWERR:
687 case HDIO_SET_DMA:
688 case HDIO_SET_PIO_MODE:
689 case HDIO_SET_NICE:
690 case HDIO_SET_WCACHE:
691 case HDIO_SET_ACOUSTIC:
692 case HDIO_SET_BUSSTATE:
693 case HDIO_SET_ADDRESS:
694 case CDROMEJECT_SW:
695 case CDROM_SET_OPTIONS:
696 case CDROM_CLEAR_OPTIONS:
697 case CDROM_SELECT_SPEED:
698 case CDROM_SELECT_DISC:
699 case CDROM_MEDIA_CHANGED:
700 case CDROM_DRIVE_STATUS:
701 case CDROM_LOCKDOOR:
702 case CDROM_DEBUG:
680 break; 703 break;
681 default: 704 default:
682 /* unknown ioctl number */ 705 /* unknown ioctl number */
@@ -699,8 +722,14 @@ long compat_blkdev_ioctl(struct file *file, unsigned cmd, unsigned long arg)
699 struct backing_dev_info *bdi; 722 struct backing_dev_info *bdi;
700 loff_t size; 723 loff_t size;
701 724
725 /*
726 * O_NDELAY can be altered using fcntl(.., F_SETFL, ..), so we have
727 * to updated it before every ioctl.
728 */
702 if (file->f_flags & O_NDELAY) 729 if (file->f_flags & O_NDELAY)
703 mode |= FMODE_NDELAY_NOW; 730 mode |= FMODE_NDELAY;
731 else
732 mode &= ~FMODE_NDELAY;
704 733
705 switch (cmd) { 734 switch (cmd) {
706 case HDIO_GETGEO: 735 case HDIO_GETGEO:
diff --git a/block/elevator.c b/block/elevator.c
index 9ac82dde99dd..a6951f76ba0c 100644
--- a/block/elevator.c
+++ b/block/elevator.c
@@ -844,14 +844,7 @@ void elv_dequeue_request(struct request_queue *q, struct request *rq)
844 */ 844 */
845 if (blk_account_rq(rq)) 845 if (blk_account_rq(rq))
846 q->in_flight++; 846 q->in_flight++;
847
848 /*
849 * We are now handing the request to the hardware, add the
850 * timeout handler.
851 */
852 blk_add_timer(rq);
853} 847}
854EXPORT_SYMBOL(elv_dequeue_request);
855 848
856int elv_queue_empty(struct request_queue *q) 849int elv_queue_empty(struct request_queue *q)
857{ 850{
diff --git a/block/genhd.c b/block/genhd.c
index 27549e470da5..2f7feda61e35 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -1102,6 +1102,7 @@ struct gendisk *alloc_disk_node(int minors, int node_id)
1102 kfree(disk); 1102 kfree(disk);
1103 return NULL; 1103 return NULL;
1104 } 1104 }
1105 disk->node_id = node_id;
1105 if (disk_expand_part_tbl(disk, 0)) { 1106 if (disk_expand_part_tbl(disk, 0)) {
1106 free_part_stats(&disk->part0); 1107 free_part_stats(&disk->part0);
1107 kfree(disk); 1108 kfree(disk);
@@ -1116,7 +1117,6 @@ struct gendisk *alloc_disk_node(int minors, int node_id)
1116 device_initialize(disk_to_dev(disk)); 1117 device_initialize(disk_to_dev(disk));
1117 INIT_WORK(&disk->async_notify, 1118 INIT_WORK(&disk->async_notify,
1118 media_change_notify_thread); 1119 media_change_notify_thread);
1119 disk->node_id = node_id;
1120 } 1120 }
1121 return disk; 1121 return disk;
1122} 1122}
diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c
index 5963cf91a3a0..d0bb92cbefb9 100644
--- a/block/scsi_ioctl.c
+++ b/block/scsi_ioctl.c
@@ -208,6 +208,8 @@ static int blk_fill_sghdr_rq(struct request_queue *q, struct request *rq,
208 rq->timeout = q->sg_timeout; 208 rq->timeout = q->sg_timeout;
209 if (!rq->timeout) 209 if (!rq->timeout)
210 rq->timeout = BLK_DEFAULT_SG_TIMEOUT; 210 rq->timeout = BLK_DEFAULT_SG_TIMEOUT;
211 if (rq->timeout < BLK_MIN_SG_TIMEOUT)
212 rq->timeout = BLK_MIN_SG_TIMEOUT;
211 213
212 return 0; 214 return 0;
213} 215}
diff --git a/crypto/Kconfig b/crypto/Kconfig
index 39dbd8e4dde1..dc20a34ba5ef 100644
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
@@ -31,35 +31,63 @@ config CRYPTO_FIPS
31 31
32config CRYPTO_ALGAPI 32config CRYPTO_ALGAPI
33 tristate 33 tristate
34 select CRYPTO_ALGAPI2
34 help 35 help
35 This option provides the API for cryptographic algorithms. 36 This option provides the API for cryptographic algorithms.
36 37
38config CRYPTO_ALGAPI2
39 tristate
40
37config CRYPTO_AEAD 41config CRYPTO_AEAD
38 tristate 42 tristate
43 select CRYPTO_AEAD2
39 select CRYPTO_ALGAPI 44 select CRYPTO_ALGAPI
40 45
46config CRYPTO_AEAD2
47 tristate
48 select CRYPTO_ALGAPI2
49
41config CRYPTO_BLKCIPHER 50config CRYPTO_BLKCIPHER
42 tristate 51 tristate
52 select CRYPTO_BLKCIPHER2
43 select CRYPTO_ALGAPI 53 select CRYPTO_ALGAPI
44 select CRYPTO_RNG 54
55config CRYPTO_BLKCIPHER2
56 tristate
57 select CRYPTO_ALGAPI2
58 select CRYPTO_RNG2
45 59
46config CRYPTO_HASH 60config CRYPTO_HASH
47 tristate 61 tristate
62 select CRYPTO_HASH2
48 select CRYPTO_ALGAPI 63 select CRYPTO_ALGAPI
49 64
65config CRYPTO_HASH2
66 tristate
67 select CRYPTO_ALGAPI2
68
50config CRYPTO_RNG 69config CRYPTO_RNG
51 tristate 70 tristate
71 select CRYPTO_RNG2
52 select CRYPTO_ALGAPI 72 select CRYPTO_ALGAPI
53 73
74config CRYPTO_RNG2
75 tristate
76 select CRYPTO_ALGAPI2
77
54config CRYPTO_MANAGER 78config CRYPTO_MANAGER
55 tristate "Cryptographic algorithm manager" 79 tristate "Cryptographic algorithm manager"
56 select CRYPTO_AEAD 80 select CRYPTO_MANAGER2
57 select CRYPTO_HASH
58 select CRYPTO_BLKCIPHER
59 help 81 help
60 Create default cryptographic template instantiations such as 82 Create default cryptographic template instantiations such as
61 cbc(aes). 83 cbc(aes).
62 84
85config CRYPTO_MANAGER2
86 def_tristate CRYPTO_MANAGER || (CRYPTO_MANAGER!=n && CRYPTO_ALGAPI=y)
87 select CRYPTO_AEAD2
88 select CRYPTO_HASH2
89 select CRYPTO_BLKCIPHER2
90
63config CRYPTO_GF128MUL 91config CRYPTO_GF128MUL
64 tristate "GF(2^128) multiplication functions (EXPERIMENTAL)" 92 tristate "GF(2^128) multiplication functions (EXPERIMENTAL)"
65 depends on EXPERIMENTAL 93 depends on EXPERIMENTAL
diff --git a/crypto/Makefile b/crypto/Makefile
index 5862b807334e..cd4a4ed078ff 100644
--- a/crypto/Makefile
+++ b/crypto/Makefile
@@ -9,24 +9,24 @@ obj-$(CONFIG_CRYPTO_FIPS) += fips.o
9 9
10crypto_algapi-$(CONFIG_PROC_FS) += proc.o 10crypto_algapi-$(CONFIG_PROC_FS) += proc.o
11crypto_algapi-objs := algapi.o scatterwalk.o $(crypto_algapi-y) 11crypto_algapi-objs := algapi.o scatterwalk.o $(crypto_algapi-y)
12obj-$(CONFIG_CRYPTO_ALGAPI) += crypto_algapi.o 12obj-$(CONFIG_CRYPTO_ALGAPI2) += crypto_algapi.o
13 13
14obj-$(CONFIG_CRYPTO_AEAD) += aead.o 14obj-$(CONFIG_CRYPTO_AEAD2) += aead.o
15 15
16crypto_blkcipher-objs := ablkcipher.o 16crypto_blkcipher-objs := ablkcipher.o
17crypto_blkcipher-objs += blkcipher.o 17crypto_blkcipher-objs += blkcipher.o
18obj-$(CONFIG_CRYPTO_BLKCIPHER) += crypto_blkcipher.o 18obj-$(CONFIG_CRYPTO_BLKCIPHER2) += crypto_blkcipher.o
19obj-$(CONFIG_CRYPTO_BLKCIPHER) += chainiv.o 19obj-$(CONFIG_CRYPTO_BLKCIPHER2) += chainiv.o
20obj-$(CONFIG_CRYPTO_BLKCIPHER) += eseqiv.o 20obj-$(CONFIG_CRYPTO_BLKCIPHER2) += eseqiv.o
21obj-$(CONFIG_CRYPTO_SEQIV) += seqiv.o 21obj-$(CONFIG_CRYPTO_SEQIV) += seqiv.o
22 22
23crypto_hash-objs := hash.o 23crypto_hash-objs := hash.o
24crypto_hash-objs += ahash.o 24crypto_hash-objs += ahash.o
25obj-$(CONFIG_CRYPTO_HASH) += crypto_hash.o 25obj-$(CONFIG_CRYPTO_HASH2) += crypto_hash.o
26 26
27cryptomgr-objs := algboss.o testmgr.o 27cryptomgr-objs := algboss.o testmgr.o
28 28
29obj-$(CONFIG_CRYPTO_MANAGER) += cryptomgr.o 29obj-$(CONFIG_CRYPTO_MANAGER2) += cryptomgr.o
30obj-$(CONFIG_CRYPTO_HMAC) += hmac.o 30obj-$(CONFIG_CRYPTO_HMAC) += hmac.o
31obj-$(CONFIG_CRYPTO_XCBC) += xcbc.o 31obj-$(CONFIG_CRYPTO_XCBC) += xcbc.o
32obj-$(CONFIG_CRYPTO_NULL) += crypto_null.o 32obj-$(CONFIG_CRYPTO_NULL) += crypto_null.o
@@ -73,8 +73,8 @@ obj-$(CONFIG_CRYPTO_MICHAEL_MIC) += michael_mic.o
73obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o 73obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o
74obj-$(CONFIG_CRYPTO_AUTHENC) += authenc.o 74obj-$(CONFIG_CRYPTO_AUTHENC) += authenc.o
75obj-$(CONFIG_CRYPTO_LZO) += lzo.o 75obj-$(CONFIG_CRYPTO_LZO) += lzo.o
76obj-$(CONFIG_CRYPTO_RNG) += rng.o 76obj-$(CONFIG_CRYPTO_RNG2) += rng.o
77obj-$(CONFIG_CRYPTO_RNG) += krng.o 77obj-$(CONFIG_CRYPTO_RNG2) += krng.o
78obj-$(CONFIG_CRYPTO_ANSI_CPRNG) += ansi_cprng.o 78obj-$(CONFIG_CRYPTO_ANSI_CPRNG) += ansi_cprng.o
79obj-$(CONFIG_CRYPTO_TEST) += tcrypt.o 79obj-$(CONFIG_CRYPTO_TEST) += tcrypt.o
80 80
diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c
index a0a178dd189c..1423b0c0cd2e 100644
--- a/drivers/acpi/battery.c
+++ b/drivers/acpi/battery.c
@@ -174,15 +174,6 @@ static int acpi_battery_get_property(struct power_supply *psy,
174 break; 174 break;
175 case POWER_SUPPLY_PROP_CURRENT_NOW: 175 case POWER_SUPPLY_PROP_CURRENT_NOW:
176 val->intval = battery->current_now * 1000; 176 val->intval = battery->current_now * 1000;
177 /* if power units are mW, convert to mA by
178 dividing by current voltage (mV/1000) */
179 if (!battery->power_unit) {
180 if (battery->voltage_now) {
181 val->intval /= battery->voltage_now;
182 val->intval *= 1000;
183 } else
184 val->intval = -1;
185 }
186 break; 177 break;
187 case POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN: 178 case POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN:
188 case POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN: 179 case POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN:
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 78fbec8ceda0..421b7c71e72d 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -153,7 +153,7 @@ config SATA_PROMISE
153 If unsure, say N. 153 If unsure, say N.
154 154
155config SATA_SX4 155config SATA_SX4
156 tristate "Promise SATA SX4 support" 156 tristate "Promise SATA SX4 support (Experimental)"
157 depends on PCI && EXPERIMENTAL 157 depends on PCI && EXPERIMENTAL
158 help 158 help
159 This option enables support for Promise Serial ATA SX4. 159 This option enables support for Promise Serial ATA SX4.
@@ -219,8 +219,8 @@ config PATA_ACPI
219 otherwise unsupported hardware. 219 otherwise unsupported hardware.
220 220
221config PATA_ALI 221config PATA_ALI
222 tristate "ALi PATA support (Experimental)" 222 tristate "ALi PATA support"
223 depends on PCI && EXPERIMENTAL 223 depends on PCI
224 help 224 help
225 This option enables support for the ALi ATA interfaces 225 This option enables support for the ALi ATA interfaces
226 found on the many ALi chipsets. 226 found on the many ALi chipsets.
@@ -263,7 +263,7 @@ config PATA_ATIIXP
263 If unsure, say N. 263 If unsure, say N.
264 264
265config PATA_CMD640_PCI 265config PATA_CMD640_PCI
266 tristate "CMD640 PCI PATA support (Very Experimental)" 266 tristate "CMD640 PCI PATA support (Experimental)"
267 depends on PCI && EXPERIMENTAL 267 depends on PCI && EXPERIMENTAL
268 help 268 help
269 This option enables support for the CMD640 PCI IDE 269 This option enables support for the CMD640 PCI IDE
@@ -291,8 +291,8 @@ config PATA_CS5520
291 If unsure, say N. 291 If unsure, say N.
292 292
293config PATA_CS5530 293config PATA_CS5530
294 tristate "CS5530 PATA support (Experimental)" 294 tristate "CS5530 PATA support"
295 depends on PCI && EXPERIMENTAL 295 depends on PCI
296 help 296 help
297 This option enables support for the Cyrix/NatSemi/AMD CS5530 297 This option enables support for the Cyrix/NatSemi/AMD CS5530
298 companion chip used with the MediaGX/Geode processor family. 298 companion chip used with the MediaGX/Geode processor family.
@@ -309,8 +309,8 @@ config PATA_CS5535
309 If unsure, say N. 309 If unsure, say N.
310 310
311config PATA_CS5536 311config PATA_CS5536
312 tristate "CS5536 PATA support (Experimental)" 312 tristate "CS5536 PATA support"
313 depends on PCI && X86 && !X86_64 && EXPERIMENTAL 313 depends on PCI && X86 && !X86_64
314 help 314 help
315 This option enables support for the AMD CS5536 315 This option enables support for the AMD CS5536
316 companion chip used with the Geode LX processor family. 316 companion chip used with the Geode LX processor family.
@@ -363,7 +363,7 @@ config PATA_HPT37X
363 If unsure, say N. 363 If unsure, say N.
364 364
365config PATA_HPT3X2N 365config PATA_HPT3X2N
366 tristate "HPT 372N/302N PATA support (Very Experimental)" 366 tristate "HPT 372N/302N PATA support (Experimental)"
367 depends on PCI && EXPERIMENTAL 367 depends on PCI && EXPERIMENTAL
368 help 368 help
369 This option enables support for the N variant HPT PATA 369 This option enables support for the N variant HPT PATA
@@ -389,8 +389,8 @@ config PATA_HPT3X3_DMA
389 problems with DMA on this chipset. 389 problems with DMA on this chipset.
390 390
391config PATA_ISAPNP 391config PATA_ISAPNP
392 tristate "ISA Plug and Play PATA support (Experimental)" 392 tristate "ISA Plug and Play PATA support"
393 depends on EXPERIMENTAL && ISAPNP 393 depends on ISAPNP
394 help 394 help
395 This option enables support for ISA plug & play ATA 395 This option enables support for ISA plug & play ATA
396 controllers such as those found on old soundcards. 396 controllers such as those found on old soundcards.
@@ -498,8 +498,8 @@ config PATA_NINJA32
498 If unsure, say N. 498 If unsure, say N.
499 499
500config PATA_NS87410 500config PATA_NS87410
501 tristate "Nat Semi NS87410 PATA support (Experimental)" 501 tristate "Nat Semi NS87410 PATA support"
502 depends on PCI && EXPERIMENTAL 502 depends on PCI
503 help 503 help
504 This option enables support for the National Semiconductor 504 This option enables support for the National Semiconductor
505 NS87410 PCI-IDE controller. 505 NS87410 PCI-IDE controller.
@@ -507,8 +507,8 @@ config PATA_NS87410
507 If unsure, say N. 507 If unsure, say N.
508 508
509config PATA_NS87415 509config PATA_NS87415
510 tristate "Nat Semi NS87415 PATA support (Experimental)" 510 tristate "Nat Semi NS87415 PATA support"
511 depends on PCI && EXPERIMENTAL 511 depends on PCI
512 help 512 help
513 This option enables support for the National Semiconductor 513 This option enables support for the National Semiconductor
514 NS87415 PCI-IDE controller. 514 NS87415 PCI-IDE controller.
@@ -544,8 +544,8 @@ config PATA_PCMCIA
544 If unsure, say N. 544 If unsure, say N.
545 545
546config PATA_PDC_OLD 546config PATA_PDC_OLD
547 tristate "Older Promise PATA controller support (Experimental)" 547 tristate "Older Promise PATA controller support"
548 depends on PCI && EXPERIMENTAL 548 depends on PCI
549 help 549 help
550 This option enables support for the Promise 20246, 20262, 20263, 550 This option enables support for the Promise 20246, 20262, 20263,
551 20265 and 20267 adapters. 551 20265 and 20267 adapters.
@@ -559,7 +559,7 @@ config PATA_QDI
559 Support for QDI 6500 and 6580 PATA controllers on VESA local bus. 559 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
560 560
561config PATA_RADISYS 561config PATA_RADISYS
562 tristate "RADISYS 82600 PATA support (Very Experimental)" 562 tristate "RADISYS 82600 PATA support (Experimental)"
563 depends on PCI && EXPERIMENTAL 563 depends on PCI && EXPERIMENTAL
564 help 564 help
565 This option enables support for the RADISYS 82600 565 This option enables support for the RADISYS 82600
@@ -586,8 +586,8 @@ config PATA_RZ1000
586 If unsure, say N. 586 If unsure, say N.
587 587
588config PATA_SC1200 588config PATA_SC1200
589 tristate "SC1200 PATA support (Very Experimental)" 589 tristate "SC1200 PATA support"
590 depends on PCI && EXPERIMENTAL 590 depends on PCI
591 help 591 help
592 This option enables support for the NatSemi/AMD SC1200 SoC 592 This option enables support for the NatSemi/AMD SC1200 SoC
593 companion chip used with the Geode processor family. 593 companion chip used with the Geode processor family.
@@ -620,8 +620,8 @@ config PATA_SIL680
620 If unsure, say N. 620 If unsure, say N.
621 621
622config PATA_SIS 622config PATA_SIS
623 tristate "SiS PATA support (Experimental)" 623 tristate "SiS PATA support"
624 depends on PCI && EXPERIMENTAL 624 depends on PCI
625 help 625 help
626 This option enables support for SiS PATA controllers 626 This option enables support for SiS PATA controllers
627 627
diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c
index d6d97d8f3fa4..c11936e13dd3 100644
--- a/drivers/ata/ata_piix.c
+++ b/drivers/ata/ata_piix.c
@@ -1072,7 +1072,14 @@ static int piix_broken_suspend(void)
1072 * matching is necessary because dmi_system_id.matches is 1072 * matching is necessary because dmi_system_id.matches is
1073 * limited to four entries. 1073 * limited to four entries.
1074 */ 1074 */
1075 if (!strcmp(dmi_get_system_info(DMI_SYS_VENDOR), "TOSHIBA") && 1075 if (dmi_get_system_info(DMI_SYS_VENDOR) &&
1076 dmi_get_system_info(DMI_PRODUCT_NAME) &&
1077 dmi_get_system_info(DMI_PRODUCT_VERSION) &&
1078 dmi_get_system_info(DMI_PRODUCT_SERIAL) &&
1079 dmi_get_system_info(DMI_BOARD_VENDOR) &&
1080 dmi_get_system_info(DMI_BOARD_NAME) &&
1081 dmi_get_system_info(DMI_BOARD_VERSION) &&
1082 !strcmp(dmi_get_system_info(DMI_SYS_VENDOR), "TOSHIBA") &&
1076 !strcmp(dmi_get_system_info(DMI_PRODUCT_NAME), "000000") && 1083 !strcmp(dmi_get_system_info(DMI_PRODUCT_NAME), "000000") &&
1077 !strcmp(dmi_get_system_info(DMI_PRODUCT_VERSION), "000000") && 1084 !strcmp(dmi_get_system_info(DMI_PRODUCT_VERSION), "000000") &&
1078 !strcmp(dmi_get_system_info(DMI_PRODUCT_SERIAL), "000000") && 1085 !strcmp(dmi_get_system_info(DMI_PRODUCT_SERIAL), "000000") &&
diff --git a/drivers/ata/pata_hpt366.c b/drivers/ata/pata_hpt366.c
index f2b83eabc7c7..a098ba8eaab6 100644
--- a/drivers/ata/pata_hpt366.c
+++ b/drivers/ata/pata_hpt366.c
@@ -382,10 +382,10 @@ static int hpt36x_init_one(struct pci_dev *dev, const struct pci_device_id *id)
382 /* PCI clocking determines the ATA timing values to use */ 382 /* PCI clocking determines the ATA timing values to use */
383 /* info_hpt366 is safe against re-entry so we can scribble on it */ 383 /* info_hpt366 is safe against re-entry so we can scribble on it */
384 switch((reg1 & 0x700) >> 8) { 384 switch((reg1 & 0x700) >> 8) {
385 case 5: 385 case 9:
386 hpriv = &hpt366_40; 386 hpriv = &hpt366_40;
387 break; 387 break;
388 case 9: 388 case 5:
389 hpriv = &hpt366_25; 389 hpriv = &hpt366_25;
390 break; 390 break;
391 default: 391 default:
diff --git a/drivers/ata/pata_ninja32.c b/drivers/ata/pata_ninja32.c
index 4e466eae8b46..4dd9a3b031e4 100644
--- a/drivers/ata/pata_ninja32.c
+++ b/drivers/ata/pata_ninja32.c
@@ -44,7 +44,7 @@
44#include <linux/libata.h> 44#include <linux/libata.h>
45 45
46#define DRV_NAME "pata_ninja32" 46#define DRV_NAME "pata_ninja32"
47#define DRV_VERSION "0.1.1" 47#define DRV_VERSION "0.1.3"
48 48
49 49
50/** 50/**
@@ -130,7 +130,8 @@ static int ninja32_init_one(struct pci_dev *dev, const struct pci_device_id *id)
130 return rc; 130 return rc;
131 pci_set_master(dev); 131 pci_set_master(dev);
132 132
133 /* Set up the register mappings */ 133 /* Set up the register mappings. We use the I/O mapping as only the
134 older chips also have MMIO on BAR 1 */
134 base = host->iomap[0]; 135 base = host->iomap[0];
135 if (!base) 136 if (!base)
136 return -ENOMEM; 137 return -ENOMEM;
@@ -167,8 +168,12 @@ static int ninja32_reinit_one(struct pci_dev *pdev)
167#endif 168#endif
168 169
169static const struct pci_device_id ninja32[] = { 170static const struct pci_device_id ninja32[] = {
171 { 0x10FC, 0x0003, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
172 { 0x1145, 0x8008, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
173 { 0x1145, 0xf008, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
170 { 0x1145, 0xf021, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, 174 { 0x1145, 0xf021, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
171 { 0x1145, 0xf024, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, 175 { 0x1145, 0xf024, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
176 { 0x1145, 0xf02C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
172 { }, 177 { },
173}; 178};
174 179
diff --git a/drivers/ata/pata_sis.c b/drivers/ata/pata_sis.c
index d34236611752..e4be55e047f6 100644
--- a/drivers/ata/pata_sis.c
+++ b/drivers/ata/pata_sis.c
@@ -56,7 +56,6 @@ static const struct sis_laptop sis_laptop[] = {
56 { 0x5513, 0x1043, 0x1107 }, /* ASUS A6K */ 56 { 0x5513, 0x1043, 0x1107 }, /* ASUS A6K */
57 { 0x5513, 0x1734, 0x105F }, /* FSC Amilo A1630 */ 57 { 0x5513, 0x1734, 0x105F }, /* FSC Amilo A1630 */
58 { 0x5513, 0x1071, 0x8640 }, /* EasyNote K5305 */ 58 { 0x5513, 0x1071, 0x8640 }, /* EasyNote K5305 */
59 { 0x5513, 0x1039, 0x5513 }, /* Targa Visionary 1000 */
60 /* end marker */ 59 /* end marker */
61 { 0, } 60 { 0, }
62}; 61};
diff --git a/drivers/atm/horizon.c b/drivers/atm/horizon.c
index 615412364e99..6b969f8c684f 100644
--- a/drivers/atm/horizon.c
+++ b/drivers/atm/horizon.c
@@ -2705,7 +2705,7 @@ static int __devinit hrz_probe(struct pci_dev *pci_dev, const struct pci_device_
2705 2705
2706 /* XXX DEV_LABEL is a guess */ 2706 /* XXX DEV_LABEL is a guess */
2707 if (!request_region(iobase, HRZ_IO_EXTENT, DEV_LABEL)) { 2707 if (!request_region(iobase, HRZ_IO_EXTENT, DEV_LABEL)) {
2708 return -EINVAL; 2708 err = -EINVAL;
2709 goto out_disable; 2709 goto out_disable;
2710 } 2710 }
2711 2711
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index f20bf359b84f..dc7a8c352da2 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -302,7 +302,7 @@ static struct kobj_type kobj_pkt_type_wqueue = {
302static void pkt_sysfs_dev_new(struct pktcdvd_device *pd) 302static void pkt_sysfs_dev_new(struct pktcdvd_device *pd)
303{ 303{
304 if (class_pktcdvd) { 304 if (class_pktcdvd) {
305 pd->dev = device_create(class_pktcdvd, NULL, pd->pkt_dev, NULL, 305 pd->dev = device_create(class_pktcdvd, NULL, MKDEV(0, 0), NULL,
306 "%s", pd->name); 306 "%s", pd->name);
307 if (IS_ERR(pd->dev)) 307 if (IS_ERR(pd->dev))
308 pd->dev = NULL; 308 pd->dev = NULL;
@@ -2790,7 +2790,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
2790 return 0; 2790 return 0;
2791 2791
2792out_mem: 2792out_mem:
2793 blkdev_put(bdev, FMODE_READ|FMODE_WRITE); 2793 blkdev_put(bdev, FMODE_READ | FMODE_NDELAY);
2794 /* This is safe: open() is still holding a reference. */ 2794 /* This is safe: open() is still holding a reference. */
2795 module_put(THIS_MODULE); 2795 module_put(THIS_MODULE);
2796 return ret; 2796 return ret;
@@ -2975,7 +2975,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
2975 pkt_debugfs_dev_remove(pd); 2975 pkt_debugfs_dev_remove(pd);
2976 pkt_sysfs_dev_remove(pd); 2976 pkt_sysfs_dev_remove(pd);
2977 2977
2978 blkdev_put(pd->bdev, FMODE_READ|FMODE_WRITE); 2978 blkdev_put(pd->bdev, FMODE_READ | FMODE_NDELAY);
2979 2979
2980 remove_proc_entry(pd->name, pkt_proc); 2980 remove_proc_entry(pd->name, pkt_proc);
2981 DPRINTK(DRIVER_NAME": writer %s unmapped\n", pd->name); 2981 DPRINTK(DRIVER_NAME": writer %s unmapped\n", pd->name);
diff --git a/drivers/char/serial167.c b/drivers/char/serial167.c
index 3b23270eaa65..a8f15e6be594 100644
--- a/drivers/char/serial167.c
+++ b/drivers/char/serial167.c
@@ -418,7 +418,7 @@ static irqreturn_t cd2401_rxerr_interrupt(int irq, void *dev_id)
418 TTY_OVERRUN); 418 TTY_OVERRUN);
419 /* 419 /*
420 If the flip buffer itself is 420 If the flip buffer itself is
421 overflowing, we still loose 421 overflowing, we still lose
422 the next incoming character. 422 the next incoming character.
423 */ 423 */
424 if (tty_buffer_request_room(tty, 1) != 424 if (tty_buffer_request_room(tty, 1) !=
diff --git a/drivers/firewire/fw-ohci.c b/drivers/firewire/fw-ohci.c
index 46610b090415..ab9c01e462ef 100644
--- a/drivers/firewire/fw-ohci.c
+++ b/drivers/firewire/fw-ohci.c
@@ -974,6 +974,7 @@ at_context_queue_packet(struct context *ctx, struct fw_packet *packet)
974 packet->ack = RCODE_SEND_ERROR; 974 packet->ack = RCODE_SEND_ERROR;
975 return -1; 975 return -1;
976 } 976 }
977 packet->payload_bus = payload_bus;
977 978
978 d[2].req_count = cpu_to_le16(packet->payload_length); 979 d[2].req_count = cpu_to_le16(packet->payload_length);
979 d[2].data_address = cpu_to_le32(payload_bus); 980 d[2].data_address = cpu_to_le32(payload_bus);
@@ -1025,7 +1026,6 @@ static int handle_at_packet(struct context *context,
1025 struct driver_data *driver_data; 1026 struct driver_data *driver_data;
1026 struct fw_packet *packet; 1027 struct fw_packet *packet;
1027 struct fw_ohci *ohci = context->ohci; 1028 struct fw_ohci *ohci = context->ohci;
1028 dma_addr_t payload_bus;
1029 int evt; 1029 int evt;
1030 1030
1031 if (last->transfer_status == 0) 1031 if (last->transfer_status == 0)
@@ -1038,9 +1038,8 @@ static int handle_at_packet(struct context *context,
1038 /* This packet was cancelled, just continue. */ 1038 /* This packet was cancelled, just continue. */
1039 return 1; 1039 return 1;
1040 1040
1041 payload_bus = le32_to_cpu(last->data_address); 1041 if (packet->payload_bus)
1042 if (payload_bus != 0) 1042 dma_unmap_single(ohci->card.device, packet->payload_bus,
1043 dma_unmap_single(ohci->card.device, payload_bus,
1044 packet->payload_length, DMA_TO_DEVICE); 1043 packet->payload_length, DMA_TO_DEVICE);
1045 1044
1046 evt = le16_to_cpu(last->transfer_status) & 0x1f; 1045 evt = le16_to_cpu(last->transfer_status) & 0x1f;
@@ -1697,6 +1696,10 @@ static int ohci_cancel_packet(struct fw_card *card, struct fw_packet *packet)
1697 if (packet->ack != 0) 1696 if (packet->ack != 0)
1698 goto out; 1697 goto out;
1699 1698
1699 if (packet->payload_bus)
1700 dma_unmap_single(ohci->card.device, packet->payload_bus,
1701 packet->payload_length, DMA_TO_DEVICE);
1702
1700 log_ar_at_event('T', packet->speed, packet->header, 0x20); 1703 log_ar_at_event('T', packet->speed, packet->header, 0x20);
1701 driver_data->packet = NULL; 1704 driver_data->packet = NULL;
1702 packet->ack = RCODE_CANCELLED; 1705 packet->ack = RCODE_CANCELLED;
diff --git a/drivers/firewire/fw-transaction.c b/drivers/firewire/fw-transaction.c
index 022ac4fabb67..2884f876397b 100644
--- a/drivers/firewire/fw-transaction.c
+++ b/drivers/firewire/fw-transaction.c
@@ -207,6 +207,7 @@ fw_fill_request(struct fw_packet *packet, int tcode, int tlabel,
207 packet->speed = speed; 207 packet->speed = speed;
208 packet->generation = generation; 208 packet->generation = generation;
209 packet->ack = 0; 209 packet->ack = 0;
210 packet->payload_bus = 0;
210} 211}
211 212
212/** 213/**
@@ -581,6 +582,8 @@ fw_fill_response(struct fw_packet *response, u32 *request_header,
581 BUG(); 582 BUG();
582 return; 583 return;
583 } 584 }
585
586 response->payload_bus = 0;
584} 587}
585EXPORT_SYMBOL(fw_fill_response); 588EXPORT_SYMBOL(fw_fill_response);
586 589
diff --git a/drivers/firewire/fw-transaction.h b/drivers/firewire/fw-transaction.h
index aed7dbb17cda..839466f0a795 100644
--- a/drivers/firewire/fw-transaction.h
+++ b/drivers/firewire/fw-transaction.h
@@ -27,6 +27,7 @@
27#include <linux/list.h> 27#include <linux/list.h>
28#include <linux/spinlock_types.h> 28#include <linux/spinlock_types.h>
29#include <linux/timer.h> 29#include <linux/timer.h>
30#include <linux/types.h>
30#include <linux/workqueue.h> 31#include <linux/workqueue.h>
31 32
32#define TCODE_IS_READ_REQUEST(tcode) (((tcode) & ~1) == 4) 33#define TCODE_IS_READ_REQUEST(tcode) (((tcode) & ~1) == 4)
@@ -153,6 +154,7 @@ struct fw_packet {
153 size_t header_length; 154 size_t header_length;
154 void *payload; 155 void *payload;
155 size_t payload_length; 156 size_t payload_length;
157 dma_addr_t payload_bus;
156 u32 timestamp; 158 u32 timestamp;
157 159
158 /* 160 /*
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
index ba89b42f790a..553dd4bc3075 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -847,9 +847,10 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
847 * and the registers being closely associated. 847 * and the registers being closely associated.
848 * 848 *
849 * According to chipset errata, on the 965GM, MSI interrupts may 849 * According to chipset errata, on the 965GM, MSI interrupts may
850 * be lost or delayed 850 * be lost or delayed, but we use them anyways to avoid
851 * stuck interrupts on some machines.
851 */ 852 */
852 if (!IS_I945G(dev) && !IS_I945GM(dev) && !IS_I965GM(dev)) 853 if (!IS_I945G(dev) && !IS_I945GM(dev))
853 pci_enable_msi(dev->pdev); 854 pci_enable_msi(dev->pdev);
854 855
855 intel_opregion_init(dev); 856 intel_opregion_init(dev);
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 0a4f39b9a0ec..adc972cc6bfc 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -244,6 +244,10 @@ typedef struct drm_i915_private {
244 * List of objects currently involved in rendering from the 244 * List of objects currently involved in rendering from the
245 * ringbuffer. 245 * ringbuffer.
246 * 246 *
247 * Includes buffers having the contents of their GPU caches
248 * flushed, not necessarily primitives. last_rendering_seqno
249 * represents when the rendering involved will be completed.
250 *
247 * A reference is held on the buffer while on this list. 251 * A reference is held on the buffer while on this list.
248 */ 252 */
249 struct list_head active_list; 253 struct list_head active_list;
@@ -253,6 +257,8 @@ typedef struct drm_i915_private {
253 * still have a write_domain which needs to be flushed before 257 * still have a write_domain which needs to be flushed before
254 * unbinding. 258 * unbinding.
255 * 259 *
260 * last_rendering_seqno is 0 while an object is in this list.
261 *
256 * A reference is held on the buffer while on this list. 262 * A reference is held on the buffer while on this list.
257 */ 263 */
258 struct list_head flushing_list; 264 struct list_head flushing_list;
@@ -261,6 +267,8 @@ typedef struct drm_i915_private {
261 * LRU list of objects which are not in the ringbuffer and 267 * LRU list of objects which are not in the ringbuffer and
262 * are ready to unbind, but are still in the GTT. 268 * are ready to unbind, but are still in the GTT.
263 * 269 *
270 * last_rendering_seqno is 0 while an object is in this list.
271 *
264 * A reference is not held on the buffer while on this list, 272 * A reference is not held on the buffer while on this list,
265 * as merely being GTT-bound shouldn't prevent its being 273 * as merely being GTT-bound shouldn't prevent its being
266 * freed, and we'll pull it off the list in the free path. 274 * freed, and we'll pull it off the list in the free path.
@@ -371,8 +379,8 @@ struct drm_i915_gem_object {
371 uint32_t agp_type; 379 uint32_t agp_type;
372 380
373 /** 381 /**
374 * Flagging of which individual pages are valid in GEM_DOMAIN_CPU when 382 * If present, while GEM_DOMAIN_CPU is in the read domain this array
375 * GEM_DOMAIN_CPU is not in the object's read domain. 383 * flags which individual pages are valid.
376 */ 384 */
377 uint8_t *page_cpu_valid; 385 uint8_t *page_cpu_valid;
378}; 386};
@@ -394,9 +402,6 @@ struct drm_i915_gem_request {
394 /** Time at which this request was emitted, in jiffies. */ 402 /** Time at which this request was emitted, in jiffies. */
395 unsigned long emitted_jiffies; 403 unsigned long emitted_jiffies;
396 404
397 /** Cache domains that were flushed at the start of the request. */
398 uint32_t flush_domains;
399
400 struct list_head list; 405 struct list_head list;
401}; 406};
402 407
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index d58ddef468f8..ad672d854828 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -33,21 +33,21 @@
33 33
34#define I915_GEM_GPU_DOMAINS (~(I915_GEM_DOMAIN_CPU | I915_GEM_DOMAIN_GTT)) 34#define I915_GEM_GPU_DOMAINS (~(I915_GEM_DOMAIN_CPU | I915_GEM_DOMAIN_GTT))
35 35
36static int 36static void
37i915_gem_object_set_domain(struct drm_gem_object *obj, 37i915_gem_object_set_to_gpu_domain(struct drm_gem_object *obj,
38 uint32_t read_domains, 38 uint32_t read_domains,
39 uint32_t write_domain); 39 uint32_t write_domain);
40static int 40static void i915_gem_object_flush_gpu_write_domain(struct drm_gem_object *obj);
41i915_gem_object_set_domain_range(struct drm_gem_object *obj, 41static void i915_gem_object_flush_gtt_write_domain(struct drm_gem_object *obj);
42 uint64_t offset, 42static void i915_gem_object_flush_cpu_write_domain(struct drm_gem_object *obj);
43 uint64_t size, 43static int i915_gem_object_set_to_gtt_domain(struct drm_gem_object *obj,
44 uint32_t read_domains, 44 int write);
45 uint32_t write_domain); 45static int i915_gem_object_set_to_cpu_domain(struct drm_gem_object *obj,
46static int 46 int write);
47i915_gem_set_domain(struct drm_gem_object *obj, 47static int i915_gem_object_set_cpu_read_domain_range(struct drm_gem_object *obj,
48 struct drm_file *file_priv, 48 uint64_t offset,
49 uint32_t read_domains, 49 uint64_t size);
50 uint32_t write_domain); 50static void i915_gem_object_set_to_full_cpu_read_domain(struct drm_gem_object *obj);
51static int i915_gem_object_get_page_list(struct drm_gem_object *obj); 51static int i915_gem_object_get_page_list(struct drm_gem_object *obj);
52static void i915_gem_object_free_page_list(struct drm_gem_object *obj); 52static void i915_gem_object_free_page_list(struct drm_gem_object *obj);
53static int i915_gem_object_wait_rendering(struct drm_gem_object *obj); 53static int i915_gem_object_wait_rendering(struct drm_gem_object *obj);
@@ -162,8 +162,8 @@ i915_gem_pread_ioctl(struct drm_device *dev, void *data,
162 162
163 mutex_lock(&dev->struct_mutex); 163 mutex_lock(&dev->struct_mutex);
164 164
165 ret = i915_gem_object_set_domain_range(obj, args->offset, args->size, 165 ret = i915_gem_object_set_cpu_read_domain_range(obj, args->offset,
166 I915_GEM_DOMAIN_CPU, 0); 166 args->size);
167 if (ret != 0) { 167 if (ret != 0) {
168 drm_gem_object_unreference(obj); 168 drm_gem_object_unreference(obj);
169 mutex_unlock(&dev->struct_mutex); 169 mutex_unlock(&dev->struct_mutex);
@@ -260,8 +260,7 @@ i915_gem_gtt_pwrite(struct drm_device *dev, struct drm_gem_object *obj,
260 mutex_unlock(&dev->struct_mutex); 260 mutex_unlock(&dev->struct_mutex);
261 return ret; 261 return ret;
262 } 262 }
263 ret = i915_gem_set_domain(obj, file_priv, 263 ret = i915_gem_object_set_to_gtt_domain(obj, 1);
264 I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT);
265 if (ret) 264 if (ret)
266 goto fail; 265 goto fail;
267 266
@@ -320,8 +319,7 @@ i915_gem_shmem_pwrite(struct drm_device *dev, struct drm_gem_object *obj,
320 319
321 mutex_lock(&dev->struct_mutex); 320 mutex_lock(&dev->struct_mutex);
322 321
323 ret = i915_gem_set_domain(obj, file_priv, 322 ret = i915_gem_object_set_to_cpu_domain(obj, 1);
324 I915_GEM_DOMAIN_CPU, I915_GEM_DOMAIN_CPU);
325 if (ret) { 323 if (ret) {
326 mutex_unlock(&dev->struct_mutex); 324 mutex_unlock(&dev->struct_mutex);
327 return ret; 325 return ret;
@@ -397,7 +395,8 @@ i915_gem_pwrite_ioctl(struct drm_device *dev, void *data,
397} 395}
398 396
399/** 397/**
400 * Called when user space prepares to use an object 398 * Called when user space prepares to use an object with the CPU, either
399 * through the mmap ioctl's mapping or a GTT mapping.
401 */ 400 */
402int 401int
403i915_gem_set_domain_ioctl(struct drm_device *dev, void *data, 402i915_gem_set_domain_ioctl(struct drm_device *dev, void *data,
@@ -405,11 +404,26 @@ i915_gem_set_domain_ioctl(struct drm_device *dev, void *data,
405{ 404{
406 struct drm_i915_gem_set_domain *args = data; 405 struct drm_i915_gem_set_domain *args = data;
407 struct drm_gem_object *obj; 406 struct drm_gem_object *obj;
407 uint32_t read_domains = args->read_domains;
408 uint32_t write_domain = args->write_domain;
408 int ret; 409 int ret;
409 410
410 if (!(dev->driver->driver_features & DRIVER_GEM)) 411 if (!(dev->driver->driver_features & DRIVER_GEM))
411 return -ENODEV; 412 return -ENODEV;
412 413
414 /* Only handle setting domains to types used by the CPU. */
415 if (write_domain & ~(I915_GEM_DOMAIN_CPU | I915_GEM_DOMAIN_GTT))
416 return -EINVAL;
417
418 if (read_domains & ~(I915_GEM_DOMAIN_CPU | I915_GEM_DOMAIN_GTT))
419 return -EINVAL;
420
421 /* Having something in the write domain implies it's in the read
422 * domain, and only that read domain. Enforce that in the request.
423 */
424 if (write_domain != 0 && read_domains != write_domain)
425 return -EINVAL;
426
413 obj = drm_gem_object_lookup(dev, file_priv, args->handle); 427 obj = drm_gem_object_lookup(dev, file_priv, args->handle);
414 if (obj == NULL) 428 if (obj == NULL)
415 return -EBADF; 429 return -EBADF;
@@ -417,10 +431,21 @@ i915_gem_set_domain_ioctl(struct drm_device *dev, void *data,
417 mutex_lock(&dev->struct_mutex); 431 mutex_lock(&dev->struct_mutex);
418#if WATCH_BUF 432#if WATCH_BUF
419 DRM_INFO("set_domain_ioctl %p(%d), %08x %08x\n", 433 DRM_INFO("set_domain_ioctl %p(%d), %08x %08x\n",
420 obj, obj->size, args->read_domains, args->write_domain); 434 obj, obj->size, read_domains, write_domain);
421#endif 435#endif
422 ret = i915_gem_set_domain(obj, file_priv, 436 if (read_domains & I915_GEM_DOMAIN_GTT) {
423 args->read_domains, args->write_domain); 437 ret = i915_gem_object_set_to_gtt_domain(obj, write_domain != 0);
438
439 /* Silently promote "you're not bound, there was nothing to do"
440 * to success, since the client was just asking us to
441 * make sure everything was done.
442 */
443 if (ret == -EINVAL)
444 ret = 0;
445 } else {
446 ret = i915_gem_object_set_to_cpu_domain(obj, write_domain != 0);
447 }
448
424 drm_gem_object_unreference(obj); 449 drm_gem_object_unreference(obj);
425 mutex_unlock(&dev->struct_mutex); 450 mutex_unlock(&dev->struct_mutex);
426 return ret; 451 return ret;
@@ -455,10 +480,9 @@ i915_gem_sw_finish_ioctl(struct drm_device *dev, void *data,
455 obj_priv = obj->driver_private; 480 obj_priv = obj->driver_private;
456 481
457 /* Pinned buffers may be scanout, so flush the cache */ 482 /* Pinned buffers may be scanout, so flush the cache */
458 if ((obj->write_domain & I915_GEM_DOMAIN_CPU) && obj_priv->pin_count) { 483 if (obj_priv->pin_count)
459 i915_gem_clflush_object(obj); 484 i915_gem_object_flush_cpu_write_domain(obj);
460 drm_agp_chipset_flush(dev); 485
461 }
462 drm_gem_object_unreference(obj); 486 drm_gem_object_unreference(obj);
463 mutex_unlock(&dev->struct_mutex); 487 mutex_unlock(&dev->struct_mutex);
464 return ret; 488 return ret;
@@ -532,7 +556,7 @@ i915_gem_object_free_page_list(struct drm_gem_object *obj)
532} 556}
533 557
534static void 558static void
535i915_gem_object_move_to_active(struct drm_gem_object *obj) 559i915_gem_object_move_to_active(struct drm_gem_object *obj, uint32_t seqno)
536{ 560{
537 struct drm_device *dev = obj->dev; 561 struct drm_device *dev = obj->dev;
538 drm_i915_private_t *dev_priv = dev->dev_private; 562 drm_i915_private_t *dev_priv = dev->dev_private;
@@ -546,8 +570,20 @@ i915_gem_object_move_to_active(struct drm_gem_object *obj)
546 /* Move from whatever list we were on to the tail of execution. */ 570 /* Move from whatever list we were on to the tail of execution. */
547 list_move_tail(&obj_priv->list, 571 list_move_tail(&obj_priv->list,
548 &dev_priv->mm.active_list); 572 &dev_priv->mm.active_list);
573 obj_priv->last_rendering_seqno = seqno;
549} 574}
550 575
576static void
577i915_gem_object_move_to_flushing(struct drm_gem_object *obj)
578{
579 struct drm_device *dev = obj->dev;
580 drm_i915_private_t *dev_priv = dev->dev_private;
581 struct drm_i915_gem_object *obj_priv = obj->driver_private;
582
583 BUG_ON(!obj_priv->active);
584 list_move_tail(&obj_priv->list, &dev_priv->mm.flushing_list);
585 obj_priv->last_rendering_seqno = 0;
586}
551 587
552static void 588static void
553i915_gem_object_move_to_inactive(struct drm_gem_object *obj) 589i915_gem_object_move_to_inactive(struct drm_gem_object *obj)
@@ -562,6 +598,7 @@ i915_gem_object_move_to_inactive(struct drm_gem_object *obj)
562 else 598 else
563 list_move_tail(&obj_priv->list, &dev_priv->mm.inactive_list); 599 list_move_tail(&obj_priv->list, &dev_priv->mm.inactive_list);
564 600
601 obj_priv->last_rendering_seqno = 0;
565 if (obj_priv->active) { 602 if (obj_priv->active) {
566 obj_priv->active = 0; 603 obj_priv->active = 0;
567 drm_gem_object_unreference(obj); 604 drm_gem_object_unreference(obj);
@@ -610,10 +647,28 @@ i915_add_request(struct drm_device *dev, uint32_t flush_domains)
610 647
611 request->seqno = seqno; 648 request->seqno = seqno;
612 request->emitted_jiffies = jiffies; 649 request->emitted_jiffies = jiffies;
613 request->flush_domains = flush_domains;
614 was_empty = list_empty(&dev_priv->mm.request_list); 650 was_empty = list_empty(&dev_priv->mm.request_list);
615 list_add_tail(&request->list, &dev_priv->mm.request_list); 651 list_add_tail(&request->list, &dev_priv->mm.request_list);
616 652
653 /* Associate any objects on the flushing list matching the write
654 * domain we're flushing with our flush.
655 */
656 if (flush_domains != 0) {
657 struct drm_i915_gem_object *obj_priv, *next;
658
659 list_for_each_entry_safe(obj_priv, next,
660 &dev_priv->mm.flushing_list, list) {
661 struct drm_gem_object *obj = obj_priv->obj;
662
663 if ((obj->write_domain & flush_domains) ==
664 obj->write_domain) {
665 obj->write_domain = 0;
666 i915_gem_object_move_to_active(obj, seqno);
667 }
668 }
669
670 }
671
617 if (was_empty && !dev_priv->mm.suspended) 672 if (was_empty && !dev_priv->mm.suspended)
618 schedule_delayed_work(&dev_priv->mm.retire_work, HZ); 673 schedule_delayed_work(&dev_priv->mm.retire_work, HZ);
619 return seqno; 674 return seqno;
@@ -676,30 +731,10 @@ i915_gem_retire_request(struct drm_device *dev,
676 __func__, request->seqno, obj); 731 __func__, request->seqno, obj);
677#endif 732#endif
678 733
679 if (obj->write_domain != 0) { 734 if (obj->write_domain != 0)
680 list_move_tail(&obj_priv->list, 735 i915_gem_object_move_to_flushing(obj);
681 &dev_priv->mm.flushing_list); 736 else
682 } else {
683 i915_gem_object_move_to_inactive(obj); 737 i915_gem_object_move_to_inactive(obj);
684 }
685 }
686
687 if (request->flush_domains != 0) {
688 struct drm_i915_gem_object *obj_priv, *next;
689
690 /* Clear the write domain and activity from any buffers
691 * that are just waiting for a flush matching the one retired.
692 */
693 list_for_each_entry_safe(obj_priv, next,
694 &dev_priv->mm.flushing_list, list) {
695 struct drm_gem_object *obj = obj_priv->obj;
696
697 if (obj->write_domain & request->flush_domains) {
698 obj->write_domain = 0;
699 i915_gem_object_move_to_inactive(obj);
700 }
701 }
702
703 } 738 }
704} 739}
705 740
@@ -892,25 +927,10 @@ i915_gem_object_wait_rendering(struct drm_gem_object *obj)
892 struct drm_i915_gem_object *obj_priv = obj->driver_private; 927 struct drm_i915_gem_object *obj_priv = obj->driver_private;
893 int ret; 928 int ret;
894 929
895 /* If there are writes queued to the buffer, flush and 930 /* This function only exists to support waiting for existing rendering,
896 * create a new seqno to wait for. 931 * not for emitting required flushes.
897 */ 932 */
898 if (obj->write_domain & ~(I915_GEM_DOMAIN_CPU|I915_GEM_DOMAIN_GTT)) { 933 BUG_ON((obj->write_domain & I915_GEM_GPU_DOMAINS) != 0);
899 uint32_t write_domain = obj->write_domain;
900#if WATCH_BUF
901 DRM_INFO("%s: flushing object %p from write domain %08x\n",
902 __func__, obj, write_domain);
903#endif
904 i915_gem_flush(dev, 0, write_domain);
905
906 i915_gem_object_move_to_active(obj);
907 obj_priv->last_rendering_seqno = i915_add_request(dev,
908 write_domain);
909 BUG_ON(obj_priv->last_rendering_seqno == 0);
910#if WATCH_LRU
911 DRM_INFO("%s: flush moves to exec list %p\n", __func__, obj);
912#endif
913 }
914 934
915 /* If there is rendering queued on the buffer being evicted, wait for 935 /* If there is rendering queued on the buffer being evicted, wait for
916 * it. 936 * it.
@@ -950,24 +970,16 @@ i915_gem_object_unbind(struct drm_gem_object *obj)
950 return -EINVAL; 970 return -EINVAL;
951 } 971 }
952 972
953 /* Wait for any rendering to complete
954 */
955 ret = i915_gem_object_wait_rendering(obj);
956 if (ret) {
957 DRM_ERROR("wait_rendering failed: %d\n", ret);
958 return ret;
959 }
960
961 /* Move the object to the CPU domain to ensure that 973 /* Move the object to the CPU domain to ensure that
962 * any possible CPU writes while it's not in the GTT 974 * any possible CPU writes while it's not in the GTT
963 * are flushed when we go to remap it. This will 975 * are flushed when we go to remap it. This will
964 * also ensure that all pending GPU writes are finished 976 * also ensure that all pending GPU writes are finished
965 * before we unbind. 977 * before we unbind.
966 */ 978 */
967 ret = i915_gem_object_set_domain(obj, I915_GEM_DOMAIN_CPU, 979 ret = i915_gem_object_set_to_cpu_domain(obj, 1);
968 I915_GEM_DOMAIN_CPU);
969 if (ret) { 980 if (ret) {
970 DRM_ERROR("set_domain failed: %d\n", ret); 981 if (ret != -ERESTARTSYS)
982 DRM_ERROR("set_domain failed: %d\n", ret);
971 return ret; 983 return ret;
972 } 984 }
973 985
@@ -1083,6 +1095,21 @@ i915_gem_evict_something(struct drm_device *dev)
1083} 1095}
1084 1096
1085static int 1097static int
1098i915_gem_evict_everything(struct drm_device *dev)
1099{
1100 int ret;
1101
1102 for (;;) {
1103 ret = i915_gem_evict_something(dev);
1104 if (ret != 0)
1105 break;
1106 }
1107 if (ret == -ENOMEM)
1108 return 0;
1109 return ret;
1110}
1111
1112static int
1086i915_gem_object_get_page_list(struct drm_gem_object *obj) 1113i915_gem_object_get_page_list(struct drm_gem_object *obj)
1087{ 1114{
1088 struct drm_i915_gem_object *obj_priv = obj->driver_private; 1115 struct drm_i915_gem_object *obj_priv = obj->driver_private;
@@ -1168,7 +1195,8 @@ i915_gem_object_bind_to_gtt(struct drm_gem_object *obj, unsigned alignment)
1168 1195
1169 ret = i915_gem_evict_something(dev); 1196 ret = i915_gem_evict_something(dev);
1170 if (ret != 0) { 1197 if (ret != 0) {
1171 DRM_ERROR("Failed to evict a buffer %d\n", ret); 1198 if (ret != -ERESTARTSYS)
1199 DRM_ERROR("Failed to evict a buffer %d\n", ret);
1172 return ret; 1200 return ret;
1173 } 1201 }
1174 goto search_free; 1202 goto search_free;
@@ -1228,6 +1256,143 @@ i915_gem_clflush_object(struct drm_gem_object *obj)
1228 drm_clflush_pages(obj_priv->page_list, obj->size / PAGE_SIZE); 1256 drm_clflush_pages(obj_priv->page_list, obj->size / PAGE_SIZE);
1229} 1257}
1230 1258
1259/** Flushes any GPU write domain for the object if it's dirty. */
1260static void
1261i915_gem_object_flush_gpu_write_domain(struct drm_gem_object *obj)
1262{
1263 struct drm_device *dev = obj->dev;
1264 uint32_t seqno;
1265
1266 if ((obj->write_domain & I915_GEM_GPU_DOMAINS) == 0)
1267 return;
1268
1269 /* Queue the GPU write cache flushing we need. */
1270 i915_gem_flush(dev, 0, obj->write_domain);
1271 seqno = i915_add_request(dev, obj->write_domain);
1272 obj->write_domain = 0;
1273 i915_gem_object_move_to_active(obj, seqno);
1274}
1275
1276/** Flushes the GTT write domain for the object if it's dirty. */
1277static void
1278i915_gem_object_flush_gtt_write_domain(struct drm_gem_object *obj)
1279{
1280 if (obj->write_domain != I915_GEM_DOMAIN_GTT)
1281 return;
1282
1283 /* No actual flushing is required for the GTT write domain. Writes
1284 * to it immediately go to main memory as far as we know, so there's
1285 * no chipset flush. It also doesn't land in render cache.
1286 */
1287 obj->write_domain = 0;
1288}
1289
1290/** Flushes the CPU write domain for the object if it's dirty. */
1291static void
1292i915_gem_object_flush_cpu_write_domain(struct drm_gem_object *obj)
1293{
1294 struct drm_device *dev = obj->dev;
1295
1296 if (obj->write_domain != I915_GEM_DOMAIN_CPU)
1297 return;
1298
1299 i915_gem_clflush_object(obj);
1300 drm_agp_chipset_flush(dev);
1301 obj->write_domain = 0;
1302}
1303
1304/**
1305 * Moves a single object to the GTT read, and possibly write domain.
1306 *
1307 * This function returns when the move is complete, including waiting on
1308 * flushes to occur.
1309 */
1310static int
1311i915_gem_object_set_to_gtt_domain(struct drm_gem_object *obj, int write)
1312{
1313 struct drm_i915_gem_object *obj_priv = obj->driver_private;
1314 int ret;
1315
1316 /* Not valid to be called on unbound objects. */
1317 if (obj_priv->gtt_space == NULL)
1318 return -EINVAL;
1319
1320 i915_gem_object_flush_gpu_write_domain(obj);
1321 /* Wait on any GPU rendering and flushing to occur. */
1322 ret = i915_gem_object_wait_rendering(obj);
1323 if (ret != 0)
1324 return ret;
1325
1326 /* If we're writing through the GTT domain, then CPU and GPU caches
1327 * will need to be invalidated at next use.
1328 */
1329 if (write)
1330 obj->read_domains &= I915_GEM_DOMAIN_GTT;
1331
1332 i915_gem_object_flush_cpu_write_domain(obj);
1333
1334 /* It should now be out of any other write domains, and we can update
1335 * the domain values for our changes.
1336 */
1337 BUG_ON((obj->write_domain & ~I915_GEM_DOMAIN_GTT) != 0);
1338 obj->read_domains |= I915_GEM_DOMAIN_GTT;
1339 if (write) {
1340 obj->write_domain = I915_GEM_DOMAIN_GTT;
1341 obj_priv->dirty = 1;
1342 }
1343
1344 return 0;
1345}
1346
1347/**
1348 * Moves a single object to the CPU read, and possibly write domain.
1349 *
1350 * This function returns when the move is complete, including waiting on
1351 * flushes to occur.
1352 */
1353static int
1354i915_gem_object_set_to_cpu_domain(struct drm_gem_object *obj, int write)
1355{
1356 struct drm_device *dev = obj->dev;
1357 int ret;
1358
1359 i915_gem_object_flush_gpu_write_domain(obj);
1360 /* Wait on any GPU rendering and flushing to occur. */
1361 ret = i915_gem_object_wait_rendering(obj);
1362 if (ret != 0)
1363 return ret;
1364
1365 i915_gem_object_flush_gtt_write_domain(obj);
1366
1367 /* If we have a partially-valid cache of the object in the CPU,
1368 * finish invalidating it and free the per-page flags.
1369 */
1370 i915_gem_object_set_to_full_cpu_read_domain(obj);
1371
1372 /* Flush the CPU cache if it's still invalid. */
1373 if ((obj->read_domains & I915_GEM_DOMAIN_CPU) == 0) {
1374 i915_gem_clflush_object(obj);
1375 drm_agp_chipset_flush(dev);
1376
1377 obj->read_domains |= I915_GEM_DOMAIN_CPU;
1378 }
1379
1380 /* It should now be out of any other write domains, and we can update
1381 * the domain values for our changes.
1382 */
1383 BUG_ON((obj->write_domain & ~I915_GEM_DOMAIN_CPU) != 0);
1384
1385 /* If we're writing through the CPU, then the GPU read domains will
1386 * need to be invalidated at next use.
1387 */
1388 if (write) {
1389 obj->read_domains &= I915_GEM_DOMAIN_CPU;
1390 obj->write_domain = I915_GEM_DOMAIN_CPU;
1391 }
1392
1393 return 0;
1394}
1395
1231/* 1396/*
1232 * Set the next domain for the specified object. This 1397 * Set the next domain for the specified object. This
1233 * may not actually perform the necessary flushing/invaliding though, 1398 * may not actually perform the necessary flushing/invaliding though,
@@ -1339,16 +1504,18 @@ i915_gem_clflush_object(struct drm_gem_object *obj)
1339 * MI_FLUSH 1504 * MI_FLUSH
1340 * drm_agp_chipset_flush 1505 * drm_agp_chipset_flush
1341 */ 1506 */
1342static int 1507static void
1343i915_gem_object_set_domain(struct drm_gem_object *obj, 1508i915_gem_object_set_to_gpu_domain(struct drm_gem_object *obj,
1344 uint32_t read_domains, 1509 uint32_t read_domains,
1345 uint32_t write_domain) 1510 uint32_t write_domain)
1346{ 1511{
1347 struct drm_device *dev = obj->dev; 1512 struct drm_device *dev = obj->dev;
1348 struct drm_i915_gem_object *obj_priv = obj->driver_private; 1513 struct drm_i915_gem_object *obj_priv = obj->driver_private;
1349 uint32_t invalidate_domains = 0; 1514 uint32_t invalidate_domains = 0;
1350 uint32_t flush_domains = 0; 1515 uint32_t flush_domains = 0;
1351 int ret; 1516
1517 BUG_ON(read_domains & I915_GEM_DOMAIN_CPU);
1518 BUG_ON(write_domain == I915_GEM_DOMAIN_CPU);
1352 1519
1353#if WATCH_BUF 1520#if WATCH_BUF
1354 DRM_INFO("%s: object %p read %08x -> %08x write %08x -> %08x\n", 1521 DRM_INFO("%s: object %p read %08x -> %08x write %08x -> %08x\n",
@@ -1385,34 +1552,11 @@ i915_gem_object_set_domain(struct drm_gem_object *obj,
1385 DRM_INFO("%s: CPU domain flush %08x invalidate %08x\n", 1552 DRM_INFO("%s: CPU domain flush %08x invalidate %08x\n",
1386 __func__, flush_domains, invalidate_domains); 1553 __func__, flush_domains, invalidate_domains);
1387#endif 1554#endif
1388 /*
1389 * If we're invaliding the CPU cache and flushing a GPU cache,
1390 * then pause for rendering so that the GPU caches will be
1391 * flushed before the cpu cache is invalidated
1392 */
1393 if ((invalidate_domains & I915_GEM_DOMAIN_CPU) &&
1394 (flush_domains & ~(I915_GEM_DOMAIN_CPU |
1395 I915_GEM_DOMAIN_GTT))) {
1396 ret = i915_gem_object_wait_rendering(obj);
1397 if (ret)
1398 return ret;
1399 }
1400 i915_gem_clflush_object(obj); 1555 i915_gem_clflush_object(obj);
1401 } 1556 }
1402 1557
1403 if ((write_domain | flush_domains) != 0) 1558 if ((write_domain | flush_domains) != 0)
1404 obj->write_domain = write_domain; 1559 obj->write_domain = write_domain;
1405
1406 /* If we're invalidating the CPU domain, clear the per-page CPU
1407 * domain list as well.
1408 */
1409 if (obj_priv->page_cpu_valid != NULL &&
1410 (write_domain != 0 ||
1411 read_domains & I915_GEM_DOMAIN_CPU)) {
1412 drm_free(obj_priv->page_cpu_valid, obj->size / PAGE_SIZE,
1413 DRM_MEM_DRIVER);
1414 obj_priv->page_cpu_valid = NULL;
1415 }
1416 obj->read_domains = read_domains; 1560 obj->read_domains = read_domains;
1417 1561
1418 dev->invalidate_domains |= invalidate_domains; 1562 dev->invalidate_domains |= invalidate_domains;
@@ -1423,47 +1567,94 @@ i915_gem_object_set_domain(struct drm_gem_object *obj,
1423 obj->read_domains, obj->write_domain, 1567 obj->read_domains, obj->write_domain,
1424 dev->invalidate_domains, dev->flush_domains); 1568 dev->invalidate_domains, dev->flush_domains);
1425#endif 1569#endif
1426 return 0;
1427} 1570}
1428 1571
1429/** 1572/**
1430 * Set the read/write domain on a range of the object. 1573 * Moves the object from a partially CPU read to a full one.
1431 * 1574 *
1432 * Currently only implemented for CPU reads, otherwise drops to normal 1575 * Note that this only resolves i915_gem_object_set_cpu_read_domain_range(),
1433 * i915_gem_object_set_domain(). 1576 * and doesn't handle transitioning from !(read_domains & I915_GEM_DOMAIN_CPU).
1434 */ 1577 */
1435static int 1578static void
1436i915_gem_object_set_domain_range(struct drm_gem_object *obj, 1579i915_gem_object_set_to_full_cpu_read_domain(struct drm_gem_object *obj)
1437 uint64_t offset,
1438 uint64_t size,
1439 uint32_t read_domains,
1440 uint32_t write_domain)
1441{ 1580{
1581 struct drm_device *dev = obj->dev;
1442 struct drm_i915_gem_object *obj_priv = obj->driver_private; 1582 struct drm_i915_gem_object *obj_priv = obj->driver_private;
1443 int ret, i;
1444 1583
1445 if (obj->read_domains & I915_GEM_DOMAIN_CPU) 1584 if (!obj_priv->page_cpu_valid)
1446 return 0; 1585 return;
1447 1586
1448 if (read_domains != I915_GEM_DOMAIN_CPU || 1587 /* If we're partially in the CPU read domain, finish moving it in.
1449 write_domain != 0) 1588 */
1450 return i915_gem_object_set_domain(obj, 1589 if (obj->read_domains & I915_GEM_DOMAIN_CPU) {
1451 read_domains, write_domain); 1590 int i;
1452 1591
1453 /* Wait on any GPU rendering to the object to be flushed. */ 1592 for (i = 0; i <= (obj->size - 1) / PAGE_SIZE; i++) {
1593 if (obj_priv->page_cpu_valid[i])
1594 continue;
1595 drm_clflush_pages(obj_priv->page_list + i, 1);
1596 }
1597 drm_agp_chipset_flush(dev);
1598 }
1599
1600 /* Free the page_cpu_valid mappings which are now stale, whether
1601 * or not we've got I915_GEM_DOMAIN_CPU.
1602 */
1603 drm_free(obj_priv->page_cpu_valid, obj->size / PAGE_SIZE,
1604 DRM_MEM_DRIVER);
1605 obj_priv->page_cpu_valid = NULL;
1606}
1607
1608/**
1609 * Set the CPU read domain on a range of the object.
1610 *
1611 * The object ends up with I915_GEM_DOMAIN_CPU in its read flags although it's
1612 * not entirely valid. The page_cpu_valid member of the object flags which
1613 * pages have been flushed, and will be respected by
1614 * i915_gem_object_set_to_cpu_domain() if it's called on to get a valid mapping
1615 * of the whole object.
1616 *
1617 * This function returns when the move is complete, including waiting on
1618 * flushes to occur.
1619 */
1620static int
1621i915_gem_object_set_cpu_read_domain_range(struct drm_gem_object *obj,
1622 uint64_t offset, uint64_t size)
1623{
1624 struct drm_i915_gem_object *obj_priv = obj->driver_private;
1625 int i, ret;
1626
1627 if (offset == 0 && size == obj->size)
1628 return i915_gem_object_set_to_cpu_domain(obj, 0);
1629
1630 i915_gem_object_flush_gpu_write_domain(obj);
1631 /* Wait on any GPU rendering and flushing to occur. */
1454 ret = i915_gem_object_wait_rendering(obj); 1632 ret = i915_gem_object_wait_rendering(obj);
1455 if (ret) 1633 if (ret != 0)
1456 return ret; 1634 return ret;
1635 i915_gem_object_flush_gtt_write_domain(obj);
1457 1636
1637 /* If we're already fully in the CPU read domain, we're done. */
1638 if (obj_priv->page_cpu_valid == NULL &&
1639 (obj->read_domains & I915_GEM_DOMAIN_CPU) != 0)
1640 return 0;
1641
1642 /* Otherwise, create/clear the per-page CPU read domain flag if we're
1643 * newly adding I915_GEM_DOMAIN_CPU
1644 */
1458 if (obj_priv->page_cpu_valid == NULL) { 1645 if (obj_priv->page_cpu_valid == NULL) {
1459 obj_priv->page_cpu_valid = drm_calloc(1, obj->size / PAGE_SIZE, 1646 obj_priv->page_cpu_valid = drm_calloc(1, obj->size / PAGE_SIZE,
1460 DRM_MEM_DRIVER); 1647 DRM_MEM_DRIVER);
1461 } 1648 if (obj_priv->page_cpu_valid == NULL)
1649 return -ENOMEM;
1650 } else if ((obj->read_domains & I915_GEM_DOMAIN_CPU) == 0)
1651 memset(obj_priv->page_cpu_valid, 0, obj->size / PAGE_SIZE);
1462 1652
1463 /* Flush the cache on any pages that are still invalid from the CPU's 1653 /* Flush the cache on any pages that are still invalid from the CPU's
1464 * perspective. 1654 * perspective.
1465 */ 1655 */
1466 for (i = offset / PAGE_SIZE; i <= (offset + size - 1) / PAGE_SIZE; i++) { 1656 for (i = offset / PAGE_SIZE; i <= (offset + size - 1) / PAGE_SIZE;
1657 i++) {
1467 if (obj_priv->page_cpu_valid[i]) 1658 if (obj_priv->page_cpu_valid[i])
1468 continue; 1659 continue;
1469 1660
@@ -1472,39 +1663,14 @@ i915_gem_object_set_domain_range(struct drm_gem_object *obj,
1472 obj_priv->page_cpu_valid[i] = 1; 1663 obj_priv->page_cpu_valid[i] = 1;
1473 } 1664 }
1474 1665
1475 return 0; 1666 /* It should now be out of any other write domains, and we can update
1476} 1667 * the domain values for our changes.
1477
1478/**
1479 * Once all of the objects have been set in the proper domain,
1480 * perform the necessary flush and invalidate operations.
1481 *
1482 * Returns the write domains flushed, for use in flush tracking.
1483 */
1484static uint32_t
1485i915_gem_dev_set_domain(struct drm_device *dev)
1486{
1487 uint32_t flush_domains = dev->flush_domains;
1488
1489 /*
1490 * Now that all the buffers are synced to the proper domains,
1491 * flush and invalidate the collected domains
1492 */ 1668 */
1493 if (dev->invalidate_domains | dev->flush_domains) { 1669 BUG_ON((obj->write_domain & ~I915_GEM_DOMAIN_CPU) != 0);
1494#if WATCH_EXEC
1495 DRM_INFO("%s: invalidate_domains %08x flush_domains %08x\n",
1496 __func__,
1497 dev->invalidate_domains,
1498 dev->flush_domains);
1499#endif
1500 i915_gem_flush(dev,
1501 dev->invalidate_domains,
1502 dev->flush_domains);
1503 dev->invalidate_domains = 0;
1504 dev->flush_domains = 0;
1505 }
1506 1670
1507 return flush_domains; 1671 obj->read_domains |= I915_GEM_DOMAIN_CPU;
1672
1673 return 0;
1508} 1674}
1509 1675
1510/** 1676/**
@@ -1585,6 +1751,18 @@ i915_gem_object_pin_and_relocate(struct drm_gem_object *obj,
1585 return -EINVAL; 1751 return -EINVAL;
1586 } 1752 }
1587 1753
1754 if (reloc.write_domain & I915_GEM_DOMAIN_CPU ||
1755 reloc.read_domains & I915_GEM_DOMAIN_CPU) {
1756 DRM_ERROR("reloc with read/write CPU domains: "
1757 "obj %p target %d offset %d "
1758 "read %08x write %08x",
1759 obj, reloc.target_handle,
1760 (int) reloc.offset,
1761 reloc.read_domains,
1762 reloc.write_domain);
1763 return -EINVAL;
1764 }
1765
1588 if (reloc.write_domain && target_obj->pending_write_domain && 1766 if (reloc.write_domain && target_obj->pending_write_domain &&
1589 reloc.write_domain != target_obj->pending_write_domain) { 1767 reloc.write_domain != target_obj->pending_write_domain) {
1590 DRM_ERROR("Write domain conflict: " 1768 DRM_ERROR("Write domain conflict: "
@@ -1625,19 +1803,11 @@ i915_gem_object_pin_and_relocate(struct drm_gem_object *obj,
1625 continue; 1803 continue;
1626 } 1804 }
1627 1805
1628 /* Now that we're going to actually write some data in, 1806 ret = i915_gem_object_set_to_gtt_domain(obj, 1);
1629 * make sure that any rendering using this buffer's contents 1807 if (ret != 0) {
1630 * is completed. 1808 drm_gem_object_unreference(target_obj);
1631 */ 1809 i915_gem_object_unpin(obj);
1632 i915_gem_object_wait_rendering(obj); 1810 return -EINVAL;
1633
1634 /* As we're writing through the gtt, flush
1635 * any CPU writes before we write the relocations
1636 */
1637 if (obj->write_domain & I915_GEM_DOMAIN_CPU) {
1638 i915_gem_clflush_object(obj);
1639 drm_agp_chipset_flush(dev);
1640 obj->write_domain = 0;
1641 } 1811 }
1642 1812
1643 /* Map the page containing the relocation we're going to 1813 /* Map the page containing the relocation we're going to
@@ -1779,6 +1949,7 @@ i915_gem_execbuffer(struct drm_device *dev, void *data,
1779 int ret, i, pinned = 0; 1949 int ret, i, pinned = 0;
1780 uint64_t exec_offset; 1950 uint64_t exec_offset;
1781 uint32_t seqno, flush_domains; 1951 uint32_t seqno, flush_domains;
1952 int pin_tries;
1782 1953
1783#if WATCH_EXEC 1954#if WATCH_EXEC
1784 DRM_INFO("buffers_ptr %d buffer_count %d len %08x\n", 1955 DRM_INFO("buffers_ptr %d buffer_count %d len %08x\n",
@@ -1827,14 +1998,7 @@ i915_gem_execbuffer(struct drm_device *dev, void *data,
1827 return -EBUSY; 1998 return -EBUSY;
1828 } 1999 }
1829 2000
1830 /* Zero the gloabl flush/invalidate flags. These 2001 /* Look up object handles */
1831 * will be modified as each object is bound to the
1832 * gtt
1833 */
1834 dev->invalidate_domains = 0;
1835 dev->flush_domains = 0;
1836
1837 /* Look up object handles and perform the relocations */
1838 for (i = 0; i < args->buffer_count; i++) { 2002 for (i = 0; i < args->buffer_count; i++) {
1839 object_list[i] = drm_gem_object_lookup(dev, file_priv, 2003 object_list[i] = drm_gem_object_lookup(dev, file_priv,
1840 exec_list[i].handle); 2004 exec_list[i].handle);
@@ -1844,17 +2008,39 @@ i915_gem_execbuffer(struct drm_device *dev, void *data,
1844 ret = -EBADF; 2008 ret = -EBADF;
1845 goto err; 2009 goto err;
1846 } 2010 }
2011 }
1847 2012
1848 object_list[i]->pending_read_domains = 0; 2013 /* Pin and relocate */
1849 object_list[i]->pending_write_domain = 0; 2014 for (pin_tries = 0; ; pin_tries++) {
1850 ret = i915_gem_object_pin_and_relocate(object_list[i], 2015 ret = 0;
1851 file_priv, 2016 for (i = 0; i < args->buffer_count; i++) {
1852 &exec_list[i]); 2017 object_list[i]->pending_read_domains = 0;
1853 if (ret) { 2018 object_list[i]->pending_write_domain = 0;
1854 DRM_ERROR("object bind and relocate failed %d\n", ret); 2019 ret = i915_gem_object_pin_and_relocate(object_list[i],
2020 file_priv,
2021 &exec_list[i]);
2022 if (ret)
2023 break;
2024 pinned = i + 1;
2025 }
2026 /* success */
2027 if (ret == 0)
2028 break;
2029
2030 /* error other than GTT full, or we've already tried again */
2031 if (ret != -ENOMEM || pin_tries >= 1) {
2032 DRM_ERROR("Failed to pin buffers %d\n", ret);
1855 goto err; 2033 goto err;
1856 } 2034 }
1857 pinned = i + 1; 2035
2036 /* unpin all of our buffers */
2037 for (i = 0; i < pinned; i++)
2038 i915_gem_object_unpin(object_list[i]);
2039
2040 /* evict everyone we can from the aperture */
2041 ret = i915_gem_evict_everything(dev);
2042 if (ret)
2043 goto err;
1858 } 2044 }
1859 2045
1860 /* Set the pending read domains for the batch buffer to COMMAND */ 2046 /* Set the pending read domains for the batch buffer to COMMAND */
@@ -1864,21 +2050,37 @@ i915_gem_execbuffer(struct drm_device *dev, void *data,
1864 2050
1865 i915_verify_inactive(dev, __FILE__, __LINE__); 2051 i915_verify_inactive(dev, __FILE__, __LINE__);
1866 2052
2053 /* Zero the global flush/invalidate flags. These
2054 * will be modified as new domains are computed
2055 * for each object
2056 */
2057 dev->invalidate_domains = 0;
2058 dev->flush_domains = 0;
2059
1867 for (i = 0; i < args->buffer_count; i++) { 2060 for (i = 0; i < args->buffer_count; i++) {
1868 struct drm_gem_object *obj = object_list[i]; 2061 struct drm_gem_object *obj = object_list[i];
1869 2062
1870 /* make sure all previous memory operations have passed */ 2063 /* Compute new gpu domains and update invalidate/flush */
1871 ret = i915_gem_object_set_domain(obj, 2064 i915_gem_object_set_to_gpu_domain(obj,
1872 obj->pending_read_domains, 2065 obj->pending_read_domains,
1873 obj->pending_write_domain); 2066 obj->pending_write_domain);
1874 if (ret)
1875 goto err;
1876 } 2067 }
1877 2068
1878 i915_verify_inactive(dev, __FILE__, __LINE__); 2069 i915_verify_inactive(dev, __FILE__, __LINE__);
1879 2070
1880 /* Flush/invalidate caches and chipset buffer */ 2071 if (dev->invalidate_domains | dev->flush_domains) {
1881 flush_domains = i915_gem_dev_set_domain(dev); 2072#if WATCH_EXEC
2073 DRM_INFO("%s: invalidate_domains %08x flush_domains %08x\n",
2074 __func__,
2075 dev->invalidate_domains,
2076 dev->flush_domains);
2077#endif
2078 i915_gem_flush(dev,
2079 dev->invalidate_domains,
2080 dev->flush_domains);
2081 if (dev->flush_domains)
2082 (void)i915_add_request(dev, dev->flush_domains);
2083 }
1882 2084
1883 i915_verify_inactive(dev, __FILE__, __LINE__); 2085 i915_verify_inactive(dev, __FILE__, __LINE__);
1884 2086
@@ -1898,8 +2100,6 @@ i915_gem_execbuffer(struct drm_device *dev, void *data,
1898 ~0); 2100 ~0);
1899#endif 2101#endif
1900 2102
1901 (void)i915_add_request(dev, flush_domains);
1902
1903 /* Exec the batchbuffer */ 2103 /* Exec the batchbuffer */
1904 ret = i915_dispatch_gem_execbuffer(dev, args, exec_offset); 2104 ret = i915_dispatch_gem_execbuffer(dev, args, exec_offset);
1905 if (ret) { 2105 if (ret) {
@@ -1927,10 +2127,8 @@ i915_gem_execbuffer(struct drm_device *dev, void *data,
1927 i915_file_priv->mm.last_gem_seqno = seqno; 2127 i915_file_priv->mm.last_gem_seqno = seqno;
1928 for (i = 0; i < args->buffer_count; i++) { 2128 for (i = 0; i < args->buffer_count; i++) {
1929 struct drm_gem_object *obj = object_list[i]; 2129 struct drm_gem_object *obj = object_list[i];
1930 struct drm_i915_gem_object *obj_priv = obj->driver_private;
1931 2130
1932 i915_gem_object_move_to_active(obj); 2131 i915_gem_object_move_to_active(obj, seqno);
1933 obj_priv->last_rendering_seqno = seqno;
1934#if WATCH_LRU 2132#if WATCH_LRU
1935 DRM_INFO("%s: move to exec list %p\n", __func__, obj); 2133 DRM_INFO("%s: move to exec list %p\n", __func__, obj);
1936#endif 2134#endif
@@ -2061,11 +2259,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data,
2061 /* XXX - flush the CPU caches for pinned objects 2259 /* XXX - flush the CPU caches for pinned objects
2062 * as the X server doesn't manage domains yet 2260 * as the X server doesn't manage domains yet
2063 */ 2261 */
2064 if (obj->write_domain & I915_GEM_DOMAIN_CPU) { 2262 i915_gem_object_flush_cpu_write_domain(obj);
2065 i915_gem_clflush_object(obj);
2066 drm_agp_chipset_flush(dev);
2067 obj->write_domain = 0;
2068 }
2069 args->offset = obj_priv->gtt_offset; 2263 args->offset = obj_priv->gtt_offset;
2070 drm_gem_object_unreference(obj); 2264 drm_gem_object_unreference(obj);
2071 mutex_unlock(&dev->struct_mutex); 2265 mutex_unlock(&dev->struct_mutex);
@@ -2167,29 +2361,6 @@ void i915_gem_free_object(struct drm_gem_object *obj)
2167 drm_free(obj->driver_private, 1, DRM_MEM_DRIVER); 2361 drm_free(obj->driver_private, 1, DRM_MEM_DRIVER);
2168} 2362}
2169 2363
2170static int
2171i915_gem_set_domain(struct drm_gem_object *obj,
2172 struct drm_file *file_priv,
2173 uint32_t read_domains,
2174 uint32_t write_domain)
2175{
2176 struct drm_device *dev = obj->dev;
2177 int ret;
2178 uint32_t flush_domains;
2179
2180 BUG_ON(!mutex_is_locked(&dev->struct_mutex));
2181
2182 ret = i915_gem_object_set_domain(obj, read_domains, write_domain);
2183 if (ret)
2184 return ret;
2185 flush_domains = i915_gem_dev_set_domain(obj->dev);
2186
2187 if (flush_domains & ~(I915_GEM_DOMAIN_CPU|I915_GEM_DOMAIN_GTT))
2188 (void) i915_add_request(dev, flush_domains);
2189
2190 return 0;
2191}
2192
2193/** Unbinds all objects that are on the given buffer list. */ 2364/** Unbinds all objects that are on the given buffer list. */
2194static int 2365static int
2195i915_gem_evict_from_list(struct drm_device *dev, struct list_head *head) 2366i915_gem_evict_from_list(struct drm_device *dev, struct list_head *head)
diff --git a/drivers/gpu/drm/i915/i915_gem_proc.c b/drivers/gpu/drm/i915/i915_gem_proc.c
index 93de15b4c9a7..e8d5abe1250e 100644
--- a/drivers/gpu/drm/i915/i915_gem_proc.c
+++ b/drivers/gpu/drm/i915/i915_gem_proc.c
@@ -166,10 +166,9 @@ static int i915_gem_request_info(char *buf, char **start, off_t offset,
166 list_for_each_entry(gem_request, &dev_priv->mm.request_list, 166 list_for_each_entry(gem_request, &dev_priv->mm.request_list,
167 list) 167 list)
168 { 168 {
169 DRM_PROC_PRINT(" %d @ %d %08x\n", 169 DRM_PROC_PRINT(" %d @ %d\n",
170 gem_request->seqno, 170 gem_request->seqno,
171 (int) (jiffies - gem_request->emitted_jiffies), 171 (int) (jiffies - gem_request->emitted_jiffies));
172 gem_request->flush_domains);
173 } 172 }
174 if (len > request + offset) 173 if (len > request + offset)
175 return request; 174 return request;
diff --git a/drivers/gpu/drm/i915/i915_gem_tiling.c b/drivers/gpu/drm/i915/i915_gem_tiling.c
index e8b85ac4ca04..a8cb69469c64 100644
--- a/drivers/gpu/drm/i915/i915_gem_tiling.c
+++ b/drivers/gpu/drm/i915/i915_gem_tiling.c
@@ -119,9 +119,10 @@ i915_gem_detect_bit_6_swizzle(struct drm_device *dev)
119 dcc & DCC_CHANNEL_XOR_DISABLE) { 119 dcc & DCC_CHANNEL_XOR_DISABLE) {
120 swizzle_x = I915_BIT_6_SWIZZLE_9_10; 120 swizzle_x = I915_BIT_6_SWIZZLE_9_10;
121 swizzle_y = I915_BIT_6_SWIZZLE_9; 121 swizzle_y = I915_BIT_6_SWIZZLE_9;
122 } else if (IS_I965GM(dev) || IS_GM45(dev)) { 122 } else if ((IS_I965GM(dev) || IS_GM45(dev)) &&
123 /* GM965 only does bit 11-based channel 123 (dcc & DCC_CHANNEL_XOR_BIT_17) == 0) {
124 * randomization 124 /* GM965/GM45 does either bit 11 or bit 17
125 * swizzling.
125 */ 126 */
126 swizzle_x = I915_BIT_6_SWIZZLE_9_10_11; 127 swizzle_x = I915_BIT_6_SWIZZLE_9_10_11;
127 swizzle_y = I915_BIT_6_SWIZZLE_9_11; 128 swizzle_y = I915_BIT_6_SWIZZLE_9_11;
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 0e476eba36e6..9d24aaeb8a45 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -522,6 +522,7 @@
522#define DCC_ADDRESSING_MODE_DUAL_CHANNEL_INTERLEAVED (2 << 0) 522#define DCC_ADDRESSING_MODE_DUAL_CHANNEL_INTERLEAVED (2 << 0)
523#define DCC_ADDRESSING_MODE_MASK (3 << 0) 523#define DCC_ADDRESSING_MODE_MASK (3 << 0)
524#define DCC_CHANNEL_XOR_DISABLE (1 << 10) 524#define DCC_CHANNEL_XOR_DISABLE (1 << 10)
525#define DCC_CHANNEL_XOR_BIT_17 (1 << 9)
525 526
526/** 965 MCH register controlling DRAM channel configuration */ 527/** 965 MCH register controlling DRAM channel configuration */
527#define C0DRB3 0x10206 528#define C0DRB3 0x10206
diff --git a/drivers/gpu/drm/radeon/radeon_drv.h b/drivers/gpu/drm/radeon/radeon_drv.h
index 7a183789be97..3bbb871b25d5 100644
--- a/drivers/gpu/drm/radeon/radeon_drv.h
+++ b/drivers/gpu/drm/radeon/radeon_drv.h
@@ -299,7 +299,6 @@ typedef struct drm_radeon_private {
299 atomic_t swi_emitted; 299 atomic_t swi_emitted;
300 int vblank_crtc; 300 int vblank_crtc;
301 uint32_t irq_enable_reg; 301 uint32_t irq_enable_reg;
302 int irq_enabled;
303 uint32_t r500_disp_irq_reg; 302 uint32_t r500_disp_irq_reg;
304 303
305 struct radeon_surface surfaces[RADEON_MAX_SURFACES]; 304 struct radeon_surface surfaces[RADEON_MAX_SURFACES];
diff --git a/drivers/gpu/drm/radeon/radeon_irq.c b/drivers/gpu/drm/radeon/radeon_irq.c
index 97c0599fdb1e..99be11418ac2 100644
--- a/drivers/gpu/drm/radeon/radeon_irq.c
+++ b/drivers/gpu/drm/radeon/radeon_irq.c
@@ -44,7 +44,8 @@ void radeon_irq_set_state(struct drm_device *dev, u32 mask, int state)
44 else 44 else
45 dev_priv->irq_enable_reg &= ~mask; 45 dev_priv->irq_enable_reg &= ~mask;
46 46
47 RADEON_WRITE(RADEON_GEN_INT_CNTL, dev_priv->irq_enable_reg); 47 if (!dev->irq_enabled)
48 RADEON_WRITE(RADEON_GEN_INT_CNTL, dev_priv->irq_enable_reg);
48} 49}
49 50
50static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state) 51static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state)
@@ -56,7 +57,8 @@ static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state)
56 else 57 else
57 dev_priv->r500_disp_irq_reg &= ~mask; 58 dev_priv->r500_disp_irq_reg &= ~mask;
58 59
59 RADEON_WRITE(R500_DxMODE_INT_MASK, dev_priv->r500_disp_irq_reg); 60 if (!dev->irq_enabled)
61 RADEON_WRITE(R500_DxMODE_INT_MASK, dev_priv->r500_disp_irq_reg);
60} 62}
61 63
62int radeon_enable_vblank(struct drm_device *dev, int crtc) 64int radeon_enable_vblank(struct drm_device *dev, int crtc)
@@ -355,8 +357,6 @@ void radeon_driver_irq_uninstall(struct drm_device * dev)
355 if (!dev_priv) 357 if (!dev_priv)
356 return; 358 return;
357 359
358 dev_priv->irq_enabled = 0;
359
360 if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_RS690) 360 if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_RS690)
361 RADEON_WRITE(R500_DxMODE_INT_MASK, 0); 361 RADEON_WRITE(R500_DxMODE_INT_MASK, 0);
362 /* Disable *all* interrupts */ 362 /* Disable *all* interrupts */
diff --git a/drivers/ide/Kconfig b/drivers/ide/Kconfig
index 57630402ea67..1a00bb7db872 100644
--- a/drivers/ide/Kconfig
+++ b/drivers/ide/Kconfig
@@ -669,10 +669,12 @@ config BLK_DEV_CELLEB
669 669
670endif 670endif
671 671
672# TODO: BLK_DEV_IDEDMA_PCI -> BLK_DEV_IDEDMA_SFF
672config BLK_DEV_IDE_PMAC 673config BLK_DEV_IDE_PMAC
673 tristate "PowerMac on-board IDE support" 674 tristate "PowerMac on-board IDE support"
674 depends on PPC_PMAC && IDE=y 675 depends on PPC_PMAC && IDE=y
675 select IDE_TIMINGS 676 select IDE_TIMINGS
677 select BLK_DEV_IDEDMA_PCI
676 help 678 help
677 This driver provides support for the on-board IDE controller on 679 This driver provides support for the on-board IDE controller on
678 most of the recent Apple Power Macintoshes and PowerBooks. 680 most of the recent Apple Power Macintoshes and PowerBooks.
@@ -689,16 +691,6 @@ config BLK_DEV_IDE_PMAC_ATA100FIRST
689 CD-ROM on hda. This option changes this to more natural hda for 691 CD-ROM on hda. This option changes this to more natural hda for
690 hard disk and hdc for CD-ROM. 692 hard disk and hdc for CD-ROM.
691 693
692config BLK_DEV_IDEDMA_PMAC
693 bool "PowerMac IDE DMA support"
694 depends on BLK_DEV_IDE_PMAC
695 select BLK_DEV_IDEDMA_PCI
696 help
697 This option allows the driver for the on-board IDE controller on
698 Power Macintoshes and PowerBooks to use DMA (direct memory access)
699 to transfer data to and from memory. Saying Y is safe and improves
700 performance.
701
702config BLK_DEV_IDE_AU1XXX 694config BLK_DEV_IDE_AU1XXX
703 bool "IDE for AMD Alchemy Au1200" 695 bool "IDE for AMD Alchemy Au1200"
704 depends on SOC_AU1200 696 depends on SOC_AU1200
@@ -912,7 +904,7 @@ config BLK_DEV_UMC8672
912endif 904endif
913 905
914config BLK_DEV_IDEDMA 906config BLK_DEV_IDEDMA
915 def_bool BLK_DEV_IDEDMA_SFF || BLK_DEV_IDEDMA_PMAC || \ 907 def_bool BLK_DEV_IDEDMA_SFF || \
916 BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA 908 BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
917 909
918endif # IDE 910endif # IDE
diff --git a/drivers/ide/alim15x3.c b/drivers/ide/alim15x3.c
index e56c7b72f9e2..45d2356bb725 100644
--- a/drivers/ide/alim15x3.c
+++ b/drivers/ide/alim15x3.c
@@ -591,7 +591,7 @@ static int __init ali15x3_ide_init(void)
591 591
592static void __exit ali15x3_ide_exit(void) 592static void __exit ali15x3_ide_exit(void)
593{ 593{
594 return pci_unregister_driver(&alim15x3_pci_driver); 594 pci_unregister_driver(&alim15x3_pci_driver);
595} 595}
596 596
597module_init(ali15x3_ide_init); 597module_init(ali15x3_ide_init);
diff --git a/drivers/ide/amd74xx.c b/drivers/ide/amd74xx.c
index 81ec73134eda..c6bcd3014a29 100644
--- a/drivers/ide/amd74xx.c
+++ b/drivers/ide/amd74xx.c
@@ -3,7 +3,7 @@
3 * IDE driver for Linux. 3 * IDE driver for Linux.
4 * 4 *
5 * Copyright (c) 2000-2002 Vojtech Pavlik 5 * Copyright (c) 2000-2002 Vojtech Pavlik
6 * Copyright (c) 2007 Bartlomiej Zolnierkiewicz 6 * Copyright (c) 2007-2008 Bartlomiej Zolnierkiewicz
7 * 7 *
8 * Based on the work of: 8 * Based on the work of:
9 * Andre Hedrick 9 * Andre Hedrick
@@ -263,6 +263,15 @@ static int __devinit amd74xx_probe(struct pci_dev *dev, const struct pci_device_
263 d.udma_mask = ATA_UDMA5; 263 d.udma_mask = ATA_UDMA5;
264 } 264 }
265 265
266 /*
267 * It seems that on some nVidia controllers using AltStatus
268 * register can be unreliable so default to Status register
269 * if the device is in Compatibility Mode.
270 */
271 if (dev->vendor == PCI_VENDOR_ID_NVIDIA &&
272 ide_pci_is_in_compatibility_mode(dev))
273 d.host_flags |= IDE_HFLAG_BROKEN_ALTSTATUS;
274
266 printk(KERN_INFO "%s %s: UDMA%s controller\n", 275 printk(KERN_INFO "%s %s: UDMA%s controller\n",
267 d.name, pci_name(dev), amd_dma[fls(d.udma_mask) - 1]); 276 d.name, pci_name(dev), amd_dma[fls(d.udma_mask) - 1]);
268 277
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c
index 7162d67562af..cc35d6dbd410 100644
--- a/drivers/ide/ide-io.c
+++ b/drivers/ide/ide-io.c
@@ -132,10 +132,14 @@ int ide_end_request (ide_drive_t *drive, int uptodate, int nr_sectors)
132} 132}
133EXPORT_SYMBOL(ide_end_request); 133EXPORT_SYMBOL(ide_end_request);
134 134
135static void ide_complete_power_step(ide_drive_t *drive, struct request *rq, u8 stat, u8 error) 135static void ide_complete_power_step(ide_drive_t *drive, struct request *rq)
136{ 136{
137 struct request_pm_state *pm = rq->data; 137 struct request_pm_state *pm = rq->data;
138 138
139#ifdef DEBUG_PM
140 printk(KERN_INFO "%s: complete_power_step(step: %d)\n",
141 drive->name, pm->pm_step);
142#endif
139 if (drive->media != ide_disk) 143 if (drive->media != ide_disk)
140 return; 144 return;
141 145
@@ -172,7 +176,7 @@ static ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request *
172 /* Not supported? Switch to next step now. */ 176 /* Not supported? Switch to next step now. */
173 if (ata_id_flush_enabled(drive->id) == 0 || 177 if (ata_id_flush_enabled(drive->id) == 0 ||
174 (drive->dev_flags & IDE_DFLAG_WCACHE) == 0) { 178 (drive->dev_flags & IDE_DFLAG_WCACHE) == 0) {
175 ide_complete_power_step(drive, rq, 0, 0); 179 ide_complete_power_step(drive, rq);
176 return ide_stopped; 180 return ide_stopped;
177 } 181 }
178 if (ata_id_flush_ext_enabled(drive->id)) 182 if (ata_id_flush_ext_enabled(drive->id))
@@ -191,7 +195,7 @@ static ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request *
191 if (drive->media != ide_disk) 195 if (drive->media != ide_disk)
192 pm->pm_step = IDE_PM_RESTORE_DMA; 196 pm->pm_step = IDE_PM_RESTORE_DMA;
193 else 197 else
194 ide_complete_power_step(drive, rq, 0, 0); 198 ide_complete_power_step(drive, rq);
195 return ide_stopped; 199 return ide_stopped;
196 case IDE_PM_IDLE: /* Resume step 2 (idle) */ 200 case IDE_PM_IDLE: /* Resume step 2 (idle) */
197 args->tf.command = ATA_CMD_IDLEIMMEDIATE; 201 args->tf.command = ATA_CMD_IDLEIMMEDIATE;
@@ -322,11 +326,8 @@ void ide_end_drive_cmd (ide_drive_t *drive, u8 stat, u8 err)
322 } 326 }
323 } else if (blk_pm_request(rq)) { 327 } else if (blk_pm_request(rq)) {
324 struct request_pm_state *pm = rq->data; 328 struct request_pm_state *pm = rq->data;
325#ifdef DEBUG_PM 329
326 printk("%s: complete_power_step(step: %d, stat: %x, err: %x)\n", 330 ide_complete_power_step(drive, rq);
327 drive->name, rq->pm->pm_step, stat, err);
328#endif
329 ide_complete_power_step(drive, rq, stat, err);
330 if (pm->pm_step == IDE_PM_COMPLETED) 331 if (pm->pm_step == IDE_PM_COMPLETED)
331 ide_complete_pm_request(drive, rq); 332 ide_complete_pm_request(drive, rq);
332 return; 333 return;
@@ -804,7 +805,7 @@ static ide_startstop_t start_request (ide_drive_t *drive, struct request *rq)
804 struct request_pm_state *pm = rq->data; 805 struct request_pm_state *pm = rq->data;
805#ifdef DEBUG_PM 806#ifdef DEBUG_PM
806 printk("%s: start_power_step(step: %d)\n", 807 printk("%s: start_power_step(step: %d)\n",
807 drive->name, rq->pm->pm_step); 808 drive->name, pm->pm_step);
808#endif 809#endif
809 startstop = ide_start_power_step(drive, rq); 810 startstop = ide_start_power_step(drive, rq);
810 if (startstop == ide_stopped && 811 if (startstop == ide_stopped &&
@@ -967,14 +968,13 @@ static void ide_do_request (ide_hwgroup_t *hwgroup, int masked_irq)
967 ide_startstop_t startstop; 968 ide_startstop_t startstop;
968 int loops = 0; 969 int loops = 0;
969 970
970 /* for atari only: POSSIBLY BROKEN HERE(?) */
971 ide_get_lock(ide_intr, hwgroup);
972
973 /* caller must own ide_lock */ 971 /* caller must own ide_lock */
974 BUG_ON(!irqs_disabled()); 972 BUG_ON(!irqs_disabled());
975 973
976 while (!hwgroup->busy) { 974 while (!hwgroup->busy) {
977 hwgroup->busy = 1; 975 hwgroup->busy = 1;
976 /* for atari only */
977 ide_get_lock(ide_intr, hwgroup);
978 drive = choose_drive(hwgroup); 978 drive = choose_drive(hwgroup);
979 if (drive == NULL) { 979 if (drive == NULL) {
980 int sleeping = 0; 980 int sleeping = 0;
diff --git a/drivers/ide/ide-iops.c b/drivers/ide/ide-iops.c
index 5d6ba14e211d..c41c3b9b6f02 100644
--- a/drivers/ide/ide-iops.c
+++ b/drivers/ide/ide-iops.c
@@ -457,18 +457,14 @@ int drive_is_ready (ide_drive_t *drive)
457 if (drive->waiting_for_dma) 457 if (drive->waiting_for_dma)
458 return hwif->dma_ops->dma_test_irq(drive); 458 return hwif->dma_ops->dma_test_irq(drive);
459 459
460#if 0
461 /* need to guarantee 400ns since last command was issued */
462 udelay(1);
463#endif
464
465 /* 460 /*
466 * We do a passive status test under shared PCI interrupts on 461 * We do a passive status test under shared PCI interrupts on
467 * cards that truly share the ATA side interrupt, but may also share 462 * cards that truly share the ATA side interrupt, but may also share
468 * an interrupt with another pci card/device. We make no assumptions 463 * an interrupt with another pci card/device. We make no assumptions
469 * about possible isa-pnp and pci-pnp issues yet. 464 * about possible isa-pnp and pci-pnp issues yet.
470 */ 465 */
471 if (hwif->io_ports.ctl_addr) 466 if (hwif->io_ports.ctl_addr &&
467 (hwif->host_flags & IDE_HFLAG_BROKEN_ALTSTATUS) == 0)
472 stat = hwif->tp_ops->read_altstatus(hwif); 468 stat = hwif->tp_ops->read_altstatus(hwif);
473 else 469 else
474 /* Note: this may clear a pending IRQ!! */ 470 /* Note: this may clear a pending IRQ!! */
@@ -610,6 +606,7 @@ static const struct drive_list_entry ivb_list[] = {
610 { "TSSTcorp CDDVDW SH-S202N" , "SB01" }, 606 { "TSSTcorp CDDVDW SH-S202N" , "SB01" },
611 { "TSSTcorp CDDVDW SH-S202H" , "SB00" }, 607 { "TSSTcorp CDDVDW SH-S202H" , "SB00" },
612 { "TSSTcorp CDDVDW SH-S202H" , "SB01" }, 608 { "TSSTcorp CDDVDW SH-S202H" , "SB01" },
609 { "SAMSUNG SP0822N" , "WA100-10" },
613 { NULL , NULL } 610 { NULL , NULL }
614}; 611};
615 612
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c
index 1649ea54f76c..c55bdbd22314 100644
--- a/drivers/ide/ide-probe.c
+++ b/drivers/ide/ide-probe.c
@@ -266,7 +266,8 @@ static int actual_try_to_identify (ide_drive_t *drive, u8 cmd)
266 /* take a deep breath */ 266 /* take a deep breath */
267 msleep(50); 267 msleep(50);
268 268
269 if (io_ports->ctl_addr) { 269 if (io_ports->ctl_addr &&
270 (hwif->host_flags & IDE_HFLAG_BROKEN_ALTSTATUS) == 0) {
270 a = tp_ops->read_altstatus(hwif); 271 a = tp_ops->read_altstatus(hwif);
271 s = tp_ops->read_status(hwif); 272 s = tp_ops->read_status(hwif);
272 if ((a ^ s) & ~ATA_IDX) 273 if ((a ^ s) & ~ATA_IDX)
diff --git a/drivers/ide/pmac.c b/drivers/ide/pmac.c
index 2e19d6298536..7c481bb56fab 100644
--- a/drivers/ide/pmac.c
+++ b/drivers/ide/pmac.c
@@ -66,7 +66,6 @@ typedef struct pmac_ide_hwif {
66 struct macio_dev *mdev; 66 struct macio_dev *mdev;
67 u32 timings[4]; 67 u32 timings[4];
68 volatile u32 __iomem * *kauai_fcr; 68 volatile u32 __iomem * *kauai_fcr;
69#ifdef CONFIG_BLK_DEV_IDEDMA_PMAC
70 /* Those fields are duplicating what is in hwif. We currently 69 /* Those fields are duplicating what is in hwif. We currently
71 * can't use the hwif ones because of some assumptions that are 70 * can't use the hwif ones because of some assumptions that are
72 * beeing done by the generic code about the kind of dma controller 71 * beeing done by the generic code about the kind of dma controller
@@ -74,8 +73,6 @@ typedef struct pmac_ide_hwif {
74 */ 73 */
75 volatile struct dbdma_regs __iomem * dma_regs; 74 volatile struct dbdma_regs __iomem * dma_regs;
76 struct dbdma_cmd* dma_table_cpu; 75 struct dbdma_cmd* dma_table_cpu;
77#endif
78
79} pmac_ide_hwif_t; 76} pmac_ide_hwif_t;
80 77
81enum { 78enum {
@@ -222,8 +219,6 @@ static const char* model_name[] = {
222#define KAUAI_FCR_UATA_RESET_N 0x00000002 219#define KAUAI_FCR_UATA_RESET_N 0x00000002
223#define KAUAI_FCR_UATA_ENABLE 0x00000001 220#define KAUAI_FCR_UATA_ENABLE 0x00000001
224 221
225#ifdef CONFIG_BLK_DEV_IDEDMA_PMAC
226
227/* Rounded Multiword DMA timings 222/* Rounded Multiword DMA timings
228 * 223 *
229 * I gave up finding a generic formula for all controller 224 * I gave up finding a generic formula for all controller
@@ -413,8 +408,6 @@ static int pmac_ide_build_dmatable(ide_drive_t *drive, struct request *rq);
413static void pmac_ide_selectproc(ide_drive_t *drive); 408static void pmac_ide_selectproc(ide_drive_t *drive);
414static void pmac_ide_kauai_selectproc(ide_drive_t *drive); 409static void pmac_ide_kauai_selectproc(ide_drive_t *drive);
415 410
416#endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */
417
418#define PMAC_IDE_REG(x) \ 411#define PMAC_IDE_REG(x) \
419 ((void __iomem *)((drive)->hwif->io_ports.data_addr + (x))) 412 ((void __iomem *)((drive)->hwif->io_ports.data_addr + (x)))
420 413
@@ -584,8 +577,6 @@ pmac_ide_set_pio_mode(ide_drive_t *drive, const u8 pio)
584 pmac_ide_do_update_timings(drive); 577 pmac_ide_do_update_timings(drive);
585} 578}
586 579
587#ifdef CONFIG_BLK_DEV_IDEDMA_PMAC
588
589/* 580/*
590 * Calculate KeyLargo ATA/66 UDMA timings 581 * Calculate KeyLargo ATA/66 UDMA timings
591 */ 582 */
@@ -786,7 +777,6 @@ set_timings_mdma(ide_drive_t *drive, int intf_type, u32 *timings, u32 *timings2,
786 drive->name, speed & 0xf, *timings); 777 drive->name, speed & 0xf, *timings);
787#endif 778#endif
788} 779}
789#endif /* #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC */
790 780
791static void pmac_ide_set_dma_mode(ide_drive_t *drive, const u8 speed) 781static void pmac_ide_set_dma_mode(ide_drive_t *drive, const u8 speed)
792{ 782{
@@ -804,7 +794,6 @@ static void pmac_ide_set_dma_mode(ide_drive_t *drive, const u8 speed)
804 tl[0] = *timings; 794 tl[0] = *timings;
805 tl[1] = *timings2; 795 tl[1] = *timings2;
806 796
807#ifdef CONFIG_BLK_DEV_IDEDMA_PMAC
808 if (speed >= XFER_UDMA_0) { 797 if (speed >= XFER_UDMA_0) {
809 if (pmif->kind == controller_kl_ata4) 798 if (pmif->kind == controller_kl_ata4)
810 ret = set_timings_udma_ata4(&tl[0], speed); 799 ret = set_timings_udma_ata4(&tl[0], speed);
@@ -817,7 +806,7 @@ static void pmac_ide_set_dma_mode(ide_drive_t *drive, const u8 speed)
817 ret = -1; 806 ret = -1;
818 } else 807 } else
819 set_timings_mdma(drive, pmif->kind, &tl[0], &tl[1], speed); 808 set_timings_mdma(drive, pmif->kind, &tl[0], &tl[1], speed);
820#endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */ 809
821 if (ret) 810 if (ret)
822 return; 811 return;
823 812
@@ -1008,9 +997,7 @@ static const struct ide_port_info pmac_port_info = {
1008 .chipset = ide_pmac, 997 .chipset = ide_pmac,
1009 .tp_ops = &pmac_tp_ops, 998 .tp_ops = &pmac_tp_ops,
1010 .port_ops = &pmac_ide_port_ops, 999 .port_ops = &pmac_ide_port_ops,
1011#ifdef CONFIG_BLK_DEV_IDEDMA_PMAC
1012 .dma_ops = &pmac_dma_ops, 1000 .dma_ops = &pmac_dma_ops,
1013#endif
1014 .host_flags = IDE_HFLAG_SET_PIO_MODE_KEEP_DMA | 1001 .host_flags = IDE_HFLAG_SET_PIO_MODE_KEEP_DMA |
1015 IDE_HFLAG_POST_SET_MODE | 1002 IDE_HFLAG_POST_SET_MODE |
1016 IDE_HFLAG_MMIO | 1003 IDE_HFLAG_MMIO |
@@ -1182,7 +1169,7 @@ pmac_ide_macio_attach(struct macio_dev *mdev, const struct of_device_id *match)
1182 pmif->regbase = regbase; 1169 pmif->regbase = regbase;
1183 pmif->irq = irq; 1170 pmif->irq = irq;
1184 pmif->kauai_fcr = NULL; 1171 pmif->kauai_fcr = NULL;
1185#ifdef CONFIG_BLK_DEV_IDEDMA_PMAC 1172
1186 if (macio_resource_count(mdev) >= 2) { 1173 if (macio_resource_count(mdev) >= 2) {
1187 if (macio_request_resource(mdev, 1, "ide-pmac (dma)")) 1174 if (macio_request_resource(mdev, 1, "ide-pmac (dma)"))
1188 printk(KERN_WARNING "ide-pmac: can't request DMA " 1175 printk(KERN_WARNING "ide-pmac: can't request DMA "
@@ -1192,7 +1179,7 @@ pmac_ide_macio_attach(struct macio_dev *mdev, const struct of_device_id *match)
1192 pmif->dma_regs = ioremap(macio_resource_start(mdev, 1), 0x1000); 1179 pmif->dma_regs = ioremap(macio_resource_start(mdev, 1), 0x1000);
1193 } else 1180 } else
1194 pmif->dma_regs = NULL; 1181 pmif->dma_regs = NULL;
1195#endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */ 1182
1196 dev_set_drvdata(&mdev->ofdev.dev, pmif); 1183 dev_set_drvdata(&mdev->ofdev.dev, pmif);
1197 1184
1198 memset(&hw, 0, sizeof(hw)); 1185 memset(&hw, 0, sizeof(hw));
@@ -1300,9 +1287,7 @@ pmac_ide_pci_attach(struct pci_dev *pdev, const struct pci_device_id *id)
1300 1287
1301 base = ioremap(rbase, rlen); 1288 base = ioremap(rbase, rlen);
1302 pmif->regbase = (unsigned long) base + 0x2000; 1289 pmif->regbase = (unsigned long) base + 0x2000;
1303#ifdef CONFIG_BLK_DEV_IDEDMA_PMAC
1304 pmif->dma_regs = base + 0x1000; 1290 pmif->dma_regs = base + 0x1000;
1305#endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */
1306 pmif->kauai_fcr = base; 1291 pmif->kauai_fcr = base;
1307 pmif->irq = pdev->irq; 1292 pmif->irq = pdev->irq;
1308 1293
@@ -1434,8 +1419,6 @@ out:
1434 return error; 1419 return error;
1435} 1420}
1436 1421
1437#ifdef CONFIG_BLK_DEV_IDEDMA_PMAC
1438
1439/* 1422/*
1440 * pmac_ide_build_dmatable builds the DBDMA command list 1423 * pmac_ide_build_dmatable builds the DBDMA command list
1441 * for a transfer and sets the DBDMA channel to point to it. 1424 * for a transfer and sets the DBDMA channel to point to it.
@@ -1723,13 +1706,6 @@ static int __devinit pmac_ide_init_dma(ide_hwif_t *hwif,
1723 1706
1724 return 0; 1707 return 0;
1725} 1708}
1726#else
1727static int __devinit pmac_ide_init_dma(ide_hwif_t *hwif,
1728 const struct ide_port_info *d)
1729{
1730 return -EOPNOTSUPP;
1731}
1732#endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */
1733 1709
1734module_init(pmac_ide_probe); 1710module_init(pmac_ide_probe);
1735 1711
diff --git a/drivers/ide/sgiioc4.c b/drivers/ide/sgiioc4.c
index 7defa0ae2014..a687a7dfea6f 100644
--- a/drivers/ide/sgiioc4.c
+++ b/drivers/ide/sgiioc4.c
@@ -550,7 +550,7 @@ static const struct ide_dma_ops sgiioc4_dma_ops = {
550 .dma_timeout = ide_dma_timeout, 550 .dma_timeout = ide_dma_timeout,
551}; 551};
552 552
553static const struct ide_port_info sgiioc4_port_info __devinitdata = { 553static const struct ide_port_info sgiioc4_port_info __devinitconst = {
554 .name = DRV_NAME, 554 .name = DRV_NAME,
555 .chipset = ide_pci, 555 .chipset = ide_pci,
556 .init_dma = ide_dma_sgiioc4, 556 .init_dma = ide_dma_sgiioc4,
@@ -633,7 +633,7 @@ out:
633 return ret; 633 return ret;
634} 634}
635 635
636int 636int __devinit
637ioc4_ide_attach_one(struct ioc4_driver_data *idd) 637ioc4_ide_attach_one(struct ioc4_driver_data *idd)
638{ 638{
639 /* PCI-RT does not bring out IDE connection. 639 /* PCI-RT does not bring out IDE connection.
@@ -645,7 +645,7 @@ ioc4_ide_attach_one(struct ioc4_driver_data *idd)
645 return pci_init_sgiioc4(idd->idd_pdev); 645 return pci_init_sgiioc4(idd->idd_pdev);
646} 646}
647 647
648static struct ioc4_submodule ioc4_ide_submodule = { 648static struct ioc4_submodule __devinitdata ioc4_ide_submodule = {
649 .is_name = "IOC4_ide", 649 .is_name = "IOC4_ide",
650 .is_owner = THIS_MODULE, 650 .is_owner = THIS_MODULE,
651 .is_probe = ioc4_ide_attach_one, 651 .is_probe = ioc4_ide_attach_one,
diff --git a/drivers/ieee1394/nodemgr.c b/drivers/ieee1394/nodemgr.c
index 9e39f73282ee..d333ae22459c 100644
--- a/drivers/ieee1394/nodemgr.c
+++ b/drivers/ieee1394/nodemgr.c
@@ -1685,6 +1685,7 @@ static int nodemgr_host_thread(void *data)
1685 g = get_hpsb_generation(host); 1685 g = get_hpsb_generation(host);
1686 for (i = 0; i < 4 ; i++) { 1686 for (i = 0; i < 4 ; i++) {
1687 msleep_interruptible(63); 1687 msleep_interruptible(63);
1688 try_to_freeze();
1688 if (kthread_should_stop()) 1689 if (kthread_should_stop())
1689 goto exit; 1690 goto exit;
1690 1691
@@ -1725,6 +1726,7 @@ static int nodemgr_host_thread(void *data)
1725 /* Sleep 3 seconds */ 1726 /* Sleep 3 seconds */
1726 for (i = 3000/200; i; i--) { 1727 for (i = 3000/200; i; i--) {
1727 msleep_interruptible(200); 1728 msleep_interruptible(200);
1729 try_to_freeze();
1728 if (kthread_should_stop()) 1730 if (kthread_should_stop())
1729 goto exit; 1731 goto exit;
1730 1732
diff --git a/drivers/input/keyboard/omap-keypad.c b/drivers/input/keyboard/omap-keypad.c
index 69e674ecf19a..db22fd9b4cf2 100644
--- a/drivers/input/keyboard/omap-keypad.c
+++ b/drivers/input/keyboard/omap-keypad.c
@@ -101,7 +101,7 @@ static irqreturn_t omap_kp_interrupt(int irq, void *dev_id)
101 if (cpu_is_omap24xx()) { 101 if (cpu_is_omap24xx()) {
102 int i; 102 int i;
103 for (i = 0; i < omap_kp->rows; i++) 103 for (i = 0; i < omap_kp->rows; i++)
104 disable_irq(OMAP_GPIO_IRQ(row_gpios[i])); 104 disable_irq(gpio_to_irq(row_gpios[i]));
105 } else 105 } else
106 /* disable keyboard interrupt and schedule for handling */ 106 /* disable keyboard interrupt and schedule for handling */
107 omap_writew(1, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT); 107 omap_writew(1, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT);
@@ -224,7 +224,7 @@ static void omap_kp_tasklet(unsigned long data)
224 if (cpu_is_omap24xx()) { 224 if (cpu_is_omap24xx()) {
225 int i; 225 int i;
226 for (i = 0; i < omap_kp_data->rows; i++) 226 for (i = 0; i < omap_kp_data->rows; i++)
227 enable_irq(OMAP_GPIO_IRQ(row_gpios[i])); 227 enable_irq(gpio_to_irq(row_gpios[i]));
228 } else { 228 } else {
229 omap_writew(0, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT); 229 omap_writew(0, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT);
230 kp_cur_group = -1; 230 kp_cur_group = -1;
@@ -397,7 +397,7 @@ static int __init omap_kp_probe(struct platform_device *pdev)
397 omap_writew(0, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT); 397 omap_writew(0, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT);
398 } else { 398 } else {
399 for (irq_idx = 0; irq_idx < omap_kp->rows; irq_idx++) { 399 for (irq_idx = 0; irq_idx < omap_kp->rows; irq_idx++) {
400 if (request_irq(OMAP_GPIO_IRQ(row_gpios[irq_idx]), 400 if (request_irq(gpio_to_irq(row_gpios[irq_idx]),
401 omap_kp_interrupt, 401 omap_kp_interrupt,
402 IRQF_TRIGGER_FALLING, 402 IRQF_TRIGGER_FALLING,
403 "omap-keypad", omap_kp) < 0) 403 "omap-keypad", omap_kp) < 0)
@@ -438,7 +438,7 @@ static int omap_kp_remove(struct platform_device *pdev)
438 gpio_free(col_gpios[i]); 438 gpio_free(col_gpios[i]);
439 for (i = 0; i < omap_kp->rows; i++) { 439 for (i = 0; i < omap_kp->rows; i++) {
440 gpio_free(row_gpios[i]); 440 gpio_free(row_gpios[i]);
441 free_irq(OMAP_GPIO_IRQ(row_gpios[i]), 0); 441 free_irq(gpio_to_irq(row_gpios[i]), 0);
442 } 442 }
443 } else { 443 } else {
444 omap_writew(1, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT); 444 omap_writew(1, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT);
diff --git a/drivers/isdn/hardware/avm/b1isa.c b/drivers/isdn/hardware/avm/b1isa.c
index 1e288eeb5e2a..6461a32bc838 100644
--- a/drivers/isdn/hardware/avm/b1isa.c
+++ b/drivers/isdn/hardware/avm/b1isa.c
@@ -233,10 +233,8 @@ static void __exit b1isa_exit(void)
233 int i; 233 int i;
234 234
235 for (i = 0; i < MAX_CARDS; i++) { 235 for (i = 0; i < MAX_CARDS; i++) {
236 if (!io[i]) 236 if (isa_dev[i].resource[0].start)
237 break; 237 b1isa_remove(&isa_dev[i]);
238
239 b1isa_remove(&isa_dev[i]);
240 } 238 }
241 unregister_capi_driver(&capi_driver_b1isa); 239 unregister_capi_driver(&capi_driver_b1isa);
242} 240}
diff --git a/drivers/isdn/hysdn/hysdn_net.c b/drivers/isdn/hysdn/hysdn_net.c
index cfa8fa5e44ab..3f2a0a20c19b 100644
--- a/drivers/isdn/hysdn/hysdn_net.c
+++ b/drivers/isdn/hysdn/hysdn_net.c
@@ -83,12 +83,12 @@ net_open(struct net_device *dev)
83 83
84 /* Fill in the MAC-level header (if not already set) */ 84 /* Fill in the MAC-level header (if not already set) */
85 if (!card->mac_addr[0]) { 85 if (!card->mac_addr[0]) {
86 for (i = 0; i < ETH_ALEN - sizeof(unsigned long); i++) 86 for (i = 0; i < ETH_ALEN; i++)
87 dev->dev_addr[i] = 0xfc; 87 dev->dev_addr[i] = 0xfc;
88 if ((in_dev = dev->ip_ptr) != NULL) { 88 if ((in_dev = dev->ip_ptr) != NULL) {
89 struct in_ifaddr *ifa = in_dev->ifa_list; 89 struct in_ifaddr *ifa = in_dev->ifa_list;
90 if (ifa != NULL) 90 if (ifa != NULL)
91 memcpy(dev->dev_addr + (ETH_ALEN - sizeof(unsigned long)), &ifa->ifa_local, sizeof(unsigned long)); 91 memcpy(dev->dev_addr + (ETH_ALEN - sizeof(ifa->ifa_local)), &ifa->ifa_local, sizeof(ifa->ifa_local));
92 } 92 }
93 } else 93 } else
94 memcpy(dev->dev_addr, card->mac_addr, ETH_ALEN); 94 memcpy(dev->dev_addr, card->mac_addr, ETH_ALEN);
diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
index a63161aec487..04e5fd742c2c 100644
--- a/drivers/md/dm-table.c
+++ b/drivers/md/dm-table.c
@@ -668,7 +668,7 @@ static void check_for_valid_limits(struct io_restrictions *rs)
668 if (!rs->max_segment_size) 668 if (!rs->max_segment_size)
669 rs->max_segment_size = MAX_SEGMENT_SIZE; 669 rs->max_segment_size = MAX_SEGMENT_SIZE;
670 if (!rs->seg_boundary_mask) 670 if (!rs->seg_boundary_mask)
671 rs->seg_boundary_mask = -1; 671 rs->seg_boundary_mask = BLK_SEG_BOUNDARY_MASK;
672 if (!rs->bounce_pfn) 672 if (!rs->bounce_pfn)
673 rs->bounce_pfn = -1; 673 rs->bounce_pfn = -1;
674} 674}
diff --git a/drivers/message/i2o/i2o_block.c b/drivers/message/i2o/i2o_block.c
index 84bdc2ee69e6..a443e136dc41 100644
--- a/drivers/message/i2o/i2o_block.c
+++ b/drivers/message/i2o/i2o_block.c
@@ -354,7 +354,7 @@ static inline void i2o_block_sglist_free(struct i2o_block_request *ireq)
354 * @req: the request to prepare 354 * @req: the request to prepare
355 * 355 *
356 * Allocate the necessary i2o_block_request struct and connect it to 356 * Allocate the necessary i2o_block_request struct and connect it to
357 * the request. This is needed that we not loose the SG list later on. 357 * the request. This is needed that we not lose the SG list later on.
358 * 358 *
359 * Returns BLKPREP_OK on success or BLKPREP_DEFER on failure. 359 * Returns BLKPREP_OK on success or BLKPREP_DEFER on failure.
360 */ 360 */
diff --git a/drivers/message/i2o/iop.c b/drivers/message/i2o/iop.c
index be2b5926d26c..6e53a30bfd38 100644
--- a/drivers/message/i2o/iop.c
+++ b/drivers/message/i2o/iop.c
@@ -49,7 +49,6 @@ static int i2o_hrt_get(struct i2o_controller *c);
49/** 49/**
50 * i2o_msg_get_wait - obtain an I2O message from the IOP 50 * i2o_msg_get_wait - obtain an I2O message from the IOP
51 * @c: I2O controller 51 * @c: I2O controller
52 * @msg: pointer to a I2O message pointer
53 * @wait: how long to wait until timeout 52 * @wait: how long to wait until timeout
54 * 53 *
55 * This function waits up to wait seconds for a message slot to be 54 * This function waits up to wait seconds for a message slot to be
diff --git a/drivers/misc/sgi-gru/grufault.c b/drivers/misc/sgi-gru/grufault.c
index 8c389d606c30..3ee698ad8599 100644
--- a/drivers/misc/sgi-gru/grufault.c
+++ b/drivers/misc/sgi-gru/grufault.c
@@ -254,7 +254,11 @@ static int atomic_pte_lookup(struct vm_area_struct *vma, unsigned long vaddr,
254 return 1; 254 return 1;
255 255
256 *paddr = pte_pfn(pte) << PAGE_SHIFT; 256 *paddr = pte_pfn(pte) << PAGE_SHIFT;
257#ifdef CONFIG_HUGETLB_PAGE
257 *pageshift = is_vm_hugetlb_page(vma) ? HPAGE_SHIFT : PAGE_SHIFT; 258 *pageshift = is_vm_hugetlb_page(vma) ? HPAGE_SHIFT : PAGE_SHIFT;
259#else
260 *pageshift = PAGE_SHIFT;
261#endif
258 return 0; 262 return 0;
259 263
260err: 264err:
diff --git a/drivers/misc/sgi-gru/grufile.c b/drivers/misc/sgi-gru/grufile.c
index 5c027b6b4e5a..650983806392 100644
--- a/drivers/misc/sgi-gru/grufile.c
+++ b/drivers/misc/sgi-gru/grufile.c
@@ -481,7 +481,7 @@ struct vm_operations_struct gru_vm_ops = {
481 .fault = gru_fault, 481 .fault = gru_fault,
482}; 482};
483 483
484module_init(gru_init); 484fs_initcall(gru_init);
485module_exit(gru_exit); 485module_exit(gru_exit);
486 486
487module_param(gru_options, ulong, 0644); 487module_param(gru_options, ulong, 0644);
diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c
index 76a76751da36..6659b2275c0c 100644
--- a/drivers/mtd/devices/m25p80.c
+++ b/drivers/mtd/devices/m25p80.c
@@ -37,9 +37,9 @@
37#define OPCODE_NORM_READ 0x03 /* Read data bytes (low frequency) */ 37#define OPCODE_NORM_READ 0x03 /* Read data bytes (low frequency) */
38#define OPCODE_FAST_READ 0x0b /* Read data bytes (high frequency) */ 38#define OPCODE_FAST_READ 0x0b /* Read data bytes (high frequency) */
39#define OPCODE_PP 0x02 /* Page program (up to 256 bytes) */ 39#define OPCODE_PP 0x02 /* Page program (up to 256 bytes) */
40#define OPCODE_BE_4K 0x20 /* Erase 4KiB block */ 40#define OPCODE_BE_4K 0x20 /* Erase 4KiB block */
41#define OPCODE_BE_32K 0x52 /* Erase 32KiB block */ 41#define OPCODE_BE_32K 0x52 /* Erase 32KiB block */
42#define OPCODE_BE 0xc7 /* Erase whole flash block */ 42#define OPCODE_CHIP_ERASE 0xc7 /* Erase whole flash chip */
43#define OPCODE_SE 0xd8 /* Sector erase (usually 64KiB) */ 43#define OPCODE_SE 0xd8 /* Sector erase (usually 64KiB) */
44#define OPCODE_RDID 0x9f /* Read JEDEC ID */ 44#define OPCODE_RDID 0x9f /* Read JEDEC ID */
45 45
@@ -167,7 +167,7 @@ static int wait_till_ready(struct m25p *flash)
167 * 167 *
168 * Returns 0 if successful, non-zero otherwise. 168 * Returns 0 if successful, non-zero otherwise.
169 */ 169 */
170static int erase_block(struct m25p *flash) 170static int erase_chip(struct m25p *flash)
171{ 171{
172 DEBUG(MTD_DEBUG_LEVEL3, "%s: %s %dKiB\n", 172 DEBUG(MTD_DEBUG_LEVEL3, "%s: %s %dKiB\n",
173 flash->spi->dev.bus_id, __func__, 173 flash->spi->dev.bus_id, __func__,
@@ -181,7 +181,7 @@ static int erase_block(struct m25p *flash)
181 write_enable(flash); 181 write_enable(flash);
182 182
183 /* Set up command buffer. */ 183 /* Set up command buffer. */
184 flash->command[0] = OPCODE_BE; 184 flash->command[0] = OPCODE_CHIP_ERASE;
185 185
186 spi_write(flash->spi, flash->command, 1); 186 spi_write(flash->spi, flash->command, 1);
187 187
@@ -250,15 +250,18 @@ static int m25p80_erase(struct mtd_info *mtd, struct erase_info *instr)
250 250
251 mutex_lock(&flash->lock); 251 mutex_lock(&flash->lock);
252 252
253 /* REVISIT in some cases we could speed up erasing large regions 253 /* whole-chip erase? */
254 * by using OPCODE_SE instead of OPCODE_BE_4K 254 if (len == flash->mtd.size && erase_chip(flash)) {
255 */
256
257 /* now erase those sectors */
258 if (len == flash->mtd.size && erase_block(flash)) {
259 instr->state = MTD_ERASE_FAILED; 255 instr->state = MTD_ERASE_FAILED;
260 mutex_unlock(&flash->lock); 256 mutex_unlock(&flash->lock);
261 return -EIO; 257 return -EIO;
258
259 /* REVISIT in some cases we could speed up erasing large regions
260 * by using OPCODE_SE instead of OPCODE_BE_4K. We may have set up
261 * to use "small sector erase", but that's not always optimal.
262 */
263
264 /* "sector"-at-a-time erase */
262 } else { 265 } else {
263 while (len) { 266 while (len) {
264 if (erase_sector(flash, addr)) { 267 if (erase_sector(flash, addr)) {
@@ -574,10 +577,11 @@ static struct flash_info *__devinit jedec_probe(struct spi_device *spi)
574 for (tmp = 0, info = m25p_data; 577 for (tmp = 0, info = m25p_data;
575 tmp < ARRAY_SIZE(m25p_data); 578 tmp < ARRAY_SIZE(m25p_data);
576 tmp++, info++) { 579 tmp++, info++) {
577 if (info->jedec_id == jedec) 580 if (info->jedec_id == jedec) {
578 if (ext_jedec != 0 && info->ext_id != ext_jedec) 581 if (info->ext_id != 0 && info->ext_id != ext_jedec)
579 continue; 582 continue;
580 return info; 583 return info;
584 }
581 } 585 }
582 dev_err(&spi->dev, "unrecognized JEDEC id %06x\n", jedec); 586 dev_err(&spi->dev, "unrecognized JEDEC id %06x\n", jedec);
583 return NULL; 587 return NULL;
diff --git a/drivers/mtd/maps/physmap.c b/drivers/mtd/maps/physmap.c
index 42d844f8f6bf..dfbf3f270cea 100644
--- a/drivers/mtd/maps/physmap.c
+++ b/drivers/mtd/maps/physmap.c
@@ -19,7 +19,7 @@
19#include <linux/mtd/partitions.h> 19#include <linux/mtd/partitions.h>
20#include <linux/mtd/physmap.h> 20#include <linux/mtd/physmap.h>
21#include <linux/mtd/concat.h> 21#include <linux/mtd/concat.h>
22#include <asm/io.h> 22#include <linux/io.h>
23 23
24#define MAX_RESOURCES 4 24#define MAX_RESOURCES 4
25 25
@@ -27,7 +27,6 @@ struct physmap_flash_info {
27 struct mtd_info *mtd[MAX_RESOURCES]; 27 struct mtd_info *mtd[MAX_RESOURCES];
28 struct mtd_info *cmtd; 28 struct mtd_info *cmtd;
29 struct map_info map[MAX_RESOURCES]; 29 struct map_info map[MAX_RESOURCES];
30 struct resource *res;
31#ifdef CONFIG_MTD_PARTITIONS 30#ifdef CONFIG_MTD_PARTITIONS
32 int nr_parts; 31 int nr_parts;
33 struct mtd_partition *parts; 32 struct mtd_partition *parts;
@@ -70,16 +69,7 @@ static int physmap_flash_remove(struct platform_device *dev)
70#endif 69#endif
71 map_destroy(info->mtd[i]); 70 map_destroy(info->mtd[i]);
72 } 71 }
73
74 if (info->map[i].virt != NULL)
75 iounmap(info->map[i].virt);
76 }
77
78 if (info->res != NULL) {
79 release_resource(info->res);
80 kfree(info->res);
81 } 72 }
82
83 return 0; 73 return 0;
84} 74}
85 75
@@ -101,7 +91,8 @@ static int physmap_flash_probe(struct platform_device *dev)
101 if (physmap_data == NULL) 91 if (physmap_data == NULL)
102 return -ENODEV; 92 return -ENODEV;
103 93
104 info = kzalloc(sizeof(struct physmap_flash_info), GFP_KERNEL); 94 info = devm_kzalloc(&dev->dev, sizeof(struct physmap_flash_info),
95 GFP_KERNEL);
105 if (info == NULL) { 96 if (info == NULL) {
106 err = -ENOMEM; 97 err = -ENOMEM;
107 goto err_out; 98 goto err_out;
@@ -114,10 +105,10 @@ static int physmap_flash_probe(struct platform_device *dev)
114 (unsigned long long)(dev->resource[i].end - dev->resource[i].start + 1), 105 (unsigned long long)(dev->resource[i].end - dev->resource[i].start + 1),
115 (unsigned long long)dev->resource[i].start); 106 (unsigned long long)dev->resource[i].start);
116 107
117 info->res = request_mem_region(dev->resource[i].start, 108 if (!devm_request_mem_region(&dev->dev,
118 dev->resource[i].end - dev->resource[i].start + 1, 109 dev->resource[i].start,
119 dev->dev.bus_id); 110 dev->resource[i].end - dev->resource[i].start + 1,
120 if (info->res == NULL) { 111 dev->dev.bus_id)) {
121 dev_err(&dev->dev, "Could not reserve memory region\n"); 112 dev_err(&dev->dev, "Could not reserve memory region\n");
122 err = -ENOMEM; 113 err = -ENOMEM;
123 goto err_out; 114 goto err_out;
@@ -129,7 +120,8 @@ static int physmap_flash_probe(struct platform_device *dev)
129 info->map[i].bankwidth = physmap_data->width; 120 info->map[i].bankwidth = physmap_data->width;
130 info->map[i].set_vpp = physmap_data->set_vpp; 121 info->map[i].set_vpp = physmap_data->set_vpp;
131 122
132 info->map[i].virt = ioremap(info->map[i].phys, info->map[i].size); 123 info->map[i].virt = devm_ioremap(&dev->dev, info->map[i].phys,
124 info->map[i].size);
133 if (info->map[i].virt == NULL) { 125 if (info->map[i].virt == NULL) {
134 dev_err(&dev->dev, "Failed to ioremap flash region\n"); 126 dev_err(&dev->dev, "Failed to ioremap flash region\n");
135 err = EIO; 127 err = EIO;
diff --git a/drivers/mtd/nand/fsl_upm.c b/drivers/mtd/nand/fsl_upm.c
index 024e3fffd4bb..a83192f80eba 100644
--- a/drivers/mtd/nand/fsl_upm.c
+++ b/drivers/mtd/nand/fsl_upm.c
@@ -163,9 +163,11 @@ static int __devinit fun_chip_init(struct fsl_upm_nand *fun,
163 ret = parse_mtd_partitions(&fun->mtd, part_types, &fun->parts, 0); 163 ret = parse_mtd_partitions(&fun->mtd, part_types, &fun->parts, 0);
164 164
165#ifdef CONFIG_MTD_OF_PARTS 165#ifdef CONFIG_MTD_OF_PARTS
166 if (ret == 0) 166 if (ret == 0) {
167 ret = of_mtd_parse_partitions(fun->dev, &fun->mtd, 167 ret = of_mtd_parse_partitions(fun->dev, flash_np, &fun->parts);
168 flash_np, &fun->parts); 168 if (ret < 0)
169 goto err;
170 }
169#endif 171#endif
170 if (ret > 0) 172 if (ret > 0)
171 ret = add_mtd_partitions(&fun->mtd, fun->parts, ret); 173 ret = add_mtd_partitions(&fun->mtd, fun->parts, ret);
diff --git a/drivers/mtd/nand/pasemi_nand.c b/drivers/mtd/nand/pasemi_nand.c
index 75c899039023..9bd6c9ac8443 100644
--- a/drivers/mtd/nand/pasemi_nand.c
+++ b/drivers/mtd/nand/pasemi_nand.c
@@ -141,6 +141,7 @@ static int __devinit pasemi_nand_probe(struct of_device *ofdev,
141 } 141 }
142 142
143 lpcctl = pci_resource_start(pdev, 0); 143 lpcctl = pci_resource_start(pdev, 0);
144 pci_dev_put(pdev);
144 145
145 if (!request_region(lpcctl, 4, driver_name)) { 146 if (!request_region(lpcctl, 4, driver_name)) {
146 err = -EBUSY; 147 err = -EBUSY;
diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
index ce5752ab579d..fc4144495610 100644
--- a/drivers/mtd/nand/pxa3xx_nand.c
+++ b/drivers/mtd/nand/pxa3xx_nand.c
@@ -269,6 +269,7 @@ static struct pxa3xx_nand_timing stm2GbX16_timing = {
269 269
270static struct pxa3xx_nand_flash stm2GbX16 = { 270static struct pxa3xx_nand_flash stm2GbX16 = {
271 .timing = &stm2GbX16_timing, 271 .timing = &stm2GbX16_timing,
272 .cmdset = &largepage_cmdset,
272 .page_per_block = 64, 273 .page_per_block = 64,
273 .page_size = 2048, 274 .page_size = 2048,
274 .flash_width = 16, 275 .flash_width = 16,
diff --git a/drivers/mtd/onenand/omap2.c b/drivers/mtd/onenand/omap2.c
index e39b21d3e168..d1e0b8e7224b 100644
--- a/drivers/mtd/onenand/omap2.c
+++ b/drivers/mtd/onenand/omap2.c
@@ -32,19 +32,18 @@
32#include <linux/platform_device.h> 32#include <linux/platform_device.h>
33#include <linux/interrupt.h> 33#include <linux/interrupt.h>
34#include <linux/delay.h> 34#include <linux/delay.h>
35#include <linux/dma-mapping.h>
36#include <linux/io.h>
35 37
36#include <asm/io.h>
37#include <asm/mach/flash.h> 38#include <asm/mach/flash.h>
38#include <asm/arch/gpmc.h> 39#include <mach/gpmc.h>
39#include <asm/arch/onenand.h> 40#include <mach/onenand.h>
40#include <asm/arch/gpio.h> 41#include <mach/gpio.h>
41#include <asm/arch/pm.h> 42#include <mach/pm.h>
42 43
43#include <linux/dma-mapping.h> 44#include <mach/dma.h>
44#include <asm/dma-mapping.h>
45#include <asm/arch/dma.h>
46 45
47#include <asm/arch/board.h> 46#include <mach/board.h>
48 47
49#define DRIVER_NAME "omap2-onenand" 48#define DRIVER_NAME "omap2-onenand"
50 49
@@ -150,7 +149,7 @@ static int omap2_onenand_wait(struct mtd_info *mtd, int state)
150 149
151 INIT_COMPLETION(c->irq_done); 150 INIT_COMPLETION(c->irq_done);
152 if (c->gpio_irq) { 151 if (c->gpio_irq) {
153 result = omap_get_gpio_datain(c->gpio_irq); 152 result = gpio_get_value(c->gpio_irq);
154 if (result == -1) { 153 if (result == -1) {
155 ctrl = read_reg(c, ONENAND_REG_CTRL_STATUS); 154 ctrl = read_reg(c, ONENAND_REG_CTRL_STATUS);
156 intr = read_reg(c, ONENAND_REG_INTERRUPT); 155 intr = read_reg(c, ONENAND_REG_INTERRUPT);
@@ -635,9 +634,9 @@ static int __devinit omap2_onenand_probe(struct platform_device *pdev)
635 "OneNAND\n", c->gpio_irq); 634 "OneNAND\n", c->gpio_irq);
636 goto err_iounmap; 635 goto err_iounmap;
637 } 636 }
638 omap_set_gpio_direction(c->gpio_irq, 1); 637 gpio_direction_input(c->gpio_irq);
639 638
640 if ((r = request_irq(OMAP_GPIO_IRQ(c->gpio_irq), 639 if ((r = request_irq(gpio_to_irq(c->gpio_irq),
641 omap2_onenand_interrupt, IRQF_TRIGGER_RISING, 640 omap2_onenand_interrupt, IRQF_TRIGGER_RISING,
642 pdev->dev.driver->name, c)) < 0) 641 pdev->dev.driver->name, c)) < 0)
643 goto err_release_gpio; 642 goto err_release_gpio;
@@ -724,7 +723,7 @@ err_release_dma:
724 if (c->dma_channel != -1) 723 if (c->dma_channel != -1)
725 omap_free_dma(c->dma_channel); 724 omap_free_dma(c->dma_channel);
726 if (c->gpio_irq) 725 if (c->gpio_irq)
727 free_irq(OMAP_GPIO_IRQ(c->gpio_irq), c); 726 free_irq(gpio_to_irq(c->gpio_irq), c);
728err_release_gpio: 727err_release_gpio:
729 if (c->gpio_irq) 728 if (c->gpio_irq)
730 omap_free_gpio(c->gpio_irq); 729 omap_free_gpio(c->gpio_irq);
@@ -761,7 +760,7 @@ static int __devexit omap2_onenand_remove(struct platform_device *pdev)
761 omap2_onenand_shutdown(pdev); 760 omap2_onenand_shutdown(pdev);
762 platform_set_drvdata(pdev, NULL); 761 platform_set_drvdata(pdev, NULL);
763 if (c->gpio_irq) { 762 if (c->gpio_irq) {
764 free_irq(OMAP_GPIO_IRQ(c->gpio_irq), c); 763 free_irq(gpio_to_irq(c->gpio_irq), c);
765 omap_free_gpio(c->gpio_irq); 764 omap_free_gpio(c->gpio_irq);
766 } 765 }
767 iounmap(c->onenand.base); 766 iounmap(c->onenand.base);
diff --git a/drivers/net/Makefile b/drivers/net/Makefile
index f19acf8b9220..017383ad5ec6 100644
--- a/drivers/net/Makefile
+++ b/drivers/net/Makefile
@@ -114,7 +114,7 @@ obj-$(CONFIG_EL2) += 3c503.o 8390p.o
114obj-$(CONFIG_NE2000) += ne.o 8390p.o 114obj-$(CONFIG_NE2000) += ne.o 8390p.o
115obj-$(CONFIG_NE2_MCA) += ne2.o 8390p.o 115obj-$(CONFIG_NE2_MCA) += ne2.o 8390p.o
116obj-$(CONFIG_HPLAN) += hp.o 8390p.o 116obj-$(CONFIG_HPLAN) += hp.o 8390p.o
117obj-$(CONFIG_HPLAN_PLUS) += hp-plus.o 8390.o 117obj-$(CONFIG_HPLAN_PLUS) += hp-plus.o 8390p.o
118obj-$(CONFIG_ULTRA) += smc-ultra.o 8390.o 118obj-$(CONFIG_ULTRA) += smc-ultra.o 8390.o
119obj-$(CONFIG_ULTRAMCA) += smc-mca.o 8390.o 119obj-$(CONFIG_ULTRAMCA) += smc-mca.o 8390.o
120obj-$(CONFIG_ULTRA32) += smc-ultra32.o 8390.o 120obj-$(CONFIG_ULTRA32) += smc-ultra32.o 8390.o
diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c
index d07e3f148951..a1a3d0e5d2b4 100644
--- a/drivers/net/bnx2.c
+++ b/drivers/net/bnx2.c
@@ -3144,6 +3144,28 @@ bnx2_has_work(struct bnx2_napi *bnapi)
3144 return 0; 3144 return 0;
3145} 3145}
3146 3146
3147static void
3148bnx2_chk_missed_msi(struct bnx2 *bp)
3149{
3150 struct bnx2_napi *bnapi = &bp->bnx2_napi[0];
3151 u32 msi_ctrl;
3152
3153 if (bnx2_has_work(bnapi)) {
3154 msi_ctrl = REG_RD(bp, BNX2_PCICFG_MSI_CONTROL);
3155 if (!(msi_ctrl & BNX2_PCICFG_MSI_CONTROL_ENABLE))
3156 return;
3157
3158 if (bnapi->last_status_idx == bp->idle_chk_status_idx) {
3159 REG_WR(bp, BNX2_PCICFG_MSI_CONTROL, msi_ctrl &
3160 ~BNX2_PCICFG_MSI_CONTROL_ENABLE);
3161 REG_WR(bp, BNX2_PCICFG_MSI_CONTROL, msi_ctrl);
3162 bnx2_msi(bp->irq_tbl[0].vector, bnapi);
3163 }
3164 }
3165
3166 bp->idle_chk_status_idx = bnapi->last_status_idx;
3167}
3168
3147static void bnx2_poll_link(struct bnx2 *bp, struct bnx2_napi *bnapi) 3169static void bnx2_poll_link(struct bnx2 *bp, struct bnx2_napi *bnapi)
3148{ 3170{
3149 struct status_block *sblk = bnapi->status_blk.msi; 3171 struct status_block *sblk = bnapi->status_blk.msi;
@@ -3218,14 +3240,15 @@ static int bnx2_poll(struct napi_struct *napi, int budget)
3218 3240
3219 work_done = bnx2_poll_work(bp, bnapi, work_done, budget); 3241 work_done = bnx2_poll_work(bp, bnapi, work_done, budget);
3220 3242
3221 if (unlikely(work_done >= budget))
3222 break;
3223
3224 /* bnapi->last_status_idx is used below to tell the hw how 3243 /* bnapi->last_status_idx is used below to tell the hw how
3225 * much work has been processed, so we must read it before 3244 * much work has been processed, so we must read it before
3226 * checking for more work. 3245 * checking for more work.
3227 */ 3246 */
3228 bnapi->last_status_idx = sblk->status_idx; 3247 bnapi->last_status_idx = sblk->status_idx;
3248
3249 if (unlikely(work_done >= budget))
3250 break;
3251
3229 rmb(); 3252 rmb();
3230 if (likely(!bnx2_has_work(bnapi))) { 3253 if (likely(!bnx2_has_work(bnapi))) {
3231 netif_rx_complete(bp->dev, napi); 3254 netif_rx_complete(bp->dev, napi);
@@ -4570,6 +4593,8 @@ bnx2_init_chip(struct bnx2 *bp)
4570 for (i = 0; i < BNX2_MAX_MSIX_VEC; i++) 4593 for (i = 0; i < BNX2_MAX_MSIX_VEC; i++)
4571 bp->bnx2_napi[i].last_status_idx = 0; 4594 bp->bnx2_napi[i].last_status_idx = 0;
4572 4595
4596 bp->idle_chk_status_idx = 0xffff;
4597
4573 bp->rx_mode = BNX2_EMAC_RX_MODE_SORT_MODE; 4598 bp->rx_mode = BNX2_EMAC_RX_MODE_SORT_MODE;
4574 4599
4575 /* Set up how to generate a link change interrupt. */ 4600 /* Set up how to generate a link change interrupt. */
@@ -5718,6 +5743,10 @@ bnx2_timer(unsigned long data)
5718 if (atomic_read(&bp->intr_sem) != 0) 5743 if (atomic_read(&bp->intr_sem) != 0)
5719 goto bnx2_restart_timer; 5744 goto bnx2_restart_timer;
5720 5745
5746 if ((bp->flags & (BNX2_FLAG_USING_MSI | BNX2_FLAG_ONE_SHOT_MSI)) ==
5747 BNX2_FLAG_USING_MSI)
5748 bnx2_chk_missed_msi(bp);
5749
5721 bnx2_send_heart_beat(bp); 5750 bnx2_send_heart_beat(bp);
5722 5751
5723 bp->stats_blk->stat_FwRxDrop = 5752 bp->stats_blk->stat_FwRxDrop =
diff --git a/drivers/net/bnx2.h b/drivers/net/bnx2.h
index 617d95340160..0b032c3c7b61 100644
--- a/drivers/net/bnx2.h
+++ b/drivers/net/bnx2.h
@@ -378,6 +378,9 @@ struct l2_fhdr {
378 * pci_config_l definition 378 * pci_config_l definition
379 * offset: 0000 379 * offset: 0000
380 */ 380 */
381#define BNX2_PCICFG_MSI_CONTROL 0x00000058
382#define BNX2_PCICFG_MSI_CONTROL_ENABLE (1L<<16)
383
381#define BNX2_PCICFG_MISC_CONFIG 0x00000068 384#define BNX2_PCICFG_MISC_CONFIG 0x00000068
382#define BNX2_PCICFG_MISC_CONFIG_TARGET_BYTE_SWAP (1L<<2) 385#define BNX2_PCICFG_MISC_CONFIG_TARGET_BYTE_SWAP (1L<<2)
383#define BNX2_PCICFG_MISC_CONFIG_TARGET_MB_WORD_SWAP (1L<<3) 386#define BNX2_PCICFG_MISC_CONFIG_TARGET_MB_WORD_SWAP (1L<<3)
@@ -6863,6 +6866,9 @@ struct bnx2 {
6863 6866
6864 u8 num_tx_rings; 6867 u8 num_tx_rings;
6865 u8 num_rx_rings; 6868 u8 num_rx_rings;
6869
6870 u32 idle_chk_status_idx;
6871
6866}; 6872};
6867 6873
6868#define REG_RD(bp, offset) \ 6874#define REG_RD(bp, offset) \
diff --git a/drivers/net/chelsio/sge.c b/drivers/net/chelsio/sge.c
index d6c7d2aa761b..7092df50ff78 100644
--- a/drivers/net/chelsio/sge.c
+++ b/drivers/net/chelsio/sge.c
@@ -1035,10 +1035,6 @@ MODULE_PARM_DESC(copybreak, "Receive copy threshold");
1035 * @pdev: the PCI device that received the packet 1035 * @pdev: the PCI device that received the packet
1036 * @fl: the SGE free list holding the packet 1036 * @fl: the SGE free list holding the packet
1037 * @len: the actual packet length, excluding any SGE padding 1037 * @len: the actual packet length, excluding any SGE padding
1038 * @dma_pad: padding at beginning of buffer left by SGE DMA
1039 * @skb_pad: padding to be used if the packet is copied
1040 * @copy_thres: length threshold under which a packet should be copied
1041 * @drop_thres: # of remaining buffers before we start dropping packets
1042 * 1038 *
1043 * Get the next packet from a free list and complete setup of the 1039 * Get the next packet from a free list and complete setup of the
1044 * sk_buff. If the packet is small we make a copy and recycle the 1040 * sk_buff. If the packet is small we make a copy and recycle the
diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c
index 91795f78c3e4..122539a0e1fe 100644
--- a/drivers/net/e1000e/netdev.c
+++ b/drivers/net/e1000e/netdev.c
@@ -345,7 +345,6 @@ no_buffers:
345/** 345/**
346 * e1000_alloc_jumbo_rx_buffers - Replace used jumbo receive buffers 346 * e1000_alloc_jumbo_rx_buffers - Replace used jumbo receive buffers
347 * @adapter: address of board private structure 347 * @adapter: address of board private structure
348 * @rx_ring: pointer to receive ring structure
349 * @cleaned_count: number of buffers to allocate this pass 348 * @cleaned_count: number of buffers to allocate this pass
350 **/ 349 **/
351 350
diff --git a/drivers/net/enc28j60.c b/drivers/net/enc28j60.c
index e1b441effbbe..c414554ac321 100644
--- a/drivers/net/enc28j60.c
+++ b/drivers/net/enc28j60.c
@@ -568,6 +568,17 @@ static u16 erxrdpt_workaround(u16 next_packet_ptr, u16 start, u16 end)
568 return erxrdpt; 568 return erxrdpt;
569} 569}
570 570
571/*
572 * Calculate wrap around when reading beyond the end of the RX buffer
573 */
574static u16 rx_packet_start(u16 ptr)
575{
576 if (ptr + RSV_SIZE > RXEND_INIT)
577 return (ptr + RSV_SIZE) - (RXEND_INIT - RXSTART_INIT + 1);
578 else
579 return ptr + RSV_SIZE;
580}
581
571static void nolock_rxfifo_init(struct enc28j60_net *priv, u16 start, u16 end) 582static void nolock_rxfifo_init(struct enc28j60_net *priv, u16 start, u16 end)
572{ 583{
573 u16 erxrdpt; 584 u16 erxrdpt;
@@ -938,8 +949,9 @@ static void enc28j60_hw_rx(struct net_device *ndev)
938 skb->dev = ndev; 949 skb->dev = ndev;
939 skb_reserve(skb, NET_IP_ALIGN); 950 skb_reserve(skb, NET_IP_ALIGN);
940 /* copy the packet from the receive buffer */ 951 /* copy the packet from the receive buffer */
941 enc28j60_mem_read(priv, priv->next_pk_ptr + sizeof(rsv), 952 enc28j60_mem_read(priv,
942 len, skb_put(skb, len)); 953 rx_packet_start(priv->next_pk_ptr),
954 len, skb_put(skb, len));
943 if (netif_msg_pktdata(priv)) 955 if (netif_msg_pktdata(priv))
944 dump_packet(__func__, skb->len, skb->data); 956 dump_packet(__func__, skb->len, skb->data);
945 skb->protocol = eth_type_trans(skb, ndev); 957 skb->protocol = eth_type_trans(skb, ndev);
diff --git a/drivers/net/hp-plus.c b/drivers/net/hp-plus.c
index fbbd3e660c27..c01e290d09d2 100644
--- a/drivers/net/hp-plus.c
+++ b/drivers/net/hp-plus.c
@@ -230,7 +230,7 @@ static int __init hpp_probe1(struct net_device *dev, int ioaddr)
230 dev->open = &hpp_open; 230 dev->open = &hpp_open;
231 dev->stop = &hpp_close; 231 dev->stop = &hpp_close;
232#ifdef CONFIG_NET_POLL_CONTROLLER 232#ifdef CONFIG_NET_POLL_CONTROLLER
233 dev->poll_controller = ei_poll; 233 dev->poll_controller = eip_poll;
234#endif 234#endif
235 235
236 ei_status.name = name; 236 ei_status.name = name;
diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c
index 1cbae85b1426..20d27e622ec1 100644
--- a/drivers/net/igb/igb_main.c
+++ b/drivers/net/igb/igb_main.c
@@ -1980,7 +1980,6 @@ static void igb_configure_rx(struct igb_adapter *adapter)
1980 1980
1981/** 1981/**
1982 * igb_free_tx_resources - Free Tx Resources per Queue 1982 * igb_free_tx_resources - Free Tx Resources per Queue
1983 * @adapter: board private structure
1984 * @tx_ring: Tx descriptor ring for a specific queue 1983 * @tx_ring: Tx descriptor ring for a specific queue
1985 * 1984 *
1986 * Free all transmit software resources 1985 * Free all transmit software resources
@@ -2033,7 +2032,6 @@ static void igb_unmap_and_free_tx_resource(struct igb_adapter *adapter,
2033 2032
2034/** 2033/**
2035 * igb_clean_tx_ring - Free Tx Buffers 2034 * igb_clean_tx_ring - Free Tx Buffers
2036 * @adapter: board private structure
2037 * @tx_ring: ring to be cleaned 2035 * @tx_ring: ring to be cleaned
2038 **/ 2036 **/
2039static void igb_clean_tx_ring(struct igb_ring *tx_ring) 2037static void igb_clean_tx_ring(struct igb_ring *tx_ring)
@@ -2080,7 +2078,6 @@ static void igb_clean_all_tx_rings(struct igb_adapter *adapter)
2080 2078
2081/** 2079/**
2082 * igb_free_rx_resources - Free Rx Resources 2080 * igb_free_rx_resources - Free Rx Resources
2083 * @adapter: board private structure
2084 * @rx_ring: ring to clean the resources from 2081 * @rx_ring: ring to clean the resources from
2085 * 2082 *
2086 * Free all receive software resources 2083 * Free all receive software resources
@@ -2120,7 +2117,6 @@ static void igb_free_all_rx_resources(struct igb_adapter *adapter)
2120 2117
2121/** 2118/**
2122 * igb_clean_rx_ring - Free Rx Buffers per Queue 2119 * igb_clean_rx_ring - Free Rx Buffers per Queue
2123 * @adapter: board private structure
2124 * @rx_ring: ring to free buffers from 2120 * @rx_ring: ring to free buffers from
2125 **/ 2121 **/
2126static void igb_clean_rx_ring(struct igb_ring *rx_ring) 2122static void igb_clean_rx_ring(struct igb_ring *rx_ring)
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c
index 8ed823ae639e..5236f633ee36 100644
--- a/drivers/net/ixgbe/ixgbe_main.c
+++ b/drivers/net/ixgbe/ixgbe_main.c
@@ -1320,7 +1320,6 @@ static inline void ixgbe_irq_enable(struct ixgbe_adapter *adapter)
1320 * ixgbe_intr - legacy mode Interrupt Handler 1320 * ixgbe_intr - legacy mode Interrupt Handler
1321 * @irq: interrupt number 1321 * @irq: interrupt number
1322 * @data: pointer to a network interface device structure 1322 * @data: pointer to a network interface device structure
1323 * @pt_regs: CPU registers structure
1324 **/ 1323 **/
1325static irqreturn_t ixgbe_intr(int irq, void *data) 1324static irqreturn_t ixgbe_intr(int irq, void *data)
1326{ 1325{
diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c
index 42394505bb50..590039cbb146 100644
--- a/drivers/net/macvlan.c
+++ b/drivers/net/macvlan.c
@@ -70,6 +70,9 @@ static void macvlan_broadcast(struct sk_buff *skb,
70 struct sk_buff *nskb; 70 struct sk_buff *nskb;
71 unsigned int i; 71 unsigned int i;
72 72
73 if (skb->protocol == htons(ETH_P_PAUSE))
74 return;
75
73 for (i = 0; i < MACVLAN_HASH_SIZE; i++) { 76 for (i = 0; i < MACVLAN_HASH_SIZE; i++) {
74 hlist_for_each_entry_rcu(vlan, n, &port->vlan_hash[i], hlist) { 77 hlist_for_each_entry_rcu(vlan, n, &port->vlan_hash[i], hlist) {
75 dev = vlan->dev; 78 dev = vlan->dev;
diff --git a/drivers/net/netx-eth.c b/drivers/net/netx-eth.c
index b9bed82e1d21..b289a0a2b945 100644
--- a/drivers/net/netx-eth.c
+++ b/drivers/net/netx-eth.c
@@ -401,6 +401,8 @@ static int netx_eth_drv_probe(struct platform_device *pdev)
401 priv->xmac_base = priv->xc->xmac_base; 401 priv->xmac_base = priv->xc->xmac_base;
402 priv->sram_base = priv->xc->sram_base; 402 priv->sram_base = priv->xc->sram_base;
403 403
404 spin_lock_init(&priv->lock);
405
404 ret = pfifo_request(PFIFO_MASK(priv->id)); 406 ret = pfifo_request(PFIFO_MASK(priv->id));
405 if (ret) { 407 if (ret) {
406 printk("unable to request PFIFO\n"); 408 printk("unable to request PFIFO\n");
diff --git a/drivers/net/pcmcia/axnet_cs.c b/drivers/net/pcmcia/axnet_cs.c
index b37a498939ae..0418045166c3 100644
--- a/drivers/net/pcmcia/axnet_cs.c
+++ b/drivers/net/pcmcia/axnet_cs.c
@@ -779,6 +779,7 @@ static struct pcmcia_device_id axnet_ids[] = {
779 PCMCIA_DEVICE_PROD_ID12("IO DATA", "ETXPCM", 0x547e66dc, 0x233adac2), 779 PCMCIA_DEVICE_PROD_ID12("IO DATA", "ETXPCM", 0x547e66dc, 0x233adac2),
780 PCMCIA_DEVICE_PROD_ID12("Linksys", "EtherFast 10/100 PC Card (PCMPC100 V3)", 0x0733cc81, 0x232019a8), 780 PCMCIA_DEVICE_PROD_ID12("Linksys", "EtherFast 10/100 PC Card (PCMPC100 V3)", 0x0733cc81, 0x232019a8),
781 PCMCIA_DEVICE_PROD_ID12("MELCO", "LPC3-TX", 0x481e0094, 0xf91af609), 781 PCMCIA_DEVICE_PROD_ID12("MELCO", "LPC3-TX", 0x481e0094, 0xf91af609),
782 PCMCIA_DEVICE_PROD_ID12("NETGEAR", "FA411", 0x9aa79dc3, 0x40fad875),
782 PCMCIA_DEVICE_PROD_ID12("PCMCIA", "100BASE", 0x281f1c5d, 0x7c2add04), 783 PCMCIA_DEVICE_PROD_ID12("PCMCIA", "100BASE", 0x281f1c5d, 0x7c2add04),
783 PCMCIA_DEVICE_PROD_ID12("PCMCIA", "FastEtherCard", 0x281f1c5d, 0x7ef26116), 784 PCMCIA_DEVICE_PROD_ID12("PCMCIA", "FastEtherCard", 0x281f1c5d, 0x7ef26116),
784 PCMCIA_DEVICE_PROD_ID12("PCMCIA", "FEP501", 0x281f1c5d, 0x2e272058), 785 PCMCIA_DEVICE_PROD_ID12("PCMCIA", "FEP501", 0x281f1c5d, 0x2e272058),
@@ -1174,7 +1175,6 @@ static int ei_start_xmit(struct sk_buff *skb, struct net_device *dev)
1174 * ax_interrupt - handle the interrupts from an 8390 1175 * ax_interrupt - handle the interrupts from an 8390
1175 * @irq: interrupt number 1176 * @irq: interrupt number
1176 * @dev_id: a pointer to the net_device 1177 * @dev_id: a pointer to the net_device
1177 * @regs: unused
1178 * 1178 *
1179 * Handle the ether interface interrupts. We pull packets from 1179 * Handle the ether interface interrupts. We pull packets from
1180 * the 8390 via the card specific functions and fire them at the networking 1180 * the 8390 via the card specific functions and fire them at the networking
diff --git a/drivers/net/pcmcia/pcnet_cs.c b/drivers/net/pcmcia/pcnet_cs.c
index e40d6301aa7a..ce486f094492 100644
--- a/drivers/net/pcmcia/pcnet_cs.c
+++ b/drivers/net/pcmcia/pcnet_cs.c
@@ -1693,7 +1693,6 @@ static struct pcmcia_device_id pcnet_ids[] = {
1693 PCMCIA_DEVICE_PROD_ID12("National Semiconductor", "InfoMover NE4100", 0x36e1191f, 0xa6617ec8), 1693 PCMCIA_DEVICE_PROD_ID12("National Semiconductor", "InfoMover NE4100", 0x36e1191f, 0xa6617ec8),
1694 PCMCIA_DEVICE_PROD_ID12("NEC", "PC-9801N-J12", 0x18df0ba0, 0xbc912d76), 1694 PCMCIA_DEVICE_PROD_ID12("NEC", "PC-9801N-J12", 0x18df0ba0, 0xbc912d76),
1695 PCMCIA_DEVICE_PROD_ID12("NETGEAR", "FA410TX", 0x9aa79dc3, 0x60e5bc0e), 1695 PCMCIA_DEVICE_PROD_ID12("NETGEAR", "FA410TX", 0x9aa79dc3, 0x60e5bc0e),
1696 PCMCIA_DEVICE_PROD_ID12("NETGEAR", "FA411", 0x9aa79dc3, 0x40fad875),
1697 PCMCIA_DEVICE_PROD_ID12("Network Everywhere", "Fast Ethernet 10/100 PC Card", 0x820a67b6, 0x31ed1a5f), 1696 PCMCIA_DEVICE_PROD_ID12("Network Everywhere", "Fast Ethernet 10/100 PC Card", 0x820a67b6, 0x31ed1a5f),
1698 PCMCIA_DEVICE_PROD_ID12("NextCom K.K.", "Next Hawk", 0xaedaec74, 0xad050ef1), 1697 PCMCIA_DEVICE_PROD_ID12("NextCom K.K.", "Next Hawk", 0xaedaec74, 0xad050ef1),
1699 PCMCIA_DEVICE_PROD_ID12("PCMCIA", "10/100Mbps Ethernet Card", 0x281f1c5d, 0x6e41773b), 1698 PCMCIA_DEVICE_PROD_ID12("PCMCIA", "10/100Mbps Ethernet Card", 0x281f1c5d, 0x6e41773b),
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
index 55bc24b234e3..25acbbde4a60 100644
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
@@ -227,8 +227,17 @@ struct phy_device * get_phy_device(struct mii_bus *bus, int addr)
227 if (r) 227 if (r)
228 return ERR_PTR(r); 228 return ERR_PTR(r);
229 229
230 /* If the phy_id is all Fs or all 0s, there is no device there */ 230 /* If the phy_id is mostly Fs, there is no device there */
231 if ((0xffff == phy_id) || (0x00 == phy_id)) 231 if ((phy_id & 0x1fffffff) == 0x1fffffff)
232 return NULL;
233
234 /*
235 * Broken hardware is sometimes missing the pull down resistor on the
236 * MDIO line, which results in reads to non-existent devices returning
237 * 0 rather than 0xffff. Catch this here and treat 0 as a non-existent
238 * device as well.
239 */
240 if (phy_id == 0)
232 return NULL; 241 return NULL;
233 242
234 dev = phy_device_create(bus, addr, phy_id); 243 dev = phy_device_create(bus, addr, phy_id);
diff --git a/drivers/net/phy/vitesse.c b/drivers/net/phy/vitesse.c
index 8874497b6bbf..dd3b2447e85a 100644
--- a/drivers/net/phy/vitesse.c
+++ b/drivers/net/phy/vitesse.c
@@ -34,6 +34,8 @@
34#define MII_VSC8244_IMASK_DUPLEX 0x1000 34#define MII_VSC8244_IMASK_DUPLEX 0x1000
35#define MII_VSC8244_IMASK_MASK 0xf000 35#define MII_VSC8244_IMASK_MASK 0xf000
36 36
37#define MII_VSC8221_IMASK_MASK 0xa000
38
37/* Vitesse Interrupt Status Register */ 39/* Vitesse Interrupt Status Register */
38#define MII_VSC8244_ISTAT 0x1a 40#define MII_VSC8244_ISTAT 0x1a
39#define MII_VSC8244_ISTAT_STATUS 0x8000 41#define MII_VSC8244_ISTAT_STATUS 0x8000
@@ -49,6 +51,12 @@
49#define MII_VSC8244_AUXCONSTAT_GBIT 0x0010 51#define MII_VSC8244_AUXCONSTAT_GBIT 0x0010
50#define MII_VSC8244_AUXCONSTAT_100 0x0008 52#define MII_VSC8244_AUXCONSTAT_100 0x0008
51 53
54#define MII_VSC8221_AUXCONSTAT_INIT 0x0004 /* need to set this bit? */
55#define MII_VSC8221_AUXCONSTAT_RESERVED 0x0004
56
57#define PHY_ID_VSC8244 0x000fc6c0
58#define PHY_ID_VSC8221 0x000fc550
59
52MODULE_DESCRIPTION("Vitesse PHY driver"); 60MODULE_DESCRIPTION("Vitesse PHY driver");
53MODULE_AUTHOR("Kriston Carson"); 61MODULE_AUTHOR("Kriston Carson");
54MODULE_LICENSE("GPL"); 62MODULE_LICENSE("GPL");
@@ -95,13 +103,15 @@ static int vsc824x_ack_interrupt(struct phy_device *phydev)
95 return (err < 0) ? err : 0; 103 return (err < 0) ? err : 0;
96} 104}
97 105
98static int vsc824x_config_intr(struct phy_device *phydev) 106static int vsc82xx_config_intr(struct phy_device *phydev)
99{ 107{
100 int err; 108 int err;
101 109
102 if (phydev->interrupts == PHY_INTERRUPT_ENABLED) 110 if (phydev->interrupts == PHY_INTERRUPT_ENABLED)
103 err = phy_write(phydev, MII_VSC8244_IMASK, 111 err = phy_write(phydev, MII_VSC8244_IMASK,
104 MII_VSC8244_IMASK_MASK); 112 phydev->drv->phy_id == PHY_ID_VSC8244 ?
113 MII_VSC8244_IMASK_MASK :
114 MII_VSC8221_IMASK_MASK);
105 else { 115 else {
106 /* 116 /*
107 * The Vitesse PHY cannot clear the interrupt 117 * The Vitesse PHY cannot clear the interrupt
@@ -120,7 +130,7 @@ static int vsc824x_config_intr(struct phy_device *phydev)
120 130
121/* Vitesse 824x */ 131/* Vitesse 824x */
122static struct phy_driver vsc8244_driver = { 132static struct phy_driver vsc8244_driver = {
123 .phy_id = 0x000fc6c0, 133 .phy_id = PHY_ID_VSC8244,
124 .name = "Vitesse VSC8244", 134 .name = "Vitesse VSC8244",
125 .phy_id_mask = 0x000fffc0, 135 .phy_id_mask = 0x000fffc0,
126 .features = PHY_GBIT_FEATURES, 136 .features = PHY_GBIT_FEATURES,
@@ -129,19 +139,55 @@ static struct phy_driver vsc8244_driver = {
129 .config_aneg = &genphy_config_aneg, 139 .config_aneg = &genphy_config_aneg,
130 .read_status = &genphy_read_status, 140 .read_status = &genphy_read_status,
131 .ack_interrupt = &vsc824x_ack_interrupt, 141 .ack_interrupt = &vsc824x_ack_interrupt,
132 .config_intr = &vsc824x_config_intr, 142 .config_intr = &vsc82xx_config_intr,
133 .driver = { .owner = THIS_MODULE,}, 143 .driver = { .owner = THIS_MODULE,},
134}; 144};
135 145
136static int __init vsc8244_init(void) 146static int vsc8221_config_init(struct phy_device *phydev)
137{ 147{
138 return phy_driver_register(&vsc8244_driver); 148 int err;
149
150 err = phy_write(phydev, MII_VSC8244_AUX_CONSTAT,
151 MII_VSC8221_AUXCONSTAT_INIT);
152 return err;
153
154 /* Perhaps we should set EXT_CON1 based on the interface?
155 Options are 802.3Z SerDes or SGMII */
156}
157
158/* Vitesse 8221 */
159static struct phy_driver vsc8221_driver = {
160 .phy_id = PHY_ID_VSC8221,
161 .phy_id_mask = 0x000ffff0,
162 .name = "Vitesse VSC8221",
163 .features = PHY_GBIT_FEATURES,
164 .flags = PHY_HAS_INTERRUPT,
165 .config_init = &vsc8221_config_init,
166 .config_aneg = &genphy_config_aneg,
167 .read_status = &genphy_read_status,
168 .ack_interrupt = &vsc824x_ack_interrupt,
169 .config_intr = &vsc82xx_config_intr,
170 .driver = { .owner = THIS_MODULE,},
171};
172
173static int __init vsc82xx_init(void)
174{
175 int err;
176
177 err = phy_driver_register(&vsc8244_driver);
178 if (err < 0)
179 return err;
180 err = phy_driver_register(&vsc8221_driver);
181 if (err < 0)
182 phy_driver_unregister(&vsc8244_driver);
183 return err;
139} 184}
140 185
141static void __exit vsc8244_exit(void) 186static void __exit vsc82xx_exit(void)
142{ 187{
143 phy_driver_unregister(&vsc8244_driver); 188 phy_driver_unregister(&vsc8244_driver);
189 phy_driver_unregister(&vsc8221_driver);
144} 190}
145 191
146module_init(vsc8244_init); 192module_init(vsc82xx_init);
147module_exit(vsc8244_exit); 193module_exit(vsc82xx_exit);
diff --git a/drivers/net/pppol2tp.c b/drivers/net/pppol2tp.c
index 185b1dff10a8..e98d9773158d 100644
--- a/drivers/net/pppol2tp.c
+++ b/drivers/net/pppol2tp.c
@@ -1353,6 +1353,7 @@ static int pppol2tp_release(struct socket *sock)
1353 kfree_skb(skb); 1353 kfree_skb(skb);
1354 sock_put(sk); 1354 sock_put(sk);
1355 } 1355 }
1356 sock_put(sk);
1356 } 1357 }
1357 1358
1358 release_sock(sk); 1359 release_sock(sk);
diff --git a/drivers/net/sis900.c b/drivers/net/sis900.c
index fa3a460f8e2f..8e8337e8b072 100644
--- a/drivers/net/sis900.c
+++ b/drivers/net/sis900.c
@@ -1630,7 +1630,6 @@ sis900_start_xmit(struct sk_buff *skb, struct net_device *net_dev)
1630 * sis900_interrupt - sis900 interrupt handler 1630 * sis900_interrupt - sis900 interrupt handler
1631 * @irq: the irq number 1631 * @irq: the irq number
1632 * @dev_instance: the client data object 1632 * @dev_instance: the client data object
1633 * @regs: snapshot of processor context
1634 * 1633 *
1635 * The interrupt handler does all of the Rx thread work, 1634 * The interrupt handler does all of the Rx thread work,
1636 * and cleans up after the Tx thread 1635 * and cleans up after the Tx thread
diff --git a/drivers/net/spider_net.c b/drivers/net/spider_net.c
index b6435d0d71f9..07599b492359 100644
--- a/drivers/net/spider_net.c
+++ b/drivers/net/spider_net.c
@@ -672,7 +672,6 @@ write_hash:
672/** 672/**
673 * spider_net_prepare_tx_descr - fill tx descriptor with skb data 673 * spider_net_prepare_tx_descr - fill tx descriptor with skb data
674 * @card: card structure 674 * @card: card structure
675 * @descr: descriptor structure to fill out
676 * @skb: packet to use 675 * @skb: packet to use
677 * 676 *
678 * returns 0 on success, <0 on failure. 677 * returns 0 on success, <0 on failure.
@@ -867,7 +866,6 @@ spider_net_release_tx_chain(struct spider_net_card *card, int brutal)
867/** 866/**
868 * spider_net_kick_tx_dma - enables TX DMA processing 867 * spider_net_kick_tx_dma - enables TX DMA processing
869 * @card: card structure 868 * @card: card structure
870 * @descr: descriptor address to enable TX processing at
871 * 869 *
872 * This routine will start the transmit DMA running if 870 * This routine will start the transmit DMA running if
873 * it is not already running. This routine ned only be 871 * it is not already running. This routine ned only be
@@ -1637,7 +1635,6 @@ spider_net_handle_error_irq(struct spider_net_card *card, u32 status_reg,
1637 * spider_net_interrupt - interrupt handler for spider_net 1635 * spider_net_interrupt - interrupt handler for spider_net
1638 * @irq: interrupt number 1636 * @irq: interrupt number
1639 * @ptr: pointer to net_device 1637 * @ptr: pointer to net_device
1640 * @regs: PU registers
1641 * 1638 *
1642 * returns IRQ_HANDLED, if interrupt was for driver, or IRQ_NONE, if no 1639 * returns IRQ_HANDLED, if interrupt was for driver, or IRQ_NONE, if no
1643 * interrupt found raised by card. 1640 * interrupt found raised by card.
@@ -2419,7 +2416,6 @@ spider_net_undo_pci_setup(struct spider_net_card *card)
2419 2416
2420/** 2417/**
2421 * spider_net_setup_pci_dev - sets up the device in terms of PCI operations 2418 * spider_net_setup_pci_dev - sets up the device in terms of PCI operations
2422 * @card: card structure
2423 * @pdev: PCI device 2419 * @pdev: PCI device
2424 * 2420 *
2425 * Returns the card structure or NULL if any errors occur 2421 * Returns the card structure or NULL if any errors occur
diff --git a/drivers/net/sungem.c b/drivers/net/sungem.c
index 4291458955ef..1349e419673c 100644
--- a/drivers/net/sungem.c
+++ b/drivers/net/sungem.c
@@ -1714,7 +1714,7 @@ static void gem_init_phy(struct gem *gp)
1714 /* Reset PCS unit. */ 1714 /* Reset PCS unit. */
1715 val = readl(gp->regs + PCS_MIICTRL); 1715 val = readl(gp->regs + PCS_MIICTRL);
1716 val |= PCS_MIICTRL_RST; 1716 val |= PCS_MIICTRL_RST;
1717 writeb(val, gp->regs + PCS_MIICTRL); 1717 writel(val, gp->regs + PCS_MIICTRL);
1718 1718
1719 limit = 32; 1719 limit = 32;
1720 while (readl(gp->regs + PCS_MIICTRL) & PCS_MIICTRL_RST) { 1720 while (readl(gp->regs + PCS_MIICTRL) & PCS_MIICTRL_RST) {
diff --git a/drivers/net/wireless/ath5k/base.c b/drivers/net/wireless/ath5k/base.c
index cfd4d052d666..2d14255eb103 100644
--- a/drivers/net/wireless/ath5k/base.c
+++ b/drivers/net/wireless/ath5k/base.c
@@ -240,6 +240,10 @@ static u64 ath5k_get_tsf(struct ieee80211_hw *hw);
240static void ath5k_reset_tsf(struct ieee80211_hw *hw); 240static void ath5k_reset_tsf(struct ieee80211_hw *hw);
241static int ath5k_beacon_update(struct ieee80211_hw *hw, 241static int ath5k_beacon_update(struct ieee80211_hw *hw,
242 struct sk_buff *skb); 242 struct sk_buff *skb);
243static void ath5k_bss_info_changed(struct ieee80211_hw *hw,
244 struct ieee80211_vif *vif,
245 struct ieee80211_bss_conf *bss_conf,
246 u32 changes);
243 247
244static struct ieee80211_ops ath5k_hw_ops = { 248static struct ieee80211_ops ath5k_hw_ops = {
245 .tx = ath5k_tx, 249 .tx = ath5k_tx,
@@ -256,6 +260,7 @@ static struct ieee80211_ops ath5k_hw_ops = {
256 .get_tx_stats = ath5k_get_tx_stats, 260 .get_tx_stats = ath5k_get_tx_stats,
257 .get_tsf = ath5k_get_tsf, 261 .get_tsf = ath5k_get_tsf,
258 .reset_tsf = ath5k_reset_tsf, 262 .reset_tsf = ath5k_reset_tsf,
263 .bss_info_changed = ath5k_bss_info_changed,
259}; 264};
260 265
261/* 266/*
@@ -2942,7 +2947,7 @@ static void ath5k_configure_filter(struct ieee80211_hw *hw,
2942 sc->opmode != NL80211_IFTYPE_MESH_POINT && 2947 sc->opmode != NL80211_IFTYPE_MESH_POINT &&
2943 test_bit(ATH_STAT_PROMISC, sc->status)) 2948 test_bit(ATH_STAT_PROMISC, sc->status))
2944 rfilt |= AR5K_RX_FILTER_PROM; 2949 rfilt |= AR5K_RX_FILTER_PROM;
2945 if (sc->opmode == NL80211_IFTYPE_STATION || 2950 if ((sc->opmode == NL80211_IFTYPE_STATION && sc->assoc) ||
2946 sc->opmode == NL80211_IFTYPE_ADHOC) { 2951 sc->opmode == NL80211_IFTYPE_ADHOC) {
2947 rfilt |= AR5K_RX_FILTER_BEACON; 2952 rfilt |= AR5K_RX_FILTER_BEACON;
2948 } 2953 }
@@ -3083,4 +3088,32 @@ ath5k_beacon_update(struct ieee80211_hw *hw, struct sk_buff *skb)
3083end: 3088end:
3084 return ret; 3089 return ret;
3085} 3090}
3091static void
3092set_beacon_filter(struct ieee80211_hw *hw, bool enable)
3093{
3094 struct ath5k_softc *sc = hw->priv;
3095 struct ath5k_hw *ah = sc->ah;
3096 u32 rfilt;
3097 rfilt = ath5k_hw_get_rx_filter(ah);
3098 if (enable)
3099 rfilt |= AR5K_RX_FILTER_BEACON;
3100 else
3101 rfilt &= ~AR5K_RX_FILTER_BEACON;
3102 ath5k_hw_set_rx_filter(ah, rfilt);
3103 sc->filter_flags = rfilt;
3104}
3086 3105
3106static void ath5k_bss_info_changed(struct ieee80211_hw *hw,
3107 struct ieee80211_vif *vif,
3108 struct ieee80211_bss_conf *bss_conf,
3109 u32 changes)
3110{
3111 struct ath5k_softc *sc = hw->priv;
3112 if (changes & BSS_CHANGED_ASSOC) {
3113 mutex_lock(&sc->lock);
3114 sc->assoc = bss_conf->assoc;
3115 if (sc->opmode == NL80211_IFTYPE_STATION)
3116 set_beacon_filter(hw, sc->assoc);
3117 mutex_unlock(&sc->lock);
3118 }
3119}
diff --git a/drivers/net/wireless/ath5k/base.h b/drivers/net/wireless/ath5k/base.h
index 06d1054ca94b..facc60ddada2 100644
--- a/drivers/net/wireless/ath5k/base.h
+++ b/drivers/net/wireless/ath5k/base.h
@@ -179,6 +179,7 @@ struct ath5k_softc {
179 179
180 struct timer_list calib_tim; /* calibration timer */ 180 struct timer_list calib_tim; /* calibration timer */
181 int power_level; /* Requested tx power in dbm */ 181 int power_level; /* Requested tx power in dbm */
182 bool assoc; /* assocate state */
182}; 183};
183 184
184#define ath5k_hw_hasbssidmask(_ah) \ 185#define ath5k_hw_hasbssidmask(_ah) \
diff --git a/drivers/net/wireless/ath5k/debug.c b/drivers/net/wireless/ath5k/debug.c
index 19980cbd5d5f..ccaeb5c219d2 100644
--- a/drivers/net/wireless/ath5k/debug.c
+++ b/drivers/net/wireless/ath5k/debug.c
@@ -417,19 +417,19 @@ ath5k_debug_init_device(struct ath5k_softc *sc)
417 sc->debug.debugfs_phydir = debugfs_create_dir(wiphy_name(sc->hw->wiphy), 417 sc->debug.debugfs_phydir = debugfs_create_dir(wiphy_name(sc->hw->wiphy),
418 ath5k_global_debugfs); 418 ath5k_global_debugfs);
419 419
420 sc->debug.debugfs_debug = debugfs_create_file("debug", 0666, 420 sc->debug.debugfs_debug = debugfs_create_file("debug", S_IWUSR | S_IRUGO,
421 sc->debug.debugfs_phydir, sc, &fops_debug); 421 sc->debug.debugfs_phydir, sc, &fops_debug);
422 422
423 sc->debug.debugfs_registers = debugfs_create_file("registers", 0444, 423 sc->debug.debugfs_registers = debugfs_create_file("registers", S_IRUGO,
424 sc->debug.debugfs_phydir, sc, &fops_registers); 424 sc->debug.debugfs_phydir, sc, &fops_registers);
425 425
426 sc->debug.debugfs_tsf = debugfs_create_file("tsf", 0666, 426 sc->debug.debugfs_tsf = debugfs_create_file("tsf", S_IWUSR | S_IRUGO,
427 sc->debug.debugfs_phydir, sc, &fops_tsf); 427 sc->debug.debugfs_phydir, sc, &fops_tsf);
428 428
429 sc->debug.debugfs_beacon = debugfs_create_file("beacon", 0666, 429 sc->debug.debugfs_beacon = debugfs_create_file("beacon", S_IWUSR | S_IRUGO,
430 sc->debug.debugfs_phydir, sc, &fops_beacon); 430 sc->debug.debugfs_phydir, sc, &fops_beacon);
431 431
432 sc->debug.debugfs_reset = debugfs_create_file("reset", 0222, 432 sc->debug.debugfs_reset = debugfs_create_file("reset", S_IWUSR,
433 sc->debug.debugfs_phydir, sc, &fops_reset); 433 sc->debug.debugfs_phydir, sc, &fops_reset);
434} 434}
435 435
diff --git a/drivers/net/wireless/ath9k/beacon.c b/drivers/net/wireless/ath9k/beacon.c
index 9e15c30bbc06..4dd1c1bda0fb 100644
--- a/drivers/net/wireless/ath9k/beacon.c
+++ b/drivers/net/wireless/ath9k/beacon.c
@@ -170,7 +170,7 @@ static struct ath_buf *ath_beacon_generate(struct ath_softc *sc, int if_id)
170 skb = (struct sk_buff *)bf->bf_mpdu; 170 skb = (struct sk_buff *)bf->bf_mpdu;
171 if (skb) { 171 if (skb) {
172 pci_unmap_single(sc->pdev, bf->bf_dmacontext, 172 pci_unmap_single(sc->pdev, bf->bf_dmacontext,
173 skb_end_pointer(skb) - skb->head, 173 skb->len,
174 PCI_DMA_TODEVICE); 174 PCI_DMA_TODEVICE);
175 } 175 }
176 176
@@ -193,7 +193,7 @@ static struct ath_buf *ath_beacon_generate(struct ath_softc *sc, int if_id)
193 193
194 bf->bf_buf_addr = bf->bf_dmacontext = 194 bf->bf_buf_addr = bf->bf_dmacontext =
195 pci_map_single(sc->pdev, skb->data, 195 pci_map_single(sc->pdev, skb->data,
196 skb_end_pointer(skb) - skb->head, 196 skb->len,
197 PCI_DMA_TODEVICE); 197 PCI_DMA_TODEVICE);
198 198
199 skb = ieee80211_get_buffered_bc(sc->hw, avp->av_if_data); 199 skb = ieee80211_get_buffered_bc(sc->hw, avp->av_if_data);
@@ -352,7 +352,7 @@ int ath_beacon_alloc(struct ath_softc *sc, int if_id)
352 if (bf->bf_mpdu != NULL) { 352 if (bf->bf_mpdu != NULL) {
353 skb = (struct sk_buff *)bf->bf_mpdu; 353 skb = (struct sk_buff *)bf->bf_mpdu;
354 pci_unmap_single(sc->pdev, bf->bf_dmacontext, 354 pci_unmap_single(sc->pdev, bf->bf_dmacontext,
355 skb_end_pointer(skb) - skb->head, 355 skb->len,
356 PCI_DMA_TODEVICE); 356 PCI_DMA_TODEVICE);
357 dev_kfree_skb_any(skb); 357 dev_kfree_skb_any(skb);
358 bf->bf_mpdu = NULL; 358 bf->bf_mpdu = NULL;
@@ -412,7 +412,7 @@ int ath_beacon_alloc(struct ath_softc *sc, int if_id)
412 412
413 bf->bf_buf_addr = bf->bf_dmacontext = 413 bf->bf_buf_addr = bf->bf_dmacontext =
414 pci_map_single(sc->pdev, skb->data, 414 pci_map_single(sc->pdev, skb->data,
415 skb_end_pointer(skb) - skb->head, 415 skb->len,
416 PCI_DMA_TODEVICE); 416 PCI_DMA_TODEVICE);
417 bf->bf_mpdu = skb; 417 bf->bf_mpdu = skb;
418 418
@@ -439,7 +439,7 @@ void ath_beacon_return(struct ath_softc *sc, struct ath_vap *avp)
439 if (bf->bf_mpdu != NULL) { 439 if (bf->bf_mpdu != NULL) {
440 struct sk_buff *skb = (struct sk_buff *)bf->bf_mpdu; 440 struct sk_buff *skb = (struct sk_buff *)bf->bf_mpdu;
441 pci_unmap_single(sc->pdev, bf->bf_dmacontext, 441 pci_unmap_single(sc->pdev, bf->bf_dmacontext,
442 skb_end_pointer(skb) - skb->head, 442 skb->len,
443 PCI_DMA_TODEVICE); 443 PCI_DMA_TODEVICE);
444 dev_kfree_skb_any(skb); 444 dev_kfree_skb_any(skb);
445 bf->bf_mpdu = NULL; 445 bf->bf_mpdu = NULL;
diff --git a/drivers/net/wireless/ath9k/recv.c b/drivers/net/wireless/ath9k/recv.c
index 4983402af559..504a0444d89f 100644
--- a/drivers/net/wireless/ath9k/recv.c
+++ b/drivers/net/wireless/ath9k/recv.c
@@ -49,10 +49,12 @@ static void ath_rx_buf_link(struct ath_softc *sc, struct ath_buf *bf)
49 ASSERT(skb != NULL); 49 ASSERT(skb != NULL);
50 ds->ds_vdata = skb->data; 50 ds->ds_vdata = skb->data;
51 51
52 /* setup rx descriptors */ 52 /* setup rx descriptors. The sc_rxbufsize here tells the harware
53 * how much data it can DMA to us and that we are prepared
54 * to process */
53 ath9k_hw_setuprxdesc(ah, 55 ath9k_hw_setuprxdesc(ah,
54 ds, 56 ds,
55 skb_tailroom(skb), /* buffer size */ 57 sc->sc_rxbufsize,
56 0); 58 0);
57 59
58 if (sc->sc_rxlink == NULL) 60 if (sc->sc_rxlink == NULL)
@@ -398,6 +400,13 @@ static struct sk_buff *ath_rxbuf_alloc(struct ath_softc *sc,
398 * in rx'd frames. 400 * in rx'd frames.
399 */ 401 */
400 402
403 /* Note: the kernel can allocate a value greater than
404 * what we ask it to give us. We really only need 4 KB as that
405 * is this hardware supports and in fact we need at least 3849
406 * as that is the MAX AMSDU size this hardware supports.
407 * Unfortunately this means we may get 8 KB here from the
408 * kernel... and that is actually what is observed on some
409 * systems :( */
401 skb = dev_alloc_skb(len + sc->sc_cachelsz - 1); 410 skb = dev_alloc_skb(len + sc->sc_cachelsz - 1);
402 if (skb != NULL) { 411 if (skb != NULL) {
403 off = ((unsigned long) skb->data) % sc->sc_cachelsz; 412 off = ((unsigned long) skb->data) % sc->sc_cachelsz;
@@ -456,7 +465,7 @@ static int ath_rx_indicate(struct ath_softc *sc,
456 if (nskb != NULL) { 465 if (nskb != NULL) {
457 bf->bf_mpdu = nskb; 466 bf->bf_mpdu = nskb;
458 bf->bf_buf_addr = pci_map_single(sc->pdev, nskb->data, 467 bf->bf_buf_addr = pci_map_single(sc->pdev, nskb->data,
459 skb_end_pointer(nskb) - nskb->head, 468 sc->sc_rxbufsize,
460 PCI_DMA_FROMDEVICE); 469 PCI_DMA_FROMDEVICE);
461 bf->bf_dmacontext = bf->bf_buf_addr; 470 bf->bf_dmacontext = bf->bf_buf_addr;
462 ATH_RX_CONTEXT(nskb)->ctx_rxbuf = bf; 471 ATH_RX_CONTEXT(nskb)->ctx_rxbuf = bf;
@@ -542,7 +551,7 @@ int ath_rx_init(struct ath_softc *sc, int nbufs)
542 551
543 bf->bf_mpdu = skb; 552 bf->bf_mpdu = skb;
544 bf->bf_buf_addr = pci_map_single(sc->pdev, skb->data, 553 bf->bf_buf_addr = pci_map_single(sc->pdev, skb->data,
545 skb_end_pointer(skb) - skb->head, 554 sc->sc_rxbufsize,
546 PCI_DMA_FROMDEVICE); 555 PCI_DMA_FROMDEVICE);
547 bf->bf_dmacontext = bf->bf_buf_addr; 556 bf->bf_dmacontext = bf->bf_buf_addr;
548 ATH_RX_CONTEXT(skb)->ctx_rxbuf = bf; 557 ATH_RX_CONTEXT(skb)->ctx_rxbuf = bf;
@@ -1007,7 +1016,7 @@ int ath_rx_tasklet(struct ath_softc *sc, int flush)
1007 1016
1008 pci_dma_sync_single_for_cpu(sc->pdev, 1017 pci_dma_sync_single_for_cpu(sc->pdev,
1009 bf->bf_buf_addr, 1018 bf->bf_buf_addr,
1010 skb_tailroom(skb), 1019 sc->sc_rxbufsize,
1011 PCI_DMA_FROMDEVICE); 1020 PCI_DMA_FROMDEVICE);
1012 pci_unmap_single(sc->pdev, 1021 pci_unmap_single(sc->pdev,
1013 bf->bf_buf_addr, 1022 bf->bf_buf_addr,
diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c
index dcce3542d5a7..7a9f901d4ff6 100644
--- a/drivers/net/wireless/ipw2200.c
+++ b/drivers/net/wireless/ipw2200.c
@@ -3897,6 +3897,7 @@ static int ipw_disassociate(void *data)
3897 if (!(priv->status & (STATUS_ASSOCIATED | STATUS_ASSOCIATING))) 3897 if (!(priv->status & (STATUS_ASSOCIATED | STATUS_ASSOCIATING)))
3898 return 0; 3898 return 0;
3899 ipw_send_disassociate(data, 0); 3899 ipw_send_disassociate(data, 0);
3900 netif_carrier_off(priv->net_dev);
3900 return 1; 3901 return 1;
3901} 3902}
3902 3903
@@ -10190,6 +10191,9 @@ static int ipw_tx_skb(struct ipw_priv *priv, struct ieee80211_txb *txb,
10190 u16 remaining_bytes; 10191 u16 remaining_bytes;
10191 int fc; 10192 int fc;
10192 10193
10194 if (!(priv->status & STATUS_ASSOCIATED))
10195 goto drop;
10196
10193 hdr_len = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_ctl)); 10197 hdr_len = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_ctl));
10194 switch (priv->ieee->iw_mode) { 10198 switch (priv->ieee->iw_mode) {
10195 case IW_MODE_ADHOC: 10199 case IW_MODE_ADHOC:
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c
index 444c5cc05f03..c4c0371c763b 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
@@ -1384,9 +1384,11 @@ void iwl_rx_handle(struct iwl_priv *priv)
1384 1384
1385 rxq->queue[i] = NULL; 1385 rxq->queue[i] = NULL;
1386 1386
1387 pci_dma_sync_single_for_cpu(priv->pci_dev, rxb->aligned_dma_addr, 1387 dma_sync_single_range_for_cpu(
1388 priv->hw_params.rx_buf_size, 1388 &priv->pci_dev->dev, rxb->real_dma_addr,
1389 PCI_DMA_FROMDEVICE); 1389 rxb->aligned_dma_addr - rxb->real_dma_addr,
1390 priv->hw_params.rx_buf_size,
1391 PCI_DMA_FROMDEVICE);
1390 pkt = (struct iwl_rx_packet *)rxb->skb->data; 1392 pkt = (struct iwl_rx_packet *)rxb->skb->data;
1391 1393
1392 /* Reclaim a command buffer only if this packet is a response 1394 /* Reclaim a command buffer only if this packet is a response
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c
index 4c312c55f90c..01a845851338 100644
--- a/drivers/net/wireless/iwlwifi/iwl-core.c
+++ b/drivers/net/wireless/iwlwifi/iwl-core.c
@@ -290,6 +290,9 @@ void iwl_clear_stations_table(struct iwl_priv *priv)
290 priv->num_stations = 0; 290 priv->num_stations = 0;
291 memset(priv->stations, 0, sizeof(priv->stations)); 291 memset(priv->stations, 0, sizeof(priv->stations));
292 292
293 /* clean ucode key table bit map */
294 priv->ucode_key_table = 0;
295
293 spin_unlock_irqrestore(&priv->sta_lock, flags); 296 spin_unlock_irqrestore(&priv->sta_lock, flags);
294} 297}
295EXPORT_SYMBOL(iwl_clear_stations_table); 298EXPORT_SYMBOL(iwl_clear_stations_table);
diff --git a/drivers/net/wireless/iwlwifi/iwl-sta.c b/drivers/net/wireless/iwlwifi/iwl-sta.c
index 61797f3f8d5c..26f7084d3011 100644
--- a/drivers/net/wireless/iwlwifi/iwl-sta.c
+++ b/drivers/net/wireless/iwlwifi/iwl-sta.c
@@ -475,7 +475,7 @@ static int iwl_get_free_ucode_key_index(struct iwl_priv *priv)
475 if (!test_and_set_bit(i, &priv->ucode_key_table)) 475 if (!test_and_set_bit(i, &priv->ucode_key_table))
476 return i; 476 return i;
477 477
478 return -1; 478 return WEP_INVALID_OFFSET;
479} 479}
480 480
481int iwl_send_static_wepkey_cmd(struct iwl_priv *priv, u8 send_if_empty) 481int iwl_send_static_wepkey_cmd(struct iwl_priv *priv, u8 send_if_empty)
@@ -620,6 +620,9 @@ static int iwl_set_wep_dynamic_key_info(struct iwl_priv *priv,
620 /* else, we are overriding an existing key => no need to allocated room 620 /* else, we are overriding an existing key => no need to allocated room
621 * in uCode. */ 621 * in uCode. */
622 622
623 WARN(priv->stations[sta_id].sta.key.key_offset == WEP_INVALID_OFFSET,
624 "no space for new kew");
625
623 priv->stations[sta_id].sta.key.key_flags = key_flags; 626 priv->stations[sta_id].sta.key.key_flags = key_flags;
624 priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_KEY_MASK; 627 priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_KEY_MASK;
625 priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; 628 priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK;
@@ -637,6 +640,7 @@ static int iwl_set_ccmp_dynamic_key_info(struct iwl_priv *priv,
637{ 640{
638 unsigned long flags; 641 unsigned long flags;
639 __le16 key_flags = 0; 642 __le16 key_flags = 0;
643 int ret;
640 644
641 key_flags |= (STA_KEY_FLG_CCMP | STA_KEY_FLG_MAP_KEY_MSK); 645 key_flags |= (STA_KEY_FLG_CCMP | STA_KEY_FLG_MAP_KEY_MSK);
642 key_flags |= cpu_to_le16(keyconf->keyidx << STA_KEY_FLG_KEYID_POS); 646 key_flags |= cpu_to_le16(keyconf->keyidx << STA_KEY_FLG_KEYID_POS);
@@ -664,14 +668,18 @@ static int iwl_set_ccmp_dynamic_key_info(struct iwl_priv *priv,
664 /* else, we are overriding an existing key => no need to allocated room 668 /* else, we are overriding an existing key => no need to allocated room
665 * in uCode. */ 669 * in uCode. */
666 670
671 WARN(priv->stations[sta_id].sta.key.key_offset == WEP_INVALID_OFFSET,
672 "no space for new kew");
673
667 priv->stations[sta_id].sta.key.key_flags = key_flags; 674 priv->stations[sta_id].sta.key.key_flags = key_flags;
668 priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_KEY_MASK; 675 priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_KEY_MASK;
669 priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; 676 priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK;
670 677
678 ret = iwl_send_add_sta(priv, &priv->stations[sta_id].sta, CMD_ASYNC);
679
671 spin_unlock_irqrestore(&priv->sta_lock, flags); 680 spin_unlock_irqrestore(&priv->sta_lock, flags);
672 681
673 IWL_DEBUG_INFO("hwcrypto: modify ucode station key info\n"); 682 return ret;
674 return iwl_send_add_sta(priv, &priv->stations[sta_id].sta, CMD_ASYNC);
675} 683}
676 684
677static int iwl_set_tkip_dynamic_key_info(struct iwl_priv *priv, 685static int iwl_set_tkip_dynamic_key_info(struct iwl_priv *priv,
@@ -696,6 +704,9 @@ static int iwl_set_tkip_dynamic_key_info(struct iwl_priv *priv,
696 /* else, we are overriding an existing key => no need to allocated room 704 /* else, we are overriding an existing key => no need to allocated room
697 * in uCode. */ 705 * in uCode. */
698 706
707 WARN(priv->stations[sta_id].sta.key.key_offset == WEP_INVALID_OFFSET,
708 "no space for new kew");
709
699 /* This copy is acutally not needed: we get the key with each TX */ 710 /* This copy is acutally not needed: we get the key with each TX */
700 memcpy(priv->stations[sta_id].keyinfo.key, keyconf->key, 16); 711 memcpy(priv->stations[sta_id].keyinfo.key, keyconf->key, 16);
701 712
@@ -734,6 +745,13 @@ int iwl_remove_dynamic_key(struct iwl_priv *priv,
734 return 0; 745 return 0;
735 } 746 }
736 747
748 if (priv->stations[sta_id].sta.key.key_offset == WEP_INVALID_OFFSET) {
749 IWL_WARNING("Removing wrong key %d 0x%x\n",
750 keyconf->keyidx, key_flags);
751 spin_unlock_irqrestore(&priv->sta_lock, flags);
752 return 0;
753 }
754
737 if (!test_and_clear_bit(priv->stations[sta_id].sta.key.key_offset, 755 if (!test_and_clear_bit(priv->stations[sta_id].sta.key.key_offset,
738 &priv->ucode_key_table)) 756 &priv->ucode_key_table))
739 IWL_ERROR("index %d not used in uCode key table.\n", 757 IWL_ERROR("index %d not used in uCode key table.\n",
diff --git a/drivers/net/wireless/zd1211rw/zd_mac.c b/drivers/net/wireless/zd1211rw/zd_mac.c
index fe1867b25ff7..cac732f4047f 100644
--- a/drivers/net/wireless/zd1211rw/zd_mac.c
+++ b/drivers/net/wireless/zd1211rw/zd_mac.c
@@ -615,7 +615,7 @@ static int filter_ack(struct ieee80211_hw *hw, struct ieee80211_hdr *rx_hdr,
615 struct ieee80211_hdr *tx_hdr; 615 struct ieee80211_hdr *tx_hdr;
616 616
617 tx_hdr = (struct ieee80211_hdr *)skb->data; 617 tx_hdr = (struct ieee80211_hdr *)skb->data;
618 if (likely(!compare_ether_addr(tx_hdr->addr2, rx_hdr->addr1))) 618 if (likely(!memcmp(tx_hdr->addr2, rx_hdr->addr1, ETH_ALEN)))
619 { 619 {
620 __skb_unlink(skb, q); 620 __skb_unlink(skb, q);
621 tx_status(hw, skb, IEEE80211_TX_STAT_ACK, stats->signal, 1); 621 tx_status(hw, skb, IEEE80211_TX_STAT_ACK, stats->signal, 1);
diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c
index 8f63f4c6b85f..9aad608bcf3f 100644
--- a/drivers/pci/pcie/aspm.c
+++ b/drivers/pci/pcie/aspm.c
@@ -16,6 +16,7 @@
16#include <linux/pm.h> 16#include <linux/pm.h>
17#include <linux/init.h> 17#include <linux/init.h>
18#include <linux/slab.h> 18#include <linux/slab.h>
19#include <linux/jiffies.h>
19#include <linux/pci-aspm.h> 20#include <linux/pci-aspm.h>
20#include "../pci.h" 21#include "../pci.h"
21 22
@@ -161,11 +162,12 @@ static void pcie_check_clock_pm(struct pci_dev *pdev)
161 */ 162 */
162static void pcie_aspm_configure_common_clock(struct pci_dev *pdev) 163static void pcie_aspm_configure_common_clock(struct pci_dev *pdev)
163{ 164{
164 int pos, child_pos; 165 int pos, child_pos, i = 0;
165 u16 reg16 = 0; 166 u16 reg16 = 0;
166 struct pci_dev *child_dev; 167 struct pci_dev *child_dev;
167 int same_clock = 1; 168 int same_clock = 1;
168 169 unsigned long start_jiffies;
170 u16 child_regs[8], parent_reg;
169 /* 171 /*
170 * all functions of a slot should have the same Slot Clock 172 * all functions of a slot should have the same Slot Clock
171 * Configuration, so just check one function 173 * Configuration, so just check one function
@@ -191,16 +193,19 @@ static void pcie_aspm_configure_common_clock(struct pci_dev *pdev)
191 child_pos = pci_find_capability(child_dev, PCI_CAP_ID_EXP); 193 child_pos = pci_find_capability(child_dev, PCI_CAP_ID_EXP);
192 pci_read_config_word(child_dev, child_pos + PCI_EXP_LNKCTL, 194 pci_read_config_word(child_dev, child_pos + PCI_EXP_LNKCTL,
193 &reg16); 195 &reg16);
196 child_regs[i] = reg16;
194 if (same_clock) 197 if (same_clock)
195 reg16 |= PCI_EXP_LNKCTL_CCC; 198 reg16 |= PCI_EXP_LNKCTL_CCC;
196 else 199 else
197 reg16 &= ~PCI_EXP_LNKCTL_CCC; 200 reg16 &= ~PCI_EXP_LNKCTL_CCC;
198 pci_write_config_word(child_dev, child_pos + PCI_EXP_LNKCTL, 201 pci_write_config_word(child_dev, child_pos + PCI_EXP_LNKCTL,
199 reg16); 202 reg16);
203 i++;
200 } 204 }
201 205
202 /* Configure upstream component */ 206 /* Configure upstream component */
203 pci_read_config_word(pdev, pos + PCI_EXP_LNKCTL, &reg16); 207 pci_read_config_word(pdev, pos + PCI_EXP_LNKCTL, &reg16);
208 parent_reg = reg16;
204 if (same_clock) 209 if (same_clock)
205 reg16 |= PCI_EXP_LNKCTL_CCC; 210 reg16 |= PCI_EXP_LNKCTL_CCC;
206 else 211 else
@@ -212,12 +217,30 @@ static void pcie_aspm_configure_common_clock(struct pci_dev *pdev)
212 pci_write_config_word(pdev, pos + PCI_EXP_LNKCTL, reg16); 217 pci_write_config_word(pdev, pos + PCI_EXP_LNKCTL, reg16);
213 218
214 /* Wait for link training end */ 219 /* Wait for link training end */
215 while (1) { 220 /* break out after waiting for 1 second */
221 start_jiffies = jiffies;
222 while ((jiffies - start_jiffies) < HZ) {
216 pci_read_config_word(pdev, pos + PCI_EXP_LNKSTA, &reg16); 223 pci_read_config_word(pdev, pos + PCI_EXP_LNKSTA, &reg16);
217 if (!(reg16 & PCI_EXP_LNKSTA_LT)) 224 if (!(reg16 & PCI_EXP_LNKSTA_LT))
218 break; 225 break;
219 cpu_relax(); 226 cpu_relax();
220 } 227 }
228 /* training failed -> recover */
229 if ((jiffies - start_jiffies) >= HZ) {
230 dev_printk (KERN_ERR, &pdev->dev, "ASPM: Could not configure"
231 " common clock\n");
232 i = 0;
233 list_for_each_entry(child_dev, &pdev->subordinate->devices,
234 bus_list) {
235 child_pos = pci_find_capability(child_dev,
236 PCI_CAP_ID_EXP);
237 pci_write_config_word(child_dev,
238 child_pos + PCI_EXP_LNKCTL,
239 child_regs[i]);
240 i++;
241 }
242 pci_write_config_word(pdev, pos + PCI_EXP_LNKCTL, parent_reg);
243 }
221} 244}
222 245
223/* 246/*
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 5049a47030ac..5f4f85f56cb7 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -22,6 +22,7 @@
22#include <linux/delay.h> 22#include <linux/delay.h>
23#include <linux/acpi.h> 23#include <linux/acpi.h>
24#include <linux/kallsyms.h> 24#include <linux/kallsyms.h>
25#include <linux/dmi.h>
25#include "pci.h" 26#include "pci.h"
26 27
27int isa_dma_bridge_buggy; 28int isa_dma_bridge_buggy;
@@ -1828,6 +1829,22 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SERVERWORKS,
1828 PCI_DEVICE_ID_SERVERWORKS_HT1000_PXB, 1829 PCI_DEVICE_ID_SERVERWORKS_HT1000_PXB,
1829 ht_enable_msi_mapping); 1830 ht_enable_msi_mapping);
1830 1831
1832/* The P5N32-SLI Premium motherboard from Asus has a problem with msi
1833 * for the MCP55 NIC. It is not yet determined whether the msi problem
1834 * also affects other devices. As for now, turn off msi for this device.
1835 */
1836static void __devinit nvenet_msi_disable(struct pci_dev *dev)
1837{
1838 if (dmi_name_in_vendors("P5N32-SLI PREMIUM")) {
1839 dev_info(&dev->dev,
1840 "Disabling msi for MCP55 NIC on P5N32-SLI Premium\n");
1841 dev->no_msi = 1;
1842 }
1843}
1844DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_NVIDIA,
1845 PCI_DEVICE_ID_NVIDIA_NVENET_15,
1846 nvenet_msi_disable);
1847
1831static void __devinit nv_msi_ht_cap_quirk(struct pci_dev *dev) 1848static void __devinit nv_msi_ht_cap_quirk(struct pci_dev *dev)
1832{ 1849{
1833 struct pci_dev *host_bridge; 1850 struct pci_dev *host_bridge;
diff --git a/drivers/pci/slot.c b/drivers/pci/slot.c
index 4dd1c3e157ae..5a8ccb4f604d 100644
--- a/drivers/pci/slot.c
+++ b/drivers/pci/slot.c
@@ -253,6 +253,7 @@ placeholder:
253 __func__, pci_domain_nr(parent), parent->number, slot_nr); 253 __func__, pci_domain_nr(parent), parent->number, slot_nr);
254 254
255out: 255out:
256 kfree(slot_name);
256 up_write(&pci_bus_sem); 257 up_write(&pci_bus_sem);
257 return slot; 258 return slot;
258err: 259err:
diff --git a/drivers/rtc/rtc-ds1672.c b/drivers/rtc/rtc-ds1672.c
index 341d7a5b45a2..4e91419e8911 100644
--- a/drivers/rtc/rtc-ds1672.c
+++ b/drivers/rtc/rtc-ds1672.c
@@ -209,12 +209,18 @@ static int ds1672_probe(struct i2c_client *client,
209 return err; 209 return err;
210} 210}
211 211
212static struct i2c_device_id ds1672_id[] = {
213 { "ds1672", 0 },
214 { }
215};
216
212static struct i2c_driver ds1672_driver = { 217static struct i2c_driver ds1672_driver = {
213 .driver = { 218 .driver = {
214 .name = "rtc-ds1672", 219 .name = "rtc-ds1672",
215 }, 220 },
216 .probe = &ds1672_probe, 221 .probe = &ds1672_probe,
217 .remove = &ds1672_remove, 222 .remove = &ds1672_remove,
223 .id_table = ds1672_id,
218}; 224};
219 225
220static int __init ds1672_init(void) 226static int __init ds1672_init(void)
diff --git a/drivers/rtc/rtc-max6900.c b/drivers/rtc/rtc-max6900.c
index 80782798763f..a4f6665ab3c5 100644
--- a/drivers/rtc/rtc-max6900.c
+++ b/drivers/rtc/rtc-max6900.c
@@ -247,12 +247,18 @@ max6900_probe(struct i2c_client *client, const struct i2c_device_id *id)
247 return 0; 247 return 0;
248} 248}
249 249
250static struct i2c_device_id max6900_id[] = {
251 { "max6900", 0 },
252 { }
253};
254
250static struct i2c_driver max6900_driver = { 255static struct i2c_driver max6900_driver = {
251 .driver = { 256 .driver = {
252 .name = "rtc-max6900", 257 .name = "rtc-max6900",
253 }, 258 },
254 .probe = max6900_probe, 259 .probe = max6900_probe,
255 .remove = max6900_remove, 260 .remove = max6900_remove,
261 .id_table = max6900_id,
256}; 262};
257 263
258static int __init max6900_init(void) 264static int __init max6900_init(void)
diff --git a/drivers/rtc/rtc-starfire.c b/drivers/rtc/rtc-starfire.c
index 7ccb0dd700af..5be98bfd7ed3 100644
--- a/drivers/rtc/rtc-starfire.c
+++ b/drivers/rtc/rtc-starfire.c
@@ -6,7 +6,6 @@
6#include <linux/kernel.h> 6#include <linux/kernel.h>
7#include <linux/module.h> 7#include <linux/module.h>
8#include <linux/init.h> 8#include <linux/init.h>
9#include <linux/time.h>
10#include <linux/rtc.h> 9#include <linux/rtc.h>
11#include <linux/platform_device.h> 10#include <linux/platform_device.h>
12 11
@@ -16,11 +15,6 @@ MODULE_AUTHOR("David S. Miller <davem@davemloft.net>");
16MODULE_DESCRIPTION("Starfire RTC driver"); 15MODULE_DESCRIPTION("Starfire RTC driver");
17MODULE_LICENSE("GPL"); 16MODULE_LICENSE("GPL");
18 17
19struct starfire_rtc {
20 struct rtc_device *rtc;
21 spinlock_t lock;
22};
23
24static u32 starfire_get_time(void) 18static u32 starfire_get_time(void)
25{ 19{
26 static char obp_gettod[32]; 20 static char obp_gettod[32];
@@ -35,64 +29,31 @@ static u32 starfire_get_time(void)
35 29
36static int starfire_read_time(struct device *dev, struct rtc_time *tm) 30static int starfire_read_time(struct device *dev, struct rtc_time *tm)
37{ 31{
38 struct starfire_rtc *p = dev_get_drvdata(dev); 32 rtc_time_to_tm(starfire_get_time(), tm);
39 unsigned long flags, secs; 33 return rtc_valid_tm(tm);
40
41 spin_lock_irqsave(&p->lock, flags);
42 secs = starfire_get_time();
43 spin_unlock_irqrestore(&p->lock, flags);
44
45 rtc_time_to_tm(secs, tm);
46
47 return 0;
48}
49
50static int starfire_set_time(struct device *dev, struct rtc_time *tm)
51{
52 unsigned long secs;
53 int err;
54
55 err = rtc_tm_to_time(tm, &secs);
56 if (err)
57 return err;
58
59 /* Do nothing, time is set using the service processor
60 * console on this platform.
61 */
62 return 0;
63} 34}
64 35
65static const struct rtc_class_ops starfire_rtc_ops = { 36static const struct rtc_class_ops starfire_rtc_ops = {
66 .read_time = starfire_read_time, 37 .read_time = starfire_read_time,
67 .set_time = starfire_set_time,
68}; 38};
69 39
70static int __devinit starfire_rtc_probe(struct platform_device *pdev) 40static int __init starfire_rtc_probe(struct platform_device *pdev)
71{ 41{
72 struct starfire_rtc *p = kzalloc(sizeof(*p), GFP_KERNEL); 42 struct rtc_device *rtc = rtc_device_register("starfire", &pdev->dev,
73 43 &starfire_rtc_ops, THIS_MODULE);
74 if (!p) 44 if (IS_ERR(rtc))
75 return -ENOMEM; 45 return PTR_ERR(rtc);
76 46
77 spin_lock_init(&p->lock); 47 platform_set_drvdata(pdev, rtc);
78 48
79 p->rtc = rtc_device_register("starfire", &pdev->dev,
80 &starfire_rtc_ops, THIS_MODULE);
81 if (IS_ERR(p->rtc)) {
82 int err = PTR_ERR(p->rtc);
83 kfree(p);
84 return err;
85 }
86 platform_set_drvdata(pdev, p);
87 return 0; 49 return 0;
88} 50}
89 51
90static int __devexit starfire_rtc_remove(struct platform_device *pdev) 52static int __exit starfire_rtc_remove(struct platform_device *pdev)
91{ 53{
92 struct starfire_rtc *p = platform_get_drvdata(pdev); 54 struct rtc_device *rtc = platform_get_drvdata(pdev);
93 55
94 rtc_device_unregister(p->rtc); 56 rtc_device_unregister(rtc);
95 kfree(p);
96 57
97 return 0; 58 return 0;
98} 59}
@@ -102,13 +63,12 @@ static struct platform_driver starfire_rtc_driver = {
102 .name = "rtc-starfire", 63 .name = "rtc-starfire",
103 .owner = THIS_MODULE, 64 .owner = THIS_MODULE,
104 }, 65 },
105 .probe = starfire_rtc_probe, 66 .remove = __exit_p(starfire_rtc_remove),
106 .remove = __devexit_p(starfire_rtc_remove),
107}; 67};
108 68
109static int __init starfire_rtc_init(void) 69static int __init starfire_rtc_init(void)
110{ 70{
111 return platform_driver_register(&starfire_rtc_driver); 71 return platform_driver_probe(&starfire_rtc_driver, starfire_rtc_probe);
112} 72}
113 73
114static void __exit starfire_rtc_exit(void) 74static void __exit starfire_rtc_exit(void)
diff --git a/drivers/rtc/rtc-twl4030.c b/drivers/rtc/rtc-twl4030.c
index abe87a4d2665..01d8da9afdc8 100644
--- a/drivers/rtc/rtc-twl4030.c
+++ b/drivers/rtc/rtc-twl4030.c
@@ -337,7 +337,7 @@ static int twl4030_rtc_ioctl(struct device *dev, unsigned int cmd,
337} 337}
338 338
339#else 339#else
340#define omap_rtc_ioctl NULL 340#define twl4030_rtc_ioctl NULL
341#endif 341#endif
342 342
343static irqreturn_t twl4030_rtc_interrupt(int irq, void *rtc) 343static irqreturn_t twl4030_rtc_interrupt(int irq, void *rtc)
diff --git a/drivers/s390/scsi/zfcp_erp.c b/drivers/s390/scsi/zfcp_erp.c
index 35364f64da7f..c557ba34e1aa 100644
--- a/drivers/s390/scsi/zfcp_erp.c
+++ b/drivers/s390/scsi/zfcp_erp.c
@@ -720,7 +720,6 @@ static int zfcp_erp_adapter_strategy_generic(struct zfcp_erp_action *act,
720 goto failed_openfcp; 720 goto failed_openfcp;
721 721
722 atomic_set_mask(ZFCP_STATUS_COMMON_OPEN, &act->adapter->status); 722 atomic_set_mask(ZFCP_STATUS_COMMON_OPEN, &act->adapter->status);
723 schedule_work(&act->adapter->scan_work);
724 723
725 return ZFCP_ERP_SUCCEEDED; 724 return ZFCP_ERP_SUCCEEDED;
726 725
@@ -1186,7 +1185,9 @@ static void zfcp_erp_scsi_scan(struct work_struct *work)
1186 container_of(work, struct zfcp_erp_add_work, work); 1185 container_of(work, struct zfcp_erp_add_work, work);
1187 struct zfcp_unit *unit = p->unit; 1186 struct zfcp_unit *unit = p->unit;
1188 struct fc_rport *rport = unit->port->rport; 1187 struct fc_rport *rport = unit->port->rport;
1189 scsi_scan_target(&rport->dev, 0, rport->scsi_target_id, 1188
1189 if (rport && rport->port_state == FC_PORTSTATE_ONLINE)
1190 scsi_scan_target(&rport->dev, 0, rport->scsi_target_id,
1190 scsilun_to_int((struct scsi_lun *)&unit->fcp_lun), 0); 1191 scsilun_to_int((struct scsi_lun *)&unit->fcp_lun), 0);
1191 atomic_clear_mask(ZFCP_STATUS_UNIT_SCSI_WORK_PENDING, &unit->status); 1192 atomic_clear_mask(ZFCP_STATUS_UNIT_SCSI_WORK_PENDING, &unit->status);
1192 zfcp_unit_put(unit); 1193 zfcp_unit_put(unit);
@@ -1282,6 +1283,8 @@ static void zfcp_erp_action_cleanup(struct zfcp_erp_action *act, int result)
1282 case ZFCP_ERP_ACTION_REOPEN_ADAPTER: 1283 case ZFCP_ERP_ACTION_REOPEN_ADAPTER:
1283 if (result != ZFCP_ERP_SUCCEEDED) 1284 if (result != ZFCP_ERP_SUCCEEDED)
1284 zfcp_erp_rports_del(adapter); 1285 zfcp_erp_rports_del(adapter);
1286 else
1287 schedule_work(&adapter->scan_work);
1285 zfcp_adapter_put(adapter); 1288 zfcp_adapter_put(adapter);
1286 break; 1289 break;
1287 } 1290 }
diff --git a/drivers/s390/scsi/zfcp_fc.c b/drivers/s390/scsi/zfcp_fc.c
index 1a7c80a77ff5..8aab3091a7b1 100644
--- a/drivers/s390/scsi/zfcp_fc.c
+++ b/drivers/s390/scsi/zfcp_fc.c
@@ -50,7 +50,8 @@ static int zfcp_wka_port_get(struct zfcp_wka_port *wka_port)
50 if (mutex_lock_interruptible(&wka_port->mutex)) 50 if (mutex_lock_interruptible(&wka_port->mutex))
51 return -ERESTARTSYS; 51 return -ERESTARTSYS;
52 52
53 if (wka_port->status != ZFCP_WKA_PORT_ONLINE) { 53 if (wka_port->status == ZFCP_WKA_PORT_OFFLINE ||
54 wka_port->status == ZFCP_WKA_PORT_CLOSING) {
54 wka_port->status = ZFCP_WKA_PORT_OPENING; 55 wka_port->status = ZFCP_WKA_PORT_OPENING;
55 if (zfcp_fsf_open_wka_port(wka_port)) 56 if (zfcp_fsf_open_wka_port(wka_port))
56 wka_port->status = ZFCP_WKA_PORT_OFFLINE; 57 wka_port->status = ZFCP_WKA_PORT_OFFLINE;
@@ -125,8 +126,7 @@ static void _zfcp_fc_incoming_rscn(struct zfcp_fsf_req *fsf_req, u32 range,
125 126
126 read_lock_irqsave(&zfcp_data.config_lock, flags); 127 read_lock_irqsave(&zfcp_data.config_lock, flags);
127 list_for_each_entry(port, &fsf_req->adapter->port_list_head, list) { 128 list_for_each_entry(port, &fsf_req->adapter->port_list_head, list) {
128 /* FIXME: ZFCP_STATUS_PORT_DID_DID check is racy */ 129 if (!(atomic_read(&port->status) & ZFCP_STATUS_PORT_PHYS_OPEN))
129 if (!(atomic_read(&port->status) & ZFCP_STATUS_PORT_DID_DID))
130 /* Try to connect to unused ports anyway. */ 130 /* Try to connect to unused ports anyway. */
131 zfcp_erp_port_reopen(port, 131 zfcp_erp_port_reopen(port,
132 ZFCP_STATUS_COMMON_ERP_FAILED, 132 ZFCP_STATUS_COMMON_ERP_FAILED,
@@ -610,7 +610,6 @@ int zfcp_scan_ports(struct zfcp_adapter *adapter)
610 int ret, i; 610 int ret, i;
611 struct zfcp_gpn_ft *gpn_ft; 611 struct zfcp_gpn_ft *gpn_ft;
612 612
613 zfcp_erp_wait(adapter); /* wait until adapter is finished with ERP */
614 if (fc_host_port_type(adapter->scsi_host) != FC_PORTTYPE_NPORT) 613 if (fc_host_port_type(adapter->scsi_host) != FC_PORTTYPE_NPORT)
615 return 0; 614 return 0;
616 615
diff --git a/drivers/s390/scsi/zfcp_fsf.c b/drivers/s390/scsi/zfcp_fsf.c
index d024442ee128..dc0367690405 100644
--- a/drivers/s390/scsi/zfcp_fsf.c
+++ b/drivers/s390/scsi/zfcp_fsf.c
@@ -930,8 +930,10 @@ struct zfcp_fsf_req *zfcp_fsf_abort_fcp_command(unsigned long old_req_id,
930 goto out; 930 goto out;
931 req = zfcp_fsf_req_create(adapter, FSF_QTCB_ABORT_FCP_CMND, 931 req = zfcp_fsf_req_create(adapter, FSF_QTCB_ABORT_FCP_CMND,
932 req_flags, adapter->pool.fsf_req_abort); 932 req_flags, adapter->pool.fsf_req_abort);
933 if (IS_ERR(req)) 933 if (IS_ERR(req)) {
934 req = NULL;
934 goto out; 935 goto out;
936 }
935 937
936 if (unlikely(!(atomic_read(&unit->status) & 938 if (unlikely(!(atomic_read(&unit->status) &
937 ZFCP_STATUS_COMMON_UNBLOCKED))) 939 ZFCP_STATUS_COMMON_UNBLOCKED)))
@@ -1584,6 +1586,7 @@ static void zfcp_fsf_open_wka_port_handler(struct zfcp_fsf_req *req)
1584 wka_port->status = ZFCP_WKA_PORT_OFFLINE; 1586 wka_port->status = ZFCP_WKA_PORT_OFFLINE;
1585 break; 1587 break;
1586 case FSF_PORT_ALREADY_OPEN: 1588 case FSF_PORT_ALREADY_OPEN:
1589 break;
1587 case FSF_GOOD: 1590 case FSF_GOOD:
1588 wka_port->handle = header->port_handle; 1591 wka_port->handle = header->port_handle;
1589 wka_port->status = ZFCP_WKA_PORT_ONLINE; 1592 wka_port->status = ZFCP_WKA_PORT_ONLINE;
@@ -2113,18 +2116,21 @@ static inline void zfcp_fsf_trace_latency(struct zfcp_fsf_req *fsf_req)
2113 2116
2114static void zfcp_fsf_send_fcp_command_task_handler(struct zfcp_fsf_req *req) 2117static void zfcp_fsf_send_fcp_command_task_handler(struct zfcp_fsf_req *req)
2115{ 2118{
2116 struct scsi_cmnd *scpnt = req->data; 2119 struct scsi_cmnd *scpnt;
2117 struct fcp_rsp_iu *fcp_rsp_iu = (struct fcp_rsp_iu *) 2120 struct fcp_rsp_iu *fcp_rsp_iu = (struct fcp_rsp_iu *)
2118 &(req->qtcb->bottom.io.fcp_rsp); 2121 &(req->qtcb->bottom.io.fcp_rsp);
2119 u32 sns_len; 2122 u32 sns_len;
2120 char *fcp_rsp_info = (unsigned char *) &fcp_rsp_iu[1]; 2123 char *fcp_rsp_info = (unsigned char *) &fcp_rsp_iu[1];
2121 unsigned long flags; 2124 unsigned long flags;
2122 2125
2123 if (unlikely(!scpnt))
2124 return;
2125
2126 read_lock_irqsave(&req->adapter->abort_lock, flags); 2126 read_lock_irqsave(&req->adapter->abort_lock, flags);
2127 2127
2128 scpnt = req->data;
2129 if (unlikely(!scpnt)) {
2130 read_unlock_irqrestore(&req->adapter->abort_lock, flags);
2131 return;
2132 }
2133
2128 if (unlikely(req->status & ZFCP_STATUS_FSFREQ_ABORTED)) { 2134 if (unlikely(req->status & ZFCP_STATUS_FSFREQ_ABORTED)) {
2129 set_host_byte(scpnt, DID_SOFT_ERROR); 2135 set_host_byte(scpnt, DID_SOFT_ERROR);
2130 set_driver_byte(scpnt, SUGGEST_RETRY); 2136 set_driver_byte(scpnt, SUGGEST_RETRY);
@@ -2442,8 +2448,10 @@ struct zfcp_fsf_req *zfcp_fsf_send_fcp_ctm(struct zfcp_adapter *adapter,
2442 goto out; 2448 goto out;
2443 req = zfcp_fsf_req_create(adapter, FSF_QTCB_FCP_CMND, req_flags, 2449 req = zfcp_fsf_req_create(adapter, FSF_QTCB_FCP_CMND, req_flags,
2444 adapter->pool.fsf_req_scsi); 2450 adapter->pool.fsf_req_scsi);
2445 if (IS_ERR(req)) 2451 if (IS_ERR(req)) {
2452 req = NULL;
2446 goto out; 2453 goto out;
2454 }
2447 2455
2448 req->status |= ZFCP_STATUS_FSFREQ_TASK_MANAGEMENT; 2456 req->status |= ZFCP_STATUS_FSFREQ_TASK_MANAGEMENT;
2449 req->data = unit; 2457 req->data = unit;
diff --git a/drivers/s390/scsi/zfcp_scsi.c b/drivers/s390/scsi/zfcp_scsi.c
index e46fd3e9f68f..468c880f8b6d 100644
--- a/drivers/s390/scsi/zfcp_scsi.c
+++ b/drivers/s390/scsi/zfcp_scsi.c
@@ -88,7 +88,7 @@ static int zfcp_scsi_queuecommand(struct scsi_cmnd *scpnt,
88 ret = zfcp_fsf_send_fcp_command_task(adapter, unit, scpnt, 0, 88 ret = zfcp_fsf_send_fcp_command_task(adapter, unit, scpnt, 0,
89 ZFCP_REQ_AUTO_CLEANUP); 89 ZFCP_REQ_AUTO_CLEANUP);
90 if (unlikely(ret == -EBUSY)) 90 if (unlikely(ret == -EBUSY))
91 zfcp_scsi_command_fail(scpnt, DID_NO_CONNECT); 91 return SCSI_MLQUEUE_DEVICE_BUSY;
92 else if (unlikely(ret < 0)) 92 else if (unlikely(ret < 0))
93 return SCSI_MLQUEUE_HOST_BUSY; 93 return SCSI_MLQUEUE_HOST_BUSY;
94 94
diff --git a/drivers/scsi/aacraid/linit.c b/drivers/scsi/aacraid/linit.c
index 9aa301c1ed07..162cd927d94b 100644
--- a/drivers/scsi/aacraid/linit.c
+++ b/drivers/scsi/aacraid/linit.c
@@ -427,8 +427,8 @@ static int aac_slave_configure(struct scsi_device *sdev)
427 * Firmware has an individual device recovery time typically 427 * Firmware has an individual device recovery time typically
428 * of 35 seconds, give us a margin. 428 * of 35 seconds, give us a margin.
429 */ 429 */
430 if (sdev->timeout < (45 * HZ)) 430 if (sdev->request_queue->rq_timeout < (45 * HZ))
431 sdev->timeout = 45 * HZ; 431 blk_queue_rq_timeout(sdev->request_queue, 45*HZ);
432 for (cid = 0; cid < aac->maximum_num_containers; ++cid) 432 for (cid = 0; cid < aac->maximum_num_containers; ++cid)
433 if (aac->fsa_dev[cid].valid) 433 if (aac->fsa_dev[cid].valid)
434 ++num_lsu; 434 ++num_lsu;
diff --git a/drivers/scsi/ibmvscsi/ibmvscsi.c b/drivers/scsi/ibmvscsi/ibmvscsi.c
index 87e09f35d3d4..6cad1758243a 100644
--- a/drivers/scsi/ibmvscsi/ibmvscsi.c
+++ b/drivers/scsi/ibmvscsi/ibmvscsi.c
@@ -1442,7 +1442,7 @@ static int ibmvscsi_slave_configure(struct scsi_device *sdev)
1442 spin_lock_irqsave(shost->host_lock, lock_flags); 1442 spin_lock_irqsave(shost->host_lock, lock_flags);
1443 if (sdev->type == TYPE_DISK) { 1443 if (sdev->type == TYPE_DISK) {
1444 sdev->allow_restart = 1; 1444 sdev->allow_restart = 1;
1445 sdev->timeout = 60 * HZ; 1445 blk_queue_rq_timeout(sdev->request_queue, 60 * HZ);
1446 } 1446 }
1447 scsi_adjust_queue_depth(sdev, 0, shost->cmd_per_lun); 1447 scsi_adjust_queue_depth(sdev, 0, shost->cmd_per_lun);
1448 spin_unlock_irqrestore(shost->host_lock, lock_flags); 1448 spin_unlock_irqrestore(shost->host_lock, lock_flags);
diff --git a/drivers/scsi/megaraid/megaraid_sas.c b/drivers/scsi/megaraid/megaraid_sas.c
index a454f94623d7..17ce7abe17ee 100644
--- a/drivers/scsi/megaraid/megaraid_sas.c
+++ b/drivers/scsi/megaraid/megaraid_sas.c
@@ -1016,7 +1016,8 @@ static int megasas_slave_configure(struct scsi_device *sdev)
1016 * The RAID firmware may require extended timeouts. 1016 * The RAID firmware may require extended timeouts.
1017 */ 1017 */
1018 if (sdev->channel >= MEGASAS_MAX_PD_CHANNELS) 1018 if (sdev->channel >= MEGASAS_MAX_PD_CHANNELS)
1019 sdev->timeout = MEGASAS_DEFAULT_CMD_TIMEOUT * HZ; 1019 blk_queue_rq_timeout(sdev->request_queue,
1020 MEGASAS_DEFAULT_CMD_TIMEOUT * HZ);
1020 return 0; 1021 return 0;
1021} 1022}
1022 1023
diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c
index 386361778ebb..edfaf241c5ba 100644
--- a/drivers/scsi/scsi_error.c
+++ b/drivers/scsi/scsi_error.c
@@ -932,8 +932,7 @@ static int scsi_eh_try_stu(struct scsi_cmnd *scmd)
932 int i, rtn = NEEDS_RETRY; 932 int i, rtn = NEEDS_RETRY;
933 933
934 for (i = 0; rtn == NEEDS_RETRY && i < 2; i++) 934 for (i = 0; rtn == NEEDS_RETRY && i < 2; i++)
935 rtn = scsi_send_eh_cmnd(scmd, stu_command, 6, 935 rtn = scsi_send_eh_cmnd(scmd, stu_command, 6, scmd->device->request_queue->rq_timeout, 0);
936 scmd->device->timeout, 0);
937 936
938 if (rtn == SUCCESS) 937 if (rtn == SUCCESS)
939 return 0; 938 return 0;
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index f5d3b96890dc..fa45a1a66867 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -567,15 +567,18 @@ static inline int scsi_host_is_busy(struct Scsi_Host *shost)
567 */ 567 */
568static void scsi_run_queue(struct request_queue *q) 568static void scsi_run_queue(struct request_queue *q)
569{ 569{
570 struct scsi_device *starved_head = NULL, *sdev = q->queuedata; 570 struct scsi_device *sdev = q->queuedata;
571 struct Scsi_Host *shost = sdev->host; 571 struct Scsi_Host *shost = sdev->host;
572 LIST_HEAD(starved_list);
572 unsigned long flags; 573 unsigned long flags;
573 574
574 if (scsi_target(sdev)->single_lun) 575 if (scsi_target(sdev)->single_lun)
575 scsi_single_lun_run(sdev); 576 scsi_single_lun_run(sdev);
576 577
577 spin_lock_irqsave(shost->host_lock, flags); 578 spin_lock_irqsave(shost->host_lock, flags);
578 while (!list_empty(&shost->starved_list) && !scsi_host_is_busy(shost)) { 579 list_splice_init(&shost->starved_list, &starved_list);
580
581 while (!list_empty(&starved_list)) {
579 int flagset; 582 int flagset;
580 583
581 /* 584 /*
@@ -588,24 +591,18 @@ static void scsi_run_queue(struct request_queue *q)
588 * scsi_request_fn must get the host_lock before checking 591 * scsi_request_fn must get the host_lock before checking
589 * or modifying starved_list or starved_entry. 592 * or modifying starved_list or starved_entry.
590 */ 593 */
591 sdev = list_entry(shost->starved_list.next, 594 if (scsi_host_is_busy(shost))
592 struct scsi_device, starved_entry);
593 /*
594 * The *queue_ready functions can add a device back onto the
595 * starved list's tail, so we must check for a infinite loop.
596 */
597 if (sdev == starved_head)
598 break; 595 break;
599 if (!starved_head)
600 starved_head = sdev;
601 596
597 sdev = list_entry(starved_list.next,
598 struct scsi_device, starved_entry);
599 list_del_init(&sdev->starved_entry);
602 if (scsi_target_is_busy(scsi_target(sdev))) { 600 if (scsi_target_is_busy(scsi_target(sdev))) {
603 list_move_tail(&sdev->starved_entry, 601 list_move_tail(&sdev->starved_entry,
604 &shost->starved_list); 602 &shost->starved_list);
605 continue; 603 continue;
606 } 604 }
607 605
608 list_del_init(&sdev->starved_entry);
609 spin_unlock(shost->host_lock); 606 spin_unlock(shost->host_lock);
610 607
611 spin_lock(sdev->request_queue->queue_lock); 608 spin_lock(sdev->request_queue->queue_lock);
@@ -621,6 +618,8 @@ static void scsi_run_queue(struct request_queue *q)
621 618
622 spin_lock(shost->host_lock); 619 spin_lock(shost->host_lock);
623 } 620 }
621 /* put any unprocessed entries back */
622 list_splice(&starved_list, &shost->starved_list);
624 spin_unlock_irqrestore(shost->host_lock, flags); 623 spin_unlock_irqrestore(shost->host_lock, flags);
625 624
626 blk_run_queue(q); 625 blk_run_queue(q);
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
index c9e1242eaf25..5081b3981d3c 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
@@ -757,7 +757,7 @@ static int sd_ioctl(struct block_device *bdev, fmode_t mode,
757 * access to the device is prohibited. 757 * access to the device is prohibited.
758 */ 758 */
759 error = scsi_nonblockable_ioctl(sdp, cmd, p, 759 error = scsi_nonblockable_ioctl(sdp, cmd, p,
760 (mode & FMODE_NDELAY_NOW) != 0); 760 (mode & FMODE_NDELAY) != 0);
761 if (!scsi_block_when_processing_errors(sdp) || !error) 761 if (!scsi_block_when_processing_errors(sdp) || !error)
762 return error; 762 return error;
763 763
diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c
index 62b6633e3a97..45b66b98a516 100644
--- a/drivers/scsi/sr.c
+++ b/drivers/scsi/sr.c
@@ -521,7 +521,7 @@ static int sr_block_ioctl(struct block_device *bdev, fmode_t mode, unsigned cmd,
521 * if it doesn't recognise the ioctl 521 * if it doesn't recognise the ioctl
522 */ 522 */
523 ret = scsi_nonblockable_ioctl(sdev, cmd, argp, 523 ret = scsi_nonblockable_ioctl(sdev, cmd, argp,
524 (mode & FMODE_NDELAY_NOW) != 0); 524 (mode & FMODE_NDELAY) != 0);
525 if (ret != -ENODEV) 525 if (ret != -ENODEV)
526 return ret; 526 return ret;
527 return scsi_ioctl(sdev, cmd, argp); 527 return scsi_ioctl(sdev, cmd, argp);
diff --git a/drivers/scsi/stex.c b/drivers/scsi/stex.c
index 3790906a77d1..2fa830c0be27 100644
--- a/drivers/scsi/stex.c
+++ b/drivers/scsi/stex.c
@@ -477,7 +477,7 @@ stex_slave_config(struct scsi_device *sdev)
477{ 477{
478 sdev->use_10_for_rw = 1; 478 sdev->use_10_for_rw = 1;
479 sdev->use_10_for_ms = 1; 479 sdev->use_10_for_ms = 1;
480 sdev->timeout = 60 * HZ; 480 blk_queue_rq_timeout(sdev->request_queue, 60 * HZ);
481 sdev->tagged_supported = 1; 481 sdev->tagged_supported = 1;
482 482
483 return 0; 483 return 0;
diff --git a/drivers/serial/ioc3_serial.c b/drivers/serial/ioc3_serial.c
index 6dd98f9fb89c..ae3699d77dd0 100644
--- a/drivers/serial/ioc3_serial.c
+++ b/drivers/serial/ioc3_serial.c
@@ -2149,7 +2149,7 @@ out4:
2149 return ret; 2149 return ret;
2150} 2150}
2151 2151
2152static struct ioc3_submodule ioc3uart_submodule = { 2152static struct ioc3_submodule ioc3uart_ops = {
2153 .name = "IOC3uart", 2153 .name = "IOC3uart",
2154 .probe = ioc3uart_probe, 2154 .probe = ioc3uart_probe,
2155 .remove = ioc3uart_remove, 2155 .remove = ioc3uart_remove,
@@ -2173,7 +2173,7 @@ static int __devinit ioc3uart_init(void)
2173 __func__); 2173 __func__);
2174 return ret; 2174 return ret;
2175 } 2175 }
2176 ret = ioc3_register_submodule(&ioc3uart_submodule); 2176 ret = ioc3_register_submodule(&ioc3uart_ops);
2177 if (ret) 2177 if (ret)
2178 uart_unregister_driver(&ioc3_uart); 2178 uart_unregister_driver(&ioc3_uart);
2179 return ret; 2179 return ret;
@@ -2181,7 +2181,7 @@ static int __devinit ioc3uart_init(void)
2181 2181
2182static void __devexit ioc3uart_exit(void) 2182static void __devexit ioc3uart_exit(void)
2183{ 2183{
2184 ioc3_unregister_submodule(&ioc3uart_submodule); 2184 ioc3_unregister_submodule(&ioc3uart_ops);
2185 uart_unregister_driver(&ioc3_uart); 2185 uart_unregister_driver(&ioc3_uart);
2186} 2186}
2187 2187
diff --git a/drivers/serial/mpc52xx_uart.c b/drivers/serial/mpc52xx_uart.c
index 6117d3db0b66..28c00c3d58f5 100644
--- a/drivers/serial/mpc52xx_uart.c
+++ b/drivers/serial/mpc52xx_uart.c
@@ -591,8 +591,8 @@ mpc52xx_uart_set_termios(struct uart_port *port, struct ktermios *new,
591 /* Update the per-port timeout */ 591 /* Update the per-port timeout */
592 uart_update_timeout(port, new->c_cflag, baud); 592 uart_update_timeout(port, new->c_cflag, baud);
593 593
594 /* Do our best to flush TX & RX, so we don't loose anything */ 594 /* Do our best to flush TX & RX, so we don't lose anything */
595 /* But we don't wait indefinitly ! */ 595 /* But we don't wait indefinitely ! */
596 j = 5000000; /* Maximum wait */ 596 j = 5000000; /* Maximum wait */
597 /* FIXME Can't receive chars since set_termios might be called at early 597 /* FIXME Can't receive chars since set_termios might be called at early
598 * boot for the console, all stuff is not yet ready to receive at that 598 * boot for the console, all stuff is not yet ready to receive at that
diff --git a/drivers/serial/s3c2440.c b/drivers/serial/s3c2440.c
index 317d239ab740..29cbb0afef8e 100644
--- a/drivers/serial/s3c2440.c
+++ b/drivers/serial/s3c2440.c
@@ -177,5 +177,5 @@ module_exit(s3c2440_serial_exit);
177 177
178MODULE_DESCRIPTION("Samsung S3C2440,S3C2442 SoC Serial port driver"); 178MODULE_DESCRIPTION("Samsung S3C2440,S3C2442 SoC Serial port driver");
179MODULE_AUTHOR("Ben Dooks <ben@simtec.co.uk>"); 179MODULE_AUTHOR("Ben Dooks <ben@simtec.co.uk>");
180MODULE_LICENSE("GPLi v2"); 180MODULE_LICENSE("GPL v2");
181MODULE_ALIAS("platform:s3c2440-uart"); 181MODULE_ALIAS("platform:s3c2440-uart");
diff --git a/drivers/usb/host/ohci-omap.c b/drivers/usb/host/ohci-omap.c
index 91697bdb399f..4bbddb73abd9 100644
--- a/drivers/usb/host/ohci-omap.c
+++ b/drivers/usb/host/ohci-omap.c
@@ -18,6 +18,7 @@
18#include <linux/jiffies.h> 18#include <linux/jiffies.h>
19#include <linux/platform_device.h> 19#include <linux/platform_device.h>
20#include <linux/clk.h> 20#include <linux/clk.h>
21#include <linux/gpio.h>
21 22
22#include <mach/hardware.h> 23#include <mach/hardware.h>
23#include <asm/io.h> 24#include <asm/io.h>
@@ -25,7 +26,6 @@
25 26
26#include <mach/mux.h> 27#include <mach/mux.h>
27#include <mach/irqs.h> 28#include <mach/irqs.h>
28#include <mach/gpio.h>
29#include <mach/fpga.h> 29#include <mach/fpga.h>
30#include <mach/usb.h> 30#include <mach/usb.h>
31 31
@@ -254,8 +254,8 @@ static int ohci_omap_init(struct usb_hcd *hcd)
254 254
255 /* gpio9 for overcurrent detction */ 255 /* gpio9 for overcurrent detction */
256 omap_cfg_reg(W8_1610_GPIO9); 256 omap_cfg_reg(W8_1610_GPIO9);
257 omap_request_gpio(9); 257 gpio_request(9, "OHCI overcurrent");
258 omap_set_gpio_direction(9, 1 /* IN */); 258 gpio_direction_input(9);
259 259
260 /* for paranoia's sake: disable USB.PUEN */ 260 /* for paranoia's sake: disable USB.PUEN */
261 omap_cfg_reg(W4_USB_HIGHZ); 261 omap_cfg_reg(W4_USB_HIGHZ);
@@ -407,7 +407,7 @@ usb_hcd_omap_remove (struct usb_hcd *hcd, struct platform_device *pdev)
407 put_device(ohci->transceiver->dev); 407 put_device(ohci->transceiver->dev);
408 } 408 }
409 if (machine_is_omap_osk()) 409 if (machine_is_omap_osk())
410 omap_free_gpio(9); 410 gpio_free(9);
411 iounmap(hcd->regs); 411 iounmap(hcd->regs);
412 release_mem_region(hcd->rsrc_start, hcd->rsrc_len); 412 release_mem_region(hcd->rsrc_start, hcd->rsrc_len);
413 usb_put_hcd(hcd); 413 usb_put_hcd(hcd);
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c
index 51d7bdea2869..aad1359a3eb1 100644
--- a/drivers/usb/serial/ftdi_sio.c
+++ b/drivers/usb/serial/ftdi_sio.c
@@ -1498,7 +1498,7 @@ static int ftdi_open(struct tty_struct *tty,
1498 priv->interface, buf, 0, WDR_TIMEOUT); 1498 priv->interface, buf, 0, WDR_TIMEOUT);
1499 1499
1500 /* Termios defaults are set by usb_serial_init. We don't change 1500 /* Termios defaults are set by usb_serial_init. We don't change
1501 port->tty->termios - this would loose speed settings, etc. 1501 port->tty->termios - this would lose speed settings, etc.
1502 This is same behaviour as serial.c/rs_open() - Kuba */ 1502 This is same behaviour as serial.c/rs_open() - Kuba */
1503 1503
1504 /* ftdi_set_termios will send usb control messages */ 1504 /* ftdi_set_termios will send usb control messages */
diff --git a/drivers/video/aty/radeon_accel.c b/drivers/video/aty/radeon_accel.c
index a547e5d4c8bf..8da5e5ab8547 100644
--- a/drivers/video/aty/radeon_accel.c
+++ b/drivers/video/aty/radeon_accel.c
@@ -256,7 +256,8 @@ void radeonfb_imageblit(struct fb_info *info, const struct fb_image *image)
256 return; 256 return;
257 257
258 /* We only do 1 bpp color expansion for now */ 258 /* We only do 1 bpp color expansion for now */
259 if (info->flags & FBINFO_HWACCEL_DISABLED || image->depth != 1) 259 if (!accel_cexp ||
260 (info->flags & FBINFO_HWACCEL_DISABLED) || image->depth != 1)
260 goto fallback; 261 goto fallback;
261 262
262 /* Fallback if running out of the screen. We may do clipping 263 /* Fallback if running out of the screen. We may do clipping
diff --git a/drivers/video/aty/radeon_base.c b/drivers/video/aty/radeon_base.c
index b3ffe8205d2b..d5b27f9d374d 100644
--- a/drivers/video/aty/radeon_base.c
+++ b/drivers/video/aty/radeon_base.c
@@ -282,6 +282,8 @@ static int backlight = 1;
282static int backlight = 0; 282static int backlight = 0;
283#endif 283#endif
284 284
285int accel_cexp = 0;
286
285/* 287/*
286 * prototypes 288 * prototypes
287 */ 289 */
@@ -2520,6 +2522,8 @@ static int __init radeonfb_setup (char *options)
2520 } else if (!strncmp(this_opt, "ignore_devlist", 14)) { 2522 } else if (!strncmp(this_opt, "ignore_devlist", 14)) {
2521 ignore_devlist = 1; 2523 ignore_devlist = 1;
2522#endif 2524#endif
2525 } else if (!strncmp(this_opt, "accel_cexp", 12)) {
2526 accel_cexp = 1;
2523 } else 2527 } else
2524 mode_option = this_opt; 2528 mode_option = this_opt;
2525 } 2529 }
@@ -2567,6 +2571,8 @@ module_param(monitor_layout, charp, 0);
2567MODULE_PARM_DESC(monitor_layout, "Specify monitor mapping (like XFree86)"); 2571MODULE_PARM_DESC(monitor_layout, "Specify monitor mapping (like XFree86)");
2568module_param(force_measure_pll, bool, 0); 2572module_param(force_measure_pll, bool, 0);
2569MODULE_PARM_DESC(force_measure_pll, "Force measurement of PLL (debug)"); 2573MODULE_PARM_DESC(force_measure_pll, "Force measurement of PLL (debug)");
2574module_param(accel_cexp, bool, 0);
2575MODULE_PARM_DESC(accel_cexp, "Use acceleration engine for color expansion");
2570#ifdef CONFIG_MTRR 2576#ifdef CONFIG_MTRR
2571module_param(nomtrr, bool, 0); 2577module_param(nomtrr, bool, 0);
2572MODULE_PARM_DESC(nomtrr, "bool: disable use of MTRR registers"); 2578MODULE_PARM_DESC(nomtrr, "bool: disable use of MTRR registers");
diff --git a/drivers/video/aty/radeonfb.h b/drivers/video/aty/radeonfb.h
index ea0b5b47acaf..974ca6d86540 100644
--- a/drivers/video/aty/radeonfb.h
+++ b/drivers/video/aty/radeonfb.h
@@ -638,4 +638,6 @@ static inline void radeonfb_bl_init(struct radeonfb_info *rinfo) {}
638static inline void radeonfb_bl_exit(struct radeonfb_info *rinfo) {} 638static inline void radeonfb_bl_exit(struct radeonfb_info *rinfo) {}
639#endif 639#endif
640 640
641extern int accel_cexp;
642
641#endif /* __RADEONFB_H__ */ 643#endif /* __RADEONFB_H__ */
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
index 67ff370d80af..0b2adefe9e3d 100644
--- a/drivers/video/console/fbcon.c
+++ b/drivers/video/console/fbcon.c
@@ -3531,12 +3531,18 @@ static void fbcon_exit(void)
3531 softback_buf = 0UL; 3531 softback_buf = 0UL;
3532 3532
3533 for (i = 0; i < FB_MAX; i++) { 3533 for (i = 0; i < FB_MAX; i++) {
3534 int pending;
3535
3534 mapped = 0; 3536 mapped = 0;
3535 info = registered_fb[i]; 3537 info = registered_fb[i];
3536 3538
3537 if (info == NULL) 3539 if (info == NULL)
3538 continue; 3540 continue;
3539 3541
3542 pending = cancel_work_sync(&info->queue);
3543 DPRINTK("fbcon: %s pending work\n", (pending ? "canceled" :
3544 "no"));
3545
3540 for (j = first_fb_vc; j <= last_fb_vc; j++) { 3546 for (j = first_fb_vc; j <= last_fb_vc; j++) {
3541 if (con2fb_map[j] == i) 3547 if (con2fb_map[j] == i)
3542 mapped = 1; 3548 mapped = 1;
diff --git a/drivers/video/macfb.c b/drivers/video/macfb.c
index b790ddff76f9..ee380d5f3410 100644
--- a/drivers/video/macfb.c
+++ b/drivers/video/macfb.c
@@ -164,7 +164,6 @@ static struct fb_var_screeninfo macfb_defined = {
164}; 164};
165 165
166static struct fb_fix_screeninfo macfb_fix = { 166static struct fb_fix_screeninfo macfb_fix = {
167 .id = "Macintosh ",
168 .type = FB_TYPE_PACKED_PIXELS, 167 .type = FB_TYPE_PACKED_PIXELS,
169 .accel = FB_ACCEL_NONE, 168 .accel = FB_ACCEL_NONE,
170}; 169};
@@ -760,22 +759,22 @@ static int __init macfb_init(void)
760 759
761 switch(ndev->dr_hw) { 760 switch(ndev->dr_hw) {
762 case NUBUS_DRHW_APPLE_MDC: 761 case NUBUS_DRHW_APPLE_MDC:
763 strcat( macfb_fix.id, "Display Card" ); 762 strcpy(macfb_fix.id, "Mac Disp. Card");
764 macfb_setpalette = mdc_setpalette; 763 macfb_setpalette = mdc_setpalette;
765 macfb_defined.activate = FB_ACTIVATE_NOW; 764 macfb_defined.activate = FB_ACTIVATE_NOW;
766 break; 765 break;
767 case NUBUS_DRHW_APPLE_TFB: 766 case NUBUS_DRHW_APPLE_TFB:
768 strcat( macfb_fix.id, "Toby" ); 767 strcpy(macfb_fix.id, "Toby");
769 macfb_setpalette = toby_setpalette; 768 macfb_setpalette = toby_setpalette;
770 macfb_defined.activate = FB_ACTIVATE_NOW; 769 macfb_defined.activate = FB_ACTIVATE_NOW;
771 break; 770 break;
772 case NUBUS_DRHW_APPLE_JET: 771 case NUBUS_DRHW_APPLE_JET:
773 strcat( macfb_fix.id, "Jet"); 772 strcpy(macfb_fix.id, "Jet");
774 macfb_setpalette = jet_setpalette; 773 macfb_setpalette = jet_setpalette;
775 macfb_defined.activate = FB_ACTIVATE_NOW; 774 macfb_defined.activate = FB_ACTIVATE_NOW;
776 break; 775 break;
777 default: 776 default:
778 strcat( macfb_fix.id, "Generic NuBus" ); 777 strcpy(macfb_fix.id, "Generic NuBus");
779 break; 778 break;
780 } 779 }
781 } 780 }
@@ -786,21 +785,11 @@ static int __init macfb_init(void)
786 if (!video_is_nubus) 785 if (!video_is_nubus)
787 switch( mac_bi_data.id ) 786 switch( mac_bi_data.id )
788 { 787 {
789 /* These don't have onboard video. Eventually, we may
790 be able to write separate framebuffer drivers for
791 them (tobyfb.c, hiresfb.c, etc, etc) */
792 case MAC_MODEL_II:
793 case MAC_MODEL_IIX:
794 case MAC_MODEL_IICX:
795 case MAC_MODEL_IIFX:
796 strcat( macfb_fix.id, "Generic NuBus" );
797 break;
798
799 /* Valkyrie Quadras */ 788 /* Valkyrie Quadras */
800 case MAC_MODEL_Q630: 789 case MAC_MODEL_Q630:
801 /* I'm not sure about this one */ 790 /* I'm not sure about this one */
802 case MAC_MODEL_P588: 791 case MAC_MODEL_P588:
803 strcat( macfb_fix.id, "Valkyrie built-in" ); 792 strcpy(macfb_fix.id, "Valkyrie");
804 macfb_setpalette = valkyrie_setpalette; 793 macfb_setpalette = valkyrie_setpalette;
805 macfb_defined.activate = FB_ACTIVATE_NOW; 794 macfb_defined.activate = FB_ACTIVATE_NOW;
806 valkyrie_cmap_regs = ioremap(DAC_BASE, 0x1000); 795 valkyrie_cmap_regs = ioremap(DAC_BASE, 0x1000);
@@ -823,7 +812,7 @@ static int __init macfb_init(void)
823 case MAC_MODEL_Q700: 812 case MAC_MODEL_Q700:
824 case MAC_MODEL_Q900: 813 case MAC_MODEL_Q900:
825 case MAC_MODEL_Q950: 814 case MAC_MODEL_Q950:
826 strcat( macfb_fix.id, "DAFB built-in" ); 815 strcpy(macfb_fix.id, "DAFB");
827 macfb_setpalette = dafb_setpalette; 816 macfb_setpalette = dafb_setpalette;
828 macfb_defined.activate = FB_ACTIVATE_NOW; 817 macfb_defined.activate = FB_ACTIVATE_NOW;
829 dafb_cmap_regs = ioremap(DAFB_BASE, 0x1000); 818 dafb_cmap_regs = ioremap(DAFB_BASE, 0x1000);
@@ -831,7 +820,7 @@ static int __init macfb_init(void)
831 820
832 /* LC II uses the V8 framebuffer */ 821 /* LC II uses the V8 framebuffer */
833 case MAC_MODEL_LCII: 822 case MAC_MODEL_LCII:
834 strcat( macfb_fix.id, "V8 built-in" ); 823 strcpy(macfb_fix.id, "V8");
835 macfb_setpalette = v8_brazil_setpalette; 824 macfb_setpalette = v8_brazil_setpalette;
836 macfb_defined.activate = FB_ACTIVATE_NOW; 825 macfb_defined.activate = FB_ACTIVATE_NOW;
837 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000); 826 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000);
@@ -843,7 +832,7 @@ static int __init macfb_init(void)
843 case MAC_MODEL_IIVI: 832 case MAC_MODEL_IIVI:
844 case MAC_MODEL_IIVX: 833 case MAC_MODEL_IIVX:
845 case MAC_MODEL_P600: 834 case MAC_MODEL_P600:
846 strcat( macfb_fix.id, "Brazil built-in" ); 835 strcpy(macfb_fix.id, "Brazil");
847 macfb_setpalette = v8_brazil_setpalette; 836 macfb_setpalette = v8_brazil_setpalette;
848 macfb_defined.activate = FB_ACTIVATE_NOW; 837 macfb_defined.activate = FB_ACTIVATE_NOW;
849 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000); 838 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000);
@@ -860,7 +849,7 @@ static int __init macfb_init(void)
860 case MAC_MODEL_P460: 849 case MAC_MODEL_P460:
861 macfb_setpalette = v8_brazil_setpalette; 850 macfb_setpalette = v8_brazil_setpalette;
862 macfb_defined.activate = FB_ACTIVATE_NOW; 851 macfb_defined.activate = FB_ACTIVATE_NOW;
863 strcat( macfb_fix.id, "Sonora built-in" ); 852 strcpy(macfb_fix.id, "Sonora");
864 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000); 853 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000);
865 break; 854 break;
866 855
@@ -871,7 +860,7 @@ static int __init macfb_init(void)
871 case MAC_MODEL_IISI: 860 case MAC_MODEL_IISI:
872 macfb_setpalette = rbv_setpalette; 861 macfb_setpalette = rbv_setpalette;
873 macfb_defined.activate = FB_ACTIVATE_NOW; 862 macfb_defined.activate = FB_ACTIVATE_NOW;
874 strcat( macfb_fix.id, "RBV built-in" ); 863 strcpy(macfb_fix.id, "RBV");
875 rbv_cmap_regs = ioremap(DAC_BASE, 0x1000); 864 rbv_cmap_regs = ioremap(DAC_BASE, 0x1000);
876 break; 865 break;
877 866
@@ -880,7 +869,7 @@ static int __init macfb_init(void)
880 case MAC_MODEL_C660: 869 case MAC_MODEL_C660:
881 macfb_setpalette = civic_setpalette; 870 macfb_setpalette = civic_setpalette;
882 macfb_defined.activate = FB_ACTIVATE_NOW; 871 macfb_defined.activate = FB_ACTIVATE_NOW;
883 strcat( macfb_fix.id, "Civic built-in" ); 872 strcpy(macfb_fix.id, "Civic");
884 civic_cmap_regs = ioremap(CIVIC_BASE, 0x1000); 873 civic_cmap_regs = ioremap(CIVIC_BASE, 0x1000);
885 break; 874 break;
886 875
@@ -901,7 +890,7 @@ static int __init macfb_init(void)
901 v8_brazil_cmap_regs = 890 v8_brazil_cmap_regs =
902 ioremap(DAC_BASE, 0x1000); 891 ioremap(DAC_BASE, 0x1000);
903 } 892 }
904 strcat( macfb_fix.id, "LC built-in" ); 893 strcpy(macfb_fix.id, "LC");
905 break; 894 break;
906 /* We think this may be like the LC II */ 895 /* We think this may be like the LC II */
907 case MAC_MODEL_CCL: 896 case MAC_MODEL_CCL:
@@ -911,18 +900,18 @@ static int __init macfb_init(void)
911 v8_brazil_cmap_regs = 900 v8_brazil_cmap_regs =
912 ioremap(DAC_BASE, 0x1000); 901 ioremap(DAC_BASE, 0x1000);
913 } 902 }
914 strcat( macfb_fix.id, "Color Classic built-in" ); 903 strcpy(macfb_fix.id, "Color Classic");
915 break; 904 break;
916 905
917 /* And we *do* mean "weirdos" */ 906 /* And we *do* mean "weirdos" */
918 case MAC_MODEL_TV: 907 case MAC_MODEL_TV:
919 strcat( macfb_fix.id, "Mac TV built-in" ); 908 strcpy(macfb_fix.id, "Mac TV");
920 break; 909 break;
921 910
922 /* These don't have colour, so no need to worry */ 911 /* These don't have colour, so no need to worry */
923 case MAC_MODEL_SE30: 912 case MAC_MODEL_SE30:
924 case MAC_MODEL_CLII: 913 case MAC_MODEL_CLII:
925 strcat( macfb_fix.id, "Monochrome built-in" ); 914 strcpy(macfb_fix.id, "Monochrome");
926 break; 915 break;
927 916
928 /* Powerbooks are particularly difficult. Many of 917 /* Powerbooks are particularly difficult. Many of
@@ -935,7 +924,7 @@ static int __init macfb_init(void)
935 case MAC_MODEL_PB140: 924 case MAC_MODEL_PB140:
936 case MAC_MODEL_PB145: 925 case MAC_MODEL_PB145:
937 case MAC_MODEL_PB170: 926 case MAC_MODEL_PB170:
938 strcat( macfb_fix.id, "DDC built-in" ); 927 strcpy(macfb_fix.id, "DDC");
939 break; 928 break;
940 929
941 /* Internal is GSC, External (if present) is ViSC */ 930 /* Internal is GSC, External (if present) is ViSC */
@@ -945,13 +934,13 @@ static int __init macfb_init(void)
945 case MAC_MODEL_PB180: 934 case MAC_MODEL_PB180:
946 case MAC_MODEL_PB210: 935 case MAC_MODEL_PB210:
947 case MAC_MODEL_PB230: 936 case MAC_MODEL_PB230:
948 strcat( macfb_fix.id, "GSC built-in" ); 937 strcpy(macfb_fix.id, "GSC");
949 break; 938 break;
950 939
951 /* Internal is TIM, External is ViSC */ 940 /* Internal is TIM, External is ViSC */
952 case MAC_MODEL_PB165C: 941 case MAC_MODEL_PB165C:
953 case MAC_MODEL_PB180C: 942 case MAC_MODEL_PB180C:
954 strcat( macfb_fix.id, "TIM built-in" ); 943 strcpy(macfb_fix.id, "TIM");
955 break; 944 break;
956 945
957 /* Internal is CSC, External is Keystone+Ariel. */ 946 /* Internal is CSC, External is Keystone+Ariel. */
@@ -963,12 +952,12 @@ static int __init macfb_init(void)
963 case MAC_MODEL_PB280C: 952 case MAC_MODEL_PB280C:
964 macfb_setpalette = csc_setpalette; 953 macfb_setpalette = csc_setpalette;
965 macfb_defined.activate = FB_ACTIVATE_NOW; 954 macfb_defined.activate = FB_ACTIVATE_NOW;
966 strcat( macfb_fix.id, "CSC built-in" ); 955 strcpy(macfb_fix.id, "CSC");
967 csc_cmap_regs = ioremap(CSC_BASE, 0x1000); 956 csc_cmap_regs = ioremap(CSC_BASE, 0x1000);
968 break; 957 break;
969 958
970 default: 959 default:
971 strcat( macfb_fix.id, "Unknown/Unsupported built-in" ); 960 strcpy(macfb_fix.id, "Unknown");
972 break; 961 break;
973 } 962 }
974 963
@@ -978,16 +967,23 @@ static int __init macfb_init(void)
978 fb_info.pseudo_palette = pseudo_palette; 967 fb_info.pseudo_palette = pseudo_palette;
979 fb_info.flags = FBINFO_DEFAULT; 968 fb_info.flags = FBINFO_DEFAULT;
980 969
981 fb_alloc_cmap(&fb_info.cmap, video_cmap_len, 0); 970 err = fb_alloc_cmap(&fb_info.cmap, video_cmap_len, 0);
971 if (err)
972 goto fail_unmap;
982 973
983 err = register_framebuffer(&fb_info); 974 err = register_framebuffer(&fb_info);
984 if (!err) 975 if (err)
985 printk("fb%d: %s frame buffer device\n", 976 goto fail_dealloc;
986 fb_info.node, fb_info.fix.id); 977
987 else { 978 printk("fb%d: %s frame buffer device\n",
988 iounmap(fb_info.screen_base); 979 fb_info.node, fb_info.fix.id);
989 iounmap_macfb(); 980 return 0;
990 } 981
982fail_dealloc:
983 fb_dealloc_cmap(&fb_info.cmap);
984fail_unmap:
985 iounmap(fb_info.screen_base);
986 iounmap_macfb();
991 return err; 987 return err;
992} 988}
993 989
diff --git a/drivers/video/mb862xx/mb862xxfb.c b/drivers/video/mb862xx/mb862xxfb.c
index 38718d95fbb9..fb64234a3825 100644
--- a/drivers/video/mb862xx/mb862xxfb.c
+++ b/drivers/video/mb862xx/mb862xxfb.c
@@ -927,9 +927,9 @@ static int __devinit mb862xx_pci_probe(struct pci_dev *pdev,
927 } 927 }
928 928
929 dev_dbg(dev, "fb phys 0x%llx 0x%lx\n", 929 dev_dbg(dev, "fb phys 0x%llx 0x%lx\n",
930 (u64)par->fb_base_phys, (ulong)par->mapped_vram); 930 (unsigned long long)par->fb_base_phys, (ulong)par->mapped_vram);
931 dev_dbg(dev, "mmio phys 0x%llx 0x%lx\n", 931 dev_dbg(dev, "mmio phys 0x%llx 0x%lx\n",
932 (u64)par->mmio_base_phys, (ulong)par->mmio_len); 932 (unsigned long long)par->mmio_base_phys, (ulong)par->mmio_len);
933 933
934 if (mb862xx_pci_gdc_init(par)) 934 if (mb862xx_pci_gdc_init(par))
935 goto io_unmap; 935 goto io_unmap;
diff --git a/drivers/video/omap/omapfb_main.c b/drivers/video/omap/omapfb_main.c
index 5a5e407dc45f..1a49519dafa4 100644
--- a/drivers/video/omap/omapfb_main.c
+++ b/drivers/video/omap/omapfb_main.c
@@ -392,7 +392,7 @@ static void set_fb_fix(struct fb_info *fbi)
392 int bpp; 392 int bpp;
393 393
394 rg = &plane->fbdev->mem_desc.region[plane->idx]; 394 rg = &plane->fbdev->mem_desc.region[plane->idx];
395 fbi->screen_base = (char __iomem *)rg->vaddr; 395 fbi->screen_base = rg->vaddr;
396 fix->smem_start = rg->paddr; 396 fix->smem_start = rg->paddr;
397 fix->smem_len = rg->size; 397 fix->smem_len = rg->size;
398 398
diff --git a/drivers/watchdog/hpwdt.c b/drivers/watchdog/hpwdt.c
index a3765e0be4a8..763c1ea5dce5 100644
--- a/drivers/watchdog/hpwdt.c
+++ b/drivers/watchdog/hpwdt.c
@@ -40,6 +40,7 @@
40#include <linux/bootmem.h> 40#include <linux/bootmem.h>
41#include <linux/slab.h> 41#include <linux/slab.h>
42#include <asm/desc.h> 42#include <asm/desc.h>
43#include <asm/cacheflush.h>
43 44
44#define PCI_BIOS32_SD_VALUE 0x5F32335F /* "_32_" */ 45#define PCI_BIOS32_SD_VALUE 0x5F32335F /* "_32_" */
45#define CRU_BIOS_SIGNATURE_VALUE 0x55524324 46#define CRU_BIOS_SIGNATURE_VALUE 0x55524324
@@ -394,6 +395,8 @@ static void __devinit dmi_find_cru(const struct dmi_header *dm)
394 smbios_cru64_ptr->double_offset; 395 smbios_cru64_ptr->double_offset;
395 cru_rom_addr = ioremap(cru_physical_address, 396 cru_rom_addr = ioremap(cru_physical_address,
396 smbios_cru64_ptr->double_length); 397 smbios_cru64_ptr->double_length);
398 set_memory_x((unsigned long)cru_rom_addr & PAGE_MASK,
399 smbios_cru64_ptr->double_length >> PAGE_SHIFT);
397 } 400 }
398 } 401 }
399} 402}
@@ -482,7 +485,7 @@ static int hpwdt_pretimeout(struct notifier_block *nb, unsigned long ulReason,
482 "Management Log for details.\n"); 485 "Management Log for details.\n");
483 } 486 }
484 487
485 return NOTIFY_STOP; 488 return NOTIFY_OK;
486} 489}
487 490
488/* 491/*
diff --git a/drivers/watchdog/iTCO_vendor_support.c b/drivers/watchdog/iTCO_vendor_support.c
index ca344a85eb95..2474ebca88f6 100644
--- a/drivers/watchdog/iTCO_vendor_support.c
+++ b/drivers/watchdog/iTCO_vendor_support.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * intel TCO vendor specific watchdog driver support 2 * intel TCO vendor specific watchdog driver support
3 * 3 *
4 * (c) Copyright 2006 Wim Van Sebroeck <wim@iguana.be>. 4 * (c) Copyright 2006-2008 Wim Van Sebroeck <wim@iguana.be>.
5 * 5 *
6 * This program is free software; you can redistribute it and/or 6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License 7 * modify it under the terms of the GNU General Public License
@@ -19,8 +19,7 @@
19 19
20/* Module and version information */ 20/* Module and version information */
21#define DRV_NAME "iTCO_vendor_support" 21#define DRV_NAME "iTCO_vendor_support"
22#define DRV_VERSION "1.01" 22#define DRV_VERSION "1.02"
23#define DRV_RELDATE "11-Nov-2006"
24#define PFX DRV_NAME ": " 23#define PFX DRV_NAME ": "
25 24
26/* Includes */ 25/* Includes */
@@ -78,24 +77,6 @@ MODULE_PARM_DESC(vendorsupport, "iTCO vendor specific support mode, default=0 (n
78 * 20.6 seconds. 77 * 20.6 seconds.
79 */ 78 */
80 79
81static void supermicro_old_pre_start(unsigned long acpibase)
82{
83 unsigned long val32;
84
85 val32 = inl(SMI_EN);
86 val32 &= 0xffffdfff; /* Turn off SMI clearing watchdog */
87 outl(val32, SMI_EN); /* Needed to activate watchdog */
88}
89
90static void supermicro_old_pre_stop(unsigned long acpibase)
91{
92 unsigned long val32;
93
94 val32 = inl(SMI_EN);
95 val32 &= 0x00002000; /* Turn on SMI clearing watchdog */
96 outl(val32, SMI_EN); /* Needed to deactivate watchdog */
97}
98
99static void supermicro_old_pre_keepalive(unsigned long acpibase) 80static void supermicro_old_pre_keepalive(unsigned long acpibase)
100{ 81{
101 /* Reload TCO Timer (done in iTCO_wdt_keepalive) + */ 82 /* Reload TCO Timer (done in iTCO_wdt_keepalive) + */
@@ -247,18 +228,14 @@ static void supermicro_new_pre_set_heartbeat(unsigned int heartbeat)
247void iTCO_vendor_pre_start(unsigned long acpibase, 228void iTCO_vendor_pre_start(unsigned long acpibase,
248 unsigned int heartbeat) 229 unsigned int heartbeat)
249{ 230{
250 if (vendorsupport == SUPERMICRO_OLD_BOARD) 231 if (vendorsupport == SUPERMICRO_NEW_BOARD)
251 supermicro_old_pre_start(acpibase);
252 else if (vendorsupport == SUPERMICRO_NEW_BOARD)
253 supermicro_new_pre_start(heartbeat); 232 supermicro_new_pre_start(heartbeat);
254} 233}
255EXPORT_SYMBOL(iTCO_vendor_pre_start); 234EXPORT_SYMBOL(iTCO_vendor_pre_start);
256 235
257void iTCO_vendor_pre_stop(unsigned long acpibase) 236void iTCO_vendor_pre_stop(unsigned long acpibase)
258{ 237{
259 if (vendorsupport == SUPERMICRO_OLD_BOARD) 238 if (vendorsupport == SUPERMICRO_NEW_BOARD)
260 supermicro_old_pre_stop(acpibase);
261 else if (vendorsupport == SUPERMICRO_NEW_BOARD)
262 supermicro_new_pre_stop(); 239 supermicro_new_pre_stop();
263} 240}
264EXPORT_SYMBOL(iTCO_vendor_pre_stop); 241EXPORT_SYMBOL(iTCO_vendor_pre_stop);
diff --git a/drivers/watchdog/iTCO_wdt.c b/drivers/watchdog/iTCO_wdt.c
index bfb93bc2ca9f..5b395a4ddfdf 100644
--- a/drivers/watchdog/iTCO_wdt.c
+++ b/drivers/watchdog/iTCO_wdt.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * intel TCO Watchdog Driver (Used in i82801 and i6300ESB chipsets) 2 * intel TCO Watchdog Driver (Used in i82801 and i6300ESB chipsets)
3 * 3 *
4 * (c) Copyright 2006-2007 Wim Van Sebroeck <wim@iguana.be>. 4 * (c) Copyright 2006-2008 Wim Van Sebroeck <wim@iguana.be>.
5 * 5 *
6 * This program is free software; you can redistribute it and/or 6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License 7 * modify it under the terms of the GNU General Public License
@@ -20,34 +20,41 @@
20 * 82801BAM (ICH2-M) : document number 290687-002, 298242-027, 20 * 82801BAM (ICH2-M) : document number 290687-002, 298242-027,
21 * 82801CA (ICH3-S) : document number 290733-003, 290739-013, 21 * 82801CA (ICH3-S) : document number 290733-003, 290739-013,
22 * 82801CAM (ICH3-M) : document number 290716-001, 290718-007, 22 * 82801CAM (ICH3-M) : document number 290716-001, 290718-007,
23 * 82801DB (ICH4) : document number 290744-001, 290745-020, 23 * 82801DB (ICH4) : document number 290744-001, 290745-025,
24 * 82801DBM (ICH4-M) : document number 252337-001, 252663-005, 24 * 82801DBM (ICH4-M) : document number 252337-001, 252663-008,
25 * 82801E (C-ICH) : document number 273599-001, 273645-002, 25 * 82801E (C-ICH) : document number 273599-001, 273645-002,
26 * 82801EB (ICH5) : document number 252516-001, 252517-003, 26 * 82801EB (ICH5) : document number 252516-001, 252517-028,
27 * 82801ER (ICH5R) : document number 252516-001, 252517-003, 27 * 82801ER (ICH5R) : document number 252516-001, 252517-028,
28 * 82801FB (ICH6) : document number 301473-002, 301474-007, 28 * 6300ESB (6300ESB) : document number 300641-004, 300884-013,
29 * 82801FR (ICH6R) : document number 301473-002, 301474-007, 29 * 82801FB (ICH6) : document number 301473-002, 301474-026,
30 * 82801FBM (ICH6-M) : document number 301473-002, 301474-007, 30 * 82801FR (ICH6R) : document number 301473-002, 301474-026,
31 * 82801FW (ICH6W) : document number 301473-001, 301474-007, 31 * 82801FBM (ICH6-M) : document number 301473-002, 301474-026,
32 * 82801FRW (ICH6RW) : document number 301473-001, 301474-007, 32 * 82801FW (ICH6W) : document number 301473-001, 301474-026,
33 * 82801GB (ICH7) : document number 307013-002, 307014-009, 33 * 82801FRW (ICH6RW) : document number 301473-001, 301474-026,
34 * 82801GR (ICH7R) : document number 307013-002, 307014-009, 34 * 631xESB (631xESB) : document number 313082-001, 313075-006,
35 * 82801GDH (ICH7DH) : document number 307013-002, 307014-009, 35 * 632xESB (632xESB) : document number 313082-001, 313075-006,
36 * 82801GBM (ICH7-M) : document number 307013-002, 307014-009, 36 * 82801GB (ICH7) : document number 307013-003, 307014-024,
37 * 82801GHM (ICH7-M DH) : document number 307013-002, 307014-009, 37 * 82801GR (ICH7R) : document number 307013-003, 307014-024,
38 * 82801HB (ICH8) : document number 313056-003, 313057-009, 38 * 82801GDH (ICH7DH) : document number 307013-003, 307014-024,
39 * 82801HR (ICH8R) : document number 313056-003, 313057-009, 39 * 82801GBM (ICH7-M) : document number 307013-003, 307014-024,
40 * 82801HBM (ICH8M) : document number 313056-003, 313057-009, 40 * 82801GHM (ICH7-M DH) : document number 307013-003, 307014-024,
41 * 82801HH (ICH8DH) : document number 313056-003, 313057-009, 41 * 82801GU (ICH7-U) : document number 307013-003, 307014-024,
42 * 82801HO (ICH8DO) : document number 313056-003, 313057-009, 42 * 82801HB (ICH8) : document number 313056-003, 313057-017,
43 * 82801HEM (ICH8M-E) : document number 313056-003, 313057-009, 43 * 82801HR (ICH8R) : document number 313056-003, 313057-017,
44 * 82801IB (ICH9) : document number 316972-001, 316973-006, 44 * 82801HBM (ICH8M) : document number 313056-003, 313057-017,
45 * 82801IR (ICH9R) : document number 316972-001, 316973-006, 45 * 82801HH (ICH8DH) : document number 313056-003, 313057-017,
46 * 82801IH (ICH9DH) : document number 316972-001, 316973-006, 46 * 82801HO (ICH8DO) : document number 313056-003, 313057-017,
47 * 82801IO (ICH9DO) : document number 316972-001, 316973-006, 47 * 82801HEM (ICH8M-E) : document number 313056-003, 313057-017,
48 * 6300ESB (6300ESB) : document number 300641-003, 300884-010, 48 * 82801IB (ICH9) : document number 316972-004, 316973-012,
49 * 631xESB (631xESB) : document number 313082-001, 313075-005, 49 * 82801IR (ICH9R) : document number 316972-004, 316973-012,
50 * 632xESB (632xESB) : document number 313082-001, 313075-005 50 * 82801IH (ICH9DH) : document number 316972-004, 316973-012,
51 * 82801IO (ICH9DO) : document number 316972-004, 316973-012,
52 * 82801IBM (ICH9M) : document number 316972-004, 316973-012,
53 * 82801IEM (ICH9M-E) : document number 316972-004, 316973-012,
54 * 82801JIB (ICH10) : document number 319973-002, 319974-002,
55 * 82801JIR (ICH10R) : document number 319973-002, 319974-002,
56 * 82801JD (ICH10D) : document number 319973-002, 319974-002,
57 * 82801JDO (ICH10DO) : document number 319973-002, 319974-002
51 */ 58 */
52 59
53/* 60/*
@@ -56,8 +63,7 @@
56 63
57/* Module and version information */ 64/* Module and version information */
58#define DRV_NAME "iTCO_wdt" 65#define DRV_NAME "iTCO_wdt"
59#define DRV_VERSION "1.03" 66#define DRV_VERSION "1.04"
60#define DRV_RELDATE "30-Apr-2008"
61#define PFX DRV_NAME ": " 67#define PFX DRV_NAME ": "
62 68
63/* Includes */ 69/* Includes */
@@ -96,19 +102,26 @@ enum iTCO_chipsets {
96 TCO_ICH6, /* ICH6 & ICH6R */ 102 TCO_ICH6, /* ICH6 & ICH6R */
97 TCO_ICH6M, /* ICH6-M */ 103 TCO_ICH6M, /* ICH6-M */
98 TCO_ICH6W, /* ICH6W & ICH6RW */ 104 TCO_ICH6W, /* ICH6W & ICH6RW */
105 TCO_631XESB, /* 631xESB/632xESB */
99 TCO_ICH7, /* ICH7 & ICH7R */ 106 TCO_ICH7, /* ICH7 & ICH7R */
100 TCO_ICH7M, /* ICH7-M */ 107 TCO_ICH7DH, /* ICH7DH */
108 TCO_ICH7M, /* ICH7-M & ICH7-U */
101 TCO_ICH7MDH, /* ICH7-M DH */ 109 TCO_ICH7MDH, /* ICH7-M DH */
102 TCO_ICH8, /* ICH8 & ICH8R */ 110 TCO_ICH8, /* ICH8 & ICH8R */
103 TCO_ICH8ME, /* ICH8M-E */
104 TCO_ICH8DH, /* ICH8DH */ 111 TCO_ICH8DH, /* ICH8DH */
105 TCO_ICH8DO, /* ICH8DO */ 112 TCO_ICH8DO, /* ICH8DO */
106 TCO_ICH8M, /* ICH8M */ 113 TCO_ICH8M, /* ICH8M */
114 TCO_ICH8ME, /* ICH8M-E */
107 TCO_ICH9, /* ICH9 */ 115 TCO_ICH9, /* ICH9 */
108 TCO_ICH9R, /* ICH9R */ 116 TCO_ICH9R, /* ICH9R */
109 TCO_ICH9DH, /* ICH9DH */ 117 TCO_ICH9DH, /* ICH9DH */
110 TCO_ICH9DO, /* ICH9DO */ 118 TCO_ICH9DO, /* ICH9DO */
111 TCO_631XESB, /* 631xESB/632xESB */ 119 TCO_ICH9M, /* ICH9M */
120 TCO_ICH9ME, /* ICH9M-E */
121 TCO_ICH10, /* ICH10 */
122 TCO_ICH10R, /* ICH10R */
123 TCO_ICH10D, /* ICH10D */
124 TCO_ICH10DO, /* ICH10DO */
112}; 125};
113 126
114static struct { 127static struct {
@@ -129,19 +142,26 @@ static struct {
129 {"ICH6 or ICH6R", 2}, 142 {"ICH6 or ICH6R", 2},
130 {"ICH6-M", 2}, 143 {"ICH6-M", 2},
131 {"ICH6W or ICH6RW", 2}, 144 {"ICH6W or ICH6RW", 2},
145 {"631xESB/632xESB", 2},
132 {"ICH7 or ICH7R", 2}, 146 {"ICH7 or ICH7R", 2},
133 {"ICH7-M", 2}, 147 {"ICH7DH", 2},
148 {"ICH7-M or ICH7-U", 2},
134 {"ICH7-M DH", 2}, 149 {"ICH7-M DH", 2},
135 {"ICH8 or ICH8R", 2}, 150 {"ICH8 or ICH8R", 2},
136 {"ICH8M-E", 2},
137 {"ICH8DH", 2}, 151 {"ICH8DH", 2},
138 {"ICH8DO", 2}, 152 {"ICH8DO", 2},
139 {"ICH8M", 2}, 153 {"ICH8M", 2},
154 {"ICH8M-E", 2},
140 {"ICH9", 2}, 155 {"ICH9", 2},
141 {"ICH9R", 2}, 156 {"ICH9R", 2},
142 {"ICH9DH", 2}, 157 {"ICH9DH", 2},
143 {"ICH9DO", 2}, 158 {"ICH9DO", 2},
144 {"631xESB/632xESB", 2}, 159 {"ICH9M", 2},
160 {"ICH9M-E", 2},
161 {"ICH10", 2},
162 {"ICH10R", 2},
163 {"ICH10D", 2},
164 {"ICH10DO", 2},
145 {NULL, 0} 165 {NULL, 0}
146}; 166};
147 167
@@ -175,18 +195,6 @@ static struct pci_device_id iTCO_wdt_pci_tbl[] = {
175 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH6_0, TCO_ICH6)}, 195 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH6_0, TCO_ICH6)},
176 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH6_1, TCO_ICH6M)}, 196 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH6_1, TCO_ICH6M)},
177 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH6_2, TCO_ICH6W)}, 197 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH6_2, TCO_ICH6W)},
178 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH7_0, TCO_ICH7)},
179 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH7_1, TCO_ICH7M)},
180 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH7_31, TCO_ICH7MDH)},
181 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_0, TCO_ICH8)},
182 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_1, TCO_ICH8ME)},
183 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_2, TCO_ICH8DH)},
184 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_3, TCO_ICH8DO)},
185 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_4, TCO_ICH8M)},
186 { ITCO_PCI_DEVICE(0x2918, TCO_ICH9)},
187 { ITCO_PCI_DEVICE(0x2916, TCO_ICH9R)},
188 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH9_2, TCO_ICH9DH)},
189 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH9_4, TCO_ICH9DO)},
190 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ESB2_0, TCO_631XESB)}, 198 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ESB2_0, TCO_631XESB)},
191 { ITCO_PCI_DEVICE(0x2671, TCO_631XESB)}, 199 { ITCO_PCI_DEVICE(0x2671, TCO_631XESB)},
192 { ITCO_PCI_DEVICE(0x2672, TCO_631XESB)}, 200 { ITCO_PCI_DEVICE(0x2672, TCO_631XESB)},
@@ -203,6 +211,25 @@ static struct pci_device_id iTCO_wdt_pci_tbl[] = {
203 { ITCO_PCI_DEVICE(0x267d, TCO_631XESB)}, 211 { ITCO_PCI_DEVICE(0x267d, TCO_631XESB)},
204 { ITCO_PCI_DEVICE(0x267e, TCO_631XESB)}, 212 { ITCO_PCI_DEVICE(0x267e, TCO_631XESB)},
205 { ITCO_PCI_DEVICE(0x267f, TCO_631XESB)}, 213 { ITCO_PCI_DEVICE(0x267f, TCO_631XESB)},
214 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH7_0, TCO_ICH7)},
215 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH7_30, TCO_ICH7DH)},
216 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH7_1, TCO_ICH7M)},
217 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH7_31, TCO_ICH7MDH)},
218 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_0, TCO_ICH8)},
219 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_2, TCO_ICH8DH)},
220 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_3, TCO_ICH8DO)},
221 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_4, TCO_ICH8M)},
222 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH8_1, TCO_ICH8ME)},
223 { ITCO_PCI_DEVICE(0x2918, TCO_ICH9)},
224 { ITCO_PCI_DEVICE(0x2916, TCO_ICH9R)},
225 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH9_2, TCO_ICH9DH)},
226 { ITCO_PCI_DEVICE(PCI_DEVICE_ID_INTEL_ICH9_4, TCO_ICH9DO)},
227 { ITCO_PCI_DEVICE(0x2919, TCO_ICH9M)},
228 { ITCO_PCI_DEVICE(0x2917, TCO_ICH9ME)},
229 { ITCO_PCI_DEVICE(0x3a18, TCO_ICH10)},
230 { ITCO_PCI_DEVICE(0x3a16, TCO_ICH10R)},
231 { ITCO_PCI_DEVICE(0x3a1a, TCO_ICH10D)},
232 { ITCO_PCI_DEVICE(0x3a14, TCO_ICH10DO)},
206 { 0, }, /* End of list */ 233 { 0, }, /* End of list */
207}; 234};
208MODULE_DEVICE_TABLE(pci, iTCO_wdt_pci_tbl); 235MODULE_DEVICE_TABLE(pci, iTCO_wdt_pci_tbl);
@@ -311,6 +338,7 @@ static int iTCO_wdt_unset_NO_REBOOT_bit(void)
311static int iTCO_wdt_start(void) 338static int iTCO_wdt_start(void)
312{ 339{
313 unsigned int val; 340 unsigned int val;
341 unsigned long val32;
314 342
315 spin_lock(&iTCO_wdt_private.io_lock); 343 spin_lock(&iTCO_wdt_private.io_lock);
316 344
@@ -323,6 +351,18 @@ static int iTCO_wdt_start(void)
323 return -EIO; 351 return -EIO;
324 } 352 }
325 353
354 /* Bit 13: TCO_EN -> 0 = Disables TCO logic generating an SMI# */
355 val32 = inl(SMI_EN);
356 val32 &= 0xffffdfff; /* Turn off SMI clearing watchdog */
357 outl(val32, SMI_EN);
358
359 /* Force the timer to its reload value by writing to the TCO_RLD
360 register */
361 if (iTCO_wdt_private.iTCO_version == 2)
362 outw(0x01, TCO_RLD);
363 else if (iTCO_wdt_private.iTCO_version == 1)
364 outb(0x01, TCO_RLD);
365
326 /* Bit 11: TCO Timer Halt -> 0 = The TCO timer is enabled to count */ 366 /* Bit 11: TCO Timer Halt -> 0 = The TCO timer is enabled to count */
327 val = inw(TCO1_CNT); 367 val = inw(TCO1_CNT);
328 val &= 0xf7ff; 368 val &= 0xf7ff;
@@ -338,6 +378,7 @@ static int iTCO_wdt_start(void)
338static int iTCO_wdt_stop(void) 378static int iTCO_wdt_stop(void)
339{ 379{
340 unsigned int val; 380 unsigned int val;
381 unsigned long val32;
341 382
342 spin_lock(&iTCO_wdt_private.io_lock); 383 spin_lock(&iTCO_wdt_private.io_lock);
343 384
@@ -349,6 +390,11 @@ static int iTCO_wdt_stop(void)
349 outw(val, TCO1_CNT); 390 outw(val, TCO1_CNT);
350 val = inw(TCO1_CNT); 391 val = inw(TCO1_CNT);
351 392
393 /* Bit 13: TCO_EN -> 1 = Enables the TCO logic to generate SMI# */
394 val32 = inl(SMI_EN);
395 val32 |= 0x00002000;
396 outl(val32, SMI_EN);
397
352 /* Set the NO_REBOOT bit to prevent later reboots, just for sure */ 398 /* Set the NO_REBOOT bit to prevent later reboots, just for sure */
353 iTCO_wdt_set_NO_REBOOT_bit(); 399 iTCO_wdt_set_NO_REBOOT_bit();
354 400
@@ -459,7 +505,6 @@ static int iTCO_wdt_open(struct inode *inode, struct file *file)
459 /* 505 /*
460 * Reload and activate timer 506 * Reload and activate timer
461 */ 507 */
462 iTCO_wdt_keepalive();
463 iTCO_wdt_start(); 508 iTCO_wdt_start();
464 return nonseekable_open(inode, file); 509 return nonseekable_open(inode, file);
465} 510}
@@ -604,7 +649,6 @@ static int __devinit iTCO_wdt_init(struct pci_dev *pdev,
604 int ret; 649 int ret;
605 u32 base_address; 650 u32 base_address;
606 unsigned long RCBA; 651 unsigned long RCBA;
607 unsigned long val32;
608 652
609 /* 653 /*
610 * Find the ACPI/PM base I/O address which is the base 654 * Find the ACPI/PM base I/O address which is the base
@@ -644,17 +688,13 @@ static int __devinit iTCO_wdt_init(struct pci_dev *pdev,
644 /* Set the NO_REBOOT bit to prevent later reboots, just for sure */ 688 /* Set the NO_REBOOT bit to prevent later reboots, just for sure */
645 iTCO_wdt_set_NO_REBOOT_bit(); 689 iTCO_wdt_set_NO_REBOOT_bit();
646 690
647 /* Set the TCO_EN bit in SMI_EN register */ 691 /* The TCO logic uses the TCO_EN bit in the SMI_EN register */
648 if (!request_region(SMI_EN, 4, "iTCO_wdt")) { 692 if (!request_region(SMI_EN, 4, "iTCO_wdt")) {
649 printk(KERN_ERR PFX 693 printk(KERN_ERR PFX
650 "I/O address 0x%04lx already in use\n", SMI_EN); 694 "I/O address 0x%04lx already in use\n", SMI_EN);
651 ret = -EIO; 695 ret = -EIO;
652 goto out; 696 goto out;
653 } 697 }
654 val32 = inl(SMI_EN);
655 val32 &= 0xffffdfff; /* Turn off SMI clearing watchdog */
656 outl(val32, SMI_EN);
657 release_region(SMI_EN, 4);
658 698
659 /* The TCO I/O registers reside in a 32-byte range pointed to 699 /* The TCO I/O registers reside in a 32-byte range pointed to
660 by the TCOBASE value */ 700 by the TCOBASE value */
@@ -662,7 +702,7 @@ static int __devinit iTCO_wdt_init(struct pci_dev *pdev,
662 printk(KERN_ERR PFX "I/O address 0x%04lx already in use\n", 702 printk(KERN_ERR PFX "I/O address 0x%04lx already in use\n",
663 TCOBASE); 703 TCOBASE);
664 ret = -EIO; 704 ret = -EIO;
665 goto out; 705 goto unreg_smi_en;
666 } 706 }
667 707
668 printk(KERN_INFO PFX 708 printk(KERN_INFO PFX
@@ -672,8 +712,9 @@ static int __devinit iTCO_wdt_init(struct pci_dev *pdev,
672 TCOBASE); 712 TCOBASE);
673 713
674 /* Clear out the (probably old) status */ 714 /* Clear out the (probably old) status */
675 outb(0, TCO1_STS); 715 outb(8, TCO1_STS); /* Clear the Time Out Status bit */
676 outb(3, TCO2_STS); 716 outb(2, TCO2_STS); /* Clear SECOND_TO_STS bit */
717 outb(4, TCO2_STS); /* Clear BOOT_STS bit */
677 718
678 /* Make sure the watchdog is not running */ 719 /* Make sure the watchdog is not running */
679 iTCO_wdt_stop(); 720 iTCO_wdt_stop();
@@ -701,6 +742,8 @@ static int __devinit iTCO_wdt_init(struct pci_dev *pdev,
701 742
702unreg_region: 743unreg_region:
703 release_region(TCOBASE, 0x20); 744 release_region(TCOBASE, 0x20);
745unreg_smi_en:
746 release_region(SMI_EN, 4);
704out: 747out:
705 if (iTCO_wdt_private.iTCO_version == 2) 748 if (iTCO_wdt_private.iTCO_version == 2)
706 iounmap(iTCO_wdt_private.gcs); 749 iounmap(iTCO_wdt_private.gcs);
@@ -718,6 +761,7 @@ static void __devexit iTCO_wdt_cleanup(void)
718 /* Deregister */ 761 /* Deregister */
719 misc_deregister(&iTCO_wdt_miscdev); 762 misc_deregister(&iTCO_wdt_miscdev);
720 release_region(TCOBASE, 0x20); 763 release_region(TCOBASE, 0x20);
764 release_region(SMI_EN, 4);
721 if (iTCO_wdt_private.iTCO_version == 2) 765 if (iTCO_wdt_private.iTCO_version == 2)
722 iounmap(iTCO_wdt_private.gcs); 766 iounmap(iTCO_wdt_private.gcs);
723 pci_dev_put(iTCO_wdt_private.pdev); 767 pci_dev_put(iTCO_wdt_private.pdev);
@@ -782,8 +826,8 @@ static int __init iTCO_wdt_init_module(void)
782{ 826{
783 int err; 827 int err;
784 828
785 printk(KERN_INFO PFX "Intel TCO WatchDog Timer Driver v%s (%s)\n", 829 printk(KERN_INFO PFX "Intel TCO WatchDog Timer Driver v%s\n",
786 DRV_VERSION, DRV_RELDATE); 830 DRV_VERSION);
787 831
788 err = platform_driver_register(&iTCO_wdt_driver); 832 err = platform_driver_register(&iTCO_wdt_driver);
789 if (err) 833 if (err)
diff --git a/drivers/watchdog/mtx-1_wdt.c b/drivers/watchdog/mtx-1_wdt.c
index b4b7b0a4c119..3acce623f209 100644
--- a/drivers/watchdog/mtx-1_wdt.c
+++ b/drivers/watchdog/mtx-1_wdt.c
@@ -98,6 +98,8 @@ static void mtx1_wdt_reset(void)
98 98
99static void mtx1_wdt_start(void) 99static void mtx1_wdt_start(void)
100{ 100{
101 unsigned long flags;
102
101 spin_lock_irqsave(&mtx1_wdt_device.lock, flags); 103 spin_lock_irqsave(&mtx1_wdt_device.lock, flags);
102 if (!mtx1_wdt_device.queue) { 104 if (!mtx1_wdt_device.queue) {
103 mtx1_wdt_device.queue = 1; 105 mtx1_wdt_device.queue = 1;
@@ -110,6 +112,8 @@ static void mtx1_wdt_start(void)
110 112
111static int mtx1_wdt_stop(void) 113static int mtx1_wdt_stop(void)
112{ 114{
115 unsigned long flags;
116
113 spin_lock_irqsave(&mtx1_wdt_device.lock, flags); 117 spin_lock_irqsave(&mtx1_wdt_device.lock, flags);
114 if (mtx1_wdt_device.queue) { 118 if (mtx1_wdt_device.queue) {
115 mtx1_wdt_device.queue = 0; 119 mtx1_wdt_device.queue = 0;
diff --git a/fs/block_dev.c b/fs/block_dev.c
index db831efbdbbd..99e0ae1a4c78 100644
--- a/fs/block_dev.c
+++ b/fs/block_dev.c
@@ -1135,12 +1135,15 @@ static int blkdev_open(struct inode * inode, struct file * filp)
1135 if (res) 1135 if (res)
1136 return res; 1136 return res;
1137 1137
1138 if (!(filp->f_mode & FMODE_EXCL)) 1138 if (filp->f_mode & FMODE_EXCL) {
1139 return 0; 1139 res = bd_claim(bdev, filp);
1140 if (res)
1141 goto out_blkdev_put;
1142 }
1140 1143
1141 if (!(res = bd_claim(bdev, filp))) 1144 return 0;
1142 return 0;
1143 1145
1146 out_blkdev_put:
1144 blkdev_put(bdev, filp->f_mode); 1147 blkdev_put(bdev, filp->f_mode);
1145 return res; 1148 return res;
1146} 1149}
@@ -1203,8 +1206,16 @@ static long block_ioctl(struct file *file, unsigned cmd, unsigned long arg)
1203{ 1206{
1204 struct block_device *bdev = I_BDEV(file->f_mapping->host); 1207 struct block_device *bdev = I_BDEV(file->f_mapping->host);
1205 fmode_t mode = file->f_mode; 1208 fmode_t mode = file->f_mode;
1209
1210 /*
1211 * O_NDELAY can be altered using fcntl(.., F_SETFL, ..), so we have
1212 * to updated it before every ioctl.
1213 */
1206 if (file->f_flags & O_NDELAY) 1214 if (file->f_flags & O_NDELAY)
1207 mode |= FMODE_NDELAY_NOW; 1215 mode |= FMODE_NDELAY;
1216 else
1217 mode &= ~FMODE_NDELAY;
1218
1208 return blkdev_ioctl(bdev, mode, cmd, arg); 1219 return blkdev_ioctl(bdev, mode, cmd, arg);
1209} 1220}
1210 1221
diff --git a/fs/exec.c b/fs/exec.c
index 4e834f16d9da..ec5df9a38313 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -1159,6 +1159,7 @@ EXPORT_SYMBOL(remove_arg_zero);
1159 */ 1159 */
1160int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) 1160int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
1161{ 1161{
1162 unsigned int depth = bprm->recursion_depth;
1162 int try,retval; 1163 int try,retval;
1163 struct linux_binfmt *fmt; 1164 struct linux_binfmt *fmt;
1164#ifdef __alpha__ 1165#ifdef __alpha__
@@ -1219,8 +1220,15 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
1219 continue; 1220 continue;
1220 read_unlock(&binfmt_lock); 1221 read_unlock(&binfmt_lock);
1221 retval = fn(bprm, regs); 1222 retval = fn(bprm, regs);
1223 /*
1224 * Restore the depth counter to its starting value
1225 * in this call, so we don't have to rely on every
1226 * load_binary function to restore it on return.
1227 */
1228 bprm->recursion_depth = depth;
1222 if (retval >= 0) { 1229 if (retval >= 0) {
1223 tracehook_report_exec(fmt, bprm, regs); 1230 if (depth == 0)
1231 tracehook_report_exec(fmt, bprm, regs);
1224 put_binfmt(fmt); 1232 put_binfmt(fmt);
1225 allow_write_access(bprm->file); 1233 allow_write_access(bprm->file);
1226 if (bprm->file) 1234 if (bprm->file)
diff --git a/fs/exportfs/expfs.c b/fs/exportfs/expfs.c
index 80246bad1b7f..890e01828817 100644
--- a/fs/exportfs/expfs.c
+++ b/fs/exportfs/expfs.c
@@ -367,6 +367,8 @@ struct dentry *exportfs_decode_fh(struct vfsmount *mnt, struct fid *fid,
367 * Try to get any dentry for the given file handle from the filesystem. 367 * Try to get any dentry for the given file handle from the filesystem.
368 */ 368 */
369 result = nop->fh_to_dentry(mnt->mnt_sb, fid, fh_len, fileid_type); 369 result = nop->fh_to_dentry(mnt->mnt_sb, fid, fh_len, fileid_type);
370 if (!result)
371 result = ERR_PTR(-ESTALE);
370 if (IS_ERR(result)) 372 if (IS_ERR(result))
371 return result; 373 return result;
372 374
@@ -420,6 +422,8 @@ struct dentry *exportfs_decode_fh(struct vfsmount *mnt, struct fid *fid,
420 422
421 target_dir = nop->fh_to_parent(mnt->mnt_sb, fid, 423 target_dir = nop->fh_to_parent(mnt->mnt_sb, fid,
422 fh_len, fileid_type); 424 fh_len, fileid_type);
425 if (!target_dir)
426 goto err_result;
423 err = PTR_ERR(target_dir); 427 err = PTR_ERR(target_dir);
424 if (IS_ERR(target_dir)) 428 if (IS_ERR(target_dir))
425 goto err_result; 429 goto err_result;
diff --git a/fs/ext4/balloc.c b/fs/ext4/balloc.c
index d2003cdc36aa..db35cfdb3c8b 100644
--- a/fs/ext4/balloc.c
+++ b/fs/ext4/balloc.c
@@ -609,8 +609,8 @@ int ext4_has_free_blocks(struct ext4_sb_info *sbi, s64 nblocks)
609 609
610 if (free_blocks - (nblocks + root_blocks + dirty_blocks) < 610 if (free_blocks - (nblocks + root_blocks + dirty_blocks) <
611 EXT4_FREEBLOCKS_WATERMARK) { 611 EXT4_FREEBLOCKS_WATERMARK) {
612 free_blocks = percpu_counter_sum(fbc); 612 free_blocks = percpu_counter_sum_positive(fbc);
613 dirty_blocks = percpu_counter_sum(dbc); 613 dirty_blocks = percpu_counter_sum_positive(dbc);
614 if (dirty_blocks < 0) { 614 if (dirty_blocks < 0) {
615 printk(KERN_CRIT "Dirty block accounting " 615 printk(KERN_CRIT "Dirty block accounting "
616 "went wrong %lld\n", 616 "went wrong %lld\n",
diff --git a/fs/fcntl.c b/fs/fcntl.c
index ac4f7db9f134..549daf8005fb 100644
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
@@ -19,6 +19,7 @@
19#include <linux/signal.h> 19#include <linux/signal.h>
20#include <linux/rcupdate.h> 20#include <linux/rcupdate.h>
21#include <linux/pid_namespace.h> 21#include <linux/pid_namespace.h>
22#include <linux/smp_lock.h>
22 23
23#include <asm/poll.h> 24#include <asm/poll.h>
24#include <asm/siginfo.h> 25#include <asm/siginfo.h>
@@ -175,6 +176,11 @@ static int setfl(int fd, struct file * filp, unsigned long arg)
175 if (error) 176 if (error)
176 return error; 177 return error;
177 178
179 /*
180 * We still need a lock here for now to keep multiple FASYNC calls
181 * from racing with each other.
182 */
183 lock_kernel();
178 if ((arg ^ filp->f_flags) & FASYNC) { 184 if ((arg ^ filp->f_flags) & FASYNC) {
179 if (filp->f_op && filp->f_op->fasync) { 185 if (filp->f_op && filp->f_op->fasync) {
180 error = filp->f_op->fasync(fd, filp, (arg & FASYNC) != 0); 186 error = filp->f_op->fasync(fd, filp, (arg & FASYNC) != 0);
@@ -185,6 +191,7 @@ static int setfl(int fd, struct file * filp, unsigned long arg)
185 191
186 filp->f_flags = (arg & SETFL_MASK) | (filp->f_flags & ~SETFL_MASK); 192 filp->f_flags = (arg & SETFL_MASK) | (filp->f_flags & ~SETFL_MASK);
187 out: 193 out:
194 unlock_kernel();
188 return error; 195 return error;
189} 196}
190 197
diff --git a/fs/inotify.c b/fs/inotify.c
index 7bbed1b89825..dae3f28f30d4 100644
--- a/fs/inotify.c
+++ b/fs/inotify.c
@@ -428,11 +428,13 @@ void inotify_unmount_inodes(struct list_head *list)
428 watches = &inode->inotify_watches; 428 watches = &inode->inotify_watches;
429 list_for_each_entry_safe(watch, next_w, watches, i_list) { 429 list_for_each_entry_safe(watch, next_w, watches, i_list) {
430 struct inotify_handle *ih= watch->ih; 430 struct inotify_handle *ih= watch->ih;
431 get_inotify_watch(watch);
431 mutex_lock(&ih->mutex); 432 mutex_lock(&ih->mutex);
432 ih->in_ops->handle_event(watch, watch->wd, IN_UNMOUNT, 0, 433 ih->in_ops->handle_event(watch, watch->wd, IN_UNMOUNT, 0,
433 NULL, NULL); 434 NULL, NULL);
434 inotify_remove_watch_locked(ih, watch); 435 inotify_remove_watch_locked(ih, watch);
435 mutex_unlock(&ih->mutex); 436 mutex_unlock(&ih->mutex);
437 put_inotify_watch(watch);
436 } 438 }
437 mutex_unlock(&inode->inotify_mutex); 439 mutex_unlock(&inode->inotify_mutex);
438 iput(inode); 440 iput(inode);
diff --git a/fs/ioctl.c b/fs/ioctl.c
index d152856c371b..43e8b2c0664b 100644
--- a/fs/ioctl.c
+++ b/fs/ioctl.c
@@ -400,11 +400,9 @@ static int ioctl_fioasync(unsigned int fd, struct file *filp,
400 400
401 /* Did FASYNC state change ? */ 401 /* Did FASYNC state change ? */
402 if ((flag ^ filp->f_flags) & FASYNC) { 402 if ((flag ^ filp->f_flags) & FASYNC) {
403 if (filp->f_op && filp->f_op->fasync) { 403 if (filp->f_op && filp->f_op->fasync)
404 lock_kernel();
405 error = filp->f_op->fasync(fd, filp, on); 404 error = filp->f_op->fasync(fd, filp, on);
406 unlock_kernel(); 405 else
407 } else
408 error = -ENOTTY; 406 error = -ENOTTY;
409 } 407 }
410 if (error) 408 if (error)
@@ -440,11 +438,17 @@ int do_vfs_ioctl(struct file *filp, unsigned int fd, unsigned int cmd,
440 break; 438 break;
441 439
442 case FIONBIO: 440 case FIONBIO:
441 /* BKL needed to avoid races tweaking f_flags */
442 lock_kernel();
443 error = ioctl_fionbio(filp, argp); 443 error = ioctl_fionbio(filp, argp);
444 unlock_kernel();
444 break; 445 break;
445 446
446 case FIOASYNC: 447 case FIOASYNC:
448 /* BKL needed to avoid races tweaking f_flags */
449 lock_kernel();
447 error = ioctl_fioasync(fd, filp, argp); 450 error = ioctl_fioasync(fd, filp, argp);
451 unlock_kernel();
448 break; 452 break;
449 453
450 case FIOQSIZE: 454 case FIOQSIZE:
diff --git a/fs/lockd/host.c b/fs/lockd/host.c
index 9fd8889097b7..70fc63a1727b 100644
--- a/fs/lockd/host.c
+++ b/fs/lockd/host.c
@@ -167,7 +167,8 @@ static struct nlm_host *nlm_lookup_host(struct nlm_lookup_host_info *ni)
167 continue; 167 continue;
168 if (host->h_server != ni->server) 168 if (host->h_server != ni->server)
169 continue; 169 continue;
170 if (!nlm_cmp_addr(nlm_srcaddr(host), ni->src_sap)) 170 if (ni->server &&
171 !nlm_cmp_addr(nlm_srcaddr(host), ni->src_sap))
171 continue; 172 continue;
172 173
173 /* Move to head of hash chain. */ 174 /* Move to head of hash chain. */
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index c631a83931ce..56b076736b56 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd/svc.c
@@ -181,6 +181,7 @@ lockd(void *vrqstp)
181 } 181 }
182 flush_signals(current); 182 flush_signals(current);
183 cancel_delayed_work_sync(&grace_period_end); 183 cancel_delayed_work_sync(&grace_period_end);
184 locks_end_grace(&lockd_manager);
184 if (nlmsvc_ops) 185 if (nlmsvc_ops)
185 nlmsvc_invalidate_all(); 186 nlmsvc_invalidate_all();
186 nlm_shutdown_hosts(); 187 nlm_shutdown_hosts();
diff --git a/fs/nfsd/nfs4recover.c b/fs/nfsd/nfs4recover.c
index bb93946ace22..b79ec930d9f1 100644
--- a/fs/nfsd/nfs4recover.c
+++ b/fs/nfsd/nfs4recover.c
@@ -225,12 +225,12 @@ nfsd4_list_rec_dir(struct dentry *dir, recdir_func *f)
225 return 0; 225 return 0;
226 226
227 nfs4_save_user(&uid, &gid); 227 nfs4_save_user(&uid, &gid);
228 INIT_LIST_HEAD(dentries);
228 229
229 filp = dentry_open(dget(dir), mntget(rec_dir.mnt), O_RDONLY); 230 filp = dentry_open(dget(dir), mntget(rec_dir.mnt), O_RDONLY);
230 status = PTR_ERR(filp); 231 status = PTR_ERR(filp);
231 if (IS_ERR(filp)) 232 if (IS_ERR(filp))
232 goto out; 233 goto out;
233 INIT_LIST_HEAD(dentries);
234 status = vfs_readdir(filp, nfsd4_build_dentrylist, &dla); 234 status = vfs_readdir(filp, nfsd4_build_dentrylist, &dla);
235 fput(filp); 235 fput(filp);
236 while (!list_empty(dentries)) { 236 while (!list_empty(dentries)) {
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index b0bebc552a11..1a052ac2bde9 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -3261,6 +3261,7 @@ nfs4_state_shutdown(void)
3261{ 3261{
3262 cancel_rearming_delayed_workqueue(laundry_wq, &laundromat_work); 3262 cancel_rearming_delayed_workqueue(laundry_wq, &laundromat_work);
3263 destroy_workqueue(laundry_wq); 3263 destroy_workqueue(laundry_wq);
3264 locks_end_grace(&nfsd4_manager);
3264 nfs4_lock_state(); 3265 nfs4_lock_state();
3265 nfs4_release_reclaim(); 3266 nfs4_release_reclaim();
3266 __nfs4_state_shutdown(); 3267 __nfs4_state_shutdown();
diff --git a/fs/proc/base.c b/fs/proc/base.c
index 486cf3fe7139..d4677603c889 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -371,7 +371,7 @@ static int lstats_show_proc(struct seq_file *m, void *v)
371 task->latency_record[i].time, 371 task->latency_record[i].time,
372 task->latency_record[i].max); 372 task->latency_record[i].max);
373 for (q = 0; q < LT_BACKTRACEDEPTH; q++) { 373 for (q = 0; q < LT_BACKTRACEDEPTH; q++) {
374 char sym[KSYM_NAME_LEN]; 374 char sym[KSYM_SYMBOL_LEN];
375 char *c; 375 char *c;
376 if (!task->latency_record[i].backtrace[q]) 376 if (!task->latency_record[i].backtrace[q])
377 break; 377 break;
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index b770c095e45c..3a8bdd7f5756 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -557,9 +557,9 @@ static u64 swap_pte_to_pagemap_entry(pte_t pte)
557 return swp_type(e) | (swp_offset(e) << MAX_SWAPFILES_SHIFT); 557 return swp_type(e) | (swp_offset(e) << MAX_SWAPFILES_SHIFT);
558} 558}
559 559
560static unsigned long pte_to_pagemap_entry(pte_t pte) 560static u64 pte_to_pagemap_entry(pte_t pte)
561{ 561{
562 unsigned long pme = 0; 562 u64 pme = 0;
563 if (is_swap_pte(pte)) 563 if (is_swap_pte(pte))
564 pme = PM_PFRAME(swap_pte_to_pagemap_entry(pte)) 564 pme = PM_PFRAME(swap_pte_to_pagemap_entry(pte))
565 | PM_PSHIFT(PAGE_SHIFT) | PM_SWAP; 565 | PM_PSHIFT(PAGE_SHIFT) | PM_SWAP;
diff --git a/fs/ubifs/commit.c b/fs/ubifs/commit.c
index 0a6aa2cc78f0..b49884c8c10e 100644
--- a/fs/ubifs/commit.c
+++ b/fs/ubifs/commit.c
@@ -234,8 +234,8 @@ int ubifs_bg_thread(void *info)
234 int err; 234 int err;
235 struct ubifs_info *c = info; 235 struct ubifs_info *c = info;
236 236
237 ubifs_msg("background thread \"%s\" started, PID %d", 237 dbg_msg("background thread \"%s\" started, PID %d",
238 c->bgt_name, current->pid); 238 c->bgt_name, current->pid);
239 set_freezable(); 239 set_freezable();
240 240
241 while (1) { 241 while (1) {
diff --git a/fs/ubifs/debug.c b/fs/ubifs/debug.c
index 7186400750e7..510ffa0bbda4 100644
--- a/fs/ubifs/debug.c
+++ b/fs/ubifs/debug.c
@@ -101,21 +101,24 @@ static void sprintf_key(const struct ubifs_info *c, const union ubifs_key *key,
101 if (c->key_fmt == UBIFS_SIMPLE_KEY_FMT) { 101 if (c->key_fmt == UBIFS_SIMPLE_KEY_FMT) {
102 switch (type) { 102 switch (type) {
103 case UBIFS_INO_KEY: 103 case UBIFS_INO_KEY:
104 sprintf(p, "(%lu, %s)", key_inum(c, key), 104 sprintf(p, "(%lu, %s)", (unsigned long)key_inum(c, key),
105 get_key_type(type)); 105 get_key_type(type));
106 break; 106 break;
107 case UBIFS_DENT_KEY: 107 case UBIFS_DENT_KEY:
108 case UBIFS_XENT_KEY: 108 case UBIFS_XENT_KEY:
109 sprintf(p, "(%lu, %s, %#08x)", key_inum(c, key), 109 sprintf(p, "(%lu, %s, %#08x)",
110 (unsigned long)key_inum(c, key),
110 get_key_type(type), key_hash(c, key)); 111 get_key_type(type), key_hash(c, key));
111 break; 112 break;
112 case UBIFS_DATA_KEY: 113 case UBIFS_DATA_KEY:
113 sprintf(p, "(%lu, %s, %u)", key_inum(c, key), 114 sprintf(p, "(%lu, %s, %u)",
115 (unsigned long)key_inum(c, key),
114 get_key_type(type), key_block(c, key)); 116 get_key_type(type), key_block(c, key));
115 break; 117 break;
116 case UBIFS_TRUN_KEY: 118 case UBIFS_TRUN_KEY:
117 sprintf(p, "(%lu, %s)", 119 sprintf(p, "(%lu, %s)",
118 key_inum(c, key), get_key_type(type)); 120 (unsigned long)key_inum(c, key),
121 get_key_type(type));
119 break; 122 break;
120 default: 123 default:
121 sprintf(p, "(bad key type: %#08x, %#08x)", 124 sprintf(p, "(bad key type: %#08x, %#08x)",
@@ -364,8 +367,8 @@ void dbg_dump_node(const struct ubifs_info *c, const void *node)
364 le32_to_cpu(mst->ihead_lnum)); 367 le32_to_cpu(mst->ihead_lnum));
365 printk(KERN_DEBUG "\tihead_offs %u\n", 368 printk(KERN_DEBUG "\tihead_offs %u\n",
366 le32_to_cpu(mst->ihead_offs)); 369 le32_to_cpu(mst->ihead_offs));
367 printk(KERN_DEBUG "\tindex_size %u\n", 370 printk(KERN_DEBUG "\tindex_size %llu\n",
368 le32_to_cpu(mst->index_size)); 371 (unsigned long long)le64_to_cpu(mst->index_size));
369 printk(KERN_DEBUG "\tlpt_lnum %u\n", 372 printk(KERN_DEBUG "\tlpt_lnum %u\n",
370 le32_to_cpu(mst->lpt_lnum)); 373 le32_to_cpu(mst->lpt_lnum));
371 printk(KERN_DEBUG "\tlpt_offs %u\n", 374 printk(KERN_DEBUG "\tlpt_offs %u\n",
@@ -1589,7 +1592,7 @@ static struct fsck_inode *add_inode(struct ubifs_info *c,
1589 1592
1590 if (inum > c->highest_inum) { 1593 if (inum > c->highest_inum) {
1591 ubifs_err("too high inode number, max. is %lu", 1594 ubifs_err("too high inode number, max. is %lu",
1592 c->highest_inum); 1595 (unsigned long)c->highest_inum);
1593 return ERR_PTR(-EINVAL); 1596 return ERR_PTR(-EINVAL);
1594 } 1597 }
1595 1598
@@ -1668,16 +1671,18 @@ static struct fsck_inode *read_add_inode(struct ubifs_info *c,
1668 ino_key_init(c, &key, inum); 1671 ino_key_init(c, &key, inum);
1669 err = ubifs_lookup_level0(c, &key, &znode, &n); 1672 err = ubifs_lookup_level0(c, &key, &znode, &n);
1670 if (!err) { 1673 if (!err) {
1671 ubifs_err("inode %lu not found in index", inum); 1674 ubifs_err("inode %lu not found in index", (unsigned long)inum);
1672 return ERR_PTR(-ENOENT); 1675 return ERR_PTR(-ENOENT);
1673 } else if (err < 0) { 1676 } else if (err < 0) {
1674 ubifs_err("error %d while looking up inode %lu", err, inum); 1677 ubifs_err("error %d while looking up inode %lu",
1678 err, (unsigned long)inum);
1675 return ERR_PTR(err); 1679 return ERR_PTR(err);
1676 } 1680 }
1677 1681
1678 zbr = &znode->zbranch[n]; 1682 zbr = &znode->zbranch[n];
1679 if (zbr->len < UBIFS_INO_NODE_SZ) { 1683 if (zbr->len < UBIFS_INO_NODE_SZ) {
1680 ubifs_err("bad node %lu node length %d", inum, zbr->len); 1684 ubifs_err("bad node %lu node length %d",
1685 (unsigned long)inum, zbr->len);
1681 return ERR_PTR(-EINVAL); 1686 return ERR_PTR(-EINVAL);
1682 } 1687 }
1683 1688
@@ -1697,7 +1702,7 @@ static struct fsck_inode *read_add_inode(struct ubifs_info *c,
1697 kfree(ino); 1702 kfree(ino);
1698 if (IS_ERR(fscki)) { 1703 if (IS_ERR(fscki)) {
1699 ubifs_err("error %ld while adding inode %lu node", 1704 ubifs_err("error %ld while adding inode %lu node",
1700 PTR_ERR(fscki), inum); 1705 PTR_ERR(fscki), (unsigned long)inum);
1701 return fscki; 1706 return fscki;
1702 } 1707 }
1703 1708
@@ -1786,7 +1791,8 @@ static int check_leaf(struct ubifs_info *c, struct ubifs_zbranch *zbr,
1786 if (IS_ERR(fscki)) { 1791 if (IS_ERR(fscki)) {
1787 err = PTR_ERR(fscki); 1792 err = PTR_ERR(fscki);
1788 ubifs_err("error %d while processing data node and " 1793 ubifs_err("error %d while processing data node and "
1789 "trying to find inode node %lu", err, inum); 1794 "trying to find inode node %lu",
1795 err, (unsigned long)inum);
1790 goto out_dump; 1796 goto out_dump;
1791 } 1797 }
1792 1798
@@ -1819,7 +1825,8 @@ static int check_leaf(struct ubifs_info *c, struct ubifs_zbranch *zbr,
1819 if (IS_ERR(fscki)) { 1825 if (IS_ERR(fscki)) {
1820 err = PTR_ERR(fscki); 1826 err = PTR_ERR(fscki);
1821 ubifs_err("error %d while processing entry node and " 1827 ubifs_err("error %d while processing entry node and "
1822 "trying to find inode node %lu", err, inum); 1828 "trying to find inode node %lu",
1829 err, (unsigned long)inum);
1823 goto out_dump; 1830 goto out_dump;
1824 } 1831 }
1825 1832
@@ -1832,7 +1839,7 @@ static int check_leaf(struct ubifs_info *c, struct ubifs_zbranch *zbr,
1832 err = PTR_ERR(fscki); 1839 err = PTR_ERR(fscki);
1833 ubifs_err("error %d while processing entry node and " 1840 ubifs_err("error %d while processing entry node and "
1834 "trying to find parent inode node %lu", 1841 "trying to find parent inode node %lu",
1835 err, inum); 1842 err, (unsigned long)inum);
1836 goto out_dump; 1843 goto out_dump;
1837 } 1844 }
1838 1845
@@ -1923,7 +1930,8 @@ static int check_inodes(struct ubifs_info *c, struct fsck_data *fsckd)
1923 fscki->references != 1) { 1930 fscki->references != 1) {
1924 ubifs_err("directory inode %lu has %d " 1931 ubifs_err("directory inode %lu has %d "
1925 "direntries which refer it, but " 1932 "direntries which refer it, but "
1926 "should be 1", fscki->inum, 1933 "should be 1",
1934 (unsigned long)fscki->inum,
1927 fscki->references); 1935 fscki->references);
1928 goto out_dump; 1936 goto out_dump;
1929 } 1937 }
@@ -1931,27 +1939,29 @@ static int check_inodes(struct ubifs_info *c, struct fsck_data *fsckd)
1931 fscki->references != 0) { 1939 fscki->references != 0) {
1932 ubifs_err("root inode %lu has non-zero (%d) " 1940 ubifs_err("root inode %lu has non-zero (%d) "
1933 "direntries which refer it", 1941 "direntries which refer it",
1934 fscki->inum, fscki->references); 1942 (unsigned long)fscki->inum,
1943 fscki->references);
1935 goto out_dump; 1944 goto out_dump;
1936 } 1945 }
1937 if (fscki->calc_sz != fscki->size) { 1946 if (fscki->calc_sz != fscki->size) {
1938 ubifs_err("directory inode %lu size is %lld, " 1947 ubifs_err("directory inode %lu size is %lld, "
1939 "but calculated size is %lld", 1948 "but calculated size is %lld",
1940 fscki->inum, fscki->size, 1949 (unsigned long)fscki->inum,
1941 fscki->calc_sz); 1950 fscki->size, fscki->calc_sz);
1942 goto out_dump; 1951 goto out_dump;
1943 } 1952 }
1944 if (fscki->calc_cnt != fscki->nlink) { 1953 if (fscki->calc_cnt != fscki->nlink) {
1945 ubifs_err("directory inode %lu nlink is %d, " 1954 ubifs_err("directory inode %lu nlink is %d, "
1946 "but calculated nlink is %d", 1955 "but calculated nlink is %d",
1947 fscki->inum, fscki->nlink, 1956 (unsigned long)fscki->inum,
1948 fscki->calc_cnt); 1957 fscki->nlink, fscki->calc_cnt);
1949 goto out_dump; 1958 goto out_dump;
1950 } 1959 }
1951 } else { 1960 } else {
1952 if (fscki->references != fscki->nlink) { 1961 if (fscki->references != fscki->nlink) {
1953 ubifs_err("inode %lu nlink is %d, but " 1962 ubifs_err("inode %lu nlink is %d, but "
1954 "calculated nlink is %d", fscki->inum, 1963 "calculated nlink is %d",
1964 (unsigned long)fscki->inum,
1955 fscki->nlink, fscki->references); 1965 fscki->nlink, fscki->references);
1956 goto out_dump; 1966 goto out_dump;
1957 } 1967 }
@@ -1959,20 +1969,21 @@ static int check_inodes(struct ubifs_info *c, struct fsck_data *fsckd)
1959 if (fscki->xattr_sz != fscki->calc_xsz) { 1969 if (fscki->xattr_sz != fscki->calc_xsz) {
1960 ubifs_err("inode %lu has xattr size %u, but " 1970 ubifs_err("inode %lu has xattr size %u, but "
1961 "calculated size is %lld", 1971 "calculated size is %lld",
1962 fscki->inum, fscki->xattr_sz, 1972 (unsigned long)fscki->inum, fscki->xattr_sz,
1963 fscki->calc_xsz); 1973 fscki->calc_xsz);
1964 goto out_dump; 1974 goto out_dump;
1965 } 1975 }
1966 if (fscki->xattr_cnt != fscki->calc_xcnt) { 1976 if (fscki->xattr_cnt != fscki->calc_xcnt) {
1967 ubifs_err("inode %lu has %u xattrs, but " 1977 ubifs_err("inode %lu has %u xattrs, but "
1968 "calculated count is %lld", fscki->inum, 1978 "calculated count is %lld",
1979 (unsigned long)fscki->inum,
1969 fscki->xattr_cnt, fscki->calc_xcnt); 1980 fscki->xattr_cnt, fscki->calc_xcnt);
1970 goto out_dump; 1981 goto out_dump;
1971 } 1982 }
1972 if (fscki->xattr_nms != fscki->calc_xnms) { 1983 if (fscki->xattr_nms != fscki->calc_xnms) {
1973 ubifs_err("inode %lu has xattr names' size %u, but " 1984 ubifs_err("inode %lu has xattr names' size %u, but "
1974 "calculated names' size is %lld", 1985 "calculated names' size is %lld",
1975 fscki->inum, fscki->xattr_nms, 1986 (unsigned long)fscki->inum, fscki->xattr_nms,
1976 fscki->calc_xnms); 1987 fscki->calc_xnms);
1977 goto out_dump; 1988 goto out_dump;
1978 } 1989 }
@@ -1985,11 +1996,12 @@ out_dump:
1985 ino_key_init(c, &key, fscki->inum); 1996 ino_key_init(c, &key, fscki->inum);
1986 err = ubifs_lookup_level0(c, &key, &znode, &n); 1997 err = ubifs_lookup_level0(c, &key, &znode, &n);
1987 if (!err) { 1998 if (!err) {
1988 ubifs_err("inode %lu not found in index", fscki->inum); 1999 ubifs_err("inode %lu not found in index",
2000 (unsigned long)fscki->inum);
1989 return -ENOENT; 2001 return -ENOENT;
1990 } else if (err < 0) { 2002 } else if (err < 0) {
1991 ubifs_err("error %d while looking up inode %lu", 2003 ubifs_err("error %d while looking up inode %lu",
1992 err, fscki->inum); 2004 err, (unsigned long)fscki->inum);
1993 return err; 2005 return err;
1994 } 2006 }
1995 2007
@@ -2007,7 +2019,7 @@ out_dump:
2007 } 2019 }
2008 2020
2009 ubifs_msg("dump of the inode %lu sitting in LEB %d:%d", 2021 ubifs_msg("dump of the inode %lu sitting in LEB %d:%d",
2010 fscki->inum, zbr->lnum, zbr->offs); 2022 (unsigned long)fscki->inum, zbr->lnum, zbr->offs);
2011 dbg_dump_node(c, ino); 2023 dbg_dump_node(c, ino);
2012 kfree(ino); 2024 kfree(ino);
2013 return -EINVAL; 2025 return -EINVAL;
diff --git a/fs/ubifs/dir.c b/fs/ubifs/dir.c
index 526c01ec8003..0422c98e1793 100644
--- a/fs/ubifs/dir.c
+++ b/fs/ubifs/dir.c
@@ -161,7 +161,7 @@ struct inode *ubifs_new_inode(struct ubifs_info *c, const struct inode *dir,
161 return ERR_PTR(-EINVAL); 161 return ERR_PTR(-EINVAL);
162 } 162 }
163 ubifs_warn("running out of inode numbers (current %lu, max %d)", 163 ubifs_warn("running out of inode numbers (current %lu, max %d)",
164 c->highest_inum, INUM_WATERMARK); 164 (unsigned long)c->highest_inum, INUM_WATERMARK);
165 } 165 }
166 166
167 inode->i_ino = ++c->highest_inum; 167 inode->i_ino = ++c->highest_inum;
@@ -428,7 +428,8 @@ static int ubifs_readdir(struct file *file, void *dirent, filldir_t filldir)
428 dbg_gen("feed '%s', ino %llu, new f_pos %#x", 428 dbg_gen("feed '%s', ino %llu, new f_pos %#x",
429 dent->name, (unsigned long long)le64_to_cpu(dent->inum), 429 dent->name, (unsigned long long)le64_to_cpu(dent->inum),
430 key_hash_flash(c, &dent->key)); 430 key_hash_flash(c, &dent->key));
431 ubifs_assert(dent->ch.sqnum > ubifs_inode(dir)->creat_sqnum); 431 ubifs_assert(le64_to_cpu(dent->ch.sqnum) >
432 ubifs_inode(dir)->creat_sqnum);
432 433
433 nm.len = le16_to_cpu(dent->nlen); 434 nm.len = le16_to_cpu(dent->nlen);
434 over = filldir(dirent, dent->name, nm.len, file->f_pos, 435 over = filldir(dirent, dent->name, nm.len, file->f_pos,
diff --git a/fs/ubifs/file.c b/fs/ubifs/file.c
index 51cf511d44d9..2624411d9758 100644
--- a/fs/ubifs/file.c
+++ b/fs/ubifs/file.c
@@ -72,7 +72,7 @@ static int read_block(struct inode *inode, void *addr, unsigned int block,
72 return err; 72 return err;
73 } 73 }
74 74
75 ubifs_assert(dn->ch.sqnum > ubifs_inode(inode)->creat_sqnum); 75 ubifs_assert(le64_to_cpu(dn->ch.sqnum) > ubifs_inode(inode)->creat_sqnum);
76 76
77 len = le32_to_cpu(dn->size); 77 len = le32_to_cpu(dn->size);
78 if (len <= 0 || len > UBIFS_BLOCK_SIZE) 78 if (len <= 0 || len > UBIFS_BLOCK_SIZE)
@@ -626,7 +626,7 @@ static int populate_page(struct ubifs_info *c, struct page *page,
626 626
627 dn = bu->buf + (bu->zbranch[nn].offs - offs); 627 dn = bu->buf + (bu->zbranch[nn].offs - offs);
628 628
629 ubifs_assert(dn->ch.sqnum > 629 ubifs_assert(le64_to_cpu(dn->ch.sqnum) >
630 ubifs_inode(inode)->creat_sqnum); 630 ubifs_inode(inode)->creat_sqnum);
631 631
632 len = le32_to_cpu(dn->size); 632 len = le32_to_cpu(dn->size);
@@ -691,32 +691,22 @@ out_err:
691/** 691/**
692 * ubifs_do_bulk_read - do bulk-read. 692 * ubifs_do_bulk_read - do bulk-read.
693 * @c: UBIFS file-system description object 693 * @c: UBIFS file-system description object
694 * @page1: first page 694 * @bu: bulk-read information
695 * @page1: first page to read
695 * 696 *
696 * This function returns %1 if the bulk-read is done, otherwise %0 is returned. 697 * This function returns %1 if the bulk-read is done, otherwise %0 is returned.
697 */ 698 */
698static int ubifs_do_bulk_read(struct ubifs_info *c, struct page *page1) 699static int ubifs_do_bulk_read(struct ubifs_info *c, struct bu_info *bu,
700 struct page *page1)
699{ 701{
700 pgoff_t offset = page1->index, end_index; 702 pgoff_t offset = page1->index, end_index;
701 struct address_space *mapping = page1->mapping; 703 struct address_space *mapping = page1->mapping;
702 struct inode *inode = mapping->host; 704 struct inode *inode = mapping->host;
703 struct ubifs_inode *ui = ubifs_inode(inode); 705 struct ubifs_inode *ui = ubifs_inode(inode);
704 struct bu_info *bu;
705 int err, page_idx, page_cnt, ret = 0, n = 0; 706 int err, page_idx, page_cnt, ret = 0, n = 0;
707 int allocate = bu->buf ? 0 : 1;
706 loff_t isize; 708 loff_t isize;
707 709
708 bu = kmalloc(sizeof(struct bu_info), GFP_NOFS);
709 if (!bu)
710 return 0;
711
712 bu->buf_len = c->bulk_read_buf_size;
713 bu->buf = kmalloc(bu->buf_len, GFP_NOFS);
714 if (!bu->buf)
715 goto out_free;
716
717 data_key_init(c, &bu->key, inode->i_ino,
718 offset << UBIFS_BLOCKS_PER_PAGE_SHIFT);
719
720 err = ubifs_tnc_get_bu_keys(c, bu); 710 err = ubifs_tnc_get_bu_keys(c, bu);
721 if (err) 711 if (err)
722 goto out_warn; 712 goto out_warn;
@@ -735,12 +725,25 @@ static int ubifs_do_bulk_read(struct ubifs_info *c, struct page *page1)
735 * together. If all the pages were like this, bulk-read would 725 * together. If all the pages were like this, bulk-read would
736 * reduce performance, so we turn it off for a while. 726 * reduce performance, so we turn it off for a while.
737 */ 727 */
738 ui->read_in_a_row = 0; 728 goto out_bu_off;
739 ui->bulk_read = 0;
740 goto out_free;
741 } 729 }
742 730
743 if (bu->cnt) { 731 if (bu->cnt) {
732 if (allocate) {
733 /*
734 * Allocate bulk-read buffer depending on how many data
735 * nodes we are going to read.
736 */
737 bu->buf_len = bu->zbranch[bu->cnt - 1].offs +
738 bu->zbranch[bu->cnt - 1].len -
739 bu->zbranch[0].offs;
740 ubifs_assert(bu->buf_len > 0);
741 ubifs_assert(bu->buf_len <= c->leb_size);
742 bu->buf = kmalloc(bu->buf_len, GFP_NOFS | __GFP_NOWARN);
743 if (!bu->buf)
744 goto out_bu_off;
745 }
746
744 err = ubifs_tnc_bulk_read(c, bu); 747 err = ubifs_tnc_bulk_read(c, bu);
745 if (err) 748 if (err)
746 goto out_warn; 749 goto out_warn;
@@ -779,13 +782,17 @@ static int ubifs_do_bulk_read(struct ubifs_info *c, struct page *page1)
779 ui->last_page_read = offset + page_idx - 1; 782 ui->last_page_read = offset + page_idx - 1;
780 783
781out_free: 784out_free:
782 kfree(bu->buf); 785 if (allocate)
783 kfree(bu); 786 kfree(bu->buf);
784 return ret; 787 return ret;
785 788
786out_warn: 789out_warn:
787 ubifs_warn("ignoring error %d and skipping bulk-read", err); 790 ubifs_warn("ignoring error %d and skipping bulk-read", err);
788 goto out_free; 791 goto out_free;
792
793out_bu_off:
794 ui->read_in_a_row = ui->bulk_read = 0;
795 goto out_free;
789} 796}
790 797
791/** 798/**
@@ -803,18 +810,20 @@ static int ubifs_bulk_read(struct page *page)
803 struct ubifs_info *c = inode->i_sb->s_fs_info; 810 struct ubifs_info *c = inode->i_sb->s_fs_info;
804 struct ubifs_inode *ui = ubifs_inode(inode); 811 struct ubifs_inode *ui = ubifs_inode(inode);
805 pgoff_t index = page->index, last_page_read = ui->last_page_read; 812 pgoff_t index = page->index, last_page_read = ui->last_page_read;
806 int ret = 0; 813 struct bu_info *bu;
814 int err = 0, allocated = 0;
807 815
808 ui->last_page_read = index; 816 ui->last_page_read = index;
809
810 if (!c->bulk_read) 817 if (!c->bulk_read)
811 return 0; 818 return 0;
819
812 /* 820 /*
813 * Bulk-read is protected by ui_mutex, but it is an optimization, so 821 * Bulk-read is protected by @ui->ui_mutex, but it is an optimization,
814 * don't bother if we cannot lock the mutex. 822 * so don't bother if we cannot lock the mutex.
815 */ 823 */
816 if (!mutex_trylock(&ui->ui_mutex)) 824 if (!mutex_trylock(&ui->ui_mutex))
817 return 0; 825 return 0;
826
818 if (index != last_page_read + 1) { 827 if (index != last_page_read + 1) {
819 /* Turn off bulk-read if we stop reading sequentially */ 828 /* Turn off bulk-read if we stop reading sequentially */
820 ui->read_in_a_row = 1; 829 ui->read_in_a_row = 1;
@@ -822,6 +831,7 @@ static int ubifs_bulk_read(struct page *page)
822 ui->bulk_read = 0; 831 ui->bulk_read = 0;
823 goto out_unlock; 832 goto out_unlock;
824 } 833 }
834
825 if (!ui->bulk_read) { 835 if (!ui->bulk_read) {
826 ui->read_in_a_row += 1; 836 ui->read_in_a_row += 1;
827 if (ui->read_in_a_row < 3) 837 if (ui->read_in_a_row < 3)
@@ -829,10 +839,35 @@ static int ubifs_bulk_read(struct page *page)
829 /* Three reads in a row, so switch on bulk-read */ 839 /* Three reads in a row, so switch on bulk-read */
830 ui->bulk_read = 1; 840 ui->bulk_read = 1;
831 } 841 }
832 ret = ubifs_do_bulk_read(c, page); 842
843 /*
844 * If possible, try to use pre-allocated bulk-read information, which
845 * is protected by @c->bu_mutex.
846 */
847 if (mutex_trylock(&c->bu_mutex))
848 bu = &c->bu;
849 else {
850 bu = kmalloc(sizeof(struct bu_info), GFP_NOFS | __GFP_NOWARN);
851 if (!bu)
852 goto out_unlock;
853
854 bu->buf = NULL;
855 allocated = 1;
856 }
857
858 bu->buf_len = c->max_bu_buf_len;
859 data_key_init(c, &bu->key, inode->i_ino,
860 page->index << UBIFS_BLOCKS_PER_PAGE_SHIFT);
861 err = ubifs_do_bulk_read(c, bu, page);
862
863 if (!allocated)
864 mutex_unlock(&c->bu_mutex);
865 else
866 kfree(bu);
867
833out_unlock: 868out_unlock:
834 mutex_unlock(&ui->ui_mutex); 869 mutex_unlock(&ui->ui_mutex);
835 return ret; 870 return err;
836} 871}
837 872
838static int ubifs_readpage(struct file *file, struct page *page) 873static int ubifs_readpage(struct file *file, struct page *page)
diff --git a/fs/ubifs/journal.c b/fs/ubifs/journal.c
index 22993f867d19..f91b745908ea 100644
--- a/fs/ubifs/journal.c
+++ b/fs/ubifs/journal.c
@@ -690,8 +690,9 @@ int ubifs_jnl_write_data(struct ubifs_info *c, const struct inode *inode,
690 int dlen = UBIFS_DATA_NODE_SZ + UBIFS_BLOCK_SIZE * WORST_COMPR_FACTOR; 690 int dlen = UBIFS_DATA_NODE_SZ + UBIFS_BLOCK_SIZE * WORST_COMPR_FACTOR;
691 struct ubifs_inode *ui = ubifs_inode(inode); 691 struct ubifs_inode *ui = ubifs_inode(inode);
692 692
693 dbg_jnl("ino %lu, blk %u, len %d, key %s", key_inum(c, key), 693 dbg_jnl("ino %lu, blk %u, len %d, key %s",
694 key_block(c, key), len, DBGKEY(key)); 694 (unsigned long)key_inum(c, key), key_block(c, key), len,
695 DBGKEY(key));
695 ubifs_assert(len <= UBIFS_BLOCK_SIZE); 696 ubifs_assert(len <= UBIFS_BLOCK_SIZE);
696 697
697 data = kmalloc(dlen, GFP_NOFS); 698 data = kmalloc(dlen, GFP_NOFS);
@@ -1128,7 +1129,8 @@ int ubifs_jnl_truncate(struct ubifs_info *c, const struct inode *inode,
1128 ino_t inum = inode->i_ino; 1129 ino_t inum = inode->i_ino;
1129 unsigned int blk; 1130 unsigned int blk;
1130 1131
1131 dbg_jnl("ino %lu, size %lld -> %lld", inum, old_size, new_size); 1132 dbg_jnl("ino %lu, size %lld -> %lld",
1133 (unsigned long)inum, old_size, new_size);
1132 ubifs_assert(!ui->data_len); 1134 ubifs_assert(!ui->data_len);
1133 ubifs_assert(S_ISREG(inode->i_mode)); 1135 ubifs_assert(S_ISREG(inode->i_mode));
1134 ubifs_assert(mutex_is_locked(&ui->ui_mutex)); 1136 ubifs_assert(mutex_is_locked(&ui->ui_mutex));
diff --git a/fs/ubifs/key.h b/fs/ubifs/key.h
index 9ee65086f627..3f1f16bc25c9 100644
--- a/fs/ubifs/key.h
+++ b/fs/ubifs/key.h
@@ -345,7 +345,7 @@ static inline int key_type_flash(const struct ubifs_info *c, const void *k)
345{ 345{
346 const union ubifs_key *key = k; 346 const union ubifs_key *key = k;
347 347
348 return le32_to_cpu(key->u32[1]) >> UBIFS_S_KEY_BLOCK_BITS; 348 return le32_to_cpu(key->j32[1]) >> UBIFS_S_KEY_BLOCK_BITS;
349} 349}
350 350
351/** 351/**
@@ -416,7 +416,7 @@ static inline unsigned int key_block_flash(const struct ubifs_info *c,
416{ 416{
417 const union ubifs_key *key = k; 417 const union ubifs_key *key = k;
418 418
419 return le32_to_cpu(key->u32[1]) & UBIFS_S_KEY_BLOCK_MASK; 419 return le32_to_cpu(key->j32[1]) & UBIFS_S_KEY_BLOCK_MASK;
420} 420}
421 421
422/** 422/**
diff --git a/fs/ubifs/lpt_commit.c b/fs/ubifs/lpt_commit.c
index eed5a0025d63..a41434b42785 100644
--- a/fs/ubifs/lpt_commit.c
+++ b/fs/ubifs/lpt_commit.c
@@ -571,8 +571,6 @@ static struct ubifs_pnode *next_pnode(struct ubifs_info *c,
571 /* We assume here that LEB zero is never an LPT LEB */ 571 /* We assume here that LEB zero is never an LPT LEB */
572 if (nnode->nbranch[iip].lnum) 572 if (nnode->nbranch[iip].lnum)
573 return ubifs_get_pnode(c, nnode, iip); 573 return ubifs_get_pnode(c, nnode, iip);
574 else
575 return NULL;
576 } 574 }
577 575
578 /* Go up while can't go right */ 576 /* Go up while can't go right */
diff --git a/fs/ubifs/orphan.c b/fs/ubifs/orphan.c
index 02d3462f4d3e..9bd5a43d4526 100644
--- a/fs/ubifs/orphan.c
+++ b/fs/ubifs/orphan.c
@@ -105,7 +105,7 @@ int ubifs_add_orphan(struct ubifs_info *c, ino_t inum)
105 list_add_tail(&orphan->list, &c->orph_list); 105 list_add_tail(&orphan->list, &c->orph_list);
106 list_add_tail(&orphan->new_list, &c->orph_new); 106 list_add_tail(&orphan->new_list, &c->orph_new);
107 spin_unlock(&c->orphan_lock); 107 spin_unlock(&c->orphan_lock);
108 dbg_gen("ino %lu", inum); 108 dbg_gen("ino %lu", (unsigned long)inum);
109 return 0; 109 return 0;
110} 110}
111 111
@@ -132,14 +132,16 @@ void ubifs_delete_orphan(struct ubifs_info *c, ino_t inum)
132 else { 132 else {
133 if (o->dnext) { 133 if (o->dnext) {
134 spin_unlock(&c->orphan_lock); 134 spin_unlock(&c->orphan_lock);
135 dbg_gen("deleted twice ino %lu", inum); 135 dbg_gen("deleted twice ino %lu",
136 (unsigned long)inum);
136 return; 137 return;
137 } 138 }
138 if (o->cnext) { 139 if (o->cnext) {
139 o->dnext = c->orph_dnext; 140 o->dnext = c->orph_dnext;
140 c->orph_dnext = o; 141 c->orph_dnext = o;
141 spin_unlock(&c->orphan_lock); 142 spin_unlock(&c->orphan_lock);
142 dbg_gen("delete later ino %lu", inum); 143 dbg_gen("delete later ino %lu",
144 (unsigned long)inum);
143 return; 145 return;
144 } 146 }
145 rb_erase(p, &c->orph_tree); 147 rb_erase(p, &c->orph_tree);
@@ -151,12 +153,12 @@ void ubifs_delete_orphan(struct ubifs_info *c, ino_t inum)
151 } 153 }
152 spin_unlock(&c->orphan_lock); 154 spin_unlock(&c->orphan_lock);
153 kfree(o); 155 kfree(o);
154 dbg_gen("inum %lu", inum); 156 dbg_gen("inum %lu", (unsigned long)inum);
155 return; 157 return;
156 } 158 }
157 } 159 }
158 spin_unlock(&c->orphan_lock); 160 spin_unlock(&c->orphan_lock);
159 dbg_err("missing orphan ino %lu", inum); 161 dbg_err("missing orphan ino %lu", (unsigned long)inum);
160 dbg_dump_stack(); 162 dbg_dump_stack();
161} 163}
162 164
@@ -448,7 +450,7 @@ static void erase_deleted(struct ubifs_info *c)
448 rb_erase(&orphan->rb, &c->orph_tree); 450 rb_erase(&orphan->rb, &c->orph_tree);
449 list_del(&orphan->list); 451 list_del(&orphan->list);
450 c->tot_orphans -= 1; 452 c->tot_orphans -= 1;
451 dbg_gen("deleting orphan ino %lu", orphan->inum); 453 dbg_gen("deleting orphan ino %lu", (unsigned long)orphan->inum);
452 kfree(orphan); 454 kfree(orphan);
453 } 455 }
454 c->orph_dnext = NULL; 456 c->orph_dnext = NULL;
@@ -536,8 +538,8 @@ static int insert_dead_orphan(struct ubifs_info *c, ino_t inum)
536 list_add_tail(&orphan->list, &c->orph_list); 538 list_add_tail(&orphan->list, &c->orph_list);
537 orphan->dnext = c->orph_dnext; 539 orphan->dnext = c->orph_dnext;
538 c->orph_dnext = orphan; 540 c->orph_dnext = orphan;
539 dbg_mnt("ino %lu, new %d, tot %d", 541 dbg_mnt("ino %lu, new %d, tot %d", (unsigned long)inum,
540 inum, c->new_orphans, c->tot_orphans); 542 c->new_orphans, c->tot_orphans);
541 return 0; 543 return 0;
542} 544}
543 545
@@ -609,7 +611,8 @@ static int do_kill_orphans(struct ubifs_info *c, struct ubifs_scan_leb *sleb,
609 n = (le32_to_cpu(orph->ch.len) - UBIFS_ORPH_NODE_SZ) >> 3; 611 n = (le32_to_cpu(orph->ch.len) - UBIFS_ORPH_NODE_SZ) >> 3;
610 for (i = 0; i < n; i++) { 612 for (i = 0; i < n; i++) {
611 inum = le64_to_cpu(orph->inos[i]); 613 inum = le64_to_cpu(orph->inos[i]);
612 dbg_rcvry("deleting orphaned inode %lu", inum); 614 dbg_rcvry("deleting orphaned inode %lu",
615 (unsigned long)inum);
613 err = ubifs_tnc_remove_ino(c, inum); 616 err = ubifs_tnc_remove_ino(c, inum);
614 if (err) 617 if (err)
615 return err; 618 return err;
@@ -840,8 +843,8 @@ static int dbg_orphan_check(struct ubifs_info *c, struct ubifs_zbranch *zbr,
840 if (inum != ci->last_ino) { 843 if (inum != ci->last_ino) {
841 /* Lowest node type is the inode node, so it comes first */ 844 /* Lowest node type is the inode node, so it comes first */
842 if (key_type(c, &zbr->key) != UBIFS_INO_KEY) 845 if (key_type(c, &zbr->key) != UBIFS_INO_KEY)
843 ubifs_err("found orphan node ino %lu, type %d", inum, 846 ubifs_err("found orphan node ino %lu, type %d",
844 key_type(c, &zbr->key)); 847 (unsigned long)inum, key_type(c, &zbr->key));
845 ci->last_ino = inum; 848 ci->last_ino = inum;
846 ci->tot_inos += 1; 849 ci->tot_inos += 1;
847 err = ubifs_tnc_read_node(c, zbr, ci->node); 850 err = ubifs_tnc_read_node(c, zbr, ci->node);
@@ -853,7 +856,8 @@ static int dbg_orphan_check(struct ubifs_info *c, struct ubifs_zbranch *zbr,
853 /* Must be recorded as an orphan */ 856 /* Must be recorded as an orphan */
854 if (!dbg_find_check_orphan(&ci->root, inum) && 857 if (!dbg_find_check_orphan(&ci->root, inum) &&
855 !dbg_find_orphan(c, inum)) { 858 !dbg_find_orphan(c, inum)) {
856 ubifs_err("missing orphan, ino %lu", inum); 859 ubifs_err("missing orphan, ino %lu",
860 (unsigned long)inum);
857 ci->missing += 1; 861 ci->missing += 1;
858 } 862 }
859 } 863 }
diff --git a/fs/ubifs/recovery.c b/fs/ubifs/recovery.c
index 77d26c141cf6..90acac603e63 100644
--- a/fs/ubifs/recovery.c
+++ b/fs/ubifs/recovery.c
@@ -168,12 +168,12 @@ static int write_rcvrd_mst_node(struct ubifs_info *c,
168 struct ubifs_mst_node *mst) 168 struct ubifs_mst_node *mst)
169{ 169{
170 int err = 0, lnum = UBIFS_MST_LNUM, sz = c->mst_node_alsz; 170 int err = 0, lnum = UBIFS_MST_LNUM, sz = c->mst_node_alsz;
171 uint32_t save_flags; 171 __le32 save_flags;
172 172
173 dbg_rcvry("recovery"); 173 dbg_rcvry("recovery");
174 174
175 save_flags = mst->flags; 175 save_flags = mst->flags;
176 mst->flags = cpu_to_le32(le32_to_cpu(mst->flags) | UBIFS_MST_RCVRY); 176 mst->flags |= cpu_to_le32(UBIFS_MST_RCVRY);
177 177
178 ubifs_prepare_node(c, mst, UBIFS_MST_NODE_SZ, 1); 178 ubifs_prepare_node(c, mst, UBIFS_MST_NODE_SZ, 1);
179 err = ubi_leb_change(c->ubi, lnum, mst, sz, UBI_SHORTTERM); 179 err = ubi_leb_change(c->ubi, lnum, mst, sz, UBI_SHORTTERM);
@@ -1435,13 +1435,13 @@ static int fix_size_in_place(struct ubifs_info *c, struct size_entry *e)
1435 err = ubi_leb_change(c->ubi, lnum, c->sbuf, len, UBI_UNKNOWN); 1435 err = ubi_leb_change(c->ubi, lnum, c->sbuf, len, UBI_UNKNOWN);
1436 if (err) 1436 if (err)
1437 goto out; 1437 goto out;
1438 dbg_rcvry("inode %lu at %d:%d size %lld -> %lld ", e->inum, lnum, offs, 1438 dbg_rcvry("inode %lu at %d:%d size %lld -> %lld ",
1439 i_size, e->d_size); 1439 (unsigned long)e->inum, lnum, offs, i_size, e->d_size);
1440 return 0; 1440 return 0;
1441 1441
1442out: 1442out:
1443 ubifs_warn("inode %lu failed to fix size %lld -> %lld error %d", 1443 ubifs_warn("inode %lu failed to fix size %lld -> %lld error %d",
1444 e->inum, e->i_size, e->d_size, err); 1444 (unsigned long)e->inum, e->i_size, e->d_size, err);
1445 return err; 1445 return err;
1446} 1446}
1447 1447
@@ -1472,7 +1472,8 @@ int ubifs_recover_size(struct ubifs_info *c)
1472 return err; 1472 return err;
1473 if (err == -ENOENT) { 1473 if (err == -ENOENT) {
1474 /* Remove data nodes that have no inode */ 1474 /* Remove data nodes that have no inode */
1475 dbg_rcvry("removing ino %lu", e->inum); 1475 dbg_rcvry("removing ino %lu",
1476 (unsigned long)e->inum);
1476 err = ubifs_tnc_remove_ino(c, e->inum); 1477 err = ubifs_tnc_remove_ino(c, e->inum);
1477 if (err) 1478 if (err)
1478 return err; 1479 return err;
@@ -1493,8 +1494,8 @@ int ubifs_recover_size(struct ubifs_info *c)
1493 return PTR_ERR(inode); 1494 return PTR_ERR(inode);
1494 if (inode->i_size < e->d_size) { 1495 if (inode->i_size < e->d_size) {
1495 dbg_rcvry("ino %lu size %lld -> %lld", 1496 dbg_rcvry("ino %lu size %lld -> %lld",
1496 e->inum, e->d_size, 1497 (unsigned long)e->inum,
1497 inode->i_size); 1498 e->d_size, inode->i_size);
1498 inode->i_size = e->d_size; 1499 inode->i_size = e->d_size;
1499 ubifs_inode(inode)->ui_size = e->d_size; 1500 ubifs_inode(inode)->ui_size = e->d_size;
1500 e->inode = inode; 1501 e->inode = inode;
diff --git a/fs/ubifs/replay.c b/fs/ubifs/replay.c
index 7399692af859..21f7d047c306 100644
--- a/fs/ubifs/replay.c
+++ b/fs/ubifs/replay.c
@@ -1065,7 +1065,7 @@ int ubifs_replay_journal(struct ubifs_info *c)
1065 ubifs_assert(c->bud_bytes <= c->max_bud_bytes || c->need_recovery); 1065 ubifs_assert(c->bud_bytes <= c->max_bud_bytes || c->need_recovery);
1066 dbg_mnt("finished, log head LEB %d:%d, max_sqnum %llu, " 1066 dbg_mnt("finished, log head LEB %d:%d, max_sqnum %llu, "
1067 "highest_inum %lu", c->lhead_lnum, c->lhead_offs, c->max_sqnum, 1067 "highest_inum %lu", c->lhead_lnum, c->lhead_offs, c->max_sqnum,
1068 c->highest_inum); 1068 (unsigned long)c->highest_inum);
1069out: 1069out:
1070 destroy_replay_tree(c); 1070 destroy_replay_tree(c);
1071 destroy_bud_list(c); 1071 destroy_bud_list(c);
diff --git a/fs/ubifs/sb.c b/fs/ubifs/sb.c
index 2bf753b38889..0f392351dc5a 100644
--- a/fs/ubifs/sb.c
+++ b/fs/ubifs/sb.c
@@ -81,6 +81,7 @@ static int create_default_filesystem(struct ubifs_info *c)
81 int lpt_lebs, lpt_first, orph_lebs, big_lpt, ino_waste, sup_flags = 0; 81 int lpt_lebs, lpt_first, orph_lebs, big_lpt, ino_waste, sup_flags = 0;
82 int min_leb_cnt = UBIFS_MIN_LEB_CNT; 82 int min_leb_cnt = UBIFS_MIN_LEB_CNT;
83 uint64_t tmp64, main_bytes; 83 uint64_t tmp64, main_bytes;
84 __le64 tmp_le64;
84 85
85 /* Some functions called from here depend on the @c->key_len filed */ 86 /* Some functions called from here depend on the @c->key_len filed */
86 c->key_len = UBIFS_SK_LEN; 87 c->key_len = UBIFS_SK_LEN;
@@ -295,10 +296,10 @@ static int create_default_filesystem(struct ubifs_info *c)
295 ino->ch.node_type = UBIFS_INO_NODE; 296 ino->ch.node_type = UBIFS_INO_NODE;
296 ino->creat_sqnum = cpu_to_le64(++c->max_sqnum); 297 ino->creat_sqnum = cpu_to_le64(++c->max_sqnum);
297 ino->nlink = cpu_to_le32(2); 298 ino->nlink = cpu_to_le32(2);
298 tmp = cpu_to_le64(CURRENT_TIME_SEC.tv_sec); 299 tmp_le64 = cpu_to_le64(CURRENT_TIME_SEC.tv_sec);
299 ino->atime_sec = tmp; 300 ino->atime_sec = tmp_le64;
300 ino->ctime_sec = tmp; 301 ino->ctime_sec = tmp_le64;
301 ino->mtime_sec = tmp; 302 ino->mtime_sec = tmp_le64;
302 ino->atime_nsec = 0; 303 ino->atime_nsec = 0;
303 ino->ctime_nsec = 0; 304 ino->ctime_nsec = 0;
304 ino->mtime_nsec = 0; 305 ino->mtime_nsec = 0;
diff --git a/fs/ubifs/super.c b/fs/ubifs/super.c
index 8780efbf40ac..d80b2aef42b6 100644
--- a/fs/ubifs/super.c
+++ b/fs/ubifs/super.c
@@ -36,6 +36,12 @@
36#include <linux/mount.h> 36#include <linux/mount.h>
37#include "ubifs.h" 37#include "ubifs.h"
38 38
39/*
40 * Maximum amount of memory we may 'kmalloc()' without worrying that we are
41 * allocating too much.
42 */
43#define UBIFS_KMALLOC_OK (128*1024)
44
39/* Slab cache for UBIFS inodes */ 45/* Slab cache for UBIFS inodes */
40struct kmem_cache *ubifs_inode_slab; 46struct kmem_cache *ubifs_inode_slab;
41 47
@@ -561,18 +567,11 @@ static int init_constants_early(struct ubifs_info *c)
561 * calculations when reporting free space. 567 * calculations when reporting free space.
562 */ 568 */
563 c->leb_overhead = c->leb_size % UBIFS_MAX_DATA_NODE_SZ; 569 c->leb_overhead = c->leb_size % UBIFS_MAX_DATA_NODE_SZ;
564 /* Buffer size for bulk-reads */
565 c->bulk_read_buf_size = UBIFS_MAX_BULK_READ * UBIFS_MAX_DATA_NODE_SZ;
566 if (c->bulk_read_buf_size > c->leb_size)
567 c->bulk_read_buf_size = c->leb_size;
568 if (c->bulk_read_buf_size > 128 * 1024) {
569 /* Check if we can kmalloc more than 128KiB */
570 void *try = kmalloc(c->bulk_read_buf_size, GFP_KERNEL);
571 570
572 kfree(try); 571 /* Buffer size for bulk-reads */
573 if (!try) 572 c->max_bu_buf_len = UBIFS_MAX_BULK_READ * UBIFS_MAX_DATA_NODE_SZ;
574 c->bulk_read_buf_size = 128 * 1024; 573 if (c->max_bu_buf_len > c->leb_size)
575 } 574 c->max_bu_buf_len = c->leb_size;
576 return 0; 575 return 0;
577} 576}
578 577
@@ -992,6 +991,34 @@ static void destroy_journal(struct ubifs_info *c)
992} 991}
993 992
994/** 993/**
994 * bu_init - initialize bulk-read information.
995 * @c: UBIFS file-system description object
996 */
997static void bu_init(struct ubifs_info *c)
998{
999 ubifs_assert(c->bulk_read == 1);
1000
1001 if (c->bu.buf)
1002 return; /* Already initialized */
1003
1004again:
1005 c->bu.buf = kmalloc(c->max_bu_buf_len, GFP_KERNEL | __GFP_NOWARN);
1006 if (!c->bu.buf) {
1007 if (c->max_bu_buf_len > UBIFS_KMALLOC_OK) {
1008 c->max_bu_buf_len = UBIFS_KMALLOC_OK;
1009 goto again;
1010 }
1011
1012 /* Just disable bulk-read */
1013 ubifs_warn("Cannot allocate %d bytes of memory for bulk-read, "
1014 "disabling it", c->max_bu_buf_len);
1015 c->mount_opts.bulk_read = 1;
1016 c->bulk_read = 0;
1017 return;
1018 }
1019}
1020
1021/**
995 * mount_ubifs - mount UBIFS file-system. 1022 * mount_ubifs - mount UBIFS file-system.
996 * @c: UBIFS file-system description object 1023 * @c: UBIFS file-system description object
997 * 1024 *
@@ -1059,6 +1086,13 @@ static int mount_ubifs(struct ubifs_info *c)
1059 goto out_free; 1086 goto out_free;
1060 } 1087 }
1061 1088
1089 if (c->bulk_read == 1)
1090 bu_init(c);
1091
1092 /*
1093 * We have to check all CRCs, even for data nodes, when we mount the FS
1094 * (specifically, when we are replaying).
1095 */
1062 c->always_chk_crc = 1; 1096 c->always_chk_crc = 1;
1063 1097
1064 err = ubifs_read_superblock(c); 1098 err = ubifs_read_superblock(c);
@@ -1289,6 +1323,7 @@ out_cbuf:
1289out_dereg: 1323out_dereg:
1290 dbg_failure_mode_deregistration(c); 1324 dbg_failure_mode_deregistration(c);
1291out_free: 1325out_free:
1326 kfree(c->bu.buf);
1292 vfree(c->ileb_buf); 1327 vfree(c->ileb_buf);
1293 vfree(c->sbuf); 1328 vfree(c->sbuf);
1294 kfree(c->bottom_up_buf); 1329 kfree(c->bottom_up_buf);
@@ -1325,10 +1360,11 @@ static void ubifs_umount(struct ubifs_info *c)
1325 kfree(c->cbuf); 1360 kfree(c->cbuf);
1326 kfree(c->rcvrd_mst_node); 1361 kfree(c->rcvrd_mst_node);
1327 kfree(c->mst_node); 1362 kfree(c->mst_node);
1363 kfree(c->bu.buf);
1364 vfree(c->ileb_buf);
1328 vfree(c->sbuf); 1365 vfree(c->sbuf);
1329 kfree(c->bottom_up_buf); 1366 kfree(c->bottom_up_buf);
1330 UBIFS_DBG(vfree(c->dbg_buf)); 1367 UBIFS_DBG(vfree(c->dbg_buf));
1331 vfree(c->ileb_buf);
1332 dbg_failure_mode_deregistration(c); 1368 dbg_failure_mode_deregistration(c);
1333} 1369}
1334 1370
@@ -1626,6 +1662,7 @@ static int ubifs_remount_fs(struct super_block *sb, int *flags, char *data)
1626 ubifs_err("invalid or unknown remount parameter"); 1662 ubifs_err("invalid or unknown remount parameter");
1627 return err; 1663 return err;
1628 } 1664 }
1665
1629 if ((sb->s_flags & MS_RDONLY) && !(*flags & MS_RDONLY)) { 1666 if ((sb->s_flags & MS_RDONLY) && !(*flags & MS_RDONLY)) {
1630 err = ubifs_remount_rw(c); 1667 err = ubifs_remount_rw(c);
1631 if (err) 1668 if (err)
@@ -1633,6 +1670,14 @@ static int ubifs_remount_fs(struct super_block *sb, int *flags, char *data)
1633 } else if (!(sb->s_flags & MS_RDONLY) && (*flags & MS_RDONLY)) 1670 } else if (!(sb->s_flags & MS_RDONLY) && (*flags & MS_RDONLY))
1634 ubifs_remount_ro(c); 1671 ubifs_remount_ro(c);
1635 1672
1673 if (c->bulk_read == 1)
1674 bu_init(c);
1675 else {
1676 dbg_gen("disable bulk-read");
1677 kfree(c->bu.buf);
1678 c->bu.buf = NULL;
1679 }
1680
1636 return 0; 1681 return 0;
1637} 1682}
1638 1683
@@ -1723,6 +1768,7 @@ static int ubifs_fill_super(struct super_block *sb, void *data, int silent)
1723 mutex_init(&c->log_mutex); 1768 mutex_init(&c->log_mutex);
1724 mutex_init(&c->mst_mutex); 1769 mutex_init(&c->mst_mutex);
1725 mutex_init(&c->umount_mutex); 1770 mutex_init(&c->umount_mutex);
1771 mutex_init(&c->bu_mutex);
1726 init_waitqueue_head(&c->cmt_wq); 1772 init_waitqueue_head(&c->cmt_wq);
1727 c->buds = RB_ROOT; 1773 c->buds = RB_ROOT;
1728 c->old_idx = RB_ROOT; 1774 c->old_idx = RB_ROOT;
diff --git a/fs/ubifs/tnc.c b/fs/ubifs/tnc.c
index d27fd918b9c9..6eef5344a145 100644
--- a/fs/ubifs/tnc.c
+++ b/fs/ubifs/tnc.c
@@ -1501,7 +1501,12 @@ out:
1501 * @bu: bulk-read parameters and results 1501 * @bu: bulk-read parameters and results
1502 * 1502 *
1503 * Lookup consecutive data node keys for the same inode that reside 1503 * Lookup consecutive data node keys for the same inode that reside
1504 * consecutively in the same LEB. 1504 * consecutively in the same LEB. This function returns zero in case of success
1505 * and a negative error code in case of failure.
1506 *
1507 * Note, if the bulk-read buffer length (@bu->buf_len) is known, this function
1508 * makes sure bulk-read nodes fit the buffer. Otherwise, this function prepares
1509 * maxumum possible amount of nodes for bulk-read.
1505 */ 1510 */
1506int ubifs_tnc_get_bu_keys(struct ubifs_info *c, struct bu_info *bu) 1511int ubifs_tnc_get_bu_keys(struct ubifs_info *c, struct bu_info *bu)
1507{ 1512{
@@ -2677,7 +2682,7 @@ int ubifs_tnc_remove_ino(struct ubifs_info *c, ino_t inum)
2677 struct ubifs_dent_node *xent, *pxent = NULL; 2682 struct ubifs_dent_node *xent, *pxent = NULL;
2678 struct qstr nm = { .name = NULL }; 2683 struct qstr nm = { .name = NULL };
2679 2684
2680 dbg_tnc("ino %lu", inum); 2685 dbg_tnc("ino %lu", (unsigned long)inum);
2681 2686
2682 /* 2687 /*
2683 * Walk all extended attribute entries and remove them together with 2688 * Walk all extended attribute entries and remove them together with
@@ -2697,7 +2702,8 @@ int ubifs_tnc_remove_ino(struct ubifs_info *c, ino_t inum)
2697 } 2702 }
2698 2703
2699 xattr_inum = le64_to_cpu(xent->inum); 2704 xattr_inum = le64_to_cpu(xent->inum);
2700 dbg_tnc("xent '%s', ino %lu", xent->name, xattr_inum); 2705 dbg_tnc("xent '%s', ino %lu", xent->name,
2706 (unsigned long)xattr_inum);
2701 2707
2702 nm.name = xent->name; 2708 nm.name = xent->name;
2703 nm.len = le16_to_cpu(xent->nlen); 2709 nm.len = le16_to_cpu(xent->nlen);
diff --git a/fs/ubifs/ubifs.h b/fs/ubifs/ubifs.h
index a7bd32fa15b9..46b172560a06 100644
--- a/fs/ubifs/ubifs.h
+++ b/fs/ubifs/ubifs.h
@@ -753,7 +753,7 @@ struct ubifs_znode {
753}; 753};
754 754
755/** 755/**
756 * struct bu_info - bulk-read information 756 * struct bu_info - bulk-read information.
757 * @key: first data node key 757 * @key: first data node key
758 * @zbranch: zbranches of data nodes to bulk read 758 * @zbranch: zbranches of data nodes to bulk read
759 * @buf: buffer to read into 759 * @buf: buffer to read into
@@ -969,7 +969,10 @@ struct ubifs_mount_opts {
969 * @mst_node: master node 969 * @mst_node: master node
970 * @mst_offs: offset of valid master node 970 * @mst_offs: offset of valid master node
971 * @mst_mutex: protects the master node area, @mst_node, and @mst_offs 971 * @mst_mutex: protects the master node area, @mst_node, and @mst_offs
972 * @bulk_read_buf_size: buffer size for bulk-reads 972 *
973 * @max_bu_buf_len: maximum bulk-read buffer length
974 * @bu_mutex: protects the pre-allocated bulk-read buffer and @c->bu
975 * @bu: pre-allocated bulk-read information
973 * 976 *
974 * @log_lebs: number of logical eraseblocks in the log 977 * @log_lebs: number of logical eraseblocks in the log
975 * @log_bytes: log size in bytes 978 * @log_bytes: log size in bytes
@@ -1217,7 +1220,10 @@ struct ubifs_info {
1217 struct ubifs_mst_node *mst_node; 1220 struct ubifs_mst_node *mst_node;
1218 int mst_offs; 1221 int mst_offs;
1219 struct mutex mst_mutex; 1222 struct mutex mst_mutex;
1220 int bulk_read_buf_size; 1223
1224 int max_bu_buf_len;
1225 struct mutex bu_mutex;
1226 struct bu_info bu;
1221 1227
1222 int log_lebs; 1228 int log_lebs;
1223 long long log_bytes; 1229 long long log_bytes;
diff --git a/fs/xfs/xfs_rename.c b/fs/xfs/xfs_rename.c
index d700dacdb10e..c903130be7fd 100644
--- a/fs/xfs/xfs_rename.c
+++ b/fs/xfs/xfs_rename.c
@@ -212,7 +212,7 @@ xfs_rename(
212 if (unlikely((target_dp->i_d.di_flags & XFS_DIFLAG_PROJINHERIT) && 212 if (unlikely((target_dp->i_d.di_flags & XFS_DIFLAG_PROJINHERIT) &&
213 (target_dp->i_d.di_projid != src_ip->i_d.di_projid))) { 213 (target_dp->i_d.di_projid != src_ip->i_d.di_projid))) {
214 error = XFS_ERROR(EXDEV); 214 error = XFS_ERROR(EXDEV);
215 xfs_rename_unlock4(inodes, XFS_ILOCK_SHARED); 215 xfs_rename_unlock4(inodes, XFS_ILOCK_EXCL);
216 xfs_trans_cancel(tp, cancel_flags); 216 xfs_trans_cancel(tp, cancel_flags);
217 goto std_return; 217 goto std_return;
218 } 218 }
diff --git a/include/asm-generic/atomic.h b/include/asm-generic/atomic.h
index 4ec0a296bdec..7abdaa91ccd3 100644
--- a/include/asm-generic/atomic.h
+++ b/include/asm-generic/atomic.h
@@ -251,7 +251,7 @@ static inline long atomic_long_add_unless(atomic_long_t *l, long a, long u)
251#define atomic_long_cmpxchg(l, old, new) \ 251#define atomic_long_cmpxchg(l, old, new) \
252 (atomic_cmpxchg((atomic_t *)(l), (old), (new))) 252 (atomic_cmpxchg((atomic_t *)(l), (old), (new)))
253#define atomic_long_xchg(v, new) \ 253#define atomic_long_xchg(v, new) \
254 (atomic_xchg((atomic_t *)(l), (new))) 254 (atomic_xchg((atomic_t *)(v), (new)))
255 255
256#endif /* BITS_PER_LONG == 64 */ 256#endif /* BITS_PER_LONG == 64 */
257 257
diff --git a/include/asm-generic/audit_write.h b/include/asm-generic/audit_write.h
index f10d367fb2a5..c5f1c2c920e2 100644
--- a/include/asm-generic/audit_write.h
+++ b/include/asm-generic/audit_write.h
@@ -1,6 +1,8 @@
1#include <asm-generic/audit_dir_write.h> 1#include <asm-generic/audit_dir_write.h>
2__NR_acct, 2__NR_acct,
3#ifdef __NR_swapon
3__NR_swapon, 4__NR_swapon,
5#endif
4__NR_quotactl, 6__NR_quotactl,
5__NR_truncate, 7__NR_truncate,
6#ifdef __NR_truncate64 8#ifdef __NR_truncate64
diff --git a/include/asm-mn10300/uaccess.h b/include/asm-mn10300/uaccess.h
index 46b9b647f3c3..8a3a4dd55763 100644
--- a/include/asm-mn10300/uaccess.h
+++ b/include/asm-mn10300/uaccess.h
@@ -266,7 +266,7 @@ extern int __get_user_unknown(void);
266 " .section .fixup,\"ax\" \n" \ 266 " .section .fixup,\"ax\" \n" \
267 "4: \n" \ 267 "4: \n" \
268 " mov %5,%0 \n" \ 268 " mov %5,%0 \n" \
269 " jmp 2b \n" \ 269 " jmp 3b \n" \
270 " .previous \n" \ 270 " .previous \n" \
271 " .section __ex_table,\"a\"\n" \ 271 " .section __ex_table,\"a\"\n" \
272 " .balign 4 \n" \ 272 " .balign 4 \n" \
diff --git a/include/linux/audit.h b/include/linux/audit.h
index 6272a395d43c..8f0672d13eb1 100644
--- a/include/linux/audit.h
+++ b/include/linux/audit.h
@@ -391,6 +391,7 @@ extern int audit_classify_arch(int arch);
391#ifdef CONFIG_AUDITSYSCALL 391#ifdef CONFIG_AUDITSYSCALL
392/* These are defined in auditsc.c */ 392/* These are defined in auditsc.c */
393 /* Public API */ 393 /* Public API */
394extern void audit_finish_fork(struct task_struct *child);
394extern int audit_alloc(struct task_struct *task); 395extern int audit_alloc(struct task_struct *task);
395extern void audit_free(struct task_struct *task); 396extern void audit_free(struct task_struct *task);
396extern void audit_syscall_entry(int arch, 397extern void audit_syscall_entry(int arch,
@@ -434,7 +435,7 @@ static inline void audit_ptrace(struct task_struct *t)
434 435
435 /* Private API (for audit.c only) */ 436 /* Private API (for audit.c only) */
436extern unsigned int audit_serial(void); 437extern unsigned int audit_serial(void);
437extern void auditsc_get_stamp(struct audit_context *ctx, 438extern int auditsc_get_stamp(struct audit_context *ctx,
438 struct timespec *t, unsigned int *serial); 439 struct timespec *t, unsigned int *serial);
439extern int audit_set_loginuid(struct task_struct *task, uid_t loginuid); 440extern int audit_set_loginuid(struct task_struct *task, uid_t loginuid);
440#define audit_get_loginuid(t) ((t)->loginuid) 441#define audit_get_loginuid(t) ((t)->loginuid)
@@ -504,6 +505,7 @@ static inline int audit_mq_getsetattr(mqd_t mqdes, struct mq_attr *mqstat)
504extern int audit_n_rules; 505extern int audit_n_rules;
505extern int audit_signals; 506extern int audit_signals;
506#else 507#else
508#define audit_finish_fork(t)
507#define audit_alloc(t) ({ 0; }) 509#define audit_alloc(t) ({ 0; })
508#define audit_free(t) do { ; } while (0) 510#define audit_free(t) do { ; } while (0)
509#define audit_syscall_entry(ta,a,b,c,d,e) do { ; } while (0) 511#define audit_syscall_entry(ta,a,b,c,d,e) do { ; } while (0)
@@ -516,7 +518,7 @@ extern int audit_signals;
516#define audit_inode(n,d) do { ; } while (0) 518#define audit_inode(n,d) do { ; } while (0)
517#define audit_inode_child(d,i,p) do { ; } while (0) 519#define audit_inode_child(d,i,p) do { ; } while (0)
518#define audit_core_dumps(i) do { ; } while (0) 520#define audit_core_dumps(i) do { ; } while (0)
519#define auditsc_get_stamp(c,t,s) do { BUG(); } while (0) 521#define auditsc_get_stamp(c,t,s) (0)
520#define audit_get_loginuid(t) (-1) 522#define audit_get_loginuid(t) (-1)
521#define audit_get_sessionid(t) (-1) 523#define audit_get_sessionid(t) (-1)
522#define audit_log_task_context(b) do { ; } while (0) 524#define audit_log_task_context(b) do { ; } while (0)
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index a135256b272c..031a315c0509 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -662,6 +662,7 @@ extern unsigned long blk_max_low_pfn, blk_max_pfn;
662 * default timeout for SG_IO if none specified 662 * default timeout for SG_IO if none specified
663 */ 663 */
664#define BLK_DEFAULT_SG_TIMEOUT (60 * HZ) 664#define BLK_DEFAULT_SG_TIMEOUT (60 * HZ)
665#define BLK_MIN_SG_TIMEOUT (7 * HZ)
665 666
666#ifdef CONFIG_BOUNCE 667#ifdef CONFIG_BOUNCE
667extern int init_emergency_isa_pool(void); 668extern int init_emergency_isa_pool(void);
@@ -786,6 +787,8 @@ static inline void blk_run_address_space(struct address_space *mapping)
786 blk_run_backing_dev(mapping->backing_dev_info, NULL); 787 blk_run_backing_dev(mapping->backing_dev_info, NULL);
787} 788}
788 789
790extern void blkdev_dequeue_request(struct request *req);
791
789/* 792/*
790 * blk_end_request() and friends. 793 * blk_end_request() and friends.
791 * __blk_end_request() and end_request() must be called with 794 * __blk_end_request() and end_request() must be called with
@@ -820,11 +823,6 @@ extern void blk_update_request(struct request *rq, int error,
820extern unsigned int blk_rq_bytes(struct request *rq); 823extern unsigned int blk_rq_bytes(struct request *rq);
821extern unsigned int blk_rq_cur_bytes(struct request *rq); 824extern unsigned int blk_rq_cur_bytes(struct request *rq);
822 825
823static inline void blkdev_dequeue_request(struct request *req)
824{
825 elv_dequeue_request(req->q, req);
826}
827
828/* 826/*
829 * Access functions for manipulating queue properties 827 * Access functions for manipulating queue properties
830 */ 828 */
@@ -921,6 +919,8 @@ extern void blk_set_cmd_filter_defaults(struct blk_cmd_filter *filter);
921 919
922#define MAX_SEGMENT_SIZE 65536 920#define MAX_SEGMENT_SIZE 65536
923 921
922#define BLK_SEG_BOUNDARY_MASK 0xFFFFFFFFUL
923
924#define blkdev_entry_to_request(entry) list_entry((entry), struct request, queuelist) 924#define blkdev_entry_to_request(entry) list_entry((entry), struct request, queuelist)
925 925
926static inline int queue_hardsect_size(struct request_queue *q) 926static inline int queue_hardsect_size(struct request_queue *q)
diff --git a/include/linux/can/core.h b/include/linux/can/core.h
index e9ca210ffa5b..f50785ad4781 100644
--- a/include/linux/can/core.h
+++ b/include/linux/can/core.h
@@ -19,7 +19,7 @@
19#include <linux/skbuff.h> 19#include <linux/skbuff.h>
20#include <linux/netdevice.h> 20#include <linux/netdevice.h>
21 21
22#define CAN_VERSION "20071116" 22#define CAN_VERSION "20081130"
23 23
24/* increment this number each time you change some user-space interface */ 24/* increment this number each time you change some user-space interface */
25#define CAN_ABI_VERSION "8" 25#define CAN_ABI_VERSION "8"
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 0dcdd9458f4b..4a853ef6fd35 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -63,23 +63,24 @@ extern int dir_notify_enable;
63#define MAY_ACCESS 16 63#define MAY_ACCESS 16
64#define MAY_OPEN 32 64#define MAY_OPEN 32
65 65
66#define FMODE_READ ((__force fmode_t)1) 66/* file is open for reading */
67#define FMODE_WRITE ((__force fmode_t)2) 67#define FMODE_READ ((__force fmode_t)1)
68 68/* file is open for writing */
69/* Internal kernel extensions */ 69#define FMODE_WRITE ((__force fmode_t)2)
70#define FMODE_LSEEK ((__force fmode_t)4) 70/* file is seekable */
71#define FMODE_PREAD ((__force fmode_t)8) 71#define FMODE_LSEEK ((__force fmode_t)4)
72#define FMODE_PWRITE FMODE_PREAD /* These go hand in hand */ 72/* file can be accessed using pread/pwrite */
73 73#define FMODE_PREAD ((__force fmode_t)8)
74/* File is being opened for execution. Primary users of this flag are 74#define FMODE_PWRITE FMODE_PREAD /* These go hand in hand */
75 distributed filesystems that can use it to achieve correct ETXTBUSY 75/* File is opened for execution with sys_execve / sys_uselib */
76 behavior for cross-node execution/opening_for_writing of files */ 76#define FMODE_EXEC ((__force fmode_t)16)
77#define FMODE_EXEC ((__force fmode_t)16) 77/* File is opened with O_NDELAY (only set for block devices) */
78 78#define FMODE_NDELAY ((__force fmode_t)32)
79#define FMODE_NDELAY ((__force fmode_t)32) 79/* File is opened with O_EXCL (only set for block devices) */
80#define FMODE_EXCL ((__force fmode_t)64) 80#define FMODE_EXCL ((__force fmode_t)64)
81/* File is opened using open(.., 3, ..) and is writeable only for ioctls
82 (specialy hack for floppy.c) */
81#define FMODE_WRITE_IOCTL ((__force fmode_t)128) 83#define FMODE_WRITE_IOCTL ((__force fmode_t)128)
82#define FMODE_NDELAY_NOW ((__force fmode_t)256)
83 84
84#define RW_MASK 1 85#define RW_MASK 1
85#define RWA_MASK 2 86#define RWA_MASK 2
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
index 703eb53cfa2b..9c5bc6be2b09 100644
--- a/include/linux/ftrace.h
+++ b/include/linux/ftrace.h
@@ -6,6 +6,7 @@
6#include <linux/ktime.h> 6#include <linux/ktime.h>
7#include <linux/init.h> 7#include <linux/init.h>
8#include <linux/types.h> 8#include <linux/types.h>
9#include <linux/module.h>
9#include <linux/kallsyms.h> 10#include <linux/kallsyms.h>
10 11
11#ifdef CONFIG_FUNCTION_TRACER 12#ifdef CONFIG_FUNCTION_TRACER
@@ -231,7 +232,7 @@ ftrace_init_module(unsigned long *start, unsigned long *end) { }
231 232
232struct boot_trace { 233struct boot_trace {
233 pid_t caller; 234 pid_t caller;
234 char func[KSYM_NAME_LEN]; 235 char func[KSYM_SYMBOL_LEN];
235 int result; 236 int result;
236 unsigned long long duration; /* usecs */ 237 unsigned long long duration; /* usecs */
237 ktime_t calltime; 238 ktime_t calltime;
diff --git a/include/linux/ide.h b/include/linux/ide.h
index 54525be4b5f8..010fb26a1579 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -1296,6 +1296,13 @@ extern int __ide_pci_register_driver(struct pci_driver *driver, struct module *o
1296#define ide_pci_register_driver(d) pci_register_driver(d) 1296#define ide_pci_register_driver(d) pci_register_driver(d)
1297#endif 1297#endif
1298 1298
1299static inline int ide_pci_is_in_compatibility_mode(struct pci_dev *dev)
1300{
1301 if ((dev->class >> 8) == PCI_CLASS_STORAGE_IDE && (dev->class & 5) != 5)
1302 return 1;
1303 return 0;
1304}
1305
1299void ide_pci_setup_ports(struct pci_dev *, const struct ide_port_info *, int, 1306void ide_pci_setup_ports(struct pci_dev *, const struct ide_port_info *, int,
1300 hw_regs_t *, hw_regs_t **); 1307 hw_regs_t *, hw_regs_t **);
1301void ide_setup_pci_noise(struct pci_dev *, const struct ide_port_info *); 1308void ide_setup_pci_noise(struct pci_dev *, const struct ide_port_info *);
@@ -1375,6 +1382,7 @@ enum {
1375 IDE_HFLAG_IO_32BIT = (1 << 24), 1382 IDE_HFLAG_IO_32BIT = (1 << 24),
1376 /* unmask IRQs */ 1383 /* unmask IRQs */
1377 IDE_HFLAG_UNMASK_IRQS = (1 << 25), 1384 IDE_HFLAG_UNMASK_IRQS = (1 << 25),
1385 IDE_HFLAG_BROKEN_ALTSTATUS = (1 << 26),
1378 /* serialize ports if DMA is possible (for sl82c105) */ 1386 /* serialize ports if DMA is possible (for sl82c105) */
1379 IDE_HFLAG_SERIALIZE_DMA = (1 << 27), 1387 IDE_HFLAG_SERIALIZE_DMA = (1 << 27),
1380 /* force host out of "simplex" mode */ 1388 /* force host out of "simplex" mode */
diff --git a/include/linux/netfilter/x_tables.h b/include/linux/netfilter/x_tables.h
index be41b609c88f..e52ce475d19f 100644
--- a/include/linux/netfilter/x_tables.h
+++ b/include/linux/netfilter/x_tables.h
@@ -251,7 +251,7 @@ struct xt_target_param {
251 */ 251 */
252struct xt_tgchk_param { 252struct xt_tgchk_param {
253 const char *table; 253 const char *table;
254 void *entryinfo; 254 const void *entryinfo;
255 const struct xt_target *target; 255 const struct xt_target *target;
256 void *targinfo; 256 void *targinfo;
257 unsigned int hook_mask; 257 unsigned int hook_mask;
diff --git a/include/linux/security.h b/include/linux/security.h
index c13f1cec9abb..e3d4ecda2673 100644
--- a/include/linux/security.h
+++ b/include/linux/security.h
@@ -1818,17 +1818,21 @@ static inline int security_settime(struct timespec *ts, struct timezone *tz)
1818 1818
1819static inline int security_vm_enough_memory(long pages) 1819static inline int security_vm_enough_memory(long pages)
1820{ 1820{
1821 WARN_ON(current->mm == NULL);
1821 return cap_vm_enough_memory(current->mm, pages); 1822 return cap_vm_enough_memory(current->mm, pages);
1822} 1823}
1823 1824
1824static inline int security_vm_enough_memory_kern(long pages) 1825static inline int security_vm_enough_memory_mm(struct mm_struct *mm, long pages)
1825{ 1826{
1826 return cap_vm_enough_memory(current->mm, pages); 1827 WARN_ON(mm == NULL);
1828 return cap_vm_enough_memory(mm, pages);
1827} 1829}
1828 1830
1829static inline int security_vm_enough_memory_mm(struct mm_struct *mm, long pages) 1831static inline int security_vm_enough_memory_kern(long pages)
1830{ 1832{
1831 return cap_vm_enough_memory(mm, pages); 1833 /* If current->mm is a kernel thread then we will pass NULL,
1834 for this specific case that is fine */
1835 return cap_vm_enough_memory(current->mm, pages);
1832} 1836}
1833 1837
1834static inline int security_bprm_alloc(struct linux_binprm *bprm) 1838static inline int security_bprm_alloc(struct linux_binprm *bprm)
diff --git a/include/net/af_unix.h b/include/net/af_unix.h
index c29ff1da8a18..1614d78c60ed 100644
--- a/include/net/af_unix.h
+++ b/include/net/af_unix.h
@@ -9,6 +9,7 @@
9extern void unix_inflight(struct file *fp); 9extern void unix_inflight(struct file *fp);
10extern void unix_notinflight(struct file *fp); 10extern void unix_notinflight(struct file *fp);
11extern void unix_gc(void); 11extern void unix_gc(void);
12extern void wait_for_unix_gc(void);
12 13
13#define UNIX_HASH_SIZE 256 14#define UNIX_HASH_SIZE 256
14 15
diff --git a/include/net/request_sock.h b/include/net/request_sock.h
index cac811e51f6d..c7190846e128 100644
--- a/include/net/request_sock.h
+++ b/include/net/request_sock.h
@@ -31,6 +31,7 @@ struct request_sock_ops {
31 int family; 31 int family;
32 int obj_size; 32 int obj_size;
33 struct kmem_cache *slab; 33 struct kmem_cache *slab;
34 char *slab_name;
34 int (*rtx_syn_ack)(struct sock *sk, 35 int (*rtx_syn_ack)(struct sock *sk,
35 struct request_sock *req); 36 struct request_sock *req);
36 void (*send_ack)(struct sock *sk, struct sk_buff *skb, 37 void (*send_ack)(struct sock *sk, struct sk_buff *skb,
diff --git a/include/net/timewait_sock.h b/include/net/timewait_sock.h
index 1e1ee3253fd8..97c3b14da55d 100644
--- a/include/net/timewait_sock.h
+++ b/include/net/timewait_sock.h
@@ -16,6 +16,7 @@
16 16
17struct timewait_sock_ops { 17struct timewait_sock_ops {
18 struct kmem_cache *twsk_slab; 18 struct kmem_cache *twsk_slab;
19 char *twsk_slab_name;
19 unsigned int twsk_obj_size; 20 unsigned int twsk_obj_size;
20 int (*twsk_unique)(struct sock *sk, 21 int (*twsk_unique)(struct sock *sk,
21 struct sock *sktw, void *twp); 22 struct sock *sktw, void *twp);
diff --git a/include/scsi/scsi_transport_fc.h b/include/scsi/scsi_transport_fc.h
index 49d8913c4f86..6e04e6fe79c7 100644
--- a/include/scsi/scsi_transport_fc.h
+++ b/include/scsi/scsi_transport_fc.h
@@ -357,7 +357,7 @@ struct fc_rport { /* aka fc_starget_attrs */
357/* bit field values for struct fc_rport "flags" field: */ 357/* bit field values for struct fc_rport "flags" field: */
358#define FC_RPORT_DEVLOSS_PENDING 0x01 358#define FC_RPORT_DEVLOSS_PENDING 0x01
359#define FC_RPORT_SCAN_PENDING 0x02 359#define FC_RPORT_SCAN_PENDING 0x02
360#define FC_RPORT_FAST_FAIL_TIMEDOUT 0x03 360#define FC_RPORT_FAST_FAIL_TIMEDOUT 0x04
361 361
362#define dev_to_rport(d) \ 362#define dev_to_rport(d) \
363 container_of(d, struct fc_rport, dev) 363 container_of(d, struct fc_rport, dev)
diff --git a/kernel/audit.c b/kernel/audit.c
index 4414e93d8750..ce6d8ea3131e 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -61,8 +61,11 @@
61 61
62#include "audit.h" 62#include "audit.h"
63 63
64/* No auditing will take place until audit_initialized != 0. 64/* No auditing will take place until audit_initialized == AUDIT_INITIALIZED.
65 * (Initialization happens after skb_init is called.) */ 65 * (Initialization happens after skb_init is called.) */
66#define AUDIT_DISABLED -1
67#define AUDIT_UNINITIALIZED 0
68#define AUDIT_INITIALIZED 1
66static int audit_initialized; 69static int audit_initialized;
67 70
68#define AUDIT_OFF 0 71#define AUDIT_OFF 0
@@ -965,6 +968,9 @@ static int __init audit_init(void)
965{ 968{
966 int i; 969 int i;
967 970
971 if (audit_initialized == AUDIT_DISABLED)
972 return 0;
973
968 printk(KERN_INFO "audit: initializing netlink socket (%s)\n", 974 printk(KERN_INFO "audit: initializing netlink socket (%s)\n",
969 audit_default ? "enabled" : "disabled"); 975 audit_default ? "enabled" : "disabled");
970 audit_sock = netlink_kernel_create(&init_net, NETLINK_AUDIT, 0, 976 audit_sock = netlink_kernel_create(&init_net, NETLINK_AUDIT, 0,
@@ -976,7 +982,7 @@ static int __init audit_init(void)
976 982
977 skb_queue_head_init(&audit_skb_queue); 983 skb_queue_head_init(&audit_skb_queue);
978 skb_queue_head_init(&audit_skb_hold_queue); 984 skb_queue_head_init(&audit_skb_hold_queue);
979 audit_initialized = 1; 985 audit_initialized = AUDIT_INITIALIZED;
980 audit_enabled = audit_default; 986 audit_enabled = audit_default;
981 audit_ever_enabled |= !!audit_default; 987 audit_ever_enabled |= !!audit_default;
982 988
@@ -999,13 +1005,21 @@ __initcall(audit_init);
999static int __init audit_enable(char *str) 1005static int __init audit_enable(char *str)
1000{ 1006{
1001 audit_default = !!simple_strtol(str, NULL, 0); 1007 audit_default = !!simple_strtol(str, NULL, 0);
1002 printk(KERN_INFO "audit: %s%s\n", 1008 if (!audit_default)
1003 audit_default ? "enabled" : "disabled", 1009 audit_initialized = AUDIT_DISABLED;
1004 audit_initialized ? "" : " (after initialization)"); 1010
1005 if (audit_initialized) { 1011 printk(KERN_INFO "audit: %s", audit_default ? "enabled" : "disabled");
1012
1013 if (audit_initialized == AUDIT_INITIALIZED) {
1006 audit_enabled = audit_default; 1014 audit_enabled = audit_default;
1007 audit_ever_enabled |= !!audit_default; 1015 audit_ever_enabled |= !!audit_default;
1016 } else if (audit_initialized == AUDIT_UNINITIALIZED) {
1017 printk(" (after initialization)");
1018 } else {
1019 printk(" (until reboot)");
1008 } 1020 }
1021 printk("\n");
1022
1009 return 1; 1023 return 1;
1010} 1024}
1011 1025
@@ -1107,9 +1121,7 @@ unsigned int audit_serial(void)
1107static inline void audit_get_stamp(struct audit_context *ctx, 1121static inline void audit_get_stamp(struct audit_context *ctx,
1108 struct timespec *t, unsigned int *serial) 1122 struct timespec *t, unsigned int *serial)
1109{ 1123{
1110 if (ctx) 1124 if (!ctx || !auditsc_get_stamp(ctx, t, serial)) {
1111 auditsc_get_stamp(ctx, t, serial);
1112 else {
1113 *t = CURRENT_TIME; 1125 *t = CURRENT_TIME;
1114 *serial = audit_serial(); 1126 *serial = audit_serial();
1115 } 1127 }
@@ -1146,7 +1158,7 @@ struct audit_buffer *audit_log_start(struct audit_context *ctx, gfp_t gfp_mask,
1146 int reserve; 1158 int reserve;
1147 unsigned long timeout_start = jiffies; 1159 unsigned long timeout_start = jiffies;
1148 1160
1149 if (!audit_initialized) 1161 if (audit_initialized != AUDIT_INITIALIZED)
1150 return NULL; 1162 return NULL;
1151 1163
1152 if (unlikely(audit_filter_type(type))) 1164 if (unlikely(audit_filter_type(type)))
diff --git a/kernel/auditsc.c b/kernel/auditsc.c
index cf5bc2f5f9c3..2a3f0afc4d2a 100644
--- a/kernel/auditsc.c
+++ b/kernel/auditsc.c
@@ -1459,7 +1459,6 @@ void audit_free(struct task_struct *tsk)
1459 1459
1460/** 1460/**
1461 * audit_syscall_entry - fill in an audit record at syscall entry 1461 * audit_syscall_entry - fill in an audit record at syscall entry
1462 * @tsk: task being audited
1463 * @arch: architecture type 1462 * @arch: architecture type
1464 * @major: major syscall type (function) 1463 * @major: major syscall type (function)
1465 * @a1: additional syscall register 1 1464 * @a1: additional syscall register 1
@@ -1548,9 +1547,25 @@ void audit_syscall_entry(int arch, int major,
1548 context->ppid = 0; 1547 context->ppid = 0;
1549} 1548}
1550 1549
1550void audit_finish_fork(struct task_struct *child)
1551{
1552 struct audit_context *ctx = current->audit_context;
1553 struct audit_context *p = child->audit_context;
1554 if (!p || !ctx || !ctx->auditable)
1555 return;
1556 p->arch = ctx->arch;
1557 p->major = ctx->major;
1558 memcpy(p->argv, ctx->argv, sizeof(ctx->argv));
1559 p->ctime = ctx->ctime;
1560 p->dummy = ctx->dummy;
1561 p->auditable = ctx->auditable;
1562 p->in_syscall = ctx->in_syscall;
1563 p->filterkey = kstrdup(ctx->filterkey, GFP_KERNEL);
1564 p->ppid = current->pid;
1565}
1566
1551/** 1567/**
1552 * audit_syscall_exit - deallocate audit context after a system call 1568 * audit_syscall_exit - deallocate audit context after a system call
1553 * @tsk: task being audited
1554 * @valid: success/failure flag 1569 * @valid: success/failure flag
1555 * @return_code: syscall return value 1570 * @return_code: syscall return value
1556 * 1571 *
@@ -1942,15 +1957,18 @@ EXPORT_SYMBOL_GPL(__audit_inode_child);
1942 * 1957 *
1943 * Also sets the context as auditable. 1958 * Also sets the context as auditable.
1944 */ 1959 */
1945void auditsc_get_stamp(struct audit_context *ctx, 1960int auditsc_get_stamp(struct audit_context *ctx,
1946 struct timespec *t, unsigned int *serial) 1961 struct timespec *t, unsigned int *serial)
1947{ 1962{
1963 if (!ctx->in_syscall)
1964 return 0;
1948 if (!ctx->serial) 1965 if (!ctx->serial)
1949 ctx->serial = audit_serial(); 1966 ctx->serial = audit_serial();
1950 t->tv_sec = ctx->ctime.tv_sec; 1967 t->tv_sec = ctx->ctime.tv_sec;
1951 t->tv_nsec = ctx->ctime.tv_nsec; 1968 t->tv_nsec = ctx->ctime.tv_nsec;
1952 *serial = ctx->serial; 1969 *serial = ctx->serial;
1953 ctx->auditable = 1; 1970 ctx->auditable = 1;
1971 return 1;
1954} 1972}
1955 1973
1956/* global counter which is incremented every time something logs in */ 1974/* global counter which is incremented every time something logs in */
diff --git a/kernel/fork.c b/kernel/fork.c
index 2a372a0e206f..495da2e9a8b4 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -315,17 +315,20 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
315 file = tmp->vm_file; 315 file = tmp->vm_file;
316 if (file) { 316 if (file) {
317 struct inode *inode = file->f_path.dentry->d_inode; 317 struct inode *inode = file->f_path.dentry->d_inode;
318 struct address_space *mapping = file->f_mapping;
319
318 get_file(file); 320 get_file(file);
319 if (tmp->vm_flags & VM_DENYWRITE) 321 if (tmp->vm_flags & VM_DENYWRITE)
320 atomic_dec(&inode->i_writecount); 322 atomic_dec(&inode->i_writecount);
321 323 spin_lock(&mapping->i_mmap_lock);
322 /* insert tmp into the share list, just after mpnt */ 324 if (tmp->vm_flags & VM_SHARED)
323 spin_lock(&file->f_mapping->i_mmap_lock); 325 mapping->i_mmap_writable++;
324 tmp->vm_truncate_count = mpnt->vm_truncate_count; 326 tmp->vm_truncate_count = mpnt->vm_truncate_count;
325 flush_dcache_mmap_lock(file->f_mapping); 327 flush_dcache_mmap_lock(mapping);
328 /* insert tmp into the share list, just after mpnt */
326 vma_prio_tree_add(tmp, mpnt); 329 vma_prio_tree_add(tmp, mpnt);
327 flush_dcache_mmap_unlock(file->f_mapping); 330 flush_dcache_mmap_unlock(mapping);
328 spin_unlock(&file->f_mapping->i_mmap_lock); 331 spin_unlock(&mapping->i_mmap_lock);
329 } 332 }
330 333
331 /* 334 /*
@@ -1398,6 +1401,7 @@ long do_fork(unsigned long clone_flags,
1398 init_completion(&vfork); 1401 init_completion(&vfork);
1399 } 1402 }
1400 1403
1404 audit_finish_fork(p);
1401 tracehook_report_clone(trace, regs, clone_flags, nr, p); 1405 tracehook_report_clone(trace, regs, clone_flags, nr, p);
1402 1406
1403 /* 1407 /*
diff --git a/kernel/latencytop.c b/kernel/latencytop.c
index 5e7b45c56923..449db466bdbc 100644
--- a/kernel/latencytop.c
+++ b/kernel/latencytop.c
@@ -191,7 +191,7 @@ static int lstats_show(struct seq_file *m, void *v)
191 latency_record[i].time, 191 latency_record[i].time,
192 latency_record[i].max); 192 latency_record[i].max);
193 for (q = 0; q < LT_BACKTRACEDEPTH; q++) { 193 for (q = 0; q < LT_BACKTRACEDEPTH; q++) {
194 char sym[KSYM_NAME_LEN]; 194 char sym[KSYM_SYMBOL_LEN];
195 char *c; 195 char *c;
196 if (!latency_record[i].backtrace[q]) 196 if (!latency_record[i].backtrace[q])
197 break; 197 break;
diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c
index 895337b16a24..4e5288a831de 100644
--- a/kernel/posix-cpu-timers.c
+++ b/kernel/posix-cpu-timers.c
@@ -311,7 +311,7 @@ static int cpu_clock_sample_group(const clockid_t which_clock,
311 struct task_cputime cputime; 311 struct task_cputime cputime;
312 312
313 thread_group_cputime(p, &cputime); 313 thread_group_cputime(p, &cputime);
314 switch (which_clock) { 314 switch (CPUCLOCK_WHICH(which_clock)) {
315 default: 315 default:
316 return -EINVAL; 316 return -EINVAL;
317 case CPUCLOCK_PROF: 317 case CPUCLOCK_PROF:
diff --git a/kernel/power/swap.c b/kernel/power/swap.c
index b7713b53d07a..6da14358537c 100644
--- a/kernel/power/swap.c
+++ b/kernel/power/swap.c
@@ -633,7 +633,7 @@ void swsusp_close(fmode_t mode)
633 return; 633 return;
634 } 634 }
635 635
636 blkdev_put(resume_bdev, mode); /* move up */ 636 blkdev_put(resume_bdev, mode);
637} 637}
638 638
639static int swsusp_header_init(void) 639static int swsusp_header_init(void)
diff --git a/kernel/relay.c b/kernel/relay.c
index 32b0befdcb6a..09ac2008f77b 100644
--- a/kernel/relay.c
+++ b/kernel/relay.c
@@ -1317,12 +1317,9 @@ static ssize_t relay_file_splice_read(struct file *in,
1317 if (ret < 0) 1317 if (ret < 0)
1318 break; 1318 break;
1319 else if (!ret) { 1319 else if (!ret) {
1320 if (spliced) 1320 if (flags & SPLICE_F_NONBLOCK)
1321 break;
1322 if (flags & SPLICE_F_NONBLOCK) {
1323 ret = -EAGAIN; 1321 ret = -EAGAIN;
1324 break; 1322 break;
1325 }
1326 } 1323 }
1327 1324
1328 *ppos += ret; 1325 *ppos += ret;
diff --git a/kernel/sched.c b/kernel/sched.c
index b7480fb5c3dc..e4bb1dd7b308 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -6587,7 +6587,9 @@ migration_call(struct notifier_block *nfb, unsigned long action, void *hcpu)
6587 req = list_entry(rq->migration_queue.next, 6587 req = list_entry(rq->migration_queue.next,
6588 struct migration_req, list); 6588 struct migration_req, list);
6589 list_del_init(&req->list); 6589 list_del_init(&req->list);
6590 spin_unlock_irq(&rq->lock);
6590 complete(&req->done); 6591 complete(&req->done);
6592 spin_lock_irq(&rq->lock);
6591 } 6593 }
6592 spin_unlock_irq(&rq->lock); 6594 spin_unlock_irq(&rq->lock);
6593 break; 6595 break;
diff --git a/kernel/softlockup.c b/kernel/softlockup.c
index 3953e4aed733..dc0b3be6b7d5 100644
--- a/kernel/softlockup.c
+++ b/kernel/softlockup.c
@@ -188,7 +188,7 @@ static void check_hung_task(struct task_struct *t, unsigned long now)
188 if ((long)(now - t->last_switch_timestamp) < 188 if ((long)(now - t->last_switch_timestamp) <
189 sysctl_hung_task_timeout_secs) 189 sysctl_hung_task_timeout_secs)
190 return; 190 return;
191 if (sysctl_hung_task_warnings < 0) 191 if (!sysctl_hung_task_warnings)
192 return; 192 return;
193 sysctl_hung_task_warnings--; 193 sysctl_hung_task_warnings--;
194 194
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index e7acfb482a68..fa05e88aa76f 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -518,6 +518,28 @@ void update_wall_time(void)
518 /* correct the clock when NTP error is too big */ 518 /* correct the clock when NTP error is too big */
519 clocksource_adjust(offset); 519 clocksource_adjust(offset);
520 520
521 /*
522 * Since in the loop above, we accumulate any amount of time
523 * in xtime_nsec over a second into xtime.tv_sec, its possible for
524 * xtime_nsec to be fairly small after the loop. Further, if we're
525 * slightly speeding the clocksource up in clocksource_adjust(),
526 * its possible the required corrective factor to xtime_nsec could
527 * cause it to underflow.
528 *
529 * Now, we cannot simply roll the accumulated second back, since
530 * the NTP subsystem has been notified via second_overflow. So
531 * instead we push xtime_nsec forward by the amount we underflowed,
532 * and add that amount into the error.
533 *
534 * We'll correct this error next time through this function, when
535 * xtime_nsec is not as small.
536 */
537 if (unlikely((s64)clock->xtime_nsec < 0)) {
538 s64 neg = -(s64)clock->xtime_nsec;
539 clock->xtime_nsec = 0;
540 clock->error += neg << (NTP_SCALE_SHIFT - clock->shift);
541 }
542
521 /* store full nanoseconds into xtime after rounding it up and 543 /* store full nanoseconds into xtime after rounding it up and
522 * add the remainder to the error difference. 544 * add the remainder to the error difference.
523 */ 545 */
diff --git a/lib/idr.c b/lib/idr.c
index 7a785a0c2ea0..1c4f9281f412 100644
--- a/lib/idr.c
+++ b/lib/idr.c
@@ -220,8 +220,14 @@ build_up:
220 */ 220 */
221 while ((layers < (MAX_LEVEL - 1)) && (id >= (1 << (layers*IDR_BITS)))) { 221 while ((layers < (MAX_LEVEL - 1)) && (id >= (1 << (layers*IDR_BITS)))) {
222 layers++; 222 layers++;
223 if (!p->count) 223 if (!p->count) {
224 /* special case: if the tree is currently empty,
225 * then we grow the tree by moving the top node
226 * upwards.
227 */
228 p->layer++;
224 continue; 229 continue;
230 }
225 if (!(new = get_from_free_list(idp))) { 231 if (!(new = get_from_free_list(idp))) {
226 /* 232 /*
227 * The allocation failed. If we built part of 233 * The allocation failed. If we built part of
diff --git a/lib/percpu_counter.c b/lib/percpu_counter.c
index a8663890a88c..b255b939bc1b 100644
--- a/lib/percpu_counter.c
+++ b/lib/percpu_counter.c
@@ -62,10 +62,7 @@ s64 __percpu_counter_sum(struct percpu_counter *fbc)
62 for_each_online_cpu(cpu) { 62 for_each_online_cpu(cpu) {
63 s32 *pcount = per_cpu_ptr(fbc->counters, cpu); 63 s32 *pcount = per_cpu_ptr(fbc->counters, cpu);
64 ret += *pcount; 64 ret += *pcount;
65 *pcount = 0;
66 } 65 }
67 fbc->count = ret;
68
69 spin_unlock(&fbc->lock); 66 spin_unlock(&fbc->lock);
70 return ret; 67 return ret;
71} 68}
@@ -104,13 +101,13 @@ void percpu_counter_destroy(struct percpu_counter *fbc)
104 if (!fbc->counters) 101 if (!fbc->counters)
105 return; 102 return;
106 103
107 free_percpu(fbc->counters);
108 fbc->counters = NULL;
109#ifdef CONFIG_HOTPLUG_CPU 104#ifdef CONFIG_HOTPLUG_CPU
110 mutex_lock(&percpu_counters_lock); 105 mutex_lock(&percpu_counters_lock);
111 list_del(&fbc->list); 106 list_del(&fbc->list);
112 mutex_unlock(&percpu_counters_lock); 107 mutex_unlock(&percpu_counters_lock);
113#endif 108#endif
109 free_percpu(fbc->counters);
110 fbc->counters = NULL;
114} 111}
115EXPORT_SYMBOL(percpu_counter_destroy); 112EXPORT_SYMBOL(percpu_counter_destroy);
116 113
diff --git a/mm/backing-dev.c b/mm/backing-dev.c
index f2e574dbc300..801c08b046e6 100644
--- a/mm/backing-dev.c
+++ b/mm/backing-dev.c
@@ -176,6 +176,9 @@ int bdi_register(struct backing_dev_info *bdi, struct device *parent,
176 int ret = 0; 176 int ret = 0;
177 struct device *dev; 177 struct device *dev;
178 178
179 if (bdi->dev) /* The driver needs to use separate queues per device */
180 goto exit;
181
179 va_start(args, fmt); 182 va_start(args, fmt);
180 dev = device_create_vargs(bdi_class, parent, MKDEV(0, 0), bdi, fmt, args); 183 dev = device_create_vargs(bdi_class, parent, MKDEV(0, 0), bdi, fmt, args);
181 va_end(args); 184 va_end(args);
diff --git a/mm/migrate.c b/mm/migrate.c
index 1e0d6b237f44..d8f07667fc80 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -987,25 +987,18 @@ out:
987/* 987/*
988 * Determine the nodes of an array of pages and store it in an array of status. 988 * Determine the nodes of an array of pages and store it in an array of status.
989 */ 989 */
990static int do_pages_stat(struct mm_struct *mm, unsigned long nr_pages, 990static void do_pages_stat_array(struct mm_struct *mm, unsigned long nr_pages,
991 const void __user * __user *pages, 991 const void __user **pages, int *status)
992 int __user *status)
993{ 992{
994 unsigned long i; 993 unsigned long i;
995 int err;
996 994
997 down_read(&mm->mmap_sem); 995 down_read(&mm->mmap_sem);
998 996
999 for (i = 0; i < nr_pages; i++) { 997 for (i = 0; i < nr_pages; i++) {
1000 const void __user *p; 998 unsigned long addr = (unsigned long)(*pages);
1001 unsigned long addr;
1002 struct vm_area_struct *vma; 999 struct vm_area_struct *vma;
1003 struct page *page; 1000 struct page *page;
1004 1001 int err;
1005 err = -EFAULT;
1006 if (get_user(p, pages+i))
1007 goto out;
1008 addr = (unsigned long) p;
1009 1002
1010 vma = find_vma(mm, addr); 1003 vma = find_vma(mm, addr);
1011 if (!vma) 1004 if (!vma)
@@ -1024,12 +1017,52 @@ static int do_pages_stat(struct mm_struct *mm, unsigned long nr_pages,
1024 1017
1025 err = page_to_nid(page); 1018 err = page_to_nid(page);
1026set_status: 1019set_status:
1027 put_user(err, status+i); 1020 *status = err;
1021
1022 pages++;
1023 status++;
1024 }
1025
1026 up_read(&mm->mmap_sem);
1027}
1028
1029/*
1030 * Determine the nodes of a user array of pages and store it in
1031 * a user array of status.
1032 */
1033static int do_pages_stat(struct mm_struct *mm, unsigned long nr_pages,
1034 const void __user * __user *pages,
1035 int __user *status)
1036{
1037#define DO_PAGES_STAT_CHUNK_NR 16
1038 const void __user *chunk_pages[DO_PAGES_STAT_CHUNK_NR];
1039 int chunk_status[DO_PAGES_STAT_CHUNK_NR];
1040 unsigned long i, chunk_nr = DO_PAGES_STAT_CHUNK_NR;
1041 int err;
1042
1043 for (i = 0; i < nr_pages; i += chunk_nr) {
1044 if (chunk_nr + i > nr_pages)
1045 chunk_nr = nr_pages - i;
1046
1047 err = copy_from_user(chunk_pages, &pages[i],
1048 chunk_nr * sizeof(*chunk_pages));
1049 if (err) {
1050 err = -EFAULT;
1051 goto out;
1052 }
1053
1054 do_pages_stat_array(mm, chunk_nr, chunk_pages, chunk_status);
1055
1056 err = copy_to_user(&status[i], chunk_status,
1057 chunk_nr * sizeof(*chunk_status));
1058 if (err) {
1059 err = -EFAULT;
1060 goto out;
1061 }
1028 } 1062 }
1029 err = 0; 1063 err = 0;
1030 1064
1031out: 1065out:
1032 up_read(&mm->mmap_sem);
1033 return err; 1066 return err;
1034} 1067}
1035 1068
diff --git a/mm/page_cgroup.c b/mm/page_cgroup.c
index 0b3cbf090a67..ab27ff750519 100644
--- a/mm/page_cgroup.c
+++ b/mm/page_cgroup.c
@@ -49,6 +49,9 @@ static int __init alloc_node_page_cgroup(int nid)
49 start_pfn = NODE_DATA(nid)->node_start_pfn; 49 start_pfn = NODE_DATA(nid)->node_start_pfn;
50 nr_pages = NODE_DATA(nid)->node_spanned_pages; 50 nr_pages = NODE_DATA(nid)->node_spanned_pages;
51 51
52 if (!nr_pages)
53 return 0;
54
52 table_size = sizeof(struct page_cgroup) * nr_pages; 55 table_size = sizeof(struct page_cgroup) * nr_pages;
53 56
54 base = __alloc_bootmem_node_nopanic(NODE_DATA(nid), 57 base = __alloc_bootmem_node_nopanic(NODE_DATA(nid),
diff --git a/mm/slub.c b/mm/slub.c
index 749588a50a5a..a2cd47d89e0a 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -3597,7 +3597,7 @@ static int list_locations(struct kmem_cache *s, char *buf,
3597 for (i = 0; i < t.count; i++) { 3597 for (i = 0; i < t.count; i++) {
3598 struct location *l = &t.loc[i]; 3598 struct location *l = &t.loc[i];
3599 3599
3600 if (len > PAGE_SIZE - 100) 3600 if (len > PAGE_SIZE - KSYM_SYMBOL_LEN - 100)
3601 break; 3601 break;
3602 len += sprintf(buf + len, "%7ld ", l->count); 3602 len += sprintf(buf + len, "%7ld ", l->count);
3603 3603
diff --git a/mm/swap.c b/mm/swap.c
index 2152e48a7b8f..b135ec90cdeb 100644
--- a/mm/swap.c
+++ b/mm/swap.c
@@ -299,7 +299,6 @@ void lru_add_drain(void)
299 put_cpu(); 299 put_cpu();
300} 300}
301 301
302#if defined(CONFIG_NUMA) || defined(CONFIG_UNEVICTABLE_LRU)
303static void lru_add_drain_per_cpu(struct work_struct *dummy) 302static void lru_add_drain_per_cpu(struct work_struct *dummy)
304{ 303{
305 lru_add_drain(); 304 lru_add_drain();
@@ -313,18 +312,6 @@ int lru_add_drain_all(void)
313 return schedule_on_each_cpu(lru_add_drain_per_cpu); 312 return schedule_on_each_cpu(lru_add_drain_per_cpu);
314} 313}
315 314
316#else
317
318/*
319 * Returns 0 for success
320 */
321int lru_add_drain_all(void)
322{
323 lru_add_drain();
324 return 0;
325}
326#endif
327
328/* 315/*
329 * Batched page_cache_release(). Decrement the reference count on all the 316 * Batched page_cache_release(). Decrement the reference count on all the
330 * passed pages. If it fell to zero then remove the page from the LRU and 317 * passed pages. If it fell to zero then remove the page from the LRU and
@@ -445,6 +432,7 @@ void ____pagevec_lru_add(struct pagevec *pvec, enum lru_list lru)
445 for (i = 0; i < pagevec_count(pvec); i++) { 432 for (i = 0; i < pagevec_count(pvec); i++) {
446 struct page *page = pvec->pages[i]; 433 struct page *page = pvec->pages[i];
447 struct zone *pagezone = page_zone(page); 434 struct zone *pagezone = page_zone(page);
435 int file;
448 436
449 if (pagezone != zone) { 437 if (pagezone != zone) {
450 if (zone) 438 if (zone)
@@ -456,8 +444,12 @@ void ____pagevec_lru_add(struct pagevec *pvec, enum lru_list lru)
456 VM_BUG_ON(PageUnevictable(page)); 444 VM_BUG_ON(PageUnevictable(page));
457 VM_BUG_ON(PageLRU(page)); 445 VM_BUG_ON(PageLRU(page));
458 SetPageLRU(page); 446 SetPageLRU(page);
459 if (is_active_lru(lru)) 447 file = is_file_lru(lru);
448 zone->recent_scanned[file]++;
449 if (is_active_lru(lru)) {
460 SetPageActive(page); 450 SetPageActive(page);
451 zone->recent_rotated[file]++;
452 }
461 add_page_to_lru_list(zone, page, lru); 453 add_page_to_lru_list(zone, page, lru);
462 } 454 }
463 if (zone) 455 if (zone)
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index f3f6e0758562..1ddb77ba3995 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -1717,7 +1717,7 @@ static int s_show(struct seq_file *m, void *p)
1717 v->addr, v->addr + v->size, v->size); 1717 v->addr, v->addr + v->size, v->size);
1718 1718
1719 if (v->caller) { 1719 if (v->caller) {
1720 char buff[2 * KSYM_NAME_LEN]; 1720 char buff[KSYM_SYMBOL_LEN];
1721 1721
1722 seq_putc(m, ' '); 1722 seq_putc(m, ' ');
1723 sprint_symbol(buff, (unsigned long)v->caller); 1723 sprint_symbol(buff, (unsigned long)v->caller);
diff --git a/net/atm/svc.c b/net/atm/svc.c
index de1e4f2f3a43..8fb54dc870b3 100644
--- a/net/atm/svc.c
+++ b/net/atm/svc.c
@@ -293,7 +293,10 @@ static int svc_listen(struct socket *sock,int backlog)
293 error = -EINVAL; 293 error = -EINVAL;
294 goto out; 294 goto out;
295 } 295 }
296 vcc_insert_socket(sk); 296 if (test_bit(ATM_VF_LISTEN, &vcc->flags)) {
297 error = -EADDRINUSE;
298 goto out;
299 }
297 set_bit(ATM_VF_WAITING, &vcc->flags); 300 set_bit(ATM_VF_WAITING, &vcc->flags);
298 prepare_to_wait(sk->sk_sleep, &wait, TASK_UNINTERRUPTIBLE); 301 prepare_to_wait(sk->sk_sleep, &wait, TASK_UNINTERRUPTIBLE);
299 sigd_enq(vcc,as_listen,NULL,NULL,&vcc->local); 302 sigd_enq(vcc,as_listen,NULL,NULL,&vcc->local);
@@ -307,6 +310,7 @@ static int svc_listen(struct socket *sock,int backlog)
307 goto out; 310 goto out;
308 } 311 }
309 set_bit(ATM_VF_LISTEN,&vcc->flags); 312 set_bit(ATM_VF_LISTEN,&vcc->flags);
313 vcc_insert_socket(sk);
310 sk->sk_max_ack_backlog = backlog > 0 ? backlog : ATM_BACKLOG_DEFAULT; 314 sk->sk_max_ack_backlog = backlog > 0 ? backlog : ATM_BACKLOG_DEFAULT;
311 error = -sk->sk_err; 315 error = -sk->sk_err;
312out: 316out:
diff --git a/net/bridge/br_netfilter.c b/net/bridge/br_netfilter.c
index fa5cda4e552a..45f61c348e36 100644
--- a/net/bridge/br_netfilter.c
+++ b/net/bridge/br_netfilter.c
@@ -101,6 +101,18 @@ static inline __be16 pppoe_proto(const struct sk_buff *skb)
101 pppoe_proto(skb) == htons(PPP_IPV6) && \ 101 pppoe_proto(skb) == htons(PPP_IPV6) && \
102 brnf_filter_pppoe_tagged) 102 brnf_filter_pppoe_tagged)
103 103
104static void fake_update_pmtu(struct dst_entry *dst, u32 mtu)
105{
106}
107
108static struct dst_ops fake_dst_ops = {
109 .family = AF_INET,
110 .protocol = __constant_htons(ETH_P_IP),
111 .update_pmtu = fake_update_pmtu,
112 .entry_size = sizeof(struct rtable),
113 .entries = ATOMIC_INIT(0),
114};
115
104/* 116/*
105 * Initialize bogus route table used to keep netfilter happy. 117 * Initialize bogus route table used to keep netfilter happy.
106 * Currently, we fill in the PMTU entry because netfilter 118 * Currently, we fill in the PMTU entry because netfilter
@@ -117,6 +129,7 @@ void br_netfilter_rtable_init(struct net_bridge *br)
117 rt->u.dst.path = &rt->u.dst; 129 rt->u.dst.path = &rt->u.dst;
118 rt->u.dst.metrics[RTAX_MTU - 1] = 1500; 130 rt->u.dst.metrics[RTAX_MTU - 1] = 1500;
119 rt->u.dst.flags = DST_NOXFRM; 131 rt->u.dst.flags = DST_NOXFRM;
132 rt->u.dst.ops = &fake_dst_ops;
120} 133}
121 134
122static inline struct rtable *bridge_parent_rtable(const struct net_device *dev) 135static inline struct rtable *bridge_parent_rtable(const struct net_device *dev)
diff --git a/net/can/af_can.c b/net/can/af_can.c
index 7d4d2b3c137e..3dadb338addd 100644
--- a/net/can/af_can.c
+++ b/net/can/af_can.c
@@ -319,23 +319,52 @@ static struct dev_rcv_lists *find_dev_rcv_lists(struct net_device *dev)
319 return n ? d : NULL; 319 return n ? d : NULL;
320} 320}
321 321
322/**
323 * find_rcv_list - determine optimal filterlist inside device filter struct
324 * @can_id: pointer to CAN identifier of a given can_filter
325 * @mask: pointer to CAN mask of a given can_filter
326 * @d: pointer to the device filter struct
327 *
328 * Description:
329 * Returns the optimal filterlist to reduce the filter handling in the
330 * receive path. This function is called by service functions that need
331 * to register or unregister a can_filter in the filter lists.
332 *
333 * A filter matches in general, when
334 *
335 * <received_can_id> & mask == can_id & mask
336 *
337 * so every bit set in the mask (even CAN_EFF_FLAG, CAN_RTR_FLAG) describe
338 * relevant bits for the filter.
339 *
340 * The filter can be inverted (CAN_INV_FILTER bit set in can_id) or it can
341 * filter for error frames (CAN_ERR_FLAG bit set in mask). For error frames
342 * there is a special filterlist and a special rx path filter handling.
343 *
344 * Return:
345 * Pointer to optimal filterlist for the given can_id/mask pair.
346 * Constistency checked mask.
347 * Reduced can_id to have a preprocessed filter compare value.
348 */
322static struct hlist_head *find_rcv_list(canid_t *can_id, canid_t *mask, 349static struct hlist_head *find_rcv_list(canid_t *can_id, canid_t *mask,
323 struct dev_rcv_lists *d) 350 struct dev_rcv_lists *d)
324{ 351{
325 canid_t inv = *can_id & CAN_INV_FILTER; /* save flag before masking */ 352 canid_t inv = *can_id & CAN_INV_FILTER; /* save flag before masking */
326 353
327 /* filter error frames */ 354 /* filter for error frames in extra filterlist */
328 if (*mask & CAN_ERR_FLAG) { 355 if (*mask & CAN_ERR_FLAG) {
329 /* clear CAN_ERR_FLAG in list entry */ 356 /* clear CAN_ERR_FLAG in filter entry */
330 *mask &= CAN_ERR_MASK; 357 *mask &= CAN_ERR_MASK;
331 return &d->rx[RX_ERR]; 358 return &d->rx[RX_ERR];
332 } 359 }
333 360
334 /* ensure valid values in can_mask */ 361 /* with cleared CAN_ERR_FLAG we have a simple mask/value filterpair */
335 if (*mask & CAN_EFF_FLAG) 362
336 *mask &= (CAN_EFF_MASK | CAN_EFF_FLAG | CAN_RTR_FLAG); 363#define CAN_EFF_RTR_FLAGS (CAN_EFF_FLAG | CAN_RTR_FLAG)
337 else 364
338 *mask &= (CAN_SFF_MASK | CAN_RTR_FLAG); 365 /* ensure valid values in can_mask for 'SFF only' frame filtering */
366 if ((*mask & CAN_EFF_FLAG) && !(*can_id & CAN_EFF_FLAG))
367 *mask &= (CAN_SFF_MASK | CAN_EFF_RTR_FLAGS);
339 368
340 /* reduce condition testing at receive time */ 369 /* reduce condition testing at receive time */
341 *can_id &= *mask; 370 *can_id &= *mask;
@@ -348,15 +377,19 @@ static struct hlist_head *find_rcv_list(canid_t *can_id, canid_t *mask,
348 if (!(*mask)) 377 if (!(*mask))
349 return &d->rx[RX_ALL]; 378 return &d->rx[RX_ALL];
350 379
351 /* use extra filterset for the subscription of exactly *ONE* can_id */ 380 /* extra filterlists for the subscription of a single non-RTR can_id */
352 if (*can_id & CAN_EFF_FLAG) { 381 if (((*mask & CAN_EFF_RTR_FLAGS) == CAN_EFF_RTR_FLAGS)
353 if (*mask == (CAN_EFF_MASK | CAN_EFF_FLAG)) { 382 && !(*can_id & CAN_RTR_FLAG)) {
354 /* RFC: a use-case for hash-tables in the future? */ 383
355 return &d->rx[RX_EFF]; 384 if (*can_id & CAN_EFF_FLAG) {
385 if (*mask == (CAN_EFF_MASK | CAN_EFF_RTR_FLAGS)) {
386 /* RFC: a future use-case for hash-tables? */
387 return &d->rx[RX_EFF];
388 }
389 } else {
390 if (*mask == (CAN_SFF_MASK | CAN_EFF_RTR_FLAGS))
391 return &d->rx_sff[*can_id];
356 } 392 }
357 } else {
358 if (*mask == CAN_SFF_MASK)
359 return &d->rx_sff[*can_id];
360 } 393 }
361 394
362 /* default: filter via can_id/can_mask */ 395 /* default: filter via can_id/can_mask */
@@ -589,7 +622,10 @@ static int can_rcv_filter(struct dev_rcv_lists *d, struct sk_buff *skb)
589 } 622 }
590 } 623 }
591 624
592 /* check CAN_ID specific entries */ 625 /* check filterlists for single non-RTR can_ids */
626 if (can_id & CAN_RTR_FLAG)
627 return matches;
628
593 if (can_id & CAN_EFF_FLAG) { 629 if (can_id & CAN_EFF_FLAG) {
594 hlist_for_each_entry_rcu(r, n, &d->rx[RX_EFF], list) { 630 hlist_for_each_entry_rcu(r, n, &d->rx[RX_EFF], list) {
595 if (r->can_id == can_id) { 631 if (r->can_id == can_id) {
diff --git a/net/can/bcm.c b/net/can/bcm.c
index d0dd382001e2..da0d426c0ce4 100644
--- a/net/can/bcm.c
+++ b/net/can/bcm.c
@@ -64,10 +64,11 @@
64#define BCM_CAN_DLC_MASK 0x0F /* clean private flags in can_dlc by masking */ 64#define BCM_CAN_DLC_MASK 0x0F /* clean private flags in can_dlc by masking */
65 65
66/* get best masking value for can_rx_register() for a given single can_id */ 66/* get best masking value for can_rx_register() for a given single can_id */
67#define REGMASK(id) ((id & CAN_RTR_FLAG) | ((id & CAN_EFF_FLAG) ? \ 67#define REGMASK(id) ((id & CAN_EFF_FLAG) ? \
68 (CAN_EFF_MASK | CAN_EFF_FLAG) : CAN_SFF_MASK)) 68 (CAN_EFF_MASK | CAN_EFF_FLAG | CAN_RTR_FLAG) : \
69 (CAN_SFF_MASK | CAN_EFF_FLAG | CAN_RTR_FLAG))
69 70
70#define CAN_BCM_VERSION "20080415" 71#define CAN_BCM_VERSION CAN_VERSION
71static __initdata const char banner[] = KERN_INFO 72static __initdata const char banner[] = KERN_INFO
72 "can: broadcast manager protocol (rev " CAN_BCM_VERSION ")\n"; 73 "can: broadcast manager protocol (rev " CAN_BCM_VERSION ")\n";
73 74
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index d49ef8301b5b..65f7757465bd 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -149,7 +149,7 @@ void skb_under_panic(struct sk_buff *skb, int sz, void *here)
149 149
150void skb_truesize_bug(struct sk_buff *skb) 150void skb_truesize_bug(struct sk_buff *skb)
151{ 151{
152 printk(KERN_ERR "SKB BUG: Invalid truesize (%u) " 152 WARN(net_ratelimit(), KERN_ERR "SKB BUG: Invalid truesize (%u) "
153 "len=%u, sizeof(sk_buff)=%Zd\n", 153 "len=%u, sizeof(sk_buff)=%Zd\n",
154 skb->truesize, skb->len, sizeof(struct sk_buff)); 154 skb->truesize, skb->len, sizeof(struct sk_buff));
155} 155}
diff --git a/net/core/sock.c b/net/core/sock.c
index 341e39456952..edf7220889a4 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -2035,9 +2035,6 @@ static inline void release_proto_idx(struct proto *prot)
2035 2035
2036int proto_register(struct proto *prot, int alloc_slab) 2036int proto_register(struct proto *prot, int alloc_slab)
2037{ 2037{
2038 char *request_sock_slab_name = NULL;
2039 char *timewait_sock_slab_name;
2040
2041 if (alloc_slab) { 2038 if (alloc_slab) {
2042 prot->slab = kmem_cache_create(prot->name, prot->obj_size, 0, 2039 prot->slab = kmem_cache_create(prot->name, prot->obj_size, 0,
2043 SLAB_HWCACHE_ALIGN, NULL); 2040 SLAB_HWCACHE_ALIGN, NULL);
@@ -2051,12 +2048,12 @@ int proto_register(struct proto *prot, int alloc_slab)
2051 if (prot->rsk_prot != NULL) { 2048 if (prot->rsk_prot != NULL) {
2052 static const char mask[] = "request_sock_%s"; 2049 static const char mask[] = "request_sock_%s";
2053 2050
2054 request_sock_slab_name = kmalloc(strlen(prot->name) + sizeof(mask) - 1, GFP_KERNEL); 2051 prot->rsk_prot->slab_name = kmalloc(strlen(prot->name) + sizeof(mask) - 1, GFP_KERNEL);
2055 if (request_sock_slab_name == NULL) 2052 if (prot->rsk_prot->slab_name == NULL)
2056 goto out_free_sock_slab; 2053 goto out_free_sock_slab;
2057 2054
2058 sprintf(request_sock_slab_name, mask, prot->name); 2055 sprintf(prot->rsk_prot->slab_name, mask, prot->name);
2059 prot->rsk_prot->slab = kmem_cache_create(request_sock_slab_name, 2056 prot->rsk_prot->slab = kmem_cache_create(prot->rsk_prot->slab_name,
2060 prot->rsk_prot->obj_size, 0, 2057 prot->rsk_prot->obj_size, 0,
2061 SLAB_HWCACHE_ALIGN, NULL); 2058 SLAB_HWCACHE_ALIGN, NULL);
2062 2059
@@ -2070,14 +2067,14 @@ int proto_register(struct proto *prot, int alloc_slab)
2070 if (prot->twsk_prot != NULL) { 2067 if (prot->twsk_prot != NULL) {
2071 static const char mask[] = "tw_sock_%s"; 2068 static const char mask[] = "tw_sock_%s";
2072 2069
2073 timewait_sock_slab_name = kmalloc(strlen(prot->name) + sizeof(mask) - 1, GFP_KERNEL); 2070 prot->twsk_prot->twsk_slab_name = kmalloc(strlen(prot->name) + sizeof(mask) - 1, GFP_KERNEL);
2074 2071
2075 if (timewait_sock_slab_name == NULL) 2072 if (prot->twsk_prot->twsk_slab_name == NULL)
2076 goto out_free_request_sock_slab; 2073 goto out_free_request_sock_slab;
2077 2074
2078 sprintf(timewait_sock_slab_name, mask, prot->name); 2075 sprintf(prot->twsk_prot->twsk_slab_name, mask, prot->name);
2079 prot->twsk_prot->twsk_slab = 2076 prot->twsk_prot->twsk_slab =
2080 kmem_cache_create(timewait_sock_slab_name, 2077 kmem_cache_create(prot->twsk_prot->twsk_slab_name,
2081 prot->twsk_prot->twsk_obj_size, 2078 prot->twsk_prot->twsk_obj_size,
2082 0, SLAB_HWCACHE_ALIGN, 2079 0, SLAB_HWCACHE_ALIGN,
2083 NULL); 2080 NULL);
@@ -2093,14 +2090,14 @@ int proto_register(struct proto *prot, int alloc_slab)
2093 return 0; 2090 return 0;
2094 2091
2095out_free_timewait_sock_slab_name: 2092out_free_timewait_sock_slab_name:
2096 kfree(timewait_sock_slab_name); 2093 kfree(prot->twsk_prot->twsk_slab_name);
2097out_free_request_sock_slab: 2094out_free_request_sock_slab:
2098 if (prot->rsk_prot && prot->rsk_prot->slab) { 2095 if (prot->rsk_prot && prot->rsk_prot->slab) {
2099 kmem_cache_destroy(prot->rsk_prot->slab); 2096 kmem_cache_destroy(prot->rsk_prot->slab);
2100 prot->rsk_prot->slab = NULL; 2097 prot->rsk_prot->slab = NULL;
2101 } 2098 }
2102out_free_request_sock_slab_name: 2099out_free_request_sock_slab_name:
2103 kfree(request_sock_slab_name); 2100 kfree(prot->rsk_prot->slab_name);
2104out_free_sock_slab: 2101out_free_sock_slab:
2105 kmem_cache_destroy(prot->slab); 2102 kmem_cache_destroy(prot->slab);
2106 prot->slab = NULL; 2103 prot->slab = NULL;
@@ -2123,18 +2120,14 @@ void proto_unregister(struct proto *prot)
2123 } 2120 }
2124 2121
2125 if (prot->rsk_prot != NULL && prot->rsk_prot->slab != NULL) { 2122 if (prot->rsk_prot != NULL && prot->rsk_prot->slab != NULL) {
2126 const char *name = kmem_cache_name(prot->rsk_prot->slab);
2127
2128 kmem_cache_destroy(prot->rsk_prot->slab); 2123 kmem_cache_destroy(prot->rsk_prot->slab);
2129 kfree(name); 2124 kfree(prot->rsk_prot->slab_name);
2130 prot->rsk_prot->slab = NULL; 2125 prot->rsk_prot->slab = NULL;
2131 } 2126 }
2132 2127
2133 if (prot->twsk_prot != NULL && prot->twsk_prot->twsk_slab != NULL) { 2128 if (prot->twsk_prot != NULL && prot->twsk_prot->twsk_slab != NULL) {
2134 const char *name = kmem_cache_name(prot->twsk_prot->twsk_slab);
2135
2136 kmem_cache_destroy(prot->twsk_prot->twsk_slab); 2129 kmem_cache_destroy(prot->twsk_prot->twsk_slab);
2137 kfree(name); 2130 kfree(prot->twsk_prot->twsk_slab_name);
2138 prot->twsk_prot->twsk_slab = NULL; 2131 prot->twsk_prot->twsk_slab = NULL;
2139 } 2132 }
2140} 2133}
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
index ba85d8831893..fe3b4bdfd251 100644
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
@@ -1028,10 +1028,6 @@ unsigned int tcp_sync_mss(struct sock *sk, u32 pmtu)
1028 1028
1029/* Compute the current effective MSS, taking SACKs and IP options, 1029/* Compute the current effective MSS, taking SACKs and IP options,
1030 * and even PMTU discovery events into account. 1030 * and even PMTU discovery events into account.
1031 *
1032 * LARGESEND note: !tcp_urg_mode is overkill, only frames up to snd_up
1033 * cannot be large. However, taking into account rare use of URG, this
1034 * is not a big flaw.
1035 */ 1031 */
1036unsigned int tcp_current_mss(struct sock *sk, int large_allowed) 1032unsigned int tcp_current_mss(struct sock *sk, int large_allowed)
1037{ 1033{
@@ -1046,7 +1042,7 @@ unsigned int tcp_current_mss(struct sock *sk, int large_allowed)
1046 1042
1047 mss_now = tp->mss_cache; 1043 mss_now = tp->mss_cache;
1048 1044
1049 if (large_allowed && sk_can_gso(sk) && !tcp_urg_mode(tp)) 1045 if (large_allowed && sk_can_gso(sk))
1050 doing_tso = 1; 1046 doing_tso = 1;
1051 1047
1052 if (dst) { 1048 if (dst) {
@@ -1516,6 +1512,10 @@ static int tcp_mtu_probe(struct sock *sk)
1516 * send_head. This happens as incoming acks open up the remote 1512 * send_head. This happens as incoming acks open up the remote
1517 * window for us. 1513 * window for us.
1518 * 1514 *
1515 * LARGESEND note: !tcp_urg_mode is overkill, only frames between
1516 * snd_up-64k-mss .. snd_up cannot be large. However, taking into
1517 * account rare use of URG, this is not a big flaw.
1518 *
1519 * Returns 1, if no segments are in flight and we have queued segments, but 1519 * Returns 1, if no segments are in flight and we have queued segments, but
1520 * cannot send anything now because of SWS or another problem. 1520 * cannot send anything now because of SWS or another problem.
1521 */ 1521 */
@@ -1567,7 +1567,7 @@ static int tcp_write_xmit(struct sock *sk, unsigned int mss_now, int nonagle)
1567 } 1567 }
1568 1568
1569 limit = mss_now; 1569 limit = mss_now;
1570 if (tso_segs > 1) 1570 if (tso_segs > 1 && !tcp_urg_mode(tp))
1571 limit = tcp_mss_split_point(sk, skb, mss_now, 1571 limit = tcp_mss_split_point(sk, skb, mss_now,
1572 cwnd_quota); 1572 cwnd_quota);
1573 1573
@@ -1616,6 +1616,7 @@ void __tcp_push_pending_frames(struct sock *sk, unsigned int cur_mss,
1616 */ 1616 */
1617void tcp_push_one(struct sock *sk, unsigned int mss_now) 1617void tcp_push_one(struct sock *sk, unsigned int mss_now)
1618{ 1618{
1619 struct tcp_sock *tp = tcp_sk(sk);
1619 struct sk_buff *skb = tcp_send_head(sk); 1620 struct sk_buff *skb = tcp_send_head(sk);
1620 unsigned int tso_segs, cwnd_quota; 1621 unsigned int tso_segs, cwnd_quota;
1621 1622
@@ -1630,7 +1631,7 @@ void tcp_push_one(struct sock *sk, unsigned int mss_now)
1630 BUG_ON(!tso_segs); 1631 BUG_ON(!tso_segs);
1631 1632
1632 limit = mss_now; 1633 limit = mss_now;
1633 if (tso_segs > 1) 1634 if (tso_segs > 1 && !tcp_urg_mode(tp))
1634 limit = tcp_mss_split_point(sk, skb, mss_now, 1635 limit = tcp_mss_split_point(sk, skb, mss_now,
1635 cwnd_quota); 1636 cwnd_quota);
1636 1637
diff --git a/net/ipv4/tcp_vegas.c b/net/ipv4/tcp_vegas.c
index 14504dada116..7cd22262de3a 100644
--- a/net/ipv4/tcp_vegas.c
+++ b/net/ipv4/tcp_vegas.c
@@ -326,6 +326,8 @@ static void tcp_vegas_cong_avoid(struct sock *sk, u32 ack, u32 in_flight)
326 tp->snd_cwnd = 2; 326 tp->snd_cwnd = 2;
327 else if (tp->snd_cwnd > tp->snd_cwnd_clamp) 327 else if (tp->snd_cwnd > tp->snd_cwnd_clamp)
328 tp->snd_cwnd = tp->snd_cwnd_clamp; 328 tp->snd_cwnd = tp->snd_cwnd_clamp;
329
330 tp->snd_ssthresh = tcp_current_ssthresh(sk);
329 } 331 }
330 332
331 /* Wipe the slate clean for the next RTT. */ 333 /* Wipe the slate clean for the next RTT. */
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c
index 7fef8ea1f5ec..d254446b85b5 100644
--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
@@ -99,7 +99,7 @@ struct sta_info *sta_info_get(struct ieee80211_local *local, const u8 *addr)
99 99
100 sta = rcu_dereference(local->sta_hash[STA_HASH(addr)]); 100 sta = rcu_dereference(local->sta_hash[STA_HASH(addr)]);
101 while (sta) { 101 while (sta) {
102 if (compare_ether_addr(sta->sta.addr, addr) == 0) 102 if (memcmp(sta->sta.addr, addr, ETH_ALEN) == 0)
103 break; 103 break;
104 sta = rcu_dereference(sta->hnext); 104 sta = rcu_dereference(sta->hnext);
105 } 105 }
diff --git a/net/mac80211/wext.c b/net/mac80211/wext.c
index 742f811ca416..ab4ddba874be 100644
--- a/net/mac80211/wext.c
+++ b/net/mac80211/wext.c
@@ -271,6 +271,7 @@ static int ieee80211_ioctl_siwmode(struct net_device *dev,
271 __u32 *mode, char *extra) 271 __u32 *mode, char *extra)
272{ 272{
273 struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev); 273 struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev);
274 struct ieee80211_local *local = sdata->local;
274 int type; 275 int type;
275 276
276 if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) 277 if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN)
@@ -281,6 +282,13 @@ static int ieee80211_ioctl_siwmode(struct net_device *dev,
281 type = NL80211_IFTYPE_STATION; 282 type = NL80211_IFTYPE_STATION;
282 break; 283 break;
283 case IW_MODE_ADHOC: 284 case IW_MODE_ADHOC:
285 /* Setting ad-hoc mode on non ibss channel is not
286 * supported.
287 */
288 if (local->oper_channel &&
289 (local->oper_channel->flags & IEEE80211_CHAN_NO_IBSS))
290 return -EOPNOTSUPP;
291
284 type = NL80211_IFTYPE_ADHOC; 292 type = NL80211_IFTYPE_ADHOC;
285 break; 293 break;
286 case IW_MODE_REPEAT: 294 case IW_MODE_REPEAT:
diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c
index 622d7c671cb7..233fdd2d7d21 100644
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
@@ -305,9 +305,7 @@ void nf_conntrack_hash_insert(struct nf_conn *ct)
305 hash = hash_conntrack(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple); 305 hash = hash_conntrack(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple);
306 repl_hash = hash_conntrack(&ct->tuplehash[IP_CT_DIR_REPLY].tuple); 306 repl_hash = hash_conntrack(&ct->tuplehash[IP_CT_DIR_REPLY].tuple);
307 307
308 spin_lock_bh(&nf_conntrack_lock);
309 __nf_conntrack_hash_insert(ct, hash, repl_hash); 308 __nf_conntrack_hash_insert(ct, hash, repl_hash);
310 spin_unlock_bh(&nf_conntrack_lock);
311} 309}
312EXPORT_SYMBOL_GPL(nf_conntrack_hash_insert); 310EXPORT_SYMBOL_GPL(nf_conntrack_hash_insert);
313 311
diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c
index a040d46f85d6..5f4a6516b3b6 100644
--- a/net/netfilter/nf_conntrack_netlink.c
+++ b/net/netfilter/nf_conntrack_netlink.c
@@ -1090,7 +1090,7 @@ ctnetlink_create_conntrack(struct nlattr *cda[],
1090 struct nf_conn_help *help; 1090 struct nf_conn_help *help;
1091 struct nf_conntrack_helper *helper; 1091 struct nf_conntrack_helper *helper;
1092 1092
1093 ct = nf_conntrack_alloc(&init_net, otuple, rtuple, GFP_KERNEL); 1093 ct = nf_conntrack_alloc(&init_net, otuple, rtuple, GFP_ATOMIC);
1094 if (ct == NULL || IS_ERR(ct)) 1094 if (ct == NULL || IS_ERR(ct))
1095 return -ENOMEM; 1095 return -ENOMEM;
1096 1096
@@ -1138,7 +1138,7 @@ ctnetlink_create_conntrack(struct nlattr *cda[],
1138 } 1138 }
1139 } 1139 }
1140 1140
1141 nf_ct_acct_ext_add(ct, GFP_KERNEL); 1141 nf_ct_acct_ext_add(ct, GFP_ATOMIC);
1142 1142
1143#if defined(CONFIG_NF_CONNTRACK_MARK) 1143#if defined(CONFIG_NF_CONNTRACK_MARK)
1144 if (cda[CTA_MARK]) 1144 if (cda[CTA_MARK])
@@ -1212,13 +1212,14 @@ ctnetlink_new_conntrack(struct sock *ctnl, struct sk_buff *skb,
1212 atomic_inc(&master_ct->ct_general.use); 1212 atomic_inc(&master_ct->ct_general.use);
1213 } 1213 }
1214 1214
1215 spin_unlock_bh(&nf_conntrack_lock);
1216 err = -ENOENT; 1215 err = -ENOENT;
1217 if (nlh->nlmsg_flags & NLM_F_CREATE) 1216 if (nlh->nlmsg_flags & NLM_F_CREATE)
1218 err = ctnetlink_create_conntrack(cda, 1217 err = ctnetlink_create_conntrack(cda,
1219 &otuple, 1218 &otuple,
1220 &rtuple, 1219 &rtuple,
1221 master_ct); 1220 master_ct);
1221 spin_unlock_bh(&nf_conntrack_lock);
1222
1222 if (err < 0 && master_ct) 1223 if (err < 0 && master_ct)
1223 nf_ct_put(master_ct); 1224 nf_ct_put(master_ct);
1224 1225
diff --git a/net/netfilter/xt_socket.c b/net/netfilter/xt_socket.c
index 02a8fed21082..1acc089be7e9 100644
--- a/net/netfilter/xt_socket.c
+++ b/net/netfilter/xt_socket.c
@@ -141,7 +141,7 @@ socket_mt(const struct sk_buff *skb, const struct xt_match_param *par)
141 sk = nf_tproxy_get_sock_v4(dev_net(skb->dev), protocol, 141 sk = nf_tproxy_get_sock_v4(dev_net(skb->dev), protocol,
142 saddr, daddr, sport, dport, par->in, false); 142 saddr, daddr, sport, dport, par->in, false);
143 if (sk != NULL) { 143 if (sk != NULL) {
144 bool wildcard = (inet_sk(sk)->rcv_saddr == 0); 144 bool wildcard = (sk->sk_state != TCP_TIME_WAIT && inet_sk(sk)->rcv_saddr == 0);
145 145
146 nf_tproxy_put_sock(sk); 146 nf_tproxy_put_sock(sk);
147 if (wildcard) 147 if (wildcard)
diff --git a/net/netlabel/netlabel_unlabeled.c b/net/netlabel/netlabel_unlabeled.c
index e8a5c32b0f10..90c8506a0aac 100644
--- a/net/netlabel/netlabel_unlabeled.c
+++ b/net/netlabel/netlabel_unlabeled.c
@@ -574,9 +574,10 @@ static int netlbl_unlhsh_remove_addr4(struct net *net,
574 list_entry = netlbl_af4list_remove(addr->s_addr, mask->s_addr, 574 list_entry = netlbl_af4list_remove(addr->s_addr, mask->s_addr,
575 &iface->addr4_list); 575 &iface->addr4_list);
576 spin_unlock(&netlbl_unlhsh_lock); 576 spin_unlock(&netlbl_unlhsh_lock);
577 if (list_entry == NULL) 577 if (list_entry != NULL)
578 entry = netlbl_unlhsh_addr4_entry(list_entry);
579 else
578 ret_val = -ENOENT; 580 ret_val = -ENOENT;
579 entry = netlbl_unlhsh_addr4_entry(list_entry);
580 581
581 audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_STCDEL, 582 audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_STCDEL,
582 audit_info); 583 audit_info);
@@ -634,9 +635,10 @@ static int netlbl_unlhsh_remove_addr6(struct net *net,
634 spin_lock(&netlbl_unlhsh_lock); 635 spin_lock(&netlbl_unlhsh_lock);
635 list_entry = netlbl_af6list_remove(addr, mask, &iface->addr6_list); 636 list_entry = netlbl_af6list_remove(addr, mask, &iface->addr6_list);
636 spin_unlock(&netlbl_unlhsh_lock); 637 spin_unlock(&netlbl_unlhsh_lock);
637 if (list_entry == NULL) 638 if (list_entry != NULL)
639 entry = netlbl_unlhsh_addr6_entry(list_entry);
640 else
638 ret_val = -ENOENT; 641 ret_val = -ENOENT;
639 entry = netlbl_unlhsh_addr6_entry(list_entry);
640 642
641 audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_STCDEL, 643 audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_STCDEL,
642 audit_info); 644 audit_info);
diff --git a/net/phonet/pn_dev.c b/net/phonet/pn_dev.c
index 53be9fc82aaa..f93ff8ef47d0 100644
--- a/net/phonet/pn_dev.c
+++ b/net/phonet/pn_dev.c
@@ -115,7 +115,7 @@ int phonet_address_del(struct net_device *dev, u8 addr)
115 pnd = __phonet_get(dev); 115 pnd = __phonet_get(dev);
116 if (!pnd || !test_and_clear_bit(addr >> 2, pnd->addrs)) 116 if (!pnd || !test_and_clear_bit(addr >> 2, pnd->addrs))
117 err = -EADDRNOTAVAIL; 117 err = -EADDRNOTAVAIL;
118 if (bitmap_empty(pnd->addrs, 64)) 118 else if (bitmap_empty(pnd->addrs, 64))
119 __phonet_device_free(pnd); 119 __phonet_device_free(pnd);
120 spin_unlock_bh(&pndevs.lock); 120 spin_unlock_bh(&pndevs.lock);
121 return err; 121 return err;
diff --git a/net/phonet/pn_netlink.c b/net/phonet/pn_netlink.c
index b1770d66bc8d..242fe8f8c322 100644
--- a/net/phonet/pn_netlink.c
+++ b/net/phonet/pn_netlink.c
@@ -123,6 +123,7 @@ nla_put_failure:
123 123
124static int getaddr_dumpit(struct sk_buff *skb, struct netlink_callback *cb) 124static int getaddr_dumpit(struct sk_buff *skb, struct netlink_callback *cb)
125{ 125{
126 struct net *net = sock_net(skb->sk);
126 struct phonet_device *pnd; 127 struct phonet_device *pnd;
127 int dev_idx = 0, dev_start_idx = cb->args[0]; 128 int dev_idx = 0, dev_start_idx = cb->args[0];
128 int addr_idx = 0, addr_start_idx = cb->args[1]; 129 int addr_idx = 0, addr_start_idx = cb->args[1];
@@ -131,6 +132,8 @@ static int getaddr_dumpit(struct sk_buff *skb, struct netlink_callback *cb)
131 list_for_each_entry(pnd, &pndevs.list, list) { 132 list_for_each_entry(pnd, &pndevs.list, list) {
132 u8 addr; 133 u8 addr;
133 134
135 if (!net_eq(dev_net(pnd->netdev), net))
136 continue;
134 if (dev_idx > dev_start_idx) 137 if (dev_idx > dev_start_idx)
135 addr_start_idx = 0; 138 addr_start_idx = 0;
136 if (dev_idx++ < dev_start_idx) 139 if (dev_idx++ < dev_start_idx)
diff --git a/net/rose/af_rose.c b/net/rose/af_rose.c
index a7f1ce11bc22..0c1cc7612800 100644
--- a/net/rose/af_rose.c
+++ b/net/rose/af_rose.c
@@ -1072,6 +1072,10 @@ static int rose_sendmsg(struct kiocb *iocb, struct socket *sock,
1072 unsigned char *asmptr; 1072 unsigned char *asmptr;
1073 int n, size, qbit = 0; 1073 int n, size, qbit = 0;
1074 1074
1075 /* ROSE empty frame has no meaning : don't send */
1076 if (len == 0)
1077 return 0;
1078
1075 if (msg->msg_flags & ~(MSG_DONTWAIT|MSG_EOR|MSG_CMSG_COMPAT)) 1079 if (msg->msg_flags & ~(MSG_DONTWAIT|MSG_EOR|MSG_CMSG_COMPAT))
1076 return -EINVAL; 1080 return -EINVAL;
1077 1081
@@ -1265,6 +1269,12 @@ static int rose_recvmsg(struct kiocb *iocb, struct socket *sock,
1265 skb_reset_transport_header(skb); 1269 skb_reset_transport_header(skb);
1266 copied = skb->len; 1270 copied = skb->len;
1267 1271
1272 /* ROSE empty frame has no meaning : ignore it */
1273 if (copied == 0) {
1274 skb_free_datagram(sk, skb);
1275 return copied;
1276 }
1277
1268 if (copied > size) { 1278 if (copied > size) {
1269 copied = size; 1279 copied = size;
1270 msg->msg_flags |= MSG_TRUNC; 1280 msg->msg_flags |= MSG_TRUNC;
diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c
index 95293f549e9c..a1951dcc5776 100644
--- a/net/sunrpc/svcsock.c
+++ b/net/sunrpc/svcsock.c
@@ -1183,7 +1183,11 @@ int svc_addsock(struct svc_serv *serv,
1183 else if (so->state > SS_UNCONNECTED) 1183 else if (so->state > SS_UNCONNECTED)
1184 err = -EISCONN; 1184 err = -EISCONN;
1185 else { 1185 else {
1186 svsk = svc_setup_socket(serv, so, &err, SVC_SOCK_DEFAULTS); 1186 if (!try_module_get(THIS_MODULE))
1187 err = -ENOENT;
1188 else
1189 svsk = svc_setup_socket(serv, so, &err,
1190 SVC_SOCK_DEFAULTS);
1187 if (svsk) { 1191 if (svsk) {
1188 struct sockaddr_storage addr; 1192 struct sockaddr_storage addr;
1189 struct sockaddr *sin = (struct sockaddr *)&addr; 1193 struct sockaddr *sin = (struct sockaddr *)&addr;
@@ -1196,7 +1200,8 @@ int svc_addsock(struct svc_serv *serv,
1196 spin_unlock_bh(&serv->sv_lock); 1200 spin_unlock_bh(&serv->sv_lock);
1197 svc_xprt_received(&svsk->sk_xprt); 1201 svc_xprt_received(&svsk->sk_xprt);
1198 err = 0; 1202 err = 0;
1199 } 1203 } else
1204 module_put(THIS_MODULE);
1200 } 1205 }
1201 if (err) { 1206 if (err) {
1202 sockfd_put(so); 1207 sockfd_put(so);
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
index eb90f77bb0e2..66d5ac4773ab 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -1343,6 +1343,7 @@ static int unix_dgram_sendmsg(struct kiocb *kiocb, struct socket *sock,
1343 1343
1344 if (NULL == siocb->scm) 1344 if (NULL == siocb->scm)
1345 siocb->scm = &tmp_scm; 1345 siocb->scm = &tmp_scm;
1346 wait_for_unix_gc();
1346 err = scm_send(sock, msg, siocb->scm); 1347 err = scm_send(sock, msg, siocb->scm);
1347 if (err < 0) 1348 if (err < 0)
1348 return err; 1349 return err;
@@ -1493,6 +1494,7 @@ static int unix_stream_sendmsg(struct kiocb *kiocb, struct socket *sock,
1493 1494
1494 if (NULL == siocb->scm) 1495 if (NULL == siocb->scm)
1495 siocb->scm = &tmp_scm; 1496 siocb->scm = &tmp_scm;
1497 wait_for_unix_gc();
1496 err = scm_send(sock, msg, siocb->scm); 1498 err = scm_send(sock, msg, siocb->scm);
1497 if (err < 0) 1499 if (err < 0)
1498 return err; 1500 return err;
diff --git a/net/unix/garbage.c b/net/unix/garbage.c
index 6d4a9a8de5ef..abb3ab34cb1e 100644
--- a/net/unix/garbage.c
+++ b/net/unix/garbage.c
@@ -80,6 +80,7 @@
80#include <linux/file.h> 80#include <linux/file.h>
81#include <linux/proc_fs.h> 81#include <linux/proc_fs.h>
82#include <linux/mutex.h> 82#include <linux/mutex.h>
83#include <linux/wait.h>
83 84
84#include <net/sock.h> 85#include <net/sock.h>
85#include <net/af_unix.h> 86#include <net/af_unix.h>
@@ -91,6 +92,7 @@
91static LIST_HEAD(gc_inflight_list); 92static LIST_HEAD(gc_inflight_list);
92static LIST_HEAD(gc_candidates); 93static LIST_HEAD(gc_candidates);
93static DEFINE_SPINLOCK(unix_gc_lock); 94static DEFINE_SPINLOCK(unix_gc_lock);
95static DECLARE_WAIT_QUEUE_HEAD(unix_gc_wait);
94 96
95unsigned int unix_tot_inflight; 97unsigned int unix_tot_inflight;
96 98
@@ -266,12 +268,16 @@ static void inc_inflight_move_tail(struct unix_sock *u)
266 list_move_tail(&u->link, &gc_candidates); 268 list_move_tail(&u->link, &gc_candidates);
267} 269}
268 270
269/* The external entry point: unix_gc() */ 271static bool gc_in_progress = false;
270 272
271void unix_gc(void) 273void wait_for_unix_gc(void)
272{ 274{
273 static bool gc_in_progress = false; 275 wait_event(unix_gc_wait, gc_in_progress == false);
276}
274 277
278/* The external entry point: unix_gc() */
279void unix_gc(void)
280{
275 struct unix_sock *u; 281 struct unix_sock *u;
276 struct unix_sock *next; 282 struct unix_sock *next;
277 struct sk_buff_head hitlist; 283 struct sk_buff_head hitlist;
@@ -376,6 +382,7 @@ void unix_gc(void)
376 /* All candidates should have been detached by now. */ 382 /* All candidates should have been detached by now. */
377 BUG_ON(!list_empty(&gc_candidates)); 383 BUG_ON(!list_empty(&gc_candidates));
378 gc_in_progress = false; 384 gc_in_progress = false;
385 wake_up(&unix_gc_wait);
379 386
380 out: 387 out:
381 spin_unlock(&unix_gc_lock); 388 spin_unlock(&unix_gc_lock);
diff --git a/net/wireless/reg.c b/net/wireless/reg.c
index 626dbb688499..eb3b1a9f9b12 100644
--- a/net/wireless/reg.c
+++ b/net/wireless/reg.c
@@ -343,9 +343,9 @@ static int ignore_request(struct wiphy *wiphy, enum reg_set_by set_by,
343 return 0; 343 return 0;
344 return -EALREADY; 344 return -EALREADY;
345 } 345 }
346 if (WARN_ON(!is_alpha2_set(alpha2) || !is_an_alpha2(alpha2)), 346 if (WARN(!is_alpha2_set(alpha2) || !is_an_alpha2(alpha2),
347 "Invalid Country IE regulatory hint passed " 347 "Invalid Country IE regulatory hint passed "
348 "to the wireless core\n") 348 "to the wireless core\n"))
349 return -EINVAL; 349 return -EINVAL;
350 /* We ignore Country IE hints for now, as we haven't yet 350 /* We ignore Country IE hints for now, as we haven't yet
351 * added the dot11MultiDomainCapabilityEnabled flag 351 * added the dot11MultiDomainCapabilityEnabled flag
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c
index 058f04f54b90..fb216c9adf86 100644
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
@@ -817,6 +817,7 @@ int xfrm_policy_flush(u8 type, struct xfrm_audit *audit_info)
817 continue; 817 continue;
818 hlist_del(&pol->bydst); 818 hlist_del(&pol->bydst);
819 hlist_del(&pol->byidx); 819 hlist_del(&pol->byidx);
820 list_del(&pol->walk.all);
820 write_unlock_bh(&xfrm_policy_lock); 821 write_unlock_bh(&xfrm_policy_lock);
821 822
822 xfrm_audit_policy_delete(pol, 1, audit_info->loginuid, 823 xfrm_audit_policy_delete(pol, 1, audit_info->loginuid,