From eb5dd392ae320cbb7b70ee0d8c0742154f374580 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Tue, 10 Aug 2010 15:38:19 -0700 Subject: [PATCH] --- yaml --- r: 209469 b: refs/heads/master c: 90a9ed9581b896d867645b21f0133795e3942fe6 h: refs/heads/master i: 209467: 3dcf965b519cdacffc02e99e8ac0cea27e58e965 v: v3 --- [refs] | 2 +- trunk/Documentation/00-INDEX | 4 +- trunk/Documentation/DMA-API-HOWTO.txt | 16 +- trunk/Documentation/DMA-API.txt | 6 + trunk/Documentation/DocBook/Makefile | 4 +- trunk/Documentation/DocBook/kernel-api.tmpl | 1 + trunk/Documentation/cpu-hotplug.txt | 2 +- trunk/Documentation/devices.txt | 1 - .../feature-removal-schedule.txt | 17 - trunk/Documentation/filesystems/Locking | 8 +- trunk/Documentation/filesystems/squashfs.txt | 2 +- trunk/Documentation/filesystems/vfs.txt | 6 +- trunk/Documentation/gpio.txt | 35 +- trunk/Documentation/hwmon/emc2103 | 33 - trunk/Documentation/hwmon/ltc4245 | 24 +- trunk/Documentation/hwmon/pc87427 | 27 +- trunk/Documentation/hwmon/sysfs-interface | 29 +- trunk/Documentation/hwmon/w83627ehf | 15 +- trunk/Documentation/i2c/instantiating-devices | 2 +- trunk/Documentation/kbuild/makefiles.txt | 6 + trunk/Documentation/kernel-parameters.txt | 131 +- trunk/Documentation/mmc/00-INDEX | 4 - trunk/Documentation/mmc/mmc-dev-attrs.txt | 56 - trunk/Documentation/networking/wavelan.txt | 74 + trunk/Documentation/padata.txt | 24 +- .../powerpc/dts-bindings/fsl/esdhc.txt | 2 - trunk/Documentation/scsi/scsi-parameters.txt | 139 - .../sound/alsa/HD-Audio-Models.txt | 13 +- trunk/MAINTAINERS | 42 +- trunk/Makefile | 1 + trunk/arch/alpha/defconfig | 884 ++++++- trunk/arch/alpha/include/asm/Kbuild | 11 +- trunk/arch/alpha/include/asm/dma-mapping.h | 2 + trunk/arch/alpha/kernel/osf_sys.c | 6 +- trunk/arch/alpha/kernel/process.c | 2 +- trunk/arch/arm/Kconfig | 51 +- trunk/arch/arm/Makefile | 1 - trunk/arch/arm/boot/compressed/Makefile | 2 +- trunk/arch/arm/boot/compressed/head.S | 5 +- trunk/arch/arm/common/it8152.c | 8 + trunk/arch/arm/configs/s5pc110_defconfig | 66 + trunk/arch/arm/configs/s5pv210_defconfig | 5 - trunk/arch/arm/include/asm/Kbuild | 2 +- trunk/arch/arm/include/asm/cache.h | 2 +- trunk/arch/arm/include/asm/dma-mapping.h | 18 +- trunk/arch/arm/include/asm/elf.h | 2 - .../arch/arm/include/asm/hardware/coresight.h | 8 +- trunk/arch/arm/include/asm/hardware/pl080.h | 4 +- trunk/arch/arm/include/asm/hardware/scoop.h | 29 +- trunk/arch/arm/include/asm/tlbflush.h | 8 - trunk/arch/arm/kernel/entry-common.S | 124 +- trunk/arch/arm/kernel/etm.c | 4 +- trunk/arch/arm/kernel/module.c | 34 - trunk/arch/arm/kernel/sys_arm.c | 4 +- trunk/arch/arm/kernel/sys_oabi-compat.c | 6 +- trunk/arch/arm/mach-at91/board-cam60.c | 6 +- .../arm/mach-clps711x/include/mach/hardware.h | 7 + trunk/arch/arm/mach-gemini/Kconfig | 21 - trunk/arch/arm/mach-gemini/Makefile | 3 - trunk/arch/arm/mach-gemini/board-nas4220b.c | 111 - trunk/arch/arm/mach-gemini/board-wbd111.c | 143 -- trunk/arch/arm/mach-gemini/board-wbd222.c | 143 -- .../arm/mach-h720x/include/mach/hardware.h | 2 + trunk/arch/arm/mach-imx/mach-pca100.c | 2 +- .../mach-integrator/include/mach/hardware.h | 1 + .../arm/mach-ixp23xx/include/mach/hardware.h | 1 + trunk/arch/arm/mach-ixp4xx/Kconfig | 8 - trunk/arch/arm/mach-ixp4xx/Makefile | 2 - .../mach-ixp4xx/include/mach/debug-macro.S | 2 - trunk/arch/arm/mach-ixp4xx/include/mach/io.h | 6 +- trunk/arch/arm/mach-ixp4xx/vulcan-pci.c | 73 - trunk/arch/arm/mach-ixp4xx/vulcan-setup.c | 246 -- trunk/arch/arm/mach-mmp/aspenite.c | 6 +- trunk/arch/arm/mach-mmp/avengers_lite.c | 3 +- trunk/arch/arm/mach-mmp/common.c | 2 +- trunk/arch/arm/mach-mmp/common.h | 11 +- trunk/arch/arm/mach-mmp/flint.c | 3 +- .../arch/arm/mach-mmp/include/mach/devices.h | 4 - trunk/arch/arm/mach-mmp/include/mach/mmp2.h | 7 - trunk/arch/arm/mach-mmp/include/mach/pxa168.h | 5 - trunk/arch/arm/mach-mmp/include/mach/pxa910.h | 5 - trunk/arch/arm/mach-mmp/irq-mmp2.c | 1 - trunk/arch/arm/mach-mmp/jasper.c | 3 +- trunk/arch/arm/mach-mmp/mmp2.c | 22 - trunk/arch/arm/mach-mmp/tavorevb.c | 3 +- trunk/arch/arm/mach-mmp/time.c | 21 + trunk/arch/arm/mach-mmp/ttc_dkb.c | 3 +- trunk/arch/arm/mach-msm/Makefile | 2 +- trunk/arch/arm/mach-msm/acpuclock-arm11.c | 1 + trunk/arch/arm/mach-msm/board-trout-gpio.c | 115 - trunk/arch/arm/mach-msm/board-trout-mmc.c | 186 -- trunk/arch/arm/mach-msm/board-trout.c | 11 - trunk/arch/arm/mach-msm/clock.c | 1 + trunk/arch/arm/mach-msm/devices-msm7x00.c | 3 +- trunk/arch/arm/mach-msm/include/mach/board.h | 4 - trunk/arch/arm/mach-msm/include/mach/mmc.h | 2 +- trunk/arch/arm/mach-msm/smd.c | 2 +- .../arch/arm/mach-omap2/board-omap3pandora.c | 16 - trunk/arch/arm/mach-omap2/hsmmc.c | 1 - trunk/arch/arm/mach-omap2/hsmmc.h | 4 - trunk/arch/arm/mach-pxa/Kconfig | 80 +- trunk/arch/arm/mach-pxa/Makefile | 13 +- trunk/arch/arm/mach-pxa/balloon3.c | 732 ++---- trunk/arch/arm/mach-pxa/cm-x300.c | 4 +- .../arm/mach-pxa/colibri-pxa270-evalboard.c | 111 - .../arch/arm/mach-pxa/colibri-pxa270-income.c | 272 -- trunk/arch/arm/mach-pxa/colibri-pxa270.c | 176 +- trunk/arch/arm/mach-pxa/colibri-pxa320.c | 40 - trunk/arch/arm/mach-pxa/corgi.c | 5 +- trunk/arch/arm/mach-pxa/corgi_pm.c | 11 +- trunk/arch/arm/mach-pxa/devices.c | 14 - trunk/arch/arm/mach-pxa/devices.h | 1 - trunk/arch/arm/mach-pxa/e330.c | 78 + trunk/arch/arm/mach-pxa/e350.c | 79 + trunk/arch/arm/mach-pxa/e400.c | 155 ++ trunk/arch/arm/mach-pxa/e740.c | 225 ++ trunk/arch/arm/mach-pxa/e750.c | 226 ++ trunk/arch/arm/mach-pxa/e800.c | 229 ++ trunk/arch/arm/mach-pxa/eseries.c | 809 ------ trunk/arch/arm/mach-pxa/imote2.c | 590 +++++ .../arch/arm/mach-pxa/include/mach/balloon3.h | 75 +- .../arch/arm/mach-pxa/include/mach/colibri.h | 32 +- trunk/arch/arm/mach-pxa/include/mach/corgi.h | 5 + .../arch/arm/mach-pxa/include/mach/gumstix.h | 12 +- .../arch/arm/mach-pxa/include/mach/hardware.h | 5 + .../arch/arm/mach-pxa/include/mach/palm27x.h | 81 - .../arch/arm/mach-pxa/include/mach/pata_pxa.h | 33 - .../arch/arm/mach-pxa/include/mach/sharpsl.h | 35 + .../arm/mach-pxa/include/mach/sharpsl_pm.h | 9 - trunk/arch/arm/mach-pxa/include/mach/spitz.h | 2 + trunk/arch/arm/mach-pxa/mioa701.c | 10 +- trunk/arch/arm/mach-pxa/palm27x.c | 477 ---- trunk/arch/arm/mach-pxa/palmld.c | 292 ++- trunk/arch/arm/mach-pxa/palmt5.c | 283 ++- trunk/arch/arm/mach-pxa/palmte2.c | 20 +- trunk/arch/arm/mach-pxa/palmtreo.c | 354 ++- trunk/arch/arm/mach-pxa/palmtx.c | 299 ++- trunk/arch/arm/mach-pxa/palmz72.c | 264 +- trunk/arch/arm/mach-pxa/poodle.c | 2 + trunk/arch/arm/mach-pxa/pxa25x.c | 1 - trunk/arch/arm/mach-pxa/pxa27x.c | 1 - trunk/arch/arm/mach-pxa/pxa3xx.c | 15 +- trunk/arch/arm/mach-pxa/raumfeld.c | 29 +- trunk/arch/arm/mach-pxa/sharpsl.h | 26 + trunk/arch/arm/mach-pxa/sharpsl_pm.c | 23 + trunk/arch/arm/mach-pxa/sleep.S | 7 + trunk/arch/arm/mach-pxa/spitz.c | 727 +++--- trunk/arch/arm/mach-pxa/spitz_pm.c | 11 +- trunk/arch/arm/mach-pxa/stargate2.c | 701 ++---- trunk/arch/arm/mach-pxa/trizeps4.c | 6 +- trunk/arch/arm/mach-pxa/vpac270.c | 126 +- trunk/arch/arm/mach-pxa/z2.c | 118 +- trunk/arch/arm/mach-s3c2416/s3c2416.c | 3 +- trunk/arch/arm/mach-s3c2440/mach-gta02.c | 17 +- trunk/arch/arm/mach-s3c2443/s3c2443.c | 2 - trunk/arch/arm/mach-s3c64xx/Kconfig | 24 - trunk/arch/arm/mach-s3c64xx/Makefile | 3 - trunk/arch/arm/mach-s3c64xx/clock.c | 24 +- trunk/arch/arm/mach-s3c64xx/dev-audio.c | 2 +- trunk/arch/arm/mach-s3c64xx/dev-spi.c | 2 +- trunk/arch/arm/mach-s3c64xx/dma.c | 2 +- trunk/arch/arm/mach-s3c64xx/gpiolib.c | 2 +- .../arch/arm/mach-s3c64xx/include/mach/map.h | 6 - .../arm/mach-s3c64xx/include/mach/memory.h | 2 - .../mach-s3c64xx/include/mach/regs-clock.h | 5 - .../arm/mach-s3c64xx/include/mach/regs-fb.h | 20 + trunk/arch/arm/mach-s3c64xx/mach-anw6410.c | 1 + trunk/arch/arm/mach-s3c64xx/mach-hmt.c | 1 + trunk/arch/arm/mach-s3c64xx/mach-real6410.c | 152 -- trunk/arch/arm/mach-s3c64xx/mach-smartq.c | 40 +- trunk/arch/arm/mach-s3c64xx/mach-smartq5.c | 39 +- trunk/arch/arm/mach-s3c64xx/mach-smartq7.c | 31 +- trunk/arch/arm/mach-s3c64xx/mach-smdk6410.c | 36 +- trunk/arch/arm/mach-s3c64xx/s3c6410.c | 6 +- trunk/arch/arm/mach-s3c64xx/setup-fb-24bpp.c | 2 +- trunk/arch/arm/mach-s3c64xx/setup-i2c0.c | 2 +- trunk/arch/arm/mach-s3c64xx/setup-i2c1.c | 2 +- trunk/arch/arm/mach-s3c64xx/setup-ide.c | 46 - trunk/arch/arm/mach-s3c64xx/setup-keypad.c | 34 - .../arch/arm/mach-s3c64xx/setup-sdhci-gpio.c | 17 +- trunk/arch/arm/mach-s5p6440/Kconfig | 13 +- trunk/arch/arm/mach-s5p6440/Makefile | 1 - trunk/arch/arm/mach-s5p6440/cpu.c | 3 +- trunk/arch/arm/mach-s5p6440/dev-audio.c | 2 +- trunk/arch/arm/mach-s5p6440/dev-spi.c | 2 +- trunk/arch/arm/mach-s5p6440/gpio.c | 4 +- .../arch/arm/mach-s5p6440/include/mach/irqs.h | 2 +- .../arch/arm/mach-s5p6440/include/mach/map.h | 4 +- .../arm/mach-s5p6440/include/mach/system.h | 7 +- trunk/arch/arm/mach-s5p6440/mach-smdk6440.c | 51 +- trunk/arch/arm/mach-s5p6440/setup-i2c0.c | 7 +- trunk/arch/arm/mach-s5p6440/setup-i2c1.c | 30 - trunk/arch/arm/mach-s5p6442/Kconfig | 1 - trunk/arch/arm/mach-s5p6442/clock.c | 6 - trunk/arch/arm/mach-s5p6442/dev-audio.c | 2 +- trunk/arch/arm/mach-s5p6442/dev-spi.c | 2 +- .../arch/arm/mach-s5p6442/include/mach/irqs.h | 2 +- .../arch/arm/mach-s5p6442/include/mach/map.h | 3 - .../arm/mach-s5p6442/include/mach/system.h | 7 +- trunk/arch/arm/mach-s5p6442/mach-smdk6442.c | 25 +- trunk/arch/arm/mach-s5pc100/Kconfig | 23 +- trunk/arch/arm/mach-s5pc100/Makefile | 2 - trunk/arch/arm/mach-s5pc100/clock.c | 8 +- trunk/arch/arm/mach-s5pc100/cpu.c | 7 - trunk/arch/arm/mach-s5pc100/dev-audio.c | 2 +- trunk/arch/arm/mach-s5pc100/dev-spi.c | 2 +- .../arch/arm/mach-s5pc100/include/mach/irqs.h | 4 +- .../arch/arm/mach-s5pc100/include/mach/map.h | 21 - .../mach-s5pc100/include/mach/regs-clock.h | 3 - .../arm/mach-s5pc100/include/mach/regs-fb.h | 34 + .../arm/mach-s5pc100/include/mach/system.h | 9 +- trunk/arch/arm/mach-s5pc100/mach-smdkc100.c | 80 +- trunk/arch/arm/mach-s5pc100/setup-ide.c | 70 - trunk/arch/arm/mach-s5pc100/setup-keypad.c | 34 - .../arch/arm/mach-s5pc100/setup-sdhci-gpio.c | 22 +- trunk/arch/arm/mach-s5pc100/setup-sdhci.c | 8 +- trunk/arch/arm/mach-s5pv210/Kconfig | 87 +- trunk/arch/arm/mach-s5pv210/Makefile | 2 - trunk/arch/arm/mach-s5pv210/cpu.c | 32 +- trunk/arch/arm/mach-s5pv210/dev-audio.c | 2 +- trunk/arch/arm/mach-s5pv210/dev-onenand.c | 7 +- trunk/arch/arm/mach-s5pv210/dev-spi.c | 2 +- trunk/arch/arm/mach-s5pv210/gpiolib.c | 14 - .../arch/arm/mach-s5pv210/include/mach/gpio.h | 12 +- .../arch/arm/mach-s5pv210/include/mach/irqs.h | 4 +- .../arch/arm/mach-s5pv210/include/mach/map.h | 16 - .../arm/mach-s5pv210/include/mach/memory.h | 9 +- .../mach-s5pv210/include/mach/regs-clock.h | 2 - .../arm/mach-s5pv210/include/mach/system.h | 7 +- trunk/arch/arm/mach-s5pv210/mach-aquila.c | 419 +-- trunk/arch/arm/mach-s5pv210/mach-goni.c | 437 +--- trunk/arch/arm/mach-s5pv210/mach-smdkc110.c | 66 +- trunk/arch/arm/mach-s5pv210/mach-smdkv210.c | 93 +- trunk/arch/arm/mach-s5pv210/setup-fb-24bpp.c | 2 +- trunk/arch/arm/mach-s5pv210/setup-i2c0.c | 2 +- trunk/arch/arm/mach-s5pv210/setup-i2c1.c | 2 +- trunk/arch/arm/mach-s5pv210/setup-i2c2.c | 2 +- trunk/arch/arm/mach-s5pv210/setup-ide.c | 50 - trunk/arch/arm/mach-s5pv210/setup-keypad.c | 34 - .../arch/arm/mach-s5pv210/setup-sdhci-gpio.c | 47 +- trunk/arch/arm/mach-s5pv210/setup-sdhci.c | 4 +- trunk/arch/arm/mach-s5pv310/Kconfig | 45 - trunk/arch/arm/mach-s5pv310/Makefile | 30 - trunk/arch/arm/mach-s5pv310/Makefile.boot | 2 - trunk/arch/arm/mach-s5pv310/clock.c | 544 ---- trunk/arch/arm/mach-s5pv310/cpu.c | 122 - trunk/arch/arm/mach-s5pv310/headsmp.S | 41 - .../mach-s5pv310/include/mach/debug-macro.S | 36 - .../mach-s5pv310/include/mach/entry-macro.S | 84 - .../arch/arm/mach-s5pv310/include/mach/gpio.h | 135 - .../arm/mach-s5pv310/include/mach/hardware.h | 18 - trunk/arch/arm/mach-s5pv310/include/mach/io.h | 26 - .../arch/arm/mach-s5pv310/include/mach/irqs.h | 74 - .../arch/arm/mach-s5pv310/include/mach/map.h | 69 - .../arm/mach-s5pv310/include/mach/memory.h | 22 - .../arm/mach-s5pv310/include/mach/pwm-clock.h | 70 - .../mach-s5pv310/include/mach/regs-clock.h | 62 - .../arm/mach-s5pv310/include/mach/regs-irq.h | 19 - .../arch/arm/mach-s5pv310/include/mach/smp.h | 29 - .../arm/mach-s5pv310/include/mach/system.h | 22 - .../arm/mach-s5pv310/include/mach/timex.h | 29 - .../mach-s5pv310/include/mach/uncompress.h | 30 - .../arm/mach-s5pv310/include/mach/vmalloc.h | 22 - trunk/arch/arm/mach-s5pv310/init.c | 41 - trunk/arch/arm/mach-s5pv310/irq-combiner.c | 125 - trunk/arch/arm/mach-s5pv310/localtimer.c | 25 - trunk/arch/arm/mach-s5pv310/mach-smdkv310.c | 92 - .../arm/mach-s5pv310/mach-universal_c210.c | 86 - trunk/arch/arm/mach-s5pv310/platsmp.c | 192 -- trunk/arch/arm/mach-s5pv310/setup-i2c0.c | 28 - trunk/arch/arm/mach-s5pv310/setup-i2c1.c | 25 - trunk/arch/arm/mach-s5pv310/setup-i2c2.c | 25 - trunk/arch/arm/mach-s5pv310/time.c | 287 --- .../arch/arm/mach-sa1100/include/mach/irqs.h | 2 +- trunk/arch/arm/mach-shmobile/Kconfig | 26 - trunk/arch/arm/mach-shmobile/Makefile | 6 +- trunk/arch/arm/mach-shmobile/board-ap4evb.c | 817 +----- trunk/arch/arm/mach-shmobile/board-g3evm.c | 59 +- trunk/arch/arm/mach-shmobile/board-g4evm.c | 153 +- trunk/arch/arm/mach-shmobile/clock-sh7367.c | 357 +-- trunk/arch/arm/mach-shmobile/clock-sh7372.c | 560 ---- trunk/arch/arm/mach-shmobile/clock-sh7377.c | 369 --- trunk/arch/arm/mach-shmobile/clock.c | 44 - .../arm/mach-shmobile/include/mach/common.h | 10 - .../arm/mach-shmobile/include/mach/irqs.h | 6 - .../arm/mach-shmobile/include/mach/memory.h | 3 - .../arm/mach-shmobile/include/mach/sh7372.h | 30 - .../arm/mach-shmobile/include/mach/vmalloc.h | 3 +- trunk/arch/arm/mach-shmobile/intc-sh7367.c | 178 +- trunk/arch/arm/mach-shmobile/intc-sh7372.c | 232 +- trunk/arch/arm/mach-shmobile/intc-sh7377.c | 300 +-- trunk/arch/arm/mach-shmobile/pfc-sh7372.c | 3 - trunk/arch/arm/mach-shmobile/setup-sh7367.c | 30 +- trunk/arch/arm/mach-shmobile/setup-sh7372.c | 391 +-- trunk/arch/arm/mach-shmobile/setup-sh7377.c | 34 +- trunk/arch/arm/mach-u300/clock.c | 139 +- trunk/arch/arm/mach-u300/clock.h | 5 +- trunk/arch/arm/mach-u300/core.c | 14 +- trunk/arch/arm/mach-u300/mmc.c | 8 +- trunk/arch/arm/mach-u300/timer.c | 28 +- .../mach-versatile/include/mach/hardware.h | 9 + .../arch/arm/mach-w90x900/include/mach/i2c.h | 9 - trunk/arch/arm/mm/Kconfig | 4 +- trunk/arch/arm/plat-mxc/include/mach/gpio.h | 1 - trunk/arch/arm/plat-omap/include/plat/mmc.h | 2 - trunk/arch/arm/plat-pxa/Makefile | 1 + trunk/arch/arm/plat-pxa/pmu.c | 33 + trunk/arch/arm/plat-s5p/Kconfig | 20 +- trunk/arch/arm/plat-s5p/Makefile | 6 - trunk/arch/arm/plat-s5p/cpu.c | 19 +- trunk/arch/arm/plat-s5p/dev-fimc0.c | 36 - trunk/arch/arm/plat-s5p/dev-fimc1.c | 36 - trunk/arch/arm/plat-s5p/dev-fimc2.c | 36 - trunk/arch/arm/plat-s5p/dev-pmu.c | 36 - .../arch/arm/plat-s5p/include/plat/map-s5p.h | 23 +- trunk/arch/arm/plat-s5p/include/plat/pll.h | 41 - trunk/arch/arm/plat-s5p/include/plat/reset.h | 16 - .../arch/arm/plat-s5p/include/plat/s5pv310.h | 34 - .../arm/plat-s5p/include/plat/system-reset.h | 31 - trunk/arch/arm/plat-s5p/irq.c | 2 - trunk/arch/arm/plat-samsung/Kconfig | 17 +- trunk/arch/arm/plat-samsung/Makefile | 7 +- trunk/arch/arm/plat-samsung/dev-hsmmc.c | 5 - trunk/arch/arm/plat-samsung/dev-hsmmc1.c | 5 - trunk/arch/arm/plat-samsung/dev-hsmmc2.c | 5 - trunk/arch/arm/plat-samsung/dev-hsmmc3.c | 77 - trunk/arch/arm/plat-samsung/dev-ide.c | 44 - trunk/arch/arm/plat-samsung/dev-keypad.c | 50 - trunk/arch/arm/plat-samsung/dev-wdt.c | 2 +- trunk/arch/arm/plat-samsung/gpiolib.c | 2 +- .../arm/plat-samsung/include/plat/adc-core.h | 28 - .../arm/plat-samsung/include/plat/ata-core.h | 28 - .../arch/arm/plat-samsung/include/plat/ata.h | 36 - .../arch/arm/plat-samsung/include/plat/devs.h | 20 - .../arm/plat-samsung/include/plat/fb-core.h | 29 - trunk/arch/arm/plat-samsung/include/plat/fb.h | 3 - .../arm/plat-samsung/include/plat/fimc-core.h | 44 - .../plat-samsung/include/plat/keypad-core.h | 31 - .../arm/plat-samsung/include/plat/keypad.h | 13 - .../arm/plat-samsung/include/plat/regs-ata.h | 56 - .../plat-samsung/include/plat/regs-fb-v4.h | 78 +- .../arm/plat-samsung/include/plat/regs-fb.h | 30 +- .../arm/plat-samsung/include/plat/regs-rtc.h | 3 - .../plat-samsung/include/plat/regs-serial.h | 2 - .../arm/plat-samsung/include/plat/sdhci.h | 127 +- trunk/arch/arm/plat-samsung/platformdata.c | 37 - trunk/arch/avr32/configs/atngw100_defconfig | 1249 +++++++++ .../configs/atngw100_evklcd100_defconfig | 1374 ++++++++++ .../configs/atngw100_evklcd101_defconfig | 1369 ++++++++++ .../avr32/configs/atngw100_mrmt_defconfig | 1213 +++++++++ .../arch/avr32/configs/atngw100mkii_defconfig | 1254 +++++++++ .../configs/atngw100mkii_evklcd100_defconfig | 1377 ++++++++++ .../configs/atngw100mkii_evklcd101_defconfig | 1378 ++++++++++ trunk/arch/avr32/configs/atstk1002_defconfig | 1319 ++++++++++ trunk/arch/avr32/configs/atstk1003_defconfig | 946 ++++++- trunk/arch/avr32/configs/atstk1004_defconfig | 601 ++++- trunk/arch/avr32/configs/atstk1006_defconfig | 1321 ++++++++++ trunk/arch/avr32/configs/favr-32_defconfig | 1079 +++++++- trunk/arch/avr32/configs/hammerhead_defconfig | 1311 +++++++++- trunk/arch/avr32/configs/merisc_defconfig | 1105 ++++++++ trunk/arch/avr32/configs/mimc200_defconfig | 991 +++++++- trunk/arch/avr32/include/asm/cache.h | 2 +- trunk/arch/avr32/include/asm/dma-mapping.h | 10 + trunk/arch/avr32/include/asm/syscalls.h | 2 +- trunk/arch/avr32/kernel/process.c | 3 +- .../blackfin/configs/BF518F-EZBRD_defconfig | 1307 ++++++++++ .../blackfin/configs/BF526-EZBRD_defconfig | 1594 ++++++++++++ .../blackfin/configs/BF527-EZKIT-V2_defconfig | 1698 +++++++++++++ .../blackfin/configs/BF527-EZKIT_defconfig | 1651 ++++++++++++ .../blackfin/configs/BF533-EZKIT_defconfig | 1222 +++++++++ .../blackfin/configs/BF533-STAMP_defconfig | 1384 ++++++++++ .../blackfin/configs/BF537-STAMP_defconfig | 1435 +++++++++++ .../blackfin/configs/BF538-EZKIT_defconfig | 1365 ++++++++++ .../blackfin/configs/BF548-EZKIT_defconfig | 1757 +++++++++++++ .../blackfin/configs/BF561-ACVILON_defconfig | 1482 +++++++++++ .../blackfin/configs/BF561-EZKIT_defconfig | 1206 +++++++++ .../blackfin/configs/BlackStamp_defconfig | 1098 +++++++- .../arch/blackfin/configs/CM-BF527_defconfig | 1404 +++++++++++ .../arch/blackfin/configs/CM-BF533_defconfig | 841 +++++++ .../arch/blackfin/configs/CM-BF537E_defconfig | 1112 ++++++++ .../arch/blackfin/configs/CM-BF537U_defconfig | 986 ++++++++ .../arch/blackfin/configs/CM-BF548_defconfig | 1367 ++++++++++ .../arch/blackfin/configs/CM-BF561_defconfig | 1049 ++++++++ trunk/arch/blackfin/configs/H8606_defconfig | 1085 +++++++- trunk/arch/blackfin/configs/IP0X_defconfig | 1164 ++++++++- trunk/arch/blackfin/configs/PNAV-10_defconfig | 1371 ++++++++++ trunk/arch/blackfin/configs/SRV1_defconfig | 1217 ++++++++- .../arch/blackfin/configs/TCM-BF518_defconfig | 1240 +++++++++ .../arch/blackfin/configs/TCM-BF537_defconfig | 1085 ++++++++ trunk/arch/blackfin/include/asm/Kbuild | 4 +- trunk/arch/blackfin/include/asm/cache.h | 2 +- trunk/arch/blackfin/include/asm/dma-mapping.h | 2 + trunk/arch/blackfin/kernel/process.c | 2 +- trunk/arch/cris/configs/artpec_3_defconfig | 538 ++++ trunk/arch/cris/configs/etrax-100lx_defconfig | 489 +++- .../cris/configs/etrax-100lx_v2_defconfig | 537 ++++ trunk/arch/cris/configs/etraxfs_defconfig | 545 ++++ trunk/arch/cris/include/asm/Kbuild | 5 +- trunk/arch/cris/include/asm/dma-mapping.h | 8 + trunk/arch/cris/include/asm/pgtable.h | 3 - trunk/arch/frv/defconfig | 600 ++++- trunk/arch/frv/include/asm/Kbuild | 3 +- trunk/arch/frv/include/asm/dma-mapping.h | 8 + trunk/arch/frv/include/asm/mem-layout.h | 2 +- trunk/arch/frv/kernel/process.c | 3 +- trunk/arch/h8300/defconfig | 333 ++- trunk/arch/h8300/kernel/process.c | 2 +- trunk/arch/ia64/configs/bigsur_defconfig | 183 +- trunk/arch/ia64/configs/generic_defconfig | 351 +-- trunk/arch/ia64/configs/gensparse_defconfig | 313 +-- trunk/arch/ia64/configs/sim_defconfig | 87 +- trunk/arch/ia64/configs/tiger_defconfig | 265 +- trunk/arch/ia64/configs/xen_domu_defconfig | 279 +- trunk/arch/ia64/configs/zx1_defconfig | 231 +- trunk/arch/ia64/include/asm/Kbuild | 9 +- trunk/arch/ia64/include/asm/atomic.h | 8 +- trunk/arch/ia64/include/asm/dma-mapping.h | 4 + trunk/arch/ia64/include/asm/rwsem.h | 6 +- trunk/arch/ia64/include/asm/unistd.h | 7 +- trunk/arch/ia64/kernel/entry.S | 3 - trunk/arch/ia64/kernel/perfmon.c | 15 +- trunk/arch/ia64/kernel/process.c | 2 +- trunk/arch/ia64/kernel/setup.c | 6 + trunk/arch/m32r/configs/m32104ut_defconfig | 897 ++++++- .../arch/m32r/configs/m32700ut.smp_defconfig | 779 +++++- trunk/arch/m32r/configs/m32700ut.up_defconfig | 777 +++++- trunk/arch/m32r/configs/mappi.nommu_defconfig | 609 +++++ trunk/arch/m32r/configs/mappi.smp_defconfig | 710 +++++- trunk/arch/m32r/configs/mappi.up_defconfig | 709 +++++- trunk/arch/m32r/configs/mappi2.opsp_defconfig | 681 +++++ .../arch/m32r/configs/mappi2.vdec2_defconfig | 680 +++++ trunk/arch/m32r/configs/mappi3.smp_defconfig | 714 +++++- trunk/arch/m32r/configs/oaks32r_defconfig | 583 +++++ trunk/arch/m32r/configs/opsput_defconfig | 664 +++++ trunk/arch/m32r/configs/usrv_defconfig | 693 ++++- trunk/arch/m32r/kernel/process.c | 3 +- trunk/arch/m68k/configs/amiga_defconfig | 867 ++++++- trunk/arch/m68k/configs/apollo_defconfig | 784 ++++++ trunk/arch/m68k/configs/atari_defconfig | 824 +++++- trunk/arch/m68k/configs/bvme6000_defconfig | 758 ++++++ trunk/arch/m68k/configs/hp300_defconfig | 793 ++++++ trunk/arch/m68k/configs/mac_defconfig | 815 ++++++ trunk/arch/m68k/configs/multi_defconfig | 895 ++++++- trunk/arch/m68k/configs/mvme147_defconfig | 759 ++++++ trunk/arch/m68k/configs/mvme16x_defconfig | 758 ++++++ trunk/arch/m68k/configs/q40_defconfig | 839 ++++++ trunk/arch/m68k/configs/sun3_defconfig | 779 ++++++ trunk/arch/m68k/configs/sun3x_defconfig | 790 ++++++ trunk/arch/m68k/include/asm/cache.h | 2 +- trunk/arch/m68k/include/asm/dma-mapping.h | 10 + trunk/arch/m68k/kernel/process.c | 2 +- .../arch/m68knommu/configs/m5208evb_defconfig | 559 ++++ .../arch/m68knommu/configs/m5249evb_defconfig | 580 +++++ .../arch/m68knommu/configs/m5272c3_defconfig | 580 +++++ .../arch/m68knommu/configs/m5275evb_defconfig | 580 +++++ .../arch/m68knommu/configs/m5307c3_defconfig | 600 +++++ .../arch/m68knommu/configs/m5407c3_defconfig | 589 +++++ trunk/arch/m68knommu/defconfig | 588 ++++- trunk/arch/m68knommu/kernel/process.c | 2 +- trunk/arch/microblaze/configs/mmu_defconfig | 842 ++++++- trunk/arch/microblaze/configs/nommu_defconfig | 849 ++++++- .../arch/microblaze/include/asm/dma-mapping.h | 6 + trunk/arch/microblaze/include/asm/page.h | 2 +- trunk/arch/microblaze/kernel/sys_microblaze.c | 2 +- trunk/arch/mips/configs/ar7_defconfig | 1119 ++++++++ trunk/arch/mips/configs/bcm47xx_defconfig | 1593 ++++++++++++ trunk/arch/mips/configs/bcm63xx_defconfig | 1135 +++++++++ trunk/arch/mips/configs/bigsur_defconfig | 1357 ++++++++++ trunk/arch/mips/configs/capcella_defconfig | 779 +++++- .../arch/mips/configs/cavium-octeon_defconfig | 850 ++++++- trunk/arch/mips/configs/cobalt_defconfig | 1143 ++++++++- trunk/arch/mips/configs/db1000_defconfig | 1064 ++++++++ trunk/arch/mips/configs/db1100_defconfig | 1085 ++++++++ trunk/arch/mips/configs/db1200_defconfig | 1396 ++++++++++ trunk/arch/mips/configs/db1500_defconfig | 1152 +++++++++ trunk/arch/mips/configs/db1550_defconfig | 1292 ++++++++++ trunk/arch/mips/configs/decstation_defconfig | 860 ++++++- trunk/arch/mips/configs/e55_defconfig | 543 ++++ trunk/arch/mips/configs/fuloong2e_defconfig | 1563 ++++++++++++ trunk/arch/mips/configs/gpr_defconfig | 1711 +++++++++++++ trunk/arch/mips/configs/ip22_defconfig | 918 ++++++- trunk/arch/mips/configs/ip27_defconfig | 1167 ++++++++- trunk/arch/mips/configs/ip28_defconfig | 807 +++++- trunk/arch/mips/configs/ip32_defconfig | 1031 ++++++++ trunk/arch/mips/configs/jazz_defconfig | 1116 +++++++- trunk/arch/mips/configs/jmr3927_defconfig | 800 ++++++ trunk/arch/mips/configs/lasat_defconfig | 753 ++++++ trunk/arch/mips/configs/lemote2f_defconfig | 1750 +++++++++++++ trunk/arch/mips/configs/malta_defconfig | 1250 ++++++++- trunk/arch/mips/configs/markeins_defconfig | 1269 +++++++++- trunk/arch/mips/configs/mipssim_defconfig | 601 ++++- trunk/arch/mips/configs/mpc30x_defconfig | 780 ++++++ trunk/arch/mips/configs/msp71xx_defconfig | 1400 +++++++++- trunk/arch/mips/configs/mtx1_defconfig | 1797 +++++++++++++ trunk/arch/mips/configs/pb1100_defconfig | 1096 ++++++++ trunk/arch/mips/configs/pb1200_defconfig | 1397 ++++++++++ trunk/arch/mips/configs/pb1500_defconfig | 1233 +++++++++ trunk/arch/mips/configs/pb1550_defconfig | 1288 ++++++++++ .../mips/configs/pnx8335-stb225_defconfig | 1051 +++++++- trunk/arch/mips/configs/pnx8550-jbs_defconfig | 1204 ++++++++- .../mips/configs/pnx8550-stb810_defconfig | 1200 ++++++++- trunk/arch/mips/configs/powertv_defconfig | 1535 +++++++++++ trunk/arch/mips/configs/rb532_defconfig | 1328 ++++++++++ trunk/arch/mips/configs/rbtx49xx_defconfig | 981 ++++++++ trunk/arch/mips/configs/rm200_defconfig | 1379 +++++++++- .../arch/mips/configs/sb1250-swarm_defconfig | 960 ++++++- trunk/arch/mips/configs/tb0219_defconfig | 830 +++++- trunk/arch/mips/configs/tb0226_defconfig | 833 +++++- trunk/arch/mips/configs/tb0287_defconfig | 1003 +++++++- trunk/arch/mips/configs/workpad_defconfig | 708 ++++++ trunk/arch/mips/configs/wrppmc_defconfig | 896 ++++++- trunk/arch/mips/configs/yosemite_defconfig | 824 +++++- trunk/arch/mips/include/asm/dma-mapping.h | 9 + .../mips/include/asm/mach-generic/kmalloc.h | 2 +- .../arch/mips/include/asm/mach-ip27/kmalloc.h | 2 +- .../arch/mips/include/asm/mach-ip32/kmalloc.h | 4 +- trunk/arch/mips/kernel/syscall.c | 2 +- trunk/arch/mips/mm/dma-default.c | 7 + trunk/arch/mn10300/boot/compressed/misc.c | 1 - trunk/arch/mn10300/configs/asb2303_defconfig | 563 +++++ trunk/arch/mn10300/include/asm/cache.h | 2 +- trunk/arch/mn10300/include/asm/dma-mapping.h | 8 + trunk/arch/mn10300/include/asm/gdb-stub.h | 8 +- trunk/arch/mn10300/include/asm/posix_types.h | 7 +- trunk/arch/mn10300/kernel/mn10300-serial.c | 5 + trunk/arch/mn10300/kernel/process.c | 2 +- trunk/arch/mn10300/kernel/rtc.c | 5 +- trunk/arch/parisc/configs/712_defconfig | 909 +++++++ trunk/arch/parisc/configs/a500_defconfig | 1110 ++++++++ trunk/arch/parisc/configs/b180_defconfig | 1144 +++++++++ trunk/arch/parisc/configs/c3000_defconfig | 1353 +++++++++- trunk/arch/parisc/configs/default_defconfig | 1380 ++++++++++ trunk/arch/parisc/hpux/fs.c | 7 +- trunk/arch/parisc/include/asm/Kbuild | 2 +- trunk/arch/parisc/include/asm/cache.h | 2 - trunk/arch/parisc/include/asm/dma-mapping.h | 12 + trunk/arch/parisc/mm/ioremap.c | 2 +- trunk/arch/powerpc/boot/dts/p4080ds.dts | 2 - trunk/arch/powerpc/include/asm/Kbuild | 53 +- trunk/arch/powerpc/include/asm/dma-mapping.h | 20 + trunk/arch/powerpc/include/asm/page_32.h | 2 +- trunk/arch/powerpc/kernel/process.c | 2 +- trunk/arch/powerpc/kernel/sys_ppc32.c | 2 +- .../arch/powerpc/platforms/83xx/mpc837x_mds.c | 2 +- .../arch/powerpc/platforms/83xx/mpc837x_rdb.c | 2 +- trunk/arch/powerpc/sysdev/fsl_rio.c | 2 +- trunk/arch/s390/appldata/appldata_net_sum.c | 3 +- trunk/arch/s390/defconfig | 970 +++++++ trunk/arch/s390/include/asm/Kbuild | 11 +- trunk/arch/s390/include/asm/unistd.h | 5 +- trunk/arch/s390/kernel/compat_linux.c | 10 +- trunk/arch/s390/kernel/compat_linux.h | 10 +- trunk/arch/s390/kernel/compat_wrapper.S | 26 +- trunk/arch/s390/kernel/entry.h | 4 +- trunk/arch/s390/kernel/process.c | 2 +- trunk/arch/s390/kernel/sys_s390.c | 4 +- trunk/arch/s390/kernel/syscalls.S | 3 - trunk/arch/score/configs/spct6600_defconfig | 632 +++++ trunk/arch/score/mm/tlb-score.c | 2 +- trunk/arch/sh/boards/mach-ap325rxa/setup.c | 2 +- trunk/arch/sh/boards/mach-kfr2r09/Makefile | 6 +- trunk/arch/sh/boards/mach-kfr2r09/lcd_wqvga.c | 2 +- trunk/arch/sh/configs/ap325rxa_defconfig | 1331 ++++++++++ trunk/arch/sh/configs/cayman_defconfig | 1319 ++++++++++ trunk/arch/sh/configs/dreamcast_defconfig | 1087 ++++++++ .../sh/configs/ecovec24-romimage_defconfig | 1016 ++++++++ trunk/arch/sh/configs/ecovec24_defconfig | 1631 ++++++++++++ trunk/arch/sh/configs/edosk7705_defconfig | 481 ++++ trunk/arch/sh/configs/edosk7760_defconfig | 1118 ++++++++ trunk/arch/sh/configs/espt_defconfig | 1159 +++++++++ trunk/arch/sh/configs/hp6xx_defconfig | 936 +++++++ .../sh/configs/kfr2r09-romimage_defconfig | 763 ++++++ trunk/arch/sh/configs/kfr2r09_defconfig | 1033 ++++++++ trunk/arch/sh/configs/landisk_defconfig | 1446 +++++++++++ trunk/arch/sh/configs/lboxre2_defconfig | 1324 ++++++++++ trunk/arch/sh/configs/magicpanelr2_defconfig | 1060 ++++++++ trunk/arch/sh/configs/microdev_defconfig | 974 +++++++ trunk/arch/sh/configs/migor_defconfig | 1304 ++++++++++ trunk/arch/sh/configs/polaris_defconfig | 972 +++++++ trunk/arch/sh/configs/r7780mp_defconfig | 1569 ++++++++++++ trunk/arch/sh/configs/r7785rp_defconfig | 1582 ++++++++++++ trunk/arch/sh/configs/rsk7201_defconfig | 745 ++++++ trunk/arch/sh/configs/rsk7203_defconfig | 1159 +++++++++ trunk/arch/sh/configs/rts7751r2d1_defconfig | 1582 ++++++++++++ .../arch/sh/configs/rts7751r2dplus_defconfig | 1661 ++++++++++++ trunk/arch/sh/configs/sdk7780_defconfig | 1568 ++++++++++++ trunk/arch/sh/configs/sdk7786_defconfig | 1773 ++++++++++++- trunk/arch/sh/configs/se7206_defconfig | 1000 ++++++++ trunk/arch/sh/configs/se7343_defconfig | 1244 +++++++++ trunk/arch/sh/configs/se7619_defconfig | 706 ++++++ trunk/arch/sh/configs/se7705_defconfig | 996 ++++++++ trunk/arch/sh/configs/se7712_defconfig | 1088 ++++++++ trunk/arch/sh/configs/se7721_defconfig | 1229 +++++++++ trunk/arch/sh/configs/se7722_defconfig | 1031 ++++++++ trunk/arch/sh/configs/se7724_defconfig | 1682 +++++++++++++ trunk/arch/sh/configs/se7750_defconfig | 1030 ++++++++ trunk/arch/sh/configs/se7751_defconfig | 990 ++++++++ trunk/arch/sh/configs/se7780_defconfig | 1366 ++++++++++ trunk/arch/sh/configs/sh03_defconfig | 1218 +++++++++ trunk/arch/sh/configs/sh7710voipgw_defconfig | 1012 ++++++++ .../arch/sh/configs/sh7724_generic_defconfig | 707 ++++++ trunk/arch/sh/configs/sh7763rdp_defconfig | 1172 +++++++++ .../arch/sh/configs/sh7770_generic_defconfig | 697 +++++ .../arch/sh/configs/sh7785lcr_32bit_defconfig | 1734 +++++++++++++ trunk/arch/sh/configs/sh7785lcr_defconfig | 1537 +++++++++++ trunk/arch/sh/configs/shmin_defconfig | 908 +++++++ trunk/arch/sh/configs/shx3_defconfig | 1312 ++++++++++ trunk/arch/sh/configs/snapgear_defconfig | 954 +++++++ trunk/arch/sh/configs/systemh_defconfig | 677 +++++ trunk/arch/sh/configs/titan_defconfig | 1612 ++++++++++++ trunk/arch/sh/configs/ul2_defconfig | 1233 +++++++++ trunk/arch/sh/configs/urquell_defconfig | 1732 +++++++++++++ trunk/arch/sh/include/asm/Kbuild | 9 +- trunk/arch/sh/include/asm/dma-mapping.h | 15 + trunk/arch/sh/include/asm/page.h | 2 +- trunk/arch/sh/include/asm/syscalls_32.h | 2 +- trunk/arch/sh/include/asm/syscalls_64.h | 2 +- .../sh/include/mach-kfr2r09/mach/kfr2r09.h | 16 +- trunk/arch/sh/kernel/process_64.c | 2 +- trunk/arch/sparc/configs/sparc32_defconfig | 1120 ++++++++ trunk/arch/sparc/configs/sparc64_defconfig | 1714 +++++++++++++ trunk/arch/sparc/include/asm/dma-mapping.h | 10 + trunk/arch/sparc/kernel/sys_sparc32.c | 7 +- trunk/arch/tile/configs/tile_defconfig | 1219 +++++++++ trunk/arch/tile/include/asm/dma-mapping.h | 9 + trunk/arch/um/drivers/hostaudio_kern.c | 10 - trunk/arch/um/include/asm/dma-mapping.h | 1 + trunk/arch/um/kernel/exec.c | 6 +- trunk/arch/um/kernel/internal.h | 2 +- trunk/arch/um/kernel/syscall.c | 2 +- trunk/arch/x86/configs/i386_defconfig | 2242 ++++++++++++++++- trunk/arch/x86/configs/x86_64_defconfig | 2209 +++++++++++++++- trunk/arch/x86/ia32/sys_ia32.c | 14 +- trunk/arch/x86/include/asm/Kbuild | 29 +- trunk/arch/x86/include/asm/dma-mapping.h | 8 + trunk/arch/x86/include/asm/kdebug.h | 6 - trunk/arch/x86/include/asm/page.h | 7 - trunk/arch/x86/include/asm/sys_ia32.h | 12 +- trunk/arch/x86/include/asm/syscalls.h | 2 +- trunk/arch/x86/include/asm/uv/uv_bau.h | 151 +- trunk/arch/x86/include/asm/xen/page.h | 8 +- trunk/arch/x86/include/asm/xen/swiotlb-xen.h | 14 - trunk/arch/x86/kernel/apic/apic.c | 2 +- trunk/arch/x86/kernel/apic/x2apic_uv_x.c | 4 - .../x86/kernel/cpu/cpufreq/acpi-cpufreq.c | 2 +- .../arch/x86/kernel/cpu/cpufreq/pcc-cpufreq.c | 2 +- trunk/arch/x86/kernel/cpu/perf_event_p4.c | 9 +- trunk/arch/x86/kernel/crash.c | 3 - trunk/arch/x86/kernel/entry_64.S | 4 +- trunk/arch/x86/kernel/hpet.c | 4 +- trunk/arch/x86/kernel/mpparse.c | 16 - trunk/arch/x86/kernel/pci-dma.c | 7 +- trunk/arch/x86/kernel/process.c | 2 +- trunk/arch/x86/kernel/tlb_uv.c | 760 ++---- trunk/arch/x86/lib/atomic64_386_32.S | 238 +- trunk/arch/x86/mm/fault.c | 4 +- trunk/arch/x86/oprofile/nmi_int.c | 1 - trunk/arch/x86/xen/Makefile | 1 - trunk/arch/x86/xen/enlighten.c | 4 - trunk/arch/x86/xen/mmu.c | 293 +-- trunk/arch/x86/xen/pci-swiotlb-xen.c | 58 - trunk/arch/xtensa/include/asm/cache.h | 2 +- trunk/arch/xtensa/include/asm/dma-mapping.h | 8 + trunk/arch/xtensa/kernel/process.c | 2 +- trunk/block/blk-core.c | 5 +- trunk/block/blk-lib.c | 6 - trunk/block/compat_ioctl.c | 1 - trunk/block/elevator.c | 6 - trunk/block/ioctl.c | 15 +- trunk/drivers/acpi/apei/erst.c | 1 - trunk/drivers/acpi/debug.c | 32 +- trunk/drivers/ata/Kconfig | 11 - trunk/drivers/ata/Makefile | 2 - trunk/drivers/ata/pata_mpc52xx.c | 8 +- trunk/drivers/ata/pata_of_platform.c | 4 +- trunk/drivers/ata/pata_pxa.c | 411 --- trunk/drivers/ata/sata_fsl.c | 8 +- trunk/drivers/atm/fore200e.c | 26 +- trunk/drivers/block/xsysace.c | 4 +- trunk/drivers/char/Kconfig | 2 +- trunk/drivers/char/hvc_iucv.c | 9 +- trunk/drivers/char/hw_random/n2-drv.c | 4 +- trunk/drivers/char/hw_random/n2rng.h | 2 +- trunk/drivers/char/hw_random/pasemi-rng.c | 4 +- trunk/drivers/char/ipmi/ipmi_si_intf.c | 61 +- trunk/drivers/char/ipmi/ipmi_watchdog.c | 42 +- trunk/drivers/char/n_gsm.c | 2 +- trunk/drivers/char/nozomi.c | 3 +- trunk/drivers/char/rtc.c | 2 +- .../char/xilinx_hwicap/xilinx_hwicap.c | 4 +- trunk/drivers/crypto/Kconfig | 2 +- trunk/drivers/crypto/amcc/crypto4xx_core.c | 4 +- trunk/drivers/crypto/amcc/crypto4xx_core.h | 2 +- trunk/drivers/crypto/ixp4xx_crypto.c | 21 - trunk/drivers/crypto/n2_core.c | 26 +- trunk/drivers/crypto/talitos.c | 6 +- trunk/drivers/dma/Kconfig | 2 +- trunk/drivers/dma/fsldma.c | 4 +- trunk/drivers/dma/mpc512x_dma.c | 4 +- trunk/drivers/dma/ppc4xx/adma.c | 8 +- trunk/drivers/dma/shdma.c | 8 +- trunk/drivers/edac/i5000_edac.c | 2 +- trunk/drivers/edac/i5400_edac.c | 2 +- trunk/drivers/edac/mpc85xx_edac.c | 28 +- trunk/drivers/edac/ppc4xx_edac.c | 12 +- trunk/drivers/firmware/Kconfig | 10 +- trunk/drivers/firmware/Makefile | 1 + .../{scsi => firmware}/iscsi_boot_sysfs.c | 0 trunk/drivers/firmware/iscsi_ibft.c | 6 +- trunk/drivers/gpio/Kconfig | 18 - trunk/drivers/gpio/Makefile | 2 - trunk/drivers/gpio/gpiolib.c | 96 +- trunk/drivers/gpio/max730x.c | 22 +- trunk/drivers/gpio/pcf857x.c | 9 +- trunk/drivers/gpio/stmpe-gpio.c | 399 --- trunk/drivers/gpio/sx150x.c | 645 ----- trunk/drivers/gpio/wm831x-gpio.c | 32 - trunk/drivers/gpu/drm/ati_pcigart.c | 2 +- trunk/drivers/gpu/drm/drm_bufs.c | 33 +- trunk/drivers/gpu/drm/drm_crtc.c | 6 +- trunk/drivers/gpu/drm/drm_crtc_helper.c | 10 +- trunk/drivers/gpu/drm/drm_edid.c | 840 ++++-- trunk/drivers/gpu/drm/drm_edid_modes.h | 380 --- trunk/drivers/gpu/drm/drm_fops.c | 16 +- trunk/drivers/gpu/drm/drm_gem.c | 2 +- trunk/drivers/gpu/drm/drm_ioctl.c | 1 - trunk/drivers/gpu/drm/i2c/ch7006_drv.c | 1 - trunk/drivers/gpu/drm/i2c/ch7006_mode.c | 5 +- trunk/drivers/gpu/drm/i2c/ch7006_priv.h | 1 - trunk/drivers/gpu/drm/i915/i915_gem.c | 26 +- trunk/drivers/gpu/drm/i915/i915_gem_tiling.c | 4 +- trunk/drivers/gpu/drm/i915/i915_opregion.c | 1 - trunk/drivers/gpu/drm/i915/intel_display.c | 15 +- trunk/drivers/gpu/drm/i915/intel_fb.c | 4 +- trunk/drivers/gpu/drm/nouveau/Makefile | 8 +- trunk/drivers/gpu/drm/nouveau/nouveau_bios.c | 194 +- trunk/drivers/gpu/drm/nouveau/nouveau_bios.h | 1 - trunk/drivers/gpu/drm/nouveau/nouveau_bo.c | 6 + .../gpu/drm/nouveau/nouveau_connector.c | 19 +- .../drivers/gpu/drm/nouveau/nouveau_display.c | 6 +- trunk/drivers/gpu/drm/nouveau/nouveau_dp.c | 87 +- trunk/drivers/gpu/drm/nouveau/nouveau_drv.h | 45 +- .../drivers/gpu/drm/nouveau/nouveau_encoder.h | 6 - trunk/drivers/gpu/drm/nouveau/nouveau_fbcon.c | 2 - trunk/drivers/gpu/drm/nouveau/nouveau_gem.c | 8 +- trunk/drivers/gpu/drm/nouveau/nouveau_hw.c | 11 +- trunk/drivers/gpu/drm/nouveau/nouveau_i2c.c | 41 +- trunk/drivers/gpu/drm/nouveau/nouveau_i2c.h | 8 +- trunk/drivers/gpu/drm/nouveau/nouveau_irq.c | 6 +- trunk/drivers/gpu/drm/nouveau/nouveau_mem.c | 15 +- trunk/drivers/gpu/drm/nouveau/nouveau_reg.h | 18 +- trunk/drivers/gpu/drm/nouveau/nouveau_state.c | 91 +- trunk/drivers/gpu/drm/nouveau/nv04_crtc.c | 15 +- trunk/drivers/gpu/drm/nouveau/nv04_dfp.c | 73 - trunk/drivers/gpu/drm/nouveau/nv04_tv.c | 10 +- trunk/drivers/gpu/drm/nouveau/nv10_graph.c | 175 +- trunk/drivers/gpu/drm/nouveau/nv30_fb.c | 24 +- trunk/drivers/gpu/drm/nouveau/nv50_crtc.c | 34 +- trunk/drivers/gpu/drm/nouveau/nv50_display.c | 5 +- trunk/drivers/gpu/drm/nouveau/nvc0_fb.c | 38 - trunk/drivers/gpu/drm/nouveau/nvc0_fifo.c | 96 - trunk/drivers/gpu/drm/nouveau/nvc0_graph.c | 75 - trunk/drivers/gpu/drm/nouveau/nvc0_instmem.c | 232 -- trunk/drivers/gpu/drm/radeon/r600_cp.c | 2 +- trunk/drivers/gpu/drm/radeon/r600_cs.c | 33 +- trunk/drivers/gpu/drm/radeon/radeon.h | 2 - .../drivers/gpu/drm/radeon/radeon_atombios.c | 180 +- trunk/drivers/gpu/drm/radeon/radeon_clocks.c | 81 - trunk/drivers/gpu/drm/radeon/radeon_combios.c | 388 +-- .../gpu/drm/radeon/radeon_connectors.c | 45 +- trunk/drivers/gpu/drm/radeon/radeon_cs.c | 2 +- trunk/drivers/gpu/drm/radeon/radeon_cursor.c | 2 +- trunk/drivers/gpu/drm/radeon/radeon_device.c | 3 +- trunk/drivers/gpu/drm/radeon/radeon_display.c | 34 +- trunk/drivers/gpu/drm/radeon/radeon_gem.c | 12 +- trunk/drivers/gpu/drm/radeon/radeon_i2c.c | 82 - trunk/drivers/gpu/drm/radeon/radeon_kms.c | 28 +- trunk/drivers/gpu/drm/radeon/radeon_mode.h | 24 - trunk/drivers/gpu/drm/radeon/radeon_pm.c | 24 +- trunk/drivers/gpu/drm/radeon/reg_srcs/rv515 | 1 - trunk/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 8 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 2 +- trunk/drivers/hwmon/Kconfig | 14 +- trunk/drivers/hwmon/Makefile | 1 - trunk/drivers/hwmon/ams/ams.h | 2 +- trunk/drivers/hwmon/asc7621.c | 9 +- trunk/drivers/hwmon/coretemp.c | 3 + trunk/drivers/hwmon/emc1403.c | 33 - trunk/drivers/hwmon/emc2103.c | 740 ------ trunk/drivers/hwmon/it87.c | 46 +- trunk/drivers/hwmon/k8temp.c | 3 +- trunk/drivers/hwmon/lm75.c | 39 - trunk/drivers/hwmon/lm75.h | 1 - trunk/drivers/hwmon/ltc4245.c | 177 +- trunk/drivers/hwmon/mc13783-adc.c | 17 +- trunk/drivers/hwmon/pc87360.c | 31 +- trunk/drivers/hwmon/pc87427.c | 862 +------ trunk/drivers/hwmon/ultra45_env.c | 4 +- trunk/drivers/hwmon/via-cputemp.c | 2 +- trunk/drivers/hwmon/w83627ehf.c | 97 +- trunk/drivers/i2c/Kconfig | 13 - trunk/drivers/i2c/Makefile | 3 +- trunk/drivers/i2c/busses/Kconfig | 24 +- trunk/drivers/i2c/busses/Makefile | 1 - trunk/drivers/i2c/busses/i2c-cpm.c | 8 +- trunk/drivers/i2c/busses/i2c-davinci.c | 314 +-- trunk/drivers/i2c/busses/i2c-ibm_iic.c | 6 +- trunk/drivers/i2c/busses/i2c-mpc.c | 4 +- trunk/drivers/i2c/busses/i2c-nuc900.c | 709 ------ trunk/drivers/i2c/busses/i2c-pxa.c | 2 +- trunk/drivers/i2c/busses/i2c-sh_mobile.c | 121 +- trunk/drivers/i2c/i2c-core.c | 158 +- trunk/drivers/i2c/i2c-dev.c | 66 +- trunk/drivers/i2c/i2c-mux.c | 165 -- trunk/drivers/i2c/muxes/Kconfig | 18 - trunk/drivers/i2c/muxes/Makefile | 8 - trunk/drivers/i2c/muxes/pca954x.c | 301 --- trunk/drivers/ide/ide.c | 20 +- trunk/drivers/idle/Kconfig | 3 +- trunk/drivers/idle/intel_idle.c | 61 +- .../drivers/infiniband/hw/ehca/ehca_classes.h | 2 +- trunk/drivers/infiniband/hw/ehca/ehca_main.c | 4 +- trunk/drivers/input/joystick/amijoy.c | 2 +- trunk/drivers/input/keyboard/Kconfig | 10 - trunk/drivers/input/keyboard/Makefile | 1 - trunk/drivers/input/keyboard/hil_kbd.c | 4 +- trunk/drivers/input/keyboard/stmpe-keypad.c | 386 --- trunk/drivers/input/misc/ati_remote2.c | 26 +- trunk/drivers/input/misc/sparcspkr.c | 10 +- trunk/drivers/input/mouse/psmouse-base.c | 14 +- trunk/drivers/input/serio/i8042-sparcio.h | 8 +- trunk/drivers/input/serio/i8042.c | 25 +- trunk/drivers/input/serio/xilinx_ps2.c | 4 +- trunk/drivers/input/touchscreen/Kconfig | 10 - trunk/drivers/input/touchscreen/Makefile | 1 - trunk/drivers/input/touchscreen/stmpe-ts.c | 397 --- trunk/drivers/isdn/hardware/avm/c4.c | 1 - trunk/drivers/isdn/hardware/avm/t1pci.c | 1 - .../isdn/hardware/mISDN/mISDNinfineon.c | 5 +- trunk/drivers/leds/leds-gpio.c | 4 +- trunk/drivers/macintosh/macio_sysfs.c | 6 +- trunk/drivers/macintosh/smu.c | 6 +- trunk/drivers/macintosh/therm_adt746x.c | 2 +- trunk/drivers/macintosh/therm_pm72.c | 6 +- trunk/drivers/macintosh/therm_windtunnel.c | 10 +- trunk/drivers/md/dm-crypt.c | 342 ++- trunk/drivers/md/dm-delay.c | 6 +- trunk/drivers/md/dm-exception-store.c | 4 +- trunk/drivers/md/dm-exception-store.h | 3 +- trunk/drivers/md/dm-ioctl.c | 207 +- trunk/drivers/md/dm-linear.c | 3 +- trunk/drivers/md/dm-mpath.c | 11 - trunk/drivers/md/dm-raid1.c | 2 +- trunk/drivers/md/dm-snap-persistent.c | 6 +- trunk/drivers/md/dm-snap.c | 62 +- trunk/drivers/md/dm-stripe.c | 87 +- trunk/drivers/md/dm-table.c | 99 +- trunk/drivers/md/dm-target.c | 5 - trunk/drivers/md/dm-zero.c | 5 - trunk/drivers/md/dm.c | 329 +-- trunk/drivers/md/dm.h | 14 +- trunk/drivers/media/IR/Kconfig | 9 +- trunk/drivers/media/dvb/dm1105/Kconfig | 2 +- trunk/drivers/media/dvb/dvb-usb/Kconfig | 2 +- trunk/drivers/media/dvb/siano/Kconfig | 2 +- trunk/drivers/media/dvb/ttpci/Kconfig | 2 +- trunk/drivers/media/video/bt8xx/Kconfig | 2 +- trunk/drivers/media/video/bt8xx/bttv-i2c.c | 2 +- trunk/drivers/media/video/cx18/Kconfig | 2 +- trunk/drivers/media/video/cx18/cx18-i2c.c | 3 +- trunk/drivers/media/video/cx231xx/Kconfig | 2 +- trunk/drivers/media/video/cx23885/Kconfig | 2 +- .../drivers/media/video/cx23885/cx23885-i2c.c | 15 +- trunk/drivers/media/video/cx88/Kconfig | 2 +- trunk/drivers/media/video/cx88/cx88-i2c.c | 19 +- trunk/drivers/media/video/em28xx/Kconfig | 2 +- .../drivers/media/video/em28xx/em28xx-cards.c | 2 +- trunk/drivers/media/video/fsl-viu.c | 8 +- trunk/drivers/media/video/ivtv/Kconfig | 2 +- trunk/drivers/media/video/ivtv/ivtv-i2c.c | 9 +- trunk/drivers/media/video/saa7134/Kconfig | 2 +- trunk/drivers/media/video/tlg2300/Kconfig | 2 +- trunk/drivers/media/video/v4l2-common.c | 3 +- .../drivers/media/video/v4l2-compat-ioctl32.c | 7 +- trunk/drivers/media/video/v4l2-ctrls.c | 1 - trunk/drivers/memstick/core/mspro_block.c | 6 +- trunk/drivers/message/fusion/mptbase.c | 247 +- trunk/drivers/message/fusion/mptbase.h | 25 + trunk/drivers/message/i2o/exec-osm.c | 8 +- trunk/drivers/message/i2o/i2o_block.c | 3 +- trunk/drivers/message/i2o/i2o_config.c | 18 +- trunk/drivers/message/i2o/i2o_scsi.c | 3 +- trunk/drivers/mfd/88pm860x-core.c | 84 +- trunk/drivers/mfd/Kconfig | 75 +- trunk/drivers/mfd/Makefile | 5 - trunk/drivers/mfd/ab3100-otp.c | 16 +- trunk/drivers/mfd/ab3550-core.c | 23 +- trunk/drivers/mfd/ab8500-core.c | 4 +- trunk/drivers/mfd/ab8500-spi.c | 7 +- trunk/drivers/mfd/abx500-core.c | 2 +- trunk/drivers/mfd/davinci_voicecodec.c | 6 +- trunk/drivers/mfd/janz-cmodio.c | 1 - trunk/drivers/mfd/jz4740-adc.c | 394 --- trunk/drivers/mfd/max8925-core.c | 27 - trunk/drivers/mfd/max8998.c | 158 -- trunk/drivers/mfd/mc13783-core.c | 30 +- trunk/drivers/mfd/menelaus.c | 75 +- trunk/drivers/mfd/mfd-core.c | 4 +- trunk/drivers/mfd/stmpe.c | 985 -------- trunk/drivers/mfd/stmpe.h | 183 -- trunk/drivers/mfd/t7l66xb.c | 3 +- trunk/drivers/mfd/tc6387xb.c | 16 +- trunk/drivers/mfd/tc6393xb.c | 4 +- trunk/drivers/mfd/tps6507x.c | 4 +- trunk/drivers/mfd/tps6586x.c | 375 --- trunk/drivers/mfd/twl6030-pwm.c | 163 -- trunk/drivers/mfd/ucb1400_core.c | 2 +- trunk/drivers/mfd/wm831x-core.c | 18 +- trunk/drivers/mfd/wm8350-core.c | 6 +- trunk/drivers/mfd/wm8994-core.c | 8 +- trunk/drivers/misc/cs5535-mfgpt.c | 11 - trunk/drivers/misc/lkdtm.c | 4 +- trunk/drivers/mmc/card/block.c | 82 +- trunk/drivers/mmc/card/mmc_test.c | 811 +----- trunk/drivers/mmc/card/queue.c | 19 +- trunk/drivers/mmc/core/bus.c | 9 - trunk/drivers/mmc/core/core.c | 441 +--- trunk/drivers/mmc/core/core.h | 2 - trunk/drivers/mmc/core/host.c | 4 - trunk/drivers/mmc/core/mmc.c | 75 +- trunk/drivers/mmc/core/sd.c | 331 +-- trunk/drivers/mmc/core/sd.h | 17 - trunk/drivers/mmc/core/sd_ops.c | 48 - trunk/drivers/mmc/core/sd_ops.h | 1 - trunk/drivers/mmc/core/sdio.c | 210 +- trunk/drivers/mmc/host/Kconfig | 18 +- trunk/drivers/mmc/host/Makefile | 7 +- trunk/drivers/mmc/host/mmc_spi.c | 60 +- trunk/drivers/mmc/host/msm_sdcc.c | 62 +- trunk/drivers/mmc/host/msm_sdcc.h | 6 +- trunk/drivers/mmc/host/omap_hsmmc.c | 47 +- trunk/drivers/mmc/host/sdhci-cns3xxx.c | 97 - trunk/drivers/mmc/host/sdhci-of-core.c | 12 +- trunk/drivers/mmc/host/sdhci-pci.c | 49 - trunk/drivers/mmc/host/sdhci-pltfm.c | 17 +- trunk/drivers/mmc/host/sdhci-pltfm.h | 18 - trunk/drivers/mmc/host/sdhci-s3c.c | 123 +- trunk/drivers/mmc/host/sdhci.c | 53 +- trunk/drivers/mmc/host/sdhci.h | 10 - trunk/drivers/mtd/maps/physmap_of.c | 8 +- trunk/drivers/mtd/maps/sun_uflash.c | 6 +- trunk/drivers/mtd/nand/fsl_elbc_nand.c | 4 +- trunk/drivers/mtd/nand/fsl_upm.c | 4 +- trunk/drivers/mtd/nand/mpc5121_nfc.c | 4 +- trunk/drivers/mtd/nand/nand_base.c | 39 +- trunk/drivers/mtd/nand/ndfc.c | 6 +- trunk/drivers/mtd/nand/pasemi_nand.c | 4 +- trunk/drivers/mtd/nand/socrates_nand.c | 4 +- trunk/drivers/net/arm/ixp4xx_eth.c | 2 +- trunk/drivers/net/caif/caif_spi_slave.c | 4 +- trunk/drivers/net/can/mscan/mpc5xxx_can.c | 18 +- .../net/can/sja1000/sja1000_of_platform.c | 4 +- trunk/drivers/net/ehea/ehea.h | 4 +- trunk/drivers/net/ehea/ehea_main.c | 12 +- trunk/drivers/net/fec_mpc52xx.c | 8 +- trunk/drivers/net/fec_mpc52xx_phy.c | 4 +- trunk/drivers/net/fs_enet/fs_enet-main.c | 4 +- trunk/drivers/net/fs_enet/mac-fcc.c | 2 +- trunk/drivers/net/fs_enet/mac-fec.c | 2 +- trunk/drivers/net/fs_enet/mac-scc.c | 2 +- trunk/drivers/net/fs_enet/mii-bitbang.c | 4 +- trunk/drivers/net/fs_enet/mii-fec.c | 4 +- trunk/drivers/net/fsl_pq_mdio.c | 4 +- trunk/drivers/net/gianfar.c | 10 +- trunk/drivers/net/gianfar.h | 2 +- trunk/drivers/net/greth.c | 6 +- trunk/drivers/net/greth.h | 2 +- trunk/drivers/net/ibm_newemac/core.c | 6 +- trunk/drivers/net/ibm_newemac/core.h | 12 +- trunk/drivers/net/ibm_newemac/mal.c | 4 +- trunk/drivers/net/ibm_newemac/mal.h | 2 +- trunk/drivers/net/ibm_newemac/rgmii.c | 18 +- trunk/drivers/net/ibm_newemac/rgmii.h | 16 +- trunk/drivers/net/ibm_newemac/tah.c | 14 +- trunk/drivers/net/ibm_newemac/tah.h | 12 +- trunk/drivers/net/ibm_newemac/zmii.c | 18 +- trunk/drivers/net/ibm_newemac/zmii.h | 16 +- trunk/drivers/net/irda/sh_irda.c | 6 +- trunk/drivers/net/ll_temac_main.c | 8 +- trunk/drivers/net/myri10ge/myri10ge.c | 54 +- trunk/drivers/net/myri_sbus.c | 4 +- trunk/drivers/net/myri_sbus.h | 2 +- trunk/drivers/net/niu.c | 8 +- trunk/drivers/net/pcmcia/xirc2ps_cs.c | 2 +- trunk/drivers/net/phy/Kconfig | 2 +- trunk/drivers/net/phy/mdio-gpio.c | 4 +- trunk/drivers/net/phy/phy.c | 2 +- trunk/drivers/net/qlcnic/qlcnic_main.c | 72 +- trunk/drivers/net/sunbmac.c | 18 +- trunk/drivers/net/sunbmac.h | 4 +- trunk/drivers/net/sunhme.c | 22 +- trunk/drivers/net/sunhme.h | 2 +- trunk/drivers/net/sunlance.c | 20 +- trunk/drivers/net/sunqe.c | 16 +- trunk/drivers/net/sunqe.h | 4 +- trunk/drivers/net/ucc_geth.c | 8 +- trunk/drivers/net/usb/usbnet.c | 22 +- trunk/drivers/net/wan/farsync.c | 15 +- trunk/drivers/net/wan/ixp4xx_hss.c | 2 +- trunk/drivers/net/wireless/iwlwifi/iwl-1000.c | 2 +- trunk/drivers/net/wireless/iwlwifi/iwl-3945.c | 18 +- trunk/drivers/net/wireless/iwlwifi/iwl-4965.c | 2 +- trunk/drivers/net/wireless/iwlwifi/iwl-5000.c | 10 +- trunk/drivers/net/wireless/iwlwifi/iwl-6000.c | 16 +- .../net/wireless/iwlwifi/iwl-agn-hcmd.c | 19 +- .../drivers/net/wireless/iwlwifi/iwl-agn-tx.c | 20 +- trunk/drivers/net/wireless/iwlwifi/iwl-agn.c | 85 +- trunk/drivers/net/wireless/iwlwifi/iwl-core.c | 29 +- trunk/drivers/net/wireless/iwlwifi/iwl-core.h | 14 +- .../net/wireless/iwlwifi/iwl3945-base.c | 5 +- trunk/drivers/net/wireless/libertas/cfg.c | 3 - trunk/drivers/net/wireless/libertas/if_sdio.c | 32 +- trunk/drivers/net/wireless/libertas/if_usb.c | 3 - .../drivers/net/wireless/libertas_tf/if_usb.c | 3 - trunk/drivers/net/wireless/p54/p54pci.c | 2 + trunk/drivers/net/xilinx_emaclite.c | 6 +- trunk/drivers/of/device.c | 2 +- trunk/drivers/parport/parport_serial.c | 1 + trunk/drivers/parport/parport_sunbpp.c | 4 +- trunk/drivers/pcmcia/Kconfig | 2 +- trunk/drivers/pcmcia/Makefile | 1 - trunk/drivers/pcmcia/electra_cf.c | 6 +- trunk/drivers/pcmcia/m8xx_pcmcia.c | 4 +- trunk/drivers/pcmcia/pxa2xx_balloon3.c | 158 -- trunk/drivers/platform/x86/Kconfig | 7 - trunk/drivers/platform/x86/Makefile | 1 - trunk/drivers/platform/x86/ideapad_acpi.c | 306 --- trunk/drivers/power/Kconfig | 13 - trunk/drivers/power/Makefile | 2 - trunk/drivers/power/intel_mid_battery.c | 799 ------ trunk/drivers/power/olpc_battery.c | 2 +- trunk/drivers/power/s3c_adc_battery.c | 431 ---- trunk/drivers/power/wm97xx_battery.c | 16 + trunk/drivers/regulator/Kconfig | 34 - trunk/drivers/regulator/Makefile | 5 - trunk/drivers/regulator/ab8500.c | 427 ---- trunk/drivers/regulator/ad5398.c | 288 --- trunk/drivers/regulator/isl6271a-regulator.c | 236 -- trunk/drivers/regulator/lp3971.c | 10 +- trunk/drivers/regulator/max1586.c | 10 +- trunk/drivers/regulator/max8660.c | 10 +- trunk/drivers/regulator/max8998.c | 635 ----- trunk/drivers/regulator/tps65023-regulator.c | 2 - trunk/drivers/regulator/tps6507x-regulator.c | 1 - trunk/drivers/regulator/tps6586x-regulator.c | 396 --- trunk/drivers/regulator/wm8994-regulator.c | 5 +- trunk/drivers/rtc/Kconfig | 38 +- trunk/drivers/rtc/Makefile | 3 - trunk/drivers/rtc/rtc-cmos.c | 6 + trunk/drivers/rtc/rtc-ds3232.c | 326 --- trunk/drivers/rtc/rtc-fm3130.c | 181 +- trunk/drivers/rtc/rtc-imxdi.c | 519 ---- trunk/drivers/rtc/rtc-isl12022.c | 327 --- trunk/drivers/rtc/rtc-m41t80.c | 4 +- trunk/drivers/rtc/rtc-m48t59.c | 5 +- trunk/drivers/rtc/rtc-m48t86.c | 2 +- trunk/drivers/rtc/rtc-max6900.c | 2 +- trunk/drivers/rtc/rtc-mpc5121.c | 4 +- trunk/drivers/rtc/rtc-mxc.c | 6 + trunk/drivers/rtc/rtc-nuc900.c | 64 +- trunk/drivers/rtc/rtc-pcf8563.c | 8 + trunk/drivers/rtc/rtc-pl031.c | 1 + trunk/drivers/rtc/rtc-pxa.c | 42 +- trunk/drivers/rtc/rtc-rp5c01.c | 89 - trunk/drivers/rtc/rtc-s3c.c | 44 +- trunk/drivers/s390/block/dasd.c | 4 +- trunk/drivers/s390/net/claw.c | 118 +- trunk/drivers/s390/net/claw.h | 4 +- trunk/drivers/s390/net/ctcm_fsms.c | 60 +- trunk/drivers/s390/net/ctcm_main.c | 80 +- trunk/drivers/s390/net/ctcm_main.h | 4 +- trunk/drivers/s390/net/ctcm_mpc.c | 64 +- trunk/drivers/s390/net/ctcm_sysfs.c | 20 +- trunk/drivers/sbus/char/bbc_envctrl.c | 6 +- trunk/drivers/sbus/char/bbc_i2c.c | 18 +- trunk/drivers/sbus/char/bbc_i2c.h | 10 +- trunk/drivers/sbus/char/display7seg.c | 4 +- trunk/drivers/sbus/char/envctrl.c | 4 +- trunk/drivers/sbus/char/flash.c | 4 +- trunk/drivers/sbus/char/uctrl.c | 4 +- trunk/drivers/scsi/53c700.c | 3 + trunk/drivers/scsi/Kconfig | 10 +- trunk/drivers/scsi/Makefile | 1 - trunk/drivers/scsi/NCR5380.c | 4 +- trunk/drivers/scsi/aacraid/rx.c | 5 +- trunk/drivers/scsi/aic94xx/aic94xx_init.c | 4 +- trunk/drivers/scsi/be2iscsi/Kconfig | 1 - trunk/drivers/scsi/be2iscsi/be_cmds.h | 147 +- trunk/drivers/scsi/be2iscsi/be_iscsi.c | 76 +- trunk/drivers/scsi/be2iscsi/be_iscsi.h | 2 - trunk/drivers/scsi/be2iscsi/be_main.c | 311 --- trunk/drivers/scsi/be2iscsi/be_main.h | 7 +- trunk/drivers/scsi/be2iscsi/be_mgmt.c | 71 - trunk/drivers/scsi/bfa/bfa_fcport.c | 2 +- trunk/drivers/scsi/bfa/bfad.c | 2 - trunk/drivers/scsi/bfa/bfad_im.c | 4 +- trunk/drivers/scsi/bfa/include/protocol/fcp.h | 4 +- trunk/drivers/scsi/bnx2i/Kconfig | 3 +- trunk/drivers/scsi/ch.c | 89 +- trunk/drivers/scsi/dc395x.c | 2 +- trunk/drivers/scsi/fnic/fnic.h | 2 +- trunk/drivers/scsi/g_NCR5380.c | 47 +- trunk/drivers/scsi/g_NCR5380.h | 6 +- trunk/drivers/scsi/gdth.c | 2 +- trunk/drivers/scsi/ibmvscsi/ibmvfc.c | 380 ++- trunk/drivers/scsi/ibmvscsi/ibmvfc.h | 6 +- trunk/drivers/scsi/initio.c | 1 + trunk/drivers/scsi/libfc/fc_fcp.c | 4 +- trunk/drivers/scsi/lpfc/lpfc.h | 3 - trunk/drivers/scsi/lpfc/lpfc_attr.c | 69 +- trunk/drivers/scsi/lpfc/lpfc_bsg.c | 9 + trunk/drivers/scsi/lpfc/lpfc_compat.h | 3 +- trunk/drivers/scsi/lpfc/lpfc_els.c | 76 +- trunk/drivers/scsi/lpfc/lpfc_hbadisc.c | 17 +- trunk/drivers/scsi/lpfc/lpfc_hw.h | 32 +- trunk/drivers/scsi/lpfc/lpfc_init.c | 132 +- trunk/drivers/scsi/lpfc/lpfc_mbox.c | 8 +- trunk/drivers/scsi/lpfc/lpfc_scsi.c | 8 +- trunk/drivers/scsi/lpfc/lpfc_sli.c | 36 +- trunk/drivers/scsi/lpfc/lpfc_version.h | 2 +- trunk/drivers/scsi/osst.c | 3 +- trunk/drivers/scsi/pm8001/pm8001_hwi.c | 13 +- trunk/drivers/scsi/qla2xxx/qla_os.c | 4 +- trunk/drivers/scsi/qla4xxx/ql4_def.h | 36 +- trunk/drivers/scsi/qla4xxx/ql4_fw.h | 20 +- trunk/drivers/scsi/qla4xxx/ql4_glbl.h | 2 - trunk/drivers/scsi/qla4xxx/ql4_init.c | 14 +- trunk/drivers/scsi/qla4xxx/ql4_iocb.c | 2 +- trunk/drivers/scsi/qla4xxx/ql4_isr.c | 3 - trunk/drivers/scsi/qla4xxx/ql4_mbx.c | 48 +- trunk/drivers/scsi/qla4xxx/ql4_nx.c | 17 +- trunk/drivers/scsi/qla4xxx/ql4_os.c | 315 +-- trunk/drivers/scsi/qla4xxx/ql4_version.h | 2 +- trunk/drivers/scsi/qlogicpti.c | 14 +- trunk/drivers/scsi/qlogicpti.h | 2 +- trunk/drivers/scsi/scsi_error.c | 11 +- trunk/drivers/scsi/scsi_lib.c | 6 + trunk/drivers/scsi/scsi_tgt_lib.c | 1 - trunk/drivers/scsi/scsi_transport_fc.c | 12 +- trunk/drivers/scsi/sd.c | 12 +- trunk/drivers/scsi/sg.c | 11 +- trunk/drivers/scsi/sun_esp.c | 44 +- trunk/drivers/serial/Kconfig | 4 +- trunk/drivers/serial/apbuart.c | 2 +- trunk/drivers/serial/cpm_uart/cpm_uart_core.c | 4 +- trunk/drivers/serial/mpc52xx_uart.c | 8 +- trunk/drivers/serial/nwpserial.c | 2 +- trunk/drivers/serial/of_serial.c | 6 +- trunk/drivers/serial/s5pv210.c | 8 - trunk/drivers/serial/samsung.c | 9 +- trunk/drivers/serial/sh-sci.c | 42 +- trunk/drivers/serial/sh-sci.h | 29 +- trunk/drivers/serial/sunhv.c | 4 +- trunk/drivers/serial/sunsab.c | 8 +- trunk/drivers/serial/sunsu.c | 8 +- trunk/drivers/serial/sunzilog.c | 6 +- trunk/drivers/serial/uartlite.c | 4 +- trunk/drivers/serial/ucc_uart.c | 4 +- trunk/drivers/sh/Makefile | 5 +- trunk/drivers/sh/clk-cpg.c | 58 +- trunk/drivers/spi/amba-pl022.c | 6 +- trunk/drivers/spi/mpc512x_psc_spi.c | 16 +- trunk/drivers/spi/mpc52xx_psc_spi.c | 4 +- trunk/drivers/spi/mpc52xx_spi.c | 4 +- trunk/drivers/spi/omap_spi_100k.c | 23 +- trunk/drivers/spi/spi.c | 225 +- trunk/drivers/spi/spi_bitbang.c | 9 +- trunk/drivers/spi/spi_bitbang_txrx.h | 16 +- trunk/drivers/spi/spi_butterfly.c | 2 +- trunk/drivers/spi/spi_gpio.c | 109 +- trunk/drivers/spi/spi_lm70llp.c | 2 +- trunk/drivers/spi/spi_mpc8xxx.c | 4 +- trunk/drivers/spi/spi_ppc4xx.c | 6 +- trunk/drivers/spi/spi_s3c24xx_gpio.c | 8 +- trunk/drivers/spi/spi_sh_sci.c | 8 +- trunk/drivers/spi/xilinx_spi_of.c | 6 +- trunk/drivers/staging/rtl8187se/r8180_core.c | 6 +- trunk/drivers/staging/rtl8192e/r8192E_core.c | 6 +- trunk/drivers/staging/rtl8192su/r8192U_core.c | 6 +- trunk/drivers/usb/atm/ueagle-atm.c | 2 - trunk/drivers/usb/gadget/fsl_qe_udc.c | 10 +- trunk/drivers/usb/host/ehci-ppc-of.c | 6 +- trunk/drivers/usb/host/ehci-xilinx-of.c | 12 +- trunk/drivers/usb/host/fhci-hcd.c | 4 +- trunk/drivers/usb/host/isp1760-if.c | 4 +- trunk/drivers/usb/host/ohci-pnx4008.c | 2 +- trunk/drivers/usb/host/ohci-ppc-of.c | 6 +- trunk/drivers/video/Kconfig | 17 +- trunk/drivers/video/Makefile | 2 - trunk/drivers/video/bw2.c | 4 +- trunk/drivers/video/cg14.c | 6 +- trunk/drivers/video/cg3.c | 4 +- trunk/drivers/video/cg6.c | 6 +- trunk/drivers/video/console/bitblit.c | 2 +- trunk/drivers/video/console/fbcon.c | 2 +- trunk/drivers/video/console/fbcon_ccw.c | 2 +- trunk/drivers/video/console/fbcon_cw.c | 2 +- trunk/drivers/video/console/fbcon_ud.c | 2 +- trunk/drivers/video/efifb.c | 8 +- trunk/drivers/video/fbmem.c | 6 +- trunk/drivers/video/ffb.c | 4 +- trunk/drivers/video/fsl-diu-fb.c | 8 +- trunk/drivers/video/igafb.c | 5 +- trunk/drivers/video/imxfb.c | 19 +- trunk/drivers/video/leo.c | 6 +- trunk/drivers/video/matrox/i2c-matroxfb.c | 2 +- trunk/drivers/video/mb862xx/mb862xxfb.c | 4 +- trunk/drivers/video/msm/mddi.c | 4 +- trunk/drivers/video/msm/mdp.c | 1 + trunk/drivers/video/p9100.c | 4 +- trunk/drivers/video/platinumfb.c | 4 +- trunk/drivers/video/s3c-fb.c | 811 +----- trunk/drivers/video/sh_mipi_dsi.c | 505 ---- trunk/drivers/video/sh_mobile_hdmi.c | 1028 -------- trunk/drivers/video/sh_mobile_lcdcfb.c | 196 +- trunk/drivers/video/sunxvr1000.c | 4 +- trunk/drivers/video/tcx.c | 6 +- trunk/drivers/video/uvesafb.c | 7 +- trunk/drivers/video/vt8623fb.c | 2 - trunk/drivers/video/xilinxfb.c | 4 +- trunk/drivers/watchdog/Kconfig | 19 +- trunk/drivers/watchdog/cpwd.c | 4 +- trunk/drivers/watchdog/gef_wdt.c | 2 +- trunk/drivers/watchdog/hpwdt.c | 306 +-- trunk/drivers/watchdog/mpc8xxx_wdt.c | 4 +- trunk/drivers/watchdog/riowd.c | 4 +- trunk/drivers/xen/Kconfig | 5 - trunk/drivers/xen/Makefile | 1 - trunk/drivers/xen/balloon.c | 15 +- trunk/drivers/xen/swiotlb-xen.c | 515 ---- trunk/fs/9p/vfs_inode.c | 15 +- trunk/fs/afs/cell.c | 56 +- trunk/fs/afs/dir.c | 47 +- trunk/fs/afs/inode.c | 86 - trunk/fs/afs/internal.h | 23 +- trunk/fs/afs/mntpt.c | 78 +- trunk/fs/afs/proc.c | 2 +- trunk/fs/afs/rxrpc.c | 1 - trunk/fs/afs/super.c | 20 +- trunk/fs/autofs4/root.c | 3 +- trunk/fs/bad_inode.c | 7 + trunk/fs/block_dev.c | 10 +- trunk/fs/cachefiles/daemon.c | 32 +- trunk/fs/cachefiles/internal.h | 13 +- trunk/fs/ceph/Makefile | 2 +- trunk/fs/ceph/addr.c | 16 +- trunk/fs/ceph/armor.c | 6 +- trunk/fs/ceph/auth.c | 6 +- trunk/fs/ceph/auth_x.c | 6 +- trunk/fs/ceph/buffer.c | 16 + trunk/fs/ceph/caps.c | 303 +-- trunk/fs/ceph/ceph_frag.h | 4 +- trunk/fs/ceph/ceph_fs.c | 50 +- trunk/fs/ceph/ceph_fs.h | 87 +- trunk/fs/ceph/ceph_hash.h | 4 +- trunk/fs/ceph/ceph_strings.c | 3 - trunk/fs/ceph/crush/crush.h | 4 +- trunk/fs/ceph/crush/hash.h | 4 +- trunk/fs/ceph/crush/mapper.h | 4 +- trunk/fs/ceph/crypto.c | 27 +- trunk/fs/ceph/crypto.h | 4 +- trunk/fs/ceph/debugfs.c | 21 +- trunk/fs/ceph/decode.h | 6 +- trunk/fs/ceph/dir.c | 10 +- trunk/fs/ceph/file.c | 32 +- trunk/fs/ceph/inode.c | 5 +- trunk/fs/ceph/ioctl.c | 24 - trunk/fs/ceph/ioctl.h | 2 - trunk/fs/ceph/locks.c | 256 -- trunk/fs/ceph/mds_client.c | 235 +- trunk/fs/ceph/mds_client.h | 30 +- trunk/fs/ceph/mdsmap.c | 6 +- trunk/fs/ceph/mdsmap.h | 8 - trunk/fs/ceph/messenger.c | 23 +- trunk/fs/ceph/mon_client.c | 170 +- trunk/fs/ceph/mon_client.h | 5 - trunk/fs/ceph/msgr.h | 4 +- trunk/fs/ceph/osd_client.c | 9 +- trunk/fs/ceph/osdmap.c | 37 +- trunk/fs/ceph/rados.h | 13 +- trunk/fs/ceph/super.c | 88 +- trunk/fs/ceph/super.h | 40 +- trunk/fs/ceph/xattr.c | 2 - trunk/fs/cifs/README | 10 - trunk/fs/compat.c | 23 +- trunk/fs/compat_ioctl.c | 3 +- trunk/fs/dcache.c | 188 +- trunk/fs/exofs/file.c | 29 +- trunk/fs/exofs/inode.c | 9 +- trunk/fs/exofs/ios.c | 44 +- trunk/fs/exofs/super.c | 1 + trunk/fs/fcntl.c | 15 +- trunk/fs/file.c | 57 +- trunk/fs/file_table.c | 28 +- trunk/fs/fs-writeback.c | 81 +- trunk/fs/fs_struct.c | 7 +- trunk/fs/fscache/internal.h | 14 +- trunk/fs/ioctl.c | 18 +- trunk/fs/isofs/inode.c | 7 +- trunk/fs/jbd2/transaction.c | 46 +- trunk/fs/logfs/dir.c | 2 +- trunk/fs/logfs/file.c | 6 +- trunk/fs/logfs/logfs.h | 3 +- trunk/fs/namei.c | 15 +- trunk/fs/namespace.c | 6 +- trunk/fs/nfs/Kconfig | 17 - trunk/fs/nfs/callback.c | 11 +- trunk/fs/nfs/dns_resolve.c | 24 - trunk/fs/nfs/dns_resolve.h | 12 - trunk/fs/notify/fanotify/fanotify.c | 8 +- trunk/fs/notify/fanotify/fanotify_user.c | 6 +- trunk/fs/notify/fsnotify.c | 12 +- trunk/fs/notify/inotify/inotify_fsnotify.c | 12 +- trunk/fs/notify/notification.c | 33 +- trunk/fs/ocfs2/acl.c | 33 +- trunk/fs/ocfs2/cluster/tcp.c | 17 +- trunk/fs/ocfs2/dlm/dlmmaster.c | 9 +- trunk/fs/ocfs2/dlm/dlmrecovery.c | 22 +- trunk/fs/ocfs2/dlm/dlmthread.c | 114 +- trunk/fs/ocfs2/refcounttree.c | 20 +- trunk/fs/open.c | 4 +- trunk/fs/partitions/acorn.c | 35 +- trunk/fs/partitions/amiga.c | 20 +- trunk/fs/partitions/atari.c | 12 +- trunk/fs/partitions/check.c | 22 +- trunk/fs/partitions/check.h | 6 +- trunk/fs/partitions/efi.c | 2 +- trunk/fs/partitions/ibm.c | 17 +- trunk/fs/partitions/karma.c | 2 +- trunk/fs/partitions/ldm.c | 4 +- trunk/fs/partitions/mac.c | 4 +- trunk/fs/partitions/msdos.c | 67 +- trunk/fs/partitions/osf.c | 2 +- trunk/fs/partitions/sgi.c | 2 +- trunk/fs/partitions/sun.c | 2 +- trunk/fs/partitions/sysv68.c | 9 +- trunk/fs/partitions/ultrix.c | 2 +- trunk/fs/proc/Makefile | 2 +- trunk/fs/proc/base.c | 24 +- trunk/fs/proc/inode.c | 17 +- trunk/fs/proc/task_mmu.c | 8 +- trunk/fs/reiserfs/journal.c | 1 + trunk/fs/signalfd.c | 2 - trunk/fs/squashfs/Kconfig | 25 +- trunk/fs/squashfs/Makefile | 4 +- trunk/fs/squashfs/decompressor.c | 6 - trunk/fs/squashfs/lzo_wrapper.c | 136 - trunk/fs/squashfs/squashfs.h | 3 - trunk/fs/squashfs/squashfs_fs.h | 20 +- trunk/fs/squashfs/xattr.c | 4 +- trunk/fs/squashfs/xattr.h | 2 +- trunk/fs/stat.c | 29 +- trunk/fs/sysv/super.c | 73 +- trunk/fs/utimes.c | 7 +- trunk/include/acpi/platform/aclinux.h | 10 +- trunk/include/asm-generic/Kbuild | 9 +- trunk/include/asm-generic/Kbuild.asm | 67 +- .../include/asm-generic/dma-mapping-broken.h | 3 + trunk/include/asm-generic/fcntl.h | 4 - trunk/include/drm/Kbuild | 26 +- trunk/include/drm/drmP.h | 22 +- trunk/include/drm/drm_core.h | 2 +- trunk/include/drm/drm_crtc.h | 37 +- trunk/include/drm/drm_edid.h | 6 - trunk/include/linux/Kbuild | 468 ++-- trunk/include/linux/backing-dev.h | 1 - trunk/include/linux/blk_types.h | 2 - trunk/include/linux/blkdev.h | 7 +- trunk/include/linux/byteorder/Kbuild | 4 +- trunk/include/linux/compat.h | 6 +- trunk/include/linux/dcache.h | 1 - trunk/include/linux/device-mapper.h | 16 +- trunk/include/linux/dm-ioctl.h | 5 +- trunk/include/linux/dma-mapping.h | 10 - trunk/include/linux/dvb/Kbuild | 7 +- trunk/include/linux/etherdevice.h | 2 +- trunk/include/linux/fs.h | 15 +- trunk/include/linux/fs_struct.h | 27 - trunk/include/linux/fsnotify.h | 37 +- trunk/include/linux/fsnotify_backend.h | 16 +- trunk/include/linux/hugetlb.h | 14 +- trunk/include/linux/hugetlb_inline.h | 22 - trunk/include/linux/i2c-mux.h | 46 - trunk/include/linux/i2c.h | 33 +- trunk/include/linux/i2c/ltc4245.h | 21 - trunk/include/linux/i2c/pca954x.h | 47 - trunk/include/linux/i2c/sx150x.h | 78 - trunk/include/linux/io-mapping.h | 3 +- trunk/include/linux/jz4740-adc.h | 32 - trunk/include/linux/kernel.h | 10 +- trunk/include/linux/kfifo.h | 1193 ++++----- trunk/include/linux/memcontrol.h | 5 +- trunk/include/linux/mfd/ab8500.h | 6 - trunk/include/linux/mfd/max8998-private.h | 112 - trunk/include/linux/mfd/max8998.h | 78 - trunk/include/linux/mfd/mc13783-private.h | 220 ++ trunk/include/linux/mfd/mc13783.h | 2 - trunk/include/linux/mfd/stmpe.h | 201 -- trunk/include/linux/mfd/tps6586x.h | 47 - trunk/include/linux/mfd/wm8994/gpio.h | 4 - trunk/include/linux/miscdevice.h | 1 - trunk/include/linux/mmc/card.h | 24 - trunk/include/linux/mmc/core.h | 19 - trunk/include/linux/mmc/host.h | 4 - trunk/include/linux/mmc/mmc.h | 25 +- trunk/include/linux/mmc/sd.h | 5 - trunk/include/linux/moduleparam.h | 288 +-- trunk/include/linux/mount.h | 1 + trunk/include/linux/netfilter/Kbuild | 19 +- trunk/include/linux/netfilter_arp/Kbuild | 3 +- trunk/include/linux/netfilter_bridge/Kbuild | 5 +- trunk/include/linux/netfilter_ipv4/Kbuild | 5 +- trunk/include/linux/netfilter_ipv6/Kbuild | 5 +- trunk/include/linux/netpoll.h | 2 +- trunk/include/linux/nfsd/Kbuild | 12 +- trunk/include/linux/of_device.h | 16 + trunk/include/linux/of_platform.h | 14 +- trunk/include/linux/oom.h | 2 - trunk/include/linux/pagemap.h | 9 +- trunk/include/linux/path.h | 5 - trunk/include/linux/poison.h | 9 + trunk/include/linux/raid/pq.h | 2 - trunk/include/linux/regulator/ab8500.h | 25 - trunk/include/linux/rmap.h | 5 - trunk/include/linux/s3c_adc_battery.h | 36 - trunk/include/linux/serial_core.h | 3 - trunk/include/linux/sh_clk.h | 23 +- trunk/include/linux/slab_def.h | 4 +- trunk/include/linux/slob_def.h | 4 +- trunk/include/linux/slub_def.h | 8 +- trunk/include/linux/spi/max7301.h | 8 - trunk/include/linux/spi/spi.h | 12 - trunk/include/linux/spi/spi_gpio.h | 5 - trunk/include/linux/sunrpc/Kbuild | 2 +- trunk/include/linux/swap.h | 3 +- trunk/include/linux/syscalls.h | 20 +- trunk/include/linux/sysv_fs.h | 11 - trunk/include/linux/time.h | 4 +- trunk/include/linux/vgaarb.h | 1 + trunk/include/linux/virtio_9p.h | 1 - trunk/include/linux/vmalloc.h | 2 - trunk/include/linux/wm97xx_batt.h | 16 + trunk/include/linux/writeback.h | 5 +- trunk/include/net/bluetooth/l2cap.h | 4 +- trunk/include/net/sock.h | 4 +- trunk/include/scsi/scsi.h | 8 +- trunk/include/scsi/scsi_netlink.h | 4 +- trunk/include/sound/Kbuild | 9 +- trunk/include/video/Kbuild | 5 +- trunk/include/video/mipi_display.h | 130 - trunk/include/video/sh_mipi_dsi.h | 35 - trunk/include/video/sh_mobile_hdmi.h | 22 - trunk/include/video/sh_mobile_lcdc.h | 41 +- trunk/include/xen/interface/memory.h | 50 - trunk/include/xen/swiotlb-xen.h | 65 - trunk/include/xen/xen-ops.h | 6 - trunk/init/Kconfig | 4 +- trunk/init/main.c | 8 +- trunk/kernel/audit_watch.c | 4 +- trunk/kernel/auditsc.c | 9 +- trunk/kernel/cgroup.c | 4 +- trunk/kernel/cred.c | 4 + trunk/kernel/exit.c | 7 +- trunk/kernel/kexec.c | 8 +- trunk/kernel/kfifo.c | 750 +++--- trunk/kernel/panic.c | 60 +- trunk/kernel/params.c | 233 +- trunk/kernel/pid.c | 56 +- trunk/kernel/ptrace.c | 12 +- trunk/kernel/time/timekeeping.c | 14 +- trunk/kernel/trace/blktrace.c | 8 - trunk/lib/bug.c | 12 +- trunk/lib/decompress_bunzip2.c | 10 +- trunk/lib/inflate.c | 2 - trunk/lib/raid6/Makefile | 81 +- trunk/lib/raid6/{algos.c => raid6algos.c} | 4 +- .../lib/raid6/{altivec.uc => raid6altivec.uc} | 0 trunk/lib/raid6/{int.uc => raid6int.uc} | 0 trunk/lib/raid6/{mmx.c => raid6mmx.c} | 6 +- trunk/lib/raid6/{recov.c => raid6recov.c} | 2 +- trunk/lib/raid6/{sse1.c => raid6sse1.c} | 6 +- trunk/lib/raid6/{sse2.c => raid6sse2.c} | 4 +- trunk/lib/raid6/raid6test/Makefile | 75 + trunk/lib/raid6/{test => raid6test}/test.c | 0 trunk/lib/raid6/{x86.h => raid6x86.h} | 2 +- trunk/lib/raid6/test/Makefile | 72 - trunk/mm/backing-dev.c | 3 +- trunk/mm/hugetlb.c | 104 +- trunk/mm/hwpoison-inject.c | 15 +- trunk/mm/memcontrol.c | 407 ++- trunk/mm/memory-failure.c | 120 +- trunk/mm/memory.c | 32 +- trunk/mm/mlock.c | 8 - trunk/mm/nommu.c | 5 + trunk/mm/oom_kill.c | 2 +- trunk/mm/page-writeback.c | 185 +- trunk/mm/rmap.c | 59 - trunk/mm/vmalloc.c | 4 - trunk/mm/vmscan.c | 15 +- trunk/net/bluetooth/l2cap.c | 11 +- trunk/net/caif/cfpkt_skbuff.c | 2 +- trunk/net/can/bcm.c | 41 +- trunk/net/dns_resolver/dns_key.c | 92 +- trunk/net/dns_resolver/dns_query.c | 5 - trunk/net/dsa/Kconfig | 2 +- trunk/net/mac80211/rate.c | 2 - trunk/net/rxrpc/ar-internal.h | 16 +- trunk/net/sched/sch_api.c | 22 +- trunk/net/sched/sch_atm.c | 4 +- trunk/net/sched/sch_sfq.c | 14 +- trunk/net/sched/sch_tbf.c | 4 +- trunk/net/sched/sch_teql.c | 2 +- trunk/net/sunrpc/auth.c | 9 +- trunk/net/sunrpc/xprtsock.c | 26 +- trunk/net/wireless/mlme.c | 8 +- trunk/samples/Kconfig | 10 - trunk/samples/Makefile | 2 +- trunk/samples/kfifo/Makefile | 1 - trunk/samples/kfifo/bytestream-example.c | 163 -- trunk/samples/kfifo/dma-example.c | 115 - trunk/samples/kfifo/inttype-example.c | 157 -- trunk/samples/kfifo/record-example.c | 167 -- trunk/scripts/Makefile.headersinst | 3 +- trunk/scripts/kconfig/conf.c | 15 +- trunk/scripts/kconfig/confdata.c | 111 +- trunk/scripts/kconfig/expr.c | 2 +- trunk/scripts/kconfig/lkc.h | 10 - trunk/scripts/kconfig/nconf.c | 2 - trunk/scripts/kernel-doc | 2 - trunk/scripts/mod/modpost.c | 19 +- trunk/scripts/setlocalversion | 2 +- trunk/security/apparmor/lsm.c | 36 +- trunk/security/keys/internal.h | 5 + trunk/sound/aoa/soundbus/core.c | 2 +- trunk/sound/aoa/soundbus/soundbus.h | 2 +- trunk/sound/aoa/soundbus/sysfs.c | 2 +- trunk/sound/oss/ad1848.c | 2 +- trunk/sound/oss/au1550_ac97.c | 1 + trunk/sound/oss/sh_dac_audio.c | 1 + trunk/sound/pci/hda/hda_codec.c | 164 +- trunk/sound/pci/hda/hda_codec.h | 17 +- trunk/sound/pci/hda/hda_eld.c | 49 - trunk/sound/pci/hda/hda_intel.c | 6 +- trunk/sound/pci/hda/hda_local.h | 2 - trunk/sound/pci/hda/patch_cirrus.c | 2 +- trunk/sound/pci/hda/patch_conexant.c | 5 +- trunk/sound/pci/hda/patch_hdmi.c | 42 - trunk/sound/pci/hda/patch_intelhdmi.c | 1 - trunk/sound/pci/hda/patch_nvhdmi.c | 65 +- trunk/sound/pci/hda/patch_realtek.c | 43 +- trunk/sound/pci/hda/patch_sigmatel.c | 13 - trunk/sound/soc/blackfin/Kconfig | 7 +- trunk/sound/soc/blackfin/bf5xx-ad1980.c | 10 +- trunk/sound/soc/codecs/ad1980.c | 10 +- trunk/sound/soc/codecs/ad1980.h | 6 - trunk/sound/soc/codecs/wm8580.c | 6 +- trunk/sound/soc/codecs/wm8994.c | 23 +- trunk/sound/soc/fsl/mpc5200_dma.c | 4 +- trunk/sound/soc/fsl/mpc5200_dma.h | 4 +- trunk/sound/soc/fsl/mpc5200_psc_ac97.c | 4 +- trunk/sound/soc/fsl/mpc5200_psc_i2s.c | 4 +- trunk/sound/soc/fsl/mpc8610_hpcd.c | 4 +- trunk/sound/soc/imx/Kconfig | 4 +- trunk/sound/soc/soc-cache.c | 4 +- trunk/sound/sparc/amd7930.c | 8 +- trunk/sound/sparc/cs4231.c | 18 +- trunk/sound/sparc/dbri.c | 8 +- trunk/sound/usb/format.c | 8 - trunk/tools/perf/Makefile | 31 +- trunk/tools/perf/builtin-annotate.c | 2 +- trunk/tools/perf/builtin-report.c | 31 +- trunk/tools/perf/builtin-timechart.c | 4 +- trunk/tools/perf/builtin-trace.c | 19 +- trunk/tools/perf/util/debug.c | 2 +- trunk/tools/perf/util/debug.h | 9 +- trunk/tools/perf/util/hist.c | 16 +- trunk/tools/perf/util/hist.h | 3 +- trunk/tools/perf/util/include/linux/list.h | 8 - trunk/tools/perf/util/include/linux/types.h | 12 - .../perf/util/{ui/browsers/hists.c => newt.c} | 1540 +++++++---- trunk/tools/perf/util/probe-event.c | 11 +- trunk/tools/perf/util/probe-finder.c | 9 +- trunk/tools/perf/util/pstack.h | 2 - trunk/tools/perf/util/sort.c | 6 +- trunk/tools/perf/util/symbol.c | 40 +- trunk/tools/perf/util/symbol.h | 1 - trunk/tools/perf/util/ui/browser.c | 329 --- trunk/tools/perf/util/ui/browser.h | 46 - trunk/tools/perf/util/ui/browsers/annotate.c | 240 -- trunk/tools/perf/util/ui/browsers/map.c | 161 -- trunk/tools/perf/util/ui/browsers/map.h | 6 - trunk/tools/perf/util/ui/helpline.c | 69 - trunk/tools/perf/util/ui/helpline.h | 11 - trunk/tools/perf/util/ui/libslang.h | 27 - trunk/tools/perf/util/ui/progress.c | 60 - trunk/tools/perf/util/ui/progress.h | 11 - trunk/tools/perf/util/ui/setup.c | 42 - trunk/tools/perf/util/ui/util.c | 114 - trunk/tools/perf/util/ui/util.h | 10 - 1609 files changed, 222552 insertions(+), 53485 deletions(-) delete mode 100644 trunk/Documentation/hwmon/emc2103 delete mode 100644 trunk/Documentation/mmc/00-INDEX delete mode 100644 trunk/Documentation/mmc/mmc-dev-attrs.txt create mode 100644 trunk/Documentation/networking/wavelan.txt delete mode 100644 trunk/Documentation/scsi/scsi-parameters.txt create mode 100644 trunk/arch/arm/configs/s5pc110_defconfig delete mode 100644 trunk/arch/arm/mach-gemini/board-nas4220b.c delete mode 100644 trunk/arch/arm/mach-gemini/board-wbd111.c delete mode 100644 trunk/arch/arm/mach-gemini/board-wbd222.c delete mode 100644 trunk/arch/arm/mach-ixp4xx/vulcan-pci.c delete mode 100644 trunk/arch/arm/mach-ixp4xx/vulcan-setup.c delete mode 100644 trunk/arch/arm/mach-msm/board-trout-mmc.c delete mode 100644 trunk/arch/arm/mach-pxa/colibri-pxa270-evalboard.c delete mode 100644 trunk/arch/arm/mach-pxa/colibri-pxa270-income.c create mode 100644 trunk/arch/arm/mach-pxa/e330.c create mode 100644 trunk/arch/arm/mach-pxa/e350.c create mode 100644 trunk/arch/arm/mach-pxa/e400.c create mode 100644 trunk/arch/arm/mach-pxa/e740.c create mode 100644 trunk/arch/arm/mach-pxa/e750.c create mode 100644 trunk/arch/arm/mach-pxa/e800.c create mode 100644 trunk/arch/arm/mach-pxa/imote2.c delete mode 100644 trunk/arch/arm/mach-pxa/include/mach/palm27x.h delete mode 100644 trunk/arch/arm/mach-pxa/include/mach/pata_pxa.h create mode 100644 trunk/arch/arm/mach-pxa/include/mach/sharpsl.h delete mode 100644 trunk/arch/arm/mach-pxa/palm27x.c create mode 100644 trunk/arch/arm/mach-pxa/sharpsl.h delete mode 100644 trunk/arch/arm/mach-s3c64xx/mach-real6410.c delete mode 100644 trunk/arch/arm/mach-s3c64xx/setup-ide.c delete mode 100644 trunk/arch/arm/mach-s3c64xx/setup-keypad.c delete mode 100644 trunk/arch/arm/mach-s5p6440/setup-i2c1.c delete mode 100644 trunk/arch/arm/mach-s5pc100/setup-ide.c delete mode 100644 trunk/arch/arm/mach-s5pc100/setup-keypad.c delete mode 100644 trunk/arch/arm/mach-s5pv210/setup-ide.c delete mode 100644 trunk/arch/arm/mach-s5pv210/setup-keypad.c delete mode 100644 trunk/arch/arm/mach-s5pv310/Kconfig delete mode 100644 trunk/arch/arm/mach-s5pv310/Makefile delete mode 100644 trunk/arch/arm/mach-s5pv310/Makefile.boot delete mode 100644 trunk/arch/arm/mach-s5pv310/clock.c delete mode 100644 trunk/arch/arm/mach-s5pv310/cpu.c delete mode 100644 trunk/arch/arm/mach-s5pv310/headsmp.S delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/debug-macro.S delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/entry-macro.S delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/gpio.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/hardware.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/io.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/irqs.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/map.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/memory.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/pwm-clock.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/regs-clock.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/regs-irq.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/smp.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/system.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/timex.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/uncompress.h delete mode 100644 trunk/arch/arm/mach-s5pv310/include/mach/vmalloc.h delete mode 100644 trunk/arch/arm/mach-s5pv310/init.c delete mode 100644 trunk/arch/arm/mach-s5pv310/irq-combiner.c delete mode 100644 trunk/arch/arm/mach-s5pv310/localtimer.c delete mode 100644 trunk/arch/arm/mach-s5pv310/mach-smdkv310.c delete mode 100644 trunk/arch/arm/mach-s5pv310/mach-universal_c210.c delete mode 100644 trunk/arch/arm/mach-s5pv310/platsmp.c delete mode 100644 trunk/arch/arm/mach-s5pv310/setup-i2c0.c delete mode 100644 trunk/arch/arm/mach-s5pv310/setup-i2c1.c delete mode 100644 trunk/arch/arm/mach-s5pv310/setup-i2c2.c delete mode 100644 trunk/arch/arm/mach-s5pv310/time.c delete mode 100644 trunk/arch/arm/mach-shmobile/clock-sh7372.c delete mode 100644 trunk/arch/arm/mach-shmobile/clock-sh7377.c delete mode 100644 trunk/arch/arm/mach-shmobile/clock.c delete mode 100644 trunk/arch/arm/mach-w90x900/include/mach/i2c.h create mode 100644 trunk/arch/arm/plat-pxa/pmu.c delete mode 100644 trunk/arch/arm/plat-s5p/dev-fimc0.c delete mode 100644 trunk/arch/arm/plat-s5p/dev-fimc1.c delete mode 100644 trunk/arch/arm/plat-s5p/dev-fimc2.c delete mode 100644 trunk/arch/arm/plat-s5p/dev-pmu.c delete mode 100644 trunk/arch/arm/plat-s5p/include/plat/reset.h delete mode 100644 trunk/arch/arm/plat-s5p/include/plat/s5pv310.h delete mode 100644 trunk/arch/arm/plat-s5p/include/plat/system-reset.h delete mode 100644 trunk/arch/arm/plat-samsung/dev-hsmmc3.c delete mode 100644 trunk/arch/arm/plat-samsung/dev-ide.c delete mode 100644 trunk/arch/arm/plat-samsung/dev-keypad.c delete mode 100644 trunk/arch/arm/plat-samsung/include/plat/adc-core.h delete mode 100644 trunk/arch/arm/plat-samsung/include/plat/ata-core.h delete mode 100644 trunk/arch/arm/plat-samsung/include/plat/ata.h delete mode 100644 trunk/arch/arm/plat-samsung/include/plat/fb-core.h delete mode 100644 trunk/arch/arm/plat-samsung/include/plat/fimc-core.h delete mode 100644 trunk/arch/arm/plat-samsung/include/plat/keypad-core.h delete mode 100644 trunk/arch/arm/plat-samsung/include/plat/regs-ata.h delete mode 100644 trunk/arch/arm/plat-samsung/platformdata.c delete mode 100644 trunk/arch/x86/include/asm/xen/swiotlb-xen.h delete mode 100644 trunk/arch/x86/xen/pci-swiotlb-xen.c delete mode 100644 trunk/drivers/ata/pata_pxa.c rename trunk/drivers/{scsi => firmware}/iscsi_boot_sysfs.c (100%) delete mode 100644 trunk/drivers/gpio/stmpe-gpio.c delete mode 100644 trunk/drivers/gpio/sx150x.c delete mode 100644 trunk/drivers/gpu/drm/drm_edid_modes.h delete mode 100644 trunk/drivers/gpu/drm/nouveau/nvc0_fb.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/nvc0_fifo.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/nvc0_graph.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/nvc0_instmem.c delete mode 100644 trunk/drivers/hwmon/emc2103.c delete mode 100644 trunk/drivers/i2c/busses/i2c-nuc900.c delete mode 100644 trunk/drivers/i2c/i2c-mux.c delete mode 100644 trunk/drivers/i2c/muxes/Kconfig delete mode 100644 trunk/drivers/i2c/muxes/Makefile delete mode 100644 trunk/drivers/i2c/muxes/pca954x.c delete mode 100644 trunk/drivers/input/keyboard/stmpe-keypad.c delete mode 100644 trunk/drivers/input/touchscreen/stmpe-ts.c delete mode 100644 trunk/drivers/mfd/jz4740-adc.c delete mode 100644 trunk/drivers/mfd/max8998.c delete mode 100644 trunk/drivers/mfd/stmpe.c delete mode 100644 trunk/drivers/mfd/stmpe.h delete mode 100644 trunk/drivers/mfd/tps6586x.c delete mode 100644 trunk/drivers/mfd/twl6030-pwm.c delete mode 100644 trunk/drivers/mmc/core/sd.h delete mode 100644 trunk/drivers/mmc/host/sdhci-cns3xxx.c delete mode 100644 trunk/drivers/mmc/host/sdhci-pltfm.h delete mode 100644 trunk/drivers/pcmcia/pxa2xx_balloon3.c delete mode 100644 trunk/drivers/platform/x86/ideapad_acpi.c delete mode 100644 trunk/drivers/power/intel_mid_battery.c delete mode 100644 trunk/drivers/power/s3c_adc_battery.c delete mode 100644 trunk/drivers/regulator/ab8500.c delete mode 100644 trunk/drivers/regulator/ad5398.c delete mode 100644 trunk/drivers/regulator/isl6271a-regulator.c delete mode 100644 trunk/drivers/regulator/max8998.c delete mode 100644 trunk/drivers/regulator/tps6586x-regulator.c delete mode 100644 trunk/drivers/rtc/rtc-ds3232.c delete mode 100644 trunk/drivers/rtc/rtc-imxdi.c delete mode 100644 trunk/drivers/rtc/rtc-isl12022.c delete mode 100644 trunk/drivers/video/sh_mipi_dsi.c delete mode 100644 trunk/drivers/video/sh_mobile_hdmi.c delete mode 100644 trunk/drivers/xen/swiotlb-xen.c delete mode 100644 trunk/fs/ceph/locks.c delete mode 100644 trunk/fs/squashfs/lzo_wrapper.c delete mode 100644 trunk/include/linux/hugetlb_inline.h delete mode 100644 trunk/include/linux/i2c-mux.h delete mode 100644 trunk/include/linux/i2c/ltc4245.h delete mode 100644 trunk/include/linux/i2c/pca954x.h delete mode 100644 trunk/include/linux/i2c/sx150x.h delete mode 100644 trunk/include/linux/jz4740-adc.h delete mode 100644 trunk/include/linux/mfd/max8998-private.h delete mode 100644 trunk/include/linux/mfd/max8998.h create mode 100644 trunk/include/linux/mfd/mc13783-private.h delete mode 100644 trunk/include/linux/mfd/stmpe.h delete mode 100644 trunk/include/linux/mfd/tps6586x.h delete mode 100644 trunk/include/linux/regulator/ab8500.h delete mode 100644 trunk/include/linux/s3c_adc_battery.h create mode 100644 trunk/include/linux/wm97xx_batt.h delete mode 100644 trunk/include/video/mipi_display.h delete mode 100644 trunk/include/video/sh_mipi_dsi.h delete mode 100644 trunk/include/video/sh_mobile_hdmi.h delete mode 100644 trunk/include/xen/swiotlb-xen.h rename trunk/lib/raid6/{algos.c => raid6algos.c} (99%) rename trunk/lib/raid6/{altivec.uc => raid6altivec.uc} (100%) rename trunk/lib/raid6/{int.uc => raid6int.uc} (100%) rename trunk/lib/raid6/{mmx.c => raid6mmx.c} (98%) rename trunk/lib/raid6/{recov.c => raid6recov.c} (99%) rename trunk/lib/raid6/{sse1.c => raid6sse1.c} (98%) rename trunk/lib/raid6/{sse2.c => raid6sse2.c} (99%) create mode 100644 trunk/lib/raid6/raid6test/Makefile rename trunk/lib/raid6/{test => raid6test}/test.c (100%) rename trunk/lib/raid6/{x86.h => raid6x86.h} (99%) delete mode 100644 trunk/lib/raid6/test/Makefile delete mode 100644 trunk/samples/kfifo/Makefile delete mode 100644 trunk/samples/kfifo/bytestream-example.c delete mode 100644 trunk/samples/kfifo/dma-example.c delete mode 100644 trunk/samples/kfifo/inttype-example.c delete mode 100644 trunk/samples/kfifo/record-example.c rename trunk/tools/perf/util/{ui/browsers/hists.c => newt.c} (56%) delete mode 100644 trunk/tools/perf/util/ui/browser.c delete mode 100644 trunk/tools/perf/util/ui/browser.h delete mode 100644 trunk/tools/perf/util/ui/browsers/annotate.c delete mode 100644 trunk/tools/perf/util/ui/browsers/map.c delete mode 100644 trunk/tools/perf/util/ui/browsers/map.h delete mode 100644 trunk/tools/perf/util/ui/helpline.c delete mode 100644 trunk/tools/perf/util/ui/helpline.h delete mode 100644 trunk/tools/perf/util/ui/libslang.h delete mode 100644 trunk/tools/perf/util/ui/progress.c delete mode 100644 trunk/tools/perf/util/ui/progress.h delete mode 100644 trunk/tools/perf/util/ui/setup.c delete mode 100644 trunk/tools/perf/util/ui/util.c delete mode 100644 trunk/tools/perf/util/ui/util.h diff --git a/[refs] b/[refs] index 6fb723ce15ac..8af229697e0a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d7824370e26325c881b665350ce64fb0a4fde24a +refs/heads/master: 90a9ed9581b896d867645b21f0133795e3942fe6 diff --git a/trunk/Documentation/00-INDEX b/trunk/Documentation/00-INDEX index 8dfc6708a257..5405f7aecefc 100644 --- a/trunk/Documentation/00-INDEX +++ b/trunk/Documentation/00-INDEX @@ -130,6 +130,8 @@ edac.txt - information on EDAC - Error Detection And Correction eisa.txt - info on EISA bus support. +exception.txt + - how Linux v2.2 handles exceptions without verify_area etc. fault-injection/ - dir with docs about the fault injection capabilities infrastructure. fb/ @@ -232,8 +234,6 @@ memory.txt - info on typical Linux memory problems. mips/ - directory with info about Linux on MIPS architecture. -mmc/ - - directory with info about the MMC subsystem mono.txt - how to execute Mono-based .NET binaries with the help of BINFMT_MISC. mutex-design.txt diff --git a/trunk/Documentation/DMA-API-HOWTO.txt b/trunk/Documentation/DMA-API-HOWTO.txt index d568bc235bc0..98ce51796f71 100644 --- a/trunk/Documentation/DMA-API-HOWTO.txt +++ b/trunk/Documentation/DMA-API-HOWTO.txt @@ -738,31 +738,21 @@ to "Closing". CONFIG_NEED_SG_DMA_LENGTH if the architecture supports IOMMUs (including software IOMMU). -2) ARCH_DMA_MINALIGN +2) ARCH_KMALLOC_MINALIGN Architectures must ensure that kmalloc'ed buffer is DMA-safe. Drivers and subsystems depend on it. If an architecture isn't fully DMA-coherent (i.e. hardware doesn't ensure that data in the CPU cache is identical to data in main memory), - ARCH_DMA_MINALIGN must be set so that the memory allocator + ARCH_KMALLOC_MINALIGN must be set so that the memory allocator makes sure that kmalloc'ed buffer doesn't share a cache line with the others. See arch/arm/include/asm/cache.h as an example. - Note that ARCH_DMA_MINALIGN is about DMA memory alignment + Note that ARCH_KMALLOC_MINALIGN is about DMA memory alignment constraints. You don't need to worry about the architecture data alignment constraints (e.g. the alignment constraints about 64-bit objects). -3) Supporting multiple types of IOMMUs - - If your architecture needs to support multiple types of IOMMUs, you - can use include/linux/asm-generic/dma-mapping-common.h. It's a - library to support the DMA API with multiple types of IOMMUs. Lots - of architectures (x86, powerpc, sh, alpha, ia64, microblaze and - sparc) use it. Choose one to see how it can be used. If you need to - support multiple types of IOMMUs in a single system, the example of - x86 or powerpc helps. - Closing This document, and the API itself, would not be in its current diff --git a/trunk/Documentation/DMA-API.txt b/trunk/Documentation/DMA-API.txt index fe2326906610..05e2ae236865 100644 --- a/trunk/Documentation/DMA-API.txt +++ b/trunk/Documentation/DMA-API.txt @@ -455,6 +455,12 @@ Free memory allocated by the nonconsistent API. All parameters must be identical to those passed in (and returned by dma_alloc_noncoherent()). +int +dma_is_consistent(struct device *dev, dma_addr_t dma_handle) + +Returns true if the device dev is performing consistent DMA on the memory +area pointed to by the dma_handle. + int dma_get_cache_alignment(void) diff --git a/trunk/Documentation/DocBook/Makefile b/trunk/Documentation/DocBook/Makefile index 34929f24c284..4b603c5c3cc1 100644 --- a/trunk/Documentation/DocBook/Makefile +++ b/trunk/Documentation/DocBook/Makefile @@ -35,7 +35,7 @@ PS_METHOD = $(prefer-db2x) PHONY += xmldocs sgmldocs psdocs pdfdocs htmldocs mandocs installmandocs cleandocs xmldoclinks BOOKS := $(addprefix $(obj)/,$(DOCBOOKS)) -xmldocs: $(BOOKS) +xmldocs: $(BOOKS) xmldoclinks sgmldocs: xmldocs PS := $(patsubst %.xml, %.ps, $(BOOKS)) @@ -95,7 +95,7 @@ define rule_docproc ) > $(dir $@).$(notdir $@).cmd endef -%.xml: %.tmpl xmldoclinks FORCE +%.xml: %.tmpl FORCE $(call if_changed_rule,docproc) ### diff --git a/trunk/Documentation/DocBook/kernel-api.tmpl b/trunk/Documentation/DocBook/kernel-api.tmpl index a20c6f6fffc3..44b3def961a2 100644 --- a/trunk/Documentation/DocBook/kernel-api.tmpl +++ b/trunk/Documentation/DocBook/kernel-api.tmpl @@ -132,6 +132,7 @@ X!Ilib/string.c FIFO Buffer kfifo interface !Iinclude/linux/kfifo.h +!Ekernel/kfifo.c diff --git a/trunk/Documentation/cpu-hotplug.txt b/trunk/Documentation/cpu-hotplug.txt index 45d5a217484f..a99d7031cdf9 100644 --- a/trunk/Documentation/cpu-hotplug.txt +++ b/trunk/Documentation/cpu-hotplug.txt @@ -2,7 +2,7 @@ Maintainers: CPU Hotplug Core: - Rusty Russell + Rusty Russell Srivatsa Vaddagiri i386: Zwane Mwaikambo diff --git a/trunk/Documentation/devices.txt b/trunk/Documentation/devices.txt index d0d1df6cb5de..f2da781705b2 100644 --- a/trunk/Documentation/devices.txt +++ b/trunk/Documentation/devices.txt @@ -445,7 +445,6 @@ Your cooperation is appreciated. 233 = /dev/kmview View-OS A process with a view 234 = /dev/btrfs-control Btrfs control device 235 = /dev/autofs Autofs control device - 236 = /dev/mapper/control Device-Mapper control device 240-254 Reserved for local use 255 Reserved for MISC_DYNAMIC_MINOR diff --git a/trunk/Documentation/feature-removal-schedule.txt b/trunk/Documentation/feature-removal-schedule.txt index 842aa9de84a6..b16cbe4152ea 100644 --- a/trunk/Documentation/feature-removal-schedule.txt +++ b/trunk/Documentation/feature-removal-schedule.txt @@ -547,20 +547,3 @@ Why: superseded by acpi_sleep=nonvs Who: Rafael J. Wysocki ---------------------------- - -What: PCI DMA unmap state API -When: August 2012 -Why: PCI DMA unmap state API (include/linux/pci-dma.h) was replaced - with DMA unmap state API (DMA unmap state API can be used for - any bus). -Who: FUJITA Tomonori - ----------------------------- - -What: DMA_xxBIT_MASK macros -When: Jun 2011 -Why: DMA_xxBIT_MASK macros were replaced with DMA_BIT_MASK() macros. -Who: FUJITA Tomonori - ----------------------------- - diff --git a/trunk/Documentation/filesystems/Locking b/trunk/Documentation/filesystems/Locking index 2db4283efa8d..bbcc15651a21 100644 --- a/trunk/Documentation/filesystems/Locking +++ b/trunk/Documentation/filesystems/Locking @@ -374,6 +374,8 @@ prototypes: ssize_t (*aio_write) (struct kiocb *, const struct iovec *, unsigned long, loff_t); int (*readdir) (struct file *, void *, filldir_t); unsigned int (*poll) (struct file *, struct poll_table_struct *); + int (*ioctl) (struct inode *, struct file *, unsigned int, + unsigned long); long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); long (*compat_ioctl) (struct file *, unsigned int, unsigned long); int (*mmap) (struct file *, struct vm_area_struct *); @@ -407,7 +409,8 @@ write: no aio_write: no readdir: no poll: no -unlocked_ioctl: no +ioctl: yes (see below) +unlocked_ioctl: no (see below) compat_ioctl: no mmap: no open: no @@ -450,6 +453,9 @@ move ->readdir() to inode_operations and use a separate method for directory anything that resembles union-mount we won't have a struct file for all components. And there are other reasons why the current interface is a mess... +->ioctl() on regular files is superceded by the ->unlocked_ioctl() that +doesn't take the BKL. + ->read on directories probably must go away - we should just enforce -EISDIR in sys_read() and friends. diff --git a/trunk/Documentation/filesystems/squashfs.txt b/trunk/Documentation/filesystems/squashfs.txt index 66699afd66ca..203f7202cc9e 100644 --- a/trunk/Documentation/filesystems/squashfs.txt +++ b/trunk/Documentation/filesystems/squashfs.txt @@ -2,7 +2,7 @@ SQUASHFS 4.0 FILESYSTEM ======================= Squashfs is a compressed read-only filesystem for Linux. -It uses zlib/lzo compression to compress files, inodes and directories. +It uses zlib compression to compress files, inodes and directories. Inodes in the system are very small and all blocks are packed to minimise data overhead. Block sizes greater than 4K are supported up to a maximum of 1Mbytes (default block size 128K). diff --git a/trunk/Documentation/filesystems/vfs.txt b/trunk/Documentation/filesystems/vfs.txt index ed7e5efc06d8..94677e7dcb13 100644 --- a/trunk/Documentation/filesystems/vfs.txt +++ b/trunk/Documentation/filesystems/vfs.txt @@ -727,6 +727,7 @@ struct file_operations { ssize_t (*aio_write) (struct kiocb *, const struct iovec *, unsigned long, loff_t); int (*readdir) (struct file *, void *, filldir_t); unsigned int (*poll) (struct file *, struct poll_table_struct *); + int (*ioctl) (struct inode *, struct file *, unsigned int, unsigned long); long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); long (*compat_ioctl) (struct file *, unsigned int, unsigned long); int (*mmap) (struct file *, struct vm_area_struct *); @@ -767,7 +768,10 @@ otherwise noted. activity on this file and (optionally) go to sleep until there is activity. Called by the select(2) and poll(2) system calls - unlocked_ioctl: called by the ioctl(2) system call. + ioctl: called by the ioctl(2) system call + + unlocked_ioctl: called by the ioctl(2) system call. Filesystems that do not + require the BKL should use this method instead of the ioctl() above. compat_ioctl: called by the ioctl(2) system call when 32 bit system calls are used on 64 bit kernels. diff --git a/trunk/Documentation/gpio.txt b/trunk/Documentation/gpio.txt index d96a6dba5748..c2c6e9b39bbe 100644 --- a/trunk/Documentation/gpio.txt +++ b/trunk/Documentation/gpio.txt @@ -158,11 +158,10 @@ and configure pullups/pulldowns appropriately.) Spinlock-Safe GPIO access ------------------------- Most GPIO controllers can be accessed with memory read/write instructions. -Those don't need to sleep, and can safely be done from inside hard -(nonthreaded) IRQ handlers and similar contexts. +That doesn't need to sleep, and can safely be done from inside IRQ handlers. +(That includes hardirq contexts on RT kernels.) -Use the following calls to access such GPIOs, -for which gpio_cansleep() will always return false (see below): +Use these calls to access such GPIOs: /* GPIO INPUT: return zero or nonzero */ int gpio_get_value(unsigned gpio); @@ -211,31 +210,9 @@ To access such GPIOs, a different set of accessors is defined: /* GPIO OUTPUT, might sleep */ void gpio_set_value_cansleep(unsigned gpio, int value); - -Accessing such GPIOs requires a context which may sleep, for example -a threaded IRQ handler, and those accessors must be used instead of -spinlock-safe accessors without the cansleep() name suffix. - -Other than the fact that these accessors might sleep, and will work -on GPIOs that can't be accessed from hardIRQ handlers, these calls act -the same as the spinlock-safe calls. - - ** IN ADDITION ** calls to setup and configure such GPIOs must be made -from contexts which may sleep, since they may need to access the GPIO -controller chip too: (These setup calls are usually made from board -setup or driver probe/teardown code, so this is an easy constraint.) - - gpio_direction_input() - gpio_direction_output() - gpio_request() - -## gpio_request_one() -## gpio_request_array() -## gpio_free_array() - - gpio_free() - gpio_set_debounce() - +Other than the fact that these calls might sleep, and will not be ignored +for GPIOs that can't be accessed from IRQ handlers, these calls act the +same as the spinlock-safe calls. Claiming and Releasing GPIOs diff --git a/trunk/Documentation/hwmon/emc2103 b/trunk/Documentation/hwmon/emc2103 deleted file mode 100644 index a12b2c127140..000000000000 --- a/trunk/Documentation/hwmon/emc2103 +++ /dev/null @@ -1,33 +0,0 @@ -Kernel driver emc2103 -====================== - -Supported chips: - * SMSC EMC2103 - Addresses scanned: I2C 0x2e - Prefix: 'emc2103' - Datasheet: Not public - -Authors: - Steve Glendinning - -Description ------------ - -The Standard Microsystems Corporation (SMSC) EMC2103 chips -contain up to 4 temperature sensors and a single fan controller. - -Fan rotation speeds are reported in RPM (rotations per minute). An alarm is -triggered if the rotation speed has dropped below a programmable limit. Fan -readings can be divided by a programmable divider (1, 2, 4 or 8) to give -the readings more range or accuracy. Not all RPM values can accurately be -represented, so some rounding is done. With a divider of 1, the lowest -representable value is 480 RPM. - -This driver supports RPM based control, to use this a fan target -should be written to fan1_target and pwm1_enable should be set to 3. - -The 2103-2 and 2103-4 variants have a third temperature sensor, which can -be connected to two anti-parallel diodes. These values can be read -as temp3 and temp4. If only one diode is attached to this channel, temp4 -will show as "fault". The module parameter "apd=0" can be used to suppress -this 4th channel when anti-parallel diodes are not fitted. diff --git a/trunk/Documentation/hwmon/ltc4245 b/trunk/Documentation/hwmon/ltc4245 index b478b0864965..86b5880d8502 100644 --- a/trunk/Documentation/hwmon/ltc4245 +++ b/trunk/Documentation/hwmon/ltc4245 @@ -72,31 +72,9 @@ in6_min_alarm 5v output undervoltage alarm in7_min_alarm 3v output undervoltage alarm in8_min_alarm Vee (-12v) output undervoltage alarm -in9_input GPIO voltage data (see note 1) -in10_input GPIO voltage data (see note 1) -in11_input GPIO voltage data (see note 1) +in9_input GPIO voltage data power1_input 12v power usage (mW) power2_input 5v power usage (mW) power3_input 3v power usage (mW) power4_input Vee (-12v) power usage (mW) - - -Note 1 ------- - -If you have NOT configured the driver to sample all GPIO pins as analog -voltages, then the in10_input and in11_input sysfs attributes will not be -created. The driver will sample the GPIO pin that is currently connected to the -ADC as an analog voltage, and report the value in in9_input. - -If you have configured the driver to sample all GPIO pins as analog voltages, -then they will be sampled in round-robin fashion. If userspace reads too -slowly, -EAGAIN will be returned when you read the sysfs attribute containing -the sensor reading. - -The LTC4245 chip can be configured to sample all GPIO pins with two methods: -1) platform data -- see include/linux/i2c/ltc4245.h -2) OF device tree -- add the "ltc4245,use-extra-gpios" property to each chip - -The default mode of operation is to sample a single GPIO pin. diff --git a/trunk/Documentation/hwmon/pc87427 b/trunk/Documentation/hwmon/pc87427 index 8fdd08c9e48b..db5cc1227a83 100644 --- a/trunk/Documentation/hwmon/pc87427 +++ b/trunk/Documentation/hwmon/pc87427 @@ -18,11 +18,10 @@ Description The National Semiconductor Super I/O chip includes complete hardware monitoring capabilities. It can monitor up to 18 voltages, 8 fans and -6 temperature sensors. Only the fans and temperatures are supported at -the moment, voltages aren't. +6 temperature sensors. Only the fans are supported at the moment. -This chip also has fan controlling features (up to 4 PWM outputs), -which are partly supported by this driver. +This chip also has fan controlling features, which are not yet supported +by this driver either. The driver assumes that no more than one chip is present, which seems reasonable. @@ -37,23 +36,3 @@ signal. Speeds down to 83 RPM can be measured. An alarm is triggered if the rotation speed drops below a programmable limit. Another alarm is triggered if the speed is too low to be measured (including stalled or missing fan). - - -Fan Speed Control ------------------ - -Fan speed can be controlled by PWM outputs. There are 4 possible modes: -always off, always on, manual and automatic. The latter isn't supported -by the driver: you can only return to that mode if it was the original -setting, and the configuration interface is missing. - - -Temperature Monitoring ----------------------- - -The PC87427 relies on external sensors (following the SensorPath -standard), so the resolution and range depend on the type of sensor -connected. The integer part can be 8-bit or 9-bit, and can be signed or -not. I couldn't find a way to figure out the external sensor data -temperature format, so user-space adjustment (typically by a factor 2) -may be required. diff --git a/trunk/Documentation/hwmon/sysfs-interface b/trunk/Documentation/hwmon/sysfs-interface index ff45d1f837c8..d4e2917c6f18 100644 --- a/trunk/Documentation/hwmon/sysfs-interface +++ b/trunk/Documentation/hwmon/sysfs-interface @@ -107,24 +107,10 @@ in[0-*]_min Voltage min value. Unit: millivolt RW -in[0-*]_lcrit Voltage critical min value. - Unit: millivolt - RW - If voltage drops to or below this limit, the system may - take drastic action such as power down or reset. At the very - least, it should report a fault. - in[0-*]_max Voltage max value. Unit: millivolt RW -in[0-*]_crit Voltage critical max value. - Unit: millivolt - RW - If voltage reaches or exceeds this limit, the system may - take drastic action such as power down or reset. At the very - least, it should report a fault. - in[0-*]_input Voltage input value. Unit: millivolt RO @@ -298,7 +284,7 @@ temp[1-*]_input Temperature input value. Unit: millidegree Celsius RO -temp[1-*]_crit Temperature critical max value, typically greater than +temp[1-*]_crit Temperature critical value, typically greater than corresponding temp_max values. Unit: millidegree Celsius RW @@ -310,11 +296,6 @@ temp[1-*]_crit_hyst from the critical value. RW -temp[1-*]_lcrit Temperature critical min value, typically lower than - corresponding temp_min values. - Unit: millidegree Celsius - RW - temp[1-*]_offset Temperature offset which is added to the temperature reading by the chip. @@ -363,6 +344,9 @@ Also see the Alarms section for status flags associated with temperatures. * Currents * ************ +Note that no known chip provides current measurements as of writing, +so this part is theoretical, so to say. + curr[1-*]_max Current max value Unit: milliampere RW @@ -487,7 +471,6 @@ limit-related alarms, not both. The driver should just reflect the hardware implementation. in[0-*]_alarm -curr[1-*]_alarm fan[1-*]_alarm temp[1-*]_alarm Channel alarm @@ -499,8 +482,6 @@ OR in[0-*]_min_alarm in[0-*]_max_alarm -curr[1-*]_min_alarm -curr[1-*]_max_alarm fan[1-*]_min_alarm fan[1-*]_max_alarm temp[1-*]_min_alarm @@ -516,6 +497,7 @@ to notify open diodes, unconnected fans etc. where the hardware supports it. When this boolean has value 1, the measurement for that channel should not be trusted. +in[0-*]_fault fan[1-*]_fault temp[1-*]_fault Input fault condition @@ -531,7 +513,6 @@ beep_enable Master beep enable RW in[0-*]_beep -curr[1-*]_beep fan[1-*]_beep temp[1-*]_beep Channel beep diff --git a/trunk/Documentation/hwmon/w83627ehf b/trunk/Documentation/hwmon/w83627ehf index 13d556112fc0..b7e42ec4b26b 100644 --- a/trunk/Documentation/hwmon/w83627ehf +++ b/trunk/Documentation/hwmon/w83627ehf @@ -20,10 +20,6 @@ Supported chips: Prefix: 'w83667hg' Addresses scanned: ISA address retrieved from Super I/O registers Datasheet: not available - * Winbond W83667HG-B - Prefix: 'w83667hg' - Addresses scanned: ISA address retrieved from Super I/O registers - Datasheet: Available from Nuvoton upon request Authors: Jean Delvare @@ -36,8 +32,8 @@ Description ----------- This driver implements support for the Winbond W83627EHF, W83627EHG, -W83627DHG, W83627DHG-P, W83667HG and W83667HG-B super I/O chips. -We will refer to them collectively as Winbond chips. +W83627DHG, W83627DHG-P and W83667HG super I/O chips. We will refer to them +collectively as Winbond chips. The chips implement three temperature sensors, five fan rotation speed sensors, ten analog voltage sensors (only nine for the 627DHG), one @@ -72,15 +68,14 @@ follows: temp1 -> pwm1 temp2 -> pwm2 temp3 -> pwm3 -prog -> pwm4 (not on 667HG and 667HG-B; the programmable setting is not - supported by the driver) +prog -> pwm4 (not on 667HG; the programmable setting is not supported by + the driver) /sys files ---------- name - this is a standard hwmon device entry. For the W83627EHF and W83627EHG, - it is set to "w83627ehf", for the W83627DHG it is set to "w83627dhg", - and for the W83667HG it is set to "w83667hg". + it is set to "w83627ehf" and for the W83627DHG it is set to "w83627dhg" pwm[1-4] - this file stores PWM duty cycle or DC value (fan speed) in range: 0 (stop) to 255 (full) diff --git a/trunk/Documentation/i2c/instantiating-devices b/trunk/Documentation/i2c/instantiating-devices index 87da405a8597..e89490270aba 100644 --- a/trunk/Documentation/i2c/instantiating-devices +++ b/trunk/Documentation/i2c/instantiating-devices @@ -102,7 +102,7 @@ static int __devinit usb_hcd_pnx4008_probe(struct platform_device *pdev) memset(&i2c_info, 0, sizeof(struct i2c_board_info)); strlcpy(i2c_info.name, "isp1301_pnx", I2C_NAME_SIZE); isp1301_i2c_client = i2c_new_probed_device(i2c_adap, &i2c_info, - normal_i2c, NULL); + normal_i2c); i2c_put_adapter(i2c_adap); (...) } diff --git a/trunk/Documentation/kbuild/makefiles.txt b/trunk/Documentation/kbuild/makefiles.txt index c787ae512120..c375313cb128 100644 --- a/trunk/Documentation/kbuild/makefiles.txt +++ b/trunk/Documentation/kbuild/makefiles.txt @@ -45,6 +45,7 @@ This document describes the Linux kernel Makefiles. --- 7.1 header-y --- 7.2 objhdr-y --- 7.3 destination-y + --- 7.4 unifdef-y (deprecated) === 8 Kbuild Variables === 9 Makefile language @@ -1244,6 +1245,11 @@ See subsequent chapter for the syntax of the Kbuild file. will be located in the directory "include/linux" when exported. + --- 7.4 unifdef-y (deprecated) + + unifdef-y is deprecated. A direct replacement is header-y. + + === 8 Kbuild Variables The top Makefile exports the following variables: diff --git a/trunk/Documentation/kernel-parameters.txt b/trunk/Documentation/kernel-parameters.txt index 4956686f99bf..d529b1363e95 100644 --- a/trunk/Documentation/kernel-parameters.txt +++ b/trunk/Documentation/kernel-parameters.txt @@ -88,8 +88,8 @@ parameter is applicable: RAM RAM disk support is enabled. S390 S390 architecture is enabled. SCSI Appropriate SCSI support is enabled. - A lot of drivers have their options described inside - the Documentation/scsi/ sub-directory. + A lot of drivers has their options described inside of + Documentation/scsi/. SECURITY Different security models are enabled. SELINUX SELinux support is enabled. APPARMOR AppArmor support is enabled. @@ -284,12 +284,27 @@ and is between 256 and 4096 characters. It is defined in the file add_efi_memmap [EFI; X86] Include EFI memory map in kernel's map of available physical RAM. + advansys= [HW,SCSI] + See header of drivers/scsi/advansys.c. + agp= [AGP] { off | try_unsupported } off: disable AGP support try_unsupported: try to drive unsupported chipsets (may crash computer or cause data corruption) + aha152x= [HW,SCSI] + See Documentation/scsi/aha152x.txt. + + aha1542= [HW,SCSI] + Format: [,,[,]] + + aic7xxx= [HW,SCSI] + See Documentation/scsi/aic7xxx.txt. + + aic79xx= [HW,SCSI] + See Documentation/scsi/aic79xx.txt. + ALSA [HW,ALSA] See Documentation/sound/alsa/alsa-parameters.txt @@ -353,6 +368,8 @@ and is between 256 and 4096 characters. It is defined in the file atarimouse= [HW,MOUSE] Atari Mouse + atascsi= [HW,SCSI] Atari SCSI + atkbd.extra= [HW] Enable extra LEDs and keys on IBM RapidAccess, EzKey and similar keyboards @@ -402,6 +419,10 @@ and is between 256 and 4096 characters. It is defined in the file bttv.pll= See Documentation/video4linux/bttv/Insmod-options bttv.tuner= and Documentation/video4linux/bttv/CARDLIST + BusLogic= [HW,SCSI] + See drivers/scsi/BusLogic.c, comment before function + BusLogic_ParseDriverOptions(). + c101= [NET] Moxa C101 synchronous serial card cachesize= [BUGS=X86-32] Override level 2 CPU cache size detection. @@ -650,6 +671,8 @@ and is between 256 and 4096 characters. It is defined in the file dscc4.setup= [NET] + dtc3181e= [HW,SCSI] + dynamic_printk Enables pr_debug()/dev_dbg() calls if CONFIG_DYNAMIC_PRINTK_DEBUG has been enabled. These can also be switched on/off via @@ -690,6 +713,8 @@ and is between 256 and 4096 characters. It is defined in the file This is desgined to be used in conjunction with the boot argument: earlyprintk=vga + eata= [HW,SCSI] + edd= [EDD] Format: {"off" | "on" | "skip[mbr]"} @@ -745,6 +770,12 @@ and is between 256 and 4096 characters. It is defined in the file Format: ,,, See also /Documentation/fault-injection/. + fd_mcs= [HW,SCSI] + See header of drivers/scsi/fd_mcs.c. + + fdomain= [HW,SCSI] + See header of drivers/scsi/fdomain.c. + floppy= [HW] See Documentation/blockdev/floppy.txt. @@ -804,9 +835,14 @@ and is between 256 and 4096 characters. It is defined in the file When zero, profiling data is discarded and associated debugfs files are removed at module unload time. + gdth= [HW,SCSI] + See header of drivers/scsi/gdth.c. + gpt [EFI] Forces disk with valid GPT signature but invalid Protective MBR to be treated as GPT. + gvp11= [HW,SCSI] + hashdist= [KNL,NUMA] Large hashes allocated during boot are distributed across NUMA nodes. Defaults on for 64bit NUMA, off otherwise. @@ -879,6 +915,9 @@ and is between 256 and 4096 characters. It is defined in the file controller i8042.nopnp [HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX controllers + i8042.panicblink= + [HW] Frequency with which keyboard LEDs should blink + when kernel panics (default is 0.5 sec) i8042.reset [HW] Reset the controller during init and cleanup i8042.unlock [HW] Unlock (ignore) the keylock @@ -895,6 +934,9 @@ and is between 256 and 4096 characters. It is defined in the file i8k.restricted [HW] Allow controlling fans only if SYS_ADMIN capability is set. + ibmmcascsi= [HW,MCA,SCSI] IBM MicroChannel SCSI adapter + See Documentation/mca.txt. + icn= [HW,ISDN] Format: [,[,[,]]] @@ -944,6 +986,9 @@ and is between 256 and 4096 characters. It is defined in the file programs exec'd, files mmap'd for exec, and all files opened for read by uid=0. + in2000= [HW,SCSI] + See header of drivers/scsi/in2000.c. + init= [KNL] Format: Run specified binary instead of /sbin/init as init @@ -1021,6 +1066,9 @@ and is between 256 and 4096 characters. It is defined in the file See comment before ip2_setup() in drivers/char/ip2/ip2base.c. + ips= [HW,SCSI] Adaptec / IBM ServeRAID controller + See header of drivers/scsi/ips.c. + irqfixup [HW] When an interrupt is not handled search all handlers for it. Intended to get systems with badly broken @@ -1296,6 +1344,9 @@ and is between 256 and 4096 characters. It is defined in the file ltpc= [NET] Format: ,, + mac5380= [HW,SCSI] Format: + ,,,, + machvec= [IA64] Force the use of a particular machine-vector (machvec) in a generic kernel. Example: machvec=hpzx1_swiotlb @@ -1317,6 +1368,13 @@ and is between 256 and 4096 characters. It is defined in the file be mounted Format: <1-256> + max_luns= [SCSI] Maximum number of LUNs to probe. + Should be between 1 and 2^32-1. + + max_report_luns= + [SCSI] Maximum number of LUNs received. + Should be between 1 and 16384. + mcatest= [IA-64] mce [X86-32] Machine Check Exception @@ -1513,6 +1571,19 @@ and is between 256 and 4096 characters. It is defined in the file n2= [NET] SDL Inc. RISCom/N2 synchronous serial card + NCR_D700= [HW,SCSI] + See header of drivers/scsi/NCR_D700.c. + + ncr5380= [HW,SCSI] + + ncr53c400= [HW,SCSI] + + ncr53c400a= [HW,SCSI] + + ncr53c406a= [HW,SCSI] + + ncr53c8xx= [HW,SCSI] + netdev= [NET] Network devices parameters Format: ,,,, Note that mem_start is often overloaded to mean @@ -1791,6 +1862,10 @@ and is between 256 and 4096 characters. It is defined in the file OSS [HW,OSS] See Documentation/sound/oss/oss-parameters.txt + osst= [HW,SCSI] SCSI Tape Driver + Format: , + See also Documentation/scsi/st.txt. + panic= [KNL] Kernel behaviour on panic Format: @@ -1823,6 +1898,9 @@ and is between 256 and 4096 characters. It is defined in the file Currently this function knows 686a and 8231 chips. Format: [spp|ps2|epp|ecp|ecpepp] + pas16= [HW,SCSI] + See header of drivers/scsi/pas16.c. + pause_on_oops= Halt all CPUs after the first oops has been printed for the specified number of seconds. This is to be used if @@ -2189,6 +2267,30 @@ and is between 256 and 4096 characters. It is defined in the file sched_debug [KNL] Enables verbose scheduler debug messages. + scsi_debug_*= [SCSI] + See drivers/scsi/scsi_debug.c. + + scsi_default_dev_flags= + [SCSI] SCSI default device flags + Format: + + scsi_dev_flags= [SCSI] Black/white list entry for vendor and model + Format: :: + (flags are integer value) + + scsi_logging_level= [SCSI] a bit mask of logging levels + See drivers/scsi/scsi_logging.h for bits. Also + settable via sysctl at dev.scsi.logging_level + (/proc/sys/dev/scsi/logging_level). + There is also a nice 'scsi_logging_level' script in the + S390-tools package, available for download at + http://www-128.ibm.com/developerworks/linux/linux390/s390-tools-1.5.4.html + + scsi_mod.scan= [SCSI] sync (default) scans SCSI busses as they are + discovered. async scans them in kernel threads, + allowing boot to proceed. none ignores them, expecting + user space to do the scan. + security= [SECURITY] Choose a security module to enable at boot. If this boot parameter is not specified, only the first security module asking for security registration will be @@ -2222,6 +2324,9 @@ and is between 256 and 4096 characters. It is defined in the file The parameter means the number of CPUs to show, for example 1 means boot CPU only. + sim710= [SCSI,HW] + See header of drivers/scsi/sim710.c. + simeth= [IA-64] simscsi= @@ -2293,6 +2398,9 @@ and is between 256 and 4096 characters. It is defined in the file spia_pedr= spia_peddr= + st= [HW,SCSI] SCSI tape parameters (buffers, etc.) + See Documentation/scsi/st.txt. + stacktrace [FTRACE] Enabled the stack tracer on boot up. @@ -2350,12 +2458,18 @@ and is between 256 and 4096 characters. It is defined in the file switches= [HW,M68k] + sym53c416= [HW,SCSI] + See header of drivers/scsi/sym53c416.c. + sysrq_always_enabled [KNL] Ignore sysrq setting - this boot parameter will neutralize any effect of /proc/sys/kernel/sysrq. Useful for debugging. + t128= [HW,SCSI] + See header of drivers/scsi/t128.c. + tdfx= [HW,DRM] test_suspend= [SUSPEND] @@ -2392,6 +2506,10 @@ and is between 256 and 4096 characters. It is defined in the file : poll all this frequency 0: no polling (default) + tmscsim= [HW,SCSI] + See comment before function dc390_setup() in + drivers/scsi/tmscsim.c. + topology= [S390] Format: {off | on} Specify if the kernel should make use of the cpu @@ -2432,6 +2550,9 @@ and is between 256 and 4096 characters. It is defined in the file ,,,,,,, See also Documentation/input/joystick-parport.txt + u14-34f= [HW,SCSI] UltraStor 14F/34F SCSI host adapter + See header of drivers/scsi/u14-34f.c. + uhash_entries= [KNL,NET] Set number of hash buckets for UDP/UDP-Lite connections @@ -2597,6 +2718,12 @@ and is between 256 and 4096 characters. It is defined in the file overridden by individual drivers. 0 will hide cursors, 1 will display them. + wd33c93= [HW,SCSI] + See header of drivers/scsi/wd33c93.c. + + wd7000= [HW,SCSI] + See header of drivers/scsi/wd7000.c. + watchdog timers [HW,WDT] For information on watchdog timers, see Documentation/watchdog/watchdog-parameters.txt or other driver-specific files in the diff --git a/trunk/Documentation/mmc/00-INDEX b/trunk/Documentation/mmc/00-INDEX deleted file mode 100644 index fca586f5b853..000000000000 --- a/trunk/Documentation/mmc/00-INDEX +++ /dev/null @@ -1,4 +0,0 @@ -00-INDEX - - this file -mmc-dev-attrs.txt - - info on SD and MMC device attributes diff --git a/trunk/Documentation/mmc/mmc-dev-attrs.txt b/trunk/Documentation/mmc/mmc-dev-attrs.txt deleted file mode 100644 index ff2bd685bced..000000000000 --- a/trunk/Documentation/mmc/mmc-dev-attrs.txt +++ /dev/null @@ -1,56 +0,0 @@ -SD and MMC Device Attributes -============================ - -All attributes are read-only. - - cid Card Identifaction Register - csd Card Specific Data Register - scr SD Card Configuration Register (SD only) - date Manufacturing Date (from CID Register) - fwrev Firmware/Product Revision (from CID Register) (SD and MMCv1 only) - hwrev Hardware/Product Revision (from CID Register) (SD and MMCv1 only) - manfid Manufacturer ID (from CID Register) - name Product Name (from CID Register) - oemid OEM/Application ID (from CID Register) - serial Product Serial Number (from CID Register) - erase_size Erase group size - preferred_erase_size Preferred erase size - -Note on Erase Size and Preferred Erase Size: - - "erase_size" is the minimum size, in bytes, of an erase - operation. For MMC, "erase_size" is the erase group size - reported by the card. Note that "erase_size" does not apply - to trim or secure trim operations where the minimum size is - always one 512 byte sector. For SD, "erase_size" is 512 - if the card is block-addressed, 0 otherwise. - - SD/MMC cards can erase an arbitrarily large area up to and - including the whole card. When erasing a large area it may - be desirable to do it in smaller chunks for three reasons: - 1. A single erase command will make all other I/O on - the card wait. This is not a problem if the whole card - is being erased, but erasing one partition will make - I/O for another partition on the same card wait for the - duration of the erase - which could be a several - minutes. - 2. To be able to inform the user of erase progress. - 3. The erase timeout becomes too large to be very - useful. Because the erase timeout contains a margin - which is multiplied by the size of the erase area, - the value can end up being several minutes for large - areas. - - "erase_size" is not the most efficient unit to erase - (especially for SD where it is just one sector), - hence "preferred_erase_size" provides a good chunk - size for erasing large areas. - - For MMC, "preferred_erase_size" is the high-capacity - erase size if a card specifies one, otherwise it is - based on the capacity of the card. - - For SD, "preferred_erase_size" is the allocation unit - size specified by the card. - - "preferred_erase_size" is in bytes. diff --git a/trunk/Documentation/networking/wavelan.txt b/trunk/Documentation/networking/wavelan.txt new file mode 100644 index 000000000000..90e0ac4e15da --- /dev/null +++ b/trunk/Documentation/networking/wavelan.txt @@ -0,0 +1,74 @@ + The Wavelan drivers saga + ------------------------ + + By Jean Tourrilhes + + The Wavelan is a Radio network adapter designed by +Lucent. Under this generic name is hidden quite a variety of hardware, +and many Linux driver to support it. + The get the full story on Wireless LANs, please consult : + http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/ + +"wavelan" driver (old ISA Wavelan) +---------------- + o Config : Network device -> Wireless LAN -> AT&T WaveLAN + o Location : .../drivers/net/wireless/wavelan* + o in-line doc : .../drivers/net/wireless/wavelan.p.h + o on-line doc : + http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Wavelan.html + + This is the driver for the ISA version of the first generation +of the Wavelan, now discontinued. The device is 2 Mb/s, composed of a +Intel 82586 controller and a Lucent Modem, and is NOT 802.11 compliant. + The driver has been tested with the following hardware : + o Wavelan ISA 915 MHz (full length ISA card) + o Wavelan ISA 915 MHz 2.0 (half length ISA card) + o Wavelan ISA 2.4 GHz (full length ISA card, fixed frequency) + o Wavelan ISA 2.4 GHz 2.0 (half length ISA card, frequency selectable) + o Above cards with the optional DES encryption feature + +"wavelan_cs" driver (old Pcmcia Wavelan) +------------------- + o Config : Network device -> PCMCIA network -> + Pcmcia Wireless LAN -> AT&T/Lucent WaveLAN + o Location : .../drivers/net/pcmcia/wavelan* + o in-line doc : .../drivers/net/pcmcia/wavelan_cs.h + o on-line doc : + http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Wavelan.html + + This is the driver for the PCMCIA version of the first +generation of the Wavelan, now discontinued. The device is 2 Mb/s, +composed of a Intel 82593 controller (totally different from the 82586) +and a Lucent Modem, and NOT 802.11 compatible. + The driver has been tested with the following hardware : + o Wavelan Pcmcia 915 MHz 2.0 (Pcmcia card + separate + modem/antenna block) + o Wavelan Pcmcia 2.4 GHz 2.0 (Pcmcia card + separate + modem/antenna block) + +"wvlan_cs" driver (Wavelan IEEE, GPL) +----------------- + o Config : Not yet in kernel + o Location : Pcmcia package 3.1.10+ + o on-line doc : + http://web.archive.org/web/*/http://www.fasta.fh-dortmund.de/users/andy/wvlan/ + + This is the driver for the current generation of Wavelan IEEE, +which is 802.11 compatible. Depending on version, it is 2 Mb/s or 11 +Mb/s, with or without encryption, all implemented in Lucent specific +DSP (the Hermes). + This is a GPL full source PCMCIA driver (ISA is just a Pcmcia +card with ISA-Pcmcia bridge). + +"wavelan2_cs" driver (Wavelan IEEE, binary) +-------------------- + o Config : Not yet in kernel + o Location : ftp://sourceforge.org/pcmcia/contrib/ + + This driver support exactly the same hardware as the previous +driver, the main difference is that it is based on a binary library +and supported by Lucent. + + I hope it clears the confusion ;-) + + Jean diff --git a/trunk/Documentation/padata.txt b/trunk/Documentation/padata.txt index 7ddfe216a0aa..473ebf22cd69 100644 --- a/trunk/Documentation/padata.txt +++ b/trunk/Documentation/padata.txt @@ -19,7 +19,7 @@ overall control of how tasks are to be run: The pcpumask describes which processors will be used to execute work submitted to this instance in parallel. The cbcpumask defines which -processors are allowed to be used as the serialization callback processor. +processors are allowed to use as the serialization callback processor. The workqueue wq is where the work will actually be done; it should be a multithreaded queue, naturally. @@ -30,10 +30,10 @@ cpumasks this helper function can be used: Note: Padata maintains two kinds of cpumasks internally. The user supplied cpumasks, submitted by padata_alloc/padata_alloc_possible and the 'usable' -cpumasks. The usable cpumasks are always a subset of active CPUs in the -user supplied cpumasks; these are the cpumasks padata actually uses. So -it is legal to supply a cpumask to padata that contains offline CPUs. -Once an offline CPU in the user supplied cpumask comes online, padata +cpumasks. The usable cpumasks are always the subset of active cpus in the +user supplied cpumasks, these are the cpumasks padata actually use. So +it is legal to supply a cpumask to padata that contains offline cpus. +Once a offline cpu in the user supplied cpumask comes online, padata is going to use it. There are functions for enabling and disabling the instance: @@ -44,7 +44,7 @@ There are functions for enabling and disabling the instance: These functions are setting or clearing the "PADATA_INIT" flag; if that flag is not set, other functions will refuse to work. padata_start returns zero on success (flag set) or -EINVAL if the -padata cpumask contains no active CPU (flag not set). +padata cpumask contains no active cpu (flag not set). padata_stop clears the flag and blocks until the padata instance is unused. @@ -63,11 +63,11 @@ done with great frequency. It's possible to change both cpumasks of a padata instance with padata_set_cpumasks by specifying the cpumasks for parallel execution (pcpumask) -and for the serial callback function (cbcpumask). padata_set_cpumask is used to +and for the serial callback function (cbcpumask). padata_set_cpumask is to change just one of the cpumasks. Here cpumask_type is one of PADATA_CPU_SERIAL, PADATA_CPU_PARALLEL and cpumask specifies the new cpumask to use. -To simply add or remove one CPU from a certain cpumask the functions -padata_add_cpu/padata_remove_cpu are used. cpu specifies the CPU to add or +To simply add or remove one cpu from a certain cpumask the functions +padata_add_cpu/padata_remove_cpu are used. cpu specifies the cpu to add or remove and mask is one of PADATA_CPU_SERIAL, PADATA_CPU_PARALLEL. If a user is interested in padata cpumask changes, he can register to @@ -82,7 +82,7 @@ To unregister from that notifier: struct notifier_block *nblock); The padata cpumask change notifier notifies about changes of the usable -cpumasks, i.e. the subset of active CPUs in the user supplied cpumask. +cpumasks, i.e. the subset of active cpus in the user supplied cpumask. Padata calls the notifier chain with: @@ -92,7 +92,7 @@ Padata calls the notifier chain with: Here cpumask_change_notifier is registered notifier, notification_mask is one of PADATA_CPU_SERIAL, PADATA_CPU_PARALLEL and cpumask is a pointer -to a struct padata_cpumask that contains the new cpumask information. +to a struct padata_cpumask that contains the new cpumask informations. Actually submitting work to the padata instance requires the creation of a padata_priv structure: @@ -104,7 +104,7 @@ padata_priv structure: }; This structure will almost certainly be embedded within some larger -structure specific to the work to be done. Most of its fields are private to +structure specific to the work to be done. Most its fields are private to padata, but the structure should be zeroed at initialisation time, and the parallel() and serial() functions should be provided. Those functions will be called in the process of getting the work done as we will see diff --git a/trunk/Documentation/powerpc/dts-bindings/fsl/esdhc.txt b/trunk/Documentation/powerpc/dts-bindings/fsl/esdhc.txt index 64bcb8be973c..8a0040738969 100644 --- a/trunk/Documentation/powerpc/dts-bindings/fsl/esdhc.txt +++ b/trunk/Documentation/powerpc/dts-bindings/fsl/esdhc.txt @@ -14,8 +14,6 @@ Required properties: reports inverted write-protect state; - sdhci,1-bit-only : (optional) specifies that a controller can only handle 1-bit data transfers. - - sdhci,auto-cmd12: (optional) specifies that a controller can - only handle auto CMD12. Example: diff --git a/trunk/Documentation/scsi/scsi-parameters.txt b/trunk/Documentation/scsi/scsi-parameters.txt deleted file mode 100644 index 21e5798526ee..000000000000 --- a/trunk/Documentation/scsi/scsi-parameters.txt +++ /dev/null @@ -1,139 +0,0 @@ - SCSI Kernel Parameters - ~~~~~~~~~~~~~~~~~~~~~~ - -See Documentation/kernel-parameters.txt for general information on -specifying module parameters. - -This document may not be entirely up to date and comprehensive. The command -"modinfo -p ${modulename}" shows a current list of all parameters of a loadable -module. Loadable modules, after being loaded into the running kernel, also -reveal their parameters in /sys/module/${modulename}/parameters/. Some of these -parameters may be changed at runtime by the command -"echo -n ${value} > /sys/module/${modulename}/parameters/${parm}". - - - advansys= [HW,SCSI] - See header of drivers/scsi/advansys.c. - - aha152x= [HW,SCSI] - See Documentation/scsi/aha152x.txt. - - aha1542= [HW,SCSI] - Format: [,,[,]] - - aic7xxx= [HW,SCSI] - See Documentation/scsi/aic7xxx.txt. - - aic79xx= [HW,SCSI] - See Documentation/scsi/aic79xx.txt. - - atascsi= [HW,SCSI] Atari SCSI - - BusLogic= [HW,SCSI] - See drivers/scsi/BusLogic.c, comment before function - BusLogic_ParseDriverOptions(). - - dtc3181e= [HW,SCSI] - - eata= [HW,SCSI] - - fd_mcs= [HW,SCSI] - See header of drivers/scsi/fd_mcs.c. - - fdomain= [HW,SCSI] - See header of drivers/scsi/fdomain.c. - - gdth= [HW,SCSI] - See header of drivers/scsi/gdth.c. - - gvp11= [HW,SCSI] - - ibmmcascsi= [HW,MCA,SCSI] IBM MicroChannel SCSI adapter - See Documentation/mca.txt. - - in2000= [HW,SCSI] - See header of drivers/scsi/in2000.c. - - ips= [HW,SCSI] Adaptec / IBM ServeRAID controller - See header of drivers/scsi/ips.c. - - mac5380= [HW,SCSI] Format: - ,,,, - - max_luns= [SCSI] Maximum number of LUNs to probe. - Should be between 1 and 2^32-1. - - max_report_luns= - [SCSI] Maximum number of LUNs received. - Should be between 1 and 16384. - - NCR_D700= [HW,SCSI] - See header of drivers/scsi/NCR_D700.c. - - ncr5380= [HW,SCSI] - - ncr53c400= [HW,SCSI] - - ncr53c400a= [HW,SCSI] - - ncr53c406a= [HW,SCSI] - - ncr53c8xx= [HW,SCSI] - - nodisconnect [HW,SCSI,M68K] Disables SCSI disconnects. - - osst= [HW,SCSI] SCSI Tape Driver - Format: , - See also Documentation/scsi/st.txt. - - pas16= [HW,SCSI] - See header of drivers/scsi/pas16.c. - - scsi_debug_*= [SCSI] - See drivers/scsi/scsi_debug.c. - - scsi_default_dev_flags= - [SCSI] SCSI default device flags - Format: - - scsi_dev_flags= [SCSI] Black/white list entry for vendor and model - Format: :: - (flags are integer value) - - scsi_logging_level= [SCSI] a bit mask of logging levels - See drivers/scsi/scsi_logging.h for bits. Also - settable via sysctl at dev.scsi.logging_level - (/proc/sys/dev/scsi/logging_level). - There is also a nice 'scsi_logging_level' script in the - S390-tools package, available for download at - http://www-128.ibm.com/developerworks/linux/linux390/s390-tools-1.5.4.html - - scsi_mod.scan= [SCSI] sync (default) scans SCSI busses as they are - discovered. async scans them in kernel threads, - allowing boot to proceed. none ignores them, expecting - user space to do the scan. - - sim710= [SCSI,HW] - See header of drivers/scsi/sim710.c. - - st= [HW,SCSI] SCSI tape parameters (buffers, etc.) - See Documentation/scsi/st.txt. - - sym53c416= [HW,SCSI] - See header of drivers/scsi/sym53c416.c. - - t128= [HW,SCSI] - See header of drivers/scsi/t128.c. - - tmscsim= [HW,SCSI] - See comment before function dc390_setup() in - drivers/scsi/tmscsim.c. - - u14-34f= [HW,SCSI] UltraStor 14F/34F SCSI host adapter - See header of drivers/scsi/u14-34f.c. - - wd33c93= [HW,SCSI] - See header of drivers/scsi/wd33c93.c. - - wd7000= [HW,SCSI] - See header of drivers/scsi/wd7000.c. diff --git a/trunk/Documentation/sound/alsa/HD-Audio-Models.txt b/trunk/Documentation/sound/alsa/HD-Audio-Models.txt index ce46fa1e643e..03771d7c5dd7 100644 --- a/trunk/Documentation/sound/alsa/HD-Audio-Models.txt +++ b/trunk/Documentation/sound/alsa/HD-Audio-Models.txt @@ -83,8 +83,8 @@ ALC269 ====== basic Basic preset quanta Quanta FL1 - laptop-amic Laptops with analog-mic input - laptop-dmic Laptops with digital-mic input + eeepc-p703 ASUS Eeepc P703 P900A + eeepc-p901 ASUS Eeepc P901 S101 fujitsu FSC Amilo lifebook Fujitsu Lifebook S6420 auto auto-config reading BIOS (default) @@ -109,8 +109,6 @@ ALC662/663/272 asus-mode4 ASUS asus-mode5 ASUS asus-mode6 ASUS - asus-mode7 ASUS - asus-mode8 ASUS dell Dell with ALC272 dell-zm1 Dell ZM1 with ALC272 samsung-nc10 Samsung NC10 mini notebook @@ -297,10 +295,8 @@ Conexant 5066 ============= laptop Basic Laptop config (default) dell-laptop Dell laptops - dell-vostro Dell Vostro olpc-xo-1_5 OLPC XO 1.5 ideapad Lenovo IdeaPad U150 - thinkpad Lenovo Thinkpad STAC9200 ======== @@ -408,7 +404,6 @@ STAC92HD83* mic-ref Reference board with power management for ports dell-s14 Dell laptop hp HP laptops with (inverted) mute-LED - hp-dv7-4000 HP dv-7 4000 auto BIOS setup (default) STAC9872 @@ -421,7 +416,3 @@ Cirrus Logic CS4206/4207 mbp55 MacBook Pro 5,5 imac27 IMac 27 Inch auto BIOS setup (default) - -VIA VT17xx/VT18xx/VT20xx -======================== - auto BIOS setup (default) diff --git a/trunk/MAINTAINERS b/trunk/MAINTAINERS index b5b8baa1d70e..89399474d91f 100644 --- a/trunk/MAINTAINERS +++ b/trunk/MAINTAINERS @@ -616,10 +616,10 @@ M: Richard Purdie S: Maintained ARM/CORTINA SYSTEMS GEMINI ARM ARCHITECTURE -M: Hans Ulli Kroll +M: Paulius Zaleckas L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) -T: git git://git.berlios.de/gemini-board -S: Maintained +T: git git://gitorious.org/linux-gemini/mainline.git +S: Odd Fixes F: arch/arm/mach-gemini/ ARM/EBSA110 MACHINE SUPPORT @@ -641,10 +641,9 @@ T: topgit git://git.openezx.org/openezx.git F: arch/arm/mach-pxa/ezx.c ARM/FARADAY FA526 PORT -M: Hans Ulli Kroll +M: Paulius Zaleckas L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) -S: Maintained -T: git://git.berlios.de/gemini-board +S: Odd Fixes F: arch/arm/mm/*-fa* ARM/FOOTBRIDGE ARCHITECTURE @@ -693,13 +692,6 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/kristoffer/linux-hpc.git F: arch/arm/mach-sa1100/jornada720.c F: arch/arm/mach-sa1100/include/mach/jornada720.h -ARM/INCOME PXA270 SUPPORT -M: Marek Vasut -L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) -S: Maintained -F: arch/arm/mach-pxa/income.c -F: arch/arm/mach-pxa/include/mach-pxa/income.h - ARM/INTEL IOP32X ARM ARCHITECTURE M: Lennert Buytenhek M: Dan Williams @@ -955,9 +947,8 @@ ARM/SHMOBILE ARM ARCHITECTURE M: Paul Mundt M: Magnus Damm L: linux-sh@vger.kernel.org -W: http://oss.renesas.com -Q: http://patchwork.kernel.org/project/linux-sh/list/ T: git git://git.kernel.org/pub/scm/linux/kernel/git/lethal/genesis-2.6.git +W: http://oss.renesas.com S: Supported F: arch/arm/mach-shmobile/ F: drivers/sh/ @@ -4402,13 +4393,6 @@ M: Jim Cromie S: Maintained F: drivers/char/pc8736x_gpio.c -PC87427 HARDWARE MONITORING DRIVER -M: Jean Delvare -L: lm-sensors@lm-sensors.org -S: Maintained -F: Documentation/hwmon/pc87427 -F: drivers/hwmon/pc87427.c - PCA9532 LED DRIVER M: Riku Voipio S: Maintained @@ -5286,13 +5270,6 @@ S: Maintained F: Documentation/hwmon/smm665 F: drivers/hwmon/smm665.c -SMSC EMC2103 HARDWARE MONITOR DRIVER -M: Steve Glendinning -L: lm-sensors@lm-sensors.org -S: Supported -F: Documentation/hwmon/emc2103 -F: drivers/hwmon/emc2103.c - SMSC47B397 HARDWARE MONITOR DRIVER M: "Mark M. Hoffman" L: lm-sensors@lm-sensors.org @@ -6402,9 +6379,8 @@ S: Supported F: drivers/input/touchscreen/*wm97* F: include/linux/wm97xx.h -WOLFSON MICROELECTRONICS DRIVERS +WOLFSON MICROELECTRONICS PMIC DRIVERS M: Mark Brown -M: Ian Lartey T: git git://opensource.wolfsonmicro.com/linux-2.6-audioplus W: http://opensource.wolfsonmicro.com/node/8 S: Supported @@ -6419,8 +6395,8 @@ F: drivers/watchdog/wm83*_wdt.c F: include/linux/mfd/wm831x/ F: include/linux/mfd/wm8350/ F: include/linux/mfd/wm8400* -F: include/sound/wm????.h -F: sound/soc/codecs/wm* +F: sound/soc/codecs/wm8350.* +F: sound/soc/codecs/wm8400.* X.25 NETWORK LAYER M: Andrew Hendry diff --git a/trunk/Makefile b/trunk/Makefile index 788111d21559..7431c283f15b 100644 --- a/trunk/Makefile +++ b/trunk/Makefile @@ -189,6 +189,7 @@ SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \ # Note: Some architectures assign CROSS_COMPILE in their arch/*/Makefile export KBUILD_BUILDHOST := $(SUBARCH) ARCH ?= $(SUBARCH) +CROSS_COMPILE ?= CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%) # Architecture as present in compile.h diff --git a/trunk/arch/alpha/defconfig b/trunk/arch/alpha/defconfig index 539e8b5a6cbd..e43f68fd66b0 100644 --- a/trunk/arch/alpha/defconfig +++ b/trunk/arch/alpha/defconfig @@ -1,76 +1,926 @@ +# +# Automatically generated make config: don't edit +# Linux kernel version: 2.6.9-rc2 +# Sat Sep 25 15:38:35 2004 +# +CONFIG_ALPHA=y +CONFIG_64BIT=y +CONFIG_MMU=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_ISA_DMA=y +# CONFIG_GENERIC_IOMAP is not set + +# +# Code maturity level options +# CONFIG_EXPERIMENTAL=y +CONFIG_CLEAN_COMPILE=y +CONFIG_BROKEN_ON_SMP=y + +# +# General setup +# +CONFIG_LOCALVERSION="" +CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_POSIX_MQUEUE=y +# CONFIG_BSD_PROCESS_ACCT is not set +CONFIG_SYSCTL=y +# CONFIG_AUDIT is not set CONFIG_LOG_BUF_SHIFT=14 -# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +# CONFIG_HOTPLUG is not set +# CONFIG_IKCONFIG is not set +# CONFIG_EMBEDDED is not set +CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y +# CONFIG_KALLSYMS_EXTRA_PASS is not set +CONFIG_FUTEX=y +CONFIG_EPOLL=y +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_AS=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SHMEM=y +# CONFIG_TINY_SHMEM is not set + +# +# Loadable module support +# CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_OBSOLETE_MODPARM=y +# CONFIG_MODVERSIONS is not set +CONFIG_KMOD=y + +# +# System setup +# +CONFIG_ALPHA_GENERIC=y +# CONFIG_ALPHA_ALCOR is not set +# CONFIG_ALPHA_XL is not set +# CONFIG_ALPHA_BOOK1 is not set +# CONFIG_ALPHA_AVANTI_CH is not set +# CONFIG_ALPHA_CABRIOLET is not set +# CONFIG_ALPHA_DP264 is not set +# CONFIG_ALPHA_EB164 is not set +# CONFIG_ALPHA_EB64P_CH is not set +# CONFIG_ALPHA_EB66 is not set +# CONFIG_ALPHA_EB66P is not set +# CONFIG_ALPHA_EIGER is not set +# CONFIG_ALPHA_JENSEN is not set +# CONFIG_ALPHA_LX164 is not set +# CONFIG_ALPHA_LYNX is not set +# CONFIG_ALPHA_MARVEL is not set +# CONFIG_ALPHA_MIATA is not set +# CONFIG_ALPHA_MIKASA is not set +# CONFIG_ALPHA_NAUTILUS is not set +# CONFIG_ALPHA_NONAME_CH is not set +# CONFIG_ALPHA_NORITAKE is not set +# CONFIG_ALPHA_PC164 is not set +# CONFIG_ALPHA_P2K is not set +# CONFIG_ALPHA_RAWHIDE is not set +# CONFIG_ALPHA_RUFFIAN is not set +# CONFIG_ALPHA_RX164 is not set +# CONFIG_ALPHA_SX164 is not set +# CONFIG_ALPHA_SABLE is not set +# CONFIG_ALPHA_SHARK is not set +# CONFIG_ALPHA_TAKARA is not set +# CONFIG_ALPHA_TITAN is not set +# CONFIG_ALPHA_WILDFIRE is not set +CONFIG_ISA=y +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +CONFIG_ALPHA_CORE_AGP=y +CONFIG_ALPHA_BROKEN_IRQ_MASK=y +CONFIG_EISA=y +# CONFIG_SMP is not set +# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set CONFIG_VERBOSE_MCHECK=y +CONFIG_VERBOSE_MCHECK_ON=1 +CONFIG_PCI_LEGACY_PROC=y +CONFIG_PCI_NAMES=y +CONFIG_EISA_PCI_EISA=y +CONFIG_EISA_VIRTUAL_ROOT=y +CONFIG_EISA_NAMES=y CONFIG_SRM_ENV=m -CONFIG_NET=y -CONFIG_PACKET=y -CONFIG_UNIX=y -CONFIG_XFRM_USER=m -CONFIG_NET_KEY=m -CONFIG_INET=y -CONFIG_IP_MULTICAST=y -CONFIG_INET_AH=m -CONFIG_INET_ESP=m -# CONFIG_IPV6 is not set -CONFIG_NETFILTER=y -CONFIG_IP_NF_QUEUE=m -CONFIG_IP_NF_IPTABLES=m -CONFIG_IP_NF_FILTER=m -CONFIG_VLAN_8021Q=m +CONFIG_BINFMT_ELF=y +# CONFIG_BINFMT_AOUT is not set +# CONFIG_BINFMT_EM86 is not set +# CONFIG_BINFMT_MISC is not set + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +# CONFIG_DEBUG_DRIVER is not set + +# +# Memory Technology Devices (MTD) +# +# CONFIG_MTD is not set + +# +# Parallel port support +# +# CONFIG_PARPORT is not set + +# +# Plug and Play support +# CONFIG_PNP=y +# CONFIG_PNP_DEBUG is not set + +# +# Protocols +# CONFIG_ISAPNP=y + +# +# Block devices +# CONFIG_BLK_DEV_FD=y +# CONFIG_BLK_DEV_XD is not set +# CONFIG_BLK_CPQ_DA is not set +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=m +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +# CONFIG_BLK_DEV_NBD is not set +# CONFIG_BLK_DEV_SX8 is not set +# CONFIG_BLK_DEV_RAM is not set + +# +# ATA/ATAPI/MFM/RLL support +# CONFIG_IDE=y +CONFIG_IDE_MAX_HWIFS=4 +CONFIG_BLK_DEV_IDE=y + +# +# Please see Documentation/ide.txt for help/info on IDE drives +# +# CONFIG_BLK_DEV_IDE_SATA is not set +CONFIG_BLK_DEV_IDEDISK=y +CONFIG_IDEDISK_MULTI_MODE=y CONFIG_BLK_DEV_IDECD=y +# CONFIG_BLK_DEV_IDETAPE is not set +# CONFIG_BLK_DEV_IDEFLOPPY is not set +# CONFIG_BLK_DEV_IDESCSI is not set +# CONFIG_IDE_TASK_IOCTL is not set +# CONFIG_IDE_TASKFILE_IO is not set + +# +# IDE chipset support/bugfixes +# CONFIG_IDE_GENERIC=y +# CONFIG_BLK_DEV_IDEPNP is not set +CONFIG_BLK_DEV_IDEPCI=y +# CONFIG_IDEPCI_SHARE_IRQ is not set +# CONFIG_BLK_DEV_OFFBOARD is not set CONFIG_BLK_DEV_GENERIC=y +# CONFIG_BLK_DEV_OPTI621 is not set +CONFIG_BLK_DEV_IDEDMA_PCI=y +# CONFIG_BLK_DEV_IDEDMA_FORCED is not set +CONFIG_IDEDMA_PCI_AUTO=y +# CONFIG_IDEDMA_ONLYDISK is not set +# CONFIG_BLK_DEV_AEC62XX is not set CONFIG_BLK_DEV_ALI15X3=y +# CONFIG_WDC_ALI15X3 is not set +# CONFIG_BLK_DEV_AMD74XX is not set CONFIG_BLK_DEV_CMD64X=y +# CONFIG_BLK_DEV_TRIFLEX is not set CONFIG_BLK_DEV_CY82C693=y +# CONFIG_BLK_DEV_CS5520 is not set +# CONFIG_BLK_DEV_CS5530 is not set +# CONFIG_BLK_DEV_HPT34X is not set +# CONFIG_BLK_DEV_HPT366 is not set +# CONFIG_BLK_DEV_SC1200 is not set +# CONFIG_BLK_DEV_PIIX is not set +# CONFIG_BLK_DEV_NS87415 is not set +# CONFIG_BLK_DEV_PDC202XX_OLD is not set +# CONFIG_BLK_DEV_PDC202XX_NEW is not set +# CONFIG_BLK_DEV_SVWKS is not set +# CONFIG_BLK_DEV_SIIMAGE is not set +# CONFIG_BLK_DEV_SLC90E66 is not set +# CONFIG_BLK_DEV_TRM290 is not set +# CONFIG_BLK_DEV_VIA82CXXX is not set +# CONFIG_IDE_ARM is not set +# CONFIG_IDE_CHIPSETS is not set +CONFIG_BLK_DEV_IDEDMA=y +# CONFIG_IDEDMA_IVB is not set +CONFIG_IDEDMA_AUTO=y +# CONFIG_BLK_DEV_HD is not set + +# +# SCSI device support +# CONFIG_SCSI=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# CONFIG_BLK_DEV_SD=y +# CONFIG_CHR_DEV_ST is not set +# CONFIG_CHR_DEV_OSST is not set CONFIG_BLK_DEV_SR=y CONFIG_BLK_DEV_SR_VENDOR=y +# CONFIG_CHR_DEV_SG is not set + +# +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs +# +# CONFIG_SCSI_MULTI_LUN is not set +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set + +# +# SCSI Transport Attributes +# +# CONFIG_SCSI_SPI_ATTRS is not set +# CONFIG_SCSI_FC_ATTRS is not set + +# +# SCSI low-level drivers +# +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_7000FASST is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AHA1542 is not set +# CONFIG_SCSI_AHA1740 is not set +# CONFIG_SCSI_AACRAID is not set CONFIG_SCSI_AIC7XXX=m CONFIG_AIC7XXX_CMDS_PER_DEVICE=253 +CONFIG_AIC7XXX_RESET_DELAY_MS=5000 +# CONFIG_AIC7XXX_PROBE_EISA_VL is not set # CONFIG_AIC7XXX_DEBUG_ENABLE is not set +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +# CONFIG_SCSI_AIC7XXX_OLD is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_IN2000 is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_SCSI_SATA is not set +# CONFIG_SCSI_BUSLOGIC is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_DTC3280 is not set +# CONFIG_SCSI_EATA is not set +# CONFIG_SCSI_EATA_PIO is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_GDTH is not set +# CONFIG_SCSI_GENERIC_NCR5380 is not set +# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_NCR53C406A is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_IPR is not set +# CONFIG_SCSI_PAS16 is not set +# CONFIG_SCSI_PSI240I is not set +# CONFIG_SCSI_QLOGIC_FAS is not set +# CONFIG_SCSI_QLOGIC_ISP is not set +# CONFIG_SCSI_QLOGIC_FC is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +CONFIG_SCSI_QLA2XXX=y +# CONFIG_SCSI_QLA21XX is not set +# CONFIG_SCSI_QLA22XX is not set +# CONFIG_SCSI_QLA2300 is not set +# CONFIG_SCSI_QLA2322 is not set +# CONFIG_SCSI_QLA6312 is not set +# CONFIG_SCSI_QLA6322 is not set +# CONFIG_SCSI_SIM710 is not set +# CONFIG_SCSI_SYM53C416 is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_DC390T is not set +# CONFIG_SCSI_T128 is not set +# CONFIG_SCSI_U14_34F is not set +# CONFIG_SCSI_DEBUG is not set + +# +# Old CD-ROM drivers (not SCSI, not IDE) +# +# CONFIG_CD_NO_IDESCSI is not set + +# +# Multi-device support (RAID and LVM) +# +# CONFIG_MD is not set + +# +# Fusion MPT device support +# +# CONFIG_FUSION is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_IEEE1394 is not set + +# +# I2O device support +# +# CONFIG_I2O is not set + +# +# Networking support +# +CONFIG_NET=y + +# +# Networking options +# +CONFIG_PACKET=y +# CONFIG_PACKET_MMAP is not set +CONFIG_NETLINK_DEV=y +CONFIG_UNIX=y +CONFIG_NET_KEY=m +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +# CONFIG_IP_ADVANCED_ROUTER is not set +# CONFIG_IP_PNP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE is not set +# CONFIG_IP_MROUTE is not set +# CONFIG_ARPD is not set +# CONFIG_SYN_COOKIES is not set +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +# CONFIG_INET_IPCOMP is not set +# CONFIG_INET_TUNNEL is not set + +# +# IP: Virtual Server Configuration +# +# CONFIG_IP_VS is not set +# CONFIG_IPV6 is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set + +# +# IP: Netfilter Configuration +# +CONFIG_IP_NF_CONNTRACK=m +# CONFIG_IP_NF_CT_ACCT is not set +# CONFIG_IP_NF_CT_PROTO_SCTP is not set +CONFIG_IP_NF_FTP=m +CONFIG_IP_NF_IRC=m +# CONFIG_IP_NF_TFTP is not set +# CONFIG_IP_NF_AMANDA is not set +CONFIG_IP_NF_QUEUE=m +CONFIG_IP_NF_IPTABLES=m +# CONFIG_IP_NF_MATCH_LIMIT is not set +# CONFIG_IP_NF_MATCH_IPRANGE is not set +# CONFIG_IP_NF_MATCH_MAC is not set +# CONFIG_IP_NF_MATCH_PKTTYPE is not set +# CONFIG_IP_NF_MATCH_MARK is not set +# CONFIG_IP_NF_MATCH_MULTIPORT is not set +# CONFIG_IP_NF_MATCH_TOS is not set +# CONFIG_IP_NF_MATCH_RECENT is not set +# CONFIG_IP_NF_MATCH_ECN is not set +# CONFIG_IP_NF_MATCH_DSCP is not set +# CONFIG_IP_NF_MATCH_AH_ESP is not set +# CONFIG_IP_NF_MATCH_LENGTH is not set +# CONFIG_IP_NF_MATCH_TTL is not set +# CONFIG_IP_NF_MATCH_TCPMSS is not set +# CONFIG_IP_NF_MATCH_HELPER is not set +# CONFIG_IP_NF_MATCH_STATE is not set +# CONFIG_IP_NF_MATCH_CONNTRACK is not set +# CONFIG_IP_NF_MATCH_OWNER is not set +# CONFIG_IP_NF_MATCH_ADDRTYPE is not set +# CONFIG_IP_NF_MATCH_REALM is not set +# CONFIG_IP_NF_MATCH_SCTP is not set +# CONFIG_IP_NF_MATCH_COMMENT is not set +CONFIG_IP_NF_FILTER=m +# CONFIG_IP_NF_TARGET_REJECT is not set +# CONFIG_IP_NF_TARGET_LOG is not set +# CONFIG_IP_NF_TARGET_ULOG is not set +# CONFIG_IP_NF_TARGET_TCPMSS is not set +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_NAT_NEEDED=y +CONFIG_IP_NF_TARGET_MASQUERADE=m +# CONFIG_IP_NF_TARGET_REDIRECT is not set +# CONFIG_IP_NF_TARGET_NETMAP is not set +# CONFIG_IP_NF_TARGET_SAME is not set +# CONFIG_IP_NF_NAT_SNMP_BASIC is not set +CONFIG_IP_NF_NAT_IRC=m +CONFIG_IP_NF_NAT_FTP=m +# CONFIG_IP_NF_MANGLE is not set +# CONFIG_IP_NF_RAW is not set +# CONFIG_IP_NF_ARPTABLES is not set +CONFIG_IP_NF_COMPAT_IPCHAINS=y +CONFIG_XFRM=y +CONFIG_XFRM_USER=m + +# +# SCTP Configuration (EXPERIMENTAL) +# +# CONFIG_IP_SCTP is not set +# CONFIG_ATM is not set +# CONFIG_BRIDGE is not set +CONFIG_VLAN_8021Q=m +# CONFIG_DECNET is not set +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_NET_DIVERT is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set +# CONFIG_NET_HW_FLOWCONTROL is not set + +# +# QoS and/or fair queueing +# +# CONFIG_NET_SCHED is not set +# CONFIG_NET_CLS_ROUTE is not set + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set +# CONFIG_HAMRADIO is not set +# CONFIG_IRDA is not set +# CONFIG_BT is not set CONFIG_NETDEVICES=y CONFIG_DUMMY=m +# CONFIG_BONDING is not set +# CONFIG_EQUALIZER is not set +# CONFIG_TUN is not set +# CONFIG_ETHERTAP is not set +# CONFIG_NET_SB1000 is not set + +# +# ARCnet devices +# +# CONFIG_ARCNET is not set + +# +# Ethernet (10 or 100Mbit) +# CONFIG_NET_ETHERNET=y +CONFIG_MII=y +# CONFIG_HAPPYMEAL is not set +# CONFIG_SUNGEM is not set CONFIG_NET_VENDOR_3COM=y +# CONFIG_EL1 is not set +# CONFIG_EL2 is not set +# CONFIG_ELPLUS is not set +# CONFIG_EL16 is not set +# CONFIG_EL3 is not set +# CONFIG_3C515 is not set CONFIG_VORTEX=y +# CONFIG_TYPHOON is not set +# CONFIG_LANCE is not set +# CONFIG_NET_VENDOR_SMC is not set +# CONFIG_NET_VENDOR_RACAL is not set + +# +# Tulip family network device support +# CONFIG_NET_TULIP=y CONFIG_DE2104X=m CONFIG_TULIP=y +# CONFIG_TULIP_MWI is not set CONFIG_TULIP_MMIO=y +# CONFIG_TULIP_NAPI is not set +# CONFIG_DE4X5 is not set +# CONFIG_WINBOND_840 is not set +# CONFIG_DM9102 is not set +# CONFIG_AT1700 is not set +# CONFIG_DEPCA is not set +# CONFIG_HP100 is not set +# CONFIG_NET_ISA is not set CONFIG_NET_PCI=y +# CONFIG_PCNET32 is not set +# CONFIG_AMD8111_ETH is not set +# CONFIG_ADAPTEC_STARFIRE is not set +# CONFIG_AC3200 is not set +# CONFIG_APRICOT is not set +# CONFIG_B44 is not set +# CONFIG_FORCEDETH is not set +# CONFIG_CS89x0 is not set +# CONFIG_DGRS is not set +# CONFIG_EEPRO100 is not set +# CONFIG_E100 is not set +# CONFIG_LNE390 is not set +# CONFIG_FEALNX is not set +# CONFIG_NATSEMI is not set +# CONFIG_NE2K_PCI is not set +# CONFIG_NE3210 is not set +# CONFIG_ES3210 is not set +# CONFIG_8139CP is not set +# CONFIG_8139TOO is not set +# CONFIG_SIS900 is not set +# CONFIG_EPIC100 is not set +# CONFIG_SUNDANCE is not set +# CONFIG_VIA_RHINE is not set +# CONFIG_VIA_VELOCITY is not set +# CONFIG_NET_POCKET is not set + +# +# Ethernet (1000 Mbit) +# +# CONFIG_ACENIC is not set +# CONFIG_DL2K is not set +# CONFIG_E1000 is not set +# CONFIG_NS83820 is not set +# CONFIG_HAMACHI is not set CONFIG_YELLOWFIN=y +# CONFIG_R8169 is not set +# CONFIG_SK98LIN is not set +# CONFIG_TIGON3 is not set + +# +# Ethernet (10000 Mbit) +# +# CONFIG_IXGB is not set +# CONFIG_S2IO is not set + +# +# Token Ring devices +# +# CONFIG_TR is not set + +# +# Wireless LAN (non-hamradio) +# +# CONFIG_NET_RADIO is not set + +# +# Wan interfaces +# +# CONFIG_WAN is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +# CONFIG_PPP is not set +# CONFIG_SLIP is not set +# CONFIG_NET_FC is not set +# CONFIG_SHAPER is not set +# CONFIG_NETCONSOLE is not set + +# +# ISDN subsystem +# +# CONFIG_ISDN is not set + +# +# Telephony Support +# +# CONFIG_PHONE is not set + +# +# Input device support +# +CONFIG_INPUT=y + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +# CONFIG_INPUT_JOYDEV is not set +# CONFIG_INPUT_TSDEV is not set +# CONFIG_INPUT_EVDEV is not set +# CONFIG_INPUT_EVBUG is not set + +# +# Input I/O drivers +# +# CONFIG_GAMEPORT is not set +CONFIG_SOUND_GAMEPORT=y +CONFIG_SERIO=y +CONFIG_SERIO_I8042=y +CONFIG_SERIO_SERPORT=y +# CONFIG_SERIO_CT82C710 is not set +# CONFIG_SERIO_PCIPS2 is not set +# CONFIG_SERIO_RAW is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +CONFIG_KEYBOARD_ATKBD=y +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_XTKBD is not set +# CONFIG_KEYBOARD_NEWTON is not set +CONFIG_INPUT_MOUSE=y +CONFIG_MOUSE_PS2=y +# CONFIG_MOUSE_SERIAL is not set +# CONFIG_MOUSE_INPORT is not set +# CONFIG_MOUSE_LOGIBM is not set +# CONFIG_MOUSE_PC110PAD is not set +# CONFIG_MOUSE_VSXXXAA is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +# CONFIG_INPUT_MISC is not set + +# +# Character devices +# +CONFIG_VT=y +CONFIG_VT_CONSOLE=y +CONFIG_HW_CONSOLE=y +# CONFIG_SERIAL_NONSTANDARD is not set + +# +# Serial drivers +# CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_NR_UARTS=4 +# CONFIG_SERIAL_8250_EXTENDED is not set + +# +# Non-8250 serial port support +# +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_UNIX98_PTYS=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=256 + +# +# IPMI +# +# CONFIG_IPMI_HANDLER is not set + +# +# Watchdog Cards +# +# CONFIG_WATCHDOG is not set CONFIG_RTC=y +# CONFIG_DTLK is not set +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set + +# +# Ftape, the floppy tape device driver +# +# CONFIG_FTAPE is not set +# CONFIG_AGP is not set +# CONFIG_DRM is not set +# CONFIG_RAW_DRIVER is not set + +# +# I2C support +# +# CONFIG_I2C is not set + +# +# Dallas's 1-wire bus +# +# CONFIG_W1 is not set + +# +# Misc devices +# + +# +# Multimedia devices +# +# CONFIG_VIDEO_DEV is not set + +# +# Digital Video Broadcasting Devices +# +# CONFIG_DVB is not set + +# +# Graphics support +# +# CONFIG_FB is not set + +# +# Console display driver support +# +CONFIG_VGA_CONSOLE=y +# CONFIG_MDA_CONSOLE is not set +CONFIG_DUMMY_CONSOLE=y + +# +# Sound +# +# CONFIG_SOUND is not set + +# +# USB support +# +# CONFIG_USB is not set + +# +# USB Gadget Support +# +# CONFIG_USB_GADGET is not set + +# +# File systems +# CONFIG_EXT2_FS=y +# CONFIG_EXT2_FS_XATTR is not set +# CONFIG_EXT3_FS is not set +# CONFIG_JBD is not set CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +# CONFIG_REISERFS_PROC_INFO is not set +# CONFIG_REISERFS_FS_XATTR is not set +# CONFIG_JFS_FS is not set +# CONFIG_XFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_ROMFS_FS is not set +# CONFIG_QUOTA is not set CONFIG_AUTOFS_FS=m +# CONFIG_AUTOFS4_FS is not set + +# +# CD-ROM/DVD Filesystems +# CONFIG_ISO9660_FS=y +# CONFIG_JOLIET is not set +# CONFIG_ZISOFS is not set +# CONFIG_UDF_FS is not set + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=y CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +# CONFIG_NTFS_FS is not set + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y +CONFIG_SYSFS=y +# CONFIG_DEVFS_FS is not set +# CONFIG_DEVPTS_FS_XATTR is not set CONFIG_TMPFS=y +# CONFIG_HUGETLB_PAGE is not set +CONFIG_RAMFS=y + +# +# Miscellaneous filesystems +# +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_HFSPLUS_FS is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_CRAMFS is not set +# CONFIG_VXFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set + +# +# Network File Systems +# CONFIG_NFS_FS=m CONFIG_NFS_V3=y +# CONFIG_NFS_V4 is not set +# CONFIG_NFS_DIRECTIO is not set CONFIG_NFSD=m CONFIG_NFSD_V3=y +# CONFIG_NFSD_V4 is not set +CONFIG_NFSD_TCP=y +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_EXPORTFS=m +CONFIG_SUNRPC=m +# CONFIG_RPCSEC_GSS_KRB5 is not set +# CONFIG_RPCSEC_GSS_SPKM3 is not set +# CONFIG_SMB_FS is not set +# CONFIG_CIFS is not set +# CONFIG_NCP_FS is not set +# CONFIG_CODA_FS is not set +# CONFIG_AFS_FS is not set + +# +# Partition Types +# +# CONFIG_PARTITION_ADVANCED is not set +CONFIG_OSF_PARTITION=y +CONFIG_MSDOS_PARTITION=y + +# +# Native Language Support +# +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_CODEPAGE_437=y -CONFIG_MAGIC_SYSRQ=y +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +# CONFIG_NLS_CODEPAGE_850 is not set +# CONFIG_NLS_CODEPAGE_852 is not set +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +# CONFIG_NLS_CODEPAGE_866 is not set +# CONFIG_NLS_CODEPAGE_869 is not set +# CONFIG_NLS_CODEPAGE_936 is not set +# CONFIG_NLS_CODEPAGE_950 is not set +# CONFIG_NLS_CODEPAGE_932 is not set +# CONFIG_NLS_CODEPAGE_949 is not set +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +# CONFIG_NLS_ASCII is not set +# CONFIG_NLS_ISO8859_1 is not set +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +# CONFIG_NLS_UTF8 is not set + +# +# Profiling support +# +# CONFIG_PROFILING is not set + +# +# Kernel hacking +# CONFIG_DEBUG_KERNEL=y +CONFIG_MAGIC_SYSRQ=y +# CONFIG_DEBUG_SLAB is not set +# CONFIG_DEBUG_SPINLOCK is not set CONFIG_DEBUG_INFO=y +CONFIG_EARLY_PRINTK=y +# CONFIG_DEBUG_SEMAPHORE is not set CONFIG_ALPHA_LEGACY_START_ADDRESS=y CONFIG_MATHEMU=y + +# +# Security options +# +# CONFIG_SECURITY is not set + +# +# Cryptographic options +# +CONFIG_CRYPTO=y CONFIG_CRYPTO_HMAC=y +# CONFIG_CRYPTO_NULL is not set +# CONFIG_CRYPTO_MD4 is not set +CONFIG_CRYPTO_MD5=m +CONFIG_CRYPTO_SHA1=m +# CONFIG_CRYPTO_SHA256 is not set +# CONFIG_CRYPTO_SHA512 is not set +# CONFIG_CRYPTO_WHIRLPOOL is not set +CONFIG_CRYPTO_DES=m +# CONFIG_CRYPTO_BLOWFISH is not set +# CONFIG_CRYPTO_TWOFISH is not set +# CONFIG_CRYPTO_SERPENT is not set +# CONFIG_CRYPTO_AES is not set +# CONFIG_CRYPTO_CAST5 is not set +# CONFIG_CRYPTO_CAST6 is not set +# CONFIG_CRYPTO_TEA is not set +# CONFIG_CRYPTO_ARC4 is not set +# CONFIG_CRYPTO_KHAZAD is not set +# CONFIG_CRYPTO_DEFLATE is not set +# CONFIG_CRYPTO_MICHAEL_MIC is not set +# CONFIG_CRYPTO_CRC32C is not set +# CONFIG_CRYPTO_TEST is not set + +# +# Library routines +# +# CONFIG_CRC_CCITT is not set +CONFIG_CRC32=y +# CONFIG_LIBCRC32C is not set diff --git a/trunk/arch/alpha/include/asm/Kbuild b/trunk/arch/alpha/include/asm/Kbuild index e423defed91e..b7c8f188b313 100644 --- a/trunk/arch/alpha/include/asm/Kbuild +++ b/trunk/arch/alpha/include/asm/Kbuild @@ -1,10 +1,11 @@ include include/asm-generic/Kbuild.asm -header-y += compiler.h -header-y += console.h -header-y += fpu.h header-y += gentrap.h +header-y += regdef.h header-y += pal.h header-y += reg.h -header-y += regdef.h -header-y += sysinfo.h + +unifdef-y += console.h +unifdef-y += fpu.h +unifdef-y += sysinfo.h +unifdef-y += compiler.h diff --git a/trunk/arch/alpha/include/asm/dma-mapping.h b/trunk/arch/alpha/include/asm/dma-mapping.h index 4567aca6fdd6..1bce8169733c 100644 --- a/trunk/arch/alpha/include/asm/dma-mapping.h +++ b/trunk/arch/alpha/include/asm/dma-mapping.h @@ -41,7 +41,9 @@ static inline int dma_set_mask(struct device *dev, u64 mask) #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) +#define dma_is_consistent(d, h) (1) #define dma_cache_sync(dev, va, size, dir) ((void)0) +#define dma_get_cache_alignment() L1_CACHE_BYTES #endif /* _ALPHA_DMA_MAPPING_H */ diff --git a/trunk/arch/alpha/kernel/osf_sys.c b/trunk/arch/alpha/kernel/osf_sys.c index fb58150a7e8f..88131c6e42e3 100644 --- a/trunk/arch/alpha/kernel/osf_sys.c +++ b/trunk/arch/alpha/kernel/osf_sys.c @@ -244,7 +244,7 @@ do_osf_statfs(struct path *path, struct osf_statfs __user *buffer, return error; } -SYSCALL_DEFINE3(osf_statfs, const char __user *, pathname, +SYSCALL_DEFINE3(osf_statfs, char __user *, pathname, struct osf_statfs __user *, buffer, unsigned long, bufsiz) { struct path path; @@ -358,7 +358,7 @@ osf_procfs_mount(char *dirname, struct procfs_args __user *args, int flags) return do_mount("", dirname, "proc", flags, NULL); } -SYSCALL_DEFINE4(osf_mount, unsigned long, typenr, const char __user *, path, +SYSCALL_DEFINE4(osf_mount, unsigned long, typenr, char __user *, path, int, flag, void __user *, data) { int retval; @@ -932,7 +932,7 @@ SYSCALL_DEFINE3(osf_setitimer, int, which, struct itimerval32 __user *, in, } -SYSCALL_DEFINE2(osf_utimes, const char __user *, filename, +SYSCALL_DEFINE2(osf_utimes, char __user *, filename, struct timeval32 __user *, tvs) { struct timespec tv[2]; diff --git a/trunk/arch/alpha/kernel/process.c b/trunk/arch/alpha/kernel/process.c index 88e608aebc8c..395a464353b8 100644 --- a/trunk/arch/alpha/kernel/process.c +++ b/trunk/arch/alpha/kernel/process.c @@ -387,7 +387,7 @@ EXPORT_SYMBOL(dump_elf_task_fp); * sys_execve() executes a new program. */ asmlinkage int -do_sys_execve(const char __user *ufilename, char __user * __user *argv, +do_sys_execve(char __user *ufilename, char __user * __user *argv, char __user * __user *envp, struct pt_regs *regs) { int error; diff --git a/trunk/arch/arm/Kconfig b/trunk/arch/arm/Kconfig index 92951103255a..232f0c758252 100644 --- a/trunk/arch/arm/Kconfig +++ b/trunk/arch/arm/Kconfig @@ -644,7 +644,6 @@ config ARCH_S3C2410 select ARCH_HAS_CPUFREQ select HAVE_CLK select ARCH_USES_GETTIMEOFFSET - select HAVE_S3C2410_I2C help Samsung S3C2410X CPU based systems, such as the Simtec Electronics BAST (), the IPAQ 1940 or @@ -674,8 +673,6 @@ config ARCH_S3C64XX select S3C_DEV_NAND select USB_ARCH_HAS_OHCI select SAMSUNG_GPIOLIB_4BIT - select HAVE_S3C2410_I2C - select HAVE_S3C2410_WATCHDOG help Samsung S3C64XX series based systems @@ -684,10 +681,7 @@ config ARCH_S5P6440 select CPU_V6 select GENERIC_GPIO select HAVE_CLK - select HAVE_S3C2410_WATCHDOG select ARCH_USES_GETTIMEOFFSET - select HAVE_S3C2410_I2C - select HAVE_S3C_RTC help Samsung S5P6440 CPU based systems @@ -697,7 +691,6 @@ config ARCH_S5P6442 select GENERIC_GPIO select HAVE_CLK select ARCH_USES_GETTIMEOFFSET - select HAVE_S3C2410_WATCHDOG help Samsung S5P6442 CPU based systems @@ -708,9 +701,6 @@ config ARCH_S5PC100 select CPU_V7 select ARM_L1_CACHE_SHIFT_6 select ARCH_USES_GETTIMEOFFSET - select HAVE_S3C2410_I2C - select HAVE_S3C_RTC - select HAVE_S3C2410_WATCHDOG help Samsung S5PC100 series based systems @@ -721,21 +711,9 @@ config ARCH_S5PV210 select HAVE_CLK select ARM_L1_CACHE_SHIFT_6 select ARCH_USES_GETTIMEOFFSET - select HAVE_S3C2410_I2C - select HAVE_S3C_RTC - select HAVE_S3C2410_WATCHDOG help Samsung S5PV210/S5PC110 series based systems -config ARCH_S5PV310 - bool "Samsung S5PV310/S5PC210" - select CPU_V7 - select GENERIC_GPIO - select HAVE_CLK - select GENERIC_CLOCKEVENTS - help - Samsung S5PV310 series based systems - config ARCH_SHARK bool "Shark" select CPU_SA110 @@ -937,8 +915,6 @@ source "arch/arm/mach-s5pc100/Kconfig" source "arch/arm/mach-s5pv210/Kconfig" -source "arch/arm/mach-s5pv310/Kconfig" - source "arch/arm/mach-shmobile/Kconfig" source "arch/arm/plat-stmp3xxx/Kconfig" @@ -1064,18 +1040,6 @@ config PL310_ERRATA_588369 is not correctly implemented in PL310 as clean lines are not invalidated as a result of these operations. Note that this errata uses Texas Instrument's secure monitor api. - -config ARM_ERRATA_720789 - bool "ARM errata: TLBIASIDIS and TLBIMVAIS operations can broadcast a faulty ASID" - depends on CPU_V7 && SMP - help - This option enables the workaround for the 720789 Cortex-A9 (prior to - r2p0) erratum. A faulty ASID can be sent to the other CPUs for the - broadcasted CP15 TLB maintenance operations TLBIASIDIS and TLBIMVAIS. - As a consequence of this erratum, some TLB entries which should be - invalidated are not, resulting in an incoherency in the system page - tables. The workaround changes the TLB flushing routines to invalidate - entries regardless of the ASID. endmenu source "arch/arm/common/Kconfig" @@ -1144,11 +1108,11 @@ config SMP bool "Symmetric Multi-Processing (EXPERIMENTAL)" depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\ MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 ||\ - ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4) + ARCH_U8500 || ARCH_VEXPRESS_CA9X4 || ARCH_TEGRA) depends on GENERIC_CLOCKEVENTS select USE_GENERIC_SMP_HELPERS - select HAVE_ARM_SCU if ARCH_REALVIEW || ARCH_OMAP4 || ARCH_S5PV310 ||\ - ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4 + select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500 || \ + ARCH_VEXPRESS_CA9X4 || ARCH_TEGRA) help This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If @@ -1218,10 +1182,10 @@ config LOCAL_TIMERS bool "Use local timer interrupts" depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \ REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || \ - ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4) + ARCH_U8500 || ARCH_VEXPRESS_CA9X4 || ARCH_TEGRA) default y - select HAVE_ARM_TWD if ARCH_REALVIEW || ARCH_OMAP4 || ARCH_S5PV310 || \ - ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS + select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_VEXPRESS || ARCH_OMAP4 || \\ + ARCH_U8500 || ARCH_TEGRA help Enable support for local timers on SMP platforms, rather then the legacy IPI broadcast method. Local timers allows the system @@ -1232,8 +1196,7 @@ source kernel/Kconfig.preempt config HZ int - default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P6440 || \ - ARCH_S5P6442 || ARCH_S5PV210 || ARCH_S5PV310 + default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P6440 || ARCH_S5P6442 || ARCH_S5PV210 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER default AT91_TIMER_HZ if ARCH_AT91 default SHMOBILE_TIMER_HZ if ARCH_SHMOBILE diff --git a/trunk/arch/arm/Makefile b/trunk/arch/arm/Makefile index 99b8200138d2..a8d4dca9da35 100644 --- a/trunk/arch/arm/Makefile +++ b/trunk/arch/arm/Makefile @@ -174,7 +174,6 @@ machine-$(CONFIG_ARCH_S5P6440) := s5p6440 machine-$(CONFIG_ARCH_S5P6442) := s5p6442 machine-$(CONFIG_ARCH_S5PC100) := s5pc100 machine-$(CONFIG_ARCH_S5PV210) := s5pv210 -machine-$(CONFIG_ARCH_S5PV310) := s5pv310 machine-$(CONFIG_ARCH_SA1100) := sa1100 machine-$(CONFIG_ARCH_SHARK) := shark machine-$(CONFIG_ARCH_SHMOBILE) := shmobile diff --git a/trunk/arch/arm/boot/compressed/Makefile b/trunk/arch/arm/boot/compressed/Makefile index 68775e33476c..7636c9b3f9a7 100644 --- a/trunk/arch/arm/boot/compressed/Makefile +++ b/trunk/arch/arm/boot/compressed/Makefile @@ -33,7 +33,7 @@ ifeq ($(CONFIG_CPU_XSCALE),y) OBJS += head-xscale.o endif -ifeq ($(CONFIG_PXA_SHARPSL_DETECT_MACH_ID),y) +ifeq ($(CONFIG_PXA_SHARPSL),y) OBJS += head-sharpsl.o endif diff --git a/trunk/arch/arm/boot/compressed/head.S b/trunk/arch/arm/boot/compressed/head.S index 6af9907c3b5c..abf4d65acf62 100644 --- a/trunk/arch/arm/boot/compressed/head.S +++ b/trunk/arch/arm/boot/compressed/head.S @@ -170,8 +170,9 @@ not_angel: .text adr r0, LC0 - ldmia r0, {r1, r2, r3, r5, r6, r11, ip} - ldr sp, [r0, #28] + ARM( ldmia r0, {r1, r2, r3, r5, r6, r11, ip, sp}) + THUMB( ldmia r0, {r1, r2, r3, r5, r6, r11, ip} ) + THUMB( ldr sp, [r0, #32] ) #ifdef CONFIG_AUTO_ZRELADDR @ determine final kernel image address and r4, pc, #0xf8000000 diff --git a/trunk/arch/arm/common/it8152.c b/trunk/arch/arm/common/it8152.c index 6c0913562455..7974baacafce 100644 --- a/trunk/arch/arm/common/it8152.c +++ b/trunk/arch/arm/common/it8152.c @@ -263,6 +263,14 @@ static int it8152_pci_platform_notify_remove(struct device *dev) return 0; } +int dma_needs_bounce(struct device *dev, dma_addr_t dma_addr, size_t size) +{ + dev_dbg(dev, "%s: dma_addr %08x, size %08x\n", + __func__, dma_addr, size); + return (dev->bus == &pci_bus_type) && + ((dma_addr + size - PHYS_OFFSET) >= SZ_64M); +} + int __init it8152_pci_setup(int nr, struct pci_sys_data *sys) { it8152_io.start = IT8152_IO_BASE + 0x12000; diff --git a/trunk/arch/arm/configs/s5pc110_defconfig b/trunk/arch/arm/configs/s5pc110_defconfig new file mode 100644 index 000000000000..22c2d147f793 --- /dev/null +++ b/trunk/arch/arm/configs/s5pc110_defconfig @@ -0,0 +1,66 @@ +CONFIG_EXPERIMENTAL=y +CONFIG_SYSFS_DEPRECATED_V2=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_KALLSYMS_ALL=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +# CONFIG_BLK_DEV_BSG is not set +CONFIG_ARCH_S5PV210=y +CONFIG_S3C_LOWLEVEL_UART_PORT=1 +CONFIG_MACH_SMDKC110=y +CONFIG_VMSPLIT_2G=y +CONFIG_PREEMPT=y +CONFIG_AEABI=y +CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" +CONFIG_VFP=y +CONFIG_NEON=y +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_SIZE=8192 +# CONFIG_MISC_DEVICES is not set +CONFIG_SCSI=y +CONFIG_BLK_DEV_SD=y +CONFIG_CHR_DEV_SG=y +CONFIG_INPUT_EVDEV=y +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_SAMSUNG=y +CONFIG_SERIAL_SAMSUNG_CONSOLE=y +CONFIG_HW_RANDOM=y +# CONFIG_HWMON is not set +# CONFIG_VGA_CONSOLE is not set +# CONFIG_HID_SUPPORT is not set +# CONFIG_USB_SUPPORT is not set +CONFIG_EXT2_FS=y +CONFIG_INOTIFY=y +CONFIG_MSDOS_FS=y +CONFIG_VFAT_FS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_CRAMFS=y +CONFIG_ROMFS_FS=y +CONFIG_PARTITION_ADVANCED=y +CONFIG_BSD_DISKLABEL=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_ASCII=y +CONFIG_NLS_ISO8859_1=y +CONFIG_MAGIC_SYSRQ=y +CONFIG_DEBUG_KERNEL=y +# CONFIG_DEBUG_PREEMPT is not set +CONFIG_DEBUG_RT_MUTEXES=y +CONFIG_DEBUG_SPINLOCK=y +CONFIG_DEBUG_MUTEXES=y +CONFIG_DEBUG_SPINLOCK_SLEEP=y +CONFIG_DEBUG_INFO=y +# CONFIG_RCU_CPU_STALL_DETECTOR is not set +CONFIG_SYSCTL_SYSCALL_CHECK=y +CONFIG_DEBUG_USER=y +CONFIG_DEBUG_ERRORS=y +CONFIG_DEBUG_LL=y +CONFIG_EARLY_PRINTK=y +CONFIG_DEBUG_S3C_UART=1 +CONFIG_CRC_CCITT=y diff --git a/trunk/arch/arm/configs/s5pv210_defconfig b/trunk/arch/arm/configs/s5pv210_defconfig index 0488a1eb4d7d..1753836d0055 100644 --- a/trunk/arch/arm/configs/s5pv210_defconfig +++ b/trunk/arch/arm/configs/s5pv210_defconfig @@ -7,11 +7,6 @@ CONFIG_MODULE_UNLOAD=y # CONFIG_BLK_DEV_BSG is not set CONFIG_ARCH_S5PV210=y CONFIG_S3C_LOWLEVEL_UART_PORT=1 -CONFIG_S3C_DEV_FB=y -CONFIG_S5PV210_SETUP_FB_24BPP=y -CONFIG_MACH_AQUILA=y -CONFIG_MACH_GONI=y -CONFIG_MACH_SMDKC110=y CONFIG_MACH_SMDKV210=y CONFIG_VMSPLIT_2G=y CONFIG_PREEMPT=y diff --git a/trunk/arch/arm/include/asm/Kbuild b/trunk/arch/arm/include/asm/Kbuild index 6550db3aa5c7..73237bd130a2 100644 --- a/trunk/arch/arm/include/asm/Kbuild +++ b/trunk/arch/arm/include/asm/Kbuild @@ -1,3 +1,3 @@ include include/asm-generic/Kbuild.asm -header-y += hwcap.h +unifdef-y += hwcap.h diff --git a/trunk/arch/arm/include/asm/cache.h b/trunk/arch/arm/include/asm/cache.h index 9d6122096fbe..66c160b8547f 100644 --- a/trunk/arch/arm/include/asm/cache.h +++ b/trunk/arch/arm/include/asm/cache.h @@ -14,7 +14,7 @@ * cache before the transfer is done, causing old data to be seen by * the CPU. */ -#define ARCH_DMA_MINALIGN L1_CACHE_BYTES +#define ARCH_KMALLOC_MINALIGN L1_CACHE_BYTES /* * With EABI on ARMv5 and above we must have 64-bit aligned slab pointers. diff --git a/trunk/arch/arm/include/asm/dma-mapping.h b/trunk/arch/arm/include/asm/dma-mapping.h index c226fe10553e..69ce0727edb5 100644 --- a/trunk/arch/arm/include/asm/dma-mapping.h +++ b/trunk/arch/arm/include/asm/dma-mapping.h @@ -144,6 +144,16 @@ static inline int dma_set_mask(struct device *dev, u64 dma_mask) return 0; } +static inline int dma_get_cache_alignment(void) +{ + return 32; +} + +static inline int dma_is_consistent(struct device *dev, dma_addr_t handle) +{ + return !!arch_is_coherent(); +} + /* * DMA errors are defined by all-bits-set in the DMA address. */ @@ -288,15 +298,7 @@ extern void dmabounce_unregister_dev(struct device *); * DMA access and 1 if the buffer needs to be bounced. * */ -#ifdef CONFIG_SA1111 extern int dma_needs_bounce(struct device*, dma_addr_t, size_t); -#else -static inline int dma_needs_bounce(struct device *dev, dma_addr_t addr, - size_t size) -{ - return 0; -} -#endif /* * The DMA API, implemented by dmabounce.c. See below for descriptions. diff --git a/trunk/arch/arm/include/asm/elf.h b/trunk/arch/arm/include/asm/elf.h index 5747a8baa413..6750b8e45a49 100644 --- a/trunk/arch/arm/include/asm/elf.h +++ b/trunk/arch/arm/include/asm/elf.h @@ -59,8 +59,6 @@ typedef struct user_fp elf_fpregset_t; #define R_ARM_THM_CALL 10 #define R_ARM_THM_JUMP24 30 -#define R_ARM_THM_MOVW_ABS_NC 47 -#define R_ARM_THM_MOVT_ABS 48 /* * These are used to set parameters in the core dumps. diff --git a/trunk/arch/arm/include/asm/hardware/coresight.h b/trunk/arch/arm/include/asm/hardware/coresight.h index 212e47828c79..f82b25d4f73e 100644 --- a/trunk/arch/arm/include/asm/hardware/coresight.h +++ b/trunk/arch/arm/include/asm/hardware/coresight.h @@ -48,6 +48,8 @@ struct tracectx { /* CoreSight Component Registers */ #define CSCR_CLASS 0xff4 +#define CSCR_PRSR 0x314 + #define UNLOCK_MAGIC 0xc5acce55 /* ETM control register, "ETM Architecture", 3.3.1 */ @@ -130,12 +132,6 @@ struct tracectx { ETMCTRL_BRANCH_OUTPUT | \ ETMCTRL_DO_CONTEXTID) -/* ETM management registers, "ETM Architecture", 3.5.24 */ -#define ETMMR_OSLAR 0x300 -#define ETMMR_OSLSR 0x304 -#define ETMMR_OSSRR 0x308 -#define ETMMR_PDSR 0x314 - /* ETB registers, "CoreSight Components TRM", 9.3 */ #define ETBR_DEPTH 0x04 #define ETBR_STATUS 0x0c diff --git a/trunk/arch/arm/include/asm/hardware/pl080.h b/trunk/arch/arm/include/asm/hardware/pl080.h index f35b86e68dd5..6a6c66be7f65 100644 --- a/trunk/arch/arm/include/asm/hardware/pl080.h +++ b/trunk/arch/arm/include/asm/hardware/pl080.h @@ -43,7 +43,7 @@ /* Per channel configuration registers */ -#define PL080_Cx_STRIDE (0x20) +#define PL008_Cx_STRIDE (0x20) #define PL080_Cx_BASE(x) ((0x100 + (x * 0x20))) #define PL080_Cx_SRC_ADDR(x) ((0x100 + (x * 0x20))) #define PL080_Cx_DST_ADDR(x) ((0x104 + (x * 0x20))) @@ -68,8 +68,6 @@ #define PL080_CONTROL_TC_IRQ_EN (1 << 31) #define PL080_CONTROL_PROT_MASK (0x7 << 28) #define PL080_CONTROL_PROT_SHIFT (28) -#define PL080_CONTROL_PROT_CACHE (1 << 30) -#define PL080_CONTROL_PROT_BUFF (1 << 29) #define PL080_CONTROL_PROT_SYS (1 << 28) #define PL080_CONTROL_DST_INCR (1 << 27) #define PL080_CONTROL_SRC_INCR (1 << 26) diff --git a/trunk/arch/arm/include/asm/hardware/scoop.h b/trunk/arch/arm/include/asm/hardware/scoop.h index ebb3ceaa8fac..46492a63a7c4 100644 --- a/trunk/arch/arm/include/asm/hardware/scoop.h +++ b/trunk/arch/arm/include/asm/hardware/scoop.h @@ -22,23 +22,18 @@ #define SCOOP_GPWR 0x24 #define SCOOP_GPRR 0x28 -#define SCOOP_CPR_OUT (1 << 7) -#define SCOOP_CPR_SD_3V (1 << 2) -#define SCOOP_CPR_CF_XV (1 << 1) -#define SCOOP_CPR_CF_3V (1 << 0) - -#define SCOOP_GPCR_PA22 (1 << 12) -#define SCOOP_GPCR_PA21 (1 << 11) -#define SCOOP_GPCR_PA20 (1 << 10) -#define SCOOP_GPCR_PA19 (1 << 9) -#define SCOOP_GPCR_PA18 (1 << 8) -#define SCOOP_GPCR_PA17 (1 << 7) -#define SCOOP_GPCR_PA16 (1 << 6) -#define SCOOP_GPCR_PA15 (1 << 5) -#define SCOOP_GPCR_PA14 (1 << 4) -#define SCOOP_GPCR_PA13 (1 << 3) -#define SCOOP_GPCR_PA12 (1 << 2) -#define SCOOP_GPCR_PA11 (1 << 1) +#define SCOOP_GPCR_PA22 ( 1 << 12 ) +#define SCOOP_GPCR_PA21 ( 1 << 11 ) +#define SCOOP_GPCR_PA20 ( 1 << 10 ) +#define SCOOP_GPCR_PA19 ( 1 << 9 ) +#define SCOOP_GPCR_PA18 ( 1 << 8 ) +#define SCOOP_GPCR_PA17 ( 1 << 7 ) +#define SCOOP_GPCR_PA16 ( 1 << 6 ) +#define SCOOP_GPCR_PA15 ( 1 << 5 ) +#define SCOOP_GPCR_PA14 ( 1 << 4 ) +#define SCOOP_GPCR_PA13 ( 1 << 3 ) +#define SCOOP_GPCR_PA12 ( 1 << 2 ) +#define SCOOP_GPCR_PA11 ( 1 << 1 ) struct scoop_config { unsigned short io_out; diff --git a/trunk/arch/arm/include/asm/tlbflush.h b/trunk/arch/arm/include/asm/tlbflush.h index 33b546ae72d4..bd863d8608cd 100644 --- a/trunk/arch/arm/include/asm/tlbflush.h +++ b/trunk/arch/arm/include/asm/tlbflush.h @@ -378,11 +378,7 @@ static inline void local_flush_tlb_mm(struct mm_struct *mm) if (tlb_flag(TLB_V6_I_ASID)) asm("mcr p15, 0, %0, c8, c5, 2" : : "r" (asid) : "cc"); if (tlb_flag(TLB_V7_UIS_ASID)) -#ifdef CONFIG_ARM_ERRATA_720789 - asm("mcr p15, 0, %0, c8, c3, 0" : : "r" (zero) : "cc"); -#else asm("mcr p15, 0, %0, c8, c3, 2" : : "r" (asid) : "cc"); -#endif if (tlb_flag(TLB_BTB)) { /* flush the branch target cache */ @@ -428,11 +424,7 @@ local_flush_tlb_page(struct vm_area_struct *vma, unsigned long uaddr) if (tlb_flag(TLB_V6_I_PAGE)) asm("mcr p15, 0, %0, c8, c5, 1" : : "r" (uaddr) : "cc"); if (tlb_flag(TLB_V7_UIS_PAGE)) -#ifdef CONFIG_ARM_ERRATA_720789 - asm("mcr p15, 0, %0, c8, c3, 3" : : "r" (uaddr & PAGE_MASK) : "cc"); -#else asm("mcr p15, 0, %0, c8, c3, 1" : : "r" (uaddr) : "cc"); -#endif if (tlb_flag(TLB_BTB)) { /* flush the branch target cache */ diff --git a/trunk/arch/arm/kernel/entry-common.S b/trunk/arch/arm/kernel/entry-common.S index f05a35a59694..2c1db77d7848 100644 --- a/trunk/arch/arm/kernel/entry-common.S +++ b/trunk/arch/arm/kernel/entry-common.S @@ -92,111 +92,75 @@ ENDPROC(ret_from_fork) #define CALL(x) .long x #ifdef CONFIG_FUNCTION_TRACER -/* - * When compiling with -pg, gcc inserts a call to the mcount routine at the - * start of every function. In mcount, apart from the function's address (in - * lr), we need to get hold of the function's caller's address. - * - * Older GCCs (pre-4.4) inserted a call to a routine called mcount like this: - * - * bl mcount - * - * These versions have the limitation that in order for the mcount routine to - * be able to determine the function's caller's address, an APCS-style frame - * pointer (which is set up with something like the code below) is required. - * - * mov ip, sp - * push {fp, ip, lr, pc} - * sub fp, ip, #4 - * - * With EABI, these frame pointers are not available unless -mapcs-frame is - * specified, and if building as Thumb-2, not even then. - * - * Newer GCCs (4.4+) solve this problem by introducing a new version of mcount, - * with call sites like: - * - * push {lr} - * bl __gnu_mcount_nc - * - * With these compilers, frame pointers are not necessary. - * - * mcount can be thought of as a function called in the middle of a subroutine - * call. As such, it needs to be transparent for both the caller and the - * callee: the original lr needs to be restored when leaving mcount, and no - * registers should be clobbered. (In the __gnu_mcount_nc implementation, we - * clobber the ip register. This is OK because the ARM calling convention - * allows it to be clobbered in subroutines and doesn't use it to hold - * parameters.) - */ #ifdef CONFIG_DYNAMIC_FTRACE ENTRY(mcount) - stmdb sp!, {r0-r3, lr} - mov r0, lr - sub r0, r0, #MCOUNT_INSN_SIZE + stmdb sp!, {r0-r3, lr} + mov r0, lr + sub r0, r0, #MCOUNT_INSN_SIZE .globl mcount_call mcount_call: - bl ftrace_stub - ldr lr, [fp, #-4] @ restore lr - ldmia sp!, {r0-r3, pc} + bl ftrace_stub + ldr lr, [fp, #-4] @ restore lr + ldmia sp!, {r0-r3, pc} ENTRY(ftrace_caller) - stmdb sp!, {r0-r3, lr} - ldr r1, [fp, #-4] - mov r0, lr - sub r0, r0, #MCOUNT_INSN_SIZE + stmdb sp!, {r0-r3, lr} + ldr r1, [fp, #-4] + mov r0, lr + sub r0, r0, #MCOUNT_INSN_SIZE .globl ftrace_call ftrace_call: - bl ftrace_stub - ldr lr, [fp, #-4] @ restore lr - ldmia sp!, {r0-r3, pc} + bl ftrace_stub + ldr lr, [fp, #-4] @ restore lr + ldmia sp!, {r0-r3, pc} #else ENTRY(__gnu_mcount_nc) - stmdb sp!, {r0-r3, lr} - ldr r0, =ftrace_trace_function - ldr r2, [r0] - adr r0, ftrace_stub - cmp r0, r2 - bne gnu_trace - ldmia sp!, {r0-r3, ip, lr} - mov pc, ip + stmdb sp!, {r0-r3, lr} + ldr r0, =ftrace_trace_function + ldr r2, [r0] + adr r0, ftrace_stub + cmp r0, r2 + bne gnu_trace + ldmia sp!, {r0-r3, ip, lr} + mov pc, ip gnu_trace: - ldr r1, [sp, #20] @ lr of instrumented routine - mov r0, lr - sub r0, r0, #MCOUNT_INSN_SIZE - mov lr, pc - mov pc, r2 - ldmia sp!, {r0-r3, ip, lr} - mov pc, ip + ldr r1, [sp, #20] @ lr of instrumented routine + mov r0, lr + sub r0, r0, #MCOUNT_INSN_SIZE + mov lr, pc + mov pc, r2 + ldmia sp!, {r0-r3, ip, lr} + mov pc, ip ENTRY(mcount) - stmdb sp!, {r0-r3, lr} - ldr r0, =ftrace_trace_function - ldr r2, [r0] - adr r0, ftrace_stub - cmp r0, r2 - bne trace - ldr lr, [fp, #-4] @ restore lr - ldmia sp!, {r0-r3, pc} + stmdb sp!, {r0-r3, lr} + ldr r0, =ftrace_trace_function + ldr r2, [r0] + adr r0, ftrace_stub + cmp r0, r2 + bne trace + ldr lr, [fp, #-4] @ restore lr + ldmia sp!, {r0-r3, pc} trace: - ldr r1, [fp, #-4] @ lr of instrumented routine - mov r0, lr - sub r0, r0, #MCOUNT_INSN_SIZE - mov lr, pc - mov pc, r2 - ldr lr, [fp, #-4] @ restore lr - ldmia sp!, {r0-r3, pc} + ldr r1, [fp, #-4] @ lr of instrumented routine + mov r0, lr + sub r0, r0, #MCOUNT_INSN_SIZE + mov lr, pc + mov pc, r2 + ldr lr, [fp, #-4] @ restore lr + ldmia sp!, {r0-r3, pc} #endif /* CONFIG_DYNAMIC_FTRACE */ .globl ftrace_stub ftrace_stub: - mov pc, lr + mov pc, lr #endif /* CONFIG_FUNCTION_TRACER */ diff --git a/trunk/arch/arm/kernel/etm.c b/trunk/arch/arm/kernel/etm.c index 56418f98cd01..827753966301 100644 --- a/trunk/arch/arm/kernel/etm.c +++ b/trunk/arch/arm/kernel/etm.c @@ -543,9 +543,7 @@ static int __init etm_probe(struct amba_device *dev, struct amba_id *id) t->etm_portsz = 1; etm_unlock(t); - (void)etm_readl(t, ETMMR_PDSR); - /* dummy first read */ - (void)etm_readl(&tracer, ETMMR_OSSRR); + ret = etm_readl(t, CSCR_PRSR); t->ncmppairs = etm_readl(t, ETMR_CONFCODE) & 0xf; etm_writel(t, 0x440, ETMR_CTRL); diff --git a/trunk/arch/arm/kernel/module.c b/trunk/arch/arm/kernel/module.c index 6b4605893f1e..c628bdf6c430 100644 --- a/trunk/arch/arm/kernel/module.c +++ b/trunk/arch/arm/kernel/module.c @@ -102,9 +102,7 @@ apply_relocate(Elf32_Shdr *sechdrs, const char *strtab, unsigned int symindex, unsigned long loc; Elf32_Sym *sym; s32 offset; -#ifdef CONFIG_THUMB2_KERNEL u32 upper, lower, sign, j1, j2; -#endif offset = ELF32_R_SYM(rel->r_info); if (offset < 0 || offset > (symsec->sh_size / sizeof(Elf32_Sym))) { @@ -187,7 +185,6 @@ apply_relocate(Elf32_Shdr *sechdrs, const char *strtab, unsigned int symindex, (offset & 0x0fff); break; -#ifdef CONFIG_THUMB2_KERNEL case R_ARM_THM_CALL: case R_ARM_THM_JUMP24: upper = *(u16 *)loc; @@ -236,40 +233,9 @@ apply_relocate(Elf32_Shdr *sechdrs, const char *strtab, unsigned int symindex, *(u16 *)(loc + 2) = (u16)((lower & 0xd000) | (j1 << 13) | (j2 << 11) | ((offset >> 1) & 0x07ff)); - break; - - case R_ARM_THM_MOVW_ABS_NC: - case R_ARM_THM_MOVT_ABS: upper = *(u16 *)loc; lower = *(u16 *)(loc + 2); - - /* - * MOVT/MOVW instructions encoding in Thumb-2: - * - * i = upper[10] - * imm4 = upper[3:0] - * imm3 = lower[14:12] - * imm8 = lower[7:0] - * - * imm16 = imm4:i:imm3:imm8 - */ - offset = ((upper & 0x000f) << 12) | - ((upper & 0x0400) << 1) | - ((lower & 0x7000) >> 4) | (lower & 0x00ff); - offset = (offset ^ 0x8000) - 0x8000; - offset += sym->st_value; - - if (ELF32_R_TYPE(rel->r_info) == R_ARM_THM_MOVT_ABS) - offset >>= 16; - - *(u16 *)loc = (u16)((upper & 0xfbf0) | - ((offset & 0xf000) >> 12) | - ((offset & 0x0800) >> 1)); - *(u16 *)(loc + 2) = (u16)((lower & 0x8f00) | - ((offset & 0x0700) << 4) | - (offset & 0x00ff)); break; -#endif default: printk(KERN_ERR "%s: unknown relocation: %u\n", diff --git a/trunk/arch/arm/kernel/sys_arm.c b/trunk/arch/arm/kernel/sys_arm.c index 5b7c541a4c63..c23501842b98 100644 --- a/trunk/arch/arm/kernel/sys_arm.c +++ b/trunk/arch/arm/kernel/sys_arm.c @@ -62,7 +62,7 @@ asmlinkage int sys_vfork(struct pt_regs *regs) /* sys_execve() executes a new program. * This is called indirectly via a small wrapper */ -asmlinkage int sys_execve(const char __user *filenamei, char __user * __user *argv, +asmlinkage int sys_execve(char __user *filenamei, char __user * __user *argv, char __user * __user *envp, struct pt_regs *regs) { int error; @@ -84,7 +84,7 @@ int kernel_execve(const char *filename, char *const argv[], char *const envp[]) int ret; memset(®s, 0, sizeof(struct pt_regs)); - ret = do_execve(filename, (char __user * __user *)argv, + ret = do_execve((char *)filename, (char __user * __user *)argv, (char __user * __user *)envp, ®s); if (ret < 0) goto out; diff --git a/trunk/arch/arm/kernel/sys_oabi-compat.c b/trunk/arch/arm/kernel/sys_oabi-compat.c index 4ad8da15ef2b..33ff678e32f2 100644 --- a/trunk/arch/arm/kernel/sys_oabi-compat.c +++ b/trunk/arch/arm/kernel/sys_oabi-compat.c @@ -141,7 +141,7 @@ static long cp_oldabi_stat64(struct kstat *stat, return copy_to_user(statbuf,&tmp,sizeof(tmp)) ? -EFAULT : 0; } -asmlinkage long sys_oabi_stat64(const char __user * filename, +asmlinkage long sys_oabi_stat64(char __user * filename, struct oldabi_stat64 __user * statbuf) { struct kstat stat; @@ -151,7 +151,7 @@ asmlinkage long sys_oabi_stat64(const char __user * filename, return error; } -asmlinkage long sys_oabi_lstat64(const char __user * filename, +asmlinkage long sys_oabi_lstat64(char __user * filename, struct oldabi_stat64 __user * statbuf) { struct kstat stat; @@ -172,7 +172,7 @@ asmlinkage long sys_oabi_fstat64(unsigned long fd, } asmlinkage long sys_oabi_fstatat64(int dfd, - const char __user *filename, + char __user *filename, struct oldabi_stat64 __user *statbuf, int flag) { diff --git a/trunk/arch/arm/mach-at91/board-cam60.c b/trunk/arch/arm/mach-at91/board-cam60.c index 44eb9f764938..02138af631e7 100644 --- a/trunk/arch/arm/mach-at91/board-cam60.c +++ b/trunk/arch/arm/mach-at91/board-cam60.c @@ -75,7 +75,7 @@ static struct at91_usbh_data __initdata cam60_usbh_data = { * SPI devices. */ #if defined(CONFIG_MTD_DATAFLASH) -static struct mtd_partition cam60_spi_partitions[] = { +static struct mtd_partition __initdata cam60_spi_partitions[] = { { .name = "BOOT1", .offset = 0, @@ -98,14 +98,14 @@ static struct mtd_partition cam60_spi_partitions[] = { }, }; -static struct flash_platform_data cam60_spi_flash_platform_data = { +static struct flash_platform_data __initdata cam60_spi_flash_platform_data = { .name = "spi_flash", .parts = cam60_spi_partitions, .nr_parts = ARRAY_SIZE(cam60_spi_partitions) }; #endif -static struct spi_board_info cam60_spi_devices[] __initdata = { +static struct spi_board_info cam60_spi_devices[] = { #if defined(CONFIG_MTD_DATAFLASH) { /* DataFlash chip */ .modalias = "mtd_dataflash", diff --git a/trunk/arch/arm/mach-clps711x/include/mach/hardware.h b/trunk/arch/arm/mach-clps711x/include/mach/hardware.h index d0b7d870be9c..b3ebe9e4871f 100644 --- a/trunk/arch/arm/mach-clps711x/include/mach/hardware.h +++ b/trunk/arch/arm/mach-clps711x/include/mach/hardware.h @@ -69,6 +69,13 @@ #define SYSPLD_VIRT_BASE 0xfe000000 #define SYSPLD_BASE SYSPLD_VIRT_BASE +#ifndef __ASSEMBLER__ + +#define PCIO_BASE IO_BASE + +#endif + + #if defined (CONFIG_ARCH_AUTCPU12) #define CS89712_VIRT_BASE CLPS7111_VIRT_BASE diff --git a/trunk/arch/arm/mach-gemini/Kconfig b/trunk/arch/arm/mach-gemini/Kconfig index 6f066ee4bf24..515b75cf2e8b 100644 --- a/trunk/arch/arm/mach-gemini/Kconfig +++ b/trunk/arch/arm/mach-gemini/Kconfig @@ -2,13 +2,6 @@ if ARCH_GEMINI menu "Cortina Systems Gemini Implementations" -config MACH_NAS4220B - bool "Raidsonic NAS-4220-B" - select GEMINI_MEM_SWAP - help - Say Y here if you intend to run this kernel on a - Raidsonic NAS-4220-B. - config MACH_RUT100 bool "Teltonika RUT100" select GEMINI_MEM_SWAP @@ -16,20 +9,6 @@ config MACH_RUT100 Say Y here if you intend to run this kernel on a Teltonika 3G Router RUT100. -config MACH_WBD111 - bool "Wiliboard WBD-111" - select GEMINI_MEM_SWAP - help - Say Y here if you intend to run this kernel on a - Wiliboard WBD-111. - -config MACH_WBD222 - bool "Wiliboard WBD-222" - select GEMINI_MEM_SWAP - help - Say Y here if you intend to run this kernel on a - Wiliboard WBD-222. - endmenu config GEMINI_MEM_SWAP diff --git a/trunk/arch/arm/mach-gemini/Makefile b/trunk/arch/arm/mach-gemini/Makefile index c5b24b95a76e..719505b81821 100644 --- a/trunk/arch/arm/mach-gemini/Makefile +++ b/trunk/arch/arm/mach-gemini/Makefile @@ -7,7 +7,4 @@ obj-y := irq.o mm.o time.o devices.o gpio.o # Board-specific support -obj-$(CONFIG_MACH_NAS4220B) += board-nas4220b.o obj-$(CONFIG_MACH_RUT100) += board-rut1xx.o -obj-$(CONFIG_MACH_WBD111) += board-wbd111.o -obj-$(CONFIG_MACH_WBD222) += board-wbd222.o diff --git a/trunk/arch/arm/mach-gemini/board-nas4220b.c b/trunk/arch/arm/mach-gemini/board-nas4220b.c deleted file mode 100644 index 01f1d6daab44..000000000000 --- a/trunk/arch/arm/mach-gemini/board-nas4220b.c +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Support for Raidsonic NAS-4220-B - * - * Copyright (C) 2009 Janos Laube - * - * based on rut1xx.c - * Copyright (C) 2008 Paulius Zaleckas - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#include -#include - -#include "common.h" - -static struct sys_timer ib4220b_timer = { - .init = gemini_timer_init, -}; - -static struct gpio_led ib4220b_leds[] = { - { - .name = "nas4220b:orange:hdd", - .default_trigger = "none", - .gpio = 60, - }, - { - .name = "nas4220b:green:os", - .default_trigger = "heartbeat", - .gpio = 62, - }, -}; - -static struct gpio_led_platform_data ib4220b_leds_data = { - .num_leds = ARRAY_SIZE(ib4220b_leds), - .leds = ib4220b_leds, -}; - -static struct platform_device ib4220b_led_device = { - .name = "leds-gpio", - .id = -1, - .dev = { - .platform_data = &ib4220b_leds_data, - }, -}; - -static struct gpio_keys_button ib4220b_keys[] = { - { - .code = KEY_SETUP, - .gpio = 61, - .active_low = 1, - .desc = "Backup Button", - .type = EV_KEY, - }, - { - .code = KEY_RESTART, - .gpio = 63, - .active_low = 1, - .desc = "Softreset Button", - .type = EV_KEY, - }, -}; - -static struct gpio_keys_platform_data ib4220b_keys_data = { - .buttons = ib4220b_keys, - .nbuttons = ARRAY_SIZE(ib4220b_keys), -}; - -static struct platform_device ib4220b_key_device = { - .name = "gpio-keys", - .id = -1, - .dev = { - .platform_data = &ib4220b_keys_data, - }, -}; - -static void __init ib4220b_init(void) -{ - gemini_gpio_init(); - platform_register_uart(); - platform_register_pflash(SZ_16M, NULL, 0); - platform_device_register(&ib4220b_led_device); - platform_device_register(&ib4220b_key_device); -} - -MACHINE_START(NAS4220B, "Raidsonic NAS IB-4220-B") - .phys_io = 0x7fffc000, - .io_pg_offst = ((0xffffc000) >> 18) & 0xfffc, - .boot_params = 0x100, - .map_io = gemini_map_io, - .init_irq = gemini_init_irq, - .timer = &ib4220b_timer, - .init_machine = ib4220b_init, -MACHINE_END diff --git a/trunk/arch/arm/mach-gemini/board-wbd111.c b/trunk/arch/arm/mach-gemini/board-wbd111.c deleted file mode 100644 index 36538c15b3c4..000000000000 --- a/trunk/arch/arm/mach-gemini/board-wbd111.c +++ /dev/null @@ -1,143 +0,0 @@ -/* - * Support for Wiliboard WBD-111 - * - * Copyright (C) 2009 Imre Kaloz - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -#include "common.h" - -static struct gpio_keys_button wbd111_keys[] = { - { - .code = KEY_SETUP, - .gpio = 5, - .active_low = 1, - .desc = "reset", - .type = EV_KEY, - }, -}; - -static struct gpio_keys_platform_data wbd111_keys_data = { - .buttons = wbd111_keys, - .nbuttons = ARRAY_SIZE(wbd111_keys), -}; - -static struct platform_device wbd111_keys_device = { - .name = "gpio-keys", - .id = -1, - .dev = { - .platform_data = &wbd111_keys_data, - }, -}; - -static struct gpio_led wbd111_leds[] = { - { - .name = "L3red", - .gpio = 1, - }, - { - .name = "L4green", - .gpio = 2, - }, - { - .name = "L4red", - .gpio = 3, - }, - { - .name = "L3green", - .gpio = 5, - }, -}; - -static struct gpio_led_platform_data wbd111_leds_data = { - .num_leds = ARRAY_SIZE(wbd111_leds), - .leds = wbd111_leds, -}; - -static struct platform_device wbd111_leds_device = { - .name = "leds-gpio", - .id = -1, - .dev = { - .platform_data = &wbd111_leds_data, - }, -}; - -static struct sys_timer wbd111_timer = { - .init = gemini_timer_init, -}; - -#ifdef CONFIG_MTD_PARTITIONS -static struct mtd_partition wbd111_partitions[] = { - { - .name = "RedBoot", - .offset = 0, - .size = 0x020000, - .mask_flags = MTD_WRITEABLE, - } , { - .name = "kernel", - .offset = 0x020000, - .size = 0x100000, - } , { - .name = "rootfs", - .offset = 0x120000, - .size = 0x6a0000, - } , { - .name = "VCTL", - .offset = 0x7c0000, - .size = 0x010000, - .mask_flags = MTD_WRITEABLE, - } , { - .name = "cfg", - .offset = 0x7d0000, - .size = 0x010000, - .mask_flags = MTD_WRITEABLE, - } , { - .name = "FIS", - .offset = 0x7e0000, - .size = 0x010000, - .mask_flags = MTD_WRITEABLE, - } -}; -#define wbd111_num_partitions ARRAY_SIZE(wbd111_partitions) -#else -#define wbd111_partitions NULL -#define wbd111_num_partitions 0 -#endif /* CONFIG_MTD_PARTITIONS */ - -static void __init wbd111_init(void) -{ - gemini_gpio_init(); - platform_register_uart(); - platform_register_pflash(SZ_8M, wbd111_partitions, - wbd111_num_partitions); - platform_device_register(&wbd111_leds_device); - platform_device_register(&wbd111_keys_device); -} - -MACHINE_START(WBD111, "Wiliboard WBD-111") - .phys_io = 0x7fffc000, - .io_pg_offst = ((0xffffc000) >> 18) & 0xfffc, - .boot_params = 0x100, - .map_io = gemini_map_io, - .init_irq = gemini_init_irq, - .timer = &wbd111_timer, - .init_machine = wbd111_init, -MACHINE_END diff --git a/trunk/arch/arm/mach-gemini/board-wbd222.c b/trunk/arch/arm/mach-gemini/board-wbd222.c deleted file mode 100644 index ece8b4c65110..000000000000 --- a/trunk/arch/arm/mach-gemini/board-wbd222.c +++ /dev/null @@ -1,143 +0,0 @@ -/* - * Support for Wiliboard WBD-222 - * - * Copyright (C) 2009 Imre Kaloz - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -#include "common.h" - -static struct gpio_keys_button wbd222_keys[] = { - { - .code = KEY_SETUP, - .gpio = 5, - .active_low = 1, - .desc = "reset", - .type = EV_KEY, - }, -}; - -static struct gpio_keys_platform_data wbd222_keys_data = { - .buttons = wbd222_keys, - .nbuttons = ARRAY_SIZE(wbd222_keys), -}; - -static struct platform_device wbd222_keys_device = { - .name = "gpio-keys", - .id = -1, - .dev = { - .platform_data = &wbd222_keys_data, - }, -}; - -static struct gpio_led wbd222_leds[] = { - { - .name = "L3red", - .gpio = 1, - }, - { - .name = "L4green", - .gpio = 2, - }, - { - .name = "L4red", - .gpio = 3, - }, - { - .name = "L3green", - .gpio = 5, - }, -}; - -static struct gpio_led_platform_data wbd222_leds_data = { - .num_leds = ARRAY_SIZE(wbd222_leds), - .leds = wbd222_leds, -}; - -static struct platform_device wbd222_leds_device = { - .name = "leds-gpio", - .id = -1, - .dev = { - .platform_data = &wbd222_leds_data, - }, -}; - -static struct sys_timer wbd222_timer = { - .init = gemini_timer_init, -}; - -#ifdef CONFIG_MTD_PARTITIONS -static struct mtd_partition wbd222_partitions[] = { - { - .name = "RedBoot", - .offset = 0, - .size = 0x020000, - .mask_flags = MTD_WRITEABLE, - } , { - .name = "kernel", - .offset = 0x020000, - .size = 0x100000, - } , { - .name = "rootfs", - .offset = 0x120000, - .size = 0x6a0000, - } , { - .name = "VCTL", - .offset = 0x7c0000, - .size = 0x010000, - .mask_flags = MTD_WRITEABLE, - } , { - .name = "cfg", - .offset = 0x7d0000, - .size = 0x010000, - .mask_flags = MTD_WRITEABLE, - } , { - .name = "FIS", - .offset = 0x7e0000, - .size = 0x010000, - .mask_flags = MTD_WRITEABLE, - } -}; -#define wbd222_num_partitions ARRAY_SIZE(wbd222_partitions) -#else -#define wbd222_partitions NULL -#define wbd222_num_partitions 0 -#endif /* CONFIG_MTD_PARTITIONS */ - -static void __init wbd222_init(void) -{ - gemini_gpio_init(); - platform_register_uart(); - platform_register_pflash(SZ_8M, wbd222_partitions, - wbd222_num_partitions); - platform_device_register(&wbd222_leds_device); - platform_device_register(&wbd222_keys_device); -} - -MACHINE_START(WBD222, "Wiliboard WBD-222") - .phys_io = 0x7fffc000, - .io_pg_offst = ((0xffffc000) >> 18) & 0xfffc, - .boot_params = 0x100, - .map_io = gemini_map_io, - .init_irq = gemini_init_irq, - .timer = &wbd222_timer, - .init_machine = wbd222_init, -MACHINE_END diff --git a/trunk/arch/arm/mach-h720x/include/mach/hardware.h b/trunk/arch/arm/mach-h720x/include/mach/hardware.h index c55a52c6541d..6c19156e2a42 100644 --- a/trunk/arch/arm/mach-h720x/include/mach/hardware.h +++ b/trunk/arch/arm/mach-h720x/include/mach/hardware.h @@ -182,6 +182,8 @@ #define SERIAL_ENABLE_EN (1<<0) /* General defines to pacify gcc */ +#define PCIO_BASE (0) /* for inb, outb and friends */ +#define PCIO_VIRT PCIO_BASE #define __ASM_ARCH_HARDWARE_INCMACH_H #include "boards.h" diff --git a/trunk/arch/arm/mach-imx/mach-pca100.c b/trunk/arch/arm/mach-imx/mach-pca100.c index a389d1148f18..6c92deaf468f 100644 --- a/trunk/arch/arm/mach-imx/mach-pca100.c +++ b/trunk/arch/arm/mach-imx/mach-pca100.c @@ -408,7 +408,7 @@ static void __init pca100_init(void) mxc_gpio_mode(GPIO_PORTD | 27 | GPIO_GPIO | GPIO_IN); spi_register_board_info(pca100_spi_board_info, ARRAY_SIZE(pca100_spi_board_info)); - imx27_add_spi_imx0(&pca100_spi0_data); + imx27_add_spi_imx0(&pca100_spi_0_data); #endif gpio_request(OTG_PHY_CS_GPIO, "usb-otg-cs"); diff --git a/trunk/arch/arm/mach-integrator/include/mach/hardware.h b/trunk/arch/arm/mach-integrator/include/mach/hardware.h index 57f51ba11251..8e26360ce9a3 100644 --- a/trunk/arch/arm/mach-integrator/include/mach/hardware.h +++ b/trunk/arch/arm/mach-integrator/include/mach/hardware.h @@ -32,6 +32,7 @@ #define IO_SIZE 0x0B000000 // How much? #define IO_START INTEGRATOR_HDR_BASE // PA of IO +#define PCIO_BASE PCI_IO_VADDR #define PCIMEM_BASE PCI_MEMORY_VADDR #define pcibios_assign_all_busses() 1 diff --git a/trunk/arch/arm/mach-ixp23xx/include/mach/hardware.h b/trunk/arch/arm/mach-ixp23xx/include/mach/hardware.h index 57b508bfe280..c3192009a886 100644 --- a/trunk/arch/arm/mach-ixp23xx/include/mach/hardware.h +++ b/trunk/arch/arm/mach-ixp23xx/include/mach/hardware.h @@ -15,6 +15,7 @@ #define __ASM_ARCH_HARDWARE_H /* PCI IO info */ +#define PCIO_BASE IXP23XX_PCI_IO_VIRT #define PCIBIOS_MIN_IO 0x00000000 #define PCIBIOS_MIN_MEM 0xe0000000 diff --git a/trunk/arch/arm/mach-ixp4xx/Kconfig b/trunk/arch/arm/mach-ixp4xx/Kconfig index 6f991c5ae863..9e5070da17ae 100644 --- a/trunk/arch/arm/mach-ixp4xx/Kconfig +++ b/trunk/arch/arm/mach-ixp4xx/Kconfig @@ -140,14 +140,6 @@ config MACH_FSG FSG-3 device. For more information on this platform, see http://www.nslu2-linux.org/wiki/FSG3/HomePage -config MACH_ARCOM_VULCAN - bool - prompt "Arcom/Eurotech Vulcan" - select PCI - help - Say 'Y' here if you want your kernel to support Arcom's - Vulcan board. - # # Certain registers and IRQs are only enabled if supporting IXP465 CPUs # diff --git a/trunk/arch/arm/mach-ixp4xx/Makefile b/trunk/arch/arm/mach-ixp4xx/Makefile index d807fc367dd3..47d1f60d23fa 100644 --- a/trunk/arch/arm/mach-ixp4xx/Makefile +++ b/trunk/arch/arm/mach-ixp4xx/Makefile @@ -16,7 +16,6 @@ obj-pci-$(CONFIG_MACH_DSMG600) += dsmg600-pci.o obj-pci-$(CONFIG_MACH_GATEWAY7001) += gateway7001-pci.o obj-pci-$(CONFIG_MACH_WG302V2) += wg302v2-pci.o obj-pci-$(CONFIG_MACH_FSG) += fsg-pci.o -obj-pci-$(CONFIG_MACH_ARCOM_VULCAN) += vulcan-pci.o obj-y += common.o @@ -32,7 +31,6 @@ obj-$(CONFIG_MACH_GATEWAY7001) += gateway7001-setup.o obj-$(CONFIG_MACH_WG302V2) += wg302v2-setup.o obj-$(CONFIG_MACH_FSG) += fsg-setup.o obj-$(CONFIG_MACH_GORAMO_MLR) += goramo_mlr.o -obj-$(CONFIG_MACH_ARCOM_VULCAN) += vulcan-setup.o obj-$(CONFIG_PCI) += $(obj-pci-$(CONFIG_PCI)) common-pci.o obj-$(CONFIG_IXP4XX_QMGR) += ixp4xx_qmgr.o diff --git a/trunk/arch/arm/mach-ixp4xx/include/mach/debug-macro.S b/trunk/arch/arm/mach-ixp4xx/include/mach/debug-macro.S index 3fc66d6d00a0..893873eb2a0d 100644 --- a/trunk/arch/arm/mach-ixp4xx/include/mach/debug-macro.S +++ b/trunk/arch/arm/mach-ixp4xx/include/mach/debug-macro.S @@ -16,10 +16,8 @@ moveq \rx, #0xc8000000 movne \rx, #0xff000000 orrne \rx, \rx, #0x00b00000 -#ifdef __ARMEB__ add \rx,\rx,#3 @ Uart regs are at off set of 3 if @ byte writes used - Big Endian. -#endif .endm #define UART_SHIFT 2 diff --git a/trunk/arch/arm/mach-ixp4xx/include/mach/io.h b/trunk/arch/arm/mach-ixp4xx/include/mach/io.h index de274a1f19d7..6ea7e2fb2701 100644 --- a/trunk/arch/arm/mach-ixp4xx/include/mach/io.h +++ b/trunk/arch/arm/mach-ixp4xx/include/mach/io.h @@ -353,7 +353,7 @@ static inline unsigned int ioread8(const void __iomem *addr) return (unsigned int)inb(port & PIO_MASK); else #ifndef CONFIG_IXP4XX_INDIRECT_PCI - return (unsigned int)__raw_readb(addr); + return (unsigned int)__raw_readb(port); #else return (unsigned int)__indirect_readb(addr); #endif @@ -381,7 +381,7 @@ static inline unsigned int ioread16(const void __iomem *addr) return (unsigned int)inw(port & PIO_MASK); else #ifndef CONFIG_IXP4XX_INDIRECT_PCI - return le16_to_cpu((__force __le16)__raw_readw(addr)); + return le16_to_cpu(__raw_readw((u32)port)); #else return (unsigned int)__indirect_readw(addr); #endif @@ -440,7 +440,7 @@ static inline void iowrite8(u8 value, void __iomem *addr) outb(value, port & PIO_MASK); else #ifndef CONFIG_IXP4XX_INDIRECT_PCI - __raw_writeb(value, addr); + __raw_writeb(value, port); #else __indirect_writeb(value, addr); #endif diff --git a/trunk/arch/arm/mach-ixp4xx/vulcan-pci.c b/trunk/arch/arm/mach-ixp4xx/vulcan-pci.c deleted file mode 100644 index f3111c6840ef..000000000000 --- a/trunk/arch/arm/mach-ixp4xx/vulcan-pci.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * arch/arch/mach-ixp4xx/vulcan-pci.c - * - * Vulcan board-level PCI initialization - * - * Copyright (C) 2010 Marc Zyngier - * - * based on ixdp425-pci.c: - * Copyright (C) 2002 Intel Corporation. - * Copyright (C) 2003-2004 MontaVista Software, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - */ - -#include -#include -#include -#include -#include - -/* PCI controller GPIO to IRQ pin mappings */ -#define INTA 2 -#define INTB 3 - -void __init vulcan_pci_preinit(void) -{ -#ifndef CONFIG_IXP4XX_INDIRECT_PCI - /* - * Cardbus bridge wants way more than the SoC can actually offer, - * and leaves the whole PCI bus in a mess. Artificially limit it - * to 8MB per region. Of course indirect mode doesn't have this - * limitation... - */ - pci_cardbus_mem_size = SZ_8M; - pr_info("Vulcan PCI: limiting CardBus memory size to %dMB\n", - (int)(pci_cardbus_mem_size >> 20)); -#endif - set_irq_type(IXP4XX_GPIO_IRQ(INTA), IRQ_TYPE_LEVEL_LOW); - set_irq_type(IXP4XX_GPIO_IRQ(INTB), IRQ_TYPE_LEVEL_LOW); - ixp4xx_pci_preinit(); -} - -static int __init vulcan_map_irq(struct pci_dev *dev, u8 slot, u8 pin) -{ - if (slot == 1) - return IXP4XX_GPIO_IRQ(INTA); - - if (slot == 2) - return IXP4XX_GPIO_IRQ(INTB); - - return -1; -} - -struct hw_pci vulcan_pci __initdata = { - .nr_controllers = 1, - .preinit = vulcan_pci_preinit, - .swizzle = pci_std_swizzle, - .setup = ixp4xx_setup, - .scan = ixp4xx_scan_bus, - .map_irq = vulcan_map_irq, -}; - -int __init vulcan_pci_init(void) -{ - if (machine_is_arcom_vulcan()) - pci_common_init(&vulcan_pci); - return 0; -} - -subsys_initcall(vulcan_pci_init); diff --git a/trunk/arch/arm/mach-ixp4xx/vulcan-setup.c b/trunk/arch/arm/mach-ixp4xx/vulcan-setup.c deleted file mode 100644 index 465cc5cce687..000000000000 --- a/trunk/arch/arm/mach-ixp4xx/vulcan-setup.c +++ /dev/null @@ -1,246 +0,0 @@ -/* - * arch/arm/mach-ixp4xx/vulcan-setup.c - * - * Arcom/Eurotech Vulcan board-setup - * - * Copyright (C) 2010 Marc Zyngier - * - * based on fsg-setup.c: - * Copyright (C) 2008 Rod Whitby - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -static struct flash_platform_data vulcan_flash_data = { - .map_name = "cfi_probe", - .width = 2, -}; - -static struct resource vulcan_flash_resource = { - .flags = IORESOURCE_MEM, -}; - -static struct platform_device vulcan_flash = { - .name = "IXP4XX-Flash", - .id = 0, - .dev = { - .platform_data = &vulcan_flash_data, - }, - .resource = &vulcan_flash_resource, - .num_resources = 1, -}; - -static struct platdata_mtd_ram vulcan_sram_data = { - .mapname = "Vulcan SRAM", - .bankwidth = 1, -}; - -static struct resource vulcan_sram_resource = { - .flags = IORESOURCE_MEM, -}; - -static struct platform_device vulcan_sram = { - .name = "mtd-ram", - .id = 0, - .dev = { - .platform_data = &vulcan_sram_data, - }, - .resource = &vulcan_sram_resource, - .num_resources = 1, -}; - -static struct resource vulcan_uart_resources[] = { - [0] = { - .start = IXP4XX_UART1_BASE_PHYS, - .end = IXP4XX_UART1_BASE_PHYS + 0x0fff, - .flags = IORESOURCE_MEM, - }, - [1] = { - .start = IXP4XX_UART2_BASE_PHYS, - .end = IXP4XX_UART2_BASE_PHYS + 0x0fff, - .flags = IORESOURCE_MEM, - }, - [2] = { - .flags = IORESOURCE_MEM, - }, -}; - -static struct plat_serial8250_port vulcan_uart_data[] = { - [0] = { - .mapbase = IXP4XX_UART1_BASE_PHYS, - .membase = (char *)IXP4XX_UART1_BASE_VIRT + REG_OFFSET, - .irq = IRQ_IXP4XX_UART1, - .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, - .iotype = UPIO_MEM, - .regshift = 2, - .uartclk = IXP4XX_UART_XTAL, - }, - [1] = { - .mapbase = IXP4XX_UART2_BASE_PHYS, - .membase = (char *)IXP4XX_UART2_BASE_VIRT + REG_OFFSET, - .irq = IRQ_IXP4XX_UART2, - .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, - .iotype = UPIO_MEM, - .regshift = 2, - .uartclk = IXP4XX_UART_XTAL, - }, - [2] = { - .irq = IXP4XX_GPIO_IRQ(4), - .irqflags = IRQF_TRIGGER_LOW, - .flags = UPF_IOREMAP | UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, - .iotype = UPIO_MEM, - .uartclk = 1843200, - }, - [3] = { - .irq = IXP4XX_GPIO_IRQ(4), - .irqflags = IRQF_TRIGGER_LOW, - .flags = UPF_IOREMAP | UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, - .iotype = UPIO_MEM, - .uartclk = 1843200, - }, - { } -}; - -static struct platform_device vulcan_uart = { - .name = "serial8250", - .id = PLAT8250_DEV_PLATFORM, - .dev = { - .platform_data = vulcan_uart_data, - }, - .resource = vulcan_uart_resources, - .num_resources = ARRAY_SIZE(vulcan_uart_resources), -}; - -static struct eth_plat_info vulcan_plat_eth[] = { - [0] = { - .phy = 0, - .rxq = 3, - .txreadyq = 20, - }, - [1] = { - .phy = 1, - .rxq = 4, - .txreadyq = 21, - }, -}; - -static struct platform_device vulcan_eth[] = { - [0] = { - .name = "ixp4xx_eth", - .id = IXP4XX_ETH_NPEB, - .dev = { - .platform_data = &vulcan_plat_eth[0], - }, - }, - [1] = { - .name = "ixp4xx_eth", - .id = IXP4XX_ETH_NPEC, - .dev = { - .platform_data = &vulcan_plat_eth[1], - }, - }, -}; - -static struct resource vulcan_max6369_resource = { - .flags = IORESOURCE_MEM, -}; - -static struct platform_device vulcan_max6369 = { - .name = "max6369_wdt", - .id = -1, - .resource = &vulcan_max6369_resource, - .num_resources = 1, -}; - -static struct w1_gpio_platform_data vulcan_w1_gpio_pdata = { - .pin = 14, -}; - -static struct platform_device vulcan_w1_gpio = { - .name = "w1-gpio", - .id = 0, - .dev = { - .platform_data = &vulcan_w1_gpio_pdata, - }, -}; - -static struct platform_device *vulcan_devices[] __initdata = { - &vulcan_uart, - &vulcan_flash, - &vulcan_sram, - &vulcan_max6369, - &vulcan_eth[0], - &vulcan_eth[1], - &vulcan_w1_gpio, -}; - -static void __init vulcan_init(void) -{ - ixp4xx_sys_init(); - - /* Flash is spread over both CS0 and CS1 */ - vulcan_flash_resource.start = IXP4XX_EXP_BUS_BASE(0); - vulcan_flash_resource.end = IXP4XX_EXP_BUS_BASE(0) + SZ_32M - 1; - *IXP4XX_EXP_CS0 = IXP4XX_EXP_BUS_CS_EN | - IXP4XX_EXP_BUS_STROBE_T(3) | - IXP4XX_EXP_BUS_SIZE(0xF) | - IXP4XX_EXP_BUS_BYTE_RD16 | - IXP4XX_EXP_BUS_WR_EN; - *IXP4XX_EXP_CS1 = *IXP4XX_EXP_CS0; - - /* SRAM on CS2, (256kB, 8bit, writable) */ - vulcan_sram_resource.start = IXP4XX_EXP_BUS_BASE(2); - vulcan_sram_resource.end = IXP4XX_EXP_BUS_BASE(2) + SZ_256K - 1; - *IXP4XX_EXP_CS2 = IXP4XX_EXP_BUS_CS_EN | - IXP4XX_EXP_BUS_STROBE_T(1) | - IXP4XX_EXP_BUS_HOLD_T(2) | - IXP4XX_EXP_BUS_SIZE(9) | - IXP4XX_EXP_BUS_SPLT_EN | - IXP4XX_EXP_BUS_WR_EN | - IXP4XX_EXP_BUS_BYTE_EN; - - /* XR16L2551 on CS3 (Moto style, 512 bytes, 8bits, writable) */ - vulcan_uart_resources[2].start = IXP4XX_EXP_BUS_BASE(3); - vulcan_uart_resources[2].end = IXP4XX_EXP_BUS_BASE(3) + 16 - 1; - vulcan_uart_data[2].mapbase = vulcan_uart_resources[2].start; - vulcan_uart_data[3].mapbase = vulcan_uart_data[2].mapbase + 8; - *IXP4XX_EXP_CS3 = IXP4XX_EXP_BUS_CS_EN | - IXP4XX_EXP_BUS_STROBE_T(3) | - IXP4XX_EXP_BUS_CYCLES(IXP4XX_EXP_BUS_CYCLES_MOTOROLA)| - IXP4XX_EXP_BUS_WR_EN | - IXP4XX_EXP_BUS_BYTE_EN; - - /* GPIOS on CS4 (512 bytes, 8bits, writable) */ - *IXP4XX_EXP_CS4 = IXP4XX_EXP_BUS_CS_EN | - IXP4XX_EXP_BUS_WR_EN | - IXP4XX_EXP_BUS_BYTE_EN; - - /* max6369 on CS5 (512 bytes, 8bits, writable) */ - vulcan_max6369_resource.start = IXP4XX_EXP_BUS_BASE(5); - vulcan_max6369_resource.end = IXP4XX_EXP_BUS_BASE(5); - *IXP4XX_EXP_CS5 = IXP4XX_EXP_BUS_CS_EN | - IXP4XX_EXP_BUS_WR_EN | - IXP4XX_EXP_BUS_BYTE_EN; - - platform_add_devices(vulcan_devices, ARRAY_SIZE(vulcan_devices)); -} - -MACHINE_START(ARCOM_VULCAN, "Arcom/Eurotech Vulcan") - /* Maintainer: Marc Zyngier */ - .phys_io = IXP4XX_PERIPHERAL_BASE_PHYS, - .io_pg_offst = ((IXP4XX_PERIPHERAL_BASE_VIRT) >> 18) & 0xfffc, - .map_io = ixp4xx_map_io, - .init_irq = ixp4xx_init_irq, - .timer = &ixp4xx_timer, - .boot_params = 0x0100, - .init_machine = vulcan_init, -MACHINE_END diff --git a/trunk/arch/arm/mach-mmp/aspenite.c b/trunk/arch/arm/mach-mmp/aspenite.c index 0629394a5fb9..244655d323ea 100644 --- a/trunk/arch/arm/mach-mmp/aspenite.c +++ b/trunk/arch/arm/mach-mmp/aspenite.c @@ -150,8 +150,9 @@ static void __init common_init(void) MACHINE_START(ASPENITE, "PXA168-based Aspenite Development Platform") .phys_io = APB_PHYS_BASE, + .boot_params = 0x00000100, .io_pg_offst = (APB_VIRT_BASE >> 18) & 0xfffc, - .map_io = mmp_map_io, + .map_io = pxa_map_io, .init_irq = pxa168_init_irq, .timer = &pxa168_timer, .init_machine = common_init, @@ -159,8 +160,9 @@ MACHINE_END MACHINE_START(ZYLONITE2, "PXA168-based Zylonite2 Development Platform") .phys_io = APB_PHYS_BASE, + .boot_params = 0x00000100, .io_pg_offst = (APB_VIRT_BASE >> 18) & 0xfffc, - .map_io = mmp_map_io, + .map_io = pxa_map_io, .init_irq = pxa168_init_irq, .timer = &pxa168_timer, .init_machine = common_init, diff --git a/trunk/arch/arm/mach-mmp/avengers_lite.c b/trunk/arch/arm/mach-mmp/avengers_lite.c index 69bcba11f53f..8c3fa5d14f4b 100644 --- a/trunk/arch/arm/mach-mmp/avengers_lite.c +++ b/trunk/arch/arm/mach-mmp/avengers_lite.c @@ -42,8 +42,9 @@ static void __init avengers_lite_init(void) MACHINE_START(AVENGERS_LITE, "PXA168 Avengers lite Development Platform") .phys_io = APB_PHYS_BASE, + .boot_params = 0x00000100, .io_pg_offst = (APB_VIRT_BASE >> 18) & 0xfffc, - .map_io = mmp_map_io, + .map_io = pxa_map_io, .init_irq = pxa168_init_irq, .timer = &pxa168_timer, .init_machine = avengers_lite_init, diff --git a/trunk/arch/arm/mach-mmp/common.c b/trunk/arch/arm/mach-mmp/common.c index 3b29fa7e9b08..e1e66c18b446 100644 --- a/trunk/arch/arm/mach-mmp/common.c +++ b/trunk/arch/arm/mach-mmp/common.c @@ -31,7 +31,7 @@ static struct map_desc standard_io_desc[] __initdata = { }, }; -void __init mmp_map_io(void) +void __init pxa_map_io(void) { iotable_init(standard_io_desc, ARRAY_SIZE(standard_io_desc)); } diff --git a/trunk/arch/arm/mach-mmp/common.h b/trunk/arch/arm/mach-mmp/common.h index ec8d65ded25c..b4a0ba05a0f4 100644 --- a/trunk/arch/arm/mach-mmp/common.h +++ b/trunk/arch/arm/mach-mmp/common.h @@ -3,6 +3,15 @@ struct sys_timer; extern void timer_init(int irq); +extern void mmp2_clear_pmic_int(void); + +extern struct sys_timer pxa168_timer; +extern struct sys_timer pxa910_timer; +extern struct sys_timer mmp2_timer; +extern void __init pxa168_init_irq(void); +extern void __init pxa910_init_irq(void); +extern void __init mmp2_init_icu(void); +extern void __init mmp2_init_irq(void); extern void __init icu_init_irq(void); -extern void __init mmp_map_io(void); +extern void __init pxa_map_io(void); diff --git a/trunk/arch/arm/mach-mmp/flint.c b/trunk/arch/arm/mach-mmp/flint.c index e4312d238eae..4ec7709a3462 100644 --- a/trunk/arch/arm/mach-mmp/flint.c +++ b/trunk/arch/arm/mach-mmp/flint.c @@ -114,8 +114,9 @@ static void __init flint_init(void) MACHINE_START(FLINT, "Flint Development Platform") .phys_io = APB_PHYS_BASE, + .boot_params = 0x00000100, .io_pg_offst = (APB_VIRT_BASE >> 18) & 0xfffc, - .map_io = mmp_map_io, + .map_io = pxa_map_io, .init_irq = mmp2_init_irq, .timer = &mmp2_timer, .init_machine = flint_init, diff --git a/trunk/arch/arm/mach-mmp/include/mach/devices.h b/trunk/arch/arm/mach-mmp/include/mach/devices.h index d0ec7dae88e4..1fa0a492454a 100644 --- a/trunk/arch/arm/mach-mmp/include/mach/devices.h +++ b/trunk/arch/arm/mach-mmp/include/mach/devices.h @@ -1,6 +1,3 @@ -#ifndef __MACH_DEVICE_H -#define __MACH_DEVICE_H - #include #define MAX_RESOURCE_DMA 2 @@ -50,4 +47,3 @@ struct pxa_device_desc mmp2_device_##_name __initdata = { \ } extern int pxa_register_device(struct pxa_device_desc *, void *, size_t); -#endif /* __MACH_DEVICE_H */ diff --git a/trunk/arch/arm/mach-mmp/include/mach/mmp2.h b/trunk/arch/arm/mach-mmp/include/mach/mmp2.h index dbba6e8a60c4..fec220bd5046 100644 --- a/trunk/arch/arm/mach-mmp/include/mach/mmp2.h +++ b/trunk/arch/arm/mach-mmp/include/mach/mmp2.h @@ -1,13 +1,6 @@ #ifndef __ASM_MACH_MMP2_H #define __ASM_MACH_MMP2_H -struct sys_timer; - -extern struct sys_timer mmp2_timer; -extern void __init mmp2_init_icu(void); -extern void __init mmp2_init_irq(void); -extern void mmp2_clear_pmic_int(void); - #include #include #include diff --git a/trunk/arch/arm/mach-mmp/include/mach/pxa168.h b/trunk/arch/arm/mach-mmp/include/mach/pxa168.h index 27e1bc758623..3b2bd5d5eb05 100644 --- a/trunk/arch/arm/mach-mmp/include/mach/pxa168.h +++ b/trunk/arch/arm/mach-mmp/include/mach/pxa168.h @@ -1,11 +1,6 @@ #ifndef __ASM_MACH_PXA168_H #define __ASM_MACH_PXA168_H -struct sys_timer; - -extern struct sys_timer pxa168_timer; -extern void __init pxa168_init_irq(void); - #include #include #include diff --git a/trunk/arch/arm/mach-mmp/include/mach/pxa910.h b/trunk/arch/arm/mach-mmp/include/mach/pxa910.h index f13c49d6f8dc..4f0b4ec6f5d0 100644 --- a/trunk/arch/arm/mach-mmp/include/mach/pxa910.h +++ b/trunk/arch/arm/mach-mmp/include/mach/pxa910.h @@ -1,11 +1,6 @@ #ifndef __ASM_MACH_PXA910_H #define __ASM_MACH_PXA910_H -struct sys_timer; - -extern struct sys_timer pxa910_timer; -extern void __init pxa910_init_irq(void); - #include #include #include diff --git a/trunk/arch/arm/mach-mmp/irq-mmp2.c b/trunk/arch/arm/mach-mmp/irq-mmp2.c index 01342be91c3c..cb18221c0af3 100644 --- a/trunk/arch/arm/mach-mmp/irq-mmp2.c +++ b/trunk/arch/arm/mach-mmp/irq-mmp2.c @@ -16,7 +16,6 @@ #include #include -#include #include "common.h" diff --git a/trunk/arch/arm/mach-mmp/jasper.c b/trunk/arch/arm/mach-mmp/jasper.c index 80c3e7ab1e17..d77dd41d60e1 100644 --- a/trunk/arch/arm/mach-mmp/jasper.c +++ b/trunk/arch/arm/mach-mmp/jasper.c @@ -135,8 +135,9 @@ static void __init jasper_init(void) MACHINE_START(MARVELL_JASPER, "Jasper Development Platform") .phys_io = APB_PHYS_BASE, + .boot_params = 0x00000100, .io_pg_offst = (APB_VIRT_BASE >> 18) & 0xfffc, - .map_io = mmp_map_io, + .map_io = pxa_map_io, .init_irq = mmp2_init_irq, .timer = &mmp2_timer, .init_machine = jasper_init, diff --git a/trunk/arch/arm/mach-mmp/mmp2.c b/trunk/arch/arm/mach-mmp/mmp2.c index daf3993349f8..7f5eb059bb01 100644 --- a/trunk/arch/arm/mach-mmp/mmp2.c +++ b/trunk/arch/arm/mach-mmp/mmp2.c @@ -17,7 +17,6 @@ #include -#include #include #include #include @@ -27,7 +26,6 @@ #include #include #include -#include #include "common.h" #include "clock.h" @@ -160,26 +158,6 @@ static int __init mmp2_init(void) } postcore_initcall(mmp2_init); -static void __init mmp2_timer_init(void) -{ - unsigned long clk_rst; - - __raw_writel(APBC_APBCLK | APBC_RST, APBC_MMP2_TIMERS); - - /* - * enable bus/functional clock, enable 6.5MHz (divider 4), - * release reset - */ - clk_rst = APBC_APBCLK | APBC_FNCLK | APBC_FNCLKSEL(1); - __raw_writel(clk_rst, APBC_MMP2_TIMERS); - - timer_init(IRQ_MMP2_TIMER1); -} - -struct sys_timer mmp2_timer = { - .init = mmp2_timer_init, -}; - /* on-chip devices */ MMP2_DEVICE(uart1, "pxa2xx-uart", 0, UART1, 0xd4030000, 0x30, 4, 5); MMP2_DEVICE(uart2, "pxa2xx-uart", 1, UART2, 0xd4017000, 0x30, 20, 21); diff --git a/trunk/arch/arm/mach-mmp/tavorevb.c b/trunk/arch/arm/mach-mmp/tavorevb.c index e81db7428215..0e0c9220eaba 100644 --- a/trunk/arch/arm/mach-mmp/tavorevb.c +++ b/trunk/arch/arm/mach-mmp/tavorevb.c @@ -100,8 +100,9 @@ static void __init tavorevb_init(void) MACHINE_START(TAVOREVB, "PXA910 Evaluation Board (aka TavorEVB)") .phys_io = APB_PHYS_BASE, + .boot_params = 0x00000100, .io_pg_offst = (APB_VIRT_BASE >> 18) & 0xfffc, - .map_io = mmp_map_io, + .map_io = pxa_map_io, .init_irq = pxa910_init_irq, .timer = &pxa910_timer, .init_machine = tavorevb_init, diff --git a/trunk/arch/arm/mach-mmp/time.c b/trunk/arch/arm/mach-mmp/time.c index 66528193f939..cf75694e9687 100644 --- a/trunk/arch/arm/mach-mmp/time.c +++ b/trunk/arch/arm/mach-mmp/time.c @@ -200,3 +200,24 @@ void __init timer_init(int irq) clocksource_register(&cksrc); clockevents_register_device(&ckevt); } + +static void __init mmp2_timer_init(void) +{ + unsigned long clk_rst; + + __raw_writel(APBC_APBCLK | APBC_RST, APBC_MMP2_TIMERS); + + /* + * enable bus/functional clock, enable 6.5MHz (divider 4), + * release reset + */ + clk_rst = APBC_APBCLK | APBC_FNCLK | APBC_FNCLKSEL(1); + __raw_writel(clk_rst, APBC_MMP2_TIMERS); + + timer_init(IRQ_MMP2_TIMER1); +} + +struct sys_timer mmp2_timer = { + .init = mmp2_timer_init, +}; + diff --git a/trunk/arch/arm/mach-mmp/ttc_dkb.c b/trunk/arch/arm/mach-mmp/ttc_dkb.c index ee65e05f0cf1..b22dec4abf78 100644 --- a/trunk/arch/arm/mach-mmp/ttc_dkb.c +++ b/trunk/arch/arm/mach-mmp/ttc_dkb.c @@ -123,8 +123,9 @@ static void __init ttc_dkb_init(void) MACHINE_START(TTC_DKB, "PXA910-based TTC_DKB Development Platform") .phys_io = APB_PHYS_BASE, + .boot_params = 0x00000100, .io_pg_offst = (APB_VIRT_BASE >> 18) & 0xfffc, - .map_io = mmp_map_io, + .map_io = pxa_map_io, .init_irq = pxa910_init_irq, .timer = &pxa910_timer, .init_machine = ttc_dkb_init, diff --git a/trunk/arch/arm/mach-msm/Makefile b/trunk/arch/arm/mach-msm/Makefile index 704610648a25..7ff8020d4d24 100644 --- a/trunk/arch/arm/mach-msm/Makefile +++ b/trunk/arch/arm/mach-msm/Makefile @@ -15,7 +15,7 @@ obj-$(CONFIG_ARCH_QSD8X50) += sirc.o obj-$(CONFIG_MSM_SMD) += smd.o smd_debug.o obj-$(CONFIG_MSM_SMD) += last_radio_log.o -obj-$(CONFIG_MACH_TROUT) += board-trout.o board-trout-gpio.o board-trout-mmc.o devices-msm7x00.o +obj-$(CONFIG_MACH_TROUT) += board-trout.o board-trout-gpio.o devices-msm7x00.o obj-$(CONFIG_MACH_HALIBUT) += board-halibut.o devices-msm7x00.o obj-$(CONFIG_ARCH_MSM7X30) += board-msm7x30.o devices-msm7x30.o obj-$(CONFIG_ARCH_QSD8X50) += board-qsd8x50.o devices-qsd8x50.o diff --git a/trunk/arch/arm/mach-msm/acpuclock-arm11.c b/trunk/arch/arm/mach-msm/acpuclock-arm11.c index 7ffbd987eb5d..f060a3959a75 100644 --- a/trunk/arch/arm/mach-msm/acpuclock-arm11.c +++ b/trunk/arch/arm/mach-msm/acpuclock-arm11.c @@ -17,6 +17,7 @@ * */ +#include #include #include #include diff --git a/trunk/arch/arm/mach-msm/board-trout-gpio.c b/trunk/arch/arm/mach-msm/board-trout-gpio.c index c50f3afc3134..523d213bf79e 100644 --- a/trunk/arch/arm/mach-msm/board-trout-gpio.c +++ b/trunk/arch/arm/mach-msm/board-trout-gpio.c @@ -15,20 +15,10 @@ #include #include #include -#include #include #include "board-trout.h" -static uint8_t trout_int_mask[2] = { - [0] = 0xff, /* mask all interrupts */ - [1] = 0xff, -}; -static uint8_t trout_sleep_int_mask[] = { - [0] = 0xff, - [1] = 0xff, -}; - struct msm_gpio_chip { struct gpio_chip chip; void __iomem *reg; /* Base of register bank */ @@ -105,121 +95,16 @@ static struct msm_gpio_chip msm_gpio_banks[] = { TROUT_GPIO_BANK("VIRTUAL", 0x12, TROUT_GPIO_VIRTUAL_BASE, 0), }; -static void trout_gpio_irq_ack(unsigned int irq) -{ - int bank = TROUT_INT_TO_BANK(irq); - uint8_t mask = TROUT_INT_TO_MASK(irq); - int reg = TROUT_BANK_TO_STAT_REG(bank); - /*printk(KERN_INFO "trout_gpio_irq_ack irq %d\n", irq);*/ - writeb(mask, TROUT_CPLD_BASE + reg); -} - -static void trout_gpio_irq_mask(unsigned int irq) -{ - unsigned long flags; - uint8_t reg_val; - int bank = TROUT_INT_TO_BANK(irq); - uint8_t mask = TROUT_INT_TO_MASK(irq); - int reg = TROUT_BANK_TO_MASK_REG(bank); - - local_irq_save(flags); - reg_val = trout_int_mask[bank] |= mask; - /*printk(KERN_INFO "trout_gpio_irq_mask irq %d => %d:%02x\n", - irq, bank, reg_val);*/ - writeb(reg_val, TROUT_CPLD_BASE + reg); - local_irq_restore(flags); -} - -static void trout_gpio_irq_unmask(unsigned int irq) -{ - unsigned long flags; - uint8_t reg_val; - int bank = TROUT_INT_TO_BANK(irq); - uint8_t mask = TROUT_INT_TO_MASK(irq); - int reg = TROUT_BANK_TO_MASK_REG(bank); - - local_irq_save(flags); - reg_val = trout_int_mask[bank] &= ~mask; - /*printk(KERN_INFO "trout_gpio_irq_unmask irq %d => %d:%02x\n", - irq, bank, reg_val);*/ - writeb(reg_val, TROUT_CPLD_BASE + reg); - local_irq_restore(flags); -} - -int trout_gpio_irq_set_wake(unsigned int irq, unsigned int on) -{ - unsigned long flags; - int bank = TROUT_INT_TO_BANK(irq); - uint8_t mask = TROUT_INT_TO_MASK(irq); - - local_irq_save(flags); - if(on) - trout_sleep_int_mask[bank] &= ~mask; - else - trout_sleep_int_mask[bank] |= mask; - local_irq_restore(flags); - return 0; -} - -static void trout_gpio_irq_handler(unsigned int irq, struct irq_desc *desc) -{ - int j, m; - unsigned v; - int bank; - int stat_reg; - int int_base = TROUT_INT_START; - uint8_t int_mask; - - for (bank = 0; bank < 2; bank++) { - stat_reg = TROUT_BANK_TO_STAT_REG(bank); - v = readb(TROUT_CPLD_BASE + stat_reg); - int_mask = trout_int_mask[bank]; - if (v & int_mask) { - writeb(v & int_mask, TROUT_CPLD_BASE + stat_reg); - printk(KERN_ERR "trout_gpio_irq_handler: got masked " - "interrupt: %d:%02x\n", bank, v & int_mask); - } - v &= ~int_mask; - while (v) { - m = v & -v; - j = fls(m) - 1; - /*printk(KERN_INFO "msm_gpio_irq_handler %d:%02x %02x b" - "it %d irq %d\n", bank, v, m, j, int_base + j);*/ - v &= ~m; - generic_handle_irq(int_base + j); - } - int_base += TROUT_INT_BANK0_COUNT; - } - desc->chip->ack(irq); -} - -static struct irq_chip trout_gpio_irq_chip = { - .name = "troutgpio", - .ack = trout_gpio_irq_ack, - .mask = trout_gpio_irq_mask, - .unmask = trout_gpio_irq_unmask, - .set_wake = trout_gpio_irq_set_wake, -}; - /* * Called from the processor-specific init to enable GPIO pin support. */ int __init trout_init_gpio(void) { int i; - for(i = TROUT_INT_START; i <= TROUT_INT_END; i++) { - set_irq_chip(i, &trout_gpio_irq_chip); - set_irq_handler(i, handle_edge_irq); - set_irq_flags(i, IRQF_VALID); - } for (i = 0; i < ARRAY_SIZE(msm_gpio_banks); i++) gpiochip_add(&msm_gpio_banks[i].chip); - set_irq_type(MSM_GPIO_TO_INT(17), IRQF_TRIGGER_HIGH); - set_irq_chained_handler(MSM_GPIO_TO_INT(17), trout_gpio_irq_handler); - set_irq_wake(MSM_GPIO_TO_INT(17), 1); - return 0; } diff --git a/trunk/arch/arm/mach-msm/board-trout-mmc.c b/trunk/arch/arm/mach-msm/board-trout-mmc.c deleted file mode 100644 index 44be8464657b..000000000000 --- a/trunk/arch/arm/mach-msm/board-trout-mmc.c +++ /dev/null @@ -1,186 +0,0 @@ -/* linux/arch/arm/mach-msm/board-trout-mmc.c -** Author: Brian Swetland -*/ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include - -#include - -#include "devices.h" - -#include "board-trout.h" - -#include "proc_comm.h" - -#define DEBUG_SDSLOT_VDD 1 - -/* ---- COMMON ---- */ -static void config_gpio_table(uint32_t *table, int len) -{ - int n; - unsigned id; - for(n = 0; n < len; n++) { - id = table[n]; - msm_proc_comm(PCOM_RPC_GPIO_TLMM_CONFIG_EX, &id, 0); - } -} - -/* ---- SDCARD ---- */ - -static uint32_t sdcard_on_gpio_table[] = { - PCOM_GPIO_CFG(62, 2, GPIO_OUTPUT, GPIO_NO_PULL, GPIO_8MA), /* CLK */ - PCOM_GPIO_CFG(63, 2, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_8MA), /* CMD */ - PCOM_GPIO_CFG(64, 2, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_8MA), /* DAT3 */ - PCOM_GPIO_CFG(65, 2, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_8MA), /* DAT2 */ - PCOM_GPIO_CFG(66, 2, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_4MA), /* DAT1 */ - PCOM_GPIO_CFG(67, 2, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_4MA), /* DAT0 */ -}; - -static uint32_t sdcard_off_gpio_table[] = { - PCOM_GPIO_CFG(62, 0, GPIO_OUTPUT, GPIO_NO_PULL, GPIO_4MA), /* CLK */ - PCOM_GPIO_CFG(63, 0, GPIO_OUTPUT, GPIO_NO_PULL, GPIO_4MA), /* CMD */ - PCOM_GPIO_CFG(64, 0, GPIO_OUTPUT, GPIO_NO_PULL, GPIO_4MA), /* DAT3 */ - PCOM_GPIO_CFG(65, 0, GPIO_OUTPUT, GPIO_NO_PULL, GPIO_4MA), /* DAT2 */ - PCOM_GPIO_CFG(66, 0, GPIO_OUTPUT, GPIO_NO_PULL, GPIO_4MA), /* DAT1 */ - PCOM_GPIO_CFG(67, 0, GPIO_OUTPUT, GPIO_NO_PULL, GPIO_4MA), /* DAT0 */ -}; - -static uint opt_disable_sdcard; - -static int __init trout_disablesdcard_setup(char *str) -{ - int cal = simple_strtol(str, NULL, 0); - - opt_disable_sdcard = cal; - return 1; -} - -__setup("board_trout.disable_sdcard=", trout_disablesdcard_setup); - -static struct vreg *vreg_sdslot; /* SD slot power */ - -struct mmc_vdd_xlat { - int mask; - int level; -}; - -static struct mmc_vdd_xlat mmc_vdd_table[] = { - { MMC_VDD_165_195, 1800 }, - { MMC_VDD_20_21, 2050 }, - { MMC_VDD_21_22, 2150 }, - { MMC_VDD_22_23, 2250 }, - { MMC_VDD_23_24, 2350 }, - { MMC_VDD_24_25, 2450 }, - { MMC_VDD_25_26, 2550 }, - { MMC_VDD_26_27, 2650 }, - { MMC_VDD_27_28, 2750 }, - { MMC_VDD_28_29, 2850 }, - { MMC_VDD_29_30, 2950 }, -}; - -static unsigned int sdslot_vdd = 0xffffffff; -static unsigned int sdslot_vreg_enabled; - -static uint32_t trout_sdslot_switchvdd(struct device *dev, unsigned int vdd) -{ - int i, rc; - - BUG_ON(!vreg_sdslot); - - if (vdd == sdslot_vdd) - return 0; - - sdslot_vdd = vdd; - - if (vdd == 0) { -#if DEBUG_SDSLOT_VDD - printk("%s: Disabling SD slot power\n", __func__); -#endif - config_gpio_table(sdcard_off_gpio_table, - ARRAY_SIZE(sdcard_off_gpio_table)); - vreg_disable(vreg_sdslot); - sdslot_vreg_enabled = 0; - return 0; - } - - if (!sdslot_vreg_enabled) { - rc = vreg_enable(vreg_sdslot); - if (rc) { - printk(KERN_ERR "%s: Error enabling vreg (%d)\n", - __func__, rc); - } - config_gpio_table(sdcard_on_gpio_table, - ARRAY_SIZE(sdcard_on_gpio_table)); - sdslot_vreg_enabled = 1; - } - - for (i = 0; i < ARRAY_SIZE(mmc_vdd_table); i++) { - if (mmc_vdd_table[i].mask == (1 << vdd)) { -#if DEBUG_SDSLOT_VDD - printk("%s: Setting level to %u\n", - __func__, mmc_vdd_table[i].level); -#endif - rc = vreg_set_level(vreg_sdslot, - mmc_vdd_table[i].level); - if (rc) { - printk(KERN_ERR - "%s: Error setting vreg level (%d)\n", - __func__, rc); - } - return 0; - } - } - - printk(KERN_ERR "%s: Invalid VDD %d specified\n", __func__, vdd); - return 0; -} - -static unsigned int trout_sdslot_status(struct device *dev) -{ - unsigned int status; - - status = (unsigned int) gpio_get_value(TROUT_GPIO_SDMC_CD_N); - return (!status); -} - -#define TROUT_MMC_VDD MMC_VDD_165_195 | MMC_VDD_20_21 | MMC_VDD_21_22 \ - | MMC_VDD_22_23 | MMC_VDD_23_24 | MMC_VDD_24_25 \ - | MMC_VDD_25_26 | MMC_VDD_26_27 | MMC_VDD_27_28 \ - | MMC_VDD_28_29 | MMC_VDD_29_30 - -static struct msm_mmc_platform_data trout_sdslot_data = { - .ocr_mask = TROUT_MMC_VDD, - .status = trout_sdslot_status, - .translate_vdd = trout_sdslot_switchvdd, -}; - -int __init trout_init_mmc(unsigned int sys_rev) -{ - sdslot_vreg_enabled = 0; - - vreg_sdslot = vreg_get(0, "gp6"); - if (IS_ERR(vreg_sdslot)) - return PTR_ERR(vreg_sdslot); - - set_irq_wake(TROUT_GPIO_TO_INT(TROUT_GPIO_SDMC_CD_N), 1); - - if (!opt_disable_sdcard) - msm_add_sdcc(2, &trout_sdslot_data, - TROUT_GPIO_TO_INT(TROUT_GPIO_SDMC_CD_N), 0); - else - printk(KERN_INFO "trout: SD-Card interface disabled\n"); - return 0; -} - diff --git a/trunk/arch/arm/mach-msm/board-trout.c b/trunk/arch/arm/mach-msm/board-trout.c index 469e0be3499d..e69a1502e4e8 100644 --- a/trunk/arch/arm/mach-msm/board-trout.c +++ b/trunk/arch/arm/mach-msm/board-trout.c @@ -30,8 +30,6 @@ #include "devices.h" #include "board-trout.h" -extern int trout_init_mmc(unsigned int); - static struct platform_device *devices[] __initdata = { &msm_device_uart3, &msm_device_smd, @@ -57,16 +55,7 @@ static void __init trout_fixup(struct machine_desc *desc, struct tag *tags, static void __init trout_init(void) { - int rc; - platform_add_devices(devices, ARRAY_SIZE(devices)); - -#ifdef CONFIG_MMC - rc = trout_init_mmc(system_rev); - if (rc) - printk(KERN_CRIT "%s: MMC init failure (%d)\n", __func__, rc); -#endif - } static struct map_desc trout_io_desc[] __initdata = { diff --git a/trunk/arch/arm/mach-msm/clock.c b/trunk/arch/arm/mach-msm/clock.c index c57210f4f06a..9cb1276ab749 100644 --- a/trunk/arch/arm/mach-msm/clock.c +++ b/trunk/arch/arm/mach-msm/clock.c @@ -14,6 +14,7 @@ * */ +#include #include #include #include diff --git a/trunk/arch/arm/mach-msm/devices-msm7x00.c b/trunk/arch/arm/mach-msm/devices-msm7x00.c index 4e8c0bcdc92d..fde9d8f69f10 100644 --- a/trunk/arch/arm/mach-msm/devices-msm7x00.c +++ b/trunk/arch/arm/mach-msm/devices-msm7x00.c @@ -322,8 +322,7 @@ static struct platform_device *msm_sdcc_devices[] __initdata = { &msm_device_sdc4, }; -int __init msm_add_sdcc(unsigned int controller, - struct msm_mmc_platform_data *plat, +int __init msm_add_sdcc(unsigned int controller, struct mmc_platform_data *plat, unsigned int stat_irq, unsigned long stat_irq_flags) { struct platform_device *pdev; diff --git a/trunk/arch/arm/mach-msm/include/mach/board.h b/trunk/arch/arm/mach-msm/include/mach/board.h index 5a79bcf50413..e302fbdc439b 100644 --- a/trunk/arch/arm/mach-msm/include/mach/board.h +++ b/trunk/arch/arm/mach-msm/include/mach/board.h @@ -18,7 +18,6 @@ #define __ASM_ARCH_MSM_BOARD_H #include -#include /* platform device data structures */ @@ -41,8 +40,5 @@ void __init msm_init_irq(void); void __init msm_init_gpio(void); void __init msm_clock_init(struct clk *clock_tbl, unsigned num_clocks); void __init msm_acpu_clock_init(struct msm_acpu_clock_platform_data *); -int __init msm_add_sdcc(unsigned int controller, - struct msm_mmc_platform_data *plat, - unsigned int stat_irq, unsigned long stat_irq_flags); #endif diff --git a/trunk/arch/arm/mach-msm/include/mach/mmc.h b/trunk/arch/arm/mach-msm/include/mach/mmc.h index d54b6b086cff..0ecf25426284 100644 --- a/trunk/arch/arm/mach-msm/include/mach/mmc.h +++ b/trunk/arch/arm/mach-msm/include/mach/mmc.h @@ -15,7 +15,7 @@ struct embedded_sdio_data { int num_funcs; }; -struct msm_mmc_platform_data { +struct mmc_platform_data { unsigned int ocr_mask; /* available voltages */ u32 (*translate_vdd)(struct device *, unsigned int); unsigned int (*status)(struct device *); diff --git a/trunk/arch/arm/mach-msm/smd.c b/trunk/arch/arm/mach-msm/smd.c index f07dc7c738f0..cf11d414b425 100644 --- a/trunk/arch/arm/mach-msm/smd.c +++ b/trunk/arch/arm/mach-msm/smd.c @@ -997,7 +997,7 @@ int smd_core_init(void) return 0; } -static int __devinit msm_smd_probe(struct platform_device *pdev) +static int __init msm_smd_probe(struct platform_device *pdev) { pr_info("smd_init()\n"); diff --git a/trunk/arch/arm/mach-omap2/board-omap3pandora.c b/trunk/arch/arm/mach-omap2/board-omap3pandora.c index dd3af2be13be..55836fa35060 100644 --- a/trunk/arch/arm/mach-omap2/board-omap3pandora.c +++ b/trunk/arch/arm/mach-omap2/board-omap3pandora.c @@ -32,7 +32,6 @@ #include #include #include -#include #include #include @@ -259,20 +258,6 @@ static struct platform_device pandora_dss_device = { }, }; -static void pandora_wl1251_init_card(struct mmc_card *card) -{ - /* - * We have TI wl1251 attached to MMC3. Pass this information to - * SDIO core because it can't be probed by normal methods. - */ - card->quirks |= MMC_QUIRK_NONSTD_SDIO; - card->cccr.wide_bus = 1; - card->cis.vendor = 0x104c; - card->cis.device = 0x9066; - card->cis.blksize = 512; - card->cis.max_dtr = 20000000; -} - static struct omap2_hsmmc_info omap3pandora_mmc[] = { { .mmc = 1, @@ -294,7 +279,6 @@ static struct omap2_hsmmc_info omap3pandora_mmc[] = { .wires = 4, .gpio_cd = -EINVAL, .gpio_wp = -EINVAL, - .init_card = pandora_wl1251_init_card, }, {} /* Terminator */ }; diff --git a/trunk/arch/arm/mach-omap2/hsmmc.c b/trunk/arch/arm/mach-omap2/hsmmc.c index c8f647b6205e..1ef54b036103 100644 --- a/trunk/arch/arm/mach-omap2/hsmmc.c +++ b/trunk/arch/arm/mach-omap2/hsmmc.c @@ -268,7 +268,6 @@ void __init omap2_hsmmc_init(struct omap2_hsmmc_info *controllers) mmc->slots[0].gpio_wp = c->gpio_wp; mmc->slots[0].remux = c->remux; - mmc->slots[0].init_card = c->init_card; if (c->cover_only) mmc->slots[0].cover = 1; diff --git a/trunk/arch/arm/mach-omap2/hsmmc.h b/trunk/arch/arm/mach-omap2/hsmmc.h index 1fe6f0187177..36f0ba8d89e2 100644 --- a/trunk/arch/arm/mach-omap2/hsmmc.h +++ b/trunk/arch/arm/mach-omap2/hsmmc.h @@ -6,8 +6,6 @@ * published by the Free Software Foundation. */ -struct mmc_card; - struct omap2_hsmmc_info { u8 mmc; /* controller 1/2/3 */ u8 wires; /* 1/4/8 wires */ @@ -25,8 +23,6 @@ struct omap2_hsmmc_info { int ocr_mask; /* temporary HACK */ /* Remux (pad configuation) when powering on/off */ void (*remux)(struct device *dev, int slot, int power_on); - /* init some special card */ - void (*init_card)(struct mmc_card *card); }; #if defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE) diff --git a/trunk/arch/arm/mach-pxa/Kconfig b/trunk/arch/arm/mach-pxa/Kconfig index 7aefb9074852..3b51741a4810 100644 --- a/trunk/arch/arm/mach-pxa/Kconfig +++ b/trunk/arch/arm/mach-pxa/Kconfig @@ -238,17 +238,6 @@ config MACH_COLIBRI bool "Toradex Colibri PXA270" select PXA27x -config MACH_COLIBRI_PXA270_EVALBOARD - bool "Toradex Colibri Evaluation Carrier Board support (PXA270)" - depends on MACH_COLIBRI - -config MACH_COLIBRI_PXA270_INCOME - bool "Income s.r.o. PXA270 SBC" - depends on MACH_COLIBRI - select PXA27x - select HAVE_PWM - select PXA_HAVE_BOARD_IRQS - config MACH_COLIBRI300 bool "Toradex Colibri PXA300/310" select PXA3xx @@ -347,9 +336,6 @@ config ARCH_PXA_PALM bool "PXA based Palm PDAs" select HAVE_PWM -config MACH_PALM27X - bool - config MACH_PALMTE2 bool "Palm Tungsten|E2" default y @@ -374,7 +360,6 @@ config MACH_PALMT5 depends on ARCH_PXA_PALM select PXA27x select IWMMXT - select MACH_PALM27X help Say Y here if you intend to run this kernel on a Palm Tungsten|T5 handheld computer. @@ -385,7 +370,6 @@ config MACH_PALMTX depends on ARCH_PXA_PALM select PXA27x select IWMMXT - select MACH_PALM27X help Say Y here if you intend to run this kernel on a Palm T|X handheld computer. @@ -396,7 +380,6 @@ config MACH_PALMZ72 depends on ARCH_PXA_PALM select PXA27x select IWMMXT - select MACH_PALM27X help Say Y here if you intend to run this kernel on Palm Zire 72 handheld computer. @@ -407,7 +390,6 @@ config MACH_PALMLD depends on ARCH_PXA_PALM select PXA27x select IWMMXT - select MACH_PALM27X help Say Y here if you intend to run this kernel on a Palm LifeDrive handheld computer. @@ -465,13 +447,16 @@ config PXA_SHARPSL SL-C3000 (Spitz), SL-C3100 (Borzoi) or SL-C6000x (Tosa) handheld computer. -config PXA_SHARPSL_DETECT_MACH_ID - bool "Detect machine ID at run-time in the decompressor" - depends on PXA_SHARPSL - help - Say Y here if you want the zImage decompressor to detect - the Zaurus machine ID at run-time. For latest kexec-based - boot loader, this is not necessary. +config SHARPSL_PM + bool + select APM_EMULATION + select SHARPSL_PM_MAX1111 + +config SHARPSL_PM_MAX1111 + bool + depends on !CORGI_SSP_DEPRECATED + select HWMON + select SENSORS_MAX1111 config MACH_POODLE bool "Enable Sharp SL-5600 (Poodle) Support" @@ -525,25 +510,6 @@ config MACH_TOSA select PXA25x select PXA_HAVE_BOARD_IRQS -config TOSA_BT - tristate "Control the state of built-in bluetooth chip on Sharp SL-6000" - depends on MACH_TOSA - select RFKILL - help - This is a simple driver that is able to control - the state of built in bluetooth chip on tosa. - -config TOSA_USE_EXT_KEYCODES - bool "Tosa keyboard: use extended keycodes" - depends on MACH_TOSA - default n - help - Say Y here to enable the tosa keyboard driver to generate extended - (>= 127) keycodes. Be aware, that they can't be correctly interpreted - by either console keyboard driver or by Kdrive keybd driver. - - Say Y only if you know, what you are doing! - config MACH_ICONTROL bool "TMT iControl/SafeTCam based on the MXM-8x10 CoM" select CPU_PXA320 @@ -682,15 +648,25 @@ config PXA_SHARP_Cxx00 help Enable common support for Sharp Cxx00 models -config SHARPSL_PM - bool - select APM_EMULATION - select SHARPSL_PM_MAX1111 +config TOSA_BT + tristate "Control the state of built-in bluetooth chip on Sharp SL-6000" + depends on MACH_TOSA + select RFKILL + help + This is a simple driver that is able to control + the state of built in bluetooth chip on tosa. + +config TOSA_USE_EXT_KEYCODES + bool "Tosa keyboard: use extended keycodes" + depends on MACH_TOSA + default n + help + Say Y here to enable the tosa keyboard driver to generate extended + (>= 127) keycodes. Be aware, that they can't be correctly interpreted + by either console keyboard driver or by Kdrive keybd driver. + + Say Y only if you know, what you are doing! -config SHARPSL_PM_MAX1111 - bool - select HWMON - select SENSORS_MAX1111 config PXA_HAVE_BOARD_IRQS bool diff --git a/trunk/arch/arm/mach-pxa/Makefile b/trunk/arch/arm/mach-pxa/Makefile index 85c7fb324dbb..b8f1f4bc7ca7 100644 --- a/trunk/arch/arm/mach-pxa/Makefile +++ b/trunk/arch/arm/mach-pxa/Makefile @@ -51,16 +51,14 @@ obj-$(CONFIG_MACH_CAPC7117) += capc7117.o mxm8x10.o obj-$(CONFIG_ARCH_GUMSTIX) += gumstix.o obj-$(CONFIG_GUMSTIX_AM200EPD) += am200epd.o obj-$(CONFIG_GUMSTIX_AM300EPD) += am300epd.o -obj-$(CONFIG_MACH_INTELMOTE2) += stargate2.o +obj-$(CONFIG_MACH_INTELMOTE2) += imote2.o obj-$(CONFIG_MACH_STARGATE2) += stargate2.o obj-$(CONFIG_MACH_XCEP) += xcep.o obj-$(CONFIG_MACH_TRIZEPS4) += trizeps4.o obj-$(CONFIG_MACH_LOGICPD_PXA270) += lpd270.o obj-$(CONFIG_MACH_PCM027) += pcm027.o obj-$(CONFIG_MACH_PCM990_BASEBOARD) += pcm990-baseboard.o -obj-$(CONFIG_MACH_COLIBRI) += colibri-pxa270.o -obj-$(CONFIG_MACH_COLIBRI_PXA270_EVALBOARD) += colibri-pxa270-evalboard.o -obj-$(CONFIG_MACH_COLIBRI_PXA270_INCOME) += colibri-pxa270-income.o +obj-$(CONFIG_MACH_COLIBRI) += colibri-pxa270.o obj-$(CONFIG_MACH_COLIBRI300) += colibri-pxa3xx.o colibri-pxa300.o obj-$(CONFIG_MACH_COLIBRI320) += colibri-pxa3xx.o colibri-pxa320.o obj-$(CONFIG_MACH_VPAC270) += vpac270.o @@ -75,7 +73,6 @@ obj-$(CONFIG_PXA_EZX) += ezx.o obj-$(CONFIG_MACH_MP900C) += mp900.o obj-$(CONFIG_MACH_PALMTE2) += palmte2.o obj-$(CONFIG_MACH_PALMTC) += palmtc.o -obj-$(CONFIG_MACH_PALM27X) += palm27x.o obj-$(CONFIG_MACH_PALMT5) += palmt5.o obj-$(CONFIG_MACH_PALMTX) += palmtx.o obj-$(CONFIG_MACH_PALMZ72) += palmz72.o @@ -87,6 +84,12 @@ obj-$(CONFIG_MACH_POODLE) += poodle.o obj-$(CONFIG_MACH_TOSA) += tosa.o obj-$(CONFIG_MACH_ICONTROL) += icontrol.o mxm8x10.o obj-$(CONFIG_ARCH_PXA_ESERIES) += eseries.o +obj-$(CONFIG_MACH_E330) += e330.o +obj-$(CONFIG_MACH_E350) += e350.o +obj-$(CONFIG_MACH_E740) += e740.o +obj-$(CONFIG_MACH_E750) += e750.o +obj-$(CONFIG_MACH_E400) += e400.o +obj-$(CONFIG_MACH_E800) += e800.o obj-$(CONFIG_MACH_RAUMFELD_RC) += raumfeld.o obj-$(CONFIG_MACH_RAUMFELD_CONNECTOR) += raumfeld.o obj-$(CONFIG_MACH_RAUMFELD_SPEAKER) += raumfeld.o diff --git a/trunk/arch/arm/mach-pxa/balloon3.c b/trunk/arch/arm/mach-pxa/balloon3.c index 9041340fee1d..f3b5ace815e5 100644 --- a/trunk/arch/arm/mach-pxa/balloon3.c +++ b/trunk/arch/arm/mach-pxa/balloon3.c @@ -22,14 +22,9 @@ #include #include #include -#include #include #include #include -#include -#include -#include -#include #include #include @@ -56,59 +51,6 @@ #include "generic.h" #include "devices.h" -/****************************************************************************** - * Pin configuration - ******************************************************************************/ -static unsigned long balloon3_pin_config[] __initdata = { - /* Select BTUART 'COM1/ttyS0' as IO option for pins 42/43/44/45 */ - GPIO42_BTUART_RXD, - GPIO43_BTUART_TXD, - GPIO44_BTUART_CTS, - GPIO45_BTUART_RTS, - - /* Reset, configured as GPIO wakeup source */ - GPIO1_GPIO | WAKEUP_ON_EDGE_BOTH, - - /* LEDs */ - GPIO9_GPIO, /* NAND activity LED */ - GPIO10_GPIO, /* Heartbeat LED */ - - /* AC97 */ - GPIO28_AC97_BITCLK, - GPIO29_AC97_SDATA_IN_0, - GPIO30_AC97_SDATA_OUT, - GPIO31_AC97_SYNC, - GPIO113_AC97_nRESET, - GPIO95_GPIO, - - /* MMC */ - GPIO32_MMC_CLK, - GPIO92_MMC_DAT_0, - GPIO109_MMC_DAT_1, - GPIO110_MMC_DAT_2, - GPIO111_MMC_DAT_3, - GPIO112_MMC_CMD, - - /* USB Host */ - GPIO88_USBH1_PWR, - GPIO89_USBH1_PEN, - - /* PC Card */ - GPIO48_nPOE, - GPIO49_nPWE, - GPIO50_nPIOR, - GPIO51_nPIOW, - GPIO85_nPCE_1, - GPIO54_nPCE_2, - GPIO79_PSKTSEL, - GPIO55_nPREG, - GPIO56_nPWAIT, - GPIO57_nIOIS16, -}; - -/****************************************************************************** - * Compatibility: Parameter parsing - ******************************************************************************/ static unsigned long balloon3_irq_enabled; static unsigned long balloon3_features_present = @@ -131,321 +73,6 @@ int __init parse_balloon3_features(char *arg) } early_param("balloon3_features", parse_balloon3_features); -/****************************************************************************** - * NOR Flash - ******************************************************************************/ -#if defined(CONFIG_MTD_PHYSMAP) || defined(CONFIG_MTD_PHYSMAP_MODULE) -static struct mtd_partition balloon3_nor_partitions[] = { - { - .name = "Flash", - .offset = 0x00000000, - .size = MTDPART_SIZ_FULL, - } -}; - -static struct physmap_flash_data balloon3_flash_data[] = { - { - .width = 2, /* bankwidth in bytes */ - .parts = balloon3_nor_partitions, - .nr_parts = ARRAY_SIZE(balloon3_nor_partitions) - } -}; - -static struct resource balloon3_flash_resource = { - .start = PXA_CS0_PHYS, - .end = PXA_CS0_PHYS + SZ_64M - 1, - .flags = IORESOURCE_MEM, -}; - -static struct platform_device balloon3_flash = { - .name = "physmap-flash", - .id = 0, - .resource = &balloon3_flash_resource, - .num_resources = 1, - .dev = { - .platform_data = balloon3_flash_data, - }, -}; -static void __init balloon3_nor_init(void) -{ - platform_device_register(&balloon3_flash); -} -#else -static inline void balloon3_nor_init(void) {} -#endif - -/****************************************************************************** - * Audio and Touchscreen - ******************************************************************************/ -#if defined(CONFIG_TOUCHSCREEN_UCB1400) || \ - defined(CONFIG_TOUCHSCREEN_UCB1400_MODULE) -static struct ucb1400_pdata vpac270_ucb1400_pdata = { - .irq = IRQ_GPIO(BALLOON3_GPIO_CODEC_IRQ), -}; - - -static struct platform_device balloon3_ucb1400_device = { - .name = "ucb1400_core", - .id = -1, - .dev = { - .platform_data = &vpac270_ucb1400_pdata, - }, -}; - -static void __init balloon3_ts_init(void) -{ - if (!balloon3_has(BALLOON3_FEATURE_AUDIO)) - return; - - pxa_set_ac97_info(NULL); - platform_device_register(&balloon3_ucb1400_device); -} -#else -static inline void balloon3_ts_init(void) {} -#endif - -/****************************************************************************** - * Framebuffer - ******************************************************************************/ -#if defined(CONFIG_FB_PXA) || defined(CONFIG_FB_PXA_MODULE) -static struct pxafb_mode_info balloon3_lcd_modes[] = { - { - .pixclock = 38000, - .xres = 480, - .yres = 640, - .bpp = 16, - .hsync_len = 8, - .left_margin = 8, - .right_margin = 8, - .vsync_len = 2, - .upper_margin = 4, - .lower_margin = 5, - .sync = 0, - }, -}; - -static struct pxafb_mach_info balloon3_lcd_screen = { - .modes = balloon3_lcd_modes, - .num_modes = ARRAY_SIZE(balloon3_lcd_modes), - .lcd_conn = LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL, -}; - -static void balloon3_backlight_power(int on) -{ - gpio_set_value(BALLOON3_GPIO_RUN_BACKLIGHT, on); -} - -static void __init balloon3_lcd_init(void) -{ - int ret; - - if (!balloon3_has(BALLOON3_FEATURE_TOPPOLY)) - return; - - ret = gpio_request(BALLOON3_GPIO_RUN_BACKLIGHT, "BKL-ON"); - if (ret) { - pr_err("Requesting BKL-ON GPIO failed!\n"); - goto err; - } - - ret = gpio_direction_output(BALLOON3_GPIO_RUN_BACKLIGHT, 1); - if (ret) { - pr_err("Setting BKL-ON GPIO direction failed!\n"); - goto err2; - } - - balloon3_lcd_screen.pxafb_backlight_power = balloon3_backlight_power; - set_pxa_fb_info(&balloon3_lcd_screen); - return; - -err2: - gpio_free(BALLOON3_GPIO_RUN_BACKLIGHT); -err: - return; -} -#else -static inline void balloon3_lcd_init(void) {} -#endif - -/****************************************************************************** - * SD/MMC card controller - ******************************************************************************/ -#if defined(CONFIG_MMC_PXA) || defined(CONFIG_MMC_PXA_MODULE) -static struct pxamci_platform_data balloon3_mci_platform_data = { - .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34, - .gpio_card_detect = -1, - .gpio_card_ro = -1, - .gpio_power = -1, - .detect_delay_ms = 200, -}; - -static void __init balloon3_mmc_init(void) -{ - pxa_set_mci_info(&balloon3_mci_platform_data); -} -#else -static inline void balloon3_mmc_init(void) {} -#endif - -/****************************************************************************** - * USB Gadget - ******************************************************************************/ -#if defined(CONFIG_USB_GADGET_PXA27X)||defined(CONFIG_USB_GADGET_PXA27X_MODULE) -static void balloon3_udc_command(int cmd) -{ - if (cmd == PXA2XX_UDC_CMD_CONNECT) - UP2OCR |= UP2OCR_DPPUE | UP2OCR_DPPUBE; - else if (cmd == PXA2XX_UDC_CMD_DISCONNECT) - UP2OCR &= ~UP2OCR_DPPUE; -} - -static int balloon3_udc_is_connected(void) -{ - return 1; -} - -static struct pxa2xx_udc_mach_info balloon3_udc_info __initdata = { - .udc_command = balloon3_udc_command, - .udc_is_connected = balloon3_udc_is_connected, - .gpio_pullup = -1, -}; - -static void __init balloon3_udc_init(void) -{ - pxa_set_udc_info(&balloon3_udc_info); - platform_device_register(&balloon3_gpio_vbus); -} -#else -static inline void balloon3_udc_init(void) {} -#endif - -/****************************************************************************** - * IrDA - ******************************************************************************/ -#if defined(CONFIG_IRDA) || defined(CONFIG_IRDA_MODULE) -static struct pxaficp_platform_data balloon3_ficp_platform_data = { - .transceiver_cap = IR_FIRMODE | IR_SIRMODE | IR_OFF, -}; - -static void __init balloon3_irda_init(void) -{ - pxa_set_ficp_info(&balloon3_ficp_platform_data); -} -#else -static inline void balloon3_irda_init(void) {} -#endif - -/****************************************************************************** - * USB Host - ******************************************************************************/ -#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) -static struct pxaohci_platform_data balloon3_ohci_info = { - .port_mode = PMM_PERPORT_MODE, - .flags = ENABLE_PORT_ALL | POWER_CONTROL_LOW | POWER_SENSE_LOW, -}; - -static void __init balloon3_uhc_init(void) -{ - if (!balloon3_has(BALLOON3_FEATURE_OHCI)) - return; - pxa_set_ohci_info(&balloon3_ohci_info); -} -#else -static inline void balloon3_uhc_init(void) {} -#endif - -/****************************************************************************** - * LEDs - ******************************************************************************/ -#if defined(CONFIG_LEDS_GPIO) || defined(CONFIG_LEDS_GPIO_MODULE) -struct gpio_led balloon3_gpio_leds[] = { - { - .name = "balloon3:green:idle", - .default_trigger = "heartbeat", - .gpio = BALLOON3_GPIO_LED_IDLE, - .active_low = 1, - }, { - .name = "balloon3:green:nand", - .default_trigger = "nand-disk", - .gpio = BALLOON3_GPIO_LED_NAND, - .active_low = 1, - }, -}; - -static struct gpio_led_platform_data balloon3_gpio_led_info = { - .leds = balloon3_gpio_leds, - .num_leds = ARRAY_SIZE(balloon3_gpio_leds), -}; - -static struct platform_device balloon3_leds = { - .name = "leds-gpio", - .id = 0, - .dev = { - .platform_data = &balloon3_gpio_led_info, - } -}; - -struct gpio_led balloon3_pcf_gpio_leds[] = { - { - .name = "balloon3:green:led0", - .gpio = BALLOON3_PCF_GPIO_LED0, - .active_low = 1, - }, { - .name = "balloon3:green:led1", - .gpio = BALLOON3_PCF_GPIO_LED1, - .active_low = 1, - }, { - .name = "balloon3:orange:led2", - .gpio = BALLOON3_PCF_GPIO_LED2, - .active_low = 1, - }, { - .name = "balloon3:orange:led3", - .gpio = BALLOON3_PCF_GPIO_LED3, - .active_low = 1, - }, { - .name = "balloon3:orange:led4", - .gpio = BALLOON3_PCF_GPIO_LED4, - .active_low = 1, - }, { - .name = "balloon3:orange:led5", - .gpio = BALLOON3_PCF_GPIO_LED5, - .active_low = 1, - }, { - .name = "balloon3:red:led6", - .gpio = BALLOON3_PCF_GPIO_LED6, - .active_low = 1, - }, { - .name = "balloon3:red:led7", - .gpio = BALLOON3_PCF_GPIO_LED7, - .active_low = 1, - }, -}; - -static struct gpio_led_platform_data balloon3_pcf_gpio_led_info = { - .leds = balloon3_pcf_gpio_leds, - .num_leds = ARRAY_SIZE(balloon3_pcf_gpio_leds), -}; - -static struct platform_device balloon3_pcf_leds = { - .name = "leds-gpio", - .id = 1, - .dev = { - .platform_data = &balloon3_pcf_gpio_led_info, - } -}; - -static void __init balloon3_leds_init(void) -{ - platform_device_register(&balloon3_leds); - platform_device_register(&balloon3_pcf_leds); -} -#else -static inline void balloon3_leds_init(void) {} -#endif - -/****************************************************************************** - * FPGA IRQ - ******************************************************************************/ static void balloon3_mask_irq(unsigned int irq) { int balloon3_irq = (irq - BALLOON3_IRQ(0)); @@ -471,6 +98,7 @@ static void balloon3_irq_handler(unsigned int irq, struct irq_desc *desc) { unsigned long pending = __raw_readl(BALLOON3_INT_CONTROL_REG) & balloon3_irq_enabled; + do { /* clear useless edge notification */ if (desc->chip->ack) @@ -504,259 +132,201 @@ static void __init balloon3_init_irq(void) "enabled\n", __func__, BALLOON3_AUX_NIRQ); } -/****************************************************************************** - * GPIO expander - ******************************************************************************/ -#if defined(CONFIG_GPIO_PCF857X) || defined(CONFIG_GPIO_PCF857X_MODULE) -static struct pcf857x_platform_data balloon3_pcf857x_pdata = { - .gpio_base = BALLOON3_PCF_GPIO_BASE, - .n_latch = 0, - .setup = NULL, - .teardown = NULL, - .context = NULL, -}; - -static struct i2c_board_info __initdata balloon3_i2c_devs[] = { - { - I2C_BOARD_INFO("pcf8574a", 0x38), - .platform_data = &balloon3_pcf857x_pdata, - }, +static unsigned long balloon3_ac97_pin_config[] = { + GPIO28_AC97_BITCLK, + GPIO29_AC97_SDATA_IN_0, + GPIO30_AC97_SDATA_OUT, + GPIO31_AC97_SYNC, + GPIO113_AC97_nRESET, }; -static void __init balloon3_i2c_init(void) +static void balloon3_backlight_power(int on) { - pxa_set_i2c_info(NULL); - i2c_register_board_info(0, ARRAY_AND_SIZE(balloon3_i2c_devs)); + pr_debug("%s: power is %s\n", __func__, on ? "on" : "off"); + gpio_set_value(BALLOON3_GPIO_RUN_BACKLIGHT, on); } -#else -static inline void balloon3_i2c_init(void) {} -#endif - -/****************************************************************************** - * NAND - ******************************************************************************/ -#if defined(CONFIG_MTD_NAND_PLATFORM)||defined(CONFIG_MTD_NAND_PLATFORM_MODULE) -static uint16_t balloon3_ctl = - BALLOON3_NAND_CONTROL_FLCE0 | BALLOON3_NAND_CONTROL_FLCE1 | - BALLOON3_NAND_CONTROL_FLCE2 | BALLOON3_NAND_CONTROL_FLCE3 | - BALLOON3_NAND_CONTROL_FLWP; - -static void balloon3_nand_cmd_ctl(struct mtd_info *mtd, int cmd, unsigned int ctrl) -{ - struct nand_chip *this = mtd->priv; - if (ctrl & NAND_CTRL_CHANGE) { - if (ctrl & NAND_CLE) - balloon3_ctl |= BALLOON3_NAND_CONTROL_FLCLE; - else - balloon3_ctl &= ~BALLOON3_NAND_CONTROL_FLCLE; +static unsigned long balloon3_lcd_pin_config[] = { + /* LCD - 16bpp Active TFT */ + GPIOxx_LCD_TFT_16BPP, - if (ctrl & NAND_ALE) - balloon3_ctl |= BALLOON3_NAND_CONTROL_FLALE; - else - balloon3_ctl &= ~BALLOON3_NAND_CONTROL_FLALE; - - __raw_writel(balloon3_ctl, BALLOON3_NAND_CONTROL_REG); - } - - if (cmd != NAND_CMD_NONE) - writeb(cmd, this->IO_ADDR_W); -} - -static void balloon3_nand_select_chip(struct mtd_info *mtd, int chip) -{ - if (chip < 0 || chip > 3) - return; + GPIO99_GPIO, /* Backlight */ +}; - balloon3_ctl |= BALLOON3_NAND_CONTROL_FLCE0 | - BALLOON3_NAND_CONTROL_FLCE1 | - BALLOON3_NAND_CONTROL_FLCE2 | - BALLOON3_NAND_CONTROL_FLCE3; +static struct pxafb_mode_info balloon3_lcd_modes[] = { + { + .pixclock = 38000, + .xres = 480, + .yres = 640, + .bpp = 16, + .hsync_len = 8, + .left_margin = 8, + .right_margin = 8, + .vsync_len = 2, + .upper_margin = 4, + .lower_margin = 5, + .sync = 0, + }, +}; - /* Deassert correct nCE line */ - balloon3_ctl &= ~(BALLOON3_NAND_CONTROL_FLCE0 << chip); +static struct pxafb_mach_info balloon3_pxafb_info = { + .modes = balloon3_lcd_modes, + .num_modes = ARRAY_SIZE(balloon3_lcd_modes), + .lcd_conn = LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL, + .pxafb_backlight_power = balloon3_backlight_power, +}; - __raw_writew(balloon3_ctl, BALLOON3_NAND_CONTROL_REG); -} +static unsigned long balloon3_mmc_pin_config[] = { + GPIO32_MMC_CLK, + GPIO92_MMC_DAT_0, + GPIO109_MMC_DAT_1, + GPIO110_MMC_DAT_2, + GPIO111_MMC_DAT_3, + GPIO112_MMC_CMD, +}; -static int balloon3_nand_probe(struct platform_device *pdev) +static void balloon3_mci_setpower(struct device *dev, unsigned int vdd) { - void __iomem *temp_map; - uint16_t ver; - int ret; - - __raw_writew(BALLOON3_NAND_CONTROL2_16BIT, BALLOON3_NAND_CONTROL2_REG); - - ver = __raw_readw(BALLOON3_FPGA_VER); - if (ver > 0x0201) - pr_warn("The FPGA code, version 0x%04x, is newer than rel-0.3. " - "NAND support might be broken in this version!", ver); - - /* Power up the NAND chips */ - ret = gpio_request(BALLOON3_GPIO_RUN_NAND, "NAND"); - if (ret) - goto err1; - - ret = gpio_direction_output(BALLOON3_GPIO_RUN_NAND, 1); - if (ret) - goto err2; - - gpio_set_value(BALLOON3_GPIO_RUN_NAND, 1); + struct pxamci_platform_data *p_d = dev->platform_data; + + if ((1 << vdd) & p_d->ocr_mask) { + pr_debug("%s: on\n", __func__); + /* FIXME something to prod here? */ + } else { + pr_debug("%s: off\n", __func__); + /* FIXME something to prod here? */ + } +} - /* Deassert all nCE lines and write protect line */ - __raw_writel(balloon3_ctl, BALLOON3_NAND_CONTROL_REG); - return 0; +static struct pxamci_platform_data balloon3_mci_platform_data = { + .ocr_mask = MMC_VDD_32_33|MMC_VDD_33_34, + .setpower = balloon3_mci_setpower, +}; -err2: - gpio_free(BALLOON3_GPIO_RUN_NAND); -err1: - return ret; +static int balloon3_udc_is_connected(void) +{ + pr_debug("%s: udc connected\n", __func__); + return 1; } -static void balloon3_nand_remove(struct platform_device *pdev) +static void balloon3_udc_command(int cmd) { - /* Power down the NAND chips */ - gpio_set_value(BALLOON3_GPIO_RUN_NAND, 0); - gpio_free(BALLOON3_GPIO_RUN_NAND); + switch (cmd) { + case PXA2XX_UDC_CMD_CONNECT: + UP2OCR |= (UP2OCR_DPPUE + UP2OCR_DPPUBE); + pr_debug("%s: connect\n", __func__); + break; + case PXA2XX_UDC_CMD_DISCONNECT: + UP2OCR &= ~UP2OCR_DPPUE; + pr_debug("%s: disconnect\n", __func__); + break; + } } -static struct mtd_partition balloon3_partition_info[] = { - [0] = { - .name = "Boot", - .offset = 0, - .size = SZ_4M, - }, - [1] = { - .name = "RootFS", - .offset = MTDPART_OFS_APPEND, - .size = MTDPART_SIZ_FULL - }, +static struct pxa2xx_udc_mach_info balloon3_udc_info = { + .udc_is_connected = balloon3_udc_is_connected, + .udc_command = balloon3_udc_command, }; -static const char *balloon3_part_probes[] = { "cmdlinepart", NULL }; - -struct platform_nand_data balloon3_nand_pdata = { - .chip = { - .nr_chips = 4, - .chip_offset = 0, - .nr_partitions = ARRAY_SIZE(balloon3_partition_info), - .partitions = balloon3_partition_info, - .chip_delay = 50, - .part_probe_types = balloon3_part_probes, - }, - .ctrl = { - .hwcontrol = 0, - .dev_ready = 0, - .select_chip = balloon3_nand_select_chip, - .cmd_ctrl = balloon3_nand_cmd_ctl, - .probe = balloon3_nand_probe, - .remove = balloon3_nand_remove, - }, +static struct pxaficp_platform_data balloon3_ficp_platform_data = { + .transceiver_cap = IR_SIRMODE | IR_FIRMODE | IR_OFF, }; -static struct resource balloon3_nand_resource[] = { - [0] = { - .start = BALLOON3_NAND_BASE, - .end = BALLOON3_NAND_BASE + 0x4, - .flags = IORESOURCE_MEM, - }, +static unsigned long balloon3_ohci_pin_config[] = { + GPIO88_USBH1_PWR, + GPIO89_USBH1_PEN, }; -static struct platform_device balloon3_nand = { - .name = "gen_nand", - .num_resources = ARRAY_SIZE(balloon3_nand_resource), - .resource = balloon3_nand_resource, - .id = -1, - .dev = { - .platform_data = &balloon3_nand_pdata, - } +static struct pxaohci_platform_data balloon3_ohci_platform_data = { + .port_mode = PMM_PERPORT_MODE, + .flags = ENABLE_PORT_ALL | POWER_CONTROL_LOW | POWER_SENSE_LOW, }; -static void __init balloon3_nand_init(void) -{ - platform_device_register(&balloon3_nand); -} -#else -static inline void balloon3_nand_init(void) {} -#endif - -/****************************************************************************** - * Core power regulator - ******************************************************************************/ -#if defined(CONFIG_REGULATOR_MAX1586) || \ - defined(CONFIG_REGULATOR_MAX1586_MODULE) -static struct regulator_consumer_supply balloon3_max1587a_consumers[] = { - { - .supply = "vcc_core", - } -}; +static unsigned long balloon3_pin_config[] __initdata = { + /* Select BTUART 'COM1/ttyS0' as IO option for pins 42/43/44/45 */ + GPIO42_BTUART_RXD, + GPIO43_BTUART_TXD, + GPIO44_BTUART_CTS, + GPIO45_BTUART_RTS, -static struct regulator_init_data balloon3_max1587a_v3_info = { - .constraints = { - .name = "vcc_core range", - .min_uV = 900000, - .max_uV = 1705000, - .always_on = 1, - .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE, - }, - .consumer_supplies = balloon3_max1587a_consumers, - .num_consumer_supplies = ARRAY_SIZE(balloon3_max1587a_consumers), + /* Wakeup GPIO */ + GPIO1_GPIO | WAKEUP_ON_EDGE_BOTH, + + /* NAND & IDLE LED GPIOs */ + GPIO9_GPIO, + GPIO10_GPIO, }; -static struct max1586_subdev_data balloon3_max1587a_subdevs[] = { +static struct gpio_led balloon3_gpio_leds[] = { { - .name = "vcc_core", - .id = MAX1586_V3, - .platform_data = &balloon3_max1587a_v3_info, - } + .name = "balloon3:green:idle", + .default_trigger = "heartbeat", + .gpio = BALLOON3_GPIO_LED_IDLE, + .active_low = 1, + }, + { + .name = "balloon3:green:nand", + .default_trigger = "nand-disk", + .gpio = BALLOON3_GPIO_LED_NAND, + .active_low = 1, + }, }; -static struct max1586_platform_data balloon3_max1587a_info = { - .subdevs = balloon3_max1587a_subdevs, - .num_subdevs = ARRAY_SIZE(balloon3_max1587a_subdevs), - .v3_gain = MAX1586_GAIN_R24_3k32, /* 730..1550 mV */ +static struct gpio_led_platform_data balloon3_gpio_leds_platform_data = { + .leds = balloon3_gpio_leds, + .num_leds = ARRAY_SIZE(balloon3_gpio_leds), }; -static struct i2c_board_info __initdata balloon3_pi2c_board_info[] = { - { - I2C_BOARD_INFO("max1586", 0x14), - .platform_data = &balloon3_max1587a_info, +static struct platform_device balloon3led_device = { + .name = "leds-gpio", + .id = -1, + .dev = { + .platform_data = &balloon3_gpio_leds_platform_data, }, }; -static void __init balloon3_pmic_init(void) -{ - pxa27x_set_i2c_power_info(NULL); - i2c_register_board_info(1, ARRAY_AND_SIZE(balloon3_pi2c_board_info)); -} -#else -static inline void balloon3_pmic_init(void) {} -#endif - -/****************************************************************************** - * Machine init - ******************************************************************************/ static void __init balloon3_init(void) { - ARB_CNTRL = ARB_CORE_PARK | 0x234; + pr_info("Initialising Balloon3\n"); - pxa2xx_mfp_config(ARRAY_AND_SIZE(balloon3_pin_config)); + /* system bus arbiter setting + * - Core_Park + * - LCD_wt:DMA_wt:CORE_Wt = 2:3:4 + */ + ARB_CNTRL = ARB_CORE_PARK | 0x234; pxa_set_ffuart_info(NULL); pxa_set_btuart_info(NULL); pxa_set_stuart_info(NULL); - balloon3_i2c_init(); - balloon3_irda_init(); - balloon3_lcd_init(); - balloon3_leds_init(); - balloon3_mmc_init(); - balloon3_nand_init(); - balloon3_nor_init(); - balloon3_pmic_init(); - balloon3_ts_init(); - balloon3_udc_init(); - balloon3_uhc_init(); + pxa_set_i2c_info(NULL); + if (balloon3_has(BALLOON3_FEATURE_AUDIO)) { + pxa2xx_mfp_config(ARRAY_AND_SIZE(balloon3_ac97_pin_config)); + pxa_set_ac97_info(NULL); + } + + if (balloon3_has(BALLOON3_FEATURE_TOPPOLY)) { + pxa2xx_mfp_config(ARRAY_AND_SIZE(balloon3_lcd_pin_config)); + gpio_request(BALLOON3_GPIO_RUN_BACKLIGHT, + "LCD Backlight Power"); + gpio_direction_output(BALLOON3_GPIO_RUN_BACKLIGHT, 1); + set_pxa_fb_info(&balloon3_pxafb_info); + } + + if (balloon3_has(BALLOON3_FEATURE_MMC)) { + pxa2xx_mfp_config(ARRAY_AND_SIZE(balloon3_mmc_pin_config)); + pxa_set_mci_info(&balloon3_mci_platform_data); + } + pxa_set_ficp_info(&balloon3_ficp_platform_data); + if (balloon3_has(BALLOON3_FEATURE_OHCI)) { + pxa2xx_mfp_config(ARRAY_AND_SIZE(balloon3_ohci_pin_config)); + pxa_set_ohci_info(&balloon3_ohci_platform_data); + } + pxa_set_udc_info(&balloon3_udc_info); + + pxa2xx_mfp_config(ARRAY_AND_SIZE(balloon3_pin_config)); + + platform_device_register(&balloon3led_device); } static struct map_desc balloon3_io_desc[] __initdata = { diff --git a/trunk/arch/arm/mach-pxa/cm-x300.c b/trunk/arch/arm/mach-pxa/cm-x300.c index c70e6c2f4e7c..fdda6be6c391 100644 --- a/trunk/arch/arm/mach-pxa/cm-x300.c +++ b/trunk/arch/arm/mach-pxa/cm-x300.c @@ -689,7 +689,6 @@ static void __init cm_x300_init_da9030(void) { pxa3xx_set_i2c_power_info(&cm_x300_pwr_i2c_info); i2c_register_board_info(1, &cm_x300_pmic_info, 1); - set_irq_wake(IRQ_WAKEUP0, 1); } static void __init cm_x300_init_wi2wi(void) @@ -746,10 +745,9 @@ static void __init cm_x300_init(void) { cm_x300_init_mfp(); + pxa_set_ffuart_info(NULL); pxa_set_btuart_info(NULL); pxa_set_stuart_info(NULL); - if (cpu_is_pxa300()) - pxa_set_ffuart_info(NULL); cm_x300_init_da9030(); cm_x300_init_dm9000(); diff --git a/trunk/arch/arm/mach-pxa/colibri-pxa270-evalboard.c b/trunk/arch/arm/mach-pxa/colibri-pxa270-evalboard.c deleted file mode 100644 index 0f3b632c3b14..000000000000 --- a/trunk/arch/arm/mach-pxa/colibri-pxa270-evalboard.c +++ /dev/null @@ -1,111 +0,0 @@ -/* - * linux/arch/arm/mach-pxa/colibri-pxa270-evalboard.c - * - * Support for Toradex PXA270 based Colibri Evaluation Carrier Board - * Daniel Mack - * Marek Vasut - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#include "generic.h" -#include "devices.h" - -/****************************************************************************** - * Pin configuration - ******************************************************************************/ -static mfp_cfg_t colibri_pxa270_evalboard_pin_config[] __initdata = { - /* MMC */ - GPIO32_MMC_CLK, - GPIO92_MMC_DAT_0, - GPIO109_MMC_DAT_1, - GPIO110_MMC_DAT_2, - GPIO111_MMC_DAT_3, - GPIO112_MMC_CMD, - GPIO0_GPIO, /* SD detect */ - - /* FFUART */ - GPIO39_FFUART_TXD, - GPIO34_FFUART_RXD, - - /* UHC */ - GPIO88_USBH1_PWR, - GPIO89_USBH1_PEN, - GPIO119_USBH2_PWR, - GPIO120_USBH2_PEN, -}; - -/****************************************************************************** - * SD/MMC card controller - ******************************************************************************/ -#if defined(CONFIG_MMC_PXA) || defined(CONFIG_MMC_PXA_MODULE) -static struct pxamci_platform_data colibri_pxa270_mci_platform_data = { - .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34, - .gpio_power = -1, - .gpio_card_detect = GPIO0_COLIBRI_PXA270_SD_DETECT, - .gpio_card_ro = -1, - .detect_delay_ms = 200, -}; - -static void __init colibri_pxa270_mmc_init(void) -{ - pxa_set_mci_info(&colibri_pxa270_mci_platform_data); -} -#else -static inline void colibri_pxa270_mmc_init(void) {} -#endif - -/****************************************************************************** - * USB Host - ******************************************************************************/ -#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) -static int colibri_pxa270_ohci_init(struct device *dev) -{ - UP2OCR = UP2OCR_HXS | UP2OCR_HXOE | UP2OCR_DPPDE | UP2OCR_DMPDE; - return 0; -} - -static struct pxaohci_platform_data colibri_pxa270_ohci_info = { - .port_mode = PMM_PERPORT_MODE, - .flags = ENABLE_PORT1 | ENABLE_PORT2 | - POWER_CONTROL_LOW | POWER_SENSE_LOW, - .init = colibri_pxa270_ohci_init, -}; - -static void __init colibri_pxa270_uhc_init(void) -{ - pxa_set_ohci_info(&colibri_pxa270_ohci_info); -} -#else -static inline void colibri_pxa270_uhc_init(void) {} -#endif - -void __init colibri_pxa270_evalboard_init(void) -{ - pxa2xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa270_evalboard_pin_config)); - pxa_set_ffuart_info(NULL); - pxa_set_btuart_info(NULL); - pxa_set_stuart_info(NULL); - - colibri_pxa270_mmc_init(); - colibri_pxa270_uhc_init(); -} - diff --git a/trunk/arch/arm/mach-pxa/colibri-pxa270-income.c b/trunk/arch/arm/mach-pxa/colibri-pxa270-income.c deleted file mode 100644 index 37f0f3ed7c61..000000000000 --- a/trunk/arch/arm/mach-pxa/colibri-pxa270-income.c +++ /dev/null @@ -1,272 +0,0 @@ -/* - * linux/arch/arm/mach-pxa/income.c - * - * Support for Income s.r.o. SH-Dmaster PXA270 SBC - * - * Copyright (C) 2010 - * Marek Vasut - * Pavel Revak - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include -#include -#include -#include -#include -#include - -#include - -#include "devices.h" -#include "generic.h" - -#define GPIO114_INCOME_ETH_IRQ (114) -#define GPIO0_INCOME_SD_DETECT (0) -#define GPIO0_INCOME_SD_RO (1) -#define GPIO54_INCOME_LED_A (54) -#define GPIO55_INCOME_LED_B (55) -#define GPIO113_INCOME_TS_IRQ (113) - -/****************************************************************************** - * Pin configuration - ******************************************************************************/ -static mfp_cfg_t income_pin_config[] __initdata = { - /* MMC */ - GPIO32_MMC_CLK, - GPIO92_MMC_DAT_0, - GPIO109_MMC_DAT_1, - GPIO110_MMC_DAT_2, - GPIO111_MMC_DAT_3, - GPIO112_MMC_CMD, - GPIO0_GPIO, /* SD detect */ - GPIO1_GPIO, /* SD read-only */ - - /* FFUART */ - GPIO39_FFUART_TXD, - GPIO34_FFUART_RXD, - - /* BFUART */ - GPIO42_BTUART_RXD, - GPIO43_BTUART_TXD, - GPIO45_BTUART_RTS, - - /* STUART */ - GPIO46_STUART_RXD, - GPIO47_STUART_TXD, - - /* UHC */ - GPIO88_USBH1_PWR, - GPIO89_USBH1_PEN, - - /* LCD */ - GPIOxx_LCD_TFT_16BPP, - - /* PWM */ - GPIO16_PWM0_OUT, - - /* I2C */ - GPIO117_I2C_SCL, - GPIO118_I2C_SDA, - - /* LED */ - GPIO54_GPIO, /* LED A */ - GPIO55_GPIO, /* LED B */ -}; - -/****************************************************************************** - * SD/MMC card controller - ******************************************************************************/ -#if defined(CONFIG_MMC_PXA) || defined(CONFIG_MMC_PXA_MODULE) -static struct pxamci_platform_data income_mci_platform_data = { - .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34, - .gpio_power = -1, - .gpio_card_detect = GPIO0_INCOME_SD_DETECT, - .gpio_card_ro = GPIO0_INCOME_SD_RO, - .detect_delay_ms = 200, -}; - -static void __init income_mmc_init(void) -{ - pxa_set_mci_info(&income_mci_platform_data); -} -#else -static inline void income_mmc_init(void) {} -#endif - -/****************************************************************************** - * USB Host - ******************************************************************************/ -#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) -static struct pxaohci_platform_data income_ohci_info = { - .port_mode = PMM_PERPORT_MODE, - .flags = ENABLE_PORT1 | POWER_CONTROL_LOW | POWER_SENSE_LOW, -}; - -static void __init income_uhc_init(void) -{ - pxa_set_ohci_info(&income_ohci_info); -} -#else -static inline void income_uhc_init(void) {} -#endif - -/****************************************************************************** - * LED - ******************************************************************************/ -#if defined(CONFIG_LEDS_GPIO) || defined(CONFIG_LEDS_GPIO_MODULE) -struct gpio_led income_gpio_leds[] = { - { - .name = "income:green:leda", - .default_trigger = "none", - .gpio = GPIO54_INCOME_LED_A, - .active_low = 1, - }, - { - .name = "income:green:ledb", - .default_trigger = "none", - .gpio = GPIO55_INCOME_LED_B, - .active_low = 1, - } -}; - -static struct gpio_led_platform_data income_gpio_led_info = { - .leds = income_gpio_leds, - .num_leds = ARRAY_SIZE(income_gpio_leds), -}; - -static struct platform_device income_leds = { - .name = "leds-gpio", - .id = -1, - .dev = { - .platform_data = &income_gpio_led_info, - } -}; - -static void __init income_led_init(void) -{ - platform_device_register(&income_leds); -} -#else -static inline void income_led_init(void) {} -#endif - -/****************************************************************************** - * I2C - ******************************************************************************/ -#if defined(CONFIG_I2C_PXA) || defined(CONFIG_I2C_PXA_MODULE) -static struct i2c_board_info __initdata income_i2c_devs[] = { - { - I2C_BOARD_INFO("ds1340", 0x68), - }, { - I2C_BOARD_INFO("lm75", 0x4f), - }, -}; - -static void __init income_i2c_init(void) -{ - pxa_set_i2c_info(NULL); - pxa27x_set_i2c_power_info(NULL); - i2c_register_board_info(0, ARRAY_AND_SIZE(income_i2c_devs)); -} -#else -static inline void income_i2c_init(void) {} -#endif - -/****************************************************************************** - * Framebuffer - ******************************************************************************/ -#if defined(CONFIG_FB_PXA) || defined(CONFIG_FB_PXA_MODULE) -static struct pxafb_mode_info income_lcd_modes[] = { -{ - .pixclock = 144700, - .xres = 320, - .yres = 240, - .bpp = 32, - .depth = 18, - - .left_margin = 10, - .right_margin = 10, - .upper_margin = 7, - .lower_margin = 8, - - .hsync_len = 20, - .vsync_len = 2, - - .sync = FB_SYNC_VERT_HIGH_ACT, -}, -}; - -static struct pxafb_mach_info income_lcd_screen = { - .modes = income_lcd_modes, - .num_modes = ARRAY_SIZE(income_lcd_modes), - .lcd_conn = LCD_COLOR_TFT_18BPP | LCD_PCLK_EDGE_FALL, -}; - -static void __init income_lcd_init(void) -{ - set_pxa_fb_info(&income_lcd_screen); -} -#else -static inline void income_lcd_init(void) {} -#endif - -/****************************************************************************** - * Backlight - ******************************************************************************/ -#if defined(CONFIG_BACKLIGHT_PWM) || defined(CONFIG_BACKLIGHT_PWM__MODULE) -static struct platform_pwm_backlight_data income_backlight_data = { - .pwm_id = 0, - .max_brightness = 0x3ff, - .dft_brightness = 0x1ff, - .pwm_period_ns = 1000000, -}; - -static struct platform_device income_backlight = { - .name = "pwm-backlight", - .dev = { - .parent = &pxa27x_device_pwm0.dev, - .platform_data = &income_backlight_data, - }, -}; - -static void __init income_pwm_init(void) -{ - platform_device_register(&income_backlight); -} -#else -static inline void income_pwm_init(void) {} -#endif - -void __init colibri_pxa270_income_boardinit(void) -{ - pxa2xx_mfp_config(ARRAY_AND_SIZE(income_pin_config)); - pxa_set_ffuart_info(NULL); - pxa_set_btuart_info(NULL); - pxa_set_stuart_info(NULL); - - income_mmc_init(); - income_uhc_init(); - income_led_init(); - income_i2c_init(); - income_lcd_init(); - income_pwm_init(); -} - diff --git a/trunk/arch/arm/mach-pxa/colibri-pxa270.c b/trunk/arch/arm/mach-pxa/colibri-pxa270.c index 98673ac6efd0..061c45316de8 100644 --- a/trunk/arch/arm/mach-pxa/colibri-pxa270.c +++ b/trunk/arch/arm/mach-pxa/colibri-pxa270.c @@ -3,7 +3,6 @@ * * Support for Toradex PXA270 based Colibri module * Daniel Mack - * Marek Vasut * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -11,55 +10,49 @@ */ #include -#include #include +#include +#include +#include +#include +#include +#include #include #include #include -#include -#include -#include - -#include -#include +#include #include +#include +#include #include +#include +#include +#include +#include -#include -#include #include +#include -#include "devices.h" #include "generic.h" +#include "devices.h" -/****************************************************************************** - * Pin configuration - ******************************************************************************/ +/* + * GPIO configuration + */ static mfp_cfg_t colibri_pxa270_pin_config[] __initdata = { - /* Ethernet */ GPIO78_nCS_2, /* Ethernet CS */ GPIO114_GPIO, /* Ethernet IRQ */ - - /* AC97 */ - GPIO28_AC97_BITCLK, - GPIO29_AC97_SDATA_IN_0, - GPIO30_AC97_SDATA_OUT, - GPIO31_AC97_SYNC, - GPIO95_AC97_nRESET, - GPIO98_AC97_SYSCLK, - GPIO113_GPIO, /* Touchscreen IRQ */ }; -/****************************************************************************** - * NOR Flash - ******************************************************************************/ -#if defined(CONFIG_MTD_PHYSMAP) || defined(CONFIG_MTD_PHYSMAP_MODULE) +/* + * NOR flash + */ static struct mtd_partition colibri_partitions[] = { { .name = "Bootloader", .offset = 0x00000000, .size = 0x00040000, - .mask_flags = MTD_WRITEABLE /* force read-only */ + .mask_flags = MTD_WRITEABLE /* force read-only */ }, { .name = "Kernel", .offset = 0x00040000, @@ -97,113 +90,50 @@ static struct platform_device colibri_pxa270_flash_device = { .num_resources = 1, }; -static void __init colibri_pxa270_nor_init(void) -{ - platform_device_register(&colibri_pxa270_flash_device); -} -#else -static inline void colibri_pxa270_nor_init(void) {} -#endif - -/****************************************************************************** - * Ethernet - ******************************************************************************/ -#if defined(CONFIG_DM9000) || defined(CONFIG_DM9000_MODULE) -static struct resource colibri_pxa270_dm9000_resources[] = { - { - .start = PXA_CS2_PHYS, - .end = PXA_CS2_PHYS + 3, +/* + * DM9000 Ethernet + */ +#if defined(CONFIG_DM9000) +static struct resource dm9000_resources[] = { + [0] = { + .start = COLIBRI_PXA270_ETH_PHYS, + .end = COLIBRI_PXA270_ETH_PHYS + 3, .flags = IORESOURCE_MEM, }, - { - .start = PXA_CS2_PHYS + 4, - .end = PXA_CS2_PHYS + 4 + 500, + [1] = { + .start = COLIBRI_PXA270_ETH_PHYS + 4, + .end = COLIBRI_PXA270_ETH_PHYS + 4 + 500, .flags = IORESOURCE_MEM, }, - { - .start = gpio_to_irq(GPIO114_COLIBRI_PXA270_ETH_IRQ), - .end = gpio_to_irq(GPIO114_COLIBRI_PXA270_ETH_IRQ), + [2] = { + .start = COLIBRI_PXA270_ETH_IRQ, + .end = COLIBRI_PXA270_ETH_IRQ, .flags = IORESOURCE_IRQ | IRQF_TRIGGER_RISING, }, }; -static struct platform_device colibri_pxa270_dm9000_device = { +static struct platform_device dm9000_device = { .name = "dm9000", .id = -1, - .num_resources = ARRAY_SIZE(colibri_pxa270_dm9000_resources), - .resource = colibri_pxa270_dm9000_resources, + .num_resources = ARRAY_SIZE(dm9000_resources), + .resource = dm9000_resources, }; +#endif /* CONFIG_DM9000 */ -static void __init colibri_pxa270_eth_init(void) -{ - platform_device_register(&colibri_pxa270_dm9000_device); -} -#else -static inline void colibri_pxa270_eth_init(void) {} +static struct platform_device *colibri_pxa270_devices[] __initdata = { + &colibri_pxa270_flash_device, +#if defined(CONFIG_DM9000) + &dm9000_device, #endif - -/****************************************************************************** - * Audio and Touchscreen - ******************************************************************************/ -#if defined(CONFIG_TOUCHSCREEN_UCB1400) || \ - defined(CONFIG_TOUCHSCREEN_UCB1400_MODULE) -static pxa2xx_audio_ops_t colibri_pxa270_ac97_pdata = { - .reset_gpio = 95, -}; - -static struct ucb1400_pdata colibri_pxa270_ucb1400_pdata = { - .irq = gpio_to_irq(GPIO113_COLIBRI_PXA270_TS_IRQ), -}; - -static struct platform_device colibri_pxa270_ucb1400_device = { - .name = "ucb1400_core", - .id = -1, - .dev = { - .platform_data = &colibri_pxa270_ucb1400_pdata, - }, }; -static void __init colibri_pxa270_tsc_init(void) -{ - pxa_set_ac97_info(&colibri_pxa270_ac97_pdata); - platform_device_register(&colibri_pxa270_ucb1400_device); -} -#else -static inline void colibri_pxa270_tsc_init(void) {} -#endif - -static int colibri_pxa270_baseboard; -core_param(colibri_pxa270_baseboard, colibri_pxa270_baseboard, int, 0444); - static void __init colibri_pxa270_init(void) { pxa2xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa270_pin_config)); - - colibri_pxa270_nor_init(); - colibri_pxa270_eth_init(); - colibri_pxa270_tsc_init(); - - switch (colibri_pxa270_baseboard) { - case COLIBRI_PXA270_EVALBOARD: - colibri_pxa270_evalboard_init(); - break; - case COLIBRI_PXA270_INCOME: - colibri_pxa270_income_boardinit(); - break; - default: - printk(KERN_ERR "Illegal colibri_pxa270_baseboard type %d\n", - colibri_pxa270_baseboard); - } -} - -/* The "Income s.r.o. SH-Dmaster PXA270 SBC" board can be booted either - * with the INCOME mach type or with COLIBRI and the kernel parameter - * "colibri_pxa270_baseboard=1" - */ -static void __init colibri_pxa270_income_init(void) -{ - colibri_pxa270_baseboard = COLIBRI_PXA270_INCOME; - colibri_pxa270_init(); + pxa_set_ffuart_info(NULL); + pxa_set_btuart_info(NULL); + pxa_set_stuart_info(NULL); + platform_add_devices(ARRAY_AND_SIZE(colibri_pxa270_devices)); } MACHINE_START(COLIBRI, "Toradex Colibri PXA270") @@ -216,13 +146,3 @@ MACHINE_START(COLIBRI, "Toradex Colibri PXA270") .timer = &pxa_timer, MACHINE_END -MACHINE_START(INCOME, "Income s.r.o. SH-Dmaster PXA270 SBC") - .phys_io = 0x40000000, - .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc, - .boot_params = 0xa0000100, - .init_machine = colibri_pxa270_income_init, - .map_io = pxa_map_io, - .init_irq = pxa27x_init_irq, - .timer = &pxa_timer, -MACHINE_END - diff --git a/trunk/arch/arm/mach-pxa/colibri-pxa320.c b/trunk/arch/arm/mach-pxa/colibri-pxa320.c index 99e850d84710..ae835fad7d10 100644 --- a/trunk/arch/arm/mach-pxa/colibri-pxa320.c +++ b/trunk/arch/arm/mach-pxa/colibri-pxa320.c @@ -16,7 +16,6 @@ #include #include #include -#include #include #include @@ -29,8 +28,6 @@ #include #include #include -#include -#include #include "generic.h" #include "devices.h" @@ -104,42 +101,6 @@ void __init colibri_pxa320_init_ohci(void) static inline void colibri_pxa320_init_ohci(void) {} #endif /* CONFIG_USB_OHCI_HCD || CONFIG_USB_OHCI_HCD_MODULE */ -#if defined(CONFIG_USB_GADGET_PXA27X)||defined(CONFIG_USB_GADGET_PXA27X_MODULE) -static struct gpio_vbus_mach_info colibri_pxa320_gpio_vbus_info = { - .gpio_vbus = mfp_to_gpio(MFP_PIN_GPIO96), - .gpio_pullup = -1, -}; - -static struct platform_device colibri_pxa320_gpio_vbus = { - .name = "gpio-vbus", - .id = -1, - .dev = { - .platform_data = &colibri_pxa320_gpio_vbus_info, - }, -}; - -static void colibri_pxa320_udc_command(int cmd) -{ - if (cmd == PXA2XX_UDC_CMD_CONNECT) - UP2OCR = UP2OCR_HXOE | UP2OCR_DPPUE; - else if (cmd == PXA2XX_UDC_CMD_DISCONNECT) - UP2OCR = UP2OCR_HXOE; -} - -static struct pxa2xx_udc_mach_info colibri_pxa320_udc_info __initdata = { - .udc_command = colibri_pxa320_udc_command, - .gpio_pullup = -1, -}; - -static void __init colibri_pxa320_init_udc(void) -{ - pxa_set_udc_info(&colibri_pxa320_udc_info); - platform_device_register(&colibri_pxa320_gpio_vbus); -} -#else -static inline void colibri_pxa320_init_udc(void) {} -#endif - static mfp_cfg_t colibri_pxa320_mmc_pin_config[] __initdata = { GPIO22_MMC1_CLK, GPIO23_MMC1_CMD, @@ -251,7 +212,6 @@ void __init colibri_pxa320_init(void) colibri_pxa3xx_init_mmc(ARRAY_AND_SIZE(colibri_pxa320_mmc_pin_config), mfp_to_gpio(MFP_PIN_GPIO28)); colibri_pxa320_init_uart(); - colibri_pxa320_init_udc(); } MACHINE_START(COLIBRI320, "Toradex Colibri PXA320") diff --git a/trunk/arch/arm/mach-pxa/corgi.c b/trunk/arch/arm/mach-pxa/corgi.c index 3fb0fc099080..461ba4080155 100644 --- a/trunk/arch/arm/mach-pxa/corgi.c +++ b/trunk/arch/arm/mach-pxa/corgi.c @@ -50,13 +50,14 @@ #include #include #include -#include +#include #include #include #include "generic.h" #include "devices.h" +#include "sharpsl.h" static unsigned long corgi_pin_config[] __initdata = { /* Static Memory I/O */ @@ -184,6 +185,8 @@ static struct scoop_pcmcia_config corgi_pcmcia_config = { .num_devs = 1, }; +EXPORT_SYMBOL(corgiscoop_device); + static struct w100_mem_info corgi_fb_mem = { .ext_cntl = 0x00040003, .sdram_mode_reg = 0x00650021, diff --git a/trunk/arch/arm/mach-pxa/corgi_pm.c b/trunk/arch/arm/mach-pxa/corgi_pm.c index 29034778bfda..3f1dc74ac048 100644 --- a/trunk/arch/arm/mach-pxa/corgi_pm.c +++ b/trunk/arch/arm/mach-pxa/corgi_pm.c @@ -23,11 +23,12 @@ #include #include +#include #include #include -#include #include "generic.h" +#include "sharpsl.h" #define SHARPSL_CHARGE_ON_VOLT 0x99 /* 2.9V */ #define SHARPSL_CHARGE_ON_TEMP 0xe0 /* 2.9V */ @@ -133,11 +134,11 @@ unsigned long corgipm_read_devdata(int type) case SHARPSL_STATUS_ACIN: return ((GPLR(CORGI_GPIO_AC_IN) & GPIO_bit(CORGI_GPIO_AC_IN)) != 0); case SHARPSL_STATUS_LOCK: - return gpio_get_value(sharpsl_pm.machinfo->gpio_batlock); + return READ_GPIO_BIT(sharpsl_pm.machinfo->gpio_batlock); case SHARPSL_STATUS_CHRGFULL: - return gpio_get_value(sharpsl_pm.machinfo->gpio_batfull); + return READ_GPIO_BIT(sharpsl_pm.machinfo->gpio_batfull); case SHARPSL_STATUS_FATAL: - return gpio_get_value(sharpsl_pm.machinfo->gpio_fatal); + return READ_GPIO_BIT(sharpsl_pm.machinfo->gpio_fatal); case SHARPSL_ACIN_VOLT: return sharpsl_pm_pxa_read_max1111(MAX1111_ACIN_VOLT); case SHARPSL_BATT_TEMP: @@ -164,6 +165,8 @@ static struct sharpsl_charger_machinfo corgi_pm_machinfo = { .should_wakeup = corgi_should_wakeup, #if defined(CONFIG_LCD_CORGI) .backlight_limit = corgi_lcd_limit_intensity, +#elif defined(CONFIG_BACKLIGHT_CORGI) + .backlight_limit = corgibl_limit_intensity, #endif .charge_on_volt = SHARPSL_CHARGE_ON_VOLT, .charge_on_temp = SHARPSL_CHARGE_ON_TEMP, diff --git a/trunk/arch/arm/mach-pxa/devices.c b/trunk/arch/arm/mach-pxa/devices.c index 65447dc736c2..8e10db148f1b 100644 --- a/trunk/arch/arm/mach-pxa/devices.c +++ b/trunk/arch/arm/mach-pxa/devices.c @@ -4,7 +4,6 @@ #include #include -#include #include #include #include @@ -32,19 +31,6 @@ void __init pxa_register_device(struct platform_device *dev, void *data) dev_err(&dev->dev, "unable to register device: %d\n", ret); } -static struct resource pxa_resource_pmu = { - .start = IRQ_PMU, - .end = IRQ_PMU, - .flags = IORESOURCE_IRQ, -}; - -struct platform_device pxa_device_pmu = { - .name = "arm-pmu", - .id = ARM_PMU_DEVICE_CPU, - .resource = &pxa_resource_pmu, - .num_resources = 1, -}; - static struct resource pxamci_resources[] = { [0] = { .start = 0x41100000, diff --git a/trunk/arch/arm/mach-pxa/devices.h b/trunk/arch/arm/mach-pxa/devices.h index 50353ea49ba4..93817d99761e 100644 --- a/trunk/arch/arm/mach-pxa/devices.h +++ b/trunk/arch/arm/mach-pxa/devices.h @@ -1,4 +1,3 @@ -extern struct platform_device pxa_device_pmu; extern struct platform_device pxa_device_mci; extern struct platform_device pxa3xx_device_mci2; extern struct platform_device pxa3xx_device_mci3; diff --git a/trunk/arch/arm/mach-pxa/e330.c b/trunk/arch/arm/mach-pxa/e330.c new file mode 100644 index 000000000000..8fde3387279d --- /dev/null +++ b/trunk/arch/arm/mach-pxa/e330.c @@ -0,0 +1,78 @@ +/* + * Hardware definitions for the Toshiba e330 PDAs + * + * Copyright (c) 2003 Ian Molton + * + * This file is licensed under + * the terms of the GNU General Public License version 2. This program + * is licensed "as is" without any warranty of any kind, whether express + * or implied. + * + */ + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include + +#include "generic.h" +#include "eseries.h" +#include "clock.h" + +/* -------------------- e330 tc6387xb parameters -------------------- */ + +static struct tc6387xb_platform_data e330_tc6387xb_info = { + .enable = &eseries_tmio_enable, + .disable = &eseries_tmio_disable, + .suspend = &eseries_tmio_suspend, + .resume = &eseries_tmio_resume, +}; + +static struct platform_device e330_tc6387xb_device = { + .name = "tc6387xb", + .id = -1, + .dev = { + .platform_data = &e330_tc6387xb_info, + }, + .num_resources = 2, + .resource = eseries_tmio_resources, +}; + +/* --------------------------------------------------------------- */ + +static struct platform_device *devices[] __initdata = { + &e330_tc6387xb_device, +}; + +static void __init e330_init(void) +{ + pxa_set_ffuart_info(NULL); + pxa_set_btuart_info(NULL); + pxa_set_stuart_info(NULL); + eseries_register_clks(); + eseries_get_tmio_gpios(); + platform_add_devices(devices, ARRAY_SIZE(devices)); + pxa_set_udc_info(&e7xx_udc_mach_info); +} + +MACHINE_START(E330, "Toshiba e330") + /* Maintainer: Ian Molton (spyro@f2s.com) */ + .phys_io = 0x40000000, + .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc, + .boot_params = 0xa0000100, + .map_io = pxa_map_io, + .init_irq = pxa25x_init_irq, + .fixup = eseries_fixup, + .init_machine = e330_init, + .timer = &pxa_timer, +MACHINE_END + diff --git a/trunk/arch/arm/mach-pxa/e350.c b/trunk/arch/arm/mach-pxa/e350.c new file mode 100644 index 000000000000..f50f055f5720 --- /dev/null +++ b/trunk/arch/arm/mach-pxa/e350.c @@ -0,0 +1,79 @@ +/* + * Hardware definitions for the Toshiba e350 PDAs + * + * Copyright (c) 2003 Ian Molton + * + * This file is licensed under + * the terms of the GNU General Public License version 2. This program + * is licensed "as is" without any warranty of any kind, whether express + * or implied. + * + */ + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include + +#include "generic.h" +#include "eseries.h" +#include "clock.h" + +/* -------------------- e350 t7l66xb parameters -------------------- */ + +static struct t7l66xb_platform_data e350_t7l66xb_info = { + .irq_base = IRQ_BOARD_START, + .enable = &eseries_tmio_enable, + .suspend = &eseries_tmio_suspend, + .resume = &eseries_tmio_resume, +}; + +static struct platform_device e350_t7l66xb_device = { + .name = "t7l66xb", + .id = -1, + .dev = { + .platform_data = &e350_t7l66xb_info, + }, + .num_resources = 2, + .resource = eseries_tmio_resources, +}; + +/* ---------------------------------------------------------- */ + +static struct platform_device *devices[] __initdata = { + &e350_t7l66xb_device, +}; + +static void __init e350_init(void) +{ + pxa_set_ffuart_info(NULL); + pxa_set_btuart_info(NULL); + pxa_set_stuart_info(NULL); + eseries_register_clks(); + eseries_get_tmio_gpios(); + platform_add_devices(devices, ARRAY_SIZE(devices)); + pxa_set_udc_info(&e7xx_udc_mach_info); +} + +MACHINE_START(E350, "Toshiba e350") + /* Maintainer: Ian Molton (spyro@f2s.com) */ + .phys_io = 0x40000000, + .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc, + .boot_params = 0xa0000100, + .map_io = pxa_map_io, + .init_irq = pxa25x_init_irq, + .fixup = eseries_fixup, + .init_machine = e350_init, + .timer = &pxa_timer, +MACHINE_END + diff --git a/trunk/arch/arm/mach-pxa/e400.c b/trunk/arch/arm/mach-pxa/e400.c new file mode 100644 index 000000000000..55b950f12844 --- /dev/null +++ b/trunk/arch/arm/mach-pxa/e400.c @@ -0,0 +1,155 @@ +/* + * Hardware definitions for the Toshiba eseries PDAs + * + * Copyright (c) 2003 Ian Molton + * + * This file is licensed under + * the terms of the GNU General Public License version 2. This program + * is licensed "as is" without any warranty of any kind, whether express + * or implied. + * + */ + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include + +#include "generic.h" +#include "eseries.h" +#include "clock.h" + +/* ------------------------ E400 LCD definitions ------------------------ */ + +static struct pxafb_mode_info e400_pxafb_mode_info = { + .pixclock = 140703, + .xres = 240, + .yres = 320, + .bpp = 16, + .hsync_len = 4, + .left_margin = 28, + .right_margin = 8, + .vsync_len = 3, + .upper_margin = 5, + .lower_margin = 6, + .sync = 0, +}; + +static struct pxafb_mach_info e400_pxafb_mach_info = { + .modes = &e400_pxafb_mode_info, + .num_modes = 1, + .lcd_conn = LCD_COLOR_TFT_16BPP, + .lccr3 = 0, + .pxafb_backlight_power = NULL, +}; + +/* ------------------------ E400 MFP config ----------------------------- */ + +static unsigned long e400_pin_config[] __initdata = { + /* Chip selects */ + GPIO15_nCS_1, /* CS1 - Flash */ + GPIO80_nCS_4, /* CS4 - TMIO */ + + /* Clocks */ + GPIO12_32KHz, + + /* BTUART */ + GPIO42_BTUART_RXD, + GPIO43_BTUART_TXD, + GPIO44_BTUART_CTS, + + /* TMIO controller */ + GPIO19_GPIO, /* t7l66xb #PCLR */ + GPIO45_GPIO, /* t7l66xb #SUSPEND (NOT BTUART!) */ + + /* wakeup */ + GPIO0_GPIO | WAKEUP_ON_EDGE_RISE, +}; + +/* ---------------------------------------------------------------------- */ + +static struct mtd_partition partition_a = { + .name = "Internal NAND flash", + .offset = 0, + .size = MTDPART_SIZ_FULL, +}; + +static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; + +static struct nand_bbt_descr e400_t7l66xb_nand_bbt = { + .options = 0, + .offs = 4, + .len = 2, + .pattern = scan_ff_pattern +}; + +static struct tmio_nand_data e400_t7l66xb_nand_config = { + .num_partitions = 1, + .partition = &partition_a, + .badblock_pattern = &e400_t7l66xb_nand_bbt, +}; + +static struct t7l66xb_platform_data e400_t7l66xb_info = { + .irq_base = IRQ_BOARD_START, + .enable = &eseries_tmio_enable, + .suspend = &eseries_tmio_suspend, + .resume = &eseries_tmio_resume, + + .nand_data = &e400_t7l66xb_nand_config, +}; + +static struct platform_device e400_t7l66xb_device = { + .name = "t7l66xb", + .id = -1, + .dev = { + .platform_data = &e400_t7l66xb_info, + }, + .num_resources = 2, + .resource = eseries_tmio_resources, +}; + +/* ---------------------------------------------------------- */ + +static struct platform_device *devices[] __initdata = { + &e400_t7l66xb_device, +}; + +static void __init e400_init(void) +{ + pxa2xx_mfp_config(ARRAY_AND_SIZE(e400_pin_config)); + pxa_set_ffuart_info(NULL); + pxa_set_btuart_info(NULL); + pxa_set_stuart_info(NULL); + /* Fixme - e400 may have a switched clock */ + eseries_register_clks(); + eseries_get_tmio_gpios(); + set_pxa_fb_info(&e400_pxafb_mach_info); + platform_add_devices(devices, ARRAY_SIZE(devices)); + pxa_set_udc_info(&e7xx_udc_mach_info); +} + +MACHINE_START(E400, "Toshiba e400") + /* Maintainer: Ian Molton (spyro@f2s.com) */ + .phys_io = 0x40000000, + .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc, + .boot_params = 0xa0000100, + .map_io = pxa_map_io, + .init_irq = pxa25x_init_irq, + .fixup = eseries_fixup, + .init_machine = e400_init, + .timer = &pxa_timer, +MACHINE_END + diff --git a/trunk/arch/arm/mach-pxa/e740.c b/trunk/arch/arm/mach-pxa/e740.c new file mode 100644 index 000000000000..d578021d1a10 --- /dev/null +++ b/trunk/arch/arm/mach-pxa/e740.c @@ -0,0 +1,225 @@ +/* + * Hardware definitions for the Toshiba eseries PDAs + * + * Copyright (c) 2003 Ian Molton + * + * This file is licensed under + * the terms of the GNU General Public License version 2. This program + * is licensed "as is" without any warranty of any kind, whether express + * or implied. + * + */ + +#include +#include +#include +#include +#include +#include +#include + +#include