From 89f698d72960e482a744e73b6c31fbcb86e72132 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Fri, 12 Nov 2010 16:01:55 -0800 Subject: [PATCH] --- yaml --- r: 221894 b: refs/heads/master c: 891cbd30ef456664e50bbd28436ef3006a81cf7c h: refs/heads/master v: v3 --- [refs] | 2 +- .../ABI/obsolete/proc-pid-oom_adj | 22 + trunk/Documentation/DocBook/kgdb.tmpl | 13 +- trunk/Documentation/block/switching-sched.txt | 8 +- trunk/Documentation/filesystems/Locking | 2 - .../xfs-delayed-logging-design.txt | 11 - trunk/Documentation/i2c/busses/i2c-i801 | 6 +- trunk/Documentation/kernel-parameters.txt | 2 +- trunk/Documentation/leds-class.txt | 21 +- trunk/Documentation/leds/leds-lp5521.txt | 88 + trunk/Documentation/leds/leds-lp5523.txt | 83 + trunk/Documentation/rbtree.txt | 4 +- .../Documentation/scsi/ChangeLog.megaraid_sas | 47 + trunk/Documentation/sysctl/kernel.txt | 14 + trunk/MAINTAINERS | 7 +- trunk/Makefile | 7 +- trunk/arch/Kconfig | 14 + trunk/arch/arm/Kconfig | 14 +- trunk/arch/arm/common/gic.c | 28 +- trunk/arch/arm/configs/mx51_defconfig | 1 + .../arm/include/asm/hardware/cache-l2x0.h | 13 +- trunk/arch/arm/include/asm/hardware/it8152.h | 2 +- trunk/arch/arm/include/asm/kgdb.h | 5 +- trunk/arch/arm/include/asm/memblock.h | 7 - trunk/arch/arm/include/asm/outercache.h | 24 + trunk/arch/arm/kernel/hw_breakpoint.c | 3 +- trunk/arch/arm/kernel/kgdb.c | 2 +- trunk/arch/arm/kernel/machine_kexec.c | 3 + trunk/arch/arm/kernel/perf_event.c | 2 +- trunk/arch/arm/kernel/stacktrace.c | 2 +- trunk/arch/arm/kernel/traps.c | 5 +- trunk/arch/arm/kernel/unwind.c | 2 +- trunk/arch/arm/kernel/vmlinux.lds.S | 1 + trunk/arch/arm/mach-ep93xx/include/mach/dma.h | 111 +- trunk/arch/arm/mach-imx/mach-mx27_3ds.c | 38 + trunk/arch/arm/mach-ixp2000/core.c | 2 +- trunk/arch/arm/mach-kirkwood/common.c | 7 +- trunk/arch/arm/mach-kirkwood/d2net_v2-setup.c | 2 +- .../arch/arm/mach-kirkwood/lacie_v2-common.c | 14 - .../arch/arm/mach-kirkwood/lacie_v2-common.h | 2 - trunk/arch/arm/mach-kirkwood/mpp.c | 4 +- .../arm/mach-kirkwood/netspace_v2-setup.c | 6 +- .../arch/arm/mach-kirkwood/netxbig_v2-setup.c | 4 +- trunk/arch/arm/mach-kirkwood/ts41x-setup.c | 14 +- .../arch/arm/mach-mmp/include/mach/cputype.h | 3 +- trunk/arch/arm/mach-msm/Kconfig | 9 +- trunk/arch/arm/mach-msm/board-halibut.c | 1 - .../arm/mach-msm/include/mach/debug-macro.S | 15 +- trunk/arch/arm/mach-msm/iommu_dev.c | 22 +- trunk/arch/arm/mach-msm/timer.c | 2 +- trunk/arch/arm/mach-mv78xx0/mpp.c | 4 +- trunk/arch/arm/mach-mx25/Kconfig | 1 + trunk/arch/arm/mach-mx25/mach-mx25_3ds.c | 10 + trunk/arch/arm/mach-mx3/Kconfig | 2 + trunk/arch/arm/mach-mx3/devices.c | 16 +- trunk/arch/arm/mach-mx3/mach-mx31_3ds.c | 38 +- trunk/arch/arm/mach-mx3/mach-mx35_3ds.c | 16 + trunk/arch/arm/mach-mx5/Kconfig | 2 + trunk/arch/arm/mach-mx5/Makefile | 1 + trunk/arch/arm/mach-mx5/board-mx51_babbage.c | 49 +- trunk/arch/arm/mach-mx5/clock-mx51.c | 22 +- trunk/arch/arm/mach-mx5/cpu_op-mx51.c | 29 + trunk/arch/arm/mach-mx5/cpu_op-mx51.h | 14 + trunk/arch/arm/mach-mx5/devices-imx51.h | 2 + trunk/arch/arm/mach-omap2/omap4-common.c | 13 + trunk/arch/arm/mach-orion5x/mpp.c | 4 +- trunk/arch/arm/mach-orion5x/ts78xx-setup.c | 2 +- trunk/arch/arm/mach-pxa/cm-x2xx.c | 2 - trunk/arch/arm/mach-pxa/saar.c | 2 +- trunk/arch/arm/mach-s3c2410/h1940-bluetooth.c | 13 +- .../arch/arm/mach-s3c2410/include/mach/gpio.h | 10 +- .../mach-s3c2410/include/mach/h1940-latch.h | 57 +- .../include/mach/regs-s3c2443-clock.h | 2 + .../arm/mach-s3c2410/include/mach/vmalloc.h | 2 +- trunk/arch/arm/mach-s3c2410/mach-h1940.c | 169 +- trunk/arch/arm/mach-s3c2412/s3c2412.c | 3 +- trunk/arch/arm/mach-s3c2416/Kconfig | 6 + trunk/arch/arm/mach-s3c2416/Makefile | 2 +- trunk/arch/arm/mach-s3c2416/irq.c | 2 + trunk/arch/arm/mach-s3c2416/pm.c | 84 + trunk/arch/arm/mach-s3c2416/s3c2416.c | 3 +- trunk/arch/arm/mach-s3c2440/Kconfig | 7 +- trunk/arch/arm/mach-s3c2440/mach-rx1950.c | 218 +- trunk/arch/arm/mach-s3c2440/s3c244x.c | 3 +- trunk/arch/arm/mach-s3c2443/s3c2443.c | 3 +- .../arm/mach-s3c24a0/include/mach/vmalloc.h | 2 +- trunk/arch/arm/mach-s3c64xx/Kconfig | 21 + trunk/arch/arm/mach-s3c64xx/Makefile | 1 + trunk/arch/arm/mach-s3c64xx/dev-audio.c | 63 +- trunk/arch/arm/mach-s3c64xx/gpiolib.c | 8 +- .../arm/mach-s3c64xx/include/mach/vmalloc.h | 2 +- trunk/arch/arm/mach-s3c64xx/mach-mini6410.c | 357 ++ trunk/arch/arm/mach-s3c64xx/mach-real6410.c | 198 +- trunk/arch/arm/mach-s3c64xx/setup-fb-24bpp.c | 13 +- trunk/arch/arm/mach-s3c64xx/setup-ide.c | 11 +- trunk/arch/arm/mach-s3c64xx/setup-keypad.c | 16 +- .../arch/arm/mach-s3c64xx/setup-sdhci-gpio.c | 41 +- trunk/arch/arm/mach-s5p6442/Kconfig | 1 - trunk/arch/arm/mach-s5p6442/clock.c | 28 + trunk/arch/arm/mach-s5p6442/dev-audio.c | 30 +- trunk/arch/arm/mach-s5p6442/dev-spi.c | 6 +- trunk/arch/arm/mach-s5p6442/dma.c | 2 +- .../mach-s5p6442/include/mach/regs-clock.h | 1 + .../arm/mach-s5p6442/include/mach/vmalloc.h | 2 +- trunk/arch/arm/mach-s5p64x0/Kconfig | 2 - trunk/arch/arm/mach-s5p64x0/clock-s5p6440.c | 19 +- trunk/arch/arm/mach-s5p64x0/clock-s5p6450.c | 19 +- trunk/arch/arm/mach-s5p64x0/clock.c | 18 - trunk/arch/arm/mach-s5p64x0/dev-audio.c | 26 +- trunk/arch/arm/mach-s5p64x0/dev-spi.c | 38 +- trunk/arch/arm/mach-s5p64x0/dma.c | 2 +- .../mach-s5p64x0/include/mach/regs-clock.h | 2 + .../arm/mach-s5p64x0/include/mach/vmalloc.h | 2 +- trunk/arch/arm/mach-s5p64x0/setup-i2c0.c | 12 +- trunk/arch/arm/mach-s5p64x0/setup-i2c1.c | 12 +- trunk/arch/arm/mach-s5pc100/Kconfig | 1 - trunk/arch/arm/mach-s5pc100/Makefile | 2 +- trunk/arch/arm/mach-s5pc100/clock.c | 174 +- trunk/arch/arm/mach-s5pc100/dev-audio.c | 86 +- trunk/arch/arm/mach-s5pc100/dev-spi.c | 22 +- trunk/arch/arm/mach-s5pc100/dma.c | 4 +- trunk/arch/arm/mach-s5pc100/gpiolib.c | 216 +- .../arch/arm/mach-s5pc100/include/mach/gpio.h | 7 - .../arch/arm/mach-s5pc100/include/mach/irqs.h | 13 +- .../arch/arm/mach-s5pc100/include/mach/map.h | 2 + .../arm/mach-s5pc100/include/mach/regs-gpio.h | 49 +- .../arm/mach-s5pc100/include/mach/vmalloc.h | 2 +- trunk/arch/arm/mach-s5pc100/irq-gpio.c | 266 -- trunk/arch/arm/mach-s5pc100/mach-smdkc100.c | 4 + trunk/arch/arm/mach-s5pc100/setup-fb-24bpp.c | 30 +- trunk/arch/arm/mach-s5pc100/setup-i2c0.c | 6 +- trunk/arch/arm/mach-s5pc100/setup-i2c1.c | 6 +- trunk/arch/arm/mach-s5pc100/setup-ide.c | 41 +- trunk/arch/arm/mach-s5pc100/setup-keypad.c | 15 +- .../arch/arm/mach-s5pc100/setup-sdhci-gpio.c | 35 +- trunk/arch/arm/mach-s5pv210/Kconfig | 37 +- trunk/arch/arm/mach-s5pv210/Makefile | 3 + trunk/arch/arm/mach-s5pv210/clock.c | 207 +- trunk/arch/arm/mach-s5pv210/cpu.c | 15 + trunk/arch/arm/mach-s5pv210/cpufreq.c | 484 ++ trunk/arch/arm/mach-s5pv210/dev-audio.c | 86 +- trunk/arch/arm/mach-s5pv210/dev-spi.c | 19 +- trunk/arch/arm/mach-s5pv210/dma.c | 4 +- trunk/arch/arm/mach-s5pv210/gpiolib.c | 14 +- .../arch/arm/mach-s5pv210/include/mach/irqs.h | 12 +- .../arch/arm/mach-s5pv210/include/mach/map.h | 12 + .../arm/mach-s5pv210/include/mach/pm-core.h | 43 + .../mach-s5pv210/include/mach/regs-clock.h | 39 +- .../arm/mach-s5pv210/include/mach/regs-gpio.h | 7 - .../arm/mach-s5pv210/include/mach/regs-sys.h | 19 + .../arm/mach-s5pv210/include/mach/vmalloc.h | 2 +- trunk/arch/arm/mach-s5pv210/mach-aquila.c | 169 + trunk/arch/arm/mach-s5pv210/mach-goni.c | 381 +- trunk/arch/arm/mach-s5pv210/mach-smdkc110.c | 4 + trunk/arch/arm/mach-s5pv210/mach-smdkv210.c | 4 + trunk/arch/arm/mach-s5pv210/mach-torbreck.c | 131 + trunk/arch/arm/mach-s5pv210/pm.c | 166 + trunk/arch/arm/mach-s5pv210/setup-fb-24bpp.c | 34 +- trunk/arch/arm/mach-s5pv210/setup-i2c0.c | 6 +- trunk/arch/arm/mach-s5pv210/setup-i2c1.c | 6 +- trunk/arch/arm/mach-s5pv210/setup-i2c2.c | 6 +- trunk/arch/arm/mach-s5pv210/setup-ide.c | 49 +- trunk/arch/arm/mach-s5pv210/setup-keypad.c | 14 +- .../arch/arm/mach-s5pv210/setup-sdhci-gpio.c | 57 +- trunk/arch/arm/mach-s5pv210/sleep.S | 170 + trunk/arch/arm/mach-s5pv310/Kconfig | 95 +- trunk/arch/arm/mach-s5pv310/Makefile | 10 +- trunk/arch/arm/mach-s5pv310/clock.c | 635 ++- trunk/arch/arm/mach-s5pv310/cpu.c | 47 +- trunk/arch/arm/mach-s5pv310/gpiolib.c | 304 ++ trunk/arch/arm/mach-s5pv310/hotplug.c | 144 + .../arch/arm/mach-s5pv310/include/mach/irqs.h | 44 +- .../arch/arm/mach-s5pv310/include/mach/map.h | 19 +- .../mach-s5pv310/include/mach/regs-clock.h | 32 +- .../arm/mach-s5pv310/include/mach/regs-gpio.h | 42 + .../arm/mach-s5pv310/include/mach/regs-srom.h | 50 + .../arm/mach-s5pv310/include/mach/vmalloc.h | 2 +- trunk/arch/arm/mach-s5pv310/irq-combiner.c | 6 +- trunk/arch/arm/mach-s5pv310/irq-eint.c | 228 + trunk/arch/arm/mach-s5pv310/mach-smdkc210.c | 202 + trunk/arch/arm/mach-s5pv310/mach-smdkv310.c | 121 +- .../arm/mach-s5pv310/mach-universal_c210.c | 81 +- trunk/arch/arm/mach-s5pv310/setup-i2c0.c | 6 +- trunk/arch/arm/mach-s5pv310/setup-i2c1.c | 6 +- trunk/arch/arm/mach-s5pv310/setup-i2c2.c | 6 +- trunk/arch/arm/mach-s5pv310/setup-i2c3.c | 23 + trunk/arch/arm/mach-s5pv310/setup-i2c4.c | 23 + trunk/arch/arm/mach-s5pv310/setup-i2c5.c | 23 + trunk/arch/arm/mach-s5pv310/setup-i2c6.c | 23 + trunk/arch/arm/mach-s5pv310/setup-i2c7.c | 23 + .../arch/arm/mach-s5pv310/setup-sdhci-gpio.c | 152 + trunk/arch/arm/mach-s5pv310/setup-sdhci.c | 69 + trunk/arch/arm/mach-sa1100/cpu-sa1100.c | 5 +- trunk/arch/arm/mach-shmobile/Kconfig | 2 + trunk/arch/arm/mach-shmobile/board-ap4evb.c | 362 +- trunk/arch/arm/mach-shmobile/clock-sh7367.c | 2 +- trunk/arch/arm/mach-shmobile/clock-sh7372.c | 180 +- trunk/arch/arm/mach-shmobile/clock-sh7377.c | 2 +- .../arm/mach-shmobile/include/mach/gpio.h | 4 +- .../arm/mach-shmobile/include/mach/sh7372.h | 12 +- trunk/arch/arm/mach-shmobile/intc-sh7372.c | 28 + trunk/arch/arm/mach-shmobile/pfc-sh7372.c | 8 +- trunk/arch/arm/mach-shmobile/setup-sh7367.c | 1 - trunk/arch/arm/mach-shmobile/setup-sh7372.c | 94 +- trunk/arch/arm/mach-shmobile/setup-sh7377.c | 1 - trunk/arch/arm/mach-u300/clock.c | 6 +- trunk/arch/arm/mach-u300/core.c | 47 +- .../arm/mach-u300/include/mach/u300-regs.h | 2 - trunk/arch/arm/mach-u300/spi.c | 2 +- trunk/arch/arm/mach-ux500/cpu.c | 45 + trunk/arch/arm/mach-vexpress/ct-ca9x4.c | 2 + trunk/arch/arm/mm/Kconfig | 8 + trunk/arch/arm/mm/cache-fa.S | 12 + trunk/arch/arm/mm/cache-l2x0.c | 78 +- trunk/arch/arm/mm/cache-v3.S | 10 + trunk/arch/arm/mm/cache-v4.S | 10 + trunk/arch/arm/mm/cache-v4wb.S | 12 + trunk/arch/arm/mm/cache-v4wt.S | 12 + trunk/arch/arm/mm/dma-mapping.c | 2 +- trunk/arch/arm/mm/fault-armv.c | 28 +- trunk/arch/arm/mm/init.c | 155 +- trunk/arch/arm/mm/mmu.c | 73 +- trunk/arch/arm/mm/proc-arm1020.S | 15 + trunk/arch/arm/mm/proc-arm1020e.S | 15 + trunk/arch/arm/mm/proc-arm1022.S | 15 + trunk/arch/arm/mm/proc-arm1026.S | 15 + trunk/arch/arm/mm/proc-arm920.S | 12 + trunk/arch/arm/mm/proc-arm922.S | 12 + trunk/arch/arm/mm/proc-arm925.S | 12 + trunk/arch/arm/mm/proc-arm926.S | 12 + trunk/arch/arm/mm/proc-arm940.S | 12 + trunk/arch/arm/mm/proc-arm946.S | 12 + trunk/arch/arm/mm/proc-feroceon.S | 13 + trunk/arch/arm/mm/proc-xsc3.S | 12 + trunk/arch/arm/mm/proc-xscale.S | 12 + trunk/arch/arm/plat-mxc/Makefile | 1 + trunk/arch/arm/plat-mxc/cpufreq.c | 206 + trunk/arch/arm/plat-mxc/devices/Kconfig | 6 +- trunk/arch/arm/plat-mxc/devices/Makefile | 1 + .../arm/plat-mxc/devices/platform-gpio_keys.c | 27 + trunk/arch/arm/plat-mxc/gpio.c | 32 + .../plat-mxc/include/mach/devices-common.h | 4 + .../arm/plat-mxc/include/mach/iomux-mx51.h | 2 + trunk/arch/arm/plat-mxc/include/mach/mx31.h | 1 - trunk/arch/arm/plat-mxc/include/mach/mx35.h | 2 - trunk/arch/arm/plat-mxc/include/mach/mxc.h | 13 +- trunk/arch/arm/plat-orion/include/plat/pcie.h | 3 + trunk/arch/arm/plat-orion/pcie.c | 5 - .../arm/plat-pxa/include/plat/pxa3xx_nand.h | 18 +- trunk/arch/arm/plat-s3c24xx/Kconfig | 1 + trunk/arch/arm/plat-s3c24xx/common-smdk.c | 2 +- trunk/arch/arm/plat-s3c24xx/gpiolib.c | 10 +- trunk/arch/arm/plat-s5p/Kconfig | 5 + trunk/arch/arm/plat-s5p/Makefile | 3 + trunk/arch/arm/plat-s5p/clock.c | 29 +- trunk/arch/arm/plat-s5p/include/plat/irqs.h | 18 + .../arch/arm/plat-s5p/include/plat/map-s5p.h | 40 +- .../arm/plat-s5p/include/plat/s5p-clock.h | 4 + trunk/arch/arm/plat-s5p/irq-eint.c | 10 +- trunk/arch/arm/plat-s5p/irq-gpioint.c | 237 + trunk/arch/arm/plat-s5p/irq-pm.c | 93 + trunk/arch/arm/plat-s5p/pm.c | 52 + trunk/arch/arm/plat-samsung/Kconfig | 25 + trunk/arch/arm/plat-samsung/Makefile | 5 + trunk/arch/arm/plat-samsung/dev-hsmmc.c | 8 +- trunk/arch/arm/plat-samsung/dev-hsmmc1.c | 8 +- trunk/arch/arm/plat-samsung/dev-hsmmc2.c | 8 +- trunk/arch/arm/plat-samsung/dev-hsmmc3.c | 12 +- trunk/arch/arm/plat-samsung/dev-i2c2.c | 4 +- trunk/arch/arm/plat-samsung/dev-i2c3.c | 68 + trunk/arch/arm/plat-samsung/dev-i2c4.c | 68 + trunk/arch/arm/plat-samsung/dev-i2c5.c | 68 + trunk/arch/arm/plat-samsung/dev-i2c6.c | 68 + trunk/arch/arm/plat-samsung/dev-i2c7.c | 68 + trunk/arch/arm/plat-samsung/gpio-config.c | 50 + trunk/arch/arm/plat-samsung/gpio.c | 8 + .../arm/plat-samsung/include/plat/audio.h | 9 + .../arch/arm/plat-samsung/include/plat/devs.h | 7 + .../include/plat/gpio-cfg-helpers.h | 6 + .../arm/plat-samsung/include/plat/gpio-cfg.h | 56 + .../arm/plat-samsung/include/plat/gpio-core.h | 15 + .../arch/arm/plat-samsung/include/plat/iic.h | 10 + .../arm/plat-samsung/include/plat/map-base.h | 4 +- .../arm/plat-samsung/include/plat/nand-core.h | 28 + .../arm/plat-samsung/include/plat/sdhci.h | 64 + trunk/arch/arm/plat-samsung/pm-gpio.c | 4 +- trunk/arch/arm/plat-samsung/s3c-pl330.c | 34 +- trunk/arch/blackfin/kernel/kgdb.c | 3 +- trunk/arch/ia64/kernel/perfmon.c | 9 +- trunk/arch/m68k/include/asm/irqflags.h | 2 + trunk/arch/m68k/include/asm/machdep.h | 1 + trunk/arch/mips/Kconfig | 79 + trunk/arch/mips/Kconfig.debug | 9 + trunk/arch/mips/Makefile | 4 +- trunk/arch/mips/ar7/gpio.c | 243 +- trunk/arch/mips/ar7/platform.c | 56 + trunk/arch/mips/ar7/prom.c | 2 + trunk/arch/mips/ar7/setup.c | 14 + trunk/arch/mips/bcm63xx/cpu.c | 30 +- trunk/arch/mips/cavium-octeon/Kconfig | 23 + trunk/arch/mips/cavium-octeon/csrc-octeon.c | 34 +- trunk/arch/mips/cavium-octeon/dma-octeon.c | 581 +-- .../mips/cavium-octeon/executive/cvmx-l2c.c | 810 ++-- .../arch/mips/cavium-octeon/octeon-platform.c | 112 +- trunk/arch/mips/cavium-octeon/serial.c | 2 +- trunk/arch/mips/cavium-octeon/setup.c | 120 +- trunk/arch/mips/include/asm/atomic.h | 208 +- trunk/arch/mips/include/asm/bitops.h | 270 +- trunk/arch/mips/include/asm/bootinfo.h | 12 + trunk/arch/mips/include/asm/cmpxchg.h | 7 +- trunk/arch/mips/include/asm/cpu.h | 26 +- trunk/arch/mips/include/asm/device.h | 15 +- trunk/arch/mips/include/asm/dma-mapping.h | 96 +- trunk/arch/mips/include/asm/dma.h | 3 + trunk/arch/mips/include/asm/local.h | 2 +- trunk/arch/mips/include/asm/mach-ar7/ar7.h | 47 +- trunk/arch/mips/include/asm/mach-ar7/gpio.h | 3 +- .../include/asm/mach-bcm63xx/bcm963xx_tag.h | 97 + .../cpu-feature-overrides.h | 8 +- .../asm/mach-cavium-octeon/dma-coherence.h | 24 +- .../include/asm/mach-ip27/dma-coherence.h | 5 +- .../include/asm/mach-ip32/dma-coherence.h | 5 +- .../include/asm/mach-jazz/dma-coherence.h | 9 +- trunk/arch/mips/include/asm/mipsregs.h | 51 + .../mips/include/asm/octeon/cvmx-agl-defs.h | 616 ++- trunk/arch/mips/include/asm/octeon/cvmx-asm.h | 11 + .../mips/include/asm/octeon/cvmx-ciu-defs.h | 857 +++- .../mips/include/asm/octeon/cvmx-gpio-defs.h | 74 +- .../mips/include/asm/octeon/cvmx-iob-defs.h | 242 +- .../mips/include/asm/octeon/cvmx-ipd-defs.h | 314 +- .../mips/include/asm/octeon/cvmx-l2c-defs.h | 738 ++- trunk/arch/mips/include/asm/octeon/cvmx-l2c.h | 225 +- .../mips/include/asm/octeon/cvmx-l2d-defs.h | 38 +- .../mips/include/asm/octeon/cvmx-l2t-defs.h | 5 +- .../mips/include/asm/octeon/cvmx-led-defs.h | 41 +- .../mips/include/asm/octeon/cvmx-mio-defs.h | 807 +++- .../mips/include/asm/octeon/cvmx-mixx-defs.h | 200 +- .../mips/include/asm/octeon/cvmx-npei-defs.h | 681 ++- .../mips/include/asm/octeon/cvmx-npi-defs.h | 362 +- .../mips/include/asm/octeon/cvmx-pci-defs.h | 265 +- .../include/asm/octeon/cvmx-pciercx-defs.h | 435 +- .../mips/include/asm/octeon/cvmx-pescx-defs.h | 50 +- .../mips/include/asm/octeon/cvmx-pexp-defs.h | 378 +- .../mips/include/asm/octeon/cvmx-pow-defs.h | 157 +- .../mips/include/asm/octeon/cvmx-rnm-defs.h | 67 +- .../mips/include/asm/octeon/cvmx-smix-defs.h | 46 +- .../mips/include/asm/octeon/cvmx-uctlx-defs.h | 261 ++ .../mips/include/asm/octeon/octeon-model.h | 36 +- trunk/arch/mips/include/asm/octeon/octeon.h | 1 + .../arch/mips/include/asm/octeon/pci-octeon.h | 10 + trunk/arch/mips/include/asm/perf_event.h | 25 + trunk/arch/mips/include/asm/pgtable-64.h | 4 +- trunk/arch/mips/include/asm/processor.h | 40 +- trunk/arch/mips/include/asm/system.h | 52 +- trunk/arch/mips/include/asm/thread_info.h | 2 + trunk/arch/mips/include/asm/uaccess.h | 4 +- trunk/arch/mips/kernel/Makefile | 2 + trunk/arch/mips/kernel/cpu-probe.c | 82 +- trunk/arch/mips/kernel/irq.c | 24 + trunk/arch/mips/kernel/perf_event.c | 601 +++ trunk/arch/mips/kernel/perf_event_mipsxx.c | 1052 +++++ trunk/arch/mips/kernel/setup.c | 1 + trunk/arch/mips/kernel/traps.c | 31 +- trunk/arch/mips/kernel/unaligned.c | 7 + trunk/arch/mips/loongson/Kconfig | 2 - trunk/arch/mips/math-emu/cp1emu.c | 3 + trunk/arch/mips/mm/c-octeon.c | 16 +- trunk/arch/mips/mm/c-r4k.c | 21 +- trunk/arch/mips/mm/dma-default.c | 165 +- trunk/arch/mips/mm/fault.c | 11 +- trunk/arch/mips/mm/sc-mips.c | 34 +- trunk/arch/mips/mm/tlbex.c | 11 +- trunk/arch/mips/mm/uasm.c | 20 +- trunk/arch/mips/pci/pci-octeon.c | 60 +- trunk/arch/mips/pci/pcie-octeon.c | 5 + trunk/arch/powerpc/Kconfig | 7 +- trunk/arch/powerpc/include/asm/fsl_lbc.h | 34 +- trunk/arch/powerpc/include/asm/kgdb.h | 1 + trunk/arch/powerpc/kernel/kgdb.c | 188 +- trunk/arch/powerpc/kernel/kvm.c | 2 +- trunk/arch/powerpc/kvm/booke_interrupts.S | 2 +- trunk/arch/powerpc/kvm/e500.c | 2 +- trunk/arch/powerpc/kvm/powerpc.c | 1 + trunk/arch/powerpc/kvm/timing.c | 2 - .../arch/powerpc/platforms/cell/spufs/inode.c | 10 +- trunk/arch/powerpc/sysdev/fsl_lbc.c | 244 +- trunk/arch/s390/Kconfig | 61 +- trunk/arch/s390/hypfs/hypfs_diag.c | 19 +- trunk/arch/s390/hypfs/inode.c | 8 +- trunk/arch/s390/include/asm/dasd.h | 40 +- trunk/arch/s390/kernel/asm-offsets.c | 6 +- trunk/arch/s390/kernel/early.c | 2 - trunk/arch/s390/kernel/entry.S | 1 + trunk/arch/s390/kernel/entry64.S | 1 + trunk/arch/s390/kernel/kprobes.c | 9 +- trunk/arch/s390/kernel/setup.c | 3 + trunk/arch/s390/kernel/sysinfo.c | 2 + trunk/arch/s390/kernel/topology.c | 6 +- trunk/arch/s390/kernel/vdso32/clock_getres.S | 6 +- trunk/arch/s390/kernel/vdso32/clock_gettime.S | 4 +- trunk/arch/s390/kernel/vdso64/clock_getres.S | 6 +- trunk/arch/s390/kernel/vdso64/clock_gettime.S | 4 +- trunk/arch/sh/Kconfig | 1 + trunk/arch/sh/Makefile | 3 - trunk/arch/sh/boards/Kconfig | 7 - trunk/arch/sh/boards/Makefile | 2 + trunk/arch/sh/boards/board-edosk7705.c | 78 + .../setup.c => board-secureedge5410.c} | 38 +- trunk/arch/sh/boards/mach-ap325rxa/setup.c | 29 +- trunk/arch/sh/boards/mach-ecovec24/setup.c | 60 +- trunk/arch/sh/boards/mach-edosk7705/Makefile | 5 - trunk/arch/sh/boards/mach-edosk7705/io.c | 71 - trunk/arch/sh/boards/mach-edosk7705/setup.c | 36 - trunk/arch/sh/boards/mach-kfr2r09/setup.c | 29 +- trunk/arch/sh/boards/mach-microdev/io.c | 246 +- trunk/arch/sh/boards/mach-microdev/setup.c | 23 +- trunk/arch/sh/boards/mach-migor/setup.c | 58 +- trunk/arch/sh/boards/mach-se/7206/Makefile | 2 +- trunk/arch/sh/boards/mach-se/7206/io.c | 104 - trunk/arch/sh/boards/mach-se/7206/irq.c | 4 +- trunk/arch/sh/boards/mach-se/7206/setup.c | 15 - trunk/arch/sh/boards/mach-se/770x/Makefile | 2 +- trunk/arch/sh/boards/mach-se/770x/io.c | 156 - trunk/arch/sh/boards/mach-se/770x/setup.c | 22 - trunk/arch/sh/boards/mach-se/7724/setup.c | 54 +- trunk/arch/sh/boards/mach-se/7751/Makefile | 2 +- trunk/arch/sh/boards/mach-se/7751/io.c | 119 - trunk/arch/sh/boards/mach-se/7751/setup.c | 18 - trunk/arch/sh/boards/mach-snapgear/Makefile | 5 - trunk/arch/sh/boards/mach-snapgear/io.c | 121 - trunk/arch/sh/boards/mach-systemh/Makefile | 13 - trunk/arch/sh/boards/mach-systemh/io.c | 158 - trunk/arch/sh/boards/mach-systemh/irq.c | 61 - trunk/arch/sh/boards/mach-systemh/setup.c | 57 - ...ear_defconfig => secureedge5410_defconfig} | 0 trunk/arch/sh/configs/systemh_defconfig | 28 - trunk/arch/sh/include/asm/addrspace.h | 8 +- trunk/arch/sh/include/asm/pgtable.h | 12 - trunk/arch/sh/include/asm/system.h | 4 +- trunk/arch/sh/include/asm/system_32.h | 36 - trunk/arch/sh/include/asm/system_64.h | 3 - trunk/arch/sh/include/asm/uncached.h | 40 + .../sh/include/mach-common/mach/edosk7705.h | 7 - .../sh/include/mach-common/mach/microdev.h | 9 - .../mach/{snapgear.h => secureedge5410.h} | 22 - .../sh/include/mach-common/mach/systemh7751.h | 71 - trunk/arch/sh/kernel/cpu/sh4a/clock-sh7724.c | 6 +- trunk/arch/sh/mm/Kconfig | 2 +- trunk/arch/sh/mm/consistent.c | 15 +- trunk/arch/sh/mm/uncached.c | 2 +- trunk/arch/sh/tools/mach-types | 1 - trunk/arch/sparc/Kconfig | 3 - trunk/arch/sparc/include/asm/jump_label.h | 2 +- trunk/arch/sparc/kernel/irq_32.c | 4 +- trunk/arch/sparc/kernel/leon_smp.c | 4 +- trunk/arch/sparc/kernel/rtrap_32.S | 6 +- trunk/arch/sparc/kernel/rtrap_64.S | 36 +- trunk/arch/sparc/mm/fault_32.c | 12 + trunk/arch/tile/include/asm/highmem.h | 1 - trunk/arch/tile/include/asm/kmap_types.h | 34 +- trunk/arch/tile/include/asm/pgtable.h | 6 +- trunk/arch/tile/include/asm/stat.h | 3 + trunk/arch/tile/include/asm/unistd.h | 1 + trunk/arch/tile/kernel/compat.c | 10 +- trunk/arch/tile/kernel/early_printk.c | 2 +- trunk/arch/tile/kernel/hardwall.c | 6 +- trunk/arch/tile/kernel/irq.c | 4 +- trunk/arch/tile/kernel/machine_kexec.c | 6 +- trunk/arch/tile/kernel/messaging.c | 2 +- trunk/arch/tile/kernel/ptrace.c | 39 +- trunk/arch/tile/kernel/reboot.c | 6 +- trunk/arch/tile/kernel/setup.c | 8 +- trunk/arch/tile/kernel/signal.c | 9 +- trunk/arch/tile/kernel/smp.c | 2 +- trunk/arch/tile/kernel/time.c | 8 +- trunk/arch/tile/lib/memcpy_tile64.c | 11 +- trunk/arch/tile/mm/highmem.c | 2 +- trunk/arch/tile/mm/init.c | 8 +- trunk/arch/tile/mm/pgtable.c | 4 +- trunk/arch/um/include/asm/ptrace-generic.h | 4 +- trunk/arch/um/kernel/ptrace.c | 2 +- trunk/arch/x86/Makefile_32.cpu | 13 +- trunk/arch/x86/include/asm/apic.h | 10 +- trunk/arch/x86/include/asm/uv/uv_hub.h | 21 +- trunk/arch/x86/include/asm/uv/uv_mmrs.h | 189 +- trunk/arch/x86/kernel/alternative.c | 71 +- trunk/arch/x86/kernel/apic/apic.c | 1 - trunk/arch/x86/kernel/apic/io_apic.c | 2 +- trunk/arch/x86/kernel/apic/x2apic_uv_x.c | 36 +- trunk/arch/x86/kernel/cpu/perf_event_amd.c | 4 +- trunk/arch/x86/kernel/irq_32.c | 9 +- trunk/arch/x86/kernel/kgdb.c | 3 +- trunk/arch/x86/kernel/microcode_amd.c | 2 +- trunk/arch/x86/kernel/mmconf-fam10h_64.c | 7 +- trunk/arch/x86/kernel/pvclock.c | 38 - trunk/arch/x86/kvm/mmu.c | 9 +- trunk/arch/x86/kvm/x86.c | 16 +- trunk/arch/x86/mm/numa_64.c | 7 +- trunk/arch/x86/mm/tlb.c | 2 +- trunk/arch/x86/pci/xen.c | 8 +- trunk/arch/x86/platform/uv/tlb_uv.c | 13 +- trunk/block/blk-core.c | 11 +- trunk/block/blk-ioc.c | 14 - trunk/block/blk-map.c | 2 + trunk/block/compat_ioctl.c | 4 +- trunk/block/elevator.c | 4 +- trunk/block/ioctl.c | 7 +- trunk/block/scsi_ioctl.c | 34 +- trunk/crypto/pcrypt.c | 1 - trunk/drivers/Makefile | 1 + trunk/drivers/ata/pata_octeon_cf.c | 2 +- trunk/drivers/base/devtmpfs.c | 18 +- trunk/drivers/base/power/runtime.c | 2 +- trunk/drivers/block/aoe/aoeblk.c | 3 - trunk/drivers/block/cciss.c | 131 +- trunk/drivers/block/cciss.h | 4 + trunk/drivers/block/drbd/drbd_actlog.c | 42 +- trunk/drivers/block/drbd/drbd_int.h | 52 +- trunk/drivers/block/drbd/drbd_main.c | 148 +- trunk/drivers/block/drbd/drbd_nl.c | 25 +- trunk/drivers/block/drbd/drbd_proc.c | 1 - trunk/drivers/block/drbd/drbd_receiver.c | 217 +- trunk/drivers/block/drbd/drbd_req.c | 38 +- trunk/drivers/block/drbd/drbd_worker.c | 23 +- trunk/drivers/block/floppy.c | 4 +- trunk/drivers/block/loop.c | 6 - trunk/drivers/block/xen-blkfront.c | 2 - trunk/drivers/char/Makefile | 44 +- trunk/drivers/char/agp/intel-gtt.c | 6 +- trunk/drivers/char/agp/parisc-agp.c | 1 + trunk/drivers/clocksource/sh_cmt.c | 10 +- trunk/drivers/clocksource/sh_mtu2.c | 10 +- trunk/drivers/clocksource/sh_tmu.c | 10 +- trunk/drivers/dma/Kconfig | 4 +- trunk/drivers/firewire/ohci.c | 88 +- trunk/drivers/gpu/drm/drm_crtc_helper.c | 2 +- trunk/drivers/gpu/drm/drm_edid.c | 26 +- trunk/drivers/gpu/drm/i915/i915_drv.c | 2 +- trunk/drivers/gpu/drm/i915/i915_drv.h | 1 + trunk/drivers/gpu/drm/i915/i915_gem.c | 118 +- trunk/drivers/gpu/drm/i915/i915_gem_evict.c | 8 +- trunk/drivers/gpu/drm/i915/i915_suspend.c | 4 +- trunk/drivers/gpu/drm/i915/intel_display.c | 70 +- trunk/drivers/gpu/drm/i915/intel_dp.c | 2 +- trunk/drivers/gpu/drm/i915/intel_drv.h | 1 + trunk/drivers/gpu/drm/i915/intel_lvds.c | 16 +- trunk/drivers/gpu/drm/i915/intel_opregion.c | 2 +- trunk/drivers/gpu/drm/i915/intel_overlay.c | 4 +- trunk/drivers/gpu/drm/i915/intel_ringbuffer.c | 129 +- trunk/drivers/gpu/drm/i915/intel_ringbuffer.h | 3 + trunk/drivers/gpu/drm/radeon/evergreen.c | 8 +- trunk/drivers/gpu/drm/radeon/r100.c | 4 +- trunk/drivers/gpu/drm/radeon/r300.c | 2 +- trunk/drivers/gpu/drm/radeon/r600.c | 12 +- .../drivers/gpu/drm/radeon/radeon_atombios.c | 27 +- .../gpu/drm/radeon/radeon_connectors.c | 16 +- trunk/drivers/gpu/drm/radeon/radeon_display.c | 18 +- .../drivers/gpu/drm/radeon/radeon_encoders.c | 26 + trunk/drivers/gpu/drm/radeon/radeon_fence.c | 3 +- trunk/drivers/gpu/drm/radeon/radeon_i2c.c | 41 +- trunk/drivers/gpu/drm/radeon/radeon_mode.h | 17 +- trunk/drivers/gpu/drm/radeon/radeon_object.c | 4 +- trunk/drivers/gpu/drm/radeon/radeon_ttm.c | 3 +- trunk/drivers/gpu/drm/radeon/rs400.c | 2 +- trunk/drivers/gpu/drm/radeon/rs600.c | 4 +- trunk/drivers/gpu/drm/ttm/ttm_bo.c | 86 +- trunk/drivers/gpu/drm/ttm/ttm_bo_manager.c | 81 +- trunk/drivers/gpu/drm/ttm/ttm_tt.c | 4 +- trunk/drivers/gpu/drm/via/via_dmablit.c | 4 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 1 + trunk/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 5 + trunk/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 2 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c | 2 +- trunk/drivers/gpu/stub/Kconfig | 3 + trunk/drivers/hwmon/ad7414.c | 6 +- trunk/drivers/hwmon/adt7470.c | 4 +- trunk/drivers/hwmon/gpio-fan.c | 8 +- trunk/drivers/hwmon/ltc4261.c | 5 +- trunk/drivers/i2c/busses/Kconfig | 11 + trunk/drivers/i2c/busses/Makefile | 1 + trunk/drivers/i2c/busses/i2c-i801.c | 333 +- trunk/drivers/i2c/busses/i2c-intel-mid.c | 1135 +++++ trunk/drivers/i2c/busses/i2c-nomadik.c | 36 +- trunk/drivers/i2c/busses/i2c-s3c2410.c | 10 +- trunk/drivers/ide/hpt366.c | 14 +- trunk/drivers/ide/ide-dma.c | 11 +- trunk/drivers/infiniband/hw/ipath/ipath_fs.c | 14 +- trunk/drivers/infiniband/hw/qib/qib_fs.c | 14 +- trunk/drivers/input/input.c | 87 +- trunk/drivers/input/keyboard/adp5588-keys.c | 74 +- trunk/drivers/input/keyboard/atkbd.c | 12 +- trunk/drivers/input/misc/pcf8574_keypad.c | 23 +- trunk/drivers/input/mouse/appletouch.c | 2 +- trunk/drivers/input/serio/i8042-x86ia64io.h | 11 + trunk/drivers/input/tablet/acecad.c | 3 +- trunk/drivers/input/touchscreen/ad7879.c | 32 +- trunk/drivers/input/touchscreen/bu21013_ts.c | 2 +- trunk/drivers/isdn/capi/capifs.c | 8 +- trunk/drivers/isdn/hisax/isar.c | 4 +- trunk/drivers/isdn/mISDN/socket.c | 2 + trunk/drivers/leds/Kconfig | 20 +- trunk/drivers/leds/Makefile | 2 + trunk/drivers/leds/led-class.c | 105 +- trunk/drivers/leds/led-triggers.c | 2 +- trunk/drivers/leds/leds-gpio.c | 2 +- trunk/drivers/leds/leds-lp5521.c | 821 ++++ trunk/drivers/leds/leds-lp5523.c | 1065 +++++ trunk/drivers/leds/leds-net5501.c | 2 + trunk/drivers/leds/ledtrig-timer.c | 124 +- trunk/drivers/macintosh/adb-iop.c | 4 +- trunk/drivers/md/bitmap.c | 30 +- trunk/drivers/md/bitmap.h | 4 +- trunk/drivers/md/faulty.c | 2 +- trunk/drivers/md/md.c | 182 +- trunk/drivers/md/md.h | 8 +- trunk/drivers/md/raid1.c | 224 +- trunk/drivers/md/raid1.h | 2 - trunk/drivers/md/raid10.c | 42 +- trunk/drivers/md/raid5.c | 6 +- trunk/drivers/media/IR/ir-keytable.c | 8 +- trunk/drivers/misc/apds9802als.c | 2 +- trunk/drivers/misc/bh1770glc.c | 8 +- trunk/drivers/misc/ibmasm/ibmasmfs.c | 9 +- trunk/drivers/misc/isl29020.c | 4 +- trunk/drivers/misc/kgdbts.c | 16 +- trunk/drivers/mtd/chips/cfi_cmdset_0001.c | 4 +- trunk/drivers/mtd/chips/cfi_cmdset_0002.c | 83 +- trunk/drivers/mtd/chips/cfi_probe.c | 2 + trunk/drivers/mtd/chips/cfi_util.c | 7 + trunk/drivers/mtd/devices/block2mtd.c | 1 - trunk/drivers/mtd/devices/m25p80.c | 6 +- trunk/drivers/mtd/devices/phram.c | 2 +- trunk/drivers/mtd/maps/Kconfig | 9 + trunk/drivers/mtd/maps/Makefile | 1 + trunk/drivers/mtd/maps/bcm963xx-flash.c | 271 ++ trunk/drivers/mtd/maps/gpio-addr-flash.c | 10 +- trunk/drivers/mtd/maps/pcmciamtd.c | 4 - trunk/drivers/mtd/maps/physmap_of.c | 20 +- trunk/drivers/mtd/mtd_blkdevs.c | 68 +- trunk/drivers/mtd/mtdchar.c | 119 +- trunk/drivers/mtd/mtdpart.c | 154 +- trunk/drivers/mtd/mtdsuper.c | 54 +- trunk/drivers/mtd/nand/Kconfig | 15 +- trunk/drivers/mtd/nand/Makefile | 1 + trunk/drivers/mtd/nand/bf5xx_nand.c | 14 +- trunk/drivers/mtd/nand/davinci_nand.c | 11 +- trunk/drivers/mtd/nand/denali.c | 1 + trunk/drivers/mtd/nand/fsl_elbc_nand.c | 484 +- trunk/drivers/mtd/nand/fsl_upm.c | 10 +- trunk/drivers/mtd/nand/fsmc_nand.c | 866 ++++ trunk/drivers/mtd/nand/mpc5121_nfc.c | 11 +- trunk/drivers/mtd/nand/nand_base.c | 338 +- trunk/drivers/mtd/nand/nand_bbt.c | 250 +- trunk/drivers/mtd/nand/nand_ids.c | 31 + trunk/drivers/mtd/nand/nandsim.c | 19 +- trunk/drivers/mtd/nand/ndfc.c | 8 +- trunk/drivers/mtd/nand/omap2.c | 4 +- trunk/drivers/mtd/nand/pxa3xx_nand.c | 348 +- trunk/drivers/mtd/nand/r852.c | 30 +- trunk/drivers/mtd/nand/r852.h | 2 - trunk/drivers/mtd/ofpart.c | 2 +- trunk/drivers/mtd/onenand/Kconfig | 7 +- trunk/drivers/mtd/onenand/onenand_base.c | 7 +- trunk/drivers/mtd/onenand/samsung.c | 133 +- trunk/drivers/mtd/sm_ftl.h | 8 +- trunk/drivers/net/Kconfig | 1 + trunk/drivers/net/atarilance.c | 2 +- trunk/drivers/net/atlx/atl1.c | 1 - trunk/drivers/net/bnx2x/bnx2x.h | 4 +- trunk/drivers/net/bnx2x/bnx2x_hsi.h | 9 +- trunk/drivers/net/bnx2x/bnx2x_link.c | 57 +- trunk/drivers/net/caif/caif_spi.c | 57 +- trunk/drivers/net/caif/caif_spi_slave.c | 13 +- trunk/drivers/net/can/at91_can.c | 2 +- trunk/drivers/net/can/pch_can.c | 10 +- trunk/drivers/net/cxgb3/cxgb3_main.c | 1 - trunk/drivers/net/cxgb3/sge.c | 4 +- trunk/drivers/net/cxgb4/cxgb4_main.c | 1 - trunk/drivers/net/cxgb4vf/cxgb4vf_main.c | 1 - trunk/drivers/net/e1000e/82571.c | 38 + trunk/drivers/net/e1000e/e1000.h | 3 + trunk/drivers/net/e1000e/netdev.c | 29 +- trunk/drivers/net/ibm_newemac/core.c | 1 - trunk/drivers/net/igb/igb_main.c | 1 - trunk/drivers/net/igbvf/netdev.c | 8 +- trunk/drivers/net/ixgb/ixgb_main.c | 1 + trunk/drivers/net/ixgbe/ixgbe_dcb.c | 39 +- trunk/drivers/net/ixgbe/ixgbe_dcb.h | 5 +- trunk/drivers/net/ixgbe/ixgbe_dcb_82599.c | 5 + trunk/drivers/net/ixgbe/ixgbe_dcb_82599.h | 3 + trunk/drivers/net/ixgbe/ixgbe_main.c | 12 +- trunk/drivers/net/jme.c | 4 - trunk/drivers/net/lib8390.c | 1 - trunk/drivers/net/netxen/netxen_nic_ctx.c | 15 - trunk/drivers/net/netxen/netxen_nic_main.c | 11 +- trunk/drivers/net/pcmcia/pcnet_cs.c | 1 + trunk/drivers/net/phy/marvell.c | 18 +- trunk/drivers/net/qlcnic/qlcnic_main.c | 1 - trunk/drivers/net/smsc911x.h | 2 +- trunk/drivers/net/stmmac/stmmac_main.c | 40 +- trunk/drivers/net/tulip/de2104x.c | 1 - trunk/drivers/net/usb/usbnet.c | 11 + trunk/drivers/net/vmxnet3/vmxnet3_drv.c | 2 +- trunk/drivers/net/vmxnet3/vmxnet3_int.h | 8 +- trunk/drivers/net/wireless/ath/ath5k/attach.c | 17 +- trunk/drivers/net/wireless/ath/ath9k/ath9k.h | 2 +- .../drivers/net/wireless/ath/ath9k/hif_usb.c | 10 +- trunk/drivers/net/wireless/ath/ath9k/main.c | 31 +- trunk/drivers/net/wireless/ath/ath9k/rc.c | 2 +- trunk/drivers/net/wireless/ath/ath9k/recv.c | 15 +- trunk/drivers/net/wireless/ath/ath9k/xmit.c | 18 +- trunk/drivers/net/wireless/b43/sdio.c | 2 + .../net/wireless/ipw2x00/libipw_module.c | 9 +- trunk/drivers/net/wireless/libertas/if_sdio.c | 32 +- trunk/drivers/net/wireless/rt2x00/Kconfig | 3 - trunk/drivers/oprofile/buffer_sync.c | 2 +- trunk/drivers/oprofile/cpu_buffer.c | 10 +- trunk/drivers/oprofile/cpu_buffer.h | 1 + trunk/drivers/oprofile/oprofilefs.c | 8 +- trunk/drivers/oprofile/timer_int.c | 13 + trunk/drivers/pci/xen-pcifront.c | 6 +- trunk/drivers/rapidio/rio.c | 4 +- trunk/drivers/rtc/rtc-ds1302.c | 2 +- trunk/drivers/s390/block/dasd_eckd.c | 69 + trunk/drivers/s390/block/dasd_eckd.h | 1 + trunk/drivers/s390/char/tape_core.c | 9 +- trunk/drivers/s390/char/tape_std.c | 4 +- trunk/drivers/s390/scsi/zfcp_fc.h | 2 +- trunk/drivers/s390/scsi/zfcp_fsf.c | 3 - trunk/drivers/s390/scsi/zfcp_unit.c | 4 +- trunk/drivers/scsi/bfa/bfa.h | 48 +- trunk/drivers/scsi/bfa/bfa_cb_ioim.h | 22 +- trunk/drivers/scsi/bfa/bfa_core.c | 178 +- trunk/drivers/scsi/bfa/bfa_cs.h | 24 +- trunk/drivers/scsi/bfa/bfa_defs.h | 54 +- trunk/drivers/scsi/bfa/bfa_defs_fcs.h | 48 +- trunk/drivers/scsi/bfa/bfa_defs_svc.h | 82 +- trunk/drivers/scsi/bfa/bfa_drv.c | 6 +- trunk/drivers/scsi/bfa/bfa_fc.h | 30 +- trunk/drivers/scsi/bfa/bfa_fcbuild.c | 196 +- trunk/drivers/scsi/bfa/bfa_fcpim.c | 351 +- trunk/drivers/scsi/bfa/bfa_fcpim.h | 18 +- trunk/drivers/scsi/bfa/bfa_fcs.c | 335 +- trunk/drivers/scsi/bfa/bfa_fcs.h | 43 +- trunk/drivers/scsi/bfa/bfa_fcs_fcpim.c | 34 +- trunk/drivers/scsi/bfa/bfa_fcs_lport.c | 468 +- trunk/drivers/scsi/bfa/bfa_fcs_rport.c | 198 +- trunk/drivers/scsi/bfa/bfa_hw_cb.c | 16 +- trunk/drivers/scsi/bfa/bfa_hw_ct.c | 22 +- trunk/drivers/scsi/bfa/bfa_ioc.c | 397 +- trunk/drivers/scsi/bfa/bfa_ioc.h | 108 +- trunk/drivers/scsi/bfa/bfa_ioc_cb.c | 90 +- trunk/drivers/scsi/bfa/bfa_ioc_ct.c | 167 +- trunk/drivers/scsi/bfa/bfa_modules.h | 6 +- trunk/drivers/scsi/bfa/bfa_os_inc.h | 82 +- trunk/drivers/scsi/bfa/bfa_port.c | 40 +- trunk/drivers/scsi/bfa/bfa_svc.c | 504 ++- trunk/drivers/scsi/bfa/bfa_svc.h | 41 +- trunk/drivers/scsi/bfa/bfad.c | 73 +- trunk/drivers/scsi/bfa/bfad_attr.c | 38 +- trunk/drivers/scsi/bfa/bfad_debugfs.c | 4 +- trunk/drivers/scsi/bfa/bfad_drv.h | 5 +- trunk/drivers/scsi/bfa/bfad_im.c | 71 +- trunk/drivers/scsi/bfa/bfi.h | 58 +- trunk/drivers/scsi/bfa/bfi_ms.h | 50 +- trunk/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c | 3 + .../scsi/device_handler/scsi_dh_rdac.c | 2 + trunk/drivers/scsi/fcoe/fcoe.c | 18 +- trunk/drivers/scsi/fcoe/libfcoe.c | 2 +- trunk/drivers/scsi/gdth.c | 8 + trunk/drivers/scsi/ipr.c | 2 + trunk/drivers/scsi/ipr.h | 1 + trunk/drivers/scsi/libfc/fc_disc.c | 5 +- trunk/drivers/scsi/libfc/fc_fcp.c | 24 +- trunk/drivers/scsi/libfc/fc_lport.c | 12 +- trunk/drivers/scsi/libfc/fc_rport.c | 4 +- trunk/drivers/scsi/lpfc/lpfc.h | 12 +- trunk/drivers/scsi/lpfc/lpfc_attr.c | 7 +- trunk/drivers/scsi/lpfc/lpfc_bsg.c | 4 +- trunk/drivers/scsi/lpfc/lpfc_crtn.h | 4 + trunk/drivers/scsi/lpfc/lpfc_els.c | 439 +- trunk/drivers/scsi/lpfc/lpfc_hbadisc.c | 437 +- trunk/drivers/scsi/lpfc/lpfc_hw.h | 41 + trunk/drivers/scsi/lpfc/lpfc_hw4.h | 167 +- trunk/drivers/scsi/lpfc/lpfc_init.c | 102 +- trunk/drivers/scsi/lpfc/lpfc_mbox.c | 28 + trunk/drivers/scsi/lpfc/lpfc_scsi.c | 9 +- trunk/drivers/scsi/lpfc/lpfc_sli.c | 458 +- trunk/drivers/scsi/lpfc/lpfc_sli4.h | 9 +- trunk/drivers/scsi/lpfc/lpfc_version.h | 2 +- trunk/drivers/scsi/megaraid/megaraid_sas.c | 126 +- trunk/drivers/scsi/megaraid/megaraid_sas.h | 7 +- trunk/drivers/scsi/osd/osd_initiator.c | 244 +- trunk/drivers/scsi/pmcraid.c | 129 +- trunk/drivers/scsi/pmcraid.h | 23 +- trunk/drivers/scsi/qla2xxx/qla_attr.c | 4 + trunk/drivers/scsi/qla2xxx/qla_bsg.c | 125 + trunk/drivers/scsi/qla2xxx/qla_bsg.h | 2 + trunk/drivers/scsi/qla2xxx/qla_def.h | 2 - trunk/drivers/scsi/qla2xxx/qla_gbl.h | 1 + trunk/drivers/scsi/qla2xxx/qla_init.c | 28 +- trunk/drivers/scsi/qla2xxx/qla_iocb.c | 4 +- trunk/drivers/scsi/qla2xxx/qla_isr.c | 21 +- trunk/drivers/scsi/qla2xxx/qla_os.c | 207 +- trunk/drivers/scsi/qla4xxx/ql4_dbg.c | 101 + trunk/drivers/scsi/qla4xxx/ql4_def.h | 20 +- trunk/drivers/scsi/qla4xxx/ql4_fw.h | 3 + trunk/drivers/scsi/qla4xxx/ql4_glbl.h | 1 + trunk/drivers/scsi/qla4xxx/ql4_init.c | 10 +- trunk/drivers/scsi/qla4xxx/ql4_iocb.c | 10 +- trunk/drivers/scsi/qla4xxx/ql4_isr.c | 16 +- trunk/drivers/scsi/qla4xxx/ql4_mbx.c | 11 +- trunk/drivers/scsi/qla4xxx/ql4_nx.c | 89 +- trunk/drivers/scsi/qla4xxx/ql4_nx.h | 5 +- trunk/drivers/scsi/qla4xxx/ql4_os.c | 109 +- trunk/drivers/scsi/qla4xxx/ql4_version.h | 2 +- trunk/drivers/scsi/scsi_error.c | 18 +- trunk/drivers/scsi/scsi_lib.c | 3 +- trunk/drivers/scsi/scsi_sysfs.c | 3 +- trunk/drivers/scsi/sd.c | 23 + trunk/drivers/scsi/sr_ioctl.c | 9 + trunk/drivers/serial/crisv10.c | 23 +- trunk/drivers/serial/kgdboc.c | 59 + trunk/drivers/sh/clk/core.c | 96 +- trunk/drivers/sh/intc/core.c | 2 +- trunk/drivers/sh/intc/dynamic.c | 2 +- trunk/drivers/spi/spi.c | 98 +- trunk/drivers/spi/spi_bfin5xx.c | 22 +- trunk/drivers/staging/Kconfig | 2 - trunk/drivers/staging/Makefile | 1 - .../hif/sdio/linux_sdio/src/hif_scatter.c | 4 +- .../staging/ath6kl/os/linux/ar6000_raw_if.c | 4 +- .../os/linux/include/athendpack_linux.h | 0 .../os/linux/include/athstartpack_linux.h | 0 trunk/drivers/staging/autofs/init.c | 8 +- .../staging/brcm80211/brcmfmac/dhd_linux.c | 4 +- .../staging/brcm80211/sys/wl_mac80211.c | 2 +- trunk/drivers/staging/comedi/drivers/dt9812.c | 2 +- trunk/drivers/staging/comedi/drivers/usbdux.c | 4 +- .../staging/comedi/drivers/usbduxfast.c | 4 +- trunk/drivers/staging/dream/Kconfig | 13 - trunk/drivers/staging/dream/Makefile | 5 - trunk/drivers/staging/dream/TODO | 13 - trunk/drivers/staging/dream/camera/Kconfig | 46 - trunk/drivers/staging/dream/camera/Makefile | 8 - .../drivers/staging/dream/camera/msm_camera.c | 2181 --------- trunk/drivers/staging/dream/camera/msm_io7x.c | 291 -- trunk/drivers/staging/dream/camera/msm_io8x.c | 320 -- trunk/drivers/staging/dream/camera/msm_v4l2.c | 798 ---- .../drivers/staging/dream/camera/msm_vfe7x.c | 702 --- .../drivers/staging/dream/camera/msm_vfe7x.h | 255 -- .../drivers/staging/dream/camera/msm_vfe8x.c | 736 --- .../drivers/staging/dream/camera/msm_vfe8x.h | 895 ---- .../staging/dream/camera/msm_vfe8x_proc.c | 4003 ----------------- .../staging/dream/camera/msm_vfe8x_proc.h | 1549 ------- trunk/drivers/staging/dream/camera/mt9d112.c | 762 ---- trunk/drivers/staging/dream/camera/mt9d112.h | 36 - .../staging/dream/camera/mt9d112_reg.c | 307 -- trunk/drivers/staging/dream/camera/mt9p012.h | 51 - .../staging/dream/camera/mt9p012_fox.c | 1306 ------ .../staging/dream/camera/mt9p012_reg.c | 573 --- trunk/drivers/staging/dream/camera/mt9t013.c | 1497 ------ trunk/drivers/staging/dream/camera/mt9t013.h | 48 - .../staging/dream/camera/mt9t013_reg.c | 266 -- trunk/drivers/staging/dream/camera/s5k3e2fx.c | 1307 ------ trunk/drivers/staging/dream/camera/s5k3e2fx.h | 9 - trunk/drivers/staging/dream/generic_gpio.c | 274 -- trunk/drivers/staging/dream/gpio_axis.c | 181 - trunk/drivers/staging/dream/gpio_event.c | 224 - trunk/drivers/staging/dream/gpio_input.c | 337 -- trunk/drivers/staging/dream/gpio_matrix.c | 399 -- trunk/drivers/staging/dream/gpio_output.c | 84 - .../dream/include/linux/android_pmem.h | 80 - .../staging/dream/include/linux/gpio_event.h | 154 - .../staging/dream/include/linux/msm_adsp.h | 84 - .../staging/dream/include/linux/msm_audio.h | 115 - .../dream/include/linux/msm_rpcrouter.h | 47 - .../staging/dream/include/linux/wakelock.h | 91 - .../staging/dream/include/mach/camera.h | 279 -- .../staging/dream/include/mach/msm_adsp.h | 112 - .../dream/include/mach/msm_rpcrouter.h | 179 - .../staging/dream/include/mach/msm_smd.h | 107 - .../include/mach/qdsp5/qdsp5audplaycmdi.h | 94 - .../include/mach/qdsp5/qdsp5audplaymsg.h | 70 - .../dream/include/mach/qdsp5/qdsp5audppcmdi.h | 914 ---- .../dream/include/mach/qdsp5/qdsp5audppmsg.h | 318 -- .../include/mach/qdsp5/qdsp5audpreproccmdi.h | 256 -- .../include/mach/qdsp5/qdsp5audpreprocmsg.h | 85 - .../include/mach/qdsp5/qdsp5audreccmdi.h | 176 - .../dream/include/mach/qdsp5/qdsp5audrecmsg.h | 127 - .../dream/include/mach/qdsp5/qdsp5jpegcmdi.h | 376 -- .../dream/include/mach/qdsp5/qdsp5jpegmsg.h | 177 - .../dream/include/mach/qdsp5/qdsp5lpmcmdi.h | 82 - .../dream/include/mach/qdsp5/qdsp5lpmmsg.h | 80 - .../dream/include/mach/qdsp5/qdsp5vdeccmdi.h | 235 - .../dream/include/mach/qdsp5/qdsp5vdecmsg.h | 107 - .../dream/include/mach/qdsp5/qdsp5venccmdi.h | 212 - .../dream/include/mach/qdsp5/qdsp5vfecmdi.h | 910 ---- .../dream/include/mach/qdsp5/qdsp5vfemsg.h | 290 -- .../staging/dream/include/media/msm_camera.h | 388 -- trunk/drivers/staging/dream/pmem.c | 1333 ------ trunk/drivers/staging/dream/qdsp5/Makefile | 18 - trunk/drivers/staging/dream/qdsp5/adsp.c | 1159 ----- trunk/drivers/staging/dream/qdsp5/adsp.h | 369 -- trunk/drivers/staging/dream/qdsp5/adsp_6210.c | 283 -- trunk/drivers/staging/dream/qdsp5/adsp_6220.c | 284 -- trunk/drivers/staging/dream/qdsp5/adsp_6225.c | 328 -- .../drivers/staging/dream/qdsp5/adsp_driver.c | 643 --- trunk/drivers/staging/dream/qdsp5/adsp_info.c | 121 - .../dream/qdsp5/adsp_jpeg_patch_event.c | 31 - .../dream/qdsp5/adsp_jpeg_verify_cmd.c | 182 - .../staging/dream/qdsp5/adsp_lpm_verify_cmd.c | 65 - .../dream/qdsp5/adsp_vfe_patch_event.c | 54 - .../staging/dream/qdsp5/adsp_vfe_verify_cmd.c | 239 - .../dream/qdsp5/adsp_video_verify_cmd.c | 163 - .../dream/qdsp5/adsp_videoenc_verify_cmd.c | 235 - trunk/drivers/staging/dream/qdsp5/audio_aac.c | 1054 ----- .../drivers/staging/dream/qdsp5/audio_amrnb.c | 875 ---- .../drivers/staging/dream/qdsp5/audio_evrc.c | 847 ---- trunk/drivers/staging/dream/qdsp5/audio_in.c | 970 ---- trunk/drivers/staging/dream/qdsp5/audio_mp3.c | 972 ---- trunk/drivers/staging/dream/qdsp5/audio_out.c | 841 ---- .../drivers/staging/dream/qdsp5/audio_qcelp.c | 858 ---- trunk/drivers/staging/dream/qdsp5/audmgr.c | 314 -- trunk/drivers/staging/dream/qdsp5/audmgr.h | 215 - .../drivers/staging/dream/qdsp5/audmgr_new.h | 213 - trunk/drivers/staging/dream/qdsp5/audpp.c | 429 -- trunk/drivers/staging/dream/qdsp5/evlog.h | 134 - trunk/drivers/staging/dream/qdsp5/snd.c | 280 -- .../drivers/staging/dream/synaptics_i2c_rmi.c | 649 --- .../drivers/staging/dream/synaptics_i2c_rmi.h | 53 - trunk/drivers/staging/msm/msm_fb.c | 4 +- trunk/drivers/staging/pohmelfs/inode.c | 9 +- trunk/drivers/staging/rtl8712/osdep_service.h | 2 +- trunk/drivers/staging/smbfs/inode.c | 10 +- .../staging/solo6x10/solo6010-v4l2-enc.c | 2 +- .../drivers/staging/solo6x10/solo6010-v4l2.c | 2 +- trunk/drivers/staging/tm6000/tm6000-i2c.c | 1 - .../astoria/block/cyasblkdev_block.c | 2 +- .../astoria/block/cyasblkdev_queue.c | 2 +- trunk/drivers/tty/Makefile | 11 + trunk/drivers/{char => tty}/n_gsm.c | 0 trunk/drivers/{char => tty}/n_hdlc.c | 0 trunk/drivers/{char => tty}/n_r3964.c | 0 trunk/drivers/{char => tty}/n_tty.c | 0 trunk/drivers/{char => tty}/pty.c | 0 trunk/drivers/{char => tty}/sysrq.c | 0 trunk/drivers/{char => tty}/tty_audit.c | 38 +- trunk/drivers/{char => tty}/tty_buffer.c | 0 trunk/drivers/{char => tty}/tty_io.c | 0 trunk/drivers/{char => tty}/tty_ioctl.c | 0 trunk/drivers/{char => tty}/tty_ldisc.c | 0 trunk/drivers/{char => tty}/tty_mutex.c | 0 trunk/drivers/{char => tty}/tty_port.c | 0 trunk/drivers/{char => tty/vt}/.gitignore | 0 trunk/drivers/tty/vt/Makefile | 34 + trunk/drivers/{char => tty/vt}/consolemap.c | 0 trunk/drivers/{char => tty/vt}/cp437.uni | 0 .../{char => tty/vt}/defkeymap.c_shipped | 0 trunk/drivers/{char => tty/vt}/defkeymap.map | 0 trunk/drivers/{char => tty/vt}/keyboard.c | 0 trunk/drivers/{char => tty/vt}/selection.c | 0 trunk/drivers/{char => tty/vt}/vc_screen.c | 0 trunk/drivers/{char => tty/vt}/vt.c | 0 trunk/drivers/{char => tty/vt}/vt_ioctl.c | 0 trunk/drivers/usb/core/inode.c | 8 +- trunk/drivers/usb/gadget/f_fs.c | 14 +- trunk/drivers/usb/gadget/inode.c | 10 +- trunk/drivers/usb/gadget/u_ether.c | 1 - trunk/drivers/usb/host/Kconfig | 30 +- trunk/drivers/usb/host/Makefile | 1 + trunk/drivers/usb/host/ehci-hcd.c | 5 + trunk/drivers/usb/host/ehci-octeon.c | 207 + trunk/drivers/usb/host/octeon2-common.c | 185 + trunk/drivers/usb/host/ohci-hcd.c | 5 + trunk/drivers/usb/host/ohci-octeon.c | 214 + trunk/drivers/usb/storage/uas.c | 5 +- trunk/drivers/video/backlight/adp8860_bl.c | 8 +- trunk/drivers/video/backlight/l4f00242t03.c | 2 +- trunk/drivers/video/backlight/lms283gf05.c | 2 +- trunk/drivers/video/backlight/mbp_nvidia_bl.c | 18 + trunk/drivers/video/backlight/pwm_bl.c | 7 +- trunk/drivers/video/backlight/s6e63m0.c | 7 +- trunk/drivers/video/msm/mddi.c | 5 +- trunk/drivers/video/msm/mdp.c | 3 +- trunk/drivers/video/sh_mipi_dsi.c | 32 +- trunk/drivers/video/sh_mobile_hdmi.c | 629 ++- trunk/drivers/video/sh_mobile_lcdcfb.c | 348 +- trunk/drivers/video/sh_mobile_lcdcfb.h | 41 + trunk/drivers/watchdog/octeon-wdt-main.c | 4 +- trunk/drivers/xen/xenfs/super.c | 8 +- trunk/fs/9p/vfs_super.c | 22 +- trunk/fs/adfs/super.c | 9 +- trunk/fs/affs/super.c | 9 +- trunk/fs/afs/super.c | 19 +- trunk/fs/anon_inodes.c | 10 +- trunk/fs/autofs4/init.c | 8 +- trunk/fs/befs/linuxvfs.c | 11 +- trunk/fs/bfs/inode.c | 8 +- trunk/fs/binfmt_misc.c | 8 +- trunk/fs/bio.c | 23 +- trunk/fs/block_dev.c | 8 +- trunk/fs/btrfs/compression.c | 2 - trunk/fs/btrfs/ctree.c | 57 +- trunk/fs/btrfs/ctree.h | 100 +- trunk/fs/btrfs/dir-item.c | 2 +- trunk/fs/btrfs/disk-io.c | 32 +- trunk/fs/btrfs/extent-tree.c | 694 ++- trunk/fs/btrfs/extent_io.c | 168 +- trunk/fs/btrfs/extent_io.h | 4 +- trunk/fs/btrfs/extent_map.c | 4 +- trunk/fs/btrfs/free-space-cache.c | 751 ++++ trunk/fs/btrfs/free-space-cache.h | 18 + trunk/fs/btrfs/inode.c | 202 +- trunk/fs/btrfs/ioctl.c | 398 +- trunk/fs/btrfs/ioctl.h | 13 +- trunk/fs/btrfs/ordered-data.c | 2 - trunk/fs/btrfs/relocation.c | 109 +- trunk/fs/btrfs/root-tree.c | 2 - trunk/fs/btrfs/super.c | 57 +- trunk/fs/btrfs/transaction.c | 234 +- trunk/fs/btrfs/transaction.h | 8 + trunk/fs/btrfs/tree-defrag.c | 2 - trunk/fs/btrfs/tree-log.c | 17 +- trunk/fs/btrfs/volumes.c | 7 +- trunk/fs/btrfs/xattr.c | 2 - trunk/fs/btrfs/zlib.c | 5 - trunk/fs/ceph/super.c | 50 +- trunk/fs/cifs/Kconfig | 3 + trunk/fs/cifs/TODO | 2 +- trunk/fs/cifs/cifs_fs_sb.h | 6 +- trunk/fs/cifs/cifsencrypt.c | 427 +- trunk/fs/cifs/cifsfs.c | 21 +- trunk/fs/cifs/cifsfs.h | 2 +- trunk/fs/cifs/cifsglob.h | 58 +- trunk/fs/cifs/cifspdu.h | 13 +- trunk/fs/cifs/cifsproto.h | 15 +- trunk/fs/cifs/cifssmb.c | 4 +- trunk/fs/cifs/connect.c | 246 +- trunk/fs/cifs/file.c | 129 +- trunk/fs/cifs/inode.c | 16 +- trunk/fs/cifs/ioctl.c | 16 +- trunk/fs/cifs/misc.c | 27 +- trunk/fs/cifs/sess.c | 166 +- trunk/fs/cifs/transport.c | 6 +- trunk/fs/coda/inode.c | 8 +- trunk/fs/compat.c | 13 +- trunk/fs/configfs/mount.c | 8 +- trunk/fs/cramfs/inode.c | 9 +- trunk/fs/debugfs/inode.c | 8 +- trunk/fs/devpts/inode.c | 32 +- trunk/fs/ecryptfs/ecryptfs_kernel.h | 1 + trunk/fs/ecryptfs/inode.c | 11 +- trunk/fs/ecryptfs/keystore.c | 45 +- trunk/fs/ecryptfs/main.c | 20 +- trunk/fs/ecryptfs/super.c | 2 + trunk/fs/efs/super.c | 8 +- trunk/fs/exofs/super.c | 10 +- trunk/fs/ext2/super.c | 8 +- trunk/fs/ext3/super.c | 8 +- trunk/fs/ext4/ext4.h | 4 +- trunk/fs/ext4/inode.c | 5 +- trunk/fs/ext4/mballoc.c | 2 - trunk/fs/ext4/page-io.c | 97 +- trunk/fs/ext4/super.c | 118 +- trunk/fs/fat/namei_msdos.c | 9 +- trunk/fs/fat/namei_vfat.c | 9 +- trunk/fs/freevxfs/vxfs_super.c | 9 +- trunk/fs/fs-writeback.c | 68 +- trunk/fs/fuse/control.c | 10 +- trunk/fs/fuse/inode.c | 17 +- trunk/fs/gfs2/ops_fstype.c | 51 +- trunk/fs/hfs/super.c | 9 +- trunk/fs/hfsplus/super.c | 10 +- trunk/fs/hostfs/hostfs_kern.c | 8 +- trunk/fs/hpfs/buffer.c | 4 +- trunk/fs/hpfs/hpfs_fn.h | 2 +- trunk/fs/hpfs/super.c | 11 +- trunk/fs/hppfs/hppfs.c | 8 +- trunk/fs/hugetlbfs/inode.c | 11 +- trunk/fs/internal.h | 2 +- trunk/fs/ioprio.c | 18 +- trunk/fs/isofs/inode.c | 9 +- trunk/fs/jbd2/journal.c | 8 +- trunk/fs/jffs2/build.c | 2 +- trunk/fs/jffs2/compr.c | 6 +- trunk/fs/jffs2/compr.h | 4 +- trunk/fs/jffs2/compr_lzo.c | 4 +- trunk/fs/jffs2/compr_rtime.c | 6 +- trunk/fs/jffs2/compr_rubin.c | 11 +- trunk/fs/jffs2/compr_zlib.c | 6 +- trunk/fs/jffs2/dir.c | 3 +- trunk/fs/jffs2/erase.c | 2 +- trunk/fs/jffs2/fs.c | 22 +- trunk/fs/jffs2/gc.c | 7 +- trunk/fs/jffs2/jffs2_fs_sb.h | 1 + trunk/fs/jffs2/nodelist.c | 8 +- trunk/fs/jffs2/nodelist.h | 3 +- trunk/fs/jffs2/scan.c | 12 +- trunk/fs/jffs2/super.c | 9 +- trunk/fs/jfs/super.c | 9 +- trunk/fs/libfs.c | 14 +- trunk/fs/locks.c | 90 +- trunk/fs/logfs/dev_bdev.c | 15 +- trunk/fs/logfs/dev_mtd.c | 18 +- trunk/fs/logfs/logfs.h | 22 +- trunk/fs/logfs/super.c | 77 +- trunk/fs/minix/inode.c | 9 +- trunk/fs/namei.c | 2 + trunk/fs/ncpfs/inode.c | 8 +- trunk/fs/nfs/file.c | 1 - trunk/fs/nfs/super.c | 96 +- trunk/fs/nfs/unlink.c | 4 +- trunk/fs/nfsd/nfs4state.c | 36 +- trunk/fs/nfsd/nfsctl.c | 8 +- trunk/fs/nilfs2/super.c | 16 +- trunk/fs/notify/Kconfig | 2 +- trunk/fs/notify/fanotify/fanotify.c | 27 +- trunk/fs/notify/fanotify/fanotify_user.c | 98 +- trunk/fs/notify/fsnotify.c | 35 +- trunk/fs/notify/inode_mark.c | 9 +- trunk/fs/notify/inotify/inotify_user.c | 2 +- trunk/fs/notify/vfsmount_mark.c | 6 +- trunk/fs/ntfs/super.c | 9 +- trunk/fs/ocfs2/dlmfs/dlmfs.c | 8 +- trunk/fs/ocfs2/super.c | 11 +- trunk/fs/omfs/inode.c | 9 +- trunk/fs/open.c | 6 +- trunk/fs/openpromfs/inode.c | 8 +- trunk/fs/pipe.c | 9 +- trunk/fs/proc/root.c | 16 +- trunk/fs/qnx4/inode.c | 9 +- trunk/fs/ramfs/inode.c | 17 +- trunk/fs/read_write.c | 62 +- trunk/fs/reiserfs/super.c | 9 +- trunk/fs/romfs/super.c | 17 +- trunk/fs/squashfs/super.c | 10 +- trunk/fs/squashfs/xattr.c | 9 +- trunk/fs/squashfs/xattr.h | 4 +- trunk/fs/squashfs/xattr_id.c | 1 + trunk/fs/super.c | 111 +- trunk/fs/sysfs/mount.c | 32 +- trunk/fs/sysv/super.c | 17 +- trunk/fs/ubifs/super.c | 13 +- trunk/fs/udf/super.c | 9 +- trunk/fs/ufs/super.c | 8 +- trunk/fs/xfs/linux-2.6/xfs_aops.c | 7 +- trunk/fs/xfs/linux-2.6/xfs_buf.c | 2 +- trunk/fs/xfs/linux-2.6/xfs_ioctl.c | 2 +- trunk/fs/xfs/linux-2.6/xfs_iops.c | 3 +- trunk/fs/xfs/linux-2.6/xfs_super.c | 15 +- trunk/fs/xfs/linux-2.6/xfs_sync.c | 1 + trunk/fs/xfs/xfs_filestream.c | 8 +- trunk/fs/xfs/xfs_mount.c | 1 + trunk/fs/xfs/xfs_quota.h | 20 +- trunk/include/asm-generic/audit_change_attr.h | 4 + trunk/include/asm-generic/stat.h | 14 +- trunk/include/drm/ttm/ttm_bo_api.h | 4 + trunk/include/drm/ttm/ttm_bo_driver.h | 79 +- trunk/include/linux/Kbuild | 1 + trunk/include/linux/atomic.h | 37 + trunk/include/linux/audit.h | 9 + trunk/include/linux/bio.h | 4 - trunk/include/linux/blk_types.h | 6 +- trunk/include/linux/blkdev.h | 3 +- trunk/include/linux/dccp.h | 4 +- trunk/include/linux/drbd.h | 2 +- trunk/include/linux/fanotify.h | 36 +- trunk/include/linux/fs.h | 24 +- trunk/include/linux/fsnotify.h | 38 +- trunk/include/linux/fsnotify_backend.h | 26 +- trunk/include/linux/hardirq.h | 8 +- trunk/include/linux/highmem.h | 1 + trunk/include/linux/i2c.h | 2 - trunk/include/linux/i2c/adp5588.h | 15 +- trunk/include/linux/input.h | 4 +- trunk/include/linux/iocontext.h | 1 - trunk/include/linux/irq.h | 5 + trunk/include/linux/irqnr.h | 2 +- trunk/include/linux/jump_label.h | 7 +- trunk/include/linux/kernel.h | 3 +- trunk/include/linux/kgdb.h | 13 +- trunk/include/linux/leds-lp5521.h | 47 + trunk/include/linux/leds-lp5523.h | 47 + trunk/include/linux/leds.h | 47 +- trunk/include/linux/marvell_phy.h | 2 +- trunk/include/linux/mmc/sh_mmcif.h | 18 +- trunk/include/linux/mtd/bbm.h | 4 +- trunk/include/linux/mtd/cfi.h | 1 + trunk/include/linux/mtd/fsmc.h | 181 + trunk/include/linux/mtd/inftl.h | 14 +- trunk/include/linux/mtd/mtd.h | 15 + trunk/include/linux/mtd/nand.h | 426 +- trunk/include/linux/mtd/partitions.h | 7 +- trunk/include/linux/mtd/super.h | 5 +- trunk/include/linux/pci_ids.h | 1 + trunk/include/linux/perf_event.h | 10 + trunk/include/linux/pwm_backlight.h | 1 + trunk/include/linux/radix-tree.h | 39 +- trunk/include/linux/ramfs.h | 4 +- trunk/include/linux/resource.h | 1 + trunk/include/linux/sched.h | 5 +- trunk/include/linux/semaphore.h | 6 - trunk/include/linux/sh_clk.h | 4 + trunk/include/linux/sh_timer.h | 1 - trunk/include/linux/socket.h | 2 +- trunk/include/linux/spi/spi.h | 3 + trunk/include/linux/sunrpc/svc_xprt.h | 18 +- trunk/include/linux/tty.h | 9 +- trunk/include/linux/writeback.h | 2 + trunk/include/mtd/mtd-abi.h | 16 +- trunk/include/mtd/mtd-user.h | 2 +- trunk/include/net/caif/caif_dev.h | 4 +- trunk/include/net/caif/caif_spi.h | 2 + trunk/include/net/caif/cfcnfg.h | 8 +- trunk/include/net/ip_fib.h | 2 + trunk/include/net/netlink.h | 2 +- trunk/include/scsi/libfc.h | 2 +- trunk/include/scsi/osd_initiator.h | 16 +- trunk/include/scsi/osd_protocol.h | 42 + trunk/include/scsi/osd_types.h | 5 + trunk/include/trace/events/ext4.h | 97 + trunk/include/video/sh_mobile_lcdc.h | 5 +- trunk/ipc/mqueue.c | 8 +- trunk/ipc/shm.c | 1 + trunk/kernel/audit.c | 67 +- trunk/kernel/audit.h | 5 +- trunk/kernel/audit_tree.c | 9 +- trunk/kernel/audit_watch.c | 4 +- trunk/kernel/auditfilter.c | 12 + trunk/kernel/auditsc.c | 16 + trunk/kernel/cgroup.c | 11 +- trunk/kernel/cpuset.c | 13 +- trunk/kernel/debug/debug_core.c | 16 +- trunk/kernel/debug/kdb/kdb_main.c | 48 +- trunk/kernel/exit.c | 8 + trunk/kernel/irq/manage.c | 4 + trunk/kernel/jump_label.c | 77 +- trunk/kernel/kprobes.c | 26 +- trunk/kernel/latencytop.c | 17 +- trunk/kernel/perf_event.c | 42 +- trunk/kernel/printk.c | 6 + trunk/kernel/range.c | 2 +- trunk/kernel/relay.c | 15 +- trunk/kernel/sched.c | 8 +- trunk/kernel/sched_fair.c | 25 +- trunk/kernel/sched_stats.h | 20 +- trunk/kernel/sysctl.c | 9 + trunk/kernel/trace/blktrace.c | 4 - trunk/kernel/watchdog.c | 2 +- trunk/lib/radix-tree.c | 83 +- trunk/mm/filemap.c | 33 +- trunk/mm/memcontrol.c | 16 +- trunk/mm/mmap.c | 2 + trunk/mm/mprotect.c | 2 +- trunk/mm/nommu.c | 2 + trunk/mm/shmem.c | 10 +- trunk/mm/vmscan.c | 2 +- trunk/mm/vmstat.c | 2 +- trunk/net/caif/caif_config_util.c | 13 +- trunk/net/caif/caif_dev.c | 2 + trunk/net/caif/caif_socket.c | 45 +- trunk/net/caif/cfcnfg.c | 17 +- trunk/net/caif/cfctrl.c | 3 +- trunk/net/caif/cfdbgl.c | 14 + trunk/net/caif/cfrfml.c | 2 +- trunk/net/compat.c | 10 +- trunk/net/core/dev.c | 2 +- trunk/net/core/iovec.c | 20 +- trunk/net/core/pktgen.c | 7 +- trunk/net/dccp/ccid.h | 34 +- trunk/net/dccp/ccids/ccid2.c | 23 +- trunk/net/dccp/ccids/ccid2.h | 5 + trunk/net/dccp/ccids/ccid3.c | 12 +- trunk/net/dccp/dccp.h | 5 +- trunk/net/dccp/output.c | 209 +- trunk/net/dccp/proto.c | 21 +- trunk/net/dccp/timer.c | 27 +- trunk/net/ipv4/fib_frontend.c | 2 +- trunk/net/ipv4/fib_hash.c | 18 + trunk/net/ipv4/fib_lookup.h | 5 +- trunk/net/ipv4/fib_trie.c | 5 + trunk/net/ipv4/inet_diag.c | 27 +- trunk/net/ipv4/ip_gre.c | 6 +- trunk/net/ipv4/netfilter/arp_tables.c | 1 + trunk/net/ipv4/netfilter/ip_tables.c | 1 + trunk/net/ipv4/netfilter/nf_nat_core.c | 40 +- trunk/net/ipv6/netfilter/ip6_tables.c | 1 + trunk/net/ipv6/proc.c | 4 + trunk/net/ipv6/route.c | 2 + trunk/net/l2tp/l2tp_debugfs.c | 2 +- trunk/net/mac80211/debugfs_key.c | 6 +- trunk/net/mac80211/main.c | 5 +- trunk/net/netfilter/nf_conntrack_core.c | 3 +- trunk/net/netfilter/nf_conntrack_proto.c | 6 + trunk/net/netfilter/xt_socket.c | 7 +- trunk/net/rds/loop.c | 4 + trunk/net/rds/message.c | 5 + trunk/net/rds/rdma.c | 126 +- trunk/net/rds/send.c | 4 + trunk/net/rds/tcp.c | 6 + trunk/net/sched/cls_cgroup.c | 2 - trunk/net/sched/em_text.c | 3 +- trunk/net/socket.c | 14 +- trunk/net/sunrpc/rpc_pipe.c | 18 +- trunk/net/x25/x25_facilities.c | 8 +- trunk/net/x25/x25_in.c | 2 + trunk/samples/Kconfig | 7 + trunk/samples/Makefile | 2 +- trunk/samples/kdb/Makefile | 1 + trunk/samples/kdb/kdb_hello.c | 60 + trunk/scripts/checkpatch.pl | 8 +- trunk/scripts/kconfig/streamline_config.pl | 43 +- trunk/scripts/kconfig/symbol.c | 2 +- trunk/scripts/recordmcount.c | 44 + trunk/scripts/recordmcount.h | 86 +- trunk/security/Kconfig | 12 + trunk/security/apparmor/lsm.c | 6 +- trunk/security/apparmor/policy.c | 2 +- trunk/security/commoncap.c | 2 + trunk/security/inode.c | 8 +- trunk/security/selinux/selinuxfs.c | 9 +- trunk/security/smack/smackfs.c | 12 +- trunk/sound/pci/asihpi/hpi6000.c | 2 + trunk/sound/pci/asihpi/hpi6205.c | 2 + trunk/sound/pci/asihpi/hpicmn.c | 12 +- trunk/sound/pci/cs46xx/dsp_spos.c | 33 +- trunk/sound/pci/hda/patch_cirrus.c | 1 + trunk/sound/pci/lx6464es/lx6464es.c | 4 +- trunk/sound/pci/lx6464es/lx6464es.h | 2 +- trunk/sound/pci/lx6464es/lx_core.c | 2 +- trunk/sound/soc/codecs/Kconfig | 3 +- trunk/sound/soc/codecs/tlv320dac33.c | 36 +- trunk/sound/soc/codecs/tpa6130a2.c | 6 +- trunk/sound/soc/codecs/wm8900.c | 6 - trunk/sound/soc/codecs/wm_hubs.c | 2 +- trunk/sound/soc/pxa/tosa.c | 2 +- trunk/sound/soc/soc-core.c | 5 +- trunk/sound/usb/mixer_quirks.c | 15 +- trunk/sound/usb/pcm.c | 4 +- trunk/tools/perf/Documentation/perf-trace.txt | 57 +- trunk/tools/perf/builtin-record.c | 10 +- trunk/tools/perf/builtin-top.c | 12 +- trunk/tools/perf/builtin-trace.c | 209 +- .../scripts/perl/bin/failed-syscalls-record | 2 +- .../perf/scripts/perl/bin/rw-by-file-record | 2 +- .../perf/scripts/perl/bin/rw-by-pid-record | 2 +- .../tools/perf/scripts/perl/bin/rwtop-record | 2 +- .../scripts/perl/bin/wakeup-latency-record | 2 +- .../scripts/perl/bin/workqueue-stats-record | 2 +- .../python/bin/failed-syscalls-by-pid-record | 2 +- .../python/bin/futex-contention-record | 2 +- .../scripts/python/bin/netdev-times-record | 2 +- .../scripts/python/bin/sched-migration-record | 2 +- .../perf/scripts/python/bin/sctop-record | 2 +- .../python/bin/syscall-counts-by-pid-record | 2 +- .../scripts/python/bin/syscall-counts-record | 2 +- trunk/tools/perf/util/ui/util.c | 5 +- trunk/usr/initramfs_data.S | 6 +- 1359 files changed, 39392 insertions(+), 56374 deletions(-) create mode 100644 trunk/Documentation/ABI/obsolete/proc-pid-oom_adj create mode 100644 trunk/Documentation/leds/leds-lp5521.txt create mode 100644 trunk/Documentation/leds/leds-lp5523.txt create mode 100644 trunk/arch/arm/mach-mx5/cpu_op-mx51.c create mode 100644 trunk/arch/arm/mach-mx5/cpu_op-mx51.h create mode 100644 trunk/arch/arm/mach-s3c2416/pm.c create mode 100644 trunk/arch/arm/mach-s3c64xx/mach-mini6410.c delete mode 100644 trunk/arch/arm/mach-s5pc100/irq-gpio.c create mode 100644 trunk/arch/arm/mach-s5pv210/cpufreq.c create mode 100644 trunk/arch/arm/mach-s5pv210/include/mach/pm-core.h create mode 100644 trunk/arch/arm/mach-s5pv210/include/mach/regs-sys.h create mode 100644 trunk/arch/arm/mach-s5pv210/mach-torbreck.c create mode 100644 trunk/arch/arm/mach-s5pv210/pm.c create mode 100644 trunk/arch/arm/mach-s5pv210/sleep.S create mode 100644 trunk/arch/arm/mach-s5pv310/gpiolib.c create mode 100644 trunk/arch/arm/mach-s5pv310/hotplug.c create mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/regs-gpio.h create mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/regs-srom.h create mode 100644 trunk/arch/arm/mach-s5pv310/irq-eint.c create mode 100644 trunk/arch/arm/mach-s5pv310/mach-smdkc210.c create mode 100644 trunk/arch/arm/mach-s5pv310/setup-i2c3.c create mode 100644 trunk/arch/arm/mach-s5pv310/setup-i2c4.c create mode 100644 trunk/arch/arm/mach-s5pv310/setup-i2c5.c create mode 100644 trunk/arch/arm/mach-s5pv310/setup-i2c6.c create mode 100644 trunk/arch/arm/mach-s5pv310/setup-i2c7.c create mode 100644 trunk/arch/arm/mach-s5pv310/setup-sdhci-gpio.c create mode 100644 trunk/arch/arm/mach-s5pv310/setup-sdhci.c create mode 100644 trunk/arch/arm/plat-mxc/cpufreq.c create mode 100644 trunk/arch/arm/plat-mxc/devices/platform-gpio_keys.c create mode 100644 trunk/arch/arm/plat-s5p/irq-gpioint.c create mode 100644 trunk/arch/arm/plat-s5p/irq-pm.c create mode 100644 trunk/arch/arm/plat-s5p/pm.c create mode 100644 trunk/arch/arm/plat-samsung/dev-i2c3.c create mode 100644 trunk/arch/arm/plat-samsung/dev-i2c4.c create mode 100644 trunk/arch/arm/plat-samsung/dev-i2c5.c create mode 100644 trunk/arch/arm/plat-samsung/dev-i2c6.c create mode 100644 trunk/arch/arm/plat-samsung/dev-i2c7.c create mode 100644 trunk/arch/arm/plat-samsung/include/plat/nand-core.h create mode 100644 trunk/arch/mips/include/asm/mach-bcm63xx/bcm963xx_tag.h create mode 100644 trunk/arch/mips/include/asm/octeon/cvmx-uctlx-defs.h create mode 100644 trunk/arch/mips/include/asm/perf_event.h create mode 100644 trunk/arch/mips/kernel/perf_event.c create mode 100644 trunk/arch/mips/kernel/perf_event_mipsxx.c create mode 100644 trunk/arch/sh/boards/board-edosk7705.c rename trunk/arch/sh/boards/{mach-snapgear/setup.c => board-secureedge5410.c} (70%) delete mode 100644 trunk/arch/sh/boards/mach-edosk7705/Makefile delete mode 100644 trunk/arch/sh/boards/mach-edosk7705/io.c delete mode 100644 trunk/arch/sh/boards/mach-edosk7705/setup.c delete mode 100644 trunk/arch/sh/boards/mach-se/7206/io.c delete mode 100644 trunk/arch/sh/boards/mach-se/770x/io.c delete mode 100644 trunk/arch/sh/boards/mach-se/7751/io.c delete mode 100644 trunk/arch/sh/boards/mach-snapgear/Makefile delete mode 100644 trunk/arch/sh/boards/mach-snapgear/io.c delete mode 100644 trunk/arch/sh/boards/mach-systemh/Makefile delete mode 100644 trunk/arch/sh/boards/mach-systemh/io.c delete mode 100644 trunk/arch/sh/boards/mach-systemh/irq.c delete mode 100644 trunk/arch/sh/boards/mach-systemh/setup.c rename trunk/arch/sh/configs/{snapgear_defconfig => secureedge5410_defconfig} (100%) delete mode 100644 trunk/arch/sh/configs/systemh_defconfig delete mode 100644 trunk/arch/sh/include/mach-common/mach/edosk7705.h rename trunk/arch/sh/include/mach-common/mach/{snapgear.h => secureedge5410.h} (79%) delete mode 100644 trunk/arch/sh/include/mach-common/mach/systemh7751.h create mode 100644 trunk/drivers/i2c/busses/i2c-intel-mid.c create mode 100644 trunk/drivers/leds/leds-lp5521.c create mode 100644 trunk/drivers/leds/leds-lp5523.c create mode 100644 trunk/drivers/mtd/maps/bcm963xx-flash.c create mode 100644 trunk/drivers/mtd/nand/fsmc_nand.c delete mode 100644 trunk/drivers/staging/ath6kl/os/linux/include/athendpack_linux.h delete mode 100644 trunk/drivers/staging/ath6kl/os/linux/include/athstartpack_linux.h delete mode 100644 trunk/drivers/staging/dream/Kconfig delete mode 100644 trunk/drivers/staging/dream/Makefile delete mode 100644 trunk/drivers/staging/dream/TODO delete mode 100644 trunk/drivers/staging/dream/camera/Kconfig delete mode 100644 trunk/drivers/staging/dream/camera/Makefile delete mode 100644 trunk/drivers/staging/dream/camera/msm_camera.c delete mode 100644 trunk/drivers/staging/dream/camera/msm_io7x.c delete mode 100644 trunk/drivers/staging/dream/camera/msm_io8x.c delete mode 100644 trunk/drivers/staging/dream/camera/msm_v4l2.c delete mode 100644 trunk/drivers/staging/dream/camera/msm_vfe7x.c delete mode 100644 trunk/drivers/staging/dream/camera/msm_vfe7x.h delete mode 100644 trunk/drivers/staging/dream/camera/msm_vfe8x.c delete mode 100644 trunk/drivers/staging/dream/camera/msm_vfe8x.h delete mode 100644 trunk/drivers/staging/dream/camera/msm_vfe8x_proc.c delete mode 100644 trunk/drivers/staging/dream/camera/msm_vfe8x_proc.h delete mode 100644 trunk/drivers/staging/dream/camera/mt9d112.c delete mode 100644 trunk/drivers/staging/dream/camera/mt9d112.h delete mode 100644 trunk/drivers/staging/dream/camera/mt9d112_reg.c delete mode 100644 trunk/drivers/staging/dream/camera/mt9p012.h delete mode 100644 trunk/drivers/staging/dream/camera/mt9p012_fox.c delete mode 100644 trunk/drivers/staging/dream/camera/mt9p012_reg.c delete mode 100644 trunk/drivers/staging/dream/camera/mt9t013.c delete mode 100644 trunk/drivers/staging/dream/camera/mt9t013.h delete mode 100644 trunk/drivers/staging/dream/camera/mt9t013_reg.c delete mode 100644 trunk/drivers/staging/dream/camera/s5k3e2fx.c delete mode 100644 trunk/drivers/staging/dream/camera/s5k3e2fx.h delete mode 100644 trunk/drivers/staging/dream/generic_gpio.c delete mode 100644 trunk/drivers/staging/dream/gpio_axis.c delete mode 100644 trunk/drivers/staging/dream/gpio_event.c delete mode 100644 trunk/drivers/staging/dream/gpio_input.c delete mode 100644 trunk/drivers/staging/dream/gpio_matrix.c delete mode 100644 trunk/drivers/staging/dream/gpio_output.c delete mode 100644 trunk/drivers/staging/dream/include/linux/android_pmem.h delete mode 100644 trunk/drivers/staging/dream/include/linux/gpio_event.h delete mode 100644 trunk/drivers/staging/dream/include/linux/msm_adsp.h delete mode 100644 trunk/drivers/staging/dream/include/linux/msm_audio.h delete mode 100644 trunk/drivers/staging/dream/include/linux/msm_rpcrouter.h delete mode 100644 trunk/drivers/staging/dream/include/linux/wakelock.h delete mode 100644 trunk/drivers/staging/dream/include/mach/camera.h delete mode 100644 trunk/drivers/staging/dream/include/mach/msm_adsp.h delete mode 100644 trunk/drivers/staging/dream/include/mach/msm_rpcrouter.h delete mode 100644 trunk/drivers/staging/dream/include/mach/msm_smd.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5audplaycmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5audplaymsg.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5audppcmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5audppmsg.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5audpreproccmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5audpreprocmsg.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5audreccmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5audrecmsg.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5jpegcmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5jpegmsg.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5lpmcmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5lpmmsg.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5vdeccmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5vdecmsg.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5venccmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5vfecmdi.h delete mode 100644 trunk/drivers/staging/dream/include/mach/qdsp5/qdsp5vfemsg.h delete mode 100644 trunk/drivers/staging/dream/include/media/msm_camera.h delete mode 100644 trunk/drivers/staging/dream/pmem.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/Makefile delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp.h delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_6210.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_6220.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_6225.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_driver.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_info.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_jpeg_patch_event.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_jpeg_verify_cmd.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_lpm_verify_cmd.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_vfe_patch_event.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_vfe_verify_cmd.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_video_verify_cmd.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/adsp_videoenc_verify_cmd.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audio_aac.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audio_amrnb.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audio_evrc.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audio_in.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audio_mp3.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audio_out.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audio_qcelp.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audmgr.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/audmgr.h delete mode 100644 trunk/drivers/staging/dream/qdsp5/audmgr_new.h delete mode 100644 trunk/drivers/staging/dream/qdsp5/audpp.c delete mode 100644 trunk/drivers/staging/dream/qdsp5/evlog.h delete mode 100644 trunk/drivers/staging/dream/qdsp5/snd.c delete mode 100644 trunk/drivers/staging/dream/synaptics_i2c_rmi.c delete mode 100644 trunk/drivers/staging/dream/synaptics_i2c_rmi.h create mode 100644 trunk/drivers/tty/Makefile rename trunk/drivers/{char => tty}/n_gsm.c (100%) rename trunk/drivers/{char => tty}/n_hdlc.c (100%) rename trunk/drivers/{char => tty}/n_r3964.c (100%) rename trunk/drivers/{char => tty}/n_tty.c (100%) rename trunk/drivers/{char => tty}/pty.c (100%) rename trunk/drivers/{char => tty}/sysrq.c (100%) rename trunk/drivers/{char => tty}/tty_audit.c (90%) rename trunk/drivers/{char => tty}/tty_buffer.c (100%) rename trunk/drivers/{char => tty}/tty_io.c (100%) rename trunk/drivers/{char => tty}/tty_ioctl.c (100%) rename trunk/drivers/{char => tty}/tty_ldisc.c (100%) rename trunk/drivers/{char => tty}/tty_mutex.c (100%) rename trunk/drivers/{char => tty}/tty_port.c (100%) rename trunk/drivers/{char => tty/vt}/.gitignore (100%) create mode 100644 trunk/drivers/tty/vt/Makefile rename trunk/drivers/{char => tty/vt}/consolemap.c (100%) rename trunk/drivers/{char => tty/vt}/cp437.uni (100%) rename trunk/drivers/{char => tty/vt}/defkeymap.c_shipped (100%) rename trunk/drivers/{char => tty/vt}/defkeymap.map (100%) rename trunk/drivers/{char => tty/vt}/keyboard.c (100%) rename trunk/drivers/{char => tty/vt}/selection.c (100%) rename trunk/drivers/{char => tty/vt}/vc_screen.c (100%) rename trunk/drivers/{char => tty/vt}/vt.c (100%) rename trunk/drivers/{char => tty/vt}/vt_ioctl.c (100%) create mode 100644 trunk/drivers/usb/host/ehci-octeon.c create mode 100644 trunk/drivers/usb/host/octeon2-common.c create mode 100644 trunk/drivers/usb/host/ohci-octeon.c create mode 100644 trunk/drivers/video/sh_mobile_lcdcfb.h create mode 100644 trunk/include/linux/atomic.h create mode 100644 trunk/include/linux/leds-lp5521.h create mode 100644 trunk/include/linux/leds-lp5523.h create mode 100644 trunk/include/linux/mtd/fsmc.h create mode 100644 trunk/samples/kdb/Makefile create mode 100644 trunk/samples/kdb/kdb_hello.c diff --git a/[refs] b/[refs] index 2ebb7ebbb03b..a675b3c3f51c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9ec23a7f6d2537faf14368e066e307c06812c4ca +refs/heads/master: 891cbd30ef456664e50bbd28436ef3006a81cf7c diff --git a/trunk/Documentation/ABI/obsolete/proc-pid-oom_adj b/trunk/Documentation/ABI/obsolete/proc-pid-oom_adj new file mode 100644 index 000000000000..cf63f264ce0f --- /dev/null +++ b/trunk/Documentation/ABI/obsolete/proc-pid-oom_adj @@ -0,0 +1,22 @@ +What: /proc//oom_adj +When: August 2012 +Why: /proc//oom_adj allows userspace to influence the oom killer's + badness heuristic used to determine which task to kill when the kernel + is out of memory. + + The badness heuristic has since been rewritten since the introduction of + this tunable such that its meaning is deprecated. The value was + implemented as a bitshift on a score generated by the badness() + function that did not have any precise units of measure. With the + rewrite, the score is given as a proportion of available memory to the + task allocating pages, so using a bitshift which grows the score + exponentially is, thus, impossible to tune with fine granularity. + + A much more powerful interface, /proc//oom_score_adj, was + introduced with the oom killer rewrite that allows users to increase or + decrease the badness() score linearly. This interface will replace + /proc//oom_adj. + + A warning will be emitted to the kernel log if an application uses this + deprecated interface. After it is printed once, future warnings will be + suppressed until the kernel is rebooted. diff --git a/trunk/Documentation/DocBook/kgdb.tmpl b/trunk/Documentation/DocBook/kgdb.tmpl index 490d862c5f0d..d71b57fcf116 100644 --- a/trunk/Documentation/DocBook/kgdb.tmpl +++ b/trunk/Documentation/DocBook/kgdb.tmpl @@ -710,7 +710,18 @@ Task Addr Pid Parent [*] cpu State Thread Command A simple shell The kdb core command set A registration API to register additional kdb shell commands. - A good example of a self-contained kdb module is the "ftdump" command for dumping the ftrace buffer. See: kernel/trace/trace_kdb.c + + A good example of a self-contained kdb module + is the "ftdump" command for dumping the ftrace buffer. See: + kernel/trace/trace_kdb.c + For an example of how to dynamically register + a new kdb command you can build the kdb_hello.ko kernel module + from samples/kdb/kdb_hello.c. To build this example you can + set CONFIG_SAMPLES=y and CONFIG_SAMPLE_KDB=m in your kernel + config. Later run "modprobe kdb_hello" and the next time you + enter the kdb shell, you can run the "hello" + command. + The implementation for kdb_printf() which emits messages directly to I/O drivers, bypassing the kernel log. diff --git a/trunk/Documentation/block/switching-sched.txt b/trunk/Documentation/block/switching-sched.txt index d5af3f630814..71cfbdc0f74d 100644 --- a/trunk/Documentation/block/switching-sched.txt +++ b/trunk/Documentation/block/switching-sched.txt @@ -16,7 +16,7 @@ you can do so by typing: As of the Linux 2.6.10 kernel, it is now possible to change the IO scheduler for a given block device on the fly (thus making it possible, for instance, to set the CFQ scheduler for the system default, but -set a specific device to use the anticipatory or noop schedulers - which +set a specific device to use the deadline or noop schedulers - which can improve that device's throughput). To set a specific scheduler, simply do this: @@ -31,7 +31,7 @@ a "cat /sys/block/DEV/queue/scheduler" - the list of valid names will be displayed, with the currently selected scheduler in brackets: # cat /sys/block/hda/queue/scheduler -noop anticipatory deadline [cfq] -# echo anticipatory > /sys/block/hda/queue/scheduler +noop deadline [cfq] +# echo deadline > /sys/block/hda/queue/scheduler # cat /sys/block/hda/queue/scheduler -noop [anticipatory] deadline cfq +noop [deadline] cfq diff --git a/trunk/Documentation/filesystems/Locking b/trunk/Documentation/filesystems/Locking index 8a817f656f0a..a91f30890011 100644 --- a/trunk/Documentation/filesystems/Locking +++ b/trunk/Documentation/filesystems/Locking @@ -322,7 +322,6 @@ fl_release_private: yes yes prototypes: int (*fl_compare_owner)(struct file_lock *, struct file_lock *); void (*fl_notify)(struct file_lock *); /* unblock callback */ - void (*fl_copy_lock)(struct file_lock *, struct file_lock *); void (*fl_release_private)(struct file_lock *); void (*fl_break)(struct file_lock *); /* break_lease callback */ @@ -330,7 +329,6 @@ locking rules: BKL may block fl_compare_owner: yes no fl_notify: yes no -fl_copy_lock: yes no fl_release_private: yes yes fl_break: yes no diff --git a/trunk/Documentation/filesystems/xfs-delayed-logging-design.txt b/trunk/Documentation/filesystems/xfs-delayed-logging-design.txt index 96d0df28bed3..7445bf335dae 100644 --- a/trunk/Documentation/filesystems/xfs-delayed-logging-design.txt +++ b/trunk/Documentation/filesystems/xfs-delayed-logging-design.txt @@ -794,17 +794,6 @@ designed. Roadmap: -2.6.37 Remove experimental tag from mount option - => should be roughly 6 months after initial merge - => enough time to: - => gain confidence and fix problems reported by early - adopters (a.k.a. guinea pigs) - => address worst performance regressions and undesired - behaviours - => start tuning/optimising code for parallelism - => start tuning/optimising algorithms consuming - excessive CPU time - 2.6.39 Switch default mount option to use delayed logging => should be roughly 12 months after initial merge => enough time to shake out remaining problems before next round of diff --git a/trunk/Documentation/i2c/busses/i2c-i801 b/trunk/Documentation/i2c/busses/i2c-i801 index e307914a3eda..93fe76e56522 100644 --- a/trunk/Documentation/i2c/busses/i2c-i801 +++ b/trunk/Documentation/i2c/busses/i2c-i801 @@ -15,10 +15,14 @@ Supported adapters: * Intel 82801I (ICH9) * Intel EP80579 (Tolapai) * Intel 82801JI (ICH10) - * Intel 3400/5 Series (PCH) + * Intel 5/3400 Series (PCH) * Intel Cougar Point (PCH) + * Intel Patsburg (PCH) Datasheets: Publicly available at the Intel website +On Intel Patsburg and later chipsets, both the normal host SMBus controller +and the additional 'Integrated Device Function' controllers are supported. + Authors: Mark Studebaker Jean Delvare diff --git a/trunk/Documentation/kernel-parameters.txt b/trunk/Documentation/kernel-parameters.txt index ed45e9802aa8..92e83e53148f 100644 --- a/trunk/Documentation/kernel-parameters.txt +++ b/trunk/Documentation/kernel-parameters.txt @@ -706,7 +706,7 @@ and is between 256 and 4096 characters. It is defined in the file arch/x86/kernel/cpu/cpufreq/elanfreq.c. elevator= [IOSCHED] - Format: {"anticipatory" | "cfq" | "deadline" | "noop"} + Format: {"cfq" | "deadline" | "noop"} See Documentation/block/as-iosched.txt and Documentation/block/deadline-iosched.txt for details. diff --git a/trunk/Documentation/leds-class.txt b/trunk/Documentation/leds-class.txt index 8fd5ca2ae32d..58b266bd1846 100644 --- a/trunk/Documentation/leds-class.txt +++ b/trunk/Documentation/leds-class.txt @@ -60,15 +60,18 @@ Hardware accelerated blink of LEDs Some LEDs can be programmed to blink without any CPU interaction. To support this feature, a LED driver can optionally implement the -blink_set() function (see ). If implemented, triggers can -attempt to use it before falling back to software timers. The blink_set() -function should return 0 if the blink setting is supported, or -EINVAL -otherwise, which means that LED blinking will be handled by software. - -The blink_set() function should choose a user friendly blinking -value if it is called with *delay_on==0 && *delay_off==0 parameters. In -this case the driver should give back the chosen value through delay_on -and delay_off parameters to the leds subsystem. +blink_set() function (see ). To set an LED to blinking, +however, it is better to use use the API function led_blink_set(), +as it will check and implement software fallback if necessary. + +To turn off blinking again, use the API function led_brightness_set() +as that will not just set the LED brightness but also stop any software +timers that may have been required for blinking. + +The blink_set() function should choose a user friendly blinking value +if it is called with *delay_on==0 && *delay_off==0 parameters. In this +case the driver should give back the chosen value through delay_on and +delay_off parameters to the leds subsystem. Setting the brightness to zero with brightness_set() callback function should completely turn off the LED and cancel the previously programmed diff --git a/trunk/Documentation/leds/leds-lp5521.txt b/trunk/Documentation/leds/leds-lp5521.txt new file mode 100644 index 000000000000..c4d8d151e0fe --- /dev/null +++ b/trunk/Documentation/leds/leds-lp5521.txt @@ -0,0 +1,88 @@ +Kernel driver for lp5521 +======================== + +* National Semiconductor LP5521 led driver chip +* Datasheet: http://www.national.com/pf/LP/LP5521.html + +Authors: Mathias Nyman, Yuri Zaporozhets, Samu Onkalo +Contact: Samu Onkalo (samu.p.onkalo-at-nokia.com) + +Description +----------- + +LP5521 can drive up to 3 channels. Leds can be controlled directly via +the led class control interface. Channels have generic names: +lp5521:channelx, where x is 0 .. 2 + +All three channels can be also controlled using the engine micro programs. +More details of the instructions can be found from the public data sheet. + +Control interface for the engines: +x is 1 .. 3 +enginex_mode : disabled, load, run +enginex_load : store program (visible only in engine load mode) + +Example (start to blink the channel 2 led): +cd /sys/class/leds/lp5521:channel2/device +echo "load" > engine3_mode +echo "037f4d0003ff6000" > engine3_load +echo "run" > engine3_mode + +stop the engine: +echo "disabled" > engine3_mode + +sysfs contains a selftest entry. +The test communicates with the chip and checks that +the clock mode is automatically set to the requested one. + +Each channel has its own led current settings. +/sys/class/leds/lp5521:channel0/led_current - RW +/sys/class/leds/lp5521:channel0/max_current - RO +Format: 10x mA i.e 10 means 1.0 mA + +example platform data: + +Note: chan_nr can have values between 0 and 2. + +static struct lp5521_led_config lp5521_led_config[] = { + { + .chan_nr = 0, + .led_current = 50, + .max_current = 130, + }, { + .chan_nr = 1, + .led_current = 0, + .max_current = 130, + }, { + .chan_nr = 2, + .led_current = 0, + .max_current = 130, + } +}; + +static int lp5521_setup(void) +{ + /* setup HW resources */ +} + +static void lp5521_release(void) +{ + /* Release HW resources */ +} + +static void lp5521_enable(bool state) +{ + /* Control of chip enable signal */ +} + +static struct lp5521_platform_data lp5521_platform_data = { + .led_config = lp5521_led_config, + .num_channels = ARRAY_SIZE(lp5521_led_config), + .clock_mode = LP5521_CLOCK_EXT, + .setup_resources = lp5521_setup, + .release_resources = lp5521_release, + .enable = lp5521_enable, +}; + +If the current is set to 0 in the platform data, that channel is +disabled and it is not visible in the sysfs. diff --git a/trunk/Documentation/leds/leds-lp5523.txt b/trunk/Documentation/leds/leds-lp5523.txt new file mode 100644 index 000000000000..fad2feb8b7ce --- /dev/null +++ b/trunk/Documentation/leds/leds-lp5523.txt @@ -0,0 +1,83 @@ +Kernel driver for lp5523 +======================== + +* National Semiconductor LP5523 led driver chip +* Datasheet: http://www.national.com/pf/LP/LP5523.html + +Authors: Mathias Nyman, Yuri Zaporozhets, Samu Onkalo +Contact: Samu Onkalo (samu.p.onkalo-at-nokia.com) + +Description +----------- +LP5523 can drive up to 9 channels. Leds can be controlled directly via +the led class control interface. Channels have generic names: +lp5523:channelx where x is 0...8 + +The chip provides 3 engines. Each engine can control channels without +interaction from the main CPU. Details of the micro engine code can be found +from the public data sheet. Leds can be muxed to different channels. + +Control interface for the engines: +x is 1 .. 3 +enginex_mode : disabled, load, run +enginex_load : microcode load (visible only in load mode) +enginex_leds : led mux control (visible only in load mode) + +cd /sys/class/leds/lp5523:channel2/device +echo "load" > engine3_mode +echo "9d80400004ff05ff437f0000" > engine3_load +echo "111111111" > engine3_leds +echo "run" > engine3_mode + +sysfs contains a selftest entry. It measures each channel +voltage level and checks if it looks reasonable. If the level is too high, +the led is missing; if the level is too low, there is a short circuit. + +Selftest uses always the current from the platform data. + +Each channel contains led current settings. +/sys/class/leds/lp5523:channel2/led_current - RW +/sys/class/leds/lp5523:channel2/max_current - RO +Format: 10x mA i.e 10 means 1.0 mA + +Example platform data: + +Note - chan_nr can have values between 0 and 8. + +static struct lp5523_led_config lp5523_led_config[] = { + { + .chan_nr = 0, + .led_current = 50, + .max_current = 130, + }, +... + }, { + .chan_nr = 8, + .led_current = 50, + .max_current = 130, + } +}; + +static int lp5523_setup(void) +{ + /* Setup HW resources */ +} + +static void lp5523_release(void) +{ + /* Release HW resources */ +} + +static void lp5523_enable(bool state) +{ + /* Control chip enable signal */ +} + +static struct lp5523_platform_data lp5523_platform_data = { + .led_config = lp5523_led_config, + .num_channels = ARRAY_SIZE(lp5523_led_config), + .clock_mode = LP5523_CLOCK_EXT, + .setup_resources = lp5523_setup, + .release_resources = lp5523_release, + .enable = lp5523_enable, +}; diff --git a/trunk/Documentation/rbtree.txt b/trunk/Documentation/rbtree.txt index 221f38be98f4..19f8278c3854 100644 --- a/trunk/Documentation/rbtree.txt +++ b/trunk/Documentation/rbtree.txt @@ -21,8 +21,8 @@ three rotations, respectively, to balance the tree), with slightly slower To quote Linux Weekly News: There are a number of red-black trees in use in the kernel. - The anticipatory, deadline, and CFQ I/O schedulers all employ - rbtrees to track requests; the packet CD/DVD driver does the same. + The deadline and CFQ I/O schedulers employ rbtrees to + track requests; the packet CD/DVD driver does the same. The high-resolution timer code uses an rbtree to organize outstanding timer requests. The ext3 filesystem tracks directory entries in a red-black tree. Virtual memory areas (VMAs) are tracked with red-black diff --git a/trunk/Documentation/scsi/ChangeLog.megaraid_sas b/trunk/Documentation/scsi/ChangeLog.megaraid_sas index 30023568805e..00301ed9c371 100644 --- a/trunk/Documentation/scsi/ChangeLog.megaraid_sas +++ b/trunk/Documentation/scsi/ChangeLog.megaraid_sas @@ -1,3 +1,50 @@ +1 Release Date : Thur. May 03, 2010 09:12:45 PST 2009 - + (emaild-id:megaraidlinux@lsi.com) + Bo Yang + +2 Current Version : 00.00.04.31-rc1 +3 Older Version : 00.00.04.17.1-rc1 + +1. Add the Online Controller Reset (OCR) to the Driver. + OCR is the new feature for megaraid_sas driver which + will allow the fw to do the chip reset which will not + affact the OS behavious. + + To add the OCR support, driver need to do: + a). reset the controller chips -- Xscale and Gen2 which + will change the function calls and add the reset function + related to this two chips. + + b). during the reset, driver will store the pending cmds + which not returned by FW to driver's pending queue. Driver + will re-issue those pending cmds again to FW after the OCR + finished. + + c). In driver's timeout routine, driver will report to + OS as reset. Also driver's queue routine will block the + cmds until the OCR finished. + + d). in Driver's ISR routine, if driver get the FW state as + state change, FW in Failure status and FW support online controller + reset (OCR), driver will start to do the controller reset. + + e). In driver's IOCTL routine, the application cmds will wait for the + OCR to finish, then issue the cmds to FW. + + f). Before driver kill adapter, driver will do last chance of + OCR to see if driver can bring back the FW. + +2. Add the support update flag to the driver to tell LSI megaraid_sas + application which driver will support the device update. So application + will not need to do the device update after application add/del the device + from the system. +3. In driver's timeout routine, driver will do three time reset if fw is in + failed state. Driver will kill adapter if can't bring back FW after the + this three times reset. +4. Add the input parameter max_sectors to 1MB support to our GEN2 controller. + customer can use the input paramenter max_sectors to add 1MB support to GEN2 + controller. + 1 Release Date : Thur. Oct 29, 2009 09:12:45 PST 2009 - (emaild-id:megaraidlinux@lsi.com) Bo Yang diff --git a/trunk/Documentation/sysctl/kernel.txt b/trunk/Documentation/sysctl/kernel.txt index 3894eaa23486..209e1584c3dc 100644 --- a/trunk/Documentation/sysctl/kernel.txt +++ b/trunk/Documentation/sysctl/kernel.txt @@ -28,6 +28,7 @@ show up in /proc/sys/kernel: - core_uses_pid - ctrl-alt-del - dentry-state +- dmesg_restrict - domainname - hostname - hotplug @@ -213,6 +214,19 @@ to decide what to do with it. ============================================================== +dmesg_restrict: + +This toggle indicates whether unprivileged users are prevented from using +dmesg(8) to view messages from the kernel's log buffer. When +dmesg_restrict is set to (0) there are no restrictions. When +dmesg_restrict is set set to (1), users must have CAP_SYS_ADMIN to use +dmesg(8). + +The kernel config option CONFIG_SECURITY_DMESG_RESTRICT sets the default +value of dmesg_restrict. + +============================================================== + domainname & hostname: These files can be used to set the NIS/YP domainname and the diff --git a/trunk/MAINTAINERS b/trunk/MAINTAINERS index cb8b58020352..6a16f21117df 100644 --- a/trunk/MAINTAINERS +++ b/trunk/MAINTAINERS @@ -1757,6 +1757,7 @@ L: linux-cris-kernel@axis.com W: http://developer.axis.com S: Maintained F: arch/cris/ +F: drivers/serial/crisv10.* CRYPTO API M: Herbert Xu @@ -6597,14 +6598,14 @@ F: drivers/platform/x86 XEN PCI SUBSYSTEM M: Konrad Rzeszutek Wilk -L: xen-devel@lists.xensource.com +L: xen-devel@lists.xensource.com (moderated for non-subscribers) S: Supported F: arch/x86/pci/*xen* F: drivers/pci/*xen* XEN SWIOTLB SUBSYSTEM M: Konrad Rzeszutek Wilk -L: xen-devel@lists.xensource.com +L: xen-devel@lists.xensource.com (moderated for non-subscribers) S: Supported F: arch/x86/xen/*swiotlb* F: drivers/xen/*swiotlb* @@ -6612,7 +6613,7 @@ F: drivers/xen/*swiotlb* XEN HYPERVISOR INTERFACE M: Jeremy Fitzhardinge M: Konrad Rzeszutek Wilk -L: xen-devel@lists.xen.org +L: xen-devel@lists.xensource.com (moderated for non-subscribers) L: virtualization@lists.osdl.org S: Supported F: arch/x86/xen/ diff --git a/trunk/Makefile b/trunk/Makefile index 6b23f1b15fc4..6619720f50dd 100644 --- a/trunk/Makefile +++ b/trunk/Makefile @@ -1,7 +1,7 @@ VERSION = 2 PATCHLEVEL = 6 -SUBLEVEL = 36 -EXTRAVERSION = +SUBLEVEL = 37 +EXTRAVERSION = -rc1 NAME = Flesh-Eating Bats with Fangs # *DOCUMENTATION* @@ -204,6 +204,9 @@ ifeq ($(ARCH),x86_64) endif # Additional ARCH settings for sparc +ifeq ($(ARCH),sparc32) + SRCARCH := sparc +endif ifeq ($(ARCH),sparc64) SRCARCH := sparc endif diff --git a/trunk/arch/Kconfig b/trunk/arch/Kconfig index 53d7f619a1b9..8bf0fa652eb6 100644 --- a/trunk/arch/Kconfig +++ b/trunk/arch/Kconfig @@ -42,6 +42,20 @@ config KPROBES for kernel debugging, non-intrusive instrumentation and testing. If in doubt, say "N". +config JUMP_LABEL + bool "Optimize trace point call sites" + depends on HAVE_ARCH_JUMP_LABEL + help + If it is detected that the compiler has support for "asm goto", + the kernel will compile trace point locations with just a + nop instruction. When trace points are enabled, the nop will + be converted to a jump to the trace function. This technique + lowers overhead and stress on the branch prediction of the + processor. + + On i386, options added to the compiler flags may increase + the size of the kernel slightly. + config OPTPROBES def_bool y depends on KPROBES && HAVE_OPTPROBES diff --git a/trunk/arch/arm/Kconfig b/trunk/arch/arm/Kconfig index b527bf5701c9..8ae3d48d504c 100644 --- a/trunk/arch/arm/Kconfig +++ b/trunk/arch/arm/Kconfig @@ -6,7 +6,7 @@ config ARM select HAVE_MEMBLOCK select RTC_LIB select SYS_SUPPORTS_APM_EMULATION - select GENERIC_ATOMIC64 if (!CPU_32v6K) + select GENERIC_ATOMIC64 if (!CPU_32v6K || !AEABI) select HAVE_OPROFILE if (HAVE_PERF_EVENTS) select HAVE_ARCH_KGDB select HAVE_KPROBES if (!XIP_KERNEL) @@ -720,9 +720,11 @@ config ARCH_S5PC100 config ARCH_S5PV210 bool "Samsung S5PV210/S5PC110" select CPU_V7 + select ARCH_SPARSEMEM_ENABLE select GENERIC_GPIO select HAVE_CLK select ARM_L1_CACHE_SHIFT_6 + select ARCH_HAS_CPUFREQ select ARCH_USES_GETTIMEOFFSET select HAVE_S3C2410_I2C select HAVE_S3C_RTC @@ -733,9 +735,13 @@ config ARCH_S5PV210 config ARCH_S5PV310 bool "Samsung S5PV310/S5PC210" select CPU_V7 + select ARCH_SPARSEMEM_ENABLE select GENERIC_GPIO select HAVE_CLK select GENERIC_CLOCKEVENTS + select HAVE_S3C_RTC + select HAVE_S3C2410_I2C + select HAVE_S3C2410_WATCHDOG help Samsung S5PV310 series based systems @@ -1662,6 +1668,12 @@ if ARCH_HAS_CPUFREQ source "drivers/cpufreq/Kconfig" +config CPU_FREQ_IMX + tristate "CPUfreq driver for i.MX CPUs" + depends on ARCH_MXC && CPU_FREQ + help + This enables the CPUfreq driver for i.MX CPUs. + config CPU_FREQ_SA1100 bool diff --git a/trunk/arch/arm/common/gic.c b/trunk/arch/arm/common/gic.c index ada6359160eb..772f95f1aecd 100644 --- a/trunk/arch/arm/common/gic.c +++ b/trunk/arch/arm/common/gic.c @@ -251,15 +251,16 @@ void __init gic_dist_init(unsigned int gic_nr, void __iomem *base, writel(cpumask, base + GIC_DIST_TARGET + i * 4 / 4); /* - * Set priority on all interrupts. + * Set priority on all global interrupts. */ - for (i = 0; i < max_irq; i += 4) + for (i = 32; i < max_irq; i += 4) writel(0xa0a0a0a0, base + GIC_DIST_PRI + i * 4 / 4); /* - * Disable all interrupts. + * Disable all interrupts. Leave the PPI and SGIs alone + * as these enables are banked registers. */ - for (i = 0; i < max_irq; i += 32) + for (i = 32; i < max_irq; i += 32) writel(0xffffffff, base + GIC_DIST_ENABLE_CLEAR + i * 4 / 32); /* @@ -277,11 +278,30 @@ void __init gic_dist_init(unsigned int gic_nr, void __iomem *base, void __cpuinit gic_cpu_init(unsigned int gic_nr, void __iomem *base) { + void __iomem *dist_base; + int i; + if (gic_nr >= MAX_GIC_NR) BUG(); + dist_base = gic_data[gic_nr].dist_base; + BUG_ON(!dist_base); + gic_data[gic_nr].cpu_base = base; + /* + * Deal with the banked PPI and SGI interrupts - disable all + * PPI interrupts, ensure all SGI interrupts are enabled. + */ + writel(0xffff0000, dist_base + GIC_DIST_ENABLE_CLEAR); + writel(0x0000ffff, dist_base + GIC_DIST_ENABLE_SET); + + /* + * Set priority on PPI and SGI interrupts + */ + for (i = 0; i < 32; i += 4) + writel(0xa0a0a0a0, dist_base + GIC_DIST_PRI + i * 4 / 4); + writel(0xf0, base + GIC_CPU_PRIMASK); writel(1, base + GIC_CPU_CTRL); } diff --git a/trunk/arch/arm/configs/mx51_defconfig b/trunk/arch/arm/configs/mx51_defconfig index 163cfee7644c..5c7a87260fab 100644 --- a/trunk/arch/arm/configs/mx51_defconfig +++ b/trunk/arch/arm/configs/mx51_defconfig @@ -82,6 +82,7 @@ CONFIG_FEC=y CONFIG_INPUT_FF_MEMLESS=m # CONFIG_INPUT_MOUSEDEV_PSAUX is not set CONFIG_INPUT_EVDEV=y +CONFIG_KEYBOARD_GPIO=y CONFIG_INPUT_EVBUG=m CONFIG_MOUSE_PS2=m CONFIG_MOUSE_PS2_ELANTECH=y diff --git a/trunk/arch/arm/include/asm/hardware/cache-l2x0.h b/trunk/arch/arm/include/asm/hardware/cache-l2x0.h index 6bcba48800fe..cc42d5fdee17 100644 --- a/trunk/arch/arm/include/asm/hardware/cache-l2x0.h +++ b/trunk/arch/arm/include/asm/hardware/cache-l2x0.h @@ -21,9 +21,6 @@ #define __ASM_ARM_HARDWARE_L2X0_H #define L2X0_CACHE_ID 0x000 -#define L2X0_CACHE_ID_PART_MASK (0xf << 6) -#define L2X0_CACHE_ID_PART_L210 (1 << 6) -#define L2X0_CACHE_ID_PART_L310 (3 << 6) #define L2X0_CACHE_TYPE 0x004 #define L2X0_CTRL 0x100 #define L2X0_AUX_CTRL 0x104 @@ -53,6 +50,16 @@ #define L2X0_LINE_DATA 0xF10 #define L2X0_LINE_TAG 0xF30 #define L2X0_DEBUG_CTRL 0xF40 +#define L2X0_PREFETCH_CTRL 0xF60 +#define L2X0_POWER_CTRL 0xF80 +#define L2X0_DYNAMIC_CLK_GATING_EN (1 << 1) +#define L2X0_STNDBY_MODE_EN (1 << 0) + +/* Registers shifts and masks */ +#define L2X0_CACHE_ID_PART_MASK (0xf << 6) +#define L2X0_CACHE_ID_PART_L210 (1 << 6) +#define L2X0_CACHE_ID_PART_L310 (3 << 6) +#define L2X0_AUX_CTRL_WAY_SIZE_MASK (0x3 << 17) #ifndef __ASSEMBLY__ extern void __init l2x0_init(void __iomem *base, __u32 aux_val, __u32 aux_mask); diff --git a/trunk/arch/arm/include/asm/hardware/it8152.h b/trunk/arch/arm/include/asm/hardware/it8152.h index 6700c7fc7ebd..21fa272301f8 100644 --- a/trunk/arch/arm/include/asm/hardware/it8152.h +++ b/trunk/arch/arm/include/asm/hardware/it8152.h @@ -75,7 +75,7 @@ extern unsigned long it8152_base_address; IT8152_PD_IRQ(1) USB (USBR) IT8152_PD_IRQ(0) Audio controller (ACR) */ -#define IT8152_IRQ(x) (IRQ_BOARD_END + (x)) +#define IT8152_IRQ(x) (IRQ_BOARD_START + (x)) /* IRQ-sources in 3 groups - local devices, LPC (serial), and external PCI */ #define IT8152_LD_IRQ_COUNT 9 diff --git a/trunk/arch/arm/include/asm/kgdb.h b/trunk/arch/arm/include/asm/kgdb.h index 08265993227f..48066ce9ea34 100644 --- a/trunk/arch/arm/include/asm/kgdb.h +++ b/trunk/arch/arm/include/asm/kgdb.h @@ -70,7 +70,8 @@ extern int kgdb_fault_expected; #define _GP_REGS 16 #define _FP_REGS 8 #define _EXTRA_REGS 2 -#define DBG_MAX_REG_NUM (_GP_REGS + (_FP_REGS * 3) + _EXTRA_REGS) +#define GDB_MAX_REGS (_GP_REGS + (_FP_REGS * 3) + _EXTRA_REGS) +#define DBG_MAX_REG_NUM (_GP_REGS + _FP_REGS + _EXTRA_REGS) #define KGDB_MAX_NO_CPUS 1 #define BUFMAX 400 @@ -93,7 +94,7 @@ extern int kgdb_fault_expected; #define _SPT 13 #define _LR 14 #define _PC 15 -#define _CPSR (DBG_MAX_REG_NUM - 1) +#define _CPSR (GDB_MAX_REGS - 1) /* * So that we can denote the end of a frame for tracing, diff --git a/trunk/arch/arm/include/asm/memblock.h b/trunk/arch/arm/include/asm/memblock.h index fdbc43b2e6c0..b8da2e415e4e 100644 --- a/trunk/arch/arm/include/asm/memblock.h +++ b/trunk/arch/arm/include/asm/memblock.h @@ -1,13 +1,6 @@ #ifndef _ASM_ARM_MEMBLOCK_H #define _ASM_ARM_MEMBLOCK_H -#ifdef CONFIG_MMU -extern phys_addr_t lowmem_end_addr; -#define MEMBLOCK_REAL_LIMIT lowmem_end_addr -#else -#define MEMBLOCK_REAL_LIMIT 0 -#endif - struct meminfo; struct machine_desc; diff --git a/trunk/arch/arm/include/asm/outercache.h b/trunk/arch/arm/include/asm/outercache.h index 25f76bae57ab..fc1900925275 100644 --- a/trunk/arch/arm/include/asm/outercache.h +++ b/trunk/arch/arm/include/asm/outercache.h @@ -25,6 +25,9 @@ struct outer_cache_fns { void (*inv_range)(unsigned long, unsigned long); void (*clean_range)(unsigned long, unsigned long); void (*flush_range)(unsigned long, unsigned long); + void (*flush_all)(void); + void (*inv_all)(void); + void (*disable)(void); #ifdef CONFIG_OUTER_CACHE_SYNC void (*sync)(void); #endif @@ -50,6 +53,24 @@ static inline void outer_flush_range(unsigned long start, unsigned long end) outer_cache.flush_range(start, end); } +static inline void outer_flush_all(void) +{ + if (outer_cache.flush_all) + outer_cache.flush_all(); +} + +static inline void outer_inv_all(void) +{ + if (outer_cache.inv_all) + outer_cache.inv_all(); +} + +static inline void outer_disable(void) +{ + if (outer_cache.disable) + outer_cache.disable(); +} + #else static inline void outer_inv_range(unsigned long start, unsigned long end) @@ -58,6 +79,9 @@ static inline void outer_clean_range(unsigned long start, unsigned long end) { } static inline void outer_flush_range(unsigned long start, unsigned long end) { } +static inline void outer_flush_all(void) { } +static inline void outer_inv_all(void) { } +static inline void outer_disable(void) { } #endif diff --git a/trunk/arch/arm/kernel/hw_breakpoint.c b/trunk/arch/arm/kernel/hw_breakpoint.c index 54593b0c241b..21e3a4ab3b8c 100644 --- a/trunk/arch/arm/kernel/hw_breakpoint.c +++ b/trunk/arch/arm/kernel/hw_breakpoint.c @@ -748,8 +748,7 @@ static int hw_breakpoint_pending(unsigned long addr, unsigned int fsr, breakpoint_handler(addr, regs); break; case ARM_ENTRY_ASYNC_WATCHPOINT: - WARN_ON("Asynchronous watchpoint exception taken. " - "Debugging results may be unreliable"); + WARN(1, "Asynchronous watchpoint exception taken. Debugging results may be unreliable\n"); case ARM_ENTRY_SYNC_WATCHPOINT: watchpoint_handler(addr, regs); break; diff --git a/trunk/arch/arm/kernel/kgdb.c b/trunk/arch/arm/kernel/kgdb.c index d6e8b4d2e60d..778c2f7024ff 100644 --- a/trunk/arch/arm/kernel/kgdb.c +++ b/trunk/arch/arm/kernel/kgdb.c @@ -79,7 +79,7 @@ sleeping_thread_to_gdb_regs(unsigned long *gdb_regs, struct task_struct *task) return; /* Initialize to zero */ - for (regno = 0; regno < DBG_MAX_REG_NUM; regno++) + for (regno = 0; regno < GDB_MAX_REGS; regno++) gdb_regs[regno] = 0; /* Otherwise, we have only some registers from switch_to() */ diff --git a/trunk/arch/arm/kernel/machine_kexec.c b/trunk/arch/arm/kernel/machine_kexec.c index 1fc74cbd1a19..3a8fd5140d7a 100644 --- a/trunk/arch/arm/kernel/machine_kexec.c +++ b/trunk/arch/arm/kernel/machine_kexec.c @@ -78,7 +78,10 @@ void machine_kexec(struct kimage *image) local_fiq_disable(); setup_mm_for_reboot(0); /* mode is not used, so just pass 0*/ flush_cache_all(); + outer_flush_all(); + outer_disable(); cpu_proc_fin(); + outer_inv_all(); flush_cache_all(); cpu_reset(reboot_code_buffer_phys); } diff --git a/trunk/arch/arm/kernel/perf_event.c b/trunk/arch/arm/kernel/perf_event.c index 49643b1467e6..07a50357492a 100644 --- a/trunk/arch/arm/kernel/perf_event.c +++ b/trunk/arch/arm/kernel/perf_event.c @@ -1749,7 +1749,7 @@ static inline int armv7_pmnc_has_overflowed(unsigned long pmnc) static inline int armv7_pmnc_counter_has_overflowed(unsigned long pmnc, enum armv7_counters counter) { - int ret; + int ret = 0; if (counter == ARMV7_CYCLE_COUNTER) ret = pmnc & ARMV7_FLAG_C; diff --git a/trunk/arch/arm/kernel/stacktrace.c b/trunk/arch/arm/kernel/stacktrace.c index 20b7411e47fd..c2e112e1a05f 100644 --- a/trunk/arch/arm/kernel/stacktrace.c +++ b/trunk/arch/arm/kernel/stacktrace.c @@ -28,7 +28,7 @@ int notrace unwind_frame(struct stackframe *frame) /* only go to a higher address on the stack */ low = frame->sp; - high = ALIGN(low, THREAD_SIZE) + THREAD_SIZE; + high = ALIGN(low, THREAD_SIZE); /* check current frame pointer is within bounds */ if (fp < (low + 12) || fp + 4 >= high) diff --git a/trunk/arch/arm/kernel/traps.c b/trunk/arch/arm/kernel/traps.c index cda78d59aa31..446aee97436f 100644 --- a/trunk/arch/arm/kernel/traps.c +++ b/trunk/arch/arm/kernel/traps.c @@ -53,10 +53,7 @@ static void dump_mem(const char *, const char *, unsigned long, unsigned long); void dump_backtrace_entry(unsigned long where, unsigned long from, unsigned long frame) { #ifdef CONFIG_KALLSYMS - char sym1[KSYM_SYMBOL_LEN], sym2[KSYM_SYMBOL_LEN]; - sprint_symbol(sym1, where); - sprint_symbol(sym2, from); - printk("[<%08lx>] (%s) from [<%08lx>] (%s)\n", where, sym1, from, sym2); + printk("[<%08lx>] (%pS) from [<%08lx>] (%pS)\n", where, (void *)where, from, (void *)from); #else printk("Function entered at [<%08lx>] from [<%08lx>]\n", where, from); #endif diff --git a/trunk/arch/arm/kernel/unwind.c b/trunk/arch/arm/kernel/unwind.c index 2a161765f6d5..d2cb0b3c9872 100644 --- a/trunk/arch/arm/kernel/unwind.c +++ b/trunk/arch/arm/kernel/unwind.c @@ -279,7 +279,7 @@ int unwind_frame(struct stackframe *frame) /* only go to a higher address on the stack */ low = frame->sp; - high = ALIGN(low, THREAD_SIZE) + THREAD_SIZE; + high = ALIGN(low, THREAD_SIZE); pr_debug("%s(pc = %08lx lr = %08lx sp = %08lx)\n", __func__, frame->pc, frame->lr, frame->sp); diff --git a/trunk/arch/arm/kernel/vmlinux.lds.S b/trunk/arch/arm/kernel/vmlinux.lds.S index 1953e3d21abf..cead8893b46b 100644 --- a/trunk/arch/arm/kernel/vmlinux.lds.S +++ b/trunk/arch/arm/kernel/vmlinux.lds.S @@ -113,6 +113,7 @@ SECTIONS *(.rodata.*) *(.glue_7) *(.glue_7t) + . = ALIGN(4); *(.got) /* Global offset table */ ARM_CPU_KEEP(PROC_INFO) } diff --git a/trunk/arch/arm/mach-ep93xx/include/mach/dma.h b/trunk/arch/arm/mach-ep93xx/include/mach/dma.h index 3a5961d3f3b1..5e31b2b25da9 100644 --- a/trunk/arch/arm/mach-ep93xx/include/mach/dma.h +++ b/trunk/arch/arm/mach-ep93xx/include/mach/dma.h @@ -1,5 +1,13 @@ -/* - * arch/arm/mach-ep93xx/include/mach/dma.h +/** + * DOC: EP93xx DMA M2P memory to peripheral and peripheral to memory engine + * + * The EP93xx DMA M2P subsystem handles DMA transfers between memory and + * peripherals. DMA M2P channels are available for audio, UARTs and IrDA. + * See chapter 10 of the EP93xx users guide for full details on the DMA M2P + * engine. + * + * See sound/soc/ep93xx/ep93xx-pcm.c for an example use of the DMA M2P code. + * */ #ifndef __ASM_ARCH_DMA_H @@ -8,12 +16,34 @@ #include #include +/** + * struct ep93xx_dma_buffer - Information about a buffer to be transferred + * using the DMA M2P engine + * + * @list: Entry in DMA buffer list + * @bus_addr: Physical address of the buffer + * @size: Size of the buffer in bytes + */ struct ep93xx_dma_buffer { struct list_head list; u32 bus_addr; u16 size; }; +/** + * struct ep93xx_dma_m2p_client - Information about a DMA M2P client + * + * @name: Unique name for this client + * @flags: Client flags + * @cookie: User data to pass to callback functions + * @buffer_started: Non NULL function to call when a transfer is started. + * The arguments are the user data cookie and the DMA + * buffer which is starting. + * @buffer_finished: Non NULL function to call when a transfer is completed. + * The arguments are the user data cookie, the DMA buffer + * which has completed, and a boolean flag indicating if + * the transfer had an error. + */ struct ep93xx_dma_m2p_client { char *name; u8 flags; @@ -24,10 +54,11 @@ struct ep93xx_dma_m2p_client { struct ep93xx_dma_buffer *buf, int bytes, int error); - /* Internal to the DMA code. */ + /* private: Internal use only */ void *channel; }; +/* DMA M2P ports */ #define EP93XX_DMA_M2P_PORT_I2S1 0x00 #define EP93XX_DMA_M2P_PORT_I2S2 0x01 #define EP93XX_DMA_M2P_PORT_AAC1 0x02 @@ -39,18 +70,80 @@ struct ep93xx_dma_m2p_client { #define EP93XX_DMA_M2P_PORT_UART3 0x08 #define EP93XX_DMA_M2P_PORT_IRDA 0x09 #define EP93XX_DMA_M2P_PORT_MASK 0x0f -#define EP93XX_DMA_M2P_TX 0x00 -#define EP93XX_DMA_M2P_RX 0x10 -#define EP93XX_DMA_M2P_ABORT_ON_ERROR 0x20 -#define EP93XX_DMA_M2P_IGNORE_ERROR 0x40 -#define EP93XX_DMA_M2P_ERROR_MASK 0x60 -int ep93xx_dma_m2p_client_register(struct ep93xx_dma_m2p_client *m2p); +/* DMA M2P client flags */ +#define EP93XX_DMA_M2P_TX 0x00 /* Memory to peripheral */ +#define EP93XX_DMA_M2P_RX 0x10 /* Peripheral to memory */ + +/* + * DMA M2P client error handling flags. See the EP93xx users guide + * documentation on the DMA M2P CONTROL register for more details + */ +#define EP93XX_DMA_M2P_ABORT_ON_ERROR 0x20 /* Abort on peripheral error */ +#define EP93XX_DMA_M2P_IGNORE_ERROR 0x40 /* Ignore peripheral errors */ +#define EP93XX_DMA_M2P_ERROR_MASK 0x60 /* Mask of error bits */ + +/** + * ep93xx_dma_m2p_client_register - Register a client with the DMA M2P + * subsystem + * + * @m2p: Client information to register + * returns 0 on success + * + * The DMA M2P subsystem allocates a channel and an interrupt line for the DMA + * client + */ +int ep93xx_dma_m2p_client_register(struct ep93xx_dma_m2p_client *m2p); + +/** + * ep93xx_dma_m2p_client_unregister - Unregister a client from the DMA M2P + * subsystem + * + * @m2p: Client to unregister + * + * Any transfers currently in progress will be completed in hardware, but + * ignored in software. + */ void ep93xx_dma_m2p_client_unregister(struct ep93xx_dma_m2p_client *m2p); + +/** + * ep93xx_dma_m2p_submit - Submit a DMA M2P transfer + * + * @m2p: DMA Client to submit the transfer on + * @buf: DMA Buffer to submit + * + * If the current or next transfer positions are free on the M2P client then + * the transfer is started immediately. If not, the transfer is added to the + * list of pending transfers. This function must not be called from the + * buffer_finished callback for an M2P channel. + * + */ void ep93xx_dma_m2p_submit(struct ep93xx_dma_m2p_client *m2p, struct ep93xx_dma_buffer *buf); + +/** + * ep93xx_dma_m2p_submit_recursive - Put a DMA transfer on the pending list + * for an M2P channel + * + * @m2p: DMA Client to submit the transfer on + * @buf: DMA Buffer to submit + * + * This function must only be called from the buffer_finished callback for an + * M2P channel. It is commonly used to add the next transfer in a chained list + * of DMA transfers. + */ void ep93xx_dma_m2p_submit_recursive(struct ep93xx_dma_m2p_client *m2p, struct ep93xx_dma_buffer *buf); + +/** + * ep93xx_dma_m2p_flush - Flush all pending transfers on a DMA M2P client + * + * @m2p: DMA client to flush transfers on + * + * Any transfers currently in progress will be completed in hardware, but + * ignored in software. + * + */ void ep93xx_dma_m2p_flush(struct ep93xx_dma_m2p_client *m2p); #endif /* __ASM_ARCH_DMA_H */ diff --git a/trunk/arch/arm/mach-imx/mach-mx27_3ds.c b/trunk/arch/arm/mach-imx/mach-mx27_3ds.c index b8bbd31aa850..84a5ba03f1ba 100644 --- a/trunk/arch/arm/mach-imx/mach-mx27_3ds.c +++ b/trunk/arch/arm/mach-imx/mach-mx27_3ds.c @@ -23,16 +23,20 @@ #include #include #include +#include #include #include #include #include #include #include +#include #include "devices-imx27.h" #include "devices.h" +#define SD1_EN_GPIO (GPIO_PORTB + 25) + static const int mx27pdk_pins[] __initconst = { /* UART1 */ PE12_PF_UART1_TXD, @@ -58,6 +62,14 @@ static const int mx27pdk_pins[] __initconst = { PD15_AOUT_FEC_COL, PD16_AIN_FEC_TX_ER, PF23_AIN_FEC_TX_EN, + /* SDHC1 */ + PE18_PF_SD1_D0, + PE19_PF_SD1_D1, + PE20_PF_SD1_D2, + PE21_PF_SD1_D3, + PE22_PF_SD1_CMD, + PE23_PF_SD1_CLK, + SD1_EN_GPIO | GPIO_GPIO | GPIO_OUT, }; static const struct imxuart_platform_data uart_pdata __initconst = { @@ -85,13 +97,39 @@ static struct matrix_keymap_data mx27_3ds_keymap_data = { .keymap_size = ARRAY_SIZE(mx27_3ds_keymap), }; +static int mx27_3ds_sdhc1_init(struct device *dev, irq_handler_t detect_irq, + void *data) +{ + return request_irq(IRQ_GPIOB(26), detect_irq, IRQF_TRIGGER_FALLING | + IRQF_TRIGGER_RISING, "sdhc1-card-detect", data); +} + +static void mx27_3ds_sdhc1_exit(struct device *dev, void *data) +{ + free_irq(IRQ_GPIOB(26), data); +} + +static struct imxmmc_platform_data sdhc1_pdata = { + .init = mx27_3ds_sdhc1_init, + .exit = mx27_3ds_sdhc1_exit, +}; + +static void mx27_3ds_sdhc1_enable_level_translator(void) +{ + /* Turn on TXB0108 OE pin */ + gpio_request(SD1_EN_GPIO, "sd1_enable"); + gpio_direction_output(SD1_EN_GPIO, 1); +} + static void __init mx27pdk_init(void) { mxc_gpio_setup_multiple_pins(mx27pdk_pins, ARRAY_SIZE(mx27pdk_pins), "mx27pdk"); + mx27_3ds_sdhc1_enable_level_translator(); imx27_add_imx_uart0(&uart_pdata); imx27_add_fec(NULL); mxc_register_device(&imx_kpp_device, &mx27_3ds_keymap_data); + mxc_register_device(&mxc_sdhc_device0, &sdhc1_pdata); } static void __init mx27pdk_timer_init(void) diff --git a/trunk/arch/arm/mach-ixp2000/core.c b/trunk/arch/arm/mach-ixp2000/core.c index babb22597163..e24e3d05397f 100644 --- a/trunk/arch/arm/mach-ixp2000/core.c +++ b/trunk/arch/arm/mach-ixp2000/core.c @@ -197,7 +197,7 @@ unsigned long ixp2000_gettimeoffset (void) return offset / ticks_per_usec; } -static int ixp2000_timer_interrupt(int irq, void *dev_id) +static irqreturn_t ixp2000_timer_interrupt(int irq, void *dev_id) { /* clear timer 1 */ ixp2000_reg_wrb(IXP2000_T1_CLR, 1); diff --git a/trunk/arch/arm/mach-kirkwood/common.c b/trunk/arch/arm/mach-kirkwood/common.c index 51ff23b72d3a..3688123b5ad8 100644 --- a/trunk/arch/arm/mach-kirkwood/common.c +++ b/trunk/arch/arm/mach-kirkwood/common.c @@ -854,10 +854,9 @@ int __init kirkwood_find_tclk(void) kirkwood_pcie_id(&dev, &rev); - if ((dev == MV88F6281_DEV_ID && (rev == MV88F6281_REV_A0 || - rev == MV88F6281_REV_A1)) || - (dev == MV88F6282_DEV_ID)) - return 200000000; + if (dev == MV88F6281_DEV_ID || dev == MV88F6282_DEV_ID) + if (((readl(SAMPLE_AT_RESET) >> 21) & 1) == 0) + return 200000000; return 166666667; } diff --git a/trunk/arch/arm/mach-kirkwood/d2net_v2-setup.c b/trunk/arch/arm/mach-kirkwood/d2net_v2-setup.c index 4aa86e4a152c..a31c9499ab36 100644 --- a/trunk/arch/arm/mach-kirkwood/d2net_v2-setup.c +++ b/trunk/arch/arm/mach-kirkwood/d2net_v2-setup.c @@ -225,5 +225,5 @@ MACHINE_START(D2NET_V2, "LaCie d2 Network v2") .init_machine = d2net_v2_init, .map_io = kirkwood_map_io, .init_irq = kirkwood_init_irq, - .timer = &lacie_v2_timer, + .timer = &kirkwood_timer, MACHINE_END diff --git a/trunk/arch/arm/mach-kirkwood/lacie_v2-common.c b/trunk/arch/arm/mach-kirkwood/lacie_v2-common.c index d3ea1b6c8a02..285edab776e9 100644 --- a/trunk/arch/arm/mach-kirkwood/lacie_v2-common.c +++ b/trunk/arch/arm/mach-kirkwood/lacie_v2-common.c @@ -111,17 +111,3 @@ void __init lacie_v2_hdd_power_init(int hdd_num) pr_err("Failed to power up HDD%d\n", i + 1); } } - -/***************************************************************************** - * Timer - ****************************************************************************/ - -static void lacie_v2_timer_init(void) -{ - kirkwood_tclk = 166666667; - orion_time_init(IRQ_KIRKWOOD_BRIDGE, kirkwood_tclk); -} - -struct sys_timer lacie_v2_timer = { - .init = lacie_v2_timer_init, -}; diff --git a/trunk/arch/arm/mach-kirkwood/lacie_v2-common.h b/trunk/arch/arm/mach-kirkwood/lacie_v2-common.h index af521315b87b..fc64f578536e 100644 --- a/trunk/arch/arm/mach-kirkwood/lacie_v2-common.h +++ b/trunk/arch/arm/mach-kirkwood/lacie_v2-common.h @@ -13,6 +13,4 @@ void lacie_v2_register_flash(void); void lacie_v2_register_i2c_devices(void); void lacie_v2_hdd_power_init(int hdd_num); -extern struct sys_timer lacie_v2_timer; - #endif diff --git a/trunk/arch/arm/mach-kirkwood/mpp.c b/trunk/arch/arm/mach-kirkwood/mpp.c index 065187d177c6..27901f702feb 100644 --- a/trunk/arch/arm/mach-kirkwood/mpp.c +++ b/trunk/arch/arm/mach-kirkwood/mpp.c @@ -59,7 +59,7 @@ void __init kirkwood_mpp_conf(unsigned int *mpp_list) } printk("\n"); - while (*mpp_list) { + for ( ; *mpp_list; mpp_list++) { unsigned int num = MPP_NUM(*mpp_list); unsigned int sel = MPP_SEL(*mpp_list); int shift, gpio_mode; @@ -88,8 +88,6 @@ void __init kirkwood_mpp_conf(unsigned int *mpp_list) if (sel != 0) gpio_mode = 0; orion_gpio_set_valid(num, gpio_mode); - - mpp_list++; } printk(KERN_DEBUG " final MPP regs:"); diff --git a/trunk/arch/arm/mach-kirkwood/netspace_v2-setup.c b/trunk/arch/arm/mach-kirkwood/netspace_v2-setup.c index 5ea66f1f4178..65ee21fd2f3b 100644 --- a/trunk/arch/arm/mach-kirkwood/netspace_v2-setup.c +++ b/trunk/arch/arm/mach-kirkwood/netspace_v2-setup.c @@ -262,7 +262,7 @@ MACHINE_START(NETSPACE_V2, "LaCie Network Space v2") .init_machine = netspace_v2_init, .map_io = kirkwood_map_io, .init_irq = kirkwood_init_irq, - .timer = &lacie_v2_timer, + .timer = &kirkwood_timer, MACHINE_END #endif @@ -272,7 +272,7 @@ MACHINE_START(INETSPACE_V2, "LaCie Internet Space v2") .init_machine = netspace_v2_init, .map_io = kirkwood_map_io, .init_irq = kirkwood_init_irq, - .timer = &lacie_v2_timer, + .timer = &kirkwood_timer, MACHINE_END #endif @@ -282,6 +282,6 @@ MACHINE_START(NETSPACE_MAX_V2, "LaCie Network Space Max v2") .init_machine = netspace_v2_init, .map_io = kirkwood_map_io, .init_irq = kirkwood_init_irq, - .timer = &lacie_v2_timer, + .timer = &kirkwood_timer, MACHINE_END #endif diff --git a/trunk/arch/arm/mach-kirkwood/netxbig_v2-setup.c b/trunk/arch/arm/mach-kirkwood/netxbig_v2-setup.c index a1b45d501aef..93afd3c8bfd8 100644 --- a/trunk/arch/arm/mach-kirkwood/netxbig_v2-setup.c +++ b/trunk/arch/arm/mach-kirkwood/netxbig_v2-setup.c @@ -403,7 +403,7 @@ MACHINE_START(NET2BIG_V2, "LaCie 2Big Network v2") .init_machine = netxbig_v2_init, .map_io = kirkwood_map_io, .init_irq = kirkwood_init_irq, - .timer = &lacie_v2_timer, + .timer = &kirkwood_timer, MACHINE_END #endif @@ -413,6 +413,6 @@ MACHINE_START(NET5BIG_V2, "LaCie 5Big Network v2") .init_machine = netxbig_v2_init, .map_io = kirkwood_map_io, .init_irq = kirkwood_init_irq, - .timer = &lacie_v2_timer, + .timer = &kirkwood_timer, MACHINE_END #endif diff --git a/trunk/arch/arm/mach-kirkwood/ts41x-setup.c b/trunk/arch/arm/mach-kirkwood/ts41x-setup.c index 8be09a0ce4ac..3587a281d993 100644 --- a/trunk/arch/arm/mach-kirkwood/ts41x-setup.c +++ b/trunk/arch/arm/mach-kirkwood/ts41x-setup.c @@ -27,6 +27,10 @@ #include "mpp.h" #include "tsx1x-common.h" +/* for the PCIe reset workaround */ +#include + + #define QNAP_TS41X_JUMPER_JP1 45 static struct i2c_board_info __initdata qnap_ts41x_i2c_rtc = { @@ -140,8 +144,16 @@ static void __init qnap_ts41x_init(void) static int __init ts41x_pci_init(void) { - if (machine_is_ts41x()) + if (machine_is_ts41x()) { + /* + * Without this explicit reset, the PCIe SATA controller + * (Marvell 88sx7042/sata_mv) is known to stop working + * after a few minutes. + */ + orion_pcie_reset((void __iomem *)PCIE_VIRT_BASE); + kirkwood_pcie_init(KW_PCIE0); + } return 0; } diff --git a/trunk/arch/arm/mach-mmp/include/mach/cputype.h b/trunk/arch/arm/mach-mmp/include/mach/cputype.h index f43a68b213f1..8a3b56dfd35d 100644 --- a/trunk/arch/arm/mach-mmp/include/mach/cputype.h +++ b/trunk/arch/arm/mach-mmp/include/mach/cputype.h @@ -46,7 +46,8 @@ static inline int cpu_is_pxa910(void) #ifdef CONFIG_CPU_MMP2 static inline int cpu_is_mmp2(void) { - return (((cpu_readid_id() >> 8) & 0xff) == 0x58); + return (((read_cpuid_id() >> 8) & 0xff) == 0x58); +} #else #define cpu_is_mmp2() (0) #endif diff --git a/trunk/arch/arm/mach-msm/Kconfig b/trunk/arch/arm/mach-msm/Kconfig index 3115a29dec4e..dbbcfeb919db 100644 --- a/trunk/arch/arm/mach-msm/Kconfig +++ b/trunk/arch/arm/mach-msm/Kconfig @@ -6,6 +6,7 @@ choice config ARCH_MSM7X00A bool "MSM7x00A / MSM7x01A" + select MACH_TROUT if !MACH_HALIBUT select ARCH_MSM_ARM11 select MSM_SMD select MSM_SMD_PKG3 @@ -15,34 +16,34 @@ config ARCH_MSM7X00A config ARCH_MSM7X30 bool "MSM7x30" + select MACH_MSM7X30_SURF # if ! select ARCH_MSM_SCORPION select MSM_SMD select MSM_VIC select CPU_V7 - select MSM_REMOTE_SPINLOCK_DEKKERS select MSM_GPIOMUX select MSM_PROC_COMM select HAS_MSM_DEBUG_UART_PHYS config ARCH_QSD8X50 bool "QSD8X50" + select MACH_QSD8X50_SURF if !MACH_QSD8X50A_ST1_5 select ARCH_MSM_SCORPION select MSM_SMD select MSM_VIC select CPU_V7 - select MSM_REMOTE_SPINLOCK_LDREX select MSM_GPIOMUX select MSM_PROC_COMM select HAS_MSM_DEBUG_UART_PHYS config ARCH_MSM8X60 bool "MSM8X60" + select MACH_MSM8X60_SURF if (!MACH_MSM8X60_RUMI3 && !MACH_MSM8X60_SIM \ + && !MACH_MSM8X60_FFA) select ARM_GIC select CPU_V7 select MSM_V2_TLMM select MSM_GPIOMUX - select MACH_MSM8X60_SURF if (!MACH_MSM8X60_RUMI3 && !MACH_MSM8X60_SIM \ - && !MACH_MSM8X60_FFA) endchoice diff --git a/trunk/arch/arm/mach-msm/board-halibut.c b/trunk/arch/arm/mach-msm/board-halibut.c index 59edecbe126c..75dabb16c802 100644 --- a/trunk/arch/arm/mach-msm/board-halibut.c +++ b/trunk/arch/arm/mach-msm/board-halibut.c @@ -83,7 +83,6 @@ static void __init halibut_fixup(struct machine_desc *desc, struct tag *tags, { mi->nr_banks=1; mi->bank[0].start = PHYS_OFFSET; - mi->bank[0].node = PHYS_TO_NID(PHYS_OFFSET); mi->bank[0].size = (101*1024*1024); } diff --git a/trunk/arch/arm/mach-msm/include/mach/debug-macro.S b/trunk/arch/arm/mach-msm/include/mach/debug-macro.S index fbd5d90dcc8c..646b99ebc773 100644 --- a/trunk/arch/arm/mach-msm/include/mach/debug-macro.S +++ b/trunk/arch/arm/mach-msm/include/mach/debug-macro.S @@ -19,7 +19,7 @@ #include #include -#ifdef CONFIG_HAS_MSM_DEBUG_UART_PHYS +#if defined(CONFIG_HAS_MSM_DEBUG_UART_PHYS) && !defined(CONFIG_MSM_DEBUG_UART_NONE) .macro addruart, rp, rv ldr \rp, =MSM_DEBUG_UART_PHYS ldr \rv, =MSM_DEBUG_UART_BASE @@ -36,7 +36,18 @@ tst \rd, #0x04 beq 1001b .endm +#else + .macro addruart, rp, rv + mov \rv, #0xff000000 + orr \rv, \rv, #0x00f00000 + .endm - .macro busyuart,rd,rx + .macro senduart,rd,rx + .endm + + .macro waituart,rd,rx .endm #endif + + .macro busyuart,rd,rx + .endm diff --git a/trunk/arch/arm/mach-msm/iommu_dev.c b/trunk/arch/arm/mach-msm/iommu_dev.c index c33ae786c41f..9019cee2907b 100644 --- a/trunk/arch/arm/mach-msm/iommu_dev.c +++ b/trunk/arch/arm/mach-msm/iommu_dev.c @@ -128,7 +128,7 @@ static void msm_iommu_reset(void __iomem *base) static int msm_iommu_probe(struct platform_device *pdev) { - struct resource *r; + struct resource *r, *r2; struct clk *iommu_clk; struct msm_iommu_drvdata *drvdata; struct msm_iommu_dev *iommu_dev = pdev->dev.platform_data; @@ -183,27 +183,27 @@ static int msm_iommu_probe(struct platform_device *pdev) len = r->end - r->start + 1; - r = request_mem_region(r->start, len, r->name); - if (!r) { + r2 = request_mem_region(r->start, len, r->name); + if (!r2) { pr_err("Could not request memory region: " "start=%p, len=%d\n", (void *) r->start, len); ret = -EBUSY; goto fail; } - regs_base = ioremap(r->start, len); + regs_base = ioremap(r2->start, len); if (!regs_base) { pr_err("Could not ioremap: start=%p, len=%d\n", - (void *) r->start, len); + (void *) r2->start, len); ret = -EBUSY; - goto fail; + goto fail_mem; } irq = platform_get_irq_byname(pdev, "secure_irq"); if (irq < 0) { ret = -ENODEV; - goto fail; + goto fail_io; } mb(); @@ -211,14 +211,14 @@ static int msm_iommu_probe(struct platform_device *pdev) if (GET_IDR(regs_base) == 0) { pr_err("Invalid IDR value detected\n"); ret = -ENODEV; - goto fail; + goto fail_io; } ret = request_irq(irq, msm_iommu_fault_handler, 0, "msm_iommu_secure_irpt_handler", drvdata); if (ret) { pr_err("Request IRQ %d failed with ret=%d\n", irq, ret); - goto fail; + goto fail_io; } msm_iommu_reset(regs_base); @@ -237,6 +237,10 @@ static int msm_iommu_probe(struct platform_device *pdev) return 0; +fail_io: + iounmap(regs_base); +fail_mem: + release_mem_region(r->start, len); fail: kfree(drvdata); return ret; diff --git a/trunk/arch/arm/mach-msm/timer.c b/trunk/arch/arm/mach-msm/timer.c index 7689848ec680..950100f19d07 100644 --- a/trunk/arch/arm/mach-msm/timer.c +++ b/trunk/arch/arm/mach-msm/timer.c @@ -137,7 +137,7 @@ static struct msm_clock msm_clocks[] = { .rating = 200, .read = msm_gpt_read, .mask = CLOCKSOURCE_MASK(32), - .shift = 24, + .shift = 17, .flags = CLOCK_SOURCE_IS_CONTINUOUS, }, .irq = { diff --git a/trunk/arch/arm/mach-mv78xx0/mpp.c b/trunk/arch/arm/mach-mv78xx0/mpp.c index 354ac514eb89..84db2dfc475c 100644 --- a/trunk/arch/arm/mach-mv78xx0/mpp.c +++ b/trunk/arch/arm/mach-mv78xx0/mpp.c @@ -54,7 +54,7 @@ void __init mv78xx0_mpp_conf(unsigned int *mpp_list) } printk("\n"); - while (*mpp_list) { + for ( ; *mpp_list; mpp_list++) { unsigned int num = MPP_NUM(*mpp_list); unsigned int sel = MPP_SEL(*mpp_list); int shift, gpio_mode; @@ -83,8 +83,6 @@ void __init mv78xx0_mpp_conf(unsigned int *mpp_list) if (sel != 0) gpio_mode = 0; orion_gpio_set_valid(num, gpio_mode); - - mpp_list++; } printk(KERN_DEBUG " final MPP regs:"); diff --git a/trunk/arch/arm/mach-mx25/Kconfig b/trunk/arch/arm/mach-mx25/Kconfig index aa57e35ce3cd..38ca09a5df9d 100644 --- a/trunk/arch/arm/mach-mx25/Kconfig +++ b/trunk/arch/arm/mach-mx25/Kconfig @@ -6,6 +6,7 @@ config MACH_MX25_3DS bool "Support MX25PDK (3DS) Platform" select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_NAND + select IMX_HAVE_PLATFORM_ESDHC config MACH_EUKREA_CPUIMX25 bool "Support Eukrea CPUIMX25 Platform" diff --git a/trunk/arch/arm/mach-mx25/mach-mx25_3ds.c b/trunk/arch/arm/mach-mx25/mach-mx25_3ds.c index 80805107a73e..f8be1eb0c062 100644 --- a/trunk/arch/arm/mach-mx25/mach-mx25_3ds.c +++ b/trunk/arch/arm/mach-mx25/mach-mx25_3ds.c @@ -96,6 +96,14 @@ static struct pad_desc mx25pdk_pads[] = { MX25_PAD_KPP_COL1__KPP_COL1, MX25_PAD_KPP_COL2__KPP_COL2, MX25_PAD_KPP_COL3__KPP_COL3, + + /* SD1 */ + MX25_PAD_SD1_CMD__SD1_CMD, + MX25_PAD_SD1_CLK__SD1_CLK, + MX25_PAD_SD1_DATA0__SD1_DATA0, + MX25_PAD_SD1_DATA1__SD1_DATA1, + MX25_PAD_SD1_DATA2__SD1_DATA2, + MX25_PAD_SD1_DATA3__SD1_DATA3, }; static const struct fec_platform_data mx25_fec_pdata __initconst = { @@ -193,6 +201,8 @@ static void __init mx25pdk_init(void) mx25pdk_fec_reset(); imx25_add_fec(&mx25_fec_pdata); mxc_register_device(&mx25_kpp_device, &mx25pdk_keymap_data); + + imx25_add_esdhc(0, NULL); } static void __init mx25pdk_timer_init(void) diff --git a/trunk/arch/arm/mach-mx3/Kconfig b/trunk/arch/arm/mach-mx3/Kconfig index 096fd33f8ab9..5000ac1f93e3 100644 --- a/trunk/arch/arm/mach-mx3/Kconfig +++ b/trunk/arch/arm/mach-mx3/Kconfig @@ -143,8 +143,10 @@ config MACH_ARMADILLO5X0 config MACH_MX35_3DS bool "Support MX35PDK platform" select ARCH_MX35 + select MXC_DEBUG_BOARD select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_NAND + select IMX_HAVE_PLATFORM_ESDHC default n help Include support for MX35PDK platform. This includes specific diff --git a/trunk/arch/arm/mach-mx3/devices.c b/trunk/arch/arm/mach-mx3/devices.c index f4dff11aaee7..d4da9496089a 100644 --- a/trunk/arch/arm/mach-mx3/devices.c +++ b/trunk/arch/arm/mach-mx3/devices.c @@ -72,24 +72,24 @@ struct platform_device mxc_w1_master_device = { #ifdef CONFIG_ARCH_MX31 static struct resource mxcsdhc0_resources[] = { { - .start = MMC_SDHC1_BASE_ADDR, - .end = MMC_SDHC1_BASE_ADDR + SZ_16K - 1, + .start = MX31_MMC_SDHC1_BASE_ADDR, + .end = MX31_MMC_SDHC1_BASE_ADDR + SZ_16K - 1, .flags = IORESOURCE_MEM, }, { - .start = MXC_INT_MMC_SDHC1, - .end = MXC_INT_MMC_SDHC1, + .start = MX31_INT_MMC_SDHC1, + .end = MX31_INT_MMC_SDHC1, .flags = IORESOURCE_IRQ, }, }; static struct resource mxcsdhc1_resources[] = { { - .start = MMC_SDHC2_BASE_ADDR, - .end = MMC_SDHC2_BASE_ADDR + SZ_16K - 1, + .start = MX31_MMC_SDHC2_BASE_ADDR, + .end = MX31_MMC_SDHC2_BASE_ADDR + SZ_16K - 1, .flags = IORESOURCE_MEM, }, { - .start = MXC_INT_MMC_SDHC2, - .end = MXC_INT_MMC_SDHC2, + .start = MX31_INT_MMC_SDHC2, + .end = MX31_INT_MMC_SDHC2, .flags = IORESOURCE_IRQ, }, }; diff --git a/trunk/arch/arm/mach-mx3/mach-mx31_3ds.c b/trunk/arch/arm/mach-mx3/mach-mx31_3ds.c index 5c1d0e86c91e..0ad9e7821082 100644 --- a/trunk/arch/arm/mach-mx3/mach-mx31_3ds.c +++ b/trunk/arch/arm/mach-mx3/mach-mx31_3ds.c @@ -38,39 +38,9 @@ #include "devices-imx31.h" #include "devices.h" -/* Definitions for components on the Debug board */ - -/* Base address of CPLD controller on the Debug board */ -#define DEBUG_BASE_ADDRESS CS5_IO_ADDRESS(MX3x_CS5_BASE_ADDR) - -/* LAN9217 ethernet base address */ -#define LAN9217_BASE_ADDR MX3x_CS5_BASE_ADDR - -/* CPLD config and interrupt base address */ -#define CPLD_ADDR (DEBUG_BASE_ADDRESS + 0x20000) - -/* status, interrupt */ -#define CPLD_INT_STATUS_REG (CPLD_ADDR + 0x10) -#define CPLD_INT_MASK_REG (CPLD_ADDR + 0x38) -#define CPLD_INT_RESET_REG (CPLD_ADDR + 0x20) -/* magic word for debug CPLD */ -#define CPLD_MAGIC_NUMBER1_REG (CPLD_ADDR + 0x40) -#define CPLD_MAGIC_NUMBER2_REG (CPLD_ADDR + 0x48) -/* CPLD code version */ -#define CPLD_CODE_VER_REG (CPLD_ADDR + 0x50) -/* magic word for debug CPLD */ -#define CPLD_MAGIC_NUMBER3_REG (CPLD_ADDR + 0x58) - /* CPLD IRQ line for external uart, external ethernet etc */ #define EXPIO_PARENT_INT IOMUX_TO_IRQ(MX31_PIN_GPIO1_1) -#define MXC_EXP_IO_BASE (MXC_BOARD_IRQ_START) -#define MXC_IRQ_TO_EXPIO(irq) ((irq) - MXC_EXP_IO_BASE) - -#define EXPIO_INT_ENET (MXC_EXP_IO_BASE + 0) - -#define MXC_MAX_EXP_IO_LINES 16 - /* * This file contains the board-specific initialization routines. */ @@ -272,7 +242,7 @@ static void __init mxc_board_init(void) imx31_add_imx_uart0(&uart_pdata); imx31_add_mxc_nand(&mx31_3ds_nand_board_info); - imx31_add_spi_imx0(&spi1_pdata); + imx31_add_spi_imx1(&spi1_pdata); spi_register_board_info(mx31_3ds_spi_devs, ARRAY_SIZE(mx31_3ds_spi_devs)); @@ -281,9 +251,9 @@ static void __init mxc_board_init(void) mx31_3ds_usbotg_init(); mxc_register_device(&mxc_otg_udc_device, &usbotg_pdata); - if (!mxc_expio_init(CS5_BASE_ADDR, EXPIO_PARENT_INT)) - printk(KERN_WARNING "Init of the debugboard failed, all " - "devices on the board are unusable.\n"); + if (mxc_expio_init(MX31_CS5_BASE_ADDR, EXPIO_PARENT_INT)) + printk(KERN_WARNING "Init of the debug board failed, all " + "devices on the debug board are unusable.\n"); } static void __init mx31_3ds_timer_init(void) diff --git a/trunk/arch/arm/mach-mx3/mach-mx35_3ds.c b/trunk/arch/arm/mach-mx3/mach-mx35_3ds.c index 05f628d90725..b66a75aa2e88 100644 --- a/trunk/arch/arm/mach-mx3/mach-mx35_3ds.c +++ b/trunk/arch/arm/mach-mx3/mach-mx35_3ds.c @@ -38,11 +38,15 @@ #include #include #include +#include +#include #include #include "devices-imx35.h" #include "devices.h" +#define EXPIO_PARENT_INT (MXC_INTERNAL_IRQS + GPIO_PORTA + 1) + static const struct imxuart_platform_data uart_pdata __initconst = { .flags = IMXUART_HAVE_RTSCTS, }; @@ -108,6 +112,13 @@ static struct pad_desc mx35pdk_pads[] = { /* USBH1 */ MX35_PAD_I2C2_CLK__USB_TOP_USBH2_PWR, MX35_PAD_I2C2_DAT__USB_TOP_USBH2_OC, + /* SDCARD */ + MX35_PAD_SD1_CMD__ESDHC1_CMD, + MX35_PAD_SD1_CLK__ESDHC1_CLK, + MX35_PAD_SD1_DATA0__ESDHC1_DAT0, + MX35_PAD_SD1_DATA1__ESDHC1_DAT1, + MX35_PAD_SD1_DATA2__ESDHC1_DAT2, + MX35_PAD_SD1_DATA3__ESDHC1_DAT3, }; /* OTG config */ @@ -140,6 +151,11 @@ static void __init mxc_board_init(void) mxc_register_device(&mxc_usbh1, &usb_host_pdata); imx35_add_mxc_nand(&mx35pdk_nand_board_info); + imx35_add_esdhc(0, NULL); + + if (mxc_expio_init(MX35_CS5_BASE_ADDR, EXPIO_PARENT_INT)) + pr_warn("Init of the debugboard failed, all " + "devices on the debugboard are unusable.\n"); } static void __init mx35pdk_timer_init(void) diff --git a/trunk/arch/arm/mach-mx5/Kconfig b/trunk/arch/arm/mach-mx5/Kconfig index a2df9ac37996..3ec910a7a182 100644 --- a/trunk/arch/arm/mach-mx5/Kconfig +++ b/trunk/arch/arm/mach-mx5/Kconfig @@ -6,6 +6,7 @@ config ARCH_MX51 select MXC_TZIC select ARCH_MXC_IOMUX_V3 select ARCH_MXC_AUDMUX_V2 + select ARCH_HAS_CPUFREQ comment "MX5 platforms:" @@ -13,6 +14,7 @@ config MACH_MX51_BABBAGE bool "Support MX51 BABBAGE platforms" select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART + select IMX_HAVE_PLATFORM_ESDHC help Include support for MX51 Babbage platform, also known as MX51EVK in u-boot. This includes specific configurations for the board and its diff --git a/trunk/arch/arm/mach-mx5/Makefile b/trunk/arch/arm/mach-mx5/Makefile index 1769c161a60d..462f177eddfe 100644 --- a/trunk/arch/arm/mach-mx5/Makefile +++ b/trunk/arch/arm/mach-mx5/Makefile @@ -5,6 +5,7 @@ # Object file lists. obj-y := cpu.o mm.o clock-mx51.o devices.o +obj-$(CONFIG_CPU_FREQ_IMX) += cpu_op-mx51.o obj-$(CONFIG_MACH_MX51_BABBAGE) += board-mx51_babbage.o obj-$(CONFIG_MACH_MX51_3DS) += board-mx51_3ds.o obj-$(CONFIG_MACH_EUKREA_CPUIMX51) += board-cpuimx51.o diff --git a/trunk/arch/arm/mach-mx5/board-mx51_babbage.c b/trunk/arch/arm/mach-mx5/board-mx51_babbage.c index 0821fe9b3b27..acbe30df2e69 100644 --- a/trunk/arch/arm/mach-mx5/board-mx51_babbage.c +++ b/trunk/arch/arm/mach-mx5/board-mx51_babbage.c @@ -1,5 +1,5 @@ /* - * Copyright 2009 Freescale Semiconductor, Inc. All Rights Reserved. + * Copyright 2009-2010 Freescale Semiconductor, Inc. All Rights Reserved. * Copyright (C) 2009-2010 Amit Kucheria * * The code contained herein is licensed under the GNU General Public @@ -18,6 +18,8 @@ #include #include #include +#include +#include #include #include @@ -32,11 +34,13 @@ #include "devices-imx51.h" #include "devices.h" +#include "cpu_op-mx51.h" #define BABBAGE_USB_HUB_RESET (0*32 + 7) /* GPIO_1_7 */ #define BABBAGE_USBH1_STP (0*32 + 27) /* GPIO_1_27 */ #define BABBAGE_PHY_RESET (1*32 + 5) /* GPIO_2_5 */ #define BABBAGE_FEC_PHY_RESET (1*32 + 14) /* GPIO_2_14 */ +#define BABBAGE_POWER_KEY (1*32 + 21) /* GPIO_2_21 */ /* USB_CTRL_1 */ #define MX51_USB_CTRL_1_OFFSET 0x10 @@ -46,6 +50,21 @@ #define MX51_USB_PLL_DIV_19_2_MHZ 0x01 #define MX51_USB_PLL_DIV_24_MHZ 0x02 +static struct gpio_keys_button babbage_buttons[] = { + { + .gpio = BABBAGE_POWER_KEY, + .code = BTN_0, + .desc = "PWR", + .active_low = 1, + .wakeup = 1, + }, +}; + +static const struct gpio_keys_platform_data imx_button_data __initconst = { + .buttons = babbage_buttons, + .nbuttons = ARRAY_SIZE(babbage_buttons), +}; + static struct pad_desc mx51babbage_pads[] = { /* UART1 */ MX51_PAD_UART1_RXD__UART1_RXD, @@ -112,6 +131,22 @@ static struct pad_desc mx51babbage_pads[] = { /* FEC PHY reset line */ MX51_PAD_EIM_A20__GPIO_2_14, + + /* SD 1 */ + MX51_PAD_SD1_CMD__SD1_CMD, + MX51_PAD_SD1_CLK__SD1_CLK, + MX51_PAD_SD1_DATA0__SD1_DATA0, + MX51_PAD_SD1_DATA1__SD1_DATA1, + MX51_PAD_SD1_DATA2__SD1_DATA2, + MX51_PAD_SD1_DATA3__SD1_DATA3, + + /* SD 2 */ + MX51_PAD_SD2_CMD__SD2_CMD, + MX51_PAD_SD2_CLK__SD2_CLK, + MX51_PAD_SD2_DATA0__SD2_DATA0, + MX51_PAD_SD2_DATA1__SD2_DATA1, + MX51_PAD_SD2_DATA2__SD2_DATA2, + MX51_PAD_SD2_DATA3__SD2_DATA3, }; /* Serial ports */ @@ -281,13 +316,22 @@ __setup("otg_mode=", babbage_otg_mode); static void __init mxc_board_init(void) { struct pad_desc usbh1stp = MX51_PAD_USBH1_STP__USBH1_STP; + struct pad_desc power_key = MX51_PAD_EIM_A27__GPIO_2_21; +#if defined(CONFIG_CPU_FREQ_IMX) + get_cpu_op = mx51_get_cpu_op; +#endif mxc_iomux_v3_setup_multiple_pads(mx51babbage_pads, ARRAY_SIZE(mx51babbage_pads)); mxc_init_imx_uart(); babbage_fec_reset(); imx51_add_fec(NULL); + /* Set the PAD settings for the pwr key. */ + power_key.pad_ctrl = MX51_GPIO_PAD_CTRL_2; + mxc_iomux_v3_setup_pad(&power_key); + imx51_add_gpio_keys(&imx_button_data); + imx51_add_imx_i2c(0, &babbage_i2c_data); imx51_add_imx_i2c(1, &babbage_i2c_data); mxc_register_device(&mxc_hsi2c_device, &babbage_hsi2c_data); @@ -304,6 +348,9 @@ static void __init mxc_board_init(void) /* setback USBH1_STP to be function */ mxc_iomux_v3_setup_pad(&usbh1stp); babbage_usbhub_reset(); + + imx51_add_esdhc(0, NULL); + imx51_add_esdhc(1, NULL); } static void __init mx51_babbage_timer_init(void) diff --git a/trunk/arch/arm/mach-mx5/clock-mx51.c b/trunk/arch/arm/mach-mx5/clock-mx51.c index f2aae92cf0e2..8ac36d882927 100644 --- a/trunk/arch/arm/mach-mx5/clock-mx51.c +++ b/trunk/arch/arm/mach-mx5/clock-mx51.c @@ -362,7 +362,7 @@ static int _clk_lp_apm_set_parent(struct clk *clk, struct clk *parent) return 0; } -static unsigned long clk_arm_get_rate(struct clk *clk) +static unsigned long clk_cpu_get_rate(struct clk *clk) { u32 cacrr, div; unsigned long parent_rate; @@ -374,6 +374,22 @@ static unsigned long clk_arm_get_rate(struct clk *clk) return parent_rate / div; } +static int clk_cpu_set_rate(struct clk *clk, unsigned long rate) +{ + u32 reg, cpu_podf; + unsigned long parent_rate; + + parent_rate = clk_get_rate(clk->parent); + cpu_podf = parent_rate / rate - 1; + /* use post divider to change freq */ + reg = __raw_readl(MXC_CCM_CACRR); + reg &= ~MXC_CCM_CACRR_ARM_PODF_MASK; + reg |= cpu_podf << MXC_CCM_CACRR_ARM_PODF_OFFSET; + __raw_writel(reg, MXC_CCM_CACRR); + + return 0; +} + static int _clk_periph_apm_set_parent(struct clk *clk, struct clk *parent) { u32 reg, mux; @@ -736,7 +752,8 @@ static struct clk periph_apm_clk = { static struct clk cpu_clk = { .parent = &pll1_sw_clk, - .get_rate = clk_arm_get_rate, + .get_rate = clk_cpu_get_rate, + .set_rate = clk_cpu_set_rate, }; static struct clk ahb_clk = { @@ -1064,6 +1081,7 @@ static struct clk_lookup lookups[] = { _REGISTER_CLOCK("imx51-cspi.0", NULL, cspi_clk) _REGISTER_CLOCK("sdhci-esdhc-imx.0", NULL, esdhc1_clk) _REGISTER_CLOCK("sdhci-esdhc-imx.1", NULL, esdhc2_clk) + _REGISTER_CLOCK(NULL, "cpu_clk", cpu_clk) }; static void clk_tree_init(void) diff --git a/trunk/arch/arm/mach-mx5/cpu_op-mx51.c b/trunk/arch/arm/mach-mx5/cpu_op-mx51.c new file mode 100644 index 000000000000..9d34c3d4c024 --- /dev/null +++ b/trunk/arch/arm/mach-mx5/cpu_op-mx51.c @@ -0,0 +1,29 @@ +/* + * Copyright (C) 2010 Freescale Semiconductor, Inc. All Rights Reserved. + */ + +/* + * The code contained herein is licensed under the GNU General Public + * License. You may obtain a copy of the GNU General Public License + * Version 2 or later at the following locations: + * + * http://www.opensource.org/licenses/gpl-license.html + * http://www.gnu.org/copyleft/gpl.html + */ + +#include +#include +#include + +static struct cpu_op mx51_cpu_op[] = { + { + .cpu_rate = 160000000,}, + { + .cpu_rate = 800000000,}, +}; + +struct cpu_op *mx51_get_cpu_op(int *op) +{ + *op = ARRAY_SIZE(mx51_cpu_op); + return mx51_cpu_op; +} diff --git a/trunk/arch/arm/mach-mx5/cpu_op-mx51.h b/trunk/arch/arm/mach-mx5/cpu_op-mx51.h new file mode 100644 index 000000000000..97477fecb469 --- /dev/null +++ b/trunk/arch/arm/mach-mx5/cpu_op-mx51.h @@ -0,0 +1,14 @@ +/* + * Copyright (C) 2010 Freescale Semiconductor, Inc. All Rights Reserved. + */ + +/* + * The code contained herein is licensed under the GNU General Public + * License. You may obtain a copy of the GNU General Public License + * Version 2 or later at the following locations: + * + * http://www.opensource.org/licenses/gpl-license.html + * http://www.gnu.org/copyleft/gpl.html + */ + +extern struct cpu_op *mx51_get_cpu_op(int *op); diff --git a/trunk/arch/arm/mach-mx5/devices-imx51.h b/trunk/arch/arm/mach-mx5/devices-imx51.h index 5cc910e60538..8c50cb5d05f5 100644 --- a/trunk/arch/arm/mach-mx5/devices-imx51.h +++ b/trunk/arch/arm/mach-mx5/devices-imx51.h @@ -13,6 +13,8 @@ extern const struct imx_fec_data imx51_fec_data __initconst; #define imx51_add_fec(pdata) \ imx_add_fec(&imx51_fec_data, pdata) +#define imx51_add_gpio_keys(pdata) imx_add_gpio_keys(pdata) + extern const struct imx_imx_i2c_data imx51_imx_i2c_data[] __initconst; #define imx51_add_imx_i2c(id, pdata) \ imx_add_imx_i2c(&imx51_imx_i2c_data[id], pdata) diff --git a/trunk/arch/arm/mach-omap2/omap4-common.c b/trunk/arch/arm/mach-omap2/omap4-common.c index 923f9f5f91ce..2f895553e6a8 100644 --- a/trunk/arch/arm/mach-omap2/omap4-common.c +++ b/trunk/arch/arm/mach-omap2/omap4-common.c @@ -44,6 +44,13 @@ void __init gic_init_irq(void) } #ifdef CONFIG_CACHE_L2X0 + +static void omap4_l2x0_disable(void) +{ + /* Disable PL310 L2 Cache controller */ + omap_smc1(0x102, 0x0); +} + static int __init omap_l2_cache_init(void) { /* @@ -70,6 +77,12 @@ static int __init omap_l2_cache_init(void) else l2x0_init(l2cache_base, 0x0e070000, 0xc0000fff); + /* + * Override default outer_cache.disable with a OMAP4 + * specific one + */ + outer_cache.disable = omap4_l2x0_disable; + return 0; } early_initcall(omap_l2_cache_init); diff --git a/trunk/arch/arm/mach-orion5x/mpp.c b/trunk/arch/arm/mach-orion5x/mpp.c index bc4c3b9aaf83..db485d3b8144 100644 --- a/trunk/arch/arm/mach-orion5x/mpp.c +++ b/trunk/arch/arm/mach-orion5x/mpp.c @@ -127,7 +127,7 @@ void __init orion5x_mpp_conf(struct orion5x_mpp_mode *mode) /* Initialize gpiolib. */ orion_gpio_init(); - while (mode->mpp >= 0) { + for ( ; mode->mpp >= 0; mode++) { u32 *reg; int num_type; int shift; @@ -160,8 +160,6 @@ void __init orion5x_mpp_conf(struct orion5x_mpp_mode *mode) orion_gpio_set_unused(mode->mpp); orion_gpio_set_valid(mode->mpp, !!(mode->type == MPP_GPIO)); - - mode++; } writel(mpp_0_7_ctrl, MPP_0_7_CTRL); diff --git a/trunk/arch/arm/mach-orion5x/ts78xx-setup.c b/trunk/arch/arm/mach-orion5x/ts78xx-setup.c index 16f1bd5324be..c1c1cd04bdde 100644 --- a/trunk/arch/arm/mach-orion5x/ts78xx-setup.c +++ b/trunk/arch/arm/mach-orion5x/ts78xx-setup.c @@ -239,7 +239,7 @@ static struct platform_nand_data ts78xx_ts_nand_data = { static struct resource ts78xx_ts_nand_resources = { .start = TS_NAND_DATA, .end = TS_NAND_DATA + 4, - .flags = IORESOURCE_IO, + .flags = IORESOURCE_MEM, }; static struct platform_device ts78xx_ts_nand_device = { diff --git a/trunk/arch/arm/mach-pxa/cm-x2xx.c b/trunk/arch/arm/mach-pxa/cm-x2xx.c index ac5598ce9724..d34b99febeb9 100644 --- a/trunk/arch/arm/mach-pxa/cm-x2xx.c +++ b/trunk/arch/arm/mach-pxa/cm-x2xx.c @@ -476,8 +476,6 @@ static void __init cmx2xx_init(void) static void __init cmx2xx_init_irq(void) { - pxa27x_init_irq(); - if (cpu_is_pxa25x()) { pxa25x_init_irq(); cmx2xx_pci_init_irq(CMX255_GPIO_IT8152_IRQ); diff --git a/trunk/arch/arm/mach-pxa/saar.c b/trunk/arch/arm/mach-pxa/saar.c index 4b521e045d75..ffa50e633ee6 100644 --- a/trunk/arch/arm/mach-pxa/saar.c +++ b/trunk/arch/arm/mach-pxa/saar.c @@ -116,7 +116,7 @@ static struct platform_device smc91x_device = { }, }; -#if defined(CONFIG_FB_PXA) || (CONFIG_FB_PXA_MODULE) +#if defined(CONFIG_FB_PXA) || defined(CONFIG_FB_PXA_MODULE) static uint16_t lcd_power_on[] = { /* single frame */ SMART_CMD_NOOP, diff --git a/trunk/arch/arm/mach-s3c2410/h1940-bluetooth.c b/trunk/arch/arm/mach-s3c2410/h1940-bluetooth.c index 8cdeb14af592..8aa2f1902a94 100644 --- a/trunk/arch/arm/mach-s3c2410/h1940-bluetooth.c +++ b/trunk/arch/arm/mach-s3c2410/h1940-bluetooth.c @@ -30,7 +30,7 @@ static void h1940bt_enable(int on) { if (on) { /* Power on the chip */ - h1940_latch_control(0, H1940_LATCH_BLUETOOTH_POWER); + gpio_set_value(H1940_LATCH_BLUETOOTH_POWER, 1); /* Reset the chip */ mdelay(10); @@ -43,7 +43,7 @@ static void h1940bt_enable(int on) mdelay(10); gpio_set_value(S3C2410_GPH(1), 0); mdelay(10); - h1940_latch_control(H1940_LATCH_BLUETOOTH_POWER, 0); + gpio_set_value(H1940_LATCH_BLUETOOTH_POWER, 0); } } @@ -64,7 +64,14 @@ static int __devinit h1940bt_probe(struct platform_device *pdev) ret = gpio_request(S3C2410_GPH(1), dev_name(&pdev->dev)); if (ret) { - dev_err(&pdev->dev, "could not get GPH1\n");\ + dev_err(&pdev->dev, "could not get GPH1\n"); + return ret; + } + + ret = gpio_request(H1940_LATCH_BLUETOOTH_POWER, dev_name(&pdev->dev)); + if (ret) { + gpio_free(S3C2410_GPH(1)); + dev_err(&pdev->dev, "could not get BT_POWER\n"); return ret; } diff --git a/trunk/arch/arm/mach-s3c2410/include/mach/gpio.h b/trunk/arch/arm/mach-s3c2410/include/mach/gpio.h index b649bf2ccd5c..f7f6b07df30e 100644 --- a/trunk/arch/arm/mach-s3c2410/include/mach/gpio.h +++ b/trunk/arch/arm/mach-s3c2410/include/mach/gpio.h @@ -22,6 +22,8 @@ #ifdef CONFIG_CPU_S3C244X #define ARCH_NR_GPIOS (32 * 9 + CONFIG_S3C24XX_GPIO_EXTRA) +#elif defined(CONFIG_CPU_S3C2443) || defined(CONFIG_CPU_S3C2416) +#define ARCH_NR_GPIOS (32 * 12 + CONFIG_S3C24XX_GPIO_EXTRA) #else #define ARCH_NR_GPIOS (256 + CONFIG_S3C24XX_GPIO_EXTRA) #endif @@ -30,8 +32,10 @@ #include #include -#ifdef CONFIG_CPU_S3C24XX -#define S3C_GPIO_END (S3C2410_GPIO_BANKJ + 32) +#ifdef CONFIG_CPU_S3C244X +#define S3C_GPIO_END (S3C2410_GPJ(0) + 32) +#elif defined(CONFIG_CPU_S3C2443) || defined(CONFIG_CPU_S3C2416) +#define S3C_GPIO_END (S3C2410_GPM(0) + 32) #else -#define S3C_GPIO_END (S3C2410_GPIO_BANKH + 32) +#define S3C_GPIO_END (S3C2410_GPH(0) + 32) #endif diff --git a/trunk/arch/arm/mach-s3c2410/include/mach/h1940-latch.h b/trunk/arch/arm/mach-s3c2410/include/mach/h1940-latch.h index d8a832729a8a..97e42bfce81e 100644 --- a/trunk/arch/arm/mach-s3c2410/include/mach/h1940-latch.h +++ b/trunk/arch/arm/mach-s3c2410/include/mach/h1940-latch.h @@ -14,51 +14,30 @@ #ifndef __ASM_ARCH_H1940_LATCH_H #define __ASM_ARCH_H1940_LATCH_H +#include -#ifndef __ASSEMBLY__ -#define H1940_LATCH ((void __force __iomem *)0xF8000000) -#else -#define H1940_LATCH 0xF8000000 -#endif - -#define H1940_PA_LATCH (S3C2410_CS2) +#define H1940_LATCH_GPIO(x) (S3C_GPIO_END + (x)) /* SD layer latch */ -#define H1940_LATCH_SDQ1 (1<<16) -#define H1940_LATCH_LCD_P1 (1<<17) -#define H1940_LATCH_LCD_P2 (1<<18) -#define H1940_LATCH_LCD_P3 (1<<19) -#define H1940_LATCH_MAX1698_nSHUTDOWN (1<<20) /* LCD backlight */ -#define H1940_LATCH_LED_RED (1<<21) -#define H1940_LATCH_SDQ7 (1<<22) -#define H1940_LATCH_USB_DP (1<<23) +#define H1940_LATCH_LCD_P0 H1940_LATCH_GPIO(0) +#define H1940_LATCH_LCD_P1 H1940_LATCH_GPIO(1) +#define H1940_LATCH_LCD_P2 H1940_LATCH_GPIO(2) +#define H1940_LATCH_LCD_P3 H1940_LATCH_GPIO(3) +#define H1940_LATCH_MAX1698_nSHUTDOWN H1940_LATCH_GPIO(4) +#define H1940_LATCH_LED_RED H1940_LATCH_GPIO(5) +#define H1940_LATCH_SDQ7 H1940_LATCH_GPIO(6) +#define H1940_LATCH_USB_DP H1940_LATCH_GPIO(7) /* CPU layer latch */ -#define H1940_LATCH_UDA_POWER (1<<24) -#define H1940_LATCH_AUDIO_POWER (1<<25) -#define H1940_LATCH_SM803_ENABLE (1<<26) -#define H1940_LATCH_LCD_P4 (1<<27) -#define H1940_LATCH_CPUQ5 (1<<28) /* untraced */ -#define H1940_LATCH_BLUETOOTH_POWER (1<<29) /* active high */ -#define H1940_LATCH_LED_GREEN (1<<30) -#define H1940_LATCH_LED_FLASH (1<<31) - -/* default settings */ - -#define H1940_LATCH_DEFAULT \ - H1940_LATCH_LCD_P4 | \ - H1940_LATCH_SM803_ENABLE | \ - H1940_LATCH_SDQ1 | \ - H1940_LATCH_LCD_P1 | \ - H1940_LATCH_LCD_P2 | \ - H1940_LATCH_LCD_P3 | \ - H1940_LATCH_MAX1698_nSHUTDOWN | \ - H1940_LATCH_CPUQ5 - -/* control functions */ - -extern void h1940_latch_control(unsigned int clear, unsigned int set); +#define H1940_LATCH_UDA_POWER H1940_LATCH_GPIO(8) +#define H1940_LATCH_AUDIO_POWER H1940_LATCH_GPIO(9) +#define H1940_LATCH_SM803_ENABLE H1940_LATCH_GPIO(10) +#define H1940_LATCH_LCD_P4 H1940_LATCH_GPIO(11) +#define H1940_LATCH_SD_POWER H1940_LATCH_GPIO(12) +#define H1940_LATCH_BLUETOOTH_POWER H1940_LATCH_GPIO(13) +#define H1940_LATCH_LED_GREEN H1940_LATCH_GPIO(14) +#define H1940_LATCH_LED_FLASH H1940_LATCH_GPIO(15) #endif /* __ASM_ARCH_H1940_LATCH_H */ diff --git a/trunk/arch/arm/mach-s3c2410/include/mach/regs-s3c2443-clock.h b/trunk/arch/arm/mach-s3c2410/include/mach/regs-s3c2443-clock.h index 08ab9dfb6ae6..101aeea22310 100644 --- a/trunk/arch/arm/mach-s3c2410/include/mach/regs-s3c2443-clock.h +++ b/trunk/arch/arm/mach-s3c2410/include/mach/regs-s3c2443-clock.h @@ -118,6 +118,8 @@ #define S3C2443_SCLKCON_UARTCLK (1<<8) #define S3C2443_SCLKCON_USBHOST (1<<1) +#define S3C2443_PWRCFG_SLEEP (1<<15) + #include static inline unsigned int diff --git a/trunk/arch/arm/mach-s3c2410/include/mach/vmalloc.h b/trunk/arch/arm/mach-s3c2410/include/mach/vmalloc.h index 54297eb0bf5e..7a311e8dddba 100644 --- a/trunk/arch/arm/mach-s3c2410/include/mach/vmalloc.h +++ b/trunk/arch/arm/mach-s3c2410/include/mach/vmalloc.h @@ -15,6 +15,6 @@ #ifndef __ASM_ARCH_VMALLOC_H #define __ASM_ARCH_VMALLOC_H -#define VMALLOC_END 0xE0000000UL +#define VMALLOC_END 0xF6000000UL #endif /* __ASM_ARCH_VMALLOC_H */ diff --git a/trunk/arch/arm/mach-s3c2410/mach-h1940.c b/trunk/arch/arm/mach-s3c2410/mach-h1940.c index 98c5c9e81ee9..d7ada8c7e41f 100644 --- a/trunk/arch/arm/mach-s3c2410/mach-h1940.c +++ b/trunk/arch/arm/mach-s3c2410/mach-h1940.c @@ -24,6 +24,7 @@ #include #include #include +#include #include