aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-06-16 05:27:45 -0400
committerIngo Molnar <mingo@elte.hu>2008-06-16 05:27:45 -0400
commitd939d2851fd12568e2eabb2916769e8a57ba5c89 (patch)
treef3158a5ddd41541a61126f9e48de1ce89c632f64 /arch
parent9f5314fb4d556d3132c784d0df47352b2830ca53 (diff)
parent066519068ad2fbe98c7f45552b1f592903a9c8c8 (diff)
Merge branch 'linus' into x86/irq
Diffstat (limited to 'arch')
-rw-r--r--arch/alpha/kernel/init_task.c1
-rw-r--r--arch/arm/boot/compressed/head-xscale.S4
-rw-r--r--arch/arm/common/locomo.c66
-rw-r--r--arch/arm/kernel/armksyms.c2
-rw-r--r--arch/arm/kernel/arthur.c2
-rw-r--r--arch/arm/kernel/init_task.c1
-rw-r--r--arch/arm/mach-at91/at91sam9261_devices.c4
-rw-r--r--arch/arm/mach-at91/at91sam9rl_devices.c21
-rw-r--r--arch/arm/mach-at91/at91x40.c18
-rw-r--r--arch/arm/mach-integrator/impd1.c3
-rw-r--r--arch/arm/mach-integrator/pci_v3.c2
-rw-r--r--arch/arm/mach-omap1/board-palmte.c12
-rw-r--r--arch/arm/mach-omap1/board-palmz71.c2
-rw-r--r--arch/arm/mach-omap2/board-2430sdp.c1
-rw-r--r--arch/arm/mach-omap2/board-apollon.c1
-rw-r--r--arch/arm/mach-omap2/board-generic.c1
-rw-r--r--arch/arm/mach-omap2/board-h4.c1
-rw-r--r--arch/arm/mach-omap2/clock.c4
-rw-r--r--arch/arm/mach-omap2/clock34xx.h21
-rw-r--r--arch/arm/mach-omap2/cm-regbits-34xx.h1
-rw-r--r--arch/arm/mach-omap2/mailbox.c25
-rw-r--r--arch/arm/mach-omap2/prm.h2
-rw-r--r--arch/arm/mach-orion5x/dns323-setup.c2
-rw-r--r--arch/arm/mach-orion5x/kurobox_pro-setup.c2
-rw-r--r--arch/arm/mach-pxa/cm-x270.c2
-rw-r--r--arch/arm/mach-pxa/colibri.c3
-rw-r--r--arch/arm/mach-pxa/em-x270.c2
-rw-r--r--arch/arm/mach-pxa/ssp.c2
-rw-r--r--arch/arm/mach-pxa/tosa.c4
-rw-r--r--arch/arm/mach-s3c2410/mach-bast.c2
-rw-r--r--arch/arm/mach-s3c2410/mach-vr1000.c4
-rw-r--r--arch/arm/mach-sa1100/collie.c42
-rw-r--r--arch/arm/mm/proc-arm925.S2
-rw-r--r--arch/arm/mm/proc-arm926.S2
-rw-r--r--arch/arm/mm/proc-arm940.S2
-rw-r--r--arch/arm/mm/proc-arm946.S2
-rw-r--r--arch/arm/plat-omap/clock.c11
-rw-r--r--arch/arm/plat-omap/dma.c2
-rw-r--r--arch/arm/plat-omap/mailbox.c1
-rw-r--r--arch/arm/plat-s3c24xx/s3c244x.c1
-rw-r--r--arch/avr32/configs/atngw100_defconfig336
-rw-r--r--arch/avr32/configs/atstk1002_defconfig241
-rw-r--r--arch/avr32/configs/atstk1003_defconfig158
-rw-r--r--arch/avr32/configs/atstk1004_defconfig110
-rw-r--r--arch/avr32/kernel/avr32_ksyms.c4
-rw-r--r--arch/avr32/kernel/init_task.c1
-rw-r--r--arch/avr32/mach-at32ap/cpufreq.c3
-rw-r--r--arch/blackfin/Kconfig12
-rw-r--r--arch/blackfin/configs/BF527-EZKIT_defconfig348
-rw-r--r--arch/blackfin/configs/BF548-EZKIT_defconfig416
-rw-r--r--arch/blackfin/configs/IP0X_defconfig2
-rw-r--r--arch/blackfin/kernel/bfin_dma_5xx.c11
-rw-r--r--arch/blackfin/kernel/bfin_gpio.c19
-rw-r--r--arch/blackfin/kernel/bfin_ksyms.c2
-rw-r--r--arch/blackfin/kernel/gptimers.c2
-rw-r--r--arch/blackfin/kernel/init_task.c1
-rw-r--r--arch/blackfin/kernel/traps.c24
-rw-r--r--arch/blackfin/lib/checksum.c21
-rw-r--r--arch/blackfin/lib/ins.S21
-rw-r--r--arch/blackfin/lib/outs.S16
-rw-r--r--arch/blackfin/mach-bf527/boards/ezkit.c15
-rw-r--r--arch/blackfin/mach-bf533/boards/ezkit.c6
-rw-r--r--arch/blackfin/mach-bf533/boards/stamp.c34
-rw-r--r--arch/blackfin/mach-bf537/boards/Makefile2
-rw-r--r--arch/blackfin/mach-bf537/boards/led.S183
-rw-r--r--arch/blackfin/mach-bf537/boards/stamp.c9
-rw-r--r--arch/blackfin/mach-bf548/boards/Makefile2
-rw-r--r--arch/blackfin/mach-bf548/boards/cm_bf548.c2
-rw-r--r--arch/blackfin/mach-bf548/boards/ezkit.c10
-rw-r--r--arch/blackfin/mach-bf548/boards/led.S172
-rw-r--r--arch/blackfin/mach-bf561/boards/ezkit.c9
-rw-r--r--arch/cris/kernel/process.c1
-rw-r--r--arch/frv/kernel/cmode.S2
-rw-r--r--arch/frv/kernel/init_task.c1
-rw-r--r--arch/frv/kernel/sleep.S2
-rw-r--r--arch/frv/mb93090-mb00/pci-dma-nommu.c2
-rw-r--r--arch/frv/mm/init.c3
-rw-r--r--arch/h8300/kernel/init_task.c1
-rw-r--r--arch/ia64/Kconfig13
-rw-r--r--arch/ia64/Makefile2
-rw-r--r--arch/ia64/ia32/ia32_support.c10
-rw-r--r--arch/ia64/kernel/acpi.c19
-rw-r--r--arch/ia64/kernel/entry.S26
-rw-r--r--arch/ia64/kernel/init_task.c1
-rw-r--r--arch/ia64/kernel/ivt.S84
-rw-r--r--arch/ia64/kernel/minstate.h46
-rw-r--r--arch/ia64/kernel/palinfo.c6
-rw-r--r--arch/ia64/kernel/patch.c23
-rw-r--r--arch/ia64/kernel/perfmon.c16
-rw-r--r--arch/ia64/kernel/process.c25
-rw-r--r--arch/ia64/kernel/sal.c11
-rw-r--r--arch/ia64/kernel/setup.c40
-rw-r--r--arch/ia64/kernel/vmlinux.lds.S7
-rw-r--r--arch/ia64/kvm/Makefile3
-rw-r--r--arch/ia64/kvm/memcpy.S1
-rw-r--r--arch/ia64/kvm/memset.S1
-rw-r--r--arch/ia64/kvm/mmio.c3
-rw-r--r--arch/ia64/mm/init.c25
-rw-r--r--arch/ia64/uv/Makefile12
-rw-r--r--arch/ia64/uv/kernel/Makefile13
-rw-r--r--arch/ia64/uv/kernel/machvec.c11
-rw-r--r--arch/ia64/uv/kernel/setup.c98
-rw-r--r--arch/m32r/kernel/init_task.c1
-rw-r--r--arch/m68k/Kconfig9
-rw-r--r--arch/m68k/configs/amiga_defconfig161
-rw-r--r--arch/m68k/configs/apollo_defconfig142
-rw-r--r--arch/m68k/configs/atari_defconfig145
-rw-r--r--arch/m68k/configs/bvme6000_defconfig140
-rw-r--r--arch/m68k/configs/hp300_defconfig144
-rw-r--r--arch/m68k/configs/mac_defconfig146
-rw-r--r--arch/m68k/configs/multi_defconfig1269
-rw-r--r--arch/m68k/configs/mvme147_defconfig140
-rw-r--r--arch/m68k/configs/mvme16x_defconfig140
-rw-r--r--arch/m68k/configs/q40_defconfig161
-rw-r--r--arch/m68k/configs/sun3_defconfig142
-rw-r--r--arch/m68k/configs/sun3x_defconfig142
-rw-r--r--arch/m68k/kernel/head.S2
-rw-r--r--arch/m68k/kernel/process.c1
-rw-r--r--arch/m68k/kernel/setup.c15
-rw-r--r--arch/m68k/lib/string.c6
-rw-r--r--arch/m68knommu/Kconfig3
-rw-r--r--arch/m68knommu/kernel/init_task.c1
-rw-r--r--arch/m68knommu/kernel/vmlinux.lds.S10
-rw-r--r--arch/m68knommu/platform/coldfire/timers.c8
-rw-r--r--arch/mips/au1000/common/Makefile7
-rw-r--r--arch/mips/au1000/common/au1xxx_irqmap.c145
-rw-r--r--arch/mips/au1000/common/clocks.c25
-rw-r--r--arch/mips/au1000/common/cputable.c5
-rw-r--r--arch/mips/au1000/common/dbdma.c400
-rw-r--r--arch/mips/au1000/common/dbg_io.c32
-rw-r--r--arch/mips/au1000/common/dma.c56
-rw-r--r--arch/mips/au1000/common/gpio.c6
-rw-r--r--arch/mips/au1000/common/irq.c6
-rw-r--r--arch/mips/au1000/common/pci.c11
-rw-r--r--arch/mips/au1000/common/platform.c11
-rw-r--r--arch/mips/au1000/common/power.c157
-rw-r--r--arch/mips/au1000/common/prom.c21
-rw-r--r--arch/mips/au1000/common/puts.c35
-rw-r--r--arch/mips/au1000/common/reset.c33
-rw-r--r--arch/mips/au1000/common/setup.c60
-rw-r--r--arch/mips/au1000/common/time.c78
-rw-r--r--arch/mips/au1000/db1x00/Makefile8
-rw-r--r--arch/mips/au1000/db1x00/board_setup.c61
-rw-r--r--arch/mips/au1000/db1x00/init.c11
-rw-r--r--arch/mips/au1000/db1x00/irqmap.c22
-rw-r--r--arch/mips/au1000/mtx-1/Makefile3
-rw-r--r--arch/mips/au1000/mtx-1/board_setup.c63
-rw-r--r--arch/mips/au1000/mtx-1/init.c11
-rw-r--r--arch/mips/au1000/mtx-1/irqmap.c18
-rw-r--r--arch/mips/au1000/mtx-1/platform.c3
-rw-r--r--arch/mips/au1000/pb1000/Makefile8
-rw-r--r--arch/mips/au1000/pb1000/board_setup.c117
-rw-r--r--arch/mips/au1000/pb1000/init.c20
-rw-r--r--arch/mips/au1000/pb1100/Makefile6
-rw-r--r--arch/mips/au1000/pb1100/board_setup.c50
-rw-r--r--arch/mips/au1000/pb1100/init.c11
-rw-r--r--arch/mips/au1000/pb1100/irqmap.c10
-rw-r--r--arch/mips/au1000/pb1200/Makefile2
-rw-r--r--arch/mips/au1000/pb1200/board_setup.c139
-rw-r--r--arch/mips/au1000/pb1200/init.c18
-rw-r--r--arch/mips/au1000/pb1200/irqmap.c66
-rw-r--r--arch/mips/au1000/pb1500/Makefile6
-rw-r--r--arch/mips/au1000/pb1500/board_setup.c46
-rw-r--r--arch/mips/au1000/pb1500/init.c20
-rw-r--r--arch/mips/au1000/pb1500/irqmap.c6
-rw-r--r--arch/mips/au1000/pb1550/Makefile7
-rw-r--r--arch/mips/au1000/pb1550/board_setup.c16
-rw-r--r--arch/mips/au1000/pb1550/init.c20
-rw-r--r--arch/mips/au1000/pb1550/irqmap.c6
-rw-r--r--arch/mips/au1000/xxs1500/Makefile3
-rw-r--r--arch/mips/au1000/xxs1500/board_setup.c39
-rw-r--r--arch/mips/au1000/xxs1500/init.c11
-rw-r--r--arch/mips/au1000/xxs1500/irqmap.c2
-rw-r--r--arch/mips/emma2rh/markeins/setup.c7
-rw-r--r--arch/mips/kernel/Makefile3
-rw-r--r--arch/mips/kernel/cpu-bugs64.c2
-rw-r--r--arch/mips/kernel/init_task.c1
-rw-r--r--arch/mips/kernel/irixelf.c11
-rw-r--r--arch/mips/kernel/kspd.c5
-rw-r--r--arch/mips/kernel/rtlx.c65
-rw-r--r--arch/mips/kernel/setup.c1
-rw-r--r--arch/mips/kernel/smp.c4
-rw-r--r--arch/mips/kernel/traps.c16
-rw-r--r--arch/mips/kernel/vpe.c29
-rw-r--r--arch/mips/mips-boards/generic/time.c19
-rw-r--r--arch/mips/mm/highmem.c1
-rw-r--r--arch/mips/mm/page.c10
-rw-r--r--arch/mips/mm/tlbex.c3
-rw-r--r--arch/mips/oprofile/op_model_mipsxx.c6
-rw-r--r--arch/mips/pci/fixup-au1000.c7
-rw-r--r--arch/mips/pci/ops-au1000.c115
-rw-r--r--arch/mips/pci/ops-bridge.c20
-rw-r--r--arch/mips/pci/pci-ip27.c8
-rw-r--r--arch/mips/pmc-sierra/msp71xx/msp_hwbutton.c5
-rw-r--r--arch/mips/sgi-ip27/ip27-init.c22
-rw-r--r--arch/mips/sgi-ip27/ip27-memory.c117
-rw-r--r--arch/mips/sgi-ip27/ip27-smp.c5
-rw-r--r--arch/mips/sgi-ip27/ip27-timer.c31
-rw-r--r--arch/mn10300/boot/install.sh16
-rw-r--r--arch/mn10300/kernel/init_task.c1
-rw-r--r--arch/parisc/kernel/Makefile3
-rw-r--r--arch/parisc/kernel/entry.S46
-rw-r--r--arch/parisc/kernel/head.S3
-rw-r--r--arch/parisc/kernel/init_task.c1
-rw-r--r--arch/parisc/kernel/inventory.c2
-rw-r--r--arch/parisc/kernel/pacache.S70
-rw-r--r--arch/parisc/kernel/parisc_ksyms.c3
-rw-r--r--arch/parisc/kernel/perf_asm.S2
-rw-r--r--arch/parisc/kernel/signal32.c4
-rw-r--r--arch/parisc/kernel/traps.c2
-rw-r--r--arch/parisc/kernel/unaligned.c5
-rw-r--r--arch/parisc/kernel/vmlinux.lds.S1
-rw-r--r--arch/parisc/lib/memcpy.c2
-rw-r--r--arch/parisc/mm/init.c5
-rw-r--r--arch/powerpc/boot/.gitignore8
-rw-r--r--arch/powerpc/boot/4xx.c21
-rw-r--r--arch/powerpc/boot/Makefile10
-rw-r--r--arch/powerpc/boot/dts/mpc8377_mds.dts35
-rw-r--r--arch/powerpc/boot/dts/mpc8610_hpcd.dts70
-rw-r--r--arch/powerpc/boot/dts/sbc8548.dts94
-rw-r--r--arch/powerpc/configs/chrp32_defconfig164
-rw-r--r--arch/powerpc/configs/g5_defconfig226
-rw-r--r--arch/powerpc/configs/iseries_defconfig146
-rw-r--r--arch/powerpc/configs/mpc8610_hpcd_defconfig95
-rw-r--r--arch/powerpc/configs/pasemi_defconfig172
-rw-r--r--arch/powerpc/configs/pmac32_defconfig174
-rw-r--r--arch/powerpc/configs/ppc64_defconfig236
-rw-r--r--arch/powerpc/configs/pseries_defconfig224
-rw-r--r--arch/powerpc/kernel/Makefile6
-rw-r--r--arch/powerpc/kernel/cputable.c2
-rw-r--r--arch/powerpc/kernel/init_task.c1
-rw-r--r--arch/powerpc/kernel/pci_64.c2
-rw-r--r--arch/powerpc/kernel/prom_init_check.sh2
-rw-r--r--arch/powerpc/kernel/signal_64.c4
-rw-r--r--arch/powerpc/kvm/44x_tlb.c9
-rw-r--r--arch/powerpc/kvm/booke_guest.c33
-rw-r--r--arch/powerpc/kvm/emulate.c12
-rw-r--r--arch/powerpc/lib/Makefile2
-rw-r--r--arch/powerpc/mm/hash_low_32.S2
-rw-r--r--arch/powerpc/mm/hash_utils_64.c28
-rw-r--r--arch/powerpc/mm/init_64.c10
-rw-r--r--arch/powerpc/mm/mem.c3
-rw-r--r--arch/powerpc/mm/pgtable_32.c2
-rw-r--r--arch/powerpc/mm/slb.c16
-rw-r--r--arch/powerpc/mm/slb_low.S16
-rw-r--r--arch/powerpc/platforms/52xx/mpc52xx_gpio.c14
-rw-r--r--arch/powerpc/platforms/85xx/mpc85xx_mds.c121
-rw-r--r--arch/powerpc/platforms/85xx/sbc8548.c30
-rw-r--r--arch/powerpc/platforms/86xx/mpc8610_hpcd.c15
-rw-r--r--arch/powerpc/platforms/cell/celleb_scc_pciex.c5
-rw-r--r--arch/powerpc/platforms/cell/io-workarounds.c6
-rw-r--r--arch/powerpc/platforms/cell/io-workarounds.h6
-rw-r--r--arch/powerpc/platforms/cell/spufs/file.c1
-rw-r--r--arch/powerpc/platforms/cell/spufs/sched.c2
-rw-r--r--arch/powerpc/platforms/pasemi/misc.c7
-rw-r--r--arch/powerpc/platforms/ps3/mm.c3
-rw-r--r--arch/powerpc/sysdev/fsl_soc.c2
-rw-r--r--arch/powerpc/sysdev/mpic.c20
-rw-r--r--arch/ppc/Makefile2
-rw-r--r--arch/ppc/kernel/ppc_ksyms.c3
-rw-r--r--arch/ppc/kernel/setup.c1
-rw-r--r--arch/ppc/platforms/residual.c1
-rw-r--r--arch/s390/Kconfig4
-rw-r--r--arch/s390/appldata/appldata_base.c8
-rw-r--r--arch/s390/defconfig11
-rw-r--r--arch/s390/kernel/debug.c20
-rw-r--r--arch/s390/kernel/dis.c2
-rw-r--r--arch/s390/kernel/init_task.c1
-rw-r--r--arch/s390/kernel/irq.c3
-rw-r--r--arch/s390/kernel/smp.c20
-rw-r--r--arch/s390/kvm/diag.c2
-rw-r--r--arch/s390/kvm/interrupt.c7
-rw-r--r--arch/s390/kvm/kvm-s390.c13
-rw-r--r--arch/s390/mm/init.c49
-rw-r--r--arch/s390/mm/pgtable.c44
-rw-r--r--arch/s390/mm/vmem.c5
-rw-r--r--arch/sh/Kconfig1
-rw-r--r--arch/sh/Kconfig.debug2
-rw-r--r--arch/sh/Makefile2
-rw-r--r--arch/sh/boards/renesas/rts7751r2d/setup.c39
-rw-r--r--arch/sh/configs/migor_defconfig294
-rw-r--r--arch/sh/configs/rsk7203_defconfig841
-rw-r--r--arch/sh/configs/se7206_defconfig475
-rw-r--r--arch/sh/drivers/heartbeat.c2
-rw-r--r--arch/sh/kernel/cpu/irq/intc-sh5.c1
-rw-r--r--arch/sh/kernel/cpu/sh4/probe.c1
-rw-r--r--arch/sh/kernel/cpu/sh4a/clock-sh7785.c2
-rw-r--r--arch/sh/kernel/cpu/sh4a/setup-sh7722.c2
-rw-r--r--arch/sh/kernel/cpu/sh4a/setup-sh7723.c49
-rw-r--r--arch/sh/kernel/cpu/sh4a/setup-sh7763.c9
-rw-r--r--arch/sh/kernel/entry-common.S12
-rw-r--r--arch/sh/kernel/head_32.S4
-rw-r--r--arch/sh/kernel/init_task.c1
-rw-r--r--arch/sh/kernel/kgdb_stub.c19
-rw-r--r--arch/sh/kernel/module.c39
-rw-r--r--arch/sh/kernel/setup.c11
-rw-r--r--arch/sh/kernel/traps.c10
-rw-r--r--arch/sh/lib/memcpy-sh4.S22
-rw-r--r--arch/sparc/Kconfig1
-rw-r--r--arch/sparc/boot/Makefile1
-rw-r--r--arch/sparc/boot/btfixupprep.c2
-rw-r--r--arch/sparc/boot/piggyback.c2
-rw-r--r--arch/sparc/kernel/ebus.c2
-rw-r--r--arch/sparc/kernel/etrap.S2
-rw-r--r--arch/sparc/kernel/head.S2
-rw-r--r--arch/sparc/kernel/idprom.c2
-rw-r--r--arch/sparc/kernel/init_task.c1
-rw-r--r--arch/sparc/kernel/ioport.c2
-rw-r--r--arch/sparc/kernel/irq.c2
-rw-r--r--arch/sparc/kernel/led.c34
-rw-r--r--arch/sparc/kernel/muldiv.c2
-rw-r--r--arch/sparc/kernel/rtrap.S4
-rw-r--r--arch/sparc/kernel/setup.c2
-rw-r--r--arch/sparc/kernel/sparc_ksyms.c2
-rw-r--r--arch/sparc/kernel/sun4d_irq.c2
-rw-r--r--arch/sparc/kernel/sys_sparc.c48
-rw-r--r--arch/sparc/kernel/trampoline.S2
-rw-r--r--arch/sparc/kernel/traps.c2
-rw-r--r--arch/sparc/kernel/unaligned.c2
-rw-r--r--arch/sparc/kernel/wof.S2
-rw-r--r--arch/sparc/kernel/wuf.S2
-rw-r--r--arch/sparc/lib/Makefile1
-rw-r--r--arch/sparc/lib/ashldi3.S2
-rw-r--r--arch/sparc/lib/ashrdi3.S2
-rw-r--r--arch/sparc/lib/blockops.S2
-rw-r--r--arch/sparc/lib/locks.S2
-rw-r--r--arch/sparc/lib/lshrdi3.S1
-rw-r--r--arch/sparc/lib/memscan.S2
-rw-r--r--arch/sparc/lib/mul.S2
-rw-r--r--arch/sparc/lib/rem.S2
-rw-r--r--arch/sparc/lib/rwsem.S2
-rw-r--r--arch/sparc/lib/sdiv.S2
-rw-r--r--arch/sparc/lib/strncmp.S2
-rw-r--r--arch/sparc/lib/udiv.S2
-rw-r--r--arch/sparc/lib/umul.S2
-rw-r--r--arch/sparc/lib/urem.S2
-rw-r--r--arch/sparc/math-emu/ashldi3.S2
-rw-r--r--arch/sparc/mm/Makefile1
-rw-r--r--arch/sparc/mm/fault.c2
-rw-r--r--arch/sparc/mm/generic.c2
-rw-r--r--arch/sparc/mm/hypersparc.S2
-rw-r--r--arch/sparc/mm/init.c2
-rw-r--r--arch/sparc/mm/io-unit.c2
-rw-r--r--arch/sparc/mm/loadmmu.c2
-rw-r--r--arch/sparc/mm/nosrmmu.c2
-rw-r--r--arch/sparc/mm/nosun4c.c2
-rw-r--r--arch/sparc/mm/swift.S2
-rw-r--r--arch/sparc/mm/tsunami.S2
-rw-r--r--arch/sparc/mm/viking.S2
-rw-r--r--arch/sparc/prom/Makefile1
-rw-r--r--arch/sparc/prom/bootstr.c2
-rw-r--r--arch/sparc/prom/console.c2
-rw-r--r--arch/sparc/prom/devmap.c2
-rw-r--r--arch/sparc/prom/devops.c2
-rw-r--r--arch/sparc/prom/init.c2
-rw-r--r--arch/sparc/prom/misc.c2
-rw-r--r--arch/sparc/prom/mp.c2
-rw-r--r--arch/sparc/prom/palloc.c2
-rw-r--r--arch/sparc/prom/ranges.c2
-rw-r--r--arch/sparc/prom/segment.c2
-rw-r--r--arch/sparc/prom/tree.c2
-rw-r--r--arch/sparc64/Makefile1
-rw-r--r--arch/sparc64/boot/Makefile1
-rw-r--r--arch/sparc64/boot/piggyback.c2
-rw-r--r--arch/sparc64/defconfig40
-rw-r--r--arch/sparc64/kernel/dtlb_prot.S2
-rw-r--r--arch/sparc64/kernel/ebus.c2
-rw-r--r--arch/sparc64/kernel/etrap.S2
-rw-r--r--arch/sparc64/kernel/idprom.c2
-rw-r--r--arch/sparc64/kernel/init_task.c1
-rw-r--r--arch/sparc64/kernel/process.c153
-rw-r--r--arch/sparc64/kernel/rtrap.S9
-rw-r--r--arch/sparc64/kernel/sbus.c2
-rw-r--r--arch/sparc64/kernel/setup.c2
-rw-r--r--arch/sparc64/kernel/signal.c23
-rw-r--r--arch/sparc64/kernel/signal32.c13
-rw-r--r--arch/sparc64/kernel/smp.c10
-rw-r--r--arch/sparc64/kernel/stacktrace.c12
-rw-r--r--arch/sparc64/kernel/starfire.c2
-rw-r--r--arch/sparc64/kernel/sys32.S2
-rw-r--r--arch/sparc64/kernel/sys_sparc.c36
-rw-r--r--arch/sparc64/kernel/sys_sparc32.c33
-rw-r--r--arch/sparc64/kernel/trampoline.S2
-rw-r--r--arch/sparc64/kernel/traps.c12
-rw-r--r--arch/sparc64/kernel/unaligned.c2
-rw-r--r--arch/sparc64/lib/PeeCeeI.c2
-rw-r--r--arch/sparc64/lib/VISsave.S2
-rw-r--r--arch/sparc64/lib/memcmp.S2
-rw-r--r--arch/sparc64/lib/memscan.S2
-rw-r--r--arch/sparc64/lib/strncmp.S2
-rw-r--r--arch/sparc64/lib/strncpy_from_user.S2
-rw-r--r--arch/sparc64/math-emu/math.c2
-rw-r--r--arch/sparc64/math-emu/sfp-util.h2
-rw-r--r--arch/sparc64/mm/Makefile1
-rw-r--r--arch/sparc64/mm/fault.c2
-rw-r--r--arch/sparc64/mm/generic.c2
-rw-r--r--arch/sparc64/mm/init.c20
-rw-r--r--arch/sparc64/mm/ultra.S31
-rw-r--r--arch/sparc64/prom/Makefile1
-rw-r--r--arch/sparc64/prom/bootstr.c2
-rw-r--r--arch/sparc64/prom/devops.c2
-rw-r--r--arch/sparc64/prom/init.c2
-rw-r--r--arch/sparc64/prom/misc.c2
-rw-r--r--arch/sparc64/prom/p1275.c2
-rw-r--r--arch/sparc64/prom/tree.c2
-rw-r--r--arch/um/Kconfig2
-rw-r--r--arch/um/Kconfig.char6
-rw-r--r--arch/um/drivers/chan_user.c1
-rw-r--r--arch/um/drivers/cow_sys.h2
-rw-r--r--arch/um/drivers/daemon_user.c4
-rw-r--r--arch/um/drivers/fd.c2
-rw-r--r--arch/um/drivers/hostaudio_kern.c2
-rw-r--r--arch/um/drivers/mcast_user.c3
-rw-r--r--arch/um/drivers/net_user.c2
-rw-r--r--arch/um/drivers/pcap_user.c2
-rw-r--r--arch/um/drivers/port_user.c2
-rw-r--r--arch/um/drivers/pty.c2
-rw-r--r--arch/um/drivers/random.c122
-rw-r--r--arch/um/drivers/slip_user.c2
-rw-r--r--arch/um/drivers/tty.c2
-rw-r--r--arch/um/drivers/ubd_kern.c5
-rw-r--r--arch/um/drivers/xterm.c2
-rw-r--r--arch/um/include/as-layout.h14
-rw-r--r--arch/um/include/line.h4
-rw-r--r--arch/um/include/os.h3
-rw-r--r--arch/um/include/process.h20
-rw-r--r--arch/um/include/skas_ptrace.h13
-rw-r--r--arch/um/include/sysdep-i386/ptrace_user.h30
-rw-r--r--arch/um/include/sysdep-i386/sigcontext.h2
-rw-r--r--arch/um/include/sysdep-x86_64/ptrace_user.h17
-rw-r--r--arch/um/include/um_malloc.h9
-rw-r--r--arch/um/kernel/dyn.lds.S7
-rw-r--r--arch/um/kernel/init_task.c1
-rw-r--r--arch/um/kernel/ksyms.c5
-rw-r--r--arch/um/kernel/mem.c5
-rw-r--r--arch/um/kernel/time.c4
-rw-r--r--arch/um/kernel/um_arch.c9
-rw-r--r--arch/um/kernel/uml.lds.S7
-rw-r--r--arch/um/os-Linux/drivers/ethertap_user.c4
-rw-r--r--arch/um/os-Linux/helper.c5
-rw-r--r--arch/um/os-Linux/main.c2
-rw-r--r--arch/um/os-Linux/sigio.c39
-rw-r--r--arch/um/os-Linux/signal.c1
-rw-r--r--arch/um/os-Linux/skas/process.c4
-rw-r--r--arch/um/os-Linux/start_up.c106
-rw-r--r--arch/um/os-Linux/sys-i386/registers.c6
-rw-r--r--arch/um/os-Linux/sys-i386/task_size.c31
-rw-r--r--arch/um/os-Linux/sys-x86_64/task_size.c2
-rw-r--r--arch/um/os-Linux/time.c61
-rw-r--r--arch/um/sys-i386/ptrace.c30
-rw-r--r--arch/um/sys-i386/user-offsets.c2
-rw-r--r--arch/um/sys-x86_64/ksyms.c10
-rw-r--r--arch/um/sys-x86_64/user-offsets.c1
-rw-r--r--arch/v850/kernel/init_task.c1
-rw-r--r--arch/x86/Kconfig24
-rw-r--r--arch/x86/Kconfig.debug20
-rw-r--r--arch/x86/boot/a20.c3
-rw-r--r--arch/x86/boot/printf.c2
-rw-r--r--arch/x86/kernel/acpi/boot.c16
-rw-r--r--arch/x86/kernel/acpi/realmode/wakeup.lds.S10
-rw-r--r--arch/x86/kernel/apic_64.c2
-rw-r--r--arch/x86/kernel/cpu/cpufreq/longrun.c2
-rw-r--r--arch/x86/kernel/cpu/cpufreq/powernow-k8.c15
-rw-r--r--arch/x86/kernel/entry_32.S1
-rw-r--r--arch/x86/kernel/head_32.S2
-rw-r--r--arch/x86/kernel/i387.c44
-rw-r--r--arch/x86/kernel/init_task.c1
-rw-r--r--arch/x86/kernel/io_apic_32.c12
-rw-r--r--arch/x86/kernel/kvmclock.c4
-rw-r--r--arch/x86/kernel/mfgpt_32.c2
-rw-r--r--arch/x86/kernel/nmi_32.c9
-rw-r--r--arch/x86/kernel/pci-dma.c20
-rw-r--r--arch/x86/kernel/pci-gart_64.c31
-rw-r--r--arch/x86/kernel/process.c36
-rw-r--r--arch/x86/kernel/process_32.c5
-rw-r--r--arch/x86/kernel/process_64.c5
-rw-r--r--arch/x86/kernel/ptrace.c7
-rw-r--r--arch/x86/kernel/rtc.c34
-rw-r--r--arch/x86/kernel/setup.c4
-rw-r--r--arch/x86/kernel/setup_64.c2
-rw-r--r--arch/x86/kernel/smp.c3
-rw-r--r--arch/x86/kernel/smpboot.c29
-rw-r--r--arch/x86/kernel/traps_32.c1
-rw-r--r--arch/x86/kernel/tsc_32.c25
-rw-r--r--arch/x86/kernel/tsc_64.c5
-rw-r--r--arch/x86/kernel/x8664_ksyms_64.c3
-rw-r--r--arch/x86/kvm/i8254.c16
-rw-r--r--arch/x86/kvm/irq.c6
-rw-r--r--arch/x86/kvm/irq.h2
-rw-r--r--arch/x86/kvm/lapic.c2
-rw-r--r--arch/x86/kvm/mmu.c5
-rw-r--r--arch/x86/kvm/paging_tmpl.h2
-rw-r--r--arch/x86/kvm/svm.c2
-rw-r--r--arch/x86/kvm/vmx.c3
-rw-r--r--arch/x86/kvm/x86.c2
-rw-r--r--arch/x86/kvm/x86_emulate.c10
-rw-r--r--arch/x86/lguest/boot.c5
-rw-r--r--arch/x86/lib/csum-partial_64.c2
-rw-r--r--arch/x86/lib/delay_32.c31
-rw-r--r--arch/x86/lib/delay_64.c30
-rw-r--r--arch/x86/math-emu/fpu_entry.c13
-rw-r--r--arch/x86/mm/fault.c5
-rw-r--r--arch/x86/mm/init_32.c12
-rw-r--r--arch/x86/mm/init_64.c6
-rw-r--r--arch/x86/mm/ioremap.c5
-rw-r--r--arch/x86/mm/pat.c57
-rw-r--r--arch/x86/mm/srat_64.c27
-rw-r--r--arch/x86/pci/common.c16
-rw-r--r--arch/x86/pci/i386.c4
-rw-r--r--arch/x86/pci/init.c3
-rw-r--r--arch/x86/pci/irq.c7
-rw-r--r--arch/x86/pci/olpc.c5
-rw-r--r--arch/x86/pci/pci.h2
-rw-r--r--arch/x86/vdso/vclock_gettime.c6
-rw-r--r--arch/x86/xen/mmu.c2
-rw-r--r--arch/x86/xen/time.c13
-rw-r--r--arch/xtensa/kernel/init_task.c1
517 files changed, 9279 insertions, 5268 deletions
diff --git a/arch/alpha/kernel/init_task.c b/arch/alpha/kernel/init_task.c
index 835d09a7b332..1f762189fa64 100644
--- a/arch/alpha/kernel/init_task.c
+++ b/arch/alpha/kernel/init_task.c
@@ -9,7 +9,6 @@
9 9
10 10
11static struct fs_struct init_fs = INIT_FS; 11static struct fs_struct init_fs = INIT_FS;
12static struct files_struct init_files = INIT_FILES;
13static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 12static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
14static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 13static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
15struct mm_struct init_mm = INIT_MM(init_mm); 14struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/arm/boot/compressed/head-xscale.S b/arch/arm/boot/compressed/head-xscale.S
index 67ea99ef6521..dd3fbd6766e1 100644
--- a/arch/arm/boot/compressed/head-xscale.S
+++ b/arch/arm/boot/compressed/head-xscale.S
@@ -33,10 +33,6 @@ __XScale_start:
33 bic r0, r0, #0x1000 @ clear Icache 33 bic r0, r0, #0x1000 @ clear Icache
34 mcr p15, 0, r0, c1, c0, 0 34 mcr p15, 0, r0, c1, c0, 0
35 35
36#ifdef CONFIG_ARCH_COTULLA_IDP
37 mov r7, #MACH_TYPE_COTULLA_IDP
38#endif
39
40#ifdef CONFIG_ARCH_IXP2000 36#ifdef CONFIG_ARCH_IXP2000
41 mov r1, #-1 37 mov r1, #-1
42 mov r0, #0xd6000000 38 mov r0, #0xd6000000
diff --git a/arch/arm/common/locomo.c b/arch/arm/common/locomo.c
index ae21755872ed..d973c986f721 100644
--- a/arch/arm/common/locomo.c
+++ b/arch/arm/common/locomo.c
@@ -321,11 +321,42 @@ static void locomo_gpio_unmask_irq(unsigned int irq)
321 locomo_writel(r, mapbase + LOCOMO_GIE); 321 locomo_writel(r, mapbase + LOCOMO_GIE);
322} 322}
323 323
324static int GPIO_IRQ_rising_edge;
325static int GPIO_IRQ_falling_edge;
326
327static int locomo_gpio_type(unsigned int irq, unsigned int type)
328{
329 unsigned int mask;
330 void __iomem *mapbase = get_irq_chip_data(irq);
331
332 mask = 1 << (irq - LOCOMO_IRQ_GPIO_START);
333
334 if (type == IRQT_PROBE) {
335 if ((GPIO_IRQ_rising_edge | GPIO_IRQ_falling_edge) & mask)
336 return 0;
337 type = __IRQT_RISEDGE | __IRQT_FALEDGE;
338 }
339
340 if (type & __IRQT_RISEDGE)
341 GPIO_IRQ_rising_edge |= mask;
342 else
343 GPIO_IRQ_rising_edge &= ~mask;
344 if (type & __IRQT_FALEDGE)
345 GPIO_IRQ_falling_edge |= mask;
346 else
347 GPIO_IRQ_falling_edge &= ~mask;
348 locomo_writel(GPIO_IRQ_rising_edge, mapbase + LOCOMO_GRIE);
349 locomo_writel(GPIO_IRQ_falling_edge, mapbase + LOCOMO_GFIE);
350
351 return 0;
352}
353
324static struct irq_chip locomo_gpio_chip = { 354static struct irq_chip locomo_gpio_chip = {
325 .name = "LOCOMO-gpio", 355 .name = "LOCOMO-gpio",
326 .ack = locomo_gpio_ack_irq, 356 .ack = locomo_gpio_ack_irq,
327 .mask = locomo_gpio_mask_irq, 357 .mask = locomo_gpio_mask_irq,
328 .unmask = locomo_gpio_unmask_irq, 358 .unmask = locomo_gpio_unmask_irq,
359 .set_type = locomo_gpio_type,
329}; 360};
330 361
331static void locomo_lt_handler(unsigned int irq, struct irq_desc *desc) 362static void locomo_lt_handler(unsigned int irq, struct irq_desc *desc)
@@ -450,22 +481,18 @@ static void locomo_setup_irq(struct locomo *lchip)
450 set_irq_chip(IRQ_LOCOMO_KEY_BASE, &locomo_chip); 481 set_irq_chip(IRQ_LOCOMO_KEY_BASE, &locomo_chip);
451 set_irq_chip_data(IRQ_LOCOMO_KEY_BASE, irqbase); 482 set_irq_chip_data(IRQ_LOCOMO_KEY_BASE, irqbase);
452 set_irq_chained_handler(IRQ_LOCOMO_KEY_BASE, locomo_key_handler); 483 set_irq_chained_handler(IRQ_LOCOMO_KEY_BASE, locomo_key_handler);
453 set_irq_flags(IRQ_LOCOMO_KEY_BASE, IRQF_VALID | IRQF_PROBE);
454 484
455 set_irq_chip(IRQ_LOCOMO_GPIO_BASE, &locomo_chip); 485 set_irq_chip(IRQ_LOCOMO_GPIO_BASE, &locomo_chip);
456 set_irq_chip_data(IRQ_LOCOMO_GPIO_BASE, irqbase); 486 set_irq_chip_data(IRQ_LOCOMO_GPIO_BASE, irqbase);
457 set_irq_chained_handler(IRQ_LOCOMO_GPIO_BASE, locomo_gpio_handler); 487 set_irq_chained_handler(IRQ_LOCOMO_GPIO_BASE, locomo_gpio_handler);
458 set_irq_flags(IRQ_LOCOMO_GPIO_BASE, IRQF_VALID | IRQF_PROBE);
459 488
460 set_irq_chip(IRQ_LOCOMO_LT_BASE, &locomo_chip); 489 set_irq_chip(IRQ_LOCOMO_LT_BASE, &locomo_chip);
461 set_irq_chip_data(IRQ_LOCOMO_LT_BASE, irqbase); 490 set_irq_chip_data(IRQ_LOCOMO_LT_BASE, irqbase);
462 set_irq_chained_handler(IRQ_LOCOMO_LT_BASE, locomo_lt_handler); 491 set_irq_chained_handler(IRQ_LOCOMO_LT_BASE, locomo_lt_handler);
463 set_irq_flags(IRQ_LOCOMO_LT_BASE, IRQF_VALID | IRQF_PROBE);
464 492
465 set_irq_chip(IRQ_LOCOMO_SPI_BASE, &locomo_chip); 493 set_irq_chip(IRQ_LOCOMO_SPI_BASE, &locomo_chip);
466 set_irq_chip_data(IRQ_LOCOMO_SPI_BASE, irqbase); 494 set_irq_chip_data(IRQ_LOCOMO_SPI_BASE, irqbase);
467 set_irq_chained_handler(IRQ_LOCOMO_SPI_BASE, locomo_spi_handler); 495 set_irq_chained_handler(IRQ_LOCOMO_SPI_BASE, locomo_spi_handler);
468 set_irq_flags(IRQ_LOCOMO_SPI_BASE, IRQF_VALID | IRQF_PROBE);
469 496
470 /* install handlers for IRQ_LOCOMO_KEY_BASE generated interrupts */ 497 /* install handlers for IRQ_LOCOMO_KEY_BASE generated interrupts */
471 set_irq_chip(LOCOMO_IRQ_KEY_START, &locomo_key_chip); 498 set_irq_chip(LOCOMO_IRQ_KEY_START, &locomo_key_chip);
@@ -488,7 +515,7 @@ static void locomo_setup_irq(struct locomo *lchip)
488 set_irq_flags(LOCOMO_IRQ_LT_START, IRQF_VALID | IRQF_PROBE); 515 set_irq_flags(LOCOMO_IRQ_LT_START, IRQF_VALID | IRQF_PROBE);
489 516
490 /* install handlers for IRQ_LOCOMO_SPI_BASE generated interrupts */ 517 /* install handlers for IRQ_LOCOMO_SPI_BASE generated interrupts */
491 for (irq = LOCOMO_IRQ_SPI_START; irq < LOCOMO_IRQ_SPI_START + 3; irq++) { 518 for (irq = LOCOMO_IRQ_SPI_START; irq < LOCOMO_IRQ_SPI_START + 4; irq++) {
492 set_irq_chip(irq, &locomo_spi_chip); 519 set_irq_chip(irq, &locomo_spi_chip);
493 set_irq_chip_data(irq, irqbase); 520 set_irq_chip_data(irq, irqbase);
494 set_irq_handler(irq, handle_edge_irq); 521 set_irq_handler(irq, handle_edge_irq);
@@ -574,20 +601,20 @@ static int locomo_suspend(struct platform_device *dev, pm_message_t state)
574 601
575 save->LCM_GPO = locomo_readl(lchip->base + LOCOMO_GPO); /* GPIO */ 602 save->LCM_GPO = locomo_readl(lchip->base + LOCOMO_GPO); /* GPIO */
576 locomo_writel(0x00, lchip->base + LOCOMO_GPO); 603 locomo_writel(0x00, lchip->base + LOCOMO_GPO);
577 save->LCM_SPICT = locomo_readl(lchip->base + LOCOMO_SPICT); /* SPI */ 604 save->LCM_SPICT = locomo_readl(lchip->base + LOCOMO_SPI + LOCOMO_SPICT); /* SPI */
578 locomo_writel(0x40, lchip->base + LOCOMO_SPICT); 605 locomo_writel(0x40, lchip->base + LOCOMO_SPICT);
579 save->LCM_GPE = locomo_readl(lchip->base + LOCOMO_GPE); /* GPIO */ 606 save->LCM_GPE = locomo_readl(lchip->base + LOCOMO_GPE); /* GPIO */
580 locomo_writel(0x00, lchip->base + LOCOMO_GPE); 607 locomo_writel(0x00, lchip->base + LOCOMO_GPE);
581 save->LCM_ASD = locomo_readl(lchip->base + LOCOMO_ASD); /* ADSTART */ 608 save->LCM_ASD = locomo_readl(lchip->base + LOCOMO_ASD); /* ADSTART */
582 locomo_writel(0x00, lchip->base + LOCOMO_ASD); 609 locomo_writel(0x00, lchip->base + LOCOMO_ASD);
583 save->LCM_SPIMD = locomo_readl(lchip->base + LOCOMO_SPIMD); /* SPI */ 610 save->LCM_SPIMD = locomo_readl(lchip->base + LOCOMO_SPI + LOCOMO_SPIMD); /* SPI */
584 locomo_writel(0x3C14, lchip->base + LOCOMO_SPIMD); 611 locomo_writel(0x3C14, lchip->base + LOCOMO_SPI + LOCOMO_SPIMD);
585 612
586 locomo_writel(0x00, lchip->base + LOCOMO_PAIF); 613 locomo_writel(0x00, lchip->base + LOCOMO_PAIF);
587 locomo_writel(0x00, lchip->base + LOCOMO_DAC); 614 locomo_writel(0x00, lchip->base + LOCOMO_DAC);
588 locomo_writel(0x00, lchip->base + LOCOMO_BACKLIGHT + LOCOMO_TC); 615 locomo_writel(0x00, lchip->base + LOCOMO_BACKLIGHT + LOCOMO_TC);
589 616
590 if ( (locomo_readl(lchip->base + LOCOMO_LED + LOCOMO_LPT0) & 0x88) && (locomo_readl(lchip->base + LOCOMO_LED + LOCOMO_LPT1) & 0x88) ) 617 if ((locomo_readl(lchip->base + LOCOMO_LED + LOCOMO_LPT0) & 0x88) && (locomo_readl(lchip->base + LOCOMO_LED + LOCOMO_LPT1) & 0x88))
591 locomo_writel(0x00, lchip->base + LOCOMO_C32K); /* CLK32 off */ 618 locomo_writel(0x00, lchip->base + LOCOMO_C32K); /* CLK32 off */
592 else 619 else
593 /* 18MHz already enabled, so no wait */ 620 /* 18MHz already enabled, so no wait */
@@ -616,10 +643,10 @@ static int locomo_resume(struct platform_device *dev)
616 spin_lock_irqsave(&lchip->lock, flags); 643 spin_lock_irqsave(&lchip->lock, flags);
617 644
618 locomo_writel(save->LCM_GPO, lchip->base + LOCOMO_GPO); 645 locomo_writel(save->LCM_GPO, lchip->base + LOCOMO_GPO);
619 locomo_writel(save->LCM_SPICT, lchip->base + LOCOMO_SPICT); 646 locomo_writel(save->LCM_SPICT, lchip->base + LOCOMO_SPI + LOCOMO_SPICT);
620 locomo_writel(save->LCM_GPE, lchip->base + LOCOMO_GPE); 647 locomo_writel(save->LCM_GPE, lchip->base + LOCOMO_GPE);
621 locomo_writel(save->LCM_ASD, lchip->base + LOCOMO_ASD); 648 locomo_writel(save->LCM_ASD, lchip->base + LOCOMO_ASD);
622 locomo_writel(save->LCM_SPIMD, lchip->base + LOCOMO_SPIMD); 649 locomo_writel(save->LCM_SPIMD, lchip->base + LOCOMO_SPI + LOCOMO_SPIMD);
623 650
624 locomo_writel(0x00, lchip->base + LOCOMO_C32K); 651 locomo_writel(0x00, lchip->base + LOCOMO_C32K);
625 locomo_writel(0x90, lchip->base + LOCOMO_TADC); 652 locomo_writel(0x90, lchip->base + LOCOMO_TADC);
@@ -688,9 +715,9 @@ __locomo_probe(struct device *me, struct resource *mem, int irq)
688 715
689 /* GPIO */ 716 /* GPIO */
690 locomo_writel(0, lchip->base + LOCOMO_GPO); 717 locomo_writel(0, lchip->base + LOCOMO_GPO);
691 locomo_writel( (LOCOMO_GPIO(2) | LOCOMO_GPIO(3) | LOCOMO_GPIO(13) | LOCOMO_GPIO(14)) 718 locomo_writel((LOCOMO_GPIO(1) | LOCOMO_GPIO(2) | LOCOMO_GPIO(13) | LOCOMO_GPIO(14))
692 , lchip->base + LOCOMO_GPE); 719 , lchip->base + LOCOMO_GPE);
693 locomo_writel( (LOCOMO_GPIO(2) | LOCOMO_GPIO(3) | LOCOMO_GPIO(13) | LOCOMO_GPIO(14)) 720 locomo_writel((LOCOMO_GPIO(1) | LOCOMO_GPIO(2) | LOCOMO_GPIO(13) | LOCOMO_GPIO(14))
694 , lchip->base + LOCOMO_GPD); 721 , lchip->base + LOCOMO_GPD);
695 locomo_writel(0, lchip->base + LOCOMO_GIE); 722 locomo_writel(0, lchip->base + LOCOMO_GIE);
696 723
@@ -833,7 +860,10 @@ void locomo_gpio_set_dir(struct device *dev, unsigned int bits, unsigned int dir
833 spin_lock_irqsave(&lchip->lock, flags); 860 spin_lock_irqsave(&lchip->lock, flags);
834 861
835 r = locomo_readl(lchip->base + LOCOMO_GPD); 862 r = locomo_readl(lchip->base + LOCOMO_GPD);
836 r &= ~bits; 863 if (dir)
864 r |= bits;
865 else
866 r &= ~bits;
837 locomo_writel(r, lchip->base + LOCOMO_GPD); 867 locomo_writel(r, lchip->base + LOCOMO_GPD);
838 868
839 r = locomo_readl(lchip->base + LOCOMO_GPE); 869 r = locomo_readl(lchip->base + LOCOMO_GPE);
diff --git a/arch/arm/kernel/armksyms.c b/arch/arm/kernel/armksyms.c
index f73d62e8ab60..688b7b1ee416 100644
--- a/arch/arm/kernel/armksyms.c
+++ b/arch/arm/kernel/armksyms.c
@@ -179,3 +179,5 @@ EXPORT_SYMBOL(_find_next_zero_bit_be);
179EXPORT_SYMBOL(_find_first_bit_be); 179EXPORT_SYMBOL(_find_first_bit_be);
180EXPORT_SYMBOL(_find_next_bit_be); 180EXPORT_SYMBOL(_find_next_bit_be);
181#endif 181#endif
182
183EXPORT_SYMBOL(copy_page);
diff --git a/arch/arm/kernel/arthur.c b/arch/arm/kernel/arthur.c
index 0ee2e9819631..321c5291d05f 100644
--- a/arch/arm/kernel/arthur.c
+++ b/arch/arm/kernel/arthur.c
@@ -90,3 +90,5 @@ static void __exit arthur_exit(void)
90 90
91module_init(arthur_init); 91module_init(arthur_init);
92module_exit(arthur_exit); 92module_exit(arthur_exit);
93
94MODULE_LICENSE("GPL");
diff --git a/arch/arm/kernel/init_task.c b/arch/arm/kernel/init_task.c
index bd4ef53bc6b9..8b8c9d38a761 100644
--- a/arch/arm/kernel/init_task.c
+++ b/arch/arm/kernel/init_task.c
@@ -13,7 +13,6 @@
13#include <asm/pgtable.h> 13#include <asm/pgtable.h>
14 14
15static struct fs_struct init_fs = INIT_FS; 15static struct fs_struct init_fs = INIT_FS;
16static struct files_struct init_files = INIT_FILES;
17static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 16static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
18static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 17static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
19struct mm_struct init_mm = INIT_MM(init_mm); 18struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/arm/mach-at91/at91sam9261_devices.c b/arch/arm/mach-at91/at91sam9261_devices.c
index 728bb8f39441..0babb645b83c 100644
--- a/arch/arm/mach-at91/at91sam9261_devices.c
+++ b/arch/arm/mach-at91/at91sam9261_devices.c
@@ -544,10 +544,10 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data)
544 struct resource *fb_res = &lcdc_resources[2]; 544 struct resource *fb_res = &lcdc_resources[2];
545 size_t fb_len = fb_res->end - fb_res->start + 1; 545 size_t fb_len = fb_res->end - fb_res->start + 1;
546 546
547 fb = ioremap_writecombine(fb_res->start, fb_len); 547 fb = ioremap(fb_res->start, fb_len);
548 if (fb) { 548 if (fb) {
549 memset(fb, 0, fb_len); 549 memset(fb, 0, fb_len);
550 iounmap(fb, fb_len); 550 iounmap(fb);
551 } 551 }
552 } 552 }
553 lcdc_data = *data; 553 lcdc_data = *data;
diff --git a/arch/arm/mach-at91/at91sam9rl_devices.c b/arch/arm/mach-at91/at91sam9rl_devices.c
index 054689804e77..450db304936f 100644
--- a/arch/arm/mach-at91/at91sam9rl_devices.c
+++ b/arch/arm/mach-at91/at91sam9rl_devices.c
@@ -332,13 +332,6 @@ static struct resource lcdc_resources[] = {
332 .end = AT91SAM9RL_ID_LCDC, 332 .end = AT91SAM9RL_ID_LCDC,
333 .flags = IORESOURCE_IRQ, 333 .flags = IORESOURCE_IRQ,
334 }, 334 },
335#if defined(CONFIG_FB_INTSRAM)
336 [2] = {
337 .start = AT91SAM9RL_SRAM_BASE,
338 .end = AT91SAM9RL_SRAM_BASE + AT91SAM9RL_SRAM_SIZE - 1,
339 .flags = IORESOURCE_MEM,
340 },
341#endif
342}; 335};
343 336
344static struct platform_device at91_lcdc_device = { 337static struct platform_device at91_lcdc_device = {
@@ -381,20 +374,6 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data)
381 at91_set_B_periph(AT91_PIN_PC24, 0); /* LCDD22 */ 374 at91_set_B_periph(AT91_PIN_PC24, 0); /* LCDD22 */
382 at91_set_B_periph(AT91_PIN_PC25, 0); /* LCDD23 */ 375 at91_set_B_periph(AT91_PIN_PC25, 0); /* LCDD23 */
383 376
384#ifdef CONFIG_FB_INTSRAM
385 {
386 void __iomem *fb;
387 struct resource *fb_res = &lcdc_resources[2];
388 size_t fb_len = fb_res->end - fb_res->start + 1;
389
390 fb = ioremap_writecombine(fb_res->start, fb_len);
391 if (fb) {
392 memset(fb, 0, fb_len);
393 iounmap(fb, fb_len);
394 }
395 }
396#endif
397
398 lcdc_data = *data; 377 lcdc_data = *data;
399 platform_device_register(&at91_lcdc_device); 378 platform_device_register(&at91_lcdc_device);
400} 379}
diff --git a/arch/arm/mach-at91/at91x40.c b/arch/arm/mach-at91/at91x40.c
index 1de121fc55f4..f44647738ee4 100644
--- a/arch/arm/mach-at91/at91x40.c
+++ b/arch/arm/mach-at91/at91x40.c
@@ -16,16 +16,32 @@
16#include <asm/mach/arch.h> 16#include <asm/mach/arch.h>
17#include <asm/arch/at91x40.h> 17#include <asm/arch/at91x40.h>
18#include <asm/arch/at91_st.h> 18#include <asm/arch/at91_st.h>
19#include <asm/arch/timex.h>
19#include "generic.h" 20#include "generic.h"
20 21
21/* 22/*
22 * This is used in the gpio code, stub locally. 23 * Export the clock functions for the AT91X40. Some external code common
24 * to all AT91 family parts relys on this, like the gpio and serial support.
23 */ 25 */
24int clk_enable(struct clk *clk) 26int clk_enable(struct clk *clk)
25{ 27{
26 return 0; 28 return 0;
27} 29}
28 30
31void clk_disable(struct clk *clk)
32{
33}
34
35unsigned long clk_get_rate(struct clk *clk)
36{
37 return AT91X40_MASTER_CLOCK;
38}
39
40struct clk *clk_get(struct device *dev, const char *id)
41{
42 return NULL;
43}
44
29void __init at91x40_initialize(unsigned long main_clock) 45void __init at91x40_initialize(unsigned long main_clock)
30{ 46{
31 at91_extern_irq = (1 << AT91X40_ID_IRQ0) | (1 << AT91X40_ID_IRQ1) 47 at91_extern_irq = (1 << AT91X40_ID_IRQ0) | (1 << AT91X40_ID_IRQ1)
diff --git a/arch/arm/mach-integrator/impd1.c b/arch/arm/mach-integrator/impd1.c
index 92d79fb39311..62e653a3ea1a 100644
--- a/arch/arm/mach-integrator/impd1.c
+++ b/arch/arm/mach-integrator/impd1.c
@@ -369,7 +369,8 @@ static int impd1_probe(struct lm_device *dev)
369 369
370 lm_set_drvdata(dev, impd1); 370 lm_set_drvdata(dev, impd1);
371 371
372 printk("IM-PD1 found at 0x%08lx\n", dev->resource.start); 372 printk("IM-PD1 found at 0x%08lx\n",
373 (unsigned long)dev->resource.start);
373 374
374 for (i = 0; i < ARRAY_SIZE(impd1->vcos); i++) { 375 for (i = 0; i < ARRAY_SIZE(impd1->vcos); i++) {
375 impd1->vcos[i].owner = THIS_MODULE, 376 impd1->vcos[i].owner = THIS_MODULE,
diff --git a/arch/arm/mach-integrator/pci_v3.c b/arch/arm/mach-integrator/pci_v3.c
index d55fa4e9bb43..c07f497000ca 100644
--- a/arch/arm/mach-integrator/pci_v3.c
+++ b/arch/arm/mach-integrator/pci_v3.c
@@ -405,7 +405,6 @@ v3_pci_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
405 addr, fsr, pc, instr, __raw_readl(SC_LBFADDR), __raw_readl(SC_LBFCODE) & 255, 405 addr, fsr, pc, instr, __raw_readl(SC_LBFADDR), __raw_readl(SC_LBFCODE) & 255,
406 v3_readb(V3_LB_ISTAT)); 406 v3_readb(V3_LB_ISTAT));
407 printk(KERN_DEBUG "%s", buf); 407 printk(KERN_DEBUG "%s", buf);
408 printascii(buf);
409#endif 408#endif
410 409
411 v3_writeb(V3_LB_ISTAT, 0); 410 v3_writeb(V3_LB_ISTAT, 0);
@@ -447,6 +446,7 @@ static irqreturn_t v3_irq(int dummy, void *devid)
447 unsigned long pc = instruction_pointer(regs); 446 unsigned long pc = instruction_pointer(regs);
448 unsigned long instr = *(unsigned long *)pc; 447 unsigned long instr = *(unsigned long *)pc;
449 char buf[128]; 448 char buf[128];
449 extern void printascii(const char *);
450 450
451 sprintf(buf, "V3 int %d: pc=0x%08lx [%08lx] LBFADDR=%08x LBFCODE=%02x " 451 sprintf(buf, "V3 int %d: pc=0x%08lx [%08lx] LBFADDR=%08x LBFCODE=%02x "
452 "ISTAT=%02x\n", IRQ_AP_V3INT, pc, instr, 452 "ISTAT=%02x\n", IRQ_AP_V3INT, pc, instr,
diff --git a/arch/arm/mach-omap1/board-palmte.c b/arch/arm/mach-omap1/board-palmte.c
index ca1a4bf78a10..a4d20127a60e 100644
--- a/arch/arm/mach-omap1/board-palmte.c
+++ b/arch/arm/mach-omap1/board-palmte.c
@@ -24,7 +24,6 @@
24#include <linux/mtd/mtd.h> 24#include <linux/mtd/mtd.h>
25#include <linux/mtd/partitions.h> 25#include <linux/mtd/partitions.h>
26#include <linux/spi/spi.h> 26#include <linux/spi/spi.h>
27#include <linux/spi/tsc2102.h>
28#include <linux/interrupt.h> 27#include <linux/interrupt.h>
29#include <linux/apm-emulation.h> 28#include <linux/apm-emulation.h>
30 29
@@ -63,7 +62,7 @@ static const int palmte_keymap[] = {
63 KEY(1, 1, KEY_DOWN), 62 KEY(1, 1, KEY_DOWN),
64 KEY(1, 2, KEY_UP), 63 KEY(1, 2, KEY_UP),
65 KEY(1, 3, KEY_RIGHT), 64 KEY(1, 3, KEY_RIGHT),
66 KEY(1, 4, KEY_CENTER), 65 KEY(1, 4, KEY_ENTER),
67 0, 66 0,
68}; 67};
69 68
@@ -315,14 +314,6 @@ static void palmte_get_power_status(struct apm_power_info *info, int *battery)
315#define palmte_get_power_status NULL 314#define palmte_get_power_status NULL
316#endif 315#endif
317 316
318static struct tsc2102_config palmte_tsc2102_config = {
319 .use_internal = 0,
320 .monitor = TSC_BAT1 | TSC_AUX | TSC_TEMP,
321 .temp_at25c = { 2200, 2615 },
322 .apm_report = palmte_get_power_status,
323 .alsa_config = &palmte_alsa_config,
324};
325
326static struct omap_board_config_kernel palmte_config[] __initdata = { 317static struct omap_board_config_kernel palmte_config[] __initdata = {
327 { OMAP_TAG_USB, &palmte_usb_config }, 318 { OMAP_TAG_USB, &palmte_usb_config },
328 { OMAP_TAG_MMC, &palmte_mmc_config }, 319 { OMAP_TAG_MMC, &palmte_mmc_config },
@@ -336,7 +327,6 @@ static struct spi_board_info palmte_spi_info[] __initdata = {
336 .bus_num = 2, /* uWire (officially) */ 327 .bus_num = 2, /* uWire (officially) */
337 .chip_select = 0, /* As opposed to 3 */ 328 .chip_select = 0, /* As opposed to 3 */
338 .irq = OMAP_GPIO_IRQ(PALMTE_PINTDAV_GPIO), 329 .irq = OMAP_GPIO_IRQ(PALMTE_PINTDAV_GPIO),
339 .platform_data = &palmte_tsc2102_config,
340 .max_speed_hz = 8000000, 330 .max_speed_hz = 8000000,
341 }, 331 },
342}; 332};
diff --git a/arch/arm/mach-omap1/board-palmz71.c b/arch/arm/mach-omap1/board-palmz71.c
index 156510777ffe..e020c2774606 100644
--- a/arch/arm/mach-omap1/board-palmz71.c
+++ b/arch/arm/mach-omap1/board-palmz71.c
@@ -65,7 +65,7 @@ static int palmz71_keymap[] = {
65 KEY(1, 1, KEY_DOWN), 65 KEY(1, 1, KEY_DOWN),
66 KEY(1, 2, KEY_UP), 66 KEY(1, 2, KEY_UP),
67 KEY(1, 3, KEY_RIGHT), 67 KEY(1, 3, KEY_RIGHT),
68 KEY(1, 4, KEY_CENTER), 68 KEY(1, 4, KEY_ENTER),
69 KEY(2, 0, KEY_CAMERA), 69 KEY(2, 0, KEY_CAMERA),
70 0, 70 0,
71}; 71};
diff --git a/arch/arm/mach-omap2/board-2430sdp.c b/arch/arm/mach-omap2/board-2430sdp.c
index 1c12d7c6c7fc..1682eb77c46d 100644
--- a/arch/arm/mach-omap2/board-2430sdp.c
+++ b/arch/arm/mach-omap2/board-2430sdp.c
@@ -208,6 +208,7 @@ static void __init omap_2430sdp_init(void)
208 208
209static void __init omap_2430sdp_map_io(void) 209static void __init omap_2430sdp_map_io(void)
210{ 210{
211 omap2_set_globals_243x();
211 omap2_map_common_io(); 212 omap2_map_common_io();
212} 213}
213 214
diff --git a/arch/arm/mach-omap2/board-apollon.c b/arch/arm/mach-omap2/board-apollon.c
index a1e1e6765b5b..620fa0f120ee 100644
--- a/arch/arm/mach-omap2/board-apollon.c
+++ b/arch/arm/mach-omap2/board-apollon.c
@@ -394,6 +394,7 @@ static void __init omap_apollon_init(void)
394 394
395static void __init omap_apollon_map_io(void) 395static void __init omap_apollon_map_io(void)
396{ 396{
397 omap2_set_globals_242x();
397 omap2_map_common_io(); 398 omap2_map_common_io();
398} 399}
399 400
diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c
index 90938151bcf1..df8be081e159 100644
--- a/arch/arm/mach-omap2/board-generic.c
+++ b/arch/arm/mach-omap2/board-generic.c
@@ -65,6 +65,7 @@ static void __init omap_generic_init(void)
65 65
66static void __init omap_generic_map_io(void) 66static void __init omap_generic_map_io(void)
67{ 67{
68 omap2_set_globals_242x(); /* should be 242x, 243x, or 343x */
68 omap2_map_common_io(); 69 omap2_map_common_io();
69} 70}
70 71
diff --git a/arch/arm/mach-omap2/board-h4.c b/arch/arm/mach-omap2/board-h4.c
index d1915f99a5fa..0d28f6897c8e 100644
--- a/arch/arm/mach-omap2/board-h4.c
+++ b/arch/arm/mach-omap2/board-h4.c
@@ -420,6 +420,7 @@ static void __init omap_h4_init(void)
420 420
421static void __init omap_h4_map_io(void) 421static void __init omap_h4_map_io(void)
422{ 422{
423 omap2_set_globals_242x();
423 omap2_map_common_io(); 424 omap2_map_common_io();
424} 425}
425 426
diff --git a/arch/arm/mach-omap2/clock.c b/arch/arm/mach-omap2/clock.c
index b57ffb5a22a5..ab9fc57d25f1 100644
--- a/arch/arm/mach-omap2/clock.c
+++ b/arch/arm/mach-omap2/clock.c
@@ -205,7 +205,9 @@ static void omap2_clk_wait_ready(struct clk *clk)
205 /* REVISIT: What are the appropriate exclusions for 34XX? */ 205 /* REVISIT: What are the appropriate exclusions for 34XX? */
206 /* OMAP3: ignore DSS-mod clocks */ 206 /* OMAP3: ignore DSS-mod clocks */
207 if (cpu_is_omap34xx() && 207 if (cpu_is_omap34xx() &&
208 (((u32)reg & ~0xff) == (u32)OMAP_CM_REGADDR(OMAP3430_DSS_MOD, 0))) 208 (((u32)reg & ~0xff) == (u32)OMAP_CM_REGADDR(OMAP3430_DSS_MOD, 0) ||
209 ((((u32)reg & ~0xff) == (u32)OMAP_CM_REGADDR(CORE_MOD, 0)) &&
210 clk->enable_bit == OMAP3430_EN_SSI_SHIFT)))
209 return; 211 return;
210 212
211 /* Check if both functional and interface clocks 213 /* Check if both functional and interface clocks
diff --git a/arch/arm/mach-omap2/clock34xx.h b/arch/arm/mach-omap2/clock34xx.h
index cf4644a94b9b..c9c5972a2e25 100644
--- a/arch/arm/mach-omap2/clock34xx.h
+++ b/arch/arm/mach-omap2/clock34xx.h
@@ -836,7 +836,8 @@ static struct clk dpll5_m2_ck = {
836 .clksel_reg = OMAP_CM_REGADDR(PLL_MOD, OMAP3430ES2_CM_CLKSEL5), 836 .clksel_reg = OMAP_CM_REGADDR(PLL_MOD, OMAP3430ES2_CM_CLKSEL5),
837 .clksel_mask = OMAP3430ES2_DIV_120M_MASK, 837 .clksel_mask = OMAP3430ES2_DIV_120M_MASK,
838 .clksel = div16_dpll5_clksel, 838 .clksel = div16_dpll5_clksel,
839 .flags = CLOCK_IN_OMAP3430ES2 | RATE_PROPAGATES, 839 .flags = CLOCK_IN_OMAP3430ES2 | RATE_PROPAGATES |
840 PARENT_CONTROLS_CLOCK,
840 .recalc = &omap2_clksel_recalc, 841 .recalc = &omap2_clksel_recalc,
841}; 842};
842 843
@@ -1046,12 +1047,13 @@ static struct clk iva2_ck = {
1046 .name = "iva2_ck", 1047 .name = "iva2_ck",
1047 .parent = &dpll2_m2_ck, 1048 .parent = &dpll2_m2_ck,
1048 .init = &omap2_init_clksel_parent, 1049 .init = &omap2_init_clksel_parent,
1050 .enable_reg = OMAP_CM_REGADDR(OMAP3430_IVA2_MOD, CM_FCLKEN),
1051 .enable_bit = OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_SHIFT,
1049 .clksel_reg = OMAP_CM_REGADDR(OMAP3430_IVA2_MOD, 1052 .clksel_reg = OMAP_CM_REGADDR(OMAP3430_IVA2_MOD,
1050 OMAP3430_CM_IDLEST_PLL), 1053 OMAP3430_CM_IDLEST_PLL),
1051 .clksel_mask = OMAP3430_ST_IVA2_CLK_MASK, 1054 .clksel_mask = OMAP3430_ST_IVA2_CLK_MASK,
1052 .clksel = iva2_clksel, 1055 .clksel = iva2_clksel,
1053 .flags = CLOCK_IN_OMAP343X | RATE_PROPAGATES | 1056 .flags = CLOCK_IN_OMAP343X | RATE_PROPAGATES,
1054 PARENT_CONTROLS_CLOCK,
1055 .recalc = &omap2_clksel_recalc, 1057 .recalc = &omap2_clksel_recalc,
1056}; 1058};
1057 1059
@@ -1836,7 +1838,8 @@ static struct clk omapctrl_ick = {
1836static struct clk ssi_l4_ick = { 1838static struct clk ssi_l4_ick = {
1837 .name = "ssi_l4_ick", 1839 .name = "ssi_l4_ick",
1838 .parent = &l4_ick, 1840 .parent = &l4_ick,
1839 .flags = CLOCK_IN_OMAP343X | RATE_PROPAGATES, 1841 .flags = CLOCK_IN_OMAP343X | RATE_PROPAGATES |
1842 PARENT_CONTROLS_CLOCK,
1840 .recalc = &followparent_recalc, 1843 .recalc = &followparent_recalc,
1841}; 1844};
1842 1845
@@ -2344,7 +2347,7 @@ static struct clk gpio6_fck = {
2344 .name = "gpio6_fck", 2347 .name = "gpio6_fck",
2345 .parent = &per_32k_alwon_fck, 2348 .parent = &per_32k_alwon_fck,
2346 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2349 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2347 .enable_bit = OMAP3430_EN_GPT6_SHIFT, 2350 .enable_bit = OMAP3430_EN_GPIO6_SHIFT,
2348 .flags = CLOCK_IN_OMAP343X, 2351 .flags = CLOCK_IN_OMAP343X,
2349 .recalc = &followparent_recalc, 2352 .recalc = &followparent_recalc,
2350}; 2353};
@@ -2353,7 +2356,7 @@ static struct clk gpio5_fck = {
2353 .name = "gpio5_fck", 2356 .name = "gpio5_fck",
2354 .parent = &per_32k_alwon_fck, 2357 .parent = &per_32k_alwon_fck,
2355 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2358 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2356 .enable_bit = OMAP3430_EN_GPT5_SHIFT, 2359 .enable_bit = OMAP3430_EN_GPIO5_SHIFT,
2357 .flags = CLOCK_IN_OMAP343X, 2360 .flags = CLOCK_IN_OMAP343X,
2358 .recalc = &followparent_recalc, 2361 .recalc = &followparent_recalc,
2359}; 2362};
@@ -2362,7 +2365,7 @@ static struct clk gpio4_fck = {
2362 .name = "gpio4_fck", 2365 .name = "gpio4_fck",
2363 .parent = &per_32k_alwon_fck, 2366 .parent = &per_32k_alwon_fck,
2364 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2367 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2365 .enable_bit = OMAP3430_EN_GPT4_SHIFT, 2368 .enable_bit = OMAP3430_EN_GPIO4_SHIFT,
2366 .flags = CLOCK_IN_OMAP343X, 2369 .flags = CLOCK_IN_OMAP343X,
2367 .recalc = &followparent_recalc, 2370 .recalc = &followparent_recalc,
2368}; 2371};
@@ -2371,7 +2374,7 @@ static struct clk gpio3_fck = {
2371 .name = "gpio3_fck", 2374 .name = "gpio3_fck",
2372 .parent = &per_32k_alwon_fck, 2375 .parent = &per_32k_alwon_fck,
2373 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2376 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2374 .enable_bit = OMAP3430_EN_GPT3_SHIFT, 2377 .enable_bit = OMAP3430_EN_GPIO3_SHIFT,
2375 .flags = CLOCK_IN_OMAP343X, 2378 .flags = CLOCK_IN_OMAP343X,
2376 .recalc = &followparent_recalc, 2379 .recalc = &followparent_recalc,
2377}; 2380};
@@ -2380,7 +2383,7 @@ static struct clk gpio2_fck = {
2380 .name = "gpio2_fck", 2383 .name = "gpio2_fck",
2381 .parent = &per_32k_alwon_fck, 2384 .parent = &per_32k_alwon_fck,
2382 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN), 2385 .enable_reg = OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
2383 .enable_bit = OMAP3430_EN_GPT2_SHIFT, 2386 .enable_bit = OMAP3430_EN_GPIO2_SHIFT,
2384 .flags = CLOCK_IN_OMAP343X, 2387 .flags = CLOCK_IN_OMAP343X,
2385 .recalc = &followparent_recalc, 2388 .recalc = &followparent_recalc,
2386}; 2389};
diff --git a/arch/arm/mach-omap2/cm-regbits-34xx.h b/arch/arm/mach-omap2/cm-regbits-34xx.h
index 9249129a5f46..3c38395f6442 100644
--- a/arch/arm/mach-omap2/cm-regbits-34xx.h
+++ b/arch/arm/mach-omap2/cm-regbits-34xx.h
@@ -56,6 +56,7 @@
56 56
57/* CM_FCLKEN_IVA2 */ 57/* CM_FCLKEN_IVA2 */
58#define OMAP3430_CM_FCLKEN_IVA2_EN_IVA2 (1 << 0) 58#define OMAP3430_CM_FCLKEN_IVA2_EN_IVA2 (1 << 0)
59#define OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_SHIFT 0
59 60
60/* CM_CLKEN_PLL_IVA2 */ 61/* CM_CLKEN_PLL_IVA2 */
61#define OMAP3430_IVA2_DPLL_RAMPTIME_SHIFT 8 62#define OMAP3430_IVA2_DPLL_RAMPTIME_SHIFT 8
diff --git a/arch/arm/mach-omap2/mailbox.c b/arch/arm/mach-omap2/mailbox.c
index b03cd06e055b..4799561c5a9e 100644
--- a/arch/arm/mach-omap2/mailbox.c
+++ b/arch/arm/mach-omap2/mailbox.c
@@ -70,6 +70,9 @@ struct omap_mbox2_priv {
70 70
71static struct clk *mbox_ick_handle; 71static struct clk *mbox_ick_handle;
72 72
73static void omap2_mbox_enable_irq(struct omap_mbox *mbox,
74 omap_mbox_type_t irq);
75
73static inline unsigned int mbox_read_reg(unsigned int reg) 76static inline unsigned int mbox_read_reg(unsigned int reg)
74{ 77{
75 return __raw_readl(mbox_base + reg); 78 return __raw_readl(mbox_base + reg);
@@ -81,7 +84,7 @@ static inline void mbox_write_reg(unsigned int val, unsigned int reg)
81} 84}
82 85
83/* Mailbox H/W preparations */ 86/* Mailbox H/W preparations */
84static inline int omap2_mbox_startup(struct omap_mbox *mbox) 87static int omap2_mbox_startup(struct omap_mbox *mbox)
85{ 88{
86 unsigned int l; 89 unsigned int l;
87 90
@@ -97,38 +100,40 @@ static inline int omap2_mbox_startup(struct omap_mbox *mbox)
97 l |= 0x00000011; 100 l |= 0x00000011;
98 mbox_write_reg(l, MAILBOX_SYSCONFIG); 101 mbox_write_reg(l, MAILBOX_SYSCONFIG);
99 102
103 omap2_mbox_enable_irq(mbox, IRQ_RX);
104
100 return 0; 105 return 0;
101} 106}
102 107
103static inline void omap2_mbox_shutdown(struct omap_mbox *mbox) 108static void omap2_mbox_shutdown(struct omap_mbox *mbox)
104{ 109{
105 clk_disable(mbox_ick_handle); 110 clk_disable(mbox_ick_handle);
106 clk_put(mbox_ick_handle); 111 clk_put(mbox_ick_handle);
107} 112}
108 113
109/* Mailbox FIFO handle functions */ 114/* Mailbox FIFO handle functions */
110static inline mbox_msg_t omap2_mbox_fifo_read(struct omap_mbox *mbox) 115static mbox_msg_t omap2_mbox_fifo_read(struct omap_mbox *mbox)
111{ 116{
112 struct omap_mbox2_fifo *fifo = 117 struct omap_mbox2_fifo *fifo =
113 &((struct omap_mbox2_priv *)mbox->priv)->rx_fifo; 118 &((struct omap_mbox2_priv *)mbox->priv)->rx_fifo;
114 return (mbox_msg_t) mbox_read_reg(fifo->msg); 119 return (mbox_msg_t) mbox_read_reg(fifo->msg);
115} 120}
116 121
117static inline void omap2_mbox_fifo_write(struct omap_mbox *mbox, mbox_msg_t msg) 122static void omap2_mbox_fifo_write(struct omap_mbox *mbox, mbox_msg_t msg)
118{ 123{
119 struct omap_mbox2_fifo *fifo = 124 struct omap_mbox2_fifo *fifo =
120 &((struct omap_mbox2_priv *)mbox->priv)->tx_fifo; 125 &((struct omap_mbox2_priv *)mbox->priv)->tx_fifo;
121 mbox_write_reg(msg, fifo->msg); 126 mbox_write_reg(msg, fifo->msg);
122} 127}
123 128
124static inline int omap2_mbox_fifo_empty(struct omap_mbox *mbox) 129static int omap2_mbox_fifo_empty(struct omap_mbox *mbox)
125{ 130{
126 struct omap_mbox2_fifo *fifo = 131 struct omap_mbox2_fifo *fifo =
127 &((struct omap_mbox2_priv *)mbox->priv)->rx_fifo; 132 &((struct omap_mbox2_priv *)mbox->priv)->rx_fifo;
128 return (mbox_read_reg(fifo->msg_stat) == 0); 133 return (mbox_read_reg(fifo->msg_stat) == 0);
129} 134}
130 135
131static inline int omap2_mbox_fifo_full(struct omap_mbox *mbox) 136static int omap2_mbox_fifo_full(struct omap_mbox *mbox)
132{ 137{
133 struct omap_mbox2_fifo *fifo = 138 struct omap_mbox2_fifo *fifo =
134 &((struct omap_mbox2_priv *)mbox->priv)->tx_fifo; 139 &((struct omap_mbox2_priv *)mbox->priv)->tx_fifo;
@@ -136,7 +141,7 @@ static inline int omap2_mbox_fifo_full(struct omap_mbox *mbox)
136} 141}
137 142
138/* Mailbox IRQ handle functions */ 143/* Mailbox IRQ handle functions */
139static inline void omap2_mbox_enable_irq(struct omap_mbox *mbox, 144static void omap2_mbox_enable_irq(struct omap_mbox *mbox,
140 omap_mbox_type_t irq) 145 omap_mbox_type_t irq)
141{ 146{
142 struct omap_mbox2_priv *p = (struct omap_mbox2_priv *)mbox->priv; 147 struct omap_mbox2_priv *p = (struct omap_mbox2_priv *)mbox->priv;
@@ -147,7 +152,7 @@ static inline void omap2_mbox_enable_irq(struct omap_mbox *mbox,
147 mbox_write_reg(l, p->irqenable); 152 mbox_write_reg(l, p->irqenable);
148} 153}
149 154
150static inline void omap2_mbox_disable_irq(struct omap_mbox *mbox, 155static void omap2_mbox_disable_irq(struct omap_mbox *mbox,
151 omap_mbox_type_t irq) 156 omap_mbox_type_t irq)
152{ 157{
153 struct omap_mbox2_priv *p = (struct omap_mbox2_priv *)mbox->priv; 158 struct omap_mbox2_priv *p = (struct omap_mbox2_priv *)mbox->priv;
@@ -158,7 +163,7 @@ static inline void omap2_mbox_disable_irq(struct omap_mbox *mbox,
158 mbox_write_reg(l, p->irqenable); 163 mbox_write_reg(l, p->irqenable);
159} 164}
160 165
161static inline void omap2_mbox_ack_irq(struct omap_mbox *mbox, 166static void omap2_mbox_ack_irq(struct omap_mbox *mbox,
162 omap_mbox_type_t irq) 167 omap_mbox_type_t irq)
163{ 168{
164 struct omap_mbox2_priv *p = (struct omap_mbox2_priv *)mbox->priv; 169 struct omap_mbox2_priv *p = (struct omap_mbox2_priv *)mbox->priv;
@@ -167,7 +172,7 @@ static inline void omap2_mbox_ack_irq(struct omap_mbox *mbox,
167 mbox_write_reg(bit, p->irqstatus); 172 mbox_write_reg(bit, p->irqstatus);
168} 173}
169 174
170static inline int omap2_mbox_is_irq(struct omap_mbox *mbox, 175static int omap2_mbox_is_irq(struct omap_mbox *mbox,
171 omap_mbox_type_t irq) 176 omap_mbox_type_t irq)
172{ 177{
173 struct omap_mbox2_priv *p = (struct omap_mbox2_priv *)mbox->priv; 178 struct omap_mbox2_priv *p = (struct omap_mbox2_priv *)mbox->priv;
diff --git a/arch/arm/mach-omap2/prm.h b/arch/arm/mach-omap2/prm.h
index ab7649afd891..618f8111658a 100644
--- a/arch/arm/mach-omap2/prm.h
+++ b/arch/arm/mach-omap2/prm.h
@@ -30,7 +30,7 @@
30 30
31/* 31/*
32 * Architecture-specific global PRM registers 32 * Architecture-specific global PRM registers
33 * Use prm_{read,write}_reg() with these registers. 33 * Use __raw_{read,write}l() with these registers.
34 * 34 *
35 * With a few exceptions, these are the register names beginning with 35 * With a few exceptions, these are the register names beginning with
36 * PRCM_* on 24xx, and PRM_* on 34xx. (The exceptions are the 36 * PRCM_* on 24xx, and PRM_* on 34xx. (The exceptions are the
diff --git a/arch/arm/mach-orion5x/dns323-setup.c b/arch/arm/mach-orion5x/dns323-setup.c
index f9430f5ca9a8..27ce967ab9e5 100644
--- a/arch/arm/mach-orion5x/dns323-setup.c
+++ b/arch/arm/mach-orion5x/dns323-setup.c
@@ -58,7 +58,7 @@ static int __init dns323_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
58} 58}
59 59
60static struct hw_pci dns323_pci __initdata = { 60static struct hw_pci dns323_pci __initdata = {
61 .nr_controllers = 1, 61 .nr_controllers = 2,
62 .swizzle = pci_std_swizzle, 62 .swizzle = pci_std_swizzle,
63 .setup = orion5x_pci_sys_setup, 63 .setup = orion5x_pci_sys_setup,
64 .scan = orion5x_pci_sys_scan_bus, 64 .scan = orion5x_pci_sys_scan_bus,
diff --git a/arch/arm/mach-orion5x/kurobox_pro-setup.c b/arch/arm/mach-orion5x/kurobox_pro-setup.c
index 88410862feef..f5074b877b7f 100644
--- a/arch/arm/mach-orion5x/kurobox_pro-setup.c
+++ b/arch/arm/mach-orion5x/kurobox_pro-setup.c
@@ -138,7 +138,7 @@ static int __init kurobox_pro_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
138} 138}
139 139
140static struct hw_pci kurobox_pro_pci __initdata = { 140static struct hw_pci kurobox_pro_pci __initdata = {
141 .nr_controllers = 1, 141 .nr_controllers = 2,
142 .swizzle = pci_std_swizzle, 142 .swizzle = pci_std_swizzle,
143 .setup = orion5x_pci_sys_setup, 143 .setup = orion5x_pci_sys_setup,
144 .scan = orion5x_pci_sys_scan_bus, 144 .scan = orion5x_pci_sys_scan_bus,
diff --git a/arch/arm/mach-pxa/cm-x270.c b/arch/arm/mach-pxa/cm-x270.c
index 6d4416a4f378..f5851d1adc25 100644
--- a/arch/arm/mach-pxa/cm-x270.c
+++ b/arch/arm/mach-pxa/cm-x270.c
@@ -59,7 +59,7 @@ static struct resource cmx270_dm9k_resource[] = {
59 [2] = { 59 [2] = {
60 .start = CMX270_ETHIRQ, 60 .start = CMX270_ETHIRQ,
61 .end = CMX270_ETHIRQ, 61 .end = CMX270_ETHIRQ,
62 .flags = IORESOURCE_IRQ, 62 .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE,
63 } 63 }
64}; 64};
65 65
diff --git a/arch/arm/mach-pxa/colibri.c b/arch/arm/mach-pxa/colibri.c
index 43bf5a183e90..574839d7c132 100644
--- a/arch/arm/mach-pxa/colibri.c
+++ b/arch/arm/mach-pxa/colibri.c
@@ -98,7 +98,7 @@ static struct resource dm9000_resources[] = {
98 [2] = { 98 [2] = {
99 .start = COLIBRI_ETH_IRQ, 99 .start = COLIBRI_ETH_IRQ,
100 .end = COLIBRI_ETH_IRQ, 100 .end = COLIBRI_ETH_IRQ,
101 .flags = IORESOURCE_IRQ, 101 .flags = IORESOURCE_IRQ | IRQF_TRIGGER_RISING,
102 }, 102 },
103}; 103};
104 104
@@ -119,7 +119,6 @@ static void __init colibri_init(void)
119 /* DM9000 LAN */ 119 /* DM9000 LAN */
120 pxa_gpio_mode(GPIO78_nCS_2_MD); 120 pxa_gpio_mode(GPIO78_nCS_2_MD);
121 pxa_gpio_mode(GPIO_DM9000 | GPIO_IN); 121 pxa_gpio_mode(GPIO_DM9000 | GPIO_IN);
122 set_irq_type(COLIBRI_ETH_IRQ, IRQT_FALLING);
123 122
124 platform_add_devices(colibri_devices, ARRAY_SIZE(colibri_devices)); 123 platform_add_devices(colibri_devices, ARRAY_SIZE(colibri_devices));
125} 124}
diff --git a/arch/arm/mach-pxa/em-x270.c b/arch/arm/mach-pxa/em-x270.c
index edc4f07a230d..9c57700ee5c2 100644
--- a/arch/arm/mach-pxa/em-x270.c
+++ b/arch/arm/mach-pxa/em-x270.c
@@ -50,7 +50,7 @@ static struct resource em_x270_dm9k_resource[] = {
50 [2] = { 50 [2] = {
51 .start = EM_X270_ETHIRQ, 51 .start = EM_X270_ETHIRQ,
52 .end = EM_X270_ETHIRQ, 52 .end = EM_X270_ETHIRQ,
53 .flags = IORESOURCE_IRQ, 53 .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE,
54 } 54 }
55}; 55};
56 56
diff --git a/arch/arm/mach-pxa/ssp.c b/arch/arm/mach-pxa/ssp.c
index 00af7f2fed66..0bb31982fb6f 100644
--- a/arch/arm/mach-pxa/ssp.c
+++ b/arch/arm/mach-pxa/ssp.c
@@ -330,7 +330,7 @@ struct ssp_device *ssp_request(int port, const char *label)
330 330
331 mutex_unlock(&ssp_lock); 331 mutex_unlock(&ssp_lock);
332 332
333 if (ssp->port_id != port) 333 if (&ssp->node == &ssp_list)
334 return NULL; 334 return NULL;
335 335
336 return ssp; 336 return ssp;
diff --git a/arch/arm/mach-pxa/tosa.c b/arch/arm/mach-pxa/tosa.c
index c2cbd66db814..ab4a9f579913 100644
--- a/arch/arm/mach-pxa/tosa.c
+++ b/arch/arm/mach-pxa/tosa.c
@@ -467,8 +467,8 @@ static struct platform_device *devices[] __initdata = {
467 467
468static void tosa_poweroff(void) 468static void tosa_poweroff(void)
469{ 469{
470 pxa_gpio_mode(TOSA_GPIO_ON_RESET | GPIO_OUT); 470 gpio_direction_output(TOSA_GPIO_ON_RESET, 0);
471 GPSR(TOSA_GPIO_ON_RESET) = GPIO_bit(TOSA_GPIO_ON_RESET); 471 gpio_set_value(TOSA_GPIO_ON_RESET, 1);
472 472
473 mdelay(1000); 473 mdelay(1000);
474 arm_machine_restart('h'); 474 arm_machine_restart('h');
diff --git a/arch/arm/mach-s3c2410/mach-bast.c b/arch/arm/mach-s3c2410/mach-bast.c
index 661a2358ac22..27f63d5d3a7b 100644
--- a/arch/arm/mach-s3c2410/mach-bast.c
+++ b/arch/arm/mach-s3c2410/mach-bast.c
@@ -374,7 +374,7 @@ static struct resource bast_dm9k_resource[] = {
374 [2] = { 374 [2] = {
375 .start = IRQ_DM9000, 375 .start = IRQ_DM9000,
376 .end = IRQ_DM9000, 376 .end = IRQ_DM9000,
377 .flags = IORESOURCE_IRQ, 377 .flags = IORESOURCE_IRQ | IRQF_TRIGGER_HIGH,
378 } 378 }
379 379
380}; 380};
diff --git a/arch/arm/mach-s3c2410/mach-vr1000.c b/arch/arm/mach-s3c2410/mach-vr1000.c
index c56423373ff3..4c4b5c4207c4 100644
--- a/arch/arm/mach-s3c2410/mach-vr1000.c
+++ b/arch/arm/mach-s3c2410/mach-vr1000.c
@@ -263,7 +263,7 @@ static struct resource vr1000_dm9k0_resource[] = {
263 [2] = { 263 [2] = {
264 .start = IRQ_VR1000_DM9000A, 264 .start = IRQ_VR1000_DM9000A,
265 .end = IRQ_VR1000_DM9000A, 265 .end = IRQ_VR1000_DM9000A,
266 .flags = IORESOURCE_IRQ 266 .flags = IORESOURCE_IRQ | IRQF_TRIGGER_HIGH,
267 } 267 }
268 268
269}; 269};
@@ -282,7 +282,7 @@ static struct resource vr1000_dm9k1_resource[] = {
282 [2] = { 282 [2] = {
283 .start = IRQ_VR1000_DM9000N, 283 .start = IRQ_VR1000_DM9000N,
284 .end = IRQ_VR1000_DM9000N, 284 .end = IRQ_VR1000_DM9000N,
285 .flags = IORESOURCE_IRQ 285 .flags = IORESOURCE_IRQ | IRQF_TRIGGER_HIGH,
286 } 286 }
287}; 287};
288 288
diff --git a/arch/arm/mach-sa1100/collie.c b/arch/arm/mach-sa1100/collie.c
index 6496eb645cee..2f772a3965c4 100644
--- a/arch/arm/mach-sa1100/collie.c
+++ b/arch/arm/mach-sa1100/collie.c
@@ -225,26 +225,28 @@ static void __init collie_init(void)
225 int ret = 0; 225 int ret = 0;
226 226
227 /* cpu initialize */ 227 /* cpu initialize */
228 GAFR = ( GPIO_SSP_TXD | \ 228 GAFR = GPIO_SSP_TXD | GPIO_SSP_SCLK | GPIO_SSP_SFRM | GPIO_SSP_CLK |
229 GPIO_SSP_SCLK | GPIO_SSP_SFRM | GPIO_SSP_CLK | GPIO_TIC_ACK | \ 229 GPIO_MCP_CLK | GPIO_32_768kHz;
230 GPIO_32_768kHz ); 230
231 231 GPDR = GPIO_LDD8 | GPIO_LDD9 | GPIO_LDD10 | GPIO_LDD11 | GPIO_LDD12 |
232 GPDR = ( GPIO_LDD8 | GPIO_LDD9 | GPIO_LDD10 | GPIO_LDD11 | GPIO_LDD12 | \ 232 GPIO_LDD13 | GPIO_LDD14 | GPIO_LDD15 | GPIO_SSP_TXD |
233 GPIO_LDD13 | GPIO_LDD14 | GPIO_LDD15 | GPIO_SSP_TXD | \ 233 GPIO_SSP_SCLK | GPIO_SSP_SFRM | GPIO_SDLC_SCLK |
234 GPIO_SSP_SCLK | GPIO_SSP_SFRM | GPIO_SDLC_SCLK | \ 234 COLLIE_GPIO_UCB1x00_RESET | COLLIE_GPIO_nMIC_ON |
235 GPIO_SDLC_AAF | GPIO_UART_SCLK1 | GPIO_32_768kHz ); 235 COLLIE_GPIO_nREMOCON_ON | GPIO_32_768kHz;
236 GPLR = GPIO_GPIO18; 236
237 237 PPDR = PPC_LDD0 | PPC_LDD1 | PPC_LDD2 | PPC_LDD3 | PPC_LDD4 | PPC_LDD5 |
238 // PPC pin setting 238 PPC_LDD6 | PPC_LDD7 | PPC_L_PCLK | PPC_L_LCLK | PPC_L_FCLK | PPC_L_BIAS |
239 PPDR = ( PPC_LDD0 | PPC_LDD1 | PPC_LDD2 | PPC_LDD3 | PPC_LDD4 | PPC_LDD5 | \ 239 PPC_TXD1 | PPC_TXD2 | PPC_TXD3 | PPC_TXD4 | PPC_SCLK | PPC_SFRM;
240 PPC_LDD6 | PPC_LDD7 | PPC_L_PCLK | PPC_L_LCLK | PPC_L_FCLK | PPC_L_BIAS | \ 240
241 PPC_TXD1 | PPC_TXD2 | PPC_RXD2 | PPC_TXD3 | PPC_TXD4 | PPC_SCLK | PPC_SFRM ); 241 PWER = COLLIE_GPIO_AC_IN | COLLIE_GPIO_CO | COLLIE_GPIO_ON_KEY |
242 242 COLLIE_GPIO_WAKEUP | COLLIE_GPIO_nREMOCON_INT | PWER_RTC;
243 PSDR = ( PPC_RXD1 | PPC_RXD2 | PPC_RXD3 | PPC_RXD4 ); 243
244 244 PGSR = COLLIE_GPIO_nREMOCON_ON;
245 GAFR |= GPIO_32_768kHz; 245
246 GPDR |= GPIO_32_768kHz; 246 PSDR = PPC_RXD1 | PPC_RXD2 | PPC_RXD3 | PPC_RXD4;
247 TUCR = TUCR_32_768kHz; 247
248 PCFR = PCFR_OPDE;
249
248 250
249 platform_scoop_config = &collie_pcmcia_config; 251 platform_scoop_config = &collie_pcmcia_config;
250 252
diff --git a/arch/arm/mm/proc-arm925.S b/arch/arm/mm/proc-arm925.S
index 065087afb772..d045812f3399 100644
--- a/arch/arm/mm/proc-arm925.S
+++ b/arch/arm/mm/proc-arm925.S
@@ -332,7 +332,7 @@ ENTRY(arm925_dma_flush_range)
332#ifndef CONFIG_CPU_DCACHE_WRITETHROUGH 332#ifndef CONFIG_CPU_DCACHE_WRITETHROUGH
333 mcr p15, 0, r0, c7, c14, 1 @ clean+invalidate D entry 333 mcr p15, 0, r0, c7, c14, 1 @ clean+invalidate D entry
334#else 334#else
335 mcr p15, 0, r0, c7, c10, 1 @ clean D entry 335 mcr p15, 0, r0, c7, c6, 1 @ invalidate D entry
336#endif 336#endif
337 add r0, r0, #CACHE_DLINESIZE 337 add r0, r0, #CACHE_DLINESIZE
338 cmp r0, r1 338 cmp r0, r1
diff --git a/arch/arm/mm/proc-arm926.S b/arch/arm/mm/proc-arm926.S
index 997db8472b5c..4cd33169a7c9 100644
--- a/arch/arm/mm/proc-arm926.S
+++ b/arch/arm/mm/proc-arm926.S
@@ -295,7 +295,7 @@ ENTRY(arm926_dma_flush_range)
295#ifndef CONFIG_CPU_DCACHE_WRITETHROUGH 295#ifndef CONFIG_CPU_DCACHE_WRITETHROUGH
296 mcr p15, 0, r0, c7, c14, 1 @ clean+invalidate D entry 296 mcr p15, 0, r0, c7, c14, 1 @ clean+invalidate D entry
297#else 297#else
298 mcr p15, 0, r0, c7, c10, 1 @ clean D entry 298 mcr p15, 0, r0, c7, c6, 1 @ invalidate D entry
299#endif 299#endif
300 add r0, r0, #CACHE_DLINESIZE 300 add r0, r0, #CACHE_DLINESIZE
301 cmp r0, r1 301 cmp r0, r1
diff --git a/arch/arm/mm/proc-arm940.S b/arch/arm/mm/proc-arm940.S
index 44ead902bd54..1a3d63df8e90 100644
--- a/arch/arm/mm/proc-arm940.S
+++ b/arch/arm/mm/proc-arm940.S
@@ -222,7 +222,7 @@ ENTRY(arm940_dma_flush_range)
222#ifndef CONFIG_CPU_DCACHE_WRITETHROUGH 222#ifndef CONFIG_CPU_DCACHE_WRITETHROUGH
223 mcr p15, 0, r3, c7, c14, 2 @ clean/flush D entry 223 mcr p15, 0, r3, c7, c14, 2 @ clean/flush D entry
224#else 224#else
225 mcr p15, 0, r3, c7, c10, 2 @ clean D entry 225 mcr p15, 0, r3, c7, c6, 2 @ invalidate D entry
226#endif 226#endif
227 subs r3, r3, #1 << 26 227 subs r3, r3, #1 << 26
228 bcs 2b @ entries 63 to 0 228 bcs 2b @ entries 63 to 0
diff --git a/arch/arm/mm/proc-arm946.S b/arch/arm/mm/proc-arm946.S
index 2218b0c01330..82d579ac9b98 100644
--- a/arch/arm/mm/proc-arm946.S
+++ b/arch/arm/mm/proc-arm946.S
@@ -265,7 +265,7 @@ ENTRY(arm946_dma_flush_range)
265#ifndef CONFIG_CPU_DCACHE_WRITETHROUGH 265#ifndef CONFIG_CPU_DCACHE_WRITETHROUGH
266 mcr p15, 0, r0, c7, c14, 1 @ clean+invalidate D entry 266 mcr p15, 0, r0, c7, c14, 1 @ clean+invalidate D entry
267#else 267#else
268 mcr p15, 0, r0, c7, c10, 1 @ clean D entry 268 mcr p15, 0, r0, c7, c6, 1 @ invalidate D entry
269#endif 269#endif
270 add r0, r0, #CACHE_DLINESIZE 270 add r0, r0, #CACHE_DLINESIZE
271 cmp r0, r1 271 cmp r0, r1
diff --git a/arch/arm/plat-omap/clock.c b/arch/arm/plat-omap/clock.c
index 72d34a23a2ec..2db5580048d8 100644
--- a/arch/arm/plat-omap/clock.c
+++ b/arch/arm/plat-omap/clock.c
@@ -21,6 +21,7 @@
21#include <linux/clk.h> 21#include <linux/clk.h>
22#include <linux/mutex.h> 22#include <linux/mutex.h>
23#include <linux/platform_device.h> 23#include <linux/platform_device.h>
24#include <linux/cpufreq.h>
24 25
25#include <asm/io.h> 26#include <asm/io.h>
26 27
@@ -134,9 +135,17 @@ void clk_disable(struct clk *clk)
134 return; 135 return;
135 136
136 spin_lock_irqsave(&clockfw_lock, flags); 137 spin_lock_irqsave(&clockfw_lock, flags);
137 BUG_ON(clk->usecount == 0); 138 if (clk->usecount == 0) {
139 printk(KERN_ERR "Trying disable clock %s with 0 usecount\n",
140 clk->name);
141 WARN_ON(1);
142 goto out;
143 }
144
138 if (arch_clock->clk_disable) 145 if (arch_clock->clk_disable)
139 arch_clock->clk_disable(clk); 146 arch_clock->clk_disable(clk);
147
148out:
140 spin_unlock_irqrestore(&clockfw_lock, flags); 149 spin_unlock_irqrestore(&clockfw_lock, flags);
141} 150}
142EXPORT_SYMBOL(clk_disable); 151EXPORT_SYMBOL(clk_disable);
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c
index 793740686be2..c00eda588cd8 100644
--- a/arch/arm/plat-omap/dma.c
+++ b/arch/arm/plat-omap/dma.c
@@ -604,6 +604,7 @@ int omap_request_dma(int dev_id, const char *dev_name,
604 chan->data = data; 604 chan->data = data;
605#ifndef CONFIG_ARCH_OMAP1 605#ifndef CONFIG_ARCH_OMAP1
606 chan->chain_id = -1; 606 chan->chain_id = -1;
607 chan->next_linked_ch = -1;
607#endif 608#endif
608 chan->enabled_irqs = OMAP_DMA_DROP_IRQ | OMAP_DMA_BLOCK_IRQ; 609 chan->enabled_irqs = OMAP_DMA_DROP_IRQ | OMAP_DMA_BLOCK_IRQ;
609 610
@@ -1087,7 +1088,6 @@ int omap_request_dma_chain(int dev_id, const char *dev_name,
1087 printk(KERN_ERR "omap_dma: Request failed %d\n", err); 1088 printk(KERN_ERR "omap_dma: Request failed %d\n", err);
1088 return err; 1089 return err;
1089 } 1090 }
1090 dma_chan[channels[i]].next_linked_ch = -1;
1091 dma_chan[channels[i]].prev_linked_ch = -1; 1091 dma_chan[channels[i]].prev_linked_ch = -1;
1092 dma_chan[channels[i]].state = DMA_CH_NOTSTARTED; 1092 dma_chan[channels[i]].state = DMA_CH_NOTSTARTED;
1093 1093
diff --git a/arch/arm/plat-omap/mailbox.c b/arch/arm/plat-omap/mailbox.c
index 1945ddfec18d..6f33f58bca45 100644
--- a/arch/arm/plat-omap/mailbox.c
+++ b/arch/arm/plat-omap/mailbox.c
@@ -355,7 +355,6 @@ static int omap_mbox_init(struct omap_mbox *mbox)
355 "failed to register mailbox interrupt:%d\n", ret); 355 "failed to register mailbox interrupt:%d\n", ret);
356 goto fail_request_irq; 356 goto fail_request_irq;
357 } 357 }
358 enable_mbox_irq(mbox, IRQ_RX);
359 358
360 mq = mbox_queue_alloc(mbox, mbox_txq_fn, mbox_tx_work); 359 mq = mbox_queue_alloc(mbox, mbox_txq_fn, mbox_tx_work);
361 if (!mq) { 360 if (!mq) {
diff --git a/arch/arm/plat-s3c24xx/s3c244x.c b/arch/arm/plat-s3c24xx/s3c244x.c
index f197bb3a2366..2f01af5f64c4 100644
--- a/arch/arm/plat-s3c24xx/s3c244x.c
+++ b/arch/arm/plat-s3c24xx/s3c244x.c
@@ -65,6 +65,7 @@ void __init s3c244x_map_io(struct map_desc *mach_desc, int size)
65 65
66 /* rename any peripherals used differing from the s3c2410 */ 66 /* rename any peripherals used differing from the s3c2410 */
67 67
68 s3c_device_sdi.name = "s3c2440-sdi";
68 s3c_device_i2c.name = "s3c2440-i2c"; 69 s3c_device_i2c.name = "s3c2440-i2c";
69 s3c_device_nand.name = "s3c2440-nand"; 70 s3c_device_nand.name = "s3c2440-nand";
70 s3c_device_usbgadget.name = "s3c2440-usbgadget"; 71 s3c_device_usbgadget.name = "s3c2440-usbgadget";
diff --git a/arch/avr32/configs/atngw100_defconfig b/arch/avr32/configs/atngw100_defconfig
index 06046074d68b..119edb839ac3 100644
--- a/arch/avr32/configs/atngw100_defconfig
+++ b/arch/avr32/configs/atngw100_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.24-rc7 3# Linux kernel version: 2.6.26-rc3
4# Wed Jan 9 23:20:41 2008 4# Mon May 26 13:30:59 2008
5# 5#
6CONFIG_AVR32=y 6CONFIG_AVR32=y
7CONFIG_GENERIC_GPIO=y 7CONFIG_GENERIC_GPIO=y
@@ -13,10 +13,10 @@ CONFIG_HARDIRQS_SW_RESEND=y
13CONFIG_GENERIC_IRQ_PROBE=y 13CONFIG_GENERIC_IRQ_PROBE=y
14CONFIG_RWSEM_GENERIC_SPINLOCK=y 14CONFIG_RWSEM_GENERIC_SPINLOCK=y
15CONFIG_GENERIC_TIME=y 15CONFIG_GENERIC_TIME=y
16CONFIG_GENERIC_CLOCKEVENTS=y
16# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set 17# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
17# CONFIG_ARCH_HAS_ILOG2_U32 is not set 18# CONFIG_ARCH_HAS_ILOG2_U32 is not set
18# CONFIG_ARCH_HAS_ILOG2_U64 is not set 19# CONFIG_ARCH_HAS_ILOG2_U64 is not set
19CONFIG_ARCH_SUPPORTS_OPROFILE=y
20CONFIG_GENERIC_HWEIGHT=y 20CONFIG_GENERIC_HWEIGHT=y
21CONFIG_GENERIC_CALIBRATE_DELAY=y 21CONFIG_GENERIC_CALIBRATE_DELAY=y
22CONFIG_GENERIC_BUG=y 22CONFIG_GENERIC_BUG=y
@@ -37,17 +37,15 @@ CONFIG_POSIX_MQUEUE=y
37CONFIG_BSD_PROCESS_ACCT=y 37CONFIG_BSD_PROCESS_ACCT=y
38CONFIG_BSD_PROCESS_ACCT_V3=y 38CONFIG_BSD_PROCESS_ACCT_V3=y
39# CONFIG_TASKSTATS is not set 39# CONFIG_TASKSTATS is not set
40# CONFIG_USER_NS is not set
41# CONFIG_PID_NS is not set
42# CONFIG_AUDIT is not set 40# CONFIG_AUDIT is not set
43# CONFIG_IKCONFIG is not set 41# CONFIG_IKCONFIG is not set
44CONFIG_LOG_BUF_SHIFT=14 42CONFIG_LOG_BUF_SHIFT=14
45# CONFIG_CGROUPS is not set 43# CONFIG_CGROUPS is not set
46CONFIG_FAIR_GROUP_SCHED=y 44# CONFIG_GROUP_SCHED is not set
47CONFIG_FAIR_USER_SCHED=y
48# CONFIG_FAIR_CGROUP_SCHED is not set
49CONFIG_SYSFS_DEPRECATED=y 45CONFIG_SYSFS_DEPRECATED=y
46CONFIG_SYSFS_DEPRECATED_V2=y
50# CONFIG_RELAY is not set 47# CONFIG_RELAY is not set
48# CONFIG_NAMESPACES is not set
51CONFIG_BLK_DEV_INITRD=y 49CONFIG_BLK_DEV_INITRD=y
52CONFIG_INITRAMFS_SOURCE="" 50CONFIG_INITRAMFS_SOURCE=""
53CONFIG_CC_OPTIMIZE_FOR_SIZE=y 51CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -61,11 +59,13 @@ CONFIG_HOTPLUG=y
61CONFIG_PRINTK=y 59CONFIG_PRINTK=y
62CONFIG_BUG=y 60CONFIG_BUG=y
63CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
62# CONFIG_COMPAT_BRK is not set
64# CONFIG_BASE_FULL is not set 63# CONFIG_BASE_FULL is not set
65CONFIG_FUTEX=y 64CONFIG_FUTEX=y
66CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
67CONFIG_EPOLL=y 66CONFIG_EPOLL=y
68CONFIG_SIGNALFD=y 67CONFIG_SIGNALFD=y
68CONFIG_TIMERFD=y
69CONFIG_EVENTFD=y 69CONFIG_EVENTFD=y
70CONFIG_SHMEM=y 70CONFIG_SHMEM=y
71CONFIG_VM_EVENT_COUNTERS=y 71CONFIG_VM_EVENT_COUNTERS=y
@@ -73,11 +73,21 @@ CONFIG_SLUB_DEBUG=y
73# CONFIG_SLAB is not set 73# CONFIG_SLAB is not set
74CONFIG_SLUB=y 74CONFIG_SLUB=y
75# CONFIG_SLOB is not set 75# CONFIG_SLOB is not set
76CONFIG_PROFILING=y
77# CONFIG_MARKERS is not set
78CONFIG_OPROFILE=m
79CONFIG_HAVE_OPROFILE=y
80CONFIG_KPROBES=y
81CONFIG_HAVE_KPROBES=y
82# CONFIG_HAVE_KRETPROBES is not set
83# CONFIG_HAVE_DMA_ATTRS is not set
84CONFIG_PROC_PAGE_MONITOR=y
76CONFIG_SLABINFO=y 85CONFIG_SLABINFO=y
77CONFIG_RT_MUTEXES=y 86CONFIG_RT_MUTEXES=y
78# CONFIG_TINY_SHMEM is not set 87# CONFIG_TINY_SHMEM is not set
79CONFIG_BASE_SMALL=1 88CONFIG_BASE_SMALL=1
80CONFIG_MODULES=y 89CONFIG_MODULES=y
90# CONFIG_MODULE_FORCE_LOAD is not set
81CONFIG_MODULE_UNLOAD=y 91CONFIG_MODULE_UNLOAD=y
82CONFIG_MODULE_FORCE_UNLOAD=y 92CONFIG_MODULE_FORCE_UNLOAD=y
83# CONFIG_MODVERSIONS is not set 93# CONFIG_MODVERSIONS is not set
@@ -101,10 +111,15 @@ CONFIG_IOSCHED_CFQ=y
101CONFIG_DEFAULT_CFQ=y 111CONFIG_DEFAULT_CFQ=y
102# CONFIG_DEFAULT_NOOP is not set 112# CONFIG_DEFAULT_NOOP is not set
103CONFIG_DEFAULT_IOSCHED="cfq" 113CONFIG_DEFAULT_IOSCHED="cfq"
114CONFIG_CLASSIC_RCU=y
104 115
105# 116#
106# System Type and features 117# System Type and features
107# 118#
119CONFIG_TICK_ONESHOT=y
120CONFIG_NO_HZ=y
121CONFIG_HIGH_RES_TIMERS=y
122CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
108CONFIG_SUBARCH_AVR32B=y 123CONFIG_SUBARCH_AVR32B=y
109CONFIG_MMU=y 124CONFIG_MMU=y
110CONFIG_PERFORMANCE_COUNTERS=y 125CONFIG_PERFORMANCE_COUNTERS=y
@@ -141,16 +156,19 @@ CONFIG_FLATMEM=y
141CONFIG_FLAT_NODE_MEM_MAP=y 156CONFIG_FLAT_NODE_MEM_MAP=y
142# CONFIG_SPARSEMEM_STATIC is not set 157# CONFIG_SPARSEMEM_STATIC is not set
143# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 158# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
159CONFIG_PAGEFLAGS_EXTENDED=y
144CONFIG_SPLIT_PTLOCK_CPUS=4 160CONFIG_SPLIT_PTLOCK_CPUS=4
145# CONFIG_RESOURCES_64BIT is not set 161# CONFIG_RESOURCES_64BIT is not set
146CONFIG_ZONE_DMA_FLAG=0 162CONFIG_ZONE_DMA_FLAG=0
147CONFIG_VIRT_TO_BUS=y 163CONFIG_VIRT_TO_BUS=y
148# CONFIG_OWNERSHIP_TRACE is not set 164# CONFIG_OWNERSHIP_TRACE is not set
165CONFIG_NMI_DEBUGGING=y
149# CONFIG_HZ_100 is not set 166# CONFIG_HZ_100 is not set
150CONFIG_HZ_250=y 167CONFIG_HZ_250=y
151# CONFIG_HZ_300 is not set 168# CONFIG_HZ_300 is not set
152# CONFIG_HZ_1000 is not set 169# CONFIG_HZ_1000 is not set
153CONFIG_HZ=250 170CONFIG_HZ=250
171# CONFIG_SCHED_HRTICK is not set
154CONFIG_CMDLINE="" 172CONFIG_CMDLINE=""
155 173
156# 174#
@@ -164,9 +182,10 @@ CONFIG_CPU_FREQ=y
164CONFIG_CPU_FREQ_TABLE=y 182CONFIG_CPU_FREQ_TABLE=y
165# CONFIG_CPU_FREQ_DEBUG is not set 183# CONFIG_CPU_FREQ_DEBUG is not set
166# CONFIG_CPU_FREQ_STAT is not set 184# CONFIG_CPU_FREQ_STAT is not set
167CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 185# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
186# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
168# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 187# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
169# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set 188CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
170# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set 189# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
171CONFIG_CPU_FREQ_GOV_PERFORMANCE=y 190CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
172# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set 191# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
@@ -202,6 +221,7 @@ CONFIG_XFRM=y
202CONFIG_XFRM_USER=y 221CONFIG_XFRM_USER=y
203# CONFIG_XFRM_SUB_POLICY is not set 222# CONFIG_XFRM_SUB_POLICY is not set
204# CONFIG_XFRM_MIGRATE is not set 223# CONFIG_XFRM_MIGRATE is not set
224# CONFIG_XFRM_STATISTICS is not set
205CONFIG_NET_KEY=y 225CONFIG_NET_KEY=y
206# CONFIG_NET_KEY_MIGRATE is not set 226# CONFIG_NET_KEY_MIGRATE is not set
207CONFIG_INET=y 227CONFIG_INET=y
@@ -255,87 +275,40 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=y
255CONFIG_INET6_XFRM_MODE_BEET=y 275CONFIG_INET6_XFRM_MODE_BEET=y
256# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 276# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
257CONFIG_IPV6_SIT=y 277CONFIG_IPV6_SIT=y
278CONFIG_IPV6_NDISC_NODETYPE=y
258# CONFIG_IPV6_TUNNEL is not set 279# CONFIG_IPV6_TUNNEL is not set
259# CONFIG_IPV6_MULTIPLE_TABLES is not set 280# CONFIG_IPV6_MULTIPLE_TABLES is not set
281# CONFIG_IPV6_MROUTE is not set
260# CONFIG_NETWORK_SECMARK is not set 282# CONFIG_NETWORK_SECMARK is not set
261CONFIG_NETFILTER=y 283CONFIG_NETFILTER=y
262# CONFIG_NETFILTER_DEBUG is not set 284# CONFIG_NETFILTER_DEBUG is not set
263CONFIG_BRIDGE_NETFILTER=y 285# CONFIG_NETFILTER_ADVANCED is not set
264 286
265# 287#
266# Core Netfilter Configuration 288# Core Netfilter Configuration
267# 289#
268# CONFIG_NETFILTER_NETLINK is not set 290CONFIG_NETFILTER_NETLINK=m
269CONFIG_NF_CONNTRACK_ENABLED=m 291CONFIG_NETFILTER_NETLINK_LOG=m
270CONFIG_NF_CONNTRACK=m 292CONFIG_NF_CONNTRACK=m
271CONFIG_NF_CT_ACCT=y
272CONFIG_NF_CONNTRACK_MARK=y
273# CONFIG_NF_CONNTRACK_EVENTS is not set
274CONFIG_NF_CT_PROTO_GRE=m
275# CONFIG_NF_CT_PROTO_SCTP is not set
276# CONFIG_NF_CT_PROTO_UDPLITE is not set
277CONFIG_NF_CONNTRACK_AMANDA=m
278CONFIG_NF_CONNTRACK_FTP=m 293CONFIG_NF_CONNTRACK_FTP=m
279CONFIG_NF_CONNTRACK_H323=m
280CONFIG_NF_CONNTRACK_IRC=m 294CONFIG_NF_CONNTRACK_IRC=m
281CONFIG_NF_CONNTRACK_NETBIOS_NS=m
282CONFIG_NF_CONNTRACK_PPTP=m
283CONFIG_NF_CONNTRACK_SANE=m
284CONFIG_NF_CONNTRACK_SIP=m 295CONFIG_NF_CONNTRACK_SIP=m
285CONFIG_NF_CONNTRACK_TFTP=m 296CONFIG_NF_CT_NETLINK=m
286CONFIG_NETFILTER_XTABLES=y 297CONFIG_NETFILTER_XTABLES=y
287CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
288# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
289# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
290CONFIG_NETFILTER_XT_TARGET_MARK=m 298CONFIG_NETFILTER_XT_TARGET_MARK=m
291CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
292CONFIG_NETFILTER_XT_TARGET_NFLOG=m 299CONFIG_NETFILTER_XT_TARGET_NFLOG=m
293# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
294# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
295CONFIG_NETFILTER_XT_TARGET_TCPMSS=m 300CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
296CONFIG_NETFILTER_XT_MATCH_COMMENT=m
297CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
298# CONFIG_NETFILTER_XT_MATCH_CONNLIMIT is not set
299CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
300CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m 301CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
301# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
302# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
303CONFIG_NETFILTER_XT_MATCH_ESP=m
304CONFIG_NETFILTER_XT_MATCH_HELPER=m
305CONFIG_NETFILTER_XT_MATCH_LENGTH=m
306CONFIG_NETFILTER_XT_MATCH_LIMIT=m
307CONFIG_NETFILTER_XT_MATCH_MAC=m
308CONFIG_NETFILTER_XT_MATCH_MARK=m 302CONFIG_NETFILTER_XT_MATCH_MARK=m
309CONFIG_NETFILTER_XT_MATCH_POLICY=m 303CONFIG_NETFILTER_XT_MATCH_POLICY=m
310CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
311# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
312CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
313CONFIG_NETFILTER_XT_MATCH_QUOTA=m
314CONFIG_NETFILTER_XT_MATCH_REALM=m
315# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
316CONFIG_NETFILTER_XT_MATCH_STATE=m 304CONFIG_NETFILTER_XT_MATCH_STATE=m
317CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
318CONFIG_NETFILTER_XT_MATCH_STRING=m
319CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
320# CONFIG_NETFILTER_XT_MATCH_TIME is not set
321# CONFIG_NETFILTER_XT_MATCH_U32 is not set
322CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
323 305
324# 306#
325# IP: Netfilter Configuration 307# IP: Netfilter Configuration
326# 308#
327CONFIG_NF_CONNTRACK_IPV4=m 309CONFIG_NF_CONNTRACK_IPV4=m
328CONFIG_NF_CONNTRACK_PROC_COMPAT=y 310CONFIG_NF_CONNTRACK_PROC_COMPAT=y
329# CONFIG_IP_NF_QUEUE is not set
330CONFIG_IP_NF_IPTABLES=m 311CONFIG_IP_NF_IPTABLES=m
331CONFIG_IP_NF_MATCH_IPRANGE=m
332CONFIG_IP_NF_MATCH_TOS=m
333CONFIG_IP_NF_MATCH_RECENT=m
334CONFIG_IP_NF_MATCH_ECN=m
335CONFIG_IP_NF_MATCH_AH=m
336CONFIG_IP_NF_MATCH_TTL=m
337CONFIG_IP_NF_MATCH_OWNER=m
338CONFIG_IP_NF_MATCH_ADDRTYPE=m
339CONFIG_IP_NF_FILTER=m 312CONFIG_IP_NF_FILTER=m
340CONFIG_IP_NF_TARGET_REJECT=m 313CONFIG_IP_NF_TARGET_REJECT=m
341CONFIG_IP_NF_TARGET_LOG=m 314CONFIG_IP_NF_TARGET_LOG=m
@@ -343,54 +316,25 @@ CONFIG_IP_NF_TARGET_LOG=m
343CONFIG_NF_NAT=m 316CONFIG_NF_NAT=m
344CONFIG_NF_NAT_NEEDED=y 317CONFIG_NF_NAT_NEEDED=y
345CONFIG_IP_NF_TARGET_MASQUERADE=m 318CONFIG_IP_NF_TARGET_MASQUERADE=m
346CONFIG_IP_NF_TARGET_REDIRECT=m
347CONFIG_IP_NF_TARGET_NETMAP=m
348CONFIG_IP_NF_TARGET_SAME=m
349CONFIG_NF_NAT_SNMP_BASIC=m
350CONFIG_NF_NAT_PROTO_GRE=m
351CONFIG_NF_NAT_FTP=m 319CONFIG_NF_NAT_FTP=m
352CONFIG_NF_NAT_IRC=m 320CONFIG_NF_NAT_IRC=m
353CONFIG_NF_NAT_TFTP=m 321# CONFIG_NF_NAT_TFTP is not set
354CONFIG_NF_NAT_AMANDA=m 322# CONFIG_NF_NAT_AMANDA is not set
355CONFIG_NF_NAT_PPTP=m 323# CONFIG_NF_NAT_PPTP is not set
356CONFIG_NF_NAT_H323=m 324# CONFIG_NF_NAT_H323 is not set
357CONFIG_NF_NAT_SIP=m 325CONFIG_NF_NAT_SIP=m
358CONFIG_IP_NF_MANGLE=m 326CONFIG_IP_NF_MANGLE=m
359CONFIG_IP_NF_TARGET_TOS=m
360CONFIG_IP_NF_TARGET_ECN=m
361CONFIG_IP_NF_TARGET_TTL=m
362CONFIG_IP_NF_TARGET_CLUSTERIP=m
363CONFIG_IP_NF_RAW=m
364CONFIG_IP_NF_ARPTABLES=m
365CONFIG_IP_NF_ARPFILTER=m
366CONFIG_IP_NF_ARP_MANGLE=m
367 327
368# 328#
369# IPv6: Netfilter Configuration (EXPERIMENTAL) 329# IPv6: Netfilter Configuration
370# 330#
371CONFIG_NF_CONNTRACK_IPV6=m 331CONFIG_NF_CONNTRACK_IPV6=m
372CONFIG_IP6_NF_QUEUE=m
373CONFIG_IP6_NF_IPTABLES=m 332CONFIG_IP6_NF_IPTABLES=m
374CONFIG_IP6_NF_MATCH_RT=m
375CONFIG_IP6_NF_MATCH_OPTS=m
376CONFIG_IP6_NF_MATCH_FRAG=m
377CONFIG_IP6_NF_MATCH_HL=m
378CONFIG_IP6_NF_MATCH_OWNER=m
379CONFIG_IP6_NF_MATCH_IPV6HEADER=m 333CONFIG_IP6_NF_MATCH_IPV6HEADER=m
380CONFIG_IP6_NF_MATCH_AH=m
381CONFIG_IP6_NF_MATCH_MH=m
382CONFIG_IP6_NF_MATCH_EUI64=m
383CONFIG_IP6_NF_FILTER=m 334CONFIG_IP6_NF_FILTER=m
384CONFIG_IP6_NF_TARGET_LOG=m 335CONFIG_IP6_NF_TARGET_LOG=m
385CONFIG_IP6_NF_TARGET_REJECT=m 336CONFIG_IP6_NF_TARGET_REJECT=m
386CONFIG_IP6_NF_MANGLE=m 337CONFIG_IP6_NF_MANGLE=m
387CONFIG_IP6_NF_TARGET_HL=m
388CONFIG_IP6_NF_RAW=m
389
390#
391# Bridge: Netfilter Configuration
392#
393# CONFIG_BRIDGE_NF_EBTABLES is not set
394# CONFIG_IP_DCCP is not set 338# CONFIG_IP_DCCP is not set
395# CONFIG_IP_SCTP is not set 339# CONFIG_IP_SCTP is not set
396# CONFIG_TIPC is not set 340# CONFIG_TIPC is not set
@@ -407,7 +351,6 @@ CONFIG_LLC=m
407# CONFIG_ECONET is not set 351# CONFIG_ECONET is not set
408# CONFIG_WAN_ROUTER is not set 352# CONFIG_WAN_ROUTER is not set
409# CONFIG_NET_SCHED is not set 353# CONFIG_NET_SCHED is not set
410CONFIG_NET_CLS_ROUTE=y
411 354
412# 355#
413# Network testing 356# Network testing
@@ -415,6 +358,7 @@ CONFIG_NET_CLS_ROUTE=y
415# CONFIG_NET_PKTGEN is not set 358# CONFIG_NET_PKTGEN is not set
416# CONFIG_NET_TCPPROBE is not set 359# CONFIG_NET_TCPPROBE is not set
417# CONFIG_HAMRADIO is not set 360# CONFIG_HAMRADIO is not set
361# CONFIG_CAN is not set
418# CONFIG_IRDA is not set 362# CONFIG_IRDA is not set
419# CONFIG_BT is not set 363# CONFIG_BT is not set
420# CONFIG_AF_RXRPC is not set 364# CONFIG_AF_RXRPC is not set
@@ -450,6 +394,7 @@ CONFIG_MTD=y
450CONFIG_MTD_PARTITIONS=y 394CONFIG_MTD_PARTITIONS=y
451# CONFIG_MTD_REDBOOT_PARTS is not set 395# CONFIG_MTD_REDBOOT_PARTS is not set
452CONFIG_MTD_CMDLINE_PARTS=y 396CONFIG_MTD_CMDLINE_PARTS=y
397# CONFIG_MTD_AR7_PARTS is not set
453 398
454# 399#
455# User Modules And Translation Layers 400# User Modules And Translation Layers
@@ -531,11 +476,18 @@ CONFIG_BLK_DEV_NBD=m
531CONFIG_BLK_DEV_RAM=m 476CONFIG_BLK_DEV_RAM=m
532CONFIG_BLK_DEV_RAM_COUNT=16 477CONFIG_BLK_DEV_RAM_COUNT=16
533CONFIG_BLK_DEV_RAM_SIZE=4096 478CONFIG_BLK_DEV_RAM_SIZE=4096
534CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 479# CONFIG_BLK_DEV_XIP is not set
535# CONFIG_CDROM_PKTCDVD is not set 480# CONFIG_CDROM_PKTCDVD is not set
536# CONFIG_ATA_OVER_ETH is not set 481# CONFIG_ATA_OVER_ETH is not set
537# CONFIG_MISC_DEVICES is not set 482CONFIG_MISC_DEVICES=y
538# CONFIG_IDE is not set 483# CONFIG_ATMEL_PWM is not set
484CONFIG_ATMEL_TCLIB=y
485CONFIG_ATMEL_TCB_CLKSRC=y
486CONFIG_ATMEL_TCB_CLKSRC_BLOCK=0
487# CONFIG_EEPROM_93CX6 is not set
488# CONFIG_ATMEL_SSC is not set
489# CONFIG_ENCLOSURE_SERVICES is not set
490# CONFIG_HAVE_IDE is not set
539 491
540# 492#
541# SCSI device support 493# SCSI device support
@@ -568,11 +520,13 @@ CONFIG_PHYLIB=y
568# CONFIG_SMSC_PHY is not set 520# CONFIG_SMSC_PHY is not set
569# CONFIG_BROADCOM_PHY is not set 521# CONFIG_BROADCOM_PHY is not set
570# CONFIG_ICPLUS_PHY is not set 522# CONFIG_ICPLUS_PHY is not set
523# CONFIG_REALTEK_PHY is not set
571# CONFIG_FIXED_PHY is not set 524# CONFIG_FIXED_PHY is not set
572# CONFIG_MDIO_BITBANG is not set 525# CONFIG_MDIO_BITBANG is not set
573CONFIG_NET_ETHERNET=y 526CONFIG_NET_ETHERNET=y
574# CONFIG_MII is not set 527# CONFIG_MII is not set
575CONFIG_MACB=y 528CONFIG_MACB=y
529# CONFIG_ENC28J60 is not set
576# CONFIG_IBM_NEW_EMAC_ZMII is not set 530# CONFIG_IBM_NEW_EMAC_ZMII is not set
577# CONFIG_IBM_NEW_EMAC_RGMII is not set 531# CONFIG_IBM_NEW_EMAC_RGMII is not set
578# CONFIG_IBM_NEW_EMAC_TAH is not set 532# CONFIG_IBM_NEW_EMAC_TAH is not set
@@ -586,6 +540,7 @@ CONFIG_MACB=y
586# 540#
587# CONFIG_WLAN_PRE80211 is not set 541# CONFIG_WLAN_PRE80211 is not set
588# CONFIG_WLAN_80211 is not set 542# CONFIG_WLAN_80211 is not set
543# CONFIG_IWLWIFI_LEDS is not set
589# CONFIG_WAN is not set 544# CONFIG_WAN is not set
590CONFIG_PPP=m 545CONFIG_PPP=m
591# CONFIG_PPP_MULTILINK is not set 546# CONFIG_PPP_MULTILINK is not set
@@ -599,7 +554,6 @@ CONFIG_PPPOE=m
599# CONFIG_PPPOL2TP is not set 554# CONFIG_PPPOL2TP is not set
600# CONFIG_SLIP is not set 555# CONFIG_SLIP is not set
601CONFIG_SLHC=m 556CONFIG_SLHC=m
602# CONFIG_SHAPER is not set
603# CONFIG_NETCONSOLE is not set 557# CONFIG_NETCONSOLE is not set
604# CONFIG_NETPOLL is not set 558# CONFIG_NETPOLL is not set
605# CONFIG_NET_POLL_CONTROLLER is not set 559# CONFIG_NET_POLL_CONTROLLER is not set
@@ -621,6 +575,7 @@ CONFIG_SLHC=m
621# Character devices 575# Character devices
622# 576#
623# CONFIG_VT is not set 577# CONFIG_VT is not set
578# CONFIG_DEVKMEM is not set
624# CONFIG_SERIAL_NONSTANDARD is not set 579# CONFIG_SERIAL_NONSTANDARD is not set
625 580
626# 581#
@@ -633,6 +588,7 @@ CONFIG_SLHC=m
633# 588#
634CONFIG_SERIAL_ATMEL=y 589CONFIG_SERIAL_ATMEL=y
635CONFIG_SERIAL_ATMEL_CONSOLE=y 590CONFIG_SERIAL_ATMEL_CONSOLE=y
591CONFIG_SERIAL_ATMEL_PDC=y
636# CONFIG_SERIAL_ATMEL_TTYAT is not set 592# CONFIG_SERIAL_ATMEL_TTYAT is not set
637CONFIG_SERIAL_CORE=y 593CONFIG_SERIAL_CORE=y
638CONFIG_SERIAL_CORE_CONSOLE=y 594CONFIG_SERIAL_CORE_CONSOLE=y
@@ -640,21 +596,13 @@ CONFIG_UNIX98_PTYS=y
640# CONFIG_LEGACY_PTYS is not set 596# CONFIG_LEGACY_PTYS is not set
641# CONFIG_IPMI_HANDLER is not set 597# CONFIG_IPMI_HANDLER is not set
642# CONFIG_HW_RANDOM is not set 598# CONFIG_HW_RANDOM is not set
643# CONFIG_RTC is not set
644# CONFIG_GEN_RTC is not set
645# CONFIG_R3964 is not set 599# CONFIG_R3964 is not set
646# CONFIG_RAW_DRIVER is not set 600# CONFIG_RAW_DRIVER is not set
647# CONFIG_TCG_TPM is not set 601# CONFIG_TCG_TPM is not set
648CONFIG_I2C=m 602CONFIG_I2C=m
649CONFIG_I2C_BOARDINFO=y 603CONFIG_I2C_BOARDINFO=y
650CONFIG_I2C_CHARDEV=m 604CONFIG_I2C_CHARDEV=m
651
652#
653# I2C Algorithms
654#
655CONFIG_I2C_ALGOBIT=m 605CONFIG_I2C_ALGOBIT=m
656# CONFIG_I2C_ALGOPCF is not set
657# CONFIG_I2C_ALGOPCA is not set
658 606
659# 607#
660# I2C Hardware Bus support 608# I2C Hardware Bus support
@@ -665,27 +613,23 @@ CONFIG_I2C_GPIO=m
665# CONFIG_I2C_SIMTEC is not set 613# CONFIG_I2C_SIMTEC is not set
666# CONFIG_I2C_TAOS_EVM is not set 614# CONFIG_I2C_TAOS_EVM is not set
667# CONFIG_I2C_STUB is not set 615# CONFIG_I2C_STUB is not set
616# CONFIG_I2C_PCA_PLATFORM is not set
668 617
669# 618#
670# Miscellaneous I2C Chip support 619# Miscellaneous I2C Chip support
671# 620#
672# CONFIG_SENSORS_DS1337 is not set
673# CONFIG_SENSORS_DS1374 is not set
674# CONFIG_DS1682 is not set 621# CONFIG_DS1682 is not set
675# CONFIG_SENSORS_EEPROM is not set 622# CONFIG_SENSORS_EEPROM is not set
676# CONFIG_SENSORS_PCF8574 is not set 623# CONFIG_SENSORS_PCF8574 is not set
677# CONFIG_SENSORS_PCA9539 is not set 624# CONFIG_PCF8575 is not set
678# CONFIG_SENSORS_PCF8591 is not set 625# CONFIG_SENSORS_PCF8591 is not set
626# CONFIG_TPS65010 is not set
679# CONFIG_SENSORS_MAX6875 is not set 627# CONFIG_SENSORS_MAX6875 is not set
680# CONFIG_SENSORS_TSL2550 is not set 628# CONFIG_SENSORS_TSL2550 is not set
681# CONFIG_I2C_DEBUG_CORE is not set 629# CONFIG_I2C_DEBUG_CORE is not set
682# CONFIG_I2C_DEBUG_ALGO is not set 630# CONFIG_I2C_DEBUG_ALGO is not set
683# CONFIG_I2C_DEBUG_BUS is not set 631# CONFIG_I2C_DEBUG_BUS is not set
684# CONFIG_I2C_DEBUG_CHIP is not set 632# CONFIG_I2C_DEBUG_CHIP is not set
685
686#
687# SPI support
688#
689CONFIG_SPI=y 633CONFIG_SPI=y
690# CONFIG_SPI_DEBUG is not set 634# CONFIG_SPI_DEBUG is not set
691CONFIG_SPI_MASTER=y 635CONFIG_SPI_MASTER=y
@@ -702,9 +646,27 @@ CONFIG_SPI_ATMEL=y
702# CONFIG_SPI_AT25 is not set 646# CONFIG_SPI_AT25 is not set
703CONFIG_SPI_SPIDEV=m 647CONFIG_SPI_SPIDEV=m
704# CONFIG_SPI_TLE62X0 is not set 648# CONFIG_SPI_TLE62X0 is not set
649CONFIG_HAVE_GPIO_LIB=y
650
651#
652# GPIO Support
653#
654# CONFIG_DEBUG_GPIO is not set
655
656#
657# I2C GPIO expanders:
658#
659# CONFIG_GPIO_PCA953X is not set
660# CONFIG_GPIO_PCF857X is not set
661
662#
663# SPI GPIO expanders:
664#
665# CONFIG_GPIO_MCP23S08 is not set
705# CONFIG_W1 is not set 666# CONFIG_W1 is not set
706# CONFIG_POWER_SUPPLY is not set 667# CONFIG_POWER_SUPPLY is not set
707# CONFIG_HWMON is not set 668# CONFIG_HWMON is not set
669# CONFIG_THERMAL is not set
708CONFIG_WATCHDOG=y 670CONFIG_WATCHDOG=y
709# CONFIG_WATCHDOG_NOWAYOUT is not set 671# CONFIG_WATCHDOG_NOWAYOUT is not set
710 672
@@ -724,12 +686,22 @@ CONFIG_SSB_POSSIBLE=y
724# Multifunction device drivers 686# Multifunction device drivers
725# 687#
726# CONFIG_MFD_SM501 is not set 688# CONFIG_MFD_SM501 is not set
689# CONFIG_HTC_PASIC3 is not set
727 690
728# 691#
729# Multimedia devices 692# Multimedia devices
730# 693#
694
695#
696# Multimedia core support
697#
731# CONFIG_VIDEO_DEV is not set 698# CONFIG_VIDEO_DEV is not set
732# CONFIG_DVB_CORE is not set 699# CONFIG_DVB_CORE is not set
700# CONFIG_VIDEO_MEDIA is not set
701
702#
703# Multimedia drivers
704#
733# CONFIG_DAB is not set 705# CONFIG_DAB is not set
734 706
735# 707#
@@ -753,14 +725,12 @@ CONFIG_USB_SUPPORT=y
753# CONFIG_USB_ARCH_HAS_HCD is not set 725# CONFIG_USB_ARCH_HAS_HCD is not set
754# CONFIG_USB_ARCH_HAS_OHCI is not set 726# CONFIG_USB_ARCH_HAS_OHCI is not set
755# CONFIG_USB_ARCH_HAS_EHCI is not set 727# CONFIG_USB_ARCH_HAS_EHCI is not set
728# CONFIG_USB_OTG_WHITELIST is not set
729# CONFIG_USB_OTG_BLACKLIST_HUB is not set
756 730
757# 731#
758# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 732# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
759# 733#
760
761#
762# USB Gadget Support
763#
764CONFIG_USB_GADGET=y 734CONFIG_USB_GADGET=y
765# CONFIG_USB_GADGET_DEBUG is not set 735# CONFIG_USB_GADGET_DEBUG is not set
766# CONFIG_USB_GADGET_DEBUG_FILES is not set 736# CONFIG_USB_GADGET_DEBUG_FILES is not set
@@ -772,6 +742,7 @@ CONFIG_USB_ATMEL_USBA=y
772# CONFIG_USB_GADGET_NET2280 is not set 742# CONFIG_USB_GADGET_NET2280 is not set
773# CONFIG_USB_GADGET_PXA2XX is not set 743# CONFIG_USB_GADGET_PXA2XX is not set
774# CONFIG_USB_GADGET_M66592 is not set 744# CONFIG_USB_GADGET_M66592 is not set
745# CONFIG_USB_GADGET_PXA27X is not set
775# CONFIG_USB_GADGET_GOKU is not set 746# CONFIG_USB_GADGET_GOKU is not set
776# CONFIG_USB_GADGET_LH7A40X is not set 747# CONFIG_USB_GADGET_LH7A40X is not set
777# CONFIG_USB_GADGET_OMAP is not set 748# CONFIG_USB_GADGET_OMAP is not set
@@ -787,6 +758,7 @@ CONFIG_USB_FILE_STORAGE=m
787# CONFIG_USB_FILE_STORAGE_TEST is not set 758# CONFIG_USB_FILE_STORAGE_TEST is not set
788CONFIG_USB_G_SERIAL=m 759CONFIG_USB_G_SERIAL=m
789# CONFIG_USB_MIDI_GADGET is not set 760# CONFIG_USB_MIDI_GADGET is not set
761# CONFIG_USB_G_PRINTER is not set
790CONFIG_MMC=m 762CONFIG_MMC=m
791# CONFIG_MMC_DEBUG is not set 763# CONFIG_MMC_DEBUG is not set
792# CONFIG_MMC_UNSAFE_RESUME is not set 764# CONFIG_MMC_UNSAFE_RESUME is not set
@@ -797,11 +769,13 @@ CONFIG_MMC=m
797CONFIG_MMC_BLOCK=m 769CONFIG_MMC_BLOCK=m
798CONFIG_MMC_BLOCK_BOUNCE=y 770CONFIG_MMC_BLOCK_BOUNCE=y
799# CONFIG_SDIO_UART is not set 771# CONFIG_SDIO_UART is not set
772# CONFIG_MMC_TEST is not set
800 773
801# 774#
802# MMC/SD Host Controller Drivers 775# MMC/SD Host Controller Drivers
803# 776#
804CONFIG_MMC_SPI=m 777CONFIG_MMC_SPI=m
778# CONFIG_MEMSTICK is not set
805CONFIG_NEW_LEDS=y 779CONFIG_NEW_LEDS=y
806CONFIG_LEDS_CLASS=y 780CONFIG_LEDS_CLASS=y
807 781
@@ -816,6 +790,8 @@ CONFIG_LEDS_GPIO=y
816CONFIG_LEDS_TRIGGERS=y 790CONFIG_LEDS_TRIGGERS=y
817CONFIG_LEDS_TRIGGER_TIMER=y 791CONFIG_LEDS_TRIGGER_TIMER=y
818CONFIG_LEDS_TRIGGER_HEARTBEAT=y 792CONFIG_LEDS_TRIGGER_HEARTBEAT=y
793CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
794# CONFIG_ACCESSIBILITY is not set
819CONFIG_RTC_LIB=y 795CONFIG_RTC_LIB=y
820CONFIG_RTC_CLASS=y 796CONFIG_RTC_CLASS=y
821CONFIG_RTC_HCTOSYS=y 797CONFIG_RTC_HCTOSYS=y
@@ -844,19 +820,22 @@ CONFIG_RTC_INTF_DEV=y
844# CONFIG_RTC_DRV_PCF8563 is not set 820# CONFIG_RTC_DRV_PCF8563 is not set
845# CONFIG_RTC_DRV_PCF8583 is not set 821# CONFIG_RTC_DRV_PCF8583 is not set
846# CONFIG_RTC_DRV_M41T80 is not set 822# CONFIG_RTC_DRV_M41T80 is not set
823# CONFIG_RTC_DRV_S35390A is not set
847 824
848# 825#
849# SPI RTC drivers 826# SPI RTC drivers
850# 827#
851# CONFIG_RTC_DRV_RS5C348 is not set
852# CONFIG_RTC_DRV_MAX6902 is not set 828# CONFIG_RTC_DRV_MAX6902 is not set
829# CONFIG_RTC_DRV_R9701 is not set
830# CONFIG_RTC_DRV_RS5C348 is not set
853 831
854# 832#
855# Platform RTC drivers 833# Platform RTC drivers
856# 834#
835# CONFIG_RTC_DRV_DS1511 is not set
857# CONFIG_RTC_DRV_DS1553 is not set 836# CONFIG_RTC_DRV_DS1553 is not set
858# CONFIG_RTC_DRV_STK17TA8 is not set
859# CONFIG_RTC_DRV_DS1742 is not set 837# CONFIG_RTC_DRV_DS1742 is not set
838# CONFIG_RTC_DRV_STK17TA8 is not set
860# CONFIG_RTC_DRV_M48T86 is not set 839# CONFIG_RTC_DRV_M48T86 is not set
861# CONFIG_RTC_DRV_M48T59 is not set 840# CONFIG_RTC_DRV_M48T59 is not set
862# CONFIG_RTC_DRV_V3020 is not set 841# CONFIG_RTC_DRV_V3020 is not set
@@ -865,10 +844,6 @@ CONFIG_RTC_INTF_DEV=y
865# on-CPU RTC drivers 844# on-CPU RTC drivers
866# 845#
867CONFIG_RTC_DRV_AT32AP700X=y 846CONFIG_RTC_DRV_AT32AP700X=y
868
869#
870# Userspace I/O
871#
872# CONFIG_UIO is not set 847# CONFIG_UIO is not set
873 848
874# 849#
@@ -885,14 +860,11 @@ CONFIG_JBD=m
885# CONFIG_JFS_FS is not set 860# CONFIG_JFS_FS is not set
886# CONFIG_FS_POSIX_ACL is not set 861# CONFIG_FS_POSIX_ACL is not set
887# CONFIG_XFS_FS is not set 862# CONFIG_XFS_FS is not set
888# CONFIG_GFS2_FS is not set
889# CONFIG_OCFS2_FS is not set 863# CONFIG_OCFS2_FS is not set
890# CONFIG_MINIX_FS is not set 864# CONFIG_DNOTIFY is not set
891# CONFIG_ROMFS_FS is not set
892CONFIG_INOTIFY=y 865CONFIG_INOTIFY=y
893CONFIG_INOTIFY_USER=y 866CONFIG_INOTIFY_USER=y
894# CONFIG_QUOTA is not set 867# CONFIG_QUOTA is not set
895# CONFIG_DNOTIFY is not set
896# CONFIG_AUTOFS_FS is not set 868# CONFIG_AUTOFS_FS is not set
897# CONFIG_AUTOFS4_FS is not set 869# CONFIG_AUTOFS4_FS is not set
898CONFIG_FUSE_FS=m 870CONFIG_FUSE_FS=m
@@ -948,8 +920,10 @@ CONFIG_JFFS2_RTIME=y
948# CONFIG_JFFS2_RUBIN is not set 920# CONFIG_JFFS2_RUBIN is not set
949# CONFIG_CRAMFS is not set 921# CONFIG_CRAMFS is not set
950# CONFIG_VXFS_FS is not set 922# CONFIG_VXFS_FS is not set
923# CONFIG_MINIX_FS is not set
951# CONFIG_HPFS_FS is not set 924# CONFIG_HPFS_FS is not set
952# CONFIG_QNX4FS_FS is not set 925# CONFIG_QNX4FS_FS is not set
926# CONFIG_ROMFS_FS is not set
953# CONFIG_SYSV_FS is not set 927# CONFIG_SYSV_FS is not set
954# CONFIG_UFS_FS is not set 928# CONFIG_UFS_FS is not set
955CONFIG_NETWORK_FILESYSTEMS=y 929CONFIG_NETWORK_FILESYSTEMS=y
@@ -957,12 +931,10 @@ CONFIG_NFS_FS=y
957CONFIG_NFS_V3=y 931CONFIG_NFS_V3=y
958# CONFIG_NFS_V3_ACL is not set 932# CONFIG_NFS_V3_ACL is not set
959# CONFIG_NFS_V4 is not set 933# CONFIG_NFS_V4 is not set
960# CONFIG_NFS_DIRECTIO is not set
961CONFIG_NFSD=m 934CONFIG_NFSD=m
962CONFIG_NFSD_V3=y 935CONFIG_NFSD_V3=y
963# CONFIG_NFSD_V3_ACL is not set 936# CONFIG_NFSD_V3_ACL is not set
964# CONFIG_NFSD_V4 is not set 937# CONFIG_NFSD_V4 is not set
965CONFIG_NFSD_TCP=y
966CONFIG_ROOT_NFS=y 938CONFIG_ROOT_NFS=y
967CONFIG_LOCKD=y 939CONFIG_LOCKD=y
968CONFIG_LOCKD_V4=y 940CONFIG_LOCKD_V4=y
@@ -1030,11 +1002,6 @@ CONFIG_NLS_ISO8859_1=m
1030# CONFIG_NLS_KOI8_U is not set 1002# CONFIG_NLS_KOI8_U is not set
1031CONFIG_NLS_UTF8=m 1003CONFIG_NLS_UTF8=m
1032# CONFIG_DLM is not set 1004# CONFIG_DLM is not set
1033CONFIG_INSTRUMENTATION=y
1034CONFIG_PROFILING=y
1035CONFIG_OPROFILE=m
1036CONFIG_KPROBES=y
1037# CONFIG_MARKERS is not set
1038 1005
1039# 1006#
1040# Kernel hacking 1007# Kernel hacking
@@ -1042,6 +1009,7 @@ CONFIG_KPROBES=y
1042# CONFIG_PRINTK_TIME is not set 1009# CONFIG_PRINTK_TIME is not set
1043CONFIG_ENABLE_WARN_DEPRECATED=y 1010CONFIG_ENABLE_WARN_DEPRECATED=y
1044CONFIG_ENABLE_MUST_CHECK=y 1011CONFIG_ENABLE_MUST_CHECK=y
1012CONFIG_FRAME_WARN=1024
1045CONFIG_MAGIC_SYSRQ=y 1013CONFIG_MAGIC_SYSRQ=y
1046# CONFIG_UNUSED_SYMBOLS is not set 1014# CONFIG_UNUSED_SYMBOLS is not set
1047# CONFIG_DEBUG_FS is not set 1015# CONFIG_DEBUG_FS is not set
@@ -1052,7 +1020,9 @@ CONFIG_DETECT_SOFTLOCKUP=y
1052CONFIG_SCHED_DEBUG=y 1020CONFIG_SCHED_DEBUG=y
1053# CONFIG_SCHEDSTATS is not set 1021# CONFIG_SCHEDSTATS is not set
1054# CONFIG_TIMER_STATS is not set 1022# CONFIG_TIMER_STATS is not set
1023# CONFIG_DEBUG_OBJECTS is not set
1055# CONFIG_SLUB_DEBUG_ON is not set 1024# CONFIG_SLUB_DEBUG_ON is not set
1025# CONFIG_SLUB_STATS is not set
1056# CONFIG_DEBUG_RT_MUTEXES is not set 1026# CONFIG_DEBUG_RT_MUTEXES is not set
1057# CONFIG_RT_MUTEX_TESTER is not set 1027# CONFIG_RT_MUTEX_TESTER is not set
1058# CONFIG_DEBUG_SPINLOCK is not set 1028# CONFIG_DEBUG_SPINLOCK is not set
@@ -1066,12 +1036,14 @@ CONFIG_SCHED_DEBUG=y
1066CONFIG_DEBUG_BUGVERBOSE=y 1036CONFIG_DEBUG_BUGVERBOSE=y
1067# CONFIG_DEBUG_INFO is not set 1037# CONFIG_DEBUG_INFO is not set
1068# CONFIG_DEBUG_VM is not set 1038# CONFIG_DEBUG_VM is not set
1039# CONFIG_DEBUG_WRITECOUNT is not set
1069# CONFIG_DEBUG_LIST is not set 1040# CONFIG_DEBUG_LIST is not set
1070# CONFIG_DEBUG_SG is not set 1041# CONFIG_DEBUG_SG is not set
1071CONFIG_FRAME_POINTER=y 1042CONFIG_FRAME_POINTER=y
1072# CONFIG_FORCED_INLINING is not set
1073# CONFIG_BOOT_PRINTK_DELAY is not set 1043# CONFIG_BOOT_PRINTK_DELAY is not set
1074# CONFIG_RCU_TORTURE_TEST is not set 1044# CONFIG_RCU_TORTURE_TEST is not set
1045# CONFIG_KPROBES_SANITY_TEST is not set
1046# CONFIG_BACKTRACE_SELF_TEST is not set
1075# CONFIG_LKDTM is not set 1047# CONFIG_LKDTM is not set
1076# CONFIG_FAULT_INJECTION is not set 1048# CONFIG_FAULT_INJECTION is not set
1077# CONFIG_SAMPLES is not set 1049# CONFIG_SAMPLES is not set
@@ -1083,52 +1055,90 @@ CONFIG_FRAME_POINTER=y
1083# CONFIG_SECURITY is not set 1055# CONFIG_SECURITY is not set
1084# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1056# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1085CONFIG_CRYPTO=y 1057CONFIG_CRYPTO=y
1058
1059#
1060# Crypto core or helper
1061#
1086CONFIG_CRYPTO_ALGAPI=y 1062CONFIG_CRYPTO_ALGAPI=y
1063CONFIG_CRYPTO_AEAD=y
1087CONFIG_CRYPTO_BLKCIPHER=y 1064CONFIG_CRYPTO_BLKCIPHER=y
1088CONFIG_CRYPTO_HASH=y 1065CONFIG_CRYPTO_HASH=y
1089CONFIG_CRYPTO_MANAGER=y 1066CONFIG_CRYPTO_MANAGER=y
1067# CONFIG_CRYPTO_GF128MUL is not set
1068# CONFIG_CRYPTO_NULL is not set
1069# CONFIG_CRYPTO_CRYPTD is not set
1070CONFIG_CRYPTO_AUTHENC=y
1071# CONFIG_CRYPTO_TEST is not set
1072
1073#
1074# Authenticated Encryption with Associated Data
1075#
1076# CONFIG_CRYPTO_CCM is not set
1077# CONFIG_CRYPTO_GCM is not set
1078# CONFIG_CRYPTO_SEQIV is not set
1079
1080#
1081# Block modes
1082#
1083CONFIG_CRYPTO_CBC=y
1084# CONFIG_CRYPTO_CTR is not set
1085# CONFIG_CRYPTO_CTS is not set
1086CONFIG_CRYPTO_ECB=m
1087# CONFIG_CRYPTO_LRW is not set
1088CONFIG_CRYPTO_PCBC=m
1089# CONFIG_CRYPTO_XTS is not set
1090
1091#
1092# Hash modes
1093#
1090CONFIG_CRYPTO_HMAC=y 1094CONFIG_CRYPTO_HMAC=y
1091# CONFIG_CRYPTO_XCBC is not set 1095# CONFIG_CRYPTO_XCBC is not set
1092# CONFIG_CRYPTO_NULL is not set 1096
1097#
1098# Digest
1099#
1100# CONFIG_CRYPTO_CRC32C is not set
1093# CONFIG_CRYPTO_MD4 is not set 1101# CONFIG_CRYPTO_MD4 is not set
1094CONFIG_CRYPTO_MD5=y 1102CONFIG_CRYPTO_MD5=y
1103# CONFIG_CRYPTO_MICHAEL_MIC is not set
1095CONFIG_CRYPTO_SHA1=y 1104CONFIG_CRYPTO_SHA1=y
1096# CONFIG_CRYPTO_SHA256 is not set 1105# CONFIG_CRYPTO_SHA256 is not set
1097# CONFIG_CRYPTO_SHA512 is not set 1106# CONFIG_CRYPTO_SHA512 is not set
1098# CONFIG_CRYPTO_WP512 is not set
1099# CONFIG_CRYPTO_TGR192 is not set 1107# CONFIG_CRYPTO_TGR192 is not set
1100# CONFIG_CRYPTO_GF128MUL is not set 1108# CONFIG_CRYPTO_WP512 is not set
1101CONFIG_CRYPTO_ECB=m 1109
1102CONFIG_CRYPTO_CBC=y 1110#
1103CONFIG_CRYPTO_PCBC=m 1111# Ciphers
1104# CONFIG_CRYPTO_LRW is not set 1112#
1105# CONFIG_CRYPTO_XTS is not set
1106# CONFIG_CRYPTO_CRYPTD is not set
1107CONFIG_CRYPTO_DES=y
1108# CONFIG_CRYPTO_FCRYPT is not set
1109# CONFIG_CRYPTO_BLOWFISH is not set
1110# CONFIG_CRYPTO_TWOFISH is not set
1111# CONFIG_CRYPTO_SERPENT is not set
1112# CONFIG_CRYPTO_AES is not set 1113# CONFIG_CRYPTO_AES is not set
1114# CONFIG_CRYPTO_ANUBIS is not set
1115CONFIG_CRYPTO_ARC4=m
1116# CONFIG_CRYPTO_BLOWFISH is not set
1117# CONFIG_CRYPTO_CAMELLIA is not set
1113# CONFIG_CRYPTO_CAST5 is not set 1118# CONFIG_CRYPTO_CAST5 is not set
1114# CONFIG_CRYPTO_CAST6 is not set 1119# CONFIG_CRYPTO_CAST6 is not set
1115# CONFIG_CRYPTO_TEA is not set 1120CONFIG_CRYPTO_DES=y
1116CONFIG_CRYPTO_ARC4=m 1121# CONFIG_CRYPTO_FCRYPT is not set
1117# CONFIG_CRYPTO_KHAZAD is not set 1122# CONFIG_CRYPTO_KHAZAD is not set
1118# CONFIG_CRYPTO_ANUBIS is not set 1123# CONFIG_CRYPTO_SALSA20 is not set
1119# CONFIG_CRYPTO_SEED is not set 1124# CONFIG_CRYPTO_SEED is not set
1125# CONFIG_CRYPTO_SERPENT is not set
1126# CONFIG_CRYPTO_TEA is not set
1127# CONFIG_CRYPTO_TWOFISH is not set
1128
1129#
1130# Compression
1131#
1120CONFIG_CRYPTO_DEFLATE=y 1132CONFIG_CRYPTO_DEFLATE=y
1121# CONFIG_CRYPTO_MICHAEL_MIC is not set 1133# CONFIG_CRYPTO_LZO is not set
1122# CONFIG_CRYPTO_CRC32C is not set
1123# CONFIG_CRYPTO_CAMELLIA is not set
1124# CONFIG_CRYPTO_TEST is not set
1125# CONFIG_CRYPTO_AUTHENC is not set
1126CONFIG_CRYPTO_HW=y 1134CONFIG_CRYPTO_HW=y
1127 1135
1128# 1136#
1129# Library routines 1137# Library routines
1130# 1138#
1131CONFIG_BITREVERSE=y 1139CONFIG_BITREVERSE=y
1140# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1141# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1132CONFIG_CRC_CCITT=m 1142CONFIG_CRC_CCITT=m
1133# CONFIG_CRC16 is not set 1143# CONFIG_CRC16 is not set
1134CONFIG_CRC_ITU_T=m 1144CONFIG_CRC_ITU_T=m
@@ -1137,10 +1147,6 @@ CONFIG_CRC7=m
1137# CONFIG_LIBCRC32C is not set 1147# CONFIG_LIBCRC32C is not set
1138CONFIG_ZLIB_INFLATE=y 1148CONFIG_ZLIB_INFLATE=y
1139CONFIG_ZLIB_DEFLATE=y 1149CONFIG_ZLIB_DEFLATE=y
1140CONFIG_TEXTSEARCH=y
1141CONFIG_TEXTSEARCH_KMP=m
1142CONFIG_TEXTSEARCH_BM=m
1143CONFIG_TEXTSEARCH_FSM=m
1144CONFIG_PLIST=y 1150CONFIG_PLIST=y
1145CONFIG_HAS_IOMEM=y 1151CONFIG_HAS_IOMEM=y
1146CONFIG_HAS_IOPORT=y 1152CONFIG_HAS_IOPORT=y
diff --git a/arch/avr32/configs/atstk1002_defconfig b/arch/avr32/configs/atstk1002_defconfig
index 2fb2ede5f2b4..c6d02eac8791 100644
--- a/arch/avr32/configs/atstk1002_defconfig
+++ b/arch/avr32/configs/atstk1002_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.24-rc7 3# Linux kernel version: 2.6.26-rc3
4# Wed Jan 9 23:07:43 2008 4# Mon May 26 13:30:20 2008
5# 5#
6CONFIG_AVR32=y 6CONFIG_AVR32=y
7CONFIG_GENERIC_GPIO=y 7CONFIG_GENERIC_GPIO=y
@@ -13,10 +13,10 @@ CONFIG_HARDIRQS_SW_RESEND=y
13CONFIG_GENERIC_IRQ_PROBE=y 13CONFIG_GENERIC_IRQ_PROBE=y
14CONFIG_RWSEM_GENERIC_SPINLOCK=y 14CONFIG_RWSEM_GENERIC_SPINLOCK=y
15CONFIG_GENERIC_TIME=y 15CONFIG_GENERIC_TIME=y
16CONFIG_GENERIC_CLOCKEVENTS=y
16# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set 17# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
17# CONFIG_ARCH_HAS_ILOG2_U32 is not set 18# CONFIG_ARCH_HAS_ILOG2_U32 is not set
18# CONFIG_ARCH_HAS_ILOG2_U64 is not set 19# CONFIG_ARCH_HAS_ILOG2_U64 is not set
19CONFIG_ARCH_SUPPORTS_OPROFILE=y
20CONFIG_GENERIC_HWEIGHT=y 20CONFIG_GENERIC_HWEIGHT=y
21CONFIG_GENERIC_CALIBRATE_DELAY=y 21CONFIG_GENERIC_CALIBRATE_DELAY=y
22CONFIG_GENERIC_BUG=y 22CONFIG_GENERIC_BUG=y
@@ -36,15 +36,15 @@ CONFIG_SYSVIPC_SYSCTL=y
36CONFIG_POSIX_MQUEUE=y 36CONFIG_POSIX_MQUEUE=y
37# CONFIG_BSD_PROCESS_ACCT is not set 37# CONFIG_BSD_PROCESS_ACCT is not set
38# CONFIG_TASKSTATS is not set 38# CONFIG_TASKSTATS is not set
39# CONFIG_USER_NS is not set
40# CONFIG_PID_NS is not set
41# CONFIG_AUDIT is not set 39# CONFIG_AUDIT is not set
42# CONFIG_IKCONFIG is not set 40# CONFIG_IKCONFIG is not set
43CONFIG_LOG_BUF_SHIFT=14 41CONFIG_LOG_BUF_SHIFT=14
44# CONFIG_CGROUPS is not set 42# CONFIG_CGROUPS is not set
45# CONFIG_FAIR_GROUP_SCHED is not set 43# CONFIG_GROUP_SCHED is not set
46CONFIG_SYSFS_DEPRECATED=y 44CONFIG_SYSFS_DEPRECATED=y
45CONFIG_SYSFS_DEPRECATED_V2=y
47CONFIG_RELAY=y 46CONFIG_RELAY=y
47# CONFIG_NAMESPACES is not set
48CONFIG_BLK_DEV_INITRD=y 48CONFIG_BLK_DEV_INITRD=y
49CONFIG_INITRAMFS_SOURCE="" 49CONFIG_INITRAMFS_SOURCE=""
50CONFIG_CC_OPTIMIZE_FOR_SIZE=y 50CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -58,11 +58,13 @@ CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 58CONFIG_PRINTK=y
59CONFIG_BUG=y 59CONFIG_BUG=y
60CONFIG_ELF_CORE=y 60CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set
61# CONFIG_BASE_FULL is not set 62# CONFIG_BASE_FULL is not set
62CONFIG_FUTEX=y 63CONFIG_FUTEX=y
63CONFIG_ANON_INODES=y 64CONFIG_ANON_INODES=y
64CONFIG_EPOLL=y 65CONFIG_EPOLL=y
65CONFIG_SIGNALFD=y 66CONFIG_SIGNALFD=y
67CONFIG_TIMERFD=y
66CONFIG_EVENTFD=y 68CONFIG_EVENTFD=y
67CONFIG_SHMEM=y 69CONFIG_SHMEM=y
68CONFIG_VM_EVENT_COUNTERS=y 70CONFIG_VM_EVENT_COUNTERS=y
@@ -70,11 +72,21 @@ CONFIG_SLUB_DEBUG=y
70# CONFIG_SLAB is not set 72# CONFIG_SLAB is not set
71CONFIG_SLUB=y 73CONFIG_SLUB=y
72# CONFIG_SLOB is not set 74# CONFIG_SLOB is not set
75CONFIG_PROFILING=y
76# CONFIG_MARKERS is not set
77CONFIG_OPROFILE=m
78CONFIG_HAVE_OPROFILE=y
79CONFIG_KPROBES=y
80CONFIG_HAVE_KPROBES=y
81# CONFIG_HAVE_KRETPROBES is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83CONFIG_PROC_PAGE_MONITOR=y
73CONFIG_SLABINFO=y 84CONFIG_SLABINFO=y
74CONFIG_RT_MUTEXES=y 85CONFIG_RT_MUTEXES=y
75# CONFIG_TINY_SHMEM is not set 86# CONFIG_TINY_SHMEM is not set
76CONFIG_BASE_SMALL=1 87CONFIG_BASE_SMALL=1
77CONFIG_MODULES=y 88CONFIG_MODULES=y
89# CONFIG_MODULE_FORCE_LOAD is not set
78CONFIG_MODULE_UNLOAD=y 90CONFIG_MODULE_UNLOAD=y
79# CONFIG_MODULE_FORCE_UNLOAD is not set 91# CONFIG_MODULE_FORCE_UNLOAD is not set
80# CONFIG_MODVERSIONS is not set 92# CONFIG_MODVERSIONS is not set
@@ -98,10 +110,15 @@ CONFIG_IOSCHED_CFQ=y
98CONFIG_DEFAULT_CFQ=y 110CONFIG_DEFAULT_CFQ=y
99# CONFIG_DEFAULT_NOOP is not set 111# CONFIG_DEFAULT_NOOP is not set
100CONFIG_DEFAULT_IOSCHED="cfq" 112CONFIG_DEFAULT_IOSCHED="cfq"
113CONFIG_CLASSIC_RCU=y
101 114
102# 115#
103# System Type and features 116# System Type and features
104# 117#
118CONFIG_TICK_ONESHOT=y
119CONFIG_NO_HZ=y
120CONFIG_HIGH_RES_TIMERS=y
121CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
105CONFIG_SUBARCH_AVR32B=y 122CONFIG_SUBARCH_AVR32B=y
106CONFIG_MMU=y 123CONFIG_MMU=y
107CONFIG_PERFORMANCE_COUNTERS=y 124CONFIG_PERFORMANCE_COUNTERS=y
@@ -147,16 +164,19 @@ CONFIG_FLATMEM=y
147CONFIG_FLAT_NODE_MEM_MAP=y 164CONFIG_FLAT_NODE_MEM_MAP=y
148# CONFIG_SPARSEMEM_STATIC is not set 165# CONFIG_SPARSEMEM_STATIC is not set
149# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 166# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
167CONFIG_PAGEFLAGS_EXTENDED=y
150CONFIG_SPLIT_PTLOCK_CPUS=4 168CONFIG_SPLIT_PTLOCK_CPUS=4
151# CONFIG_RESOURCES_64BIT is not set 169# CONFIG_RESOURCES_64BIT is not set
152CONFIG_ZONE_DMA_FLAG=0 170CONFIG_ZONE_DMA_FLAG=0
153CONFIG_VIRT_TO_BUS=y 171CONFIG_VIRT_TO_BUS=y
154# CONFIG_OWNERSHIP_TRACE is not set 172# CONFIG_OWNERSHIP_TRACE is not set
173CONFIG_NMI_DEBUGGING=y
155# CONFIG_HZ_100 is not set 174# CONFIG_HZ_100 is not set
156CONFIG_HZ_250=y 175CONFIG_HZ_250=y
157# CONFIG_HZ_300 is not set 176# CONFIG_HZ_300 is not set
158# CONFIG_HZ_1000 is not set 177# CONFIG_HZ_1000 is not set
159CONFIG_HZ=250 178CONFIG_HZ=250
179# CONFIG_SCHED_HRTICK is not set
160CONFIG_CMDLINE="" 180CONFIG_CMDLINE=""
161 181
162# 182#
@@ -170,9 +190,10 @@ CONFIG_CPU_FREQ=y
170CONFIG_CPU_FREQ_TABLE=y 190CONFIG_CPU_FREQ_TABLE=y
171# CONFIG_CPU_FREQ_DEBUG is not set 191# CONFIG_CPU_FREQ_DEBUG is not set
172# CONFIG_CPU_FREQ_STAT is not set 192# CONFIG_CPU_FREQ_STAT is not set
173CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 193# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
194# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
174# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 195# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
175# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set 196CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
176# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set 197# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
177CONFIG_CPU_FREQ_GOV_PERFORMANCE=y 198CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
178# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set 199# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
@@ -208,6 +229,7 @@ CONFIG_XFRM=y
208CONFIG_XFRM_USER=m 229CONFIG_XFRM_USER=m
209# CONFIG_XFRM_SUB_POLICY is not set 230# CONFIG_XFRM_SUB_POLICY is not set
210# CONFIG_XFRM_MIGRATE is not set 231# CONFIG_XFRM_MIGRATE is not set
232# CONFIG_XFRM_STATISTICS is not set
211CONFIG_NET_KEY=m 233CONFIG_NET_KEY=m
212# CONFIG_NET_KEY_MIGRATE is not set 234# CONFIG_NET_KEY_MIGRATE is not set
213CONFIG_INET=y 235CONFIG_INET=y
@@ -252,8 +274,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
252CONFIG_INET6_XFRM_MODE_BEET=m 274CONFIG_INET6_XFRM_MODE_BEET=m
253# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 275# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
254CONFIG_IPV6_SIT=m 276CONFIG_IPV6_SIT=m
277CONFIG_IPV6_NDISC_NODETYPE=y
255CONFIG_IPV6_TUNNEL=m 278CONFIG_IPV6_TUNNEL=m
256# CONFIG_IPV6_MULTIPLE_TABLES is not set 279# CONFIG_IPV6_MULTIPLE_TABLES is not set
280# CONFIG_IPV6_MROUTE is not set
257# CONFIG_NETWORK_SECMARK is not set 281# CONFIG_NETWORK_SECMARK is not set
258# CONFIG_NETFILTER is not set 282# CONFIG_NETFILTER is not set
259# CONFIG_IP_DCCP is not set 283# CONFIG_IP_DCCP is not set
@@ -279,6 +303,7 @@ CONFIG_LLC=m
279# CONFIG_NET_PKTGEN is not set 303# CONFIG_NET_PKTGEN is not set
280# CONFIG_NET_TCPPROBE is not set 304# CONFIG_NET_TCPPROBE is not set
281# CONFIG_HAMRADIO is not set 305# CONFIG_HAMRADIO is not set
306# CONFIG_CAN is not set
282# CONFIG_IRDA is not set 307# CONFIG_IRDA is not set
283# CONFIG_BT is not set 308# CONFIG_BT is not set
284# CONFIG_AF_RXRPC is not set 309# CONFIG_AF_RXRPC is not set
@@ -314,6 +339,7 @@ CONFIG_MTD=y
314CONFIG_MTD_PARTITIONS=y 339CONFIG_MTD_PARTITIONS=y
315# CONFIG_MTD_REDBOOT_PARTS is not set 340# CONFIG_MTD_REDBOOT_PARTS is not set
316CONFIG_MTD_CMDLINE_PARTS=y 341CONFIG_MTD_CMDLINE_PARTS=y
342# CONFIG_MTD_AR7_PARTS is not set
317 343
318# 344#
319# User Modules And Translation Layers 345# User Modules And Translation Layers
@@ -368,6 +394,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
368# 394#
369CONFIG_MTD_DATAFLASH=m 395CONFIG_MTD_DATAFLASH=m
370CONFIG_MTD_M25P80=m 396CONFIG_MTD_M25P80=m
397CONFIG_M25PXX_USE_FAST_READ=y
371# CONFIG_MTD_SLRAM is not set 398# CONFIG_MTD_SLRAM is not set
372# CONFIG_MTD_PHRAM is not set 399# CONFIG_MTD_PHRAM is not set
373# CONFIG_MTD_MTDRAM is not set 400# CONFIG_MTD_MTDRAM is not set
@@ -395,13 +422,18 @@ CONFIG_BLK_DEV_NBD=m
395CONFIG_BLK_DEV_RAM=m 422CONFIG_BLK_DEV_RAM=m
396CONFIG_BLK_DEV_RAM_COUNT=16 423CONFIG_BLK_DEV_RAM_COUNT=16
397CONFIG_BLK_DEV_RAM_SIZE=4096 424CONFIG_BLK_DEV_RAM_SIZE=4096
398CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 425# CONFIG_BLK_DEV_XIP is not set
399# CONFIG_CDROM_PKTCDVD is not set 426# CONFIG_CDROM_PKTCDVD is not set
400# CONFIG_ATA_OVER_ETH is not set 427# CONFIG_ATA_OVER_ETH is not set
401CONFIG_MISC_DEVICES=y 428CONFIG_MISC_DEVICES=y
429CONFIG_ATMEL_PWM=m
430CONFIG_ATMEL_TCLIB=y
431CONFIG_ATMEL_TCB_CLKSRC=y
432CONFIG_ATMEL_TCB_CLKSRC_BLOCK=0
402# CONFIG_EEPROM_93CX6 is not set 433# CONFIG_EEPROM_93CX6 is not set
403CONFIG_ATMEL_SSC=m 434CONFIG_ATMEL_SSC=m
404# CONFIG_IDE is not set 435# CONFIG_ENCLOSURE_SERVICES is not set
436# CONFIG_HAVE_IDE is not set
405 437
406# 438#
407# SCSI device support 439# SCSI device support
@@ -444,6 +476,9 @@ CONFIG_SCSI_WAIT_SCAN=m
444# CONFIG_SCSI_LOWLEVEL is not set 476# CONFIG_SCSI_LOWLEVEL is not set
445CONFIG_ATA=m 477CONFIG_ATA=m
446# CONFIG_ATA_NONSTANDARD is not set 478# CONFIG_ATA_NONSTANDARD is not set
479# CONFIG_SATA_PMP is not set
480CONFIG_ATA_SFF=y
481# CONFIG_SATA_MV is not set
447CONFIG_PATA_AT32=m 482CONFIG_PATA_AT32=m
448# CONFIG_PATA_PLATFORM is not set 483# CONFIG_PATA_PLATFORM is not set
449# CONFIG_MD is not set 484# CONFIG_MD is not set
@@ -469,11 +504,13 @@ CONFIG_PHYLIB=y
469# CONFIG_SMSC_PHY is not set 504# CONFIG_SMSC_PHY is not set
470# CONFIG_BROADCOM_PHY is not set 505# CONFIG_BROADCOM_PHY is not set
471# CONFIG_ICPLUS_PHY is not set 506# CONFIG_ICPLUS_PHY is not set
507# CONFIG_REALTEK_PHY is not set
472# CONFIG_FIXED_PHY is not set 508# CONFIG_FIXED_PHY is not set
473# CONFIG_MDIO_BITBANG is not set 509# CONFIG_MDIO_BITBANG is not set
474CONFIG_NET_ETHERNET=y 510CONFIG_NET_ETHERNET=y
475# CONFIG_MII is not set 511# CONFIG_MII is not set
476CONFIG_MACB=y 512CONFIG_MACB=y
513# CONFIG_ENC28J60 is not set
477# CONFIG_IBM_NEW_EMAC_ZMII is not set 514# CONFIG_IBM_NEW_EMAC_ZMII is not set
478# CONFIG_IBM_NEW_EMAC_RGMII is not set 515# CONFIG_IBM_NEW_EMAC_RGMII is not set
479# CONFIG_IBM_NEW_EMAC_TAH is not set 516# CONFIG_IBM_NEW_EMAC_TAH is not set
@@ -487,6 +524,7 @@ CONFIG_MACB=y
487# 524#
488# CONFIG_WLAN_PRE80211 is not set 525# CONFIG_WLAN_PRE80211 is not set
489# CONFIG_WLAN_80211 is not set 526# CONFIG_WLAN_80211 is not set
527# CONFIG_IWLWIFI_LEDS is not set
490# CONFIG_WAN is not set 528# CONFIG_WAN is not set
491CONFIG_PPP=m 529CONFIG_PPP=m
492# CONFIG_PPP_MULTILINK is not set 530# CONFIG_PPP_MULTILINK is not set
@@ -500,7 +538,6 @@ CONFIG_PPP_BSDCOMP=m
500# CONFIG_PPPOL2TP is not set 538# CONFIG_PPPOL2TP is not set
501# CONFIG_SLIP is not set 539# CONFIG_SLIP is not set
502CONFIG_SLHC=m 540CONFIG_SLHC=m
503# CONFIG_SHAPER is not set
504# CONFIG_NETCONSOLE is not set 541# CONFIG_NETCONSOLE is not set
505# CONFIG_NETPOLL is not set 542# CONFIG_NETPOLL is not set
506# CONFIG_NET_POLL_CONTROLLER is not set 543# CONFIG_NET_POLL_CONTROLLER is not set
@@ -556,6 +593,7 @@ CONFIG_MOUSE_GPIO=m
556# Character devices 593# Character devices
557# 594#
558# CONFIG_VT is not set 595# CONFIG_VT is not set
596# CONFIG_DEVKMEM is not set
559# CONFIG_SERIAL_NONSTANDARD is not set 597# CONFIG_SERIAL_NONSTANDARD is not set
560 598
561# 599#
@@ -568,6 +606,7 @@ CONFIG_MOUSE_GPIO=m
568# 606#
569CONFIG_SERIAL_ATMEL=y 607CONFIG_SERIAL_ATMEL=y
570CONFIG_SERIAL_ATMEL_CONSOLE=y 608CONFIG_SERIAL_ATMEL_CONSOLE=y
609CONFIG_SERIAL_ATMEL_PDC=y
571# CONFIG_SERIAL_ATMEL_TTYAT is not set 610# CONFIG_SERIAL_ATMEL_TTYAT is not set
572CONFIG_SERIAL_CORE=y 611CONFIG_SERIAL_CORE=y
573CONFIG_SERIAL_CORE_CONSOLE=y 612CONFIG_SERIAL_CORE_CONSOLE=y
@@ -575,21 +614,13 @@ CONFIG_UNIX98_PTYS=y
575# CONFIG_LEGACY_PTYS is not set 614# CONFIG_LEGACY_PTYS is not set
576# CONFIG_IPMI_HANDLER is not set 615# CONFIG_IPMI_HANDLER is not set
577# CONFIG_HW_RANDOM is not set 616# CONFIG_HW_RANDOM is not set
578# CONFIG_RTC is not set
579# CONFIG_GEN_RTC is not set
580# CONFIG_R3964 is not set 617# CONFIG_R3964 is not set
581# CONFIG_RAW_DRIVER is not set 618# CONFIG_RAW_DRIVER is not set
582# CONFIG_TCG_TPM is not set 619# CONFIG_TCG_TPM is not set
583CONFIG_I2C=m 620CONFIG_I2C=m
584CONFIG_I2C_BOARDINFO=y 621CONFIG_I2C_BOARDINFO=y
585CONFIG_I2C_CHARDEV=m 622CONFIG_I2C_CHARDEV=m
586
587#
588# I2C Algorithms
589#
590CONFIG_I2C_ALGOBIT=m 623CONFIG_I2C_ALGOBIT=m
591# CONFIG_I2C_ALGOPCF is not set
592# CONFIG_I2C_ALGOPCA is not set
593 624
594# 625#
595# I2C Hardware Bus support 626# I2C Hardware Bus support
@@ -600,27 +631,23 @@ CONFIG_I2C_GPIO=m
600# CONFIG_I2C_SIMTEC is not set 631# CONFIG_I2C_SIMTEC is not set
601# CONFIG_I2C_TAOS_EVM is not set 632# CONFIG_I2C_TAOS_EVM is not set
602# CONFIG_I2C_STUB is not set 633# CONFIG_I2C_STUB is not set
634# CONFIG_I2C_PCA_PLATFORM is not set
603 635
604# 636#
605# Miscellaneous I2C Chip support 637# Miscellaneous I2C Chip support
606# 638#
607# CONFIG_SENSORS_DS1337 is not set
608# CONFIG_SENSORS_DS1374 is not set
609# CONFIG_DS1682 is not set 639# CONFIG_DS1682 is not set
610# CONFIG_SENSORS_EEPROM is not set 640# CONFIG_SENSORS_EEPROM is not set
611# CONFIG_SENSORS_PCF8574 is not set 641# CONFIG_SENSORS_PCF8574 is not set
612# CONFIG_SENSORS_PCA9539 is not set 642# CONFIG_PCF8575 is not set
613# CONFIG_SENSORS_PCF8591 is not set 643# CONFIG_SENSORS_PCF8591 is not set
644# CONFIG_TPS65010 is not set
614# CONFIG_SENSORS_MAX6875 is not set 645# CONFIG_SENSORS_MAX6875 is not set
615# CONFIG_SENSORS_TSL2550 is not set 646# CONFIG_SENSORS_TSL2550 is not set
616# CONFIG_I2C_DEBUG_CORE is not set 647# CONFIG_I2C_DEBUG_CORE is not set
617# CONFIG_I2C_DEBUG_ALGO is not set 648# CONFIG_I2C_DEBUG_ALGO is not set
618# CONFIG_I2C_DEBUG_BUS is not set 649# CONFIG_I2C_DEBUG_BUS is not set
619# CONFIG_I2C_DEBUG_CHIP is not set 650# CONFIG_I2C_DEBUG_CHIP is not set
620
621#
622# SPI support
623#
624CONFIG_SPI=y 651CONFIG_SPI=y
625# CONFIG_SPI_DEBUG is not set 652# CONFIG_SPI_DEBUG is not set
626CONFIG_SPI_MASTER=y 653CONFIG_SPI_MASTER=y
@@ -637,9 +664,27 @@ CONFIG_SPI_ATMEL=y
637# CONFIG_SPI_AT25 is not set 664# CONFIG_SPI_AT25 is not set
638CONFIG_SPI_SPIDEV=m 665CONFIG_SPI_SPIDEV=m
639# CONFIG_SPI_TLE62X0 is not set 666# CONFIG_SPI_TLE62X0 is not set
667CONFIG_HAVE_GPIO_LIB=y
668
669#
670# GPIO Support
671#
672# CONFIG_DEBUG_GPIO is not set
673
674#
675# I2C GPIO expanders:
676#
677# CONFIG_GPIO_PCA953X is not set
678# CONFIG_GPIO_PCF857X is not set
679
680#
681# SPI GPIO expanders:
682#
683# CONFIG_GPIO_MCP23S08 is not set
640# CONFIG_W1 is not set 684# CONFIG_W1 is not set
641# CONFIG_POWER_SUPPLY is not set 685# CONFIG_POWER_SUPPLY is not set
642# CONFIG_HWMON is not set 686# CONFIG_HWMON is not set
687# CONFIG_THERMAL is not set
643CONFIG_WATCHDOG=y 688CONFIG_WATCHDOG=y
644# CONFIG_WATCHDOG_NOWAYOUT is not set 689# CONFIG_WATCHDOG_NOWAYOUT is not set
645 690
@@ -659,12 +704,22 @@ CONFIG_SSB_POSSIBLE=y
659# Multifunction device drivers 704# Multifunction device drivers
660# 705#
661# CONFIG_MFD_SM501 is not set 706# CONFIG_MFD_SM501 is not set
707# CONFIG_HTC_PASIC3 is not set
662 708
663# 709#
664# Multimedia devices 710# Multimedia devices
665# 711#
712
713#
714# Multimedia core support
715#
666# CONFIG_VIDEO_DEV is not set 716# CONFIG_VIDEO_DEV is not set
667# CONFIG_DVB_CORE is not set 717# CONFIG_DVB_CORE is not set
718# CONFIG_VIDEO_MEDIA is not set
719
720#
721# Multimedia drivers
722#
668# CONFIG_DAB is not set 723# CONFIG_DAB is not set
669 724
670# 725#
@@ -682,8 +737,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
682# CONFIG_FB_SYS_FILLRECT is not set 737# CONFIG_FB_SYS_FILLRECT is not set
683# CONFIG_FB_SYS_COPYAREA is not set 738# CONFIG_FB_SYS_COPYAREA is not set
684# CONFIG_FB_SYS_IMAGEBLIT is not set 739# CONFIG_FB_SYS_IMAGEBLIT is not set
740# CONFIG_FB_FOREIGN_ENDIAN is not set
685# CONFIG_FB_SYS_FOPS is not set 741# CONFIG_FB_SYS_FOPS is not set
686CONFIG_FB_DEFERRED_IO=y
687# CONFIG_FB_SVGALIB is not set 742# CONFIG_FB_SVGALIB is not set
688# CONFIG_FB_MACMODES is not set 743# CONFIG_FB_MACMODES is not set
689# CONFIG_FB_BACKLIGHT is not set 744# CONFIG_FB_BACKLIGHT is not set
@@ -749,7 +804,11 @@ CONFIG_SND_AT73C213_TARGET_BITRATE=48000
749# CONFIG_SND_SOC is not set 804# CONFIG_SND_SOC is not set
750 805
751# 806#
752# SoC Audio support for SuperH 807# ALSA SoC audio for Freescale SOCs
808#
809
810#
811# SoC Audio for the Texas Instruments OMAP
753# 812#
754 813
755# 814#
@@ -761,14 +820,12 @@ CONFIG_USB_SUPPORT=y
761# CONFIG_USB_ARCH_HAS_HCD is not set 820# CONFIG_USB_ARCH_HAS_HCD is not set
762# CONFIG_USB_ARCH_HAS_OHCI is not set 821# CONFIG_USB_ARCH_HAS_OHCI is not set
763# CONFIG_USB_ARCH_HAS_EHCI is not set 822# CONFIG_USB_ARCH_HAS_EHCI is not set
823# CONFIG_USB_OTG_WHITELIST is not set
824# CONFIG_USB_OTG_BLACKLIST_HUB is not set
764 825
765# 826#
766# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 827# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
767# 828#
768
769#
770# USB Gadget Support
771#
772CONFIG_USB_GADGET=y 829CONFIG_USB_GADGET=y
773# CONFIG_USB_GADGET_DEBUG is not set 830# CONFIG_USB_GADGET_DEBUG is not set
774# CONFIG_USB_GADGET_DEBUG_FILES is not set 831# CONFIG_USB_GADGET_DEBUG_FILES is not set
@@ -781,6 +838,7 @@ CONFIG_USB_ATMEL_USBA=y
781# CONFIG_USB_GADGET_NET2280 is not set 838# CONFIG_USB_GADGET_NET2280 is not set
782# CONFIG_USB_GADGET_PXA2XX is not set 839# CONFIG_USB_GADGET_PXA2XX is not set
783# CONFIG_USB_GADGET_M66592 is not set 840# CONFIG_USB_GADGET_M66592 is not set
841# CONFIG_USB_GADGET_PXA27X is not set
784# CONFIG_USB_GADGET_GOKU is not set 842# CONFIG_USB_GADGET_GOKU is not set
785# CONFIG_USB_GADGET_LH7A40X is not set 843# CONFIG_USB_GADGET_LH7A40X is not set
786# CONFIG_USB_GADGET_OMAP is not set 844# CONFIG_USB_GADGET_OMAP is not set
@@ -796,6 +854,7 @@ CONFIG_USB_FILE_STORAGE=m
796# CONFIG_USB_FILE_STORAGE_TEST is not set 854# CONFIG_USB_FILE_STORAGE_TEST is not set
797CONFIG_USB_G_SERIAL=m 855CONFIG_USB_G_SERIAL=m
798# CONFIG_USB_MIDI_GADGET is not set 856# CONFIG_USB_MIDI_GADGET is not set
857# CONFIG_USB_G_PRINTER is not set
799CONFIG_MMC=m 858CONFIG_MMC=m
800# CONFIG_MMC_DEBUG is not set 859# CONFIG_MMC_DEBUG is not set
801# CONFIG_MMC_UNSAFE_RESUME is not set 860# CONFIG_MMC_UNSAFE_RESUME is not set
@@ -806,17 +865,20 @@ CONFIG_MMC=m
806CONFIG_MMC_BLOCK=m 865CONFIG_MMC_BLOCK=m
807CONFIG_MMC_BLOCK_BOUNCE=y 866CONFIG_MMC_BLOCK_BOUNCE=y
808# CONFIG_SDIO_UART is not set 867# CONFIG_SDIO_UART is not set
868CONFIG_MMC_TEST=m
809 869
810# 870#
811# MMC/SD Host Controller Drivers 871# MMC/SD Host Controller Drivers
812# 872#
813CONFIG_MMC_SPI=m 873CONFIG_MMC_SPI=m
874# CONFIG_MEMSTICK is not set
814CONFIG_NEW_LEDS=y 875CONFIG_NEW_LEDS=y
815CONFIG_LEDS_CLASS=m 876CONFIG_LEDS_CLASS=m
816 877
817# 878#
818# LED drivers 879# LED drivers
819# 880#
881CONFIG_LEDS_ATMEL_PWM=m
820CONFIG_LEDS_GPIO=m 882CONFIG_LEDS_GPIO=m
821 883
822# 884#
@@ -825,6 +887,8 @@ CONFIG_LEDS_GPIO=m
825CONFIG_LEDS_TRIGGERS=y 887CONFIG_LEDS_TRIGGERS=y
826CONFIG_LEDS_TRIGGER_TIMER=m 888CONFIG_LEDS_TRIGGER_TIMER=m
827CONFIG_LEDS_TRIGGER_HEARTBEAT=m 889CONFIG_LEDS_TRIGGER_HEARTBEAT=m
890CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
891# CONFIG_ACCESSIBILITY is not set
828CONFIG_RTC_LIB=y 892CONFIG_RTC_LIB=y
829CONFIG_RTC_CLASS=y 893CONFIG_RTC_CLASS=y
830CONFIG_RTC_HCTOSYS=y 894CONFIG_RTC_HCTOSYS=y
@@ -853,19 +917,22 @@ CONFIG_RTC_INTF_DEV=y
853# CONFIG_RTC_DRV_PCF8563 is not set 917# CONFIG_RTC_DRV_PCF8563 is not set
854# CONFIG_RTC_DRV_PCF8583 is not set 918# CONFIG_RTC_DRV_PCF8583 is not set
855# CONFIG_RTC_DRV_M41T80 is not set 919# CONFIG_RTC_DRV_M41T80 is not set
920# CONFIG_RTC_DRV_S35390A is not set
856 921
857# 922#
858# SPI RTC drivers 923# SPI RTC drivers
859# 924#
860# CONFIG_RTC_DRV_RS5C348 is not set
861# CONFIG_RTC_DRV_MAX6902 is not set 925# CONFIG_RTC_DRV_MAX6902 is not set
926# CONFIG_RTC_DRV_R9701 is not set
927# CONFIG_RTC_DRV_RS5C348 is not set
862 928
863# 929#
864# Platform RTC drivers 930# Platform RTC drivers
865# 931#
932# CONFIG_RTC_DRV_DS1511 is not set
866# CONFIG_RTC_DRV_DS1553 is not set 933# CONFIG_RTC_DRV_DS1553 is not set
867# CONFIG_RTC_DRV_STK17TA8 is not set
868# CONFIG_RTC_DRV_DS1742 is not set 934# CONFIG_RTC_DRV_DS1742 is not set
935# CONFIG_RTC_DRV_STK17TA8 is not set
869# CONFIG_RTC_DRV_M48T86 is not set 936# CONFIG_RTC_DRV_M48T86 is not set
870# CONFIG_RTC_DRV_M48T59 is not set 937# CONFIG_RTC_DRV_M48T59 is not set
871# CONFIG_RTC_DRV_V3020 is not set 938# CONFIG_RTC_DRV_V3020 is not set
@@ -874,10 +941,6 @@ CONFIG_RTC_INTF_DEV=y
874# on-CPU RTC drivers 941# on-CPU RTC drivers
875# 942#
876CONFIG_RTC_DRV_AT32AP700X=y 943CONFIG_RTC_DRV_AT32AP700X=y
877
878#
879# Userspace I/O
880#
881# CONFIG_UIO is not set 944# CONFIG_UIO is not set
882 945
883# 946#
@@ -895,14 +958,11 @@ CONFIG_JBD=m
895# CONFIG_JFS_FS is not set 958# CONFIG_JFS_FS is not set
896# CONFIG_FS_POSIX_ACL is not set 959# CONFIG_FS_POSIX_ACL is not set
897# CONFIG_XFS_FS is not set 960# CONFIG_XFS_FS is not set
898# CONFIG_GFS2_FS is not set
899# CONFIG_OCFS2_FS is not set 961# CONFIG_OCFS2_FS is not set
900CONFIG_MINIX_FS=m 962# CONFIG_DNOTIFY is not set
901# CONFIG_ROMFS_FS is not set
902CONFIG_INOTIFY=y 963CONFIG_INOTIFY=y
903CONFIG_INOTIFY_USER=y 964CONFIG_INOTIFY_USER=y
904# CONFIG_QUOTA is not set 965# CONFIG_QUOTA is not set
905# CONFIG_DNOTIFY is not set
906# CONFIG_AUTOFS_FS is not set 966# CONFIG_AUTOFS_FS is not set
907# CONFIG_AUTOFS4_FS is not set 967# CONFIG_AUTOFS4_FS is not set
908CONFIG_FUSE_FS=m 968CONFIG_FUSE_FS=m
@@ -957,8 +1017,10 @@ CONFIG_JFFS2_RTIME=y
957# CONFIG_JFFS2_RUBIN is not set 1017# CONFIG_JFFS2_RUBIN is not set
958# CONFIG_CRAMFS is not set 1018# CONFIG_CRAMFS is not set
959# CONFIG_VXFS_FS is not set 1019# CONFIG_VXFS_FS is not set
1020CONFIG_MINIX_FS=m
960# CONFIG_HPFS_FS is not set 1021# CONFIG_HPFS_FS is not set
961# CONFIG_QNX4FS_FS is not set 1022# CONFIG_QNX4FS_FS is not set
1023# CONFIG_ROMFS_FS is not set
962# CONFIG_SYSV_FS is not set 1024# CONFIG_SYSV_FS is not set
963# CONFIG_UFS_FS is not set 1025# CONFIG_UFS_FS is not set
964CONFIG_NETWORK_FILESYSTEMS=y 1026CONFIG_NETWORK_FILESYSTEMS=y
@@ -966,7 +1028,6 @@ CONFIG_NFS_FS=y
966CONFIG_NFS_V3=y 1028CONFIG_NFS_V3=y
967# CONFIG_NFS_V3_ACL is not set 1029# CONFIG_NFS_V3_ACL is not set
968# CONFIG_NFS_V4 is not set 1030# CONFIG_NFS_V4 is not set
969# CONFIG_NFS_DIRECTIO is not set
970# CONFIG_NFSD is not set 1031# CONFIG_NFSD is not set
971CONFIG_ROOT_NFS=y 1032CONFIG_ROOT_NFS=y
972CONFIG_LOCKD=y 1033CONFIG_LOCKD=y
@@ -1028,11 +1089,6 @@ CONFIG_NLS_ISO8859_1=m
1028# CONFIG_NLS_KOI8_U is not set 1089# CONFIG_NLS_KOI8_U is not set
1029CONFIG_NLS_UTF8=m 1090CONFIG_NLS_UTF8=m
1030# CONFIG_DLM is not set 1091# CONFIG_DLM is not set
1031CONFIG_INSTRUMENTATION=y
1032CONFIG_PROFILING=y
1033CONFIG_OPROFILE=m
1034CONFIG_KPROBES=y
1035# CONFIG_MARKERS is not set
1036 1092
1037# 1093#
1038# Kernel hacking 1094# Kernel hacking
@@ -1040,6 +1096,7 @@ CONFIG_KPROBES=y
1040# CONFIG_PRINTK_TIME is not set 1096# CONFIG_PRINTK_TIME is not set
1041CONFIG_ENABLE_WARN_DEPRECATED=y 1097CONFIG_ENABLE_WARN_DEPRECATED=y
1042CONFIG_ENABLE_MUST_CHECK=y 1098CONFIG_ENABLE_MUST_CHECK=y
1099CONFIG_FRAME_WARN=1024
1043CONFIG_MAGIC_SYSRQ=y 1100CONFIG_MAGIC_SYSRQ=y
1044# CONFIG_UNUSED_SYMBOLS is not set 1101# CONFIG_UNUSED_SYMBOLS is not set
1045CONFIG_DEBUG_FS=y 1102CONFIG_DEBUG_FS=y
@@ -1050,7 +1107,9 @@ CONFIG_DETECT_SOFTLOCKUP=y
1050CONFIG_SCHED_DEBUG=y 1107CONFIG_SCHED_DEBUG=y
1051# CONFIG_SCHEDSTATS is not set 1108# CONFIG_SCHEDSTATS is not set
1052# CONFIG_TIMER_STATS is not set 1109# CONFIG_TIMER_STATS is not set
1110# CONFIG_DEBUG_OBJECTS is not set
1053# CONFIG_SLUB_DEBUG_ON is not set 1111# CONFIG_SLUB_DEBUG_ON is not set
1112# CONFIG_SLUB_STATS is not set
1054# CONFIG_DEBUG_RT_MUTEXES is not set 1113# CONFIG_DEBUG_RT_MUTEXES is not set
1055# CONFIG_RT_MUTEX_TESTER is not set 1114# CONFIG_RT_MUTEX_TESTER is not set
1056# CONFIG_DEBUG_SPINLOCK is not set 1115# CONFIG_DEBUG_SPINLOCK is not set
@@ -1064,12 +1123,14 @@ CONFIG_SCHED_DEBUG=y
1064CONFIG_DEBUG_BUGVERBOSE=y 1123CONFIG_DEBUG_BUGVERBOSE=y
1065# CONFIG_DEBUG_INFO is not set 1124# CONFIG_DEBUG_INFO is not set
1066# CONFIG_DEBUG_VM is not set 1125# CONFIG_DEBUG_VM is not set
1126# CONFIG_DEBUG_WRITECOUNT is not set
1067# CONFIG_DEBUG_LIST is not set 1127# CONFIG_DEBUG_LIST is not set
1068# CONFIG_DEBUG_SG is not set 1128# CONFIG_DEBUG_SG is not set
1069CONFIG_FRAME_POINTER=y 1129CONFIG_FRAME_POINTER=y
1070CONFIG_FORCED_INLINING=y
1071# CONFIG_BOOT_PRINTK_DELAY is not set 1130# CONFIG_BOOT_PRINTK_DELAY is not set
1072# CONFIG_RCU_TORTURE_TEST is not set 1131# CONFIG_RCU_TORTURE_TEST is not set
1132# CONFIG_KPROBES_SANITY_TEST is not set
1133# CONFIG_BACKTRACE_SELF_TEST is not set
1073# CONFIG_LKDTM is not set 1134# CONFIG_LKDTM is not set
1074# CONFIG_FAULT_INJECTION is not set 1135# CONFIG_FAULT_INJECTION is not set
1075# CONFIG_SAMPLES is not set 1136# CONFIG_SAMPLES is not set
@@ -1081,52 +1142,90 @@ CONFIG_FORCED_INLINING=y
1081# CONFIG_SECURITY is not set 1142# CONFIG_SECURITY is not set
1082# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1143# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1083CONFIG_CRYPTO=y 1144CONFIG_CRYPTO=y
1145
1146#
1147# Crypto core or helper
1148#
1084CONFIG_CRYPTO_ALGAPI=m 1149CONFIG_CRYPTO_ALGAPI=m
1150CONFIG_CRYPTO_AEAD=m
1085CONFIG_CRYPTO_BLKCIPHER=m 1151CONFIG_CRYPTO_BLKCIPHER=m
1086CONFIG_CRYPTO_HASH=m 1152CONFIG_CRYPTO_HASH=m
1087CONFIG_CRYPTO_MANAGER=m 1153CONFIG_CRYPTO_MANAGER=m
1154# CONFIG_CRYPTO_GF128MUL is not set
1155# CONFIG_CRYPTO_NULL is not set
1156# CONFIG_CRYPTO_CRYPTD is not set
1157CONFIG_CRYPTO_AUTHENC=m
1158# CONFIG_CRYPTO_TEST is not set
1159
1160#
1161# Authenticated Encryption with Associated Data
1162#
1163# CONFIG_CRYPTO_CCM is not set
1164# CONFIG_CRYPTO_GCM is not set
1165# CONFIG_CRYPTO_SEQIV is not set
1166
1167#
1168# Block modes
1169#
1170CONFIG_CRYPTO_CBC=m
1171# CONFIG_CRYPTO_CTR is not set
1172# CONFIG_CRYPTO_CTS is not set
1173# CONFIG_CRYPTO_ECB is not set
1174# CONFIG_CRYPTO_LRW is not set
1175# CONFIG_CRYPTO_PCBC is not set
1176# CONFIG_CRYPTO_XTS is not set
1177
1178#
1179# Hash modes
1180#
1088CONFIG_CRYPTO_HMAC=m 1181CONFIG_CRYPTO_HMAC=m
1089# CONFIG_CRYPTO_XCBC is not set 1182# CONFIG_CRYPTO_XCBC is not set
1090# CONFIG_CRYPTO_NULL is not set 1183
1184#
1185# Digest
1186#
1187# CONFIG_CRYPTO_CRC32C is not set
1091# CONFIG_CRYPTO_MD4 is not set 1188# CONFIG_CRYPTO_MD4 is not set
1092CONFIG_CRYPTO_MD5=m 1189CONFIG_CRYPTO_MD5=m
1190# CONFIG_CRYPTO_MICHAEL_MIC is not set
1093CONFIG_CRYPTO_SHA1=m 1191CONFIG_CRYPTO_SHA1=m
1094# CONFIG_CRYPTO_SHA256 is not set 1192# CONFIG_CRYPTO_SHA256 is not set
1095# CONFIG_CRYPTO_SHA512 is not set 1193# CONFIG_CRYPTO_SHA512 is not set
1096# CONFIG_CRYPTO_WP512 is not set
1097# CONFIG_CRYPTO_TGR192 is not set 1194# CONFIG_CRYPTO_TGR192 is not set
1098# CONFIG_CRYPTO_GF128MUL is not set 1195# CONFIG_CRYPTO_WP512 is not set
1099# CONFIG_CRYPTO_ECB is not set 1196
1100CONFIG_CRYPTO_CBC=m 1197#
1101# CONFIG_CRYPTO_PCBC is not set 1198# Ciphers
1102# CONFIG_CRYPTO_LRW is not set 1199#
1103# CONFIG_CRYPTO_XTS is not set
1104# CONFIG_CRYPTO_CRYPTD is not set
1105CONFIG_CRYPTO_DES=m
1106# CONFIG_CRYPTO_FCRYPT is not set
1107# CONFIG_CRYPTO_BLOWFISH is not set
1108# CONFIG_CRYPTO_TWOFISH is not set
1109# CONFIG_CRYPTO_SERPENT is not set
1110# CONFIG_CRYPTO_AES is not set 1200# CONFIG_CRYPTO_AES is not set
1201# CONFIG_CRYPTO_ANUBIS is not set
1202# CONFIG_CRYPTO_ARC4 is not set
1203# CONFIG_CRYPTO_BLOWFISH is not set
1204# CONFIG_CRYPTO_CAMELLIA is not set
1111# CONFIG_CRYPTO_CAST5 is not set 1205# CONFIG_CRYPTO_CAST5 is not set
1112# CONFIG_CRYPTO_CAST6 is not set 1206# CONFIG_CRYPTO_CAST6 is not set
1113# CONFIG_CRYPTO_TEA is not set 1207CONFIG_CRYPTO_DES=m
1114# CONFIG_CRYPTO_ARC4 is not set 1208# CONFIG_CRYPTO_FCRYPT is not set
1115# CONFIG_CRYPTO_KHAZAD is not set 1209# CONFIG_CRYPTO_KHAZAD is not set
1116# CONFIG_CRYPTO_ANUBIS is not set 1210# CONFIG_CRYPTO_SALSA20 is not set
1117# CONFIG_CRYPTO_SEED is not set 1211# CONFIG_CRYPTO_SEED is not set
1212# CONFIG_CRYPTO_SERPENT is not set
1213# CONFIG_CRYPTO_TEA is not set
1214# CONFIG_CRYPTO_TWOFISH is not set
1215
1216#
1217# Compression
1218#
1118CONFIG_CRYPTO_DEFLATE=m 1219CONFIG_CRYPTO_DEFLATE=m
1119# CONFIG_CRYPTO_MICHAEL_MIC is not set 1220# CONFIG_CRYPTO_LZO is not set
1120# CONFIG_CRYPTO_CRC32C is not set
1121# CONFIG_CRYPTO_CAMELLIA is not set
1122# CONFIG_CRYPTO_TEST is not set
1123# CONFIG_CRYPTO_AUTHENC is not set
1124# CONFIG_CRYPTO_HW is not set 1221# CONFIG_CRYPTO_HW is not set
1125 1222
1126# 1223#
1127# Library routines 1224# Library routines
1128# 1225#
1129CONFIG_BITREVERSE=y 1226CONFIG_BITREVERSE=y
1227# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1228# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1130CONFIG_CRC_CCITT=m 1229CONFIG_CRC_CCITT=m
1131# CONFIG_CRC16 is not set 1230# CONFIG_CRC16 is not set
1132CONFIG_CRC_ITU_T=m 1231CONFIG_CRC_ITU_T=m
diff --git a/arch/avr32/configs/atstk1003_defconfig b/arch/avr32/configs/atstk1003_defconfig
index 45e23e03f074..5a4ae6b5d28f 100644
--- a/arch/avr32/configs/atstk1003_defconfig
+++ b/arch/avr32/configs/atstk1003_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.24-rc7 3# Linux kernel version: 2.6.26-rc3
4# Wed Jan 9 22:54:34 2008 4# Mon May 26 13:33:05 2008
5# 5#
6CONFIG_AVR32=y 6CONFIG_AVR32=y
7CONFIG_GENERIC_GPIO=y 7CONFIG_GENERIC_GPIO=y
@@ -13,10 +13,10 @@ CONFIG_HARDIRQS_SW_RESEND=y
13CONFIG_GENERIC_IRQ_PROBE=y 13CONFIG_GENERIC_IRQ_PROBE=y
14CONFIG_RWSEM_GENERIC_SPINLOCK=y 14CONFIG_RWSEM_GENERIC_SPINLOCK=y
15CONFIG_GENERIC_TIME=y 15CONFIG_GENERIC_TIME=y
16CONFIG_GENERIC_CLOCKEVENTS=y
16# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set 17# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
17# CONFIG_ARCH_HAS_ILOG2_U32 is not set 18# CONFIG_ARCH_HAS_ILOG2_U32 is not set
18# CONFIG_ARCH_HAS_ILOG2_U64 is not set 19# CONFIG_ARCH_HAS_ILOG2_U64 is not set
19CONFIG_ARCH_SUPPORTS_OPROFILE=y
20CONFIG_GENERIC_HWEIGHT=y 20CONFIG_GENERIC_HWEIGHT=y
21CONFIG_GENERIC_CALIBRATE_DELAY=y 21CONFIG_GENERIC_CALIBRATE_DELAY=y
22CONFIG_GENERIC_BUG=y 22CONFIG_GENERIC_BUG=y
@@ -39,17 +39,15 @@ CONFIG_BSD_PROCESS_ACCT_V3=y
39CONFIG_TASKSTATS=y 39CONFIG_TASKSTATS=y
40CONFIG_TASK_DELAY_ACCT=y 40CONFIG_TASK_DELAY_ACCT=y
41# CONFIG_TASK_XACCT is not set 41# CONFIG_TASK_XACCT is not set
42# CONFIG_USER_NS is not set
43# CONFIG_PID_NS is not set
44CONFIG_AUDIT=y 42CONFIG_AUDIT=y
45# CONFIG_IKCONFIG is not set 43# CONFIG_IKCONFIG is not set
46CONFIG_LOG_BUF_SHIFT=14 44CONFIG_LOG_BUF_SHIFT=14
47# CONFIG_CGROUPS is not set 45# CONFIG_CGROUPS is not set
48CONFIG_FAIR_GROUP_SCHED=y 46# CONFIG_GROUP_SCHED is not set
49CONFIG_FAIR_USER_SCHED=y
50# CONFIG_FAIR_CGROUP_SCHED is not set
51CONFIG_SYSFS_DEPRECATED=y 47CONFIG_SYSFS_DEPRECATED=y
48CONFIG_SYSFS_DEPRECATED_V2=y
52CONFIG_RELAY=y 49CONFIG_RELAY=y
50# CONFIG_NAMESPACES is not set
53CONFIG_BLK_DEV_INITRD=y 51CONFIG_BLK_DEV_INITRD=y
54CONFIG_INITRAMFS_SOURCE="" 52CONFIG_INITRAMFS_SOURCE=""
55CONFIG_CC_OPTIMIZE_FOR_SIZE=y 53CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -63,11 +61,13 @@ CONFIG_HOTPLUG=y
63CONFIG_PRINTK=y 61CONFIG_PRINTK=y
64CONFIG_BUG=y 62CONFIG_BUG=y
65CONFIG_ELF_CORE=y 63CONFIG_ELF_CORE=y
64# CONFIG_COMPAT_BRK is not set
66# CONFIG_BASE_FULL is not set 65# CONFIG_BASE_FULL is not set
67CONFIG_FUTEX=y 66CONFIG_FUTEX=y
68CONFIG_ANON_INODES=y 67CONFIG_ANON_INODES=y
69CONFIG_EPOLL=y 68CONFIG_EPOLL=y
70CONFIG_SIGNALFD=y 69CONFIG_SIGNALFD=y
70CONFIG_TIMERFD=y
71CONFIG_EVENTFD=y 71CONFIG_EVENTFD=y
72CONFIG_SHMEM=y 72CONFIG_SHMEM=y
73CONFIG_VM_EVENT_COUNTERS=y 73CONFIG_VM_EVENT_COUNTERS=y
@@ -75,11 +75,20 @@ CONFIG_VM_EVENT_COUNTERS=y
75# CONFIG_SLAB is not set 75# CONFIG_SLAB is not set
76CONFIG_SLUB=y 76CONFIG_SLUB=y
77# CONFIG_SLOB is not set 77# CONFIG_SLOB is not set
78CONFIG_SLABINFO=y 78CONFIG_PROFILING=y
79# CONFIG_MARKERS is not set
80CONFIG_OPROFILE=m
81CONFIG_HAVE_OPROFILE=y
82CONFIG_KPROBES=y
83CONFIG_HAVE_KPROBES=y
84# CONFIG_HAVE_KRETPROBES is not set
85# CONFIG_HAVE_DMA_ATTRS is not set
86CONFIG_PROC_PAGE_MONITOR=y
79CONFIG_RT_MUTEXES=y 87CONFIG_RT_MUTEXES=y
80# CONFIG_TINY_SHMEM is not set 88# CONFIG_TINY_SHMEM is not set
81CONFIG_BASE_SMALL=1 89CONFIG_BASE_SMALL=1
82CONFIG_MODULES=y 90CONFIG_MODULES=y
91# CONFIG_MODULE_FORCE_LOAD is not set
83CONFIG_MODULE_UNLOAD=y 92CONFIG_MODULE_UNLOAD=y
84# CONFIG_MODULE_FORCE_UNLOAD is not set 93# CONFIG_MODULE_FORCE_UNLOAD is not set
85# CONFIG_MODVERSIONS is not set 94# CONFIG_MODVERSIONS is not set
@@ -103,10 +112,15 @@ CONFIG_IOSCHED_CFQ=y
103CONFIG_DEFAULT_CFQ=y 112CONFIG_DEFAULT_CFQ=y
104# CONFIG_DEFAULT_NOOP is not set 113# CONFIG_DEFAULT_NOOP is not set
105CONFIG_DEFAULT_IOSCHED="cfq" 114CONFIG_DEFAULT_IOSCHED="cfq"
115CONFIG_CLASSIC_RCU=y
106 116
107# 117#
108# System Type and features 118# System Type and features
109# 119#
120CONFIG_TICK_ONESHOT=y
121CONFIG_NO_HZ=y
122CONFIG_HIGH_RES_TIMERS=y
123CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
110CONFIG_SUBARCH_AVR32B=y 124CONFIG_SUBARCH_AVR32B=y
111CONFIG_MMU=y 125CONFIG_MMU=y
112CONFIG_PERFORMANCE_COUNTERS=y 126CONFIG_PERFORMANCE_COUNTERS=y
@@ -152,16 +166,19 @@ CONFIG_FLATMEM=y
152CONFIG_FLAT_NODE_MEM_MAP=y 166CONFIG_FLAT_NODE_MEM_MAP=y
153# CONFIG_SPARSEMEM_STATIC is not set 167# CONFIG_SPARSEMEM_STATIC is not set
154# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 168# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
169CONFIG_PAGEFLAGS_EXTENDED=y
155CONFIG_SPLIT_PTLOCK_CPUS=4 170CONFIG_SPLIT_PTLOCK_CPUS=4
156# CONFIG_RESOURCES_64BIT is not set 171# CONFIG_RESOURCES_64BIT is not set
157CONFIG_ZONE_DMA_FLAG=0 172CONFIG_ZONE_DMA_FLAG=0
158CONFIG_VIRT_TO_BUS=y 173CONFIG_VIRT_TO_BUS=y
159# CONFIG_OWNERSHIP_TRACE is not set 174# CONFIG_OWNERSHIP_TRACE is not set
175CONFIG_NMI_DEBUGGING=y
160# CONFIG_HZ_100 is not set 176# CONFIG_HZ_100 is not set
161CONFIG_HZ_250=y 177CONFIG_HZ_250=y
162# CONFIG_HZ_300 is not set 178# CONFIG_HZ_300 is not set
163# CONFIG_HZ_1000 is not set 179# CONFIG_HZ_1000 is not set
164CONFIG_HZ=250 180CONFIG_HZ=250
181# CONFIG_SCHED_HRTICK is not set
165CONFIG_CMDLINE="" 182CONFIG_CMDLINE=""
166 183
167# 184#
@@ -175,9 +192,10 @@ CONFIG_CPU_FREQ=y
175CONFIG_CPU_FREQ_TABLE=y 192CONFIG_CPU_FREQ_TABLE=y
176# CONFIG_CPU_FREQ_DEBUG is not set 193# CONFIG_CPU_FREQ_DEBUG is not set
177# CONFIG_CPU_FREQ_STAT is not set 194# CONFIG_CPU_FREQ_STAT is not set
178CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 195# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
196# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
179# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 197# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
180# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set 198CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
181# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set 199# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
182CONFIG_CPU_FREQ_GOV_PERFORMANCE=y 200CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
183# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set 201# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
@@ -234,8 +252,6 @@ CONFIG_TCP_CONG_CUBIC=y
234CONFIG_DEFAULT_TCP_CONG="cubic" 252CONFIG_DEFAULT_TCP_CONG="cubic"
235# CONFIG_TCP_MD5SIG is not set 253# CONFIG_TCP_MD5SIG is not set
236# CONFIG_IPV6 is not set 254# CONFIG_IPV6 is not set
237# CONFIG_INET6_XFRM_TUNNEL is not set
238# CONFIG_INET6_TUNNEL is not set
239# CONFIG_NETWORK_SECMARK is not set 255# CONFIG_NETWORK_SECMARK is not set
240# CONFIG_NETFILTER is not set 256# CONFIG_NETFILTER is not set
241# CONFIG_IP_DCCP is not set 257# CONFIG_IP_DCCP is not set
@@ -260,6 +276,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
260# CONFIG_NET_PKTGEN is not set 276# CONFIG_NET_PKTGEN is not set
261# CONFIG_NET_TCPPROBE is not set 277# CONFIG_NET_TCPPROBE is not set
262# CONFIG_HAMRADIO is not set 278# CONFIG_HAMRADIO is not set
279# CONFIG_CAN is not set
263# CONFIG_IRDA is not set 280# CONFIG_IRDA is not set
264# CONFIG_BT is not set 281# CONFIG_BT is not set
265# CONFIG_AF_RXRPC is not set 282# CONFIG_AF_RXRPC is not set
@@ -295,6 +312,7 @@ CONFIG_MTD=y
295CONFIG_MTD_PARTITIONS=y 312CONFIG_MTD_PARTITIONS=y
296# CONFIG_MTD_REDBOOT_PARTS is not set 313# CONFIG_MTD_REDBOOT_PARTS is not set
297CONFIG_MTD_CMDLINE_PARTS=y 314CONFIG_MTD_CMDLINE_PARTS=y
315# CONFIG_MTD_AR7_PARTS is not set
298 316
299# 317#
300# User Modules And Translation Layers 318# User Modules And Translation Layers
@@ -349,6 +367,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
349# 367#
350CONFIG_MTD_DATAFLASH=m 368CONFIG_MTD_DATAFLASH=m
351CONFIG_MTD_M25P80=m 369CONFIG_MTD_M25P80=m
370CONFIG_M25PXX_USE_FAST_READ=y
352# CONFIG_MTD_SLRAM is not set 371# CONFIG_MTD_SLRAM is not set
353# CONFIG_MTD_PHRAM is not set 372# CONFIG_MTD_PHRAM is not set
354# CONFIG_MTD_MTDRAM is not set 373# CONFIG_MTD_MTDRAM is not set
@@ -376,13 +395,18 @@ CONFIG_BLK_DEV_NBD=m
376CONFIG_BLK_DEV_RAM=m 395CONFIG_BLK_DEV_RAM=m
377CONFIG_BLK_DEV_RAM_COUNT=16 396CONFIG_BLK_DEV_RAM_COUNT=16
378CONFIG_BLK_DEV_RAM_SIZE=4096 397CONFIG_BLK_DEV_RAM_SIZE=4096
379CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 398# CONFIG_BLK_DEV_XIP is not set
380# CONFIG_CDROM_PKTCDVD is not set 399# CONFIG_CDROM_PKTCDVD is not set
381# CONFIG_ATA_OVER_ETH is not set 400# CONFIG_ATA_OVER_ETH is not set
382CONFIG_MISC_DEVICES=y 401CONFIG_MISC_DEVICES=y
402CONFIG_ATMEL_PWM=m
403CONFIG_ATMEL_TCLIB=y
404CONFIG_ATMEL_TCB_CLKSRC=y
405CONFIG_ATMEL_TCB_CLKSRC_BLOCK=0
383# CONFIG_EEPROM_93CX6 is not set 406# CONFIG_EEPROM_93CX6 is not set
384CONFIG_ATMEL_SSC=m 407CONFIG_ATMEL_SSC=m
385# CONFIG_IDE is not set 408# CONFIG_ENCLOSURE_SERVICES is not set
409# CONFIG_HAVE_IDE is not set
386 410
387# 411#
388# SCSI device support 412# SCSI device support
@@ -427,6 +451,9 @@ CONFIG_SCSI_LOWLEVEL=y
427# CONFIG_SCSI_DEBUG is not set 451# CONFIG_SCSI_DEBUG is not set
428CONFIG_ATA=m 452CONFIG_ATA=m
429# CONFIG_ATA_NONSTANDARD is not set 453# CONFIG_ATA_NONSTANDARD is not set
454# CONFIG_SATA_PMP is not set
455CONFIG_ATA_SFF=y
456# CONFIG_SATA_MV is not set
430CONFIG_PATA_AT32=m 457CONFIG_PATA_AT32=m
431# CONFIG_PATA_PLATFORM is not set 458# CONFIG_PATA_PLATFORM is not set
432# CONFIG_MD is not set 459# CONFIG_MD is not set
@@ -447,6 +474,7 @@ CONFIG_NETDEVICES=y
447# 474#
448# CONFIG_WLAN_PRE80211 is not set 475# CONFIG_WLAN_PRE80211 is not set
449# CONFIG_WLAN_80211 is not set 476# CONFIG_WLAN_80211 is not set
477# CONFIG_IWLWIFI_LEDS is not set
450# CONFIG_WAN is not set 478# CONFIG_WAN is not set
451CONFIG_PPP=m 479CONFIG_PPP=m
452# CONFIG_PPP_MULTILINK is not set 480# CONFIG_PPP_MULTILINK is not set
@@ -460,7 +488,6 @@ CONFIG_PPP_BSDCOMP=m
460# CONFIG_PPPOL2TP is not set 488# CONFIG_PPPOL2TP is not set
461# CONFIG_SLIP is not set 489# CONFIG_SLIP is not set
462CONFIG_SLHC=m 490CONFIG_SLHC=m
463# CONFIG_SHAPER is not set
464# CONFIG_NETCONSOLE is not set 491# CONFIG_NETCONSOLE is not set
465# CONFIG_NETPOLL is not set 492# CONFIG_NETPOLL is not set
466# CONFIG_NET_POLL_CONTROLLER is not set 493# CONFIG_NET_POLL_CONTROLLER is not set
@@ -516,6 +543,7 @@ CONFIG_MOUSE_GPIO=m
516# Character devices 543# Character devices
517# 544#
518# CONFIG_VT is not set 545# CONFIG_VT is not set
546# CONFIG_DEVKMEM is not set
519# CONFIG_SERIAL_NONSTANDARD is not set 547# CONFIG_SERIAL_NONSTANDARD is not set
520 548
521# 549#
@@ -528,6 +556,7 @@ CONFIG_MOUSE_GPIO=m
528# 556#
529CONFIG_SERIAL_ATMEL=y 557CONFIG_SERIAL_ATMEL=y
530CONFIG_SERIAL_ATMEL_CONSOLE=y 558CONFIG_SERIAL_ATMEL_CONSOLE=y
559CONFIG_SERIAL_ATMEL_PDC=y
531# CONFIG_SERIAL_ATMEL_TTYAT is not set 560# CONFIG_SERIAL_ATMEL_TTYAT is not set
532CONFIG_SERIAL_CORE=y 561CONFIG_SERIAL_CORE=y
533CONFIG_SERIAL_CORE_CONSOLE=y 562CONFIG_SERIAL_CORE_CONSOLE=y
@@ -535,21 +564,13 @@ CONFIG_UNIX98_PTYS=y
535# CONFIG_LEGACY_PTYS is not set 564# CONFIG_LEGACY_PTYS is not set
536# CONFIG_IPMI_HANDLER is not set 565# CONFIG_IPMI_HANDLER is not set
537# CONFIG_HW_RANDOM is not set 566# CONFIG_HW_RANDOM is not set
538# CONFIG_RTC is not set
539# CONFIG_GEN_RTC is not set
540# CONFIG_R3964 is not set 567# CONFIG_R3964 is not set
541# CONFIG_RAW_DRIVER is not set 568# CONFIG_RAW_DRIVER is not set
542# CONFIG_TCG_TPM is not set 569# CONFIG_TCG_TPM is not set
543CONFIG_I2C=m 570CONFIG_I2C=m
544CONFIG_I2C_BOARDINFO=y 571CONFIG_I2C_BOARDINFO=y
545CONFIG_I2C_CHARDEV=m 572CONFIG_I2C_CHARDEV=m
546
547#
548# I2C Algorithms
549#
550CONFIG_I2C_ALGOBIT=m 573CONFIG_I2C_ALGOBIT=m
551# CONFIG_I2C_ALGOPCF is not set
552# CONFIG_I2C_ALGOPCA is not set
553 574
554# 575#
555# I2C Hardware Bus support 576# I2C Hardware Bus support
@@ -560,27 +581,23 @@ CONFIG_I2C_GPIO=m
560# CONFIG_I2C_SIMTEC is not set 581# CONFIG_I2C_SIMTEC is not set
561# CONFIG_I2C_TAOS_EVM is not set 582# CONFIG_I2C_TAOS_EVM is not set
562# CONFIG_I2C_STUB is not set 583# CONFIG_I2C_STUB is not set
584# CONFIG_I2C_PCA_PLATFORM is not set
563 585
564# 586#
565# Miscellaneous I2C Chip support 587# Miscellaneous I2C Chip support
566# 588#
567# CONFIG_SENSORS_DS1337 is not set
568# CONFIG_SENSORS_DS1374 is not set
569# CONFIG_DS1682 is not set 589# CONFIG_DS1682 is not set
570# CONFIG_SENSORS_EEPROM is not set 590# CONFIG_SENSORS_EEPROM is not set
571# CONFIG_SENSORS_PCF8574 is not set 591# CONFIG_SENSORS_PCF8574 is not set
572# CONFIG_SENSORS_PCA9539 is not set 592# CONFIG_PCF8575 is not set
573# CONFIG_SENSORS_PCF8591 is not set 593# CONFIG_SENSORS_PCF8591 is not set
594# CONFIG_TPS65010 is not set
574# CONFIG_SENSORS_MAX6875 is not set 595# CONFIG_SENSORS_MAX6875 is not set
575# CONFIG_SENSORS_TSL2550 is not set 596# CONFIG_SENSORS_TSL2550 is not set
576# CONFIG_I2C_DEBUG_CORE is not set 597# CONFIG_I2C_DEBUG_CORE is not set
577# CONFIG_I2C_DEBUG_ALGO is not set 598# CONFIG_I2C_DEBUG_ALGO is not set
578# CONFIG_I2C_DEBUG_BUS is not set 599# CONFIG_I2C_DEBUG_BUS is not set
579# CONFIG_I2C_DEBUG_CHIP is not set 600# CONFIG_I2C_DEBUG_CHIP is not set
580
581#
582# SPI support
583#
584CONFIG_SPI=y 601CONFIG_SPI=y
585# CONFIG_SPI_DEBUG is not set 602# CONFIG_SPI_DEBUG is not set
586CONFIG_SPI_MASTER=y 603CONFIG_SPI_MASTER=y
@@ -597,9 +614,27 @@ CONFIG_SPI_ATMEL=y
597# CONFIG_SPI_AT25 is not set 614# CONFIG_SPI_AT25 is not set
598CONFIG_SPI_SPIDEV=m 615CONFIG_SPI_SPIDEV=m
599# CONFIG_SPI_TLE62X0 is not set 616# CONFIG_SPI_TLE62X0 is not set
617CONFIG_HAVE_GPIO_LIB=y
618
619#
620# GPIO Support
621#
622# CONFIG_DEBUG_GPIO is not set
623
624#
625# I2C GPIO expanders:
626#
627# CONFIG_GPIO_PCA953X is not set
628# CONFIG_GPIO_PCF857X is not set
629
630#
631# SPI GPIO expanders:
632#
633# CONFIG_GPIO_MCP23S08 is not set
600# CONFIG_W1 is not set 634# CONFIG_W1 is not set
601# CONFIG_POWER_SUPPLY is not set 635# CONFIG_POWER_SUPPLY is not set
602# CONFIG_HWMON is not set 636# CONFIG_HWMON is not set
637# CONFIG_THERMAL is not set
603CONFIG_WATCHDOG=y 638CONFIG_WATCHDOG=y
604# CONFIG_WATCHDOG_NOWAYOUT is not set 639# CONFIG_WATCHDOG_NOWAYOUT is not set
605 640
@@ -619,12 +654,22 @@ CONFIG_SSB_POSSIBLE=y
619# Multifunction device drivers 654# Multifunction device drivers
620# 655#
621# CONFIG_MFD_SM501 is not set 656# CONFIG_MFD_SM501 is not set
657# CONFIG_HTC_PASIC3 is not set
622 658
623# 659#
624# Multimedia devices 660# Multimedia devices
625# 661#
662
663#
664# Multimedia core support
665#
626# CONFIG_VIDEO_DEV is not set 666# CONFIG_VIDEO_DEV is not set
627# CONFIG_DVB_CORE is not set 667# CONFIG_DVB_CORE is not set
668# CONFIG_VIDEO_MEDIA is not set
669
670#
671# Multimedia drivers
672#
628# CONFIG_DAB is not set 673# CONFIG_DAB is not set
629 674
630# 675#
@@ -682,7 +727,11 @@ CONFIG_SND_AT73C213_TARGET_BITRATE=48000
682# CONFIG_SND_SOC is not set 727# CONFIG_SND_SOC is not set
683 728
684# 729#
685# SoC Audio support for SuperH 730# ALSA SoC audio for Freescale SOCs
731#
732
733#
734# SoC Audio for the Texas Instruments OMAP
686# 735#
687 736
688# 737#
@@ -694,14 +743,12 @@ CONFIG_USB_SUPPORT=y
694# CONFIG_USB_ARCH_HAS_HCD is not set 743# CONFIG_USB_ARCH_HAS_HCD is not set
695# CONFIG_USB_ARCH_HAS_OHCI is not set 744# CONFIG_USB_ARCH_HAS_OHCI is not set
696# CONFIG_USB_ARCH_HAS_EHCI is not set 745# CONFIG_USB_ARCH_HAS_EHCI is not set
746# CONFIG_USB_OTG_WHITELIST is not set
747# CONFIG_USB_OTG_BLACKLIST_HUB is not set
697 748
698# 749#
699# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 750# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
700# 751#
701
702#
703# USB Gadget Support
704#
705CONFIG_USB_GADGET=y 752CONFIG_USB_GADGET=y
706# CONFIG_USB_GADGET_DEBUG is not set 753# CONFIG_USB_GADGET_DEBUG is not set
707# CONFIG_USB_GADGET_DEBUG_FILES is not set 754# CONFIG_USB_GADGET_DEBUG_FILES is not set
@@ -714,6 +761,7 @@ CONFIG_USB_ATMEL_USBA=y
714# CONFIG_USB_GADGET_NET2280 is not set 761# CONFIG_USB_GADGET_NET2280 is not set
715# CONFIG_USB_GADGET_PXA2XX is not set 762# CONFIG_USB_GADGET_PXA2XX is not set
716# CONFIG_USB_GADGET_M66592 is not set 763# CONFIG_USB_GADGET_M66592 is not set
764# CONFIG_USB_GADGET_PXA27X is not set
717# CONFIG_USB_GADGET_GOKU is not set 765# CONFIG_USB_GADGET_GOKU is not set
718# CONFIG_USB_GADGET_LH7A40X is not set 766# CONFIG_USB_GADGET_LH7A40X is not set
719# CONFIG_USB_GADGET_OMAP is not set 767# CONFIG_USB_GADGET_OMAP is not set
@@ -729,6 +777,7 @@ CONFIG_USB_FILE_STORAGE=m
729# CONFIG_USB_FILE_STORAGE_TEST is not set 777# CONFIG_USB_FILE_STORAGE_TEST is not set
730CONFIG_USB_G_SERIAL=m 778CONFIG_USB_G_SERIAL=m
731# CONFIG_USB_MIDI_GADGET is not set 779# CONFIG_USB_MIDI_GADGET is not set
780# CONFIG_USB_G_PRINTER is not set
732CONFIG_MMC=m 781CONFIG_MMC=m
733# CONFIG_MMC_DEBUG is not set 782# CONFIG_MMC_DEBUG is not set
734# CONFIG_MMC_UNSAFE_RESUME is not set 783# CONFIG_MMC_UNSAFE_RESUME is not set
@@ -739,17 +788,20 @@ CONFIG_MMC=m
739CONFIG_MMC_BLOCK=m 788CONFIG_MMC_BLOCK=m
740# CONFIG_MMC_BLOCK_BOUNCE is not set 789# CONFIG_MMC_BLOCK_BOUNCE is not set
741# CONFIG_SDIO_UART is not set 790# CONFIG_SDIO_UART is not set
791# CONFIG_MMC_TEST is not set
742 792
743# 793#
744# MMC/SD Host Controller Drivers 794# MMC/SD Host Controller Drivers
745# 795#
746CONFIG_MMC_SPI=m 796CONFIG_MMC_SPI=m
797# CONFIG_MEMSTICK is not set
747CONFIG_NEW_LEDS=y 798CONFIG_NEW_LEDS=y
748CONFIG_LEDS_CLASS=y 799CONFIG_LEDS_CLASS=y
749 800
750# 801#
751# LED drivers 802# LED drivers
752# 803#
804CONFIG_LEDS_ATMEL_PWM=m
753CONFIG_LEDS_GPIO=y 805CONFIG_LEDS_GPIO=y
754 806
755# 807#
@@ -758,6 +810,8 @@ CONFIG_LEDS_GPIO=y
758CONFIG_LEDS_TRIGGERS=y 810CONFIG_LEDS_TRIGGERS=y
759CONFIG_LEDS_TRIGGER_TIMER=y 811CONFIG_LEDS_TRIGGER_TIMER=y
760CONFIG_LEDS_TRIGGER_HEARTBEAT=y 812CONFIG_LEDS_TRIGGER_HEARTBEAT=y
813CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
814# CONFIG_ACCESSIBILITY is not set
761CONFIG_RTC_LIB=y 815CONFIG_RTC_LIB=y
762CONFIG_RTC_CLASS=y 816CONFIG_RTC_CLASS=y
763CONFIG_RTC_HCTOSYS=y 817CONFIG_RTC_HCTOSYS=y
@@ -786,19 +840,22 @@ CONFIG_RTC_INTF_DEV=y
786# CONFIG_RTC_DRV_PCF8563 is not set 840# CONFIG_RTC_DRV_PCF8563 is not set
787# CONFIG_RTC_DRV_PCF8583 is not set 841# CONFIG_RTC_DRV_PCF8583 is not set
788# CONFIG_RTC_DRV_M41T80 is not set 842# CONFIG_RTC_DRV_M41T80 is not set
843# CONFIG_RTC_DRV_S35390A is not set
789 844
790# 845#
791# SPI RTC drivers 846# SPI RTC drivers
792# 847#
793# CONFIG_RTC_DRV_RS5C348 is not set
794# CONFIG_RTC_DRV_MAX6902 is not set 848# CONFIG_RTC_DRV_MAX6902 is not set
849# CONFIG_RTC_DRV_R9701 is not set
850# CONFIG_RTC_DRV_RS5C348 is not set
795 851
796# 852#
797# Platform RTC drivers 853# Platform RTC drivers
798# 854#
855# CONFIG_RTC_DRV_DS1511 is not set
799# CONFIG_RTC_DRV_DS1553 is not set 856# CONFIG_RTC_DRV_DS1553 is not set
800# CONFIG_RTC_DRV_STK17TA8 is not set
801# CONFIG_RTC_DRV_DS1742 is not set 857# CONFIG_RTC_DRV_DS1742 is not set
858# CONFIG_RTC_DRV_STK17TA8 is not set
802# CONFIG_RTC_DRV_M48T86 is not set 859# CONFIG_RTC_DRV_M48T86 is not set
803# CONFIG_RTC_DRV_M48T59 is not set 860# CONFIG_RTC_DRV_M48T59 is not set
804# CONFIG_RTC_DRV_V3020 is not set 861# CONFIG_RTC_DRV_V3020 is not set
@@ -807,11 +864,8 @@ CONFIG_RTC_INTF_DEV=y
807# on-CPU RTC drivers 864# on-CPU RTC drivers
808# 865#
809CONFIG_RTC_DRV_AT32AP700X=y 866CONFIG_RTC_DRV_AT32AP700X=y
810
811#
812# Userspace I/O
813#
814CONFIG_UIO=m 867CONFIG_UIO=m
868# CONFIG_UIO_SMX is not set
815 869
816# 870#
817# File systems 871# File systems
@@ -828,14 +882,11 @@ CONFIG_JBD=m
828# CONFIG_JFS_FS is not set 882# CONFIG_JFS_FS is not set
829# CONFIG_FS_POSIX_ACL is not set 883# CONFIG_FS_POSIX_ACL is not set
830# CONFIG_XFS_FS is not set 884# CONFIG_XFS_FS is not set
831# CONFIG_GFS2_FS is not set
832# CONFIG_OCFS2_FS is not set 885# CONFIG_OCFS2_FS is not set
833# CONFIG_MINIX_FS is not set 886# CONFIG_DNOTIFY is not set
834# CONFIG_ROMFS_FS is not set
835CONFIG_INOTIFY=y 887CONFIG_INOTIFY=y
836CONFIG_INOTIFY_USER=y 888CONFIG_INOTIFY_USER=y
837# CONFIG_QUOTA is not set 889# CONFIG_QUOTA is not set
838# CONFIG_DNOTIFY is not set
839# CONFIG_AUTOFS_FS is not set 890# CONFIG_AUTOFS_FS is not set
840# CONFIG_AUTOFS4_FS is not set 891# CONFIG_AUTOFS4_FS is not set
841CONFIG_FUSE_FS=m 892CONFIG_FUSE_FS=m
@@ -891,8 +942,10 @@ CONFIG_JFFS2_RTIME=y
891# CONFIG_JFFS2_RUBIN is not set 942# CONFIG_JFFS2_RUBIN is not set
892# CONFIG_CRAMFS is not set 943# CONFIG_CRAMFS is not set
893# CONFIG_VXFS_FS is not set 944# CONFIG_VXFS_FS is not set
945# CONFIG_MINIX_FS is not set
894# CONFIG_HPFS_FS is not set 946# CONFIG_HPFS_FS is not set
895# CONFIG_QNX4FS_FS is not set 947# CONFIG_QNX4FS_FS is not set
948# CONFIG_ROMFS_FS is not set
896# CONFIG_SYSV_FS is not set 949# CONFIG_SYSV_FS is not set
897# CONFIG_UFS_FS is not set 950# CONFIG_UFS_FS is not set
898# CONFIG_NETWORK_FILESYSTEMS is not set 951# CONFIG_NETWORK_FILESYSTEMS is not set
@@ -943,11 +996,6 @@ CONFIG_NLS_ISO8859_1=m
943# CONFIG_NLS_KOI8_U is not set 996# CONFIG_NLS_KOI8_U is not set
944CONFIG_NLS_UTF8=m 997CONFIG_NLS_UTF8=m
945# CONFIG_DLM is not set 998# CONFIG_DLM is not set
946CONFIG_INSTRUMENTATION=y
947CONFIG_PROFILING=y
948CONFIG_OPROFILE=m
949CONFIG_KPROBES=y
950# CONFIG_MARKERS is not set
951 999
952# 1000#
953# Kernel hacking 1001# Kernel hacking
@@ -955,6 +1003,7 @@ CONFIG_KPROBES=y
955# CONFIG_PRINTK_TIME is not set 1003# CONFIG_PRINTK_TIME is not set
956CONFIG_ENABLE_WARN_DEPRECATED=y 1004CONFIG_ENABLE_WARN_DEPRECATED=y
957CONFIG_ENABLE_MUST_CHECK=y 1005CONFIG_ENABLE_MUST_CHECK=y
1006CONFIG_FRAME_WARN=1024
958CONFIG_MAGIC_SYSRQ=y 1007CONFIG_MAGIC_SYSRQ=y
959# CONFIG_UNUSED_SYMBOLS is not set 1008# CONFIG_UNUSED_SYMBOLS is not set
960CONFIG_DEBUG_FS=y 1009CONFIG_DEBUG_FS=y
@@ -965,6 +1014,7 @@ CONFIG_DETECT_SOFTLOCKUP=y
965CONFIG_SCHED_DEBUG=y 1014CONFIG_SCHED_DEBUG=y
966# CONFIG_SCHEDSTATS is not set 1015# CONFIG_SCHEDSTATS is not set
967# CONFIG_TIMER_STATS is not set 1016# CONFIG_TIMER_STATS is not set
1017# CONFIG_DEBUG_OBJECTS is not set
968# CONFIG_DEBUG_RT_MUTEXES is not set 1018# CONFIG_DEBUG_RT_MUTEXES is not set
969# CONFIG_RT_MUTEX_TESTER is not set 1019# CONFIG_RT_MUTEX_TESTER is not set
970# CONFIG_DEBUG_SPINLOCK is not set 1020# CONFIG_DEBUG_SPINLOCK is not set
@@ -978,12 +1028,14 @@ CONFIG_SCHED_DEBUG=y
978CONFIG_DEBUG_BUGVERBOSE=y 1028CONFIG_DEBUG_BUGVERBOSE=y
979# CONFIG_DEBUG_INFO is not set 1029# CONFIG_DEBUG_INFO is not set
980# CONFIG_DEBUG_VM is not set 1030# CONFIG_DEBUG_VM is not set
1031# CONFIG_DEBUG_WRITECOUNT is not set
981# CONFIG_DEBUG_LIST is not set 1032# CONFIG_DEBUG_LIST is not set
982# CONFIG_DEBUG_SG is not set 1033# CONFIG_DEBUG_SG is not set
983CONFIG_FRAME_POINTER=y 1034CONFIG_FRAME_POINTER=y
984CONFIG_FORCED_INLINING=y
985# CONFIG_BOOT_PRINTK_DELAY is not set 1035# CONFIG_BOOT_PRINTK_DELAY is not set
986# CONFIG_RCU_TORTURE_TEST is not set 1036# CONFIG_RCU_TORTURE_TEST is not set
1037# CONFIG_KPROBES_SANITY_TEST is not set
1038# CONFIG_BACKTRACE_SELF_TEST is not set
987# CONFIG_LKDTM is not set 1039# CONFIG_LKDTM is not set
988# CONFIG_FAULT_INJECTION is not set 1040# CONFIG_FAULT_INJECTION is not set
989# CONFIG_SAMPLES is not set 1041# CONFIG_SAMPLES is not set
@@ -1000,6 +1052,8 @@ CONFIG_FORCED_INLINING=y
1000# Library routines 1052# Library routines
1001# 1053#
1002CONFIG_BITREVERSE=y 1054CONFIG_BITREVERSE=y
1055# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1056# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1003CONFIG_CRC_CCITT=m 1057CONFIG_CRC_CCITT=m
1004# CONFIG_CRC16 is not set 1058# CONFIG_CRC16 is not set
1005CONFIG_CRC_ITU_T=m 1059CONFIG_CRC_ITU_T=m
diff --git a/arch/avr32/configs/atstk1004_defconfig b/arch/avr32/configs/atstk1004_defconfig
index 634c52760349..a0912fb7c92e 100644
--- a/arch/avr32/configs/atstk1004_defconfig
+++ b/arch/avr32/configs/atstk1004_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.24-rc7 3# Linux kernel version: 2.6.26-rc3
4# Wed Jan 9 23:04:20 2008 4# Mon May 26 13:34:57 2008
5# 5#
6CONFIG_AVR32=y 6CONFIG_AVR32=y
7CONFIG_GENERIC_GPIO=y 7CONFIG_GENERIC_GPIO=y
@@ -13,10 +13,10 @@ CONFIG_HARDIRQS_SW_RESEND=y
13CONFIG_GENERIC_IRQ_PROBE=y 13CONFIG_GENERIC_IRQ_PROBE=y
14CONFIG_RWSEM_GENERIC_SPINLOCK=y 14CONFIG_RWSEM_GENERIC_SPINLOCK=y
15CONFIG_GENERIC_TIME=y 15CONFIG_GENERIC_TIME=y
16CONFIG_GENERIC_CLOCKEVENTS=y
16# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set 17# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
17# CONFIG_ARCH_HAS_ILOG2_U32 is not set 18# CONFIG_ARCH_HAS_ILOG2_U32 is not set
18# CONFIG_ARCH_HAS_ILOG2_U64 is not set 19# CONFIG_ARCH_HAS_ILOG2_U64 is not set
19CONFIG_ARCH_SUPPORTS_OPROFILE=y
20CONFIG_GENERIC_HWEIGHT=y 20CONFIG_GENERIC_HWEIGHT=y
21CONFIG_GENERIC_CALIBRATE_DELAY=y 21CONFIG_GENERIC_CALIBRATE_DELAY=y
22CONFIG_GENERIC_BUG=y 22CONFIG_GENERIC_BUG=y
@@ -34,15 +34,15 @@ CONFIG_LOCALVERSION=""
34# CONFIG_POSIX_MQUEUE is not set 34# CONFIG_POSIX_MQUEUE is not set
35# CONFIG_BSD_PROCESS_ACCT is not set 35# CONFIG_BSD_PROCESS_ACCT is not set
36# CONFIG_TASKSTATS is not set 36# CONFIG_TASKSTATS is not set
37# CONFIG_USER_NS is not set
38# CONFIG_PID_NS is not set
39# CONFIG_AUDIT is not set 37# CONFIG_AUDIT is not set
40# CONFIG_IKCONFIG is not set 38# CONFIG_IKCONFIG is not set
41CONFIG_LOG_BUF_SHIFT=14 39CONFIG_LOG_BUF_SHIFT=14
42# CONFIG_CGROUPS is not set 40# CONFIG_CGROUPS is not set
43# CONFIG_FAIR_GROUP_SCHED is not set 41# CONFIG_GROUP_SCHED is not set
44CONFIG_SYSFS_DEPRECATED=y 42CONFIG_SYSFS_DEPRECATED=y
43CONFIG_SYSFS_DEPRECATED_V2=y
45# CONFIG_RELAY is not set 44# CONFIG_RELAY is not set
45# CONFIG_NAMESPACES is not set
46# CONFIG_BLK_DEV_INITRD is not set 46# CONFIG_BLK_DEV_INITRD is not set
47CONFIG_CC_OPTIMIZE_FOR_SIZE=y 47CONFIG_CC_OPTIMIZE_FOR_SIZE=y
48CONFIG_SYSCTL=y 48CONFIG_SYSCTL=y
@@ -54,24 +54,38 @@ CONFIG_HOTPLUG=y
54CONFIG_PRINTK=y 54CONFIG_PRINTK=y
55CONFIG_BUG=y 55CONFIG_BUG=y
56CONFIG_ELF_CORE=y 56CONFIG_ELF_CORE=y
57# CONFIG_COMPAT_BRK is not set
57# CONFIG_BASE_FULL is not set 58# CONFIG_BASE_FULL is not set
58# CONFIG_FUTEX is not set 59# CONFIG_FUTEX is not set
59# CONFIG_EPOLL is not set 60# CONFIG_EPOLL is not set
60# CONFIG_SIGNALFD is not set 61# CONFIG_SIGNALFD is not set
62# CONFIG_TIMERFD is not set
61# CONFIG_EVENTFD is not set 63# CONFIG_EVENTFD is not set
62CONFIG_SHMEM=y 64CONFIG_SHMEM=y
63CONFIG_VM_EVENT_COUNTERS=y 65CONFIG_VM_EVENT_COUNTERS=y
64# CONFIG_SLAB is not set 66# CONFIG_SLAB is not set
65# CONFIG_SLUB is not set 67# CONFIG_SLUB is not set
66CONFIG_SLOB=y 68CONFIG_SLOB=y
69# CONFIG_PROFILING is not set
70# CONFIG_MARKERS is not set
71CONFIG_HAVE_OPROFILE=y
72CONFIG_HAVE_KPROBES=y
73# CONFIG_HAVE_KRETPROBES is not set
74# CONFIG_HAVE_DMA_ATTRS is not set
75# CONFIG_PROC_PAGE_MONITOR is not set
67# CONFIG_TINY_SHMEM is not set 76# CONFIG_TINY_SHMEM is not set
68CONFIG_BASE_SMALL=1 77CONFIG_BASE_SMALL=1
69# CONFIG_MODULES is not set 78# CONFIG_MODULES is not set
70# CONFIG_BLOCK is not set 79# CONFIG_BLOCK is not set
80CONFIG_CLASSIC_RCU=y
71 81
72# 82#
73# System Type and features 83# System Type and features
74# 84#
85# CONFIG_TICK_ONESHOT is not set
86# CONFIG_NO_HZ is not set
87# CONFIG_HIGH_RES_TIMERS is not set
88CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
75CONFIG_SUBARCH_AVR32B=y 89CONFIG_SUBARCH_AVR32B=y
76CONFIG_MMU=y 90CONFIG_MMU=y
77CONFIG_PERFORMANCE_COUNTERS=y 91CONFIG_PERFORMANCE_COUNTERS=y
@@ -115,16 +129,19 @@ CONFIG_FLATMEM=y
115CONFIG_FLAT_NODE_MEM_MAP=y 129CONFIG_FLAT_NODE_MEM_MAP=y
116# CONFIG_SPARSEMEM_STATIC is not set 130# CONFIG_SPARSEMEM_STATIC is not set
117# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 131# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
132CONFIG_PAGEFLAGS_EXTENDED=y
118CONFIG_SPLIT_PTLOCK_CPUS=4 133CONFIG_SPLIT_PTLOCK_CPUS=4
119# CONFIG_RESOURCES_64BIT is not set 134# CONFIG_RESOURCES_64BIT is not set
120CONFIG_ZONE_DMA_FLAG=0 135CONFIG_ZONE_DMA_FLAG=0
121CONFIG_VIRT_TO_BUS=y 136CONFIG_VIRT_TO_BUS=y
122# CONFIG_OWNERSHIP_TRACE is not set 137# CONFIG_OWNERSHIP_TRACE is not set
138# CONFIG_NMI_DEBUGGING is not set
123# CONFIG_HZ_100 is not set 139# CONFIG_HZ_100 is not set
124CONFIG_HZ_250=y 140CONFIG_HZ_250=y
125# CONFIG_HZ_300 is not set 141# CONFIG_HZ_300 is not set
126# CONFIG_HZ_1000 is not set 142# CONFIG_HZ_1000 is not set
127CONFIG_HZ=250 143CONFIG_HZ=250
144# CONFIG_SCHED_HRTICK is not set
128CONFIG_CMDLINE="" 145CONFIG_CMDLINE=""
129 146
130# 147#
@@ -134,20 +151,7 @@ CONFIG_CMDLINE=""
134# 151#
135# CPU Frequency scaling 152# CPU Frequency scaling
136# 153#
137CONFIG_CPU_FREQ=y 154# CONFIG_CPU_FREQ is not set
138CONFIG_CPU_FREQ_TABLE=y
139# CONFIG_CPU_FREQ_DEBUG is not set
140# CONFIG_CPU_FREQ_STAT is not set
141CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
142# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
143# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
144# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
145CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
146# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
147CONFIG_CPU_FREQ_GOV_USERSPACE=y
148CONFIG_CPU_FREQ_GOV_ONDEMAND=y
149# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
150CONFIG_CPU_FREQ_AT32AP=y
151 155
152# 156#
153# Bus options 157# Bus options
@@ -197,8 +201,6 @@ CONFIG_TCP_CONG_CUBIC=y
197CONFIG_DEFAULT_TCP_CONG="cubic" 201CONFIG_DEFAULT_TCP_CONG="cubic"
198# CONFIG_TCP_MD5SIG is not set 202# CONFIG_TCP_MD5SIG is not set
199# CONFIG_IPV6 is not set 203# CONFIG_IPV6 is not set
200# CONFIG_INET6_XFRM_TUNNEL is not set
201# CONFIG_INET6_TUNNEL is not set
202# CONFIG_NETWORK_SECMARK is not set 204# CONFIG_NETWORK_SECMARK is not set
203# CONFIG_NETFILTER is not set 205# CONFIG_NETFILTER is not set
204# CONFIG_IP_DCCP is not set 206# CONFIG_IP_DCCP is not set
@@ -222,6 +224,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
222# 224#
223# CONFIG_NET_PKTGEN is not set 225# CONFIG_NET_PKTGEN is not set
224# CONFIG_HAMRADIO is not set 226# CONFIG_HAMRADIO is not set
227# CONFIG_CAN is not set
225# CONFIG_IRDA is not set 228# CONFIG_IRDA is not set
226# CONFIG_BT is not set 229# CONFIG_BT is not set
227# CONFIG_AF_RXRPC is not set 230# CONFIG_AF_RXRPC is not set
@@ -255,6 +258,7 @@ CONFIG_MTD=y
255CONFIG_MTD_PARTITIONS=y 258CONFIG_MTD_PARTITIONS=y
256# CONFIG_MTD_REDBOOT_PARTS is not set 259# CONFIG_MTD_REDBOOT_PARTS is not set
257CONFIG_MTD_CMDLINE_PARTS=y 260CONFIG_MTD_CMDLINE_PARTS=y
261# CONFIG_MTD_AR7_PARTS is not set
258 262
259# 263#
260# User Modules And Translation Layers 264# User Modules And Translation Layers
@@ -321,6 +325,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
321# CONFIG_MTD_UBI is not set 325# CONFIG_MTD_UBI is not set
322# CONFIG_PARPORT is not set 326# CONFIG_PARPORT is not set
323# CONFIG_MISC_DEVICES is not set 327# CONFIG_MISC_DEVICES is not set
328# CONFIG_HAVE_IDE is not set
324 329
325# 330#
326# SCSI device support 331# SCSI device support
@@ -346,6 +351,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
346# Character devices 351# Character devices
347# 352#
348# CONFIG_VT is not set 353# CONFIG_VT is not set
354# CONFIG_DEVKMEM is not set
349# CONFIG_SERIAL_NONSTANDARD is not set 355# CONFIG_SERIAL_NONSTANDARD is not set
350 356
351# 357#
@@ -358,6 +364,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
358# 364#
359CONFIG_SERIAL_ATMEL=y 365CONFIG_SERIAL_ATMEL=y
360CONFIG_SERIAL_ATMEL_CONSOLE=y 366CONFIG_SERIAL_ATMEL_CONSOLE=y
367# CONFIG_SERIAL_ATMEL_PDC is not set
361# CONFIG_SERIAL_ATMEL_TTYAT is not set 368# CONFIG_SERIAL_ATMEL_TTYAT is not set
362CONFIG_SERIAL_CORE=y 369CONFIG_SERIAL_CORE=y
363CONFIG_SERIAL_CORE_CONSOLE=y 370CONFIG_SERIAL_CORE_CONSOLE=y
@@ -365,15 +372,9 @@ CONFIG_UNIX98_PTYS=y
365# CONFIG_LEGACY_PTYS is not set 372# CONFIG_LEGACY_PTYS is not set
366# CONFIG_IPMI_HANDLER is not set 373# CONFIG_IPMI_HANDLER is not set
367# CONFIG_HW_RANDOM is not set 374# CONFIG_HW_RANDOM is not set
368# CONFIG_RTC is not set
369# CONFIG_GEN_RTC is not set
370# CONFIG_R3964 is not set 375# CONFIG_R3964 is not set
371# CONFIG_TCG_TPM is not set 376# CONFIG_TCG_TPM is not set
372# CONFIG_I2C is not set 377# CONFIG_I2C is not set
373
374#
375# SPI support
376#
377CONFIG_SPI=y 378CONFIG_SPI=y
378CONFIG_SPI_MASTER=y 379CONFIG_SPI_MASTER=y
379 380
@@ -389,9 +390,24 @@ CONFIG_SPI_ATMEL=y
389# CONFIG_SPI_AT25 is not set 390# CONFIG_SPI_AT25 is not set
390# CONFIG_SPI_SPIDEV is not set 391# CONFIG_SPI_SPIDEV is not set
391# CONFIG_SPI_TLE62X0 is not set 392# CONFIG_SPI_TLE62X0 is not set
393CONFIG_HAVE_GPIO_LIB=y
394
395#
396# GPIO Support
397#
398
399#
400# I2C GPIO expanders:
401#
402
403#
404# SPI GPIO expanders:
405#
406# CONFIG_GPIO_MCP23S08 is not set
392# CONFIG_W1 is not set 407# CONFIG_W1 is not set
393# CONFIG_POWER_SUPPLY is not set 408# CONFIG_POWER_SUPPLY is not set
394# CONFIG_HWMON is not set 409# CONFIG_HWMON is not set
410# CONFIG_THERMAL is not set
395CONFIG_WATCHDOG=y 411CONFIG_WATCHDOG=y
396# CONFIG_WATCHDOG_NOWAYOUT is not set 412# CONFIG_WATCHDOG_NOWAYOUT is not set
397 413
@@ -411,12 +427,22 @@ CONFIG_SSB_POSSIBLE=y
411# Multifunction device drivers 427# Multifunction device drivers
412# 428#
413# CONFIG_MFD_SM501 is not set 429# CONFIG_MFD_SM501 is not set
430# CONFIG_HTC_PASIC3 is not set
414 431
415# 432#
416# Multimedia devices 433# Multimedia devices
417# 434#
435
436#
437# Multimedia core support
438#
418# CONFIG_VIDEO_DEV is not set 439# CONFIG_VIDEO_DEV is not set
419# CONFIG_DVB_CORE is not set 440# CONFIG_DVB_CORE is not set
441# CONFIG_VIDEO_MEDIA is not set
442
443#
444# Multimedia drivers
445#
420# CONFIG_DAB is not set 446# CONFIG_DAB is not set
421 447
422# 448#
@@ -434,8 +460,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
434# CONFIG_FB_SYS_FILLRECT is not set 460# CONFIG_FB_SYS_FILLRECT is not set
435# CONFIG_FB_SYS_COPYAREA is not set 461# CONFIG_FB_SYS_COPYAREA is not set
436# CONFIG_FB_SYS_IMAGEBLIT is not set 462# CONFIG_FB_SYS_IMAGEBLIT is not set
463# CONFIG_FB_FOREIGN_ENDIAN is not set
437# CONFIG_FB_SYS_FOPS is not set 464# CONFIG_FB_SYS_FOPS is not set
438CONFIG_FB_DEFERRED_IO=y
439# CONFIG_FB_SVGALIB is not set 465# CONFIG_FB_SVGALIB is not set
440# CONFIG_FB_MACMODES is not set 466# CONFIG_FB_MACMODES is not set
441# CONFIG_FB_BACKLIGHT is not set 467# CONFIG_FB_BACKLIGHT is not set
@@ -467,14 +493,12 @@ CONFIG_USB_SUPPORT=y
467# CONFIG_USB_ARCH_HAS_HCD is not set 493# CONFIG_USB_ARCH_HAS_HCD is not set
468# CONFIG_USB_ARCH_HAS_OHCI is not set 494# CONFIG_USB_ARCH_HAS_OHCI is not set
469# CONFIG_USB_ARCH_HAS_EHCI is not set 495# CONFIG_USB_ARCH_HAS_EHCI is not set
496# CONFIG_USB_OTG_WHITELIST is not set
497# CONFIG_USB_OTG_BLACKLIST_HUB is not set
470 498
471# 499#
472# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 500# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
473# 501#
474
475#
476# USB Gadget Support
477#
478CONFIG_USB_GADGET=y 502CONFIG_USB_GADGET=y
479# CONFIG_USB_GADGET_DEBUG_FILES is not set 503# CONFIG_USB_GADGET_DEBUG_FILES is not set
480CONFIG_USB_GADGET_SELECTED=y 504CONFIG_USB_GADGET_SELECTED=y
@@ -485,6 +509,7 @@ CONFIG_USB_ATMEL_USBA=y
485# CONFIG_USB_GADGET_NET2280 is not set 509# CONFIG_USB_GADGET_NET2280 is not set
486# CONFIG_USB_GADGET_PXA2XX is not set 510# CONFIG_USB_GADGET_PXA2XX is not set
487# CONFIG_USB_GADGET_M66592 is not set 511# CONFIG_USB_GADGET_M66592 is not set
512# CONFIG_USB_GADGET_PXA27X is not set
488# CONFIG_USB_GADGET_GOKU is not set 513# CONFIG_USB_GADGET_GOKU is not set
489# CONFIG_USB_GADGET_LH7A40X is not set 514# CONFIG_USB_GADGET_LH7A40X is not set
490# CONFIG_USB_GADGET_OMAP is not set 515# CONFIG_USB_GADGET_OMAP is not set
@@ -499,8 +524,11 @@ CONFIG_USB_ETH=y
499# CONFIG_USB_FILE_STORAGE is not set 524# CONFIG_USB_FILE_STORAGE is not set
500# CONFIG_USB_G_SERIAL is not set 525# CONFIG_USB_G_SERIAL is not set
501# CONFIG_USB_MIDI_GADGET is not set 526# CONFIG_USB_MIDI_GADGET is not set
527# CONFIG_USB_G_PRINTER is not set
502# CONFIG_MMC is not set 528# CONFIG_MMC is not set
529# CONFIG_MEMSTICK is not set
503# CONFIG_NEW_LEDS is not set 530# CONFIG_NEW_LEDS is not set
531# CONFIG_ACCESSIBILITY is not set
504CONFIG_RTC_LIB=y 532CONFIG_RTC_LIB=y
505CONFIG_RTC_CLASS=y 533CONFIG_RTC_CLASS=y
506CONFIG_RTC_HCTOSYS=y 534CONFIG_RTC_HCTOSYS=y
@@ -519,15 +547,17 @@ CONFIG_RTC_INTF_DEV=y
519# 547#
520# SPI RTC drivers 548# SPI RTC drivers
521# 549#
522# CONFIG_RTC_DRV_RS5C348 is not set
523# CONFIG_RTC_DRV_MAX6902 is not set 550# CONFIG_RTC_DRV_MAX6902 is not set
551# CONFIG_RTC_DRV_R9701 is not set
552# CONFIG_RTC_DRV_RS5C348 is not set
524 553
525# 554#
526# Platform RTC drivers 555# Platform RTC drivers
527# 556#
557# CONFIG_RTC_DRV_DS1511 is not set
528# CONFIG_RTC_DRV_DS1553 is not set 558# CONFIG_RTC_DRV_DS1553 is not set
529# CONFIG_RTC_DRV_STK17TA8 is not set
530# CONFIG_RTC_DRV_DS1742 is not set 559# CONFIG_RTC_DRV_DS1742 is not set
560# CONFIG_RTC_DRV_STK17TA8 is not set
531# CONFIG_RTC_DRV_M48T86 is not set 561# CONFIG_RTC_DRV_M48T86 is not set
532# CONFIG_RTC_DRV_M48T59 is not set 562# CONFIG_RTC_DRV_M48T59 is not set
533# CONFIG_RTC_DRV_V3020 is not set 563# CONFIG_RTC_DRV_V3020 is not set
@@ -536,18 +566,14 @@ CONFIG_RTC_INTF_DEV=y
536# on-CPU RTC drivers 566# on-CPU RTC drivers
537# 567#
538CONFIG_RTC_DRV_AT32AP700X=y 568CONFIG_RTC_DRV_AT32AP700X=y
539
540#
541# Userspace I/O
542#
543# CONFIG_UIO is not set 569# CONFIG_UIO is not set
544 570
545# 571#
546# File systems 572# File systems
547# 573#
574# CONFIG_DNOTIFY is not set
548# CONFIG_INOTIFY is not set 575# CONFIG_INOTIFY is not set
549# CONFIG_QUOTA is not set 576# CONFIG_QUOTA is not set
550# CONFIG_DNOTIFY is not set
551# CONFIG_AUTOFS_FS is not set 577# CONFIG_AUTOFS_FS is not set
552# CONFIG_AUTOFS4_FS is not set 578# CONFIG_AUTOFS4_FS is not set
553# CONFIG_FUSE_FS is not set 579# CONFIG_FUSE_FS is not set
@@ -580,7 +606,6 @@ CONFIG_JFFS2_RTIME=y
580# CONFIG_NETWORK_FILESYSTEMS is not set 606# CONFIG_NETWORK_FILESYSTEMS is not set
581# CONFIG_NLS is not set 607# CONFIG_NLS is not set
582# CONFIG_DLM is not set 608# CONFIG_DLM is not set
583# CONFIG_INSTRUMENTATION is not set
584 609
585# 610#
586# Kernel hacking 611# Kernel hacking
@@ -588,6 +613,7 @@ CONFIG_JFFS2_RTIME=y
588# CONFIG_PRINTK_TIME is not set 613# CONFIG_PRINTK_TIME is not set
589CONFIG_ENABLE_WARN_DEPRECATED=y 614CONFIG_ENABLE_WARN_DEPRECATED=y
590CONFIG_ENABLE_MUST_CHECK=y 615CONFIG_ENABLE_MUST_CHECK=y
616CONFIG_FRAME_WARN=1024
591CONFIG_MAGIC_SYSRQ=y 617CONFIG_MAGIC_SYSRQ=y
592# CONFIG_UNUSED_SYMBOLS is not set 618# CONFIG_UNUSED_SYMBOLS is not set
593# CONFIG_DEBUG_FS is not set 619# CONFIG_DEBUG_FS is not set
@@ -608,6 +634,8 @@ CONFIG_MAGIC_SYSRQ=y
608# Library routines 634# Library routines
609# 635#
610CONFIG_BITREVERSE=y 636CONFIG_BITREVERSE=y
637# CONFIG_GENERIC_FIND_FIRST_BIT is not set
638# CONFIG_GENERIC_FIND_NEXT_BIT is not set
611# CONFIG_CRC_CCITT is not set 639# CONFIG_CRC_CCITT is not set
612# CONFIG_CRC16 is not set 640# CONFIG_CRC16 is not set
613# CONFIG_CRC_ITU_T is not set 641# CONFIG_CRC_ITU_T is not set
diff --git a/arch/avr32/kernel/avr32_ksyms.c b/arch/avr32/kernel/avr32_ksyms.c
index 80f55f8dbf1c..84a7d44edc67 100644
--- a/arch/avr32/kernel/avr32_ksyms.c
+++ b/arch/avr32/kernel/avr32_ksyms.c
@@ -29,7 +29,9 @@ EXPORT_SYMBOL(__avr32_asr64);
29 */ 29 */
30EXPORT_SYMBOL(memset); 30EXPORT_SYMBOL(memset);
31EXPORT_SYMBOL(memcpy); 31EXPORT_SYMBOL(memcpy);
32
32EXPORT_SYMBOL(clear_page); 33EXPORT_SYMBOL(clear_page);
34EXPORT_SYMBOL(copy_page);
33 35
34/* 36/*
35 * Userspace access stuff. 37 * Userspace access stuff.
@@ -41,6 +43,8 @@ EXPORT_SYMBOL(strncpy_from_user);
41EXPORT_SYMBOL(__strncpy_from_user); 43EXPORT_SYMBOL(__strncpy_from_user);
42EXPORT_SYMBOL(clear_user); 44EXPORT_SYMBOL(clear_user);
43EXPORT_SYMBOL(__clear_user); 45EXPORT_SYMBOL(__clear_user);
46EXPORT_SYMBOL(strnlen_user);
47
44EXPORT_SYMBOL(csum_partial); 48EXPORT_SYMBOL(csum_partial);
45EXPORT_SYMBOL(csum_partial_copy_generic); 49EXPORT_SYMBOL(csum_partial_copy_generic);
46 50
diff --git a/arch/avr32/kernel/init_task.c b/arch/avr32/kernel/init_task.c
index effcacf9d1a2..44058469c6ec 100644
--- a/arch/avr32/kernel/init_task.c
+++ b/arch/avr32/kernel/init_task.c
@@ -14,7 +14,6 @@
14#include <asm/pgtable.h> 14#include <asm/pgtable.h>
15 15
16static struct fs_struct init_fs = INIT_FS; 16static struct fs_struct init_fs = INIT_FS;
17static struct files_struct init_files = INIT_FILES;
18static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 17static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
19static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 18static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
20struct mm_struct init_mm = INIT_MM(init_mm); 19struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/avr32/mach-at32ap/cpufreq.c b/arch/avr32/mach-at32ap/cpufreq.c
index 235524b79193..5dd8d25428bf 100644
--- a/arch/avr32/mach-at32ap/cpufreq.c
+++ b/arch/avr32/mach-at32ap/cpufreq.c
@@ -108,5 +108,4 @@ static int __init at32_cpufreq_init(void)
108{ 108{
109 return cpufreq_register_driver(&at32_driver); 109 return cpufreq_register_driver(&at32_driver);
110} 110}
111 111late_initcall(at32_cpufreq_init);
112arch_initcall(at32_cpufreq_init);
diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig
index fd5708523f2e..b87634e75f20 100644
--- a/arch/blackfin/Kconfig
+++ b/arch/blackfin/Kconfig
@@ -479,16 +479,6 @@ comment "Memory Setup"
479 479
480comment "Misc" 480comment "Misc"
481 481
482config ENET_FLASH_PIN
483 int "PF port/pin used for flash and ethernet sharing"
484 depends on (BFIN533_STAMP)
485 default 0
486 help
487 PF port/pin used for flash and ethernet sharing to allow other PF
488 pins to be used on other platforms without having to touch common
489 code.
490 For example: PF0 --> 0,PF1 --> 1,PF2 --> 2, etc.
491
492choice 482choice
493 prompt "Blackfin Exception Scratch Register" 483 prompt "Blackfin Exception Scratch Register"
494 default BFIN_SCRATCH_REG_RETN 484 default BFIN_SCRATCH_REG_RETN
@@ -695,6 +685,8 @@ choice
695 prompt "Uncached SDRAM region" 685 prompt "Uncached SDRAM region"
696 default DMA_UNCACHED_1M 686 default DMA_UNCACHED_1M
697 depends on BFIN_DMA_5XX 687 depends on BFIN_DMA_5XX
688config DMA_UNCACHED_4M
689 bool "Enable 4M DMA region"
698config DMA_UNCACHED_2M 690config DMA_UNCACHED_2M
699 bool "Enable 2M DMA region" 691 bool "Enable 2M DMA region"
700config DMA_UNCACHED_1M 692config DMA_UNCACHED_1M
diff --git a/arch/blackfin/configs/BF527-EZKIT_defconfig b/arch/blackfin/configs/BF527-EZKIT_defconfig
index 64876dfc2e55..5e6fb9d8e50f 100644
--- a/arch/blackfin/configs/BF527-EZKIT_defconfig
+++ b/arch/blackfin/configs/BF527-EZKIT_defconfig
@@ -1,6 +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.22.16 3# Linux kernel version: 2.6.24.7
4# Fri May 16 10:02:29 2008
4# 5#
5# CONFIG_MMU is not set 6# CONFIG_MMU is not set
6# CONFIG_FPU is not set 7# CONFIG_FPU is not set
@@ -13,35 +14,34 @@ CONFIG_GENERIC_FIND_NEXT_BIT=y
13CONFIG_GENERIC_HWEIGHT=y 14CONFIG_GENERIC_HWEIGHT=y
14CONFIG_GENERIC_HARDIRQS=y 15CONFIG_GENERIC_HARDIRQS=y
15CONFIG_GENERIC_IRQ_PROBE=y 16CONFIG_GENERIC_IRQ_PROBE=y
16CONFIG_GENERIC_TIME=y
17CONFIG_GENERIC_GPIO=y 17CONFIG_GENERIC_GPIO=y
18CONFIG_FORCE_MAX_ZONEORDER=14 18CONFIG_FORCE_MAX_ZONEORDER=14
19CONFIG_GENERIC_CALIBRATE_DELAY=y 19CONFIG_GENERIC_CALIBRATE_DELAY=y
20CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 20CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
21 21
22# 22#
23# Code maturity level options 23# General setup
24# 24#
25CONFIG_EXPERIMENTAL=y 25CONFIG_EXPERIMENTAL=y
26CONFIG_BROKEN_ON_SMP=y 26CONFIG_BROKEN_ON_SMP=y
27CONFIG_INIT_ENV_ARG_LIMIT=32 27CONFIG_INIT_ENV_ARG_LIMIT=32
28
29#
30# General setup
31#
32CONFIG_LOCALVERSION="" 28CONFIG_LOCALVERSION=""
33CONFIG_LOCALVERSION_AUTO=y 29CONFIG_LOCALVERSION_AUTO=y
34CONFIG_SYSVIPC=y 30CONFIG_SYSVIPC=y
35# CONFIG_IPC_NS is not set
36CONFIG_SYSVIPC_SYSCTL=y 31CONFIG_SYSVIPC_SYSCTL=y
37# CONFIG_POSIX_MQUEUE is not set 32# CONFIG_POSIX_MQUEUE is not set
38# CONFIG_BSD_PROCESS_ACCT is not set 33# CONFIG_BSD_PROCESS_ACCT is not set
39# CONFIG_TASKSTATS is not set 34# CONFIG_TASKSTATS is not set
40# CONFIG_UTS_NS is not set 35# CONFIG_USER_NS is not set
36# CONFIG_PID_NS is not set
41# CONFIG_AUDIT is not set 37# CONFIG_AUDIT is not set
42CONFIG_IKCONFIG=y 38CONFIG_IKCONFIG=y
43CONFIG_IKCONFIG_PROC=y 39CONFIG_IKCONFIG_PROC=y
44CONFIG_LOG_BUF_SHIFT=14 40CONFIG_LOG_BUF_SHIFT=14
41# CONFIG_CGROUPS is not set
42CONFIG_FAIR_GROUP_SCHED=y
43CONFIG_FAIR_USER_SCHED=y
44# CONFIG_FAIR_CGROUP_SCHED is not set
45CONFIG_SYSFS_DEPRECATED=y 45CONFIG_SYSFS_DEPRECATED=y
46# CONFIG_RELAY is not set 46# CONFIG_RELAY is not set
47CONFIG_BLK_DEV_INITRD=y 47CONFIG_BLK_DEV_INITRD=y
@@ -64,32 +64,24 @@ CONFIG_EPOLL=y
64CONFIG_SIGNALFD=y 64CONFIG_SIGNALFD=y
65CONFIG_EVENTFD=y 65CONFIG_EVENTFD=y
66CONFIG_VM_EVENT_COUNTERS=y 66CONFIG_VM_EVENT_COUNTERS=y
67CONFIG_BIG_ORDER_ALLOC_NOFAIL_MAGIC=3
68# CONFIG_NP2 is not set
69CONFIG_SLAB=y 67CONFIG_SLAB=y
70# CONFIG_SLUB is not set 68# CONFIG_SLUB is not set
71# CONFIG_SLOB is not set 69# CONFIG_SLOB is not set
70CONFIG_SLABINFO=y
72CONFIG_RT_MUTEXES=y 71CONFIG_RT_MUTEXES=y
73CONFIG_TINY_SHMEM=y 72CONFIG_TINY_SHMEM=y
74CONFIG_BASE_SMALL=0 73CONFIG_BASE_SMALL=0
75
76#
77# Loadable module support
78#
79CONFIG_MODULES=y 74CONFIG_MODULES=y
80CONFIG_MODULE_UNLOAD=y 75CONFIG_MODULE_UNLOAD=y
81# CONFIG_MODULE_FORCE_UNLOAD is not set 76# CONFIG_MODULE_FORCE_UNLOAD is not set
82# CONFIG_MODVERSIONS is not set 77# CONFIG_MODVERSIONS is not set
83# CONFIG_MODULE_SRCVERSION_ALL is not set 78# CONFIG_MODULE_SRCVERSION_ALL is not set
84CONFIG_KMOD=y 79CONFIG_KMOD=y
85
86#
87# Block layer
88#
89CONFIG_BLOCK=y 80CONFIG_BLOCK=y
90# CONFIG_LBD is not set 81# CONFIG_LBD is not set
91# CONFIG_BLK_DEV_IO_TRACE is not set 82# CONFIG_BLK_DEV_IO_TRACE is not set
92# CONFIG_LSF is not set 83# CONFIG_LSF is not set
84# CONFIG_BLK_DEV_BSG is not set
93 85
94# 86#
95# IO Schedulers 87# IO Schedulers
@@ -141,7 +133,6 @@ CONFIG_BF_REV_0_0=y
141# CONFIG_BF_REV_ANY is not set 133# CONFIG_BF_REV_ANY is not set
142# CONFIG_BF_REV_NONE is not set 134# CONFIG_BF_REV_NONE is not set
143CONFIG_BF52x=y 135CONFIG_BF52x=y
144CONFIG_BFIN_SINGLE_CORE=y
145CONFIG_MEM_MT48LC32M16A2TG_75=y 136CONFIG_MEM_MT48LC32M16A2TG_75=y
146CONFIG_BFIN527_EZKIT=y 137CONFIG_BFIN527_EZKIT=y
147 138
@@ -227,12 +218,14 @@ CONFIG_IRQ_USB_DMA=11
227# Board customizations 218# Board customizations
228# 219#
229# CONFIG_CMDLINE_BOOL is not set 220# CONFIG_CMDLINE_BOOL is not set
221CONFIG_BOOT_LOAD=0x1000
230 222
231# 223#
232# Clock/PLL Setup 224# Clock/PLL Setup
233# 225#
234CONFIG_CLKIN_HZ=25000000 226CONFIG_CLKIN_HZ=25000000
235# CONFIG_BFIN_KERNEL_CLOCK is not set 227# CONFIG_BFIN_KERNEL_CLOCK is not set
228CONFIG_MAX_MEM_SIZE=512
236CONFIG_MAX_VCO_HZ=600000000 229CONFIG_MAX_VCO_HZ=600000000
237CONFIG_MIN_VCO_HZ=50000000 230CONFIG_MIN_VCO_HZ=50000000
238CONFIG_MAX_SCLK_HZ=133333333 231CONFIG_MAX_SCLK_HZ=133333333
@@ -246,13 +239,17 @@ CONFIG_HZ_250=y
246# CONFIG_HZ_300 is not set 239# CONFIG_HZ_300 is not set
247# CONFIG_HZ_1000 is not set 240# CONFIG_HZ_1000 is not set
248CONFIG_HZ=250 241CONFIG_HZ=250
242CONFIG_GENERIC_TIME=y
243CONFIG_GENERIC_CLOCKEVENTS=y
244# CONFIG_CYCLES_CLOCKSOURCE is not set
245# CONFIG_TICK_ONESHOT is not set
246# CONFIG_NO_HZ is not set
247# CONFIG_HIGH_RES_TIMERS is not set
248CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
249 249
250# 250#
251# Memory Setup 251# Misc
252# 252#
253CONFIG_MAX_MEM_SIZE=512
254CONFIG_MEM_ADD_WIDTH=10
255CONFIG_BOOT_LOAD=0x1000
256CONFIG_BFIN_SCRATCH_REG_RETN=y 253CONFIG_BFIN_SCRATCH_REG_RETN=y
257# CONFIG_BFIN_SCRATCH_REG_RETE is not set 254# CONFIG_BFIN_SCRATCH_REG_RETE is not set
258# CONFIG_BFIN_SCRATCH_REG_CYCLES is not set 255# CONFIG_BFIN_SCRATCH_REG_CYCLES is not set
@@ -288,12 +285,14 @@ CONFIG_FLATMEM_MANUAL=y
288CONFIG_FLATMEM=y 285CONFIG_FLATMEM=y
289CONFIG_FLAT_NODE_MEM_MAP=y 286CONFIG_FLAT_NODE_MEM_MAP=y
290# CONFIG_SPARSEMEM_STATIC is not set 287# CONFIG_SPARSEMEM_STATIC is not set
288# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
291CONFIG_SPLIT_PTLOCK_CPUS=4 289CONFIG_SPLIT_PTLOCK_CPUS=4
292# CONFIG_RESOURCES_64BIT is not set 290# CONFIG_RESOURCES_64BIT is not set
293CONFIG_ZONE_DMA_FLAG=1 291CONFIG_ZONE_DMA_FLAG=1
294CONFIG_LARGE_ALLOCS=y 292CONFIG_VIRT_TO_BUS=y
295# CONFIG_BFIN_GPTIMERS is not set 293# CONFIG_BFIN_GPTIMERS is not set
296CONFIG_BFIN_DMA_5XX=y 294CONFIG_BFIN_DMA_5XX=y
295# CONFIG_DMA_UNCACHED_4M is not set
297# CONFIG_DMA_UNCACHED_2M is not set 296# CONFIG_DMA_UNCACHED_2M is not set
298CONFIG_DMA_UNCACHED_1M=y 297CONFIG_DMA_UNCACHED_1M=y
299# CONFIG_DMA_UNCACHED_NONE is not set 298# CONFIG_DMA_UNCACHED_NONE is not set
@@ -338,10 +337,6 @@ CONFIG_BANK_3=0xFFC0
338# 337#
339# CONFIG_PCI is not set 338# CONFIG_PCI is not set
340# CONFIG_ARCH_SUPPORTS_MSI is not set 339# CONFIG_ARCH_SUPPORTS_MSI is not set
341
342#
343# PCCARD (PCMCIA/CardBus) support
344#
345# CONFIG_PCCARD is not set 340# CONFIG_PCCARD is not set
346 341
347# 342#
@@ -357,9 +352,15 @@ CONFIG_BINFMT_ZFLAT=y
357# Power management options 352# Power management options
358# 353#
359# CONFIG_PM is not set 354# CONFIG_PM is not set
355CONFIG_SUSPEND_UP_POSSIBLE=y
360# CONFIG_PM_WAKEUP_BY_GPIO is not set 356# CONFIG_PM_WAKEUP_BY_GPIO is not set
361 357
362# 358#
359# CPU Frequency scaling
360#
361# CONFIG_CPU_FREQ is not set
362
363#
363# Networking 364# Networking
364# 365#
365CONFIG_NET=y 366CONFIG_NET=y
@@ -395,6 +396,7 @@ CONFIG_SYN_COOKIES=y
395CONFIG_INET_XFRM_MODE_TRANSPORT=y 396CONFIG_INET_XFRM_MODE_TRANSPORT=y
396CONFIG_INET_XFRM_MODE_TUNNEL=y 397CONFIG_INET_XFRM_MODE_TUNNEL=y
397CONFIG_INET_XFRM_MODE_BEET=y 398CONFIG_INET_XFRM_MODE_BEET=y
399# CONFIG_INET_LRO is not set
398CONFIG_INET_DIAG=y 400CONFIG_INET_DIAG=y
399CONFIG_INET_TCP_DIAG=y 401CONFIG_INET_TCP_DIAG=y
400# CONFIG_TCP_CONG_ADVANCED is not set 402# CONFIG_TCP_CONG_ADVANCED is not set
@@ -421,10 +423,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
421# CONFIG_LAPB is not set 423# CONFIG_LAPB is not set
422# CONFIG_ECONET is not set 424# CONFIG_ECONET is not set
423# CONFIG_WAN_ROUTER is not set 425# CONFIG_WAN_ROUTER is not set
424
425#
426# QoS and/or fair queueing
427#
428# CONFIG_NET_SCHED is not set 426# CONFIG_NET_SCHED is not set
429 427
430# 428#
@@ -444,6 +442,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
444# CONFIG_MAC80211 is not set 442# CONFIG_MAC80211 is not set
445# CONFIG_IEEE80211 is not set 443# CONFIG_IEEE80211 is not set
446# CONFIG_RFKILL is not set 444# CONFIG_RFKILL is not set
445# CONFIG_NET_9P is not set
447 446
448# 447#
449# Device Drivers 448# Device Drivers
@@ -452,14 +451,11 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
452# 451#
453# Generic Driver Options 452# Generic Driver Options
454# 453#
454CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
455CONFIG_STANDALONE=y 455CONFIG_STANDALONE=y
456CONFIG_PREVENT_FIRMWARE_BUILD=y 456CONFIG_PREVENT_FIRMWARE_BUILD=y
457# CONFIG_FW_LOADER is not set 457# CONFIG_FW_LOADER is not set
458# CONFIG_SYS_HYPERVISOR is not set 458# CONFIG_SYS_HYPERVISOR is not set
459
460#
461# Connector - unified userspace <-> kernelspace linker
462#
463# CONFIG_CONNECTOR is not set 459# CONFIG_CONNECTOR is not set
464CONFIG_MTD=y 460CONFIG_MTD=y
465# CONFIG_MTD_DEBUG is not set 461# CONFIG_MTD_DEBUG is not set
@@ -479,6 +475,7 @@ CONFIG_MTD_BLOCK=y
479# CONFIG_INFTL is not set 475# CONFIG_INFTL is not set
480# CONFIG_RFD_FTL is not set 476# CONFIG_RFD_FTL is not set
481# CONFIG_SSFDC is not set 477# CONFIG_SSFDC is not set
478# CONFIG_MTD_OOPS is not set
482 479
483# 480#
484# RAM/ROM/Flash chip drivers 481# RAM/ROM/Flash chip drivers
@@ -542,39 +539,27 @@ CONFIG_MTD_NAND_IDS=m
542# CONFIG_MTD_NAND_DISKONCHIP is not set 539# CONFIG_MTD_NAND_DISKONCHIP is not set
543# CONFIG_MTD_NAND_NANDSIM is not set 540# CONFIG_MTD_NAND_NANDSIM is not set
544# CONFIG_MTD_NAND_PLATFORM is not set 541# CONFIG_MTD_NAND_PLATFORM is not set
542# CONFIG_MTD_ALAUDA is not set
545# CONFIG_MTD_ONENAND is not set 543# CONFIG_MTD_ONENAND is not set
546 544
547# 545#
548# UBI - Unsorted block images 546# UBI - Unsorted block images
549# 547#
550# CONFIG_MTD_UBI is not set 548# CONFIG_MTD_UBI is not set
551
552#
553# Parallel port support
554#
555# CONFIG_PARPORT is not set 549# CONFIG_PARPORT is not set
556 550CONFIG_BLK_DEV=y
557#
558# Plug and Play support
559#
560# CONFIG_PNPACPI is not set
561
562#
563# Block devices
564#
565# CONFIG_BLK_DEV_COW_COMMON is not set 551# CONFIG_BLK_DEV_COW_COMMON is not set
566# CONFIG_BLK_DEV_LOOP is not set 552# CONFIG_BLK_DEV_LOOP is not set
567# CONFIG_BLK_DEV_NBD is not set 553# CONFIG_BLK_DEV_NBD is not set
554# CONFIG_BLK_DEV_UB is not set
568CONFIG_BLK_DEV_RAM=y 555CONFIG_BLK_DEV_RAM=y
569CONFIG_BLK_DEV_RAM_COUNT=16 556CONFIG_BLK_DEV_RAM_COUNT=16
570CONFIG_BLK_DEV_RAM_SIZE=4096 557CONFIG_BLK_DEV_RAM_SIZE=4096
571CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 558CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
572# CONFIG_CDROM_PKTCDVD is not set 559# CONFIG_CDROM_PKTCDVD is not set
573# CONFIG_ATA_OVER_ETH is not set 560# CONFIG_ATA_OVER_ETH is not set
574 561CONFIG_MISC_DEVICES=y
575# 562# CONFIG_EEPROM_93CX6 is not set
576# Misc devices
577#
578# CONFIG_IDE is not set 563# CONFIG_IDE is not set
579 564
580# 565#
@@ -582,22 +567,18 @@ CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
582# 567#
583# CONFIG_RAID_ATTRS is not set 568# CONFIG_RAID_ATTRS is not set
584# CONFIG_SCSI is not set 569# CONFIG_SCSI is not set
570# CONFIG_SCSI_DMA is not set
585# CONFIG_SCSI_NETLINK is not set 571# CONFIG_SCSI_NETLINK is not set
586# CONFIG_ATA is not set 572# CONFIG_ATA is not set
587
588#
589# Multi-device support (RAID and LVM)
590#
591# CONFIG_MD is not set 573# CONFIG_MD is not set
592
593#
594# Network device support
595#
596CONFIG_NETDEVICES=y 574CONFIG_NETDEVICES=y
575# CONFIG_NETDEVICES_MULTIQUEUE is not set
597# CONFIG_DUMMY is not set 576# CONFIG_DUMMY is not set
598# CONFIG_BONDING is not set 577# CONFIG_BONDING is not set
578# CONFIG_MACVLAN is not set
599# CONFIG_EQUALIZER is not set 579# CONFIG_EQUALIZER is not set
600# CONFIG_TUN is not set 580# CONFIG_TUN is not set
581# CONFIG_VETH is not set
601CONFIG_PHYLIB=y 582CONFIG_PHYLIB=y
602 583
603# 584#
@@ -611,21 +592,24 @@ CONFIG_PHYLIB=y
611# CONFIG_VITESSE_PHY is not set 592# CONFIG_VITESSE_PHY is not set
612# CONFIG_SMSC_PHY is not set 593# CONFIG_SMSC_PHY is not set
613# CONFIG_BROADCOM_PHY is not set 594# CONFIG_BROADCOM_PHY is not set
595# CONFIG_ICPLUS_PHY is not set
614# CONFIG_FIXED_PHY is not set 596# CONFIG_FIXED_PHY is not set
615 597# CONFIG_MDIO_BITBANG is not set
616#
617# Ethernet (10 or 100Mbit)
618#
619CONFIG_NET_ETHERNET=y 598CONFIG_NET_ETHERNET=y
620CONFIG_MII=y 599CONFIG_MII=y
621# CONFIG_SMC91X is not set
622CONFIG_BFIN_MAC=y 600CONFIG_BFIN_MAC=y
623CONFIG_BFIN_MAC_USE_L1=y 601CONFIG_BFIN_MAC_USE_L1=y
624CONFIG_BFIN_TX_DESC_NUM=10 602CONFIG_BFIN_TX_DESC_NUM=10
625CONFIG_BFIN_RX_DESC_NUM=20 603CONFIG_BFIN_RX_DESC_NUM=20
626CONFIG_BFIN_MAC_RMII=y 604CONFIG_BFIN_MAC_RMII=y
605# CONFIG_SMC91X is not set
627# CONFIG_SMSC911X is not set 606# CONFIG_SMSC911X is not set
628# CONFIG_DM9000 is not set 607# CONFIG_DM9000 is not set
608# CONFIG_IBM_NEW_EMAC_ZMII is not set
609# CONFIG_IBM_NEW_EMAC_RGMII is not set
610# CONFIG_IBM_NEW_EMAC_TAH is not set
611# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
612# CONFIG_B44 is not set
629CONFIG_NETDEV_1000=y 613CONFIG_NETDEV_1000=y
630# CONFIG_AX88180 is not set 614# CONFIG_AX88180 is not set
631CONFIG_NETDEV_10000=y 615CONFIG_NETDEV_10000=y
@@ -635,6 +619,15 @@ CONFIG_NETDEV_10000=y
635# 619#
636# CONFIG_WLAN_PRE80211 is not set 620# CONFIG_WLAN_PRE80211 is not set
637# CONFIG_WLAN_80211 is not set 621# CONFIG_WLAN_80211 is not set
622
623#
624# USB Network Adapters
625#
626# CONFIG_USB_CATC is not set
627# CONFIG_USB_KAWETH is not set
628# CONFIG_USB_PEGASUS is not set
629# CONFIG_USB_RTL8150 is not set
630# CONFIG_USB_USBNET is not set
638# CONFIG_WAN is not set 631# CONFIG_WAN is not set
639# CONFIG_PPP is not set 632# CONFIG_PPP is not set
640# CONFIG_SLIP is not set 633# CONFIG_SLIP is not set
@@ -642,15 +635,7 @@ CONFIG_NETDEV_10000=y
642# CONFIG_NETCONSOLE is not set 635# CONFIG_NETCONSOLE is not set
643# CONFIG_NETPOLL is not set 636# CONFIG_NETPOLL is not set
644# CONFIG_NET_POLL_CONTROLLER is not set 637# CONFIG_NET_POLL_CONTROLLER is not set
645
646#
647# ISDN subsystem
648#
649# CONFIG_ISDN is not set 638# CONFIG_ISDN is not set
650
651#
652# Telephony Support
653#
654# CONFIG_PHONE is not set 639# CONFIG_PHONE is not set
655 640
656# 641#
@@ -665,7 +650,6 @@ CONFIG_INPUT=y
665# 650#
666# CONFIG_INPUT_MOUSEDEV is not set 651# CONFIG_INPUT_MOUSEDEV is not set
667# CONFIG_INPUT_JOYDEV is not set 652# CONFIG_INPUT_JOYDEV is not set
668# CONFIG_INPUT_TSDEV is not set
669# CONFIG_INPUT_EVDEV is not set 653# CONFIG_INPUT_EVDEV is not set
670# CONFIG_INPUT_EVBUG is not set 654# CONFIG_INPUT_EVBUG is not set
671 655
@@ -697,7 +681,6 @@ CONFIG_INPUT_MISC=y
697# 681#
698# CONFIG_AD9960 is not set 682# CONFIG_AD9960 is not set
699# CONFIG_SPI_ADC_BF533 is not set 683# CONFIG_SPI_ADC_BF533 is not set
700# CONFIG_BF5xx_PFLAGS is not set
701# CONFIG_BF5xx_PPIFCD is not set 684# CONFIG_BF5xx_PPIFCD is not set
702# CONFIG_BFIN_SIMPLE_TIMER is not set 685# CONFIG_BFIN_SIMPLE_TIMER is not set
703# CONFIG_BF5xx_PPI is not set 686# CONFIG_BF5xx_PPI is not set
@@ -706,7 +689,7 @@ CONFIG_BFIN_OTP=y
706# CONFIG_BFIN_SPORT is not set 689# CONFIG_BFIN_SPORT is not set
707# CONFIG_BFIN_TIMER_LATENCY is not set 690# CONFIG_BFIN_TIMER_LATENCY is not set
708# CONFIG_TWI_LCD is not set 691# CONFIG_TWI_LCD is not set
709# CONFIG_AD5304 is not set 692# CONFIG_SIMPLE_GPIO is not set
710# CONFIG_VT is not set 693# CONFIG_VT is not set
711# CONFIG_SERIAL_NONSTANDARD is not set 694# CONFIG_SERIAL_NONSTANDARD is not set
712 695
@@ -735,27 +718,11 @@ CONFIG_UNIX98_PTYS=y
735# CAN, the car bus and industrial fieldbus 718# CAN, the car bus and industrial fieldbus
736# 719#
737# CONFIG_CAN4LINUX is not set 720# CONFIG_CAN4LINUX is not set
738
739#
740# IPMI
741#
742# CONFIG_IPMI_HANDLER is not set 721# CONFIG_IPMI_HANDLER is not set
743CONFIG_WATCHDOG=y
744# CONFIG_WATCHDOG_NOWAYOUT is not set
745
746#
747# Watchdog Device Drivers
748#
749# CONFIG_SOFT_WATCHDOG is not set
750CONFIG_BFIN_WDT=y
751CONFIG_HW_RANDOM=y 722CONFIG_HW_RANDOM=y
752# CONFIG_GEN_RTC is not set 723# CONFIG_GEN_RTC is not set
753# CONFIG_R3964 is not set 724# CONFIG_R3964 is not set
754# CONFIG_RAW_DRIVER is not set 725# CONFIG_RAW_DRIVER is not set
755
756#
757# TPM devices
758#
759# CONFIG_TCG_TPM is not set 726# CONFIG_TCG_TPM is not set
760CONFIG_I2C=y 727CONFIG_I2C=y
761CONFIG_I2C_BOARDINFO=y 728CONFIG_I2C_BOARDINFO=y
@@ -777,21 +744,24 @@ CONFIG_I2C_BLACKFIN_TWI_CLK_KHZ=50
777# CONFIG_I2C_OCORES is not set 744# CONFIG_I2C_OCORES is not set
778# CONFIG_I2C_PARPORT_LIGHT is not set 745# CONFIG_I2C_PARPORT_LIGHT is not set
779# CONFIG_I2C_SIMTEC is not set 746# CONFIG_I2C_SIMTEC is not set
747# CONFIG_I2C_TAOS_EVM is not set
780# CONFIG_I2C_STUB is not set 748# CONFIG_I2C_STUB is not set
749# CONFIG_I2C_TINY_USB is not set
781 750
782# 751#
783# Miscellaneous I2C Chip support 752# Miscellaneous I2C Chip support
784# 753#
785# CONFIG_SENSORS_DS1337 is not set 754# CONFIG_SENSORS_DS1337 is not set
786# CONFIG_SENSORS_DS1374 is not set 755# CONFIG_SENSORS_DS1374 is not set
756# CONFIG_DS1682 is not set
787# CONFIG_SENSORS_AD5252 is not set 757# CONFIG_SENSORS_AD5252 is not set
788# CONFIG_SENSORS_EEPROM is not set 758# CONFIG_SENSORS_EEPROM is not set
789# CONFIG_SENSORS_PCF8574 is not set 759# CONFIG_SENSORS_PCF8574 is not set
790# CONFIG_SENSORS_PCF8575 is not set 760# CONFIG_SENSORS_PCF8575 is not set
791# CONFIG_SENSORS_PCA9543 is not set
792# CONFIG_SENSORS_PCA9539 is not set 761# CONFIG_SENSORS_PCA9539 is not set
793# CONFIG_SENSORS_PCF8591 is not set 762# CONFIG_SENSORS_PCF8591 is not set
794# CONFIG_SENSORS_MAX6875 is not set 763# CONFIG_SENSORS_MAX6875 is not set
764# CONFIG_SENSORS_TSL2550 is not set
795# CONFIG_I2C_DEBUG_CORE is not set 765# CONFIG_I2C_DEBUG_CORE is not set
796# CONFIG_I2C_DEBUG_ALGO is not set 766# CONFIG_I2C_DEBUG_ALGO is not set
797# CONFIG_I2C_DEBUG_BUS is not set 767# CONFIG_I2C_DEBUG_BUS is not set
@@ -814,14 +784,11 @@ CONFIG_SPI_BFIN=y
814# 784#
815# CONFIG_SPI_AT25 is not set 785# CONFIG_SPI_AT25 is not set
816# CONFIG_SPI_SPIDEV is not set 786# CONFIG_SPI_SPIDEV is not set
817 787# CONFIG_SPI_TLE62X0 is not set
818#
819# Dallas's 1-wire bus
820#
821# CONFIG_W1 is not set 788# CONFIG_W1 is not set
789# CONFIG_POWER_SUPPLY is not set
822CONFIG_HWMON=y 790CONFIG_HWMON=y
823# CONFIG_HWMON_VID is not set 791# CONFIG_HWMON_VID is not set
824# CONFIG_SENSORS_ABITUGURU is not set
825# CONFIG_SENSORS_AD7418 is not set 792# CONFIG_SENSORS_AD7418 is not set
826# CONFIG_SENSORS_ADM1021 is not set 793# CONFIG_SENSORS_ADM1021 is not set
827# CONFIG_SENSORS_ADM1025 is not set 794# CONFIG_SENSORS_ADM1025 is not set
@@ -829,12 +796,12 @@ CONFIG_HWMON=y
829# CONFIG_SENSORS_ADM1029 is not set 796# CONFIG_SENSORS_ADM1029 is not set
830# CONFIG_SENSORS_ADM1031 is not set 797# CONFIG_SENSORS_ADM1031 is not set
831# CONFIG_SENSORS_ADM9240 is not set 798# CONFIG_SENSORS_ADM9240 is not set
832# CONFIG_SENSORS_ASB100 is not set 799# CONFIG_SENSORS_ADT7470 is not set
833# CONFIG_SENSORS_ATXP1 is not set 800# CONFIG_SENSORS_ATXP1 is not set
834# CONFIG_SENSORS_DS1621 is not set 801# CONFIG_SENSORS_DS1621 is not set
835# CONFIG_SENSORS_F71805F is not set 802# CONFIG_SENSORS_F71805F is not set
836# CONFIG_SENSORS_FSCHER is not set 803# CONFIG_SENSORS_F71882FG is not set
837# CONFIG_SENSORS_FSCPOS is not set 804# CONFIG_SENSORS_F75375S is not set
838# CONFIG_SENSORS_GL518SM is not set 805# CONFIG_SENSORS_GL518SM is not set
839# CONFIG_SENSORS_GL520SM is not set 806# CONFIG_SENSORS_GL520SM is not set
840# CONFIG_SENSORS_IT87 is not set 807# CONFIG_SENSORS_IT87 is not set
@@ -849,13 +816,16 @@ CONFIG_HWMON=y
849# CONFIG_SENSORS_LM87 is not set 816# CONFIG_SENSORS_LM87 is not set
850# CONFIG_SENSORS_LM90 is not set 817# CONFIG_SENSORS_LM90 is not set
851# CONFIG_SENSORS_LM92 is not set 818# CONFIG_SENSORS_LM92 is not set
819# CONFIG_SENSORS_LM93 is not set
852# CONFIG_SENSORS_MAX1619 is not set 820# CONFIG_SENSORS_MAX1619 is not set
853# CONFIG_SENSORS_MAX6650 is not set 821# CONFIG_SENSORS_MAX6650 is not set
854# CONFIG_SENSORS_PC87360 is not set 822# CONFIG_SENSORS_PC87360 is not set
855# CONFIG_SENSORS_PC87427 is not set 823# CONFIG_SENSORS_PC87427 is not set
824# CONFIG_SENSORS_DME1737 is not set
856# CONFIG_SENSORS_SMSC47M1 is not set 825# CONFIG_SENSORS_SMSC47M1 is not set
857# CONFIG_SENSORS_SMSC47M192 is not set 826# CONFIG_SENSORS_SMSC47M192 is not set
858# CONFIG_SENSORS_SMSC47B397 is not set 827# CONFIG_SENSORS_SMSC47B397 is not set
828# CONFIG_SENSORS_THMC50 is not set
859# CONFIG_SENSORS_VT1211 is not set 829# CONFIG_SENSORS_VT1211 is not set
860# CONFIG_SENSORS_W83781D is not set 830# CONFIG_SENSORS_W83781D is not set
861# CONFIG_SENSORS_W83791D is not set 831# CONFIG_SENSORS_W83791D is not set
@@ -865,6 +835,25 @@ CONFIG_HWMON=y
865# CONFIG_SENSORS_W83627HF is not set 835# CONFIG_SENSORS_W83627HF is not set
866# CONFIG_SENSORS_W83627EHF is not set 836# CONFIG_SENSORS_W83627EHF is not set
867# CONFIG_HWMON_DEBUG_CHIP is not set 837# CONFIG_HWMON_DEBUG_CHIP is not set
838CONFIG_WATCHDOG=y
839# CONFIG_WATCHDOG_NOWAYOUT is not set
840
841#
842# Watchdog Device Drivers
843#
844# CONFIG_SOFT_WATCHDOG is not set
845CONFIG_BFIN_WDT=y
846
847#
848# USB-based Watchdog Cards
849#
850# CONFIG_USBPCWATCHDOG is not set
851
852#
853# Sonics Silicon Backplane
854#
855CONFIG_SSB_POSSIBLE=y
856# CONFIG_SSB is not set
868 857
869# 858#
870# Multifunction device drivers 859# Multifunction device drivers
@@ -881,72 +870,133 @@ CONFIG_HWMON=y
881# 870#
882# Graphics support 871# Graphics support
883# 872#
873# CONFIG_VGASTATE is not set
874# CONFIG_VIDEO_OUTPUT_CONTROL is not set
875# CONFIG_FB is not set
884# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 876# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
885 877
886# 878#
887# Display device support 879# Display device support
888# 880#
889# CONFIG_DISPLAY_SUPPORT is not set 881# CONFIG_DISPLAY_SUPPORT is not set
890# CONFIG_VGASTATE is not set
891# CONFIG_FB is not set
892 882
893# 883#
894# Sound 884# Sound
895# 885#
896# CONFIG_SOUND is not set 886# CONFIG_SOUND is not set
897 887CONFIG_HID_SUPPORT=y
898#
899# HID Devices
900#
901CONFIG_HID=y 888CONFIG_HID=y
902# CONFIG_HID_DEBUG is not set 889# CONFIG_HID_DEBUG is not set
890# CONFIG_HIDRAW is not set
903 891
904# 892#
905# USB support 893# USB Input Devices
906# 894#
895CONFIG_USB_HID=y
896# CONFIG_USB_HIDINPUT_POWERBOOK is not set
897# CONFIG_HID_FF is not set
898# CONFIG_USB_HIDDEV is not set
899CONFIG_USB_SUPPORT=y
907CONFIG_USB_ARCH_HAS_HCD=y 900CONFIG_USB_ARCH_HAS_HCD=y
908# CONFIG_USB_ARCH_HAS_OHCI is not set 901# CONFIG_USB_ARCH_HAS_OHCI is not set
909# CONFIG_USB_ARCH_HAS_EHCI is not set 902# CONFIG_USB_ARCH_HAS_EHCI is not set
910# CONFIG_USB is not set 903CONFIG_USB=y
904# CONFIG_USB_DEBUG is not set
905
906#
907# Miscellaneous USB options
908#
909# CONFIG_USB_DEVICEFS is not set
910CONFIG_USB_DEVICE_CLASS=y
911# CONFIG_USB_DYNAMIC_MINORS is not set
912# CONFIG_USB_OTG is not set
913# CONFIG_USB_OTG_WHITELIST is not set
914CONFIG_USB_OTG_BLACKLIST_HUB=y
915
916#
917# USB Host Controller Drivers
918#
919# CONFIG_USB_ISP116X_HCD is not set
920# CONFIG_USB_ISP1362_HCD is not set
921# CONFIG_USB_ISP1760_HCD is not set
922# CONFIG_USB_SL811_HCD is not set
923# CONFIG_USB_R8A66597_HCD is not set
924CONFIG_USB_MUSB_HDRC=y
925CONFIG_USB_MUSB_SOC=y
911 926
912# 927#
913# Enable Host or Gadget support to see Inventra options 928# Blackfin high speed USB support
914# 929#
930CONFIG_USB_MUSB_HOST=y
931# CONFIG_USB_MUSB_PERIPHERAL is not set
932# CONFIG_USB_MUSB_OTG is not set
933CONFIG_USB_MUSB_HDRC_HCD=y
934CONFIG_MUSB_PIO_ONLY=y
935CONFIG_USB_MUSB_LOGLEVEL=0
936
937#
938# USB Device Class drivers
939#
940# CONFIG_USB_ACM is not set
941# CONFIG_USB_PRINTER is not set
915 942
916# 943#
917# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 944# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
918# 945#
919 946
920# 947#
921# USB Gadget Support 948# may also be needed; see USB_STORAGE Help for more information
922# 949#
923# CONFIG_USB_GADGET is not set 950# CONFIG_USB_LIBUSUAL is not set
924# CONFIG_MMC is not set
925 951
926# 952#
927# LED devices 953# USB Imaging devices
928# 954#
929# CONFIG_NEW_LEDS is not set 955# CONFIG_USB_MDC800 is not set
956CONFIG_USB_MON=y
930 957
931# 958#
932# LED drivers 959# USB port drivers
933# 960#
934 961
935# 962#
936# LED Triggers 963# USB Serial Converter support
937# 964#
965# CONFIG_USB_SERIAL is not set
938 966
939# 967#
940# InfiniBand support 968# USB Miscellaneous drivers
941# 969#
970# CONFIG_USB_EMI62 is not set
971# CONFIG_USB_EMI26 is not set
972# CONFIG_USB_ADUTUX is not set
973# CONFIG_USB_AUERSWALD is not set
974# CONFIG_USB_RIO500 is not set
975# CONFIG_USB_LEGOTOWER is not set
976# CONFIG_USB_LCD is not set
977# CONFIG_USB_BERRY_CHARGE is not set
978# CONFIG_USB_LED is not set
979# CONFIG_USB_CYPRESS_CY7C63 is not set
980# CONFIG_USB_CYTHERM is not set
981# CONFIG_USB_PHIDGET is not set
982# CONFIG_USB_IDMOUSE is not set
983# CONFIG_USB_FTDI_ELAN is not set
984# CONFIG_USB_APPLEDISPLAY is not set
985# CONFIG_USB_SISUSBVGA is not set
986# CONFIG_USB_LD is not set
987# CONFIG_USB_TRANCEVIBRATOR is not set
988# CONFIG_USB_IOWARRIOR is not set
942 989
943# 990#
944# EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 991# USB DSL modem support
945# 992#
946 993
947# 994#
948# Real Time Clock 995# USB Gadget Support
949# 996#
997# CONFIG_USB_GADGET is not set
998# CONFIG_MMC is not set
999# CONFIG_NEW_LEDS is not set
950CONFIG_RTC_LIB=y 1000CONFIG_RTC_LIB=y
951CONFIG_RTC_CLASS=y 1001CONFIG_RTC_CLASS=y
952CONFIG_RTC_HCTOSYS=y 1002CONFIG_RTC_HCTOSYS=y
@@ -966,6 +1016,7 @@ CONFIG_RTC_INTF_DEV=y
966# I2C RTC drivers 1016# I2C RTC drivers
967# 1017#
968# CONFIG_RTC_DRV_DS1307 is not set 1018# CONFIG_RTC_DRV_DS1307 is not set
1019# CONFIG_RTC_DRV_DS1374 is not set
969# CONFIG_RTC_DRV_DS1672 is not set 1020# CONFIG_RTC_DRV_DS1672 is not set
970# CONFIG_RTC_DRV_MAX6900 is not set 1021# CONFIG_RTC_DRV_MAX6900 is not set
971# CONFIG_RTC_DRV_RS5C372 is not set 1022# CONFIG_RTC_DRV_RS5C372 is not set
@@ -973,6 +1024,7 @@ CONFIG_RTC_INTF_DEV=y
973# CONFIG_RTC_DRV_X1205 is not set 1024# CONFIG_RTC_DRV_X1205 is not set
974# CONFIG_RTC_DRV_PCF8563 is not set 1025# CONFIG_RTC_DRV_PCF8563 is not set
975# CONFIG_RTC_DRV_PCF8583 is not set 1026# CONFIG_RTC_DRV_PCF8583 is not set
1027# CONFIG_RTC_DRV_M41T80 is not set
976 1028
977# 1029#
978# SPI RTC drivers 1030# SPI RTC drivers
@@ -984,8 +1036,10 @@ CONFIG_RTC_INTF_DEV=y
984# Platform RTC drivers 1036# Platform RTC drivers
985# 1037#
986# CONFIG_RTC_DRV_DS1553 is not set 1038# CONFIG_RTC_DRV_DS1553 is not set
1039# CONFIG_RTC_DRV_STK17TA8 is not set
987# CONFIG_RTC_DRV_DS1742 is not set 1040# CONFIG_RTC_DRV_DS1742 is not set
988# CONFIG_RTC_DRV_M48T86 is not set 1041# CONFIG_RTC_DRV_M48T86 is not set
1042# CONFIG_RTC_DRV_M48T59 is not set
989# CONFIG_RTC_DRV_V3020 is not set 1043# CONFIG_RTC_DRV_V3020 is not set
990 1044
991# 1045#
@@ -994,22 +1048,9 @@ CONFIG_RTC_INTF_DEV=y
994CONFIG_RTC_DRV_BFIN=y 1048CONFIG_RTC_DRV_BFIN=y
995 1049
996# 1050#
997# DMA Engine support 1051# Userspace I/O
998#
999# CONFIG_DMA_ENGINE is not set
1000
1001#
1002# DMA Clients
1003# 1052#
1004 1053# CONFIG_UIO is not set
1005#
1006# DMA Devices
1007#
1008
1009#
1010# PBX support
1011#
1012# CONFIG_PBX is not set
1013 1054
1014# 1055#
1015# File systems 1056# File systems
@@ -1054,7 +1095,6 @@ CONFIG_PROC_SYSCTL=y
1054CONFIG_SYSFS=y 1095CONFIG_SYSFS=y
1055# CONFIG_TMPFS is not set 1096# CONFIG_TMPFS is not set
1056# CONFIG_HUGETLB_PAGE is not set 1097# CONFIG_HUGETLB_PAGE is not set
1057CONFIG_RAMFS=y
1058# CONFIG_CONFIGFS_FS is not set 1098# CONFIG_CONFIGFS_FS is not set
1059 1099
1060# 1100#
@@ -1080,10 +1120,12 @@ CONFIG_YAFFS_SHORT_NAMES_IN_RAM=y
1080CONFIG_JFFS2_FS=m 1120CONFIG_JFFS2_FS=m
1081CONFIG_JFFS2_FS_DEBUG=0 1121CONFIG_JFFS2_FS_DEBUG=0
1082CONFIG_JFFS2_FS_WRITEBUFFER=y 1122CONFIG_JFFS2_FS_WRITEBUFFER=y
1123# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
1083# CONFIG_JFFS2_SUMMARY is not set 1124# CONFIG_JFFS2_SUMMARY is not set
1084# CONFIG_JFFS2_FS_XATTR is not set 1125# CONFIG_JFFS2_FS_XATTR is not set
1085# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set 1126# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
1086CONFIG_JFFS2_ZLIB=y 1127CONFIG_JFFS2_ZLIB=y
1128# CONFIG_JFFS2_LZO is not set
1087CONFIG_JFFS2_RTIME=y 1129CONFIG_JFFS2_RTIME=y
1088# CONFIG_JFFS2_RUBIN is not set 1130# CONFIG_JFFS2_RUBIN is not set
1089# CONFIG_CRAMFS is not set 1131# CONFIG_CRAMFS is not set
@@ -1092,10 +1134,7 @@ CONFIG_JFFS2_RTIME=y
1092# CONFIG_QNX4FS_FS is not set 1134# CONFIG_QNX4FS_FS is not set
1093# CONFIG_SYSV_FS is not set 1135# CONFIG_SYSV_FS is not set
1094# CONFIG_UFS_FS is not set 1136# CONFIG_UFS_FS is not set
1095 1137CONFIG_NETWORK_FILESYSTEMS=y
1096#
1097# Network File Systems
1098#
1099CONFIG_NFS_FS=m 1138CONFIG_NFS_FS=m
1100CONFIG_NFS_V3=y 1139CONFIG_NFS_V3=y
1101# CONFIG_NFS_V3_ACL is not set 1140# CONFIG_NFS_V3_ACL is not set
@@ -1115,17 +1154,12 @@ CONFIG_SMB_FS=m
1115# CONFIG_NCP_FS is not set 1154# CONFIG_NCP_FS is not set
1116# CONFIG_CODA_FS is not set 1155# CONFIG_CODA_FS is not set
1117# CONFIG_AFS_FS is not set 1156# CONFIG_AFS_FS is not set
1118# CONFIG_9P_FS is not set
1119 1157
1120# 1158#
1121# Partition Types 1159# Partition Types
1122# 1160#
1123# CONFIG_PARTITION_ADVANCED is not set 1161# CONFIG_PARTITION_ADVANCED is not set
1124CONFIG_MSDOS_PARTITION=y 1162CONFIG_MSDOS_PARTITION=y
1125
1126#
1127# Native Language Support
1128#
1129CONFIG_NLS=m 1163CONFIG_NLS=m
1130CONFIG_NLS_DEFAULT="iso8859-1" 1164CONFIG_NLS_DEFAULT="iso8859-1"
1131# CONFIG_NLS_CODEPAGE_437 is not set 1165# CONFIG_NLS_CODEPAGE_437 is not set
@@ -1166,21 +1200,16 @@ CONFIG_NLS_DEFAULT="iso8859-1"
1166# CONFIG_NLS_KOI8_R is not set 1200# CONFIG_NLS_KOI8_R is not set
1167# CONFIG_NLS_KOI8_U is not set 1201# CONFIG_NLS_KOI8_U is not set
1168# CONFIG_NLS_UTF8 is not set 1202# CONFIG_NLS_UTF8 is not set
1169
1170#
1171# Distributed Lock Manager
1172#
1173# CONFIG_DLM is not set 1203# CONFIG_DLM is not set
1174 1204CONFIG_INSTRUMENTATION=y
1175#
1176# Profiling support
1177#
1178# CONFIG_PROFILING is not set 1205# CONFIG_PROFILING is not set
1206# CONFIG_MARKERS is not set
1179 1207
1180# 1208#
1181# Kernel hacking 1209# Kernel hacking
1182# 1210#
1183# CONFIG_PRINTK_TIME is not set 1211# CONFIG_PRINTK_TIME is not set
1212CONFIG_ENABLE_WARN_DEPRECATED=y
1184CONFIG_ENABLE_MUST_CHECK=y 1213CONFIG_ENABLE_MUST_CHECK=y
1185# CONFIG_MAGIC_SYSRQ is not set 1214# CONFIG_MAGIC_SYSRQ is not set
1186# CONFIG_UNUSED_SYMBOLS is not set 1215# CONFIG_UNUSED_SYMBOLS is not set
@@ -1188,6 +1217,7 @@ CONFIG_DEBUG_FS=y
1188# CONFIG_HEADERS_CHECK is not set 1217# CONFIG_HEADERS_CHECK is not set
1189# CONFIG_DEBUG_KERNEL is not set 1218# CONFIG_DEBUG_KERNEL is not set
1190# CONFIG_DEBUG_BUGVERBOSE is not set 1219# CONFIG_DEBUG_BUGVERBOSE is not set
1220# CONFIG_SAMPLES is not set
1191CONFIG_DEBUG_MMRS=y 1221CONFIG_DEBUG_MMRS=y
1192CONFIG_DEBUG_HUNT_FOR_ZERO=y 1222CONFIG_DEBUG_HUNT_FOR_ZERO=y
1193CONFIG_DEBUG_BFIN_HWTRACE_ON=y 1223CONFIG_DEBUG_BFIN_HWTRACE_ON=y
@@ -1207,11 +1237,8 @@ CONFIG_ACCESS_CHECK=y
1207# CONFIG_KEYS is not set 1237# CONFIG_KEYS is not set
1208CONFIG_SECURITY=y 1238CONFIG_SECURITY=y
1209# CONFIG_SECURITY_NETWORK is not set 1239# CONFIG_SECURITY_NETWORK is not set
1210CONFIG_SECURITY_CAPABILITIES=m 1240# CONFIG_SECURITY_CAPABILITIES is not set
1211 1241# CONFIG_SECURITY_ROOTPLUG is not set
1212#
1213# Cryptographic options
1214#
1215# CONFIG_CRYPTO is not set 1242# CONFIG_CRYPTO is not set
1216 1243
1217# 1244#
@@ -1222,6 +1249,7 @@ CONFIG_CRC_CCITT=m
1222# CONFIG_CRC16 is not set 1249# CONFIG_CRC16 is not set
1223# CONFIG_CRC_ITU_T is not set 1250# CONFIG_CRC_ITU_T is not set
1224CONFIG_CRC32=y 1251CONFIG_CRC32=y
1252# CONFIG_CRC7 is not set
1225# CONFIG_LIBCRC32C is not set 1253# CONFIG_LIBCRC32C is not set
1226CONFIG_ZLIB_INFLATE=y 1254CONFIG_ZLIB_INFLATE=y
1227CONFIG_ZLIB_DEFLATE=m 1255CONFIG_ZLIB_DEFLATE=m
diff --git a/arch/blackfin/configs/BF548-EZKIT_defconfig b/arch/blackfin/configs/BF548-EZKIT_defconfig
index 5bfdfb287d13..1ff2ff4b49aa 100644
--- a/arch/blackfin/configs/BF548-EZKIT_defconfig
+++ b/arch/blackfin/configs/BF548-EZKIT_defconfig
@@ -1,6 +1,6 @@
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.16 3# Linux kernel version: 2.6.24.7
4# 4#
5# CONFIG_MMU is not set 5# CONFIG_MMU is not set
6# CONFIG_FPU is not set 6# CONFIG_FPU is not set
@@ -13,35 +13,34 @@ CONFIG_GENERIC_FIND_NEXT_BIT=y
13CONFIG_GENERIC_HWEIGHT=y 13CONFIG_GENERIC_HWEIGHT=y
14CONFIG_GENERIC_HARDIRQS=y 14CONFIG_GENERIC_HARDIRQS=y
15CONFIG_GENERIC_IRQ_PROBE=y 15CONFIG_GENERIC_IRQ_PROBE=y
16CONFIG_GENERIC_TIME=y
17CONFIG_GENERIC_GPIO=y 16CONFIG_GENERIC_GPIO=y
18CONFIG_FORCE_MAX_ZONEORDER=14 17CONFIG_FORCE_MAX_ZONEORDER=14
19CONFIG_GENERIC_CALIBRATE_DELAY=y 18CONFIG_GENERIC_CALIBRATE_DELAY=y
20CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
21 20
22# 21#
23# Code maturity level options 22# General setup
24# 23#
25CONFIG_EXPERIMENTAL=y 24CONFIG_EXPERIMENTAL=y
26CONFIG_BROKEN_ON_SMP=y 25CONFIG_BROKEN_ON_SMP=y
27CONFIG_INIT_ENV_ARG_LIMIT=32 26CONFIG_INIT_ENV_ARG_LIMIT=32
28
29#
30# General setup
31#
32CONFIG_LOCALVERSION="" 27CONFIG_LOCALVERSION=""
33CONFIG_LOCALVERSION_AUTO=y 28CONFIG_LOCALVERSION_AUTO=y
34CONFIG_SYSVIPC=y 29CONFIG_SYSVIPC=y
35# CONFIG_IPC_NS is not set
36CONFIG_SYSVIPC_SYSCTL=y 30CONFIG_SYSVIPC_SYSCTL=y
37# CONFIG_POSIX_MQUEUE is not set 31# CONFIG_POSIX_MQUEUE is not set
38# CONFIG_BSD_PROCESS_ACCT is not set 32# CONFIG_BSD_PROCESS_ACCT is not set
39# CONFIG_TASKSTATS is not set 33# CONFIG_TASKSTATS is not set
40# CONFIG_UTS_NS is not set 34# CONFIG_USER_NS is not set
35# CONFIG_PID_NS is not set
41# CONFIG_AUDIT is not set 36# CONFIG_AUDIT is not set
42CONFIG_IKCONFIG=y 37CONFIG_IKCONFIG=y
43CONFIG_IKCONFIG_PROC=y 38CONFIG_IKCONFIG_PROC=y
44CONFIG_LOG_BUF_SHIFT=14 39CONFIG_LOG_BUF_SHIFT=14
40# CONFIG_CGROUPS is not set
41CONFIG_FAIR_GROUP_SCHED=y
42CONFIG_FAIR_USER_SCHED=y
43# CONFIG_FAIR_CGROUP_SCHED is not set
45CONFIG_SYSFS_DEPRECATED=y 44CONFIG_SYSFS_DEPRECATED=y
46# CONFIG_RELAY is not set 45# CONFIG_RELAY is not set
47CONFIG_BLK_DEV_INITRD=y 46CONFIG_BLK_DEV_INITRD=y
@@ -64,32 +63,24 @@ CONFIG_EPOLL=y
64CONFIG_SIGNALFD=y 63CONFIG_SIGNALFD=y
65CONFIG_EVENTFD=y 64CONFIG_EVENTFD=y
66CONFIG_VM_EVENT_COUNTERS=y 65CONFIG_VM_EVENT_COUNTERS=y
67CONFIG_BIG_ORDER_ALLOC_NOFAIL_MAGIC=3
68# CONFIG_NP2 is not set
69CONFIG_SLAB=y 66CONFIG_SLAB=y
70# CONFIG_SLUB is not set 67# CONFIG_SLUB is not set
71# CONFIG_SLOB is not set 68# CONFIG_SLOB is not set
69CONFIG_SLABINFO=y
72CONFIG_RT_MUTEXES=y 70CONFIG_RT_MUTEXES=y
73CONFIG_TINY_SHMEM=y 71CONFIG_TINY_SHMEM=y
74CONFIG_BASE_SMALL=0 72CONFIG_BASE_SMALL=0
75
76#
77# Loadable module support
78#
79CONFIG_MODULES=y 73CONFIG_MODULES=y
80CONFIG_MODULE_UNLOAD=y 74CONFIG_MODULE_UNLOAD=y
81# CONFIG_MODULE_FORCE_UNLOAD is not set 75# CONFIG_MODULE_FORCE_UNLOAD is not set
82# CONFIG_MODVERSIONS is not set 76# CONFIG_MODVERSIONS is not set
83# CONFIG_MODULE_SRCVERSION_ALL is not set 77# CONFIG_MODULE_SRCVERSION_ALL is not set
84CONFIG_KMOD=y 78CONFIG_KMOD=y
85
86#
87# Block layer
88#
89CONFIG_BLOCK=y 79CONFIG_BLOCK=y
90# CONFIG_LBD is not set 80# CONFIG_LBD is not set
91# CONFIG_BLK_DEV_IO_TRACE is not set 81# CONFIG_BLK_DEV_IO_TRACE is not set
92# CONFIG_LSF is not set 82# CONFIG_LSF is not set
83# CONFIG_BLK_DEV_BSG is not set
93 84
94# 85#
95# IO Schedulers 86# IO Schedulers
@@ -141,7 +132,6 @@ CONFIG_BF_REV_0_0=y
141# CONFIG_BF_REV_ANY is not set 132# CONFIG_BF_REV_ANY is not set
142# CONFIG_BF_REV_NONE is not set 133# CONFIG_BF_REV_NONE is not set
143CONFIG_BF54x=y 134CONFIG_BF54x=y
144CONFIG_BFIN_SINGLE_CORE=y
145CONFIG_IRQ_PLL_WAKEUP=7 135CONFIG_IRQ_PLL_WAKEUP=7
146CONFIG_IRQ_RTC=8 136CONFIG_IRQ_RTC=8
147CONFIG_IRQ_SPORT0_RX=9 137CONFIG_IRQ_SPORT0_RX=9
@@ -169,6 +159,7 @@ CONFIG_IRQ_TIMER8=11
169CONFIG_IRQ_TIMER9=11 159CONFIG_IRQ_TIMER9=11
170CONFIG_IRQ_TIMER10=11 160CONFIG_IRQ_TIMER10=11
171CONFIG_BFIN548_EZKIT=y 161CONFIG_BFIN548_EZKIT=y
162# CONFIG_BFIN548_BLUETECHNIX_CM is not set
172 163
173# 164#
174# BF548 Specific Configuration 165# BF548 Specific Configuration
@@ -262,12 +253,14 @@ CONFIG_PINT3_ASSIGN=0x02020303
262# Board customizations 253# Board customizations
263# 254#
264# CONFIG_CMDLINE_BOOL is not set 255# CONFIG_CMDLINE_BOOL is not set
256CONFIG_BOOT_LOAD=0x1000
265 257
266# 258#
267# Clock/PLL Setup 259# Clock/PLL Setup
268# 260#
269CONFIG_CLKIN_HZ=25000000 261CONFIG_CLKIN_HZ=25000000
270# CONFIG_BFIN_KERNEL_CLOCK is not set 262# CONFIG_BFIN_KERNEL_CLOCK is not set
263CONFIG_MAX_MEM_SIZE=512
271CONFIG_MAX_VCO_HZ=600000000 264CONFIG_MAX_VCO_HZ=600000000
272CONFIG_MIN_VCO_HZ=50000000 265CONFIG_MIN_VCO_HZ=50000000
273CONFIG_MAX_SCLK_HZ=133333333 266CONFIG_MAX_SCLK_HZ=133333333
@@ -281,14 +274,17 @@ CONFIG_HZ_250=y
281# CONFIG_HZ_300 is not set 274# CONFIG_HZ_300 is not set
282# CONFIG_HZ_1000 is not set 275# CONFIG_HZ_1000 is not set
283CONFIG_HZ=250 276CONFIG_HZ=250
277CONFIG_GENERIC_TIME=y
278CONFIG_GENERIC_CLOCKEVENTS=y
279# CONFIG_CYCLES_CLOCKSOURCE is not set
280# CONFIG_TICK_ONESHOT is not set
281# CONFIG_NO_HZ is not set
282# CONFIG_HIGH_RES_TIMERS is not set
283CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
284 284
285# 285#
286# Memory Setup 286# Misc
287# 287#
288CONFIG_MAX_MEM_SIZE=512
289# CONFIG_MEM_MT46V32M16_6T is not set
290CONFIG_MEM_MT46V32M16_5B=y
291CONFIG_BOOT_LOAD=0x1000
292CONFIG_BFIN_SCRATCH_REG_RETN=y 288CONFIG_BFIN_SCRATCH_REG_RETN=y
293# CONFIG_BFIN_SCRATCH_REG_RETE is not set 289# CONFIG_BFIN_SCRATCH_REG_RETE is not set
294# CONFIG_BFIN_SCRATCH_REG_CYCLES is not set 290# CONFIG_BFIN_SCRATCH_REG_CYCLES is not set
@@ -324,12 +320,14 @@ CONFIG_FLATMEM_MANUAL=y
324CONFIG_FLATMEM=y 320CONFIG_FLATMEM=y
325CONFIG_FLAT_NODE_MEM_MAP=y 321CONFIG_FLAT_NODE_MEM_MAP=y
326# CONFIG_SPARSEMEM_STATIC is not set 322# CONFIG_SPARSEMEM_STATIC is not set
323# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
327CONFIG_SPLIT_PTLOCK_CPUS=4 324CONFIG_SPLIT_PTLOCK_CPUS=4
328# CONFIG_RESOURCES_64BIT is not set 325# CONFIG_RESOURCES_64BIT is not set
329CONFIG_ZONE_DMA_FLAG=1 326CONFIG_ZONE_DMA_FLAG=1
330CONFIG_LARGE_ALLOCS=y 327CONFIG_VIRT_TO_BUS=y
331# CONFIG_BFIN_GPTIMERS is not set 328# CONFIG_BFIN_GPTIMERS is not set
332CONFIG_BFIN_DMA_5XX=y 329CONFIG_BFIN_DMA_5XX=y
330# CONFIG_DMA_UNCACHED_4M is not set
333CONFIG_DMA_UNCACHED_2M=y 331CONFIG_DMA_UNCACHED_2M=y
334# CONFIG_DMA_UNCACHED_1M is not set 332# CONFIG_DMA_UNCACHED_1M is not set
335# CONFIG_DMA_UNCACHED_NONE is not set 333# CONFIG_DMA_UNCACHED_NONE is not set
@@ -377,10 +375,6 @@ CONFIG_EBIU_FCTLVAL=0x6
377# 375#
378# CONFIG_PCI is not set 376# CONFIG_PCI is not set
379# CONFIG_ARCH_SUPPORTS_MSI is not set 377# CONFIG_ARCH_SUPPORTS_MSI is not set
380
381#
382# PCCARD (PCMCIA/CardBus) support
383#
384# CONFIG_PCCARD is not set 378# CONFIG_PCCARD is not set
385 379
386# 380#
@@ -396,6 +390,7 @@ CONFIG_BINFMT_ZFLAT=y
396# Power management options 390# Power management options
397# 391#
398# CONFIG_PM is not set 392# CONFIG_PM is not set
393CONFIG_SUSPEND_UP_POSSIBLE=y
399# CONFIG_PM_WAKEUP_BY_GPIO is not set 394# CONFIG_PM_WAKEUP_BY_GPIO is not set
400 395
401# 396#
@@ -439,6 +434,7 @@ CONFIG_SYN_COOKIES=y
439CONFIG_INET_XFRM_MODE_TRANSPORT=y 434CONFIG_INET_XFRM_MODE_TRANSPORT=y
440CONFIG_INET_XFRM_MODE_TUNNEL=y 435CONFIG_INET_XFRM_MODE_TUNNEL=y
441CONFIG_INET_XFRM_MODE_BEET=y 436CONFIG_INET_XFRM_MODE_BEET=y
437# CONFIG_INET_LRO is not set
442CONFIG_INET_DIAG=y 438CONFIG_INET_DIAG=y
443CONFIG_INET_TCP_DIAG=y 439CONFIG_INET_TCP_DIAG=y
444# CONFIG_TCP_CONG_ADVANCED is not set 440# CONFIG_TCP_CONG_ADVANCED is not set
@@ -465,10 +461,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
465# CONFIG_LAPB is not set 461# CONFIG_LAPB is not set
466# CONFIG_ECONET is not set 462# CONFIG_ECONET is not set
467# CONFIG_WAN_ROUTER is not set 463# CONFIG_WAN_ROUTER is not set
468
469#
470# QoS and/or fair queueing
471#
472# CONFIG_NET_SCHED is not set 464# CONFIG_NET_SCHED is not set
473 465
474# 466#
@@ -488,6 +480,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
488# CONFIG_MAC80211 is not set 480# CONFIG_MAC80211 is not set
489# CONFIG_IEEE80211 is not set 481# CONFIG_IEEE80211 is not set
490# CONFIG_RFKILL is not set 482# CONFIG_RFKILL is not set
483# CONFIG_NET_9P is not set
491 484
492# 485#
493# Device Drivers 486# Device Drivers
@@ -496,14 +489,11 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
496# 489#
497# Generic Driver Options 490# Generic Driver Options
498# 491#
492CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
499CONFIG_STANDALONE=y 493CONFIG_STANDALONE=y
500CONFIG_PREVENT_FIRMWARE_BUILD=y 494CONFIG_PREVENT_FIRMWARE_BUILD=y
501# CONFIG_FW_LOADER is not set 495# CONFIG_FW_LOADER is not set
502# CONFIG_SYS_HYPERVISOR is not set 496# CONFIG_SYS_HYPERVISOR is not set
503
504#
505# Connector - unified userspace <-> kernelspace linker
506#
507# CONFIG_CONNECTOR is not set 497# CONFIG_CONNECTOR is not set
508CONFIG_MTD=y 498CONFIG_MTD=y
509# CONFIG_MTD_DEBUG is not set 499# CONFIG_MTD_DEBUG is not set
@@ -523,6 +513,7 @@ CONFIG_MTD_BLOCK=y
523# CONFIG_INFTL is not set 513# CONFIG_INFTL is not set
524# CONFIG_RFD_FTL is not set 514# CONFIG_RFD_FTL is not set
525# CONFIG_SSFDC is not set 515# CONFIG_SSFDC is not set
516# CONFIG_MTD_OOPS is not set
526 517
527# 518#
528# RAM/ROM/Flash chip drivers 519# RAM/ROM/Flash chip drivers
@@ -587,39 +578,27 @@ CONFIG_MTD_NAND_BF5XX_HWECC=y
587# CONFIG_MTD_NAND_DISKONCHIP is not set 578# CONFIG_MTD_NAND_DISKONCHIP is not set
588# CONFIG_MTD_NAND_NANDSIM is not set 579# CONFIG_MTD_NAND_NANDSIM is not set
589# CONFIG_MTD_NAND_PLATFORM is not set 580# CONFIG_MTD_NAND_PLATFORM is not set
581# CONFIG_MTD_ALAUDA is not set
590# CONFIG_MTD_ONENAND is not set 582# CONFIG_MTD_ONENAND is not set
591 583
592# 584#
593# UBI - Unsorted block images 585# UBI - Unsorted block images
594# 586#
595# CONFIG_MTD_UBI is not set 587# CONFIG_MTD_UBI is not set
596
597#
598# Parallel port support
599#
600# CONFIG_PARPORT is not set 588# CONFIG_PARPORT is not set
601 589CONFIG_BLK_DEV=y
602#
603# Plug and Play support
604#
605# CONFIG_PNPACPI is not set
606
607#
608# Block devices
609#
610# CONFIG_BLK_DEV_COW_COMMON is not set 590# CONFIG_BLK_DEV_COW_COMMON is not set
611# CONFIG_BLK_DEV_LOOP is not set 591# CONFIG_BLK_DEV_LOOP is not set
612# CONFIG_BLK_DEV_NBD is not set 592# CONFIG_BLK_DEV_NBD is not set
593# CONFIG_BLK_DEV_UB is not set
613CONFIG_BLK_DEV_RAM=y 594CONFIG_BLK_DEV_RAM=y
614CONFIG_BLK_DEV_RAM_COUNT=16 595CONFIG_BLK_DEV_RAM_COUNT=16
615CONFIG_BLK_DEV_RAM_SIZE=4096 596CONFIG_BLK_DEV_RAM_SIZE=4096
616CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 597CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
617# CONFIG_CDROM_PKTCDVD is not set 598# CONFIG_CDROM_PKTCDVD is not set
618# CONFIG_ATA_OVER_ETH is not set 599# CONFIG_ATA_OVER_ETH is not set
619 600CONFIG_MISC_DEVICES=y
620# 601# CONFIG_EEPROM_93CX6 is not set
621# Misc devices
622#
623# CONFIG_IDE is not set 602# CONFIG_IDE is not set
624 603
625# 604#
@@ -627,6 +606,7 @@ CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
627# 606#
628# CONFIG_RAID_ATTRS is not set 607# CONFIG_RAID_ATTRS is not set
629CONFIG_SCSI=y 608CONFIG_SCSI=y
609CONFIG_SCSI_DMA=y
630# CONFIG_SCSI_TGT is not set 610# CONFIG_SCSI_TGT is not set
631# CONFIG_SCSI_NETLINK is not set 611# CONFIG_SCSI_NETLINK is not set
632CONFIG_SCSI_PROC_FS=y 612CONFIG_SCSI_PROC_FS=y
@@ -657,43 +637,35 @@ CONFIG_SCSI_WAIT_SCAN=m
657# CONFIG_SCSI_SPI_ATTRS is not set 637# CONFIG_SCSI_SPI_ATTRS is not set
658# CONFIG_SCSI_FC_ATTRS is not set 638# CONFIG_SCSI_FC_ATTRS is not set
659# CONFIG_SCSI_ISCSI_ATTRS is not set 639# CONFIG_SCSI_ISCSI_ATTRS is not set
660# CONFIG_SCSI_SAS_ATTRS is not set
661# CONFIG_SCSI_SAS_LIBSAS is not set 640# CONFIG_SCSI_SAS_LIBSAS is not set
662 641# CONFIG_SCSI_SRP_ATTRS is not set
663# 642CONFIG_SCSI_LOWLEVEL=y
664# SCSI low-level drivers
665#
666# CONFIG_ISCSI_TCP is not set 643# CONFIG_ISCSI_TCP is not set
667# CONFIG_SCSI_DEBUG is not set 644# CONFIG_SCSI_DEBUG is not set
668CONFIG_ATA=y 645CONFIG_ATA=y
669# CONFIG_ATA_NONSTANDARD is not set 646# CONFIG_ATA_NONSTANDARD is not set
670# CONFIG_PATA_PLATFORM is not set 647# CONFIG_PATA_PLATFORM is not set
671CONFIG_PATA_BF54X=y 648CONFIG_PATA_BF54X=y
672CONFIG_PATA_BF54X_DMA=y
673
674#
675# Multi-device support (RAID and LVM)
676#
677# CONFIG_MD is not set 649# CONFIG_MD is not set
678
679#
680# Network device support
681#
682CONFIG_NETDEVICES=y 650CONFIG_NETDEVICES=y
651# CONFIG_NETDEVICES_MULTIQUEUE is not set
683# CONFIG_DUMMY is not set 652# CONFIG_DUMMY is not set
684# CONFIG_BONDING is not set 653# CONFIG_BONDING is not set
654# CONFIG_MACVLAN is not set
685# CONFIG_EQUALIZER is not set 655# CONFIG_EQUALIZER is not set
686# CONFIG_TUN is not set 656# CONFIG_TUN is not set
657# CONFIG_VETH is not set
687# CONFIG_PHYLIB is not set 658# CONFIG_PHYLIB is not set
688
689#
690# Ethernet (10 or 100Mbit)
691#
692CONFIG_NET_ETHERNET=y 659CONFIG_NET_ETHERNET=y
693CONFIG_MII=y 660CONFIG_MII=y
694# CONFIG_SMC91X is not set 661# CONFIG_SMC91X is not set
695CONFIG_SMSC911X=y 662CONFIG_SMSC911X=y
696# CONFIG_DM9000 is not set 663# CONFIG_DM9000 is not set
664# CONFIG_IBM_NEW_EMAC_ZMII is not set
665# CONFIG_IBM_NEW_EMAC_RGMII is not set
666# CONFIG_IBM_NEW_EMAC_TAH is not set
667# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
668# CONFIG_B44 is not set
697CONFIG_NETDEV_1000=y 669CONFIG_NETDEV_1000=y
698# CONFIG_AX88180 is not set 670# CONFIG_AX88180 is not set
699CONFIG_NETDEV_10000=y 671CONFIG_NETDEV_10000=y
@@ -703,6 +675,15 @@ CONFIG_NETDEV_10000=y
703# 675#
704# CONFIG_WLAN_PRE80211 is not set 676# CONFIG_WLAN_PRE80211 is not set
705# CONFIG_WLAN_80211 is not set 677# CONFIG_WLAN_80211 is not set
678
679#
680# USB Network Adapters
681#
682# CONFIG_USB_CATC is not set
683# CONFIG_USB_KAWETH is not set
684# CONFIG_USB_PEGASUS is not set
685# CONFIG_USB_RTL8150 is not set
686# CONFIG_USB_USBNET is not set
706# CONFIG_WAN is not set 687# CONFIG_WAN is not set
707# CONFIG_PPP is not set 688# CONFIG_PPP is not set
708# CONFIG_SLIP is not set 689# CONFIG_SLIP is not set
@@ -710,15 +691,7 @@ CONFIG_NETDEV_10000=y
710# CONFIG_NETCONSOLE is not set 691# CONFIG_NETCONSOLE is not set
711# CONFIG_NETPOLL is not set 692# CONFIG_NETPOLL is not set
712# CONFIG_NET_POLL_CONTROLLER is not set 693# CONFIG_NET_POLL_CONTROLLER is not set
713
714#
715# ISDN subsystem
716#
717# CONFIG_ISDN is not set 694# CONFIG_ISDN is not set
718
719#
720# Telephony Support
721#
722# CONFIG_PHONE is not set 695# CONFIG_PHONE is not set
723 696
724# 697#
@@ -733,9 +706,6 @@ CONFIG_INPUT=y
733# 706#
734# CONFIG_INPUT_MOUSEDEV is not set 707# CONFIG_INPUT_MOUSEDEV is not set
735# CONFIG_INPUT_JOYDEV is not set 708# CONFIG_INPUT_JOYDEV is not set
736CONFIG_INPUT_TSDEV=m
737CONFIG_INPUT_TSDEV_SCREEN_X=240
738CONFIG_INPUT_TSDEV_SCREEN_Y=320
739CONFIG_INPUT_EVDEV=m 709CONFIG_INPUT_EVDEV=m
740CONFIG_INPUT_EVBUG=m 710CONFIG_INPUT_EVBUG=m
741 711
@@ -758,6 +728,7 @@ CONFIG_KEYBOARD_BFIN=y
758CONFIG_INPUT_TOUCHSCREEN=y 728CONFIG_INPUT_TOUCHSCREEN=y
759# CONFIG_TOUCHSCREEN_ADS7846 is not set 729# CONFIG_TOUCHSCREEN_ADS7846 is not set
760CONFIG_TOUCHSCREEN_AD7877=m 730CONFIG_TOUCHSCREEN_AD7877=m
731# CONFIG_TOUCHSCREEN_FUJITSU is not set
761# CONFIG_TOUCHSCREEN_GUNZE is not set 732# CONFIG_TOUCHSCREEN_GUNZE is not set
762# CONFIG_TOUCHSCREEN_ELO is not set 733# CONFIG_TOUCHSCREEN_ELO is not set
763# CONFIG_TOUCHSCREEN_MTOUCH is not set 734# CONFIG_TOUCHSCREEN_MTOUCH is not set
@@ -787,7 +758,6 @@ CONFIG_INPUT_MISC=y
787# 758#
788# CONFIG_AD9960 is not set 759# CONFIG_AD9960 is not set
789# CONFIG_SPI_ADC_BF533 is not set 760# CONFIG_SPI_ADC_BF533 is not set
790# CONFIG_BF5xx_PFLAGS is not set
791# CONFIG_BF5xx_PPIFCD is not set 761# CONFIG_BF5xx_PPIFCD is not set
792# CONFIG_BFIN_SIMPLE_TIMER is not set 762# CONFIG_BFIN_SIMPLE_TIMER is not set
793# CONFIG_BF5xx_PPI is not set 763# CONFIG_BF5xx_PPI is not set
@@ -796,7 +766,7 @@ CONFIG_BFIN_OTP=y
796# CONFIG_BFIN_SPORT is not set 766# CONFIG_BFIN_SPORT is not set
797# CONFIG_BFIN_TIMER_LATENCY is not set 767# CONFIG_BFIN_TIMER_LATENCY is not set
798# CONFIG_TWI_LCD is not set 768# CONFIG_TWI_LCD is not set
799# CONFIG_AD5304 is not set 769# CONFIG_SIMPLE_GPIO is not set
800CONFIG_VT=y 770CONFIG_VT=y
801CONFIG_VT_CONSOLE=y 771CONFIG_VT_CONSOLE=y
802CONFIG_HW_CONSOLE=y 772CONFIG_HW_CONSOLE=y
@@ -830,27 +800,11 @@ CONFIG_UNIX98_PTYS=y
830# CAN, the car bus and industrial fieldbus 800# CAN, the car bus and industrial fieldbus
831# 801#
832# CONFIG_CAN4LINUX is not set 802# CONFIG_CAN4LINUX is not set
833
834#
835# IPMI
836#
837# CONFIG_IPMI_HANDLER is not set 803# CONFIG_IPMI_HANDLER is not set
838CONFIG_WATCHDOG=y
839# CONFIG_WATCHDOG_NOWAYOUT is not set
840
841#
842# Watchdog Device Drivers
843#
844# CONFIG_SOFT_WATCHDOG is not set
845CONFIG_BFIN_WDT=y
846CONFIG_HW_RANDOM=y 804CONFIG_HW_RANDOM=y
847# CONFIG_GEN_RTC is not set 805# CONFIG_GEN_RTC is not set
848# CONFIG_R3964 is not set 806# CONFIG_R3964 is not set
849# CONFIG_RAW_DRIVER is not set 807# CONFIG_RAW_DRIVER is not set
850
851#
852# TPM devices
853#
854# CONFIG_TCG_TPM is not set 808# CONFIG_TCG_TPM is not set
855CONFIG_I2C=y 809CONFIG_I2C=y
856CONFIG_I2C_BOARDINFO=y 810CONFIG_I2C_BOARDINFO=y
@@ -872,21 +826,24 @@ CONFIG_I2C_BLACKFIN_TWI_CLK_KHZ=50
872# CONFIG_I2C_OCORES is not set 826# CONFIG_I2C_OCORES is not set
873# CONFIG_I2C_PARPORT_LIGHT is not set 827# CONFIG_I2C_PARPORT_LIGHT is not set
874# CONFIG_I2C_SIMTEC is not set 828# CONFIG_I2C_SIMTEC is not set
829# CONFIG_I2C_TAOS_EVM is not set
875# CONFIG_I2C_STUB is not set 830# CONFIG_I2C_STUB is not set
831# CONFIG_I2C_TINY_USB is not set
876 832
877# 833#
878# Miscellaneous I2C Chip support 834# Miscellaneous I2C Chip support
879# 835#
880# CONFIG_SENSORS_DS1337 is not set 836# CONFIG_SENSORS_DS1337 is not set
881# CONFIG_SENSORS_DS1374 is not set 837# CONFIG_SENSORS_DS1374 is not set
838# CONFIG_DS1682 is not set
882# CONFIG_SENSORS_AD5252 is not set 839# CONFIG_SENSORS_AD5252 is not set
883# CONFIG_SENSORS_EEPROM is not set 840# CONFIG_SENSORS_EEPROM is not set
884# CONFIG_SENSORS_PCF8574 is not set 841# CONFIG_SENSORS_PCF8574 is not set
885# CONFIG_SENSORS_PCF8575 is not set 842# CONFIG_SENSORS_PCF8575 is not set
886# CONFIG_SENSORS_PCA9543 is not set
887# CONFIG_SENSORS_PCA9539 is not set 843# CONFIG_SENSORS_PCA9539 is not set
888# CONFIG_SENSORS_PCF8591 is not set 844# CONFIG_SENSORS_PCF8591 is not set
889# CONFIG_SENSORS_MAX6875 is not set 845# CONFIG_SENSORS_MAX6875 is not set
846# CONFIG_SENSORS_TSL2550 is not set
890# CONFIG_I2C_DEBUG_CORE is not set 847# CONFIG_I2C_DEBUG_CORE is not set
891# CONFIG_I2C_DEBUG_ALGO is not set 848# CONFIG_I2C_DEBUG_ALGO is not set
892# CONFIG_I2C_DEBUG_BUS is not set 849# CONFIG_I2C_DEBUG_BUS is not set
@@ -909,14 +866,11 @@ CONFIG_SPI_BFIN=y
909# 866#
910# CONFIG_SPI_AT25 is not set 867# CONFIG_SPI_AT25 is not set
911# CONFIG_SPI_SPIDEV is not set 868# CONFIG_SPI_SPIDEV is not set
912 869# CONFIG_SPI_TLE62X0 is not set
913#
914# Dallas's 1-wire bus
915#
916# CONFIG_W1 is not set 870# CONFIG_W1 is not set
871# CONFIG_POWER_SUPPLY is not set
917CONFIG_HWMON=y 872CONFIG_HWMON=y
918# CONFIG_HWMON_VID is not set 873# CONFIG_HWMON_VID is not set
919# CONFIG_SENSORS_ABITUGURU is not set
920# CONFIG_SENSORS_AD7418 is not set 874# CONFIG_SENSORS_AD7418 is not set
921# CONFIG_SENSORS_ADM1021 is not set 875# CONFIG_SENSORS_ADM1021 is not set
922# CONFIG_SENSORS_ADM1025 is not set 876# CONFIG_SENSORS_ADM1025 is not set
@@ -924,12 +878,12 @@ CONFIG_HWMON=y
924# CONFIG_SENSORS_ADM1029 is not set 878# CONFIG_SENSORS_ADM1029 is not set
925# CONFIG_SENSORS_ADM1031 is not set 879# CONFIG_SENSORS_ADM1031 is not set
926# CONFIG_SENSORS_ADM9240 is not set 880# CONFIG_SENSORS_ADM9240 is not set
927# CONFIG_SENSORS_ASB100 is not set 881# CONFIG_SENSORS_ADT7470 is not set
928# CONFIG_SENSORS_ATXP1 is not set 882# CONFIG_SENSORS_ATXP1 is not set
929# CONFIG_SENSORS_DS1621 is not set 883# CONFIG_SENSORS_DS1621 is not set
930# CONFIG_SENSORS_F71805F is not set 884# CONFIG_SENSORS_F71805F is not set
931# CONFIG_SENSORS_FSCHER is not set 885# CONFIG_SENSORS_F71882FG is not set
932# CONFIG_SENSORS_FSCPOS is not set 886# CONFIG_SENSORS_F75375S is not set
933# CONFIG_SENSORS_GL518SM is not set 887# CONFIG_SENSORS_GL518SM is not set
934# CONFIG_SENSORS_GL520SM is not set 888# CONFIG_SENSORS_GL520SM is not set
935# CONFIG_SENSORS_IT87 is not set 889# CONFIG_SENSORS_IT87 is not set
@@ -944,13 +898,16 @@ CONFIG_HWMON=y
944# CONFIG_SENSORS_LM87 is not set 898# CONFIG_SENSORS_LM87 is not set
945# CONFIG_SENSORS_LM90 is not set 899# CONFIG_SENSORS_LM90 is not set
946# CONFIG_SENSORS_LM92 is not set 900# CONFIG_SENSORS_LM92 is not set
901# CONFIG_SENSORS_LM93 is not set
947# CONFIG_SENSORS_MAX1619 is not set 902# CONFIG_SENSORS_MAX1619 is not set
948# CONFIG_SENSORS_MAX6650 is not set 903# CONFIG_SENSORS_MAX6650 is not set
949# CONFIG_SENSORS_PC87360 is not set 904# CONFIG_SENSORS_PC87360 is not set
950# CONFIG_SENSORS_PC87427 is not set 905# CONFIG_SENSORS_PC87427 is not set
906# CONFIG_SENSORS_DME1737 is not set
951# CONFIG_SENSORS_SMSC47M1 is not set 907# CONFIG_SENSORS_SMSC47M1 is not set
952# CONFIG_SENSORS_SMSC47M192 is not set 908# CONFIG_SENSORS_SMSC47M192 is not set
953# CONFIG_SENSORS_SMSC47B397 is not set 909# CONFIG_SENSORS_SMSC47B397 is not set
910# CONFIG_SENSORS_THMC50 is not set
954# CONFIG_SENSORS_VT1211 is not set 911# CONFIG_SENSORS_VT1211 is not set
955# CONFIG_SENSORS_W83781D is not set 912# CONFIG_SENSORS_W83781D is not set
956# CONFIG_SENSORS_W83791D is not set 913# CONFIG_SENSORS_W83791D is not set
@@ -960,6 +917,25 @@ CONFIG_HWMON=y
960# CONFIG_SENSORS_W83627HF is not set 917# CONFIG_SENSORS_W83627HF is not set
961# CONFIG_SENSORS_W83627EHF is not set 918# CONFIG_SENSORS_W83627EHF is not set
962# CONFIG_HWMON_DEBUG_CHIP is not set 919# CONFIG_HWMON_DEBUG_CHIP is not set
920CONFIG_WATCHDOG=y
921# CONFIG_WATCHDOG_NOWAYOUT is not set
922
923#
924# Watchdog Device Drivers
925#
926# CONFIG_SOFT_WATCHDOG is not set
927CONFIG_BFIN_WDT=y
928
929#
930# USB-based Watchdog Cards
931#
932# CONFIG_USBPCWATCHDOG is not set
933
934#
935# Sonics Silicon Backplane
936#
937CONFIG_SSB_POSSIBLE=y
938# CONFIG_SSB is not set
963 939
964# 940#
965# Multifunction device drivers 941# Multifunction device drivers
@@ -972,23 +948,20 @@ CONFIG_HWMON=y
972# CONFIG_VIDEO_DEV is not set 948# CONFIG_VIDEO_DEV is not set
973# CONFIG_DVB_CORE is not set 949# CONFIG_DVB_CORE is not set
974CONFIG_DAB=y 950CONFIG_DAB=y
951# CONFIG_USB_DABUSB is not set
975 952
976# 953#
977# Graphics support 954# Graphics support
978# 955#
979# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
980
981#
982# Display device support
983#
984# CONFIG_DISPLAY_SUPPORT is not set
985# CONFIG_VGASTATE is not set 956# CONFIG_VGASTATE is not set
957# CONFIG_VIDEO_OUTPUT_CONTROL is not set
986CONFIG_FB=y 958CONFIG_FB=y
987CONFIG_FIRMWARE_EDID=y 959CONFIG_FIRMWARE_EDID=y
988# CONFIG_FB_DDC is not set 960# CONFIG_FB_DDC is not set
989CONFIG_FB_CFB_FILLRECT=y 961CONFIG_FB_CFB_FILLRECT=y
990CONFIG_FB_CFB_COPYAREA=y 962CONFIG_FB_CFB_COPYAREA=y
991CONFIG_FB_CFB_IMAGEBLIT=y 963CONFIG_FB_CFB_IMAGEBLIT=y
964# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
992# CONFIG_FB_SYS_FILLRECT is not set 965# CONFIG_FB_SYS_FILLRECT is not set
993# CONFIG_FB_SYS_COPYAREA is not set 966# CONFIG_FB_SYS_COPYAREA is not set
994# CONFIG_FB_SYS_IMAGEBLIT is not set 967# CONFIG_FB_SYS_IMAGEBLIT is not set
@@ -1003,18 +976,24 @@ CONFIG_FB_DEFERRED_IO=y
1003# 976#
1004# Frame buffer hardware drivers 977# Frame buffer hardware drivers
1005# 978#
1006# CONFIG_FB_BFIN_7171 is not set
1007# CONFIG_FB_BFIN_7393 is not set
1008CONFIG_FB_BF54X_LQ043=y 979CONFIG_FB_BF54X_LQ043=y
1009# CONFIG_FB_BFIN_T350MCQB is not set 980# CONFIG_FB_BFIN_T350MCQB is not set
981# CONFIG_FB_BFIN_7393 is not set
1010# CONFIG_FB_S1D13XXX is not set 982# CONFIG_FB_S1D13XXX is not set
1011# CONFIG_FB_VIRTUAL is not set 983# CONFIG_FB_VIRTUAL is not set
984# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
985
986#
987# Display device support
988#
989# CONFIG_DISPLAY_SUPPORT is not set
1012 990
1013# 991#
1014# Console display driver support 992# Console display driver support
1015# 993#
1016CONFIG_DUMMY_CONSOLE=y 994CONFIG_DUMMY_CONSOLE=y
1017CONFIG_FRAMEBUFFER_CONSOLE=y 995CONFIG_FRAMEBUFFER_CONSOLE=y
996# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
1018# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set 997# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
1019CONFIG_FONTS=y 998CONFIG_FONTS=y
1020# CONFIG_FONT_8x8 is not set 999# CONFIG_FONT_8x8 is not set
@@ -1065,10 +1044,21 @@ CONFIG_SND_VERBOSE_PROCFS=y
1065# CONFIG_SND_MPU401 is not set 1044# CONFIG_SND_MPU401 is not set
1066 1045
1067# 1046#
1047# SPI devices
1048#
1049
1050#
1068# ALSA Blackfin devices 1051# ALSA Blackfin devices
1069# 1052#
1070# CONFIG_SND_BLACKFIN_AD1836 is not set 1053# CONFIG_SND_BLACKFIN_AD1836 is not set
1071# CONFIG_SND_BFIN_AD73311 is not set 1054# CONFIG_SND_BFIN_AD73311 is not set
1055# CONFIG_SND_BFIN_AD73322 is not set
1056
1057#
1058# USB devices
1059#
1060# CONFIG_SND_USB_AUDIO is not set
1061# CONFIG_SND_USB_CAIAQ is not set
1072 1062
1073# 1063#
1074# System on Chip audio support 1064# System on Chip audio support
@@ -1084,6 +1074,10 @@ CONFIG_SND_BF5XX_SOC_BF548_EZKIT=y
1084CONFIG_SND_BF5XX_SPORT_NUM=0 1074CONFIG_SND_BF5XX_SPORT_NUM=0
1085CONFIG_SND_BF5XX_HAVE_COLD_RESET=y 1075CONFIG_SND_BF5XX_HAVE_COLD_RESET=y
1086CONFIG_SND_BF5XX_RESET_GPIO_NUM=19 1076CONFIG_SND_BF5XX_RESET_GPIO_NUM=19
1077
1078#
1079# SoC Audio support for SuperH
1080#
1087CONFIG_SND_SOC_AD1980=y 1081CONFIG_SND_SOC_AD1980=y
1088 1082
1089# 1083#
@@ -1091,72 +1085,152 @@ CONFIG_SND_SOC_AD1980=y
1091# 1085#
1092# CONFIG_SOUND_PRIME is not set 1086# CONFIG_SOUND_PRIME is not set
1093CONFIG_AC97_BUS=y 1087CONFIG_AC97_BUS=y
1094 1088CONFIG_HID_SUPPORT=y
1095# 1089CONFIG_HID=y
1096# HID Devices
1097#
1098CONFIG_HID=m
1099# CONFIG_HID_DEBUG is not set 1090# CONFIG_HID_DEBUG is not set
1091# CONFIG_HIDRAW is not set
1100 1092
1101# 1093#
1102# USB support 1094# USB Input Devices
1103# 1095#
1096CONFIG_USB_HID=y
1097# CONFIG_USB_HIDINPUT_POWERBOOK is not set
1098# CONFIG_HID_FF is not set
1099# CONFIG_USB_HIDDEV is not set
1100CONFIG_USB_SUPPORT=y
1104CONFIG_USB_ARCH_HAS_HCD=y 1101CONFIG_USB_ARCH_HAS_HCD=y
1105# CONFIG_USB_ARCH_HAS_OHCI is not set 1102# CONFIG_USB_ARCH_HAS_OHCI is not set
1106# CONFIG_USB_ARCH_HAS_EHCI is not set 1103# CONFIG_USB_ARCH_HAS_EHCI is not set
1107# CONFIG_USB is not set 1104CONFIG_USB=y
1105# CONFIG_USB_DEBUG is not set
1106
1107#
1108# Miscellaneous USB options
1109#
1110# CONFIG_USB_DEVICEFS is not set
1111CONFIG_USB_DEVICE_CLASS=y
1112# CONFIG_USB_DYNAMIC_MINORS is not set
1113# CONFIG_USB_OTG is not set
1114# CONFIG_USB_OTG_WHITELIST is not set
1115CONFIG_USB_OTG_BLACKLIST_HUB=y
1108 1116
1109# 1117#
1110# Enable Host or Gadget support to see Inventra options 1118# USB Host Controller Drivers
1111# 1119#
1120# CONFIG_USB_ISP116X_HCD is not set
1121# CONFIG_USB_ISP1362_HCD is not set
1122# CONFIG_USB_ISP1760_HCD is not set
1123# CONFIG_USB_SL811_HCD is not set
1124# CONFIG_USB_R8A66597_HCD is not set
1125CONFIG_USB_MUSB_HDRC=y
1126CONFIG_USB_MUSB_SOC=y
1127
1128#
1129# Blackfin high speed USB support
1130#
1131CONFIG_USB_MUSB_HOST=y
1132# CONFIG_USB_MUSB_PERIPHERAL is not set
1133# CONFIG_USB_MUSB_OTG is not set
1134CONFIG_USB_MUSB_HDRC_HCD=y
1135# CONFIG_MUSB_PIO_ONLY is not set
1136# CONFIG_USB_INVENTRA_DMA is not set
1137# CONFIG_USB_TI_CPPI_DMA is not set
1138CONFIG_USB_MUSB_LOGLEVEL=0
1139
1140#
1141# USB Device Class drivers
1142#
1143# CONFIG_USB_ACM is not set
1144# CONFIG_USB_PRINTER is not set
1112 1145
1113# 1146#
1114# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 1147# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
1115# 1148#
1116 1149
1117# 1150#
1118# USB Gadget Support 1151# may also be needed; see USB_STORAGE Help for more information
1119# 1152#
1120# CONFIG_USB_GADGET is not set 1153CONFIG_USB_STORAGE=m
1121CONFIG_MMC=m 1154# CONFIG_USB_STORAGE_DEBUG is not set
1122# CONFIG_MMC_DEBUG is not set 1155# CONFIG_USB_STORAGE_DATAFAB is not set
1123# CONFIG_MMC_UNSAFE_RESUME is not set 1156# CONFIG_USB_STORAGE_FREECOM is not set
1157# CONFIG_USB_STORAGE_ISD200 is not set
1158# CONFIG_USB_STORAGE_DPCM is not set
1159# CONFIG_USB_STORAGE_USBAT is not set
1160# CONFIG_USB_STORAGE_SDDR09 is not set
1161# CONFIG_USB_STORAGE_SDDR55 is not set
1162# CONFIG_USB_STORAGE_JUMPSHOT is not set
1163# CONFIG_USB_STORAGE_ALAUDA is not set
1164# CONFIG_USB_STORAGE_ONETOUCH is not set
1165# CONFIG_USB_STORAGE_KARMA is not set
1166# CONFIG_USB_LIBUSUAL is not set
1124 1167
1125# 1168#
1126# MMC/SD Card Drivers 1169# USB Imaging devices
1127# 1170#
1128CONFIG_MMC_BLOCK=m 1171# CONFIG_USB_MDC800 is not set
1172# CONFIG_USB_MICROTEK is not set
1173CONFIG_USB_MON=y
1129 1174
1130# 1175#
1131# MMC/SD Host Controller Drivers 1176# USB port drivers
1132# 1177#
1133CONFIG_SDH_BFIN=m
1134# CONFIG_SPI_MMC is not set
1135 1178
1136# 1179#
1137# LED devices 1180# USB Serial Converter support
1138# 1181#
1139# CONFIG_NEW_LEDS is not set 1182# CONFIG_USB_SERIAL is not set
1140 1183
1141# 1184#
1142# LED drivers 1185# USB Miscellaneous drivers
1143# 1186#
1187# CONFIG_USB_EMI62 is not set
1188# CONFIG_USB_EMI26 is not set
1189# CONFIG_USB_ADUTUX is not set
1190# CONFIG_USB_AUERSWALD is not set
1191# CONFIG_USB_RIO500 is not set
1192# CONFIG_USB_LEGOTOWER is not set
1193# CONFIG_USB_LCD is not set
1194# CONFIG_USB_BERRY_CHARGE is not set
1195# CONFIG_USB_LED is not set
1196# CONFIG_USB_CYPRESS_CY7C63 is not set
1197# CONFIG_USB_CYTHERM is not set
1198# CONFIG_USB_PHIDGET is not set
1199# CONFIG_USB_IDMOUSE is not set
1200# CONFIG_USB_FTDI_ELAN is not set
1201# CONFIG_USB_APPLEDISPLAY is not set
1202# CONFIG_USB_SISUSBVGA is not set
1203# CONFIG_USB_LD is not set
1204# CONFIG_USB_TRANCEVIBRATOR is not set
1205# CONFIG_USB_IOWARRIOR is not set
1144 1206
1145# 1207#
1146# LED Triggers 1208# USB DSL modem support
1147# 1209#
1148 1210
1149# 1211#
1150# InfiniBand support 1212# USB Gadget Support
1151# 1213#
1214# CONFIG_USB_GADGET is not set
1215CONFIG_MMC=m
1216# CONFIG_MMC_DEBUG is not set
1217# CONFIG_MMC_UNSAFE_RESUME is not set
1152 1218
1153# 1219#
1154# EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 1220# MMC/SD Card Drivers
1155# 1221#
1222CONFIG_MMC_BLOCK=m
1223CONFIG_MMC_BLOCK_BOUNCE=y
1224# CONFIG_SDIO_UART is not set
1156 1225
1157# 1226#
1158# Real Time Clock 1227# MMC/SD Host Controller Drivers
1159# 1228#
1229CONFIG_SDH_BFIN=m
1230# CONFIG_SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND is not set
1231# CONFIG_MMC_SPI is not set
1232# CONFIG_SPI_MMC is not set
1233# CONFIG_NEW_LEDS is not set
1160CONFIG_RTC_LIB=y 1234CONFIG_RTC_LIB=y
1161CONFIG_RTC_CLASS=y 1235CONFIG_RTC_CLASS=y
1162CONFIG_RTC_HCTOSYS=y 1236CONFIG_RTC_HCTOSYS=y
@@ -1176,6 +1250,7 @@ CONFIG_RTC_INTF_DEV=y
1176# I2C RTC drivers 1250# I2C RTC drivers
1177# 1251#
1178# CONFIG_RTC_DRV_DS1307 is not set 1252# CONFIG_RTC_DRV_DS1307 is not set
1253# CONFIG_RTC_DRV_DS1374 is not set
1179# CONFIG_RTC_DRV_DS1672 is not set 1254# CONFIG_RTC_DRV_DS1672 is not set
1180# CONFIG_RTC_DRV_MAX6900 is not set 1255# CONFIG_RTC_DRV_MAX6900 is not set
1181# CONFIG_RTC_DRV_RS5C372 is not set 1256# CONFIG_RTC_DRV_RS5C372 is not set
@@ -1183,6 +1258,7 @@ CONFIG_RTC_INTF_DEV=y
1183# CONFIG_RTC_DRV_X1205 is not set 1258# CONFIG_RTC_DRV_X1205 is not set
1184# CONFIG_RTC_DRV_PCF8563 is not set 1259# CONFIG_RTC_DRV_PCF8563 is not set
1185# CONFIG_RTC_DRV_PCF8583 is not set 1260# CONFIG_RTC_DRV_PCF8583 is not set
1261# CONFIG_RTC_DRV_M41T80 is not set
1186 1262
1187# 1263#
1188# SPI RTC drivers 1264# SPI RTC drivers
@@ -1194,8 +1270,10 @@ CONFIG_RTC_INTF_DEV=y
1194# Platform RTC drivers 1270# Platform RTC drivers
1195# 1271#
1196# CONFIG_RTC_DRV_DS1553 is not set 1272# CONFIG_RTC_DRV_DS1553 is not set
1273# CONFIG_RTC_DRV_STK17TA8 is not set
1197# CONFIG_RTC_DRV_DS1742 is not set 1274# CONFIG_RTC_DRV_DS1742 is not set
1198# CONFIG_RTC_DRV_M48T86 is not set 1275# CONFIG_RTC_DRV_M48T86 is not set
1276# CONFIG_RTC_DRV_M48T59 is not set
1199# CONFIG_RTC_DRV_V3020 is not set 1277# CONFIG_RTC_DRV_V3020 is not set
1200 1278
1201# 1279#
@@ -1204,22 +1282,9 @@ CONFIG_RTC_INTF_DEV=y
1204CONFIG_RTC_DRV_BFIN=y 1282CONFIG_RTC_DRV_BFIN=y
1205 1283
1206# 1284#
1207# DMA Engine support 1285# Userspace I/O
1208#
1209# CONFIG_DMA_ENGINE is not set
1210
1211#
1212# DMA Clients
1213# 1286#
1214 1287# CONFIG_UIO is not set
1215#
1216# DMA Devices
1217#
1218
1219#
1220# PBX support
1221#
1222# CONFIG_PBX is not set
1223 1288
1224# 1289#
1225# File systems 1290# File systems
@@ -1280,7 +1345,6 @@ CONFIG_PROC_SYSCTL=y
1280CONFIG_SYSFS=y 1345CONFIG_SYSFS=y
1281# CONFIG_TMPFS is not set 1346# CONFIG_TMPFS is not set
1282# CONFIG_HUGETLB_PAGE is not set 1347# CONFIG_HUGETLB_PAGE is not set
1283CONFIG_RAMFS=y
1284# CONFIG_CONFIGFS_FS is not set 1348# CONFIG_CONFIGFS_FS is not set
1285 1349
1286# 1350#
@@ -1306,10 +1370,12 @@ CONFIG_YAFFS_SHORT_NAMES_IN_RAM=y
1306CONFIG_JFFS2_FS=m 1370CONFIG_JFFS2_FS=m
1307CONFIG_JFFS2_FS_DEBUG=0 1371CONFIG_JFFS2_FS_DEBUG=0
1308CONFIG_JFFS2_FS_WRITEBUFFER=y 1372CONFIG_JFFS2_FS_WRITEBUFFER=y
1373# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
1309# CONFIG_JFFS2_SUMMARY is not set 1374# CONFIG_JFFS2_SUMMARY is not set
1310# CONFIG_JFFS2_FS_XATTR is not set 1375# CONFIG_JFFS2_FS_XATTR is not set
1311# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set 1376# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
1312CONFIG_JFFS2_ZLIB=y 1377CONFIG_JFFS2_ZLIB=y
1378# CONFIG_JFFS2_LZO is not set
1313CONFIG_JFFS2_RTIME=y 1379CONFIG_JFFS2_RTIME=y
1314# CONFIG_JFFS2_RUBIN is not set 1380# CONFIG_JFFS2_RUBIN is not set
1315# CONFIG_CRAMFS is not set 1381# CONFIG_CRAMFS is not set
@@ -1318,10 +1384,7 @@ CONFIG_JFFS2_RTIME=y
1318# CONFIG_QNX4FS_FS is not set 1384# CONFIG_QNX4FS_FS is not set
1319# CONFIG_SYSV_FS is not set 1385# CONFIG_SYSV_FS is not set
1320# CONFIG_UFS_FS is not set 1386# CONFIG_UFS_FS is not set
1321 1387CONFIG_NETWORK_FILESYSTEMS=y
1322#
1323# Network File Systems
1324#
1325CONFIG_NFS_FS=m 1388CONFIG_NFS_FS=m
1326CONFIG_NFS_V3=y 1389CONFIG_NFS_V3=y
1327# CONFIG_NFS_V3_ACL is not set 1390# CONFIG_NFS_V3_ACL is not set
@@ -1352,7 +1415,6 @@ CONFIG_CIFS=y
1352# CONFIG_NCP_FS is not set 1415# CONFIG_NCP_FS is not set
1353# CONFIG_CODA_FS is not set 1416# CONFIG_CODA_FS is not set
1354# CONFIG_AFS_FS is not set 1417# CONFIG_AFS_FS is not set
1355# CONFIG_9P_FS is not set
1356 1418
1357# 1419#
1358# Partition Types 1420# Partition Types
@@ -1375,10 +1437,6 @@ CONFIG_MSDOS_PARTITION=y
1375# CONFIG_KARMA_PARTITION is not set 1437# CONFIG_KARMA_PARTITION is not set
1376# CONFIG_EFI_PARTITION is not set 1438# CONFIG_EFI_PARTITION is not set
1377# CONFIG_SYSV68_PARTITION is not set 1439# CONFIG_SYSV68_PARTITION is not set
1378
1379#
1380# Native Language Support
1381#
1382CONFIG_NLS=y 1440CONFIG_NLS=y
1383CONFIG_NLS_DEFAULT="iso8859-1" 1441CONFIG_NLS_DEFAULT="iso8859-1"
1384CONFIG_NLS_CODEPAGE_437=m 1442CONFIG_NLS_CODEPAGE_437=m
@@ -1419,21 +1477,16 @@ CONFIG_NLS_ISO8859_15=m
1419CONFIG_NLS_KOI8_R=m 1477CONFIG_NLS_KOI8_R=m
1420CONFIG_NLS_KOI8_U=m 1478CONFIG_NLS_KOI8_U=m
1421CONFIG_NLS_UTF8=m 1479CONFIG_NLS_UTF8=m
1422
1423#
1424# Distributed Lock Manager
1425#
1426# CONFIG_DLM is not set 1480# CONFIG_DLM is not set
1427 1481CONFIG_INSTRUMENTATION=y
1428#
1429# Profiling support
1430#
1431# CONFIG_PROFILING is not set 1482# CONFIG_PROFILING is not set
1483# CONFIG_MARKERS is not set
1432 1484
1433# 1485#
1434# Kernel hacking 1486# Kernel hacking
1435# 1487#
1436# CONFIG_PRINTK_TIME is not set 1488# CONFIG_PRINTK_TIME is not set
1489CONFIG_ENABLE_WARN_DEPRECATED=y
1437CONFIG_ENABLE_MUST_CHECK=y 1490CONFIG_ENABLE_MUST_CHECK=y
1438# CONFIG_MAGIC_SYSRQ is not set 1491# CONFIG_MAGIC_SYSRQ is not set
1439# CONFIG_UNUSED_SYMBOLS is not set 1492# CONFIG_UNUSED_SYMBOLS is not set
@@ -1441,6 +1494,7 @@ CONFIG_DEBUG_FS=y
1441# CONFIG_HEADERS_CHECK is not set 1494# CONFIG_HEADERS_CHECK is not set
1442# CONFIG_DEBUG_KERNEL is not set 1495# CONFIG_DEBUG_KERNEL is not set
1443# CONFIG_DEBUG_BUGVERBOSE is not set 1496# CONFIG_DEBUG_BUGVERBOSE is not set
1497# CONFIG_SAMPLES is not set
1444CONFIG_DEBUG_MMRS=y 1498CONFIG_DEBUG_MMRS=y
1445CONFIG_DEBUG_HUNT_FOR_ZERO=y 1499CONFIG_DEBUG_HUNT_FOR_ZERO=y
1446CONFIG_DEBUG_BFIN_HWTRACE_ON=y 1500CONFIG_DEBUG_BFIN_HWTRACE_ON=y
@@ -1460,11 +1514,8 @@ CONFIG_ACCESS_CHECK=y
1460# CONFIG_KEYS is not set 1514# CONFIG_KEYS is not set
1461CONFIG_SECURITY=y 1515CONFIG_SECURITY=y
1462# CONFIG_SECURITY_NETWORK is not set 1516# CONFIG_SECURITY_NETWORK is not set
1463CONFIG_SECURITY_CAPABILITIES=m 1517# CONFIG_SECURITY_CAPABILITIES is not set
1464 1518# CONFIG_SECURITY_ROOTPLUG is not set
1465#
1466# Cryptographic options
1467#
1468# CONFIG_CRYPTO is not set 1519# CONFIG_CRYPTO is not set
1469 1520
1470# 1521#
@@ -1475,6 +1526,7 @@ CONFIG_CRC_CCITT=m
1475# CONFIG_CRC16 is not set 1526# CONFIG_CRC16 is not set
1476# CONFIG_CRC_ITU_T is not set 1527# CONFIG_CRC_ITU_T is not set
1477CONFIG_CRC32=y 1528CONFIG_CRC32=y
1529# CONFIG_CRC7 is not set
1478# CONFIG_LIBCRC32C is not set 1530# CONFIG_LIBCRC32C is not set
1479CONFIG_ZLIB_INFLATE=y 1531CONFIG_ZLIB_INFLATE=y
1480CONFIG_ZLIB_DEFLATE=m 1532CONFIG_ZLIB_DEFLATE=m
diff --git a/arch/blackfin/configs/IP0X_defconfig b/arch/blackfin/configs/IP0X_defconfig
index 5f6ff04a86c3..4384a670a8b8 100644
--- a/arch/blackfin/configs/IP0X_defconfig
+++ b/arch/blackfin/configs/IP0X_defconfig
@@ -212,7 +212,7 @@ CONFIG_HZ=250
212# 212#
213# Memory Setup 213# Memory Setup
214# 214#
215CONFIG_MEM_SIZE=64 215CONFIG_MAX_MEM_SIZE=64
216CONFIG_MEM_ADD_WIDTH=10 216CONFIG_MEM_ADD_WIDTH=10
217 217
218# 218#
diff --git a/arch/blackfin/kernel/bfin_dma_5xx.c b/arch/blackfin/kernel/bfin_dma_5xx.c
index fd5448d6107c..d54f19085f37 100644
--- a/arch/blackfin/kernel/bfin_dma_5xx.c
+++ b/arch/blackfin/kernel/bfin_dma_5xx.c
@@ -90,6 +90,17 @@ int request_dma(unsigned int channel, char *device_id)
90{ 90{
91 91
92 pr_debug("request_dma() : BEGIN \n"); 92 pr_debug("request_dma() : BEGIN \n");
93
94#if defined(CONFIG_BF561) && ANOMALY_05000182
95 if (channel >= CH_IMEM_STREAM0_DEST && channel <= CH_IMEM_STREAM1_DEST) {
96 if (get_cclk() > 500000000) {
97 printk(KERN_WARNING
98 "Request IMDMA failed due to ANOMALY 05000182\n");
99 return -EFAULT;
100 }
101 }
102#endif
103
93 mutex_lock(&(dma_ch[channel].dmalock)); 104 mutex_lock(&(dma_ch[channel].dmalock));
94 105
95 if ((dma_ch[channel].chan_status == DMA_CHANNEL_REQUESTED) 106 if ((dma_ch[channel].chan_status == DMA_CHANNEL_REQUESTED)
diff --git a/arch/blackfin/kernel/bfin_gpio.c b/arch/blackfin/kernel/bfin_gpio.c
index 7e8eaf4a31bb..b6d89d1644cc 100644
--- a/arch/blackfin/kernel/bfin_gpio.c
+++ b/arch/blackfin/kernel/bfin_gpio.c
@@ -1130,6 +1130,25 @@ void bfin_gpio_irq_prepare(unsigned gpio)
1130 1130
1131#else 1131#else
1132 1132
1133int gpio_get_value(unsigned gpio)
1134{
1135 unsigned long flags;
1136 int ret;
1137
1138 if (unlikely(get_gpio_edge(gpio))) {
1139 local_irq_save(flags);
1140 set_gpio_edge(gpio, 0);
1141 ret = get_gpio_data(gpio);
1142 set_gpio_edge(gpio, 1);
1143 local_irq_restore(flags);
1144
1145 return ret;
1146 } else
1147 return get_gpio_data(gpio);
1148}
1149EXPORT_SYMBOL(gpio_get_value);
1150
1151
1133int gpio_direction_input(unsigned gpio) 1152int gpio_direction_input(unsigned gpio)
1134{ 1153{
1135 unsigned long flags; 1154 unsigned long flags;
diff --git a/arch/blackfin/kernel/bfin_ksyms.c b/arch/blackfin/kernel/bfin_ksyms.c
index 053edff6c0d8..4367330909b2 100644
--- a/arch/blackfin/kernel/bfin_ksyms.c
+++ b/arch/blackfin/kernel/bfin_ksyms.c
@@ -90,7 +90,9 @@ EXPORT_SYMBOL(__umodsi3);
90EXPORT_SYMBOL(outsb); 90EXPORT_SYMBOL(outsb);
91EXPORT_SYMBOL(insb); 91EXPORT_SYMBOL(insb);
92EXPORT_SYMBOL(outsw); 92EXPORT_SYMBOL(outsw);
93EXPORT_SYMBOL(outsw_8);
93EXPORT_SYMBOL(insw); 94EXPORT_SYMBOL(insw);
95EXPORT_SYMBOL(insw_8);
94EXPORT_SYMBOL(outsl); 96EXPORT_SYMBOL(outsl);
95EXPORT_SYMBOL(insl); 97EXPORT_SYMBOL(insl);
96EXPORT_SYMBOL(insl_16); 98EXPORT_SYMBOL(insl_16);
diff --git a/arch/blackfin/kernel/gptimers.c b/arch/blackfin/kernel/gptimers.c
index e698554895a7..3a3e9615b002 100644
--- a/arch/blackfin/kernel/gptimers.c
+++ b/arch/blackfin/kernel/gptimers.c
@@ -10,8 +10,8 @@
10 10
11#include <linux/kernel.h> 11#include <linux/kernel.h>
12#include <linux/module.h> 12#include <linux/module.h>
13#include <linux/io.h>
13 14
14#include <asm/io.h>
15#include <asm/blackfin.h> 15#include <asm/blackfin.h>
16#include <asm/gptimers.h> 16#include <asm/gptimers.h>
17 17
diff --git a/arch/blackfin/kernel/init_task.c b/arch/blackfin/kernel/init_task.c
index c640154030e2..6bdba7b21109 100644
--- a/arch/blackfin/kernel/init_task.c
+++ b/arch/blackfin/kernel/init_task.c
@@ -34,7 +34,6 @@
34#include <linux/fs.h> 34#include <linux/fs.h>
35 35
36static struct fs_struct init_fs = INIT_FS; 36static struct fs_struct init_fs = INIT_FS;
37static struct files_struct init_files = INIT_FILES;
38static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 37static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
39static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 38static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
40 39
diff --git a/arch/blackfin/kernel/traps.c b/arch/blackfin/kernel/traps.c
index 5b847070dae5..f061f5181623 100644
--- a/arch/blackfin/kernel/traps.c
+++ b/arch/blackfin/kernel/traps.c
@@ -67,7 +67,7 @@ void __init trap_init(void)
67 CSYNC(); 67 CSYNC();
68} 68}
69 69
70void *saved_icplb_fault_addr, *saved_dcplb_fault_addr; 70unsigned long saved_icplb_fault_addr, saved_dcplb_fault_addr;
71 71
72int kstack_depth_to_print = 48; 72int kstack_depth_to_print = 48;
73 73
@@ -364,13 +364,13 @@ asmlinkage void trap_c(struct pt_regs *fp)
364 /* 0x27 - Data CPLB Multiple Hits - Linux Trap Zero, handled here */ 364 /* 0x27 - Data CPLB Multiple Hits - Linux Trap Zero, handled here */
365 case VEC_CPLB_MHIT: 365 case VEC_CPLB_MHIT:
366 info.si_code = ILL_CPLB_MULHIT; 366 info.si_code = ILL_CPLB_MULHIT;
367#ifdef CONFIG_DEBUG_HUNT_FOR_ZERO
368 sig = SIGSEGV; 367 sig = SIGSEGV;
369 printk(KERN_NOTICE "NULL pointer access (probably)\n"); 368#ifdef CONFIG_DEBUG_HUNT_FOR_ZERO
370#else 369 if (saved_dcplb_fault_addr < FIXED_CODE_START)
371 sig = SIGILL; 370 printk(KERN_NOTICE "NULL pointer access\n");
372 printk(KERN_NOTICE EXC_0x27(KERN_NOTICE)); 371 else
373#endif 372#endif
373 printk(KERN_NOTICE EXC_0x27(KERN_NOTICE));
374 CHK_DEBUGGER_TRAP(); 374 CHK_DEBUGGER_TRAP();
375 break; 375 break;
376 /* 0x28 - Emulation Watchpoint, handled here */ 376 /* 0x28 - Emulation Watchpoint, handled here */
@@ -419,13 +419,13 @@ asmlinkage void trap_c(struct pt_regs *fp)
419 /* 0x2D - Instruction CPLB Multiple Hits, handled here */ 419 /* 0x2D - Instruction CPLB Multiple Hits, handled here */
420 case VEC_CPLB_I_MHIT: 420 case VEC_CPLB_I_MHIT:
421 info.si_code = ILL_CPLB_MULHIT; 421 info.si_code = ILL_CPLB_MULHIT;
422#ifdef CONFIG_DEBUG_HUNT_FOR_ZERO
423 sig = SIGSEGV; 422 sig = SIGSEGV;
424 printk(KERN_NOTICE "Jump to address 0 - 0x0fff\n"); 423#ifdef CONFIG_DEBUG_HUNT_FOR_ZERO
425#else 424 if (saved_icplb_fault_addr < FIXED_CODE_START)
426 sig = SIGILL; 425 printk(KERN_NOTICE "Jump to NULL address\n");
427 printk(KERN_NOTICE EXC_0x2D(KERN_NOTICE)); 426 else
428#endif 427#endif
428 printk(KERN_NOTICE EXC_0x2D(KERN_NOTICE));
429 CHK_DEBUGGER_TRAP(); 429 CHK_DEBUGGER_TRAP();
430 break; 430 break;
431 /* 0x2E - Illegal use of Supervisor Resource, handled here */ 431 /* 0x2E - Illegal use of Supervisor Resource, handled here */
@@ -939,8 +939,6 @@ void panic_cplb_error(int cplb_panic, struct pt_regs *fp)
939 939
940 oops_in_progress = 1; 940 oops_in_progress = 1;
941 941
942 printk(KERN_EMERG "DCPLB_FAULT_ADDR=%p\n", saved_dcplb_fault_addr);
943 printk(KERN_EMERG "ICPLB_FAULT_ADDR=%p\n", saved_icplb_fault_addr);
944 dump_bfin_process(fp); 942 dump_bfin_process(fp);
945 dump_bfin_mem(fp); 943 dump_bfin_mem(fp);
946 show_regs(fp); 944 show_regs(fp);
diff --git a/arch/blackfin/lib/checksum.c b/arch/blackfin/lib/checksum.c
index 42768e0c80ca..5c87505165d3 100644
--- a/arch/blackfin/lib/checksum.c
+++ b/arch/blackfin/lib/checksum.c
@@ -72,9 +72,9 @@ static unsigned short do_csum(const unsigned char *buff, int len)
72 * This is a version of ip_compute_csum() optimized for IP headers, 72 * This is a version of ip_compute_csum() optimized for IP headers,
73 * which always checksum on 4 octet boundaries. 73 * which always checksum on 4 octet boundaries.
74 */ 74 */
75unsigned short ip_fast_csum(unsigned char *iph, unsigned int ihl) 75__sum16 ip_fast_csum(unsigned char *iph, unsigned int ihl)
76{ 76{
77 return ~do_csum(iph, ihl * 4); 77 return (__force __sum16)~do_csum(iph, ihl * 4);
78} 78}
79 79
80/* 80/*
@@ -89,7 +89,7 @@ unsigned short ip_fast_csum(unsigned char *iph, unsigned int ihl)
89 * 89 *
90 * it's best to have buff aligned on a 32-bit boundary 90 * it's best to have buff aligned on a 32-bit boundary
91 */ 91 */
92unsigned int csum_partial(const unsigned char *buff, int len, unsigned int sum) 92__wsum csum_partial(const void *buff, int len, __wsum sum)
93{ 93{
94 /* 94 /*
95 * Just in case we get nasty checksum data... 95 * Just in case we get nasty checksum data...
@@ -109,22 +109,22 @@ unsigned int csum_partial(const unsigned char *buff, int len, unsigned int sum)
109 * this routine is used for miscellaneous IP-like checksums, mainly 109 * this routine is used for miscellaneous IP-like checksums, mainly
110 * in icmp.c 110 * in icmp.c
111 */ 111 */
112unsigned short ip_compute_csum(const unsigned char *buff, int len) 112__sum16 ip_compute_csum(const void *buff, int len)
113{ 113{
114 return ~do_csum(buff, len); 114 return (__force __sum16)~do_csum(buff, len);
115} 115}
116 116
117/* 117/*
118 * copy from fs while checksumming, otherwise like csum_partial 118 * copy from fs while checksumming, otherwise like csum_partial
119 */ 119 */
120 120
121unsigned int 121__wsum
122csum_partial_copy_from_user(const unsigned char *src, unsigned char *dst, 122csum_partial_copy_from_user(const void __user *src, void *dst,
123 int len, int sum, int *csum_err) 123 int len, __wsum sum, int *csum_err)
124{ 124{
125 if (csum_err) 125 if (csum_err)
126 *csum_err = 0; 126 *csum_err = 0;
127 memcpy(dst, src, len); 127 memcpy(dst, (__force void *)src, len);
128 return csum_partial(dst, len, sum); 128 return csum_partial(dst, len, sum);
129} 129}
130 130
@@ -132,8 +132,7 @@ csum_partial_copy_from_user(const unsigned char *src, unsigned char *dst,
132 * copy from ds while checksumming, otherwise like csum_partial 132 * copy from ds while checksumming, otherwise like csum_partial
133 */ 133 */
134 134
135unsigned int csum_partial_copy(const unsigned char *src, unsigned char *dst, 135__wsum csum_partial_copy(const void *src, void *dst, int len, __wsum sum)
136 int len, int sum)
137{ 136{
138 memcpy(dst, src, len); 137 memcpy(dst, src, len);
139 return csum_partial(dst, len, sum); 138 return csum_partial(dst, len, sum);
diff --git a/arch/blackfin/lib/ins.S b/arch/blackfin/lib/ins.S
index df7b8833a0c5..eba2343b1b59 100644
--- a/arch/blackfin/lib/ins.S
+++ b/arch/blackfin/lib/ins.S
@@ -7,7 +7,7 @@
7 * Description: Implementation of ins{bwl} for BlackFin processors using zero overhead loops. 7 * Description: Implementation of ins{bwl} for BlackFin processors using zero overhead loops.
8 * 8 *
9 * Modified: 9 * Modified:
10 * Copyright 2004-2006 Analog Devices Inc. 10 * Copyright 2004-2008 Analog Devices Inc.
11 * Copyright (C) 2005 Bas Vermeulen, BuyWays BV <bas@buyways.nl> 11 * Copyright (C) 2005 Bas Vermeulen, BuyWays BV <bas@buyways.nl>
12 * 12 *
13 * Bugs: Enter bugs at http://blackfin.uclinux.org/ 13 * Bugs: Enter bugs at http://blackfin.uclinux.org/
@@ -63,6 +63,23 @@ ENTRY(_insw)
63 RTS; 63 RTS;
64ENDPROC(_insw) 64ENDPROC(_insw)
65 65
66ENTRY(_insw_8)
67 P0 = R0; /* P0 = port */
68 cli R3;
69 P1 = R1; /* P1 = address */
70 P2 = R2; /* P2 = count */
71 SSYNC;
72 LSETUP( .Lword8_loop_s, .Lword8_loop_e) LC0 = P2;
73.Lword8_loop_s: R0 = W[P0];
74 B[P1++] = R0;
75 R0 = R0 >> 8;
76 B[P1++] = R0;
77 NOP;
78.Lword8_loop_e: NOP;
79 sti R3;
80 RTS;
81ENDPROC(_insw_8)
82
66ENTRY(_insb) 83ENTRY(_insb)
67 P0 = R0; /* P0 = port */ 84 P0 = R0; /* P0 = port */
68 cli R3; 85 cli R3;
@@ -78,8 +95,6 @@ ENTRY(_insb)
78 RTS; 95 RTS;
79ENDPROC(_insb) 96ENDPROC(_insb)
80 97
81
82
83ENTRY(_insl_16) 98ENTRY(_insl_16)
84 P0 = R0; /* P0 = port */ 99 P0 = R0; /* P0 = port */
85 cli R3; 100 cli R3;
diff --git a/arch/blackfin/lib/outs.S b/arch/blackfin/lib/outs.S
index 4c3da8ae094e..4685b7aa0080 100644
--- a/arch/blackfin/lib/outs.S
+++ b/arch/blackfin/lib/outs.S
@@ -7,7 +7,7 @@
7 * Description: Implementation of outs{bwl} for BlackFin processors using zero overhead loops. 7 * Description: Implementation of outs{bwl} for BlackFin processors using zero overhead loops.
8 * 8 *
9 * Modified: Copyright (C) 2005 Bas Vermeulen, BuyWays BV <bas@buyways.nl> 9 * Modified: Copyright (C) 2005 Bas Vermeulen, BuyWays BV <bas@buyways.nl>
10 * Copyright 2004-2006 Analog Devices Inc. 10 * Copyright 2004-2008 Analog Devices Inc.
11 * 11 *
12 * Bugs: Enter bugs at http://blackfin.uclinux.org/ 12 * Bugs: Enter bugs at http://blackfin.uclinux.org/
13 * 13 *
@@ -63,3 +63,17 @@ ENTRY(_outsb)
63.Lbyte_loop_e: B[P0] = R0; 63.Lbyte_loop_e: B[P0] = R0;
64 RTS; 64 RTS;
65ENDPROC(_outsb) 65ENDPROC(_outsb)
66
67ENTRY(_outsw_8)
68 P0 = R0; /* P0 = port */
69 P1 = R1; /* P1 = address */
70 P2 = R2; /* P2 = count */
71
72 LSETUP( .Lword8_loop_s, .Lword8_loop_e) LC0 = P2;
73.Lword8_loop_s: R1 = B[P1++];
74 R0 = B[P1++];
75 R0 = R0 << 8;
76 R0 = R0 + R1;
77.Lword8_loop_e: W[P0] = R0;
78 RTS;
79ENDPROC(_outsw_8)
diff --git a/arch/blackfin/mach-bf527/boards/ezkit.c b/arch/blackfin/mach-bf527/boards/ezkit.c
index 8aa49f804228..5958eecefcf1 100644
--- a/arch/blackfin/mach-bf527/boards/ezkit.c
+++ b/arch/blackfin/mach-bf527/boards/ezkit.c
@@ -451,9 +451,6 @@ static struct platform_device net2272_bfin_device = {
451}; 451};
452#endif 452#endif
453 453
454#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
455/* all SPI peripherals info goes here */
456
457#if defined(CONFIG_MTD_M25P80) \ 454#if defined(CONFIG_MTD_M25P80) \
458 || defined(CONFIG_MTD_M25P80_MODULE) 455 || defined(CONFIG_MTD_M25P80_MODULE)
459static struct mtd_partition bfin_spi_flash_partitions[] = { 456static struct mtd_partition bfin_spi_flash_partitions[] = {
@@ -647,10 +644,10 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
647 { 644 {
648 .modalias = "ad7877", 645 .modalias = "ad7877",
649 .platform_data = &bfin_ad7877_ts_info, 646 .platform_data = &bfin_ad7877_ts_info,
650 .irq = IRQ_PF6, 647 .irq = IRQ_PF8,
651 .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */ 648 .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */
652 .bus_num = 0, 649 .bus_num = 0,
653 .chip_select = 1, 650 .chip_select = 2,
654 .controller_data = &spi_ad7877_chip_info, 651 .controller_data = &spi_ad7877_chip_info,
655 }, 652 },
656#endif 653#endif
@@ -676,6 +673,7 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
676#endif 673#endif
677}; 674};
678 675
676#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
679/* SPI controller data */ 677/* SPI controller data */
680static struct bfin5xx_spi_master bfin_spi0_info = { 678static struct bfin5xx_spi_master bfin_spi0_info = {
681 .num_chipselect = 8, 679 .num_chipselect = 8,
@@ -799,13 +797,11 @@ static struct i2c_board_info __initdata bfin_i2c_board_info[] = {
799#if defined(CONFIG_TWI_LCD) || defined(CONFIG_TWI_LCD_MODULE) 797#if defined(CONFIG_TWI_LCD) || defined(CONFIG_TWI_LCD_MODULE)
800 { 798 {
801 I2C_BOARD_INFO("pcf8574_lcd", 0x22), 799 I2C_BOARD_INFO("pcf8574_lcd", 0x22),
802 .type = "pcf8574_lcd",
803 }, 800 },
804#endif 801#endif
805#if defined(CONFIG_TWI_KEYPAD) || defined(CONFIG_TWI_KEYPAD_MODULE) 802#if defined(CONFIG_TWI_KEYPAD) || defined(CONFIG_TWI_KEYPAD_MODULE)
806 { 803 {
807 I2C_BOARD_INFO("pcf8574_keypad", 0x27), 804 I2C_BOARD_INFO("pcf8574_keypad", 0x27),
808 .type = "pcf8574_keypad",
809 .irq = IRQ_PF8, 805 .irq = IRQ_PF8,
810 }, 806 },
811#endif 807#endif
@@ -1020,10 +1016,7 @@ static int __init stamp_init(void)
1020#endif 1016#endif
1021 1017
1022 platform_add_devices(stamp_devices, ARRAY_SIZE(stamp_devices)); 1018 platform_add_devices(stamp_devices, ARRAY_SIZE(stamp_devices));
1023#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) 1019 spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
1024 spi_register_board_info(bfin_spi_board_info,
1025 ARRAY_SIZE(bfin_spi_board_info));
1026#endif
1027 1020
1028#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE) 1021#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
1029 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN; 1022 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN;
diff --git a/arch/blackfin/mach-bf533/boards/ezkit.c b/arch/blackfin/mach-bf533/boards/ezkit.c
index 9d28415163ea..079389cbd859 100644
--- a/arch/blackfin/mach-bf533/boards/ezkit.c
+++ b/arch/blackfin/mach-bf533/boards/ezkit.c
@@ -87,9 +87,6 @@ static struct platform_device smc91x_device = {
87}; 87};
88#endif 88#endif
89 89
90#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
91/* all SPI peripherals info goes here */
92
93#if defined(CONFIG_MTD_M25P80) || defined(CONFIG_MTD_M25P80_MODULE) 90#if defined(CONFIG_MTD_M25P80) || defined(CONFIG_MTD_M25P80_MODULE)
94static struct mtd_partition bfin_spi_flash_partitions[] = { 91static struct mtd_partition bfin_spi_flash_partitions[] = {
95 { 92 {
@@ -189,6 +186,7 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
189#endif 186#endif
190}; 187};
191 188
189#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
192/* SPI (0) */ 190/* SPI (0) */
193static struct resource bfin_spi0_resource[] = { 191static struct resource bfin_spi0_resource[] = {
194 [0] = { 192 [0] = {
@@ -425,9 +423,7 @@ static int __init ezkit_init(void)
425{ 423{
426 printk(KERN_INFO "%s(): registering device resources\n", __func__); 424 printk(KERN_INFO "%s(): registering device resources\n", __func__);
427 platform_add_devices(ezkit_devices, ARRAY_SIZE(ezkit_devices)); 425 platform_add_devices(ezkit_devices, ARRAY_SIZE(ezkit_devices));
428#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
429 spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info)); 426 spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
430#endif
431 427
432#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE) 428#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
433 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN; 429 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN;
diff --git a/arch/blackfin/mach-bf533/boards/stamp.c b/arch/blackfin/mach-bf533/boards/stamp.c
index 7fd35fb32fd5..13ae49515f73 100644
--- a/arch/blackfin/mach-bf533/boards/stamp.c
+++ b/arch/blackfin/mach-bf533/boards/stamp.c
@@ -111,7 +111,7 @@ static struct platform_device net2272_bfin_device = {
111}; 111};
112#endif 112#endif
113 113
114#if defined(CONFIG_MTD_BF5xx) || defined(CONFIG_MTD_BF5xx_MODULE) 114#if defined(CONFIG_MTD_BFIN_ASYNC) || defined(CONFIG_MTD_BFIN_ASYNC_MODULE)
115static struct mtd_partition stamp_partitions[] = { 115static struct mtd_partition stamp_partitions[] = {
116 { 116 {
117 .name = "Bootloader", 117 .name = "Bootloader",
@@ -141,13 +141,17 @@ static struct resource stamp_flash_resource[] = {
141 .end = 0x203fffff, 141 .end = 0x203fffff,
142 .flags = IORESOURCE_MEM, 142 .flags = IORESOURCE_MEM,
143 }, { 143 }, {
144 .start = CONFIG_ENET_FLASH_PIN, 144 .start = 0x7BB07BB0, /* AMBCTL0 setting when accessing flash */
145 .end = 0x7BB07BB0, /* AMBCTL1 setting when accessing flash */
146 .flags = IORESOURCE_MEM,
147 }, {
148 .start = GPIO_PF0,
145 .flags = IORESOURCE_IRQ, 149 .flags = IORESOURCE_IRQ,
146 } 150 }
147}; 151};
148 152
149static struct platform_device stamp_flash_device = { 153static struct platform_device stamp_flash_device = {
150 .name = "BF5xx-Flash", 154 .name = "bfin-async-flash",
151 .id = 0, 155 .id = 0,
152 .dev = { 156 .dev = {
153 .platform_data = &stamp_flash_data, 157 .platform_data = &stamp_flash_data,
@@ -157,9 +161,6 @@ static struct platform_device stamp_flash_device = {
157}; 161};
158#endif 162#endif
159 163
160#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
161/* all SPI peripherals info goes here */
162
163#if defined(CONFIG_MTD_M25P80) || defined(CONFIG_MTD_M25P80_MODULE) 164#if defined(CONFIG_MTD_M25P80) || defined(CONFIG_MTD_M25P80_MODULE)
164static struct mtd_partition bfin_spi_flash_partitions[] = { 165static struct mtd_partition bfin_spi_flash_partitions[] = {
165 { 166 {
@@ -316,6 +317,7 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
316#endif 317#endif
317}; 318};
318 319
320#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
319/* SPI (0) */ 321/* SPI (0) */
320static struct resource bfin_spi0_resource[] = { 322static struct resource bfin_spi0_resource[] = {
321 [0] = { 323 [0] = {
@@ -595,7 +597,7 @@ static struct platform_device *stamp_devices[] __initdata = {
595 597
596 &bfin_gpios_device, 598 &bfin_gpios_device,
597 599
598#if defined(CONFIG_MTD_BF5xx) || defined(CONFIG_MTD_BF5xx_MODULE) 600#if defined(CONFIG_MTD_BFIN_ASYNC) || defined(CONFIG_MTD_BFIN_ASYNC_MODULE)
599 &stamp_flash_device, 601 &stamp_flash_device,
600#endif 602#endif
601}; 603};
@@ -617,15 +619,13 @@ static int __init stamp_init(void)
617 619
618#if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE) 620#if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE)
619 /* setup BF533_STAMP CPLD to route AMS3 to Ethernet MAC */ 621 /* setup BF533_STAMP CPLD to route AMS3 to Ethernet MAC */
620 bfin_write_FIO_DIR(bfin_read_FIO_DIR() | (1 << CONFIG_ENET_FLASH_PIN)); 622 bfin_write_FIO_DIR(bfin_read_FIO_DIR() | PF0);
621 bfin_write_FIO_FLAG_S(1 << CONFIG_ENET_FLASH_PIN); 623 bfin_write_FIO_FLAG_S(PF0);
622 SSYNC(); 624 SSYNC();
623#endif 625#endif
624 626
625#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) 627 spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
626 spi_register_board_info(bfin_spi_board_info, 628
627 ARRAY_SIZE(bfin_spi_board_info));
628#endif
629#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE) 629#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
630 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN; 630 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN;
631#endif 631#endif
@@ -636,8 +636,8 @@ arch_initcall(stamp_init);
636 636
637void native_machine_restart(char *cmd) 637void native_machine_restart(char *cmd)
638{ 638{
639#define BIT_TO_SET (1 << CONFIG_ENET_FLASH_PIN) 639 /* workaround pull up on cpld / flash pin not being strong enough */
640 bfin_write_FIO_INEN(~BIT_TO_SET); 640 bfin_write_FIO_INEN(~PF0);
641 bfin_write_FIO_DIR(BIT_TO_SET); 641 bfin_write_FIO_DIR(PF0);
642 bfin_write_FIO_FLAG_C(BIT_TO_SET); 642 bfin_write_FIO_FLAG_C(PF0);
643} 643}
diff --git a/arch/blackfin/mach-bf537/boards/Makefile b/arch/blackfin/mach-bf537/boards/Makefile
index 87e450f29e37..c94f7a5b8211 100644
--- a/arch/blackfin/mach-bf537/boards/Makefile
+++ b/arch/blackfin/mach-bf537/boards/Makefile
@@ -3,7 +3,7 @@
3# 3#
4 4
5obj-$(CONFIG_GENERIC_BF537_BOARD) += generic_board.o 5obj-$(CONFIG_GENERIC_BF537_BOARD) += generic_board.o
6obj-$(CONFIG_BFIN537_STAMP) += stamp.o led.o 6obj-$(CONFIG_BFIN537_STAMP) += stamp.o
7obj-$(CONFIG_BFIN537_BLUETECHNIX_CM) += cm_bf537.o 7obj-$(CONFIG_BFIN537_BLUETECHNIX_CM) += cm_bf537.o
8obj-$(CONFIG_PNAV10) += pnav10.o 8obj-$(CONFIG_PNAV10) += pnav10.o
9obj-$(CONFIG_CAMSIG_MINOTAUR) += minotaur.o 9obj-$(CONFIG_CAMSIG_MINOTAUR) += minotaur.o
diff --git a/arch/blackfin/mach-bf537/boards/led.S b/arch/blackfin/mach-bf537/boards/led.S
deleted file mode 100644
index 4e9ea4283e5f..000000000000
--- a/arch/blackfin/mach-bf537/boards/led.S
+++ /dev/null
@@ -1,183 +0,0 @@
1/****************************************************
2 * LED1 ---- PF6 LED2 ---- PF7 *
3 * LED3 ---- PF8 LED4 ---- PF9 *
4 * LED5 ---- PF10 LED6 ---- PF11 *
5 ****************************************************/
6
7#include <linux/linkage.h>
8#include <asm/blackfin.h>
9
10/* All functions in this file save the registers they uses.
11 So there is no need to save any registers before calling them. */
12
13 .text;
14
15/* Initialize LEDs. */
16
17ENTRY(_led_init)
18 LINK 12;
19 [--SP] = P0;
20 [--SP] = R0;
21 [--SP] = R1;
22 [--SP] = R2;
23 R1 = PF6|PF7|PF8|PF9|PF10|PF11 (Z);
24 R2 = ~R1;
25
26 P0.H = hi(PORTF_FER);
27 P0.L = lo(PORTF_FER);
28 R0 = W[P0](Z);
29 SSYNC;
30 R0 = R0 & R2;
31 W[P0] = R0.L;
32 SSYNC;
33
34 P0.H = hi(PORTFIO_DIR);
35 P0.L = lo(PORTFIO_DIR);
36 R0 = W[P0](Z);
37 SSYNC;
38 R0 = R0 | R1;
39 W[P0] = R0.L;
40 SSYNC;
41
42 P0.H = hi(PORTFIO_INEN);
43 P0.L = lo(PORTFIO_INEN);
44 R0 = W[P0](Z);
45 SSYNC;
46 R0 = R0 & R2;
47 W[P0] = R0.L;
48 SSYNC;
49
50 R2 = [SP++];
51 R1 = [SP++];
52 R0 = [SP++];
53 P0 = [SP++];
54 UNLINK;
55 RTS;
56 .size _led_init, .-_led_init
57
58/* Set one LED on. Leave other LEDs unchanged.
59 It expects the LED number passed through R0. */
60
61ENTRY(_led_on)
62 LINK 12;
63 [--SP] = P0;
64 [--SP] = R1;
65 CALL _led_init;
66 R1 = 1;
67 R0 += 5;
68 R1 <<= R0;
69 P0.H = hi(PORTFIO);
70 P0.L = lo(PORTFIO);
71 R0 = W[P0](Z);
72 SSYNC;
73 R0 = R0 | R1;
74 W[P0] = R0.L;
75 SSYNC;
76 R1 = [SP++];
77 P0 = [SP++];
78 UNLINK;
79 RTS;
80 .size _led_on, .-_led_on
81
82/* Set one LED off. Leave other LEDs unchanged. */
83
84ENTRY(_led_off)
85 LINK 12;
86 [--SP] = P0;
87 [--SP] = R1;
88 CALL _led_init;
89 R1 = 1;
90 R0 += 5;
91 R1 <<= R0;
92 R1 = ~R1;
93 P0.H = hi(PORTFIO);
94 P0.L = lo(PORTFIO);
95 R0 = W[P0](Z);
96 SSYNC;
97 R0 = R0 & R1;
98 W[P0] = R0.L;
99 SSYNC;
100 R1 = [SP++];
101 P0 = [SP++];
102 UNLINK;
103 RTS;
104 .size _led_off, .-_led_off
105
106/* Toggle one LED. Leave other LEDs unchanged. */
107
108ENTRY(_led_toggle)
109 LINK 12;
110 [--SP] = P0;
111 [--SP] = R1;
112 CALL _led_init;
113 R1 = 1;
114 R0 += 5;
115 R1 <<= R0;
116 P0.H = hi(PORTFIO);
117 P0.L = lo(PORTFIO);
118 R0 = W[P0](Z);
119 SSYNC;
120 R0 = R0 ^ R1;
121 W[P0] = R0.L;
122 SSYNC;
123 R1 = [SP++];
124 P0 = [SP++];
125 UNLINK;
126 RTS;
127 .size _led_toggle, .-_led_toggle
128
129/* Display the number using LEDs in binary format. */
130
131ENTRY(_led_disp_num)
132 LINK 12;
133 [--SP] = P0;
134 [--SP] = R1;
135 [--SP] = R2;
136 CALL _led_init;
137 R1 = 0x3f(X);
138 R0 = R0 & R1;
139 R2 = 6(X);
140 R0 <<= R2;
141 R1 <<= R2;
142 P0.H = hi(PORTFIO);
143 P0.L = lo(PORTFIO);
144 R2 = W[P0](Z);
145 SSYNC;
146 R1 = ~R1;
147 R2 = R2 & R1;
148 R2 = R2 | R0;
149 W[P0] = R2.L;
150 SSYNC;
151 R2 = [SP++];
152 R1 = [SP++];
153 P0 = [SP++];
154 UNLINK;
155 RTS;
156 .size _led_disp_num, .-_led_disp_num
157
158/* Toggle the number using LEDs in binary format. */
159
160ENTRY(_led_toggle_num)
161 LINK 12;
162 [--SP] = P0;
163 [--SP] = R1;
164 [--SP] = R2;
165 CALL _led_init;
166 R1 = 0x3f(X);
167 R0 = R0 & R1;
168 R1 = 6(X);
169 R0 <<= R1;
170 P0.H = hi(PORTFIO);
171 P0.L = lo(PORTFIO);
172 R1 = W[P0](Z);
173 SSYNC;
174 R1 = R1 ^ R0;
175 W[P0] = R1.L;
176 SSYNC;
177 R2 = [SP++];
178 R1 = [SP++];
179 P0 = [SP++];
180 UNLINK;
181 RTS;
182 .size _led_toggle_num, .-_led_toggle_num
183
diff --git a/arch/blackfin/mach-bf537/boards/stamp.c b/arch/blackfin/mach-bf537/boards/stamp.c
index 9a756d1f3d73..671f9d67f23a 100644
--- a/arch/blackfin/mach-bf537/boards/stamp.c
+++ b/arch/blackfin/mach-bf537/boards/stamp.c
@@ -400,9 +400,6 @@ static struct platform_device stamp_flash_device = {
400}; 400};
401#endif 401#endif
402 402
403#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
404/* all SPI peripherals info goes here */
405
406#if defined(CONFIG_MTD_M25P80) \ 403#if defined(CONFIG_MTD_M25P80) \
407 || defined(CONFIG_MTD_M25P80_MODULE) 404 || defined(CONFIG_MTD_M25P80_MODULE)
408static struct mtd_partition bfin_spi_flash_partitions[] = { 405static struct mtd_partition bfin_spi_flash_partitions[] = {
@@ -629,6 +626,7 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
629#endif 626#endif
630}; 627};
631 628
629#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
632/* SPI controller data */ 630/* SPI controller data */
633static struct bfin5xx_spi_master bfin_spi0_info = { 631static struct bfin5xx_spi_master bfin_spi0_info = {
634 .num_chipselect = 8, 632 .num_chipselect = 8,
@@ -939,10 +937,7 @@ static int __init stamp_init(void)
939#endif 937#endif
940 938
941 platform_add_devices(stamp_devices, ARRAY_SIZE(stamp_devices)); 939 platform_add_devices(stamp_devices, ARRAY_SIZE(stamp_devices));
942#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) 940 spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
943 spi_register_board_info(bfin_spi_board_info,
944 ARRAY_SIZE(bfin_spi_board_info));
945#endif
946 941
947#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE) 942#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
948 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN; 943 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN;
diff --git a/arch/blackfin/mach-bf548/boards/Makefile b/arch/blackfin/mach-bf548/boards/Makefile
index eed161dd7845..319ef54c4221 100644
--- a/arch/blackfin/mach-bf548/boards/Makefile
+++ b/arch/blackfin/mach-bf548/boards/Makefile
@@ -2,5 +2,5 @@
2# arch/blackfin/mach-bf548/boards/Makefile 2# arch/blackfin/mach-bf548/boards/Makefile
3# 3#
4 4
5obj-$(CONFIG_BFIN548_EZKIT) += ezkit.o led.o 5obj-$(CONFIG_BFIN548_EZKIT) += ezkit.o
6obj-$(CONFIG_BFIN548_BLUETECHNIX_CM) += cm_bf548.o 6obj-$(CONFIG_BFIN548_BLUETECHNIX_CM) += cm_bf548.o
diff --git a/arch/blackfin/mach-bf548/boards/cm_bf548.c b/arch/blackfin/mach-bf548/boards/cm_bf548.c
index 3b74f96d3590..4f4ae8787edf 100644
--- a/arch/blackfin/mach-bf548/boards/cm_bf548.c
+++ b/arch/blackfin/mach-bf548/boards/cm_bf548.c
@@ -684,7 +684,7 @@ static struct platform_device *cm_bf548_devices[] __initdata = {
684 684
685static int __init cm_bf548_init(void) 685static int __init cm_bf548_init(void)
686{ 686{
687 printk(KERN_INFO "%s(): registering device resources\n", __FUNCTION__); 687 printk(KERN_INFO "%s(): registering device resources\n", __func__);
688 platform_add_devices(cm_bf548_devices, ARRAY_SIZE(cm_bf548_devices)); 688 platform_add_devices(cm_bf548_devices, ARRAY_SIZE(cm_bf548_devices));
689 689
690#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) 690#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
diff --git a/arch/blackfin/mach-bf548/boards/ezkit.c b/arch/blackfin/mach-bf548/boards/ezkit.c
index d1682bb37509..af7c211a580e 100644
--- a/arch/blackfin/mach-bf548/boards/ezkit.c
+++ b/arch/blackfin/mach-bf548/boards/ezkit.c
@@ -412,8 +412,6 @@ static struct platform_device ezkit_flash_device = {
412}; 412};
413#endif 413#endif
414 414
415#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
416/* all SPI peripherals info goes here */
417#if defined(CONFIG_MTD_M25P80) \ 415#if defined(CONFIG_MTD_M25P80) \
418 || defined(CONFIG_MTD_M25P80_MODULE) 416 || defined(CONFIG_MTD_M25P80_MODULE)
419/* SPI flash chip (m25p16) */ 417/* SPI flash chip (m25p16) */
@@ -481,7 +479,7 @@ static struct bfin5xx_spi_chip spidev_chip_info = {
481}; 479};
482#endif 480#endif
483 481
484static struct spi_board_info bf54x_spi_board_info[] __initdata = { 482static struct spi_board_info bfin_spi_board_info[] __initdata = {
485#if defined(CONFIG_MTD_M25P80) \ 483#if defined(CONFIG_MTD_M25P80) \
486 || defined(CONFIG_MTD_M25P80_MODULE) 484 || defined(CONFIG_MTD_M25P80_MODULE)
487 { 485 {
@@ -527,6 +525,7 @@ static struct spi_board_info bf54x_spi_board_info[] __initdata = {
527#endif 525#endif
528}; 526};
529 527
528#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
530/* SPI (0) */ 529/* SPI (0) */
531static struct resource bfin_spi0_resource[] = { 530static struct resource bfin_spi0_resource[] = {
532 [0] = { 531 [0] = {
@@ -800,10 +799,7 @@ static int __init ezkit_init(void)
800 799
801 platform_add_devices(ezkit_devices, ARRAY_SIZE(ezkit_devices)); 800 platform_add_devices(ezkit_devices, ARRAY_SIZE(ezkit_devices));
802 801
803#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) 802 spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
804 spi_register_board_info(bf54x_spi_board_info,
805 ARRAY_SIZE(bf54x_spi_board_info));
806#endif
807 803
808 return 0; 804 return 0;
809} 805}
diff --git a/arch/blackfin/mach-bf548/boards/led.S b/arch/blackfin/mach-bf548/boards/led.S
deleted file mode 100644
index f47daf3770d0..000000000000
--- a/arch/blackfin/mach-bf548/boards/led.S
+++ /dev/null
@@ -1,172 +0,0 @@
1/****************************************************
2 * LED1 ---- PG6 LED2 ---- PG7 *
3 * LED3 ---- PG8 LED4 ---- PG9 *
4 * LED5 ---- PG10 LED6 ---- PG11 *
5 ****************************************************/
6
7#include <linux/linkage.h>
8#include <asm/blackfin.h>
9
10/* All functions in this file save the registers they uses.
11 So there is no need to save any registers before calling them. */
12
13 .text;
14
15/* Initialize LEDs. */
16
17ENTRY(_led_init)
18 LINK 0;
19 [--SP] = P0;
20 [--SP] = R0;
21 [--SP] = R1;
22 [--SP] = R2;
23 R1 = (PG6|PG7|PG8|PG9|PG10|PG11)(Z);
24 R2 = ~R1;
25
26 P0.H = hi(PORTG_FER);
27 P0.L = lo(PORTG_FER);
28 R0 = W[P0](Z);
29 SSYNC;
30 R0 = R0 & R2;
31 W[P0] = R0.L;
32 SSYNC;
33
34 P0.H = hi(PORTG_DIR_SET);
35 P0.L = lo(PORTG_DIR_SET);
36 W[P0] = R1.L;
37 SSYNC;
38
39 P0.H = hi(PORTG_INEN);
40 P0.L = lo(PORTG_INEN);
41 R0 = W[P0](Z);
42 SSYNC;
43 R0 = R0 & R2;
44 W[P0] = R0.L;
45 SSYNC;
46
47 R2 = [SP++];
48 R1 = [SP++];
49 R0 = [SP++];
50 P0 = [SP++];
51 RTS;
52 .size _led_init, .-_led_init
53
54/* Set one LED on. Leave other LEDs unchanged.
55 It expects the LED number passed through R0. */
56
57ENTRY(_led_on)
58 LINK 0;
59 [--SP] = P0;
60 [--SP] = R1;
61 CALL _led_init;
62 R1 = 1;
63 R0 += 5;
64 R1 <<= R0;
65 P0.H = hi(PORTG_SET);
66 P0.L = lo(PORTG_SET);
67 W[P0] = R1.L;
68 SSYNC;
69 R1 = [SP++];
70 P0 = [SP++];
71 UNLINK;
72 RTS;
73 .size _led_on, .-_led_on
74
75/* Set one LED off. Leave other LEDs unchanged. */
76
77ENTRY(_led_off)
78 LINK 0;
79 [--SP] = P0;
80 [--SP] = R1;
81 CALL _led_init;
82 R1 = 1;
83 R0 += 5;
84 R1 <<= R0;
85 P0.H = hi(PORTG_CLEAR);
86 P0.L = lo(PORTG_CLEAR);
87 W[P0] = R1.L;
88 SSYNC;
89 R1 = [SP++];
90 P0 = [SP++];
91 UNLINK;
92 RTS;
93 .size _led_off, .-_led_off
94
95/* Toggle one LED. Leave other LEDs unchanged. */
96
97ENTRY(_led_toggle)
98 LINK 0;
99 [--SP] = P0;
100 [--SP] = R1;
101 CALL _led_init;
102 R1 = 1;
103 R0 += 5;
104 R1 <<= R0;
105 P0.H = hi(PORTG);
106 P0.L = lo(PORTG);
107 R0 = W[P0](Z);
108 SSYNC;
109 R0 = R0 ^ R1;
110 W[P0] = R0.L;
111 SSYNC;
112 R1 = [SP++];
113 P0 = [SP++];
114 UNLINK;
115 RTS;
116 .size _led_toggle, .-_led_toggle
117
118/* Display the number using LEDs in binary format. */
119
120ENTRY(_led_disp_num)
121 LINK 0;
122 [--SP] = P0;
123 [--SP] = R1;
124 [--SP] = R2;
125 CALL _led_init;
126 R1 = 0x3f(X);
127 R0 = R0 & R1;
128 R2 = 6(X);
129 R0 <<= R2;
130 R1 <<= R2;
131 P0.H = hi(PORTG);
132 P0.L = lo(PORTG);
133 R2 = W[P0](Z);
134 SSYNC;
135 R1 = ~R1;
136 R2 = R2 & R1;
137 R2 = R2 | R0;
138 W[P0] = R2.L;
139 SSYNC;
140 R2 = [SP++];
141 R1 = [SP++];
142 P0 = [SP++];
143 UNLINK;
144 RTS;
145 .size _led_disp_num, .-_led_disp_num
146
147/* Toggle the number using LEDs in binary format. */
148
149ENTRY(_led_toggle_num)
150 LINK 0;
151 [--SP] = P0;
152 [--SP] = R1;
153 [--SP] = R2;
154 CALL _led_init;
155 R1 = 0x3f(X);
156 R0 = R0 & R1;
157 R1 = 6(X);
158 R0 <<= R1;
159 P0.H = hi(PORTG);
160 P0.L = lo(PORTG);
161 R1 = W[P0](Z);
162 SSYNC;
163 R1 = R1 ^ R0;
164 W[P0] = R1.L;
165 SSYNC;
166 R2 = [SP++];
167 R1 = [SP++];
168 P0 = [SP++];
169 UNLINK;
170 RTS;
171 .size _led_toggle_num, .-_led_toggle_num
172
diff --git a/arch/blackfin/mach-bf561/boards/ezkit.c b/arch/blackfin/mach-bf561/boards/ezkit.c
index 61d8f7648b24..bc6feded8569 100644
--- a/arch/blackfin/mach-bf561/boards/ezkit.c
+++ b/arch/blackfin/mach-bf561/boards/ezkit.c
@@ -280,7 +280,6 @@ static struct platform_device ezkit_flash_device = {
280}; 280};
281#endif 281#endif
282 282
283#ifdef CONFIG_SPI_BFIN
284#if defined(CONFIG_SND_BLACKFIN_AD1836) \ 283#if defined(CONFIG_SND_BLACKFIN_AD1836) \
285 || defined(CONFIG_SND_BLACKFIN_AD1836_MODULE) 284 || defined(CONFIG_SND_BLACKFIN_AD1836_MODULE)
286static struct bfin5xx_spi_chip ad1836_spi_chip_info = { 285static struct bfin5xx_spi_chip ad1836_spi_chip_info = {
@@ -295,8 +294,8 @@ static struct bfin5xx_spi_chip spidev_chip_info = {
295 .bits_per_word = 8, 294 .bits_per_word = 8,
296}; 295};
297#endif 296#endif
298#endif
299 297
298#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
300/* SPI (0) */ 299/* SPI (0) */
301static struct resource bfin_spi0_resource[] = { 300static struct resource bfin_spi0_resource[] = {
302 [0] = { 301 [0] = {
@@ -327,6 +326,7 @@ static struct platform_device bfin_spi0_device = {
327 .platform_data = &bfin_spi0_info, /* Passed to driver */ 326 .platform_data = &bfin_spi0_info, /* Passed to driver */
328 }, 327 },
329}; 328};
329#endif
330 330
331static struct spi_board_info bfin_spi_board_info[] __initdata = { 331static struct spi_board_info bfin_spi_board_info[] __initdata = {
332#if defined(CONFIG_SND_BLACKFIN_AD1836) \ 332#if defined(CONFIG_SND_BLACKFIN_AD1836) \
@@ -537,10 +537,7 @@ static int __init ezkit_init(void)
537 SSYNC(); 537 SSYNC();
538#endif 538#endif
539 539
540#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) 540 spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
541 spi_register_board_info(bfin_spi_board_info,
542 ARRAY_SIZE(bfin_spi_board_info));
543#endif
544 541
545#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE) 542#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
546 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN; 543 irq_desc[PATA_INT].status |= IRQ_NOAUTOEN;
diff --git a/arch/cris/kernel/process.c b/arch/cris/kernel/process.c
index ef2db8fd102a..5933656db5a2 100644
--- a/arch/cris/kernel/process.c
+++ b/arch/cris/kernel/process.c
@@ -38,7 +38,6 @@
38 */ 38 */
39 39
40static struct fs_struct init_fs = INIT_FS; 40static struct fs_struct init_fs = INIT_FS;
41static struct files_struct init_files = INIT_FILES;
42static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 41static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
43static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 42static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
44struct mm_struct init_mm = INIT_MM(init_mm); 43struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/frv/kernel/cmode.S b/arch/frv/kernel/cmode.S
index 81ba28ad2207..53deeb5d7e87 100644
--- a/arch/frv/kernel/cmode.S
+++ b/arch/frv/kernel/cmode.S
@@ -1,7 +1,7 @@
1/* cmode.S: clock mode management 1/* cmode.S: clock mode management
2 * 2 *
3 * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved. 3 * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved.
4 * Written by David Woodhouse (dwmw2@redhat.com) 4 * Written by David Woodhouse (dwmw2@infradead.org)
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
diff --git a/arch/frv/kernel/init_task.c b/arch/frv/kernel/init_task.c
index 22993932b3fc..e2198815b630 100644
--- a/arch/frv/kernel/init_task.c
+++ b/arch/frv/kernel/init_task.c
@@ -11,7 +11,6 @@
11 11
12 12
13static struct fs_struct init_fs = INIT_FS; 13static struct fs_struct init_fs = INIT_FS;
14static struct files_struct init_files = INIT_FILES;
15static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 14static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
16static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 15static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
17struct mm_struct init_mm = INIT_MM(init_mm); 16struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/frv/kernel/sleep.S b/arch/frv/kernel/sleep.S
index c9b2d51ab9ad..f67bf73cd2cc 100644
--- a/arch/frv/kernel/sleep.S
+++ b/arch/frv/kernel/sleep.S
@@ -1,7 +1,7 @@
1/* sleep.S: power saving mode entry 1/* sleep.S: power saving mode entry
2 * 2 *
3 * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved. 3 * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved.
4 * Written by David Woodhouse (dwmw2@redhat.com) 4 * Written by David Woodhouse (dwmw2@infradead.org)
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
diff --git a/arch/frv/mb93090-mb00/pci-dma-nommu.c b/arch/frv/mb93090-mb00/pci-dma-nommu.c
index 4985466b1a7c..64ee58d748be 100644
--- a/arch/frv/mb93090-mb00/pci-dma-nommu.c
+++ b/arch/frv/mb93090-mb00/pci-dma-nommu.c
@@ -1,7 +1,7 @@
1/* pci-dma-nommu.c: Dynamic DMA mapping support for the FRV 1/* pci-dma-nommu.c: Dynamic DMA mapping support for the FRV
2 * 2 *
3 * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved. 3 * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved.
4 * Written by David Woodhouse (dwmw2@redhat.com) 4 * Written by David Woodhouse (dwmw2@infradead.org)
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
diff --git a/arch/frv/mm/init.c b/arch/frv/mm/init.c
index b841ecfd5d5a..9af7740f32fb 100644
--- a/arch/frv/mm/init.c
+++ b/arch/frv/mm/init.c
@@ -26,6 +26,7 @@
26#include <linux/types.h> 26#include <linux/types.h>
27#include <linux/bootmem.h> 27#include <linux/bootmem.h>
28#include <linux/highmem.h> 28#include <linux/highmem.h>
29#include <linux/module.h>
29 30
30#include <asm/setup.h> 31#include <asm/setup.h>
31#include <asm/segment.h> 32#include <asm/segment.h>
@@ -56,7 +57,9 @@ DEFINE_PER_CPU(struct mmu_gather, mmu_gathers);
56 */ 57 */
57static unsigned long empty_bad_page_table; 58static unsigned long empty_bad_page_table;
58static unsigned long empty_bad_page; 59static unsigned long empty_bad_page;
60
59unsigned long empty_zero_page; 61unsigned long empty_zero_page;
62EXPORT_SYMBOL(empty_zero_page);
60 63
61/*****************************************************************************/ 64/*****************************************************************************/
62/* 65/*
diff --git a/arch/h8300/kernel/init_task.c b/arch/h8300/kernel/init_task.c
index 19272c2ac56a..93a4899e46c2 100644
--- a/arch/h8300/kernel/init_task.c
+++ b/arch/h8300/kernel/init_task.c
@@ -13,7 +13,6 @@
13#include <asm/pgtable.h> 13#include <asm/pgtable.h>
14 14
15static struct fs_struct init_fs = INIT_FS; 15static struct fs_struct init_fs = INIT_FS;
16static struct files_struct init_files = INIT_FILES;
17static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 16static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
18static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 17static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
19struct mm_struct init_mm = INIT_MM(init_mm); 18struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig
index 0df5f6f75edf..16be41446b5b 100644
--- a/arch/ia64/Kconfig
+++ b/arch/ia64/Kconfig
@@ -135,6 +135,7 @@ config IA64_GENERIC
135 HP-zx1/sx1000 For HP systems 135 HP-zx1/sx1000 For HP systems
136 HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices. 136 HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices.
137 SGI-SN2 For SGI Altix systems 137 SGI-SN2 For SGI Altix systems
138 SGI-UV For SGI UV systems
138 Ski-simulator For the HP simulator <http://www.hpl.hp.com/research/linux/ski/> 139 Ski-simulator For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
139 140
140 If you don't know what to do, choose "generic". 141 If you don't know what to do, choose "generic".
@@ -170,6 +171,18 @@ config IA64_SGI_SN2
170 to select this option. If in doubt, select ia64 generic support 171 to select this option. If in doubt, select ia64 generic support
171 instead. 172 instead.
172 173
174config IA64_SGI_UV`
175 bool "SGI-UV`"
176 select NUMA
177 select ACPI_NUMA
178 select SWIOTLB
179 help
180 Selecting this option will optimize the kernel for use on UV based
181 systems, but the resulting kernel binary will not run on other
182 types of ia64 systems. If you have an SGI UV system, it's safe
183 to select this option. If in doubt, select ia64 generic support
184 instead.
185
173config IA64_HP_SIM 186config IA64_HP_SIM
174 bool "Ski-simulator" 187 bool "Ski-simulator"
175 select SWIOTLB 188 select SWIOTLB
diff --git a/arch/ia64/Makefile b/arch/ia64/Makefile
index ec4cca477f49..88f1a55c6c94 100644
--- a/arch/ia64/Makefile
+++ b/arch/ia64/Makefile
@@ -63,7 +63,7 @@ drivers-$(CONFIG_PCI) += arch/ia64/pci/
63drivers-$(CONFIG_IA64_HP_SIM) += arch/ia64/hp/sim/ 63drivers-$(CONFIG_IA64_HP_SIM) += arch/ia64/hp/sim/
64drivers-$(CONFIG_IA64_HP_ZX1) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ 64drivers-$(CONFIG_IA64_HP_ZX1) += arch/ia64/hp/common/ arch/ia64/hp/zx1/
65drivers-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ 65drivers-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/hp/common/ arch/ia64/hp/zx1/
66drivers-$(CONFIG_IA64_GENERIC) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/hp/sim/ arch/ia64/sn/ 66drivers-$(CONFIG_IA64_GENERIC) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/hp/sim/ arch/ia64/sn/ arch/ia64/uv/
67drivers-$(CONFIG_OPROFILE) += arch/ia64/oprofile/ 67drivers-$(CONFIG_OPROFILE) += arch/ia64/oprofile/
68 68
69boot := arch/ia64/hp/sim/boot 69boot := arch/ia64/hp/sim/boot
diff --git a/arch/ia64/ia32/ia32_support.c b/arch/ia64/ia32/ia32_support.c
index 896b1ebbfb26..a6965ddafc46 100644
--- a/arch/ia64/ia32/ia32_support.c
+++ b/arch/ia64/ia32/ia32_support.c
@@ -15,7 +15,6 @@
15#include <linux/kernel.h> 15#include <linux/kernel.h>
16#include <linux/init.h> 16#include <linux/init.h>
17#include <linux/mm.h> 17#include <linux/mm.h>
18#include <linux/personality.h>
19#include <linux/sched.h> 18#include <linux/sched.h>
20 19
21#include <asm/intrinsics.h> 20#include <asm/intrinsics.h>
@@ -29,7 +28,6 @@
29 28
30extern int die_if_kernel (char *str, struct pt_regs *regs, long err); 29extern int die_if_kernel (char *str, struct pt_regs *regs, long err);
31 30
32struct exec_domain ia32_exec_domain;
33struct page *ia32_shared_page[NR_CPUS]; 31struct page *ia32_shared_page[NR_CPUS];
34unsigned long *ia32_boot_gdt; 32unsigned long *ia32_boot_gdt;
35unsigned long *cpu_gdt_table[NR_CPUS]; 33unsigned long *cpu_gdt_table[NR_CPUS];
@@ -240,14 +238,6 @@ ia32_cpu_init (void)
240static int __init 238static int __init
241ia32_init (void) 239ia32_init (void)
242{ 240{
243 ia32_exec_domain.name = "Linux/x86";
244 ia32_exec_domain.handler = NULL;
245 ia32_exec_domain.pers_low = PER_LINUX32;
246 ia32_exec_domain.pers_high = PER_LINUX32;
247 ia32_exec_domain.signal_map = default_exec_domain.signal_map;
248 ia32_exec_domain.signal_invmap = default_exec_domain.signal_invmap;
249 register_exec_domain(&ia32_exec_domain);
250
251#if PAGE_SHIFT > IA32_PAGE_SHIFT 241#if PAGE_SHIFT > IA32_PAGE_SHIFT
252 { 242 {
253 extern struct kmem_cache *ia64_partial_page_cachep; 243 extern struct kmem_cache *ia64_partial_page_cachep;
diff --git a/arch/ia64/kernel/acpi.c b/arch/ia64/kernel/acpi.c
index 19709a079635..43687cc60dfb 100644
--- a/arch/ia64/kernel/acpi.c
+++ b/arch/ia64/kernel/acpi.c
@@ -117,7 +117,10 @@ acpi_get_sysname(void)
117 if (!strcmp(hdr->oem_id, "HP")) { 117 if (!strcmp(hdr->oem_id, "HP")) {
118 return "hpzx1"; 118 return "hpzx1";
119 } else if (!strcmp(hdr->oem_id, "SGI")) { 119 } else if (!strcmp(hdr->oem_id, "SGI")) {
120 return "sn2"; 120 if (!strcmp(hdr->oem_table_id + 4, "UV"))
121 return "uv";
122 else
123 return "sn2";
121 } 124 }
122 125
123 return "dig"; 126 return "dig";
@@ -130,6 +133,8 @@ acpi_get_sysname(void)
130 return "hpzx1_swiotlb"; 133 return "hpzx1_swiotlb";
131# elif defined (CONFIG_IA64_SGI_SN2) 134# elif defined (CONFIG_IA64_SGI_SN2)
132 return "sn2"; 135 return "sn2";
136# elif defined (CONFIG_IA64_SGI_UV)
137 return "uv";
133# elif defined (CONFIG_IA64_DIG) 138# elif defined (CONFIG_IA64_DIG)
134 return "dig"; 139 return "dig";
135# else 140# else
@@ -460,7 +465,6 @@ void __init acpi_numa_slit_init(struct acpi_table_slit *slit)
460 printk(KERN_ERR 465 printk(KERN_ERR
461 "ACPI 2.0 SLIT: size mismatch: %d expected, %d actual\n", 466 "ACPI 2.0 SLIT: size mismatch: %d expected, %d actual\n",
462 len, slit->header.length); 467 len, slit->header.length);
463 memset(numa_slit, 10, sizeof(numa_slit));
464 return; 468 return;
465 } 469 }
466 slit_table = slit; 470 slit_table = slit;
@@ -569,8 +573,14 @@ void __init acpi_numa_arch_fixup(void)
569 printk(KERN_INFO "Number of memory chunks in system = %d\n", 573 printk(KERN_INFO "Number of memory chunks in system = %d\n",
570 num_node_memblks); 574 num_node_memblks);
571 575
572 if (!slit_table) 576 if (!slit_table) {
577 for (i = 0; i < MAX_NUMNODES; i++)
578 for (j = 0; j < MAX_NUMNODES; j++)
579 node_distance(i, j) = i == j ? LOCAL_DISTANCE :
580 REMOTE_DISTANCE;
573 return; 581 return;
582 }
583
574 memset(numa_slit, -1, sizeof(numa_slit)); 584 memset(numa_slit, -1, sizeof(numa_slit));
575 for (i = 0; i < slit_table->locality_count; i++) { 585 for (i = 0; i < slit_table->locality_count; i++) {
576 if (!pxm_bit_test(i)) 586 if (!pxm_bit_test(i))
@@ -622,6 +632,9 @@ void acpi_unregister_gsi(u32 gsi)
622 if (acpi_irq_model == ACPI_IRQ_MODEL_PLATFORM) 632 if (acpi_irq_model == ACPI_IRQ_MODEL_PLATFORM)
623 return; 633 return;
624 634
635 if (has_8259 && gsi < 16)
636 return;
637
625 iosapic_unregister_intr(gsi); 638 iosapic_unregister_intr(gsi);
626} 639}
627 640
diff --git a/arch/ia64/kernel/entry.S b/arch/ia64/kernel/entry.S
index e49ad8c5dc69..ca2bb95726de 100644
--- a/arch/ia64/kernel/entry.S
+++ b/arch/ia64/kernel/entry.S
@@ -1156,6 +1156,9 @@ skip_rbs_switch:
1156 * r31 = current->thread_info->flags 1156 * r31 = current->thread_info->flags
1157 * On exit: 1157 * On exit:
1158 * p6 = TRUE if work-pending-check needs to be redone 1158 * p6 = TRUE if work-pending-check needs to be redone
1159 *
1160 * Interrupts are disabled on entry, reenabled depend on work, and
1161 * disabled on exit.
1159 */ 1162 */
1160.work_pending_syscall: 1163.work_pending_syscall:
1161 add r2=-8,r2 1164 add r2=-8,r2
@@ -1164,16 +1167,16 @@ skip_rbs_switch:
1164 st8 [r2]=r8 1167 st8 [r2]=r8
1165 st8 [r3]=r10 1168 st8 [r3]=r10
1166.work_pending: 1169.work_pending:
1167 tbit.z p6,p0=r31,TIF_NEED_RESCHED // current_thread_info()->need_resched==0? 1170 tbit.z p6,p0=r31,TIF_NEED_RESCHED // is resched not needed?
1168(p6) br.cond.sptk.few .notify 1171(p6) br.cond.sptk.few .notify
1169#ifdef CONFIG_PREEMPT 1172#ifdef CONFIG_PREEMPT
1170(pKStk) dep r21=-1,r0,PREEMPT_ACTIVE_BIT,1 1173(pKStk) dep r21=-1,r0,PREEMPT_ACTIVE_BIT,1
1171 ;; 1174 ;;
1172(pKStk) st4 [r20]=r21 1175(pKStk) st4 [r20]=r21
1173 ssm psr.i // enable interrupts
1174#endif 1176#endif
1177 ssm psr.i // enable interrupts
1175 br.call.spnt.many rp=schedule 1178 br.call.spnt.many rp=schedule
1176.ret9: cmp.eq p6,p0=r0,r0 // p6 <- 1 1179.ret9: cmp.eq p6,p0=r0,r0 // p6 <- 1 (re-check)
1177 rsm psr.i // disable interrupts 1180 rsm psr.i // disable interrupts
1178 ;; 1181 ;;
1179#ifdef CONFIG_PREEMPT 1182#ifdef CONFIG_PREEMPT
@@ -1182,13 +1185,13 @@ skip_rbs_switch:
1182(pKStk) st4 [r20]=r0 // preempt_count() <- 0 1185(pKStk) st4 [r20]=r0 // preempt_count() <- 0
1183#endif 1186#endif
1184(pLvSys)br.cond.sptk.few .work_pending_syscall_end 1187(pLvSys)br.cond.sptk.few .work_pending_syscall_end
1185 br.cond.sptk.many .work_processed_kernel // re-check 1188 br.cond.sptk.many .work_processed_kernel
1186 1189
1187.notify: 1190.notify:
1188(pUStk) br.call.spnt.many rp=notify_resume_user 1191(pUStk) br.call.spnt.many rp=notify_resume_user
1189.ret10: cmp.ne p6,p0=r0,r0 // p6 <- 0 1192.ret10: cmp.ne p6,p0=r0,r0 // p6 <- 0 (don't re-check)
1190(pLvSys)br.cond.sptk.few .work_pending_syscall_end 1193(pLvSys)br.cond.sptk.few .work_pending_syscall_end
1191 br.cond.sptk.many .work_processed_kernel // don't re-check 1194 br.cond.sptk.many .work_processed_kernel
1192 1195
1193.work_pending_syscall_end: 1196.work_pending_syscall_end:
1194 adds r2=PT(R8)+16,r12 1197 adds r2=PT(R8)+16,r12
@@ -1196,7 +1199,7 @@ skip_rbs_switch:
1196 ;; 1199 ;;
1197 ld8 r8=[r2] 1200 ld8 r8=[r2]
1198 ld8 r10=[r3] 1201 ld8 r10=[r3]
1199 br.cond.sptk.many .work_processed_syscall // re-check 1202 br.cond.sptk.many .work_processed_syscall
1200 1203
1201END(ia64_leave_kernel) 1204END(ia64_leave_kernel)
1202 1205
@@ -1234,9 +1237,12 @@ GLOBAL_ENTRY(ia64_invoke_schedule_tail)
1234END(ia64_invoke_schedule_tail) 1237END(ia64_invoke_schedule_tail)
1235 1238
1236 /* 1239 /*
1237 * Setup stack and call do_notify_resume_user(). Note that pSys and pNonSys need to 1240 * Setup stack and call do_notify_resume_user(), keeping interrupts
1238 * be set up by the caller. We declare 8 input registers so the system call 1241 * disabled.
1239 * args get preserved, in case we need to restart a system call. 1242 *
1243 * Note that pSys and pNonSys need to be set up by the caller.
1244 * We declare 8 input registers so the system call args get preserved,
1245 * in case we need to restart a system call.
1240 */ 1246 */
1241ENTRY(notify_resume_user) 1247ENTRY(notify_resume_user)
1242 .prologue ASM_UNW_PRLG_RP|ASM_UNW_PRLG_PFS, ASM_UNW_PRLG_GRSAVE(8) 1248 .prologue ASM_UNW_PRLG_RP|ASM_UNW_PRLG_PFS, ASM_UNW_PRLG_GRSAVE(8)
diff --git a/arch/ia64/kernel/init_task.c b/arch/ia64/kernel/init_task.c
index bc8efcad28b8..9d7e1c66faf4 100644
--- a/arch/ia64/kernel/init_task.c
+++ b/arch/ia64/kernel/init_task.c
@@ -18,7 +18,6 @@
18#include <asm/pgtable.h> 18#include <asm/pgtable.h>
19 19
20static struct fs_struct init_fs = INIT_FS; 20static struct fs_struct init_fs = INIT_FS;
21static struct files_struct init_files = INIT_FILES;
22static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 21static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
23static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 22static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
24struct mm_struct init_mm = INIT_MM(init_mm); 23struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/ia64/kernel/ivt.S b/arch/ia64/kernel/ivt.S
index 6678c49daba3..80b44ea052d7 100644
--- a/arch/ia64/kernel/ivt.S
+++ b/arch/ia64/kernel/ivt.S
@@ -1076,48 +1076,6 @@ END(ia64_syscall_setup)
1076 DBG_FAULT(15) 1076 DBG_FAULT(15)
1077 FAULT(15) 1077 FAULT(15)
1078 1078
1079 /*
1080 * Squatting in this space ...
1081 *
1082 * This special case dispatcher for illegal operation faults allows preserved
1083 * registers to be modified through a callback function (asm only) that is handed
1084 * back from the fault handler in r8. Up to three arguments can be passed to the
1085 * callback function by returning an aggregate with the callback as its first
1086 * element, followed by the arguments.
1087 */
1088ENTRY(dispatch_illegal_op_fault)
1089 .prologue
1090 .body
1091 SAVE_MIN_WITH_COVER
1092 ssm psr.ic | PSR_DEFAULT_BITS
1093 ;;
1094 srlz.i // guarantee that interruption collection is on
1095 ;;
1096(p15) ssm psr.i // restore psr.i
1097 adds r3=8,r2 // set up second base pointer for SAVE_REST
1098 ;;
1099 alloc r14=ar.pfs,0,0,1,0 // must be first in insn group
1100 mov out0=ar.ec
1101 ;;
1102 SAVE_REST
1103 PT_REGS_UNWIND_INFO(0)
1104 ;;
1105 br.call.sptk.many rp=ia64_illegal_op_fault
1106.ret0: ;;
1107 alloc r14=ar.pfs,0,0,3,0 // must be first in insn group
1108 mov out0=r9
1109 mov out1=r10
1110 mov out2=r11
1111 movl r15=ia64_leave_kernel
1112 ;;
1113 mov rp=r15
1114 mov b6=r8
1115 ;;
1116 cmp.ne p6,p0=0,r8
1117(p6) br.call.dpnt.many b6=b6 // call returns to ia64_leave_kernel
1118 br.sptk.many ia64_leave_kernel
1119END(dispatch_illegal_op_fault)
1120
1121 .org ia64_ivt+0x4000 1079 .org ia64_ivt+0x4000
1122///////////////////////////////////////////////////////////////////////////////////////// 1080/////////////////////////////////////////////////////////////////////////////////////////
1123// 0x4000 Entry 16 (size 64 bundles) Reserved 1081// 0x4000 Entry 16 (size 64 bundles) Reserved
@@ -1715,6 +1673,48 @@ END(ia32_interrupt)
1715 DBG_FAULT(67) 1673 DBG_FAULT(67)
1716 FAULT(67) 1674 FAULT(67)
1717 1675
1676 /*
1677 * Squatting in this space ...
1678 *
1679 * This special case dispatcher for illegal operation faults allows preserved
1680 * registers to be modified through a callback function (asm only) that is handed
1681 * back from the fault handler in r8. Up to three arguments can be passed to the
1682 * callback function by returning an aggregate with the callback as its first
1683 * element, followed by the arguments.
1684 */
1685ENTRY(dispatch_illegal_op_fault)
1686 .prologue
1687 .body
1688 SAVE_MIN_WITH_COVER
1689 ssm psr.ic | PSR_DEFAULT_BITS
1690 ;;
1691 srlz.i // guarantee that interruption collection is on
1692 ;;
1693(p15) ssm psr.i // restore psr.i
1694 adds r3=8,r2 // set up second base pointer for SAVE_REST
1695 ;;
1696 alloc r14=ar.pfs,0,0,1,0 // must be first in insn group
1697 mov out0=ar.ec
1698 ;;
1699 SAVE_REST
1700 PT_REGS_UNWIND_INFO(0)
1701 ;;
1702 br.call.sptk.many rp=ia64_illegal_op_fault
1703.ret0: ;;
1704 alloc r14=ar.pfs,0,0,3,0 // must be first in insn group
1705 mov out0=r9
1706 mov out1=r10
1707 mov out2=r11
1708 movl r15=ia64_leave_kernel
1709 ;;
1710 mov rp=r15
1711 mov b6=r8
1712 ;;
1713 cmp.ne p6,p0=0,r8
1714(p6) br.call.dpnt.many b6=b6 // call returns to ia64_leave_kernel
1715 br.sptk.many ia64_leave_kernel
1716END(dispatch_illegal_op_fault)
1717
1718#ifdef CONFIG_IA32_SUPPORT 1718#ifdef CONFIG_IA32_SUPPORT
1719 1719
1720 /* 1720 /*
diff --git a/arch/ia64/kernel/minstate.h b/arch/ia64/kernel/minstate.h
index 7c548ac52bbc..74b6d670aaef 100644
--- a/arch/ia64/kernel/minstate.h
+++ b/arch/ia64/kernel/minstate.h
@@ -15,6 +15,9 @@
15#define ACCOUNT_SYS_ENTER 15#define ACCOUNT_SYS_ENTER
16#endif 16#endif
17 17
18.section ".data.patch.rse", "a"
19.previous
20
18/* 21/*
19 * DO_SAVE_MIN switches to the kernel stacks (if necessary) and saves 22 * DO_SAVE_MIN switches to the kernel stacks (if necessary) and saves
20 * the minimum state necessary that allows us to turn psr.ic back 23 * the minimum state necessary that allows us to turn psr.ic back
@@ -40,7 +43,7 @@
40 * Note that psr.ic is NOT turned on by this macro. This is so that 43 * Note that psr.ic is NOT turned on by this macro. This is so that
41 * we can pass interruption state as arguments to a handler. 44 * we can pass interruption state as arguments to a handler.
42 */ 45 */
43#define DO_SAVE_MIN(COVER,SAVE_IFS,EXTRA) \ 46#define DO_SAVE_MIN(COVER,SAVE_IFS,EXTRA,WORKAROUND) \
44 mov r16=IA64_KR(CURRENT); /* M */ \ 47 mov r16=IA64_KR(CURRENT); /* M */ \
45 mov r27=ar.rsc; /* M */ \ 48 mov r27=ar.rsc; /* M */ \
46 mov r20=r1; /* A */ \ 49 mov r20=r1; /* A */ \
@@ -87,6 +90,7 @@
87 tbit.nz p15,p0=r29,IA64_PSR_I_BIT; \ 90 tbit.nz p15,p0=r29,IA64_PSR_I_BIT; \
88 mov r29=b0 \ 91 mov r29=b0 \
89 ;; \ 92 ;; \
93 WORKAROUND; \
90 adds r16=PT(R8),r1; /* initialize first base pointer */ \ 94 adds r16=PT(R8),r1; /* initialize first base pointer */ \
91 adds r17=PT(R9),r1; /* initialize second base pointer */ \ 95 adds r17=PT(R9),r1; /* initialize second base pointer */ \
92(pKStk) mov r18=r0; /* make sure r18 isn't NaT */ \ 96(pKStk) mov r18=r0; /* make sure r18 isn't NaT */ \
@@ -206,6 +210,40 @@
206 st8 [r25]=r10; /* ar.ssd */ \ 210 st8 [r25]=r10; /* ar.ssd */ \
207 ;; 211 ;;
208 212
209#define SAVE_MIN_WITH_COVER DO_SAVE_MIN(cover, mov r30=cr.ifs,) 213#define RSE_WORKAROUND \
210#define SAVE_MIN_WITH_COVER_R19 DO_SAVE_MIN(cover, mov r30=cr.ifs, mov r15=r19) 214(pUStk) extr.u r17=r18,3,6; \
211#define SAVE_MIN DO_SAVE_MIN( , mov r30=r0, ) 215(pUStk) sub r16=r18,r22; \
216[1:](pKStk) br.cond.sptk.many 1f; \
217 .xdata4 ".data.patch.rse",1b-. \
218 ;; \
219 cmp.ge p6,p7 = 33,r17; \
220 ;; \
221(p6) mov r17=0x310; \
222(p7) mov r17=0x308; \
223 ;; \
224 cmp.leu p1,p0=r16,r17; \
225(p1) br.cond.sptk.many 1f; \
226 dep.z r17=r26,0,62; \
227 movl r16=2f; \
228 ;; \
229 mov ar.pfs=r17; \
230 dep r27=r0,r27,16,14; \
231 mov b0=r16; \
232 ;; \
233 br.ret.sptk b0; \
234 ;; \
2352: \
236 mov ar.rsc=r0 \
237 ;; \
238 flushrs; \
239 ;; \
240 mov ar.bspstore=r22 \
241 ;; \
242 mov r18=ar.bsp; \
243 ;; \
2441: \
245 .pred.rel "mutex", pKStk, pUStk
246
247#define SAVE_MIN_WITH_COVER DO_SAVE_MIN(cover, mov r30=cr.ifs, , RSE_WORKAROUND)
248#define SAVE_MIN_WITH_COVER_R19 DO_SAVE_MIN(cover, mov r30=cr.ifs, mov r15=r19, RSE_WORKAROUND)
249#define SAVE_MIN DO_SAVE_MIN( , mov r30=r0, , )
diff --git a/arch/ia64/kernel/palinfo.c b/arch/ia64/kernel/palinfo.c
index 4547a2092af9..9dc00f7fe10e 100644
--- a/arch/ia64/kernel/palinfo.c
+++ b/arch/ia64/kernel/palinfo.c
@@ -900,12 +900,6 @@ static void
900palinfo_smp_call(void *info) 900palinfo_smp_call(void *info)
901{ 901{
902 palinfo_smp_data_t *data = (palinfo_smp_data_t *)info; 902 palinfo_smp_data_t *data = (palinfo_smp_data_t *)info;
903 if (data == NULL) {
904 printk(KERN_ERR "palinfo: data pointer is NULL\n");
905 data->ret = 0; /* no output */
906 return;
907 }
908 /* does this actual call */
909 data->ret = (*data->func)(data->page); 903 data->ret = (*data->func)(data->page);
910} 904}
911 905
diff --git a/arch/ia64/kernel/patch.c b/arch/ia64/kernel/patch.c
index e0dca8743dbb..b83b2c516008 100644
--- a/arch/ia64/kernel/patch.c
+++ b/arch/ia64/kernel/patch.c
@@ -115,6 +115,29 @@ ia64_patch_vtop (unsigned long start, unsigned long end)
115 ia64_srlz_i(); 115 ia64_srlz_i();
116} 116}
117 117
118/*
119 * Disable the RSE workaround by turning the conditional branch
120 * that we tagged in each place the workaround was used into an
121 * unconditional branch.
122 */
123void __init
124ia64_patch_rse (unsigned long start, unsigned long end)
125{
126 s32 *offp = (s32 *) start;
127 u64 ip, *b;
128
129 while (offp < (s32 *) end) {
130 ip = (u64) offp + *offp;
131
132 b = (u64 *)(ip & -16);
133 b[1] &= ~0xf800000L;
134 ia64_fc((void *) ip);
135 ++offp;
136 }
137 ia64_sync_i();
138 ia64_srlz_i();
139}
140
118void __init 141void __init
119ia64_patch_mckinley_e9 (unsigned long start, unsigned long end) 142ia64_patch_mckinley_e9 (unsigned long start, unsigned long end)
120{ 143{
diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c
index c1ad27de2dd2..71d05133f556 100644
--- a/arch/ia64/kernel/perfmon.c
+++ b/arch/ia64/kernel/perfmon.c
@@ -5013,12 +5013,13 @@ pfm_context_force_terminate(pfm_context_t *ctx, struct pt_regs *regs)
5013} 5013}
5014 5014
5015static int pfm_ovfl_notify_user(pfm_context_t *ctx, unsigned long ovfl_pmds); 5015static int pfm_ovfl_notify_user(pfm_context_t *ctx, unsigned long ovfl_pmds);
5016
5016 /* 5017 /*
5017 * pfm_handle_work() can be called with interrupts enabled 5018 * pfm_handle_work() can be called with interrupts enabled
5018 * (TIF_NEED_RESCHED) or disabled. The down_interruptible 5019 * (TIF_NEED_RESCHED) or disabled. The down_interruptible
5019 * call may sleep, therefore we must re-enable interrupts 5020 * call may sleep, therefore we must re-enable interrupts
5020 * to avoid deadlocks. It is safe to do so because this function 5021 * to avoid deadlocks. It is safe to do so because this function
5021 * is called ONLY when returning to user level (PUStk=1), in which case 5022 * is called ONLY when returning to user level (pUStk=1), in which case
5022 * there is no risk of kernel stack overflow due to deep 5023 * there is no risk of kernel stack overflow due to deep
5023 * interrupt nesting. 5024 * interrupt nesting.
5024 */ 5025 */
@@ -5034,7 +5035,8 @@ pfm_handle_work(void)
5034 5035
5035 ctx = PFM_GET_CTX(current); 5036 ctx = PFM_GET_CTX(current);
5036 if (ctx == NULL) { 5037 if (ctx == NULL) {
5037 printk(KERN_ERR "perfmon: [%d] has no PFM context\n", task_pid_nr(current)); 5038 printk(KERN_ERR "perfmon: [%d] has no PFM context\n",
5039 task_pid_nr(current));
5038 return; 5040 return;
5039 } 5041 }
5040 5042
@@ -5058,11 +5060,12 @@ pfm_handle_work(void)
5058 /* 5060 /*
5059 * must be done before we check for simple-reset mode 5061 * must be done before we check for simple-reset mode
5060 */ 5062 */
5061 if (ctx->ctx_fl_going_zombie || ctx->ctx_state == PFM_CTX_ZOMBIE) goto do_zombie; 5063 if (ctx->ctx_fl_going_zombie || ctx->ctx_state == PFM_CTX_ZOMBIE)
5062 5064 goto do_zombie;
5063 5065
5064 //if (CTX_OVFL_NOBLOCK(ctx)) goto skip_blocking; 5066 //if (CTX_OVFL_NOBLOCK(ctx)) goto skip_blocking;
5065 if (reason == PFM_TRAP_REASON_RESET) goto skip_blocking; 5067 if (reason == PFM_TRAP_REASON_RESET)
5068 goto skip_blocking;
5066 5069
5067 /* 5070 /*
5068 * restore interrupt mask to what it was on entry. 5071 * restore interrupt mask to what it was on entry.
@@ -5110,7 +5113,8 @@ do_zombie:
5110 /* 5113 /*
5111 * in case of interruption of down() we don't restart anything 5114 * in case of interruption of down() we don't restart anything
5112 */ 5115 */
5113 if (ret < 0) goto nothing_to_do; 5116 if (ret < 0)
5117 goto nothing_to_do;
5114 5118
5115skip_blocking: 5119skip_blocking:
5116 pfm_resume_after_ovfl(ctx, ovfl_regs, regs); 5120 pfm_resume_after_ovfl(ctx, ovfl_regs, regs);
diff --git a/arch/ia64/kernel/process.c b/arch/ia64/kernel/process.c
index 58dcfac5ea88..a3a34b4eb038 100644
--- a/arch/ia64/kernel/process.c
+++ b/arch/ia64/kernel/process.c
@@ -167,11 +167,18 @@ void tsk_clear_notify_resume(struct task_struct *tsk)
167 clear_ti_thread_flag(task_thread_info(tsk), TIF_NOTIFY_RESUME); 167 clear_ti_thread_flag(task_thread_info(tsk), TIF_NOTIFY_RESUME);
168} 168}
169 169
170/*
171 * do_notify_resume_user():
172 * Called from notify_resume_user at entry.S, with interrupts disabled.
173 */
170void 174void
171do_notify_resume_user (sigset_t *unused, struct sigscratch *scr, long in_syscall) 175do_notify_resume_user(sigset_t *unused, struct sigscratch *scr, long in_syscall)
172{ 176{
173 if (fsys_mode(current, &scr->pt)) { 177 if (fsys_mode(current, &scr->pt)) {
174 /* defer signal-handling etc. until we return to privilege-level 0. */ 178 /*
179 * defer signal-handling etc. until we return to
180 * privilege-level 0.
181 */
175 if (!ia64_psr(&scr->pt)->lp) 182 if (!ia64_psr(&scr->pt)->lp)
176 ia64_psr(&scr->pt)->lp = 1; 183 ia64_psr(&scr->pt)->lp = 1;
177 return; 184 return;
@@ -179,16 +186,26 @@ do_notify_resume_user (sigset_t *unused, struct sigscratch *scr, long in_syscall
179 186
180#ifdef CONFIG_PERFMON 187#ifdef CONFIG_PERFMON
181 if (current->thread.pfm_needs_checking) 188 if (current->thread.pfm_needs_checking)
189 /*
190 * Note: pfm_handle_work() allow us to call it with interrupts
191 * disabled, and may enable interrupts within the function.
192 */
182 pfm_handle_work(); 193 pfm_handle_work();
183#endif 194#endif
184 195
185 /* deal with pending signal delivery */ 196 /* deal with pending signal delivery */
186 if (test_thread_flag(TIF_SIGPENDING)) 197 if (test_thread_flag(TIF_SIGPENDING)) {
198 local_irq_enable(); /* force interrupt enable */
187 ia64_do_signal(scr, in_syscall); 199 ia64_do_signal(scr, in_syscall);
200 }
188 201
189 /* copy user rbs to kernel rbs */ 202 /* copy user rbs to kernel rbs */
190 if (unlikely(test_thread_flag(TIF_RESTORE_RSE))) 203 if (unlikely(test_thread_flag(TIF_RESTORE_RSE))) {
204 local_irq_enable(); /* force interrupt enable */
191 ia64_sync_krbs(); 205 ia64_sync_krbs();
206 }
207
208 local_irq_disable(); /* force interrupt disable */
192} 209}
193 210
194static int pal_halt = 1; 211static int pal_halt = 1;
diff --git a/arch/ia64/kernel/sal.c b/arch/ia64/kernel/sal.c
index a3022dc48ef8..7e0259709c04 100644
--- a/arch/ia64/kernel/sal.c
+++ b/arch/ia64/kernel/sal.c
@@ -229,6 +229,14 @@ static void __init sal_desc_ap_wakeup(void *p) { }
229 */ 229 */
230static int sal_cache_flush_drops_interrupts; 230static int sal_cache_flush_drops_interrupts;
231 231
232static int __init
233force_pal_cache_flush(char *str)
234{
235 sal_cache_flush_drops_interrupts = 1;
236 return 0;
237}
238early_param("force_pal_cache_flush", force_pal_cache_flush);
239
232void __init 240void __init
233check_sal_cache_flush (void) 241check_sal_cache_flush (void)
234{ 242{
@@ -237,6 +245,9 @@ check_sal_cache_flush (void)
237 u64 vector, cache_type = 3; 245 u64 vector, cache_type = 3;
238 struct ia64_sal_retval isrv; 246 struct ia64_sal_retval isrv;
239 247
248 if (sal_cache_flush_drops_interrupts)
249 return;
250
240 cpu = get_cpu(); 251 cpu = get_cpu();
241 local_irq_save(flags); 252 local_irq_save(flags);
242 253
diff --git a/arch/ia64/kernel/setup.c b/arch/ia64/kernel/setup.c
index 5015ca1275ca..f48a809c686d 100644
--- a/arch/ia64/kernel/setup.c
+++ b/arch/ia64/kernel/setup.c
@@ -239,6 +239,25 @@ __initcall(register_memory);
239 239
240 240
241#ifdef CONFIG_KEXEC 241#ifdef CONFIG_KEXEC
242
243/*
244 * This function checks if the reserved crashkernel is allowed on the specific
245 * IA64 machine flavour. Machines without an IO TLB use swiotlb and require
246 * some memory below 4 GB (i.e. in 32 bit area), see the implementation of
247 * lib/swiotlb.c. The hpzx1 architecture has an IO TLB but cannot use that
248 * in kdump case. See the comment in sba_init() in sba_iommu.c.
249 *
250 * So, the only machvec that really supports loading the kdump kernel
251 * over 4 GB is "sn2".
252 */
253static int __init check_crashkernel_memory(unsigned long pbase, size_t size)
254{
255 if (ia64_platform_is("sn2") || ia64_platform_is("uv"))
256 return 1;
257 else
258 return pbase < (1UL << 32);
259}
260
242static void __init setup_crashkernel(unsigned long total, int *n) 261static void __init setup_crashkernel(unsigned long total, int *n)
243{ 262{
244 unsigned long long base = 0, size = 0; 263 unsigned long long base = 0, size = 0;
@@ -252,6 +271,16 @@ static void __init setup_crashkernel(unsigned long total, int *n)
252 base = kdump_find_rsvd_region(size, 271 base = kdump_find_rsvd_region(size,
253 rsvd_region, *n); 272 rsvd_region, *n);
254 } 273 }
274
275 if (!check_crashkernel_memory(base, size)) {
276 pr_warning("crashkernel: There would be kdump memory "
277 "at %ld GB but this is unusable because it "
278 "must\nbe below 4 GB. Change the memory "
279 "configuration of the machine.\n",
280 (unsigned long)(base >> 30));
281 return;
282 }
283
255 if (base != ~0UL) { 284 if (base != ~0UL) {
256 printk(KERN_INFO "Reserving %ldMB of memory at %ldMB " 285 printk(KERN_INFO "Reserving %ldMB of memory at %ldMB "
257 "for crashkernel (System RAM: %ldMB)\n", 286 "for crashkernel (System RAM: %ldMB)\n",
@@ -531,6 +560,17 @@ setup_arch (char **cmdline_p)
531 /* process SAL system table: */ 560 /* process SAL system table: */
532 ia64_sal_init(__va(efi.sal_systab)); 561 ia64_sal_init(__va(efi.sal_systab));
533 562
563#ifdef CONFIG_ITANIUM
564 ia64_patch_rse((u64) __start___rse_patchlist, (u64) __end___rse_patchlist);
565#else
566 {
567 u64 num_phys_stacked;
568
569 if (ia64_pal_rse_info(&num_phys_stacked, 0) == 0 && num_phys_stacked > 96)
570 ia64_patch_rse((u64) __start___rse_patchlist, (u64) __end___rse_patchlist);
571 }
572#endif
573
534#ifdef CONFIG_SMP 574#ifdef CONFIG_SMP
535 cpu_physical_id(0) = hard_smp_processor_id(); 575 cpu_physical_id(0) = hard_smp_processor_id();
536#endif 576#endif
diff --git a/arch/ia64/kernel/vmlinux.lds.S b/arch/ia64/kernel/vmlinux.lds.S
index 80622acc95de..5929ab10a289 100644
--- a/arch/ia64/kernel/vmlinux.lds.S
+++ b/arch/ia64/kernel/vmlinux.lds.S
@@ -156,6 +156,13 @@ SECTIONS
156 __end___vtop_patchlist = .; 156 __end___vtop_patchlist = .;
157 } 157 }
158 158
159 .data.patch.rse : AT(ADDR(.data.patch.rse) - LOAD_OFFSET)
160 {
161 __start___rse_patchlist = .;
162 *(.data.patch.rse)
163 __end___rse_patchlist = .;
164 }
165
159 .data.patch.mckinley_e9 : AT(ADDR(.data.patch.mckinley_e9) - LOAD_OFFSET) 166 .data.patch.mckinley_e9 : AT(ADDR(.data.patch.mckinley_e9) - LOAD_OFFSET)
160 { 167 {
161 __start___mckinley_e9_bundles = .; 168 __start___mckinley_e9_bundles = .;
diff --git a/arch/ia64/kvm/Makefile b/arch/ia64/kvm/Makefile
index 52353397a1a4..112791dd2542 100644
--- a/arch/ia64/kvm/Makefile
+++ b/arch/ia64/kvm/Makefile
@@ -7,7 +7,6 @@ offsets-file := asm-offsets.h
7always := $(offsets-file) 7always := $(offsets-file)
8targets := $(offsets-file) 8targets := $(offsets-file)
9targets += arch/ia64/kvm/asm-offsets.s 9targets += arch/ia64/kvm/asm-offsets.s
10clean-files := $(addprefix $(objtree)/,$(targets) $(obj)/memcpy.S $(obj)/memset.S)
11 10
12# Default sed regexp - multiline due to syntax constraints 11# Default sed regexp - multiline due to syntax constraints
13define sed-y 12define sed-y
@@ -54,5 +53,5 @@ EXTRA_CFLAGS_vcpu.o += -mfixed-range=f2-f5,f12-f127
54kvm-intel-objs = vmm.o vmm_ivt.o trampoline.o vcpu.o optvfault.o mmio.o \ 53kvm-intel-objs = vmm.o vmm_ivt.o trampoline.o vcpu.o optvfault.o mmio.o \
55 vtlb.o process.o 54 vtlb.o process.o
56#Add link memcpy and memset to avoid possible structure assignment error 55#Add link memcpy and memset to avoid possible structure assignment error
57kvm-intel-objs += ../lib/memset.o ../lib/memcpy.o 56kvm-intel-objs += memcpy.o memset.o
58obj-$(CONFIG_KVM_INTEL) += kvm-intel.o 57obj-$(CONFIG_KVM_INTEL) += kvm-intel.o
diff --git a/arch/ia64/kvm/memcpy.S b/arch/ia64/kvm/memcpy.S
new file mode 100644
index 000000000000..c04cdbe9f80f
--- /dev/null
+++ b/arch/ia64/kvm/memcpy.S
@@ -0,0 +1 @@
#include "../lib/memcpy.S"
diff --git a/arch/ia64/kvm/memset.S b/arch/ia64/kvm/memset.S
new file mode 100644
index 000000000000..83c3066d844a
--- /dev/null
+++ b/arch/ia64/kvm/memset.S
@@ -0,0 +1 @@
#include "../lib/memset.S"
diff --git a/arch/ia64/kvm/mmio.c b/arch/ia64/kvm/mmio.c
index 351bf70da463..7f1a858bc69f 100644
--- a/arch/ia64/kvm/mmio.c
+++ b/arch/ia64/kvm/mmio.c
@@ -159,7 +159,8 @@ static void mmio_access(struct kvm_vcpu *vcpu, u64 src_pa, u64 *dest,
159 159
160 if (p->u.ioreq.state == STATE_IORESP_READY) { 160 if (p->u.ioreq.state == STATE_IORESP_READY) {
161 if (dir == IOREQ_READ) 161 if (dir == IOREQ_READ)
162 *dest = p->u.ioreq.data; 162 /* it's necessary to ensure zero extending */
163 *dest = p->u.ioreq.data & (~0UL >> (64-(s*8)));
163 } else 164 } else
164 panic_vm(vcpu); 165 panic_vm(vcpu);
165out: 166out:
diff --git a/arch/ia64/mm/init.c b/arch/ia64/mm/init.c
index fc6c6636ffda..200100ea7610 100644
--- a/arch/ia64/mm/init.c
+++ b/arch/ia64/mm/init.c
@@ -719,3 +719,28 @@ out:
719EXPORT_SYMBOL_GPL(remove_memory); 719EXPORT_SYMBOL_GPL(remove_memory);
720#endif /* CONFIG_MEMORY_HOTREMOVE */ 720#endif /* CONFIG_MEMORY_HOTREMOVE */
721#endif 721#endif
722
723/*
724 * Even when CONFIG_IA32_SUPPORT is not enabled it is
725 * useful to have the Linux/x86 domain registered to
726 * avoid an attempted module load when emulators call
727 * personality(PER_LINUX32). This saves several milliseconds
728 * on each such call.
729 */
730static struct exec_domain ia32_exec_domain;
731
732static int __init
733per_linux32_init(void)
734{
735 ia32_exec_domain.name = "Linux/x86";
736 ia32_exec_domain.handler = NULL;
737 ia32_exec_domain.pers_low = PER_LINUX32;
738 ia32_exec_domain.pers_high = PER_LINUX32;
739 ia32_exec_domain.signal_map = default_exec_domain.signal_map;
740 ia32_exec_domain.signal_invmap = default_exec_domain.signal_invmap;
741 register_exec_domain(&ia32_exec_domain);
742
743 return 0;
744}
745
746__initcall(per_linux32_init);
diff --git a/arch/ia64/uv/Makefile b/arch/ia64/uv/Makefile
new file mode 100644
index 000000000000..aa9f91947c49
--- /dev/null
+++ b/arch/ia64/uv/Makefile
@@ -0,0 +1,12 @@
1# arch/ia64/uv/Makefile
2#
3# This file is subject to the terms and conditions of the GNU General Public
4# License. See the file "COPYING" in the main directory of this archive
5# for more details.
6#
7# Copyright (C) 2008 Silicon Graphics, Inc. All Rights Reserved.
8#
9# Makefile for the sn uv subplatform
10#
11
12obj-y += kernel/
diff --git a/arch/ia64/uv/kernel/Makefile b/arch/ia64/uv/kernel/Makefile
new file mode 100644
index 000000000000..8d92b4684d8e
--- /dev/null
+++ b/arch/ia64/uv/kernel/Makefile
@@ -0,0 +1,13 @@
1# arch/ia64/uv/kernel/Makefile
2#
3# This file is subject to the terms and conditions of the GNU General Public
4# License. See the file "COPYING" in the main directory of this archive
5# for more details.
6#
7# Copyright (C) 2008 Silicon Graphics, Inc. All Rights Reserved.
8#
9
10EXTRA_CFLAGS += -Iarch/ia64/sn/include
11
12obj-y += setup.o
13obj-$(CONFIG_IA64_GENERIC) += machvec.o
diff --git a/arch/ia64/uv/kernel/machvec.c b/arch/ia64/uv/kernel/machvec.c
new file mode 100644
index 000000000000..50737a9dca74
--- /dev/null
+++ b/arch/ia64/uv/kernel/machvec.c
@@ -0,0 +1,11 @@
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) 2008 Silicon Graphics, Inc. All Rights Reserved.
7 */
8
9#define MACHVEC_PLATFORM_NAME uv
10#define MACHVEC_PLATFORM_HEADER <asm/machvec_uv.h>
11#include <asm/machvec_init.h>
diff --git a/arch/ia64/uv/kernel/setup.c b/arch/ia64/uv/kernel/setup.c
new file mode 100644
index 000000000000..9aa743203c3c
--- /dev/null
+++ b/arch/ia64/uv/kernel/setup.c
@@ -0,0 +1,98 @@
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 * SGI UV Core Functions
7 *
8 * Copyright (C) 2008 Silicon Graphics, Inc. All rights reserved.
9 */
10
11#include <linux/module.h>
12#include <linux/percpu.h>
13#include <asm/sn/simulator.h>
14#include <asm/uv/uv_mmrs.h>
15#include <asm/uv/uv_hub.h>
16
17DEFINE_PER_CPU(struct uv_hub_info_s, __uv_hub_info);
18EXPORT_PER_CPU_SYMBOL_GPL(__uv_hub_info);
19
20
21struct redir_addr {
22 unsigned long redirect;
23 unsigned long alias;
24};
25
26#define DEST_SHIFT UVH_RH_GAM_ALIAS210_REDIRECT_CONFIG_0_MMR_DEST_BASE_SHFT
27
28static __initdata struct redir_addr redir_addrs[] = {
29 {UVH_RH_GAM_ALIAS210_REDIRECT_CONFIG_0_MMR, UVH_SI_ALIAS0_OVERLAY_CONFIG},
30 {UVH_RH_GAM_ALIAS210_REDIRECT_CONFIG_1_MMR, UVH_SI_ALIAS1_OVERLAY_CONFIG},
31 {UVH_RH_GAM_ALIAS210_REDIRECT_CONFIG_2_MMR, UVH_SI_ALIAS2_OVERLAY_CONFIG},
32};
33
34static __init void get_lowmem_redirect(unsigned long *base, unsigned long *size)
35{
36 union uvh_si_alias0_overlay_config_u alias;
37 union uvh_rh_gam_alias210_redirect_config_2_mmr_u redirect;
38 int i;
39
40 for (i = 0; i < ARRAY_SIZE(redir_addrs); i++) {
41 alias.v = uv_read_local_mmr(redir_addrs[i].alias);
42 if (alias.s.base == 0) {
43 *size = (1UL << alias.s.m_alias);
44 redirect.v = uv_read_local_mmr(redir_addrs[i].redirect);
45 *base = (unsigned long)redirect.s.dest_base << DEST_SHIFT;
46 return;
47 }
48 }
49 BUG();
50}
51
52void __init uv_setup(char **cmdline_p)
53{
54 union uvh_si_addr_map_config_u m_n_config;
55 union uvh_node_id_u node_id;
56 unsigned long gnode_upper;
57 int nid, cpu, m_val, n_val;
58 unsigned long mmr_base, lowmem_redir_base, lowmem_redir_size;
59
60 if (IS_MEDUSA()) {
61 lowmem_redir_base = 0;
62 lowmem_redir_size = 0;
63 node_id.v = 0;
64 m_n_config.s.m_skt = 37;
65 m_n_config.s.n_skt = 0;
66 mmr_base = 0;
67 } else {
68 get_lowmem_redirect(&lowmem_redir_base, &lowmem_redir_size);
69 node_id.v = uv_read_local_mmr(UVH_NODE_ID);
70 m_n_config.v = uv_read_local_mmr(UVH_SI_ADDR_MAP_CONFIG);
71 mmr_base =
72 uv_read_local_mmr(UVH_RH_GAM_MMR_OVERLAY_CONFIG_MMR) &
73 ~UV_MMR_ENABLE;
74 }
75
76 m_val = m_n_config.s.m_skt;
77 n_val = m_n_config.s.n_skt;
78 printk(KERN_DEBUG "UV: global MMR base 0x%lx\n", mmr_base);
79
80 gnode_upper = (((unsigned long)node_id.s.node_id) &
81 ~((1 << n_val) - 1)) << m_val;
82
83 for_each_present_cpu(cpu) {
84 nid = cpu_to_node(cpu);
85 uv_cpu_hub_info(cpu)->lowmem_remap_base = lowmem_redir_base;
86 uv_cpu_hub_info(cpu)->lowmem_remap_top =
87 lowmem_redir_base + lowmem_redir_size;
88 uv_cpu_hub_info(cpu)->m_val = m_val;
89 uv_cpu_hub_info(cpu)->n_val = m_val;
90 uv_cpu_hub_info(cpu)->pnode_mask = (1 << n_val) -1;
91 uv_cpu_hub_info(cpu)->gpa_mask = (1 << (m_val + n_val)) - 1;
92 uv_cpu_hub_info(cpu)->gnode_upper = gnode_upper;
93 uv_cpu_hub_info(cpu)->global_mmr_base = mmr_base;
94 uv_cpu_hub_info(cpu)->coherency_domain_number = 0;/* ZZZ */
95 printk(KERN_DEBUG "UV cpu %d, nid %d\n", cpu, nid);
96 }
97}
98
diff --git a/arch/m32r/kernel/init_task.c b/arch/m32r/kernel/init_task.c
index 9e508fd9d970..0d658dbb6766 100644
--- a/arch/m32r/kernel/init_task.c
+++ b/arch/m32r/kernel/init_task.c
@@ -12,7 +12,6 @@
12#include <asm/pgtable.h> 12#include <asm/pgtable.h>
13 13
14static struct fs_struct init_fs = INIT_FS; 14static struct fs_struct init_fs = INIT_FS;
15static struct files_struct init_files = INIT_FILES;
16static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 15static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
17static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 16static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
18struct mm_struct init_mm = INIT_MM(init_mm); 17struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index 65db2261b9ea..55ea52fe6aca 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -44,7 +44,7 @@ config GENERIC_IOMAP
44 44
45config ARCH_MAY_HAVE_PC_FDC 45config ARCH_MAY_HAVE_PC_FDC
46 bool 46 bool
47 depends on Q40 || (BROKEN && SUN3X) 47 depends on BROKEN && (Q40 || SUN3X)
48 default y 48 default y
49 49
50config NO_IOPORT 50config NO_IOPORT
@@ -539,13 +539,6 @@ config AMIGA_BUILTIN_SERIAL
539 539
540 To compile this driver as a module, choose M here. 540 To compile this driver as a module, choose M here.
541 541
542config WHIPPET_SERIAL
543 tristate "Hisoft Whippet PCMCIA serial support"
544 depends on AMIGA_PCMCIA
545 help
546 HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
547 is no listing for the Whippet in their Amiga section.
548
549config MULTIFACE_III_TTY 542config MULTIFACE_III_TTY
550 tristate "Multiface Card III serial support" 543 tristate "Multiface Card III serial support"
551 depends on AMIGA 544 depends on AMIGA
diff --git a/arch/m68k/configs/amiga_defconfig b/arch/m68k/configs/amiga_defconfig
index e41958371367..8e2a0f5faf53 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:06 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -141,6 +144,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
141CONFIG_NEED_MULTIPLE_NODES=y 144CONFIG_NEED_MULTIPLE_NODES=y
142# CONFIG_SPARSEMEM_STATIC is not set 145# CONFIG_SPARSEMEM_STATIC is not set
143# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 146# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
147CONFIG_PAGEFLAGS_EXTENDED=y
144CONFIG_SPLIT_PTLOCK_CPUS=4 148CONFIG_SPLIT_PTLOCK_CPUS=4
145# CONFIG_RESOURCES_64BIT is not set 149# CONFIG_RESOURCES_64BIT is not set
146CONFIG_ZONE_DMA_FLAG=1 150CONFIG_ZONE_DMA_FLAG=1
@@ -222,8 +226,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
222CONFIG_INET6_XFRM_MODE_BEET=m 226CONFIG_INET6_XFRM_MODE_BEET=m
223CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 227CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
224CONFIG_IPV6_SIT=m 228CONFIG_IPV6_SIT=m
229CONFIG_IPV6_NDISC_NODETYPE=y
225CONFIG_IPV6_TUNNEL=m 230CONFIG_IPV6_TUNNEL=m
226# CONFIG_IPV6_MULTIPLE_TABLES is not set 231# CONFIG_IPV6_MULTIPLE_TABLES is not set
232# CONFIG_IPV6_MROUTE is not set
227# CONFIG_NETWORK_SECMARK is not set 233# CONFIG_NETWORK_SECMARK is not set
228CONFIG_NETFILTER=y 234CONFIG_NETFILTER=y
229# CONFIG_NETFILTER_DEBUG is not set 235# CONFIG_NETFILTER_DEBUG is not set
@@ -239,6 +245,7 @@ CONFIG_NF_CONNTRACK=m
239CONFIG_NF_CT_ACCT=y 245CONFIG_NF_CT_ACCT=y
240CONFIG_NF_CONNTRACK_MARK=y 246CONFIG_NF_CONNTRACK_MARK=y
241# CONFIG_NF_CONNTRACK_EVENTS is not set 247# CONFIG_NF_CONNTRACK_EVENTS is not set
248# CONFIG_NF_CT_PROTO_DCCP is not set
242CONFIG_NF_CT_PROTO_GRE=m 249CONFIG_NF_CT_PROTO_GRE=m
243CONFIG_NF_CT_PROTO_SCTP=m 250CONFIG_NF_CT_PROTO_SCTP=m
244CONFIG_NF_CT_PROTO_UDPLITE=m 251CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -317,6 +324,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
317CONFIG_IP_NF_TARGET_NETMAP=m 324CONFIG_IP_NF_TARGET_NETMAP=m
318CONFIG_NF_NAT_SNMP_BASIC=m 325CONFIG_NF_NAT_SNMP_BASIC=m
319CONFIG_NF_NAT_PROTO_GRE=m 326CONFIG_NF_NAT_PROTO_GRE=m
327CONFIG_NF_NAT_PROTO_UDPLITE=m
328CONFIG_NF_NAT_PROTO_SCTP=m
320CONFIG_NF_NAT_FTP=m 329CONFIG_NF_NAT_FTP=m
321CONFIG_NF_NAT_IRC=m 330CONFIG_NF_NAT_IRC=m
322CONFIG_NF_NAT_TFTP=m 331CONFIG_NF_NAT_TFTP=m
@@ -410,8 +419,6 @@ CONFIG_IEEE80211=m
410CONFIG_IEEE80211_CRYPT_WEP=m 419CONFIG_IEEE80211_CRYPT_WEP=m
411CONFIG_IEEE80211_CRYPT_CCMP=m 420CONFIG_IEEE80211_CRYPT_CCMP=m
412CONFIG_IEEE80211_CRYPT_TKIP=m 421CONFIG_IEEE80211_CRYPT_TKIP=m
413CONFIG_IEEE80211_SOFTMAC=m
414# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
415# CONFIG_RFKILL is not set 422# CONFIG_RFKILL is not set
416# CONFIG_NET_9P is not set 423# CONFIG_NET_9P is not set
417 424
@@ -477,27 +484,12 @@ CONFIG_IDE_PROC_FS=y
477# 484#
478# IDE chipset support/bugfixes 485# IDE chipset support/bugfixes
479# 486#
480# CONFIG_IDE_GENERIC is not set
481# CONFIG_BLK_DEV_PLATFORM is not set 487# CONFIG_BLK_DEV_PLATFORM is not set
482CONFIG_BLK_DEV_GAYLE=y 488CONFIG_BLK_DEV_GAYLE=y
483CONFIG_BLK_DEV_IDEDOUBLER=y 489CONFIG_BLK_DEV_IDEDOUBLER=y
484CONFIG_BLK_DEV_BUDDHA=y 490CONFIG_BLK_DEV_BUDDHA=y
485
486#
487# Other IDE chipsets support
488#
489
490#
491# Note: most of these also require special kernel boot parameters
492#
493# CONFIG_BLK_DEV_4DRIVES is not set
494# CONFIG_BLK_DEV_ALI14XX is not set
495# CONFIG_BLK_DEV_DTC2278 is not set
496# CONFIG_BLK_DEV_HT6560B is not set
497# CONFIG_BLK_DEV_QD65XX is not set
498# CONFIG_BLK_DEV_UMC8672 is not set
499# CONFIG_BLK_DEV_IDEDMA is not set 491# CONFIG_BLK_DEV_IDEDMA is not set
500# CONFIG_IDE_ARCH_OBSOLETE_INIT is not set 492# CONFIG_BLK_DEV_HD_ONLY is not set
501# CONFIG_BLK_DEV_HD is not set 493# CONFIG_BLK_DEV_HD is not set
502 494
503# 495#
@@ -626,6 +618,7 @@ CONFIG_APNE=m
626# 618#
627# CONFIG_WLAN_PRE80211 is not set 619# CONFIG_WLAN_PRE80211 is not set
628# CONFIG_WLAN_80211 is not set 620# CONFIG_WLAN_80211 is not set
621# CONFIG_IWLWIFI_LEDS is not set
629# CONFIG_WAN is not set 622# CONFIG_WAN is not set
630# CONFIG_PLIP is not set 623# CONFIG_PLIP is not set
631CONFIG_PPP=m 624CONFIG_PPP=m
@@ -707,6 +700,7 @@ CONFIG_INPUT_JOYSTICK=y
707# CONFIG_JOYSTICK_SPACEBALL is not set 700# CONFIG_JOYSTICK_SPACEBALL is not set
708# CONFIG_JOYSTICK_STINGER is not set 701# CONFIG_JOYSTICK_STINGER is not set
709# CONFIG_JOYSTICK_TWIDJOY is not set 702# CONFIG_JOYSTICK_TWIDJOY is not set
703# CONFIG_JOYSTICK_ZHENHUA is not set
710# CONFIG_JOYSTICK_DB9 is not set 704# CONFIG_JOYSTICK_DB9 is not set
711# CONFIG_JOYSTICK_GAMECON is not set 705# CONFIG_JOYSTICK_GAMECON is not set
712# CONFIG_JOYSTICK_TURBOGRAFX is not set 706# CONFIG_JOYSTICK_TURBOGRAFX is not set
@@ -731,6 +725,7 @@ CONFIG_VT=y
731CONFIG_VT_CONSOLE=y 725CONFIG_VT_CONSOLE=y
732CONFIG_HW_CONSOLE=y 726CONFIG_HW_CONSOLE=y
733CONFIG_VT_HW_CONSOLE_BINDING=y 727CONFIG_VT_HW_CONSOLE_BINDING=y
728# CONFIG_DEVKMEM is not set
734# CONFIG_SERIAL_NONSTANDARD is not set 729# CONFIG_SERIAL_NONSTANDARD is not set
735CONFIG_A2232=m 730CONFIG_A2232=m
736 731
@@ -757,12 +752,7 @@ CONFIG_GEN_RTC_X=y
757# CONFIG_RAW_DRIVER is not set 752# CONFIG_RAW_DRIVER is not set
758# CONFIG_TCG_TPM is not set 753# CONFIG_TCG_TPM is not set
759# CONFIG_I2C is not set 754# CONFIG_I2C is not set
760
761#
762# SPI support
763#
764# CONFIG_SPI is not set 755# CONFIG_SPI is not set
765# CONFIG_SPI_MASTER is not set
766# CONFIG_W1 is not set 756# CONFIG_W1 is not set
767# CONFIG_POWER_SUPPLY is not set 757# CONFIG_POWER_SUPPLY is not set
768# CONFIG_HWMON is not set 758# CONFIG_HWMON is not set
@@ -779,12 +769,22 @@ CONFIG_SSB_POSSIBLE=y
779# Multifunction device drivers 769# Multifunction device drivers
780# 770#
781# CONFIG_MFD_SM501 is not set 771# CONFIG_MFD_SM501 is not set
772# CONFIG_HTC_PASIC3 is not set
782 773
783# 774#
784# Multimedia devices 775# Multimedia devices
785# 776#
777
778#
779# Multimedia core support
780#
786# CONFIG_VIDEO_DEV is not set 781# CONFIG_VIDEO_DEV is not set
787# CONFIG_DVB_CORE is not set 782# CONFIG_DVB_CORE is not set
783# CONFIG_VIDEO_MEDIA is not set
784
785#
786# Multimedia drivers
787#
788# CONFIG_DAB is not set 788# CONFIG_DAB is not set
789 789
790# 790#
@@ -802,8 +802,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
802# CONFIG_FB_SYS_FILLRECT is not set 802# CONFIG_FB_SYS_FILLRECT is not set
803# CONFIG_FB_SYS_COPYAREA is not set 803# CONFIG_FB_SYS_COPYAREA is not set
804# CONFIG_FB_SYS_IMAGEBLIT is not set 804# CONFIG_FB_SYS_IMAGEBLIT is not set
805# CONFIG_FB_FOREIGN_ENDIAN is not set
805# CONFIG_FB_SYS_FOPS is not set 806# CONFIG_FB_SYS_FOPS is not set
806CONFIG_FB_DEFERRED_IO=y
807# CONFIG_FB_SVGALIB is not set 807# CONFIG_FB_SVGALIB is not set
808# CONFIG_FB_MACMODES is not set 808# CONFIG_FB_MACMODES is not set
809# CONFIG_FB_BACKLIGHT is not set 809# CONFIG_FB_BACKLIGHT is not set
@@ -859,19 +859,15 @@ CONFIG_HIDRAW=y
859# CONFIG_MMC is not set 859# CONFIG_MMC is not set
860# CONFIG_MEMSTICK is not set 860# CONFIG_MEMSTICK is not set
861# CONFIG_NEW_LEDS is not set 861# CONFIG_NEW_LEDS is not set
862# CONFIG_ACCESSIBILITY is not set
862# CONFIG_RTC_CLASS is not set 863# CONFIG_RTC_CLASS is not set
863# CONFIG_AUXDISPLAY is not set 864# CONFIG_AUXDISPLAY is not set
864
865#
866# Userspace I/O
867#
868# CONFIG_UIO is not set 865# CONFIG_UIO is not set
869 866
870# 867#
871# Character devices 868# Character devices
872# 869#
873CONFIG_AMIGA_BUILTIN_SERIAL=y 870CONFIG_AMIGA_BUILTIN_SERIAL=y
874# CONFIG_WHIPPET_SERIAL is not set
875CONFIG_MULTIFACE_III_TTY=m 871CONFIG_MULTIFACE_III_TTY=m
876# CONFIG_SERIAL_CONSOLE is not set 872# CONFIG_SERIAL_CONSOLE is not set
877 873
@@ -894,16 +890,15 @@ CONFIG_JFS_FS=m
894# CONFIG_JFS_SECURITY is not set 890# CONFIG_JFS_SECURITY is not set
895# CONFIG_JFS_DEBUG is not set 891# CONFIG_JFS_DEBUG is not set
896# CONFIG_JFS_STATISTICS is not set 892# CONFIG_JFS_STATISTICS is not set
897CONFIG_FS_POSIX_ACL=y 893# CONFIG_FS_POSIX_ACL is not set
898CONFIG_XFS_FS=m 894CONFIG_XFS_FS=m
899# CONFIG_XFS_QUOTA is not set 895# CONFIG_XFS_QUOTA is not set
900# CONFIG_XFS_SECURITY is not set
901# CONFIG_XFS_POSIX_ACL is not set 896# CONFIG_XFS_POSIX_ACL is not set
902# CONFIG_XFS_RT is not set 897# CONFIG_XFS_RT is not set
903CONFIG_GFS2_FS=m 898# CONFIG_XFS_DEBUG is not set
904CONFIG_GFS2_FS_LOCKING_NOLOCK=m
905CONFIG_GFS2_FS_LOCKING_DLM=m
906CONFIG_OCFS2_FS=m 899CONFIG_OCFS2_FS=m
900CONFIG_OCFS2_FS_O2CB=m
901CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
907# CONFIG_OCFS2_DEBUG_MASKLOG is not set 902# CONFIG_OCFS2_DEBUG_MASKLOG is not set
908# CONFIG_OCFS2_DEBUG_FS is not set 903# CONFIG_OCFS2_DEBUG_FS is not set
909CONFIG_DNOTIFY=y 904CONFIG_DNOTIFY=y
@@ -975,12 +970,10 @@ CONFIG_NFS_FS=m
975CONFIG_NFS_V3=y 970CONFIG_NFS_V3=y
976# CONFIG_NFS_V3_ACL is not set 971# CONFIG_NFS_V3_ACL is not set
977CONFIG_NFS_V4=y 972CONFIG_NFS_V4=y
978# CONFIG_NFS_DIRECTIO is not set
979CONFIG_NFSD=m 973CONFIG_NFSD=m
980CONFIG_NFSD_V3=y 974CONFIG_NFSD_V3=y
981# CONFIG_NFSD_V3_ACL is not set 975# CONFIG_NFSD_V3_ACL is not set
982# CONFIG_NFSD_V4 is not set 976# CONFIG_NFSD_V4 is not set
983CONFIG_NFSD_TCP=y
984CONFIG_LOCKD=m 977CONFIG_LOCKD=m
985CONFIG_LOCKD_V4=y 978CONFIG_LOCKD_V4=y
986CONFIG_EXPORTFS=m 979CONFIG_EXPORTFS=m
@@ -1054,6 +1047,7 @@ CONFIG_DLM=m
1054# CONFIG_PRINTK_TIME is not set 1047# CONFIG_PRINTK_TIME is not set
1055CONFIG_ENABLE_WARN_DEPRECATED=y 1048CONFIG_ENABLE_WARN_DEPRECATED=y
1056CONFIG_ENABLE_MUST_CHECK=y 1049CONFIG_ENABLE_MUST_CHECK=y
1050CONFIG_FRAME_WARN=1024
1057CONFIG_MAGIC_SYSRQ=y 1051CONFIG_MAGIC_SYSRQ=y
1058# CONFIG_UNUSED_SYMBOLS is not set 1052# CONFIG_UNUSED_SYMBOLS is not set
1059# CONFIG_DEBUG_FS is not set 1053# CONFIG_DEBUG_FS is not set
@@ -1073,53 +1067,82 @@ CONFIG_ASYNC_CORE=m
1073CONFIG_ASYNC_MEMCPY=m 1067CONFIG_ASYNC_MEMCPY=m
1074CONFIG_ASYNC_XOR=m 1068CONFIG_ASYNC_XOR=m
1075CONFIG_CRYPTO=y 1069CONFIG_CRYPTO=y
1070
1071#
1072# Crypto core or helper
1073#
1076CONFIG_CRYPTO_ALGAPI=y 1074CONFIG_CRYPTO_ALGAPI=y
1077CONFIG_CRYPTO_AEAD=m 1075CONFIG_CRYPTO_AEAD=m
1078CONFIG_CRYPTO_BLKCIPHER=m 1076CONFIG_CRYPTO_BLKCIPHER=m
1079CONFIG_CRYPTO_SEQIV=m
1080CONFIG_CRYPTO_HASH=y 1077CONFIG_CRYPTO_HASH=y
1081CONFIG_CRYPTO_MANAGER=y 1078CONFIG_CRYPTO_MANAGER=y
1079CONFIG_CRYPTO_GF128MUL=m
1080CONFIG_CRYPTO_NULL=m
1081CONFIG_CRYPTO_CRYPTD=m
1082CONFIG_CRYPTO_AUTHENC=m
1083CONFIG_CRYPTO_TEST=m
1084
1085#
1086# Authenticated Encryption with Associated Data
1087#
1088CONFIG_CRYPTO_CCM=m
1089CONFIG_CRYPTO_GCM=m
1090CONFIG_CRYPTO_SEQIV=m
1091
1092#
1093# Block modes
1094#
1095CONFIG_CRYPTO_CBC=m
1096CONFIG_CRYPTO_CTR=m
1097CONFIG_CRYPTO_CTS=m
1098CONFIG_CRYPTO_ECB=m
1099CONFIG_CRYPTO_LRW=m
1100CONFIG_CRYPTO_PCBC=m
1101CONFIG_CRYPTO_XTS=m
1102
1103#
1104# Hash modes
1105#
1082CONFIG_CRYPTO_HMAC=y 1106CONFIG_CRYPTO_HMAC=y
1083CONFIG_CRYPTO_XCBC=m 1107CONFIG_CRYPTO_XCBC=m
1084CONFIG_CRYPTO_NULL=m 1108
1109#
1110# Digest
1111#
1112CONFIG_CRYPTO_CRC32C=m
1085CONFIG_CRYPTO_MD4=m 1113CONFIG_CRYPTO_MD4=m
1086CONFIG_CRYPTO_MD5=m 1114CONFIG_CRYPTO_MD5=m
1115CONFIG_CRYPTO_MICHAEL_MIC=m
1087CONFIG_CRYPTO_SHA1=m 1116CONFIG_CRYPTO_SHA1=m
1088CONFIG_CRYPTO_SHA256=m 1117CONFIG_CRYPTO_SHA256=m
1089CONFIG_CRYPTO_SHA512=m 1118CONFIG_CRYPTO_SHA512=m
1090CONFIG_CRYPTO_WP512=m
1091CONFIG_CRYPTO_TGR192=m 1119CONFIG_CRYPTO_TGR192=m
1092CONFIG_CRYPTO_GF128MUL=m 1120CONFIG_CRYPTO_WP512=m
1093CONFIG_CRYPTO_ECB=m 1121
1094CONFIG_CRYPTO_CBC=m 1122#
1095CONFIG_CRYPTO_PCBC=m 1123# Ciphers
1096CONFIG_CRYPTO_LRW=m 1124#
1097CONFIG_CRYPTO_XTS=m
1098CONFIG_CRYPTO_CTR=m
1099CONFIG_CRYPTO_GCM=m
1100CONFIG_CRYPTO_CCM=m
1101CONFIG_CRYPTO_CRYPTD=m
1102CONFIG_CRYPTO_DES=m
1103CONFIG_CRYPTO_FCRYPT=m
1104CONFIG_CRYPTO_BLOWFISH=m
1105CONFIG_CRYPTO_TWOFISH=m
1106CONFIG_CRYPTO_TWOFISH_COMMON=m
1107CONFIG_CRYPTO_SERPENT=m
1108CONFIG_CRYPTO_AES=m 1125CONFIG_CRYPTO_AES=m
1126CONFIG_CRYPTO_ANUBIS=m
1127CONFIG_CRYPTO_ARC4=m
1128CONFIG_CRYPTO_BLOWFISH=m
1129CONFIG_CRYPTO_CAMELLIA=m
1109CONFIG_CRYPTO_CAST5=m 1130CONFIG_CRYPTO_CAST5=m
1110CONFIG_CRYPTO_CAST6=m 1131CONFIG_CRYPTO_CAST6=m
1111CONFIG_CRYPTO_TEA=m 1132CONFIG_CRYPTO_DES=m
1112CONFIG_CRYPTO_ARC4=m 1133CONFIG_CRYPTO_FCRYPT=m
1113CONFIG_CRYPTO_KHAZAD=m 1134CONFIG_CRYPTO_KHAZAD=m
1114CONFIG_CRYPTO_ANUBIS=m
1115CONFIG_CRYPTO_SEED=m
1116CONFIG_CRYPTO_SALSA20=m 1135CONFIG_CRYPTO_SALSA20=m
1136CONFIG_CRYPTO_SEED=m
1137CONFIG_CRYPTO_SERPENT=m
1138CONFIG_CRYPTO_TEA=m
1139CONFIG_CRYPTO_TWOFISH=m
1140CONFIG_CRYPTO_TWOFISH_COMMON=m
1141
1142#
1143# Compression
1144#
1117CONFIG_CRYPTO_DEFLATE=m 1145CONFIG_CRYPTO_DEFLATE=m
1118CONFIG_CRYPTO_MICHAEL_MIC=m
1119CONFIG_CRYPTO_CRC32C=m
1120CONFIG_CRYPTO_CAMELLIA=m
1121CONFIG_CRYPTO_TEST=m
1122CONFIG_CRYPTO_AUTHENC=m
1123CONFIG_CRYPTO_LZO=m 1146CONFIG_CRYPTO_LZO=m
1124# CONFIG_CRYPTO_HW is not set 1147# CONFIG_CRYPTO_HW is not set
1125 1148
@@ -1127,9 +1150,11 @@ CONFIG_CRYPTO_LZO=m
1127# Library routines 1150# Library routines
1128# 1151#
1129CONFIG_BITREVERSE=y 1152CONFIG_BITREVERSE=y
1153# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1154# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1130CONFIG_CRC_CCITT=m 1155CONFIG_CRC_CCITT=m
1131CONFIG_CRC16=m 1156CONFIG_CRC16=m
1132# CONFIG_CRC_ITU_T is not set 1157CONFIG_CRC_ITU_T=m
1133CONFIG_CRC32=y 1158CONFIG_CRC32=y
1134# CONFIG_CRC7 is not set 1159# CONFIG_CRC7 is not set
1135CONFIG_LIBCRC32C=m 1160CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/apollo_defconfig b/arch/m68k/configs/apollo_defconfig
index e61196cd7fa5..e2d511e2a1d1 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:07 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -141,6 +144,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
141CONFIG_NEED_MULTIPLE_NODES=y 144CONFIG_NEED_MULTIPLE_NODES=y
142# CONFIG_SPARSEMEM_STATIC is not set 145# CONFIG_SPARSEMEM_STATIC is not set
143# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 146# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
147CONFIG_PAGEFLAGS_EXTENDED=y
144CONFIG_SPLIT_PTLOCK_CPUS=4 148CONFIG_SPLIT_PTLOCK_CPUS=4
145# CONFIG_RESOURCES_64BIT is not set 149# CONFIG_RESOURCES_64BIT is not set
146CONFIG_ZONE_DMA_FLAG=1 150CONFIG_ZONE_DMA_FLAG=1
@@ -220,8 +224,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
220CONFIG_INET6_XFRM_MODE_BEET=m 224CONFIG_INET6_XFRM_MODE_BEET=m
221CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 225CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
222CONFIG_IPV6_SIT=m 226CONFIG_IPV6_SIT=m
227CONFIG_IPV6_NDISC_NODETYPE=y
223CONFIG_IPV6_TUNNEL=m 228CONFIG_IPV6_TUNNEL=m
224# CONFIG_IPV6_MULTIPLE_TABLES is not set 229# CONFIG_IPV6_MULTIPLE_TABLES is not set
230# CONFIG_IPV6_MROUTE is not set
225# CONFIG_NETWORK_SECMARK is not set 231# CONFIG_NETWORK_SECMARK is not set
226CONFIG_NETFILTER=y 232CONFIG_NETFILTER=y
227# CONFIG_NETFILTER_DEBUG is not set 233# CONFIG_NETFILTER_DEBUG is not set
@@ -237,6 +243,7 @@ CONFIG_NF_CONNTRACK=m
237CONFIG_NF_CT_ACCT=y 243CONFIG_NF_CT_ACCT=y
238CONFIG_NF_CONNTRACK_MARK=y 244CONFIG_NF_CONNTRACK_MARK=y
239# CONFIG_NF_CONNTRACK_EVENTS is not set 245# CONFIG_NF_CONNTRACK_EVENTS is not set
246# CONFIG_NF_CT_PROTO_DCCP is not set
240CONFIG_NF_CT_PROTO_GRE=m 247CONFIG_NF_CT_PROTO_GRE=m
241CONFIG_NF_CT_PROTO_SCTP=m 248CONFIG_NF_CT_PROTO_SCTP=m
242CONFIG_NF_CT_PROTO_UDPLITE=m 249CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -315,6 +322,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
315CONFIG_IP_NF_TARGET_NETMAP=m 322CONFIG_IP_NF_TARGET_NETMAP=m
316CONFIG_NF_NAT_SNMP_BASIC=m 323CONFIG_NF_NAT_SNMP_BASIC=m
317CONFIG_NF_NAT_PROTO_GRE=m 324CONFIG_NF_NAT_PROTO_GRE=m
325CONFIG_NF_NAT_PROTO_UDPLITE=m
326CONFIG_NF_NAT_PROTO_SCTP=m
318CONFIG_NF_NAT_FTP=m 327CONFIG_NF_NAT_FTP=m
319CONFIG_NF_NAT_IRC=m 328CONFIG_NF_NAT_IRC=m
320CONFIG_NF_NAT_TFTP=m 329CONFIG_NF_NAT_TFTP=m
@@ -408,8 +417,6 @@ CONFIG_IEEE80211=m
408CONFIG_IEEE80211_CRYPT_WEP=m 417CONFIG_IEEE80211_CRYPT_WEP=m
409CONFIG_IEEE80211_CRYPT_CCMP=m 418CONFIG_IEEE80211_CRYPT_CCMP=m
410CONFIG_IEEE80211_CRYPT_TKIP=m 419CONFIG_IEEE80211_CRYPT_TKIP=m
411CONFIG_IEEE80211_SOFTMAC=m
412# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
413# CONFIG_RFKILL is not set 420# CONFIG_RFKILL is not set
414# CONFIG_NET_9P is not set 421# CONFIG_NET_9P is not set
415 422
@@ -539,6 +546,7 @@ CONFIG_APOLLO_ELPLUS=y
539# 546#
540# CONFIG_WLAN_PRE80211 is not set 547# CONFIG_WLAN_PRE80211 is not set
541# CONFIG_WLAN_80211 is not set 548# CONFIG_WLAN_80211 is not set
549# CONFIG_IWLWIFI_LEDS is not set
542# CONFIG_WAN is not set 550# CONFIG_WAN is not set
543CONFIG_PPP=m 551CONFIG_PPP=m
544# CONFIG_PPP_MULTILINK is not set 552# CONFIG_PPP_MULTILINK is not set
@@ -622,6 +630,7 @@ CONFIG_VT=y
622CONFIG_VT_CONSOLE=y 630CONFIG_VT_CONSOLE=y
623CONFIG_HW_CONSOLE=y 631CONFIG_HW_CONSOLE=y
624CONFIG_VT_HW_CONSOLE_BINDING=y 632CONFIG_VT_HW_CONSOLE_BINDING=y
633# CONFIG_DEVKMEM is not set
625# CONFIG_SERIAL_NONSTANDARD is not set 634# CONFIG_SERIAL_NONSTANDARD is not set
626 635
627# 636#
@@ -643,12 +652,7 @@ CONFIG_GEN_RTC_X=y
643# CONFIG_RAW_DRIVER is not set 652# CONFIG_RAW_DRIVER is not set
644# CONFIG_TCG_TPM is not set 653# CONFIG_TCG_TPM is not set
645# CONFIG_I2C is not set 654# CONFIG_I2C is not set
646
647#
648# SPI support
649#
650# CONFIG_SPI is not set 655# CONFIG_SPI is not set
651# CONFIG_SPI_MASTER is not set
652# CONFIG_W1 is not set 656# CONFIG_W1 is not set
653# CONFIG_POWER_SUPPLY is not set 657# CONFIG_POWER_SUPPLY is not set
654# CONFIG_HWMON is not set 658# CONFIG_HWMON is not set
@@ -665,12 +669,22 @@ CONFIG_SSB_POSSIBLE=y
665# Multifunction device drivers 669# Multifunction device drivers
666# 670#
667# CONFIG_MFD_SM501 is not set 671# CONFIG_MFD_SM501 is not set
672# CONFIG_HTC_PASIC3 is not set
668 673
669# 674#
670# Multimedia devices 675# Multimedia devices
671# 676#
677
678#
679# Multimedia core support
680#
672# CONFIG_VIDEO_DEV is not set 681# CONFIG_VIDEO_DEV is not set
673# CONFIG_DVB_CORE is not set 682# CONFIG_DVB_CORE is not set
683# CONFIG_VIDEO_MEDIA is not set
684
685#
686# Multimedia drivers
687#
674# CONFIG_DAB is not set 688# CONFIG_DAB is not set
675 689
676# 690#
@@ -688,8 +702,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
688# CONFIG_FB_SYS_FILLRECT is not set 702# CONFIG_FB_SYS_FILLRECT is not set
689# CONFIG_FB_SYS_COPYAREA is not set 703# CONFIG_FB_SYS_COPYAREA is not set
690# CONFIG_FB_SYS_IMAGEBLIT is not set 704# CONFIG_FB_SYS_IMAGEBLIT is not set
705# CONFIG_FB_FOREIGN_ENDIAN is not set
691# CONFIG_FB_SYS_FOPS is not set 706# CONFIG_FB_SYS_FOPS is not set
692CONFIG_FB_DEFERRED_IO=y
693# CONFIG_FB_SVGALIB is not set 707# CONFIG_FB_SVGALIB is not set
694# CONFIG_FB_MACMODES is not set 708# CONFIG_FB_MACMODES is not set
695# CONFIG_FB_BACKLIGHT is not set 709# CONFIG_FB_BACKLIGHT is not set
@@ -737,11 +751,8 @@ CONFIG_HIDRAW=y
737# CONFIG_MMC is not set 751# CONFIG_MMC is not set
738# CONFIG_MEMSTICK is not set 752# CONFIG_MEMSTICK is not set
739# CONFIG_NEW_LEDS is not set 753# CONFIG_NEW_LEDS is not set
754# CONFIG_ACCESSIBILITY is not set
740# CONFIG_RTC_CLASS is not set 755# CONFIG_RTC_CLASS is not set
741
742#
743# Userspace I/O
744#
745# CONFIG_UIO is not set 756# CONFIG_UIO is not set
746 757
747# 758#
@@ -769,16 +780,15 @@ CONFIG_JFS_FS=m
769# CONFIG_JFS_SECURITY is not set 780# CONFIG_JFS_SECURITY is not set
770# CONFIG_JFS_DEBUG is not set 781# CONFIG_JFS_DEBUG is not set
771# CONFIG_JFS_STATISTICS is not set 782# CONFIG_JFS_STATISTICS is not set
772CONFIG_FS_POSIX_ACL=y 783# CONFIG_FS_POSIX_ACL is not set
773CONFIG_XFS_FS=m 784CONFIG_XFS_FS=m
774# CONFIG_XFS_QUOTA is not set 785# CONFIG_XFS_QUOTA is not set
775# CONFIG_XFS_SECURITY is not set
776# CONFIG_XFS_POSIX_ACL is not set 786# CONFIG_XFS_POSIX_ACL is not set
777# CONFIG_XFS_RT is not set 787# CONFIG_XFS_RT is not set
778CONFIG_GFS2_FS=m 788# CONFIG_XFS_DEBUG is not set
779CONFIG_GFS2_FS_LOCKING_NOLOCK=m
780CONFIG_GFS2_FS_LOCKING_DLM=m
781CONFIG_OCFS2_FS=m 789CONFIG_OCFS2_FS=m
790CONFIG_OCFS2_FS_O2CB=m
791CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
782# CONFIG_OCFS2_DEBUG_MASKLOG is not set 792# CONFIG_OCFS2_DEBUG_MASKLOG is not set
783# CONFIG_OCFS2_DEBUG_FS is not set 793# CONFIG_OCFS2_DEBUG_FS is not set
784CONFIG_DNOTIFY=y 794CONFIG_DNOTIFY=y
@@ -850,12 +860,10 @@ CONFIG_NFS_FS=y
850CONFIG_NFS_V3=y 860CONFIG_NFS_V3=y
851# CONFIG_NFS_V3_ACL is not set 861# CONFIG_NFS_V3_ACL is not set
852CONFIG_NFS_V4=y 862CONFIG_NFS_V4=y
853# CONFIG_NFS_DIRECTIO is not set
854CONFIG_NFSD=m 863CONFIG_NFSD=m
855CONFIG_NFSD_V3=y 864CONFIG_NFSD_V3=y
856# CONFIG_NFSD_V3_ACL is not set 865# CONFIG_NFSD_V3_ACL is not set
857# CONFIG_NFSD_V4 is not set 866# CONFIG_NFSD_V4 is not set
858CONFIG_NFSD_TCP=y
859CONFIG_ROOT_NFS=y 867CONFIG_ROOT_NFS=y
860CONFIG_LOCKD=y 868CONFIG_LOCKD=y
861CONFIG_LOCKD_V4=y 869CONFIG_LOCKD_V4=y
@@ -929,6 +937,7 @@ CONFIG_DLM=m
929# CONFIG_PRINTK_TIME is not set 937# CONFIG_PRINTK_TIME is not set
930CONFIG_ENABLE_WARN_DEPRECATED=y 938CONFIG_ENABLE_WARN_DEPRECATED=y
931CONFIG_ENABLE_MUST_CHECK=y 939CONFIG_ENABLE_MUST_CHECK=y
940CONFIG_FRAME_WARN=1024
932CONFIG_MAGIC_SYSRQ=y 941CONFIG_MAGIC_SYSRQ=y
933# CONFIG_UNUSED_SYMBOLS is not set 942# CONFIG_UNUSED_SYMBOLS is not set
934# CONFIG_DEBUG_FS is not set 943# CONFIG_DEBUG_FS is not set
@@ -948,53 +957,82 @@ CONFIG_ASYNC_CORE=m
948CONFIG_ASYNC_MEMCPY=m 957CONFIG_ASYNC_MEMCPY=m
949CONFIG_ASYNC_XOR=m 958CONFIG_ASYNC_XOR=m
950CONFIG_CRYPTO=y 959CONFIG_CRYPTO=y
960
961#
962# Crypto core or helper
963#
951CONFIG_CRYPTO_ALGAPI=y 964CONFIG_CRYPTO_ALGAPI=y
952CONFIG_CRYPTO_AEAD=m 965CONFIG_CRYPTO_AEAD=m
953CONFIG_CRYPTO_BLKCIPHER=y 966CONFIG_CRYPTO_BLKCIPHER=y
954CONFIG_CRYPTO_SEQIV=m
955CONFIG_CRYPTO_HASH=y 967CONFIG_CRYPTO_HASH=y
956CONFIG_CRYPTO_MANAGER=y 968CONFIG_CRYPTO_MANAGER=y
969CONFIG_CRYPTO_GF128MUL=m
970CONFIG_CRYPTO_NULL=m
971CONFIG_CRYPTO_CRYPTD=m
972CONFIG_CRYPTO_AUTHENC=m
973CONFIG_CRYPTO_TEST=m
974
975#
976# Authenticated Encryption with Associated Data
977#
978CONFIG_CRYPTO_CCM=m
979CONFIG_CRYPTO_GCM=m
980CONFIG_CRYPTO_SEQIV=m
981
982#
983# Block modes
984#
985CONFIG_CRYPTO_CBC=y
986CONFIG_CRYPTO_CTR=m
987CONFIG_CRYPTO_CTS=m
988CONFIG_CRYPTO_ECB=m
989CONFIG_CRYPTO_LRW=m
990CONFIG_CRYPTO_PCBC=m
991CONFIG_CRYPTO_XTS=m
992
993#
994# Hash modes
995#
957CONFIG_CRYPTO_HMAC=y 996CONFIG_CRYPTO_HMAC=y
958CONFIG_CRYPTO_XCBC=m 997CONFIG_CRYPTO_XCBC=m
959CONFIG_CRYPTO_NULL=m 998
999#
1000# Digest
1001#
1002CONFIG_CRYPTO_CRC32C=m
960CONFIG_CRYPTO_MD4=m 1003CONFIG_CRYPTO_MD4=m
961CONFIG_CRYPTO_MD5=y 1004CONFIG_CRYPTO_MD5=y
1005CONFIG_CRYPTO_MICHAEL_MIC=m
962CONFIG_CRYPTO_SHA1=m 1006CONFIG_CRYPTO_SHA1=m
963CONFIG_CRYPTO_SHA256=m 1007CONFIG_CRYPTO_SHA256=m
964CONFIG_CRYPTO_SHA512=m 1008CONFIG_CRYPTO_SHA512=m
965CONFIG_CRYPTO_WP512=m
966CONFIG_CRYPTO_TGR192=m 1009CONFIG_CRYPTO_TGR192=m
967CONFIG_CRYPTO_GF128MUL=m 1010CONFIG_CRYPTO_WP512=m
968CONFIG_CRYPTO_ECB=m 1011
969CONFIG_CRYPTO_CBC=y 1012#
970CONFIG_CRYPTO_PCBC=m 1013# Ciphers
971CONFIG_CRYPTO_LRW=m 1014#
972CONFIG_CRYPTO_XTS=m
973CONFIG_CRYPTO_CTR=m
974CONFIG_CRYPTO_GCM=m
975CONFIG_CRYPTO_CCM=m
976CONFIG_CRYPTO_CRYPTD=m
977CONFIG_CRYPTO_DES=y
978CONFIG_CRYPTO_FCRYPT=m
979CONFIG_CRYPTO_BLOWFISH=m
980CONFIG_CRYPTO_TWOFISH=m
981CONFIG_CRYPTO_TWOFISH_COMMON=m
982CONFIG_CRYPTO_SERPENT=m
983CONFIG_CRYPTO_AES=m 1015CONFIG_CRYPTO_AES=m
1016CONFIG_CRYPTO_ANUBIS=m
1017CONFIG_CRYPTO_ARC4=m
1018CONFIG_CRYPTO_BLOWFISH=m
1019CONFIG_CRYPTO_CAMELLIA=m
984CONFIG_CRYPTO_CAST5=m 1020CONFIG_CRYPTO_CAST5=m
985CONFIG_CRYPTO_CAST6=m 1021CONFIG_CRYPTO_CAST6=m
986CONFIG_CRYPTO_TEA=m 1022CONFIG_CRYPTO_DES=y
987CONFIG_CRYPTO_ARC4=m 1023CONFIG_CRYPTO_FCRYPT=m
988CONFIG_CRYPTO_KHAZAD=m 1024CONFIG_CRYPTO_KHAZAD=m
989CONFIG_CRYPTO_ANUBIS=m
990CONFIG_CRYPTO_SEED=m
991CONFIG_CRYPTO_SALSA20=m 1025CONFIG_CRYPTO_SALSA20=m
1026CONFIG_CRYPTO_SEED=m
1027CONFIG_CRYPTO_SERPENT=m
1028CONFIG_CRYPTO_TEA=m
1029CONFIG_CRYPTO_TWOFISH=m
1030CONFIG_CRYPTO_TWOFISH_COMMON=m
1031
1032#
1033# Compression
1034#
992CONFIG_CRYPTO_DEFLATE=m 1035CONFIG_CRYPTO_DEFLATE=m
993CONFIG_CRYPTO_MICHAEL_MIC=m
994CONFIG_CRYPTO_CRC32C=m
995CONFIG_CRYPTO_CAMELLIA=m
996CONFIG_CRYPTO_TEST=m
997CONFIG_CRYPTO_AUTHENC=m
998CONFIG_CRYPTO_LZO=m 1036CONFIG_CRYPTO_LZO=m
999# CONFIG_CRYPTO_HW is not set 1037# CONFIG_CRYPTO_HW is not set
1000 1038
@@ -1002,9 +1040,11 @@ CONFIG_CRYPTO_LZO=m
1002# Library routines 1040# Library routines
1003# 1041#
1004CONFIG_BITREVERSE=y 1042CONFIG_BITREVERSE=y
1043# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1044# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1005CONFIG_CRC_CCITT=m 1045CONFIG_CRC_CCITT=m
1006CONFIG_CRC16=m 1046CONFIG_CRC16=m
1007# CONFIG_CRC_ITU_T is not set 1047CONFIG_CRC_ITU_T=m
1008CONFIG_CRC32=y 1048CONFIG_CRC32=y
1009# CONFIG_CRC7 is not set 1049# CONFIG_CRC7 is not set
1010CONFIG_LIBCRC32C=m 1050CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/atari_defconfig b/arch/m68k/configs/atari_defconfig
index ba7f971bb026..6e20d656adaf 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:09 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -141,6 +144,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
141CONFIG_NEED_MULTIPLE_NODES=y 144CONFIG_NEED_MULTIPLE_NODES=y
142# CONFIG_SPARSEMEM_STATIC is not set 145# CONFIG_SPARSEMEM_STATIC is not set
143# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 146# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
147CONFIG_PAGEFLAGS_EXTENDED=y
144CONFIG_SPLIT_PTLOCK_CPUS=4 148CONFIG_SPLIT_PTLOCK_CPUS=4
145# CONFIG_RESOURCES_64BIT is not set 149# CONFIG_RESOURCES_64BIT is not set
146CONFIG_ZONE_DMA_FLAG=1 150CONFIG_ZONE_DMA_FLAG=1
@@ -218,8 +222,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
218CONFIG_INET6_XFRM_MODE_BEET=m 222CONFIG_INET6_XFRM_MODE_BEET=m
219CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 223CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
220CONFIG_IPV6_SIT=m 224CONFIG_IPV6_SIT=m
225CONFIG_IPV6_NDISC_NODETYPE=y
221CONFIG_IPV6_TUNNEL=m 226CONFIG_IPV6_TUNNEL=m
222# CONFIG_IPV6_MULTIPLE_TABLES is not set 227# CONFIG_IPV6_MULTIPLE_TABLES is not set
228# CONFIG_IPV6_MROUTE is not set
223# CONFIG_NETWORK_SECMARK is not set 229# CONFIG_NETWORK_SECMARK is not set
224CONFIG_NETFILTER=y 230CONFIG_NETFILTER=y
225# CONFIG_NETFILTER_DEBUG is not set 231# CONFIG_NETFILTER_DEBUG is not set
@@ -235,6 +241,7 @@ CONFIG_NF_CONNTRACK=m
235CONFIG_NF_CT_ACCT=y 241CONFIG_NF_CT_ACCT=y
236CONFIG_NF_CONNTRACK_MARK=y 242CONFIG_NF_CONNTRACK_MARK=y
237# CONFIG_NF_CONNTRACK_EVENTS is not set 243# CONFIG_NF_CONNTRACK_EVENTS is not set
244# CONFIG_NF_CT_PROTO_DCCP is not set
238CONFIG_NF_CT_PROTO_GRE=m 245CONFIG_NF_CT_PROTO_GRE=m
239CONFIG_NF_CT_PROTO_SCTP=m 246CONFIG_NF_CT_PROTO_SCTP=m
240CONFIG_NF_CT_PROTO_UDPLITE=m 247CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -313,6 +320,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
313CONFIG_IP_NF_TARGET_NETMAP=m 320CONFIG_IP_NF_TARGET_NETMAP=m
314CONFIG_NF_NAT_SNMP_BASIC=m 321CONFIG_NF_NAT_SNMP_BASIC=m
315CONFIG_NF_NAT_PROTO_GRE=m 322CONFIG_NF_NAT_PROTO_GRE=m
323CONFIG_NF_NAT_PROTO_UDPLITE=m
324CONFIG_NF_NAT_PROTO_SCTP=m
316CONFIG_NF_NAT_FTP=m 325CONFIG_NF_NAT_FTP=m
317CONFIG_NF_NAT_IRC=m 326CONFIG_NF_NAT_IRC=m
318CONFIG_NF_NAT_TFTP=m 327CONFIG_NF_NAT_TFTP=m
@@ -406,8 +415,6 @@ CONFIG_IEEE80211=m
406CONFIG_IEEE80211_CRYPT_WEP=m 415CONFIG_IEEE80211_CRYPT_WEP=m
407CONFIG_IEEE80211_CRYPT_CCMP=m 416CONFIG_IEEE80211_CRYPT_CCMP=m
408CONFIG_IEEE80211_CRYPT_TKIP=m 417CONFIG_IEEE80211_CRYPT_TKIP=m
409CONFIG_IEEE80211_SOFTMAC=m
410# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
411# CONFIG_RFKILL is not set 418# CONFIG_RFKILL is not set
412# CONFIG_NET_9P is not set 419# CONFIG_NET_9P is not set
413 420
@@ -469,11 +476,10 @@ CONFIG_IDE_PROC_FS=y
469# 476#
470# IDE chipset support/bugfixes 477# IDE chipset support/bugfixes
471# 478#
472# CONFIG_IDE_GENERIC is not set
473# CONFIG_BLK_DEV_PLATFORM is not set 479# CONFIG_BLK_DEV_PLATFORM is not set
474CONFIG_BLK_DEV_FALCON_IDE=y 480CONFIG_BLK_DEV_FALCON_IDE=y
475# CONFIG_BLK_DEV_IDEDMA is not set 481# CONFIG_BLK_DEV_IDEDMA is not set
476# CONFIG_IDE_ARCH_OBSOLETE_INIT is not set 482# CONFIG_BLK_DEV_HD_ONLY is not set
477# CONFIG_BLK_DEV_HD is not set 483# CONFIG_BLK_DEV_HD is not set
478 484
479# 485#
@@ -572,6 +578,7 @@ CONFIG_ATARILANCE=m
572# 578#
573# CONFIG_WLAN_PRE80211 is not set 579# CONFIG_WLAN_PRE80211 is not set
574# CONFIG_WLAN_80211 is not set 580# CONFIG_WLAN_80211 is not set
581# CONFIG_IWLWIFI_LEDS is not set
575# CONFIG_WAN is not set 582# CONFIG_WAN is not set
576# CONFIG_PLIP is not set 583# CONFIG_PLIP is not set
577CONFIG_PPP=m 584CONFIG_PPP=m
@@ -662,6 +669,7 @@ CONFIG_VT=y
662CONFIG_VT_CONSOLE=y 669CONFIG_VT_CONSOLE=y
663CONFIG_HW_CONSOLE=y 670CONFIG_HW_CONSOLE=y
664CONFIG_VT_HW_CONSOLE_BINDING=y 671CONFIG_VT_HW_CONSOLE_BINDING=y
672# CONFIG_DEVKMEM is not set
665# CONFIG_SERIAL_NONSTANDARD is not set 673# CONFIG_SERIAL_NONSTANDARD is not set
666 674
667# 675#
@@ -687,12 +695,7 @@ CONFIG_GEN_RTC_X=y
687# CONFIG_RAW_DRIVER is not set 695# CONFIG_RAW_DRIVER is not set
688# CONFIG_TCG_TPM is not set 696# CONFIG_TCG_TPM is not set
689# CONFIG_I2C is not set 697# CONFIG_I2C is not set
690
691#
692# SPI support
693#
694# CONFIG_SPI is not set 698# CONFIG_SPI is not set
695# CONFIG_SPI_MASTER is not set
696# CONFIG_W1 is not set 699# CONFIG_W1 is not set
697# CONFIG_POWER_SUPPLY is not set 700# CONFIG_POWER_SUPPLY is not set
698# CONFIG_HWMON is not set 701# CONFIG_HWMON is not set
@@ -709,12 +712,22 @@ CONFIG_SSB_POSSIBLE=y
709# Multifunction device drivers 712# Multifunction device drivers
710# 713#
711# CONFIG_MFD_SM501 is not set 714# CONFIG_MFD_SM501 is not set
715# CONFIG_HTC_PASIC3 is not set
712 716
713# 717#
714# Multimedia devices 718# Multimedia devices
715# 719#
720
721#
722# Multimedia core support
723#
716# CONFIG_VIDEO_DEV is not set 724# CONFIG_VIDEO_DEV is not set
717# CONFIG_DVB_CORE is not set 725# CONFIG_DVB_CORE is not set
726# CONFIG_VIDEO_MEDIA is not set
727
728#
729# Multimedia drivers
730#
718# CONFIG_DAB is not set 731# CONFIG_DAB is not set
719 732
720# 733#
@@ -732,8 +745,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
732# CONFIG_FB_SYS_FILLRECT is not set 745# CONFIG_FB_SYS_FILLRECT is not set
733# CONFIG_FB_SYS_COPYAREA is not set 746# CONFIG_FB_SYS_COPYAREA is not set
734# CONFIG_FB_SYS_IMAGEBLIT is not set 747# CONFIG_FB_SYS_IMAGEBLIT is not set
748# CONFIG_FB_FOREIGN_ENDIAN is not set
735# CONFIG_FB_SYS_FOPS is not set 749# CONFIG_FB_SYS_FOPS is not set
736CONFIG_FB_DEFERRED_IO=y
737# CONFIG_FB_SVGALIB is not set 750# CONFIG_FB_SVGALIB is not set
738# CONFIG_FB_MACMODES is not set 751# CONFIG_FB_MACMODES is not set
739# CONFIG_FB_BACKLIGHT is not set 752# CONFIG_FB_BACKLIGHT is not set
@@ -784,12 +797,9 @@ CONFIG_HIDRAW=y
784# CONFIG_MMC is not set 797# CONFIG_MMC is not set
785# CONFIG_MEMSTICK is not set 798# CONFIG_MEMSTICK is not set
786# CONFIG_NEW_LEDS is not set 799# CONFIG_NEW_LEDS is not set
800# CONFIG_ACCESSIBILITY is not set
787# CONFIG_RTC_CLASS is not set 801# CONFIG_RTC_CLASS is not set
788# CONFIG_AUXDISPLAY is not set 802# CONFIG_AUXDISPLAY is not set
789
790#
791# Userspace I/O
792#
793# CONFIG_UIO is not set 803# CONFIG_UIO is not set
794 804
795# 805#
@@ -821,16 +831,15 @@ CONFIG_JFS_FS=m
821# CONFIG_JFS_SECURITY is not set 831# CONFIG_JFS_SECURITY is not set
822# CONFIG_JFS_DEBUG is not set 832# CONFIG_JFS_DEBUG is not set
823# CONFIG_JFS_STATISTICS is not set 833# CONFIG_JFS_STATISTICS is not set
824CONFIG_FS_POSIX_ACL=y 834# CONFIG_FS_POSIX_ACL is not set
825CONFIG_XFS_FS=m 835CONFIG_XFS_FS=m
826# CONFIG_XFS_QUOTA is not set 836# CONFIG_XFS_QUOTA is not set
827# CONFIG_XFS_SECURITY is not set
828# CONFIG_XFS_POSIX_ACL is not set 837# CONFIG_XFS_POSIX_ACL is not set
829# CONFIG_XFS_RT is not set 838# CONFIG_XFS_RT is not set
830CONFIG_GFS2_FS=m 839# CONFIG_XFS_DEBUG is not set
831CONFIG_GFS2_FS_LOCKING_NOLOCK=m
832CONFIG_GFS2_FS_LOCKING_DLM=m
833CONFIG_OCFS2_FS=m 840CONFIG_OCFS2_FS=m
841CONFIG_OCFS2_FS_O2CB=m
842CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
834# CONFIG_OCFS2_DEBUG_MASKLOG is not set 843# CONFIG_OCFS2_DEBUG_MASKLOG is not set
835# CONFIG_OCFS2_DEBUG_FS is not set 844# CONFIG_OCFS2_DEBUG_FS is not set
836CONFIG_DNOTIFY=y 845CONFIG_DNOTIFY=y
@@ -902,12 +911,10 @@ CONFIG_NFS_FS=m
902CONFIG_NFS_V3=y 911CONFIG_NFS_V3=y
903# CONFIG_NFS_V3_ACL is not set 912# CONFIG_NFS_V3_ACL is not set
904# CONFIG_NFS_V4 is not set 913# CONFIG_NFS_V4 is not set
905# CONFIG_NFS_DIRECTIO is not set
906CONFIG_NFSD=m 914CONFIG_NFSD=m
907CONFIG_NFSD_V3=y 915CONFIG_NFSD_V3=y
908# CONFIG_NFSD_V3_ACL is not set 916# CONFIG_NFSD_V3_ACL is not set
909# CONFIG_NFSD_V4 is not set 917# CONFIG_NFSD_V4 is not set
910CONFIG_NFSD_TCP=y
911CONFIG_LOCKD=m 918CONFIG_LOCKD=m
912CONFIG_LOCKD_V4=y 919CONFIG_LOCKD_V4=y
913CONFIG_EXPORTFS=m 920CONFIG_EXPORTFS=m
@@ -980,6 +987,7 @@ CONFIG_DLM=m
980# CONFIG_PRINTK_TIME is not set 987# CONFIG_PRINTK_TIME is not set
981CONFIG_ENABLE_WARN_DEPRECATED=y 988CONFIG_ENABLE_WARN_DEPRECATED=y
982CONFIG_ENABLE_MUST_CHECK=y 989CONFIG_ENABLE_MUST_CHECK=y
990CONFIG_FRAME_WARN=1024
983CONFIG_MAGIC_SYSRQ=y 991CONFIG_MAGIC_SYSRQ=y
984# CONFIG_UNUSED_SYMBOLS is not set 992# CONFIG_UNUSED_SYMBOLS is not set
985# CONFIG_DEBUG_FS is not set 993# CONFIG_DEBUG_FS is not set
@@ -999,53 +1007,82 @@ CONFIG_ASYNC_CORE=m
999CONFIG_ASYNC_MEMCPY=m 1007CONFIG_ASYNC_MEMCPY=m
1000CONFIG_ASYNC_XOR=m 1008CONFIG_ASYNC_XOR=m
1001CONFIG_CRYPTO=y 1009CONFIG_CRYPTO=y
1010
1011#
1012# Crypto core or helper
1013#
1002CONFIG_CRYPTO_ALGAPI=y 1014CONFIG_CRYPTO_ALGAPI=y
1003CONFIG_CRYPTO_AEAD=m 1015CONFIG_CRYPTO_AEAD=m
1004CONFIG_CRYPTO_BLKCIPHER=m 1016CONFIG_CRYPTO_BLKCIPHER=m
1005CONFIG_CRYPTO_SEQIV=m
1006CONFIG_CRYPTO_HASH=y 1017CONFIG_CRYPTO_HASH=y
1007CONFIG_CRYPTO_MANAGER=y 1018CONFIG_CRYPTO_MANAGER=y
1019CONFIG_CRYPTO_GF128MUL=m
1020CONFIG_CRYPTO_NULL=m
1021CONFIG_CRYPTO_CRYPTD=m
1022CONFIG_CRYPTO_AUTHENC=m
1023CONFIG_CRYPTO_TEST=m
1024
1025#
1026# Authenticated Encryption with Associated Data
1027#
1028CONFIG_CRYPTO_CCM=m
1029CONFIG_CRYPTO_GCM=m
1030CONFIG_CRYPTO_SEQIV=m
1031
1032#
1033# Block modes
1034#
1035CONFIG_CRYPTO_CBC=m
1036CONFIG_CRYPTO_CTR=m
1037CONFIG_CRYPTO_CTS=m
1038CONFIG_CRYPTO_ECB=m
1039CONFIG_CRYPTO_LRW=m
1040CONFIG_CRYPTO_PCBC=m
1041CONFIG_CRYPTO_XTS=m
1042
1043#
1044# Hash modes
1045#
1008CONFIG_CRYPTO_HMAC=y 1046CONFIG_CRYPTO_HMAC=y
1009CONFIG_CRYPTO_XCBC=m 1047CONFIG_CRYPTO_XCBC=m
1010CONFIG_CRYPTO_NULL=m 1048
1049#
1050# Digest
1051#
1052CONFIG_CRYPTO_CRC32C=m
1011CONFIG_CRYPTO_MD4=m 1053CONFIG_CRYPTO_MD4=m
1012CONFIG_CRYPTO_MD5=m 1054CONFIG_CRYPTO_MD5=m
1055CONFIG_CRYPTO_MICHAEL_MIC=m
1013CONFIG_CRYPTO_SHA1=m 1056CONFIG_CRYPTO_SHA1=m
1014CONFIG_CRYPTO_SHA256=m 1057CONFIG_CRYPTO_SHA256=m
1015CONFIG_CRYPTO_SHA512=m 1058CONFIG_CRYPTO_SHA512=m
1016CONFIG_CRYPTO_WP512=m
1017CONFIG_CRYPTO_TGR192=m 1059CONFIG_CRYPTO_TGR192=m
1018CONFIG_CRYPTO_GF128MUL=m 1060CONFIG_CRYPTO_WP512=m
1019CONFIG_CRYPTO_ECB=m 1061
1020CONFIG_CRYPTO_CBC=m 1062#
1021CONFIG_CRYPTO_PCBC=m 1063# Ciphers
1022CONFIG_CRYPTO_LRW=m 1064#
1023CONFIG_CRYPTO_XTS=m
1024CONFIG_CRYPTO_CTR=m
1025CONFIG_CRYPTO_GCM=m
1026CONFIG_CRYPTO_CCM=m
1027CONFIG_CRYPTO_CRYPTD=m
1028CONFIG_CRYPTO_DES=m
1029CONFIG_CRYPTO_FCRYPT=m
1030CONFIG_CRYPTO_BLOWFISH=m
1031CONFIG_CRYPTO_TWOFISH=m
1032CONFIG_CRYPTO_TWOFISH_COMMON=m
1033CONFIG_CRYPTO_SERPENT=m
1034CONFIG_CRYPTO_AES=m 1065CONFIG_CRYPTO_AES=m
1066CONFIG_CRYPTO_ANUBIS=m
1067CONFIG_CRYPTO_ARC4=m
1068CONFIG_CRYPTO_BLOWFISH=m
1069CONFIG_CRYPTO_CAMELLIA=m
1035CONFIG_CRYPTO_CAST5=m 1070CONFIG_CRYPTO_CAST5=m
1036CONFIG_CRYPTO_CAST6=m 1071CONFIG_CRYPTO_CAST6=m
1037CONFIG_CRYPTO_TEA=m 1072CONFIG_CRYPTO_DES=m
1038CONFIG_CRYPTO_ARC4=m 1073CONFIG_CRYPTO_FCRYPT=m
1039CONFIG_CRYPTO_KHAZAD=m 1074CONFIG_CRYPTO_KHAZAD=m
1040CONFIG_CRYPTO_ANUBIS=m
1041CONFIG_CRYPTO_SEED=m
1042CONFIG_CRYPTO_SALSA20=m 1075CONFIG_CRYPTO_SALSA20=m
1076CONFIG_CRYPTO_SEED=m
1077CONFIG_CRYPTO_SERPENT=m
1078CONFIG_CRYPTO_TEA=m
1079CONFIG_CRYPTO_TWOFISH=m
1080CONFIG_CRYPTO_TWOFISH_COMMON=m
1081
1082#
1083# Compression
1084#
1043CONFIG_CRYPTO_DEFLATE=m 1085CONFIG_CRYPTO_DEFLATE=m
1044CONFIG_CRYPTO_MICHAEL_MIC=m
1045CONFIG_CRYPTO_CRC32C=m
1046CONFIG_CRYPTO_CAMELLIA=m
1047CONFIG_CRYPTO_TEST=m
1048CONFIG_CRYPTO_AUTHENC=m
1049CONFIG_CRYPTO_LZO=m 1086CONFIG_CRYPTO_LZO=m
1050# CONFIG_CRYPTO_HW is not set 1087# CONFIG_CRYPTO_HW is not set
1051 1088
@@ -1053,9 +1090,11 @@ CONFIG_CRYPTO_LZO=m
1053# Library routines 1090# Library routines
1054# 1091#
1055CONFIG_BITREVERSE=y 1092CONFIG_BITREVERSE=y
1093# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1094# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1056CONFIG_CRC_CCITT=m 1095CONFIG_CRC_CCITT=m
1057CONFIG_CRC16=y 1096CONFIG_CRC16=y
1058# CONFIG_CRC_ITU_T is not set 1097CONFIG_CRC_ITU_T=m
1059CONFIG_CRC32=y 1098CONFIG_CRC32=y
1060# CONFIG_CRC7 is not set 1099# CONFIG_CRC7 is not set
1061CONFIG_LIBCRC32C=m 1100CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/bvme6000_defconfig b/arch/m68k/configs/bvme6000_defconfig
index ed98eff708c4..a0a9b30bb502 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:10 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -144,6 +147,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
144CONFIG_NEED_MULTIPLE_NODES=y 147CONFIG_NEED_MULTIPLE_NODES=y
145# CONFIG_SPARSEMEM_STATIC is not set 148# CONFIG_SPARSEMEM_STATIC is not set
146# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 149# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
150CONFIG_PAGEFLAGS_EXTENDED=y
147CONFIG_SPLIT_PTLOCK_CPUS=4 151CONFIG_SPLIT_PTLOCK_CPUS=4
148# CONFIG_RESOURCES_64BIT is not set 152# CONFIG_RESOURCES_64BIT is not set
149CONFIG_ZONE_DMA_FLAG=1 153CONFIG_ZONE_DMA_FLAG=1
@@ -222,8 +226,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
222CONFIG_INET6_XFRM_MODE_BEET=m 226CONFIG_INET6_XFRM_MODE_BEET=m
223CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 227CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
224CONFIG_IPV6_SIT=m 228CONFIG_IPV6_SIT=m
229CONFIG_IPV6_NDISC_NODETYPE=y
225CONFIG_IPV6_TUNNEL=m 230CONFIG_IPV6_TUNNEL=m
226# CONFIG_IPV6_MULTIPLE_TABLES is not set 231# CONFIG_IPV6_MULTIPLE_TABLES is not set
232# CONFIG_IPV6_MROUTE is not set
227# CONFIG_NETWORK_SECMARK is not set 233# CONFIG_NETWORK_SECMARK is not set
228CONFIG_NETFILTER=y 234CONFIG_NETFILTER=y
229# CONFIG_NETFILTER_DEBUG is not set 235# CONFIG_NETFILTER_DEBUG is not set
@@ -239,6 +245,7 @@ CONFIG_NF_CONNTRACK=m
239CONFIG_NF_CT_ACCT=y 245CONFIG_NF_CT_ACCT=y
240CONFIG_NF_CONNTRACK_MARK=y 246CONFIG_NF_CONNTRACK_MARK=y
241# CONFIG_NF_CONNTRACK_EVENTS is not set 247# CONFIG_NF_CONNTRACK_EVENTS is not set
248# CONFIG_NF_CT_PROTO_DCCP is not set
242CONFIG_NF_CT_PROTO_GRE=m 249CONFIG_NF_CT_PROTO_GRE=m
243CONFIG_NF_CT_PROTO_SCTP=m 250CONFIG_NF_CT_PROTO_SCTP=m
244CONFIG_NF_CT_PROTO_UDPLITE=m 251CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -317,6 +324,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
317CONFIG_IP_NF_TARGET_NETMAP=m 324CONFIG_IP_NF_TARGET_NETMAP=m
318CONFIG_NF_NAT_SNMP_BASIC=m 325CONFIG_NF_NAT_SNMP_BASIC=m
319CONFIG_NF_NAT_PROTO_GRE=m 326CONFIG_NF_NAT_PROTO_GRE=m
327CONFIG_NF_NAT_PROTO_UDPLITE=m
328CONFIG_NF_NAT_PROTO_SCTP=m
320CONFIG_NF_NAT_FTP=m 329CONFIG_NF_NAT_FTP=m
321CONFIG_NF_NAT_IRC=m 330CONFIG_NF_NAT_IRC=m
322CONFIG_NF_NAT_TFTP=m 331CONFIG_NF_NAT_TFTP=m
@@ -410,8 +419,6 @@ CONFIG_IEEE80211=m
410CONFIG_IEEE80211_CRYPT_WEP=m 419CONFIG_IEEE80211_CRYPT_WEP=m
411CONFIG_IEEE80211_CRYPT_CCMP=m 420CONFIG_IEEE80211_CRYPT_CCMP=m
412CONFIG_IEEE80211_CRYPT_TKIP=m 421CONFIG_IEEE80211_CRYPT_TKIP=m
413CONFIG_IEEE80211_SOFTMAC=m
414# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
415# CONFIG_RFKILL is not set 422# CONFIG_RFKILL is not set
416# CONFIG_NET_9P is not set 423# CONFIG_NET_9P is not set
417 424
@@ -543,6 +550,7 @@ CONFIG_BVME6000_NET=y
543# 550#
544# CONFIG_WLAN_PRE80211 is not set 551# CONFIG_WLAN_PRE80211 is not set
545# CONFIG_WLAN_80211 is not set 552# CONFIG_WLAN_80211 is not set
553# CONFIG_IWLWIFI_LEDS is not set
546# CONFIG_WAN is not set 554# CONFIG_WAN is not set
547CONFIG_PPP=m 555CONFIG_PPP=m
548# CONFIG_PPP_MULTILINK is not set 556# CONFIG_PPP_MULTILINK is not set
@@ -626,6 +634,7 @@ CONFIG_VT=y
626CONFIG_VT_CONSOLE=y 634CONFIG_VT_CONSOLE=y
627CONFIG_HW_CONSOLE=y 635CONFIG_HW_CONSOLE=y
628CONFIG_VT_HW_CONSOLE_BINDING=y 636CONFIG_VT_HW_CONSOLE_BINDING=y
637# CONFIG_DEVKMEM is not set
629# CONFIG_SERIAL_NONSTANDARD is not set 638# CONFIG_SERIAL_NONSTANDARD is not set
630 639
631# 640#
@@ -647,12 +656,7 @@ CONFIG_GEN_RTC_X=y
647# CONFIG_RAW_DRIVER is not set 656# CONFIG_RAW_DRIVER is not set
648# CONFIG_TCG_TPM is not set 657# CONFIG_TCG_TPM is not set
649# CONFIG_I2C is not set 658# CONFIG_I2C is not set
650
651#
652# SPI support
653#
654# CONFIG_SPI is not set 659# CONFIG_SPI is not set
655# CONFIG_SPI_MASTER is not set
656# CONFIG_W1 is not set 660# CONFIG_W1 is not set
657# CONFIG_POWER_SUPPLY is not set 661# CONFIG_POWER_SUPPLY is not set
658# CONFIG_HWMON is not set 662# CONFIG_HWMON is not set
@@ -669,12 +673,22 @@ CONFIG_SSB_POSSIBLE=y
669# Multifunction device drivers 673# Multifunction device drivers
670# 674#
671# CONFIG_MFD_SM501 is not set 675# CONFIG_MFD_SM501 is not set
676# CONFIG_HTC_PASIC3 is not set
672 677
673# 678#
674# Multimedia devices 679# Multimedia devices
675# 680#
681
682#
683# Multimedia core support
684#
676# CONFIG_VIDEO_DEV is not set 685# CONFIG_VIDEO_DEV is not set
677# CONFIG_DVB_CORE is not set 686# CONFIG_DVB_CORE is not set
687# CONFIG_VIDEO_MEDIA is not set
688
689#
690# Multimedia drivers
691#
678# CONFIG_DAB is not set 692# CONFIG_DAB is not set
679 693
680# 694#
@@ -707,11 +721,8 @@ CONFIG_HIDRAW=y
707# CONFIG_MMC is not set 721# CONFIG_MMC is not set
708# CONFIG_MEMSTICK is not set 722# CONFIG_MEMSTICK is not set
709# CONFIG_NEW_LEDS is not set 723# CONFIG_NEW_LEDS is not set
724# CONFIG_ACCESSIBILITY is not set
710# CONFIG_RTC_CLASS is not set 725# CONFIG_RTC_CLASS is not set
711
712#
713# Userspace I/O
714#
715# CONFIG_UIO is not set 726# CONFIG_UIO is not set
716 727
717# 728#
@@ -739,16 +750,15 @@ CONFIG_JFS_FS=m
739# CONFIG_JFS_SECURITY is not set 750# CONFIG_JFS_SECURITY is not set
740# CONFIG_JFS_DEBUG is not set 751# CONFIG_JFS_DEBUG is not set
741# CONFIG_JFS_STATISTICS is not set 752# CONFIG_JFS_STATISTICS is not set
742CONFIG_FS_POSIX_ACL=y 753# CONFIG_FS_POSIX_ACL is not set
743CONFIG_XFS_FS=m 754CONFIG_XFS_FS=m
744# CONFIG_XFS_QUOTA is not set 755# CONFIG_XFS_QUOTA is not set
745# CONFIG_XFS_SECURITY is not set
746# CONFIG_XFS_POSIX_ACL is not set 756# CONFIG_XFS_POSIX_ACL is not set
747# CONFIG_XFS_RT is not set 757# CONFIG_XFS_RT is not set
748CONFIG_GFS2_FS=m 758# CONFIG_XFS_DEBUG is not set
749CONFIG_GFS2_FS_LOCKING_NOLOCK=m
750CONFIG_GFS2_FS_LOCKING_DLM=m
751CONFIG_OCFS2_FS=m 759CONFIG_OCFS2_FS=m
760CONFIG_OCFS2_FS_O2CB=m
761CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
752# CONFIG_OCFS2_DEBUG_MASKLOG is not set 762# CONFIG_OCFS2_DEBUG_MASKLOG is not set
753# CONFIG_OCFS2_DEBUG_FS is not set 763# CONFIG_OCFS2_DEBUG_FS is not set
754CONFIG_DNOTIFY=y 764CONFIG_DNOTIFY=y
@@ -820,12 +830,10 @@ CONFIG_NFS_FS=y
820CONFIG_NFS_V3=y 830CONFIG_NFS_V3=y
821# CONFIG_NFS_V3_ACL is not set 831# CONFIG_NFS_V3_ACL is not set
822CONFIG_NFS_V4=y 832CONFIG_NFS_V4=y
823# CONFIG_NFS_DIRECTIO is not set
824CONFIG_NFSD=m 833CONFIG_NFSD=m
825CONFIG_NFSD_V3=y 834CONFIG_NFSD_V3=y
826# CONFIG_NFSD_V3_ACL is not set 835# CONFIG_NFSD_V3_ACL is not set
827# CONFIG_NFSD_V4 is not set 836# CONFIG_NFSD_V4 is not set
828CONFIG_NFSD_TCP=y
829CONFIG_ROOT_NFS=y 837CONFIG_ROOT_NFS=y
830CONFIG_LOCKD=y 838CONFIG_LOCKD=y
831CONFIG_LOCKD_V4=y 839CONFIG_LOCKD_V4=y
@@ -900,6 +908,7 @@ CONFIG_DLM=m
900# CONFIG_PRINTK_TIME is not set 908# CONFIG_PRINTK_TIME is not set
901CONFIG_ENABLE_WARN_DEPRECATED=y 909CONFIG_ENABLE_WARN_DEPRECATED=y
902CONFIG_ENABLE_MUST_CHECK=y 910CONFIG_ENABLE_MUST_CHECK=y
911CONFIG_FRAME_WARN=1024
903CONFIG_MAGIC_SYSRQ=y 912CONFIG_MAGIC_SYSRQ=y
904# CONFIG_UNUSED_SYMBOLS is not set 913# CONFIG_UNUSED_SYMBOLS is not set
905# CONFIG_DEBUG_FS is not set 914# CONFIG_DEBUG_FS is not set
@@ -919,53 +928,82 @@ CONFIG_ASYNC_CORE=m
919CONFIG_ASYNC_MEMCPY=m 928CONFIG_ASYNC_MEMCPY=m
920CONFIG_ASYNC_XOR=m 929CONFIG_ASYNC_XOR=m
921CONFIG_CRYPTO=y 930CONFIG_CRYPTO=y
931
932#
933# Crypto core or helper
934#
922CONFIG_CRYPTO_ALGAPI=y 935CONFIG_CRYPTO_ALGAPI=y
923CONFIG_CRYPTO_AEAD=m 936CONFIG_CRYPTO_AEAD=m
924CONFIG_CRYPTO_BLKCIPHER=y 937CONFIG_CRYPTO_BLKCIPHER=y
925CONFIG_CRYPTO_SEQIV=m
926CONFIG_CRYPTO_HASH=y 938CONFIG_CRYPTO_HASH=y
927CONFIG_CRYPTO_MANAGER=y 939CONFIG_CRYPTO_MANAGER=y
940CONFIG_CRYPTO_GF128MUL=m
941CONFIG_CRYPTO_NULL=m
942CONFIG_CRYPTO_CRYPTD=m
943CONFIG_CRYPTO_AUTHENC=m
944CONFIG_CRYPTO_TEST=m
945
946#
947# Authenticated Encryption with Associated Data
948#
949CONFIG_CRYPTO_CCM=m
950CONFIG_CRYPTO_GCM=m
951CONFIG_CRYPTO_SEQIV=m
952
953#
954# Block modes
955#
956CONFIG_CRYPTO_CBC=y
957CONFIG_CRYPTO_CTR=m
958CONFIG_CRYPTO_CTS=m
959CONFIG_CRYPTO_ECB=m
960CONFIG_CRYPTO_LRW=m
961CONFIG_CRYPTO_PCBC=m
962CONFIG_CRYPTO_XTS=m
963
964#
965# Hash modes
966#
928CONFIG_CRYPTO_HMAC=y 967CONFIG_CRYPTO_HMAC=y
929CONFIG_CRYPTO_XCBC=m 968CONFIG_CRYPTO_XCBC=m
930CONFIG_CRYPTO_NULL=m 969
970#
971# Digest
972#
973CONFIG_CRYPTO_CRC32C=m
931CONFIG_CRYPTO_MD4=m 974CONFIG_CRYPTO_MD4=m
932CONFIG_CRYPTO_MD5=y 975CONFIG_CRYPTO_MD5=y
976CONFIG_CRYPTO_MICHAEL_MIC=m
933CONFIG_CRYPTO_SHA1=m 977CONFIG_CRYPTO_SHA1=m
934CONFIG_CRYPTO_SHA256=m 978CONFIG_CRYPTO_SHA256=m
935CONFIG_CRYPTO_SHA512=m 979CONFIG_CRYPTO_SHA512=m
936CONFIG_CRYPTO_WP512=m
937CONFIG_CRYPTO_TGR192=m 980CONFIG_CRYPTO_TGR192=m
938CONFIG_CRYPTO_GF128MUL=m 981CONFIG_CRYPTO_WP512=m
939CONFIG_CRYPTO_ECB=m 982
940CONFIG_CRYPTO_CBC=y 983#
941CONFIG_CRYPTO_PCBC=m 984# Ciphers
942CONFIG_CRYPTO_LRW=m 985#
943CONFIG_CRYPTO_XTS=m
944CONFIG_CRYPTO_CTR=m
945CONFIG_CRYPTO_GCM=m
946CONFIG_CRYPTO_CCM=m
947CONFIG_CRYPTO_CRYPTD=m
948CONFIG_CRYPTO_DES=y
949CONFIG_CRYPTO_FCRYPT=m
950CONFIG_CRYPTO_BLOWFISH=m
951CONFIG_CRYPTO_TWOFISH=m
952CONFIG_CRYPTO_TWOFISH_COMMON=m
953CONFIG_CRYPTO_SERPENT=m
954CONFIG_CRYPTO_AES=m 986CONFIG_CRYPTO_AES=m
987CONFIG_CRYPTO_ANUBIS=m
988CONFIG_CRYPTO_ARC4=m
989CONFIG_CRYPTO_BLOWFISH=m
990CONFIG_CRYPTO_CAMELLIA=m
955CONFIG_CRYPTO_CAST5=m 991CONFIG_CRYPTO_CAST5=m
956CONFIG_CRYPTO_CAST6=m 992CONFIG_CRYPTO_CAST6=m
957CONFIG_CRYPTO_TEA=m 993CONFIG_CRYPTO_DES=y
958CONFIG_CRYPTO_ARC4=m 994CONFIG_CRYPTO_FCRYPT=m
959CONFIG_CRYPTO_KHAZAD=m 995CONFIG_CRYPTO_KHAZAD=m
960CONFIG_CRYPTO_ANUBIS=m
961CONFIG_CRYPTO_SEED=m
962CONFIG_CRYPTO_SALSA20=m 996CONFIG_CRYPTO_SALSA20=m
997CONFIG_CRYPTO_SEED=m
998CONFIG_CRYPTO_SERPENT=m
999CONFIG_CRYPTO_TEA=m
1000CONFIG_CRYPTO_TWOFISH=m
1001CONFIG_CRYPTO_TWOFISH_COMMON=m
1002
1003#
1004# Compression
1005#
963CONFIG_CRYPTO_DEFLATE=m 1006CONFIG_CRYPTO_DEFLATE=m
964CONFIG_CRYPTO_MICHAEL_MIC=m
965CONFIG_CRYPTO_CRC32C=m
966CONFIG_CRYPTO_CAMELLIA=m
967CONFIG_CRYPTO_TEST=m
968CONFIG_CRYPTO_AUTHENC=m
969CONFIG_CRYPTO_LZO=m 1007CONFIG_CRYPTO_LZO=m
970# CONFIG_CRYPTO_HW is not set 1008# CONFIG_CRYPTO_HW is not set
971 1009
@@ -973,9 +1011,11 @@ CONFIG_CRYPTO_LZO=m
973# Library routines 1011# Library routines
974# 1012#
975CONFIG_BITREVERSE=m 1013CONFIG_BITREVERSE=m
1014# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1015# CONFIG_GENERIC_FIND_NEXT_BIT is not set
976CONFIG_CRC_CCITT=m 1016CONFIG_CRC_CCITT=m
977CONFIG_CRC16=m 1017CONFIG_CRC16=m
978# CONFIG_CRC_ITU_T is not set 1018CONFIG_CRC_ITU_T=m
979CONFIG_CRC32=m 1019CONFIG_CRC32=m
980# CONFIG_CRC7 is not set 1020# CONFIG_CRC7 is not set
981CONFIG_LIBCRC32C=m 1021CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/hp300_defconfig b/arch/m68k/configs/hp300_defconfig
index 38b68c70e567..6778041de262 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:12 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -142,6 +145,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
142CONFIG_NEED_MULTIPLE_NODES=y 145CONFIG_NEED_MULTIPLE_NODES=y
143# CONFIG_SPARSEMEM_STATIC is not set 146# CONFIG_SPARSEMEM_STATIC is not set
144# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 147# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
148CONFIG_PAGEFLAGS_EXTENDED=y
145CONFIG_SPLIT_PTLOCK_CPUS=4 149CONFIG_SPLIT_PTLOCK_CPUS=4
146# CONFIG_RESOURCES_64BIT is not set 150# CONFIG_RESOURCES_64BIT is not set
147CONFIG_ZONE_DMA_FLAG=1 151CONFIG_ZONE_DMA_FLAG=1
@@ -221,8 +225,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
221CONFIG_INET6_XFRM_MODE_BEET=m 225CONFIG_INET6_XFRM_MODE_BEET=m
222CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 226CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
223CONFIG_IPV6_SIT=m 227CONFIG_IPV6_SIT=m
228CONFIG_IPV6_NDISC_NODETYPE=y
224CONFIG_IPV6_TUNNEL=m 229CONFIG_IPV6_TUNNEL=m
225# CONFIG_IPV6_MULTIPLE_TABLES is not set 230# CONFIG_IPV6_MULTIPLE_TABLES is not set
231# CONFIG_IPV6_MROUTE is not set
226# CONFIG_NETWORK_SECMARK is not set 232# CONFIG_NETWORK_SECMARK is not set
227CONFIG_NETFILTER=y 233CONFIG_NETFILTER=y
228# CONFIG_NETFILTER_DEBUG is not set 234# CONFIG_NETFILTER_DEBUG is not set
@@ -238,6 +244,7 @@ CONFIG_NF_CONNTRACK=m
238CONFIG_NF_CT_ACCT=y 244CONFIG_NF_CT_ACCT=y
239CONFIG_NF_CONNTRACK_MARK=y 245CONFIG_NF_CONNTRACK_MARK=y
240# CONFIG_NF_CONNTRACK_EVENTS is not set 246# CONFIG_NF_CONNTRACK_EVENTS is not set
247# CONFIG_NF_CT_PROTO_DCCP is not set
241CONFIG_NF_CT_PROTO_GRE=m 248CONFIG_NF_CT_PROTO_GRE=m
242CONFIG_NF_CT_PROTO_SCTP=m 249CONFIG_NF_CT_PROTO_SCTP=m
243CONFIG_NF_CT_PROTO_UDPLITE=m 250CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -316,6 +323,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
316CONFIG_IP_NF_TARGET_NETMAP=m 323CONFIG_IP_NF_TARGET_NETMAP=m
317CONFIG_NF_NAT_SNMP_BASIC=m 324CONFIG_NF_NAT_SNMP_BASIC=m
318CONFIG_NF_NAT_PROTO_GRE=m 325CONFIG_NF_NAT_PROTO_GRE=m
326CONFIG_NF_NAT_PROTO_UDPLITE=m
327CONFIG_NF_NAT_PROTO_SCTP=m
319CONFIG_NF_NAT_FTP=m 328CONFIG_NF_NAT_FTP=m
320CONFIG_NF_NAT_IRC=m 329CONFIG_NF_NAT_IRC=m
321CONFIG_NF_NAT_TFTP=m 330CONFIG_NF_NAT_TFTP=m
@@ -409,8 +418,6 @@ CONFIG_IEEE80211=m
409CONFIG_IEEE80211_CRYPT_WEP=m 418CONFIG_IEEE80211_CRYPT_WEP=m
410CONFIG_IEEE80211_CRYPT_CCMP=m 419CONFIG_IEEE80211_CRYPT_CCMP=m
411CONFIG_IEEE80211_CRYPT_TKIP=m 420CONFIG_IEEE80211_CRYPT_TKIP=m
412CONFIG_IEEE80211_SOFTMAC=m
413# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
414# CONFIG_RFKILL is not set 421# CONFIG_RFKILL is not set
415# CONFIG_NET_9P is not set 422# CONFIG_NET_9P is not set
416 423
@@ -540,6 +547,7 @@ CONFIG_HPLANCE=y
540# 547#
541# CONFIG_WLAN_PRE80211 is not set 548# CONFIG_WLAN_PRE80211 is not set
542# CONFIG_WLAN_80211 is not set 549# CONFIG_WLAN_80211 is not set
550# CONFIG_IWLWIFI_LEDS is not set
543# CONFIG_WAN is not set 551# CONFIG_WAN is not set
544CONFIG_PPP=m 552CONFIG_PPP=m
545# CONFIG_PPP_MULTILINK is not set 553# CONFIG_PPP_MULTILINK is not set
@@ -631,6 +639,7 @@ CONFIG_VT=y
631CONFIG_VT_CONSOLE=y 639CONFIG_VT_CONSOLE=y
632CONFIG_HW_CONSOLE=y 640CONFIG_HW_CONSOLE=y
633CONFIG_VT_HW_CONSOLE_BINDING=y 641CONFIG_VT_HW_CONSOLE_BINDING=y
642# CONFIG_DEVKMEM is not set
634# CONFIG_SERIAL_NONSTANDARD is not set 643# CONFIG_SERIAL_NONSTANDARD is not set
635 644
636# 645#
@@ -652,12 +661,7 @@ CONFIG_GEN_RTC_X=y
652# CONFIG_RAW_DRIVER is not set 661# CONFIG_RAW_DRIVER is not set
653# CONFIG_TCG_TPM is not set 662# CONFIG_TCG_TPM is not set
654# CONFIG_I2C is not set 663# CONFIG_I2C is not set
655
656#
657# SPI support
658#
659# CONFIG_SPI is not set 664# CONFIG_SPI is not set
660# CONFIG_SPI_MASTER is not set
661# CONFIG_W1 is not set 665# CONFIG_W1 is not set
662# CONFIG_POWER_SUPPLY is not set 666# CONFIG_POWER_SUPPLY is not set
663# CONFIG_HWMON is not set 667# CONFIG_HWMON is not set
@@ -674,12 +678,22 @@ CONFIG_SSB_POSSIBLE=y
674# Multifunction device drivers 678# Multifunction device drivers
675# 679#
676# CONFIG_MFD_SM501 is not set 680# CONFIG_MFD_SM501 is not set
681# CONFIG_HTC_PASIC3 is not set
677 682
678# 683#
679# Multimedia devices 684# Multimedia devices
680# 685#
686
687#
688# Multimedia core support
689#
681# CONFIG_VIDEO_DEV is not set 690# CONFIG_VIDEO_DEV is not set
682# CONFIG_DVB_CORE is not set 691# CONFIG_DVB_CORE is not set
692# CONFIG_VIDEO_MEDIA is not set
693
694#
695# Multimedia drivers
696#
683# CONFIG_DAB is not set 697# CONFIG_DAB is not set
684 698
685# 699#
@@ -690,15 +704,15 @@ CONFIG_SSB_POSSIBLE=y
690CONFIG_FB=y 704CONFIG_FB=y
691# CONFIG_FIRMWARE_EDID is not set 705# CONFIG_FIRMWARE_EDID is not set
692# CONFIG_FB_DDC is not set 706# CONFIG_FB_DDC is not set
693CONFIG_FB_CFB_FILLRECT=y 707# CONFIG_FB_CFB_FILLRECT is not set
694# CONFIG_FB_CFB_COPYAREA is not set 708# CONFIG_FB_CFB_COPYAREA is not set
695CONFIG_FB_CFB_IMAGEBLIT=y 709CONFIG_FB_CFB_IMAGEBLIT=y
696# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set 710# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
697# CONFIG_FB_SYS_FILLRECT is not set 711# CONFIG_FB_SYS_FILLRECT is not set
698# CONFIG_FB_SYS_COPYAREA is not set 712# CONFIG_FB_SYS_COPYAREA is not set
699# CONFIG_FB_SYS_IMAGEBLIT is not set 713# CONFIG_FB_SYS_IMAGEBLIT is not set
714# CONFIG_FB_FOREIGN_ENDIAN is not set
700# CONFIG_FB_SYS_FOPS is not set 715# CONFIG_FB_SYS_FOPS is not set
701CONFIG_FB_DEFERRED_IO=y
702# CONFIG_FB_SVGALIB is not set 716# CONFIG_FB_SVGALIB is not set
703# CONFIG_FB_MACMODES is not set 717# CONFIG_FB_MACMODES is not set
704# CONFIG_FB_BACKLIGHT is not set 718# CONFIG_FB_BACKLIGHT is not set
@@ -746,11 +760,8 @@ CONFIG_HIDRAW=y
746# CONFIG_MMC is not set 760# CONFIG_MMC is not set
747# CONFIG_MEMSTICK is not set 761# CONFIG_MEMSTICK is not set
748# CONFIG_NEW_LEDS is not set 762# CONFIG_NEW_LEDS is not set
763# CONFIG_ACCESSIBILITY is not set
749# CONFIG_RTC_CLASS is not set 764# CONFIG_RTC_CLASS is not set
750
751#
752# Userspace I/O
753#
754# CONFIG_UIO is not set 765# CONFIG_UIO is not set
755 766
756# 767#
@@ -776,16 +787,15 @@ CONFIG_JFS_FS=m
776# CONFIG_JFS_SECURITY is not set 787# CONFIG_JFS_SECURITY is not set
777# CONFIG_JFS_DEBUG is not set 788# CONFIG_JFS_DEBUG is not set
778# CONFIG_JFS_STATISTICS is not set 789# CONFIG_JFS_STATISTICS is not set
779CONFIG_FS_POSIX_ACL=y 790# CONFIG_FS_POSIX_ACL is not set
780CONFIG_XFS_FS=m 791CONFIG_XFS_FS=m
781# CONFIG_XFS_QUOTA is not set 792# CONFIG_XFS_QUOTA is not set
782# CONFIG_XFS_SECURITY is not set
783# CONFIG_XFS_POSIX_ACL is not set 793# CONFIG_XFS_POSIX_ACL is not set
784# CONFIG_XFS_RT is not set 794# CONFIG_XFS_RT is not set
785CONFIG_GFS2_FS=m 795# CONFIG_XFS_DEBUG is not set
786CONFIG_GFS2_FS_LOCKING_NOLOCK=m
787CONFIG_GFS2_FS_LOCKING_DLM=m
788CONFIG_OCFS2_FS=m 796CONFIG_OCFS2_FS=m
797CONFIG_OCFS2_FS_O2CB=m
798CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
789# CONFIG_OCFS2_DEBUG_MASKLOG is not set 799# CONFIG_OCFS2_DEBUG_MASKLOG is not set
790# CONFIG_OCFS2_DEBUG_FS is not set 800# CONFIG_OCFS2_DEBUG_FS is not set
791CONFIG_DNOTIFY=y 801CONFIG_DNOTIFY=y
@@ -857,12 +867,10 @@ CONFIG_NFS_FS=y
857CONFIG_NFS_V3=y 867CONFIG_NFS_V3=y
858# CONFIG_NFS_V3_ACL is not set 868# CONFIG_NFS_V3_ACL is not set
859CONFIG_NFS_V4=y 869CONFIG_NFS_V4=y
860# CONFIG_NFS_DIRECTIO is not set
861CONFIG_NFSD=m 870CONFIG_NFSD=m
862CONFIG_NFSD_V3=y 871CONFIG_NFSD_V3=y
863# CONFIG_NFSD_V3_ACL is not set 872# CONFIG_NFSD_V3_ACL is not set
864# CONFIG_NFSD_V4 is not set 873# CONFIG_NFSD_V4 is not set
865CONFIG_NFSD_TCP=y
866CONFIG_ROOT_NFS=y 874CONFIG_ROOT_NFS=y
867CONFIG_LOCKD=y 875CONFIG_LOCKD=y
868CONFIG_LOCKD_V4=y 876CONFIG_LOCKD_V4=y
@@ -936,6 +944,7 @@ CONFIG_DLM=m
936# CONFIG_PRINTK_TIME is not set 944# CONFIG_PRINTK_TIME is not set
937CONFIG_ENABLE_WARN_DEPRECATED=y 945CONFIG_ENABLE_WARN_DEPRECATED=y
938CONFIG_ENABLE_MUST_CHECK=y 946CONFIG_ENABLE_MUST_CHECK=y
947CONFIG_FRAME_WARN=1024
939CONFIG_MAGIC_SYSRQ=y 948CONFIG_MAGIC_SYSRQ=y
940# CONFIG_UNUSED_SYMBOLS is not set 949# CONFIG_UNUSED_SYMBOLS is not set
941# CONFIG_DEBUG_FS is not set 950# CONFIG_DEBUG_FS is not set
@@ -955,53 +964,82 @@ CONFIG_ASYNC_CORE=m
955CONFIG_ASYNC_MEMCPY=m 964CONFIG_ASYNC_MEMCPY=m
956CONFIG_ASYNC_XOR=m 965CONFIG_ASYNC_XOR=m
957CONFIG_CRYPTO=y 966CONFIG_CRYPTO=y
967
968#
969# Crypto core or helper
970#
958CONFIG_CRYPTO_ALGAPI=y 971CONFIG_CRYPTO_ALGAPI=y
959CONFIG_CRYPTO_AEAD=m 972CONFIG_CRYPTO_AEAD=m
960CONFIG_CRYPTO_BLKCIPHER=y 973CONFIG_CRYPTO_BLKCIPHER=y
961CONFIG_CRYPTO_SEQIV=m
962CONFIG_CRYPTO_HASH=y 974CONFIG_CRYPTO_HASH=y
963CONFIG_CRYPTO_MANAGER=y 975CONFIG_CRYPTO_MANAGER=y
976CONFIG_CRYPTO_GF128MUL=m
977CONFIG_CRYPTO_NULL=m
978CONFIG_CRYPTO_CRYPTD=m
979CONFIG_CRYPTO_AUTHENC=m
980CONFIG_CRYPTO_TEST=m
981
982#
983# Authenticated Encryption with Associated Data
984#
985CONFIG_CRYPTO_CCM=m
986CONFIG_CRYPTO_GCM=m
987CONFIG_CRYPTO_SEQIV=m
988
989#
990# Block modes
991#
992CONFIG_CRYPTO_CBC=y
993CONFIG_CRYPTO_CTR=m
994CONFIG_CRYPTO_CTS=m
995CONFIG_CRYPTO_ECB=m
996CONFIG_CRYPTO_LRW=m
997CONFIG_CRYPTO_PCBC=m
998CONFIG_CRYPTO_XTS=m
999
1000#
1001# Hash modes
1002#
964CONFIG_CRYPTO_HMAC=y 1003CONFIG_CRYPTO_HMAC=y
965CONFIG_CRYPTO_XCBC=m 1004CONFIG_CRYPTO_XCBC=m
966CONFIG_CRYPTO_NULL=m 1005
1006#
1007# Digest
1008#
1009CONFIG_CRYPTO_CRC32C=m
967CONFIG_CRYPTO_MD4=m 1010CONFIG_CRYPTO_MD4=m
968CONFIG_CRYPTO_MD5=y 1011CONFIG_CRYPTO_MD5=y
1012CONFIG_CRYPTO_MICHAEL_MIC=m
969CONFIG_CRYPTO_SHA1=m 1013CONFIG_CRYPTO_SHA1=m
970CONFIG_CRYPTO_SHA256=m 1014CONFIG_CRYPTO_SHA256=m
971CONFIG_CRYPTO_SHA512=m 1015CONFIG_CRYPTO_SHA512=m
972CONFIG_CRYPTO_WP512=m
973CONFIG_CRYPTO_TGR192=m 1016CONFIG_CRYPTO_TGR192=m
974CONFIG_CRYPTO_GF128MUL=m 1017CONFIG_CRYPTO_WP512=m
975CONFIG_CRYPTO_ECB=m 1018
976CONFIG_CRYPTO_CBC=y 1019#
977CONFIG_CRYPTO_PCBC=m 1020# Ciphers
978CONFIG_CRYPTO_LRW=m 1021#
979CONFIG_CRYPTO_XTS=m
980CONFIG_CRYPTO_CTR=m
981CONFIG_CRYPTO_GCM=m
982CONFIG_CRYPTO_CCM=m
983CONFIG_CRYPTO_CRYPTD=m
984CONFIG_CRYPTO_DES=y
985CONFIG_CRYPTO_FCRYPT=m
986CONFIG_CRYPTO_BLOWFISH=m
987CONFIG_CRYPTO_TWOFISH=m
988CONFIG_CRYPTO_TWOFISH_COMMON=m
989CONFIG_CRYPTO_SERPENT=m
990CONFIG_CRYPTO_AES=m 1022CONFIG_CRYPTO_AES=m
1023CONFIG_CRYPTO_ANUBIS=m
1024CONFIG_CRYPTO_ARC4=m
1025CONFIG_CRYPTO_BLOWFISH=m
1026CONFIG_CRYPTO_CAMELLIA=m
991CONFIG_CRYPTO_CAST5=m 1027CONFIG_CRYPTO_CAST5=m
992CONFIG_CRYPTO_CAST6=m 1028CONFIG_CRYPTO_CAST6=m
993CONFIG_CRYPTO_TEA=m 1029CONFIG_CRYPTO_DES=y
994CONFIG_CRYPTO_ARC4=m 1030CONFIG_CRYPTO_FCRYPT=m
995CONFIG_CRYPTO_KHAZAD=m 1031CONFIG_CRYPTO_KHAZAD=m
996CONFIG_CRYPTO_ANUBIS=m
997CONFIG_CRYPTO_SEED=m
998CONFIG_CRYPTO_SALSA20=m 1032CONFIG_CRYPTO_SALSA20=m
1033CONFIG_CRYPTO_SEED=m
1034CONFIG_CRYPTO_SERPENT=m
1035CONFIG_CRYPTO_TEA=m
1036CONFIG_CRYPTO_TWOFISH=m
1037CONFIG_CRYPTO_TWOFISH_COMMON=m
1038
1039#
1040# Compression
1041#
999CONFIG_CRYPTO_DEFLATE=m 1042CONFIG_CRYPTO_DEFLATE=m
1000CONFIG_CRYPTO_MICHAEL_MIC=m
1001CONFIG_CRYPTO_CRC32C=m
1002CONFIG_CRYPTO_CAMELLIA=m
1003CONFIG_CRYPTO_TEST=m
1004CONFIG_CRYPTO_AUTHENC=m
1005CONFIG_CRYPTO_LZO=m 1043CONFIG_CRYPTO_LZO=m
1006# CONFIG_CRYPTO_HW is not set 1044# CONFIG_CRYPTO_HW is not set
1007 1045
@@ -1009,9 +1047,11 @@ CONFIG_CRYPTO_LZO=m
1009# Library routines 1047# Library routines
1010# 1048#
1011CONFIG_BITREVERSE=y 1049CONFIG_BITREVERSE=y
1050# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1051# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1012CONFIG_CRC_CCITT=m 1052CONFIG_CRC_CCITT=m
1013CONFIG_CRC16=m 1053CONFIG_CRC16=m
1014# CONFIG_CRC_ITU_T is not set 1054CONFIG_CRC_ITU_T=m
1015CONFIG_CRC32=y 1055CONFIG_CRC32=y
1016# CONFIG_CRC7 is not set 1056# CONFIG_CRC7 is not set
1017CONFIG_LIBCRC32C=m 1057CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/mac_defconfig b/arch/m68k/configs/mac_defconfig
index 738bca695a88..7cd375740348 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:14 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -143,6 +146,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
143CONFIG_NEED_MULTIPLE_NODES=y 146CONFIG_NEED_MULTIPLE_NODES=y
144# CONFIG_SPARSEMEM_STATIC is not set 147# CONFIG_SPARSEMEM_STATIC is not set
145# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 148# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
149CONFIG_PAGEFLAGS_EXTENDED=y
146CONFIG_SPLIT_PTLOCK_CPUS=4 150CONFIG_SPLIT_PTLOCK_CPUS=4
147# CONFIG_RESOURCES_64BIT is not set 151# CONFIG_RESOURCES_64BIT is not set
148CONFIG_ZONE_DMA_FLAG=1 152CONFIG_ZONE_DMA_FLAG=1
@@ -219,8 +223,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
219CONFIG_INET6_XFRM_MODE_BEET=m 223CONFIG_INET6_XFRM_MODE_BEET=m
220CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 224CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
221CONFIG_IPV6_SIT=m 225CONFIG_IPV6_SIT=m
226CONFIG_IPV6_NDISC_NODETYPE=y
222CONFIG_IPV6_TUNNEL=m 227CONFIG_IPV6_TUNNEL=m
223# CONFIG_IPV6_MULTIPLE_TABLES is not set 228# CONFIG_IPV6_MULTIPLE_TABLES is not set
229# CONFIG_IPV6_MROUTE is not set
224# CONFIG_NETWORK_SECMARK is not set 230# CONFIG_NETWORK_SECMARK is not set
225CONFIG_NETFILTER=y 231CONFIG_NETFILTER=y
226# CONFIG_NETFILTER_DEBUG is not set 232# CONFIG_NETFILTER_DEBUG is not set
@@ -236,6 +242,7 @@ CONFIG_NF_CONNTRACK=m
236CONFIG_NF_CT_ACCT=y 242CONFIG_NF_CT_ACCT=y
237CONFIG_NF_CONNTRACK_MARK=y 243CONFIG_NF_CONNTRACK_MARK=y
238# CONFIG_NF_CONNTRACK_EVENTS is not set 244# CONFIG_NF_CONNTRACK_EVENTS is not set
245# CONFIG_NF_CT_PROTO_DCCP is not set
239CONFIG_NF_CT_PROTO_GRE=m 246CONFIG_NF_CT_PROTO_GRE=m
240CONFIG_NF_CT_PROTO_SCTP=m 247CONFIG_NF_CT_PROTO_SCTP=m
241CONFIG_NF_CT_PROTO_UDPLITE=m 248CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -314,6 +321,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
314CONFIG_IP_NF_TARGET_NETMAP=m 321CONFIG_IP_NF_TARGET_NETMAP=m
315CONFIG_NF_NAT_SNMP_BASIC=m 322CONFIG_NF_NAT_SNMP_BASIC=m
316CONFIG_NF_NAT_PROTO_GRE=m 323CONFIG_NF_NAT_PROTO_GRE=m
324CONFIG_NF_NAT_PROTO_UDPLITE=m
325CONFIG_NF_NAT_PROTO_SCTP=m
317CONFIG_NF_NAT_FTP=m 326CONFIG_NF_NAT_FTP=m
318CONFIG_NF_NAT_IRC=m 327CONFIG_NF_NAT_IRC=m
319CONFIG_NF_NAT_TFTP=m 328CONFIG_NF_NAT_TFTP=m
@@ -410,8 +419,6 @@ CONFIG_IEEE80211=m
410CONFIG_IEEE80211_CRYPT_WEP=m 419CONFIG_IEEE80211_CRYPT_WEP=m
411CONFIG_IEEE80211_CRYPT_CCMP=m 420CONFIG_IEEE80211_CRYPT_CCMP=m
412CONFIG_IEEE80211_CRYPT_TKIP=m 421CONFIG_IEEE80211_CRYPT_TKIP=m
413CONFIG_IEEE80211_SOFTMAC=m
414# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
415# CONFIG_RFKILL is not set 422# CONFIG_RFKILL is not set
416# CONFIG_NET_9P is not set 423# CONFIG_NET_9P is not set
417 424
@@ -467,11 +474,10 @@ CONFIG_IDE_PROC_FS=y
467# 474#
468# IDE chipset support/bugfixes 475# IDE chipset support/bugfixes
469# 476#
470# CONFIG_IDE_GENERIC is not set
471# CONFIG_BLK_DEV_PLATFORM is not set 477# CONFIG_BLK_DEV_PLATFORM is not set
472CONFIG_BLK_DEV_MAC_IDE=y 478CONFIG_BLK_DEV_MAC_IDE=y
473# CONFIG_BLK_DEV_IDEDMA is not set 479# CONFIG_BLK_DEV_IDEDMA is not set
474# CONFIG_IDE_ARCH_OBSOLETE_INIT is not set 480# CONFIG_BLK_DEV_HD_ONLY is not set
475# CONFIG_BLK_DEV_HD is not set 481# CONFIG_BLK_DEV_HD is not set
476 482
477# 483#
@@ -520,6 +526,7 @@ CONFIG_SCSI_LOWLEVEL=y
520CONFIG_ISCSI_TCP=m 526CONFIG_ISCSI_TCP=m
521# CONFIG_SCSI_DEBUG is not set 527# CONFIG_SCSI_DEBUG is not set
522CONFIG_MAC_SCSI=y 528CONFIG_MAC_SCSI=y
529CONFIG_SCSI_MAC_ESP=y
523CONFIG_MD=y 530CONFIG_MD=y
524CONFIG_BLK_DEV_MD=m 531CONFIG_BLK_DEV_MD=m
525CONFIG_MD_LINEAR=m 532CONFIG_MD_LINEAR=m
@@ -580,6 +587,7 @@ CONFIG_MACMACE=y
580# 587#
581# CONFIG_WLAN_PRE80211 is not set 588# CONFIG_WLAN_PRE80211 is not set
582# CONFIG_WLAN_80211 is not set 589# CONFIG_WLAN_80211 is not set
590# CONFIG_IWLWIFI_LEDS is not set
583# CONFIG_WAN is not set 591# CONFIG_WAN is not set
584CONFIG_PPP=m 592CONFIG_PPP=m
585# CONFIG_PPP_MULTILINK is not set 593# CONFIG_PPP_MULTILINK is not set
@@ -665,6 +673,7 @@ CONFIG_VT=y
665CONFIG_VT_CONSOLE=y 673CONFIG_VT_CONSOLE=y
666CONFIG_HW_CONSOLE=y 674CONFIG_HW_CONSOLE=y
667CONFIG_VT_HW_CONSOLE_BINDING=y 675CONFIG_VT_HW_CONSOLE_BINDING=y
676# CONFIG_DEVKMEM is not set
668# CONFIG_SERIAL_NONSTANDARD is not set 677# CONFIG_SERIAL_NONSTANDARD is not set
669 678
670# 679#
@@ -686,12 +695,7 @@ CONFIG_GEN_RTC_X=y
686# CONFIG_RAW_DRIVER is not set 695# CONFIG_RAW_DRIVER is not set
687# CONFIG_TCG_TPM is not set 696# CONFIG_TCG_TPM is not set
688# CONFIG_I2C is not set 697# CONFIG_I2C is not set
689
690#
691# SPI support
692#
693# CONFIG_SPI is not set 698# CONFIG_SPI is not set
694# CONFIG_SPI_MASTER is not set
695# CONFIG_W1 is not set 699# CONFIG_W1 is not set
696# CONFIG_POWER_SUPPLY is not set 700# CONFIG_POWER_SUPPLY is not set
697# CONFIG_HWMON is not set 701# CONFIG_HWMON is not set
@@ -708,12 +712,22 @@ CONFIG_SSB_POSSIBLE=y
708# Multifunction device drivers 712# Multifunction device drivers
709# 713#
710# CONFIG_MFD_SM501 is not set 714# CONFIG_MFD_SM501 is not set
715# CONFIG_HTC_PASIC3 is not set
711 716
712# 717#
713# Multimedia devices 718# Multimedia devices
714# 719#
720
721#
722# Multimedia core support
723#
715# CONFIG_VIDEO_DEV is not set 724# CONFIG_VIDEO_DEV is not set
716# CONFIG_DVB_CORE is not set 725# CONFIG_DVB_CORE is not set
726# CONFIG_VIDEO_MEDIA is not set
727
728#
729# Multimedia drivers
730#
717# CONFIG_DAB is not set 731# CONFIG_DAB is not set
718 732
719# 733#
@@ -731,8 +745,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
731# CONFIG_FB_SYS_FILLRECT is not set 745# CONFIG_FB_SYS_FILLRECT is not set
732# CONFIG_FB_SYS_COPYAREA is not set 746# CONFIG_FB_SYS_COPYAREA is not set
733# CONFIG_FB_SYS_IMAGEBLIT is not set 747# CONFIG_FB_SYS_IMAGEBLIT is not set
748# CONFIG_FB_FOREIGN_ENDIAN is not set
734# CONFIG_FB_SYS_FOPS is not set 749# CONFIG_FB_SYS_FOPS is not set
735CONFIG_FB_DEFERRED_IO=y
736# CONFIG_FB_SVGALIB is not set 750# CONFIG_FB_SVGALIB is not set
737CONFIG_FB_MACMODES=y 751CONFIG_FB_MACMODES=y
738# CONFIG_FB_BACKLIGHT is not set 752# CONFIG_FB_BACKLIGHT is not set
@@ -783,11 +797,8 @@ CONFIG_HIDRAW=y
783# CONFIG_MMC is not set 797# CONFIG_MMC is not set
784# CONFIG_MEMSTICK is not set 798# CONFIG_MEMSTICK is not set
785# CONFIG_NEW_LEDS is not set 799# CONFIG_NEW_LEDS is not set
800# CONFIG_ACCESSIBILITY is not set
786# CONFIG_RTC_CLASS is not set 801# CONFIG_RTC_CLASS is not set
787
788#
789# Userspace I/O
790#
791# CONFIG_UIO is not set 802# CONFIG_UIO is not set
792 803
793# 804#
@@ -816,16 +827,15 @@ CONFIG_JFS_FS=m
816# CONFIG_JFS_SECURITY is not set 827# CONFIG_JFS_SECURITY is not set
817# CONFIG_JFS_DEBUG is not set 828# CONFIG_JFS_DEBUG is not set
818# CONFIG_JFS_STATISTICS is not set 829# CONFIG_JFS_STATISTICS is not set
819CONFIG_FS_POSIX_ACL=y 830# CONFIG_FS_POSIX_ACL is not set
820CONFIG_XFS_FS=m 831CONFIG_XFS_FS=m
821# CONFIG_XFS_QUOTA is not set 832# CONFIG_XFS_QUOTA is not set
822# CONFIG_XFS_SECURITY is not set
823# CONFIG_XFS_POSIX_ACL is not set 833# CONFIG_XFS_POSIX_ACL is not set
824# CONFIG_XFS_RT is not set 834# CONFIG_XFS_RT is not set
825CONFIG_GFS2_FS=m 835# CONFIG_XFS_DEBUG is not set
826CONFIG_GFS2_FS_LOCKING_NOLOCK=m
827CONFIG_GFS2_FS_LOCKING_DLM=m
828CONFIG_OCFS2_FS=m 836CONFIG_OCFS2_FS=m
837CONFIG_OCFS2_FS_O2CB=m
838CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
829# CONFIG_OCFS2_DEBUG_MASKLOG is not set 839# CONFIG_OCFS2_DEBUG_MASKLOG is not set
830# CONFIG_OCFS2_DEBUG_FS is not set 840# CONFIG_OCFS2_DEBUG_FS is not set
831CONFIG_DNOTIFY=y 841CONFIG_DNOTIFY=y
@@ -897,12 +907,10 @@ CONFIG_NFS_FS=m
897CONFIG_NFS_V3=y 907CONFIG_NFS_V3=y
898# CONFIG_NFS_V3_ACL is not set 908# CONFIG_NFS_V3_ACL is not set
899CONFIG_NFS_V4=y 909CONFIG_NFS_V4=y
900# CONFIG_NFS_DIRECTIO is not set
901CONFIG_NFSD=m 910CONFIG_NFSD=m
902CONFIG_NFSD_V3=y 911CONFIG_NFSD_V3=y
903# CONFIG_NFSD_V3_ACL is not set 912# CONFIG_NFSD_V3_ACL is not set
904# CONFIG_NFSD_V4 is not set 913# CONFIG_NFSD_V4 is not set
905CONFIG_NFSD_TCP=y
906CONFIG_LOCKD=m 914CONFIG_LOCKD=m
907CONFIG_LOCKD_V4=y 915CONFIG_LOCKD_V4=y
908CONFIG_EXPORTFS=m 916CONFIG_EXPORTFS=m
@@ -976,6 +984,7 @@ CONFIG_DLM=m
976# CONFIG_PRINTK_TIME is not set 984# CONFIG_PRINTK_TIME is not set
977CONFIG_ENABLE_WARN_DEPRECATED=y 985CONFIG_ENABLE_WARN_DEPRECATED=y
978CONFIG_ENABLE_MUST_CHECK=y 986CONFIG_ENABLE_MUST_CHECK=y
987CONFIG_FRAME_WARN=1024
979CONFIG_MAGIC_SYSRQ=y 988CONFIG_MAGIC_SYSRQ=y
980# CONFIG_UNUSED_SYMBOLS is not set 989# CONFIG_UNUSED_SYMBOLS is not set
981# CONFIG_DEBUG_FS is not set 990# CONFIG_DEBUG_FS is not set
@@ -995,53 +1004,82 @@ CONFIG_ASYNC_CORE=m
995CONFIG_ASYNC_MEMCPY=m 1004CONFIG_ASYNC_MEMCPY=m
996CONFIG_ASYNC_XOR=m 1005CONFIG_ASYNC_XOR=m
997CONFIG_CRYPTO=y 1006CONFIG_CRYPTO=y
1007
1008#
1009# Crypto core or helper
1010#
998CONFIG_CRYPTO_ALGAPI=y 1011CONFIG_CRYPTO_ALGAPI=y
999CONFIG_CRYPTO_AEAD=m 1012CONFIG_CRYPTO_AEAD=m
1000CONFIG_CRYPTO_BLKCIPHER=m 1013CONFIG_CRYPTO_BLKCIPHER=m
1001CONFIG_CRYPTO_SEQIV=m
1002CONFIG_CRYPTO_HASH=y 1014CONFIG_CRYPTO_HASH=y
1003CONFIG_CRYPTO_MANAGER=y 1015CONFIG_CRYPTO_MANAGER=y
1016CONFIG_CRYPTO_GF128MUL=m
1017CONFIG_CRYPTO_NULL=m
1018CONFIG_CRYPTO_CRYPTD=m
1019CONFIG_CRYPTO_AUTHENC=m
1020CONFIG_CRYPTO_TEST=m
1021
1022#
1023# Authenticated Encryption with Associated Data
1024#
1025CONFIG_CRYPTO_CCM=m
1026CONFIG_CRYPTO_GCM=m
1027CONFIG_CRYPTO_SEQIV=m
1028
1029#
1030# Block modes
1031#
1032CONFIG_CRYPTO_CBC=m
1033CONFIG_CRYPTO_CTR=m
1034CONFIG_CRYPTO_CTS=m
1035CONFIG_CRYPTO_ECB=m
1036CONFIG_CRYPTO_LRW=m
1037CONFIG_CRYPTO_PCBC=m
1038CONFIG_CRYPTO_XTS=m
1039
1040#
1041# Hash modes
1042#
1004CONFIG_CRYPTO_HMAC=y 1043CONFIG_CRYPTO_HMAC=y
1005CONFIG_CRYPTO_XCBC=m 1044CONFIG_CRYPTO_XCBC=m
1006CONFIG_CRYPTO_NULL=m 1045
1046#
1047# Digest
1048#
1049CONFIG_CRYPTO_CRC32C=m
1007CONFIG_CRYPTO_MD4=m 1050CONFIG_CRYPTO_MD4=m
1008CONFIG_CRYPTO_MD5=m 1051CONFIG_CRYPTO_MD5=m
1052CONFIG_CRYPTO_MICHAEL_MIC=m
1009CONFIG_CRYPTO_SHA1=m 1053CONFIG_CRYPTO_SHA1=m
1010CONFIG_CRYPTO_SHA256=m 1054CONFIG_CRYPTO_SHA256=m
1011CONFIG_CRYPTO_SHA512=m 1055CONFIG_CRYPTO_SHA512=m
1012CONFIG_CRYPTO_WP512=m
1013CONFIG_CRYPTO_TGR192=m 1056CONFIG_CRYPTO_TGR192=m
1014CONFIG_CRYPTO_GF128MUL=m 1057CONFIG_CRYPTO_WP512=m
1015CONFIG_CRYPTO_ECB=m 1058
1016CONFIG_CRYPTO_CBC=m 1059#
1017CONFIG_CRYPTO_PCBC=m 1060# Ciphers
1018CONFIG_CRYPTO_LRW=m 1061#
1019CONFIG_CRYPTO_XTS=m
1020CONFIG_CRYPTO_CTR=m
1021CONFIG_CRYPTO_GCM=m
1022CONFIG_CRYPTO_CCM=m
1023CONFIG_CRYPTO_CRYPTD=m
1024CONFIG_CRYPTO_DES=m
1025CONFIG_CRYPTO_FCRYPT=m
1026CONFIG_CRYPTO_BLOWFISH=m
1027CONFIG_CRYPTO_TWOFISH=m
1028CONFIG_CRYPTO_TWOFISH_COMMON=m
1029CONFIG_CRYPTO_SERPENT=m
1030CONFIG_CRYPTO_AES=m 1062CONFIG_CRYPTO_AES=m
1063CONFIG_CRYPTO_ANUBIS=m
1064CONFIG_CRYPTO_ARC4=m
1065CONFIG_CRYPTO_BLOWFISH=m
1066CONFIG_CRYPTO_CAMELLIA=m
1031CONFIG_CRYPTO_CAST5=m 1067CONFIG_CRYPTO_CAST5=m
1032CONFIG_CRYPTO_CAST6=m 1068CONFIG_CRYPTO_CAST6=m
1033CONFIG_CRYPTO_TEA=m 1069CONFIG_CRYPTO_DES=m
1034CONFIG_CRYPTO_ARC4=m 1070CONFIG_CRYPTO_FCRYPT=m
1035CONFIG_CRYPTO_KHAZAD=m 1071CONFIG_CRYPTO_KHAZAD=m
1036CONFIG_CRYPTO_ANUBIS=m
1037CONFIG_CRYPTO_SEED=m
1038CONFIG_CRYPTO_SALSA20=m 1072CONFIG_CRYPTO_SALSA20=m
1073CONFIG_CRYPTO_SEED=m
1074CONFIG_CRYPTO_SERPENT=m
1075CONFIG_CRYPTO_TEA=m
1076CONFIG_CRYPTO_TWOFISH=m
1077CONFIG_CRYPTO_TWOFISH_COMMON=m
1078
1079#
1080# Compression
1081#
1039CONFIG_CRYPTO_DEFLATE=m 1082CONFIG_CRYPTO_DEFLATE=m
1040CONFIG_CRYPTO_MICHAEL_MIC=m
1041CONFIG_CRYPTO_CRC32C=m
1042CONFIG_CRYPTO_CAMELLIA=m
1043CONFIG_CRYPTO_TEST=m
1044CONFIG_CRYPTO_AUTHENC=m
1045CONFIG_CRYPTO_LZO=m 1083CONFIG_CRYPTO_LZO=m
1046# CONFIG_CRYPTO_HW is not set 1084# CONFIG_CRYPTO_HW is not set
1047 1085
@@ -1049,9 +1087,11 @@ CONFIG_CRYPTO_LZO=m
1049# Library routines 1087# Library routines
1050# 1088#
1051CONFIG_BITREVERSE=y 1089CONFIG_BITREVERSE=y
1090# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1091# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1052CONFIG_CRC_CCITT=m 1092CONFIG_CRC_CCITT=m
1053CONFIG_CRC16=m 1093CONFIG_CRC16=m
1054# CONFIG_CRC_ITU_T is not set 1094CONFIG_CRC_ITU_T=m
1055CONFIG_CRC32=y 1095CONFIG_CRC32=y
1056# CONFIG_CRC7 is not set 1096# CONFIG_CRC7 is not set
1057CONFIG_LIBCRC32C=m 1097CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/multi_defconfig b/arch/m68k/configs/multi_defconfig
new file mode 100644
index 000000000000..0747fa3984df
--- /dev/null
+++ b/arch/m68k/configs/multi_defconfig
@@ -0,0 +1,1269 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.26-rc4
4# Wed May 28 22:47:35 2008
5#
6CONFIG_M68K=y
7CONFIG_MMU=y
8CONFIG_RWSEM_GENERIC_SPINLOCK=y
9# CONFIG_ARCH_HAS_ILOG2_U32 is not set
10# CONFIG_ARCH_HAS_ILOG2_U64 is not set
11CONFIG_GENERIC_HWEIGHT=y
12CONFIG_GENERIC_CALIBRATE_DELAY=y
13CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y
15CONFIG_NO_IOPORT=y
16# CONFIG_NO_DMA is not set
17CONFIG_ARCH_SUPPORTS_AOUT=y
18CONFIG_HZ=100
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20
21#
22# General setup
23#
24CONFIG_EXPERIMENTAL=y
25CONFIG_BROKEN_ON_SMP=y
26CONFIG_INIT_ENV_ARG_LIMIT=32
27CONFIG_LOCALVERSION="-multi"
28CONFIG_LOCALVERSION_AUTO=y
29CONFIG_SWAP=y
30CONFIG_SYSVIPC=y
31CONFIG_SYSVIPC_SYSCTL=y
32CONFIG_POSIX_MQUEUE=y
33CONFIG_BSD_PROCESS_ACCT=y
34# CONFIG_BSD_PROCESS_ACCT_V3 is not set
35# CONFIG_TASKSTATS is not set
36# CONFIG_AUDIT is not set
37# CONFIG_IKCONFIG is not set
38CONFIG_LOG_BUF_SHIFT=14
39# CONFIG_CGROUPS is not set
40# CONFIG_GROUP_SCHED is not set
41# CONFIG_SYSFS_DEPRECATED_V2 is not set
42CONFIG_RELAY=y
43CONFIG_NAMESPACES=y
44# CONFIG_UTS_NS is not set
45# CONFIG_IPC_NS is not set
46# CONFIG_USER_NS is not set
47# CONFIG_PID_NS is not set
48CONFIG_BLK_DEV_INITRD=y
49CONFIG_INITRAMFS_SOURCE=""
50# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
51CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
56CONFIG_KALLSYMS=y
57# CONFIG_KALLSYMS_EXTRA_PASS is not set
58CONFIG_HOTPLUG=y
59CONFIG_PRINTK=y
60CONFIG_BUG=y
61CONFIG_ELF_CORE=y
62CONFIG_COMPAT_BRK=y
63CONFIG_BASE_FULL=y
64CONFIG_FUTEX=y
65CONFIG_ANON_INODES=y
66CONFIG_EPOLL=y
67CONFIG_SIGNALFD=y
68CONFIG_TIMERFD=y
69CONFIG_EVENTFD=y
70CONFIG_SHMEM=y
71CONFIG_VM_EVENT_COUNTERS=y
72CONFIG_SLAB=y
73# CONFIG_SLUB is not set
74# CONFIG_SLOB is not set
75# CONFIG_PROFILING is not set
76# CONFIG_MARKERS is not set
77# CONFIG_HAVE_OPROFILE is not set
78# CONFIG_HAVE_KPROBES is not set
79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
81CONFIG_PROC_PAGE_MONITOR=y
82CONFIG_SLABINFO=y
83CONFIG_RT_MUTEXES=y
84# CONFIG_TINY_SHMEM is not set
85CONFIG_BASE_SMALL=0
86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
88CONFIG_MODULE_UNLOAD=y
89# CONFIG_MODULE_FORCE_UNLOAD is not set
90# CONFIG_MODVERSIONS is not set
91# CONFIG_MODULE_SRCVERSION_ALL is not set
92CONFIG_KMOD=y
93CONFIG_BLOCK=y
94# CONFIG_LBD is not set
95# CONFIG_BLK_DEV_IO_TRACE is not set
96# CONFIG_LSF is not set
97CONFIG_BLK_DEV_BSG=y
98
99#
100# IO Schedulers
101#
102CONFIG_IOSCHED_NOOP=y
103CONFIG_IOSCHED_AS=y
104CONFIG_IOSCHED_DEADLINE=y
105CONFIG_IOSCHED_CFQ=y
106CONFIG_DEFAULT_AS=y
107# CONFIG_DEFAULT_DEADLINE is not set
108# CONFIG_DEFAULT_CFQ is not set
109# CONFIG_DEFAULT_NOOP is not set
110CONFIG_DEFAULT_IOSCHED="anticipatory"
111CONFIG_CLASSIC_RCU=y
112
113#
114# Platform dependent setup
115#
116# CONFIG_SUN3 is not set
117CONFIG_AMIGA=y
118CONFIG_ATARI=y
119CONFIG_MAC=y
120CONFIG_NUBUS=y
121CONFIG_M68K_L2_CACHE=y
122CONFIG_APOLLO=y
123CONFIG_VME=y
124CONFIG_MVME147=y
125CONFIG_MVME16x=y
126CONFIG_BVME6000=y
127CONFIG_HP300=y
128CONFIG_DIO=y
129CONFIG_SUN3X=y
130CONFIG_Q40=y
131
132#
133# Processor type
134#
135CONFIG_M68020=y
136CONFIG_M68030=y
137CONFIG_M68040=y
138CONFIG_M68060=y
139CONFIG_MMU_MOTOROLA=y
140# CONFIG_M68KFPU_EMU is not set
141# CONFIG_ADVANCED is not set
142CONFIG_ARCH_DISCONTIGMEM_ENABLE=y
143CONFIG_NODES_SHIFT=3
144CONFIG_SELECT_MEMORY_MODEL=y
145# CONFIG_FLATMEM_MANUAL is not set
146CONFIG_DISCONTIGMEM_MANUAL=y
147# CONFIG_SPARSEMEM_MANUAL is not set
148CONFIG_DISCONTIGMEM=y
149CONFIG_FLAT_NODE_MEM_MAP=y
150CONFIG_NEED_MULTIPLE_NODES=y
151# CONFIG_SPARSEMEM_STATIC is not set
152# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
153CONFIG_PAGEFLAGS_EXTENDED=y
154CONFIG_SPLIT_PTLOCK_CPUS=4
155# CONFIG_RESOURCES_64BIT is not set
156CONFIG_ZONE_DMA_FLAG=1
157CONFIG_BOUNCE=y
158CONFIG_VIRT_TO_BUS=y
159
160#
161# General setup
162#
163CONFIG_BINFMT_ELF=y
164CONFIG_BINFMT_AOUT=m
165CONFIG_BINFMT_MISC=m
166CONFIG_ZORRO=y
167CONFIG_AMIGA_PCMCIA=y
168CONFIG_STRAM_PROC=y
169CONFIG_HEARTBEAT=y
170CONFIG_PROC_HARDWARE=y
171CONFIG_ISA=y
172CONFIG_GENERIC_ISA_DMA=y
173CONFIG_ZONE_DMA=y
174# CONFIG_ARCH_SUPPORTS_MSI is not set
175CONFIG_ZORRO_NAMES=y
176
177#
178# Networking
179#
180CONFIG_NET=y
181
182#
183# Networking options
184#
185CONFIG_PACKET=y
186# CONFIG_PACKET_MMAP is not set
187CONFIG_UNIX=y
188CONFIG_XFRM=y
189# CONFIG_XFRM_USER is not set
190# CONFIG_XFRM_SUB_POLICY is not set
191CONFIG_XFRM_MIGRATE=y
192# CONFIG_XFRM_STATISTICS is not set
193CONFIG_NET_KEY=y
194CONFIG_NET_KEY_MIGRATE=y
195CONFIG_INET=y
196# CONFIG_IP_MULTICAST is not set
197# CONFIG_IP_ADVANCED_ROUTER is not set
198CONFIG_IP_FIB_HASH=y
199CONFIG_IP_PNP=y
200CONFIG_IP_PNP_DHCP=y
201CONFIG_IP_PNP_BOOTP=y
202CONFIG_IP_PNP_RARP=y
203CONFIG_NET_IPIP=m
204CONFIG_NET_IPGRE=m
205# CONFIG_ARPD is not set
206CONFIG_SYN_COOKIES=y
207CONFIG_INET_AH=m
208CONFIG_INET_ESP=m
209CONFIG_INET_IPCOMP=m
210CONFIG_INET_XFRM_TUNNEL=m
211CONFIG_INET_TUNNEL=m
212CONFIG_INET_XFRM_MODE_TRANSPORT=m
213CONFIG_INET_XFRM_MODE_TUNNEL=m
214CONFIG_INET_XFRM_MODE_BEET=m
215CONFIG_INET_LRO=m
216CONFIG_INET_DIAG=m
217CONFIG_INET_TCP_DIAG=m
218# CONFIG_TCP_CONG_ADVANCED is not set
219CONFIG_TCP_CONG_CUBIC=y
220CONFIG_DEFAULT_TCP_CONG="cubic"
221# CONFIG_TCP_MD5SIG is not set
222# CONFIG_IP_VS is not set
223CONFIG_IPV6=m
224CONFIG_IPV6_PRIVACY=y
225CONFIG_IPV6_ROUTER_PREF=y
226CONFIG_IPV6_ROUTE_INFO=y
227# CONFIG_IPV6_OPTIMISTIC_DAD is not set
228CONFIG_INET6_AH=m
229CONFIG_INET6_ESP=m
230CONFIG_INET6_IPCOMP=m
231# CONFIG_IPV6_MIP6 is not set
232CONFIG_INET6_XFRM_TUNNEL=m
233CONFIG_INET6_TUNNEL=m
234CONFIG_INET6_XFRM_MODE_TRANSPORT=m
235CONFIG_INET6_XFRM_MODE_TUNNEL=m
236CONFIG_INET6_XFRM_MODE_BEET=m
237CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
238CONFIG_IPV6_SIT=m
239CONFIG_IPV6_NDISC_NODETYPE=y
240CONFIG_IPV6_TUNNEL=m
241# CONFIG_IPV6_MULTIPLE_TABLES is not set
242# CONFIG_IPV6_MROUTE is not set
243# CONFIG_NETWORK_SECMARK is not set
244CONFIG_NETFILTER=y
245# CONFIG_NETFILTER_DEBUG is not set
246CONFIG_NETFILTER_ADVANCED=y
247
248#
249# Core Netfilter Configuration
250#
251CONFIG_NETFILTER_NETLINK=m
252CONFIG_NETFILTER_NETLINK_QUEUE=m
253CONFIG_NETFILTER_NETLINK_LOG=m
254CONFIG_NF_CONNTRACK=m
255CONFIG_NF_CT_ACCT=y
256CONFIG_NF_CONNTRACK_MARK=y
257# CONFIG_NF_CONNTRACK_EVENTS is not set
258# CONFIG_NF_CT_PROTO_DCCP is not set
259CONFIG_NF_CT_PROTO_GRE=m
260CONFIG_NF_CT_PROTO_SCTP=m
261CONFIG_NF_CT_PROTO_UDPLITE=m
262CONFIG_NF_CONNTRACK_AMANDA=m
263CONFIG_NF_CONNTRACK_FTP=m
264CONFIG_NF_CONNTRACK_H323=m
265CONFIG_NF_CONNTRACK_IRC=m
266CONFIG_NF_CONNTRACK_NETBIOS_NS=m
267CONFIG_NF_CONNTRACK_PPTP=m
268CONFIG_NF_CONNTRACK_SANE=m
269CONFIG_NF_CONNTRACK_SIP=m
270CONFIG_NF_CONNTRACK_TFTP=m
271# CONFIG_NF_CT_NETLINK is not set
272CONFIG_NETFILTER_XTABLES=m
273CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
274CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
275CONFIG_NETFILTER_XT_TARGET_DSCP=m
276CONFIG_NETFILTER_XT_TARGET_MARK=m
277CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
278CONFIG_NETFILTER_XT_TARGET_NFLOG=m
279CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
280CONFIG_NETFILTER_XT_TARGET_RATEEST=m
281CONFIG_NETFILTER_XT_TARGET_TRACE=m
282CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
283CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
284CONFIG_NETFILTER_XT_MATCH_COMMENT=m
285CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
286CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
287CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
288CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
289CONFIG_NETFILTER_XT_MATCH_DCCP=m
290CONFIG_NETFILTER_XT_MATCH_DSCP=m
291CONFIG_NETFILTER_XT_MATCH_ESP=m
292CONFIG_NETFILTER_XT_MATCH_HELPER=m
293CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
294CONFIG_NETFILTER_XT_MATCH_LENGTH=m
295CONFIG_NETFILTER_XT_MATCH_LIMIT=m
296CONFIG_NETFILTER_XT_MATCH_MAC=m
297CONFIG_NETFILTER_XT_MATCH_MARK=m
298CONFIG_NETFILTER_XT_MATCH_OWNER=m
299CONFIG_NETFILTER_XT_MATCH_POLICY=m
300CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
301CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
302CONFIG_NETFILTER_XT_MATCH_QUOTA=m
303CONFIG_NETFILTER_XT_MATCH_RATEEST=m
304CONFIG_NETFILTER_XT_MATCH_REALM=m
305CONFIG_NETFILTER_XT_MATCH_SCTP=m
306CONFIG_NETFILTER_XT_MATCH_STATE=m
307CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
308CONFIG_NETFILTER_XT_MATCH_STRING=m
309CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
310CONFIG_NETFILTER_XT_MATCH_TIME=m
311CONFIG_NETFILTER_XT_MATCH_U32=m
312CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
313
314#
315# IP: Netfilter Configuration
316#
317CONFIG_NF_CONNTRACK_IPV4=m
318CONFIG_NF_CONNTRACK_PROC_COMPAT=y
319CONFIG_IP_NF_QUEUE=m
320CONFIG_IP_NF_IPTABLES=m
321CONFIG_IP_NF_MATCH_RECENT=m
322CONFIG_IP_NF_MATCH_ECN=m
323CONFIG_IP_NF_MATCH_AH=m
324CONFIG_IP_NF_MATCH_TTL=m
325CONFIG_IP_NF_MATCH_ADDRTYPE=m
326CONFIG_IP_NF_FILTER=m
327CONFIG_IP_NF_TARGET_REJECT=m
328CONFIG_IP_NF_TARGET_LOG=m
329CONFIG_IP_NF_TARGET_ULOG=m
330CONFIG_NF_NAT=m
331CONFIG_NF_NAT_NEEDED=y
332CONFIG_IP_NF_TARGET_MASQUERADE=m
333CONFIG_IP_NF_TARGET_REDIRECT=m
334CONFIG_IP_NF_TARGET_NETMAP=m
335CONFIG_NF_NAT_SNMP_BASIC=m
336CONFIG_NF_NAT_PROTO_GRE=m
337CONFIG_NF_NAT_PROTO_UDPLITE=m
338CONFIG_NF_NAT_PROTO_SCTP=m
339CONFIG_NF_NAT_FTP=m
340CONFIG_NF_NAT_IRC=m
341CONFIG_NF_NAT_TFTP=m
342CONFIG_NF_NAT_AMANDA=m
343CONFIG_NF_NAT_PPTP=m
344CONFIG_NF_NAT_H323=m
345CONFIG_NF_NAT_SIP=m
346CONFIG_IP_NF_MANGLE=m
347CONFIG_IP_NF_TARGET_ECN=m
348CONFIG_IP_NF_TARGET_TTL=m
349CONFIG_IP_NF_TARGET_CLUSTERIP=m
350CONFIG_IP_NF_RAW=m
351CONFIG_IP_NF_ARPTABLES=m
352CONFIG_IP_NF_ARPFILTER=m
353CONFIG_IP_NF_ARP_MANGLE=m
354
355#
356# IPv6: Netfilter Configuration
357#
358CONFIG_NF_CONNTRACK_IPV6=m
359CONFIG_IP6_NF_QUEUE=m
360CONFIG_IP6_NF_IPTABLES=m
361CONFIG_IP6_NF_MATCH_RT=m
362CONFIG_IP6_NF_MATCH_OPTS=m
363CONFIG_IP6_NF_MATCH_FRAG=m
364CONFIG_IP6_NF_MATCH_HL=m
365CONFIG_IP6_NF_MATCH_IPV6HEADER=m
366CONFIG_IP6_NF_MATCH_AH=m
367CONFIG_IP6_NF_MATCH_MH=m
368CONFIG_IP6_NF_MATCH_EUI64=m
369CONFIG_IP6_NF_FILTER=m
370CONFIG_IP6_NF_TARGET_LOG=m
371CONFIG_IP6_NF_TARGET_REJECT=m
372CONFIG_IP6_NF_MANGLE=m
373CONFIG_IP6_NF_TARGET_HL=m
374CONFIG_IP6_NF_RAW=m
375CONFIG_IP_DCCP=m
376CONFIG_INET_DCCP_DIAG=m
377CONFIG_IP_DCCP_ACKVEC=y
378
379#
380# DCCP CCIDs Configuration (EXPERIMENTAL)
381#
382CONFIG_IP_DCCP_CCID2=m
383# CONFIG_IP_DCCP_CCID2_DEBUG is not set
384CONFIG_IP_DCCP_CCID3=m
385# CONFIG_IP_DCCP_CCID3_DEBUG is not set
386CONFIG_IP_DCCP_CCID3_RTO=100
387CONFIG_IP_DCCP_TFRC_LIB=m
388CONFIG_IP_SCTP=m
389# CONFIG_SCTP_DBG_MSG is not set
390# CONFIG_SCTP_DBG_OBJCNT is not set
391# CONFIG_SCTP_HMAC_NONE is not set
392# CONFIG_SCTP_HMAC_SHA1 is not set
393CONFIG_SCTP_HMAC_MD5=y
394# CONFIG_TIPC is not set
395# CONFIG_ATM is not set
396# CONFIG_BRIDGE is not set
397# CONFIG_VLAN_8021Q is not set
398# CONFIG_DECNET is not set
399CONFIG_LLC=m
400# CONFIG_LLC2 is not set
401# CONFIG_IPX is not set
402CONFIG_ATALK=m
403CONFIG_DEV_APPLETALK=m
404# CONFIG_COPS is not set
405CONFIG_IPDDP=m
406CONFIG_IPDDP_ENCAP=y
407CONFIG_IPDDP_DECAP=y
408# CONFIG_X25 is not set
409# CONFIG_LAPB is not set
410# CONFIG_ECONET is not set
411# CONFIG_WAN_ROUTER is not set
412# CONFIG_NET_SCHED is not set
413CONFIG_NET_CLS_ROUTE=y
414
415#
416# Network testing
417#
418# CONFIG_NET_PKTGEN is not set
419# CONFIG_HAMRADIO is not set
420# CONFIG_CAN is not set
421# CONFIG_IRDA is not set
422# CONFIG_BT is not set
423# CONFIG_AF_RXRPC is not set
424
425#
426# Wireless
427#
428# CONFIG_CFG80211 is not set
429CONFIG_WIRELESS_EXT=y
430# CONFIG_MAC80211 is not set
431CONFIG_IEEE80211=m
432# CONFIG_IEEE80211_DEBUG is not set
433CONFIG_IEEE80211_CRYPT_WEP=m
434CONFIG_IEEE80211_CRYPT_CCMP=m
435CONFIG_IEEE80211_CRYPT_TKIP=m
436# CONFIG_RFKILL is not set
437# CONFIG_NET_9P is not set
438
439#
440# Device Drivers
441#
442
443#
444# Generic Driver Options
445#
446CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
447CONFIG_STANDALONE=y
448CONFIG_PREVENT_FIRMWARE_BUILD=y
449CONFIG_FW_LOADER=m
450# CONFIG_SYS_HYPERVISOR is not set
451CONFIG_CONNECTOR=m
452# CONFIG_MTD is not set
453CONFIG_PARPORT=m
454# CONFIG_PARPORT_PC is not set
455CONFIG_PARPORT_AMIGA=m
456CONFIG_PARPORT_MFC3=m
457CONFIG_PARPORT_ATARI=m
458# CONFIG_PARPORT_GSC is not set
459# CONFIG_PARPORT_AX88796 is not set
460CONFIG_PARPORT_1284=y
461CONFIG_PARPORT_NOT_PC=y
462# CONFIG_PNP is not set
463CONFIG_BLK_DEV=y
464CONFIG_AMIGA_FLOPPY=y
465CONFIG_ATARI_FLOPPY=y
466CONFIG_AMIGA_Z2RAM=y
467# CONFIG_BLK_DEV_COW_COMMON is not set
468CONFIG_BLK_DEV_LOOP=y
469CONFIG_BLK_DEV_CRYPTOLOOP=m
470CONFIG_BLK_DEV_NBD=m
471CONFIG_BLK_DEV_RAM=y
472CONFIG_BLK_DEV_RAM_COUNT=16
473CONFIG_BLK_DEV_RAM_SIZE=4096
474# CONFIG_BLK_DEV_XIP is not set
475CONFIG_CDROM_PKTCDVD=m
476CONFIG_CDROM_PKTCDVD_BUFFERS=8
477# CONFIG_CDROM_PKTCDVD_WCACHE is not set
478CONFIG_ATA_OVER_ETH=m
479CONFIG_MISC_DEVICES=y
480# CONFIG_EEPROM_93CX6 is not set
481# CONFIG_ENCLOSURE_SERVICES is not set
482CONFIG_HAVE_IDE=y
483CONFIG_IDE=y
484CONFIG_BLK_DEV_IDE=y
485
486#
487# Please see Documentation/ide/ide.txt for help/info on IDE drives
488#
489# CONFIG_BLK_DEV_IDE_SATA is not set
490CONFIG_BLK_DEV_IDEDISK=y
491# CONFIG_IDEDISK_MULTI_MODE is not set
492CONFIG_BLK_DEV_IDECD=y
493CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
494# CONFIG_BLK_DEV_IDETAPE is not set
495CONFIG_BLK_DEV_IDEFLOPPY=m
496# CONFIG_BLK_DEV_IDESCSI is not set
497# CONFIG_IDE_TASK_IOCTL is not set
498CONFIG_IDE_PROC_FS=y
499
500#
501# IDE chipset support/bugfixes
502#
503# CONFIG_BLK_DEV_PLATFORM is not set
504CONFIG_BLK_DEV_GAYLE=y
505CONFIG_BLK_DEV_IDEDOUBLER=y
506CONFIG_BLK_DEV_BUDDHA=y
507CONFIG_BLK_DEV_FALCON_IDE=y
508CONFIG_BLK_DEV_MAC_IDE=y
509CONFIG_BLK_DEV_Q40IDE=y
510# CONFIG_BLK_DEV_IDEDMA is not set
511# CONFIG_BLK_DEV_HD_ONLY is not set
512# CONFIG_BLK_DEV_HD is not set
513
514#
515# SCSI device support
516#
517CONFIG_RAID_ATTRS=m
518CONFIG_SCSI=y
519CONFIG_SCSI_DMA=y
520CONFIG_SCSI_TGT=m
521# CONFIG_SCSI_NETLINK is not set
522CONFIG_SCSI_PROC_FS=y
523
524#
525# SCSI support type (disk, tape, CD-ROM)
526#
527CONFIG_BLK_DEV_SD=y
528CONFIG_CHR_DEV_ST=m
529CONFIG_CHR_DEV_OSST=m
530CONFIG_BLK_DEV_SR=y
531CONFIG_BLK_DEV_SR_VENDOR=y
532CONFIG_CHR_DEV_SG=m
533# CONFIG_CHR_DEV_SCH is not set
534
535#
536# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
537#
538# CONFIG_SCSI_MULTI_LUN is not set
539CONFIG_SCSI_CONSTANTS=y
540# CONFIG_SCSI_LOGGING is not set
541# CONFIG_SCSI_SCAN_ASYNC is not set
542CONFIG_SCSI_WAIT_SCAN=m
543
544#
545# SCSI Transports
546#
547CONFIG_SCSI_SPI_ATTRS=y
548# CONFIG_SCSI_FC_ATTRS is not set
549CONFIG_SCSI_ISCSI_ATTRS=m
550CONFIG_SCSI_SAS_ATTRS=m
551CONFIG_SCSI_SAS_LIBSAS=m
552CONFIG_SCSI_SAS_HOST_SMP=y
553# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set
554CONFIG_SCSI_SRP_ATTRS=m
555CONFIG_SCSI_SRP_TGT_ATTRS=y
556CONFIG_SCSI_LOWLEVEL=y
557CONFIG_ISCSI_TCP=m
558# CONFIG_SCSI_AHA152X is not set
559# CONFIG_SCSI_AIC7XXX_OLD is not set
560# CONFIG_SCSI_ADVANSYS is not set
561# CONFIG_SCSI_IN2000 is not set
562# CONFIG_SCSI_DTC3280 is not set
563# CONFIG_SCSI_FUTURE_DOMAIN is not set
564# CONFIG_SCSI_GENERIC_NCR5380 is not set
565# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
566# CONFIG_SCSI_NCR53C406A is not set
567CONFIG_53C700_BE_BUS=y
568# CONFIG_SCSI_PAS16 is not set
569# CONFIG_SCSI_QLOGIC_FAS is not set
570# CONFIG_SCSI_SYM53C416 is not set
571# CONFIG_SCSI_T128 is not set
572# CONFIG_SCSI_DEBUG is not set
573CONFIG_A3000_SCSI=y
574CONFIG_A2091_SCSI=y
575CONFIG_GVP11_SCSI=y
576CONFIG_SCSI_A4000T=y
577CONFIG_SCSI_ZORRO7XX=y
578CONFIG_ATARI_SCSI=y
579# CONFIG_ATARI_SCSI_TOSHIBA_DELAY is not set
580# CONFIG_ATARI_SCSI_RESET_BOOT is not set
581CONFIG_MAC_SCSI=y
582CONFIG_SCSI_MAC_ESP=y
583CONFIG_MVME147_SCSI=y
584CONFIG_MVME16x_SCSI=y
585CONFIG_BVME6000_SCSI=y
586CONFIG_SUN3X_ESP=y
587CONFIG_MD=y
588CONFIG_BLK_DEV_MD=m
589CONFIG_MD_LINEAR=m
590CONFIG_MD_RAID0=m
591CONFIG_MD_RAID1=m
592# CONFIG_MD_RAID10 is not set
593CONFIG_MD_RAID456=m
594CONFIG_MD_RAID5_RESHAPE=y
595CONFIG_MD_MULTIPATH=m
596# CONFIG_MD_FAULTY is not set
597CONFIG_BLK_DEV_DM=m
598# CONFIG_DM_DEBUG is not set
599CONFIG_DM_CRYPT=m
600CONFIG_DM_SNAPSHOT=m
601CONFIG_DM_MIRROR=m
602CONFIG_DM_ZERO=m
603CONFIG_DM_MULTIPATH=m
604CONFIG_DM_MULTIPATH_EMC=m
605CONFIG_DM_MULTIPATH_RDAC=m
606CONFIG_DM_MULTIPATH_HP=m
607# CONFIG_DM_DELAY is not set
608CONFIG_DM_UEVENT=y
609CONFIG_MACINTOSH_DRIVERS=y
610CONFIG_ADB=y
611CONFIG_ADB_MACII=y
612CONFIG_ADB_MACIISI=y
613CONFIG_ADB_IOP=y
614CONFIG_ADB_PMU68K=y
615CONFIG_ADB_CUDA=y
616CONFIG_INPUT_ADBHID=y
617CONFIG_MAC_EMUMOUSEBTN=y
618CONFIG_NETDEVICES=y
619# CONFIG_NETDEVICES_MULTIQUEUE is not set
620CONFIG_DUMMY=m
621# CONFIG_BONDING is not set
622CONFIG_MACVLAN=m
623CONFIG_EQUALIZER=m
624# CONFIG_TUN is not set
625CONFIG_VETH=m
626# CONFIG_ARCNET is not set
627# CONFIG_PHYLIB is not set
628CONFIG_NET_ETHERNET=y
629CONFIG_MII=m
630CONFIG_ARIADNE=m
631CONFIG_A2065=m
632CONFIG_HYDRA=m
633CONFIG_ZORRO8390=m
634CONFIG_APNE=m
635CONFIG_APOLLO_ELPLUS=y
636CONFIG_MAC8390=y
637CONFIG_MAC89x0=m
638CONFIG_MACSONIC=m
639CONFIG_MACMACE=y
640CONFIG_MVME147_NET=y
641CONFIG_MVME16x_NET=y
642CONFIG_BVME6000_NET=y
643CONFIG_ATARILANCE=m
644CONFIG_SUN3LANCE=y
645CONFIG_HPLANCE=y
646# CONFIG_NET_VENDOR_3COM is not set
647# CONFIG_NET_VENDOR_SMC is not set
648# CONFIG_NET_VENDOR_RACAL is not set
649# CONFIG_AT1700 is not set
650# CONFIG_DEPCA is not set
651# CONFIG_HP100 is not set
652# CONFIG_NET_ISA is not set
653CONFIG_NE2000=m
654# CONFIG_IBM_NEW_EMAC_ZMII is not set
655# CONFIG_IBM_NEW_EMAC_RGMII is not set
656# CONFIG_IBM_NEW_EMAC_TAH is not set
657# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
658# CONFIG_NET_PCI is not set
659# CONFIG_B44 is not set
660# CONFIG_NET_POCKET is not set
661# CONFIG_NETDEV_1000 is not set
662# CONFIG_NETDEV_10000 is not set
663# CONFIG_TR is not set
664
665#
666# Wireless LAN
667#
668# CONFIG_WLAN_PRE80211 is not set
669# CONFIG_WLAN_80211 is not set
670# CONFIG_IWLWIFI_LEDS is not set
671# CONFIG_WAN is not set
672# CONFIG_PLIP is not set
673CONFIG_PPP=m
674# CONFIG_PPP_MULTILINK is not set
675CONFIG_PPP_FILTER=y
676CONFIG_PPP_ASYNC=m
677CONFIG_PPP_SYNC_TTY=m
678CONFIG_PPP_DEFLATE=m
679CONFIG_PPP_BSDCOMP=m
680CONFIG_PPP_MPPE=m
681CONFIG_PPPOE=m
682CONFIG_PPPOL2TP=m
683CONFIG_SLIP=m
684CONFIG_SLIP_COMPRESSED=y
685CONFIG_SLHC=m
686CONFIG_SLIP_SMART=y
687CONFIG_SLIP_MODE_SLIP6=y
688CONFIG_NETCONSOLE=m
689CONFIG_NETCONSOLE_DYNAMIC=y
690CONFIG_NETPOLL=y
691# CONFIG_NETPOLL_TRAP is not set
692CONFIG_NET_POLL_CONTROLLER=y
693# CONFIG_ISDN is not set
694# CONFIG_PHONE is not set
695
696#
697# Input device support
698#
699CONFIG_INPUT=y
700CONFIG_INPUT_FF_MEMLESS=m
701# CONFIG_INPUT_POLLDEV is not set
702
703#
704# Userland interfaces
705#
706CONFIG_INPUT_MOUSEDEV=y
707CONFIG_INPUT_MOUSEDEV_PSAUX=y
708CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
709CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
710# CONFIG_INPUT_JOYDEV is not set
711# CONFIG_INPUT_EVDEV is not set
712# CONFIG_INPUT_EVBUG is not set
713
714#
715# Input Device Drivers
716#
717CONFIG_INPUT_KEYBOARD=y
718# CONFIG_KEYBOARD_ATKBD is not set
719CONFIG_KEYBOARD_SUNKBD=y
720# CONFIG_KEYBOARD_LKKBD is not set
721# CONFIG_KEYBOARD_XTKBD is not set
722# CONFIG_KEYBOARD_NEWTON is not set
723# CONFIG_KEYBOARD_STOWAWAY is not set
724CONFIG_KEYBOARD_AMIGA=y
725CONFIG_ATARI_KBD_CORE=y
726CONFIG_KEYBOARD_ATARI=y
727CONFIG_KEYBOARD_HIL_OLD=y
728CONFIG_KEYBOARD_HIL=y
729CONFIG_INPUT_MOUSE=y
730CONFIG_MOUSE_PS2=y
731CONFIG_MOUSE_PS2_ALPS=y
732CONFIG_MOUSE_PS2_LOGIPS2PP=y
733CONFIG_MOUSE_PS2_SYNAPTICS=y
734CONFIG_MOUSE_PS2_LIFEBOOK=y
735CONFIG_MOUSE_PS2_TRACKPOINT=y
736# CONFIG_MOUSE_PS2_TOUCHKIT is not set
737CONFIG_MOUSE_SERIAL=m
738# CONFIG_MOUSE_INPORT is not set
739# CONFIG_MOUSE_LOGIBM is not set
740# CONFIG_MOUSE_PC110PAD is not set
741CONFIG_MOUSE_AMIGA=m
742CONFIG_MOUSE_ATARI=m
743# CONFIG_MOUSE_VSXXXAA is not set
744CONFIG_MOUSE_HIL=m
745CONFIG_INPUT_JOYSTICK=y
746# CONFIG_JOYSTICK_ANALOG is not set
747# CONFIG_JOYSTICK_A3D is not set
748# CONFIG_JOYSTICK_ADI is not set
749# CONFIG_JOYSTICK_COBRA is not set
750# CONFIG_JOYSTICK_GF2K is not set
751# CONFIG_JOYSTICK_GRIP is not set
752# CONFIG_JOYSTICK_GRIP_MP is not set
753# CONFIG_JOYSTICK_GUILLEMOT is not set
754# CONFIG_JOYSTICK_INTERACT is not set
755# CONFIG_JOYSTICK_SIDEWINDER is not set
756# CONFIG_JOYSTICK_TMDC is not set
757# CONFIG_JOYSTICK_IFORCE is not set
758# CONFIG_JOYSTICK_WARRIOR is not set
759# CONFIG_JOYSTICK_MAGELLAN is not set
760# CONFIG_JOYSTICK_SPACEORB is not set
761# CONFIG_JOYSTICK_SPACEBALL is not set
762# CONFIG_JOYSTICK_STINGER is not set
763# CONFIG_JOYSTICK_TWIDJOY is not set
764# CONFIG_JOYSTICK_ZHENHUA is not set
765# CONFIG_JOYSTICK_DB9 is not set
766# CONFIG_JOYSTICK_GAMECON is not set
767# CONFIG_JOYSTICK_TURBOGRAFX is not set
768CONFIG_JOYSTICK_AMIGA=m
769# CONFIG_JOYSTICK_JOYDUMP is not set
770# CONFIG_INPUT_TABLET is not set
771# CONFIG_INPUT_TOUCHSCREEN is not set
772CONFIG_INPUT_MISC=y
773CONFIG_INPUT_M68K_BEEP=m
774# CONFIG_INPUT_UINPUT is not set
775CONFIG_HP_SDC_RTC=m
776
777#
778# Hardware I/O ports
779#
780CONFIG_SERIO=y
781# CONFIG_SERIO_SERPORT is not set
782CONFIG_SERIO_Q40KBD=m
783# CONFIG_SERIO_PARKBD is not set
784CONFIG_HP_SDC=y
785CONFIG_HIL_MLC=y
786CONFIG_SERIO_LIBPS2=y
787# CONFIG_SERIO_RAW is not set
788# CONFIG_GAMEPORT is not set
789
790#
791# Character devices
792#
793CONFIG_VT=y
794CONFIG_VT_CONSOLE=y
795CONFIG_HW_CONSOLE=y
796CONFIG_VT_HW_CONSOLE_BINDING=y
797# CONFIG_DEVKMEM is not set
798# CONFIG_SERIAL_NONSTANDARD is not set
799CONFIG_A2232=m
800
801#
802# Serial drivers
803#
804# CONFIG_SERIAL_8250 is not set
805
806#
807# Non-8250 serial port support
808#
809CONFIG_UNIX98_PTYS=y
810CONFIG_LEGACY_PTYS=y
811CONFIG_LEGACY_PTY_COUNT=256
812CONFIG_PRINTER=m
813# CONFIG_LP_CONSOLE is not set
814# CONFIG_PPDEV is not set
815# CONFIG_IPMI_HANDLER is not set
816# CONFIG_HW_RANDOM is not set
817CONFIG_NVRAM=y
818CONFIG_GEN_RTC=m
819CONFIG_GEN_RTC_X=y
820# CONFIG_DTLK is not set
821# CONFIG_R3964 is not set
822# CONFIG_RAW_DRIVER is not set
823# CONFIG_TCG_TPM is not set
824# CONFIG_I2C is not set
825# CONFIG_SPI is not set
826# CONFIG_W1 is not set
827# CONFIG_POWER_SUPPLY is not set
828# CONFIG_HWMON is not set
829# CONFIG_THERMAL is not set
830# CONFIG_WATCHDOG is not set
831
832#
833# Sonics Silicon Backplane
834#
835CONFIG_SSB_POSSIBLE=y
836# CONFIG_SSB is not set
837
838#
839# Multifunction device drivers
840#
841# CONFIG_MFD_SM501 is not set
842# CONFIG_HTC_PASIC3 is not set
843
844#
845# Multimedia devices
846#
847
848#
849# Multimedia core support
850#
851# CONFIG_VIDEO_DEV is not set
852# CONFIG_DVB_CORE is not set
853# CONFIG_VIDEO_MEDIA is not set
854
855#
856# Multimedia drivers
857#
858# CONFIG_DAB is not set
859
860#
861# Graphics support
862#
863# CONFIG_VGASTATE is not set
864# CONFIG_VIDEO_OUTPUT_CONTROL is not set
865CONFIG_FB=y
866# CONFIG_FIRMWARE_EDID is not set
867# CONFIG_FB_DDC is not set
868CONFIG_FB_CFB_FILLRECT=y
869CONFIG_FB_CFB_COPYAREA=y
870CONFIG_FB_CFB_IMAGEBLIT=y
871# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
872# CONFIG_FB_SYS_FILLRECT is not set
873# CONFIG_FB_SYS_COPYAREA is not set
874# CONFIG_FB_SYS_IMAGEBLIT is not set
875# CONFIG_FB_FOREIGN_ENDIAN is not set
876# CONFIG_FB_SYS_FOPS is not set
877# CONFIG_FB_SVGALIB is not set
878CONFIG_FB_MACMODES=y
879# CONFIG_FB_BACKLIGHT is not set
880# CONFIG_FB_MODE_HELPERS is not set
881# CONFIG_FB_TILEBLITTING is not set
882
883#
884# Frame buffer hardware drivers
885#
886CONFIG_FB_CIRRUS=y
887CONFIG_FB_APOLLO=y
888CONFIG_FB_Q40=y
889CONFIG_FB_AMIGA=y
890CONFIG_FB_AMIGA_OCS=y
891CONFIG_FB_AMIGA_ECS=y
892CONFIG_FB_AMIGA_AGA=y
893CONFIG_FB_FM2=y
894CONFIG_FB_ATARI=y
895CONFIG_FB_VALKYRIE=y
896CONFIG_FB_MAC=y
897CONFIG_FB_HP300=y
898# CONFIG_FB_UVESA is not set
899# CONFIG_FB_S1D13XXX is not set
900# CONFIG_FB_ATY is not set
901# CONFIG_FB_VIRTUAL is not set
902# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
903
904#
905# Display device support
906#
907# CONFIG_DISPLAY_SUPPORT is not set
908
909#
910# Console display driver support
911#
912CONFIG_DUMMY_CONSOLE=y
913CONFIG_FRAMEBUFFER_CONSOLE=y
914# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
915# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
916# CONFIG_FONTS is not set
917CONFIG_FONT_8x8=y
918CONFIG_FONT_8x16=y
919CONFIG_FONT_6x11=y
920CONFIG_FONT_PEARL_8x8=y
921CONFIG_LOGO=y
922CONFIG_LOGO_LINUX_MONO=y
923CONFIG_LOGO_LINUX_VGA16=y
924CONFIG_LOGO_LINUX_CLUT224=y
925CONFIG_LOGO_MAC_CLUT224=y
926
927#
928# Sound
929#
930CONFIG_SOUND=m
931CONFIG_DMASOUND_ATARI=m
932CONFIG_DMASOUND_PAULA=m
933CONFIG_DMASOUND_Q40=m
934CONFIG_DMASOUND=m
935CONFIG_HID_SUPPORT=y
936CONFIG_HID=m
937# CONFIG_HID_DEBUG is not set
938CONFIG_HIDRAW=y
939# CONFIG_USB_SUPPORT is not set
940# CONFIG_MMC is not set
941# CONFIG_MEMSTICK is not set
942# CONFIG_NEW_LEDS is not set
943# CONFIG_ACCESSIBILITY is not set
944# CONFIG_RTC_CLASS is not set
945# CONFIG_AUXDISPLAY is not set
946# CONFIG_UIO is not set
947
948#
949# Character devices
950#
951CONFIG_ATARI_MFPSER=m
952CONFIG_ATARI_SCC=y
953CONFIG_ATARI_SCC_DMA=y
954CONFIG_ATARI_MIDI=m
955CONFIG_ATARI_DSP56K=m
956CONFIG_AMIGA_BUILTIN_SERIAL=y
957CONFIG_MULTIFACE_III_TTY=m
958CONFIG_MAC_SCC=y
959CONFIG_MAC_HID=y
960CONFIG_MVME147_SCC=y
961CONFIG_SERIAL167=y
962CONFIG_MVME162_SCC=y
963CONFIG_BVME6000_SCC=y
964CONFIG_DN_SERIAL=y
965CONFIG_SERIAL_CONSOLE=y
966
967#
968# File systems
969#
970CONFIG_EXT2_FS=y
971# CONFIG_EXT2_FS_XATTR is not set
972# CONFIG_EXT2_FS_XIP is not set
973CONFIG_EXT3_FS=y
974# CONFIG_EXT3_FS_XATTR is not set
975# CONFIG_EXT4DEV_FS is not set
976CONFIG_JBD=y
977CONFIG_REISERFS_FS=m
978# CONFIG_REISERFS_CHECK is not set
979# CONFIG_REISERFS_PROC_INFO is not set
980# CONFIG_REISERFS_FS_XATTR is not set
981CONFIG_JFS_FS=m
982# CONFIG_JFS_POSIX_ACL is not set
983# CONFIG_JFS_SECURITY is not set
984# CONFIG_JFS_DEBUG is not set
985# CONFIG_JFS_STATISTICS is not set
986# CONFIG_FS_POSIX_ACL is not set
987CONFIG_XFS_FS=m
988# CONFIG_XFS_QUOTA is not set
989# CONFIG_XFS_POSIX_ACL is not set
990# CONFIG_XFS_RT is not set
991# CONFIG_XFS_DEBUG is not set
992CONFIG_OCFS2_FS=m
993CONFIG_OCFS2_FS_O2CB=m
994CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
995# CONFIG_OCFS2_DEBUG_MASKLOG is not set
996# CONFIG_OCFS2_DEBUG_FS is not set
997CONFIG_DNOTIFY=y
998CONFIG_INOTIFY=y
999CONFIG_INOTIFY_USER=y
1000CONFIG_QUOTA=y
1001CONFIG_QUOTA_NETLINK_INTERFACE=y
1002# CONFIG_PRINT_QUOTA_WARNING is not set
1003# CONFIG_QFMT_V1 is not set
1004# CONFIG_QFMT_V2 is not set
1005CONFIG_QUOTACTL=y
1006CONFIG_AUTOFS_FS=m
1007CONFIG_AUTOFS4_FS=m
1008CONFIG_FUSE_FS=m
1009
1010#
1011# CD-ROM/DVD Filesystems
1012#
1013CONFIG_ISO9660_FS=y
1014CONFIG_JOLIET=y
1015CONFIG_ZISOFS=y
1016CONFIG_UDF_FS=m
1017CONFIG_UDF_NLS=y
1018
1019#
1020# DOS/FAT/NT Filesystems
1021#
1022CONFIG_FAT_FS=y
1023CONFIG_MSDOS_FS=y
1024CONFIG_VFAT_FS=m
1025CONFIG_FAT_DEFAULT_CODEPAGE=437
1026CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
1027# CONFIG_NTFS_FS is not set
1028
1029#
1030# Pseudo filesystems
1031#
1032CONFIG_PROC_FS=y
1033CONFIG_PROC_KCORE=y
1034CONFIG_PROC_SYSCTL=y
1035CONFIG_SYSFS=y
1036CONFIG_TMPFS=y
1037# CONFIG_TMPFS_POSIX_ACL is not set
1038# CONFIG_HUGETLB_PAGE is not set
1039CONFIG_CONFIGFS_FS=m
1040
1041#
1042# Miscellaneous filesystems
1043#
1044# CONFIG_ADFS_FS is not set
1045CONFIG_AFFS_FS=m
1046CONFIG_HFS_FS=y
1047CONFIG_HFSPLUS_FS=y
1048# CONFIG_BEFS_FS is not set
1049# CONFIG_BFS_FS is not set
1050# CONFIG_EFS_FS is not set
1051CONFIG_CRAMFS=m
1052# CONFIG_VXFS_FS is not set
1053CONFIG_MINIX_FS=y
1054CONFIG_HPFS_FS=m
1055# CONFIG_QNX4FS_FS is not set
1056# CONFIG_ROMFS_FS is not set
1057CONFIG_SYSV_FS=m
1058CONFIG_UFS_FS=m
1059# CONFIG_UFS_FS_WRITE is not set
1060# CONFIG_UFS_DEBUG is not set
1061CONFIG_NETWORK_FILESYSTEMS=y
1062CONFIG_NFS_FS=y
1063CONFIG_NFS_V3=y
1064# CONFIG_NFS_V3_ACL is not set
1065CONFIG_NFS_V4=y
1066CONFIG_NFSD=m
1067CONFIG_NFSD_V3=y
1068# CONFIG_NFSD_V3_ACL is not set
1069# CONFIG_NFSD_V4 is not set
1070CONFIG_ROOT_NFS=y
1071CONFIG_LOCKD=y
1072CONFIG_LOCKD_V4=y
1073CONFIG_EXPORTFS=m
1074CONFIG_NFS_COMMON=y
1075CONFIG_SUNRPC=y
1076CONFIG_SUNRPC_GSS=y
1077CONFIG_SUNRPC_BIND34=y
1078CONFIG_RPCSEC_GSS_KRB5=y
1079# CONFIG_RPCSEC_GSS_SPKM3 is not set
1080CONFIG_SMB_FS=m
1081CONFIG_SMB_NLS_DEFAULT=y
1082CONFIG_SMB_NLS_REMOTE="cp437"
1083# CONFIG_CIFS is not set
1084# CONFIG_NCP_FS is not set
1085CONFIG_CODA_FS=m
1086# CONFIG_CODA_FS_OLD_API is not set
1087# CONFIG_AFS_FS is not set
1088
1089#
1090# Partition Types
1091#
1092# CONFIG_PARTITION_ADVANCED is not set
1093CONFIG_AMIGA_PARTITION=y
1094CONFIG_ATARI_PARTITION=y
1095CONFIG_MAC_PARTITION=y
1096CONFIG_MSDOS_PARTITION=y
1097CONFIG_SUN_PARTITION=y
1098CONFIG_SYSV68_PARTITION=y
1099CONFIG_NLS=y
1100CONFIG_NLS_DEFAULT="iso8859-1"
1101CONFIG_NLS_CODEPAGE_437=y
1102CONFIG_NLS_CODEPAGE_737=m
1103CONFIG_NLS_CODEPAGE_775=m
1104CONFIG_NLS_CODEPAGE_850=m
1105CONFIG_NLS_CODEPAGE_852=m
1106CONFIG_NLS_CODEPAGE_855=m
1107CONFIG_NLS_CODEPAGE_857=m
1108CONFIG_NLS_CODEPAGE_860=m
1109CONFIG_NLS_CODEPAGE_861=m
1110CONFIG_NLS_CODEPAGE_862=m
1111CONFIG_NLS_CODEPAGE_863=m
1112CONFIG_NLS_CODEPAGE_864=m
1113CONFIG_NLS_CODEPAGE_865=m
1114CONFIG_NLS_CODEPAGE_866=m
1115CONFIG_NLS_CODEPAGE_869=m
1116CONFIG_NLS_CODEPAGE_936=m
1117CONFIG_NLS_CODEPAGE_950=m
1118CONFIG_NLS_CODEPAGE_932=m
1119CONFIG_NLS_CODEPAGE_949=m
1120CONFIG_NLS_CODEPAGE_874=m
1121CONFIG_NLS_ISO8859_8=m
1122CONFIG_NLS_CODEPAGE_1250=m
1123CONFIG_NLS_CODEPAGE_1251=m
1124CONFIG_NLS_ASCII=m
1125CONFIG_NLS_ISO8859_1=y
1126CONFIG_NLS_ISO8859_2=m
1127CONFIG_NLS_ISO8859_3=m
1128CONFIG_NLS_ISO8859_4=m
1129CONFIG_NLS_ISO8859_5=m
1130CONFIG_NLS_ISO8859_6=m
1131CONFIG_NLS_ISO8859_7=m
1132CONFIG_NLS_ISO8859_9=m
1133CONFIG_NLS_ISO8859_13=m
1134CONFIG_NLS_ISO8859_14=m
1135CONFIG_NLS_ISO8859_15=m
1136CONFIG_NLS_KOI8_R=m
1137CONFIG_NLS_KOI8_U=m
1138CONFIG_NLS_UTF8=y
1139CONFIG_DLM=m
1140# CONFIG_DLM_DEBUG is not set
1141
1142#
1143# Kernel hacking
1144#
1145# CONFIG_PRINTK_TIME is not set
1146CONFIG_ENABLE_WARN_DEPRECATED=y
1147CONFIG_ENABLE_MUST_CHECK=y
1148CONFIG_FRAME_WARN=1024
1149CONFIG_MAGIC_SYSRQ=y
1150# CONFIG_UNUSED_SYMBOLS is not set
1151# CONFIG_DEBUG_FS is not set
1152# CONFIG_HEADERS_CHECK is not set
1153# CONFIG_DEBUG_KERNEL is not set
1154CONFIG_DEBUG_BUGVERBOSE=y
1155# CONFIG_SAMPLES is not set
1156
1157#
1158# Security options
1159#
1160# CONFIG_KEYS is not set
1161# CONFIG_SECURITY is not set
1162# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1163CONFIG_XOR_BLOCKS=m
1164CONFIG_ASYNC_CORE=m
1165CONFIG_ASYNC_MEMCPY=m
1166CONFIG_ASYNC_XOR=m
1167CONFIG_CRYPTO=y
1168
1169#
1170# Crypto core or helper
1171#
1172CONFIG_CRYPTO_ALGAPI=y
1173CONFIG_CRYPTO_AEAD=m
1174CONFIG_CRYPTO_BLKCIPHER=y
1175CONFIG_CRYPTO_HASH=y
1176CONFIG_CRYPTO_MANAGER=y
1177CONFIG_CRYPTO_GF128MUL=m
1178CONFIG_CRYPTO_NULL=m
1179CONFIG_CRYPTO_CRYPTD=m
1180CONFIG_CRYPTO_AUTHENC=m
1181CONFIG_CRYPTO_TEST=m
1182
1183#
1184# Authenticated Encryption with Associated Data
1185#
1186CONFIG_CRYPTO_CCM=m
1187CONFIG_CRYPTO_GCM=m
1188CONFIG_CRYPTO_SEQIV=m
1189
1190#
1191# Block modes
1192#
1193CONFIG_CRYPTO_CBC=y
1194CONFIG_CRYPTO_CTR=m
1195CONFIG_CRYPTO_CTS=m
1196CONFIG_CRYPTO_ECB=m
1197CONFIG_CRYPTO_LRW=m
1198CONFIG_CRYPTO_PCBC=m
1199CONFIG_CRYPTO_XTS=m
1200
1201#
1202# Hash modes
1203#
1204CONFIG_CRYPTO_HMAC=y
1205CONFIG_CRYPTO_XCBC=m
1206
1207#
1208# Digest
1209#
1210CONFIG_CRYPTO_CRC32C=m
1211CONFIG_CRYPTO_MD4=m
1212CONFIG_CRYPTO_MD5=y
1213CONFIG_CRYPTO_MICHAEL_MIC=m
1214CONFIG_CRYPTO_SHA1=m
1215CONFIG_CRYPTO_SHA256=m
1216CONFIG_CRYPTO_SHA512=m
1217CONFIG_CRYPTO_TGR192=m
1218CONFIG_CRYPTO_WP512=m
1219
1220#
1221# Ciphers
1222#
1223CONFIG_CRYPTO_AES=m
1224CONFIG_CRYPTO_ANUBIS=m
1225CONFIG_CRYPTO_ARC4=m
1226CONFIG_CRYPTO_BLOWFISH=m
1227CONFIG_CRYPTO_CAMELLIA=m
1228CONFIG_CRYPTO_CAST5=m
1229CONFIG_CRYPTO_CAST6=m
1230CONFIG_CRYPTO_DES=y
1231CONFIG_CRYPTO_FCRYPT=m
1232CONFIG_CRYPTO_KHAZAD=m
1233CONFIG_CRYPTO_SALSA20=m
1234CONFIG_CRYPTO_SEED=m
1235CONFIG_CRYPTO_SERPENT=m
1236CONFIG_CRYPTO_TEA=m
1237CONFIG_CRYPTO_TWOFISH=m
1238CONFIG_CRYPTO_TWOFISH_COMMON=m
1239
1240#
1241# Compression
1242#
1243CONFIG_CRYPTO_DEFLATE=m
1244CONFIG_CRYPTO_LZO=m
1245# CONFIG_CRYPTO_HW is not set
1246
1247#
1248# Library routines
1249#
1250CONFIG_BITREVERSE=y
1251# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1252# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1253CONFIG_CRC_CCITT=m
1254CONFIG_CRC16=y
1255CONFIG_CRC_ITU_T=m
1256CONFIG_CRC32=y
1257# CONFIG_CRC7 is not set
1258CONFIG_LIBCRC32C=m
1259CONFIG_ZLIB_INFLATE=y
1260CONFIG_ZLIB_DEFLATE=m
1261CONFIG_LZO_COMPRESS=m
1262CONFIG_LZO_DECOMPRESS=m
1263CONFIG_TEXTSEARCH=y
1264CONFIG_TEXTSEARCH_KMP=m
1265CONFIG_TEXTSEARCH_BM=m
1266CONFIG_TEXTSEARCH_FSM=m
1267CONFIG_PLIST=y
1268CONFIG_HAS_IOMEM=y
1269CONFIG_HAS_DMA=y
diff --git a/arch/m68k/configs/mvme147_defconfig b/arch/m68k/configs/mvme147_defconfig
index f40b1724254b..e7a8246840b5 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:17 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -144,6 +147,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
144CONFIG_NEED_MULTIPLE_NODES=y 147CONFIG_NEED_MULTIPLE_NODES=y
145# CONFIG_SPARSEMEM_STATIC is not set 148# CONFIG_SPARSEMEM_STATIC is not set
146# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 149# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
150CONFIG_PAGEFLAGS_EXTENDED=y
147CONFIG_SPLIT_PTLOCK_CPUS=4 151CONFIG_SPLIT_PTLOCK_CPUS=4
148# CONFIG_RESOURCES_64BIT is not set 152# CONFIG_RESOURCES_64BIT is not set
149CONFIG_ZONE_DMA_FLAG=1 153CONFIG_ZONE_DMA_FLAG=1
@@ -222,8 +226,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
222CONFIG_INET6_XFRM_MODE_BEET=m 226CONFIG_INET6_XFRM_MODE_BEET=m
223CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 227CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
224CONFIG_IPV6_SIT=m 228CONFIG_IPV6_SIT=m
229CONFIG_IPV6_NDISC_NODETYPE=y
225CONFIG_IPV6_TUNNEL=m 230CONFIG_IPV6_TUNNEL=m
226# CONFIG_IPV6_MULTIPLE_TABLES is not set 231# CONFIG_IPV6_MULTIPLE_TABLES is not set
232# CONFIG_IPV6_MROUTE is not set
227# CONFIG_NETWORK_SECMARK is not set 233# CONFIG_NETWORK_SECMARK is not set
228CONFIG_NETFILTER=y 234CONFIG_NETFILTER=y
229# CONFIG_NETFILTER_DEBUG is not set 235# CONFIG_NETFILTER_DEBUG is not set
@@ -239,6 +245,7 @@ CONFIG_NF_CONNTRACK=m
239CONFIG_NF_CT_ACCT=y 245CONFIG_NF_CT_ACCT=y
240CONFIG_NF_CONNTRACK_MARK=y 246CONFIG_NF_CONNTRACK_MARK=y
241# CONFIG_NF_CONNTRACK_EVENTS is not set 247# CONFIG_NF_CONNTRACK_EVENTS is not set
248# CONFIG_NF_CT_PROTO_DCCP is not set
242CONFIG_NF_CT_PROTO_GRE=m 249CONFIG_NF_CT_PROTO_GRE=m
243CONFIG_NF_CT_PROTO_SCTP=m 250CONFIG_NF_CT_PROTO_SCTP=m
244CONFIG_NF_CT_PROTO_UDPLITE=m 251CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -317,6 +324,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
317CONFIG_IP_NF_TARGET_NETMAP=m 324CONFIG_IP_NF_TARGET_NETMAP=m
318CONFIG_NF_NAT_SNMP_BASIC=m 325CONFIG_NF_NAT_SNMP_BASIC=m
319CONFIG_NF_NAT_PROTO_GRE=m 326CONFIG_NF_NAT_PROTO_GRE=m
327CONFIG_NF_NAT_PROTO_UDPLITE=m
328CONFIG_NF_NAT_PROTO_SCTP=m
320CONFIG_NF_NAT_FTP=m 329CONFIG_NF_NAT_FTP=m
321CONFIG_NF_NAT_IRC=m 330CONFIG_NF_NAT_IRC=m
322CONFIG_NF_NAT_TFTP=m 331CONFIG_NF_NAT_TFTP=m
@@ -410,8 +419,6 @@ CONFIG_IEEE80211=m
410CONFIG_IEEE80211_CRYPT_WEP=m 419CONFIG_IEEE80211_CRYPT_WEP=m
411CONFIG_IEEE80211_CRYPT_CCMP=m 420CONFIG_IEEE80211_CRYPT_CCMP=m
412CONFIG_IEEE80211_CRYPT_TKIP=m 421CONFIG_IEEE80211_CRYPT_TKIP=m
413CONFIG_IEEE80211_SOFTMAC=m
414# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
415# CONFIG_RFKILL is not set 422# CONFIG_RFKILL is not set
416# CONFIG_NET_9P is not set 423# CONFIG_NET_9P is not set
417 424
@@ -542,6 +549,7 @@ CONFIG_MVME147_NET=y
542# 549#
543# CONFIG_WLAN_PRE80211 is not set 550# CONFIG_WLAN_PRE80211 is not set
544# CONFIG_WLAN_80211 is not set 551# CONFIG_WLAN_80211 is not set
552# CONFIG_IWLWIFI_LEDS is not set
545# CONFIG_WAN is not set 553# CONFIG_WAN is not set
546CONFIG_PPP=m 554CONFIG_PPP=m
547# CONFIG_PPP_MULTILINK is not set 555# CONFIG_PPP_MULTILINK is not set
@@ -625,6 +633,7 @@ CONFIG_VT=y
625CONFIG_VT_CONSOLE=y 633CONFIG_VT_CONSOLE=y
626CONFIG_HW_CONSOLE=y 634CONFIG_HW_CONSOLE=y
627CONFIG_VT_HW_CONSOLE_BINDING=y 635CONFIG_VT_HW_CONSOLE_BINDING=y
636# CONFIG_DEVKMEM is not set
628# CONFIG_SERIAL_NONSTANDARD is not set 637# CONFIG_SERIAL_NONSTANDARD is not set
629 638
630# 639#
@@ -646,12 +655,7 @@ CONFIG_GEN_RTC_X=y
646# CONFIG_RAW_DRIVER is not set 655# CONFIG_RAW_DRIVER is not set
647# CONFIG_TCG_TPM is not set 656# CONFIG_TCG_TPM is not set
648# CONFIG_I2C is not set 657# CONFIG_I2C is not set
649
650#
651# SPI support
652#
653# CONFIG_SPI is not set 658# CONFIG_SPI is not set
654# CONFIG_SPI_MASTER is not set
655# CONFIG_W1 is not set 659# CONFIG_W1 is not set
656# CONFIG_POWER_SUPPLY is not set 660# CONFIG_POWER_SUPPLY is not set
657# CONFIG_HWMON is not set 661# CONFIG_HWMON is not set
@@ -668,12 +672,22 @@ CONFIG_SSB_POSSIBLE=y
668# Multifunction device drivers 672# Multifunction device drivers
669# 673#
670# CONFIG_MFD_SM501 is not set 674# CONFIG_MFD_SM501 is not set
675# CONFIG_HTC_PASIC3 is not set
671 676
672# 677#
673# Multimedia devices 678# Multimedia devices
674# 679#
680
681#
682# Multimedia core support
683#
675# CONFIG_VIDEO_DEV is not set 684# CONFIG_VIDEO_DEV is not set
676# CONFIG_DVB_CORE is not set 685# CONFIG_DVB_CORE is not set
686# CONFIG_VIDEO_MEDIA is not set
687
688#
689# Multimedia drivers
690#
677# CONFIG_DAB is not set 691# CONFIG_DAB is not set
678 692
679# 693#
@@ -706,11 +720,8 @@ CONFIG_HIDRAW=y
706# CONFIG_MMC is not set 720# CONFIG_MMC is not set
707# CONFIG_MEMSTICK is not set 721# CONFIG_MEMSTICK is not set
708# CONFIG_NEW_LEDS is not set 722# CONFIG_NEW_LEDS is not set
723# CONFIG_ACCESSIBILITY is not set
709# CONFIG_RTC_CLASS is not set 724# CONFIG_RTC_CLASS is not set
710
711#
712# Userspace I/O
713#
714# CONFIG_UIO is not set 725# CONFIG_UIO is not set
715 726
716# 727#
@@ -738,16 +749,15 @@ CONFIG_JFS_FS=m
738# CONFIG_JFS_SECURITY is not set 749# CONFIG_JFS_SECURITY is not set
739# CONFIG_JFS_DEBUG is not set 750# CONFIG_JFS_DEBUG is not set
740# CONFIG_JFS_STATISTICS is not set 751# CONFIG_JFS_STATISTICS is not set
741CONFIG_FS_POSIX_ACL=y 752# CONFIG_FS_POSIX_ACL is not set
742CONFIG_XFS_FS=m 753CONFIG_XFS_FS=m
743# CONFIG_XFS_QUOTA is not set 754# CONFIG_XFS_QUOTA is not set
744# CONFIG_XFS_SECURITY is not set
745# CONFIG_XFS_POSIX_ACL is not set 755# CONFIG_XFS_POSIX_ACL is not set
746# CONFIG_XFS_RT is not set 756# CONFIG_XFS_RT is not set
747CONFIG_GFS2_FS=m 757# CONFIG_XFS_DEBUG is not set
748CONFIG_GFS2_FS_LOCKING_NOLOCK=m
749CONFIG_GFS2_FS_LOCKING_DLM=m
750CONFIG_OCFS2_FS=m 758CONFIG_OCFS2_FS=m
759CONFIG_OCFS2_FS_O2CB=m
760CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
751# CONFIG_OCFS2_DEBUG_MASKLOG is not set 761# CONFIG_OCFS2_DEBUG_MASKLOG is not set
752# CONFIG_OCFS2_DEBUG_FS is not set 762# CONFIG_OCFS2_DEBUG_FS is not set
753CONFIG_DNOTIFY=y 763CONFIG_DNOTIFY=y
@@ -819,12 +829,10 @@ CONFIG_NFS_FS=y
819CONFIG_NFS_V3=y 829CONFIG_NFS_V3=y
820# CONFIG_NFS_V3_ACL is not set 830# CONFIG_NFS_V3_ACL is not set
821CONFIG_NFS_V4=y 831CONFIG_NFS_V4=y
822# CONFIG_NFS_DIRECTIO is not set
823CONFIG_NFSD=m 832CONFIG_NFSD=m
824CONFIG_NFSD_V3=y 833CONFIG_NFSD_V3=y
825# CONFIG_NFSD_V3_ACL is not set 834# CONFIG_NFSD_V3_ACL is not set
826# CONFIG_NFSD_V4 is not set 835# CONFIG_NFSD_V4 is not set
827CONFIG_NFSD_TCP=y
828CONFIG_ROOT_NFS=y 836CONFIG_ROOT_NFS=y
829CONFIG_LOCKD=y 837CONFIG_LOCKD=y
830CONFIG_LOCKD_V4=y 838CONFIG_LOCKD_V4=y
@@ -899,6 +907,7 @@ CONFIG_DLM=m
899# CONFIG_PRINTK_TIME is not set 907# CONFIG_PRINTK_TIME is not set
900CONFIG_ENABLE_WARN_DEPRECATED=y 908CONFIG_ENABLE_WARN_DEPRECATED=y
901CONFIG_ENABLE_MUST_CHECK=y 909CONFIG_ENABLE_MUST_CHECK=y
910CONFIG_FRAME_WARN=1024
902CONFIG_MAGIC_SYSRQ=y 911CONFIG_MAGIC_SYSRQ=y
903# CONFIG_UNUSED_SYMBOLS is not set 912# CONFIG_UNUSED_SYMBOLS is not set
904# CONFIG_DEBUG_FS is not set 913# CONFIG_DEBUG_FS is not set
@@ -918,53 +927,82 @@ CONFIG_ASYNC_CORE=m
918CONFIG_ASYNC_MEMCPY=m 927CONFIG_ASYNC_MEMCPY=m
919CONFIG_ASYNC_XOR=m 928CONFIG_ASYNC_XOR=m
920CONFIG_CRYPTO=y 929CONFIG_CRYPTO=y
930
931#
932# Crypto core or helper
933#
921CONFIG_CRYPTO_ALGAPI=y 934CONFIG_CRYPTO_ALGAPI=y
922CONFIG_CRYPTO_AEAD=m 935CONFIG_CRYPTO_AEAD=m
923CONFIG_CRYPTO_BLKCIPHER=y 936CONFIG_CRYPTO_BLKCIPHER=y
924CONFIG_CRYPTO_SEQIV=m
925CONFIG_CRYPTO_HASH=y 937CONFIG_CRYPTO_HASH=y
926CONFIG_CRYPTO_MANAGER=y 938CONFIG_CRYPTO_MANAGER=y
939CONFIG_CRYPTO_GF128MUL=m
940CONFIG_CRYPTO_NULL=m
941CONFIG_CRYPTO_CRYPTD=m
942CONFIG_CRYPTO_AUTHENC=m
943CONFIG_CRYPTO_TEST=m
944
945#
946# Authenticated Encryption with Associated Data
947#
948CONFIG_CRYPTO_CCM=m
949CONFIG_CRYPTO_GCM=m
950CONFIG_CRYPTO_SEQIV=m
951
952#
953# Block modes
954#
955CONFIG_CRYPTO_CBC=y
956CONFIG_CRYPTO_CTR=m
957CONFIG_CRYPTO_CTS=m
958CONFIG_CRYPTO_ECB=m
959CONFIG_CRYPTO_LRW=m
960CONFIG_CRYPTO_PCBC=m
961CONFIG_CRYPTO_XTS=m
962
963#
964# Hash modes
965#
927CONFIG_CRYPTO_HMAC=y 966CONFIG_CRYPTO_HMAC=y
928CONFIG_CRYPTO_XCBC=m 967CONFIG_CRYPTO_XCBC=m
929CONFIG_CRYPTO_NULL=m 968
969#
970# Digest
971#
972CONFIG_CRYPTO_CRC32C=m
930CONFIG_CRYPTO_MD4=m 973CONFIG_CRYPTO_MD4=m
931CONFIG_CRYPTO_MD5=y 974CONFIG_CRYPTO_MD5=y
975CONFIG_CRYPTO_MICHAEL_MIC=m
932CONFIG_CRYPTO_SHA1=m 976CONFIG_CRYPTO_SHA1=m
933CONFIG_CRYPTO_SHA256=m 977CONFIG_CRYPTO_SHA256=m
934CONFIG_CRYPTO_SHA512=m 978CONFIG_CRYPTO_SHA512=m
935CONFIG_CRYPTO_WP512=m
936CONFIG_CRYPTO_TGR192=m 979CONFIG_CRYPTO_TGR192=m
937CONFIG_CRYPTO_GF128MUL=m 980CONFIG_CRYPTO_WP512=m
938CONFIG_CRYPTO_ECB=m 981
939CONFIG_CRYPTO_CBC=y 982#
940CONFIG_CRYPTO_PCBC=m 983# Ciphers
941CONFIG_CRYPTO_LRW=m 984#
942CONFIG_CRYPTO_XTS=m
943CONFIG_CRYPTO_CTR=m
944CONFIG_CRYPTO_GCM=m
945CONFIG_CRYPTO_CCM=m
946CONFIG_CRYPTO_CRYPTD=m
947CONFIG_CRYPTO_DES=y
948CONFIG_CRYPTO_FCRYPT=m
949CONFIG_CRYPTO_BLOWFISH=m
950CONFIG_CRYPTO_TWOFISH=m
951CONFIG_CRYPTO_TWOFISH_COMMON=m
952CONFIG_CRYPTO_SERPENT=m
953CONFIG_CRYPTO_AES=m 985CONFIG_CRYPTO_AES=m
986CONFIG_CRYPTO_ANUBIS=m
987CONFIG_CRYPTO_ARC4=m
988CONFIG_CRYPTO_BLOWFISH=m
989CONFIG_CRYPTO_CAMELLIA=m
954CONFIG_CRYPTO_CAST5=m 990CONFIG_CRYPTO_CAST5=m
955CONFIG_CRYPTO_CAST6=m 991CONFIG_CRYPTO_CAST6=m
956CONFIG_CRYPTO_TEA=m 992CONFIG_CRYPTO_DES=y
957CONFIG_CRYPTO_ARC4=m 993CONFIG_CRYPTO_FCRYPT=m
958CONFIG_CRYPTO_KHAZAD=m 994CONFIG_CRYPTO_KHAZAD=m
959CONFIG_CRYPTO_ANUBIS=m
960CONFIG_CRYPTO_SEED=m
961CONFIG_CRYPTO_SALSA20=m 995CONFIG_CRYPTO_SALSA20=m
996CONFIG_CRYPTO_SEED=m
997CONFIG_CRYPTO_SERPENT=m
998CONFIG_CRYPTO_TEA=m
999CONFIG_CRYPTO_TWOFISH=m
1000CONFIG_CRYPTO_TWOFISH_COMMON=m
1001
1002#
1003# Compression
1004#
962CONFIG_CRYPTO_DEFLATE=m 1005CONFIG_CRYPTO_DEFLATE=m
963CONFIG_CRYPTO_MICHAEL_MIC=m
964CONFIG_CRYPTO_CRC32C=m
965CONFIG_CRYPTO_CAMELLIA=m
966CONFIG_CRYPTO_TEST=m
967CONFIG_CRYPTO_AUTHENC=m
968CONFIG_CRYPTO_LZO=m 1006CONFIG_CRYPTO_LZO=m
969# CONFIG_CRYPTO_HW is not set 1007# CONFIG_CRYPTO_HW is not set
970 1008
@@ -972,9 +1010,11 @@ CONFIG_CRYPTO_LZO=m
972# Library routines 1010# Library routines
973# 1011#
974CONFIG_BITREVERSE=y 1012CONFIG_BITREVERSE=y
1013# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1014# CONFIG_GENERIC_FIND_NEXT_BIT is not set
975CONFIG_CRC_CCITT=m 1015CONFIG_CRC_CCITT=m
976CONFIG_CRC16=m 1016CONFIG_CRC16=m
977# CONFIG_CRC_ITU_T is not set 1017CONFIG_CRC_ITU_T=m
978CONFIG_CRC32=y 1018CONFIG_CRC32=y
979# CONFIG_CRC7 is not set 1019# CONFIG_CRC7 is not set
980CONFIG_LIBCRC32C=m 1020CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/mvme16x_defconfig b/arch/m68k/configs/mvme16x_defconfig
index e9ccc774334e..ab536eb172bb 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:19 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -144,6 +147,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
144CONFIG_NEED_MULTIPLE_NODES=y 147CONFIG_NEED_MULTIPLE_NODES=y
145# CONFIG_SPARSEMEM_STATIC is not set 148# CONFIG_SPARSEMEM_STATIC is not set
146# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 149# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
150CONFIG_PAGEFLAGS_EXTENDED=y
147CONFIG_SPLIT_PTLOCK_CPUS=4 151CONFIG_SPLIT_PTLOCK_CPUS=4
148# CONFIG_RESOURCES_64BIT is not set 152# CONFIG_RESOURCES_64BIT is not set
149CONFIG_ZONE_DMA_FLAG=1 153CONFIG_ZONE_DMA_FLAG=1
@@ -222,8 +226,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
222CONFIG_INET6_XFRM_MODE_BEET=m 226CONFIG_INET6_XFRM_MODE_BEET=m
223CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 227CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
224CONFIG_IPV6_SIT=m 228CONFIG_IPV6_SIT=m
229CONFIG_IPV6_NDISC_NODETYPE=y
225CONFIG_IPV6_TUNNEL=m 230CONFIG_IPV6_TUNNEL=m
226# CONFIG_IPV6_MULTIPLE_TABLES is not set 231# CONFIG_IPV6_MULTIPLE_TABLES is not set
232# CONFIG_IPV6_MROUTE is not set
227# CONFIG_NETWORK_SECMARK is not set 233# CONFIG_NETWORK_SECMARK is not set
228CONFIG_NETFILTER=y 234CONFIG_NETFILTER=y
229# CONFIG_NETFILTER_DEBUG is not set 235# CONFIG_NETFILTER_DEBUG is not set
@@ -239,6 +245,7 @@ CONFIG_NF_CONNTRACK=m
239CONFIG_NF_CT_ACCT=y 245CONFIG_NF_CT_ACCT=y
240CONFIG_NF_CONNTRACK_MARK=y 246CONFIG_NF_CONNTRACK_MARK=y
241# CONFIG_NF_CONNTRACK_EVENTS is not set 247# CONFIG_NF_CONNTRACK_EVENTS is not set
248# CONFIG_NF_CT_PROTO_DCCP is not set
242CONFIG_NF_CT_PROTO_GRE=m 249CONFIG_NF_CT_PROTO_GRE=m
243CONFIG_NF_CT_PROTO_SCTP=m 250CONFIG_NF_CT_PROTO_SCTP=m
244CONFIG_NF_CT_PROTO_UDPLITE=m 251CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -317,6 +324,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
317CONFIG_IP_NF_TARGET_NETMAP=m 324CONFIG_IP_NF_TARGET_NETMAP=m
318CONFIG_NF_NAT_SNMP_BASIC=m 325CONFIG_NF_NAT_SNMP_BASIC=m
319CONFIG_NF_NAT_PROTO_GRE=m 326CONFIG_NF_NAT_PROTO_GRE=m
327CONFIG_NF_NAT_PROTO_UDPLITE=m
328CONFIG_NF_NAT_PROTO_SCTP=m
320CONFIG_NF_NAT_FTP=m 329CONFIG_NF_NAT_FTP=m
321CONFIG_NF_NAT_IRC=m 330CONFIG_NF_NAT_IRC=m
322CONFIG_NF_NAT_TFTP=m 331CONFIG_NF_NAT_TFTP=m
@@ -410,8 +419,6 @@ CONFIG_IEEE80211=m
410CONFIG_IEEE80211_CRYPT_WEP=m 419CONFIG_IEEE80211_CRYPT_WEP=m
411CONFIG_IEEE80211_CRYPT_CCMP=m 420CONFIG_IEEE80211_CRYPT_CCMP=m
412CONFIG_IEEE80211_CRYPT_TKIP=m 421CONFIG_IEEE80211_CRYPT_TKIP=m
413CONFIG_IEEE80211_SOFTMAC=m
414# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
415# CONFIG_RFKILL is not set 422# CONFIG_RFKILL is not set
416# CONFIG_NET_9P is not set 423# CONFIG_NET_9P is not set
417 424
@@ -543,6 +550,7 @@ CONFIG_MVME16x_NET=y
543# 550#
544# CONFIG_WLAN_PRE80211 is not set 551# CONFIG_WLAN_PRE80211 is not set
545# CONFIG_WLAN_80211 is not set 552# CONFIG_WLAN_80211 is not set
553# CONFIG_IWLWIFI_LEDS is not set
546# CONFIG_WAN is not set 554# CONFIG_WAN is not set
547CONFIG_PPP=m 555CONFIG_PPP=m
548# CONFIG_PPP_MULTILINK is not set 556# CONFIG_PPP_MULTILINK is not set
@@ -626,6 +634,7 @@ CONFIG_VT=y
626CONFIG_VT_CONSOLE=y 634CONFIG_VT_CONSOLE=y
627CONFIG_HW_CONSOLE=y 635CONFIG_HW_CONSOLE=y
628CONFIG_VT_HW_CONSOLE_BINDING=y 636CONFIG_VT_HW_CONSOLE_BINDING=y
637# CONFIG_DEVKMEM is not set
629# CONFIG_SERIAL_NONSTANDARD is not set 638# CONFIG_SERIAL_NONSTANDARD is not set
630 639
631# 640#
@@ -647,12 +656,7 @@ CONFIG_GEN_RTC_X=y
647# CONFIG_RAW_DRIVER is not set 656# CONFIG_RAW_DRIVER is not set
648# CONFIG_TCG_TPM is not set 657# CONFIG_TCG_TPM is not set
649# CONFIG_I2C is not set 658# CONFIG_I2C is not set
650
651#
652# SPI support
653#
654# CONFIG_SPI is not set 659# CONFIG_SPI is not set
655# CONFIG_SPI_MASTER is not set
656# CONFIG_W1 is not set 660# CONFIG_W1 is not set
657# CONFIG_POWER_SUPPLY is not set 661# CONFIG_POWER_SUPPLY is not set
658# CONFIG_HWMON is not set 662# CONFIG_HWMON is not set
@@ -669,12 +673,22 @@ CONFIG_SSB_POSSIBLE=y
669# Multifunction device drivers 673# Multifunction device drivers
670# 674#
671# CONFIG_MFD_SM501 is not set 675# CONFIG_MFD_SM501 is not set
676# CONFIG_HTC_PASIC3 is not set
672 677
673# 678#
674# Multimedia devices 679# Multimedia devices
675# 680#
681
682#
683# Multimedia core support
684#
676# CONFIG_VIDEO_DEV is not set 685# CONFIG_VIDEO_DEV is not set
677# CONFIG_DVB_CORE is not set 686# CONFIG_DVB_CORE is not set
687# CONFIG_VIDEO_MEDIA is not set
688
689#
690# Multimedia drivers
691#
678# CONFIG_DAB is not set 692# CONFIG_DAB is not set
679 693
680# 694#
@@ -707,11 +721,8 @@ CONFIG_HIDRAW=y
707# CONFIG_MMC is not set 721# CONFIG_MMC is not set
708# CONFIG_MEMSTICK is not set 722# CONFIG_MEMSTICK is not set
709# CONFIG_NEW_LEDS is not set 723# CONFIG_NEW_LEDS is not set
724# CONFIG_ACCESSIBILITY is not set
710# CONFIG_RTC_CLASS is not set 725# CONFIG_RTC_CLASS is not set
711
712#
713# Userspace I/O
714#
715# CONFIG_UIO is not set 726# CONFIG_UIO is not set
716 727
717# 728#
@@ -740,16 +751,15 @@ CONFIG_JFS_FS=m
740# CONFIG_JFS_SECURITY is not set 751# CONFIG_JFS_SECURITY is not set
741# CONFIG_JFS_DEBUG is not set 752# CONFIG_JFS_DEBUG is not set
742# CONFIG_JFS_STATISTICS is not set 753# CONFIG_JFS_STATISTICS is not set
743CONFIG_FS_POSIX_ACL=y 754# CONFIG_FS_POSIX_ACL is not set
744CONFIG_XFS_FS=m 755CONFIG_XFS_FS=m
745# CONFIG_XFS_QUOTA is not set 756# CONFIG_XFS_QUOTA is not set
746# CONFIG_XFS_SECURITY is not set
747# CONFIG_XFS_POSIX_ACL is not set 757# CONFIG_XFS_POSIX_ACL is not set
748# CONFIG_XFS_RT is not set 758# CONFIG_XFS_RT is not set
749CONFIG_GFS2_FS=m 759# CONFIG_XFS_DEBUG is not set
750CONFIG_GFS2_FS_LOCKING_NOLOCK=m
751CONFIG_GFS2_FS_LOCKING_DLM=m
752CONFIG_OCFS2_FS=m 760CONFIG_OCFS2_FS=m
761CONFIG_OCFS2_FS_O2CB=m
762CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
753# CONFIG_OCFS2_DEBUG_MASKLOG is not set 763# CONFIG_OCFS2_DEBUG_MASKLOG is not set
754# CONFIG_OCFS2_DEBUG_FS is not set 764# CONFIG_OCFS2_DEBUG_FS is not set
755CONFIG_DNOTIFY=y 765CONFIG_DNOTIFY=y
@@ -821,12 +831,10 @@ CONFIG_NFS_FS=y
821CONFIG_NFS_V3=y 831CONFIG_NFS_V3=y
822# CONFIG_NFS_V3_ACL is not set 832# CONFIG_NFS_V3_ACL is not set
823CONFIG_NFS_V4=y 833CONFIG_NFS_V4=y
824# CONFIG_NFS_DIRECTIO is not set
825CONFIG_NFSD=m 834CONFIG_NFSD=m
826CONFIG_NFSD_V3=y 835CONFIG_NFSD_V3=y
827# CONFIG_NFSD_V3_ACL is not set 836# CONFIG_NFSD_V3_ACL is not set
828# CONFIG_NFSD_V4 is not set 837# CONFIG_NFSD_V4 is not set
829CONFIG_NFSD_TCP=y
830CONFIG_ROOT_NFS=y 838CONFIG_ROOT_NFS=y
831CONFIG_LOCKD=y 839CONFIG_LOCKD=y
832CONFIG_LOCKD_V4=y 840CONFIG_LOCKD_V4=y
@@ -901,6 +909,7 @@ CONFIG_DLM=m
901# CONFIG_PRINTK_TIME is not set 909# CONFIG_PRINTK_TIME is not set
902CONFIG_ENABLE_WARN_DEPRECATED=y 910CONFIG_ENABLE_WARN_DEPRECATED=y
903CONFIG_ENABLE_MUST_CHECK=y 911CONFIG_ENABLE_MUST_CHECK=y
912CONFIG_FRAME_WARN=1024
904CONFIG_MAGIC_SYSRQ=y 913CONFIG_MAGIC_SYSRQ=y
905# CONFIG_UNUSED_SYMBOLS is not set 914# CONFIG_UNUSED_SYMBOLS is not set
906# CONFIG_DEBUG_FS is not set 915# CONFIG_DEBUG_FS is not set
@@ -920,53 +929,82 @@ CONFIG_ASYNC_CORE=m
920CONFIG_ASYNC_MEMCPY=m 929CONFIG_ASYNC_MEMCPY=m
921CONFIG_ASYNC_XOR=m 930CONFIG_ASYNC_XOR=m
922CONFIG_CRYPTO=y 931CONFIG_CRYPTO=y
932
933#
934# Crypto core or helper
935#
923CONFIG_CRYPTO_ALGAPI=y 936CONFIG_CRYPTO_ALGAPI=y
924CONFIG_CRYPTO_AEAD=m 937CONFIG_CRYPTO_AEAD=m
925CONFIG_CRYPTO_BLKCIPHER=y 938CONFIG_CRYPTO_BLKCIPHER=y
926CONFIG_CRYPTO_SEQIV=m
927CONFIG_CRYPTO_HASH=y 939CONFIG_CRYPTO_HASH=y
928CONFIG_CRYPTO_MANAGER=y 940CONFIG_CRYPTO_MANAGER=y
941CONFIG_CRYPTO_GF128MUL=m
942CONFIG_CRYPTO_NULL=m
943CONFIG_CRYPTO_CRYPTD=m
944CONFIG_CRYPTO_AUTHENC=m
945CONFIG_CRYPTO_TEST=m
946
947#
948# Authenticated Encryption with Associated Data
949#
950CONFIG_CRYPTO_CCM=m
951CONFIG_CRYPTO_GCM=m
952CONFIG_CRYPTO_SEQIV=m
953
954#
955# Block modes
956#
957CONFIG_CRYPTO_CBC=y
958CONFIG_CRYPTO_CTR=m
959CONFIG_CRYPTO_CTS=m
960CONFIG_CRYPTO_ECB=m
961CONFIG_CRYPTO_LRW=m
962CONFIG_CRYPTO_PCBC=m
963CONFIG_CRYPTO_XTS=m
964
965#
966# Hash modes
967#
929CONFIG_CRYPTO_HMAC=y 968CONFIG_CRYPTO_HMAC=y
930CONFIG_CRYPTO_XCBC=m 969CONFIG_CRYPTO_XCBC=m
931CONFIG_CRYPTO_NULL=m 970
971#
972# Digest
973#
974CONFIG_CRYPTO_CRC32C=m
932CONFIG_CRYPTO_MD4=m 975CONFIG_CRYPTO_MD4=m
933CONFIG_CRYPTO_MD5=y 976CONFIG_CRYPTO_MD5=y
977CONFIG_CRYPTO_MICHAEL_MIC=m
934CONFIG_CRYPTO_SHA1=m 978CONFIG_CRYPTO_SHA1=m
935CONFIG_CRYPTO_SHA256=m 979CONFIG_CRYPTO_SHA256=m
936CONFIG_CRYPTO_SHA512=m 980CONFIG_CRYPTO_SHA512=m
937CONFIG_CRYPTO_WP512=m
938CONFIG_CRYPTO_TGR192=m 981CONFIG_CRYPTO_TGR192=m
939CONFIG_CRYPTO_GF128MUL=m 982CONFIG_CRYPTO_WP512=m
940CONFIG_CRYPTO_ECB=m 983
941CONFIG_CRYPTO_CBC=y 984#
942CONFIG_CRYPTO_PCBC=m 985# Ciphers
943CONFIG_CRYPTO_LRW=m 986#
944CONFIG_CRYPTO_XTS=m
945CONFIG_CRYPTO_CTR=m
946CONFIG_CRYPTO_GCM=m
947CONFIG_CRYPTO_CCM=m
948CONFIG_CRYPTO_CRYPTD=m
949CONFIG_CRYPTO_DES=y
950CONFIG_CRYPTO_FCRYPT=m
951CONFIG_CRYPTO_BLOWFISH=m
952CONFIG_CRYPTO_TWOFISH=m
953CONFIG_CRYPTO_TWOFISH_COMMON=m
954CONFIG_CRYPTO_SERPENT=m
955CONFIG_CRYPTO_AES=m 987CONFIG_CRYPTO_AES=m
988CONFIG_CRYPTO_ANUBIS=m
989CONFIG_CRYPTO_ARC4=m
990CONFIG_CRYPTO_BLOWFISH=m
991CONFIG_CRYPTO_CAMELLIA=m
956CONFIG_CRYPTO_CAST5=m 992CONFIG_CRYPTO_CAST5=m
957CONFIG_CRYPTO_CAST6=m 993CONFIG_CRYPTO_CAST6=m
958CONFIG_CRYPTO_TEA=m 994CONFIG_CRYPTO_DES=y
959CONFIG_CRYPTO_ARC4=m 995CONFIG_CRYPTO_FCRYPT=m
960CONFIG_CRYPTO_KHAZAD=m 996CONFIG_CRYPTO_KHAZAD=m
961CONFIG_CRYPTO_ANUBIS=m
962CONFIG_CRYPTO_SEED=m
963CONFIG_CRYPTO_SALSA20=m 997CONFIG_CRYPTO_SALSA20=m
998CONFIG_CRYPTO_SEED=m
999CONFIG_CRYPTO_SERPENT=m
1000CONFIG_CRYPTO_TEA=m
1001CONFIG_CRYPTO_TWOFISH=m
1002CONFIG_CRYPTO_TWOFISH_COMMON=m
1003
1004#
1005# Compression
1006#
964CONFIG_CRYPTO_DEFLATE=m 1007CONFIG_CRYPTO_DEFLATE=m
965CONFIG_CRYPTO_MICHAEL_MIC=m
966CONFIG_CRYPTO_CRC32C=m
967CONFIG_CRYPTO_CAMELLIA=m
968CONFIG_CRYPTO_TEST=m
969CONFIG_CRYPTO_AUTHENC=m
970CONFIG_CRYPTO_LZO=m 1008CONFIG_CRYPTO_LZO=m
971# CONFIG_CRYPTO_HW is not set 1009# CONFIG_CRYPTO_HW is not set
972 1010
@@ -974,9 +1012,11 @@ CONFIG_CRYPTO_LZO=m
974# Library routines 1012# Library routines
975# 1013#
976CONFIG_BITREVERSE=y 1014CONFIG_BITREVERSE=y
1015# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1016# CONFIG_GENERIC_FIND_NEXT_BIT is not set
977CONFIG_CRC_CCITT=m 1017CONFIG_CRC_CCITT=m
978CONFIG_CRC16=m 1018CONFIG_CRC16=m
979# CONFIG_CRC_ITU_T is not set 1019CONFIG_CRC_ITU_T=m
980CONFIG_CRC32=y 1020CONFIG_CRC32=y
981# CONFIG_CRC7 is not set 1021# CONFIG_CRC7 is not set
982CONFIG_LIBCRC32C=m 1022CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/q40_defconfig b/arch/m68k/configs/q40_defconfig
index 165658fe73eb..e05be687b500 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:20 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -12,7 +12,6 @@ CONFIG_GENERIC_HWEIGHT=y
12CONFIG_GENERIC_CALIBRATE_DELAY=y 12CONFIG_GENERIC_CALIBRATE_DELAY=y
13CONFIG_TIME_LOW_RES=y 13CONFIG_TIME_LOW_RES=y
14CONFIG_GENERIC_IOMAP=y 14CONFIG_GENERIC_IOMAP=y
15CONFIG_ARCH_MAY_HAVE_PC_FDC=y
16CONFIG_NO_IOPORT=y 15CONFIG_NO_IOPORT=y
17# CONFIG_NO_DMA is not set 16# CONFIG_NO_DMA is not set
18CONFIG_ARCH_SUPPORTS_AOUT=y 17CONFIG_ARCH_SUPPORTS_AOUT=y
@@ -53,13 +52,14 @@ CONFIG_SYSCTL=y
53# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
54CONFIG_UID16=y 53CONFIG_UID16=y
55CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
56CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
57# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
58CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
59CONFIG_PRINTK=y 59CONFIG_PRINTK=y
60CONFIG_BUG=y 60CONFIG_BUG=y
61CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
62# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
63CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
64CONFIG_FUTEX=y 64CONFIG_FUTEX=y
65CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -77,12 +77,14 @@ CONFIG_SLAB=y
77# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
78# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
79# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
80CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
81CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
82CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
83# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
84CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
85CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
86CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
87# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
88# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -142,6 +144,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
142CONFIG_NEED_MULTIPLE_NODES=y 144CONFIG_NEED_MULTIPLE_NODES=y
143# CONFIG_SPARSEMEM_STATIC is not set 145# CONFIG_SPARSEMEM_STATIC is not set
144# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 146# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
147CONFIG_PAGEFLAGS_EXTENDED=y
145CONFIG_SPLIT_PTLOCK_CPUS=4 148CONFIG_SPLIT_PTLOCK_CPUS=4
146# CONFIG_RESOURCES_64BIT is not set 149# CONFIG_RESOURCES_64BIT is not set
147CONFIG_ZONE_DMA_FLAG=1 150CONFIG_ZONE_DMA_FLAG=1
@@ -220,8 +223,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
220CONFIG_INET6_XFRM_MODE_BEET=m 223CONFIG_INET6_XFRM_MODE_BEET=m
221CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 224CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
222CONFIG_IPV6_SIT=m 225CONFIG_IPV6_SIT=m
226CONFIG_IPV6_NDISC_NODETYPE=y
223CONFIG_IPV6_TUNNEL=m 227CONFIG_IPV6_TUNNEL=m
224# CONFIG_IPV6_MULTIPLE_TABLES is not set 228# CONFIG_IPV6_MULTIPLE_TABLES is not set
229# CONFIG_IPV6_MROUTE is not set
225# CONFIG_NETWORK_SECMARK is not set 230# CONFIG_NETWORK_SECMARK is not set
226CONFIG_NETFILTER=y 231CONFIG_NETFILTER=y
227# CONFIG_NETFILTER_DEBUG is not set 232# CONFIG_NETFILTER_DEBUG is not set
@@ -237,6 +242,7 @@ CONFIG_NF_CONNTRACK=m
237CONFIG_NF_CT_ACCT=y 242CONFIG_NF_CT_ACCT=y
238CONFIG_NF_CONNTRACK_MARK=y 243CONFIG_NF_CONNTRACK_MARK=y
239# CONFIG_NF_CONNTRACK_EVENTS is not set 244# CONFIG_NF_CONNTRACK_EVENTS is not set
245# CONFIG_NF_CT_PROTO_DCCP is not set
240CONFIG_NF_CT_PROTO_GRE=m 246CONFIG_NF_CT_PROTO_GRE=m
241CONFIG_NF_CT_PROTO_SCTP=m 247CONFIG_NF_CT_PROTO_SCTP=m
242CONFIG_NF_CT_PROTO_UDPLITE=m 248CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -315,6 +321,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
315CONFIG_IP_NF_TARGET_NETMAP=m 321CONFIG_IP_NF_TARGET_NETMAP=m
316CONFIG_NF_NAT_SNMP_BASIC=m 322CONFIG_NF_NAT_SNMP_BASIC=m
317CONFIG_NF_NAT_PROTO_GRE=m 323CONFIG_NF_NAT_PROTO_GRE=m
324CONFIG_NF_NAT_PROTO_UDPLITE=m
325CONFIG_NF_NAT_PROTO_SCTP=m
318CONFIG_NF_NAT_FTP=m 326CONFIG_NF_NAT_FTP=m
319CONFIG_NF_NAT_IRC=m 327CONFIG_NF_NAT_IRC=m
320CONFIG_NF_NAT_TFTP=m 328CONFIG_NF_NAT_TFTP=m
@@ -408,8 +416,6 @@ CONFIG_IEEE80211=m
408CONFIG_IEEE80211_CRYPT_WEP=m 416CONFIG_IEEE80211_CRYPT_WEP=m
409CONFIG_IEEE80211_CRYPT_CCMP=m 417CONFIG_IEEE80211_CRYPT_CCMP=m
410CONFIG_IEEE80211_CRYPT_TKIP=m 418CONFIG_IEEE80211_CRYPT_TKIP=m
411CONFIG_IEEE80211_SOFTMAC=m
412# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
413# CONFIG_RFKILL is not set 419# CONFIG_RFKILL is not set
414# CONFIG_NET_9P is not set 420# CONFIG_NET_9P is not set
415 421
@@ -430,7 +436,6 @@ CONFIG_CONNECTOR=m
430# CONFIG_PARPORT is not set 436# CONFIG_PARPORT is not set
431# CONFIG_PNP is not set 437# CONFIG_PNP is not set
432CONFIG_BLK_DEV=y 438CONFIG_BLK_DEV=y
433# CONFIG_BLK_DEV_FD is not set
434# CONFIG_BLK_DEV_COW_COMMON is not set 439# CONFIG_BLK_DEV_COW_COMMON is not set
435CONFIG_BLK_DEV_LOOP=y 440CONFIG_BLK_DEV_LOOP=y
436CONFIG_BLK_DEV_CRYPTOLOOP=m 441CONFIG_BLK_DEV_CRYPTOLOOP=m
@@ -467,25 +472,10 @@ CONFIG_IDE_PROC_FS=y
467# 472#
468# IDE chipset support/bugfixes 473# IDE chipset support/bugfixes
469# 474#
470# CONFIG_IDE_GENERIC is not set
471# CONFIG_BLK_DEV_PLATFORM is not set 475# CONFIG_BLK_DEV_PLATFORM is not set
472CONFIG_BLK_DEV_Q40IDE=y 476CONFIG_BLK_DEV_Q40IDE=y
473
474#
475# Other IDE chipsets support
476#
477
478#
479# Note: most of these also require special kernel boot parameters
480#
481# CONFIG_BLK_DEV_4DRIVES is not set
482# CONFIG_BLK_DEV_ALI14XX is not set
483# CONFIG_BLK_DEV_DTC2278 is not set
484# CONFIG_BLK_DEV_HT6560B is not set
485# CONFIG_BLK_DEV_QD65XX is not set
486# CONFIG_BLK_DEV_UMC8672 is not set
487# CONFIG_BLK_DEV_IDEDMA is not set 477# CONFIG_BLK_DEV_IDEDMA is not set
488# CONFIG_IDE_ARCH_OBSOLETE_INIT is not set 478# CONFIG_BLK_DEV_HD_ONLY is not set
489# CONFIG_BLK_DEV_HD is not set 479# CONFIG_BLK_DEV_HD is not set
490 480
491# 481#
@@ -603,6 +593,7 @@ CONFIG_NE2000=m
603# 593#
604# CONFIG_WLAN_PRE80211 is not set 594# CONFIG_WLAN_PRE80211 is not set
605# CONFIG_WLAN_80211 is not set 595# CONFIG_WLAN_80211 is not set
596# CONFIG_IWLWIFI_LEDS is not set
606# CONFIG_WAN is not set 597# CONFIG_WAN is not set
607CONFIG_PPP=m 598CONFIG_PPP=m
608# CONFIG_PPP_MULTILINK is not set 599# CONFIG_PPP_MULTILINK is not set
@@ -692,6 +683,7 @@ CONFIG_VT=y
692CONFIG_VT_CONSOLE=y 683CONFIG_VT_CONSOLE=y
693CONFIG_HW_CONSOLE=y 684CONFIG_HW_CONSOLE=y
694CONFIG_VT_HW_CONSOLE_BINDING=y 685CONFIG_VT_HW_CONSOLE_BINDING=y
686# CONFIG_DEVKMEM is not set
695# CONFIG_SERIAL_NONSTANDARD is not set 687# CONFIG_SERIAL_NONSTANDARD is not set
696 688
697# 689#
@@ -714,12 +706,7 @@ CONFIG_GEN_RTC_X=y
714# CONFIG_RAW_DRIVER is not set 706# CONFIG_RAW_DRIVER is not set
715# CONFIG_TCG_TPM is not set 707# CONFIG_TCG_TPM is not set
716# CONFIG_I2C is not set 708# CONFIG_I2C is not set
717
718#
719# SPI support
720#
721# CONFIG_SPI is not set 709# CONFIG_SPI is not set
722# CONFIG_SPI_MASTER is not set
723# CONFIG_W1 is not set 710# CONFIG_W1 is not set
724# CONFIG_POWER_SUPPLY is not set 711# CONFIG_POWER_SUPPLY is not set
725# CONFIG_HWMON is not set 712# CONFIG_HWMON is not set
@@ -736,12 +723,22 @@ CONFIG_SSB_POSSIBLE=y
736# Multifunction device drivers 723# Multifunction device drivers
737# 724#
738# CONFIG_MFD_SM501 is not set 725# CONFIG_MFD_SM501 is not set
726# CONFIG_HTC_PASIC3 is not set
739 727
740# 728#
741# Multimedia devices 729# Multimedia devices
742# 730#
731
732#
733# Multimedia core support
734#
743# CONFIG_VIDEO_DEV is not set 735# CONFIG_VIDEO_DEV is not set
744# CONFIG_DVB_CORE is not set 736# CONFIG_DVB_CORE is not set
737# CONFIG_VIDEO_MEDIA is not set
738
739#
740# Multimedia drivers
741#
745# CONFIG_DAB is not set 742# CONFIG_DAB is not set
746 743
747# 744#
@@ -759,8 +756,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
759# CONFIG_FB_SYS_FILLRECT is not set 756# CONFIG_FB_SYS_FILLRECT is not set
760# CONFIG_FB_SYS_COPYAREA is not set 757# CONFIG_FB_SYS_COPYAREA is not set
761# CONFIG_FB_SYS_IMAGEBLIT is not set 758# CONFIG_FB_SYS_IMAGEBLIT is not set
759# CONFIG_FB_FOREIGN_ENDIAN is not set
762# CONFIG_FB_SYS_FOPS is not set 760# CONFIG_FB_SYS_FOPS is not set
763CONFIG_FB_DEFERRED_IO=y
764# CONFIG_FB_SVGALIB is not set 761# CONFIG_FB_SVGALIB is not set
765# CONFIG_FB_MACMODES is not set 762# CONFIG_FB_MACMODES is not set
766# CONFIG_FB_BACKLIGHT is not set 763# CONFIG_FB_BACKLIGHT is not set
@@ -810,11 +807,8 @@ CONFIG_HIDRAW=y
810# CONFIG_MMC is not set 807# CONFIG_MMC is not set
811# CONFIG_MEMSTICK is not set 808# CONFIG_MEMSTICK is not set
812# CONFIG_NEW_LEDS is not set 809# CONFIG_NEW_LEDS is not set
810# CONFIG_ACCESSIBILITY is not set
813# CONFIG_RTC_CLASS is not set 811# CONFIG_RTC_CLASS is not set
814
815#
816# Userspace I/O
817#
818# CONFIG_UIO is not set 812# CONFIG_UIO is not set
819 813
820# 814#
@@ -840,16 +834,15 @@ CONFIG_JFS_FS=m
840# CONFIG_JFS_SECURITY is not set 834# CONFIG_JFS_SECURITY is not set
841# CONFIG_JFS_DEBUG is not set 835# CONFIG_JFS_DEBUG is not set
842# CONFIG_JFS_STATISTICS is not set 836# CONFIG_JFS_STATISTICS is not set
843CONFIG_FS_POSIX_ACL=y 837# CONFIG_FS_POSIX_ACL is not set
844CONFIG_XFS_FS=m 838CONFIG_XFS_FS=m
845# CONFIG_XFS_QUOTA is not set 839# CONFIG_XFS_QUOTA is not set
846# CONFIG_XFS_SECURITY is not set
847# CONFIG_XFS_POSIX_ACL is not set 840# CONFIG_XFS_POSIX_ACL is not set
848# CONFIG_XFS_RT is not set 841# CONFIG_XFS_RT is not set
849CONFIG_GFS2_FS=m 842# CONFIG_XFS_DEBUG is not set
850CONFIG_GFS2_FS_LOCKING_NOLOCK=m
851CONFIG_GFS2_FS_LOCKING_DLM=m
852CONFIG_OCFS2_FS=m 843CONFIG_OCFS2_FS=m
844CONFIG_OCFS2_FS_O2CB=m
845CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
853# CONFIG_OCFS2_DEBUG_MASKLOG is not set 846# CONFIG_OCFS2_DEBUG_MASKLOG is not set
854# CONFIG_OCFS2_DEBUG_FS is not set 847# CONFIG_OCFS2_DEBUG_FS is not set
855CONFIG_DNOTIFY=y 848CONFIG_DNOTIFY=y
@@ -921,12 +914,10 @@ CONFIG_NFS_FS=y
921CONFIG_NFS_V3=y 914CONFIG_NFS_V3=y
922# CONFIG_NFS_V3_ACL is not set 915# CONFIG_NFS_V3_ACL is not set
923CONFIG_NFS_V4=y 916CONFIG_NFS_V4=y
924# CONFIG_NFS_DIRECTIO is not set
925CONFIG_NFSD=m 917CONFIG_NFSD=m
926CONFIG_NFSD_V3=y 918CONFIG_NFSD_V3=y
927# CONFIG_NFSD_V3_ACL is not set 919# CONFIG_NFSD_V3_ACL is not set
928# CONFIG_NFSD_V4 is not set 920# CONFIG_NFSD_V4 is not set
929CONFIG_NFSD_TCP=y
930CONFIG_LOCKD=y 921CONFIG_LOCKD=y
931CONFIG_LOCKD_V4=y 922CONFIG_LOCKD_V4=y
932CONFIG_EXPORTFS=m 923CONFIG_EXPORTFS=m
@@ -999,6 +990,7 @@ CONFIG_DLM=m
999# CONFIG_PRINTK_TIME is not set 990# CONFIG_PRINTK_TIME is not set
1000CONFIG_ENABLE_WARN_DEPRECATED=y 991CONFIG_ENABLE_WARN_DEPRECATED=y
1001CONFIG_ENABLE_MUST_CHECK=y 992CONFIG_ENABLE_MUST_CHECK=y
993CONFIG_FRAME_WARN=1024
1002CONFIG_MAGIC_SYSRQ=y 994CONFIG_MAGIC_SYSRQ=y
1003# CONFIG_UNUSED_SYMBOLS is not set 995# CONFIG_UNUSED_SYMBOLS is not set
1004# CONFIG_DEBUG_FS is not set 996# CONFIG_DEBUG_FS is not set
@@ -1018,53 +1010,82 @@ CONFIG_ASYNC_CORE=m
1018CONFIG_ASYNC_MEMCPY=m 1010CONFIG_ASYNC_MEMCPY=m
1019CONFIG_ASYNC_XOR=m 1011CONFIG_ASYNC_XOR=m
1020CONFIG_CRYPTO=y 1012CONFIG_CRYPTO=y
1013
1014#
1015# Crypto core or helper
1016#
1021CONFIG_CRYPTO_ALGAPI=y 1017CONFIG_CRYPTO_ALGAPI=y
1022CONFIG_CRYPTO_AEAD=m 1018CONFIG_CRYPTO_AEAD=m
1023CONFIG_CRYPTO_BLKCIPHER=y 1019CONFIG_CRYPTO_BLKCIPHER=y
1024CONFIG_CRYPTO_SEQIV=m
1025CONFIG_CRYPTO_HASH=y 1020CONFIG_CRYPTO_HASH=y
1026CONFIG_CRYPTO_MANAGER=y 1021CONFIG_CRYPTO_MANAGER=y
1022CONFIG_CRYPTO_GF128MUL=m
1023CONFIG_CRYPTO_NULL=m
1024CONFIG_CRYPTO_CRYPTD=m
1025CONFIG_CRYPTO_AUTHENC=m
1026CONFIG_CRYPTO_TEST=m
1027
1028#
1029# Authenticated Encryption with Associated Data
1030#
1031CONFIG_CRYPTO_CCM=m
1032CONFIG_CRYPTO_GCM=m
1033CONFIG_CRYPTO_SEQIV=m
1034
1035#
1036# Block modes
1037#
1038CONFIG_CRYPTO_CBC=y
1039CONFIG_CRYPTO_CTR=m
1040CONFIG_CRYPTO_CTS=m
1041CONFIG_CRYPTO_ECB=m
1042CONFIG_CRYPTO_LRW=m
1043CONFIG_CRYPTO_PCBC=m
1044CONFIG_CRYPTO_XTS=m
1045
1046#
1047# Hash modes
1048#
1027CONFIG_CRYPTO_HMAC=y 1049CONFIG_CRYPTO_HMAC=y
1028CONFIG_CRYPTO_XCBC=m 1050CONFIG_CRYPTO_XCBC=m
1029CONFIG_CRYPTO_NULL=m 1051
1052#
1053# Digest
1054#
1055CONFIG_CRYPTO_CRC32C=m
1030CONFIG_CRYPTO_MD4=m 1056CONFIG_CRYPTO_MD4=m
1031CONFIG_CRYPTO_MD5=y 1057CONFIG_CRYPTO_MD5=y
1058CONFIG_CRYPTO_MICHAEL_MIC=m
1032CONFIG_CRYPTO_SHA1=m 1059CONFIG_CRYPTO_SHA1=m
1033CONFIG_CRYPTO_SHA256=m 1060CONFIG_CRYPTO_SHA256=m
1034CONFIG_CRYPTO_SHA512=m 1061CONFIG_CRYPTO_SHA512=m
1035CONFIG_CRYPTO_WP512=m
1036CONFIG_CRYPTO_TGR192=m 1062CONFIG_CRYPTO_TGR192=m
1037CONFIG_CRYPTO_GF128MUL=m 1063CONFIG_CRYPTO_WP512=m
1038CONFIG_CRYPTO_ECB=m 1064
1039CONFIG_CRYPTO_CBC=y 1065#
1040CONFIG_CRYPTO_PCBC=m 1066# Ciphers
1041CONFIG_CRYPTO_LRW=m 1067#
1042CONFIG_CRYPTO_XTS=m
1043CONFIG_CRYPTO_CTR=m
1044CONFIG_CRYPTO_GCM=m
1045CONFIG_CRYPTO_CCM=m
1046CONFIG_CRYPTO_CRYPTD=m
1047CONFIG_CRYPTO_DES=y
1048CONFIG_CRYPTO_FCRYPT=m
1049CONFIG_CRYPTO_BLOWFISH=m
1050CONFIG_CRYPTO_TWOFISH=m
1051CONFIG_CRYPTO_TWOFISH_COMMON=m
1052CONFIG_CRYPTO_SERPENT=m
1053CONFIG_CRYPTO_AES=m 1068CONFIG_CRYPTO_AES=m
1069CONFIG_CRYPTO_ANUBIS=m
1070CONFIG_CRYPTO_ARC4=m
1071CONFIG_CRYPTO_BLOWFISH=m
1072CONFIG_CRYPTO_CAMELLIA=m
1054CONFIG_CRYPTO_CAST5=m 1073CONFIG_CRYPTO_CAST5=m
1055CONFIG_CRYPTO_CAST6=m 1074CONFIG_CRYPTO_CAST6=m
1056CONFIG_CRYPTO_TEA=m 1075CONFIG_CRYPTO_DES=y
1057CONFIG_CRYPTO_ARC4=m 1076CONFIG_CRYPTO_FCRYPT=m
1058CONFIG_CRYPTO_KHAZAD=m 1077CONFIG_CRYPTO_KHAZAD=m
1059CONFIG_CRYPTO_ANUBIS=m
1060CONFIG_CRYPTO_SEED=m
1061CONFIG_CRYPTO_SALSA20=m 1078CONFIG_CRYPTO_SALSA20=m
1079CONFIG_CRYPTO_SEED=m
1080CONFIG_CRYPTO_SERPENT=m
1081CONFIG_CRYPTO_TEA=m
1082CONFIG_CRYPTO_TWOFISH=m
1083CONFIG_CRYPTO_TWOFISH_COMMON=m
1084
1085#
1086# Compression
1087#
1062CONFIG_CRYPTO_DEFLATE=m 1088CONFIG_CRYPTO_DEFLATE=m
1063CONFIG_CRYPTO_MICHAEL_MIC=m
1064CONFIG_CRYPTO_CRC32C=m
1065CONFIG_CRYPTO_CAMELLIA=m
1066CONFIG_CRYPTO_TEST=m
1067CONFIG_CRYPTO_AUTHENC=m
1068CONFIG_CRYPTO_LZO=m 1089CONFIG_CRYPTO_LZO=m
1069# CONFIG_CRYPTO_HW is not set 1090# CONFIG_CRYPTO_HW is not set
1070 1091
@@ -1072,9 +1093,11 @@ CONFIG_CRYPTO_LZO=m
1072# Library routines 1093# Library routines
1073# 1094#
1074CONFIG_BITREVERSE=y 1095CONFIG_BITREVERSE=y
1096# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1097# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1075CONFIG_CRC_CCITT=m 1098CONFIG_CRC_CCITT=m
1076CONFIG_CRC16=m 1099CONFIG_CRC16=m
1077# CONFIG_CRC_ITU_T is not set 1100CONFIG_CRC_ITU_T=m
1078CONFIG_CRC32=y 1101CONFIG_CRC32=y
1079# CONFIG_CRC7 is not set 1102# CONFIG_CRC7 is not set
1080CONFIG_LIBCRC32C=m 1103CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/sun3_defconfig b/arch/m68k/configs/sun3_defconfig
index bd2b9c4927c4..296340d2b315 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:22 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -130,6 +133,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
130CONFIG_NEED_MULTIPLE_NODES=y 133CONFIG_NEED_MULTIPLE_NODES=y
131# CONFIG_SPARSEMEM_STATIC is not set 134# CONFIG_SPARSEMEM_STATIC is not set
132# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 135# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
136CONFIG_PAGEFLAGS_EXTENDED=y
133CONFIG_SPLIT_PTLOCK_CPUS=4 137CONFIG_SPLIT_PTLOCK_CPUS=4
134# CONFIG_RESOURCES_64BIT is not set 138# CONFIG_RESOURCES_64BIT is not set
135CONFIG_ZONE_DMA_FLAG=1 139CONFIG_ZONE_DMA_FLAG=1
@@ -208,8 +212,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
208CONFIG_INET6_XFRM_MODE_BEET=m 212CONFIG_INET6_XFRM_MODE_BEET=m
209CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 213CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
210CONFIG_IPV6_SIT=m 214CONFIG_IPV6_SIT=m
215CONFIG_IPV6_NDISC_NODETYPE=y
211CONFIG_IPV6_TUNNEL=m 216CONFIG_IPV6_TUNNEL=m
212# CONFIG_IPV6_MULTIPLE_TABLES is not set 217# CONFIG_IPV6_MULTIPLE_TABLES is not set
218# CONFIG_IPV6_MROUTE is not set
213# CONFIG_NETWORK_SECMARK is not set 219# CONFIG_NETWORK_SECMARK is not set
214CONFIG_NETFILTER=y 220CONFIG_NETFILTER=y
215# CONFIG_NETFILTER_DEBUG is not set 221# CONFIG_NETFILTER_DEBUG is not set
@@ -225,6 +231,7 @@ CONFIG_NF_CONNTRACK=m
225CONFIG_NF_CT_ACCT=y 231CONFIG_NF_CT_ACCT=y
226CONFIG_NF_CONNTRACK_MARK=y 232CONFIG_NF_CONNTRACK_MARK=y
227# CONFIG_NF_CONNTRACK_EVENTS is not set 233# CONFIG_NF_CONNTRACK_EVENTS is not set
234# CONFIG_NF_CT_PROTO_DCCP is not set
228CONFIG_NF_CT_PROTO_GRE=m 235CONFIG_NF_CT_PROTO_GRE=m
229CONFIG_NF_CT_PROTO_SCTP=m 236CONFIG_NF_CT_PROTO_SCTP=m
230CONFIG_NF_CT_PROTO_UDPLITE=m 237CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -303,6 +310,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
303CONFIG_IP_NF_TARGET_NETMAP=m 310CONFIG_IP_NF_TARGET_NETMAP=m
304CONFIG_NF_NAT_SNMP_BASIC=m 311CONFIG_NF_NAT_SNMP_BASIC=m
305CONFIG_NF_NAT_PROTO_GRE=m 312CONFIG_NF_NAT_PROTO_GRE=m
313CONFIG_NF_NAT_PROTO_UDPLITE=m
314CONFIG_NF_NAT_PROTO_SCTP=m
306CONFIG_NF_NAT_FTP=m 315CONFIG_NF_NAT_FTP=m
307CONFIG_NF_NAT_IRC=m 316CONFIG_NF_NAT_IRC=m
308CONFIG_NF_NAT_TFTP=m 317CONFIG_NF_NAT_TFTP=m
@@ -396,8 +405,6 @@ CONFIG_IEEE80211=m
396CONFIG_IEEE80211_CRYPT_WEP=m 405CONFIG_IEEE80211_CRYPT_WEP=m
397CONFIG_IEEE80211_CRYPT_CCMP=m 406CONFIG_IEEE80211_CRYPT_CCMP=m
398CONFIG_IEEE80211_CRYPT_TKIP=m 407CONFIG_IEEE80211_CRYPT_TKIP=m
399CONFIG_IEEE80211_SOFTMAC=m
400# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
401# CONFIG_RFKILL is not set 408# CONFIG_RFKILL is not set
402# CONFIG_NET_9P is not set 409# CONFIG_NET_9P is not set
403 410
@@ -529,6 +536,7 @@ CONFIG_SUN3_82586=y
529# 536#
530# CONFIG_WLAN_PRE80211 is not set 537# CONFIG_WLAN_PRE80211 is not set
531# CONFIG_WLAN_80211 is not set 538# CONFIG_WLAN_80211 is not set
539# CONFIG_IWLWIFI_LEDS is not set
532# CONFIG_WAN is not set 540# CONFIG_WAN is not set
533CONFIG_PPP=m 541CONFIG_PPP=m
534# CONFIG_PPP_MULTILINK is not set 542# CONFIG_PPP_MULTILINK is not set
@@ -612,6 +620,7 @@ CONFIG_VT=y
612CONFIG_VT_CONSOLE=y 620CONFIG_VT_CONSOLE=y
613CONFIG_HW_CONSOLE=y 621CONFIG_HW_CONSOLE=y
614CONFIG_VT_HW_CONSOLE_BINDING=y 622CONFIG_VT_HW_CONSOLE_BINDING=y
623# CONFIG_DEVKMEM is not set
615# CONFIG_SERIAL_NONSTANDARD is not set 624# CONFIG_SERIAL_NONSTANDARD is not set
616 625
617# 626#
@@ -633,12 +642,7 @@ CONFIG_GEN_RTC_X=y
633# CONFIG_RAW_DRIVER is not set 642# CONFIG_RAW_DRIVER is not set
634# CONFIG_TCG_TPM is not set 643# CONFIG_TCG_TPM is not set
635# CONFIG_I2C is not set 644# CONFIG_I2C is not set
636
637#
638# SPI support
639#
640# CONFIG_SPI is not set 645# CONFIG_SPI is not set
641# CONFIG_SPI_MASTER is not set
642# CONFIG_W1 is not set 646# CONFIG_W1 is not set
643# CONFIG_POWER_SUPPLY is not set 647# CONFIG_POWER_SUPPLY is not set
644# CONFIG_HWMON is not set 648# CONFIG_HWMON is not set
@@ -655,12 +659,22 @@ CONFIG_SSB_POSSIBLE=y
655# Multifunction device drivers 659# Multifunction device drivers
656# 660#
657# CONFIG_MFD_SM501 is not set 661# CONFIG_MFD_SM501 is not set
662# CONFIG_HTC_PASIC3 is not set
658 663
659# 664#
660# Multimedia devices 665# Multimedia devices
661# 666#
667
668#
669# Multimedia core support
670#
662# CONFIG_VIDEO_DEV is not set 671# CONFIG_VIDEO_DEV is not set
663# CONFIG_DVB_CORE is not set 672# CONFIG_DVB_CORE is not set
673# CONFIG_VIDEO_MEDIA is not set
674
675#
676# Multimedia drivers
677#
664# CONFIG_DAB is not set 678# CONFIG_DAB is not set
665 679
666# 680#
@@ -678,8 +692,8 @@ CONFIG_FB=y
678# CONFIG_FB_SYS_FILLRECT is not set 692# CONFIG_FB_SYS_FILLRECT is not set
679# CONFIG_FB_SYS_COPYAREA is not set 693# CONFIG_FB_SYS_COPYAREA is not set
680# CONFIG_FB_SYS_IMAGEBLIT is not set 694# CONFIG_FB_SYS_IMAGEBLIT is not set
695# CONFIG_FB_FOREIGN_ENDIAN is not set
681# CONFIG_FB_SYS_FOPS is not set 696# CONFIG_FB_SYS_FOPS is not set
682CONFIG_FB_DEFERRED_IO=y
683# CONFIG_FB_SVGALIB is not set 697# CONFIG_FB_SVGALIB is not set
684# CONFIG_FB_MACMODES is not set 698# CONFIG_FB_MACMODES is not set
685# CONFIG_FB_BACKLIGHT is not set 699# CONFIG_FB_BACKLIGHT is not set
@@ -726,11 +740,8 @@ CONFIG_HIDRAW=y
726# CONFIG_MMC is not set 740# CONFIG_MMC is not set
727# CONFIG_MEMSTICK is not set 741# CONFIG_MEMSTICK is not set
728# CONFIG_NEW_LEDS is not set 742# CONFIG_NEW_LEDS is not set
743# CONFIG_ACCESSIBILITY is not set
729# CONFIG_RTC_CLASS is not set 744# CONFIG_RTC_CLASS is not set
730
731#
732# Userspace I/O
733#
734# CONFIG_UIO is not set 745# CONFIG_UIO is not set
735 746
736# 747#
@@ -756,16 +767,15 @@ CONFIG_JFS_FS=m
756# CONFIG_JFS_SECURITY is not set 767# CONFIG_JFS_SECURITY is not set
757# CONFIG_JFS_DEBUG is not set 768# CONFIG_JFS_DEBUG is not set
758# CONFIG_JFS_STATISTICS is not set 769# CONFIG_JFS_STATISTICS is not set
759CONFIG_FS_POSIX_ACL=y 770# CONFIG_FS_POSIX_ACL is not set
760CONFIG_XFS_FS=m 771CONFIG_XFS_FS=m
761# CONFIG_XFS_QUOTA is not set 772# CONFIG_XFS_QUOTA is not set
762# CONFIG_XFS_SECURITY is not set
763# CONFIG_XFS_POSIX_ACL is not set 773# CONFIG_XFS_POSIX_ACL is not set
764# CONFIG_XFS_RT is not set 774# CONFIG_XFS_RT is not set
765CONFIG_GFS2_FS=m 775# CONFIG_XFS_DEBUG is not set
766CONFIG_GFS2_FS_LOCKING_NOLOCK=m
767CONFIG_GFS2_FS_LOCKING_DLM=m
768CONFIG_OCFS2_FS=m 776CONFIG_OCFS2_FS=m
777CONFIG_OCFS2_FS_O2CB=m
778CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
769# CONFIG_OCFS2_DEBUG_MASKLOG is not set 779# CONFIG_OCFS2_DEBUG_MASKLOG is not set
770# CONFIG_OCFS2_DEBUG_FS is not set 780# CONFIG_OCFS2_DEBUG_FS is not set
771CONFIG_DNOTIFY=y 781CONFIG_DNOTIFY=y
@@ -837,12 +847,10 @@ CONFIG_NFS_FS=y
837CONFIG_NFS_V3=y 847CONFIG_NFS_V3=y
838# CONFIG_NFS_V3_ACL is not set 848# CONFIG_NFS_V3_ACL is not set
839CONFIG_NFS_V4=y 849CONFIG_NFS_V4=y
840# CONFIG_NFS_DIRECTIO is not set
841CONFIG_NFSD=m 850CONFIG_NFSD=m
842CONFIG_NFSD_V3=y 851CONFIG_NFSD_V3=y
843# CONFIG_NFSD_V3_ACL is not set 852# CONFIG_NFSD_V3_ACL is not set
844# CONFIG_NFSD_V4 is not set 853# CONFIG_NFSD_V4 is not set
845CONFIG_NFSD_TCP=y
846CONFIG_ROOT_NFS=y 854CONFIG_ROOT_NFS=y
847CONFIG_LOCKD=y 855CONFIG_LOCKD=y
848CONFIG_LOCKD_V4=y 856CONFIG_LOCKD_V4=y
@@ -917,6 +925,7 @@ CONFIG_DLM=m
917# CONFIG_PRINTK_TIME is not set 925# CONFIG_PRINTK_TIME is not set
918CONFIG_ENABLE_WARN_DEPRECATED=y 926CONFIG_ENABLE_WARN_DEPRECATED=y
919CONFIG_ENABLE_MUST_CHECK=y 927CONFIG_ENABLE_MUST_CHECK=y
928CONFIG_FRAME_WARN=1024
920CONFIG_MAGIC_SYSRQ=y 929CONFIG_MAGIC_SYSRQ=y
921# CONFIG_UNUSED_SYMBOLS is not set 930# CONFIG_UNUSED_SYMBOLS is not set
922# CONFIG_DEBUG_FS is not set 931# CONFIG_DEBUG_FS is not set
@@ -936,53 +945,82 @@ CONFIG_ASYNC_CORE=m
936CONFIG_ASYNC_MEMCPY=m 945CONFIG_ASYNC_MEMCPY=m
937CONFIG_ASYNC_XOR=m 946CONFIG_ASYNC_XOR=m
938CONFIG_CRYPTO=y 947CONFIG_CRYPTO=y
948
949#
950# Crypto core or helper
951#
939CONFIG_CRYPTO_ALGAPI=y 952CONFIG_CRYPTO_ALGAPI=y
940CONFIG_CRYPTO_AEAD=m 953CONFIG_CRYPTO_AEAD=m
941CONFIG_CRYPTO_BLKCIPHER=y 954CONFIG_CRYPTO_BLKCIPHER=y
942CONFIG_CRYPTO_SEQIV=m
943CONFIG_CRYPTO_HASH=y 955CONFIG_CRYPTO_HASH=y
944CONFIG_CRYPTO_MANAGER=y 956CONFIG_CRYPTO_MANAGER=y
957CONFIG_CRYPTO_GF128MUL=m
958CONFIG_CRYPTO_NULL=m
959CONFIG_CRYPTO_CRYPTD=m
960CONFIG_CRYPTO_AUTHENC=m
961CONFIG_CRYPTO_TEST=m
962
963#
964# Authenticated Encryption with Associated Data
965#
966CONFIG_CRYPTO_CCM=m
967CONFIG_CRYPTO_GCM=m
968CONFIG_CRYPTO_SEQIV=m
969
970#
971# Block modes
972#
973CONFIG_CRYPTO_CBC=y
974CONFIG_CRYPTO_CTR=m
975CONFIG_CRYPTO_CTS=m
976CONFIG_CRYPTO_ECB=m
977CONFIG_CRYPTO_LRW=m
978CONFIG_CRYPTO_PCBC=m
979CONFIG_CRYPTO_XTS=m
980
981#
982# Hash modes
983#
945CONFIG_CRYPTO_HMAC=y 984CONFIG_CRYPTO_HMAC=y
946CONFIG_CRYPTO_XCBC=m 985CONFIG_CRYPTO_XCBC=m
947CONFIG_CRYPTO_NULL=m 986
987#
988# Digest
989#
990CONFIG_CRYPTO_CRC32C=m
948CONFIG_CRYPTO_MD4=m 991CONFIG_CRYPTO_MD4=m
949CONFIG_CRYPTO_MD5=y 992CONFIG_CRYPTO_MD5=y
993CONFIG_CRYPTO_MICHAEL_MIC=m
950CONFIG_CRYPTO_SHA1=m 994CONFIG_CRYPTO_SHA1=m
951CONFIG_CRYPTO_SHA256=m 995CONFIG_CRYPTO_SHA256=m
952CONFIG_CRYPTO_SHA512=m 996CONFIG_CRYPTO_SHA512=m
953CONFIG_CRYPTO_WP512=m
954CONFIG_CRYPTO_TGR192=m 997CONFIG_CRYPTO_TGR192=m
955CONFIG_CRYPTO_GF128MUL=m 998CONFIG_CRYPTO_WP512=m
956CONFIG_CRYPTO_ECB=m 999
957CONFIG_CRYPTO_CBC=y 1000#
958CONFIG_CRYPTO_PCBC=m 1001# Ciphers
959CONFIG_CRYPTO_LRW=m 1002#
960CONFIG_CRYPTO_XTS=m
961CONFIG_CRYPTO_CTR=m
962CONFIG_CRYPTO_GCM=m
963CONFIG_CRYPTO_CCM=m
964CONFIG_CRYPTO_CRYPTD=m
965CONFIG_CRYPTO_DES=y
966CONFIG_CRYPTO_FCRYPT=m
967CONFIG_CRYPTO_BLOWFISH=m
968CONFIG_CRYPTO_TWOFISH=m
969CONFIG_CRYPTO_TWOFISH_COMMON=m
970CONFIG_CRYPTO_SERPENT=m
971CONFIG_CRYPTO_AES=m 1003CONFIG_CRYPTO_AES=m
1004CONFIG_CRYPTO_ANUBIS=m
1005CONFIG_CRYPTO_ARC4=m
1006CONFIG_CRYPTO_BLOWFISH=m
1007CONFIG_CRYPTO_CAMELLIA=m
972CONFIG_CRYPTO_CAST5=m 1008CONFIG_CRYPTO_CAST5=m
973CONFIG_CRYPTO_CAST6=m 1009CONFIG_CRYPTO_CAST6=m
974CONFIG_CRYPTO_TEA=m 1010CONFIG_CRYPTO_DES=y
975CONFIG_CRYPTO_ARC4=m 1011CONFIG_CRYPTO_FCRYPT=m
976CONFIG_CRYPTO_KHAZAD=m 1012CONFIG_CRYPTO_KHAZAD=m
977CONFIG_CRYPTO_ANUBIS=m
978CONFIG_CRYPTO_SEED=m
979CONFIG_CRYPTO_SALSA20=m 1013CONFIG_CRYPTO_SALSA20=m
1014CONFIG_CRYPTO_SEED=m
1015CONFIG_CRYPTO_SERPENT=m
1016CONFIG_CRYPTO_TEA=m
1017CONFIG_CRYPTO_TWOFISH=m
1018CONFIG_CRYPTO_TWOFISH_COMMON=m
1019
1020#
1021# Compression
1022#
980CONFIG_CRYPTO_DEFLATE=m 1023CONFIG_CRYPTO_DEFLATE=m
981CONFIG_CRYPTO_MICHAEL_MIC=m
982CONFIG_CRYPTO_CRC32C=m
983CONFIG_CRYPTO_CAMELLIA=m
984CONFIG_CRYPTO_TEST=m
985CONFIG_CRYPTO_AUTHENC=m
986CONFIG_CRYPTO_LZO=m 1024CONFIG_CRYPTO_LZO=m
987# CONFIG_CRYPTO_HW is not set 1025# CONFIG_CRYPTO_HW is not set
988 1026
@@ -990,9 +1028,11 @@ CONFIG_CRYPTO_LZO=m
990# Library routines 1028# Library routines
991# 1029#
992CONFIG_BITREVERSE=y 1030CONFIG_BITREVERSE=y
1031# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1032# CONFIG_GENERIC_FIND_NEXT_BIT is not set
993CONFIG_CRC_CCITT=m 1033CONFIG_CRC_CCITT=m
994CONFIG_CRC16=m 1034CONFIG_CRC16=m
995# CONFIG_CRC_ITU_T is not set 1035CONFIG_CRC_ITU_T=m
996CONFIG_CRC32=y 1036CONFIG_CRC32=y
997# CONFIG_CRC7 is not set 1037# CONFIG_CRC7 is not set
998CONFIG_LIBCRC32C=m 1038CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/configs/sun3x_defconfig b/arch/m68k/configs/sun3x_defconfig
index f18154f1ef1f..8d3a416c92bf 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.25-rc8 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 2 20:46:23 2008 4# Wed May 28 22:47:35 2008
5# 5#
6CONFIG_M68K=y 6CONFIG_M68K=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -52,13 +52,14 @@ CONFIG_SYSCTL=y
52# CONFIG_EMBEDDED is not set 52# CONFIG_EMBEDDED is not set
53CONFIG_UID16=y 53CONFIG_UID16=y
54CONFIG_SYSCTL_SYSCALL=y 54CONFIG_SYSCTL_SYSCALL=y
55CONFIG_SYSCTL_SYSCALL_CHECK=y
55CONFIG_KALLSYMS=y 56CONFIG_KALLSYMS=y
56# CONFIG_KALLSYMS_EXTRA_PASS is not set 57# CONFIG_KALLSYMS_EXTRA_PASS is not set
57CONFIG_HOTPLUG=y 58CONFIG_HOTPLUG=y
58CONFIG_PRINTK=y 59CONFIG_PRINTK=y
59CONFIG_BUG=y 60CONFIG_BUG=y
60CONFIG_ELF_CORE=y 61CONFIG_ELF_CORE=y
61# CONFIG_COMPAT_BRK is not set 62CONFIG_COMPAT_BRK=y
62CONFIG_BASE_FULL=y 63CONFIG_BASE_FULL=y
63CONFIG_FUTEX=y 64CONFIG_FUTEX=y
64CONFIG_ANON_INODES=y 65CONFIG_ANON_INODES=y
@@ -76,12 +77,14 @@ CONFIG_SLAB=y
76# CONFIG_HAVE_OPROFILE is not set 77# CONFIG_HAVE_OPROFILE is not set
77# CONFIG_HAVE_KPROBES is not set 78# CONFIG_HAVE_KPROBES is not set
78# CONFIG_HAVE_KRETPROBES is not set 79# CONFIG_HAVE_KRETPROBES is not set
80# CONFIG_HAVE_DMA_ATTRS is not set
79CONFIG_PROC_PAGE_MONITOR=y 81CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 82CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 83CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 84# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 85CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 86CONFIG_MODULES=y
87# CONFIG_MODULE_FORCE_LOAD is not set
85CONFIG_MODULE_UNLOAD=y 88CONFIG_MODULE_UNLOAD=y
86# CONFIG_MODULE_FORCE_UNLOAD is not set 89# CONFIG_MODULE_FORCE_UNLOAD is not set
87# CONFIG_MODVERSIONS is not set 90# CONFIG_MODVERSIONS is not set
@@ -141,6 +144,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
141CONFIG_NEED_MULTIPLE_NODES=y 144CONFIG_NEED_MULTIPLE_NODES=y
142# CONFIG_SPARSEMEM_STATIC is not set 145# CONFIG_SPARSEMEM_STATIC is not set
143# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 146# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
147CONFIG_PAGEFLAGS_EXTENDED=y
144CONFIG_SPLIT_PTLOCK_CPUS=4 148CONFIG_SPLIT_PTLOCK_CPUS=4
145# CONFIG_RESOURCES_64BIT is not set 149# CONFIG_RESOURCES_64BIT is not set
146CONFIG_ZONE_DMA_FLAG=1 150CONFIG_ZONE_DMA_FLAG=1
@@ -219,8 +223,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m
219CONFIG_INET6_XFRM_MODE_BEET=m 223CONFIG_INET6_XFRM_MODE_BEET=m
220CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m 224CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
221CONFIG_IPV6_SIT=m 225CONFIG_IPV6_SIT=m
226CONFIG_IPV6_NDISC_NODETYPE=y
222CONFIG_IPV6_TUNNEL=m 227CONFIG_IPV6_TUNNEL=m
223# CONFIG_IPV6_MULTIPLE_TABLES is not set 228# CONFIG_IPV6_MULTIPLE_TABLES is not set
229# CONFIG_IPV6_MROUTE is not set
224# CONFIG_NETWORK_SECMARK is not set 230# CONFIG_NETWORK_SECMARK is not set
225CONFIG_NETFILTER=y 231CONFIG_NETFILTER=y
226# CONFIG_NETFILTER_DEBUG is not set 232# CONFIG_NETFILTER_DEBUG is not set
@@ -236,6 +242,7 @@ CONFIG_NF_CONNTRACK=m
236CONFIG_NF_CT_ACCT=y 242CONFIG_NF_CT_ACCT=y
237CONFIG_NF_CONNTRACK_MARK=y 243CONFIG_NF_CONNTRACK_MARK=y
238# CONFIG_NF_CONNTRACK_EVENTS is not set 244# CONFIG_NF_CONNTRACK_EVENTS is not set
245# CONFIG_NF_CT_PROTO_DCCP is not set
239CONFIG_NF_CT_PROTO_GRE=m 246CONFIG_NF_CT_PROTO_GRE=m
240CONFIG_NF_CT_PROTO_SCTP=m 247CONFIG_NF_CT_PROTO_SCTP=m
241CONFIG_NF_CT_PROTO_UDPLITE=m 248CONFIG_NF_CT_PROTO_UDPLITE=m
@@ -314,6 +321,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
314CONFIG_IP_NF_TARGET_NETMAP=m 321CONFIG_IP_NF_TARGET_NETMAP=m
315CONFIG_NF_NAT_SNMP_BASIC=m 322CONFIG_NF_NAT_SNMP_BASIC=m
316CONFIG_NF_NAT_PROTO_GRE=m 323CONFIG_NF_NAT_PROTO_GRE=m
324CONFIG_NF_NAT_PROTO_UDPLITE=m
325CONFIG_NF_NAT_PROTO_SCTP=m
317CONFIG_NF_NAT_FTP=m 326CONFIG_NF_NAT_FTP=m
318CONFIG_NF_NAT_IRC=m 327CONFIG_NF_NAT_IRC=m
319CONFIG_NF_NAT_TFTP=m 328CONFIG_NF_NAT_TFTP=m
@@ -407,8 +416,6 @@ CONFIG_IEEE80211=m
407CONFIG_IEEE80211_CRYPT_WEP=m 416CONFIG_IEEE80211_CRYPT_WEP=m
408CONFIG_IEEE80211_CRYPT_CCMP=m 417CONFIG_IEEE80211_CRYPT_CCMP=m
409CONFIG_IEEE80211_CRYPT_TKIP=m 418CONFIG_IEEE80211_CRYPT_TKIP=m
410CONFIG_IEEE80211_SOFTMAC=m
411# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
412# CONFIG_RFKILL is not set 419# CONFIG_RFKILL is not set
413# CONFIG_NET_9P is not set 420# CONFIG_NET_9P is not set
414 421
@@ -539,6 +546,7 @@ CONFIG_SUN3LANCE=y
539# 546#
540# CONFIG_WLAN_PRE80211 is not set 547# CONFIG_WLAN_PRE80211 is not set
541# CONFIG_WLAN_80211 is not set 548# CONFIG_WLAN_80211 is not set
549# CONFIG_IWLWIFI_LEDS is not set
542# CONFIG_WAN is not set 550# CONFIG_WAN is not set
543CONFIG_PPP=m 551CONFIG_PPP=m
544# CONFIG_PPP_MULTILINK is not set 552# CONFIG_PPP_MULTILINK is not set
@@ -622,6 +630,7 @@ CONFIG_VT=y
622CONFIG_VT_CONSOLE=y 630CONFIG_VT_CONSOLE=y
623CONFIG_HW_CONSOLE=y 631CONFIG_HW_CONSOLE=y
624CONFIG_VT_HW_CONSOLE_BINDING=y 632CONFIG_VT_HW_CONSOLE_BINDING=y
633# CONFIG_DEVKMEM is not set
625# CONFIG_SERIAL_NONSTANDARD is not set 634# CONFIG_SERIAL_NONSTANDARD is not set
626 635
627# 636#
@@ -643,12 +652,7 @@ CONFIG_GEN_RTC_X=y
643# CONFIG_RAW_DRIVER is not set 652# CONFIG_RAW_DRIVER is not set
644# CONFIG_TCG_TPM is not set 653# CONFIG_TCG_TPM is not set
645# CONFIG_I2C is not set 654# CONFIG_I2C is not set
646
647#
648# SPI support
649#
650# CONFIG_SPI is not set 655# CONFIG_SPI is not set
651# CONFIG_SPI_MASTER is not set
652# CONFIG_W1 is not set 656# CONFIG_W1 is not set
653# CONFIG_POWER_SUPPLY is not set 657# CONFIG_POWER_SUPPLY is not set
654# CONFIG_HWMON is not set 658# CONFIG_HWMON is not set
@@ -665,12 +669,22 @@ CONFIG_SSB_POSSIBLE=y
665# Multifunction device drivers 669# Multifunction device drivers
666# 670#
667# CONFIG_MFD_SM501 is not set 671# CONFIG_MFD_SM501 is not set
672# CONFIG_HTC_PASIC3 is not set
668 673
669# 674#
670# Multimedia devices 675# Multimedia devices
671# 676#
677
678#
679# Multimedia core support
680#
672# CONFIG_VIDEO_DEV is not set 681# CONFIG_VIDEO_DEV is not set
673# CONFIG_DVB_CORE is not set 682# CONFIG_DVB_CORE is not set
683# CONFIG_VIDEO_MEDIA is not set
684
685#
686# Multimedia drivers
687#
674# CONFIG_DAB is not set 688# CONFIG_DAB is not set
675 689
676# 690#
@@ -688,8 +702,8 @@ CONFIG_FB=y
688# CONFIG_FB_SYS_FILLRECT is not set 702# CONFIG_FB_SYS_FILLRECT is not set
689# CONFIG_FB_SYS_COPYAREA is not set 703# CONFIG_FB_SYS_COPYAREA is not set
690# CONFIG_FB_SYS_IMAGEBLIT is not set 704# CONFIG_FB_SYS_IMAGEBLIT is not set
705# CONFIG_FB_FOREIGN_ENDIAN is not set
691# CONFIG_FB_SYS_FOPS is not set 706# CONFIG_FB_SYS_FOPS is not set
692CONFIG_FB_DEFERRED_IO=y
693# CONFIG_FB_SVGALIB is not set 707# CONFIG_FB_SVGALIB is not set
694# CONFIG_FB_MACMODES is not set 708# CONFIG_FB_MACMODES is not set
695# CONFIG_FB_BACKLIGHT is not set 709# CONFIG_FB_BACKLIGHT is not set
@@ -736,11 +750,8 @@ CONFIG_HIDRAW=y
736# CONFIG_MMC is not set 750# CONFIG_MMC is not set
737# CONFIG_MEMSTICK is not set 751# CONFIG_MEMSTICK is not set
738# CONFIG_NEW_LEDS is not set 752# CONFIG_NEW_LEDS is not set
753# CONFIG_ACCESSIBILITY is not set
739# CONFIG_RTC_CLASS is not set 754# CONFIG_RTC_CLASS is not set
740
741#
742# Userspace I/O
743#
744# CONFIG_UIO is not set 755# CONFIG_UIO is not set
745 756
746# 757#
@@ -766,16 +777,15 @@ CONFIG_JFS_FS=m
766# CONFIG_JFS_SECURITY is not set 777# CONFIG_JFS_SECURITY is not set
767# CONFIG_JFS_DEBUG is not set 778# CONFIG_JFS_DEBUG is not set
768# CONFIG_JFS_STATISTICS is not set 779# CONFIG_JFS_STATISTICS is not set
769CONFIG_FS_POSIX_ACL=y 780# CONFIG_FS_POSIX_ACL is not set
770CONFIG_XFS_FS=m 781CONFIG_XFS_FS=m
771# CONFIG_XFS_QUOTA is not set 782# CONFIG_XFS_QUOTA is not set
772# CONFIG_XFS_SECURITY is not set
773# CONFIG_XFS_POSIX_ACL is not set 783# CONFIG_XFS_POSIX_ACL is not set
774# CONFIG_XFS_RT is not set 784# CONFIG_XFS_RT is not set
775CONFIG_GFS2_FS=m 785# CONFIG_XFS_DEBUG is not set
776CONFIG_GFS2_FS_LOCKING_NOLOCK=m
777CONFIG_GFS2_FS_LOCKING_DLM=m
778CONFIG_OCFS2_FS=m 786CONFIG_OCFS2_FS=m
787CONFIG_OCFS2_FS_O2CB=m
788CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
779# CONFIG_OCFS2_DEBUG_MASKLOG is not set 789# CONFIG_OCFS2_DEBUG_MASKLOG is not set
780# CONFIG_OCFS2_DEBUG_FS is not set 790# CONFIG_OCFS2_DEBUG_FS is not set
781CONFIG_DNOTIFY=y 791CONFIG_DNOTIFY=y
@@ -847,12 +857,10 @@ CONFIG_NFS_FS=y
847CONFIG_NFS_V3=y 857CONFIG_NFS_V3=y
848# CONFIG_NFS_V3_ACL is not set 858# CONFIG_NFS_V3_ACL is not set
849CONFIG_NFS_V4=y 859CONFIG_NFS_V4=y
850# CONFIG_NFS_DIRECTIO is not set
851CONFIG_NFSD=m 860CONFIG_NFSD=m
852CONFIG_NFSD_V3=y 861CONFIG_NFSD_V3=y
853# CONFIG_NFSD_V3_ACL is not set 862# CONFIG_NFSD_V3_ACL is not set
854# CONFIG_NFSD_V4 is not set 863# CONFIG_NFSD_V4 is not set
855CONFIG_NFSD_TCP=y
856CONFIG_ROOT_NFS=y 864CONFIG_ROOT_NFS=y
857CONFIG_LOCKD=y 865CONFIG_LOCKD=y
858CONFIG_LOCKD_V4=y 866CONFIG_LOCKD_V4=y
@@ -927,6 +935,7 @@ CONFIG_DLM=m
927# CONFIG_PRINTK_TIME is not set 935# CONFIG_PRINTK_TIME is not set
928CONFIG_ENABLE_WARN_DEPRECATED=y 936CONFIG_ENABLE_WARN_DEPRECATED=y
929CONFIG_ENABLE_MUST_CHECK=y 937CONFIG_ENABLE_MUST_CHECK=y
938CONFIG_FRAME_WARN=1024
930CONFIG_MAGIC_SYSRQ=y 939CONFIG_MAGIC_SYSRQ=y
931# CONFIG_UNUSED_SYMBOLS is not set 940# CONFIG_UNUSED_SYMBOLS is not set
932# CONFIG_DEBUG_FS is not set 941# CONFIG_DEBUG_FS is not set
@@ -946,53 +955,82 @@ CONFIG_ASYNC_CORE=m
946CONFIG_ASYNC_MEMCPY=m 955CONFIG_ASYNC_MEMCPY=m
947CONFIG_ASYNC_XOR=m 956CONFIG_ASYNC_XOR=m
948CONFIG_CRYPTO=y 957CONFIG_CRYPTO=y
958
959#
960# Crypto core or helper
961#
949CONFIG_CRYPTO_ALGAPI=y 962CONFIG_CRYPTO_ALGAPI=y
950CONFIG_CRYPTO_AEAD=m 963CONFIG_CRYPTO_AEAD=m
951CONFIG_CRYPTO_BLKCIPHER=y 964CONFIG_CRYPTO_BLKCIPHER=y
952CONFIG_CRYPTO_SEQIV=m
953CONFIG_CRYPTO_HASH=y 965CONFIG_CRYPTO_HASH=y
954CONFIG_CRYPTO_MANAGER=y 966CONFIG_CRYPTO_MANAGER=y
967CONFIG_CRYPTO_GF128MUL=m
968CONFIG_CRYPTO_NULL=m
969CONFIG_CRYPTO_CRYPTD=m
970CONFIG_CRYPTO_AUTHENC=m
971CONFIG_CRYPTO_TEST=m
972
973#
974# Authenticated Encryption with Associated Data
975#
976CONFIG_CRYPTO_CCM=m
977CONFIG_CRYPTO_GCM=m
978CONFIG_CRYPTO_SEQIV=m
979
980#
981# Block modes
982#
983CONFIG_CRYPTO_CBC=y
984CONFIG_CRYPTO_CTR=m
985CONFIG_CRYPTO_CTS=m
986CONFIG_CRYPTO_ECB=m
987CONFIG_CRYPTO_LRW=m
988CONFIG_CRYPTO_PCBC=m
989CONFIG_CRYPTO_XTS=m
990
991#
992# Hash modes
993#
955CONFIG_CRYPTO_HMAC=y 994CONFIG_CRYPTO_HMAC=y
956CONFIG_CRYPTO_XCBC=m 995CONFIG_CRYPTO_XCBC=m
957CONFIG_CRYPTO_NULL=m 996
997#
998# Digest
999#
1000CONFIG_CRYPTO_CRC32C=m
958CONFIG_CRYPTO_MD4=m 1001CONFIG_CRYPTO_MD4=m
959CONFIG_CRYPTO_MD5=y 1002CONFIG_CRYPTO_MD5=y
1003CONFIG_CRYPTO_MICHAEL_MIC=m
960CONFIG_CRYPTO_SHA1=m 1004CONFIG_CRYPTO_SHA1=m
961CONFIG_CRYPTO_SHA256=m 1005CONFIG_CRYPTO_SHA256=m
962CONFIG_CRYPTO_SHA512=m 1006CONFIG_CRYPTO_SHA512=m
963CONFIG_CRYPTO_WP512=m
964CONFIG_CRYPTO_TGR192=m 1007CONFIG_CRYPTO_TGR192=m
965CONFIG_CRYPTO_GF128MUL=m 1008CONFIG_CRYPTO_WP512=m
966CONFIG_CRYPTO_ECB=m 1009
967CONFIG_CRYPTO_CBC=y 1010#
968CONFIG_CRYPTO_PCBC=m 1011# Ciphers
969CONFIG_CRYPTO_LRW=m 1012#
970CONFIG_CRYPTO_XTS=m
971CONFIG_CRYPTO_CTR=m
972CONFIG_CRYPTO_GCM=m
973CONFIG_CRYPTO_CCM=m
974CONFIG_CRYPTO_CRYPTD=m
975CONFIG_CRYPTO_DES=y
976CONFIG_CRYPTO_FCRYPT=m
977CONFIG_CRYPTO_BLOWFISH=m
978CONFIG_CRYPTO_TWOFISH=m
979CONFIG_CRYPTO_TWOFISH_COMMON=m
980CONFIG_CRYPTO_SERPENT=m
981CONFIG_CRYPTO_AES=m 1013CONFIG_CRYPTO_AES=m
1014CONFIG_CRYPTO_ANUBIS=m
1015CONFIG_CRYPTO_ARC4=m
1016CONFIG_CRYPTO_BLOWFISH=m
1017CONFIG_CRYPTO_CAMELLIA=m
982CONFIG_CRYPTO_CAST5=m 1018CONFIG_CRYPTO_CAST5=m
983CONFIG_CRYPTO_CAST6=m 1019CONFIG_CRYPTO_CAST6=m
984CONFIG_CRYPTO_TEA=m 1020CONFIG_CRYPTO_DES=y
985CONFIG_CRYPTO_ARC4=m 1021CONFIG_CRYPTO_FCRYPT=m
986CONFIG_CRYPTO_KHAZAD=m 1022CONFIG_CRYPTO_KHAZAD=m
987CONFIG_CRYPTO_ANUBIS=m
988CONFIG_CRYPTO_SEED=m
989CONFIG_CRYPTO_SALSA20=m 1023CONFIG_CRYPTO_SALSA20=m
1024CONFIG_CRYPTO_SEED=m
1025CONFIG_CRYPTO_SERPENT=m
1026CONFIG_CRYPTO_TEA=m
1027CONFIG_CRYPTO_TWOFISH=m
1028CONFIG_CRYPTO_TWOFISH_COMMON=m
1029
1030#
1031# Compression
1032#
990CONFIG_CRYPTO_DEFLATE=m 1033CONFIG_CRYPTO_DEFLATE=m
991CONFIG_CRYPTO_MICHAEL_MIC=m
992CONFIG_CRYPTO_CRC32C=m
993CONFIG_CRYPTO_CAMELLIA=m
994CONFIG_CRYPTO_TEST=m
995CONFIG_CRYPTO_AUTHENC=m
996CONFIG_CRYPTO_LZO=m 1034CONFIG_CRYPTO_LZO=m
997# CONFIG_CRYPTO_HW is not set 1035# CONFIG_CRYPTO_HW is not set
998 1036
@@ -1000,9 +1038,11 @@ CONFIG_CRYPTO_LZO=m
1000# Library routines 1038# Library routines
1001# 1039#
1002CONFIG_BITREVERSE=y 1040CONFIG_BITREVERSE=y
1041# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1042# CONFIG_GENERIC_FIND_NEXT_BIT is not set
1003CONFIG_CRC_CCITT=m 1043CONFIG_CRC_CCITT=m
1004CONFIG_CRC16=m 1044CONFIG_CRC16=m
1005# CONFIG_CRC_ITU_T is not set 1045CONFIG_CRC_ITU_T=m
1006CONFIG_CRC32=y 1046CONFIG_CRC32=y
1007# CONFIG_CRC7 is not set 1047# CONFIG_CRC7 is not set
1008CONFIG_LIBCRC32C=m 1048CONFIG_LIBCRC32C=m
diff --git a/arch/m68k/kernel/head.S b/arch/m68k/kernel/head.S
index faa6764f1d13..f513f530de91 100644
--- a/arch/m68k/kernel/head.S
+++ b/arch/m68k/kernel/head.S
@@ -1434,7 +1434,7 @@ L(mmu_fixup_done):
1434#endif 1434#endif
1435 1435
1436#ifdef CONFIG_HP300 1436#ifdef CONFIG_HP300
1437 is_not_hp300(1f) 1437 is_not_hp300(2f)
1438 /* 1438 /*
1439 * Fix up the iobase register to point to the new location of the LEDs. 1439 * Fix up the iobase register to point to the new location of the LEDs.
1440 */ 1440 */
diff --git a/arch/m68k/kernel/process.c b/arch/m68k/kernel/process.c
index 5de4e4ed76ab..7888cdf91f5d 100644
--- a/arch/m68k/kernel/process.c
+++ b/arch/m68k/kernel/process.c
@@ -41,7 +41,6 @@
41 * setup. 41 * setup.
42 */ 42 */
43static struct fs_struct init_fs = INIT_FS; 43static struct fs_struct init_fs = INIT_FS;
44static struct files_struct init_files = INIT_FILES;
45static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 44static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
46static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 45static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
47struct mm_struct init_mm = INIT_MM(init_mm); 46struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/m68k/kernel/setup.c b/arch/m68k/kernel/setup.c
index bba650312fd9..a9fb83a8c180 100644
--- a/arch/m68k/kernel/setup.c
+++ b/arch/m68k/kernel/setup.c
@@ -41,11 +41,12 @@
41#endif 41#endif
42 42
43unsigned long m68k_machtype; 43unsigned long m68k_machtype;
44unsigned long m68k_cputype;
45EXPORT_SYMBOL(m68k_machtype); 44EXPORT_SYMBOL(m68k_machtype);
45unsigned long m68k_cputype;
46EXPORT_SYMBOL(m68k_cputype); 46EXPORT_SYMBOL(m68k_cputype);
47unsigned long m68k_fputype; 47unsigned long m68k_fputype;
48unsigned long m68k_mmutype; 48unsigned long m68k_mmutype;
49EXPORT_SYMBOL(m68k_mmutype);
49#ifdef CONFIG_VME 50#ifdef CONFIG_VME
50unsigned long vme_brdtype; 51unsigned long vme_brdtype;
51EXPORT_SYMBOL(vme_brdtype); 52EXPORT_SYMBOL(vme_brdtype);
@@ -345,19 +346,19 @@ void __init setup_arch(char **cmdline_p)
345 346
346/* set ISA defs early as possible */ 347/* set ISA defs early as possible */
347#if defined(CONFIG_ISA) && defined(MULTI_ISA) 348#if defined(CONFIG_ISA) && defined(MULTI_ISA)
348#if defined(CONFIG_Q40)
349 if (MACH_IS_Q40) { 349 if (MACH_IS_Q40) {
350 isa_type = Q40_ISA; 350 isa_type = ISA_TYPE_Q40;
351 isa_sex = 0; 351 isa_sex = 0;
352 } 352 }
353#elif defined(CONFIG_GG2) 353#ifdef CONFIG_GG2
354 if (MACH_IS_AMIGA && AMIGAHW_PRESENT(GG2_ISA)) { 354 if (MACH_IS_AMIGA && AMIGAHW_PRESENT(GG2_ISA)) {
355 isa_type = GG2_ISA; 355 isa_type = ISA_TYPE_GG2;
356 isa_sex = 0; 356 isa_sex = 0;
357 } 357 }
358#elif defined(CONFIG_AMIGA_PCMCIA) 358#endif
359#ifdef CONFIG_AMIGA_PCMCIA
359 if (MACH_IS_AMIGA && AMIGAHW_PRESENT(PCMCIA)) { 360 if (MACH_IS_AMIGA && AMIGAHW_PRESENT(PCMCIA)) {
360 isa_type = AG_ISA; 361 isa_type = ISA_TYPE_AG;
361 isa_sex = 1; 362 isa_sex = 1;
362 } 363 }
363#endif 364#endif
diff --git a/arch/m68k/lib/string.c b/arch/m68k/lib/string.c
index 891e1347bc4e..4253f870e54f 100644
--- a/arch/m68k/lib/string.c
+++ b/arch/m68k/lib/string.c
@@ -15,6 +15,12 @@ char *strcpy(char *dest, const char *src)
15} 15}
16EXPORT_SYMBOL(strcpy); 16EXPORT_SYMBOL(strcpy);
17 17
18char *strcat(char *dest, const char *src)
19{
20 return __kernel_strcpy(dest + __kernel_strlen(dest), src);
21}
22EXPORT_SYMBOL(strcat);
23
18void *memset(void *s, int c, size_t count) 24void *memset(void *s, int c, size_t count)
19{ 25{
20 void *xs = s; 26 void *xs = s;
diff --git a/arch/m68knommu/Kconfig b/arch/m68knommu/Kconfig
index 07eb4c4bab82..8e8441587c22 100644
--- a/arch/m68knommu/Kconfig
+++ b/arch/m68knommu/Kconfig
@@ -671,6 +671,9 @@ config ROMKERNEL
671 671
672endchoice 672endchoice
673 673
674if COLDFIRE
675source "kernel/Kconfig.preempt"
676endif
674source "mm/Kconfig" 677source "mm/Kconfig"
675 678
676endmenu 679endmenu
diff --git a/arch/m68knommu/kernel/init_task.c b/arch/m68knommu/kernel/init_task.c
index 3897043a126a..344c01aede08 100644
--- a/arch/m68knommu/kernel/init_task.c
+++ b/arch/m68knommu/kernel/init_task.c
@@ -13,7 +13,6 @@
13#include <asm/pgtable.h> 13#include <asm/pgtable.h>
14 14
15static struct fs_struct init_fs = INIT_FS; 15static struct fs_struct init_fs = INIT_FS;
16static struct files_struct init_files = INIT_FILES;
17static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 16static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
18static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 17static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
19struct mm_struct init_mm = INIT_MM(init_mm); 18struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/m68knommu/kernel/vmlinux.lds.S b/arch/m68knommu/kernel/vmlinux.lds.S
index 5592e0bf951f..93e69236ed6f 100644
--- a/arch/m68knommu/kernel/vmlinux.lds.S
+++ b/arch/m68knommu/kernel/vmlinux.lds.S
@@ -114,6 +114,16 @@ SECTIONS {
114 *(__kcrctab_gpl) 114 *(__kcrctab_gpl)
115 __stop___kcrctab_gpl = .; 115 __stop___kcrctab_gpl = .;
116 116
117 /* Kernel symbol table: Normal unused symbols */
118 __start___kcrctab_unused = .;
119 *(__kcrctab_unused)
120 __stop___kcrctab_unused = .;
121
122 /* Kernel symbol table: GPL-only unused symbols */
123 __start___kcrctab_unused_gpl = .;
124 *(__kcrctab_unused_gpl)
125 __stop___kcrctab_unused_gpl = .;
126
117 /* Kernel symbol table: GPL-future symbols */ 127 /* Kernel symbol table: GPL-future symbols */
118 __start___kcrctab_gpl_future = .; 128 __start___kcrctab_gpl_future = .;
119 *(__kcrctab_gpl_future) 129 *(__kcrctab_gpl_future)
diff --git a/arch/m68knommu/platform/coldfire/timers.c b/arch/m68knommu/platform/coldfire/timers.c
index ba5a9f32ebd4..454f25493491 100644
--- a/arch/m68knommu/platform/coldfire/timers.c
+++ b/arch/m68knommu/platform/coldfire/timers.c
@@ -111,7 +111,13 @@ void hw_timer_init(void)
111 111
112 __raw_writew(MCFTIMER_TMR_DISABLE, TA(MCFTIMER_TMR)); 112 __raw_writew(MCFTIMER_TMR_DISABLE, TA(MCFTIMER_TMR));
113 mcftmr_cycles_per_jiffy = FREQ / HZ; 113 mcftmr_cycles_per_jiffy = FREQ / HZ;
114 __raw_writetrr(mcftmr_cycles_per_jiffy, TA(MCFTIMER_TRR)); 114 /*
115 * The coldfire timer runs from 0 to TRR included, then 0
116 * again and so on. It counts thus actually TRR + 1 steps
117 * for 1 tick, not TRR. So if you want n cycles,
118 * initialize TRR with n - 1.
119 */
120 __raw_writetrr(mcftmr_cycles_per_jiffy - 1, TA(MCFTIMER_TRR));
115 __raw_writew(MCFTIMER_TMR_ENORI | MCFTIMER_TMR_CLK16 | 121 __raw_writew(MCFTIMER_TMR_ENORI | MCFTIMER_TMR_CLK16 |
116 MCFTIMER_TMR_RESTART | MCFTIMER_TMR_ENABLE, TA(MCFTIMER_TMR)); 122 MCFTIMER_TMR_RESTART | MCFTIMER_TMR_ENABLE, TA(MCFTIMER_TMR));
117 123
diff --git a/arch/mips/au1000/common/Makefile b/arch/mips/au1000/common/Makefile
index 90e2d7a46e8e..dd0e19dacfcf 100644
--- a/arch/mips/au1000/common/Makefile
+++ b/arch/mips/au1000/common/Makefile
@@ -1,9 +1,8 @@
1# 1#
2# Copyright 2000 MontaVista Software Inc. 2# Copyright 2000, 2008 MontaVista Software Inc.
3# Author: MontaVista Software, Inc. 3# Author: MontaVista Software, Inc. <source@mvista.com>
4# ppopov@mvista.com or source@mvista.com
5# 4#
6# Makefile for the Alchemy Au1000 CPU, generic files. 5# Makefile for the Alchemy Au1xx0 CPUs, generic files.
7# 6#
8 7
9obj-y += prom.o irq.o puts.o time.o reset.o \ 8obj-y += prom.o irq.o puts.o time.o reset.o \
diff --git a/arch/mips/au1000/common/au1xxx_irqmap.c b/arch/mips/au1000/common/au1xxx_irqmap.c
index 37a10a01de9d..c7ca1596394c 100644
--- a/arch/mips/au1000/common/au1xxx_irqmap.c
+++ b/arch/mips/au1000/common/au1xxx_irqmap.c
@@ -40,20 +40,20 @@
40struct au1xxx_irqmap __initdata au1xxx_ic0_map[] = { 40struct au1xxx_irqmap __initdata au1xxx_ic0_map[] = {
41 41
42#if defined(CONFIG_SOC_AU1000) 42#if defined(CONFIG_SOC_AU1000)
43 { AU1000_UART0_INT, INTC_INT_HIGH_LEVEL, 0}, 43 { AU1000_UART0_INT, INTC_INT_HIGH_LEVEL, 0 },
44 { AU1000_UART1_INT, INTC_INT_HIGH_LEVEL, 0}, 44 { AU1000_UART1_INT, INTC_INT_HIGH_LEVEL, 0 },
45 { AU1000_UART2_INT, INTC_INT_HIGH_LEVEL, 0}, 45 { AU1000_UART2_INT, INTC_INT_HIGH_LEVEL, 0 },
46 { AU1000_UART3_INT, INTC_INT_HIGH_LEVEL, 0}, 46 { AU1000_UART3_INT, INTC_INT_HIGH_LEVEL, 0 },
47 { AU1000_SSI0_INT, INTC_INT_HIGH_LEVEL, 0}, 47 { AU1000_SSI0_INT, INTC_INT_HIGH_LEVEL, 0 },
48 { AU1000_SSI1_INT, INTC_INT_HIGH_LEVEL, 0}, 48 { AU1000_SSI1_INT, INTC_INT_HIGH_LEVEL, 0 },
49 { AU1000_DMA_INT_BASE, INTC_INT_HIGH_LEVEL, 0}, 49 { AU1000_DMA_INT_BASE, INTC_INT_HIGH_LEVEL, 0 },
50 { AU1000_DMA_INT_BASE+1, INTC_INT_HIGH_LEVEL, 0}, 50 { AU1000_DMA_INT_BASE+1, INTC_INT_HIGH_LEVEL, 0 },
51 { AU1000_DMA_INT_BASE+2, INTC_INT_HIGH_LEVEL, 0}, 51 { AU1000_DMA_INT_BASE+2, INTC_INT_HIGH_LEVEL, 0 },
52 { AU1000_DMA_INT_BASE+3, INTC_INT_HIGH_LEVEL, 0}, 52 { AU1000_DMA_INT_BASE+3, INTC_INT_HIGH_LEVEL, 0 },
53 { AU1000_DMA_INT_BASE+4, INTC_INT_HIGH_LEVEL, 0}, 53 { AU1000_DMA_INT_BASE+4, INTC_INT_HIGH_LEVEL, 0 },
54 { AU1000_DMA_INT_BASE+5, INTC_INT_HIGH_LEVEL, 0}, 54 { AU1000_DMA_INT_BASE+5, INTC_INT_HIGH_LEVEL, 0 },
55 { AU1000_DMA_INT_BASE+6, INTC_INT_HIGH_LEVEL, 0}, 55 { AU1000_DMA_INT_BASE+6, INTC_INT_HIGH_LEVEL, 0 },
56 { AU1000_DMA_INT_BASE+7, INTC_INT_HIGH_LEVEL, 0}, 56 { AU1000_DMA_INT_BASE+7, INTC_INT_HIGH_LEVEL, 0 },
57 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 }, 57 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 },
58 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 58 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
59 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 59 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
@@ -62,32 +62,32 @@ struct au1xxx_irqmap __initdata au1xxx_ic0_map[] = {
62 { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 62 { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
63 { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 63 { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
64 { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 }, 64 { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 },
65 { AU1000_IRDA_TX_INT, INTC_INT_HIGH_LEVEL, 0}, 65 { AU1000_IRDA_TX_INT, INTC_INT_HIGH_LEVEL, 0 },
66 { AU1000_IRDA_RX_INT, INTC_INT_HIGH_LEVEL, 0}, 66 { AU1000_IRDA_RX_INT, INTC_INT_HIGH_LEVEL, 0 },
67 { AU1000_USB_DEV_REQ_INT, INTC_INT_HIGH_LEVEL, 0 }, 67 { AU1000_USB_DEV_REQ_INT, INTC_INT_HIGH_LEVEL, 0 },
68 { AU1000_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 }, 68 { AU1000_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 },
69 { AU1000_USB_HOST_INT, INTC_INT_LOW_LEVEL, 0 }, 69 { AU1000_USB_HOST_INT, INTC_INT_LOW_LEVEL, 0 },
70 { AU1000_ACSYNC_INT, INTC_INT_RISE_EDGE, 0 }, 70 { AU1000_ACSYNC_INT, INTC_INT_RISE_EDGE, 0 },
71 { AU1000_MAC0_DMA_INT, INTC_INT_HIGH_LEVEL, 0}, 71 { AU1000_MAC0_DMA_INT, INTC_INT_HIGH_LEVEL, 0 },
72 { AU1000_MAC1_DMA_INT, INTC_INT_HIGH_LEVEL, 0}, 72 { AU1000_MAC1_DMA_INT, INTC_INT_HIGH_LEVEL, 0 },
73 { AU1000_AC97C_INT, INTC_INT_RISE_EDGE, 0 }, 73 { AU1000_AC97C_INT, INTC_INT_RISE_EDGE, 0 },
74 74
75#elif defined(CONFIG_SOC_AU1500) 75#elif defined(CONFIG_SOC_AU1500)
76 76
77 { AU1500_UART0_INT, INTC_INT_HIGH_LEVEL, 0}, 77 { AU1500_UART0_INT, INTC_INT_HIGH_LEVEL, 0 },
78 { AU1000_PCI_INTA, INTC_INT_LOW_LEVEL, 0 }, 78 { AU1000_PCI_INTA, INTC_INT_LOW_LEVEL, 0 },
79 { AU1000_PCI_INTB, INTC_INT_LOW_LEVEL, 0 }, 79 { AU1000_PCI_INTB, INTC_INT_LOW_LEVEL, 0 },
80 { AU1500_UART3_INT, INTC_INT_HIGH_LEVEL, 0}, 80 { AU1500_UART3_INT, INTC_INT_HIGH_LEVEL, 0 },
81 { AU1000_PCI_INTC, INTC_INT_LOW_LEVEL, 0 }, 81 { AU1000_PCI_INTC, INTC_INT_LOW_LEVEL, 0 },
82 { AU1000_PCI_INTD, INTC_INT_LOW_LEVEL, 0 }, 82 { AU1000_PCI_INTD, INTC_INT_LOW_LEVEL, 0 },
83 { AU1000_DMA_INT_BASE, INTC_INT_HIGH_LEVEL, 0}, 83 { AU1000_DMA_INT_BASE, INTC_INT_HIGH_LEVEL, 0 },
84 { AU1000_DMA_INT_BASE+1, INTC_INT_HIGH_LEVEL, 0}, 84 { AU1000_DMA_INT_BASE+1, INTC_INT_HIGH_LEVEL, 0 },
85 { AU1000_DMA_INT_BASE+2, INTC_INT_HIGH_LEVEL, 0}, 85 { AU1000_DMA_INT_BASE+2, INTC_INT_HIGH_LEVEL, 0 },
86 { AU1000_DMA_INT_BASE+3, INTC_INT_HIGH_LEVEL, 0}, 86 { AU1000_DMA_INT_BASE+3, INTC_INT_HIGH_LEVEL, 0 },
87 { AU1000_DMA_INT_BASE+4, INTC_INT_HIGH_LEVEL, 0}, 87 { AU1000_DMA_INT_BASE+4, INTC_INT_HIGH_LEVEL, 0 },
88 { AU1000_DMA_INT_BASE+5, INTC_INT_HIGH_LEVEL, 0}, 88 { AU1000_DMA_INT_BASE+5, INTC_INT_HIGH_LEVEL, 0 },
89 { AU1000_DMA_INT_BASE+6, INTC_INT_HIGH_LEVEL, 0}, 89 { AU1000_DMA_INT_BASE+6, INTC_INT_HIGH_LEVEL, 0 },
90 { AU1000_DMA_INT_BASE+7, INTC_INT_HIGH_LEVEL, 0}, 90 { AU1000_DMA_INT_BASE+7, INTC_INT_HIGH_LEVEL, 0 },
91 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 }, 91 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 },
92 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 92 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
93 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 93 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
@@ -100,26 +100,26 @@ struct au1xxx_irqmap __initdata au1xxx_ic0_map[] = {
100 { AU1000_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 }, 100 { AU1000_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 },
101 { AU1000_USB_HOST_INT, INTC_INT_LOW_LEVEL, 0 }, 101 { AU1000_USB_HOST_INT, INTC_INT_LOW_LEVEL, 0 },
102 { AU1000_ACSYNC_INT, INTC_INT_RISE_EDGE, 0 }, 102 { AU1000_ACSYNC_INT, INTC_INT_RISE_EDGE, 0 },
103 { AU1500_MAC0_DMA_INT, INTC_INT_HIGH_LEVEL, 0}, 103 { AU1500_MAC0_DMA_INT, INTC_INT_HIGH_LEVEL, 0 },
104 { AU1500_MAC1_DMA_INT, INTC_INT_HIGH_LEVEL, 0}, 104 { AU1500_MAC1_DMA_INT, INTC_INT_HIGH_LEVEL, 0 },
105 { AU1000_AC97C_INT, INTC_INT_RISE_EDGE, 0 }, 105 { AU1000_AC97C_INT, INTC_INT_RISE_EDGE, 0 },
106 106
107#elif defined(CONFIG_SOC_AU1100) 107#elif defined(CONFIG_SOC_AU1100)
108 108
109 { AU1100_UART0_INT, INTC_INT_HIGH_LEVEL, 0}, 109 { AU1100_UART0_INT, INTC_INT_HIGH_LEVEL, 0 },
110 { AU1100_UART1_INT, INTC_INT_HIGH_LEVEL, 0}, 110 { AU1100_UART1_INT, INTC_INT_HIGH_LEVEL, 0 },
111 { AU1100_SD_INT, INTC_INT_HIGH_LEVEL, 0}, 111 { AU1100_SD_INT, INTC_INT_HIGH_LEVEL, 0 },
112 { AU1100_UART3_INT, INTC_INT_HIGH_LEVEL, 0}, 112 { AU1100_UART3_INT, INTC_INT_HIGH_LEVEL, 0 },
113 { AU1000_SSI0_INT, INTC_INT_HIGH_LEVEL, 0}, 113 { AU1000_SSI0_INT, INTC_INT_HIGH_LEVEL, 0 },
114 { AU1000_SSI1_INT, INTC_INT_HIGH_LEVEL, 0}, 114 { AU1000_SSI1_INT, INTC_INT_HIGH_LEVEL, 0 },
115 { AU1000_DMA_INT_BASE, INTC_INT_HIGH_LEVEL, 0}, 115 { AU1000_DMA_INT_BASE, INTC_INT_HIGH_LEVEL, 0 },
116 { AU1000_DMA_INT_BASE+1, INTC_INT_HIGH_LEVEL, 0}, 116 { AU1000_DMA_INT_BASE+1, INTC_INT_HIGH_LEVEL, 0 },
117 { AU1000_DMA_INT_BASE+2, INTC_INT_HIGH_LEVEL, 0}, 117 { AU1000_DMA_INT_BASE+2, INTC_INT_HIGH_LEVEL, 0 },
118 { AU1000_DMA_INT_BASE+3, INTC_INT_HIGH_LEVEL, 0}, 118 { AU1000_DMA_INT_BASE+3, INTC_INT_HIGH_LEVEL, 0 },
119 { AU1000_DMA_INT_BASE+4, INTC_INT_HIGH_LEVEL, 0}, 119 { AU1000_DMA_INT_BASE+4, INTC_INT_HIGH_LEVEL, 0 },
120 { AU1000_DMA_INT_BASE+5, INTC_INT_HIGH_LEVEL, 0}, 120 { AU1000_DMA_INT_BASE+5, INTC_INT_HIGH_LEVEL, 0 },
121 { AU1000_DMA_INT_BASE+6, INTC_INT_HIGH_LEVEL, 0}, 121 { AU1000_DMA_INT_BASE+6, INTC_INT_HIGH_LEVEL, 0 },
122 { AU1000_DMA_INT_BASE+7, INTC_INT_HIGH_LEVEL, 0}, 122 { AU1000_DMA_INT_BASE+7, INTC_INT_HIGH_LEVEL, 0 },
123 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 }, 123 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 },
124 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 124 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
125 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 125 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
@@ -128,33 +128,33 @@ struct au1xxx_irqmap __initdata au1xxx_ic0_map[] = {
128 { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 128 { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
129 { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 129 { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
130 { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 }, 130 { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 },
131 { AU1000_IRDA_TX_INT, INTC_INT_HIGH_LEVEL, 0}, 131 { AU1000_IRDA_TX_INT, INTC_INT_HIGH_LEVEL, 0 },
132 { AU1000_IRDA_RX_INT, INTC_INT_HIGH_LEVEL, 0}, 132 { AU1000_IRDA_RX_INT, INTC_INT_HIGH_LEVEL, 0 },
133 { AU1000_USB_DEV_REQ_INT, INTC_INT_HIGH_LEVEL, 0 }, 133 { AU1000_USB_DEV_REQ_INT, INTC_INT_HIGH_LEVEL, 0 },
134 { AU1000_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 }, 134 { AU1000_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 },
135 { AU1000_USB_HOST_INT, INTC_INT_LOW_LEVEL, 0 }, 135 { AU1000_USB_HOST_INT, INTC_INT_LOW_LEVEL, 0 },
136 { AU1000_ACSYNC_INT, INTC_INT_RISE_EDGE, 0 }, 136 { AU1000_ACSYNC_INT, INTC_INT_RISE_EDGE, 0 },
137 { AU1100_MAC0_DMA_INT, INTC_INT_HIGH_LEVEL, 0}, 137 { AU1100_MAC0_DMA_INT, INTC_INT_HIGH_LEVEL, 0 },
138 /*{ AU1000_GPIO215_208_INT, INTC_INT_HIGH_LEVEL, 0},*/ 138 /* { AU1000_GPIO215_208_INT, INTC_INT_HIGH_LEVEL, 0 }, */
139 { AU1100_LCD_INT, INTC_INT_HIGH_LEVEL, 0}, 139 { AU1100_LCD_INT, INTC_INT_HIGH_LEVEL, 0 },
140 { AU1000_AC97C_INT, INTC_INT_RISE_EDGE, 0 }, 140 { AU1000_AC97C_INT, INTC_INT_RISE_EDGE, 0 },
141 141
142#elif defined(CONFIG_SOC_AU1550) 142#elif defined(CONFIG_SOC_AU1550)
143 143
144 { AU1550_UART0_INT, INTC_INT_HIGH_LEVEL, 0}, 144 { AU1550_UART0_INT, INTC_INT_HIGH_LEVEL, 0 },
145 { AU1550_PCI_INTA, INTC_INT_LOW_LEVEL, 0 }, 145 { AU1550_PCI_INTA, INTC_INT_LOW_LEVEL, 0 },
146 { AU1550_PCI_INTB, INTC_INT_LOW_LEVEL, 0 }, 146 { AU1550_PCI_INTB, INTC_INT_LOW_LEVEL, 0 },
147 { AU1550_DDMA_INT, INTC_INT_HIGH_LEVEL, 0}, 147 { AU1550_DDMA_INT, INTC_INT_HIGH_LEVEL, 0 },
148 { AU1550_CRYPTO_INT, INTC_INT_HIGH_LEVEL, 0}, 148 { AU1550_CRYPTO_INT, INTC_INT_HIGH_LEVEL, 0 },
149 { AU1550_PCI_INTC, INTC_INT_LOW_LEVEL, 0 }, 149 { AU1550_PCI_INTC, INTC_INT_LOW_LEVEL, 0 },
150 { AU1550_PCI_INTD, INTC_INT_LOW_LEVEL, 0 }, 150 { AU1550_PCI_INTD, INTC_INT_LOW_LEVEL, 0 },
151 { AU1550_PCI_RST_INT, INTC_INT_LOW_LEVEL, 0 }, 151 { AU1550_PCI_RST_INT, INTC_INT_LOW_LEVEL, 0 },
152 { AU1550_UART1_INT, INTC_INT_HIGH_LEVEL, 0}, 152 { AU1550_UART1_INT, INTC_INT_HIGH_LEVEL, 0 },
153 { AU1550_UART3_INT, INTC_INT_HIGH_LEVEL, 0}, 153 { AU1550_UART3_INT, INTC_INT_HIGH_LEVEL, 0 },
154 { AU1550_PSC0_INT, INTC_INT_HIGH_LEVEL, 0}, 154 { AU1550_PSC0_INT, INTC_INT_HIGH_LEVEL, 0 },
155 { AU1550_PSC1_INT, INTC_INT_HIGH_LEVEL, 0}, 155 { AU1550_PSC1_INT, INTC_INT_HIGH_LEVEL, 0 },
156 { AU1550_PSC2_INT, INTC_INT_HIGH_LEVEL, 0}, 156 { AU1550_PSC2_INT, INTC_INT_HIGH_LEVEL, 0 },
157 { AU1550_PSC3_INT, INTC_INT_HIGH_LEVEL, 0}, 157 { AU1550_PSC3_INT, INTC_INT_HIGH_LEVEL, 0 },
158 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 }, 158 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 },
159 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 159 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
160 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 160 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
@@ -163,26 +163,26 @@ struct au1xxx_irqmap __initdata au1xxx_ic0_map[] = {
163 { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 163 { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
164 { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 164 { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
165 { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 }, 165 { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 },
166 { AU1550_NAND_INT, INTC_INT_RISE_EDGE, 0}, 166 { AU1550_NAND_INT, INTC_INT_RISE_EDGE, 0 },
167 { AU1550_USB_DEV_REQ_INT, INTC_INT_HIGH_LEVEL, 0 }, 167 { AU1550_USB_DEV_REQ_INT, INTC_INT_HIGH_LEVEL, 0 },
168 { AU1550_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 }, 168 { AU1550_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 },
169 { AU1550_USB_HOST_INT, INTC_INT_LOW_LEVEL, 0 }, 169 { AU1550_USB_HOST_INT, INTC_INT_LOW_LEVEL, 0 },
170 { AU1550_MAC0_DMA_INT, INTC_INT_HIGH_LEVEL, 0}, 170 { AU1550_MAC0_DMA_INT, INTC_INT_HIGH_LEVEL, 0 },
171 { AU1550_MAC1_DMA_INT, INTC_INT_HIGH_LEVEL, 0}, 171 { AU1550_MAC1_DMA_INT, INTC_INT_HIGH_LEVEL, 0 },
172 172
173#elif defined(CONFIG_SOC_AU1200) 173#elif defined(CONFIG_SOC_AU1200)
174 174
175 { AU1200_UART0_INT, INTC_INT_HIGH_LEVEL, 0}, 175 { AU1200_UART0_INT, INTC_INT_HIGH_LEVEL, 0 },
176 { AU1200_SWT_INT, INTC_INT_RISE_EDGE, 0 }, 176 { AU1200_SWT_INT, INTC_INT_RISE_EDGE, 0 },
177 { AU1200_SD_INT, INTC_INT_HIGH_LEVEL, 0}, 177 { AU1200_SD_INT, INTC_INT_HIGH_LEVEL, 0 },
178 { AU1200_DDMA_INT, INTC_INT_HIGH_LEVEL, 0}, 178 { AU1200_DDMA_INT, INTC_INT_HIGH_LEVEL, 0 },
179 { AU1200_MAE_BE_INT, INTC_INT_HIGH_LEVEL, 0 }, 179 { AU1200_MAE_BE_INT, INTC_INT_HIGH_LEVEL, 0 },
180 { AU1200_UART1_INT, INTC_INT_HIGH_LEVEL, 0}, 180 { AU1200_UART1_INT, INTC_INT_HIGH_LEVEL, 0 },
181 { AU1200_MAE_FE_INT, INTC_INT_HIGH_LEVEL, 0 }, 181 { AU1200_MAE_FE_INT, INTC_INT_HIGH_LEVEL, 0 },
182 { AU1200_PSC0_INT, INTC_INT_HIGH_LEVEL, 0}, 182 { AU1200_PSC0_INT, INTC_INT_HIGH_LEVEL, 0 },
183 { AU1200_PSC1_INT, INTC_INT_HIGH_LEVEL, 0}, 183 { AU1200_PSC1_INT, INTC_INT_HIGH_LEVEL, 0 },
184 { AU1200_AES_INT, INTC_INT_HIGH_LEVEL, 0}, 184 { AU1200_AES_INT, INTC_INT_HIGH_LEVEL, 0 },
185 { AU1200_CAMERA_INT, INTC_INT_HIGH_LEVEL, 0}, 185 { AU1200_CAMERA_INT, INTC_INT_HIGH_LEVEL, 0 },
186 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 }, 186 { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 },
187 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 187 { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
188 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 188 { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
@@ -191,10 +191,10 @@ struct au1xxx_irqmap __initdata au1xxx_ic0_map[] = {
191 { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 }, 191 { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
192 { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 }, 192 { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
193 { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 }, 193 { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 },
194 { AU1200_NAND_INT, INTC_INT_RISE_EDGE, 0}, 194 { AU1200_NAND_INT, INTC_INT_RISE_EDGE, 0 },
195 { AU1200_USB_INT, INTC_INT_HIGH_LEVEL, 0 }, 195 { AU1200_USB_INT, INTC_INT_HIGH_LEVEL, 0 },
196 { AU1200_LCD_INT, INTC_INT_HIGH_LEVEL, 0}, 196 { AU1200_LCD_INT, INTC_INT_HIGH_LEVEL, 0 },
197 { AU1200_MAE_BOTH_INT, INTC_INT_HIGH_LEVEL, 0}, 197 { AU1200_MAE_BOTH_INT, INTC_INT_HIGH_LEVEL, 0 },
198 198
199#else 199#else
200#error "Error: Unknown Alchemy SOC" 200#error "Error: Unknown Alchemy SOC"
@@ -203,4 +203,3 @@ struct au1xxx_irqmap __initdata au1xxx_ic0_map[] = {
203}; 203};
204 204
205int __initdata au1xxx_ic0_nr_irqs = ARRAY_SIZE(au1xxx_ic0_map); 205int __initdata au1xxx_ic0_nr_irqs = ARRAY_SIZE(au1xxx_ic0_map);
206
diff --git a/arch/mips/au1000/common/clocks.c b/arch/mips/au1000/common/clocks.c
index 3ce6cace0eb0..043429d17c5f 100644
--- a/arch/mips/au1000/common/clocks.c
+++ b/arch/mips/au1000/common/clocks.c
@@ -1,10 +1,9 @@
1/* 1/*
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * Simple Au1000 clocks routines. 3 * Simple Au1xx0 clocks routines.
4 * 4 *
5 * Copyright 2001 MontaVista Software Inc. 5 * Copyright 2001, 2008 MontaVista Software Inc.
6 * Author: MontaVista Software, Inc. 6 * Author: MontaVista Software, Inc. <source@mvista.com>
7 * ppopov@mvista.com or source@mvista.com
8 * 7 *
9 * This program is free software; you can redistribute it and/or modify it 8 * This program is free software; you can redistribute it and/or modify it
10 * under the terms of the GNU General Public License as published by the 9 * under the terms of the GNU General Public License as published by the
@@ -30,8 +29,8 @@
30#include <linux/module.h> 29#include <linux/module.h>
31#include <asm/mach-au1x00/au1000.h> 30#include <asm/mach-au1x00/au1000.h>
32 31
33static unsigned int au1x00_clock; // Hz 32static unsigned int au1x00_clock; /* Hz */
34static unsigned int lcd_clock; // KHz 33static unsigned int lcd_clock; /* KHz */
35static unsigned long uart_baud_base; 34static unsigned long uart_baud_base;
36 35
37/* 36/*
@@ -46,8 +45,7 @@ unsigned int get_au1x00_speed(void)
46{ 45{
47 return au1x00_clock; 46 return au1x00_clock;
48} 47}
49 48EXPORT_SYMBOL(get_au1x00_speed);
50
51 49
52/* 50/*
53 * The UART baud base is not known at compile time ... if 51 * The UART baud base is not known at compile time ... if
@@ -73,24 +71,23 @@ void set_au1x00_uart_baud_base(unsigned long new_baud_base)
73void set_au1x00_lcd_clock(void) 71void set_au1x00_lcd_clock(void)
74{ 72{
75 unsigned int static_cfg0; 73 unsigned int static_cfg0;
76 unsigned int sys_busclk = 74 unsigned int sys_busclk = (get_au1x00_speed() / 1000) /
77 (get_au1x00_speed()/1000) / 75 ((int)(au_readl(SYS_POWERCTRL) & 0x03) + 2);
78 ((int)(au_readl(SYS_POWERCTRL)&0x03) + 2);
79 76
80 static_cfg0 = au_readl(MEM_STCFG0); 77 static_cfg0 = au_readl(MEM_STCFG0);
81 78
82 if (static_cfg0 & (1<<11)) 79 if (static_cfg0 & (1 << 11))
83 lcd_clock = sys_busclk / 5; /* note: BCLK switching fails with D5 */ 80 lcd_clock = sys_busclk / 5; /* note: BCLK switching fails with D5 */
84 else 81 else
85 lcd_clock = sys_busclk / 4; 82 lcd_clock = sys_busclk / 4;
86 83
87 if (lcd_clock > 50000) /* Epson MAX */ 84 if (lcd_clock > 50000) /* Epson MAX */
88 printk("warning: LCD clock too high (%d KHz)\n", lcd_clock); 85 printk(KERN_WARNING "warning: LCD clock too high (%u KHz)\n",
86 lcd_clock);
89} 87}
90 88
91unsigned int get_au1x00_lcd_clock(void) 89unsigned int get_au1x00_lcd_clock(void)
92{ 90{
93 return lcd_clock; 91 return lcd_clock;
94} 92}
95
96EXPORT_SYMBOL(get_au1x00_lcd_clock); 93EXPORT_SYMBOL(get_au1x00_lcd_clock);
diff --git a/arch/mips/au1000/common/cputable.c b/arch/mips/au1000/common/cputable.c
index 8c93a05d7382..ba6430bc2d03 100644
--- a/arch/mips/au1000/common/cputable.c
+++ b/arch/mips/au1000/common/cputable.c
@@ -14,7 +14,7 @@
14 14
15#include <asm/mach-au1x00/au1000.h> 15#include <asm/mach-au1x00/au1000.h>
16 16
17struct cpu_spec* cur_cpu_spec[NR_CPUS]; 17struct cpu_spec *cur_cpu_spec[NR_CPUS];
18 18
19/* With some thought, we can probably use the mask to reduce the 19/* With some thought, we can probably use the mask to reduce the
20 * size of the table. 20 * size of the table.
@@ -39,8 +39,7 @@ struct cpu_spec cpu_specs[] = {
39 { 0x00000000, 0x00000000, "Unknown Au1xxx", 1, 0, 0 } 39 { 0x00000000, 0x00000000, "Unknown Au1xxx", 1, 0, 0 }
40}; 40};
41 41
42void 42void set_cpuspec(void)
43set_cpuspec(void)
44{ 43{
45 struct cpu_spec *sp; 44 struct cpu_spec *sp;
46 u32 prid; 45 u32 prid;
diff --git a/arch/mips/au1000/common/dbdma.c b/arch/mips/au1000/common/dbdma.c
index 53377dfc0640..601ee9180ee4 100644
--- a/arch/mips/au1000/common/dbdma.c
+++ b/arch/mips/au1000/common/dbdma.c
@@ -53,12 +53,11 @@
53 */ 53 */
54static DEFINE_SPINLOCK(au1xxx_dbdma_spin_lock); 54static DEFINE_SPINLOCK(au1xxx_dbdma_spin_lock);
55 55
56/* I couldn't find a macro that did this...... 56/* I couldn't find a macro that did this... */
57*/
58#define ALIGN_ADDR(x, a) ((((u32)(x)) + (a-1)) & ~(a-1)) 57#define ALIGN_ADDR(x, a) ((((u32)(x)) + (a-1)) & ~(a-1))
59 58
60static dbdma_global_t *dbdma_gptr = (dbdma_global_t *)DDMA_GLOBAL_BASE; 59static dbdma_global_t *dbdma_gptr = (dbdma_global_t *)DDMA_GLOBAL_BASE;
61static int dbdma_initialized=0; 60static int dbdma_initialized;
62static void au1xxx_dbdma_init(void); 61static void au1xxx_dbdma_init(void);
63 62
64static dbdev_tab_t dbdev_tab[] = { 63static dbdev_tab_t dbdev_tab[] = {
@@ -149,7 +148,7 @@ static dbdev_tab_t dbdev_tab[] = {
149 148
150 { DSCR_CMD0_NAND_FLASH, DEV_FLAGS_IN, 0, 0, 0x00000000, 0, 0 }, 149 { DSCR_CMD0_NAND_FLASH, DEV_FLAGS_IN, 0, 0, 0x00000000, 0, 0 },
151 150
152#endif // CONFIG_SOC_AU1200 151#endif /* CONFIG_SOC_AU1200 */
153 152
154 { DSCR_CMD0_THROTTLE, DEV_FLAGS_ANYUSE, 0, 0, 0x00000000, 0, 0 }, 153 { DSCR_CMD0_THROTTLE, DEV_FLAGS_ANYUSE, 0, 0, 0x00000000, 0, 0 },
155 { DSCR_CMD0_ALWAYS, DEV_FLAGS_ANYUSE, 0, 0, 0x00000000, 0, 0 }, 154 { DSCR_CMD0_ALWAYS, DEV_FLAGS_ANYUSE, 0, 0, 0x00000000, 0, 0 },
@@ -177,8 +176,7 @@ static dbdev_tab_t dbdev_tab[] = {
177 176
178static chan_tab_t *chan_tab_ptr[NUM_DBDMA_CHANS]; 177static chan_tab_t *chan_tab_ptr[NUM_DBDMA_CHANS];
179 178
180static dbdev_tab_t * 179static dbdev_tab_t *find_dbdev_id(u32 id)
181find_dbdev_id(u32 id)
182{ 180{
183 int i; 181 int i;
184 dbdev_tab_t *p; 182 dbdev_tab_t *p;
@@ -190,29 +188,27 @@ find_dbdev_id(u32 id)
190 return NULL; 188 return NULL;
191} 189}
192 190
193void * au1xxx_ddma_get_nextptr_virt(au1x_ddma_desc_t *dp) 191void *au1xxx_ddma_get_nextptr_virt(au1x_ddma_desc_t *dp)
194{ 192{
195 return phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr)); 193 return phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr));
196} 194}
197EXPORT_SYMBOL(au1xxx_ddma_get_nextptr_virt); 195EXPORT_SYMBOL(au1xxx_ddma_get_nextptr_virt);
198 196
199u32 197u32 au1xxx_ddma_add_device(dbdev_tab_t *dev)
200au1xxx_ddma_add_device(dbdev_tab_t *dev)
201{ 198{
202 u32 ret = 0; 199 u32 ret = 0;
203 dbdev_tab_t *p=NULL; 200 dbdev_tab_t *p;
204 static u16 new_id=0x1000; 201 static u16 new_id = 0x1000;
205 202
206 p = find_dbdev_id(~0); 203 p = find_dbdev_id(~0);
207 if ( NULL != p ) 204 if (NULL != p) {
208 {
209 memcpy(p, dev, sizeof(dbdev_tab_t)); 205 memcpy(p, dev, sizeof(dbdev_tab_t));
210 p->dev_id = DSCR_DEV2CUSTOM_ID(new_id, dev->dev_id); 206 p->dev_id = DSCR_DEV2CUSTOM_ID(new_id, dev->dev_id);
211 ret = p->dev_id; 207 ret = p->dev_id;
212 new_id++; 208 new_id++;
213#if 0 209#if 0
214 printk("add_device: id:%x flags:%x padd:%x\n", 210 printk(KERN_DEBUG "add_device: id:%x flags:%x padd:%x\n",
215 p->dev_id, p->dev_flags, p->dev_physaddr ); 211 p->dev_id, p->dev_flags, p->dev_physaddr);
216#endif 212#endif
217 } 213 }
218 214
@@ -220,10 +216,19 @@ au1xxx_ddma_add_device(dbdev_tab_t *dev)
220} 216}
221EXPORT_SYMBOL(au1xxx_ddma_add_device); 217EXPORT_SYMBOL(au1xxx_ddma_add_device);
222 218
223/* Allocate a channel and return a non-zero descriptor if successful. 219void au1xxx_ddma_del_device(u32 devid)
224*/ 220{
225u32 221 dbdev_tab_t *p = find_dbdev_id(devid);
226au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid, 222
223 if (p != NULL) {
224 memset(p, 0, sizeof(dbdev_tab_t));
225 p->dev_id = ~0;
226 }
227}
228EXPORT_SYMBOL(au1xxx_ddma_del_device);
229
230/* Allocate a channel and return a non-zero descriptor if successful. */
231u32 au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
227 void (*callback)(int, void *), void *callparam) 232 void (*callback)(int, void *), void *callparam)
228{ 233{
229 unsigned long flags; 234 unsigned long flags;
@@ -234,7 +239,8 @@ au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
234 chan_tab_t *ctp; 239 chan_tab_t *ctp;
235 au1x_dma_chan_t *cp; 240 au1x_dma_chan_t *cp;
236 241
237 /* We do the intialization on the first channel allocation. 242 /*
243 * We do the intialization on the first channel allocation.
238 * We have to wait because of the interrupt handler initialization 244 * We have to wait because of the interrupt handler initialization
239 * which can't be done successfully during board set up. 245 * which can't be done successfully during board set up.
240 */ 246 */
@@ -242,16 +248,17 @@ au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
242 au1xxx_dbdma_init(); 248 au1xxx_dbdma_init();
243 dbdma_initialized = 1; 249 dbdma_initialized = 1;
244 250
245 if ((stp = find_dbdev_id(srcid)) == NULL) 251 stp = find_dbdev_id(srcid);
252 if (stp == NULL)
246 return 0; 253 return 0;
247 if ((dtp = find_dbdev_id(destid)) == NULL) 254 dtp = find_dbdev_id(destid);
255 if (dtp == NULL)
248 return 0; 256 return 0;
249 257
250 used = 0; 258 used = 0;
251 rv = 0; 259 rv = 0;
252 260
253 /* Check to see if we can get both channels. 261 /* Check to see if we can get both channels. */
254 */
255 spin_lock_irqsave(&au1xxx_dbdma_spin_lock, flags); 262 spin_lock_irqsave(&au1xxx_dbdma_spin_lock, flags);
256 if (!(stp->dev_flags & DEV_FLAGS_INUSE) || 263 if (!(stp->dev_flags & DEV_FLAGS_INUSE) ||
257 (stp->dev_flags & DEV_FLAGS_ANYUSE)) { 264 (stp->dev_flags & DEV_FLAGS_ANYUSE)) {
@@ -261,35 +268,30 @@ au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
261 (dtp->dev_flags & DEV_FLAGS_ANYUSE)) { 268 (dtp->dev_flags & DEV_FLAGS_ANYUSE)) {
262 /* Got destination */ 269 /* Got destination */
263 dtp->dev_flags |= DEV_FLAGS_INUSE; 270 dtp->dev_flags |= DEV_FLAGS_INUSE;
264 } 271 } else {
265 else { 272 /* Can't get dest. Release src. */
266 /* Can't get dest. Release src.
267 */
268 stp->dev_flags &= ~DEV_FLAGS_INUSE; 273 stp->dev_flags &= ~DEV_FLAGS_INUSE;
269 used++; 274 used++;
270 } 275 }
271 } 276 } else
272 else {
273 used++; 277 used++;
274 }
275 spin_unlock_irqrestore(&au1xxx_dbdma_spin_lock, flags); 278 spin_unlock_irqrestore(&au1xxx_dbdma_spin_lock, flags);
276 279
277 if (!used) { 280 if (!used) {
278 /* Let's see if we can allocate a channel for it. 281 /* Let's see if we can allocate a channel for it. */
279 */
280 ctp = NULL; 282 ctp = NULL;
281 chan = 0; 283 chan = 0;
282 spin_lock_irqsave(&au1xxx_dbdma_spin_lock, flags); 284 spin_lock_irqsave(&au1xxx_dbdma_spin_lock, flags);
283 for (i=0; i<NUM_DBDMA_CHANS; i++) { 285 for (i = 0; i < NUM_DBDMA_CHANS; i++)
284 if (chan_tab_ptr[i] == NULL) { 286 if (chan_tab_ptr[i] == NULL) {
285 /* If kmalloc fails, it is caught below same 287 /*
288 * If kmalloc fails, it is caught below same
286 * as a channel not available. 289 * as a channel not available.
287 */ 290 */
288 ctp = kmalloc(sizeof(chan_tab_t), GFP_ATOMIC); 291 ctp = kmalloc(sizeof(chan_tab_t), GFP_ATOMIC);
289 chan_tab_ptr[i] = ctp; 292 chan_tab_ptr[i] = ctp;
290 break; 293 break;
291 } 294 }
292 }
293 spin_unlock_irqrestore(&au1xxx_dbdma_spin_lock, flags); 295 spin_unlock_irqrestore(&au1xxx_dbdma_spin_lock, flags);
294 296
295 if (ctp != NULL) { 297 if (ctp != NULL) {
@@ -304,8 +306,7 @@ au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
304 ctp->chan_callback = callback; 306 ctp->chan_callback = callback;
305 ctp->chan_callparam = callparam; 307 ctp->chan_callparam = callparam;
306 308
307 /* Initialize channel configuration. 309 /* Initialize channel configuration. */
308 */
309 i = 0; 310 i = 0;
310 if (stp->dev_intlevel) 311 if (stp->dev_intlevel)
311 i |= DDMA_CFG_SED; 312 i |= DDMA_CFG_SED;
@@ -326,8 +327,7 @@ au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
326 * operations. 327 * operations.
327 */ 328 */
328 rv = (u32)(&chan_tab_ptr[chan]); 329 rv = (u32)(&chan_tab_ptr[chan]);
329 } 330 } else {
330 else {
331 /* Release devices */ 331 /* Release devices */
332 stp->dev_flags &= ~DEV_FLAGS_INUSE; 332 stp->dev_flags &= ~DEV_FLAGS_INUSE;
333 dtp->dev_flags &= ~DEV_FLAGS_INUSE; 333 dtp->dev_flags &= ~DEV_FLAGS_INUSE;
@@ -337,11 +337,11 @@ au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
337} 337}
338EXPORT_SYMBOL(au1xxx_dbdma_chan_alloc); 338EXPORT_SYMBOL(au1xxx_dbdma_chan_alloc);
339 339
340/* Set the device width if source or destination is a FIFO. 340/*
341 * Set the device width if source or destination is a FIFO.
341 * Should be 8, 16, or 32 bits. 342 * Should be 8, 16, or 32 bits.
342 */ 343 */
343u32 344u32 au1xxx_dbdma_set_devwidth(u32 chanid, int bits)
344au1xxx_dbdma_set_devwidth(u32 chanid, int bits)
345{ 345{
346 u32 rv; 346 u32 rv;
347 chan_tab_t *ctp; 347 chan_tab_t *ctp;
@@ -365,10 +365,8 @@ au1xxx_dbdma_set_devwidth(u32 chanid, int bits)
365} 365}
366EXPORT_SYMBOL(au1xxx_dbdma_set_devwidth); 366EXPORT_SYMBOL(au1xxx_dbdma_set_devwidth);
367 367
368/* Allocate a descriptor ring, initializing as much as possible. 368/* Allocate a descriptor ring, initializing as much as possible. */
369*/ 369u32 au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
370u32
371au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
372{ 370{
373 int i; 371 int i;
374 u32 desc_base, srcid, destid; 372 u32 desc_base, srcid, destid;
@@ -378,43 +376,45 @@ au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
378 dbdev_tab_t *stp, *dtp; 376 dbdev_tab_t *stp, *dtp;
379 au1x_ddma_desc_t *dp; 377 au1x_ddma_desc_t *dp;
380 378
381 /* I guess we could check this to be within the 379 /*
380 * I guess we could check this to be within the
382 * range of the table...... 381 * range of the table......
383 */ 382 */
384 ctp = *((chan_tab_t **)chanid); 383 ctp = *((chan_tab_t **)chanid);
385 stp = ctp->chan_src; 384 stp = ctp->chan_src;
386 dtp = ctp->chan_dest; 385 dtp = ctp->chan_dest;
387 386
388 /* The descriptors must be 32-byte aligned. There is a 387 /*
388 * The descriptors must be 32-byte aligned. There is a
389 * possibility the allocation will give us such an address, 389 * possibility the allocation will give us such an address,
390 * and if we try that first we are likely to not waste larger 390 * and if we try that first we are likely to not waste larger
391 * slabs of memory. 391 * slabs of memory.
392 */ 392 */
393 desc_base = (u32)kmalloc(entries * sizeof(au1x_ddma_desc_t), 393 desc_base = (u32)kmalloc(entries * sizeof(au1x_ddma_desc_t),
394 GFP_KERNEL|GFP_DMA); 394 GFP_KERNEL|GFP_DMA);
395 if (desc_base == 0) 395 if (desc_base == 0)
396 return 0; 396 return 0;
397 397
398 if (desc_base & 0x1f) { 398 if (desc_base & 0x1f) {
399 /* Lost....do it again, allocate extra, and round 399 /*
400 * Lost....do it again, allocate extra, and round
400 * the address base. 401 * the address base.
401 */ 402 */
402 kfree((const void *)desc_base); 403 kfree((const void *)desc_base);
403 i = entries * sizeof(au1x_ddma_desc_t); 404 i = entries * sizeof(au1x_ddma_desc_t);
404 i += (sizeof(au1x_ddma_desc_t) - 1); 405 i += (sizeof(au1x_ddma_desc_t) - 1);
405 if ((desc_base = (u32)kmalloc(i, GFP_KERNEL|GFP_DMA)) == 0) 406 desc_base = (u32)kmalloc(i, GFP_KERNEL|GFP_DMA);
407 if (desc_base == 0)
406 return 0; 408 return 0;
407 409
408 desc_base = ALIGN_ADDR(desc_base, sizeof(au1x_ddma_desc_t)); 410 desc_base = ALIGN_ADDR(desc_base, sizeof(au1x_ddma_desc_t));
409 } 411 }
410 dp = (au1x_ddma_desc_t *)desc_base; 412 dp = (au1x_ddma_desc_t *)desc_base;
411 413
412 /* Keep track of the base descriptor. 414 /* Keep track of the base descriptor. */
413 */
414 ctp->chan_desc_base = dp; 415 ctp->chan_desc_base = dp;
415 416
416 /* Initialize the rings with as much information as we know. 417 /* Initialize the rings with as much information as we know. */
417 */
418 srcid = stp->dev_id; 418 srcid = stp->dev_id;
419 destid = dtp->dev_id; 419 destid = dtp->dev_id;
420 420
@@ -426,11 +426,12 @@ au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
426 cmd0 |= DSCR_CMD0_IE | DSCR_CMD0_CV; 426 cmd0 |= DSCR_CMD0_IE | DSCR_CMD0_CV;
427 cmd0 |= DSCR_CMD0_ST(DSCR_CMD0_ST_NOCHANGE); 427 cmd0 |= DSCR_CMD0_ST(DSCR_CMD0_ST_NOCHANGE);
428 428
429 /* is it mem to mem transfer? */ 429 /* Is it mem to mem transfer? */
430 if(((DSCR_CUSTOM2DEV_ID(srcid) == DSCR_CMD0_THROTTLE) || (DSCR_CUSTOM2DEV_ID(srcid) == DSCR_CMD0_ALWAYS)) && 430 if (((DSCR_CUSTOM2DEV_ID(srcid) == DSCR_CMD0_THROTTLE) ||
431 ((DSCR_CUSTOM2DEV_ID(destid) == DSCR_CMD0_THROTTLE) || (DSCR_CUSTOM2DEV_ID(destid) == DSCR_CMD0_ALWAYS))) { 431 (DSCR_CUSTOM2DEV_ID(srcid) == DSCR_CMD0_ALWAYS)) &&
432 cmd0 |= DSCR_CMD0_MEM; 432 ((DSCR_CUSTOM2DEV_ID(destid) == DSCR_CMD0_THROTTLE) ||
433 } 433 (DSCR_CUSTOM2DEV_ID(destid) == DSCR_CMD0_ALWAYS)))
434 cmd0 |= DSCR_CMD0_MEM;
434 435
435 switch (stp->dev_devwidth) { 436 switch (stp->dev_devwidth) {
436 case 8: 437 case 8:
@@ -458,15 +459,17 @@ au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
458 break; 459 break;
459 } 460 }
460 461
461 /* If the device is marked as an in/out FIFO, ensure it is 462 /*
463 * If the device is marked as an in/out FIFO, ensure it is
462 * set non-coherent. 464 * set non-coherent.
463 */ 465 */
464 if (stp->dev_flags & DEV_FLAGS_IN) 466 if (stp->dev_flags & DEV_FLAGS_IN)
465 cmd0 |= DSCR_CMD0_SN; /* Source in fifo */ 467 cmd0 |= DSCR_CMD0_SN; /* Source in FIFO */
466 if (dtp->dev_flags & DEV_FLAGS_OUT) 468 if (dtp->dev_flags & DEV_FLAGS_OUT)
467 cmd0 |= DSCR_CMD0_DN; /* Destination out fifo */ 469 cmd0 |= DSCR_CMD0_DN; /* Destination out FIFO */
468 470
469 /* Set up source1. For now, assume no stride and increment. 471 /*
472 * Set up source1. For now, assume no stride and increment.
470 * A channel attribute update can change this later. 473 * A channel attribute update can change this later.
471 */ 474 */
472 switch (stp->dev_tsize) { 475 switch (stp->dev_tsize) {
@@ -485,19 +488,19 @@ au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
485 break; 488 break;
486 } 489 }
487 490
488 /* If source input is fifo, set static address. 491 /* If source input is FIFO, set static address. */
489 */
490 if (stp->dev_flags & DEV_FLAGS_IN) { 492 if (stp->dev_flags & DEV_FLAGS_IN) {
491 if ( stp->dev_flags & DEV_FLAGS_BURSTABLE ) 493 if (stp->dev_flags & DEV_FLAGS_BURSTABLE)
492 src1 |= DSCR_SRC1_SAM(DSCR_xAM_BURST); 494 src1 |= DSCR_SRC1_SAM(DSCR_xAM_BURST);
493 else 495 else
494 src1 |= DSCR_SRC1_SAM(DSCR_xAM_STATIC); 496 src1 |= DSCR_SRC1_SAM(DSCR_xAM_STATIC);
495
496 } 497 }
498
497 if (stp->dev_physaddr) 499 if (stp->dev_physaddr)
498 src0 = stp->dev_physaddr; 500 src0 = stp->dev_physaddr;
499 501
500 /* Set up dest1. For now, assume no stride and increment. 502 /*
503 * Set up dest1. For now, assume no stride and increment.
501 * A channel attribute update can change this later. 504 * A channel attribute update can change this later.
502 */ 505 */
503 switch (dtp->dev_tsize) { 506 switch (dtp->dev_tsize) {
@@ -516,22 +519,24 @@ au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
516 break; 519 break;
517 } 520 }
518 521
519 /* If destination output is fifo, set static address. 522 /* If destination output is FIFO, set static address. */
520 */
521 if (dtp->dev_flags & DEV_FLAGS_OUT) { 523 if (dtp->dev_flags & DEV_FLAGS_OUT) {
522 if ( dtp->dev_flags & DEV_FLAGS_BURSTABLE ) 524 if (dtp->dev_flags & DEV_FLAGS_BURSTABLE)
523 dest1 |= DSCR_DEST1_DAM(DSCR_xAM_BURST); 525 dest1 |= DSCR_DEST1_DAM(DSCR_xAM_BURST);
524 else 526 else
525 dest1 |= DSCR_DEST1_DAM(DSCR_xAM_STATIC); 527 dest1 |= DSCR_DEST1_DAM(DSCR_xAM_STATIC);
526 } 528 }
529
527 if (dtp->dev_physaddr) 530 if (dtp->dev_physaddr)
528 dest0 = dtp->dev_physaddr; 531 dest0 = dtp->dev_physaddr;
529 532
530#if 0 533#if 0
531 printk("did:%x sid:%x cmd0:%x cmd1:%x source0:%x source1:%x dest0:%x dest1:%x\n", 534 printk(KERN_DEBUG "did:%x sid:%x cmd0:%x cmd1:%x source0:%x "
532 dtp->dev_id, stp->dev_id, cmd0, cmd1, src0, src1, dest0, dest1 ); 535 "source1:%x dest0:%x dest1:%x\n",
536 dtp->dev_id, stp->dev_id, cmd0, cmd1, src0,
537 src1, dest0, dest1);
533#endif 538#endif
534 for (i=0; i<entries; i++) { 539 for (i = 0; i < entries; i++) {
535 dp->dscr_cmd0 = cmd0; 540 dp->dscr_cmd0 = cmd0;
536 dp->dscr_cmd1 = cmd1; 541 dp->dscr_cmd1 = cmd1;
537 dp->dscr_source0 = src0; 542 dp->dscr_source0 = src0;
@@ -545,49 +550,49 @@ au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
545 dp++; 550 dp++;
546 } 551 }
547 552
548 /* Make last descrptor point to the first. 553 /* Make last descrptor point to the first. */
549 */
550 dp--; 554 dp--;
551 dp->dscr_nxtptr = DSCR_NXTPTR(virt_to_phys(ctp->chan_desc_base)); 555 dp->dscr_nxtptr = DSCR_NXTPTR(virt_to_phys(ctp->chan_desc_base));
552 ctp->get_ptr = ctp->put_ptr = ctp->cur_ptr = ctp->chan_desc_base; 556 ctp->get_ptr = ctp->put_ptr = ctp->cur_ptr = ctp->chan_desc_base;
553 557
554 return (u32)(ctp->chan_desc_base); 558 return (u32)ctp->chan_desc_base;
555} 559}
556EXPORT_SYMBOL(au1xxx_dbdma_ring_alloc); 560EXPORT_SYMBOL(au1xxx_dbdma_ring_alloc);
557 561
558/* Put a source buffer into the DMA ring. 562/*
563 * Put a source buffer into the DMA ring.
559 * This updates the source pointer and byte count. Normally used 564 * This updates the source pointer and byte count. Normally used
560 * for memory to fifo transfers. 565 * for memory to fifo transfers.
561 */ 566 */
562u32 567u32 _au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags)
563_au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags)
564{ 568{
565 chan_tab_t *ctp; 569 chan_tab_t *ctp;
566 au1x_ddma_desc_t *dp; 570 au1x_ddma_desc_t *dp;
567 571
568 /* I guess we could check this to be within the 572 /*
573 * I guess we could check this to be within the
569 * range of the table...... 574 * range of the table......
570 */ 575 */
571 ctp = *((chan_tab_t **)chanid); 576 ctp = *(chan_tab_t **)chanid;
572 577
573 /* We should have multiple callers for a particular channel, 578 /*
579 * We should have multiple callers for a particular channel,
574 * an interrupt doesn't affect this pointer nor the descriptor, 580 * an interrupt doesn't affect this pointer nor the descriptor,
575 * so no locking should be needed. 581 * so no locking should be needed.
576 */ 582 */
577 dp = ctp->put_ptr; 583 dp = ctp->put_ptr;
578 584
579 /* If the descriptor is valid, we are way ahead of the DMA 585 /*
586 * If the descriptor is valid, we are way ahead of the DMA
580 * engine, so just return an error condition. 587 * engine, so just return an error condition.
581 */ 588 */
582 if (dp->dscr_cmd0 & DSCR_CMD0_V) { 589 if (dp->dscr_cmd0 & DSCR_CMD0_V)
583 return 0; 590 return 0;
584 }
585 591
586 /* Load up buffer address and byte count. 592 /* Load up buffer address and byte count. */
587 */
588 dp->dscr_source0 = virt_to_phys(buf); 593 dp->dscr_source0 = virt_to_phys(buf);
589 dp->dscr_cmd1 = nbytes; 594 dp->dscr_cmd1 = nbytes;
590 /* Check flags */ 595 /* Check flags */
591 if (flags & DDMA_FLAGS_IE) 596 if (flags & DDMA_FLAGS_IE)
592 dp->dscr_cmd0 |= DSCR_CMD0_IE; 597 dp->dscr_cmd0 |= DSCR_CMD0_IE;
593 if (flags & DDMA_FLAGS_NOIE) 598 if (flags & DDMA_FLAGS_NOIE)
@@ -595,23 +600,21 @@ _au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags)
595 600
596 /* 601 /*
597 * There is an errata on the Au1200/Au1550 parts that could result 602 * There is an errata on the Au1200/Au1550 parts that could result
598 * in "stale" data being DMA'd. It has to do with the snoop logic on 603 * in "stale" data being DMA'ed. It has to do with the snoop logic on
599 * the dache eviction buffer. NONCOHERENT_IO is on by default for 604 * the cache eviction buffer. DMA_NONCOHERENT is on by default for
600 * these parts. If it is fixedin the future, these dma_cache_inv will 605 * these parts. If it is fixed in the future, these dma_cache_inv will
601 * just be nothing more than empty macros. See io.h. 606 * just be nothing more than empty macros. See io.h.
602 * */ 607 */
603 dma_cache_wback_inv((unsigned long)buf, nbytes); 608 dma_cache_wback_inv((unsigned long)buf, nbytes);
604 dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ 609 dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */
605 au_sync(); 610 au_sync();
606 dma_cache_wback_inv((unsigned long)dp, sizeof(dp)); 611 dma_cache_wback_inv((unsigned long)dp, sizeof(dp));
607 ctp->chan_ptr->ddma_dbell = 0; 612 ctp->chan_ptr->ddma_dbell = 0;
608 613
609 /* Get next descriptor pointer. 614 /* Get next descriptor pointer. */
610 */
611 ctp->put_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr)); 615 ctp->put_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr));
612 616
613 /* return something not zero. 617 /* Return something non-zero. */
614 */
615 return nbytes; 618 return nbytes;
616} 619}
617EXPORT_SYMBOL(_au1xxx_dbdma_put_source); 620EXPORT_SYMBOL(_au1xxx_dbdma_put_source);
@@ -654,81 +657,77 @@ _au1xxx_dbdma_put_dest(u32 chanid, void *buf, int nbytes, u32 flags)
654 dp->dscr_dest0 = virt_to_phys(buf); 657 dp->dscr_dest0 = virt_to_phys(buf);
655 dp->dscr_cmd1 = nbytes; 658 dp->dscr_cmd1 = nbytes;
656#if 0 659#if 0
657 printk("cmd0:%x cmd1:%x source0:%x source1:%x dest0:%x dest1:%x\n", 660 printk(KERN_DEBUG "cmd0:%x cmd1:%x source0:%x source1:%x dest0:%x dest1:%x\n",
658 dp->dscr_cmd0, dp->dscr_cmd1, dp->dscr_source0, 661 dp->dscr_cmd0, dp->dscr_cmd1, dp->dscr_source0,
659 dp->dscr_source1, dp->dscr_dest0, dp->dscr_dest1 ); 662 dp->dscr_source1, dp->dscr_dest0, dp->dscr_dest1);
660#endif 663#endif
661 /* 664 /*
662 * There is an errata on the Au1200/Au1550 parts that could result in 665 * There is an errata on the Au1200/Au1550 parts that could result in
663 * "stale" data being DMA'd. It has to do with the snoop logic on the 666 * "stale" data being DMA'ed. It has to do with the snoop logic on the
664 * dache eviction buffer. NONCOHERENT_IO is on by default for these 667 * cache eviction buffer. DMA_NONCOHERENT is on by default for these
665 * parts. If it is fixedin the future, these dma_cache_inv will just 668 * parts. If it is fixed in the future, these dma_cache_inv will just
666 * be nothing more than empty macros. See io.h. 669 * be nothing more than empty macros. See io.h.
667 * */ 670 */
668 dma_cache_inv((unsigned long)buf, nbytes); 671 dma_cache_inv((unsigned long)buf, nbytes);
669 dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ 672 dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */
670 au_sync(); 673 au_sync();
671 dma_cache_wback_inv((unsigned long)dp, sizeof(dp)); 674 dma_cache_wback_inv((unsigned long)dp, sizeof(dp));
672 ctp->chan_ptr->ddma_dbell = 0; 675 ctp->chan_ptr->ddma_dbell = 0;
673 676
674 /* Get next descriptor pointer. 677 /* Get next descriptor pointer. */
675 */
676 ctp->put_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr)); 678 ctp->put_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr));
677 679
678 /* return something not zero. 680 /* Return something non-zero. */
679 */
680 return nbytes; 681 return nbytes;
681} 682}
682EXPORT_SYMBOL(_au1xxx_dbdma_put_dest); 683EXPORT_SYMBOL(_au1xxx_dbdma_put_dest);
683 684
684/* Get a destination buffer into the DMA ring. 685/*
686 * Get a destination buffer into the DMA ring.
685 * Normally used to get a full buffer from the ring during fifo 687 * Normally used to get a full buffer from the ring during fifo
686 * to memory transfers. This does not set the valid bit, you will 688 * to memory transfers. This does not set the valid bit, you will
687 * have to put another destination buffer to keep the DMA going. 689 * have to put another destination buffer to keep the DMA going.
688 */ 690 */
689u32 691u32 au1xxx_dbdma_get_dest(u32 chanid, void **buf, int *nbytes)
690au1xxx_dbdma_get_dest(u32 chanid, void **buf, int *nbytes)
691{ 692{
692 chan_tab_t *ctp; 693 chan_tab_t *ctp;
693 au1x_ddma_desc_t *dp; 694 au1x_ddma_desc_t *dp;
694 u32 rv; 695 u32 rv;
695 696
696 /* I guess we could check this to be within the 697 /*
698 * I guess we could check this to be within the
697 * range of the table...... 699 * range of the table......
698 */ 700 */
699 ctp = *((chan_tab_t **)chanid); 701 ctp = *((chan_tab_t **)chanid);
700 702
701 /* We should have multiple callers for a particular channel, 703 /*
704 * We should have multiple callers for a particular channel,
702 * an interrupt doesn't affect this pointer nor the descriptor, 705 * an interrupt doesn't affect this pointer nor the descriptor,
703 * so no locking should be needed. 706 * so no locking should be needed.
704 */ 707 */
705 dp = ctp->get_ptr; 708 dp = ctp->get_ptr;
706 709
707 /* If the descriptor is valid, we are way ahead of the DMA 710 /*
711 * If the descriptor is valid, we are way ahead of the DMA
708 * engine, so just return an error condition. 712 * engine, so just return an error condition.
709 */ 713 */
710 if (dp->dscr_cmd0 & DSCR_CMD0_V) 714 if (dp->dscr_cmd0 & DSCR_CMD0_V)
711 return 0; 715 return 0;
712 716
713 /* Return buffer address and byte count. 717 /* Return buffer address and byte count. */
714 */
715 *buf = (void *)(phys_to_virt(dp->dscr_dest0)); 718 *buf = (void *)(phys_to_virt(dp->dscr_dest0));
716 *nbytes = dp->dscr_cmd1; 719 *nbytes = dp->dscr_cmd1;
717 rv = dp->dscr_stat; 720 rv = dp->dscr_stat;
718 721
719 /* Get next descriptor pointer. 722 /* Get next descriptor pointer. */
720 */
721 ctp->get_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr)); 723 ctp->get_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr));
722 724
723 /* return something not zero. 725 /* Return something non-zero. */
724 */
725 return rv; 726 return rv;
726} 727}
727
728EXPORT_SYMBOL_GPL(au1xxx_dbdma_get_dest); 728EXPORT_SYMBOL_GPL(au1xxx_dbdma_get_dest);
729 729
730void 730void au1xxx_dbdma_stop(u32 chanid)
731au1xxx_dbdma_stop(u32 chanid)
732{ 731{
733 chan_tab_t *ctp; 732 chan_tab_t *ctp;
734 au1x_dma_chan_t *cp; 733 au1x_dma_chan_t *cp;
@@ -743,7 +742,7 @@ au1xxx_dbdma_stop(u32 chanid)
743 udelay(1); 742 udelay(1);
744 halt_timeout++; 743 halt_timeout++;
745 if (halt_timeout > 100) { 744 if (halt_timeout > 100) {
746 printk("warning: DMA channel won't halt\n"); 745 printk(KERN_WARNING "warning: DMA channel won't halt\n");
747 break; 746 break;
748 } 747 }
749 } 748 }
@@ -753,12 +752,12 @@ au1xxx_dbdma_stop(u32 chanid)
753} 752}
754EXPORT_SYMBOL(au1xxx_dbdma_stop); 753EXPORT_SYMBOL(au1xxx_dbdma_stop);
755 754
756/* Start using the current descriptor pointer. If the dbdma encounters 755/*
757 * a not valid descriptor, it will stop. In this case, we can just 756 * Start using the current descriptor pointer. If the DBDMA encounters
757 * a non-valid descriptor, it will stop. In this case, we can just
758 * continue by adding a buffer to the list and starting again. 758 * continue by adding a buffer to the list and starting again.
759 */ 759 */
760void 760void au1xxx_dbdma_start(u32 chanid)
761au1xxx_dbdma_start(u32 chanid)
762{ 761{
763 chan_tab_t *ctp; 762 chan_tab_t *ctp;
764 au1x_dma_chan_t *cp; 763 au1x_dma_chan_t *cp;
@@ -773,8 +772,7 @@ au1xxx_dbdma_start(u32 chanid)
773} 772}
774EXPORT_SYMBOL(au1xxx_dbdma_start); 773EXPORT_SYMBOL(au1xxx_dbdma_start);
775 774
776void 775void au1xxx_dbdma_reset(u32 chanid)
777au1xxx_dbdma_reset(u32 chanid)
778{ 776{
779 chan_tab_t *ctp; 777 chan_tab_t *ctp;
780 au1x_ddma_desc_t *dp; 778 au1x_ddma_desc_t *dp;
@@ -784,14 +782,14 @@ au1xxx_dbdma_reset(u32 chanid)
784 ctp = *((chan_tab_t **)chanid); 782 ctp = *((chan_tab_t **)chanid);
785 ctp->get_ptr = ctp->put_ptr = ctp->cur_ptr = ctp->chan_desc_base; 783 ctp->get_ptr = ctp->put_ptr = ctp->cur_ptr = ctp->chan_desc_base;
786 784
787 /* Run through the descriptors and reset the valid indicator. 785 /* Run through the descriptors and reset the valid indicator. */
788 */
789 dp = ctp->chan_desc_base; 786 dp = ctp->chan_desc_base;
790 787
791 do { 788 do {
792 dp->dscr_cmd0 &= ~DSCR_CMD0_V; 789 dp->dscr_cmd0 &= ~DSCR_CMD0_V;
793 /* reset our SW status -- this is used to determine 790 /*
794 * if a descriptor is in use by upper level SW. Since 791 * Reset our software status -- this is used to determine
792 * if a descriptor is in use by upper level software. Since
795 * posting can reset 'V' bit. 793 * posting can reset 'V' bit.
796 */ 794 */
797 dp->sw_status = 0; 795 dp->sw_status = 0;
@@ -800,8 +798,7 @@ au1xxx_dbdma_reset(u32 chanid)
800} 798}
801EXPORT_SYMBOL(au1xxx_dbdma_reset); 799EXPORT_SYMBOL(au1xxx_dbdma_reset);
802 800
803u32 801u32 au1xxx_get_dma_residue(u32 chanid)
804au1xxx_get_dma_residue(u32 chanid)
805{ 802{
806 chan_tab_t *ctp; 803 chan_tab_t *ctp;
807 au1x_dma_chan_t *cp; 804 au1x_dma_chan_t *cp;
@@ -810,18 +807,15 @@ au1xxx_get_dma_residue(u32 chanid)
810 ctp = *((chan_tab_t **)chanid); 807 ctp = *((chan_tab_t **)chanid);
811 cp = ctp->chan_ptr; 808 cp = ctp->chan_ptr;
812 809
813 /* This is only valid if the channel is stopped. 810 /* This is only valid if the channel is stopped. */
814 */
815 rv = cp->ddma_bytecnt; 811 rv = cp->ddma_bytecnt;
816 au_sync(); 812 au_sync();
817 813
818 return rv; 814 return rv;
819} 815}
820
821EXPORT_SYMBOL_GPL(au1xxx_get_dma_residue); 816EXPORT_SYMBOL_GPL(au1xxx_get_dma_residue);
822 817
823void 818void au1xxx_dbdma_chan_free(u32 chanid)
824au1xxx_dbdma_chan_free(u32 chanid)
825{ 819{
826 chan_tab_t *ctp; 820 chan_tab_t *ctp;
827 dbdev_tab_t *stp, *dtp; 821 dbdev_tab_t *stp, *dtp;
@@ -842,8 +836,7 @@ au1xxx_dbdma_chan_free(u32 chanid)
842} 836}
843EXPORT_SYMBOL(au1xxx_dbdma_chan_free); 837EXPORT_SYMBOL(au1xxx_dbdma_chan_free);
844 838
845static irqreturn_t 839static irqreturn_t dbdma_interrupt(int irq, void *dev_id)
846dbdma_interrupt(int irq, void *dev_id)
847{ 840{
848 u32 intstat; 841 u32 intstat;
849 u32 chan_index; 842 u32 chan_index;
@@ -859,13 +852,12 @@ dbdma_interrupt(int irq, void *dev_id)
859 cp = ctp->chan_ptr; 852 cp = ctp->chan_ptr;
860 dp = ctp->cur_ptr; 853 dp = ctp->cur_ptr;
861 854
862 /* Reset interrupt. 855 /* Reset interrupt. */
863 */
864 cp->ddma_irq = 0; 856 cp->ddma_irq = 0;
865 au_sync(); 857 au_sync();
866 858
867 if (ctp->chan_callback) 859 if (ctp->chan_callback)
868 (ctp->chan_callback)(irq, ctp->chan_callparam); 860 ctp->chan_callback(irq, ctp->chan_callparam);
869 861
870 ctp->cur_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr)); 862 ctp->cur_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr));
871 return IRQ_RETVAL(1); 863 return IRQ_RETVAL(1);
@@ -890,47 +882,47 @@ static void au1xxx_dbdma_init(void)
890 882
891 if (request_irq(irq_nr, dbdma_interrupt, IRQF_DISABLED, 883 if (request_irq(irq_nr, dbdma_interrupt, IRQF_DISABLED,
892 "Au1xxx dbdma", (void *)dbdma_gptr)) 884 "Au1xxx dbdma", (void *)dbdma_gptr))
893 printk("Can't get 1550 dbdma irq"); 885 printk(KERN_ERR "Can't get 1550 dbdma irq");
894} 886}
895 887
896void 888void au1xxx_dbdma_dump(u32 chanid)
897au1xxx_dbdma_dump(u32 chanid)
898{ 889{
899 chan_tab_t *ctp; 890 chan_tab_t *ctp;
900 au1x_ddma_desc_t *dp; 891 au1x_ddma_desc_t *dp;
901 dbdev_tab_t *stp, *dtp; 892 dbdev_tab_t *stp, *dtp;
902 au1x_dma_chan_t *cp; 893 au1x_dma_chan_t *cp;
903 u32 i = 0; 894 u32 i = 0;
904 895
905 ctp = *((chan_tab_t **)chanid); 896 ctp = *((chan_tab_t **)chanid);
906 stp = ctp->chan_src; 897 stp = ctp->chan_src;
907 dtp = ctp->chan_dest; 898 dtp = ctp->chan_dest;
908 cp = ctp->chan_ptr; 899 cp = ctp->chan_ptr;
909 900
910 printk("Chan %x, stp %x (dev %d) dtp %x (dev %d) \n", 901 printk(KERN_DEBUG "Chan %x, stp %x (dev %d) dtp %x (dev %d) \n",
911 (u32)ctp, (u32)stp, stp - dbdev_tab, (u32)dtp, dtp - dbdev_tab); 902 (u32)ctp, (u32)stp, stp - dbdev_tab, (u32)dtp,
912 printk("desc base %x, get %x, put %x, cur %x\n", 903 dtp - dbdev_tab);
913 (u32)(ctp->chan_desc_base), (u32)(ctp->get_ptr), 904 printk(KERN_DEBUG "desc base %x, get %x, put %x, cur %x\n",
914 (u32)(ctp->put_ptr), (u32)(ctp->cur_ptr)); 905 (u32)(ctp->chan_desc_base), (u32)(ctp->get_ptr),
915 906 (u32)(ctp->put_ptr), (u32)(ctp->cur_ptr));
916 printk("dbdma chan %x\n", (u32)cp); 907
917 printk("cfg %08x, desptr %08x, statptr %08x\n", 908 printk(KERN_DEBUG "dbdma chan %x\n", (u32)cp);
918 cp->ddma_cfg, cp->ddma_desptr, cp->ddma_statptr); 909 printk(KERN_DEBUG "cfg %08x, desptr %08x, statptr %08x\n",
919 printk("dbell %08x, irq %08x, stat %08x, bytecnt %08x\n", 910 cp->ddma_cfg, cp->ddma_desptr, cp->ddma_statptr);
920 cp->ddma_dbell, cp->ddma_irq, cp->ddma_stat, cp->ddma_bytecnt); 911 printk(KERN_DEBUG "dbell %08x, irq %08x, stat %08x, bytecnt %08x\n",
921 912 cp->ddma_dbell, cp->ddma_irq, cp->ddma_stat,
922 913 cp->ddma_bytecnt);
923 /* Run through the descriptors 914
924 */ 915 /* Run through the descriptors */
925 dp = ctp->chan_desc_base; 916 dp = ctp->chan_desc_base;
926 917
927 do { 918 do {
928 printk("Dp[%d]= %08x, cmd0 %08x, cmd1 %08x\n", 919 printk(KERN_DEBUG "Dp[%d]= %08x, cmd0 %08x, cmd1 %08x\n",
929 i++, (u32)dp, dp->dscr_cmd0, dp->dscr_cmd1); 920 i++, (u32)dp, dp->dscr_cmd0, dp->dscr_cmd1);
930 printk("src0 %08x, src1 %08x, dest0 %08x, dest1 %08x\n", 921 printk(KERN_DEBUG "src0 %08x, src1 %08x, dest0 %08x, dest1 %08x\n",
931 dp->dscr_source0, dp->dscr_source1, dp->dscr_dest0, dp->dscr_dest1); 922 dp->dscr_source0, dp->dscr_source1,
932 printk("stat %08x, nxtptr %08x\n", 923 dp->dscr_dest0, dp->dscr_dest1);
933 dp->dscr_stat, dp->dscr_nxtptr); 924 printk(KERN_DEBUG "stat %08x, nxtptr %08x\n",
925 dp->dscr_stat, dp->dscr_nxtptr);
934 dp = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr)); 926 dp = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr));
935 } while (dp != ctp->chan_desc_base); 927 } while (dp != ctp->chan_desc_base);
936} 928}
@@ -938,32 +930,33 @@ au1xxx_dbdma_dump(u32 chanid)
938/* Put a descriptor into the DMA ring. 930/* Put a descriptor into the DMA ring.
939 * This updates the source/destination pointers and byte count. 931 * This updates the source/destination pointers and byte count.
940 */ 932 */
941u32 933u32 au1xxx_dbdma_put_dscr(u32 chanid, au1x_ddma_desc_t *dscr)
942au1xxx_dbdma_put_dscr(u32 chanid, au1x_ddma_desc_t *dscr )
943{ 934{
944 chan_tab_t *ctp; 935 chan_tab_t *ctp;
945 au1x_ddma_desc_t *dp; 936 au1x_ddma_desc_t *dp;
946 u32 nbytes=0; 937 u32 nbytes = 0;
947 938
948 /* I guess we could check this to be within the 939 /*
949 * range of the table...... 940 * I guess we could check this to be within the
950 */ 941 * range of the table......
942 */
951 ctp = *((chan_tab_t **)chanid); 943 ctp = *((chan_tab_t **)chanid);
952 944
953 /* We should have multiple callers for a particular channel, 945 /*
954 * an interrupt doesn't affect this pointer nor the descriptor, 946 * We should have multiple callers for a particular channel,
955 * so no locking should be needed. 947 * an interrupt doesn't affect this pointer nor the descriptor,
956 */ 948 * so no locking should be needed.
949 */
957 dp = ctp->put_ptr; 950 dp = ctp->put_ptr;
958 951
959 /* If the descriptor is valid, we are way ahead of the DMA 952 /*
960 * engine, so just return an error condition. 953 * If the descriptor is valid, we are way ahead of the DMA
961 */ 954 * engine, so just return an error condition.
955 */
962 if (dp->dscr_cmd0 & DSCR_CMD0_V) 956 if (dp->dscr_cmd0 & DSCR_CMD0_V)
963 return 0; 957 return 0;
964 958
965 /* Load up buffer addresses and byte count. 959 /* Load up buffer addresses and byte count. */
966 */
967 dp->dscr_dest0 = dscr->dscr_dest0; 960 dp->dscr_dest0 = dscr->dscr_dest0;
968 dp->dscr_source0 = dscr->dscr_source0; 961 dp->dscr_source0 = dscr->dscr_source0;
969 dp->dscr_dest1 = dscr->dscr_dest1; 962 dp->dscr_dest1 = dscr->dscr_dest1;
@@ -975,14 +968,11 @@ au1xxx_dbdma_put_dscr(u32 chanid, au1x_ddma_desc_t *dscr )
975 dp->dscr_cmd0 |= dscr->dscr_cmd0 | DSCR_CMD0_V; 968 dp->dscr_cmd0 |= dscr->dscr_cmd0 | DSCR_CMD0_V;
976 ctp->chan_ptr->ddma_dbell = 0; 969 ctp->chan_ptr->ddma_dbell = 0;
977 970
978 /* Get next descriptor pointer. 971 /* Get next descriptor pointer. */
979 */
980 ctp->put_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr)); 972 ctp->put_ptr = phys_to_virt(DSCR_GET_NXTPTR(dp->dscr_nxtptr));
981 973
982 /* return something not zero. 974 /* Return something non-zero. */
983 */
984 return nbytes; 975 return nbytes;
985} 976}
986 977
987#endif /* defined(CONFIG_SOC_AU1550) || defined(CONFIG_SOC_AU1200) */ 978#endif /* defined(CONFIG_SOC_AU1550) || defined(CONFIG_SOC_AU1200) */
988
diff --git a/arch/mips/au1000/common/dbg_io.c b/arch/mips/au1000/common/dbg_io.c
index eae1bb2ca26e..af5be7df2f2a 100644
--- a/arch/mips/au1000/common/dbg_io.c
+++ b/arch/mips/au1000/common/dbg_io.c
@@ -1,3 +1,4 @@
1#include <linux/types.h>
1 2
2#include <asm/mach-au1x00/au1000.h> 3#include <asm/mach-au1x00/au1000.h>
3 4
@@ -8,12 +9,6 @@
8 * uart to be used for debugging. 9 * uart to be used for debugging.
9 */ 10 */
10#define DEBUG_BASE UART_DEBUG_BASE 11#define DEBUG_BASE UART_DEBUG_BASE
11/**/
12
13/* we need uint32 uint8 */
14/* #include "types.h" */
15typedef unsigned char uint8;
16typedef unsigned int uint32;
17 12
18#define UART16550_BAUD_2400 2400 13#define UART16550_BAUD_2400 2400
19#define UART16550_BAUD_4800 4800 14#define UART16550_BAUD_4800 4800
@@ -51,17 +46,15 @@ typedef unsigned int uint32;
51#define UART_MOD_CNTRL 0x100 /* Module Control */ 46#define UART_MOD_CNTRL 0x100 /* Module Control */
52 47
53/* memory-mapped read/write of the port */ 48/* memory-mapped read/write of the port */
54#define UART16550_READ(y) (au_readl(DEBUG_BASE + y) & 0xff) 49#define UART16550_READ(y) (au_readl(DEBUG_BASE + y) & 0xff)
55#define UART16550_WRITE(y, z) (au_writel(z&0xff, DEBUG_BASE + y)) 50#define UART16550_WRITE(y, z) (au_writel(z & 0xff, DEBUG_BASE + y))
56 51
57extern unsigned long calc_clock(void); 52extern unsigned long calc_clock(void);
58 53
59void debugInit(uint32 baud, uint8 data, uint8 parity, uint8 stop) 54void debugInit(u32 baud, u8 data, u8 parity, u8 stop)
60{ 55{
61 56 if (UART16550_READ(UART_MOD_CNTRL) != 0x3)
62 if (UART16550_READ(UART_MOD_CNTRL) != 0x3) {
63 UART16550_WRITE(UART_MOD_CNTRL, 3); 57 UART16550_WRITE(UART_MOD_CNTRL, 3);
64 }
65 calc_clock(); 58 calc_clock();
66 59
67 /* disable interrupts */ 60 /* disable interrupts */
@@ -69,7 +62,7 @@ void debugInit(uint32 baud, uint8 data, uint8 parity, uint8 stop)
69 62
70 /* set up baud rate */ 63 /* set up baud rate */
71 { 64 {
72 uint32 divisor; 65 u32 divisor;
73 66
74 /* set divisor */ 67 /* set divisor */
75 divisor = get_au1x00_uart_baud_base() / baud; 68 divisor = get_au1x00_uart_baud_base() / baud;
@@ -80,9 +73,9 @@ void debugInit(uint32 baud, uint8 data, uint8 parity, uint8 stop)
80 UART16550_WRITE(UART_LCR, (data | parity | stop)); 73 UART16550_WRITE(UART_LCR, (data | parity | stop));
81} 74}
82 75
83static int remoteDebugInitialized = 0; 76static int remoteDebugInitialized;
84 77
85uint8 getDebugChar(void) 78u8 getDebugChar(void)
86{ 79{
87 if (!remoteDebugInitialized) { 80 if (!remoteDebugInitialized) {
88 remoteDebugInitialized = 1; 81 remoteDebugInitialized = 1;
@@ -92,15 +85,13 @@ uint8 getDebugChar(void)
92 UART16550_STOP_1BIT); 85 UART16550_STOP_1BIT);
93 } 86 }
94 87
95 while((UART16550_READ(UART_LSR) & 0x1) == 0); 88 while ((UART16550_READ(UART_LSR) & 0x1) == 0);
96 return UART16550_READ(UART_RX); 89 return UART16550_READ(UART_RX);
97} 90}
98 91
99 92
100int putDebugChar(uint8 byte) 93int putDebugChar(u8 byte)
101{ 94{
102// int i;
103
104 if (!remoteDebugInitialized) { 95 if (!remoteDebugInitialized) {
105 remoteDebugInitialized = 1; 96 remoteDebugInitialized = 1;
106 debugInit(UART16550_BAUD_115200, 97 debugInit(UART16550_BAUD_115200,
@@ -109,9 +100,8 @@ int putDebugChar(uint8 byte)
109 UART16550_STOP_1BIT); 100 UART16550_STOP_1BIT);
110 } 101 }
111 102
112 while ((UART16550_READ(UART_LSR)&0x40) == 0); 103 while ((UART16550_READ(UART_LSR) & 0x40) == 0);
113 UART16550_WRITE(UART_TX, byte); 104 UART16550_WRITE(UART_TX, byte);
114 //for (i=0;i<0xfff;i++);
115 105
116 return 1; 106 return 1;
117} 107}
diff --git a/arch/mips/au1000/common/dma.c b/arch/mips/au1000/common/dma.c
index 95f69ea146e9..d6fbda232e6a 100644
--- a/arch/mips/au1000/common/dma.c
+++ b/arch/mips/au1000/common/dma.c
@@ -1,12 +1,11 @@
1/* 1/*
2 * 2 *
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * A DMA channel allocator for Au1000. API is modeled loosely off of 4 * A DMA channel allocator for Au1x00. API is modeled loosely off of
5 * linux/kernel/dma.c. 5 * linux/kernel/dma.c.
6 * 6 *
7 * Copyright 2000 MontaVista Software Inc. 7 * Copyright 2000, 2008 MontaVista Software Inc.
8 * Author: MontaVista Software, Inc. 8 * Author: MontaVista Software, Inc. <source@mvista.com>
9 * stevel@mvista.com or source@mvista.com
10 * Copyright (C) 2005 Ralf Baechle (ralf@linux-mips.org) 9 * Copyright (C) 2005 Ralf Baechle (ralf@linux-mips.org)
11 * 10 *
12 * This program is free software; you can redistribute it and/or modify it 11 * This program is free software; you can redistribute it and/or modify it
@@ -39,7 +38,8 @@
39#include <asm/mach-au1x00/au1000.h> 38#include <asm/mach-au1x00/au1000.h>
40#include <asm/mach-au1x00/au1000_dma.h> 39#include <asm/mach-au1x00/au1000_dma.h>
41 40
42#if defined(CONFIG_SOC_AU1000) || defined(CONFIG_SOC_AU1500) || defined(CONFIG_SOC_AU1100) 41#if defined(CONFIG_SOC_AU1000) || defined(CONFIG_SOC_AU1500) || \
42 defined(CONFIG_SOC_AU1100)
43/* 43/*
44 * A note on resource allocation: 44 * A note on resource allocation:
45 * 45 *
@@ -56,7 +56,6 @@
56 * returned from request_dma. 56 * returned from request_dma.
57 */ 57 */
58 58
59
60DEFINE_SPINLOCK(au1000_dma_spin_lock); 59DEFINE_SPINLOCK(au1000_dma_spin_lock);
61 60
62struct dma_chan au1000_dma_table[NUM_AU1000_DMA_CHANNELS] = { 61struct dma_chan au1000_dma_table[NUM_AU1000_DMA_CHANNELS] = {
@@ -71,7 +70,7 @@ struct dma_chan au1000_dma_table[NUM_AU1000_DMA_CHANNELS] = {
71}; 70};
72EXPORT_SYMBOL(au1000_dma_table); 71EXPORT_SYMBOL(au1000_dma_table);
73 72
74// Device FIFO addresses and default DMA modes 73/* Device FIFO addresses and default DMA modes */
75static const struct dma_dev { 74static const struct dma_dev {
76 unsigned int fifo_addr; 75 unsigned int fifo_addr;
77 unsigned int dma_mode; 76 unsigned int dma_mode;
@@ -80,8 +79,8 @@ static const struct dma_dev {
80 {UART0_ADDR + UART_RX, 0}, 79 {UART0_ADDR + UART_RX, 0},
81 {0, 0}, 80 {0, 0},
82 {0, 0}, 81 {0, 0},
83 {AC97C_DATA, DMA_DW16 }, // coherent 82 {AC97C_DATA, DMA_DW16 }, /* coherent */
84 {AC97C_DATA, DMA_DR | DMA_DW16 }, // coherent 83 {AC97C_DATA, DMA_DR | DMA_DW16 }, /* coherent */
85 {UART3_ADDR + UART_TX, DMA_DW8 | DMA_NC}, 84 {UART3_ADDR + UART_TX, DMA_DW8 | DMA_NC},
86 {UART3_ADDR + UART_RX, DMA_DR | DMA_DW8 | DMA_NC}, 85 {UART3_ADDR + UART_RX, DMA_DR | DMA_DW8 | DMA_NC},
87 {USBD_EP0RD, DMA_DR | DMA_DW8 | DMA_NC}, 86 {USBD_EP0RD, DMA_DR | DMA_DW8 | DMA_NC},
@@ -101,10 +100,10 @@ int au1000_dma_read_proc(char *buf, char **start, off_t fpos,
101 struct dma_chan *chan; 100 struct dma_chan *chan;
102 101
103 for (i = 0; i < NUM_AU1000_DMA_CHANNELS; i++) { 102 for (i = 0; i < NUM_AU1000_DMA_CHANNELS; i++) {
104 if ((chan = get_dma_chan(i)) != NULL) { 103 chan = get_dma_chan(i);
104 if (chan != NULL)
105 len += sprintf(buf + len, "%2d: %s\n", 105 len += sprintf(buf + len, "%2d: %s\n",
106 i, chan->dev_str); 106 i, chan->dev_str);
107 }
108 } 107 }
109 108
110 if (fpos >= len) { 109 if (fpos >= len) {
@@ -113,18 +112,19 @@ int au1000_dma_read_proc(char *buf, char **start, off_t fpos,
113 return 0; 112 return 0;
114 } 113 }
115 *start = buf + fpos; 114 *start = buf + fpos;
116 if ((len -= fpos) > length) 115 len -= fpos;
116 if (len > length)
117 return length; 117 return length;
118 *eof = 1; 118 *eof = 1;
119 return len; 119 return len;
120} 120}
121 121
122// Device FIFO addresses and default DMA modes - 2nd bank 122/* Device FIFO addresses and default DMA modes - 2nd bank */
123static const struct dma_dev dma_dev_table_bank2[DMA_NUM_DEV_BANK2] = { 123static const struct dma_dev dma_dev_table_bank2[DMA_NUM_DEV_BANK2] = {
124 {SD0_XMIT_FIFO, DMA_DS | DMA_DW8}, // coherent 124 { SD0_XMIT_FIFO, DMA_DS | DMA_DW8 }, /* coherent */
125 {SD0_RECV_FIFO, DMA_DS | DMA_DR | DMA_DW8}, // coherent 125 { SD0_RECV_FIFO, DMA_DS | DMA_DR | DMA_DW8 }, /* coherent */
126 {SD1_XMIT_FIFO, DMA_DS | DMA_DW8}, // coherent 126 { SD1_XMIT_FIFO, DMA_DS | DMA_DW8 }, /* coherent */
127 {SD1_RECV_FIFO, DMA_DS | DMA_DR | DMA_DW8} // coherent 127 { SD1_RECV_FIFO, DMA_DS | DMA_DR | DMA_DW8 } /* coherent */
128}; 128};
129 129
130void dump_au1000_dma_channel(unsigned int dmanr) 130void dump_au1000_dma_channel(unsigned int dmanr)
@@ -150,7 +150,6 @@ void dump_au1000_dma_channel(unsigned int dmanr)
150 au_readl(chan->io + DMA_BUFFER1_COUNT)); 150 au_readl(chan->io + DMA_BUFFER1_COUNT));
151} 151}
152 152
153
154/* 153/*
155 * Finds a free channel, and binds the requested device to it. 154 * Finds a free channel, and binds the requested device to it.
156 * Returns the allocated channel number, or negative on error. 155 * Returns the allocated channel number, or negative on error.
@@ -169,14 +168,14 @@ int request_au1000_dma(int dev_id, const char *dev_str,
169 if (dev_id < 0 || dev_id >= (DMA_NUM_DEV + DMA_NUM_DEV_BANK2)) 168 if (dev_id < 0 || dev_id >= (DMA_NUM_DEV + DMA_NUM_DEV_BANK2))
170 return -EINVAL; 169 return -EINVAL;
171#else 170#else
172 if (dev_id < 0 || dev_id >= DMA_NUM_DEV) 171 if (dev_id < 0 || dev_id >= DMA_NUM_DEV)
173 return -EINVAL; 172 return -EINVAL;
174#endif 173#endif
175 174
176 for (i = 0; i < NUM_AU1000_DMA_CHANNELS; i++) { 175 for (i = 0; i < NUM_AU1000_DMA_CHANNELS; i++)
177 if (au1000_dma_table[i].dev_id < 0) 176 if (au1000_dma_table[i].dev_id < 0)
178 break; 177 break;
179 } 178
180 if (i == NUM_AU1000_DMA_CHANNELS) 179 if (i == NUM_AU1000_DMA_CHANNELS)
181 return -ENODEV; 180 return -ENODEV;
182 181
@@ -185,15 +184,15 @@ int request_au1000_dma(int dev_id, const char *dev_str,
185 if (dev_id >= DMA_NUM_DEV) { 184 if (dev_id >= DMA_NUM_DEV) {
186 dev_id -= DMA_NUM_DEV; 185 dev_id -= DMA_NUM_DEV;
187 dev = &dma_dev_table_bank2[dev_id]; 186 dev = &dma_dev_table_bank2[dev_id];
188 } else { 187 } else
189 dev = &dma_dev_table[dev_id]; 188 dev = &dma_dev_table[dev_id];
190 }
191 189
192 if (irqhandler) { 190 if (irqhandler) {
193 chan->irq = AU1000_DMA_INT_BASE + i; 191 chan->irq = AU1000_DMA_INT_BASE + i;
194 chan->irq_dev = irq_dev_id; 192 chan->irq_dev = irq_dev_id;
195 if ((ret = request_irq(chan->irq, irqhandler, irqflags, 193 ret = request_irq(chan->irq, irqhandler, irqflags, dev_str,
196 dev_str, chan->irq_dev))) { 194 chan->irq_dev);
195 if (ret) {
197 chan->irq = 0; 196 chan->irq = 0;
198 chan->irq_dev = NULL; 197 chan->irq_dev = NULL;
199 return ret; 198 return ret;
@@ -203,7 +202,7 @@ int request_au1000_dma(int dev_id, const char *dev_str,
203 chan->irq_dev = NULL; 202 chan->irq_dev = NULL;
204 } 203 }
205 204
206 // fill it in 205 /* fill it in */
207 chan->io = DMA_CHANNEL_BASE + i * DMA_CHANNEL_LEN; 206 chan->io = DMA_CHANNEL_BASE + i * DMA_CHANNEL_LEN;
208 chan->dev_id = dev_id; 207 chan->dev_id = dev_id;
209 chan->dev_str = dev_str; 208 chan->dev_str = dev_str;
@@ -220,8 +219,9 @@ EXPORT_SYMBOL(request_au1000_dma);
220void free_au1000_dma(unsigned int dmanr) 219void free_au1000_dma(unsigned int dmanr)
221{ 220{
222 struct dma_chan *chan = get_dma_chan(dmanr); 221 struct dma_chan *chan = get_dma_chan(dmanr);
222
223 if (!chan) { 223 if (!chan) {
224 printk("Trying to free DMA%d\n", dmanr); 224 printk(KERN_ERR "Error trying to free DMA%d\n", dmanr);
225 return; 225 return;
226 } 226 }
227 227
@@ -235,4 +235,4 @@ void free_au1000_dma(unsigned int dmanr)
235} 235}
236EXPORT_SYMBOL(free_au1000_dma); 236EXPORT_SYMBOL(free_au1000_dma);
237 237
238#endif // AU1000 AU1500 AU1100 238#endif /* AU1000 AU1500 AU1100 */
diff --git a/arch/mips/au1000/common/gpio.c b/arch/mips/au1000/common/gpio.c
index 525452589971..b485d94ce8a5 100644
--- a/arch/mips/au1000/common/gpio.c
+++ b/arch/mips/au1000/common/gpio.c
@@ -69,7 +69,7 @@ static int au1xxx_gpio2_direction_output(unsigned gpio, int value)
69 69
70static int au1xxx_gpio1_read(unsigned gpio) 70static int au1xxx_gpio1_read(unsigned gpio)
71{ 71{
72 return ((gpio1->pinstaterd >> gpio) & 0x01); 72 return (gpio1->pinstaterd >> gpio) & 0x01;
73} 73}
74 74
75static void au1xxx_gpio1_write(unsigned gpio, int value) 75static void au1xxx_gpio1_write(unsigned gpio, int value)
@@ -104,7 +104,6 @@ int au1xxx_gpio_get_value(unsigned gpio)
104 else 104 else
105 return au1xxx_gpio1_read(gpio); 105 return au1xxx_gpio1_read(gpio);
106} 106}
107
108EXPORT_SYMBOL(au1xxx_gpio_get_value); 107EXPORT_SYMBOL(au1xxx_gpio_get_value);
109 108
110void au1xxx_gpio_set_value(unsigned gpio, int value) 109void au1xxx_gpio_set_value(unsigned gpio, int value)
@@ -118,7 +117,6 @@ void au1xxx_gpio_set_value(unsigned gpio, int value)
118 else 117 else
119 au1xxx_gpio1_write(gpio, value); 118 au1xxx_gpio1_write(gpio, value);
120} 119}
121
122EXPORT_SYMBOL(au1xxx_gpio_set_value); 120EXPORT_SYMBOL(au1xxx_gpio_set_value);
123 121
124int au1xxx_gpio_direction_input(unsigned gpio) 122int au1xxx_gpio_direction_input(unsigned gpio)
@@ -132,7 +130,6 @@ int au1xxx_gpio_direction_input(unsigned gpio)
132 130
133 return au1xxx_gpio1_direction_input(gpio); 131 return au1xxx_gpio1_direction_input(gpio);
134} 132}
135
136EXPORT_SYMBOL(au1xxx_gpio_direction_input); 133EXPORT_SYMBOL(au1xxx_gpio_direction_input);
137 134
138int au1xxx_gpio_direction_output(unsigned gpio, int value) 135int au1xxx_gpio_direction_output(unsigned gpio, int value)
@@ -146,5 +143,4 @@ int au1xxx_gpio_direction_output(unsigned gpio, int value)
146 143
147 return au1xxx_gpio1_direction_output(gpio, value); 144 return au1xxx_gpio1_direction_output(gpio, value);
148} 145}
149
150EXPORT_SYMBOL(au1xxx_gpio_direction_output); 146EXPORT_SYMBOL(au1xxx_gpio_direction_output);
diff --git a/arch/mips/au1000/common/irq.c b/arch/mips/au1000/common/irq.c
index f0626992fd75..40c6ceceb5f9 100644
--- a/arch/mips/au1000/common/irq.c
+++ b/arch/mips/au1000/common/irq.c
@@ -210,10 +210,8 @@ static inline void mask_and_ack_either_edge_irq(unsigned int irq_nr)
210 au_sync(); 210 au_sync();
211} 211}
212 212
213
214static inline void mask_and_ack_level_irq(unsigned int irq_nr) 213static inline void mask_and_ack_level_irq(unsigned int irq_nr)
215{ 214{
216
217 local_disable_irq(irq_nr); 215 local_disable_irq(irq_nr);
218 au_sync(); 216 au_sync();
219#if defined(CONFIG_MIPS_PB1000) 217#if defined(CONFIG_MIPS_PB1000)
@@ -263,14 +261,14 @@ void restore_local_and_enable(int controller, unsigned long mask)
263 unsigned long flags, new_mask; 261 unsigned long flags, new_mask;
264 262
265 spin_lock_irqsave(&irq_lock, flags); 263 spin_lock_irqsave(&irq_lock, flags);
266 for (i = 0; i < 32; i++) { 264 for (i = 0; i < 32; i++)
267 if (mask & (1 << i)) { 265 if (mask & (1 << i)) {
268 if (controller) 266 if (controller)
269 local_enable_irq(i + 32); 267 local_enable_irq(i + 32);
270 else 268 else
271 local_enable_irq(i); 269 local_enable_irq(i);
272 } 270 }
273 } 271
274 if (controller) 272 if (controller)
275 new_mask = au_readl(IC1_MASKSET); 273 new_mask = au_readl(IC1_MASKSET);
276 else 274 else
diff --git a/arch/mips/au1000/common/pci.c b/arch/mips/au1000/common/pci.c
index 7e966b31e3e1..7866cf50cf99 100644
--- a/arch/mips/au1000/common/pci.c
+++ b/arch/mips/au1000/common/pci.c
@@ -2,9 +2,8 @@
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * Alchemy/AMD Au1x00 PCI support. 3 * Alchemy/AMD Au1x00 PCI support.
4 * 4 *
5 * Copyright 2001-2003, 2007 MontaVista Software Inc. 5 * Copyright 2001-2003, 2007-2008 MontaVista Software Inc.
6 * Author: MontaVista Software, Inc. 6 * Author: MontaVista Software, Inc. <source@mvista.com>
7 * ppopov@mvista.com or source@mvista.com
8 * 7 *
9 * Copyright (C) 2004 by Ralf Baechle (ralf@linux-mips.org) 8 * Copyright (C) 2004 by Ralf Baechle (ralf@linux-mips.org)
10 * 9 *
@@ -86,9 +85,9 @@ static int __init au1x_pci_setup(void)
86 u32 prid = read_c0_prid(); 85 u32 prid = read_c0_prid();
87 86
88 if ((prid & 0xFF000000) == 0x01000000 && prid < 0x01030202) { 87 if ((prid & 0xFF000000) == 0x01000000 && prid < 0x01030202) {
89 au_writel((1 << 16) | au_readl(Au1500_PCI_CFG), 88 au_writel((1 << 16) | au_readl(Au1500_PCI_CFG),
90 Au1500_PCI_CFG); 89 Au1500_PCI_CFG);
91 printk("Non-coherent PCI accesses enabled\n"); 90 printk(KERN_INFO "Non-coherent PCI accesses enabled\n");
92 } 91 }
93 } 92 }
94#endif 93#endif
diff --git a/arch/mips/au1000/common/platform.c b/arch/mips/au1000/common/platform.c
index 31d2a2270878..8cae7753ef79 100644
--- a/arch/mips/au1000/common/platform.c
+++ b/arch/mips/au1000/common/platform.c
@@ -269,8 +269,8 @@ static struct platform_device au1x00_pcmcia_device = {
269#ifdef SMBUS_PSC_BASE 269#ifdef SMBUS_PSC_BASE
270static struct resource pbdb_smbus_resources[] = { 270static struct resource pbdb_smbus_resources[] = {
271 { 271 {
272 .start = SMBUS_PSC_BASE, 272 .start = CPHYSADDR(SMBUS_PSC_BASE),
273 .end = SMBUS_PSC_BASE + 0x24 - 1, 273 .end = CPHYSADDR(SMBUS_PSC_BASE + 0xfffff),
274 .flags = IORESOURCE_MEM, 274 .flags = IORESOURCE_MEM,
275 }, 275 },
276}; 276};
@@ -302,16 +302,17 @@ static struct platform_device *au1xxx_platform_devices[] __initdata = {
302#endif 302#endif
303}; 303};
304 304
305int __init au1xxx_platform_init(void) 305static int __init au1xxx_platform_init(void)
306{ 306{
307 unsigned int uartclk = get_au1x00_uart_baud_base() * 16; 307 unsigned int uartclk = get_au1x00_uart_baud_base() * 16;
308 int i; 308 int i;
309 309
310 /* Fill up uartclk. */ 310 /* Fill up uartclk. */
311 for (i = 0; au1x00_uart_data[i].flags ; i++) 311 for (i = 0; au1x00_uart_data[i].flags; i++)
312 au1x00_uart_data[i].uartclk = uartclk; 312 au1x00_uart_data[i].uartclk = uartclk;
313 313
314 return platform_add_devices(au1xxx_platform_devices, ARRAY_SIZE(au1xxx_platform_devices)); 314 return platform_add_devices(au1xxx_platform_devices,
315 ARRAY_SIZE(au1xxx_platform_devices));
315} 316}
316 317
317arch_initcall(au1xxx_platform_init); 318arch_initcall(au1xxx_platform_init);
diff --git a/arch/mips/au1000/common/power.c b/arch/mips/au1000/common/power.c
index a8cd2c1b9e1b..2166b9e1e80c 100644
--- a/arch/mips/au1000/common/power.c
+++ b/arch/mips/au1000/common/power.c
@@ -1,10 +1,9 @@
1/* 1/*
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * Au1000 Power Management routines. 3 * Au1xx0 Power Management routines.
4 * 4 *
5 * Copyright 2001 MontaVista Software Inc. 5 * Copyright 2001, 2008 MontaVista Software Inc.
6 * Author: MontaVista Software, Inc. 6 * Author: MontaVista Software, Inc. <source@mvista.com>
7 * ppopov@mvista.com or source@mvista.com
8 * 7 *
9 * Some of the routines are right out of init/main.c, whose 8 * Some of the routines are right out of init/main.c, whose
10 * copyrights apply here. 9 * copyrights apply here.
@@ -43,10 +42,10 @@
43#ifdef CONFIG_PM 42#ifdef CONFIG_PM
44 43
45#define DEBUG 1 44#define DEBUG 1
46#ifdef DEBUG 45#ifdef DEBUG
47# define DPRINTK(fmt, args...) printk("%s: " fmt, __func__, ## args) 46#define DPRINTK(fmt, args...) printk(KERN_DEBUG "%s: " fmt, __func__, ## args)
48#else 47#else
49# define DPRINTK(fmt, args...) 48#define DPRINTK(fmt, args...)
50#endif 49#endif
51 50
52static void au1000_calibrate_delay(void); 51static void au1000_calibrate_delay(void);
@@ -57,7 +56,8 @@ extern void local_enable_irq(unsigned int irq_nr);
57 56
58static DEFINE_SPINLOCK(pm_lock); 57static DEFINE_SPINLOCK(pm_lock);
59 58
60/* We need to save/restore a bunch of core registers that are 59/*
60 * We need to save/restore a bunch of core registers that are
61 * either volatile or reset to some state across a processor sleep. 61 * either volatile or reset to some state across a processor sleep.
62 * If reading a register doesn't provide a proper result for a 62 * If reading a register doesn't provide a proper result for a
63 * later restore, we have to provide a function for loading that 63 * later restore, we have to provide a function for loading that
@@ -78,24 +78,25 @@ static unsigned int sleep_usbhost_enable;
78static unsigned int sleep_usbdev_enable; 78static unsigned int sleep_usbdev_enable;
79static unsigned int sleep_static_memctlr[4][3]; 79static unsigned int sleep_static_memctlr[4][3];
80 80
81/* Define this to cause the value you write to /proc/sys/pm/sleep to 81/*
82 * Define this to cause the value you write to /proc/sys/pm/sleep to
82 * set the TOY timer for the amount of time you want to sleep. 83 * set the TOY timer for the amount of time you want to sleep.
83 * This is done mainly for testing, but may be useful in other cases. 84 * This is done mainly for testing, but may be useful in other cases.
84 * The value is number of 32KHz ticks to sleep. 85 * The value is number of 32KHz ticks to sleep.
85 */ 86 */
86#define SLEEP_TEST_TIMEOUT 1 87#define SLEEP_TEST_TIMEOUT 1
87#ifdef SLEEP_TEST_TIMEOUT 88#ifdef SLEEP_TEST_TIMEOUT
88static int sleep_ticks; 89static int sleep_ticks;
89void wakeup_counter0_set(int ticks); 90void wakeup_counter0_set(int ticks);
90#endif 91#endif
91 92
92static void 93static void save_core_regs(void)
93save_core_regs(void)
94{ 94{
95 extern void save_au1xxx_intctl(void); 95 extern void save_au1xxx_intctl(void);
96 extern void pm_eth0_shutdown(void); 96 extern void pm_eth0_shutdown(void);
97 97
98 /* Do the serial ports.....these really should be a pm_* 98 /*
99 * Do the serial ports.....these really should be a pm_*
99 * registered function by the driver......but of course the 100 * registered function by the driver......but of course the
100 * standard serial driver doesn't understand our Au1xxx 101 * standard serial driver doesn't understand our Au1xxx
101 * unique registers. 102 * unique registers.
@@ -106,27 +107,24 @@ save_core_regs(void)
106 sleep_uart0_clkdiv = au_readl(UART0_ADDR + UART_CLK); 107 sleep_uart0_clkdiv = au_readl(UART0_ADDR + UART_CLK);
107 sleep_uart0_enable = au_readl(UART0_ADDR + UART_MOD_CNTRL); 108 sleep_uart0_enable = au_readl(UART0_ADDR + UART_MOD_CNTRL);
108 109
109 /* Shutdown USB host/device. 110 /* Shutdown USB host/device. */
110 */
111 sleep_usbhost_enable = au_readl(USB_HOST_CONFIG); 111 sleep_usbhost_enable = au_readl(USB_HOST_CONFIG);
112 112
113 /* There appears to be some undocumented reset register.... 113 /* There appears to be some undocumented reset register.... */
114 */
115 au_writel(0, 0xb0100004); au_sync(); 114 au_writel(0, 0xb0100004); au_sync();
116 au_writel(0, USB_HOST_CONFIG); au_sync(); 115 au_writel(0, USB_HOST_CONFIG); au_sync();
117 116
118 sleep_usbdev_enable = au_readl(USBD_ENABLE); 117 sleep_usbdev_enable = au_readl(USBD_ENABLE);
119 au_writel(0, USBD_ENABLE); au_sync(); 118 au_writel(0, USBD_ENABLE); au_sync();
120 119
121 /* Save interrupt controller state. 120 /* Save interrupt controller state. */
122 */
123 save_au1xxx_intctl(); 121 save_au1xxx_intctl();
124 122
125 /* Clocks and PLLs. 123 /* Clocks and PLLs. */
126 */
127 sleep_aux_pll_cntrl = au_readl(SYS_AUXPLL); 124 sleep_aux_pll_cntrl = au_readl(SYS_AUXPLL);
128 125
129 /* We don't really need to do this one, but unless we 126 /*
127 * We don't really need to do this one, but unless we
130 * write it again it won't have a valid value if we 128 * write it again it won't have a valid value if we
131 * happen to read it. 129 * happen to read it.
132 */ 130 */
@@ -134,8 +132,7 @@ save_core_regs(void)
134 132
135 sleep_pin_function = au_readl(SYS_PINFUNC); 133 sleep_pin_function = au_readl(SYS_PINFUNC);
136 134
137 /* Save the static memory controller configuration. 135 /* Save the static memory controller configuration. */
138 */
139 sleep_static_memctlr[0][0] = au_readl(MEM_STCFG0); 136 sleep_static_memctlr[0][0] = au_readl(MEM_STCFG0);
140 sleep_static_memctlr[0][1] = au_readl(MEM_STTIME0); 137 sleep_static_memctlr[0][1] = au_readl(MEM_STTIME0);
141 sleep_static_memctlr[0][2] = au_readl(MEM_STADDR0); 138 sleep_static_memctlr[0][2] = au_readl(MEM_STADDR0);
@@ -150,8 +147,7 @@ save_core_regs(void)
150 sleep_static_memctlr[3][2] = au_readl(MEM_STADDR3); 147 sleep_static_memctlr[3][2] = au_readl(MEM_STADDR3);
151} 148}
152 149
153static void 150static void restore_core_regs(void)
154restore_core_regs(void)
155{ 151{
156 extern void restore_au1xxx_intctl(void); 152 extern void restore_au1xxx_intctl(void);
157 extern void wakeup_counter0_adjust(void); 153 extern void wakeup_counter0_adjust(void);
@@ -160,8 +156,7 @@ restore_core_regs(void)
160 au_writel(sleep_cpu_pll_cntrl, SYS_CPUPLL); au_sync(); 156 au_writel(sleep_cpu_pll_cntrl, SYS_CPUPLL); au_sync();
161 au_writel(sleep_pin_function, SYS_PINFUNC); au_sync(); 157 au_writel(sleep_pin_function, SYS_PINFUNC); au_sync();
162 158
163 /* Restore the static memory controller configuration. 159 /* Restore the static memory controller configuration. */
164 */
165 au_writel(sleep_static_memctlr[0][0], MEM_STCFG0); 160 au_writel(sleep_static_memctlr[0][0], MEM_STCFG0);
166 au_writel(sleep_static_memctlr[0][1], MEM_STTIME0); 161 au_writel(sleep_static_memctlr[0][1], MEM_STTIME0);
167 au_writel(sleep_static_memctlr[0][2], MEM_STADDR0); 162 au_writel(sleep_static_memctlr[0][2], MEM_STADDR0);
@@ -175,7 +170,8 @@ restore_core_regs(void)
175 au_writel(sleep_static_memctlr[3][1], MEM_STTIME3); 170 au_writel(sleep_static_memctlr[3][1], MEM_STTIME3);
176 au_writel(sleep_static_memctlr[3][2], MEM_STADDR3); 171 au_writel(sleep_static_memctlr[3][2], MEM_STADDR3);
177 172
178 /* Enable the UART if it was enabled before sleep. 173 /*
174 * Enable the UART if it was enabled before sleep.
179 * I guess I should define module control bits........ 175 * I guess I should define module control bits........
180 */ 176 */
181 if (sleep_uart0_enable & 0x02) { 177 if (sleep_uart0_enable & 0x02) {
@@ -202,7 +198,7 @@ void wakeup_from_suspend(void)
202int au_sleep(void) 198int au_sleep(void)
203{ 199{
204 unsigned long wakeup, flags; 200 unsigned long wakeup, flags;
205 extern void save_and_sleep(void); 201 extern void save_and_sleep(void);
206 202
207 spin_lock_irqsave(&pm_lock, flags); 203 spin_lock_irqsave(&pm_lock, flags);
208 204
@@ -210,23 +206,22 @@ int au_sleep(void)
210 206
211 flush_cache_all(); 207 flush_cache_all();
212 208
213 /** The code below is all system dependent and we should probably 209 /**
210 ** The code below is all system dependent and we should probably
214 ** have a function call out of here to set this up. You need 211 ** have a function call out of here to set this up. You need
215 ** to configure the GPIO or timer interrupts that will bring 212 ** to configure the GPIO or timer interrupts that will bring
216 ** you out of sleep. 213 ** you out of sleep.
217 ** For testing, the TOY counter wakeup is useful. 214 ** For testing, the TOY counter wakeup is useful.
218 **/ 215 **/
219
220#if 0 216#if 0
221 au_writel(au_readl(SYS_PINSTATERD) & ~(1 << 11), SYS_PINSTATERD); 217 au_writel(au_readl(SYS_PINSTATERD) & ~(1 << 11), SYS_PINSTATERD);
222 218
223 /* gpio 6 can cause a wake up event */ 219 /* GPIO 6 can cause a wake up event */
224 wakeup = au_readl(SYS_WAKEMSK); 220 wakeup = au_readl(SYS_WAKEMSK);
225 wakeup &= ~(1 << 8); /* turn off match20 wakeup */ 221 wakeup &= ~(1 << 8); /* turn off match20 wakeup */
226 wakeup |= 1 << 6; /* turn on gpio 6 wakeup */ 222 wakeup |= 1 << 6; /* turn on GPIO 6 wakeup */
227#else 223#else
228 /* For testing, allow match20 to wake us up. 224 /* For testing, allow match20 to wake us up. */
229 */
230#ifdef SLEEP_TEST_TIMEOUT 225#ifdef SLEEP_TEST_TIMEOUT
231 wakeup_counter0_set(sleep_ticks); 226 wakeup_counter0_set(sleep_ticks);
232#endif 227#endif
@@ -240,7 +235,8 @@ int au_sleep(void)
240 235
241 save_and_sleep(); 236 save_and_sleep();
242 237
243 /* after a wakeup, the cpu vectors back to 0x1fc00000 so 238 /*
239 * After a wakeup, the cpu vectors back to 0x1fc00000, so
244 * it's up to the boot code to get us back here. 240 * it's up to the boot code to get us back here.
245 */ 241 */
246 restore_core_regs(); 242 restore_core_regs();
@@ -248,24 +244,22 @@ int au_sleep(void)
248 return 0; 244 return 0;
249} 245}
250 246
251static int pm_do_sleep(ctl_table * ctl, int write, struct file *file, 247static int pm_do_sleep(ctl_table *ctl, int write, struct file *file,
252 void __user *buffer, size_t * len, loff_t *ppos) 248 void __user *buffer, size_t *len, loff_t *ppos)
253{ 249{
254#ifdef SLEEP_TEST_TIMEOUT 250#ifdef SLEEP_TEST_TIMEOUT
255#define TMPBUFLEN2 16 251#define TMPBUFLEN2 16
256 char buf[TMPBUFLEN2], *p; 252 char buf[TMPBUFLEN2], *p;
257#endif 253#endif
258 254
259 if (!write) { 255 if (!write)
260 *len = 0; 256 *len = 0;
261 } else { 257 else {
262#ifdef SLEEP_TEST_TIMEOUT 258#ifdef SLEEP_TEST_TIMEOUT
263 if (*len > TMPBUFLEN2 - 1) { 259 if (*len > TMPBUFLEN2 - 1)
264 return -EFAULT; 260 return -EFAULT;
265 } 261 if (copy_from_user(buf, buffer, *len))
266 if (copy_from_user(buf, buffer, *len)) {
267 return -EFAULT; 262 return -EFAULT;
268 }
269 buf[*len] = 0; 263 buf[*len] = 0;
270 p = buf; 264 p = buf;
271 sleep_ticks = simple_strtoul(p, &p, 0); 265 sleep_ticks = simple_strtoul(p, &p, 0);
@@ -276,8 +270,8 @@ static int pm_do_sleep(ctl_table * ctl, int write, struct file *file,
276 return 0; 270 return 0;
277} 271}
278 272
279static int pm_do_freq(ctl_table * ctl, int write, struct file *file, 273static int pm_do_freq(ctl_table *ctl, int write, struct file *file,
280 void __user *buffer, size_t * len, loff_t *ppos) 274 void __user *buffer, size_t *len, loff_t *ppos)
281{ 275{
282 int retval = 0, i; 276 int retval = 0, i;
283 unsigned long val, pll; 277 unsigned long val, pll;
@@ -285,14 +279,14 @@ static int pm_do_freq(ctl_table * ctl, int write, struct file *file,
285#define MAX_CPU_FREQ 396 279#define MAX_CPU_FREQ 396
286 char buf[TMPBUFLEN], *p; 280 char buf[TMPBUFLEN], *p;
287 unsigned long flags, intc0_mask, intc1_mask; 281 unsigned long flags, intc0_mask, intc1_mask;
288 unsigned long old_baud_base, old_cpu_freq, baud_rate, old_clk, 282 unsigned long old_baud_base, old_cpu_freq, old_clk, old_refresh;
289 old_refresh;
290 unsigned long new_baud_base, new_cpu_freq, new_clk, new_refresh; 283 unsigned long new_baud_base, new_cpu_freq, new_clk, new_refresh;
284 unsigned long baud_rate;
291 285
292 spin_lock_irqsave(&pm_lock, flags); 286 spin_lock_irqsave(&pm_lock, flags);
293 if (!write) { 287 if (!write)
294 *len = 0; 288 *len = 0;
295 } else { 289 else {
296 /* Parse the new frequency */ 290 /* Parse the new frequency */
297 if (*len > TMPBUFLEN - 1) { 291 if (*len > TMPBUFLEN - 1) {
298 spin_unlock_irqrestore(&pm_lock, flags); 292 spin_unlock_irqrestore(&pm_lock, flags);
@@ -312,7 +306,7 @@ static int pm_do_freq(ctl_table * ctl, int write, struct file *file,
312 306
313 pll = val / 12; 307 pll = val / 12;
314 if ((pll > 33) || (pll < 7)) { /* 396 MHz max, 84 MHz min */ 308 if ((pll > 33) || (pll < 7)) { /* 396 MHz max, 84 MHz min */
315 /* revisit this for higher speed cpus */ 309 /* Revisit this for higher speed CPUs */
316 spin_unlock_irqrestore(&pm_lock, flags); 310 spin_unlock_irqrestore(&pm_lock, flags);
317 return -EFAULT; 311 return -EFAULT;
318 } 312 }
@@ -321,30 +315,28 @@ static int pm_do_freq(ctl_table * ctl, int write, struct file *file,
321 old_cpu_freq = get_au1x00_speed(); 315 old_cpu_freq = get_au1x00_speed();
322 316
323 new_cpu_freq = pll * 12 * 1000000; 317 new_cpu_freq = pll * 12 * 1000000;
324 new_baud_base = (new_cpu_freq / (2 * ((int)(au_readl(SYS_POWERCTRL)&0x03) + 2) * 16)); 318 new_baud_base = (new_cpu_freq / (2 * ((int)(au_readl(SYS_POWERCTRL)
319 & 0x03) + 2) * 16));
325 set_au1x00_speed(new_cpu_freq); 320 set_au1x00_speed(new_cpu_freq);
326 set_au1x00_uart_baud_base(new_baud_base); 321 set_au1x00_uart_baud_base(new_baud_base);
327 322
328 old_refresh = au_readl(MEM_SDREFCFG) & 0x1ffffff; 323 old_refresh = au_readl(MEM_SDREFCFG) & 0x1ffffff;
329 new_refresh = 324 new_refresh = ((old_refresh * new_cpu_freq) / old_cpu_freq) |
330 ((old_refresh * new_cpu_freq) / 325 (au_readl(MEM_SDREFCFG) & ~0x1ffffff);
331 old_cpu_freq) | (au_readl(MEM_SDREFCFG) & ~0x1ffffff);
332 326
333 au_writel(pll, SYS_CPUPLL); 327 au_writel(pll, SYS_CPUPLL);
334 au_sync_delay(1); 328 au_sync_delay(1);
335 au_writel(new_refresh, MEM_SDREFCFG); 329 au_writel(new_refresh, MEM_SDREFCFG);
336 au_sync_delay(1); 330 au_sync_delay(1);
337 331
338 for (i = 0; i < 4; i++) { 332 for (i = 0; i < 4; i++)
339 if (au_readl 333 if (au_readl(UART_BASE + UART_MOD_CNTRL +
340 (UART_BASE + UART_MOD_CNTRL + 334 i * 0x00100000) == 3) {
341 i * 0x00100000) == 3) { 335 old_clk = au_readl(UART_BASE + UART_CLK +
342 old_clk = 336 i * 0x00100000);
343 au_readl(UART_BASE + UART_CLK +
344 i * 0x00100000);
345 // baud_rate = baud_base/clk
346 baud_rate = old_baud_base / old_clk; 337 baud_rate = old_baud_base / old_clk;
347 /* we won't get an exact baud rate and the error 338 /*
339 * We won't get an exact baud rate and the error
348 * could be significant enough that our new 340 * could be significant enough that our new
349 * calculation will result in a clock that will 341 * calculation will result in a clock that will
350 * give us a baud rate that's too far off from 342 * give us a baud rate that's too far off from
@@ -359,18 +351,14 @@ static int pm_do_freq(ctl_table * ctl, int write, struct file *file,
359 else if (baud_rate > 17000) 351 else if (baud_rate > 17000)
360 baud_rate = 19200; 352 baud_rate = 19200;
361 else 353 else
362 (baud_rate = 9600); 354 baud_rate = 9600;
363 // new_clk = new_baud_base/baud_rate
364 new_clk = new_baud_base / baud_rate; 355 new_clk = new_baud_base / baud_rate;
365 au_writel(new_clk, 356 au_writel(new_clk, UART_BASE + UART_CLK +
366 UART_BASE + UART_CLK + 357 i * 0x00100000);
367 i * 0x00100000);
368 au_sync_delay(10); 358 au_sync_delay(10);
369 } 359 }
370 }
371 } 360 }
372 361
373
374 /* 362 /*
375 * We don't want _any_ interrupts other than match20. Otherwise our 363 * We don't want _any_ interrupts other than match20. Otherwise our
376 * au1000_calibrate_delay() calculation will be off, potentially a lot. 364 * au1000_calibrate_delay() calculation will be off, potentially a lot.
@@ -428,14 +416,15 @@ static int __init pm_init(void)
428 416
429__initcall(pm_init); 417__initcall(pm_init);
430 418
431
432/* 419/*
433 * This is right out of init/main.c 420 * This is right out of init/main.c
434 */ 421 */
435 422
436/* This is the number of bits of precision for the loops_per_jiffy. Each 423/*
437 bit takes on average 1.5/HZ seconds. This (like the original) is a little 424 * This is the number of bits of precision for the loops_per_jiffy.
438 better than 1% */ 425 * Each bit takes on average 1.5/HZ seconds. This (like the original)
426 * is a little better than 1%.
427 */
439#define LPS_PREC 8 428#define LPS_PREC 8
440 429
441static void au1000_calibrate_delay(void) 430static void au1000_calibrate_delay(void)
@@ -443,14 +432,14 @@ static void au1000_calibrate_delay(void)
443 unsigned long ticks, loopbit; 432 unsigned long ticks, loopbit;
444 int lps_precision = LPS_PREC; 433 int lps_precision = LPS_PREC;
445 434
446 loops_per_jiffy = (1 << 12); 435 loops_per_jiffy = 1 << 12;
447 436
448 while (loops_per_jiffy <<= 1) { 437 while (loops_per_jiffy <<= 1) {
449 /* wait for "start of" clock tick */ 438 /* Wait for "start of" clock tick */
450 ticks = jiffies; 439 ticks = jiffies;
451 while (ticks == jiffies) 440 while (ticks == jiffies)
452 /* nothing */ ; 441 /* nothing */ ;
453 /* Go .. */ 442 /* Go ... */
454 ticks = jiffies; 443 ticks = jiffies;
455 __delay(loops_per_jiffy); 444 __delay(loops_per_jiffy);
456 ticks = jiffies - ticks; 445 ticks = jiffies - ticks;
@@ -458,8 +447,10 @@ static void au1000_calibrate_delay(void)
458 break; 447 break;
459 } 448 }
460 449
461/* Do a binary approximation to get loops_per_jiffy set to equal one clock 450 /*
462 (up to lps_precision bits) */ 451 * Do a binary approximation to get loops_per_jiffy set to be equal
452 * one clock (up to lps_precision bits)
453 */
463 loops_per_jiffy >>= 1; 454 loops_per_jiffy >>= 1;
464 loopbit = loops_per_jiffy; 455 loopbit = loops_per_jiffy;
465 while (lps_precision-- && (loopbit >>= 1)) { 456 while (lps_precision-- && (loopbit >>= 1)) {
@@ -472,4 +463,4 @@ static void au1000_calibrate_delay(void)
472 loops_per_jiffy &= ~loopbit; 463 loops_per_jiffy &= ~loopbit;
473 } 464 }
474} 465}
475#endif /* CONFIG_PM */ 466#endif /* CONFIG_PM */
diff --git a/arch/mips/au1000/common/prom.c b/arch/mips/au1000/common/prom.c
index f10af829e4ec..18b310b475ca 100644
--- a/arch/mips/au1000/common/prom.c
+++ b/arch/mips/au1000/common/prom.c
@@ -3,9 +3,8 @@
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * PROM library initialisation code, supports YAMON and U-Boot. 4 * PROM library initialisation code, supports YAMON and U-Boot.
5 * 5 *
6 * Copyright 2000, 2001, 2006 MontaVista Software Inc. 6 * Copyright 2000-2001, 2006, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This file was derived from Carsten Langgaard's 9 * This file was derived from Carsten Langgaard's
11 * arch/mips/mips-boards/xx files. 10 * arch/mips/mips-boards/xx files.
@@ -57,7 +56,7 @@ void prom_init_cmdline(void)
57 actr = 1; /* Always ignore argv[0] */ 56 actr = 1; /* Always ignore argv[0] */
58 57
59 cp = &(arcs_cmdline[0]); 58 cp = &(arcs_cmdline[0]);
60 while(actr < prom_argc) { 59 while (actr < prom_argc) {
61 strcpy(cp, prom_argv[actr]); 60 strcpy(cp, prom_argv[actr]);
62 cp += strlen(prom_argv[actr]); 61 cp += strlen(prom_argv[actr]);
63 *cp++ = ' '; 62 *cp++ = ' ';
@@ -84,10 +83,8 @@ char *prom_getenv(char *envname)
84 if (yamon) { 83 if (yamon) {
85 if (strcmp(envname, *env++) == 0) 84 if (strcmp(envname, *env++) == 0)
86 return *env; 85 return *env;
87 } else { 86 } else if (strncmp(envname, *env, i) == 0 && (*env)[i] == '=')
88 if (strncmp(envname, *env, i) == 0 && (*env)[i] == '=') 87 return *env + i + 1;
89 return *env + i + 1;
90 }
91 env++; 88 env++;
92 } 89 }
93 90
@@ -110,13 +107,13 @@ static inline void str2eaddr(unsigned char *ea, unsigned char *str)
110{ 107{
111 int i; 108 int i;
112 109
113 for(i = 0; i < 6; i++) { 110 for (i = 0; i < 6; i++) {
114 unsigned char num; 111 unsigned char num;
115 112
116 if((*str == '.') || (*str == ':')) 113 if ((*str == '.') || (*str == ':'))
117 str++; 114 str++;
118 num = str2hexnum(*str++) << 4; 115 num = str2hexnum(*str++) << 4;
119 num |= (str2hexnum(*str++)); 116 num |= str2hexnum(*str++);
120 ea[i] = num; 117 ea[i] = num;
121 } 118 }
122} 119}
diff --git a/arch/mips/au1000/common/puts.c b/arch/mips/au1000/common/puts.c
index e34c67e89293..55bbe24d45b6 100644
--- a/arch/mips/au1000/common/puts.c
+++ b/arch/mips/au1000/common/puts.c
@@ -1,11 +1,10 @@
1/* 1/*
2 * 2 *
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * Low level uart routines to directly access a 16550 uart. 4 * Low level UART routines to directly access Alchemy UART.
5 * 5 *
6 * Copyright 2001 MontaVista Software Inc. 6 * Copyright 2001, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This program is free software; you can redistribute it and/or modify it 9 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the 10 * under the terms of the GNU General Public License as published by the
@@ -40,12 +39,12 @@
40 39
41static volatile unsigned long * const com1 = (unsigned long *)SERIAL_BASE; 40static volatile unsigned long * const com1 = (unsigned long *)SERIAL_BASE;
42 41
43
44#ifdef SLOW_DOWN 42#ifdef SLOW_DOWN
45static inline void slow_down(void) 43static inline void slow_down(void)
46{ 44{
47 int k; 45 int k;
48 for (k=0; k<10000; k++); 46
47 for (k = 0; k < 10000; k++);
49} 48}
50#else 49#else
51#define slow_down() 50#define slow_down()
@@ -54,16 +53,16 @@ static inline void slow_down(void)
54void 53void
55prom_putchar(const unsigned char c) 54prom_putchar(const unsigned char c)
56{ 55{
57 unsigned char ch; 56 unsigned char ch;
58 int i = 0; 57 int i = 0;
58
59 do {
60 ch = com1[SER_CMD];
61 slow_down();
62 i++;
63 if (i > TIMEOUT)
64 break;
65 } while (0 == (ch & TX_BUSY));
59 66
60 do { 67 com1[SER_DATA] = c;
61 ch = com1[SER_CMD];
62 slow_down();
63 i++;
64 if (i>TIMEOUT) {
65 break;
66 }
67 } while (0 == (ch & TX_BUSY));
68 com1[SER_DATA] = c;
69} 68}
diff --git a/arch/mips/au1000/common/reset.c b/arch/mips/au1000/common/reset.c
index 60cec537c745..d555429c8d6f 100644
--- a/arch/mips/au1000/common/reset.c
+++ b/arch/mips/au1000/common/reset.c
@@ -1,11 +1,10 @@
1/* 1/*
2 * 2 *
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * Au1000 reset routines. 4 * Au1xx0 reset routines.
5 * 5 *
6 * Copyright 2001 MontaVista Software Inc. 6 * Copyright 2001, 2006, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This program is free software; you can redistribute it and/or modify it 9 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the 10 * under the terms of the GNU General Public License as published by the
@@ -28,10 +27,11 @@
28 * 675 Mass Ave, Cambridge, MA 02139, USA. 27 * 675 Mass Ave, Cambridge, MA 02139, USA.
29 */ 28 */
30 29
30#include <asm/cacheflush.h>
31
31#include <asm/mach-au1x00/au1000.h> 32#include <asm/mach-au1x00/au1000.h>
32 33
33extern int au_sleep(void); 34extern int au_sleep(void);
34extern void (*flush_cache_all)(void);
35 35
36void au1000_restart(char *command) 36void au1000_restart(char *command)
37{ 37{
@@ -40,8 +40,8 @@ void au1000_restart(char *command)
40 u32 prid = read_c0_prid(); 40 u32 prid = read_c0_prid();
41 41
42 printk(KERN_NOTICE "\n** Resetting Integrated Peripherals\n"); 42 printk(KERN_NOTICE "\n** Resetting Integrated Peripherals\n");
43 switch (prid & 0xFF000000) 43
44 { 44 switch (prid & 0xFF000000) {
45 case 0x00000000: /* Au1000 */ 45 case 0x00000000: /* Au1000 */
46 au_writel(0x02, 0xb0000010); /* ac97_enable */ 46 au_writel(0x02, 0xb0000010); /* ac97_enable */
47 au_writel(0x08, 0xb017fffc); /* usbh_enable - early errata */ 47 au_writel(0x08, 0xb017fffc); /* usbh_enable - early errata */
@@ -138,9 +138,6 @@ void au1000_restart(char *command)
138 au_writel(0x00, 0xb1900064); /* sys_auxpll */ 138 au_writel(0x00, 0xb1900064); /* sys_auxpll */
139 au_writel(0x00, 0xb1900100); /* sys_pininputen */ 139 au_writel(0x00, 0xb1900100); /* sys_pininputen */
140 break; 140 break;
141
142 default:
143 break;
144 } 141 }
145 142
146 set_c0_status(ST0_BEV | ST0_ERL); 143 set_c0_status(ST0_BEV | ST0_ERL);
@@ -158,25 +155,25 @@ void au1000_restart(char *command)
158void au1000_halt(void) 155void au1000_halt(void)
159{ 156{
160#if defined(CONFIG_MIPS_PB1550) || defined(CONFIG_MIPS_DB1550) 157#if defined(CONFIG_MIPS_PB1550) || defined(CONFIG_MIPS_DB1550)
161 /* power off system */ 158 /* Power off system */
162 printk("\n** Powering off...\n"); 159 printk(KERN_NOTICE "\n** Powering off...\n");
163 au_writew(au_readw(0xAF00001C) | (3<<14), 0xAF00001C); 160 au_writew(au_readw(0xAF00001C) | (3 << 14), 0xAF00001C);
164 au_sync(); 161 au_sync();
165 while(1); /* should not get here */ 162 while (1); /* should not get here */
166#else 163#else
167 printk(KERN_NOTICE "\n** You can safely turn off the power\n"); 164 printk(KERN_NOTICE "\n** You can safely turn off the power\n");
168#ifdef CONFIG_MIPS_MIRAGE 165#ifdef CONFIG_MIPS_MIRAGE
169 au_writel((1 << 26) | (1 << 10), GPIO2_OUTPUT); 166 au_writel((1 << 26) | (1 << 10), GPIO2_OUTPUT);
170#endif 167#endif
171#ifdef CONFIG_MIPS_DB1200 168#ifdef CONFIG_MIPS_DB1200
172 au_writew(au_readw(0xB980001C) | (1<<14), 0xB980001C); 169 au_writew(au_readw(0xB980001C) | (1 << 14), 0xB980001C);
173#endif 170#endif
174#ifdef CONFIG_PM 171#ifdef CONFIG_PM
175 au_sleep(); 172 au_sleep();
176 173
177 /* should not get here */ 174 /* Should not get here */
178 printk(KERN_ERR "Unable to put cpu in sleep mode\n"); 175 printk(KERN_ERR "Unable to put CPU in sleep mode\n");
179 while(1); 176 while (1);
180#else 177#else
181 while (1) 178 while (1)
182 __asm__(".set\tmips3\n\t" 179 __asm__(".set\tmips3\n\t"
diff --git a/arch/mips/au1000/common/setup.c b/arch/mips/au1000/common/setup.c
index 0e86f7a6b4a7..1ac6b06f42a3 100644
--- a/arch/mips/au1000/common/setup.c
+++ b/arch/mips/au1000/common/setup.c
@@ -1,7 +1,6 @@
1/* 1/*
2 * Copyright 2000 MontaVista Software Inc. 2 * Copyright 2000, 2007-2008 MontaVista Software Inc.
3 * Author: MontaVista Software, Inc. 3 * Author: MontaVista Software, Inc. <source@mvista.com
4 * ppopov@mvista.com or source@mvista.com
5 * 4 *
6 * Updates to 2.6, Pete Popov, Embedded Alley Solutions, Inc. 5 * Updates to 2.6, Pete Popov, Embedded Alley Solutions, Inc.
7 * 6 *
@@ -48,7 +47,7 @@ void __init plat_mem_setup(void)
48{ 47{
49 struct cpu_spec *sp; 48 struct cpu_spec *sp;
50 char *argptr; 49 char *argptr;
51 unsigned long prid, cpufreq, bclk = 1; 50 unsigned long prid, cpufreq, bclk;
52 51
53 set_cpuspec(); 52 set_cpuspec();
54 sp = cur_cpu_spec[0]; 53 sp = cur_cpu_spec[0];
@@ -66,42 +65,39 @@ void __init plat_mem_setup(void)
66 cpufreq = (au_readl(SYS_CPUPLL) & 0x3F) * 12; 65 cpufreq = (au_readl(SYS_CPUPLL) & 0x3F) * 12;
67 printk(KERN_INFO "(PRID %08lx) @ %ld MHz\n", prid, cpufreq); 66 printk(KERN_INFO "(PRID %08lx) @ %ld MHz\n", prid, cpufreq);
68 67
69 bclk = sp->cpu_bclk; 68 if (sp->cpu_bclk) {
70 if (bclk)
71 {
72 /* Enable BCLK switching */ 69 /* Enable BCLK switching */
73 bclk = au_readl(0xB190003C); 70 bclk = au_readl(SYS_POWERCTRL);
74 au_writel(bclk | 0x60, 0xB190003C); 71 au_writel(bclk | 0x60, SYS_POWERCTRL);
75 printk("BCLK switching enabled!\n"); 72 printk(KERN_INFO "BCLK switching enabled!\n");
76 } 73 }
77 74
78 if (sp->cpu_od) { 75 if (sp->cpu_od)
79 /* Various early Au1000 Errata corrected by this */ 76 /* Various early Au1xx0 errata corrected by this */
80 set_c0_config(1<<19); /* Set Config[OD] */ 77 set_c0_config(1 << 19); /* Set Config[OD] */
81 } 78 else
82 else {
83 /* Clear to obtain best system bus performance */ 79 /* Clear to obtain best system bus performance */
84 clear_c0_config(1<<19); /* Clear Config[OD] */ 80 clear_c0_config(1 << 19); /* Clear Config[OD] */
85 }
86 81
87 argptr = prom_getcmdline(); 82 argptr = prom_getcmdline();
88 83
89#ifdef CONFIG_SERIAL_8250_CONSOLE 84#ifdef CONFIG_SERIAL_8250_CONSOLE
90 if ((argptr = strstr(argptr, "console=")) == NULL) { 85 argptr = strstr(argptr, "console=");
86 if (argptr == NULL) {
91 argptr = prom_getcmdline(); 87 argptr = prom_getcmdline();
92 strcat(argptr, " console=ttyS0,115200"); 88 strcat(argptr, " console=ttyS0,115200");
93 } 89 }
94#endif 90#endif
95 91
96#ifdef CONFIG_FB_AU1100 92#ifdef CONFIG_FB_AU1100
97 if ((argptr = strstr(argptr, "video=")) == NULL) { 93 argptr = strstr(argptr, "video=");
98 argptr = prom_getcmdline(); 94 if (argptr == NULL) {
99 /* default panel */ 95 argptr = prom_getcmdline();
100 /*strcat(argptr, " video=au1100fb:panel:Sharp_320x240_16");*/ 96 /* default panel */
101 } 97 /*strcat(argptr, " video=au1100fb:panel:Sharp_320x240_16");*/
98 }
102#endif 99#endif
103 100
104
105#if defined(CONFIG_SOUND_AU1X00) && !defined(CONFIG_SOC_AU1000) 101#if defined(CONFIG_SOUND_AU1X00) && !defined(CONFIG_SOC_AU1000)
106 /* au1000 does not support vra, au1500 and au1100 do */ 102 /* au1000 does not support vra, au1500 and au1100 do */
107 strcat(argptr, " au1000_audio=vra"); 103 strcat(argptr, " au1000_audio=vra");
@@ -129,7 +125,7 @@ void __init plat_mem_setup(void)
129/* This routine should be valid for all Au1x based boards */ 125/* This routine should be valid for all Au1x based boards */
130phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size) 126phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size)
131{ 127{
132 /* Don't fixup 36 bit addresses */ 128 /* Don't fixup 36-bit addresses */
133 if ((phys_addr >> 32) != 0) 129 if ((phys_addr >> 32) != 0)
134 return phys_addr; 130 return phys_addr;
135 131
@@ -145,17 +141,17 @@ phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size)
145 } 141 }
146#endif 142#endif
147 143
148 /* All Au1x SOCs have a pcmcia controller */ 144 /*
149 /* We setup our 32 bit pseudo addresses to be equal to the 145 * All Au1xx0 SOCs have a PCMCIA controller.
150 * 36 bit addr >> 4, to make it easier to check the address 146 * We setup our 32-bit pseudo addresses to be equal to the
147 * 36-bit addr >> 4, to make it easier to check the address
151 * and fix it. 148 * and fix it.
152 * The Au1x socket 0 phys attribute address is 0xF 4000 0000. 149 * The PCMCIA socket 0 physical attribute address is 0xF 4000 0000.
153 * The pseudo address we use is 0xF400 0000. Any address over 150 * The pseudo address we use is 0xF400 0000. Any address over
154 * 0xF400 0000 is a pcmcia pseudo address. 151 * 0xF400 0000 is a PCMCIA pseudo address.
155 */ 152 */
156 if ((phys_addr >= 0xF4000000) && (phys_addr < 0xFFFFFFFF)) { 153 if ((phys_addr >= 0xF4000000) && (phys_addr < 0xFFFFFFFF))
157 return (phys_t)(phys_addr << 4); 154 return (phys_t)(phys_addr << 4);
158 }
159 155
160 /* default nop */ 156 /* default nop */
161 return phys_addr; 157 return phys_addr;
diff --git a/arch/mips/au1000/common/time.c b/arch/mips/au1000/common/time.c
index bdb6d73b26fb..563d9390a872 100644
--- a/arch/mips/au1000/common/time.c
+++ b/arch/mips/au1000/common/time.c
@@ -25,11 +25,9 @@
25 * 25 *
26 * Setting up the clock on the MIPS boards. 26 * Setting up the clock on the MIPS boards.
27 * 27 *
28 * Update. Always configure the kernel with CONFIG_NEW_TIME_C. This 28 * We provide the clock interrupt processing and the timer offset compute
29 * will use the user interface gettimeofday() functions from the 29 * functions. If CONFIG_PM is selected, we also ensure the 32KHz timer is
30 * arch/mips/kernel/time.c, and we provide the clock interrupt processing 30 * available. -- Dan
31 * and the timer offset compute functions. If CONFIG_PM is selected,
32 * we also ensure the 32KHz timer is available. -- Dan
33 */ 31 */
34 32
35#include <linux/types.h> 33#include <linux/types.h>
@@ -47,8 +45,7 @@ extern int allow_au1k_wait; /* default off for CP0 Counter */
47#if HZ < 100 || HZ > 1000 45#if HZ < 100 || HZ > 1000
48#error "unsupported HZ value! Must be in [100,1000]" 46#error "unsupported HZ value! Must be in [100,1000]"
49#endif 47#endif
50#define MATCH20_INC (328*100/HZ) /* magic number 328 is for HZ=100... */ 48#define MATCH20_INC (328 * 100 / HZ) /* magic number 328 is for HZ=100... */
51extern void startup_match20_interrupt(irq_handler_t handler);
52static unsigned long last_pc0, last_match20; 49static unsigned long last_pc0, last_match20;
53#endif 50#endif
54 51
@@ -61,7 +58,7 @@ static irqreturn_t counter0_irq(int irq, void *dev_id)
61{ 58{
62 unsigned long pc0; 59 unsigned long pc0;
63 int time_elapsed; 60 int time_elapsed;
64 static int jiffie_drift = 0; 61 static int jiffie_drift;
65 62
66 if (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_M20) { 63 if (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_M20) {
67 /* should never happen! */ 64 /* should never happen! */
@@ -70,13 +67,11 @@ static irqreturn_t counter0_irq(int irq, void *dev_id)
70 } 67 }
71 68
72 pc0 = au_readl(SYS_TOYREAD); 69 pc0 = au_readl(SYS_TOYREAD);
73 if (pc0 < last_match20) { 70 if (pc0 < last_match20)
74 /* counter overflowed */ 71 /* counter overflowed */
75 time_elapsed = (0xffffffff - last_match20) + pc0; 72 time_elapsed = (0xffffffff - last_match20) + pc0;
76 } 73 else
77 else {
78 time_elapsed = pc0 - last_match20; 74 time_elapsed = pc0 - last_match20;
79 }
80 75
81 while (time_elapsed > 0) { 76 while (time_elapsed > 0) {
82 do_timer(1); 77 do_timer(1);
@@ -92,8 +87,9 @@ static irqreturn_t counter0_irq(int irq, void *dev_id)
92 au_writel(last_match20 + MATCH20_INC, SYS_TOYMATCH2); 87 au_writel(last_match20 + MATCH20_INC, SYS_TOYMATCH2);
93 au_sync(); 88 au_sync();
94 89
95 /* our counter ticks at 10.009765625 ms/tick, we we're running 90 /*
96 * almost 10uS too slow per tick. 91 * Our counter ticks at 10.009765625 ms/tick, we we're running
92 * almost 10 uS too slow per tick.
97 */ 93 */
98 94
99 if (jiffie_drift >= 999) { 95 if (jiffie_drift >= 999) {
@@ -117,20 +113,17 @@ struct irqaction counter0_action = {
117/* When we wakeup from sleep, we have to "catch up" on all of the 113/* When we wakeup from sleep, we have to "catch up" on all of the
118 * timer ticks we have missed. 114 * timer ticks we have missed.
119 */ 115 */
120void 116void wakeup_counter0_adjust(void)
121wakeup_counter0_adjust(void)
122{ 117{
123 unsigned long pc0; 118 unsigned long pc0;
124 int time_elapsed; 119 int time_elapsed;
125 120
126 pc0 = au_readl(SYS_TOYREAD); 121 pc0 = au_readl(SYS_TOYREAD);
127 if (pc0 < last_match20) { 122 if (pc0 < last_match20)
128 /* counter overflowed */ 123 /* counter overflowed */
129 time_elapsed = (0xffffffff - last_match20) + pc0; 124 time_elapsed = (0xffffffff - last_match20) + pc0;
130 } 125 else
131 else {
132 time_elapsed = pc0 - last_match20; 126 time_elapsed = pc0 - last_match20;
133 }
134 127
135 while (time_elapsed > 0) { 128 while (time_elapsed > 0) {
136 time_elapsed -= MATCH20_INC; 129 time_elapsed -= MATCH20_INC;
@@ -143,10 +136,8 @@ wakeup_counter0_adjust(void)
143 136
144} 137}
145 138
146/* This is just for debugging to set the timer for a sleep delay. 139/* This is just for debugging to set the timer for a sleep delay. */
147*/ 140void wakeup_counter0_set(int ticks)
148void
149wakeup_counter0_set(int ticks)
150{ 141{
151 unsigned long pc0; 142 unsigned long pc0;
152 143
@@ -157,21 +148,22 @@ wakeup_counter0_set(int ticks)
157} 148}
158#endif 149#endif
159 150
160/* I haven't found anyone that doesn't use a 12 MHz source clock, 151/*
152 * I haven't found anyone that doesn't use a 12 MHz source clock,
161 * but just in case..... 153 * but just in case.....
162 */ 154 */
163#define AU1000_SRC_CLK 12000000 155#define AU1000_SRC_CLK 12000000
164 156
165/* 157/*
166 * We read the real processor speed from the PLL. This is important 158 * We read the real processor speed from the PLL. This is important
167 * because it is more accurate than computing it from the 32KHz 159 * because it is more accurate than computing it from the 32 KHz
168 * counter, if it exists. If we don't have an accurate processor 160 * counter, if it exists. If we don't have an accurate processor
169 * speed, all of the peripherals that derive their clocks based on 161 * speed, all of the peripherals that derive their clocks based on
170 * this advertised speed will introduce error and sometimes not work 162 * this advertised speed will introduce error and sometimes not work
171 * properly. This function is futher convoluted to still allow configurations 163 * properly. This function is futher convoluted to still allow configurations
172 * to do that in case they have really, really old silicon with a 164 * to do that in case they have really, really old silicon with a
173 * write-only PLL register, that we need the 32KHz when power management 165 * write-only PLL register, that we need the 32 KHz when power management
174 * "wait" is enabled, and we need to detect if the 32KHz isn't present 166 * "wait" is enabled, and we need to detect if the 32 KHz isn't present
175 * but requested......got it? :-) -- Dan 167 * but requested......got it? :-) -- Dan
176 */ 168 */
177unsigned long calc_clock(void) 169unsigned long calc_clock(void)
@@ -182,8 +174,7 @@ unsigned long calc_clock(void)
182 174
183 spin_lock_irqsave(&time_lock, flags); 175 spin_lock_irqsave(&time_lock, flags);
184 176
185 /* Power management cares if we don't have a 32KHz counter. 177 /* Power management cares if we don't have a 32 KHz counter. */
186 */
187 no_au1xxx_32khz = 0; 178 no_au1xxx_32khz = 0;
188 counter = au_readl(SYS_COUNTER_CNTRL); 179 counter = au_readl(SYS_COUNTER_CNTRL);
189 if (counter & SYS_CNTRL_E0) { 180 if (counter & SYS_CNTRL_E0) {
@@ -193,7 +184,7 @@ unsigned long calc_clock(void)
193 184
194 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_T1S); 185 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_T1S);
195 /* RTC now ticks at 32.768/16 kHz */ 186 /* RTC now ticks at 32.768/16 kHz */
196 au_writel(trim_divide-1, SYS_RTCTRIM); 187 au_writel(trim_divide - 1, SYS_RTCTRIM);
197 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_T1S); 188 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_T1S);
198 189
199 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_C1S); 190 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_C1S);
@@ -215,9 +206,11 @@ unsigned long calc_clock(void)
215#endif 206#endif
216 else 207 else
217 cpu_speed = (au_readl(SYS_CPUPLL) & 0x0000003f) * AU1000_SRC_CLK; 208 cpu_speed = (au_readl(SYS_CPUPLL) & 0x0000003f) * AU1000_SRC_CLK;
209 /* On Alchemy CPU:counter ratio is 1:1 */
218 mips_hpt_frequency = cpu_speed; 210 mips_hpt_frequency = cpu_speed;
219 // Equation: Baudrate = CPU / (SD * 2 * CLKDIV * 16) 211 /* Equation: Baudrate = CPU / (SD * 2 * CLKDIV * 16) */
220 set_au1x00_uart_baud_base(cpu_speed / (2 * ((int)(au_readl(SYS_POWERCTRL)&0x03) + 2) * 16)); 212 set_au1x00_uart_baud_base(cpu_speed / (2 * ((int)(au_readl(SYS_POWERCTRL)
213 & 0x03) + 2) * 16));
221 spin_unlock_irqrestore(&time_lock, flags); 214 spin_unlock_irqrestore(&time_lock, flags);
222 return cpu_speed; 215 return cpu_speed;
223} 216}
@@ -228,10 +221,10 @@ void __init plat_time_init(void)
228 221
229 est_freq += 5000; /* round */ 222 est_freq += 5000; /* round */
230 est_freq -= est_freq%10000; 223 est_freq -= est_freq%10000;
231 printk("CPU frequency %d.%02d MHz\n", est_freq/1000000, 224 printk(KERN_INFO "CPU frequency %u.%02u MHz\n",
232 (est_freq%1000000)*100/1000000); 225 est_freq / 1000000, ((est_freq % 1000000) * 100) / 1000000);
233 set_au1x00_speed(est_freq); 226 set_au1x00_speed(est_freq);
234 set_au1x00_lcd_clock(); // program the LCD clock 227 set_au1x00_lcd_clock(); /* program the LCD clock */
235 228
236#ifdef CONFIG_PM 229#ifdef CONFIG_PM
237 /* 230 /*
@@ -243,30 +236,29 @@ void __init plat_time_init(void)
243 * counter 0 interrupt as a special irq and it doesn't show 236 * counter 0 interrupt as a special irq and it doesn't show
244 * up under /proc/interrupts. 237 * up under /proc/interrupts.
245 * 238 *
246 * Check to ensure we really have a 32KHz oscillator before 239 * Check to ensure we really have a 32 KHz oscillator before
247 * we do this. 240 * we do this.
248 */ 241 */
249 if (no_au1xxx_32khz) 242 if (no_au1xxx_32khz)
250 printk("WARNING: no 32KHz clock found.\n"); 243 printk(KERN_WARNING "WARNING: no 32KHz clock found.\n");
251 else { 244 else {
252 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_C0S); 245 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_C0S);
253 au_writel(0, SYS_TOYWRITE); 246 au_writel(0, SYS_TOYWRITE);
254 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_C0S); 247 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_C0S);
255 248
256 au_writel(au_readl(SYS_WAKEMSK) | (1<<8), SYS_WAKEMSK); 249 au_writel(au_readl(SYS_WAKEMSK) | (1 << 8), SYS_WAKEMSK);
257 au_writel(~0, SYS_WAKESRC); 250 au_writel(~0, SYS_WAKESRC);
258 au_sync(); 251 au_sync();
259 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_M20); 252 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_M20);
260 253
261 /* setup match20 to interrupt once every HZ */ 254 /* Setup match20 to interrupt once every HZ */
262 last_pc0 = last_match20 = au_readl(SYS_TOYREAD); 255 last_pc0 = last_match20 = au_readl(SYS_TOYREAD);
263 au_writel(last_match20 + MATCH20_INC, SYS_TOYMATCH2); 256 au_writel(last_match20 + MATCH20_INC, SYS_TOYMATCH2);
264 au_sync(); 257 au_sync();
265 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_M20); 258 while (au_readl(SYS_COUNTER_CNTRL) & SYS_CNTRL_M20);
266 setup_irq(AU1000_TOY_MATCH2_INT, &counter0_action); 259 setup_irq(AU1000_TOY_MATCH2_INT, &counter0_action);
267 260
268 /* We can use the real 'wait' instruction. 261 /* We can use the real 'wait' instruction. */
269 */
270 allow_au1k_wait = 1; 262 allow_au1k_wait = 1;
271 } 263 }
272 264
diff --git a/arch/mips/au1000/db1x00/Makefile b/arch/mips/au1000/db1x00/Makefile
index 51d62bd5d900..274db3b55d82 100644
--- a/arch/mips/au1000/db1x00/Makefile
+++ b/arch/mips/au1000/db1x00/Makefile
@@ -1,8 +1,8 @@
1# 1#
2# Copyright 2000 MontaVista Software Inc. 2# Copyright 2000, 2008 MontaVista Software Inc.
3# Author: MontaVista Software, Inc. 3# Author: MontaVista Software, Inc. <source@mvista.com>
4# ppopov@mvista.com or source@mvista.com 4#
5# Makefile for the Alchemy Semiconductor DBAu1xx0 boards.
5# 6#
6# Makefile for the Alchemy Semiconductor Db1x00 board.
7 7
8lib-y := init.o board_setup.o irqmap.o 8lib-y := init.o board_setup.o irqmap.o
diff --git a/arch/mips/au1000/db1x00/board_setup.c b/arch/mips/au1000/db1x00/board_setup.c
index b7dcbad5c586..9e5ccbbfcedd 100644
--- a/arch/mips/au1000/db1x00/board_setup.c
+++ b/arch/mips/au1000/db1x00/board_setup.c
@@ -3,9 +3,8 @@
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * Alchemy Db1x00 board setup. 4 * Alchemy Db1x00 board setup.
5 * 5 *
6 * Copyright 2000 MontaVista Software Inc. 6 * Copyright 2000, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This program is free software; you can redistribute it and/or modify it 9 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the 10 * under the terms of the GNU General Public License as published by the
@@ -37,49 +36,49 @@ static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR;
37 36
38void board_reset(void) 37void board_reset(void)
39{ 38{
40 /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ 39 /* Hit BCSR.SW_RESET[RESET] */
41 bcsr->swreset = 0x0000; 40 bcsr->swreset = 0x0000;
42} 41}
43 42
44void __init board_setup(void) 43void __init board_setup(void)
45{ 44{
46 u32 pin_func; 45 u32 pin_func = 0;
47 46
48 pin_func = 0; 47 /* Not valid for Au1550 */
49 /* not valid for 1550 */ 48#if defined(CONFIG_IRDA) && \
50 49 (defined(CONFIG_SOC_AU1000) || defined(CONFIG_SOC_AU1100))
51#if defined(CONFIG_IRDA) && (defined(CONFIG_SOC_AU1000) || defined(CONFIG_SOC_AU1100)) 50 /* Set IRFIRSEL instead of GPIO15 */
52 /* set IRFIRSEL instead of GPIO15 */ 51 pin_func = au_readl(SYS_PINFUNC) | SYS_PF_IRF;
53 pin_func = au_readl(SYS_PINFUNC) | (u32)((1<<8));
54 au_writel(pin_func, SYS_PINFUNC); 52 au_writel(pin_func, SYS_PINFUNC);
55 /* power off until the driver is in use */ 53 /* Power off until the driver is in use */
56 bcsr->resets &= ~BCSR_RESETS_IRDA_MODE_MASK; 54 bcsr->resets &= ~BCSR_RESETS_IRDA_MODE_MASK;
57 bcsr->resets |= BCSR_RESETS_IRDA_MODE_OFF; 55 bcsr->resets |= BCSR_RESETS_IRDA_MODE_OFF;
58 au_sync(); 56 au_sync();
59#endif 57#endif
60 bcsr->pcmcia = 0x0000; /* turn off PCMCIA power */ 58 bcsr->pcmcia = 0x0000; /* turn off PCMCIA power */
61 59
62#ifdef CONFIG_MIPS_MIRAGE 60#ifdef CONFIG_MIPS_MIRAGE
63 /* enable GPIO[31:0] inputs */ 61 /* Enable GPIO[31:0] inputs */
64 au_writel(0, SYS_PININPUTEN); 62 au_writel(0, SYS_PININPUTEN);
65 63
66 /* GPIO[20] is output, tristate the other input primary GPIO's */ 64 /* GPIO[20] is output, tristate the other input primary GPIOs */
67 au_writel((u32)(~(1<<20)), SYS_TRIOUTCLR); 65 au_writel(~(1 << 20), SYS_TRIOUTCLR);
68 66
69 /* set GPIO[210:208] instead of SSI_0 */ 67 /* Set GPIO[210:208] instead of SSI_0 */
70 pin_func = au_readl(SYS_PINFUNC) | (u32)(1); 68 pin_func = au_readl(SYS_PINFUNC) | SYS_PF_S0;
71 69
72 /* set GPIO[215:211] for LED's */ 70 /* Set GPIO[215:211] for LEDs */
73 pin_func |= (u32)((5<<2)); 71 pin_func |= 5 << 2;
74 72
75 /* set GPIO[214:213] for more LED's */ 73 /* Set GPIO[214:213] for more LEDs */
76 pin_func |= (u32)((5<<12)); 74 pin_func |= 5 << 12;
77 75
78 /* set GPIO[207:200] instead of PCMCIA/LCD */ 76 /* Set GPIO[207:200] instead of PCMCIA/LCD */
79 pin_func |= (u32)((3<<17)); 77 pin_func |= SYS_PF_LCD | SYS_PF_PC;
80 au_writel(pin_func, SYS_PINFUNC); 78 au_writel(pin_func, SYS_PINFUNC);
81 79
82 /* Enable speaker amplifier. This should 80 /*
81 * Enable speaker amplifier. This should
83 * be part of the audio driver. 82 * be part of the audio driver.
84 */ 83 */
85 au_writel(au_readl(GPIO2_DIR) | 0x200, GPIO2_DIR); 84 au_writel(au_readl(GPIO2_DIR) | 0x200, GPIO2_DIR);
@@ -89,21 +88,21 @@ void __init board_setup(void)
89 au_sync(); 88 au_sync();
90 89
91#ifdef CONFIG_MIPS_DB1000 90#ifdef CONFIG_MIPS_DB1000
92 printk("AMD Alchemy Au1000/Db1000 Board\n"); 91 printk(KERN_INFO "AMD Alchemy Au1000/Db1000 Board\n");
93#endif 92#endif
94#ifdef CONFIG_MIPS_DB1500 93#ifdef CONFIG_MIPS_DB1500
95 printk("AMD Alchemy Au1500/Db1500 Board\n"); 94 printk(KERN_INFO "AMD Alchemy Au1500/Db1500 Board\n");
96#endif 95#endif
97#ifdef CONFIG_MIPS_DB1100 96#ifdef CONFIG_MIPS_DB1100
98 printk("AMD Alchemy Au1100/Db1100 Board\n"); 97 printk(KERN_INFO "AMD Alchemy Au1100/Db1100 Board\n");
99#endif 98#endif
100#ifdef CONFIG_MIPS_BOSPORUS 99#ifdef CONFIG_MIPS_BOSPORUS
101 printk("AMD Alchemy Bosporus Board\n"); 100 printk(KERN_INFO "AMD Alchemy Bosporus Board\n");
102#endif 101#endif
103#ifdef CONFIG_MIPS_MIRAGE 102#ifdef CONFIG_MIPS_MIRAGE
104 printk("AMD Alchemy Mirage Board\n"); 103 printk(KERN_INFO "AMD Alchemy Mirage Board\n");
105#endif 104#endif
106#ifdef CONFIG_MIPS_DB1550 105#ifdef CONFIG_MIPS_DB1550
107 printk("AMD Alchemy Au1550/Db1550 Board\n"); 106 printk(KERN_INFO "AMD Alchemy Au1550/Db1550 Board\n");
108#endif 107#endif
109} 108}
diff --git a/arch/mips/au1000/db1x00/init.c b/arch/mips/au1000/db1x00/init.c
index d3b967caf70c..5ebe0de5e459 100644
--- a/arch/mips/au1000/db1x00/init.c
+++ b/arch/mips/au1000/db1x00/init.c
@@ -2,9 +2,8 @@
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * PB1000 board setup 3 * PB1000 board setup
4 * 4 *
5 * Copyright 2001 MontaVista Software Inc. 5 * Copyright 2001, 2008 MontaVista Software Inc.
6 * Author: MontaVista Software, Inc. 6 * Author: MontaVista Software, Inc. <source@mvista.com>
7 * ppopov@mvista.com or source@mvista.com
8 * 7 *
9 * This program is free software; you can redistribute it and/or modify it 8 * This program is free software; you can redistribute it and/or modify it
10 * under the terms of the GNU General Public License as published by the 9 * under the terms of the GNU General Public License as published by the
@@ -49,8 +48,8 @@ void __init prom_init(void)
49 unsigned long memsize; 48 unsigned long memsize;
50 49
51 prom_argc = fw_arg0; 50 prom_argc = fw_arg0;
52 prom_argv = (char **) fw_arg1; 51 prom_argv = (char **)fw_arg1;
53 prom_envp = (char **) fw_arg2; 52 prom_envp = (char **)fw_arg2;
54 53
55 prom_init_cmdline(); 54 prom_init_cmdline();
56 55
@@ -58,6 +57,6 @@ void __init prom_init(void)
58 if (!memsize_str) 57 if (!memsize_str)
59 memsize = 0x04000000; 58 memsize = 0x04000000;
60 else 59 else
61 memsize = simple_strtol(memsize_str, NULL, 0); 60 memsize = strict_strtol(memsize_str, 0, NULL);
62 add_memory_region(0, memsize, BOOT_MEM_RAM); 61 add_memory_region(0, memsize, BOOT_MEM_RAM);
63} 62}
diff --git a/arch/mips/au1000/db1x00/irqmap.c b/arch/mips/au1000/db1x00/irqmap.c
index eaa50c7b6341..94c090e8bf7a 100644
--- a/arch/mips/au1000/db1x00/irqmap.c
+++ b/arch/mips/au1000/db1x00/irqmap.c
@@ -32,32 +32,32 @@
32 32
33#ifdef CONFIG_MIPS_DB1500 33#ifdef CONFIG_MIPS_DB1500
34char irq_tab_alchemy[][5] __initdata = { 34char irq_tab_alchemy[][5] __initdata = {
35 [12] = { -1, INTA, INTX, INTX, INTX}, /* IDSEL 12 - HPT371 */ 35 [12] = { -1, INTA, INTX, INTX, INTX }, /* IDSEL 12 - HPT371 */
36 [13] = { -1, INTA, INTB, INTC, INTD}, /* IDSEL 13 - PCI slot */ 36 [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot */
37}; 37};
38#endif 38#endif
39 39
40#ifdef CONFIG_MIPS_BOSPORUS 40#ifdef CONFIG_MIPS_BOSPORUS
41char irq_tab_alchemy[][5] __initdata = { 41char irq_tab_alchemy[][5] __initdata = {
42 [11] = { -1, INTA, INTB, INTX, INTX}, /* IDSEL 11 - miniPCI */ 42 [11] = { -1, INTA, INTB, INTX, INTX }, /* IDSEL 11 - miniPCI */
43 [12] = { -1, INTA, INTX, INTX, INTX}, /* IDSEL 12 - SN1741 */ 43 [12] = { -1, INTA, INTX, INTX, INTX }, /* IDSEL 12 - SN1741 */
44 [13] = { -1, INTA, INTB, INTC, INTD}, /* IDSEL 13 - PCI slot */ 44 [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot */
45}; 45};
46#endif 46#endif
47 47
48#ifdef CONFIG_MIPS_MIRAGE 48#ifdef CONFIG_MIPS_MIRAGE
49char irq_tab_alchemy[][5] __initdata = { 49char irq_tab_alchemy[][5] __initdata = {
50 [11] = { -1, INTD, INTX, INTX, INTX}, /* IDSEL 11 - SMI VGX */ 50 [11] = { -1, INTD, INTX, INTX, INTX }, /* IDSEL 11 - SMI VGX */
51 [12] = { -1, INTX, INTX, INTC, INTX}, /* IDSEL 12 - PNX1300 */ 51 [12] = { -1, INTX, INTX, INTC, INTX }, /* IDSEL 12 - PNX1300 */
52 [13] = { -1, INTA, INTB, INTX, INTX}, /* IDSEL 13 - miniPCI */ 52 [13] = { -1, INTA, INTB, INTX, INTX }, /* IDSEL 13 - miniPCI */
53}; 53};
54#endif 54#endif
55 55
56#ifdef CONFIG_MIPS_DB1550 56#ifdef CONFIG_MIPS_DB1550
57char irq_tab_alchemy[][5] __initdata = { 57char irq_tab_alchemy[][5] __initdata = {
58 [11] = { -1, INTC, INTX, INTX, INTX}, /* IDSEL 11 - on-board HPT371 */ 58 [11] = { -1, INTC, INTX, INTX, INTX }, /* IDSEL 11 - on-board HPT371 */
59 [12] = { -1, INTB, INTC, INTD, INTA}, /* IDSEL 12 - PCI slot 2 (left) */ 59 [12] = { -1, INTB, INTC, INTD, INTA }, /* IDSEL 12 - PCI slot 2 (left) */
60 [13] = { -1, INTA, INTB, INTC, INTD}, /* IDSEL 13 - PCI slot 1 (right) */ 60 [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot 1 (right) */
61}; 61};
62#endif 62#endif
63 63
diff --git a/arch/mips/au1000/mtx-1/Makefile b/arch/mips/au1000/mtx-1/Makefile
index 85a90941de4f..7c67b3d33bec 100644
--- a/arch/mips/au1000/mtx-1/Makefile
+++ b/arch/mips/au1000/mtx-1/Makefile
@@ -1,7 +1,6 @@
1# 1#
2# Copyright 2003 MontaVista Software Inc. 2# Copyright 2003 MontaVista Software Inc.
3# Author: MontaVista Software, Inc. 3# Author: MontaVista Software, Inc. <source@mvista.com>
4# ppopov@mvista.com or source@mvista.com
5# Bruno Randolf <bruno.randolf@4g-systems.biz> 4# Bruno Randolf <bruno.randolf@4g-systems.biz>
6# 5#
7# Makefile for 4G Systems MTX-1 board. 6# Makefile for 4G Systems MTX-1 board.
diff --git a/arch/mips/au1000/mtx-1/board_setup.c b/arch/mips/au1000/mtx-1/board_setup.c
index 5736354829c6..3f8079186cf2 100644
--- a/arch/mips/au1000/mtx-1/board_setup.c
+++ b/arch/mips/au1000/mtx-1/board_setup.c
@@ -3,9 +3,8 @@
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * 4G Systems MTX-1 board setup. 4 * 4G Systems MTX-1 board setup.
5 * 5 *
6 * Copyright 2003 MontaVista Software Inc. 6 * Copyright 2003, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * Bruno Randolf <bruno.randolf@4g-systems.biz> 8 * Bruno Randolf <bruno.randolf@4g-systems.biz>
10 * 9 *
11 * This program is free software; you can redistribute it and/or modify it 10 * This program is free software; you can redistribute it and/or modify it
@@ -34,7 +33,7 @@
34#include <asm/mach-au1x00/au1000.h> 33#include <asm/mach-au1x00/au1000.h>
35 34
36extern int (*board_pci_idsel)(unsigned int devsel, int assert); 35extern int (*board_pci_idsel)(unsigned int devsel, int assert);
37int mtx1_pci_idsel(unsigned int devsel, int assert); 36int mtx1_pci_idsel(unsigned int devsel, int assert);
38 37
39void board_reset(void) 38void board_reset(void)
40{ 39{
@@ -45,36 +44,36 @@ void board_reset(void)
45void __init board_setup(void) 44void __init board_setup(void)
46{ 45{
47#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) 46#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE)
48 // enable USB power switch 47 /* Enable USB power switch */
49 au_writel( au_readl(GPIO2_DIR) | 0x10, GPIO2_DIR ); 48 au_writel(au_readl(GPIO2_DIR) | 0x10, GPIO2_DIR);
50 au_writel( 0x100000, GPIO2_OUTPUT ); 49 au_writel(0x100000, GPIO2_OUTPUT);
51#endif /* defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) */ 50#endif /* defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) */
52 51
53#ifdef CONFIG_PCI 52#ifdef CONFIG_PCI
54#if defined(__MIPSEB__) 53#if defined(__MIPSEB__)
55 au_writel(0xf | (2<<6) | (1<<4), Au1500_PCI_CFG); 54 au_writel(0xf | (2 << 6) | (1 << 4), Au1500_PCI_CFG);
56#else 55#else
57 au_writel(0xf, Au1500_PCI_CFG); 56 au_writel(0xf, Au1500_PCI_CFG);
58#endif 57#endif
59#endif 58#endif
60 59
61 // initialize sys_pinfunc: 60 /* Initialize sys_pinfunc */
62 au_writel( SYS_PF_NI2, SYS_PINFUNC ); 61 au_writel(SYS_PF_NI2, SYS_PINFUNC);
63 62
64 // initialize GPIO 63 /* Initialize GPIO */
65 au_writel( 0xFFFFFFFF, SYS_TRIOUTCLR ); 64 au_writel(0xFFFFFFFF, SYS_TRIOUTCLR);
66 au_writel( 0x00000001, SYS_OUTPUTCLR ); // set M66EN (PCI 66MHz) to OFF 65 au_writel(0x00000001, SYS_OUTPUTCLR); /* set M66EN (PCI 66MHz) to OFF */
67 au_writel( 0x00000008, SYS_OUTPUTSET ); // set PCI CLKRUN# to OFF 66 au_writel(0x00000008, SYS_OUTPUTSET); /* set PCI CLKRUN# to OFF */
68 au_writel( 0x00000002, SYS_OUTPUTSET ); // set EXT_IO3 ON 67 au_writel(0x00000002, SYS_OUTPUTSET); /* set EXT_IO3 ON */
69 au_writel( 0x00000020, SYS_OUTPUTCLR ); // set eth PHY TX_ER to OFF 68 au_writel(0x00000020, SYS_OUTPUTCLR); /* set eth PHY TX_ER to OFF */
70 69
71 // enable LED and set it to green 70 /* Enable LED and set it to green */
72 au_writel( au_readl(GPIO2_DIR) | 0x1800, GPIO2_DIR ); 71 au_writel(au_readl(GPIO2_DIR) | 0x1800, GPIO2_DIR);
73 au_writel( 0x18000800, GPIO2_OUTPUT ); 72 au_writel(0x18000800, GPIO2_OUTPUT);
74 73
75 board_pci_idsel = mtx1_pci_idsel; 74 board_pci_idsel = mtx1_pci_idsel;
76 75
77 printk("4G Systems MTX-1 Board\n"); 76 printk(KERN_INFO "4G Systems MTX-1 Board\n");
78} 77}
79 78
80int 79int
@@ -82,20 +81,18 @@ mtx1_pci_idsel(unsigned int devsel, int assert)
82{ 81{
83#define MTX_IDSEL_ONLY_0_AND_3 0 82#define MTX_IDSEL_ONLY_0_AND_3 0
84#if MTX_IDSEL_ONLY_0_AND_3 83#if MTX_IDSEL_ONLY_0_AND_3
85 if (devsel != 0 && devsel != 3) { 84 if (devsel != 0 && devsel != 3) {
86 printk("*** not 0 or 3\n"); 85 printk(KERN_ERR "*** not 0 or 3\n");
87 return 0; 86 return 0;
88 } 87 }
89#endif 88#endif
90 89
91 if (assert && devsel != 0) { 90 if (assert && devsel != 0)
92 // suppress signal to cardbus 91 /* Suppress signal to Cardbus */
93 au_writel( 0x00000002, SYS_OUTPUTCLR ); // set EXT_IO3 OFF 92 au_writel(0x00000002, SYS_OUTPUTCLR); /* set EXT_IO3 OFF */
94 } 93 else
95 else { 94 au_writel(0x00000002, SYS_OUTPUTSET); /* set EXT_IO3 ON */
96 au_writel( 0x00000002, SYS_OUTPUTSET ); // set EXT_IO3 ON 95 au_sync_udelay(1);
97 } 96 return 1;
98 au_sync_udelay(1);
99 return 1;
100} 97}
101 98
diff --git a/arch/mips/au1000/mtx-1/init.c b/arch/mips/au1000/mtx-1/init.c
index c015cbce1cca..33a4aebe0cba 100644
--- a/arch/mips/au1000/mtx-1/init.c
+++ b/arch/mips/au1000/mtx-1/init.c
@@ -3,9 +3,8 @@
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * 4G Systems MTX-1 board setup 4 * 4G Systems MTX-1 board setup
5 * 5 *
6 * Copyright 2003 MontaVista Software Inc. 6 * Copyright 2003, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * Bruno Randolf <bruno.randolf@4g-systems.biz> 8 * Bruno Randolf <bruno.randolf@4g-systems.biz>
10 * 9 *
11 * This program is free software; you can redistribute it and/or modify it 10 * This program is free software; you can redistribute it and/or modify it
@@ -47,8 +46,8 @@ void __init prom_init(void)
47 unsigned long memsize; 46 unsigned long memsize;
48 47
49 prom_argc = fw_arg0; 48 prom_argc = fw_arg0;
50 prom_argv = (char **) fw_arg1; 49 prom_argv = (char **)fw_arg1;
51 prom_envp = (char **) fw_arg2; 50 prom_envp = (char **)fw_arg2;
52 51
53 prom_init_cmdline(); 52 prom_init_cmdline();
54 53
@@ -56,6 +55,6 @@ void __init prom_init(void)
56 if (!memsize_str) 55 if (!memsize_str)
57 memsize = 0x04000000; 56 memsize = 0x04000000;
58 else 57 else
59 memsize = simple_strtol(memsize_str, NULL, 0); 58 memsize = strict_strtol(memsize_str, 0, NULL);
60 add_memory_region(0, memsize, BOOT_MEM_RAM); 59 add_memory_region(0, memsize, BOOT_MEM_RAM);
61} 60}
diff --git a/arch/mips/au1000/mtx-1/irqmap.c b/arch/mips/au1000/mtx-1/irqmap.c
index 78d70c42c9db..f2bf02951e9c 100644
--- a/arch/mips/au1000/mtx-1/irqmap.c
+++ b/arch/mips/au1000/mtx-1/irqmap.c
@@ -31,18 +31,18 @@
31#include <asm/mach-au1x00/au1000.h> 31#include <asm/mach-au1x00/au1000.h>
32 32
33char irq_tab_alchemy[][5] __initdata = { 33char irq_tab_alchemy[][5] __initdata = {
34 [0] = { -1, INTA, INTA, INTX, INTX}, /* IDSEL 00 - AdapterA-Slot0 (top) */ 34 [0] = { -1, INTA, INTA, INTX, INTX }, /* IDSEL 00 - AdapterA-Slot0 (top) */
35 [1] = { -1, INTB, INTA, INTX, INTX}, /* IDSEL 01 - AdapterA-Slot1 (bottom) */ 35 [1] = { -1, INTB, INTA, INTX, INTX }, /* IDSEL 01 - AdapterA-Slot1 (bottom) */
36 [2] = { -1, INTC, INTD, INTX, INTX}, /* IDSEL 02 - AdapterB-Slot0 (top) */ 36 [2] = { -1, INTC, INTD, INTX, INTX }, /* IDSEL 02 - AdapterB-Slot0 (top) */
37 [3] = { -1, INTD, INTC, INTX, INTX}, /* IDSEL 03 - AdapterB-Slot1 (bottom) */ 37 [3] = { -1, INTD, INTC, INTX, INTX }, /* IDSEL 03 - AdapterB-Slot1 (bottom) */
38 [4] = { -1, INTA, INTB, INTX, INTX}, /* IDSEL 04 - AdapterC-Slot0 (top) */ 38 [4] = { -1, INTA, INTB, INTX, INTX }, /* IDSEL 04 - AdapterC-Slot0 (top) */
39 [5] = { -1, INTB, INTA, INTX, INTX}, /* IDSEL 05 - AdapterC-Slot1 (bottom) */ 39 [5] = { -1, INTB, INTA, INTX, INTX }, /* IDSEL 05 - AdapterC-Slot1 (bottom) */
40 [6] = { -1, INTC, INTD, INTX, INTX}, /* IDSEL 06 - AdapterD-Slot0 (top) */ 40 [6] = { -1, INTC, INTD, INTX, INTX }, /* IDSEL 06 - AdapterD-Slot0 (top) */
41 [7] = { -1, INTD, INTC, INTX, INTX}, /* IDSEL 07 - AdapterD-Slot1 (bottom) */ 41 [7] = { -1, INTD, INTC, INTX, INTX }, /* IDSEL 07 - AdapterD-Slot1 (bottom) */
42}; 42};
43 43
44struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { 44struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
45 { AU1500_GPIO_204, INTC_INT_HIGH_LEVEL, 0}, 45 { AU1500_GPIO_204, INTC_INT_HIGH_LEVEL, 0 },
46 { AU1500_GPIO_201, INTC_INT_LOW_LEVEL, 0 }, 46 { AU1500_GPIO_201, INTC_INT_LOW_LEVEL, 0 },
47 { AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 }, 47 { AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 },
48 { AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 }, 48 { AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 },
diff --git a/arch/mips/au1000/mtx-1/platform.c b/arch/mips/au1000/mtx-1/platform.c
index a7edbf0829ac..9807be37c32f 100644
--- a/arch/mips/au1000/mtx-1/platform.c
+++ b/arch/mips/au1000/mtx-1/platform.c
@@ -21,11 +21,10 @@
21#include <linux/init.h> 21#include <linux/init.h>
22#include <linux/platform_device.h> 22#include <linux/platform_device.h>
23#include <linux/leds.h> 23#include <linux/leds.h>
24#include <linux/gpio.h>
24#include <linux/gpio_keys.h> 25#include <linux/gpio_keys.h>
25#include <linux/input.h> 26#include <linux/input.h>
26 27
27#include <asm/gpio.h>
28
29static struct gpio_keys_button mtx1_gpio_button[] = { 28static struct gpio_keys_button mtx1_gpio_button[] = {
30 { 29 {
31 .gpio = 207, 30 .gpio = 207,
diff --git a/arch/mips/au1000/pb1000/Makefile b/arch/mips/au1000/pb1000/Makefile
index daa1a507e72f..99bbec0ca41b 100644
--- a/arch/mips/au1000/pb1000/Makefile
+++ b/arch/mips/au1000/pb1000/Makefile
@@ -1,8 +1,8 @@
1# 1#
2# Copyright 2000 MontaVista Software Inc. 2# Copyright 2000, 2008 MontaVista Software Inc.
3# Author: MontaVista Software, Inc. 3# Author: MontaVista Software, Inc. <source@mvista.com>
4# ppopov@mvista.com or source@mvista.com 4#
5# Makefile for the Alchemy Semiconductor Pb1000 board.
5# 6#
6# Makefile for the Alchemy Semiconductor PB1000 board.
7 7
8lib-y := init.o board_setup.o irqmap.o 8lib-y := init.o board_setup.o irqmap.o
diff --git a/arch/mips/au1000/pb1000/board_setup.c b/arch/mips/au1000/pb1000/board_setup.c
index 33f15acc1b17..25df167a95b3 100644
--- a/arch/mips/au1000/pb1000/board_setup.c
+++ b/arch/mips/au1000/pb1000/board_setup.c
@@ -1,7 +1,6 @@
1/* 1/*
2 * Copyright 2000 MontaVista Software Inc. 2 * Copyright 2000, 2008 MontaVista Software Inc.
3 * Author: MontaVista Software, Inc. 3 * Author: MontaVista Software, Inc. <source@mvista.com>
4 * ppopov@mvista.com or source@mvista.com
5 * 4 *
6 * This program is free software; you can redistribute it and/or modify it 5 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the 6 * under the terms of the GNU General Public License as published by the
@@ -40,128 +39,126 @@ void __init board_setup(void)
40 u32 sys_freqctrl, sys_clksrc; 39 u32 sys_freqctrl, sys_clksrc;
41 u32 prid = read_c0_prid(); 40 u32 prid = read_c0_prid();
42 41
43 // set AUX clock to 12MHz * 8 = 96 MHz 42 /* Set AUX clock to 12 MHz * 8 = 96 MHz */
44 au_writel(8, SYS_AUXPLL); 43 au_writel(8, SYS_AUXPLL);
45 au_writel(0, SYS_PINSTATERD); 44 au_writel(0, SYS_PINSTATERD);
46 udelay(100); 45 udelay(100);
47 46
48#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) 47#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE)
49 /* zero and disable FREQ2 */ 48 /* Zero and disable FREQ2 */
50 sys_freqctrl = au_readl(SYS_FREQCTRL0); 49 sys_freqctrl = au_readl(SYS_FREQCTRL0);
51 sys_freqctrl &= ~0xFFF00000; 50 sys_freqctrl &= ~0xFFF00000;
52 au_writel(sys_freqctrl, SYS_FREQCTRL0); 51 au_writel(sys_freqctrl, SYS_FREQCTRL0);
53 52
54 /* zero and disable USBH/USBD clocks */ 53 /* Zero and disable USBH/USBD clocks */
55 sys_clksrc = au_readl(SYS_CLKSRC); 54 sys_clksrc = au_readl(SYS_CLKSRC);
56 sys_clksrc &= ~0x00007FE0; 55 sys_clksrc &= ~(SYS_CS_CUD | SYS_CS_DUD | SYS_CS_MUD_MASK |
56 SYS_CS_CUH | SYS_CS_DUH | SYS_CS_MUH_MASK);
57 au_writel(sys_clksrc, SYS_CLKSRC); 57 au_writel(sys_clksrc, SYS_CLKSRC);
58 58
59 sys_freqctrl = au_readl(SYS_FREQCTRL0); 59 sys_freqctrl = au_readl(SYS_FREQCTRL0);
60 sys_freqctrl &= ~0xFFF00000; 60 sys_freqctrl &= ~0xFFF00000;
61 61
62 sys_clksrc = au_readl(SYS_CLKSRC); 62 sys_clksrc = au_readl(SYS_CLKSRC);
63 sys_clksrc &= ~0x00007FE0; 63 sys_clksrc &= ~(SYS_CS_CUD | SYS_CS_DUD | SYS_CS_MUD_MASK |
64 SYS_CS_CUH | SYS_CS_DUH | SYS_CS_MUH_MASK);
64 65
65 switch (prid & 0x000000FF) 66 switch (prid & 0x000000FF) {
66 {
67 case 0x00: /* DA */ 67 case 0x00: /* DA */
68 case 0x01: /* HA */ 68 case 0x01: /* HA */
69 case 0x02: /* HB */ 69 case 0x02: /* HB */
70 /* CPU core freq to 48MHz to slow it way down... */ 70 /* CPU core freq to 48 MHz to slow it way down... */
71 au_writel(4, SYS_CPUPLL); 71 au_writel(4, SYS_CPUPLL);
72 72
73 /* 73 /*
74 * Setup 48MHz FREQ2 from CPUPLL for USB Host 74 * Setup 48 MHz FREQ2 from CPUPLL for USB Host
75 */ 75 * FRDIV2 = 3 -> div by 8 of 384 MHz -> 48 MHz
76 /* FRDIV2=3 -> div by 8 of 384MHz -> 48MHz */ 76 */
77 sys_freqctrl |= ((3<<22) | (1<<21) | (0<<20)); 77 sys_freqctrl |= (3 << SYS_FC_FRDIV2_BIT) | SYS_FC_FE2;
78 au_writel(sys_freqctrl, SYS_FREQCTRL0); 78 au_writel(sys_freqctrl, SYS_FREQCTRL0);
79 79
80 /* CPU core freq to 384MHz */ 80 /* CPU core freq to 384 MHz */
81 au_writel(0x20, SYS_CPUPLL); 81 au_writel(0x20, SYS_CPUPLL);
82 82
83 printk("Au1000: 48MHz OHCI workaround enabled\n"); 83 printk(KERN_INFO "Au1000: 48 MHz OHCI workaround enabled\n");
84 break; 84 break;
85 85
86 default: /* HC and newer */ 86 default: /* HC and newer */
87 // FREQ2 = aux/2 = 48 MHz 87 /* FREQ2 = aux / 2 = 48 MHz */
88 sys_freqctrl |= ((0<<22) | (1<<21) | (1<<20)); 88 sys_freqctrl |= (0 << SYS_FC_FRDIV2_BIT) |
89 au_writel(sys_freqctrl, SYS_FREQCTRL0); 89 SYS_FC_FE2 | SYS_FC_FS2;
90 au_writel(sys_freqctrl, SYS_FREQCTRL0);
90 break; 91 break;
91 } 92 }
92 93
93 /* 94 /*
94 * Route 48MHz FREQ2 into USB Host and/or Device 95 * Route 48 MHz FREQ2 into USB Host and/or Device
95 */ 96 */
96#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) 97 sys_clksrc |= SYS_CS_MUX_FQ2 << SYS_CS_MUH_BIT;
97 sys_clksrc |= ((4<<12) | (0<<11) | (0<<10));
98#endif
99 au_writel(sys_clksrc, SYS_CLKSRC); 98 au_writel(sys_clksrc, SYS_CLKSRC);
100 99
101 // configure pins GPIO[14:9] as GPIO 100 /* Configure pins GPIO[14:9] as GPIO */
102 pin_func = au_readl(SYS_PINFUNC) & (u32)(~0x8080); 101 pin_func = au_readl(SYS_PINFUNC) & ~(SYS_PF_UR3 | SYS_PF_USB);
103 102
104 // 2nd USB port is USB host 103 /* 2nd USB port is USB host */
105 pin_func |= 0x8000; 104 pin_func |= SYS_PF_USB;
106 105
107 au_writel(pin_func, SYS_PINFUNC); 106 au_writel(pin_func, SYS_PINFUNC);
108 au_writel(0x2800, SYS_TRIOUTCLR); 107 au_writel(0x2800, SYS_TRIOUTCLR);
109 au_writel(0x0030, SYS_OUTPUTCLR); 108 au_writel(0x0030, SYS_OUTPUTCLR);
110#endif /* defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) */ 109#endif /* defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) */
111 110
112 // make gpio 15 an input (for interrupt line) 111 /* Make GPIO 15 an input (for interrupt line) */
113 pin_func = au_readl(SYS_PINFUNC) & (u32)(~0x100); 112 pin_func = au_readl(SYS_PINFUNC) & ~SYS_PF_IRF;
114 // we don't need I2S, so make it available for GPIO[31:29] 113 /* We don't need I2S, so make it available for GPIO[31:29] */
115 pin_func |= (1<<5); 114 pin_func |= SYS_PF_I2S;
116 au_writel(pin_func, SYS_PINFUNC); 115 au_writel(pin_func, SYS_PINFUNC);
117 116
118 au_writel(0x8000, SYS_TRIOUTCLR); 117 au_writel(0x8000, SYS_TRIOUTCLR);
119 118
120 static_cfg0 = au_readl(MEM_STCFG0) & (u32)(~0xc00); 119 static_cfg0 = au_readl(MEM_STCFG0) & ~0xc00;
121 au_writel(static_cfg0, MEM_STCFG0); 120 au_writel(static_cfg0, MEM_STCFG0);
122 121
123 // configure RCE2* for LCD 122 /* configure RCE2* for LCD */
124 au_writel(0x00000004, MEM_STCFG2); 123 au_writel(0x00000004, MEM_STCFG2);
125 124
126 // MEM_STTIME2 125 /* MEM_STTIME2 */
127 au_writel(0x09000000, MEM_STTIME2); 126 au_writel(0x09000000, MEM_STTIME2);
128 127
129 // Set 32-bit base address decoding for RCE2* 128 /* Set 32-bit base address decoding for RCE2* */
130 au_writel(0x10003ff0, MEM_STADDR2); 129 au_writel(0x10003ff0, MEM_STADDR2);
131 130
132 // PCI CPLD setup 131 /*
133 // expand CE0 to cover PCI 132 * PCI CPLD setup
133 * Expand CE0 to cover PCI
134 */
134 au_writel(0x11803e40, MEM_STADDR1); 135 au_writel(0x11803e40, MEM_STADDR1);
135 136
136 // burst visibility on 137 /* Burst visibility on */
137 au_writel(au_readl(MEM_STCFG0) | 0x1000, MEM_STCFG0); 138 au_writel(au_readl(MEM_STCFG0) | 0x1000, MEM_STCFG0);
138 139
139 au_writel(0x83, MEM_STCFG1); // ewait enabled, flash timing 140 au_writel(0x83, MEM_STCFG1); /* ewait enabled, flash timing */
140 au_writel(0x33030a10, MEM_STTIME1); // slower timing for FPGA 141 au_writel(0x33030a10, MEM_STTIME1); /* slower timing for FPGA */
141 142
142 /* setup the static bus controller */ 143 /* Setup the static bus controller */
143 au_writel(0x00000002, MEM_STCFG3); /* type = PCMCIA */ 144 au_writel(0x00000002, MEM_STCFG3); /* type = PCMCIA */
144 au_writel(0x280E3D07, MEM_STTIME3); /* 250ns cycle time */ 145 au_writel(0x280E3D07, MEM_STTIME3); /* 250ns cycle time */
145 au_writel(0x10000000, MEM_STADDR3); /* any PCMCIA select */ 146 au_writel(0x10000000, MEM_STADDR3); /* any PCMCIA select */
146 147
147#ifdef CONFIG_PCI 148 /*
148 au_writel(0, PCI_BRIDGE_CONFIG); // set extend byte to 0 149 * Enable Au1000 BCLK switching - note: sed1356 must not use
149 au_writel(0, SDRAM_MBAR); // set mbar to 0 150 * its BCLK (Au1000 LCLK) for any timings
150 au_writel(0x2, SDRAM_CMD); // enable memory accesses 151 */
151 au_sync_delay(1); 152 switch (prid & 0x000000FF) {
152#endif
153
154 /* Enable Au1000 BCLK switching - note: sed1356 must not use
155 * its BCLK (Au1000 LCLK) for any timings */
156 switch (prid & 0x000000FF)
157 {
158 case 0x00: /* DA */ 153 case 0x00: /* DA */
159 case 0x01: /* HA */ 154 case 0x01: /* HA */
160 case 0x02: /* HB */ 155 case 0x02: /* HB */
161 break; 156 break;
162 default: /* HC and newer */ 157 default: /* HC and newer */
163 /* Enable sys bus clock divider when IDLE state or no bus 158 /*
164 activity. */ 159 * Enable sys bus clock divider when IDLE state or no bus
160 * activity.
161 */
165 au_writel(au_readl(SYS_POWERCTRL) | (0x3 << 5), SYS_POWERCTRL); 162 au_writel(au_readl(SYS_POWERCTRL) | (0x3 << 5), SYS_POWERCTRL);
166 break; 163 break;
167 } 164 }
diff --git a/arch/mips/au1000/pb1000/init.c b/arch/mips/au1000/pb1000/init.c
index 549447df71d6..3837365d613d 100644
--- a/arch/mips/au1000/pb1000/init.c
+++ b/arch/mips/au1000/pb1000/init.c
@@ -1,10 +1,9 @@
1/* 1/*
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * PB1000 board setup 3 * Pb1000 board setup
4 * 4 *
5 * Copyright 2001 MontaVista Software Inc. 5 * Copyright 2001, 2008 MontaVista Software Inc.
6 * Author: MontaVista Software, Inc. 6 * Author: MontaVista Software, Inc. <source@mvista.com>
7 * ppopov@mvista.com or source@mvista.com
8 * 7 *
9 * This program is free software; you can redistribute it and/or modify it 8 * This program is free software; you can redistribute it and/or modify it
10 * under the terms of the GNU General Public License as published by the 9 * under the terms of the GNU General Public License as published by the
@@ -44,16 +43,15 @@ void __init prom_init(void)
44 unsigned char *memsize_str; 43 unsigned char *memsize_str;
45 unsigned long memsize; 44 unsigned long memsize;
46 45
47 prom_argc = (int) fw_arg0; 46 prom_argc = (int)fw_arg0;
48 prom_argv = (char **) fw_arg1; 47 prom_argv = (char **)fw_arg1;
49 prom_envp = (char **) fw_arg2; 48 prom_envp = (char **)fw_arg2;
50 49
51 prom_init_cmdline(); 50 prom_init_cmdline();
52 memsize_str = prom_getenv("memsize"); 51 memsize_str = prom_getenv("memsize");
53 if (!memsize_str) { 52 if (!memsize_str)
54 memsize = 0x04000000; 53 memsize = 0x04000000;
55 } else { 54 else
56 memsize = simple_strtol(memsize_str, NULL, 0); 55 memsize = strict_strtol(memsize_str, 0, NULL);
57 }
58 add_memory_region(0, memsize, BOOT_MEM_RAM); 56 add_memory_region(0, memsize, BOOT_MEM_RAM);
59} 57}
diff --git a/arch/mips/au1000/pb1100/Makefile b/arch/mips/au1000/pb1100/Makefile
index 996236df6375..793e97c49e46 100644
--- a/arch/mips/au1000/pb1100/Makefile
+++ b/arch/mips/au1000/pb1100/Makefile
@@ -1,8 +1,8 @@
1# 1#
2# Copyright 2000,2001 MontaVista Software Inc. 2# Copyright 2000, 2001, 2008 MontaVista Software Inc.
3# Author: MontaVista Software, Inc. 3# Author: MontaVista Software, Inc. <source@mvista.com>
4# ppopov@mvista.com or source@mvista.com
5# 4#
6# Makefile for the Alchemy Semiconductor Pb1100 board. 5# Makefile for the Alchemy Semiconductor Pb1100 board.
6#
7 7
8lib-y := init.o board_setup.o irqmap.o 8lib-y := init.o board_setup.o irqmap.o
diff --git a/arch/mips/au1000/pb1100/board_setup.c b/arch/mips/au1000/pb1100/board_setup.c
index 656164c8e9ca..c0bfd59a7a36 100644
--- a/arch/mips/au1000/pb1100/board_setup.c
+++ b/arch/mips/au1000/pb1100/board_setup.c
@@ -1,7 +1,6 @@
1/* 1/*
2 * Copyright 2002 MontaVista Software Inc. 2 * Copyright 2002, 2008 MontaVista Software Inc.
3 * Author: MontaVista Software, Inc. 3 * Author: MontaVista Software, Inc. <source@mvista.com>
4 * ppopov@mvista.com or source@mvista.com
5 * 4 *
6 * This program is free software; you can redistribute it and/or modify it 5 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the 6 * under the terms of the GNU General Public License as published by the
@@ -32,15 +31,15 @@
32 31
33void board_reset(void) 32void board_reset(void)
34{ 33{
35 /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ 34 /* Hit BCSR.RST_VDDI[SOFT_RESET] */
36 au_writel(0x00000000, 0xAE00001C); 35 au_writel(0x00000000, PB1100_RST_VDDI);
37} 36}
38 37
39void __init board_setup(void) 38void __init board_setup(void)
40{ 39{
41 volatile void __iomem * base = (volatile void __iomem *) 0xac000000UL; 40 volatile void __iomem *base = (volatile void __iomem *)0xac000000UL;
42 41
43 // set AUX clock to 12MHz * 8 = 96 MHz 42 /* Set AUX clock to 12 MHz * 8 = 96 MHz */
44 au_writel(8, SYS_AUXPLL); 43 au_writel(8, SYS_AUXPLL);
45 au_writel(0, SYS_PININPUTEN); 44 au_writel(0, SYS_PININPUTEN);
46 udelay(100); 45 udelay(100);
@@ -49,44 +48,47 @@ void __init board_setup(void)
49 { 48 {
50 u32 pin_func, sys_freqctrl, sys_clksrc; 49 u32 pin_func, sys_freqctrl, sys_clksrc;
51 50
52 // configure pins GPIO[14:9] as GPIO 51 /* Configure pins GPIO[14:9] as GPIO */
53 pin_func = au_readl(SYS_PINFUNC) & (u32)(~0x80); 52 pin_func = au_readl(SYS_PINFUNC) & ~SYS_PF_UR3;
54 53
55 /* zero and disable FREQ2 */ 54 /* Zero and disable FREQ2 */
56 sys_freqctrl = au_readl(SYS_FREQCTRL0); 55 sys_freqctrl = au_readl(SYS_FREQCTRL0);
57 sys_freqctrl &= ~0xFFF00000; 56 sys_freqctrl &= ~0xFFF00000;
58 au_writel(sys_freqctrl, SYS_FREQCTRL0); 57 au_writel(sys_freqctrl, SYS_FREQCTRL0);
59 58
60 /* zero and disable USBH/USBD/IrDA clock */ 59 /* Zero and disable USBH/USBD/IrDA clock */
61 sys_clksrc = au_readl(SYS_CLKSRC); 60 sys_clksrc = au_readl(SYS_CLKSRC);
62 sys_clksrc &= ~0x0000001F; 61 sys_clksrc &= ~(SYS_CS_CIR | SYS_CS_DIR | SYS_CS_MIR_MASK);
63 au_writel(sys_clksrc, SYS_CLKSRC); 62 au_writel(sys_clksrc, SYS_CLKSRC);
64 63
65 sys_freqctrl = au_readl(SYS_FREQCTRL0); 64 sys_freqctrl = au_readl(SYS_FREQCTRL0);
66 sys_freqctrl &= ~0xFFF00000; 65 sys_freqctrl &= ~0xFFF00000;
67 66
68 sys_clksrc = au_readl(SYS_CLKSRC); 67 sys_clksrc = au_readl(SYS_CLKSRC);
69 sys_clksrc &= ~0x0000001F; 68 sys_clksrc &= ~(SYS_CS_CIR | SYS_CS_DIR | SYS_CS_MIR_MASK);
70 69
71 // FREQ2 = aux/2 = 48 MHz 70 /* FREQ2 = aux / 2 = 48 MHz */
72 sys_freqctrl |= ((0<<22) | (1<<21) | (1<<20)); 71 sys_freqctrl |= (0 << SYS_FC_FRDIV2_BIT) |
72 SYS_FC_FE2 | SYS_FC_FS2;
73 au_writel(sys_freqctrl, SYS_FREQCTRL0); 73 au_writel(sys_freqctrl, SYS_FREQCTRL0);
74 74
75 /* 75 /*
76 * Route 48MHz FREQ2 into USBH/USBD/IrDA 76 * Route 48 MHz FREQ2 into USBH/USBD/IrDA
77 */ 77 */
78 sys_clksrc |= ((4<<2) | (0<<1) | 0 ); 78 sys_clksrc |= SYS_CS_MUX_FQ2 << SYS_CS_MIR_BIT;
79 au_writel(sys_clksrc, SYS_CLKSRC); 79 au_writel(sys_clksrc, SYS_CLKSRC);
80 80
81 /* setup the static bus controller */ 81 /* Setup the static bus controller */
82 au_writel(0x00000002, MEM_STCFG3); /* type = PCMCIA */ 82 au_writel(0x00000002, MEM_STCFG3); /* type = PCMCIA */
83 au_writel(0x280E3D07, MEM_STTIME3); /* 250ns cycle time */ 83 au_writel(0x280E3D07, MEM_STTIME3); /* 250ns cycle time */
84 au_writel(0x10000000, MEM_STADDR3); /* any PCMCIA select */ 84 au_writel(0x10000000, MEM_STADDR3); /* any PCMCIA select */
85 85
86 // get USB Functionality pin state (device vs host drive pins) 86 /*
87 pin_func = au_readl(SYS_PINFUNC) & (u32)(~0x8000); 87 * Get USB Functionality pin state (device vs host drive pins).
88 // 2nd USB port is USB host 88 */
89 pin_func |= 0x8000; 89 pin_func = au_readl(SYS_PINFUNC) & ~SYS_PF_USB;
90 /* 2nd USB port is USB host. */
91 pin_func |= SYS_PF_USB;
90 au_writel(pin_func, SYS_PINFUNC); 92 au_writel(pin_func, SYS_PINFUNC);
91 } 93 }
92#endif /* defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) */ 94#endif /* defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) */
@@ -94,12 +96,12 @@ void __init board_setup(void)
94 /* Enable sys bus clock divider when IDLE state or no bus activity. */ 96 /* Enable sys bus clock divider when IDLE state or no bus activity. */
95 au_writel(au_readl(SYS_POWERCTRL) | (0x3 << 5), SYS_POWERCTRL); 97 au_writel(au_readl(SYS_POWERCTRL) | (0x3 << 5), SYS_POWERCTRL);
96 98
97 // Enable the RTC if not already enabled 99 /* Enable the RTC if not already enabled. */
98 if (!(readb(base + 0x28) & 0x20)) { 100 if (!(readb(base + 0x28) & 0x20)) {
99 writeb(readb(base + 0x28) | 0x20, base + 0x28); 101 writeb(readb(base + 0x28) | 0x20, base + 0x28);
100 au_sync(); 102 au_sync();
101 } 103 }
102 // Put the clock in BCD mode 104 /* Put the clock in BCD mode. */
103 if (readb(base + 0x2C) & 0x4) { /* reg B */ 105 if (readb(base + 0x2C) & 0x4) { /* reg B */
104 writeb(readb(base + 0x2c) & ~0x4, base + 0x2c); 106 writeb(readb(base + 0x2c) & ~0x4, base + 0x2c);
105 au_sync(); 107 au_sync();
diff --git a/arch/mips/au1000/pb1100/init.c b/arch/mips/au1000/pb1100/init.c
index c91344648ed3..8355483f3de2 100644
--- a/arch/mips/au1000/pb1100/init.c
+++ b/arch/mips/au1000/pb1100/init.c
@@ -3,9 +3,8 @@
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * Pb1100 board setup 4 * Pb1100 board setup
5 * 5 *
6 * Copyright 2002 MontaVista Software Inc. 6 * Copyright 2002, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This program is free software; you can redistribute it and/or modify it 9 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the 10 * under the terms of the GNU General Public License as published by the
@@ -46,8 +45,8 @@ void __init prom_init(void)
46 unsigned long memsize; 45 unsigned long memsize;
47 46
48 prom_argc = fw_arg0; 47 prom_argc = fw_arg0;
49 prom_argv = (char **) fw_arg1; 48 prom_argv = (char **)fw_arg1;
50 prom_envp = (char **) fw_arg3; 49 prom_envp = (char **)fw_arg3;
51 50
52 prom_init_cmdline(); 51 prom_init_cmdline();
53 52
@@ -55,7 +54,7 @@ void __init prom_init(void)
55 if (!memsize_str) 54 if (!memsize_str)
56 memsize = 0x04000000; 55 memsize = 0x04000000;
57 else 56 else
58 memsize = simple_strtol(memsize_str, NULL, 0); 57 memsize = strict_strtol(memsize_str, 0, NULL);
59 58
60 add_memory_region(0, memsize, BOOT_MEM_RAM); 59 add_memory_region(0, memsize, BOOT_MEM_RAM);
61} 60}
diff --git a/arch/mips/au1000/pb1100/irqmap.c b/arch/mips/au1000/pb1100/irqmap.c
index b5021e3d477f..9b7dd8b41283 100644
--- a/arch/mips/au1000/pb1100/irqmap.c
+++ b/arch/mips/au1000/pb1100/irqmap.c
@@ -1,6 +1,6 @@
1/* 1/*
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * Au1xxx irq map table 3 * Au1xx0 IRQ map table
4 * 4 *
5 * Copyright 2003 Embedded Edge, LLC 5 * Copyright 2003 Embedded Edge, LLC
6 * dan@embeddededge.com 6 * dan@embeddededge.com
@@ -31,10 +31,10 @@
31#include <asm/mach-au1x00/au1000.h> 31#include <asm/mach-au1x00/au1000.h>
32 32
33struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { 33struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
34 { AU1000_GPIO_9, INTC_INT_LOW_LEVEL, 0 }, // PCMCIA Card Fully_Interted# 34 { AU1000_GPIO_9, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card Fully_Inserted# */
35 { AU1000_GPIO_10, INTC_INT_LOW_LEVEL, 0 }, // PCMCIA Card STSCHG# 35 { AU1000_GPIO_10, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card STSCHG# */
36 { AU1000_GPIO_11, INTC_INT_LOW_LEVEL, 0 }, // PCMCIA Card IRQ# 36 { AU1000_GPIO_11, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card IRQ# */
37 { AU1000_GPIO_13, INTC_INT_LOW_LEVEL, 0 }, // DC_IRQ# 37 { AU1000_GPIO_13, INTC_INT_LOW_LEVEL, 0 }, /* DC_IRQ# */
38}; 38};
39 39
40int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map); 40int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
diff --git a/arch/mips/au1000/pb1200/Makefile b/arch/mips/au1000/pb1200/Makefile
index 4fe02ea65a60..d678adf7ce85 100644
--- a/arch/mips/au1000/pb1200/Makefile
+++ b/arch/mips/au1000/pb1200/Makefile
@@ -1,5 +1,5 @@
1# 1#
2# Makefile for the Alchemy Semiconductor PB1200 board. 2# Makefile for the Alchemy Semiconductor Pb1200/DBAu1200 boards.
3# 3#
4 4
5lib-y := init.o board_setup.o irqmap.o 5lib-y := init.o board_setup.o irqmap.o
diff --git a/arch/mips/au1000/pb1200/board_setup.c b/arch/mips/au1000/pb1200/board_setup.c
index 4493a792cc4c..6cb2115059ad 100644
--- a/arch/mips/au1000/pb1200/board_setup.c
+++ b/arch/mips/au1000/pb1200/board_setup.c
@@ -27,16 +27,8 @@
27#include <linux/init.h> 27#include <linux/init.h>
28#include <linux/sched.h> 28#include <linux/sched.h>
29 29
30#include <au1000.h>
31#include <prom.h> 30#include <prom.h>
32 31#include <au1xxx.h>
33#ifdef CONFIG_MIPS_PB1200
34#include <asm/mach-pb1x00/pb1200.h>
35#endif
36
37#ifdef CONFIG_MIPS_DB1200
38#include <asm/mach-db1x00/db1200.h>
39#endif
40 32
41extern void _board_init_irq(void); 33extern void _board_init_irq(void);
42extern void (*board_init_irq)(void); 34extern void (*board_init_irq)(void);
@@ -53,56 +45,57 @@ void __init board_setup(void)
53 45
54#if 0 46#if 0
55 { 47 {
56 u32 pin_func; 48 u32 pin_func;
57 49
58 /* Enable PSC1 SYNC for AC97. Normaly done in audio driver, 50 /*
59 * but it is board specific code, so put it here. 51 * Enable PSC1 SYNC for AC97. Normaly done in audio driver,
60 */ 52 * but it is board specific code, so put it here.
61 pin_func = au_readl(SYS_PINFUNC); 53 */
62 au_sync(); 54 pin_func = au_readl(SYS_PINFUNC);
63 pin_func |= SYS_PF_MUST_BE_SET | SYS_PF_PSC1_S1; 55 au_sync();
64 au_writel(pin_func, SYS_PINFUNC); 56 pin_func |= SYS_PF_MUST_BE_SET | SYS_PF_PSC1_S1;
65 57 au_writel(pin_func, SYS_PINFUNC);
66 au_writel(0, (u32)bcsr|0x10); /* turn off pcmcia power */ 58
67 au_sync(); 59 au_writel(0, (u32)bcsr | 0x10); /* turn off PCMCIA power */
60 au_sync();
68 } 61 }
69#endif 62#endif
70 63
71#if defined(CONFIG_I2C_AU1550) 64#if defined(CONFIG_I2C_AU1550)
72 { 65 {
73 u32 freq0, clksrc; 66 u32 freq0, clksrc;
74 u32 pin_func; 67 u32 pin_func;
75 68
76 /* Select SMBUS in CPLD */ 69 /* Select SMBus in CPLD */
77 bcsr->resets &= ~(BCSR_RESETS_PCS0MUX); 70 bcsr->resets &= ~BCSR_RESETS_PCS0MUX;
78 71
79 pin_func = au_readl(SYS_PINFUNC); 72 pin_func = au_readl(SYS_PINFUNC);
80 au_sync(); 73 au_sync();
81 pin_func &= ~(3<<17 | 1<<4); 74 pin_func &= ~(SYS_PINFUNC_P0A | SYS_PINFUNC_P0B);
82 /* Set GPIOs correctly */ 75 /* Set GPIOs correctly */
83 pin_func |= 2<<17; 76 pin_func |= 2 << 17;
84 au_writel(pin_func, SYS_PINFUNC); 77 au_writel(pin_func, SYS_PINFUNC);
85 au_sync(); 78 au_sync();
86 79
87 /* The i2c driver depends on 50Mhz clock */ 80 /* The I2C driver depends on 50 MHz clock */
88 freq0 = au_readl(SYS_FREQCTRL0); 81 freq0 = au_readl(SYS_FREQCTRL0);
89 au_sync(); 82 au_sync();
90 freq0 &= ~(SYS_FC_FRDIV1_MASK | SYS_FC_FS1 | SYS_FC_FE1); 83 freq0 &= ~(SYS_FC_FRDIV1_MASK | SYS_FC_FS1 | SYS_FC_FE1);
91 freq0 |= (3<<SYS_FC_FRDIV1_BIT); 84 freq0 |= 3 << SYS_FC_FRDIV1_BIT;
92 /* 396Mhz / (3+1)*2 == 49.5Mhz */ 85 /* 396 MHz / (3 + 1) * 2 == 49.5 MHz */
93 au_writel(freq0, SYS_FREQCTRL0); 86 au_writel(freq0, SYS_FREQCTRL0);
94 au_sync(); 87 au_sync();
95 freq0 |= SYS_FC_FE1; 88 freq0 |= SYS_FC_FE1;
96 au_writel(freq0, SYS_FREQCTRL0); 89 au_writel(freq0, SYS_FREQCTRL0);
97 au_sync(); 90 au_sync();
98 91
99 clksrc = au_readl(SYS_CLKSRC); 92 clksrc = au_readl(SYS_CLKSRC);
100 au_sync(); 93 au_sync();
101 clksrc &= ~0x01f00000; 94 clksrc &= ~(SYS_CS_CE0 | SYS_CS_DE0 | SYS_CS_ME0_MASK);
102 /* bit 22 is EXTCLK0 for PSC0 */ 95 /* Bit 22 is EXTCLK0 for PSC0 */
103 clksrc |= (0x3 << 22); 96 clksrc |= SYS_CS_MUX_FQ1 << SYS_CS_ME0_BIT;
104 au_writel(clksrc, SYS_CLKSRC); 97 au_writel(clksrc, SYS_CLKSRC);
105 au_sync(); 98 au_sync();
106 } 99 }
107#endif 100#endif
108 101
@@ -116,27 +109,27 @@ void __init board_setup(void)
116#endif 109#endif
117#endif 110#endif
118 111
119 /* The Pb1200 development board uses external MUX for PSC0 to 112 /*
120 support SMB/SPI. bcsr->resets bit 12: 0=SMB 1=SPI 113 * The Pb1200 development board uses external MUX for PSC0 to
121 */ 114 * support SMB/SPI. bcsr->resets bit 12: 0=SMB 1=SPI
115 */
122#ifdef CONFIG_I2C_AU1550 116#ifdef CONFIG_I2C_AU1550
123 bcsr->resets &= (~BCSR_RESETS_PCS0MUX); 117 bcsr->resets &= ~BCSR_RESETS_PCS0MUX;
124#endif 118#endif
125 au_sync(); 119 au_sync();
126 120
127#ifdef CONFIG_MIPS_PB1200 121#ifdef CONFIG_MIPS_PB1200
128 printk("AMD Alchemy Pb1200 Board\n"); 122 printk(KERN_INFO "AMD Alchemy Pb1200 Board\n");
129#endif 123#endif
130#ifdef CONFIG_MIPS_DB1200 124#ifdef CONFIG_MIPS_DB1200
131 printk("AMD Alchemy Db1200 Board\n"); 125 printk(KERN_INFO "AMD Alchemy Db1200 Board\n");
132#endif 126#endif
133 127
134 /* Setup Pb1200 External Interrupt Controller */ 128 /* Setup Pb1200 External Interrupt Controller */
135 board_init_irq = _board_init_irq; 129 board_init_irq = _board_init_irq;
136} 130}
137 131
138int 132int board_au1200fb_panel(void)
139board_au1200fb_panel(void)
140{ 133{
141 BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR; 134 BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR;
142 int p; 135 int p;
@@ -147,23 +140,23 @@ board_au1200fb_panel(void)
147 return p; 140 return p;
148} 141}
149 142
150int 143int board_au1200fb_panel_init(void)
151board_au1200fb_panel_init(void)
152{ 144{
153 /* Apply power */ 145 /* Apply power */
154 BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR; 146 BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR;
155 bcsr->board |= (BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | BCSR_BOARD_LCDBL); 147
156 /*printk("board_au1200fb_panel_init()\n"); */ 148 bcsr->board |= BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | BCSR_BOARD_LCDBL;
149 /* printk(KERN_DEBUG "board_au1200fb_panel_init()\n"); */
157 return 0; 150 return 0;
158} 151}
159 152
160int 153int board_au1200fb_panel_shutdown(void)
161board_au1200fb_panel_shutdown(void)
162{ 154{
163 /* Remove power */ 155 /* Remove power */
164 BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR; 156 BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR;
165 bcsr->board &= ~(BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | BCSR_BOARD_LCDBL); 157
166 /*printk("board_au1200fb_panel_shutdown()\n"); */ 158 bcsr->board &= ~(BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD |
159 BCSR_BOARD_LCDBL);
160 /* printk(KERN_DEBUG "board_au1200fb_panel_shutdown()\n"); */
167 return 0; 161 return 0;
168} 162}
169
diff --git a/arch/mips/au1000/pb1200/init.c b/arch/mips/au1000/pb1200/init.c
index 72af5500660b..09fd63b86062 100644
--- a/arch/mips/au1000/pb1200/init.c
+++ b/arch/mips/au1000/pb1200/init.c
@@ -3,9 +3,8 @@
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * PB1200 board setup 4 * PB1200 board setup
5 * 5 *
6 * Copyright 2001 MontaVista Software Inc. 6 * Copyright 2001, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This program is free software; you can redistribute it and/or modify it 9 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the 10 * under the terms of the GNU General Public License as published by the
@@ -45,16 +44,15 @@ void __init prom_init(void)
45 unsigned char *memsize_str; 44 unsigned char *memsize_str;
46 unsigned long memsize; 45 unsigned long memsize;
47 46
48 prom_argc = (int) fw_arg0; 47 prom_argc = (int)fw_arg0;
49 prom_argv = (char **) fw_arg1; 48 prom_argv = (char **)fw_arg1;
50 prom_envp = (char **) fw_arg2; 49 prom_envp = (char **)fw_arg2;
51 50
52 prom_init_cmdline(); 51 prom_init_cmdline();
53 memsize_str = prom_getenv("memsize"); 52 memsize_str = prom_getenv("memsize");
54 if (!memsize_str) { 53 if (!memsize_str)
55 memsize = 0x08000000; 54 memsize = 0x08000000;
56 } else { 55 else
57 memsize = simple_strtol(memsize_str, NULL, 0); 56 memsize = strict_strtol(memsize_str, 0, NULL);
58 }
59 add_memory_region(0, memsize, BOOT_MEM_RAM); 57 add_memory_region(0, memsize, BOOT_MEM_RAM);
60} 58}
diff --git a/arch/mips/au1000/pb1200/irqmap.c b/arch/mips/au1000/pb1200/irqmap.c
index e61eb8e0b76b..2a505ad8715b 100644
--- a/arch/mips/au1000/pb1200/irqmap.c
+++ b/arch/mips/au1000/pb1200/irqmap.c
@@ -39,25 +39,25 @@
39#endif 39#endif
40 40
41struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { 41struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
42 { AU1000_GPIO_7, INTC_INT_LOW_LEVEL, 0 }, // This is exteranl interrupt cascade 42 /* This is external interrupt cascade */
43 { AU1000_GPIO_7, INTC_INT_LOW_LEVEL, 0 },
43}; 44};
44 45
45int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map); 46int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
46 47
47/* 48/*
48 * Support for External interrupts on the PbAu1200 Development platform. 49 * Support for External interrupts on the Pb1200 Development platform.
49 */ 50 */
50static volatile int pb1200_cascade_en=0; 51static volatile int pb1200_cascade_en;
51 52
52irqreturn_t pb1200_cascade_handler( int irq, void *dev_id) 53irqreturn_t pb1200_cascade_handler(int irq, void *dev_id)
53{ 54{
54 unsigned short bisr = bcsr->int_status; 55 unsigned short bisr = bcsr->int_status;
55 int extirq_nr = 0; 56 int extirq_nr = 0;
56 57
57 /* Clear all the edge interrupts. This has no effect on level */ 58 /* Clear all the edge interrupts. This has no effect on level. */
58 bcsr->int_status = bisr; 59 bcsr->int_status = bisr;
59 for( ; bisr; bisr &= (bisr-1) ) 60 for ( ; bisr; bisr &= bisr - 1) {
60 {
61 extirq_nr = PB1200_INT_BEGIN + __ffs(bisr); 61 extirq_nr = PB1200_INT_BEGIN + __ffs(bisr);
62 /* Ack and dispatch IRQ */ 62 /* Ack and dispatch IRQ */
63 do_IRQ(extirq_nr); 63 do_IRQ(extirq_nr);
@@ -68,26 +68,20 @@ irqreturn_t pb1200_cascade_handler( int irq, void *dev_id)
68 68
69inline void pb1200_enable_irq(unsigned int irq_nr) 69inline void pb1200_enable_irq(unsigned int irq_nr)
70{ 70{
71 bcsr->intset_mask = 1<<(irq_nr - PB1200_INT_BEGIN); 71 bcsr->intset_mask = 1 << (irq_nr - PB1200_INT_BEGIN);
72 bcsr->intset = 1<<(irq_nr - PB1200_INT_BEGIN); 72 bcsr->intset = 1 << (irq_nr - PB1200_INT_BEGIN);
73} 73}
74 74
75inline void pb1200_disable_irq(unsigned int irq_nr) 75inline void pb1200_disable_irq(unsigned int irq_nr)
76{ 76{
77 bcsr->intclr_mask = 1<<(irq_nr - PB1200_INT_BEGIN); 77 bcsr->intclr_mask = 1 << (irq_nr - PB1200_INT_BEGIN);
78 bcsr->intclr = 1<<(irq_nr - PB1200_INT_BEGIN); 78 bcsr->intclr = 1 << (irq_nr - PB1200_INT_BEGIN);
79} 79}
80 80
81static unsigned int pb1200_setup_cascade(void) 81static unsigned int pb1200_setup_cascade(void)
82{ 82{
83 int err; 83 return request_irq(AU1000_GPIO_7, &pb1200_cascade_handler,
84 84 0, "Pb1200 Cascade", &pb1200_cascade_handler);
85 err = request_irq(AU1000_GPIO_7, &pb1200_cascade_handler,
86 0, "Pb1200 Cascade", &pb1200_cascade_handler);
87 if (err)
88 return err;
89
90 return 0;
91} 85}
92 86
93static unsigned int pb1200_startup_irq(unsigned int irq) 87static unsigned int pb1200_startup_irq(unsigned int irq)
@@ -132,23 +126,23 @@ void _board_init_irq(void)
132 unsigned int irq; 126 unsigned int irq;
133 127
134#ifdef CONFIG_MIPS_PB1200 128#ifdef CONFIG_MIPS_PB1200
135 /* We have a problem with CPLD rev3. Enable a workaround */ 129 /* We have a problem with CPLD rev 3. */
136 if (((bcsr->whoami & BCSR_WHOAMI_CPLD) >> 4) <= 3) { 130 if (((bcsr->whoami & BCSR_WHOAMI_CPLD) >> 4) <= 3) {
137 printk("\nWARNING!!!\n"); 131 printk(KERN_ERR "WARNING!!!\n");
138 printk("\nWARNING!!!\n"); 132 printk(KERN_ERR "WARNING!!!\n");
139 printk("\nWARNING!!!\n"); 133 printk(KERN_ERR "WARNING!!!\n");
140 printk("\nWARNING!!!\n"); 134 printk(KERN_ERR "WARNING!!!\n");
141 printk("\nWARNING!!!\n"); 135 printk(KERN_ERR "WARNING!!!\n");
142 printk("\nWARNING!!!\n"); 136 printk(KERN_ERR "WARNING!!!\n");
143 printk("Pb1200 must be at CPLD rev4. Please have Pb1200\n"); 137 printk(KERN_ERR "Pb1200 must be at CPLD rev 4. Please have Pb1200\n");
144 printk("updated to latest revision. This software will not\n"); 138 printk(KERN_ERR "updated to latest revision. This software will\n");
145 printk("work on anything less than CPLD rev4\n"); 139 printk(KERN_ERR "not work on anything less than CPLD rev 4.\n");
146 printk("\nWARNING!!!\n"); 140 printk(KERN_ERR "WARNING!!!\n");
147 printk("\nWARNING!!!\n"); 141 printk(KERN_ERR "WARNING!!!\n");
148 printk("\nWARNING!!!\n"); 142 printk(KERN_ERR "WARNING!!!\n");
149 printk("\nWARNING!!!\n"); 143 printk(KERN_ERR "WARNING!!!\n");
150 printk("\nWARNING!!!\n"); 144 printk(KERN_ERR "WARNING!!!\n");
151 printk("\nWARNING!!!\n"); 145 printk(KERN_ERR "WARNING!!!\n");
152 panic("Game over. Your score is 0."); 146 panic("Game over. Your score is 0.");
153 } 147 }
154#endif 148#endif
@@ -161,6 +155,6 @@ void _board_init_irq(void)
161 155
162 /* 156 /*
163 * GPIO_7 can not be hooked here, so it is hooked upon first 157 * GPIO_7 can not be hooked here, so it is hooked upon first
164 * request of any source attached to the cascade 158 * request of any source attached to the cascade.
165 */ 159 */
166} 160}
diff --git a/arch/mips/au1000/pb1500/Makefile b/arch/mips/au1000/pb1500/Makefile
index 97a730813cd3..602f38df20bb 100644
--- a/arch/mips/au1000/pb1500/Makefile
+++ b/arch/mips/au1000/pb1500/Makefile
@@ -1,8 +1,8 @@
1# 1#
2# Copyright 2000,2001 MontaVista Software Inc. 2# Copyright 2000, 2001, 2008 MontaVista Software Inc.
3# Author: MontaVista Software, Inc. 3# Author: MontaVista Software, Inc. <source@mvista.com>
4# ppopov@mvista.com or source@mvista.com
5# 4#
6# Makefile for the Alchemy Semiconductor Pb1500 board. 5# Makefile for the Alchemy Semiconductor Pb1500 board.
6#
7 7
8lib-y := init.o board_setup.o irqmap.o 8lib-y := init.o board_setup.o irqmap.o
diff --git a/arch/mips/au1000/pb1500/board_setup.c b/arch/mips/au1000/pb1500/board_setup.c
index 24c652e8ec4b..035771c6e5b8 100644
--- a/arch/mips/au1000/pb1500/board_setup.c
+++ b/arch/mips/au1000/pb1500/board_setup.c
@@ -1,7 +1,6 @@
1/* 1/*
2 * Copyright 2000 MontaVista Software Inc. 2 * Copyright 2000, 2008 MontaVista Software Inc.
3 * Author: MontaVista Software, Inc. 3 * Author: MontaVista Software, Inc. <source@mvista.com>
4 * ppopov@mvista.com or source@mvista.com
5 * 4 *
6 * This program is free software; you can redistribute it and/or modify it 5 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the 6 * under the terms of the GNU General Public License as published by the
@@ -32,8 +31,8 @@
32 31
33void board_reset(void) 32void board_reset(void)
34{ 33{
35 /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ 34 /* Hit BCSR.RST_VDDI[SOFT_RESET] */
36 au_writel(0x00000000, 0xAE00001C); 35 au_writel(0x00000000, PB1500_RST_VDDI);
37} 36}
38 37
39void __init board_setup(void) 38void __init board_setup(void)
@@ -42,7 +41,7 @@ void __init board_setup(void)
42 u32 sys_freqctrl, sys_clksrc; 41 u32 sys_freqctrl, sys_clksrc;
43 42
44 sys_clksrc = sys_freqctrl = pin_func = 0; 43 sys_clksrc = sys_freqctrl = pin_func = 0;
45 // set AUX clock to 12MHz * 8 = 96 MHz 44 /* Set AUX clock to 12 MHz * 8 = 96 MHz */
46 au_writel(8, SYS_AUXPLL); 45 au_writel(8, SYS_AUXPLL);
47 au_writel(0, SYS_PINSTATERD); 46 au_writel(0, SYS_PINSTATERD);
48 udelay(100); 47 udelay(100);
@@ -51,51 +50,48 @@ void __init board_setup(void)
51 50
52 /* GPIO201 is input for PCMCIA card detect */ 51 /* GPIO201 is input for PCMCIA card detect */
53 /* GPIO203 is input for PCMCIA interrupt request */ 52 /* GPIO203 is input for PCMCIA interrupt request */
54 au_writel(au_readl(GPIO2_DIR) & (u32)(~((1<<1)|(1<<3))), GPIO2_DIR); 53 au_writel(au_readl(GPIO2_DIR) & ~((1 << 1) | (1 << 3)), GPIO2_DIR);
55 54
56 /* zero and disable FREQ2 */ 55 /* Zero and disable FREQ2 */
57 sys_freqctrl = au_readl(SYS_FREQCTRL0); 56 sys_freqctrl = au_readl(SYS_FREQCTRL0);
58 sys_freqctrl &= ~0xFFF00000; 57 sys_freqctrl &= ~0xFFF00000;
59 au_writel(sys_freqctrl, SYS_FREQCTRL0); 58 au_writel(sys_freqctrl, SYS_FREQCTRL0);
60 59
61 /* zero and disable USBH/USBD clocks */ 60 /* zero and disable USBH/USBD clocks */
62 sys_clksrc = au_readl(SYS_CLKSRC); 61 sys_clksrc = au_readl(SYS_CLKSRC);
63 sys_clksrc &= ~0x00007FE0; 62 sys_clksrc &= ~(SYS_CS_CUD | SYS_CS_DUD | SYS_CS_MUD_MASK |
63 SYS_CS_CUH | SYS_CS_DUH | SYS_CS_MUH_MASK);
64 au_writel(sys_clksrc, SYS_CLKSRC); 64 au_writel(sys_clksrc, SYS_CLKSRC);
65 65
66 sys_freqctrl = au_readl(SYS_FREQCTRL0); 66 sys_freqctrl = au_readl(SYS_FREQCTRL0);
67 sys_freqctrl &= ~0xFFF00000; 67 sys_freqctrl &= ~0xFFF00000;
68 68
69 sys_clksrc = au_readl(SYS_CLKSRC); 69 sys_clksrc = au_readl(SYS_CLKSRC);
70 sys_clksrc &= ~0x00007FE0; 70 sys_clksrc &= ~(SYS_CS_CUD | SYS_CS_DUD | SYS_CS_MUD_MASK |
71 SYS_CS_CUH | SYS_CS_DUH | SYS_CS_MUH_MASK);
71 72
72 // FREQ2 = aux/2 = 48 MHz 73 /* FREQ2 = aux/2 = 48 MHz */
73 sys_freqctrl |= ((0<<22) | (1<<21) | (1<<20)); 74 sys_freqctrl |= (0 << SYS_FC_FRDIV2_BIT) | SYS_FC_FE2 | SYS_FC_FS2;
74 au_writel(sys_freqctrl, SYS_FREQCTRL0); 75 au_writel(sys_freqctrl, SYS_FREQCTRL0);
75 76
76 /* 77 /*
77 * Route 48MHz FREQ2 into USB Host and/or Device 78 * Route 48MHz FREQ2 into USB Host and/or Device
78 */ 79 */
79#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) 80 sys_clksrc |= SYS_CS_MUX_FQ2 << SYS_CS_MUH_BIT;
80 sys_clksrc |= ((4<<12) | (0<<11) | (0<<10));
81#endif
82 au_writel(sys_clksrc, SYS_CLKSRC); 81 au_writel(sys_clksrc, SYS_CLKSRC);
83 82
84 83 pin_func = au_readl(SYS_PINFUNC) & ~SYS_PF_USB;
85 pin_func = au_readl(SYS_PINFUNC) & (u32)(~0x8000); 84 /* 2nd USB port is USB host */
86 // 2nd USB port is USB host 85 pin_func |= SYS_PF_USB;
87 pin_func |= 0x8000;
88 au_writel(pin_func, SYS_PINFUNC); 86 au_writel(pin_func, SYS_PINFUNC);
89#endif /* defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) */ 87#endif /* defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) */
90 88
91
92
93#ifdef CONFIG_PCI 89#ifdef CONFIG_PCI
94 // Setup PCI bus controller 90 /* Setup PCI bus controller */
95 au_writel(0, Au1500_PCI_CMEM); 91 au_writel(0, Au1500_PCI_CMEM);
96 au_writel(0x00003fff, Au1500_CFG_BASE); 92 au_writel(0x00003fff, Au1500_CFG_BASE);
97#if defined(__MIPSEB__) 93#if defined(__MIPSEB__)
98 au_writel(0xf | (2<<6) | (1<<4), Au1500_PCI_CFG); 94 au_writel(0xf | (2 << 6) | (1 << 4), Au1500_PCI_CFG);
99#else 95#else
100 au_writel(0xf, Au1500_PCI_CFG); 96 au_writel(0xf, Au1500_PCI_CFG);
101#endif 97#endif
@@ -112,11 +108,11 @@ void __init board_setup(void)
112 108
113 /* Enable the RTC if not already enabled */ 109 /* Enable the RTC if not already enabled */
114 if (!(au_readl(0xac000028) & 0x20)) { 110 if (!(au_readl(0xac000028) & 0x20)) {
115 printk("enabling clock ...\n"); 111 printk(KERN_INFO "enabling clock ...\n");
116 au_writel((au_readl(0xac000028) | 0x20), 0xac000028); 112 au_writel((au_readl(0xac000028) | 0x20), 0xac000028);
117 } 113 }
118 /* Put the clock in BCD mode */ 114 /* Put the clock in BCD mode */
119 if (au_readl(0xac00002C) & 0x4) { /* reg B */ 115 if (au_readl(0xac00002c) & 0x4) { /* reg B */
120 au_writel(au_readl(0xac00002c) & ~0x4, 0xac00002c); 116 au_writel(au_readl(0xac00002c) & ~0x4, 0xac00002c);
121 au_sync(); 117 au_sync();
122 } 118 }
diff --git a/arch/mips/au1000/pb1500/init.c b/arch/mips/au1000/pb1500/init.c
index 488507c07db9..49f51e165863 100644
--- a/arch/mips/au1000/pb1500/init.c
+++ b/arch/mips/au1000/pb1500/init.c
@@ -1,11 +1,10 @@
1/* 1/*
2 * 2 *
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * PB1500 board setup 4 * Pb1500 board setup
5 * 5 *
6 * Copyright 2001 MontaVista Software Inc. 6 * Copyright 2001, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This program is free software; you can redistribute it and/or modify it 9 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the 10 * under the terms of the GNU General Public License as published by the
@@ -45,16 +44,15 @@ void __init prom_init(void)
45 unsigned char *memsize_str; 44 unsigned char *memsize_str;
46 unsigned long memsize; 45 unsigned long memsize;
47 46
48 prom_argc = (int) fw_arg0; 47 prom_argc = (int)fw_arg0;
49 prom_argv = (char **) fw_arg1; 48 prom_argv = (char **)fw_arg1;
50 prom_envp = (char **) fw_arg2; 49 prom_envp = (char **)fw_arg2;
51 50
52 prom_init_cmdline(); 51 prom_init_cmdline();
53 memsize_str = prom_getenv("memsize"); 52 memsize_str = prom_getenv("memsize");
54 if (!memsize_str) { 53 if (!memsize_str)
55 memsize = 0x04000000; 54 memsize = 0x04000000;
56 } else { 55 else
57 memsize = simple_strtol(memsize_str, NULL, 0); 56 memsize = strict_strtol(memsize_str, 0, NULL);
58 }
59 add_memory_region(0, memsize, BOOT_MEM_RAM); 57 add_memory_region(0, memsize, BOOT_MEM_RAM);
60} 58}
diff --git a/arch/mips/au1000/pb1500/irqmap.c b/arch/mips/au1000/pb1500/irqmap.c
index 4817ab44d07f..39c4682766a8 100644
--- a/arch/mips/au1000/pb1500/irqmap.c
+++ b/arch/mips/au1000/pb1500/irqmap.c
@@ -31,12 +31,12 @@
31#include <asm/mach-au1x00/au1000.h> 31#include <asm/mach-au1x00/au1000.h>
32 32
33char irq_tab_alchemy[][5] __initdata = { 33char irq_tab_alchemy[][5] __initdata = {
34 [12] = { -1, INTA, INTX, INTX, INTX}, /* IDSEL 12 - HPT370 */ 34 [12] = { -1, INTA, INTX, INTX, INTX }, /* IDSEL 12 - HPT370 */
35 [13] = { -1, INTA, INTB, INTC, INTD}, /* IDSEL 13 - PCI slot */ 35 [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot */
36}; 36};
37 37
38struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { 38struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
39 { AU1500_GPIO_204, INTC_INT_HIGH_LEVEL, 0}, 39 { AU1500_GPIO_204, INTC_INT_HIGH_LEVEL, 0 },
40 { AU1500_GPIO_201, INTC_INT_LOW_LEVEL, 0 }, 40 { AU1500_GPIO_201, INTC_INT_LOW_LEVEL, 0 },
41 { AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 }, 41 { AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 },
42 { AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 }, 42 { AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 },
diff --git a/arch/mips/au1000/pb1550/Makefile b/arch/mips/au1000/pb1550/Makefile
index aa35bc6cb8cf..7d8beca87fa5 100644
--- a/arch/mips/au1000/pb1550/Makefile
+++ b/arch/mips/au1000/pb1550/Makefile
@@ -1,9 +1,8 @@
1# 1#
2# Copyright 2000 MontaVista Software Inc. 2# Copyright 2000, 2008 MontaVista Software Inc.
3# Author: MontaVista Software, Inc. 3# Author: MontaVista Software, Inc. <source@mvista.com>
4# ppopov@mvista.com or source@mvista.com
5# 4#
6# Makefile for the Alchemy Semiconductor PB1000 board. 5# Makefile for the Alchemy Semiconductor Pb1550 board.
7# 6#
8 7
9lib-y := init.o board_setup.o irqmap.o 8lib-y := init.o board_setup.o irqmap.o
diff --git a/arch/mips/au1000/pb1550/board_setup.c b/arch/mips/au1000/pb1550/board_setup.c
index 45d60872b565..0ed76b64b6ab 100644
--- a/arch/mips/au1000/pb1550/board_setup.c
+++ b/arch/mips/au1000/pb1550/board_setup.c
@@ -3,9 +3,8 @@
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * Alchemy Pb1550 board setup. 4 * Alchemy Pb1550 board setup.
5 * 5 *
6 * Copyright 2000 MontaVista Software Inc. 6 * Copyright 2000, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This program is free software; you can redistribute it and/or modify it 9 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the 10 * under the terms of the GNU General Public License as published by the
@@ -35,15 +34,16 @@
35 34
36void board_reset(void) 35void board_reset(void)
37{ 36{
38 /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ 37 /* Hit BCSR.SYSTEM[RESET] */
39 au_writew(au_readw(0xAF00001C) & ~(1<<15), 0xAF00001C); 38 au_writew(au_readw(0xAF00001C) & ~BCSR_SYSTEM_RESET, 0xAF00001C);
40} 39}
41 40
42void __init board_setup(void) 41void __init board_setup(void)
43{ 42{
44 u32 pin_func; 43 u32 pin_func;
45 44
46 /* Enable PSC1 SYNC for AC97. Normaly done in audio driver, 45 /*
46 * Enable PSC1 SYNC for AC'97. Normaly done in audio driver,
47 * but it is board specific code, so put it here. 47 * but it is board specific code, so put it here.
48 */ 48 */
49 pin_func = au_readl(SYS_PINFUNC); 49 pin_func = au_readl(SYS_PINFUNC);
@@ -51,8 +51,8 @@ void __init board_setup(void)
51 pin_func |= SYS_PF_MUST_BE_SET | SYS_PF_PSC1_S1; 51 pin_func |= SYS_PF_MUST_BE_SET | SYS_PF_PSC1_S1;
52 au_writel(pin_func, SYS_PINFUNC); 52 au_writel(pin_func, SYS_PINFUNC);
53 53
54 au_writel(0, (u32)bcsr|0x10); /* turn off pcmcia power */ 54 au_writel(0, (u32)bcsr | 0x10); /* turn off PCMCIA power */
55 au_sync(); 55 au_sync();
56 56
57 printk("AMD Alchemy Pb1550 Board\n"); 57 printk(KERN_INFO "AMD Alchemy Pb1550 Board\n");
58} 58}
diff --git a/arch/mips/au1000/pb1550/init.c b/arch/mips/au1000/pb1550/init.c
index f6b2fc587980..1b5f58434bb7 100644
--- a/arch/mips/au1000/pb1550/init.c
+++ b/arch/mips/au1000/pb1550/init.c
@@ -1,11 +1,10 @@
1/* 1/*
2 * 2 *
3 * BRIEF MODULE DESCRIPTION 3 * BRIEF MODULE DESCRIPTION
4 * PB1550 board setup 4 * Pb1550 board setup
5 * 5 *
6 * Copyright 2001 MontaVista Software Inc. 6 * Copyright 2001, 2008 MontaVista Software Inc.
7 * Author: MontaVista Software, Inc. 7 * Author: MontaVista Software, Inc. <source@mvista.com>
8 * ppopov@mvista.com or source@mvista.com
9 * 8 *
10 * This program is free software; you can redistribute it and/or modify it 9 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the 10 * under the terms of the GNU General Public License as published by the
@@ -45,16 +44,15 @@ void __init prom_init(void)
45 unsigned char *memsize_str; 44 unsigned char *memsize_str;
46 unsigned long memsize; 45 unsigned long memsize;
47 46
48 prom_argc = (int) fw_arg0; 47 prom_argc = (int)fw_arg0;
49 prom_argv = (char **) fw_arg1; 48 prom_argv = (char **)fw_arg1;
50 prom_envp = (char **) fw_arg2; 49 prom_envp = (char **)fw_arg2;
51 50
52 prom_init_cmdline(); 51 prom_init_cmdline();
53 memsize_str = prom_getenv("memsize"); 52 memsize_str = prom_getenv("memsize");
54 if (!memsize_str) { 53 if (!memsize_str)
55 memsize = 0x08000000; 54 memsize = 0x08000000;
56 } else { 55 else
57 memsize = simple_strtol(memsize_str, NULL, 0); 56 memsize = strict_strtol(memsize_str, 0, NULL);
58 }
59 add_memory_region(0, memsize, BOOT_MEM_RAM); 57 add_memory_region(0, memsize, BOOT_MEM_RAM);
60} 58}
diff --git a/arch/mips/au1000/pb1550/irqmap.c b/arch/mips/au1000/pb1550/irqmap.c
index e1dac37af08a..a02a4d1fa899 100644
--- a/arch/mips/au1000/pb1550/irqmap.c
+++ b/arch/mips/au1000/pb1550/irqmap.c
@@ -1,6 +1,6 @@
1/* 1/*
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * Au1xxx irq map table 3 * Au1xx0 IRQ map table
4 * 4 *
5 * Copyright 2003 Embedded Edge, LLC 5 * Copyright 2003 Embedded Edge, LLC
6 * dan@embeddededge.com 6 * dan@embeddededge.com
@@ -31,8 +31,8 @@
31#include <asm/mach-au1x00/au1000.h> 31#include <asm/mach-au1x00/au1000.h>
32 32
33char irq_tab_alchemy[][5] __initdata = { 33char irq_tab_alchemy[][5] __initdata = {
34 [12] = { -1, INTB, INTC, INTD, INTA}, /* IDSEL 12 - PCI slot 2 (left) */ 34 [12] = { -1, INTB, INTC, INTD, INTA }, /* IDSEL 12 - PCI slot 2 (left) */
35 [13] = { -1, INTA, INTB, INTC, INTD}, /* IDSEL 13 - PCI slot 1 (right) */ 35 [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot 1 (right) */
36}; 36};
37 37
38struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { 38struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
diff --git a/arch/mips/au1000/xxs1500/Makefile b/arch/mips/au1000/xxs1500/Makefile
index 44d7f7056ae7..db3c526f64d8 100644
--- a/arch/mips/au1000/xxs1500/Makefile
+++ b/arch/mips/au1000/xxs1500/Makefile
@@ -1,7 +1,6 @@
1# 1#
2# Copyright 2003 MontaVista Software Inc. 2# Copyright 2003 MontaVista Software Inc.
3# Author: MontaVista Software, Inc. 3# Author: MontaVista Software, Inc. <source@mvista.com>
4# ppopov@mvista.com or source@mvista.com
5# 4#
6# Makefile for MyCable XXS1500 board. 5# Makefile for MyCable XXS1500 board.
7# 6#
diff --git a/arch/mips/au1000/xxs1500/board_setup.c b/arch/mips/au1000/xxs1500/board_setup.c
index 79d1798621bf..4c587acac5c3 100644
--- a/arch/mips/au1000/xxs1500/board_setup.c
+++ b/arch/mips/au1000/xxs1500/board_setup.c
@@ -1,7 +1,6 @@
1/* 1/*
2 * Copyright 2000-2003 MontaVista Software Inc. 2 * Copyright 2000-2003, 2008 MontaVista Software Inc.
3 * Author: MontaVista Software, Inc. 3 * Author: MontaVista Software, Inc. <source@mvista.com>
4 * ppopov@mvista.com or source@mvista.com
5 * 4 *
6 * This program is free software; you can redistribute it and/or modify it 5 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the 6 * under the terms of the GNU General Public License as published by the
@@ -39,40 +38,40 @@ void __init board_setup(void)
39{ 38{
40 u32 pin_func; 39 u32 pin_func;
41 40
42 // set multiple use pins (UART3/GPIO) to UART (it's used as UART too) 41 /* Set multiple use pins (UART3/GPIO) to UART (it's used as UART too) */
43 pin_func = au_readl(SYS_PINFUNC) & (u32)(~SYS_PF_UR3); 42 pin_func = au_readl(SYS_PINFUNC) & ~SYS_PF_UR3;
44 pin_func |= SYS_PF_UR3; 43 pin_func |= SYS_PF_UR3;
45 au_writel(pin_func, SYS_PINFUNC); 44 au_writel(pin_func, SYS_PINFUNC);
46 45
47 // enable UART 46 /* Enable UART */
48 au_writel(0x01, UART3_ADDR+UART_MOD_CNTRL); // clock enable (CE) 47 au_writel(0x01, UART3_ADDR + UART_MOD_CNTRL); /* clock enable (CE) */
49 mdelay(10); 48 mdelay(10);
50 au_writel(0x03, UART3_ADDR+UART_MOD_CNTRL); // CE and "enable" 49 au_writel(0x03, UART3_ADDR + UART_MOD_CNTRL); /* CE and "enable" */
51 mdelay(10); 50 mdelay(10);
52 51
53 // enable DTR = USB power up 52 /* Enable DTR = USB power up */
54 au_writel(0x01, UART3_ADDR+UART_MCR); //? UART_MCR_DTR is 0x01??? 53 au_writel(0x01, UART3_ADDR + UART_MCR); /* UART_MCR_DTR is 0x01??? */
55 54
56#ifdef CONFIG_PCMCIA_XXS1500 55#ifdef CONFIG_PCMCIA_XXS1500
57 /* setup pcmcia signals */ 56 /* Setup PCMCIA signals */
58 au_writel(0, SYS_PININPUTEN); 57 au_writel(0, SYS_PININPUTEN);
59 58
60 /* gpio 0, 1, and 4 are inputs */ 59 /* GPIO 0, 1, and 4 are inputs */
61 au_writel(1 | (1<<1) | (1<<4), SYS_TRIOUTCLR); 60 au_writel(1 | (1 << 1) | (1 << 4), SYS_TRIOUTCLR);
62 61
63 /* enable GPIO2 if not already enabled */ 62 /* Enable GPIO2 if not already enabled */
64 au_writel(1, GPIO2_ENABLE); 63 au_writel(1, GPIO2_ENABLE);
65 /* gpio2 208/9/10/11 are inputs */ 64 /* GPIO2 208/9/10/11 are inputs */
66 au_writel((1<<8) | (1<<9) | (1<<10) | (1<<11), GPIO2_DIR); 65 au_writel((1 << 8) | (1 << 9) | (1 << 10) | (1 << 11), GPIO2_DIR);
67 66
68 /* turn off power */ 67 /* Turn off power */
69 au_writel((au_readl(GPIO2_PINSTATE) & ~(1<<14))|(1<<30), GPIO2_OUTPUT); 68 au_writel((au_readl(GPIO2_PINSTATE) & ~(1 << 14)) | (1 << 30),
69 GPIO2_OUTPUT);
70#endif 70#endif
71 71
72
73#ifdef CONFIG_PCI 72#ifdef CONFIG_PCI
74#if defined(__MIPSEB__) 73#if defined(__MIPSEB__)
75 au_writel(0xf | (2<<6) | (1<<4), Au1500_PCI_CFG); 74 au_writel(0xf | (2 << 6) | (1 << 4), Au1500_PCI_CFG);
76#else 75#else
77 au_writel(0xf, Au1500_PCI_CFG); 76 au_writel(0xf, Au1500_PCI_CFG);
78#endif 77#endif
diff --git a/arch/mips/au1000/xxs1500/init.c b/arch/mips/au1000/xxs1500/init.c
index 24fc6e132dc0..b849bf501c04 100644
--- a/arch/mips/au1000/xxs1500/init.c
+++ b/arch/mips/au1000/xxs1500/init.c
@@ -2,9 +2,8 @@
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * XXS1500 board setup 3 * XXS1500 board setup
4 * 4 *
5 * Copyright 2003 MontaVista Software Inc. 5 * Copyright 2003, 2008 MontaVista Software Inc.
6 * Author: MontaVista Software, Inc. 6 * Author: MontaVista Software, Inc. <source@mvista.com>
7 * ppopov@mvista.com or source@mvista.com
8 * 7 *
9 * This program is free software; you can redistribute it and/or modify it 8 * This program is free software; you can redistribute it and/or modify it
10 * under the terms of the GNU General Public License as published by the 9 * under the terms of the GNU General Public License as published by the
@@ -45,8 +44,8 @@ void __init prom_init(void)
45 unsigned long memsize; 44 unsigned long memsize;
46 45
47 prom_argc = fw_arg0; 46 prom_argc = fw_arg0;
48 prom_argv = (char **) fw_arg1; 47 prom_argv = (char **)fw_arg1;
49 prom_envp = (char **) fw_arg2; 48 prom_envp = (char **)fw_arg2;
50 49
51 prom_init_cmdline(); 50 prom_init_cmdline();
52 51
@@ -54,6 +53,6 @@ void __init prom_init(void)
54 if (!memsize_str) 53 if (!memsize_str)
55 memsize = 0x04000000; 54 memsize = 0x04000000;
56 else 55 else
57 memsize = simple_strtol(memsize_str, NULL, 0); 56 memsize = strict_strtol(memsize_str, 0, NULL);
58 add_memory_region(0, memsize, BOOT_MEM_RAM); 57 add_memory_region(0, memsize, BOOT_MEM_RAM);
59} 58}
diff --git a/arch/mips/au1000/xxs1500/irqmap.c b/arch/mips/au1000/xxs1500/irqmap.c
index dd6e3d1eb4d4..edf06ed11870 100644
--- a/arch/mips/au1000/xxs1500/irqmap.c
+++ b/arch/mips/au1000/xxs1500/irqmap.c
@@ -31,7 +31,7 @@
31#include <asm/mach-au1x00/au1000.h> 31#include <asm/mach-au1x00/au1000.h>
32 32
33struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { 33struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
34 { AU1500_GPIO_204, INTC_INT_HIGH_LEVEL, 0}, 34 { AU1500_GPIO_204, INTC_INT_HIGH_LEVEL, 0 },
35 { AU1500_GPIO_201, INTC_INT_LOW_LEVEL, 0 }, 35 { AU1500_GPIO_201, INTC_INT_LOW_LEVEL, 0 },
36 { AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 }, 36 { AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 },
37 { AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 }, 37 { AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 },
diff --git a/arch/mips/emma2rh/markeins/setup.c b/arch/mips/emma2rh/markeins/setup.c
index 82f9e9013e70..62bfb455d1b1 100644
--- a/arch/mips/emma2rh/markeins/setup.c
+++ b/arch/mips/emma2rh/markeins/setup.c
@@ -76,7 +76,9 @@ static void markeins_machine_power_off(void)
76 while (1) ; 76 while (1) ;
77} 77}
78 78
79static unsigned long clock[4] = { 166500000, 187312500, 199800000, 210600000 }; 79static unsigned long __initdata emma2rh_clock[4] = {
80 166500000, 187312500, 199800000, 210600000
81};
80 82
81static unsigned int __init detect_bus_frequency(unsigned long rtc_base) 83static unsigned int __init detect_bus_frequency(unsigned long rtc_base)
82{ 84{
@@ -85,7 +87,8 @@ static unsigned int __init detect_bus_frequency(unsigned long rtc_base)
85 /* detect from boot strap */ 87 /* detect from boot strap */
86 reg = emma2rh_in32(EMMA2RH_BHIF_STRAP_0); 88 reg = emma2rh_in32(EMMA2RH_BHIF_STRAP_0);
87 reg = (reg >> 4) & 0x3; 89 reg = (reg >> 4) & 0x3;
88 return clock[reg]; 90
91 return emma2rh_clock[reg];
89} 92}
90 93
91void __init plat_time_init(void) 94void __init plat_time_init(void)
diff --git a/arch/mips/kernel/Makefile b/arch/mips/kernel/Makefile
index 45545be3eb86..65e46a6d4178 100644
--- a/arch/mips/kernel/Makefile
+++ b/arch/mips/kernel/Makefile
@@ -30,7 +30,6 @@ obj-$(CONFIG_CPU_LOONGSON2) += r4k_fpu.o r4k_switch.o
30obj-$(CONFIG_CPU_MIPS32) += r4k_fpu.o r4k_switch.o 30obj-$(CONFIG_CPU_MIPS32) += r4k_fpu.o r4k_switch.o
31obj-$(CONFIG_CPU_MIPS64) += r4k_fpu.o r4k_switch.o 31obj-$(CONFIG_CPU_MIPS64) += r4k_fpu.o r4k_switch.o
32obj-$(CONFIG_CPU_R3000) += r2300_fpu.o r2300_switch.o 32obj-$(CONFIG_CPU_R3000) += r2300_fpu.o r2300_switch.o
33obj-$(CONFIG_CPU_R4000) += r4k_fpu.o r4k_switch.o
34obj-$(CONFIG_CPU_R4300) += r4k_fpu.o r4k_switch.o 33obj-$(CONFIG_CPU_R4300) += r4k_fpu.o r4k_switch.o
35obj-$(CONFIG_CPU_R4X00) += r4k_fpu.o r4k_switch.o 34obj-$(CONFIG_CPU_R4X00) += r4k_fpu.o r4k_switch.o
36obj-$(CONFIG_CPU_R5000) += r4k_fpu.o r4k_switch.o 35obj-$(CONFIG_CPU_R5000) += r4k_fpu.o r4k_switch.o
@@ -56,9 +55,9 @@ obj-$(CONFIG_MIPS_MT_SMP) += smp-mt.o
56obj-$(CONFIG_MIPS_CMP) += smp-cmp.o 55obj-$(CONFIG_MIPS_CMP) += smp-cmp.o
57obj-$(CONFIG_CPU_MIPSR2) += spram.o 56obj-$(CONFIG_CPU_MIPSR2) += spram.o
58 57
59obj-$(CONFIG_MIPS_APSP_KSPD) += kspd.o
60obj-$(CONFIG_MIPS_VPE_LOADER) += vpe.o 58obj-$(CONFIG_MIPS_VPE_LOADER) += vpe.o
61obj-$(CONFIG_MIPS_VPE_APSP_API) += rtlx.o 59obj-$(CONFIG_MIPS_VPE_APSP_API) += rtlx.o
60obj-$(CONFIG_MIPS_APSP_KSPD) += kspd.o
62 61
63obj-$(CONFIG_I8259) += i8259.o 62obj-$(CONFIG_I8259) += i8259.o
64obj-$(CONFIG_IRQ_CPU) += irq_cpu.o 63obj-$(CONFIG_IRQ_CPU) += irq_cpu.o
diff --git a/arch/mips/kernel/cpu-bugs64.c b/arch/mips/kernel/cpu-bugs64.c
index a1b48af0992f..02b7713cf71c 100644
--- a/arch/mips/kernel/cpu-bugs64.c
+++ b/arch/mips/kernel/cpu-bugs64.c
@@ -38,7 +38,7 @@ static inline void align_mod(const int align, const int mod)
38 ".endr\n\t" 38 ".endr\n\t"
39 ".set pop" 39 ".set pop"
40 : 40 :
41 : GCC_IMM_ASM(align), GCC_IMM_ASM(mod)); 41 : GCC_IMM_ASM() (align), GCC_IMM_ASM() (mod));
42} 42}
43 43
44static inline void mult_sh_align_mod(long *v1, long *v2, long *w, 44static inline void mult_sh_align_mod(long *v1, long *v2, long *w,
diff --git a/arch/mips/kernel/init_task.c b/arch/mips/kernel/init_task.c
index aeda7f58391b..d72487ad7c15 100644
--- a/arch/mips/kernel/init_task.c
+++ b/arch/mips/kernel/init_task.c
@@ -10,7 +10,6 @@
10#include <asm/pgtable.h> 10#include <asm/pgtable.h>
11 11
12static struct fs_struct init_fs = INIT_FS; 12static struct fs_struct init_fs = INIT_FS;
13static struct files_struct init_files = INIT_FILES;
14static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 13static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
15static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 14static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
16struct mm_struct init_mm = INIT_MM(init_mm); 15struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/mips/kernel/irixelf.c b/arch/mips/kernel/irixelf.c
index 290d8e3a664d..469c7237e5ba 100644
--- a/arch/mips/kernel/irixelf.c
+++ b/arch/mips/kernel/irixelf.c
@@ -578,7 +578,7 @@ static inline int map_interpreter(struct elf_phdr *epp, struct elfhdr *ihp,
578 * process and the system, here we map the page and fill the 578 * process and the system, here we map the page and fill the
579 * structure 579 * structure
580 */ 580 */
581static void irix_map_prda_page(void) 581static int irix_map_prda_page(void)
582{ 582{
583 unsigned long v; 583 unsigned long v;
584 struct prda *pp; 584 struct prda *pp;
@@ -587,8 +587,8 @@ static void irix_map_prda_page(void)
587 v = do_brk(PRDA_ADDRESS, PAGE_SIZE); 587 v = do_brk(PRDA_ADDRESS, PAGE_SIZE);
588 up_write(&current->mm->mmap_sem); 588 up_write(&current->mm->mmap_sem);
589 589
590 if (v < 0) 590 if (v != PRDA_ADDRESS)
591 return; 591 return v; /* v must be an error code */
592 592
593 pp = (struct prda *) v; 593 pp = (struct prda *) v;
594 pp->prda_sys.t_pid = task_pid_vnr(current); 594 pp->prda_sys.t_pid = task_pid_vnr(current);
@@ -596,6 +596,8 @@ static void irix_map_prda_page(void)
596 pp->prda_sys.t_rpid = task_pid_vnr(current); 596 pp->prda_sys.t_rpid = task_pid_vnr(current);
597 597
598 /* We leave the rest set to zero */ 598 /* We leave the rest set to zero */
599
600 return 0;
599} 601}
600 602
601 603
@@ -781,7 +783,8 @@ static int load_irix_binary(struct linux_binprm * bprm, struct pt_regs * regs)
781 * IRIX maps a page at 0x200000 which holds some system 783 * IRIX maps a page at 0x200000 which holds some system
782 * information. Programs depend on this. 784 * information. Programs depend on this.
783 */ 785 */
784 irix_map_prda_page(); 786 if (irix_map_prda_page())
787 goto out_free_dentry;
785 788
786 padzero(elf_bss); 789 padzero(elf_bss);
787 790
diff --git a/arch/mips/kernel/kspd.c b/arch/mips/kernel/kspd.c
index ceb62dce1c9c..b0591ae0ce56 100644
--- a/arch/mips/kernel/kspd.c
+++ b/arch/mips/kernel/kspd.c
@@ -257,7 +257,7 @@ void sp_work_handle_request(void)
257 257
258 vcwd = vpe_getcwd(tclimit); 258 vcwd = vpe_getcwd(tclimit);
259 259
260 /* change to the cwd of the process that loaded the SP program */ 260 /* change to cwd of the process that loaded the SP program */
261 old_fs = get_fs(); 261 old_fs = get_fs();
262 set_fs(KERNEL_DS); 262 set_fs(KERNEL_DS);
263 sys_chdir(vcwd); 263 sys_chdir(vcwd);
@@ -323,6 +323,9 @@ static void sp_cleanup(void)
323 set >>= 1; 323 set >>= 1;
324 } 324 }
325 } 325 }
326
327 /* Put daemon cwd back to root to avoid umount problems */
328 sys_chdir("/");
326} 329}
327 330
328static int channel_open = 0; 331static int channel_open = 0;
diff --git a/arch/mips/kernel/rtlx.c b/arch/mips/kernel/rtlx.c
index 0233798f7155..b88f1c18ff4d 100644
--- a/arch/mips/kernel/rtlx.c
+++ b/arch/mips/kernel/rtlx.c
@@ -72,6 +72,15 @@ static void rtlx_dispatch(void)
72static irqreturn_t rtlx_interrupt(int irq, void *dev_id) 72static irqreturn_t rtlx_interrupt(int irq, void *dev_id)
73{ 73{
74 int i; 74 int i;
75 unsigned int flags, vpeflags;
76
77 /* Ought not to be strictly necessary for SMTC builds */
78 local_irq_save(flags);
79 vpeflags = dvpe();
80 set_c0_status(0x100 << MIPS_CPU_RTLX_IRQ);
81 irq_enable_hazard();
82 evpe(vpeflags);
83 local_irq_restore(flags);
75 84
76 for (i = 0; i < RTLX_CHANNELS; i++) { 85 for (i = 0; i < RTLX_CHANNELS; i++) {
77 wake_up(&channel_wqs[i].lx_queue); 86 wake_up(&channel_wqs[i].lx_queue);
@@ -108,7 +117,8 @@ static void __used dump_rtlx(void)
108static int rtlx_init(struct rtlx_info *rtlxi) 117static int rtlx_init(struct rtlx_info *rtlxi)
109{ 118{
110 if (rtlxi->id != RTLX_ID) { 119 if (rtlxi->id != RTLX_ID) {
111 printk(KERN_ERR "no valid RTLX id at 0x%p 0x%lx\n", rtlxi, rtlxi->id); 120 printk(KERN_ERR "no valid RTLX id at 0x%p 0x%lx\n",
121 rtlxi, rtlxi->id);
112 return -ENOEXEC; 122 return -ENOEXEC;
113 } 123 }
114 124
@@ -162,18 +172,17 @@ int rtlx_open(int index, int can_sleep)
162 172
163 if (rtlx == NULL) { 173 if (rtlx == NULL) {
164 if( (p = vpe_get_shared(tclimit)) == NULL) { 174 if( (p = vpe_get_shared(tclimit)) == NULL) {
165 if (can_sleep) { 175 if (can_sleep) {
166 __wait_event_interruptible(channel_wqs[index].lx_queue, 176 __wait_event_interruptible(channel_wqs[index].lx_queue,
167 (p = vpe_get_shared(tclimit)), 177 (p = vpe_get_shared(tclimit)), ret);
168 ret); 178 if (ret)
169 if (ret)
170 goto out_fail;
171 } else {
172 printk(KERN_DEBUG "No SP program loaded, and device "
173 "opened with O_NONBLOCK\n");
174 ret = -ENOSYS;
175 goto out_fail; 179 goto out_fail;
176 } 180 } else {
181 printk(KERN_DEBUG "No SP program loaded, and device "
182 "opened with O_NONBLOCK\n");
183 ret = -ENOSYS;
184 goto out_fail;
185 }
177 } 186 }
178 187
179 smp_rmb(); 188 smp_rmb();
@@ -182,7 +191,9 @@ int rtlx_open(int index, int can_sleep)
182 DEFINE_WAIT(wait); 191 DEFINE_WAIT(wait);
183 192
184 for (;;) { 193 for (;;) {
185 prepare_to_wait(&channel_wqs[index].lx_queue, &wait, TASK_INTERRUPTIBLE); 194 prepare_to_wait(
195 &channel_wqs[index].lx_queue,
196 &wait, TASK_INTERRUPTIBLE);
186 smp_rmb(); 197 smp_rmb();
187 if (*p != NULL) 198 if (*p != NULL)
188 break; 199 break;
@@ -195,7 +206,7 @@ int rtlx_open(int index, int can_sleep)
195 } 206 }
196 finish_wait(&channel_wqs[index].lx_queue, &wait); 207 finish_wait(&channel_wqs[index].lx_queue, &wait);
197 } else { 208 } else {
198 printk(" *vpe_get_shared is NULL. " 209 pr_err(" *vpe_get_shared is NULL. "
199 "Has an SP program been loaded?\n"); 210 "Has an SP program been loaded?\n");
200 ret = -ENOSYS; 211 ret = -ENOSYS;
201 goto out_fail; 212 goto out_fail;
@@ -203,8 +214,9 @@ int rtlx_open(int index, int can_sleep)
203 } 214 }
204 215
205 if ((unsigned int)*p < KSEG0) { 216 if ((unsigned int)*p < KSEG0) {
206 printk(KERN_WARNING "vpe_get_shared returned an invalid pointer " 217 printk(KERN_WARNING "vpe_get_shared returned an "
207 "maybe an error code %d\n", (int)*p); 218 "invalid pointer maybe an error code %d\n",
219 (int)*p);
208 ret = -ENOSYS; 220 ret = -ENOSYS;
209 goto out_fail; 221 goto out_fail;
210 } 222 }
@@ -232,6 +244,10 @@ out_ret:
232 244
233int rtlx_release(int index) 245int rtlx_release(int index)
234{ 246{
247 if (rtlx == NULL) {
248 pr_err("rtlx_release() with null rtlx\n");
249 return 0;
250 }
235 rtlx->channel[index].lx_state = RTLX_STATE_UNUSED; 251 rtlx->channel[index].lx_state = RTLX_STATE_UNUSED;
236 return 0; 252 return 0;
237} 253}
@@ -251,8 +267,8 @@ unsigned int rtlx_read_poll(int index, int can_sleep)
251 int ret = 0; 267 int ret = 0;
252 268
253 __wait_event_interruptible(channel_wqs[index].lx_queue, 269 __wait_event_interruptible(channel_wqs[index].lx_queue,
254 chan->lx_read != chan->lx_write || sp_stopping, 270 (chan->lx_read != chan->lx_write) ||
255 ret); 271 sp_stopping, ret);
256 if (ret) 272 if (ret)
257 return ret; 273 return ret;
258 274
@@ -282,7 +298,9 @@ static inline int write_spacefree(int read, int write, int size)
282unsigned int rtlx_write_poll(int index) 298unsigned int rtlx_write_poll(int index)
283{ 299{
284 struct rtlx_channel *chan = &rtlx->channel[index]; 300 struct rtlx_channel *chan = &rtlx->channel[index];
285 return write_spacefree(chan->rt_read, chan->rt_write, chan->buffer_size); 301
302 return write_spacefree(chan->rt_read, chan->rt_write,
303 chan->buffer_size);
286} 304}
287 305
288ssize_t rtlx_read(int index, void __user *buff, size_t count) 306ssize_t rtlx_read(int index, void __user *buff, size_t count)
@@ -344,8 +362,8 @@ ssize_t rtlx_write(int index, const void __user *buffer, size_t count)
344 rt_read = rt->rt_read; 362 rt_read = rt->rt_read;
345 363
346 /* total number of bytes to copy */ 364 /* total number of bytes to copy */
347 count = min(count, 365 count = min(count, (size_t)write_spacefree(rt_read, rt->rt_write,
348 (size_t)write_spacefree(rt_read, rt->rt_write, rt->buffer_size)); 366 rt->buffer_size));
349 367
350 /* first bit from write pointer to the end of the buffer, or count */ 368 /* first bit from write pointer to the end of the buffer, or count */
351 fl = min(count, (size_t) rt->buffer_size - rt->rt_write); 369 fl = min(count, (size_t) rt->buffer_size - rt->rt_write);
@@ -514,6 +532,11 @@ static int __init rtlx_module_init(void)
514 532
515 if (cpu_has_vint) 533 if (cpu_has_vint)
516 set_vi_handler(MIPS_CPU_RTLX_IRQ, rtlx_dispatch); 534 set_vi_handler(MIPS_CPU_RTLX_IRQ, rtlx_dispatch);
535 else {
536 pr_err("APRP RTLX init on non-vectored-interrupt processor\n");
537 err = -ENODEV;
538 goto out_chrdev;
539 }
517 540
518 rtlx_irq.dev_id = rtlx; 541 rtlx_irq.dev_id = rtlx;
519 setup_irq(rtlx_irq_num, &rtlx_irq); 542 setup_irq(rtlx_irq_num, &rtlx_irq);
diff --git a/arch/mips/kernel/setup.c b/arch/mips/kernel/setup.c
index 39f3dfe134fb..c6a063b2a0d9 100644
--- a/arch/mips/kernel/setup.c
+++ b/arch/mips/kernel/setup.c
@@ -331,6 +331,7 @@ static void __init bootmem_init(void)
331 /* 331 /*
332 * Determine low and high memory ranges 332 * Determine low and high memory ranges
333 */ 333 */
334 max_pfn = max_low_pfn;
334 if (max_low_pfn > PFN_DOWN(HIGHMEM_START)) { 335 if (max_low_pfn > PFN_DOWN(HIGHMEM_START)) {
335#ifdef CONFIG_HIGHMEM 336#ifdef CONFIG_HIGHMEM
336 highstart_pfn = PFN_DOWN(HIGHMEM_START); 337 highstart_pfn = PFN_DOWN(HIGHMEM_START);
diff --git a/arch/mips/kernel/smp.c b/arch/mips/kernel/smp.c
index 33780cc61ce9..63370cdd3c90 100644
--- a/arch/mips/kernel/smp.c
+++ b/arch/mips/kernel/smp.c
@@ -87,8 +87,8 @@ struct plat_smp_ops *mp_ops;
87 87
88__cpuinit void register_smp_ops(struct plat_smp_ops *ops) 88__cpuinit void register_smp_ops(struct plat_smp_ops *ops)
89{ 89{
90 if (ops) 90 if (mp_ops)
91 printk(KERN_WARNING "Overriding previous set SMP ops\n"); 91 printk(KERN_WARNING "Overriding previously set SMP ops\n");
92 92
93 mp_ops = ops; 93 mp_ops = ops;
94} 94}
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
index cb8b0e2c7954..f9165d1a17bf 100644
--- a/arch/mips/kernel/traps.c
+++ b/arch/mips/kernel/traps.c
@@ -88,15 +88,17 @@ static void show_raw_backtrace(unsigned long reg29)
88#ifdef CONFIG_KALLSYMS 88#ifdef CONFIG_KALLSYMS
89 printk("\n"); 89 printk("\n");
90#endif 90#endif
91#define IS_KVA01(a) ((((unsigned int)a) & 0xc0000000) == 0x80000000) 91 while (!kstack_end(sp)) {
92 if (IS_KVA01(sp)) { 92 unsigned long __user *p =
93 while (!kstack_end(sp)) { 93 (unsigned long __user *)(unsigned long)sp++;
94 addr = *sp++; 94 if (__get_user(addr, p)) {
95 if (__kernel_text_address(addr)) 95 printk(" (Bad stack address)");
96 print_ip_sym(addr); 96 break;
97 } 97 }
98 printk("\n"); 98 if (__kernel_text_address(addr))
99 print_ip_sym(addr);
99 } 100 }
101 printk("\n");
100} 102}
101 103
102#ifdef CONFIG_KALLSYMS 104#ifdef CONFIG_KALLSYMS
diff --git a/arch/mips/kernel/vpe.c b/arch/mips/kernel/vpe.c
index 39804c584edd..2794501ff302 100644
--- a/arch/mips/kernel/vpe.c
+++ b/arch/mips/kernel/vpe.c
@@ -269,7 +269,7 @@ static void *alloc_progmem(unsigned long len)
269 * This means you must tell Linux to use less memory than you 269 * This means you must tell Linux to use less memory than you
270 * physically have, for example by passing a mem= boot argument. 270 * physically have, for example by passing a mem= boot argument.
271 */ 271 */
272 addr = pfn_to_kaddr(max_pfn); 272 addr = pfn_to_kaddr(max_low_pfn);
273 memset(addr, 0, len); 273 memset(addr, 0, len);
274#else 274#else
275 /* simple grab some mem for now */ 275 /* simple grab some mem for now */
@@ -781,10 +781,15 @@ static int vpe_run(struct vpe * v)
781 /* take system out of configuration state */ 781 /* take system out of configuration state */
782 clear_c0_mvpcontrol(MVPCONTROL_VPC); 782 clear_c0_mvpcontrol(MVPCONTROL_VPC);
783 783
784 /*
785 * SMTC/SMVP kernels manage VPE enable independently,
786 * but uniprocessor kernels need to turn it on, even
787 * if that wasn't the pre-dvpe() state.
788 */
784#ifdef CONFIG_SMP 789#ifdef CONFIG_SMP
785 evpe(EVPE_ENABLE);
786#else
787 evpe(vpeflags); 790 evpe(vpeflags);
791#else
792 evpe(EVPE_ENABLE);
788#endif 793#endif
789 emt(dmt_flag); 794 emt(dmt_flag);
790 local_irq_restore(flags); 795 local_irq_restore(flags);
@@ -840,7 +845,7 @@ static int vpe_elfload(struct vpe * v)
840 845
841 /* Sanity checks against insmoding binaries or wrong arch, 846 /* Sanity checks against insmoding binaries or wrong arch,
842 weird elf version */ 847 weird elf version */
843 if (memcmp(hdr->e_ident, ELFMAG, 4) != 0 848 if (memcmp(hdr->e_ident, ELFMAG, SELFMAG) != 0
844 || (hdr->e_type != ET_REL && hdr->e_type != ET_EXEC) 849 || (hdr->e_type != ET_REL && hdr->e_type != ET_EXEC)
845 || !elf_check_arch(hdr) 850 || !elf_check_arch(hdr)
846 || hdr->e_shentsize != sizeof(*sechdrs)) { 851 || hdr->e_shentsize != sizeof(*sechdrs)) {
@@ -947,12 +952,14 @@ static int vpe_elfload(struct vpe * v)
947 struct elf_phdr *phdr = (struct elf_phdr *) ((char *)hdr + hdr->e_phoff); 952 struct elf_phdr *phdr = (struct elf_phdr *) ((char *)hdr + hdr->e_phoff);
948 953
949 for (i = 0; i < hdr->e_phnum; i++) { 954 for (i = 0; i < hdr->e_phnum; i++) {
950 if (phdr->p_type != PT_LOAD) 955 if (phdr->p_type == PT_LOAD) {
951 continue; 956 memcpy((void *)phdr->p_paddr,
952 957 (char *)hdr + phdr->p_offset,
953 memcpy((void *)phdr->p_paddr, (char *)hdr + phdr->p_offset, phdr->p_filesz); 958 phdr->p_filesz);
954 memset((void *)phdr->p_paddr + phdr->p_filesz, 0, phdr->p_memsz - phdr->p_filesz); 959 memset((void *)phdr->p_paddr + phdr->p_filesz,
955 phdr++; 960 0, phdr->p_memsz - phdr->p_filesz);
961 }
962 phdr++;
956 } 963 }
957 964
958 for (i = 0; i < hdr->e_shnum; i++) { 965 for (i = 0; i < hdr->e_shnum; i++) {
@@ -1107,7 +1114,7 @@ static int vpe_release(struct inode *inode, struct file *filp)
1107 return -ENODEV; 1114 return -ENODEV;
1108 1115
1109 hdr = (Elf_Ehdr *) v->pbuffer; 1116 hdr = (Elf_Ehdr *) v->pbuffer;
1110 if (memcmp(hdr->e_ident, ELFMAG, 4) == 0) { 1117 if (memcmp(hdr->e_ident, ELFMAG, SELFMAG) == 0) {
1111 if (vpe_elfload(v) >= 0) { 1118 if (vpe_elfload(v) >= 0) {
1112 vpe_run(v); 1119 vpe_run(v);
1113 } else { 1120 } else {
diff --git a/arch/mips/mips-boards/generic/time.c b/arch/mips/mips-boards/generic/time.c
index 008fd82b5840..fe2cac1b4514 100644
--- a/arch/mips/mips-boards/generic/time.c
+++ b/arch/mips/mips-boards/generic/time.c
@@ -58,27 +58,8 @@ static int mips_cpu_timer_irq;
58static int mips_cpu_perf_irq; 58static int mips_cpu_perf_irq;
59extern int cp0_perfcount_irq; 59extern int cp0_perfcount_irq;
60 60
61DEFINE_PER_CPU(unsigned int, tickcount);
62#define tickcount_this_cpu __get_cpu_var(tickcount)
63static unsigned long ledbitmask;
64
65static void mips_timer_dispatch(void) 61static void mips_timer_dispatch(void)
66{ 62{
67#if defined(CONFIG_MIPS_MALTA) || defined(CONFIG_MIPS_ATLAS)
68 /*
69 * Yes, this is very tacky, won't work as expected with SMTC and
70 * dyntick will break it,
71 * but it gives me a nice warm feeling during debug
72 */
73#define LEDBAR 0xbf000408
74 if (tickcount_this_cpu++ >= HZ) {
75 tickcount_this_cpu = 0;
76 change_bit(smp_processor_id(), &ledbitmask);
77 smp_wmb(); /* Make sure every one else sees the change */
78 /* This will pick up any recent changes made by other CPU's */
79 *(unsigned int *)LEDBAR = ledbitmask;
80 }
81#endif
82 do_IRQ(mips_cpu_timer_irq); 63 do_IRQ(mips_cpu_timer_irq);
83} 64}
84 65
diff --git a/arch/mips/mm/highmem.c b/arch/mips/mm/highmem.c
index 10dd2af2343b..8f2cd8eda741 100644
--- a/arch/mips/mm/highmem.c
+++ b/arch/mips/mm/highmem.c
@@ -116,4 +116,3 @@ EXPORT_SYMBOL(__kmap);
116EXPORT_SYMBOL(__kunmap); 116EXPORT_SYMBOL(__kunmap);
117EXPORT_SYMBOL(__kmap_atomic); 117EXPORT_SYMBOL(__kmap_atomic);
118EXPORT_SYMBOL(__kunmap_atomic); 118EXPORT_SYMBOL(__kunmap_atomic);
119EXPORT_SYMBOL(__kmap_atomic_to_page);
diff --git a/arch/mips/mm/page.c b/arch/mips/mm/page.c
index d827d6144369..cab81f42eee5 100644
--- a/arch/mips/mm/page.c
+++ b/arch/mips/mm/page.c
@@ -310,8 +310,8 @@ void __cpuinit build_clear_page(void)
310 if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x()) 310 if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x())
311 uasm_i_lui(&buf, AT, 0xa000); 311 uasm_i_lui(&buf, AT, 0xa000);
312 312
313 off = min(8, pref_bias_clear_store / cache_line_size) * 313 off = cache_line_size ? min(8, pref_bias_clear_store / cache_line_size)
314 cache_line_size; 314 * cache_line_size : 0;
315 while (off) { 315 while (off) {
316 build_clear_pref(&buf, -off); 316 build_clear_pref(&buf, -off);
317 off -= cache_line_size; 317 off -= cache_line_size;
@@ -454,12 +454,14 @@ void __cpuinit build_copy_page(void)
454 if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x()) 454 if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x())
455 uasm_i_lui(&buf, AT, 0xa000); 455 uasm_i_lui(&buf, AT, 0xa000);
456 456
457 off = min(8, pref_bias_copy_load / cache_line_size) * cache_line_size; 457 off = cache_line_size ? min(8, pref_bias_copy_load / cache_line_size) *
458 cache_line_size : 0;
458 while (off) { 459 while (off) {
459 build_copy_load_pref(&buf, -off); 460 build_copy_load_pref(&buf, -off);
460 off -= cache_line_size; 461 off -= cache_line_size;
461 } 462 }
462 off = min(8, pref_bias_copy_store / cache_line_size) * cache_line_size; 463 off = cache_line_size ? min(8, pref_bias_copy_load / cache_line_size) *
464 cache_line_size : 0;
463 while (off) { 465 while (off) {
464 build_copy_store_pref(&buf, -off); 466 build_copy_store_pref(&buf, -off);
465 off -= cache_line_size; 467 off -= cache_line_size;
diff --git a/arch/mips/mm/tlbex.c b/arch/mips/mm/tlbex.c
index 382738ca8a0b..76da73a5ab3c 100644
--- a/arch/mips/mm/tlbex.c
+++ b/arch/mips/mm/tlbex.c
@@ -224,8 +224,9 @@ static u32 final_handler[64] __cpuinitdata;
224static void __cpuinit __maybe_unused build_tlb_probe_entry(u32 **p) 224static void __cpuinit __maybe_unused build_tlb_probe_entry(u32 **p)
225{ 225{
226 switch (current_cpu_type()) { 226 switch (current_cpu_type()) {
227 /* Found by experiment: R4600 v2.0 needs this, too. */ 227 /* Found by experiment: R4600 v2.0/R4700 needs this, too. */
228 case CPU_R4600: 228 case CPU_R4600:
229 case CPU_R4700:
229 case CPU_R5000: 230 case CPU_R5000:
230 case CPU_R5000A: 231 case CPU_R5000A:
231 case CPU_NEVADA: 232 case CPU_NEVADA:
diff --git a/arch/mips/oprofile/op_model_mipsxx.c b/arch/mips/oprofile/op_model_mipsxx.c
index da8cbb6899dc..b40df7d2cf44 100644
--- a/arch/mips/oprofile/op_model_mipsxx.c
+++ b/arch/mips/oprofile/op_model_mipsxx.c
@@ -281,7 +281,7 @@ static inline int n_counters(void)
281 281
282static void reset_counters(void *arg) 282static void reset_counters(void *arg)
283{ 283{
284 int counters = (int)arg; 284 int counters = (int)(long)arg;
285 switch (counters) { 285 switch (counters) {
286 case 4: 286 case 4:
287 w_c0_perfctrl3(0); 287 w_c0_perfctrl3(0);
@@ -313,7 +313,7 @@ static int __init mipsxx_init(void)
313 if (!cpu_has_mipsmt_pertccounters) 313 if (!cpu_has_mipsmt_pertccounters)
314 counters = counters_total_to_per_cpu(counters); 314 counters = counters_total_to_per_cpu(counters);
315#endif 315#endif
316 on_each_cpu(reset_counters, (void *)counters, 0, 1); 316 on_each_cpu(reset_counters, (void *)(long)counters, 0, 1);
317 317
318 op_model_mipsxx_ops.num_counters = counters; 318 op_model_mipsxx_ops.num_counters = counters;
319 switch (current_cpu_type()) { 319 switch (current_cpu_type()) {
@@ -382,7 +382,7 @@ static void mipsxx_exit(void)
382 int counters = op_model_mipsxx_ops.num_counters; 382 int counters = op_model_mipsxx_ops.num_counters;
383 383
384 counters = counters_per_cpu_to_total(counters); 384 counters = counters_per_cpu_to_total(counters);
385 on_each_cpu(reset_counters, (void *)counters, 0, 1); 385 on_each_cpu(reset_counters, (void *)(long)counters, 0, 1);
386 386
387 perf_irq = save_perf_irq; 387 perf_irq = save_perf_irq;
388} 388}
diff --git a/arch/mips/pci/fixup-au1000.c b/arch/mips/pci/fixup-au1000.c
index 00c36c9dbe0e..e2ddfc49237c 100644
--- a/arch/mips/pci/fixup-au1000.c
+++ b/arch/mips/pci/fixup-au1000.c
@@ -1,10 +1,9 @@
1/* 1/*
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * Board specific pci fixups. 3 * Board specific PCI fixups.
4 * 4 *
5 * Copyright 2001-2003 MontaVista Software Inc. 5 * Copyright 2001-2003, 2008 MontaVista Software Inc.
6 * Author: MontaVista Software, Inc. 6 * Author: MontaVista Software, Inc. <source@mvista.com>
7 * ppopov@mvista.com or source@mvista.com
8 * 7 *
9 * This program is free software; you can redistribute it and/or modify it 8 * This program is free software; you can redistribute it and/or modify it
10 * under the terms of the GNU General Public License as published by the 9 * under the terms of the GNU General Public License as published by the
diff --git a/arch/mips/pci/ops-au1000.c b/arch/mips/pci/ops-au1000.c
index 1314bd58f036..9a57c5ab91dd 100644
--- a/arch/mips/pci/ops-au1000.c
+++ b/arch/mips/pci/ops-au1000.c
@@ -1,10 +1,9 @@
1/* 1/*
2 * BRIEF MODULE DESCRIPTION 2 * BRIEF MODULE DESCRIPTION
3 * Alchemy/AMD Au1x00 PCI support. 3 * Alchemy/AMD Au1xx0 PCI support.
4 * 4 *
5 * Copyright 2001-2003, 2007 MontaVista Software Inc. 5 * Copyright 2001-2003, 2007-2008 MontaVista Software Inc.
6 * Author: MontaVista Software, Inc. 6 * Author: MontaVista Software, Inc. <source@mvista.com>
7 * ppopov@mvista.com or source@mvista.com
8 * 7 *
9 * Support for all devices (greater than 16) added by David Gathright. 8 * Support for all devices (greater than 16) added by David Gathright.
10 * 9 *
@@ -28,6 +27,7 @@
28 * with this program; if not, write to the Free Software Foundation, Inc., 27 * with this program; if not, write to the Free Software Foundation, Inc.,
29 * 675 Mass Ave, Cambridge, MA 02139, USA. 28 * 675 Mass Ave, Cambridge, MA 02139, USA.
30 */ 29 */
30
31#include <linux/types.h> 31#include <linux/types.h>
32#include <linux/pci.h> 32#include <linux/pci.h>
33#include <linux/kernel.h> 33#include <linux/kernel.h>
@@ -36,9 +36,9 @@
36 36
37#include <asm/mach-au1x00/au1000.h> 37#include <asm/mach-au1x00/au1000.h>
38 38
39#undef DEBUG 39#undef DEBUG
40#ifdef DEBUG 40#ifdef DEBUG
41#define DBG(x...) printk(x) 41#define DBG(x...) printk(KERN_DEBUG x)
42#else 42#else
43#define DBG(x...) 43#define DBG(x...)
44#endif 44#endif
@@ -46,7 +46,6 @@
46#define PCI_ACCESS_READ 0 46#define PCI_ACCESS_READ 0
47#define PCI_ACCESS_WRITE 1 47#define PCI_ACCESS_WRITE 1
48 48
49
50int (*board_pci_idsel)(unsigned int devsel, int assert); 49int (*board_pci_idsel)(unsigned int devsel, int assert);
51 50
52void mod_wired_entry(int entry, unsigned long entrylo0, 51void mod_wired_entry(int entry, unsigned long entrylo0,
@@ -92,10 +91,9 @@ void __init au1x_pci_cfg_init(void)
92} 91}
93 92
94static int config_access(unsigned char access_type, struct pci_bus *bus, 93static int config_access(unsigned char access_type, struct pci_bus *bus,
95 unsigned int dev_fn, unsigned char where, 94 unsigned int dev_fn, unsigned char where, u32 *data)
96 u32 * data)
97{ 95{
98#if defined( CONFIG_SOC_AU1500 ) || defined( CONFIG_SOC_AU1550 ) 96#if defined(CONFIG_SOC_AU1500) || defined(CONFIG_SOC_AU1550)
99 unsigned int device = PCI_SLOT(dev_fn); 97 unsigned int device = PCI_SLOT(dev_fn);
100 unsigned int function = PCI_FUNC(dev_fn); 98 unsigned int function = PCI_FUNC(dev_fn);
101 unsigned long offset, status; 99 unsigned long offset, status;
@@ -114,38 +112,36 @@ static int config_access(unsigned char access_type, struct pci_bus *bus,
114 Au1500_PCI_STATCMD); 112 Au1500_PCI_STATCMD);
115 au_sync_udelay(1); 113 au_sync_udelay(1);
116 114
117 /* Allow board vendors to implement their own off-chip idsel. 115 /*
116 * Allow board vendors to implement their own off-chip IDSEL.
118 * If it doesn't succeed, may as well bail out at this point. 117 * If it doesn't succeed, may as well bail out at this point.
119 */ 118 */
120 if (board_pci_idsel) { 119 if (board_pci_idsel && board_pci_idsel(device, 1) == 0) {
121 if (board_pci_idsel(device, 1) == 0) { 120 *data = 0xffffffff;
122 *data = 0xffffffff; 121 local_irq_restore(flags);
123 local_irq_restore(flags); 122 return -1;
124 return -1;
125 }
126 } 123 }
127 124
128 /* setup the config window */ 125 /* Setup the config window */
129 if (bus->number == 0) { 126 if (bus->number == 0)
130 cfg_base = ((1<<device)<<11); 127 cfg_base = (1 << device) << 11;
131 } else { 128 else
132 cfg_base = 0x80000000 | (bus->number<<16) | (device<<11); 129 cfg_base = 0x80000000 | (bus->number << 16) | (device << 11);
133 }
134 130
135 /* setup the lower bits of the 36 bit address */ 131 /* Setup the lower bits of the 36-bit address */
136 offset = (function << 8) | (where & ~0x3); 132 offset = (function << 8) | (where & ~0x3);
137 /* pick up any address that falls below the page mask */ 133 /* Pick up any address that falls below the page mask */
138 offset |= cfg_base & ~PAGE_MASK; 134 offset |= cfg_base & ~PAGE_MASK;
139 135
140 /* page boundary */ 136 /* Page boundary */
141 cfg_base = cfg_base & PAGE_MASK; 137 cfg_base = cfg_base & PAGE_MASK;
142 138
143 /* 139 /*
144 * To improve performance, if the current device is the same as 140 * To improve performance, if the current device is the same as
145 * the last device accessed, we don't touch the TLB. 141 * the last device accessed, we don't touch the TLB.
146 */ 142 */
147 entryLo0 = (6 << 26) | (cfg_base >> 6) | (2 << 3) | 7; 143 entryLo0 = (6 << 26) | (cfg_base >> 6) | (2 << 3) | 7;
148 entryLo1 = (6 << 26) | (cfg_base >> 6) | (0x1000 >> 6) | (2 << 3) | 7; 144 entryLo1 = (6 << 26) | (cfg_base >> 6) | (0x1000 >> 6) | (2 << 3) | 7;
149 if ((entryLo0 != last_entryLo0) || (entryLo1 != last_entryLo1)) { 145 if ((entryLo0 != last_entryLo0) || (entryLo1 != last_entryLo1)) {
150 mod_wired_entry(pci_cfg_wired_entry, entryLo0, entryLo1, 146 mod_wired_entry(pci_cfg_wired_entry, entryLo0, entryLo1,
151 (unsigned long)pci_cfg_vm->addr, PM_4K); 147 (unsigned long)pci_cfg_vm->addr, PM_4K);
@@ -153,38 +149,37 @@ static int config_access(unsigned char access_type, struct pci_bus *bus,
153 last_entryLo1 = entryLo1; 149 last_entryLo1 = entryLo1;
154 } 150 }
155 151
156 if (access_type == PCI_ACCESS_WRITE) { 152 if (access_type == PCI_ACCESS_WRITE)
157 au_writel(*data, (int)(pci_cfg_vm->addr + offset)); 153 au_writel(*data, (int)(pci_cfg_vm->addr + offset));
158 } else { 154 else
159 *data = au_readl((int)(pci_cfg_vm->addr + offset)); 155 *data = au_readl((int)(pci_cfg_vm->addr + offset));
160 } 156
161 au_sync_udelay(2); 157 au_sync_udelay(2);
162 158
163 DBG("cfg_access %d bus->number %d dev %d at %x *data %x conf %x\n", 159 DBG("cfg_access %d bus->number %u dev %u at %x *data %x conf %lx\n",
164 access_type, bus->number, device, where, *data, offset); 160 access_type, bus->number, device, where, *data, offset);
165 161
166 /* check master abort */ 162 /* Check master abort */
167 status = au_readl(Au1500_PCI_STATCMD); 163 status = au_readl(Au1500_PCI_STATCMD);
168 164
169 if (status & (1<<29)) { 165 if (status & (1 << 29)) {
170 *data = 0xffffffff; 166 *data = 0xffffffff;
171 error = -1; 167 error = -1;
172 DBG("Au1x Master Abort\n"); 168 DBG("Au1x Master Abort\n");
173 } else if ((status >> 28) & 0xf) { 169 } else if ((status >> 28) & 0xf) {
174 DBG("PCI ERR detected: device %d, status %x\n", device, ((status >> 28) & 0xf)); 170 DBG("PCI ERR detected: device %u, status %lx\n",
171 device, (status >> 28) & 0xf);
175 172
176 /* clear errors */ 173 /* Clear errors */
177 au_writel(status & 0xf000ffff, Au1500_PCI_STATCMD); 174 au_writel(status & 0xf000ffff, Au1500_PCI_STATCMD);
178 175
179 *data = 0xffffffff; 176 *data = 0xffffffff;
180 error = -1; 177 error = -1;
181 } 178 }
182 179
183 /* Take away the idsel. 180 /* Take away the IDSEL. */
184 */ 181 if (board_pci_idsel)
185 if (board_pci_idsel) {
186 (void)board_pci_idsel(device, 0); 182 (void)board_pci_idsel(device, 0);
187 }
188 183
189 local_irq_restore(flags); 184 local_irq_restore(flags);
190 return error; 185 return error;
@@ -192,7 +187,7 @@ static int config_access(unsigned char access_type, struct pci_bus *bus,
192} 187}
193 188
194static int read_config_byte(struct pci_bus *bus, unsigned int devfn, 189static int read_config_byte(struct pci_bus *bus, unsigned int devfn,
195 int where, u8 * val) 190 int where, u8 *val)
196{ 191{
197 u32 data; 192 u32 data;
198 int ret; 193 int ret;
@@ -206,9 +201,8 @@ static int read_config_byte(struct pci_bus *bus, unsigned int devfn,
206 return ret; 201 return ret;
207} 202}
208 203
209
210static int read_config_word(struct pci_bus *bus, unsigned int devfn, 204static int read_config_word(struct pci_bus *bus, unsigned int devfn,
211 int where, u16 * val) 205 int where, u16 *val)
212{ 206{
213 u32 data; 207 u32 data;
214 int ret; 208 int ret;
@@ -221,7 +215,7 @@ static int read_config_word(struct pci_bus *bus, unsigned int devfn,
221} 215}
222 216
223static int read_config_dword(struct pci_bus *bus, unsigned int devfn, 217static int read_config_dword(struct pci_bus *bus, unsigned int devfn,
224 int where, u32 * val) 218 int where, u32 *val)
225{ 219{
226 int ret; 220 int ret;
227 221
@@ -229,9 +223,8 @@ static int read_config_dword(struct pci_bus *bus, unsigned int devfn,
229 return ret; 223 return ret;
230} 224}
231 225
232static int 226static int write_config_byte(struct pci_bus *bus, unsigned int devfn,
233write_config_byte(struct pci_bus *bus, unsigned int devfn, int where, 227 int where, u8 val)
234 u8 val)
235{ 228{
236 u32 data = 0; 229 u32 data = 0;
237 230
@@ -239,7 +232,7 @@ write_config_byte(struct pci_bus *bus, unsigned int devfn, int where,
239 return -1; 232 return -1;
240 233
241 data = (data & ~(0xff << ((where & 3) << 3))) | 234 data = (data & ~(0xff << ((where & 3) << 3))) |
242 (val << ((where & 3) << 3)); 235 (val << ((where & 3) << 3));
243 236
244 if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &data)) 237 if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &data))
245 return -1; 238 return -1;
@@ -247,9 +240,8 @@ write_config_byte(struct pci_bus *bus, unsigned int devfn, int where,
247 return PCIBIOS_SUCCESSFUL; 240 return PCIBIOS_SUCCESSFUL;
248} 241}
249 242
250static int 243static int write_config_word(struct pci_bus *bus, unsigned int devfn,
251write_config_word(struct pci_bus *bus, unsigned int devfn, int where, 244 int where, u16 val)
252 u16 val)
253{ 245{
254 u32 data = 0; 246 u32 data = 0;
255 247
@@ -257,18 +249,16 @@ write_config_word(struct pci_bus *bus, unsigned int devfn, int where,
257 return -1; 249 return -1;
258 250
259 data = (data & ~(0xffff << ((where & 3) << 3))) | 251 data = (data & ~(0xffff << ((where & 3) << 3))) |
260 (val << ((where & 3) << 3)); 252 (val << ((where & 3) << 3));
261 253
262 if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &data)) 254 if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &data))
263 return -1; 255 return -1;
264 256
265
266 return PCIBIOS_SUCCESSFUL; 257 return PCIBIOS_SUCCESSFUL;
267} 258}
268 259
269static int 260static int write_config_dword(struct pci_bus *bus, unsigned int devfn,
270write_config_dword(struct pci_bus *bus, unsigned int devfn, int where, 261 int where, u32 val)
271 u32 val)
272{ 262{
273 if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &val)) 263 if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &val))
274 return -1; 264 return -1;
@@ -277,18 +267,20 @@ write_config_dword(struct pci_bus *bus, unsigned int devfn, int where,
277} 267}
278 268
279static int config_read(struct pci_bus *bus, unsigned int devfn, 269static int config_read(struct pci_bus *bus, unsigned int devfn,
280 int where, int size, u32 * val) 270 int where, int size, u32 *val)
281{ 271{
282 switch (size) { 272 switch (size) {
283 case 1: { 273 case 1: {
284 u8 _val; 274 u8 _val;
285 int rc = read_config_byte(bus, devfn, where, &_val); 275 int rc = read_config_byte(bus, devfn, where, &_val);
276
286 *val = _val; 277 *val = _val;
287 return rc; 278 return rc;
288 } 279 }
289 case 2: { 280 case 2: {
290 u16 _val; 281 u16 _val;
291 int rc = read_config_word(bus, devfn, where, &_val); 282 int rc = read_config_word(bus, devfn, where, &_val);
283
292 *val = _val; 284 *val = _val;
293 return rc; 285 return rc;
294 } 286 }
@@ -310,7 +302,6 @@ static int config_write(struct pci_bus *bus, unsigned int devfn,
310 } 302 }
311} 303}
312 304
313
314struct pci_ops au1x_pci_ops = { 305struct pci_ops au1x_pci_ops = {
315 config_read, 306 config_read,
316 config_write 307 config_write
diff --git a/arch/mips/pci/ops-bridge.c b/arch/mips/pci/ops-bridge.c
index 1fa09929cd7a..b46b3e211775 100644
--- a/arch/mips/pci/ops-bridge.c
+++ b/arch/mips/pci/ops-bridge.c
@@ -14,6 +14,22 @@
14#include <asm/sn/sn0/hub.h> 14#include <asm/sn/sn0/hub.h>
15 15
16/* 16/*
17 * Most of the IOC3 PCI config register aren't present
18 * we emulate what is needed for a normal PCI enumeration
19 */
20static u32 emulate_ioc3_cfg(int where, int size)
21{
22 if (size == 1 && where == 0x3d)
23 return 0x01;
24 else if (size == 2 && where == 0x3c)
25 return 0x0100;
26 else if (size == 4 && where == 0x3c)
27 return 0x00000100;
28
29 return 0;
30}
31
32/*
17 * The Bridge ASIC supports both type 0 and type 1 access. Type 1 is 33 * The Bridge ASIC supports both type 0 and type 1 access. Type 1 is
18 * not really documented, so right now I can't write code which uses it. 34 * not really documented, so right now I can't write code which uses it.
19 * Therefore we use type 0 accesses for now even though they won't work 35 * Therefore we use type 0 accesses for now even though they won't work
@@ -64,7 +80,7 @@ oh_my_gawd:
64 * generic PCI code a chance to look at the wrong register. 80 * generic PCI code a chance to look at the wrong register.
65 */ 81 */
66 if ((where >= 0x14 && where < 0x40) || (where >= 0x48)) { 82 if ((where >= 0x14 && where < 0x40) || (where >= 0x48)) {
67 *value = 0; 83 *value = emulate_ioc3_cfg(where, size);
68 return PCIBIOS_SUCCESSFUL; 84 return PCIBIOS_SUCCESSFUL;
69 } 85 }
70 86
@@ -127,7 +143,7 @@ oh_my_gawd:
127 * generic PCI code a chance to look at the wrong register. 143 * generic PCI code a chance to look at the wrong register.
128 */ 144 */
129 if ((where >= 0x14 && where < 0x40) || (where >= 0x48)) { 145 if ((where >= 0x14 && where < 0x40) || (where >= 0x48)) {
130 *value = 0; 146 *value = emulate_ioc3_cfg(where, size);
131 return PCIBIOS_SUCCESSFUL; 147 return PCIBIOS_SUCCESSFUL;
132 } 148 }
133 149
diff --git a/arch/mips/pci/pci-ip27.c b/arch/mips/pci/pci-ip27.c
index bb64828a92fe..a18516925cdd 100644
--- a/arch/mips/pci/pci-ip27.c
+++ b/arch/mips/pci/pci-ip27.c
@@ -47,6 +47,9 @@ int __cpuinit bridge_probe(nasid_t nasid, int widget_id, int masterwid)
47 static int num_bridges = 0; 47 static int num_bridges = 0;
48 bridge_t *bridge; 48 bridge_t *bridge;
49 int slot; 49 int slot;
50 extern int pci_probe_only;
51
52 pci_probe_only = 1;
50 53
51 printk("a bridge\n"); 54 printk("a bridge\n");
52 55
@@ -100,6 +103,11 @@ int __cpuinit bridge_probe(nasid_t nasid, int widget_id, int masterwid)
100 */ 103 */
101 bridge->b_wid_control |= BRIDGE_CTRL_IO_SWAP | 104 bridge->b_wid_control |= BRIDGE_CTRL_IO_SWAP |
102 BRIDGE_CTRL_MEM_SWAP; 105 BRIDGE_CTRL_MEM_SWAP;
106#ifdef CONFIG_PAGE_SIZE_4KB
107 bridge->b_wid_control &= ~BRIDGE_CTRL_PAGE_SIZE;
108#else /* 16kB or larger */
109 bridge->b_wid_control |= BRIDGE_CTRL_PAGE_SIZE;
110#endif
103 111
104 /* 112 /*
105 * Hmm... IRIX sets additional bits in the address which 113 * Hmm... IRIX sets additional bits in the address which
diff --git a/arch/mips/pmc-sierra/msp71xx/msp_hwbutton.c b/arch/mips/pmc-sierra/msp71xx/msp_hwbutton.c
index ab96a2d7f4c4..11769b55438c 100644
--- a/arch/mips/pmc-sierra/msp71xx/msp_hwbutton.c
+++ b/arch/mips/pmc-sierra/msp71xx/msp_hwbutton.c
@@ -126,9 +126,6 @@ static irqreturn_t hwbutton_handler(int irq, void *data)
126 struct hwbutton_interrupt *hirq = data; 126 struct hwbutton_interrupt *hirq = data;
127 unsigned long cic_ext = *CIC_EXT_CFG_REG; 127 unsigned long cic_ext = *CIC_EXT_CFG_REG;
128 128
129 if (irq != hirq->irq)
130 return IRQ_NONE;
131
132 if (CIC_EXT_IS_ACTIVE_HI(cic_ext, hirq->eirq)) { 129 if (CIC_EXT_IS_ACTIVE_HI(cic_ext, hirq->eirq)) {
133 /* Interrupt: pin is now HI */ 130 /* Interrupt: pin is now HI */
134 CIC_EXT_SET_ACTIVE_LO(cic_ext, hirq->eirq); 131 CIC_EXT_SET_ACTIVE_LO(cic_ext, hirq->eirq);
@@ -164,7 +161,7 @@ static int msp_hwbutton_register(struct hwbutton_interrupt *hirq)
164 *CIC_EXT_CFG_REG = cic_ext; 161 *CIC_EXT_CFG_REG = cic_ext;
165 162
166 return request_irq(hirq->irq, hwbutton_handler, IRQF_DISABLED, 163 return request_irq(hirq->irq, hwbutton_handler, IRQF_DISABLED,
167 hirq->name, (void *)hirq); 164 hirq->name, hirq);
168} 165}
169 166
170static int __init msp_hwbutton_setup(void) 167static int __init msp_hwbutton_setup(void)
diff --git a/arch/mips/sgi-ip27/ip27-init.c b/arch/mips/sgi-ip27/ip27-init.c
index 7093e7c573a4..4a500e8cd3cc 100644
--- a/arch/mips/sgi-ip27/ip27-init.c
+++ b/arch/mips/sgi-ip27/ip27-init.c
@@ -161,27 +161,6 @@ cnodeid_t get_compact_nodeid(void)
161 return NASID_TO_COMPACT_NODEID(get_nasid()); 161 return NASID_TO_COMPACT_NODEID(get_nasid());
162} 162}
163 163
164/* Extracted from the IOC3 meta driver. FIXME. */
165static inline void ioc3_sio_init(void)
166{
167 struct ioc3 *ioc3;
168 nasid_t nid;
169 long loops;
170
171 nid = get_nasid();
172 ioc3 = (struct ioc3 *) KL_CONFIG_CH_CONS_INFO(nid)->memory_base;
173
174 ioc3->sscr_a = 0; /* PIO mode for uarta. */
175 ioc3->sscr_b = 0; /* PIO mode for uartb. */
176 ioc3->sio_iec = ~0;
177 ioc3->sio_ies = (SIO_IR_SA_INT | SIO_IR_SB_INT);
178
179 loops=1000000; while(loops--);
180 ioc3->sregs.uarta.iu_fcr = 0;
181 ioc3->sregs.uartb.iu_fcr = 0;
182 loops=1000000; while(loops--);
183}
184
185static inline void ioc3_eth_init(void) 164static inline void ioc3_eth_init(void)
186{ 165{
187 struct ioc3 *ioc3; 166 struct ioc3 *ioc3;
@@ -234,7 +213,6 @@ void __init plat_mem_setup(void)
234 panic("Kernel compiled for N mode."); 213 panic("Kernel compiled for N mode.");
235#endif 214#endif
236 215
237 ioc3_sio_init();
238 ioc3_eth_init(); 216 ioc3_eth_init();
239 per_cpu_init(); 217 per_cpu_init();
240 218
diff --git a/arch/mips/sgi-ip27/ip27-memory.c b/arch/mips/sgi-ip27/ip27-memory.c
index bf438d02366e..42cd10956306 100644
--- a/arch/mips/sgi-ip27/ip27-memory.c
+++ b/arch/mips/sgi-ip27/ip27-memory.c
@@ -33,10 +33,6 @@
33#define SLOT_PFNSHIFT (SLOT_SHIFT - PAGE_SHIFT) 33#define SLOT_PFNSHIFT (SLOT_SHIFT - PAGE_SHIFT)
34#define PFN_NASIDSHFT (NASID_SHFT - PAGE_SHIFT) 34#define PFN_NASIDSHFT (NASID_SHFT - PAGE_SHIFT)
35 35
36#define SLOT_IGNORED 0xffff
37
38static short __initdata slot_lastfilled_cache[MAX_COMPACT_NODES];
39static unsigned short __initdata slot_psize_cache[MAX_COMPACT_NODES][MAX_MEM_SLOTS];
40static struct bootmem_data __initdata plat_node_bdata[MAX_COMPACT_NODES]; 36static struct bootmem_data __initdata plat_node_bdata[MAX_COMPACT_NODES];
41 37
42struct node_data *__node_data[MAX_COMPACT_NODES]; 38struct node_data *__node_data[MAX_COMPACT_NODES];
@@ -267,51 +263,6 @@ static pfn_t __init slot_getbasepfn(cnodeid_t cnode, int slot)
267 return ((pfn_t)nasid << PFN_NASIDSHFT) | (slot << SLOT_PFNSHIFT); 263 return ((pfn_t)nasid << PFN_NASIDSHFT) | (slot << SLOT_PFNSHIFT);
268} 264}
269 265
270/*
271 * Return the number of pages of memory provided by the given slot
272 * on the specified node.
273 */
274static pfn_t __init slot_getsize(cnodeid_t node, int slot)
275{
276 return (pfn_t) slot_psize_cache[node][slot];
277}
278
279/*
280 * Return highest slot filled
281 */
282static int __init node_getlastslot(cnodeid_t node)
283{
284 return (int) slot_lastfilled_cache[node];
285}
286
287/*
288 * Return the pfn of the last free page of memory on a node.
289 */
290static pfn_t __init node_getmaxclick(cnodeid_t node)
291{
292 pfn_t slot_psize;
293 int slot;
294
295 /*
296 * Start at the top slot. When we find a slot with memory in it,
297 * that's the winner.
298 */
299 for (slot = (MAX_MEM_SLOTS - 1); slot >= 0; slot--) {
300 if ((slot_psize = slot_getsize(node, slot))) {
301 if (slot_psize == SLOT_IGNORED)
302 continue;
303 /* Return the basepfn + the slot size, minus 1. */
304 return slot_getbasepfn(node, slot) + slot_psize - 1;
305 }
306 }
307
308 /*
309 * If there's no memory on the node, return 0. This is likely
310 * to cause problems.
311 */
312 return 0;
313}
314
315static pfn_t __init slot_psize_compute(cnodeid_t node, int slot) 266static pfn_t __init slot_psize_compute(cnodeid_t node, int slot)
316{ 267{
317 nasid_t nasid; 268 nasid_t nasid;
@@ -404,13 +355,13 @@ static void __init mlreset(void)
404static void __init szmem(void) 355static void __init szmem(void)
405{ 356{
406 pfn_t slot_psize, slot0sz = 0, nodebytes; /* Hack to detect problem configs */ 357 pfn_t slot_psize, slot0sz = 0, nodebytes; /* Hack to detect problem configs */
407 int slot, ignore; 358 int slot;
408 cnodeid_t node; 359 cnodeid_t node;
409 360
410 num_physpages = 0; 361 num_physpages = 0;
411 362
412 for_each_online_node(node) { 363 for_each_online_node(node) {
413 ignore = nodebytes = 0; 364 nodebytes = 0;
414 for (slot = 0; slot < MAX_MEM_SLOTS; slot++) { 365 for (slot = 0; slot < MAX_MEM_SLOTS; slot++) {
415 slot_psize = slot_psize_compute(node, slot); 366 slot_psize = slot_psize_compute(node, slot);
416 if (slot == 0) 367 if (slot == 0)
@@ -420,21 +371,20 @@ static void __init szmem(void)
420 * kernel text. 371 * kernel text.
421 */ 372 */
422 nodebytes += (1LL << SLOT_SHIFT); 373 nodebytes += (1LL << SLOT_SHIFT);
374
375 if (!slot_psize)
376 continue;
377
423 if ((nodebytes >> PAGE_SHIFT) * (sizeof(struct page)) > 378 if ((nodebytes >> PAGE_SHIFT) * (sizeof(struct page)) >
424 (slot0sz << PAGE_SHIFT)) 379 (slot0sz << PAGE_SHIFT)) {
425 ignore = 1;
426 if (ignore && slot_psize) {
427 printk("Ignoring slot %d onwards on node %d\n", 380 printk("Ignoring slot %d onwards on node %d\n",
428 slot, node); 381 slot, node);
429 slot_psize_cache[node][slot] = SLOT_IGNORED;
430 slot = MAX_MEM_SLOTS; 382 slot = MAX_MEM_SLOTS;
431 continue; 383 continue;
432 } 384 }
433 num_physpages += slot_psize; 385 num_physpages += slot_psize;
434 slot_psize_cache[node][slot] = 386 add_active_range(node, slot_getbasepfn(node, slot),
435 (unsigned short) slot_psize; 387 slot_getbasepfn(node, slot) + slot_psize);
436 if (slot_psize)
437 slot_lastfilled_cache[node] = slot;
438 } 388 }
439 } 389 }
440} 390}
@@ -442,18 +392,20 @@ static void __init szmem(void)
442static void __init node_mem_init(cnodeid_t node) 392static void __init node_mem_init(cnodeid_t node)
443{ 393{
444 pfn_t slot_firstpfn = slot_getbasepfn(node, 0); 394 pfn_t slot_firstpfn = slot_getbasepfn(node, 0);
445 pfn_t slot_lastpfn = slot_firstpfn + slot_getsize(node, 0);
446 pfn_t slot_freepfn = node_getfirstfree(node); 395 pfn_t slot_freepfn = node_getfirstfree(node);
447 struct pglist_data *pd;
448 unsigned long bootmap_size; 396 unsigned long bootmap_size;
397 pfn_t start_pfn, end_pfn;
398
399 get_pfn_range_for_nid(node, &start_pfn, &end_pfn);
449 400
450 /* 401 /*
451 * Allocate the node data structures on the node first. 402 * Allocate the node data structures on the node first.
452 */ 403 */
453 __node_data[node] = __va(slot_freepfn << PAGE_SHIFT); 404 __node_data[node] = __va(slot_freepfn << PAGE_SHIFT);
454 405
455 pd = NODE_DATA(node); 406 NODE_DATA(node)->bdata = &plat_node_bdata[node];
456 pd->bdata = &plat_node_bdata[node]; 407 NODE_DATA(node)->node_start_pfn = start_pfn;
408 NODE_DATA(node)->node_spanned_pages = end_pfn - start_pfn;
457 409
458 cpus_clear(hub_data(node)->h_cpus); 410 cpus_clear(hub_data(node)->h_cpus);
459 411
@@ -461,12 +413,12 @@ static void __init node_mem_init(cnodeid_t node)
461 sizeof(struct hub_data)); 413 sizeof(struct hub_data));
462 414
463 bootmap_size = init_bootmem_node(NODE_DATA(node), slot_freepfn, 415 bootmap_size = init_bootmem_node(NODE_DATA(node), slot_freepfn,
464 slot_firstpfn, slot_lastpfn); 416 start_pfn, end_pfn);
465 free_bootmem_node(NODE_DATA(node), slot_firstpfn << PAGE_SHIFT, 417 free_bootmem_with_active_regions(node, end_pfn);
466 (slot_lastpfn - slot_firstpfn) << PAGE_SHIFT);
467 reserve_bootmem_node(NODE_DATA(node), slot_firstpfn << PAGE_SHIFT, 418 reserve_bootmem_node(NODE_DATA(node), slot_firstpfn << PAGE_SHIFT,
468 ((slot_freepfn - slot_firstpfn) << PAGE_SHIFT) + bootmap_size, 419 ((slot_freepfn - slot_firstpfn) << PAGE_SHIFT) + bootmap_size,
469 BOOTMEM_DEFAULT); 420 BOOTMEM_DEFAULT);
421 sparse_memory_present_with_active_regions(node);
470} 422}
471 423
472/* 424/*
@@ -515,16 +467,15 @@ void __init paging_init(void)
515 pagetable_init(); 467 pagetable_init();
516 468
517 for_each_online_node(node) { 469 for_each_online_node(node) {
518 pfn_t start_pfn = slot_getbasepfn(node, 0); 470 pfn_t start_pfn, end_pfn;
519 pfn_t end_pfn = node_getmaxclick(node) + 1;
520 471
521 zones_size[ZONE_NORMAL] = end_pfn - start_pfn; 472 get_pfn_range_for_nid(node, &start_pfn, &end_pfn);
522 free_area_init_node(node, NODE_DATA(node),
523 zones_size, start_pfn, NULL);
524 473
525 if (end_pfn > max_low_pfn) 474 if (end_pfn > max_low_pfn)
526 max_low_pfn = end_pfn; 475 max_low_pfn = end_pfn;
527 } 476 }
477 zones_size[ZONE_NORMAL] = max_low_pfn;
478 free_area_init_nodes(zones_size);
528} 479}
529 480
530void __init mem_init(void) 481void __init mem_init(void)
@@ -535,34 +486,10 @@ void __init mem_init(void)
535 high_memory = (void *) __va(num_physpages << PAGE_SHIFT); 486 high_memory = (void *) __va(num_physpages << PAGE_SHIFT);
536 487
537 for_each_online_node(node) { 488 for_each_online_node(node) {
538 unsigned slot, numslots;
539 struct page *end, *p;
540
541 /* 489 /*
542 * This will free up the bootmem, ie, slot 0 memory. 490 * This will free up the bootmem, ie, slot 0 memory.
543 */ 491 */
544 totalram_pages += free_all_bootmem_node(NODE_DATA(node)); 492 totalram_pages += free_all_bootmem_node(NODE_DATA(node));
545
546 /*
547 * We need to manually do the other slots.
548 */
549 numslots = node_getlastslot(node);
550 for (slot = 1; slot <= numslots; slot++) {
551 p = nid_page_nr(node, slot_getbasepfn(node, slot) -
552 slot_getbasepfn(node, 0));
553
554 /*
555 * Free valid memory in current slot.
556 */
557 for (end = p + slot_getsize(node, slot); p < end; p++) {
558 /* if (!page_is_ram(pgnr)) continue; */
559 /* commented out until page_is_ram works */
560 ClearPageReserved(p);
561 init_page_count(p);
562 __free_page(p);
563 totalram_pages++;
564 }
565 }
566 } 493 }
567 494
568 totalram_pages -= setup_zero_pages(); /* This comes from node 0 */ 495 totalram_pages -= setup_zero_pages(); /* This comes from node 0 */
diff --git a/arch/mips/sgi-ip27/ip27-smp.c b/arch/mips/sgi-ip27/ip27-smp.c
index f15fc93d6b35..ba5cdebeaf0d 100644
--- a/arch/mips/sgi-ip27/ip27-smp.c
+++ b/arch/mips/sgi-ip27/ip27-smp.c
@@ -176,11 +176,14 @@ static void ip27_send_ipi_mask(cpumask_t mask, unsigned int action)
176static void __cpuinit ip27_init_secondary(void) 176static void __cpuinit ip27_init_secondary(void)
177{ 177{
178 per_cpu_init(); 178 per_cpu_init();
179 local_irq_enable();
180} 179}
181 180
182static void __cpuinit ip27_smp_finish(void) 181static void __cpuinit ip27_smp_finish(void)
183{ 182{
183 extern void hub_rt_clock_event_init(void);
184
185 hub_rt_clock_event_init();
186 local_irq_enable();
184} 187}
185 188
186static void __init ip27_cpus_done(void) 189static void __init ip27_cpus_done(void)
diff --git a/arch/mips/sgi-ip27/ip27-timer.c b/arch/mips/sgi-ip27/ip27-timer.c
index 25d3baf0ebc4..8b4e854af925 100644
--- a/arch/mips/sgi-ip27/ip27-timer.c
+++ b/arch/mips/sgi-ip27/ip27-timer.c
@@ -158,12 +158,15 @@ static void rt_set_mode(enum clock_event_mode mode,
158 } 158 }
159} 159}
160 160
161unsigned int rt_timer_irq; 161int rt_timer_irq;
162
163static DEFINE_PER_CPU(struct clock_event_device, hub_rt_clockevent);
164static DEFINE_PER_CPU(char [11], hub_rt_name);
162 165
163static irqreturn_t hub_rt_counter_handler(int irq, void *dev_id) 166static irqreturn_t hub_rt_counter_handler(int irq, void *dev_id)
164{ 167{
165 struct clock_event_device *cd = dev_id;
166 unsigned int cpu = smp_processor_id(); 168 unsigned int cpu = smp_processor_id();
169 struct clock_event_device *cd = &per_cpu(hub_rt_clockevent, cpu);
167 int slice = cputoslice(cpu); 170 int slice = cputoslice(cpu);
168 171
169 /* 172 /*
@@ -192,10 +195,7 @@ struct irqaction hub_rt_irqaction = {
192#define NSEC_PER_CYCLE 800 195#define NSEC_PER_CYCLE 800
193#define CYCLES_PER_SEC (NSEC_PER_SEC / NSEC_PER_CYCLE) 196#define CYCLES_PER_SEC (NSEC_PER_SEC / NSEC_PER_CYCLE)
194 197
195static DEFINE_PER_CPU(struct clock_event_device, hub_rt_clockevent); 198void __cpuinit hub_rt_clock_event_init(void)
196static DEFINE_PER_CPU(char [11], hub_rt_name);
197
198static void __cpuinit hub_rt_clock_event_init(void)
199{ 199{
200 unsigned int cpu = smp_processor_id(); 200 unsigned int cpu = smp_processor_id();
201 struct clock_event_device *cd = &per_cpu(hub_rt_clockevent, cpu); 201 struct clock_event_device *cd = &per_cpu(hub_rt_clockevent, cpu);
@@ -203,23 +203,22 @@ static void __cpuinit hub_rt_clock_event_init(void)
203 int irq = rt_timer_irq; 203 int irq = rt_timer_irq;
204 204
205 sprintf(name, "hub-rt %d", cpu); 205 sprintf(name, "hub-rt %d", cpu);
206 cd->name = "HUB-RT", 206 cd->name = name;
207 cd->features = CLOCK_EVT_FEAT_ONESHOT, 207 cd->features = CLOCK_EVT_FEAT_ONESHOT;
208 clockevent_set_clock(cd, CYCLES_PER_SEC); 208 clockevent_set_clock(cd, CYCLES_PER_SEC);
209 cd->max_delta_ns = clockevent_delta2ns(0xfffffffffffff, cd); 209 cd->max_delta_ns = clockevent_delta2ns(0xfffffffffffff, cd);
210 cd->min_delta_ns = clockevent_delta2ns(0x300, cd); 210 cd->min_delta_ns = clockevent_delta2ns(0x300, cd);
211 cd->rating = 200, 211 cd->rating = 200;
212 cd->irq = irq, 212 cd->irq = irq;
213 cd->cpumask = cpumask_of_cpu(cpu), 213 cd->cpumask = cpumask_of_cpu(cpu);
214 cd->rating = 300, 214 cd->set_next_event = rt_next_event;
215 cd->set_next_event = rt_next_event, 215 cd->set_mode = rt_set_mode;
216 cd->set_mode = rt_set_mode,
217 clockevents_register_device(cd); 216 clockevents_register_device(cd);
218} 217}
219 218
220static void __init hub_rt_clock_event_global_init(void) 219static void __init hub_rt_clock_event_global_init(void)
221{ 220{
222 unsigned int irq; 221 int irq;
223 222
224 do { 223 do {
225 smp_wmb(); 224 smp_wmb();
@@ -261,6 +260,7 @@ void __init plat_time_init(void)
261{ 260{
262 hub_rt_clocksource_init(); 261 hub_rt_clocksource_init();
263 hub_rt_clock_event_global_init(); 262 hub_rt_clock_event_global_init();
263 hub_rt_clock_event_init();
264} 264}
265 265
266void __cpuinit cpu_time_init(void) 266void __cpuinit cpu_time_init(void)
@@ -281,7 +281,6 @@ void __cpuinit cpu_time_init(void)
281 281
282 printk("CPU %d clock is %dMHz.\n", smp_processor_id(), cpu->cpu_speed); 282 printk("CPU %d clock is %dMHz.\n", smp_processor_id(), cpu->cpu_speed);
283 283
284 hub_rt_clock_event_init();
285 set_c0_status(SRB_TIMOCLK); 284 set_c0_status(SRB_TIMOCLK);
286} 285}
287 286
diff --git a/arch/mn10300/boot/install.sh b/arch/mn10300/boot/install.sh
index 072951c83976..abba30971191 100644
--- a/arch/mn10300/boot/install.sh
+++ b/arch/mn10300/boot/install.sh
@@ -26,42 +26,42 @@ rm -fr $4/../usr/include/linux $4/../usr/include/asm
26install -c -m 0755 $2 $4/vmlinuz 26install -c -m 0755 $2 $4/vmlinuz
27install -c -m 0755 $5 $4/boot.rom 27install -c -m 0755 $5 $4/boot.rom
28install -c -m 0755 -d $4/../usr/include/linux 28install -c -m 0755 -d $4/../usr/include/linux
29cd $TOPDIR/include/linux 29cd ${srctree}/include/linux
30for i in `find . -maxdepth 1 -name '*.h' -print`; do 30for i in `find . -maxdepth 1 -name '*.h' -print`; do
31 install -c -m 0644 $i $4/../usr/include/linux 31 install -c -m 0644 $i $4/../usr/include/linux
32done 32done
33install -c -m 0755 -d $4/../usr/include/linux/byteorder 33install -c -m 0755 -d $4/../usr/include/linux/byteorder
34cd $TOPDIR/include/linux/byteorder 34cd ${srctree}/include/linux/byteorder
35for i in `find . -name '*.h' -print`; do 35for i in `find . -name '*.h' -print`; do
36 install -c -m 0644 $i $4/../usr/include/linux/byteorder 36 install -c -m 0644 $i $4/../usr/include/linux/byteorder
37done 37done
38install -c -m 0755 -d $4/../usr/include/linux/lockd 38install -c -m 0755 -d $4/../usr/include/linux/lockd
39cd $TOPDIR/include/linux/lockd 39cd ${srctree}/include/linux/lockd
40for i in `find . -name '*.h' -print`; do 40for i in `find . -name '*.h' -print`; do
41 install -c -m 0644 $i $4/../usr/include/linux/lockd 41 install -c -m 0644 $i $4/../usr/include/linux/lockd
42done 42done
43install -c -m 0755 -d $4/../usr/include/linux/netfilter_ipv4 43install -c -m 0755 -d $4/../usr/include/linux/netfilter_ipv4
44cd $TOPDIR/include/linux/netfilter_ipv4 44cd ${srctree}/include/linux/netfilter_ipv4
45for i in `find . -name '*.h' -print`; do 45for i in `find . -name '*.h' -print`; do
46 install -c -m 0644 $i $4/../usr/include/linux/netfilter_ipv4 46 install -c -m 0644 $i $4/../usr/include/linux/netfilter_ipv4
47done 47done
48install -c -m 0755 -d $4/../usr/include/linux/nfsd 48install -c -m 0755 -d $4/../usr/include/linux/nfsd
49cd $TOPDIR/include/linux/nfsd 49cd ${srctree}/include/linux/nfsd
50for i in `find . -name '*.h' -print`; do 50for i in `find . -name '*.h' -print`; do
51 install -c -m 0644 $i $4/../usr/include/linux/nfsd/$i 51 install -c -m 0644 $i $4/../usr/include/linux/nfsd/$i
52done 52done
53install -c -m 0755 -d $4/../usr/include/linux/raid 53install -c -m 0755 -d $4/../usr/include/linux/raid
54cd $TOPDIR/include/linux/raid 54cd ${srctree}/include/linux/raid
55for i in `find . -name '*.h' -print`; do 55for i in `find . -name '*.h' -print`; do
56 install -c -m 0644 $i $4/../usr/include/linux/raid 56 install -c -m 0644 $i $4/../usr/include/linux/raid
57done 57done
58install -c -m 0755 -d $4/../usr/include/linux/sunrpc 58install -c -m 0755 -d $4/../usr/include/linux/sunrpc
59cd $TOPDIR/include/linux/sunrpc 59cd ${srctree}/include/linux/sunrpc
60for i in `find . -name '*.h' -print`; do 60for i in `find . -name '*.h' -print`; do
61 install -c -m 0644 $i $4/../usr/include/linux/sunrpc 61 install -c -m 0644 $i $4/../usr/include/linux/sunrpc
62done 62done
63install -c -m 0755 -d $4/../usr/include/asm 63install -c -m 0755 -d $4/../usr/include/asm
64cd $TOPDIR/include/asm 64cd ${srctree}/include/asm
65for i in `find . -name '*.h' -print`; do 65for i in `find . -name '*.h' -print`; do
66 install -c -m 0644 $i $4/../usr/include/asm 66 install -c -m 0644 $i $4/../usr/include/asm
67done 67done
diff --git a/arch/mn10300/kernel/init_task.c b/arch/mn10300/kernel/init_task.c
index 39fe6882dd1d..af16f6e5c918 100644
--- a/arch/mn10300/kernel/init_task.c
+++ b/arch/mn10300/kernel/init_task.c
@@ -19,7 +19,6 @@
19#include <asm/pgtable.h> 19#include <asm/pgtable.h>
20 20
21static struct fs_struct init_fs = INIT_FS; 21static struct fs_struct init_fs = INIT_FS;
22static struct files_struct init_files = INIT_FILES;
23static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 22static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
24static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 23static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
25struct mm_struct init_mm = INIT_MM(init_mm); 24struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/parisc/kernel/Makefile b/arch/parisc/kernel/Makefile
index 1f6585a56f97..016d3fc4111c 100644
--- a/arch/parisc/kernel/Makefile
+++ b/arch/parisc/kernel/Makefile
@@ -4,9 +4,6 @@
4 4
5extra-y := init_task.o head.o vmlinux.lds 5extra-y := init_task.o head.o vmlinux.lds
6 6
7AFLAGS_entry.o := -traditional
8AFLAGS_pacache.o := -traditional
9
10obj-y := cache.o pacache.o setup.o traps.o time.o irq.o \ 7obj-y := cache.o pacache.o setup.o traps.o time.o irq.o \
11 pa7300lc.o syscall.o entry.o sys_parisc.o firmware.o \ 8 pa7300lc.o syscall.o entry.o sys_parisc.o firmware.o \
12 ptrace.o hardware.o inventory.o drivers.o \ 9 ptrace.o hardware.o inventory.o drivers.o \
diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S
index 111d47284eac..d1fa4edd2d80 100644
--- a/arch/parisc/kernel/entry.S
+++ b/arch/parisc/kernel/entry.S
@@ -40,16 +40,8 @@
40#include <linux/linkage.h> 40#include <linux/linkage.h>
41 41
42#ifdef CONFIG_64BIT 42#ifdef CONFIG_64BIT
43#define CMPIB cmpib,*
44#define CMPB cmpb,*
45#define COND(x) *x
46
47 .level 2.0w 43 .level 2.0w
48#else 44#else
49#define CMPIB cmpib,
50#define CMPB cmpb,
51#define COND(x) x
52
53 .level 2.0 45 .level 2.0
54#endif 46#endif
55 47
@@ -957,9 +949,9 @@ intr_check_sig:
957 * Only do signals if we are returning to user space 949 * Only do signals if we are returning to user space
958 */ 950 */
959 LDREG PT_IASQ0(%r16), %r20 951 LDREG PT_IASQ0(%r16), %r20
960 CMPIB=,n 0,%r20,intr_restore /* backward */ 952 cmpib,COND(=),n 0,%r20,intr_restore /* backward */
961 LDREG PT_IASQ1(%r16), %r20 953 LDREG PT_IASQ1(%r16), %r20
962 CMPIB=,n 0,%r20,intr_restore /* backward */ 954 cmpib,COND(=),n 0,%r20,intr_restore /* backward */
963 955
964 copy %r0, %r25 /* long in_syscall = 0 */ 956 copy %r0, %r25 /* long in_syscall = 0 */
965#ifdef CONFIG_64BIT 957#ifdef CONFIG_64BIT
@@ -1013,10 +1005,10 @@ intr_do_resched:
1013 * we jump back to intr_restore. 1005 * we jump back to intr_restore.
1014 */ 1006 */
1015 LDREG PT_IASQ0(%r16), %r20 1007 LDREG PT_IASQ0(%r16), %r20
1016 CMPIB= 0, %r20, intr_do_preempt 1008 cmpib,COND(=) 0, %r20, intr_do_preempt
1017 nop 1009 nop
1018 LDREG PT_IASQ1(%r16), %r20 1010 LDREG PT_IASQ1(%r16), %r20
1019 CMPIB= 0, %r20, intr_do_preempt 1011 cmpib,COND(=) 0, %r20, intr_do_preempt
1020 nop 1012 nop
1021 1013
1022#ifdef CONFIG_64BIT 1014#ifdef CONFIG_64BIT
@@ -1045,7 +1037,7 @@ intr_do_preempt:
1045 /* current_thread_info()->preempt_count */ 1037 /* current_thread_info()->preempt_count */
1046 mfctl %cr30, %r1 1038 mfctl %cr30, %r1
1047 LDREG TI_PRE_COUNT(%r1), %r19 1039 LDREG TI_PRE_COUNT(%r1), %r19
1048 CMPIB<> 0, %r19, intr_restore /* if preempt_count > 0 */ 1040 cmpib,COND(<>) 0, %r19, intr_restore /* if preempt_count > 0 */
1049 nop /* prev insn branched backwards */ 1041 nop /* prev insn branched backwards */
1050 1042
1051 /* check if we interrupted a critical path */ 1043 /* check if we interrupted a critical path */
@@ -1064,7 +1056,7 @@ intr_do_preempt:
1064 */ 1056 */
1065 1057
1066intr_extint: 1058intr_extint:
1067 CMPIB=,n 0,%r16,1f 1059 cmpib,COND(=),n 0,%r16,1f
1068 1060
1069 get_stack_use_cr30 1061 get_stack_use_cr30
1070 b,n 2f 1062 b,n 2f
@@ -1099,7 +1091,7 @@ ENDPROC(syscall_exit_rfi)
1099 1091
1100ENTRY(intr_save) /* for os_hpmc */ 1092ENTRY(intr_save) /* for os_hpmc */
1101 mfsp %sr7,%r16 1093 mfsp %sr7,%r16
1102 CMPIB=,n 0,%r16,1f 1094 cmpib,COND(=),n 0,%r16,1f
1103 get_stack_use_cr30 1095 get_stack_use_cr30
1104 b 2f 1096 b 2f
1105 copy %r8,%r26 1097 copy %r8,%r26
@@ -1121,7 +1113,7 @@ ENTRY(intr_save) /* for os_hpmc */
1121 * adjust isr/ior below. 1113 * adjust isr/ior below.
1122 */ 1114 */
1123 1115
1124 CMPIB=,n 6,%r26,skip_save_ior 1116 cmpib,COND(=),n 6,%r26,skip_save_ior
1125 1117
1126 1118
1127 mfctl %cr20, %r16 /* isr */ 1119 mfctl %cr20, %r16 /* isr */
@@ -1450,11 +1442,11 @@ nadtlb_emulate:
1450 bb,>=,n %r9,26,nadtlb_nullify /* m bit not set, just nullify */ 1442 bb,>=,n %r9,26,nadtlb_nullify /* m bit not set, just nullify */
1451 BL get_register,%r25 1443 BL get_register,%r25
1452 extrw,u %r9,15,5,%r8 /* Get index register # */ 1444 extrw,u %r9,15,5,%r8 /* Get index register # */
1453 CMPIB=,n -1,%r1,nadtlb_fault /* have to use slow path */ 1445 cmpib,COND(=),n -1,%r1,nadtlb_fault /* have to use slow path */
1454 copy %r1,%r24 1446 copy %r1,%r24
1455 BL get_register,%r25 1447 BL get_register,%r25
1456 extrw,u %r9,10,5,%r8 /* Get base register # */ 1448 extrw,u %r9,10,5,%r8 /* Get base register # */
1457 CMPIB=,n -1,%r1,nadtlb_fault /* have to use slow path */ 1449 cmpib,COND(=),n -1,%r1,nadtlb_fault /* have to use slow path */
1458 BL set_register,%r25 1450 BL set_register,%r25
1459 add,l %r1,%r24,%r1 /* doesn't affect c/b bits */ 1451 add,l %r1,%r24,%r1 /* doesn't affect c/b bits */
1460 1452
@@ -1486,7 +1478,7 @@ nadtlb_probe_check:
1486 cmpb,<>,n %r16,%r17,nadtlb_fault /* Must be probe,[rw]*/ 1478 cmpb,<>,n %r16,%r17,nadtlb_fault /* Must be probe,[rw]*/
1487 BL get_register,%r25 /* Find the target register */ 1479 BL get_register,%r25 /* Find the target register */
1488 extrw,u %r9,31,5,%r8 /* Get target register */ 1480 extrw,u %r9,31,5,%r8 /* Get target register */
1489 CMPIB=,n -1,%r1,nadtlb_fault /* have to use slow path */ 1481 cmpib,COND(=),n -1,%r1,nadtlb_fault /* have to use slow path */
1490 BL set_register,%r25 1482 BL set_register,%r25
1491 copy %r0,%r1 /* Write zero to target register */ 1483 copy %r0,%r1 /* Write zero to target register */
1492 b nadtlb_nullify /* Nullify return insn */ 1484 b nadtlb_nullify /* Nullify return insn */
@@ -1570,12 +1562,12 @@ dbit_trap_20w:
1570 L3_ptep ptp,pte,t0,va,dbit_fault 1562 L3_ptep ptp,pte,t0,va,dbit_fault
1571 1563
1572#ifdef CONFIG_SMP 1564#ifdef CONFIG_SMP
1573 CMPIB=,n 0,spc,dbit_nolock_20w 1565 cmpib,COND(=),n 0,spc,dbit_nolock_20w
1574 load32 PA(pa_dbit_lock),t0 1566 load32 PA(pa_dbit_lock),t0
1575 1567
1576dbit_spin_20w: 1568dbit_spin_20w:
1577 LDCW 0(t0),t1 1569 LDCW 0(t0),t1
1578 cmpib,= 0,t1,dbit_spin_20w 1570 cmpib,COND(=) 0,t1,dbit_spin_20w
1579 nop 1571 nop
1580 1572
1581dbit_nolock_20w: 1573dbit_nolock_20w:
@@ -1586,7 +1578,7 @@ dbit_nolock_20w:
1586 1578
1587 idtlbt pte,prot 1579 idtlbt pte,prot
1588#ifdef CONFIG_SMP 1580#ifdef CONFIG_SMP
1589 CMPIB=,n 0,spc,dbit_nounlock_20w 1581 cmpib,COND(=),n 0,spc,dbit_nounlock_20w
1590 ldi 1,t1 1582 ldi 1,t1
1591 stw t1,0(t0) 1583 stw t1,0(t0)
1592 1584
@@ -1606,7 +1598,7 @@ dbit_trap_11:
1606 L2_ptep ptp,pte,t0,va,dbit_fault 1598 L2_ptep ptp,pte,t0,va,dbit_fault
1607 1599
1608#ifdef CONFIG_SMP 1600#ifdef CONFIG_SMP
1609 CMPIB=,n 0,spc,dbit_nolock_11 1601 cmpib,COND(=),n 0,spc,dbit_nolock_11
1610 load32 PA(pa_dbit_lock),t0 1602 load32 PA(pa_dbit_lock),t0
1611 1603
1612dbit_spin_11: 1604dbit_spin_11:
@@ -1628,7 +1620,7 @@ dbit_nolock_11:
1628 1620
1629 mtsp t1, %sr1 /* Restore sr1 */ 1621 mtsp t1, %sr1 /* Restore sr1 */
1630#ifdef CONFIG_SMP 1622#ifdef CONFIG_SMP
1631 CMPIB=,n 0,spc,dbit_nounlock_11 1623 cmpib,COND(=),n 0,spc,dbit_nounlock_11
1632 ldi 1,t1 1624 ldi 1,t1
1633 stw t1,0(t0) 1625 stw t1,0(t0)
1634 1626
@@ -1646,7 +1638,7 @@ dbit_trap_20:
1646 L2_ptep ptp,pte,t0,va,dbit_fault 1638 L2_ptep ptp,pte,t0,va,dbit_fault
1647 1639
1648#ifdef CONFIG_SMP 1640#ifdef CONFIG_SMP
1649 CMPIB=,n 0,spc,dbit_nolock_20 1641 cmpib,COND(=),n 0,spc,dbit_nolock_20
1650 load32 PA(pa_dbit_lock),t0 1642 load32 PA(pa_dbit_lock),t0
1651 1643
1652dbit_spin_20: 1644dbit_spin_20:
@@ -1665,7 +1657,7 @@ dbit_nolock_20:
1665 idtlbt pte,prot 1657 idtlbt pte,prot
1666 1658
1667#ifdef CONFIG_SMP 1659#ifdef CONFIG_SMP
1668 CMPIB=,n 0,spc,dbit_nounlock_20 1660 cmpib,COND(=),n 0,spc,dbit_nounlock_20
1669 ldi 1,t1 1661 ldi 1,t1
1670 stw t1,0(t0) 1662 stw t1,0(t0)
1671 1663
@@ -1994,7 +1986,7 @@ ENTRY(syscall_exit)
1994 1986
1995 /* We can't use "CMPIB<> PER_HPUX" since "im5" field is sign extended */ 1987 /* We can't use "CMPIB<> PER_HPUX" since "im5" field is sign extended */
1996 ldo -PER_HPUX(%r19), %r19 1988 ldo -PER_HPUX(%r19), %r19
1997 CMPIB<>,n 0,%r19,1f 1989 cmpib,COND(<>),n 0,%r19,1f
1998 1990
1999 /* Save other hpux returns if personality is PER_HPUX */ 1991 /* Save other hpux returns if personality is PER_HPUX */
2000 STREG %r22,TASK_PT_GR22(%r1) 1992 STREG %r22,TASK_PT_GR22(%r1)
diff --git a/arch/parisc/kernel/head.S b/arch/parisc/kernel/head.S
index ec2482dc1beb..a84e31e82876 100644
--- a/arch/parisc/kernel/head.S
+++ b/arch/parisc/kernel/head.S
@@ -32,7 +32,8 @@ ENTRY(boot_args)
32 .word 0 /* arg3 */ 32 .word 0 /* arg3 */
33END(boot_args) 33END(boot_args)
34 34
35 .section .text.head 35 __HEAD
36
36 .align 4 37 .align 4
37 .import init_thread_union,data 38 .import init_thread_union,data
38 .import fault_vector_20,code /* IVA parisc 2.0 32 bit */ 39 .import fault_vector_20,code /* IVA parisc 2.0 32 bit */
diff --git a/arch/parisc/kernel/init_task.c b/arch/parisc/kernel/init_task.c
index 26198a074d67..f5941c086551 100644
--- a/arch/parisc/kernel/init_task.c
+++ b/arch/parisc/kernel/init_task.c
@@ -35,7 +35,6 @@
35#include <asm/pgalloc.h> 35#include <asm/pgalloc.h>
36 36
37static struct fs_struct init_fs = INIT_FS; 37static struct fs_struct init_fs = INIT_FS;
38static struct files_struct init_files = INIT_FILES;
39static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 38static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
40static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 39static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
41struct mm_struct init_mm = INIT_MM(init_mm); 40struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/parisc/kernel/inventory.c b/arch/parisc/kernel/inventory.c
index 4845a6444633..bd1f7f1ff74e 100644
--- a/arch/parisc/kernel/inventory.c
+++ b/arch/parisc/kernel/inventory.c
@@ -499,7 +499,7 @@ add_system_map_addresses(struct parisc_device *dev, int num_addrs,
499 dev->addr = kmalloc(num_addrs * sizeof(unsigned long), GFP_KERNEL); 499 dev->addr = kmalloc(num_addrs * sizeof(unsigned long), GFP_KERNEL);
500 if(!dev->addr) { 500 if(!dev->addr) {
501 printk(KERN_ERR "%s %s(): memory allocation failure\n", 501 printk(KERN_ERR "%s %s(): memory allocation failure\n",
502 __FILE__, __FUNCTION__); 502 __FILE__, __func__);
503 return; 503 return;
504 } 504 }
505 505
diff --git a/arch/parisc/kernel/pacache.S b/arch/parisc/kernel/pacache.S
index 5901092e0196..09b77b2553c6 100644
--- a/arch/parisc/kernel/pacache.S
+++ b/arch/parisc/kernel/pacache.S
@@ -85,7 +85,7 @@ ENTRY(flush_tlb_all_local)
85 LDREG ITLB_OFF_COUNT(%r1), %arg2 85 LDREG ITLB_OFF_COUNT(%r1), %arg2
86 LDREG ITLB_LOOP(%r1), %arg3 86 LDREG ITLB_LOOP(%r1), %arg3
87 87
88 ADDIB= -1, %arg3, fitoneloop /* Preadjust and test */ 88 addib,COND(=) -1, %arg3, fitoneloop /* Preadjust and test */
89 movb,<,n %arg3, %r31, fitdone /* If loop < 0, skip */ 89 movb,<,n %arg3, %r31, fitdone /* If loop < 0, skip */
90 copy %arg0, %r28 /* Init base addr */ 90 copy %arg0, %r28 /* Init base addr */
91 91
@@ -95,14 +95,14 @@ fitmanyloop: /* Loop if LOOP >= 2 */
95 copy %arg2, %r29 /* Init middle loop count */ 95 copy %arg2, %r29 /* Init middle loop count */
96 96
97fitmanymiddle: /* Loop if LOOP >= 2 */ 97fitmanymiddle: /* Loop if LOOP >= 2 */
98 ADDIB> -1, %r31, fitmanymiddle /* Adjusted inner loop decr */ 98 addib,COND(>) -1, %r31, fitmanymiddle /* Adjusted inner loop decr */
99 pitlbe 0(%sr1, %r28) 99 pitlbe 0(%sr1, %r28)
100 pitlbe,m %arg1(%sr1, %r28) /* Last pitlbe and addr adjust */ 100 pitlbe,m %arg1(%sr1, %r28) /* Last pitlbe and addr adjust */
101 ADDIB> -1, %r29, fitmanymiddle /* Middle loop decr */ 101 addib,COND(>) -1, %r29, fitmanymiddle /* Middle loop decr */
102 copy %arg3, %r31 /* Re-init inner loop count */ 102 copy %arg3, %r31 /* Re-init inner loop count */
103 103
104 movb,tr %arg0, %r28, fitmanyloop /* Re-init base addr */ 104 movb,tr %arg0, %r28, fitmanyloop /* Re-init base addr */
105 ADDIB<=,n -1, %r22, fitdone /* Outer loop count decr */ 105 addib,COND(<=),n -1, %r22, fitdone /* Outer loop count decr */
106 106
107fitoneloop: /* Loop if LOOP = 1 */ 107fitoneloop: /* Loop if LOOP = 1 */
108 mtsp %r20, %sr1 108 mtsp %r20, %sr1
@@ -110,10 +110,10 @@ fitoneloop: /* Loop if LOOP = 1 */
110 copy %arg2, %r29 /* init middle loop count */ 110 copy %arg2, %r29 /* init middle loop count */
111 111
112fitonemiddle: /* Loop if LOOP = 1 */ 112fitonemiddle: /* Loop if LOOP = 1 */
113 ADDIB> -1, %r29, fitonemiddle /* Middle loop count decr */ 113 addib,COND(>) -1, %r29, fitonemiddle /* Middle loop count decr */
114 pitlbe,m %arg1(%sr1, %r28) /* pitlbe for one loop */ 114 pitlbe,m %arg1(%sr1, %r28) /* pitlbe for one loop */
115 115
116 ADDIB> -1, %r22, fitoneloop /* Outer loop count decr */ 116 addib,COND(>) -1, %r22, fitoneloop /* Outer loop count decr */
117 add %r21, %r20, %r20 /* increment space */ 117 add %r21, %r20, %r20 /* increment space */
118 118
119fitdone: 119fitdone:
@@ -128,7 +128,7 @@ fitdone:
128 LDREG DTLB_OFF_COUNT(%r1), %arg2 128 LDREG DTLB_OFF_COUNT(%r1), %arg2
129 LDREG DTLB_LOOP(%r1), %arg3 129 LDREG DTLB_LOOP(%r1), %arg3
130 130
131 ADDIB= -1, %arg3, fdtoneloop /* Preadjust and test */ 131 addib,COND(=) -1, %arg3, fdtoneloop /* Preadjust and test */
132 movb,<,n %arg3, %r31, fdtdone /* If loop < 0, skip */ 132 movb,<,n %arg3, %r31, fdtdone /* If loop < 0, skip */
133 copy %arg0, %r28 /* Init base addr */ 133 copy %arg0, %r28 /* Init base addr */
134 134
@@ -138,14 +138,14 @@ fdtmanyloop: /* Loop if LOOP >= 2 */
138 copy %arg2, %r29 /* Init middle loop count */ 138 copy %arg2, %r29 /* Init middle loop count */
139 139
140fdtmanymiddle: /* Loop if LOOP >= 2 */ 140fdtmanymiddle: /* Loop if LOOP >= 2 */
141 ADDIB> -1, %r31, fdtmanymiddle /* Adjusted inner loop decr */ 141 addib,COND(>) -1, %r31, fdtmanymiddle /* Adjusted inner loop decr */
142 pdtlbe 0(%sr1, %r28) 142 pdtlbe 0(%sr1, %r28)
143 pdtlbe,m %arg1(%sr1, %r28) /* Last pdtlbe and addr adjust */ 143 pdtlbe,m %arg1(%sr1, %r28) /* Last pdtlbe and addr adjust */
144 ADDIB> -1, %r29, fdtmanymiddle /* Middle loop decr */ 144 addib,COND(>) -1, %r29, fdtmanymiddle /* Middle loop decr */
145 copy %arg3, %r31 /* Re-init inner loop count */ 145 copy %arg3, %r31 /* Re-init inner loop count */
146 146
147 movb,tr %arg0, %r28, fdtmanyloop /* Re-init base addr */ 147 movb,tr %arg0, %r28, fdtmanyloop /* Re-init base addr */
148 ADDIB<=,n -1, %r22,fdtdone /* Outer loop count decr */ 148 addib,COND(<=),n -1, %r22,fdtdone /* Outer loop count decr */
149 149
150fdtoneloop: /* Loop if LOOP = 1 */ 150fdtoneloop: /* Loop if LOOP = 1 */
151 mtsp %r20, %sr1 151 mtsp %r20, %sr1
@@ -153,10 +153,10 @@ fdtoneloop: /* Loop if LOOP = 1 */
153 copy %arg2, %r29 /* init middle loop count */ 153 copy %arg2, %r29 /* init middle loop count */
154 154
155fdtonemiddle: /* Loop if LOOP = 1 */ 155fdtonemiddle: /* Loop if LOOP = 1 */
156 ADDIB> -1, %r29, fdtonemiddle /* Middle loop count decr */ 156 addib,COND(>) -1, %r29, fdtonemiddle /* Middle loop count decr */
157 pdtlbe,m %arg1(%sr1, %r28) /* pdtlbe for one loop */ 157 pdtlbe,m %arg1(%sr1, %r28) /* pdtlbe for one loop */
158 158
159 ADDIB> -1, %r22, fdtoneloop /* Outer loop count decr */ 159 addib,COND(>) -1, %r22, fdtoneloop /* Outer loop count decr */
160 add %r21, %r20, %r20 /* increment space */ 160 add %r21, %r20, %r20 /* increment space */
161 161
162 162
@@ -209,18 +209,18 @@ ENTRY(flush_instruction_cache_local)
209 LDREG ICACHE_COUNT(%r1), %arg2 209 LDREG ICACHE_COUNT(%r1), %arg2
210 LDREG ICACHE_LOOP(%r1), %arg3 210 LDREG ICACHE_LOOP(%r1), %arg3
211 rsm PSW_SM_I, %r22 /* No mmgt ops during loop*/ 211 rsm PSW_SM_I, %r22 /* No mmgt ops during loop*/
212 ADDIB= -1, %arg3, fioneloop /* Preadjust and test */ 212 addib,COND(=) -1, %arg3, fioneloop /* Preadjust and test */
213 movb,<,n %arg3, %r31, fisync /* If loop < 0, do sync */ 213 movb,<,n %arg3, %r31, fisync /* If loop < 0, do sync */
214 214
215fimanyloop: /* Loop if LOOP >= 2 */ 215fimanyloop: /* Loop if LOOP >= 2 */
216 ADDIB> -1, %r31, fimanyloop /* Adjusted inner loop decr */ 216 addib,COND(>) -1, %r31, fimanyloop /* Adjusted inner loop decr */
217 fice %r0(%sr1, %arg0) 217 fice %r0(%sr1, %arg0)
218 fice,m %arg1(%sr1, %arg0) /* Last fice and addr adjust */ 218 fice,m %arg1(%sr1, %arg0) /* Last fice and addr adjust */
219 movb,tr %arg3, %r31, fimanyloop /* Re-init inner loop count */ 219 movb,tr %arg3, %r31, fimanyloop /* Re-init inner loop count */
220 ADDIB<=,n -1, %arg2, fisync /* Outer loop decr */ 220 addib,COND(<=),n -1, %arg2, fisync /* Outer loop decr */
221 221
222fioneloop: /* Loop if LOOP = 1 */ 222fioneloop: /* Loop if LOOP = 1 */
223 ADDIB> -1, %arg2, fioneloop /* Outer loop count decr */ 223 addib,COND(>) -1, %arg2, fioneloop /* Outer loop count decr */
224 fice,m %arg1(%sr1, %arg0) /* Fice for one loop */ 224 fice,m %arg1(%sr1, %arg0) /* Fice for one loop */
225 225
226fisync: 226fisync:
@@ -250,18 +250,18 @@ ENTRY(flush_data_cache_local)
250 LDREG DCACHE_COUNT(%r1), %arg2 250 LDREG DCACHE_COUNT(%r1), %arg2
251 LDREG DCACHE_LOOP(%r1), %arg3 251 LDREG DCACHE_LOOP(%r1), %arg3
252 rsm PSW_SM_I, %r22 252 rsm PSW_SM_I, %r22
253 ADDIB= -1, %arg3, fdoneloop /* Preadjust and test */ 253 addib,COND(=) -1, %arg3, fdoneloop /* Preadjust and test */
254 movb,<,n %arg3, %r31, fdsync /* If loop < 0, do sync */ 254 movb,<,n %arg3, %r31, fdsync /* If loop < 0, do sync */
255 255
256fdmanyloop: /* Loop if LOOP >= 2 */ 256fdmanyloop: /* Loop if LOOP >= 2 */
257 ADDIB> -1, %r31, fdmanyloop /* Adjusted inner loop decr */ 257 addib,COND(>) -1, %r31, fdmanyloop /* Adjusted inner loop decr */
258 fdce %r0(%sr1, %arg0) 258 fdce %r0(%sr1, %arg0)
259 fdce,m %arg1(%sr1, %arg0) /* Last fdce and addr adjust */ 259 fdce,m %arg1(%sr1, %arg0) /* Last fdce and addr adjust */
260 movb,tr %arg3, %r31, fdmanyloop /* Re-init inner loop count */ 260 movb,tr %arg3, %r31, fdmanyloop /* Re-init inner loop count */
261 ADDIB<=,n -1, %arg2, fdsync /* Outer loop decr */ 261 addib,COND(<=),n -1, %arg2, fdsync /* Outer loop decr */
262 262
263fdoneloop: /* Loop if LOOP = 1 */ 263fdoneloop: /* Loop if LOOP = 1 */
264 ADDIB> -1, %arg2, fdoneloop /* Outer loop count decr */ 264 addib,COND(>) -1, %arg2, fdoneloop /* Outer loop count decr */
265 fdce,m %arg1(%sr1, %arg0) /* Fdce for one loop */ 265 fdce,m %arg1(%sr1, %arg0) /* Fdce for one loop */
266 266
267fdsync: 267fdsync:
@@ -342,7 +342,7 @@ ENTRY(copy_user_page_asm)
342 * non-taken backward branch. Note that .+4 is a backwards branch. 342 * non-taken backward branch. Note that .+4 is a backwards branch.
343 * The ldd should only get executed if the branch is taken. 343 * The ldd should only get executed if the branch is taken.
344 */ 344 */
345 ADDIB>,n -1, %r1, 1b /* bundle 10 */ 345 addib,COND(>),n -1, %r1, 1b /* bundle 10 */
346 ldd 0(%r25), %r19 /* start next loads */ 346 ldd 0(%r25), %r19 /* start next loads */
347 347
348#else 348#else
@@ -391,7 +391,7 @@ ENTRY(copy_user_page_asm)
391 stw %r21, 56(%r26) 391 stw %r21, 56(%r26)
392 stw %r22, 60(%r26) 392 stw %r22, 60(%r26)
393 ldo 64(%r26), %r26 393 ldo 64(%r26), %r26
394 ADDIB>,n -1, %r1, 1b 394 addib,COND(>),n -1, %r1, 1b
395 ldw 0(%r25), %r19 395 ldw 0(%r25), %r19
396#endif 396#endif
397 bv %r0(%r2) 397 bv %r0(%r2)
@@ -515,7 +515,7 @@ ENTRY(copy_user_page_asm)
515 stw %r21, 56(%r28) 515 stw %r21, 56(%r28)
516 stw %r22, 60(%r28) 516 stw %r22, 60(%r28)
517 ldo 64(%r28), %r28 517 ldo 64(%r28), %r28
518 ADDIB> -1, %r1,1b 518 addib,COND(>) -1, %r1,1b
519 ldo 64(%r29), %r29 519 ldo 64(%r29), %r29
520 520
521 bv %r0(%r2) 521 bv %r0(%r2)
@@ -574,7 +574,7 @@ ENTRY(__clear_user_page_asm)
574 std %r0, 104(%r28) 574 std %r0, 104(%r28)
575 std %r0, 112(%r28) 575 std %r0, 112(%r28)
576 std %r0, 120(%r28) 576 std %r0, 120(%r28)
577 ADDIB> -1, %r1, 1b 577 addib,COND(>) -1, %r1, 1b
578 ldo 128(%r28), %r28 578 ldo 128(%r28), %r28
579 579
580#else /* ! CONFIG_64BIT */ 580#else /* ! CONFIG_64BIT */
@@ -597,7 +597,7 @@ ENTRY(__clear_user_page_asm)
597 stw %r0, 52(%r28) 597 stw %r0, 52(%r28)
598 stw %r0, 56(%r28) 598 stw %r0, 56(%r28)
599 stw %r0, 60(%r28) 599 stw %r0, 60(%r28)
600 ADDIB> -1, %r1, 1b 600 addib,COND(>) -1, %r1, 1b
601 ldo 64(%r28), %r28 601 ldo 64(%r28), %r28
602#endif /* CONFIG_64BIT */ 602#endif /* CONFIG_64BIT */
603 603
@@ -640,7 +640,7 @@ ENTRY(flush_kernel_dcache_page_asm)
640 fdc,m %r23(%r26) 640 fdc,m %r23(%r26)
641 fdc,m %r23(%r26) 641 fdc,m %r23(%r26)
642 fdc,m %r23(%r26) 642 fdc,m %r23(%r26)
643 CMPB<< %r26, %r25,1b 643 cmpb,COND(<<) %r26, %r25,1b
644 fdc,m %r23(%r26) 644 fdc,m %r23(%r26)
645 645
646 sync 646 sync
@@ -683,7 +683,7 @@ ENTRY(flush_user_dcache_page)
683 fdc,m %r23(%sr3, %r26) 683 fdc,m %r23(%sr3, %r26)
684 fdc,m %r23(%sr3, %r26) 684 fdc,m %r23(%sr3, %r26)
685 fdc,m %r23(%sr3, %r26) 685 fdc,m %r23(%sr3, %r26)
686 CMPB<< %r26, %r25,1b 686 cmpb,COND(<<) %r26, %r25,1b
687 fdc,m %r23(%sr3, %r26) 687 fdc,m %r23(%sr3, %r26)
688 688
689 sync 689 sync
@@ -726,7 +726,7 @@ ENTRY(flush_user_icache_page)
726 fic,m %r23(%sr3, %r26) 726 fic,m %r23(%sr3, %r26)
727 fic,m %r23(%sr3, %r26) 727 fic,m %r23(%sr3, %r26)
728 fic,m %r23(%sr3, %r26) 728 fic,m %r23(%sr3, %r26)
729 CMPB<< %r26, %r25,1b 729 cmpb,COND(<<) %r26, %r25,1b
730 fic,m %r23(%sr3, %r26) 730 fic,m %r23(%sr3, %r26)
731 731
732 sync 732 sync
@@ -769,7 +769,7 @@ ENTRY(purge_kernel_dcache_page)
769 pdc,m %r23(%r26) 769 pdc,m %r23(%r26)
770 pdc,m %r23(%r26) 770 pdc,m %r23(%r26)
771 pdc,m %r23(%r26) 771 pdc,m %r23(%r26)
772 CMPB<< %r26, %r25, 1b 772 cmpb,COND(<<) %r26, %r25, 1b
773 pdc,m %r23(%r26) 773 pdc,m %r23(%r26)
774 774
775 sync 775 sync
@@ -833,7 +833,7 @@ ENTRY(flush_alias_page)
833 fdc,m %r23(%r28) 833 fdc,m %r23(%r28)
834 fdc,m %r23(%r28) 834 fdc,m %r23(%r28)
835 fdc,m %r23(%r28) 835 fdc,m %r23(%r28)
836 CMPB<< %r28, %r29, 1b 836 cmpb,COND(<<) %r28, %r29, 1b
837 fdc,m %r23(%r28) 837 fdc,m %r23(%r28)
838 838
839 sync 839 sync
@@ -856,7 +856,7 @@ flush_user_dcache_range_asm:
856 ldo -1(%r23), %r21 856 ldo -1(%r23), %r21
857 ANDCM %r26, %r21, %r26 857 ANDCM %r26, %r21, %r26
858 858
8591: CMPB<<,n %r26, %r25, 1b 8591: cmpb,COND(<<),n %r26, %r25, 1b
860 fdc,m %r23(%sr3, %r26) 860 fdc,m %r23(%sr3, %r26)
861 861
862 sync 862 sync
@@ -877,7 +877,7 @@ ENTRY(flush_kernel_dcache_range_asm)
877 ldo -1(%r23), %r21 877 ldo -1(%r23), %r21
878 ANDCM %r26, %r21, %r26 878 ANDCM %r26, %r21, %r26
879 879
8801: CMPB<<,n %r26, %r25,1b 8801: cmpb,COND(<<),n %r26, %r25,1b
881 fdc,m %r23(%r26) 881 fdc,m %r23(%r26)
882 882
883 sync 883 sync
@@ -899,7 +899,7 @@ ENTRY(flush_user_icache_range_asm)
899 ldo -1(%r23), %r21 899 ldo -1(%r23), %r21
900 ANDCM %r26, %r21, %r26 900 ANDCM %r26, %r21, %r26
901 901
9021: CMPB<<,n %r26, %r25,1b 9021: cmpb,COND(<<),n %r26, %r25,1b
903 fic,m %r23(%sr3, %r26) 903 fic,m %r23(%sr3, %r26)
904 904
905 sync 905 sync
@@ -942,7 +942,7 @@ ENTRY(flush_kernel_icache_page)
942 fic,m %r23(%sr4, %r26) 942 fic,m %r23(%sr4, %r26)
943 fic,m %r23(%sr4, %r26) 943 fic,m %r23(%sr4, %r26)
944 fic,m %r23(%sr4, %r26) 944 fic,m %r23(%sr4, %r26)
945 CMPB<< %r26, %r25, 1b 945 cmpb,COND(<<) %r26, %r25, 1b
946 fic,m %r23(%sr4, %r26) 946 fic,m %r23(%sr4, %r26)
947 947
948 sync 948 sync
@@ -963,7 +963,7 @@ ENTRY(flush_kernel_icache_range_asm)
963 ldo -1(%r23), %r21 963 ldo -1(%r23), %r21
964 ANDCM %r26, %r21, %r26 964 ANDCM %r26, %r21, %r26
965 965
9661: CMPB<<,n %r26, %r25, 1b 9661: cmpb,COND(<<),n %r26, %r25, 1b
967 fic,m %r23(%sr4, %r26) 967 fic,m %r23(%sr4, %r26)
968 968
969 sync 969 sync
diff --git a/arch/parisc/kernel/parisc_ksyms.c b/arch/parisc/kernel/parisc_ksyms.c
index 5b7fc4aa044d..0eecfbbc59cd 100644
--- a/arch/parisc/kernel/parisc_ksyms.c
+++ b/arch/parisc/kernel/parisc_ksyms.c
@@ -152,3 +152,6 @@ EXPORT_SYMBOL($$dyncall);
152EXPORT_SYMBOL(node_data); 152EXPORT_SYMBOL(node_data);
153EXPORT_SYMBOL(pfnnid_map); 153EXPORT_SYMBOL(pfnnid_map);
154#endif 154#endif
155
156/* from pacache.S -- needed for copy_page */
157EXPORT_SYMBOL(copy_user_page_asm);
diff --git a/arch/parisc/kernel/perf_asm.S b/arch/parisc/kernel/perf_asm.S
index 43874ca3ed67..fa6ea99bb324 100644
--- a/arch/parisc/kernel/perf_asm.S
+++ b/arch/parisc/kernel/perf_asm.S
@@ -20,6 +20,8 @@
20 */ 20 */
21 21
22#include <asm/assembly.h> 22#include <asm/assembly.h>
23
24#include <linux/init.h>
23#include <linux/linkage.h> 25#include <linux/linkage.h>
24 26
25#ifdef CONFIG_64BIT 27#ifdef CONFIG_64BIT
diff --git a/arch/parisc/kernel/signal32.c b/arch/parisc/kernel/signal32.c
index db94affe5c71..fb59852006de 100644
--- a/arch/parisc/kernel/signal32.c
+++ b/arch/parisc/kernel/signal32.c
@@ -289,7 +289,7 @@ setup_sigcontext32(struct compat_sigcontext __user *sc, struct compat_regfile __
289 &sc->sc_iaoq[0], compat_reg); 289 &sc->sc_iaoq[0], compat_reg);
290 290
291 /* Store upper half */ 291 /* Store upper half */
292 compat_reg = (compat_uint_t)(regs->gr[32] >> 32); 292 compat_reg = (compat_uint_t)(regs->gr[31] >> 32);
293 err |= __put_user(compat_reg, &rf->rf_iaoq[0]); 293 err |= __put_user(compat_reg, &rf->rf_iaoq[0]);
294 DBG(2,"setup_sigcontext32: upper half iaoq[0] = %#x\n", compat_reg); 294 DBG(2,"setup_sigcontext32: upper half iaoq[0] = %#x\n", compat_reg);
295 295
@@ -299,7 +299,7 @@ setup_sigcontext32(struct compat_sigcontext __user *sc, struct compat_regfile __
299 DBG(2,"setup_sigcontext32: sc->sc_iaoq[1] = %p <= %#x\n", 299 DBG(2,"setup_sigcontext32: sc->sc_iaoq[1] = %p <= %#x\n",
300 &sc->sc_iaoq[1], compat_reg); 300 &sc->sc_iaoq[1], compat_reg);
301 /* Store upper half */ 301 /* Store upper half */
302 compat_reg = (compat_uint_t)((regs->gr[32]+4) >> 32); 302 compat_reg = (compat_uint_t)((regs->gr[31]+4) >> 32);
303 err |= __put_user(compat_reg, &rf->rf_iaoq[1]); 303 err |= __put_user(compat_reg, &rf->rf_iaoq[1]);
304 DBG(2,"setup_sigcontext32: upper half iaoq[1] = %#x\n", compat_reg); 304 DBG(2,"setup_sigcontext32: upper half iaoq[1] = %#x\n", compat_reg);
305 305
diff --git a/arch/parisc/kernel/traps.c b/arch/parisc/kernel/traps.c
index 9dc6dc42f9cf..675f1d098f05 100644
--- a/arch/parisc/kernel/traps.c
+++ b/arch/parisc/kernel/traps.c
@@ -275,7 +275,7 @@ KERN_CRIT " || ||\n");
275 275
276 /* Wot's wrong wif bein' racy? */ 276 /* Wot's wrong wif bein' racy? */
277 if (current->thread.flags & PARISC_KERNEL_DEATH) { 277 if (current->thread.flags & PARISC_KERNEL_DEATH) {
278 printk(KERN_CRIT "%s() recursion detected.\n", __FUNCTION__); 278 printk(KERN_CRIT "%s() recursion detected.\n", __func__);
279 local_irq_enable(); 279 local_irq_enable();
280 while (1); 280 while (1);
281 } 281 }
diff --git a/arch/parisc/kernel/unaligned.c b/arch/parisc/kernel/unaligned.c
index aebf3c168871..e6f4b7a4b7e3 100644
--- a/arch/parisc/kernel/unaligned.c
+++ b/arch/parisc/kernel/unaligned.c
@@ -30,7 +30,7 @@
30/* #define DEBUG_UNALIGNED 1 */ 30/* #define DEBUG_UNALIGNED 1 */
31 31
32#ifdef DEBUG_UNALIGNED 32#ifdef DEBUG_UNALIGNED
33#define DPRINTF(fmt, args...) do { printk(KERN_DEBUG "%s:%d:%s ", __FILE__, __LINE__, __FUNCTION__ ); printk(KERN_DEBUG fmt, ##args ); } while (0) 33#define DPRINTF(fmt, args...) do { printk(KERN_DEBUG "%s:%d:%s ", __FILE__, __LINE__, __func__ ); printk(KERN_DEBUG fmt, ##args ); } while (0)
34#else 34#else
35#define DPRINTF(fmt, args...) 35#define DPRINTF(fmt, args...)
36#endif 36#endif
@@ -460,7 +460,8 @@ void handle_unaligned(struct pt_regs *regs)
460 goto force_sigbus; 460 goto force_sigbus;
461 } 461 }
462 462
463 if (unaligned_count > 5 && jiffies - last_time > 5*HZ) { 463 if (unaligned_count > 5 &&
464 time_after(jiffies, last_time + 5 * HZ)) {
464 unaligned_count = 0; 465 unaligned_count = 0;
465 last_time = jiffies; 466 last_time = jiffies;
466 } 467 }
diff --git a/arch/parisc/kernel/vmlinux.lds.S b/arch/parisc/kernel/vmlinux.lds.S
index 50b4a3a25d0a..2e516b871752 100644
--- a/arch/parisc/kernel/vmlinux.lds.S
+++ b/arch/parisc/kernel/vmlinux.lds.S
@@ -50,6 +50,7 @@ SECTIONS
50 50
51 _text = .; /* Text and read-only data */ 51 _text = .; /* Text and read-only data */
52 .text ALIGN(16) : { 52 .text ALIGN(16) : {
53 HEAD_TEXT
53 TEXT_TEXT 54 TEXT_TEXT
54 SCHED_TEXT 55 SCHED_TEXT
55 LOCK_TEXT 56 LOCK_TEXT
diff --git a/arch/parisc/lib/memcpy.c b/arch/parisc/lib/memcpy.c
index d22042d33100..2d68431fc22e 100644
--- a/arch/parisc/lib/memcpy.c
+++ b/arch/parisc/lib/memcpy.c
@@ -91,7 +91,7 @@ DECLARE_PER_CPU(struct exception_data, exception_data);
91#define THRESHOLD 16 91#define THRESHOLD 16
92 92
93#ifdef DEBUG_MEMCPY 93#ifdef DEBUG_MEMCPY
94#define DPRINTF(fmt, args...) do { printk(KERN_DEBUG "%s:%d:%s ", __FILE__, __LINE__, __FUNCTION__ ); printk(KERN_DEBUG fmt, ##args ); } while (0) 94#define DPRINTF(fmt, args...) do { printk(KERN_DEBUG "%s:%d:%s ", __FILE__, __LINE__, __func__ ); printk(KERN_DEBUG fmt, ##args ); } while (0)
95#else 95#else
96#define DPRINTF(fmt, args...) 96#define DPRINTF(fmt, args...)
97#endif 97#endif
diff --git a/arch/parisc/mm/init.c b/arch/parisc/mm/init.c
index 1f012843150f..ce0da689a89d 100644
--- a/arch/parisc/mm/init.c
+++ b/arch/parisc/mm/init.c
@@ -547,6 +547,7 @@ void __init mem_init(void)
547} 547}
548 548
549unsigned long *empty_zero_page __read_mostly; 549unsigned long *empty_zero_page __read_mostly;
550EXPORT_SYMBOL(empty_zero_page);
550 551
551void show_mem(void) 552void show_mem(void)
552{ 553{
@@ -555,8 +556,6 @@ void show_mem(void)
555 556
556 printk(KERN_INFO "Mem-info:\n"); 557 printk(KERN_INFO "Mem-info:\n");
557 show_free_areas(); 558 show_free_areas();
558 printk(KERN_INFO "Free swap: %6ldkB\n",
559 nr_swap_pages<<(PAGE_SHIFT-10));
560#ifndef CONFIG_DISCONTIGMEM 559#ifndef CONFIG_DISCONTIGMEM
561 i = max_mapnr; 560 i = max_mapnr;
562 while (i-- > 0) { 561 while (i-- > 0) {
@@ -606,7 +605,7 @@ void show_mem(void)
606 int i, j; 605 int i, j;
607 606
608 for (i = 0; i < npmem_ranges; i++) { 607 for (i = 0; i < npmem_ranges; i++) {
609 zl = node_zonelist(i); 608 zl = node_zonelist(i, 0);
610 for (j = 0; j < MAX_NR_ZONES; j++) { 609 for (j = 0; j < MAX_NR_ZONES; j++) {
611 struct zoneref *z; 610 struct zoneref *z;
612 struct zone *zone; 611 struct zone *zone;
diff --git a/arch/powerpc/boot/.gitignore b/arch/powerpc/boot/.gitignore
index 2347294ff35b..2f50acd11a60 100644
--- a/arch/powerpc/boot/.gitignore
+++ b/arch/powerpc/boot/.gitignore
@@ -20,21 +20,19 @@ kernel-vmlinux.strip.gz
20mktree 20mktree
21uImage 21uImage
22cuImage.* 22cuImage.*
23dtbImage.*
23treeImage.* 24treeImage.*
24zImage 25zImage
26zImage.initrd
25zImage.bin.* 27zImage.bin.*
26zImage.chrp 28zImage.chrp
27zImage.coff 29zImage.coff
28zImage.coff.lds 30zImage.holly
29zImage.ep*
30zImage.iseries 31zImage.iseries
31zImage.*lds 32zImage.*lds
32zImage.miboot 33zImage.miboot
33zImage.pmac 34zImage.pmac
34zImage.pseries 35zImage.pseries
35zImage.redboot*
36zImage.sandpoint
37zImage.vmode
38zconf.h 36zconf.h
39zlib.h 37zlib.h
40zutil.h 38zutil.h
diff --git a/arch/powerpc/boot/4xx.c b/arch/powerpc/boot/4xx.c
index 758edf1c5815..5c878436f348 100644
--- a/arch/powerpc/boot/4xx.c
+++ b/arch/powerpc/boot/4xx.c
@@ -21,6 +21,25 @@
21#include "reg.h" 21#include "reg.h"
22#include "dcr.h" 22#include "dcr.h"
23 23
24static unsigned long chip_11_errata(unsigned long memsize)
25{
26 unsigned long pvr;
27
28 pvr = mfpvr();
29
30 switch (pvr & 0xf0000ff0) {
31 case 0x40000850:
32 case 0x400008d0:
33 case 0x200008d0:
34 memsize -= 4096;
35 break;
36 default:
37 break;
38 }
39
40 return memsize;
41}
42
24/* Read the 4xx SDRAM controller to get size of system memory. */ 43/* Read the 4xx SDRAM controller to get size of system memory. */
25void ibm4xx_sdram_fixup_memsize(void) 44void ibm4xx_sdram_fixup_memsize(void)
26{ 45{
@@ -34,6 +53,7 @@ void ibm4xx_sdram_fixup_memsize(void)
34 memsize += SDRAM_CONFIG_BANK_SIZE(bank_config); 53 memsize += SDRAM_CONFIG_BANK_SIZE(bank_config);
35 } 54 }
36 55
56 memsize = chip_11_errata(memsize);
37 dt_fixup_memory(0, memsize); 57 dt_fixup_memory(0, memsize);
38} 58}
39 59
@@ -199,6 +219,7 @@ void ibm4xx_denali_fixup_memsize(void)
199 bank = 4; /* 4 banks */ 219 bank = 4; /* 4 banks */
200 220
201 memsize = cs * (1 << (col+row)) * bank * dpath; 221 memsize = cs * (1 << (col+row)) * bank * dpath;
222 memsize = chip_11_errata(memsize);
202 dt_fixup_memory(0, memsize); 223 dt_fixup_memory(0, memsize);
203} 224}
204 225
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
index 7822d25c9d31..d53b84e761a9 100644
--- a/arch/powerpc/boot/Makefile
+++ b/arch/powerpc/boot/Makefile
@@ -99,7 +99,7 @@ $(obj)/zImage.lds $(obj)/zImage.coff.lds $(obj)/zImage.ps3.lds: $(obj)/%: $(srct
99 @cp $< $@ 99 @cp $< $@
100 100
101clean-files := $(zlib) $(zlibheader) $(zliblinuxheader) \ 101clean-files := $(zlib) $(zlibheader) $(zliblinuxheader) \
102 empty.c zImage zImage.coff.lds zImage.ps3.lds zImage.lds 102 empty.c zImage.coff.lds zImage.ps3.lds zImage.lds
103 103
104quiet_cmd_bootcc = BOOTCC $@ 104quiet_cmd_bootcc = BOOTCC $@
105 cmd_bootcc = $(CROSS32CC) -Wp,-MD,$(depfile) $(BOOTCFLAGS) -c -o $@ $< 105 cmd_bootcc = $(CROSS32CC) -Wp,-MD,$(depfile) $(BOOTCFLAGS) -c -o $@ $<
@@ -221,8 +221,8 @@ image-$(CONFIG_WARP) += cuImage.warp
221image-$(CONFIG_YOSEMITE) += cuImage.yosemite 221image-$(CONFIG_YOSEMITE) += cuImage.yosemite
222 222
223# Board ports in arch/powerpc/platform/8xx/Kconfig 223# Board ports in arch/powerpc/platform/8xx/Kconfig
224image-$(CONFIG_PPC_MPC86XADS) += cuImage.mpc866ads 224image-$(CONFIG_MPC86XADS) += cuImage.mpc866ads
225image-$(CONFIG_PPC_MPC885ADS) += cuImage.mpc885ads 225image-$(CONFIG_MPC885ADS) += cuImage.mpc885ads
226image-$(CONFIG_PPC_EP88XC) += dtbImage.ep88xc 226image-$(CONFIG_PPC_EP88XC) += dtbImage.ep88xc
227image-$(CONFIG_PPC_ADDER875) += cuImage.adder875-uboot \ 227image-$(CONFIG_PPC_ADDER875) += cuImage.adder875-uboot \
228 dtbImage.adder875-redboot 228 dtbImage.adder875-redboot
@@ -339,7 +339,9 @@ install: $(CONFIGURE) $(addprefix $(obj)/, $(image-y))
339 sh -x $(srctree)/$(src)/install.sh "$(KERNELRELEASE)" vmlinux System.map "$(INSTALL_PATH)" $< 339 sh -x $(srctree)/$(src)/install.sh "$(KERNELRELEASE)" vmlinux System.map "$(INSTALL_PATH)" $<
340 340
341# anything not in $(targets) 341# anything not in $(targets)
342clean-files += $(image-) $(initrd-) zImage zImage.initrd cuImage.* treeImage.* \ 342clean-files += $(image-) $(initrd-) cuImage.* dtbImage.* treeImage.* \
343 zImage zImage.initrd zImage.chrp zImage.coff zImage.holly \
344 zImage.iseries zImage.miboot zImage.pmac zImage.pseries \
343 otheros.bld *.dtb 345 otheros.bld *.dtb
344 346
345# clean up files cached by wrapper 347# clean up files cached by wrapper
diff --git a/arch/powerpc/boot/dts/mpc8377_mds.dts b/arch/powerpc/boot/dts/mpc8377_mds.dts
index eac8e1b59496..fea592574004 100644
--- a/arch/powerpc/boot/dts/mpc8377_mds.dts
+++ b/arch/powerpc/boot/dts/mpc8377_mds.dts
@@ -268,6 +268,41 @@
268 interrupt-parent = <&ipic>; 268 interrupt-parent = <&ipic>;
269 }; 269 };
270 270
271 dma@82a8 {
272 #address-cells = <1>;
273 #size-cells = <1>;
274 compatible = "fsl,mpc8377-dma", "fsl,elo-dma";
275 reg = <0x82a8 4>;
276 ranges = <0 0x8100 0x1a8>;
277 interrupt-parent = <&ipic>;
278 interrupts = <0x47 8>;
279 cell-index = <0>;
280 dma-channel@0 {
281 compatible = "fsl,mpc8377-dma-channel", "fsl,elo-dma-channel";
282 reg = <0 0x80>;
283 interrupt-parent = <&ipic>;
284 interrupts = <0x47 8>;
285 };
286 dma-channel@80 {
287 compatible = "fsl,mpc8377-dma-channel", "fsl,elo-dma-channel";
288 reg = <0x80 0x80>;
289 interrupt-parent = <&ipic>;
290 interrupts = <0x47 8>;
291 };
292 dma-channel@100 {
293 compatible = "fsl,mpc8377-dma-channel", "fsl,elo-dma-channel";
294 reg = <0x100 0x80>;
295 interrupt-parent = <&ipic>;
296 interrupts = <0x47 8>;
297 };
298 dma-channel@180 {
299 compatible = "fsl,mpc8377-dma-channel", "fsl,elo-dma-channel";
300 reg = <0x180 0x28>;
301 interrupt-parent = <&ipic>;
302 interrupts = <0x47 8>;
303 };
304 };
305
271 /* IPIC 306 /* IPIC
272 * interrupts cell = <intr #, sense> 307 * interrupts cell = <intr #, sense>
273 * sense values match linux IORESOURCE_IRQ_* defines: 308 * sense values match linux IORESOURCE_IRQ_* defines:
diff --git a/arch/powerpc/boot/dts/mpc8610_hpcd.dts b/arch/powerpc/boot/dts/mpc8610_hpcd.dts
index bba234eb14a9..fa9b6bbeb5af 100644
--- a/arch/powerpc/boot/dts/mpc8610_hpcd.dts
+++ b/arch/powerpc/boot/dts/mpc8610_hpcd.dts
@@ -46,9 +46,63 @@
46 reg = <0x00000000 0x20000000>; // 512M at 0x0 46 reg = <0x00000000 0x20000000>; // 512M at 0x0
47 }; 47 };
48 48
49 board-control@e8000000 { 49 localbus@e0005000 {
50 compatible = "fsl,fpga-pixis"; 50 #address-cells = <2>;
51 reg = <0xe8000000 32>; // pixis at 0xe8000000 51 #size-cells = <1>;
52 compatible = "fsl,mpc8610-elbc", "fsl,elbc", "simple-bus";
53 reg = <0xe0005000 0x1000>;
54 interrupts = <19 2>;
55 interrupt-parent = <&mpic>;
56 ranges = <0 0 0xf8000000 0x08000000
57 1 0 0xf0000000 0x08000000
58 2 0 0xe8400000 0x00008000
59 4 0 0xe8440000 0x00008000
60 5 0 0xe8480000 0x00008000
61 6 0 0xe84c0000 0x00008000
62 3 0 0xe8000000 0x00000020>;
63
64 flash@0,0 {
65 compatible = "cfi-flash";
66 reg = <0 0 0x8000000>;
67 bank-width = <2>;
68 device-width = <1>;
69 };
70
71 flash@1,0 {
72 compatible = "cfi-flash";
73 reg = <1 0 0x8000000>;
74 bank-width = <2>;
75 device-width = <1>;
76 };
77
78 flash@2,0 {
79 compatible = "fsl,mpc8610-fcm-nand",
80 "fsl,elbc-fcm-nand";
81 reg = <2 0 0x8000>;
82 };
83
84 flash@4,0 {
85 compatible = "fsl,mpc8610-fcm-nand",
86 "fsl,elbc-fcm-nand";
87 reg = <4 0 0x8000>;
88 };
89
90 flash@5,0 {
91 compatible = "fsl,mpc8610-fcm-nand",
92 "fsl,elbc-fcm-nand";
93 reg = <5 0 0x8000>;
94 };
95
96 flash@6,0 {
97 compatible = "fsl,mpc8610-fcm-nand",
98 "fsl,elbc-fcm-nand";
99 reg = <6 0 0x8000>;
100 };
101
102 board-control@3,0 {
103 compatible = "fsl,fpga-pixis";
104 reg = <3 0 0x20>;
105 };
52 }; 106 };
53 107
54 soc@e0000000 { 108 soc@e0000000 {
@@ -197,14 +251,14 @@
197 dma@c300 { 251 dma@c300 {
198 #address-cells = <1>; 252 #address-cells = <1>;
199 #size-cells = <1>; 253 #size-cells = <1>;
200 compatible = "fsl,mpc8610-dma", "fsl,mpc8540-dma"; 254 compatible = "fsl,mpc8610-dma", "fsl,eloplus-dma";
201 cell-index = <1>; 255 cell-index = <1>;
202 reg = <0xc300 0x4>; /* DMA general status register */ 256 reg = <0xc300 0x4>; /* DMA general status register */
203 ranges = <0x0 0xc100 0x200>; 257 ranges = <0x0 0xc100 0x200>;
204 258
205 dma-channel@0 { 259 dma-channel@0 {
206 compatible = "fsl,mpc8610-dma-channel", 260 compatible = "fsl,mpc8610-dma-channel",
207 "fsl,mpc8540-dma-channel"; 261 "fsl,eloplus-dma-channel";
208 cell-index = <0>; 262 cell-index = <0>;
209 reg = <0x0 0x80>; 263 reg = <0x0 0x80>;
210 interrupt-parent = <&mpic>; 264 interrupt-parent = <&mpic>;
@@ -212,7 +266,7 @@
212 }; 266 };
213 dma-channel@1 { 267 dma-channel@1 {
214 compatible = "fsl,mpc8610-dma-channel", 268 compatible = "fsl,mpc8610-dma-channel",
215 "fsl,mpc8540-dma-channel"; 269 "fsl,eloplus-dma-channel";
216 cell-index = <1>; 270 cell-index = <1>;
217 reg = <0x80 0x80>; 271 reg = <0x80 0x80>;
218 interrupt-parent = <&mpic>; 272 interrupt-parent = <&mpic>;
@@ -220,7 +274,7 @@
220 }; 274 };
221 dma-channel@2 { 275 dma-channel@2 {
222 compatible = "fsl,mpc8610-dma-channel", 276 compatible = "fsl,mpc8610-dma-channel",
223 "fsl,mpc8540-dma-channel"; 277 "fsl,eloplus-dma-channel";
224 cell-index = <2>; 278 cell-index = <2>;
225 reg = <0x100 0x80>; 279 reg = <0x100 0x80>;
226 interrupt-parent = <&mpic>; 280 interrupt-parent = <&mpic>;
@@ -228,7 +282,7 @@
228 }; 282 };
229 dma-channel@3 { 283 dma-channel@3 {
230 compatible = "fsl,mpc8610-dma-channel", 284 compatible = "fsl,mpc8610-dma-channel",
231 "fsl,mpc8540-dma-channel"; 285 "fsl,eloplus-dma-channel";
232 cell-index = <3>; 286 cell-index = <3>;
233 reg = <0x180 0x80>; 287 reg = <0x180 0x80>;
234 interrupt-parent = <&mpic>; 288 interrupt-parent = <&mpic>;
diff --git a/arch/powerpc/boot/dts/sbc8548.dts b/arch/powerpc/boot/dts/sbc8548.dts
index b86e65d926c1..22d967178fe9 100644
--- a/arch/powerpc/boot/dts/sbc8548.dts
+++ b/arch/powerpc/boot/dts/sbc8548.dts
@@ -52,6 +52,99 @@
52 reg = <0x00000000 0x10000000>; 52 reg = <0x00000000 0x10000000>;
53 }; 53 };
54 54
55 localbus@e0000000 {
56 #address-cells = <2>;
57 #size-cells = <1>;
58 compatible = "simple-bus";
59 reg = <0xe0000000 0x5000>;
60 interrupt-parent = <&mpic>;
61
62 ranges = <0x0 0x0 0xff800000 0x00800000 /*8MB Flash*/
63 0x3 0x0 0xf0000000 0x04000000 /*64MB SDRAM*/
64 0x4 0x0 0xf4000000 0x04000000 /*64MB SDRAM*/
65 0x5 0x0 0xf8000000 0x00b10000 /* EPLD */
66 0x6 0x0 0xfb800000 0x04000000>; /*64MB Flash*/
67
68
69 flash@0,0 {
70 #address-cells = <1>;
71 #size-cells = <1>;
72 compatible = "cfi-flash";
73 reg = <0x0 0x0 0x800000>;
74 bank-width = <1>;
75 device-width = <1>;
76 partition@0x0 {
77 label = "space";
78 reg = <0x00000000 0x00100000>;
79 };
80 partition@0x100000 {
81 label = "bootloader";
82 reg = <0x00100000 0x00700000>;
83 read-only;
84 };
85 };
86
87 epld@5,0 {
88 compatible = "wrs,epld-localbus";
89 #address-cells = <2>;
90 #size-cells = <1>;
91 reg = <0x5 0x0 0x00b10000>;
92 ranges = <
93 0x0 0x0 0x5 0x000000 0x1fff /* LED */
94 0x1 0x0 0x5 0x100000 0x1fff /* Switches */
95 0x3 0x0 0x5 0x300000 0x1fff /* HW Rev. */
96 0xb 0x0 0x5 0xb00000 0x1fff /* EEPROM */
97 >;
98
99 led@0,0 {
100 compatible = "led";
101 reg = <0x0 0x0 0x1fff>;
102 };
103
104 switches@1,0 {
105 compatible = "switches";
106 reg = <0x1 0x0 0x1fff>;
107 };
108
109 hw-rev@3,0 {
110 compatible = "hw-rev";
111 reg = <0x3 0x0 0x1fff>;
112 };
113
114 eeprom@b,0 {
115 compatible = "eeprom";
116 reg = <0xb 0 0x1fff>;
117 };
118
119 };
120
121 alt-flash@6,0 {
122 #address-cells = <1>;
123 #size-cells = <1>;
124 reg = <0x6 0x0 0x04000000>;
125 compatible = "cfi-flash";
126 bank-width = <4>;
127 device-width = <1>;
128 partition@0x0 {
129 label = "bootloader";
130 reg = <0x00000000 0x00100000>;
131 read-only;
132 };
133 partition@0x00100000 {
134 label = "file-system";
135 reg = <0x00100000 0x01f00000>;
136 };
137 partition@0x02000000 {
138 label = "boot-config";
139 reg = <0x02000000 0x00100000>;
140 };
141 partition@0x02100000 {
142 label = "space";
143 reg = <0x02100000 0x01f00000>;
144 };
145 };
146 };
147
55 soc8548@e0000000 { 148 soc8548@e0000000 {
56 #address-cells = <1>; 149 #address-cells = <1>;
57 #size-cells = <1>; 150 #size-cells = <1>;
@@ -59,6 +152,7 @@
59 ranges = <0x00000000 0xe0000000 0x00100000>; 152 ranges = <0x00000000 0xe0000000 0x00100000>;
60 reg = <0xe0000000 0x00001000>; // CCSRBAR 153 reg = <0xe0000000 0x00001000>; // CCSRBAR
61 bus-frequency = <0>; 154 bus-frequency = <0>;
155 compatible = "simple-bus";
62 156
63 memory-controller@2000 { 157 memory-controller@2000 {
64 compatible = "fsl,8548-memory-controller"; 158 compatible = "fsl,8548-memory-controller";
diff --git a/arch/powerpc/configs/chrp32_defconfig b/arch/powerpc/configs/chrp32_defconfig
index d7fd298bd234..05360d4ef1b1 100644
--- a/arch/powerpc/configs/chrp32_defconfig
+++ b/arch/powerpc/configs/chrp32_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.25-rc6 3# Linux kernel version: 2.6.26-rc3
4# Thu Mar 27 13:55:37 2008 4# Tue May 20 20:00:44 2008
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -32,6 +32,8 @@ CONFIG_GENERIC_CLOCKEVENTS=y
32CONFIG_GENERIC_HARDIRQS=y 32CONFIG_GENERIC_HARDIRQS=y
33# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 33# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
34CONFIG_IRQ_PER_CPU=y 34CONFIG_IRQ_PER_CPU=y
35CONFIG_STACKTRACE_SUPPORT=y
36CONFIG_LOCKDEP_SUPPORT=y
35CONFIG_RWSEM_XCHGADD_ALGORITHM=y 37CONFIG_RWSEM_XCHGADD_ALGORITHM=y
36CONFIG_ARCH_HAS_ILOG2_U32=y 38CONFIG_ARCH_HAS_ILOG2_U32=y
37CONFIG_GENERIC_HWEIGHT=y 39CONFIG_GENERIC_HWEIGHT=y
@@ -88,6 +90,7 @@ CONFIG_INITRAMFS_SOURCE=""
88CONFIG_SYSCTL=y 90CONFIG_SYSCTL=y
89# CONFIG_EMBEDDED is not set 91# CONFIG_EMBEDDED is not set
90CONFIG_SYSCTL_SYSCALL=y 92CONFIG_SYSCTL_SYSCALL=y
93CONFIG_SYSCTL_SYSCALL_CHECK=y
91CONFIG_KALLSYMS=y 94CONFIG_KALLSYMS=y
92# CONFIG_KALLSYMS_ALL is not set 95# CONFIG_KALLSYMS_ALL is not set
93# CONFIG_KALLSYMS_EXTRA_PASS is not set 96# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -95,6 +98,7 @@ CONFIG_HOTPLUG=y
95CONFIG_PRINTK=y 98CONFIG_PRINTK=y
96CONFIG_BUG=y 99CONFIG_BUG=y
97CONFIG_ELF_CORE=y 100CONFIG_ELF_CORE=y
101CONFIG_PCSPKR_PLATFORM=y
98# CONFIG_COMPAT_BRK is not set 102# CONFIG_COMPAT_BRK is not set
99CONFIG_BASE_FULL=y 103CONFIG_BASE_FULL=y
100CONFIG_FUTEX=y 104CONFIG_FUTEX=y
@@ -115,12 +119,14 @@ CONFIG_HAVE_OPROFILE=y
115# CONFIG_KPROBES is not set 119# CONFIG_KPROBES is not set
116CONFIG_HAVE_KPROBES=y 120CONFIG_HAVE_KPROBES=y
117CONFIG_HAVE_KRETPROBES=y 121CONFIG_HAVE_KRETPROBES=y
122# CONFIG_HAVE_DMA_ATTRS is not set
118CONFIG_PROC_PAGE_MONITOR=y 123CONFIG_PROC_PAGE_MONITOR=y
119CONFIG_SLABINFO=y 124CONFIG_SLABINFO=y
120CONFIG_RT_MUTEXES=y 125CONFIG_RT_MUTEXES=y
121# CONFIG_TINY_SHMEM is not set 126# CONFIG_TINY_SHMEM is not set
122CONFIG_BASE_SMALL=0 127CONFIG_BASE_SMALL=0
123CONFIG_MODULES=y 128CONFIG_MODULES=y
129# CONFIG_MODULE_FORCE_LOAD is not set
124CONFIG_MODULE_UNLOAD=y 130CONFIG_MODULE_UNLOAD=y
125CONFIG_MODULE_FORCE_UNLOAD=y 131CONFIG_MODULE_FORCE_UNLOAD=y
126# CONFIG_MODVERSIONS is not set 132# CONFIG_MODVERSIONS is not set
@@ -217,11 +223,13 @@ CONFIG_FLATMEM=y
217CONFIG_FLAT_NODE_MEM_MAP=y 223CONFIG_FLAT_NODE_MEM_MAP=y
218# CONFIG_SPARSEMEM_STATIC is not set 224# CONFIG_SPARSEMEM_STATIC is not set
219# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 225# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
226CONFIG_PAGEFLAGS_EXTENDED=y
220CONFIG_SPLIT_PTLOCK_CPUS=4 227CONFIG_SPLIT_PTLOCK_CPUS=4
221# CONFIG_RESOURCES_64BIT is not set 228# CONFIG_RESOURCES_64BIT is not set
222CONFIG_ZONE_DMA_FLAG=1 229CONFIG_ZONE_DMA_FLAG=1
223CONFIG_BOUNCE=y 230CONFIG_BOUNCE=y
224CONFIG_VIRT_TO_BUS=y 231CONFIG_VIRT_TO_BUS=y
232CONFIG_FORCE_MAX_ZONEORDER=11
225CONFIG_PROC_DEVICETREE=y 233CONFIG_PROC_DEVICETREE=y
226# CONFIG_CMDLINE_BOOL is not set 234# CONFIG_CMDLINE_BOOL is not set
227# CONFIG_PM is not set 235# CONFIG_PM is not set
@@ -245,6 +253,7 @@ CONFIG_ARCH_SUPPORTS_MSI=y
245# CONFIG_PCI_DEBUG is not set 253# CONFIG_PCI_DEBUG is not set
246# CONFIG_PCCARD is not set 254# CONFIG_PCCARD is not set
247# CONFIG_HOTPLUG_PCI is not set 255# CONFIG_HOTPLUG_PCI is not set
256# CONFIG_HAS_RAPIDIO is not set
248 257
249# 258#
250# Advanced setup 259# Advanced setup
@@ -254,11 +263,11 @@ CONFIG_ARCH_SUPPORTS_MSI=y
254# 263#
255# Default settings for advanced configuration options are used 264# Default settings for advanced configuration options are used
256# 265#
257CONFIG_HIGHMEM_START=0xfe000000
258CONFIG_LOWMEM_SIZE=0x30000000 266CONFIG_LOWMEM_SIZE=0x30000000
267CONFIG_PAGE_OFFSET=0xc0000000
259CONFIG_KERNEL_START=0xc0000000 268CONFIG_KERNEL_START=0xc0000000
269CONFIG_PHYSICAL_START=0x00000000
260CONFIG_TASK_SIZE=0xc0000000 270CONFIG_TASK_SIZE=0xc0000000
261CONFIG_BOOT_LOAD=0x00800000
262 271
263# 272#
264# Networking 273# Networking
@@ -299,8 +308,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
299# CONFIG_TCP_MD5SIG is not set 308# CONFIG_TCP_MD5SIG is not set
300# CONFIG_IP_VS is not set 309# CONFIG_IP_VS is not set
301# CONFIG_IPV6 is not set 310# CONFIG_IPV6 is not set
302# CONFIG_INET6_XFRM_TUNNEL is not set
303# CONFIG_INET6_TUNNEL is not set
304# CONFIG_NETWORK_SECMARK is not set 311# CONFIG_NETWORK_SECMARK is not set
305CONFIG_NETFILTER=y 312CONFIG_NETFILTER=y
306# CONFIG_NETFILTER_DEBUG is not set 313# CONFIG_NETFILTER_DEBUG is not set
@@ -398,6 +405,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
398# CONFIG_CONNECTOR is not set 405# CONFIG_CONNECTOR is not set
399# CONFIG_MTD is not set 406# CONFIG_MTD is not set
400CONFIG_OF_DEVICE=y 407CONFIG_OF_DEVICE=y
408CONFIG_OF_I2C=y
401# CONFIG_PARPORT is not set 409# CONFIG_PARPORT is not set
402# CONFIG_PNP is not set 410# CONFIG_PNP is not set
403CONFIG_BLK_DEV=y 411CONFIG_BLK_DEV=y
@@ -484,22 +492,8 @@ CONFIG_BLK_DEV_SL82C105=y
484# CONFIG_BLK_DEV_TRM290 is not set 492# CONFIG_BLK_DEV_TRM290 is not set
485CONFIG_BLK_DEV_VIA82CXXX=y 493CONFIG_BLK_DEV_VIA82CXXX=y
486# CONFIG_BLK_DEV_TC86C001 is not set 494# CONFIG_BLK_DEV_TC86C001 is not set
487
488#
489# Other IDE chipsets support
490#
491
492#
493# Note: most of these also require special kernel boot parameters
494#
495# CONFIG_BLK_DEV_4DRIVES is not set
496# CONFIG_BLK_DEV_ALI14XX is not set
497# CONFIG_BLK_DEV_DTC2278 is not set
498# CONFIG_BLK_DEV_HT6560B is not set
499# CONFIG_BLK_DEV_QD65XX is not set
500# CONFIG_BLK_DEV_UMC8672 is not set
501CONFIG_BLK_DEV_IDEDMA=y 495CONFIG_BLK_DEV_IDEDMA=y
502CONFIG_IDE_ARCH_OBSOLETE_INIT=y 496# CONFIG_BLK_DEV_HD_ONLY is not set
503# CONFIG_BLK_DEV_HD is not set 497# CONFIG_BLK_DEV_HD is not set
504 498
505# 499#
@@ -641,7 +635,6 @@ CONFIG_DE4X5=y
641# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 635# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
642CONFIG_NET_PCI=y 636CONFIG_NET_PCI=y
643CONFIG_PCNET32=y 637CONFIG_PCNET32=y
644# CONFIG_PCNET32_NAPI is not set
645# CONFIG_AMD8111_ETH is not set 638# CONFIG_AMD8111_ETH is not set
646# CONFIG_ADAPTEC_STARFIRE is not set 639# CONFIG_ADAPTEC_STARFIRE is not set
647# CONFIG_AC3200 is not set 640# CONFIG_AC3200 is not set
@@ -684,7 +677,6 @@ CONFIG_NETDEV_1000=y
684# CONFIG_SIS190 is not set 677# CONFIG_SIS190 is not set
685# CONFIG_SKGE is not set 678# CONFIG_SKGE is not set
686# CONFIG_SKY2 is not set 679# CONFIG_SKY2 is not set
687# CONFIG_SK98LIN is not set
688# CONFIG_VIA_VELOCITY is not set 680# CONFIG_VIA_VELOCITY is not set
689# CONFIG_TIGON3 is not set 681# CONFIG_TIGON3 is not set
690# CONFIG_BNX2 is not set 682# CONFIG_BNX2 is not set
@@ -703,6 +695,7 @@ CONFIG_NETDEV_10000=y
703# CONFIG_MLX4_CORE is not set 695# CONFIG_MLX4_CORE is not set
704# CONFIG_TEHUTI is not set 696# CONFIG_TEHUTI is not set
705# CONFIG_BNX2X is not set 697# CONFIG_BNX2X is not set
698# CONFIG_SFC is not set
706# CONFIG_TR is not set 699# CONFIG_TR is not set
707 700
708# 701#
@@ -710,6 +703,7 @@ CONFIG_NETDEV_10000=y
710# 703#
711# CONFIG_WLAN_PRE80211 is not set 704# CONFIG_WLAN_PRE80211 is not set
712# CONFIG_WLAN_80211 is not set 705# CONFIG_WLAN_80211 is not set
706# CONFIG_IWLWIFI_LEDS is not set
713 707
714# 708#
715# USB Network Adapters 709# USB Network Adapters
@@ -813,6 +807,7 @@ CONFIG_VT=y
813CONFIG_VT_CONSOLE=y 807CONFIG_VT_CONSOLE=y
814CONFIG_HW_CONSOLE=y 808CONFIG_HW_CONSOLE=y
815# CONFIG_VT_HW_CONSOLE_BINDING is not set 809# CONFIG_VT_HW_CONSOLE_BINDING is not set
810CONFIG_DEVKMEM=y
816# CONFIG_SERIAL_NONSTANDARD is not set 811# CONFIG_SERIAL_NONSTANDARD is not set
817# CONFIG_NOZOMI is not set 812# CONFIG_NOZOMI is not set
818 813
@@ -853,13 +848,7 @@ CONFIG_DEVPORT=y
853CONFIG_I2C=y 848CONFIG_I2C=y
854CONFIG_I2C_BOARDINFO=y 849CONFIG_I2C_BOARDINFO=y
855# CONFIG_I2C_CHARDEV is not set 850# CONFIG_I2C_CHARDEV is not set
856
857#
858# I2C Algorithms
859#
860CONFIG_I2C_ALGOBIT=y 851CONFIG_I2C_ALGOBIT=y
861# CONFIG_I2C_ALGOPCF is not set
862# CONFIG_I2C_ALGOPCA is not set
863 852
864# 853#
865# I2C Hardware Bus support 854# I2C Hardware Bus support
@@ -890,6 +879,7 @@ CONFIG_I2C_ALGOBIT=y
890# CONFIG_I2C_VIAPRO is not set 879# CONFIG_I2C_VIAPRO is not set
891# CONFIG_I2C_VOODOO3 is not set 880# CONFIG_I2C_VOODOO3 is not set
892# CONFIG_I2C_PCA_ISA is not set 881# CONFIG_I2C_PCA_ISA is not set
882# CONFIG_I2C_PCA_PLATFORM is not set
893 883
894# 884#
895# Miscellaneous I2C Chip support 885# Miscellaneous I2C Chip support
@@ -899,19 +889,13 @@ CONFIG_I2C_ALGOBIT=y
899# CONFIG_SENSORS_PCF8574 is not set 889# CONFIG_SENSORS_PCF8574 is not set
900# CONFIG_PCF8575 is not set 890# CONFIG_PCF8575 is not set
901# CONFIG_SENSORS_PCF8591 is not set 891# CONFIG_SENSORS_PCF8591 is not set
902# CONFIG_TPS65010 is not set
903# CONFIG_SENSORS_MAX6875 is not set 892# CONFIG_SENSORS_MAX6875 is not set
904# CONFIG_SENSORS_TSL2550 is not set 893# CONFIG_SENSORS_TSL2550 is not set
905# CONFIG_I2C_DEBUG_CORE is not set 894# CONFIG_I2C_DEBUG_CORE is not set
906# CONFIG_I2C_DEBUG_ALGO is not set 895# CONFIG_I2C_DEBUG_ALGO is not set
907# CONFIG_I2C_DEBUG_BUS is not set 896# CONFIG_I2C_DEBUG_BUS is not set
908# CONFIG_I2C_DEBUG_CHIP is not set 897# CONFIG_I2C_DEBUG_CHIP is not set
909
910#
911# SPI support
912#
913# CONFIG_SPI is not set 898# CONFIG_SPI is not set
914# CONFIG_SPI_MASTER is not set
915# CONFIG_W1 is not set 899# CONFIG_W1 is not set
916# CONFIG_POWER_SUPPLY is not set 900# CONFIG_POWER_SUPPLY is not set
917# CONFIG_HWMON is not set 901# CONFIG_HWMON is not set
@@ -928,12 +912,22 @@ CONFIG_SSB_POSSIBLE=y
928# Multifunction device drivers 912# Multifunction device drivers
929# 913#
930# CONFIG_MFD_SM501 is not set 914# CONFIG_MFD_SM501 is not set
915# CONFIG_HTC_PASIC3 is not set
931 916
932# 917#
933# Multimedia devices 918# Multimedia devices
934# 919#
920
921#
922# Multimedia core support
923#
935# CONFIG_VIDEO_DEV is not set 924# CONFIG_VIDEO_DEV is not set
936# CONFIG_DVB_CORE is not set 925# CONFIG_DVB_CORE is not set
926# CONFIG_VIDEO_MEDIA is not set
927
928#
929# Multimedia drivers
930#
937# CONFIG_DAB is not set 931# CONFIG_DAB is not set
938 932
939# 933#
@@ -953,8 +947,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
953# CONFIG_FB_SYS_FILLRECT is not set 947# CONFIG_FB_SYS_FILLRECT is not set
954# CONFIG_FB_SYS_COPYAREA is not set 948# CONFIG_FB_SYS_COPYAREA is not set
955# CONFIG_FB_SYS_IMAGEBLIT is not set 949# CONFIG_FB_SYS_IMAGEBLIT is not set
950# CONFIG_FB_FOREIGN_ENDIAN is not set
956# CONFIG_FB_SYS_FOPS is not set 951# CONFIG_FB_SYS_FOPS is not set
957CONFIG_FB_DEFERRED_IO=y
958# CONFIG_FB_SVGALIB is not set 952# CONFIG_FB_SVGALIB is not set
959CONFIG_FB_MACMODES=y 953CONFIG_FB_MACMODES=y
960CONFIG_FB_BACKLIGHT=y 954CONFIG_FB_BACKLIGHT=y
@@ -1072,11 +1066,13 @@ CONFIG_USB_DEVICE_CLASS=y
1072# 1066#
1073# USB Host Controller Drivers 1067# USB Host Controller Drivers
1074# 1068#
1069# CONFIG_USB_C67X00_HCD is not set
1075CONFIG_USB_EHCI_HCD=m 1070CONFIG_USB_EHCI_HCD=m
1076# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1071# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1077# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1072# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1078# CONFIG_USB_EHCI_HCD_PPC_OF is not set 1073# CONFIG_USB_EHCI_HCD_PPC_OF is not set
1079# CONFIG_USB_ISP116X_HCD is not set 1074# CONFIG_USB_ISP116X_HCD is not set
1075# CONFIG_USB_ISP1760_HCD is not set
1080CONFIG_USB_OHCI_HCD=y 1076CONFIG_USB_OHCI_HCD=y
1081# CONFIG_USB_OHCI_HCD_PPC_OF is not set 1077# CONFIG_USB_OHCI_HCD_PPC_OF is not set
1082# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 1078# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
@@ -1112,6 +1108,7 @@ CONFIG_USB_STORAGE=m
1112# CONFIG_USB_STORAGE_ALAUDA is not set 1108# CONFIG_USB_STORAGE_ALAUDA is not set
1113# CONFIG_USB_STORAGE_ONETOUCH is not set 1109# CONFIG_USB_STORAGE_ONETOUCH is not set
1114# CONFIG_USB_STORAGE_KARMA is not set 1110# CONFIG_USB_STORAGE_KARMA is not set
1111# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
1115# CONFIG_USB_LIBUSUAL is not set 1112# CONFIG_USB_LIBUSUAL is not set
1116 1113
1117# 1114#
@@ -1153,14 +1150,11 @@ CONFIG_USB_MON=y
1153# CONFIG_MMC is not set 1150# CONFIG_MMC is not set
1154# CONFIG_MEMSTICK is not set 1151# CONFIG_MEMSTICK is not set
1155# CONFIG_NEW_LEDS is not set 1152# CONFIG_NEW_LEDS is not set
1153# CONFIG_ACCESSIBILITY is not set
1156# CONFIG_INFINIBAND is not set 1154# CONFIG_INFINIBAND is not set
1157# CONFIG_EDAC is not set 1155# CONFIG_EDAC is not set
1158# CONFIG_RTC_CLASS is not set 1156# CONFIG_RTC_CLASS is not set
1159# CONFIG_DMADEVICES is not set 1157# CONFIG_DMADEVICES is not set
1160
1161#
1162# Userspace I/O
1163#
1164# CONFIG_UIO is not set 1158# CONFIG_UIO is not set
1165 1159
1166# 1160#
@@ -1180,7 +1174,6 @@ CONFIG_FS_MBCACHE=y
1180# CONFIG_JFS_FS is not set 1174# CONFIG_JFS_FS is not set
1181# CONFIG_FS_POSIX_ACL is not set 1175# CONFIG_FS_POSIX_ACL is not set
1182# CONFIG_XFS_FS is not set 1176# CONFIG_XFS_FS is not set
1183# CONFIG_GFS2_FS is not set
1184# CONFIG_OCFS2_FS is not set 1177# CONFIG_OCFS2_FS is not set
1185CONFIG_DNOTIFY=y 1178CONFIG_DNOTIFY=y
1186CONFIG_INOTIFY=y 1179CONFIG_INOTIFY=y
@@ -1314,6 +1307,7 @@ CONFIG_NLS_ISO8859_1=m
1314# Library routines 1307# Library routines
1315# 1308#
1316CONFIG_BITREVERSE=y 1309CONFIG_BITREVERSE=y
1310# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1317CONFIG_CRC_CCITT=m 1311CONFIG_CRC_CCITT=m
1318# CONFIG_CRC16 is not set 1312# CONFIG_CRC16 is not set
1319# CONFIG_CRC_ITU_T is not set 1313# CONFIG_CRC_ITU_T is not set
@@ -1334,6 +1328,7 @@ CONFIG_HAVE_LMB=y
1334# CONFIG_PRINTK_TIME is not set 1328# CONFIG_PRINTK_TIME is not set
1335CONFIG_ENABLE_WARN_DEPRECATED=y 1329CONFIG_ENABLE_WARN_DEPRECATED=y
1336CONFIG_ENABLE_MUST_CHECK=y 1330CONFIG_ENABLE_MUST_CHECK=y
1331CONFIG_FRAME_WARN=1024
1337CONFIG_MAGIC_SYSRQ=y 1332CONFIG_MAGIC_SYSRQ=y
1338# CONFIG_UNUSED_SYMBOLS is not set 1333# CONFIG_UNUSED_SYMBOLS is not set
1339# CONFIG_DEBUG_FS is not set 1334# CONFIG_DEBUG_FS is not set
@@ -1344,6 +1339,7 @@ CONFIG_DETECT_SOFTLOCKUP=y
1344CONFIG_SCHED_DEBUG=y 1339CONFIG_SCHED_DEBUG=y
1345# CONFIG_SCHEDSTATS is not set 1340# CONFIG_SCHEDSTATS is not set
1346# CONFIG_TIMER_STATS is not set 1341# CONFIG_TIMER_STATS is not set
1342# CONFIG_DEBUG_OBJECTS is not set
1347# CONFIG_SLUB_DEBUG_ON is not set 1343# CONFIG_SLUB_DEBUG_ON is not set
1348# CONFIG_SLUB_STATS is not set 1344# CONFIG_SLUB_STATS is not set
1349# CONFIG_DEBUG_RT_MUTEXES is not set 1345# CONFIG_DEBUG_RT_MUTEXES is not set
@@ -1357,6 +1353,7 @@ CONFIG_DEBUG_SPINLOCK_SLEEP=y
1357CONFIG_DEBUG_BUGVERBOSE=y 1353CONFIG_DEBUG_BUGVERBOSE=y
1358# CONFIG_DEBUG_INFO is not set 1354# CONFIG_DEBUG_INFO is not set
1359# CONFIG_DEBUG_VM is not set 1355# CONFIG_DEBUG_VM is not set
1356# CONFIG_DEBUG_WRITECOUNT is not set
1360# CONFIG_DEBUG_LIST is not set 1357# CONFIG_DEBUG_LIST is not set
1361# CONFIG_DEBUG_SG is not set 1358# CONFIG_DEBUG_SG is not set
1362# CONFIG_BOOT_PRINTK_DELAY is not set 1359# CONFIG_BOOT_PRINTK_DELAY is not set
@@ -1371,6 +1368,7 @@ CONFIG_DEBUGGER=y
1371CONFIG_XMON=y 1368CONFIG_XMON=y
1372CONFIG_XMON_DEFAULT=y 1369CONFIG_XMON_DEFAULT=y
1373CONFIG_XMON_DISASSEMBLY=y 1370CONFIG_XMON_DISASSEMBLY=y
1371CONFIG_IRQSTACKS=y
1374# CONFIG_BDI_SWITCH is not set 1372# CONFIG_BDI_SWITCH is not set
1375# CONFIG_BOOTX_TEXT is not set 1373# CONFIG_BOOTX_TEXT is not set
1376# CONFIG_PPC_EARLY_DEBUG is not set 1374# CONFIG_PPC_EARLY_DEBUG is not set
@@ -1382,50 +1380,80 @@ CONFIG_XMON_DISASSEMBLY=y
1382# CONFIG_SECURITY is not set 1380# CONFIG_SECURITY is not set
1383# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1381# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1384CONFIG_CRYPTO=y 1382CONFIG_CRYPTO=y
1383
1384#
1385# Crypto core or helper
1386#
1385CONFIG_CRYPTO_ALGAPI=m 1387CONFIG_CRYPTO_ALGAPI=m
1386CONFIG_CRYPTO_BLKCIPHER=m 1388CONFIG_CRYPTO_BLKCIPHER=m
1387# CONFIG_CRYPTO_SEQIV is not set
1388CONFIG_CRYPTO_MANAGER=m 1389CONFIG_CRYPTO_MANAGER=m
1390# CONFIG_CRYPTO_GF128MUL is not set
1391# CONFIG_CRYPTO_NULL is not set
1392# CONFIG_CRYPTO_CRYPTD is not set
1393# CONFIG_CRYPTO_AUTHENC is not set
1394# CONFIG_CRYPTO_TEST is not set
1395
1396#
1397# Authenticated Encryption with Associated Data
1398#
1399# CONFIG_CRYPTO_CCM is not set
1400# CONFIG_CRYPTO_GCM is not set
1401# CONFIG_CRYPTO_SEQIV is not set
1402
1403#
1404# Block modes
1405#
1406CONFIG_CRYPTO_CBC=m
1407# CONFIG_CRYPTO_CTR is not set
1408# CONFIG_CRYPTO_CTS is not set
1409CONFIG_CRYPTO_ECB=m
1410# CONFIG_CRYPTO_LRW is not set
1411CONFIG_CRYPTO_PCBC=m
1412# CONFIG_CRYPTO_XTS is not set
1413
1414#
1415# Hash modes
1416#
1389# CONFIG_CRYPTO_HMAC is not set 1417# CONFIG_CRYPTO_HMAC is not set
1390# CONFIG_CRYPTO_XCBC is not set 1418# CONFIG_CRYPTO_XCBC is not set
1391# CONFIG_CRYPTO_NULL is not set 1419
1420#
1421# Digest
1422#
1423# CONFIG_CRYPTO_CRC32C is not set
1392# CONFIG_CRYPTO_MD4 is not set 1424# CONFIG_CRYPTO_MD4 is not set
1393# CONFIG_CRYPTO_MD5 is not set 1425# CONFIG_CRYPTO_MD5 is not set
1426# CONFIG_CRYPTO_MICHAEL_MIC is not set
1394CONFIG_CRYPTO_SHA1=m 1427CONFIG_CRYPTO_SHA1=m
1395# CONFIG_CRYPTO_SHA256 is not set 1428# CONFIG_CRYPTO_SHA256 is not set
1396# CONFIG_CRYPTO_SHA512 is not set 1429# CONFIG_CRYPTO_SHA512 is not set
1397# CONFIG_CRYPTO_WP512 is not set
1398# CONFIG_CRYPTO_TGR192 is not set 1430# CONFIG_CRYPTO_TGR192 is not set
1399# CONFIG_CRYPTO_GF128MUL is not set 1431# CONFIG_CRYPTO_WP512 is not set
1400CONFIG_CRYPTO_ECB=m 1432
1401CONFIG_CRYPTO_CBC=m 1433#
1402CONFIG_CRYPTO_PCBC=m 1434# Ciphers
1403# CONFIG_CRYPTO_LRW is not set 1435#
1404# CONFIG_CRYPTO_XTS is not set
1405# CONFIG_CRYPTO_CTR is not set
1406# CONFIG_CRYPTO_GCM is not set
1407# CONFIG_CRYPTO_CCM is not set
1408# CONFIG_CRYPTO_CRYPTD is not set
1409# CONFIG_CRYPTO_DES is not set
1410# CONFIG_CRYPTO_FCRYPT is not set
1411# CONFIG_CRYPTO_BLOWFISH is not set
1412# CONFIG_CRYPTO_TWOFISH is not set
1413# CONFIG_CRYPTO_SERPENT is not set
1414# CONFIG_CRYPTO_AES is not set 1436# CONFIG_CRYPTO_AES is not set
1437# CONFIG_CRYPTO_ANUBIS is not set
1438CONFIG_CRYPTO_ARC4=m
1439# CONFIG_CRYPTO_BLOWFISH is not set
1440# CONFIG_CRYPTO_CAMELLIA is not set
1415# CONFIG_CRYPTO_CAST5 is not set 1441# CONFIG_CRYPTO_CAST5 is not set
1416# CONFIG_CRYPTO_CAST6 is not set 1442# CONFIG_CRYPTO_CAST6 is not set
1417# CONFIG_CRYPTO_TEA is not set 1443# CONFIG_CRYPTO_DES is not set
1418CONFIG_CRYPTO_ARC4=m 1444# CONFIG_CRYPTO_FCRYPT is not set
1419# CONFIG_CRYPTO_KHAZAD is not set 1445# CONFIG_CRYPTO_KHAZAD is not set
1420# CONFIG_CRYPTO_ANUBIS is not set
1421# CONFIG_CRYPTO_SEED is not set
1422# CONFIG_CRYPTO_SALSA20 is not set 1446# CONFIG_CRYPTO_SALSA20 is not set
1447# CONFIG_CRYPTO_SEED is not set
1448# CONFIG_CRYPTO_SERPENT is not set
1449# CONFIG_CRYPTO_TEA is not set
1450# CONFIG_CRYPTO_TWOFISH is not set
1451
1452#
1453# Compression
1454#
1423# CONFIG_CRYPTO_DEFLATE is not set 1455# CONFIG_CRYPTO_DEFLATE is not set
1424# CONFIG_CRYPTO_MICHAEL_MIC is not set
1425# CONFIG_CRYPTO_CRC32C is not set
1426# CONFIG_CRYPTO_CAMELLIA is not set
1427# CONFIG_CRYPTO_TEST is not set
1428# CONFIG_CRYPTO_AUTHENC is not set
1429# CONFIG_CRYPTO_LZO is not set 1456# CONFIG_CRYPTO_LZO is not set
1430# CONFIG_CRYPTO_HW is not set 1457# CONFIG_CRYPTO_HW is not set
1431# CONFIG_PPC_CLOCK is not set 1458# CONFIG_PPC_CLOCK is not set
1459# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/g5_defconfig b/arch/powerpc/configs/g5_defconfig
index 88338a9f5e95..db34909831a2 100644
--- a/arch/powerpc/configs/g5_defconfig
+++ b/arch/powerpc/configs/g5_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.25-rc6 3# Linux kernel version: 2.6.26-rc3
4# Thu Mar 27 13:55:43 2008 4# Tue May 20 20:01:18 2008
5# 5#
6CONFIG_PPC64=y 6CONFIG_PPC64=y
7 7
@@ -29,6 +29,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 29CONFIG_GENERIC_HARDIRQS=y
30CONFIG_HAVE_SETUP_PER_CPU_AREA=y 30CONFIG_HAVE_SETUP_PER_CPU_AREA=y
31CONFIG_IRQ_PER_CPU=y 31CONFIG_IRQ_PER_CPU=y
32CONFIG_STACKTRACE_SUPPORT=y
33CONFIG_TRACE_IRQFLAGS_SUPPORT=y
34CONFIG_LOCKDEP_SUPPORT=y
32CONFIG_RWSEM_XCHGADD_ALGORITHM=y 35CONFIG_RWSEM_XCHGADD_ALGORITHM=y
33CONFIG_ARCH_HAS_ILOG2_U32=y 36CONFIG_ARCH_HAS_ILOG2_U32=y
34CONFIG_ARCH_HAS_ILOG2_U64=y 37CONFIG_ARCH_HAS_ILOG2_U64=y
@@ -91,6 +94,7 @@ CONFIG_CC_OPTIMIZE_FOR_SIZE=y
91CONFIG_SYSCTL=y 94CONFIG_SYSCTL=y
92# CONFIG_EMBEDDED is not set 95# CONFIG_EMBEDDED is not set
93CONFIG_SYSCTL_SYSCALL=y 96CONFIG_SYSCTL_SYSCALL=y
97CONFIG_SYSCTL_SYSCALL_CHECK=y
94CONFIG_KALLSYMS=y 98CONFIG_KALLSYMS=y
95# CONFIG_KALLSYMS_ALL is not set 99# CONFIG_KALLSYMS_ALL is not set
96# CONFIG_KALLSYMS_EXTRA_PASS is not set 100# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -119,12 +123,14 @@ CONFIG_HAVE_OPROFILE=y
119# CONFIG_KPROBES is not set 123# CONFIG_KPROBES is not set
120CONFIG_HAVE_KPROBES=y 124CONFIG_HAVE_KPROBES=y
121CONFIG_HAVE_KRETPROBES=y 125CONFIG_HAVE_KRETPROBES=y
126# CONFIG_HAVE_DMA_ATTRS is not set
122CONFIG_PROC_PAGE_MONITOR=y 127CONFIG_PROC_PAGE_MONITOR=y
123CONFIG_SLABINFO=y 128CONFIG_SLABINFO=y
124CONFIG_RT_MUTEXES=y 129CONFIG_RT_MUTEXES=y
125# CONFIG_TINY_SHMEM is not set 130# CONFIG_TINY_SHMEM is not set
126CONFIG_BASE_SMALL=0 131CONFIG_BASE_SMALL=0
127CONFIG_MODULES=y 132CONFIG_MODULES=y
133# CONFIG_MODULE_FORCE_LOAD is not set
128CONFIG_MODULE_UNLOAD=y 134CONFIG_MODULE_UNLOAD=y
129# CONFIG_MODULE_FORCE_UNLOAD is not set 135# CONFIG_MODULE_FORCE_UNLOAD is not set
130CONFIG_MODVERSIONS=y 136CONFIG_MODVERSIONS=y
@@ -165,11 +171,11 @@ CONFIG_PPC_PMAC=y
165CONFIG_PPC_PMAC64=y 171CONFIG_PPC_PMAC64=y
166# CONFIG_PPC_MAPLE is not set 172# CONFIG_PPC_MAPLE is not set
167# CONFIG_PPC_PASEMI is not set 173# CONFIG_PPC_PASEMI is not set
168# CONFIG_PPC_CELLEB is not set
169# CONFIG_PPC_PS3 is not set 174# CONFIG_PPC_PS3 is not set
170# CONFIG_PPC_CELL is not set 175# CONFIG_PPC_CELL is not set
171# CONFIG_PPC_CELL_NATIVE is not set 176# CONFIG_PPC_CELL_NATIVE is not set
172# CONFIG_PPC_IBM_CELL_BLADE is not set 177# CONFIG_PPC_IBM_CELL_BLADE is not set
178# CONFIG_PPC_CELLEB is not set
173# CONFIG_PQ2ADS is not set 179# CONFIG_PQ2ADS is not set
174CONFIG_PPC_NATIVE=y 180CONFIG_PPC_NATIVE=y
175# CONFIG_IPIC is not set 181# CONFIG_IPIC is not set
@@ -190,6 +196,7 @@ CONFIG_CPU_FREQ_TABLE=y
190CONFIG_CPU_FREQ_STAT=y 196CONFIG_CPU_FREQ_STAT=y
191# CONFIG_CPU_FREQ_STAT_DETAILS is not set 197# CONFIG_CPU_FREQ_STAT_DETAILS is not set
192CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 198CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
199# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
193# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 200# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
194# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set 201# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
195# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set 202# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -224,7 +231,6 @@ CONFIG_PREEMPT_NONE=y
224CONFIG_BINFMT_ELF=y 231CONFIG_BINFMT_ELF=y
225CONFIG_COMPAT_BINFMT_ELF=y 232CONFIG_COMPAT_BINFMT_ELF=y
226# CONFIG_BINFMT_MISC is not set 233# CONFIG_BINFMT_MISC is not set
227CONFIG_FORCE_MAX_ZONEORDER=13
228CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y 234CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y
229CONFIG_IOMMU_VMERGE=y 235CONFIG_IOMMU_VMERGE=y
230CONFIG_IOMMU_HELPER=y 236CONFIG_IOMMU_HELPER=y
@@ -248,12 +254,14 @@ CONFIG_FLATMEM=y
248CONFIG_FLAT_NODE_MEM_MAP=y 254CONFIG_FLAT_NODE_MEM_MAP=y
249# CONFIG_SPARSEMEM_STATIC is not set 255# CONFIG_SPARSEMEM_STATIC is not set
250CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y 256CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
257CONFIG_PAGEFLAGS_EXTENDED=y
251CONFIG_SPLIT_PTLOCK_CPUS=4 258CONFIG_SPLIT_PTLOCK_CPUS=4
252CONFIG_RESOURCES_64BIT=y 259CONFIG_RESOURCES_64BIT=y
253CONFIG_ZONE_DMA_FLAG=1 260CONFIG_ZONE_DMA_FLAG=1
254CONFIG_BOUNCE=y 261CONFIG_BOUNCE=y
255# CONFIG_PPC_HAS_HASH_64K is not set 262# CONFIG_PPC_HAS_HASH_64K is not set
256# CONFIG_PPC_64K_PAGES is not set 263# CONFIG_PPC_64K_PAGES is not set
264CONFIG_FORCE_MAX_ZONEORDER=13
257# CONFIG_SCHED_SMT is not set 265# CONFIG_SCHED_SMT is not set
258CONFIG_PROC_DEVICETREE=y 266CONFIG_PROC_DEVICETREE=y
259# CONFIG_CMDLINE_BOOL is not set 267# CONFIG_CMDLINE_BOOL is not set
@@ -278,7 +286,10 @@ CONFIG_PCI_MSI=y
278# CONFIG_PCI_DEBUG is not set 286# CONFIG_PCI_DEBUG is not set
279# CONFIG_PCCARD is not set 287# CONFIG_PCCARD is not set
280# CONFIG_HOTPLUG_PCI is not set 288# CONFIG_HOTPLUG_PCI is not set
289# CONFIG_HAS_RAPIDIO is not set
290CONFIG_PAGE_OFFSET=0xc000000000000000
281CONFIG_KERNEL_START=0xc000000000000000 291CONFIG_KERNEL_START=0xc000000000000000
292CONFIG_PHYSICAL_START=0x00000000
282 293
283# 294#
284# Networking 295# Networking
@@ -325,8 +336,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
325# CONFIG_TCP_MD5SIG is not set 336# CONFIG_TCP_MD5SIG is not set
326# CONFIG_IP_VS is not set 337# CONFIG_IP_VS is not set
327# CONFIG_IPV6 is not set 338# CONFIG_IPV6 is not set
328# CONFIG_INET6_XFRM_TUNNEL is not set
329# CONFIG_INET6_TUNNEL is not set
330# CONFIG_NETWORK_SECMARK is not set 339# CONFIG_NETWORK_SECMARK is not set
331CONFIG_NETFILTER=y 340CONFIG_NETFILTER=y
332# CONFIG_NETFILTER_DEBUG is not set 341# CONFIG_NETFILTER_DEBUG is not set
@@ -342,6 +351,7 @@ CONFIG_NF_CONNTRACK=m
342# CONFIG_NF_CT_ACCT is not set 351# CONFIG_NF_CT_ACCT is not set
343CONFIG_NF_CONNTRACK_MARK=y 352CONFIG_NF_CONNTRACK_MARK=y
344CONFIG_NF_CONNTRACK_EVENTS=y 353CONFIG_NF_CONNTRACK_EVENTS=y
354# CONFIG_NF_CT_PROTO_DCCP is not set
345# CONFIG_NF_CT_PROTO_SCTP is not set 355# CONFIG_NF_CT_PROTO_SCTP is not set
346# CONFIG_NF_CT_PROTO_UDPLITE is not set 356# CONFIG_NF_CT_PROTO_UDPLITE is not set
347# CONFIG_NF_CONNTRACK_AMANDA is not set 357# CONFIG_NF_CONNTRACK_AMANDA is not set
@@ -418,6 +428,7 @@ CONFIG_FW_LOADER=y
418# CONFIG_CONNECTOR is not set 428# CONFIG_CONNECTOR is not set
419# CONFIG_MTD is not set 429# CONFIG_MTD is not set
420CONFIG_OF_DEVICE=y 430CONFIG_OF_DEVICE=y
431CONFIG_OF_I2C=y
421# CONFIG_PARPORT is not set 432# CONFIG_PARPORT is not set
422CONFIG_BLK_DEV=y 433CONFIG_BLK_DEV=y
423# CONFIG_BLK_DEV_FD is not set 434# CONFIG_BLK_DEV_FD is not set
@@ -465,7 +476,6 @@ CONFIG_IDE_PROC_FS=y
465# 476#
466# IDE chipset support/bugfixes 477# IDE chipset support/bugfixes
467# 478#
468CONFIG_IDE_GENERIC=y
469# CONFIG_BLK_DEV_PLATFORM is not set 479# CONFIG_BLK_DEV_PLATFORM is not set
470CONFIG_BLK_DEV_IDEDMA_SFF=y 480CONFIG_BLK_DEV_IDEDMA_SFF=y
471 481
@@ -506,7 +516,7 @@ CONFIG_BLK_DEV_IDE_PMAC=y
506CONFIG_BLK_DEV_IDE_PMAC_ATA100FIRST=y 516CONFIG_BLK_DEV_IDE_PMAC_ATA100FIRST=y
507CONFIG_BLK_DEV_IDEDMA_PMAC=y 517CONFIG_BLK_DEV_IDEDMA_PMAC=y
508CONFIG_BLK_DEV_IDEDMA=y 518CONFIG_BLK_DEV_IDEDMA=y
509CONFIG_IDE_ARCH_OBSOLETE_INIT=y 519# CONFIG_BLK_DEV_HD_ONLY is not set
510# CONFIG_BLK_DEV_HD is not set 520# CONFIG_BLK_DEV_HD is not set
511 521
512# 522#
@@ -584,61 +594,10 @@ CONFIG_SCSI_LOWLEVEL=y
584# CONFIG_SCSI_SRP is not set 594# CONFIG_SCSI_SRP is not set
585CONFIG_ATA=y 595CONFIG_ATA=y
586# CONFIG_ATA_NONSTANDARD is not set 596# CONFIG_ATA_NONSTANDARD is not set
597CONFIG_SATA_PMP=y
587# CONFIG_SATA_AHCI is not set 598# CONFIG_SATA_AHCI is not set
588CONFIG_SATA_SVW=y
589# CONFIG_ATA_PIIX is not set
590# CONFIG_SATA_MV is not set
591# CONFIG_SATA_NV is not set
592# CONFIG_PDC_ADMA is not set
593# CONFIG_SATA_QSTOR is not set
594# CONFIG_SATA_PROMISE is not set
595# CONFIG_SATA_SX4 is not set
596# CONFIG_SATA_SIL is not set
597# CONFIG_SATA_SIL24 is not set 599# CONFIG_SATA_SIL24 is not set
598# CONFIG_SATA_SIS is not set 600# CONFIG_ATA_SFF is not set
599# CONFIG_SATA_ULI is not set
600# CONFIG_SATA_VIA is not set
601# CONFIG_SATA_VITESSE is not set
602# CONFIG_SATA_INIC162X is not set
603# CONFIG_PATA_ALI is not set
604# CONFIG_PATA_AMD is not set
605# CONFIG_PATA_ARTOP is not set
606# CONFIG_PATA_ATIIXP is not set
607# CONFIG_PATA_CMD640_PCI is not set
608# CONFIG_PATA_CMD64X is not set
609# CONFIG_PATA_CS5520 is not set
610# CONFIG_PATA_CS5530 is not set
611# CONFIG_PATA_CYPRESS is not set
612# CONFIG_PATA_EFAR is not set
613# CONFIG_ATA_GENERIC is not set
614# CONFIG_PATA_HPT366 is not set
615# CONFIG_PATA_HPT37X is not set
616# CONFIG_PATA_HPT3X2N is not set
617# CONFIG_PATA_HPT3X3 is not set
618# CONFIG_PATA_IT821X is not set
619# CONFIG_PATA_IT8213 is not set
620# CONFIG_PATA_JMICRON is not set
621# CONFIG_PATA_TRIFLEX is not set
622# CONFIG_PATA_MARVELL is not set
623# CONFIG_PATA_MPIIX is not set
624# CONFIG_PATA_OLDPIIX is not set
625# CONFIG_PATA_NETCELL is not set
626# CONFIG_PATA_NINJA32 is not set
627# CONFIG_PATA_NS87410 is not set
628# CONFIG_PATA_NS87415 is not set
629# CONFIG_PATA_OPTI is not set
630# CONFIG_PATA_OPTIDMA is not set
631# CONFIG_PATA_PDC_OLD is not set
632# CONFIG_PATA_RADISYS is not set
633# CONFIG_PATA_RZ1000 is not set
634# CONFIG_PATA_SC1200 is not set
635# CONFIG_PATA_SERVERWORKS is not set
636# CONFIG_PATA_PDC2027X is not set
637# CONFIG_PATA_SIL680 is not set
638# CONFIG_PATA_SIS is not set
639# CONFIG_PATA_VIA is not set
640# CONFIG_PATA_WINBOND is not set
641# CONFIG_PATA_PLATFORM is not set
642CONFIG_MD=y 601CONFIG_MD=y
643CONFIG_BLK_DEV_MD=y 602CONFIG_BLK_DEV_MD=y
644CONFIG_MD_LINEAR=y 603CONFIG_MD_LINEAR=y
@@ -740,7 +699,6 @@ CONFIG_E1000=y
740# CONFIG_SIS190 is not set 699# CONFIG_SIS190 is not set
741# CONFIG_SKGE is not set 700# CONFIG_SKGE is not set
742# CONFIG_SKY2 is not set 701# CONFIG_SKY2 is not set
743# CONFIG_SK98LIN is not set
744# CONFIG_VIA_VELOCITY is not set 702# CONFIG_VIA_VELOCITY is not set
745CONFIG_TIGON3=y 703CONFIG_TIGON3=y
746# CONFIG_BNX2 is not set 704# CONFIG_BNX2 is not set
@@ -755,10 +713,10 @@ CONFIG_NETDEV_10000=y
755# CONFIG_MYRI10GE is not set 713# CONFIG_MYRI10GE is not set
756# CONFIG_NETXEN_NIC is not set 714# CONFIG_NETXEN_NIC is not set
757# CONFIG_NIU is not set 715# CONFIG_NIU is not set
758# CONFIG_PASEMI_MAC is not set
759# CONFIG_MLX4_CORE is not set 716# CONFIG_MLX4_CORE is not set
760# CONFIG_TEHUTI is not set 717# CONFIG_TEHUTI is not set
761# CONFIG_BNX2X is not set 718# CONFIG_BNX2X is not set
719# CONFIG_SFC is not set
762CONFIG_TR=y 720CONFIG_TR=y
763CONFIG_IBMOL=y 721CONFIG_IBMOL=y
764# CONFIG_3C359 is not set 722# CONFIG_3C359 is not set
@@ -769,6 +727,7 @@ CONFIG_IBMOL=y
769# 727#
770# CONFIG_WLAN_PRE80211 is not set 728# CONFIG_WLAN_PRE80211 is not set
771# CONFIG_WLAN_80211 is not set 729# CONFIG_WLAN_80211 is not set
730# CONFIG_IWLWIFI_LEDS is not set
772 731
773# 732#
774# USB Network Adapters 733# USB Network Adapters
@@ -865,6 +824,7 @@ CONFIG_VT=y
865CONFIG_VT_CONSOLE=y 824CONFIG_VT_CONSOLE=y
866CONFIG_HW_CONSOLE=y 825CONFIG_HW_CONSOLE=y
867# CONFIG_VT_HW_CONSOLE_BINDING is not set 826# CONFIG_VT_HW_CONSOLE_BINDING is not set
827CONFIG_DEVKMEM=y
868# CONFIG_SERIAL_NONSTANDARD is not set 828# CONFIG_SERIAL_NONSTANDARD is not set
869# CONFIG_NOZOMI is not set 829# CONFIG_NOZOMI is not set
870 830
@@ -895,13 +855,7 @@ CONFIG_DEVPORT=y
895CONFIG_I2C=y 855CONFIG_I2C=y
896CONFIG_I2C_BOARDINFO=y 856CONFIG_I2C_BOARDINFO=y
897CONFIG_I2C_CHARDEV=y 857CONFIG_I2C_CHARDEV=y
898
899#
900# I2C Algorithms
901#
902CONFIG_I2C_ALGOBIT=y 858CONFIG_I2C_ALGOBIT=y
903# CONFIG_I2C_ALGOPCF is not set
904# CONFIG_I2C_ALGOPCA is not set
905 859
906# 860#
907# I2C Hardware Bus support 861# I2C Hardware Bus support
@@ -930,6 +884,7 @@ CONFIG_I2C_POWERMAC=y
930# CONFIG_I2C_VIA is not set 884# CONFIG_I2C_VIA is not set
931# CONFIG_I2C_VIAPRO is not set 885# CONFIG_I2C_VIAPRO is not set
932# CONFIG_I2C_VOODOO3 is not set 886# CONFIG_I2C_VOODOO3 is not set
887# CONFIG_I2C_PCA_PLATFORM is not set
933 888
934# 889#
935# Miscellaneous I2C Chip support 890# Miscellaneous I2C Chip support
@@ -939,19 +894,13 @@ CONFIG_I2C_POWERMAC=y
939# CONFIG_SENSORS_PCF8574 is not set 894# CONFIG_SENSORS_PCF8574 is not set
940# CONFIG_PCF8575 is not set 895# CONFIG_PCF8575 is not set
941# CONFIG_SENSORS_PCF8591 is not set 896# CONFIG_SENSORS_PCF8591 is not set
942# CONFIG_TPS65010 is not set
943# CONFIG_SENSORS_MAX6875 is not set 897# CONFIG_SENSORS_MAX6875 is not set
944# CONFIG_SENSORS_TSL2550 is not set 898# CONFIG_SENSORS_TSL2550 is not set
945# CONFIG_I2C_DEBUG_CORE is not set 899# CONFIG_I2C_DEBUG_CORE is not set
946# CONFIG_I2C_DEBUG_ALGO is not set 900# CONFIG_I2C_DEBUG_ALGO is not set
947# CONFIG_I2C_DEBUG_BUS is not set 901# CONFIG_I2C_DEBUG_BUS is not set
948# CONFIG_I2C_DEBUG_CHIP is not set 902# CONFIG_I2C_DEBUG_CHIP is not set
949
950#
951# SPI support
952#
953# CONFIG_SPI is not set 903# CONFIG_SPI is not set
954# CONFIG_SPI_MASTER is not set
955# CONFIG_W1 is not set 904# CONFIG_W1 is not set
956# CONFIG_POWER_SUPPLY is not set 905# CONFIG_POWER_SUPPLY is not set
957# CONFIG_HWMON is not set 906# CONFIG_HWMON is not set
@@ -968,12 +917,22 @@ CONFIG_SSB_POSSIBLE=y
968# Multifunction device drivers 917# Multifunction device drivers
969# 918#
970# CONFIG_MFD_SM501 is not set 919# CONFIG_MFD_SM501 is not set
920# CONFIG_HTC_PASIC3 is not set
971 921
972# 922#
973# Multimedia devices 923# Multimedia devices
974# 924#
925
926#
927# Multimedia core support
928#
975# CONFIG_VIDEO_DEV is not set 929# CONFIG_VIDEO_DEV is not set
976# CONFIG_DVB_CORE is not set 930# CONFIG_DVB_CORE is not set
931# CONFIG_VIDEO_MEDIA is not set
932
933#
934# Multimedia drivers
935#
977CONFIG_DAB=y 936CONFIG_DAB=y
978# CONFIG_USB_DABUSB is not set 937# CONFIG_USB_DABUSB is not set
979 938
@@ -995,8 +954,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
995# CONFIG_FB_SYS_FILLRECT is not set 954# CONFIG_FB_SYS_FILLRECT is not set
996# CONFIG_FB_SYS_COPYAREA is not set 955# CONFIG_FB_SYS_COPYAREA is not set
997# CONFIG_FB_SYS_IMAGEBLIT is not set 956# CONFIG_FB_SYS_IMAGEBLIT is not set
957# CONFIG_FB_FOREIGN_ENDIAN is not set
998# CONFIG_FB_SYS_FOPS is not set 958# CONFIG_FB_SYS_FOPS is not set
999CONFIG_FB_DEFERRED_IO=y
1000# CONFIG_FB_SVGALIB is not set 959# CONFIG_FB_SVGALIB is not set
1001CONFIG_FB_MACMODES=y 960CONFIG_FB_MACMODES=y
1002CONFIG_FB_BACKLIGHT=y 961CONFIG_FB_BACKLIGHT=y
@@ -1112,6 +1071,7 @@ CONFIG_SND_VERBOSE_PROCFS=y
1112# CONFIG_SND_AU8810 is not set 1071# CONFIG_SND_AU8810 is not set
1113# CONFIG_SND_AU8820 is not set 1072# CONFIG_SND_AU8820 is not set
1114# CONFIG_SND_AU8830 is not set 1073# CONFIG_SND_AU8830 is not set
1074# CONFIG_SND_AW2 is not set
1115# CONFIG_SND_AZT3328 is not set 1075# CONFIG_SND_AZT3328 is not set
1116# CONFIG_SND_BT87X is not set 1076# CONFIG_SND_BT87X is not set
1117# CONFIG_SND_CA0106 is not set 1077# CONFIG_SND_CA0106 is not set
@@ -1198,11 +1158,11 @@ CONFIG_SND_USB_AUDIO=m
1198# CONFIG_SND_SOC is not set 1158# CONFIG_SND_SOC is not set
1199 1159
1200# 1160#
1201# SoC Audio support for SuperH 1161# ALSA SoC audio for Freescale SOCs
1202# 1162#
1203 1163
1204# 1164#
1205# ALSA SoC audio for Freescale SOCs 1165# SoC Audio for the Texas Instruments OMAP
1206# 1166#
1207 1167
1208# 1168#
@@ -1222,6 +1182,7 @@ CONFIG_USB_HID=y
1222CONFIG_HID_FF=y 1182CONFIG_HID_FF=y
1223CONFIG_HID_PID=y 1183CONFIG_HID_PID=y
1224CONFIG_LOGITECH_FF=y 1184CONFIG_LOGITECH_FF=y
1185# CONFIG_LOGIRUMBLEPAD2_FF is not set
1225# CONFIG_PANTHERLORD_FF is not set 1186# CONFIG_PANTHERLORD_FF is not set
1226CONFIG_THRUSTMASTER_FF=y 1187CONFIG_THRUSTMASTER_FF=y
1227# CONFIG_ZEROPLUS_FF is not set 1188# CONFIG_ZEROPLUS_FF is not set
@@ -1245,11 +1206,13 @@ CONFIG_USB_DEVICE_CLASS=y
1245# 1206#
1246# USB Host Controller Drivers 1207# USB Host Controller Drivers
1247# 1208#
1209# CONFIG_USB_C67X00_HCD is not set
1248CONFIG_USB_EHCI_HCD=y 1210CONFIG_USB_EHCI_HCD=y
1249# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1211# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1250# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1212# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1251# CONFIG_USB_EHCI_HCD_PPC_OF is not set 1213# CONFIG_USB_EHCI_HCD_PPC_OF is not set
1252# CONFIG_USB_ISP116X_HCD is not set 1214# CONFIG_USB_ISP116X_HCD is not set
1215# CONFIG_USB_ISP1760_HCD is not set
1253CONFIG_USB_OHCI_HCD=y 1216CONFIG_USB_OHCI_HCD=y
1254CONFIG_USB_OHCI_HCD_PPC_OF=y 1217CONFIG_USB_OHCI_HCD_PPC_OF=y
1255CONFIG_USB_OHCI_HCD_PPC_OF_BE=y 1218CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
@@ -1288,6 +1251,7 @@ CONFIG_USB_STORAGE_JUMPSHOT=y
1288# CONFIG_USB_STORAGE_ALAUDA is not set 1251# CONFIG_USB_STORAGE_ALAUDA is not set
1289# CONFIG_USB_STORAGE_ONETOUCH is not set 1252# CONFIG_USB_STORAGE_ONETOUCH is not set
1290# CONFIG_USB_STORAGE_KARMA is not set 1253# CONFIG_USB_STORAGE_KARMA is not set
1254# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
1291# CONFIG_USB_LIBUSUAL is not set 1255# CONFIG_USB_LIBUSUAL is not set
1292 1256
1293# 1257#
@@ -1342,9 +1306,11 @@ CONFIG_USB_SERIAL_KOBIL_SCT=m
1342CONFIG_USB_SERIAL_MCT_U232=m 1306CONFIG_USB_SERIAL_MCT_U232=m
1343# CONFIG_USB_SERIAL_MOS7720 is not set 1307# CONFIG_USB_SERIAL_MOS7720 is not set
1344# CONFIG_USB_SERIAL_MOS7840 is not set 1308# CONFIG_USB_SERIAL_MOS7840 is not set
1309# CONFIG_USB_SERIAL_MOTOROLA is not set
1345# CONFIG_USB_SERIAL_NAVMAN is not set 1310# CONFIG_USB_SERIAL_NAVMAN is not set
1346CONFIG_USB_SERIAL_PL2303=m 1311CONFIG_USB_SERIAL_PL2303=m
1347# CONFIG_USB_SERIAL_OTI6858 is not set 1312# CONFIG_USB_SERIAL_OTI6858 is not set
1313# CONFIG_USB_SERIAL_SPCP8X5 is not set
1348# CONFIG_USB_SERIAL_HP4X is not set 1314# CONFIG_USB_SERIAL_HP4X is not set
1349CONFIG_USB_SERIAL_SAFE=m 1315CONFIG_USB_SERIAL_SAFE=m
1350CONFIG_USB_SERIAL_SAFE_PADDED=y 1316CONFIG_USB_SERIAL_SAFE_PADDED=y
@@ -1383,14 +1349,11 @@ CONFIG_USB_APPLEDISPLAY=m
1383# CONFIG_MMC is not set 1349# CONFIG_MMC is not set
1384# CONFIG_MEMSTICK is not set 1350# CONFIG_MEMSTICK is not set
1385# CONFIG_NEW_LEDS is not set 1351# CONFIG_NEW_LEDS is not set
1352# CONFIG_ACCESSIBILITY is not set
1386# CONFIG_INFINIBAND is not set 1353# CONFIG_INFINIBAND is not set
1387# CONFIG_EDAC is not set 1354# CONFIG_EDAC is not set
1388# CONFIG_RTC_CLASS is not set 1355# CONFIG_RTC_CLASS is not set
1389# CONFIG_DMADEVICES is not set 1356# CONFIG_DMADEVICES is not set
1390
1391#
1392# Userspace I/O
1393#
1394# CONFIG_UIO is not set 1357# CONFIG_UIO is not set
1395 1358
1396# 1359#
@@ -1420,9 +1383,9 @@ CONFIG_REISERFS_FS_SECURITY=y
1420CONFIG_FS_POSIX_ACL=y 1383CONFIG_FS_POSIX_ACL=y
1421CONFIG_XFS_FS=m 1384CONFIG_XFS_FS=m
1422# CONFIG_XFS_QUOTA is not set 1385# CONFIG_XFS_QUOTA is not set
1423CONFIG_XFS_SECURITY=y
1424CONFIG_XFS_POSIX_ACL=y 1386CONFIG_XFS_POSIX_ACL=y
1425# CONFIG_XFS_RT is not set 1387# CONFIG_XFS_RT is not set
1388# CONFIG_XFS_DEBUG is not set
1426# CONFIG_GFS2_FS is not set 1389# CONFIG_GFS2_FS is not set
1427# CONFIG_OCFS2_FS is not set 1390# CONFIG_OCFS2_FS is not set
1428CONFIG_DNOTIFY=y 1391CONFIG_DNOTIFY=y
@@ -1488,13 +1451,11 @@ CONFIG_NFS_FS=y
1488CONFIG_NFS_V3=y 1451CONFIG_NFS_V3=y
1489CONFIG_NFS_V3_ACL=y 1452CONFIG_NFS_V3_ACL=y
1490CONFIG_NFS_V4=y 1453CONFIG_NFS_V4=y
1491# CONFIG_NFS_DIRECTIO is not set
1492CONFIG_NFSD=y 1454CONFIG_NFSD=y
1493CONFIG_NFSD_V2_ACL=y 1455CONFIG_NFSD_V2_ACL=y
1494CONFIG_NFSD_V3=y 1456CONFIG_NFSD_V3=y
1495CONFIG_NFSD_V3_ACL=y 1457CONFIG_NFSD_V3_ACL=y
1496CONFIG_NFSD_V4=y 1458CONFIG_NFSD_V4=y
1497CONFIG_NFSD_TCP=y
1498CONFIG_LOCKD=y 1459CONFIG_LOCKD=y
1499CONFIG_LOCKD_V4=y 1460CONFIG_LOCKD_V4=y
1500CONFIG_EXPORTFS=y 1461CONFIG_EXPORTFS=y
@@ -1583,9 +1544,10 @@ CONFIG_NLS_UTF8=y
1583# Library routines 1544# Library routines
1584# 1545#
1585CONFIG_BITREVERSE=y 1546CONFIG_BITREVERSE=y
1547# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1586CONFIG_CRC_CCITT=m 1548CONFIG_CRC_CCITT=m
1587# CONFIG_CRC16 is not set 1549# CONFIG_CRC16 is not set
1588# CONFIG_CRC_ITU_T is not set 1550CONFIG_CRC_ITU_T=m
1589CONFIG_CRC32=y 1551CONFIG_CRC32=y
1590# CONFIG_CRC7 is not set 1552# CONFIG_CRC7 is not set
1591CONFIG_LIBCRC32C=m 1553CONFIG_LIBCRC32C=m
@@ -1603,6 +1565,7 @@ CONFIG_HAVE_LMB=y
1603# CONFIG_PRINTK_TIME is not set 1565# CONFIG_PRINTK_TIME is not set
1604CONFIG_ENABLE_WARN_DEPRECATED=y 1566CONFIG_ENABLE_WARN_DEPRECATED=y
1605CONFIG_ENABLE_MUST_CHECK=y 1567CONFIG_ENABLE_MUST_CHECK=y
1568CONFIG_FRAME_WARN=2048
1606CONFIG_MAGIC_SYSRQ=y 1569CONFIG_MAGIC_SYSRQ=y
1607# CONFIG_UNUSED_SYMBOLS is not set 1570# CONFIG_UNUSED_SYMBOLS is not set
1608CONFIG_DEBUG_FS=y 1571CONFIG_DEBUG_FS=y
@@ -1613,18 +1576,23 @@ CONFIG_DETECT_SOFTLOCKUP=y
1613CONFIG_SCHED_DEBUG=y 1576CONFIG_SCHED_DEBUG=y
1614# CONFIG_SCHEDSTATS is not set 1577# CONFIG_SCHEDSTATS is not set
1615# CONFIG_TIMER_STATS is not set 1578# CONFIG_TIMER_STATS is not set
1579# CONFIG_DEBUG_OBJECTS is not set
1616# CONFIG_SLUB_DEBUG_ON is not set 1580# CONFIG_SLUB_DEBUG_ON is not set
1617# CONFIG_SLUB_STATS is not set 1581# CONFIG_SLUB_STATS is not set
1618# CONFIG_DEBUG_RT_MUTEXES is not set 1582# CONFIG_DEBUG_RT_MUTEXES is not set
1619# CONFIG_RT_MUTEX_TESTER is not set 1583# CONFIG_RT_MUTEX_TESTER is not set
1620# CONFIG_DEBUG_SPINLOCK is not set 1584# CONFIG_DEBUG_SPINLOCK is not set
1621CONFIG_DEBUG_MUTEXES=y 1585CONFIG_DEBUG_MUTEXES=y
1586# CONFIG_DEBUG_LOCK_ALLOC is not set
1587# CONFIG_PROVE_LOCKING is not set
1588# CONFIG_LOCK_STAT is not set
1622# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1589# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1623# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1590# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1624# CONFIG_DEBUG_KOBJECT is not set 1591# CONFIG_DEBUG_KOBJECT is not set
1625CONFIG_DEBUG_BUGVERBOSE=y 1592CONFIG_DEBUG_BUGVERBOSE=y
1626# CONFIG_DEBUG_INFO is not set 1593# CONFIG_DEBUG_INFO is not set
1627# CONFIG_DEBUG_VM is not set 1594# CONFIG_DEBUG_VM is not set
1595# CONFIG_DEBUG_WRITECOUNT is not set
1628# CONFIG_DEBUG_LIST is not set 1596# CONFIG_DEBUG_LIST is not set
1629# CONFIG_DEBUG_SG is not set 1597# CONFIG_DEBUG_SG is not set
1630# CONFIG_BOOT_PRINTK_DELAY is not set 1598# CONFIG_BOOT_PRINTK_DELAY is not set
@@ -1648,53 +1616,83 @@ CONFIG_BOOTX_TEXT=y
1648# CONFIG_SECURITY is not set 1616# CONFIG_SECURITY is not set
1649# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1617# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1650CONFIG_CRYPTO=y 1618CONFIG_CRYPTO=y
1619
1620#
1621# Crypto core or helper
1622#
1651CONFIG_CRYPTO_ALGAPI=y 1623CONFIG_CRYPTO_ALGAPI=y
1652CONFIG_CRYPTO_AEAD=m 1624CONFIG_CRYPTO_AEAD=m
1653CONFIG_CRYPTO_BLKCIPHER=y 1625CONFIG_CRYPTO_BLKCIPHER=y
1654# CONFIG_CRYPTO_SEQIV is not set
1655CONFIG_CRYPTO_HASH=y 1626CONFIG_CRYPTO_HASH=y
1656CONFIG_CRYPTO_MANAGER=y 1627CONFIG_CRYPTO_MANAGER=y
1628# CONFIG_CRYPTO_GF128MUL is not set
1629CONFIG_CRYPTO_NULL=m
1630# CONFIG_CRYPTO_CRYPTD is not set
1631CONFIG_CRYPTO_AUTHENC=m
1632CONFIG_CRYPTO_TEST=m
1633
1634#
1635# Authenticated Encryption with Associated Data
1636#
1637# CONFIG_CRYPTO_CCM is not set
1638# CONFIG_CRYPTO_GCM is not set
1639# CONFIG_CRYPTO_SEQIV is not set
1640
1641#
1642# Block modes
1643#
1644CONFIG_CRYPTO_CBC=y
1645# CONFIG_CRYPTO_CTR is not set
1646# CONFIG_CRYPTO_CTS is not set
1647CONFIG_CRYPTO_ECB=m
1648# CONFIG_CRYPTO_LRW is not set
1649CONFIG_CRYPTO_PCBC=m
1650# CONFIG_CRYPTO_XTS is not set
1651
1652#
1653# Hash modes
1654#
1657CONFIG_CRYPTO_HMAC=y 1655CONFIG_CRYPTO_HMAC=y
1658# CONFIG_CRYPTO_XCBC is not set 1656# CONFIG_CRYPTO_XCBC is not set
1659CONFIG_CRYPTO_NULL=m 1657
1658#
1659# Digest
1660#
1661CONFIG_CRYPTO_CRC32C=m
1660CONFIG_CRYPTO_MD4=m 1662CONFIG_CRYPTO_MD4=m
1661CONFIG_CRYPTO_MD5=y 1663CONFIG_CRYPTO_MD5=y
1664CONFIG_CRYPTO_MICHAEL_MIC=m
1662CONFIG_CRYPTO_SHA1=m 1665CONFIG_CRYPTO_SHA1=m
1663CONFIG_CRYPTO_SHA256=m 1666CONFIG_CRYPTO_SHA256=m
1664CONFIG_CRYPTO_SHA512=m 1667CONFIG_CRYPTO_SHA512=m
1665CONFIG_CRYPTO_WP512=m
1666# CONFIG_CRYPTO_TGR192 is not set 1668# CONFIG_CRYPTO_TGR192 is not set
1667# CONFIG_CRYPTO_GF128MUL is not set 1669CONFIG_CRYPTO_WP512=m
1668CONFIG_CRYPTO_ECB=m 1670
1669CONFIG_CRYPTO_CBC=y 1671#
1670CONFIG_CRYPTO_PCBC=m 1672# Ciphers
1671# CONFIG_CRYPTO_LRW is not set 1673#
1672# CONFIG_CRYPTO_XTS is not set
1673# CONFIG_CRYPTO_CTR is not set
1674# CONFIG_CRYPTO_GCM is not set
1675# CONFIG_CRYPTO_CCM is not set
1676# CONFIG_CRYPTO_CRYPTD is not set
1677CONFIG_CRYPTO_DES=y
1678# CONFIG_CRYPTO_FCRYPT is not set
1679CONFIG_CRYPTO_BLOWFISH=m
1680CONFIG_CRYPTO_TWOFISH=m
1681CONFIG_CRYPTO_TWOFISH_COMMON=m
1682CONFIG_CRYPTO_SERPENT=m
1683CONFIG_CRYPTO_AES=m 1674CONFIG_CRYPTO_AES=m
1675CONFIG_CRYPTO_ANUBIS=m
1676CONFIG_CRYPTO_ARC4=m
1677CONFIG_CRYPTO_BLOWFISH=m
1678# CONFIG_CRYPTO_CAMELLIA is not set
1684CONFIG_CRYPTO_CAST5=m 1679CONFIG_CRYPTO_CAST5=m
1685CONFIG_CRYPTO_CAST6=m 1680CONFIG_CRYPTO_CAST6=m
1686CONFIG_CRYPTO_TEA=m 1681CONFIG_CRYPTO_DES=y
1687CONFIG_CRYPTO_ARC4=m 1682# CONFIG_CRYPTO_FCRYPT is not set
1688CONFIG_CRYPTO_KHAZAD=m 1683CONFIG_CRYPTO_KHAZAD=m
1689CONFIG_CRYPTO_ANUBIS=m
1690# CONFIG_CRYPTO_SEED is not set
1691# CONFIG_CRYPTO_SALSA20 is not set 1684# CONFIG_CRYPTO_SALSA20 is not set
1685# CONFIG_CRYPTO_SEED is not set
1686CONFIG_CRYPTO_SERPENT=m
1687CONFIG_CRYPTO_TEA=m
1688CONFIG_CRYPTO_TWOFISH=m
1689CONFIG_CRYPTO_TWOFISH_COMMON=m
1690
1691#
1692# Compression
1693#
1692CONFIG_CRYPTO_DEFLATE=m 1694CONFIG_CRYPTO_DEFLATE=m
1693CONFIG_CRYPTO_MICHAEL_MIC=m
1694CONFIG_CRYPTO_CRC32C=m
1695# CONFIG_CRYPTO_CAMELLIA is not set
1696CONFIG_CRYPTO_TEST=m
1697CONFIG_CRYPTO_AUTHENC=m
1698# CONFIG_CRYPTO_LZO is not set 1695# CONFIG_CRYPTO_LZO is not set
1699# CONFIG_CRYPTO_HW is not set 1696# CONFIG_CRYPTO_HW is not set
1700# CONFIG_PPC_CLOCK is not set 1697# CONFIG_PPC_CLOCK is not set
1698# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/iseries_defconfig b/arch/powerpc/configs/iseries_defconfig
index b3128fb7ce7e..63f0bdb6340d 100644
--- a/arch/powerpc/configs/iseries_defconfig
+++ b/arch/powerpc/configs/iseries_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.25-rc6 3# Linux kernel version: 2.6.26-rc3
4# Thu Mar 27 13:55:45 2008 4# Tue May 20 20:01:36 2008
5# 5#
6CONFIG_PPC64=y 6CONFIG_PPC64=y
7 7
@@ -30,6 +30,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
30CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_HAVE_SETUP_PER_CPU_AREA=y 31CONFIG_HAVE_SETUP_PER_CPU_AREA=y
32CONFIG_IRQ_PER_CPU=y 32CONFIG_IRQ_PER_CPU=y
33CONFIG_STACKTRACE_SUPPORT=y
34CONFIG_TRACE_IRQFLAGS_SUPPORT=y
35CONFIG_LOCKDEP_SUPPORT=y
33CONFIG_RWSEM_XCHGADD_ALGORITHM=y 36CONFIG_RWSEM_XCHGADD_ALGORITHM=y
34CONFIG_ARCH_HAS_ILOG2_U32=y 37CONFIG_ARCH_HAS_ILOG2_U32=y
35CONFIG_ARCH_HAS_ILOG2_U64=y 38CONFIG_ARCH_HAS_ILOG2_U64=y
@@ -91,6 +94,7 @@ CONFIG_CC_OPTIMIZE_FOR_SIZE=y
91CONFIG_SYSCTL=y 94CONFIG_SYSCTL=y
92# CONFIG_EMBEDDED is not set 95# CONFIG_EMBEDDED is not set
93CONFIG_SYSCTL_SYSCALL=y 96CONFIG_SYSCTL_SYSCALL=y
97CONFIG_SYSCTL_SYSCALL_CHECK=y
94CONFIG_KALLSYMS=y 98CONFIG_KALLSYMS=y
95# CONFIG_KALLSYMS_ALL is not set 99# CONFIG_KALLSYMS_ALL is not set
96# CONFIG_KALLSYMS_EXTRA_PASS is not set 100# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -118,12 +122,14 @@ CONFIG_HAVE_OPROFILE=y
118# CONFIG_KPROBES is not set 122# CONFIG_KPROBES is not set
119CONFIG_HAVE_KPROBES=y 123CONFIG_HAVE_KPROBES=y
120CONFIG_HAVE_KRETPROBES=y 124CONFIG_HAVE_KRETPROBES=y
125# CONFIG_HAVE_DMA_ATTRS is not set
121CONFIG_PROC_PAGE_MONITOR=y 126CONFIG_PROC_PAGE_MONITOR=y
122CONFIG_SLABINFO=y 127CONFIG_SLABINFO=y
123CONFIG_RT_MUTEXES=y 128CONFIG_RT_MUTEXES=y
124# CONFIG_TINY_SHMEM is not set 129# CONFIG_TINY_SHMEM is not set
125CONFIG_BASE_SMALL=0 130CONFIG_BASE_SMALL=0
126CONFIG_MODULES=y 131CONFIG_MODULES=y
132# CONFIG_MODULE_FORCE_LOAD is not set
127CONFIG_MODULE_UNLOAD=y 133CONFIG_MODULE_UNLOAD=y
128# CONFIG_MODULE_FORCE_UNLOAD is not set 134# CONFIG_MODULE_FORCE_UNLOAD is not set
129CONFIG_MODVERSIONS=y 135CONFIG_MODVERSIONS=y
@@ -172,11 +178,11 @@ CONFIG_VIOPATH=y
172# CONFIG_PPC_PMAC is not set 178# CONFIG_PPC_PMAC is not set
173# CONFIG_PPC_MAPLE is not set 179# CONFIG_PPC_MAPLE is not set
174# CONFIG_PPC_PASEMI is not set 180# CONFIG_PPC_PASEMI is not set
175# CONFIG_PPC_CELLEB is not set
176# CONFIG_PPC_PS3 is not set 181# CONFIG_PPC_PS3 is not set
177# CONFIG_PPC_CELL is not set 182# CONFIG_PPC_CELL is not set
178# CONFIG_PPC_CELL_NATIVE is not set 183# CONFIG_PPC_CELL_NATIVE is not set
179# CONFIG_PPC_IBM_CELL_BLADE is not set 184# CONFIG_PPC_IBM_CELL_BLADE is not set
185# CONFIG_PPC_CELLEB is not set
180# CONFIG_PQ2ADS is not set 186# CONFIG_PQ2ADS is not set
181# CONFIG_IPIC is not set 187# CONFIG_IPIC is not set
182# CONFIG_MPIC is not set 188# CONFIG_MPIC is not set
@@ -212,7 +218,6 @@ CONFIG_PREEMPT_NONE=y
212CONFIG_BINFMT_ELF=y 218CONFIG_BINFMT_ELF=y
213CONFIG_COMPAT_BINFMT_ELF=y 219CONFIG_COMPAT_BINFMT_ELF=y
214# CONFIG_BINFMT_MISC is not set 220# CONFIG_BINFMT_MISC is not set
215CONFIG_FORCE_MAX_ZONEORDER=13
216CONFIG_IOMMU_VMERGE=y 221CONFIG_IOMMU_VMERGE=y
217CONFIG_IOMMU_HELPER=y 222CONFIG_IOMMU_HELPER=y
218CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 223CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
@@ -234,12 +239,14 @@ CONFIG_FLATMEM=y
234CONFIG_FLAT_NODE_MEM_MAP=y 239CONFIG_FLAT_NODE_MEM_MAP=y
235# CONFIG_SPARSEMEM_STATIC is not set 240# CONFIG_SPARSEMEM_STATIC is not set
236CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y 241CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
242CONFIG_PAGEFLAGS_EXTENDED=y
237CONFIG_SPLIT_PTLOCK_CPUS=4 243CONFIG_SPLIT_PTLOCK_CPUS=4
238CONFIG_RESOURCES_64BIT=y 244CONFIG_RESOURCES_64BIT=y
239CONFIG_ZONE_DMA_FLAG=1 245CONFIG_ZONE_DMA_FLAG=1
240CONFIG_BOUNCE=y 246CONFIG_BOUNCE=y
241# CONFIG_PPC_HAS_HASH_64K is not set 247# CONFIG_PPC_HAS_HASH_64K is not set
242# CONFIG_PPC_64K_PAGES is not set 248# CONFIG_PPC_64K_PAGES is not set
249CONFIG_FORCE_MAX_ZONEORDER=13
243# CONFIG_SCHED_SMT is not set 250# CONFIG_SCHED_SMT is not set
244CONFIG_PROC_DEVICETREE=y 251CONFIG_PROC_DEVICETREE=y
245# CONFIG_CMDLINE_BOOL is not set 252# CONFIG_CMDLINE_BOOL is not set
@@ -263,7 +270,10 @@ CONFIG_ARCH_SUPPORTS_MSI=y
263# CONFIG_PCI_DEBUG is not set 270# CONFIG_PCI_DEBUG is not set
264# CONFIG_PCCARD is not set 271# CONFIG_PCCARD is not set
265# CONFIG_HOTPLUG_PCI is not set 272# CONFIG_HOTPLUG_PCI is not set
273# CONFIG_HAS_RAPIDIO is not set
274CONFIG_PAGE_OFFSET=0xc000000000000000
266CONFIG_KERNEL_START=0xc000000000000000 275CONFIG_KERNEL_START=0xc000000000000000
276CONFIG_PHYSICAL_START=0x00000000
267 277
268# 278#
269# Networking 279# Networking
@@ -310,8 +320,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
310# CONFIG_TCP_MD5SIG is not set 320# CONFIG_TCP_MD5SIG is not set
311# CONFIG_IP_VS is not set 321# CONFIG_IP_VS is not set
312# CONFIG_IPV6 is not set 322# CONFIG_IPV6 is not set
313# CONFIG_INET6_XFRM_TUNNEL is not set
314# CONFIG_INET6_TUNNEL is not set
315# CONFIG_NETWORK_SECMARK is not set 323# CONFIG_NETWORK_SECMARK is not set
316CONFIG_NETFILTER=y 324CONFIG_NETFILTER=y
317# CONFIG_NETFILTER_DEBUG is not set 325# CONFIG_NETFILTER_DEBUG is not set
@@ -327,6 +335,7 @@ CONFIG_NF_CONNTRACK=m
327# CONFIG_NF_CT_ACCT is not set 335# CONFIG_NF_CT_ACCT is not set
328CONFIG_NF_CONNTRACK_MARK=y 336CONFIG_NF_CONNTRACK_MARK=y
329CONFIG_NF_CONNTRACK_EVENTS=y 337CONFIG_NF_CONNTRACK_EVENTS=y
338# CONFIG_NF_CT_PROTO_DCCP is not set
330# CONFIG_NF_CT_PROTO_SCTP is not set 339# CONFIG_NF_CT_PROTO_SCTP is not set
331# CONFIG_NF_CT_PROTO_UDPLITE is not set 340# CONFIG_NF_CT_PROTO_UDPLITE is not set
332# CONFIG_NF_CONNTRACK_AMANDA is not set 341# CONFIG_NF_CONNTRACK_AMANDA is not set
@@ -631,7 +640,6 @@ CONFIG_MII=y
631# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 640# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
632CONFIG_NET_PCI=y 641CONFIG_NET_PCI=y
633CONFIG_PCNET32=y 642CONFIG_PCNET32=y
634CONFIG_PCNET32_NAPI=y
635# CONFIG_AMD8111_ETH is not set 643# CONFIG_AMD8111_ETH is not set
636# CONFIG_ADAPTEC_STARFIRE is not set 644# CONFIG_ADAPTEC_STARFIRE is not set
637# CONFIG_B44 is not set 645# CONFIG_B44 is not set
@@ -667,7 +675,6 @@ CONFIG_E1000=m
667# CONFIG_SIS190 is not set 675# CONFIG_SIS190 is not set
668# CONFIG_SKGE is not set 676# CONFIG_SKGE is not set
669# CONFIG_SKY2 is not set 677# CONFIG_SKY2 is not set
670# CONFIG_SK98LIN is not set
671# CONFIG_VIA_VELOCITY is not set 678# CONFIG_VIA_VELOCITY is not set
672# CONFIG_TIGON3 is not set 679# CONFIG_TIGON3 is not set
673# CONFIG_BNX2 is not set 680# CONFIG_BNX2 is not set
@@ -682,10 +689,10 @@ CONFIG_NETDEV_10000=y
682# CONFIG_MYRI10GE is not set 689# CONFIG_MYRI10GE is not set
683# CONFIG_NETXEN_NIC is not set 690# CONFIG_NETXEN_NIC is not set
684# CONFIG_NIU is not set 691# CONFIG_NIU is not set
685# CONFIG_PASEMI_MAC is not set
686# CONFIG_MLX4_CORE is not set 692# CONFIG_MLX4_CORE is not set
687# CONFIG_TEHUTI is not set 693# CONFIG_TEHUTI is not set
688# CONFIG_BNX2X is not set 694# CONFIG_BNX2X is not set
695# CONFIG_SFC is not set
689CONFIG_TR=y 696CONFIG_TR=y
690CONFIG_IBMOL=y 697CONFIG_IBMOL=y
691# CONFIG_3C359 is not set 698# CONFIG_3C359 is not set
@@ -696,6 +703,7 @@ CONFIG_IBMOL=y
696# 703#
697# CONFIG_WLAN_PRE80211 is not set 704# CONFIG_WLAN_PRE80211 is not set
698# CONFIG_WLAN_80211 is not set 705# CONFIG_WLAN_80211 is not set
706# CONFIG_IWLWIFI_LEDS is not set
699# CONFIG_WAN is not set 707# CONFIG_WAN is not set
700CONFIG_ISERIES_VETH=y 708CONFIG_ISERIES_VETH=y
701# CONFIG_FDDI is not set 709# CONFIG_FDDI is not set
@@ -762,6 +770,7 @@ CONFIG_VT=y
762CONFIG_VT_CONSOLE=y 770CONFIG_VT_CONSOLE=y
763CONFIG_HW_CONSOLE=y 771CONFIG_HW_CONSOLE=y
764# CONFIG_VT_HW_CONSOLE_BINDING is not set 772# CONFIG_VT_HW_CONSOLE_BINDING is not set
773CONFIG_DEVKMEM=y
765# CONFIG_SERIAL_NONSTANDARD is not set 774# CONFIG_SERIAL_NONSTANDARD is not set
766# CONFIG_NOZOMI is not set 775# CONFIG_NOZOMI is not set
767 776
@@ -793,12 +802,7 @@ CONFIG_MAX_RAW_DEVS=256
793# CONFIG_TCG_TPM is not set 802# CONFIG_TCG_TPM is not set
794CONFIG_DEVPORT=y 803CONFIG_DEVPORT=y
795# CONFIG_I2C is not set 804# CONFIG_I2C is not set
796
797#
798# SPI support
799#
800# CONFIG_SPI is not set 805# CONFIG_SPI is not set
801# CONFIG_SPI_MASTER is not set
802# CONFIG_W1 is not set 806# CONFIG_W1 is not set
803# CONFIG_POWER_SUPPLY is not set 807# CONFIG_POWER_SUPPLY is not set
804# CONFIG_HWMON is not set 808# CONFIG_HWMON is not set
@@ -815,12 +819,22 @@ CONFIG_SSB_POSSIBLE=y
815# Multifunction device drivers 819# Multifunction device drivers
816# 820#
817# CONFIG_MFD_SM501 is not set 821# CONFIG_MFD_SM501 is not set
822# CONFIG_HTC_PASIC3 is not set
818 823
819# 824#
820# Multimedia devices 825# Multimedia devices
821# 826#
827
828#
829# Multimedia core support
830#
822# CONFIG_VIDEO_DEV is not set 831# CONFIG_VIDEO_DEV is not set
823# CONFIG_DVB_CORE is not set 832# CONFIG_DVB_CORE is not set
833# CONFIG_VIDEO_MEDIA is not set
834
835#
836# Multimedia drivers
837#
824# CONFIG_DAB is not set 838# CONFIG_DAB is not set
825 839
826# 840#
@@ -854,14 +868,11 @@ CONFIG_DUMMY_CONSOLE=y
854# CONFIG_MMC is not set 868# CONFIG_MMC is not set
855# CONFIG_MEMSTICK is not set 869# CONFIG_MEMSTICK is not set
856# CONFIG_NEW_LEDS is not set 870# CONFIG_NEW_LEDS is not set
871# CONFIG_ACCESSIBILITY is not set
857# CONFIG_INFINIBAND is not set 872# CONFIG_INFINIBAND is not set
858# CONFIG_EDAC is not set 873# CONFIG_EDAC is not set
859# CONFIG_RTC_CLASS is not set 874# CONFIG_RTC_CLASS is not set
860# CONFIG_DMADEVICES is not set 875# CONFIG_DMADEVICES is not set
861
862#
863# Userspace I/O
864#
865# CONFIG_UIO is not set 876# CONFIG_UIO is not set
866 877
867# 878#
@@ -895,9 +906,9 @@ CONFIG_JFS_SECURITY=y
895CONFIG_FS_POSIX_ACL=y 906CONFIG_FS_POSIX_ACL=y
896CONFIG_XFS_FS=m 907CONFIG_XFS_FS=m
897# CONFIG_XFS_QUOTA is not set 908# CONFIG_XFS_QUOTA is not set
898CONFIG_XFS_SECURITY=y
899CONFIG_XFS_POSIX_ACL=y 909CONFIG_XFS_POSIX_ACL=y
900# CONFIG_XFS_RT is not set 910# CONFIG_XFS_RT is not set
911# CONFIG_XFS_DEBUG is not set
901CONFIG_GFS2_FS=m 912CONFIG_GFS2_FS=m
902CONFIG_GFS2_FS_LOCKING_NOLOCK=m 913CONFIG_GFS2_FS_LOCKING_NOLOCK=m
903CONFIG_GFS2_FS_LOCKING_DLM=m 914CONFIG_GFS2_FS_LOCKING_DLM=m
@@ -966,13 +977,11 @@ CONFIG_NFS_FS=y
966CONFIG_NFS_V3=y 977CONFIG_NFS_V3=y
967CONFIG_NFS_V3_ACL=y 978CONFIG_NFS_V3_ACL=y
968CONFIG_NFS_V4=y 979CONFIG_NFS_V4=y
969# CONFIG_NFS_DIRECTIO is not set
970CONFIG_NFSD=m 980CONFIG_NFSD=m
971CONFIG_NFSD_V2_ACL=y 981CONFIG_NFSD_V2_ACL=y
972CONFIG_NFSD_V3=y 982CONFIG_NFSD_V3=y
973CONFIG_NFSD_V3_ACL=y 983CONFIG_NFSD_V3_ACL=y
974CONFIG_NFSD_V4=y 984CONFIG_NFSD_V4=y
975CONFIG_NFSD_TCP=y
976CONFIG_LOCKD=y 985CONFIG_LOCKD=y
977CONFIG_LOCKD_V4=y 986CONFIG_LOCKD_V4=y
978CONFIG_EXPORTFS=m 987CONFIG_EXPORTFS=m
@@ -1047,9 +1056,10 @@ CONFIG_DLM=m
1047# Library routines 1056# Library routines
1048# 1057#
1049CONFIG_BITREVERSE=y 1058CONFIG_BITREVERSE=y
1059# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1050CONFIG_CRC_CCITT=m 1060CONFIG_CRC_CCITT=m
1051# CONFIG_CRC16 is not set 1061# CONFIG_CRC16 is not set
1052# CONFIG_CRC_ITU_T is not set 1062CONFIG_CRC_ITU_T=m
1053CONFIG_CRC32=y 1063CONFIG_CRC32=y
1054# CONFIG_CRC7 is not set 1064# CONFIG_CRC7 is not set
1055CONFIG_LIBCRC32C=m 1065CONFIG_LIBCRC32C=m
@@ -1071,6 +1081,7 @@ CONFIG_HAVE_LMB=y
1071# CONFIG_PRINTK_TIME is not set 1081# CONFIG_PRINTK_TIME is not set
1072CONFIG_ENABLE_WARN_DEPRECATED=y 1082CONFIG_ENABLE_WARN_DEPRECATED=y
1073CONFIG_ENABLE_MUST_CHECK=y 1083CONFIG_ENABLE_MUST_CHECK=y
1084CONFIG_FRAME_WARN=2048
1074CONFIG_MAGIC_SYSRQ=y 1085CONFIG_MAGIC_SYSRQ=y
1075# CONFIG_UNUSED_SYMBOLS is not set 1086# CONFIG_UNUSED_SYMBOLS is not set
1076CONFIG_DEBUG_FS=y 1087CONFIG_DEBUG_FS=y
@@ -1081,18 +1092,23 @@ CONFIG_DETECT_SOFTLOCKUP=y
1081CONFIG_SCHED_DEBUG=y 1092CONFIG_SCHED_DEBUG=y
1082# CONFIG_SCHEDSTATS is not set 1093# CONFIG_SCHEDSTATS is not set
1083# CONFIG_TIMER_STATS is not set 1094# CONFIG_TIMER_STATS is not set
1095# CONFIG_DEBUG_OBJECTS is not set
1084# CONFIG_SLUB_DEBUG_ON is not set 1096# CONFIG_SLUB_DEBUG_ON is not set
1085# CONFIG_SLUB_STATS is not set 1097# CONFIG_SLUB_STATS is not set
1086# CONFIG_DEBUG_RT_MUTEXES is not set 1098# CONFIG_DEBUG_RT_MUTEXES is not set
1087# CONFIG_RT_MUTEX_TESTER is not set 1099# CONFIG_RT_MUTEX_TESTER is not set
1088# CONFIG_DEBUG_SPINLOCK is not set 1100# CONFIG_DEBUG_SPINLOCK is not set
1089# CONFIG_DEBUG_MUTEXES is not set 1101# CONFIG_DEBUG_MUTEXES is not set
1102# CONFIG_DEBUG_LOCK_ALLOC is not set
1103# CONFIG_PROVE_LOCKING is not set
1104# CONFIG_LOCK_STAT is not set
1090# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1105# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1091# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1106# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1092# CONFIG_DEBUG_KOBJECT is not set 1107# CONFIG_DEBUG_KOBJECT is not set
1093CONFIG_DEBUG_BUGVERBOSE=y 1108CONFIG_DEBUG_BUGVERBOSE=y
1094# CONFIG_DEBUG_INFO is not set 1109# CONFIG_DEBUG_INFO is not set
1095# CONFIG_DEBUG_VM is not set 1110# CONFIG_DEBUG_VM is not set
1111# CONFIG_DEBUG_WRITECOUNT is not set
1096# CONFIG_DEBUG_LIST is not set 1112# CONFIG_DEBUG_LIST is not set
1097# CONFIG_DEBUG_SG is not set 1113# CONFIG_DEBUG_SG is not set
1098# CONFIG_BOOT_PRINTK_DELAY is not set 1114# CONFIG_BOOT_PRINTK_DELAY is not set
@@ -1116,53 +1132,83 @@ CONFIG_IRQSTACKS=y
1116# CONFIG_SECURITY is not set 1132# CONFIG_SECURITY is not set
1117# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1133# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1118CONFIG_CRYPTO=y 1134CONFIG_CRYPTO=y
1135
1136#
1137# Crypto core or helper
1138#
1119CONFIG_CRYPTO_ALGAPI=y 1139CONFIG_CRYPTO_ALGAPI=y
1120CONFIG_CRYPTO_AEAD=m 1140CONFIG_CRYPTO_AEAD=m
1121CONFIG_CRYPTO_BLKCIPHER=y 1141CONFIG_CRYPTO_BLKCIPHER=y
1122# CONFIG_CRYPTO_SEQIV is not set
1123CONFIG_CRYPTO_HASH=y 1142CONFIG_CRYPTO_HASH=y
1124CONFIG_CRYPTO_MANAGER=y 1143CONFIG_CRYPTO_MANAGER=y
1144# CONFIG_CRYPTO_GF128MUL is not set
1145CONFIG_CRYPTO_NULL=m
1146# CONFIG_CRYPTO_CRYPTD is not set
1147CONFIG_CRYPTO_AUTHENC=m
1148CONFIG_CRYPTO_TEST=m
1149
1150#
1151# Authenticated Encryption with Associated Data
1152#
1153# CONFIG_CRYPTO_CCM is not set
1154# CONFIG_CRYPTO_GCM is not set
1155# CONFIG_CRYPTO_SEQIV is not set
1156
1157#
1158# Block modes
1159#
1160CONFIG_CRYPTO_CBC=y
1161# CONFIG_CRYPTO_CTR is not set
1162# CONFIG_CRYPTO_CTS is not set
1163CONFIG_CRYPTO_ECB=m
1164# CONFIG_CRYPTO_LRW is not set
1165CONFIG_CRYPTO_PCBC=m
1166# CONFIG_CRYPTO_XTS is not set
1167
1168#
1169# Hash modes
1170#
1125CONFIG_CRYPTO_HMAC=y 1171CONFIG_CRYPTO_HMAC=y
1126# CONFIG_CRYPTO_XCBC is not set 1172# CONFIG_CRYPTO_XCBC is not set
1127CONFIG_CRYPTO_NULL=m 1173
1174#
1175# Digest
1176#
1177CONFIG_CRYPTO_CRC32C=m
1128CONFIG_CRYPTO_MD4=m 1178CONFIG_CRYPTO_MD4=m
1129CONFIG_CRYPTO_MD5=y 1179CONFIG_CRYPTO_MD5=y
1180CONFIG_CRYPTO_MICHAEL_MIC=m
1130CONFIG_CRYPTO_SHA1=m 1181CONFIG_CRYPTO_SHA1=m
1131CONFIG_CRYPTO_SHA256=m 1182CONFIG_CRYPTO_SHA256=m
1132CONFIG_CRYPTO_SHA512=m 1183CONFIG_CRYPTO_SHA512=m
1133CONFIG_CRYPTO_WP512=m
1134CONFIG_CRYPTO_TGR192=m 1184CONFIG_CRYPTO_TGR192=m
1135# CONFIG_CRYPTO_GF128MUL is not set 1185CONFIG_CRYPTO_WP512=m
1136CONFIG_CRYPTO_ECB=m 1186
1137CONFIG_CRYPTO_CBC=y 1187#
1138CONFIG_CRYPTO_PCBC=m 1188# Ciphers
1139# CONFIG_CRYPTO_LRW is not set 1189#
1140# CONFIG_CRYPTO_XTS is not set
1141# CONFIG_CRYPTO_CTR is not set
1142# CONFIG_CRYPTO_GCM is not set
1143# CONFIG_CRYPTO_CCM is not set
1144# CONFIG_CRYPTO_CRYPTD is not set
1145CONFIG_CRYPTO_DES=y
1146# CONFIG_CRYPTO_FCRYPT is not set
1147CONFIG_CRYPTO_BLOWFISH=m
1148CONFIG_CRYPTO_TWOFISH=m
1149CONFIG_CRYPTO_TWOFISH_COMMON=m
1150CONFIG_CRYPTO_SERPENT=m
1151CONFIG_CRYPTO_AES=m 1190CONFIG_CRYPTO_AES=m
1191CONFIG_CRYPTO_ANUBIS=m
1192CONFIG_CRYPTO_ARC4=m
1193CONFIG_CRYPTO_BLOWFISH=m
1194# CONFIG_CRYPTO_CAMELLIA is not set
1152CONFIG_CRYPTO_CAST5=m 1195CONFIG_CRYPTO_CAST5=m
1153CONFIG_CRYPTO_CAST6=m 1196CONFIG_CRYPTO_CAST6=m
1154CONFIG_CRYPTO_TEA=m 1197CONFIG_CRYPTO_DES=y
1155CONFIG_CRYPTO_ARC4=m 1198# CONFIG_CRYPTO_FCRYPT is not set
1156CONFIG_CRYPTO_KHAZAD=m 1199CONFIG_CRYPTO_KHAZAD=m
1157CONFIG_CRYPTO_ANUBIS=m
1158CONFIG_CRYPTO_SEED=m
1159# CONFIG_CRYPTO_SALSA20 is not set 1200# CONFIG_CRYPTO_SALSA20 is not set
1201CONFIG_CRYPTO_SEED=m
1202CONFIG_CRYPTO_SERPENT=m
1203CONFIG_CRYPTO_TEA=m
1204CONFIG_CRYPTO_TWOFISH=m
1205CONFIG_CRYPTO_TWOFISH_COMMON=m
1206
1207#
1208# Compression
1209#
1160CONFIG_CRYPTO_DEFLATE=m 1210CONFIG_CRYPTO_DEFLATE=m
1161CONFIG_CRYPTO_MICHAEL_MIC=m
1162CONFIG_CRYPTO_CRC32C=m
1163# CONFIG_CRYPTO_CAMELLIA is not set
1164CONFIG_CRYPTO_TEST=m
1165CONFIG_CRYPTO_AUTHENC=m
1166# CONFIG_CRYPTO_LZO is not set 1211# CONFIG_CRYPTO_LZO is not set
1167# CONFIG_CRYPTO_HW is not set 1212# CONFIG_CRYPTO_HW is not set
1168# CONFIG_PPC_CLOCK is not set 1213# CONFIG_PPC_CLOCK is not set
1214# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/mpc8610_hpcd_defconfig b/arch/powerpc/configs/mpc8610_hpcd_defconfig
index 9270afe7594d..7e5b9ce58d89 100644
--- a/arch/powerpc/configs/mpc8610_hpcd_defconfig
+++ b/arch/powerpc/configs/mpc8610_hpcd_defconfig
@@ -358,7 +358,93 @@ CONFIG_FW_LOADER=y
358# CONFIG_DEBUG_DEVRES is not set 358# CONFIG_DEBUG_DEVRES is not set
359# CONFIG_SYS_HYPERVISOR is not set 359# CONFIG_SYS_HYPERVISOR is not set
360# CONFIG_CONNECTOR is not set 360# CONFIG_CONNECTOR is not set
361# CONFIG_MTD is not set 361CONFIG_MTD=y
362# CONFIG_MTD_DEBUG is not set
363# CONFIG_MTD_CONCAT is not set
364CONFIG_MTD_PARTITIONS=y
365# CONFIG_MTD_REDBOOT_PARTS is not set
366CONFIG_MTD_CMDLINE_PARTS=y
367# CONFIG_MTD_OF_PARTS is not set
368# CONFIG_MTD_AR7_PARTS is not set
369
370#
371# User Modules And Translation Layers
372#
373CONFIG_MTD_CHAR=y
374CONFIG_MTD_BLKDEVS=y
375CONFIG_MTD_BLOCK=y
376# CONFIG_FTL is not set
377# CONFIG_NFTL is not set
378# CONFIG_INFTL is not set
379# CONFIG_RFD_FTL is not set
380# CONFIG_SSFDC is not set
381# CONFIG_MTD_OOPS is not set
382
383#
384# RAM/ROM/Flash chip drivers
385#
386CONFIG_MTD_CFI=y
387# CONFIG_MTD_JEDECPROBE is not set
388CONFIG_MTD_GEN_PROBE=y
389# CONFIG_MTD_CFI_ADV_OPTIONS is not set
390CONFIG_MTD_MAP_BANK_WIDTH_1=y
391CONFIG_MTD_MAP_BANK_WIDTH_2=y
392CONFIG_MTD_MAP_BANK_WIDTH_4=y
393# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
394# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
395# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
396CONFIG_MTD_CFI_I1=y
397CONFIG_MTD_CFI_I2=y
398# CONFIG_MTD_CFI_I4 is not set
399# CONFIG_MTD_CFI_I8 is not set
400# CONFIG_MTD_CFI_INTELEXT is not set
401CONFIG_MTD_CFI_AMDSTD=y
402# CONFIG_MTD_CFI_STAA is not set
403CONFIG_MTD_CFI_UTIL=y
404# CONFIG_MTD_RAM is not set
405# CONFIG_MTD_ROM is not set
406# CONFIG_MTD_ABSENT is not set
407
408#
409# Mapping drivers for chip access
410#
411# CONFIG_MTD_COMPLEX_MAPPINGS is not set
412# CONFIG_MTD_PHYSMAP is not set
413CONFIG_MTD_PHYSMAP_OF=y
414# CONFIG_MTD_INTEL_VR_NOR is not set
415# CONFIG_MTD_PLATRAM is not set
416
417#
418# Self-contained MTD device drivers
419#
420# CONFIG_MTD_PMC551 is not set
421# CONFIG_MTD_SLRAM is not set
422# CONFIG_MTD_PHRAM is not set
423# CONFIG_MTD_MTDRAM is not set
424# CONFIG_MTD_BLOCK2MTD is not set
425
426#
427# Disk-On-Chip Device Drivers
428#
429# CONFIG_MTD_DOC2000 is not set
430# CONFIG_MTD_DOC2001 is not set
431# CONFIG_MTD_DOC2001PLUS is not set
432CONFIG_MTD_NAND=y
433# CONFIG_MTD_NAND_VERIFY_WRITE is not set
434# CONFIG_MTD_NAND_ECC_SMC is not set
435# CONFIG_MTD_NAND_MUSEUM_IDS is not set
436CONFIG_MTD_NAND_IDS=y
437# CONFIG_MTD_NAND_DISKONCHIP is not set
438# CONFIG_MTD_NAND_CAFE is not set
439# CONFIG_MTD_NAND_NANDSIM is not set
440# CONFIG_MTD_NAND_PLATFORM is not set
441CONFIG_MTD_NAND_FSL_ELBC=y
442# CONFIG_MTD_ONENAND is not set
443
444#
445# UBI - Unsorted block images
446#
447# CONFIG_MTD_UBI is not set
362CONFIG_OF_DEVICE=y 448CONFIG_OF_DEVICE=y
363# CONFIG_PARPORT is not set 449# CONFIG_PARPORT is not set
364CONFIG_BLK_DEV=y 450CONFIG_BLK_DEV=y
@@ -567,14 +653,11 @@ CONFIG_MII=y
567# CONFIG_NET_VENDOR_3COM is not set 653# CONFIG_NET_VENDOR_3COM is not set
568CONFIG_NET_TULIP=y 654CONFIG_NET_TULIP=y
569# CONFIG_DE2104X is not set 655# CONFIG_DE2104X is not set
570CONFIG_TULIP=y 656# CONFIG_TULIP is not set
571# CONFIG_TULIP_MWI is not set
572CONFIG_TULIP_MMIO=y
573# CONFIG_TULIP_NAPI is not set
574# CONFIG_DE4X5 is not set 657# CONFIG_DE4X5 is not set
575# CONFIG_WINBOND_840 is not set 658# CONFIG_WINBOND_840 is not set
576# CONFIG_DM9102 is not set 659# CONFIG_DM9102 is not set
577# CONFIG_ULI526X is not set 660CONFIG_ULI526X=y
578# CONFIG_HP100 is not set 661# CONFIG_HP100 is not set
579# CONFIG_IBM_NEW_EMAC_ZMII is not set 662# CONFIG_IBM_NEW_EMAC_ZMII is not set
580# CONFIG_IBM_NEW_EMAC_RGMII is not set 663# CONFIG_IBM_NEW_EMAC_RGMII is not set
diff --git a/arch/powerpc/configs/pasemi_defconfig b/arch/powerpc/configs/pasemi_defconfig
index 09f306248f2e..199e5f59d7a6 100644
--- a/arch/powerpc/configs/pasemi_defconfig
+++ b/arch/powerpc/configs/pasemi_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.25-rc6 3# Linux kernel version: 2.6.26-rc3
4# Tue Mar 25 10:25:48 2008 4# Tue May 27 16:08:06 2008
5# 5#
6CONFIG_PPC64=y 6CONFIG_PPC64=y
7 7
@@ -29,6 +29,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
29CONFIG_GENERIC_HARDIRQS=y 29CONFIG_GENERIC_HARDIRQS=y
30CONFIG_HAVE_SETUP_PER_CPU_AREA=y 30CONFIG_HAVE_SETUP_PER_CPU_AREA=y
31CONFIG_IRQ_PER_CPU=y 31CONFIG_IRQ_PER_CPU=y
32CONFIG_STACKTRACE_SUPPORT=y
33CONFIG_TRACE_IRQFLAGS_SUPPORT=y
34CONFIG_LOCKDEP_SUPPORT=y
32CONFIG_RWSEM_XCHGADD_ALGORITHM=y 35CONFIG_RWSEM_XCHGADD_ALGORITHM=y
33CONFIG_ARCH_HAS_ILOG2_U32=y 36CONFIG_ARCH_HAS_ILOG2_U32=y
34CONFIG_ARCH_HAS_ILOG2_U64=y 37CONFIG_ARCH_HAS_ILOG2_U64=y
@@ -87,6 +90,7 @@ CONFIG_INITRAMFS_SOURCE=""
87CONFIG_SYSCTL=y 90CONFIG_SYSCTL=y
88# CONFIG_EMBEDDED is not set 91# CONFIG_EMBEDDED is not set
89CONFIG_SYSCTL_SYSCALL=y 92CONFIG_SYSCTL_SYSCALL=y
93CONFIG_SYSCTL_SYSCALL_CHECK=y
90CONFIG_KALLSYMS=y 94CONFIG_KALLSYMS=y
91# CONFIG_KALLSYMS_ALL is not set 95# CONFIG_KALLSYMS_ALL is not set
92# CONFIG_KALLSYMS_EXTRA_PASS is not set 96# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -115,12 +119,14 @@ CONFIG_HAVE_OPROFILE=y
115# CONFIG_KPROBES is not set 119# CONFIG_KPROBES is not set
116CONFIG_HAVE_KPROBES=y 120CONFIG_HAVE_KPROBES=y
117CONFIG_HAVE_KRETPROBES=y 121CONFIG_HAVE_KRETPROBES=y
122# CONFIG_HAVE_DMA_ATTRS is not set
118CONFIG_PROC_PAGE_MONITOR=y 123CONFIG_PROC_PAGE_MONITOR=y
119CONFIG_SLABINFO=y 124CONFIG_SLABINFO=y
120CONFIG_RT_MUTEXES=y 125CONFIG_RT_MUTEXES=y
121# CONFIG_TINY_SHMEM is not set 126# CONFIG_TINY_SHMEM is not set
122CONFIG_BASE_SMALL=0 127CONFIG_BASE_SMALL=0
123CONFIG_MODULES=y 128CONFIG_MODULES=y
129# CONFIG_MODULE_FORCE_LOAD is not set
124CONFIG_MODULE_UNLOAD=y 130CONFIG_MODULE_UNLOAD=y
125# CONFIG_MODULE_FORCE_UNLOAD is not set 131# CONFIG_MODULE_FORCE_UNLOAD is not set
126# CONFIG_MODVERSIONS is not set 132# CONFIG_MODVERSIONS is not set
@@ -167,11 +173,11 @@ CONFIG_PPC_PASEMI=y
167CONFIG_PPC_PASEMI_IOMMU=y 173CONFIG_PPC_PASEMI_IOMMU=y
168# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set 174# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set
169CONFIG_PPC_PASEMI_MDIO=y 175CONFIG_PPC_PASEMI_MDIO=y
170# CONFIG_PPC_CELLEB is not set
171# CONFIG_PPC_PS3 is not set 176# CONFIG_PPC_PS3 is not set
172# CONFIG_PPC_CELL is not set 177# CONFIG_PPC_CELL is not set
173# CONFIG_PPC_CELL_NATIVE is not set 178# CONFIG_PPC_CELL_NATIVE is not set
174# CONFIG_PPC_IBM_CELL_BLADE is not set 179# CONFIG_PPC_IBM_CELL_BLADE is not set
180# CONFIG_PPC_CELLEB is not set
175# CONFIG_PQ2ADS is not set 181# CONFIG_PQ2ADS is not set
176CONFIG_PPC_NATIVE=y 182CONFIG_PPC_NATIVE=y
177# CONFIG_IPIC is not set 183# CONFIG_IPIC is not set
@@ -192,6 +198,7 @@ CONFIG_CPU_FREQ_DEBUG=y
192CONFIG_CPU_FREQ_STAT=y 198CONFIG_CPU_FREQ_STAT=y
193# CONFIG_CPU_FREQ_STAT_DETAILS is not set 199# CONFIG_CPU_FREQ_STAT_DETAILS is not set
194CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 200CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
201# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
195# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 202# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
196# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set 203# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
197# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set 204# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -226,7 +233,6 @@ CONFIG_PREEMPT_NONE=y
226CONFIG_BINFMT_ELF=y 233CONFIG_BINFMT_ELF=y
227CONFIG_COMPAT_BINFMT_ELF=y 234CONFIG_COMPAT_BINFMT_ELF=y
228# CONFIG_BINFMT_MISC is not set 235# CONFIG_BINFMT_MISC is not set
229CONFIG_FORCE_MAX_ZONEORDER=9
230CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y 236CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y
231CONFIG_IOMMU_VMERGE=y 237CONFIG_IOMMU_VMERGE=y
232CONFIG_IOMMU_HELPER=y 238CONFIG_IOMMU_HELPER=y
@@ -249,12 +255,14 @@ CONFIG_FLATMEM=y
249CONFIG_FLAT_NODE_MEM_MAP=y 255CONFIG_FLAT_NODE_MEM_MAP=y
250# CONFIG_SPARSEMEM_STATIC is not set 256# CONFIG_SPARSEMEM_STATIC is not set
251CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y 257CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
258CONFIG_PAGEFLAGS_EXTENDED=y
252CONFIG_SPLIT_PTLOCK_CPUS=4 259CONFIG_SPLIT_PTLOCK_CPUS=4
253CONFIG_RESOURCES_64BIT=y 260CONFIG_RESOURCES_64BIT=y
254CONFIG_ZONE_DMA_FLAG=1 261CONFIG_ZONE_DMA_FLAG=1
255CONFIG_BOUNCE=y 262CONFIG_BOUNCE=y
256CONFIG_PPC_HAS_HASH_64K=y 263CONFIG_PPC_HAS_HASH_64K=y
257CONFIG_PPC_64K_PAGES=y 264CONFIG_PPC_64K_PAGES=y
265CONFIG_FORCE_MAX_ZONEORDER=9
258# CONFIG_PPC_SUBPAGE_PROT is not set 266# CONFIG_PPC_SUBPAGE_PROT is not set
259# CONFIG_SCHED_SMT is not set 267# CONFIG_SCHED_SMT is not set
260CONFIG_PROC_DEVICETREE=y 268CONFIG_PROC_DEVICETREE=y
@@ -290,9 +298,12 @@ CONFIG_CARDBUS=y
290# CONFIG_YENTA is not set 298# CONFIG_YENTA is not set
291# CONFIG_PD6729 is not set 299# CONFIG_PD6729 is not set
292# CONFIG_I82092 is not set 300# CONFIG_I82092 is not set
293# CONFIG_ELECTRA_CF is not set 301CONFIG_ELECTRA_CF=y
294# CONFIG_HOTPLUG_PCI is not set 302# CONFIG_HOTPLUG_PCI is not set
303# CONFIG_HAS_RAPIDIO is not set
304CONFIG_PAGE_OFFSET=0xc000000000000000
295CONFIG_KERNEL_START=0xc000000000000000 305CONFIG_KERNEL_START=0xc000000000000000
306CONFIG_PHYSICAL_START=0x00000000
296 307
297# 308#
298# Networking 309# Networking
@@ -341,8 +352,6 @@ CONFIG_TCP_CONG_CUBIC=y
341CONFIG_DEFAULT_TCP_CONG="cubic" 352CONFIG_DEFAULT_TCP_CONG="cubic"
342# CONFIG_TCP_MD5SIG is not set 353# CONFIG_TCP_MD5SIG is not set
343# CONFIG_IPV6 is not set 354# CONFIG_IPV6 is not set
344# CONFIG_INET6_XFRM_TUNNEL is not set
345# CONFIG_INET6_TUNNEL is not set
346# CONFIG_NETWORK_SECMARK is not set 355# CONFIG_NETWORK_SECMARK is not set
347# CONFIG_NETFILTER is not set 356# CONFIG_NETFILTER is not set
348# CONFIG_IP_DCCP is not set 357# CONFIG_IP_DCCP is not set
@@ -473,6 +482,7 @@ CONFIG_MTD_NAND_PASEMI=y
473# 482#
474# CONFIG_MTD_UBI is not set 483# CONFIG_MTD_UBI is not set
475CONFIG_OF_DEVICE=y 484CONFIG_OF_DEVICE=y
485CONFIG_OF_I2C=y
476# CONFIG_PARPORT is not set 486# CONFIG_PARPORT is not set
477CONFIG_BLK_DEV=y 487CONFIG_BLK_DEV=y
478# CONFIG_BLK_DEV_FD is not set 488# CONFIG_BLK_DEV_FD is not set
@@ -520,7 +530,6 @@ CONFIG_IDE_PROC_FS=y
520# 530#
521# IDE chipset support/bugfixes 531# IDE chipset support/bugfixes
522# 532#
523# CONFIG_IDE_GENERIC is not set
524# CONFIG_BLK_DEV_PLATFORM is not set 533# CONFIG_BLK_DEV_PLATFORM is not set
525 534
526# 535#
@@ -554,7 +563,7 @@ CONFIG_IDE_PROC_FS=y
554# CONFIG_BLK_DEV_VIA82CXXX is not set 563# CONFIG_BLK_DEV_VIA82CXXX is not set
555# CONFIG_BLK_DEV_TC86C001 is not set 564# CONFIG_BLK_DEV_TC86C001 is not set
556# CONFIG_BLK_DEV_IDEDMA is not set 565# CONFIG_BLK_DEV_IDEDMA is not set
557CONFIG_IDE_ARCH_OBSOLETE_INIT=y 566# CONFIG_BLK_DEV_HD_ONLY is not set
558# CONFIG_BLK_DEV_HD is not set 567# CONFIG_BLK_DEV_HD is not set
559 568
560# 569#
@@ -632,7 +641,10 @@ CONFIG_SCSI_LOWLEVEL=y
632# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set 641# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
633CONFIG_ATA=y 642CONFIG_ATA=y
634# CONFIG_ATA_NONSTANDARD is not set 643# CONFIG_ATA_NONSTANDARD is not set
644CONFIG_SATA_PMP=y
635# CONFIG_SATA_AHCI is not set 645# CONFIG_SATA_AHCI is not set
646CONFIG_SATA_SIL24=y
647CONFIG_ATA_SFF=y
636# CONFIG_SATA_SVW is not set 648# CONFIG_SATA_SVW is not set
637# CONFIG_ATA_PIIX is not set 649# CONFIG_ATA_PIIX is not set
638CONFIG_SATA_MV=y 650CONFIG_SATA_MV=y
@@ -642,7 +654,6 @@ CONFIG_SATA_MV=y
642# CONFIG_SATA_PROMISE is not set 654# CONFIG_SATA_PROMISE is not set
643# CONFIG_SATA_SX4 is not set 655# CONFIG_SATA_SX4 is not set
644# CONFIG_SATA_SIL is not set 656# CONFIG_SATA_SIL is not set
645CONFIG_SATA_SIL24=y
646# CONFIG_SATA_SIS is not set 657# CONFIG_SATA_SIS is not set
647# CONFIG_SATA_ULI is not set 658# CONFIG_SATA_ULI is not set
648# CONFIG_SATA_VIA is not set 659# CONFIG_SATA_VIA is not set
@@ -689,6 +700,7 @@ CONFIG_PATA_PCMCIA=y
689# CONFIG_PATA_WINBOND is not set 700# CONFIG_PATA_WINBOND is not set
690CONFIG_PATA_PLATFORM=y 701CONFIG_PATA_PLATFORM=y
691CONFIG_PATA_OF_PLATFORM=y 702CONFIG_PATA_OF_PLATFORM=y
703# CONFIG_PATA_SCH is not set
692CONFIG_MD=y 704CONFIG_MD=y
693CONFIG_BLK_DEV_MD=y 705CONFIG_BLK_DEV_MD=y
694CONFIG_MD_LINEAR=y 706CONFIG_MD_LINEAR=y
@@ -791,7 +803,6 @@ CONFIG_E1000_NAPI=y
791# CONFIG_SIS190 is not set 803# CONFIG_SIS190 is not set
792# CONFIG_SKGE is not set 804# CONFIG_SKGE is not set
793# CONFIG_SKY2 is not set 805# CONFIG_SKY2 is not set
794# CONFIG_SK98LIN is not set
795# CONFIG_VIA_VELOCITY is not set 806# CONFIG_VIA_VELOCITY is not set
796CONFIG_TIGON3=y 807CONFIG_TIGON3=y
797# CONFIG_BNX2 is not set 808# CONFIG_BNX2 is not set
@@ -810,6 +821,7 @@ CONFIG_PASEMI_MAC=y
810# CONFIG_MLX4_CORE is not set 821# CONFIG_MLX4_CORE is not set
811# CONFIG_TEHUTI is not set 822# CONFIG_TEHUTI is not set
812# CONFIG_BNX2X is not set 823# CONFIG_BNX2X is not set
824# CONFIG_SFC is not set
813# CONFIG_TR is not set 825# CONFIG_TR is not set
814 826
815# 827#
@@ -817,6 +829,7 @@ CONFIG_PASEMI_MAC=y
817# 829#
818# CONFIG_WLAN_PRE80211 is not set 830# CONFIG_WLAN_PRE80211 is not set
819# CONFIG_WLAN_80211 is not set 831# CONFIG_WLAN_80211 is not set
832# CONFIG_IWLWIFI_LEDS is not set
820 833
821# 834#
822# USB Network Adapters 835# USB Network Adapters
@@ -890,6 +903,7 @@ CONFIG_VT=y
890CONFIG_VT_CONSOLE=y 903CONFIG_VT_CONSOLE=y
891CONFIG_HW_CONSOLE=y 904CONFIG_HW_CONSOLE=y
892# CONFIG_VT_HW_CONSOLE_BINDING is not set 905# CONFIG_VT_HW_CONSOLE_BINDING is not set
906CONFIG_DEVKMEM=y
893# CONFIG_SERIAL_NONSTANDARD is not set 907# CONFIG_SERIAL_NONSTANDARD is not set
894# CONFIG_NOZOMI is not set 908# CONFIG_NOZOMI is not set
895 909
@@ -917,7 +931,6 @@ CONFIG_LEGACY_PTY_COUNT=4
917# CONFIG_IPMI_HANDLER is not set 931# CONFIG_IPMI_HANDLER is not set
918CONFIG_HW_RANDOM=y 932CONFIG_HW_RANDOM=y
919CONFIG_HW_RANDOM_PASEMI=y 933CONFIG_HW_RANDOM_PASEMI=y
920# CONFIG_GEN_RTC is not set
921# CONFIG_R3964 is not set 934# CONFIG_R3964 is not set
922# CONFIG_APPLICOM is not set 935# CONFIG_APPLICOM is not set
923 936
@@ -936,13 +949,7 @@ CONFIG_DEVPORT=y
936CONFIG_I2C=y 949CONFIG_I2C=y
937CONFIG_I2C_BOARDINFO=y 950CONFIG_I2C_BOARDINFO=y
938CONFIG_I2C_CHARDEV=y 951CONFIG_I2C_CHARDEV=y
939
940#
941# I2C Algorithms
942#
943CONFIG_I2C_ALGOBIT=y 952CONFIG_I2C_ALGOBIT=y
944CONFIG_I2C_ALGOPCF=y
945CONFIG_I2C_ALGOPCA=y
946 953
947# 954#
948# I2C Hardware Bus support 955# I2C Hardware Bus support
@@ -971,6 +978,7 @@ CONFIG_I2C_PASEMI=y
971# CONFIG_I2C_VIA is not set 978# CONFIG_I2C_VIA is not set
972# CONFIG_I2C_VIAPRO is not set 979# CONFIG_I2C_VIAPRO is not set
973# CONFIG_I2C_VOODOO3 is not set 980# CONFIG_I2C_VOODOO3 is not set
981# CONFIG_I2C_PCA_PLATFORM is not set
974 982
975# 983#
976# Miscellaneous I2C Chip support 984# Miscellaneous I2C Chip support
@@ -980,19 +988,13 @@ CONFIG_SENSORS_EEPROM=y
980# CONFIG_SENSORS_PCF8574 is not set 988# CONFIG_SENSORS_PCF8574 is not set
981# CONFIG_PCF8575 is not set 989# CONFIG_PCF8575 is not set
982# CONFIG_SENSORS_PCF8591 is not set 990# CONFIG_SENSORS_PCF8591 is not set
983# CONFIG_TPS65010 is not set
984# CONFIG_SENSORS_MAX6875 is not set 991# CONFIG_SENSORS_MAX6875 is not set
985# CONFIG_SENSORS_TSL2550 is not set 992# CONFIG_SENSORS_TSL2550 is not set
986# CONFIG_I2C_DEBUG_CORE is not set 993# CONFIG_I2C_DEBUG_CORE is not set
987# CONFIG_I2C_DEBUG_ALGO is not set 994# CONFIG_I2C_DEBUG_ALGO is not set
988# CONFIG_I2C_DEBUG_BUS is not set 995# CONFIG_I2C_DEBUG_BUS is not set
989# CONFIG_I2C_DEBUG_CHIP is not set 996# CONFIG_I2C_DEBUG_CHIP is not set
990
991#
992# SPI support
993#
994# CONFIG_SPI is not set 997# CONFIG_SPI is not set
995# CONFIG_SPI_MASTER is not set
996# CONFIG_W1 is not set 998# CONFIG_W1 is not set
997# CONFIG_POWER_SUPPLY is not set 999# CONFIG_POWER_SUPPLY is not set
998CONFIG_HWMON=y 1000CONFIG_HWMON=y
@@ -1062,12 +1064,22 @@ CONFIG_SSB_POSSIBLE=y
1062# Multifunction device drivers 1064# Multifunction device drivers
1063# 1065#
1064# CONFIG_MFD_SM501 is not set 1066# CONFIG_MFD_SM501 is not set
1067# CONFIG_HTC_PASIC3 is not set
1065 1068
1066# 1069#
1067# Multimedia devices 1070# Multimedia devices
1068# 1071#
1072
1073#
1074# Multimedia core support
1075#
1069# CONFIG_VIDEO_DEV is not set 1076# CONFIG_VIDEO_DEV is not set
1070# CONFIG_DVB_CORE is not set 1077# CONFIG_DVB_CORE is not set
1078# CONFIG_VIDEO_MEDIA is not set
1079
1080#
1081# Multimedia drivers
1082#
1071CONFIG_DAB=y 1083CONFIG_DAB=y
1072# CONFIG_USB_DABUSB is not set 1084# CONFIG_USB_DABUSB is not set
1073 1085
@@ -1094,8 +1106,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
1094# CONFIG_FB_SYS_FILLRECT is not set 1106# CONFIG_FB_SYS_FILLRECT is not set
1095# CONFIG_FB_SYS_COPYAREA is not set 1107# CONFIG_FB_SYS_COPYAREA is not set
1096# CONFIG_FB_SYS_IMAGEBLIT is not set 1108# CONFIG_FB_SYS_IMAGEBLIT is not set
1109# CONFIG_FB_FOREIGN_ENDIAN is not set
1097# CONFIG_FB_SYS_FOPS is not set 1110# CONFIG_FB_SYS_FOPS is not set
1098CONFIG_FB_DEFERRED_IO=y
1099# CONFIG_FB_SVGALIB is not set 1111# CONFIG_FB_SVGALIB is not set
1100CONFIG_FB_MACMODES=y 1112CONFIG_FB_MACMODES=y
1101CONFIG_FB_BACKLIGHT=y 1113CONFIG_FB_BACKLIGHT=y
@@ -1213,6 +1225,7 @@ CONFIG_SND_VERBOSE_PROCFS=y
1213# CONFIG_SND_AU8810 is not set 1225# CONFIG_SND_AU8810 is not set
1214# CONFIG_SND_AU8820 is not set 1226# CONFIG_SND_AU8820 is not set
1215# CONFIG_SND_AU8830 is not set 1227# CONFIG_SND_AU8830 is not set
1228# CONFIG_SND_AW2 is not set
1216# CONFIG_SND_AZT3328 is not set 1229# CONFIG_SND_AZT3328 is not set
1217# CONFIG_SND_BT87X is not set 1230# CONFIG_SND_BT87X is not set
1218# CONFIG_SND_CA0106 is not set 1231# CONFIG_SND_CA0106 is not set
@@ -1292,11 +1305,11 @@ CONFIG_SND_USB_USX2Y=y
1292# CONFIG_SND_SOC is not set 1305# CONFIG_SND_SOC is not set
1293 1306
1294# 1307#
1295# SoC Audio support for SuperH 1308# ALSA SoC audio for Freescale SOCs
1296# 1309#
1297 1310
1298# 1311#
1299# ALSA SoC audio for Freescale SOCs 1312# SoC Audio for the Texas Instruments OMAP
1300# 1313#
1301 1314
1302# 1315#
@@ -1334,11 +1347,13 @@ CONFIG_USB_DEVICEFS=y
1334# 1347#
1335# USB Host Controller Drivers 1348# USB Host Controller Drivers
1336# 1349#
1350# CONFIG_USB_C67X00_HCD is not set
1337CONFIG_USB_EHCI_HCD=y 1351CONFIG_USB_EHCI_HCD=y
1338# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1352# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1339# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1353# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1340CONFIG_USB_EHCI_HCD_PPC_OF=y 1354CONFIG_USB_EHCI_HCD_PPC_OF=y
1341# CONFIG_USB_ISP116X_HCD is not set 1355# CONFIG_USB_ISP116X_HCD is not set
1356# CONFIG_USB_ISP1760_HCD is not set
1342CONFIG_USB_OHCI_HCD=y 1357CONFIG_USB_OHCI_HCD=y
1343# CONFIG_USB_OHCI_HCD_PPC_OF is not set 1358# CONFIG_USB_OHCI_HCD_PPC_OF is not set
1344# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 1359# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
@@ -1354,6 +1369,7 @@ CONFIG_USB_SL811_HCD=y
1354# 1369#
1355# CONFIG_USB_ACM is not set 1370# CONFIG_USB_ACM is not set
1356# CONFIG_USB_PRINTER is not set 1371# CONFIG_USB_PRINTER is not set
1372# CONFIG_USB_WDM is not set
1357 1373
1358# 1374#
1359# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 1375# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
@@ -1375,6 +1391,7 @@ CONFIG_USB_STORAGE=y
1375# CONFIG_USB_STORAGE_ALAUDA is not set 1391# CONFIG_USB_STORAGE_ALAUDA is not set
1376# CONFIG_USB_STORAGE_ONETOUCH is not set 1392# CONFIG_USB_STORAGE_ONETOUCH is not set
1377# CONFIG_USB_STORAGE_KARMA is not set 1393# CONFIG_USB_STORAGE_KARMA is not set
1394# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
1378CONFIG_USB_LIBUSUAL=y 1395CONFIG_USB_LIBUSUAL=y
1379 1396
1380# 1397#
@@ -1416,6 +1433,7 @@ CONFIG_USB_LIBUSUAL=y
1416# CONFIG_MMC is not set 1433# CONFIG_MMC is not set
1417# CONFIG_MEMSTICK is not set 1434# CONFIG_MEMSTICK is not set
1418# CONFIG_NEW_LEDS is not set 1435# CONFIG_NEW_LEDS is not set
1436# CONFIG_ACCESSIBILITY is not set
1419# CONFIG_INFINIBAND is not set 1437# CONFIG_INFINIBAND is not set
1420CONFIG_EDAC=y 1438CONFIG_EDAC=y
1421 1439
@@ -1475,10 +1493,6 @@ CONFIG_RTC_DRV_DS1307=y
1475# on-CPU RTC drivers 1493# on-CPU RTC drivers
1476# 1494#
1477# CONFIG_DMADEVICES is not set 1495# CONFIG_DMADEVICES is not set
1478
1479#
1480# Userspace I/O
1481#
1482# CONFIG_UIO is not set 1496# CONFIG_UIO is not set
1483 1497
1484# 1498#
@@ -1576,12 +1590,10 @@ CONFIG_NFS_FS=y
1576CONFIG_NFS_V3=y 1590CONFIG_NFS_V3=y
1577# CONFIG_NFS_V3_ACL is not set 1591# CONFIG_NFS_V3_ACL is not set
1578# CONFIG_NFS_V4 is not set 1592# CONFIG_NFS_V4 is not set
1579# CONFIG_NFS_DIRECTIO is not set
1580CONFIG_NFSD=y 1593CONFIG_NFSD=y
1581CONFIG_NFSD_V3=y 1594CONFIG_NFSD_V3=y
1582# CONFIG_NFSD_V3_ACL is not set 1595# CONFIG_NFSD_V3_ACL is not set
1583CONFIG_NFSD_V4=y 1596CONFIG_NFSD_V4=y
1584CONFIG_NFSD_TCP=y
1585CONFIG_ROOT_NFS=y 1597CONFIG_ROOT_NFS=y
1586CONFIG_LOCKD=y 1598CONFIG_LOCKD=y
1587CONFIG_LOCKD_V4=y 1599CONFIG_LOCKD_V4=y
@@ -1665,9 +1677,10 @@ CONFIG_NLS_ISO8859_1=y
1665# Library routines 1677# Library routines
1666# 1678#
1667CONFIG_BITREVERSE=y 1679CONFIG_BITREVERSE=y
1680# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1668CONFIG_CRC_CCITT=y 1681CONFIG_CRC_CCITT=y
1669# CONFIG_CRC16 is not set 1682# CONFIG_CRC16 is not set
1670# CONFIG_CRC_ITU_T is not set 1683CONFIG_CRC_ITU_T=y
1671CONFIG_CRC32=y 1684CONFIG_CRC32=y
1672# CONFIG_CRC7 is not set 1685# CONFIG_CRC7 is not set
1673CONFIG_LIBCRC32C=m 1686CONFIG_LIBCRC32C=m
@@ -1677,6 +1690,7 @@ CONFIG_PLIST=y
1677CONFIG_HAS_IOMEM=y 1690CONFIG_HAS_IOMEM=y
1678CONFIG_HAS_IOPORT=y 1691CONFIG_HAS_IOPORT=y
1679CONFIG_HAS_DMA=y 1692CONFIG_HAS_DMA=y
1693CONFIG_HAVE_LMB=y
1680 1694
1681# 1695#
1682# Kernel hacking 1696# Kernel hacking
@@ -1684,6 +1698,7 @@ CONFIG_HAS_DMA=y
1684# CONFIG_PRINTK_TIME is not set 1698# CONFIG_PRINTK_TIME is not set
1685CONFIG_ENABLE_WARN_DEPRECATED=y 1699CONFIG_ENABLE_WARN_DEPRECATED=y
1686CONFIG_ENABLE_MUST_CHECK=y 1700CONFIG_ENABLE_MUST_CHECK=y
1701CONFIG_FRAME_WARN=2048
1687CONFIG_MAGIC_SYSRQ=y 1702CONFIG_MAGIC_SYSRQ=y
1688# CONFIG_UNUSED_SYMBOLS is not set 1703# CONFIG_UNUSED_SYMBOLS is not set
1689# CONFIG_DEBUG_FS is not set 1704# CONFIG_DEBUG_FS is not set
@@ -1694,18 +1709,23 @@ CONFIG_DETECT_SOFTLOCKUP=y
1694# CONFIG_SCHED_DEBUG is not set 1709# CONFIG_SCHED_DEBUG is not set
1695# CONFIG_SCHEDSTATS is not set 1710# CONFIG_SCHEDSTATS is not set
1696# CONFIG_TIMER_STATS is not set 1711# CONFIG_TIMER_STATS is not set
1712# CONFIG_DEBUG_OBJECTS is not set
1697# CONFIG_SLUB_DEBUG_ON is not set 1713# CONFIG_SLUB_DEBUG_ON is not set
1698# CONFIG_SLUB_STATS is not set 1714# CONFIG_SLUB_STATS is not set
1699# CONFIG_DEBUG_RT_MUTEXES is not set 1715# CONFIG_DEBUG_RT_MUTEXES is not set
1700# CONFIG_RT_MUTEX_TESTER is not set 1716# CONFIG_RT_MUTEX_TESTER is not set
1701# CONFIG_DEBUG_SPINLOCK is not set 1717# CONFIG_DEBUG_SPINLOCK is not set
1702# CONFIG_DEBUG_MUTEXES is not set 1718# CONFIG_DEBUG_MUTEXES is not set
1719# CONFIG_DEBUG_LOCK_ALLOC is not set
1720# CONFIG_PROVE_LOCKING is not set
1721# CONFIG_LOCK_STAT is not set
1703# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1722# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1704# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1723# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1705# CONFIG_DEBUG_KOBJECT is not set 1724# CONFIG_DEBUG_KOBJECT is not set
1706CONFIG_DEBUG_BUGVERBOSE=y 1725CONFIG_DEBUG_BUGVERBOSE=y
1707# CONFIG_DEBUG_INFO is not set 1726# CONFIG_DEBUG_INFO is not set
1708# CONFIG_DEBUG_VM is not set 1727# CONFIG_DEBUG_VM is not set
1728# CONFIG_DEBUG_WRITECOUNT is not set
1709# CONFIG_DEBUG_LIST is not set 1729# CONFIG_DEBUG_LIST is not set
1710# CONFIG_DEBUG_SG is not set 1730# CONFIG_DEBUG_SG is not set
1711# CONFIG_BOOT_PRINTK_DELAY is not set 1731# CONFIG_BOOT_PRINTK_DELAY is not set
@@ -1735,53 +1755,83 @@ CONFIG_ASYNC_CORE=y
1735CONFIG_ASYNC_MEMCPY=y 1755CONFIG_ASYNC_MEMCPY=y
1736CONFIG_ASYNC_XOR=y 1756CONFIG_ASYNC_XOR=y
1737CONFIG_CRYPTO=y 1757CONFIG_CRYPTO=y
1758
1759#
1760# Crypto core or helper
1761#
1738CONFIG_CRYPTO_ALGAPI=y 1762CONFIG_CRYPTO_ALGAPI=y
1739CONFIG_CRYPTO_AEAD=y 1763CONFIG_CRYPTO_AEAD=y
1740CONFIG_CRYPTO_BLKCIPHER=y 1764CONFIG_CRYPTO_BLKCIPHER=y
1741# CONFIG_CRYPTO_SEQIV is not set
1742CONFIG_CRYPTO_HASH=y 1765CONFIG_CRYPTO_HASH=y
1743CONFIG_CRYPTO_MANAGER=y 1766CONFIG_CRYPTO_MANAGER=y
1767# CONFIG_CRYPTO_GF128MUL is not set
1768# CONFIG_CRYPTO_NULL is not set
1769# CONFIG_CRYPTO_CRYPTD is not set
1770CONFIG_CRYPTO_AUTHENC=y
1771# CONFIG_CRYPTO_TEST is not set
1772
1773#
1774# Authenticated Encryption with Associated Data
1775#
1776# CONFIG_CRYPTO_CCM is not set
1777# CONFIG_CRYPTO_GCM is not set
1778# CONFIG_CRYPTO_SEQIV is not set
1779
1780#
1781# Block modes
1782#
1783CONFIG_CRYPTO_CBC=y
1784# CONFIG_CRYPTO_CTR is not set
1785# CONFIG_CRYPTO_CTS is not set
1786# CONFIG_CRYPTO_ECB is not set
1787# CONFIG_CRYPTO_LRW is not set
1788# CONFIG_CRYPTO_PCBC is not set
1789# CONFIG_CRYPTO_XTS is not set
1790
1791#
1792# Hash modes
1793#
1744CONFIG_CRYPTO_HMAC=y 1794CONFIG_CRYPTO_HMAC=y
1745# CONFIG_CRYPTO_XCBC is not set 1795# CONFIG_CRYPTO_XCBC is not set
1746# CONFIG_CRYPTO_NULL is not set 1796
1797#
1798# Digest
1799#
1800# CONFIG_CRYPTO_CRC32C is not set
1747CONFIG_CRYPTO_MD4=y 1801CONFIG_CRYPTO_MD4=y
1748CONFIG_CRYPTO_MD5=y 1802CONFIG_CRYPTO_MD5=y
1803# CONFIG_CRYPTO_MICHAEL_MIC is not set
1749CONFIG_CRYPTO_SHA1=y 1804CONFIG_CRYPTO_SHA1=y
1750CONFIG_CRYPTO_SHA256=y 1805CONFIG_CRYPTO_SHA256=y
1751CONFIG_CRYPTO_SHA512=y 1806CONFIG_CRYPTO_SHA512=y
1752# CONFIG_CRYPTO_WP512 is not set
1753# CONFIG_CRYPTO_TGR192 is not set 1807# CONFIG_CRYPTO_TGR192 is not set
1754# CONFIG_CRYPTO_GF128MUL is not set 1808# CONFIG_CRYPTO_WP512 is not set
1755# CONFIG_CRYPTO_ECB is not set 1809
1756CONFIG_CRYPTO_CBC=y 1810#
1757# CONFIG_CRYPTO_PCBC is not set 1811# Ciphers
1758# CONFIG_CRYPTO_LRW is not set 1812#
1759# CONFIG_CRYPTO_XTS is not set
1760# CONFIG_CRYPTO_CTR is not set
1761# CONFIG_CRYPTO_GCM is not set
1762# CONFIG_CRYPTO_CCM is not set
1763# CONFIG_CRYPTO_CRYPTD is not set
1764CONFIG_CRYPTO_DES=y
1765# CONFIG_CRYPTO_FCRYPT is not set
1766CONFIG_CRYPTO_BLOWFISH=y
1767# CONFIG_CRYPTO_TWOFISH is not set
1768# CONFIG_CRYPTO_SERPENT is not set
1769CONFIG_CRYPTO_AES=y 1813CONFIG_CRYPTO_AES=y
1814# CONFIG_CRYPTO_ANUBIS is not set
1815# CONFIG_CRYPTO_ARC4 is not set
1816CONFIG_CRYPTO_BLOWFISH=y
1817# CONFIG_CRYPTO_CAMELLIA is not set
1770# CONFIG_CRYPTO_CAST5 is not set 1818# CONFIG_CRYPTO_CAST5 is not set
1771# CONFIG_CRYPTO_CAST6 is not set 1819# CONFIG_CRYPTO_CAST6 is not set
1772# CONFIG_CRYPTO_TEA is not set 1820CONFIG_CRYPTO_DES=y
1773# CONFIG_CRYPTO_ARC4 is not set 1821# CONFIG_CRYPTO_FCRYPT is not set
1774# CONFIG_CRYPTO_KHAZAD is not set 1822# CONFIG_CRYPTO_KHAZAD is not set
1775# CONFIG_CRYPTO_ANUBIS is not set
1776# CONFIG_CRYPTO_SEED is not set
1777# CONFIG_CRYPTO_SALSA20 is not set 1823# CONFIG_CRYPTO_SALSA20 is not set
1824# CONFIG_CRYPTO_SEED is not set
1825# CONFIG_CRYPTO_SERPENT is not set
1826# CONFIG_CRYPTO_TEA is not set
1827# CONFIG_CRYPTO_TWOFISH is not set
1828
1829#
1830# Compression
1831#
1778# CONFIG_CRYPTO_DEFLATE is not set 1832# CONFIG_CRYPTO_DEFLATE is not set
1779# CONFIG_CRYPTO_MICHAEL_MIC is not set
1780# CONFIG_CRYPTO_CRC32C is not set
1781# CONFIG_CRYPTO_CAMELLIA is not set
1782# CONFIG_CRYPTO_TEST is not set
1783CONFIG_CRYPTO_AUTHENC=y
1784# CONFIG_CRYPTO_LZO is not set 1833# CONFIG_CRYPTO_LZO is not set
1785CONFIG_CRYPTO_HW=y 1834CONFIG_CRYPTO_HW=y
1786# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1835# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1787# CONFIG_PPC_CLOCK is not set 1836# CONFIG_PPC_CLOCK is not set
1837# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/pmac32_defconfig b/arch/powerpc/configs/pmac32_defconfig
index fca114252ac7..3688e4bb6fc2 100644
--- a/arch/powerpc/configs/pmac32_defconfig
+++ b/arch/powerpc/configs/pmac32_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.25-rc6 3# Linux kernel version: 2.6.26-rc3
4# Thu Mar 27 13:56:21 2008 4# Tue May 20 20:02:24 2008
5# 5#
6# CONFIG_PPC64 is not set 6# CONFIG_PPC64 is not set
7 7
@@ -31,6 +31,8 @@ CONFIG_GENERIC_CLOCKEVENTS=y
31CONFIG_GENERIC_HARDIRQS=y 31CONFIG_GENERIC_HARDIRQS=y
32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33CONFIG_IRQ_PER_CPU=y 33CONFIG_IRQ_PER_CPU=y
34CONFIG_STACKTRACE_SUPPORT=y
35CONFIG_LOCKDEP_SUPPORT=y
34CONFIG_RWSEM_XCHGADD_ALGORITHM=y 36CONFIG_RWSEM_XCHGADD_ALGORITHM=y
35CONFIG_ARCH_HAS_ILOG2_U32=y 37CONFIG_ARCH_HAS_ILOG2_U32=y
36CONFIG_GENERIC_HWEIGHT=y 38CONFIG_GENERIC_HWEIGHT=y
@@ -91,6 +93,7 @@ CONFIG_INITRAMFS_SOURCE=""
91CONFIG_SYSCTL=y 93CONFIG_SYSCTL=y
92# CONFIG_EMBEDDED is not set 94# CONFIG_EMBEDDED is not set
93CONFIG_SYSCTL_SYSCALL=y 95CONFIG_SYSCTL_SYSCALL=y
96CONFIG_SYSCTL_SYSCALL_CHECK=y
94CONFIG_KALLSYMS=y 97CONFIG_KALLSYMS=y
95# CONFIG_KALLSYMS_ALL is not set 98# CONFIG_KALLSYMS_ALL is not set
96# CONFIG_KALLSYMS_EXTRA_PASS is not set 99# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -119,12 +122,14 @@ CONFIG_HAVE_OPROFILE=y
119# CONFIG_KPROBES is not set 122# CONFIG_KPROBES is not set
120CONFIG_HAVE_KPROBES=y 123CONFIG_HAVE_KPROBES=y
121CONFIG_HAVE_KRETPROBES=y 124CONFIG_HAVE_KRETPROBES=y
125# CONFIG_HAVE_DMA_ATTRS is not set
122CONFIG_PROC_PAGE_MONITOR=y 126CONFIG_PROC_PAGE_MONITOR=y
123CONFIG_SLABINFO=y 127CONFIG_SLABINFO=y
124CONFIG_RT_MUTEXES=y 128CONFIG_RT_MUTEXES=y
125# CONFIG_TINY_SHMEM is not set 129# CONFIG_TINY_SHMEM is not set
126CONFIG_BASE_SMALL=0 130CONFIG_BASE_SMALL=0
127CONFIG_MODULES=y 131CONFIG_MODULES=y
132# CONFIG_MODULE_FORCE_LOAD is not set
128CONFIG_MODULE_UNLOAD=y 133CONFIG_MODULE_UNLOAD=y
129CONFIG_MODULE_FORCE_UNLOAD=y 134CONFIG_MODULE_FORCE_UNLOAD=y
130# CONFIG_MODVERSIONS is not set 135# CONFIG_MODVERSIONS is not set
@@ -185,6 +190,7 @@ CONFIG_CPU_FREQ_TABLE=y
185CONFIG_CPU_FREQ_STAT=y 190CONFIG_CPU_FREQ_STAT=y
186# CONFIG_CPU_FREQ_STAT_DETAILS is not set 191# CONFIG_CPU_FREQ_STAT_DETAILS is not set
187CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 192CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
193# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
188# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 194# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
189# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set 195# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
190# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set 196# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -236,16 +242,17 @@ CONFIG_FLATMEM=y
236CONFIG_FLAT_NODE_MEM_MAP=y 242CONFIG_FLAT_NODE_MEM_MAP=y
237# CONFIG_SPARSEMEM_STATIC is not set 243# CONFIG_SPARSEMEM_STATIC is not set
238# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 244# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
245CONFIG_PAGEFLAGS_EXTENDED=y
239CONFIG_SPLIT_PTLOCK_CPUS=4 246CONFIG_SPLIT_PTLOCK_CPUS=4
240# CONFIG_RESOURCES_64BIT is not set 247# CONFIG_RESOURCES_64BIT is not set
241CONFIG_ZONE_DMA_FLAG=1 248CONFIG_ZONE_DMA_FLAG=1
242CONFIG_BOUNCE=y 249CONFIG_BOUNCE=y
243CONFIG_VIRT_TO_BUS=y 250CONFIG_VIRT_TO_BUS=y
251CONFIG_FORCE_MAX_ZONEORDER=11
244CONFIG_PROC_DEVICETREE=y 252CONFIG_PROC_DEVICETREE=y
245# CONFIG_CMDLINE_BOOL is not set 253# CONFIG_CMDLINE_BOOL is not set
246CONFIG_ARCH_WANTS_FREEZER_CONTROL=y 254CONFIG_ARCH_WANTS_FREEZER_CONTROL=y
247CONFIG_PM=y 255CONFIG_PM=y
248# CONFIG_PM_LEGACY is not set
249CONFIG_PM_DEBUG=y 256CONFIG_PM_DEBUG=y
250# CONFIG_PM_VERBOSE is not set 257# CONFIG_PM_VERBOSE is not set
251CONFIG_CAN_PM_TRACE=y 258CONFIG_CAN_PM_TRACE=y
@@ -292,6 +299,7 @@ CONFIG_YENTA_TOSHIBA=y
292# CONFIG_I82092 is not set 299# CONFIG_I82092 is not set
293CONFIG_PCCARD_NONSTATIC=m 300CONFIG_PCCARD_NONSTATIC=m
294# CONFIG_HOTPLUG_PCI is not set 301# CONFIG_HOTPLUG_PCI is not set
302# CONFIG_HAS_RAPIDIO is not set
295 303
296# 304#
297# Advanced setup 305# Advanced setup
@@ -301,11 +309,11 @@ CONFIG_PCCARD_NONSTATIC=m
301# 309#
302# Default settings for advanced configuration options are used 310# Default settings for advanced configuration options are used
303# 311#
304CONFIG_HIGHMEM_START=0xfe000000
305CONFIG_LOWMEM_SIZE=0x30000000 312CONFIG_LOWMEM_SIZE=0x30000000
313CONFIG_PAGE_OFFSET=0xc0000000
306CONFIG_KERNEL_START=0xc0000000 314CONFIG_KERNEL_START=0xc0000000
315CONFIG_PHYSICAL_START=0x00000000
307CONFIG_TASK_SIZE=0xc0000000 316CONFIG_TASK_SIZE=0xc0000000
308CONFIG_BOOT_LOAD=0x00800000
309 317
310# 318#
311# Networking 319# Networking
@@ -352,8 +360,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
352# CONFIG_TCP_MD5SIG is not set 360# CONFIG_TCP_MD5SIG is not set
353# CONFIG_IP_VS is not set 361# CONFIG_IP_VS is not set
354# CONFIG_IPV6 is not set 362# CONFIG_IPV6 is not set
355# CONFIG_INET6_XFRM_TUNNEL is not set
356# CONFIG_INET6_TUNNEL is not set
357# CONFIG_NETWORK_SECMARK is not set 363# CONFIG_NETWORK_SECMARK is not set
358CONFIG_NETFILTER=y 364CONFIG_NETFILTER=y
359# CONFIG_NETFILTER_DEBUG is not set 365# CONFIG_NETFILTER_DEBUG is not set
@@ -369,6 +375,7 @@ CONFIG_NF_CONNTRACK=m
369# CONFIG_NF_CT_ACCT is not set 375# CONFIG_NF_CT_ACCT is not set
370# CONFIG_NF_CONNTRACK_MARK is not set 376# CONFIG_NF_CONNTRACK_MARK is not set
371# CONFIG_NF_CONNTRACK_EVENTS is not set 377# CONFIG_NF_CONNTRACK_EVENTS is not set
378CONFIG_NF_CT_PROTO_DCCP=m
372# CONFIG_NF_CT_PROTO_SCTP is not set 379# CONFIG_NF_CT_PROTO_SCTP is not set
373# CONFIG_NF_CT_PROTO_UDPLITE is not set 380# CONFIG_NF_CT_PROTO_UDPLITE is not set
374# CONFIG_NF_CONNTRACK_AMANDA is not set 381# CONFIG_NF_CONNTRACK_AMANDA is not set
@@ -445,6 +452,7 @@ CONFIG_IP_NF_TARGET_MASQUERADE=m
445CONFIG_IP_NF_TARGET_REDIRECT=m 452CONFIG_IP_NF_TARGET_REDIRECT=m
446CONFIG_IP_NF_TARGET_NETMAP=m 453CONFIG_IP_NF_TARGET_NETMAP=m
447# CONFIG_NF_NAT_SNMP_BASIC is not set 454# CONFIG_NF_NAT_SNMP_BASIC is not set
455CONFIG_NF_NAT_PROTO_DCCP=m
448CONFIG_NF_NAT_FTP=m 456CONFIG_NF_NAT_FTP=m
449CONFIG_NF_NAT_IRC=m 457CONFIG_NF_NAT_IRC=m
450CONFIG_NF_NAT_TFTP=m 458CONFIG_NF_NAT_TFTP=m
@@ -586,7 +594,6 @@ CONFIG_MAC80211=m
586# Rate control algorithm selection 594# Rate control algorithm selection
587# 595#
588CONFIG_MAC80211_RC_DEFAULT_PID=y 596CONFIG_MAC80211_RC_DEFAULT_PID=y
589# CONFIG_MAC80211_RC_DEFAULT_SIMPLE is not set
590# CONFIG_MAC80211_RC_DEFAULT_NONE is not set 597# CONFIG_MAC80211_RC_DEFAULT_NONE is not set
591 598
592# 599#
@@ -598,7 +605,7 @@ CONFIG_MAC80211_RC_DEFAULT_PID=y
598# 605#
599CONFIG_MAC80211_RC_DEFAULT="pid" 606CONFIG_MAC80211_RC_DEFAULT="pid"
600CONFIG_MAC80211_RC_PID=y 607CONFIG_MAC80211_RC_PID=y
601# CONFIG_MAC80211_RC_SIMPLE is not set 608# CONFIG_MAC80211_MESH is not set
602CONFIG_MAC80211_LEDS=y 609CONFIG_MAC80211_LEDS=y
603# CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT is not set 610# CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT is not set
604# CONFIG_MAC80211_DEBUG is not set 611# CONFIG_MAC80211_DEBUG is not set
@@ -607,7 +614,6 @@ CONFIG_IEEE80211=m
607CONFIG_IEEE80211_CRYPT_WEP=m 614CONFIG_IEEE80211_CRYPT_WEP=m
608CONFIG_IEEE80211_CRYPT_CCMP=m 615CONFIG_IEEE80211_CRYPT_CCMP=m
609CONFIG_IEEE80211_CRYPT_TKIP=m 616CONFIG_IEEE80211_CRYPT_TKIP=m
610# CONFIG_IEEE80211_SOFTMAC is not set
611# CONFIG_RFKILL is not set 617# CONFIG_RFKILL is not set
612# CONFIG_NET_9P is not set 618# CONFIG_NET_9P is not set
613 619
@@ -629,6 +635,7 @@ CONFIG_CONNECTOR=y
629CONFIG_PROC_EVENTS=y 635CONFIG_PROC_EVENTS=y
630# CONFIG_MTD is not set 636# CONFIG_MTD is not set
631CONFIG_OF_DEVICE=y 637CONFIG_OF_DEVICE=y
638CONFIG_OF_I2C=y
632# CONFIG_PARPORT is not set 639# CONFIG_PARPORT is not set
633CONFIG_BLK_DEV=y 640CONFIG_BLK_DEV=y
634# CONFIG_BLK_DEV_FD is not set 641# CONFIG_BLK_DEV_FD is not set
@@ -720,7 +727,7 @@ CONFIG_BLK_DEV_IDE_PMAC=y
720CONFIG_BLK_DEV_IDE_PMAC_ATA100FIRST=y 727CONFIG_BLK_DEV_IDE_PMAC_ATA100FIRST=y
721CONFIG_BLK_DEV_IDEDMA_PMAC=y 728CONFIG_BLK_DEV_IDEDMA_PMAC=y
722CONFIG_BLK_DEV_IDEDMA=y 729CONFIG_BLK_DEV_IDEDMA=y
723CONFIG_IDE_ARCH_OBSOLETE_INIT=y 730# CONFIG_BLK_DEV_HD_ONLY is not set
724# CONFIG_BLK_DEV_HD is not set 731# CONFIG_BLK_DEV_HD is not set
725 732
726# 733#
@@ -906,7 +913,6 @@ CONFIG_SUNGEM=y
906# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 913# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
907CONFIG_NET_PCI=y 914CONFIG_NET_PCI=y
908CONFIG_PCNET32=y 915CONFIG_PCNET32=y
909# CONFIG_PCNET32_NAPI is not set
910# CONFIG_AMD8111_ETH is not set 916# CONFIG_AMD8111_ETH is not set
911# CONFIG_ADAPTEC_STARFIRE is not set 917# CONFIG_ADAPTEC_STARFIRE is not set
912# CONFIG_B44 is not set 918# CONFIG_B44 is not set
@@ -940,7 +946,6 @@ CONFIG_NETDEV_1000=y
940# CONFIG_SIS190 is not set 946# CONFIG_SIS190 is not set
941# CONFIG_SKGE is not set 947# CONFIG_SKGE is not set
942# CONFIG_SKY2 is not set 948# CONFIG_SKY2 is not set
943# CONFIG_SK98LIN is not set
944# CONFIG_VIA_VELOCITY is not set 949# CONFIG_VIA_VELOCITY is not set
945# CONFIG_TIGON3 is not set 950# CONFIG_TIGON3 is not set
946# CONFIG_BNX2 is not set 951# CONFIG_BNX2 is not set
@@ -959,6 +964,7 @@ CONFIG_NETDEV_10000=y
959# CONFIG_MLX4_CORE is not set 964# CONFIG_MLX4_CORE is not set
960# CONFIG_TEHUTI is not set 965# CONFIG_TEHUTI is not set
961# CONFIG_BNX2X is not set 966# CONFIG_BNX2X is not set
967# CONFIG_SFC is not set
962# CONFIG_TR is not set 968# CONFIG_TR is not set
963 969
964# 970#
@@ -992,6 +998,8 @@ CONFIG_P54_COMMON=m
992# CONFIG_P54_USB is not set 998# CONFIG_P54_USB is not set
993# CONFIG_P54_PCI is not set 999# CONFIG_P54_PCI is not set
994# CONFIG_ATH5K is not set 1000# CONFIG_ATH5K is not set
1001# CONFIG_IWLCORE is not set
1002# CONFIG_IWLWIFI_LEDS is not set
995# CONFIG_IWL4965 is not set 1003# CONFIG_IWL4965 is not set
996# CONFIG_IWL3945 is not set 1004# CONFIG_IWL3945 is not set
997# CONFIG_HOSTAP is not set 1005# CONFIG_HOSTAP is not set
@@ -1110,6 +1118,7 @@ CONFIG_VT=y
1110CONFIG_VT_CONSOLE=y 1118CONFIG_VT_CONSOLE=y
1111CONFIG_HW_CONSOLE=y 1119CONFIG_HW_CONSOLE=y
1112# CONFIG_VT_HW_CONSOLE_BINDING is not set 1120# CONFIG_VT_HW_CONSOLE_BINDING is not set
1121CONFIG_DEVKMEM=y
1113# CONFIG_SERIAL_NONSTANDARD is not set 1122# CONFIG_SERIAL_NONSTANDARD is not set
1114# CONFIG_NOZOMI is not set 1123# CONFIG_NOZOMI is not set
1115 1124
@@ -1156,13 +1165,7 @@ CONFIG_DEVPORT=y
1156CONFIG_I2C=y 1165CONFIG_I2C=y
1157CONFIG_I2C_BOARDINFO=y 1166CONFIG_I2C_BOARDINFO=y
1158CONFIG_I2C_CHARDEV=m 1167CONFIG_I2C_CHARDEV=m
1159
1160#
1161# I2C Algorithms
1162#
1163CONFIG_I2C_ALGOBIT=y 1168CONFIG_I2C_ALGOBIT=y
1164# CONFIG_I2C_ALGOPCF is not set
1165# CONFIG_I2C_ALGOPCA is not set
1166 1169
1167# 1170#
1168# I2C Hardware Bus support 1171# I2C Hardware Bus support
@@ -1192,6 +1195,7 @@ CONFIG_I2C_POWERMAC=y
1192# CONFIG_I2C_VIA is not set 1195# CONFIG_I2C_VIA is not set
1193# CONFIG_I2C_VIAPRO is not set 1196# CONFIG_I2C_VIAPRO is not set
1194# CONFIG_I2C_VOODOO3 is not set 1197# CONFIG_I2C_VOODOO3 is not set
1198# CONFIG_I2C_PCA_PLATFORM is not set
1195 1199
1196# 1200#
1197# Miscellaneous I2C Chip support 1201# Miscellaneous I2C Chip support
@@ -1201,19 +1205,13 @@ CONFIG_I2C_POWERMAC=y
1201# CONFIG_SENSORS_PCF8574 is not set 1205# CONFIG_SENSORS_PCF8574 is not set
1202# CONFIG_PCF8575 is not set 1206# CONFIG_PCF8575 is not set
1203# CONFIG_SENSORS_PCF8591 is not set 1207# CONFIG_SENSORS_PCF8591 is not set
1204# CONFIG_TPS65010 is not set
1205# CONFIG_SENSORS_MAX6875 is not set 1208# CONFIG_SENSORS_MAX6875 is not set
1206# CONFIG_SENSORS_TSL2550 is not set 1209# CONFIG_SENSORS_TSL2550 is not set
1207# CONFIG_I2C_DEBUG_CORE is not set 1210# CONFIG_I2C_DEBUG_CORE is not set
1208# CONFIG_I2C_DEBUG_ALGO is not set 1211# CONFIG_I2C_DEBUG_ALGO is not set
1209# CONFIG_I2C_DEBUG_BUS is not set 1212# CONFIG_I2C_DEBUG_BUS is not set
1210# CONFIG_I2C_DEBUG_CHIP is not set 1213# CONFIG_I2C_DEBUG_CHIP is not set
1211
1212#
1213# SPI support
1214#
1215# CONFIG_SPI is not set 1214# CONFIG_SPI is not set
1216# CONFIG_SPI_MASTER is not set
1217# CONFIG_W1 is not set 1215# CONFIG_W1 is not set
1218CONFIG_POWER_SUPPLY=y 1216CONFIG_POWER_SUPPLY=y
1219# CONFIG_POWER_SUPPLY_DEBUG is not set 1217# CONFIG_POWER_SUPPLY_DEBUG is not set
@@ -1230,6 +1228,7 @@ CONFIG_BATTERY_PMU=y
1230# 1228#
1231CONFIG_SSB_POSSIBLE=y 1229CONFIG_SSB_POSSIBLE=y
1232CONFIG_SSB=m 1230CONFIG_SSB=m
1231CONFIG_SSB_SPROM=y
1233CONFIG_SSB_PCIHOST_POSSIBLE=y 1232CONFIG_SSB_PCIHOST_POSSIBLE=y
1234CONFIG_SSB_PCIHOST=y 1233CONFIG_SSB_PCIHOST=y
1235CONFIG_SSB_B43_PCI_BRIDGE=y 1234CONFIG_SSB_B43_PCI_BRIDGE=y
@@ -1243,12 +1242,22 @@ CONFIG_SSB_DRIVER_PCICORE=y
1243# Multifunction device drivers 1242# Multifunction device drivers
1244# 1243#
1245# CONFIG_MFD_SM501 is not set 1244# CONFIG_MFD_SM501 is not set
1245# CONFIG_HTC_PASIC3 is not set
1246 1246
1247# 1247#
1248# Multimedia devices 1248# Multimedia devices
1249# 1249#
1250
1251#
1252# Multimedia core support
1253#
1250# CONFIG_VIDEO_DEV is not set 1254# CONFIG_VIDEO_DEV is not set
1251# CONFIG_DVB_CORE is not set 1255# CONFIG_DVB_CORE is not set
1256# CONFIG_VIDEO_MEDIA is not set
1257
1258#
1259# Multimedia drivers
1260#
1252# CONFIG_DAB is not set 1261# CONFIG_DAB is not set
1253 1262
1254# 1263#
@@ -1276,8 +1285,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
1276# CONFIG_FB_SYS_FILLRECT is not set 1285# CONFIG_FB_SYS_FILLRECT is not set
1277# CONFIG_FB_SYS_COPYAREA is not set 1286# CONFIG_FB_SYS_COPYAREA is not set
1278# CONFIG_FB_SYS_IMAGEBLIT is not set 1287# CONFIG_FB_SYS_IMAGEBLIT is not set
1288# CONFIG_FB_FOREIGN_ENDIAN is not set
1279# CONFIG_FB_SYS_FOPS is not set 1289# CONFIG_FB_SYS_FOPS is not set
1280CONFIG_FB_DEFERRED_IO=y
1281# CONFIG_FB_SVGALIB is not set 1290# CONFIG_FB_SVGALIB is not set
1282CONFIG_FB_MACMODES=y 1291CONFIG_FB_MACMODES=y
1283CONFIG_FB_BACKLIGHT=y 1292CONFIG_FB_BACKLIGHT=y
@@ -1413,6 +1422,7 @@ CONFIG_SND_DUMMY=m
1413# CONFIG_SND_AU8810 is not set 1422# CONFIG_SND_AU8810 is not set
1414# CONFIG_SND_AU8820 is not set 1423# CONFIG_SND_AU8820 is not set
1415# CONFIG_SND_AU8830 is not set 1424# CONFIG_SND_AU8830 is not set
1425# CONFIG_SND_AW2 is not set
1416# CONFIG_SND_AZT3328 is not set 1426# CONFIG_SND_AZT3328 is not set
1417# CONFIG_SND_BT87X is not set 1427# CONFIG_SND_BT87X is not set
1418# CONFIG_SND_CA0106 is not set 1428# CONFIG_SND_CA0106 is not set
@@ -1505,11 +1515,11 @@ CONFIG_SND_USB_AUDIO=m
1505# CONFIG_SND_SOC is not set 1515# CONFIG_SND_SOC is not set
1506 1516
1507# 1517#
1508# SoC Audio support for SuperH 1518# ALSA SoC audio for Freescale SOCs
1509# 1519#
1510 1520
1511# 1521#
1512# ALSA SoC audio for Freescale SOCs 1522# SoC Audio for the Texas Instruments OMAP
1513# 1523#
1514 1524
1515# 1525#
@@ -1543,17 +1553,18 @@ CONFIG_USB_DEVICEFS=y
1543CONFIG_USB_DEVICE_CLASS=y 1553CONFIG_USB_DEVICE_CLASS=y
1544CONFIG_USB_DYNAMIC_MINORS=y 1554CONFIG_USB_DYNAMIC_MINORS=y
1545# CONFIG_USB_SUSPEND is not set 1555# CONFIG_USB_SUSPEND is not set
1546# CONFIG_USB_PERSIST is not set
1547# CONFIG_USB_OTG is not set 1556# CONFIG_USB_OTG is not set
1548 1557
1549# 1558#
1550# USB Host Controller Drivers 1559# USB Host Controller Drivers
1551# 1560#
1561# CONFIG_USB_C67X00_HCD is not set
1552CONFIG_USB_EHCI_HCD=m 1562CONFIG_USB_EHCI_HCD=m
1553CONFIG_USB_EHCI_ROOT_HUB_TT=y 1563CONFIG_USB_EHCI_ROOT_HUB_TT=y
1554# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1564# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1555# CONFIG_USB_EHCI_HCD_PPC_OF is not set 1565# CONFIG_USB_EHCI_HCD_PPC_OF is not set
1556# CONFIG_USB_ISP116X_HCD is not set 1566# CONFIG_USB_ISP116X_HCD is not set
1567# CONFIG_USB_ISP1760_HCD is not set
1557CONFIG_USB_OHCI_HCD=y 1568CONFIG_USB_OHCI_HCD=y
1558# CONFIG_USB_OHCI_HCD_PPC_OF is not set 1569# CONFIG_USB_OHCI_HCD_PPC_OF is not set
1559# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 1570# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
@@ -1587,7 +1598,9 @@ CONFIG_USB_STORAGE=m
1587# CONFIG_USB_STORAGE_SDDR55 is not set 1598# CONFIG_USB_STORAGE_SDDR55 is not set
1588# CONFIG_USB_STORAGE_JUMPSHOT is not set 1599# CONFIG_USB_STORAGE_JUMPSHOT is not set
1589# CONFIG_USB_STORAGE_ALAUDA is not set 1600# CONFIG_USB_STORAGE_ALAUDA is not set
1601CONFIG_USB_STORAGE_ONETOUCH=y
1590# CONFIG_USB_STORAGE_KARMA is not set 1602# CONFIG_USB_STORAGE_KARMA is not set
1603# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
1591# CONFIG_USB_LIBUSUAL is not set 1604# CONFIG_USB_LIBUSUAL is not set
1592 1605
1593# 1606#
@@ -1642,9 +1655,11 @@ CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
1642# CONFIG_USB_SERIAL_MCT_U232 is not set 1655# CONFIG_USB_SERIAL_MCT_U232 is not set
1643# CONFIG_USB_SERIAL_MOS7720 is not set 1656# CONFIG_USB_SERIAL_MOS7720 is not set
1644# CONFIG_USB_SERIAL_MOS7840 is not set 1657# CONFIG_USB_SERIAL_MOS7840 is not set
1658# CONFIG_USB_SERIAL_MOTOROLA is not set
1645# CONFIG_USB_SERIAL_NAVMAN is not set 1659# CONFIG_USB_SERIAL_NAVMAN is not set
1646# CONFIG_USB_SERIAL_PL2303 is not set 1660# CONFIG_USB_SERIAL_PL2303 is not set
1647# CONFIG_USB_SERIAL_OTI6858 is not set 1661# CONFIG_USB_SERIAL_OTI6858 is not set
1662# CONFIG_USB_SERIAL_SPCP8X5 is not set
1648# CONFIG_USB_SERIAL_HP4X is not set 1663# CONFIG_USB_SERIAL_HP4X is not set
1649# CONFIG_USB_SERIAL_SAFE is not set 1664# CONFIG_USB_SERIAL_SAFE is not set
1650# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set 1665# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
@@ -1695,14 +1710,12 @@ CONFIG_LEDS_TRIGGERS=y
1695# CONFIG_LEDS_TRIGGER_TIMER is not set 1710# CONFIG_LEDS_TRIGGER_TIMER is not set
1696CONFIG_LEDS_TRIGGER_IDE_DISK=y 1711CONFIG_LEDS_TRIGGER_IDE_DISK=y
1697# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set 1712# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
1713CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
1714# CONFIG_ACCESSIBILITY is not set
1698# CONFIG_INFINIBAND is not set 1715# CONFIG_INFINIBAND is not set
1699# CONFIG_EDAC is not set 1716# CONFIG_EDAC is not set
1700# CONFIG_RTC_CLASS is not set 1717# CONFIG_RTC_CLASS is not set
1701# CONFIG_DMADEVICES is not set 1718# CONFIG_DMADEVICES is not set
1702
1703#
1704# Userspace I/O
1705#
1706# CONFIG_UIO is not set 1719# CONFIG_UIO is not set
1707 1720
1708# 1721#
@@ -1786,13 +1799,11 @@ CONFIG_NFS_FS=y
1786CONFIG_NFS_V3=y 1799CONFIG_NFS_V3=y
1787CONFIG_NFS_V3_ACL=y 1800CONFIG_NFS_V3_ACL=y
1788CONFIG_NFS_V4=y 1801CONFIG_NFS_V4=y
1789# CONFIG_NFS_DIRECTIO is not set
1790CONFIG_NFSD=m 1802CONFIG_NFSD=m
1791CONFIG_NFSD_V2_ACL=y 1803CONFIG_NFSD_V2_ACL=y
1792CONFIG_NFSD_V3=y 1804CONFIG_NFSD_V3=y
1793CONFIG_NFSD_V3_ACL=y 1805CONFIG_NFSD_V3_ACL=y
1794CONFIG_NFSD_V4=y 1806CONFIG_NFSD_V4=y
1795CONFIG_NFSD_TCP=y
1796CONFIG_LOCKD=y 1807CONFIG_LOCKD=y
1797CONFIG_LOCKD_V4=y 1808CONFIG_LOCKD_V4=y
1798CONFIG_EXPORTFS=m 1809CONFIG_EXPORTFS=m
@@ -1877,9 +1888,10 @@ CONFIG_NLS_UTF8=m
1877# Library routines 1888# Library routines
1878# 1889#
1879CONFIG_BITREVERSE=y 1890CONFIG_BITREVERSE=y
1891# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1880CONFIG_CRC_CCITT=y 1892CONFIG_CRC_CCITT=y
1881CONFIG_CRC16=y 1893CONFIG_CRC16=y
1882# CONFIG_CRC_ITU_T is not set 1894CONFIG_CRC_ITU_T=m
1883CONFIG_CRC32=y 1895CONFIG_CRC32=y
1884# CONFIG_CRC7 is not set 1896# CONFIG_CRC7 is not set
1885CONFIG_LIBCRC32C=m 1897CONFIG_LIBCRC32C=m
@@ -1901,6 +1913,7 @@ CONFIG_HAVE_LMB=y
1901# CONFIG_PRINTK_TIME is not set 1913# CONFIG_PRINTK_TIME is not set
1902CONFIG_ENABLE_WARN_DEPRECATED=y 1914CONFIG_ENABLE_WARN_DEPRECATED=y
1903CONFIG_ENABLE_MUST_CHECK=y 1915CONFIG_ENABLE_MUST_CHECK=y
1916CONFIG_FRAME_WARN=1024
1904CONFIG_MAGIC_SYSRQ=y 1917CONFIG_MAGIC_SYSRQ=y
1905# CONFIG_UNUSED_SYMBOLS is not set 1918# CONFIG_UNUSED_SYMBOLS is not set
1906# CONFIG_DEBUG_FS is not set 1919# CONFIG_DEBUG_FS is not set
@@ -1911,6 +1924,7 @@ CONFIG_DETECT_SOFTLOCKUP=y
1911CONFIG_SCHED_DEBUG=y 1924CONFIG_SCHED_DEBUG=y
1912# CONFIG_SCHEDSTATS is not set 1925# CONFIG_SCHEDSTATS is not set
1913# CONFIG_TIMER_STATS is not set 1926# CONFIG_TIMER_STATS is not set
1927# CONFIG_DEBUG_OBJECTS is not set
1914# CONFIG_SLUB_DEBUG_ON is not set 1928# CONFIG_SLUB_DEBUG_ON is not set
1915# CONFIG_SLUB_STATS is not set 1929# CONFIG_SLUB_STATS is not set
1916# CONFIG_DEBUG_RT_MUTEXES is not set 1930# CONFIG_DEBUG_RT_MUTEXES is not set
@@ -1923,6 +1937,7 @@ CONFIG_SCHED_DEBUG=y
1923CONFIG_DEBUG_BUGVERBOSE=y 1937CONFIG_DEBUG_BUGVERBOSE=y
1924# CONFIG_DEBUG_INFO is not set 1938# CONFIG_DEBUG_INFO is not set
1925# CONFIG_DEBUG_VM is not set 1939# CONFIG_DEBUG_VM is not set
1940# CONFIG_DEBUG_WRITECOUNT is not set
1926# CONFIG_DEBUG_LIST is not set 1941# CONFIG_DEBUG_LIST is not set
1927# CONFIG_DEBUG_SG is not set 1942# CONFIG_DEBUG_SG is not set
1928# CONFIG_BOOT_PRINTK_DELAY is not set 1943# CONFIG_BOOT_PRINTK_DELAY is not set
@@ -1936,6 +1951,7 @@ CONFIG_DEBUGGER=y
1936CONFIG_XMON=y 1951CONFIG_XMON=y
1937CONFIG_XMON_DEFAULT=y 1952CONFIG_XMON_DEFAULT=y
1938CONFIG_XMON_DISASSEMBLY=y 1953CONFIG_XMON_DISASSEMBLY=y
1954CONFIG_IRQSTACKS=y
1939# CONFIG_BDI_SWITCH is not set 1955# CONFIG_BDI_SWITCH is not set
1940CONFIG_BOOTX_TEXT=y 1956CONFIG_BOOTX_TEXT=y
1941# CONFIG_PPC_EARLY_DEBUG is not set 1957# CONFIG_PPC_EARLY_DEBUG is not set
@@ -1947,54 +1963,84 @@ CONFIG_BOOTX_TEXT=y
1947# CONFIG_SECURITY is not set 1963# CONFIG_SECURITY is not set
1948# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1964# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1949CONFIG_CRYPTO=y 1965CONFIG_CRYPTO=y
1966
1967#
1968# Crypto core or helper
1969#
1950CONFIG_CRYPTO_ALGAPI=y 1970CONFIG_CRYPTO_ALGAPI=y
1951CONFIG_CRYPTO_AEAD=y 1971CONFIG_CRYPTO_AEAD=y
1952CONFIG_CRYPTO_BLKCIPHER=y 1972CONFIG_CRYPTO_BLKCIPHER=y
1953# CONFIG_CRYPTO_SEQIV is not set
1954CONFIG_CRYPTO_HASH=y 1973CONFIG_CRYPTO_HASH=y
1955CONFIG_CRYPTO_MANAGER=y 1974CONFIG_CRYPTO_MANAGER=y
1975# CONFIG_CRYPTO_GF128MUL is not set
1976CONFIG_CRYPTO_NULL=m
1977# CONFIG_CRYPTO_CRYPTD is not set
1978CONFIG_CRYPTO_AUTHENC=y
1979# CONFIG_CRYPTO_TEST is not set
1980
1981#
1982# Authenticated Encryption with Associated Data
1983#
1984# CONFIG_CRYPTO_CCM is not set
1985# CONFIG_CRYPTO_GCM is not set
1986# CONFIG_CRYPTO_SEQIV is not set
1987
1988#
1989# Block modes
1990#
1991CONFIG_CRYPTO_CBC=y
1992# CONFIG_CRYPTO_CTR is not set
1993# CONFIG_CRYPTO_CTS is not set
1994CONFIG_CRYPTO_ECB=m
1995# CONFIG_CRYPTO_LRW is not set
1996CONFIG_CRYPTO_PCBC=m
1997# CONFIG_CRYPTO_XTS is not set
1998
1999#
2000# Hash modes
2001#
1956CONFIG_CRYPTO_HMAC=y 2002CONFIG_CRYPTO_HMAC=y
1957# CONFIG_CRYPTO_XCBC is not set 2003# CONFIG_CRYPTO_XCBC is not set
1958CONFIG_CRYPTO_NULL=m 2004
2005#
2006# Digest
2007#
2008CONFIG_CRYPTO_CRC32C=m
1959CONFIG_CRYPTO_MD4=m 2009CONFIG_CRYPTO_MD4=m
1960CONFIG_CRYPTO_MD5=y 2010CONFIG_CRYPTO_MD5=y
2011CONFIG_CRYPTO_MICHAEL_MIC=m
1961CONFIG_CRYPTO_SHA1=y 2012CONFIG_CRYPTO_SHA1=y
1962CONFIG_CRYPTO_SHA256=m 2013CONFIG_CRYPTO_SHA256=m
1963CONFIG_CRYPTO_SHA512=m 2014CONFIG_CRYPTO_SHA512=m
1964CONFIG_CRYPTO_WP512=m
1965CONFIG_CRYPTO_TGR192=m 2015CONFIG_CRYPTO_TGR192=m
1966# CONFIG_CRYPTO_GF128MUL is not set 2016CONFIG_CRYPTO_WP512=m
1967CONFIG_CRYPTO_ECB=m 2017
1968CONFIG_CRYPTO_CBC=y 2018#
1969CONFIG_CRYPTO_PCBC=m 2019# Ciphers
1970# CONFIG_CRYPTO_LRW is not set 2020#
1971# CONFIG_CRYPTO_XTS is not set
1972# CONFIG_CRYPTO_CTR is not set
1973# CONFIG_CRYPTO_GCM is not set
1974# CONFIG_CRYPTO_CCM is not set
1975# CONFIG_CRYPTO_CRYPTD is not set
1976CONFIG_CRYPTO_DES=y
1977# CONFIG_CRYPTO_FCRYPT is not set
1978CONFIG_CRYPTO_BLOWFISH=m
1979CONFIG_CRYPTO_TWOFISH=m
1980CONFIG_CRYPTO_TWOFISH_COMMON=m
1981CONFIG_CRYPTO_SERPENT=m
1982CONFIG_CRYPTO_AES=m 2021CONFIG_CRYPTO_AES=m
2022CONFIG_CRYPTO_ANUBIS=m
2023CONFIG_CRYPTO_ARC4=m
2024CONFIG_CRYPTO_BLOWFISH=m
2025# CONFIG_CRYPTO_CAMELLIA is not set
1983CONFIG_CRYPTO_CAST5=m 2026CONFIG_CRYPTO_CAST5=m
1984CONFIG_CRYPTO_CAST6=m 2027CONFIG_CRYPTO_CAST6=m
1985CONFIG_CRYPTO_TEA=m 2028CONFIG_CRYPTO_DES=y
1986CONFIG_CRYPTO_ARC4=m 2029# CONFIG_CRYPTO_FCRYPT is not set
1987CONFIG_CRYPTO_KHAZAD=m 2030CONFIG_CRYPTO_KHAZAD=m
1988CONFIG_CRYPTO_ANUBIS=m
1989# CONFIG_CRYPTO_SEED is not set
1990# CONFIG_CRYPTO_SALSA20 is not set 2031# CONFIG_CRYPTO_SALSA20 is not set
2032# CONFIG_CRYPTO_SEED is not set
2033CONFIG_CRYPTO_SERPENT=m
2034CONFIG_CRYPTO_TEA=m
2035CONFIG_CRYPTO_TWOFISH=m
2036CONFIG_CRYPTO_TWOFISH_COMMON=m
2037
2038#
2039# Compression
2040#
1991CONFIG_CRYPTO_DEFLATE=m 2041CONFIG_CRYPTO_DEFLATE=m
1992CONFIG_CRYPTO_MICHAEL_MIC=m
1993CONFIG_CRYPTO_CRC32C=m
1994# CONFIG_CRYPTO_CAMELLIA is not set
1995# CONFIG_CRYPTO_TEST is not set
1996CONFIG_CRYPTO_AUTHENC=y
1997# CONFIG_CRYPTO_LZO is not set 2042# CONFIG_CRYPTO_LZO is not set
1998CONFIG_CRYPTO_HW=y 2043CONFIG_CRYPTO_HW=y
1999# CONFIG_CRYPTO_DEV_HIFN_795X is not set 2044# CONFIG_CRYPTO_DEV_HIFN_795X is not set
2000# CONFIG_PPC_CLOCK is not set 2045# CONFIG_PPC_CLOCK is not set
2046# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/ppc64_defconfig b/arch/powerpc/configs/ppc64_defconfig
index 970282b1a004..40f84fa2bd29 100644
--- a/arch/powerpc/configs/ppc64_defconfig
+++ b/arch/powerpc/configs/ppc64_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.25-rc6 3# Linux kernel version: 2.6.26-rc3
4# Thu Mar 27 13:56:24 2008 4# Tue May 20 20:03:02 2008
5# 5#
6CONFIG_PPC64=y 6CONFIG_PPC64=y
7 7
@@ -30,6 +30,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
30CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_HAVE_SETUP_PER_CPU_AREA=y 31CONFIG_HAVE_SETUP_PER_CPU_AREA=y
32CONFIG_IRQ_PER_CPU=y 32CONFIG_IRQ_PER_CPU=y
33CONFIG_STACKTRACE_SUPPORT=y
34CONFIG_TRACE_IRQFLAGS_SUPPORT=y
35CONFIG_LOCKDEP_SUPPORT=y
33CONFIG_RWSEM_XCHGADD_ALGORITHM=y 36CONFIG_RWSEM_XCHGADD_ALGORITHM=y
34CONFIG_ARCH_HAS_ILOG2_U32=y 37CONFIG_ARCH_HAS_ILOG2_U32=y
35CONFIG_ARCH_HAS_ILOG2_U64=y 38CONFIG_ARCH_HAS_ILOG2_U64=y
@@ -82,6 +85,7 @@ CONFIG_LOG_BUF_SHIFT=17
82CONFIG_CGROUPS=y 85CONFIG_CGROUPS=y
83# CONFIG_CGROUP_DEBUG is not set 86# CONFIG_CGROUP_DEBUG is not set
84# CONFIG_CGROUP_NS is not set 87# CONFIG_CGROUP_NS is not set
88# CONFIG_CGROUP_DEVICE is not set
85CONFIG_CPUSETS=y 89CONFIG_CPUSETS=y
86# CONFIG_GROUP_SCHED is not set 90# CONFIG_GROUP_SCHED is not set
87# CONFIG_CGROUP_CPUACCT is not set 91# CONFIG_CGROUP_CPUACCT is not set
@@ -101,6 +105,7 @@ CONFIG_CC_OPTIMIZE_FOR_SIZE=y
101CONFIG_SYSCTL=y 105CONFIG_SYSCTL=y
102# CONFIG_EMBEDDED is not set 106# CONFIG_EMBEDDED is not set
103CONFIG_SYSCTL_SYSCALL=y 107CONFIG_SYSCTL_SYSCALL=y
108CONFIG_SYSCTL_SYSCALL_CHECK=y
104CONFIG_KALLSYMS=y 109CONFIG_KALLSYMS=y
105CONFIG_KALLSYMS_ALL=y 110CONFIG_KALLSYMS_ALL=y
106# CONFIG_KALLSYMS_EXTRA_PASS is not set 111# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -108,6 +113,7 @@ CONFIG_HOTPLUG=y
108CONFIG_PRINTK=y 113CONFIG_PRINTK=y
109CONFIG_BUG=y 114CONFIG_BUG=y
110CONFIG_ELF_CORE=y 115CONFIG_ELF_CORE=y
116CONFIG_PCSPKR_PLATFORM=y
111# CONFIG_COMPAT_BRK is not set 117# CONFIG_COMPAT_BRK is not set
112CONFIG_BASE_FULL=y 118CONFIG_BASE_FULL=y
113CONFIG_FUTEX=y 119CONFIG_FUTEX=y
@@ -129,12 +135,14 @@ CONFIG_HAVE_OPROFILE=y
129# CONFIG_KPROBES is not set 135# CONFIG_KPROBES is not set
130CONFIG_HAVE_KPROBES=y 136CONFIG_HAVE_KPROBES=y
131CONFIG_HAVE_KRETPROBES=y 137CONFIG_HAVE_KRETPROBES=y
138# CONFIG_HAVE_DMA_ATTRS is not set
132CONFIG_PROC_PAGE_MONITOR=y 139CONFIG_PROC_PAGE_MONITOR=y
133CONFIG_SLABINFO=y 140CONFIG_SLABINFO=y
134CONFIG_RT_MUTEXES=y 141CONFIG_RT_MUTEXES=y
135# CONFIG_TINY_SHMEM is not set 142# CONFIG_TINY_SHMEM is not set
136CONFIG_BASE_SMALL=0 143CONFIG_BASE_SMALL=0
137CONFIG_MODULES=y 144CONFIG_MODULES=y
145# CONFIG_MODULE_FORCE_LOAD is not set
138CONFIG_MODULE_UNLOAD=y 146CONFIG_MODULE_UNLOAD=y
139# CONFIG_MODULE_FORCE_UNLOAD is not set 147# CONFIG_MODULE_FORCE_UNLOAD is not set
140CONFIG_MODVERSIONS=y 148CONFIG_MODVERSIONS=y
@@ -194,11 +202,11 @@ CONFIG_PPC_PASEMI=y
194CONFIG_PPC_PASEMI_IOMMU=y 202CONFIG_PPC_PASEMI_IOMMU=y
195# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set 203# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set
196CONFIG_PPC_PASEMI_MDIO=y 204CONFIG_PPC_PASEMI_MDIO=y
197CONFIG_PPC_CELLEB=y
198# CONFIG_PPC_PS3 is not set 205# CONFIG_PPC_PS3 is not set
199CONFIG_PPC_CELL=y 206CONFIG_PPC_CELL=y
200CONFIG_PPC_CELL_NATIVE=y 207CONFIG_PPC_CELL_NATIVE=y
201CONFIG_PPC_IBM_CELL_BLADE=y 208CONFIG_PPC_IBM_CELL_BLADE=y
209CONFIG_PPC_CELLEB=y
202 210
203# 211#
204# Cell Broadband Engine options 212# Cell Broadband Engine options
@@ -241,6 +249,7 @@ CONFIG_CPU_FREQ_TABLE=y
241CONFIG_CPU_FREQ_STAT=y 249CONFIG_CPU_FREQ_STAT=y
242# CONFIG_CPU_FREQ_STAT_DETAILS is not set 250# CONFIG_CPU_FREQ_STAT_DETAILS is not set
243CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 251CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
252# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
244# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 253# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
245# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set 254# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
246# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set 255# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -277,7 +286,6 @@ CONFIG_PREEMPT_NONE=y
277CONFIG_BINFMT_ELF=y 286CONFIG_BINFMT_ELF=y
278CONFIG_COMPAT_BINFMT_ELF=y 287CONFIG_COMPAT_BINFMT_ELF=y
279CONFIG_BINFMT_MISC=m 288CONFIG_BINFMT_MISC=m
280CONFIG_FORCE_MAX_ZONEORDER=13
281CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y 289CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y
282CONFIG_IOMMU_VMERGE=y 290CONFIG_IOMMU_VMERGE=y
283CONFIG_IOMMU_HELPER=y 291CONFIG_IOMMU_HELPER=y
@@ -307,6 +315,7 @@ CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
307CONFIG_SPARSEMEM_VMEMMAP=y 315CONFIG_SPARSEMEM_VMEMMAP=y
308CONFIG_MEMORY_HOTPLUG=y 316CONFIG_MEMORY_HOTPLUG=y
309CONFIG_MEMORY_HOTPLUG_SPARSE=y 317CONFIG_MEMORY_HOTPLUG_SPARSE=y
318CONFIG_PAGEFLAGS_EXTENDED=y
310CONFIG_SPLIT_PTLOCK_CPUS=4 319CONFIG_SPLIT_PTLOCK_CPUS=4
311CONFIG_RESOURCES_64BIT=y 320CONFIG_RESOURCES_64BIT=y
312CONFIG_ZONE_DMA_FLAG=1 321CONFIG_ZONE_DMA_FLAG=1
@@ -314,6 +323,7 @@ CONFIG_BOUNCE=y
314CONFIG_ARCH_MEMORY_PROBE=y 323CONFIG_ARCH_MEMORY_PROBE=y
315CONFIG_PPC_HAS_HASH_64K=y 324CONFIG_PPC_HAS_HASH_64K=y
316# CONFIG_PPC_64K_PAGES is not set 325# CONFIG_PPC_64K_PAGES is not set
326CONFIG_FORCE_MAX_ZONEORDER=13
317# CONFIG_SCHED_SMT is not set 327# CONFIG_SCHED_SMT is not set
318CONFIG_PROC_DEVICETREE=y 328CONFIG_PROC_DEVICETREE=y
319# CONFIG_CMDLINE_BOOL is not set 329# CONFIG_CMDLINE_BOOL is not set
@@ -356,7 +366,10 @@ CONFIG_HOTPLUG_PCI=m
356# CONFIG_HOTPLUG_PCI_SHPC is not set 366# CONFIG_HOTPLUG_PCI_SHPC is not set
357CONFIG_HOTPLUG_PCI_RPA=m 367CONFIG_HOTPLUG_PCI_RPA=m
358CONFIG_HOTPLUG_PCI_RPA_DLPAR=m 368CONFIG_HOTPLUG_PCI_RPA_DLPAR=m
369# CONFIG_HAS_RAPIDIO is not set
370CONFIG_PAGE_OFFSET=0xc000000000000000
359CONFIG_KERNEL_START=0xc000000000000000 371CONFIG_KERNEL_START=0xc000000000000000
372CONFIG_PHYSICAL_START=0x00000000
360 373
361# 374#
362# Networking 375# Networking
@@ -406,8 +419,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
406# CONFIG_TCP_MD5SIG is not set 419# CONFIG_TCP_MD5SIG is not set
407# CONFIG_IP_VS is not set 420# CONFIG_IP_VS is not set
408# CONFIG_IPV6 is not set 421# CONFIG_IPV6 is not set
409# CONFIG_INET6_XFRM_TUNNEL is not set
410# CONFIG_INET6_TUNNEL is not set
411# CONFIG_NETWORK_SECMARK is not set 422# CONFIG_NETWORK_SECMARK is not set
412CONFIG_NETFILTER=y 423CONFIG_NETFILTER=y
413# CONFIG_NETFILTER_DEBUG is not set 424# CONFIG_NETFILTER_DEBUG is not set
@@ -423,6 +434,7 @@ CONFIG_NF_CONNTRACK=m
423CONFIG_NF_CT_ACCT=y 434CONFIG_NF_CT_ACCT=y
424CONFIG_NF_CONNTRACK_MARK=y 435CONFIG_NF_CONNTRACK_MARK=y
425CONFIG_NF_CONNTRACK_EVENTS=y 436CONFIG_NF_CONNTRACK_EVENTS=y
437# CONFIG_NF_CT_PROTO_DCCP is not set
426CONFIG_NF_CT_PROTO_GRE=m 438CONFIG_NF_CT_PROTO_GRE=m
427CONFIG_NF_CT_PROTO_SCTP=m 439CONFIG_NF_CT_PROTO_SCTP=m
428# CONFIG_NF_CT_PROTO_UDPLITE is not set 440# CONFIG_NF_CT_PROTO_UDPLITE is not set
@@ -501,6 +513,7 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
501CONFIG_IP_NF_TARGET_NETMAP=m 513CONFIG_IP_NF_TARGET_NETMAP=m
502CONFIG_NF_NAT_SNMP_BASIC=m 514CONFIG_NF_NAT_SNMP_BASIC=m
503CONFIG_NF_NAT_PROTO_GRE=m 515CONFIG_NF_NAT_PROTO_GRE=m
516CONFIG_NF_NAT_PROTO_SCTP=m
504CONFIG_NF_NAT_FTP=m 517CONFIG_NF_NAT_FTP=m
505CONFIG_NF_NAT_IRC=m 518CONFIG_NF_NAT_IRC=m
506CONFIG_NF_NAT_TFTP=m 519CONFIG_NF_NAT_TFTP=m
@@ -571,6 +584,7 @@ CONFIG_FW_LOADER=y
571# CONFIG_CONNECTOR is not set 584# CONFIG_CONNECTOR is not set
572# CONFIG_MTD is not set 585# CONFIG_MTD is not set
573CONFIG_OF_DEVICE=y 586CONFIG_OF_DEVICE=y
587CONFIG_OF_I2C=y
574# CONFIG_PARPORT is not set 588# CONFIG_PARPORT is not set
575CONFIG_BLK_DEV=y 589CONFIG_BLK_DEV=y
576CONFIG_BLK_DEV_FD=y 590CONFIG_BLK_DEV_FD=y
@@ -618,7 +632,6 @@ CONFIG_IDE_PROC_FS=y
618# 632#
619# IDE chipset support/bugfixes 633# IDE chipset support/bugfixes
620# 634#
621CONFIG_IDE_GENERIC=y
622# CONFIG_BLK_DEV_PLATFORM is not set 635# CONFIG_BLK_DEV_PLATFORM is not set
623CONFIG_BLK_DEV_IDEDMA_SFF=y 636CONFIG_BLK_DEV_IDEDMA_SFF=y
624 637
@@ -661,7 +674,7 @@ CONFIG_BLK_DEV_IDE_PMAC=y
661CONFIG_BLK_DEV_IDE_PMAC_ATA100FIRST=y 674CONFIG_BLK_DEV_IDE_PMAC_ATA100FIRST=y
662CONFIG_BLK_DEV_IDEDMA_PMAC=y 675CONFIG_BLK_DEV_IDEDMA_PMAC=y
663CONFIG_BLK_DEV_IDEDMA=y 676CONFIG_BLK_DEV_IDEDMA=y
664CONFIG_IDE_ARCH_OBSOLETE_INIT=y 677# CONFIG_BLK_DEV_HD_ONLY is not set
665# CONFIG_BLK_DEV_HD is not set 678# CONFIG_BLK_DEV_HD is not set
666 679
667# 680#
@@ -747,64 +760,10 @@ CONFIG_SCSI_DEBUG=m
747# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set 760# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
748CONFIG_ATA=y 761CONFIG_ATA=y
749CONFIG_ATA_NONSTANDARD=y 762CONFIG_ATA_NONSTANDARD=y
763CONFIG_SATA_PMP=y
750# CONFIG_SATA_AHCI is not set 764# CONFIG_SATA_AHCI is not set
751CONFIG_SATA_SVW=y
752# CONFIG_ATA_PIIX is not set
753CONFIG_SATA_MV=y
754# CONFIG_SATA_NV is not set
755# CONFIG_PDC_ADMA is not set
756# CONFIG_SATA_QSTOR is not set
757# CONFIG_SATA_PROMISE is not set
758# CONFIG_SATA_SX4 is not set
759# CONFIG_SATA_SIL is not set
760CONFIG_SATA_SIL24=y 765CONFIG_SATA_SIL24=y
761# CONFIG_SATA_SIS is not set 766# CONFIG_ATA_SFF is not set
762# CONFIG_SATA_ULI is not set
763# CONFIG_SATA_VIA is not set
764# CONFIG_SATA_VITESSE is not set
765# CONFIG_SATA_INIC162X is not set
766# CONFIG_PATA_ALI is not set
767# CONFIG_PATA_AMD is not set
768# CONFIG_PATA_ARTOP is not set
769# CONFIG_PATA_ATIIXP is not set
770# CONFIG_PATA_CMD640_PCI is not set
771# CONFIG_PATA_CMD64X is not set
772# CONFIG_PATA_CS5520 is not set
773# CONFIG_PATA_CS5530 is not set
774# CONFIG_PATA_CYPRESS is not set
775# CONFIG_PATA_EFAR is not set
776# CONFIG_ATA_GENERIC is not set
777# CONFIG_PATA_HPT366 is not set
778# CONFIG_PATA_HPT37X is not set
779# CONFIG_PATA_HPT3X2N is not set
780# CONFIG_PATA_HPT3X3 is not set
781# CONFIG_PATA_IT821X is not set
782# CONFIG_PATA_IT8213 is not set
783# CONFIG_PATA_JMICRON is not set
784# CONFIG_PATA_TRIFLEX is not set
785# CONFIG_PATA_MARVELL is not set
786# CONFIG_PATA_MPIIX is not set
787# CONFIG_PATA_OLDPIIX is not set
788# CONFIG_PATA_NETCELL is not set
789# CONFIG_PATA_NINJA32 is not set
790# CONFIG_PATA_NS87410 is not set
791# CONFIG_PATA_NS87415 is not set
792# CONFIG_PATA_OPTI is not set
793# CONFIG_PATA_OPTIDMA is not set
794CONFIG_PATA_PCMCIA=y
795# CONFIG_PATA_PDC_OLD is not set
796# CONFIG_PATA_RADISYS is not set
797# CONFIG_PATA_RZ1000 is not set
798# CONFIG_PATA_SC1200 is not set
799# CONFIG_PATA_SERVERWORKS is not set
800# CONFIG_PATA_PDC2027X is not set
801# CONFIG_PATA_SIL680 is not set
802# CONFIG_PATA_SIS is not set
803# CONFIG_PATA_VIA is not set
804CONFIG_PATA_WINBOND=y
805CONFIG_PATA_PLATFORM=y
806# CONFIG_PATA_OF_PLATFORM is not set
807CONFIG_PATA_SCC=y
808CONFIG_MD=y 767CONFIG_MD=y
809CONFIG_BLK_DEV_MD=y 768CONFIG_BLK_DEV_MD=y
810CONFIG_MD_LINEAR=y 769CONFIG_MD_LINEAR=y
@@ -866,6 +825,7 @@ CONFIG_WINDFARM=y
866CONFIG_WINDFARM_PM81=y 825CONFIG_WINDFARM_PM81=y
867CONFIG_WINDFARM_PM91=y 826CONFIG_WINDFARM_PM91=y
868CONFIG_WINDFARM_PM112=y 827CONFIG_WINDFARM_PM112=y
828CONFIG_WINDFARM_PM121=y
869# CONFIG_PMAC_RACKMETER is not set 829# CONFIG_PMAC_RACKMETER is not set
870CONFIG_NETDEVICES=y 830CONFIG_NETDEVICES=y
871# CONFIG_NETDEVICES_MULTIQUEUE is not set 831# CONFIG_NETDEVICES_MULTIQUEUE is not set
@@ -911,7 +871,6 @@ CONFIG_IBM_NEW_EMAC_TAH=y
911CONFIG_IBM_NEW_EMAC_EMAC4=y 871CONFIG_IBM_NEW_EMAC_EMAC4=y
912CONFIG_NET_PCI=y 872CONFIG_NET_PCI=y
913CONFIG_PCNET32=y 873CONFIG_PCNET32=y
914# CONFIG_PCNET32_NAPI is not set
915# CONFIG_AMD8111_ETH is not set 874# CONFIG_AMD8111_ETH is not set
916# CONFIG_ADAPTEC_STARFIRE is not set 875# CONFIG_ADAPTEC_STARFIRE is not set
917# CONFIG_B44 is not set 876# CONFIG_B44 is not set
@@ -947,7 +906,6 @@ CONFIG_E1000=y
947# CONFIG_SIS190 is not set 906# CONFIG_SIS190 is not set
948# CONFIG_SKGE is not set 907# CONFIG_SKGE is not set
949# CONFIG_SKY2 is not set 908# CONFIG_SKY2 is not set
950# CONFIG_SK98LIN is not set
951# CONFIG_VIA_VELOCITY is not set 909# CONFIG_VIA_VELOCITY is not set
952CONFIG_TIGON3=y 910CONFIG_TIGON3=y
953# CONFIG_BNX2 is not set 911# CONFIG_BNX2 is not set
@@ -969,6 +927,7 @@ CONFIG_PASEMI_MAC=y
969# CONFIG_MLX4_CORE is not set 927# CONFIG_MLX4_CORE is not set
970# CONFIG_TEHUTI is not set 928# CONFIG_TEHUTI is not set
971# CONFIG_BNX2X is not set 929# CONFIG_BNX2X is not set
930# CONFIG_SFC is not set
972CONFIG_TR=y 931CONFIG_TR=y
973CONFIG_IBMOL=y 932CONFIG_IBMOL=y
974# CONFIG_3C359 is not set 933# CONFIG_3C359 is not set
@@ -979,6 +938,7 @@ CONFIG_IBMOL=y
979# 938#
980# CONFIG_WLAN_PRE80211 is not set 939# CONFIG_WLAN_PRE80211 is not set
981# CONFIG_WLAN_80211 is not set 940# CONFIG_WLAN_80211 is not set
941# CONFIG_IWLWIFI_LEDS is not set
982 942
983# 943#
984# USB Network Adapters 944# USB Network Adapters
@@ -1083,6 +1043,7 @@ CONFIG_VT=y
1083CONFIG_VT_CONSOLE=y 1043CONFIG_VT_CONSOLE=y
1084CONFIG_HW_CONSOLE=y 1044CONFIG_HW_CONSOLE=y
1085# CONFIG_VT_HW_CONSOLE_BINDING is not set 1045# CONFIG_VT_HW_CONSOLE_BINDING is not set
1046CONFIG_DEVKMEM=y
1086# CONFIG_SERIAL_NONSTANDARD is not set 1047# CONFIG_SERIAL_NONSTANDARD is not set
1087# CONFIG_NOZOMI is not set 1048# CONFIG_NOZOMI is not set
1088 1049
@@ -1121,8 +1082,6 @@ CONFIG_HVC_BEAT=y
1121CONFIG_HVCS=m 1082CONFIG_HVCS=m
1122# CONFIG_IPMI_HANDLER is not set 1083# CONFIG_IPMI_HANDLER is not set
1123# CONFIG_HW_RANDOM is not set 1084# CONFIG_HW_RANDOM is not set
1124CONFIG_GEN_RTC=y
1125# CONFIG_GEN_RTC_X is not set
1126# CONFIG_R3964 is not set 1085# CONFIG_R3964 is not set
1127# CONFIG_APPLICOM is not set 1086# CONFIG_APPLICOM is not set
1128 1087
@@ -1141,13 +1100,7 @@ CONFIG_DEVPORT=y
1141CONFIG_I2C=y 1100CONFIG_I2C=y
1142CONFIG_I2C_BOARDINFO=y 1101CONFIG_I2C_BOARDINFO=y
1143CONFIG_I2C_CHARDEV=y 1102CONFIG_I2C_CHARDEV=y
1144
1145#
1146# I2C Algorithms
1147#
1148CONFIG_I2C_ALGOBIT=y 1103CONFIG_I2C_ALGOBIT=y
1149# CONFIG_I2C_ALGOPCF is not set
1150# CONFIG_I2C_ALGOPCA is not set
1151 1104
1152# 1105#
1153# I2C Hardware Bus support 1106# I2C Hardware Bus support
@@ -1177,6 +1130,7 @@ CONFIG_I2C_PASEMI=y
1177# CONFIG_I2C_VIA is not set 1130# CONFIG_I2C_VIA is not set
1178# CONFIG_I2C_VIAPRO is not set 1131# CONFIG_I2C_VIAPRO is not set
1179# CONFIG_I2C_VOODOO3 is not set 1132# CONFIG_I2C_VOODOO3 is not set
1133# CONFIG_I2C_PCA_PLATFORM is not set
1180 1134
1181# 1135#
1182# Miscellaneous I2C Chip support 1136# Miscellaneous I2C Chip support
@@ -1186,19 +1140,13 @@ CONFIG_I2C_PASEMI=y
1186# CONFIG_SENSORS_PCF8574 is not set 1140# CONFIG_SENSORS_PCF8574 is not set
1187# CONFIG_PCF8575 is not set 1141# CONFIG_PCF8575 is not set
1188# CONFIG_SENSORS_PCF8591 is not set 1142# CONFIG_SENSORS_PCF8591 is not set
1189# CONFIG_TPS65010 is not set
1190# CONFIG_SENSORS_MAX6875 is not set 1143# CONFIG_SENSORS_MAX6875 is not set
1191# CONFIG_SENSORS_TSL2550 is not set 1144# CONFIG_SENSORS_TSL2550 is not set
1192# CONFIG_I2C_DEBUG_CORE is not set 1145# CONFIG_I2C_DEBUG_CORE is not set
1193# CONFIG_I2C_DEBUG_ALGO is not set 1146# CONFIG_I2C_DEBUG_ALGO is not set
1194# CONFIG_I2C_DEBUG_BUS is not set 1147# CONFIG_I2C_DEBUG_BUS is not set
1195# CONFIG_I2C_DEBUG_CHIP is not set 1148# CONFIG_I2C_DEBUG_CHIP is not set
1196
1197#
1198# SPI support
1199#
1200# CONFIG_SPI is not set 1149# CONFIG_SPI is not set
1201# CONFIG_SPI_MASTER is not set
1202# CONFIG_W1 is not set 1150# CONFIG_W1 is not set
1203# CONFIG_POWER_SUPPLY is not set 1151# CONFIG_POWER_SUPPLY is not set
1204# CONFIG_HWMON is not set 1152# CONFIG_HWMON is not set
@@ -1215,12 +1163,22 @@ CONFIG_SSB_POSSIBLE=y
1215# Multifunction device drivers 1163# Multifunction device drivers
1216# 1164#
1217# CONFIG_MFD_SM501 is not set 1165# CONFIG_MFD_SM501 is not set
1166# CONFIG_HTC_PASIC3 is not set
1218 1167
1219# 1168#
1220# Multimedia devices 1169# Multimedia devices
1221# 1170#
1171
1172#
1173# Multimedia core support
1174#
1222# CONFIG_VIDEO_DEV is not set 1175# CONFIG_VIDEO_DEV is not set
1223# CONFIG_DVB_CORE is not set 1176# CONFIG_DVB_CORE is not set
1177# CONFIG_VIDEO_MEDIA is not set
1178
1179#
1180# Multimedia drivers
1181#
1224# CONFIG_DAB is not set 1182# CONFIG_DAB is not set
1225 1183
1226# 1184#
@@ -1240,8 +1198,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
1240# CONFIG_FB_SYS_FILLRECT is not set 1198# CONFIG_FB_SYS_FILLRECT is not set
1241# CONFIG_FB_SYS_COPYAREA is not set 1199# CONFIG_FB_SYS_COPYAREA is not set
1242# CONFIG_FB_SYS_IMAGEBLIT is not set 1200# CONFIG_FB_SYS_IMAGEBLIT is not set
1201# CONFIG_FB_FOREIGN_ENDIAN is not set
1243# CONFIG_FB_SYS_FOPS is not set 1202# CONFIG_FB_SYS_FOPS is not set
1244CONFIG_FB_DEFERRED_IO=y
1245# CONFIG_FB_SVGALIB is not set 1203# CONFIG_FB_SVGALIB is not set
1246CONFIG_FB_MACMODES=y 1204CONFIG_FB_MACMODES=y
1247CONFIG_FB_BACKLIGHT=y 1205CONFIG_FB_BACKLIGHT=y
@@ -1363,6 +1321,7 @@ CONFIG_SND_VERBOSE_PROCFS=y
1363# CONFIG_SND_AU8810 is not set 1321# CONFIG_SND_AU8810 is not set
1364# CONFIG_SND_AU8820 is not set 1322# CONFIG_SND_AU8820 is not set
1365# CONFIG_SND_AU8830 is not set 1323# CONFIG_SND_AU8830 is not set
1324# CONFIG_SND_AW2 is not set
1366# CONFIG_SND_AZT3328 is not set 1325# CONFIG_SND_AZT3328 is not set
1367# CONFIG_SND_BT87X is not set 1326# CONFIG_SND_BT87X is not set
1368# CONFIG_SND_CA0106 is not set 1327# CONFIG_SND_CA0106 is not set
@@ -1455,11 +1414,11 @@ CONFIG_SND_AOA_SOUNDBUS_I2S=m
1455# CONFIG_SND_SOC is not set 1414# CONFIG_SND_SOC is not set
1456 1415
1457# 1416#
1458# SoC Audio support for SuperH 1417# ALSA SoC audio for Freescale SOCs
1459# 1418#
1460 1419
1461# 1420#
1462# ALSA SoC audio for Freescale SOCs 1421# SoC Audio for the Texas Instruments OMAP
1463# 1422#
1464 1423
1465# 1424#
@@ -1497,12 +1456,14 @@ CONFIG_USB_DEVICE_CLASS=y
1497# 1456#
1498# USB Host Controller Drivers 1457# USB Host Controller Drivers
1499# 1458#
1459# CONFIG_USB_C67X00_HCD is not set
1500CONFIG_USB_EHCI_HCD=y 1460CONFIG_USB_EHCI_HCD=y
1501# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1461# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1502CONFIG_USB_EHCI_TT_NEWSCHED=y 1462CONFIG_USB_EHCI_TT_NEWSCHED=y
1503CONFIG_USB_EHCI_BIG_ENDIAN_MMIO=y 1463CONFIG_USB_EHCI_BIG_ENDIAN_MMIO=y
1504# CONFIG_USB_EHCI_HCD_PPC_OF is not set 1464# CONFIG_USB_EHCI_HCD_PPC_OF is not set
1505# CONFIG_USB_ISP116X_HCD is not set 1465# CONFIG_USB_ISP116X_HCD is not set
1466# CONFIG_USB_ISP1760_HCD is not set
1506CONFIG_USB_OHCI_HCD=y 1467CONFIG_USB_OHCI_HCD=y
1507# CONFIG_USB_OHCI_HCD_PPC_OF is not set 1468# CONFIG_USB_OHCI_HCD_PPC_OF is not set
1508# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 1469# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
@@ -1538,6 +1499,7 @@ CONFIG_USB_STORAGE=m
1538# CONFIG_USB_STORAGE_ALAUDA is not set 1499# CONFIG_USB_STORAGE_ALAUDA is not set
1539# CONFIG_USB_STORAGE_ONETOUCH is not set 1500# CONFIG_USB_STORAGE_ONETOUCH is not set
1540# CONFIG_USB_STORAGE_KARMA is not set 1501# CONFIG_USB_STORAGE_KARMA is not set
1502# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
1541# CONFIG_USB_LIBUSUAL is not set 1503# CONFIG_USB_LIBUSUAL is not set
1542 1504
1543# 1505#
@@ -1579,6 +1541,7 @@ CONFIG_USB_APPLEDISPLAY=m
1579# CONFIG_MMC is not set 1541# CONFIG_MMC is not set
1580# CONFIG_MEMSTICK is not set 1542# CONFIG_MEMSTICK is not set
1581# CONFIG_NEW_LEDS is not set 1543# CONFIG_NEW_LEDS is not set
1544# CONFIG_ACCESSIBILITY is not set
1582CONFIG_INFINIBAND=m 1545CONFIG_INFINIBAND=m
1583# CONFIG_INFINIBAND_USER_MAD is not set 1546# CONFIG_INFINIBAND_USER_MAD is not set
1584# CONFIG_INFINIBAND_USER_ACCESS is not set 1547# CONFIG_INFINIBAND_USER_ACCESS is not set
@@ -1607,10 +1570,6 @@ CONFIG_EDAC_PASEMI=y
1607# CONFIG_EDAC_CELL is not set 1570# CONFIG_EDAC_CELL is not set
1608CONFIG_RTC_LIB=y 1571CONFIG_RTC_LIB=y
1609CONFIG_RTC_CLASS=y 1572CONFIG_RTC_CLASS=y
1610
1611#
1612# Conflicting RTC option has been selected, check GEN_RTC and RTC
1613#
1614CONFIG_RTC_HCTOSYS=y 1573CONFIG_RTC_HCTOSYS=y
1615CONFIG_RTC_HCTOSYS_DEVICE="rtc0" 1574CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
1616# CONFIG_RTC_DEBUG is not set 1575# CONFIG_RTC_DEBUG is not set
@@ -1659,10 +1618,6 @@ CONFIG_RTC_DRV_DS1307=y
1659# on-CPU RTC drivers 1618# on-CPU RTC drivers
1660# 1619#
1661# CONFIG_DMADEVICES is not set 1620# CONFIG_DMADEVICES is not set
1662
1663#
1664# Userspace I/O
1665#
1666# CONFIG_UIO is not set 1621# CONFIG_UIO is not set
1667 1622
1668# 1623#
@@ -1696,9 +1651,9 @@ CONFIG_JFS_SECURITY=y
1696CONFIG_FS_POSIX_ACL=y 1651CONFIG_FS_POSIX_ACL=y
1697CONFIG_XFS_FS=m 1652CONFIG_XFS_FS=m
1698# CONFIG_XFS_QUOTA is not set 1653# CONFIG_XFS_QUOTA is not set
1699CONFIG_XFS_SECURITY=y
1700CONFIG_XFS_POSIX_ACL=y 1654CONFIG_XFS_POSIX_ACL=y
1701# CONFIG_XFS_RT is not set 1655# CONFIG_XFS_RT is not set
1656# CONFIG_XFS_DEBUG is not set
1702# CONFIG_GFS2_FS is not set 1657# CONFIG_GFS2_FS is not set
1703# CONFIG_OCFS2_FS is not set 1658# CONFIG_OCFS2_FS is not set
1704CONFIG_DNOTIFY=y 1659CONFIG_DNOTIFY=y
@@ -1764,13 +1719,11 @@ CONFIG_NFS_FS=y
1764CONFIG_NFS_V3=y 1719CONFIG_NFS_V3=y
1765CONFIG_NFS_V3_ACL=y 1720CONFIG_NFS_V3_ACL=y
1766CONFIG_NFS_V4=y 1721CONFIG_NFS_V4=y
1767# CONFIG_NFS_DIRECTIO is not set
1768CONFIG_NFSD=m 1722CONFIG_NFSD=m
1769CONFIG_NFSD_V2_ACL=y 1723CONFIG_NFSD_V2_ACL=y
1770CONFIG_NFSD_V3=y 1724CONFIG_NFSD_V3=y
1771CONFIG_NFSD_V3_ACL=y 1725CONFIG_NFSD_V3_ACL=y
1772CONFIG_NFSD_V4=y 1726CONFIG_NFSD_V4=y
1773CONFIG_NFSD_TCP=y
1774CONFIG_ROOT_NFS=y 1727CONFIG_ROOT_NFS=y
1775CONFIG_LOCKD=y 1728CONFIG_LOCKD=y
1776CONFIG_LOCKD_V4=y 1729CONFIG_LOCKD_V4=y
@@ -1862,9 +1815,10 @@ CONFIG_NLS_UTF8=m
1862# Library routines 1815# Library routines
1863# 1816#
1864CONFIG_BITREVERSE=y 1817CONFIG_BITREVERSE=y
1818# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1865CONFIG_CRC_CCITT=m 1819CONFIG_CRC_CCITT=m
1866# CONFIG_CRC16 is not set 1820# CONFIG_CRC16 is not set
1867# CONFIG_CRC_ITU_T is not set 1821CONFIG_CRC_ITU_T=m
1868CONFIG_CRC32=y 1822CONFIG_CRC32=y
1869# CONFIG_CRC7 is not set 1823# CONFIG_CRC7 is not set
1870CONFIG_LIBCRC32C=m 1824CONFIG_LIBCRC32C=m
@@ -1888,6 +1842,7 @@ CONFIG_HAVE_LMB=y
1888# CONFIG_PRINTK_TIME is not set 1842# CONFIG_PRINTK_TIME is not set
1889CONFIG_ENABLE_WARN_DEPRECATED=y 1843CONFIG_ENABLE_WARN_DEPRECATED=y
1890CONFIG_ENABLE_MUST_CHECK=y 1844CONFIG_ENABLE_MUST_CHECK=y
1845CONFIG_FRAME_WARN=2048
1891CONFIG_MAGIC_SYSRQ=y 1846CONFIG_MAGIC_SYSRQ=y
1892# CONFIG_UNUSED_SYMBOLS is not set 1847# CONFIG_UNUSED_SYMBOLS is not set
1893CONFIG_DEBUG_FS=y 1848CONFIG_DEBUG_FS=y
@@ -1898,18 +1853,23 @@ CONFIG_DETECT_SOFTLOCKUP=y
1898CONFIG_SCHED_DEBUG=y 1853CONFIG_SCHED_DEBUG=y
1899# CONFIG_SCHEDSTATS is not set 1854# CONFIG_SCHEDSTATS is not set
1900# CONFIG_TIMER_STATS is not set 1855# CONFIG_TIMER_STATS is not set
1856# CONFIG_DEBUG_OBJECTS is not set
1901# CONFIG_SLUB_DEBUG_ON is not set 1857# CONFIG_SLUB_DEBUG_ON is not set
1902# CONFIG_SLUB_STATS is not set 1858# CONFIG_SLUB_STATS is not set
1903# CONFIG_DEBUG_RT_MUTEXES is not set 1859# CONFIG_DEBUG_RT_MUTEXES is not set
1904# CONFIG_RT_MUTEX_TESTER is not set 1860# CONFIG_RT_MUTEX_TESTER is not set
1905# CONFIG_DEBUG_SPINLOCK is not set 1861# CONFIG_DEBUG_SPINLOCK is not set
1906CONFIG_DEBUG_MUTEXES=y 1862CONFIG_DEBUG_MUTEXES=y
1863# CONFIG_DEBUG_LOCK_ALLOC is not set
1864# CONFIG_PROVE_LOCKING is not set
1865# CONFIG_LOCK_STAT is not set
1907# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1866# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1908# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1867# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1909# CONFIG_DEBUG_KOBJECT is not set 1868# CONFIG_DEBUG_KOBJECT is not set
1910CONFIG_DEBUG_BUGVERBOSE=y 1869CONFIG_DEBUG_BUGVERBOSE=y
1911# CONFIG_DEBUG_INFO is not set 1870# CONFIG_DEBUG_INFO is not set
1912# CONFIG_DEBUG_VM is not set 1871# CONFIG_DEBUG_VM is not set
1872# CONFIG_DEBUG_WRITECOUNT is not set
1913# CONFIG_DEBUG_LIST is not set 1873# CONFIG_DEBUG_LIST is not set
1914# CONFIG_DEBUG_SG is not set 1874# CONFIG_DEBUG_SG is not set
1915# CONFIG_BOOT_PRINTK_DELAY is not set 1875# CONFIG_BOOT_PRINTK_DELAY is not set
@@ -1941,53 +1901,83 @@ CONFIG_ASYNC_CORE=y
1941CONFIG_ASYNC_MEMCPY=y 1901CONFIG_ASYNC_MEMCPY=y
1942CONFIG_ASYNC_XOR=y 1902CONFIG_ASYNC_XOR=y
1943CONFIG_CRYPTO=y 1903CONFIG_CRYPTO=y
1904
1905#
1906# Crypto core or helper
1907#
1944CONFIG_CRYPTO_ALGAPI=y 1908CONFIG_CRYPTO_ALGAPI=y
1945CONFIG_CRYPTO_AEAD=m 1909CONFIG_CRYPTO_AEAD=m
1946CONFIG_CRYPTO_BLKCIPHER=y 1910CONFIG_CRYPTO_BLKCIPHER=y
1947CONFIG_CRYPTO_SEQIV=m
1948CONFIG_CRYPTO_HASH=y 1911CONFIG_CRYPTO_HASH=y
1949CONFIG_CRYPTO_MANAGER=y 1912CONFIG_CRYPTO_MANAGER=y
1913CONFIG_CRYPTO_GF128MUL=m
1914CONFIG_CRYPTO_NULL=m
1915# CONFIG_CRYPTO_CRYPTD is not set
1916CONFIG_CRYPTO_AUTHENC=m
1917CONFIG_CRYPTO_TEST=m
1918
1919#
1920# Authenticated Encryption with Associated Data
1921#
1922CONFIG_CRYPTO_CCM=m
1923CONFIG_CRYPTO_GCM=m
1924CONFIG_CRYPTO_SEQIV=m
1925
1926#
1927# Block modes
1928#
1929CONFIG_CRYPTO_CBC=y
1930CONFIG_CRYPTO_CTR=m
1931# CONFIG_CRYPTO_CTS is not set
1932CONFIG_CRYPTO_ECB=m
1933# CONFIG_CRYPTO_LRW is not set
1934CONFIG_CRYPTO_PCBC=m
1935# CONFIG_CRYPTO_XTS is not set
1936
1937#
1938# Hash modes
1939#
1950CONFIG_CRYPTO_HMAC=y 1940CONFIG_CRYPTO_HMAC=y
1951# CONFIG_CRYPTO_XCBC is not set 1941# CONFIG_CRYPTO_XCBC is not set
1952CONFIG_CRYPTO_NULL=m 1942
1943#
1944# Digest
1945#
1946CONFIG_CRYPTO_CRC32C=m
1953CONFIG_CRYPTO_MD4=m 1947CONFIG_CRYPTO_MD4=m
1954CONFIG_CRYPTO_MD5=y 1948CONFIG_CRYPTO_MD5=y
1949CONFIG_CRYPTO_MICHAEL_MIC=m
1955CONFIG_CRYPTO_SHA1=m 1950CONFIG_CRYPTO_SHA1=m
1956CONFIG_CRYPTO_SHA256=m 1951CONFIG_CRYPTO_SHA256=m
1957CONFIG_CRYPTO_SHA512=m 1952CONFIG_CRYPTO_SHA512=m
1958CONFIG_CRYPTO_WP512=m
1959CONFIG_CRYPTO_TGR192=m 1953CONFIG_CRYPTO_TGR192=m
1960CONFIG_CRYPTO_GF128MUL=m 1954CONFIG_CRYPTO_WP512=m
1961CONFIG_CRYPTO_ECB=m 1955
1962CONFIG_CRYPTO_CBC=y 1956#
1963CONFIG_CRYPTO_PCBC=m 1957# Ciphers
1964# CONFIG_CRYPTO_LRW is not set 1958#
1965# CONFIG_CRYPTO_XTS is not set
1966CONFIG_CRYPTO_CTR=m
1967CONFIG_CRYPTO_GCM=m
1968CONFIG_CRYPTO_CCM=m
1969# CONFIG_CRYPTO_CRYPTD is not set
1970CONFIG_CRYPTO_DES=y
1971# CONFIG_CRYPTO_FCRYPT is not set
1972CONFIG_CRYPTO_BLOWFISH=m
1973CONFIG_CRYPTO_TWOFISH=m
1974CONFIG_CRYPTO_TWOFISH_COMMON=m
1975CONFIG_CRYPTO_SERPENT=m
1976CONFIG_CRYPTO_AES=m 1959CONFIG_CRYPTO_AES=m
1960CONFIG_CRYPTO_ANUBIS=m
1961CONFIG_CRYPTO_ARC4=m
1962CONFIG_CRYPTO_BLOWFISH=m
1963# CONFIG_CRYPTO_CAMELLIA is not set
1977CONFIG_CRYPTO_CAST5=m 1964CONFIG_CRYPTO_CAST5=m
1978CONFIG_CRYPTO_CAST6=m 1965CONFIG_CRYPTO_CAST6=m
1979CONFIG_CRYPTO_TEA=m 1966CONFIG_CRYPTO_DES=y
1980CONFIG_CRYPTO_ARC4=m 1967# CONFIG_CRYPTO_FCRYPT is not set
1981CONFIG_CRYPTO_KHAZAD=m 1968CONFIG_CRYPTO_KHAZAD=m
1982CONFIG_CRYPTO_ANUBIS=m
1983# CONFIG_CRYPTO_SEED is not set
1984CONFIG_CRYPTO_SALSA20=m 1969CONFIG_CRYPTO_SALSA20=m
1970# CONFIG_CRYPTO_SEED is not set
1971CONFIG_CRYPTO_SERPENT=m
1972CONFIG_CRYPTO_TEA=m
1973CONFIG_CRYPTO_TWOFISH=m
1974CONFIG_CRYPTO_TWOFISH_COMMON=m
1975
1976#
1977# Compression
1978#
1985CONFIG_CRYPTO_DEFLATE=m 1979CONFIG_CRYPTO_DEFLATE=m
1986CONFIG_CRYPTO_MICHAEL_MIC=m
1987CONFIG_CRYPTO_CRC32C=m
1988# CONFIG_CRYPTO_CAMELLIA is not set
1989CONFIG_CRYPTO_TEST=m
1990CONFIG_CRYPTO_AUTHENC=m
1991CONFIG_CRYPTO_LZO=m 1980CONFIG_CRYPTO_LZO=m
1992# CONFIG_CRYPTO_HW is not set 1981# CONFIG_CRYPTO_HW is not set
1993# CONFIG_PPC_CLOCK is not set 1982# CONFIG_PPC_CLOCK is not set
1983# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/configs/pseries_defconfig b/arch/powerpc/configs/pseries_defconfig
index 3e2593c60b12..adaa05fb0478 100644
--- a/arch/powerpc/configs/pseries_defconfig
+++ b/arch/powerpc/configs/pseries_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.25-rc6 3# Linux kernel version: 2.6.26-rc3
4# Thu Mar 27 13:56:28 2008 4# Tue May 20 20:03:28 2008
5# 5#
6CONFIG_PPC64=y 6CONFIG_PPC64=y
7 7
@@ -30,6 +30,9 @@ CONFIG_GENERIC_CLOCKEVENTS=y
30CONFIG_GENERIC_HARDIRQS=y 30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_HAVE_SETUP_PER_CPU_AREA=y 31CONFIG_HAVE_SETUP_PER_CPU_AREA=y
32CONFIG_IRQ_PER_CPU=y 32CONFIG_IRQ_PER_CPU=y
33CONFIG_STACKTRACE_SUPPORT=y
34CONFIG_TRACE_IRQFLAGS_SUPPORT=y
35CONFIG_LOCKDEP_SUPPORT=y
33CONFIG_RWSEM_XCHGADD_ALGORITHM=y 36CONFIG_RWSEM_XCHGADD_ALGORITHM=y
34CONFIG_ARCH_HAS_ILOG2_U32=y 37CONFIG_ARCH_HAS_ILOG2_U32=y
35CONFIG_ARCH_HAS_ILOG2_U64=y 38CONFIG_ARCH_HAS_ILOG2_U64=y
@@ -81,6 +84,7 @@ CONFIG_LOG_BUF_SHIFT=17
81CONFIG_CGROUPS=y 84CONFIG_CGROUPS=y
82# CONFIG_CGROUP_DEBUG is not set 85# CONFIG_CGROUP_DEBUG is not set
83CONFIG_CGROUP_NS=y 86CONFIG_CGROUP_NS=y
87CONFIG_CGROUP_DEVICE=y
84CONFIG_CPUSETS=y 88CONFIG_CPUSETS=y
85# CONFIG_GROUP_SCHED is not set 89# CONFIG_GROUP_SCHED is not set
86CONFIG_CGROUP_CPUACCT=y 90CONFIG_CGROUP_CPUACCT=y
@@ -100,6 +104,7 @@ CONFIG_CC_OPTIMIZE_FOR_SIZE=y
100CONFIG_SYSCTL=y 104CONFIG_SYSCTL=y
101# CONFIG_EMBEDDED is not set 105# CONFIG_EMBEDDED is not set
102CONFIG_SYSCTL_SYSCALL=y 106CONFIG_SYSCTL_SYSCALL=y
107CONFIG_SYSCTL_SYSCALL_CHECK=y
103CONFIG_KALLSYMS=y 108CONFIG_KALLSYMS=y
104CONFIG_KALLSYMS_ALL=y 109CONFIG_KALLSYMS_ALL=y
105# CONFIG_KALLSYMS_EXTRA_PASS is not set 110# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -107,6 +112,7 @@ CONFIG_HOTPLUG=y
107CONFIG_PRINTK=y 112CONFIG_PRINTK=y
108CONFIG_BUG=y 113CONFIG_BUG=y
109CONFIG_ELF_CORE=y 114CONFIG_ELF_CORE=y
115CONFIG_PCSPKR_PLATFORM=y
110# CONFIG_COMPAT_BRK is not set 116# CONFIG_COMPAT_BRK is not set
111CONFIG_BASE_FULL=y 117CONFIG_BASE_FULL=y
112CONFIG_FUTEX=y 118CONFIG_FUTEX=y
@@ -129,12 +135,14 @@ CONFIG_KPROBES=y
129CONFIG_KRETPROBES=y 135CONFIG_KRETPROBES=y
130CONFIG_HAVE_KPROBES=y 136CONFIG_HAVE_KPROBES=y
131CONFIG_HAVE_KRETPROBES=y 137CONFIG_HAVE_KRETPROBES=y
138# CONFIG_HAVE_DMA_ATTRS is not set
132CONFIG_PROC_PAGE_MONITOR=y 139CONFIG_PROC_PAGE_MONITOR=y
133CONFIG_SLABINFO=y 140CONFIG_SLABINFO=y
134CONFIG_RT_MUTEXES=y 141CONFIG_RT_MUTEXES=y
135# CONFIG_TINY_SHMEM is not set 142# CONFIG_TINY_SHMEM is not set
136CONFIG_BASE_SMALL=0 143CONFIG_BASE_SMALL=0
137CONFIG_MODULES=y 144CONFIG_MODULES=y
145# CONFIG_MODULE_FORCE_LOAD is not set
138CONFIG_MODULE_UNLOAD=y 146CONFIG_MODULE_UNLOAD=y
139# CONFIG_MODULE_FORCE_UNLOAD is not set 147# CONFIG_MODULE_FORCE_UNLOAD is not set
140CONFIG_MODVERSIONS=y 148CONFIG_MODVERSIONS=y
@@ -178,11 +186,11 @@ CONFIG_LPARCFG=y
178# CONFIG_PPC_PMAC is not set 186# CONFIG_PPC_PMAC is not set
179# CONFIG_PPC_MAPLE is not set 187# CONFIG_PPC_MAPLE is not set
180# CONFIG_PPC_PASEMI is not set 188# CONFIG_PPC_PASEMI is not set
181# CONFIG_PPC_CELLEB is not set
182# CONFIG_PPC_PS3 is not set 189# CONFIG_PPC_PS3 is not set
183# CONFIG_PPC_CELL is not set 190# CONFIG_PPC_CELL is not set
184# CONFIG_PPC_CELL_NATIVE is not set 191# CONFIG_PPC_CELL_NATIVE is not set
185# CONFIG_PPC_IBM_CELL_BLADE is not set 192# CONFIG_PPC_IBM_CELL_BLADE is not set
193# CONFIG_PPC_CELLEB is not set
186# CONFIG_PQ2ADS is not set 194# CONFIG_PQ2ADS is not set
187CONFIG_PPC_NATIVE=y 195CONFIG_PPC_NATIVE=y
188# CONFIG_UDBG_RTAS_CONSOLE is not set 196# CONFIG_UDBG_RTAS_CONSOLE is not set
@@ -225,7 +233,6 @@ CONFIG_PREEMPT_NONE=y
225CONFIG_BINFMT_ELF=y 233CONFIG_BINFMT_ELF=y
226CONFIG_COMPAT_BINFMT_ELF=y 234CONFIG_COMPAT_BINFMT_ELF=y
227CONFIG_BINFMT_MISC=m 235CONFIG_BINFMT_MISC=m
228CONFIG_FORCE_MAX_ZONEORDER=13
229CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y 236CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y
230CONFIG_IOMMU_VMERGE=y 237CONFIG_IOMMU_VMERGE=y
231CONFIG_IOMMU_HELPER=y 238CONFIG_IOMMU_HELPER=y
@@ -255,6 +262,7 @@ CONFIG_SPARSEMEM_EXTREME=y
255CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y 262CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
256CONFIG_SPARSEMEM_VMEMMAP=y 263CONFIG_SPARSEMEM_VMEMMAP=y
257# CONFIG_MEMORY_HOTPLUG is not set 264# CONFIG_MEMORY_HOTPLUG is not set
265CONFIG_PAGEFLAGS_EXTENDED=y
258CONFIG_SPLIT_PTLOCK_CPUS=4 266CONFIG_SPLIT_PTLOCK_CPUS=4
259CONFIG_MIGRATION=y 267CONFIG_MIGRATION=y
260CONFIG_RESOURCES_64BIT=y 268CONFIG_RESOURCES_64BIT=y
@@ -263,6 +271,7 @@ CONFIG_BOUNCE=y
263CONFIG_NODES_SPAN_OTHER_NODES=y 271CONFIG_NODES_SPAN_OTHER_NODES=y
264# CONFIG_PPC_HAS_HASH_64K is not set 272# CONFIG_PPC_HAS_HASH_64K is not set
265# CONFIG_PPC_64K_PAGES is not set 273# CONFIG_PPC_64K_PAGES is not set
274CONFIG_FORCE_MAX_ZONEORDER=13
266CONFIG_SCHED_SMT=y 275CONFIG_SCHED_SMT=y
267CONFIG_PROC_DEVICETREE=y 276CONFIG_PROC_DEVICETREE=y
268# CONFIG_CMDLINE_BOOL is not set 277# CONFIG_CMDLINE_BOOL is not set
@@ -291,7 +300,10 @@ CONFIG_HOTPLUG_PCI=m
291# CONFIG_HOTPLUG_PCI_SHPC is not set 300# CONFIG_HOTPLUG_PCI_SHPC is not set
292CONFIG_HOTPLUG_PCI_RPA=m 301CONFIG_HOTPLUG_PCI_RPA=m
293CONFIG_HOTPLUG_PCI_RPA_DLPAR=m 302CONFIG_HOTPLUG_PCI_RPA_DLPAR=m
303# CONFIG_HAS_RAPIDIO is not set
304CONFIG_PAGE_OFFSET=0xc000000000000000
294CONFIG_KERNEL_START=0xc000000000000000 305CONFIG_KERNEL_START=0xc000000000000000
306CONFIG_PHYSICAL_START=0x00000000
295 307
296# 308#
297# Networking 309# Networking
@@ -338,8 +350,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
338# CONFIG_TCP_MD5SIG is not set 350# CONFIG_TCP_MD5SIG is not set
339# CONFIG_IP_VS is not set 351# CONFIG_IP_VS is not set
340# CONFIG_IPV6 is not set 352# CONFIG_IPV6 is not set
341# CONFIG_INET6_XFRM_TUNNEL is not set
342# CONFIG_INET6_TUNNEL is not set
343# CONFIG_NETWORK_SECMARK is not set 353# CONFIG_NETWORK_SECMARK is not set
344CONFIG_NETFILTER=y 354CONFIG_NETFILTER=y
345# CONFIG_NETFILTER_DEBUG is not set 355# CONFIG_NETFILTER_DEBUG is not set
@@ -355,6 +365,7 @@ CONFIG_NF_CONNTRACK=m
355CONFIG_NF_CT_ACCT=y 365CONFIG_NF_CT_ACCT=y
356CONFIG_NF_CONNTRACK_MARK=y 366CONFIG_NF_CONNTRACK_MARK=y
357CONFIG_NF_CONNTRACK_EVENTS=y 367CONFIG_NF_CONNTRACK_EVENTS=y
368# CONFIG_NF_CT_PROTO_DCCP is not set
358# CONFIG_NF_CT_PROTO_SCTP is not set 369# CONFIG_NF_CT_PROTO_SCTP is not set
359CONFIG_NF_CT_PROTO_UDPLITE=m 370CONFIG_NF_CT_PROTO_UDPLITE=m
360# CONFIG_NF_CONNTRACK_AMANDA is not set 371# CONFIG_NF_CONNTRACK_AMANDA is not set
@@ -426,6 +437,7 @@ CONFIG_IP_NF_TARGET_MASQUERADE=m
426CONFIG_IP_NF_TARGET_REDIRECT=m 437CONFIG_IP_NF_TARGET_REDIRECT=m
427CONFIG_IP_NF_TARGET_NETMAP=m 438CONFIG_IP_NF_TARGET_NETMAP=m
428CONFIG_NF_NAT_SNMP_BASIC=m 439CONFIG_NF_NAT_SNMP_BASIC=m
440CONFIG_NF_NAT_PROTO_UDPLITE=m
429CONFIG_NF_NAT_FTP=m 441CONFIG_NF_NAT_FTP=m
430CONFIG_NF_NAT_IRC=m 442CONFIG_NF_NAT_IRC=m
431CONFIG_NF_NAT_TFTP=m 443CONFIG_NF_NAT_TFTP=m
@@ -492,6 +504,7 @@ CONFIG_FW_LOADER=y
492# CONFIG_CONNECTOR is not set 504# CONFIG_CONNECTOR is not set
493# CONFIG_MTD is not set 505# CONFIG_MTD is not set
494CONFIG_OF_DEVICE=y 506CONFIG_OF_DEVICE=y
507CONFIG_OF_I2C=y
495CONFIG_PARPORT=m 508CONFIG_PARPORT=m
496CONFIG_PARPORT_PC=m 509CONFIG_PARPORT_PC=m
497# CONFIG_PARPORT_SERIAL is not set 510# CONFIG_PARPORT_SERIAL is not set
@@ -545,7 +558,6 @@ CONFIG_IDE_PROC_FS=y
545# 558#
546# IDE chipset support/bugfixes 559# IDE chipset support/bugfixes
547# 560#
548CONFIG_IDE_GENERIC=y
549# CONFIG_BLK_DEV_PLATFORM is not set 561# CONFIG_BLK_DEV_PLATFORM is not set
550CONFIG_BLK_DEV_IDEDMA_SFF=y 562CONFIG_BLK_DEV_IDEDMA_SFF=y
551 563
@@ -584,7 +596,7 @@ CONFIG_BLK_DEV_AMD74XX=y
584# CONFIG_BLK_DEV_VIA82CXXX is not set 596# CONFIG_BLK_DEV_VIA82CXXX is not set
585# CONFIG_BLK_DEV_TC86C001 is not set 597# CONFIG_BLK_DEV_TC86C001 is not set
586CONFIG_BLK_DEV_IDEDMA=y 598CONFIG_BLK_DEV_IDEDMA=y
587CONFIG_IDE_ARCH_OBSOLETE_INIT=y 599# CONFIG_BLK_DEV_HD_ONLY is not set
588# CONFIG_BLK_DEV_HD is not set 600# CONFIG_BLK_DEV_HD is not set
589 601
590# 602#
@@ -671,61 +683,10 @@ CONFIG_SCSI_LPFC=m
671# CONFIG_SCSI_SRP is not set 683# CONFIG_SCSI_SRP is not set
672CONFIG_ATA=y 684CONFIG_ATA=y
673# CONFIG_ATA_NONSTANDARD is not set 685# CONFIG_ATA_NONSTANDARD is not set
686CONFIG_SATA_PMP=y
674# CONFIG_SATA_AHCI is not set 687# CONFIG_SATA_AHCI is not set
675# CONFIG_SATA_SVW is not set
676# CONFIG_ATA_PIIX is not set
677# CONFIG_SATA_MV is not set
678# CONFIG_SATA_NV is not set
679# CONFIG_PDC_ADMA is not set
680# CONFIG_SATA_QSTOR is not set
681# CONFIG_SATA_PROMISE is not set
682# CONFIG_SATA_SX4 is not set
683# CONFIG_SATA_SIL is not set
684# CONFIG_SATA_SIL24 is not set 688# CONFIG_SATA_SIL24 is not set
685# CONFIG_SATA_SIS is not set 689# CONFIG_ATA_SFF is not set
686# CONFIG_SATA_ULI is not set
687# CONFIG_SATA_VIA is not set
688# CONFIG_SATA_VITESSE is not set
689# CONFIG_SATA_INIC162X is not set
690# CONFIG_PATA_ALI is not set
691# CONFIG_PATA_AMD is not set
692# CONFIG_PATA_ARTOP is not set
693# CONFIG_PATA_ATIIXP is not set
694# CONFIG_PATA_CMD640_PCI is not set
695# CONFIG_PATA_CMD64X is not set
696# CONFIG_PATA_CS5520 is not set
697# CONFIG_PATA_CS5530 is not set
698# CONFIG_PATA_CYPRESS is not set
699# CONFIG_PATA_EFAR is not set
700# CONFIG_ATA_GENERIC is not set
701# CONFIG_PATA_HPT366 is not set
702# CONFIG_PATA_HPT37X is not set
703# CONFIG_PATA_HPT3X2N is not set
704# CONFIG_PATA_HPT3X3 is not set
705# CONFIG_PATA_IT821X is not set
706# CONFIG_PATA_IT8213 is not set
707# CONFIG_PATA_JMICRON is not set
708# CONFIG_PATA_TRIFLEX is not set
709# CONFIG_PATA_MARVELL is not set
710# CONFIG_PATA_MPIIX is not set
711# CONFIG_PATA_OLDPIIX is not set
712# CONFIG_PATA_NETCELL is not set
713# CONFIG_PATA_NINJA32 is not set
714# CONFIG_PATA_NS87410 is not set
715# CONFIG_PATA_NS87415 is not set
716# CONFIG_PATA_OPTI is not set
717# CONFIG_PATA_OPTIDMA is not set
718# CONFIG_PATA_PDC_OLD is not set
719# CONFIG_PATA_RADISYS is not set
720# CONFIG_PATA_RZ1000 is not set
721# CONFIG_PATA_SC1200 is not set
722# CONFIG_PATA_SERVERWORKS is not set
723# CONFIG_PATA_PDC2027X is not set
724# CONFIG_PATA_SIL680 is not set
725# CONFIG_PATA_SIS is not set
726# CONFIG_PATA_VIA is not set
727CONFIG_PATA_WINBOND=y
728# CONFIG_PATA_PLATFORM is not set
729CONFIG_MD=y 690CONFIG_MD=y
730CONFIG_BLK_DEV_MD=y 691CONFIG_BLK_DEV_MD=y
731CONFIG_MD_LINEAR=y 692CONFIG_MD_LINEAR=y
@@ -783,7 +744,6 @@ CONFIG_IBMVETH=y
783# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 744# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
784CONFIG_NET_PCI=y 745CONFIG_NET_PCI=y
785CONFIG_PCNET32=y 746CONFIG_PCNET32=y
786# CONFIG_PCNET32_NAPI is not set
787# CONFIG_AMD8111_ETH is not set 747# CONFIG_AMD8111_ETH is not set
788# CONFIG_ADAPTEC_STARFIRE is not set 748# CONFIG_ADAPTEC_STARFIRE is not set
789# CONFIG_B44 is not set 749# CONFIG_B44 is not set
@@ -820,7 +780,6 @@ CONFIG_E1000=y
820# CONFIG_SIS190 is not set 780# CONFIG_SIS190 is not set
821# CONFIG_SKGE is not set 781# CONFIG_SKGE is not set
822# CONFIG_SKY2 is not set 782# CONFIG_SKY2 is not set
823# CONFIG_SK98LIN is not set
824# CONFIG_VIA_VELOCITY is not set 783# CONFIG_VIA_VELOCITY is not set
825CONFIG_TIGON3=y 784CONFIG_TIGON3=y
826# CONFIG_BNX2 is not set 785# CONFIG_BNX2 is not set
@@ -829,7 +788,6 @@ CONFIG_TIGON3=y
829CONFIG_NETDEV_10000=y 788CONFIG_NETDEV_10000=y
830# CONFIG_CHELSIO_T1 is not set 789# CONFIG_CHELSIO_T1 is not set
831# CONFIG_CHELSIO_T3 is not set 790# CONFIG_CHELSIO_T3 is not set
832CONFIG_EHEA=m
833# CONFIG_IXGBE is not set 791# CONFIG_IXGBE is not set
834CONFIG_IXGB=m 792CONFIG_IXGB=m
835# CONFIG_IXGB_NAPI is not set 793# CONFIG_IXGB_NAPI is not set
@@ -838,10 +796,10 @@ CONFIG_S2IO=m
838# CONFIG_MYRI10GE is not set 796# CONFIG_MYRI10GE is not set
839# CONFIG_NETXEN_NIC is not set 797# CONFIG_NETXEN_NIC is not set
840# CONFIG_NIU is not set 798# CONFIG_NIU is not set
841# CONFIG_PASEMI_MAC is not set
842# CONFIG_MLX4_CORE is not set 799# CONFIG_MLX4_CORE is not set
843# CONFIG_TEHUTI is not set 800# CONFIG_TEHUTI is not set
844# CONFIG_BNX2X is not set 801# CONFIG_BNX2X is not set
802# CONFIG_SFC is not set
845CONFIG_TR=y 803CONFIG_TR=y
846CONFIG_IBMOL=y 804CONFIG_IBMOL=y
847# CONFIG_3C359 is not set 805# CONFIG_3C359 is not set
@@ -852,6 +810,7 @@ CONFIG_IBMOL=y
852# 810#
853# CONFIG_WLAN_PRE80211 is not set 811# CONFIG_WLAN_PRE80211 is not set
854# CONFIG_WLAN_80211 is not set 812# CONFIG_WLAN_80211 is not set
813# CONFIG_IWLWIFI_LEDS is not set
855 814
856# 815#
857# USB Network Adapters 816# USB Network Adapters
@@ -956,6 +915,7 @@ CONFIG_VT=y
956CONFIG_VT_CONSOLE=y 915CONFIG_VT_CONSOLE=y
957CONFIG_HW_CONSOLE=y 916CONFIG_HW_CONSOLE=y
958# CONFIG_VT_HW_CONSOLE_BINDING is not set 917# CONFIG_VT_HW_CONSOLE_BINDING is not set
918CONFIG_DEVKMEM=y
959# CONFIG_SERIAL_NONSTANDARD is not set 919# CONFIG_SERIAL_NONSTANDARD is not set
960# CONFIG_NOZOMI is not set 920# CONFIG_NOZOMI is not set
961 921
@@ -1000,13 +960,7 @@ CONFIG_DEVPORT=y
1000CONFIG_I2C=y 960CONFIG_I2C=y
1001CONFIG_I2C_BOARDINFO=y 961CONFIG_I2C_BOARDINFO=y
1002# CONFIG_I2C_CHARDEV is not set 962# CONFIG_I2C_CHARDEV is not set
1003
1004#
1005# I2C Algorithms
1006#
1007CONFIG_I2C_ALGOBIT=y 963CONFIG_I2C_ALGOBIT=y
1008# CONFIG_I2C_ALGOPCF is not set
1009# CONFIG_I2C_ALGOPCA is not set
1010 964
1011# 965#
1012# I2C Hardware Bus support 966# I2C Hardware Bus support
@@ -1035,6 +989,7 @@ CONFIG_I2C_ALGOBIT=y
1035# CONFIG_I2C_VIA is not set 989# CONFIG_I2C_VIA is not set
1036# CONFIG_I2C_VIAPRO is not set 990# CONFIG_I2C_VIAPRO is not set
1037# CONFIG_I2C_VOODOO3 is not set 991# CONFIG_I2C_VOODOO3 is not set
992# CONFIG_I2C_PCA_PLATFORM is not set
1038 993
1039# 994#
1040# Miscellaneous I2C Chip support 995# Miscellaneous I2C Chip support
@@ -1044,19 +999,13 @@ CONFIG_I2C_ALGOBIT=y
1044# CONFIG_SENSORS_PCF8574 is not set 999# CONFIG_SENSORS_PCF8574 is not set
1045# CONFIG_PCF8575 is not set 1000# CONFIG_PCF8575 is not set
1046# CONFIG_SENSORS_PCF8591 is not set 1001# CONFIG_SENSORS_PCF8591 is not set
1047# CONFIG_TPS65010 is not set
1048# CONFIG_SENSORS_MAX6875 is not set 1002# CONFIG_SENSORS_MAX6875 is not set
1049# CONFIG_SENSORS_TSL2550 is not set 1003# CONFIG_SENSORS_TSL2550 is not set
1050# CONFIG_I2C_DEBUG_CORE is not set 1004# CONFIG_I2C_DEBUG_CORE is not set
1051# CONFIG_I2C_DEBUG_ALGO is not set 1005# CONFIG_I2C_DEBUG_ALGO is not set
1052# CONFIG_I2C_DEBUG_BUS is not set 1006# CONFIG_I2C_DEBUG_BUS is not set
1053# CONFIG_I2C_DEBUG_CHIP is not set 1007# CONFIG_I2C_DEBUG_CHIP is not set
1054
1055#
1056# SPI support
1057#
1058# CONFIG_SPI is not set 1008# CONFIG_SPI is not set
1059# CONFIG_SPI_MASTER is not set
1060# CONFIG_W1 is not set 1009# CONFIG_W1 is not set
1061# CONFIG_POWER_SUPPLY is not set 1010# CONFIG_POWER_SUPPLY is not set
1062# CONFIG_HWMON is not set 1011# CONFIG_HWMON is not set
@@ -1073,12 +1022,22 @@ CONFIG_SSB_POSSIBLE=y
1073# Multifunction device drivers 1022# Multifunction device drivers
1074# 1023#
1075# CONFIG_MFD_SM501 is not set 1024# CONFIG_MFD_SM501 is not set
1025# CONFIG_HTC_PASIC3 is not set
1076 1026
1077# 1027#
1078# Multimedia devices 1028# Multimedia devices
1079# 1029#
1030
1031#
1032# Multimedia core support
1033#
1080# CONFIG_VIDEO_DEV is not set 1034# CONFIG_VIDEO_DEV is not set
1081# CONFIG_DVB_CORE is not set 1035# CONFIG_DVB_CORE is not set
1036# CONFIG_VIDEO_MEDIA is not set
1037
1038#
1039# Multimedia drivers
1040#
1082# CONFIG_DAB is not set 1041# CONFIG_DAB is not set
1083 1042
1084# 1043#
@@ -1098,8 +1057,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
1098# CONFIG_FB_SYS_FILLRECT is not set 1057# CONFIG_FB_SYS_FILLRECT is not set
1099# CONFIG_FB_SYS_COPYAREA is not set 1058# CONFIG_FB_SYS_COPYAREA is not set
1100# CONFIG_FB_SYS_IMAGEBLIT is not set 1059# CONFIG_FB_SYS_IMAGEBLIT is not set
1060# CONFIG_FB_FOREIGN_ENDIAN is not set
1101# CONFIG_FB_SYS_FOPS is not set 1061# CONFIG_FB_SYS_FOPS is not set
1102CONFIG_FB_DEFERRED_IO=y
1103# CONFIG_FB_SVGALIB is not set 1062# CONFIG_FB_SVGALIB is not set
1104CONFIG_FB_MACMODES=y 1063CONFIG_FB_MACMODES=y
1105CONFIG_FB_BACKLIGHT=y 1064CONFIG_FB_BACKLIGHT=y
@@ -1209,11 +1168,13 @@ CONFIG_USB_DEVICE_CLASS=y
1209# 1168#
1210# USB Host Controller Drivers 1169# USB Host Controller Drivers
1211# 1170#
1171# CONFIG_USB_C67X00_HCD is not set
1212CONFIG_USB_EHCI_HCD=y 1172CONFIG_USB_EHCI_HCD=y
1213# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1173# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1214# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1174# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1215# CONFIG_USB_EHCI_HCD_PPC_OF is not set 1175# CONFIG_USB_EHCI_HCD_PPC_OF is not set
1216# CONFIG_USB_ISP116X_HCD is not set 1176# CONFIG_USB_ISP116X_HCD is not set
1177# CONFIG_USB_ISP1760_HCD is not set
1217CONFIG_USB_OHCI_HCD=y 1178CONFIG_USB_OHCI_HCD=y
1218# CONFIG_USB_OHCI_HCD_PPC_OF is not set 1179# CONFIG_USB_OHCI_HCD_PPC_OF is not set
1219# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 1180# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
@@ -1247,7 +1208,9 @@ CONFIG_USB_STORAGE=y
1247# CONFIG_USB_STORAGE_SDDR55 is not set 1208# CONFIG_USB_STORAGE_SDDR55 is not set
1248# CONFIG_USB_STORAGE_JUMPSHOT is not set 1209# CONFIG_USB_STORAGE_JUMPSHOT is not set
1249# CONFIG_USB_STORAGE_ALAUDA is not set 1210# CONFIG_USB_STORAGE_ALAUDA is not set
1211CONFIG_USB_STORAGE_ONETOUCH=y
1250# CONFIG_USB_STORAGE_KARMA is not set 1212# CONFIG_USB_STORAGE_KARMA is not set
1213# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
1251# CONFIG_USB_LIBUSUAL is not set 1214# CONFIG_USB_LIBUSUAL is not set
1252 1215
1253# 1216#
@@ -1290,6 +1253,7 @@ CONFIG_USB_MON=y
1290# CONFIG_MMC is not set 1253# CONFIG_MMC is not set
1291# CONFIG_MEMSTICK is not set 1254# CONFIG_MEMSTICK is not set
1292# CONFIG_NEW_LEDS is not set 1255# CONFIG_NEW_LEDS is not set
1256# CONFIG_ACCESSIBILITY is not set
1293CONFIG_INFINIBAND=m 1257CONFIG_INFINIBAND=m
1294CONFIG_INFINIBAND_USER_MAD=m 1258CONFIG_INFINIBAND_USER_MAD=m
1295CONFIG_INFINIBAND_USER_ACCESS=m 1259CONFIG_INFINIBAND_USER_ACCESS=m
@@ -1312,10 +1276,6 @@ CONFIG_INFINIBAND_SRP=m
1312# CONFIG_RTC_CLASS is not set 1276# CONFIG_RTC_CLASS is not set
1313# CONFIG_DMADEVICES is not set 1277# CONFIG_DMADEVICES is not set
1314# CONFIG_AUXDISPLAY is not set 1278# CONFIG_AUXDISPLAY is not set
1315
1316#
1317# Userspace I/O
1318#
1319# CONFIG_UIO is not set 1279# CONFIG_UIO is not set
1320 1280
1321# 1281#
@@ -1349,11 +1309,12 @@ CONFIG_JFS_SECURITY=y
1349CONFIG_FS_POSIX_ACL=y 1309CONFIG_FS_POSIX_ACL=y
1350CONFIG_XFS_FS=m 1310CONFIG_XFS_FS=m
1351# CONFIG_XFS_QUOTA is not set 1311# CONFIG_XFS_QUOTA is not set
1352CONFIG_XFS_SECURITY=y
1353CONFIG_XFS_POSIX_ACL=y 1312CONFIG_XFS_POSIX_ACL=y
1354# CONFIG_XFS_RT is not set 1313# CONFIG_XFS_RT is not set
1314# CONFIG_XFS_DEBUG is not set
1355# CONFIG_GFS2_FS is not set 1315# CONFIG_GFS2_FS is not set
1356CONFIG_OCFS2_FS=m 1316CONFIG_OCFS2_FS=m
1317CONFIG_OCFS2_FS_O2CB=m
1357CONFIG_OCFS2_DEBUG_MASKLOG=y 1318CONFIG_OCFS2_DEBUG_MASKLOG=y
1358# CONFIG_OCFS2_DEBUG_FS is not set 1319# CONFIG_OCFS2_DEBUG_FS is not set
1359CONFIG_DNOTIFY=y 1320CONFIG_DNOTIFY=y
@@ -1419,13 +1380,11 @@ CONFIG_NFS_FS=y
1419CONFIG_NFS_V3=y 1380CONFIG_NFS_V3=y
1420CONFIG_NFS_V3_ACL=y 1381CONFIG_NFS_V3_ACL=y
1421CONFIG_NFS_V4=y 1382CONFIG_NFS_V4=y
1422# CONFIG_NFS_DIRECTIO is not set
1423CONFIG_NFSD=y 1383CONFIG_NFSD=y
1424CONFIG_NFSD_V2_ACL=y 1384CONFIG_NFSD_V2_ACL=y
1425CONFIG_NFSD_V3=y 1385CONFIG_NFSD_V3=y
1426CONFIG_NFSD_V3_ACL=y 1386CONFIG_NFSD_V3_ACL=y
1427CONFIG_NFSD_V4=y 1387CONFIG_NFSD_V4=y
1428CONFIG_NFSD_TCP=y
1429CONFIG_LOCKD=y 1388CONFIG_LOCKD=y
1430CONFIG_LOCKD_V4=y 1389CONFIG_LOCKD_V4=y
1431CONFIG_EXPORTFS=y 1390CONFIG_EXPORTFS=y
@@ -1500,9 +1459,10 @@ CONFIG_NLS_ISO8859_1=y
1500# Library routines 1459# Library routines
1501# 1460#
1502CONFIG_BITREVERSE=y 1461CONFIG_BITREVERSE=y
1462# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1503CONFIG_CRC_CCITT=m 1463CONFIG_CRC_CCITT=m
1504# CONFIG_CRC16 is not set 1464# CONFIG_CRC16 is not set
1505# CONFIG_CRC_ITU_T is not set 1465CONFIG_CRC_ITU_T=m
1506CONFIG_CRC32=y 1466CONFIG_CRC32=y
1507# CONFIG_CRC7 is not set 1467# CONFIG_CRC7 is not set
1508CONFIG_LIBCRC32C=m 1468CONFIG_LIBCRC32C=m
@@ -1526,6 +1486,7 @@ CONFIG_HAVE_LMB=y
1526# CONFIG_PRINTK_TIME is not set 1486# CONFIG_PRINTK_TIME is not set
1527CONFIG_ENABLE_WARN_DEPRECATED=y 1487CONFIG_ENABLE_WARN_DEPRECATED=y
1528CONFIG_ENABLE_MUST_CHECK=y 1488CONFIG_ENABLE_MUST_CHECK=y
1489CONFIG_FRAME_WARN=2048
1529CONFIG_MAGIC_SYSRQ=y 1490CONFIG_MAGIC_SYSRQ=y
1530# CONFIG_UNUSED_SYMBOLS is not set 1491# CONFIG_UNUSED_SYMBOLS is not set
1531CONFIG_DEBUG_FS=y 1492CONFIG_DEBUG_FS=y
@@ -1536,18 +1497,23 @@ CONFIG_DETECT_SOFTLOCKUP=y
1536CONFIG_SCHED_DEBUG=y 1497CONFIG_SCHED_DEBUG=y
1537# CONFIG_SCHEDSTATS is not set 1498# CONFIG_SCHEDSTATS is not set
1538# CONFIG_TIMER_STATS is not set 1499# CONFIG_TIMER_STATS is not set
1500# CONFIG_DEBUG_OBJECTS is not set
1539# CONFIG_SLUB_DEBUG_ON is not set 1501# CONFIG_SLUB_DEBUG_ON is not set
1540# CONFIG_SLUB_STATS is not set 1502# CONFIG_SLUB_STATS is not set
1541# CONFIG_DEBUG_RT_MUTEXES is not set 1503# CONFIG_DEBUG_RT_MUTEXES is not set
1542# CONFIG_RT_MUTEX_TESTER is not set 1504# CONFIG_RT_MUTEX_TESTER is not set
1543# CONFIG_DEBUG_SPINLOCK is not set 1505# CONFIG_DEBUG_SPINLOCK is not set
1544# CONFIG_DEBUG_MUTEXES is not set 1506# CONFIG_DEBUG_MUTEXES is not set
1507# CONFIG_DEBUG_LOCK_ALLOC is not set
1508# CONFIG_PROVE_LOCKING is not set
1509# CONFIG_LOCK_STAT is not set
1545# CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1510# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1546# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 1511# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1547# CONFIG_DEBUG_KOBJECT is not set 1512# CONFIG_DEBUG_KOBJECT is not set
1548CONFIG_DEBUG_BUGVERBOSE=y 1513CONFIG_DEBUG_BUGVERBOSE=y
1549# CONFIG_DEBUG_INFO is not set 1514# CONFIG_DEBUG_INFO is not set
1550# CONFIG_DEBUG_VM is not set 1515# CONFIG_DEBUG_VM is not set
1516# CONFIG_DEBUG_WRITECOUNT is not set
1551# CONFIG_DEBUG_LIST is not set 1517# CONFIG_DEBUG_LIST is not set
1552# CONFIG_DEBUG_SG is not set 1518# CONFIG_DEBUG_SG is not set
1553# CONFIG_BOOT_PRINTK_DELAY is not set 1519# CONFIG_BOOT_PRINTK_DELAY is not set
@@ -1577,53 +1543,83 @@ CONFIG_VIRQ_DEBUG=y
1577# CONFIG_SECURITY is not set 1543# CONFIG_SECURITY is not set
1578# CONFIG_SECURITY_FILE_CAPABILITIES is not set 1544# CONFIG_SECURITY_FILE_CAPABILITIES is not set
1579CONFIG_CRYPTO=y 1545CONFIG_CRYPTO=y
1546
1547#
1548# Crypto core or helper
1549#
1580CONFIG_CRYPTO_ALGAPI=y 1550CONFIG_CRYPTO_ALGAPI=y
1581CONFIG_CRYPTO_AEAD=m 1551CONFIG_CRYPTO_AEAD=m
1582CONFIG_CRYPTO_BLKCIPHER=y 1552CONFIG_CRYPTO_BLKCIPHER=y
1583CONFIG_CRYPTO_SEQIV=m
1584CONFIG_CRYPTO_HASH=y 1553CONFIG_CRYPTO_HASH=y
1585CONFIG_CRYPTO_MANAGER=y 1554CONFIG_CRYPTO_MANAGER=y
1555CONFIG_CRYPTO_GF128MUL=m
1556CONFIG_CRYPTO_NULL=m
1557# CONFIG_CRYPTO_CRYPTD is not set
1558CONFIG_CRYPTO_AUTHENC=m
1559CONFIG_CRYPTO_TEST=m
1560
1561#
1562# Authenticated Encryption with Associated Data
1563#
1564CONFIG_CRYPTO_CCM=m
1565CONFIG_CRYPTO_GCM=m
1566CONFIG_CRYPTO_SEQIV=m
1567
1568#
1569# Block modes
1570#
1571CONFIG_CRYPTO_CBC=y
1572CONFIG_CRYPTO_CTR=m
1573# CONFIG_CRYPTO_CTS is not set
1574CONFIG_CRYPTO_ECB=m
1575# CONFIG_CRYPTO_LRW is not set
1576CONFIG_CRYPTO_PCBC=m
1577# CONFIG_CRYPTO_XTS is not set
1578
1579#
1580# Hash modes
1581#
1586CONFIG_CRYPTO_HMAC=y 1582CONFIG_CRYPTO_HMAC=y
1587# CONFIG_CRYPTO_XCBC is not set 1583# CONFIG_CRYPTO_XCBC is not set
1588CONFIG_CRYPTO_NULL=m 1584
1585#
1586# Digest
1587#
1588CONFIG_CRYPTO_CRC32C=m
1589CONFIG_CRYPTO_MD4=m 1589CONFIG_CRYPTO_MD4=m
1590CONFIG_CRYPTO_MD5=y 1590CONFIG_CRYPTO_MD5=y
1591CONFIG_CRYPTO_MICHAEL_MIC=m
1591CONFIG_CRYPTO_SHA1=m 1592CONFIG_CRYPTO_SHA1=m
1592CONFIG_CRYPTO_SHA256=m 1593CONFIG_CRYPTO_SHA256=m
1593CONFIG_CRYPTO_SHA512=m 1594CONFIG_CRYPTO_SHA512=m
1594CONFIG_CRYPTO_WP512=m
1595CONFIG_CRYPTO_TGR192=m 1595CONFIG_CRYPTO_TGR192=m
1596CONFIG_CRYPTO_GF128MUL=m 1596CONFIG_CRYPTO_WP512=m
1597CONFIG_CRYPTO_ECB=m 1597
1598CONFIG_CRYPTO_CBC=y 1598#
1599CONFIG_CRYPTO_PCBC=m 1599# Ciphers
1600# CONFIG_CRYPTO_LRW is not set 1600#
1601# CONFIG_CRYPTO_XTS is not set
1602CONFIG_CRYPTO_CTR=m
1603CONFIG_CRYPTO_GCM=m
1604CONFIG_CRYPTO_CCM=m
1605# CONFIG_CRYPTO_CRYPTD is not set
1606CONFIG_CRYPTO_DES=y
1607# CONFIG_CRYPTO_FCRYPT is not set
1608CONFIG_CRYPTO_BLOWFISH=m
1609CONFIG_CRYPTO_TWOFISH=m
1610CONFIG_CRYPTO_TWOFISH_COMMON=m
1611CONFIG_CRYPTO_SERPENT=m
1612CONFIG_CRYPTO_AES=m 1601CONFIG_CRYPTO_AES=m
1602CONFIG_CRYPTO_ANUBIS=m
1603CONFIG_CRYPTO_ARC4=m
1604CONFIG_CRYPTO_BLOWFISH=m
1605# CONFIG_CRYPTO_CAMELLIA is not set
1613CONFIG_CRYPTO_CAST5=m 1606CONFIG_CRYPTO_CAST5=m
1614CONFIG_CRYPTO_CAST6=m 1607CONFIG_CRYPTO_CAST6=m
1615CONFIG_CRYPTO_TEA=m 1608CONFIG_CRYPTO_DES=y
1616CONFIG_CRYPTO_ARC4=m 1609# CONFIG_CRYPTO_FCRYPT is not set
1617CONFIG_CRYPTO_KHAZAD=m 1610CONFIG_CRYPTO_KHAZAD=m
1618CONFIG_CRYPTO_ANUBIS=m
1619# CONFIG_CRYPTO_SEED is not set
1620CONFIG_CRYPTO_SALSA20=m 1611CONFIG_CRYPTO_SALSA20=m
1612# CONFIG_CRYPTO_SEED is not set
1613CONFIG_CRYPTO_SERPENT=m
1614CONFIG_CRYPTO_TEA=m
1615CONFIG_CRYPTO_TWOFISH=m
1616CONFIG_CRYPTO_TWOFISH_COMMON=m
1617
1618#
1619# Compression
1620#
1621CONFIG_CRYPTO_DEFLATE=m 1621CONFIG_CRYPTO_DEFLATE=m
1622CONFIG_CRYPTO_MICHAEL_MIC=m
1623CONFIG_CRYPTO_CRC32C=m
1624# CONFIG_CRYPTO_CAMELLIA is not set
1625CONFIG_CRYPTO_TEST=m
1626CONFIG_CRYPTO_AUTHENC=m
1627CONFIG_CRYPTO_LZO=m 1622CONFIG_CRYPTO_LZO=m
1628# CONFIG_CRYPTO_HW is not set 1623# CONFIG_CRYPTO_HW is not set
1629# CONFIG_PPC_CLOCK is not set 1624# CONFIG_PPC_CLOCK is not set
1625# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/kernel/Makefile b/arch/powerpc/kernel/Makefile
index d14cebf62bb0..2346d271fbfd 100644
--- a/arch/powerpc/kernel/Makefile
+++ b/arch/powerpc/kernel/Makefile
@@ -105,6 +105,9 @@ PHONY += systbl_chk
105systbl_chk: $(src)/systbl_chk.sh $(obj)/systbl_chk.i 105systbl_chk: $(src)/systbl_chk.sh $(obj)/systbl_chk.i
106 $(call cmd,systbl_chk) 106 $(call cmd,systbl_chk)
107 107
108
109ifeq ($(CONFIG_PPC_MERGE),y)
110
108$(obj)/built-in.o: prom_init_check 111$(obj)/built-in.o: prom_init_check
109 112
110quiet_cmd_prom_init_check = CALL $< 113quiet_cmd_prom_init_check = CALL $<
@@ -114,4 +117,7 @@ PHONY += prom_init_check
114prom_init_check: $(src)/prom_init_check.sh $(obj)/prom_init.o 117prom_init_check: $(src)/prom_init_check.sh $(obj)/prom_init.o
115 $(call cmd,prom_init_check) 118 $(call cmd,prom_init_check)
116 119
120endif
121
122
117clean-files := vmlinux.lds 123clean-files := vmlinux.lds
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c
index 81738a4b3c3a..e44d5530f0a6 100644
--- a/arch/powerpc/kernel/cputable.c
+++ b/arch/powerpc/kernel/cputable.c
@@ -1484,6 +1484,7 @@ static struct cpu_spec __initdata cpu_specs[] = {
1484 .dcache_bsize = 32, 1484 .dcache_bsize = 32,
1485 .machine_check = machine_check_e200, 1485 .machine_check = machine_check_e200,
1486 .platform = "ppc5554", 1486 .platform = "ppc5554",
1487 }
1487#endif /* CONFIG_E200 */ 1488#endif /* CONFIG_E200 */
1488#ifdef CONFIG_E500 1489#ifdef CONFIG_E500
1489 { /* e500 */ 1490 { /* e500 */
@@ -1533,6 +1534,7 @@ static struct cpu_spec __initdata cpu_specs[] = {
1533 .dcache_bsize = 32, 1534 .dcache_bsize = 32,
1534 .machine_check = machine_check_e500, 1535 .machine_check = machine_check_e500,
1535 .platform = "powerpc", 1536 .platform = "powerpc",
1537 }
1536#endif /* CONFIG_E500 */ 1538#endif /* CONFIG_E500 */
1537#endif /* CONFIG_PPC32 */ 1539#endif /* CONFIG_PPC32 */
1538}; 1540};
diff --git a/arch/powerpc/kernel/init_task.c b/arch/powerpc/kernel/init_task.c
index 941043ae040f..4c85b8d56478 100644
--- a/arch/powerpc/kernel/init_task.c
+++ b/arch/powerpc/kernel/init_task.c
@@ -8,7 +8,6 @@
8#include <asm/uaccess.h> 8#include <asm/uaccess.h>
9 9
10static struct fs_struct init_fs = INIT_FS; 10static struct fs_struct init_fs = INIT_FS;
11static struct files_struct init_files = INIT_FILES;
12static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 11static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
13static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 12static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
14struct mm_struct init_mm = INIT_MM(init_mm); 13struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/powerpc/kernel/pci_64.c b/arch/powerpc/kernel/pci_64.c
index 52750745edfd..30eedfc5a566 100644
--- a/arch/powerpc/kernel/pci_64.c
+++ b/arch/powerpc/kernel/pci_64.c
@@ -189,7 +189,7 @@ struct pci_dev *of_create_pci_dev(struct device_node *node,
189 189
190 dev->cfg_size = pci_cfg_space_size(dev); 190 dev->cfg_size = pci_cfg_space_size(dev);
191 191
192 sprintf(pci_name(dev), "%04x:%02x:%02x.%d", pci_domain_nr(bus), 192 dev_set_name(&dev->dev, "%04x:%02x:%02x.%d", pci_domain_nr(bus),
193 dev->bus->number, PCI_SLOT(devfn), PCI_FUNC(devfn)); 193 dev->bus->number, PCI_SLOT(devfn), PCI_FUNC(devfn));
194 dev->class = get_int_prop(node, "class-code", 0); 194 dev->class = get_int_prop(node, "class-code", 0);
195 dev->revision = get_int_prop(node, "revision-id", 0); 195 dev->revision = get_int_prop(node, "revision-id", 0);
diff --git a/arch/powerpc/kernel/prom_init_check.sh b/arch/powerpc/kernel/prom_init_check.sh
index 8e24fc1821e8..31729a9387df 100644
--- a/arch/powerpc/kernel/prom_init_check.sh
+++ b/arch/powerpc/kernel/prom_init_check.sh
@@ -20,7 +20,7 @@ WHITELIST="add_reloc_offset __bss_start __bss_stop copy_and_flush
20_end enter_prom memcpy memset reloc_offset __secondary_hold 20_end enter_prom memcpy memset reloc_offset __secondary_hold
21__secondary_hold_acknowledge __secondary_hold_spinloop __start 21__secondary_hold_acknowledge __secondary_hold_spinloop __start
22strcmp strcpy strlcpy strlen strncmp strstr logo_linux_clut224 22strcmp strcpy strlcpy strlen strncmp strstr logo_linux_clut224
23reloc_got2" 23reloc_got2 kernstart_addr"
24 24
25NM="$1" 25NM="$1"
26OBJ="$2" 26OBJ="$2"
diff --git a/arch/powerpc/kernel/signal_64.c b/arch/powerpc/kernel/signal_64.c
index faeb8f207ea4..da7c058e3731 100644
--- a/arch/powerpc/kernel/signal_64.c
+++ b/arch/powerpc/kernel/signal_64.c
@@ -87,6 +87,7 @@ static long setup_sigcontext(struct sigcontext __user *sc, struct pt_regs *regs,
87#ifdef CONFIG_ALTIVEC 87#ifdef CONFIG_ALTIVEC
88 elf_vrreg_t __user *v_regs = (elf_vrreg_t __user *)(((unsigned long)sc->vmx_reserve + 15) & ~0xful); 88 elf_vrreg_t __user *v_regs = (elf_vrreg_t __user *)(((unsigned long)sc->vmx_reserve + 15) & ~0xful);
89#endif 89#endif
90 unsigned long msr = regs->msr;
90 long err = 0; 91 long err = 0;
91 92
92 flush_fp_to_thread(current); 93 flush_fp_to_thread(current);
@@ -102,7 +103,7 @@ static long setup_sigcontext(struct sigcontext __user *sc, struct pt_regs *regs,
102 /* set MSR_VEC in the MSR value in the frame to indicate that sc->v_reg) 103 /* set MSR_VEC in the MSR value in the frame to indicate that sc->v_reg)
103 * contains valid data. 104 * contains valid data.
104 */ 105 */
105 regs->msr |= MSR_VEC; 106 msr |= MSR_VEC;
106 } 107 }
107 /* We always copy to/from vrsave, it's 0 if we don't have or don't 108 /* We always copy to/from vrsave, it's 0 if we don't have or don't
108 * use altivec. 109 * use altivec.
@@ -114,6 +115,7 @@ static long setup_sigcontext(struct sigcontext __user *sc, struct pt_regs *regs,
114 err |= __put_user(&sc->gp_regs, &sc->regs); 115 err |= __put_user(&sc->gp_regs, &sc->regs);
115 WARN_ON(!FULL_REGS(regs)); 116 WARN_ON(!FULL_REGS(regs));
116 err |= __copy_to_user(&sc->gp_regs, regs, GP_REGS_SIZE); 117 err |= __copy_to_user(&sc->gp_regs, regs, GP_REGS_SIZE);
118 err |= __put_user(msr, &sc->gp_regs[PT_MSR]);
117 err |= __copy_to_user(&sc->fp_regs, &current->thread.fpr, FP_REGS_SIZE); 119 err |= __copy_to_user(&sc->fp_regs, &current->thread.fpr, FP_REGS_SIZE);
118 err |= __put_user(signr, &sc->signal); 120 err |= __put_user(signr, &sc->signal);
119 err |= __put_user(handler, &sc->handler); 121 err |= __put_user(handler, &sc->handler);
diff --git a/arch/powerpc/kvm/44x_tlb.c b/arch/powerpc/kvm/44x_tlb.c
index f5d7a5eab96e..75dff7cfa814 100644
--- a/arch/powerpc/kvm/44x_tlb.c
+++ b/arch/powerpc/kvm/44x_tlb.c
@@ -116,8 +116,6 @@ static void kvmppc_44x_shadow_release(struct kvm_vcpu *vcpu,
116 struct tlbe *stlbe = &vcpu->arch.shadow_tlb[index]; 116 struct tlbe *stlbe = &vcpu->arch.shadow_tlb[index];
117 struct page *page = vcpu->arch.shadow_pages[index]; 117 struct page *page = vcpu->arch.shadow_pages[index];
118 118
119 kunmap(vcpu->arch.shadow_pages[index]);
120
121 if (get_tlb_v(stlbe)) { 119 if (get_tlb_v(stlbe)) {
122 if (kvmppc_44x_tlbe_is_writable(stlbe)) 120 if (kvmppc_44x_tlbe_is_writable(stlbe))
123 kvm_release_page_dirty(page); 121 kvm_release_page_dirty(page);
@@ -144,18 +142,19 @@ void kvmppc_mmu_map(struct kvm_vcpu *vcpu, u64 gvaddr, gfn_t gfn, u64 asid,
144 stlbe = &vcpu->arch.shadow_tlb[victim]; 142 stlbe = &vcpu->arch.shadow_tlb[victim];
145 143
146 /* Get reference to new page. */ 144 /* Get reference to new page. */
147 down_write(&current->mm->mmap_sem); 145 down_read(&current->mm->mmap_sem);
148 new_page = gfn_to_page(vcpu->kvm, gfn); 146 new_page = gfn_to_page(vcpu->kvm, gfn);
149 if (is_error_page(new_page)) { 147 if (is_error_page(new_page)) {
150 printk(KERN_ERR "Couldn't get guest page!\n"); 148 printk(KERN_ERR "Couldn't get guest page for gfn %lx!\n", gfn);
151 kvm_release_page_clean(new_page); 149 kvm_release_page_clean(new_page);
150 up_read(&current->mm->mmap_sem);
152 return; 151 return;
153 } 152 }
154 hpaddr = page_to_phys(new_page); 153 hpaddr = page_to_phys(new_page);
155 154
156 /* Drop reference to old page. */ 155 /* Drop reference to old page. */
157 kvmppc_44x_shadow_release(vcpu, victim); 156 kvmppc_44x_shadow_release(vcpu, victim);
158 up_write(&current->mm->mmap_sem); 157 up_read(&current->mm->mmap_sem);
159 158
160 vcpu->arch.shadow_pages[victim] = new_page; 159 vcpu->arch.shadow_pages[victim] = new_page;
161 160
diff --git a/arch/powerpc/kvm/booke_guest.c b/arch/powerpc/kvm/booke_guest.c
index 712d89a28c46..9c8ad850c6e3 100644
--- a/arch/powerpc/kvm/booke_guest.c
+++ b/arch/powerpc/kvm/booke_guest.c
@@ -227,39 +227,6 @@ void kvmppc_check_and_deliver_interrupts(struct kvm_vcpu *vcpu)
227 } 227 }
228} 228}
229 229
230static int kvmppc_emulate_mmio(struct kvm_run *run, struct kvm_vcpu *vcpu)
231{
232 enum emulation_result er;
233 int r;
234
235 er = kvmppc_emulate_instruction(run, vcpu);
236 switch (er) {
237 case EMULATE_DONE:
238 /* Future optimization: only reload non-volatiles if they were
239 * actually modified. */
240 r = RESUME_GUEST_NV;
241 break;
242 case EMULATE_DO_MMIO:
243 run->exit_reason = KVM_EXIT_MMIO;
244 /* We must reload nonvolatiles because "update" load/store
245 * instructions modify register state. */
246 /* Future optimization: only reload non-volatiles if they were
247 * actually modified. */
248 r = RESUME_HOST_NV;
249 break;
250 case EMULATE_FAIL:
251 /* XXX Deliver Program interrupt to guest. */
252 printk(KERN_EMERG "%s: emulation failed (%08x)\n", __func__,
253 vcpu->arch.last_inst);
254 r = RESUME_HOST;
255 break;
256 default:
257 BUG();
258 }
259
260 return r;
261}
262
263/** 230/**
264 * kvmppc_handle_exit 231 * kvmppc_handle_exit
265 * 232 *
diff --git a/arch/powerpc/kvm/emulate.c b/arch/powerpc/kvm/emulate.c
index a03fe0c80698..000097461283 100644
--- a/arch/powerpc/kvm/emulate.c
+++ b/arch/powerpc/kvm/emulate.c
@@ -246,6 +246,11 @@ int kvmppc_emulate_instruction(struct kvm_run *run, struct kvm_vcpu *vcpu)
246 case 31: 246 case 31:
247 switch (get_xop(inst)) { 247 switch (get_xop(inst)) {
248 248
249 case 23: /* lwzx */
250 rt = get_rt(inst);
251 emulated = kvmppc_handle_load(run, vcpu, rt, 4, 1);
252 break;
253
249 case 83: /* mfmsr */ 254 case 83: /* mfmsr */
250 rt = get_rt(inst); 255 rt = get_rt(inst);
251 vcpu->arch.gpr[rt] = vcpu->arch.msr; 256 vcpu->arch.gpr[rt] = vcpu->arch.msr;
@@ -267,6 +272,13 @@ int kvmppc_emulate_instruction(struct kvm_run *run, struct kvm_vcpu *vcpu)
267 kvmppc_set_msr(vcpu, vcpu->arch.gpr[rs]); 272 kvmppc_set_msr(vcpu, vcpu->arch.gpr[rs]);
268 break; 273 break;
269 274
275 case 151: /* stwx */
276 rs = get_rs(inst);
277 emulated = kvmppc_handle_store(run, vcpu,
278 vcpu->arch.gpr[rs],
279 4, 1);
280 break;
281
270 case 163: /* wrteei */ 282 case 163: /* wrteei */
271 vcpu->arch.msr = (vcpu->arch.msr & ~MSR_EE) 283 vcpu->arch.msr = (vcpu->arch.msr & ~MSR_EE)
272 | (inst & MSR_EE); 284 | (inst & MSR_EE);
diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile
index f1d2cdc5331b..c71d37dc6a88 100644
--- a/arch/powerpc/lib/Makefile
+++ b/arch/powerpc/lib/Makefile
@@ -10,6 +10,7 @@ ifeq ($(CONFIG_PPC_MERGE),y)
10obj-y := string.o alloc.o \ 10obj-y := string.o alloc.o \
11 checksum_$(CONFIG_WORD_SIZE).o 11 checksum_$(CONFIG_WORD_SIZE).o
12obj-$(CONFIG_PPC32) += div64.o copy_32.o 12obj-$(CONFIG_PPC32) += div64.o copy_32.o
13obj-$(CONFIG_HAS_IOMEM) += devres.o
13endif 14endif
14 15
15obj-$(CONFIG_PPC64) += copypage_64.o copyuser_64.o \ 16obj-$(CONFIG_PPC64) += copypage_64.o copyuser_64.o \
@@ -23,4 +24,3 @@ obj-$(CONFIG_SMP) += locks.o
23endif 24endif
24 25
25obj-$(CONFIG_PPC_LIB_RHEAP) += rheap.o 26obj-$(CONFIG_PPC_LIB_RHEAP) += rheap.o
26obj-$(CONFIG_HAS_IOMEM) += devres.o
diff --git a/arch/powerpc/mm/hash_low_32.S b/arch/powerpc/mm/hash_low_32.S
index ddeaf9e38ad5..b9ba7d930801 100644
--- a/arch/powerpc/mm/hash_low_32.S
+++ b/arch/powerpc/mm/hash_low_32.S
@@ -1,6 +1,4 @@
1/* 1/*
2 * $Id: hashtable.S,v 1.6 1999/10/08 01:56:15 paulus Exp $
3 *
4 * PowerPC version 2 * PowerPC version
5 * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) 3 * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org)
6 * Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP 4 * Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP
diff --git a/arch/powerpc/mm/hash_utils_64.c b/arch/powerpc/mm/hash_utils_64.c
index 2b5a399f6fa6..0f2d239d94c4 100644
--- a/arch/powerpc/mm/hash_utils_64.c
+++ b/arch/powerpc/mm/hash_utils_64.c
@@ -94,6 +94,9 @@ unsigned long htab_hash_mask;
94int mmu_linear_psize = MMU_PAGE_4K; 94int mmu_linear_psize = MMU_PAGE_4K;
95int mmu_virtual_psize = MMU_PAGE_4K; 95int mmu_virtual_psize = MMU_PAGE_4K;
96int mmu_vmalloc_psize = MMU_PAGE_4K; 96int mmu_vmalloc_psize = MMU_PAGE_4K;
97#ifdef CONFIG_SPARSEMEM_VMEMMAP
98int mmu_vmemmap_psize = MMU_PAGE_4K;
99#endif
97int mmu_io_psize = MMU_PAGE_4K; 100int mmu_io_psize = MMU_PAGE_4K;
98int mmu_kernel_ssize = MMU_SEGSIZE_256M; 101int mmu_kernel_ssize = MMU_SEGSIZE_256M;
99int mmu_highuser_ssize = MMU_SEGSIZE_256M; 102int mmu_highuser_ssize = MMU_SEGSIZE_256M;
@@ -387,11 +390,32 @@ static void __init htab_init_page_sizes(void)
387 } 390 }
388#endif /* CONFIG_PPC_64K_PAGES */ 391#endif /* CONFIG_PPC_64K_PAGES */
389 392
393#ifdef CONFIG_SPARSEMEM_VMEMMAP
394 /* We try to use 16M pages for vmemmap if that is supported
395 * and we have at least 1G of RAM at boot
396 */
397 if (mmu_psize_defs[MMU_PAGE_16M].shift &&
398 lmb_phys_mem_size() >= 0x40000000)
399 mmu_vmemmap_psize = MMU_PAGE_16M;
400 else if (mmu_psize_defs[MMU_PAGE_64K].shift)
401 mmu_vmemmap_psize = MMU_PAGE_64K;
402 else
403 mmu_vmemmap_psize = MMU_PAGE_4K;
404#endif /* CONFIG_SPARSEMEM_VMEMMAP */
405
390 printk(KERN_DEBUG "Page orders: linear mapping = %d, " 406 printk(KERN_DEBUG "Page orders: linear mapping = %d, "
391 "virtual = %d, io = %d\n", 407 "virtual = %d, io = %d"
408#ifdef CONFIG_SPARSEMEM_VMEMMAP
409 ", vmemmap = %d"
410#endif
411 "\n",
392 mmu_psize_defs[mmu_linear_psize].shift, 412 mmu_psize_defs[mmu_linear_psize].shift,
393 mmu_psize_defs[mmu_virtual_psize].shift, 413 mmu_psize_defs[mmu_virtual_psize].shift,
394 mmu_psize_defs[mmu_io_psize].shift); 414 mmu_psize_defs[mmu_io_psize].shift
415#ifdef CONFIG_SPARSEMEM_VMEMMAP
416 ,mmu_psize_defs[mmu_vmemmap_psize].shift
417#endif
418 );
395 419
396#ifdef CONFIG_HUGETLB_PAGE 420#ifdef CONFIG_HUGETLB_PAGE
397 /* Init large page size. Currently, we pick 16M or 1M depending 421 /* Init large page size. Currently, we pick 16M or 1M depending
diff --git a/arch/powerpc/mm/init_64.c b/arch/powerpc/mm/init_64.c
index c5ac532a0161..6aa65375abf5 100644
--- a/arch/powerpc/mm/init_64.c
+++ b/arch/powerpc/mm/init_64.c
@@ -19,6 +19,8 @@
19 * 19 *
20 */ 20 */
21 21
22#undef DEBUG
23
22#include <linux/signal.h> 24#include <linux/signal.h>
23#include <linux/sched.h> 25#include <linux/sched.h>
24#include <linux/kernel.h> 26#include <linux/kernel.h>
@@ -208,12 +210,12 @@ int __meminit vmemmap_populated(unsigned long start, int page_size)
208} 210}
209 211
210int __meminit vmemmap_populate(struct page *start_page, 212int __meminit vmemmap_populate(struct page *start_page,
211 unsigned long nr_pages, int node) 213 unsigned long nr_pages, int node)
212{ 214{
213 unsigned long mode_rw; 215 unsigned long mode_rw;
214 unsigned long start = (unsigned long)start_page; 216 unsigned long start = (unsigned long)start_page;
215 unsigned long end = (unsigned long)(start_page + nr_pages); 217 unsigned long end = (unsigned long)(start_page + nr_pages);
216 unsigned long page_size = 1 << mmu_psize_defs[mmu_linear_psize].shift; 218 unsigned long page_size = 1 << mmu_psize_defs[mmu_vmemmap_psize].shift;
217 219
218 mode_rw = _PAGE_ACCESSED | _PAGE_DIRTY | _PAGE_COHERENT | PP_RWXX; 220 mode_rw = _PAGE_ACCESSED | _PAGE_DIRTY | _PAGE_COHERENT | PP_RWXX;
219 221
@@ -235,11 +237,11 @@ int __meminit vmemmap_populate(struct page *start_page,
235 start, p, __pa(p)); 237 start, p, __pa(p));
236 238
237 mapped = htab_bolt_mapping(start, start + page_size, 239 mapped = htab_bolt_mapping(start, start + page_size,
238 __pa(p), mode_rw, mmu_linear_psize, 240 __pa(p), mode_rw, mmu_vmemmap_psize,
239 mmu_kernel_ssize); 241 mmu_kernel_ssize);
240 BUG_ON(mapped < 0); 242 BUG_ON(mapped < 0);
241 } 243 }
242 244
243 return 0; 245 return 0;
244} 246}
245#endif 247#endif /* CONFIG_SPARSEMEM_VMEMMAP */
diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c
index f67e118116fa..51f82d83bf14 100644
--- a/arch/powerpc/mm/mem.c
+++ b/arch/powerpc/mm/mem.c
@@ -151,6 +151,7 @@ out:
151 return ret; 151 return ret;
152} 152}
153#endif /* CONFIG_MEMORY_HOTREMOVE */ 153#endif /* CONFIG_MEMORY_HOTREMOVE */
154#endif /* CONFIG_MEMORY_HOTPLUG */
154 155
155/* 156/*
156 * walk_memory_resource() needs to make sure there is no holes in a given 157 * walk_memory_resource() needs to make sure there is no holes in a given
@@ -184,8 +185,6 @@ walk_memory_resource(unsigned long start_pfn, unsigned long nr_pages, void *arg,
184} 185}
185EXPORT_SYMBOL_GPL(walk_memory_resource); 186EXPORT_SYMBOL_GPL(walk_memory_resource);
186 187
187#endif /* CONFIG_MEMORY_HOTPLUG */
188
189void show_mem(void) 188void show_mem(void)
190{ 189{
191 unsigned long total = 0, reserved = 0; 190 unsigned long total = 0, reserved = 0;
diff --git a/arch/powerpc/mm/pgtable_32.c b/arch/powerpc/mm/pgtable_32.c
index 80d1babb230d..e0ff59f21135 100644
--- a/arch/powerpc/mm/pgtable_32.c
+++ b/arch/powerpc/mm/pgtable_32.c
@@ -402,7 +402,7 @@ void __set_fixmap (enum fixed_addresses idx, phys_addr_t phys, pgprot_t flags)
402 return; 402 return;
403 } 403 }
404 404
405 map_page(address, phys, flags); 405 map_page(address, phys, pgprot_val(flags));
406 fixmaps++; 406 fixmaps++;
407} 407}
408 408
diff --git a/arch/powerpc/mm/slb.c b/arch/powerpc/mm/slb.c
index cf8705e32d60..89497fb04280 100644
--- a/arch/powerpc/mm/slb.c
+++ b/arch/powerpc/mm/slb.c
@@ -28,7 +28,7 @@
28#include <asm/udbg.h> 28#include <asm/udbg.h>
29 29
30#ifdef DEBUG 30#ifdef DEBUG
31#define DBG(fmt...) udbg_printf(fmt) 31#define DBG(fmt...) printk(fmt)
32#else 32#else
33#define DBG pr_debug 33#define DBG pr_debug
34#endif 34#endif
@@ -263,13 +263,19 @@ void slb_initialize(void)
263 extern unsigned int *slb_miss_kernel_load_linear; 263 extern unsigned int *slb_miss_kernel_load_linear;
264 extern unsigned int *slb_miss_kernel_load_io; 264 extern unsigned int *slb_miss_kernel_load_io;
265 extern unsigned int *slb_compare_rr_to_size; 265 extern unsigned int *slb_compare_rr_to_size;
266#ifdef CONFIG_SPARSEMEM_VMEMMAP
267 extern unsigned int *slb_miss_kernel_load_vmemmap;
268 unsigned long vmemmap_llp;
269#endif
266 270
267 /* Prepare our SLB miss handler based on our page size */ 271 /* Prepare our SLB miss handler based on our page size */
268 linear_llp = mmu_psize_defs[mmu_linear_psize].sllp; 272 linear_llp = mmu_psize_defs[mmu_linear_psize].sllp;
269 io_llp = mmu_psize_defs[mmu_io_psize].sllp; 273 io_llp = mmu_psize_defs[mmu_io_psize].sllp;
270 vmalloc_llp = mmu_psize_defs[mmu_vmalloc_psize].sllp; 274 vmalloc_llp = mmu_psize_defs[mmu_vmalloc_psize].sllp;
271 get_paca()->vmalloc_sllp = SLB_VSID_KERNEL | vmalloc_llp; 275 get_paca()->vmalloc_sllp = SLB_VSID_KERNEL | vmalloc_llp;
272 276#ifdef CONFIG_SPARSEMEM_VMEMMAP
277 vmemmap_llp = mmu_psize_defs[mmu_vmemmap_psize].sllp;
278#endif
273 if (!slb_encoding_inited) { 279 if (!slb_encoding_inited) {
274 slb_encoding_inited = 1; 280 slb_encoding_inited = 1;
275 patch_slb_encoding(slb_miss_kernel_load_linear, 281 patch_slb_encoding(slb_miss_kernel_load_linear,
@@ -281,6 +287,12 @@ void slb_initialize(void)
281 287
282 DBG("SLB: linear LLP = %04lx\n", linear_llp); 288 DBG("SLB: linear LLP = %04lx\n", linear_llp);
283 DBG("SLB: io LLP = %04lx\n", io_llp); 289 DBG("SLB: io LLP = %04lx\n", io_llp);
290
291#ifdef CONFIG_SPARSEMEM_VMEMMAP
292 patch_slb_encoding(slb_miss_kernel_load_vmemmap,
293 SLB_VSID_KERNEL | vmemmap_llp);
294 DBG("SLB: vmemmap LLP = %04lx\n", vmemmap_llp);
295#endif
284 } 296 }
285 297
286 get_paca()->stab_rr = SLB_NUM_BOLTED; 298 get_paca()->stab_rr = SLB_NUM_BOLTED;
diff --git a/arch/powerpc/mm/slb_low.S b/arch/powerpc/mm/slb_low.S
index 657f6b37e9df..bc44dc4b5c67 100644
--- a/arch/powerpc/mm/slb_low.S
+++ b/arch/powerpc/mm/slb_low.S
@@ -47,8 +47,7 @@ _GLOBAL(slb_allocate_realmode)
47 * it to VSID 0, which is reserved as a bad VSID - one which 47 * it to VSID 0, which is reserved as a bad VSID - one which
48 * will never have any pages in it. */ 48 * will never have any pages in it. */
49 49
50 /* Check if hitting the linear mapping of the vmalloc/ioremap 50 /* Check if hitting the linear mapping or some other kernel space
51 * kernel space
52 */ 51 */
53 bne cr7,1f 52 bne cr7,1f
54 53
@@ -62,7 +61,18 @@ BEGIN_FTR_SECTION
62END_FTR_SECTION_IFCLR(CPU_FTR_1T_SEGMENT) 61END_FTR_SECTION_IFCLR(CPU_FTR_1T_SEGMENT)
63 b slb_finish_load_1T 62 b slb_finish_load_1T
64 63
651: /* vmalloc/ioremap mapping encoding bits, the "li" instructions below 641:
65#ifdef CONFIG_SPARSEMEM_VMEMMAP
66 /* Check virtual memmap region. To be patches at kernel boot */
67 cmpldi cr0,r9,0xf
68 bne 1f
69_GLOBAL(slb_miss_kernel_load_vmemmap)
70 li r11,0
71 b 6f
721:
73#endif /* CONFIG_SPARSEMEM_VMEMMAP */
74
75 /* vmalloc/ioremap mapping encoding bits, the "li" instructions below
66 * will be patched by the kernel at boot 76 * will be patched by the kernel at boot
67 */ 77 */
68BEGIN_FTR_SECTION 78BEGIN_FTR_SECTION
diff --git a/arch/powerpc/platforms/52xx/mpc52xx_gpio.c b/arch/powerpc/platforms/52xx/mpc52xx_gpio.c
index 48da5dfe4856..8a455ebce98d 100644
--- a/arch/powerpc/platforms/52xx/mpc52xx_gpio.c
+++ b/arch/powerpc/platforms/52xx/mpc52xx_gpio.c
@@ -100,7 +100,7 @@ static int mpc52xx_wkup_gpio_dir_in(struct gpio_chip *gc, unsigned int gpio)
100 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); 100 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc);
101 struct mpc52xx_gpiochip *chip = container_of(mm_gc, 101 struct mpc52xx_gpiochip *chip = container_of(mm_gc,
102 struct mpc52xx_gpiochip, mmchip); 102 struct mpc52xx_gpiochip, mmchip);
103 struct mpc52xx_gpio_wkup *regs = mm_gc->regs; 103 struct mpc52xx_gpio_wkup __iomem *regs = mm_gc->regs;
104 unsigned long flags; 104 unsigned long flags;
105 105
106 spin_lock_irqsave(&gpio_lock, flags); 106 spin_lock_irqsave(&gpio_lock, flags);
@@ -122,7 +122,7 @@ static int
122mpc52xx_wkup_gpio_dir_out(struct gpio_chip *gc, unsigned int gpio, int val) 122mpc52xx_wkup_gpio_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)
123{ 123{
124 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); 124 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc);
125 struct mpc52xx_gpio_wkup *regs = mm_gc->regs; 125 struct mpc52xx_gpio_wkup __iomem *regs = mm_gc->regs;
126 struct mpc52xx_gpiochip *chip = container_of(mm_gc, 126 struct mpc52xx_gpiochip *chip = container_of(mm_gc,
127 struct mpc52xx_gpiochip, mmchip); 127 struct mpc52xx_gpiochip, mmchip);
128 unsigned long flags; 128 unsigned long flags;
@@ -150,7 +150,7 @@ static int __devinit mpc52xx_wkup_gpiochip_probe(struct of_device *ofdev,
150 const struct of_device_id *match) 150 const struct of_device_id *match)
151{ 151{
152 struct mpc52xx_gpiochip *chip; 152 struct mpc52xx_gpiochip *chip;
153 struct mpc52xx_gpio_wkup *regs; 153 struct mpc52xx_gpio_wkup __iomem *regs;
154 struct of_gpio_chip *ofchip; 154 struct of_gpio_chip *ofchip;
155 int ret; 155 int ret;
156 156
@@ -260,7 +260,7 @@ static int mpc52xx_simple_gpio_dir_in(struct gpio_chip *gc, unsigned int gpio)
260 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); 260 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc);
261 struct mpc52xx_gpiochip *chip = container_of(mm_gc, 261 struct mpc52xx_gpiochip *chip = container_of(mm_gc,
262 struct mpc52xx_gpiochip, mmchip); 262 struct mpc52xx_gpiochip, mmchip);
263 struct mpc52xx_gpio *regs = mm_gc->regs; 263 struct mpc52xx_gpio __iomem *regs = mm_gc->regs;
264 unsigned long flags; 264 unsigned long flags;
265 265
266 spin_lock_irqsave(&gpio_lock, flags); 266 spin_lock_irqsave(&gpio_lock, flags);
@@ -284,7 +284,7 @@ mpc52xx_simple_gpio_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)
284 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); 284 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc);
285 struct mpc52xx_gpiochip *chip = container_of(mm_gc, 285 struct mpc52xx_gpiochip *chip = container_of(mm_gc,
286 struct mpc52xx_gpiochip, mmchip); 286 struct mpc52xx_gpiochip, mmchip);
287 struct mpc52xx_gpio *regs = mm_gc->regs; 287 struct mpc52xx_gpio __iomem *regs = mm_gc->regs;
288 unsigned long flags; 288 unsigned long flags;
289 289
290 spin_lock_irqsave(&gpio_lock, flags); 290 spin_lock_irqsave(&gpio_lock, flags);
@@ -312,7 +312,7 @@ static int __devinit mpc52xx_simple_gpiochip_probe(struct of_device *ofdev,
312{ 312{
313 struct mpc52xx_gpiochip *chip; 313 struct mpc52xx_gpiochip *chip;
314 struct of_gpio_chip *ofchip; 314 struct of_gpio_chip *ofchip;
315 struct mpc52xx_gpio *regs; 315 struct mpc52xx_gpio __iomem *regs;
316 int ret; 316 int ret;
317 317
318 chip = kzalloc(sizeof(*chip), GFP_KERNEL); 318 chip = kzalloc(sizeof(*chip), GFP_KERNEL);
@@ -387,7 +387,7 @@ mpc52xx_gpt_gpio_set(struct gpio_chip *gc, unsigned int gpio, int val)
387static int mpc52xx_gpt_gpio_dir_in(struct gpio_chip *gc, unsigned int gpio) 387static int mpc52xx_gpt_gpio_dir_in(struct gpio_chip *gc, unsigned int gpio)
388{ 388{
389 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); 389 struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc);
390 struct mpc52xx_gpt *regs = mm_gc->regs; 390 struct mpc52xx_gpt __iomem *regs = mm_gc->regs;
391 391
392 out_be32(&regs->mode, 0x04); 392 out_be32(&regs->mode, 0x04);
393 393
diff --git a/arch/powerpc/platforms/85xx/mpc85xx_mds.c b/arch/powerpc/platforms/85xx/mpc85xx_mds.c
index 25f8bc75e838..43a459f63e31 100644
--- a/arch/powerpc/platforms/85xx/mpc85xx_mds.c
+++ b/arch/powerpc/platforms/85xx/mpc85xx_mds.c
@@ -32,6 +32,7 @@
32#include <linux/fsl_devices.h> 32#include <linux/fsl_devices.h>
33#include <linux/of_platform.h> 33#include <linux/of_platform.h>
34#include <linux/of_device.h> 34#include <linux/of_device.h>
35#include <linux/phy.h>
35 36
36#include <asm/system.h> 37#include <asm/system.h>
37#include <asm/atomic.h> 38#include <asm/atomic.h>
@@ -56,6 +57,95 @@
56#define DBG(fmt...) 57#define DBG(fmt...)
57#endif 58#endif
58 59
60#define MV88E1111_SCR 0x10
61#define MV88E1111_SCR_125CLK 0x0010
62static int mpc8568_fixup_125_clock(struct phy_device *phydev)
63{
64 int scr;
65 int err;
66
67 /* Workaround for the 125 CLK Toggle */
68 scr = phy_read(phydev, MV88E1111_SCR);
69
70 if (scr < 0)
71 return scr;
72
73 err = phy_write(phydev, MV88E1111_SCR, scr & ~(MV88E1111_SCR_125CLK));
74
75 if (err)
76 return err;
77
78 err = phy_write(phydev, MII_BMCR, BMCR_RESET);
79
80 if (err)
81 return err;
82
83 scr = phy_read(phydev, MV88E1111_SCR);
84
85 if (scr < 0)
86 return err;
87
88 err = phy_write(phydev, MV88E1111_SCR, scr | 0x0008);
89
90 return err;
91}
92
93static int mpc8568_mds_phy_fixups(struct phy_device *phydev)
94{
95 int temp;
96 int err;
97
98 /* Errata */
99 err = phy_write(phydev,29, 0x0006);
100
101 if (err)
102 return err;
103
104 temp = phy_read(phydev, 30);
105
106 if (temp < 0)
107 return temp;
108
109 temp = (temp & (~0x8000)) | 0x4000;
110 err = phy_write(phydev,30, temp);
111
112 if (err)
113 return err;
114
115 err = phy_write(phydev,29, 0x000a);
116
117 if (err)
118 return err;
119
120 temp = phy_read(phydev, 30);
121
122 if (temp < 0)
123 return temp;
124
125 temp = phy_read(phydev, 30);
126
127 if (temp < 0)
128 return temp;
129
130 temp &= ~0x0020;
131
132 err = phy_write(phydev,30,temp);
133
134 if (err)
135 return err;
136
137 /* Disable automatic MDI/MDIX selection */
138 temp = phy_read(phydev, 16);
139
140 if (temp < 0)
141 return temp;
142
143 temp &= ~0x0060;
144 err = phy_write(phydev,16,temp);
145
146 return err;
147}
148
59/* ************************************************************************ 149/* ************************************************************************
60 * 150 *
61 * Setup the architecture 151 * Setup the architecture
@@ -64,7 +154,7 @@
64static void __init mpc85xx_mds_setup_arch(void) 154static void __init mpc85xx_mds_setup_arch(void)
65{ 155{
66 struct device_node *np; 156 struct device_node *np;
67 static u8 *bcsr_regs = NULL; 157 static u8 __iomem *bcsr_regs = NULL;
68 158
69 if (ppc_md.progress) 159 if (ppc_md.progress)
70 ppc_md.progress("mpc85xx_mds_setup_arch()", 0); 160 ppc_md.progress("mpc85xx_mds_setup_arch()", 0);
@@ -138,6 +228,35 @@ static void __init mpc85xx_mds_setup_arch(void)
138#endif /* CONFIG_QUICC_ENGINE */ 228#endif /* CONFIG_QUICC_ENGINE */
139} 229}
140 230
231
232static int __init board_fixups(void)
233{
234 char phy_id[BUS_ID_SIZE];
235 char *compstrs[2] = {"fsl,gianfar-mdio", "fsl,ucc-mdio"};
236 struct device_node *mdio;
237 struct resource res;
238 int i;
239
240 for (i = 0; i < ARRAY_SIZE(compstrs); i++) {
241 mdio = of_find_compatible_node(NULL, NULL, compstrs[i]);
242
243 of_address_to_resource(mdio, 0, &res);
244 snprintf(phy_id, BUS_ID_SIZE, "%x:%02x", res.start, 1);
245
246 phy_register_fixup_for_id(phy_id, mpc8568_fixup_125_clock);
247 phy_register_fixup_for_id(phy_id, mpc8568_mds_phy_fixups);
248
249 /* Register a workaround for errata */
250 snprintf(phy_id, BUS_ID_SIZE, "%x:%02x", res.start, 7);
251 phy_register_fixup_for_id(phy_id, mpc8568_mds_phy_fixups);
252
253 of_node_put(mdio);
254 }
255
256 return 0;
257}
258machine_arch_initcall(mpc85xx_mds, board_fixups);
259
141static struct of_device_id mpc85xx_ids[] = { 260static struct of_device_id mpc85xx_ids[] = {
142 { .type = "soc", }, 261 { .type = "soc", },
143 { .compatible = "soc", }, 262 { .compatible = "soc", },
diff --git a/arch/powerpc/platforms/85xx/sbc8548.c b/arch/powerpc/platforms/85xx/sbc8548.c
index 488facb99fe8..b9246ea0928a 100644
--- a/arch/powerpc/platforms/85xx/sbc8548.c
+++ b/arch/powerpc/platforms/85xx/sbc8548.c
@@ -49,6 +49,8 @@
49#include <sysdev/fsl_soc.h> 49#include <sysdev/fsl_soc.h>
50#include <sysdev/fsl_pci.h> 50#include <sysdev/fsl_pci.h>
51 51
52static int sbc_rev;
53
52static void __init sbc8548_pic_init(void) 54static void __init sbc8548_pic_init(void)
53{ 55{
54 struct mpic *mpic; 56 struct mpic *mpic;
@@ -79,6 +81,30 @@ static void __init sbc8548_pic_init(void)
79 mpic_init(mpic); 81 mpic_init(mpic);
80} 82}
81 83
84/* Extract the HW Rev from the EPLD on the board */
85static int __init sbc8548_hw_rev(void)
86{
87 struct device_node *np;
88 struct resource res;
89 unsigned int *rev;
90 int board_rev = 0;
91
92 np = of_find_compatible_node(NULL, NULL, "hw-rev");
93 if (np == NULL) {
94 printk("No HW-REV found in DTB.\n");
95 return -ENODEV;
96 }
97
98 of_address_to_resource(np, 0, &res);
99 of_node_put(np);
100
101 rev = ioremap(res.start,sizeof(unsigned int));
102 board_rev = (*rev) >> 28;
103 iounmap(rev);
104
105 return board_rev;
106}
107
82/* 108/*
83 * Setup the architecture 109 * Setup the architecture
84 */ 110 */
@@ -104,6 +130,7 @@ static void __init sbc8548_setup_arch(void)
104 } 130 }
105 } 131 }
106#endif 132#endif
133 sbc_rev = sbc8548_hw_rev();
107} 134}
108 135
109static void sbc8548_show_cpuinfo(struct seq_file *m) 136static void sbc8548_show_cpuinfo(struct seq_file *m)
@@ -115,7 +142,7 @@ static void sbc8548_show_cpuinfo(struct seq_file *m)
115 svid = mfspr(SPRN_SVR); 142 svid = mfspr(SPRN_SVR);
116 143
117 seq_printf(m, "Vendor\t\t: Wind River\n"); 144 seq_printf(m, "Vendor\t\t: Wind River\n");
118 seq_printf(m, "Machine\t\t: SBC8548\n"); 145 seq_printf(m, "Machine\t\t: SBC8548 v%d\n", sbc_rev);
119 seq_printf(m, "PVR\t\t: 0x%x\n", pvid); 146 seq_printf(m, "PVR\t\t: 0x%x\n", pvid);
120 seq_printf(m, "SVR\t\t: 0x%x\n", svid); 147 seq_printf(m, "SVR\t\t: 0x%x\n", svid);
121 148
@@ -130,6 +157,7 @@ static void sbc8548_show_cpuinfo(struct seq_file *m)
130static struct of_device_id __initdata of_bus_ids[] = { 157static struct of_device_id __initdata of_bus_ids[] = {
131 { .name = "soc", }, 158 { .name = "soc", },
132 { .type = "soc", }, 159 { .type = "soc", },
160 { .compatible = "simple-bus", },
133 {}, 161 {},
134}; 162};
135 163
diff --git a/arch/powerpc/platforms/86xx/mpc8610_hpcd.c b/arch/powerpc/platforms/86xx/mpc8610_hpcd.c
index 5e1e8cf14e75..dea13208bf64 100644
--- a/arch/powerpc/platforms/86xx/mpc8610_hpcd.c
+++ b/arch/powerpc/platforms/86xx/mpc8610_hpcd.c
@@ -43,6 +43,7 @@ static unsigned char *pixis_bdcfg0, *pixis_arch;
43 43
44static struct of_device_id __initdata mpc8610_ids[] = { 44static struct of_device_id __initdata mpc8610_ids[] = {
45 { .compatible = "fsl,mpc8610-immr", }, 45 { .compatible = "fsl,mpc8610-immr", },
46 { .compatible = "simple-bus", },
46 {} 47 {}
47}; 48};
48 49
@@ -216,11 +217,21 @@ void mpc8610hpcd_set_gamma_table(int monitor_port, char *gamma_table_base)
216 } 217 }
217} 218}
218 219
220#define PX_BRDCFG0_DVISEL (1 << 3)
221#define PX_BRDCFG0_DLINK (1 << 4)
222#define PX_BRDCFG0_DIU_MASK (PX_BRDCFG0_DVISEL | PX_BRDCFG0_DLINK)
223
219void mpc8610hpcd_set_monitor_port(int monitor_port) 224void mpc8610hpcd_set_monitor_port(int monitor_port)
220{ 225{
221 static const u8 bdcfg[] = {0xBD, 0xB5, 0xA5}; 226 static const u8 bdcfg[] = {
227 PX_BRDCFG0_DVISEL | PX_BRDCFG0_DLINK,
228 PX_BRDCFG0_DLINK,
229 0,
230 };
231
222 if (monitor_port < 3) 232 if (monitor_port < 3)
223 *pixis_bdcfg0 = bdcfg[monitor_port]; 233 clrsetbits_8(pixis_bdcfg0, PX_BRDCFG0_DIU_MASK,
234 bdcfg[monitor_port]);
224} 235}
225 236
226void mpc8610hpcd_set_pixel_clock(unsigned int pixclock) 237void mpc8610hpcd_set_pixel_clock(unsigned int pixclock)
diff --git a/arch/powerpc/platforms/cell/celleb_scc_pciex.c b/arch/powerpc/platforms/cell/celleb_scc_pciex.c
index 31da84c458d2..0e04f8fb152a 100644
--- a/arch/powerpc/platforms/cell/celleb_scc_pciex.c
+++ b/arch/powerpc/platforms/cell/celleb_scc_pciex.c
@@ -217,7 +217,7 @@ static u##size scc_pciex_in##name(unsigned long port) \
217static void scc_pciex_ins##name(unsigned long p, void *b, unsigned long c) \ 217static void scc_pciex_ins##name(unsigned long p, void *b, unsigned long c) \
218{ \ 218{ \
219 struct iowa_bus *bus = iowa_pio_find_bus(p); \ 219 struct iowa_bus *bus = iowa_pio_find_bus(p); \
220 u##size *dst = b; \ 220 __le##size *dst = b; \
221 for (; c != 0; c--, dst++) \ 221 for (; c != 0; c--, dst++) \
222 *dst = cpu_to_le##size(__scc_pciex_in##name(bus->phb, p)); \ 222 *dst = cpu_to_le##size(__scc_pciex_in##name(bus->phb, p)); \
223 scc_pciex_io_flush(bus); \ 223 scc_pciex_io_flush(bus); \
@@ -231,10 +231,11 @@ static void scc_pciex_outs##name(unsigned long p, const void *b, \
231 unsigned long c) \ 231 unsigned long c) \
232{ \ 232{ \
233 struct iowa_bus *bus = iowa_pio_find_bus(p); \ 233 struct iowa_bus *bus = iowa_pio_find_bus(p); \
234 const u##size *src = b; \ 234 const __le##size *src = b; \
235 for (; c != 0; c--, src++) \ 235 for (; c != 0; c--, src++) \
236 __scc_pciex_out##name(bus->phb, le##size##_to_cpu(*src), p); \ 236 __scc_pciex_out##name(bus->phb, le##size##_to_cpu(*src), p); \
237} 237}
238#define __le8 u8
238#define cpu_to_le8(x) (x) 239#define cpu_to_le8(x) (x)
239#define le8_to_cpu(x) (x) 240#define le8_to_cpu(x) (x)
240PCIEX_PIO_FUNC(8, b) 241PCIEX_PIO_FUNC(8, b)
diff --git a/arch/powerpc/platforms/cell/io-workarounds.c b/arch/powerpc/platforms/cell/io-workarounds.c
index 3b84e8be314c..b5f84e8f0899 100644
--- a/arch/powerpc/platforms/cell/io-workarounds.c
+++ b/arch/powerpc/platforms/cell/io-workarounds.c
@@ -118,7 +118,7 @@ static void iowa_##name at \
118#undef DEF_PCI_AC_RET 118#undef DEF_PCI_AC_RET
119#undef DEF_PCI_AC_NORET 119#undef DEF_PCI_AC_NORET
120 120
121static struct ppc_pci_io __initdata iowa_pci_io = { 121static const struct ppc_pci_io __devinitconst iowa_pci_io = {
122 122
123#define DEF_PCI_AC_RET(name, ret, at, al, space, aa) .name = iowa_##name, 123#define DEF_PCI_AC_RET(name, ret, at, al, space, aa) .name = iowa_##name,
124#define DEF_PCI_AC_NORET(name, at, al, space, aa) .name = iowa_##name, 124#define DEF_PCI_AC_NORET(name, at, al, space, aa) .name = iowa_##name,
@@ -146,7 +146,7 @@ static void __iomem *iowa_ioremap(unsigned long addr, unsigned long size,
146} 146}
147 147
148/* Regist new bus to support workaround */ 148/* Regist new bus to support workaround */
149void __init iowa_register_bus(struct pci_controller *phb, 149void __devinit iowa_register_bus(struct pci_controller *phb,
150 struct ppc_pci_io *ops, 150 struct ppc_pci_io *ops,
151 int (*initfunc)(struct iowa_bus *, void *), void *data) 151 int (*initfunc)(struct iowa_bus *, void *), void *data)
152{ 152{
@@ -173,7 +173,7 @@ void __init iowa_register_bus(struct pci_controller *phb,
173} 173}
174 174
175/* enable IO workaround */ 175/* enable IO workaround */
176void __init io_workaround_init(void) 176void __devinit io_workaround_init(void)
177{ 177{
178 static int io_workaround_inited; 178 static int io_workaround_inited;
179 179
diff --git a/arch/powerpc/platforms/cell/io-workarounds.h b/arch/powerpc/platforms/cell/io-workarounds.h
index 79d8ed3d510f..6efc7782ebf2 100644
--- a/arch/powerpc/platforms/cell/io-workarounds.h
+++ b/arch/powerpc/platforms/cell/io-workarounds.h
@@ -31,9 +31,9 @@ struct iowa_bus {
31 void *private; 31 void *private;
32}; 32};
33 33
34void __init io_workaround_init(void); 34void __devinit io_workaround_init(void);
35void __init iowa_register_bus(struct pci_controller *, struct ppc_pci_io *, 35void __devinit iowa_register_bus(struct pci_controller *, struct ppc_pci_io *,
36 int (*)(struct iowa_bus *, void *), void *); 36 int (*)(struct iowa_bus *, void *), void *);
37struct iowa_bus *iowa_mem_find_bus(const PCI_IO_ADDR); 37struct iowa_bus *iowa_mem_find_bus(const PCI_IO_ADDR);
38struct iowa_bus *iowa_pio_find_bus(unsigned long); 38struct iowa_bus *iowa_pio_find_bus(unsigned long);
39 39
diff --git a/arch/powerpc/platforms/cell/spufs/file.c b/arch/powerpc/platforms/cell/spufs/file.c
index 80911a373400..c81341ff75b5 100644
--- a/arch/powerpc/platforms/cell/spufs/file.c
+++ b/arch/powerpc/platforms/cell/spufs/file.c
@@ -32,6 +32,7 @@
32#include <linux/marker.h> 32#include <linux/marker.h>
33 33
34#include <asm/io.h> 34#include <asm/io.h>
35#include <asm/time.h>
35#include <asm/spu.h> 36#include <asm/spu.h>
36#include <asm/spu_info.h> 37#include <asm/spu_info.h>
37#include <asm/uaccess.h> 38#include <asm/uaccess.h>
diff --git a/arch/powerpc/platforms/cell/spufs/sched.c b/arch/powerpc/platforms/cell/spufs/sched.c
index 2e411f23462b..745dd51ec37f 100644
--- a/arch/powerpc/platforms/cell/spufs/sched.c
+++ b/arch/powerpc/platforms/cell/spufs/sched.c
@@ -659,7 +659,7 @@ static struct spu *find_victim(struct spu_context *ctx)
659 659
660 victim->stats.invol_ctx_switch++; 660 victim->stats.invol_ctx_switch++;
661 spu->stats.invol_ctx_switch++; 661 spu->stats.invol_ctx_switch++;
662 if (test_bit(SPU_SCHED_SPU_RUN, &ctx->sched_flags)) 662 if (test_bit(SPU_SCHED_SPU_RUN, &victim->sched_flags))
663 spu_add_to_rq(victim); 663 spu_add_to_rq(victim);
664 664
665 mutex_unlock(&victim->state_mutex); 665 mutex_unlock(&victim->state_mutex);
diff --git a/arch/powerpc/platforms/pasemi/misc.c b/arch/powerpc/platforms/pasemi/misc.c
index ded7d152d00c..e0ab299763c1 100644
--- a/arch/powerpc/platforms/pasemi/misc.c
+++ b/arch/powerpc/platforms/pasemi/misc.c
@@ -24,12 +24,11 @@
24 */ 24 */
25struct i2c_driver_device { 25struct i2c_driver_device {
26 char *of_device; 26 char *of_device;
27 char *i2c_driver;
28 char *i2c_type; 27 char *i2c_type;
29}; 28};
30 29
31static struct i2c_driver_device i2c_devices[] __initdata = { 30static struct i2c_driver_device i2c_devices[] __initdata = {
32 {"dallas,ds1338", "rtc-ds1307", "ds1338"}, 31 {"dallas,ds1338", "ds1338"},
33}; 32};
34 33
35static int __init find_i2c_driver(struct device_node *node, 34static int __init find_i2c_driver(struct device_node *node,
@@ -40,9 +39,7 @@ static int __init find_i2c_driver(struct device_node *node,
40 for (i = 0; i < ARRAY_SIZE(i2c_devices); i++) { 39 for (i = 0; i < ARRAY_SIZE(i2c_devices); i++) {
41 if (!of_device_is_compatible(node, i2c_devices[i].of_device)) 40 if (!of_device_is_compatible(node, i2c_devices[i].of_device))
42 continue; 41 continue;
43 if (strlcpy(info->driver_name, i2c_devices[i].i2c_driver, 42 if (strlcpy(info->type, i2c_devices[i].i2c_type,
44 KOBJ_NAME_LEN) >= KOBJ_NAME_LEN ||
45 strlcpy(info->type, i2c_devices[i].i2c_type,
46 I2C_NAME_SIZE) >= I2C_NAME_SIZE) 43 I2C_NAME_SIZE) >= I2C_NAME_SIZE)
47 return -ENOMEM; 44 return -ENOMEM;
48 return 0; 45 return 0;
diff --git a/arch/powerpc/platforms/ps3/mm.c b/arch/powerpc/platforms/ps3/mm.c
index 5b3fb2b321ab..3a58ffabccd9 100644
--- a/arch/powerpc/platforms/ps3/mm.c
+++ b/arch/powerpc/platforms/ps3/mm.c
@@ -317,6 +317,9 @@ static int __init ps3_mm_add_memory(void)
317 return result; 317 return result;
318 } 318 }
319 319
320 lmb_add(start_addr, map.r1.size);
321 lmb_analyze();
322
320 result = online_pages(start_pfn, nr_pages); 323 result = online_pages(start_pfn, nr_pages);
321 324
322 if (result) 325 if (result)
diff --git a/arch/powerpc/sysdev/fsl_soc.c b/arch/powerpc/sysdev/fsl_soc.c
index 3a7054e2bb75..019657c110b6 100644
--- a/arch/powerpc/sysdev/fsl_soc.c
+++ b/arch/powerpc/sysdev/fsl_soc.c
@@ -432,7 +432,7 @@ static struct i2c_driver_device i2c_devices[] __initdata = {
432 {"dallas,ds1339", "ds1339"}, 432 {"dallas,ds1339", "ds1339"},
433 {"dallas,ds1340", "ds1340"}, 433 {"dallas,ds1340", "ds1340"},
434 {"stm,m41t00", "m41t00"}, 434 {"stm,m41t00", "m41t00"},
435 {"dallas,ds1374", "rtc-ds1374"}, 435 {"dallas,ds1374", "ds1374"},
436}; 436};
437 437
438static int __init of_find_i2c_driver(struct device_node *node, 438static int __init of_find_i2c_driver(struct device_node *node,
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c
index 8619f2a3f1f6..7680001676a6 100644
--- a/arch/powerpc/sysdev/mpic.c
+++ b/arch/powerpc/sysdev/mpic.c
@@ -1331,6 +1331,9 @@ void mpic_irq_set_priority(unsigned int irq, unsigned int pri)
1331 unsigned long flags; 1331 unsigned long flags;
1332 u32 reg; 1332 u32 reg;
1333 1333
1334 if (!mpic)
1335 return;
1336
1334 spin_lock_irqsave(&mpic_lock, flags); 1337 spin_lock_irqsave(&mpic_lock, flags);
1335 if (is_ipi) { 1338 if (is_ipi) {
1336 reg = mpic_ipi_read(src - mpic->ipi_vecs[0]) & 1339 reg = mpic_ipi_read(src - mpic->ipi_vecs[0]) &
@@ -1346,23 +1349,6 @@ void mpic_irq_set_priority(unsigned int irq, unsigned int pri)
1346 spin_unlock_irqrestore(&mpic_lock, flags); 1349 spin_unlock_irqrestore(&mpic_lock, flags);
1347} 1350}
1348 1351
1349unsigned int mpic_irq_get_priority(unsigned int irq)
1350{
1351 unsigned int is_ipi;
1352 struct mpic *mpic = mpic_find(irq, &is_ipi);
1353 unsigned int src = mpic_irq_to_hw(irq);
1354 unsigned long flags;
1355 u32 reg;
1356
1357 spin_lock_irqsave(&mpic_lock, flags);
1358 if (is_ipi)
1359 reg = mpic_ipi_read(src = mpic->ipi_vecs[0]);
1360 else
1361 reg = mpic_irq_read(src, MPIC_INFO(IRQ_VECTOR_PRI));
1362 spin_unlock_irqrestore(&mpic_lock, flags);
1363 return (reg & MPIC_VECPRI_PRIORITY_MASK) >> MPIC_VECPRI_PRIORITY_SHIFT;
1364}
1365
1366void mpic_setup_this_cpu(void) 1352void mpic_setup_this_cpu(void)
1367{ 1353{
1368#ifdef CONFIG_SMP 1354#ifdef CONFIG_SMP
diff --git a/arch/ppc/Makefile b/arch/ppc/Makefile
index 8df7f0e4c3a6..2352d139b262 100644
--- a/arch/ppc/Makefile
+++ b/arch/ppc/Makefile
@@ -43,7 +43,7 @@ KBUILD_AFLAGS += $(cpu-as-y)
43KBUILD_CFLAGS += $(cpu-as-y) 43KBUILD_CFLAGS += $(cpu-as-y)
44 44
45# Default to the common case. 45# Default to the common case.
46KBUILD_DEFCONFIG := common_defconfig 46KBUILD_DEFCONFIG := ebony_defconfig
47 47
48head-y := arch/ppc/kernel/head.o 48head-y := arch/ppc/kernel/head.o
49head-$(CONFIG_8xx) := arch/ppc/kernel/head_8xx.o 49head-$(CONFIG_8xx) := arch/ppc/kernel/head_8xx.o
diff --git a/arch/ppc/kernel/ppc_ksyms.c b/arch/ppc/kernel/ppc_ksyms.c
index 16ac11ca7ba0..5d529bcbeee9 100644
--- a/arch/ppc/kernel/ppc_ksyms.c
+++ b/arch/ppc/kernel/ppc_ksyms.c
@@ -24,6 +24,7 @@
24#include <asm/checksum.h> 24#include <asm/checksum.h>
25#include <asm/pgtable.h> 25#include <asm/pgtable.h>
26#include <asm/tlbflush.h> 26#include <asm/tlbflush.h>
27#include <asm/cacheflush.h>
27#include <linux/adb.h> 28#include <linux/adb.h>
28#include <linux/cuda.h> 29#include <linux/cuda.h>
29#include <linux/pmu.h> 30#include <linux/pmu.h>
@@ -59,8 +60,10 @@ long long __ashrdi3(long long, int);
59long long __ashldi3(long long, int); 60long long __ashldi3(long long, int);
60long long __lshrdi3(long long, int); 61long long __lshrdi3(long long, int);
61 62
63EXPORT_SYMBOL(empty_zero_page);
62EXPORT_SYMBOL(clear_pages); 64EXPORT_SYMBOL(clear_pages);
63EXPORT_SYMBOL(clear_user_page); 65EXPORT_SYMBOL(clear_user_page);
66EXPORT_SYMBOL(copy_page);
64EXPORT_SYMBOL(transfer_to_handler); 67EXPORT_SYMBOL(transfer_to_handler);
65EXPORT_SYMBOL(do_IRQ); 68EXPORT_SYMBOL(do_IRQ);
66EXPORT_SYMBOL(machine_check_exception); 69EXPORT_SYMBOL(machine_check_exception);
diff --git a/arch/ppc/kernel/setup.c b/arch/ppc/kernel/setup.c
index bfddfdee0b65..51e8094f52d6 100644
--- a/arch/ppc/kernel/setup.c
+++ b/arch/ppc/kernel/setup.c
@@ -36,6 +36,7 @@
36#include <asm/nvram.h> 36#include <asm/nvram.h>
37#include <asm/xmon.h> 37#include <asm/xmon.h>
38#include <asm/ocp.h> 38#include <asm/ocp.h>
39#include <asm/irq.h>
39 40
40#define USES_PPC_SYS (defined(CONFIG_MPC10X_BRIDGE) || defined(CONFIG_8260) || \ 41#define USES_PPC_SYS (defined(CONFIG_MPC10X_BRIDGE) || defined(CONFIG_8260) || \
41 defined(CONFIG_PPC_MPC52xx)) 42 defined(CONFIG_PPC_MPC52xx))
diff --git a/arch/ppc/platforms/residual.c b/arch/ppc/platforms/residual.c
index 18495e754e30..d687b0f8763b 100644
--- a/arch/ppc/platforms/residual.c
+++ b/arch/ppc/platforms/residual.c
@@ -38,6 +38,7 @@
38#include <linux/init.h> 38#include <linux/init.h>
39#include <linux/ioport.h> 39#include <linux/ioport.h>
40#include <linux/pci.h> 40#include <linux/pci.h>
41#include <linux/proc_fs.h>
41 42
42#include <asm/sections.h> 43#include <asm/sections.h>
43#include <asm/mmu.h> 44#include <asm/mmu.h>
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index 1d035082e78e..107e492cb47e 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -304,10 +304,14 @@ config ARCH_SPARSEMEM_ENABLE
304 def_bool y 304 def_bool y
305 select SPARSEMEM_VMEMMAP_ENABLE 305 select SPARSEMEM_VMEMMAP_ENABLE
306 select SPARSEMEM_VMEMMAP 306 select SPARSEMEM_VMEMMAP
307 select SPARSEMEM_STATIC if !64BIT
307 308
308config ARCH_SPARSEMEM_DEFAULT 309config ARCH_SPARSEMEM_DEFAULT
309 def_bool y 310 def_bool y
310 311
312config ARCH_SELECT_MEMORY_MODEL
313 def_bool y
314
311source "mm/Kconfig" 315source "mm/Kconfig"
312 316
313comment "I/O subsystem configuration" 317comment "I/O subsystem configuration"
diff --git a/arch/s390/appldata/appldata_base.c b/arch/s390/appldata/appldata_base.c
index 655d52543e2d..ad40729bec3d 100644
--- a/arch/s390/appldata/appldata_base.c
+++ b/arch/s390/appldata/appldata_base.c
@@ -130,6 +130,7 @@ static void appldata_work_fn(struct work_struct *work)
130 130
131 P_DEBUG(" -= Work Queue =-\n"); 131 P_DEBUG(" -= Work Queue =-\n");
132 i = 0; 132 i = 0;
133 get_online_cpus();
133 spin_lock(&appldata_ops_lock); 134 spin_lock(&appldata_ops_lock);
134 list_for_each(lh, &appldata_ops_list) { 135 list_for_each(lh, &appldata_ops_list) {
135 ops = list_entry(lh, struct appldata_ops, list); 136 ops = list_entry(lh, struct appldata_ops, list);
@@ -140,6 +141,7 @@ static void appldata_work_fn(struct work_struct *work)
140 } 141 }
141 } 142 }
142 spin_unlock(&appldata_ops_lock); 143 spin_unlock(&appldata_ops_lock);
144 put_online_cpus();
143} 145}
144 146
145/* 147/*
@@ -266,12 +268,14 @@ appldata_timer_handler(ctl_table *ctl, int write, struct file *filp,
266 len = *lenp; 268 len = *lenp;
267 if (copy_from_user(buf, buffer, len > sizeof(buf) ? sizeof(buf) : len)) 269 if (copy_from_user(buf, buffer, len > sizeof(buf) ? sizeof(buf) : len))
268 return -EFAULT; 270 return -EFAULT;
271 get_online_cpus();
269 spin_lock(&appldata_timer_lock); 272 spin_lock(&appldata_timer_lock);
270 if (buf[0] == '1') 273 if (buf[0] == '1')
271 __appldata_vtimer_setup(APPLDATA_ADD_TIMER); 274 __appldata_vtimer_setup(APPLDATA_ADD_TIMER);
272 else if (buf[0] == '0') 275 else if (buf[0] == '0')
273 __appldata_vtimer_setup(APPLDATA_DEL_TIMER); 276 __appldata_vtimer_setup(APPLDATA_DEL_TIMER);
274 spin_unlock(&appldata_timer_lock); 277 spin_unlock(&appldata_timer_lock);
278 put_online_cpus();
275out: 279out:
276 *lenp = len; 280 *lenp = len;
277 *ppos += len; 281 *ppos += len;
@@ -314,10 +318,12 @@ appldata_interval_handler(ctl_table *ctl, int write, struct file *filp,
314 return -EINVAL; 318 return -EINVAL;
315 } 319 }
316 320
321 get_online_cpus();
317 spin_lock(&appldata_timer_lock); 322 spin_lock(&appldata_timer_lock);
318 appldata_interval = interval; 323 appldata_interval = interval;
319 __appldata_vtimer_setup(APPLDATA_MOD_TIMER); 324 __appldata_vtimer_setup(APPLDATA_MOD_TIMER);
320 spin_unlock(&appldata_timer_lock); 325 spin_unlock(&appldata_timer_lock);
326 put_online_cpus();
321 327
322 P_INFO("Monitoring CPU interval set to %u milliseconds.\n", 328 P_INFO("Monitoring CPU interval set to %u milliseconds.\n",
323 interval); 329 interval);
@@ -556,8 +562,10 @@ static int __init appldata_init(void)
556 return -ENOMEM; 562 return -ENOMEM;
557 } 563 }
558 564
565 get_online_cpus();
559 for_each_online_cpu(i) 566 for_each_online_cpu(i)
560 appldata_online_cpu(i); 567 appldata_online_cpu(i);
568 put_online_cpus();
561 569
562 /* Register cpu hotplug notifier */ 570 /* Register cpu hotplug notifier */
563 register_hotcpu_notifier(&appldata_nb); 571 register_hotcpu_notifier(&appldata_nb);
diff --git a/arch/s390/defconfig b/arch/s390/defconfig
index aa341d0ea1e6..c5cdb975d590 100644
--- a/arch/s390/defconfig
+++ b/arch/s390/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.25 3# Linux kernel version: 2.6.26-rc4
4# Wed Apr 30 11:07:45 2008 4# Fri May 30 09:49:33 2008
5# 5#
6CONFIG_SCHED_MC=y 6CONFIG_SCHED_MC=y
7CONFIG_MMU=y 7CONFIG_MMU=y
@@ -103,6 +103,7 @@ CONFIG_RT_MUTEXES=y
103# CONFIG_TINY_SHMEM is not set 103# CONFIG_TINY_SHMEM is not set
104CONFIG_BASE_SMALL=0 104CONFIG_BASE_SMALL=0
105CONFIG_MODULES=y 105CONFIG_MODULES=y
106# CONFIG_MODULE_FORCE_LOAD is not set
106CONFIG_MODULE_UNLOAD=y 107CONFIG_MODULE_UNLOAD=y
107# CONFIG_MODULE_FORCE_UNLOAD is not set 108# CONFIG_MODULE_FORCE_UNLOAD is not set
108CONFIG_MODVERSIONS=y 109CONFIG_MODVERSIONS=y
@@ -173,6 +174,7 @@ CONFIG_PREEMPT=y
173# CONFIG_PREEMPT_RCU is not set 174# CONFIG_PREEMPT_RCU is not set
174CONFIG_ARCH_SPARSEMEM_ENABLE=y 175CONFIG_ARCH_SPARSEMEM_ENABLE=y
175CONFIG_ARCH_SPARSEMEM_DEFAULT=y 176CONFIG_ARCH_SPARSEMEM_DEFAULT=y
177CONFIG_ARCH_SELECT_MEMORY_MODEL=y
176CONFIG_SELECT_MEMORY_MODEL=y 178CONFIG_SELECT_MEMORY_MODEL=y
177# CONFIG_FLATMEM_MANUAL is not set 179# CONFIG_FLATMEM_MANUAL is not set
178# CONFIG_DISCONTIGMEM_MANUAL is not set 180# CONFIG_DISCONTIGMEM_MANUAL is not set
@@ -210,6 +212,7 @@ CONFIG_FORCE_MAX_ZONEORDER=9
210CONFIG_PFAULT=y 212CONFIG_PFAULT=y
211# CONFIG_SHARED_KERNEL is not set 213# CONFIG_SHARED_KERNEL is not set
212# CONFIG_CMM is not set 214# CONFIG_CMM is not set
215# CONFIG_PAGE_STATES is not set
213CONFIG_VIRT_TIMER=y 216CONFIG_VIRT_TIMER=y
214CONFIG_VIRT_CPU_ACCOUNTING=y 217CONFIG_VIRT_CPU_ACCOUNTING=y
215# CONFIG_APPLDATA_BASE is not set 218# CONFIG_APPLDATA_BASE is not set
@@ -620,6 +623,7 @@ CONFIG_S390_VMUR=m
620# 623#
621# CONFIG_MEMSTICK is not set 624# CONFIG_MEMSTICK is not set
622# CONFIG_NEW_LEDS is not set 625# CONFIG_NEW_LEDS is not set
626CONFIG_ACCESSIBILITY=y
623 627
624# 628#
625# File systems 629# File systems
@@ -754,11 +758,12 @@ CONFIG_FRAME_WARN=2048
754CONFIG_MAGIC_SYSRQ=y 758CONFIG_MAGIC_SYSRQ=y
755# CONFIG_UNUSED_SYMBOLS is not set 759# CONFIG_UNUSED_SYMBOLS is not set
756CONFIG_DEBUG_FS=y 760CONFIG_DEBUG_FS=y
757CONFIG_HEADERS_CHECK=y 761# CONFIG_HEADERS_CHECK is not set
758CONFIG_DEBUG_KERNEL=y 762CONFIG_DEBUG_KERNEL=y
759# CONFIG_SCHED_DEBUG is not set 763# CONFIG_SCHED_DEBUG is not set
760# CONFIG_SCHEDSTATS is not set 764# CONFIG_SCHEDSTATS is not set
761# CONFIG_TIMER_STATS is not set 765# CONFIG_TIMER_STATS is not set
766# CONFIG_DEBUG_OBJECTS is not set
762# CONFIG_DEBUG_SLAB is not set 767# CONFIG_DEBUG_SLAB is not set
763CONFIG_DEBUG_PREEMPT=y 768CONFIG_DEBUG_PREEMPT=y
764# CONFIG_DEBUG_RT_MUTEXES is not set 769# CONFIG_DEBUG_RT_MUTEXES is not set
diff --git a/arch/s390/kernel/debug.c b/arch/s390/kernel/debug.c
index dff0568e67ec..c93d1296cc0a 100644
--- a/arch/s390/kernel/debug.c
+++ b/arch/s390/kernel/debug.c
@@ -71,7 +71,7 @@ static ssize_t debug_input(struct file *file, const char __user *user_buf,
71 size_t user_len, loff_t * offset); 71 size_t user_len, loff_t * offset);
72static int debug_open(struct inode *inode, struct file *file); 72static int debug_open(struct inode *inode, struct file *file);
73static int debug_close(struct inode *inode, struct file *file); 73static int debug_close(struct inode *inode, struct file *file);
74static debug_info_t* debug_info_create(char *name, int pages_per_area, 74static debug_info_t *debug_info_create(const char *name, int pages_per_area,
75 int nr_areas, int buf_size, mode_t mode); 75 int nr_areas, int buf_size, mode_t mode);
76static void debug_info_get(debug_info_t *); 76static void debug_info_get(debug_info_t *);
77static void debug_info_put(debug_info_t *); 77static void debug_info_put(debug_info_t *);
@@ -234,8 +234,8 @@ fail_malloc_areas:
234 */ 234 */
235 235
236static debug_info_t* 236static debug_info_t*
237debug_info_alloc(char *name, int pages_per_area, int nr_areas, int buf_size, 237debug_info_alloc(const char *name, int pages_per_area, int nr_areas,
238 int level, int mode) 238 int buf_size, int level, int mode)
239{ 239{
240 debug_info_t* rc; 240 debug_info_t* rc;
241 241
@@ -326,8 +326,8 @@ debug_info_free(debug_info_t* db_info){
326 */ 326 */
327 327
328static debug_info_t* 328static debug_info_t*
329debug_info_create(char *name, int pages_per_area, int nr_areas, int buf_size, 329debug_info_create(const char *name, int pages_per_area, int nr_areas,
330 mode_t mode) 330 int buf_size, mode_t mode)
331{ 331{
332 debug_info_t* rc; 332 debug_info_t* rc;
333 333
@@ -684,9 +684,9 @@ debug_close(struct inode *inode, struct file *file)
684 * - Returns handle for debug area 684 * - Returns handle for debug area
685 */ 685 */
686 686
687debug_info_t *debug_register_mode(char *name, int pages_per_area, int nr_areas, 687debug_info_t *debug_register_mode(const char *name, int pages_per_area,
688 int buf_size, mode_t mode, uid_t uid, 688 int nr_areas, int buf_size, mode_t mode,
689 gid_t gid) 689 uid_t uid, gid_t gid)
690{ 690{
691 debug_info_t *rc = NULL; 691 debug_info_t *rc = NULL;
692 692
@@ -722,8 +722,8 @@ EXPORT_SYMBOL(debug_register_mode);
722 * - returns handle for debug area 722 * - returns handle for debug area
723 */ 723 */
724 724
725debug_info_t *debug_register(char *name, int pages_per_area, int nr_areas, 725debug_info_t *debug_register(const char *name, int pages_per_area,
726 int buf_size) 726 int nr_areas, int buf_size)
727{ 727{
728 return debug_register_mode(name, pages_per_area, nr_areas, buf_size, 728 return debug_register_mode(name, pages_per_area, nr_areas, buf_size,
729 S_IRUSR | S_IWUSR, 0, 0); 729 S_IRUSR | S_IWUSR, 0, 0);
diff --git a/arch/s390/kernel/dis.c b/arch/s390/kernel/dis.c
index c14a336f6300..d2f270c995d9 100644
--- a/arch/s390/kernel/dis.c
+++ b/arch/s390/kernel/dis.c
@@ -208,7 +208,7 @@ static const unsigned char formats[][7] = {
208 [INSTR_RRF_F0FF] = { 0xff, F_16,F_24,F_28,0,0,0 }, /* e.g. madbr */ 208 [INSTR_RRF_F0FF] = { 0xff, F_16,F_24,F_28,0,0,0 }, /* e.g. madbr */
209 [INSTR_RRF_FUFF] = { 0xff, F_24,F_16,F_28,U4_20,0,0 },/* e.g. didbr */ 209 [INSTR_RRF_FUFF] = { 0xff, F_24,F_16,F_28,U4_20,0,0 },/* e.g. didbr */
210 [INSTR_RRF_RURR] = { 0xff, R_24,R_28,R_16,U4_20,0,0 },/* e.g. .insn */ 210 [INSTR_RRF_RURR] = { 0xff, R_24,R_28,R_16,U4_20,0,0 },/* e.g. .insn */
211 [INSTR_RRF_R0RR] = { 0xff, R_24,R_28,R_16,0,0,0 }, /* e.g. idte */ 211 [INSTR_RRF_R0RR] = { 0xff, R_24,R_16,R_28,0,0,0 }, /* e.g. idte */
212 [INSTR_RRF_U0FF] = { 0xff, F_24,U4_16,F_28,0,0,0 }, /* e.g. fixr */ 212 [INSTR_RRF_U0FF] = { 0xff, F_24,U4_16,F_28,0,0,0 }, /* e.g. fixr */
213 [INSTR_RRF_U0RF] = { 0xff, R_24,U4_16,F_28,0,0,0 }, /* e.g. cfebr */ 213 [INSTR_RRF_U0RF] = { 0xff, R_24,U4_16,F_28,0,0,0 }, /* e.g. cfebr */
214 [INSTR_RRF_M0RR] = { 0xff, R_24,R_28,M_16,0,0,0 }, /* e.g. sske */ 214 [INSTR_RRF_M0RR] = { 0xff, R_24,R_28,M_16,0,0,0 }, /* e.g. sske */
diff --git a/arch/s390/kernel/init_task.c b/arch/s390/kernel/init_task.c
index d494161b05b4..7ad003969251 100644
--- a/arch/s390/kernel/init_task.c
+++ b/arch/s390/kernel/init_task.c
@@ -17,7 +17,6 @@
17#include <asm/pgtable.h> 17#include <asm/pgtable.h>
18 18
19static struct fs_struct init_fs = INIT_FS; 19static struct fs_struct init_fs = INIT_FS;
20static struct files_struct init_files = INIT_FILES;
21static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 20static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
22static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 21static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
23struct mm_struct init_mm = INIT_MM(init_mm); 22struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c
index c59a86dca584..e7c5bfb7c755 100644
--- a/arch/s390/kernel/irq.c
+++ b/arch/s390/kernel/irq.c
@@ -25,6 +25,7 @@ int show_interrupts(struct seq_file *p, void *v)
25 static const char *intrclass_names[] = { "EXT", "I/O", }; 25 static const char *intrclass_names[] = { "EXT", "I/O", };
26 int i = *(loff_t *) v, j; 26 int i = *(loff_t *) v, j;
27 27
28 get_online_cpus();
28 if (i == 0) { 29 if (i == 0) {
29 seq_puts(p, " "); 30 seq_puts(p, " ");
30 for_each_online_cpu(j) 31 for_each_online_cpu(j)
@@ -43,7 +44,7 @@ int show_interrupts(struct seq_file *p, void *v)
43 seq_putc(p, '\n'); 44 seq_putc(p, '\n');
44 45
45 } 46 }
46 47 put_online_cpus();
47 return 0; 48 return 0;
48} 49}
49 50
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c
index 0aeb290060d9..5d4fa4b1c74c 100644
--- a/arch/s390/kernel/smp.c
+++ b/arch/s390/kernel/smp.c
@@ -139,7 +139,6 @@ static void __smp_call_function_map(void (*func) (void *info), void *info,
139 if (wait) 139 if (wait)
140 data.finished = CPU_MASK_NONE; 140 data.finished = CPU_MASK_NONE;
141 141
142 spin_lock(&call_lock);
143 call_data = &data; 142 call_data = &data;
144 143
145 for_each_cpu_mask(cpu, map) 144 for_each_cpu_mask(cpu, map)
@@ -151,7 +150,6 @@ static void __smp_call_function_map(void (*func) (void *info), void *info,
151 if (wait) 150 if (wait)
152 while (!cpus_equal(map, data.finished)) 151 while (!cpus_equal(map, data.finished))
153 cpu_relax(); 152 cpu_relax();
154 spin_unlock(&call_lock);
155out: 153out:
156 if (local) { 154 if (local) {
157 local_irq_disable(); 155 local_irq_disable();
@@ -177,11 +175,11 @@ int smp_call_function(void (*func) (void *info), void *info, int nonatomic,
177{ 175{
178 cpumask_t map; 176 cpumask_t map;
179 177
180 preempt_disable(); 178 spin_lock(&call_lock);
181 map = cpu_online_map; 179 map = cpu_online_map;
182 cpu_clear(smp_processor_id(), map); 180 cpu_clear(smp_processor_id(), map);
183 __smp_call_function_map(func, info, nonatomic, wait, map); 181 __smp_call_function_map(func, info, nonatomic, wait, map);
184 preempt_enable(); 182 spin_unlock(&call_lock);
185 return 0; 183 return 0;
186} 184}
187EXPORT_SYMBOL(smp_call_function); 185EXPORT_SYMBOL(smp_call_function);
@@ -202,10 +200,10 @@ EXPORT_SYMBOL(smp_call_function);
202int smp_call_function_single(int cpu, void (*func) (void *info), void *info, 200int smp_call_function_single(int cpu, void (*func) (void *info), void *info,
203 int nonatomic, int wait) 201 int nonatomic, int wait)
204{ 202{
205 preempt_disable(); 203 spin_lock(&call_lock);
206 __smp_call_function_map(func, info, nonatomic, wait, 204 __smp_call_function_map(func, info, nonatomic, wait,
207 cpumask_of_cpu(cpu)); 205 cpumask_of_cpu(cpu));
208 preempt_enable(); 206 spin_unlock(&call_lock);
209 return 0; 207 return 0;
210} 208}
211EXPORT_SYMBOL(smp_call_function_single); 209EXPORT_SYMBOL(smp_call_function_single);
@@ -228,10 +226,10 @@ EXPORT_SYMBOL(smp_call_function_single);
228int smp_call_function_mask(cpumask_t mask, void (*func)(void *), void *info, 226int smp_call_function_mask(cpumask_t mask, void (*func)(void *), void *info,
229 int wait) 227 int wait)
230{ 228{
231 preempt_disable(); 229 spin_lock(&call_lock);
232 cpu_clear(smp_processor_id(), mask); 230 cpu_clear(smp_processor_id(), mask);
233 __smp_call_function_map(func, info, 0, wait, mask); 231 __smp_call_function_map(func, info, 0, wait, mask);
234 preempt_enable(); 232 spin_unlock(&call_lock);
235 return 0; 233 return 0;
236} 234}
237EXPORT_SYMBOL(smp_call_function_mask); 235EXPORT_SYMBOL(smp_call_function_mask);
@@ -592,7 +590,9 @@ int __cpuinit start_secondary(void *cpuvoid)
592 pfault_init(); 590 pfault_init();
593 591
594 /* Mark this cpu as online */ 592 /* Mark this cpu as online */
593 spin_lock(&call_lock);
595 cpu_set(smp_processor_id(), cpu_online_map); 594 cpu_set(smp_processor_id(), cpu_online_map);
595 spin_unlock(&call_lock);
596 /* Switch on interrupts */ 596 /* Switch on interrupts */
597 local_irq_enable(); 597 local_irq_enable();
598 /* Print info about this processor */ 598 /* Print info about this processor */
@@ -711,7 +711,7 @@ int __cpuinit __cpu_up(unsigned int cpu)
711 memset(sf, 0, sizeof(struct stack_frame)); 711 memset(sf, 0, sizeof(struct stack_frame));
712 sf->gprs[9] = (unsigned long) sf; 712 sf->gprs[9] = (unsigned long) sf;
713 cpu_lowcore->save_area[15] = (unsigned long) sf; 713 cpu_lowcore->save_area[15] = (unsigned long) sf;
714 __ctl_store(cpu_lowcore->cregs_save_area[0], 0, 15); 714 __ctl_store(cpu_lowcore->cregs_save_area, 0, 15);
715 asm volatile( 715 asm volatile(
716 " stam 0,15,0(%0)" 716 " stam 0,15,0(%0)"
717 : : "a" (&cpu_lowcore->access_regs_save_area) : "memory"); 717 : : "a" (&cpu_lowcore->access_regs_save_area) : "memory");
@@ -1089,7 +1089,7 @@ out:
1089 1089
1090#ifdef CONFIG_HOTPLUG_CPU 1090#ifdef CONFIG_HOTPLUG_CPU
1091 1091
1092int smp_rescan_cpus(void) 1092int __ref smp_rescan_cpus(void)
1093{ 1093{
1094 cpumask_t newcpus; 1094 cpumask_t newcpus;
1095 int cpu; 1095 int cpu;
diff --git a/arch/s390/kvm/diag.c b/arch/s390/kvm/diag.c
index f639a152869f..a0775e1f08df 100644
--- a/arch/s390/kvm/diag.c
+++ b/arch/s390/kvm/diag.c
@@ -20,7 +20,7 @@ static int __diag_time_slice_end(struct kvm_vcpu *vcpu)
20 VCPU_EVENT(vcpu, 5, "%s", "diag time slice end"); 20 VCPU_EVENT(vcpu, 5, "%s", "diag time slice end");
21 vcpu->stat.diagnose_44++; 21 vcpu->stat.diagnose_44++;
22 vcpu_put(vcpu); 22 vcpu_put(vcpu);
23 schedule(); 23 yield();
24 vcpu_load(vcpu); 24 vcpu_load(vcpu);
25 return 0; 25 return 0;
26} 26}
diff --git a/arch/s390/kvm/interrupt.c b/arch/s390/kvm/interrupt.c
index fcd1ed8015c1..84a7fed4cd4e 100644
--- a/arch/s390/kvm/interrupt.c
+++ b/arch/s390/kvm/interrupt.c
@@ -339,6 +339,11 @@ int kvm_s390_handle_wait(struct kvm_vcpu *vcpu)
339 if (kvm_cpu_has_interrupt(vcpu)) 339 if (kvm_cpu_has_interrupt(vcpu))
340 return 0; 340 return 0;
341 341
342 __set_cpu_idle(vcpu);
343 spin_lock_bh(&vcpu->arch.local_int.lock);
344 vcpu->arch.local_int.timer_due = 0;
345 spin_unlock_bh(&vcpu->arch.local_int.lock);
346
342 if (psw_interrupts_disabled(vcpu)) { 347 if (psw_interrupts_disabled(vcpu)) {
343 VCPU_EVENT(vcpu, 3, "%s", "disabled wait"); 348 VCPU_EVENT(vcpu, 3, "%s", "disabled wait");
344 __unset_cpu_idle(vcpu); 349 __unset_cpu_idle(vcpu);
@@ -366,8 +371,6 @@ int kvm_s390_handle_wait(struct kvm_vcpu *vcpu)
366no_timer: 371no_timer:
367 spin_lock_bh(&vcpu->arch.local_int.float_int->lock); 372 spin_lock_bh(&vcpu->arch.local_int.float_int->lock);
368 spin_lock_bh(&vcpu->arch.local_int.lock); 373 spin_lock_bh(&vcpu->arch.local_int.lock);
369 __set_cpu_idle(vcpu);
370 vcpu->arch.local_int.timer_due = 0;
371 add_wait_queue(&vcpu->arch.local_int.wq, &wait); 374 add_wait_queue(&vcpu->arch.local_int.wq, &wait);
372 while (list_empty(&vcpu->arch.local_int.list) && 375 while (list_empty(&vcpu->arch.local_int.list) &&
373 list_empty(&vcpu->arch.local_int.float_int->list) && 376 list_empty(&vcpu->arch.local_int.float_int->list) &&
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
index 0ac36a649eba..6558b09ff579 100644
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -423,6 +423,8 @@ int kvm_arch_vcpu_ioctl_set_mpstate(struct kvm_vcpu *vcpu,
423 return -EINVAL; /* not implemented yet */ 423 return -EINVAL; /* not implemented yet */
424} 424}
425 425
426extern void s390_handle_mcck(void);
427
426static void __vcpu_run(struct kvm_vcpu *vcpu) 428static void __vcpu_run(struct kvm_vcpu *vcpu)
427{ 429{
428 memcpy(&vcpu->arch.sie_block->gg14, &vcpu->arch.guest_gprs[14], 16); 430 memcpy(&vcpu->arch.sie_block->gg14, &vcpu->arch.guest_gprs[14], 16);
@@ -430,13 +432,21 @@ static void __vcpu_run(struct kvm_vcpu *vcpu)
430 if (need_resched()) 432 if (need_resched())
431 schedule(); 433 schedule();
432 434
435 if (test_thread_flag(TIF_MCCK_PENDING))
436 s390_handle_mcck();
437
438 kvm_s390_deliver_pending_interrupts(vcpu);
439
433 vcpu->arch.sie_block->icptcode = 0; 440 vcpu->arch.sie_block->icptcode = 0;
434 local_irq_disable(); 441 local_irq_disable();
435 kvm_guest_enter(); 442 kvm_guest_enter();
436 local_irq_enable(); 443 local_irq_enable();
437 VCPU_EVENT(vcpu, 6, "entering sie flags %x", 444 VCPU_EVENT(vcpu, 6, "entering sie flags %x",
438 atomic_read(&vcpu->arch.sie_block->cpuflags)); 445 atomic_read(&vcpu->arch.sie_block->cpuflags));
439 sie64a(vcpu->arch.sie_block, vcpu->arch.guest_gprs); 446 if (sie64a(vcpu->arch.sie_block, vcpu->arch.guest_gprs)) {
447 VCPU_EVENT(vcpu, 3, "%s", "fault in sie instruction");
448 kvm_s390_inject_program_int(vcpu, PGM_ADDRESSING);
449 }
440 VCPU_EVENT(vcpu, 6, "exit sie icptcode %d", 450 VCPU_EVENT(vcpu, 6, "exit sie icptcode %d",
441 vcpu->arch.sie_block->icptcode); 451 vcpu->arch.sie_block->icptcode);
442 local_irq_disable(); 452 local_irq_disable();
@@ -475,7 +485,6 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run)
475 might_sleep(); 485 might_sleep();
476 486
477 do { 487 do {
478 kvm_s390_deliver_pending_interrupts(vcpu);
479 __vcpu_run(vcpu); 488 __vcpu_run(vcpu);
480 rc = kvm_handle_sie_intercept(vcpu); 489 rc = kvm_handle_sie_intercept(vcpu);
481 } while (!signal_pending(current) && !rc); 490 } while (!signal_pending(current) && !rc);
diff --git a/arch/s390/mm/init.c b/arch/s390/mm/init.c
index 29f3a63806b9..05598649b326 100644
--- a/arch/s390/mm/init.c
+++ b/arch/s390/mm/init.c
@@ -44,37 +44,34 @@ char empty_zero_page[PAGE_SIZE] __attribute__((__aligned__(PAGE_SIZE)));
44 44
45void show_mem(void) 45void show_mem(void)
46{ 46{
47 int i, total = 0, reserved = 0; 47 unsigned long i, total = 0, reserved = 0;
48 int shared = 0, cached = 0; 48 unsigned long shared = 0, cached = 0;
49 unsigned long flags;
49 struct page *page; 50 struct page *page;
51 pg_data_t *pgdat;
50 52
51 printk("Mem-info:\n"); 53 printk("Mem-info:\n");
52 show_free_areas(); 54 show_free_areas();
53 i = max_mapnr; 55 for_each_online_pgdat(pgdat) {
54 while (i-- > 0) { 56 pgdat_resize_lock(pgdat, &flags);
55 if (!pfn_valid(i)) 57 for (i = 0; i < pgdat->node_spanned_pages; i++) {
56 continue; 58 if (!pfn_valid(pgdat->node_start_pfn + i))
57 page = pfn_to_page(i); 59 continue;
58 total++; 60 page = pfn_to_page(pgdat->node_start_pfn + i);
59 if (PageReserved(page)) 61 total++;
60 reserved++; 62 if (PageReserved(page))
61 else if (PageSwapCache(page)) 63 reserved++;
62 cached++; 64 else if (PageSwapCache(page))
63 else if (page_count(page)) 65 cached++;
64 shared += page_count(page) - 1; 66 else if (page_count(page))
67 shared += page_count(page) - 1;
68 }
69 pgdat_resize_unlock(pgdat, &flags);
65 } 70 }
66 printk("%d pages of RAM\n", total); 71 printk("%ld pages of RAM\n", total);
67 printk("%d reserved pages\n", reserved); 72 printk("%ld reserved pages\n", reserved);
68 printk("%d pages shared\n", shared); 73 printk("%ld pages shared\n", shared);
69 printk("%d pages swap cached\n", cached); 74 printk("%ld pages swap cached\n", cached);
70
71 printk("%lu pages dirty\n", global_page_state(NR_FILE_DIRTY));
72 printk("%lu pages writeback\n", global_page_state(NR_WRITEBACK));
73 printk("%lu pages mapped\n", global_page_state(NR_FILE_MAPPED));
74 printk("%lu pages slab\n",
75 global_page_state(NR_SLAB_RECLAIMABLE) +
76 global_page_state(NR_SLAB_UNRECLAIMABLE));
77 printk("%lu pages pagetables\n", global_page_state(NR_PAGETABLE));
78} 75}
79 76
80/* 77/*
diff --git a/arch/s390/mm/pgtable.c b/arch/s390/mm/pgtable.c
index 5c1aea97cd12..3d98ba82ea67 100644
--- a/arch/s390/mm/pgtable.c
+++ b/arch/s390/mm/pgtable.c
@@ -254,36 +254,46 @@ void disable_noexec(struct mm_struct *mm, struct task_struct *tsk)
254int s390_enable_sie(void) 254int s390_enable_sie(void)
255{ 255{
256 struct task_struct *tsk = current; 256 struct task_struct *tsk = current;
257 struct mm_struct *mm; 257 struct mm_struct *mm, *old_mm;
258 int rc;
259 258
260 task_lock(tsk); 259 /* Do we have pgstes? if yes, we are done */
261
262 rc = 0;
263 if (tsk->mm->context.pgstes) 260 if (tsk->mm->context.pgstes)
264 goto unlock; 261 return 0;
265 262
266 rc = -EINVAL; 263 /* lets check if we are allowed to replace the mm */
264 task_lock(tsk);
267 if (!tsk->mm || atomic_read(&tsk->mm->mm_users) > 1 || 265 if (!tsk->mm || atomic_read(&tsk->mm->mm_users) > 1 ||
268 tsk->mm != tsk->active_mm || tsk->mm->ioctx_list) 266 tsk->mm != tsk->active_mm || tsk->mm->ioctx_list) {
269 goto unlock; 267 task_unlock(tsk);
268 return -EINVAL;
269 }
270 task_unlock(tsk);
270 271
271 tsk->mm->context.pgstes = 1; /* dirty little tricks .. */ 272 /* we copy the mm with pgstes enabled */
273 tsk->mm->context.pgstes = 1;
272 mm = dup_mm(tsk); 274 mm = dup_mm(tsk);
273 tsk->mm->context.pgstes = 0; 275 tsk->mm->context.pgstes = 0;
274
275 rc = -ENOMEM;
276 if (!mm) 276 if (!mm)
277 goto unlock; 277 return -ENOMEM;
278 mmput(tsk->mm); 278
279 /* Now lets check again if somebody attached ptrace etc */
280 task_lock(tsk);
281 if (!tsk->mm || atomic_read(&tsk->mm->mm_users) > 1 ||
282 tsk->mm != tsk->active_mm || tsk->mm->ioctx_list) {
283 mmput(mm);
284 task_unlock(tsk);
285 return -EINVAL;
286 }
287
288 /* ok, we are alone. No ptrace, no threads, etc. */
289 old_mm = tsk->mm;
279 tsk->mm = tsk->active_mm = mm; 290 tsk->mm = tsk->active_mm = mm;
280 preempt_disable(); 291 preempt_disable();
281 update_mm(mm, tsk); 292 update_mm(mm, tsk);
282 cpu_set(smp_processor_id(), mm->cpu_vm_mask); 293 cpu_set(smp_processor_id(), mm->cpu_vm_mask);
283 preempt_enable(); 294 preempt_enable();
284 rc = 0;
285unlock:
286 task_unlock(tsk); 295 task_unlock(tsk);
287 return rc; 296 mmput(old_mm);
297 return 0;
288} 298}
289EXPORT_SYMBOL_GPL(s390_enable_sie); 299EXPORT_SYMBOL_GPL(s390_enable_sie);
diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c
index beccacf907f3..e4868bfc672f 100644
--- a/arch/s390/mm/vmem.c
+++ b/arch/s390/mm/vmem.c
@@ -60,7 +60,7 @@ static inline pmd_t *vmem_pmd_alloc(void)
60 return pmd; 60 return pmd;
61} 61}
62 62
63static pte_t __init_refok *vmem_pte_alloc(void) 63static pte_t __ref *vmem_pte_alloc(void)
64{ 64{
65 pte_t *pte; 65 pte_t *pte;
66 66
@@ -221,6 +221,7 @@ int __meminit vmemmap_populate(struct page *start, unsigned long nr, int node)
221 *pt_dir = pte; 221 *pt_dir = pte;
222 } 222 }
223 } 223 }
224 memset(start, 0, nr * sizeof(struct page));
224 ret = 0; 225 ret = 0;
225out: 226out:
226 flush_tlb_kernel_range(start_addr, end_addr); 227 flush_tlb_kernel_range(start_addr, end_addr);
@@ -235,7 +236,7 @@ static int insert_memory_segment(struct memory_segment *seg)
235{ 236{
236 struct memory_segment *tmp; 237 struct memory_segment *tmp;
237 238
238 if (seg->start + seg->size >= VMEM_MAX_PHYS || 239 if (seg->start + seg->size > VMEM_MAX_PHYS ||
239 seg->start + seg->size < seg->start) 240 seg->start + seg->size < seg->start)
240 return -ERANGE; 241 return -ERANGE;
241 242
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index 8a68160079a9..9a854c8e5274 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -281,7 +281,6 @@ config CPU_SUBTYPE_SH7723
281 select CPU_SH4A 281 select CPU_SH4A
282 select CPU_SHX2 282 select CPU_SHX2
283 select ARCH_SPARSEMEM_ENABLE 283 select ARCH_SPARSEMEM_ENABLE
284 select SYS_SUPPORTS_NUMA
285 help 284 help
286 Select SH7723 if you have an SH-MobileR2 CPU. 285 Select SH7723 if you have an SH-MobileR2 CPU.
287 286
diff --git a/arch/sh/Kconfig.debug b/arch/sh/Kconfig.debug
index 0d2ef1e9a6fd..0f4549860226 100644
--- a/arch/sh/Kconfig.debug
+++ b/arch/sh/Kconfig.debug
@@ -81,7 +81,7 @@ config DEBUG_STACK_USAGE
81 81
82config 4KSTACKS 82config 4KSTACKS
83 bool "Use 4Kb for kernel stacks instead of 8Kb" 83 bool "Use 4Kb for kernel stacks instead of 8Kb"
84 depends on DEBUG_KERNEL 84 depends on DEBUG_KERNEL && (MMU || BROKEN)
85 help 85 help
86 If you say Y here the kernel will use a 4Kb stacksize for the 86 If you say Y here the kernel will use a 4Kb stacksize for the
87 kernel stack attached to each process/thread. This facilitates 87 kernel stack attached to each process/thread. This facilitates
diff --git a/arch/sh/Makefile b/arch/sh/Makefile
index 8050b03d51fc..fb7b1b15e392 100644
--- a/arch/sh/Makefile
+++ b/arch/sh/Makefile
@@ -41,6 +41,8 @@ cflags-$(CONFIG_CPU_SH5) := $(call cc-option,-m5-32media-nofpu,)
41cflags-$(CONFIG_CPU_BIG_ENDIAN) += -mb 41cflags-$(CONFIG_CPU_BIG_ENDIAN) += -mb
42cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -ml 42cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -ml
43 43
44cflags-y += $(call cc-option,-mno-fdpic)
45
44# 46#
45# -Wa,-isa= tuning implies -Wa,-dsp for the versions of binutils that 47# -Wa,-isa= tuning implies -Wa,-dsp for the versions of binutils that
46# support it, while -Wa,-dsp by itself limits the range of usable opcodes 48# support it, while -Wa,-dsp by itself limits the range of usable opcodes
diff --git a/arch/sh/boards/renesas/rts7751r2d/setup.c b/arch/sh/boards/renesas/rts7751r2d/setup.c
index 452d0d6459a4..2308e8753bcd 100644
--- a/arch/sh/boards/renesas/rts7751r2d/setup.c
+++ b/arch/sh/boards/renesas/rts7751r2d/setup.c
@@ -11,7 +11,6 @@
11#include <linux/init.h> 11#include <linux/init.h>
12#include <linux/platform_device.h> 12#include <linux/platform_device.h>
13#include <linux/ata_platform.h> 13#include <linux/ata_platform.h>
14#include <linux/serial_8250.h>
15#include <linux/sm501.h> 14#include <linux/sm501.h>
16#include <linux/sm501-regs.h> 15#include <linux/sm501-regs.h>
17#include <linux/pm.h> 16#include <linux/pm.h>
@@ -109,27 +108,6 @@ static struct platform_device heartbeat_device = {
109 .resource = heartbeat_resources, 108 .resource = heartbeat_resources,
110}; 109};
111 110
112static struct plat_serial8250_port uart_platform_data[] = {
113 {
114 .membase = (void __iomem *)0xb3e30000,
115 .mapbase = 0xb3e30000,
116 .iotype = UPIO_MEM,
117 .irq = IRQ_VOYAGER,
118 .flags = UPF_BOOT_AUTOCONF | UPF_SHARE_IRQ,
119 .regshift = 2,
120 .uartclk = (9600 * 16),
121 },
122 { 0 },
123};
124
125static struct platform_device uart_device = {
126 .name = "serial8250",
127 .id = PLAT8250_DEV_PLATFORM,
128 .dev = {
129 .platform_data = uart_platform_data,
130 },
131};
132
133static struct resource sm501_resources[] = { 111static struct resource sm501_resources[] = {
134 [0] = { 112 [0] = {
135 .start = 0x10000000, 113 .start = 0x10000000,
@@ -185,11 +163,7 @@ static struct sm501_platdata_fb sm501_fb_pdata = {
185}; 163};
186 164
187static struct sm501_initdata sm501_initdata = { 165static struct sm501_initdata sm501_initdata = {
188 .gpio_high = { 166 .devices = SM501_USE_USB_HOST | SM501_USE_UART0,
189 .set = 0x00001fe0,
190 .mask = 0x0,
191 },
192 .devices = SM501_USE_USB_HOST,
193}; 167};
194 168
195static struct sm501_platdata sm501_platform_data = { 169static struct sm501_platdata sm501_platform_data = {
@@ -208,7 +182,6 @@ static struct platform_device sm501_device = {
208}; 182};
209 183
210static struct platform_device *rts7751r2d_devices[] __initdata = { 184static struct platform_device *rts7751r2d_devices[] __initdata = {
211 &uart_device,
212 &sm501_device, 185 &sm501_device,
213 &heartbeat_device, 186 &heartbeat_device,
214 &spi_sh_sci_device, 187 &spi_sh_sci_device,
@@ -272,16 +245,6 @@ static void __init rts7751r2d_setup(char **cmdline_p)
272 245
273 sm501_reg = (void __iomem *)0xb3e00000 + SM501_DRAM_CONTROL; 246 sm501_reg = (void __iomem *)0xb3e00000 + SM501_DRAM_CONTROL;
274 writel(readl(sm501_reg) | 0x00f107c0, sm501_reg); 247 writel(readl(sm501_reg) | 0x00f107c0, sm501_reg);
275
276 /*
277 * Power Mode Gate - Enable UART0
278 */
279
280 sm501_reg = (void __iomem *)0xb3e00000 + SM501_POWER_MODE_0_GATE;
281 writel(readl(sm501_reg) | (1 << SM501_GATE_UART0), sm501_reg);
282
283 sm501_reg = (void __iomem *)0xb3e00000 + SM501_POWER_MODE_1_GATE;
284 writel(readl(sm501_reg) | (1 << SM501_GATE_UART0), sm501_reg);
285} 248}
286 249
287/* 250/*
diff --git a/arch/sh/configs/migor_defconfig b/arch/sh/configs/migor_defconfig
index ee5900817f8f..287408b2ace6 100644
--- a/arch/sh/configs/migor_defconfig
+++ b/arch/sh/configs/migor_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.24 3# Linux kernel version: 2.6.26-rc3
4# Wed Feb 6 21:52:20 2008 4# Thu May 22 14:30:07 2008
5# 5#
6CONFIG_SUPERH=y 6CONFIG_SUPERH=y
7CONFIG_SUPERH32=y 7CONFIG_SUPERH32=y
@@ -20,6 +20,7 @@ CONFIG_LOCKDEP_SUPPORT=y
20# CONFIG_ARCH_HAS_ILOG2_U32 is not set 20# CONFIG_ARCH_HAS_ILOG2_U32 is not set
21# CONFIG_ARCH_HAS_ILOG2_U64 is not set 21# CONFIG_ARCH_HAS_ILOG2_U64 is not set
22CONFIG_ARCH_NO_VIRT_TO_BUS=y 22CONFIG_ARCH_NO_VIRT_TO_BUS=y
23CONFIG_ARCH_SUPPORTS_AOUT=y
23CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 24CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
24 25
25# 26#
@@ -36,18 +37,16 @@ CONFIG_SYSVIPC_SYSCTL=y
36# CONFIG_POSIX_MQUEUE is not set 37# CONFIG_POSIX_MQUEUE is not set
37# CONFIG_BSD_PROCESS_ACCT is not set 38# CONFIG_BSD_PROCESS_ACCT is not set
38# CONFIG_TASKSTATS is not set 39# CONFIG_TASKSTATS is not set
39# CONFIG_USER_NS is not set
40# CONFIG_PID_NS is not set
41# CONFIG_AUDIT is not set 40# CONFIG_AUDIT is not set
42CONFIG_IKCONFIG=y 41CONFIG_IKCONFIG=y
43CONFIG_IKCONFIG_PROC=y 42CONFIG_IKCONFIG_PROC=y
44CONFIG_LOG_BUF_SHIFT=14 43CONFIG_LOG_BUF_SHIFT=14
45# CONFIG_CGROUPS is not set 44# CONFIG_CGROUPS is not set
46CONFIG_FAIR_GROUP_SCHED=y 45# CONFIG_GROUP_SCHED is not set
47CONFIG_FAIR_USER_SCHED=y
48# CONFIG_FAIR_CGROUP_SCHED is not set
49CONFIG_SYSFS_DEPRECATED=y 46CONFIG_SYSFS_DEPRECATED=y
47CONFIG_SYSFS_DEPRECATED_V2=y
50# CONFIG_RELAY is not set 48# CONFIG_RELAY is not set
49# CONFIG_NAMESPACES is not set
51CONFIG_BLK_DEV_INITRD=y 50CONFIG_BLK_DEV_INITRD=y
52CONFIG_INITRAMFS_SOURCE="" 51CONFIG_INITRAMFS_SOURCE=""
53# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 52# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
@@ -61,11 +60,13 @@ CONFIG_HOTPLUG=y
61CONFIG_PRINTK=y 60CONFIG_PRINTK=y
62CONFIG_BUG=y 61CONFIG_BUG=y
63CONFIG_ELF_CORE=y 62CONFIG_ELF_CORE=y
63CONFIG_COMPAT_BRK=y
64CONFIG_BASE_FULL=y 64CONFIG_BASE_FULL=y
65CONFIG_FUTEX=y 65CONFIG_FUTEX=y
66CONFIG_ANON_INODES=y 66CONFIG_ANON_INODES=y
67CONFIG_EPOLL=y 67CONFIG_EPOLL=y
68CONFIG_SIGNALFD=y 68CONFIG_SIGNALFD=y
69CONFIG_TIMERFD=y
69CONFIG_EVENTFD=y 70CONFIG_EVENTFD=y
70CONFIG_SHMEM=y 71CONFIG_SHMEM=y
71CONFIG_VM_EVENT_COUNTERS=y 72CONFIG_VM_EVENT_COUNTERS=y
@@ -77,11 +78,15 @@ CONFIG_PROFILING=y
77CONFIG_OPROFILE=y 78CONFIG_OPROFILE=y
78CONFIG_HAVE_OPROFILE=y 79CONFIG_HAVE_OPROFILE=y
79# CONFIG_HAVE_KPROBES is not set 80# CONFIG_HAVE_KPROBES is not set
81# CONFIG_HAVE_KRETPROBES is not set
82# CONFIG_HAVE_DMA_ATTRS is not set
83CONFIG_PROC_PAGE_MONITOR=y
80CONFIG_SLABINFO=y 84CONFIG_SLABINFO=y
81CONFIG_RT_MUTEXES=y 85CONFIG_RT_MUTEXES=y
82# CONFIG_TINY_SHMEM is not set 86# CONFIG_TINY_SHMEM is not set
83CONFIG_BASE_SMALL=0 87CONFIG_BASE_SMALL=0
84CONFIG_MODULES=y 88CONFIG_MODULES=y
89# CONFIG_MODULE_FORCE_LOAD is not set
85# CONFIG_MODULE_UNLOAD is not set 90# CONFIG_MODULE_UNLOAD is not set
86# CONFIG_MODVERSIONS is not set 91# CONFIG_MODVERSIONS is not set
87# CONFIG_MODULE_SRCVERSION_ALL is not set 92# CONFIG_MODULE_SRCVERSION_ALL is not set
@@ -105,7 +110,6 @@ CONFIG_DEFAULT_AS=y
105# CONFIG_DEFAULT_NOOP is not set 110# CONFIG_DEFAULT_NOOP is not set
106CONFIG_DEFAULT_IOSCHED="anticipatory" 111CONFIG_DEFAULT_IOSCHED="anticipatory"
107CONFIG_CLASSIC_RCU=y 112CONFIG_CLASSIC_RCU=y
108# CONFIG_PREEMPT_RCU is not set
109 113
110# 114#
111# System type 115# System type
@@ -118,6 +122,7 @@ CONFIG_CPU_SHX2=y
118# CONFIG_CPU_SUBTYPE_SH7203 is not set 122# CONFIG_CPU_SUBTYPE_SH7203 is not set
119# CONFIG_CPU_SUBTYPE_SH7206 is not set 123# CONFIG_CPU_SUBTYPE_SH7206 is not set
120# CONFIG_CPU_SUBTYPE_SH7263 is not set 124# CONFIG_CPU_SUBTYPE_SH7263 is not set
125# CONFIG_CPU_SUBTYPE_MXG is not set
121# CONFIG_CPU_SUBTYPE_SH7705 is not set 126# CONFIG_CPU_SUBTYPE_SH7705 is not set
122# CONFIG_CPU_SUBTYPE_SH7706 is not set 127# CONFIG_CPU_SUBTYPE_SH7706 is not set
123# CONFIG_CPU_SUBTYPE_SH7707 is not set 128# CONFIG_CPU_SUBTYPE_SH7707 is not set
@@ -135,6 +140,7 @@ CONFIG_CPU_SHX2=y
135# CONFIG_CPU_SUBTYPE_SH7751R is not set 140# CONFIG_CPU_SUBTYPE_SH7751R is not set
136# CONFIG_CPU_SUBTYPE_SH7760 is not set 141# CONFIG_CPU_SUBTYPE_SH7760 is not set
137# CONFIG_CPU_SUBTYPE_SH4_202 is not set 142# CONFIG_CPU_SUBTYPE_SH4_202 is not set
143# CONFIG_CPU_SUBTYPE_SH7723 is not set
138# CONFIG_CPU_SUBTYPE_SH7763 is not set 144# CONFIG_CPU_SUBTYPE_SH7763 is not set
139# CONFIG_CPU_SUBTYPE_SH7770 is not set 145# CONFIG_CPU_SUBTYPE_SH7770 is not set
140# CONFIG_CPU_SUBTYPE_SH7780 is not set 146# CONFIG_CPU_SUBTYPE_SH7780 is not set
@@ -142,6 +148,7 @@ CONFIG_CPU_SHX2=y
142# CONFIG_CPU_SUBTYPE_SHX3 is not set 148# CONFIG_CPU_SUBTYPE_SHX3 is not set
143# CONFIG_CPU_SUBTYPE_SH7343 is not set 149# CONFIG_CPU_SUBTYPE_SH7343 is not set
144CONFIG_CPU_SUBTYPE_SH7722=y 150CONFIG_CPU_SUBTYPE_SH7722=y
151# CONFIG_CPU_SUBTYPE_SH7366 is not set
145# CONFIG_CPU_SUBTYPE_SH5_101 is not set 152# CONFIG_CPU_SUBTYPE_SH5_101 is not set
146# CONFIG_CPU_SUBTYPE_SH5_103 is not set 153# CONFIG_CPU_SUBTYPE_SH5_103 is not set
147 154
@@ -255,7 +262,6 @@ CONFIG_HZ=250
255CONFIG_PREEMPT_NONE=y 262CONFIG_PREEMPT_NONE=y
256# CONFIG_PREEMPT_VOLUNTARY is not set 263# CONFIG_PREEMPT_VOLUNTARY is not set
257# CONFIG_PREEMPT is not set 264# CONFIG_PREEMPT is not set
258CONFIG_RCU_TRACE=y
259CONFIG_GUSA=y 265CONFIG_GUSA=y
260 266
261# 267#
@@ -323,8 +329,6 @@ CONFIG_TCP_CONG_CUBIC=y
323CONFIG_DEFAULT_TCP_CONG="cubic" 329CONFIG_DEFAULT_TCP_CONG="cubic"
324# CONFIG_TCP_MD5SIG is not set 330# CONFIG_TCP_MD5SIG is not set
325# CONFIG_IPV6 is not set 331# CONFIG_IPV6 is not set
326# CONFIG_INET6_XFRM_TUNNEL is not set
327# CONFIG_INET6_TUNNEL is not set
328# CONFIG_NETWORK_SECMARK is not set 332# CONFIG_NETWORK_SECMARK is not set
329# CONFIG_NETFILTER is not set 333# CONFIG_NETFILTER is not set
330# CONFIG_IP_DCCP is not set 334# CONFIG_IP_DCCP is not set
@@ -376,7 +380,90 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
376CONFIG_FW_LOADER=m 380CONFIG_FW_LOADER=m
377# CONFIG_SYS_HYPERVISOR is not set 381# CONFIG_SYS_HYPERVISOR is not set
378# CONFIG_CONNECTOR is not set 382# CONFIG_CONNECTOR is not set
379# CONFIG_MTD is not set 383CONFIG_MTD=y
384# CONFIG_MTD_DEBUG is not set
385CONFIG_MTD_CONCAT=y
386CONFIG_MTD_PARTITIONS=y
387# CONFIG_MTD_REDBOOT_PARTS is not set
388CONFIG_MTD_CMDLINE_PARTS=y
389# CONFIG_MTD_AR7_PARTS is not set
390
391#
392# User Modules And Translation Layers
393#
394CONFIG_MTD_CHAR=y
395CONFIG_MTD_BLKDEVS=y
396CONFIG_MTD_BLOCK=y
397# CONFIG_FTL is not set
398# CONFIG_NFTL is not set
399# CONFIG_INFTL is not set
400# CONFIG_RFD_FTL is not set
401# CONFIG_SSFDC is not set
402# CONFIG_MTD_OOPS is not set
403
404#
405# RAM/ROM/Flash chip drivers
406#
407CONFIG_MTD_CFI=y
408# CONFIG_MTD_JEDECPROBE is not set
409CONFIG_MTD_GEN_PROBE=y
410# CONFIG_MTD_CFI_ADV_OPTIONS is not set
411CONFIG_MTD_MAP_BANK_WIDTH_1=y
412CONFIG_MTD_MAP_BANK_WIDTH_2=y
413CONFIG_MTD_MAP_BANK_WIDTH_4=y
414# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
415# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
416# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
417CONFIG_MTD_CFI_I1=y
418CONFIG_MTD_CFI_I2=y
419# CONFIG_MTD_CFI_I4 is not set
420# CONFIG_MTD_CFI_I8 is not set
421# CONFIG_MTD_CFI_INTELEXT is not set
422CONFIG_MTD_CFI_AMDSTD=y
423# CONFIG_MTD_CFI_STAA is not set
424CONFIG_MTD_CFI_UTIL=y
425# CONFIG_MTD_RAM is not set
426# CONFIG_MTD_ROM is not set
427# CONFIG_MTD_ABSENT is not set
428
429#
430# Mapping drivers for chip access
431#
432# CONFIG_MTD_COMPLEX_MAPPINGS is not set
433CONFIG_MTD_PHYSMAP=y
434CONFIG_MTD_PHYSMAP_START=0xffffffff
435CONFIG_MTD_PHYSMAP_LEN=0
436CONFIG_MTD_PHYSMAP_BANKWIDTH=0
437# CONFIG_MTD_PLATRAM is not set
438
439#
440# Self-contained MTD device drivers
441#
442# CONFIG_MTD_SLRAM is not set
443# CONFIG_MTD_PHRAM is not set
444# CONFIG_MTD_MTDRAM is not set
445# CONFIG_MTD_BLOCK2MTD is not set
446
447#
448# Disk-On-Chip Device Drivers
449#
450# CONFIG_MTD_DOC2000 is not set
451# CONFIG_MTD_DOC2001 is not set
452# CONFIG_MTD_DOC2001PLUS is not set
453CONFIG_MTD_NAND=y
454# CONFIG_MTD_NAND_VERIFY_WRITE is not set
455# CONFIG_MTD_NAND_ECC_SMC is not set
456# CONFIG_MTD_NAND_MUSEUM_IDS is not set
457CONFIG_MTD_NAND_IDS=y
458# CONFIG_MTD_NAND_DISKONCHIP is not set
459# CONFIG_MTD_NAND_NANDSIM is not set
460CONFIG_MTD_NAND_PLATFORM=y
461# CONFIG_MTD_ONENAND is not set
462
463#
464# UBI - Unsorted block images
465#
466# CONFIG_MTD_UBI is not set
380# CONFIG_PARPORT is not set 467# CONFIG_PARPORT is not set
381CONFIG_BLK_DEV=y 468CONFIG_BLK_DEV=y
382# CONFIG_BLK_DEV_COW_COMMON is not set 469# CONFIG_BLK_DEV_COW_COMMON is not set
@@ -385,11 +472,13 @@ CONFIG_BLK_DEV=y
385CONFIG_BLK_DEV_RAM=y 472CONFIG_BLK_DEV_RAM=y
386CONFIG_BLK_DEV_RAM_COUNT=16 473CONFIG_BLK_DEV_RAM_COUNT=16
387CONFIG_BLK_DEV_RAM_SIZE=4096 474CONFIG_BLK_DEV_RAM_SIZE=4096
388CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 475# CONFIG_BLK_DEV_XIP is not set
389# CONFIG_CDROM_PKTCDVD is not set 476# CONFIG_CDROM_PKTCDVD is not set
390# CONFIG_ATA_OVER_ETH is not set 477# CONFIG_ATA_OVER_ETH is not set
391CONFIG_MISC_DEVICES=y 478CONFIG_MISC_DEVICES=y
392# CONFIG_EEPROM_93CX6 is not set 479# CONFIG_EEPROM_93CX6 is not set
480# CONFIG_ENCLOSURE_SERVICES is not set
481CONFIG_HAVE_IDE=y
393# CONFIG_IDE is not set 482# CONFIG_IDE is not set
394 483
395# 484#
@@ -461,6 +550,7 @@ CONFIG_SMC91X=y
461# 550#
462# CONFIG_WLAN_PRE80211 is not set 551# CONFIG_WLAN_PRE80211 is not set
463# CONFIG_WLAN_80211 is not set 552# CONFIG_WLAN_80211 is not set
553# CONFIG_IWLWIFI_LEDS is not set
464# CONFIG_WAN is not set 554# CONFIG_WAN is not set
465# CONFIG_PPP is not set 555# CONFIG_PPP is not set
466# CONFIG_SLIP is not set 556# CONFIG_SLIP is not set
@@ -482,13 +572,20 @@ CONFIG_INPUT=y
482# 572#
483# CONFIG_INPUT_MOUSEDEV is not set 573# CONFIG_INPUT_MOUSEDEV is not set
484# CONFIG_INPUT_JOYDEV is not set 574# CONFIG_INPUT_JOYDEV is not set
485# CONFIG_INPUT_EVDEV is not set 575CONFIG_INPUT_EVDEV=y
486# CONFIG_INPUT_EVBUG is not set 576# CONFIG_INPUT_EVBUG is not set
487 577
488# 578#
489# Input Device Drivers 579# Input Device Drivers
490# 580#
491# CONFIG_INPUT_KEYBOARD is not set 581CONFIG_INPUT_KEYBOARD=y
582# CONFIG_KEYBOARD_ATKBD is not set
583# CONFIG_KEYBOARD_SUNKBD is not set
584# CONFIG_KEYBOARD_LKKBD is not set
585# CONFIG_KEYBOARD_XTKBD is not set
586# CONFIG_KEYBOARD_NEWTON is not set
587# CONFIG_KEYBOARD_STOWAWAY is not set
588CONFIG_KEYBOARD_SH_KEYSC=y
492# CONFIG_INPUT_MOUSE is not set 589# CONFIG_INPUT_MOUSE is not set
493# CONFIG_INPUT_JOYSTICK is not set 590# CONFIG_INPUT_JOYSTICK is not set
494# CONFIG_INPUT_TABLET is not set 591# CONFIG_INPUT_TABLET is not set
@@ -508,6 +605,7 @@ CONFIG_VT=y
508CONFIG_VT_CONSOLE=y 605CONFIG_VT_CONSOLE=y
509CONFIG_HW_CONSOLE=y 606CONFIG_HW_CONSOLE=y
510CONFIG_VT_HW_CONSOLE_BINDING=y 607CONFIG_VT_HW_CONSOLE_BINDING=y
608CONFIG_DEVKMEM=y
511# CONFIG_SERIAL_NONSTANDARD is not set 609# CONFIG_SERIAL_NONSTANDARD is not set
512 610
513# 611#
@@ -531,16 +629,40 @@ CONFIG_HW_RANDOM=y
531# CONFIG_R3964 is not set 629# CONFIG_R3964 is not set
532# CONFIG_RAW_DRIVER is not set 630# CONFIG_RAW_DRIVER is not set
533# CONFIG_TCG_TPM is not set 631# CONFIG_TCG_TPM is not set
534# CONFIG_I2C is not set 632CONFIG_I2C=y
535 633CONFIG_I2C_BOARDINFO=y
536# 634# CONFIG_I2C_CHARDEV is not set
537# SPI support 635
538# 636#
637# I2C Hardware Bus support
638#
639# CONFIG_I2C_OCORES is not set
640# CONFIG_I2C_PARPORT_LIGHT is not set
641# CONFIG_I2C_SIMTEC is not set
642# CONFIG_I2C_TAOS_EVM is not set
643# CONFIG_I2C_STUB is not set
644# CONFIG_I2C_PCA_PLATFORM is not set
645CONFIG_I2C_SH_MOBILE=y
646
647#
648# Miscellaneous I2C Chip support
649#
650# CONFIG_DS1682 is not set
651# CONFIG_SENSORS_EEPROM is not set
652# CONFIG_SENSORS_PCF8574 is not set
653# CONFIG_PCF8575 is not set
654# CONFIG_SENSORS_PCF8591 is not set
655# CONFIG_SENSORS_MAX6875 is not set
656# CONFIG_SENSORS_TSL2550 is not set
657# CONFIG_I2C_DEBUG_CORE is not set
658# CONFIG_I2C_DEBUG_ALGO is not set
659# CONFIG_I2C_DEBUG_BUS is not set
660# CONFIG_I2C_DEBUG_CHIP is not set
539# CONFIG_SPI is not set 661# CONFIG_SPI is not set
540# CONFIG_SPI_MASTER is not set
541# CONFIG_W1 is not set 662# CONFIG_W1 is not set
542# CONFIG_POWER_SUPPLY is not set 663# CONFIG_POWER_SUPPLY is not set
543# CONFIG_HWMON is not set 664# CONFIG_HWMON is not set
665# CONFIG_THERMAL is not set
544# CONFIG_WATCHDOG is not set 666# CONFIG_WATCHDOG is not set
545 667
546# 668#
@@ -553,12 +675,22 @@ CONFIG_SSB_POSSIBLE=y
553# Multifunction device drivers 675# Multifunction device drivers
554# 676#
555# CONFIG_MFD_SM501 is not set 677# CONFIG_MFD_SM501 is not set
678# CONFIG_HTC_PASIC3 is not set
556 679
557# 680#
558# Multimedia devices 681# Multimedia devices
559# 682#
683
684#
685# Multimedia core support
686#
560# CONFIG_VIDEO_DEV is not set 687# CONFIG_VIDEO_DEV is not set
561# CONFIG_DVB_CORE is not set 688# CONFIG_DVB_CORE is not set
689# CONFIG_VIDEO_MEDIA is not set
690
691#
692# Multimedia drivers
693#
562# CONFIG_DAB is not set 694# CONFIG_DAB is not set
563 695
564# 696#
@@ -592,6 +724,8 @@ CONFIG_USB_ARCH_HAS_HCD=y
592# CONFIG_USB_ARCH_HAS_OHCI is not set 724# CONFIG_USB_ARCH_HAS_OHCI is not set
593# CONFIG_USB_ARCH_HAS_EHCI is not set 725# CONFIG_USB_ARCH_HAS_EHCI is not set
594# CONFIG_USB is not set 726# CONFIG_USB is not set
727# CONFIG_USB_OTG_WHITELIST is not set
728# CONFIG_USB_OTG_BLACKLIST_HUB is not set
595 729
596# 730#
597# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 731# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
@@ -608,6 +742,7 @@ CONFIG_USB_GADGET_SELECTED=y
608CONFIG_USB_GADGET_M66592=y 742CONFIG_USB_GADGET_M66592=y
609CONFIG_USB_M66592=y 743CONFIG_USB_M66592=y
610CONFIG_SUPERH_BUILT_IN_M66592=y 744CONFIG_SUPERH_BUILT_IN_M66592=y
745# CONFIG_USB_GADGET_PXA27X is not set
611# CONFIG_USB_GADGET_GOKU is not set 746# CONFIG_USB_GADGET_GOKU is not set
612# CONFIG_USB_GADGET_LH7A40X is not set 747# CONFIG_USB_GADGET_LH7A40X is not set
613# CONFIG_USB_GADGET_OMAP is not set 748# CONFIG_USB_GADGET_OMAP is not set
@@ -623,7 +758,9 @@ CONFIG_USB_G_SERIAL=y
623# CONFIG_USB_MIDI_GADGET is not set 758# CONFIG_USB_MIDI_GADGET is not set
624# CONFIG_USB_G_PRINTER is not set 759# CONFIG_USB_G_PRINTER is not set
625# CONFIG_MMC is not set 760# CONFIG_MMC is not set
761# CONFIG_MEMSTICK is not set
626# CONFIG_NEW_LEDS is not set 762# CONFIG_NEW_LEDS is not set
763# CONFIG_ACCESSIBILITY is not set
627CONFIG_RTC_LIB=y 764CONFIG_RTC_LIB=y
628CONFIG_RTC_CLASS=y 765CONFIG_RTC_CLASS=y
629CONFIG_RTC_HCTOSYS=y 766CONFIG_RTC_HCTOSYS=y
@@ -640,15 +777,31 @@ CONFIG_RTC_INTF_DEV=y
640# CONFIG_RTC_DRV_TEST is not set 777# CONFIG_RTC_DRV_TEST is not set
641 778
642# 779#
780# I2C RTC drivers
781#
782# CONFIG_RTC_DRV_DS1307 is not set
783# CONFIG_RTC_DRV_DS1374 is not set
784# CONFIG_RTC_DRV_DS1672 is not set
785# CONFIG_RTC_DRV_MAX6900 is not set
786CONFIG_RTC_DRV_RS5C372=y
787# CONFIG_RTC_DRV_ISL1208 is not set
788# CONFIG_RTC_DRV_X1205 is not set
789# CONFIG_RTC_DRV_PCF8563 is not set
790# CONFIG_RTC_DRV_PCF8583 is not set
791# CONFIG_RTC_DRV_M41T80 is not set
792# CONFIG_RTC_DRV_S35390A is not set
793
794#
643# SPI RTC drivers 795# SPI RTC drivers
644# 796#
645 797
646# 798#
647# Platform RTC drivers 799# Platform RTC drivers
648# 800#
801# CONFIG_RTC_DRV_DS1511 is not set
649# CONFIG_RTC_DRV_DS1553 is not set 802# CONFIG_RTC_DRV_DS1553 is not set
650# CONFIG_RTC_DRV_STK17TA8 is not set
651# CONFIG_RTC_DRV_DS1742 is not set 803# CONFIG_RTC_DRV_DS1742 is not set
804# CONFIG_RTC_DRV_STK17TA8 is not set
652# CONFIG_RTC_DRV_M48T86 is not set 805# CONFIG_RTC_DRV_M48T86 is not set
653# CONFIG_RTC_DRV_M48T59 is not set 806# CONFIG_RTC_DRV_M48T59 is not set
654# CONFIG_RTC_DRV_V3020 is not set 807# CONFIG_RTC_DRV_V3020 is not set
@@ -657,10 +810,6 @@ CONFIG_RTC_INTF_DEV=y
657# on-CPU RTC drivers 810# on-CPU RTC drivers
658# 811#
659CONFIG_RTC_DRV_SH=y 812CONFIG_RTC_DRV_SH=y
660
661#
662# Userspace I/O
663#
664# CONFIG_UIO is not set 813# CONFIG_UIO is not set
665 814
666# 815#
@@ -673,13 +822,10 @@ CONFIG_RTC_DRV_SH=y
673# CONFIG_JFS_FS is not set 822# CONFIG_JFS_FS is not set
674# CONFIG_FS_POSIX_ACL is not set 823# CONFIG_FS_POSIX_ACL is not set
675# CONFIG_XFS_FS is not set 824# CONFIG_XFS_FS is not set
676# CONFIG_GFS2_FS is not set
677# CONFIG_OCFS2_FS is not set 825# CONFIG_OCFS2_FS is not set
678# CONFIG_MINIX_FS is not set 826# CONFIG_DNOTIFY is not set
679# CONFIG_ROMFS_FS is not set
680# CONFIG_INOTIFY is not set 827# CONFIG_INOTIFY is not set
681# CONFIG_QUOTA is not set 828# CONFIG_QUOTA is not set
682# CONFIG_DNOTIFY is not set
683# CONFIG_AUTOFS_FS is not set 829# CONFIG_AUTOFS_FS is not set
684# CONFIG_AUTOFS4_FS is not set 830# CONFIG_AUTOFS4_FS is not set
685# CONFIG_FUSE_FS is not set 831# CONFIG_FUSE_FS is not set
@@ -720,10 +866,13 @@ CONFIG_TMPFS=y
720# CONFIG_BEFS_FS is not set 866# CONFIG_BEFS_FS is not set
721# CONFIG_BFS_FS is not set 867# CONFIG_BFS_FS is not set
722# CONFIG_EFS_FS is not set 868# CONFIG_EFS_FS is not set
869# CONFIG_JFFS2_FS is not set
723# CONFIG_CRAMFS is not set 870# CONFIG_CRAMFS is not set
724# CONFIG_VXFS_FS is not set 871# CONFIG_VXFS_FS is not set
872# CONFIG_MINIX_FS is not set
725# CONFIG_HPFS_FS is not set 873# CONFIG_HPFS_FS is not set
726# CONFIG_QNX4FS_FS is not set 874# CONFIG_QNX4FS_FS is not set
875# CONFIG_ROMFS_FS is not set
727# CONFIG_SYSV_FS is not set 876# CONFIG_SYSV_FS is not set
728# CONFIG_UFS_FS is not set 877# CONFIG_UFS_FS is not set
729# CONFIG_NETWORK_FILESYSTEMS is not set 878# CONFIG_NETWORK_FILESYSTEMS is not set
@@ -743,6 +892,7 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
743# CONFIG_PRINTK_TIME is not set 892# CONFIG_PRINTK_TIME is not set
744CONFIG_ENABLE_WARN_DEPRECATED=y 893CONFIG_ENABLE_WARN_DEPRECATED=y
745CONFIG_ENABLE_MUST_CHECK=y 894CONFIG_ENABLE_MUST_CHECK=y
895CONFIG_FRAME_WARN=1024
746# CONFIG_MAGIC_SYSRQ is not set 896# CONFIG_MAGIC_SYSRQ is not set
747# CONFIG_UNUSED_SYMBOLS is not set 897# CONFIG_UNUSED_SYMBOLS is not set
748CONFIG_DEBUG_FS=y 898CONFIG_DEBUG_FS=y
@@ -763,48 +913,77 @@ CONFIG_EARLY_PRINTK=y
763# CONFIG_SECURITY is not set 913# CONFIG_SECURITY is not set
764# CONFIG_SECURITY_FILE_CAPABILITIES is not set 914# CONFIG_SECURITY_FILE_CAPABILITIES is not set
765CONFIG_CRYPTO=y 915CONFIG_CRYPTO=y
766# CONFIG_CRYPTO_SEQIV is not set 916
917#
918# Crypto core or helper
919#
767# CONFIG_CRYPTO_MANAGER is not set 920# CONFIG_CRYPTO_MANAGER is not set
921# CONFIG_CRYPTO_GF128MUL is not set
922# CONFIG_CRYPTO_NULL is not set
923# CONFIG_CRYPTO_CRYPTD is not set
924# CONFIG_CRYPTO_AUTHENC is not set
925# CONFIG_CRYPTO_TEST is not set
926
927#
928# Authenticated Encryption with Associated Data
929#
930# CONFIG_CRYPTO_CCM is not set
931# CONFIG_CRYPTO_GCM is not set
932# CONFIG_CRYPTO_SEQIV is not set
933
934#
935# Block modes
936#
937# CONFIG_CRYPTO_CBC is not set
938# CONFIG_CRYPTO_CTR is not set
939# CONFIG_CRYPTO_CTS is not set
940# CONFIG_CRYPTO_ECB is not set
941# CONFIG_CRYPTO_LRW is not set
942# CONFIG_CRYPTO_PCBC is not set
943# CONFIG_CRYPTO_XTS is not set
944
945#
946# Hash modes
947#
768# CONFIG_CRYPTO_HMAC is not set 948# CONFIG_CRYPTO_HMAC is not set
769# CONFIG_CRYPTO_XCBC is not set 949# CONFIG_CRYPTO_XCBC is not set
770# CONFIG_CRYPTO_NULL is not set 950
951#
952# Digest
953#
954# CONFIG_CRYPTO_CRC32C is not set
771# CONFIG_CRYPTO_MD4 is not set 955# CONFIG_CRYPTO_MD4 is not set
772# CONFIG_CRYPTO_MD5 is not set 956# CONFIG_CRYPTO_MD5 is not set
957# CONFIG_CRYPTO_MICHAEL_MIC is not set
773# CONFIG_CRYPTO_SHA1 is not set 958# CONFIG_CRYPTO_SHA1 is not set
774# CONFIG_CRYPTO_SHA256 is not set 959# CONFIG_CRYPTO_SHA256 is not set
775# CONFIG_CRYPTO_SHA512 is not set 960# CONFIG_CRYPTO_SHA512 is not set
776# CONFIG_CRYPTO_WP512 is not set
777# CONFIG_CRYPTO_TGR192 is not set 961# CONFIG_CRYPTO_TGR192 is not set
778# CONFIG_CRYPTO_GF128MUL is not set 962# CONFIG_CRYPTO_WP512 is not set
779# CONFIG_CRYPTO_ECB is not set 963
780# CONFIG_CRYPTO_CBC is not set 964#
781# CONFIG_CRYPTO_PCBC is not set 965# Ciphers
782# CONFIG_CRYPTO_LRW is not set 966#
783# CONFIG_CRYPTO_XTS is not set
784# CONFIG_CRYPTO_CTR is not set
785# CONFIG_CRYPTO_GCM is not set
786# CONFIG_CRYPTO_CCM is not set
787# CONFIG_CRYPTO_CRYPTD is not set
788# CONFIG_CRYPTO_DES is not set
789# CONFIG_CRYPTO_FCRYPT is not set
790# CONFIG_CRYPTO_BLOWFISH is not set
791# CONFIG_CRYPTO_TWOFISH is not set
792# CONFIG_CRYPTO_SERPENT is not set
793# CONFIG_CRYPTO_AES is not set 967# CONFIG_CRYPTO_AES is not set
968# CONFIG_CRYPTO_ANUBIS is not set
969# CONFIG_CRYPTO_ARC4 is not set
970# CONFIG_CRYPTO_BLOWFISH is not set
971# CONFIG_CRYPTO_CAMELLIA is not set
794# CONFIG_CRYPTO_CAST5 is not set 972# CONFIG_CRYPTO_CAST5 is not set
795# CONFIG_CRYPTO_CAST6 is not set 973# CONFIG_CRYPTO_CAST6 is not set
796# CONFIG_CRYPTO_TEA is not set 974# CONFIG_CRYPTO_DES is not set
797# CONFIG_CRYPTO_ARC4 is not set 975# CONFIG_CRYPTO_FCRYPT is not set
798# CONFIG_CRYPTO_KHAZAD is not set 976# CONFIG_CRYPTO_KHAZAD is not set
799# CONFIG_CRYPTO_ANUBIS is not set
800# CONFIG_CRYPTO_SEED is not set
801# CONFIG_CRYPTO_SALSA20 is not set 977# CONFIG_CRYPTO_SALSA20 is not set
978# CONFIG_CRYPTO_SEED is not set
979# CONFIG_CRYPTO_SERPENT is not set
980# CONFIG_CRYPTO_TEA is not set
981# CONFIG_CRYPTO_TWOFISH is not set
982
983#
984# Compression
985#
802# CONFIG_CRYPTO_DEFLATE is not set 986# CONFIG_CRYPTO_DEFLATE is not set
803# CONFIG_CRYPTO_MICHAEL_MIC is not set
804# CONFIG_CRYPTO_CRC32C is not set
805# CONFIG_CRYPTO_CAMELLIA is not set
806# CONFIG_CRYPTO_TEST is not set
807# CONFIG_CRYPTO_AUTHENC is not set
808# CONFIG_CRYPTO_LZO is not set 987# CONFIG_CRYPTO_LZO is not set
809CONFIG_CRYPTO_HW=y 988CONFIG_CRYPTO_HW=y
810 989
@@ -812,6 +991,7 @@ CONFIG_CRYPTO_HW=y
812# Library routines 991# Library routines
813# 992#
814CONFIG_BITREVERSE=y 993CONFIG_BITREVERSE=y
994# CONFIG_GENERIC_FIND_FIRST_BIT is not set
815# CONFIG_CRC_CCITT is not set 995# CONFIG_CRC_CCITT is not set
816# CONFIG_CRC16 is not set 996# CONFIG_CRC16 is not set
817# CONFIG_CRC_ITU_T is not set 997# CONFIG_CRC_ITU_T is not set
diff --git a/arch/sh/configs/rsk7203_defconfig b/arch/sh/configs/rsk7203_defconfig
new file mode 100644
index 000000000000..a0ebd439cbd2
--- /dev/null
+++ b/arch/sh/configs/rsk7203_defconfig
@@ -0,0 +1,841 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.26-rc4
4# Tue Jun 3 13:02:42 2008
5#
6CONFIG_SUPERH=y
7CONFIG_SUPERH32=y
8CONFIG_RWSEM_GENERIC_SPINLOCK=y
9CONFIG_GENERIC_BUG=y
10CONFIG_GENERIC_FIND_NEXT_BIT=y
11CONFIG_GENERIC_HWEIGHT=y
12CONFIG_GENERIC_HARDIRQS=y
13CONFIG_GENERIC_IRQ_PROBE=y
14CONFIG_GENERIC_CALIBRATE_DELAY=y
15# CONFIG_GENERIC_TIME is not set
16# CONFIG_GENERIC_CLOCKEVENTS is not set
17CONFIG_STACKTRACE_SUPPORT=y
18CONFIG_LOCKDEP_SUPPORT=y
19# CONFIG_ARCH_HAS_ILOG2_U32 is not set
20# CONFIG_ARCH_HAS_ILOG2_U64 is not set
21CONFIG_ARCH_NO_VIRT_TO_BUS=y
22CONFIG_ARCH_SUPPORTS_AOUT=y
23CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
24
25#
26# General setup
27#
28CONFIG_EXPERIMENTAL=y
29CONFIG_BROKEN_ON_SMP=y
30CONFIG_INIT_ENV_ARG_LIMIT=32
31CONFIG_LOCALVERSION=""
32# CONFIG_LOCALVERSION_AUTO is not set
33CONFIG_SYSVIPC=y
34CONFIG_SYSVIPC_SYSCTL=y
35CONFIG_POSIX_MQUEUE=y
36# CONFIG_BSD_PROCESS_ACCT is not set
37# CONFIG_TASKSTATS is not set
38# CONFIG_AUDIT is not set
39# CONFIG_IKCONFIG is not set
40CONFIG_LOG_BUF_SHIFT=14
41# CONFIG_CGROUPS is not set
42CONFIG_GROUP_SCHED=y
43CONFIG_FAIR_GROUP_SCHED=y
44# CONFIG_RT_GROUP_SCHED is not set
45CONFIG_USER_SCHED=y
46# CONFIG_CGROUP_SCHED is not set
47CONFIG_SYSFS_DEPRECATED=y
48CONFIG_SYSFS_DEPRECATED_V2=y
49# CONFIG_RELAY is not set
50# CONFIG_NAMESPACES is not set
51CONFIG_BLK_DEV_INITRD=y
52CONFIG_INITRAMFS_SOURCE=""
53CONFIG_CC_OPTIMIZE_FOR_SIZE=y
54CONFIG_SYSCTL=y
55CONFIG_EMBEDDED=y
56CONFIG_UID16=y
57CONFIG_SYSCTL_SYSCALL=y
58CONFIG_SYSCTL_SYSCALL_CHECK=y
59CONFIG_KALLSYMS=y
60CONFIG_KALLSYMS_ALL=y
61# CONFIG_KALLSYMS_EXTRA_PASS is not set
62CONFIG_HOTPLUG=y
63CONFIG_PRINTK=y
64CONFIG_BUG=y
65CONFIG_ELF_CORE=y
66CONFIG_COMPAT_BRK=y
67CONFIG_BASE_FULL=y
68CONFIG_FUTEX=y
69CONFIG_ANON_INODES=y
70CONFIG_EPOLL=y
71CONFIG_SIGNALFD=y
72CONFIG_TIMERFD=y
73CONFIG_EVENTFD=y
74CONFIG_VM_EVENT_COUNTERS=y
75CONFIG_SLAB=y
76# CONFIG_SLUB is not set
77# CONFIG_SLOB is not set
78CONFIG_PROFILING=y
79# CONFIG_MARKERS is not set
80CONFIG_OPROFILE=y
81CONFIG_HAVE_OPROFILE=y
82# CONFIG_HAVE_KPROBES is not set
83# CONFIG_HAVE_KRETPROBES is not set
84# CONFIG_HAVE_DMA_ATTRS is not set
85CONFIG_SLABINFO=y
86CONFIG_RT_MUTEXES=y
87CONFIG_TINY_SHMEM=y
88CONFIG_BASE_SMALL=0
89# CONFIG_MODULES is not set
90CONFIG_BLOCK=y
91# CONFIG_LBD is not set
92# CONFIG_BLK_DEV_IO_TRACE is not set
93# CONFIG_LSF is not set
94# CONFIG_BLK_DEV_BSG is not set
95
96#
97# IO Schedulers
98#
99CONFIG_IOSCHED_NOOP=y
100# CONFIG_IOSCHED_AS is not set
101# CONFIG_IOSCHED_DEADLINE is not set
102# CONFIG_IOSCHED_CFQ is not set
103# CONFIG_DEFAULT_AS is not set
104# CONFIG_DEFAULT_DEADLINE is not set
105# CONFIG_DEFAULT_CFQ is not set
106CONFIG_DEFAULT_NOOP=y
107CONFIG_DEFAULT_IOSCHED="noop"
108CONFIG_CLASSIC_RCU=y
109
110#
111# System type
112#
113CONFIG_CPU_SH2=y
114CONFIG_CPU_SH2A=y
115# CONFIG_CPU_SUBTYPE_SH7619 is not set
116CONFIG_CPU_SUBTYPE_SH7203=y
117# CONFIG_CPU_SUBTYPE_SH7206 is not set
118# CONFIG_CPU_SUBTYPE_SH7263 is not set
119# CONFIG_CPU_SUBTYPE_MXG is not set
120# CONFIG_CPU_SUBTYPE_SH7705 is not set
121# CONFIG_CPU_SUBTYPE_SH7706 is not set
122# CONFIG_CPU_SUBTYPE_SH7707 is not set
123# CONFIG_CPU_SUBTYPE_SH7708 is not set
124# CONFIG_CPU_SUBTYPE_SH7709 is not set
125# CONFIG_CPU_SUBTYPE_SH7710 is not set
126# CONFIG_CPU_SUBTYPE_SH7712 is not set
127# CONFIG_CPU_SUBTYPE_SH7720 is not set
128# CONFIG_CPU_SUBTYPE_SH7721 is not set
129# CONFIG_CPU_SUBTYPE_SH7750 is not set
130# CONFIG_CPU_SUBTYPE_SH7091 is not set
131# CONFIG_CPU_SUBTYPE_SH7750R is not set
132# CONFIG_CPU_SUBTYPE_SH7750S is not set
133# CONFIG_CPU_SUBTYPE_SH7751 is not set
134# CONFIG_CPU_SUBTYPE_SH7751R is not set
135# CONFIG_CPU_SUBTYPE_SH7760 is not set
136# CONFIG_CPU_SUBTYPE_SH4_202 is not set
137# CONFIG_CPU_SUBTYPE_SH7723 is not set
138# CONFIG_CPU_SUBTYPE_SH7763 is not set
139# CONFIG_CPU_SUBTYPE_SH7770 is not set
140# CONFIG_CPU_SUBTYPE_SH7780 is not set
141# CONFIG_CPU_SUBTYPE_SH7785 is not set
142# CONFIG_CPU_SUBTYPE_SHX3 is not set
143# CONFIG_CPU_SUBTYPE_SH7343 is not set
144# CONFIG_CPU_SUBTYPE_SH7722 is not set
145# CONFIG_CPU_SUBTYPE_SH7366 is not set
146# CONFIG_CPU_SUBTYPE_SH5_101 is not set
147# CONFIG_CPU_SUBTYPE_SH5_103 is not set
148
149#
150# Memory management options
151#
152CONFIG_QUICKLIST=y
153CONFIG_PAGE_OFFSET=0x00000000
154CONFIG_MEMORY_START=0x0c000000
155CONFIG_MEMORY_SIZE=0x01000000
156CONFIG_29BIT=y
157CONFIG_ARCH_FLATMEM_ENABLE=y
158CONFIG_ARCH_SPARSEMEM_ENABLE=y
159CONFIG_ARCH_SPARSEMEM_DEFAULT=y
160CONFIG_MAX_ACTIVE_REGIONS=1
161CONFIG_ARCH_POPULATES_NODE_MAP=y
162CONFIG_ARCH_SELECT_MEMORY_MODEL=y
163CONFIG_PAGE_SIZE_4KB=y
164# CONFIG_PAGE_SIZE_8KB is not set
165# CONFIG_PAGE_SIZE_64KB is not set
166CONFIG_SELECT_MEMORY_MODEL=y
167CONFIG_FLATMEM_MANUAL=y
168# CONFIG_DISCONTIGMEM_MANUAL is not set
169# CONFIG_SPARSEMEM_MANUAL is not set
170CONFIG_FLATMEM=y
171CONFIG_FLAT_NODE_MEM_MAP=y
172CONFIG_SPARSEMEM_STATIC=y
173# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
174CONFIG_PAGEFLAGS_EXTENDED=y
175CONFIG_SPLIT_PTLOCK_CPUS=4
176# CONFIG_RESOURCES_64BIT is not set
177CONFIG_ZONE_DMA_FLAG=0
178CONFIG_NR_QUICK=2
179
180#
181# Cache configuration
182#
183# CONFIG_SH_DIRECT_MAPPED is not set
184CONFIG_CACHE_WRITEBACK=y
185# CONFIG_CACHE_WRITETHROUGH is not set
186# CONFIG_CACHE_OFF is not set
187
188#
189# Processor features
190#
191# CONFIG_CPU_LITTLE_ENDIAN is not set
192CONFIG_CPU_BIG_ENDIAN=y
193CONFIG_SH_FPU=y
194CONFIG_CPU_HAS_FPU=y
195
196#
197# Board support
198#
199
200#
201# Timer and clock configuration
202#
203CONFIG_SH_CMT=y
204# CONFIG_SH_MTU2 is not set
205CONFIG_SH_TIMER_IRQ=142
206CONFIG_SH_PCLK_FREQ=16670800
207CONFIG_SH_CLK_MD=0
208# CONFIG_TICK_ONESHOT is not set
209
210#
211# CPU Frequency scaling
212#
213CONFIG_CPU_FREQ=y
214CONFIG_CPU_FREQ_TABLE=y
215# CONFIG_CPU_FREQ_DEBUG is not set
216CONFIG_CPU_FREQ_STAT=y
217# CONFIG_CPU_FREQ_STAT_DETAILS is not set
218CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
219# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
220# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
221# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
222# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
223CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
224# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
225# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
226# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set
227# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
228CONFIG_SH_CPU_FREQ=y
229
230#
231# DMA support
232#
233
234#
235# Companion Chips
236#
237
238#
239# Additional SuperH Device Drivers
240#
241CONFIG_HEARTBEAT=y
242# CONFIG_PUSH_SWITCH is not set
243
244#
245# Kernel features
246#
247# CONFIG_HZ_100 is not set
248# CONFIG_HZ_250 is not set
249# CONFIG_HZ_300 is not set
250CONFIG_HZ_1000=y
251CONFIG_HZ=1000
252# CONFIG_SCHED_HRTICK is not set
253# CONFIG_KEXEC is not set
254# CONFIG_CRASH_DUMP is not set
255CONFIG_PREEMPT_NONE=y
256# CONFIG_PREEMPT_VOLUNTARY is not set
257# CONFIG_PREEMPT is not set
258CONFIG_GUSA=y
259
260#
261# Boot options
262#
263CONFIG_ZERO_PAGE_OFFSET=0x00001000
264CONFIG_BOOT_LINK_OFFSET=0x00800000
265CONFIG_CMDLINE_BOOL=y
266CONFIG_CMDLINE="console=ttySC0,115200 earlyprintk=serial ignore_loglevel"
267
268#
269# Bus options
270#
271# CONFIG_ARCH_SUPPORTS_MSI is not set
272# CONFIG_PCCARD is not set
273
274#
275# Executable file formats
276#
277CONFIG_BINFMT_FLAT=y
278CONFIG_BINFMT_ZFLAT=y
279CONFIG_BINFMT_SHARED_FLAT=y
280# CONFIG_BINFMT_MISC is not set
281
282#
283# Networking
284#
285CONFIG_NET=y
286
287#
288# Networking options
289#
290# CONFIG_PACKET is not set
291# CONFIG_UNIX is not set
292# CONFIG_NET_KEY is not set
293CONFIG_INET=y
294# CONFIG_IP_MULTICAST is not set
295# CONFIG_IP_ADVANCED_ROUTER is not set
296CONFIG_IP_FIB_HASH=y
297CONFIG_IP_PNP=y
298CONFIG_IP_PNP_DHCP=y
299# CONFIG_IP_PNP_BOOTP is not set
300# CONFIG_IP_PNP_RARP is not set
301# CONFIG_NET_IPIP is not set
302# CONFIG_NET_IPGRE is not set
303# CONFIG_ARPD is not set
304# CONFIG_SYN_COOKIES is not set
305# CONFIG_INET_AH is not set
306# CONFIG_INET_ESP is not set
307# CONFIG_INET_IPCOMP is not set
308# CONFIG_INET_XFRM_TUNNEL is not set
309# CONFIG_INET_TUNNEL is not set
310# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
311# CONFIG_INET_XFRM_MODE_TUNNEL is not set
312# CONFIG_INET_XFRM_MODE_BEET is not set
313# CONFIG_INET_LRO is not set
314# CONFIG_INET_DIAG is not set
315# CONFIG_TCP_CONG_ADVANCED is not set
316CONFIG_TCP_CONG_CUBIC=y
317CONFIG_DEFAULT_TCP_CONG="cubic"
318# CONFIG_TCP_MD5SIG is not set
319# CONFIG_IPV6 is not set
320# CONFIG_NETWORK_SECMARK is not set
321# CONFIG_NETFILTER is not set
322# CONFIG_IP_DCCP is not set
323# CONFIG_IP_SCTP is not set
324# CONFIG_TIPC is not set
325# CONFIG_ATM is not set
326# CONFIG_BRIDGE is not set
327# CONFIG_VLAN_8021Q is not set
328# CONFIG_DECNET is not set
329# CONFIG_LLC2 is not set
330# CONFIG_IPX is not set
331# CONFIG_ATALK is not set
332# CONFIG_X25 is not set
333# CONFIG_LAPB is not set
334# CONFIG_ECONET is not set
335# CONFIG_WAN_ROUTER is not set
336# CONFIG_NET_SCHED is not set
337
338#
339# Network testing
340#
341# CONFIG_NET_PKTGEN is not set
342# CONFIG_HAMRADIO is not set
343# CONFIG_CAN is not set
344# CONFIG_IRDA is not set
345# CONFIG_BT is not set
346# CONFIG_AF_RXRPC is not set
347
348#
349# Wireless
350#
351# CONFIG_CFG80211 is not set
352# CONFIG_WIRELESS_EXT is not set
353# CONFIG_MAC80211 is not set
354# CONFIG_IEEE80211 is not set
355# CONFIG_RFKILL is not set
356# CONFIG_NET_9P is not set
357
358#
359# Device Drivers
360#
361
362#
363# Generic Driver Options
364#
365CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
366# CONFIG_STANDALONE is not set
367# CONFIG_PREVENT_FIRMWARE_BUILD is not set
368# CONFIG_FW_LOADER is not set
369# CONFIG_DEBUG_DRIVER is not set
370# CONFIG_DEBUG_DEVRES is not set
371# CONFIG_SYS_HYPERVISOR is not set
372# CONFIG_CONNECTOR is not set
373CONFIG_MTD=y
374# CONFIG_MTD_DEBUG is not set
375CONFIG_MTD_CONCAT=y
376CONFIG_MTD_PARTITIONS=y
377CONFIG_MTD_REDBOOT_PARTS=y
378CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
379# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
380# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
381# CONFIG_MTD_CMDLINE_PARTS is not set
382# CONFIG_MTD_AR7_PARTS is not set
383
384#
385# User Modules And Translation Layers
386#
387CONFIG_MTD_CHAR=y
388CONFIG_MTD_BLKDEVS=y
389CONFIG_MTD_BLOCK=y
390# CONFIG_FTL is not set
391# CONFIG_NFTL is not set
392# CONFIG_INFTL is not set
393# CONFIG_RFD_FTL is not set
394# CONFIG_SSFDC is not set
395# CONFIG_MTD_OOPS is not set
396
397#
398# RAM/ROM/Flash chip drivers
399#
400CONFIG_MTD_CFI=y
401# CONFIG_MTD_JEDECPROBE is not set
402CONFIG_MTD_GEN_PROBE=y
403# CONFIG_MTD_CFI_ADV_OPTIONS is not set
404CONFIG_MTD_MAP_BANK_WIDTH_1=y
405CONFIG_MTD_MAP_BANK_WIDTH_2=y
406CONFIG_MTD_MAP_BANK_WIDTH_4=y
407# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
408# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
409# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
410CONFIG_MTD_CFI_I1=y
411CONFIG_MTD_CFI_I2=y
412# CONFIG_MTD_CFI_I4 is not set
413# CONFIG_MTD_CFI_I8 is not set
414# CONFIG_MTD_CFI_INTELEXT is not set
415CONFIG_MTD_CFI_AMDSTD=y
416# CONFIG_MTD_CFI_STAA is not set
417CONFIG_MTD_CFI_UTIL=y
418# CONFIG_MTD_RAM is not set
419# CONFIG_MTD_ROM is not set
420# CONFIG_MTD_ABSENT is not set
421
422#
423# Mapping drivers for chip access
424#
425# CONFIG_MTD_COMPLEX_MAPPINGS is not set
426CONFIG_MTD_PHYSMAP=y
427CONFIG_MTD_PHYSMAP_START=0x20000000
428CONFIG_MTD_PHYSMAP_LEN=0x01000000
429CONFIG_MTD_PHYSMAP_BANKWIDTH=4
430# CONFIG_MTD_UCLINUX is not set
431# CONFIG_MTD_PLATRAM is not set
432
433#
434# Self-contained MTD device drivers
435#
436# CONFIG_MTD_SLRAM is not set
437# CONFIG_MTD_PHRAM is not set
438# CONFIG_MTD_MTDRAM is not set
439# CONFIG_MTD_BLOCK2MTD is not set
440
441#
442# Disk-On-Chip Device Drivers
443#
444# CONFIG_MTD_DOC2000 is not set
445# CONFIG_MTD_DOC2001 is not set
446# CONFIG_MTD_DOC2001PLUS is not set
447# CONFIG_MTD_NAND is not set
448# CONFIG_MTD_ONENAND is not set
449
450#
451# UBI - Unsorted block images
452#
453# CONFIG_MTD_UBI is not set
454# CONFIG_PARPORT is not set
455CONFIG_BLK_DEV=y
456# CONFIG_BLK_DEV_COW_COMMON is not set
457# CONFIG_BLK_DEV_LOOP is not set
458# CONFIG_BLK_DEV_NBD is not set
459# CONFIG_BLK_DEV_RAM is not set
460# CONFIG_CDROM_PKTCDVD is not set
461# CONFIG_ATA_OVER_ETH is not set
462CONFIG_MISC_DEVICES=y
463# CONFIG_EEPROM_93CX6 is not set
464# CONFIG_ENCLOSURE_SERVICES is not set
465CONFIG_HAVE_IDE=y
466# CONFIG_IDE is not set
467
468#
469# SCSI device support
470#
471# CONFIG_RAID_ATTRS is not set
472# CONFIG_SCSI is not set
473# CONFIG_SCSI_DMA is not set
474# CONFIG_SCSI_NETLINK is not set
475# CONFIG_ATA is not set
476# CONFIG_MD is not set
477CONFIG_NETDEVICES=y
478# CONFIG_NETDEVICES_MULTIQUEUE is not set
479# CONFIG_DUMMY is not set
480# CONFIG_BONDING is not set
481# CONFIG_MACVLAN is not set
482# CONFIG_EQUALIZER is not set
483# CONFIG_TUN is not set
484# CONFIG_VETH is not set
485# CONFIG_PHYLIB is not set
486CONFIG_NET_ETHERNET=y
487CONFIG_MII=y
488# CONFIG_AX88796 is not set
489# CONFIG_STNIC is not set
490CONFIG_SMC91X=y
491# CONFIG_IBM_NEW_EMAC_ZMII is not set
492# CONFIG_IBM_NEW_EMAC_RGMII is not set
493# CONFIG_IBM_NEW_EMAC_TAH is not set
494# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
495# CONFIG_B44 is not set
496CONFIG_NETDEV_1000=y
497# CONFIG_E1000E_ENABLED is not set
498CONFIG_NETDEV_10000=y
499
500#
501# Wireless LAN
502#
503# CONFIG_WLAN_PRE80211 is not set
504# CONFIG_WLAN_80211 is not set
505# CONFIG_IWLWIFI_LEDS is not set
506# CONFIG_WAN is not set
507# CONFIG_PPP is not set
508# CONFIG_SLIP is not set
509# CONFIG_NETCONSOLE is not set
510# CONFIG_NETPOLL is not set
511# CONFIG_NET_POLL_CONTROLLER is not set
512# CONFIG_ISDN is not set
513# CONFIG_PHONE is not set
514
515#
516# Input device support
517#
518CONFIG_INPUT=y
519# CONFIG_INPUT_FF_MEMLESS is not set
520# CONFIG_INPUT_POLLDEV is not set
521
522#
523# Userland interfaces
524#
525# CONFIG_INPUT_MOUSEDEV is not set
526# CONFIG_INPUT_JOYDEV is not set
527# CONFIG_INPUT_EVDEV is not set
528# CONFIG_INPUT_EVBUG is not set
529
530#
531# Input Device Drivers
532#
533# CONFIG_INPUT_KEYBOARD is not set
534# CONFIG_INPUT_MOUSE is not set
535# CONFIG_INPUT_JOYSTICK is not set
536# CONFIG_INPUT_TABLET is not set
537# CONFIG_INPUT_TOUCHSCREEN is not set
538# CONFIG_INPUT_MISC is not set
539
540#
541# Hardware I/O ports
542#
543# CONFIG_SERIO is not set
544# CONFIG_GAMEPORT is not set
545
546#
547# Character devices
548#
549# CONFIG_VT is not set
550CONFIG_DEVKMEM=y
551# CONFIG_SERIAL_NONSTANDARD is not set
552
553#
554# Serial drivers
555#
556# CONFIG_SERIAL_8250 is not set
557
558#
559# Non-8250 serial port support
560#
561CONFIG_SERIAL_SH_SCI=y
562CONFIG_SERIAL_SH_SCI_NR_UARTS=4
563CONFIG_SERIAL_SH_SCI_CONSOLE=y
564CONFIG_SERIAL_CORE=y
565CONFIG_SERIAL_CORE_CONSOLE=y
566# CONFIG_UNIX98_PTYS is not set
567# CONFIG_LEGACY_PTYS is not set
568# CONFIG_IPMI_HANDLER is not set
569# CONFIG_HW_RANDOM is not set
570# CONFIG_R3964 is not set
571# CONFIG_RAW_DRIVER is not set
572# CONFIG_TCG_TPM is not set
573# CONFIG_I2C is not set
574# CONFIG_SPI is not set
575# CONFIG_W1 is not set
576# CONFIG_POWER_SUPPLY is not set
577# CONFIG_HWMON is not set
578CONFIG_THERMAL=y
579# CONFIG_WATCHDOG is not set
580
581#
582# Sonics Silicon Backplane
583#
584CONFIG_SSB_POSSIBLE=y
585# CONFIG_SSB is not set
586
587#
588# Multifunction device drivers
589#
590# CONFIG_MFD_SM501 is not set
591# CONFIG_HTC_PASIC3 is not set
592
593#
594# Multimedia devices
595#
596
597#
598# Multimedia core support
599#
600# CONFIG_VIDEO_DEV is not set
601# CONFIG_DVB_CORE is not set
602# CONFIG_VIDEO_MEDIA is not set
603
604#
605# Multimedia drivers
606#
607CONFIG_DAB=y
608
609#
610# Graphics support
611#
612# CONFIG_VGASTATE is not set
613CONFIG_VIDEO_OUTPUT_CONTROL=y
614# CONFIG_FB is not set
615# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
616
617#
618# Display device support
619#
620# CONFIG_DISPLAY_SUPPORT is not set
621
622#
623# Sound
624#
625# CONFIG_SOUND is not set
626CONFIG_HID_SUPPORT=y
627CONFIG_HID=y
628# CONFIG_HID_DEBUG is not set
629# CONFIG_HIDRAW is not set
630CONFIG_USB_SUPPORT=y
631CONFIG_USB_ARCH_HAS_HCD=y
632# CONFIG_USB_ARCH_HAS_OHCI is not set
633# CONFIG_USB_ARCH_HAS_EHCI is not set
634# CONFIG_USB is not set
635# CONFIG_USB_OTG_WHITELIST is not set
636# CONFIG_USB_OTG_BLACKLIST_HUB is not set
637
638#
639# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
640#
641# CONFIG_USB_GADGET is not set
642# CONFIG_MMC is not set
643# CONFIG_MEMSTICK is not set
644# CONFIG_NEW_LEDS is not set
645# CONFIG_ACCESSIBILITY is not set
646CONFIG_RTC_LIB=y
647CONFIG_RTC_CLASS=y
648CONFIG_RTC_HCTOSYS=y
649CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
650# CONFIG_RTC_DEBUG is not set
651
652#
653# RTC interfaces
654#
655CONFIG_RTC_INTF_SYSFS=y
656CONFIG_RTC_INTF_PROC=y
657CONFIG_RTC_INTF_DEV=y
658# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
659# CONFIG_RTC_DRV_TEST is not set
660
661#
662# SPI RTC drivers
663#
664
665#
666# Platform RTC drivers
667#
668# CONFIG_RTC_DRV_DS1511 is not set
669# CONFIG_RTC_DRV_DS1553 is not set
670# CONFIG_RTC_DRV_DS1742 is not set
671# CONFIG_RTC_DRV_STK17TA8 is not set
672# CONFIG_RTC_DRV_M48T86 is not set
673# CONFIG_RTC_DRV_M48T59 is not set
674# CONFIG_RTC_DRV_V3020 is not set
675
676#
677# on-CPU RTC drivers
678#
679CONFIG_RTC_DRV_SH=y
680# CONFIG_UIO is not set
681
682#
683# File systems
684#
685# CONFIG_EXT2_FS is not set
686# CONFIG_EXT3_FS is not set
687# CONFIG_EXT4DEV_FS is not set
688# CONFIG_REISERFS_FS is not set
689# CONFIG_JFS_FS is not set
690# CONFIG_FS_POSIX_ACL is not set
691# CONFIG_XFS_FS is not set
692# CONFIG_OCFS2_FS is not set
693# CONFIG_DNOTIFY is not set
694# CONFIG_INOTIFY is not set
695# CONFIG_QUOTA is not set
696# CONFIG_AUTOFS_FS is not set
697# CONFIG_AUTOFS4_FS is not set
698# CONFIG_FUSE_FS is not set
699
700#
701# CD-ROM/DVD Filesystems
702#
703# CONFIG_ISO9660_FS is not set
704# CONFIG_UDF_FS is not set
705
706#
707# DOS/FAT/NT Filesystems
708#
709# CONFIG_MSDOS_FS is not set
710# CONFIG_VFAT_FS is not set
711# CONFIG_NTFS_FS is not set
712
713#
714# Pseudo filesystems
715#
716CONFIG_PROC_FS=y
717CONFIG_PROC_SYSCTL=y
718CONFIG_SYSFS=y
719# CONFIG_TMPFS is not set
720# CONFIG_HUGETLB_PAGE is not set
721# CONFIG_CONFIGFS_FS is not set
722
723#
724# Miscellaneous filesystems
725#
726# CONFIG_ADFS_FS is not set
727# CONFIG_AFFS_FS is not set
728# CONFIG_HFS_FS is not set
729# CONFIG_HFSPLUS_FS is not set
730# CONFIG_BEFS_FS is not set
731# CONFIG_BFS_FS is not set
732# CONFIG_EFS_FS is not set
733# CONFIG_JFFS2_FS is not set
734# CONFIG_CRAMFS is not set
735# CONFIG_VXFS_FS is not set
736# CONFIG_MINIX_FS is not set
737# CONFIG_HPFS_FS is not set
738# CONFIG_QNX4FS_FS is not set
739CONFIG_ROMFS_FS=y
740# CONFIG_SYSV_FS is not set
741# CONFIG_UFS_FS is not set
742CONFIG_NETWORK_FILESYSTEMS=y
743CONFIG_NFS_FS=y
744# CONFIG_NFS_V3 is not set
745# CONFIG_NFS_V4 is not set
746# CONFIG_NFSD is not set
747CONFIG_ROOT_NFS=y
748CONFIG_LOCKD=y
749CONFIG_NFS_COMMON=y
750CONFIG_SUNRPC=y
751# CONFIG_SUNRPC_BIND34 is not set
752# CONFIG_RPCSEC_GSS_KRB5 is not set
753# CONFIG_RPCSEC_GSS_SPKM3 is not set
754# CONFIG_SMB_FS is not set
755# CONFIG_CIFS is not set
756# CONFIG_NCP_FS is not set
757# CONFIG_CODA_FS is not set
758# CONFIG_AFS_FS is not set
759
760#
761# Partition Types
762#
763# CONFIG_PARTITION_ADVANCED is not set
764CONFIG_MSDOS_PARTITION=y
765# CONFIG_NLS is not set
766# CONFIG_DLM is not set
767
768#
769# Kernel hacking
770#
771CONFIG_TRACE_IRQFLAGS_SUPPORT=y
772# CONFIG_PRINTK_TIME is not set
773CONFIG_ENABLE_WARN_DEPRECATED=y
774# CONFIG_ENABLE_MUST_CHECK is not set
775CONFIG_FRAME_WARN=1024
776CONFIG_MAGIC_SYSRQ=y
777# CONFIG_UNUSED_SYMBOLS is not set
778# CONFIG_DEBUG_FS is not set
779# CONFIG_HEADERS_CHECK is not set
780CONFIG_DEBUG_KERNEL=y
781CONFIG_DEBUG_SHIRQ=y
782CONFIG_DETECT_SOFTLOCKUP=y
783CONFIG_SCHED_DEBUG=y
784# CONFIG_SCHEDSTATS is not set
785# CONFIG_TIMER_STATS is not set
786# CONFIG_DEBUG_OBJECTS is not set
787# CONFIG_DEBUG_SLAB is not set
788# CONFIG_DEBUG_RT_MUTEXES is not set
789# CONFIG_RT_MUTEX_TESTER is not set
790# CONFIG_DEBUG_SPINLOCK is not set
791CONFIG_DEBUG_MUTEXES=y
792# CONFIG_DEBUG_LOCK_ALLOC is not set
793# CONFIG_PROVE_LOCKING is not set
794# CONFIG_LOCK_STAT is not set
795CONFIG_DEBUG_SPINLOCK_SLEEP=y
796# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
797# CONFIG_DEBUG_KOBJECT is not set
798CONFIG_DEBUG_BUGVERBOSE=y
799CONFIG_DEBUG_INFO=y
800# CONFIG_DEBUG_VM is not set
801# CONFIG_DEBUG_WRITECOUNT is not set
802# CONFIG_DEBUG_LIST is not set
803# CONFIG_DEBUG_SG is not set
804CONFIG_FRAME_POINTER=y
805# CONFIG_BOOT_PRINTK_DELAY is not set
806# CONFIG_BACKTRACE_SELF_TEST is not set
807# CONFIG_FAULT_INJECTION is not set
808# CONFIG_SAMPLES is not set
809# CONFIG_SH_STANDARD_BIOS is not set
810CONFIG_EARLY_SCIF_CONSOLE=y
811CONFIG_EARLY_SCIF_CONSOLE_PORT=0xfffe8000
812CONFIG_EARLY_PRINTK=y
813CONFIG_DEBUG_BOOTMEM=y
814CONFIG_DEBUG_STACKOVERFLOW=y
815CONFIG_DEBUG_STACK_USAGE=y
816# CONFIG_IRQSTACKS is not set
817
818#
819# Security options
820#
821# CONFIG_KEYS is not set
822# CONFIG_SECURITY is not set
823# CONFIG_SECURITY_FILE_CAPABILITIES is not set
824# CONFIG_CRYPTO is not set
825
826#
827# Library routines
828#
829CONFIG_BITREVERSE=y
830# CONFIG_GENERIC_FIND_FIRST_BIT is not set
831# CONFIG_CRC_CCITT is not set
832# CONFIG_CRC16 is not set
833# CONFIG_CRC_ITU_T is not set
834CONFIG_CRC32=y
835# CONFIG_CRC7 is not set
836# CONFIG_LIBCRC32C is not set
837CONFIG_ZLIB_INFLATE=y
838CONFIG_PLIST=y
839CONFIG_HAS_IOMEM=y
840CONFIG_HAS_IOPORT=y
841CONFIG_HAS_DMA=y
diff --git a/arch/sh/configs/se7206_defconfig b/arch/sh/configs/se7206_defconfig
index 0d0cda908270..6b34baa26eae 100644
--- a/arch/sh/configs/se7206_defconfig
+++ b/arch/sh/configs/se7206_defconfig
@@ -1,9 +1,10 @@
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-rc4 3# Linux kernel version: 2.6.26-rc4
4# Thu Sep 13 16:40:16 2007 4# Tue Jun 3 20:27:08 2008
5# 5#
6CONFIG_SUPERH=y 6CONFIG_SUPERH=y
7CONFIG_SUPERH32=y
7CONFIG_RWSEM_GENERIC_SPINLOCK=y 8CONFIG_RWSEM_GENERIC_SPINLOCK=y
8CONFIG_GENERIC_BUG=y 9CONFIG_GENERIC_BUG=y
9CONFIG_GENERIC_FIND_NEXT_BIT=y 10CONFIG_GENERIC_FIND_NEXT_BIT=y
@@ -18,6 +19,7 @@ CONFIG_LOCKDEP_SUPPORT=y
18# CONFIG_ARCH_HAS_ILOG2_U32 is not set 19# CONFIG_ARCH_HAS_ILOG2_U32 is not set
19# CONFIG_ARCH_HAS_ILOG2_U64 is not set 20# CONFIG_ARCH_HAS_ILOG2_U64 is not set
20CONFIG_ARCH_NO_VIRT_TO_BUS=y 21CONFIG_ARCH_NO_VIRT_TO_BUS=y
22CONFIG_ARCH_SUPPORTS_AOUT=y
21CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 23CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
22 24
23# 25#
@@ -25,47 +27,82 @@ CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
25# 27#
26CONFIG_EXPERIMENTAL=y 28CONFIG_EXPERIMENTAL=y
27CONFIG_BROKEN_ON_SMP=y 29CONFIG_BROKEN_ON_SMP=y
30CONFIG_LOCK_KERNEL=y
28CONFIG_INIT_ENV_ARG_LIMIT=32 31CONFIG_INIT_ENV_ARG_LIMIT=32
29CONFIG_LOCALVERSION="" 32CONFIG_LOCALVERSION=""
30# CONFIG_LOCALVERSION_AUTO is not set 33CONFIG_LOCALVERSION_AUTO=y
31# CONFIG_SYSVIPC is not set 34CONFIG_SYSVIPC=y
32# CONFIG_POSIX_MQUEUE is not set 35CONFIG_SYSVIPC_SYSCTL=y
33# CONFIG_BSD_PROCESS_ACCT is not set 36CONFIG_POSIX_MQUEUE=y
37CONFIG_BSD_PROCESS_ACCT=y
38# CONFIG_BSD_PROCESS_ACCT_V3 is not set
34# CONFIG_TASKSTATS is not set 39# CONFIG_TASKSTATS is not set
35# CONFIG_USER_NS is not set 40CONFIG_AUDIT=y
36# CONFIG_AUDIT is not set 41CONFIG_AUDITSYSCALL=y
37# CONFIG_IKCONFIG is not set 42# CONFIG_IKCONFIG is not set
38CONFIG_LOG_BUF_SHIFT=14 43CONFIG_LOG_BUF_SHIFT=14
39CONFIG_SYSFS_DEPRECATED=y 44CONFIG_CGROUPS=y
40# CONFIG_RELAY is not set 45CONFIG_CGROUP_DEBUG=y
41# CONFIG_BLK_DEV_INITRD is not set 46CONFIG_CGROUP_NS=y
47CONFIG_CGROUP_DEVICE=y
48# CONFIG_GROUP_SCHED is not set
49CONFIG_CGROUP_CPUACCT=y
50CONFIG_RESOURCE_COUNTERS=y
51CONFIG_MM_OWNER=y
52CONFIG_CGROUP_MEM_RES_CTLR=y
53# CONFIG_SYSFS_DEPRECATED_V2 is not set
54CONFIG_RELAY=y
55CONFIG_NAMESPACES=y
56CONFIG_UTS_NS=y
57CONFIG_IPC_NS=y
58CONFIG_USER_NS=y
59CONFIG_PID_NS=y
60CONFIG_BLK_DEV_INITRD=y
61CONFIG_INITRAMFS_SOURCE=""
42CONFIG_CC_OPTIMIZE_FOR_SIZE=y 62CONFIG_CC_OPTIMIZE_FOR_SIZE=y
43CONFIG_SYSCTL=y 63CONFIG_SYSCTL=y
44CONFIG_EMBEDDED=y 64CONFIG_EMBEDDED=y
45# CONFIG_UID16 is not set 65# CONFIG_UID16 is not set
46# CONFIG_SYSCTL_SYSCALL is not set 66# CONFIG_SYSCTL_SYSCALL is not set
47# CONFIG_KALLSYMS is not set 67CONFIG_KALLSYMS=y
48# CONFIG_HOTPLUG is not set 68CONFIG_KALLSYMS_ALL=y
69# CONFIG_KALLSYMS_EXTRA_PASS is not set
70CONFIG_HOTPLUG=y
49CONFIG_PRINTK=y 71CONFIG_PRINTK=y
50CONFIG_BUG=y 72CONFIG_BUG=y
51# CONFIG_ELF_CORE is not set 73# CONFIG_ELF_CORE is not set
52# CONFIG_BASE_FULL is not set 74# CONFIG_COMPAT_BRK is not set
53# CONFIG_FUTEX is not set 75CONFIG_BASE_FULL=y
76CONFIG_FUTEX=y
54CONFIG_ANON_INODES=y 77CONFIG_ANON_INODES=y
55# CONFIG_EPOLL is not set 78CONFIG_EPOLL=y
56CONFIG_SIGNALFD=y 79CONFIG_SIGNALFD=y
57CONFIG_TIMERFD=y 80CONFIG_TIMERFD=y
58CONFIG_EVENTFD=y 81CONFIG_EVENTFD=y
59# CONFIG_VM_EVENT_COUNTERS is not set 82CONFIG_VM_EVENT_COUNTERS=y
60CONFIG_SLUB_DEBUG=y
61# CONFIG_SLAB is not set 83# CONFIG_SLAB is not set
62CONFIG_SLUB=y 84# CONFIG_SLUB is not set
63# CONFIG_SLOB is not set 85CONFIG_SLOB=y
86CONFIG_PROFILING=y
87# CONFIG_MARKERS is not set
88CONFIG_OPROFILE=y
89CONFIG_HAVE_OPROFILE=y
90# CONFIG_HAVE_KPROBES is not set
91# CONFIG_HAVE_KRETPROBES is not set
92# CONFIG_HAVE_DMA_ATTRS is not set
93CONFIG_RT_MUTEXES=y
64CONFIG_TINY_SHMEM=y 94CONFIG_TINY_SHMEM=y
65CONFIG_BASE_SMALL=1 95CONFIG_BASE_SMALL=0
66# CONFIG_MODULES is not set 96CONFIG_MODULES=y
97# CONFIG_MODULE_FORCE_LOAD is not set
98CONFIG_MODULE_UNLOAD=y
99# CONFIG_MODULE_FORCE_UNLOAD is not set
100# CONFIG_MODVERSIONS is not set
101# CONFIG_MODULE_SRCVERSION_ALL is not set
102# CONFIG_KMOD is not set
67CONFIG_BLOCK=y 103CONFIG_BLOCK=y
68# CONFIG_LBD is not set 104# CONFIG_LBD is not set
105# CONFIG_BLK_DEV_IO_TRACE is not set
69# CONFIG_LSF is not set 106# CONFIG_LSF is not set
70# CONFIG_BLK_DEV_BSG is not set 107# CONFIG_BLK_DEV_BSG is not set
71 108
@@ -81,6 +118,7 @@ CONFIG_IOSCHED_NOOP=y
81# CONFIG_DEFAULT_CFQ is not set 118# CONFIG_DEFAULT_CFQ is not set
82CONFIG_DEFAULT_NOOP=y 119CONFIG_DEFAULT_NOOP=y
83CONFIG_DEFAULT_IOSCHED="noop" 120CONFIG_DEFAULT_IOSCHED="noop"
121# CONFIG_CLASSIC_RCU is not set
84 122
85# 123#
86# System type 124# System type
@@ -88,7 +126,10 @@ CONFIG_DEFAULT_IOSCHED="noop"
88CONFIG_CPU_SH2=y 126CONFIG_CPU_SH2=y
89CONFIG_CPU_SH2A=y 127CONFIG_CPU_SH2A=y
90# CONFIG_CPU_SUBTYPE_SH7619 is not set 128# CONFIG_CPU_SUBTYPE_SH7619 is not set
129# CONFIG_CPU_SUBTYPE_SH7203 is not set
91CONFIG_CPU_SUBTYPE_SH7206=y 130CONFIG_CPU_SUBTYPE_SH7206=y
131# CONFIG_CPU_SUBTYPE_SH7263 is not set
132# CONFIG_CPU_SUBTYPE_MXG is not set
92# CONFIG_CPU_SUBTYPE_SH7705 is not set 133# CONFIG_CPU_SUBTYPE_SH7705 is not set
93# CONFIG_CPU_SUBTYPE_SH7706 is not set 134# CONFIG_CPU_SUBTYPE_SH7706 is not set
94# CONFIG_CPU_SUBTYPE_SH7707 is not set 135# CONFIG_CPU_SUBTYPE_SH7707 is not set
@@ -97,6 +138,7 @@ CONFIG_CPU_SUBTYPE_SH7206=y
97# CONFIG_CPU_SUBTYPE_SH7710 is not set 138# CONFIG_CPU_SUBTYPE_SH7710 is not set
98# CONFIG_CPU_SUBTYPE_SH7712 is not set 139# CONFIG_CPU_SUBTYPE_SH7712 is not set
99# CONFIG_CPU_SUBTYPE_SH7720 is not set 140# CONFIG_CPU_SUBTYPE_SH7720 is not set
141# CONFIG_CPU_SUBTYPE_SH7721 is not set
100# CONFIG_CPU_SUBTYPE_SH7750 is not set 142# CONFIG_CPU_SUBTYPE_SH7750 is not set
101# CONFIG_CPU_SUBTYPE_SH7091 is not set 143# CONFIG_CPU_SUBTYPE_SH7091 is not set
102# CONFIG_CPU_SUBTYPE_SH7750R is not set 144# CONFIG_CPU_SUBTYPE_SH7750R is not set
@@ -105,14 +147,17 @@ CONFIG_CPU_SUBTYPE_SH7206=y
105# CONFIG_CPU_SUBTYPE_SH7751R is not set 147# CONFIG_CPU_SUBTYPE_SH7751R is not set
106# CONFIG_CPU_SUBTYPE_SH7760 is not set 148# CONFIG_CPU_SUBTYPE_SH7760 is not set
107# CONFIG_CPU_SUBTYPE_SH4_202 is not set 149# CONFIG_CPU_SUBTYPE_SH4_202 is not set
108# CONFIG_CPU_SUBTYPE_ST40STB1 is not set 150# CONFIG_CPU_SUBTYPE_SH7723 is not set
109# CONFIG_CPU_SUBTYPE_ST40GX1 is not set 151# CONFIG_CPU_SUBTYPE_SH7763 is not set
110# CONFIG_CPU_SUBTYPE_SH7770 is not set 152# CONFIG_CPU_SUBTYPE_SH7770 is not set
111# CONFIG_CPU_SUBTYPE_SH7780 is not set 153# CONFIG_CPU_SUBTYPE_SH7780 is not set
112# CONFIG_CPU_SUBTYPE_SH7785 is not set 154# CONFIG_CPU_SUBTYPE_SH7785 is not set
113# CONFIG_CPU_SUBTYPE_SHX3 is not set 155# CONFIG_CPU_SUBTYPE_SHX3 is not set
114# CONFIG_CPU_SUBTYPE_SH7343 is not set 156# CONFIG_CPU_SUBTYPE_SH7343 is not set
115# CONFIG_CPU_SUBTYPE_SH7722 is not set 157# CONFIG_CPU_SUBTYPE_SH7722 is not set
158# CONFIG_CPU_SUBTYPE_SH7366 is not set
159# CONFIG_CPU_SUBTYPE_SH5_101 is not set
160# CONFIG_CPU_SUBTYPE_SH5_103 is not set
116 161
117# 162#
118# Memory management options 163# Memory management options
@@ -121,23 +166,25 @@ CONFIG_QUICKLIST=y
121CONFIG_PAGE_OFFSET=0x00000000 166CONFIG_PAGE_OFFSET=0x00000000
122CONFIG_MEMORY_START=0x0c000000 167CONFIG_MEMORY_START=0x0c000000
123CONFIG_MEMORY_SIZE=0x04000000 168CONFIG_MEMORY_SIZE=0x04000000
169CONFIG_29BIT=y
124CONFIG_ARCH_FLATMEM_ENABLE=y 170CONFIG_ARCH_FLATMEM_ENABLE=y
125CONFIG_ARCH_SPARSEMEM_ENABLE=y 171CONFIG_ARCH_SPARSEMEM_ENABLE=y
126CONFIG_ARCH_SPARSEMEM_DEFAULT=y 172CONFIG_ARCH_SPARSEMEM_DEFAULT=y
127CONFIG_MAX_ACTIVE_REGIONS=1 173CONFIG_MAX_ACTIVE_REGIONS=1
128CONFIG_ARCH_POPULATES_NODE_MAP=y 174CONFIG_ARCH_POPULATES_NODE_MAP=y
129CONFIG_ARCH_SELECT_MEMORY_MODEL=y 175CONFIG_ARCH_SELECT_MEMORY_MODEL=y
130CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
131CONFIG_PAGE_SIZE_4KB=y 176CONFIG_PAGE_SIZE_4KB=y
132# CONFIG_PAGE_SIZE_8KB is not set 177# CONFIG_PAGE_SIZE_8KB is not set
133# CONFIG_PAGE_SIZE_64KB is not set 178# CONFIG_PAGE_SIZE_64KB is not set
134CONFIG_SELECT_MEMORY_MODEL=y 179CONFIG_SELECT_MEMORY_MODEL=y
135# CONFIG_FLATMEM_MANUAL is not set 180CONFIG_FLATMEM_MANUAL=y
136# CONFIG_DISCONTIGMEM_MANUAL is not set 181# CONFIG_DISCONTIGMEM_MANUAL is not set
137CONFIG_SPARSEMEM_MANUAL=y 182# CONFIG_SPARSEMEM_MANUAL is not set
138CONFIG_SPARSEMEM=y 183CONFIG_FLATMEM=y
139CONFIG_HAVE_MEMORY_PRESENT=y 184CONFIG_FLAT_NODE_MEM_MAP=y
140CONFIG_SPARSEMEM_STATIC=y 185CONFIG_SPARSEMEM_STATIC=y
186# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
187CONFIG_PAGEFLAGS_EXTENDED=y
141CONFIG_SPLIT_PTLOCK_CPUS=4 188CONFIG_SPLIT_PTLOCK_CPUS=4
142# CONFIG_RESOURCES_64BIT is not set 189# CONFIG_RESOURCES_64BIT is not set
143CONFIG_ZONE_DMA_FLAG=0 190CONFIG_ZONE_DMA_FLAG=0
@@ -183,13 +230,16 @@ CONFIG_CPU_FREQ_TABLE=y
183CONFIG_CPU_FREQ_STAT=y 230CONFIG_CPU_FREQ_STAT=y
184# CONFIG_CPU_FREQ_STAT_DETAILS is not set 231# CONFIG_CPU_FREQ_STAT_DETAILS is not set
185CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 232CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
233# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
186# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 234# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
235# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
236# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
187CONFIG_CPU_FREQ_GOV_PERFORMANCE=y 237CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
188# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set 238# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
189# CONFIG_CPU_FREQ_GOV_USERSPACE is not set 239# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
190# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set 240# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set
191# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set 241# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
192# CONFIG_SH_CPU_FREQ is not set 242CONFIG_SH_CPU_FREQ=y
193 243
194# 244#
195# DMA support 245# DMA support
@@ -213,11 +263,15 @@ CONFIG_HEARTBEAT=y
213# CONFIG_HZ_300 is not set 263# CONFIG_HZ_300 is not set
214CONFIG_HZ_1000=y 264CONFIG_HZ_1000=y
215CONFIG_HZ=1000 265CONFIG_HZ=1000
216# CONFIG_KEXEC is not set 266# CONFIG_SCHED_HRTICK is not set
267CONFIG_KEXEC=y
217# CONFIG_CRASH_DUMP is not set 268# CONFIG_CRASH_DUMP is not set
218CONFIG_PREEMPT_NONE=y 269# CONFIG_PREEMPT_NONE is not set
219# CONFIG_PREEMPT_VOLUNTARY is not set 270# CONFIG_PREEMPT_VOLUNTARY is not set
220# CONFIG_PREEMPT is not set 271CONFIG_PREEMPT=y
272CONFIG_PREEMPT_RCU=y
273CONFIG_RCU_TRACE=y
274CONFIG_GUSA=y
221 275
222# 276#
223# Boot options 277# Boot options
@@ -225,25 +279,25 @@ CONFIG_PREEMPT_NONE=y
225CONFIG_ZERO_PAGE_OFFSET=0x00001000 279CONFIG_ZERO_PAGE_OFFSET=0x00001000
226CONFIG_BOOT_LINK_OFFSET=0x00800000 280CONFIG_BOOT_LINK_OFFSET=0x00800000
227CONFIG_CMDLINE_BOOL=y 281CONFIG_CMDLINE_BOOL=y
228CONFIG_CMDLINE="console=ttySC3,115200 earlyprintk=serial ignore_loglevel" 282CONFIG_CMDLINE="console=ttySC3,115200 ignore_loglevel earlyprintk=serial"
229 283
230# 284#
231# Bus options 285# Bus options
232# 286#
233# CONFIG_CF_ENABLER is not set 287CONFIG_CF_ENABLER=y
288# CONFIG_CF_AREA5 is not set
289CONFIG_CF_AREA6=y
290CONFIG_CF_BASE_ADDR=0xb8000000
234# CONFIG_ARCH_SUPPORTS_MSI is not set 291# CONFIG_ARCH_SUPPORTS_MSI is not set
235 292# CONFIG_PCCARD is not set
236#
237# PCCARD (PCMCIA/CardBus) support
238#
239 293
240# 294#
241# Executable file formats 295# Executable file formats
242# 296#
243CONFIG_BINFMT_FLAT=y 297CONFIG_BINFMT_FLAT=y
244CONFIG_BINFMT_ZFLAT=y 298CONFIG_BINFMT_ZFLAT=y
245# CONFIG_BINFMT_SHARED_FLAT is not set 299CONFIG_BINFMT_SHARED_FLAT=y
246# CONFIG_BINFMT_MISC is not set 300CONFIG_BINFMT_MISC=y
247 301
248# 302#
249# Networking 303# Networking
@@ -253,14 +307,24 @@ CONFIG_NET=y
253# 307#
254# Networking options 308# Networking options
255# 309#
256# CONFIG_PACKET is not set 310CONFIG_PACKET=y
257# CONFIG_UNIX is not set 311# CONFIG_PACKET_MMAP is not set
258# CONFIG_NET_KEY is not set 312CONFIG_UNIX=y
313CONFIG_XFRM=y
314# CONFIG_XFRM_USER is not set
315# CONFIG_XFRM_SUB_POLICY is not set
316# CONFIG_XFRM_MIGRATE is not set
317# CONFIG_XFRM_STATISTICS is not set
318CONFIG_NET_KEY=y
319# CONFIG_NET_KEY_MIGRATE is not set
259CONFIG_INET=y 320CONFIG_INET=y
260# CONFIG_IP_MULTICAST is not set 321# CONFIG_IP_MULTICAST is not set
261# CONFIG_IP_ADVANCED_ROUTER is not set 322# CONFIG_IP_ADVANCED_ROUTER is not set
262CONFIG_IP_FIB_HASH=y 323CONFIG_IP_FIB_HASH=y
263# CONFIG_IP_PNP is not set 324CONFIG_IP_PNP=y
325CONFIG_IP_PNP_DHCP=y
326# CONFIG_IP_PNP_BOOTP is not set
327# CONFIG_IP_PNP_RARP is not set
264# CONFIG_NET_IPIP is not set 328# CONFIG_NET_IPIP is not set
265# CONFIG_NET_IPGRE is not set 329# CONFIG_NET_IPGRE is not set
266# CONFIG_ARPD is not set 330# CONFIG_ARPD is not set
@@ -273,14 +337,13 @@ CONFIG_IP_FIB_HASH=y
273# CONFIG_INET_XFRM_MODE_TRANSPORT is not set 337# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
274# CONFIG_INET_XFRM_MODE_TUNNEL is not set 338# CONFIG_INET_XFRM_MODE_TUNNEL is not set
275# CONFIG_INET_XFRM_MODE_BEET is not set 339# CONFIG_INET_XFRM_MODE_BEET is not set
340# CONFIG_INET_LRO is not set
276# CONFIG_INET_DIAG is not set 341# CONFIG_INET_DIAG is not set
277# CONFIG_TCP_CONG_ADVANCED is not set 342# CONFIG_TCP_CONG_ADVANCED is not set
278CONFIG_TCP_CONG_CUBIC=y 343CONFIG_TCP_CONG_CUBIC=y
279CONFIG_DEFAULT_TCP_CONG="cubic" 344CONFIG_DEFAULT_TCP_CONG="cubic"
280# CONFIG_TCP_MD5SIG is not set 345# CONFIG_TCP_MD5SIG is not set
281# CONFIG_IPV6 is not set 346# CONFIG_IPV6 is not set
282# CONFIG_INET6_XFRM_TUNNEL is not set
283# CONFIG_INET6_TUNNEL is not set
284# CONFIG_NETWORK_SECMARK is not set 347# CONFIG_NETWORK_SECMARK is not set
285# CONFIG_NETFILTER is not set 348# CONFIG_NETFILTER is not set
286# CONFIG_IP_DCCP is not set 349# CONFIG_IP_DCCP is not set
@@ -297,10 +360,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
297# CONFIG_LAPB is not set 360# CONFIG_LAPB is not set
298# CONFIG_ECONET is not set 361# CONFIG_ECONET is not set
299# CONFIG_WAN_ROUTER is not set 362# CONFIG_WAN_ROUTER is not set
300
301#
302# QoS and/or fair queueing
303#
304# CONFIG_NET_SCHED is not set 363# CONFIG_NET_SCHED is not set
305 364
306# 365#
@@ -308,6 +367,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
308# 367#
309# CONFIG_NET_PKTGEN is not set 368# CONFIG_NET_PKTGEN is not set
310# CONFIG_HAMRADIO is not set 369# CONFIG_HAMRADIO is not set
370# CONFIG_CAN is not set
311# CONFIG_IRDA is not set 371# CONFIG_IRDA is not set
312# CONFIG_BT is not set 372# CONFIG_BT is not set
313# CONFIG_AF_RXRPC is not set 373# CONFIG_AF_RXRPC is not set
@@ -329,8 +389,10 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
329# 389#
330# Generic Driver Options 390# Generic Driver Options
331# 391#
392CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
332# CONFIG_STANDALONE is not set 393# CONFIG_STANDALONE is not set
333# CONFIG_PREVENT_FIRMWARE_BUILD is not set 394# CONFIG_PREVENT_FIRMWARE_BUILD is not set
395# CONFIG_FW_LOADER is not set
334# CONFIG_DEBUG_DRIVER is not set 396# CONFIG_DEBUG_DRIVER is not set
335# CONFIG_DEBUG_DEVRES is not set 397# CONFIG_DEBUG_DEVRES is not set
336# CONFIG_SYS_HYPERVISOR is not set 398# CONFIG_SYS_HYPERVISOR is not set
@@ -339,11 +401,9 @@ CONFIG_MTD=y
339# CONFIG_MTD_DEBUG is not set 401# CONFIG_MTD_DEBUG is not set
340CONFIG_MTD_CONCAT=y 402CONFIG_MTD_CONCAT=y
341CONFIG_MTD_PARTITIONS=y 403CONFIG_MTD_PARTITIONS=y
342CONFIG_MTD_REDBOOT_PARTS=y 404# CONFIG_MTD_REDBOOT_PARTS is not set
343CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
344# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
345# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
346# CONFIG_MTD_CMDLINE_PARTS is not set 405# CONFIG_MTD_CMDLINE_PARTS is not set
406# CONFIG_MTD_AR7_PARTS is not set
347 407
348# 408#
349# User Modules And Translation Layers 409# User Modules And Translation Layers
@@ -356,6 +416,7 @@ CONFIG_MTD_BLOCK=y
356# CONFIG_INFTL is not set 416# CONFIG_INFTL is not set
357# CONFIG_RFD_FTL is not set 417# CONFIG_RFD_FTL is not set
358# CONFIG_SSFDC is not set 418# CONFIG_SSFDC is not set
419# CONFIG_MTD_OOPS is not set
359 420
360# 421#
361# RAM/ROM/Flash chip drivers 422# RAM/ROM/Flash chip drivers
@@ -390,7 +451,6 @@ CONFIG_MTD_PHYSMAP=y
390CONFIG_MTD_PHYSMAP_START=0x20000000 451CONFIG_MTD_PHYSMAP_START=0x20000000
391CONFIG_MTD_PHYSMAP_LEN=0x01000000 452CONFIG_MTD_PHYSMAP_LEN=0x01000000
392CONFIG_MTD_PHYSMAP_BANKWIDTH=4 453CONFIG_MTD_PHYSMAP_BANKWIDTH=4
393# CONFIG_MTD_SOLUTIONENGINE is not set
394# CONFIG_MTD_UCLINUX is not set 454# CONFIG_MTD_UCLINUX is not set
395# CONFIG_MTD_PLATRAM is not set 455# CONFIG_MTD_PLATRAM is not set
396 456
@@ -418,13 +478,19 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=4
418# CONFIG_PARPORT is not set 478# CONFIG_PARPORT is not set
419CONFIG_BLK_DEV=y 479CONFIG_BLK_DEV=y
420# CONFIG_BLK_DEV_COW_COMMON is not set 480# CONFIG_BLK_DEV_COW_COMMON is not set
421# CONFIG_BLK_DEV_LOOP is not set 481CONFIG_BLK_DEV_LOOP=y
482# CONFIG_BLK_DEV_CRYPTOLOOP is not set
422# CONFIG_BLK_DEV_NBD is not set 483# CONFIG_BLK_DEV_NBD is not set
423# CONFIG_BLK_DEV_RAM is not set 484CONFIG_BLK_DEV_RAM=y
485CONFIG_BLK_DEV_RAM_COUNT=16
486CONFIG_BLK_DEV_RAM_SIZE=4096
487# CONFIG_BLK_DEV_XIP is not set
424# CONFIG_CDROM_PKTCDVD is not set 488# CONFIG_CDROM_PKTCDVD is not set
425# CONFIG_ATA_OVER_ETH is not set 489# CONFIG_ATA_OVER_ETH is not set
426CONFIG_MISC_DEVICES=y 490CONFIG_MISC_DEVICES=y
427# CONFIG_EEPROM_93CX6 is not set 491CONFIG_EEPROM_93CX6=y
492# CONFIG_ENCLOSURE_SERVICES is not set
493CONFIG_HAVE_IDE=y
428# CONFIG_IDE is not set 494# CONFIG_IDE is not set
429 495
430# 496#
@@ -443,23 +509,30 @@ CONFIG_NETDEVICES=y
443# CONFIG_MACVLAN is not set 509# CONFIG_MACVLAN is not set
444# CONFIG_EQUALIZER is not set 510# CONFIG_EQUALIZER is not set
445# CONFIG_TUN is not set 511# CONFIG_TUN is not set
512# CONFIG_VETH is not set
446# CONFIG_PHYLIB is not set 513# CONFIG_PHYLIB is not set
447CONFIG_NET_ETHERNET=y 514CONFIG_NET_ETHERNET=y
448CONFIG_MII=y 515CONFIG_MII=y
516# CONFIG_AX88796 is not set
449# CONFIG_STNIC is not set 517# CONFIG_STNIC is not set
450CONFIG_SMC91X=y 518CONFIG_SMC91X=y
451CONFIG_NETDEV_1000=y 519# CONFIG_IBM_NEW_EMAC_ZMII is not set
452CONFIG_NETDEV_10000=y 520# CONFIG_IBM_NEW_EMAC_RGMII is not set
521# CONFIG_IBM_NEW_EMAC_TAH is not set
522# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
523# CONFIG_B44 is not set
524# CONFIG_NETDEV_1000 is not set
525# CONFIG_NETDEV_10000 is not set
453 526
454# 527#
455# Wireless LAN 528# Wireless LAN
456# 529#
457# CONFIG_WLAN_PRE80211 is not set 530# CONFIG_WLAN_PRE80211 is not set
458# CONFIG_WLAN_80211 is not set 531# CONFIG_WLAN_80211 is not set
532# CONFIG_IWLWIFI_LEDS is not set
459# CONFIG_WAN is not set 533# CONFIG_WAN is not set
460# CONFIG_PPP is not set 534# CONFIG_PPP is not set
461# CONFIG_SLIP is not set 535# CONFIG_SLIP is not set
462# CONFIG_SHAPER is not set
463# CONFIG_NETCONSOLE is not set 536# CONFIG_NETCONSOLE is not set
464# CONFIG_NETPOLL is not set 537# CONFIG_NETPOLL is not set
465# CONFIG_NET_POLL_CONTROLLER is not set 538# CONFIG_NET_POLL_CONTROLLER is not set
@@ -469,28 +542,7 @@ CONFIG_NETDEV_10000=y
469# 542#
470# Input device support 543# Input device support
471# 544#
472CONFIG_INPUT=y 545# CONFIG_INPUT is not set
473# CONFIG_INPUT_FF_MEMLESS is not set
474# CONFIG_INPUT_POLLDEV is not set
475
476#
477# Userland interfaces
478#
479# CONFIG_INPUT_MOUSEDEV is not set
480# CONFIG_INPUT_JOYDEV is not set
481# CONFIG_INPUT_TSDEV is not set
482# CONFIG_INPUT_EVDEV is not set
483# CONFIG_INPUT_EVBUG is not set
484
485#
486# Input Device Drivers
487#
488# CONFIG_INPUT_KEYBOARD is not set
489# CONFIG_INPUT_MOUSE is not set
490# CONFIG_INPUT_JOYSTICK is not set
491# CONFIG_INPUT_TABLET is not set
492# CONFIG_INPUT_TOUCHSCREEN is not set
493# CONFIG_INPUT_MISC is not set
494 546
495# 547#
496# Hardware I/O ports 548# Hardware I/O ports
@@ -502,6 +554,7 @@ CONFIG_INPUT=y
502# Character devices 554# Character devices
503# 555#
504# CONFIG_VT is not set 556# CONFIG_VT is not set
557# CONFIG_DEVKMEM is not set
505# CONFIG_SERIAL_NONSTANDARD is not set 558# CONFIG_SERIAL_NONSTANDARD is not set
506 559
507# 560#
@@ -520,106 +573,119 @@ CONFIG_SERIAL_CORE_CONSOLE=y
520# CONFIG_UNIX98_PTYS is not set 573# CONFIG_UNIX98_PTYS is not set
521# CONFIG_LEGACY_PTYS is not set 574# CONFIG_LEGACY_PTYS is not set
522# CONFIG_IPMI_HANDLER is not set 575# CONFIG_IPMI_HANDLER is not set
523# CONFIG_WATCHDOG is not set
524# CONFIG_HW_RANDOM is not set 576# CONFIG_HW_RANDOM is not set
525# CONFIG_R3964 is not set 577# CONFIG_R3964 is not set
526# CONFIG_RAW_DRIVER is not set 578# CONFIG_RAW_DRIVER is not set
527# CONFIG_TCG_TPM is not set 579# CONFIG_TCG_TPM is not set
528# CONFIG_I2C is not set 580# CONFIG_I2C is not set
529
530#
531# SPI support
532#
533# CONFIG_SPI is not set 581# CONFIG_SPI is not set
534# CONFIG_SPI_MASTER is not set
535# CONFIG_W1 is not set 582# CONFIG_W1 is not set
536# CONFIG_POWER_SUPPLY is not set 583# CONFIG_POWER_SUPPLY is not set
537# CONFIG_HWMON is not set 584# CONFIG_HWMON is not set
585# CONFIG_THERMAL is not set
586# CONFIG_WATCHDOG is not set
587
588#
589# Sonics Silicon Backplane
590#
591CONFIG_SSB_POSSIBLE=y
592# CONFIG_SSB is not set
538 593
539# 594#
540# Multifunction device drivers 595# Multifunction device drivers
541# 596#
542# CONFIG_MFD_SM501 is not set 597# CONFIG_MFD_SM501 is not set
598# CONFIG_HTC_PASIC3 is not set
543 599
544# 600#
545# Multimedia devices 601# Multimedia devices
546# 602#
603
604#
605# Multimedia core support
606#
547# CONFIG_VIDEO_DEV is not set 607# CONFIG_VIDEO_DEV is not set
548# CONFIG_DVB_CORE is not set 608# CONFIG_DVB_CORE is not set
549CONFIG_DAB=y 609# CONFIG_VIDEO_MEDIA is not set
610
611#
612# Multimedia drivers
613#
614# CONFIG_DAB is not set
550 615
551# 616#
552# Graphics support 617# Graphics support
553# 618#
619# CONFIG_VGASTATE is not set
620# CONFIG_VIDEO_OUTPUT_CONTROL is not set
621# CONFIG_FB is not set
554# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 622# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
555 623
556# 624#
557# Display device support 625# Display device support
558# 626#
559# CONFIG_DISPLAY_SUPPORT is not set 627# CONFIG_DISPLAY_SUPPORT is not set
560# CONFIG_VGASTATE is not set
561CONFIG_VIDEO_OUTPUT_CONTROL=y
562# CONFIG_FB is not set
563 628
564# 629#
565# Sound 630# Sound
566# 631#
567# CONFIG_SOUND is not set 632# CONFIG_SOUND is not set
568CONFIG_HID_SUPPORT=y 633# CONFIG_USB_SUPPORT is not set
569CONFIG_HID=y
570# CONFIG_HID_DEBUG is not set
571CONFIG_USB_SUPPORT=y
572CONFIG_USB_ARCH_HAS_HCD=y
573# CONFIG_USB_ARCH_HAS_OHCI is not set
574# CONFIG_USB_ARCH_HAS_EHCI is not set
575# CONFIG_USB is not set
576
577#
578# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
579#
580
581#
582# USB Gadget Support
583#
584# CONFIG_USB_GADGET is not set
585# CONFIG_MMC is not set 634# CONFIG_MMC is not set
635# CONFIG_MEMSTICK is not set
586# CONFIG_NEW_LEDS is not set 636# CONFIG_NEW_LEDS is not set
587# CONFIG_RTC_CLASS is not set 637# CONFIG_ACCESSIBILITY is not set
638CONFIG_RTC_LIB=y
639CONFIG_RTC_CLASS=y
640CONFIG_RTC_HCTOSYS=y
641CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
642# CONFIG_RTC_DEBUG is not set
588 643
589# 644#
590# DMA Engine support 645# RTC interfaces
591# 646#
592# CONFIG_DMA_ENGINE is not set 647CONFIG_RTC_INTF_SYSFS=y
648CONFIG_RTC_INTF_PROC=y
649CONFIG_RTC_INTF_DEV=y
650# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
651# CONFIG_RTC_DRV_TEST is not set
593 652
594# 653#
595# DMA Clients 654# SPI RTC drivers
596# 655#
597 656
598# 657#
599# DMA Devices 658# Platform RTC drivers
600# 659#
660# CONFIG_RTC_DRV_DS1511 is not set
661# CONFIG_RTC_DRV_DS1553 is not set
662# CONFIG_RTC_DRV_DS1742 is not set
663# CONFIG_RTC_DRV_STK17TA8 is not set
664# CONFIG_RTC_DRV_M48T86 is not set
665# CONFIG_RTC_DRV_M48T59 is not set
666# CONFIG_RTC_DRV_V3020 is not set
601 667
602# 668#
603# Userspace I/O 669# on-CPU RTC drivers
604# 670#
671CONFIG_RTC_DRV_SH=y
605# CONFIG_UIO is not set 672# CONFIG_UIO is not set
606 673
607# 674#
608# File systems 675# File systems
609# 676#
610# CONFIG_EXT2_FS is not set 677CONFIG_EXT2_FS=y
678# CONFIG_EXT2_FS_XATTR is not set
611# CONFIG_EXT3_FS is not set 679# CONFIG_EXT3_FS is not set
612# CONFIG_EXT4DEV_FS is not set 680# CONFIG_EXT4DEV_FS is not set
613# CONFIG_REISERFS_FS is not set 681# CONFIG_REISERFS_FS is not set
614# CONFIG_JFS_FS is not set 682# CONFIG_JFS_FS is not set
615# CONFIG_FS_POSIX_ACL is not set 683# CONFIG_FS_POSIX_ACL is not set
616# CONFIG_XFS_FS is not set 684# CONFIG_XFS_FS is not set
617# CONFIG_GFS2_FS is not set 685# CONFIG_OCFS2_FS is not set
618# CONFIG_MINIX_FS is not set 686# CONFIG_DNOTIFY is not set
619CONFIG_ROMFS_FS=y
620# CONFIG_INOTIFY is not set 687# CONFIG_INOTIFY is not set
621# CONFIG_QUOTA is not set 688# CONFIG_QUOTA is not set
622# CONFIG_DNOTIFY is not set
623# CONFIG_AUTOFS_FS is not set 689# CONFIG_AUTOFS_FS is not set
624# CONFIG_AUTOFS4_FS is not set 690# CONFIG_AUTOFS4_FS is not set
625# CONFIG_FUSE_FS is not set 691# CONFIG_FUSE_FS is not set
@@ -642,10 +708,11 @@ CONFIG_ROMFS_FS=y
642# 708#
643CONFIG_PROC_FS=y 709CONFIG_PROC_FS=y
644CONFIG_PROC_SYSCTL=y 710CONFIG_PROC_SYSCTL=y
645# CONFIG_SYSFS is not set 711CONFIG_SYSFS=y
646# CONFIG_TMPFS is not set 712CONFIG_TMPFS=y
713# CONFIG_TMPFS_POSIX_ACL is not set
647# CONFIG_HUGETLB_PAGE is not set 714# CONFIG_HUGETLB_PAGE is not set
648CONFIG_RAMFS=y 715CONFIG_CONFIGFS_FS=y
649 716
650# 717#
651# Miscellaneous filesystems 718# Miscellaneous filesystems
@@ -658,18 +725,28 @@ CONFIG_RAMFS=y
658# CONFIG_BFS_FS is not set 725# CONFIG_BFS_FS is not set
659# CONFIG_EFS_FS is not set 726# CONFIG_EFS_FS is not set
660# CONFIG_JFFS2_FS is not set 727# CONFIG_JFFS2_FS is not set
661# CONFIG_CRAMFS is not set 728CONFIG_CRAMFS=y
662# CONFIG_VXFS_FS is not set 729# CONFIG_VXFS_FS is not set
730# CONFIG_MINIX_FS is not set
663# CONFIG_HPFS_FS is not set 731# CONFIG_HPFS_FS is not set
664# CONFIG_QNX4FS_FS is not set 732# CONFIG_QNX4FS_FS is not set
733CONFIG_ROMFS_FS=y
665# CONFIG_SYSV_FS is not set 734# CONFIG_SYSV_FS is not set
666# CONFIG_UFS_FS is not set 735# CONFIG_UFS_FS is not set
667 736CONFIG_NETWORK_FILESYSTEMS=y
668# 737CONFIG_NFS_FS=y
669# Network File Systems 738CONFIG_NFS_V3=y
670# 739# CONFIG_NFS_V3_ACL is not set
671# CONFIG_NFS_FS is not set 740# CONFIG_NFS_V4 is not set
672# CONFIG_NFSD is not set 741# CONFIG_NFSD is not set
742CONFIG_ROOT_NFS=y
743CONFIG_LOCKD=y
744CONFIG_LOCKD_V4=y
745CONFIG_NFS_COMMON=y
746CONFIG_SUNRPC=y
747# CONFIG_SUNRPC_BIND34 is not set
748# CONFIG_RPCSEC_GSS_KRB5 is not set
749# CONFIG_RPCSEC_GSS_SPKM3 is not set
673# CONFIG_SMB_FS is not set 750# CONFIG_SMB_FS is not set
674# CONFIG_CIFS is not set 751# CONFIG_CIFS is not set
675# CONFIG_NCP_FS is not set 752# CONFIG_NCP_FS is not set
@@ -681,30 +758,20 @@ CONFIG_RAMFS=y
681# 758#
682# CONFIG_PARTITION_ADVANCED is not set 759# CONFIG_PARTITION_ADVANCED is not set
683CONFIG_MSDOS_PARTITION=y 760CONFIG_MSDOS_PARTITION=y
684
685#
686# Native Language Support
687#
688# CONFIG_NLS is not set 761# CONFIG_NLS is not set
689 762# CONFIG_DLM is not set
690#
691# Distributed Lock Manager
692#
693
694#
695# Profiling support
696#
697CONFIG_PROFILING=y
698# CONFIG_OPROFILE is not set
699 763
700# 764#
701# Kernel hacking 765# Kernel hacking
702# 766#
703CONFIG_TRACE_IRQFLAGS_SUPPORT=y 767CONFIG_TRACE_IRQFLAGS_SUPPORT=y
704# CONFIG_PRINTK_TIME is not set 768# CONFIG_PRINTK_TIME is not set
769CONFIG_ENABLE_WARN_DEPRECATED=y
705# CONFIG_ENABLE_MUST_CHECK is not set 770# CONFIG_ENABLE_MUST_CHECK is not set
771CONFIG_FRAME_WARN=1024
706# CONFIG_MAGIC_SYSRQ is not set 772# CONFIG_MAGIC_SYSRQ is not set
707# CONFIG_UNUSED_SYMBOLS is not set 773# CONFIG_UNUSED_SYMBOLS is not set
774CONFIG_DEBUG_FS=y
708# CONFIG_HEADERS_CHECK is not set 775# CONFIG_HEADERS_CHECK is not set
709CONFIG_DEBUG_KERNEL=y 776CONFIG_DEBUG_KERNEL=y
710# CONFIG_DEBUG_SHIRQ is not set 777# CONFIG_DEBUG_SHIRQ is not set
@@ -712,7 +779,10 @@ CONFIG_DETECT_SOFTLOCKUP=y
712CONFIG_SCHED_DEBUG=y 779CONFIG_SCHED_DEBUG=y
713# CONFIG_SCHEDSTATS is not set 780# CONFIG_SCHEDSTATS is not set
714# CONFIG_TIMER_STATS is not set 781# CONFIG_TIMER_STATS is not set
715CONFIG_SLUB_DEBUG_ON=y 782# CONFIG_DEBUG_OBJECTS is not set
783CONFIG_DEBUG_PREEMPT=y
784# CONFIG_DEBUG_RT_MUTEXES is not set
785# CONFIG_RT_MUTEX_TESTER is not set
716# CONFIG_DEBUG_SPINLOCK is not set 786# CONFIG_DEBUG_SPINLOCK is not set
717# CONFIG_DEBUG_MUTEXES is not set 787# CONFIG_DEBUG_MUTEXES is not set
718# CONFIG_DEBUG_LOCK_ALLOC is not set 788# CONFIG_DEBUG_LOCK_ALLOC is not set
@@ -722,38 +792,123 @@ CONFIG_DEBUG_SPINLOCK_SLEEP=y
722# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 792# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
723# CONFIG_DEBUG_KOBJECT is not set 793# CONFIG_DEBUG_KOBJECT is not set
724CONFIG_DEBUG_BUGVERBOSE=y 794CONFIG_DEBUG_BUGVERBOSE=y
725CONFIG_DEBUG_INFO=y 795# CONFIG_DEBUG_INFO is not set
726# CONFIG_DEBUG_VM is not set 796CONFIG_DEBUG_VM=y
727# CONFIG_DEBUG_LIST is not set 797# CONFIG_DEBUG_WRITECOUNT is not set
798CONFIG_DEBUG_LIST=y
799# CONFIG_DEBUG_SG is not set
728CONFIG_FRAME_POINTER=y 800CONFIG_FRAME_POINTER=y
729CONFIG_FORCED_INLINING=y 801# CONFIG_BOOT_PRINTK_DELAY is not set
802# CONFIG_RCU_TORTURE_TEST is not set
803# CONFIG_BACKTRACE_SELF_TEST is not set
730# CONFIG_FAULT_INJECTION is not set 804# CONFIG_FAULT_INJECTION is not set
805# CONFIG_SAMPLES is not set
731# CONFIG_SH_STANDARD_BIOS is not set 806# CONFIG_SH_STANDARD_BIOS is not set
732CONFIG_EARLY_SCIF_CONSOLE=y 807# CONFIG_EARLY_SCIF_CONSOLE is not set
733CONFIG_EARLY_SCIF_CONSOLE_PORT=0xfffe9800
734CONFIG_EARLY_PRINTK=y
735# CONFIG_DEBUG_BOOTMEM is not set 808# CONFIG_DEBUG_BOOTMEM is not set
736CONFIG_DEBUG_STACKOVERFLOW=y 809CONFIG_DEBUG_STACKOVERFLOW=y
737CONFIG_DEBUG_STACK_USAGE=y 810CONFIG_DEBUG_STACK_USAGE=y
738# CONFIG_4KSTACKS is not set 811# CONFIG_IRQSTACKS is not set
739 812
740# 813#
741# Security options 814# Security options
742# 815#
743# CONFIG_KEYS is not set 816# CONFIG_KEYS is not set
744# CONFIG_CRYPTO is not set 817# CONFIG_SECURITY is not set
818# CONFIG_SECURITY_FILE_CAPABILITIES is not set
819CONFIG_CRYPTO=y
820
821#
822# Crypto core or helper
823#
824CONFIG_CRYPTO_ALGAPI=y
825# CONFIG_CRYPTO_MANAGER is not set
826# CONFIG_CRYPTO_GF128MUL is not set
827# CONFIG_CRYPTO_NULL is not set
828# CONFIG_CRYPTO_CRYPTD is not set
829# CONFIG_CRYPTO_AUTHENC is not set
830# CONFIG_CRYPTO_TEST is not set
831
832#
833# Authenticated Encryption with Associated Data
834#
835# CONFIG_CRYPTO_CCM is not set
836# CONFIG_CRYPTO_GCM is not set
837# CONFIG_CRYPTO_SEQIV is not set
838
839#
840# Block modes
841#
842# CONFIG_CRYPTO_CBC is not set
843# CONFIG_CRYPTO_CTR is not set
844# CONFIG_CRYPTO_CTS is not set
845# CONFIG_CRYPTO_ECB is not set
846# CONFIG_CRYPTO_LRW is not set
847# CONFIG_CRYPTO_PCBC is not set
848# CONFIG_CRYPTO_XTS is not set
849
850#
851# Hash modes
852#
853# CONFIG_CRYPTO_HMAC is not set
854# CONFIG_CRYPTO_XCBC is not set
855
856#
857# Digest
858#
859# CONFIG_CRYPTO_CRC32C is not set
860# CONFIG_CRYPTO_MD4 is not set
861# CONFIG_CRYPTO_MD5 is not set
862# CONFIG_CRYPTO_MICHAEL_MIC is not set
863# CONFIG_CRYPTO_SHA1 is not set
864# CONFIG_CRYPTO_SHA256 is not set
865# CONFIG_CRYPTO_SHA512 is not set
866# CONFIG_CRYPTO_TGR192 is not set
867# CONFIG_CRYPTO_WP512 is not set
868
869#
870# Ciphers
871#
872# CONFIG_CRYPTO_AES is not set
873# CONFIG_CRYPTO_ANUBIS is not set
874# CONFIG_CRYPTO_ARC4 is not set
875# CONFIG_CRYPTO_BLOWFISH is not set
876# CONFIG_CRYPTO_CAMELLIA is not set
877# CONFIG_CRYPTO_CAST5 is not set
878# CONFIG_CRYPTO_CAST6 is not set
879# CONFIG_CRYPTO_DES is not set
880# CONFIG_CRYPTO_FCRYPT is not set
881# CONFIG_CRYPTO_KHAZAD is not set
882# CONFIG_CRYPTO_SALSA20 is not set
883# CONFIG_CRYPTO_SEED is not set
884# CONFIG_CRYPTO_SERPENT is not set
885# CONFIG_CRYPTO_TEA is not set
886# CONFIG_CRYPTO_TWOFISH is not set
887
888#
889# Compression
890#
891CONFIG_CRYPTO_DEFLATE=y
892CONFIG_CRYPTO_LZO=y
893# CONFIG_CRYPTO_HW is not set
745 894
746# 895#
747# Library routines 896# Library routines
748# 897#
749CONFIG_BITREVERSE=y 898CONFIG_BITREVERSE=y
750# CONFIG_CRC_CCITT is not set 899# CONFIG_GENERIC_FIND_FIRST_BIT is not set
751# CONFIG_CRC16 is not set 900CONFIG_CRC_CCITT=y
752# CONFIG_CRC_ITU_T is not set 901CONFIG_CRC16=y
902CONFIG_CRC_ITU_T=y
753CONFIG_CRC32=y 903CONFIG_CRC32=y
754# CONFIG_CRC7 is not set 904CONFIG_CRC7=y
755# CONFIG_LIBCRC32C is not set 905CONFIG_LIBCRC32C=y
906CONFIG_AUDIT_GENERIC=y
756CONFIG_ZLIB_INFLATE=y 907CONFIG_ZLIB_INFLATE=y
908CONFIG_ZLIB_DEFLATE=y
909CONFIG_LZO_COMPRESS=y
910CONFIG_LZO_DECOMPRESS=y
911CONFIG_PLIST=y
757CONFIG_HAS_IOMEM=y 912CONFIG_HAS_IOMEM=y
758CONFIG_HAS_IOPORT=y 913CONFIG_HAS_IOPORT=y
759CONFIG_HAS_DMA=y 914CONFIG_HAS_DMA=y
diff --git a/arch/sh/drivers/heartbeat.c b/arch/sh/drivers/heartbeat.c
index ab77b0e0fa0e..938817e34e2b 100644
--- a/arch/sh/drivers/heartbeat.c
+++ b/arch/sh/drivers/heartbeat.c
@@ -154,4 +154,4 @@ module_exit(heartbeat_exit);
154 154
155MODULE_VERSION(DRV_VERSION); 155MODULE_VERSION(DRV_VERSION);
156MODULE_AUTHOR("Paul Mundt"); 156MODULE_AUTHOR("Paul Mundt");
157MODULE_LICENSE("GPLv2"); 157MODULE_LICENSE("GPL v2");
diff --git a/arch/sh/kernel/cpu/irq/intc-sh5.c b/arch/sh/kernel/cpu/irq/intc-sh5.c
index de45c6a3e33b..79baa47af977 100644
--- a/arch/sh/kernel/cpu/irq/intc-sh5.c
+++ b/arch/sh/kernel/cpu/irq/intc-sh5.c
@@ -242,6 +242,7 @@ void __init plat_irq_setup(void)
242 reg += 8; 242 reg += 8;
243 } 243 }
244 } 244 }
245 }
245#endif 246#endif
246 247
247 /* 248 /*
diff --git a/arch/sh/kernel/cpu/sh4/probe.c b/arch/sh/kernel/cpu/sh4/probe.c
index ebceb0dadff5..be4926969181 100644
--- a/arch/sh/kernel/cpu/sh4/probe.c
+++ b/arch/sh/kernel/cpu/sh4/probe.c
@@ -132,6 +132,7 @@ int __init detect_cpu_and_cache_system(void)
132 132
133 switch (prr) { 133 switch (prr) {
134 case 0x50: 134 case 0x50:
135 case 0x51:
135 boot_cpu_data.type = CPU_SH7723; 136 boot_cpu_data.type = CPU_SH7723;
136 boot_cpu_data.flags |= CPU_HAS_FPU | CPU_HAS_L2_CACHE; 137 boot_cpu_data.flags |= CPU_HAS_FPU | CPU_HAS_L2_CACHE;
137 break; 138 break;
diff --git a/arch/sh/kernel/cpu/sh4a/clock-sh7785.c b/arch/sh/kernel/cpu/sh4a/clock-sh7785.c
index 805535aa505e..27fa81bef6a0 100644
--- a/arch/sh/kernel/cpu/sh4a/clock-sh7785.c
+++ b/arch/sh/kernel/cpu/sh4a/clock-sh7785.c
@@ -26,7 +26,7 @@ static int pfc_divisors[] = { 1, 1, 1, 1, 1, 1, 1, 18,
26 26
27static void master_clk_init(struct clk *clk) 27static void master_clk_init(struct clk *clk)
28{ 28{
29 clk->rate *= 36; 29 clk->rate *= pfc_divisors[ctrl_inl(FRQMR1) & 0x000f];
30} 30}
31 31
32static struct clk_ops sh7785_master_clk_ops = { 32static struct clk_ops sh7785_master_clk_ops = {
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7722.c b/arch/sh/kernel/cpu/sh4a/setup-sh7722.c
index 069314037049..62ebccf18b3c 100644
--- a/arch/sh/kernel/cpu/sh4a/setup-sh7722.c
+++ b/arch/sh/kernel/cpu/sh4a/setup-sh7722.c
@@ -16,7 +16,7 @@
16 16
17static struct resource usbf_resources[] = { 17static struct resource usbf_resources[] = {
18 [0] = { 18 [0] = {
19 .name = "USBF", 19 .name = "m66592_udc",
20 .start = 0x04480000, 20 .start = 0x04480000,
21 .end = 0x044800FF, 21 .end = 0x044800FF,
22 .flags = IORESOURCE_MEM, 22 .flags = IORESOURCE_MEM,
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7723.c b/arch/sh/kernel/cpu/sh4a/setup-sh7723.c
index 16925cf28db8..a0470f2f5479 100644
--- a/arch/sh/kernel/cpu/sh4a/setup-sh7723.c
+++ b/arch/sh/kernel/cpu/sh4a/setup-sh7723.c
@@ -16,6 +16,21 @@
16 16
17static struct plat_sci_port sci_platform_data[] = { 17static struct plat_sci_port sci_platform_data[] = {
18 { 18 {
19 .mapbase = 0xffe00000,
20 .flags = UPF_BOOT_AUTOCONF,
21 .type = PORT_SCIF,
22 .irqs = { 80, 80, 80, 80 },
23 },{
24 .mapbase = 0xffe10000,
25 .flags = UPF_BOOT_AUTOCONF,
26 .type = PORT_SCIF,
27 .irqs = { 81, 81, 81, 81 },
28 },{
29 .mapbase = 0xffe20000,
30 .flags = UPF_BOOT_AUTOCONF,
31 .type = PORT_SCIF,
32 .irqs = { 82, 82, 82, 82 },
33 },{
19 .mapbase = 0xa4e30000, 34 .mapbase = 0xa4e30000,
20 .flags = UPF_BOOT_AUTOCONF, 35 .flags = UPF_BOOT_AUTOCONF,
21 .type = PORT_SCI, 36 .type = PORT_SCI,
@@ -73,9 +88,35 @@ static struct platform_device rtc_device = {
73 .resource = rtc_resources, 88 .resource = rtc_resources,
74}; 89};
75 90
91static struct resource sh7723_usb_host_resources[] = {
92 [0] = {
93 .name = "r8a66597_hcd",
94 .start = 0xa4d80000,
95 .end = 0xa4d800ff,
96 .flags = IORESOURCE_MEM,
97 },
98 [1] = {
99 .start = 65,
100 .end = 65,
101 .flags = IORESOURCE_IRQ,
102 },
103};
104
105static struct platform_device sh7723_usb_host_device = {
106 .name = "r8a66597_hcd",
107 .id = 0,
108 .dev = {
109 .dma_mask = NULL, /* not use dma */
110 .coherent_dma_mask = 0xffffffff,
111 },
112 .num_resources = ARRAY_SIZE(sh7723_usb_host_resources),
113 .resource = sh7723_usb_host_resources,
114};
115
76static struct platform_device *sh7723_devices[] __initdata = { 116static struct platform_device *sh7723_devices[] __initdata = {
77 &sci_device, 117 &sci_device,
78 &rtc_device, 118 &rtc_device,
119 &sh7723_usb_host_device,
79}; 120};
80 121
81static int __init sh7723_devices_setup(void) 122static int __init sh7723_devices_setup(void)
@@ -153,7 +194,7 @@ static struct intc_vect vectors[] __initdata = {
153 INTC_VECT(VIO_VOUI,0x8E0), 194 INTC_VECT(VIO_VOUI,0x8E0),
154 195
155 INTC_VECT(SCIFA_SCIFA0,0x900), 196 INTC_VECT(SCIFA_SCIFA0,0x900),
156 INTC_VECT(VPU_VPUI,0x920), 197 INTC_VECT(VPU_VPUI,0x980),
157 INTC_VECT(TPU_TPUI,0x9A0), 198 INTC_VECT(TPU_TPUI,0x9A0),
158 INTC_VECT(ADC_ADI,0x9E0), 199 INTC_VECT(ADC_ADI,0x9E0),
159 INTC_VECT(USB_USI0,0xA20), 200 INTC_VECT(USB_USI0,0xA20),
@@ -292,9 +333,3 @@ void __init plat_irq_setup(void)
292{ 333{
293 register_intc_controller(&intc_desc); 334 register_intc_controller(&intc_desc);
294} 335}
295
296void __init plat_mem_setup(void)
297{
298 /* Register the URAM space as Node 1 */
299 setup_bootmem_node(1, 0x055f0000, 0x05610000);
300}
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7763.c b/arch/sh/kernel/cpu/sh4a/setup-sh7763.c
index ae2b22219f02..f189a559462b 100644
--- a/arch/sh/kernel/cpu/sh4a/setup-sh7763.c
+++ b/arch/sh/kernel/cpu/sh4a/setup-sh7763.c
@@ -291,8 +291,9 @@ static struct intc_sense_reg irq_sense_registers[] __initdata = {
291}; 291};
292 292
293static DECLARE_INTC_DESC(intc_irq_desc, "sh7763-irq", irq_vectors, 293static DECLARE_INTC_DESC(intc_irq_desc, "sh7763-irq", irq_vectors,
294 NULL, NULL, irq_mask_registers, irq_prio_registers, 294 NULL, irq_mask_registers, irq_prio_registers,
295 irq_sense_registers); 295 irq_sense_registers);
296
296 297
297/* External interrupt pins in IRL mode */ 298/* External interrupt pins in IRL mode */
298static struct intc_vect irl_vectors[] __initdata = { 299static struct intc_vect irl_vectors[] __initdata = {
@@ -324,10 +325,10 @@ static struct intc_mask_reg irl7654_mask_registers[] __initdata = {
324}; 325};
325 326
326static DECLARE_INTC_DESC(intc_irl7654_desc, "sh7763-irl7654", irl_vectors, 327static DECLARE_INTC_DESC(intc_irl7654_desc, "sh7763-irl7654", irl_vectors,
327 NULL, NULL, irl7654_mask_registers, NULL, NULL); 328 NULL, irl7654_mask_registers, NULL, NULL);
328 329
329static DECLARE_INTC_DESC(intc_irl3210_desc, "sh7763-irl3210", irl_vectors, 330static DECLARE_INTC_DESC(intc_irl3210_desc, "sh7763-irl3210", irl_vectors,
330 NULL, NULL, irl3210_mask_registers, NULL, NULL); 331 NULL, irl3210_mask_registers, NULL, NULL);
331 332
332#define INTC_ICR0 0xffd00000 333#define INTC_ICR0 0xffd00000
333#define INTC_INTMSK0 0xffd00044 334#define INTC_INTMSK0 0xffd00044
diff --git a/arch/sh/kernel/entry-common.S b/arch/sh/kernel/entry-common.S
index 926b2e7b11c1..718bd2356b34 100644
--- a/arch/sh/kernel/entry-common.S
+++ b/arch/sh/kernel/entry-common.S
@@ -1,9 +1,6 @@
1/* $Id: entry.S,v 1.37 2004/06/11 13:02:46 doyu Exp $ 1/*
2 *
3 * linux/arch/sh/entry.S
4 *
5 * Copyright (C) 1999, 2000, 2002 Niibe Yutaka 2 * Copyright (C) 1999, 2000, 2002 Niibe Yutaka
6 * Copyright (C) 2003 Paul Mundt 3 * Copyright (C) 2003 - 2008 Paul Mundt
7 * 4 *
8 * This file is subject to the terms and conditions of the GNU General Public 5 * This file is subject to the terms and conditions of the GNU General Public
9 * License. See the file "COPYING" in the main directory of this archive 6 * License. See the file "COPYING" in the main directory of this archive
@@ -262,6 +259,7 @@ __restore_all:
262 259
263 .align 2 260 .align 2
264syscall_badsys: ! Bad syscall number 261syscall_badsys: ! Bad syscall number
262 get_current_thread_info r8, r0
265 mov #-ENOSYS, r0 263 mov #-ENOSYS, r0
266 bra resume_userspace 264 bra resume_userspace
267 mov.l r0, @(OFF_R0,r15) ! Return value 265 mov.l r0, @(OFF_R0,r15) ! Return value
@@ -281,7 +279,9 @@ debug_trap:
281 mov.l 1f, r8 279 mov.l 1f, r8
282 add r0, r8 280 add r0, r8
283 mov.l @r8, r8 281 mov.l @r8, r8
284 jmp @r8 282 jsr @r8
283 nop
284 bra __restore_all
285 nop 285 nop
286 286
287 .align 2 287 .align 2
diff --git a/arch/sh/kernel/head_32.S b/arch/sh/kernel/head_32.S
index d67d7ed09f22..ae0a382a82eb 100644
--- a/arch/sh/kernel/head_32.S
+++ b/arch/sh/kernel/head_32.S
@@ -30,8 +30,8 @@ ENTRY(empty_zero_page)
30 .long 0 /* RAMDISK_FLAGS */ 30 .long 0 /* RAMDISK_FLAGS */
31 .long 0x0200 /* ORIG_ROOT_DEV */ 31 .long 0x0200 /* ORIG_ROOT_DEV */
32 .long 1 /* LOADER_TYPE */ 32 .long 1 /* LOADER_TYPE */
33 .long 0x00360000 /* INITRD_START */ 33 .long 0x00000000 /* INITRD_START */
34 .long 0x000a0000 /* INITRD_SIZE */ 34 .long 0x00000000 /* INITRD_SIZE */
35#ifdef CONFIG_32BIT 35#ifdef CONFIG_32BIT
36 .long 0x53453f00 + 32 /* "SE?" = 32 bit */ 36 .long 0x53453f00 + 32 /* "SE?" = 32 bit */
37#else 37#else
diff --git a/arch/sh/kernel/init_task.c b/arch/sh/kernel/init_task.c
index f9bcc606127e..b151a25cb14d 100644
--- a/arch/sh/kernel/init_task.c
+++ b/arch/sh/kernel/init_task.c
@@ -8,7 +8,6 @@
8#include <asm/pgtable.h> 8#include <asm/pgtable.h>
9 9
10static struct fs_struct init_fs = INIT_FS; 10static struct fs_struct init_fs = INIT_FS;
11static struct files_struct init_files = INIT_FILES;
12static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 11static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
13static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 12static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
14struct pt_regs fake_swapper_regs; 13struct pt_regs fake_swapper_regs;
diff --git a/arch/sh/kernel/kgdb_stub.c b/arch/sh/kernel/kgdb_stub.c
index d453c3a1c79f..bf8ac4c71640 100644
--- a/arch/sh/kernel/kgdb_stub.c
+++ b/arch/sh/kernel/kgdb_stub.c
@@ -274,8 +274,7 @@ static char *mem_to_hex(const char *mem, char *buf, const int count)
274 } 274 }
275 for (i = 0; i < count; i++) { 275 for (i = 0; i < count; i++) {
276 ch = *mem++; 276 ch = *mem++;
277 *buf++ = highhex(ch); 277 buf = pack_hex_byte(buf, ch);
278 *buf++ = lowhex(ch);
279 } 278 }
280 *buf = 0; 279 *buf = 0;
281 return (buf); 280 return (buf);
@@ -330,14 +329,6 @@ static char *ebin_to_mem(const char *buf, char *mem, int count)
330 return mem; 329 return mem;
331} 330}
332 331
333/* Pack a hex byte */
334static char *pack_hex_byte(char *pkt, int byte)
335{
336 *pkt++ = hexchars[(byte >> 4) & 0xf];
337 *pkt++ = hexchars[(byte & 0xf)];
338 return pkt;
339}
340
341/* Scan for the start char '$', read the packet and check the checksum */ 332/* Scan for the start char '$', read the packet and check the checksum */
342static void get_packet(char *buffer, int buflen) 333static void get_packet(char *buffer, int buflen)
343{ 334{
@@ -435,8 +426,8 @@ static void put_packet(char *buffer)
435 426
436 /* '#' Separator, put high and low components of checksum */ 427 /* '#' Separator, put high and low components of checksum */
437 put_debug_char('#'); 428 put_debug_char('#');
438 put_debug_char(highhex(checksum)); 429 put_debug_char(hex_asc_hi(checksum));
439 put_debug_char(lowhex(checksum)); 430 put_debug_char(hex_asc_lo(checksum));
440 } 431 }
441 while ((get_debug_char()) != '+'); /* While no ack */ 432 while ((get_debug_char()) != '+'); /* While no ack */
442} 433}
@@ -658,8 +649,8 @@ static void undo_single_step(void)
658static void send_signal_msg(const int signum) 649static void send_signal_msg(const int signum)
659{ 650{
660 out_buffer[0] = 'S'; 651 out_buffer[0] = 'S';
661 out_buffer[1] = highhex(signum); 652 out_buffer[1] = hex_asc_hi(signum);
662 out_buffer[2] = lowhex(signum); 653 out_buffer[2] = hex_asc_lo(signum);
663 out_buffer[3] = 0; 654 out_buffer[3] = 0;
664 put_packet(out_buffer); 655 put_packet(out_buffer);
665} 656}
diff --git a/arch/sh/kernel/module.c b/arch/sh/kernel/module.c
index b3d0a03b4c76..5482e65375a9 100644
--- a/arch/sh/kernel/module.c
+++ b/arch/sh/kernel/module.c
@@ -30,6 +30,7 @@
30#include <linux/fs.h> 30#include <linux/fs.h>
31#include <linux/string.h> 31#include <linux/string.h>
32#include <linux/kernel.h> 32#include <linux/kernel.h>
33#include <asm/unaligned.h>
33 34
34void *module_alloc(unsigned long size) 35void *module_alloc(unsigned long size)
35{ 36{
@@ -56,34 +57,6 @@ int module_frob_arch_sections(Elf_Ehdr *hdr,
56 return 0; 57 return 0;
57} 58}
58 59
59#ifdef CONFIG_SUPERH32
60#define COPY_UNALIGNED_WORD(sw, tw, align) \
61{ \
62 void *__s = &(sw), *__t = &(tw); \
63 unsigned short *__s2 = __s, *__t2 = __t; \
64 unsigned char *__s1 = __s, *__t1 = __t; \
65 switch ((align)) \
66 { \
67 case 0: \
68 *(unsigned long *) __t = *(unsigned long *) __s; \
69 break; \
70 case 2: \
71 *__t2++ = *__s2++; \
72 *__t2 = *__s2; \
73 break; \
74 default: \
75 *__t1++ = *__s1++; \
76 *__t1++ = *__s1++; \
77 *__t1++ = *__s1++; \
78 *__t1 = *__s1; \
79 break; \
80 } \
81}
82#else
83/* One thing SHmedia doesn't screw up! */
84#define COPY_UNALIGNED_WORD(sw, tw, align) { (tw) = (sw); }
85#endif
86
87int apply_relocate_add(Elf32_Shdr *sechdrs, 60int apply_relocate_add(Elf32_Shdr *sechdrs,
88 const char *strtab, 61 const char *strtab,
89 unsigned int symindex, 62 unsigned int symindex,
@@ -96,7 +69,6 @@ int apply_relocate_add(Elf32_Shdr *sechdrs,
96 Elf32_Addr relocation; 69 Elf32_Addr relocation;
97 uint32_t *location; 70 uint32_t *location;
98 uint32_t value; 71 uint32_t value;
99 int align;
100 72
101 pr_debug("Applying relocate section %u to %u\n", relsec, 73 pr_debug("Applying relocate section %u to %u\n", relsec,
102 sechdrs[relsec].sh_info); 74 sechdrs[relsec].sh_info);
@@ -109,7 +81,6 @@ int apply_relocate_add(Elf32_Shdr *sechdrs,
109 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr 81 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr
110 + ELF32_R_SYM(rel[i].r_info); 82 + ELF32_R_SYM(rel[i].r_info);
111 relocation = sym->st_value + rel[i].r_addend; 83 relocation = sym->st_value + rel[i].r_addend;
112 align = (int)location & 3;
113 84
114#ifdef CONFIG_SUPERH64 85#ifdef CONFIG_SUPERH64
115 /* For text addresses, bit2 of the st_other field indicates 86 /* For text addresses, bit2 of the st_other field indicates
@@ -122,15 +93,15 @@ int apply_relocate_add(Elf32_Shdr *sechdrs,
122 93
123 switch (ELF32_R_TYPE(rel[i].r_info)) { 94 switch (ELF32_R_TYPE(rel[i].r_info)) {
124 case R_SH_DIR32: 95 case R_SH_DIR32:
125 COPY_UNALIGNED_WORD (*location, value, align); 96 value = get_unaligned(location);
126 value += relocation; 97 value += relocation;
127 COPY_UNALIGNED_WORD (value, *location, align); 98 put_unaligned(value, location);
128 break; 99 break;
129 case R_SH_REL32: 100 case R_SH_REL32:
130 relocation = (relocation - (Elf32_Addr) location); 101 relocation = (relocation - (Elf32_Addr) location);
131 COPY_UNALIGNED_WORD (*location, value, align); 102 value = get_unaligned(location);
132 value += relocation; 103 value += relocation;
133 COPY_UNALIGNED_WORD (value, *location, align); 104 put_unaligned(value, location);
134 break; 105 break;
135 case R_SH_IMM_LOW16: 106 case R_SH_IMM_LOW16:
136 *location = (*location & ~0x3fffc00) | 107 *location = (*location & ~0x3fffc00) |
diff --git a/arch/sh/kernel/setup.c b/arch/sh/kernel/setup.c
index 516bde9c50fa..bca2bbc575db 100644
--- a/arch/sh/kernel/setup.c
+++ b/arch/sh/kernel/setup.c
@@ -292,6 +292,17 @@ void __init setup_arch(char **cmdline_p)
292 292
293 ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV); 293 ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV);
294 294
295 printk(KERN_NOTICE "Boot params:\n"
296 "... MOUNT_ROOT_RDONLY - %08lx\n"
297 "... RAMDISK_FLAGS - %08lx\n"
298 "... ORIG_ROOT_DEV - %08lx\n"
299 "... LOADER_TYPE - %08lx\n"
300 "... INITRD_START - %08lx\n"
301 "... INITRD_SIZE - %08lx\n",
302 MOUNT_ROOT_RDONLY, RAMDISK_FLAGS,
303 ORIG_ROOT_DEV, LOADER_TYPE,
304 INITRD_START, INITRD_SIZE);
305
295#ifdef CONFIG_BLK_DEV_RAM 306#ifdef CONFIG_BLK_DEV_RAM
296 rd_image_start = RAMDISK_FLAGS & RAMDISK_IMAGE_START_MASK; 307 rd_image_start = RAMDISK_FLAGS & RAMDISK_IMAGE_START_MASK;
297 rd_prompt = ((RAMDISK_FLAGS & RAMDISK_PROMPT_FLAG) != 0); 308 rd_prompt = ((RAMDISK_FLAGS & RAMDISK_PROMPT_FLAG) != 0);
diff --git a/arch/sh/kernel/traps.c b/arch/sh/kernel/traps.c
index a3bdc68ef02c..438f1ebcc453 100644
--- a/arch/sh/kernel/traps.c
+++ b/arch/sh/kernel/traps.c
@@ -4,6 +4,7 @@
4#include <linux/kdebug.h> 4#include <linux/kdebug.h>
5#include <linux/signal.h> 5#include <linux/signal.h>
6#include <linux/sched.h> 6#include <linux/sched.h>
7#include <linux/uaccess.h>
7#include <asm/system.h> 8#include <asm/system.h>
8 9
9#ifdef CONFIG_BUG 10#ifdef CONFIG_BUG
@@ -21,7 +22,14 @@ static void handle_BUG(struct pt_regs *regs)
21 22
22int is_valid_bugaddr(unsigned long addr) 23int is_valid_bugaddr(unsigned long addr)
23{ 24{
24 return addr >= PAGE_OFFSET; 25 unsigned short opcode;
26
27 if (addr < PAGE_OFFSET)
28 return 0;
29 if (probe_kernel_address((u16 *)addr, opcode))
30 return 0;
31
32 return opcode == TRAPA_BUG_OPCODE;
25} 33}
26#endif 34#endif
27 35
diff --git a/arch/sh/lib/memcpy-sh4.S b/arch/sh/lib/memcpy-sh4.S
index 560bc17eebdd..459fa92a7c53 100644
--- a/arch/sh/lib/memcpy-sh4.S
+++ b/arch/sh/lib/memcpy-sh4.S
@@ -126,10 +126,10 @@
126 126
127 mov.l r3,@-r0 ! 30 LS 127 mov.l r3,@-r0 ! 30 LS
128#else 128#else
1293: mov r1,r3 ! OPQR 1293: mov r7,r3 ! OPQR
130 shlr8 r3 ! xOPQ 130 shlr8 r3 ! xOPQ
131 mov.l @(r0,r5),r1 ! KLMN 131 mov.l @(r0,r5),r7 ! KLMN
132 mov r1,r6 132 mov r7,r6
133 shll16 r6 133 shll16 r6
134 shll8 r6 ! Nxxx 134 shll8 r6 ! Nxxx
135 or r6,r3 ! NOPQ 135 or r6,r3 ! NOPQ
@@ -733,24 +733,24 @@ ENTRY(memcpy)
733 movca.l r0,@r1 ! 40 LS (latency=3-7) 733 movca.l r0,@r1 ! 40 LS (latency=3-7)
734 add #-0x1c, r1 ! 50 EX 734 add #-0x1c, r1 ! 50 EX
735 735
736 mov.l r3, @(0x1c,r1) ! 33 LS 736 mov.l r3, @(0x18,r1) ! 33 LS
737 xtrct r11, r10 ! 48 EX 737 xtrct r11, r10 ! 48 EX
738 738
739 mov.l r6, @(0x18,r1) ! 33 LS 739 mov.l r6, @(0x14,r1) ! 33 LS
740 xtrct r12, r11 ! 48 EX 740 xtrct r12, r11 ! 48 EX
741 741
742 mov.l r7, @(0x14,r1) ! 33 LS 742 mov.l r7, @(0x10,r1) ! 33 LS
743 743
744 mov.l r8, @(0x10,r1) ! 33 LS 744 mov.l r8, @(0x0c,r1) ! 33 LS
745 add #-0x3e, r5 ! 50 EX 745 add #-0x1e, r5 ! 50 EX
746 746
747 mov.l r9, @(0x0c,r1) ! 33 LS 747 mov.l r9, @(0x08,r1) ! 33 LS
748 cmp/eq r2,r1 ! 54 MT 748 cmp/eq r2,r1 ! 54 MT
749 749
750 mov.l r10, @(0x08,r1) ! 33 LS 750 mov.l r10, @(0x04,r1) ! 33 LS
751 bf/s 2b ! 109 BR 751 bf/s 2b ! 109 BR
752 752
753 mov.l r11, @(0x04,r1) ! 33 LS 753 mov.l r11, @(0x00,r1) ! 33 LS
754#endif 754#endif
755 755
756 mov.l @r15+, r12 756 mov.l @r15+, r12
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index d211fdb24584..789724e61e83 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -1,4 +1,3 @@
1# $Id: config.in,v 1.113 2002/01/24 22:14:44 davem Exp $
2# For a description of the syntax of this configuration file, 1# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt. 2# see Documentation/kbuild/kconfig-language.txt.
4# 3#
diff --git a/arch/sparc/boot/Makefile b/arch/sparc/boot/Makefile
index b365084316ac..22d331e1e941 100644
--- a/arch/sparc/boot/Makefile
+++ b/arch/sparc/boot/Makefile
@@ -1,4 +1,3 @@
1# $Id: Makefile,v 1.10 2000/02/23 08:17:46 jj Exp $
2# Makefile for the Sparc boot stuff. 1# Makefile for the Sparc boot stuff.
3# 2#
4# Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 3# Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/boot/btfixupprep.c b/arch/sparc/boot/btfixupprep.c
index dc7b0546e3bb..52a4208fe4f0 100644
--- a/arch/sparc/boot/btfixupprep.c
+++ b/arch/sparc/boot/btfixupprep.c
@@ -1,4 +1,4 @@
1/* $Id: btfixupprep.c,v 1.6 2001/08/22 15:27:47 davem Exp $ 1/*
2 Simple utility to prepare vmlinux image for sparc. 2 Simple utility to prepare vmlinux image for sparc.
3 Resolves all BTFIXUP uses and settings and creates 3 Resolves all BTFIXUP uses and settings and creates
4 a special .s object to link to the image. 4 a special .s object to link to the image.
diff --git a/arch/sparc/boot/piggyback.c b/arch/sparc/boot/piggyback.c
index 6962cc68ed5b..c9f500c1a8b2 100644
--- a/arch/sparc/boot/piggyback.c
+++ b/arch/sparc/boot/piggyback.c
@@ -1,4 +1,4 @@
1/* $Id: piggyback.c,v 1.4 2000/12/05 00:48:57 anton Exp $ 1/*
2 Simple utility to make a single-image install kernel with initial ramdisk 2 Simple utility to make a single-image install kernel with initial ramdisk
3 for Sparc tftpbooting without need to set up nfs. 3 for Sparc tftpbooting without need to set up nfs.
4 4
diff --git a/arch/sparc/kernel/ebus.c b/arch/sparc/kernel/ebus.c
index 96344ff2bbe1..92c6fc07e59c 100644
--- a/arch/sparc/kernel/ebus.c
+++ b/arch/sparc/kernel/ebus.c
@@ -1,4 +1,4 @@
1/* $Id: ebus.c,v 1.20 2002/01/05 01:13:43 davem Exp $ 1/*
2 * ebus.c: PCI to EBus bridge device. 2 * ebus.c: PCI to EBus bridge device.
3 * 3 *
4 * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be) 4 * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be)
diff --git a/arch/sparc/kernel/etrap.S b/arch/sparc/kernel/etrap.S
index a8b35bed12a2..f37d961d67a6 100644
--- a/arch/sparc/kernel/etrap.S
+++ b/arch/sparc/kernel/etrap.S
@@ -1,4 +1,4 @@
1/* $Id: etrap.S,v 1.31 2000/01/08 16:38:18 anton Exp $ 1/*
2 * etrap.S: Sparc trap window preparation for entry into the 2 * etrap.S: Sparc trap window preparation for entry into the
3 * Linux kernel. 3 * Linux kernel.
4 * 4 *
diff --git a/arch/sparc/kernel/head.S b/arch/sparc/kernel/head.S
index 8bec05fa5795..3bfd6085a91d 100644
--- a/arch/sparc/kernel/head.S
+++ b/arch/sparc/kernel/head.S
@@ -1,4 +1,4 @@
1/* $Id: head.S,v 1.105 2001/08/12 09:08:56 davem Exp $ 1/*
2 * head.S: The initial boot code for the Sparc port of Linux. 2 * head.S: The initial boot code for the Sparc port of Linux.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/kernel/idprom.c b/arch/sparc/kernel/idprom.c
index 3a5bad525394..7220562cdb34 100644
--- a/arch/sparc/kernel/idprom.c
+++ b/arch/sparc/kernel/idprom.c
@@ -1,4 +1,4 @@
1/* $Id: idprom.c,v 1.24 1999/08/31 06:54:20 davem Exp $ 1/*
2 * idprom.c: Routines to load the idprom into kernel addresses and 2 * idprom.c: Routines to load the idprom into kernel addresses and
3 * interpret the data contained within. 3 * interpret the data contained within.
4 * 4 *
diff --git a/arch/sparc/kernel/init_task.c b/arch/sparc/kernel/init_task.c
index d9d4f96360c7..8e64ebc445ef 100644
--- a/arch/sparc/kernel/init_task.c
+++ b/arch/sparc/kernel/init_task.c
@@ -9,7 +9,6 @@
9#include <asm/uaccess.h> 9#include <asm/uaccess.h>
10 10
11static struct fs_struct init_fs = INIT_FS; 11static struct fs_struct init_fs = INIT_FS;
12static struct files_struct init_files = INIT_FILES;
13static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 12static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
14static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 13static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
15struct mm_struct init_mm = INIT_MM(init_mm); 14struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/sparc/kernel/ioport.c b/arch/sparc/kernel/ioport.c
index ad0ede24ca1d..7b17522f59bf 100644
--- a/arch/sparc/kernel/ioport.c
+++ b/arch/sparc/kernel/ioport.c
@@ -1,4 +1,4 @@
1/* $Id: ioport.c,v 1.45 2001/10/30 04:54:21 davem Exp $ 1/*
2 * ioport.c: Simple io mapping allocator. 2 * ioport.c: Simple io mapping allocator.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/kernel/irq.c b/arch/sparc/kernel/irq.c
index 01a6756ba371..087390b092b0 100644
--- a/arch/sparc/kernel/irq.c
+++ b/arch/sparc/kernel/irq.c
@@ -1,4 +1,4 @@
1/* $Id: irq.c,v 1.114 2001/12/11 04:55:51 davem Exp $ 1/*
2 * arch/sparc/kernel/irq.c: Interrupt request handling routines. On the 2 * arch/sparc/kernel/irq.c: Interrupt request handling routines. On the
3 * Sparc the IRQs are basically 'cast in stone' 3 * Sparc the IRQs are basically 'cast in stone'
4 * and you are supposed to probe the prom's device 4 * and you are supposed to probe the prom's device
diff --git a/arch/sparc/kernel/led.c b/arch/sparc/kernel/led.c
index 59e9344e7a0d..adaaed4ea2fb 100644
--- a/arch/sparc/kernel/led.c
+++ b/arch/sparc/kernel/led.c
@@ -2,6 +2,7 @@
2#include <linux/module.h> 2#include <linux/module.h>
3#include <linux/init.h> 3#include <linux/init.h>
4#include <linux/proc_fs.h> 4#include <linux/proc_fs.h>
5#include <linux/seq_file.h>
5#include <linux/string.h> 6#include <linux/string.h>
6#include <linux/jiffies.h> 7#include <linux/jiffies.h>
7#include <linux/timer.h> 8#include <linux/timer.h>
@@ -45,21 +46,22 @@ static void led_blink(unsigned long timeout)
45 add_timer(&led_blink_timer); 46 add_timer(&led_blink_timer);
46} 47}
47 48
48static int led_read_proc(char *buf, char **start, off_t offset, int count, 49static int led_proc_show(struct seq_file *m, void *v)
49 int *eof, void *data)
50{ 50{
51 int len = 0;
52
53 if (get_auxio() & AUXIO_LED) 51 if (get_auxio() & AUXIO_LED)
54 len = sprintf(buf, "on\n"); 52 seq_puts(m, "on\n");
55 else 53 else
56 len = sprintf(buf, "off\n"); 54 seq_puts(m, "off\n");
55 return 0;
56}
57 57
58 return len; 58static int led_proc_open(struct inode *inode, struct file *file)
59{
60 return single_open(file, led_proc_show, NULL);
59} 61}
60 62
61static int led_write_proc(struct file *file, const char __user *buffer, 63static ssize_t led_proc_write(struct file *file, const char __user *buffer,
62 unsigned long count, void *data) 64 size_t count, loff_t *ppos)
63{ 65{
64 char *buf = NULL; 66 char *buf = NULL;
65 67
@@ -103,6 +105,15 @@ static int led_write_proc(struct file *file, const char __user *buffer,
103 return count; 105 return count;
104} 106}
105 107
108static const struct file_operations led_proc_fops = {
109 .owner = THIS_MODULE,
110 .open = led_proc_open,
111 .read = seq_read,
112 .llseek = seq_lseek,
113 .release = single_release,
114 .write = led_proc_write,
115};
116
106static struct proc_dir_entry *led; 117static struct proc_dir_entry *led;
107 118
108#define LED_VERSION "0.1" 119#define LED_VERSION "0.1"
@@ -112,12 +123,9 @@ static int __init led_init(void)
112 init_timer(&led_blink_timer); 123 init_timer(&led_blink_timer);
113 led_blink_timer.function = led_blink; 124 led_blink_timer.function = led_blink;
114 125
115 led = create_proc_entry("led", 0, NULL); 126 led = proc_create("led", 0, NULL, &led_proc_fops);
116 if (!led) 127 if (!led)
117 return -ENOMEM; 128 return -ENOMEM;
118
119 led->read_proc = led_read_proc; /* reader function */
120 led->write_proc = led_write_proc; /* writer function */
121 led->owner = THIS_MODULE; 129 led->owner = THIS_MODULE;
122 130
123 printk(KERN_INFO 131 printk(KERN_INFO
diff --git a/arch/sparc/kernel/muldiv.c b/arch/sparc/kernel/muldiv.c
index 37b9a4942232..e352239e72c8 100644
--- a/arch/sparc/kernel/muldiv.c
+++ b/arch/sparc/kernel/muldiv.c
@@ -1,4 +1,4 @@
1/* $Id: muldiv.c,v 1.5 1997/12/15 20:07:20 ecd Exp $ 1/*
2 * muldiv.c: Hardware multiply/division illegal instruction trap 2 * muldiv.c: Hardware multiply/division illegal instruction trap
3 * for sun4c/sun4 (which do not have those instructions) 3 * for sun4c/sun4 (which do not have those instructions)
4 * 4 *
diff --git a/arch/sparc/kernel/rtrap.S b/arch/sparc/kernel/rtrap.S
index b27b5b56f77a..ce30082ab266 100644
--- a/arch/sparc/kernel/rtrap.S
+++ b/arch/sparc/kernel/rtrap.S
@@ -1,4 +1,4 @@
1/* $Id: rtrap.S,v 1.58 2002/01/31 03:30:05 davem Exp $ 1/*
2 * rtrap.S: Return from Sparc trap low-level code. 2 * rtrap.S: Return from Sparc trap low-level code.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
@@ -139,7 +139,7 @@ ret_trap_userwins_ok:
139 LOAD_PT_PRIV(sp, t_psr, t_pc, t_npc) 139 LOAD_PT_PRIV(sp, t_psr, t_pc, t_npc)
140 or %t_pc, %t_npc, %g2 140 or %t_pc, %t_npc, %g2
141 andcc %g2, 0x3, %g0 141 andcc %g2, 0x3, %g0
142 sethi %hi(PSR_SYCALL), %g2 142 sethi %hi(PSR_SYSCALL), %g2
143 be 1f 143 be 1f
144 andn %t_psr, %g2, %t_psr 144 andn %t_psr, %g2, %t_psr
145 145
diff --git a/arch/sparc/kernel/setup.c b/arch/sparc/kernel/setup.c
index 8a55c4f0df84..a0ea0bc6f471 100644
--- a/arch/sparc/kernel/setup.c
+++ b/arch/sparc/kernel/setup.c
@@ -1,4 +1,4 @@
1/* $Id: setup.c,v 1.126 2001/11/13 00:49:27 davem Exp $ 1/*
2 * linux/arch/sparc/kernel/setup.c 2 * linux/arch/sparc/kernel/setup.c
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/kernel/sparc_ksyms.c b/arch/sparc/kernel/sparc_ksyms.c
index aa8ee06cf488..b23cea5ca5d1 100644
--- a/arch/sparc/kernel/sparc_ksyms.c
+++ b/arch/sparc/kernel/sparc_ksyms.c
@@ -1,4 +1,4 @@
1/* $Id: sparc_ksyms.c,v 1.107 2001/07/17 16:17:33 anton Exp $ 1/*
2 * arch/sparc/kernel/ksyms.c: Sparc specific ksyms support. 2 * arch/sparc/kernel/ksyms.c: Sparc specific ksyms support.
3 * 3 *
4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/kernel/sun4d_irq.c b/arch/sparc/kernel/sun4d_irq.c
index e0efab2a6bef..8ac5661cafff 100644
--- a/arch/sparc/kernel/sun4d_irq.c
+++ b/arch/sparc/kernel/sun4d_irq.c
@@ -1,4 +1,4 @@
1/* $Id: sun4d_irq.c,v 1.29 2001/12/11 04:55:51 davem Exp $ 1/*
2 * arch/sparc/kernel/sun4d_irq.c: 2 * arch/sparc/kernel/sun4d_irq.c:
3 * SS1000/SC2000 interrupt handling. 3 * SS1000/SC2000 interrupt handling.
4 * 4 *
diff --git a/arch/sparc/kernel/sys_sparc.c b/arch/sparc/kernel/sys_sparc.c
index e995491c4436..3c6b49a53ae8 100644
--- a/arch/sparc/kernel/sys_sparc.c
+++ b/arch/sparc/kernel/sys_sparc.c
@@ -219,7 +219,7 @@ out:
219 return err; 219 return err;
220} 220}
221 221
222int sparc_mmap_check(unsigned long addr, unsigned long len, unsigned long flags) 222int sparc_mmap_check(unsigned long addr, unsigned long len)
223{ 223{
224 if (ARCH_SUN4C_SUN4 && 224 if (ARCH_SUN4C_SUN4 &&
225 (len > 0x20000000 || 225 (len > 0x20000000 ||
@@ -295,52 +295,14 @@ asmlinkage unsigned long sparc_mremap(unsigned long addr,
295 unsigned long old_len, unsigned long new_len, 295 unsigned long old_len, unsigned long new_len,
296 unsigned long flags, unsigned long new_addr) 296 unsigned long flags, unsigned long new_addr)
297{ 297{
298 struct vm_area_struct *vma;
299 unsigned long ret = -EINVAL; 298 unsigned long ret = -EINVAL;
300 if (ARCH_SUN4C_SUN4) { 299
301 if (old_len > 0x20000000 || new_len > 0x20000000) 300 if (unlikely(sparc_mmap_check(addr, old_len)))
302 goto out; 301 goto out;
303 if (addr < 0xe0000000 && addr + old_len > 0x20000000) 302 if (unlikely(sparc_mmap_check(new_addr, new_len)))
304 goto out;
305 }
306 if (old_len > TASK_SIZE - PAGE_SIZE ||
307 new_len > TASK_SIZE - PAGE_SIZE)
308 goto out; 303 goto out;
309 down_write(&current->mm->mmap_sem); 304 down_write(&current->mm->mmap_sem);
310 if (flags & MREMAP_FIXED) {
311 if (ARCH_SUN4C_SUN4 &&
312 new_addr < 0xe0000000 &&
313 new_addr + new_len > 0x20000000)
314 goto out_sem;
315 if (new_addr + new_len > TASK_SIZE - PAGE_SIZE)
316 goto out_sem;
317 } else if ((ARCH_SUN4C_SUN4 && addr < 0xe0000000 &&
318 addr + new_len > 0x20000000) ||
319 addr + new_len > TASK_SIZE - PAGE_SIZE) {
320 unsigned long map_flags = 0;
321 struct file *file = NULL;
322
323 ret = -ENOMEM;
324 if (!(flags & MREMAP_MAYMOVE))
325 goto out_sem;
326
327 vma = find_vma(current->mm, addr);
328 if (vma) {
329 if (vma->vm_flags & VM_SHARED)
330 map_flags |= MAP_SHARED;
331 file = vma->vm_file;
332 }
333
334 new_addr = get_unmapped_area(file, addr, new_len,
335 vma ? vma->vm_pgoff : 0,
336 map_flags);
337 ret = new_addr;
338 if (new_addr & ~PAGE_MASK)
339 goto out_sem;
340 flags |= MREMAP_FIXED;
341 }
342 ret = do_mremap(addr, old_len, new_len, flags, new_addr); 305 ret = do_mremap(addr, old_len, new_len, flags, new_addr);
343out_sem:
344 up_write(&current->mm->mmap_sem); 306 up_write(&current->mm->mmap_sem);
345out: 307out:
346 return ret; 308 return ret;
diff --git a/arch/sparc/kernel/trampoline.S b/arch/sparc/kernel/trampoline.S
index 2dcdaa1fd8cd..356c56aebc62 100644
--- a/arch/sparc/kernel/trampoline.S
+++ b/arch/sparc/kernel/trampoline.S
@@ -1,4 +1,4 @@
1/* $Id: trampoline.S,v 1.14 2002/01/11 08:45:38 davem Exp $ 1/*
2 * trampoline.S: SMP cpu boot-up trampoline code. 2 * trampoline.S: SMP cpu boot-up trampoline code.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/kernel/traps.c b/arch/sparc/kernel/traps.c
index d404e7994527..978e9d85949e 100644
--- a/arch/sparc/kernel/traps.c
+++ b/arch/sparc/kernel/traps.c
@@ -1,4 +1,4 @@
1/* $Id: traps.c,v 1.64 2000/09/03 15:00:49 anton Exp $ 1/*
2 * arch/sparc/kernel/traps.c 2 * arch/sparc/kernel/traps.c
3 * 3 *
4 * Copyright 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/kernel/unaligned.c b/arch/sparc/kernel/unaligned.c
index 33857be16661..c2a28c5ad650 100644
--- a/arch/sparc/kernel/unaligned.c
+++ b/arch/sparc/kernel/unaligned.c
@@ -1,4 +1,4 @@
1/* $Id: unaligned.c,v 1.23 2001/12/21 00:54:31 davem Exp $ 1/*
2 * unaligned.c: Unaligned load/store trap handling with special 2 * unaligned.c: Unaligned load/store trap handling with special
3 * cases for the kernel to do them more quickly. 3 * cases for the kernel to do them more quickly.
4 * 4 *
diff --git a/arch/sparc/kernel/wof.S b/arch/sparc/kernel/wof.S
index 083b1215d515..4bce38dfe3c5 100644
--- a/arch/sparc/kernel/wof.S
+++ b/arch/sparc/kernel/wof.S
@@ -1,4 +1,4 @@
1/* $Id: wof.S,v 1.40 2000/01/08 16:38:18 anton Exp $ 1/*
2 * wof.S: Sparc window overflow handler. 2 * wof.S: Sparc window overflow handler.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/kernel/wuf.S b/arch/sparc/kernel/wuf.S
index d1a266bf103a..82e5145b0f77 100644
--- a/arch/sparc/kernel/wuf.S
+++ b/arch/sparc/kernel/wuf.S
@@ -1,4 +1,4 @@
1/* $Id: wuf.S,v 1.39 2000/01/08 16:38:18 anton Exp $ 1/*
2 * wuf.S: Window underflow trap handler for the Sparc. 2 * wuf.S: Window underflow trap handler for the Sparc.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller 4 * Copyright (C) 1995 David S. Miller
diff --git a/arch/sparc/lib/Makefile b/arch/sparc/lib/Makefile
index 76effdbea075..6e303e10c3b9 100644
--- a/arch/sparc/lib/Makefile
+++ b/arch/sparc/lib/Makefile
@@ -1,4 +1,3 @@
1# $Id: Makefile,v 1.35 2000/12/15 00:41:18 davem Exp $
2# Makefile for Sparc library files.. 1# Makefile for Sparc library files..
3# 2#
4 3
diff --git a/arch/sparc/lib/ashldi3.S b/arch/sparc/lib/ashldi3.S
index 52418a0cb3dd..17912e608716 100644
--- a/arch/sparc/lib/ashldi3.S
+++ b/arch/sparc/lib/ashldi3.S
@@ -1,4 +1,4 @@
1/* $Id: ashldi3.S,v 1.2 1999/11/19 04:11:46 davem Exp $ 1/*
2 * ashldi3.S: GCC emits these for certain drivers playing 2 * ashldi3.S: GCC emits these for certain drivers playing
3 * with long longs. 3 * with long longs.
4 * 4 *
diff --git a/arch/sparc/lib/ashrdi3.S b/arch/sparc/lib/ashrdi3.S
index 2848237598a4..85398fd6dcc9 100644
--- a/arch/sparc/lib/ashrdi3.S
+++ b/arch/sparc/lib/ashrdi3.S
@@ -1,4 +1,4 @@
1/* $Id: ashrdi3.S,v 1.4 1999/11/19 04:11:49 davem Exp $ 1/*
2 * ashrdi3.S: The filesystem code creates all kinds of references to 2 * ashrdi3.S: The filesystem code creates all kinds of references to
3 * this little routine on the sparc with gcc. 3 * this little routine on the sparc with gcc.
4 * 4 *
diff --git a/arch/sparc/lib/blockops.S b/arch/sparc/lib/blockops.S
index a7c7ffaa4a94..804be87f9a42 100644
--- a/arch/sparc/lib/blockops.S
+++ b/arch/sparc/lib/blockops.S
@@ -1,4 +1,4 @@
1/* $Id: blockops.S,v 1.8 1998/01/30 10:58:44 jj Exp $ 1/*
2 * blockops.S: Common block zero optimized routines. 2 * blockops.S: Common block zero optimized routines.
3 * 3 *
4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/lib/locks.S b/arch/sparc/lib/locks.S
index b1df55cb2215..64f53f2b673d 100644
--- a/arch/sparc/lib/locks.S
+++ b/arch/sparc/lib/locks.S
@@ -1,4 +1,4 @@
1/* $Id: locks.S,v 1.16 2000/02/26 11:02:47 anton Exp $ 1/*
2 * locks.S: SMP low-level lock primitives on Sparc. 2 * locks.S: SMP low-level lock primitives on Sparc.
3 * 3 *
4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/lib/lshrdi3.S b/arch/sparc/lib/lshrdi3.S
index 35abf5b2bd15..47a1354c1602 100644
--- a/arch/sparc/lib/lshrdi3.S
+++ b/arch/sparc/lib/lshrdi3.S
@@ -1,4 +1,3 @@
1/* $Id: lshrdi3.S,v 1.1 1999/03/21 06:37:45 davem Exp $ */
2 1
3 .globl __lshrdi3 2 .globl __lshrdi3
4__lshrdi3: 3__lshrdi3:
diff --git a/arch/sparc/lib/memscan.S b/arch/sparc/lib/memscan.S
index 28e78ff090ac..4ff1657dfc24 100644
--- a/arch/sparc/lib/memscan.S
+++ b/arch/sparc/lib/memscan.S
@@ -1,4 +1,4 @@
1/* $Id: memscan.S,v 1.4 1996/09/08 02:01:20 davem Exp $ 1/*
2 * memscan.S: Optimized memscan for the Sparc. 2 * memscan.S: Optimized memscan for the Sparc.
3 * 3 *
4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/lib/mul.S b/arch/sparc/lib/mul.S
index da693560d878..c45470d0b0ce 100644
--- a/arch/sparc/lib/mul.S
+++ b/arch/sparc/lib/mul.S
@@ -1,4 +1,4 @@
1/* $Id: mul.S,v 1.4 1996/09/30 02:22:32 davem Exp $ 1/*
2 * mul.S: This routine was taken from glibc-1.09 and is covered 2 * mul.S: This routine was taken from glibc-1.09 and is covered
3 * by the GNU Library General Public License Version 2. 3 * by the GNU Library General Public License Version 2.
4 */ 4 */
diff --git a/arch/sparc/lib/rem.S b/arch/sparc/lib/rem.S
index bf015a90d07e..42fb86252815 100644
--- a/arch/sparc/lib/rem.S
+++ b/arch/sparc/lib/rem.S
@@ -1,4 +1,4 @@
1/* $Id: rem.S,v 1.7 1996/09/30 02:22:34 davem Exp $ 1/*
2 * rem.S: This routine was taken from glibc-1.09 and is covered 2 * rem.S: This routine was taken from glibc-1.09 and is covered
3 * by the GNU Library General Public License Version 2. 3 * by the GNU Library General Public License Version 2.
4 */ 4 */
diff --git a/arch/sparc/lib/rwsem.S b/arch/sparc/lib/rwsem.S
index f406b1f22791..9675268e7fde 100644
--- a/arch/sparc/lib/rwsem.S
+++ b/arch/sparc/lib/rwsem.S
@@ -1,4 +1,4 @@
1/* $Id: rwsem.S,v 1.5 2000/05/09 17:40:13 davem Exp $ 1/*
2 * Assembly part of rw semaphores. 2 * Assembly part of rw semaphores.
3 * 3 *
4 * Copyright (C) 1999 Jakub Jelinek (jakub@redhat.com) 4 * Copyright (C) 1999 Jakub Jelinek (jakub@redhat.com)
diff --git a/arch/sparc/lib/sdiv.S b/arch/sparc/lib/sdiv.S
index af9451629d0b..f0a0d4e4db78 100644
--- a/arch/sparc/lib/sdiv.S
+++ b/arch/sparc/lib/sdiv.S
@@ -1,4 +1,4 @@
1/* $Id: sdiv.S,v 1.6 1996/10/02 17:37:00 davem Exp $ 1/*
2 * sdiv.S: This routine was taken from glibc-1.09 and is covered 2 * sdiv.S: This routine was taken from glibc-1.09 and is covered
3 * by the GNU Library General Public License Version 2. 3 * by the GNU Library General Public License Version 2.
4 */ 4 */
diff --git a/arch/sparc/lib/strncmp.S b/arch/sparc/lib/strncmp.S
index 615626805d4b..494ec664537a 100644
--- a/arch/sparc/lib/strncmp.S
+++ b/arch/sparc/lib/strncmp.S
@@ -1,4 +1,4 @@
1/* $Id: strncmp.S,v 1.2 1996/09/09 02:47:20 davem Exp $ 1/*
2 * strncmp.S: Hand optimized Sparc assembly of GCC output from GNU libc 2 * strncmp.S: Hand optimized Sparc assembly of GCC output from GNU libc
3 * generic strncmp routine. 3 * generic strncmp routine.
4 */ 4 */
diff --git a/arch/sparc/lib/udiv.S b/arch/sparc/lib/udiv.S
index 169e01da6715..2101405bdfcb 100644
--- a/arch/sparc/lib/udiv.S
+++ b/arch/sparc/lib/udiv.S
@@ -1,4 +1,4 @@
1/* $Id: udiv.S,v 1.4 1996/09/30 02:22:38 davem Exp $ 1/*
2 * udiv.S: This routine was taken from glibc-1.09 and is covered 2 * udiv.S: This routine was taken from glibc-1.09 and is covered
3 * by the GNU Library General Public License Version 2. 3 * by the GNU Library General Public License Version 2.
4 */ 4 */
diff --git a/arch/sparc/lib/umul.S b/arch/sparc/lib/umul.S
index f0e5b20a2536..1f36ae682529 100644
--- a/arch/sparc/lib/umul.S
+++ b/arch/sparc/lib/umul.S
@@ -1,4 +1,4 @@
1/* $Id: umul.S,v 1.4 1996/09/30 02:22:39 davem Exp $ 1/*
2 * umul.S: This routine was taken from glibc-1.09 and is covered 2 * umul.S: This routine was taken from glibc-1.09 and is covered
3 * by the GNU Library General Public License Version 2. 3 * by the GNU Library General Public License Version 2.
4 */ 4 */
diff --git a/arch/sparc/lib/urem.S b/arch/sparc/lib/urem.S
index 6b92bdc8b04c..77123eb83c44 100644
--- a/arch/sparc/lib/urem.S
+++ b/arch/sparc/lib/urem.S
@@ -1,4 +1,4 @@
1/* $Id: urem.S,v 1.4 1996/09/30 02:22:42 davem Exp $ 1/*
2 * urem.S: This routine was taken from glibc-1.09 and is covered 2 * urem.S: This routine was taken from glibc-1.09 and is covered
3 * by the GNU Library General Public License Version 2. 3 * by the GNU Library General Public License Version 2.
4 */ 4 */
diff --git a/arch/sparc/math-emu/ashldi3.S b/arch/sparc/math-emu/ashldi3.S
index eab1d097296a..7230ff5c7aa1 100644
--- a/arch/sparc/math-emu/ashldi3.S
+++ b/arch/sparc/math-emu/ashldi3.S
@@ -1,4 +1,4 @@
1/* $Id: ashldi3.S,v 1.1 1998/04/06 16:09:28 jj Exp $ 1/*
2 * ashldi3.S: Math-emu code creates all kinds of references to 2 * ashldi3.S: Math-emu code creates all kinds of references to
3 * this little routine on the sparc with gcc. 3 * this little routine on the sparc with gcc.
4 * 4 *
diff --git a/arch/sparc/mm/Makefile b/arch/sparc/mm/Makefile
index 16eeba4b991a..109c8b22cb38 100644
--- a/arch/sparc/mm/Makefile
+++ b/arch/sparc/mm/Makefile
@@ -1,4 +1,3 @@
1# $Id: Makefile,v 1.38 2000/12/15 00:41:22 davem Exp $
2# Makefile for the linux Sparc-specific parts of the memory manager. 1# Makefile for the linux Sparc-specific parts of the memory manager.
3# 2#
4 3
diff --git a/arch/sparc/mm/fault.c b/arch/sparc/mm/fault.c
index abd50795a7b6..0a3cd8f6cfe4 100644
--- a/arch/sparc/mm/fault.c
+++ b/arch/sparc/mm/fault.c
@@ -1,4 +1,4 @@
1/* $Id: fault.c,v 1.122 2001/11/17 07:19:26 davem Exp $ 1/*
2 * fault.c: Page fault handlers for the Sparc. 2 * fault.c: Page fault handlers for the Sparc.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/mm/generic.c b/arch/sparc/mm/generic.c
index 1ef7fa03fefe..a289261da9fd 100644
--- a/arch/sparc/mm/generic.c
+++ b/arch/sparc/mm/generic.c
@@ -1,4 +1,4 @@
1/* $Id: generic.c,v 1.14 2001/12/21 04:56:15 davem Exp $ 1/*
2 * generic.c: Generic Sparc mm routines that are not dependent upon 2 * generic.c: Generic Sparc mm routines that are not dependent upon
3 * MMU type but are Sparc specific. 3 * MMU type but are Sparc specific.
4 * 4 *
diff --git a/arch/sparc/mm/hypersparc.S b/arch/sparc/mm/hypersparc.S
index d29cc24c5bba..44aad32eeb4e 100644
--- a/arch/sparc/mm/hypersparc.S
+++ b/arch/sparc/mm/hypersparc.S
@@ -1,4 +1,4 @@
1/* $Id: hypersparc.S,v 1.18 2001/12/21 04:56:15 davem Exp $ 1/*
2 * hypersparc.S: High speed Hypersparc mmu/cache operations. 2 * hypersparc.S: High speed Hypersparc mmu/cache operations.
3 * 3 *
4 * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/mm/init.c b/arch/sparc/mm/init.c
index b89837accc88..7794ecb896e3 100644
--- a/arch/sparc/mm/init.c
+++ b/arch/sparc/mm/init.c
@@ -1,4 +1,4 @@
1/* $Id: init.c,v 1.103 2001/11/19 19:03:08 davem Exp $ 1/*
2 * linux/arch/sparc/mm/init.c 2 * linux/arch/sparc/mm/init.c
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/mm/io-unit.c b/arch/sparc/mm/io-unit.c
index b86dfce8eee4..f167835db3df 100644
--- a/arch/sparc/mm/io-unit.c
+++ b/arch/sparc/mm/io-unit.c
@@ -1,4 +1,4 @@
1/* $Id: io-unit.c,v 1.24 2001/12/17 07:05:09 davem Exp $ 1/*
2 * io-unit.c: IO-UNIT specific routines for memory management. 2 * io-unit.c: IO-UNIT specific routines for memory management.
3 * 3 *
4 * Copyright (C) 1997,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz) 4 * Copyright (C) 1997,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
diff --git a/arch/sparc/mm/loadmmu.c b/arch/sparc/mm/loadmmu.c
index 2d9cd65160a4..652be05acbea 100644
--- a/arch/sparc/mm/loadmmu.c
+++ b/arch/sparc/mm/loadmmu.c
@@ -1,4 +1,4 @@
1/* $Id: loadmmu.c,v 1.56 2000/02/08 20:24:21 davem Exp $ 1/*
2 * loadmmu.c: This code loads up all the mm function pointers once the 2 * loadmmu.c: This code loads up all the mm function pointers once the
3 * machine type has been determined. It also sets the static 3 * machine type has been determined. It also sets the static
4 * mmu values such as PAGE_NONE, etc. 4 * mmu values such as PAGE_NONE, etc.
diff --git a/arch/sparc/mm/nosrmmu.c b/arch/sparc/mm/nosrmmu.c
index 9e215659697e..3701f70fc30a 100644
--- a/arch/sparc/mm/nosrmmu.c
+++ b/arch/sparc/mm/nosrmmu.c
@@ -1,4 +1,4 @@
1/* $Id: nosrmmu.c,v 1.5 1999/11/19 04:11:54 davem Exp $ 1/*
2 * nosrmmu.c: This file is a bunch of dummies for sun4 compiles, 2 * nosrmmu.c: This file is a bunch of dummies for sun4 compiles,
3 * so that it does not need srmmu and avoid ifdefs. 3 * so that it does not need srmmu and avoid ifdefs.
4 * 4 *
diff --git a/arch/sparc/mm/nosun4c.c b/arch/sparc/mm/nosun4c.c
index ea2e2105341d..196263f895b7 100644
--- a/arch/sparc/mm/nosun4c.c
+++ b/arch/sparc/mm/nosun4c.c
@@ -1,4 +1,4 @@
1/* $Id: nosun4c.c,v 1.3 2000/02/14 04:52:36 jj Exp $ 1/*
2 * nosun4c.c: This file is a bunch of dummies for SMP compiles, 2 * nosun4c.c: This file is a bunch of dummies for SMP compiles,
3 * so that it does not need sun4c and avoid ifdefs. 3 * so that it does not need sun4c and avoid ifdefs.
4 * 4 *
diff --git a/arch/sparc/mm/swift.S b/arch/sparc/mm/swift.S
index 9f4cd396a0fa..c801c3953a00 100644
--- a/arch/sparc/mm/swift.S
+++ b/arch/sparc/mm/swift.S
@@ -1,4 +1,4 @@
1/* $Id: swift.S,v 1.9 2002/01/08 11:11:59 davem Exp $ 1/*
2 * swift.S: MicroSparc-II mmu/cache operations. 2 * swift.S: MicroSparc-II mmu/cache operations.
3 * 3 *
4 * Copyright (C) 1999 David S. Miller (davem@redhat.com) 4 * Copyright (C) 1999 David S. Miller (davem@redhat.com)
diff --git a/arch/sparc/mm/tsunami.S b/arch/sparc/mm/tsunami.S
index 4988e6a310bb..db0d6de33a87 100644
--- a/arch/sparc/mm/tsunami.S
+++ b/arch/sparc/mm/tsunami.S
@@ -1,4 +1,4 @@
1/* $Id: tsunami.S,v 1.7 2001/12/21 04:56:15 davem Exp $ 1/*
2 * tsunami.S: High speed MicroSparc-I mmu/cache operations. 2 * tsunami.S: High speed MicroSparc-I mmu/cache operations.
3 * 3 *
4 * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/mm/viking.S b/arch/sparc/mm/viking.S
index 754c622548a5..6dfcc13d3100 100644
--- a/arch/sparc/mm/viking.S
+++ b/arch/sparc/mm/viking.S
@@ -1,4 +1,4 @@
1/* $Id: viking.S,v 1.19 2001/12/21 04:56:15 davem Exp $ 1/*
2 * viking.S: High speed Viking cache/mmu operations 2 * viking.S: High speed Viking cache/mmu operations
3 * 3 *
4 * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be) 4 * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be)
diff --git a/arch/sparc/prom/Makefile b/arch/sparc/prom/Makefile
index 2b217ee40703..7f5eacfcfbcf 100644
--- a/arch/sparc/prom/Makefile
+++ b/arch/sparc/prom/Makefile
@@ -1,4 +1,3 @@
1# $Id: Makefile,v 1.8 2000/12/15 00:41:22 davem Exp $
2# Makefile for the Sun Boot PROM interface library under 1# Makefile for the Sun Boot PROM interface library under
3# Linux. 2# Linux.
4# 3#
diff --git a/arch/sparc/prom/bootstr.c b/arch/sparc/prom/bootstr.c
index cfdeac2788d1..5a35c768ff7c 100644
--- a/arch/sparc/prom/bootstr.c
+++ b/arch/sparc/prom/bootstr.c
@@ -1,4 +1,4 @@
1/* $Id: bootstr.c,v 1.20 2000/02/08 20:24:23 davem Exp $ 1/*
2 * bootstr.c: Boot string/argument acquisition from the PROM. 2 * bootstr.c: Boot string/argument acquisition from the PROM.
3 * 3 *
4 * Copyright(C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright(C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/prom/console.c b/arch/sparc/prom/console.c
index 2a007a784415..790057a34616 100644
--- a/arch/sparc/prom/console.c
+++ b/arch/sparc/prom/console.c
@@ -1,4 +1,4 @@
1/* $Id: console.c,v 1.25 2001/10/30 04:54:22 davem Exp $ 1/*
2 * console.c: Routines that deal with sending and receiving IO 2 * console.c: Routines that deal with sending and receiving IO
3 * to/from the current console device using the PROM. 3 * to/from the current console device using the PROM.
4 * 4 *
diff --git a/arch/sparc/prom/devmap.c b/arch/sparc/prom/devmap.c
index eb12073578ad..1e517915b0df 100644
--- a/arch/sparc/prom/devmap.c
+++ b/arch/sparc/prom/devmap.c
@@ -1,4 +1,4 @@
1/* $Id: devmap.c,v 1.7 2000/08/26 02:38:03 anton Exp $ 1/*
2 * promdevmap.c: Map device/IO areas to virtual addresses. 2 * promdevmap.c: Map device/IO areas to virtual addresses.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/prom/devops.c b/arch/sparc/prom/devops.c
index 61919b54f6cc..9f1a95c91ad1 100644
--- a/arch/sparc/prom/devops.c
+++ b/arch/sparc/prom/devops.c
@@ -1,4 +1,4 @@
1/* $Id: devops.c,v 1.13 2000/08/26 02:38:03 anton Exp $ 1/*
2 * devops.c: Device operations using the PROM. 2 * devops.c: Device operations using the PROM.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/prom/init.c b/arch/sparc/prom/init.c
index 2fa3a474e3a2..729f87066945 100644
--- a/arch/sparc/prom/init.c
+++ b/arch/sparc/prom/init.c
@@ -1,4 +1,4 @@
1/* $Id: init.c,v 1.14 2000/01/29 01:09:12 anton Exp $ 1/*
2 * init.c: Initialize internal variables used by the PROM 2 * init.c: Initialize internal variables used by the PROM
3 * library functions. 3 * library functions.
4 * 4 *
diff --git a/arch/sparc/prom/misc.c b/arch/sparc/prom/misc.c
index d9fb3af41c1f..49b5057b9601 100644
--- a/arch/sparc/prom/misc.c
+++ b/arch/sparc/prom/misc.c
@@ -1,4 +1,4 @@
1/* $Id: misc.c,v 1.18 2000/08/26 02:38:03 anton Exp $ 1/*
2 * misc.c: Miscellaneous prom functions that don't belong 2 * misc.c: Miscellaneous prom functions that don't belong
3 * anywhere else. 3 * anywhere else.
4 * 4 *
diff --git a/arch/sparc/prom/mp.c b/arch/sparc/prom/mp.c
index 92fe3739fdb8..4c4dc79f65af 100644
--- a/arch/sparc/prom/mp.c
+++ b/arch/sparc/prom/mp.c
@@ -1,4 +1,4 @@
1/* $Id: mp.c,v 1.12 2000/08/26 02:38:03 anton Exp $ 1/*
2 * mp.c: OpenBoot Prom Multiprocessor support routines. Don't call 2 * mp.c: OpenBoot Prom Multiprocessor support routines. Don't call
3 * these on a UP or else you will halt and catch fire. ;) 3 * these on a UP or else you will halt and catch fire. ;)
4 * 4 *
diff --git a/arch/sparc/prom/palloc.c b/arch/sparc/prom/palloc.c
index 84ce8bc54473..20be339cc2ce 100644
--- a/arch/sparc/prom/palloc.c
+++ b/arch/sparc/prom/palloc.c
@@ -1,4 +1,4 @@
1/* $Id: palloc.c,v 1.4 1996/04/25 06:09:48 davem Exp $ 1/*
2 * palloc.c: Memory allocation from the Sun PROM. 2 * palloc.c: Memory allocation from the Sun PROM.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/prom/ranges.c b/arch/sparc/prom/ranges.c
index a2920323c900..f9b7def35f6e 100644
--- a/arch/sparc/prom/ranges.c
+++ b/arch/sparc/prom/ranges.c
@@ -1,4 +1,4 @@
1/* $Id: ranges.c,v 1.15 2001/12/19 00:29:51 davem Exp $ 1/*
2 * ranges.c: Handle ranges in newer proms for obio/sbus. 2 * ranges.c: Handle ranges in newer proms for obio/sbus.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc/prom/segment.c b/arch/sparc/prom/segment.c
index 09d6460165ab..04fd03a7f926 100644
--- a/arch/sparc/prom/segment.c
+++ b/arch/sparc/prom/segment.c
@@ -1,4 +1,4 @@
1/* $Id: segment.c,v 1.7 2000/08/26 02:38:03 anton Exp $ 1/*
2 * segment.c: Prom routine to map segments in other contexts before 2 * segment.c: Prom routine to map segments in other contexts before
3 * a standalone is completely mapped. This is for sun4 and 3 * a standalone is completely mapped. This is for sun4 and
4 * sun4c architectures only. 4 * sun4c architectures only.
diff --git a/arch/sparc/prom/tree.c b/arch/sparc/prom/tree.c
index 5ec246573a98..f228fe057b24 100644
--- a/arch/sparc/prom/tree.c
+++ b/arch/sparc/prom/tree.c
@@ -1,4 +1,4 @@
1/* $Id: tree.c,v 1.26 2000/08/26 02:38:03 anton Exp $ 1/*
2 * tree.c: Basic device tree traversal/scanning for the Linux 2 * tree.c: Basic device tree traversal/scanning for the Linux
3 * prom library. 3 * prom library.
4 * 4 *
diff --git a/arch/sparc64/Makefile b/arch/sparc64/Makefile
index 9cb75c852b45..4b8f2b084c21 100644
--- a/arch/sparc64/Makefile
+++ b/arch/sparc64/Makefile
@@ -1,4 +1,3 @@
1# $Id: Makefile,v 1.52 2002/02/09 19:49:31 davem Exp $
2# sparc64/Makefile 1# sparc64/Makefile
3# 2#
4# Makefile for the architecture dependent flags and dependencies on the 3# Makefile for the architecture dependent flags and dependencies on the
diff --git a/arch/sparc64/boot/Makefile b/arch/sparc64/boot/Makefile
index 6968a6da57da..0458b5244f09 100644
--- a/arch/sparc64/boot/Makefile
+++ b/arch/sparc64/boot/Makefile
@@ -1,4 +1,3 @@
1# $Id: Makefile,v 1.4 1997/12/15 20:08:56 ecd Exp $
2# Makefile for the Sparc64 boot stuff. 1# Makefile for the Sparc64 boot stuff.
3# 2#
4# Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 3# Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc64/boot/piggyback.c b/arch/sparc64/boot/piggyback.c
index 36f907408c60..de364bfed0bb 100644
--- a/arch/sparc64/boot/piggyback.c
+++ b/arch/sparc64/boot/piggyback.c
@@ -1,4 +1,4 @@
1/* $Id: piggyback.c,v 1.2 2000/09/19 14:34:39 anton Exp $ 1/*
2 Simple utility to make a single-image install kernel with initial ramdisk 2 Simple utility to make a single-image install kernel with initial ramdisk
3 for Sparc64 tftpbooting without need to set up nfs. 3 for Sparc64 tftpbooting without need to set up nfs.
4 4
diff --git a/arch/sparc64/defconfig b/arch/sparc64/defconfig
index aff93c9d13f4..76eb832527f2 100644
--- a/arch/sparc64/defconfig
+++ b/arch/sparc64/defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.25 3# Linux kernel version: 2.6.26-rc2
4# Sat Apr 26 03:11:06 2008 4# Fri May 16 13:36:07 2008
5# 5#
6CONFIG_SPARC=y 6CONFIG_SPARC=y
7CONFIG_SPARC64=y 7CONFIG_SPARC64=y
@@ -74,6 +74,7 @@ CONFIG_SYSCTL=y
74# CONFIG_EMBEDDED is not set 74# CONFIG_EMBEDDED is not set
75CONFIG_UID16=y 75CONFIG_UID16=y
76CONFIG_SYSCTL_SYSCALL=y 76CONFIG_SYSCTL_SYSCALL=y
77CONFIG_SYSCTL_SYSCALL_CHECK=y
77CONFIG_KALLSYMS=y 78CONFIG_KALLSYMS=y
78# CONFIG_KALLSYMS_ALL is not set 79# CONFIG_KALLSYMS_ALL is not set
79# CONFIG_KALLSYMS_EXTRA_PASS is not set 80# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -103,12 +104,14 @@ CONFIG_KPROBES=y
103CONFIG_KRETPROBES=y 104CONFIG_KRETPROBES=y
104CONFIG_HAVE_KPROBES=y 105CONFIG_HAVE_KPROBES=y
105CONFIG_HAVE_KRETPROBES=y 106CONFIG_HAVE_KRETPROBES=y
107# CONFIG_HAVE_DMA_ATTRS is not set
106CONFIG_PROC_PAGE_MONITOR=y 108CONFIG_PROC_PAGE_MONITOR=y
107CONFIG_SLABINFO=y 109CONFIG_SLABINFO=y
108CONFIG_RT_MUTEXES=y 110CONFIG_RT_MUTEXES=y
109# CONFIG_TINY_SHMEM is not set 111# CONFIG_TINY_SHMEM is not set
110CONFIG_BASE_SMALL=0 112CONFIG_BASE_SMALL=0
111CONFIG_MODULES=y 113CONFIG_MODULES=y
114# CONFIG_MODULE_FORCE_LOAD is not set
112CONFIG_MODULE_UNLOAD=y 115CONFIG_MODULE_UNLOAD=y
113CONFIG_MODULE_FORCE_UNLOAD=y 116CONFIG_MODULE_FORCE_UNLOAD=y
114CONFIG_MODVERSIONS=y 117CONFIG_MODVERSIONS=y
@@ -170,6 +173,7 @@ CONFIG_HAVE_MEMORY_PRESENT=y
170CONFIG_SPARSEMEM_EXTREME=y 173CONFIG_SPARSEMEM_EXTREME=y
171CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y 174CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
172CONFIG_SPARSEMEM_VMEMMAP=y 175CONFIG_SPARSEMEM_VMEMMAP=y
176CONFIG_PAGEFLAGS_EXTENDED=y
173CONFIG_SPLIT_PTLOCK_CPUS=4 177CONFIG_SPLIT_PTLOCK_CPUS=4
174CONFIG_MIGRATION=y 178CONFIG_MIGRATION=y
175CONFIG_RESOURCES_64BIT=y 179CONFIG_RESOURCES_64BIT=y
@@ -402,7 +406,6 @@ CONFIG_IDEPCI_PCIBUS_ORDER=y
402CONFIG_BLK_DEV_IDEDMA_PCI=y 406CONFIG_BLK_DEV_IDEDMA_PCI=y
403# CONFIG_BLK_DEV_AEC62XX is not set 407# CONFIG_BLK_DEV_AEC62XX is not set
404CONFIG_BLK_DEV_ALI15X3=y 408CONFIG_BLK_DEV_ALI15X3=y
405# CONFIG_WDC_ALI15X3 is not set
406# CONFIG_BLK_DEV_AMD74XX is not set 409# CONFIG_BLK_DEV_AMD74XX is not set
407# CONFIG_BLK_DEV_CMD64X is not set 410# CONFIG_BLK_DEV_CMD64X is not set
408# CONFIG_BLK_DEV_TRIFLEX is not set 411# CONFIG_BLK_DEV_TRIFLEX is not set
@@ -609,6 +612,7 @@ CONFIG_NIU=m
609# CONFIG_MLX4_CORE is not set 612# CONFIG_MLX4_CORE is not set
610# CONFIG_TEHUTI is not set 613# CONFIG_TEHUTI is not set
611# CONFIG_BNX2X is not set 614# CONFIG_BNX2X is not set
615# CONFIG_SFC is not set
612# CONFIG_TR is not set 616# CONFIG_TR is not set
613 617
614# 618#
@@ -717,6 +721,7 @@ CONFIG_VT=y
717CONFIG_VT_CONSOLE=y 721CONFIG_VT_CONSOLE=y
718CONFIG_HW_CONSOLE=y 722CONFIG_HW_CONSOLE=y
719# CONFIG_VT_HW_CONSOLE_BINDING is not set 723# CONFIG_VT_HW_CONSOLE_BINDING is not set
724# CONFIG_DEVKMEM is not set
720# CONFIG_SERIAL_NONSTANDARD is not set 725# CONFIG_SERIAL_NONSTANDARD is not set
721# CONFIG_NOZOMI is not set 726# CONFIG_NOZOMI is not set
722 727
@@ -793,12 +798,7 @@ CONFIG_I2C_ALGOBIT=y
793# CONFIG_I2C_DEBUG_ALGO is not set 798# CONFIG_I2C_DEBUG_ALGO is not set
794# CONFIG_I2C_DEBUG_BUS is not set 799# CONFIG_I2C_DEBUG_BUS is not set
795# CONFIG_I2C_DEBUG_CHIP is not set 800# CONFIG_I2C_DEBUG_CHIP is not set
796
797#
798# SPI support
799#
800# CONFIG_SPI is not set 801# CONFIG_SPI is not set
801# CONFIG_SPI_MASTER is not set
802# CONFIG_W1 is not set 802# CONFIG_W1 is not set
803# CONFIG_POWER_SUPPLY is not set 803# CONFIG_POWER_SUPPLY is not set
804CONFIG_HWMON=y 804CONFIG_HWMON=y
@@ -873,8 +873,17 @@ CONFIG_SSB_POSSIBLE=y
873# 873#
874# Multimedia devices 874# Multimedia devices
875# 875#
876
877#
878# Multimedia core support
879#
876# CONFIG_VIDEO_DEV is not set 880# CONFIG_VIDEO_DEV is not set
877# CONFIG_DVB_CORE is not set 881# CONFIG_DVB_CORE is not set
882# CONFIG_VIDEO_MEDIA is not set
883
884#
885# Multimedia drivers
886#
878# CONFIG_DAB is not set 887# CONFIG_DAB is not set
879 888
880# 889#
@@ -893,8 +902,8 @@ CONFIG_FB_CFB_IMAGEBLIT=y
893# CONFIG_FB_SYS_FILLRECT is not set 902# CONFIG_FB_SYS_FILLRECT is not set
894# CONFIG_FB_SYS_COPYAREA is not set 903# CONFIG_FB_SYS_COPYAREA is not set
895# CONFIG_FB_SYS_IMAGEBLIT is not set 904# CONFIG_FB_SYS_IMAGEBLIT is not set
905# CONFIG_FB_FOREIGN_ENDIAN is not set
896# CONFIG_FB_SYS_FOPS is not set 906# CONFIG_FB_SYS_FOPS is not set
897CONFIG_FB_DEFERRED_IO=y
898# CONFIG_FB_SVGALIB is not set 907# CONFIG_FB_SVGALIB is not set
899# CONFIG_FB_MACMODES is not set 908# CONFIG_FB_MACMODES is not set
900# CONFIG_FB_BACKLIGHT is not set 909# CONFIG_FB_BACKLIGHT is not set
@@ -1100,6 +1109,10 @@ CONFIG_SND_SUN_CS4231=m
1100# 1109#
1101 1110
1102# 1111#
1112# SoC Audio for the Texas Instruments OMAP
1113#
1114
1115#
1103# Open Sound System 1116# Open Sound System
1104# 1117#
1105# CONFIG_SOUND_PRIME is not set 1118# CONFIG_SOUND_PRIME is not set
@@ -1135,10 +1148,12 @@ CONFIG_USB_DEVICEFS=y
1135# 1148#
1136# USB Host Controller Drivers 1149# USB Host Controller Drivers
1137# 1150#
1151# CONFIG_USB_C67X00_HCD is not set
1138CONFIG_USB_EHCI_HCD=m 1152CONFIG_USB_EHCI_HCD=m
1139# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 1153# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1140# CONFIG_USB_EHCI_TT_NEWSCHED is not set 1154# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1141# CONFIG_USB_ISP116X_HCD is not set 1155# CONFIG_USB_ISP116X_HCD is not set
1156# CONFIG_USB_ISP1760_HCD is not set
1142CONFIG_USB_OHCI_HCD=y 1157CONFIG_USB_OHCI_HCD=y
1143# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 1158# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
1144# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set 1159# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
@@ -1173,6 +1188,7 @@ CONFIG_USB_STORAGE=m
1173# CONFIG_USB_STORAGE_ALAUDA is not set 1188# CONFIG_USB_STORAGE_ALAUDA is not set
1174# CONFIG_USB_STORAGE_ONETOUCH is not set 1189# CONFIG_USB_STORAGE_ONETOUCH is not set
1175# CONFIG_USB_STORAGE_KARMA is not set 1190# CONFIG_USB_STORAGE_KARMA is not set
1191# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
1176# CONFIG_USB_LIBUSUAL is not set 1192# CONFIG_USB_LIBUSUAL is not set
1177 1193
1178# 1194#
@@ -1214,6 +1230,7 @@ CONFIG_USB_STORAGE=m
1214# CONFIG_MMC is not set 1230# CONFIG_MMC is not set
1215# CONFIG_MEMSTICK is not set 1231# CONFIG_MEMSTICK is not set
1216# CONFIG_NEW_LEDS is not set 1232# CONFIG_NEW_LEDS is not set
1233# CONFIG_ACCESSIBILITY is not set
1217# CONFIG_INFINIBAND is not set 1234# CONFIG_INFINIBAND is not set
1218# CONFIG_RTC_CLASS is not set 1235# CONFIG_RTC_CLASS is not set
1219# CONFIG_UIO is not set 1236# CONFIG_UIO is not set
@@ -1367,6 +1384,7 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
1367CONFIG_PRINTK_TIME=y 1384CONFIG_PRINTK_TIME=y
1368# CONFIG_ENABLE_WARN_DEPRECATED is not set 1385# CONFIG_ENABLE_WARN_DEPRECATED is not set
1369CONFIG_ENABLE_MUST_CHECK=y 1386CONFIG_ENABLE_MUST_CHECK=y
1387CONFIG_FRAME_WARN=2048
1370CONFIG_MAGIC_SYSRQ=y 1388CONFIG_MAGIC_SYSRQ=y
1371# CONFIG_UNUSED_SYMBOLS is not set 1389# CONFIG_UNUSED_SYMBOLS is not set
1372CONFIG_DEBUG_FS=y 1390CONFIG_DEBUG_FS=y
@@ -1377,6 +1395,7 @@ CONFIG_DETECT_SOFTLOCKUP=y
1377# CONFIG_SCHED_DEBUG is not set 1395# CONFIG_SCHED_DEBUG is not set
1378CONFIG_SCHEDSTATS=y 1396CONFIG_SCHEDSTATS=y
1379# CONFIG_TIMER_STATS is not set 1397# CONFIG_TIMER_STATS is not set
1398# CONFIG_DEBUG_OBJECTS is not set
1380# CONFIG_SLUB_DEBUG_ON is not set 1399# CONFIG_SLUB_DEBUG_ON is not set
1381# CONFIG_SLUB_STATS is not set 1400# CONFIG_SLUB_STATS is not set
1382# CONFIG_DEBUG_RT_MUTEXES is not set 1401# CONFIG_DEBUG_RT_MUTEXES is not set
@@ -1402,6 +1421,8 @@ CONFIG_DEBUG_BUGVERBOSE=y
1402# CONFIG_LKDTM is not set 1421# CONFIG_LKDTM is not set
1403# CONFIG_FAULT_INJECTION is not set 1422# CONFIG_FAULT_INJECTION is not set
1404# CONFIG_SAMPLES is not set 1423# CONFIG_SAMPLES is not set
1424CONFIG_HAVE_ARCH_KGDB=y
1425# CONFIG_KGDB is not set
1405# CONFIG_DEBUG_STACK_USAGE is not set 1426# CONFIG_DEBUG_STACK_USAGE is not set
1406# CONFIG_DEBUG_DCFLUSH is not set 1427# CONFIG_DEBUG_DCFLUSH is not set
1407# CONFIG_STACK_DEBUG is not set 1428# CONFIG_STACK_DEBUG is not set
@@ -1503,6 +1524,7 @@ CONFIG_CRYPTO_HW=y
1503# Library routines 1524# Library routines
1504# 1525#
1505CONFIG_BITREVERSE=y 1526CONFIG_BITREVERSE=y
1527# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1506CONFIG_CRC_CCITT=m 1528CONFIG_CRC_CCITT=m
1507CONFIG_CRC16=m 1529CONFIG_CRC16=m
1508# CONFIG_CRC_ITU_T is not set 1530# CONFIG_CRC_ITU_T is not set
diff --git a/arch/sparc64/kernel/dtlb_prot.S b/arch/sparc64/kernel/dtlb_prot.S
index e0a920162604..b2c2c5be281c 100644
--- a/arch/sparc64/kernel/dtlb_prot.S
+++ b/arch/sparc64/kernel/dtlb_prot.S
@@ -1,4 +1,4 @@
1/* $Id: dtlb_prot.S,v 1.22 2001/04/11 23:40:32 davem Exp $ 1/*
2 * dtlb_prot.S: DTLB protection trap strategy. 2 * dtlb_prot.S: DTLB protection trap strategy.
3 * This is included directly into the trap table. 3 * This is included directly into the trap table.
4 * 4 *
diff --git a/arch/sparc64/kernel/ebus.c b/arch/sparc64/kernel/ebus.c
index bc2632274840..c49d0388b793 100644
--- a/arch/sparc64/kernel/ebus.c
+++ b/arch/sparc64/kernel/ebus.c
@@ -1,4 +1,4 @@
1/* $Id: ebus.c,v 1.64 2001/11/08 04:41:33 davem Exp $ 1/*
2 * ebus.c: PCI to EBus bridge device. 2 * ebus.c: PCI to EBus bridge device.
3 * 3 *
4 * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be) 4 * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be)
diff --git a/arch/sparc64/kernel/etrap.S b/arch/sparc64/kernel/etrap.S
index f25e1da3fd03..29ce489bc188 100644
--- a/arch/sparc64/kernel/etrap.S
+++ b/arch/sparc64/kernel/etrap.S
@@ -1,4 +1,4 @@
1/* $Id: etrap.S,v 1.46 2002/02/09 19:49:30 davem Exp $ 1/*
2 * etrap.S: Preparing for entry into the kernel on Sparc V9. 2 * etrap.S: Preparing for entry into the kernel on Sparc V9.
3 * 3 *
4 * Copyright (C) 1996, 1997 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1996, 1997 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc64/kernel/idprom.c b/arch/sparc64/kernel/idprom.c
index 3b6789e09a72..5b45a808c621 100644
--- a/arch/sparc64/kernel/idprom.c
+++ b/arch/sparc64/kernel/idprom.c
@@ -1,4 +1,4 @@
1/* $Id: idprom.c,v 1.3 1999/08/31 06:54:53 davem Exp $ 1/*
2 * idprom.c: Routines to load the idprom into kernel addresses and 2 * idprom.c: Routines to load the idprom into kernel addresses and
3 * interpret the data contained within. 3 * interpret the data contained within.
4 * 4 *
diff --git a/arch/sparc64/kernel/init_task.c b/arch/sparc64/kernel/init_task.c
index 90007cf88bac..d2b312381c19 100644
--- a/arch/sparc64/kernel/init_task.c
+++ b/arch/sparc64/kernel/init_task.c
@@ -10,7 +10,6 @@
10#include <asm/processor.h> 10#include <asm/processor.h>
11 11
12static struct fs_struct init_fs = INIT_FS; 12static struct fs_struct init_fs = INIT_FS;
13static struct files_struct init_files = INIT_FILES;
14static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 13static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
15static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 14static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
16struct mm_struct init_mm = INIT_MM(init_mm); 15struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/sparc64/kernel/process.c b/arch/sparc64/kernel/process.c
index 4129c0449856..2084f81a76e1 100644
--- a/arch/sparc64/kernel/process.c
+++ b/arch/sparc64/kernel/process.c
@@ -1,6 +1,6 @@
1/* arch/sparc64/kernel/process.c 1/* arch/sparc64/kernel/process.c
2 * 2 *
3 * Copyright (C) 1995, 1996 David S. Miller (davem@caip.rutgers.edu) 3 * Copyright (C) 1995, 1996, 2008 David S. Miller (davem@davemloft.net)
4 * Copyright (C) 1996 Eddie C. Dost (ecd@skynet.be) 4 * Copyright (C) 1996 Eddie C. Dost (ecd@skynet.be)
5 * Copyright (C) 1997, 1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz) 5 * Copyright (C) 1997, 1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
6 */ 6 */
@@ -30,6 +30,7 @@
30#include <linux/init.h> 30#include <linux/init.h>
31#include <linux/cpu.h> 31#include <linux/cpu.h>
32#include <linux/elfcore.h> 32#include <linux/elfcore.h>
33#include <linux/sysrq.h>
33 34
34#include <asm/oplib.h> 35#include <asm/oplib.h>
35#include <asm/uaccess.h> 36#include <asm/uaccess.h>
@@ -49,6 +50,8 @@
49#include <asm/sstate.h> 50#include <asm/sstate.h>
50#include <asm/reboot.h> 51#include <asm/reboot.h>
51#include <asm/syscalls.h> 52#include <asm/syscalls.h>
53#include <asm/irq_regs.h>
54#include <asm/smp.h>
52 55
53/* #define VERBOSE_SHOWREGS */ 56/* #define VERBOSE_SHOWREGS */
54 57
@@ -298,6 +301,118 @@ void show_regs(struct pt_regs *regs)
298#endif 301#endif
299} 302}
300 303
304#ifdef CONFIG_MAGIC_SYSRQ
305struct global_reg_snapshot global_reg_snapshot[NR_CPUS];
306static DEFINE_SPINLOCK(global_reg_snapshot_lock);
307
308static void __global_reg_self(struct thread_info *tp, struct pt_regs *regs,
309 int this_cpu)
310{
311 flushw_all();
312
313 global_reg_snapshot[this_cpu].tstate = regs->tstate;
314 global_reg_snapshot[this_cpu].tpc = regs->tpc;
315 global_reg_snapshot[this_cpu].tnpc = regs->tnpc;
316 global_reg_snapshot[this_cpu].o7 = regs->u_regs[UREG_I7];
317
318 if (regs->tstate & TSTATE_PRIV) {
319 struct reg_window *rw;
320
321 rw = (struct reg_window *)
322 (regs->u_regs[UREG_FP] + STACK_BIAS);
323 global_reg_snapshot[this_cpu].i7 = rw->ins[6];
324 } else
325 global_reg_snapshot[this_cpu].i7 = 0;
326
327 global_reg_snapshot[this_cpu].thread = tp;
328}
329
330/* In order to avoid hangs we do not try to synchronize with the
331 * global register dump client cpus. The last store they make is to
332 * the thread pointer, so do a short poll waiting for that to become
333 * non-NULL.
334 */
335static void __global_reg_poll(struct global_reg_snapshot *gp)
336{
337 int limit = 0;
338
339 while (!gp->thread && ++limit < 100) {
340 barrier();
341 udelay(1);
342 }
343}
344
345static void sysrq_handle_globreg(int key, struct tty_struct *tty)
346{
347 struct thread_info *tp = current_thread_info();
348 struct pt_regs *regs = get_irq_regs();
349#ifdef CONFIG_KALLSYMS
350 char buffer[KSYM_SYMBOL_LEN];
351#endif
352 unsigned long flags;
353 int this_cpu, cpu;
354
355 if (!regs)
356 regs = tp->kregs;
357
358 spin_lock_irqsave(&global_reg_snapshot_lock, flags);
359
360 memset(global_reg_snapshot, 0, sizeof(global_reg_snapshot));
361
362 this_cpu = raw_smp_processor_id();
363
364 __global_reg_self(tp, regs, this_cpu);
365
366 smp_fetch_global_regs();
367
368 for_each_online_cpu(cpu) {
369 struct global_reg_snapshot *gp = &global_reg_snapshot[cpu];
370 struct thread_info *tp;
371
372 __global_reg_poll(gp);
373
374 tp = gp->thread;
375 printk("%c CPU[%3d]: TSTATE[%016lx] TPC[%016lx] TNPC[%016lx] TASK[%s:%d]\n",
376 (cpu == this_cpu ? '*' : ' '), cpu,
377 gp->tstate, gp->tpc, gp->tnpc,
378 ((tp && tp->task) ? tp->task->comm : "NULL"),
379 ((tp && tp->task) ? tp->task->pid : -1));
380#ifdef CONFIG_KALLSYMS
381 if (gp->tstate & TSTATE_PRIV) {
382 sprint_symbol(buffer, gp->tpc);
383 printk(" TPC[%s] ", buffer);
384 sprint_symbol(buffer, gp->o7);
385 printk("O7[%s] ", buffer);
386 sprint_symbol(buffer, gp->i7);
387 printk("I7[%s]\n", buffer);
388 } else
389#endif
390 {
391 printk(" TPC[%lx] O7[%lx] I7[%lx]\n",
392 gp->tpc, gp->o7, gp->i7);
393 }
394 }
395
396 memset(global_reg_snapshot, 0, sizeof(global_reg_snapshot));
397
398 spin_unlock_irqrestore(&global_reg_snapshot_lock, flags);
399}
400
401static struct sysrq_key_op sparc_globalreg_op = {
402 .handler = sysrq_handle_globreg,
403 .help_msg = "Globalregs",
404 .action_msg = "Show Global CPU Regs",
405};
406
407static int __init sparc_globreg_init(void)
408{
409 return register_sysrq_key('y', &sparc_globalreg_op);
410}
411
412core_initcall(sparc_globreg_init);
413
414#endif
415
301unsigned long thread_saved_pc(struct task_struct *tsk) 416unsigned long thread_saved_pc(struct task_struct *tsk)
302{ 417{
303 struct thread_info *ti = task_thread_info(tsk); 418 struct thread_info *ti = task_thread_info(tsk);
@@ -542,20 +657,39 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long sp,
542 struct task_struct *p, struct pt_regs *regs) 657 struct task_struct *p, struct pt_regs *regs)
543{ 658{
544 struct thread_info *t = task_thread_info(p); 659 struct thread_info *t = task_thread_info(p);
660 struct sparc_stackf *parent_sf;
661 unsigned long child_stack_sz;
545 char *child_trap_frame; 662 char *child_trap_frame;
663 int kernel_thread;
546 664
547 /* Calculate offset to stack_frame & pt_regs */ 665 kernel_thread = (regs->tstate & TSTATE_PRIV) ? 1 : 0;
548 child_trap_frame = task_stack_page(p) + (THREAD_SIZE - (TRACEREG_SZ+STACKFRAME_SZ)); 666 parent_sf = ((struct sparc_stackf *) regs) - 1;
549 memcpy(child_trap_frame, (((struct sparc_stackf *)regs)-1), (TRACEREG_SZ+STACKFRAME_SZ));
550 667
551 t->flags = (t->flags & ~((0xffUL << TI_FLAG_CWP_SHIFT) | (0xffUL << TI_FLAG_CURRENT_DS_SHIFT))) | 668 /* Calculate offset to stack_frame & pt_regs */
669 child_stack_sz = ((STACKFRAME_SZ + TRACEREG_SZ) +
670 (kernel_thread ? STACKFRAME_SZ : 0));
671 child_trap_frame = (task_stack_page(p) +
672 (THREAD_SIZE - child_stack_sz));
673 memcpy(child_trap_frame, parent_sf, child_stack_sz);
674
675 t->flags = (t->flags & ~((0xffUL << TI_FLAG_CWP_SHIFT) |
676 (0xffUL << TI_FLAG_CURRENT_DS_SHIFT))) |
552 (((regs->tstate + 1) & TSTATE_CWP) << TI_FLAG_CWP_SHIFT); 677 (((regs->tstate + 1) & TSTATE_CWP) << TI_FLAG_CWP_SHIFT);
553 t->new_child = 1; 678 t->new_child = 1;
554 t->ksp = ((unsigned long) child_trap_frame) - STACK_BIAS; 679 t->ksp = ((unsigned long) child_trap_frame) - STACK_BIAS;
555 t->kregs = (struct pt_regs *)(child_trap_frame+sizeof(struct sparc_stackf)); 680 t->kregs = (struct pt_regs *) (child_trap_frame +
681 sizeof(struct sparc_stackf));
556 t->fpsaved[0] = 0; 682 t->fpsaved[0] = 0;
557 683
558 if (regs->tstate & TSTATE_PRIV) { 684 if (kernel_thread) {
685 struct sparc_stackf *child_sf = (struct sparc_stackf *)
686 (child_trap_frame + (STACKFRAME_SZ + TRACEREG_SZ));
687
688 /* Zero terminate the stack backtrace. */
689 child_sf->fp = NULL;
690 t->kregs->u_regs[UREG_FP] =
691 ((unsigned long) child_sf) - STACK_BIAS;
692
559 /* Special case, if we are spawning a kernel thread from 693 /* Special case, if we are spawning a kernel thread from
560 * a userspace task (via KMOD, NFS, or similar) we must 694 * a userspace task (via KMOD, NFS, or similar) we must
561 * disable performance counters in the child because the 695 * disable performance counters in the child because the
@@ -566,12 +700,7 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long sp,
566 t->pcr_reg = 0; 700 t->pcr_reg = 0;
567 t->flags &= ~_TIF_PERFCTR; 701 t->flags &= ~_TIF_PERFCTR;
568 } 702 }
569 t->kregs->u_regs[UREG_FP] = t->ksp;
570 t->flags |= ((long)ASI_P << TI_FLAG_CURRENT_DS_SHIFT); 703 t->flags |= ((long)ASI_P << TI_FLAG_CURRENT_DS_SHIFT);
571 flush_register_windows();
572 memcpy((void *)(t->ksp + STACK_BIAS),
573 (void *)(regs->u_regs[UREG_FP] + STACK_BIAS),
574 sizeof(struct sparc_stackf));
575 t->kregs->u_regs[UREG_G6] = (unsigned long) t; 704 t->kregs->u_regs[UREG_G6] = (unsigned long) t;
576 t->kregs->u_regs[UREG_G4] = (unsigned long) t->task; 705 t->kregs->u_regs[UREG_G4] = (unsigned long) t->task;
577 } else { 706 } else {
diff --git a/arch/sparc64/kernel/rtrap.S b/arch/sparc64/kernel/rtrap.S
index b9b785fd8b46..c6fc695fe1fe 100644
--- a/arch/sparc64/kernel/rtrap.S
+++ b/arch/sparc64/kernel/rtrap.S
@@ -1,4 +1,4 @@
1/* $Id: rtrap.S,v 1.61 2002/02/09 19:49:31 davem Exp $ 1/*
2 * rtrap.S: Preparing for return from trap on Sparc V9. 2 * rtrap.S: Preparing for return from trap on Sparc V9.
3 * 3 *
4 * Copyright (C) 1997,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz) 4 * Copyright (C) 1997,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
@@ -46,7 +46,7 @@ __handle_user_windows:
46 wrpr %g0, RTRAP_PSTATE_IRQOFF, %pstate 46 wrpr %g0, RTRAP_PSTATE_IRQOFF, %pstate
47 ldx [%g6 + TI_FLAGS], %l0 47 ldx [%g6 + TI_FLAGS], %l0
48 48
491: andcc %l0, (_TIF_SIGPENDING | _TIF_RESTORE_SIGMASK), %g0 491: andcc %l0, _TIF_SIGPENDING, %g0
50 be,pt %xcc, __handle_user_windows_continue 50 be,pt %xcc, __handle_user_windows_continue
51 nop 51 nop
52 mov %l5, %o1 52 mov %l5, %o1
@@ -86,7 +86,7 @@ __handle_perfctrs:
86 wrpr %g0, RTRAP_PSTATE, %pstate 86 wrpr %g0, RTRAP_PSTATE, %pstate
87 wrpr %g0, RTRAP_PSTATE_IRQOFF, %pstate 87 wrpr %g0, RTRAP_PSTATE_IRQOFF, %pstate
88 ldx [%g6 + TI_FLAGS], %l0 88 ldx [%g6 + TI_FLAGS], %l0
891: andcc %l0, (_TIF_SIGPENDING | _TIF_RESTORE_SIGMASK), %g0 891: andcc %l0, _TIF_SIGPENDING, %g0
90 90
91 be,pt %xcc, __handle_perfctrs_continue 91 be,pt %xcc, __handle_perfctrs_continue
92 sethi %hi(TSTATE_PEF), %o0 92 sethi %hi(TSTATE_PEF), %o0
@@ -195,7 +195,7 @@ __handle_preemption_continue:
195 andcc %l1, %o0, %g0 195 andcc %l1, %o0, %g0
196 andcc %l0, _TIF_NEED_RESCHED, %g0 196 andcc %l0, _TIF_NEED_RESCHED, %g0
197 bne,pn %xcc, __handle_preemption 197 bne,pn %xcc, __handle_preemption
198 andcc %l0, (_TIF_SIGPENDING | _TIF_RESTORE_SIGMASK), %g0 198 andcc %l0, _TIF_SIGPENDING, %g0
199 bne,pn %xcc, __handle_signal 199 bne,pn %xcc, __handle_signal
200__handle_signal_continue: 200__handle_signal_continue:
201 ldub [%g6 + TI_WSAVED], %o2 201 ldub [%g6 + TI_WSAVED], %o2
@@ -363,6 +363,7 @@ kern_rtt: rdpr %canrestore, %g1
363 brz,pn %g1, kern_rtt_fill 363 brz,pn %g1, kern_rtt_fill
364 nop 364 nop
365kern_rtt_restore: 365kern_rtt_restore:
366 stw %g0, [%sp + PTREGS_OFF + PT_V9_MAGIC]
366 restore 367 restore
367 retry 368 retry
368 369
diff --git a/arch/sparc64/kernel/sbus.c b/arch/sparc64/kernel/sbus.c
index fa2827c4a3ad..e33a8a660e9e 100644
--- a/arch/sparc64/kernel/sbus.c
+++ b/arch/sparc64/kernel/sbus.c
@@ -1,4 +1,4 @@
1/* $Id: sbus.c,v 1.19 2002/01/23 11:27:32 davem Exp $ 1/*
2 * sbus.c: UltraSparc SBUS controller support. 2 * sbus.c: UltraSparc SBUS controller support.
3 * 3 *
4 * Copyright (C) 1999 David S. Miller (davem@redhat.com) 4 * Copyright (C) 1999 David S. Miller (davem@redhat.com)
diff --git a/arch/sparc64/kernel/setup.c b/arch/sparc64/kernel/setup.c
index da5e6ee0c661..c8b03a4f68bf 100644
--- a/arch/sparc64/kernel/setup.c
+++ b/arch/sparc64/kernel/setup.c
@@ -1,4 +1,4 @@
1/* $Id: setup.c,v 1.72 2002/02/09 19:49:30 davem Exp $ 1/*
2 * linux/arch/sparc64/kernel/setup.c 2 * linux/arch/sparc64/kernel/setup.c
3 * 3 *
4 * Copyright (C) 1995,1996 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995,1996 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc64/kernel/signal.c b/arch/sparc64/kernel/signal.c
index 2378482c2aab..9667e96fd513 100644
--- a/arch/sparc64/kernel/signal.c
+++ b/arch/sparc64/kernel/signal.c
@@ -1,4 +1,4 @@
1/* $Id: signal.c,v 1.60 2002/02/09 19:49:31 davem Exp $ 1/*
2 * arch/sparc64/kernel/signal.c 2 * arch/sparc64/kernel/signal.c
3 * 3 *
4 * Copyright (C) 1991, 1992 Linus Torvalds 4 * Copyright (C) 1991, 1992 Linus Torvalds
@@ -247,7 +247,9 @@ static long _sigpause_common(old_sigset_t set)
247 247
248 current->state = TASK_INTERRUPTIBLE; 248 current->state = TASK_INTERRUPTIBLE;
249 schedule(); 249 schedule();
250 set_thread_flag(TIF_RESTORE_SIGMASK); 250
251 set_restore_sigmask();
252
251 return -ERESTARTNOHAND; 253 return -ERESTARTNOHAND;
252} 254}
253 255
@@ -537,7 +539,7 @@ static void do_signal(struct pt_regs *regs, unsigned long orig_i0)
537 } else 539 } else
538 restart_syscall = 0; 540 restart_syscall = 0;
539 541
540 if (test_thread_flag(TIF_RESTORE_SIGMASK)) 542 if (current_thread_info()->status & TS_RESTORE_SIGMASK)
541 oldset = &current->saved_sigmask; 543 oldset = &current->saved_sigmask;
542 else 544 else
543 oldset = &current->blocked; 545 oldset = &current->blocked;
@@ -566,13 +568,12 @@ static void do_signal(struct pt_regs *regs, unsigned long orig_i0)
566 syscall_restart(orig_i0, regs, &ka.sa); 568 syscall_restart(orig_i0, regs, &ka.sa);
567 handle_signal(signr, &ka, &info, oldset, regs); 569 handle_signal(signr, &ka, &info, oldset, regs);
568 570
569 /* a signal was successfully delivered; the saved 571 /* A signal was successfully delivered; the saved
570 * sigmask will have been stored in the signal frame, 572 * sigmask will have been stored in the signal frame,
571 * and will be restored by sigreturn, so we can simply 573 * and will be restored by sigreturn, so we can simply
572 * clear the TIF_RESTORE_SIGMASK flag. 574 * clear the TS_RESTORE_SIGMASK flag.
573 */ 575 */
574 if (test_thread_flag(TIF_RESTORE_SIGMASK)) 576 current_thread_info()->status &= ~TS_RESTORE_SIGMASK;
575 clear_thread_flag(TIF_RESTORE_SIGMASK);
576 return; 577 return;
577 } 578 }
578 if (restart_syscall && 579 if (restart_syscall &&
@@ -591,17 +592,17 @@ static void do_signal(struct pt_regs *regs, unsigned long orig_i0)
591 regs->tnpc -= 4; 592 regs->tnpc -= 4;
592 } 593 }
593 594
594 /* if there's no signal to deliver, we just put the saved sigmask 595 /* If there's no signal to deliver, we just put the saved sigmask
595 * back 596 * back
596 */ 597 */
597 if (test_thread_flag(TIF_RESTORE_SIGMASK)) { 598 if (current_thread_info()->status & TS_RESTORE_SIGMASK) {
598 clear_thread_flag(TIF_RESTORE_SIGMASK); 599 current_thread_info()->status &= ~TS_RESTORE_SIGMASK;
599 sigprocmask(SIG_SETMASK, &current->saved_sigmask, NULL); 600 sigprocmask(SIG_SETMASK, &current->saved_sigmask, NULL);
600 } 601 }
601} 602}
602 603
603void do_notify_resume(struct pt_regs *regs, unsigned long orig_i0, unsigned long thread_info_flags) 604void do_notify_resume(struct pt_regs *regs, unsigned long orig_i0, unsigned long thread_info_flags)
604{ 605{
605 if (thread_info_flags & (_TIF_SIGPENDING | _TIF_RESTORE_SIGMASK)) 606 if (thread_info_flags & _TIF_SIGPENDING)
606 do_signal(regs, orig_i0); 607 do_signal(regs, orig_i0);
607} 608}
diff --git a/arch/sparc64/kernel/signal32.c b/arch/sparc64/kernel/signal32.c
index 3f19e9af3d1b..97cdd1bf4a10 100644
--- a/arch/sparc64/kernel/signal32.c
+++ b/arch/sparc64/kernel/signal32.c
@@ -788,13 +788,12 @@ void do_signal32(sigset_t *oldset, struct pt_regs * regs,
788 syscall_restart32(orig_i0, regs, &ka.sa); 788 syscall_restart32(orig_i0, regs, &ka.sa);
789 handle_signal32(signr, &ka, &info, oldset, regs); 789 handle_signal32(signr, &ka, &info, oldset, regs);
790 790
791 /* a signal was successfully delivered; the saved 791 /* A signal was successfully delivered; the saved
792 * sigmask will have been stored in the signal frame, 792 * sigmask will have been stored in the signal frame,
793 * and will be restored by sigreturn, so we can simply 793 * and will be restored by sigreturn, so we can simply
794 * clear the TIF_RESTORE_SIGMASK flag. 794 * clear the TS_RESTORE_SIGMASK flag.
795 */ 795 */
796 if (test_thread_flag(TIF_RESTORE_SIGMASK)) 796 current_thread_info()->status &= ~TS_RESTORE_SIGMASK;
797 clear_thread_flag(TIF_RESTORE_SIGMASK);
798 return; 797 return;
799 } 798 }
800 if (restart_syscall && 799 if (restart_syscall &&
@@ -813,11 +812,11 @@ void do_signal32(sigset_t *oldset, struct pt_regs * regs,
813 regs->tnpc -= 4; 812 regs->tnpc -= 4;
814 } 813 }
815 814
816 /* if there's no signal to deliver, we just put the saved sigmask 815 /* If there's no signal to deliver, we just put the saved sigmask
817 * back 816 * back
818 */ 817 */
819 if (test_thread_flag(TIF_RESTORE_SIGMASK)) { 818 if (current_thread_info()->status & TS_RESTORE_SIGMASK) {
820 clear_thread_flag(TIF_RESTORE_SIGMASK); 819 current_thread_info()->status &= ~TS_RESTORE_SIGMASK;
821 sigprocmask(SIG_SETMASK, &current->saved_sigmask, NULL); 820 sigprocmask(SIG_SETMASK, &current->saved_sigmask, NULL);
822 } 821 }
823} 822}
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c
index 0d6403a630ac..fa63c68a1819 100644
--- a/arch/sparc64/kernel/smp.c
+++ b/arch/sparc64/kernel/smp.c
@@ -900,6 +900,9 @@ extern unsigned long xcall_flush_tlb_mm;
900extern unsigned long xcall_flush_tlb_pending; 900extern unsigned long xcall_flush_tlb_pending;
901extern unsigned long xcall_flush_tlb_kernel_range; 901extern unsigned long xcall_flush_tlb_kernel_range;
902extern unsigned long xcall_report_regs; 902extern unsigned long xcall_report_regs;
903#ifdef CONFIG_MAGIC_SYSRQ
904extern unsigned long xcall_fetch_glob_regs;
905#endif
903extern unsigned long xcall_receive_signal; 906extern unsigned long xcall_receive_signal;
904extern unsigned long xcall_new_mmu_context_version; 907extern unsigned long xcall_new_mmu_context_version;
905#ifdef CONFIG_KGDB 908#ifdef CONFIG_KGDB
@@ -1080,6 +1083,13 @@ void smp_report_regs(void)
1080 smp_cross_call(&xcall_report_regs, 0, 0, 0); 1083 smp_cross_call(&xcall_report_regs, 0, 0, 0);
1081} 1084}
1082 1085
1086#ifdef CONFIG_MAGIC_SYSRQ
1087void smp_fetch_global_regs(void)
1088{
1089 smp_cross_call(&xcall_fetch_glob_regs, 0, 0, 0);
1090}
1091#endif
1092
1083/* We know that the window frames of the user have been flushed 1093/* We know that the window frames of the user have been flushed
1084 * to the stack before we get here because all callers of us 1094 * to the stack before we get here because all callers of us
1085 * are flush_tlb_*() routines, and these run after flush_cache_*() 1095 * are flush_tlb_*() routines, and these run after flush_cache_*()
diff --git a/arch/sparc64/kernel/stacktrace.c b/arch/sparc64/kernel/stacktrace.c
index 01b52f561af4..c73ce3f4197e 100644
--- a/arch/sparc64/kernel/stacktrace.c
+++ b/arch/sparc64/kernel/stacktrace.c
@@ -19,7 +19,7 @@ void save_stack_trace(struct stack_trace *trace)
19 fp = ksp + STACK_BIAS; 19 fp = ksp + STACK_BIAS;
20 thread_base = (unsigned long) tp; 20 thread_base = (unsigned long) tp;
21 do { 21 do {
22 struct reg_window *rw; 22 struct sparc_stackf *sf;
23 struct pt_regs *regs; 23 struct pt_regs *regs;
24 unsigned long pc; 24 unsigned long pc;
25 25
@@ -28,15 +28,17 @@ void save_stack_trace(struct stack_trace *trace)
28 fp >= (thread_base + THREAD_SIZE)) 28 fp >= (thread_base + THREAD_SIZE))
29 break; 29 break;
30 30
31 rw = (struct reg_window *) fp; 31 sf = (struct sparc_stackf *) fp;
32 regs = (struct pt_regs *) (rw + 1); 32 regs = (struct pt_regs *) (sf + 1);
33 33
34 if ((regs->magic & ~0x1ff) == PT_REGS_MAGIC) { 34 if ((regs->magic & ~0x1ff) == PT_REGS_MAGIC) {
35 if (!(regs->tstate & TSTATE_PRIV))
36 break;
35 pc = regs->tpc; 37 pc = regs->tpc;
36 fp = regs->u_regs[UREG_I6] + STACK_BIAS; 38 fp = regs->u_regs[UREG_I6] + STACK_BIAS;
37 } else { 39 } else {
38 pc = rw->ins[7]; 40 pc = sf->callers_pc;
39 fp = rw->ins[6] + STACK_BIAS; 41 fp = (unsigned long)sf->fp + STACK_BIAS;
40 } 42 }
41 43
42 if (trace->skip > 0) 44 if (trace->skip > 0)
diff --git a/arch/sparc64/kernel/starfire.c b/arch/sparc64/kernel/starfire.c
index b930fee7708a..7461581b3bb9 100644
--- a/arch/sparc64/kernel/starfire.c
+++ b/arch/sparc64/kernel/starfire.c
@@ -1,4 +1,4 @@
1/* $Id: starfire.c,v 1.10 2001/04/14 21:13:45 davem Exp $ 1/*
2 * starfire.c: Starfire/E10000 support. 2 * starfire.c: Starfire/E10000 support.
3 * 3 *
4 * Copyright (C) 1998 David S. Miller (davem@redhat.com) 4 * Copyright (C) 1998 David S. Miller (davem@redhat.com)
diff --git a/arch/sparc64/kernel/sys32.S b/arch/sparc64/kernel/sys32.S
index 010a737908ee..ade18ba0c686 100644
--- a/arch/sparc64/kernel/sys32.S
+++ b/arch/sparc64/kernel/sys32.S
@@ -1,4 +1,4 @@
1/* $Id: sys32.S,v 1.12 2000/03/24 04:17:37 davem Exp $ 1/*
2 * sys32.S: I-cache tricks for 32-bit compatibility layer simple 2 * sys32.S: I-cache tricks for 32-bit compatibility layer simple
3 * conversions. 3 * conversions.
4 * 4 *
diff --git a/arch/sparc64/kernel/sys_sparc.c b/arch/sparc64/kernel/sys_sparc.c
index 0dbc941f130e..ac1bff58c1ac 100644
--- a/arch/sparc64/kernel/sys_sparc.c
+++ b/arch/sparc64/kernel/sys_sparc.c
@@ -542,8 +542,7 @@ asmlinkage long sparc64_personality(unsigned long personality)
542 return ret; 542 return ret;
543} 543}
544 544
545int sparc64_mmap_check(unsigned long addr, unsigned long len, 545int sparc64_mmap_check(unsigned long addr, unsigned long len)
546 unsigned long flags)
547{ 546{
548 if (test_thread_flag(TIF_32BIT)) { 547 if (test_thread_flag(TIF_32BIT)) {
549 if (len >= STACK_TOP32) 548 if (len >= STACK_TOP32)
@@ -609,46 +608,19 @@ asmlinkage unsigned long sys64_mremap(unsigned long addr,
609 unsigned long old_len, unsigned long new_len, 608 unsigned long old_len, unsigned long new_len,
610 unsigned long flags, unsigned long new_addr) 609 unsigned long flags, unsigned long new_addr)
611{ 610{
612 struct vm_area_struct *vma;
613 unsigned long ret = -EINVAL; 611 unsigned long ret = -EINVAL;
614 612
615 if (test_thread_flag(TIF_32BIT)) 613 if (test_thread_flag(TIF_32BIT))
616 goto out; 614 goto out;
617 if (unlikely(new_len >= VA_EXCLUDE_START)) 615 if (unlikely(new_len >= VA_EXCLUDE_START))
618 goto out; 616 goto out;
619 if (unlikely(invalid_64bit_range(addr, old_len))) 617 if (unlikely(sparc64_mmap_check(addr, old_len)))
618 goto out;
619 if (unlikely(sparc64_mmap_check(new_addr, new_len)))
620 goto out; 620 goto out;
621 621
622 down_write(&current->mm->mmap_sem); 622 down_write(&current->mm->mmap_sem);
623 if (flags & MREMAP_FIXED) {
624 if (invalid_64bit_range(new_addr, new_len))
625 goto out_sem;
626 } else if (invalid_64bit_range(addr, new_len)) {
627 unsigned long map_flags = 0;
628 struct file *file = NULL;
629
630 ret = -ENOMEM;
631 if (!(flags & MREMAP_MAYMOVE))
632 goto out_sem;
633
634 vma = find_vma(current->mm, addr);
635 if (vma) {
636 if (vma->vm_flags & VM_SHARED)
637 map_flags |= MAP_SHARED;
638 file = vma->vm_file;
639 }
640
641 /* MREMAP_FIXED checked above. */
642 new_addr = get_unmapped_area(file, addr, new_len,
643 vma ? vma->vm_pgoff : 0,
644 map_flags);
645 ret = new_addr;
646 if (new_addr & ~PAGE_MASK)
647 goto out_sem;
648 flags |= MREMAP_FIXED;
649 }
650 ret = do_mremap(addr, old_len, new_len, flags, new_addr); 623 ret = do_mremap(addr, old_len, new_len, flags, new_addr);
651out_sem:
652 up_write(&current->mm->mmap_sem); 624 up_write(&current->mm->mmap_sem);
653out: 625out:
654 return ret; 626 return ret;
diff --git a/arch/sparc64/kernel/sys_sparc32.c b/arch/sparc64/kernel/sys_sparc32.c
index 1aa4288125f2..ba5bd626b39e 100644
--- a/arch/sparc64/kernel/sys_sparc32.c
+++ b/arch/sparc64/kernel/sys_sparc32.c
@@ -867,44 +867,15 @@ asmlinkage unsigned long sys32_mremap(unsigned long addr,
867 unsigned long old_len, unsigned long new_len, 867 unsigned long old_len, unsigned long new_len,
868 unsigned long flags, u32 __new_addr) 868 unsigned long flags, u32 __new_addr)
869{ 869{
870 struct vm_area_struct *vma;
871 unsigned long ret = -EINVAL; 870 unsigned long ret = -EINVAL;
872 unsigned long new_addr = __new_addr; 871 unsigned long new_addr = __new_addr;
873 872
874 if (old_len > STACK_TOP32 || new_len > STACK_TOP32) 873 if (unlikely(sparc64_mmap_check(addr, old_len)))
875 goto out; 874 goto out;
876 if (addr > STACK_TOP32 - old_len) 875 if (unlikely(sparc64_mmap_check(new_addr, new_len)))
877 goto out; 876 goto out;
878 down_write(&current->mm->mmap_sem); 877 down_write(&current->mm->mmap_sem);
879 if (flags & MREMAP_FIXED) {
880 if (new_addr > STACK_TOP32 - new_len)
881 goto out_sem;
882 } else if (addr > STACK_TOP32 - new_len) {
883 unsigned long map_flags = 0;
884 struct file *file = NULL;
885
886 ret = -ENOMEM;
887 if (!(flags & MREMAP_MAYMOVE))
888 goto out_sem;
889
890 vma = find_vma(current->mm, addr);
891 if (vma) {
892 if (vma->vm_flags & VM_SHARED)
893 map_flags |= MAP_SHARED;
894 file = vma->vm_file;
895 }
896
897 /* MREMAP_FIXED checked above. */
898 new_addr = get_unmapped_area(file, addr, new_len,
899 vma ? vma->vm_pgoff : 0,
900 map_flags);
901 ret = new_addr;
902 if (new_addr & ~PAGE_MASK)
903 goto out_sem;
904 flags |= MREMAP_FIXED;
905 }
906 ret = do_mremap(addr, old_len, new_len, flags, new_addr); 878 ret = do_mremap(addr, old_len, new_len, flags, new_addr);
907out_sem:
908 up_write(&current->mm->mmap_sem); 879 up_write(&current->mm->mmap_sem);
909out: 880out:
910 return ret; 881 return ret;
diff --git a/arch/sparc64/kernel/trampoline.S b/arch/sparc64/kernel/trampoline.S
index 56ff55211341..704a3afcfd06 100644
--- a/arch/sparc64/kernel/trampoline.S
+++ b/arch/sparc64/kernel/trampoline.S
@@ -1,4 +1,4 @@
1/* $Id: trampoline.S,v 1.26 2002/02/09 19:49:30 davem Exp $ 1/*
2 * trampoline.S: Jump start slave processors on sparc64. 2 * trampoline.S: Jump start slave processors on sparc64.
3 * 3 *
4 * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc64/kernel/traps.c b/arch/sparc64/kernel/traps.c
index d9b8d46707d1..369749262653 100644
--- a/arch/sparc64/kernel/traps.c
+++ b/arch/sparc64/kernel/traps.c
@@ -2116,7 +2116,7 @@ void show_stack(struct task_struct *tsk, unsigned long *_ksp)
2116 printk("\n"); 2116 printk("\n");
2117#endif 2117#endif
2118 do { 2118 do {
2119 struct reg_window *rw; 2119 struct sparc_stackf *sf;
2120 struct pt_regs *regs; 2120 struct pt_regs *regs;
2121 unsigned long pc; 2121 unsigned long pc;
2122 2122
@@ -2124,15 +2124,17 @@ void show_stack(struct task_struct *tsk, unsigned long *_ksp)
2124 if (fp < (thread_base + sizeof(struct thread_info)) || 2124 if (fp < (thread_base + sizeof(struct thread_info)) ||
2125 fp >= (thread_base + THREAD_SIZE)) 2125 fp >= (thread_base + THREAD_SIZE))
2126 break; 2126 break;
2127 rw = (struct reg_window *)fp; 2127 sf = (struct sparc_stackf *) fp;
2128 regs = (struct pt_regs *) (rw + 1); 2128 regs = (struct pt_regs *) (sf + 1);
2129 2129
2130 if ((regs->magic & ~0x1ff) == PT_REGS_MAGIC) { 2130 if ((regs->magic & ~0x1ff) == PT_REGS_MAGIC) {
2131 if (!(regs->tstate & TSTATE_PRIV))
2132 break;
2131 pc = regs->tpc; 2133 pc = regs->tpc;
2132 fp = regs->u_regs[UREG_I6] + STACK_BIAS; 2134 fp = regs->u_regs[UREG_I6] + STACK_BIAS;
2133 } else { 2135 } else {
2134 pc = rw->ins[7]; 2136 pc = sf->callers_pc;
2135 fp = rw->ins[6] + STACK_BIAS; 2137 fp = (unsigned long)sf->fp + STACK_BIAS;
2136 } 2138 }
2137 2139
2138 printk(" [%016lx] ", pc); 2140 printk(" [%016lx] ", pc);
diff --git a/arch/sparc64/kernel/unaligned.c b/arch/sparc64/kernel/unaligned.c
index 1a511e9f0d3e..afa7fc4f5193 100644
--- a/arch/sparc64/kernel/unaligned.c
+++ b/arch/sparc64/kernel/unaligned.c
@@ -1,4 +1,4 @@
1/* $Id: unaligned.c,v 1.24 2002/02/09 19:49:31 davem Exp $ 1/*
2 * unaligned.c: Unaligned load/store trap handling with special 2 * unaligned.c: Unaligned load/store trap handling with special
3 * cases for the kernel to do them more quickly. 3 * cases for the kernel to do them more quickly.
4 * 4 *
diff --git a/arch/sparc64/lib/PeeCeeI.c b/arch/sparc64/lib/PeeCeeI.c
index 3c6cfbb20360..8b313f11bc8d 100644
--- a/arch/sparc64/lib/PeeCeeI.c
+++ b/arch/sparc64/lib/PeeCeeI.c
@@ -1,4 +1,4 @@
1/* $Id: PeeCeeI.c,v 1.4 1999/09/06 01:17:35 davem Exp $ 1/*
2 * PeeCeeI.c: The emerging standard... 2 * PeeCeeI.c: The emerging standard...
3 * 3 *
4 * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc64/lib/VISsave.S b/arch/sparc64/lib/VISsave.S
index a0ded5c5aa5c..b320ae9e2e2e 100644
--- a/arch/sparc64/lib/VISsave.S
+++ b/arch/sparc64/lib/VISsave.S
@@ -1,4 +1,4 @@
1/* $Id: VISsave.S,v 1.6 2002/02/09 19:49:30 davem Exp $ 1/*
2 * VISsave.S: Code for saving FPU register state for 2 * VISsave.S: Code for saving FPU register state for
3 * VIS routines. One should not call this directly, 3 * VIS routines. One should not call this directly,
4 * but use macros provided in <asm/visasm.h>. 4 * but use macros provided in <asm/visasm.h>.
diff --git a/arch/sparc64/lib/memcmp.S b/arch/sparc64/lib/memcmp.S
index c90ad96c51b9..d3fdaa898566 100644
--- a/arch/sparc64/lib/memcmp.S
+++ b/arch/sparc64/lib/memcmp.S
@@ -1,4 +1,4 @@
1/* $Id: memcmp.S,v 1.3 2000/03/23 07:51:08 davem Exp $ 1/*
2 * Sparc64 optimized memcmp code. 2 * Sparc64 optimized memcmp code.
3 * 3 *
4 * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz) 4 * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
diff --git a/arch/sparc64/lib/memscan.S b/arch/sparc64/lib/memscan.S
index 5e72d4911417..5686dfa5dc15 100644
--- a/arch/sparc64/lib/memscan.S
+++ b/arch/sparc64/lib/memscan.S
@@ -1,4 +1,4 @@
1/* $Id: memscan.S,v 1.3 2000/01/31 04:59:10 davem Exp $ 1/*
2 * memscan.S: Optimized memscan for Sparc64. 2 * memscan.S: Optimized memscan for Sparc64.
3 * 3 *
4 * Copyright (C) 1997,1998 Jakub Jelinek (jj@ultra.linux.cz) 4 * Copyright (C) 1997,1998 Jakub Jelinek (jj@ultra.linux.cz)
diff --git a/arch/sparc64/lib/strncmp.S b/arch/sparc64/lib/strncmp.S
index 6f14f53dbabe..980e83751556 100644
--- a/arch/sparc64/lib/strncmp.S
+++ b/arch/sparc64/lib/strncmp.S
@@ -1,4 +1,4 @@
1/* $Id: strncmp.S,v 1.2 1997/03/11 17:51:44 jj Exp $ 1/*
2 * Sparc64 optimized strncmp code. 2 * Sparc64 optimized strncmp code.
3 * 3 *
4 * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz) 4 * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
diff --git a/arch/sparc64/lib/strncpy_from_user.S b/arch/sparc64/lib/strncpy_from_user.S
index b2f499f79427..511c8f136f95 100644
--- a/arch/sparc64/lib/strncpy_from_user.S
+++ b/arch/sparc64/lib/strncpy_from_user.S
@@ -1,4 +1,4 @@
1/* $Id: strncpy_from_user.S,v 1.6 1999/05/25 16:53:05 jj Exp $ 1/*
2 * strncpy_from_user.S: Sparc64 strncpy from userspace. 2 * strncpy_from_user.S: Sparc64 strncpy from userspace.
3 * 3 *
4 * Copyright (C) 1997, 1999 Jakub Jelinek (jj@ultra.linux.cz) 4 * Copyright (C) 1997, 1999 Jakub Jelinek (jj@ultra.linux.cz)
diff --git a/arch/sparc64/math-emu/math.c b/arch/sparc64/math-emu/math.c
index 6ee496c2864a..add053e0f3b3 100644
--- a/arch/sparc64/math-emu/math.c
+++ b/arch/sparc64/math-emu/math.c
@@ -1,4 +1,4 @@
1/* $Id: math.c,v 1.11 1999/12/20 05:02:25 davem Exp $ 1/*
2 * arch/sparc64/math-emu/math.c 2 * arch/sparc64/math-emu/math.c
3 * 3 *
4 * Copyright (C) 1997,1999 Jakub Jelinek (jj@ultra.linux.cz) 4 * Copyright (C) 1997,1999 Jakub Jelinek (jj@ultra.linux.cz)
diff --git a/arch/sparc64/math-emu/sfp-util.h b/arch/sparc64/math-emu/sfp-util.h
index 31e474738cf6..425d3cf01af4 100644
--- a/arch/sparc64/math-emu/sfp-util.h
+++ b/arch/sparc64/math-emu/sfp-util.h
@@ -1,4 +1,4 @@
1/* $Id: sfp-util.h,v 1.5 2001/06/10 06:48:46 davem Exp $ 1/*
2 * arch/sparc64/math-emu/sfp-util.h 2 * arch/sparc64/math-emu/sfp-util.h
3 * 3 *
4 * Copyright (C) 1999 Jakub Jelinek (jj@ultra.linux.cz) 4 * Copyright (C) 1999 Jakub Jelinek (jj@ultra.linux.cz)
diff --git a/arch/sparc64/mm/Makefile b/arch/sparc64/mm/Makefile
index e415bf942bcd..68d04c0370f4 100644
--- a/arch/sparc64/mm/Makefile
+++ b/arch/sparc64/mm/Makefile
@@ -1,4 +1,3 @@
1# $Id: Makefile,v 1.8 2000/12/14 22:57:25 davem Exp $
2# Makefile for the linux Sparc64-specific parts of the memory manager. 1# Makefile for the linux Sparc64-specific parts of the memory manager.
3# 2#
4 3
diff --git a/arch/sparc64/mm/fault.c b/arch/sparc64/mm/fault.c
index 2650d0d33ac2..236f4d228d2b 100644
--- a/arch/sparc64/mm/fault.c
+++ b/arch/sparc64/mm/fault.c
@@ -1,4 +1,4 @@
1/* $Id: fault.c,v 1.59 2002/02/09 19:49:31 davem Exp $ 1/*
2 * arch/sparc64/mm/fault.c: Page fault handlers for the 64-bit Sparc. 2 * arch/sparc64/mm/fault.c: Page fault handlers for the 64-bit Sparc.
3 * 3 *
4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc64/mm/generic.c b/arch/sparc64/mm/generic.c
index af9d81db0b38..f362c2037013 100644
--- a/arch/sparc64/mm/generic.c
+++ b/arch/sparc64/mm/generic.c
@@ -1,4 +1,4 @@
1/* $Id: generic.c,v 1.18 2001/12/21 04:56:15 davem Exp $ 1/*
2 * generic.c: Generic Sparc mm routines that are not dependent upon 2 * generic.c: Generic Sparc mm routines that are not dependent upon
3 * MMU type but are Sparc specific. 3 * MMU type but are Sparc specific.
4 * 4 *
diff --git a/arch/sparc64/mm/init.c b/arch/sparc64/mm/init.c
index ec3e2c72302a..84898c44dd4d 100644
--- a/arch/sparc64/mm/init.c
+++ b/arch/sparc64/mm/init.c
@@ -1,4 +1,4 @@
1/* $Id: init.c,v 1.209 2002/02/09 19:49:31 davem Exp $ 1/*
2 * arch/sparc64/mm/init.c 2 * arch/sparc64/mm/init.c
3 * 3 *
4 * Copyright (C) 1996-1999 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1996-1999 David S. Miller (davem@caip.rutgers.edu)
@@ -610,8 +610,6 @@ static void __init remap_kernel(void)
610 610
611static void __init inherit_prom_mappings(void) 611static void __init inherit_prom_mappings(void)
612{ 612{
613 read_obp_translations();
614
615 /* Now fixup OBP's idea about where we really are mapped. */ 613 /* Now fixup OBP's idea about where we really are mapped. */
616 printk("Remapping the kernel... "); 614 printk("Remapping the kernel... ");
617 remap_kernel(); 615 remap_kernel();
@@ -770,7 +768,7 @@ static void __init find_ramdisk(unsigned long phys_base)
770 initrd_start = ramdisk_image; 768 initrd_start = ramdisk_image;
771 initrd_end = ramdisk_image + sparc_ramdisk_size; 769 initrd_end = ramdisk_image + sparc_ramdisk_size;
772 770
773 lmb_reserve(initrd_start, initrd_end); 771 lmb_reserve(initrd_start, sparc_ramdisk_size);
774 772
775 initrd_start += PAGE_OFFSET; 773 initrd_start += PAGE_OFFSET;
776 initrd_end += PAGE_OFFSET; 774 initrd_end += PAGE_OFFSET;
@@ -1747,7 +1745,17 @@ void __init paging_init(void)
1747 1745
1748 lmb_init(); 1746 lmb_init();
1749 1747
1750 /* Find available physical memory... */ 1748 /* Find available physical memory...
1749 *
1750 * Read it twice in order to work around a bug in openfirmware.
1751 * The call to grab this table itself can cause openfirmware to
1752 * allocate memory, which in turn can take away some space from
1753 * the list of available memory. Reading it twice makes sure
1754 * we really do get the final value.
1755 */
1756 read_obp_translations();
1757 read_obp_memory("reg", &pall[0], &pall_ents);
1758 read_obp_memory("available", &pavail[0], &pavail_ents);
1751 read_obp_memory("available", &pavail[0], &pavail_ents); 1759 read_obp_memory("available", &pavail[0], &pavail_ents);
1752 1760
1753 phys_base = 0xffffffffffffffffUL; 1761 phys_base = 0xffffffffffffffffUL;
@@ -1788,8 +1796,6 @@ void __init paging_init(void)
1788 1796
1789 inherit_prom_mappings(); 1797 inherit_prom_mappings();
1790 1798
1791 read_obp_memory("reg", &pall[0], &pall_ents);
1792
1793 init_kpte_bitmap(); 1799 init_kpte_bitmap();
1794 1800
1795 /* Ok, we can use our TLB miss and window trap handlers safely. */ 1801 /* Ok, we can use our TLB miss and window trap handlers safely. */
diff --git a/arch/sparc64/mm/ultra.S b/arch/sparc64/mm/ultra.S
index 796e005dad8b..9bb2d90a9df6 100644
--- a/arch/sparc64/mm/ultra.S
+++ b/arch/sparc64/mm/ultra.S
@@ -1,7 +1,7 @@
1/* $Id: ultra.S,v 1.72 2002/02/09 19:49:31 davem Exp $ 1/*
2 * ultra.S: Don't expand these all over the place... 2 * ultra.S: Don't expand these all over the place...
3 * 3 *
4 * Copyright (C) 1997, 2000 David S. Miller (davem@redhat.com) 4 * Copyright (C) 1997, 2000, 2008 David S. Miller (davem@davemloft.net)
5 */ 5 */
6 6
7#include <asm/asi.h> 7#include <asm/asi.h>
@@ -15,6 +15,7 @@
15#include <asm/thread_info.h> 15#include <asm/thread_info.h>
16#include <asm/cacheflush.h> 16#include <asm/cacheflush.h>
17#include <asm/hypervisor.h> 17#include <asm/hypervisor.h>
18#include <asm/cpudata.h>
18 19
19 /* Basically, most of the Spitfire vs. Cheetah madness 20 /* Basically, most of the Spitfire vs. Cheetah madness
20 * has to do with the fact that Cheetah does not support 21 * has to do with the fact that Cheetah does not support
@@ -514,6 +515,32 @@ xcall_report_regs:
514 b rtrap_xcall 515 b rtrap_xcall
515 ldx [%sp + PTREGS_OFF + PT_V9_TSTATE], %l1 516 ldx [%sp + PTREGS_OFF + PT_V9_TSTATE], %l1
516 517
518#ifdef CONFIG_MAGIC_SYSRQ
519 .globl xcall_fetch_glob_regs
520xcall_fetch_glob_regs:
521 sethi %hi(global_reg_snapshot), %g1
522 or %g1, %lo(global_reg_snapshot), %g1
523 __GET_CPUID(%g2)
524 sllx %g2, 6, %g3
525 add %g1, %g3, %g1
526 rdpr %tstate, %g7
527 stx %g7, [%g1 + GR_SNAP_TSTATE]
528 rdpr %tpc, %g7
529 stx %g7, [%g1 + GR_SNAP_TPC]
530 rdpr %tnpc, %g7
531 stx %g7, [%g1 + GR_SNAP_TNPC]
532 stx %o7, [%g1 + GR_SNAP_O7]
533 stx %i7, [%g1 + GR_SNAP_I7]
534 sethi %hi(trap_block), %g7
535 or %g7, %lo(trap_block), %g7
536 sllx %g2, TRAP_BLOCK_SZ_SHIFT, %g2
537 add %g7, %g2, %g7
538 ldx [%g7 + TRAP_PER_CPU_THREAD], %g3
539 membar #StoreStore
540 stx %g3, [%g1 + GR_SNAP_THREAD]
541 retry
542#endif /* CONFIG_MAGIC_SYSRQ */
543
517#ifdef DCACHE_ALIASING_POSSIBLE 544#ifdef DCACHE_ALIASING_POSSIBLE
518 .align 32 545 .align 32
519 .globl xcall_flush_dcache_page_cheetah 546 .globl xcall_flush_dcache_page_cheetah
diff --git a/arch/sparc64/prom/Makefile b/arch/sparc64/prom/Makefile
index 3d33ed27bc27..8c94483ca54d 100644
--- a/arch/sparc64/prom/Makefile
+++ b/arch/sparc64/prom/Makefile
@@ -1,4 +1,3 @@
1# $Id: Makefile,v 1.7 2000/12/14 22:57:25 davem Exp $
2# Makefile for the Sun Boot PROM interface library under 1# Makefile for the Sun Boot PROM interface library under
3# Linux. 2# Linux.
4# 3#
diff --git a/arch/sparc64/prom/bootstr.c b/arch/sparc64/prom/bootstr.c
index a7278614e99d..ab9ccc63b388 100644
--- a/arch/sparc64/prom/bootstr.c
+++ b/arch/sparc64/prom/bootstr.c
@@ -1,4 +1,4 @@
1/* $Id: bootstr.c,v 1.6 1999/08/31 06:55:01 davem Exp $ 1/*
2 * bootstr.c: Boot string/argument acquisition from the PROM. 2 * bootstr.c: Boot string/argument acquisition from the PROM.
3 * 3 *
4 * Copyright(C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright(C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc64/prom/devops.c b/arch/sparc64/prom/devops.c
index 4641839eb39a..9dbd803e46e1 100644
--- a/arch/sparc64/prom/devops.c
+++ b/arch/sparc64/prom/devops.c
@@ -1,4 +1,4 @@
1/* $Id: devops.c,v 1.3 1997/10/29 07:43:28 ecd Exp $ 1/*
2 * devops.c: Device operations using the PROM. 2 * devops.c: Device operations using the PROM.
3 * 3 *
4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 4 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
diff --git a/arch/sparc64/prom/init.c b/arch/sparc64/prom/init.c
index 87e7c7ea0ee6..7b00f89490a4 100644
--- a/arch/sparc64/prom/init.c
+++ b/arch/sparc64/prom/init.c
@@ -1,4 +1,4 @@
1/* $Id: init.c,v 1.10 1999/09/21 14:35:59 davem Exp $ 1/*
2 * init.c: Initialize internal variables used by the PROM 2 * init.c: Initialize internal variables used by the PROM
3 * library functions. 3 * library functions.
4 * 4 *
diff --git a/arch/sparc64/prom/misc.c b/arch/sparc64/prom/misc.c
index 47a877a15abd..9b0c0760901e 100644
--- a/arch/sparc64/prom/misc.c
+++ b/arch/sparc64/prom/misc.c
@@ -1,4 +1,4 @@
1/* $Id: misc.c,v 1.20 2001/09/21 03:17:07 kanoj Exp $ 1/*
2 * misc.c: Miscellaneous prom functions that don't belong 2 * misc.c: Miscellaneous prom functions that don't belong
3 * anywhere else. 3 * anywhere else.
4 * 4 *
diff --git a/arch/sparc64/prom/p1275.c b/arch/sparc64/prom/p1275.c
index 7fcccc0e19cf..4b7c937bba61 100644
--- a/arch/sparc64/prom/p1275.c
+++ b/arch/sparc64/prom/p1275.c
@@ -1,4 +1,4 @@
1/* $Id: p1275.c,v 1.22 2001/10/18 09:40:00 davem Exp $ 1/*
2 * p1275.c: Sun IEEE 1275 PROM low level interface routines 2 * p1275.c: Sun IEEE 1275 PROM low level interface routines
3 * 3 *
4 * Copyright (C) 1996,1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz) 4 * Copyright (C) 1996,1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
diff --git a/arch/sparc64/prom/tree.c b/arch/sparc64/prom/tree.c
index a99ccd7fb1b0..281aea44790b 100644
--- a/arch/sparc64/prom/tree.c
+++ b/arch/sparc64/prom/tree.c
@@ -1,4 +1,4 @@
1/* $Id: tree.c,v 1.10 1998/01/10 22:39:00 ecd Exp $ 1/*
2 * tree.c: Basic device tree traversal/scanning for the Linux 2 * tree.c: Basic device tree traversal/scanning for the Linux
3 * prom library. 3 * prom library.
4 * 4 *
diff --git a/arch/um/Kconfig b/arch/um/Kconfig
index dba8e05f0287..6976812cfb18 100644
--- a/arch/um/Kconfig
+++ b/arch/um/Kconfig
@@ -259,6 +259,8 @@ if BROKEN
259 source "drivers/mtd/Kconfig" 259 source "drivers/mtd/Kconfig"
260endif 260endif
261 261
262source "drivers/leds/Kconfig"
263
262#This is just to shut up some Kconfig warnings, so no prompt. 264#This is just to shut up some Kconfig warnings, so no prompt.
263config INPUT 265config INPUT
264 bool 266 bool
diff --git a/arch/um/Kconfig.char b/arch/um/Kconfig.char
index 3a4b396d7979..1b238ebae6b3 100644
--- a/arch/um/Kconfig.char
+++ b/arch/um/Kconfig.char
@@ -145,14 +145,14 @@ config LEGACY_PTYS
145 systems, it is safe to say N. 145 systems, it is safe to say N.
146 146
147config RAW_DRIVER 147config RAW_DRIVER
148 tristate "RAW driver (/dev/raw/rawN) (OBSOLETE)" 148 tristate "RAW driver (/dev/raw/rawN)"
149 depends on BLOCK
149 help 150 help
150 The raw driver permits block devices to be bound to /dev/raw/rawN. 151 The raw driver permits block devices to be bound to /dev/raw/rawN.
151 Once bound, I/O against /dev/raw/rawN uses efficient zero-copy I/O. 152 Once bound, I/O against /dev/raw/rawN uses efficient zero-copy I/O.
152 See the raw(8) manpage for more details. 153 See the raw(8) manpage for more details.
153 154
154 The raw driver is deprecated and will be removed soon. 155 Applications should preferably open the device (eg /dev/hda1)
155 Applications should simply open the device (eg /dev/hda1)
156 with the O_DIRECT flag. 156 with the O_DIRECT flag.
157 157
158config MAX_RAW_DEVS 158config MAX_RAW_DEVS
diff --git a/arch/um/drivers/chan_user.c b/arch/um/drivers/chan_user.c
index 025764089ac8..cfeb3f4a44af 100644
--- a/arch/um/drivers/chan_user.c
+++ b/arch/um/drivers/chan_user.c
@@ -11,6 +11,7 @@
11#include <termios.h> 11#include <termios.h>
12#include <sys/ioctl.h> 12#include <sys/ioctl.h>
13#include "chan_user.h" 13#include "chan_user.h"
14#include "kern_constants.h"
14#include "os.h" 15#include "os.h"
15#include "um_malloc.h" 16#include "um_malloc.h"
16#include "user.h" 17#include "user.h"
diff --git a/arch/um/drivers/cow_sys.h b/arch/um/drivers/cow_sys.h
index ca8c9e11a39b..f5701fd2ef90 100644
--- a/arch/um/drivers/cow_sys.h
+++ b/arch/um/drivers/cow_sys.h
@@ -8,7 +8,7 @@
8 8
9static inline void *cow_malloc(int size) 9static inline void *cow_malloc(int size)
10{ 10{
11 return kmalloc(size, UM_GFP_KERNEL); 11 return uml_kmalloc(size, UM_GFP_KERNEL);
12} 12}
13 13
14static inline void cow_free(void *ptr) 14static inline void cow_free(void *ptr)
diff --git a/arch/um/drivers/daemon_user.c b/arch/um/drivers/daemon_user.c
index f23c109a055c..f8e85e0bdace 100644
--- a/arch/um/drivers/daemon_user.c
+++ b/arch/um/drivers/daemon_user.c
@@ -34,7 +34,7 @@ static struct sockaddr_un *new_addr(void *name, int len)
34{ 34{
35 struct sockaddr_un *sun; 35 struct sockaddr_un *sun;
36 36
37 sun = kmalloc(sizeof(struct sockaddr_un), UM_GFP_KERNEL); 37 sun = uml_kmalloc(sizeof(struct sockaddr_un), UM_GFP_KERNEL);
38 if (sun == NULL) { 38 if (sun == NULL) {
39 printk(UM_KERN_ERR "new_addr: allocation of sockaddr_un " 39 printk(UM_KERN_ERR "new_addr: allocation of sockaddr_un "
40 "failed\n"); 40 "failed\n");
@@ -83,7 +83,7 @@ static int connect_to_switch(struct daemon_data *pri)
83 goto out_close; 83 goto out_close;
84 } 84 }
85 85
86 sun = kmalloc(sizeof(struct sockaddr_un), UM_GFP_KERNEL); 86 sun = uml_kmalloc(sizeof(struct sockaddr_un), UM_GFP_KERNEL);
87 if (sun == NULL) { 87 if (sun == NULL) {
88 printk(UM_KERN_ERR "new_addr: allocation of sockaddr_un " 88 printk(UM_KERN_ERR "new_addr: allocation of sockaddr_un "
89 "failed\n"); 89 "failed\n");
diff --git a/arch/um/drivers/fd.c b/arch/um/drivers/fd.c
index 0a2bb5b64b82..f5a981a16240 100644
--- a/arch/um/drivers/fd.c
+++ b/arch/um/drivers/fd.c
@@ -40,7 +40,7 @@ static void *fd_init(char *str, int device, const struct chan_opts *opts)
40 return NULL; 40 return NULL;
41 } 41 }
42 42
43 data = kmalloc(sizeof(*data), UM_GFP_KERNEL); 43 data = uml_kmalloc(sizeof(*data), UM_GFP_KERNEL);
44 if (data == NULL) 44 if (data == NULL)
45 return NULL; 45 return NULL;
46 46
diff --git a/arch/um/drivers/hostaudio_kern.c b/arch/um/drivers/hostaudio_kern.c
index ff1b22b69e9c..368219cc2366 100644
--- a/arch/um/drivers/hostaudio_kern.c
+++ b/arch/um/drivers/hostaudio_kern.c
@@ -154,7 +154,7 @@ static int hostaudio_ioctl(struct inode *inode, struct file *file,
154 case SNDCTL_DSP_SUBDIVIDE: 154 case SNDCTL_DSP_SUBDIVIDE:
155 case SNDCTL_DSP_SETFRAGMENT: 155 case SNDCTL_DSP_SETFRAGMENT:
156 if (get_user(data, (int __user *) arg)) 156 if (get_user(data, (int __user *) arg))
157 return EFAULT; 157 return -EFAULT;
158 break; 158 break;
159 default: 159 default:
160 break; 160 break;
diff --git a/arch/um/drivers/mcast_user.c b/arch/um/drivers/mcast_user.c
index 5f647d7a7292..ee19e91568a2 100644
--- a/arch/um/drivers/mcast_user.c
+++ b/arch/um/drivers/mcast_user.c
@@ -15,6 +15,7 @@
15#include <unistd.h> 15#include <unistd.h>
16#include <errno.h> 16#include <errno.h>
17#include <netinet/in.h> 17#include <netinet/in.h>
18#include "kern_constants.h"
18#include "mcast.h" 19#include "mcast.h"
19#include "net_user.h" 20#include "net_user.h"
20#include "um_malloc.h" 21#include "um_malloc.h"
@@ -24,7 +25,7 @@ static struct sockaddr_in *new_addr(char *addr, unsigned short port)
24{ 25{
25 struct sockaddr_in *sin; 26 struct sockaddr_in *sin;
26 27
27 sin = kmalloc(sizeof(struct sockaddr_in), UM_GFP_KERNEL); 28 sin = uml_kmalloc(sizeof(struct sockaddr_in), UM_GFP_KERNEL);
28 if (sin == NULL) { 29 if (sin == NULL) {
29 printk(UM_KERN_ERR "new_addr: allocation of sockaddr_in " 30 printk(UM_KERN_ERR "new_addr: allocation of sockaddr_in "
30 "failed\n"); 31 "failed\n");
diff --git a/arch/um/drivers/net_user.c b/arch/um/drivers/net_user.c
index abf2653f5517..9415dd9e63ef 100644
--- a/arch/um/drivers/net_user.c
+++ b/arch/um/drivers/net_user.c
@@ -222,7 +222,7 @@ static void change(char *dev, char *what, unsigned char *addr,
222 netmask[2], netmask[3]); 222 netmask[2], netmask[3]);
223 223
224 output_len = UM_KERN_PAGE_SIZE; 224 output_len = UM_KERN_PAGE_SIZE;
225 output = kmalloc(output_len, UM_GFP_KERNEL); 225 output = uml_kmalloc(output_len, UM_GFP_KERNEL);
226 if (output == NULL) 226 if (output == NULL)
227 printk(UM_KERN_ERR "change : failed to allocate output " 227 printk(UM_KERN_ERR "change : failed to allocate output "
228 "buffer\n"); 228 "buffer\n");
diff --git a/arch/um/drivers/pcap_user.c b/arch/um/drivers/pcap_user.c
index e9809356c530..5f903587d69e 100644
--- a/arch/um/drivers/pcap_user.c
+++ b/arch/um/drivers/pcap_user.c
@@ -50,7 +50,7 @@ static int pcap_open(void *data)
50 return -EIO; 50 return -EIO;
51 } 51 }
52 52
53 pri->compiled = kmalloc(sizeof(struct bpf_program), 53 pri->compiled = uml_kmalloc(sizeof(struct bpf_program),
54 UM_GFP_KERNEL); 54 UM_GFP_KERNEL);
55 if (pri->compiled == NULL) { 55 if (pri->compiled == NULL) {
56 printk(UM_KERN_ERR "pcap_open : kmalloc failed\n"); 56 printk(UM_KERN_ERR "pcap_open : kmalloc failed\n");
diff --git a/arch/um/drivers/port_user.c b/arch/um/drivers/port_user.c
index d269ca387f10..b49bf56a56aa 100644
--- a/arch/um/drivers/port_user.c
+++ b/arch/um/drivers/port_user.c
@@ -47,7 +47,7 @@ static void *port_init(char *str, int device, const struct chan_opts *opts)
47 if (kern_data == NULL) 47 if (kern_data == NULL)
48 return NULL; 48 return NULL;
49 49
50 data = kmalloc(sizeof(*data), UM_GFP_KERNEL); 50 data = uml_kmalloc(sizeof(*data), UM_GFP_KERNEL);
51 if (data == NULL) 51 if (data == NULL)
52 goto err; 52 goto err;
53 53
diff --git a/arch/um/drivers/pty.c b/arch/um/drivers/pty.c
index 49c79dda6046..1113911dcb2b 100644
--- a/arch/um/drivers/pty.c
+++ b/arch/um/drivers/pty.c
@@ -29,7 +29,7 @@ static void *pty_chan_init(char *str, int device, const struct chan_opts *opts)
29{ 29{
30 struct pty_chan *data; 30 struct pty_chan *data;
31 31
32 data = kmalloc(sizeof(*data), UM_GFP_KERNEL); 32 data = uml_kmalloc(sizeof(*data), UM_GFP_KERNEL);
33 if (data == NULL) 33 if (data == NULL)
34 return NULL; 34 return NULL;
35 35
diff --git a/arch/um/drivers/random.c b/arch/um/drivers/random.c
index 71f0959c1535..4949044773ba 100644
--- a/arch/um/drivers/random.c
+++ b/arch/um/drivers/random.c
@@ -1,4 +1,5 @@
1/* Copyright (C) 2005 Jeff Dike <jdike@addtoit.com> */ 1/* Copyright (C) 2005 - 2008 Jeff Dike <jdike@{linux.intel,addtoit}.com> */
2
2/* Much of this ripped from drivers/char/hw_random.c, see there for other 3/* Much of this ripped from drivers/char/hw_random.c, see there for other
3 * copyright. 4 * copyright.
4 * 5 *
@@ -8,16 +9,18 @@
8#include <linux/sched.h> 9#include <linux/sched.h>
9#include <linux/module.h> 10#include <linux/module.h>
10#include <linux/fs.h> 11#include <linux/fs.h>
12#include <linux/interrupt.h>
11#include <linux/miscdevice.h> 13#include <linux/miscdevice.h>
12#include <linux/delay.h> 14#include <linux/delay.h>
13#include <asm/uaccess.h> 15#include <asm/uaccess.h>
16#include "irq_kern.h"
14#include "os.h" 17#include "os.h"
15 18
16/* 19/*
17 * core module and version information 20 * core module and version information
18 */ 21 */
19#define RNG_VERSION "1.0.0" 22#define RNG_VERSION "1.0.0"
20#define RNG_MODULE_NAME "random" 23#define RNG_MODULE_NAME "hw_random"
21 24
22#define RNG_MISCDEV_MINOR 183 /* official */ 25#define RNG_MISCDEV_MINOR 183 /* official */
23 26
@@ -26,47 +29,67 @@
26 * protects against a module being loaded twice at the same time. 29 * protects against a module being loaded twice at the same time.
27 */ 30 */
28static int random_fd = -1; 31static int random_fd = -1;
32static DECLARE_WAIT_QUEUE_HEAD(host_read_wait);
29 33
30static int rng_dev_open (struct inode *inode, struct file *filp) 34static int rng_dev_open (struct inode *inode, struct file *filp)
31{ 35{
32 /* enforce read-only access to this chrdev */ 36 /* enforce read-only access to this chrdev */
33 if ((filp->f_mode & FMODE_READ) == 0) 37 if ((filp->f_mode & FMODE_READ) == 0)
34 return -EINVAL; 38 return -EINVAL;
35 if (filp->f_mode & FMODE_WRITE) 39 if ((filp->f_mode & FMODE_WRITE) != 0)
36 return -EINVAL; 40 return -EINVAL;
37 41
38 return 0; 42 return 0;
39} 43}
40 44
45static atomic_t host_sleep_count = ATOMIC_INIT(0);
46
41static ssize_t rng_dev_read (struct file *filp, char __user *buf, size_t size, 47static ssize_t rng_dev_read (struct file *filp, char __user *buf, size_t size,
42 loff_t * offp) 48 loff_t *offp)
43{ 49{
44 u32 data; 50 u32 data;
45 int n, ret = 0, have_data; 51 int n, ret = 0, have_data;
46 52
47 while(size){ 53 while (size) {
48 n = os_read_file(random_fd, &data, sizeof(data)); 54 n = os_read_file(random_fd, &data, sizeof(data));
49 if(n > 0){ 55 if (n > 0) {
50 have_data = n; 56 have_data = n;
51 while (have_data && size) { 57 while (have_data && size) {
52 if (put_user((u8)data, buf++)) { 58 if (put_user((u8) data, buf++)) {
53 ret = ret ? : -EFAULT; 59 ret = ret ? : -EFAULT;
54 break; 60 break;
55 } 61 }
56 size--; 62 size--;
57 ret++; 63 ret++;
58 have_data--; 64 have_data--;
59 data>>=8; 65 data >>= 8;
60 } 66 }
61 } 67 }
62 else if(n == -EAGAIN){ 68 else if (n == -EAGAIN) {
63 if (filp->f_flags & O_NONBLOCK) 69 DECLARE_WAITQUEUE(wait, current);
64 return ret ? : -EAGAIN; 70
65 71 if (filp->f_flags & O_NONBLOCK)
66 if(need_resched()) 72 return ret ? : -EAGAIN;
67 schedule_timeout_interruptible(1); 73
68 } 74 atomic_inc(&host_sleep_count);
69 else return n; 75 reactivate_fd(random_fd, RANDOM_IRQ);
76 add_sigio_fd(random_fd);
77
78 add_wait_queue(&host_read_wait, &wait);
79 set_task_state(current, TASK_INTERRUPTIBLE);
80
81 schedule();
82 set_task_state(current, TASK_RUNNING);
83 remove_wait_queue(&host_read_wait, &wait);
84
85 if (atomic_dec_and_test(&host_sleep_count)) {
86 ignore_sigio_fd(random_fd);
87 deactivate_fd(random_fd, RANDOM_IRQ);
88 }
89 }
90 else
91 return n;
92
70 if (signal_pending (current)) 93 if (signal_pending (current))
71 return ret ? : -ERESTARTSYS; 94 return ret ? : -ERESTARTSYS;
72 } 95 }
@@ -86,6 +109,13 @@ static struct miscdevice rng_miscdev = {
86 &rng_chrdev_ops, 109 &rng_chrdev_ops,
87}; 110};
88 111
112static irqreturn_t random_interrupt(int irq, void *data)
113{
114 wake_up(&host_read_wait);
115
116 return IRQ_HANDLED;
117}
118
89/* 119/*
90 * rng_init - initialize RNG module 120 * rng_init - initialize RNG module
91 */ 121 */
@@ -93,28 +123,33 @@ static int __init rng_init (void)
93{ 123{
94 int err; 124 int err;
95 125
96 err = os_open_file("/dev/random", of_read(OPENFLAGS()), 0); 126 err = os_open_file("/dev/random", of_read(OPENFLAGS()), 0);
97 if(err < 0) 127 if (err < 0)
98 goto out; 128 goto out;
99 129
100 random_fd = err; 130 random_fd = err;
101 131
102 err = os_set_fd_block(random_fd, 0); 132 err = um_request_irq(RANDOM_IRQ, random_fd, IRQ_READ, random_interrupt,
103 if(err) 133 IRQF_DISABLED | IRQF_SAMPLE_RANDOM, "random",
134 NULL);
135 if (err)
104 goto err_out_cleanup_hw; 136 goto err_out_cleanup_hw;
105 137
138 sigio_broken(random_fd, 1);
139
106 err = misc_register (&rng_miscdev); 140 err = misc_register (&rng_miscdev);
107 if (err) { 141 if (err) {
108 printk (KERN_ERR RNG_MODULE_NAME ": misc device register failed\n"); 142 printk (KERN_ERR RNG_MODULE_NAME ": misc device register "
143 "failed\n");
109 goto err_out_cleanup_hw; 144 goto err_out_cleanup_hw;
110 } 145 }
146out:
147 return err;
111 148
112 out: 149err_out_cleanup_hw:
113 return err; 150 os_close_file(random_fd);
114 151 random_fd = -1;
115 err_out_cleanup_hw: 152 goto out;
116 random_fd = -1;
117 goto out;
118} 153}
119 154
120/* 155/*
@@ -122,6 +157,7 @@ static int __init rng_init (void)
122 */ 157 */
123static void __exit rng_cleanup (void) 158static void __exit rng_cleanup (void)
124{ 159{
160 os_close_file(random_fd);
125 misc_deregister (&rng_miscdev); 161 misc_deregister (&rng_miscdev);
126} 162}
127 163
diff --git a/arch/um/drivers/slip_user.c b/arch/um/drivers/slip_user.c
index 8b80505a3fb0..a1c2d2c98a94 100644
--- a/arch/um/drivers/slip_user.c
+++ b/arch/um/drivers/slip_user.c
@@ -96,7 +96,7 @@ static int slip_tramp(char **argv, int fd)
96 pid = err; 96 pid = err;
97 97
98 output_len = UM_KERN_PAGE_SIZE; 98 output_len = UM_KERN_PAGE_SIZE;
99 output = kmalloc(output_len, UM_GFP_KERNEL); 99 output = uml_kmalloc(output_len, UM_GFP_KERNEL);
100 if (output == NULL) { 100 if (output == NULL) {
101 printk(UM_KERN_ERR "slip_tramp : failed to allocate output " 101 printk(UM_KERN_ERR "slip_tramp : failed to allocate output "
102 "buffer\n"); 102 "buffer\n");
diff --git a/arch/um/drivers/tty.c b/arch/um/drivers/tty.c
index c930fedc5172..495858a090e4 100644
--- a/arch/um/drivers/tty.c
+++ b/arch/um/drivers/tty.c
@@ -29,7 +29,7 @@ static void *tty_chan_init(char *str, int device, const struct chan_opts *opts)
29 } 29 }
30 str++; 30 str++;
31 31
32 data = kmalloc(sizeof(*data), UM_GFP_KERNEL); 32 data = uml_kmalloc(sizeof(*data), UM_GFP_KERNEL);
33 if (data == NULL) 33 if (data == NULL)
34 return NULL; 34 return NULL;
35 *data = ((struct tty_chan) { .dev = str, 35 *data = ((struct tty_chan) { .dev = str,
diff --git a/arch/um/drivers/ubd_kern.c b/arch/um/drivers/ubd_kern.c
index 5e45e39a8a8d..b58fb8941d8d 100644
--- a/arch/um/drivers/ubd_kern.c
+++ b/arch/um/drivers/ubd_kern.c
@@ -49,7 +49,6 @@
49#include "irq_user.h" 49#include "irq_user.h"
50#include "irq_kern.h" 50#include "irq_kern.h"
51#include "ubd_user.h" 51#include "ubd_user.h"
52#include "kern_util.h"
53#include "os.h" 52#include "os.h"
54#include "mem.h" 53#include "mem.h"
55#include "mem_kern.h" 54#include "mem_kern.h"
@@ -1178,8 +1177,8 @@ static void cowify_bitmap(__u64 io_offset, int length, unsigned long *cow_mask,
1178 * by one word. Thanks to Lynn Kerby for the fix and James McMechan 1177 * by one word. Thanks to Lynn Kerby for the fix and James McMechan
1179 * for the original diagnosis. 1178 * for the original diagnosis.
1180 */ 1179 */
1181 if(*cow_offset == ((bitmap_len + sizeof(unsigned long) - 1) / 1180 if (*cow_offset == (DIV_ROUND_UP(bitmap_len,
1182 sizeof(unsigned long) - 1)) 1181 sizeof(unsigned long)) - 1))
1183 (*cow_offset)--; 1182 (*cow_offset)--;
1184 1183
1185 bitmap_words[0] = bitmap[*cow_offset]; 1184 bitmap_words[0] = bitmap[*cow_offset];
diff --git a/arch/um/drivers/xterm.c b/arch/um/drivers/xterm.c
index 8a1c18a9b240..da2caa5a21ef 100644
--- a/arch/um/drivers/xterm.c
+++ b/arch/um/drivers/xterm.c
@@ -30,7 +30,7 @@ static void *xterm_init(char *str, int device, const struct chan_opts *opts)
30{ 30{
31 struct xterm_chan *data; 31 struct xterm_chan *data;
32 32
33 data = kmalloc(sizeof(*data), UM_GFP_KERNEL); 33 data = uml_kmalloc(sizeof(*data), UM_GFP_KERNEL);
34 if (data == NULL) 34 if (data == NULL)
35 return NULL; 35 return NULL;
36 *data = ((struct xterm_chan) { .pid = -1, 36 *data = ((struct xterm_chan) { .pid = -1,
diff --git a/arch/um/include/as-layout.h b/arch/um/include/as-layout.h
index cac542d8ff70..58e852dfb0ce 100644
--- a/arch/um/include/as-layout.h
+++ b/arch/um/include/as-layout.h
@@ -23,16 +23,16 @@
23 */ 23 */
24 24
25#ifdef __ASSEMBLY__ 25#ifdef __ASSEMBLY__
26#define _AC(X, Y) (Y) 26#define _UML_AC(X, Y) (Y)
27#else 27#else
28#define __AC(X, Y) (X (Y)) 28#define __UML_AC(X, Y) (X(Y))
29#define _AC(X, Y) __AC(X, Y) 29#define _UML_AC(X, Y) __UML_AC(X, Y)
30#endif 30#endif
31 31
32#define STUB_START _AC(, 0x100000) 32#define STUB_START _UML_AC(, 0x100000)
33#define STUB_CODE _AC((unsigned long), STUB_START) 33#define STUB_CODE _UML_AC((unsigned long), STUB_START)
34#define STUB_DATA _AC((unsigned long), STUB_CODE + UM_KERN_PAGE_SIZE) 34#define STUB_DATA _UML_AC((unsigned long), STUB_CODE + UM_KERN_PAGE_SIZE)
35#define STUB_END _AC((unsigned long), STUB_DATA + UM_KERN_PAGE_SIZE) 35#define STUB_END _UML_AC((unsigned long), STUB_DATA + UM_KERN_PAGE_SIZE)
36 36
37#ifndef __ASSEMBLY__ 37#ifndef __ASSEMBLY__
38 38
diff --git a/arch/um/include/line.h b/arch/um/include/line.h
index 979b73e6352d..311a0d3d93af 100644
--- a/arch/um/include/line.h
+++ b/arch/um/include/line.h
@@ -58,11 +58,11 @@ struct line {
58}; 58};
59 59
60#define LINE_INIT(str, d) \ 60#define LINE_INIT(str, d) \
61 { .count_lock = SPIN_LOCK_UNLOCKED, \ 61 { .count_lock = __SPIN_LOCK_UNLOCKED((str).count_lock), \
62 .init_str = str, \ 62 .init_str = str, \
63 .init_pri = INIT_STATIC, \ 63 .init_pri = INIT_STATIC, \
64 .valid = 1, \ 64 .valid = 1, \
65 .lock = SPIN_LOCK_UNLOCKED, \ 65 .lock = __SPIN_LOCK_UNLOCKED((str).lock), \
66 .driver = d } 66 .driver = d }
67 67
68extern void line_close(struct tty_struct *tty, struct file * filp); 68extern void line_close(struct tty_struct *tty, struct file * filp);
diff --git a/arch/um/include/os.h b/arch/um/include/os.h
index 32c799e3a495..db5be46e3e18 100644
--- a/arch/um/include/os.h
+++ b/arch/um/include/os.h
@@ -290,6 +290,7 @@ extern void os_set_ioignore(void);
290extern int add_sigio_fd(int fd); 290extern int add_sigio_fd(int fd);
291extern int ignore_sigio_fd(int fd); 291extern int ignore_sigio_fd(int fd);
292extern void maybe_sigio_broken(int fd, int read); 292extern void maybe_sigio_broken(int fd, int read);
293extern void sigio_broken(int fd, int read);
293 294
294/* sys-x86_64/prctl.c */ 295/* sys-x86_64/prctl.c */
295extern int os_arch_prctl(int pid, int code, unsigned long *addr); 296extern int os_arch_prctl(int pid, int code, unsigned long *addr);
@@ -298,6 +299,6 @@ extern int os_arch_prctl(int pid, int code, unsigned long *addr);
298extern int get_pty(void); 299extern int get_pty(void);
299 300
300/* sys-$ARCH/task_size.c */ 301/* sys-$ARCH/task_size.c */
301extern unsigned long os_get_task_size(void); 302extern unsigned long os_get_top_address(void);
302 303
303#endif 304#endif
diff --git a/arch/um/include/process.h b/arch/um/include/process.h
index 5af9157ff54f..bb873a51262e 100644
--- a/arch/um/include/process.h
+++ b/arch/um/include/process.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (C) 2000, 2001, 2002 Jeff Dike (jdike@karaya.com) 2 * Copyright (C) 2000 - 2008 Jeff Dike (jdike@{addtoit,linux.intel}.com)
3 * Licensed under the GPL 3 * Licensed under the GPL
4 */ 4 */
5 5
@@ -8,18 +8,10 @@
8 8
9#include <signal.h> 9#include <signal.h>
10 10
11extern void sig_handler(int sig, struct sigcontext sc); 11/* Copied from linux/compiler-gcc.h since we can't include it directly */
12extern void alarm_handler(int sig, struct sigcontext sc); 12#define barrier() __asm__ __volatile__("": : :"memory")
13 13
14#endif 14extern void sig_handler(int sig, struct sigcontext *sc);
15extern void alarm_handler(int sig, struct sigcontext *sc);
15 16
16/* 17#endif
17 * Overrides for Emacs so that we follow Linus's tabbing style.
18 * Emacs will notice this stuff at the end of the file and automatically
19 * adjust the settings for this buffer only. This must remain at the end
20 * of the file.
21 * ---------------------------------------------------------------------------
22 * Local variables:
23 * c-file-style: "linux"
24 * End:
25 */
diff --git a/arch/um/include/skas_ptrace.h b/arch/um/include/skas_ptrace.h
index cd2327d09c8d..3d31bbacd016 100644
--- a/arch/um/include/skas_ptrace.h
+++ b/arch/um/include/skas_ptrace.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (C) 2000, 2001, 2002 Jeff Dike (jdike@karaya.com) 2 * Copyright (C) 2000 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
3 * Licensed under the GPL 3 * Licensed under the GPL
4 */ 4 */
5 5
@@ -12,14 +12,3 @@
12#include "sysdep/skas_ptrace.h" 12#include "sysdep/skas_ptrace.h"
13 13
14#endif 14#endif
15
16/*
17 * Overrides for Emacs so that we follow Linus's tabbing style.
18 * Emacs will notice this stuff at the end of the file and automatically
19 * adjust the settings for this buffer only. This must remain at the end
20 * of the file.
21 * ---------------------------------------------------------------------------
22 * Local variables:
23 * c-file-style: "linux"
24 * End:
25 */
diff --git a/arch/um/include/sysdep-i386/ptrace_user.h b/arch/um/include/sysdep-i386/ptrace_user.h
index 75650723c38f..ef56247e4143 100644
--- a/arch/um/include/sysdep-i386/ptrace_user.h
+++ b/arch/um/include/sysdep-i386/ptrace_user.h
@@ -41,38 +41,10 @@
41#define PT_SP_OFFSET PT_OFFSET(UESP) 41#define PT_SP_OFFSET PT_OFFSET(UESP)
42#define PT_SP(regs) ((regs)[UESP]) 42#define PT_SP(regs) ((regs)[UESP])
43 43
44#define FP_SIZE ((HOST_XFP_SIZE > HOST_FP_SIZE) ? HOST_XFP_SIZE : HOST_FP_SIZE) 44#define FP_SIZE ((HOST_FPX_SIZE > HOST_FP_SIZE) ? HOST_FPX_SIZE : HOST_FP_SIZE)
45 45
46#ifndef FRAME_SIZE 46#ifndef FRAME_SIZE
47#define FRAME_SIZE (17) 47#define FRAME_SIZE (17)
48#endif 48#endif
49#define FRAME_SIZE_OFFSET (FRAME_SIZE * sizeof(unsigned long))
50
51#define FP_FRAME_SIZE (27)
52#define FPX_FRAME_SIZE (128)
53
54#ifdef PTRACE_GETREGS
55#define UM_HAVE_GETREGS
56#endif
57
58#ifdef PTRACE_SETREGS
59#define UM_HAVE_SETREGS
60#endif
61
62#ifdef PTRACE_GETFPREGS
63#define UM_HAVE_GETFPREGS
64#endif
65
66#ifdef PTRACE_SETFPREGS
67#define UM_HAVE_SETFPREGS
68#endif
69
70#ifdef PTRACE_GETFPXREGS
71#define UM_HAVE_GETFPXREGS
72#endif
73
74#ifdef PTRACE_SETFPXREGS
75#define UM_HAVE_SETFPXREGS
76#endif
77 49
78#endif 50#endif
diff --git a/arch/um/include/sysdep-i386/sigcontext.h b/arch/um/include/sysdep-i386/sigcontext.h
index 67e77122aa45..f583c87111a0 100644
--- a/arch/um/include/sysdep-i386/sigcontext.h
+++ b/arch/um/include/sysdep-i386/sigcontext.h
@@ -10,7 +10,7 @@
10 10
11#define IP_RESTART_SYSCALL(ip) ((ip) -= 2) 11#define IP_RESTART_SYSCALL(ip) ((ip) -= 2)
12 12
13#define GET_FAULTINFO_FROM_SC(fi,sc) \ 13#define GET_FAULTINFO_FROM_SC(fi, sc) \
14 { \ 14 { \
15 (fi).cr2 = SC_CR2(sc); \ 15 (fi).cr2 = SC_CR2(sc); \
16 (fi).error_code = SC_ERR(sc); \ 16 (fi).error_code = SC_ERR(sc); \
diff --git a/arch/um/include/sysdep-x86_64/ptrace_user.h b/arch/um/include/sysdep-x86_64/ptrace_user.h
index 45c0bd881cb3..4dbccdb58f48 100644
--- a/arch/um/include/sysdep-x86_64/ptrace_user.h
+++ b/arch/um/include/sysdep-x86_64/ptrace_user.h
@@ -48,7 +48,8 @@
48#define PT_ORIG_RAX_OFFSET (ORIG_RAX) 48#define PT_ORIG_RAX_OFFSET (ORIG_RAX)
49#define PT_ORIG_RAX(regs) ((regs)[PT_INDEX(ORIG_RAX)]) 49#define PT_ORIG_RAX(regs) ((regs)[PT_INDEX(ORIG_RAX)])
50 50
51/* x86_64 FC3 doesn't define this in /usr/include/linux/ptrace.h even though 51/*
52 * x86_64 FC3 doesn't define this in /usr/include/linux/ptrace.h even though
52 * it's defined in the kernel's include/linux/ptrace.h. Additionally, use the 53 * it's defined in the kernel's include/linux/ptrace.h. Additionally, use the
53 * 2.4 name and value for 2.4 host compatibility. 54 * 2.4 name and value for 2.4 host compatibility.
54 */ 55 */
@@ -56,7 +57,8 @@
56#define PTRACE_OLDSETOPTIONS 21 57#define PTRACE_OLDSETOPTIONS 21
57#endif 58#endif
58 59
59/* These are before the system call, so the system call number is RAX 60/*
61 * These are before the system call, so the system call number is RAX
60 * rather than ORIG_RAX, and arg4 is R10 rather than RCX 62 * rather than ORIG_RAX, and arg4 is R10 rather than RCX
61 */ 63 */
62#define REGS_SYSCALL_NR PT_INDEX(RAX) 64#define REGS_SYSCALL_NR PT_INDEX(RAX)
@@ -73,14 +75,3 @@
73#define FP_SIZE (HOST_FP_SIZE) 75#define FP_SIZE (HOST_FP_SIZE)
74 76
75#endif 77#endif
76
77/*
78 * Overrides for Emacs so that we follow Linus's tabbing style.
79 * Emacs will notice this stuff at the end of the file and automatically
80 * adjust the settings for this buffer only. This must remain at the end
81 * of the file.
82 * ---------------------------------------------------------------------------
83 * Local variables:
84 * c-file-style: "linux"
85 * End:
86 */
diff --git a/arch/um/include/um_malloc.h b/arch/um/include/um_malloc.h
index 0ad17cb83d96..c554d706d106 100644
--- a/arch/um/include/um_malloc.h
+++ b/arch/um/include/um_malloc.h
@@ -8,15 +8,12 @@
8 8
9#include "kern_constants.h" 9#include "kern_constants.h"
10 10
11extern void *__kmalloc(int size, int flags); 11extern void *uml_kmalloc(int size, int flags);
12static inline void *kmalloc(int size, int flags)
13{
14 return __kmalloc(size, flags);
15}
16
17extern void kfree(const void *ptr); 12extern void kfree(const void *ptr);
18 13
19extern void *vmalloc(unsigned long size); 14extern void *vmalloc(unsigned long size);
20extern void vfree(void *ptr); 15extern void vfree(void *ptr);
21 16
22#endif /* __UM_MALLOC_H__ */ 17#endif /* __UM_MALLOC_H__ */
18
19
diff --git a/arch/um/kernel/dyn.lds.S b/arch/um/kernel/dyn.lds.S
index 26090b7f323e..9975e1ab44fb 100644
--- a/arch/um/kernel/dyn.lds.S
+++ b/arch/um/kernel/dyn.lds.S
@@ -1,4 +1,5 @@
1#include <asm-generic/vmlinux.lds.h> 1#include <asm-generic/vmlinux.lds.h>
2#include <asm/page.h>
2 3
3OUTPUT_FORMAT(ELF_FORMAT) 4OUTPUT_FORMAT(ELF_FORMAT)
4OUTPUT_ARCH(ELF_ARCH) 5OUTPUT_ARCH(ELF_ARCH)
@@ -21,7 +22,7 @@ SECTIONS
21 _einittext = .; 22 _einittext = .;
22 } 23 }
23 24
24 . = ALIGN(4096); 25 . = ALIGN(PAGE_SIZE);
25 26
26 /* Read-only sections, merged into text segment: */ 27 /* Read-only sections, merged into text segment: */
27 .hash : { *(.hash) } 28 .hash : { *(.hash) }
@@ -68,9 +69,9 @@ SECTIONS
68 /* .gnu.warning sections are handled specially by elf32.em. */ 69 /* .gnu.warning sections are handled specially by elf32.em. */
69 *(.gnu.warning) 70 *(.gnu.warning)
70 71
71 . = ALIGN(4096); 72 . = ALIGN(PAGE_SIZE);
72 } =0x90909090 73 } =0x90909090
73 . = ALIGN(4096); 74 . = ALIGN(PAGE_SIZE);
74 .syscall_stub : { 75 .syscall_stub : {
75 __syscall_stub_start = .; 76 __syscall_stub_start = .;
76 *(.__syscall_stub*) 77 *(.__syscall_stub*)
diff --git a/arch/um/kernel/init_task.c b/arch/um/kernel/init_task.c
index dcfceca95052..910eda8fca18 100644
--- a/arch/um/kernel/init_task.c
+++ b/arch/um/kernel/init_task.c
@@ -12,7 +12,6 @@
12 12
13static struct fs_struct init_fs = INIT_FS; 13static struct fs_struct init_fs = INIT_FS;
14struct mm_struct init_mm = INIT_MM(init_mm); 14struct mm_struct init_mm = INIT_MM(init_mm);
15static struct files_struct init_files = INIT_FILES;
16static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 15static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
17static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 16static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
18EXPORT_SYMBOL(init_mm); 17EXPORT_SYMBOL(init_mm);
diff --git a/arch/um/kernel/ksyms.c b/arch/um/kernel/ksyms.c
index 66e2a305a8d6..ccc02a616c22 100644
--- a/arch/um/kernel/ksyms.c
+++ b/arch/um/kernel/ksyms.c
@@ -60,6 +60,11 @@ EXPORT_SYMBOL(os_rcv_fd);
60EXPORT_SYMBOL(run_helper); 60EXPORT_SYMBOL(run_helper);
61EXPORT_SYMBOL(start_thread); 61EXPORT_SYMBOL(start_thread);
62 62
63EXPORT_SYMBOL(add_sigio_fd);
64EXPORT_SYMBOL(ignore_sigio_fd);
65EXPORT_SYMBOL(deactivate_fd);
66EXPORT_SYMBOL(sigio_broken);
67
63#ifdef CONFIG_SMP 68#ifdef CONFIG_SMP
64 69
65/* required for SMP */ 70/* required for SMP */
diff --git a/arch/um/kernel/mem.c b/arch/um/kernel/mem.c
index 2eea1ff235e6..b0ee64622ff7 100644
--- a/arch/um/kernel/mem.c
+++ b/arch/um/kernel/mem.c
@@ -375,3 +375,8 @@ pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address)
375 return pmd; 375 return pmd;
376} 376}
377#endif 377#endif
378
379void *uml_kmalloc(int size, int flags)
380{
381 return kmalloc(size, flags);
382}
diff --git a/arch/um/kernel/time.c b/arch/um/kernel/time.c
index 0d0cea2ac98d..c3e2f369c33c 100644
--- a/arch/um/kernel/time.c
+++ b/arch/um/kernel/time.c
@@ -75,7 +75,7 @@ static irqreturn_t um_timer(int irq, void *dev)
75 75
76static cycle_t itimer_read(void) 76static cycle_t itimer_read(void)
77{ 77{
78 return os_nsecs(); 78 return os_nsecs() / 1000;
79} 79}
80 80
81static struct clocksource itimer_clocksource = { 81static struct clocksource itimer_clocksource = {
@@ -83,7 +83,7 @@ static struct clocksource itimer_clocksource = {
83 .rating = 300, 83 .rating = 300,
84 .read = itimer_read, 84 .read = itimer_read,
85 .mask = CLOCKSOURCE_MASK(64), 85 .mask = CLOCKSOURCE_MASK(64),
86 .mult = 1, 86 .mult = 1000,
87 .shift = 0, 87 .shift = 0,
88 .flags = CLOCK_SOURCE_IS_CONTINUOUS, 88 .flags = CLOCK_SOURCE_IS_CONTINUOUS,
89}; 89};
diff --git a/arch/um/kernel/um_arch.c b/arch/um/kernel/um_arch.c
index 56deed623446..8d84250324b3 100644
--- a/arch/um/kernel/um_arch.c
+++ b/arch/um/kernel/um_arch.c
@@ -150,7 +150,7 @@ __uml_setup("root=", uml_root_setup,
150static int __init no_skas_debug_setup(char *line, int *add) 150static int __init no_skas_debug_setup(char *line, int *add)
151{ 151{
152 printf("'debug' is not necessary to gdb UML in skas mode - run \n"); 152 printf("'debug' is not necessary to gdb UML in skas mode - run \n");
153 printf("'gdb linux'"); 153 printf("'gdb linux'\n");
154 154
155 return 0; 155 return 0;
156} 156}
@@ -258,6 +258,7 @@ int __init linux_main(int argc, char **argv)
258{ 258{
259 unsigned long avail, diff; 259 unsigned long avail, diff;
260 unsigned long virtmem_size, max_physmem; 260 unsigned long virtmem_size, max_physmem;
261 unsigned long stack;
261 unsigned int i; 262 unsigned int i;
262 int add; 263 int add;
263 char * mode; 264 char * mode;
@@ -273,7 +274,7 @@ int __init linux_main(int argc, char **argv)
273 if (have_root == 0) 274 if (have_root == 0)
274 add_arg(DEFAULT_COMMAND_LINE); 275 add_arg(DEFAULT_COMMAND_LINE);
275 276
276 host_task_size = os_get_task_size(); 277 host_task_size = os_get_top_address();
277 /* 278 /*
278 * TASK_SIZE needs to be PGDIR_SIZE aligned or else exit_mmap craps 279 * TASK_SIZE needs to be PGDIR_SIZE aligned or else exit_mmap craps
279 * out 280 * out
@@ -348,7 +349,9 @@ int __init linux_main(int argc, char **argv)
348 } 349 }
349 350
350 virtmem_size = physmem_size; 351 virtmem_size = physmem_size;
351 avail = TASK_SIZE - start_vm; 352 stack = (unsigned long) argv;
353 stack &= ~(1024 * 1024 - 1);
354 avail = stack - start_vm;
352 if (physmem_size > avail) 355 if (physmem_size > avail)
353 virtmem_size = avail; 356 virtmem_size = avail;
354 end_vm = start_vm + virtmem_size; 357 end_vm = start_vm + virtmem_size;
diff --git a/arch/um/kernel/uml.lds.S b/arch/um/kernel/uml.lds.S
index 5828c1d54505..11b835248b86 100644
--- a/arch/um/kernel/uml.lds.S
+++ b/arch/um/kernel/uml.lds.S
@@ -1,4 +1,5 @@
1#include <asm-generic/vmlinux.lds.h> 1#include <asm-generic/vmlinux.lds.h>
2#include <asm/page.h>
2 3
3OUTPUT_FORMAT(ELF_FORMAT) 4OUTPUT_FORMAT(ELF_FORMAT)
4OUTPUT_ARCH(ELF_ARCH) 5OUTPUT_ARCH(ELF_ARCH)
@@ -26,7 +27,7 @@ SECTIONS
26 INIT_TEXT 27 INIT_TEXT
27 _einittext = .; 28 _einittext = .;
28 } 29 }
29 . = ALIGN(4096); 30 . = ALIGN(PAGE_SIZE);
30 31
31 .text : 32 .text :
32 { 33 {
@@ -39,7 +40,7 @@ SECTIONS
39 *(.gnu.linkonce.t*) 40 *(.gnu.linkonce.t*)
40 } 41 }
41 42
42 . = ALIGN(4096); 43 . = ALIGN(PAGE_SIZE);
43 .syscall_stub : { 44 .syscall_stub : {
44 __syscall_stub_start = .; 45 __syscall_stub_start = .;
45 *(.__syscall_stub*) 46 *(.__syscall_stub*)
@@ -79,7 +80,7 @@ SECTIONS
79 .sdata : { *(.sdata) } 80 .sdata : { *(.sdata) }
80 _edata = .; 81 _edata = .;
81 PROVIDE (edata = .); 82 PROVIDE (edata = .);
82 . = ALIGN(0x1000); 83 . = ALIGN(PAGE_SIZE);
83 .sbss : 84 .sbss :
84 { 85 {
85 __bss_start = .; 86 __bss_start = .;
diff --git a/arch/um/os-Linux/drivers/ethertap_user.c b/arch/um/os-Linux/drivers/ethertap_user.c
index 6fb0b174f538..cc72cb2c1af6 100644
--- a/arch/um/os-Linux/drivers/ethertap_user.c
+++ b/arch/um/os-Linux/drivers/ethertap_user.c
@@ -52,7 +52,7 @@ static void etap_change(int op, unsigned char *addr, unsigned char *netmask,
52 return; 52 return;
53 } 53 }
54 54
55 output = kmalloc(UM_KERN_PAGE_SIZE, UM_GFP_KERNEL); 55 output = uml_kmalloc(UM_KERN_PAGE_SIZE, UM_GFP_KERNEL);
56 if (output == NULL) 56 if (output == NULL)
57 printk(UM_KERN_ERR "etap_change : Failed to allocate output " 57 printk(UM_KERN_ERR "etap_change : Failed to allocate output "
58 "buffer\n"); 58 "buffer\n");
@@ -165,7 +165,7 @@ static int etap_open(void *data)
165 err = etap_tramp(pri->dev_name, pri->gate_addr, control_fds[0], 165 err = etap_tramp(pri->dev_name, pri->gate_addr, control_fds[0],
166 control_fds[1], data_fds[0], data_fds[1]); 166 control_fds[1], data_fds[0], data_fds[1]);
167 output_len = UM_KERN_PAGE_SIZE; 167 output_len = UM_KERN_PAGE_SIZE;
168 output = kmalloc(output_len, UM_GFP_KERNEL); 168 output = uml_kmalloc(output_len, UM_GFP_KERNEL);
169 read_output(control_fds[0], output, output_len); 169 read_output(control_fds[0], output, output_len);
170 170
171 if (output == NULL) 171 if (output == NULL)
diff --git a/arch/um/os-Linux/helper.c b/arch/um/os-Linux/helper.c
index f25c29a12d00..30860b89ec58 100644
--- a/arch/um/os-Linux/helper.c
+++ b/arch/um/os-Linux/helper.c
@@ -7,6 +7,7 @@
7#include <unistd.h> 7#include <unistd.h>
8#include <errno.h> 8#include <errno.h>
9#include <sched.h> 9#include <sched.h>
10#include <linux/limits.h>
10#include <sys/socket.h> 11#include <sys/socket.h>
11#include <sys/wait.h> 12#include <sys/wait.h>
12#include "kern_constants.h" 13#include "kern_constants.h"
@@ -71,8 +72,8 @@ int run_helper(void (*pre_exec)(void *), void *pre_data, char **argv)
71 data.pre_data = pre_data; 72 data.pre_data = pre_data;
72 data.argv = argv; 73 data.argv = argv;
73 data.fd = fds[1]; 74 data.fd = fds[1];
74 data.buf = __cant_sleep() ? kmalloc(PATH_MAX, UM_GFP_ATOMIC) : 75 data.buf = __cant_sleep() ? uml_kmalloc(PATH_MAX, UM_GFP_ATOMIC) :
75 kmalloc(PATH_MAX, UM_GFP_KERNEL); 76 uml_kmalloc(PATH_MAX, UM_GFP_KERNEL);
76 pid = clone(helper_child, (void *) sp, CLONE_VM, &data); 77 pid = clone(helper_child, (void *) sp, CLONE_VM, &data);
77 if (pid < 0) { 78 if (pid < 0) {
78 ret = -errno; 79 ret = -errno;
diff --git a/arch/um/os-Linux/main.c b/arch/um/os-Linux/main.c
index abb9b0ffd960..eee69b9f52c9 100644
--- a/arch/um/os-Linux/main.c
+++ b/arch/um/os-Linux/main.c
@@ -199,7 +199,7 @@ void *__wrap_malloc(int size)
199 return __real_malloc(size); 199 return __real_malloc(size);
200 else if (size <= UM_KERN_PAGE_SIZE) 200 else if (size <= UM_KERN_PAGE_SIZE)
201 /* finding contiguous pages can be hard*/ 201 /* finding contiguous pages can be hard*/
202 ret = kmalloc(size, UM_GFP_KERNEL); 202 ret = uml_kmalloc(size, UM_GFP_KERNEL);
203 else ret = vmalloc(size); 203 else ret = vmalloc(size);
204 204
205 /* 205 /*
diff --git a/arch/um/os-Linux/sigio.c b/arch/um/os-Linux/sigio.c
index abf47a7c4abd..eb8f2e4be192 100644
--- a/arch/um/os-Linux/sigio.c
+++ b/arch/um/os-Linux/sigio.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (C) 2002 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com) 2 * Copyright (C) 2002 - 2008 Jeff Dike (jdike@{addtoit,linux.intel}.com)
3 * Licensed under the GPL 3 * Licensed under the GPL
4 */ 4 */
5 5
@@ -15,6 +15,7 @@
15#include "kern_util.h" 15#include "kern_util.h"
16#include "init.h" 16#include "init.h"
17#include "os.h" 17#include "os.h"
18#include "process.h"
18#include "sigio.h" 19#include "sigio.h"
19#include "um_malloc.h" 20#include "um_malloc.h"
20#include "user.h" 21#include "user.h"
@@ -109,7 +110,7 @@ static int need_poll(struct pollfds *polls, int n)
109 if (n <= polls->size) 110 if (n <= polls->size)
110 return 0; 111 return 0;
111 112
112 new = kmalloc(n * sizeof(struct pollfd), UM_GFP_ATOMIC); 113 new = uml_kmalloc(n * sizeof(struct pollfd), UM_GFP_ATOMIC);
113 if (new == NULL) { 114 if (new == NULL) {
114 printk(UM_KERN_ERR "need_poll : failed to allocate new " 115 printk(UM_KERN_ERR "need_poll : failed to allocate new "
115 "pollfds\n"); 116 "pollfds\n");
@@ -243,7 +244,7 @@ static struct pollfd *setup_initial_poll(int fd)
243{ 244{
244 struct pollfd *p; 245 struct pollfd *p;
245 246
246 p = kmalloc(sizeof(struct pollfd), UM_GFP_KERNEL); 247 p = uml_kmalloc(sizeof(struct pollfd), UM_GFP_KERNEL);
247 if (p == NULL) { 248 if (p == NULL) {
248 printk(UM_KERN_ERR "setup_initial_poll : failed to allocate " 249 printk(UM_KERN_ERR "setup_initial_poll : failed to allocate "
249 "poll\n"); 250 "poll\n");
@@ -338,20 +339,10 @@ out_close1:
338 close(l_write_sigio_fds[1]); 339 close(l_write_sigio_fds[1]);
339} 340}
340 341
341/* Changed during early boot */ 342void sigio_broken(int fd, int read)
342static int pty_output_sigio = 0;
343static int pty_close_sigio = 0;
344
345void maybe_sigio_broken(int fd, int read)
346{ 343{
347 int err; 344 int err;
348 345
349 if (!isatty(fd))
350 return;
351
352 if ((read || pty_output_sigio) && (!read || pty_close_sigio))
353 return;
354
355 write_sigio_workaround(); 346 write_sigio_workaround();
356 347
357 sigio_lock(); 348 sigio_lock();
@@ -370,6 +361,21 @@ out:
370 sigio_unlock(); 361 sigio_unlock();
371} 362}
372 363
364/* Changed during early boot */
365static int pty_output_sigio;
366static int pty_close_sigio;
367
368void maybe_sigio_broken(int fd, int read)
369{
370 if (!isatty(fd))
371 return;
372
373 if ((read || pty_output_sigio) && (!read || pty_close_sigio))
374 return;
375
376 sigio_broken(fd, read);
377}
378
373static void sigio_cleanup(void) 379static void sigio_cleanup(void)
374{ 380{
375 if (write_sigio_pid == -1) 381 if (write_sigio_pid == -1)
@@ -383,7 +389,7 @@ static void sigio_cleanup(void)
383__uml_exitcall(sigio_cleanup); 389__uml_exitcall(sigio_cleanup);
384 390
385/* Used as a flag during SIGIO testing early in boot */ 391/* Used as a flag during SIGIO testing early in boot */
386static volatile int got_sigio = 0; 392static int got_sigio;
387 393
388static void __init handler(int sig) 394static void __init handler(int sig)
389{ 395{
@@ -498,7 +504,8 @@ static void tty_output(int master, int slave)
498 if (errno != EAGAIN) 504 if (errno != EAGAIN)
499 printk(UM_KERN_ERR "tty_output : write failed, errno = %d\n", 505 printk(UM_KERN_ERR "tty_output : write failed, errno = %d\n",
500 errno); 506 errno);
501 while (((n = read(slave, buf, sizeof(buf))) > 0) && !got_sigio) 507 while (((n = read(slave, buf, sizeof(buf))) > 0) &&
508 !({ barrier(); got_sigio; }))
502 ; 509 ;
503 510
504 if (got_sigio) { 511 if (got_sigio) {
diff --git a/arch/um/os-Linux/signal.c b/arch/um/os-Linux/signal.c
index 3f1694b134cb..5aade6027e40 100644
--- a/arch/um/os-Linux/signal.c
+++ b/arch/um/os-Linux/signal.c
@@ -12,6 +12,7 @@
12#include "as-layout.h" 12#include "as-layout.h"
13#include "kern_util.h" 13#include "kern_util.h"
14#include "os.h" 14#include "os.h"
15#include "process.h"
15#include "sysdep/barrier.h" 16#include "sysdep/barrier.h"
16#include "sysdep/sigcontext.h" 17#include "sysdep/sigcontext.h"
17#include "user.h" 18#include "user.h"
diff --git a/arch/um/os-Linux/skas/process.c b/arch/um/os-Linux/skas/process.c
index 1e8cba6550a9..172ad8f72e12 100644
--- a/arch/um/os-Linux/skas/process.c
+++ b/arch/um/os-Linux/skas/process.c
@@ -55,7 +55,7 @@ static int ptrace_dump_regs(int pid)
55 * Signals that are OK to receive in the stub - we'll just continue it. 55 * Signals that are OK to receive in the stub - we'll just continue it.
56 * SIGWINCH will happen when UML is inside a detached screen. 56 * SIGWINCH will happen when UML is inside a detached screen.
57 */ 57 */
58#define STUB_SIG_MASK (1 << SIGVTALRM) 58#define STUB_SIG_MASK ((1 << SIGVTALRM) | (1 << SIGWINCH))
59 59
60/* Signals that the stub will finish with - anything else is an error */ 60/* Signals that the stub will finish with - anything else is an error */
61#define STUB_DONE_MASK (1 << SIGTRAP) 61#define STUB_DONE_MASK (1 << SIGTRAP)
@@ -442,7 +442,7 @@ void userspace(struct uml_pt_regs *regs)
442 unblock_signals(); 442 unblock_signals();
443 break; 443 break;
444 default: 444 default:
445 printk(UM_KERN_ERR "userspace - child stopped " 445 printk(UM_KERN_ERR "userspace - child stopped "
446 "with signal %d\n", sig); 446 "with signal %d\n", sig);
447 fatal_sigsegv(); 447 fatal_sigsegv();
448 } 448 }
diff --git a/arch/um/os-Linux/start_up.c b/arch/um/os-Linux/start_up.c
index 997d01944f91..183db26d01bf 100644
--- a/arch/um/os-Linux/start_up.c
+++ b/arch/um/os-Linux/start_up.c
@@ -23,6 +23,7 @@
23#include "mem_user.h" 23#include "mem_user.h"
24#include "ptrace_user.h" 24#include "ptrace_user.h"
25#include "registers.h" 25#include "registers.h"
26#include "skas.h"
26#include "skas_ptrace.h" 27#include "skas_ptrace.h"
27 28
28static void ptrace_child(void) 29static void ptrace_child(void)
@@ -120,8 +121,10 @@ static int stop_ptraced_child(int pid, int exitcode, int mustexit)
120{ 121{
121 int status, n, ret = 0; 122 int status, n, ret = 0;
122 123
123 if (ptrace(PTRACE_CONT, pid, 0, 0) < 0) 124 if (ptrace(PTRACE_CONT, pid, 0, 0) < 0) {
124 fatal_perror("stop_ptraced_child : ptrace failed"); 125 perror("stop_ptraced_child : ptrace failed");
126 return -1;
127 }
125 CATCH_EINTR(n = waitpid(pid, &status, 0)); 128 CATCH_EINTR(n = waitpid(pid, &status, 0));
126 if (!WIFEXITED(status) || (WEXITSTATUS(status) != exitcode)) { 129 if (!WIFEXITED(status) || (WEXITSTATUS(status) != exitcode)) {
127 int exit_with = WEXITSTATUS(status); 130 int exit_with = WEXITSTATUS(status);
@@ -140,14 +143,27 @@ static int stop_ptraced_child(int pid, int exitcode, int mustexit)
140} 143}
141 144
142/* Changed only during early boot */ 145/* Changed only during early boot */
143int ptrace_faultinfo = 1; 146int ptrace_faultinfo;
144int ptrace_ldt = 1; 147static int disable_ptrace_faultinfo;
145int proc_mm = 1; 148
146int skas_needs_stub = 0; 149int ptrace_ldt;
150static int disable_ptrace_ldt;
151
152int proc_mm;
153static int disable_proc_mm;
154
155int have_switch_mm;
156static int disable_switch_mm;
157
158int skas_needs_stub;
147 159
148static int __init skas0_cmd_param(char *str, int* add) 160static int __init skas0_cmd_param(char *str, int* add)
149{ 161{
150 ptrace_faultinfo = proc_mm = 0; 162 disable_ptrace_faultinfo = 1;
163 disable_ptrace_ldt = 1;
164 disable_proc_mm = 1;
165 disable_switch_mm = 1;
166
151 return 0; 167 return 0;
152} 168}
153 169
@@ -157,15 +173,12 @@ static int __init mode_skas0_cmd_param(char *str, int* add)
157 __attribute__((alias("skas0_cmd_param"))); 173 __attribute__((alias("skas0_cmd_param")));
158 174
159__uml_setup("skas0", skas0_cmd_param, 175__uml_setup("skas0", skas0_cmd_param,
160 "skas0\n" 176"skas0\n"
161 " Disables SKAS3 usage, so that SKAS0 is used, unless \n" 177" Disables SKAS3 and SKAS4 usage, so that SKAS0 is used\n\n");
162 " you specify mode=tt.\n\n");
163 178
164__uml_setup("mode=skas0", mode_skas0_cmd_param, 179__uml_setup("mode=skas0", mode_skas0_cmd_param,
165 "mode=skas0\n" 180"mode=skas0\n"
166 " Disables SKAS3 usage, so that SKAS0 is used, unless you \n" 181" Disables SKAS3 and SKAS4 usage, so that SKAS0 is used.\n\n");
167 " specify mode=tt. Note that this was recently added - on \n"
168 " older kernels you must use simply \"skas0\".\n\n");
169 182
170/* Changed only during early boot */ 183/* Changed only during early boot */
171static int force_sysemu_disabled = 0; 184static int force_sysemu_disabled = 0;
@@ -201,7 +214,7 @@ static void __init check_sysemu(void)
201 if (n < 0) 214 if (n < 0)
202 fatal_perror("check_sysemu : wait failed"); 215 fatal_perror("check_sysemu : wait failed");
203 if (!WIFSTOPPED(status) || (WSTOPSIG(status) != SIGTRAP)) 216 if (!WIFSTOPPED(status) || (WSTOPSIG(status) != SIGTRAP))
204 fatal("check_sysemu : expected SIGTRAP, got status = %d", 217 fatal("check_sysemu : expected SIGTRAP, got status = %d\n",
205 status); 218 status);
206 219
207 if (ptrace(PTRACE_GETREGS, pid, 0, regs) < 0) 220 if (ptrace(PTRACE_GETREGS, pid, 0, regs) < 0)
@@ -243,9 +256,11 @@ static void __init check_sysemu(void)
243 256
244 if (WIFSTOPPED(status) && 257 if (WIFSTOPPED(status) &&
245 (WSTOPSIG(status) == (SIGTRAP|0x80))) { 258 (WSTOPSIG(status) == (SIGTRAP|0x80))) {
246 if (!count) 259 if (!count) {
247 fatal("check_ptrace : SYSEMU_SINGLESTEP " 260 non_fatal("check_ptrace : SYSEMU_SINGLESTEP "
248 "doesn't singlestep"); 261 "doesn't singlestep");
262 goto fail;
263 }
249 n = ptrace(PTRACE_POKEUSR, pid, PT_SYSCALL_RET_OFFSET, 264 n = ptrace(PTRACE_POKEUSR, pid, PT_SYSCALL_RET_OFFSET,
250 os_getpid()); 265 os_getpid());
251 if (n < 0) 266 if (n < 0)
@@ -255,9 +270,12 @@ static void __init check_sysemu(void)
255 } 270 }
256 else if (WIFSTOPPED(status) && (WSTOPSIG(status) == SIGTRAP)) 271 else if (WIFSTOPPED(status) && (WSTOPSIG(status) == SIGTRAP))
257 count++; 272 count++;
258 else 273 else {
259 fatal("check_ptrace : expected SIGTRAP or " 274 non_fatal("check_ptrace : expected SIGTRAP or "
260 "(SIGTRAP | 0x80), got status = %d", status); 275 "(SIGTRAP | 0x80), got status = %d\n",
276 status);
277 goto fail;
278 }
261 } 279 }
262 if (stop_ptraced_child(pid, 0, 0) < 0) 280 if (stop_ptraced_child(pid, 0, 0) < 0)
263 goto fail_stopped; 281 goto fail_stopped;
@@ -360,7 +378,7 @@ void __init os_early_checks(void)
360 378
361static int __init noprocmm_cmd_param(char *str, int* add) 379static int __init noprocmm_cmd_param(char *str, int* add)
362{ 380{
363 proc_mm = 0; 381 disable_proc_mm = 1;
364 return 0; 382 return 0;
365} 383}
366 384
@@ -372,7 +390,7 @@ __uml_setup("noprocmm", noprocmm_cmd_param,
372 390
373static int __init noptracefaultinfo_cmd_param(char *str, int* add) 391static int __init noptracefaultinfo_cmd_param(char *str, int* add)
374{ 392{
375 ptrace_faultinfo = 0; 393 disable_ptrace_faultinfo = 1;
376 return 0; 394 return 0;
377} 395}
378 396
@@ -384,7 +402,7 @@ __uml_setup("noptracefaultinfo", noptracefaultinfo_cmd_param,
384 402
385static int __init noptraceldt_cmd_param(char *str, int* add) 403static int __init noptraceldt_cmd_param(char *str, int* add)
386{ 404{
387 ptrace_ldt = 0; 405 disable_ptrace_ldt = 1;
388 return 0; 406 return 0;
389} 407}
390 408
@@ -404,17 +422,15 @@ static inline void check_skas3_ptrace_faultinfo(void)
404 422
405 n = ptrace(PTRACE_FAULTINFO, pid, 0, &fi); 423 n = ptrace(PTRACE_FAULTINFO, pid, 0, &fi);
406 if (n < 0) { 424 if (n < 0) {
407 ptrace_faultinfo = 0;
408 if (errno == EIO) 425 if (errno == EIO)
409 non_fatal("not found\n"); 426 non_fatal("not found\n");
410 else 427 else
411 perror("not found"); 428 perror("not found");
412 } 429 } else if (disable_ptrace_faultinfo)
430 non_fatal("found but disabled on command line\n");
413 else { 431 else {
414 if (!ptrace_faultinfo) 432 ptrace_faultinfo = 1;
415 non_fatal("found but disabled on command line\n"); 433 non_fatal("found\n");
416 else
417 non_fatal("found\n");
418 } 434 }
419 435
420 stop_ptraced_child(pid, 1, 1); 436 stop_ptraced_child(pid, 1, 1);
@@ -437,38 +453,30 @@ static inline void check_skas3_ptrace_ldt(void)
437 if (n < 0) { 453 if (n < 0) {
438 if (errno == EIO) 454 if (errno == EIO)
439 non_fatal("not found\n"); 455 non_fatal("not found\n");
440 else { 456 else
441 perror("not found"); 457 perror("not found");
442 } 458 } else if (disable_ptrace_ldt)
443 ptrace_ldt = 0; 459 non_fatal("found, but use is disabled\n");
444 }
445 else { 460 else {
446 if (ptrace_ldt) 461 ptrace_ldt = 1;
447 non_fatal("found\n"); 462 non_fatal("found\n");
448 else
449 non_fatal("found, but use is disabled\n");
450 } 463 }
451 464
452 stop_ptraced_child(pid, 1, 1); 465 stop_ptraced_child(pid, 1, 1);
453#else
454 /* PTRACE_LDT might be disabled via cmdline option.
455 * We want to override this, else we might use the stub
456 * without real need
457 */
458 ptrace_ldt = 1;
459#endif 466#endif
460} 467}
461 468
462static inline void check_skas3_proc_mm(void) 469static inline void check_skas3_proc_mm(void)
463{ 470{
464 non_fatal(" - /proc/mm..."); 471 non_fatal(" - /proc/mm...");
465 if (access("/proc/mm", W_OK) < 0) { 472 if (access("/proc/mm", W_OK) < 0)
466 proc_mm = 0;
467 perror("not found"); 473 perror("not found");
468 } 474 else if (disable_proc_mm)
469 else if (!proc_mm)
470 non_fatal("found but disabled on command line\n"); 475 non_fatal("found but disabled on command line\n");
471 else non_fatal("found\n"); 476 else {
477 proc_mm = 1;
478 non_fatal("found\n");
479 }
472} 480}
473 481
474void can_do_skas(void) 482void can_do_skas(void)
diff --git a/arch/um/os-Linux/sys-i386/registers.c b/arch/um/os-Linux/sys-i386/registers.c
index b613473b3ec1..229f7a53d8da 100644
--- a/arch/um/os-Linux/sys-i386/registers.c
+++ b/arch/um/os-Linux/sys-i386/registers.c
@@ -5,6 +5,8 @@
5 */ 5 */
6 6
7#include <errno.h> 7#include <errno.h>
8#include <sys/ptrace.h>
9#include <sys/user.h>
8#include "kern_constants.h" 10#include "kern_constants.h"
9#include "longjmp.h" 11#include "longjmp.h"
10#include "user.h" 12#include "user.h"
@@ -74,10 +76,10 @@ int put_fp_registers(int pid, unsigned long *regs)
74 76
75void arch_init_registers(int pid) 77void arch_init_registers(int pid)
76{ 78{
77 unsigned long fpx_regs[HOST_XFP_SIZE]; 79 struct user_fpxregs_struct fpx_regs;
78 int err; 80 int err;
79 81
80 err = ptrace(PTRACE_GETFPXREGS, pid, 0, fpx_regs); 82 err = ptrace(PTRACE_GETFPXREGS, pid, 0, &fpx_regs);
81 if (!err) 83 if (!err)
82 return; 84 return;
83 85
diff --git a/arch/um/os-Linux/sys-i386/task_size.c b/arch/um/os-Linux/sys-i386/task_size.c
index ccb49b0aff59..be04c1e183bf 100644
--- a/arch/um/os-Linux/sys-i386/task_size.c
+++ b/arch/um/os-Linux/sys-i386/task_size.c
@@ -63,7 +63,7 @@ static int page_ok(unsigned long page)
63 return ok; 63 return ok;
64} 64}
65 65
66unsigned long os_get_task_size(void) 66unsigned long os_get_top_address(void)
67{ 67{
68 struct sigaction sa, old; 68 struct sigaction sa, old;
69 unsigned long bottom = 0; 69 unsigned long bottom = 0;
@@ -76,9 +76,9 @@ unsigned long os_get_task_size(void)
76 * hosts, but shouldn't hurt otherwise. 76 * hosts, but shouldn't hurt otherwise.
77 */ 77 */
78 unsigned long top = 0xffffd000 >> UM_KERN_PAGE_SHIFT; 78 unsigned long top = 0xffffd000 >> UM_KERN_PAGE_SHIFT;
79 unsigned long test; 79 unsigned long test, original;
80 80
81 printf("Locating the top of the address space ... "); 81 printf("Locating the bottom of the address space ... ");
82 fflush(stdout); 82 fflush(stdout);
83 83
84 /* 84 /*
@@ -89,16 +89,31 @@ unsigned long os_get_task_size(void)
89 sigemptyset(&sa.sa_mask); 89 sigemptyset(&sa.sa_mask);
90 sa.sa_flags = SA_NODEFER; 90 sa.sa_flags = SA_NODEFER;
91 if (sigaction(SIGSEGV, &sa, &old)) { 91 if (sigaction(SIGSEGV, &sa, &old)) {
92 perror("os_get_task_size"); 92 perror("os_get_top_address");
93 exit(1); 93 exit(1);
94 } 94 }
95 95
96 if (!page_ok(bottom)) { 96 /* Manually scan the address space, bottom-up, until we find
97 fprintf(stderr, "Address 0x%x no good?\n", 97 * the first valid page (or run out of them).
98 bottom << UM_KERN_PAGE_SHIFT); 98 */
99 for (bottom = 0; bottom < top; bottom++) {
100 if (page_ok(bottom))
101 break;
102 }
103
104 /* If we've got this far, we ran out of pages. */
105 if (bottom == top) {
106 fprintf(stderr, "Unable to determine bottom of address "
107 "space.\n");
99 exit(1); 108 exit(1);
100 } 109 }
101 110
111 printf("0x%x\n", bottom << UM_KERN_PAGE_SHIFT);
112 printf("Locating the top of the address space ... ");
113 fflush(stdout);
114
115 original = bottom;
116
102 /* This could happen with a 4G/4G split */ 117 /* This could happen with a 4G/4G split */
103 if (page_ok(top)) 118 if (page_ok(top))
104 goto out; 119 goto out;
@@ -114,7 +129,7 @@ unsigned long os_get_task_size(void)
114out: 129out:
115 /* Restore the old SIGSEGV handling */ 130 /* Restore the old SIGSEGV handling */
116 if (sigaction(SIGSEGV, &old, NULL)) { 131 if (sigaction(SIGSEGV, &old, NULL)) {
117 perror("os_get_task_size"); 132 perror("os_get_top_address");
118 exit(1); 133 exit(1);
119 } 134 }
120 top <<= UM_KERN_PAGE_SHIFT; 135 top <<= UM_KERN_PAGE_SHIFT;
diff --git a/arch/um/os-Linux/sys-x86_64/task_size.c b/arch/um/os-Linux/sys-x86_64/task_size.c
index fad6f57f8ee3..26a0dd1f349c 100644
--- a/arch/um/os-Linux/sys-x86_64/task_size.c
+++ b/arch/um/os-Linux/sys-x86_64/task_size.c
@@ -1,4 +1,4 @@
1unsigned long os_get_task_size(unsigned long shift) 1unsigned long os_get_top_address(unsigned long shift)
2{ 2{
3 /* The old value of CONFIG_TOP_ADDR */ 3 /* The old value of CONFIG_TOP_ADDR */
4 return 0x7fc0000000; 4 return 0x7fc0000000;
diff --git a/arch/um/os-Linux/time.c b/arch/um/os-Linux/time.c
index e49280599465..dec5678fc17f 100644
--- a/arch/um/os-Linux/time.c
+++ b/arch/um/os-Linux/time.c
@@ -9,7 +9,9 @@
9#include <time.h> 9#include <time.h>
10#include <sys/time.h> 10#include <sys/time.h>
11#include "kern_constants.h" 11#include "kern_constants.h"
12#include "kern_util.h"
12#include "os.h" 13#include "os.h"
14#include "process.h"
13#include "user.h" 15#include "user.h"
14 16
15int set_interval(void) 17int set_interval(void)
@@ -58,12 +60,17 @@ static inline long long timeval_to_ns(const struct timeval *tv)
58long long disable_timer(void) 60long long disable_timer(void)
59{ 61{
60 struct itimerval time = ((struct itimerval) { { 0, 0 }, { 0, 0 } }); 62 struct itimerval time = ((struct itimerval) { { 0, 0 }, { 0, 0 } });
63 int remain, max = UM_NSEC_PER_SEC / UM_HZ;
61 64
62 if (setitimer(ITIMER_VIRTUAL, &time, &time) < 0) 65 if (setitimer(ITIMER_VIRTUAL, &time, &time) < 0)
63 printk(UM_KERN_ERR "disable_timer - setitimer failed, " 66 printk(UM_KERN_ERR "disable_timer - setitimer failed, "
64 "errno = %d\n", errno); 67 "errno = %d\n", errno);
65 68
66 return timeval_to_ns(&time.it_value); 69 remain = timeval_to_ns(&time.it_value);
70 if (remain > max)
71 remain = max;
72
73 return remain;
67} 74}
68 75
69long long os_nsecs(void) 76long long os_nsecs(void)
@@ -79,7 +86,48 @@ static int after_sleep_interval(struct timespec *ts)
79{ 86{
80 return 0; 87 return 0;
81} 88}
89
90static void deliver_alarm(void)
91{
92 alarm_handler(SIGVTALRM, NULL);
93}
94
95static unsigned long long sleep_time(unsigned long long nsecs)
96{
97 return nsecs;
98}
99
82#else 100#else
101unsigned long long last_tick;
102unsigned long long skew;
103
104static void deliver_alarm(void)
105{
106 unsigned long long this_tick = os_nsecs();
107 int one_tick = UM_NSEC_PER_SEC / UM_HZ;
108
109 /* Protection against the host's time going backwards */
110 if ((last_tick != 0) && (this_tick < last_tick))
111 this_tick = last_tick;
112
113 if (last_tick == 0)
114 last_tick = this_tick - one_tick;
115
116 skew += this_tick - last_tick;
117
118 while (skew >= one_tick) {
119 alarm_handler(SIGVTALRM, NULL);
120 skew -= one_tick;
121 }
122
123 last_tick = this_tick;
124}
125
126static unsigned long long sleep_time(unsigned long long nsecs)
127{
128 return nsecs > skew ? nsecs - skew : 0;
129}
130
83static inline long long timespec_to_us(const struct timespec *ts) 131static inline long long timespec_to_us(const struct timespec *ts)
84{ 132{
85 return ((long long) ts->tv_sec * UM_USEC_PER_SEC) + 133 return ((long long) ts->tv_sec * UM_USEC_PER_SEC) +
@@ -102,6 +150,11 @@ static int after_sleep_interval(struct timespec *ts)
102 */ 150 */
103 if (start_usecs > usec) 151 if (start_usecs > usec)
104 start_usecs = usec; 152 start_usecs = usec;
153
154 start_usecs -= skew / UM_NSEC_PER_USEC;
155 if (start_usecs < 0)
156 start_usecs = 0;
157
105 tv = ((struct timeval) { .tv_sec = start_usecs / UM_USEC_PER_SEC, 158 tv = ((struct timeval) { .tv_sec = start_usecs / UM_USEC_PER_SEC,
106 .tv_usec = start_usecs % UM_USEC_PER_SEC }); 159 .tv_usec = start_usecs % UM_USEC_PER_SEC });
107 interval = ((struct itimerval) { { 0, usec }, tv }); 160 interval = ((struct itimerval) { { 0, usec }, tv });
@@ -113,8 +166,6 @@ static int after_sleep_interval(struct timespec *ts)
113} 166}
114#endif 167#endif
115 168
116extern void alarm_handler(int sig, struct sigcontext *sc);
117
118void idle_sleep(unsigned long long nsecs) 169void idle_sleep(unsigned long long nsecs)
119{ 170{
120 struct timespec ts; 171 struct timespec ts;
@@ -126,10 +177,12 @@ void idle_sleep(unsigned long long nsecs)
126 */ 177 */
127 if (nsecs == 0) 178 if (nsecs == 0)
128 nsecs = UM_NSEC_PER_SEC / UM_HZ; 179 nsecs = UM_NSEC_PER_SEC / UM_HZ;
180
181 nsecs = sleep_time(nsecs);
129 ts = ((struct timespec) { .tv_sec = nsecs / UM_NSEC_PER_SEC, 182 ts = ((struct timespec) { .tv_sec = nsecs / UM_NSEC_PER_SEC,
130 .tv_nsec = nsecs % UM_NSEC_PER_SEC }); 183 .tv_nsec = nsecs % UM_NSEC_PER_SEC });
131 184
132 if (nanosleep(&ts, &ts) == 0) 185 if (nanosleep(&ts, &ts) == 0)
133 alarm_handler(SIGVTALRM, NULL); 186 deliver_alarm();
134 after_sleep_interval(&ts); 187 after_sleep_interval(&ts);
135} 188}
diff --git a/arch/um/sys-i386/ptrace.c b/arch/um/sys-i386/ptrace.c
index 6b4499906a6c..c9b176534d65 100644
--- a/arch/um/sys-i386/ptrace.c
+++ b/arch/um/sys-i386/ptrace.c
@@ -148,14 +148,13 @@ int peek_user(struct task_struct *child, long addr, long data)
148int get_fpregs(struct user_i387_struct __user *buf, struct task_struct *child) 148int get_fpregs(struct user_i387_struct __user *buf, struct task_struct *child)
149{ 149{
150 int err, n, cpu = ((struct thread_info *) child->stack)->cpu; 150 int err, n, cpu = ((struct thread_info *) child->stack)->cpu;
151 long fpregs[HOST_FP_SIZE]; 151 struct user_i387_struct fpregs;
152 152
153 BUG_ON(sizeof(*buf) != sizeof(fpregs)); 153 err = save_fp_registers(userspace_pid[cpu], (unsigned long *) &fpregs);
154 err = save_fp_registers(userspace_pid[cpu], fpregs);
155 if (err) 154 if (err)
156 return err; 155 return err;
157 156
158 n = copy_to_user(buf, fpregs, sizeof(fpregs)); 157 n = copy_to_user(buf, &fpregs, sizeof(fpregs));
159 if(n > 0) 158 if(n > 0)
160 return -EFAULT; 159 return -EFAULT;
161 160
@@ -165,27 +164,26 @@ int get_fpregs(struct user_i387_struct __user *buf, struct task_struct *child)
165int set_fpregs(struct user_i387_struct __user *buf, struct task_struct *child) 164int set_fpregs(struct user_i387_struct __user *buf, struct task_struct *child)
166{ 165{
167 int n, cpu = ((struct thread_info *) child->stack)->cpu; 166 int n, cpu = ((struct thread_info *) child->stack)->cpu;
168 long fpregs[HOST_FP_SIZE]; 167 struct user_i387_struct fpregs;
169 168
170 BUG_ON(sizeof(*buf) != sizeof(fpregs)); 169 n = copy_from_user(&fpregs, buf, sizeof(fpregs));
171 n = copy_from_user(fpregs, buf, sizeof(fpregs));
172 if (n > 0) 170 if (n > 0)
173 return -EFAULT; 171 return -EFAULT;
174 172
175 return restore_fp_registers(userspace_pid[cpu], fpregs); 173 return restore_fp_registers(userspace_pid[cpu],
174 (unsigned long *) &fpregs);
176} 175}
177 176
178int get_fpxregs(struct user_fxsr_struct __user *buf, struct task_struct *child) 177int get_fpxregs(struct user_fxsr_struct __user *buf, struct task_struct *child)
179{ 178{
180 int err, n, cpu = ((struct thread_info *) child->stack)->cpu; 179 int err, n, cpu = ((struct thread_info *) child->stack)->cpu;
181 long fpregs[HOST_XFP_SIZE]; 180 struct user_fxsr_struct fpregs;
182 181
183 BUG_ON(sizeof(*buf) != sizeof(fpregs)); 182 err = save_fpx_registers(userspace_pid[cpu], (unsigned long *) &fpregs);
184 err = save_fpx_registers(userspace_pid[cpu], fpregs);
185 if (err) 183 if (err)
186 return err; 184 return err;
187 185
188 n = copy_to_user(buf, fpregs, sizeof(fpregs)); 186 n = copy_to_user(buf, &fpregs, sizeof(fpregs));
189 if(n > 0) 187 if(n > 0)
190 return -EFAULT; 188 return -EFAULT;
191 189
@@ -195,14 +193,14 @@ int get_fpxregs(struct user_fxsr_struct __user *buf, struct task_struct *child)
195int set_fpxregs(struct user_fxsr_struct __user *buf, struct task_struct *child) 193int set_fpxregs(struct user_fxsr_struct __user *buf, struct task_struct *child)
196{ 194{
197 int n, cpu = ((struct thread_info *) child->stack)->cpu; 195 int n, cpu = ((struct thread_info *) child->stack)->cpu;
198 long fpregs[HOST_XFP_SIZE]; 196 struct user_fxsr_struct fpregs;
199 197
200 BUG_ON(sizeof(*buf) != sizeof(fpregs)); 198 n = copy_from_user(&fpregs, buf, sizeof(fpregs));
201 n = copy_from_user(fpregs, buf, sizeof(fpregs));
202 if (n > 0) 199 if (n > 0)
203 return -EFAULT; 200 return -EFAULT;
204 201
205 return restore_fpx_registers(userspace_pid[cpu], fpregs); 202 return restore_fpx_registers(userspace_pid[cpu],
203 (unsigned long *) &fpregs);
206} 204}
207 205
208long subarch_ptrace(struct task_struct *child, long request, long addr, 206long subarch_ptrace(struct task_struct *child, long request, long addr,
diff --git a/arch/um/sys-i386/user-offsets.c b/arch/um/sys-i386/user-offsets.c
index 39bd32bf84f0..5f883bfe773f 100644
--- a/arch/um/sys-i386/user-offsets.c
+++ b/arch/um/sys-i386/user-offsets.c
@@ -22,7 +22,7 @@ void foo(void)
22 OFFSET(HOST_SC_CR2, sigcontext, cr2); 22 OFFSET(HOST_SC_CR2, sigcontext, cr2);
23 23
24 DEFINE_LONGS(HOST_FP_SIZE, sizeof(struct user_fpregs_struct)); 24 DEFINE_LONGS(HOST_FP_SIZE, sizeof(struct user_fpregs_struct));
25 DEFINE_LONGS(HOST_XFP_SIZE, sizeof(struct user_fpxregs_struct)); 25 DEFINE_LONGS(HOST_FPX_SIZE, sizeof(struct user_fpxregs_struct));
26 26
27 DEFINE(HOST_IP, EIP); 27 DEFINE(HOST_IP, EIP);
28 DEFINE(HOST_SP, UESP); 28 DEFINE(HOST_SP, UESP);
diff --git a/arch/um/sys-x86_64/ksyms.c b/arch/um/sys-x86_64/ksyms.c
index 4d7d1a812d8f..1db2fce00948 100644
--- a/arch/um/sys-x86_64/ksyms.c
+++ b/arch/um/sys-x86_64/ksyms.c
@@ -1,5 +1,11 @@
1#include "linux/module.h" 1#include <linux/module.h>
2#include "asm/string.h" 2#include <asm/string.h>
3#include <asm/checksum.h>
3 4
4/*XXX: we need them because they would be exported by x86_64 */ 5/*XXX: we need them because they would be exported by x86_64 */
6#if (__GNUC__ == 4 && __GNUC_MINOR__ >= 3) || __GNUC__ > 4
7EXPORT_SYMBOL(memcpy);
8#else
5EXPORT_SYMBOL(__memcpy); 9EXPORT_SYMBOL(__memcpy);
10#endif
11EXPORT_SYMBOL(csum_partial);
diff --git a/arch/um/sys-x86_64/user-offsets.c b/arch/um/sys-x86_64/user-offsets.c
index 2f3443c6e859..973585414a66 100644
--- a/arch/um/sys-x86_64/user-offsets.c
+++ b/arch/um/sys-x86_64/user-offsets.c
@@ -24,7 +24,6 @@ void foo(void)
24 OFFSET(HOST_SC_TRAPNO, sigcontext, trapno); 24 OFFSET(HOST_SC_TRAPNO, sigcontext, trapno);
25 25
26 DEFINE(HOST_FP_SIZE, sizeof(struct _fpstate) / sizeof(unsigned long)); 26 DEFINE(HOST_FP_SIZE, sizeof(struct _fpstate) / sizeof(unsigned long));
27 DEFINE(HOST_XFP_SIZE, 0);
28 DEFINE_LONGS(HOST_RBX, RBX); 27 DEFINE_LONGS(HOST_RBX, RBX);
29 DEFINE_LONGS(HOST_RCX, RCX); 28 DEFINE_LONGS(HOST_RCX, RCX);
30 DEFINE_LONGS(HOST_RDI, RDI); 29 DEFINE_LONGS(HOST_RDI, RDI);
diff --git a/arch/v850/kernel/init_task.c b/arch/v850/kernel/init_task.c
index ed2f93cf7c66..44b274dff33f 100644
--- a/arch/v850/kernel/init_task.c
+++ b/arch/v850/kernel/init_task.c
@@ -21,7 +21,6 @@
21#include <asm/pgtable.h> 21#include <asm/pgtable.h>
22 22
23static struct fs_struct init_fs = INIT_FS; 23static struct fs_struct init_fs = INIT_FS;
24static struct files_struct init_files = INIT_FILES;
25static struct signal_struct init_signals = INIT_SIGNALS (init_signals); 24static struct signal_struct init_signals = INIT_SIGNALS (init_signals);
26static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 25static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
27struct mm_struct init_mm = INIT_MM (init_mm); 26struct mm_struct init_mm = INIT_MM (init_mm);
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index fe361ae7ef2f..52e18e6d2ba0 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -26,17 +26,10 @@ config X86
26 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) 26 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64)
27 select HAVE_ARCH_KGDB if !X86_VOYAGER 27 select HAVE_ARCH_KGDB if !X86_VOYAGER
28 28
29config DEFCONFIG_LIST 29config ARCH_DEFCONFIG
30 string 30 string
31 depends on X86_32 31 default "arch/x86/configs/i386_defconfig" if X86_32
32 option defconfig_list 32 default "arch/x86/configs/x86_64_defconfig" if X86_64
33 default "arch/x86/configs/i386_defconfig"
34
35config DEFCONFIG_LIST
36 string
37 depends on X86_64
38 option defconfig_list
39 default "arch/x86/configs/x86_64_defconfig"
40 33
41 34
42config GENERIC_LOCKBREAK 35config GENERIC_LOCKBREAK
@@ -1515,13 +1508,13 @@ config PCI_GOMMCONFIG
1515config PCI_GODIRECT 1508config PCI_GODIRECT
1516 bool "Direct" 1509 bool "Direct"
1517 1510
1518config PCI_GOANY
1519 bool "Any"
1520
1521config PCI_GOOLPC 1511config PCI_GOOLPC
1522 bool "OLPC" 1512 bool "OLPC"
1523 depends on OLPC 1513 depends on OLPC
1524 1514
1515config PCI_GOANY
1516 bool "Any"
1517
1525endchoice 1518endchoice
1526 1519
1527config PCI_BIOS 1520config PCI_BIOS
@@ -1538,9 +1531,8 @@ config PCI_MMCONFIG
1538 depends on X86_32 && PCI && ACPI && (PCI_GOMMCONFIG || PCI_GOANY) 1531 depends on X86_32 && PCI && ACPI && (PCI_GOMMCONFIG || PCI_GOANY)
1539 1532
1540config PCI_OLPC 1533config PCI_OLPC
1541 bool 1534 def_bool y
1542 depends on PCI && PCI_GOOLPC 1535 depends on PCI && OLPC && (PCI_GOOLPC || PCI_GOANY)
1543 default y
1544 1536
1545config PCI_DOMAINS 1537config PCI_DOMAINS
1546 def_bool y 1538 def_bool y
diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
index ac1e31ba4795..18363374d51a 100644
--- a/arch/x86/Kconfig.debug
+++ b/arch/x86/Kconfig.debug
@@ -6,15 +6,19 @@ config TRACE_IRQFLAGS_SUPPORT
6source "lib/Kconfig.debug" 6source "lib/Kconfig.debug"
7 7
8config NONPROMISC_DEVMEM 8config NONPROMISC_DEVMEM
9 bool "Disable promiscuous /dev/mem" 9 bool "Filter access to /dev/mem"
10 help 10 help
11 The /dev/mem file by default only allows userspace access to PCI 11 If this option is left off, you allow userspace access to all
12 space and the BIOS code and data regions. This is sufficient for 12 of memory, including kernel and userspace memory. Accidental
13 dosemu and X and all common users of /dev/mem. With this config 13 access to this is obviously disastrous, but specific access can
14 option, you allow userspace access to all of memory, including 14 be used by people debugging the kernel.
15 kernel and userspace memory. Accidental access to this is 15
16 obviously disasterous, but specific access can be used by people 16 If this option is switched on, the /dev/mem file only allows
17 debugging the kernel. 17 userspace access to PCI space and the BIOS code and data regions.
18 This is sufficient for dosemu and X and all common users of
19 /dev/mem.
20
21 If in doubt, say Y.
18 22
19config EARLY_PRINTK 23config EARLY_PRINTK
20 bool "Early printk" if EMBEDDED 24 bool "Early printk" if EMBEDDED
diff --git a/arch/x86/boot/a20.c b/arch/x86/boot/a20.c
index 90943f83e84d..e01aafd03bde 100644
--- a/arch/x86/boot/a20.c
+++ b/arch/x86/boot/a20.c
@@ -115,8 +115,6 @@ static void enable_a20_fast(void)
115 115
116int enable_a20(void) 116int enable_a20(void)
117{ 117{
118 int loops = A20_ENABLE_LOOPS;
119
120#if defined(CONFIG_X86_ELAN) 118#if defined(CONFIG_X86_ELAN)
121 /* Elan croaks if we try to touch the KBC */ 119 /* Elan croaks if we try to touch the KBC */
122 enable_a20_fast(); 120 enable_a20_fast();
@@ -128,6 +126,7 @@ int enable_a20(void)
128 enable_a20_kbc(); 126 enable_a20_kbc();
129 return 0; 127 return 0;
130#else 128#else
129 int loops = A20_ENABLE_LOOPS;
131 while (loops--) { 130 while (loops--) {
132 /* First, check to see if A20 is already enabled 131 /* First, check to see if A20 is already enabled
133 (legacy free, etc.) */ 132 (legacy free, etc.) */
diff --git a/arch/x86/boot/printf.c b/arch/x86/boot/printf.c
index c1d00c0274c4..50e47cdbdddd 100644
--- a/arch/x86/boot/printf.c
+++ b/arch/x86/boot/printf.c
@@ -56,7 +56,7 @@ static char *number(char *str, long num, int base, int size, int precision,
56 if (type & LEFT) 56 if (type & LEFT)
57 type &= ~ZEROPAD; 57 type &= ~ZEROPAD;
58 if (base < 2 || base > 36) 58 if (base < 2 || base > 36)
59 return 0; 59 return NULL;
60 c = (type & ZEROPAD) ? '0' : ' '; 60 c = (type & ZEROPAD) ? '0' : ' ';
61 sign = 0; 61 sign = 0;
62 if (type & SIGN) { 62 if (type & SIGN) {
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index 671591fcc61d..ff1a7b49a460 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -242,12 +242,19 @@ static int __init acpi_parse_madt(struct acpi_table_header *table)
242 242
243static void __cpuinit acpi_register_lapic(int id, u8 enabled) 243static void __cpuinit acpi_register_lapic(int id, u8 enabled)
244{ 244{
245 unsigned int ver = 0;
246
245 if (!enabled) { 247 if (!enabled) {
246 ++disabled_cpus; 248 ++disabled_cpus;
247 return; 249 return;
248 } 250 }
249 251
250 generic_processor_info(id, 0); 252#ifdef CONFIG_X86_32
253 if (boot_cpu_physical_apicid != -1U)
254 ver = apic_version[boot_cpu_physical_apicid];
255#endif
256
257 generic_processor_info(id, ver);
251} 258}
252 259
253static int __init 260static int __init
@@ -765,8 +772,13 @@ static void __init acpi_register_lapic_address(unsigned long address)
765 mp_lapic_addr = address; 772 mp_lapic_addr = address;
766 773
767 set_fixmap_nocache(FIX_APIC_BASE, address); 774 set_fixmap_nocache(FIX_APIC_BASE, address);
768 if (boot_cpu_physical_apicid == -1U) 775 if (boot_cpu_physical_apicid == -1U) {
769 boot_cpu_physical_apicid = GET_APIC_ID(read_apic_id()); 776 boot_cpu_physical_apicid = GET_APIC_ID(read_apic_id());
777#ifdef CONFIG_X86_32
778 apic_version[boot_cpu_physical_apicid] =
779 GET_APIC_VERSION(apic_read(APIC_LVR));
780#endif
781 }
770} 782}
771 783
772static int __init early_acpi_parse_madt_lapic_addr_ovr(void) 784static int __init early_acpi_parse_madt_lapic_addr_ovr(void)
diff --git a/arch/x86/kernel/acpi/realmode/wakeup.lds.S b/arch/x86/kernel/acpi/realmode/wakeup.lds.S
index 22fab6c4be15..7da00b799cda 100644
--- a/arch/x86/kernel/acpi/realmode/wakeup.lds.S
+++ b/arch/x86/kernel/acpi/realmode/wakeup.lds.S
@@ -12,11 +12,6 @@ ENTRY(_start)
12 12
13SECTIONS 13SECTIONS
14{ 14{
15 . = HEADER_OFFSET;
16 .header : {
17 *(.header)
18 }
19
20 . = 0; 15 . = 0;
21 .text : { 16 .text : {
22 *(.text*) 17 *(.text*)
@@ -50,6 +45,11 @@ SECTIONS
50 __bss_end = .; 45 __bss_end = .;
51 } 46 }
52 47
48 . = HEADER_OFFSET;
49 .header : {
50 *(.header)
51 }
52
53 . = ALIGN(16); 53 . = ALIGN(16);
54 _end = .; 54 _end = .;
55 55
diff --git a/arch/x86/kernel/apic_64.c b/arch/x86/kernel/apic_64.c
index 5910020c3f24..0633cfd0dc29 100644
--- a/arch/x86/kernel/apic_64.c
+++ b/arch/x86/kernel/apic_64.c
@@ -534,7 +534,7 @@ int setup_profiling_timer(unsigned int multiplier)
534 */ 534 */
535void clear_local_APIC(void) 535void clear_local_APIC(void)
536{ 536{
537 int maxlvt = lapic_get_maxlvt(); 537 int maxlvt;
538 u32 v; 538 u32 v;
539 539
540 /* APIC hasn't been mapped yet */ 540 /* APIC hasn't been mapped yet */
diff --git a/arch/x86/kernel/cpu/cpufreq/longrun.c b/arch/x86/kernel/cpu/cpufreq/longrun.c
index af4a867a097c..777a7ff075de 100644
--- a/arch/x86/kernel/cpu/cpufreq/longrun.c
+++ b/arch/x86/kernel/cpu/cpufreq/longrun.c
@@ -245,7 +245,7 @@ static unsigned int __init longrun_determine_freqs(unsigned int *low_freq,
245 if ((ecx > 95) || (ecx == 0) || (eax < ebx)) 245 if ((ecx > 95) || (ecx == 0) || (eax < ebx))
246 return -EIO; 246 return -EIO;
247 247
248 edx = (eax - ebx) / (100 - ecx); 248 edx = ((eax - ebx) * 100) / (100 - ecx);
249 *low_freq = edx * 1000; /* back to kHz */ 249 *low_freq = edx * 1000; /* back to kHz */
250 250
251 dprintk("low frequency is %u kHz\n", *low_freq); 251 dprintk("low frequency is %u kHz\n", *low_freq);
diff --git a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
index 46d4034d9f37..206791eb46e3 100644
--- a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+++ b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
@@ -1127,12 +1127,23 @@ static int __cpuinit powernowk8_cpu_init(struct cpufreq_policy *pol)
1127 * an UP version, and is deprecated by AMD. 1127 * an UP version, and is deprecated by AMD.
1128 */ 1128 */
1129 if (num_online_cpus() != 1) { 1129 if (num_online_cpus() != 1) {
1130 printk(KERN_ERR PFX "MP systems not supported by PSB BIOS structure\n"); 1130#ifndef CONFIG_ACPI_PROCESSOR
1131 printk(KERN_ERR PFX "ACPI Processor support is required "
1132 "for SMP systems but is absent. Please load the "
1133 "ACPI Processor module before starting this "
1134 "driver.\n");
1135#else
1136 printk(KERN_ERR PFX "Your BIOS does not provide ACPI "
1137 "_PSS objects in a way that Linux understands. "
1138 "Please report this to the Linux ACPI maintainers"
1139 " and complain to your BIOS vendor.\n");
1140#endif
1131 kfree(data); 1141 kfree(data);
1132 return -ENODEV; 1142 return -ENODEV;
1133 } 1143 }
1134 if (pol->cpu != 0) { 1144 if (pol->cpu != 0) {
1135 printk(KERN_ERR PFX "No _PSS objects for CPU other than CPU0\n"); 1145 printk(KERN_ERR PFX "No ACPI _PSS objects for CPU other than "
1146 "CPU0. Complain to your BIOS vendor.\n");
1136 kfree(data); 1147 kfree(data);
1137 return -ENODEV; 1148 return -ENODEV;
1138 } 1149 }
diff --git a/arch/x86/kernel/entry_32.S b/arch/x86/kernel/entry_32.S
index 0c7f64b99e17..159a1c76d2bd 100644
--- a/arch/x86/kernel/entry_32.S
+++ b/arch/x86/kernel/entry_32.S
@@ -248,6 +248,7 @@ ENTRY(resume_userspace)
248 DISABLE_INTERRUPTS(CLBR_ANY) # make sure we don't miss an interrupt 248 DISABLE_INTERRUPTS(CLBR_ANY) # make sure we don't miss an interrupt
249 # setting need_resched or sigpending 249 # setting need_resched or sigpending
250 # between sampling and the iret 250 # between sampling and the iret
251 TRACE_IRQS_OFF
251 movl TI_flags(%ebp), %ecx 252 movl TI_flags(%ebp), %ecx
252 andl $_TIF_WORK_MASK, %ecx # is there any work to be done on 253 andl $_TIF_WORK_MASK, %ecx # is there any work to be done on
253 # int/exception return? 254 # int/exception return?
diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S
index b2cc73768a9d..f7357cc0162c 100644
--- a/arch/x86/kernel/head_32.S
+++ b/arch/x86/kernel/head_32.S
@@ -189,7 +189,7 @@ default_entry:
189 * this stage. 189 * this stage.
190 */ 190 */
191 191
192#define KPMDS ((0x100000000-__PAGE_OFFSET) >> 30) /* Number of kernel PMDs */ 192#define KPMDS (((-__PAGE_OFFSET) >> 30) & 3) /* Number of kernel PMDs */
193 193
194 xorl %ebx,%ebx /* %ebx is kept at zero */ 194 xorl %ebx,%ebx /* %ebx is kept at zero */
195 195
diff --git a/arch/x86/kernel/i387.c b/arch/x86/kernel/i387.c
index e03cc952f233..eb9ddd8efb82 100644
--- a/arch/x86/kernel/i387.c
+++ b/arch/x86/kernel/i387.c
@@ -56,6 +56,11 @@ void __cpuinit mxcsr_feature_mask_init(void)
56 56
57void __init init_thread_xstate(void) 57void __init init_thread_xstate(void)
58{ 58{
59 if (!HAVE_HWFP) {
60 xstate_size = sizeof(struct i387_soft_struct);
61 return;
62 }
63
59 if (cpu_has_fxsr) 64 if (cpu_has_fxsr)
60 xstate_size = sizeof(struct i387_fxsave_struct); 65 xstate_size = sizeof(struct i387_fxsave_struct);
61#ifdef CONFIG_X86_32 66#ifdef CONFIG_X86_32
@@ -94,7 +99,7 @@ void __cpuinit fpu_init(void)
94int init_fpu(struct task_struct *tsk) 99int init_fpu(struct task_struct *tsk)
95{ 100{
96 if (tsk_used_math(tsk)) { 101 if (tsk_used_math(tsk)) {
97 if (tsk == current) 102 if (HAVE_HWFP && tsk == current)
98 unlazy_fpu(tsk); 103 unlazy_fpu(tsk);
99 return 0; 104 return 0;
100 } 105 }
@@ -109,6 +114,15 @@ int init_fpu(struct task_struct *tsk)
109 return -ENOMEM; 114 return -ENOMEM;
110 } 115 }
111 116
117#ifdef CONFIG_X86_32
118 if (!HAVE_HWFP) {
119 memset(tsk->thread.xstate, 0, xstate_size);
120 finit();
121 set_stopped_child_used_math(tsk);
122 return 0;
123 }
124#endif
125
112 if (cpu_has_fxsr) { 126 if (cpu_has_fxsr) {
113 struct i387_fxsave_struct *fx = &tsk->thread.xstate->fxsave; 127 struct i387_fxsave_struct *fx = &tsk->thread.xstate->fxsave;
114 128
@@ -330,13 +344,13 @@ int fpregs_get(struct task_struct *target, const struct user_regset *regset,
330 struct user_i387_ia32_struct env; 344 struct user_i387_ia32_struct env;
331 int ret; 345 int ret;
332 346
333 if (!HAVE_HWFP)
334 return fpregs_soft_get(target, regset, pos, count, kbuf, ubuf);
335
336 ret = init_fpu(target); 347 ret = init_fpu(target);
337 if (ret) 348 if (ret)
338 return ret; 349 return ret;
339 350
351 if (!HAVE_HWFP)
352 return fpregs_soft_get(target, regset, pos, count, kbuf, ubuf);
353
340 if (!cpu_has_fxsr) { 354 if (!cpu_has_fxsr) {
341 return user_regset_copyout(&pos, &count, &kbuf, &ubuf, 355 return user_regset_copyout(&pos, &count, &kbuf, &ubuf,
342 &target->thread.xstate->fsave, 0, 356 &target->thread.xstate->fsave, 0,
@@ -360,15 +374,15 @@ int fpregs_set(struct task_struct *target, const struct user_regset *regset,
360 struct user_i387_ia32_struct env; 374 struct user_i387_ia32_struct env;
361 int ret; 375 int ret;
362 376
363 if (!HAVE_HWFP)
364 return fpregs_soft_set(target, regset, pos, count, kbuf, ubuf);
365
366 ret = init_fpu(target); 377 ret = init_fpu(target);
367 if (ret) 378 if (ret)
368 return ret; 379 return ret;
369 380
370 set_stopped_child_used_math(target); 381 set_stopped_child_used_math(target);
371 382
383 if (!HAVE_HWFP)
384 return fpregs_soft_set(target, regset, pos, count, kbuf, ubuf);
385
372 if (!cpu_has_fxsr) { 386 if (!cpu_has_fxsr) {
373 return user_regset_copyin(&pos, &count, &kbuf, &ubuf, 387 return user_regset_copyin(&pos, &count, &kbuf, &ubuf,
374 &target->thread.xstate->fsave, 0, -1); 388 &target->thread.xstate->fsave, 0, -1);
@@ -474,18 +488,18 @@ static int restore_i387_fxsave(struct _fpstate_ia32 __user *buf)
474int restore_i387_ia32(struct _fpstate_ia32 __user *buf) 488int restore_i387_ia32(struct _fpstate_ia32 __user *buf)
475{ 489{
476 int err; 490 int err;
491 struct task_struct *tsk = current;
477 492
478 if (HAVE_HWFP) { 493 if (HAVE_HWFP)
479 struct task_struct *tsk = current;
480
481 clear_fpu(tsk); 494 clear_fpu(tsk);
482 495
483 if (!used_math()) { 496 if (!used_math()) {
484 err = init_fpu(tsk); 497 err = init_fpu(tsk);
485 if (err) 498 if (err)
486 return err; 499 return err;
487 } 500 }
488 501
502 if (HAVE_HWFP) {
489 if (cpu_has_fxsr) 503 if (cpu_has_fxsr)
490 err = restore_i387_fxsave(buf); 504 err = restore_i387_fxsave(buf);
491 else 505 else
diff --git a/arch/x86/kernel/init_task.c b/arch/x86/kernel/init_task.c
index 3d01e47777db..a4f93b4120c1 100644
--- a/arch/x86/kernel/init_task.c
+++ b/arch/x86/kernel/init_task.c
@@ -11,7 +11,6 @@
11#include <asm/desc.h> 11#include <asm/desc.h>
12 12
13static struct fs_struct init_fs = INIT_FS; 13static struct fs_struct init_fs = INIT_FS;
14static struct files_struct init_files = INIT_FILES;
15static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 14static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
16static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 15static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
17struct mm_struct init_mm = INIT_MM(init_mm); 16struct mm_struct init_mm = INIT_MM(init_mm);
diff --git a/arch/x86/kernel/io_apic_32.c b/arch/x86/kernel/io_apic_32.c
index 76769ccb1425..0774b231a28b 100644
--- a/arch/x86/kernel/io_apic_32.c
+++ b/arch/x86/kernel/io_apic_32.c
@@ -2130,14 +2130,10 @@ static inline void __init check_timer(void)
2130{ 2130{
2131 int apic1, pin1, apic2, pin2; 2131 int apic1, pin1, apic2, pin2;
2132 int vector; 2132 int vector;
2133 unsigned int ver;
2134 unsigned long flags; 2133 unsigned long flags;
2135 2134
2136 local_irq_save(flags); 2135 local_irq_save(flags);
2137 2136
2138 ver = apic_read(APIC_LVR);
2139 ver = GET_APIC_VERSION(ver);
2140
2141 /* 2137 /*
2142 * get/set the timer IRQ vector: 2138 * get/set the timer IRQ vector:
2143 */ 2139 */
@@ -2150,15 +2146,11 @@ static inline void __init check_timer(void)
2150 * mode for the 8259A whenever interrupts are routed 2146 * mode for the 8259A whenever interrupts are routed
2151 * through I/O APICs. Also IRQ0 has to be enabled in 2147 * through I/O APICs. Also IRQ0 has to be enabled in
2152 * the 8259A which implies the virtual wire has to be 2148 * the 8259A which implies the virtual wire has to be
2153 * disabled in the local APIC. Finally timer interrupts 2149 * disabled in the local APIC.
2154 * need to be acknowledged manually in the 8259A for
2155 * timer_interrupt() and for the i82489DX when using
2156 * the NMI watchdog.
2157 */ 2150 */
2158 apic_write_around(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT); 2151 apic_write_around(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT);
2159 init_8259A(1); 2152 init_8259A(1);
2160 timer_ack = !cpu_has_tsc; 2153 timer_ack = 1;
2161 timer_ack |= (nmi_watchdog == NMI_IO_APIC && !APIC_INTEGRATED(ver));
2162 if (timer_over_8254 > 0) 2154 if (timer_over_8254 > 0)
2163 enable_8259A_irq(0); 2155 enable_8259A_irq(0);
2164 2156
diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
index 4bc1be5d5472..08a30986d472 100644
--- a/arch/x86/kernel/kvmclock.c
+++ b/arch/x86/kernel/kvmclock.c
@@ -53,7 +53,7 @@ static cycle_t kvm_clock_read(void);
53 * have elapsed since the hypervisor wrote the data. So we try to account for 53 * have elapsed since the hypervisor wrote the data. So we try to account for
54 * that with system time 54 * that with system time
55 */ 55 */
56unsigned long kvm_get_wallclock(void) 56static unsigned long kvm_get_wallclock(void)
57{ 57{
58 u32 wc_sec, wc_nsec; 58 u32 wc_sec, wc_nsec;
59 u64 delta; 59 u64 delta;
@@ -86,7 +86,7 @@ unsigned long kvm_get_wallclock(void)
86 return ts.tv_sec + 1; 86 return ts.tv_sec + 1;
87} 87}
88 88
89int kvm_set_wallclock(unsigned long now) 89static int kvm_set_wallclock(unsigned long now)
90{ 90{
91 return 0; 91 return 0;
92} 92}
diff --git a/arch/x86/kernel/mfgpt_32.c b/arch/x86/kernel/mfgpt_32.c
index 3cad17fe026b..07c0f828f488 100644
--- a/arch/x86/kernel/mfgpt_32.c
+++ b/arch/x86/kernel/mfgpt_32.c
@@ -155,6 +155,7 @@ int geode_mfgpt_toggle_event(int timer, int cmp, int event, int enable)
155 wrmsr(msr, value, dummy); 155 wrmsr(msr, value, dummy);
156 return 0; 156 return 0;
157} 157}
158EXPORT_SYMBOL_GPL(geode_mfgpt_toggle_event);
158 159
159int geode_mfgpt_set_irq(int timer, int cmp, int irq, int enable) 160int geode_mfgpt_set_irq(int timer, int cmp, int irq, int enable)
160{ 161{
@@ -222,6 +223,7 @@ int geode_mfgpt_alloc_timer(int timer, int domain)
222 /* No timers available - too bad */ 223 /* No timers available - too bad */
223 return -1; 224 return -1;
224} 225}
226EXPORT_SYMBOL_GPL(geode_mfgpt_alloc_timer);
225 227
226 228
227#ifdef CONFIG_GEODE_MFGPT_TIMER 229#ifdef CONFIG_GEODE_MFGPT_TIMER
diff --git a/arch/x86/kernel/nmi_32.c b/arch/x86/kernel/nmi_32.c
index 11b14bbaa61e..84160f74eeb0 100644
--- a/arch/x86/kernel/nmi_32.c
+++ b/arch/x86/kernel/nmi_32.c
@@ -26,7 +26,6 @@
26 26
27#include <asm/smp.h> 27#include <asm/smp.h>
28#include <asm/nmi.h> 28#include <asm/nmi.h>
29#include <asm/timer.h>
30 29
31#include "mach_traps.h" 30#include "mach_traps.h"
32 31
@@ -82,7 +81,7 @@ int __init check_nmi_watchdog(void)
82 81
83 prev_nmi_count = kmalloc(NR_CPUS * sizeof(int), GFP_KERNEL); 82 prev_nmi_count = kmalloc(NR_CPUS * sizeof(int), GFP_KERNEL);
84 if (!prev_nmi_count) 83 if (!prev_nmi_count)
85 goto error; 84 return -1;
86 85
87 printk(KERN_INFO "Testing NMI watchdog ... "); 86 printk(KERN_INFO "Testing NMI watchdog ... ");
88 87
@@ -119,7 +118,7 @@ int __init check_nmi_watchdog(void)
119 if (!atomic_read(&nmi_active)) { 118 if (!atomic_read(&nmi_active)) {
120 kfree(prev_nmi_count); 119 kfree(prev_nmi_count);
121 atomic_set(&nmi_active, -1); 120 atomic_set(&nmi_active, -1);
122 goto error; 121 return -1;
123 } 122 }
124 printk("OK.\n"); 123 printk("OK.\n");
125 124
@@ -130,10 +129,6 @@ int __init check_nmi_watchdog(void)
130 129
131 kfree(prev_nmi_count); 130 kfree(prev_nmi_count);
132 return 0; 131 return 0;
133error:
134 timer_ack = !cpu_has_tsc;
135
136 return -1;
137} 132}
138 133
139static int __init setup_nmi_watchdog(char *str) 134static int __init setup_nmi_watchdog(char *str)
diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c
index 0c37f16b6950..dc00a1331ace 100644
--- a/arch/x86/kernel/pci-dma.c
+++ b/arch/x86/kernel/pci-dma.c
@@ -378,6 +378,7 @@ dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
378 struct page *page; 378 struct page *page;
379 unsigned long dma_mask = 0; 379 unsigned long dma_mask = 0;
380 dma_addr_t bus; 380 dma_addr_t bus;
381 int noretry = 0;
381 382
382 /* ignore region specifiers */ 383 /* ignore region specifiers */
383 gfp &= ~(__GFP_DMA | __GFP_HIGHMEM | __GFP_DMA32); 384 gfp &= ~(__GFP_DMA | __GFP_HIGHMEM | __GFP_DMA32);
@@ -385,30 +386,37 @@ dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
385 if (dma_alloc_from_coherent_mem(dev, size, dma_handle, &memory)) 386 if (dma_alloc_from_coherent_mem(dev, size, dma_handle, &memory))
386 return memory; 387 return memory;
387 388
388 if (!dev) 389 if (!dev) {
389 dev = &fallback_dev; 390 dev = &fallback_dev;
391 gfp |= GFP_DMA;
392 }
390 dma_mask = dev->coherent_dma_mask; 393 dma_mask = dev->coherent_dma_mask;
391 if (dma_mask == 0) 394 if (dma_mask == 0)
392 dma_mask = DMA_32BIT_MASK; 395 dma_mask = (gfp & GFP_DMA) ? DMA_24BIT_MASK : DMA_32BIT_MASK;
393 396
394 /* Device not DMA able */ 397 /* Device not DMA able */
395 if (dev->dma_mask == NULL) 398 if (dev->dma_mask == NULL)
396 return NULL; 399 return NULL;
397 400
398 /* Don't invoke OOM killer */ 401 /* Don't invoke OOM killer or retry in lower 16MB DMA zone */
399 gfp |= __GFP_NORETRY; 402 if (gfp & __GFP_DMA)
403 noretry = 1;
400 404
401#ifdef CONFIG_X86_64 405#ifdef CONFIG_X86_64
402 /* Why <=? Even when the mask is smaller than 4GB it is often 406 /* Why <=? Even when the mask is smaller than 4GB it is often
403 larger than 16MB and in this case we have a chance of 407 larger than 16MB and in this case we have a chance of
404 finding fitting memory in the next higher zone first. If 408 finding fitting memory in the next higher zone first. If
405 not retry with true GFP_DMA. -AK */ 409 not retry with true GFP_DMA. -AK */
406 if (dma_mask <= DMA_32BIT_MASK) 410 if (dma_mask <= DMA_32BIT_MASK && !(gfp & GFP_DMA)) {
407 gfp |= GFP_DMA32; 411 gfp |= GFP_DMA32;
412 if (dma_mask < DMA_32BIT_MASK)
413 noretry = 1;
414 }
408#endif 415#endif
409 416
410 again: 417 again:
411 page = dma_alloc_pages(dev, gfp, get_order(size)); 418 page = dma_alloc_pages(dev,
419 noretry ? gfp | __GFP_NORETRY : gfp, get_order(size));
412 if (page == NULL) 420 if (page == NULL)
413 return NULL; 421 return NULL;
414 422
diff --git a/arch/x86/kernel/pci-gart_64.c b/arch/x86/kernel/pci-gart_64.c
index c07455d1695f..aa8ec928caa8 100644
--- a/arch/x86/kernel/pci-gart_64.c
+++ b/arch/x86/kernel/pci-gart_64.c
@@ -26,6 +26,7 @@
26#include <linux/kdebug.h> 26#include <linux/kdebug.h>
27#include <linux/scatterlist.h> 27#include <linux/scatterlist.h>
28#include <linux/iommu-helper.h> 28#include <linux/iommu-helper.h>
29#include <linux/sysdev.h>
29#include <asm/atomic.h> 30#include <asm/atomic.h>
30#include <asm/io.h> 31#include <asm/io.h>
31#include <asm/mtrr.h> 32#include <asm/mtrr.h>
@@ -548,6 +549,28 @@ static __init unsigned read_aperture(struct pci_dev *dev, u32 *size)
548 return aper_base; 549 return aper_base;
549} 550}
550 551
552static int gart_resume(struct sys_device *dev)
553{
554 return 0;
555}
556
557static int gart_suspend(struct sys_device *dev, pm_message_t state)
558{
559 return -EINVAL;
560}
561
562static struct sysdev_class gart_sysdev_class = {
563 .name = "gart",
564 .suspend = gart_suspend,
565 .resume = gart_resume,
566
567};
568
569static struct sys_device device_gart = {
570 .id = 0,
571 .cls = &gart_sysdev_class,
572};
573
551/* 574/*
552 * Private Northbridge GATT initialization in case we cannot use the 575 * Private Northbridge GATT initialization in case we cannot use the
553 * AGP driver for some reason. 576 * AGP driver for some reason.
@@ -558,7 +581,7 @@ static __init int init_k8_gatt(struct agp_kern_info *info)
558 unsigned aper_base, new_aper_base; 581 unsigned aper_base, new_aper_base;
559 struct pci_dev *dev; 582 struct pci_dev *dev;
560 void *gatt; 583 void *gatt;
561 int i; 584 int i, error;
562 585
563 printk(KERN_INFO "PCI-DMA: Disabling AGP.\n"); 586 printk(KERN_INFO "PCI-DMA: Disabling AGP.\n");
564 aper_size = aper_base = info->aper_size = 0; 587 aper_size = aper_base = info->aper_size = 0;
@@ -606,6 +629,12 @@ static __init int init_k8_gatt(struct agp_kern_info *info)
606 629
607 pci_write_config_dword(dev, 0x90, ctl); 630 pci_write_config_dword(dev, 0x90, ctl);
608 } 631 }
632
633 error = sysdev_class_register(&gart_sysdev_class);
634 if (!error)
635 error = sysdev_register(&device_gart);
636 if (error)
637 panic("Could not register gart_sysdev -- would corrupt data on next suspend");
609 flush_gart(); 638 flush_gart();
610 639
611 printk(KERN_INFO "PCI-DMA: aperture base @ %x size %u KB\n", 640 printk(KERN_INFO "PCI-DMA: aperture base @ %x size %u KB\n",
diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c
index 67e9b4a1e89d..ba370dc8685b 100644
--- a/arch/x86/kernel/process.c
+++ b/arch/x86/kernel/process.c
@@ -99,15 +99,6 @@ static void mwait_idle(void)
99 local_irq_enable(); 99 local_irq_enable();
100} 100}
101 101
102
103static int __cpuinit mwait_usable(const struct cpuinfo_x86 *c)
104{
105 if (force_mwait)
106 return 1;
107 /* Any C1 states supported? */
108 return c->cpuid_level >= 5 && ((cpuid_edx(5) >> 4) & 0xf) > 0;
109}
110
111/* 102/*
112 * On SMP it's slightly faster (but much more power-consuming!) 103 * On SMP it's slightly faster (but much more power-consuming!)
113 * to poll the ->work.need_resched flag instead of waiting for the 104 * to poll the ->work.need_resched flag instead of waiting for the
@@ -119,6 +110,33 @@ static void poll_idle(void)
119 cpu_relax(); 110 cpu_relax();
120} 111}
121 112
113/*
114 * mwait selection logic:
115 *
116 * It depends on the CPU. For AMD CPUs that support MWAIT this is
117 * wrong. Family 0x10 and 0x11 CPUs will enter C1 on HLT. Powersavings
118 * then depend on a clock divisor and current Pstate of the core. If
119 * all cores of a processor are in halt state (C1) the processor can
120 * enter the C1E (C1 enhanced) state. If mwait is used this will never
121 * happen.
122 *
123 * idle=mwait overrides this decision and forces the usage of mwait.
124 */
125static int __cpuinit mwait_usable(const struct cpuinfo_x86 *c)
126{
127 if (force_mwait)
128 return 1;
129
130 if (c->x86_vendor == X86_VENDOR_AMD) {
131 switch(c->x86) {
132 case 0x10:
133 case 0x11:
134 return 0;
135 }
136 }
137 return 1;
138}
139
122void __cpuinit select_idle_routine(const struct cpuinfo_x86 *c) 140void __cpuinit select_idle_routine(const struct cpuinfo_x86 *c)
123{ 141{
124 static int selected; 142 static int selected;
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
index f8476dfbb60d..6d5483356e74 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
@@ -649,8 +649,11 @@ struct task_struct * __switch_to(struct task_struct *prev_p, struct task_struct
649 /* If the task has used fpu the last 5 timeslices, just do a full 649 /* If the task has used fpu the last 5 timeslices, just do a full
650 * restore of the math state immediately to avoid the trap; the 650 * restore of the math state immediately to avoid the trap; the
651 * chances of needing FPU soon are obviously high now 651 * chances of needing FPU soon are obviously high now
652 *
653 * tsk_used_math() checks prevent calling math_state_restore(),
654 * which can sleep in the case of !tsk_used_math()
652 */ 655 */
653 if (next_p->fpu_counter > 5) 656 if (tsk_used_math(next_p) && next_p->fpu_counter > 5)
654 math_state_restore(); 657 math_state_restore();
655 658
656 /* 659 /*
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index e2319f39988b..ac54ff56df80 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -658,8 +658,11 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
658 /* If the task has used fpu the last 5 timeslices, just do a full 658 /* If the task has used fpu the last 5 timeslices, just do a full
659 * restore of the math state immediately to avoid the trap; the 659 * restore of the math state immediately to avoid the trap; the
660 * chances of needing FPU soon are obviously high now 660 * chances of needing FPU soon are obviously high now
661 *
662 * tsk_used_math() checks prevent calling math_state_restore(),
663 * which can sleep in the case of !tsk_used_math()
661 */ 664 */
662 if (next_p->fpu_counter>5) 665 if (tsk_used_math(next_p) && next_p->fpu_counter > 5)
663 math_state_restore(); 666 math_state_restore();
664 return prev_p; 667 return prev_p;
665} 668}
diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c
index fb03ef380f0e..a7835f282936 100644
--- a/arch/x86/kernel/ptrace.c
+++ b/arch/x86/kernel/ptrace.c
@@ -1303,6 +1303,9 @@ static const struct user_regset_view user_x86_64_view = {
1303#define genregs32_get genregs_get 1303#define genregs32_get genregs_get
1304#define genregs32_set genregs_set 1304#define genregs32_set genregs_set
1305 1305
1306#define user_i387_ia32_struct user_i387_struct
1307#define user32_fxsr_struct user_fxsr_struct
1308
1306#endif /* CONFIG_X86_64 */ 1309#endif /* CONFIG_X86_64 */
1307 1310
1308#if defined CONFIG_X86_32 || defined CONFIG_IA32_EMULATION 1311#if defined CONFIG_X86_32 || defined CONFIG_IA32_EMULATION
@@ -1315,13 +1318,13 @@ static const struct user_regset x86_32_regsets[] = {
1315 }, 1318 },
1316 [REGSET_FP] = { 1319 [REGSET_FP] = {
1317 .core_note_type = NT_PRFPREG, 1320 .core_note_type = NT_PRFPREG,
1318 .n = sizeof(struct user_i387_struct) / sizeof(u32), 1321 .n = sizeof(struct user_i387_ia32_struct) / sizeof(u32),
1319 .size = sizeof(u32), .align = sizeof(u32), 1322 .size = sizeof(u32), .align = sizeof(u32),
1320 .active = fpregs_active, .get = fpregs_get, .set = fpregs_set 1323 .active = fpregs_active, .get = fpregs_get, .set = fpregs_set
1321 }, 1324 },
1322 [REGSET_XFP] = { 1325 [REGSET_XFP] = {
1323 .core_note_type = NT_PRXFPREG, 1326 .core_note_type = NT_PRXFPREG,
1324 .n = sizeof(struct user_i387_struct) / sizeof(u32), 1327 .n = sizeof(struct user32_fxsr_struct) / sizeof(u32),
1325 .size = sizeof(u32), .align = sizeof(u32), 1328 .size = sizeof(u32), .align = sizeof(u32),
1326 .active = xfpregs_active, .get = xfpregs_get, .set = xfpregs_set 1329 .active = xfpregs_active, .get = xfpregs_get, .set = xfpregs_set
1327 }, 1330 },
diff --git a/arch/x86/kernel/rtc.c b/arch/x86/kernel/rtc.c
index 9615eee9b775..05191bbc68b8 100644
--- a/arch/x86/kernel/rtc.c
+++ b/arch/x86/kernel/rtc.c
@@ -4,6 +4,8 @@
4#include <linux/acpi.h> 4#include <linux/acpi.h>
5#include <linux/bcd.h> 5#include <linux/bcd.h>
6#include <linux/mc146818rtc.h> 6#include <linux/mc146818rtc.h>
7#include <linux/platform_device.h>
8#include <linux/pnp.h>
7 9
8#include <asm/time.h> 10#include <asm/time.h>
9#include <asm/vsyscall.h> 11#include <asm/vsyscall.h>
@@ -197,3 +199,35 @@ unsigned long long native_read_tsc(void)
197} 199}
198EXPORT_SYMBOL(native_read_tsc); 200EXPORT_SYMBOL(native_read_tsc);
199 201
202
203static struct resource rtc_resources[] = {
204 [0] = {
205 .start = RTC_PORT(0),
206 .end = RTC_PORT(1),
207 .flags = IORESOURCE_IO,
208 },
209 [1] = {
210 .start = RTC_IRQ,
211 .end = RTC_IRQ,
212 .flags = IORESOURCE_IRQ,
213 }
214};
215
216static struct platform_device rtc_device = {
217 .name = "rtc_cmos",
218 .id = -1,
219 .resource = rtc_resources,
220 .num_resources = ARRAY_SIZE(rtc_resources),
221};
222
223static __init int add_rtc_cmos(void)
224{
225#ifdef CONFIG_PNP
226 if (!pnp_platform_devices)
227 platform_device_register(&rtc_device);
228#else
229 platform_device_register(&rtc_device);
230#endif /* CONFIG_PNP */
231 return 0;
232}
233device_initcall(add_rtc_cmos);
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index c0c68c18a788..6f80b852a196 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -12,6 +12,7 @@
12#include <asm/mpspec.h> 12#include <asm/mpspec.h>
13#include <asm/apicdef.h> 13#include <asm/apicdef.h>
14 14
15#ifdef CONFIG_X86_LOCAL_APIC
15unsigned int num_processors; 16unsigned int num_processors;
16unsigned disabled_cpus __cpuinitdata; 17unsigned disabled_cpus __cpuinitdata;
17/* Processor that is doing the boot up */ 18/* Processor that is doing the boot up */
@@ -23,8 +24,9 @@ EXPORT_PER_CPU_SYMBOL(x86_cpu_to_apicid);
23 24
24/* Bitmask of physically existing CPUs */ 25/* Bitmask of physically existing CPUs */
25physid_mask_t phys_cpu_present_map; 26physid_mask_t phys_cpu_present_map;
27#endif
26 28
27#if defined(CONFIG_HAVE_SETUP_PER_CPU_AREA) && defined(CONFIG_SMP) 29#if defined(CONFIG_HAVE_SETUP_PER_CPU_AREA) && defined(CONFIG_X86_SMP)
28/* 30/*
29 * Copy data used in early init routines from the initial arrays to the 31 * Copy data used in early init routines from the initial arrays to the
30 * per cpu data areas. These arrays then become expendable and the 32 * per cpu data areas. These arrays then become expendable and the
diff --git a/arch/x86/kernel/setup_64.c b/arch/x86/kernel/setup_64.c
index f2fc8feb727d..6dff1286ad8a 100644
--- a/arch/x86/kernel/setup_64.c
+++ b/arch/x86/kernel/setup_64.c
@@ -951,7 +951,7 @@ static void __cpuinit init_intel(struct cpuinfo_x86 *c)
951static void __cpuinit early_init_centaur(struct cpuinfo_x86 *c) 951static void __cpuinit early_init_centaur(struct cpuinfo_x86 *c)
952{ 952{
953 if (c->x86 == 0x6 && c->x86_model >= 0xf) 953 if (c->x86 == 0x6 && c->x86_model >= 0xf)
954 set_bit(X86_FEATURE_CONSTANT_TSC, &c->x86_capability); 954 set_cpu_cap(c, X86_FEATURE_CONSTANT_TSC);
955} 955}
956 956
957static void __cpuinit init_centaur(struct cpuinfo_x86 *c) 957static void __cpuinit init_centaur(struct cpuinfo_x86 *c)
diff --git a/arch/x86/kernel/smp.c b/arch/x86/kernel/smp.c
index 8f75893a6467..0cb7aadc87cd 100644
--- a/arch/x86/kernel/smp.c
+++ b/arch/x86/kernel/smp.c
@@ -231,7 +231,8 @@ native_smp_call_function_mask(cpumask_t mask,
231 wmb(); 231 wmb();
232 232
233 /* Send a message to other CPUs */ 233 /* Send a message to other CPUs */
234 if (cpus_equal(mask, allbutself)) 234 if (cpus_equal(mask, allbutself) &&
235 cpus_equal(cpu_online_map, cpu_callout_map))
235 send_IPI_allbutself(CALL_FUNCTION_VECTOR); 236 send_IPI_allbutself(CALL_FUNCTION_VECTOR);
236 else 237 else
237 send_IPI_mask(mask, CALL_FUNCTION_VECTOR); 238 send_IPI_mask(mask, CALL_FUNCTION_VECTOR);
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
index 6b087ab6cd8f..56078d61c793 100644
--- a/arch/x86/kernel/smpboot.c
+++ b/arch/x86/kernel/smpboot.c
@@ -86,6 +86,7 @@ void *x86_bios_cpu_apicid_early_ptr;
86 86
87#ifdef CONFIG_X86_32 87#ifdef CONFIG_X86_32
88u8 apicid_2_node[MAX_APICID]; 88u8 apicid_2_node[MAX_APICID];
89static int low_mappings;
89#endif 90#endif
90 91
91/* State of each CPU */ 92/* State of each CPU */
@@ -326,6 +327,12 @@ static void __cpuinit start_secondary(void *unused)
326 enable_8259A_irq(0); 327 enable_8259A_irq(0);
327 } 328 }
328 329
330#ifdef CONFIG_X86_32
331 while (low_mappings)
332 cpu_relax();
333 __flush_tlb_all();
334#endif
335
329 /* This must be done before setting cpu_online_map */ 336 /* This must be done before setting cpu_online_map */
330 set_cpu_sibling_map(raw_smp_processor_id()); 337 set_cpu_sibling_map(raw_smp_processor_id());
331 wmb(); 338 wmb();
@@ -1040,14 +1047,20 @@ int __cpuinit native_cpu_up(unsigned int cpu)
1040#ifdef CONFIG_X86_32 1047#ifdef CONFIG_X86_32
1041 /* init low mem mapping */ 1048 /* init low mem mapping */
1042 clone_pgd_range(swapper_pg_dir, swapper_pg_dir + KERNEL_PGD_BOUNDARY, 1049 clone_pgd_range(swapper_pg_dir, swapper_pg_dir + KERNEL_PGD_BOUNDARY,
1043 min_t(unsigned long, KERNEL_PGD_PTRS, KERNEL_PGD_BOUNDARY)); 1050 min_t(unsigned long, KERNEL_PGD_PTRS, KERNEL_PGD_BOUNDARY));
1044 flush_tlb_all(); 1051 flush_tlb_all();
1045#endif 1052 low_mappings = 1;
1053
1054 err = do_boot_cpu(apicid, cpu);
1046 1055
1056 zap_low_mappings();
1057 low_mappings = 0;
1058#else
1047 err = do_boot_cpu(apicid, cpu); 1059 err = do_boot_cpu(apicid, cpu);
1048 if (err < 0) { 1060#endif
1061 if (err) {
1049 Dprintk("do_boot_cpu failed %d\n", err); 1062 Dprintk("do_boot_cpu failed %d\n", err);
1050 return err; 1063 return -EIO;
1051 } 1064 }
1052 1065
1053 /* 1066 /*
@@ -1177,6 +1190,7 @@ static void __init smp_cpu_index_default(void)
1177 */ 1190 */
1178void __init native_smp_prepare_cpus(unsigned int max_cpus) 1191void __init native_smp_prepare_cpus(unsigned int max_cpus)
1179{ 1192{
1193 preempt_disable();
1180 nmi_watchdog_default(); 1194 nmi_watchdog_default();
1181 smp_cpu_index_default(); 1195 smp_cpu_index_default();
1182 current_cpu_data = boot_cpu_data; 1196 current_cpu_data = boot_cpu_data;
@@ -1193,7 +1207,7 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
1193 if (smp_sanity_check(max_cpus) < 0) { 1207 if (smp_sanity_check(max_cpus) < 0) {
1194 printk(KERN_INFO "SMP disabled\n"); 1208 printk(KERN_INFO "SMP disabled\n");
1195 disable_smp(); 1209 disable_smp();
1196 return; 1210 goto out;
1197 } 1211 }
1198 1212
1199 preempt_disable(); 1213 preempt_disable();
@@ -1233,6 +1247,8 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
1233 printk(KERN_INFO "CPU%d: ", 0); 1247 printk(KERN_INFO "CPU%d: ", 0);
1234 print_cpu_info(&cpu_data(0)); 1248 print_cpu_info(&cpu_data(0));
1235 setup_boot_clock(); 1249 setup_boot_clock();
1250out:
1251 preempt_enable();
1236} 1252}
1237/* 1253/*
1238 * Early setup to make printk work. 1254 * Early setup to make printk work.
@@ -1259,9 +1275,6 @@ void __init native_smp_cpus_done(unsigned int max_cpus)
1259 setup_ioapic_dest(); 1275 setup_ioapic_dest();
1260#endif 1276#endif
1261 check_nmi_watchdog(); 1277 check_nmi_watchdog();
1262#ifdef CONFIG_X86_32
1263 zap_low_mappings();
1264#endif
1265} 1278}
1266 1279
1267#ifdef CONFIG_HOTPLUG_CPU 1280#ifdef CONFIG_HOTPLUG_CPU
diff --git a/arch/x86/kernel/traps_32.c b/arch/x86/kernel/traps_32.c
index bde6f63e15d5..08d752de4eee 100644
--- a/arch/x86/kernel/traps_32.c
+++ b/arch/x86/kernel/traps_32.c
@@ -544,6 +544,7 @@ vm86_trap:
544#define DO_ERROR(trapnr, signr, str, name) \ 544#define DO_ERROR(trapnr, signr, str, name) \
545void do_##name(struct pt_regs *regs, long error_code) \ 545void do_##name(struct pt_regs *regs, long error_code) \
546{ \ 546{ \
547 trace_hardirqs_fixup(); \
547 if (notify_die(DIE_TRAP, str, regs, error_code, trapnr, signr) \ 548 if (notify_die(DIE_TRAP, str, regs, error_code, trapnr, signr) \
548 == NOTIFY_STOP) \ 549 == NOTIFY_STOP) \
549 return; \ 550 return; \
diff --git a/arch/x86/kernel/tsc_32.c b/arch/x86/kernel/tsc_32.c
index e4790728b224..068759db63dd 100644
--- a/arch/x86/kernel/tsc_32.c
+++ b/arch/x86/kernel/tsc_32.c
@@ -14,7 +14,7 @@
14 14
15#include "mach_timer.h" 15#include "mach_timer.h"
16 16
17static int tsc_enabled; 17static int tsc_disabled;
18 18
19/* 19/*
20 * On some systems the TSC frequency does not 20 * On some systems the TSC frequency does not
@@ -28,8 +28,8 @@ EXPORT_SYMBOL_GPL(tsc_khz);
28static int __init tsc_setup(char *str) 28static int __init tsc_setup(char *str)
29{ 29{
30 printk(KERN_WARNING "notsc: Kernel compiled with CONFIG_X86_TSC, " 30 printk(KERN_WARNING "notsc: Kernel compiled with CONFIG_X86_TSC, "
31 "cannot disable TSC completely.\n"); 31 "cannot disable TSC completely.\n");
32 mark_tsc_unstable("user disabled TSC"); 32 tsc_disabled = 1;
33 return 1; 33 return 1;
34} 34}
35#else 35#else
@@ -120,7 +120,7 @@ unsigned long long native_sched_clock(void)
120 * very important for it to be as fast as the platform 120 * very important for it to be as fast as the platform
121 * can achive it. ) 121 * can achive it. )
122 */ 122 */
123 if (unlikely(!tsc_enabled && !tsc_unstable)) 123 if (unlikely(tsc_disabled))
124 /* No locking but a rare wrong value is not a big deal: */ 124 /* No locking but a rare wrong value is not a big deal: */
125 return (jiffies_64 - INITIAL_JIFFIES) * (1000000000 / HZ); 125 return (jiffies_64 - INITIAL_JIFFIES) * (1000000000 / HZ);
126 126
@@ -322,7 +322,6 @@ void mark_tsc_unstable(char *reason)
322{ 322{
323 if (!tsc_unstable) { 323 if (!tsc_unstable) {
324 tsc_unstable = 1; 324 tsc_unstable = 1;
325 tsc_enabled = 0;
326 printk("Marking TSC unstable due to: %s.\n", reason); 325 printk("Marking TSC unstable due to: %s.\n", reason);
327 /* Can be called before registration */ 326 /* Can be called before registration */
328 if (clocksource_tsc.mult) 327 if (clocksource_tsc.mult)
@@ -336,7 +335,7 @@ EXPORT_SYMBOL_GPL(mark_tsc_unstable);
336static int __init dmi_mark_tsc_unstable(const struct dmi_system_id *d) 335static int __init dmi_mark_tsc_unstable(const struct dmi_system_id *d)
337{ 336{
338 printk(KERN_NOTICE "%s detected: marking TSC unstable.\n", 337 printk(KERN_NOTICE "%s detected: marking TSC unstable.\n",
339 d->ident); 338 d->ident);
340 tsc_unstable = 1; 339 tsc_unstable = 1;
341 return 0; 340 return 0;
342} 341}
@@ -403,14 +402,22 @@ void __init tsc_init(void)
403{ 402{
404 int cpu; 403 int cpu;
405 404
406 if (!cpu_has_tsc) 405 if (!cpu_has_tsc || tsc_disabled) {
406 /* Disable the TSC in case of !cpu_has_tsc */
407 tsc_disabled = 1;
407 return; 408 return;
409 }
408 410
409 cpu_khz = calculate_cpu_khz(); 411 cpu_khz = calculate_cpu_khz();
410 tsc_khz = cpu_khz; 412 tsc_khz = cpu_khz;
411 413
412 if (!cpu_khz) { 414 if (!cpu_khz) {
413 mark_tsc_unstable("could not calculate TSC khz"); 415 mark_tsc_unstable("could not calculate TSC khz");
416 /*
417 * We need to disable the TSC completely in this case
418 * to prevent sched_clock() from using it.
419 */
420 tsc_disabled = 1;
414 return; 421 return;
415 } 422 }
416 423
@@ -441,8 +448,6 @@ void __init tsc_init(void)
441 if (check_tsc_unstable()) { 448 if (check_tsc_unstable()) {
442 clocksource_tsc.rating = 0; 449 clocksource_tsc.rating = 0;
443 clocksource_tsc.flags &= ~CLOCK_SOURCE_IS_CONTINUOUS; 450 clocksource_tsc.flags &= ~CLOCK_SOURCE_IS_CONTINUOUS;
444 } else 451 }
445 tsc_enabled = 1;
446
447 clocksource_register(&clocksource_tsc); 452 clocksource_register(&clocksource_tsc);
448} 453}
diff --git a/arch/x86/kernel/tsc_64.c b/arch/x86/kernel/tsc_64.c
index fcc16e58609e..1784b8077a12 100644
--- a/arch/x86/kernel/tsc_64.c
+++ b/arch/x86/kernel/tsc_64.c
@@ -227,14 +227,14 @@ void __init tsc_calibrate(void)
227 /* hpet or pmtimer available ? */ 227 /* hpet or pmtimer available ? */
228 if (!hpet && !pm1 && !pm2) { 228 if (!hpet && !pm1 && !pm2) {
229 printk(KERN_INFO "TSC calibrated against PIT\n"); 229 printk(KERN_INFO "TSC calibrated against PIT\n");
230 return; 230 goto out;
231 } 231 }
232 232
233 /* Check, whether the sampling was disturbed by an SMI */ 233 /* Check, whether the sampling was disturbed by an SMI */
234 if (tsc1 == ULONG_MAX || tsc2 == ULONG_MAX) { 234 if (tsc1 == ULONG_MAX || tsc2 == ULONG_MAX) {
235 printk(KERN_WARNING "TSC calibration disturbed by SMI, " 235 printk(KERN_WARNING "TSC calibration disturbed by SMI, "
236 "using PIT calibration result\n"); 236 "using PIT calibration result\n");
237 return; 237 goto out;
238 } 238 }
239 239
240 tsc2 = (tsc2 - tsc1) * 1000000L; 240 tsc2 = (tsc2 - tsc1) * 1000000L;
@@ -255,6 +255,7 @@ void __init tsc_calibrate(void)
255 255
256 tsc_khz = tsc2 / tsc1; 256 tsc_khz = tsc2 / tsc1;
257 257
258out:
258 for_each_possible_cpu(cpu) 259 for_each_possible_cpu(cpu)
259 set_cyc2ns_scale(tsc_khz, cpu); 260 set_cyc2ns_scale(tsc_khz, cpu);
260} 261}
diff --git a/arch/x86/kernel/x8664_ksyms_64.c b/arch/x86/kernel/x8664_ksyms_64.c
index 58882f9f2637..f6c05d0410fb 100644
--- a/arch/x86/kernel/x8664_ksyms_64.c
+++ b/arch/x86/kernel/x8664_ksyms_64.c
@@ -2,6 +2,7 @@
2 All C exports should go in the respective C files. */ 2 All C exports should go in the respective C files. */
3 3
4#include <linux/module.h> 4#include <linux/module.h>
5#include <net/checksum.h>
5#include <linux/smp.h> 6#include <linux/smp.h>
6 7
7#include <asm/processor.h> 8#include <asm/processor.h>
@@ -29,6 +30,8 @@ EXPORT_SYMBOL(__copy_from_user_inatomic);
29EXPORT_SYMBOL(copy_page); 30EXPORT_SYMBOL(copy_page);
30EXPORT_SYMBOL(clear_page); 31EXPORT_SYMBOL(clear_page);
31 32
33EXPORT_SYMBOL(csum_partial);
34
32/* 35/*
33 * Export string functions. We normally rely on gcc builtin for most of these, 36 * Export string functions. We normally rely on gcc builtin for most of these,
34 * but gcc sometimes decides not to inline them. 37 * but gcc sometimes decides not to inline them.
diff --git a/arch/x86/kvm/i8254.c b/arch/x86/kvm/i8254.c
index 3324d90038e4..f2f5d260874e 100644
--- a/arch/x86/kvm/i8254.c
+++ b/arch/x86/kvm/i8254.c
@@ -200,7 +200,6 @@ int __pit_timer_fn(struct kvm_kpit_state *ps)
200 200
201 atomic_inc(&pt->pending); 201 atomic_inc(&pt->pending);
202 smp_mb__after_atomic_inc(); 202 smp_mb__after_atomic_inc();
203 /* FIXME: handle case where the guest is in guest mode */
204 if (vcpu0 && waitqueue_active(&vcpu0->wq)) { 203 if (vcpu0 && waitqueue_active(&vcpu0->wq)) {
205 vcpu0->arch.mp_state = KVM_MP_STATE_RUNNABLE; 204 vcpu0->arch.mp_state = KVM_MP_STATE_RUNNABLE;
206 wake_up_interruptible(&vcpu0->wq); 205 wake_up_interruptible(&vcpu0->wq);
@@ -216,7 +215,7 @@ int pit_has_pending_timer(struct kvm_vcpu *vcpu)
216{ 215{
217 struct kvm_pit *pit = vcpu->kvm->arch.vpit; 216 struct kvm_pit *pit = vcpu->kvm->arch.vpit;
218 217
219 if (pit && vcpu->vcpu_id == 0) 218 if (pit && vcpu->vcpu_id == 0 && pit->pit_state.inject_pending)
220 return atomic_read(&pit->pit_state.pit_timer.pending); 219 return atomic_read(&pit->pit_state.pit_timer.pending);
221 220
222 return 0; 221 return 0;
@@ -237,6 +236,19 @@ static enum hrtimer_restart pit_timer_fn(struct hrtimer *data)
237 return HRTIMER_NORESTART; 236 return HRTIMER_NORESTART;
238} 237}
239 238
239void __kvm_migrate_pit_timer(struct kvm_vcpu *vcpu)
240{
241 struct kvm_pit *pit = vcpu->kvm->arch.vpit;
242 struct hrtimer *timer;
243
244 if (vcpu->vcpu_id != 0 || !pit)
245 return;
246
247 timer = &pit->pit_state.pit_timer.timer;
248 if (hrtimer_cancel(timer))
249 hrtimer_start(timer, timer->expires, HRTIMER_MODE_ABS);
250}
251
240static void destroy_pit_timer(struct kvm_kpit_timer *pt) 252static void destroy_pit_timer(struct kvm_kpit_timer *pt)
241{ 253{
242 pr_debug("pit: execute del timer!\n"); 254 pr_debug("pit: execute del timer!\n");
diff --git a/arch/x86/kvm/irq.c b/arch/x86/kvm/irq.c
index ce1f583459b1..76d736b5f664 100644
--- a/arch/x86/kvm/irq.c
+++ b/arch/x86/kvm/irq.c
@@ -94,3 +94,9 @@ void kvm_timer_intr_post(struct kvm_vcpu *vcpu, int vec)
94 /* TODO: PIT, RTC etc. */ 94 /* TODO: PIT, RTC etc. */
95} 95}
96EXPORT_SYMBOL_GPL(kvm_timer_intr_post); 96EXPORT_SYMBOL_GPL(kvm_timer_intr_post);
97
98void __kvm_migrate_timers(struct kvm_vcpu *vcpu)
99{
100 __kvm_migrate_apic_timer(vcpu);
101 __kvm_migrate_pit_timer(vcpu);
102}
diff --git a/arch/x86/kvm/irq.h b/arch/x86/kvm/irq.h
index 1802134b836f..2a15be2275c0 100644
--- a/arch/x86/kvm/irq.h
+++ b/arch/x86/kvm/irq.h
@@ -84,6 +84,8 @@ void kvm_timer_intr_post(struct kvm_vcpu *vcpu, int vec);
84void kvm_inject_pending_timer_irqs(struct kvm_vcpu *vcpu); 84void kvm_inject_pending_timer_irqs(struct kvm_vcpu *vcpu);
85void kvm_inject_apic_timer_irqs(struct kvm_vcpu *vcpu); 85void kvm_inject_apic_timer_irqs(struct kvm_vcpu *vcpu);
86void __kvm_migrate_apic_timer(struct kvm_vcpu *vcpu); 86void __kvm_migrate_apic_timer(struct kvm_vcpu *vcpu);
87void __kvm_migrate_pit_timer(struct kvm_vcpu *vcpu);
88void __kvm_migrate_timers(struct kvm_vcpu *vcpu);
87 89
88int pit_has_pending_timer(struct kvm_vcpu *vcpu); 90int pit_has_pending_timer(struct kvm_vcpu *vcpu);
89int apic_has_pending_timer(struct kvm_vcpu *vcpu); 91int apic_has_pending_timer(struct kvm_vcpu *vcpu);
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
index 36809d79788b..c297c50eba63 100644
--- a/arch/x86/kvm/lapic.c
+++ b/arch/x86/kvm/lapic.c
@@ -957,7 +957,7 @@ int apic_has_pending_timer(struct kvm_vcpu *vcpu)
957{ 957{
958 struct kvm_lapic *lapic = vcpu->arch.apic; 958 struct kvm_lapic *lapic = vcpu->arch.apic;
959 959
960 if (lapic) 960 if (lapic && apic_enabled(lapic) && apic_lvt_enabled(lapic, APIC_LVTT))
961 return atomic_read(&lapic->timer.pending); 961 return atomic_read(&lapic->timer.pending);
962 962
963 return 0; 963 return 0;
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index 36c5406b1813..ee3f53098f0c 100644
--- a/arch/x86/kvm/mmu.c
+++ b/arch/x86/kvm/mmu.c
@@ -658,7 +658,7 @@ static int is_empty_shadow_page(u64 *spt)
658 u64 *end; 658 u64 *end;
659 659
660 for (pos = spt, end = pos + PAGE_SIZE / sizeof(u64); pos != end; pos++) 660 for (pos = spt, end = pos + PAGE_SIZE / sizeof(u64); pos != end; pos++)
661 if (*pos != shadow_trap_nonpresent_pte) { 661 if (is_shadow_present_pte(*pos)) {
662 printk(KERN_ERR "%s: %p %llx\n", __func__, 662 printk(KERN_ERR "%s: %p %llx\n", __func__,
663 pos, *pos); 663 pos, *pos);
664 return 0; 664 return 0;
@@ -1858,6 +1858,7 @@ static void free_mmu_pages(struct kvm_vcpu *vcpu)
1858 sp = container_of(vcpu->kvm->arch.active_mmu_pages.next, 1858 sp = container_of(vcpu->kvm->arch.active_mmu_pages.next,
1859 struct kvm_mmu_page, link); 1859 struct kvm_mmu_page, link);
1860 kvm_mmu_zap_page(vcpu->kvm, sp); 1860 kvm_mmu_zap_page(vcpu->kvm, sp);
1861 cond_resched();
1861 } 1862 }
1862 free_page((unsigned long)vcpu->arch.mmu.pae_root); 1863 free_page((unsigned long)vcpu->arch.mmu.pae_root);
1863} 1864}
@@ -1996,7 +1997,7 @@ static struct shrinker mmu_shrinker = {
1996 .seeks = DEFAULT_SEEKS * 10, 1997 .seeks = DEFAULT_SEEKS * 10,
1997}; 1998};
1998 1999
1999void mmu_destroy_caches(void) 2000static void mmu_destroy_caches(void)
2000{ 2001{
2001 if (pte_chain_cache) 2002 if (pte_chain_cache)
2002 kmem_cache_destroy(pte_chain_cache); 2003 kmem_cache_destroy(pte_chain_cache);
diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h
index 156fe10288ae..934c7b619396 100644
--- a/arch/x86/kvm/paging_tmpl.h
+++ b/arch/x86/kvm/paging_tmpl.h
@@ -418,7 +418,7 @@ static int FNAME(page_fault)(struct kvm_vcpu *vcpu, gva_t addr,
418 418
419 /* mmio */ 419 /* mmio */
420 if (is_error_pfn(pfn)) { 420 if (is_error_pfn(pfn)) {
421 pgprintk("gfn %x is mmio\n", walker.gfn); 421 pgprintk("gfn %lx is mmio\n", walker.gfn);
422 kvm_release_pfn_clean(pfn); 422 kvm_release_pfn_clean(pfn);
423 return 1; 423 return 1;
424 } 424 }
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
index ab22615eee89..6b0d5fa5bab3 100644
--- a/arch/x86/kvm/svm.c
+++ b/arch/x86/kvm/svm.c
@@ -688,7 +688,7 @@ static void svm_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
688 delta = vcpu->arch.host_tsc - tsc_this; 688 delta = vcpu->arch.host_tsc - tsc_this;
689 svm->vmcb->control.tsc_offset += delta; 689 svm->vmcb->control.tsc_offset += delta;
690 vcpu->cpu = cpu; 690 vcpu->cpu = cpu;
691 kvm_migrate_apic_timer(vcpu); 691 kvm_migrate_timers(vcpu);
692 } 692 }
693 693
694 for (i = 0; i < NR_HOST_SAVE_USER_MSRS; i++) 694 for (i = 0; i < NR_HOST_SAVE_USER_MSRS; i++)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index bfe4db11989c..02efbe75f317 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
@@ -608,7 +608,7 @@ static void vmx_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
608 608
609 if (vcpu->cpu != cpu) { 609 if (vcpu->cpu != cpu) {
610 vcpu_clear(vmx); 610 vcpu_clear(vmx);
611 kvm_migrate_apic_timer(vcpu); 611 kvm_migrate_timers(vcpu);
612 vpid_sync_vcpu_all(vmx); 612 vpid_sync_vcpu_all(vmx);
613 } 613 }
614 614
@@ -1036,6 +1036,7 @@ static void hardware_enable(void *garbage)
1036static void hardware_disable(void *garbage) 1036static void hardware_disable(void *garbage)
1037{ 1037{
1038 asm volatile (ASM_VMX_VMXOFF : : : "cc"); 1038 asm volatile (ASM_VMX_VMXOFF : : : "cc");
1039 write_cr4(read_cr4() & ~X86_CR4_VMXE);
1039} 1040}
1040 1041
1041static __init int adjust_vmx_controls(u32 ctl_min, u32 ctl_opt, 1042static __init int adjust_vmx_controls(u32 ctl_min, u32 ctl_opt,
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 21338bdb28ff..00acf1301a15 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -2758,7 +2758,7 @@ again:
2758 2758
2759 if (vcpu->requests) { 2759 if (vcpu->requests) {
2760 if (test_and_clear_bit(KVM_REQ_MIGRATE_TIMER, &vcpu->requests)) 2760 if (test_and_clear_bit(KVM_REQ_MIGRATE_TIMER, &vcpu->requests))
2761 __kvm_migrate_apic_timer(vcpu); 2761 __kvm_migrate_timers(vcpu);
2762 if (test_and_clear_bit(KVM_REQ_REPORT_TPR_ACCESS, 2762 if (test_and_clear_bit(KVM_REQ_REPORT_TPR_ACCESS,
2763 &vcpu->requests)) { 2763 &vcpu->requests)) {
2764 kvm_run->exit_reason = KVM_EXIT_TPR_ACCESS; 2764 kvm_run->exit_reason = KVM_EXIT_TPR_ACCESS;
diff --git a/arch/x86/kvm/x86_emulate.c b/arch/x86/kvm/x86_emulate.c
index f2a696d6a243..932f216d890c 100644
--- a/arch/x86/kvm/x86_emulate.c
+++ b/arch/x86/kvm/x86_emulate.c
@@ -677,8 +677,9 @@ static int decode_modrm(struct x86_emulate_ctxt *ctxt,
677 c->use_modrm_ea = 1; 677 c->use_modrm_ea = 1;
678 678
679 if (c->modrm_mod == 3) { 679 if (c->modrm_mod == 3) {
680 c->modrm_val = *(unsigned long *) 680 c->modrm_ptr = decode_register(c->modrm_rm,
681 decode_register(c->modrm_rm, c->regs, c->d & ByteOp); 681 c->regs, c->d & ByteOp);
682 c->modrm_val = *(unsigned long *)c->modrm_ptr;
682 return rc; 683 return rc;
683 } 684 }
684 685
@@ -1005,6 +1006,7 @@ done_prefixes:
1005 if ((c->d & ModRM) && c->modrm_mod == 3) { 1006 if ((c->d & ModRM) && c->modrm_mod == 3) {
1006 c->src.type = OP_REG; 1007 c->src.type = OP_REG;
1007 c->src.val = c->modrm_val; 1008 c->src.val = c->modrm_val;
1009 c->src.ptr = c->modrm_ptr;
1008 break; 1010 break;
1009 } 1011 }
1010 c->src.type = OP_MEM; 1012 c->src.type = OP_MEM;
@@ -1049,6 +1051,7 @@ done_prefixes:
1049 if ((c->d & ModRM) && c->modrm_mod == 3) { 1051 if ((c->d & ModRM) && c->modrm_mod == 3) {
1050 c->dst.type = OP_REG; 1052 c->dst.type = OP_REG;
1051 c->dst.val = c->dst.orig_val = c->modrm_val; 1053 c->dst.val = c->dst.orig_val = c->modrm_val;
1054 c->dst.ptr = c->modrm_ptr;
1052 break; 1055 break;
1053 } 1056 }
1054 c->dst.type = OP_MEM; 1057 c->dst.type = OP_MEM;
@@ -1724,7 +1727,8 @@ twobyte_insn:
1724 if (rc) 1727 if (rc)
1725 goto done; 1728 goto done;
1726 1729
1727 kvm_emulate_hypercall(ctxt->vcpu); 1730 /* Let the processor re-execute the fixed hypercall */
1731 c->eip = ctxt->vcpu->arch.rip;
1728 /* Disable writeback. */ 1732 /* Disable writeback. */
1729 c->dst.type = OP_NONE; 1733 c->dst.type = OP_NONE;
1730 break; 1734 break;
diff --git a/arch/x86/lguest/boot.c b/arch/x86/lguest/boot.c
index af65b2da3ba0..5c7e2fd52075 100644
--- a/arch/x86/lguest/boot.c
+++ b/arch/x86/lguest/boot.c
@@ -582,8 +582,9 @@ static void __init lguest_init_IRQ(void)
582 int vector = FIRST_EXTERNAL_VECTOR + i; 582 int vector = FIRST_EXTERNAL_VECTOR + i;
583 if (vector != SYSCALL_VECTOR) { 583 if (vector != SYSCALL_VECTOR) {
584 set_intr_gate(vector, interrupt[i]); 584 set_intr_gate(vector, interrupt[i]);
585 set_irq_chip_and_handler(i, &lguest_irq_controller, 585 set_irq_chip_and_handler_name(i, &lguest_irq_controller,
586 handle_level_irq); 586 handle_level_irq,
587 "level");
587 } 588 }
588 } 589 }
589 /* This call is required to set up for 4k stacks, where we have 590 /* This call is required to set up for 4k stacks, where we have
diff --git a/arch/x86/lib/csum-partial_64.c b/arch/x86/lib/csum-partial_64.c
index bc503f506903..bf51144d97e1 100644
--- a/arch/x86/lib/csum-partial_64.c
+++ b/arch/x86/lib/csum-partial_64.c
@@ -136,8 +136,6 @@ __wsum csum_partial(const void *buff, int len, __wsum sum)
136 (__force u32)sum); 136 (__force u32)sum);
137} 137}
138 138
139EXPORT_SYMBOL(csum_partial);
140
141/* 139/*
142 * this routine is used for miscellaneous IP-like checksums, mainly 140 * this routine is used for miscellaneous IP-like checksums, mainly
143 * in icmp.c 141 * in icmp.c
diff --git a/arch/x86/lib/delay_32.c b/arch/x86/lib/delay_32.c
index 4535e6d147ad..d710f2d167bb 100644
--- a/arch/x86/lib/delay_32.c
+++ b/arch/x86/lib/delay_32.c
@@ -44,13 +44,36 @@ static void delay_loop(unsigned long loops)
44static void delay_tsc(unsigned long loops) 44static void delay_tsc(unsigned long loops)
45{ 45{
46 unsigned long bclock, now; 46 unsigned long bclock, now;
47 int cpu;
47 48
48 preempt_disable(); /* TSC's are per-cpu */ 49 preempt_disable();
50 cpu = smp_processor_id();
49 rdtscl(bclock); 51 rdtscl(bclock);
50 do { 52 for (;;) {
51 rep_nop();
52 rdtscl(now); 53 rdtscl(now);
53 } while ((now-bclock) < loops); 54 if ((now - bclock) >= loops)
55 break;
56
57 /* Allow RT tasks to run */
58 preempt_enable();
59 rep_nop();
60 preempt_disable();
61
62 /*
63 * It is possible that we moved to another CPU, and
64 * since TSC's are per-cpu we need to calculate
65 * that. The delay must guarantee that we wait "at
66 * least" the amount of time. Being moved to another
67 * CPU could make the wait longer but we just need to
68 * make sure we waited long enough. Rebalance the
69 * counter for this CPU.
70 */
71 if (unlikely(cpu != smp_processor_id())) {
72 loops -= (now - bclock);
73 cpu = smp_processor_id();
74 rdtscl(bclock);
75 }
76 }
54 preempt_enable(); 77 preempt_enable();
55} 78}
56 79
diff --git a/arch/x86/lib/delay_64.c b/arch/x86/lib/delay_64.c
index bbc610518516..4c441be92641 100644
--- a/arch/x86/lib/delay_64.c
+++ b/arch/x86/lib/delay_64.c
@@ -31,14 +31,36 @@ int __devinit read_current_timer(unsigned long *timer_value)
31void __delay(unsigned long loops) 31void __delay(unsigned long loops)
32{ 32{
33 unsigned bclock, now; 33 unsigned bclock, now;
34 int cpu;
34 35
35 preempt_disable(); /* TSC's are pre-cpu */ 36 preempt_disable();
37 cpu = smp_processor_id();
36 rdtscl(bclock); 38 rdtscl(bclock);
37 do { 39 for (;;) {
38 rep_nop();
39 rdtscl(now); 40 rdtscl(now);
41 if ((now - bclock) >= loops)
42 break;
43
44 /* Allow RT tasks to run */
45 preempt_enable();
46 rep_nop();
47 preempt_disable();
48
49 /*
50 * It is possible that we moved to another CPU, and
51 * since TSC's are per-cpu we need to calculate
52 * that. The delay must guarantee that we wait "at
53 * least" the amount of time. Being moved to another
54 * CPU could make the wait longer but we just need to
55 * make sure we waited long enough. Rebalance the
56 * counter for this CPU.
57 */
58 if (unlikely(cpu != smp_processor_id())) {
59 loops -= (now - bclock);
60 cpu = smp_processor_id();
61 rdtscl(bclock);
62 }
40 } 63 }
41 while ((now-bclock) < loops);
42 preempt_enable(); 64 preempt_enable();
43} 65}
44EXPORT_SYMBOL(__delay); 66EXPORT_SYMBOL(__delay);
diff --git a/arch/x86/math-emu/fpu_entry.c b/arch/x86/math-emu/fpu_entry.c
index 6e38d877ea77..c7b06feb139b 100644
--- a/arch/x86/math-emu/fpu_entry.c
+++ b/arch/x86/math-emu/fpu_entry.c
@@ -30,6 +30,7 @@
30#include <asm/uaccess.h> 30#include <asm/uaccess.h>
31#include <asm/desc.h> 31#include <asm/desc.h>
32#include <asm/user.h> 32#include <asm/user.h>
33#include <asm/i387.h>
33 34
34#include "fpu_system.h" 35#include "fpu_system.h"
35#include "fpu_emu.h" 36#include "fpu_emu.h"
@@ -146,6 +147,13 @@ asmlinkage void math_emulate(long arg)
146 unsigned long code_limit = 0; /* Initialized to stop compiler warnings */ 147 unsigned long code_limit = 0; /* Initialized to stop compiler warnings */
147 struct desc_struct code_descriptor; 148 struct desc_struct code_descriptor;
148 149
150 if (!used_math()) {
151 if (init_fpu(current)) {
152 do_group_exit(SIGKILL);
153 return;
154 }
155 }
156
149#ifdef RE_ENTRANT_CHECKING 157#ifdef RE_ENTRANT_CHECKING
150 if (emulating) { 158 if (emulating) {
151 printk("ERROR: wm-FPU-emu is not RE-ENTRANT!\n"); 159 printk("ERROR: wm-FPU-emu is not RE-ENTRANT!\n");
@@ -153,11 +161,6 @@ asmlinkage void math_emulate(long arg)
153 RE_ENTRANT_CHECK_ON; 161 RE_ENTRANT_CHECK_ON;
154#endif /* RE_ENTRANT_CHECKING */ 162#endif /* RE_ENTRANT_CHECKING */
155 163
156 if (!used_math()) {
157 finit();
158 set_used_math();
159 }
160
161 SETUP_DATA_AREA(arg); 164 SETUP_DATA_AREA(arg);
162 165
163 FPU_ORIG_EIP = FPU_EIP; 166 FPU_ORIG_EIP = FPU_EIP;
diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
index fd7e1798c75a..8bcb6f40ccb6 100644
--- a/arch/x86/mm/fault.c
+++ b/arch/x86/mm/fault.c
@@ -497,6 +497,11 @@ static int vmalloc_fault(unsigned long address)
497 unsigned long pgd_paddr; 497 unsigned long pgd_paddr;
498 pmd_t *pmd_k; 498 pmd_t *pmd_k;
499 pte_t *pte_k; 499 pte_t *pte_k;
500
501 /* Make sure we are in vmalloc area */
502 if (!(address >= VMALLOC_START && address < VMALLOC_END))
503 return -1;
504
500 /* 505 /*
501 * Synchronize this task's top level page-table 506 * Synchronize this task's top level page-table
502 * with the 'reference' page table. 507 * with the 'reference' page table.
diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
index de236e419cb5..ec30d10154b6 100644
--- a/arch/x86/mm/init_32.c
+++ b/arch/x86/mm/init_32.c
@@ -438,8 +438,6 @@ void zap_low_mappings(void)
438{ 438{
439 int i; 439 int i;
440 440
441 save_pg_dir();
442
443 /* 441 /*
444 * Zap initial low-memory mappings. 442 * Zap initial low-memory mappings.
445 * 443 *
@@ -663,16 +661,8 @@ void __init mem_init(void)
663 test_wp_bit(); 661 test_wp_bit();
664 662
665 cpa_init(); 663 cpa_init();
666 664 save_pg_dir();
667 /*
668 * Subtle. SMP is doing it's boot stuff late (because it has to
669 * fork idle threads) - but it also needs low mappings for the
670 * protected-mode entry to work. We zap these entries only after
671 * the WP-bit has been tested.
672 */
673#ifndef CONFIG_SMP
674 zap_low_mappings(); 665 zap_low_mappings();
675#endif
676} 666}
677 667
678#ifdef CONFIG_MEMORY_HOTPLUG 668#ifdef CONFIG_MEMORY_HOTPLUG
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index 32ba13b0f818..156e6d7b0e32 100644
--- a/arch/x86/mm/init_64.c
+++ b/arch/x86/mm/init_64.c
@@ -206,7 +206,7 @@ void __init cleanup_highmap(void)
206 pmd_t *last_pmd = pmd + PTRS_PER_PMD; 206 pmd_t *last_pmd = pmd + PTRS_PER_PMD;
207 207
208 for (; pmd < last_pmd; pmd++, vaddr += PMD_SIZE) { 208 for (; pmd < last_pmd; pmd++, vaddr += PMD_SIZE) {
209 if (!pmd_present(*pmd)) 209 if (pmd_none(*pmd))
210 continue; 210 continue;
211 if (vaddr < (unsigned long) _text || vaddr > end) 211 if (vaddr < (unsigned long) _text || vaddr > end)
212 set_pmd(pmd, __pmd(0)); 212 set_pmd(pmd, __pmd(0));
@@ -506,7 +506,7 @@ early_param("memtest", parse_memtest);
506 506
507static void __init early_memtest(unsigned long start, unsigned long end) 507static void __init early_memtest(unsigned long start, unsigned long end)
508{ 508{
509 unsigned long t_start, t_size; 509 u64 t_start, t_size;
510 unsigned pattern; 510 unsigned pattern;
511 511
512 if (!memtest_pattern) 512 if (!memtest_pattern)
@@ -525,7 +525,7 @@ static void __init early_memtest(unsigned long start, unsigned long end)
525 if (t_start + t_size > end) 525 if (t_start + t_size > end)
526 t_size = end - t_start; 526 t_size = end - t_start;
527 527
528 printk(KERN_CONT "\n %016lx - %016lx pattern %d", 528 printk(KERN_CONT "\n %016llx - %016llx pattern %d",
529 t_start, t_start + t_size, pattern); 529 t_start, t_start + t_size, pattern);
530 530
531 memtest(t_start, t_size, pattern); 531 memtest(t_start, t_size, pattern);
diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c
index 71bb3159031a..2b2bb3f9b683 100644
--- a/arch/x86/mm/ioremap.c
+++ b/arch/x86/mm/ioremap.c
@@ -593,10 +593,11 @@ void __init early_iounmap(void *addr, unsigned long size)
593 unsigned long offset; 593 unsigned long offset;
594 unsigned int nrpages; 594 unsigned int nrpages;
595 enum fixed_addresses idx; 595 enum fixed_addresses idx;
596 unsigned int nesting; 596 int nesting;
597 597
598 nesting = --early_ioremap_nested; 598 nesting = --early_ioremap_nested;
599 WARN_ON(nesting < 0); 599 if (WARN_ON(nesting < 0))
600 return;
600 601
601 if (early_ioremap_debug) { 602 if (early_ioremap_debug) {
602 printk(KERN_INFO "early_iounmap(%p, %08lx) [%d]\n", addr, 603 printk(KERN_INFO "early_iounmap(%p, %08lx) [%d]\n", addr,
diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c
index 60adbe22efa0..06b7a1c90fb8 100644
--- a/arch/x86/mm/pat.c
+++ b/arch/x86/mm/pat.c
@@ -28,13 +28,13 @@
28#ifdef CONFIG_X86_PAT 28#ifdef CONFIG_X86_PAT
29int __read_mostly pat_wc_enabled = 1; 29int __read_mostly pat_wc_enabled = 1;
30 30
31void __init pat_disable(char *reason) 31void __cpuinit pat_disable(char *reason)
32{ 32{
33 pat_wc_enabled = 0; 33 pat_wc_enabled = 0;
34 printk(KERN_INFO "%s\n", reason); 34 printk(KERN_INFO "%s\n", reason);
35} 35}
36 36
37static int nopat(char *str) 37static int __init nopat(char *str)
38{ 38{
39 pat_disable("PAT support disabled."); 39 pat_disable("PAT support disabled.");
40 return 0; 40 return 0;
@@ -151,32 +151,33 @@ static int pat_x_mtrr_type(u64 start, u64 end, unsigned long prot,
151 unsigned long pat_type; 151 unsigned long pat_type;
152 u8 mtrr_type; 152 u8 mtrr_type;
153 153
154 mtrr_type = mtrr_type_lookup(start, end);
155 if (mtrr_type == 0xFF) { /* MTRR not enabled */
156 *ret_prot = prot;
157 return 0;
158 }
159 if (mtrr_type == 0xFE) { /* MTRR match error */
160 *ret_prot = _PAGE_CACHE_UC;
161 return -1;
162 }
163 if (mtrr_type != MTRR_TYPE_UNCACHABLE &&
164 mtrr_type != MTRR_TYPE_WRBACK &&
165 mtrr_type != MTRR_TYPE_WRCOMB) { /* MTRR type unhandled */
166 *ret_prot = _PAGE_CACHE_UC;
167 return -1;
168 }
169
170 pat_type = prot & _PAGE_CACHE_MASK; 154 pat_type = prot & _PAGE_CACHE_MASK;
171 prot &= (~_PAGE_CACHE_MASK); 155 prot &= (~_PAGE_CACHE_MASK);
172 156
173 /* Currently doing intersection by hand. Optimize it later. */ 157 /*
158 * We return the PAT request directly for types where PAT takes
159 * precedence with respect to MTRR and for UC_MINUS.
160 * Consistency checks with other PAT requests is done later
161 * while going through memtype list.
162 */
174 if (pat_type == _PAGE_CACHE_WC) { 163 if (pat_type == _PAGE_CACHE_WC) {
175 *ret_prot = prot | _PAGE_CACHE_WC; 164 *ret_prot = prot | _PAGE_CACHE_WC;
165 return 0;
176 } else if (pat_type == _PAGE_CACHE_UC_MINUS) { 166 } else if (pat_type == _PAGE_CACHE_UC_MINUS) {
177 *ret_prot = prot | _PAGE_CACHE_UC_MINUS; 167 *ret_prot = prot | _PAGE_CACHE_UC_MINUS;
178 } else if (pat_type == _PAGE_CACHE_UC || 168 return 0;
179 mtrr_type == MTRR_TYPE_UNCACHABLE) { 169 } else if (pat_type == _PAGE_CACHE_UC) {
170 *ret_prot = prot | _PAGE_CACHE_UC;
171 return 0;
172 }
173
174 /*
175 * Look for MTRR hint to get the effective type in case where PAT
176 * request is for WB.
177 */
178 mtrr_type = mtrr_type_lookup(start, end);
179
180 if (mtrr_type == MTRR_TYPE_UNCACHABLE) {
180 *ret_prot = prot | _PAGE_CACHE_UC; 181 *ret_prot = prot | _PAGE_CACHE_UC;
181 } else if (mtrr_type == MTRR_TYPE_WRCOMB) { 182 } else if (mtrr_type == MTRR_TYPE_WRCOMB) {
182 *ret_prot = prot | _PAGE_CACHE_WC; 183 *ret_prot = prot | _PAGE_CACHE_WC;
@@ -233,14 +234,12 @@ int reserve_memtype(u64 start, u64 end, unsigned long req_type,
233 234
234 if (req_type == -1) { 235 if (req_type == -1) {
235 /* 236 /*
236 * Special case where caller wants to inherit from mtrr or 237 * Call mtrr_lookup to get the type hint. This is an
237 * existing pat mapping, defaulting to UC_MINUS in case of 238 * optimization for /dev/mem mmap'ers into WB memory (BIOS
238 * no match. 239 * tools and ACPI tools). Use WB request for WB memory and use
240 * UC_MINUS otherwise.
239 */ 241 */
240 u8 mtrr_type = mtrr_type_lookup(start, end); 242 u8 mtrr_type = mtrr_type_lookup(start, end);
241 if (mtrr_type == 0xFE) { /* MTRR match error */
242 err = -1;
243 }
244 243
245 if (mtrr_type == MTRR_TYPE_WRBACK) { 244 if (mtrr_type == MTRR_TYPE_WRBACK) {
246 req_type = _PAGE_CACHE_WB; 245 req_type = _PAGE_CACHE_WB;
@@ -555,7 +554,7 @@ int phys_mem_access_prot_allowed(struct file *file, unsigned long pfn,
555 "%s:%d /dev/mem ioremap_change_attr failed %s for %Lx-%Lx\n", 554 "%s:%d /dev/mem ioremap_change_attr failed %s for %Lx-%Lx\n",
556 current->comm, current->pid, 555 current->comm, current->pid,
557 cattr_name(flags), 556 cattr_name(flags),
558 offset, offset + size); 557 offset, (unsigned long long)(offset + size));
559 return 0; 558 return 0;
560 } 559 }
561 560
@@ -576,7 +575,7 @@ void map_devmem(unsigned long pfn, unsigned long size, pgprot_t vma_prot)
576 "%s:%d /dev/mem expected mapping type %s for %Lx-%Lx, got %s\n", 575 "%s:%d /dev/mem expected mapping type %s for %Lx-%Lx, got %s\n",
577 current->comm, current->pid, 576 current->comm, current->pid,
578 cattr_name(want_flags), 577 cattr_name(want_flags),
579 addr, addr + size, 578 addr, (unsigned long long)(addr + size),
580 cattr_name(flags)); 579 cattr_name(flags));
581 } 580 }
582} 581}
diff --git a/arch/x86/mm/srat_64.c b/arch/x86/mm/srat_64.c
index 3890234e5b26..99649dccad28 100644
--- a/arch/x86/mm/srat_64.c
+++ b/arch/x86/mm/srat_64.c
@@ -97,36 +97,9 @@ static __init inline int srat_disabled(void)
97 return numa_off || acpi_numa < 0; 97 return numa_off || acpi_numa < 0;
98} 98}
99 99
100/*
101 * A lot of BIOS fill in 10 (= no distance) everywhere. This messes
102 * up the NUMA heuristics which wants the local node to have a smaller
103 * distance than the others.
104 * Do some quick checks here and only use the SLIT if it passes.
105 */
106static __init int slit_valid(struct acpi_table_slit *slit)
107{
108 int i, j;
109 int d = slit->locality_count;
110 for (i = 0; i < d; i++) {
111 for (j = 0; j < d; j++) {
112 u8 val = slit->entry[d*i + j];
113 if (i == j) {
114 if (val != LOCAL_DISTANCE)
115 return 0;
116 } else if (val <= LOCAL_DISTANCE)
117 return 0;
118 }
119 }
120 return 1;
121}
122
123/* Callback for SLIT parsing */ 100/* Callback for SLIT parsing */
124void __init acpi_numa_slit_init(struct acpi_table_slit *slit) 101void __init acpi_numa_slit_init(struct acpi_table_slit *slit)
125{ 102{
126 if (!slit_valid(slit)) {
127 printk(KERN_INFO "ACPI: SLIT table looks invalid. Not used.\n");
128 return;
129 }
130 acpi_slit = slit; 103 acpi_slit = slit;
131} 104}
132 105
diff --git a/arch/x86/pci/common.c b/arch/x86/pci/common.c
index 8545c8a9d107..940185ecaeda 100644
--- a/arch/x86/pci/common.c
+++ b/arch/x86/pci/common.c
@@ -302,18 +302,18 @@ static struct dmi_system_id __devinitdata pciprobe_dmi_table[] = {
302 }, 302 },
303 { 303 {
304 .callback = set_bf_sort, 304 .callback = set_bf_sort,
305 .ident = "HP ProLiant DL385 G2", 305 .ident = "HP ProLiant DL360",
306 .matches = { 306 .matches = {
307 DMI_MATCH(DMI_SYS_VENDOR, "HP"), 307 DMI_MATCH(DMI_SYS_VENDOR, "HP"),
308 DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL385 G2"), 308 DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL360"),
309 }, 309 },
310 }, 310 },
311 { 311 {
312 .callback = set_bf_sort, 312 .callback = set_bf_sort,
313 .ident = "HP ProLiant DL585 G2", 313 .ident = "HP ProLiant DL380",
314 .matches = { 314 .matches = {
315 DMI_MATCH(DMI_SYS_VENDOR, "HP"), 315 DMI_MATCH(DMI_SYS_VENDOR, "HP"),
316 DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL585 G2"), 316 DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL380"),
317 }, 317 },
318 }, 318 },
319#ifdef __i386__ 319#ifdef __i386__
@@ -328,18 +328,18 @@ static struct dmi_system_id __devinitdata pciprobe_dmi_table[] = {
328#endif 328#endif
329 { 329 {
330 .callback = set_bf_sort, 330 .callback = set_bf_sort,
331 .ident = "HP ProLiant DL385 G2", 331 .ident = "HP ProLiant DL360",
332 .matches = { 332 .matches = {
333 DMI_MATCH(DMI_SYS_VENDOR, "HP"), 333 DMI_MATCH(DMI_SYS_VENDOR, "HP"),
334 DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL385 G2"), 334 DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL360"),
335 }, 335 },
336 }, 336 },
337 { 337 {
338 .callback = set_bf_sort, 338 .callback = set_bf_sort,
339 .ident = "HP ProLiant DL585 G2", 339 .ident = "HP ProLiant DL380",
340 .matches = { 340 .matches = {
341 DMI_MATCH(DMI_SYS_VENDOR, "HP"), 341 DMI_MATCH(DMI_SYS_VENDOR, "HP"),
342 DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL585 G2"), 342 DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL380"),
343 }, 343 },
344 }, 344 },
345 {} 345 {}
diff --git a/arch/x86/pci/i386.c b/arch/x86/pci/i386.c
index 8af0f0bae2af..10fb308fded8 100644
--- a/arch/x86/pci/i386.c
+++ b/arch/x86/pci/i386.c
@@ -301,15 +301,13 @@ int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
301 prot = pgprot_val(vma->vm_page_prot); 301 prot = pgprot_val(vma->vm_page_prot);
302 if (pat_wc_enabled && write_combine) 302 if (pat_wc_enabled && write_combine)
303 prot |= _PAGE_CACHE_WC; 303 prot |= _PAGE_CACHE_WC;
304 else if (pat_wc_enabled) 304 else if (pat_wc_enabled || boot_cpu_data.x86 > 3)
305 /* 305 /*
306 * ioremap() and ioremap_nocache() defaults to UC MINUS for now. 306 * ioremap() and ioremap_nocache() defaults to UC MINUS for now.
307 * To avoid attribute conflicts, request UC MINUS here 307 * To avoid attribute conflicts, request UC MINUS here
308 * aswell. 308 * aswell.
309 */ 309 */
310 prot |= _PAGE_CACHE_UC_MINUS; 310 prot |= _PAGE_CACHE_UC_MINUS;
311 else if (boot_cpu_data.x86 > 3)
312 prot |= _PAGE_CACHE_UC;
313 311
314 vma->vm_page_prot = __pgprot(prot); 312 vma->vm_page_prot = __pgprot(prot);
315 313
diff --git a/arch/x86/pci/init.c b/arch/x86/pci/init.c
index e70b9c57b88e..b821f4462d99 100644
--- a/arch/x86/pci/init.c
+++ b/arch/x86/pci/init.c
@@ -15,7 +15,8 @@ static __init int pci_access_init(void)
15 pci_mmcfg_early_init(); 15 pci_mmcfg_early_init();
16 16
17#ifdef CONFIG_PCI_OLPC 17#ifdef CONFIG_PCI_OLPC
18 pci_olpc_init(); 18 if (!pci_olpc_init())
19 return 0; /* skip additional checks if it's an XO */
19#endif 20#endif
20#ifdef CONFIG_PCI_BIOS 21#ifdef CONFIG_PCI_BIOS
21 pci_pcbios_init(); 22 pci_pcbios_init();
diff --git a/arch/x86/pci/irq.c b/arch/x86/pci/irq.c
index 0908fca901bf..ca8df9c260bc 100644
--- a/arch/x86/pci/irq.c
+++ b/arch/x86/pci/irq.c
@@ -621,6 +621,13 @@ static __init int via_router_probe(struct irq_router *r,
621 */ 621 */
622 device = PCI_DEVICE_ID_VIA_8235; 622 device = PCI_DEVICE_ID_VIA_8235;
623 break; 623 break;
624 case PCI_DEVICE_ID_VIA_8237:
625 /**
626 * Asus a7v600 bios wrongly reports 8237
627 * as 586-compatible
628 */
629 device = PCI_DEVICE_ID_VIA_8237;
630 break;
624 } 631 }
625 } 632 }
626 633
diff --git a/arch/x86/pci/olpc.c b/arch/x86/pci/olpc.c
index 5e7636558c02..e11e9e803d5f 100644
--- a/arch/x86/pci/olpc.c
+++ b/arch/x86/pci/olpc.c
@@ -302,12 +302,13 @@ static struct pci_raw_ops pci_olpc_conf = {
302 .write = pci_olpc_write, 302 .write = pci_olpc_write,
303}; 303};
304 304
305void __init pci_olpc_init(void) 305int __init pci_olpc_init(void)
306{ 306{
307 if (!machine_is_olpc() || olpc_has_vsa()) 307 if (!machine_is_olpc() || olpc_has_vsa())
308 return; 308 return -ENODEV;
309 309
310 printk(KERN_INFO "PCI: Using configuration type OLPC\n"); 310 printk(KERN_INFO "PCI: Using configuration type OLPC\n");
311 raw_pci_ops = &pci_olpc_conf; 311 raw_pci_ops = &pci_olpc_conf;
312 is_lx = is_geode_lx(); 312 is_lx = is_geode_lx();
313 return 0;
313} 314}
diff --git a/arch/x86/pci/pci.h b/arch/x86/pci/pci.h
index f3972b12c60a..720c4c554534 100644
--- a/arch/x86/pci/pci.h
+++ b/arch/x86/pci/pci.h
@@ -101,7 +101,7 @@ extern struct pci_raw_ops pci_direct_conf1;
101extern int pci_direct_probe(void); 101extern int pci_direct_probe(void);
102extern void pci_direct_init(int type); 102extern void pci_direct_init(int type);
103extern void pci_pcbios_init(void); 103extern void pci_pcbios_init(void);
104extern void pci_olpc_init(void); 104extern int pci_olpc_init(void);
105 105
106/* pci-mmconfig.c */ 106/* pci-mmconfig.c */
107 107
diff --git a/arch/x86/vdso/vclock_gettime.c b/arch/x86/vdso/vclock_gettime.c
index 23476c2ebfc4..efa2ba7c6005 100644
--- a/arch/x86/vdso/vclock_gettime.c
+++ b/arch/x86/vdso/vclock_gettime.c
@@ -106,9 +106,9 @@ int __vdso_gettimeofday(struct timeval *tv, struct timezone *tz)
106 do_realtime((struct timespec *)tv); 106 do_realtime((struct timespec *)tv);
107 tv->tv_usec /= 1000; 107 tv->tv_usec /= 1000;
108 if (unlikely(tz != NULL)) { 108 if (unlikely(tz != NULL)) {
109 /* This relies on gcc inlining the memcpy. We'll notice 109 /* Avoid memcpy. Some old compilers fail to inline it */
110 if it ever fails to do so. */ 110 tz->tz_minuteswest = gtod->sys_tz.tz_minuteswest;
111 memcpy(tz, &gtod->sys_tz, sizeof(struct timezone)); 111 tz->tz_dsttime = gtod->sys_tz.tz_dsttime;
112 } 112 }
113 return 0; 113 return 0;
114 } 114 }
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
index 126766d43aea..3525ef523a74 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@ -60,7 +60,7 @@ xmaddr_t arbitrary_virt_to_machine(unsigned long address)
60{ 60{
61 unsigned int level; 61 unsigned int level;
62 pte_t *pte = lookup_address(address, &level); 62 pte_t *pte = lookup_address(address, &level);
63 unsigned offset = address & PAGE_MASK; 63 unsigned offset = address & ~PAGE_MASK;
64 64
65 BUG_ON(pte == NULL); 65 BUG_ON(pte == NULL);
66 66
diff --git a/arch/x86/xen/time.c b/arch/x86/xen/time.c
index c39e1a5aa241..52b2e3856980 100644
--- a/arch/x86/xen/time.c
+++ b/arch/x86/xen/time.c
@@ -12,6 +12,7 @@
12#include <linux/clocksource.h> 12#include <linux/clocksource.h>
13#include <linux/clockchips.h> 13#include <linux/clockchips.h>
14#include <linux/kernel_stat.h> 14#include <linux/kernel_stat.h>
15#include <linux/math64.h>
15 16
16#include <asm/xen/hypervisor.h> 17#include <asm/xen/hypervisor.h>
17#include <asm/xen/hypercall.h> 18#include <asm/xen/hypercall.h>
@@ -150,11 +151,7 @@ static void do_stolen_accounting(void)
150 if (stolen < 0) 151 if (stolen < 0)
151 stolen = 0; 152 stolen = 0;
152 153
153 ticks = 0; 154 ticks = iter_div_u64_rem(stolen, NS_PER_TICK, &stolen);
154 while (stolen >= NS_PER_TICK) {
155 ticks++;
156 stolen -= NS_PER_TICK;
157 }
158 __get_cpu_var(residual_stolen) = stolen; 155 __get_cpu_var(residual_stolen) = stolen;
159 account_steal_time(NULL, ticks); 156 account_steal_time(NULL, ticks);
160 157
@@ -166,11 +163,7 @@ static void do_stolen_accounting(void)
166 if (blocked < 0) 163 if (blocked < 0)
167 blocked = 0; 164 blocked = 0;
168 165
169 ticks = 0; 166 ticks = iter_div_u64_rem(blocked, NS_PER_TICK, &blocked);
170 while (blocked >= NS_PER_TICK) {
171 ticks++;
172 blocked -= NS_PER_TICK;
173 }
174 __get_cpu_var(residual_blocked) = blocked; 167 __get_cpu_var(residual_blocked) = blocked;
175 account_steal_time(idle_task(smp_processor_id()), ticks); 168 account_steal_time(idle_task(smp_processor_id()), ticks);
176} 169}
diff --git a/arch/xtensa/kernel/init_task.c b/arch/xtensa/kernel/init_task.c
index 021b4f46ff94..3df469dbe814 100644
--- a/arch/xtensa/kernel/init_task.c
+++ b/arch/xtensa/kernel/init_task.c
@@ -22,7 +22,6 @@
22#include <asm/uaccess.h> 22#include <asm/uaccess.h>
23 23
24static struct fs_struct init_fs = INIT_FS; 24static struct fs_struct init_fs = INIT_FS;
25static struct files_struct init_files = INIT_FILES;
26static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 25static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
27static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 26static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
28struct mm_struct init_mm = INIT_MM(init_mm); 27struct mm_struct init_mm = INIT_MM(init_mm);