aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2018-02-01 19:17:40 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2018-02-01 19:17:40 -0500
commitadbc128fa8b4e9ecfdd11d5dd0a7d9845c6ea510 (patch)
tree55137f446ffd127530fdcbe86dafdfb436fe1c20
parent537433b6241e067de2d9da3bed5f4fed9c9eac58 (diff)
parent0ca14cdea789f70c4dc7ef5844aad52cb9675aee (diff)
Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC platform updates from Arnd Bergmann: "These are mostly minor bugfixes, cleanup and many defconfig updates to support added drivers. In particular OMAP and PXA keep cleaning up the legacy code base, as usual. Nvidia adds some more SoC support code for Tegra 186. For the first time on years, we are actually adding a non-DT platform for the EP93xx based Liebherr controller BK3.1. It's a minor variation of the EP93xx reference design and in active use, while EP93xx apparently doesn't have enough new development to have any device tree support" * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (73 commits) ARM: omap: hwmod: fix section mismatch warnings ARM: pxa/tosa-bt: add MODULE_LICENSE tag arm64: defconfig: enable CONFIG_ACPI_APEI_EINJ arm64: defconfig: enable EDAC GHES option arm64: defconfig: enable CONFIG_ACPI_APEI_MEMORY_FAILURE ARM: imx_v6_v7_defconfig: enable CONFIG_CPU_FREQ_STAT Wind down ARM/TANGO port ARM: davinci: constify gpio_led ARM: davinci: drop unneeded newline soc: Add SoC driver for Gemini ARM: SAMSUNG: Add SPDX license identifiers ARM: S5PV210: Add SPDX license identifiers ARM: S3C64XX: Add SPDX license identifiers ARM: S3C24XX: Add SPDX license identifiers ARM: EXYNOS: Add SPDX license identifiers ARM: imx: remove unused imx3 pm definitions ARM: imx: don't abort MMDC probe if power saving status doesn't match ARM: imx_v6_v7_defconfig: enable RTC_DRV_MXC_V2 ARM: imx_v6_v7_defconfig: Add missing config for DART-MX6 SoM ARM: davinci: Use PTR_ERR_OR_ZERO() ...
-rw-r--r--MAINTAINERS74
-rw-r--r--arch/arm/configs/davinci_all_defconfig1
-rw-r--r--arch/arm/configs/exynos_defconfig7
-rw-r--r--arch/arm/configs/imx_v6_v7_defconfig8
-rw-r--r--arch/arm/configs/keystone_defconfig7
-rw-r--r--arch/arm/configs/multi_v7_defconfig12
-rw-r--r--arch/arm/configs/omap2plus_defconfig19
-rw-r--r--arch/arm/configs/qcom_defconfig3
-rw-r--r--arch/arm/configs/shmobile_defconfig2
-rw-r--r--arch/arm/mach-davinci/board-da850-evm.c4
-rw-r--r--arch/arm/mach-davinci/board-neuros-osd2.c2
-rw-r--r--arch/arm/mach-davinci/common.c2
-rw-r--r--arch/arm/mach-davinci/da830.c2
-rw-r--r--arch/arm/mach-davinci/da850.c2
-rw-r--r--arch/arm/mach-davinci/devices-da8xx.c4
-rw-r--r--arch/arm/mach-davinci/dm355.c2
-rw-r--r--arch/arm/mach-davinci/dm365.c2
-rw-r--r--arch/arm/mach-davinci/dm644x.c2
-rw-r--r--arch/arm/mach-davinci/dm646x.c4
-rw-r--r--arch/arm/mach-davinci/include/mach/common.h2
-rw-r--r--arch/arm/mach-ep93xx/Kconfig7
-rw-r--r--arch/arm/mach-ep93xx/ts72xx.c165
-rw-r--r--arch/arm/mach-ep93xx/ts72xx.h9
-rw-r--r--arch/arm/mach-exynos/Kconfig4
-rw-r--r--arch/arm/mach-exynos/Makefile4
-rw-r--r--arch/arm/mach-exynos/common.h5
-rw-r--r--arch/arm/mach-exynos/exynos-smc.S5
-rw-r--r--arch/arm/mach-exynos/exynos.c16
-rw-r--r--arch/arm/mach-exynos/firmware.c14
-rw-r--r--arch/arm/mach-exynos/headsmp.S6
-rw-r--r--arch/arm/mach-exynos/include/mach/map.h7
-rw-r--r--arch/arm/mach-exynos/mcpm-exynos.c17
-rw-r--r--arch/arm/mach-exynos/platsmp.c21
-rw-r--r--arch/arm/mach-exynos/pm.c24
-rw-r--r--arch/arm/mach-exynos/sleep.S11
-rw-r--r--arch/arm/mach-exynos/smc.h5
-rw-r--r--arch/arm/mach-exynos/suspend.c24
-rw-r--r--arch/arm/mach-imx/common.h9
-rw-r--r--arch/arm/mach-imx/mmdc.c11
-rw-r--r--arch/arm/mach-mediatek/Kconfig2
-rw-r--r--arch/arm/mach-mmp/mmp2.h2
-rw-r--r--arch/arm/mach-mmp/pxa168.h2
-rw-r--r--arch/arm/mach-mmp/pxa910.h2
-rw-r--r--arch/arm/mach-omap2/cm-regbits-24xx.h81
-rw-r--r--arch/arm/mach-omap2/cm-regbits-34xx.h162
-rw-r--r--arch/arm/mach-omap2/id.c17
-rw-r--r--arch/arm/mach-omap2/omap_hwmod.c4
-rw-r--r--arch/arm/mach-omap2/omap_hwmod.h6
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2420_data.c14
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2430_data.c28
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c64
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_3xxx_data.c131
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_7xx_data.c27
-rw-r--r--arch/arm/mach-omap2/soc.h16
-rw-r--r--arch/arm/mach-pxa/Kconfig1
-rw-r--r--arch/arm/mach-pxa/balloon3.c2
-rw-r--r--arch/arm/mach-pxa/cm-x300.c2
-rw-r--r--arch/arm/mach-pxa/colibri-evalboard.c2
-rw-r--r--arch/arm/mach-pxa/colibri-pxa270-income.c2
-rw-r--r--arch/arm/mach-pxa/corgi.c33
-rw-r--r--arch/arm/mach-pxa/csb726.c2
-rw-r--r--arch/arm/mach-pxa/devices.c2
-rw-r--r--arch/arm/mach-pxa/devices.h9
-rw-r--r--arch/arm/mach-pxa/em-x270.c2
-rw-r--r--arch/arm/mach-pxa/ezx.c2
-rw-r--r--arch/arm/mach-pxa/hx4700.c2
-rw-r--r--arch/arm/mach-pxa/littleton.c3
-rw-r--r--arch/arm/mach-pxa/lubbock.c24
-rw-r--r--arch/arm/mach-pxa/magician.c2
-rw-r--r--arch/arm/mach-pxa/mainstone.c2
-rw-r--r--arch/arm/mach-pxa/mioa701.c2
-rw-r--r--arch/arm/mach-pxa/mxm8x10.c2
-rw-r--r--arch/arm/mach-pxa/palm27x.c2
-rw-r--r--arch/arm/mach-pxa/pcm990-baseboard.c2
-rw-r--r--arch/arm/mach-pxa/poodle.c30
-rw-r--r--arch/arm/mach-pxa/pxa27x.c2
-rw-r--r--arch/arm/mach-pxa/pxa3xx.c2
-rw-r--r--arch/arm/mach-pxa/raumfeld.c2
-rw-r--r--arch/arm/mach-pxa/saar.c2
-rw-r--r--arch/arm/mach-pxa/spitz.c36
-rw-r--r--arch/arm/mach-pxa/stargate2.c2
-rw-r--r--arch/arm/mach-pxa/tosa-bt.c4
-rw-r--r--arch/arm/mach-pxa/tosa.c30
-rw-r--r--arch/arm/mach-pxa/trizeps4.c2
-rw-r--r--arch/arm/mach-pxa/viper.c2
-rw-r--r--arch/arm/mach-pxa/vpac270.c2
-rw-r--r--arch/arm/mach-pxa/xcep.c3
-rw-r--r--arch/arm/mach-pxa/z2.c2
-rw-r--r--arch/arm/mach-pxa/zeus.c3
-rw-r--r--arch/arm/mach-pxa/zylonite_pxa300.c3
-rw-r--r--arch/arm/mach-s3c24xx/Kconfig4
-rw-r--r--arch/arm/mach-s3c24xx/Makefile4
-rw-r--r--arch/arm/mach-s3c24xx/Makefile.boot2
-rw-r--r--arch/arm/mach-s3c24xx/anubis.h7
-rw-r--r--arch/arm/mach-s3c24xx/bast-ide.c17
-rw-r--r--arch/arm/mach-s3c24xx/bast-irq.c28
-rw-r--r--arch/arm/mach-s3c24xx/bast.h7
-rw-r--r--arch/arm/mach-s3c24xx/common-smdk.c21
-rw-r--r--arch/arm/mach-s3c24xx/common-smdk.h7
-rw-r--r--arch/arm/mach-s3c24xx/common.c29
-rw-r--r--arch/arm/mach-s3c24xx/common.h5
-rw-r--r--arch/arm/mach-s3c24xx/cpufreq-utils.c18
-rw-r--r--arch/arm/mach-s3c24xx/fb-core.h5
-rw-r--r--arch/arm/mach-s3c24xx/gta02.h7
-rw-r--r--arch/arm/mach-s3c24xx/h1940-bluetooth.c16
-rw-r--r--arch/arm/mach-s3c24xx/h1940.h7
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/dma.h10
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/fb.h1
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/gpio-samsung.h7
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/hardware.h7
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/irqs.h10
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/map.h10
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/pm-core.h9
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/regs-clock.h10
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/regs-gpio.h10
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/regs-irq.h10
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/regs-lcd.h11
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/regs-s3c2443-clock.h10
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/rtc-core.h7
-rw-r--r--arch/arm/mach-s3c24xx/include/mach/s3c2412.h5
-rw-r--r--arch/arm/mach-s3c24xx/iotiming-s3c2410.c18
-rw-r--r--arch/arm/mach-s3c24xx/iotiming-s3c2412.c18
-rw-r--r--arch/arm/mach-s3c24xx/irq-pm.c19
-rw-r--r--arch/arm/mach-s3c24xx/mach-amlm5900.c35
-rw-r--r--arch/arm/mach-s3c24xx/mach-anubis.c15
-rw-r--r--arch/arm/mach-s3c24xx/mach-at2440evb.c21
-rw-r--r--arch/arm/mach-s3c24xx/mach-bast.c17
-rw-r--r--arch/arm/mach-s3c24xx/mach-gta02.c33
-rw-r--r--arch/arm/mach-s3c24xx/mach-h1940.c17
-rw-r--r--arch/arm/mach-s3c24xx/mach-jive.c17
-rw-r--r--arch/arm/mach-s3c24xx/mach-mini2440.c23
-rw-r--r--arch/arm/mach-s3c24xx/mach-n30.c27
-rw-r--r--arch/arm/mach-s3c24xx/mach-nexcoder.c22
-rw-r--r--arch/arm/mach-s3c24xx/mach-osiris-dvs.c19
-rw-r--r--arch/arm/mach-s3c24xx/mach-osiris.c14
-rw-r--r--arch/arm/mach-s3c24xx/mach-otom.c13
-rw-r--r--arch/arm/mach-s3c24xx/mach-qt2410.c27
-rw-r--r--arch/arm/mach-s3c24xx/mach-rx1950.c17
-rw-r--r--arch/arm/mach-s3c24xx/mach-rx3715.c18
-rw-r--r--arch/arm/mach-s3c24xx/mach-s3c2416-dt.c28
-rw-r--r--arch/arm/mach-s3c24xx/mach-smdk2410.c39
-rw-r--r--arch/arm/mach-s3c24xx/mach-smdk2413.c19
-rw-r--r--arch/arm/mach-s3c24xx/mach-smdk2416.c18
-rw-r--r--arch/arm/mach-s3c24xx/mach-smdk2440.c23
-rw-r--r--arch/arm/mach-s3c24xx/mach-smdk2443.c22
-rw-r--r--arch/arm/mach-s3c24xx/mach-tct_hammer.c33
-rw-r--r--arch/arm/mach-s3c24xx/mach-vr1000.c19
-rw-r--r--arch/arm/mach-s3c24xx/mach-vstms.c15
-rw-r--r--arch/arm/mach-s3c24xx/nand-core.h7
-rw-r--r--arch/arm/mach-s3c24xx/osiris.h7
-rw-r--r--arch/arm/mach-s3c24xx/otom.h7
-rw-r--r--arch/arm/mach-s3c24xx/pll-s3c2410.c30
-rw-r--r--arch/arm/mach-s3c24xx/pll-s3c2440-12000000.c20
-rw-r--r--arch/arm/mach-s3c24xx/pll-s3c2440-16934400.c20
-rw-r--r--arch/arm/mach-s3c24xx/pm-h1940.S19
-rw-r--r--arch/arm/mach-s3c24xx/pm-s3c2410.c27
-rw-r--r--arch/arm/mach-s3c24xx/pm-s3c2412.c17
-rw-r--r--arch/arm/mach-s3c24xx/pm-s3c2416.c17
-rw-r--r--arch/arm/mach-s3c24xx/pm.c39
-rw-r--r--arch/arm/mach-s3c24xx/regs-dsc.h7
-rw-r--r--arch/arm/mach-s3c24xx/regs-mem.h5
-rw-r--r--arch/arm/mach-s3c24xx/s3c2410.c17
-rw-r--r--arch/arm/mach-s3c24xx/s3c2412-power.h5
-rw-r--r--arch/arm/mach-s3c24xx/s3c2412.c16
-rw-r--r--arch/arm/mach-s3c24xx/s3c2416.c31
-rw-r--r--arch/arm/mach-s3c24xx/s3c2440.c17
-rw-r--r--arch/arm/mach-s3c24xx/s3c2442.c29
-rw-r--r--arch/arm/mach-s3c24xx/s3c2443.c17
-rw-r--r--arch/arm/mach-s3c24xx/s3c244x.c17
-rw-r--r--arch/arm/mach-s3c24xx/setup-camif.c14
-rw-r--r--arch/arm/mach-s3c24xx/setup-i2c.c17
-rw-r--r--arch/arm/mach-s3c24xx/setup-sdhci-gpio.c21
-rw-r--r--arch/arm/mach-s3c24xx/setup-spi.c16
-rw-r--r--arch/arm/mach-s3c24xx/setup-ts.c17
-rw-r--r--arch/arm/mach-s3c24xx/simtec-audio.c19
-rw-r--r--arch/arm/mach-s3c24xx/simtec-nor.c19
-rw-r--r--arch/arm/mach-s3c24xx/simtec-pm.c21
-rw-r--r--arch/arm/mach-s3c24xx/simtec-usb.c21
-rw-r--r--arch/arm/mach-s3c24xx/simtec.h10
-rw-r--r--arch/arm/mach-s3c24xx/sleep-s3c2410.S20
-rw-r--r--arch/arm/mach-s3c24xx/sleep-s3c2412.S20
-rw-r--r--arch/arm/mach-s3c24xx/sleep.S20
-rw-r--r--arch/arm/mach-s3c24xx/spi-core.h5
-rw-r--r--arch/arm/mach-s3c24xx/vr1000.h11
-rw-r--r--arch/arm/mach-s3c64xx/Kconfig5
-rw-r--r--arch/arm/mach-s3c64xx/Makefile4
-rw-r--r--arch/arm/mach-s3c64xx/ata-core.h7
-rw-r--r--arch/arm/mach-s3c64xx/backlight.h5
-rw-r--r--arch/arm/mach-s3c64xx/common.c26
-rw-r--r--arch/arm/mach-s3c64xx/common.h5
-rw-r--r--arch/arm/mach-s3c64xx/cpuidle.c15
-rw-r--r--arch/arm/mach-s3c64xx/crag6410.h5
-rw-r--r--arch/arm/mach-s3c64xx/dev-audio.c13
-rw-r--r--arch/arm/mach-s3c64xx/dev-backlight.c16
-rw-r--r--arch/arm/mach-s3c64xx/dev-uart.c22
-rw-r--r--arch/arm/mach-s3c64xx/include/mach/gpio-samsung.h7
-rw-r--r--arch/arm/mach-s3c64xx/include/mach/hardware.h1
-rw-r--r--arch/arm/mach-s3c64xx/include/mach/map.h10
-rw-r--r--arch/arm/mach-s3c64xx/include/mach/pm-core.h8
-rw-r--r--arch/arm/mach-s3c64xx/include/mach/regs-clock.h10
-rw-r--r--arch/arm/mach-s3c64xx/include/mach/regs-irq.h10
-rw-r--r--arch/arm/mach-s3c64xx/irq-pm.c21
-rw-r--r--arch/arm/mach-s3c64xx/irq-uart.h7
-rw-r--r--arch/arm/mach-s3c64xx/mach-anw6410.c22
-rw-r--r--arch/arm/mach-s3c64xx/mach-crag6410-module.c15
-rw-r--r--arch/arm/mach-s3c64xx/mach-crag6410.c19
-rw-r--r--arch/arm/mach-s3c64xx/mach-hmt.c14
-rw-r--r--arch/arm/mach-s3c64xx/mach-mini6410.c20
-rw-r--r--arch/arm/mach-s3c64xx/mach-ncp.c13
-rw-r--r--arch/arm/mach-s3c64xx/mach-real6410.c20
-rw-r--r--arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c14
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq.c13
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq.h6
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq5.c13
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq7.c13
-rw-r--r--arch/arm/mach-s3c64xx/mach-smdk6400.c15
-rw-r--r--arch/arm/mach-s3c64xx/mach-smdk6410.c18
-rw-r--r--arch/arm/mach-s3c64xx/onenand-core.h7
-rw-r--r--arch/arm/mach-s3c64xx/pl080.c14
-rw-r--r--arch/arm/mach-s3c64xx/pm.c21
-rw-r--r--arch/arm/mach-s3c64xx/regs-modem.h7
-rw-r--r--arch/arm/mach-s3c64xx/regs-srom.h7
-rw-r--r--arch/arm/mach-s3c64xx/s3c6400.c15
-rw-r--r--arch/arm/mach-s3c64xx/s3c6410.c17
-rw-r--r--arch/arm/mach-s3c64xx/setup-fb-24bpp.c21
-rw-r--r--arch/arm/mach-s3c64xx/setup-i2c0.c21
-rw-r--r--arch/arm/mach-s3c64xx/setup-i2c1.c21
-rw-r--r--arch/arm/mach-s3c64xx/setup-ide.c17
-rw-r--r--arch/arm/mach-s3c64xx/setup-keypad.c17
-rw-r--r--arch/arm/mach-s3c64xx/setup-sdhci-gpio.c19
-rw-r--r--arch/arm/mach-s3c64xx/setup-spi.c13
-rw-r--r--arch/arm/mach-s3c64xx/setup-usb-phy.c14
-rw-r--r--arch/arm/mach-s3c64xx/sleep.S7
-rw-r--r--arch/arm/mach-s3c64xx/watchdog-reset.h7
-rw-r--r--arch/arm/mach-s5pv210/Kconfig4
-rw-r--r--arch/arm/mach-s5pv210/Makefile4
-rw-r--r--arch/arm/mach-s5pv210/common.h5
-rw-r--r--arch/arm/mach-s5pv210/pm.c25
-rw-r--r--arch/arm/mach-s5pv210/regs-clock.h7
-rw-r--r--arch/arm/mach-s5pv210/s5pv210.c18
-rw-r--r--arch/arm/mach-s5pv210/sleep.S6
-rw-r--r--arch/arm/plat-samsung/Kconfig4
-rw-r--r--arch/arm/plat-samsung/Makefile4
-rw-r--r--arch/arm/plat-samsung/adc.c19
-rw-r--r--arch/arm/plat-samsung/cpu.c17
-rw-r--r--arch/arm/plat-samsung/dev-uart.c21
-rw-r--r--arch/arm/plat-samsung/devs.c17
-rw-r--r--arch/arm/plat-samsung/gpio-samsung.c26
-rw-r--r--arch/arm/plat-samsung/include/plat/adc-core.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/adc.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/cpu-freq-core.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/cpu-freq.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/cpu.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/devs.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/fb-s3c2410.h8
-rw-r--r--arch/arm/plat-samsung/include/plat/fb.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/gpio-cfg-helpers.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/gpio-cfg.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/gpio-core.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/iic-core.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/keypad.h6
-rw-r--r--arch/arm/plat-samsung/include/plat/map-base.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/map-s3c.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/map-s5p.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/pm-common.h7
-rw-r--r--arch/arm/plat-samsung/include/plat/pm.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/pwm-core.h5
-rw-r--r--arch/arm/plat-samsung/include/plat/regs-adc.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/regs-irqtype.h8
-rw-r--r--arch/arm/plat-samsung/include/plat/regs-spi.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/regs-udc.h11
-rw-r--r--arch/arm/plat-samsung/include/plat/samsung-time.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/sdhci.h10
-rw-r--r--arch/arm/plat-samsung/include/plat/usb-phy.h6
-rw-r--r--arch/arm/plat-samsung/include/plat/wakeup-mask.h11
-rw-r--r--arch/arm/plat-samsung/init.c19
-rw-r--r--arch/arm/plat-samsung/platformdata.c15
-rw-r--r--arch/arm/plat-samsung/pm-check.c22
-rw-r--r--arch/arm/plat-samsung/pm-common.c24
-rw-r--r--arch/arm/plat-samsung/pm-debug.c24
-rw-r--r--arch/arm/plat-samsung/pm-gpio.c22
-rw-r--r--arch/arm/plat-samsung/pm.c21
-rw-r--r--arch/arm/plat-samsung/wakeup-mask.c15
-rw-r--r--arch/arm/plat-samsung/watchdog-reset.c21
-rw-r--r--arch/arm/tools/mach-types1
-rw-r--r--arch/arm64/configs/defconfig13
-rw-r--r--drivers/i2c/busses/i2c-pxa-pci.c2
-rw-r--r--drivers/i2c/busses/i2c-pxa.c2
-rw-r--r--drivers/soc/Makefile1
-rw-r--r--drivers/soc/gemini/Makefile2
-rw-r--r--drivers/soc/gemini/soc-gemini.c71
-rw-r--r--drivers/soc/mediatek/mtk-infracfg.c26
-rw-r--r--drivers/soc/mediatek/mtk-scpsys.c140
-rw-r--r--drivers/soc/renesas/rcar-sysc.c2
-rw-r--r--drivers/soc/renesas/renesas-soc.c3
-rw-r--r--drivers/soc/tegra/Kconfig5
-rw-r--r--drivers/soc/tegra/Makefile1
-rw-r--r--drivers/soc/tegra/fuse/fuse-tegra.c4
-rw-r--r--drivers/soc/tegra/fuse/fuse-tegra20.c13
-rw-r--r--drivers/soc/tegra/fuse/fuse-tegra30.c24
-rw-r--r--drivers/soc/tegra/fuse/fuse.h4
-rw-r--r--drivers/soc/tegra/fuse/tegra-apbmisc.c11
-rw-r--r--drivers/soc/tegra/pmc-tegra186.c169
-rw-r--r--drivers/soc/tegra/pmc.c304
-rw-r--r--include/linux/platform_data/i2c-pxa.h (renamed from include/linux/i2c/pxa-i2c.h)11
-rw-r--r--include/linux/soc/mediatek/infracfg.h7
-rw-r--r--include/soc/tegra/pmc.h12
307 files changed, 1947 insertions, 2989 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 17196003fe59..2bd08becdd16 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1278,6 +1278,12 @@ L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
1278S: Supported 1278S: Supported
1279F: drivers/net/ethernet/cavium/thunder/ 1279F: drivers/net/ethernet/cavium/thunder/
1280 1280
1281ARM/CIRRUS LOGIC BK3 MACHINE SUPPORT
1282M: Lukasz Majewski <lukma@denx.de>
1283L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
1284S: Maintained
1285F: arch/arm/mach-ep93xx/ts72xx.c
1286
1281ARM/CIRRUS LOGIC CLPS711X ARM ARCHITECTURE 1287ARM/CIRRUS LOGIC CLPS711X ARM ARCHITECTURE
1282M: Alexander Shiyan <shc_work@mail.ru> 1288M: Alexander Shiyan <shc_work@mail.ru>
1283L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) 1289L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@ -1662,14 +1668,38 @@ ARM/NEC MOBILEPRO 900/c MACHINE SUPPORT
1662M: Michael Petchkovsky <mkpetch@internode.on.net> 1668M: Michael Petchkovsky <mkpetch@internode.on.net>
1663S: Maintained 1669S: Maintained
1664 1670
1665ARM/NOMADIK ARCHITECTURE 1671ARM/NOMADIK/U300/Ux500 ARCHITECTURES
1666M: Alessandro Rubini <rubini@unipv.it>
1667M: Linus Walleij <linus.walleij@linaro.org> 1672M: Linus Walleij <linus.walleij@linaro.org>
1668L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) 1673L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
1669S: Maintained 1674S: Maintained
1670F: arch/arm/mach-nomadik/ 1675F: arch/arm/mach-nomadik/
1671F: drivers/pinctrl/nomadik/ 1676F: arch/arm/mach-u300/
1677F: arch/arm/mach-ux500/
1678F: arch/arm/boot/dts/ste-*
1679F: drivers/clk/clk-nomadik.c
1680F: drivers/clk/clk-u300.c
1681F: drivers/clocksource/clksrc-dbx500-prcmu.c
1682F: drivers/clocksource/timer-u300.c
1683F: drivers/dma/coh901318*
1684F: drivers/dma/ste_dma40*
1685F: drivers/hwspinlock/u8500_hsem.c
1672F: drivers/i2c/busses/i2c-nomadik.c 1686F: drivers/i2c/busses/i2c-nomadik.c
1687F: drivers/i2c/busses/i2c-stu300.c
1688F: drivers/mfd/ab3100*
1689F: drivers/mfd/ab8500*
1690F: drivers/mfd/abx500*
1691F: drivers/mfd/dbx500*
1692F: drivers/mfd/db8500*
1693F: drivers/pinctrl/nomadik/
1694F: drivers/pinctrl/pinctrl-coh901*
1695F: drivers/pinctrl/pinctrl-u300.c
1696F: drivers/rtc/rtc-ab3100.c
1697F: drivers/rtc/rtc-ab8500.c
1698F: drivers/rtc/rtc-coh901331.c
1699F: drivers/rtc/rtc-pl031.c
1700F: drivers/watchdog/coh901327_wdt.c
1701F: Documentation/devicetree/bindings/arm/ste-*
1702F: Documentation/devicetree/bindings/arm/ux500/
1673T: git git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git 1703T: git git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git
1674 1704
1675ARM/NUVOTON W90X900 ARM ARCHITECTURE 1705ARM/NUVOTON W90X900 ARM ARCHITECTURE
@@ -1983,9 +2013,10 @@ N: stm32
1983F: drivers/clocksource/armv7m_systick.c 2013F: drivers/clocksource/armv7m_systick.c
1984 2014
1985ARM/TANGO ARCHITECTURE 2015ARM/TANGO ARCHITECTURE
1986M: Marc Gonzalez <marc_gonzalez@sigmadesigns.com> 2016M: Marc Gonzalez <marc.w.gonzalez@free.fr>
2017M: Mans Rullgard <mans@mansr.com>
1987L: linux-arm-kernel@lists.infradead.org 2018L: linux-arm-kernel@lists.infradead.org
1988S: Maintained 2019S: Odd Fixes
1989N: tango 2020N: tango
1990 2021
1991ARM/TECHNOLOGIC SYSTEMS TS7250 MACHINE SUPPORT 2022ARM/TECHNOLOGIC SYSTEMS TS7250 MACHINE SUPPORT
@@ -2049,21 +2080,6 @@ M: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
2049M: Dirk Opfer <dirk@opfer-online.de> 2080M: Dirk Opfer <dirk@opfer-online.de>
2050S: Maintained 2081S: Maintained
2051 2082
2052ARM/U300 MACHINE SUPPORT
2053M: Linus Walleij <linus.walleij@linaro.org>
2054L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
2055S: Supported
2056F: arch/arm/mach-u300/
2057F: drivers/clocksource/timer-u300.c
2058F: drivers/i2c/busses/i2c-stu300.c
2059F: drivers/rtc/rtc-coh901331.c
2060F: drivers/watchdog/coh901327_wdt.c
2061F: drivers/dma/coh901318*
2062F: drivers/mfd/ab3100*
2063F: drivers/rtc/rtc-ab3100.c
2064F: drivers/rtc/rtc-coh901331.c
2065T: git git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson.git
2066
2067ARM/UNIPHIER ARCHITECTURE 2083ARM/UNIPHIER ARCHITECTURE
2068M: Masahiro Yamada <yamada.masahiro@socionext.com> 2084M: Masahiro Yamada <yamada.masahiro@socionext.com>
2069L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) 2085L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@ -2085,24 +2101,6 @@ F: drivers/reset/reset-uniphier.c
2085F: drivers/tty/serial/8250/8250_uniphier.c 2101F: drivers/tty/serial/8250/8250_uniphier.c
2086N: uniphier 2102N: uniphier
2087 2103
2088ARM/Ux500 ARM ARCHITECTURE
2089M: Linus Walleij <linus.walleij@linaro.org>
2090L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
2091S: Maintained
2092F: arch/arm/mach-ux500/
2093F: drivers/clocksource/clksrc-dbx500-prcmu.c
2094F: drivers/dma/ste_dma40*
2095F: drivers/hwspinlock/u8500_hsem.c
2096F: drivers/mfd/abx500*
2097F: drivers/mfd/ab8500*
2098F: drivers/mfd/dbx500*
2099F: drivers/mfd/db8500*
2100F: drivers/pinctrl/nomadik/pinctrl-ab*
2101F: drivers/pinctrl/nomadik/pinctrl-nomadik*
2102F: drivers/rtc/rtc-ab8500.c
2103F: drivers/rtc/rtc-pl031.c
2104T: git git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson.git
2105
2106ARM/Ux500 CLOCK FRAMEWORK SUPPORT 2104ARM/Ux500 CLOCK FRAMEWORK SUPPORT
2107M: Ulf Hansson <ulf.hansson@linaro.org> 2105M: Ulf Hansson <ulf.hansson@linaro.org>
2108L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) 2106L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
diff --git a/arch/arm/configs/davinci_all_defconfig b/arch/arm/configs/davinci_all_defconfig
index bd0cf22f9ceb..026154c1d55a 100644
--- a/arch/arm/configs/davinci_all_defconfig
+++ b/arch/arm/configs/davinci_all_defconfig
@@ -94,6 +94,7 @@ CONFIG_PPP=m
94CONFIG_PPP_DEFLATE=m 94CONFIG_PPP_DEFLATE=m
95CONFIG_PPP_ASYNC=m 95CONFIG_PPP_ASYNC=m
96CONFIG_PPP_SYNC_TTY=m 96CONFIG_PPP_SYNC_TTY=m
97CONFIG_USB_USBNET=m
97CONFIG_INPUT_EVDEV=m 98CONFIG_INPUT_EVDEV=m
98CONFIG_INPUT_EVBUG=m 99CONFIG_INPUT_EVBUG=m
99CONFIG_KEYBOARD_ATKBD=m 100CONFIG_KEYBOARD_ATKBD=m
diff --git a/arch/arm/configs/exynos_defconfig b/arch/arm/configs/exynos_defconfig
index f1d7834990ec..629189c62fd1 100644
--- a/arch/arm/configs/exynos_defconfig
+++ b/arch/arm/configs/exynos_defconfig
@@ -3,6 +3,7 @@ CONFIG_NO_HZ=y
3CONFIG_HIGH_RES_TIMERS=y 3CONFIG_HIGH_RES_TIMERS=y
4CONFIG_CGROUPS=y 4CONFIG_CGROUPS=y
5CONFIG_BLK_DEV_INITRD=y 5CONFIG_BLK_DEV_INITRD=y
6CONFIG_PERF_EVENTS=y
6CONFIG_MODULES=y 7CONFIG_MODULES=y
7CONFIG_MODULE_UNLOAD=y 8CONFIG_MODULE_UNLOAD=y
8CONFIG_PARTITION_ADVANCED=y 9CONFIG_PARTITION_ADVANCED=y
@@ -179,6 +180,7 @@ CONFIG_REGULATOR_TPS65090=y
179CONFIG_REGULATOR_WM8994=y 180CONFIG_REGULATOR_WM8994=y
180CONFIG_MEDIA_SUPPORT=m 181CONFIG_MEDIA_SUPPORT=m
181CONFIG_MEDIA_CAMERA_SUPPORT=y 182CONFIG_MEDIA_CAMERA_SUPPORT=y
183CONFIG_MEDIA_CEC_SUPPORT=y
182CONFIG_MEDIA_CONTROLLER=y 184CONFIG_MEDIA_CONTROLLER=y
183CONFIG_VIDEO_V4L2_SUBDEV_API=y 185CONFIG_VIDEO_V4L2_SUBDEV_API=y
184CONFIG_MEDIA_USB_SUPPORT=y 186CONFIG_MEDIA_USB_SUPPORT=y
@@ -195,6 +197,8 @@ CONFIG_VIDEO_SAMSUNG_S5P_MFC=m
195CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m 197CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
196CONFIG_V4L_TEST_DRIVERS=y 198CONFIG_V4L_TEST_DRIVERS=y
197CONFIG_VIDEO_VIVID=m 199CONFIG_VIDEO_VIVID=m
200CONFIG_CEC_PLATFORM_DRIVERS=y
201CONFIG_VIDEO_SAMSUNG_S5P_CEC=m
198CONFIG_DRM=y 202CONFIG_DRM=y
199CONFIG_DRM_EXYNOS=y 203CONFIG_DRM_EXYNOS=y
200CONFIG_DRM_EXYNOS_FIMD=y 204CONFIG_DRM_EXYNOS_FIMD=y
@@ -207,6 +211,7 @@ CONFIG_DRM_PANEL_SAMSUNG_LD9040=y
207CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=y 211CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=y
208CONFIG_DRM_NXP_PTN3460=y 212CONFIG_DRM_NXP_PTN3460=y
209CONFIG_DRM_PARADE_PS8622=y 213CONFIG_DRM_PARADE_PS8622=y
214CONFIG_DRM_SII9234=y
210CONFIG_LCD_CLASS_DEVICE=y 215CONFIG_LCD_CLASS_DEVICE=y
211CONFIG_LCD_PLATFORM=y 216CONFIG_LCD_PLATFORM=y
212CONFIG_BACKLIGHT_PWM=y 217CONFIG_BACKLIGHT_PWM=y
@@ -218,6 +223,7 @@ CONFIG_SND_SOC_SAMSUNG=y
218CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994=y 223CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994=y
219CONFIG_SND_SOC_SMDK_WM8994_PCM=y 224CONFIG_SND_SOC_SMDK_WM8994_PCM=y
220CONFIG_SND_SOC_SNOW=y 225CONFIG_SND_SOC_SNOW=y
226CONFIG_SND_SOC_ODROID=y
221CONFIG_SND_SIMPLE_CARD=y 227CONFIG_SND_SIMPLE_CARD=y
222CONFIG_USB=y 228CONFIG_USB=y
223CONFIG_USB_ANNOUNCE_NEW_DEVICES=y 229CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
@@ -281,6 +287,7 @@ CONFIG_DEVFREQ_GOV_POWERSAVE=y
281CONFIG_DEVFREQ_GOV_USERSPACE=y 287CONFIG_DEVFREQ_GOV_USERSPACE=y
282CONFIG_ARM_EXYNOS_BUS_DEVFREQ=y 288CONFIG_ARM_EXYNOS_BUS_DEVFREQ=y
283CONFIG_DEVFREQ_EVENT_EXYNOS_NOCP=y 289CONFIG_DEVFREQ_EVENT_EXYNOS_NOCP=y
290CONFIG_EXYNOS_IOMMU=y
284CONFIG_EXTCON=y 291CONFIG_EXTCON=y
285CONFIG_EXTCON_MAX14577=y 292CONFIG_EXTCON_MAX14577=y
286CONFIG_EXTCON_MAX77693=y 293CONFIG_EXTCON_MAX77693=y
diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
index 0d4494922561..4cb9829fccd1 100644
--- a/arch/arm/configs/imx_v6_v7_defconfig
+++ b/arch/arm/configs/imx_v6_v7_defconfig
@@ -55,6 +55,7 @@ CONFIG_FORCE_MAX_ZONEORDER=14
55CONFIG_CMDLINE="noinitrd console=ttymxc0,115200" 55CONFIG_CMDLINE="noinitrd console=ttymxc0,115200"
56CONFIG_KEXEC=y 56CONFIG_KEXEC=y
57CONFIG_CPU_FREQ=y 57CONFIG_CPU_FREQ=y
58CONFIG_CPU_FREQ_STAT=y
58CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y 59CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
59CONFIG_CPU_FREQ_GOV_POWERSAVE=y 60CONFIG_CPU_FREQ_GOV_POWERSAVE=y
60CONFIG_CPU_FREQ_GOV_USERSPACE=y 61CONFIG_CPU_FREQ_GOV_USERSPACE=y
@@ -80,6 +81,7 @@ CONFIG_CAN=y
80CONFIG_CAN_FLEXCAN=y 81CONFIG_CAN_FLEXCAN=y
81CONFIG_BT=y 82CONFIG_BT=y
82CONFIG_BT_HCIUART=y 83CONFIG_BT_HCIUART=y
84CONFIG_BT_HCIUART_SERDEV=y
83CONFIG_BT_HCIUART_H4=y 85CONFIG_BT_HCIUART_H4=y
84CONFIG_BT_HCIUART_LL=y 86CONFIG_BT_HCIUART_LL=y
85CONFIG_CFG80211=y 87CONFIG_CFG80211=y
@@ -155,6 +157,7 @@ CONFIG_USB_USBNET=y
155CONFIG_USB_NET_CDC_EEM=m 157CONFIG_USB_NET_CDC_EEM=m
156CONFIG_BRCMFMAC=m 158CONFIG_BRCMFMAC=m
157CONFIG_WL12XX=m 159CONFIG_WL12XX=m
160CONFIG_WL18XX=m
158CONFIG_WLCORE_SDIO=m 161CONFIG_WLCORE_SDIO=m
159# CONFIG_WILINK_PLATFORM_DATA is not set 162# CONFIG_WILINK_PLATFORM_DATA is not set
160CONFIG_INPUT_EVDEV=y 163CONFIG_INPUT_EVDEV=y
@@ -185,6 +188,8 @@ CONFIG_SERIAL_IMX=y
185CONFIG_SERIAL_IMX_CONSOLE=y 188CONFIG_SERIAL_IMX_CONSOLE=y
186CONFIG_SERIAL_FSL_LPUART=y 189CONFIG_SERIAL_FSL_LPUART=y
187CONFIG_SERIAL_FSL_LPUART_CONSOLE=y 190CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
191CONFIG_SERIAL_DEV_BUS=y
192CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
188# CONFIG_I2C_COMPAT is not set 193# CONFIG_I2C_COMPAT is not set
189CONFIG_I2C_CHARDEV=y 194CONFIG_I2C_CHARDEV=y
190CONFIG_I2C_MUX=y 195CONFIG_I2C_MUX=y
@@ -248,6 +253,7 @@ CONFIG_VIDEO_OV5640=m
248CONFIG_SOC_CAMERA_OV2640=y 253CONFIG_SOC_CAMERA_OV2640=y
249CONFIG_IMX_IPUV3_CORE=y 254CONFIG_IMX_IPUV3_CORE=y
250CONFIG_DRM=y 255CONFIG_DRM=y
256CONFIG_DRM_PANEL_LVDS=y
251CONFIG_DRM_PANEL_SIMPLE=y 257CONFIG_DRM_PANEL_SIMPLE=y
252CONFIG_DRM_DW_HDMI_AHB_AUDIO=m 258CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
253CONFIG_DRM_DW_HDMI_CEC=y 259CONFIG_DRM_DW_HDMI_CEC=y
@@ -340,6 +346,7 @@ CONFIG_LEDS_TRIGGER_ONESHOT=y
340CONFIG_LEDS_TRIGGER_HEARTBEAT=y 346CONFIG_LEDS_TRIGGER_HEARTBEAT=y
341CONFIG_LEDS_TRIGGER_BACKLIGHT=y 347CONFIG_LEDS_TRIGGER_BACKLIGHT=y
342CONFIG_LEDS_TRIGGER_GPIO=y 348CONFIG_LEDS_TRIGGER_GPIO=y
349CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
343CONFIG_RTC_CLASS=y 350CONFIG_RTC_CLASS=y
344CONFIG_RTC_INTF_DEV_UIE_EMUL=y 351CONFIG_RTC_INTF_DEV_UIE_EMUL=y
345CONFIG_RTC_DRV_DS1307=y 352CONFIG_RTC_DRV_DS1307=y
@@ -349,6 +356,7 @@ CONFIG_RTC_DRV_PCF8563=y
349CONFIG_RTC_DRV_M41T80=y 356CONFIG_RTC_DRV_M41T80=y
350CONFIG_RTC_DRV_MC13XXX=y 357CONFIG_RTC_DRV_MC13XXX=y
351CONFIG_RTC_DRV_MXC=y 358CONFIG_RTC_DRV_MXC=y
359CONFIG_RTC_DRV_MXC_V2=y
352CONFIG_RTC_DRV_SNVS=y 360CONFIG_RTC_DRV_SNVS=y
353CONFIG_DMADEVICES=y 361CONFIG_DMADEVICES=y
354CONFIG_FSL_EDMA=y 362CONFIG_FSL_EDMA=y
diff --git a/arch/arm/configs/keystone_defconfig b/arch/arm/configs/keystone_defconfig
index f710c192b33a..2536c231eea1 100644
--- a/arch/arm/configs/keystone_defconfig
+++ b/arch/arm/configs/keystone_defconfig
@@ -228,3 +228,10 @@ CONFIG_CRYPTO_DES=y
228CONFIG_CRYPTO_ANSI_CPRNG=y 228CONFIG_CRYPTO_ANSI_CPRNG=y
229CONFIG_CRYPTO_USER_API_HASH=y 229CONFIG_CRYPTO_USER_API_HASH=y
230CONFIG_CRYPTO_USER_API_SKCIPHER=y 230CONFIG_CRYPTO_USER_API_SKCIPHER=y
231CONFIG_SPI_CADENCE_QUADSPI=y
232CONFIG_INPUT_MISC=y
233CONFIG_INPUT_EVDEV=m
234CONFIG_INPUT_GPIO_DECODER=m
235CONFIG_GPIO_PCA953X=m
236CONFIG_LEDS_TRIGGER_ACTIVITY=y
237CONFIG_LEDS_TRIGGER_CPU=y
diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
index b659244902cd..da7387689b88 100644
--- a/arch/arm/configs/multi_v7_defconfig
+++ b/arch/arm/configs/multi_v7_defconfig
@@ -115,6 +115,8 @@ CONFIG_ARCH_ZYNQ=y
115CONFIG_TRUSTED_FOUNDATIONS=y 115CONFIG_TRUSTED_FOUNDATIONS=y
116CONFIG_PCI=y 116CONFIG_PCI=y
117CONFIG_PCI_HOST_GENERIC=y 117CONFIG_PCI_HOST_GENERIC=y
118CONFIG_PCI_DRA7XX=y
119CONFIG_PCI_DRA7XX_EP=y
118CONFIG_PCI_KEYSTONE=y 120CONFIG_PCI_KEYSTONE=y
119CONFIG_PCI_MSI=y 121CONFIG_PCI_MSI=y
120CONFIG_PCI_MVEBU=y 122CONFIG_PCI_MVEBU=y
@@ -122,6 +124,9 @@ CONFIG_PCI_TEGRA=y
122CONFIG_PCI_RCAR_GEN2=y 124CONFIG_PCI_RCAR_GEN2=y
123CONFIG_PCIE_RCAR=y 125CONFIG_PCIE_RCAR=y
124CONFIG_PCIEPORTBUS=y 126CONFIG_PCIEPORTBUS=y
127CONFIG_PCI_ENDPOINT=y
128CONFIG_PCI_ENDPOINT_CONFIGFS=y
129CONFIG_PCI_EPF_TEST=m
125CONFIG_SMP=y 130CONFIG_SMP=y
126CONFIG_NR_CPUS=16 131CONFIG_NR_CPUS=16
127CONFIG_HIGHPTE=y 132CONFIG_HIGHPTE=y
@@ -221,6 +226,7 @@ CONFIG_ATMEL_SSC=m
221CONFIG_QCOM_COINCELL=m 226CONFIG_QCOM_COINCELL=m
222CONFIG_APDS9802ALS=y 227CONFIG_APDS9802ALS=y
223CONFIG_ISL29003=y 228CONFIG_ISL29003=y
229CONFIG_PCI_ENDPOINT_TEST=m
224CONFIG_EEPROM_AT24=y 230CONFIG_EEPROM_AT24=y
225CONFIG_BLK_DEV_SD=y 231CONFIG_BLK_DEV_SD=y
226CONFIG_BLK_DEV_SR=y 232CONFIG_BLK_DEV_SR=y
@@ -556,6 +562,7 @@ CONFIG_REGULATOR_VEXPRESS=y
556CONFIG_REGULATOR_WM8994=m 562CONFIG_REGULATOR_WM8994=m
557CONFIG_MEDIA_SUPPORT=m 563CONFIG_MEDIA_SUPPORT=m
558CONFIG_MEDIA_CAMERA_SUPPORT=y 564CONFIG_MEDIA_CAMERA_SUPPORT=y
565CONFIG_MEDIA_CEC_SUPPORT=y
559CONFIG_MEDIA_CONTROLLER=y 566CONFIG_MEDIA_CONTROLLER=y
560CONFIG_VIDEO_V4L2_SUBDEV_API=y 567CONFIG_VIDEO_V4L2_SUBDEV_API=y
561CONFIG_MEDIA_USB_SUPPORT=y 568CONFIG_MEDIA_USB_SUPPORT=y
@@ -581,6 +588,8 @@ CONFIG_VIDEO_STI_DELTA=m
581CONFIG_VIDEO_RENESAS_JPU=m 588CONFIG_VIDEO_RENESAS_JPU=m
582CONFIG_VIDEO_RENESAS_VSP1=m 589CONFIG_VIDEO_RENESAS_VSP1=m
583CONFIG_V4L_TEST_DRIVERS=y 590CONFIG_V4L_TEST_DRIVERS=y
591CONFIG_CEC_PLATFORM_DRIVERS=y
592CONFIG_VIDEO_SAMSUNG_S5P_CEC=m
584# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set 593# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set
585CONFIG_VIDEO_ADV7180=m 594CONFIG_VIDEO_ADV7180=m
586CONFIG_VIDEO_ML86V7667=m 595CONFIG_VIDEO_ML86V7667=m
@@ -612,6 +621,7 @@ CONFIG_DRM_TEGRA=y
612CONFIG_DRM_PANEL_SAMSUNG_LD9040=m 621CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
613CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m 622CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m
614CONFIG_DRM_PANEL_SIMPLE=y 623CONFIG_DRM_PANEL_SIMPLE=y
624CONFIG_DRM_SII9234=m
615CONFIG_DRM_STI=m 625CONFIG_DRM_STI=m
616CONFIG_DRM_VC4=y 626CONFIG_DRM_VC4=y
617CONFIG_FB_ARMCLCD=y 627CONFIG_FB_ARMCLCD=y
@@ -650,6 +660,7 @@ CONFIG_SND_SOC_SAMSUNG=m
650CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994=m 660CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994=m
651CONFIG_SND_SOC_SMDK_WM8994_PCM=m 661CONFIG_SND_SOC_SMDK_WM8994_PCM=m
652CONFIG_SND_SOC_SNOW=m 662CONFIG_SND_SOC_SNOW=m
663CONFIG_SND_SOC_ODROID=m
653CONFIG_SND_SOC_SH4_FSI=m 664CONFIG_SND_SOC_SH4_FSI=m
654CONFIG_SND_SOC_RCAR=m 665CONFIG_SND_SOC_RCAR=m
655CONFIG_SND_SIMPLE_SCU_CARD=m 666CONFIG_SND_SIMPLE_SCU_CARD=m
@@ -878,6 +889,7 @@ CONFIG_PWM_ATMEL=m
878CONFIG_PWM_ATMEL_HLCDC_PWM=m 889CONFIG_PWM_ATMEL_HLCDC_PWM=m
879CONFIG_PWM_ATMEL_TCB=m 890CONFIG_PWM_ATMEL_TCB=m
880CONFIG_PWM_FSL_FTM=m 891CONFIG_PWM_FSL_FTM=m
892CONFIG_PWM_RCAR=m
881CONFIG_PWM_RENESAS_TPU=y 893CONFIG_PWM_RENESAS_TPU=y
882CONFIG_PWM_ROCKCHIP=m 894CONFIG_PWM_ROCKCHIP=m
883CONFIG_PWM_SAMSUNG=m 895CONFIG_PWM_SAMSUNG=m
diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
index 7b97200c1d64..2f145c4af93a 100644
--- a/arch/arm/configs/omap2plus_defconfig
+++ b/arch/arm/configs/omap2plus_defconfig
@@ -48,6 +48,13 @@ CONFIG_SOC_AM43XX=y
48CONFIG_SOC_DRA7XX=y 48CONFIG_SOC_DRA7XX=y
49CONFIG_ARM_THUMBEE=y 49CONFIG_ARM_THUMBEE=y
50CONFIG_ARM_ERRATA_411920=y 50CONFIG_ARM_ERRATA_411920=y
51CONFIG_PCI=y
52CONFIG_PCI_MSI=y
53CONFIG_PCI_DRA7XX=y
54CONFIG_PCI_DRA7XX_EP=y
55CONFIG_PCI_ENDPOINT=y
56CONFIG_PCI_ENDPOINT_CONFIGFS=y
57CONFIG_PCI_EPF_TEST=m
51CONFIG_SMP=y 58CONFIG_SMP=y
52CONFIG_NR_CPUS=2 59CONFIG_NR_CPUS=2
53CONFIG_CMA=y 60CONFIG_CMA=y
@@ -137,6 +144,7 @@ CONFIG_BLK_DEV_RAM=y
137CONFIG_BLK_DEV_RAM_SIZE=16384 144CONFIG_BLK_DEV_RAM_SIZE=16384
138CONFIG_SENSORS_TSL2550=m 145CONFIG_SENSORS_TSL2550=m
139CONFIG_SRAM=y 146CONFIG_SRAM=y
147CONFIG_PCI_ENDPOINT_TEST=m
140CONFIG_EEPROM_AT24=m 148CONFIG_EEPROM_AT24=m
141CONFIG_BLK_DEV_SD=y 149CONFIG_BLK_DEV_SD=y
142CONFIG_SCSI_SCAN_ASYNC=y 150CONFIG_SCSI_SCAN_ASYNC=y
@@ -468,6 +476,7 @@ CONFIG_PWM_TIECAP=m
468CONFIG_PWM_TIEHRPWM=m 476CONFIG_PWM_TIEHRPWM=m
469CONFIG_PWM_TWL=m 477CONFIG_PWM_TWL=m
470CONFIG_PWM_TWL_LED=m 478CONFIG_PWM_TWL_LED=m
479CONFIG_PHY_CPCAP_USB=m
471CONFIG_PHY_DM816X_USB=m 480CONFIG_PHY_DM816X_USB=m
472CONFIG_OMAP_USB2=m 481CONFIG_OMAP_USB2=m
473CONFIG_TI_PIPE3=y 482CONFIG_TI_PIPE3=y
@@ -516,3 +525,13 @@ CONFIG_LIBCRC32C=y
516CONFIG_FONTS=y 525CONFIG_FONTS=y
517CONFIG_FONT_8x8=y 526CONFIG_FONT_8x8=y
518CONFIG_FONT_8x16=y 527CONFIG_FONT_8x16=y
528CONFIG_KERNEL_MODE_NEON=y
529CONFIG_ARM_CRYPTO=y
530CONFIG_CRYPTO_SHA1_ARM=m
531CONFIG_CRYPTO_SHA1_ARM_NEON=m
532CONFIG_CRYPTO_SHA256_ARM=m
533CONFIG_CRYPTO_SHA512_ARM=m
534CONFIG_CRYPTO_AES_ARM=m
535CONFIG_CRYPTO_AES_ARM_BS=m
536CONFIG_CRYPTO_CHACHA20_NEON=m
537CONFIG_CRYPTO_GHASH_ARM_CE=m
diff --git a/arch/arm/configs/qcom_defconfig b/arch/arm/configs/qcom_defconfig
index c784d04e2ab7..dd2a089f939f 100644
--- a/arch/arm/configs/qcom_defconfig
+++ b/arch/arm/configs/qcom_defconfig
@@ -136,7 +136,9 @@ CONFIG_REGULATOR_QCOM_RPM=y
136CONFIG_REGULATOR_QCOM_SMD_RPM=y 136CONFIG_REGULATOR_QCOM_SMD_RPM=y
137CONFIG_REGULATOR_QCOM_SPMI=y 137CONFIG_REGULATOR_QCOM_SPMI=y
138CONFIG_MEDIA_SUPPORT=y 138CONFIG_MEDIA_SUPPORT=y
139CONFIG_DRM=y
139CONFIG_FB=y 140CONFIG_FB=y
141CONFIG_FRAMEBUFFER_CONSOLE=y
140CONFIG_BACKLIGHT_LCD_SUPPORT=y 142CONFIG_BACKLIGHT_LCD_SUPPORT=y
141# CONFIG_LCD_CLASS_DEVICE is not set 143# CONFIG_LCD_CLASS_DEVICE is not set
142CONFIG_BACKLIGHT_CLASS_DEVICE=y 144CONFIG_BACKLIGHT_CLASS_DEVICE=y
@@ -200,6 +202,7 @@ CONFIG_MSM_LCC_8960=y
200CONFIG_MDM_LCC_9615=y 202CONFIG_MDM_LCC_9615=y
201CONFIG_MSM_MMCC_8960=y 203CONFIG_MSM_MMCC_8960=y
202CONFIG_MSM_MMCC_8974=y 204CONFIG_MSM_MMCC_8974=y
205CONFIG_MSM_IOMMU=y
203CONFIG_HWSPINLOCK=y 206CONFIG_HWSPINLOCK=y
204CONFIG_HWSPINLOCK_QCOM=y 207CONFIG_HWSPINLOCK_QCOM=y
205CONFIG_REMOTEPROC=y 208CONFIG_REMOTEPROC=y
diff --git a/arch/arm/configs/shmobile_defconfig b/arch/arm/configs/shmobile_defconfig
index 7b4fc0143148..578434cfd1a0 100644
--- a/arch/arm/configs/shmobile_defconfig
+++ b/arch/arm/configs/shmobile_defconfig
@@ -173,6 +173,7 @@ CONFIG_SND_SOC=y
173CONFIG_SND_SOC_SH4_FSI=y 173CONFIG_SND_SOC_SH4_FSI=y
174CONFIG_SND_SOC_RCAR=y 174CONFIG_SND_SOC_RCAR=y
175CONFIG_SND_SOC_AK4642=y 175CONFIG_SND_SOC_AK4642=y
176CONFIG_SND_SOC_SGTL5000=y
176CONFIG_SND_SOC_WM8978=y 177CONFIG_SND_SOC_WM8978=y
177CONFIG_SND_SIMPLE_SCU_CARD=y 178CONFIG_SND_SIMPLE_SCU_CARD=y
178CONFIG_USB=y 179CONFIG_USB=y
@@ -207,6 +208,7 @@ CONFIG_STAGING_BOARD=y
207CONFIG_IIO=y 208CONFIG_IIO=y
208CONFIG_AK8975=y 209CONFIG_AK8975=y
209CONFIG_PWM=y 210CONFIG_PWM=y
211CONFIG_PWM_RCAR=y
210CONFIG_PWM_RENESAS_TPU=y 212CONFIG_PWM_RENESAS_TPU=y
211CONFIG_GENERIC_PHY=y 213CONFIG_GENERIC_PHY=y
212CONFIG_PHY_RCAR_GEN2=y 214CONFIG_PHY_RCAR_GEN2=y
diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c
index cbde0030c092..d898a94f6eae 100644
--- a/arch/arm/mach-davinci/board-da850-evm.c
+++ b/arch/arm/mach-davinci/board-da850-evm.c
@@ -798,11 +798,11 @@ static int da850_lcd_hw_init(void)
798{ 798{
799 int status; 799 int status;
800 800
801 status = gpio_request(DA850_LCD_BL_PIN, "lcd bl\n"); 801 status = gpio_request(DA850_LCD_BL_PIN, "lcd bl");
802 if (status < 0) 802 if (status < 0)
803 return status; 803 return status;
804 804
805 status = gpio_request(DA850_LCD_PWR_PIN, "lcd pwr\n"); 805 status = gpio_request(DA850_LCD_PWR_PIN, "lcd pwr");
806 if (status < 0) { 806 if (status < 0) {
807 gpio_free(DA850_LCD_BL_PIN); 807 gpio_free(DA850_LCD_BL_PIN);
808 return status; 808 return status;
diff --git a/arch/arm/mach-davinci/board-neuros-osd2.c b/arch/arm/mach-davinci/board-neuros-osd2.c
index 0c02aaad0539..4da210a1a110 100644
--- a/arch/arm/mach-davinci/board-neuros-osd2.c
+++ b/arch/arm/mach-davinci/board-neuros-osd2.c
@@ -128,7 +128,7 @@ static struct platform_device davinci_fb_device = {
128 .num_resources = 0, 128 .num_resources = 0,
129}; 129};
130 130
131static struct gpio_led ntosd2_leds[] = { 131static const struct gpio_led ntosd2_leds[] = {
132 { .name = "led1_green", .gpio = GPIO(10), }, 132 { .name = "led1_green", .gpio = GPIO(10), },
133 { .name = "led1_red", .gpio = GPIO(11), }, 133 { .name = "led1_red", .gpio = GPIO(11), },
134 { .name = "led2_green", .gpio = GPIO(12), }, 134 { .name = "led2_green", .gpio = GPIO(12), },
diff --git a/arch/arm/mach-davinci/common.c b/arch/arm/mach-davinci/common.c
index 9f9fbfa6da0d..bcb6a7ba84e9 100644
--- a/arch/arm/mach-davinci/common.c
+++ b/arch/arm/mach-davinci/common.c
@@ -77,7 +77,7 @@ static int __init davinci_init_id(struct davinci_soc_info *soc_info)
77 return -EINVAL; 77 return -EINVAL;
78} 78}
79 79
80void __init davinci_common_init(struct davinci_soc_info *soc_info) 80void __init davinci_common_init(const struct davinci_soc_info *soc_info)
81{ 81{
82 int ret; 82 int ret;
83 83
diff --git a/arch/arm/mach-davinci/da830.c b/arch/arm/mach-davinci/da830.c
index 7fcbdc800f68..57ab18cf2a89 100644
--- a/arch/arm/mach-davinci/da830.c
+++ b/arch/arm/mach-davinci/da830.c
@@ -1194,7 +1194,7 @@ static struct davinci_timer_info da830_timer_info = {
1194 .clocksource_id = T0_BOT, 1194 .clocksource_id = T0_BOT,
1195}; 1195};
1196 1196
1197static struct davinci_soc_info davinci_soc_info_da830 = { 1197static const struct davinci_soc_info davinci_soc_info_da830 = {
1198 .io_desc = da830_io_desc, 1198 .io_desc = da830_io_desc,
1199 .io_desc_num = ARRAY_SIZE(da830_io_desc), 1199 .io_desc_num = ARRAY_SIZE(da830_io_desc),
1200 .jtag_id_reg = DA8XX_SYSCFG0_BASE + DA8XX_JTAG_ID_REG, 1200 .jtag_id_reg = DA8XX_SYSCFG0_BASE + DA8XX_JTAG_ID_REG,
diff --git a/arch/arm/mach-davinci/da850.c b/arch/arm/mach-davinci/da850.c
index d37b5463cd8f..aa37cbdf7d4d 100644
--- a/arch/arm/mach-davinci/da850.c
+++ b/arch/arm/mach-davinci/da850.c
@@ -1347,7 +1347,7 @@ int __init da850_register_gpio(void)
1347 return da8xx_register_gpio(&da850_gpio_platform_data); 1347 return da8xx_register_gpio(&da850_gpio_platform_data);
1348} 1348}
1349 1349
1350static struct davinci_soc_info davinci_soc_info_da850 = { 1350static const struct davinci_soc_info davinci_soc_info_da850 = {
1351 .io_desc = da850_io_desc, 1351 .io_desc = da850_io_desc,
1352 .io_desc_num = ARRAY_SIZE(da850_io_desc), 1352 .io_desc_num = ARRAY_SIZE(da850_io_desc),
1353 .jtag_id_reg = DA8XX_SYSCFG0_BASE + DA8XX_JTAG_ID_REG, 1353 .jtag_id_reg = DA8XX_SYSCFG0_BASE + DA8XX_JTAG_ID_REG,
diff --git a/arch/arm/mach-davinci/devices-da8xx.c b/arch/arm/mach-davinci/devices-da8xx.c
index 22440c05d66a..e1c40e73d30a 100644
--- a/arch/arm/mach-davinci/devices-da8xx.c
+++ b/arch/arm/mach-davinci/devices-da8xx.c
@@ -252,7 +252,7 @@ int __init da830_register_edma(struct edma_rsv_info *rsv)
252 da8xx_edma0_pdata.slavecnt = ARRAY_SIZE(da830_edma_map); 252 da8xx_edma0_pdata.slavecnt = ARRAY_SIZE(da830_edma_map);
253 253
254 edma_pdev = platform_device_register_full(&da8xx_edma0_device); 254 edma_pdev = platform_device_register_full(&da8xx_edma0_device);
255 return IS_ERR(edma_pdev) ? PTR_ERR(edma_pdev) : 0; 255 return PTR_ERR_OR_ZERO(edma_pdev);
256} 256}
257 257
258static const struct dma_slave_map da850_edma0_map[] = { 258static const struct dma_slave_map da850_edma0_map[] = {
@@ -297,7 +297,7 @@ int __init da850_register_edma(struct edma_rsv_info *rsv[2])
297 da850_edma1_pdata.slavecnt = ARRAY_SIZE(da850_edma1_map); 297 da850_edma1_pdata.slavecnt = ARRAY_SIZE(da850_edma1_map);
298 298
299 edma_pdev = platform_device_register_full(&da850_edma1_device); 299 edma_pdev = platform_device_register_full(&da850_edma1_device);
300 return IS_ERR(edma_pdev) ? PTR_ERR(edma_pdev) : 0; 300 return PTR_ERR_OR_ZERO(edma_pdev);
301} 301}
302 302
303static struct resource da8xx_i2c_resources0[] = { 303static struct resource da8xx_i2c_resources0[] = {
diff --git a/arch/arm/mach-davinci/dm355.c b/arch/arm/mach-davinci/dm355.c
index bd50367f654e..938747f20c22 100644
--- a/arch/arm/mach-davinci/dm355.c
+++ b/arch/arm/mach-davinci/dm355.c
@@ -1006,7 +1006,7 @@ struct platform_device dm355_serial_device[] = {
1006 } 1006 }
1007}; 1007};
1008 1008
1009static struct davinci_soc_info davinci_soc_info_dm355 = { 1009static const struct davinci_soc_info davinci_soc_info_dm355 = {
1010 .io_desc = dm355_io_desc, 1010 .io_desc = dm355_io_desc,
1011 .io_desc_num = ARRAY_SIZE(dm355_io_desc), 1011 .io_desc_num = ARRAY_SIZE(dm355_io_desc),
1012 .jtag_id_reg = 0x01c40028, 1012 .jtag_id_reg = 0x01c40028,
diff --git a/arch/arm/mach-davinci/dm365.c b/arch/arm/mach-davinci/dm365.c
index 5ace9380626a..5d9f96df08e9 100644
--- a/arch/arm/mach-davinci/dm365.c
+++ b/arch/arm/mach-davinci/dm365.c
@@ -1110,7 +1110,7 @@ struct platform_device dm365_serial_device[] = {
1110 } 1110 }
1111}; 1111};
1112 1112
1113static struct davinci_soc_info davinci_soc_info_dm365 = { 1113static const struct davinci_soc_info davinci_soc_info_dm365 = {
1114 .io_desc = dm365_io_desc, 1114 .io_desc = dm365_io_desc,
1115 .io_desc_num = ARRAY_SIZE(dm365_io_desc), 1115 .io_desc_num = ARRAY_SIZE(dm365_io_desc),
1116 .jtag_id_reg = 0x01c40028, 1116 .jtag_id_reg = 0x01c40028,
diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-davinci/dm644x.c
index b437c3730f65..6b41e1ca511e 100644
--- a/arch/arm/mach-davinci/dm644x.c
+++ b/arch/arm/mach-davinci/dm644x.c
@@ -899,7 +899,7 @@ struct platform_device dm644x_serial_device[] = {
899 } 899 }
900}; 900};
901 901
902static struct davinci_soc_info davinci_soc_info_dm644x = { 902static const struct davinci_soc_info davinci_soc_info_dm644x = {
903 .io_desc = dm644x_io_desc, 903 .io_desc = dm644x_io_desc,
904 .io_desc_num = ARRAY_SIZE(dm644x_io_desc), 904 .io_desc_num = ARRAY_SIZE(dm644x_io_desc),
905 .jtag_id_reg = 0x01c40028, 905 .jtag_id_reg = 0x01c40028,
diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c
index da21353cac45..6fc06a6ad4f8 100644
--- a/arch/arm/mach-davinci/dm646x.c
+++ b/arch/arm/mach-davinci/dm646x.c
@@ -882,7 +882,7 @@ struct platform_device dm646x_serial_device[] = {
882 } 882 }
883}; 883};
884 884
885static struct davinci_soc_info davinci_soc_info_dm646x = { 885static const struct davinci_soc_info davinci_soc_info_dm646x = {
886 .io_desc = dm646x_io_desc, 886 .io_desc = dm646x_io_desc,
887 .io_desc_num = ARRAY_SIZE(dm646x_io_desc), 887 .io_desc_num = ARRAY_SIZE(dm646x_io_desc),
888 .jtag_id_reg = 0x01c40028, 888 .jtag_id_reg = 0x01c40028,
@@ -949,7 +949,7 @@ int __init dm646x_init_edma(struct edma_rsv_info *rsv)
949 dm646x_edma_pdata.rsv = rsv; 949 dm646x_edma_pdata.rsv = rsv;
950 950
951 edma_pdev = platform_device_register_full(&dm646x_edma_device); 951 edma_pdev = platform_device_register_full(&dm646x_edma_device);
952 return IS_ERR(edma_pdev) ? PTR_ERR(edma_pdev) : 0; 952 return PTR_ERR_OR_ZERO(edma_pdev);
953} 953}
954 954
955void __init dm646x_init(void) 955void __init dm646x_init(void)
diff --git a/arch/arm/mach-davinci/include/mach/common.h b/arch/arm/mach-davinci/include/mach/common.h
index 037aa66bcac1..433a008ff796 100644
--- a/arch/arm/mach-davinci/include/mach/common.h
+++ b/arch/arm/mach-davinci/include/mach/common.h
@@ -79,7 +79,7 @@ struct davinci_soc_info {
79 79
80extern struct davinci_soc_info davinci_soc_info; 80extern struct davinci_soc_info davinci_soc_info;
81 81
82extern void davinci_common_init(struct davinci_soc_info *soc_info); 82extern void davinci_common_init(const struct davinci_soc_info *soc_info);
83extern void davinci_init_ide(void); 83extern void davinci_init_ide(void);
84void davinci_restart(enum reboot_mode mode, const char *cmd); 84void davinci_restart(enum reboot_mode mode, const char *cmd);
85void davinci_init_late(void); 85void davinci_init_late(void);
diff --git a/arch/arm/mach-ep93xx/Kconfig b/arch/arm/mach-ep93xx/Kconfig
index 61a75ca3684e..c095236d7ff8 100644
--- a/arch/arm/mach-ep93xx/Kconfig
+++ b/arch/arm/mach-ep93xx/Kconfig
@@ -21,6 +21,13 @@ config MACH_ADSSPHERE
21 Say 'Y' here if you want your kernel to support the ADS 21 Say 'Y' here if you want your kernel to support the ADS
22 Sphere board. 22 Sphere board.
23 23
24config MACH_BK3
25 bool "Support Liebherr BK3.1"
26 select MACH_TS72XX
27 help
28 Say 'Y' here if you want your kernel to support the
29 Liebherr controller BK3.1.
30
24config MACH_EDB93XX 31config MACH_EDB93XX
25 bool 32 bool
26 33
diff --git a/arch/arm/mach-ep93xx/ts72xx.c b/arch/arm/mach-ep93xx/ts72xx.c
index f386ebae0163..c089a2a4fe30 100644
--- a/arch/arm/mach-ep93xx/ts72xx.c
+++ b/arch/arm/mach-ep93xx/ts72xx.c
@@ -19,10 +19,15 @@
19#include <linux/mtd/rawnand.h> 19#include <linux/mtd/rawnand.h>
20#include <linux/mtd/partitions.h> 20#include <linux/mtd/partitions.h>
21#include <linux/spi/spi.h> 21#include <linux/spi/spi.h>
22#include <linux/spi/flash.h>
23#include <linux/spi/mmc_spi.h>
24#include <linux/mmc/host.h>
22#include <linux/platform_data/spi-ep93xx.h> 25#include <linux/platform_data/spi-ep93xx.h>
23 26
24#include <mach/gpio-ep93xx.h> 27#include <mach/gpio-ep93xx.h>
25#include <mach/hardware.h> 28#include <mach/hardware.h>
29#include <mach/irqs.h>
30#include <mach/gpio-ep93xx.h>
26 31
27#include <asm/mach-types.h> 32#include <asm/mach-types.h>
28#include <asm/mach/map.h> 33#include <asm/mach/map.h>
@@ -31,6 +36,9 @@
31#include "soc.h" 36#include "soc.h"
32#include "ts72xx.h" 37#include "ts72xx.h"
33 38
39/*************************************************************************
40 * IO map
41 *************************************************************************/
34static struct map_desc ts72xx_io_desc[] __initdata = { 42static struct map_desc ts72xx_io_desc[] __initdata = {
35 { 43 {
36 .virtual = (unsigned long)TS72XX_MODEL_VIRT_BASE, 44 .virtual = (unsigned long)TS72XX_MODEL_VIRT_BASE,
@@ -47,6 +55,11 @@ static struct map_desc ts72xx_io_desc[] __initdata = {
47 .pfn = __phys_to_pfn(TS72XX_OPTIONS2_PHYS_BASE), 55 .pfn = __phys_to_pfn(TS72XX_OPTIONS2_PHYS_BASE),
48 .length = TS72XX_OPTIONS2_SIZE, 56 .length = TS72XX_OPTIONS2_SIZE,
49 .type = MT_DEVICE, 57 .type = MT_DEVICE,
58 }, {
59 .virtual = (unsigned long)TS72XX_CPLDVER_VIRT_BASE,
60 .pfn = __phys_to_pfn(TS72XX_CPLDVER_PHYS_BASE),
61 .length = TS72XX_CPLDVER_SIZE,
62 .type = MT_DEVICE,
50 } 63 }
51}; 64};
52 65
@@ -123,8 +136,6 @@ static struct platform_nand_data ts72xx_nand_data = {
123 .nr_chips = 1, 136 .nr_chips = 1,
124 .chip_offset = 0, 137 .chip_offset = 0,
125 .chip_delay = 15, 138 .chip_delay = 15,
126 .partitions = ts72xx_nand_parts,
127 .nr_partitions = ARRAY_SIZE(ts72xx_nand_parts),
128 }, 139 },
129 .ctrl = { 140 .ctrl = {
130 .cmd_ctrl = ts72xx_nand_hwcontrol, 141 .cmd_ctrl = ts72xx_nand_hwcontrol,
@@ -148,8 +159,8 @@ static struct platform_device ts72xx_nand_flash = {
148 .num_resources = ARRAY_SIZE(ts72xx_nand_resource), 159 .num_resources = ARRAY_SIZE(ts72xx_nand_resource),
149}; 160};
150 161
151 162void __init ts72xx_register_flash(struct mtd_partition *parts, int n,
152static void __init ts72xx_register_flash(void) 163 resource_size_t start)
153{ 164{
154 /* 165 /*
155 * TS7200 has NOR flash all other TS72xx board have NAND flash. 166 * TS7200 has NOR flash all other TS72xx board have NAND flash.
@@ -157,16 +168,12 @@ static void __init ts72xx_register_flash(void)
157 if (board_is_ts7200()) { 168 if (board_is_ts7200()) {
158 ep93xx_register_flash(2, EP93XX_CS6_PHYS_BASE, SZ_16M); 169 ep93xx_register_flash(2, EP93XX_CS6_PHYS_BASE, SZ_16M);
159 } else { 170 } else {
160 resource_size_t start;
161
162 if (is_ts9420_installed())
163 start = EP93XX_CS7_PHYS_BASE;
164 else
165 start = EP93XX_CS6_PHYS_BASE;
166
167 ts72xx_nand_resource[0].start = start; 171 ts72xx_nand_resource[0].start = start;
168 ts72xx_nand_resource[0].end = start + SZ_16M - 1; 172 ts72xx_nand_resource[0].end = start + SZ_16M - 1;
169 173
174 ts72xx_nand_data.chip.partitions = parts;
175 ts72xx_nand_data.chip.nr_partitions = n;
176
170 platform_device_register(&ts72xx_nand_flash); 177 platform_device_register(&ts72xx_nand_flash);
171 } 178 }
172} 179}
@@ -207,10 +214,79 @@ static struct platform_device ts72xx_wdt_device = {
207 .num_resources = ARRAY_SIZE(ts72xx_wdt_resources), 214 .num_resources = ARRAY_SIZE(ts72xx_wdt_resources),
208}; 215};
209 216
217/*************************************************************************
218 * ETH
219 *************************************************************************/
210static struct ep93xx_eth_data __initdata ts72xx_eth_data = { 220static struct ep93xx_eth_data __initdata ts72xx_eth_data = {
211 .phy_id = 1, 221 .phy_id = 1,
212}; 222};
213 223
224/*************************************************************************
225 * SPI SD/MMC host
226 *************************************************************************/
227#define BK3_EN_SDCARD_PHYS_BASE 0x12400000
228#define BK3_EN_SDCARD_PWR 0x0
229#define BK3_DIS_SDCARD_PWR 0x0C
230static void bk3_mmc_spi_setpower(struct device *dev, unsigned int vdd)
231{
232 void __iomem *pwr_sd = ioremap(BK3_EN_SDCARD_PHYS_BASE, SZ_4K);
233
234 if (!pwr_sd) {
235 pr_err("Failed to enable SD card power!");
236 return;
237 }
238
239 pr_debug("%s: SD card pwr %s VDD:0x%x\n", __func__,
240 !!vdd ? "ON" : "OFF", vdd);
241
242 if (!!vdd)
243 __raw_writeb(BK3_EN_SDCARD_PWR, pwr_sd);
244 else
245 __raw_writeb(BK3_DIS_SDCARD_PWR, pwr_sd);
246
247 iounmap(pwr_sd);
248}
249
250static struct mmc_spi_platform_data bk3_spi_mmc_data = {
251 .detect_delay = 500,
252 .powerup_msecs = 100,
253 .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34,
254 .caps = MMC_CAP_NONREMOVABLE,
255 .setpower = bk3_mmc_spi_setpower,
256};
257
258/*************************************************************************
259 * SPI Bus - SD card access
260 *************************************************************************/
261static struct spi_board_info bk3_spi_board_info[] __initdata = {
262 {
263 .modalias = "mmc_spi",
264 .platform_data = &bk3_spi_mmc_data,
265 .max_speed_hz = 7.4E6,
266 .bus_num = 0,
267 .chip_select = 0,
268 .mode = SPI_MODE_0,
269 },
270};
271
272/*
273 * This is a stub -> the FGPIO[3] pin is not connected on the schematic
274 * The all work is performed automatically by !SPI_FRAME (SFRM1) and
275 * goes through CPLD
276 */
277static int bk3_spi_chipselects[] __initdata = {
278 EP93XX_GPIO_LINE_F(3),
279};
280
281static struct ep93xx_spi_info bk3_spi_master __initdata = {
282 .chipselect = bk3_spi_chipselects,
283 .num_chipselect = ARRAY_SIZE(bk3_spi_chipselects),
284 .use_dma = 1,
285};
286
287/*************************************************************************
288 * TS72XX support code
289 *************************************************************************/
214#if IS_ENABLED(CONFIG_FPGA_MGR_TS73XX) 290#if IS_ENABLED(CONFIG_FPGA_MGR_TS73XX)
215 291
216/* Relative to EP93XX_CS1_PHYS_BASE */ 292/* Relative to EP93XX_CS1_PHYS_BASE */
@@ -257,7 +333,9 @@ static struct ep93xx_spi_info ts72xx_spi_info __initdata = {
257static void __init ts72xx_init_machine(void) 333static void __init ts72xx_init_machine(void)
258{ 334{
259 ep93xx_init_devices(); 335 ep93xx_init_devices();
260 ts72xx_register_flash(); 336 ts72xx_register_flash(ts72xx_nand_parts, ARRAY_SIZE(ts72xx_nand_parts),
337 is_ts9420_installed() ?
338 EP93XX_CS7_PHYS_BASE : EP93XX_CS6_PHYS_BASE);
261 platform_device_register(&ts72xx_rtc_device); 339 platform_device_register(&ts72xx_rtc_device);
262 platform_device_register(&ts72xx_wdt_device); 340 platform_device_register(&ts72xx_wdt_device);
263 341
@@ -280,3 +358,66 @@ MACHINE_START(TS72XX, "Technologic Systems TS-72xx SBC")
280 .init_late = ep93xx_init_late, 358 .init_late = ep93xx_init_late,
281 .restart = ep93xx_restart, 359 .restart = ep93xx_restart,
282MACHINE_END 360MACHINE_END
361
362/*************************************************************************
363 * EP93xx I2S audio peripheral handling
364 *************************************************************************/
365static struct resource ep93xx_i2s_resource[] = {
366 DEFINE_RES_MEM(EP93XX_I2S_PHYS_BASE, 0x100),
367 DEFINE_RES_IRQ_NAMED(IRQ_EP93XX_SAI, "spilink i2s slave"),
368};
369
370static struct platform_device ep93xx_i2s_device = {
371 .name = "ep93xx-spilink-i2s",
372 .id = -1,
373 .num_resources = ARRAY_SIZE(ep93xx_i2s_resource),
374 .resource = ep93xx_i2s_resource,
375};
376
377/*************************************************************************
378 * BK3 support code
379 *************************************************************************/
380static struct mtd_partition bk3_nand_parts[] = {
381 {
382 .name = "System",
383 .offset = 0x00000000,
384 .size = 0x01e00000,
385 }, {
386 .name = "Data",
387 .offset = 0x01e00000,
388 .size = 0x05f20000
389 }, {
390 .name = "RedBoot",
391 .offset = 0x07d20000,
392 .size = 0x002e0000,
393 .mask_flags = MTD_WRITEABLE, /* force RO */
394 },
395};
396
397static void __init bk3_init_machine(void)
398{
399 ep93xx_init_devices();
400
401 ts72xx_register_flash(bk3_nand_parts, ARRAY_SIZE(bk3_nand_parts),
402 EP93XX_CS6_PHYS_BASE);
403
404 ep93xx_register_eth(&ts72xx_eth_data, 1);
405
406 ep93xx_register_spi(&bk3_spi_master, bk3_spi_board_info,
407 ARRAY_SIZE(bk3_spi_board_info));
408
409 /* Configure ep93xx's I2S to use AC97 pins */
410 ep93xx_devcfg_set_bits(EP93XX_SYSCON_DEVCFG_I2SONAC97);
411 platform_device_register(&ep93xx_i2s_device);
412}
413
414MACHINE_START(BK3, "Liebherr controller BK3.1")
415 /* Maintainer: Lukasz Majewski <lukma@denx.de> */
416 .atag_offset = 0x100,
417 .map_io = ts72xx_map_io,
418 .init_irq = ep93xx_init_irq,
419 .init_time = ep93xx_timer_init,
420 .init_machine = bk3_init_machine,
421 .init_late = ep93xx_init_late,
422 .restart = ep93xx_restart,
423MACHINE_END
diff --git a/arch/arm/mach-ep93xx/ts72xx.h b/arch/arm/mach-ep93xx/ts72xx.h
index 8a3206a54b39..00b4941d29c9 100644
--- a/arch/arm/mach-ep93xx/ts72xx.h
+++ b/arch/arm/mach-ep93xx/ts72xx.h
@@ -10,8 +10,12 @@
10 * febff000 22000000 4K model number register (bits 0-2) 10 * febff000 22000000 4K model number register (bits 0-2)
11 * febfe000 22400000 4K options register 11 * febfe000 22400000 4K options register
12 * febfd000 22800000 4K options register #2 12 * febfd000 22800000 4K options register #2
13 * febfc000 23400000 4K CPLD version register
13 */ 14 */
14 15
16#ifndef __TS72XX_H_
17#define __TS72XX_H_
18
15#define TS72XX_MODEL_PHYS_BASE 0x22000000 19#define TS72XX_MODEL_PHYS_BASE 0x22000000
16#define TS72XX_MODEL_VIRT_BASE IOMEM(0xfebff000) 20#define TS72XX_MODEL_VIRT_BASE IOMEM(0xfebff000)
17#define TS72XX_MODEL_SIZE 0x00001000 21#define TS72XX_MODEL_SIZE 0x00001000
@@ -39,6 +43,10 @@
39#define TS72XX_OPTIONS2_TS9420 0x04 43#define TS72XX_OPTIONS2_TS9420 0x04
40#define TS72XX_OPTIONS2_TS9420_BOOT 0x02 44#define TS72XX_OPTIONS2_TS9420_BOOT 0x02
41 45
46#define TS72XX_CPLDVER_PHYS_BASE 0x23400000
47#define TS72XX_CPLDVER_VIRT_BASE IOMEM(0xfebfc000)
48#define TS72XX_CPLDVER_SIZE 0x00001000
49
42#ifndef __ASSEMBLY__ 50#ifndef __ASSEMBLY__
43 51
44static inline int ts72xx_model(void) 52static inline int ts72xx_model(void)
@@ -83,3 +91,4 @@ static inline int is_ts9420_installed(void)
83 TS72XX_OPTIONS2_TS9420); 91 TS72XX_OPTIONS2_TS9420);
84} 92}
85#endif 93#endif
94#endif /* __TS72XX_H_ */
diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index 44fa753bd79c..647c319f9f5f 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -1,9 +1,7 @@
1# arch/arm/mach-exynos/Kconfig 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. 3# Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
4# http://www.samsung.com/ 4# http://www.samsung.com/
5#
6# Licensed under GPLv2
7 5
8# Configuration options for the EXYNOS 6# Configuration options for the EXYNOS
9 7
diff --git a/arch/arm/mach-exynos/Makefile b/arch/arm/mach-exynos/Makefile
index 9ea6c54645ad..cd00c82a1add 100644
--- a/arch/arm/mach-exynos/Makefile
+++ b/arch/arm/mach-exynos/Makefile
@@ -1,9 +1,7 @@
1# arch/arm/mach-exynos/Makefile 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. 3# Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
4# http://www.samsung.com/ 4# http://www.samsung.com/
5#
6# Licensed under GPLv2
7 5
8ccflags-$(CONFIG_ARCH_MULTIPLATFORM) += -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include 6ccflags-$(CONFIG_ARCH_MULTIPLATFORM) += -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include
9 7
diff --git a/arch/arm/mach-exynos/common.h b/arch/arm/mach-exynos/common.h
index 3f715524c9d6..098f84a149a3 100644
--- a/arch/arm/mach-exynos/common.h
+++ b/arch/arm/mach-exynos/common.h
@@ -1,12 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 4 * http://www.samsung.com
4 * 5 *
5 * Common Header for EXYNOS machines 6 * Common Header for EXYNOS machines
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */ 7 */
11 8
12#ifndef __ARCH_ARM_MACH_EXYNOS_COMMON_H 9#ifndef __ARCH_ARM_MACH_EXYNOS_COMMON_H
diff --git a/arch/arm/mach-exynos/exynos-smc.S b/arch/arm/mach-exynos/exynos-smc.S
index 2e27aa3813fd..d259532ba937 100644
--- a/arch/arm/mach-exynos/exynos-smc.S
+++ b/arch/arm/mach-exynos/exynos-smc.S
@@ -1,11 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (C) 2012 Samsung Electronics. 3 * Copyright (C) 2012 Samsung Electronics.
3 * 4 *
4 * Copied from omap-smc.S Copyright (C) 2010 Texas Instruments, Inc. 5 * Copied from omap-smc.S Copyright (C) 2010 Texas Instruments, Inc.
5 *
6 * This program is free software,you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */ 6 */
10 7
11#include <linux/linkage.h> 8#include <linux/linkage.h>
diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
index 9a9caac1125a..fbd108ce8745 100644
--- a/arch/arm/mach-exynos/exynos.c
+++ b/arch/arm/mach-exynos/exynos.c
@@ -1,13 +1,9 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * SAMSUNG EXYNOS Flattened Device Tree enabled machine 2//
3 * 3// SAMSUNG EXYNOS Flattened Device Tree enabled machine
4 * Copyright (c) 2010-2014 Samsung Electronics Co., Ltd. 4//
5 * http://www.samsung.com 5// Copyright (c) 2010-2014 Samsung Electronics Co., Ltd.
6 * 6// http://www.samsung.com
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */
11 7
12#include <linux/init.h> 8#include <linux/init.h>
13#include <linux/io.h> 9#include <linux/io.h>
diff --git a/arch/arm/mach-exynos/firmware.c b/arch/arm/mach-exynos/firmware.c
index 2a51e4603a6f..be1f20fe28f4 100644
--- a/arch/arm/mach-exynos/firmware.c
+++ b/arch/arm/mach-exynos/firmware.c
@@ -1,12 +1,8 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (C) 2012 Samsung Electronics. 2//
3 * Kyungmin Park <kyungmin.park@samsung.com> 3// Copyright (C) 2012 Samsung Electronics.
4 * Tomasz Figa <t.figa@samsung.com> 4// Kyungmin Park <kyungmin.park@samsung.com>
5 * 5// Tomasz Figa <t.figa@samsung.com>
6 * This program is free software,you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10 6
11#include <linux/kernel.h> 7#include <linux/kernel.h>
12#include <linux/io.h> 8#include <linux/io.h>
diff --git a/arch/arm/mach-exynos/headsmp.S b/arch/arm/mach-exynos/headsmp.S
index d3d24ab351ae..005695c9bf40 100644
--- a/arch/arm/mach-exynos/headsmp.S
+++ b/arch/arm/mach-exynos/headsmp.S
@@ -1,13 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 *
3 * Cloned from linux/arch/arm/mach-realview/headsmp.S 3 * Cloned from linux/arch/arm/mach-realview/headsmp.S
4 * 4 *
5 * Copyright (c) 2003 ARM Limited 5 * Copyright (c) 2003 ARM Limited
6 * All Rights Reserved 6 * All Rights Reserved
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 */ 7 */
12#include <linux/linkage.h> 8#include <linux/linkage.h>
13#include <linux/init.h> 9#include <linux/init.h>
diff --git a/arch/arm/mach-exynos/include/mach/map.h b/arch/arm/mach-exynos/include/mach/map.h
index 5fb0040cc6d3..37a5ea5e2602 100644
--- a/arch/arm/mach-exynos/include/mach/map.h
+++ b/arch/arm/mach-exynos/include/mach/map.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com/ 4 * http://www.samsung.com/
4 * 5 *
5 * EXYNOS - Memory map definitions 6 * EXYNOS - Memory map definitions
6 * 7 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 8
12#ifndef __ASM_ARCH_MAP_H 9#ifndef __ASM_ARCH_MAP_H
13#define __ASM_ARCH_MAP_H __FILE__ 10#define __ASM_ARCH_MAP_H __FILE__
diff --git a/arch/arm/mach-exynos/mcpm-exynos.c b/arch/arm/mach-exynos/mcpm-exynos.c
index b42622562ea7..72bc035bedbe 100644
--- a/arch/arm/mach-exynos/mcpm-exynos.c
+++ b/arch/arm/mach-exynos/mcpm-exynos.c
@@ -1,15 +1,8 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2014 Samsung Electronics Co., Ltd. 2// Copyright (c) 2014 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 3// http://www.samsung.com
4 * 4//
5 * arch/arm/mach-exynos/mcpm-exynos.c 5// Based on arch/arm/mach-vexpress/dcscb.c
6 *
7 * Based on arch/arm/mach-vexpress/dcscb.c
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 */
13 6
14#include <linux/arm-cci.h> 7#include <linux/arm-cci.h>
15#include <linux/delay.h> 8#include <linux/delay.h>
diff --git a/arch/arm/mach-exynos/platsmp.c b/arch/arm/mach-exynos/platsmp.c
index 5a03bffe7226..5156fe70e030 100644
--- a/arch/arm/mach-exynos/platsmp.c
+++ b/arch/arm/mach-exynos/platsmp.c
@@ -1,16 +1,11 @@
1 /* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. 2// Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 3// http://www.samsung.com
4 * 4//
5 * Cloned from linux/arch/arm/mach-vexpress/platsmp.c 5// Cloned from linux/arch/arm/mach-vexpress/platsmp.c
6 * 6//
7 * Copyright (C) 2002 ARM Ltd. 7// Copyright (C) 2002 ARM Ltd.
8 * All Rights Reserved 8// All Rights Reserved
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/init.h> 10#include <linux/init.h>
16#include <linux/errno.h> 11#include <linux/errno.h>
diff --git a/arch/arm/mach-exynos/pm.c b/arch/arm/mach-exynos/pm.c
index c9740d96db9e..dc4346ecf16d 100644
--- a/arch/arm/mach-exynos/pm.c
+++ b/arch/arm/mach-exynos/pm.c
@@ -1,17 +1,13 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2011-2014 Samsung Electronics Co., Ltd. 2//
3 * http://www.samsung.com 3// Copyright (c) 2011-2014 Samsung Electronics Co., Ltd.
4 * 4// http://www.samsung.com
5 * EXYNOS - Power Management support 5//
6 * 6// EXYNOS - Power Management support
7 * Based on arch/arm/mach-s3c2410/pm.c 7//
8 * Copyright (c) 2006 Simtec Electronics 8// Based on arch/arm/mach-s3c2410/pm.c
9 * Ben Dooks <ben@simtec.co.uk> 9// Copyright (c) 2006 Simtec Electronics
10 * 10// Ben Dooks <ben@simtec.co.uk>
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14*/
15 11
16#include <linux/init.h> 12#include <linux/init.h>
17#include <linux/suspend.h> 13#include <linux/suspend.h>
diff --git a/arch/arm/mach-exynos/sleep.S b/arch/arm/mach-exynos/sleep.S
index 4292cae43f3c..2783c3a0c06a 100644
--- a/arch/arm/mach-exynos/sleep.S
+++ b/arch/arm/mach-exynos/sleep.S
@@ -1,18 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0+ */
1/* 2/*
2 * Copyright (c) 2013 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 4 * http://www.samsung.com
4 * 5 *
5 * Exynos low-level resume code 6 * Exynos low-level resume code
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 */ 7 */
17 8
18#include <linux/linkage.h> 9#include <linux/linkage.h>
diff --git a/arch/arm/mach-exynos/smc.h b/arch/arm/mach-exynos/smc.h
index c2845717bc8f..f355185d4239 100644
--- a/arch/arm/mach-exynos/smc.h
+++ b/arch/arm/mach-exynos/smc.h
@@ -1,11 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2012 Samsung Electronics. 3 * Copyright (c) 2012 Samsung Electronics.
3 * 4 *
4 * EXYNOS - SMC Call 5 * EXYNOS - SMC Call
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */ 6 */
10 7
11#ifndef __ASM_ARCH_EXYNOS_SMC_H 8#ifndef __ASM_ARCH_EXYNOS_SMC_H
diff --git a/arch/arm/mach-exynos/suspend.c b/arch/arm/mach-exynos/suspend.c
index 370d37ded7e7..c2ed997fedef 100644
--- a/arch/arm/mach-exynos/suspend.c
+++ b/arch/arm/mach-exynos/suspend.c
@@ -1,17 +1,13 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2011-2014 Samsung Electronics Co., Ltd. 2//
3 * http://www.samsung.com 3// Copyright (c) 2011-2014 Samsung Electronics Co., Ltd.
4 * 4// http://www.samsung.com
5 * EXYNOS - Suspend support 5//
6 * 6// EXYNOS - Suspend support
7 * Based on arch/arm/mach-s3c2410/pm.c 7//
8 * Copyright (c) 2006 Simtec Electronics 8// Based on arch/arm/mach-s3c2410/pm.c
9 * Ben Dooks <ben@simtec.co.uk> 9// Copyright (c) 2006 Simtec Electronics
10 * 10// Ben Dooks <ben@simtec.co.uk>
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14 */
15 11
16#include <linux/init.h> 12#include <linux/init.h>
17#include <linux/suspend.h> 13#include <linux/suspend.h>
diff --git a/arch/arm/mach-imx/common.h b/arch/arm/mach-imx/common.h
index b09a2ec19267..c8d68e918b2f 100644
--- a/arch/arm/mach-imx/common.h
+++ b/arch/arm/mach-imx/common.h
@@ -71,15 +71,6 @@ enum mxc_cpu_pwr_mode {
71 STOP_POWER_OFF, /* STOP + SRPG */ 71 STOP_POWER_OFF, /* STOP + SRPG */
72}; 72};
73 73
74enum mx3_cpu_pwr_mode {
75 MX3_RUN,
76 MX3_WAIT,
77 MX3_DOZE,
78 MX3_SLEEP,
79};
80
81void mx3_cpu_lp_set(enum mx3_cpu_pwr_mode mode);
82
83void imx_enable_cpu(int cpu, bool enable); 74void imx_enable_cpu(int cpu, bool enable);
84void imx_set_cpu_jump(int cpu, void *jump_addr); 75void imx_set_cpu_jump(int cpu, void *jump_addr);
85u32 imx_get_cpu_arg(int cpu); 76u32 imx_get_cpu_arg(int cpu);
diff --git a/arch/arm/mach-imx/mmdc.c b/arch/arm/mach-imx/mmdc.c
index 78262899a590..5fb1d2254b5e 100644
--- a/arch/arm/mach-imx/mmdc.c
+++ b/arch/arm/mach-imx/mmdc.c
@@ -547,7 +547,6 @@ static int imx_mmdc_probe(struct platform_device *pdev)
547 struct device_node *np = pdev->dev.of_node; 547 struct device_node *np = pdev->dev.of_node;
548 void __iomem *mmdc_base, *reg; 548 void __iomem *mmdc_base, *reg;
549 u32 val; 549 u32 val;
550 int timeout = 0x400;
551 550
552 mmdc_base = of_iomap(np, 0); 551 mmdc_base = of_iomap(np, 0);
553 WARN_ON(!mmdc_base); 552 WARN_ON(!mmdc_base);
@@ -565,16 +564,6 @@ static int imx_mmdc_probe(struct platform_device *pdev)
565 val &= ~(1 << BP_MMDC_MAPSR_PSD); 564 val &= ~(1 << BP_MMDC_MAPSR_PSD);
566 writel_relaxed(val, reg); 565 writel_relaxed(val, reg);
567 566
568 /* Ensure it's successfully enabled */
569 while (!(readl_relaxed(reg) & 1 << BP_MMDC_MAPSR_PSS) && --timeout)
570 cpu_relax();
571
572 if (unlikely(!timeout)) {
573 pr_warn("%s: failed to enable automatic power saving\n",
574 __func__);
575 return -EBUSY;
576 }
577
578 return imx_mmdc_perf_init(pdev, mmdc_base); 567 return imx_mmdc_perf_init(pdev, mmdc_base);
579} 568}
580 569
diff --git a/arch/arm/mach-mediatek/Kconfig b/arch/arm/mach-mediatek/Kconfig
index 70e49d54434e..91cc461f7b04 100644
--- a/arch/arm/mach-mediatek/Kconfig
+++ b/arch/arm/mach-mediatek/Kconfig
@@ -1,5 +1,5 @@
1menuconfig ARCH_MEDIATEK 1menuconfig ARCH_MEDIATEK
2 bool "Mediatek MT65xx & MT81xx SoC" 2 bool "MediaTek SoC Support"
3 depends on ARCH_MULTI_V7 3 depends on ARCH_MULTI_V7
4 select ARM_GIC 4 select ARM_GIC
5 select PINCTRL 5 select PINCTRL
diff --git a/arch/arm/mach-mmp/mmp2.h b/arch/arm/mach-mmp/mmp2.h
index a4b82f719de1..adafc4fba8f4 100644
--- a/arch/arm/mach-mmp/mmp2.h
+++ b/arch/arm/mach-mmp/mmp2.h
@@ -10,7 +10,7 @@ extern void __init mmp2_init_irq(void);
10extern void mmp2_clear_pmic_int(void); 10extern void mmp2_clear_pmic_int(void);
11 11
12#include <linux/i2c.h> 12#include <linux/i2c.h>
13#include <linux/i2c/pxa-i2c.h> 13#include <linux/platform_data/i2c-pxa.h>
14#include <linux/platform_data/dma-mmp_tdma.h> 14#include <linux/platform_data/dma-mmp_tdma.h>
15 15
16#include "devices.h" 16#include "devices.h"
diff --git a/arch/arm/mach-mmp/pxa168.h b/arch/arm/mach-mmp/pxa168.h
index b39bff37ff11..0331c58b07a2 100644
--- a/arch/arm/mach-mmp/pxa168.h
+++ b/arch/arm/mach-mmp/pxa168.h
@@ -11,7 +11,7 @@ extern void pxa168_restart(enum reboot_mode, const char *);
11extern void pxa168_clear_keypad_wakeup(void); 11extern void pxa168_clear_keypad_wakeup(void);
12 12
13#include <linux/i2c.h> 13#include <linux/i2c.h>
14#include <linux/i2c/pxa-i2c.h> 14#include <linux/platform_data/i2c-pxa.h>
15#include <linux/platform_data/mtd-nand-pxa3xx.h> 15#include <linux/platform_data/mtd-nand-pxa3xx.h>
16#include <video/pxa168fb.h> 16#include <video/pxa168fb.h>
17#include <linux/platform_data/keypad-pxa27x.h> 17#include <linux/platform_data/keypad-pxa27x.h>
diff --git a/arch/arm/mach-mmp/pxa910.h b/arch/arm/mach-mmp/pxa910.h
index cb3923dcf580..42009c349eae 100644
--- a/arch/arm/mach-mmp/pxa910.h
+++ b/arch/arm/mach-mmp/pxa910.h
@@ -7,7 +7,7 @@ extern void __init icu_init_irq(void);
7extern void __init pxa910_init_irq(void); 7extern void __init pxa910_init_irq(void);
8 8
9#include <linux/i2c.h> 9#include <linux/i2c.h>
10#include <linux/i2c/pxa-i2c.h> 10#include <linux/platform_data/i2c-pxa.h>
11#include <linux/platform_data/mtd-nand-pxa3xx.h> 11#include <linux/platform_data/mtd-nand-pxa3xx.h>
12#include <video/mmp_disp.h> 12#include <video/mmp_disp.h>
13 13
diff --git a/arch/arm/mach-omap2/cm-regbits-24xx.h b/arch/arm/mach-omap2/cm-regbits-24xx.h
index d7a5d11cbcbf..9ff0fc70f152 100644
--- a/arch/arm/mach-omap2/cm-regbits-24xx.h
+++ b/arch/arm/mach-omap2/cm-regbits-24xx.h
@@ -14,38 +14,8 @@
14 * published by the Free Software Foundation. 14 * published by the Free Software Foundation.
15 */ 15 */
16 16
17#define OMAP24XX_EN_CAM_SHIFT 31
18#define OMAP24XX_EN_WDT4_SHIFT 29
19#define OMAP2420_EN_WDT3_SHIFT 28
20#define OMAP24XX_EN_MSPRO_SHIFT 27
21#define OMAP24XX_EN_FAC_SHIFT 25
22#define OMAP2420_EN_EAC_SHIFT 24
23#define OMAP24XX_EN_HDQ_SHIFT 23
24#define OMAP2420_EN_I2C2_SHIFT 20
25#define OMAP2420_EN_I2C1_SHIFT 19
26#define OMAP2430_EN_MCBSP5_SHIFT 5
27#define OMAP2430_EN_MCBSP4_SHIFT 4
28#define OMAP2430_EN_MCBSP3_SHIFT 3
29#define OMAP24XX_EN_SSI_SHIFT 1
30#define OMAP24XX_EN_MPU_WDT_SHIFT 3
31#define OMAP24XX_CLKSEL_MPU_SHIFT 0
32#define OMAP24XX_CLKSEL_MPU_WIDTH 5
33#define OMAP24XX_AUTOSTATE_MPU_MASK (1 << 0) 17#define OMAP24XX_AUTOSTATE_MPU_MASK (1 << 0)
34#define OMAP24XX_EN_TV_SHIFT 2
35#define OMAP24XX_EN_DSS2_SHIFT 1
36#define OMAP24XX_EN_DSS1_SHIFT 0
37#define OMAP24XX_EN_DSS1_MASK (1 << 0) 18#define OMAP24XX_EN_DSS1_MASK (1 << 0)
38#define OMAP2430_EN_I2CHS2_SHIFT 20
39#define OMAP2430_EN_I2CHS1_SHIFT 19
40#define OMAP2430_EN_MMCHSDB2_SHIFT 17
41#define OMAP2430_EN_MMCHSDB1_SHIFT 16
42#define OMAP24XX_EN_MAILBOXES_SHIFT 30
43#define OMAP2430_EN_SDRC_SHIFT 2
44#define OMAP24XX_EN_PKA_SHIFT 4
45#define OMAP24XX_EN_AES_SHIFT 3
46#define OMAP24XX_EN_RNG_SHIFT 2
47#define OMAP24XX_EN_SHA_SHIFT 1
48#define OMAP24XX_EN_DES_SHIFT 0
49#define OMAP24XX_ST_MAILBOXES_SHIFT 30 19#define OMAP24XX_ST_MAILBOXES_SHIFT 30
50#define OMAP24XX_ST_HDQ_SHIFT 23 20#define OMAP24XX_ST_HDQ_SHIFT 23
51#define OMAP2420_ST_I2C2_SHIFT 20 21#define OMAP2420_ST_I2C2_SHIFT 20
@@ -54,81 +24,30 @@
54#define OMAP2430_ST_I2CHS2_SHIFT 20 24#define OMAP2430_ST_I2CHS2_SHIFT 20
55#define OMAP24XX_ST_MCBSP2_SHIFT 16 25#define OMAP24XX_ST_MCBSP2_SHIFT 16
56#define OMAP24XX_ST_MCBSP1_SHIFT 15 26#define OMAP24XX_ST_MCBSP1_SHIFT 15
57#define OMAP24XX_ST_DSS_SHIFT 0
58#define OMAP2430_ST_MCBSP5_SHIFT 5 27#define OMAP2430_ST_MCBSP5_SHIFT 5
59#define OMAP2430_ST_MCBSP4_SHIFT 4 28#define OMAP2430_ST_MCBSP4_SHIFT 4
60#define OMAP2430_ST_MCBSP3_SHIFT 3 29#define OMAP2430_ST_MCBSP3_SHIFT 3
61#define OMAP24XX_ST_AES_SHIFT 3 30#define OMAP24XX_ST_AES_SHIFT 3
62#define OMAP24XX_ST_RNG_SHIFT 2 31#define OMAP24XX_ST_RNG_SHIFT 2
63#define OMAP24XX_ST_SHA_SHIFT 1 32#define OMAP24XX_ST_SHA_SHIFT 1
64#define OMAP24XX_AUTO_SDRC_SHIFT 2
65#define OMAP24XX_AUTO_GPMC_SHIFT 1
66#define OMAP24XX_AUTO_SDMA_SHIFT 0
67#define OMAP24XX_CLKSEL_USB_MASK (0x7 << 25)
68#define OMAP24XX_CLKSEL_SSI_MASK (0x1f << 20)
69#define OMAP2420_CLKSEL_VLYNQ_MASK (0x1f << 15)
70#define OMAP24XX_CLKSEL_DSS2_MASK (0x1 << 13) 33#define OMAP24XX_CLKSEL_DSS2_MASK (0x1 << 13)
71#define OMAP24XX_CLKSEL_DSS1_MASK (0x1f << 8)
72#define OMAP24XX_CLKSEL_L4_SHIFT 5
73#define OMAP24XX_CLKSEL_L4_WIDTH 2
74#define OMAP24XX_CLKSEL_L3_SHIFT 0
75#define OMAP24XX_CLKSEL_L3_WIDTH 5
76#define OMAP24XX_CLKSEL_GPT12_MASK (0x3 << 22)
77#define OMAP24XX_CLKSEL_GPT11_MASK (0x3 << 20)
78#define OMAP24XX_CLKSEL_GPT10_MASK (0x3 << 18)
79#define OMAP24XX_CLKSEL_GPT9_MASK (0x3 << 16)
80#define OMAP24XX_CLKSEL_GPT8_MASK (0x3 << 14)
81#define OMAP24XX_CLKSEL_GPT7_MASK (0x3 << 12)
82#define OMAP24XX_CLKSEL_GPT6_MASK (0x3 << 10)
83#define OMAP24XX_CLKSEL_GPT5_MASK (0x3 << 8)
84#define OMAP24XX_CLKSEL_GPT4_MASK (0x3 << 6)
85#define OMAP24XX_CLKSEL_GPT3_MASK (0x3 << 4)
86#define OMAP24XX_CLKSEL_GPT2_MASK (0x3 << 2)
87#define OMAP24XX_AUTOSTATE_DSS_MASK (1 << 2) 34#define OMAP24XX_AUTOSTATE_DSS_MASK (1 << 2)
88#define OMAP24XX_AUTOSTATE_L4_MASK (1 << 1) 35#define OMAP24XX_AUTOSTATE_L4_MASK (1 << 1)
89#define OMAP24XX_AUTOSTATE_L3_MASK (1 << 0) 36#define OMAP24XX_AUTOSTATE_L3_MASK (1 << 0)
90#define OMAP24XX_EN_3D_SHIFT 2
91#define OMAP24XX_EN_2D_SHIFT 1
92#define OMAP24XX_AUTOSTATE_GFX_MASK (1 << 0) 37#define OMAP24XX_AUTOSTATE_GFX_MASK (1 << 0)
93#define OMAP2430_EN_ICR_SHIFT 6
94#define OMAP24XX_EN_OMAPCTRL_SHIFT 5
95#define OMAP24XX_EN_WDT1_SHIFT 4
96#define OMAP24XX_EN_32KSYNC_SHIFT 1
97#define OMAP24XX_ST_MPU_WDT_SHIFT 3 38#define OMAP24XX_ST_MPU_WDT_SHIFT 3
98#define OMAP24XX_ST_32KSYNC_SHIFT 1 39#define OMAP24XX_ST_32KSYNC_SHIFT 1
99#define OMAP24XX_CLKSEL_GPT1_MASK (0x3 << 0)
100#define OMAP24XX_EN_54M_PLL_SHIFT 6 40#define OMAP24XX_EN_54M_PLL_SHIFT 6
101#define OMAP24XX_EN_96M_PLL_SHIFT 2 41#define OMAP24XX_EN_96M_PLL_SHIFT 2
102#define OMAP24XX_EN_DPLL_MASK (0x3 << 0)
103#define OMAP24XX_ST_54M_APLL_SHIFT 9 42#define OMAP24XX_ST_54M_APLL_SHIFT 9
104#define OMAP24XX_ST_96M_APLL_SHIFT 8 43#define OMAP24XX_ST_96M_APLL_SHIFT 8
105#define OMAP24XX_AUTO_54M_MASK (0x3 << 6) 44#define OMAP24XX_AUTO_54M_MASK (0x3 << 6)
106#define OMAP24XX_AUTO_96M_MASK (0x3 << 2) 45#define OMAP24XX_AUTO_96M_MASK (0x3 << 2)
107#define OMAP24XX_AUTO_DPLL_SHIFT 0 46#define OMAP24XX_AUTO_DPLL_SHIFT 0
108#define OMAP24XX_AUTO_DPLL_MASK (0x3 << 0) 47#define OMAP24XX_AUTO_DPLL_MASK (0x3 << 0)
109#define OMAP24XX_APLLS_CLKIN_SHIFT 23
110#define OMAP24XX_APLLS_CLKIN_WIDTH 3
111#define OMAP24XX_APLLS_CLKIN_MASK (0x7 << 23)
112#define OMAP24XX_DPLL_MULT_MASK (0x3ff << 12)
113#define OMAP24XX_DPLL_DIV_MASK (0xf << 8)
114#define OMAP24XX_54M_SOURCE_SHIFT 5
115#define OMAP24XX_54M_SOURCE_WIDTH 1
116#define OMAP2430_96M_SOURCE_SHIFT 4
117#define OMAP2430_96M_SOURCE_WIDTH 1
118#define OMAP24XX_48M_SOURCE_MASK (1 << 3)
119#define OMAP24XX_CORE_CLK_SRC_MASK (0x3 << 0) 48#define OMAP24XX_CORE_CLK_SRC_MASK (0x3 << 0)
120#define OMAP2420_EN_IVA_COP_SHIFT 10
121#define OMAP2420_EN_IVA_MPU_SHIFT 8
122#define OMAP24XX_CM_FCLKEN_DSP_EN_DSP_SHIFT 0
123#define OMAP2420_EN_DSP_IPI_SHIFT 1
124#define OMAP2420_CLKSEL_IVA_MASK (0x1f << 8)
125#define OMAP24XX_CLKSEL_DSP_IF_MASK (0x3 << 5)
126#define OMAP24XX_CLKSEL_DSP_MASK (0x1f << 0)
127#define OMAP2420_AUTOSTATE_IVA_MASK (1 << 8) 49#define OMAP2420_AUTOSTATE_IVA_MASK (1 << 8)
128#define OMAP24XX_AUTOSTATE_DSP_MASK (1 << 0) 50#define OMAP24XX_AUTOSTATE_DSP_MASK (1 << 0)
129#define OMAP2430_EN_OSC_SHIFT 1
130#define OMAP2430_CM_ICLKEN_MDM_EN_MDM_SHIFT 0
131#define OMAP2430_CLKSEL_MDM_MASK (0xf << 0)
132#define OMAP2430_AUTOSTATE_MDM_MASK (1 << 0) 51#define OMAP2430_AUTOSTATE_MDM_MASK (1 << 0)
133#define OMAP24XX_CLKSTCTRL_DISABLE_AUTO 0x0 52#define OMAP24XX_CLKSTCTRL_DISABLE_AUTO 0x0
134#define OMAP24XX_CLKSTCTRL_ENABLE_AUTO 0x1 53#define OMAP24XX_CLKSTCTRL_ENABLE_AUTO 0x1
diff --git a/arch/arm/mach-omap2/cm-regbits-34xx.h b/arch/arm/mach-omap2/cm-regbits-34xx.h
index ee6c784cd6b7..38656ce2432c 100644
--- a/arch/arm/mach-omap2/cm-regbits-34xx.h
+++ b/arch/arm/mach-omap2/cm-regbits-34xx.h
@@ -14,68 +14,11 @@
14 * published by the Free Software Foundation. 14 * published by the Free Software Foundation.
15 */ 15 */
16 16
17#define OMAP3430ES2_EN_MMC3_SHIFT 30
18#define OMAP3430_EN_MSPRO_SHIFT 23
19#define OMAP3430_EN_HDQ_SHIFT 22
20#define OMAP3430ES1_EN_FSHOSTUSB_SHIFT 5
21#define OMAP3430ES1_EN_D2D_SHIFT 3
22#define OMAP3430_EN_SSI_SHIFT 0
23#define OMAP3430ES2_EN_USBTLL_SHIFT 2
24#define OMAP3430_EN_WDT2_SHIFT 5
25#define OMAP3430_EN_CAM_SHIFT 0
26#define OMAP3430_EN_WDT3_SHIFT 12
27#define OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_MASK (1 << 0) 17#define OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_MASK (1 << 0)
28#define OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_SHIFT 0
29#define OMAP3430_IVA2_DPLL_FREQSEL_SHIFT 4
30#define OMAP3430_IVA2_DPLL_FREQSEL_MASK (0xf << 4)
31#define OMAP3430_EN_IVA2_DPLL_DRIFTGUARD_SHIFT 3
32#define OMAP3430_EN_IVA2_DPLL_SHIFT 0
33#define OMAP3430_EN_IVA2_DPLL_MASK (0x7 << 0)
34#define OMAP3430_ST_IVA2_SHIFT 0 18#define OMAP3430_ST_IVA2_SHIFT 0
35#define OMAP3430_ST_IVA2_CLK_MASK (1 << 0)
36#define OMAP3430_AUTO_IVA2_DPLL_SHIFT 0
37#define OMAP3430_AUTO_IVA2_DPLL_MASK (0x7 << 0)
38#define OMAP3430_IVA2_CLK_SRC_SHIFT 19
39#define OMAP3430_IVA2_CLK_SRC_WIDTH 3
40#define OMAP3430_IVA2_DPLL_MULT_MASK (0x7ff << 8)
41#define OMAP3430_IVA2_DPLL_DIV_MASK (0x7f << 0)
42#define OMAP3430_IVA2_DPLL_CLKOUT_DIV_SHIFT 0
43#define OMAP3430_IVA2_DPLL_CLKOUT_DIV_WIDTH 5
44#define OMAP3430_CLKTRCTRL_IVA2_MASK (0x3 << 0) 19#define OMAP3430_CLKTRCTRL_IVA2_MASK (0x3 << 0)
45#define OMAP3430_CLKACTIVITY_IVA2_MASK (1 << 0) 20#define OMAP3430_CLKACTIVITY_IVA2_MASK (1 << 0)
46#define OMAP3430_MPU_DPLL_FREQSEL_MASK (0xf << 4)
47#define OMAP3430_EN_MPU_DPLL_DRIFTGUARD_SHIFT 3
48#define OMAP3430_EN_MPU_DPLL_MASK (0x7 << 0)
49#define OMAP3430_ST_MPU_CLK_SHIFT 0
50#define OMAP3430_ST_MPU_CLK_MASK (1 << 0)
51#define OMAP3430_ST_MPU_CLK_WIDTH 1
52#define OMAP3430_AUTO_MPU_DPLL_MASK (0x7 << 0)
53#define OMAP3430_MPU_CLK_SRC_SHIFT 19
54#define OMAP3430_MPU_CLK_SRC_WIDTH 3
55#define OMAP3430_MPU_DPLL_MULT_MASK (0x7ff << 8)
56#define OMAP3430_MPU_DPLL_DIV_MASK (0x7f << 0)
57#define OMAP3430_MPU_DPLL_CLKOUT_DIV_SHIFT 0
58#define OMAP3430_MPU_DPLL_CLKOUT_DIV_WIDTH 5
59#define OMAP3430_CLKTRCTRL_MPU_MASK (0x3 << 0) 21#define OMAP3430_CLKTRCTRL_MPU_MASK (0x3 << 0)
60#define OMAP3430_EN_MODEM_SHIFT 31
61#define OMAP3430_EN_ICR_SHIFT 29
62#define OMAP3430_EN_AES2_SHIFT 28
63#define OMAP3430_EN_SHA12_SHIFT 27
64#define OMAP3430_EN_DES2_SHIFT 26
65#define OMAP3430ES1_EN_FAC_SHIFT 8
66#define OMAP3430_EN_MAILBOXES_SHIFT 7
67#define OMAP3430_EN_OMAPCTRL_SHIFT 6
68#define OMAP3430_EN_SAD2D_SHIFT 3
69#define OMAP3430_EN_SDRC_SHIFT 1
70#define AM35XX_EN_IPSS_SHIFT 4
71#define OMAP3430_EN_PKA_SHIFT 4
72#define OMAP3430_EN_AES1_SHIFT 3
73#define OMAP3430_EN_RNG_SHIFT 2
74#define OMAP3430_EN_SHA11_SHIFT 1
75#define OMAP3430_EN_DES1_SHIFT 0
76#define OMAP3430_EN_MAD2D_SHIFT 3
77#define OMAP3430ES2_EN_TS_SHIFT 1
78#define OMAP3430ES2_EN_CPEFUSE_SHIFT 0
79#define OMAP3430_ST_AES2_SHIFT 28 22#define OMAP3430_ST_AES2_SHIFT 28
80#define OMAP3430_ST_SHA12_SHIFT 27 23#define OMAP3430_ST_SHA12_SHIFT 27
81#define AM35XX_ST_UART4_SHIFT 23 24#define AM35XX_ST_UART4_SHIFT 23
@@ -84,131 +27,26 @@
84#define OMAP3430_ST_MAILBOXES_SHIFT 7 27#define OMAP3430_ST_MAILBOXES_SHIFT 7
85#define OMAP3430_ST_SAD2D_SHIFT 3 28#define OMAP3430_ST_SAD2D_SHIFT 3
86#define OMAP3430_ST_SDMA_SHIFT 2 29#define OMAP3430_ST_SDMA_SHIFT 2
87#define AM35XX_ST_IPSS_SHIFT 5
88#define OMAP3430ES2_ST_USBTLL_SHIFT 2 30#define OMAP3430ES2_ST_USBTLL_SHIFT 2
89#define OMAP3430_CLKSEL_SSI_MASK (0xf << 8)
90#define OMAP3430_CLKSEL_GPT11_MASK (1 << 7)
91#define OMAP3430_CLKSEL_GPT10_MASK (1 << 6)
92#define OMAP3430ES1_CLKSEL_FSHOSTUSB_MASK (0x3 << 4)
93#define OMAP3430_CLKSEL_L4_SHIFT 2
94#define OMAP3430_CLKSEL_L4_WIDTH 2
95#define OMAP3430_CLKSEL_L3_SHIFT 0
96#define OMAP3430_CLKSEL_L3_WIDTH 2
97#define OMAP3630_CLKSEL_96M_MASK (0x3 << 12)
98#define OMAP3430ES1_CLKTRCTRL_D2D_MASK (0x3 << 4) 31#define OMAP3430ES1_CLKTRCTRL_D2D_MASK (0x3 << 4)
99#define OMAP3430_CLKTRCTRL_L4_MASK (0x3 << 2) 32#define OMAP3430_CLKTRCTRL_L4_MASK (0x3 << 2)
100#define OMAP3430_CLKTRCTRL_L3_MASK (0x3 << 0) 33#define OMAP3430_CLKTRCTRL_L3_MASK (0x3 << 0)
101#define OMAP3430ES1_EN_3D_SHIFT 2
102#define OMAP3430ES1_EN_2D_SHIFT 1
103#define OMAP3430ES1_CLKTRCTRL_GFX_MASK (0x3 << 0) 34#define OMAP3430ES1_CLKTRCTRL_GFX_MASK (0x3 << 0)
104#define OMAP3430ES2_CM_FCLKEN_SGX_EN_SGX_SHIFT 1
105#define OMAP3430ES2_CM_ICLKEN_SGX_EN_SGX_SHIFT 0
106#define OMAP3430ES2_CLKSEL_SGX_MASK (0x7 << 0)
107#define OMAP3430ES2_CLKTRCTRL_SGX_MASK (0x3 << 0) 35#define OMAP3430ES2_CLKTRCTRL_SGX_MASK (0x3 << 0)
108#define OMAP3430ES2_EN_USIMOCP_SHIFT 9
109#define OMAP3430_EN_WDT1_SHIFT 4
110#define OMAP3430_EN_32KSYNC_SHIFT 2
111#define OMAP3430_ST_WDT2_SHIFT 5 36#define OMAP3430_ST_WDT2_SHIFT 5
112#define OMAP3430_ST_32KSYNC_SHIFT 2 37#define OMAP3430_ST_32KSYNC_SHIFT 2
113#define OMAP3430ES2_CLKSEL_USIMOCP_MASK (0xf << 3)
114#define OMAP3430_CLKSEL_RM_SHIFT 1
115#define OMAP3430_CLKSEL_RM_WIDTH 2
116#define OMAP3430_CLKSEL_GPT1_MASK (1 << 0)
117#define OMAP3430_PWRDN_EMU_PERIPH_SHIFT 31
118#define OMAP3430_PWRDN_CAM_SHIFT 30
119#define OMAP3430_PWRDN_DSS1_SHIFT 29
120#define OMAP3430_PWRDN_TV_SHIFT 28
121#define OMAP3430_PWRDN_96M_SHIFT 27
122#define OMAP3430_PERIPH_DPLL_FREQSEL_MASK (0xf << 20)
123#define OMAP3430_EN_PERIPH_DPLL_DRIFTGUARD_SHIFT 19
124#define OMAP3430_EN_PERIPH_DPLL_MASK (0x7 << 16)
125#define OMAP3430_PWRDN_EMU_CORE_SHIFT 12
126#define OMAP3430_CORE_DPLL_FREQSEL_MASK (0xf << 4)
127#define OMAP3430_EN_CORE_DPLL_DRIFTGUARD_SHIFT 3
128#define OMAP3430_EN_CORE_DPLL_MASK (0x7 << 0)
129#define OMAP3430ES2_PERIPH2_DPLL_FREQSEL_MASK (0xf << 4)
130#define OMAP3430ES2_EN_PERIPH2_DPLL_DRIFTGUARD_SHIFT 3
131#define OMAP3430ES2_EN_PERIPH2_DPLL_MASK (0x7 << 0)
132#define OMAP3430_ST_PERIPH_CLK_MASK (1 << 1)
133#define OMAP3430_ST_CORE_CLK_MASK (1 << 0)
134#define OMAP3430ES2_ST_PERIPH2_CLK_MASK (1 << 0)
135#define OMAP3430_AUTO_PERIPH_DPLL_MASK (0x7 << 3) 38#define OMAP3430_AUTO_PERIPH_DPLL_MASK (0x7 << 3)
136#define OMAP3430_AUTO_CORE_DPLL_MASK (0x7 << 0)
137#define OMAP3430ES2_AUTO_PERIPH2_DPLL_MASK (0x7 << 0)
138#define OMAP3430_CORE_DPLL_CLKOUT_DIV_SHIFT 27
139#define OMAP3430_CORE_DPLL_CLKOUT_DIV_WIDTH 5
140#define OMAP3430_CORE_DPLL_MULT_MASK (0x7ff << 16)
141#define OMAP3430_CORE_DPLL_DIV_MASK (0x7f << 8)
142#define OMAP3430_SOURCE_96M_SHIFT 6
143#define OMAP3430_SOURCE_96M_WIDTH 1
144#define OMAP3430_SOURCE_54M_SHIFT 5
145#define OMAP3430_SOURCE_54M_WIDTH 1
146#define OMAP3430_SOURCE_48M_MASK (1 << 3)
147#define OMAP3430_PERIPH_DPLL_MULT_MASK (0x7ff << 8)
148#define OMAP3630_PERIPH_DPLL_MULT_MASK (0xfff << 8)
149#define OMAP3430_PERIPH_DPLL_DIV_MASK (0x7f << 0)
150#define OMAP3630_PERIPH_DPLL_DCO_SEL_MASK (0x7 << 21)
151#define OMAP3630_PERIPH_DPLL_SD_DIV_MASK (0xff << 24)
152#define OMAP3430_DIV_96M_SHIFT 0
153#define OMAP3630_DIV_96M_WIDTH 6
154#define OMAP3430ES2_PERIPH2_DPLL_MULT_MASK (0x7ff << 8)
155#define OMAP3430ES2_PERIPH2_DPLL_DIV_MASK (0x7f << 0)
156#define OMAP3430ES2_DIV_120M_SHIFT 0
157#define OMAP3430ES2_DIV_120M_WIDTH 5
158#define OMAP3430_CLKOUT2_EN_SHIFT 7
159#define OMAP3430_CLKOUT2_DIV_SHIFT 3
160#define OMAP3430_CLKOUT2_DIV_WIDTH 3
161#define OMAP3430_CLKOUT2SOURCE_MASK (0x3 << 0)
162#define OMAP3430_EN_TV_SHIFT 2
163#define OMAP3430_EN_DSS2_SHIFT 1
164#define OMAP3430_EN_DSS1_SHIFT 0
165#define OMAP3430_CM_ICLKEN_DSS_EN_DSS_SHIFT 0
166#define OMAP3430ES2_ST_DSS_IDLE_SHIFT 1 39#define OMAP3430ES2_ST_DSS_IDLE_SHIFT 1
167#define OMAP3430ES2_ST_DSS_STDBY_SHIFT 0
168#define OMAP3430ES1_ST_DSS_SHIFT 0
169#define OMAP3430_CLKSEL_TV_SHIFT 8
170#define OMAP3630_CLKSEL_TV_WIDTH 6
171#define OMAP3430_CLKSEL_DSS1_SHIFT 0
172#define OMAP3630_CLKSEL_DSS1_WIDTH 6
173#define OMAP3430_CLKTRCTRL_DSS_MASK (0x3 << 0) 40#define OMAP3430_CLKTRCTRL_DSS_MASK (0x3 << 0)
174#define OMAP3430_EN_CSI2_SHIFT 1
175#define OMAP3430_CLKSEL_CAM_SHIFT 0
176#define OMAP3630_CLKSEL_CAM_WIDTH 6
177#define OMAP3430_CLKTRCTRL_CAM_MASK (0x3 << 0) 41#define OMAP3430_CLKTRCTRL_CAM_MASK (0x3 << 0)
178#define OMAP3430_ST_MCBSP4_SHIFT 2 42#define OMAP3430_ST_MCBSP4_SHIFT 2
179#define OMAP3430_ST_MCBSP3_SHIFT 1 43#define OMAP3430_ST_MCBSP3_SHIFT 1
180#define OMAP3430_ST_MCBSP2_SHIFT 0 44#define OMAP3430_ST_MCBSP2_SHIFT 0
181#define OMAP3430_CLKSEL_GPT9_MASK (1 << 7)
182#define OMAP3430_CLKSEL_GPT8_MASK (1 << 6)
183#define OMAP3430_CLKSEL_GPT7_MASK (1 << 5)
184#define OMAP3430_CLKSEL_GPT6_MASK (1 << 4)
185#define OMAP3430_CLKSEL_GPT5_MASK (1 << 3)
186#define OMAP3430_CLKSEL_GPT4_MASK (1 << 2)
187#define OMAP3430_CLKSEL_GPT3_MASK (1 << 1)
188#define OMAP3430_CLKSEL_GPT2_MASK (1 << 0)
189#define OMAP3430_CLKTRCTRL_PER_MASK (0x3 << 0) 45#define OMAP3430_CLKTRCTRL_PER_MASK (0x3 << 0)
190#define OMAP3430_DIV_DPLL4_SHIFT 24
191#define OMAP3630_DIV_DPLL4_WIDTH 6
192#define OMAP3430_DIV_DPLL3_SHIFT 16
193#define OMAP3430_DIV_DPLL3_WIDTH 5
194#define OMAP3430_CLKSEL_TRACECLK_SHIFT 11
195#define OMAP3430_CLKSEL_TRACECLK_WIDTH 3
196#define OMAP3430_CLKSEL_PCLK_SHIFT 8
197#define OMAP3430_CLKSEL_PCLK_WIDTH 3
198#define OMAP3430_CLKSEL_PCLKX2_SHIFT 6
199#define OMAP3430_CLKSEL_PCLKX2_WIDTH 2
200#define OMAP3430_CLKSEL_ATCLK_SHIFT 4
201#define OMAP3430_CLKSEL_ATCLK_WIDTH 2
202#define OMAP3430_TRACE_MUX_CTRL_SHIFT 2
203#define OMAP3430_TRACE_MUX_CTRL_WIDTH 2
204#define OMAP3430_MUX_CTRL_MASK (0x3 << 0)
205#define OMAP3430_CLKTRCTRL_EMU_MASK (0x3 << 0) 46#define OMAP3430_CLKTRCTRL_EMU_MASK (0x3 << 0)
206#define OMAP3430_CLKTRCTRL_NEON_MASK (0x3 << 0) 47#define OMAP3430_CLKTRCTRL_NEON_MASK (0x3 << 0)
207#define OMAP3430ES2_EN_USBHOST2_SHIFT 1 48#define OMAP3430ES2_EN_USBHOST2_SHIFT 1
208#define OMAP3430ES2_EN_USBHOST1_SHIFT 0
209#define OMAP3430ES2_EN_USBHOST_SHIFT 0
210#define OMAP3430ES2_ST_USBHOST_IDLE_SHIFT 1 49#define OMAP3430ES2_ST_USBHOST_IDLE_SHIFT 1
211#define OMAP3430ES2_ST_USBHOST_STDBY_SHIFT 0
212#define OMAP3430ES2_CLKTRCTRL_USBHOST_MASK (3 << 0) 50#define OMAP3430ES2_CLKTRCTRL_USBHOST_MASK (3 << 0)
213#define OMAP34XX_CLKSTCTRL_DISABLE_AUTO 0x0 51#define OMAP34XX_CLKSTCTRL_DISABLE_AUTO 0x0
214#define OMAP34XX_CLKSTCTRL_FORCE_SLEEP 0x1 52#define OMAP34XX_CLKSTCTRL_FORCE_SLEEP 0x1
diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
index df2c29edbbcd..68ba5f472f6b 100644
--- a/arch/arm/mach-omap2/id.c
+++ b/arch/arm/mach-omap2/id.c
@@ -657,8 +657,11 @@ void __init dra7xxx_check_revision(void)
657{ 657{
658 u32 idcode; 658 u32 idcode;
659 u16 hawkeye; 659 u16 hawkeye;
660 u8 rev; 660 u8 rev, package;
661 struct omap_die_id odi;
661 662
663 omap_get_die_id(&odi);
664 package = (odi.id_2 >> 16) & 0x3;
662 idcode = read_tap_reg(OMAP_TAP_IDCODE); 665 idcode = read_tap_reg(OMAP_TAP_IDCODE);
663 hawkeye = (idcode >> 12) & 0xffff; 666 hawkeye = (idcode >> 12) & 0xffff;
664 rev = (idcode >> 28) & 0xff; 667 rev = (idcode >> 28) & 0xff;
@@ -667,7 +670,17 @@ void __init dra7xxx_check_revision(void)
667 switch (rev) { 670 switch (rev) {
668 case 0: 671 case 0:
669 default: 672 default:
670 omap_revision = DRA762_REV_ES1_0; 673 switch (package) {
674 case 0x2:
675 omap_revision = DRA762_ABZ_REV_ES1_0;
676 break;
677 case 0x3:
678 omap_revision = DRA762_ACD_REV_ES1_0;
679 break;
680 default:
681 omap_revision = DRA762_REV_ES1_0;
682 break;
683 }
671 break; 684 break;
672 } 685 }
673 break; 686 break;
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c
index 5eff27e4f24b..1cfe9aff4ac7 100644
--- a/arch/arm/mach-omap2/omap_hwmod.c
+++ b/arch/arm/mach-omap2/omap_hwmod.c
@@ -715,7 +715,7 @@ static const struct of_device_id ti_clkctrl_match_table[] __initconst = {
715 { } 715 { }
716}; 716};
717 717
718static int _setup_clkctrl_provider(struct device_node *np) 718static int __init _setup_clkctrl_provider(struct device_node *np)
719{ 719{
720 const __be32 *addrp; 720 const __be32 *addrp;
721 struct clkctrl_provider *provider; 721 struct clkctrl_provider *provider;
@@ -743,7 +743,7 @@ static int _setup_clkctrl_provider(struct device_node *np)
743 return 0; 743 return 0;
744} 744}
745 745
746static int _init_clkctrl_providers(void) 746static int __init _init_clkctrl_providers(void)
747{ 747{
748 struct device_node *np; 748 struct device_node *np;
749 int ret = 0; 749 int ret = 0;
diff --git a/arch/arm/mach-omap2/omap_hwmod.h b/arch/arm/mach-omap2/omap_hwmod.h
index df2239a58555..903685252240 100644
--- a/arch/arm/mach-omap2/omap_hwmod.h
+++ b/arch/arm/mach-omap2/omap_hwmod.h
@@ -343,11 +343,8 @@ struct omap_hwmod_class_sysconfig {
343/** 343/**
344 * struct omap_hwmod_omap2_prcm - OMAP2/3-specific PRCM data 344 * struct omap_hwmod_omap2_prcm - OMAP2/3-specific PRCM data
345 * @module_offs: PRCM submodule offset from the start of the PRM/CM 345 * @module_offs: PRCM submodule offset from the start of the PRM/CM
346 * @prcm_reg_id: PRCM register ID (e.g., 3 for CM_AUTOIDLE3)
347 * @module_bit: register bit shift for AUTOIDLE, WKST, WKEN, GRPSEL regs
348 * @idlest_reg_id: IDLEST register ID (e.g., 3 for CM_IDLEST3) 346 * @idlest_reg_id: IDLEST register ID (e.g., 3 for CM_IDLEST3)
349 * @idlest_idle_bit: register bit shift for CM_IDLEST slave idle bit 347 * @idlest_idle_bit: register bit shift for CM_IDLEST slave idle bit
350 * @idlest_stdby_bit: register bit shift for CM_IDLEST master standby bit
351 * 348 *
352 * @prcm_reg_id and @module_bit are specific to the AUTOIDLE, WKST, 349 * @prcm_reg_id and @module_bit are specific to the AUTOIDLE, WKST,
353 * WKEN, GRPSEL registers. In an ideal world, no extra information 350 * WKEN, GRPSEL registers. In an ideal world, no extra information
@@ -357,11 +354,8 @@ struct omap_hwmod_class_sysconfig {
357 */ 354 */
358struct omap_hwmod_omap2_prcm { 355struct omap_hwmod_omap2_prcm {
359 s16 module_offs; 356 s16 module_offs;
360 u8 prcm_reg_id;
361 u8 module_bit;
362 u8 idlest_reg_id; 357 u8 idlest_reg_id;
363 u8 idlest_idle_bit; 358 u8 idlest_idle_bit;
364 u8 idlest_stdby_bit;
365}; 359};
366 360
367/* 361/*
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
index 1a15a347945a..0afb014b211f 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
@@ -111,8 +111,6 @@ static struct omap_hwmod omap2420_i2c1_hwmod = {
111 .prcm = { 111 .prcm = {
112 .omap2 = { 112 .omap2 = {
113 .module_offs = CORE_MOD, 113 .module_offs = CORE_MOD,
114 .prcm_reg_id = 1,
115 .module_bit = OMAP2420_EN_I2C1_SHIFT,
116 .idlest_reg_id = 1, 114 .idlest_reg_id = 1,
117 .idlest_idle_bit = OMAP2420_ST_I2C1_SHIFT, 115 .idlest_idle_bit = OMAP2420_ST_I2C1_SHIFT,
118 }, 116 },
@@ -134,8 +132,6 @@ static struct omap_hwmod omap2420_i2c2_hwmod = {
134 .prcm = { 132 .prcm = {
135 .omap2 = { 133 .omap2 = {
136 .module_offs = CORE_MOD, 134 .module_offs = CORE_MOD,
137 .prcm_reg_id = 1,
138 .module_bit = OMAP2420_EN_I2C2_SHIFT,
139 .idlest_reg_id = 1, 135 .idlest_reg_id = 1,
140 .idlest_idle_bit = OMAP2420_ST_I2C2_SHIFT, 136 .idlest_idle_bit = OMAP2420_ST_I2C2_SHIFT,
141 }, 137 },
@@ -167,8 +163,6 @@ static struct omap_hwmod omap2420_mailbox_hwmod = {
167 .main_clk = "mailboxes_ick", 163 .main_clk = "mailboxes_ick",
168 .prcm = { 164 .prcm = {
169 .omap2 = { 165 .omap2 = {
170 .prcm_reg_id = 1,
171 .module_bit = OMAP24XX_EN_MAILBOXES_SHIFT,
172 .module_offs = CORE_MOD, 166 .module_offs = CORE_MOD,
173 .idlest_reg_id = 1, 167 .idlest_reg_id = 1,
174 .idlest_idle_bit = OMAP24XX_ST_MAILBOXES_SHIFT, 168 .idlest_idle_bit = OMAP24XX_ST_MAILBOXES_SHIFT,
@@ -197,8 +191,6 @@ static struct omap_hwmod omap2420_mcbsp1_hwmod = {
197 .main_clk = "mcbsp1_fck", 191 .main_clk = "mcbsp1_fck",
198 .prcm = { 192 .prcm = {
199 .omap2 = { 193 .omap2 = {
200 .prcm_reg_id = 1,
201 .module_bit = OMAP24XX_EN_MCBSP1_SHIFT,
202 .module_offs = CORE_MOD, 194 .module_offs = CORE_MOD,
203 .idlest_reg_id = 1, 195 .idlest_reg_id = 1,
204 .idlest_idle_bit = OMAP24XX_ST_MCBSP1_SHIFT, 196 .idlest_idle_bit = OMAP24XX_ST_MCBSP1_SHIFT,
@@ -215,8 +207,6 @@ static struct omap_hwmod omap2420_mcbsp2_hwmod = {
215 .main_clk = "mcbsp2_fck", 207 .main_clk = "mcbsp2_fck",
216 .prcm = { 208 .prcm = {
217 .omap2 = { 209 .omap2 = {
218 .prcm_reg_id = 1,
219 .module_bit = OMAP24XX_EN_MCBSP2_SHIFT,
220 .module_offs = CORE_MOD, 210 .module_offs = CORE_MOD,
221 .idlest_reg_id = 1, 211 .idlest_reg_id = 1,
222 .idlest_idle_bit = OMAP24XX_ST_MCBSP2_SHIFT, 212 .idlest_idle_bit = OMAP24XX_ST_MCBSP2_SHIFT,
@@ -247,8 +237,6 @@ static struct omap_hwmod omap2420_msdi1_hwmod = {
247 .main_clk = "mmc_fck", 237 .main_clk = "mmc_fck",
248 .prcm = { 238 .prcm = {
249 .omap2 = { 239 .omap2 = {
250 .prcm_reg_id = 1,
251 .module_bit = OMAP2420_EN_MMC_SHIFT,
252 .module_offs = CORE_MOD, 240 .module_offs = CORE_MOD,
253 .idlest_reg_id = 1, 241 .idlest_reg_id = 1,
254 .idlest_idle_bit = OMAP2420_ST_MMC_SHIFT, 242 .idlest_idle_bit = OMAP2420_ST_MMC_SHIFT,
@@ -264,8 +252,6 @@ static struct omap_hwmod omap2420_hdq1w_hwmod = {
264 .prcm = { 252 .prcm = {
265 .omap2 = { 253 .omap2 = {
266 .module_offs = CORE_MOD, 254 .module_offs = CORE_MOD,
267 .prcm_reg_id = 1,
268 .module_bit = OMAP24XX_EN_HDQ_SHIFT,
269 .idlest_reg_id = 1, 255 .idlest_reg_id = 1,
270 .idlest_idle_bit = OMAP24XX_ST_HDQ_SHIFT, 256 .idlest_idle_bit = OMAP24XX_ST_HDQ_SHIFT,
271 }, 257 },
diff --git a/arch/arm/mach-omap2/omap_hwmod_2430_data.c b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
index 3801850bccec..013b26b305d2 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2430_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
@@ -97,8 +97,6 @@ static struct omap_hwmod omap2430_i2c1_hwmod = {
97 * to hwmod framework. 97 * to hwmod framework.
98 */ 98 */
99 .module_offs = CORE_MOD, 99 .module_offs = CORE_MOD,
100 .prcm_reg_id = 1,
101 .module_bit = OMAP2430_EN_I2CHS1_SHIFT,
102 .idlest_reg_id = 1, 100 .idlest_reg_id = 1,
103 .idlest_idle_bit = OMAP2430_ST_I2CHS1_SHIFT, 101 .idlest_idle_bit = OMAP2430_ST_I2CHS1_SHIFT,
104 }, 102 },
@@ -115,8 +113,6 @@ static struct omap_hwmod omap2430_i2c2_hwmod = {
115 .prcm = { 113 .prcm = {
116 .omap2 = { 114 .omap2 = {
117 .module_offs = CORE_MOD, 115 .module_offs = CORE_MOD,
118 .prcm_reg_id = 1,
119 .module_bit = OMAP2430_EN_I2CHS2_SHIFT,
120 .idlest_reg_id = 1, 116 .idlest_reg_id = 1,
121 .idlest_idle_bit = OMAP2430_ST_I2CHS2_SHIFT, 117 .idlest_idle_bit = OMAP2430_ST_I2CHS2_SHIFT,
122 }, 118 },
@@ -132,8 +128,6 @@ static struct omap_hwmod omap2430_gpio5_hwmod = {
132 .main_clk = "gpio5_fck", 128 .main_clk = "gpio5_fck",
133 .prcm = { 129 .prcm = {
134 .omap2 = { 130 .omap2 = {
135 .prcm_reg_id = 2,
136 .module_bit = OMAP2430_EN_GPIO5_SHIFT,
137 .module_offs = CORE_MOD, 131 .module_offs = CORE_MOD,
138 .idlest_reg_id = 2, 132 .idlest_reg_id = 2,
139 .idlest_idle_bit = OMAP2430_ST_GPIO5_SHIFT, 133 .idlest_idle_bit = OMAP2430_ST_GPIO5_SHIFT,
@@ -165,8 +159,6 @@ static struct omap_hwmod omap2430_mailbox_hwmod = {
165 .main_clk = "mailboxes_ick", 159 .main_clk = "mailboxes_ick",
166 .prcm = { 160 .prcm = {
167 .omap2 = { 161 .omap2 = {
168 .prcm_reg_id = 1,
169 .module_bit = OMAP24XX_EN_MAILBOXES_SHIFT,
170 .module_offs = CORE_MOD, 162 .module_offs = CORE_MOD,
171 .idlest_reg_id = 1, 163 .idlest_reg_id = 1,
172 .idlest_idle_bit = OMAP24XX_ST_MAILBOXES_SHIFT, 164 .idlest_idle_bit = OMAP24XX_ST_MAILBOXES_SHIFT,
@@ -185,8 +177,6 @@ static struct omap_hwmod omap2430_mcspi3_hwmod = {
185 .prcm = { 177 .prcm = {
186 .omap2 = { 178 .omap2 = {
187 .module_offs = CORE_MOD, 179 .module_offs = CORE_MOD,
188 .prcm_reg_id = 2,
189 .module_bit = OMAP2430_EN_MCSPI3_SHIFT,
190 .idlest_reg_id = 2, 180 .idlest_reg_id = 2,
191 .idlest_idle_bit = OMAP2430_ST_MCSPI3_SHIFT, 181 .idlest_idle_bit = OMAP2430_ST_MCSPI3_SHIFT,
192 }, 182 },
@@ -219,8 +209,6 @@ static struct omap_hwmod omap2430_usbhsotg_hwmod = {
219 .main_clk = "usbhs_ick", 209 .main_clk = "usbhs_ick",
220 .prcm = { 210 .prcm = {
221 .omap2 = { 211 .omap2 = {
222 .prcm_reg_id = 1,
223 .module_bit = OMAP2430_EN_USBHS_MASK,
224 .module_offs = CORE_MOD, 212 .module_offs = CORE_MOD,
225 .idlest_reg_id = 1, 213 .idlest_reg_id = 1,
226 .idlest_idle_bit = OMAP2430_ST_USBHS_SHIFT, 214 .idlest_idle_bit = OMAP2430_ST_USBHS_SHIFT,
@@ -266,8 +254,6 @@ static struct omap_hwmod omap2430_mcbsp1_hwmod = {
266 .main_clk = "mcbsp1_fck", 254 .main_clk = "mcbsp1_fck",
267 .prcm = { 255 .prcm = {
268 .omap2 = { 256 .omap2 = {
269 .prcm_reg_id = 1,
270 .module_bit = OMAP24XX_EN_MCBSP1_SHIFT,
271 .module_offs = CORE_MOD, 257 .module_offs = CORE_MOD,
272 .idlest_reg_id = 1, 258 .idlest_reg_id = 1,
273 .idlest_idle_bit = OMAP24XX_ST_MCBSP1_SHIFT, 259 .idlest_idle_bit = OMAP24XX_ST_MCBSP1_SHIFT,
@@ -284,8 +270,6 @@ static struct omap_hwmod omap2430_mcbsp2_hwmod = {
284 .main_clk = "mcbsp2_fck", 270 .main_clk = "mcbsp2_fck",
285 .prcm = { 271 .prcm = {
286 .omap2 = { 272 .omap2 = {
287 .prcm_reg_id = 1,
288 .module_bit = OMAP24XX_EN_MCBSP2_SHIFT,
289 .module_offs = CORE_MOD, 273 .module_offs = CORE_MOD,
290 .idlest_reg_id = 1, 274 .idlest_reg_id = 1,
291 .idlest_idle_bit = OMAP24XX_ST_MCBSP2_SHIFT, 275 .idlest_idle_bit = OMAP24XX_ST_MCBSP2_SHIFT,
@@ -302,8 +286,6 @@ static struct omap_hwmod omap2430_mcbsp3_hwmod = {
302 .main_clk = "mcbsp3_fck", 286 .main_clk = "mcbsp3_fck",
303 .prcm = { 287 .prcm = {
304 .omap2 = { 288 .omap2 = {
305 .prcm_reg_id = 1,
306 .module_bit = OMAP2430_EN_MCBSP3_SHIFT,
307 .module_offs = CORE_MOD, 289 .module_offs = CORE_MOD,
308 .idlest_reg_id = 2, 290 .idlest_reg_id = 2,
309 .idlest_idle_bit = OMAP2430_ST_MCBSP3_SHIFT, 291 .idlest_idle_bit = OMAP2430_ST_MCBSP3_SHIFT,
@@ -320,8 +302,6 @@ static struct omap_hwmod omap2430_mcbsp4_hwmod = {
320 .main_clk = "mcbsp4_fck", 302 .main_clk = "mcbsp4_fck",
321 .prcm = { 303 .prcm = {
322 .omap2 = { 304 .omap2 = {
323 .prcm_reg_id = 1,
324 .module_bit = OMAP2430_EN_MCBSP4_SHIFT,
325 .module_offs = CORE_MOD, 305 .module_offs = CORE_MOD,
326 .idlest_reg_id = 2, 306 .idlest_reg_id = 2,
327 .idlest_idle_bit = OMAP2430_ST_MCBSP4_SHIFT, 307 .idlest_idle_bit = OMAP2430_ST_MCBSP4_SHIFT,
@@ -338,8 +318,6 @@ static struct omap_hwmod omap2430_mcbsp5_hwmod = {
338 .main_clk = "mcbsp5_fck", 318 .main_clk = "mcbsp5_fck",
339 .prcm = { 319 .prcm = {
340 .omap2 = { 320 .omap2 = {
341 .prcm_reg_id = 1,
342 .module_bit = OMAP2430_EN_MCBSP5_SHIFT,
343 .module_offs = CORE_MOD, 321 .module_offs = CORE_MOD,
344 .idlest_reg_id = 2, 322 .idlest_reg_id = 2,
345 .idlest_idle_bit = OMAP2430_ST_MCBSP5_SHIFT, 323 .idlest_idle_bit = OMAP2430_ST_MCBSP5_SHIFT,
@@ -384,8 +362,6 @@ static struct omap_hwmod omap2430_mmc1_hwmod = {
384 .prcm = { 362 .prcm = {
385 .omap2 = { 363 .omap2 = {
386 .module_offs = CORE_MOD, 364 .module_offs = CORE_MOD,
387 .prcm_reg_id = 2,
388 .module_bit = OMAP2430_EN_MMCHS1_SHIFT,
389 .idlest_reg_id = 2, 365 .idlest_reg_id = 2,
390 .idlest_idle_bit = OMAP2430_ST_MMCHS1_SHIFT, 366 .idlest_idle_bit = OMAP2430_ST_MMCHS1_SHIFT,
391 }, 367 },
@@ -408,8 +384,6 @@ static struct omap_hwmod omap2430_mmc2_hwmod = {
408 .prcm = { 384 .prcm = {
409 .omap2 = { 385 .omap2 = {
410 .module_offs = CORE_MOD, 386 .module_offs = CORE_MOD,
411 .prcm_reg_id = 2,
412 .module_bit = OMAP2430_EN_MMCHS2_SHIFT,
413 .idlest_reg_id = 2, 387 .idlest_reg_id = 2,
414 .idlest_idle_bit = OMAP2430_ST_MMCHS2_SHIFT, 388 .idlest_idle_bit = OMAP2430_ST_MMCHS2_SHIFT,
415 }, 389 },
@@ -424,8 +398,6 @@ static struct omap_hwmod omap2430_hdq1w_hwmod = {
424 .prcm = { 398 .prcm = {
425 .omap2 = { 399 .omap2 = {
426 .module_offs = CORE_MOD, 400 .module_offs = CORE_MOD,
427 .prcm_reg_id = 1,
428 .module_bit = OMAP24XX_EN_HDQ_SHIFT,
429 .idlest_reg_id = 1, 401 .idlest_reg_id = 1,
430 .idlest_idle_bit = OMAP24XX_ST_HDQ_SHIFT, 402 .idlest_idle_bit = OMAP24XX_ST_HDQ_SHIFT,
431 }, 403 },
diff --git a/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c b/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
index beec4cd617b1..4b094cb384cb 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
@@ -242,8 +242,6 @@ struct omap_hwmod omap2xxx_timer1_hwmod = {
242 .main_clk = "gpt1_fck", 242 .main_clk = "gpt1_fck",
243 .prcm = { 243 .prcm = {
244 .omap2 = { 244 .omap2 = {
245 .prcm_reg_id = 1,
246 .module_bit = OMAP24XX_EN_GPT1_SHIFT,
247 .module_offs = WKUP_MOD, 245 .module_offs = WKUP_MOD,
248 .idlest_reg_id = 1, 246 .idlest_reg_id = 1,
249 .idlest_idle_bit = OMAP24XX_ST_GPT1_SHIFT, 247 .idlest_idle_bit = OMAP24XX_ST_GPT1_SHIFT,
@@ -261,8 +259,6 @@ struct omap_hwmod omap2xxx_timer2_hwmod = {
261 .main_clk = "gpt2_fck", 259 .main_clk = "gpt2_fck",
262 .prcm = { 260 .prcm = {
263 .omap2 = { 261 .omap2 = {
264 .prcm_reg_id = 1,
265 .module_bit = OMAP24XX_EN_GPT2_SHIFT,
266 .module_offs = CORE_MOD, 262 .module_offs = CORE_MOD,
267 .idlest_reg_id = 1, 263 .idlest_reg_id = 1,
268 .idlest_idle_bit = OMAP24XX_ST_GPT2_SHIFT, 264 .idlest_idle_bit = OMAP24XX_ST_GPT2_SHIFT,
@@ -279,8 +275,6 @@ struct omap_hwmod omap2xxx_timer3_hwmod = {
279 .main_clk = "gpt3_fck", 275 .main_clk = "gpt3_fck",
280 .prcm = { 276 .prcm = {
281 .omap2 = { 277 .omap2 = {
282 .prcm_reg_id = 1,
283 .module_bit = OMAP24XX_EN_GPT3_SHIFT,
284 .module_offs = CORE_MOD, 278 .module_offs = CORE_MOD,
285 .idlest_reg_id = 1, 279 .idlest_reg_id = 1,
286 .idlest_idle_bit = OMAP24XX_ST_GPT3_SHIFT, 280 .idlest_idle_bit = OMAP24XX_ST_GPT3_SHIFT,
@@ -297,8 +291,6 @@ struct omap_hwmod omap2xxx_timer4_hwmod = {
297 .main_clk = "gpt4_fck", 291 .main_clk = "gpt4_fck",
298 .prcm = { 292 .prcm = {
299 .omap2 = { 293 .omap2 = {
300 .prcm_reg_id = 1,
301 .module_bit = OMAP24XX_EN_GPT4_SHIFT,
302 .module_offs = CORE_MOD, 294 .module_offs = CORE_MOD,
303 .idlest_reg_id = 1, 295 .idlest_reg_id = 1,
304 .idlest_idle_bit = OMAP24XX_ST_GPT4_SHIFT, 296 .idlest_idle_bit = OMAP24XX_ST_GPT4_SHIFT,
@@ -315,8 +307,6 @@ struct omap_hwmod omap2xxx_timer5_hwmod = {
315 .main_clk = "gpt5_fck", 307 .main_clk = "gpt5_fck",
316 .prcm = { 308 .prcm = {
317 .omap2 = { 309 .omap2 = {
318 .prcm_reg_id = 1,
319 .module_bit = OMAP24XX_EN_GPT5_SHIFT,
320 .module_offs = CORE_MOD, 310 .module_offs = CORE_MOD,
321 .idlest_reg_id = 1, 311 .idlest_reg_id = 1,
322 .idlest_idle_bit = OMAP24XX_ST_GPT5_SHIFT, 312 .idlest_idle_bit = OMAP24XX_ST_GPT5_SHIFT,
@@ -334,8 +324,6 @@ struct omap_hwmod omap2xxx_timer6_hwmod = {
334 .main_clk = "gpt6_fck", 324 .main_clk = "gpt6_fck",
335 .prcm = { 325 .prcm = {
336 .omap2 = { 326 .omap2 = {
337 .prcm_reg_id = 1,
338 .module_bit = OMAP24XX_EN_GPT6_SHIFT,
339 .module_offs = CORE_MOD, 327 .module_offs = CORE_MOD,
340 .idlest_reg_id = 1, 328 .idlest_reg_id = 1,
341 .idlest_idle_bit = OMAP24XX_ST_GPT6_SHIFT, 329 .idlest_idle_bit = OMAP24XX_ST_GPT6_SHIFT,
@@ -353,8 +341,6 @@ struct omap_hwmod omap2xxx_timer7_hwmod = {
353 .main_clk = "gpt7_fck", 341 .main_clk = "gpt7_fck",
354 .prcm = { 342 .prcm = {
355 .omap2 = { 343 .omap2 = {
356 .prcm_reg_id = 1,
357 .module_bit = OMAP24XX_EN_GPT7_SHIFT,
358 .module_offs = CORE_MOD, 344 .module_offs = CORE_MOD,
359 .idlest_reg_id = 1, 345 .idlest_reg_id = 1,
360 .idlest_idle_bit = OMAP24XX_ST_GPT7_SHIFT, 346 .idlest_idle_bit = OMAP24XX_ST_GPT7_SHIFT,
@@ -372,8 +358,6 @@ struct omap_hwmod omap2xxx_timer8_hwmod = {
372 .main_clk = "gpt8_fck", 358 .main_clk = "gpt8_fck",
373 .prcm = { 359 .prcm = {
374 .omap2 = { 360 .omap2 = {
375 .prcm_reg_id = 1,
376 .module_bit = OMAP24XX_EN_GPT8_SHIFT,
377 .module_offs = CORE_MOD, 361 .module_offs = CORE_MOD,
378 .idlest_reg_id = 1, 362 .idlest_reg_id = 1,
379 .idlest_idle_bit = OMAP24XX_ST_GPT8_SHIFT, 363 .idlest_idle_bit = OMAP24XX_ST_GPT8_SHIFT,
@@ -391,8 +375,6 @@ struct omap_hwmod omap2xxx_timer9_hwmod = {
391 .main_clk = "gpt9_fck", 375 .main_clk = "gpt9_fck",
392 .prcm = { 376 .prcm = {
393 .omap2 = { 377 .omap2 = {
394 .prcm_reg_id = 1,
395 .module_bit = OMAP24XX_EN_GPT9_SHIFT,
396 .module_offs = CORE_MOD, 378 .module_offs = CORE_MOD,
397 .idlest_reg_id = 1, 379 .idlest_reg_id = 1,
398 .idlest_idle_bit = OMAP24XX_ST_GPT9_SHIFT, 380 .idlest_idle_bit = OMAP24XX_ST_GPT9_SHIFT,
@@ -410,8 +392,6 @@ struct omap_hwmod omap2xxx_timer10_hwmod = {
410 .main_clk = "gpt10_fck", 392 .main_clk = "gpt10_fck",
411 .prcm = { 393 .prcm = {
412 .omap2 = { 394 .omap2 = {
413 .prcm_reg_id = 1,
414 .module_bit = OMAP24XX_EN_GPT10_SHIFT,
415 .module_offs = CORE_MOD, 395 .module_offs = CORE_MOD,
416 .idlest_reg_id = 1, 396 .idlest_reg_id = 1,
417 .idlest_idle_bit = OMAP24XX_ST_GPT10_SHIFT, 397 .idlest_idle_bit = OMAP24XX_ST_GPT10_SHIFT,
@@ -429,8 +409,6 @@ struct omap_hwmod omap2xxx_timer11_hwmod = {
429 .main_clk = "gpt11_fck", 409 .main_clk = "gpt11_fck",
430 .prcm = { 410 .prcm = {
431 .omap2 = { 411 .omap2 = {
432 .prcm_reg_id = 1,
433 .module_bit = OMAP24XX_EN_GPT11_SHIFT,
434 .module_offs = CORE_MOD, 412 .module_offs = CORE_MOD,
435 .idlest_reg_id = 1, 413 .idlest_reg_id = 1,
436 .idlest_idle_bit = OMAP24XX_ST_GPT11_SHIFT, 414 .idlest_idle_bit = OMAP24XX_ST_GPT11_SHIFT,
@@ -448,8 +426,6 @@ struct omap_hwmod omap2xxx_timer12_hwmod = {
448 .main_clk = "gpt12_fck", 426 .main_clk = "gpt12_fck",
449 .prcm = { 427 .prcm = {
450 .omap2 = { 428 .omap2 = {
451 .prcm_reg_id = 1,
452 .module_bit = OMAP24XX_EN_GPT12_SHIFT,
453 .module_offs = CORE_MOD, 429 .module_offs = CORE_MOD,
454 .idlest_reg_id = 1, 430 .idlest_reg_id = 1,
455 .idlest_idle_bit = OMAP24XX_ST_GPT12_SHIFT, 431 .idlest_idle_bit = OMAP24XX_ST_GPT12_SHIFT,
@@ -467,8 +443,6 @@ struct omap_hwmod omap2xxx_wd_timer2_hwmod = {
467 .main_clk = "mpu_wdt_fck", 443 .main_clk = "mpu_wdt_fck",
468 .prcm = { 444 .prcm = {
469 .omap2 = { 445 .omap2 = {
470 .prcm_reg_id = 1,
471 .module_bit = OMAP24XX_EN_MPU_WDT_SHIFT,
472 .module_offs = WKUP_MOD, 446 .module_offs = WKUP_MOD,
473 .idlest_reg_id = 1, 447 .idlest_reg_id = 1,
474 .idlest_idle_bit = OMAP24XX_ST_MPU_WDT_SHIFT, 448 .idlest_idle_bit = OMAP24XX_ST_MPU_WDT_SHIFT,
@@ -485,8 +459,6 @@ struct omap_hwmod omap2xxx_uart1_hwmod = {
485 .prcm = { 459 .prcm = {
486 .omap2 = { 460 .omap2 = {
487 .module_offs = CORE_MOD, 461 .module_offs = CORE_MOD,
488 .prcm_reg_id = 1,
489 .module_bit = OMAP24XX_EN_UART1_SHIFT,
490 .idlest_reg_id = 1, 462 .idlest_reg_id = 1,
491 .idlest_idle_bit = OMAP24XX_EN_UART1_SHIFT, 463 .idlest_idle_bit = OMAP24XX_EN_UART1_SHIFT,
492 }, 464 },
@@ -503,8 +475,6 @@ struct omap_hwmod omap2xxx_uart2_hwmod = {
503 .prcm = { 475 .prcm = {
504 .omap2 = { 476 .omap2 = {
505 .module_offs = CORE_MOD, 477 .module_offs = CORE_MOD,
506 .prcm_reg_id = 1,
507 .module_bit = OMAP24XX_EN_UART2_SHIFT,
508 .idlest_reg_id = 1, 478 .idlest_reg_id = 1,
509 .idlest_idle_bit = OMAP24XX_EN_UART2_SHIFT, 479 .idlest_idle_bit = OMAP24XX_EN_UART2_SHIFT,
510 }, 480 },
@@ -521,8 +491,6 @@ struct omap_hwmod omap2xxx_uart3_hwmod = {
521 .prcm = { 491 .prcm = {
522 .omap2 = { 492 .omap2 = {
523 .module_offs = CORE_MOD, 493 .module_offs = CORE_MOD,
524 .prcm_reg_id = 2,
525 .module_bit = OMAP24XX_EN_UART3_SHIFT,
526 .idlest_reg_id = 2, 494 .idlest_reg_id = 2,
527 .idlest_idle_bit = OMAP24XX_EN_UART3_SHIFT, 495 .idlest_idle_bit = OMAP24XX_EN_UART3_SHIFT,
528 }, 496 },
@@ -547,11 +515,8 @@ struct omap_hwmod omap2xxx_dss_core_hwmod = {
547 .main_clk = "dss1_fck", /* instead of dss_fck */ 515 .main_clk = "dss1_fck", /* instead of dss_fck */
548 .prcm = { 516 .prcm = {
549 .omap2 = { 517 .omap2 = {
550 .prcm_reg_id = 1,
551 .module_bit = OMAP24XX_EN_DSS1_SHIFT,
552 .module_offs = CORE_MOD, 518 .module_offs = CORE_MOD,
553 .idlest_reg_id = 1, 519 .idlest_reg_id = 1,
554 .idlest_stdby_bit = OMAP24XX_ST_DSS_SHIFT,
555 }, 520 },
556 }, 521 },
557 .opt_clks = dss_opt_clks, 522 .opt_clks = dss_opt_clks,
@@ -565,11 +530,8 @@ struct omap_hwmod omap2xxx_dss_dispc_hwmod = {
565 .main_clk = "dss1_fck", 530 .main_clk = "dss1_fck",
566 .prcm = { 531 .prcm = {
567 .omap2 = { 532 .omap2 = {
568 .prcm_reg_id = 1,
569 .module_bit = OMAP24XX_EN_DSS1_SHIFT,
570 .module_offs = CORE_MOD, 533 .module_offs = CORE_MOD,
571 .idlest_reg_id = 1, 534 .idlest_reg_id = 1,
572 .idlest_stdby_bit = OMAP24XX_ST_DSS_SHIFT,
573 }, 535 },
574 }, 536 },
575 .flags = HWMOD_NO_IDLEST, 537 .flags = HWMOD_NO_IDLEST,
@@ -586,8 +548,6 @@ struct omap_hwmod omap2xxx_dss_rfbi_hwmod = {
586 .main_clk = "dss1_fck", 548 .main_clk = "dss1_fck",
587 .prcm = { 549 .prcm = {
588 .omap2 = { 550 .omap2 = {
589 .prcm_reg_id = 1,
590 .module_bit = OMAP24XX_EN_DSS1_SHIFT,
591 .module_offs = CORE_MOD, 551 .module_offs = CORE_MOD,
592 }, 552 },
593 }, 553 },
@@ -602,8 +562,6 @@ struct omap_hwmod omap2xxx_dss_venc_hwmod = {
602 .main_clk = "dss_54m_fck", 562 .main_clk = "dss_54m_fck",
603 .prcm = { 563 .prcm = {
604 .omap2 = { 564 .omap2 = {
605 .prcm_reg_id = 1,
606 .module_bit = OMAP24XX_EN_DSS1_SHIFT,
607 .module_offs = CORE_MOD, 565 .module_offs = CORE_MOD,
608 }, 566 },
609 }, 567 },
@@ -623,8 +581,6 @@ struct omap_hwmod omap2xxx_gpio1_hwmod = {
623 .main_clk = "gpios_fck", 581 .main_clk = "gpios_fck",
624 .prcm = { 582 .prcm = {
625 .omap2 = { 583 .omap2 = {
626 .prcm_reg_id = 1,
627 .module_bit = OMAP24XX_EN_GPIOS_SHIFT,
628 .module_offs = WKUP_MOD, 584 .module_offs = WKUP_MOD,
629 .idlest_reg_id = 1, 585 .idlest_reg_id = 1,
630 .idlest_idle_bit = OMAP24XX_ST_GPIOS_SHIFT, 586 .idlest_idle_bit = OMAP24XX_ST_GPIOS_SHIFT,
@@ -641,8 +597,6 @@ struct omap_hwmod omap2xxx_gpio2_hwmod = {
641 .main_clk = "gpios_fck", 597 .main_clk = "gpios_fck",
642 .prcm = { 598 .prcm = {
643 .omap2 = { 599 .omap2 = {
644 .prcm_reg_id = 1,
645 .module_bit = OMAP24XX_EN_GPIOS_SHIFT,
646 .module_offs = WKUP_MOD, 600 .module_offs = WKUP_MOD,
647 .idlest_reg_id = 1, 601 .idlest_reg_id = 1,
648 .idlest_idle_bit = OMAP24XX_ST_GPIOS_SHIFT, 602 .idlest_idle_bit = OMAP24XX_ST_GPIOS_SHIFT,
@@ -659,8 +613,6 @@ struct omap_hwmod omap2xxx_gpio3_hwmod = {
659 .main_clk = "gpios_fck", 613 .main_clk = "gpios_fck",
660 .prcm = { 614 .prcm = {
661 .omap2 = { 615 .omap2 = {
662 .prcm_reg_id = 1,
663 .module_bit = OMAP24XX_EN_GPIOS_SHIFT,
664 .module_offs = WKUP_MOD, 616 .module_offs = WKUP_MOD,
665 .idlest_reg_id = 1, 617 .idlest_reg_id = 1,
666 .idlest_idle_bit = OMAP24XX_ST_GPIOS_SHIFT, 618 .idlest_idle_bit = OMAP24XX_ST_GPIOS_SHIFT,
@@ -677,8 +629,6 @@ struct omap_hwmod omap2xxx_gpio4_hwmod = {
677 .main_clk = "gpios_fck", 629 .main_clk = "gpios_fck",
678 .prcm = { 630 .prcm = {
679 .omap2 = { 631 .omap2 = {
680 .prcm_reg_id = 1,
681 .module_bit = OMAP24XX_EN_GPIOS_SHIFT,
682 .module_offs = WKUP_MOD, 632 .module_offs = WKUP_MOD,
683 .idlest_reg_id = 1, 633 .idlest_reg_id = 1,
684 .idlest_idle_bit = OMAP24XX_ST_GPIOS_SHIFT, 634 .idlest_idle_bit = OMAP24XX_ST_GPIOS_SHIFT,
@@ -699,8 +649,6 @@ struct omap_hwmod omap2xxx_mcspi1_hwmod = {
699 .prcm = { 649 .prcm = {
700 .omap2 = { 650 .omap2 = {
701 .module_offs = CORE_MOD, 651 .module_offs = CORE_MOD,
702 .prcm_reg_id = 1,
703 .module_bit = OMAP24XX_EN_MCSPI1_SHIFT,
704 .idlest_reg_id = 1, 652 .idlest_reg_id = 1,
705 .idlest_idle_bit = OMAP24XX_ST_MCSPI1_SHIFT, 653 .idlest_idle_bit = OMAP24XX_ST_MCSPI1_SHIFT,
706 }, 654 },
@@ -720,8 +668,6 @@ struct omap_hwmod omap2xxx_mcspi2_hwmod = {
720 .prcm = { 668 .prcm = {
721 .omap2 = { 669 .omap2 = {
722 .module_offs = CORE_MOD, 670 .module_offs = CORE_MOD,
723 .prcm_reg_id = 1,
724 .module_bit = OMAP24XX_EN_MCSPI2_SHIFT,
725 .idlest_reg_id = 1, 671 .idlest_reg_id = 1,
726 .idlest_idle_bit = OMAP24XX_ST_MCSPI2_SHIFT, 672 .idlest_idle_bit = OMAP24XX_ST_MCSPI2_SHIFT,
727 }, 673 },
@@ -740,8 +686,6 @@ struct omap_hwmod omap2xxx_counter_32k_hwmod = {
740 .prcm = { 686 .prcm = {
741 .omap2 = { 687 .omap2 = {
742 .module_offs = WKUP_MOD, 688 .module_offs = WKUP_MOD,
743 .prcm_reg_id = 1,
744 .module_bit = OMAP24XX_ST_32KSYNC_SHIFT,
745 .idlest_reg_id = 1, 689 .idlest_reg_id = 1,
746 .idlest_idle_bit = OMAP24XX_ST_32KSYNC_SHIFT, 690 .idlest_idle_bit = OMAP24XX_ST_32KSYNC_SHIFT,
747 }, 691 },
@@ -758,8 +702,6 @@ struct omap_hwmod omap2xxx_gpmc_hwmod = {
758 .flags = HWMOD_NO_IDLEST | DEBUG_OMAP_GPMC_HWMOD_FLAGS, 702 .flags = HWMOD_NO_IDLEST | DEBUG_OMAP_GPMC_HWMOD_FLAGS,
759 .prcm = { 703 .prcm = {
760 .omap2 = { 704 .omap2 = {
761 .prcm_reg_id = 3,
762 .module_bit = OMAP24XX_EN_GPMC_MASK,
763 .module_offs = CORE_MOD, 705 .module_offs = CORE_MOD,
764 }, 706 },
765 }, 707 },
@@ -787,8 +729,6 @@ struct omap_hwmod omap2xxx_rng_hwmod = {
787 .prcm = { 729 .prcm = {
788 .omap2 = { 730 .omap2 = {
789 .module_offs = CORE_MOD, 731 .module_offs = CORE_MOD,
790 .prcm_reg_id = 4,
791 .module_bit = OMAP24XX_EN_RNG_SHIFT,
792 .idlest_reg_id = 4, 732 .idlest_reg_id = 4,
793 .idlest_idle_bit = OMAP24XX_ST_RNG_SHIFT, 733 .idlest_idle_bit = OMAP24XX_ST_RNG_SHIFT,
794 }, 734 },
@@ -825,8 +765,6 @@ struct omap_hwmod omap2xxx_sham_hwmod = {
825 .prcm = { 765 .prcm = {
826 .omap2 = { 766 .omap2 = {
827 .module_offs = CORE_MOD, 767 .module_offs = CORE_MOD,
828 .prcm_reg_id = 4,
829 .module_bit = OMAP24XX_EN_SHA_SHIFT,
830 .idlest_reg_id = 4, 768 .idlest_reg_id = 4,
831 .idlest_idle_bit = OMAP24XX_ST_SHA_SHIFT, 769 .idlest_idle_bit = OMAP24XX_ST_SHA_SHIFT,
832 }, 770 },
@@ -856,8 +794,6 @@ struct omap_hwmod omap2xxx_aes_hwmod = {
856 .prcm = { 794 .prcm = {
857 .omap2 = { 795 .omap2 = {
858 .module_offs = CORE_MOD, 796 .module_offs = CORE_MOD,
859 .prcm_reg_id = 4,
860 .module_bit = OMAP24XX_EN_AES_SHIFT,
861 .idlest_reg_id = 4, 797 .idlest_reg_id = 4,
862 .idlest_idle_bit = OMAP24XX_ST_AES_SHIFT, 798 .idlest_idle_bit = OMAP24XX_ST_AES_SHIFT,
863 }, 799 },
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index 52c9d585b44d..c8baa57da062 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -113,8 +113,6 @@ static struct omap_hwmod omap3xxx_iva_hwmod = {
113 .prcm = { 113 .prcm = {
114 .omap2 = { 114 .omap2 = {
115 .module_offs = OMAP3430_IVA2_MOD, 115 .module_offs = OMAP3430_IVA2_MOD,
116 .prcm_reg_id = 1,
117 .module_bit = OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_SHIFT,
118 .idlest_reg_id = 1, 116 .idlest_reg_id = 1,
119 .idlest_idle_bit = OMAP3430_ST_IVA2_SHIFT, 117 .idlest_idle_bit = OMAP3430_ST_IVA2_SHIFT,
120 }, 118 },
@@ -188,8 +186,6 @@ static struct omap_hwmod omap3xxx_timer1_hwmod = {
188 .main_clk = "gpt1_fck", 186 .main_clk = "gpt1_fck",
189 .prcm = { 187 .prcm = {
190 .omap2 = { 188 .omap2 = {
191 .prcm_reg_id = 1,
192 .module_bit = OMAP3430_EN_GPT1_SHIFT,
193 .module_offs = WKUP_MOD, 189 .module_offs = WKUP_MOD,
194 .idlest_reg_id = 1, 190 .idlest_reg_id = 1,
195 .idlest_idle_bit = OMAP3430_ST_GPT1_SHIFT, 191 .idlest_idle_bit = OMAP3430_ST_GPT1_SHIFT,
@@ -206,8 +202,6 @@ static struct omap_hwmod omap3xxx_timer2_hwmod = {
206 .main_clk = "gpt2_fck", 202 .main_clk = "gpt2_fck",
207 .prcm = { 203 .prcm = {
208 .omap2 = { 204 .omap2 = {
209 .prcm_reg_id = 1,
210 .module_bit = OMAP3430_EN_GPT2_SHIFT,
211 .module_offs = OMAP3430_PER_MOD, 205 .module_offs = OMAP3430_PER_MOD,
212 .idlest_reg_id = 1, 206 .idlest_reg_id = 1,
213 .idlest_idle_bit = OMAP3430_ST_GPT2_SHIFT, 207 .idlest_idle_bit = OMAP3430_ST_GPT2_SHIFT,
@@ -223,8 +217,6 @@ static struct omap_hwmod omap3xxx_timer3_hwmod = {
223 .main_clk = "gpt3_fck", 217 .main_clk = "gpt3_fck",
224 .prcm = { 218 .prcm = {
225 .omap2 = { 219 .omap2 = {
226 .prcm_reg_id = 1,
227 .module_bit = OMAP3430_EN_GPT3_SHIFT,
228 .module_offs = OMAP3430_PER_MOD, 220 .module_offs = OMAP3430_PER_MOD,
229 .idlest_reg_id = 1, 221 .idlest_reg_id = 1,
230 .idlest_idle_bit = OMAP3430_ST_GPT3_SHIFT, 222 .idlest_idle_bit = OMAP3430_ST_GPT3_SHIFT,
@@ -240,8 +232,6 @@ static struct omap_hwmod omap3xxx_timer4_hwmod = {
240 .main_clk = "gpt4_fck", 232 .main_clk = "gpt4_fck",
241 .prcm = { 233 .prcm = {
242 .omap2 = { 234 .omap2 = {
243 .prcm_reg_id = 1,
244 .module_bit = OMAP3430_EN_GPT4_SHIFT,
245 .module_offs = OMAP3430_PER_MOD, 235 .module_offs = OMAP3430_PER_MOD,
246 .idlest_reg_id = 1, 236 .idlest_reg_id = 1,
247 .idlest_idle_bit = OMAP3430_ST_GPT4_SHIFT, 237 .idlest_idle_bit = OMAP3430_ST_GPT4_SHIFT,
@@ -257,8 +247,6 @@ static struct omap_hwmod omap3xxx_timer5_hwmod = {
257 .main_clk = "gpt5_fck", 247 .main_clk = "gpt5_fck",
258 .prcm = { 248 .prcm = {
259 .omap2 = { 249 .omap2 = {
260 .prcm_reg_id = 1,
261 .module_bit = OMAP3430_EN_GPT5_SHIFT,
262 .module_offs = OMAP3430_PER_MOD, 250 .module_offs = OMAP3430_PER_MOD,
263 .idlest_reg_id = 1, 251 .idlest_reg_id = 1,
264 .idlest_idle_bit = OMAP3430_ST_GPT5_SHIFT, 252 .idlest_idle_bit = OMAP3430_ST_GPT5_SHIFT,
@@ -275,8 +263,6 @@ static struct omap_hwmod omap3xxx_timer6_hwmod = {
275 .main_clk = "gpt6_fck", 263 .main_clk = "gpt6_fck",
276 .prcm = { 264 .prcm = {
277 .omap2 = { 265 .omap2 = {
278 .prcm_reg_id = 1,
279 .module_bit = OMAP3430_EN_GPT6_SHIFT,
280 .module_offs = OMAP3430_PER_MOD, 266 .module_offs = OMAP3430_PER_MOD,
281 .idlest_reg_id = 1, 267 .idlest_reg_id = 1,
282 .idlest_idle_bit = OMAP3430_ST_GPT6_SHIFT, 268 .idlest_idle_bit = OMAP3430_ST_GPT6_SHIFT,
@@ -293,8 +279,6 @@ static struct omap_hwmod omap3xxx_timer7_hwmod = {
293 .main_clk = "gpt7_fck", 279 .main_clk = "gpt7_fck",
294 .prcm = { 280 .prcm = {
295 .omap2 = { 281 .omap2 = {
296 .prcm_reg_id = 1,
297 .module_bit = OMAP3430_EN_GPT7_SHIFT,
298 .module_offs = OMAP3430_PER_MOD, 282 .module_offs = OMAP3430_PER_MOD,
299 .idlest_reg_id = 1, 283 .idlest_reg_id = 1,
300 .idlest_idle_bit = OMAP3430_ST_GPT7_SHIFT, 284 .idlest_idle_bit = OMAP3430_ST_GPT7_SHIFT,
@@ -311,8 +295,6 @@ static struct omap_hwmod omap3xxx_timer8_hwmod = {
311 .main_clk = "gpt8_fck", 295 .main_clk = "gpt8_fck",
312 .prcm = { 296 .prcm = {
313 .omap2 = { 297 .omap2 = {
314 .prcm_reg_id = 1,
315 .module_bit = OMAP3430_EN_GPT8_SHIFT,
316 .module_offs = OMAP3430_PER_MOD, 298 .module_offs = OMAP3430_PER_MOD,
317 .idlest_reg_id = 1, 299 .idlest_reg_id = 1,
318 .idlest_idle_bit = OMAP3430_ST_GPT8_SHIFT, 300 .idlest_idle_bit = OMAP3430_ST_GPT8_SHIFT,
@@ -329,8 +311,6 @@ static struct omap_hwmod omap3xxx_timer9_hwmod = {
329 .main_clk = "gpt9_fck", 311 .main_clk = "gpt9_fck",
330 .prcm = { 312 .prcm = {
331 .omap2 = { 313 .omap2 = {
332 .prcm_reg_id = 1,
333 .module_bit = OMAP3430_EN_GPT9_SHIFT,
334 .module_offs = OMAP3430_PER_MOD, 314 .module_offs = OMAP3430_PER_MOD,
335 .idlest_reg_id = 1, 315 .idlest_reg_id = 1,
336 .idlest_idle_bit = OMAP3430_ST_GPT9_SHIFT, 316 .idlest_idle_bit = OMAP3430_ST_GPT9_SHIFT,
@@ -347,8 +327,6 @@ static struct omap_hwmod omap3xxx_timer10_hwmod = {
347 .main_clk = "gpt10_fck", 327 .main_clk = "gpt10_fck",
348 .prcm = { 328 .prcm = {
349 .omap2 = { 329 .omap2 = {
350 .prcm_reg_id = 1,
351 .module_bit = OMAP3430_EN_GPT10_SHIFT,
352 .module_offs = CORE_MOD, 330 .module_offs = CORE_MOD,
353 .idlest_reg_id = 1, 331 .idlest_reg_id = 1,
354 .idlest_idle_bit = OMAP3430_ST_GPT10_SHIFT, 332 .idlest_idle_bit = OMAP3430_ST_GPT10_SHIFT,
@@ -365,8 +343,6 @@ static struct omap_hwmod omap3xxx_timer11_hwmod = {
365 .main_clk = "gpt11_fck", 343 .main_clk = "gpt11_fck",
366 .prcm = { 344 .prcm = {
367 .omap2 = { 345 .omap2 = {
368 .prcm_reg_id = 1,
369 .module_bit = OMAP3430_EN_GPT11_SHIFT,
370 .module_offs = CORE_MOD, 346 .module_offs = CORE_MOD,
371 .idlest_reg_id = 1, 347 .idlest_reg_id = 1,
372 .idlest_idle_bit = OMAP3430_ST_GPT11_SHIFT, 348 .idlest_idle_bit = OMAP3430_ST_GPT11_SHIFT,
@@ -384,8 +360,6 @@ static struct omap_hwmod omap3xxx_timer12_hwmod = {
384 .main_clk = "gpt12_fck", 360 .main_clk = "gpt12_fck",
385 .prcm = { 361 .prcm = {
386 .omap2 = { 362 .omap2 = {
387 .prcm_reg_id = 1,
388 .module_bit = OMAP3430_EN_GPT12_SHIFT,
389 .module_offs = WKUP_MOD, 363 .module_offs = WKUP_MOD,
390 .idlest_reg_id = 1, 364 .idlest_reg_id = 1,
391 .idlest_idle_bit = OMAP3430_ST_GPT12_SHIFT, 365 .idlest_idle_bit = OMAP3430_ST_GPT12_SHIFT,
@@ -439,8 +413,6 @@ static struct omap_hwmod omap3xxx_wd_timer2_hwmod = {
439 .main_clk = "wdt2_fck", 413 .main_clk = "wdt2_fck",
440 .prcm = { 414 .prcm = {
441 .omap2 = { 415 .omap2 = {
442 .prcm_reg_id = 1,
443 .module_bit = OMAP3430_EN_WDT2_SHIFT,
444 .module_offs = WKUP_MOD, 416 .module_offs = WKUP_MOD,
445 .idlest_reg_id = 1, 417 .idlest_reg_id = 1,
446 .idlest_idle_bit = OMAP3430_ST_WDT2_SHIFT, 418 .idlest_idle_bit = OMAP3430_ST_WDT2_SHIFT,
@@ -461,8 +433,6 @@ static struct omap_hwmod omap3xxx_uart1_hwmod = {
461 .prcm = { 433 .prcm = {
462 .omap2 = { 434 .omap2 = {
463 .module_offs = CORE_MOD, 435 .module_offs = CORE_MOD,
464 .prcm_reg_id = 1,
465 .module_bit = OMAP3430_EN_UART1_SHIFT,
466 .idlest_reg_id = 1, 436 .idlest_reg_id = 1,
467 .idlest_idle_bit = OMAP3430_EN_UART1_SHIFT, 437 .idlest_idle_bit = OMAP3430_EN_UART1_SHIFT,
468 }, 438 },
@@ -478,8 +448,6 @@ static struct omap_hwmod omap3xxx_uart2_hwmod = {
478 .prcm = { 448 .prcm = {
479 .omap2 = { 449 .omap2 = {
480 .module_offs = CORE_MOD, 450 .module_offs = CORE_MOD,
481 .prcm_reg_id = 1,
482 .module_bit = OMAP3430_EN_UART2_SHIFT,
483 .idlest_reg_id = 1, 451 .idlest_reg_id = 1,
484 .idlest_idle_bit = OMAP3430_EN_UART2_SHIFT, 452 .idlest_idle_bit = OMAP3430_EN_UART2_SHIFT,
485 }, 453 },
@@ -496,8 +464,6 @@ static struct omap_hwmod omap3xxx_uart3_hwmod = {
496 .prcm = { 464 .prcm = {
497 .omap2 = { 465 .omap2 = {
498 .module_offs = OMAP3430_PER_MOD, 466 .module_offs = OMAP3430_PER_MOD,
499 .prcm_reg_id = 1,
500 .module_bit = OMAP3430_EN_UART3_SHIFT,
501 .idlest_reg_id = 1, 467 .idlest_reg_id = 1,
502 .idlest_idle_bit = OMAP3430_EN_UART3_SHIFT, 468 .idlest_idle_bit = OMAP3430_EN_UART3_SHIFT,
503 }, 469 },
@@ -515,8 +481,6 @@ static struct omap_hwmod omap36xx_uart4_hwmod = {
515 .prcm = { 481 .prcm = {
516 .omap2 = { 482 .omap2 = {
517 .module_offs = OMAP3430_PER_MOD, 483 .module_offs = OMAP3430_PER_MOD,
518 .prcm_reg_id = 1,
519 .module_bit = OMAP3630_EN_UART4_SHIFT,
520 .idlest_reg_id = 1, 484 .idlest_reg_id = 1,
521 .idlest_idle_bit = OMAP3630_EN_UART4_SHIFT, 485 .idlest_idle_bit = OMAP3630_EN_UART4_SHIFT,
522 }, 486 },
@@ -546,8 +510,6 @@ static struct omap_hwmod am35xx_uart4_hwmod = {
546 .prcm = { 510 .prcm = {
547 .omap2 = { 511 .omap2 = {
548 .module_offs = CORE_MOD, 512 .module_offs = CORE_MOD,
549 .prcm_reg_id = 1,
550 .module_bit = AM35XX_EN_UART4_SHIFT,
551 .idlest_reg_id = 1, 513 .idlest_reg_id = 1,
552 .idlest_idle_bit = AM35XX_ST_UART4_SHIFT, 514 .idlest_idle_bit = AM35XX_ST_UART4_SHIFT,
553 }, 515 },
@@ -583,11 +545,8 @@ static struct omap_hwmod omap3430es1_dss_core_hwmod = {
583 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */ 545 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */
584 .prcm = { 546 .prcm = {
585 .omap2 = { 547 .omap2 = {
586 .prcm_reg_id = 1,
587 .module_bit = OMAP3430_EN_DSS1_SHIFT,
588 .module_offs = OMAP3430_DSS_MOD, 548 .module_offs = OMAP3430_DSS_MOD,
589 .idlest_reg_id = 1, 549 .idlest_reg_id = 1,
590 .idlest_stdby_bit = OMAP3430ES1_ST_DSS_SHIFT,
591 }, 550 },
592 }, 551 },
593 .opt_clks = dss_opt_clks, 552 .opt_clks = dss_opt_clks,
@@ -602,12 +561,9 @@ static struct omap_hwmod omap3xxx_dss_core_hwmod = {
602 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */ 561 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */
603 .prcm = { 562 .prcm = {
604 .omap2 = { 563 .omap2 = {
605 .prcm_reg_id = 1,
606 .module_bit = OMAP3430_EN_DSS1_SHIFT,
607 .module_offs = OMAP3430_DSS_MOD, 564 .module_offs = OMAP3430_DSS_MOD,
608 .idlest_reg_id = 1, 565 .idlest_reg_id = 1,
609 .idlest_idle_bit = OMAP3430ES2_ST_DSS_IDLE_SHIFT, 566 .idlest_idle_bit = OMAP3430ES2_ST_DSS_IDLE_SHIFT,
610 .idlest_stdby_bit = OMAP3430ES2_ST_DSS_STDBY_SHIFT,
611 }, 567 },
612 }, 568 },
613 .opt_clks = dss_opt_clks, 569 .opt_clks = dss_opt_clks,
@@ -642,8 +598,6 @@ static struct omap_hwmod omap3xxx_dss_dispc_hwmod = {
642 .main_clk = "dss1_alwon_fck", 598 .main_clk = "dss1_alwon_fck",
643 .prcm = { 599 .prcm = {
644 .omap2 = { 600 .omap2 = {
645 .prcm_reg_id = 1,
646 .module_bit = OMAP3430_EN_DSS1_SHIFT,
647 .module_offs = OMAP3430_DSS_MOD, 601 .module_offs = OMAP3430_DSS_MOD,
648 }, 602 },
649 }, 603 },
@@ -683,8 +637,6 @@ static struct omap_hwmod omap3xxx_dss_dsi1_hwmod = {
683 .main_clk = "dss1_alwon_fck", 637 .main_clk = "dss1_alwon_fck",
684 .prcm = { 638 .prcm = {
685 .omap2 = { 639 .omap2 = {
686 .prcm_reg_id = 1,
687 .module_bit = OMAP3430_EN_DSS1_SHIFT,
688 .module_offs = OMAP3430_DSS_MOD, 640 .module_offs = OMAP3430_DSS_MOD,
689 }, 641 },
690 }, 642 },
@@ -703,8 +655,6 @@ static struct omap_hwmod omap3xxx_dss_rfbi_hwmod = {
703 .main_clk = "dss1_alwon_fck", 655 .main_clk = "dss1_alwon_fck",
704 .prcm = { 656 .prcm = {
705 .omap2 = { 657 .omap2 = {
706 .prcm_reg_id = 1,
707 .module_bit = OMAP3430_EN_DSS1_SHIFT,
708 .module_offs = OMAP3430_DSS_MOD, 658 .module_offs = OMAP3430_DSS_MOD,
709 }, 659 },
710 }, 660 },
@@ -724,8 +674,6 @@ static struct omap_hwmod omap3xxx_dss_venc_hwmod = {
724 .main_clk = "dss_tv_fck", 674 .main_clk = "dss_tv_fck",
725 .prcm = { 675 .prcm = {
726 .omap2 = { 676 .omap2 = {
727 .prcm_reg_id = 1,
728 .module_bit = OMAP3430_EN_DSS1_SHIFT,
729 .module_offs = OMAP3430_DSS_MOD, 677 .module_offs = OMAP3430_DSS_MOD,
730 }, 678 },
731 }, 679 },
@@ -747,8 +695,6 @@ static struct omap_hwmod omap3xxx_i2c1_hwmod = {
747 .prcm = { 695 .prcm = {
748 .omap2 = { 696 .omap2 = {
749 .module_offs = CORE_MOD, 697 .module_offs = CORE_MOD,
750 .prcm_reg_id = 1,
751 .module_bit = OMAP3430_EN_I2C1_SHIFT,
752 .idlest_reg_id = 1, 698 .idlest_reg_id = 1,
753 .idlest_idle_bit = OMAP3430_ST_I2C1_SHIFT, 699 .idlest_idle_bit = OMAP3430_ST_I2C1_SHIFT,
754 }, 700 },
@@ -770,8 +716,6 @@ static struct omap_hwmod omap3xxx_i2c2_hwmod = {
770 .prcm = { 716 .prcm = {
771 .omap2 = { 717 .omap2 = {
772 .module_offs = CORE_MOD, 718 .module_offs = CORE_MOD,
773 .prcm_reg_id = 1,
774 .module_bit = OMAP3430_EN_I2C2_SHIFT,
775 .idlest_reg_id = 1, 719 .idlest_reg_id = 1,
776 .idlest_idle_bit = OMAP3430_ST_I2C2_SHIFT, 720 .idlest_idle_bit = OMAP3430_ST_I2C2_SHIFT,
777 }, 721 },
@@ -795,8 +739,6 @@ static struct omap_hwmod omap3xxx_i2c3_hwmod = {
795 .prcm = { 739 .prcm = {
796 .omap2 = { 740 .omap2 = {
797 .module_offs = CORE_MOD, 741 .module_offs = CORE_MOD,
798 .prcm_reg_id = 1,
799 .module_bit = OMAP3430_EN_I2C3_SHIFT,
800 .idlest_reg_id = 1, 742 .idlest_reg_id = 1,
801 .idlest_idle_bit = OMAP3430_ST_I2C3_SHIFT, 743 .idlest_idle_bit = OMAP3430_ST_I2C3_SHIFT,
802 }, 744 },
@@ -846,8 +788,6 @@ static struct omap_hwmod omap3xxx_gpio1_hwmod = {
846 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks), 788 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks),
847 .prcm = { 789 .prcm = {
848 .omap2 = { 790 .omap2 = {
849 .prcm_reg_id = 1,
850 .module_bit = OMAP3430_EN_GPIO1_SHIFT,
851 .module_offs = WKUP_MOD, 791 .module_offs = WKUP_MOD,
852 .idlest_reg_id = 1, 792 .idlest_reg_id = 1,
853 .idlest_idle_bit = OMAP3430_ST_GPIO1_SHIFT, 793 .idlest_idle_bit = OMAP3430_ST_GPIO1_SHIFT,
@@ -870,8 +810,6 @@ static struct omap_hwmod omap3xxx_gpio2_hwmod = {
870 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks), 810 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks),
871 .prcm = { 811 .prcm = {
872 .omap2 = { 812 .omap2 = {
873 .prcm_reg_id = 1,
874 .module_bit = OMAP3430_EN_GPIO2_SHIFT,
875 .module_offs = OMAP3430_PER_MOD, 813 .module_offs = OMAP3430_PER_MOD,
876 .idlest_reg_id = 1, 814 .idlest_reg_id = 1,
877 .idlest_idle_bit = OMAP3430_ST_GPIO2_SHIFT, 815 .idlest_idle_bit = OMAP3430_ST_GPIO2_SHIFT,
@@ -894,8 +832,6 @@ static struct omap_hwmod omap3xxx_gpio3_hwmod = {
894 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks), 832 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks),
895 .prcm = { 833 .prcm = {
896 .omap2 = { 834 .omap2 = {
897 .prcm_reg_id = 1,
898 .module_bit = OMAP3430_EN_GPIO3_SHIFT,
899 .module_offs = OMAP3430_PER_MOD, 835 .module_offs = OMAP3430_PER_MOD,
900 .idlest_reg_id = 1, 836 .idlest_reg_id = 1,
901 .idlest_idle_bit = OMAP3430_ST_GPIO3_SHIFT, 837 .idlest_idle_bit = OMAP3430_ST_GPIO3_SHIFT,
@@ -918,8 +854,6 @@ static struct omap_hwmod omap3xxx_gpio4_hwmod = {
918 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks), 854 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks),
919 .prcm = { 855 .prcm = {
920 .omap2 = { 856 .omap2 = {
921 .prcm_reg_id = 1,
922 .module_bit = OMAP3430_EN_GPIO4_SHIFT,
923 .module_offs = OMAP3430_PER_MOD, 857 .module_offs = OMAP3430_PER_MOD,
924 .idlest_reg_id = 1, 858 .idlest_reg_id = 1,
925 .idlest_idle_bit = OMAP3430_ST_GPIO4_SHIFT, 859 .idlest_idle_bit = OMAP3430_ST_GPIO4_SHIFT,
@@ -943,8 +877,6 @@ static struct omap_hwmod omap3xxx_gpio5_hwmod = {
943 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks), 877 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks),
944 .prcm = { 878 .prcm = {
945 .omap2 = { 879 .omap2 = {
946 .prcm_reg_id = 1,
947 .module_bit = OMAP3430_EN_GPIO5_SHIFT,
948 .module_offs = OMAP3430_PER_MOD, 880 .module_offs = OMAP3430_PER_MOD,
949 .idlest_reg_id = 1, 881 .idlest_reg_id = 1,
950 .idlest_idle_bit = OMAP3430_ST_GPIO5_SHIFT, 882 .idlest_idle_bit = OMAP3430_ST_GPIO5_SHIFT,
@@ -968,8 +900,6 @@ static struct omap_hwmod omap3xxx_gpio6_hwmod = {
968 .opt_clks_cnt = ARRAY_SIZE(gpio6_opt_clks), 900 .opt_clks_cnt = ARRAY_SIZE(gpio6_opt_clks),
969 .prcm = { 901 .prcm = {
970 .omap2 = { 902 .omap2 = {
971 .prcm_reg_id = 1,
972 .module_bit = OMAP3430_EN_GPIO6_SHIFT,
973 .module_offs = OMAP3430_PER_MOD, 903 .module_offs = OMAP3430_PER_MOD,
974 .idlest_reg_id = 1, 904 .idlest_reg_id = 1,
975 .idlest_idle_bit = OMAP3430_ST_GPIO6_SHIFT, 905 .idlest_idle_bit = OMAP3430_ST_GPIO6_SHIFT,
@@ -1012,8 +942,6 @@ static struct omap_hwmod omap3xxx_dma_system_hwmod = {
1012 .prcm = { 942 .prcm = {
1013 .omap2 = { 943 .omap2 = {
1014 .module_offs = CORE_MOD, 944 .module_offs = CORE_MOD,
1015 .prcm_reg_id = 1,
1016 .module_bit = OMAP3430_ST_SDMA_SHIFT,
1017 .idlest_reg_id = 1, 945 .idlest_reg_id = 1,
1018 .idlest_idle_bit = OMAP3430_ST_SDMA_SHIFT, 946 .idlest_idle_bit = OMAP3430_ST_SDMA_SHIFT,
1019 }, 947 },
@@ -1060,8 +988,6 @@ static struct omap_hwmod omap3xxx_mcbsp1_hwmod = {
1060 .main_clk = "mcbsp1_fck", 988 .main_clk = "mcbsp1_fck",
1061 .prcm = { 989 .prcm = {
1062 .omap2 = { 990 .omap2 = {
1063 .prcm_reg_id = 1,
1064 .module_bit = OMAP3430_EN_MCBSP1_SHIFT,
1065 .module_offs = CORE_MOD, 991 .module_offs = CORE_MOD,
1066 .idlest_reg_id = 1, 992 .idlest_reg_id = 1,
1067 .idlest_idle_bit = OMAP3430_ST_MCBSP1_SHIFT, 993 .idlest_idle_bit = OMAP3430_ST_MCBSP1_SHIFT,
@@ -1083,8 +1009,6 @@ static struct omap_hwmod omap3xxx_mcbsp2_hwmod = {
1083 .main_clk = "mcbsp2_fck", 1009 .main_clk = "mcbsp2_fck",
1084 .prcm = { 1010 .prcm = {
1085 .omap2 = { 1011 .omap2 = {
1086 .prcm_reg_id = 1,
1087 .module_bit = OMAP3430_EN_MCBSP2_SHIFT,
1088 .module_offs = OMAP3430_PER_MOD, 1012 .module_offs = OMAP3430_PER_MOD,
1089 .idlest_reg_id = 1, 1013 .idlest_reg_id = 1,
1090 .idlest_idle_bit = OMAP3430_ST_MCBSP2_SHIFT, 1014 .idlest_idle_bit = OMAP3430_ST_MCBSP2_SHIFT,
@@ -1107,8 +1031,6 @@ static struct omap_hwmod omap3xxx_mcbsp3_hwmod = {
1107 .main_clk = "mcbsp3_fck", 1031 .main_clk = "mcbsp3_fck",
1108 .prcm = { 1032 .prcm = {
1109 .omap2 = { 1033 .omap2 = {
1110 .prcm_reg_id = 1,
1111 .module_bit = OMAP3430_EN_MCBSP3_SHIFT,
1112 .module_offs = OMAP3430_PER_MOD, 1034 .module_offs = OMAP3430_PER_MOD,
1113 .idlest_reg_id = 1, 1035 .idlest_reg_id = 1,
1114 .idlest_idle_bit = OMAP3430_ST_MCBSP3_SHIFT, 1036 .idlest_idle_bit = OMAP3430_ST_MCBSP3_SHIFT,
@@ -1128,8 +1050,6 @@ static struct omap_hwmod omap3xxx_mcbsp4_hwmod = {
1128 .main_clk = "mcbsp4_fck", 1050 .main_clk = "mcbsp4_fck",
1129 .prcm = { 1051 .prcm = {
1130 .omap2 = { 1052 .omap2 = {
1131 .prcm_reg_id = 1,
1132 .module_bit = OMAP3430_EN_MCBSP4_SHIFT,
1133 .module_offs = OMAP3430_PER_MOD, 1053 .module_offs = OMAP3430_PER_MOD,
1134 .idlest_reg_id = 1, 1054 .idlest_reg_id = 1,
1135 .idlest_idle_bit = OMAP3430_ST_MCBSP4_SHIFT, 1055 .idlest_idle_bit = OMAP3430_ST_MCBSP4_SHIFT,
@@ -1148,8 +1068,6 @@ static struct omap_hwmod omap3xxx_mcbsp5_hwmod = {
1148 .main_clk = "mcbsp5_fck", 1068 .main_clk = "mcbsp5_fck",
1149 .prcm = { 1069 .prcm = {
1150 .omap2 = { 1070 .omap2 = {
1151 .prcm_reg_id = 1,
1152 .module_bit = OMAP3430_EN_MCBSP5_SHIFT,
1153 .module_offs = CORE_MOD, 1071 .module_offs = CORE_MOD,
1154 .idlest_reg_id = 1, 1072 .idlest_reg_id = 1,
1155 .idlest_idle_bit = OMAP3430_ST_MCBSP5_SHIFT, 1073 .idlest_idle_bit = OMAP3430_ST_MCBSP5_SHIFT,
@@ -1237,8 +1155,6 @@ static struct omap_hwmod omap34xx_sr1_hwmod = {
1237 .main_clk = "sr1_fck", 1155 .main_clk = "sr1_fck",
1238 .prcm = { 1156 .prcm = {
1239 .omap2 = { 1157 .omap2 = {
1240 .prcm_reg_id = 1,
1241 .module_bit = OMAP3430_EN_SR1_SHIFT,
1242 .module_offs = WKUP_MOD, 1158 .module_offs = WKUP_MOD,
1243 .idlest_reg_id = 1, 1159 .idlest_reg_id = 1,
1244 .idlest_idle_bit = OMAP3430_EN_SR1_SHIFT, 1160 .idlest_idle_bit = OMAP3430_EN_SR1_SHIFT,
@@ -1254,8 +1170,6 @@ static struct omap_hwmod omap36xx_sr1_hwmod = {
1254 .main_clk = "sr1_fck", 1170 .main_clk = "sr1_fck",
1255 .prcm = { 1171 .prcm = {
1256 .omap2 = { 1172 .omap2 = {
1257 .prcm_reg_id = 1,
1258 .module_bit = OMAP3430_EN_SR1_SHIFT,
1259 .module_offs = WKUP_MOD, 1173 .module_offs = WKUP_MOD,
1260 .idlest_reg_id = 1, 1174 .idlest_reg_id = 1,
1261 .idlest_idle_bit = OMAP3430_EN_SR1_SHIFT, 1175 .idlest_idle_bit = OMAP3430_EN_SR1_SHIFT,
@@ -1276,8 +1190,6 @@ static struct omap_hwmod omap34xx_sr2_hwmod = {
1276 .main_clk = "sr2_fck", 1190 .main_clk = "sr2_fck",
1277 .prcm = { 1191 .prcm = {
1278 .omap2 = { 1192 .omap2 = {
1279 .prcm_reg_id = 1,
1280 .module_bit = OMAP3430_EN_SR2_SHIFT,
1281 .module_offs = WKUP_MOD, 1193 .module_offs = WKUP_MOD,
1282 .idlest_reg_id = 1, 1194 .idlest_reg_id = 1,
1283 .idlest_idle_bit = OMAP3430_EN_SR2_SHIFT, 1195 .idlest_idle_bit = OMAP3430_EN_SR2_SHIFT,
@@ -1293,8 +1205,6 @@ static struct omap_hwmod omap36xx_sr2_hwmod = {
1293 .main_clk = "sr2_fck", 1205 .main_clk = "sr2_fck",
1294 .prcm = { 1206 .prcm = {
1295 .omap2 = { 1207 .omap2 = {
1296 .prcm_reg_id = 1,
1297 .module_bit = OMAP3430_EN_SR2_SHIFT,
1298 .module_offs = WKUP_MOD, 1208 .module_offs = WKUP_MOD,
1299 .idlest_reg_id = 1, 1209 .idlest_reg_id = 1,
1300 .idlest_idle_bit = OMAP3430_EN_SR2_SHIFT, 1210 .idlest_idle_bit = OMAP3430_EN_SR2_SHIFT,
@@ -1330,8 +1240,6 @@ static struct omap_hwmod omap3xxx_mailbox_hwmod = {
1330 .main_clk = "mailboxes_ick", 1240 .main_clk = "mailboxes_ick",
1331 .prcm = { 1241 .prcm = {
1332 .omap2 = { 1242 .omap2 = {
1333 .prcm_reg_id = 1,
1334 .module_bit = OMAP3430_EN_MAILBOXES_SHIFT,
1335 .module_offs = CORE_MOD, 1243 .module_offs = CORE_MOD,
1336 .idlest_reg_id = 1, 1244 .idlest_reg_id = 1,
1337 .idlest_idle_bit = OMAP3430_ST_MAILBOXES_SHIFT, 1245 .idlest_idle_bit = OMAP3430_ST_MAILBOXES_SHIFT,
@@ -1373,8 +1281,6 @@ static struct omap_hwmod omap34xx_mcspi1 = {
1373 .prcm = { 1281 .prcm = {
1374 .omap2 = { 1282 .omap2 = {
1375 .module_offs = CORE_MOD, 1283 .module_offs = CORE_MOD,
1376 .prcm_reg_id = 1,
1377 .module_bit = OMAP3430_EN_MCSPI1_SHIFT,
1378 .idlest_reg_id = 1, 1284 .idlest_reg_id = 1,
1379 .idlest_idle_bit = OMAP3430_ST_MCSPI1_SHIFT, 1285 .idlest_idle_bit = OMAP3430_ST_MCSPI1_SHIFT,
1380 }, 1286 },
@@ -1394,8 +1300,6 @@ static struct omap_hwmod omap34xx_mcspi2 = {
1394 .prcm = { 1300 .prcm = {
1395 .omap2 = { 1301 .omap2 = {
1396 .module_offs = CORE_MOD, 1302 .module_offs = CORE_MOD,
1397 .prcm_reg_id = 1,
1398 .module_bit = OMAP3430_EN_MCSPI2_SHIFT,
1399 .idlest_reg_id = 1, 1303 .idlest_reg_id = 1,
1400 .idlest_idle_bit = OMAP3430_ST_MCSPI2_SHIFT, 1304 .idlest_idle_bit = OMAP3430_ST_MCSPI2_SHIFT,
1401 }, 1305 },
@@ -1417,8 +1321,6 @@ static struct omap_hwmod omap34xx_mcspi3 = {
1417 .prcm = { 1321 .prcm = {
1418 .omap2 = { 1322 .omap2 = {
1419 .module_offs = CORE_MOD, 1323 .module_offs = CORE_MOD,
1420 .prcm_reg_id = 1,
1421 .module_bit = OMAP3430_EN_MCSPI3_SHIFT,
1422 .idlest_reg_id = 1, 1324 .idlest_reg_id = 1,
1423 .idlest_idle_bit = OMAP3430_ST_MCSPI3_SHIFT, 1325 .idlest_idle_bit = OMAP3430_ST_MCSPI3_SHIFT,
1424 }, 1326 },
@@ -1440,8 +1342,6 @@ static struct omap_hwmod omap34xx_mcspi4 = {
1440 .prcm = { 1342 .prcm = {
1441 .omap2 = { 1343 .omap2 = {
1442 .module_offs = CORE_MOD, 1344 .module_offs = CORE_MOD,
1443 .prcm_reg_id = 1,
1444 .module_bit = OMAP3430_EN_MCSPI4_SHIFT,
1445 .idlest_reg_id = 1, 1345 .idlest_reg_id = 1,
1446 .idlest_idle_bit = OMAP3430_ST_MCSPI4_SHIFT, 1346 .idlest_idle_bit = OMAP3430_ST_MCSPI4_SHIFT,
1447 }, 1347 },
@@ -1475,12 +1375,9 @@ static struct omap_hwmod omap3xxx_usbhsotg_hwmod = {
1475 .main_clk = "hsotgusb_ick", 1375 .main_clk = "hsotgusb_ick",
1476 .prcm = { 1376 .prcm = {
1477 .omap2 = { 1377 .omap2 = {
1478 .prcm_reg_id = 1,
1479 .module_bit = OMAP3430_EN_HSOTGUSB_SHIFT,
1480 .module_offs = CORE_MOD, 1378 .module_offs = CORE_MOD,
1481 .idlest_reg_id = 1, 1379 .idlest_reg_id = 1,
1482 .idlest_idle_bit = OMAP3430ES2_ST_HSOTGUSB_IDLE_SHIFT, 1380 .idlest_idle_bit = OMAP3430ES2_ST_HSOTGUSB_IDLE_SHIFT,
1483 .idlest_stdby_bit = OMAP3430ES2_ST_HSOTGUSB_STDBY_SHIFT,
1484 }, 1381 },
1485 }, 1382 },
1486 .class = &usbotg_class, 1383 .class = &usbotg_class,
@@ -1555,8 +1452,6 @@ static struct omap_hwmod omap3xxx_pre_es3_mmc1_hwmod = {
1555 .prcm = { 1452 .prcm = {
1556 .omap2 = { 1453 .omap2 = {
1557 .module_offs = CORE_MOD, 1454 .module_offs = CORE_MOD,
1558 .prcm_reg_id = 1,
1559 .module_bit = OMAP3430_EN_MMC1_SHIFT,
1560 .idlest_reg_id = 1, 1455 .idlest_reg_id = 1,
1561 .idlest_idle_bit = OMAP3430_ST_MMC1_SHIFT, 1456 .idlest_idle_bit = OMAP3430_ST_MMC1_SHIFT,
1562 }, 1457 },
@@ -1573,8 +1468,6 @@ static struct omap_hwmod omap3xxx_es3plus_mmc1_hwmod = {
1573 .prcm = { 1468 .prcm = {
1574 .omap2 = { 1469 .omap2 = {
1575 .module_offs = CORE_MOD, 1470 .module_offs = CORE_MOD,
1576 .prcm_reg_id = 1,
1577 .module_bit = OMAP3430_EN_MMC1_SHIFT,
1578 .idlest_reg_id = 1, 1471 .idlest_reg_id = 1,
1579 .idlest_idle_bit = OMAP3430_ST_MMC1_SHIFT, 1472 .idlest_idle_bit = OMAP3430_ST_MMC1_SHIFT,
1580 }, 1473 },
@@ -1604,8 +1497,6 @@ static struct omap_hwmod omap3xxx_pre_es3_mmc2_hwmod = {
1604 .prcm = { 1497 .prcm = {
1605 .omap2 = { 1498 .omap2 = {
1606 .module_offs = CORE_MOD, 1499 .module_offs = CORE_MOD,
1607 .prcm_reg_id = 1,
1608 .module_bit = OMAP3430_EN_MMC2_SHIFT,
1609 .idlest_reg_id = 1, 1500 .idlest_reg_id = 1,
1610 .idlest_idle_bit = OMAP3430_ST_MMC2_SHIFT, 1501 .idlest_idle_bit = OMAP3430_ST_MMC2_SHIFT,
1611 }, 1502 },
@@ -1622,8 +1513,6 @@ static struct omap_hwmod omap3xxx_es3plus_mmc2_hwmod = {
1622 .prcm = { 1513 .prcm = {
1623 .omap2 = { 1514 .omap2 = {
1624 .module_offs = CORE_MOD, 1515 .module_offs = CORE_MOD,
1625 .prcm_reg_id = 1,
1626 .module_bit = OMAP3430_EN_MMC2_SHIFT,
1627 .idlest_reg_id = 1, 1516 .idlest_reg_id = 1,
1628 .idlest_idle_bit = OMAP3430_ST_MMC2_SHIFT, 1517 .idlest_idle_bit = OMAP3430_ST_MMC2_SHIFT,
1629 }, 1518 },
@@ -1647,8 +1536,6 @@ static struct omap_hwmod omap3xxx_mmc3_hwmod = {
1647 .prcm = { 1536 .prcm = {
1648 .omap2 = { 1537 .omap2 = {
1649 .module_offs = CORE_MOD, 1538 .module_offs = CORE_MOD,
1650 .prcm_reg_id = 1,
1651 .module_bit = OMAP3430_EN_MMC3_SHIFT,
1652 .idlest_reg_id = 1, 1539 .idlest_reg_id = 1,
1653 .idlest_idle_bit = OMAP3430_ST_MMC3_SHIFT, 1540 .idlest_idle_bit = OMAP3430_ST_MMC3_SHIFT,
1654 }, 1541 },
@@ -1688,11 +1575,8 @@ static struct omap_hwmod omap3xxx_usb_host_hs_hwmod = {
1688 .prcm = { 1575 .prcm = {
1689 .omap2 = { 1576 .omap2 = {
1690 .module_offs = OMAP3430ES2_USBHOST_MOD, 1577 .module_offs = OMAP3430ES2_USBHOST_MOD,
1691 .prcm_reg_id = 1,
1692 .module_bit = OMAP3430ES2_EN_USBHOST1_SHIFT,
1693 .idlest_reg_id = 1, 1578 .idlest_reg_id = 1,
1694 .idlest_idle_bit = OMAP3430ES2_ST_USBHOST_IDLE_SHIFT, 1579 .idlest_idle_bit = OMAP3430ES2_ST_USBHOST_IDLE_SHIFT,
1695 .idlest_stdby_bit = OMAP3430ES2_ST_USBHOST_STDBY_SHIFT,
1696 }, 1580 },
1697 }, 1581 },
1698 1582
@@ -1766,8 +1650,6 @@ static struct omap_hwmod omap3xxx_usb_tll_hs_hwmod = {
1766 .prcm = { 1650 .prcm = {
1767 .omap2 = { 1651 .omap2 = {
1768 .module_offs = CORE_MOD, 1652 .module_offs = CORE_MOD,
1769 .prcm_reg_id = 3,
1770 .module_bit = OMAP3430ES2_EN_USBTLL_SHIFT,
1771 .idlest_reg_id = 3, 1653 .idlest_reg_id = 3,
1772 .idlest_idle_bit = OMAP3430ES2_ST_USBTLL_SHIFT, 1654 .idlest_idle_bit = OMAP3430ES2_ST_USBTLL_SHIFT,
1773 }, 1655 },
@@ -1780,8 +1662,6 @@ static struct omap_hwmod omap3xxx_hdq1w_hwmod = {
1780 .prcm = { 1662 .prcm = {
1781 .omap2 = { 1663 .omap2 = {
1782 .module_offs = CORE_MOD, 1664 .module_offs = CORE_MOD,
1783 .prcm_reg_id = 1,
1784 .module_bit = OMAP3430_EN_HDQ_SHIFT,
1785 .idlest_reg_id = 1, 1665 .idlest_reg_id = 1,
1786 .idlest_idle_bit = OMAP3430_ST_HDQ_SHIFT, 1666 .idlest_idle_bit = OMAP3430_ST_HDQ_SHIFT,
1787 }, 1667 },
@@ -1807,8 +1687,6 @@ static struct omap_hwmod omap3xxx_sad2d_hwmod = {
1807 .prcm = { 1687 .prcm = {
1808 .omap2 = { 1688 .omap2 = {
1809 .module_offs = CORE_MOD, 1689 .module_offs = CORE_MOD,
1810 .prcm_reg_id = 1,
1811 .module_bit = OMAP3430_EN_SAD2D_SHIFT,
1812 .idlest_reg_id = 1, 1690 .idlest_reg_id = 1,
1813 .idlest_idle_bit = OMAP3430_ST_SAD2D_SHIFT, 1691 .idlest_idle_bit = OMAP3430_ST_SAD2D_SHIFT,
1814 }, 1692 },
@@ -1842,8 +1720,6 @@ static struct omap_hwmod omap3xxx_counter_32k_hwmod = {
1842 .prcm = { 1720 .prcm = {
1843 .omap2 = { 1721 .omap2 = {
1844 .module_offs = WKUP_MOD, 1722 .module_offs = WKUP_MOD,
1845 .prcm_reg_id = 1,
1846 .module_bit = OMAP3430_ST_32KSYNC_SHIFT,
1847 .idlest_reg_id = 1, 1723 .idlest_reg_id = 1,
1848 .idlest_idle_bit = OMAP3430_ST_32KSYNC_SHIFT, 1724 .idlest_idle_bit = OMAP3430_ST_32KSYNC_SHIFT,
1849 }, 1725 },
@@ -2454,7 +2330,6 @@ static struct omap_hwmod omap3xxx_mmu_iva_hwmod = {
2454 .prcm = { 2330 .prcm = {
2455 .omap2 = { 2331 .omap2 = {
2456 .module_offs = OMAP3430_IVA2_MOD, 2332 .module_offs = OMAP3430_IVA2_MOD,
2457 .module_bit = OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_SHIFT,
2458 .idlest_reg_id = 1, 2333 .idlest_reg_id = 1,
2459 .idlest_idle_bit = OMAP3430_ST_IVA2_SHIFT, 2334 .idlest_idle_bit = OMAP3430_ST_IVA2_SHIFT,
2460 }, 2335 },
@@ -2760,8 +2635,6 @@ static struct omap_hwmod omap3xxx_sham_hwmod = {
2760 .prcm = { 2635 .prcm = {
2761 .omap2 = { 2636 .omap2 = {
2762 .module_offs = CORE_MOD, 2637 .module_offs = CORE_MOD,
2763 .prcm_reg_id = 1,
2764 .module_bit = OMAP3430_EN_SHA12_SHIFT,
2765 .idlest_reg_id = 1, 2638 .idlest_reg_id = 1,
2766 .idlest_idle_bit = OMAP3430_ST_SHA12_SHIFT, 2639 .idlest_idle_bit = OMAP3430_ST_SHA12_SHIFT,
2767 }, 2640 },
@@ -2806,8 +2679,6 @@ static struct omap_hwmod omap3xxx_aes_hwmod = {
2806 .prcm = { 2679 .prcm = {
2807 .omap2 = { 2680 .omap2 = {
2808 .module_offs = CORE_MOD, 2681 .module_offs = CORE_MOD,
2809 .prcm_reg_id = 1,
2810 .module_bit = OMAP3430_EN_AES2_SHIFT,
2811 .idlest_reg_id = 1, 2682 .idlest_reg_id = 1,
2812 .idlest_idle_bit = OMAP3430_ST_AES2_SHIFT, 2683 .idlest_idle_bit = OMAP3430_ST_AES2_SHIFT,
2813 }, 2684 },
@@ -2850,8 +2721,6 @@ static struct omap_hwmod omap3xxx_ssi_hwmod = {
2850 .main_clk = "ssi_ssr_fck", 2721 .main_clk = "ssi_ssr_fck",
2851 .prcm = { 2722 .prcm = {
2852 .omap2 = { 2723 .omap2 = {
2853 .prcm_reg_id = 1,
2854 .module_bit = OMAP3430_EN_SSI_SHIFT,
2855 .module_offs = CORE_MOD, 2724 .module_offs = CORE_MOD,
2856 .idlest_reg_id = 1, 2725 .idlest_reg_id = 1,
2857 .idlest_idle_bit = OMAP3430ES2_ST_SSI_IDLE_SHIFT, 2726 .idlest_idle_bit = OMAP3430ES2_ST_SSI_IDLE_SHIFT,
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
index d05e553d6346..f33afcaec77e 100644
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -4019,6 +4019,10 @@ static struct omap_hwmod_ocp_if *dra76x_hwmod_ocp_ifs[] __initdata = {
4019 NULL, 4019 NULL,
4020}; 4020};
4021 4021
4022static struct omap_hwmod_ocp_if *acd_76x_hwmod_ocp_ifs[] __initdata = {
4023 NULL,
4024};
4025
4022static struct omap_hwmod_ocp_if *dra74x_hwmod_ocp_ifs[] __initdata = { 4026static struct omap_hwmod_ocp_if *dra74x_hwmod_ocp_ifs[] __initdata = {
4023 &dra7xx_l4_per3__usb_otg_ss4, 4027 &dra7xx_l4_per3__usb_otg_ss4,
4024 NULL, 4028 NULL,
@@ -4028,7 +4032,7 @@ static struct omap_hwmod_ocp_if *dra72x_hwmod_ocp_ifs[] __initdata = {
4028 NULL, 4032 NULL,
4029}; 4033};
4030 4034
4031static struct omap_hwmod_ocp_if *dra74x_dra72x_hwmod_ocp_ifs[] __initdata = { 4035static struct omap_hwmod_ocp_if *rtc_hwmod_ocp_ifs[] __initdata = {
4032 &dra7xx_l4_per3__rtcss, 4036 &dra7xx_l4_per3__rtcss,
4033 NULL, 4037 NULL,
4034}; 4038};
@@ -4040,19 +4044,26 @@ int __init dra7xx_hwmod_init(void)
4040 omap_hwmod_init(); 4044 omap_hwmod_init();
4041 ret = omap_hwmod_register_links(dra7xx_hwmod_ocp_ifs); 4045 ret = omap_hwmod_register_links(dra7xx_hwmod_ocp_ifs);
4042 4046
4043 if (!ret && soc_is_dra74x()) 4047 if (!ret && soc_is_dra74x()) {
4044 ret = omap_hwmod_register_links(dra74x_hwmod_ocp_ifs); 4048 ret = omap_hwmod_register_links(dra74x_hwmod_ocp_ifs);
4045 else if (!ret && soc_is_dra72x()) 4049 if (!ret)
4050 ret = omap_hwmod_register_links(rtc_hwmod_ocp_ifs);
4051 } else if (!ret && soc_is_dra72x()) {
4046 ret = omap_hwmod_register_links(dra72x_hwmod_ocp_ifs); 4052 ret = omap_hwmod_register_links(dra72x_hwmod_ocp_ifs);
4047 else if (!ret && soc_is_dra76x()) 4053 if (!ret && !of_machine_is_compatible("ti,dra718"))
4054 ret = omap_hwmod_register_links(rtc_hwmod_ocp_ifs);
4055 } else if (!ret && soc_is_dra76x()) {
4048 ret = omap_hwmod_register_links(dra76x_hwmod_ocp_ifs); 4056 ret = omap_hwmod_register_links(dra76x_hwmod_ocp_ifs);
4049 4057
4058 if (!ret && soc_is_dra76x_acd()) {
4059 ret = omap_hwmod_register_links(acd_76x_hwmod_ocp_ifs);
4060 } else if (!ret && soc_is_dra76x_abz()) {
4061 ret = omap_hwmod_register_links(rtc_hwmod_ocp_ifs);
4062 }
4063 }
4064
4050 if (!ret && omap_type() == OMAP2_DEVICE_TYPE_GP) 4065 if (!ret && omap_type() == OMAP2_DEVICE_TYPE_GP)
4051 ret = omap_hwmod_register_links(dra7xx_gp_hwmod_ocp_ifs); 4066 ret = omap_hwmod_register_links(dra7xx_gp_hwmod_ocp_ifs);
4052 4067
4053 /* now for the IPs available only in dra74 and dra72 */
4054 if (!ret && !of_machine_is_compatible("ti,dra718") && !soc_is_dra76x())
4055 ret = omap_hwmod_register_links(dra74x_dra72x_hwmod_ocp_ifs);
4056
4057 return ret; 4068 return ret;
4058} 4069}
diff --git a/arch/arm/mach-omap2/soc.h b/arch/arm/mach-omap2/soc.h
index 28fa1f8d8363..050891e055a4 100644
--- a/arch/arm/mach-omap2/soc.h
+++ b/arch/arm/mach-omap2/soc.h
@@ -143,6 +143,14 @@ static inline int is_dra ##subclass (void) \
143 return (GET_OMAP_SUBCLASS == (id)) ? 1 : 0; \ 143 return (GET_OMAP_SUBCLASS == (id)) ? 1 : 0; \
144} 144}
145 145
146#define GET_DRA_PACKAGE (omap_rev() & 0xff)
147
148#define IS_DRA_SUBCLASS_PACKAGE(subclass, package, id) \
149static inline int is_dra ##subclass ##_ ##package (void) \
150{ \
151 return (is_dra ##subclass () && GET_DRA_PACKAGE == id) ? 1 : 0; \
152}
153
146IS_OMAP_CLASS(24xx, 0x24) 154IS_OMAP_CLASS(24xx, 0x24)
147IS_OMAP_CLASS(34xx, 0x34) 155IS_OMAP_CLASS(34xx, 0x34)
148IS_OMAP_CLASS(44xx, 0x44) 156IS_OMAP_CLASS(44xx, 0x44)
@@ -168,6 +176,8 @@ IS_TI_SUBCLASS(814x, 0x814)
168IS_AM_SUBCLASS(335x, 0x335) 176IS_AM_SUBCLASS(335x, 0x335)
169IS_AM_SUBCLASS(437x, 0x437) 177IS_AM_SUBCLASS(437x, 0x437)
170IS_DRA_SUBCLASS(76x, 0x76) 178IS_DRA_SUBCLASS(76x, 0x76)
179IS_DRA_SUBCLASS_PACKAGE(76x, abz, 2)
180IS_DRA_SUBCLASS_PACKAGE(76x, acd, 3)
171IS_DRA_SUBCLASS(75x, 0x75) 181IS_DRA_SUBCLASS(75x, 0x75)
172IS_DRA_SUBCLASS(72x, 0x72) 182IS_DRA_SUBCLASS(72x, 0x72)
173 183
@@ -317,10 +327,14 @@ IS_OMAP_TYPE(3430, 0x3430)
317#if defined(CONFIG_SOC_DRA7XX) 327#if defined(CONFIG_SOC_DRA7XX)
318#undef soc_is_dra7xx 328#undef soc_is_dra7xx
319#undef soc_is_dra76x 329#undef soc_is_dra76x
330#undef soc_is_dra76x_abz
331#undef soc_is_dra76x_acd
320#undef soc_is_dra74x 332#undef soc_is_dra74x
321#undef soc_is_dra72x 333#undef soc_is_dra72x
322#define soc_is_dra7xx() is_dra7xx() 334#define soc_is_dra7xx() is_dra7xx()
323#define soc_is_dra76x() is_dra76x() 335#define soc_is_dra76x() is_dra76x()
336#define soc_is_dra76x_abz() is_dra76x_abz()
337#define soc_is_dra76x_acd() is_dra76x_acd()
324#define soc_is_dra74x() is_dra75x() 338#define soc_is_dra74x() is_dra75x()
325#define soc_is_dra72x() is_dra72x() 339#define soc_is_dra72x() is_dra72x()
326#endif 340#endif
@@ -391,6 +405,8 @@ IS_OMAP_TYPE(3430, 0x3430)
391 405
392#define DRA7XX_CLASS 0x07000000 406#define DRA7XX_CLASS 0x07000000
393#define DRA762_REV_ES1_0 (DRA7XX_CLASS | (0x62 << 16) | (0x10 << 8)) 407#define DRA762_REV_ES1_0 (DRA7XX_CLASS | (0x62 << 16) | (0x10 << 8))
408#define DRA762_ABZ_REV_ES1_0 (DRA762_REV_ES1_0 | (2 << 0))
409#define DRA762_ACD_REV_ES1_0 (DRA762_REV_ES1_0 | (3 << 0))
394#define DRA752_REV_ES1_0 (DRA7XX_CLASS | (0x52 << 16) | (0x10 << 8)) 410#define DRA752_REV_ES1_0 (DRA7XX_CLASS | (0x52 << 16) | (0x10 << 8))
395#define DRA752_REV_ES1_1 (DRA7XX_CLASS | (0x52 << 16) | (0x11 << 8)) 411#define DRA752_REV_ES1_1 (DRA7XX_CLASS | (0x52 << 16) | (0x11 << 8))
396#define DRA752_REV_ES2_0 (DRA7XX_CLASS | (0x52 << 16) | (0x20 << 8)) 412#define DRA752_REV_ES2_0 (DRA7XX_CLASS | (0x52 << 16) | (0x20 << 8))
diff --git a/arch/arm/mach-pxa/Kconfig b/arch/arm/mach-pxa/Kconfig
index ce7d97babb0f..a68b34183107 100644
--- a/arch/arm/mach-pxa/Kconfig
+++ b/arch/arm/mach-pxa/Kconfig
@@ -40,6 +40,7 @@ config MACH_PXA3XX_DT
40 40
41config ARCH_LUBBOCK 41config ARCH_LUBBOCK
42 bool "Intel DBPXA250 Development Platform (aka Lubbock)" 42 bool "Intel DBPXA250 Development Platform (aka Lubbock)"
43 select GPIO_REG
43 select PXA25x 44 select PXA25x
44 select SA1111 45 select SA1111
45 46
diff --git a/arch/arm/mach-pxa/balloon3.c b/arch/arm/mach-pxa/balloon3.c
index d6d92f388f14..f4f8f23bda8c 100644
--- a/arch/arm/mach-pxa/balloon3.c
+++ b/arch/arm/mach-pxa/balloon3.c
@@ -28,7 +28,7 @@
28#include <linux/mtd/partitions.h> 28#include <linux/mtd/partitions.h>
29#include <linux/types.h> 29#include <linux/types.h>
30#include <linux/platform_data/pcf857x.h> 30#include <linux/platform_data/pcf857x.h>
31#include <linux/i2c/pxa-i2c.h> 31#include <linux/platform_data/i2c-pxa.h>
32#include <linux/mtd/rawnand.h> 32#include <linux/mtd/rawnand.h>
33#include <linux/mtd/physmap.h> 33#include <linux/mtd/physmap.h>
34#include <linux/regulator/max1586.h> 34#include <linux/regulator/max1586.h>
diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
index 868448d2cd82..c487401b6fdb 100644
--- a/arch/arm/mach-pxa/cm-x300.c
+++ b/arch/arm/mach-pxa/cm-x300.c
@@ -31,7 +31,7 @@
31 31
32#include <linux/i2c.h> 32#include <linux/i2c.h>
33#include <linux/platform_data/pca953x.h> 33#include <linux/platform_data/pca953x.h>
34#include <linux/i2c/pxa-i2c.h> 34#include <linux/platform_data/i2c-pxa.h>
35 35
36#include <linux/mfd/da903x.h> 36#include <linux/mfd/da903x.h>
37#include <linux/regulator/machine.h> 37#include <linux/regulator/machine.h>
diff --git a/arch/arm/mach-pxa/colibri-evalboard.c b/arch/arm/mach-pxa/colibri-evalboard.c
index dc44fbbe5073..10e2278b7a28 100644
--- a/arch/arm/mach-pxa/colibri-evalboard.c
+++ b/arch/arm/mach-pxa/colibri-evalboard.c
@@ -19,7 +19,7 @@
19#include <mach/hardware.h> 19#include <mach/hardware.h>
20#include <asm/mach/arch.h> 20#include <asm/mach/arch.h>
21#include <linux/i2c.h> 21#include <linux/i2c.h>
22#include <linux/i2c/pxa-i2c.h> 22#include <linux/platform_data/i2c-pxa.h>
23#include <asm/io.h> 23#include <asm/io.h>
24 24
25#include "pxa27x.h" 25#include "pxa27x.h"
diff --git a/arch/arm/mach-pxa/colibri-pxa270-income.c b/arch/arm/mach-pxa/colibri-pxa270-income.c
index d7cf47d03618..3ccf2a95569b 100644
--- a/arch/arm/mach-pxa/colibri-pxa270-income.c
+++ b/arch/arm/mach-pxa/colibri-pxa270-income.c
@@ -23,7 +23,7 @@
23#include <linux/platform_device.h> 23#include <linux/platform_device.h>
24#include <linux/pwm.h> 24#include <linux/pwm.h>
25#include <linux/pwm_backlight.h> 25#include <linux/pwm_backlight.h>
26#include <linux/i2c/pxa-i2c.h> 26#include <linux/platform_data/i2c-pxa.h>
27 27
28#include <asm/irq.h> 28#include <asm/irq.h>
29#include <asm/mach-types.h> 29#include <asm/mach-types.h>
diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c
index 7270f0db3432..9a5a35e90769 100644
--- a/arch/arm/mach-pxa/corgi.c
+++ b/arch/arm/mach-pxa/corgi.c
@@ -26,7 +26,7 @@
26#include <linux/gpio.h> 26#include <linux/gpio.h>
27#include <linux/backlight.h> 27#include <linux/backlight.h>
28#include <linux/i2c.h> 28#include <linux/i2c.h>
29#include <linux/i2c/pxa-i2c.h> 29#include <linux/platform_data/i2c-pxa.h>
30#include <linux/io.h> 30#include <linux/io.h>
31#include <linux/regulator/machine.h> 31#include <linux/regulator/machine.h>
32#include <linux/spi/spi.h> 32#include <linux/spi/spi.h>
@@ -606,24 +606,6 @@ static void __init corgi_init_spi(void)
606static inline void corgi_init_spi(void) {} 606static inline void corgi_init_spi(void) {}
607#endif 607#endif
608 608
609static struct mtd_partition sharpsl_nand_partitions[] = {
610 {
611 .name = "System Area",
612 .offset = 0,
613 .size = 7 * 1024 * 1024,
614 },
615 {
616 .name = "Root Filesystem",
617 .offset = 7 * 1024 * 1024,
618 .size = 25 * 1024 * 1024,
619 },
620 {
621 .name = "Home Filesystem",
622 .offset = MTDPART_OFS_APPEND,
623 .size = MTDPART_SIZ_FULL,
624 },
625};
626
627static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; 609static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
628 610
629static struct nand_bbt_descr sharpsl_bbt = { 611static struct nand_bbt_descr sharpsl_bbt = {
@@ -633,10 +615,16 @@ static struct nand_bbt_descr sharpsl_bbt = {
633 .pattern = scan_ff_pattern 615 .pattern = scan_ff_pattern
634}; 616};
635 617
618static const char * const probes[] = {
619 "cmdlinepart",
620 "ofpart",
621 "sharpslpart",
622 NULL,
623};
624
636static struct sharpsl_nand_platform_data sharpsl_nand_platform_data = { 625static struct sharpsl_nand_platform_data sharpsl_nand_platform_data = {
637 .badblock_pattern = &sharpsl_bbt, 626 .badblock_pattern = &sharpsl_bbt,
638 .partitions = sharpsl_nand_partitions, 627 .part_parsers = probes,
639 .nr_partitions = ARRAY_SIZE(sharpsl_nand_partitions),
640}; 628};
641 629
642static struct resource sharpsl_nand_resources[] = { 630static struct resource sharpsl_nand_resources[] = {
@@ -750,9 +738,6 @@ static void __init corgi_init(void)
750 738
751 platform_scoop_config = &corgi_pcmcia_config; 739 platform_scoop_config = &corgi_pcmcia_config;
752 740
753 if (machine_is_husky())
754 sharpsl_nand_partitions[1].size = 53 * 1024 * 1024;
755
756 platform_add_devices(devices, ARRAY_SIZE(devices)); 741 platform_add_devices(devices, ARRAY_SIZE(devices));
757 742
758 regulator_has_full_constraints(); 743 regulator_has_full_constraints();
diff --git a/arch/arm/mach-pxa/csb726.c b/arch/arm/mach-pxa/csb726.c
index bf19b8426d2c..271aedae7542 100644
--- a/arch/arm/mach-pxa/csb726.c
+++ b/arch/arm/mach-pxa/csb726.c
@@ -17,7 +17,7 @@
17#include <linux/mtd/partitions.h> 17#include <linux/mtd/partitions.h>
18#include <linux/sm501.h> 18#include <linux/sm501.h>
19#include <linux/smsc911x.h> 19#include <linux/smsc911x.h>
20#include <linux/i2c/pxa-i2c.h> 20#include <linux/platform_data/i2c-pxa.h>
21 21
22#include <asm/mach-types.h> 22#include <asm/mach-types.h>
23#include <asm/mach/arch.h> 23#include <asm/mach/arch.h>
diff --git a/arch/arm/mach-pxa/devices.c b/arch/arm/mach-pxa/devices.c
index 5a72456a19ce..d7c9a8476d57 100644
--- a/arch/arm/mach-pxa/devices.c
+++ b/arch/arm/mach-pxa/devices.c
@@ -5,7 +5,7 @@
5#include <linux/platform_device.h> 5#include <linux/platform_device.h>
6#include <linux/dma-mapping.h> 6#include <linux/dma-mapping.h>
7#include <linux/spi/pxa2xx_spi.h> 7#include <linux/spi/pxa2xx_spi.h>
8#include <linux/i2c/pxa-i2c.h> 8#include <linux/platform_data/i2c-pxa.h>
9 9
10#include "udc.h" 10#include "udc.h"
11#include <linux/platform_data/usb-pxa3xx-ulpi.h> 11#include <linux/platform_data/usb-pxa3xx-ulpi.h>
diff --git a/arch/arm/mach-pxa/devices.h b/arch/arm/mach-pxa/devices.h
index 905628dfbbbb..11263f7c455b 100644
--- a/arch/arm/mach-pxa/devices.h
+++ b/arch/arm/mach-pxa/devices.h
@@ -56,3 +56,12 @@ extern struct platform_device pxa93x_device_gpio;
56 56
57void __init pxa_register_device(struct platform_device *dev, void *data); 57void __init pxa_register_device(struct platform_device *dev, void *data);
58void __init pxa2xx_set_dmac_info(int nb_channels, int nb_requestors); 58void __init pxa2xx_set_dmac_info(int nb_channels, int nb_requestors);
59
60struct i2c_pxa_platform_data;
61extern void pxa_set_i2c_info(struct i2c_pxa_platform_data *info);
62#ifdef CONFIG_PXA27x
63extern void pxa27x_set_i2c_power_info(struct i2c_pxa_platform_data *info);
64#endif
65#ifdef CONFIG_PXA3xx
66extern void pxa3xx_set_i2c_power_info(struct i2c_pxa_platform_data *info);
67#endif
diff --git a/arch/arm/mach-pxa/em-x270.c b/arch/arm/mach-pxa/em-x270.c
index 6d28035ebba5..49022ad338e9 100644
--- a/arch/arm/mach-pxa/em-x270.c
+++ b/arch/arm/mach-pxa/em-x270.c
@@ -32,7 +32,7 @@
32#include <linux/apm-emulation.h> 32#include <linux/apm-emulation.h>
33#include <linux/i2c.h> 33#include <linux/i2c.h>
34#include <linux/platform_data/pca953x.h> 34#include <linux/platform_data/pca953x.h>
35#include <linux/i2c/pxa-i2c.h> 35#include <linux/platform_data/i2c-pxa.h>
36#include <linux/regulator/userspace-consumer.h> 36#include <linux/regulator/userspace-consumer.h>
37 37
38#include <asm/mach-types.h> 38#include <asm/mach-types.h>
diff --git a/arch/arm/mach-pxa/ezx.c b/arch/arm/mach-pxa/ezx.c
index a057cf9c0e7b..2c90b58f347d 100644
--- a/arch/arm/mach-pxa/ezx.c
+++ b/arch/arm/mach-pxa/ezx.c
@@ -23,7 +23,7 @@
23#include <linux/gpio.h> 23#include <linux/gpio.h>
24#include <linux/gpio_keys.h> 24#include <linux/gpio_keys.h>
25#include <linux/leds-lp3944.h> 25#include <linux/leds-lp3944.h>
26#include <linux/i2c/pxa-i2c.h> 26#include <linux/platform_data/i2c-pxa.h>
27 27
28#include <asm/setup.h> 28#include <asm/setup.h>
29#include <asm/mach-types.h> 29#include <asm/mach-types.h>
diff --git a/arch/arm/mach-pxa/hx4700.c b/arch/arm/mach-pxa/hx4700.c
index 66184f5cbe40..e2e7f247a645 100644
--- a/arch/arm/mach-pxa/hx4700.c
+++ b/arch/arm/mach-pxa/hx4700.c
@@ -38,7 +38,7 @@
38#include <linux/spi/spi.h> 38#include <linux/spi/spi.h>
39#include <linux/spi/pxa2xx_spi.h> 39#include <linux/spi/pxa2xx_spi.h>
40#include <linux/usb/gpio_vbus.h> 40#include <linux/usb/gpio_vbus.h>
41#include <linux/i2c/pxa-i2c.h> 41#include <linux/platform_data/i2c-pxa.h>
42 42
43#include <mach/hardware.h> 43#include <mach/hardware.h>
44#include <asm/mach-types.h> 44#include <asm/mach-types.h>
diff --git a/arch/arm/mach-pxa/littleton.c b/arch/arm/mach-pxa/littleton.c
index fae38fdc8d8e..4105614cc38e 100644
--- a/arch/arm/mach-pxa/littleton.c
+++ b/arch/arm/mach-pxa/littleton.c
@@ -28,7 +28,7 @@
28#include <linux/leds.h> 28#include <linux/leds.h>
29#include <linux/mfd/da903x.h> 29#include <linux/mfd/da903x.h>
30#include <linux/platform_data/max732x.h> 30#include <linux/platform_data/max732x.h>
31#include <linux/i2c/pxa-i2c.h> 31#include <linux/platform_data/i2c-pxa.h>
32 32
33#include <asm/types.h> 33#include <asm/types.h>
34#include <asm/setup.h> 34#include <asm/setup.h>
@@ -42,6 +42,7 @@
42#include <asm/mach/irq.h> 42#include <asm/mach/irq.h>
43 43
44#include "pxa300.h" 44#include "pxa300.h"
45#include "devices.h"
45#include <linux/platform_data/video-pxafb.h> 46#include <linux/platform_data/video-pxafb.h>
46#include <linux/platform_data/mmc-pxamci.h> 47#include <linux/platform_data/mmc-pxamci.h>
47#include <linux/platform_data/keypad-pxa27x.h> 48#include <linux/platform_data/keypad-pxa27x.h>
diff --git a/arch/arm/mach-pxa/lubbock.c b/arch/arm/mach-pxa/lubbock.c
index df45682e99a5..fe2ef9b78602 100644
--- a/arch/arm/mach-pxa/lubbock.c
+++ b/arch/arm/mach-pxa/lubbock.c
@@ -13,6 +13,7 @@
13 */ 13 */
14#include <linux/clkdev.h> 14#include <linux/clkdev.h>
15#include <linux/gpio.h> 15#include <linux/gpio.h>
16#include <linux/gpio/gpio-reg.h>
16#include <linux/gpio/machine.h> 17#include <linux/gpio/machine.h>
17#include <linux/module.h> 18#include <linux/module.h>
18#include <linux/kernel.h> 19#include <linux/kernel.h>
@@ -110,20 +111,18 @@ static unsigned long lubbock_pin_config[] __initdata = {
110}; 111};
111 112
112#define LUB_HEXLED __LUB_REG(LUBBOCK_FPGA_PHYS + 0x010) 113#define LUB_HEXLED __LUB_REG(LUBBOCK_FPGA_PHYS + 0x010)
113#define LUB_MISC_WR __LUB_REG(LUBBOCK_FPGA_PHYS + 0x080)
114 114
115void lubbock_set_hexled(uint32_t value) 115void lubbock_set_hexled(uint32_t value)
116{ 116{
117 LUB_HEXLED = value; 117 LUB_HEXLED = value;
118} 118}
119 119
120static struct gpio_chip *lubbock_misc_wr_gc;
121
120void lubbock_set_misc_wr(unsigned int mask, unsigned int set) 122void lubbock_set_misc_wr(unsigned int mask, unsigned int set)
121{ 123{
122 unsigned long flags; 124 unsigned long m = mask, v = set;
123 125 lubbock_misc_wr_gc->set_multiple(lubbock_misc_wr_gc, &m, &v);
124 local_irq_save(flags);
125 LUB_MISC_WR = (LUB_MISC_WR & ~mask) | (set & mask);
126 local_irq_restore(flags);
127} 126}
128EXPORT_SYMBOL(lubbock_set_misc_wr); 127EXPORT_SYMBOL(lubbock_set_misc_wr);
129 128
@@ -452,9 +451,9 @@ static void lubbock_irda_transceiver_mode(struct device *dev, int mode)
452 451
453 local_irq_save(flags); 452 local_irq_save(flags);
454 if (mode & IR_SIRMODE) { 453 if (mode & IR_SIRMODE) {
455 LUB_MISC_WR &= ~(1 << 4); 454 lubbock_set_misc_wr(BIT(4), 0);
456 } else if (mode & IR_FIRMODE) { 455 } else if (mode & IR_FIRMODE) {
457 LUB_MISC_WR |= 1 << 4; 456 lubbock_set_misc_wr(BIT(4), BIT(4));
458 } 457 }
459 pxa2xx_transceiver_mode(dev, mode); 458 pxa2xx_transceiver_mode(dev, mode);
460 local_irq_restore(flags); 459 local_irq_restore(flags);
@@ -472,6 +471,15 @@ static void __init lubbock_init(void)
472 471
473 pxa2xx_mfp_config(ARRAY_AND_SIZE(lubbock_pin_config)); 472 pxa2xx_mfp_config(ARRAY_AND_SIZE(lubbock_pin_config));
474 473
474 lubbock_misc_wr_gc = gpio_reg_init(NULL, (void *)&LUB_MISC_WR,
475 -1, 16, "lubbock", 0, LUB_MISC_WR,
476 NULL, NULL, NULL);
477 if (IS_ERR(lubbock_misc_wr_gc)) {
478 pr_err("Lubbock: unable to register lubbock GPIOs: %ld\n",
479 PTR_ERR(lubbock_misc_wr_gc));
480 lubbock_misc_wr_gc = NULL;
481 }
482
475 pxa_set_ffuart_info(NULL); 483 pxa_set_ffuart_info(NULL);
476 pxa_set_btuart_info(NULL); 484 pxa_set_btuart_info(NULL);
477 pxa_set_stuart_info(NULL); 485 pxa_set_stuart_info(NULL);
diff --git a/arch/arm/mach-pxa/magician.c b/arch/arm/mach-pxa/magician.c
index 7f3566c93733..c5325d1ae77b 100644
--- a/arch/arm/mach-pxa/magician.c
+++ b/arch/arm/mach-pxa/magician.c
@@ -31,7 +31,7 @@
31#include <linux/regulator/gpio-regulator.h> 31#include <linux/regulator/gpio-regulator.h>
32#include <linux/regulator/machine.h> 32#include <linux/regulator/machine.h>
33#include <linux/usb/gpio_vbus.h> 33#include <linux/usb/gpio_vbus.h>
34#include <linux/i2c/pxa-i2c.h> 34#include <linux/platform_data/i2c-pxa.h>
35 35
36#include <mach/hardware.h> 36#include <mach/hardware.h>
37#include <asm/mach-types.h> 37#include <asm/mach-types.h>
diff --git a/arch/arm/mach-pxa/mainstone.c b/arch/arm/mach-pxa/mainstone.c
index a2d851a3a546..afd62a94fdbf 100644
--- a/arch/arm/mach-pxa/mainstone.c
+++ b/arch/arm/mach-pxa/mainstone.c
@@ -29,7 +29,7 @@
29#include <linux/pwm.h> 29#include <linux/pwm.h>
30#include <linux/pwm_backlight.h> 30#include <linux/pwm_backlight.h>
31#include <linux/smc91x.h> 31#include <linux/smc91x.h>
32#include <linux/i2c/pxa-i2c.h> 32#include <linux/platform_data/i2c-pxa.h>
33#include <linux/slab.h> 33#include <linux/slab.h>
34#include <linux/leds.h> 34#include <linux/leds.h>
35 35
diff --git a/arch/arm/mach-pxa/mioa701.c b/arch/arm/mach-pxa/mioa701.c
index 8a5d0491e73c..9b6c7ea45a40 100644
--- a/arch/arm/mach-pxa/mioa701.c
+++ b/arch/arm/mach-pxa/mioa701.c
@@ -42,7 +42,7 @@
42#include <linux/regulator/fixed.h> 42#include <linux/regulator/fixed.h>
43#include <linux/regulator/max1586.h> 43#include <linux/regulator/max1586.h>
44#include <linux/slab.h> 44#include <linux/slab.h>
45#include <linux/i2c/pxa-i2c.h> 45#include <linux/platform_data/i2c-pxa.h>
46 46
47#include <asm/mach-types.h> 47#include <asm/mach-types.h>
48#include <asm/mach/arch.h> 48#include <asm/mach/arch.h>
diff --git a/arch/arm/mach-pxa/mxm8x10.c b/arch/arm/mach-pxa/mxm8x10.c
index 9a22ae0ad8c9..f9e3d41a4609 100644
--- a/arch/arm/mach-pxa/mxm8x10.c
+++ b/arch/arm/mach-pxa/mxm8x10.c
@@ -22,7 +22,7 @@
22#include <linux/serial_8250.h> 22#include <linux/serial_8250.h>
23#include <linux/dm9000.h> 23#include <linux/dm9000.h>
24#include <linux/gpio.h> 24#include <linux/gpio.h>
25#include <linux/i2c/pxa-i2c.h> 25#include <linux/platform_data/i2c-pxa.h>
26 26
27#include <linux/platform_data/mtd-nand-pxa3xx.h> 27#include <linux/platform_data/mtd-nand-pxa3xx.h>
28 28
diff --git a/arch/arm/mach-pxa/palm27x.c b/arch/arm/mach-pxa/palm27x.c
index e5ae99db1de4..1efe9bcf07fa 100644
--- a/arch/arm/mach-pxa/palm27x.c
+++ b/arch/arm/mach-pxa/palm27x.c
@@ -22,7 +22,7 @@
22#include <linux/power_supply.h> 22#include <linux/power_supply.h>
23#include <linux/usb/gpio_vbus.h> 23#include <linux/usb/gpio_vbus.h>
24#include <linux/regulator/max1586.h> 24#include <linux/regulator/max1586.h>
25#include <linux/i2c/pxa-i2c.h> 25#include <linux/platform_data/i2c-pxa.h>
26 26
27#include <asm/mach-types.h> 27#include <asm/mach-types.h>
28#include <asm/mach/arch.h> 28#include <asm/mach/arch.h>
diff --git a/arch/arm/mach-pxa/pcm990-baseboard.c b/arch/arm/mach-pxa/pcm990-baseboard.c
index 0bd5959ef7d5..973568d4b9ec 100644
--- a/arch/arm/mach-pxa/pcm990-baseboard.c
+++ b/arch/arm/mach-pxa/pcm990-baseboard.c
@@ -23,7 +23,7 @@
23#include <linux/irq.h> 23#include <linux/irq.h>
24#include <linux/platform_device.h> 24#include <linux/platform_device.h>
25#include <linux/i2c.h> 25#include <linux/i2c.h>
26#include <linux/i2c/pxa-i2c.h> 26#include <linux/platform_data/i2c-pxa.h>
27#include <linux/pwm.h> 27#include <linux/pwm.h>
28#include <linux/pwm_backlight.h> 28#include <linux/pwm_backlight.h>
29 29
diff --git a/arch/arm/mach-pxa/poodle.c b/arch/arm/mach-pxa/poodle.c
index 62a119137be7..1adde1251e2b 100644
--- a/arch/arm/mach-pxa/poodle.c
+++ b/arch/arm/mach-pxa/poodle.c
@@ -24,7 +24,7 @@
24#include <linux/mtd/physmap.h> 24#include <linux/mtd/physmap.h>
25#include <linux/gpio.h> 25#include <linux/gpio.h>
26#include <linux/i2c.h> 26#include <linux/i2c.h>
27#include <linux/i2c/pxa-i2c.h> 27#include <linux/platform_data/i2c-pxa.h>
28#include <linux/regulator/machine.h> 28#include <linux/regulator/machine.h>
29#include <linux/spi/spi.h> 29#include <linux/spi/spi.h>
30#include <linux/spi/ads7846.h> 30#include <linux/spi/ads7846.h>
@@ -333,24 +333,6 @@ static struct pxafb_mach_info poodle_fb_info = {
333 .lcd_conn = LCD_COLOR_TFT_16BPP, 333 .lcd_conn = LCD_COLOR_TFT_16BPP,
334}; 334};
335 335
336static struct mtd_partition sharpsl_nand_partitions[] = {
337 {
338 .name = "System Area",
339 .offset = 0,
340 .size = 7 * 1024 * 1024,
341 },
342 {
343 .name = "Root Filesystem",
344 .offset = 7 * 1024 * 1024,
345 .size = 22 * 1024 * 1024,
346 },
347 {
348 .name = "Home Filesystem",
349 .offset = MTDPART_OFS_APPEND,
350 .size = MTDPART_SIZ_FULL,
351 },
352};
353
354static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; 336static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
355 337
356static struct nand_bbt_descr sharpsl_bbt = { 338static struct nand_bbt_descr sharpsl_bbt = {
@@ -360,10 +342,16 @@ static struct nand_bbt_descr sharpsl_bbt = {
360 .pattern = scan_ff_pattern 342 .pattern = scan_ff_pattern
361}; 343};
362 344
345static const char * const probes[] = {
346 "cmdlinepart",
347 "ofpart",
348 "sharpslpart",
349 NULL,
350};
351
363static struct sharpsl_nand_platform_data sharpsl_nand_platform_data = { 352static struct sharpsl_nand_platform_data sharpsl_nand_platform_data = {
364 .badblock_pattern = &sharpsl_bbt, 353 .badblock_pattern = &sharpsl_bbt,
365 .partitions = sharpsl_nand_partitions, 354 .part_parsers = probes,
366 .nr_partitions = ARRAY_SIZE(sharpsl_nand_partitions),
367}; 355};
368 356
369static struct resource sharpsl_nand_resources[] = { 357static struct resource sharpsl_nand_resources[] = {
diff --git a/arch/arm/mach-pxa/pxa27x.c b/arch/arm/mach-pxa/pxa27x.c
index 9b69be4e9fe3..0c06f383ad52 100644
--- a/arch/arm/mach-pxa/pxa27x.c
+++ b/arch/arm/mach-pxa/pxa27x.c
@@ -22,7 +22,7 @@
22#include <linux/syscore_ops.h> 22#include <linux/syscore_ops.h>
23#include <linux/io.h> 23#include <linux/io.h>
24#include <linux/irq.h> 24#include <linux/irq.h>
25#include <linux/i2c/pxa-i2c.h> 25#include <linux/platform_data/i2c-pxa.h>
26 26
27#include <asm/mach/map.h> 27#include <asm/mach/map.h>
28#include <mach/hardware.h> 28#include <mach/hardware.h>
diff --git a/arch/arm/mach-pxa/pxa3xx.c b/arch/arm/mach-pxa/pxa3xx.c
index 0cc9f124c9ac..4b8a0df8ea57 100644
--- a/arch/arm/mach-pxa/pxa3xx.c
+++ b/arch/arm/mach-pxa/pxa3xx.c
@@ -23,7 +23,7 @@
23#include <linux/io.h> 23#include <linux/io.h>
24#include <linux/of.h> 24#include <linux/of.h>
25#include <linux/syscore_ops.h> 25#include <linux/syscore_ops.h>
26#include <linux/i2c/pxa-i2c.h> 26#include <linux/platform_data/i2c-pxa.h>
27 27
28#include <asm/mach/map.h> 28#include <asm/mach/map.h>
29#include <asm/suspend.h> 29#include <asm/suspend.h>
diff --git a/arch/arm/mach-pxa/raumfeld.c b/arch/arm/mach-pxa/raumfeld.c
index feddca7f3540..4d5d05cf87d6 100644
--- a/arch/arm/mach-pxa/raumfeld.c
+++ b/arch/arm/mach-pxa/raumfeld.c
@@ -32,7 +32,7 @@
32#include <linux/pwm.h> 32#include <linux/pwm.h>
33#include <linux/pwm_backlight.h> 33#include <linux/pwm_backlight.h>
34#include <linux/i2c.h> 34#include <linux/i2c.h>
35#include <linux/i2c/pxa-i2c.h> 35#include <linux/platform_data/i2c-pxa.h>
36#include <linux/spi/spi.h> 36#include <linux/spi/spi.h>
37#include <linux/spi/spi_gpio.h> 37#include <linux/spi/spi_gpio.h>
38#include <linux/lis3lv02d.h> 38#include <linux/lis3lv02d.h>
diff --git a/arch/arm/mach-pxa/saar.c b/arch/arm/mach-pxa/saar.c
index 1414b5f29114..834991034f30 100644
--- a/arch/arm/mach-pxa/saar.c
+++ b/arch/arm/mach-pxa/saar.c
@@ -20,7 +20,7 @@
20#include <linux/delay.h> 20#include <linux/delay.h>
21#include <linux/fb.h> 21#include <linux/fb.h>
22#include <linux/i2c.h> 22#include <linux/i2c.h>
23#include <linux/i2c/pxa-i2c.h> 23#include <linux/platform_data/i2c-pxa.h>
24#include <linux/smc91x.h> 24#include <linux/smc91x.h>
25#include <linux/mfd/da903x.h> 25#include <linux/mfd/da903x.h>
26#include <linux/mtd/mtd.h> 26#include <linux/mtd/mtd.h>
diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c
index 67d66c702574..5d50025492b7 100644
--- a/arch/arm/mach-pxa/spitz.c
+++ b/arch/arm/mach-pxa/spitz.c
@@ -20,7 +20,7 @@
20#include <linux/gpio.h> 20#include <linux/gpio.h>
21#include <linux/leds.h> 21#include <linux/leds.h>
22#include <linux/i2c.h> 22#include <linux/i2c.h>
23#include <linux/i2c/pxa-i2c.h> 23#include <linux/platform_data/i2c-pxa.h>
24#include <linux/platform_data/pca953x.h> 24#include <linux/platform_data/pca953x.h>
25#include <linux/spi/spi.h> 25#include <linux/spi/spi.h>
26#include <linux/spi/ads7846.h> 26#include <linux/spi/ads7846.h>
@@ -739,21 +739,6 @@ static inline void spitz_lcd_init(void) {}
739 * NAND Flash 739 * NAND Flash
740 ******************************************************************************/ 740 ******************************************************************************/
741#if defined(CONFIG_MTD_NAND_SHARPSL) || defined(CONFIG_MTD_NAND_SHARPSL_MODULE) 741#if defined(CONFIG_MTD_NAND_SHARPSL) || defined(CONFIG_MTD_NAND_SHARPSL_MODULE)
742static struct mtd_partition spitz_nand_partitions[] = {
743 {
744 .name = "System Area",
745 .offset = 0,
746 .size = 7 * 1024 * 1024,
747 }, {
748 .name = "Root Filesystem",
749 .offset = 7 * 1024 * 1024,
750 }, {
751 .name = "Home Filesystem",
752 .offset = MTDPART_OFS_APPEND,
753 .size = MTDPART_SIZ_FULL,
754 },
755};
756
757static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; 742static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
758 743
759static struct nand_bbt_descr spitz_nand_bbt = { 744static struct nand_bbt_descr spitz_nand_bbt = {
@@ -808,10 +793,16 @@ static const struct mtd_ooblayout_ops akita_ooblayout_ops = {
808 .free = akita_ooblayout_free, 793 .free = akita_ooblayout_free,
809}; 794};
810 795
796static const char * const probes[] = {
797 "cmdlinepart",
798 "ofpart",
799 "sharpslpart",
800 NULL,
801};
802
811static struct sharpsl_nand_platform_data spitz_nand_pdata = { 803static struct sharpsl_nand_platform_data spitz_nand_pdata = {
812 .badblock_pattern = &spitz_nand_bbt, 804 .badblock_pattern = &spitz_nand_bbt,
813 .partitions = spitz_nand_partitions, 805 .part_parsers = probes,
814 .nr_partitions = ARRAY_SIZE(spitz_nand_partitions),
815}; 806};
816 807
817static struct resource spitz_nand_resources[] = { 808static struct resource spitz_nand_resources[] = {
@@ -834,14 +825,7 @@ static struct platform_device spitz_nand_device = {
834 825
835static void __init spitz_nand_init(void) 826static void __init spitz_nand_init(void)
836{ 827{
837 if (machine_is_spitz()) { 828 if (machine_is_akita() || machine_is_borzoi()) {
838 spitz_nand_partitions[1].size = 5 * 1024 * 1024;
839 } else if (machine_is_akita()) {
840 spitz_nand_partitions[1].size = 58 * 1024 * 1024;
841 spitz_nand_bbt.len = 1;
842 spitz_nand_pdata.ecc_layout = &akita_ooblayout_ops;
843 } else if (machine_is_borzoi()) {
844 spitz_nand_partitions[1].size = 32 * 1024 * 1024;
845 spitz_nand_bbt.len = 1; 829 spitz_nand_bbt.len = 1;
846 spitz_nand_pdata.ecc_layout = &akita_ooblayout_ops; 830 spitz_nand_pdata.ecc_layout = &akita_ooblayout_ops;
847 } 831 }
diff --git a/arch/arm/mach-pxa/stargate2.c b/arch/arm/mach-pxa/stargate2.c
index 6b7df6fd2448..df62bb23dbee 100644
--- a/arch/arm/mach-pxa/stargate2.c
+++ b/arch/arm/mach-pxa/stargate2.c
@@ -25,7 +25,7 @@
25#include <linux/mtd/plat-ram.h> 25#include <linux/mtd/plat-ram.h>
26#include <linux/mtd/partitions.h> 26#include <linux/mtd/partitions.h>
27 27
28#include <linux/i2c/pxa-i2c.h> 28#include <linux/platform_data/i2c-pxa.h>
29#include <linux/platform_data/pcf857x.h> 29#include <linux/platform_data/pcf857x.h>
30#include <linux/platform_data/at24.h> 30#include <linux/platform_data/at24.h>
31#include <linux/smc91x.h> 31#include <linux/smc91x.h>
diff --git a/arch/arm/mach-pxa/tosa-bt.c b/arch/arm/mach-pxa/tosa-bt.c
index 107f37210fb9..83606087edc7 100644
--- a/arch/arm/mach-pxa/tosa-bt.c
+++ b/arch/arm/mach-pxa/tosa-bt.c
@@ -132,3 +132,7 @@ static struct platform_driver tosa_bt_driver = {
132 }, 132 },
133}; 133};
134module_platform_driver(tosa_bt_driver); 134module_platform_driver(tosa_bt_driver);
135
136MODULE_LICENSE("GPL");
137MODULE_AUTHOR("Dmitry Baryshkov");
138MODULE_DESCRIPTION("Bluetooth built-in chip control");
diff --git a/arch/arm/mach-pxa/tosa.c b/arch/arm/mach-pxa/tosa.c
index 6a386fd6363e..cb5cd8e78c94 100644
--- a/arch/arm/mach-pxa/tosa.c
+++ b/arch/arm/mach-pxa/tosa.c
@@ -35,7 +35,7 @@
35#include <linux/spi/spi.h> 35#include <linux/spi/spi.h>
36#include <linux/spi/pxa2xx_spi.h> 36#include <linux/spi/pxa2xx_spi.h>
37#include <linux/input/matrix_keypad.h> 37#include <linux/input/matrix_keypad.h>
38#include <linux/i2c/pxa-i2c.h> 38#include <linux/platform_data/i2c-pxa.h>
39#include <linux/usb/gpio_vbus.h> 39#include <linux/usb/gpio_vbus.h>
40#include <linux/reboot.h> 40#include <linux/reboot.h>
41#include <linux/memblock.h> 41#include <linux/memblock.h>
@@ -673,24 +673,6 @@ static int tosa_tc6393xb_suspend(struct platform_device *dev)
673 return 0; 673 return 0;
674} 674}
675 675
676static struct mtd_partition tosa_nand_partition[] = {
677 {
678 .name = "smf",
679 .offset = 0,
680 .size = 7 * 1024 * 1024,
681 },
682 {
683 .name = "root",
684 .offset = MTDPART_OFS_APPEND,
685 .size = 28 * 1024 * 1024,
686 },
687 {
688 .name = "home",
689 .offset = MTDPART_OFS_APPEND,
690 .size = MTDPART_SIZ_FULL,
691 },
692};
693
694static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; 676static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
695 677
696static struct nand_bbt_descr tosa_tc6393xb_nand_bbt = { 678static struct nand_bbt_descr tosa_tc6393xb_nand_bbt = {
@@ -700,10 +682,16 @@ static struct nand_bbt_descr tosa_tc6393xb_nand_bbt = {
700 .pattern = scan_ff_pattern 682 .pattern = scan_ff_pattern
701}; 683};
702 684
685static const char * const probes[] = {
686 "cmdlinepart",
687 "ofpart",
688 "sharpslpart",
689 NULL,
690};
691
703static struct tmio_nand_data tosa_tc6393xb_nand_config = { 692static struct tmio_nand_data tosa_tc6393xb_nand_config = {
704 .num_partitions = ARRAY_SIZE(tosa_nand_partition),
705 .partition = tosa_nand_partition,
706 .badblock_pattern = &tosa_tc6393xb_nand_bbt, 693 .badblock_pattern = &tosa_tc6393xb_nand_bbt,
694 .part_parsers = probes,
707}; 695};
708 696
709static int tosa_tc6393xb_setup(struct platform_device *dev) 697static int tosa_tc6393xb_setup(struct platform_device *dev)
diff --git a/arch/arm/mach-pxa/trizeps4.c b/arch/arm/mach-pxa/trizeps4.c
index 3dd13b44c311..55b8c501b6fc 100644
--- a/arch/arm/mach-pxa/trizeps4.c
+++ b/arch/arm/mach-pxa/trizeps4.c
@@ -28,7 +28,7 @@
28#include <linux/mtd/physmap.h> 28#include <linux/mtd/physmap.h>
29#include <linux/mtd/partitions.h> 29#include <linux/mtd/partitions.h>
30#include <linux/regulator/machine.h> 30#include <linux/regulator/machine.h>
31#include <linux/i2c/pxa-i2c.h> 31#include <linux/platform_data/i2c-pxa.h>
32 32
33#include <asm/types.h> 33#include <asm/types.h>
34#include <asm/setup.h> 34#include <asm/setup.h>
diff --git a/arch/arm/mach-pxa/viper.c b/arch/arm/mach-pxa/viper.c
index 4185e7ff073f..90d0f277de55 100644
--- a/arch/arm/mach-pxa/viper.c
+++ b/arch/arm/mach-pxa/viper.c
@@ -37,7 +37,7 @@
37#include <linux/jiffies.h> 37#include <linux/jiffies.h>
38#include <linux/i2c-gpio.h> 38#include <linux/i2c-gpio.h>
39#include <linux/gpio/machine.h> 39#include <linux/gpio/machine.h>
40#include <linux/i2c/pxa-i2c.h> 40#include <linux/platform_data/i2c-pxa.h>
41#include <linux/serial_8250.h> 41#include <linux/serial_8250.h>
42#include <linux/smc91x.h> 42#include <linux/smc91x.h>
43#include <linux/pwm.h> 43#include <linux/pwm.h>
diff --git a/arch/arm/mach-pxa/vpac270.c b/arch/arm/mach-pxa/vpac270.c
index 70ab3ad28237..f65dfb6e20e2 100644
--- a/arch/arm/mach-pxa/vpac270.c
+++ b/arch/arm/mach-pxa/vpac270.c
@@ -27,7 +27,7 @@
27#include <linux/ata_platform.h> 27#include <linux/ata_platform.h>
28#include <linux/regulator/machine.h> 28#include <linux/regulator/machine.h>
29#include <linux/regulator/max1586.h> 29#include <linux/regulator/max1586.h>
30#include <linux/i2c/pxa-i2c.h> 30#include <linux/platform_data/i2c-pxa.h>
31 31
32#include <asm/mach-types.h> 32#include <asm/mach-types.h>
33#include <asm/mach/arch.h> 33#include <asm/mach/arch.h>
diff --git a/arch/arm/mach-pxa/xcep.c b/arch/arm/mach-pxa/xcep.c
index 056369ef250e..c368c98584c0 100644
--- a/arch/arm/mach-pxa/xcep.c
+++ b/arch/arm/mach-pxa/xcep.c
@@ -16,7 +16,7 @@
16 16
17#include <linux/platform_device.h> 17#include <linux/platform_device.h>
18#include <linux/i2c.h> 18#include <linux/i2c.h>
19#include <linux/i2c/pxa-i2c.h> 19#include <linux/platform_data/i2c-pxa.h>
20#include <linux/smc91x.h> 20#include <linux/smc91x.h>
21#include <linux/mtd/mtd.h> 21#include <linux/mtd/mtd.h>
22#include <linux/mtd/partitions.h> 22#include <linux/mtd/partitions.h>
@@ -32,6 +32,7 @@
32#include <mach/smemc.h> 32#include <mach/smemc.h>
33 33
34#include "generic.h" 34#include "generic.h"
35#include "devices.h"
35 36
36#define XCEP_ETH_PHYS (PXA_CS3_PHYS + 0x00000300) 37#define XCEP_ETH_PHYS (PXA_CS3_PHYS + 0x00000300)
37#define XCEP_ETH_PHYS_END (PXA_CS3_PHYS + 0x000fffff) 38#define XCEP_ETH_PHYS_END (PXA_CS3_PHYS + 0x000fffff)
diff --git a/arch/arm/mach-pxa/z2.c b/arch/arm/mach-pxa/z2.c
index 510e533871f3..6fffcfc4621e 100644
--- a/arch/arm/mach-pxa/z2.c
+++ b/arch/arm/mach-pxa/z2.c
@@ -30,7 +30,7 @@
30#include <linux/gpio_keys.h> 30#include <linux/gpio_keys.h>
31#include <linux/delay.h> 31#include <linux/delay.h>
32#include <linux/regulator/machine.h> 32#include <linux/regulator/machine.h>
33#include <linux/i2c/pxa-i2c.h> 33#include <linux/platform_data/i2c-pxa.h>
34 34
35#include <asm/mach-types.h> 35#include <asm/mach-types.h>
36#include <asm/mach/arch.h> 36#include <asm/mach/arch.h>
diff --git a/arch/arm/mach-pxa/zeus.c b/arch/arm/mach-pxa/zeus.c
index ecbcaee5a2d5..e3851795d6d7 100644
--- a/arch/arm/mach-pxa/zeus.c
+++ b/arch/arm/mach-pxa/zeus.c
@@ -26,7 +26,7 @@
26#include <linux/mtd/partitions.h> 26#include <linux/mtd/partitions.h>
27#include <linux/mtd/physmap.h> 27#include <linux/mtd/physmap.h>
28#include <linux/i2c.h> 28#include <linux/i2c.h>
29#include <linux/i2c/pxa-i2c.h> 29#include <linux/platform_data/i2c-pxa.h>
30#include <linux/platform_data/pca953x.h> 30#include <linux/platform_data/pca953x.h>
31#include <linux/apm-emulation.h> 31#include <linux/apm-emulation.h>
32#include <linux/can/platform/mcp251x.h> 32#include <linux/can/platform/mcp251x.h>
@@ -40,6 +40,7 @@
40#include <asm/mach/map.h> 40#include <asm/mach/map.h>
41 41
42#include "pxa27x.h" 42#include "pxa27x.h"
43#include "devices.h"
43#include <mach/regs-uart.h> 44#include <mach/regs-uart.h>
44#include <linux/platform_data/usb-ohci-pxa27x.h> 45#include <linux/platform_data/usb-ohci-pxa27x.h>
45#include <linux/platform_data/mmc-pxamci.h> 46#include <linux/platform_data/mmc-pxamci.h>
diff --git a/arch/arm/mach-pxa/zylonite_pxa300.c b/arch/arm/mach-pxa/zylonite_pxa300.c
index e247acf1400a..0ff4e218080f 100644
--- a/arch/arm/mach-pxa/zylonite_pxa300.c
+++ b/arch/arm/mach-pxa/zylonite_pxa300.c
@@ -17,11 +17,12 @@
17#include <linux/kernel.h> 17#include <linux/kernel.h>
18#include <linux/init.h> 18#include <linux/init.h>
19#include <linux/i2c.h> 19#include <linux/i2c.h>
20#include <linux/i2c/pxa-i2c.h> 20#include <linux/platform_data/i2c-pxa.h>
21#include <linux/platform_data/pca953x.h> 21#include <linux/platform_data/pca953x.h>
22#include <linux/gpio.h> 22#include <linux/gpio.h>
23 23
24#include "pxa300.h" 24#include "pxa300.h"
25#include "devices.h"
25#include "zylonite.h" 26#include "zylonite.h"
26 27
27#include "generic.h" 28#include "generic.h"
diff --git a/arch/arm/mach-s3c24xx/Kconfig b/arch/arm/mach-s3c24xx/Kconfig
index b198be7d32b6..686f0bbde998 100644
--- a/arch/arm/mach-s3c24xx/Kconfig
+++ b/arch/arm/mach-s3c24xx/Kconfig
@@ -1,11 +1,9 @@
1# arch/arm/mach-s3c24xx/Kconfig 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright (c) 2012 Samsung Electronics Co., Ltd. 3# Copyright (c) 2012 Samsung Electronics Co., Ltd.
4# http://www.samsung.com/ 4# http://www.samsung.com/
5# 5#
6# Copyright 2007 Simtec Electronics 6# Copyright 2007 Simtec Electronics
7#
8# Licensed under GPLv2
9 7
10if ARCH_S3C24XX 8if ARCH_S3C24XX
11 9
diff --git a/arch/arm/mach-s3c24xx/Makefile b/arch/arm/mach-s3c24xx/Makefile
index 8ac2f58a3480..6692f2de71b2 100644
--- a/arch/arm/mach-s3c24xx/Makefile
+++ b/arch/arm/mach-s3c24xx/Makefile
@@ -1,11 +1,9 @@
1# arch/arm/mach-s3c24xx/Makefile 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright (c) 2012 Samsung Electronics Co., Ltd. 3# Copyright (c) 2012 Samsung Electronics Co., Ltd.
4# http://www.samsung.com/ 4# http://www.samsung.com/
5# 5#
6# Copyright 2007 Simtec Electronics 6# Copyright 2007 Simtec Electronics
7#
8# Licensed under GPLv2
9 7
10# core 8# core
11 9
diff --git a/arch/arm/mach-s3c24xx/Makefile.boot b/arch/arm/mach-s3c24xx/Makefile.boot
index 4457605ba04a..7f19e226035e 100644
--- a/arch/arm/mach-s3c24xx/Makefile.boot
+++ b/arch/arm/mach-s3c24xx/Makefile.boot
@@ -1,3 +1,5 @@
1# SPDX-License-Identifier: GPL-2.0
2
1ifeq ($(CONFIG_PM_H1940),y) 3ifeq ($(CONFIG_PM_H1940),y)
2 zreladdr-y += 0x30108000 4 zreladdr-y += 0x30108000
3 params_phys-y := 0x30100100 5 params_phys-y := 0x30100100
diff --git a/arch/arm/mach-s3c24xx/anubis.h b/arch/arm/mach-s3c24xx/anubis.h
index 2691665f27d9..13847292e6c7 100644
--- a/arch/arm/mach-s3c24xx/anubis.h
+++ b/arch/arm/mach-s3c24xx/anubis.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2005 Simtec Electronics 3 * Copyright (c) 2005 Simtec Electronics
3 * http://www.simtec.co.uk/products/ 4 * http://www.simtec.co.uk/products/
@@ -6,11 +7,7 @@
6 * ANUBIS - CPLD control constants 7 * ANUBIS - CPLD control constants
7 * ANUBIS - IRQ Number definitions 8 * ANUBIS - IRQ Number definitions
8 * ANUBIS - Memory map definitions 9 * ANUBIS - Memory map definitions
9 * 10 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 11
15#ifndef __MACH_S3C24XX_ANUBIS_H 12#ifndef __MACH_S3C24XX_ANUBIS_H
16#define __MACH_S3C24XX_ANUBIS_H __FILE__ 13#define __MACH_S3C24XX_ANUBIS_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/bast-ide.c b/arch/arm/mach-s3c24xx/bast-ide.c
index 3f0288f2f542..067944398f46 100644
--- a/arch/arm/mach-s3c24xx/bast-ide.c
+++ b/arch/arm/mach-s3c24xx/bast-ide.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c2410/bast-ide.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2007 Simtec Electronics 3// Copyright 2007 Simtec Electronics
4 * http://www.simtec.co.uk/products/EB2410ITX/ 4// http://www.simtec.co.uk/products/EB2410ITX/
5 * http://armlinux.simtec.co.uk/ 5// http://armlinux.simtec.co.uk/
6 * Ben Dooks <ben@simtec.co.uk> 6// Ben Dooks <ben@simtec.co.uk>
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/bast-irq.c b/arch/arm/mach-s3c24xx/bast-irq.c
index ad8f4cd7c327..03728058d58d 100644
--- a/arch/arm/mach-s3c24xx/bast-irq.c
+++ b/arch/arm/mach-s3c24xx/bast-irq.c
@@ -1,25 +1,9 @@
1/* linux/arch/arm/mach-s3c2410/bast-irq.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * Copyright 2003-2005 Simtec Electronics 3// Copyright 2003-2005 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://www.simtec.co.uk/products/EB2410ITX/ 6// http://www.simtec.co.uk/products/EB2410ITX/
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21*/
22
23 7
24#include <linux/init.h> 8#include <linux/init.h>
25#include <linux/module.h> 9#include <linux/module.h>
diff --git a/arch/arm/mach-s3c24xx/bast.h b/arch/arm/mach-s3c24xx/bast.h
index 5c7534bae92d..a7726f93f5eb 100644
--- a/arch/arm/mach-s3c24xx/bast.h
+++ b/arch/arm/mach-s3c24xx/bast.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2003-2004 Simtec Electronics 3 * Copyright (c) 2003-2004 Simtec Electronics
3 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
@@ -5,11 +6,7 @@
5 * BAST - CPLD control constants 6 * BAST - CPLD control constants
6 * BAST - IRQ Number definitions 7 * BAST - IRQ Number definitions
7 * BAST - Memory map definitions 8 * BAST - Memory map definitions
8 * 9 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 10
14#ifndef __MACH_S3C24XX_BAST_H 11#ifndef __MACH_S3C24XX_BAST_H
15#define __MACH_S3C24XX_BAST_H __FILE__ 12#define __MACH_S3C24XX_BAST_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/common-smdk.c b/arch/arm/mach-s3c24xx/common-smdk.c
index 0e116c92bf01..58e30cad386c 100644
--- a/arch/arm/mach-s3c24xx/common-smdk.c
+++ b/arch/arm/mach-s3c24xx/common-smdk.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-s3c24xx/common-smdk.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2006 Simtec Electronics 3// Copyright (c) 2006 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * Common code for SMDK2410 and SMDK2440 boards 6// Common code for SMDK2410 and SMDK2440 boards
7 * 7//
8 * http://www.fluff.org/ben/smdk2440/ 8// http://www.fluff.org/ben/smdk2440/
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/kernel.h> 10#include <linux/kernel.h>
16#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/common-smdk.h b/arch/arm/mach-s3c24xx/common-smdk.h
index 98f733e1cb42..c0352b06e435 100644
--- a/arch/arm/mach-s3c24xx/common-smdk.h
+++ b/arch/arm/mach-s3c24xx/common-smdk.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2006 Simtec Electronics 3 * Copyright (c) 2006 Simtec Electronics
3 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
@@ -5,10 +6,6 @@
5 * Common code for SMDK2410 and SMDK2440 boards 6 * Common code for SMDK2410 and SMDK2440 boards
6 * 7 *
7 * http://www.fluff.org/ben/smdk2440/ 8 * http://www.fluff.org/ben/smdk2440/
8 * 9 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 10
14extern void smdk_machine_init(void); 11extern void smdk_machine_init(void);
diff --git a/arch/arm/mach-s3c24xx/common.c b/arch/arm/mach-s3c24xx/common.c
index 5b6b94ef41e2..3dc029c2d2cb 100644
--- a/arch/arm/mach-s3c24xx/common.c
+++ b/arch/arm/mach-s3c24xx/common.c
@@ -1,25 +1,10 @@
1/* linux/arch/arm/plat-s3c24xx/cpu.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * Copyright (c) 2004-2005 Simtec Electronics 3// Copyright (c) 2004-2005 Simtec Electronics
4 * http://www.simtec.co.uk/products/SWLINUX/ 4// http://www.simtec.co.uk/products/SWLINUX/
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * 6//
7 * Common code for S3C24XX machines 7// Common code for S3C24XX machines
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22*/
23 8
24#include <linux/dma-mapping.h> 9#include <linux/dma-mapping.h>
25#include <linux/init.h> 10#include <linux/init.h>
diff --git a/arch/arm/mach-s3c24xx/common.h b/arch/arm/mach-s3c24xx/common.h
index c7ac7e61a22e..d087b20e8857 100644
--- a/arch/arm/mach-s3c24xx/common.h
+++ b/arch/arm/mach-s3c24xx/common.h
@@ -1,12 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 4 * http://www.samsung.com
4 * 5 *
5 * Common Header for S3C24XX SoCs 6 * Common Header for S3C24XX SoCs
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */ 7 */
11 8
12#ifndef __ARCH_ARM_MACH_S3C24XX_COMMON_H 9#ifndef __ARCH_ARM_MACH_S3C24XX_COMMON_H
diff --git a/arch/arm/mach-s3c24xx/cpufreq-utils.c b/arch/arm/mach-s3c24xx/cpufreq-utils.c
index d4d9514335f4..1a7f38d085dd 100644
--- a/arch/arm/mach-s3c24xx/cpufreq-utils.c
+++ b/arch/arm/mach-s3c24xx/cpufreq-utils.c
@@ -1,14 +1,10 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2009 Simtec Electronics 2//
3 * http://armlinux.simtec.co.uk/ 3// Copyright (c) 2009 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// http://armlinux.simtec.co.uk/
5 * 5// Ben Dooks <ben@simtec.co.uk>
6 * S3C24XX CPU Frequency scaling - utils for S3C2410/S3C2440/S3C2442 6//
7 * 7// S3C24XX CPU Frequency scaling - utils for S3C2410/S3C2440/S3C2442
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#include <linux/kernel.h> 9#include <linux/kernel.h>
14#include <linux/errno.h> 10#include <linux/errno.h>
diff --git a/arch/arm/mach-s3c24xx/fb-core.h b/arch/arm/mach-s3c24xx/fb-core.h
index 103bdbaddd55..1821e820262c 100644
--- a/arch/arm/mach-s3c24xx/fb-core.h
+++ b/arch/arm/mach-s3c24xx/fb-core.h
@@ -1,12 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright 2010 Samsung Electronics Co., Ltd. 3 * Copyright 2010 Samsung Electronics Co., Ltd.
3 * Pawel Osciak <p.osciak@samsung.com> 4 * Pawel Osciak <p.osciak@samsung.com>
4 * 5 *
5 * Samsung framebuffer driver core functions 6 * Samsung framebuffer driver core functions
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */ 7 */
11#ifndef __ASM_PLAT_FB_CORE_H 8#ifndef __ASM_PLAT_FB_CORE_H
12#define __ASM_PLAT_FB_CORE_H __FILE__ 9#define __ASM_PLAT_FB_CORE_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/gta02.h b/arch/arm/mach-s3c24xx/gta02.h
index 9430a71e9184..d5610ba829a4 100644
--- a/arch/arm/mach-s3c24xx/gta02.h
+++ b/arch/arm/mach-s3c24xx/gta02.h
@@ -1,10 +1,7 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * GTA02 header 3 * GTA02 header
3 * 4 */
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7*/
8 5
9#ifndef __MACH_S3C24XX_GTA02_H 6#ifndef __MACH_S3C24XX_GTA02_H
10#define __MACH_S3C24XX_GTA02_H __FILE__ 7#define __MACH_S3C24XX_GTA02_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/h1940-bluetooth.c b/arch/arm/mach-s3c24xx/h1940-bluetooth.c
index 9c8b1279a4ba..46ad20ea87d1 100644
--- a/arch/arm/mach-s3c24xx/h1940-bluetooth.c
+++ b/arch/arm/mach-s3c24xx/h1940-bluetooth.c
@@ -1,14 +1,8 @@
1/* 1// SPDX-License-Identifier: GPL-1.0
2 * arch/arm/mach-s3c2410/h1940-bluetooth.c 2//
3 * Copyright (c) Arnaud Patard <arnaud.patard@rtp-net.org> 3// Copyright (c) Arnaud Patard <arnaud.patard@rtp-net.org>
4 * 4//
5 * This file is subject to the terms and conditions of the GNU General Public 5// S3C2410 bluetooth "driver"
6 * License. See the file COPYING in the main directory of this archive for
7 * more details.
8 *
9 * S3C2410 bluetooth "driver"
10 *
11 */
12 6
13#include <linux/module.h> 7#include <linux/module.h>
14#include <linux/platform_device.h> 8#include <linux/platform_device.h>
diff --git a/arch/arm/mach-s3c24xx/h1940.h b/arch/arm/mach-s3c24xx/h1940.h
index 596d9f64c5b6..5dfe9d10cd15 100644
--- a/arch/arm/mach-s3c24xx/h1940.h
+++ b/arch/arm/mach-s3c24xx/h1940.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright 2006 Ben Dooks <ben-linux@fluff.org> 3 * Copyright 2006 Ben Dooks <ben-linux@fluff.org>
3 * 4 *
@@ -6,11 +7,7 @@
6 * Ben Dooks <ben@simtec.co.uk> 7 * Ben Dooks <ben@simtec.co.uk>
7 * 8 *
8 * iPAQ H1940 series definitions 9 * iPAQ H1940 series definitions
9 * 10 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 11
15#ifndef __MACH_S3C24XX_H1940_H 12#ifndef __MACH_S3C24XX_H1940_H
16#define __MACH_S3C24XX_H1940_H __FILE__ 13#define __MACH_S3C24XX_H1940_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/include/mach/dma.h b/arch/arm/mach-s3c24xx/include/mach/dma.h
index 9e8117198e0c..25fc9c258fc1 100644
--- a/arch/arm/mach-s3c24xx/include/mach/dma.h
+++ b/arch/arm/mach-s3c24xx/include/mach/dma.h
@@ -1,14 +1,10 @@
1/* arch/arm/mach-s3c2410/include/mach/dma.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (C) 2003-2006 Simtec Electronics 3 * Copyright (C) 2003-2006 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * 5 *
6 * Samsung S3C24XX DMA support 6 * Samsung S3C24XX DMA support
7 * 7 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#ifndef __ASM_ARCH_DMA_H 9#ifndef __ASM_ARCH_DMA_H
14#define __ASM_ARCH_DMA_H __FILE__ 10#define __ASM_ARCH_DMA_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/include/mach/fb.h b/arch/arm/mach-s3c24xx/include/mach/fb.h
index a957bc8ed44f..4e539cb8b884 100644
--- a/arch/arm/mach-s3c24xx/include/mach/fb.h
+++ b/arch/arm/mach-s3c24xx/include/mach/fb.h
@@ -1 +1,2 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1#include <plat/fb-s3c2410.h> 2#include <plat/fb-s3c2410.h>
diff --git a/arch/arm/mach-s3c24xx/include/mach/gpio-samsung.h b/arch/arm/mach-s3c24xx/include/mach/gpio-samsung.h
index 528fcdc4f63e..2ad22b2d459b 100644
--- a/arch/arm/mach-s3c24xx/include/mach/gpio-samsung.h
+++ b/arch/arm/mach-s3c24xx/include/mach/gpio-samsung.h
@@ -1,14 +1,11 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2008 Simtec Electronics 3 * Copyright (c) 2008 Simtec Electronics
3 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
4 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
5 * 6 *
6 * S3C2410 - GPIO lib support 7 * S3C2410 - GPIO lib support
7 * 8 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 9
13/* some boards require extra gpio capacity to support external 10/* some boards require extra gpio capacity to support external
14 * devices that need GPIO. 11 * devices that need GPIO.
diff --git a/arch/arm/mach-s3c24xx/include/mach/hardware.h b/arch/arm/mach-s3c24xx/include/mach/hardware.h
index dedd3837c193..1b2975708e3f 100644
--- a/arch/arm/mach-s3c24xx/include/mach/hardware.h
+++ b/arch/arm/mach-s3c24xx/include/mach/hardware.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2003 Simtec Electronics 3 * Copyright (c) 2003 Simtec Electronics
3 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
4 * 5 *
5 * S3C2410 - hardware 6 * S3C2410 - hardware
6 * 7 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 8
12#ifndef __ASM_ARCH_HARDWARE_H 9#ifndef __ASM_ARCH_HARDWARE_H
13#define __ASM_ARCH_HARDWARE_H 10#define __ASM_ARCH_HARDWARE_H
diff --git a/arch/arm/mach-s3c24xx/include/mach/irqs.h b/arch/arm/mach-s3c24xx/include/mach/irqs.h
index b6dd4cb5a2ec..aaf3bae08b52 100644
--- a/arch/arm/mach-s3c24xx/include/mach/irqs.h
+++ b/arch/arm/mach-s3c24xx/include/mach/irqs.h
@@ -1,12 +1,8 @@
1/* arch/arm/mach-s3c2410/include/mach/irqs.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2003-2005 Simtec Electronics 3 * Copyright (c) 2003-2005 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * 5 */
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9*/
10 6
11 7
12#ifndef __ASM_ARCH_IRQS_H 8#ifndef __ASM_ARCH_IRQS_H
diff --git a/arch/arm/mach-s3c24xx/include/mach/map.h b/arch/arm/mach-s3c24xx/include/mach/map.h
index adc39043aa21..bca93112f57d 100644
--- a/arch/arm/mach-s3c24xx/include/mach/map.h
+++ b/arch/arm/mach-s3c24xx/include/mach/map.h
@@ -1,14 +1,10 @@
1/* arch/arm/mach-s3c2410/include/mach/map.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2003 Simtec Electronics 3 * Copyright (c) 2003 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * 5 *
6 * S3C2410 - Memory map definitions 6 * S3C2410 - Memory map definitions
7 * 7 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#ifndef __ASM_ARCH_MAP_H 9#ifndef __ASM_ARCH_MAP_H
14#define __ASM_ARCH_MAP_H 10#define __ASM_ARCH_MAP_H
diff --git a/arch/arm/mach-s3c24xx/include/mach/pm-core.h b/arch/arm/mach-s3c24xx/include/mach/pm-core.h
index 712333fec589..5e4ce89d0158 100644
--- a/arch/arm/mach-s3c24xx/include/mach/pm-core.h
+++ b/arch/arm/mach-s3c24xx/include/mach/pm-core.h
@@ -1,15 +1,12 @@
1/* linux/arch/arm/mach-s3c2410/include/pm-core.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Simtec Electronics 3 * Copyright 2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
6 * 6 *
7 * S3C24xx - PM core support for arch/arm/plat-s3c/pm.c 7 * S3C24xx - PM core support for arch/arm/plat-s3c/pm.c
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 */ 8 */
9
13#include <linux/delay.h> 10#include <linux/delay.h>
14#include <linux/io.h> 11#include <linux/io.h>
15 12
diff --git a/arch/arm/mach-s3c24xx/include/mach/regs-clock.h b/arch/arm/mach-s3c24xx/include/mach/regs-clock.h
index ae4a3e0f3ba2..7ca3dd4f13c0 100644
--- a/arch/arm/mach-s3c24xx/include/mach/regs-clock.h
+++ b/arch/arm/mach-s3c24xx/include/mach/regs-clock.h
@@ -1,14 +1,10 @@
1/* arch/arm/mach-s3c2410/include/mach/regs-clock.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2003-2006 Simtec Electronics <linux@simtec.co.uk> 3 * Copyright (c) 2003-2006 Simtec Electronics <linux@simtec.co.uk>
4 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 * S3C2410 clock register definitions 6 * S3C2410 clock register definitions
11*/ 7 */
12 8
13#ifndef __ASM_ARM_REGS_CLOCK 9#ifndef __ASM_ARM_REGS_CLOCK
14#define __ASM_ARM_REGS_CLOCK 10#define __ASM_ARM_REGS_CLOCK
diff --git a/arch/arm/mach-s3c24xx/include/mach/regs-gpio.h b/arch/arm/mach-s3c24xx/include/mach/regs-gpio.h
index 0d622f3b57a5..594e967c0673 100644
--- a/arch/arm/mach-s3c24xx/include/mach/regs-gpio.h
+++ b/arch/arm/mach-s3c24xx/include/mach/regs-gpio.h
@@ -1,14 +1,10 @@
1/* arch/arm/mach-s3c2410/include/mach/regs-gpio.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2003-2004 Simtec Electronics <linux@simtec.co.uk> 3 * Copyright (c) 2003-2004 Simtec Electronics <linux@simtec.co.uk>
4 * http://www.simtec.co.uk/products/SWLINUX/ 4 * http://www.simtec.co.uk/products/SWLINUX/
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 * S3C2410 GPIO register definitions 6 * S3C2410 GPIO register definitions
11*/ 7 */
12 8
13 9
14#ifndef __ASM_ARCH_REGS_GPIO_H 10#ifndef __ASM_ARCH_REGS_GPIO_H
diff --git a/arch/arm/mach-s3c24xx/include/mach/regs-irq.h b/arch/arm/mach-s3c24xx/include/mach/regs-irq.h
index 0f07ba30b1fb..8d8e669e3903 100644
--- a/arch/arm/mach-s3c24xx/include/mach/regs-irq.h
+++ b/arch/arm/mach-s3c24xx/include/mach/regs-irq.h
@@ -1,12 +1,8 @@
1/* arch/arm/mach-s3c2410/include/mach/regs-irq.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2003 Simtec Electronics <linux@simtec.co.uk> 3 * Copyright (c) 2003 Simtec Electronics <linux@simtec.co.uk>
4 * http://www.simtec.co.uk/products/SWLINUX/ 4 * http://www.simtec.co.uk/products/SWLINUX/
5 * 5 */
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9*/
10 6
11 7
12#ifndef ___ASM_ARCH_REGS_IRQ_H 8#ifndef ___ASM_ARCH_REGS_IRQ_H
diff --git a/arch/arm/mach-s3c24xx/include/mach/regs-lcd.h b/arch/arm/mach-s3c24xx/include/mach/regs-lcd.h
index ee8f040aff5f..4c3434f261bb 100644
--- a/arch/arm/mach-s3c24xx/include/mach/regs-lcd.h
+++ b/arch/arm/mach-s3c24xx/include/mach/regs-lcd.h
@@ -1,13 +1,8 @@
1/* arch/arm/mach-s3c2410/include/mach/regs-lcd.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2003 Simtec Electronics <linux@simtec.co.uk> 3 * Copyright (c) 2003 Simtec Electronics <linux@simtec.co.uk>
4 * http://www.simtec.co.uk/products/SWLINUX/ 4 * http://www.simtec.co.uk/products/SWLINUX/
5 * 5 */
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9*/
10
11 6
12#ifndef ___ASM_ARCH_REGS_LCD_H 7#ifndef ___ASM_ARCH_REGS_LCD_H
13#define ___ASM_ARCH_REGS_LCD_H 8#define ___ASM_ARCH_REGS_LCD_H
diff --git a/arch/arm/mach-s3c24xx/include/mach/regs-s3c2443-clock.h b/arch/arm/mach-s3c24xx/include/mach/regs-s3c2443-clock.h
index ffe37bdb9f59..6bf924612b06 100644
--- a/arch/arm/mach-s3c24xx/include/mach/regs-s3c2443-clock.h
+++ b/arch/arm/mach-s3c24xx/include/mach/regs-s3c2443-clock.h
@@ -1,15 +1,11 @@
1/* arch/arm/mach-s3c2410/include/mach/regs-s3c2443-clock.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2007 Simtec Electronics 3 * Copyright (c) 2007 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
6 * 6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 *
11 * S3C2443 clock register definitions 7 * S3C2443 clock register definitions
12*/ 8 */
13 9
14#ifndef __ASM_ARM_REGS_S3C2443_CLOCK 10#ifndef __ASM_ARM_REGS_S3C2443_CLOCK
15#define __ASM_ARM_REGS_S3C2443_CLOCK 11#define __ASM_ARM_REGS_S3C2443_CLOCK
diff --git a/arch/arm/mach-s3c24xx/include/mach/rtc-core.h b/arch/arm/mach-s3c24xx/include/mach/rtc-core.h
index 4d5f5768f700..88510333b96b 100644
--- a/arch/arm/mach-s3c24xx/include/mach/rtc-core.h
+++ b/arch/arm/mach-s3c24xx/include/mach/rtc-core.h
@@ -1,12 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2011 Heiko Stuebner <heiko@sntech.de> 3 * Copyright (c) 2011 Heiko Stuebner <heiko@sntech.de>
3 * 4 *
4 * Samsung RTC Controller core functions 5 * Samsung RTC Controller core functions
5 * 6 */
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9*/
10 7
11#ifndef __RTC_CORE_H 8#ifndef __RTC_CORE_H
12#define __RTC_CORE_H __FILE__ 9#define __RTC_CORE_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/include/mach/s3c2412.h b/arch/arm/mach-s3c24xx/include/mach/s3c2412.h
index 548ced42cbb7..b6b32724ace8 100644
--- a/arch/arm/mach-s3c24xx/include/mach/s3c2412.h
+++ b/arch/arm/mach-s3c24xx/include/mach/s3c2412.h
@@ -1,11 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2008 Simtec Electronics 3 * Copyright (c) 2008 Simtec Electronics
3 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
4 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */ 6 */
10 7
11#ifndef __ARCH_ARM_MACH_S3C24XX_S3C2412_H 8#ifndef __ARCH_ARM_MACH_S3C24XX_S3C2412_H
diff --git a/arch/arm/mach-s3c24xx/iotiming-s3c2410.c b/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
index d5f1f06e4811..9f90aaf70bf3 100644
--- a/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
+++ b/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
@@ -1,14 +1,10 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2006-2009 Simtec Electronics 2//
3 * http://armlinux.simtec.co.uk/ 3// Copyright (c) 2006-2009 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// http://armlinux.simtec.co.uk/
5 * 5// Ben Dooks <ben@simtec.co.uk>
6 * S3C24XX CPU Frequency scaling - IO timing for S3C2410/S3C2440/S3C2442 6//
7 * 7// S3C24XX CPU Frequency scaling - IO timing for S3C2410/S3C2440/S3C2442
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#include <linux/init.h> 9#include <linux/init.h>
14#include <linux/kernel.h> 10#include <linux/kernel.h>
diff --git a/arch/arm/mach-s3c24xx/iotiming-s3c2412.c b/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
index c5b12f6b02b5..59356d10fbcf 100644
--- a/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
+++ b/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
@@ -1,14 +1,10 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2006-2008 Simtec Electronics 2//
3 * http://armlinux.simtec.co.uk/ 3// Copyright (c) 2006-2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// http://armlinux.simtec.co.uk/
5 * 5// Ben Dooks <ben@simtec.co.uk>
6 * S3C2412/S3C2443 (PL093 based) IO timing support 6//
7 * 7// S3C2412/S3C2443 (PL093 based) IO timing support
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#include <linux/init.h> 9#include <linux/init.h>
14#include <linux/module.h> 10#include <linux/module.h>
diff --git a/arch/arm/mach-s3c24xx/irq-pm.c b/arch/arm/mach-s3c24xx/irq-pm.c
index 417b7a20c2d1..e0131b16a4af 100644
--- a/arch/arm/mach-s3c24xx/irq-pm.c
+++ b/arch/arm/mach-s3c24xx/irq-pm.c
@@ -1,15 +1,10 @@
1/* linux/arch/arm/plat-s3c24xx/irq-om.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2003-2004 Simtec Electronics 3// Copyright (c) 2003-2004 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/ 5// http://armlinux.simtec.co.uk/
6 * 6//
7 * S3C24XX - IRQ PM code 7// S3C24XX - IRQ PM code
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 */
13 8
14#include <linux/init.h> 9#include <linux/init.h>
15#include <linux/module.h> 10#include <linux/module.h>
diff --git a/arch/arm/mach-s3c24xx/mach-amlm5900.c b/arch/arm/mach-s3c24xx/mach-amlm5900.c
index 3e63777a109f..9a9daf526d0c 100644
--- a/arch/arm/mach-s3c24xx/mach-amlm5900.c
+++ b/arch/arm/mach-s3c24xx/mach-amlm5900.c
@@ -1,30 +1,11 @@
1/* linux/arch/arm/mach-s3c2410/mach-amlm5900.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * linux/arch/arm/mach-s3c2410/mach-amlm5900.c 3// Copyright (c) 2006 American Microsystems Limited
4 * 4// David Anders <danders@amltd.com>
5 * Copyright (c) 2006 American Microsystems Limited 5//
6 * David Anders <danders@amltd.com> 6// @History:
7 7// derived from linux/arch/arm/mach-s3c2410/mach-bast.c, written by
8 * This program is free software; you can redistribute it and/or 8// Ben Dooks <ben@simtec.co.uk>
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21 * MA 02111-1307 USA
22 *
23 * @History:
24 * derived from linux/arch/arm/mach-s3c2410/mach-bast.c, written by
25 * Ben Dooks <ben@simtec.co.uk>
26 *
27 ***********************************************************************/
28 9
29#include <linux/kernel.h> 10#include <linux/kernel.h>
30#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-anubis.c b/arch/arm/mach-s3c24xx/mach-anubis.c
index c14cab361922..072966dcad78 100644
--- a/arch/arm/mach-s3c24xx/mach-anubis.c
+++ b/arch/arm/mach-s3c24xx/mach-anubis.c
@@ -1,13 +1,8 @@
1/* linux/arch/arm/mach-s3c2440/mach-anubis.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2003-2009 Simtec Electronics 3// Copyright 2003-2009 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4// http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 6
12#include <linux/kernel.h> 7#include <linux/kernel.h>
13#include <linux/types.h> 8#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-at2440evb.c b/arch/arm/mach-s3c24xx/mach-at2440evb.c
index ebdbafb9382a..68a4fa94257a 100644
--- a/arch/arm/mach-s3c24xx/mach-at2440evb.c
+++ b/arch/arm/mach-s3c24xx/mach-at2440evb.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/mach-s3c2440/mach-at2440evb.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2008 Ramax Lo <ramaxlo@gmail.com> 3// Copyright (c) 2008 Ramax Lo <ramaxlo@gmail.com>
4 * Based on mach-anubis.c by Ben Dooks <ben@simtec.co.uk> 4// Based on mach-anubis.c by Ben Dooks <ben@simtec.co.uk>
5 * and modifications by SBZ <sbz@spgui.org> and 5// and modifications by SBZ <sbz@spgui.org> and
6 * Weibing <http://weibing.blogbus.com> 6// Weibing <http://weibing.blogbus.com>
7 * 7//
8 * For product information, visit http://www.arm.com/ 8// For product information, visit http://www.arm.com/
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/kernel.h> 10#include <linux/kernel.h>
16#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-bast.c b/arch/arm/mach-s3c24xx/mach-bast.c
index 704dc84b3480..a7c3955ae8f6 100644
--- a/arch/arm/mach-s3c24xx/mach-bast.c
+++ b/arch/arm/mach-s3c24xx/mach-bast.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c2410/mach-bast.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2003-2008 Simtec Electronics 3// Copyright 2003-2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://www.simtec.co.uk/products/EB2410ITX/ 6// http://www.simtec.co.uk/products/EB2410ITX/
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-gta02.c b/arch/arm/mach-s3c24xx/mach-gta02.c
index afe18baf0c84..9d5595c4ad99 100644
--- a/arch/arm/mach-s3c24xx/mach-gta02.c
+++ b/arch/arm/mach-s3c24xx/mach-gta02.c
@@ -1,27 +1,12 @@
1/* 1// SPDX-License-Identifier: GPL-2.0+
2 * S3C2442 Machine Support for Openmoko GTA02 / FreeRunner. 2//
3 * 3// S3C2442 Machine Support for Openmoko GTA02 / FreeRunner.
4 * Copyright (C) 2006-2009 by Openmoko, Inc. 4//
5 * Authors: Harald Welte <laforge@openmoko.org> 5// Copyright (C) 2006-2009 by Openmoko, Inc.
6 * Andy Green <andy@openmoko.org> 6// Authors: Harald Welte <laforge@openmoko.org>
7 * Werner Almesberger <werner@openmoko.org> 7// Andy Green <andy@openmoko.org>
8 * All rights reserved. 8// Werner Almesberger <werner@openmoko.org>
9 * 9// All rights reserved.
10 * This program is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU General Public License as
12 * published by the Free Software Foundation; either version 2 of
13 * the License, or (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
23 * MA 02111-1307 USA
24 */
25 10
26#include <linux/kernel.h> 11#include <linux/kernel.h>
27#include <linux/types.h> 12#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-h1940.c b/arch/arm/mach-s3c24xx/mach-h1940.c
index 7ed78619217c..e064c73a57d3 100644
--- a/arch/arm/mach-s3c24xx/mach-h1940.c
+++ b/arch/arm/mach-s3c24xx/mach-h1940.c
@@ -1,14 +1,9 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2003-2005 Simtec Electronics 2//
3 * Ben Dooks <ben@simtec.co.uk> 3// Copyright (c) 2003-2005 Simtec Electronics
4 * 4// Ben Dooks <ben@simtec.co.uk>
5 * http://www.handhelds.org/projects/h1940.html 5//
6 * 6// http://www.handhelds.org/projects/h1940.html
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 *
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-jive.c b/arch/arm/mach-s3c24xx/mach-jive.c
index 17821976f769..a3ddbbbd6d92 100644
--- a/arch/arm/mach-s3c24xx/mach-jive.c
+++ b/arch/arm/mach-s3c24xx/mach-jive.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c2410/mach-jive.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2007 Simtec Electronics 3// Copyright 2007 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-mini2440.c b/arch/arm/mach-s3c24xx/mach-mini2440.c
index 04c9f488c498..95753e0bc073 100644
--- a/arch/arm/mach-s3c24xx/mach-mini2440.c
+++ b/arch/arm/mach-s3c24xx/mach-mini2440.c
@@ -1,17 +1,12 @@
1/* linux/arch/arm/mach-s3c2440/mach-mini2440.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2008 Ramax Lo <ramaxlo@gmail.com> 3// Copyright (c) 2008 Ramax Lo <ramaxlo@gmail.com>
4 * Based on mach-anubis.c by Ben Dooks <ben@simtec.co.uk> 4// Based on mach-anubis.c by Ben Dooks <ben@simtec.co.uk>
5 * and modifications by SBZ <sbz@spgui.org> and 5// and modifications by SBZ <sbz@spgui.org> and
6 * Weibing <http://weibing.blogbus.com> and 6// Weibing <http://weibing.blogbus.com> and
7 * Michel Pollet <buserror@gmail.com> 7// Michel Pollet <buserror@gmail.com>
8 * 8//
9 * For product information, visit http://code.google.com/p/mini2440/ 9// For product information, visit http://code.google.com/p/mini2440/
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14*/
15 10
16#include <linux/kernel.h> 11#include <linux/kernel.h>
17#include <linux/types.h> 12#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-n30.c b/arch/arm/mach-s3c24xx/mach-n30.c
index 070a0d0714a5..eec51fadb14a 100644
--- a/arch/arm/mach-s3c24xx/mach-n30.c
+++ b/arch/arm/mach-s3c24xx/mach-n30.c
@@ -1,18 +1,15 @@
1/* Machine specific code for the Acer n30, Acer N35, Navman PiN 570, 1// SPDX-License-Identifier: GPL-2.0
2 * Yakumo AlphaX and Airis NC05 PDAs. 2//
3 * 3// Machine specific code for the Acer n30, Acer N35, Navman PiN 570,
4 * Copyright (c) 2003-2005 Simtec Electronics 4// Yakumo AlphaX and Airis NC05 PDAs.
5 * Ben Dooks <ben@simtec.co.uk> 5//
6 * 6// Copyright (c) 2003-2005 Simtec Electronics
7 * Copyright (c) 2005-2008 Christer Weinigel <christer@weinigel.se> 7// Ben Dooks <ben@simtec.co.uk>
8 * 8//
9 * There is a wiki with more information about the n30 port at 9// Copyright (c) 2005-2008 Christer Weinigel <christer@weinigel.se>
10 * http://handhelds.org/moin/moin.cgi/AcerN30Documentation . 10//
11 * 11// There is a wiki with more information about the n30 port at
12 * This program is free software; you can redistribute it and/or modify 12// http://handhelds.org/moin/moin.cgi/AcerN30Documentation .
13 * it under the terms of the GNU General Public License version 2 as
14 * published by the Free Software Foundation.
15 */
16 13
17#include <linux/kernel.h> 14#include <linux/kernel.h>
18#include <linux/types.h> 15#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-nexcoder.c b/arch/arm/mach-s3c24xx/mach-nexcoder.c
index 2a61d13dcd6c..c2f34758ccb6 100644
--- a/arch/arm/mach-s3c24xx/mach-nexcoder.c
+++ b/arch/arm/mach-s3c24xx/mach-nexcoder.c
@@ -1,16 +1,12 @@
1/* linux/arch/arm/mach-s3c2440/mach-nexcoder.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2// linux/arch/arm/mach-s3c2440/mach-nexcoder.c
3 * Copyright (c) 2004 Nex Vision 3//
4 * Guillaume GOURAT <guillaume.gourat@nexvision.tv> 4// Copyright (c) 2004 Nex Vision
5 * 5// Guillaume GOURAT <guillaume.gourat@nexvision.tv>
6 * This program is free software; you can redistribute it and/or modify 6//
7 * it under the terms of the GNU General Public License version 2 as 7// Modifications:
8 * published by the Free Software Foundation. 8// 15-10-2004 GG Created initial version
9 * 9// 12-03-2005 BJD Updated for release
10 * Modifications:
11 * 15-10-2004 GG Created initial version
12 * 12-03-2005 BJD Updated for release
13 */
14 10
15#include <linux/kernel.h> 11#include <linux/kernel.h>
16#include <linux/types.h> 12#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-osiris-dvs.c b/arch/arm/mach-s3c24xx/mach-osiris-dvs.c
index 6cac7da15e2b..058ce73137e8 100644
--- a/arch/arm/mach-s3c24xx/mach-osiris-dvs.c
+++ b/arch/arm/mach-s3c24xx/mach-osiris-dvs.c
@@ -1,15 +1,10 @@
1/* linux/arch/arm/mach-s3c2440/mach-osiris-dvs.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2009 Simtec Electronics 3// Copyright (c) 2009 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4// http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * 6//
7 * Simtec Osiris Dynamic Voltage Scaling support. 7// Simtec Osiris Dynamic Voltage Scaling support.
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 8
14#include <linux/kernel.h> 9#include <linux/kernel.h>
15#include <linux/module.h> 10#include <linux/module.h>
diff --git a/arch/arm/mach-s3c24xx/mach-osiris.c b/arch/arm/mach-s3c24xx/mach-osiris.c
index ed3b22ceef06..ee3630cb236a 100644
--- a/arch/arm/mach-s3c24xx/mach-osiris.c
+++ b/arch/arm/mach-s3c24xx/mach-osiris.c
@@ -1,12 +1,8 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2005-2008 Simtec Electronics 2//
3 * http://armlinux.simtec.co.uk/ 3// Copyright (c) 2005-2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// http://armlinux.simtec.co.uk/
5 * 5// Ben Dooks <ben@simtec.co.uk>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9*/
10 6
11#include <linux/kernel.h> 7#include <linux/kernel.h>
12#include <linux/types.h> 8#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-otom.c b/arch/arm/mach-s3c24xx/mach-otom.c
index 345a484b93cc..4e24d89e870b 100644
--- a/arch/arm/mach-s3c24xx/mach-otom.c
+++ b/arch/arm/mach-s3c24xx/mach-otom.c
@@ -1,12 +1,7 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2004 Nex Vision 3// Copyright (c) 2004 Nex Vision
4 * Guillaume GOURAT <guillaume.gourat@nexvision.fr> 4// Guillaume GOURAT <guillaume.gourat@nexvision.fr>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10 5
11#include <linux/kernel.h> 6#include <linux/kernel.h>
12#include <linux/types.h> 7#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-qt2410.c b/arch/arm/mach-s3c24xx/mach-qt2410.c
index 84e3a9c53184..9c8373b8d9c3 100644
--- a/arch/arm/mach-s3c24xx/mach-qt2410.c
+++ b/arch/arm/mach-s3c24xx/mach-qt2410.c
@@ -1,25 +1,8 @@
1/* linux/arch/arm/mach-s3c2410/mach-qt2410.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * Copyright (C) 2006 by OpenMoko, Inc. 3// Copyright (C) 2006 by OpenMoko, Inc.
4 * Author: Harald Welte <laforge@openmoko.org> 4// Author: Harald Welte <laforge@openmoko.org>
5 * All rights reserved. 5// All rights reserved.
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License as
9 * published by the Free Software Foundation; either version 2 of
10 * the License, or (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
20 * MA 02111-1307 USA
21 *
22 */
23 6
24#include <linux/kernel.h> 7#include <linux/kernel.h>
25#include <linux/types.h> 8#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-rx1950.c b/arch/arm/mach-s3c24xx/mach-rx1950.c
index e86ad6a68a0b..7f5a18fa305b 100644
--- a/arch/arm/mach-s3c24xx/mach-rx1950.c
+++ b/arch/arm/mach-s3c24xx/mach-rx1950.c
@@ -1,14 +1,9 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2006-2009 Victor Chukhantsev, Denis Grigoriev, 2//
3 * Copyright (c) 2007-2010 Vasily Khoruzhick 3// Copyright (c) 2006-2009 Victor Chukhantsev, Denis Grigoriev,
4 * 4// Copyright (c) 2007-2010 Vasily Khoruzhick
5 * based on smdk2440 written by Ben Dooks 5//
6 * 6// based on smdk2440 written by Ben Dooks
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 *
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-rx3715.c b/arch/arm/mach-s3c24xx/mach-rx3715.c
index b5ba615cf9dd..529c6faf862f 100644
--- a/arch/arm/mach-s3c24xx/mach-rx3715.c
+++ b/arch/arm/mach-s3c24xx/mach-rx3715.c
@@ -1,15 +1,9 @@
1/* linux/arch/arm/mach-s3c2440/mach-rx3715.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2003-2004 Simtec Electronics 3// Copyright (c) 2003-2004 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://www.handhelds.org/projects/rx3715.html 6// http://www.handhelds.org/projects/rx3715.html
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 *
12*/
13 7
14#include <linux/kernel.h> 8#include <linux/kernel.h>
15#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c b/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
index c83c076578dd..aa7102713b37 100644
--- a/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
+++ b/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
@@ -1,19 +1,15 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Samsung's S3C2416 flattened device tree enabled machine 2//
3 * 3// Samsung's S3C2416 flattened device tree enabled machine
4 * Copyright (c) 2012 Heiko Stuebner <heiko@sntech.de> 4//
5 * 5// Copyright (c) 2012 Heiko Stuebner <heiko@sntech.de>
6 * based on mach-exynos/mach-exynos4-dt.c 6//
7 * 7// based on mach-exynos/mach-exynos4-dt.c
8 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. 8//
9 * http://www.samsung.com 9// Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
10 * Copyright (c) 2010-2011 Linaro Ltd. 10// http://www.samsung.com
11 * www.linaro.org 11// Copyright (c) 2010-2011 Linaro Ltd.
12 * 12// www.linaro.org
13 * This program is free software; you can redistribute it and/or modify
14 * it under the terms of the GNU General Public License version 2 as
15 * published by the Free Software Foundation.
16*/
17 13
18#include <linux/clocksource.h> 14#include <linux/clocksource.h>
19#include <linux/irqchip.h> 15#include <linux/irqchip.h>
diff --git a/arch/arm/mach-s3c24xx/mach-smdk2410.c b/arch/arm/mach-s3c24xx/mach-smdk2410.c
index 27dd6605e395..18dfef52c8bf 100644
--- a/arch/arm/mach-s3c24xx/mach-smdk2410.c
+++ b/arch/arm/mach-s3c24xx/mach-smdk2410.c
@@ -1,32 +1,13 @@
1/* linux/arch/arm/mach-s3c2410/mach-smdk2410.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * linux/arch/arm/mach-s3c2410/mach-smdk2410.c 3// Copyright (C) 2004 by FS Forth-Systeme GmbH
4 * 4// All rights reserved.
5 * Copyright (C) 2004 by FS Forth-Systeme GmbH 5//
6 * All rights reserved. 6// @Author: Jonas Dietsche
7 * 7//
8 * @Author: Jonas Dietsche 8// @History:
9 * 9// derived from linux/arch/arm/mach-s3c2410/mach-bast.c, written by
10 * This program is free software; you can redistribute it and/or 10// Ben Dooks <ben@simtec.co.uk>
11 * modify it under the terms of the GNU General Public License as
12 * published by the Free Software Foundation; either version 2 of
13 * the License, or (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
23 * MA 02111-1307 USA
24 *
25 * @History:
26 * derived from linux/arch/arm/mach-s3c2410/mach-bast.c, written by
27 * Ben Dooks <ben@simtec.co.uk>
28 *
29 ***********************************************************************/
30 11
31#include <linux/kernel.h> 12#include <linux/kernel.h>
32#include <linux/types.h> 13#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-smdk2413.c b/arch/arm/mach-s3c24xx/mach-smdk2413.c
index 586e4a3b8d5d..ca80167f268d 100644
--- a/arch/arm/mach-s3c24xx/mach-smdk2413.c
+++ b/arch/arm/mach-s3c24xx/mach-smdk2413.c
@@ -1,15 +1,10 @@
1/* linux/arch/arm/mach-s3c2412/mach-smdk2413.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2006 Simtec Electronics 3// Copyright (c) 2006 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * Thanks to Dimity Andric (TomTom) and Steven Ryu (Samsung) for the 6// Thanks to Dimity Andric (TomTom) and Steven Ryu (Samsung) for the
7 * loans of SMDK2413 to work with. 7// loans of SMDK2413 to work with.
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 8
14#include <linux/kernel.h> 9#include <linux/kernel.h>
15#include <linux/types.h> 10#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-smdk2416.c b/arch/arm/mach-s3c24xx/mach-smdk2416.c
index 86394f72d29e..61c3e45898d3 100644
--- a/arch/arm/mach-s3c24xx/mach-smdk2416.c
+++ b/arch/arm/mach-s3c24xx/mach-smdk2416.c
@@ -1,15 +1,9 @@
1/* linux/arch/arm/mach-s3c2416/mach-hanlin_v3c.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2009 Yauhen Kharuzhy <jekhor@gmail.com>, 3// Copyright (c) 2009 Yauhen Kharuzhy <jekhor@gmail.com>,
4 * as part of OpenInkpot project 4// as part of OpenInkpot project
5 * Copyright (c) 2009 Promwad Innovation Company 5// Copyright (c) 2009 Promwad Innovation Company
6 * Yauhen Kharuzhy <yauhen.kharuzhy@promwad.com> 6// Yauhen Kharuzhy <yauhen.kharuzhy@promwad.com>
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 *
12*/
13 7
14#include <linux/kernel.h> 8#include <linux/kernel.h>
15#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-smdk2440.c b/arch/arm/mach-s3c24xx/mach-smdk2440.c
index 9bb96bfbb420..7bafcd8ea104 100644
--- a/arch/arm/mach-s3c24xx/mach-smdk2440.c
+++ b/arch/arm/mach-s3c24xx/mach-smdk2440.c
@@ -1,17 +1,12 @@
1/* linux/arch/arm/mach-s3c2440/mach-smdk2440.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2// linux/arch/arm/mach-s3c2440/mach-smdk2440.c
3 * Copyright (c) 2004-2005 Simtec Electronics 3//
4 * Ben Dooks <ben@simtec.co.uk> 4// Copyright (c) 2004-2005 Simtec Electronics
5 * 5// Ben Dooks <ben@simtec.co.uk>
6 * http://www.fluff.org/ben/smdk2440/ 6//
7 * 7// http://www.fluff.org/ben/smdk2440/
8 * Thanks to Dimity Andric and TomTom for the loan of an SMDK2440. 8//
9 * 9// Thanks to Dimity Andric and TomTom for the loan of an SMDK2440.
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13 *
14*/
15 10
16#include <linux/kernel.h> 11#include <linux/kernel.h>
17#include <linux/types.h> 12#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-smdk2443.c b/arch/arm/mach-s3c24xx/mach-smdk2443.c
index 474cd81aa8ad..2358ed5ed7be 100644
--- a/arch/arm/mach-s3c24xx/mach-smdk2443.c
+++ b/arch/arm/mach-s3c24xx/mach-smdk2443.c
@@ -1,17 +1,11 @@
1/* linux/arch/arm/mach-s3c2443/mach-smdk2443.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2007 Simtec Electronics 3// Copyright (c) 2007 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://www.fluff.org/ben/smdk2443/ 6// http://www.fluff.org/ben/smdk2443/
7 * 7//
8 * Thanks to Samsung for the loan of an SMDK2443 8// Thanks to Samsung for the loan of an SMDK2443
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13 *
14*/
15 9
16#include <linux/kernel.h> 10#include <linux/kernel.h>
17#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-tct_hammer.c b/arch/arm/mach-s3c24xx/mach-tct_hammer.c
index 2deb62f92fb2..8d8ddd6ea305 100644
--- a/arch/arm/mach-s3c24xx/mach-tct_hammer.c
+++ b/arch/arm/mach-s3c24xx/mach-tct_hammer.c
@@ -1,28 +1,11 @@
1/* linux/arch/arm/mach-s3c2410/mach-tct_hammer.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * Copyright (c) 2007 TinCanTools 3// Copyright (c) 2007 TinCanTools
4 * David Anders <danders@amltd.com> 4// David Anders <danders@amltd.com>
5 5//
6 * This program is free software; you can redistribute it and/or 6// @History:
7 * modify it under the terms of the GNU General Public License as 7// derived from linux/arch/arm/mach-s3c2410/mach-bast.c, written by
8 * published by the Free Software Foundation; either version 2 of 8// Ben Dooks <ben@simtec.co.uk>
9 * the License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
19 * MA 02111-1307 USA
20 *
21 * @History:
22 * derived from linux/arch/arm/mach-s3c2410/mach-bast.c, written by
23 * Ben Dooks <ben@simtec.co.uk>
24 *
25 ***********************************************************************/
26 9
27#include <linux/kernel.h> 10#include <linux/kernel.h>
28#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-vr1000.c b/arch/arm/mach-s3c24xx/mach-vr1000.c
index 89f32bd3f01b..853e74f9b8b5 100644
--- a/arch/arm/mach-s3c24xx/mach-vr1000.c
+++ b/arch/arm/mach-s3c24xx/mach-vr1000.c
@@ -1,15 +1,10 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2003-2008 Simtec Electronics 2//
3 * Ben Dooks <ben@simtec.co.uk> 3// Copyright (c) 2003-2008 Simtec Electronics
4 * 4// Ben Dooks <ben@simtec.co.uk>
5 * Machine support for Thorcom VR1000 board. Designed for Thorcom by 5//
6 * Simtec Electronics, http://www.simtec.co.uk/ 6// Machine support for Thorcom VR1000 board. Designed for Thorcom by
7 * 7// Simtec Electronics, http://www.simtec.co.uk/
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 *
12*/
13 8
14#include <linux/kernel.h> 9#include <linux/kernel.h>
15#include <linux/types.h> 10#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/mach-vstms.c b/arch/arm/mach-s3c24xx/mach-vstms.c
index 1adc957edf0f..d76b28b65e65 100644
--- a/arch/arm/mach-s3c24xx/mach-vstms.c
+++ b/arch/arm/mach-s3c24xx/mach-vstms.c
@@ -1,13 +1,8 @@
1/* linux/arch/arm/mach-s3c2412/mach-vstms.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * (C) 2006 Thomas Gleixner <tglx@linutronix.de> 3// (C) 2006 Thomas Gleixner <tglx@linutronix.de>
4 * 4//
5 * Derived from mach-smdk2413.c - (C) 2006 Simtec Electronics 5// Derived from mach-smdk2413.c - (C) 2006 Simtec Electronics
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */
11 6
12#include <linux/kernel.h> 7#include <linux/kernel.h>
13#include <linux/types.h> 8#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/nand-core.h b/arch/arm/mach-s3c24xx/nand-core.h
index 7e811fe1cf41..8de633d416ae 100644
--- a/arch/arm/mach-s3c24xx/nand-core.h
+++ b/arch/arm/mach-s3c24xx/nand-core.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com/ 4 * http://www.samsung.com/
4 * 5 *
5 * S3C - Nand Controller core functions 6 * S3C - Nand Controller core functions
6 * 7 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 8
12#ifndef __ASM_ARCH_NAND_CORE_H 9#ifndef __ASM_ARCH_NAND_CORE_H
13#define __ASM_ARCH_NAND_CORE_H __FILE__ 10#define __ASM_ARCH_NAND_CORE_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/osiris.h b/arch/arm/mach-s3c24xx/osiris.h
index b8d56074abac..b6c9c5ed2ba7 100644
--- a/arch/arm/mach-s3c24xx/osiris.h
+++ b/arch/arm/mach-s3c24xx/osiris.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright 2005 Simtec Electronics 3 * Copyright 2005 Simtec Electronics
3 * http://www.simtec.co.uk/products/ 4 * http://www.simtec.co.uk/products/
@@ -5,11 +6,7 @@
5 * 6 *
6 * OSIRIS - CPLD control constants 7 * OSIRIS - CPLD control constants
7 * OSIRIS - Memory map definitions 8 * OSIRIS - Memory map definitions
8 * 9 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 10
14#ifndef __MACH_S3C24XX_OSIRIS_H 11#ifndef __MACH_S3C24XX_OSIRIS_H
15#define __MACH_S3C24XX_OSIRIS_H __FILE__ 12#define __MACH_S3C24XX_OSIRIS_H __FILE__
diff --git a/arch/arm/mach-s3c24xx/otom.h b/arch/arm/mach-s3c24xx/otom.h
index 321b7be1c0f7..c800f67d03d4 100644
--- a/arch/arm/mach-s3c24xx/otom.h
+++ b/arch/arm/mach-s3c24xx/otom.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * (c) 2005 Guillaume GOURAT / NexVision 3 * (c) 2005 Guillaume GOURAT / NexVision
3 * guillaume.gourat@nexvision.fr 4 * guillaume.gourat@nexvision.fr
4 * 5 *
5 * NexVision OTOM board memory map definitions 6 * NexVision OTOM board memory map definitions
6 * 7 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 8
12/* 9/*
13 * ok, we've used up to 0x01300000, now we need to find space for the 10 * ok, we've used up to 0x01300000, now we need to find space for the
diff --git a/arch/arm/mach-s3c24xx/pll-s3c2410.c b/arch/arm/mach-s3c24xx/pll-s3c2410.c
index 7ee4924a543d..0561f79ddce8 100644
--- a/arch/arm/mach-s3c24xx/pll-s3c2410.c
+++ b/arch/arm/mach-s3c24xx/pll-s3c2410.c
@@ -1,25 +1,11 @@
1/* 1// SPDX-License-Identifier: GPL-2.0+
2 * Copyright (c) 2006-2007 Simtec Electronics 2//
3 * http://armlinux.simtec.co.uk/ 3// Copyright (c) 2006-2007 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// http://armlinux.simtec.co.uk/
5 * Vincent Sanders <vince@arm.linux.org.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * 6// Vincent Sanders <vince@arm.linux.org.uk>
7 * S3C2410 CPU PLL tables 7//
8 * 8// S3C2410 CPU PLL tables
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22*/
23 9
24#include <linux/types.h> 10#include <linux/types.h>
25#include <linux/kernel.h> 11#include <linux/kernel.h>
diff --git a/arch/arm/mach-s3c24xx/pll-s3c2440-12000000.c b/arch/arm/mach-s3c24xx/pll-s3c2440-12000000.c
index a3fbfed75e28..2ec3a2f9a6a5 100644
--- a/arch/arm/mach-s3c24xx/pll-s3c2440-12000000.c
+++ b/arch/arm/mach-s3c24xx/pll-s3c2440-12000000.c
@@ -1,15 +1,11 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2006-2007 Simtec Electronics 2//
3 * http://armlinux.simtec.co.uk/ 3// Copyright (c) 2006-2007 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// http://armlinux.simtec.co.uk/
5 * Vincent Sanders <vince@arm.linux.org.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * 6// Vincent Sanders <vince@arm.linux.org.uk>
7 * S3C2440/S3C2442 CPU PLL tables (12MHz Crystal) 7//
8 * 8// S3C2440/S3C2442 CPU PLL tables (12MHz Crystal)
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14#include <linux/types.h> 10#include <linux/types.h>
15#include <linux/kernel.h> 11#include <linux/kernel.h>
diff --git a/arch/arm/mach-s3c24xx/pll-s3c2440-16934400.c b/arch/arm/mach-s3c24xx/pll-s3c2440-16934400.c
index bcff89fd9871..4b3d9e36c6bb 100644
--- a/arch/arm/mach-s3c24xx/pll-s3c2440-16934400.c
+++ b/arch/arm/mach-s3c24xx/pll-s3c2440-16934400.c
@@ -1,15 +1,11 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2006-2008 Simtec Electronics 2//
3 * http://armlinux.simtec.co.uk/ 3// Copyright (c) 2006-2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// http://armlinux.simtec.co.uk/
5 * Vincent Sanders <vince@arm.linux.org.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * 6// Vincent Sanders <vince@arm.linux.org.uk>
7 * S3C2440/S3C2442 CPU PLL tables (16.93444MHz Crystal) 7//
8 * 8// S3C2440/S3C2442 CPU PLL tables (16.93444MHz Crystal)
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14#include <linux/types.h> 10#include <linux/types.h>
15#include <linux/kernel.h> 11#include <linux/kernel.h>
diff --git a/arch/arm/mach-s3c24xx/pm-h1940.S b/arch/arm/mach-s3c24xx/pm-h1940.S
index 6183a688012b..a7bbe336ac6b 100644
--- a/arch/arm/mach-s3c24xx/pm-h1940.S
+++ b/arch/arm/mach-s3c24xx/pm-h1940.S
@@ -1,22 +1,9 @@
1/* linux/arch/arm/mach-s3c2410/pm-h1940.S 1/* SPDX-License-Identifier: GPL-2.0+ */
2 * 2/*
3 * Copyright (c) 2006 Ben Dooks <ben-linux@fluff.org> 3 * Copyright (c) 2006 Ben Dooks <ben-linux@fluff.org>
4 * 4 *
5 * H1940 Suspend to RAM 5 * H1940 Suspend to RAM
6 * 6 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19*/
20 7
21#include <linux/linkage.h> 8#include <linux/linkage.h>
22#include <asm/assembler.h> 9#include <asm/assembler.h>
diff --git a/arch/arm/mach-s3c24xx/pm-s3c2410.c b/arch/arm/mach-s3c24xx/pm-s3c2410.c
index a4588daeddb0..2d8ea701380a 100644
--- a/arch/arm/mach-s3c24xx/pm-s3c2410.c
+++ b/arch/arm/mach-s3c24xx/pm-s3c2410.c
@@ -1,24 +1,9 @@
1/* linux/arch/arm/mach-s3c2410/pm.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * Copyright (c) 2006 Simtec Electronics 3// Copyright (c) 2006 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * S3C2410 (and compatible) Power Manager (Suspend-To-RAM) support 6// S3C2410 (and compatible) Power Manager (Suspend-To-RAM) support
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21*/
22 7
23#include <linux/init.h> 8#include <linux/init.h>
24#include <linux/suspend.h> 9#include <linux/suspend.h>
diff --git a/arch/arm/mach-s3c24xx/pm-s3c2412.c b/arch/arm/mach-s3c24xx/pm-s3c2412.c
index 0ae4d47a4663..2dfdaab0aa1f 100644
--- a/arch/arm/mach-s3c24xx/pm-s3c2412.c
+++ b/arch/arm/mach-s3c24xx/pm-s3c2412.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c2412/pm.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2006 Simtec Electronics 3// Copyright (c) 2006 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://armlinux.simtec.co.uk/. 6// http://armlinux.simtec.co.uk/.
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/pm-s3c2416.c b/arch/arm/mach-s3c24xx/pm-s3c2416.c
index b5bbf0d5985c..9a2f05e279d4 100644
--- a/arch/arm/mach-s3c24xx/pm-s3c2416.c
+++ b/arch/arm/mach-s3c24xx/pm-s3c2416.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c2416/pm.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3// Copyright (c) 2010 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com 4// http://www.samsung.com
5 * 5//
6 * S3C2416 - PM support (Based on Ben Dooks' S3C2412 PM support) 6// S3C2416 - PM support (Based on Ben Dooks' S3C2412 PM support)
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/device.h> 8#include <linux/device.h>
14#include <linux/syscore_ops.h> 9#include <linux/syscore_ops.h>
diff --git a/arch/arm/mach-s3c24xx/pm.c b/arch/arm/mach-s3c24xx/pm.c
index 5d510bca0844..adcb90645460 100644
--- a/arch/arm/mach-s3c24xx/pm.c
+++ b/arch/arm/mach-s3c24xx/pm.c
@@ -1,30 +1,15 @@
1/* linux/arch/arm/plat-s3c24xx/pm.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * Copyright (c) 2004-2006 Simtec Electronics 3// Copyright (c) 2004-2006 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * S3C24XX Power Manager (Suspend-To-RAM) support 6// S3C24XX Power Manager (Suspend-To-RAM) support
7 * 7//
8 * See Documentation/arm/Samsung-S3C24XX/Suspend.txt for more information 8// See Documentation/arm/Samsung-S3C24XX/Suspend.txt for more information
9 * 9//
10 * This program is free software; you can redistribute it and/or modify 10// Parts based on arch/arm/mach-pxa/pm.c
11 * it under the terms of the GNU General Public License as published by 11//
12 * the Free Software Foundation; either version 2 of the License, or 12// Thanks to Dimitry Andric for debugging
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 *
24 * Parts based on arch/arm/mach-pxa/pm.c
25 *
26 * Thanks to Dimitry Andric for debugging
27*/
28 13
29#include <linux/init.h> 14#include <linux/init.h>
30#include <linux/suspend.h> 15#include <linux/suspend.h>
diff --git a/arch/arm/mach-s3c24xx/regs-dsc.h b/arch/arm/mach-s3c24xx/regs-dsc.h
index 61b3d1387d76..b500636276f2 100644
--- a/arch/arm/mach-s3c24xx/regs-dsc.h
+++ b/arch/arm/mach-s3c24xx/regs-dsc.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2004 Simtec Electronics <linux@simtec.co.uk> 3 * Copyright (c) 2004 Simtec Electronics <linux@simtec.co.uk>
3 * http://www.simtec.co.uk/products/SWLINUX/ 4 * http://www.simtec.co.uk/products/SWLINUX/
4 * 5 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 *
9 * S3C2440/S3C2412 Signal Drive Strength Control 6 * S3C2440/S3C2412 Signal Drive Strength Control
10*/ 7 */
11 8
12 9
13#ifndef __ASM_ARCH_REGS_DSC_H 10#ifndef __ASM_ARCH_REGS_DSC_H
diff --git a/arch/arm/mach-s3c24xx/regs-mem.h b/arch/arm/mach-s3c24xx/regs-mem.h
index 86b1258368c2..2f3bc48b5890 100644
--- a/arch/arm/mach-s3c24xx/regs-mem.h
+++ b/arch/arm/mach-s3c24xx/regs-mem.h
@@ -1,11 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2004 Simtec Electronics <linux@simtec.co.uk> 3 * Copyright (c) 2004 Simtec Electronics <linux@simtec.co.uk>
3 * http://www.simtec.co.uk/products/SWLINUX/ 4 * http://www.simtec.co.uk/products/SWLINUX/
4 * 5 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 *
9 * S3C2410 Memory Control register definitions 6 * S3C2410 Memory Control register definitions
10 */ 7 */
11 8
diff --git a/arch/arm/mach-s3c24xx/s3c2410.c b/arch/arm/mach-s3c24xx/s3c2410.c
index 5061d66ca10c..21fd5404bc98 100644
--- a/arch/arm/mach-s3c24xx/s3c2410.c
+++ b/arch/arm/mach-s3c24xx/s3c2410.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c2410/s3c2410.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2003-2005 Simtec Electronics 3// Copyright (c) 2003-2005 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://www.simtec.co.uk/products/EB2410ITX/ 6// http://www.simtec.co.uk/products/EB2410ITX/
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/s3c2412-power.h b/arch/arm/mach-s3c24xx/s3c2412-power.h
index 1b02c5ddb31b..0031cfaa1d76 100644
--- a/arch/arm/mach-s3c24xx/s3c2412-power.h
+++ b/arch/arm/mach-s3c24xx/s3c2412-power.h
@@ -1,10 +1,7 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2003-2006 Simtec Electronics <linux@simtec.co.uk> 3 * Copyright (c) 2003-2006 Simtec Electronics <linux@simtec.co.uk>
3 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 */ 5 */
9 6
10#ifndef __ARCH_ARM_MACH_S3C24XX_S3C2412_POWER_H 7#ifndef __ARCH_ARM_MACH_S3C24XX_S3C2412_POWER_H
diff --git a/arch/arm/mach-s3c24xx/s3c2412.c b/arch/arm/mach-s3c24xx/s3c2412.c
index fb5ee8d38913..8fe4d4670dcb 100644
--- a/arch/arm/mach-s3c24xx/s3c2412.c
+++ b/arch/arm/mach-s3c24xx/s3c2412.c
@@ -1,13 +1,9 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2006 Simtec Electronics 2//
3 * Ben Dooks <ben@simtec.co.uk> 3// Copyright (c) 2006 Simtec Electronics
4 * 4// Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/. 5//
6 * 6// http://armlinux.simtec.co.uk/.
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 7
12#include <linux/kernel.h> 8#include <linux/kernel.h>
13#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/s3c2416.c b/arch/arm/mach-s3c24xx/s3c2416.c
index 621b8648a7ef..1cdb7bd3e713 100644
--- a/arch/arm/mach-s3c24xx/s3c2416.c
+++ b/arch/arm/mach-s3c24xx/s3c2416.c
@@ -1,26 +1,11 @@
1/* linux/arch/arm/mach-s3c2416/s3c2416.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * Copyright (c) 2009 Yauhen Kharuzhy <jekhor@gmail.com>, 3// Copyright (c) 2009 Yauhen Kharuzhy <jekhor@gmail.com>,
4 * as part of OpenInkpot project 4// as part of OpenInkpot project
5 * Copyright (c) 2009 Promwad Innovation Company 5// Copyright (c) 2009 Promwad Innovation Company
6 * Yauhen Kharuzhy <yauhen.kharuzhy@promwad.com> 6// Yauhen Kharuzhy <yauhen.kharuzhy@promwad.com>
7 * 7//
8 * Samsung S3C2416 Mobile CPU support 8// Samsung S3C2416 Mobile CPU support
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23*/
24 9
25#include <linux/kernel.h> 10#include <linux/kernel.h>
26#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/s3c2440.c b/arch/arm/mach-s3c24xx/s3c2440.c
index eb733555fab5..451d9851b0a7 100644
--- a/arch/arm/mach-s3c24xx/s3c2440.c
+++ b/arch/arm/mach-s3c24xx/s3c2440.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c2440/s3c2440.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2004-2006 Simtec Electronics 3// Copyright (c) 2004-2006 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * Samsung S3C2440 Mobile CPU support 6// Samsung S3C2440 Mobile CPU support
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/s3c2442.c b/arch/arm/mach-s3c24xx/s3c2442.c
index 893998ede022..432d68325c9d 100644
--- a/arch/arm/mach-s3c24xx/s3c2442.c
+++ b/arch/arm/mach-s3c24xx/s3c2442.c
@@ -1,25 +1,10 @@
1/* linux/arch/arm/mach-s3c2442/s3c2442.c 1// SPDX-License-Identifier: GPL-2.0+
2 * 2//
3 * Copyright (c) 2004-2005 Simtec Electronics 3// Copyright (c) 2004-2005 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4// http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * 6//
7 * S3C2442 core and lock support 7// S3C2442 core and lock support
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22*/
23 8
24#include <linux/init.h> 9#include <linux/init.h>
25#include <linux/module.h> 10#include <linux/module.h>
diff --git a/arch/arm/mach-s3c24xx/s3c2443.c b/arch/arm/mach-s3c24xx/s3c2443.c
index b559d378cf43..313e369c3ddd 100644
--- a/arch/arm/mach-s3c24xx/s3c2443.c
+++ b/arch/arm/mach-s3c24xx/s3c2443.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c2443/s3c2443.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2007 Simtec Electronics 3// Copyright (c) 2007 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * Samsung S3C2443 Mobile CPU support 6// Samsung S3C2443 Mobile CPU support
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/s3c244x.c b/arch/arm/mach-s3c24xx/s3c244x.c
index 31fd273269c2..a75f588b9d45 100644
--- a/arch/arm/mach-s3c24xx/s3c244x.c
+++ b/arch/arm/mach-s3c24xx/s3c244x.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/plat-s3c24xx/s3c244x.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2004-2006 Simtec Electronics 3// Copyright (c) 2004-2006 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * Samsung S3C2440 and S3C2442 Mobile CPU support (not S3C2443) 6// Samsung S3C2440 and S3C2442 Mobile CPU support (not S3C2443)
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/setup-camif.c b/arch/arm/mach-s3c24xx/setup-camif.c
index 72d8edb8927a..2b262fae3f61 100644
--- a/arch/arm/mach-s3c24xx/setup-camif.c
+++ b/arch/arm/mach-s3c24xx/setup-camif.c
@@ -1,12 +1,8 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (C) 2012 Sylwester Nawrocki <sylvester.nawrocki@gmail.com> 2//
3 * 3// Copyright (C) 2012 Sylwester Nawrocki <sylvester.nawrocki@gmail.com>
4 * Helper functions for S3C24XX/S3C64XX SoC series CAMIF driver 4//
5 * 5// Helper functions for S3C24XX/S3C64XX SoC series CAMIF driver
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10 6
11#include <linux/gpio.h> 7#include <linux/gpio.h>
12#include <plat/gpio-cfg.h> 8#include <plat/gpio-cfg.h>
diff --git a/arch/arm/mach-s3c24xx/setup-i2c.c b/arch/arm/mach-s3c24xx/setup-i2c.c
index 1852696ca16e..1a01d44b5910 100644
--- a/arch/arm/mach-s3c24xx/setup-i2c.c
+++ b/arch/arm/mach-s3c24xx/setup-i2c.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/plat-s3c24xx/setup-i2c.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Simtec Electronics 3// Copyright 2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * S3C24XX Base setup for i2c device 6// S3C24XX Base setup for i2c device
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/gpio.h> 9#include <linux/gpio.h>
diff --git a/arch/arm/mach-s3c24xx/setup-sdhci-gpio.c b/arch/arm/mach-s3c24xx/setup-sdhci-gpio.c
index c99b0f664db7..218346a36d1e 100644
--- a/arch/arm/mach-s3c24xx/setup-sdhci-gpio.c
+++ b/arch/arm/mach-s3c24xx/setup-sdhci-gpio.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-s3c2416/setup-sdhci-gpio.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2010 Promwad Innovation Company 3// Copyright 2010 Promwad Innovation Company
4 * Yauhen Kharuzhy <yauhen.kharuzhy@promwad.com> 4// Yauhen Kharuzhy <yauhen.kharuzhy@promwad.com>
5 * 5//
6 * S3C2416 - Helper functions for setting up SDHCI device(s) GPIO (HSMMC) 6// S3C2416 - Helper functions for setting up SDHCI device(s) GPIO (HSMMC)
7 * 7//
8 * Based on mach-s3c64xx/setup-sdhci-gpio.c 8// Based on mach-s3c64xx/setup-sdhci-gpio.c
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/kernel.h> 10#include <linux/kernel.h>
16#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/setup-spi.c b/arch/arm/mach-s3c24xx/setup-spi.c
index 3d47e023ce94..6c2b96a82da5 100644
--- a/arch/arm/mach-s3c24xx/setup-spi.c
+++ b/arch/arm/mach-s3c24xx/setup-spi.c
@@ -1,13 +1,9 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * HS-SPI device setup for S3C2443/S3C2416 2//
3 * 3// HS-SPI device setup for S3C2443/S3C2416
4 * Copyright (C) 2011 Samsung Electronics Ltd. 4//
5 * http://www.samsung.com/ 5// Copyright (C) 2011 Samsung Electronics Ltd.
6 * 6// http://www.samsung.com/
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */
11 7
12#include <linux/gpio.h> 8#include <linux/gpio.h>
13#include <linux/platform_device.h> 9#include <linux/platform_device.h>
diff --git a/arch/arm/mach-s3c24xx/setup-ts.c b/arch/arm/mach-s3c24xx/setup-ts.c
index 46466d20257e..53a14d4f4852 100644
--- a/arch/arm/mach-s3c24xx/setup-ts.c
+++ b/arch/arm/mach-s3c24xx/setup-ts.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/plat-s3c24xx/setup-ts.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3// Copyright (c) 2010 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4// http://www.samsung.com/
5 * 5//
6 * Based on S3C24XX setup for i2c device 6// Based on S3C24XX setup for i2c device
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 */
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/gpio.h> 9#include <linux/gpio.h>
diff --git a/arch/arm/mach-s3c24xx/simtec-audio.c b/arch/arm/mach-s3c24xx/simtec-audio.c
index 67cb5120dfeb..12e17f82dae3 100644
--- a/arch/arm/mach-s3c24xx/simtec-audio.c
+++ b/arch/arm/mach-s3c24xx/simtec-audio.c
@@ -1,15 +1,10 @@
1/* linux/arch/arm/plat-s3c24xx/simtec-audio.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2009 Simtec Electronics 3// Copyright (c) 2009 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4// http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * 6//
7 * Audio setup for various Simtec S3C24XX implementations 7// Audio setup for various Simtec S3C24XX implementations
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 8
14#include <linux/kernel.h> 9#include <linux/kernel.h>
15#include <linux/interrupt.h> 10#include <linux/interrupt.h>
diff --git a/arch/arm/mach-s3c24xx/simtec-nor.c b/arch/arm/mach-s3c24xx/simtec-nor.c
index 8884bffa619a..26b18497e959 100644
--- a/arch/arm/mach-s3c24xx/simtec-nor.c
+++ b/arch/arm/mach-s3c24xx/simtec-nor.c
@@ -1,15 +1,10 @@
1/* linux/arch/arm/mach-s3c2410/nor-simtec.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2008 Simtec Electronics 3// Copyright (c) 2008 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4// http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * 6//
7 * Simtec NOR mapping 7// Simtec NOR mapping
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 8
14#include <linux/module.h> 9#include <linux/module.h>
15#include <linux/types.h> 10#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/simtec-pm.c b/arch/arm/mach-s3c24xx/simtec-pm.c
index 38a2f1fdebab..c19074d81389 100644
--- a/arch/arm/mach-s3c24xx/simtec-pm.c
+++ b/arch/arm/mach-s3c24xx/simtec-pm.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-s3c24xx/pm-simtec.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2004 Simtec Electronics 3// Copyright 2004 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * 7//
8 * Power Management helpers for Simtec S3C24XX implementations 8// Power Management helpers for Simtec S3C24XX implementations
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/kernel.h> 10#include <linux/kernel.h>
16#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c24xx/simtec-usb.c b/arch/arm/mach-s3c24xx/simtec-usb.c
index b70aa66efebe..dc1016ffed94 100644
--- a/arch/arm/mach-s3c24xx/simtec-usb.c
+++ b/arch/arm/mach-s3c24xx/simtec-usb.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/mach-s3c2410/usb-simtec.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2004-2005 Simtec Electronics 3// Copyright 2004-2005 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * http://www.simtec.co.uk/products/EB2410ITX/ 6// http://www.simtec.co.uk/products/EB2410ITX/
7 * 7//
8 * Simtec BAST and Thorcom VR1000 USB port support functions 8// Simtec BAST and Thorcom VR1000 USB port support functions
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#define DEBUG 10#define DEBUG
16 11
diff --git a/arch/arm/mach-s3c24xx/simtec.h b/arch/arm/mach-s3c24xx/simtec.h
index ae8f4f9ad2ee..d96bd60872b8 100644
--- a/arch/arm/mach-s3c24xx/simtec.h
+++ b/arch/arm/mach-s3c24xx/simtec.h
@@ -1,15 +1,11 @@
1/* linux/arch/arm/mach-s3c2410/nor-simtec.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2008 Simtec Electronics 3 * Copyright (c) 2008 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * 6 *
7 * Simtec common functions 7 * Simtec common functions
8 * 8 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14struct s3c24xx_audio_simtec_pdata; 10struct s3c24xx_audio_simtec_pdata;
15 11
diff --git a/arch/arm/mach-s3c24xx/sleep-s3c2410.S b/arch/arm/mach-s3c24xx/sleep-s3c2410.S
index 875ba8911127..659f9eff9de2 100644
--- a/arch/arm/mach-s3c24xx/sleep-s3c2410.S
+++ b/arch/arm/mach-s3c24xx/sleep-s3c2410.S
@@ -1,5 +1,5 @@
1/* linux/arch/arm/mach-s3c2410/sleep.S 1/* SPDX-License-Identifier: GPL-2.0+ */
2 * 2/*
3 * Copyright (c) 2004 Simtec Electronics 3 * Copyright (c) 2004 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * 5 *
@@ -8,21 +8,7 @@
8 * Based on PXA/SA1100 sleep code by: 8 * Based on PXA/SA1100 sleep code by:
9 * Nicolas Pitre, (c) 2002 Monta Vista Software Inc 9 * Nicolas Pitre, (c) 2002 Monta Vista Software Inc
10 * Cliff Brake, (c) 2001 10 * Cliff Brake, (c) 2001
11 * 11 */
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25*/
26 12
27#include <linux/linkage.h> 13#include <linux/linkage.h>
28#include <linux/serial_s3c.h> 14#include <linux/serial_s3c.h>
diff --git a/arch/arm/mach-s3c24xx/sleep-s3c2412.S b/arch/arm/mach-s3c24xx/sleep-s3c2412.S
index 6bf5b4d8743c..c373f1ca862b 100644
--- a/arch/arm/mach-s3c24xx/sleep-s3c2412.S
+++ b/arch/arm/mach-s3c24xx/sleep-s3c2412.S
@@ -1,24 +1,10 @@
1/* linux/arch/arm/mach-s3c2412/sleep.S 1/* SPDX-License-Identifier: GPL-2.0+ */
2 * 2/*
3 * Copyright (c) 2007 Simtec Electronics 3 * Copyright (c) 2007 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * 5 *
6 * S3C2412 Power Manager low-level sleep support 6 * S3C2412 Power Manager low-level sleep support
7 * 7 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21*/
22 8
23#include <linux/linkage.h> 9#include <linux/linkage.h>
24#include <asm/assembler.h> 10#include <asm/assembler.h>
diff --git a/arch/arm/mach-s3c24xx/sleep.S b/arch/arm/mach-s3c24xx/sleep.S
index b859268fa8da..f0f11ad60c52 100644
--- a/arch/arm/mach-s3c24xx/sleep.S
+++ b/arch/arm/mach-s3c24xx/sleep.S
@@ -1,5 +1,5 @@
1/* linux/arch/arm/plat-s3c24xx/sleep.S 1/* SPDX-License-Identifier: GPL-2.0+ */
2 * 2/*
3 * Copyright (c) 2004 Simtec Electronics 3 * Copyright (c) 2004 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * 5 *
@@ -8,21 +8,7 @@
8 * Based on PXA/SA1100 sleep code by: 8 * Based on PXA/SA1100 sleep code by:
9 * Nicolas Pitre, (c) 2002 Monta Vista Software Inc 9 * Nicolas Pitre, (c) 2002 Monta Vista Software Inc
10 * Cliff Brake, (c) 2001 10 * Cliff Brake, (c) 2001
11 * 11 */
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25*/
26 12
27#include <linux/linkage.h> 13#include <linux/linkage.h>
28#include <linux/serial_s3c.h> 14#include <linux/serial_s3c.h>
diff --git a/arch/arm/mach-s3c24xx/spi-core.h b/arch/arm/mach-s3c24xx/spi-core.h
index 0b9428ab3fc3..bb555ccbe057 100644
--- a/arch/arm/mach-s3c24xx/spi-core.h
+++ b/arch/arm/mach-s3c24xx/spi-core.h
@@ -1,9 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (C) 2012 Heiko Stuebner <heiko@sntech.de> 3 * Copyright (C) 2012 Heiko Stuebner <heiko@sntech.de>
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */ 4 */
8 5
9#ifndef __PLAT_S3C_SPI_CORE_H 6#ifndef __PLAT_S3C_SPI_CORE_H
diff --git a/arch/arm/mach-s3c24xx/vr1000.h b/arch/arm/mach-s3c24xx/vr1000.h
index 7fcd2c2f183c..3cfa296bec2a 100644
--- a/arch/arm/mach-s3c24xx/vr1000.h
+++ b/arch/arm/mach-s3c24xx/vr1000.h
@@ -1,17 +1,12 @@
1 1/* SPDX-License-Identifier: GPL-2.0 */
2/* arch/arm/mach-s3c2410/include/mach/vr1000-cpld.h 2/*
3 *
4 * Copyright (c) 2003 Simtec Electronics 3 * Copyright (c) 2003 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
6 * 5 *
7 * VR1000 - CPLD control constants 6 * VR1000 - CPLD control constants
8 * Machine VR1000 - IRQ Number definitions 7 * Machine VR1000 - IRQ Number definitions
9 * Machine VR1000 - Memory map definitions 8 * Machine VR1000 - Memory map definitions
10 * 9 */
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14*/
15 10
16#ifndef __MACH_S3C24XX_VR1000_H 11#ifndef __MACH_S3C24XX_VR1000_H
17#define __MACH_S3C24XX_VR1000_H __FILE__ 12#define __MACH_S3C24XX_VR1000_H __FILE__
diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig
index afd1f20be49e..5700822e3c74 100644
--- a/arch/arm/mach-s3c64xx/Kconfig
+++ b/arch/arm/mach-s3c64xx/Kconfig
@@ -1,7 +1,8 @@
1# SPDX-License-Identifier: GPL-2.0
2#
1# Copyright 2008 Openmoko, Inc. 3# Copyright 2008 Openmoko, Inc.
2# Simtec Electronics, Ben Dooks <ben@simtec.co.uk> 4# Simtec Electronics, Ben Dooks <ben@simtec.co.uk>
3# 5
4# Licensed under GPLv2
5menuconfig ARCH_S3C64XX 6menuconfig ARCH_S3C64XX
6 bool "Samsung S3C64XX" 7 bool "Samsung S3C64XX"
7 depends on ARCH_MULTI_V6 8 depends on ARCH_MULTI_V6
diff --git a/arch/arm/mach-s3c64xx/Makefile b/arch/arm/mach-s3c64xx/Makefile
index 256cd5b40c60..8caeb4ad17e9 100644
--- a/arch/arm/mach-s3c64xx/Makefile
+++ b/arch/arm/mach-s3c64xx/Makefile
@@ -1,9 +1,7 @@
1# arch/arm/mach-s3c64xx/Makefile 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright 2008 Openmoko, Inc. 3# Copyright 2008 Openmoko, Inc.
4# Copyright 2008 Simtec Electronics 4# Copyright 2008 Simtec Electronics
5#
6# Licensed under GPLv2
7 5
8ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include 6ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include
9asflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include 7asflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include
diff --git a/arch/arm/mach-s3c64xx/ata-core.h b/arch/arm/mach-s3c64xx/ata-core.h
index 5951f24a9ec8..6d9a81f759e6 100644
--- a/arch/arm/mach-s3c64xx/ata-core.h
+++ b/arch/arm/mach-s3c64xx/ata-core.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 4 * http://www.samsung.com
4 * 5 *
5 * Samsung CF-ATA Controller core functions 6 * Samsung CF-ATA Controller core functions
6 * 7 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 8
12#ifndef __ASM_PLAT_ATA_CORE_H 9#ifndef __ASM_PLAT_ATA_CORE_H
13#define __ASM_PLAT_ATA_CORE_H __FILE__ 10#define __ASM_PLAT_ATA_CORE_H __FILE__
diff --git a/arch/arm/mach-s3c64xx/backlight.h b/arch/arm/mach-s3c64xx/backlight.h
index 8dcacac523a2..028663f1cacc 100644
--- a/arch/arm/mach-s3c64xx/backlight.h
+++ b/arch/arm/mach-s3c64xx/backlight.h
@@ -1,10 +1,7 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 4 * http://www.samsung.com
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 */ 5 */
9 6
10#ifndef __ASM_PLAT_BACKLIGHT_H 7#ifndef __ASM_PLAT_BACKLIGHT_H
diff --git a/arch/arm/mach-s3c64xx/common.c b/arch/arm/mach-s3c64xx/common.c
index 9843eb4dd04e..13e91074308a 100644
--- a/arch/arm/mach-s3c64xx/common.c
+++ b/arch/arm/mach-s3c64xx/common.c
@@ -1,18 +1,14 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 2//
3 * http://www.samsung.com 3// Copyright (c) 2011 Samsung Electronics Co., Ltd.
4 * 4// http://www.samsung.com
5 * Copyright 2008 Openmoko, Inc. 5//
6 * Copyright 2008 Simtec Electronics 6// Copyright 2008 Openmoko, Inc.
7 * Ben Dooks <ben@simtec.co.uk> 7// Copyright 2008 Simtec Electronics
8 * http://armlinux.simtec.co.uk/ 8// Ben Dooks <ben@simtec.co.uk>
9 * 9// http://armlinux.simtec.co.uk/
10 * Common Codes for S3C64XX machines 10//
11 * 11// Common Codes for S3C64XX machines
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License version 2 as
14 * published by the Free Software Foundation.
15 */
16 12
17/* 13/*
18 * NOTE: Code in this file is not used when booting with Device Tree support. 14 * NOTE: Code in this file is not used when booting with Device Tree support.
diff --git a/arch/arm/mach-s3c64xx/common.h b/arch/arm/mach-s3c64xx/common.h
index 4f204668f00e..03670887a764 100644
--- a/arch/arm/mach-s3c64xx/common.h
+++ b/arch/arm/mach-s3c64xx/common.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 4 * http://www.samsung.com
@@ -8,10 +9,6 @@
8 * http://armlinux.simtec.co.uk/ 9 * http://armlinux.simtec.co.uk/
9 * 10 *
10 * Common Header for S3C64XX machines 11 * Common Header for S3C64XX machines
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License version 2 as
14 * published by the Free Software Foundation.
15 */ 12 */
16 13
17#ifndef __ARCH_ARM_MACH_S3C64XX_COMMON_H 14#ifndef __ARCH_ARM_MACH_S3C64XX_COMMON_H
diff --git a/arch/arm/mach-s3c64xx/cpuidle.c b/arch/arm/mach-s3c64xx/cpuidle.c
index 5322db51150e..0bac6f6413b0 100644
--- a/arch/arm/mach-s3c64xx/cpuidle.c
+++ b/arch/arm/mach-s3c64xx/cpuidle.c
@@ -1,13 +1,8 @@
1/* linux/arch/arm/mach-s3c64xx/cpuidle.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2011 Wolfson Microelectronics, plc 3// Copyright (c) 2011 Wolfson Microelectronics, plc
4 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 4// Copyright (c) 2011 Samsung Electronics Co., Ltd.
5 * http://www.samsung.com 5// http://www.samsung.com
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 6
12#include <linux/kernel.h> 7#include <linux/kernel.h>
13#include <linux/init.h> 8#include <linux/init.h>
diff --git a/arch/arm/mach-s3c64xx/crag6410.h b/arch/arm/mach-s3c64xx/crag6410.h
index dcbe17f5e5f8..00d9aa114aa7 100644
--- a/arch/arm/mach-s3c64xx/crag6410.h
+++ b/arch/arm/mach-s3c64xx/crag6410.h
@@ -1,11 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* Cragganmore 6410 shared definitions 2/* Cragganmore 6410 shared definitions
2 * 3 *
3 * Copyright 2011 Wolfson Microelectronics plc 4 * Copyright 2011 Wolfson Microelectronics plc
4 * Mark Brown <broonie@opensource.wolfsonmicro.com> 5 * Mark Brown <broonie@opensource.wolfsonmicro.com>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */ 6 */
10 7
11#ifndef MACH_CRAG6410_H 8#ifndef MACH_CRAG6410_H
diff --git a/arch/arm/mach-s3c64xx/dev-audio.c b/arch/arm/mach-s3c64xx/dev-audio.c
index cb953e238b2a..e3c49b5d1355 100644
--- a/arch/arm/mach-s3c64xx/dev-audio.c
+++ b/arch/arm/mach-s3c64xx/dev-audio.c
@@ -1,12 +1,7 @@
1/* linux/arch/arm/plat-s3c/dev-audio.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2009 Wolfson Microelectronics 3// Copyright 2009 Wolfson Microelectronics
4 * Mark Brown <broonie@opensource.wolfsonmicro.com> 4// Mark Brown <broonie@opensource.wolfsonmicro.com>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10 5
11#include <linux/kernel.h> 6#include <linux/kernel.h>
12#include <linux/string.h> 7#include <linux/string.h>
diff --git a/arch/arm/mach-s3c64xx/dev-backlight.c b/arch/arm/mach-s3c64xx/dev-backlight.c
index 7ef8b9019344..799cfdf0606b 100644
--- a/arch/arm/mach-s3c64xx/dev-backlight.c
+++ b/arch/arm/mach-s3c64xx/dev-backlight.c
@@ -1,13 +1,9 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 2//
3 * http://www.samsung.com 3// Copyright (c) 2011 Samsung Electronics Co., Ltd.
4 * 4// http://www.samsung.com
5 * Common infrastructure for PWM Backlight for Samsung boards 5//
6 * 6// Common infrastructure for PWM Backlight for Samsung boards
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */
11 7
12#include <linux/gpio.h> 8#include <linux/gpio.h>
13#include <linux/platform_device.h> 9#include <linux/platform_device.h>
diff --git a/arch/arm/mach-s3c64xx/dev-uart.c b/arch/arm/mach-s3c64xx/dev-uart.c
index a0b4f0329811..5fb59ad30008 100644
--- a/arch/arm/mach-s3c64xx/dev-uart.c
+++ b/arch/arm/mach-s3c64xx/dev-uart.c
@@ -1,17 +1,11 @@
1/* linux/arch/arm/plat-s3c64xx/dev-uart.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * 7//
8 * Base S3C64XX UART resource and device definitions 8// Base S3C64XX UART resource and device definitions
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13 *
14*/
15 9
16#include <linux/kernel.h> 10#include <linux/kernel.h>
17#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/include/mach/gpio-samsung.h b/arch/arm/mach-s3c64xx/include/mach/gpio-samsung.h
index 1d3636512e33..8ed144a0d474 100644
--- a/arch/arm/mach-s3c64xx/include/mach/gpio-samsung.h
+++ b/arch/arm/mach-s3c64xx/include/mach/gpio-samsung.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
3 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
@@ -5,11 +6,7 @@
5 * Ben Dooks <ben@simtec.co.uk> 6 * Ben Dooks <ben@simtec.co.uk>
6 * 7 *
7 * S3C6400 - GPIO lib support 8 * S3C6400 - GPIO lib support
8 * 9 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 10
14#ifndef GPIO_SAMSUNG_S3C64XX_H 11#ifndef GPIO_SAMSUNG_S3C64XX_H
15#define GPIO_SAMSUNG_S3C64XX_H 12#define GPIO_SAMSUNG_S3C64XX_H
diff --git a/arch/arm/mach-s3c64xx/include/mach/hardware.h b/arch/arm/mach-s3c64xx/include/mach/hardware.h
index 862d033e57a4..c4ed359474de 100644
--- a/arch/arm/mach-s3c64xx/include/mach/hardware.h
+++ b/arch/arm/mach-s3c64xx/include/mach/hardware.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* linux/arch/arm/mach-s3c6400/include/mach/hardware.h 2/* linux/arch/arm/mach-s3c6400/include/mach/hardware.h
2 * 3 *
3 * Copyright 2008 Openmoko, Inc. 4 * Copyright 2008 Openmoko, Inc.
diff --git a/arch/arm/mach-s3c64xx/include/mach/map.h b/arch/arm/mach-s3c64xx/include/mach/map.h
index d51873e8f63f..9372a535b7ba 100644
--- a/arch/arm/mach-s3c64xx/include/mach/map.h
+++ b/arch/arm/mach-s3c64xx/include/mach/map.h
@@ -1,16 +1,12 @@
1/* linux/arch/arm/mach-s3c6400/include/mach/map.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
5 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
6 * Ben Dooks <ben@simtec.co.uk> 6 * Ben Dooks <ben@simtec.co.uk>
7 * 7 *
8 * S3C64XX - Memory map definitions 8 * S3C64XX - Memory map definitions
9 * 9 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 10
15#ifndef __ASM_ARCH_MAP_H 11#ifndef __ASM_ARCH_MAP_H
16#define __ASM_ARCH_MAP_H __FILE__ 12#define __ASM_ARCH_MAP_H __FILE__
diff --git a/arch/arm/mach-s3c64xx/include/mach/pm-core.h b/arch/arm/mach-s3c64xx/include/mach/pm-core.h
index 4a285e97afff..bbf79ed28583 100644
--- a/arch/arm/mach-s3c64xx/include/mach/pm-core.h
+++ b/arch/arm/mach-s3c64xx/include/mach/pm-core.h
@@ -1,15 +1,11 @@
1/* linux/arch/arm/mach-s3c64xx/include/mach/pm-core.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6 * http://armlinux.simtec.co.uk/
7 * 7 *
8 * S3C64XX - PM core support for arch/arm/plat-s3c/pm.c 8 * S3C64XX - PM core support for arch/arm/plat-s3c/pm.c
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13 */ 9 */
14 10
15#ifndef __MACH_S3C64XX_PM_CORE_H 11#ifndef __MACH_S3C64XX_PM_CORE_H
diff --git a/arch/arm/mach-s3c64xx/include/mach/regs-clock.h b/arch/arm/mach-s3c64xx/include/mach/regs-clock.h
index 4f44aac77092..35a68767b318 100644
--- a/arch/arm/mach-s3c64xx/include/mach/regs-clock.h
+++ b/arch/arm/mach-s3c64xx/include/mach/regs-clock.h
@@ -1,16 +1,12 @@
1/* arch/arm/plat-s3c64xx/include/plat/regs-clock.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6 * http://armlinux.simtec.co.uk/
7 * 7 *
8 * S3C64XX clock register definitions 8 * S3C64XX clock register definitions
9 * 9 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 10
15#ifndef __PLAT_REGS_CLOCK_H 11#ifndef __PLAT_REGS_CLOCK_H
16#define __PLAT_REGS_CLOCK_H __FILE__ 12#define __PLAT_REGS_CLOCK_H __FILE__
diff --git a/arch/arm/mach-s3c64xx/include/mach/regs-irq.h b/arch/arm/mach-s3c64xx/include/mach/regs-irq.h
index 6a1127891c87..b18c7bcb61c5 100644
--- a/arch/arm/mach-s3c64xx/include/mach/regs-irq.h
+++ b/arch/arm/mach-s3c64xx/include/mach/regs-irq.h
@@ -1,16 +1,12 @@
1/* linux/arch/arm/mach-s3c6400/include/mach/regs-irq.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
5 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
6 * Ben Dooks <ben@simtec.co.uk> 6 * Ben Dooks <ben@simtec.co.uk>
7 * 7 *
8 * S3C64XX - IRQ register definitions 8 * S3C64XX - IRQ register definitions
9 * 9 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 10
15#ifndef __ASM_ARCH_REGS_IRQ_H 11#ifndef __ASM_ARCH_REGS_IRQ_H
16#define __ASM_ARCH_REGS_IRQ_H __FILE__ 12#define __ASM_ARCH_REGS_IRQ_H __FILE__
diff --git a/arch/arm/mach-s3c64xx/irq-pm.c b/arch/arm/mach-s3c64xx/irq-pm.c
index 0bbf1faaee42..31b221190479 100644
--- a/arch/arm/mach-s3c64xx/irq-pm.c
+++ b/arch/arm/mach-s3c64xx/irq-pm.c
@@ -1,16 +1,11 @@
1/* arch/arm/plat-s3c64xx/irq-pm.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * 7//
8 * S3C64XX - Interrupt handling Power Management 8// S3C64XX - Interrupt handling Power Management
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13 */
14 9
15/* 10/*
16 * NOTE: Code in this file is not used when booting with Device Tree support. 11 * NOTE: Code in this file is not used when booting with Device Tree support.
diff --git a/arch/arm/mach-s3c64xx/irq-uart.h b/arch/arm/mach-s3c64xx/irq-uart.h
index 4b296132962f..78eccdce95a7 100644
--- a/arch/arm/mach-s3c64xx/irq-uart.h
+++ b/arch/arm/mach-s3c64xx/irq-uart.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2010 Simtec Electronics 3 * Copyright (c) 2010 Simtec Electronics
3 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
4 * 5 *
5 * Header file for Samsung SoC UART IRQ demux for S3C64XX and later 6 * Header file for Samsung SoC UART IRQ demux for S3C64XX and later
6 * 7 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 8
12struct s3c_uart_irq { 9struct s3c_uart_irq {
13 void __iomem *regs; 10 void __iomem *regs;
diff --git a/arch/arm/mach-s3c64xx/mach-anw6410.c b/arch/arm/mach-s3c64xx/mach-anw6410.c
index 347ce6009a8c..0d3d5befb806 100644
--- a/arch/arm/mach-s3c64xx/mach-anw6410.c
+++ b/arch/arm/mach-s3c64xx/mach-anw6410.c
@@ -1,17 +1,11 @@
1/* linux/arch/arm/mach-s3c64xx/mach-anw6410.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * Copyright 2009 Kwangwoo Lee 7// Copyright 2009 Kwangwoo Lee
8 * Kwangwoo Lee <kwangwoo.lee@gmail.com> 8// Kwangwoo Lee <kwangwoo.lee@gmail.com>
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13 *
14*/
15 9
16#include <linux/kernel.h> 10#include <linux/kernel.h>
17#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410-module.c b/arch/arm/mach-s3c64xx/mach-crag6410-module.c
index ea5f2169c850..f00988705408 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410-module.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410-module.c
@@ -1,12 +1,9 @@
1/* Speyside modules for Cragganmore - board data probing 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2011 Wolfson Microelectronics plc 3// Speyside modules for Cragganmore - board data probing
4 * Mark Brown <broonie@opensource.wolfsonmicro.com> 4//
5 * 5// Copyright 2011 Wolfson Microelectronics plc
6 * This program is free software; you can redistribute it and/or modify 6// Mark Brown <broonie@opensource.wolfsonmicro.com>
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10 7
11#include <linux/export.h> 8#include <linux/export.h>
12#include <linux/interrupt.h> 9#include <linux/interrupt.h>
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-s3c64xx/mach-crag6410.c
index d9d0440aed78..f04650297487 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@ -1,15 +1,10 @@
1/* linux/arch/arm/mach-s3c64xx/mach-crag6410.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2011 Wolfson Microelectronics plc 3// Copyright 2011 Wolfson Microelectronics plc
4 * Mark Brown <broonie@opensource.wolfsonmicro.com> 4// Mark Brown <broonie@opensource.wolfsonmicro.com>
5 * 5//
6 * Copyright 2011 Simtec Electronics 6// Copyright 2011 Simtec Electronics
7 * Ben Dooks <ben@simtec.co.uk> 7// Ben Dooks <ben@simtec.co.uk>
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 */
13 8
14#include <linux/kernel.h> 9#include <linux/kernel.h>
15#include <linux/list.h> 10#include <linux/list.h>
diff --git a/arch/arm/mach-s3c64xx/mach-hmt.c b/arch/arm/mach-s3c64xx/mach-hmt.c
index 59b5531f1987..bfe9881d12cc 100644
--- a/arch/arm/mach-s3c64xx/mach-hmt.c
+++ b/arch/arm/mach-s3c64xx/mach-hmt.c
@@ -1,12 +1,8 @@
1/* mach-hmt.c - Platform code for Airgoo HMT 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2009 Peter Korsgaard <jacmet@sunsite.dk> 3// mach-hmt.c - Platform code for Airgoo HMT
4 * 4//
5 * This program is free software; you can redistribute it and/or modify 5// Copyright 2009 Peter Korsgaard <jacmet@sunsite.dk>
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 *
9*/
10 6
11#include <linux/kernel.h> 7#include <linux/kernel.h>
12#include <linux/init.h> 8#include <linux/init.h>
diff --git a/arch/arm/mach-s3c64xx/mach-mini6410.c b/arch/arm/mach-s3c64xx/mach-mini6410.c
index a3e3e25728b4..0dd36ae49e6a 100644
--- a/arch/arm/mach-s3c64xx/mach-mini6410.c
+++ b/arch/arm/mach-s3c64xx/mach-mini6410.c
@@ -1,16 +1,10 @@
1/* linux/arch/arm/mach-s3c64xx/mach-mini6410.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2010 Darius Augulis <augulis.darius@gmail.com> 3// Copyright 2010 Darius Augulis <augulis.darius@gmail.com>
4 * Copyright 2008 Openmoko, Inc. 4// Copyright 2008 Openmoko, Inc.
5 * Copyright 2008 Simtec Electronics 5// Copyright 2008 Simtec Electronics
6 * Ben Dooks <ben@simtec.co.uk> 6// Ben Dooks <ben@simtec.co.uk>
7 * http://armlinux.simtec.co.uk/ 7// http://armlinux.simtec.co.uk/
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 *
13*/
14 8
15#include <linux/init.h> 9#include <linux/init.h>
16#include <linux/interrupt.h> 10#include <linux/interrupt.h>
diff --git a/arch/arm/mach-s3c64xx/mach-ncp.c b/arch/arm/mach-s3c64xx/mach-ncp.c
index 23baaa04318c..13fea5c86ca3 100644
--- a/arch/arm/mach-s3c64xx/mach-ncp.c
+++ b/arch/arm/mach-s3c64xx/mach-ncp.c
@@ -1,13 +1,6 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * linux/arch/arm/mach-s3c64xx/mach-ncp.c 2//
3 * 3// Copyright (C) 2008-2009 Samsung Electronics
4 * Copyright (C) 2008-2009 Samsung Electronics
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 */
11 4
12#include <linux/kernel.h> 5#include <linux/kernel.h>
13#include <linux/types.h> 6#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/mach-real6410.c b/arch/arm/mach-s3c64xx/mach-real6410.c
index d6b3ffd7704b..0ff88b6859c4 100644
--- a/arch/arm/mach-s3c64xx/mach-real6410.c
+++ b/arch/arm/mach-s3c64xx/mach-real6410.c
@@ -1,16 +1,10 @@
1/* linux/arch/arm/mach-s3c64xx/mach-real6410.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2010 Darius Augulis <augulis.darius@gmail.com> 3// Copyright 2010 Darius Augulis <augulis.darius@gmail.com>
4 * Copyright 2008 Openmoko, Inc. 4// Copyright 2008 Openmoko, Inc.
5 * Copyright 2008 Simtec Electronics 5// Copyright 2008 Simtec Electronics
6 * Ben Dooks <ben@simtec.co.uk> 6// Ben Dooks <ben@simtec.co.uk>
7 * http://armlinux.simtec.co.uk/ 7// http://armlinux.simtec.co.uk/
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 *
13*/
14 8
15#include <linux/init.h> 9#include <linux/init.h>
16#include <linux/interrupt.h> 10#include <linux/interrupt.h>
diff --git a/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c b/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
index 5bf9afae752d..1724f5ea5c46 100644
--- a/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
+++ b/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
@@ -1,12 +1,8 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Samsung's S3C64XX flattened device tree enabled machine 2//
3 * 3// Samsung's S3C64XX flattened device tree enabled machine
4 * Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com> 4//
5 * 5// Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9*/
10 6
11#include <asm/mach/arch.h> 7#include <asm/mach/arch.h>
12#include <asm/mach/map.h> 8#include <asm/mach/map.h>
diff --git a/arch/arm/mach-s3c64xx/mach-smartq.c b/arch/arm/mach-s3c64xx/mach-smartq.c
index e0e1a729ef98..5655fe968b1f 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq.c
@@ -1,13 +1,6 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * linux/arch/arm/mach-s3c64xx/mach-smartq.c 2//
3 * 3// Copyright (C) 2010 Maurus Cuelenaere
4 * Copyright (C) 2010 Maurus Cuelenaere
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 */
11 4
12#include <linux/delay.h> 5#include <linux/delay.h>
13#include <linux/fb.h> 6#include <linux/fb.h>
diff --git a/arch/arm/mach-s3c64xx/mach-smartq.h b/arch/arm/mach-s3c64xx/mach-smartq.h
index 8e8b693db3af..f98132f4f430 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq.h
+++ b/arch/arm/mach-s3c64xx/mach-smartq.h
@@ -1,12 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * linux/arch/arm/mach-s3c64xx/mach-smartq.h 3 * linux/arch/arm/mach-s3c64xx/mach-smartq.h
3 * 4 *
4 * Copyright (C) 2010 Maurus Cuelenaere 5 * Copyright (C) 2010 Maurus Cuelenaere
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 */ 6 */
11 7
12#ifndef __MACH_SMARTQ_H 8#ifndef __MACH_SMARTQ_H
diff --git a/arch/arm/mach-s3c64xx/mach-smartq5.c b/arch/arm/mach-s3c64xx/mach-smartq5.c
index 0972b6ce0ef6..44e9edb144fa 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq5.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq5.c
@@ -1,13 +1,6 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * linux/arch/arm/mach-s3c64xx/mach-smartq5.c 2//
3 * 3// Copyright (C) 2010 Maurus Cuelenaere
4 * Copyright (C) 2010 Maurus Cuelenaere
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 */
11 4
12#include <linux/fb.h> 5#include <linux/fb.h>
13#include <linux/gpio.h> 6#include <linux/gpio.h>
diff --git a/arch/arm/mach-s3c64xx/mach-smartq7.c b/arch/arm/mach-s3c64xx/mach-smartq7.c
index 51ac1c6c654a..815ee7d0b5e3 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq7.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq7.c
@@ -1,13 +1,6 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * linux/arch/arm/mach-s3c64xx/mach-smartq7.c 2//
3 * 3// Copyright (C) 2010 Maurus Cuelenaere
4 * Copyright (C) 2010 Maurus Cuelenaere
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 */
11 4
12#include <linux/fb.h> 5#include <linux/fb.h>
13#include <linux/gpio.h> 6#include <linux/gpio.h>
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6400.c b/arch/arm/mach-s3c64xx/mach-smdk6400.c
index 7d8a74fd8915..cbd16843c7d1 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6400.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6400.c
@@ -1,13 +1,8 @@
1/* linux/arch/arm/mach-s3c64xx/mach-smdk6400.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Simtec Electronics 3// Copyright 2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/ 5// http://armlinux.simtec.co.uk/
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 6
12#include <linux/kernel.h> 7#include <linux/kernel.h>
13#include <linux/types.h> 8#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6410.c b/arch/arm/mach-s3c64xx/mach-smdk6410.c
index 92ec8c3b42b9..c46fa5dfd2e0 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6410.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6410.c
@@ -1,15 +1,9 @@
1/* linux/arch/arm/mach-s3c64xx/mach-smdk6410.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 *
12*/
13 7
14#include <linux/kernel.h> 8#include <linux/kernel.h>
15#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/onenand-core.h b/arch/arm/mach-s3c64xx/onenand-core.h
index 925eb13bbb60..0cf6b5e76b24 100644
--- a/arch/arm/mach-s3c64xx/onenand-core.h
+++ b/arch/arm/mach-s3c64xx/onenand-core.h
@@ -1,14 +1,11 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2010 Samsung Electronics 3 * Copyright (c) 2010 Samsung Electronics
3 * Kyungmin Park <kyungmin.park@samsung.com> 4 * Kyungmin Park <kyungmin.park@samsung.com>
4 * Marek Szyprowski <m.szyprowski@samsung.com> 5 * Marek Szyprowski <m.szyprowski@samsung.com>
5 * 6 *
6 * Samsung OneNAD Controller core functions 7 * Samsung OneNAD Controller core functions
7 * 8 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 9
13#ifndef __ASM_ARCH_ONENAND_CORE_H 10#ifndef __ASM_ARCH_ONENAND_CORE_H
14#define __ASM_ARCH_ONENAND_CORE_H __FILE__ 11#define __ASM_ARCH_ONENAND_CORE_H __FILE__
diff --git a/arch/arm/mach-s3c64xx/pl080.c b/arch/arm/mach-s3c64xx/pl080.c
index 66fc774b70ec..152edbeea0c7 100644
--- a/arch/arm/mach-s3c64xx/pl080.c
+++ b/arch/arm/mach-s3c64xx/pl080.c
@@ -1,12 +1,8 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Samsung's S3C64XX generic DMA support using amba-pl08x driver. 2//
3 * 3// Samsung's S3C64XX generic DMA support using amba-pl08x driver.
4 * Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com> 4//
5 * 5// Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10 6
11#include <linux/kernel.h> 7#include <linux/kernel.h>
12#include <linux/amba/bus.h> 8#include <linux/amba/bus.h>
diff --git a/arch/arm/mach-s3c64xx/pm.c b/arch/arm/mach-s3c64xx/pm.c
index 2f579be8fe67..fd6dbb263ed5 100644
--- a/arch/arm/mach-s3c64xx/pm.c
+++ b/arch/arm/mach-s3c64xx/pm.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-s3c64xx/pm.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * 7//
8 * S3C64XX CPU PM support. 8// S3C64XX CPU PM support.
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/init.h> 10#include <linux/init.h>
16#include <linux/suspend.h> 11#include <linux/suspend.h>
diff --git a/arch/arm/mach-s3c64xx/regs-modem.h b/arch/arm/mach-s3c64xx/regs-modem.h
index 073cdd3a03be..136ad44291bf 100644
--- a/arch/arm/mach-s3c64xx/regs-modem.h
+++ b/arch/arm/mach-s3c64xx/regs-modem.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
3 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
@@ -5,11 +6,7 @@
5 * Ben Dooks <ben@simtec.co.uk> 6 * Ben Dooks <ben@simtec.co.uk>
6 * 7 *
7 * S3C64XX - modem block registers 8 * S3C64XX - modem block registers
8 * 9 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 10
14#ifndef __MACH_S3C64XX_REGS_MODEM_H 11#ifndef __MACH_S3C64XX_REGS_MODEM_H
15#define __MACH_S3C64XX_REGS_MODEM_H __FILE__ 12#define __MACH_S3C64XX_REGS_MODEM_H __FILE__
diff --git a/arch/arm/mach-s3c64xx/regs-srom.h b/arch/arm/mach-s3c64xx/regs-srom.h
index d56f3386eb00..2b37988bdf94 100644
--- a/arch/arm/mach-s3c64xx/regs-srom.h
+++ b/arch/arm/mach-s3c64xx/regs-srom.h
@@ -1,12 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright 2009 Andy Green <andy@warmcat.com> 3 * Copyright 2009 Andy Green <andy@warmcat.com>
3 * 4 *
4 * S3C64XX SROM definitions 5 * S3C64XX SROM definitions
5 * 6 */
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9*/
10 7
11#ifndef __MACH_S3C64XX_REGS_SROM_H 8#ifndef __MACH_S3C64XX_REGS_SROM_H
12#define __MACH_S3C64XX_REGS_SROM_H __FILE__ 9#define __MACH_S3C64XX_REGS_SROM_H __FILE__
diff --git a/arch/arm/mach-s3c64xx/s3c6400.c b/arch/arm/mach-s3c64xx/s3c6400.c
index 5ea82accc773..545eea716db8 100644
--- a/arch/arm/mach-s3c64xx/s3c6400.c
+++ b/arch/arm/mach-s3c64xx/s3c6400.c
@@ -1,13 +1,8 @@
1/* linux/arch/arm/mach-s3c64xx/cpu.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2009 Simtec Electronics 3// Copyright 2009 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/ 5// http://armlinux.simtec.co.uk/
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 6
12/* 7/*
13 * NOTE: Code in this file is not used when booting with Device Tree support. 8 * NOTE: Code in this file is not used when booting with Device Tree support.
diff --git a/arch/arm/mach-s3c64xx/s3c6410.c b/arch/arm/mach-s3c64xx/s3c6410.c
index 92bb927c4478..47e04e019624 100644
--- a/arch/arm/mach-s3c64xx/s3c6410.c
+++ b/arch/arm/mach-s3c64xx/s3c6410.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c64xx/s3c6410.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Simtec Electronics 3// Copyright 2008 Simtec Electronics
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13/* 8/*
14 * NOTE: Code in this file is not used when booting with Device Tree support. 9 * NOTE: Code in this file is not used when booting with Device Tree support.
diff --git a/arch/arm/mach-s3c64xx/setup-fb-24bpp.c b/arch/arm/mach-s3c64xx/setup-fb-24bpp.c
index 9d17bff12d4d..2c7178b26ebb 100644
--- a/arch/arm/mach-s3c64xx/setup-fb-24bpp.c
+++ b/arch/arm/mach-s3c64xx/setup-fb-24bpp.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-s3c64xx/setup-fb-24bpp.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * 7//
8 * Base S3C64XX setup information for 24bpp LCD framebuffer 8// Base S3C64XX setup information for 24bpp LCD framebuffer
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/kernel.h> 10#include <linux/kernel.h>
16#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/setup-i2c0.c b/arch/arm/mach-s3c64xx/setup-i2c0.c
index 4b8c1cfdd1fc..552eb50da38c 100644
--- a/arch/arm/mach-s3c64xx/setup-i2c0.c
+++ b/arch/arm/mach-s3c64xx/setup-i2c0.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-s3c64xx/setup-i2c0.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * 7//
8 * Base S3C64XX I2C bus 0 gpio configuration 8// Base S3C64XX I2C bus 0 gpio configuration
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/kernel.h> 10#include <linux/kernel.h>
16#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/setup-i2c1.c b/arch/arm/mach-s3c64xx/setup-i2c1.c
index cd1df71ee13b..d231f0fc508d 100644
--- a/arch/arm/mach-s3c64xx/setup-i2c1.c
+++ b/arch/arm/mach-s3c64xx/setup-i2c1.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-s3c64xx/setup-i2c1.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4// Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * 7//
8 * Base S3C64XX I2C bus 1 gpio configuration 8// Base S3C64XX I2C bus 1 gpio configuration
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/kernel.h> 10#include <linux/kernel.h>
16#include <linux/types.h> 11#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/setup-ide.c b/arch/arm/mach-s3c64xx/setup-ide.c
index 689fb72e715c..810139a807ce 100644
--- a/arch/arm/mach-s3c64xx/setup-ide.c
+++ b/arch/arm/mach-s3c64xx/setup-ide.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c64xx/setup-ide.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3// Copyright (c) 2010 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4// http://www.samsung.com/
5 * 5//
6 * S3C64XX setup information for IDE 6// S3C64XX setup information for IDE
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/gpio.h> 9#include <linux/gpio.h>
diff --git a/arch/arm/mach-s3c64xx/setup-keypad.c b/arch/arm/mach-s3c64xx/setup-keypad.c
index 6ad9a89dfddf..351961025273 100644
--- a/arch/arm/mach-s3c64xx/setup-keypad.c
+++ b/arch/arm/mach-s3c64xx/setup-keypad.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/mach-s3c64xx/setup-keypad.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3// Copyright (c) 2010 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4// http://www.samsung.com/
5 * 5//
6 * GPIO configuration for S3C64XX KeyPad device 6// GPIO configuration for S3C64XX KeyPad device
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/gpio.h> 8#include <linux/gpio.h>
14#include <plat/gpio-cfg.h> 9#include <plat/gpio-cfg.h>
diff --git a/arch/arm/mach-s3c64xx/setup-sdhci-gpio.c b/arch/arm/mach-s3c64xx/setup-sdhci-gpio.c
index f426b7a16c16..138455af4937 100644
--- a/arch/arm/mach-s3c64xx/setup-sdhci-gpio.c
+++ b/arch/arm/mach-s3c64xx/setup-sdhci-gpio.c
@@ -1,15 +1,10 @@
1/* linux/arch/arm/plat-s3c64xx/setup-sdhci-gpio.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Simtec Electronics 3// Copyright 2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/ 5// http://armlinux.simtec.co.uk/
6 * 6//
7 * S3C64XX - Helper functions for setting up SDHCI device(s) GPIO (HSMMC) 7// S3C64XX - Helper functions for setting up SDHCI device(s) GPIO (HSMMC)
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 8
14#include <linux/kernel.h> 9#include <linux/kernel.h>
15#include <linux/types.h> 10#include <linux/types.h>
diff --git a/arch/arm/mach-s3c64xx/setup-spi.c b/arch/arm/mach-s3c64xx/setup-spi.c
index 5fd1a315c901..39dfae1f46e7 100644
--- a/arch/arm/mach-s3c64xx/setup-spi.c
+++ b/arch/arm/mach-s3c64xx/setup-spi.c
@@ -1,12 +1,7 @@
1/* linux/arch/arm/mach-s3c64xx/setup-spi.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (C) 2011 Samsung Electronics Ltd. 3// Copyright (C) 2011 Samsung Electronics Ltd.
4 * http://www.samsung.com/ 4// http://www.samsung.com/
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10 5
11#include <linux/gpio.h> 6#include <linux/gpio.h>
12#include <plat/gpio-cfg.h> 7#include <plat/gpio-cfg.h>
diff --git a/arch/arm/mach-s3c64xx/setup-usb-phy.c b/arch/arm/mach-s3c64xx/setup-usb-phy.c
index 2b17b7f5152f..46a9e955607f 100644
--- a/arch/arm/mach-s3c64xx/setup-usb-phy.c
+++ b/arch/arm/mach-s3c64xx/setup-usb-phy.c
@@ -1,13 +1,7 @@
1/* 1// SPDX-License-Identifier: GPL-2.0+
2 * Copyright (C) 2011 Samsung Electronics Co.Ltd 2//
3 * Author: Joonyoung Shim <jy0922.shim@samsung.com> 3// Copyright (C) 2011 Samsung Electronics Co.Ltd
4 * 4// Author: Joonyoung Shim <jy0922.shim@samsung.com>
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; either version 2 of the License, or (at your
8 * option) any later version.
9 *
10 */
11 5
12#include <linux/clk.h> 6#include <linux/clk.h>
13#include <linux/delay.h> 7#include <linux/delay.h>
diff --git a/arch/arm/mach-s3c64xx/sleep.S b/arch/arm/mach-s3c64xx/sleep.S
index 34313f9c8792..39e16a07a5e4 100644
--- a/arch/arm/mach-s3c64xx/sleep.S
+++ b/arch/arm/mach-s3c64xx/sleep.S
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* linux/arch/arm/plat-s3c64xx/sleep.S 2/* linux/arch/arm/plat-s3c64xx/sleep.S
2 * 3 *
3 * Copyright 2008 Openmoko, Inc. 4 * Copyright 2008 Openmoko, Inc.
@@ -6,11 +7,7 @@
6 * http://armlinux.simtec.co.uk/ 7 * http://armlinux.simtec.co.uk/
7 * 8 *
8 * S3C64XX CPU sleep code 9 * S3C64XX CPU sleep code
9 * 10 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 11
15#include <linux/linkage.h> 12#include <linux/linkage.h>
16#include <asm/assembler.h> 13#include <asm/assembler.h>
diff --git a/arch/arm/mach-s3c64xx/watchdog-reset.h b/arch/arm/mach-s3c64xx/watchdog-reset.h
index 42707dfbda9c..1042d6c463dc 100644
--- a/arch/arm/mach-s3c64xx/watchdog-reset.h
+++ b/arch/arm/mach-s3c64xx/watchdog-reset.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2008 Simtec Electronics 3 * Copyright (c) 2008 Simtec Electronics
3 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
4 * 5 *
5 * S3C2410 - System define for arch_reset() function 6 * S3C2410 - System define for arch_reset() function
6 * 7 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 8
12#ifndef __PLAT_SAMSUNG_WATCHDOG_RESET_H 9#ifndef __PLAT_SAMSUNG_WATCHDOG_RESET_H
13#define __PLAT_SAMSUNG_WATCHDOG_RESET_H 10#define __PLAT_SAMSUNG_WATCHDOG_RESET_H
diff --git a/arch/arm/mach-s5pv210/Kconfig b/arch/arm/mach-s5pv210/Kconfig
index 4cec11cf5e6f..03984a791879 100644
--- a/arch/arm/mach-s5pv210/Kconfig
+++ b/arch/arm/mach-s5pv210/Kconfig
@@ -1,9 +1,7 @@
1# arch/arm/mach-s5pv210/Kconfig 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright (c) 2010 Samsung Electronics Co., Ltd. 3# Copyright (c) 2010 Samsung Electronics Co., Ltd.
4# http://www.samsung.com/ 4# http://www.samsung.com/
5#
6# Licensed under GPLv2
7 5
8# Configuration options for the S5PV210/S5PC110 6# Configuration options for the S5PV210/S5PC110
9 7
diff --git a/arch/arm/mach-s5pv210/Makefile b/arch/arm/mach-s5pv210/Makefile
index fa7fb716e388..e7b551e18e5c 100644
--- a/arch/arm/mach-s5pv210/Makefile
+++ b/arch/arm/mach-s5pv210/Makefile
@@ -1,9 +1,7 @@
1# arch/arm/mach-s5pv210/Makefile 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright (c) 2010 Samsung Electronics Co., Ltd. 3# Copyright (c) 2010 Samsung Electronics Co., Ltd.
4# http://www.samsung.com/ 4# http://www.samsung.com/
5#
6# Licensed under GPLv2
7 5
8ccflags-$(CONFIG_ARCH_MULTIPLATFORM) += -I$(srctree)/arch/arm/plat-samsung/include 6ccflags-$(CONFIG_ARCH_MULTIPLATFORM) += -I$(srctree)/arch/arm/plat-samsung/include
9 7
diff --git a/arch/arm/mach-s5pv210/common.h b/arch/arm/mach-s5pv210/common.h
index 2ad387c1ecf0..0a188134deae 100644
--- a/arch/arm/mach-s5pv210/common.h
+++ b/arch/arm/mach-s5pv210/common.h
@@ -1,12 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 4 * http://www.samsung.com
4 * 5 *
5 * Common Header for S5PV210 machines 6 * Common Header for S5PV210 machines
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */ 7 */
11 8
12#ifndef __ARCH_ARM_MACH_S5PV210_COMMON_H 9#ifndef __ARCH_ARM_MACH_S5PV210_COMMON_H
diff --git a/arch/arm/mach-s5pv210/pm.c b/arch/arm/mach-s5pv210/pm.c
index 07cee14a363b..f491249ab658 100644
--- a/arch/arm/mach-s5pv210/pm.c
+++ b/arch/arm/mach-s5pv210/pm.c
@@ -1,18 +1,13 @@
1/* linux/arch/arm/mach-s5pv210/pm.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2010-2014 Samsung Electronics Co., Ltd. 3// Copyright (c) 2010-2014 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com 4// http://www.samsung.com
5 * 5//
6 * S5PV210 - Power Management support 6// S5PV210 - Power Management support
7 * 7//
8 * Based on arch/arm/mach-s3c2410/pm.c 8// Based on arch/arm/mach-s3c2410/pm.c
9 * Copyright (c) 2006 Simtec Electronics 9// Copyright (c) 2006 Simtec Electronics
10 * Ben Dooks <ben@simtec.co.uk> 10// Ben Dooks <ben@simtec.co.uk>
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License version 2 as
14 * published by the Free Software Foundation.
15*/
16 11
17#include <linux/init.h> 12#include <linux/init.h>
18#include <linux/suspend.h> 13#include <linux/suspend.h>
diff --git a/arch/arm/mach-s5pv210/regs-clock.h b/arch/arm/mach-s5pv210/regs-clock.h
index fb3eb77412db..2a35c831a9b0 100644
--- a/arch/arm/mach-s5pv210/regs-clock.h
+++ b/arch/arm/mach-s5pv210/regs-clock.h
@@ -1,13 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com/ 4 * http://www.samsung.com/
4 * 5 *
5 * S5PV210 - Clock register definitions 6 * S5PV210 - Clock register definitions
6 * 7 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 8
12#ifndef __ASM_ARCH_REGS_CLOCK_H 9#ifndef __ASM_ARCH_REGS_CLOCK_H
13#define __ASM_ARCH_REGS_CLOCK_H __FILE__ 10#define __ASM_ARCH_REGS_CLOCK_H __FILE__
diff --git a/arch/arm/mach-s5pv210/s5pv210.c b/arch/arm/mach-s5pv210/s5pv210.c
index 83e656ea95ae..868f9c20419d 100644
--- a/arch/arm/mach-s5pv210/s5pv210.c
+++ b/arch/arm/mach-s5pv210/s5pv210.c
@@ -1,14 +1,10 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Samsung's S5PC110/S5PV210 flattened device tree enabled machine. 2//
3 * 3// Samsung's S5PC110/S5PV210 flattened device tree enabled machine.
4 * Copyright (c) 2013-2014 Samsung Electronics Co., Ltd. 4//
5 * Mateusz Krawczuk <m.krawczuk@partner.samsung.com> 5// Copyright (c) 2013-2014 Samsung Electronics Co., Ltd.
6 * Tomasz Figa <t.figa@samsung.com> 6// Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
7 * 7// Tomasz Figa <t.figa@samsung.com>
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 */
12 8
13#include <linux/of_fdt.h> 9#include <linux/of_fdt.h>
14#include <linux/of_platform.h> 10#include <linux/of_platform.h>
diff --git a/arch/arm/mach-s5pv210/sleep.S b/arch/arm/mach-s5pv210/sleep.S
index dfbfc0f7f8b8..81568767f30a 100644
--- a/arch/arm/mach-s5pv210/sleep.S
+++ b/arch/arm/mach-s5pv210/sleep.S
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0+ */
1/* 2/*
2 * Copyright (c) 2011-2014 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2011-2014 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com 4 * http://www.samsung.com
@@ -5,11 +6,6 @@
5 * S5PV210 Sleep Code 6 * S5PV210 Sleep Code
6 * Based on S3C64XX sleep code by: 7 * Based on S3C64XX sleep code by:
7 * Ben Dooks, (c) 2008 Simtec Electronics 8 * Ben Dooks, (c) 2008 Simtec Electronics
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 */ 9 */
14 10
15#include <linux/linkage.h> 11#include <linux/linkage.h>
diff --git a/arch/arm/plat-samsung/Kconfig b/arch/arm/plat-samsung/Kconfig
index 8d4a64cc644c..b600e38364eb 100644
--- a/arch/arm/plat-samsung/Kconfig
+++ b/arch/arm/plat-samsung/Kconfig
@@ -1,8 +1,6 @@
1# arch/arm/plat-samsung/Kconfig 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright 2009 Simtec Electronics 3# Copyright 2009 Simtec Electronics
4#
5# Licensed under GPLv2
6 4
7config PLAT_SAMSUNG 5config PLAT_SAMSUNG
8 bool 6 bool
diff --git a/arch/arm/plat-samsung/Makefile b/arch/arm/plat-samsung/Makefile
index be172efec15c..3db9d2c38258 100644
--- a/arch/arm/plat-samsung/Makefile
+++ b/arch/arm/plat-samsung/Makefile
@@ -1,8 +1,6 @@
1# arch/arm/plat-samsung/Makefile 1# SPDX-License-Identifier: GPL-2.0
2# 2#
3# Copyright 2009 Simtec Electronics 3# Copyright 2009 Simtec Electronics
4#
5# Licensed under GPLv2
6 4
7ccflags-$(CONFIG_ARCH_S3C64XX) := -I$(srctree)/arch/arm/mach-s3c64xx/include 5ccflags-$(CONFIG_ARCH_S3C64XX) := -I$(srctree)/arch/arm/mach-s3c64xx/include
8ccflags-$(CONFIG_ARCH_MULTIPLATFORM) += -I$(srctree)/$(src)/include 6ccflags-$(CONFIG_ARCH_MULTIPLATFORM) += -I$(srctree)/$(src)/include
diff --git a/arch/arm/plat-samsung/adc.c b/arch/arm/plat-samsung/adc.c
index e9de9e92ce01..42bac8d5ab5d 100644
--- a/arch/arm/plat-samsung/adc.c
+++ b/arch/arm/plat-samsung/adc.c
@@ -1,15 +1,10 @@
1/* arch/arm/plat-samsung/adc.c 1// SPDX-License-Identifier: GPL-1.0+
2 * 2//
3 * Copyright (c) 2008 Simtec Electronics 3// Copyright (c) 2008 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4// http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk>, <ben-linux@fluff.org> 5// Ben Dooks <ben@simtec.co.uk>, <ben-linux@fluff.org>
6 * 6//
7 * Samsung ADC device core 7// Samsung ADC device core
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License.
12*/
13 8
14#include <linux/module.h> 9#include <linux/module.h>
15#include <linux/kernel.h> 10#include <linux/kernel.h>
diff --git a/arch/arm/plat-samsung/cpu.c b/arch/arm/plat-samsung/cpu.c
index a107b3a0b095..e1ba88ba31d8 100644
--- a/arch/arm/plat-samsung/cpu.c
+++ b/arch/arm/plat-samsung/cpu.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/plat-samsung/cpu.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2009-2011 Samsung Electronics Co., Ltd. 3// Copyright (c) 2009-2011 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com 4// http://www.samsung.com
5 * 5//
6 * Samsung CPU Support 6// Samsung CPU Support
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/module.h> 8#include <linux/module.h>
14#include <linux/kernel.h> 9#include <linux/kernel.h>
diff --git a/arch/arm/plat-samsung/dev-uart.c b/arch/arm/plat-samsung/dev-uart.c
index 5928105490fa..7476a5dbae77 100644
--- a/arch/arm/plat-samsung/dev-uart.c
+++ b/arch/arm/plat-samsung/dev-uart.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-samsung/dev-uart.c 1// SPDX-License-Identifier: GPL-2.0
2 * originally from arch/arm/plat-s3c24xx/devs.c 2//
3 *x 3// originally from arch/arm/plat-s3c24xx/devs.c
4 * Copyright (c) 2004 Simtec Electronics 4//
5 * Ben Dooks <ben@simtec.co.uk> 5// Copyright (c) 2004 Simtec Electronics
6 * 6// Ben Dooks <ben@simtec.co.uk>
7 * Base S3C24XX platform device definitions 7//
8 * 8// Base S3C24XX platform device definitions
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 *
13*/
14 9
15#include <linux/kernel.h> 10#include <linux/kernel.h>
16#include <linux/platform_device.h> 11#include <linux/platform_device.h>
diff --git a/arch/arm/plat-samsung/devs.c b/arch/arm/plat-samsung/devs.c
index 5668e4eb03df..1d1fa068d228 100644
--- a/arch/arm/plat-samsung/devs.c
+++ b/arch/arm/plat-samsung/devs.c
@@ -1,14 +1,9 @@
1/* linux/arch/arm/plat-samsung/devs.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3// Copyright (c) 2011 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com 4// http://www.samsung.com
5 * 5//
6 * Base SAMSUNG platform device definitions 6// Base SAMSUNG platform device definitions
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 7
13#include <linux/kernel.h> 8#include <linux/kernel.h>
14#include <linux/types.h> 9#include <linux/types.h>
diff --git a/arch/arm/plat-samsung/gpio-samsung.c b/arch/arm/plat-samsung/gpio-samsung.c
index 7861488f7ca0..f66c820cd82b 100644
--- a/arch/arm/plat-samsung/gpio-samsung.c
+++ b/arch/arm/plat-samsung/gpio-samsung.c
@@ -1,18 +1,14 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (c) 2009-2011 Samsung Electronics Co., Ltd. 2//
3 * http://www.samsung.com/ 3// Copyright (c) 2009-2011 Samsung Electronics Co., Ltd.
4 * 4// http://www.samsung.com/
5 * Copyright 2008 Openmoko, Inc. 5//
6 * Copyright 2008 Simtec Electronics 6// Copyright 2008 Openmoko, Inc.
7 * Ben Dooks <ben@simtec.co.uk> 7// Copyright 2008 Simtec Electronics
8 * http://armlinux.simtec.co.uk/ 8// Ben Dooks <ben@simtec.co.uk>
9 * 9// http://armlinux.simtec.co.uk/
10 * SAMSUNG - GPIOlib support 10//
11 * 11// SAMSUNG - GPIOlib support
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License version 2 as
14 * published by the Free Software Foundation.
15 */
16 12
17#include <linux/kernel.h> 13#include <linux/kernel.h>
18#include <linux/irq.h> 14#include <linux/irq.h>
diff --git a/arch/arm/plat-samsung/include/plat/adc-core.h b/arch/arm/plat-samsung/include/plat/adc-core.h
index a927bee55359..039f6862b6a7 100644
--- a/arch/arm/plat-samsung/include/plat/adc-core.h
+++ b/arch/arm/plat-samsung/include/plat/adc-core.h
@@ -1,14 +1,10 @@
1/* linux/arch/arm/plat-samsung/include/plat/adc-core.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4 * http://www.samsung.com/
5 * 5 *
6 * Samsung ADC Controller core functions 6 * Samsung ADC Controller core functions
7 * 7 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#ifndef __ASM_PLAT_ADC_CORE_H 9#ifndef __ASM_PLAT_ADC_CORE_H
14#define __ASM_PLAT_ADC_CORE_H __FILE__ 10#define __ASM_PLAT_ADC_CORE_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/adc.h b/arch/arm/plat-samsung/include/plat/adc.h
index 2fc89315553f..74d1a46408c1 100644
--- a/arch/arm/plat-samsung/include/plat/adc.h
+++ b/arch/arm/plat-samsung/include/plat/adc.h
@@ -1,15 +1,11 @@
1/* arch/arm/plat-samsung/include/plat/adc.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2008 Simtec Electronics 3 * Copyright (c) 2008 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * 6 *
7 * S3C ADC driver information 7 * S3C ADC driver information
8 * 8 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14#ifndef __ASM_PLAT_ADC_H 10#ifndef __ASM_PLAT_ADC_H
15#define __ASM_PLAT_ADC_H __FILE__ 11#define __ASM_PLAT_ADC_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h
index 37cf20e04aff..2c7cf2665634 100644
--- a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h
+++ b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h
@@ -1,15 +1,11 @@
1/* arch/arm/plat-samsung/include/plat/cpu-freq-core.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2006-2009 Simtec Electronics 3 * Copyright (c) 2006-2009 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * 6 *
7 * S3C CPU frequency scaling support - core support 7 * S3C CPU frequency scaling support - core support
8 * 8 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14#include <plat/cpu-freq.h> 10#include <plat/cpu-freq.h>
15 11
diff --git a/arch/arm/plat-samsung/include/plat/cpu-freq.h b/arch/arm/plat-samsung/include/plat/cpu-freq.h
index 85517ab962ae..558892bcf9b6 100644
--- a/arch/arm/plat-samsung/include/plat/cpu-freq.h
+++ b/arch/arm/plat-samsung/include/plat/cpu-freq.h
@@ -1,15 +1,11 @@
1/* arch/arm/plat-samsung/include/plat/cpu-freq.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2006-2007 Simtec Electronics 3 * Copyright (c) 2006-2007 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * 6 *
7 * S3C CPU frequency scaling support - driver and board 7 * S3C CPU frequency scaling support - driver and board
8 * 8 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14#include <linux/cpufreq.h> 10#include <linux/cpufreq.h>
15 11
diff --git a/arch/arm/plat-samsung/include/plat/cpu.h b/arch/arm/plat-samsung/include/plat/cpu.h
index b7b702a72cac..fadcddbea064 100644
--- a/arch/arm/plat-samsung/include/plat/cpu.h
+++ b/arch/arm/plat-samsung/include/plat/cpu.h
@@ -1,5 +1,5 @@
1/* linux/arch/arm/plat-samsung/include/plat/cpu.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4 * http://www.samsung.com/
5 * 5 *
@@ -7,11 +7,7 @@
7 * Ben Dooks <ben@simtec.co.uk> 7 * Ben Dooks <ben@simtec.co.uk>
8 * 8 *
9 * Header file for Samsung CPU support 9 * Header file for Samsung CPU support
10 * 10 */
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14*/
15 11
16/* todo - fix when rmk changes iodescs to use `void __iomem *` */ 12/* todo - fix when rmk changes iodescs to use `void __iomem *` */
17 13
diff --git a/arch/arm/plat-samsung/include/plat/devs.h b/arch/arm/plat-samsung/include/plat/devs.h
index e23fed311e5f..02b0c5750572 100644
--- a/arch/arm/plat-samsung/include/plat/devs.h
+++ b/arch/arm/plat-samsung/include/plat/devs.h
@@ -1,5 +1,5 @@
1/* arch/arm/plat-samsung/include/plat/devs.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com 4 * http://www.samsung.com
5 * 5 *
@@ -7,11 +7,7 @@
7 * Ben Dooks <ben@simtec.co.uk> 7 * Ben Dooks <ben@simtec.co.uk>
8 * 8 *
9 * Header file for s3c2410 standard platform devices 9 * Header file for s3c2410 standard platform devices
10 * 10 */
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14*/
15 11
16#ifndef __PLAT_DEVS_H 12#ifndef __PLAT_DEVS_H
17#define __PLAT_DEVS_H __FILE__ 13#define __PLAT_DEVS_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/fb-s3c2410.h b/arch/arm/plat-samsung/include/plat/fb-s3c2410.h
index 1f2972a74e9f..614240d768b4 100644
--- a/arch/arm/plat-samsung/include/plat/fb-s3c2410.h
+++ b/arch/arm/plat-samsung/include/plat/fb-s3c2410.h
@@ -1,12 +1,8 @@
1/* arch/arm/plat-samsung/include/plat/fb-s3c2410.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org> 3 * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org>
4 * 4 *
5 * Inspired by pxafb.h 5 * Inspired by pxafb.h
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/ 6*/
11 7
12#ifndef __ASM_PLAT_FB_S3C2410_H 8#ifndef __ASM_PLAT_FB_S3C2410_H
diff --git a/arch/arm/plat-samsung/include/plat/fb.h b/arch/arm/plat-samsung/include/plat/fb.h
index b89f8f208515..615d381ae32e 100644
--- a/arch/arm/plat-samsung/include/plat/fb.h
+++ b/arch/arm/plat-samsung/include/plat/fb.h
@@ -1,16 +1,12 @@
1/* arch/arm/plat-samsung/include/plat/fb.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
5 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
6 * Ben Dooks <ben@simtec.co.uk> 6 * Ben Dooks <ben@simtec.co.uk>
7 * 7 *
8 * S3C - FB platform data definitions 8 * S3C - FB platform data definitions
9 * 9 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 10
15#ifndef __PLAT_S3C_FB_H 11#ifndef __PLAT_S3C_FB_H
16#define __PLAT_S3C_FB_H __FILE__ 12#define __PLAT_S3C_FB_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/gpio-cfg-helpers.h b/arch/arm/plat-samsung/include/plat/gpio-cfg-helpers.h
index a181d7ce81cf..db0c56f5ca15 100644
--- a/arch/arm/plat-samsung/include/plat/gpio-cfg-helpers.h
+++ b/arch/arm/plat-samsung/include/plat/gpio-cfg-helpers.h
@@ -1,16 +1,12 @@
1/* linux/arch/arm/plat-samsung/include/plat/gpio-cfg-helper.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
5 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
6 * Ben Dooks <ben@simtec.co.uk> 6 * Ben Dooks <ben@simtec.co.uk>
7 * 7 *
8 * Samsung Platform - GPIO pin configuration helper definitions 8 * Samsung Platform - GPIO pin configuration helper definitions
9 * 9 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 10
15/* This is meant for core cpu support, machine or other driver files 11/* This is meant for core cpu support, machine or other driver files
16 * should not be including this header. 12 * should not be including this header.
diff --git a/arch/arm/plat-samsung/include/plat/gpio-cfg.h b/arch/arm/plat-samsung/include/plat/gpio-cfg.h
index e55d1f597db8..469c220e092b 100644
--- a/arch/arm/plat-samsung/include/plat/gpio-cfg.h
+++ b/arch/arm/plat-samsung/include/plat/gpio-cfg.h
@@ -1,16 +1,12 @@
1/* linux/arch/arm/plat-s3c/include/plat/gpio-cfg.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
5 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
6 * Ben Dooks <ben@simtec.co.uk> 6 * Ben Dooks <ben@simtec.co.uk>
7 * 7 *
8 * S3C Platform - GPIO pin configuration 8 * S3C Platform - GPIO pin configuration
9 * 9 */
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 10
15/* This file contains the necessary definitions to get the basic gpio 11/* This file contains the necessary definitions to get the basic gpio
16 * pin configuration done such as setting a pin to input or output or 12 * pin configuration done such as setting a pin to input or output or
diff --git a/arch/arm/plat-samsung/include/plat/gpio-core.h b/arch/arm/plat-samsung/include/plat/gpio-core.h
index 6ce11bfdc37e..51e721f5e491 100644
--- a/arch/arm/plat-samsung/include/plat/gpio-core.h
+++ b/arch/arm/plat-samsung/include/plat/gpio-core.h
@@ -1,15 +1,11 @@
1/* linux/arch/arm/plat-s3c/include/plat/gpio-core.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Simtec Electronics 3 * Copyright 2008 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * 6 *
7 * S3C Platform - GPIO core 7 * S3C Platform - GPIO core
8 * 8 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14#ifndef __PLAT_SAMSUNG_GPIO_CORE_H 10#ifndef __PLAT_SAMSUNG_GPIO_CORE_H
15#define __PLAT_SAMSUNG_GPIO_CORE_H 11#define __PLAT_SAMSUNG_GPIO_CORE_H
diff --git a/arch/arm/plat-samsung/include/plat/iic-core.h b/arch/arm/plat-samsung/include/plat/iic-core.h
index f182669b8e8e..c5cfd5af3874 100644
--- a/arch/arm/plat-samsung/include/plat/iic-core.h
+++ b/arch/arm/plat-samsung/include/plat/iic-core.h
@@ -1,15 +1,11 @@
1/* arch/arm/mach-s3c2410/include/mach/iic-core.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Openmoko, Inc. 3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics 4 * Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * 6 *
7 * S3C - I2C Controller core functions 7 * S3C - I2C Controller core functions
8 * 8 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14#ifndef __ASM_ARCH_IIC_CORE_H 10#ifndef __ASM_ARCH_IIC_CORE_H
15#define __ASM_ARCH_IIC_CORE_H __FILE__ 11#define __ASM_ARCH_IIC_CORE_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/keypad.h b/arch/arm/plat-samsung/include/plat/keypad.h
index c81ace332a1e..9754b9a29945 100644
--- a/arch/arm/plat-samsung/include/plat/keypad.h
+++ b/arch/arm/plat-samsung/include/plat/keypad.h
@@ -1,13 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0+ */
1/* 2/*
2 * Samsung Platform - Keypad platform data definitions 3 * Samsung Platform - Keypad platform data definitions
3 * 4 *
4 * Copyright (C) 2010 Samsung Electronics Co.Ltd 5 * Copyright (C) 2010 Samsung Electronics Co.Ltd
5 * Author: Joonyoung Shim <jy0922.shim@samsung.com> 6 * Author: Joonyoung Shim <jy0922.shim@samsung.com>
6 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the
9 * Free Software Foundation; either version 2 of the License, or (at your
10 * option) any later version.
11 */ 7 */
12 8
13#ifndef __PLAT_SAMSUNG_KEYPAD_H 9#ifndef __PLAT_SAMSUNG_KEYPAD_H
diff --git a/arch/arm/plat-samsung/include/plat/map-base.h b/arch/arm/plat-samsung/include/plat/map-base.h
index 3ffac4d2e4f0..34b39ded0e2e 100644
--- a/arch/arm/plat-samsung/include/plat/map-base.h
+++ b/arch/arm/plat-samsung/include/plat/map-base.h
@@ -1,15 +1,11 @@
1/* linux/include/asm-arm/plat-s3c/map.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2003, 2007 Simtec Electronics 3 * Copyright 2003, 2007 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 5 * Ben Dooks <ben@simtec.co.uk>
6 * 6 *
7 * S3C - Memory map definitions (virtual addresses) 7 * S3C - Memory map definitions (virtual addresses)
8 * 8 */
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 9
14#ifndef __ASM_PLAT_MAP_H 10#ifndef __ASM_PLAT_MAP_H
15#define __ASM_PLAT_MAP_H __FILE__ 11#define __ASM_PLAT_MAP_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/map-s3c.h b/arch/arm/plat-samsung/include/plat/map-s3c.h
index 33104911862e..4244acbf4b65 100644
--- a/arch/arm/plat-samsung/include/plat/map-s3c.h
+++ b/arch/arm/plat-samsung/include/plat/map-s3c.h
@@ -1,14 +1,10 @@
1/* linux/arch/arm/plat-samsung/include/plat/map-s3c.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2008 Simtec Electronics 3 * Copyright (c) 2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * 5 *
6 * S3C24XX - Memory map definitions 6 * S3C24XX - Memory map definitions
7 * 7 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#ifndef __ASM_PLAT_MAP_S3C_H 9#ifndef __ASM_PLAT_MAP_S3C_H
14#define __ASM_PLAT_MAP_S3C_H __FILE__ 10#define __ASM_PLAT_MAP_S3C_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/map-s5p.h b/arch/arm/plat-samsung/include/plat/map-s5p.h
index 0fe2828f9354..f5769e93544a 100644
--- a/arch/arm/plat-samsung/include/plat/map-s5p.h
+++ b/arch/arm/plat-samsung/include/plat/map-s5p.h
@@ -1,14 +1,10 @@
1/* linux/arch/arm/plat-samsung/include/plat/map-s5p.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4 * http://www.samsung.com/
5 * 5 *
6 * S5P - Memory map definitions 6 * S5P - Memory map definitions
7 * 7 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#ifndef __ASM_PLAT_MAP_S5P_H 9#ifndef __ASM_PLAT_MAP_S5P_H
14#define __ASM_PLAT_MAP_S5P_H __FILE__ 10#define __ASM_PLAT_MAP_S5P_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/pm-common.h b/arch/arm/plat-samsung/include/plat/pm-common.h
index 8705f9e0e288..1268bae04234 100644
--- a/arch/arm/plat-samsung/include/plat/pm-common.h
+++ b/arch/arm/plat-samsung/include/plat/pm-common.h
@@ -1,14 +1,11 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright (C) 2013 Samsung Electronics Co., Ltd. 3 * Copyright (C) 2013 Samsung Electronics Co., Ltd.
3 * Tomasz Figa <t.figa@samsung.com> 4 * Tomasz Figa <t.figa@samsung.com>
4 * Copyright (c) 2004 Simtec Electronics 5 * Copyright (c) 2004 Simtec Electronics
5 * http://armlinux.simtec.co.uk/ 6 * http://armlinux.simtec.co.uk/
6 * Written by Ben Dooks, <ben@simtec.co.uk> 7 * Written by Ben Dooks, <ben@simtec.co.uk>
7 * 8 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 9
13#ifndef __PLAT_SAMSUNG_PM_COMMON_H 10#ifndef __PLAT_SAMSUNG_PM_COMMON_H
14#define __PLAT_SAMSUNG_PM_COMMON_H __FILE__ 11#define __PLAT_SAMSUNG_PM_COMMON_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/pm.h b/arch/arm/plat-samsung/include/plat/pm.h
index 9dd562ab0841..2746137f9794 100644
--- a/arch/arm/plat-samsung/include/plat/pm.h
+++ b/arch/arm/plat-samsung/include/plat/pm.h
@@ -1,13 +1,9 @@
1/* arch/arm/plat-samsung/include/plat/pm.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2004 Simtec Electronics 3 * Copyright (c) 2004 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 4 * http://armlinux.simtec.co.uk/
5 * Written by Ben Dooks, <ben@simtec.co.uk> 5 * Written by Ben Dooks, <ben@simtec.co.uk>
6 * 6 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 7
12/* s3c_pm_init 8/* s3c_pm_init
13 * 9 *
diff --git a/arch/arm/plat-samsung/include/plat/pwm-core.h b/arch/arm/plat-samsung/include/plat/pwm-core.h
index 5bff1facb672..05e3448642a1 100644
--- a/arch/arm/plat-samsung/include/plat/pwm-core.h
+++ b/arch/arm/plat-samsung/include/plat/pwm-core.h
@@ -1,11 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Copyright 2013 Tomasz Figa <tomasz.figa@gmail.com> 3 * Copyright 2013 Tomasz Figa <tomasz.figa@gmail.com>
3 * 4 *
4 * Samsung PWM controller platform data helpers. 5 * Samsung PWM controller platform data helpers.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */ 6 */
10 7
11#ifndef __ASM_ARCH_PWM_CORE_H 8#ifndef __ASM_ARCH_PWM_CORE_H
diff --git a/arch/arm/plat-samsung/include/plat/regs-adc.h b/arch/arm/plat-samsung/include/plat/regs-adc.h
index 70612100120f..58953c7381dd 100644
--- a/arch/arm/plat-samsung/include/plat/regs-adc.h
+++ b/arch/arm/plat-samsung/include/plat/regs-adc.h
@@ -1,13 +1,9 @@
1/* arch/arm/mach-s3c2410/include/mach/regs-adc.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2004 Shannon Holland <holland@loser.net> 3 * Copyright (c) 2004 Shannon Holland <holland@loser.net>
4 * 4 *
5 * This program is free software; yosu can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 *
9 * S3C2410 ADC registers 5 * S3C2410 ADC registers
10*/ 6 */
11 7
12#ifndef __ASM_ARCH_REGS_ADC_H 8#ifndef __ASM_ARCH_REGS_ADC_H
13#define __ASM_ARCH_REGS_ADC_H "regs-adc.h" 9#define __ASM_ARCH_REGS_ADC_H "regs-adc.h"
diff --git a/arch/arm/plat-samsung/include/plat/regs-irqtype.h b/arch/arm/plat-samsung/include/plat/regs-irqtype.h
index c63cd3fc5ad3..ec5c4c5fdd8f 100644
--- a/arch/arm/plat-samsung/include/plat/regs-irqtype.h
+++ b/arch/arm/plat-samsung/include/plat/regs-irqtype.h
@@ -1,14 +1,10 @@
1/* arch/arm/plat-s3c/include/plat/regs-irqtype.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2008 Simtec Electronics 3 * Copyright 2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/ 5 * http://armlinux.simtec.co.uk/
6 * 6 *
7 * S3C - IRQ detection types. 7 * S3C - IRQ detection types.
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 */ 8 */
13 9
14/* values for S3C2410_EXTINT0/1/2 and other cpus in the series, including 10/* values for S3C2410_EXTINT0/1/2 and other cpus in the series, including
diff --git a/arch/arm/plat-samsung/include/plat/regs-spi.h b/arch/arm/plat-samsung/include/plat/regs-spi.h
index 552fe7cfe281..607844311566 100644
--- a/arch/arm/plat-samsung/include/plat/regs-spi.h
+++ b/arch/arm/plat-samsung/include/plat/regs-spi.h
@@ -1,13 +1,9 @@
1/* arch/arm/plat-samsung/include/plat/regs-spi.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2004 Fetron GmbH 3 * Copyright (c) 2004 Fetron GmbH
4 * 4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 *
9 * S3C2410 SPI register definition 5 * S3C2410 SPI register definition
10*/ 6 */
11 7
12#ifndef __ASM_ARCH_REGS_SPI_H 8#ifndef __ASM_ARCH_REGS_SPI_H
13#define __ASM_ARCH_REGS_SPI_H 9#define __ASM_ARCH_REGS_SPI_H
diff --git a/arch/arm/plat-samsung/include/plat/regs-udc.h b/arch/arm/plat-samsung/include/plat/regs-udc.h
index 4003d3dab4e7..d8d2eeaca088 100644
--- a/arch/arm/plat-samsung/include/plat/regs-udc.h
+++ b/arch/arm/plat-samsung/include/plat/regs-udc.h
@@ -1,12 +1,7 @@
1/* arch/arm/plat-samsung/include/plat/regs-udc.h 1/* SPDX-License-Identifier: GPL-2.0+ */
2 * 2/*
3 * Copyright (C) 2004 Herbert Poetzl <herbert@13thfloor.at> 3 * Copyright (C) 2004 Herbert Poetzl <herbert@13thfloor.at>
4 * 4 */
5 * This include file is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License as
7 * published by the Free Software Foundation; either version 2 of
8 * the License, or (at your option) any later version.
9*/
10 5
11#ifndef __ASM_ARCH_REGS_UDC_H 6#ifndef __ASM_ARCH_REGS_UDC_H
12#define __ASM_ARCH_REGS_UDC_H 7#define __ASM_ARCH_REGS_UDC_H
diff --git a/arch/arm/plat-samsung/include/plat/samsung-time.h b/arch/arm/plat-samsung/include/plat/samsung-time.h
index 209464adef97..d16eefe9ae78 100644
--- a/arch/arm/plat-samsung/include/plat/samsung-time.h
+++ b/arch/arm/plat-samsung/include/plat/samsung-time.h
@@ -1,14 +1,10 @@
1/* linux/arch/arm/plat-samsung/include/plat/samsung-time.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2011 Samsung Electronics Co., Ltd. 3 * Copyright 2011 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4 * http://www.samsung.com/
5 * 5 *
6 * Header file for samsung s3c and s5p time support 6 * Header file for samsung s3c and s5p time support
7 * 7 */
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12 8
13#ifndef __ASM_PLAT_SAMSUNG_TIME_H 9#ifndef __ASM_PLAT_SAMSUNG_TIME_H
14#define __ASM_PLAT_SAMSUNG_TIME_H __FILE__ 10#define __ASM_PLAT_SAMSUNG_TIME_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/sdhci.h b/arch/arm/plat-samsung/include/plat/sdhci.h
index 2787553c3ae2..5731e42ea208 100644
--- a/arch/arm/plat-samsung/include/plat/sdhci.h
+++ b/arch/arm/plat-samsung/include/plat/sdhci.h
@@ -1,5 +1,5 @@
1/* linux/arch/arm/plat-samsung/include/plat/sdhci.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com 4 * http://www.samsung.com
5 * 5 *
@@ -9,11 +9,7 @@
9 * Ben Dooks <ben@simtec.co.uk> 9 * Ben Dooks <ben@simtec.co.uk>
10 * 10 *
11 * S3C Platform - SDHCI (HSMMC) platform data definitions 11 * S3C Platform - SDHCI (HSMMC) platform data definitions
12 * 12 */
13 * This program is free software; you can redistribute it and/or modify
14 * it under the terms of the GNU General Public License version 2 as
15 * published by the Free Software Foundation.
16*/
17 13
18#ifndef __PLAT_S3C_SDHCI_H 14#ifndef __PLAT_S3C_SDHCI_H
19#define __PLAT_S3C_SDHCI_H __FILE__ 15#define __PLAT_S3C_SDHCI_H __FILE__
diff --git a/arch/arm/plat-samsung/include/plat/usb-phy.h b/arch/arm/plat-samsung/include/plat/usb-phy.h
index ab34dfadb7f9..6d0c788beb9d 100644
--- a/arch/arm/plat-samsung/include/plat/usb-phy.h
+++ b/arch/arm/plat-samsung/include/plat/usb-phy.h
@@ -1,11 +1,7 @@
1/* SPDX-License-Identifier: GPL-2.0+ */
1/* 2/*
2 * Copyright (C) 2011 Samsung Electronics Co.Ltd 3 * Copyright (C) 2011 Samsung Electronics Co.Ltd
3 * Author: Joonyoung Shim <jy0922.shim@samsung.com> 4 * Author: Joonyoung Shim <jy0922.shim@samsung.com>
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; either version 2 of the License, or (at your
8 * option) any later version.
9 */ 5 */
10 6
11#ifndef __PLAT_SAMSUNG_USB_PHY_H 7#ifndef __PLAT_SAMSUNG_USB_PHY_H
diff --git a/arch/arm/plat-samsung/include/plat/wakeup-mask.h b/arch/arm/plat-samsung/include/plat/wakeup-mask.h
index bbfa84b0505a..630909e6630b 100644
--- a/arch/arm/plat-samsung/include/plat/wakeup-mask.h
+++ b/arch/arm/plat-samsung/include/plat/wakeup-mask.h
@@ -1,14 +1,9 @@
1/* arch/arm/plat-samsung/include/plat/wakeup-mask.h 1/* SPDX-License-Identifier: GPL-2.0 */
2 * 2/*
3 * Copyright 2010 Ben Dooks <ben-linux@fluff.org> 3 * Copyright 2010 Ben Dooks <ben-linux@fluff.org>
4 * 4 *
5 * Support for wakeup mask interrupts on newer SoCs 5 * Support for wakeup mask interrupts on newer SoCs
6 * 6 */
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 *
11*/
12 7
13#ifndef __PLAT_WAKEUP_MASK_H 8#ifndef __PLAT_WAKEUP_MASK_H
14#define __PLAT_WAKEUP_MASK_H __file__ 9#define __PLAT_WAKEUP_MASK_H __file__
diff --git a/arch/arm/plat-samsung/init.c b/arch/arm/plat-samsung/init.c
index 3776f7e752f0..e9acf02ef3c3 100644
--- a/arch/arm/plat-samsung/init.c
+++ b/arch/arm/plat-samsung/init.c
@@ -1,15 +1,10 @@
1/* linux/arch/arm/plat-s3c/init.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2008 Simtec Electronics 3// Copyright (c) 2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * http://armlinux.simtec.co.uk/ 5// http://armlinux.simtec.co.uk/
6 * 6//
7 * S3C series CPU initialisation 7// S3C series CPU initialisation
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13 8
14/* 9/*
15 * NOTE: Code in this file is not used on S3C64xx when booting with 10 * NOTE: Code in this file is not used on S3C64xx when booting with
diff --git a/arch/arm/plat-samsung/platformdata.c b/arch/arm/plat-samsung/platformdata.c
index 6cf52ee7eeec..cbc3b4b45c74 100644
--- a/arch/arm/plat-samsung/platformdata.c
+++ b/arch/arm/plat-samsung/platformdata.c
@@ -1,13 +1,8 @@
1/* linux/arch/arm/plat-samsung/platformdata.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2010 Ben Dooks <ben-linux <at> fluff.org> 3// Copyright 2010 Ben Dooks <ben-linux <at> fluff.org>
4 * 4//
5 * Helper for platform data setting 5// Helper for platform data setting
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 6
12#include <linux/kernel.h> 7#include <linux/kernel.h>
13#include <linux/slab.h> 8#include <linux/slab.h>
diff --git a/arch/arm/plat-samsung/pm-check.c b/arch/arm/plat-samsung/pm-check.c
index d63516374f7c..cd2c02c68bc3 100644
--- a/arch/arm/plat-samsung/pm-check.c
+++ b/arch/arm/plat-samsung/pm-check.c
@@ -1,16 +1,12 @@
1/* linux/arch/arm/plat-s3c/pm-check.c 1// SPDX-License-Identifier: GPL-2.0
2 * originally in linux/arch/arm/plat-s3c24xx/pm.c 2//
3 * 3// originally in linux/arch/arm/plat-s3c24xx/pm.c
4 * Copyright (c) 2004-2008 Simtec Electronics 4//
5 * http://armlinux.simtec.co.uk 5// Copyright (c) 2004-2008 Simtec Electronics
6 * Ben Dooks <ben@simtec.co.uk> 6// http://armlinux.simtec.co.uk
7 * 7// Ben Dooks <ben@simtec.co.uk>
8 * S3C Power Mangament - suspend/resume memory corruption check. 8//
9 * 9// S3C Power Mangament - suspend/resume memory corruption check.
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 10
15#include <linux/kernel.h> 11#include <linux/kernel.h>
16#include <linux/suspend.h> 12#include <linux/suspend.h>
diff --git a/arch/arm/plat-samsung/pm-common.c b/arch/arm/plat-samsung/pm-common.c
index 6534c3ff9fe2..59a10c6dcba1 100644
--- a/arch/arm/plat-samsung/pm-common.c
+++ b/arch/arm/plat-samsung/pm-common.c
@@ -1,17 +1,13 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (C) 2013 Samsung Electronics Co., Ltd. 2//
3 * Tomasz Figa <t.figa@samsung.com> 3// Copyright (C) 2013 Samsung Electronics Co., Ltd.
4 * Copyright (C) 2008 Openmoko, Inc. 4// Tomasz Figa <t.figa@samsung.com>
5 * Copyright (C) 2004-2008 Simtec Electronics 5// Copyright (C) 2008 Openmoko, Inc.
6 * Ben Dooks <ben@simtec.co.uk> 6// Copyright (C) 2004-2008 Simtec Electronics
7 * http://armlinux.simtec.co.uk/ 7// Ben Dooks <ben@simtec.co.uk>
8 * 8// http://armlinux.simtec.co.uk/
9 * Samsung common power management helper functions. 9//
10 * 10// Samsung common power management helper functions.
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14*/
15 11
16#include <linux/io.h> 12#include <linux/io.h>
17#include <linux/kernel.h> 13#include <linux/kernel.h>
diff --git a/arch/arm/plat-samsung/pm-debug.c b/arch/arm/plat-samsung/pm-debug.c
index 64e15da33b42..b76b1e9ba4ae 100644
--- a/arch/arm/plat-samsung/pm-debug.c
+++ b/arch/arm/plat-samsung/pm-debug.c
@@ -1,17 +1,13 @@
1/* 1// SPDX-License-Identifier: GPL-2.0
2 * Copyright (C) 2013 Samsung Electronics Co., Ltd. 2//
3 * Tomasz Figa <t.figa@samsung.com> 3// Copyright (C) 2013 Samsung Electronics Co., Ltd.
4 * Copyright (C) 2008 Openmoko, Inc. 4// Tomasz Figa <t.figa@samsung.com>
5 * Copyright (C) 2004-2008 Simtec Electronics 5// Copyright (C) 2008 Openmoko, Inc.
6 * Ben Dooks <ben@simtec.co.uk> 6// Copyright (C) 2004-2008 Simtec Electronics
7 * http://armlinux.simtec.co.uk/ 7// Ben Dooks <ben@simtec.co.uk>
8 * 8// http://armlinux.simtec.co.uk/
9 * Samsung common power management (suspend to RAM) debug support 9//
10 * 10// Samsung common power management (suspend to RAM) debug support
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14 */
15 11
16#include <linux/serial_core.h> 12#include <linux/serial_core.h>
17#include <linux/serial_s3c.h> 13#include <linux/serial_s3c.h>
diff --git a/arch/arm/plat-samsung/pm-gpio.c b/arch/arm/plat-samsung/pm-gpio.c
index f9a09262f2fa..cb2e3bc79336 100644
--- a/arch/arm/plat-samsung/pm-gpio.c
+++ b/arch/arm/plat-samsung/pm-gpio.c
@@ -1,17 +1,11 @@
1 1// SPDX-License-Identifier: GPL-2.0+
2/* linux/arch/arm/plat-s3c/pm-gpio.c 2//
3 * 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Openmoko, Inc. 4// Copyright 2008 Simtec Electronics
5 * Copyright 2008 Simtec Electronics 5// Ben Dooks <ben@simtec.co.uk>
6 * Ben Dooks <ben@simtec.co.uk> 6// http://armlinux.simtec.co.uk/
7 * http://armlinux.simtec.co.uk/ 7//
8 * 8// S3C series GPIO PM code
9 * S3C series GPIO PM code
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14*/
15 9
16#include <linux/kernel.h> 10#include <linux/kernel.h>
17#include <linux/device.h> 11#include <linux/device.h>
diff --git a/arch/arm/plat-samsung/pm.c b/arch/arm/plat-samsung/pm.c
index d7803b434732..d6bfd66592b0 100644
--- a/arch/arm/plat-samsung/pm.c
+++ b/arch/arm/plat-samsung/pm.c
@@ -1,16 +1,11 @@
1/* linux/arch/arm/plat-s3c/pm.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2008 Openmoko, Inc. 3// Copyright 2008 Openmoko, Inc.
4 * Copyright 2004-2008 Simtec Electronics 4// Copyright 2004-2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk> 5// Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/ 6// http://armlinux.simtec.co.uk/
7 * 7//
8 * S3C common power management (suspend to ram) support. 8// S3C common power management (suspend to ram) support.
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/init.h> 10#include <linux/init.h>
16#include <linux/suspend.h> 11#include <linux/suspend.h>
diff --git a/arch/arm/plat-samsung/wakeup-mask.c b/arch/arm/plat-samsung/wakeup-mask.c
index b9de6b543330..24f96fb80738 100644
--- a/arch/arm/plat-samsung/wakeup-mask.c
+++ b/arch/arm/plat-samsung/wakeup-mask.c
@@ -1,13 +1,8 @@
1/* arch/arm/plat-samsung/wakeup-mask.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright 2010 Ben Dooks <ben-linux@fluff.org> 3// Copyright 2010 Ben Dooks <ben-linux@fluff.org>
4 * 4//
5 * Support for wakeup mask interrupts on newer SoCs 5// Support for wakeup mask interrupts on newer SoCs
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11 6
12#include <linux/kernel.h> 7#include <linux/kernel.h>
13#include <linux/spinlock.h> 8#include <linux/spinlock.h>
diff --git a/arch/arm/plat-samsung/watchdog-reset.c b/arch/arm/plat-samsung/watchdog-reset.c
index 307d8ad96a78..ce42cc640a61 100644
--- a/arch/arm/plat-samsung/watchdog-reset.c
+++ b/arch/arm/plat-samsung/watchdog-reset.c
@@ -1,16 +1,11 @@
1/* arch/arm/plat-samsung/watchdog-reset.c 1// SPDX-License-Identifier: GPL-2.0
2 * 2//
3 * Copyright (c) 2008 Simtec Electronics 3// Copyright (c) 2008 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk> 4// Ben Dooks <ben@simtec.co.uk>
5 * 5//
6 * Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com> 6// Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com>
7 * 7//
8 * Watchdog reset support for Samsung SoCs. 8// Watchdog reset support for Samsung SoCs.
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14 9
15#include <linux/clk.h> 10#include <linux/clk.h>
16#include <linux/err.h> 11#include <linux/err.h>
diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types
index a9313b66f770..4eac94c1eb6f 100644
--- a/arch/arm/tools/mach-types
+++ b/arch/arm/tools/mach-types
@@ -345,6 +345,7 @@ mxlads MACH_MXLADS MXLADS 1851
345linkstation_mini MACH_LINKSTATION_MINI LINKSTATION_MINI 1858 345linkstation_mini MACH_LINKSTATION_MINI LINKSTATION_MINI 1858
346afeb9260 MACH_AFEB9260 AFEB9260 1859 346afeb9260 MACH_AFEB9260 AFEB9260 1859
347imx27ipcam MACH_IMX27IPCAM IMX27IPCAM 1871 347imx27ipcam MACH_IMX27IPCAM IMX27IPCAM 1871
348bk3 MACH_BK3 BK3 1880
348rd88f6183ap_ge MACH_RD88F6183AP_GE RD88F6183AP_GE 1894 349rd88f6183ap_ge MACH_RD88F6183AP_GE RD88F6183AP_GE 1894
349realview_pba8 MACH_REALVIEW_PBA8 REALVIEW_PBA8 1897 350realview_pba8 MACH_REALVIEW_PBA8 REALVIEW_PBA8 1897
350realview_pbx MACH_REALVIEW_PBX REALVIEW_PBX 1901 351realview_pbx MACH_REALVIEW_PBX REALVIEW_PBX 1901
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index b20fa9b31efe..634b373785c4 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -86,6 +86,7 @@ CONFIG_SCHED_MC=y
86CONFIG_NUMA=y 86CONFIG_NUMA=y
87CONFIG_PREEMPT=y 87CONFIG_PREEMPT=y
88CONFIG_KSM=y 88CONFIG_KSM=y
89CONFIG_MEMORY_FAILURE=y
89CONFIG_TRANSPARENT_HUGEPAGE=y 90CONFIG_TRANSPARENT_HUGEPAGE=y
90CONFIG_CMA=y 91CONFIG_CMA=y
91CONFIG_SECCOMP=y 92CONFIG_SECCOMP=y
@@ -99,6 +100,7 @@ CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
99CONFIG_ARM_CPUIDLE=y 100CONFIG_ARM_CPUIDLE=y
100CONFIG_CPU_FREQ=y 101CONFIG_CPU_FREQ=y
101CONFIG_CPUFREQ_DT=y 102CONFIG_CPUFREQ_DT=y
103CONFIG_ARM_ARMADA_37XX_CPUFREQ=y
102CONFIG_ARM_BIG_LITTLE_CPUFREQ=y 104CONFIG_ARM_BIG_LITTLE_CPUFREQ=y
103CONFIG_ARM_SCPI_CPUFREQ=y 105CONFIG_ARM_SCPI_CPUFREQ=y
104CONFIG_ACPI_CPPC_CPUFREQ=m 106CONFIG_ACPI_CPPC_CPUFREQ=m
@@ -421,7 +423,6 @@ CONFIG_USB_OTG=y
421CONFIG_USB_XHCI_HCD=y 423CONFIG_USB_XHCI_HCD=y
422CONFIG_USB_XHCI_TEGRA=y 424CONFIG_USB_XHCI_TEGRA=y
423CONFIG_USB_EHCI_HCD=y 425CONFIG_USB_EHCI_HCD=y
424CONFIG_USB_EHCI_MSM=y
425CONFIG_USB_EHCI_EXYNOS=y 426CONFIG_USB_EHCI_EXYNOS=y
426CONFIG_USB_EHCI_HCD_PLATFORM=y 427CONFIG_USB_EHCI_HCD_PLATFORM=y
427CONFIG_USB_OHCI_HCD=y 428CONFIG_USB_OHCI_HCD=y
@@ -429,6 +430,8 @@ CONFIG_USB_OHCI_EXYNOS=y
429CONFIG_USB_OHCI_HCD_PLATFORM=y 430CONFIG_USB_OHCI_HCD_PLATFORM=y
430CONFIG_USB_RENESAS_USBHS=m 431CONFIG_USB_RENESAS_USBHS=m
431CONFIG_USB_STORAGE=y 432CONFIG_USB_STORAGE=y
433CONFIG_USB_MUSB_HDRC=y
434CONFIG_USB_MUSB_SUNXI=y
432CONFIG_USB_DWC3=y 435CONFIG_USB_DWC3=y
433CONFIG_USB_DWC2=y 436CONFIG_USB_DWC2=y
434CONFIG_USB_CHIPIDEA=y 437CONFIG_USB_CHIPIDEA=y
@@ -438,8 +441,6 @@ CONFIG_USB_CHIPIDEA_ULPI=y
438CONFIG_USB_ISP1760=y 441CONFIG_USB_ISP1760=y
439CONFIG_USB_HSIC_USB3503=y 442CONFIG_USB_HSIC_USB3503=y
440CONFIG_NOP_USB_XCEIV=y 443CONFIG_NOP_USB_XCEIV=y
441CONFIG_USB_MSM_OTG=y
442CONFIG_USB_QCOM_8X16_PHY=y
443CONFIG_USB_ULPI=y 444CONFIG_USB_ULPI=y
444CONFIG_USB_GADGET=y 445CONFIG_USB_GADGET=y
445CONFIG_USB_RENESAS_USBHS_UDC=m 446CONFIG_USB_RENESAS_USBHS_UDC=m
@@ -473,7 +474,10 @@ CONFIG_LEDS_SYSCON=y
473CONFIG_LEDS_TRIGGER_HEARTBEAT=y 474CONFIG_LEDS_TRIGGER_HEARTBEAT=y
474CONFIG_LEDS_TRIGGER_CPU=y 475CONFIG_LEDS_TRIGGER_CPU=y
475CONFIG_LEDS_TRIGGER_DEFAULT_ON=y 476CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
477CONFIG_LEDS_TRIGGER_PANIC=y
478CONFIG_LEDS_TRIGGER_DISK=y
476CONFIG_EDAC=y 479CONFIG_EDAC=y
480CONFIG_EDAC_GHES=y
477CONFIG_RTC_CLASS=y 481CONFIG_RTC_CLASS=y
478CONFIG_RTC_DRV_MAX77686=y 482CONFIG_RTC_DRV_MAX77686=y
479CONFIG_RTC_DRV_RK808=m 483CONFIG_RTC_DRV_RK808=m
@@ -558,6 +562,7 @@ CONFIG_PHY_XGENE=y
558CONFIG_PHY_TEGRA_XUSB=y 562CONFIG_PHY_TEGRA_XUSB=y
559CONFIG_QCOM_L2_PMU=y 563CONFIG_QCOM_L2_PMU=y
560CONFIG_QCOM_L3_PMU=y 564CONFIG_QCOM_L3_PMU=y
565CONFIG_UNIPHIER_EFUSE=y
561CONFIG_TEE=y 566CONFIG_TEE=y
562CONFIG_OPTEE=y 567CONFIG_OPTEE=y
563CONFIG_ARM_SCPI_PROTOCOL=y 568CONFIG_ARM_SCPI_PROTOCOL=y
@@ -567,6 +572,8 @@ CONFIG_ACPI=y
567CONFIG_ACPI_APEI=y 572CONFIG_ACPI_APEI=y
568CONFIG_ACPI_APEI_GHES=y 573CONFIG_ACPI_APEI_GHES=y
569CONFIG_ACPI_APEI_PCIEAER=y 574CONFIG_ACPI_APEI_PCIEAER=y
575CONFIG_ACPI_APEI_MEMORY_FAILURE=y
576CONFIG_ACPI_APEI_EINJ=y
570CONFIG_EXT2_FS=y 577CONFIG_EXT2_FS=y
571CONFIG_EXT3_FS=y 578CONFIG_EXT3_FS=y
572CONFIG_EXT4_FS_POSIX_ACL=y 579CONFIG_EXT4_FS_POSIX_ACL=y
diff --git a/drivers/i2c/busses/i2c-pxa-pci.c b/drivers/i2c/busses/i2c-pxa-pci.c
index 004deb96afe3..72ea8f4c61aa 100644
--- a/drivers/i2c/busses/i2c-pxa-pci.c
+++ b/drivers/i2c/busses/i2c-pxa-pci.c
@@ -10,7 +10,7 @@
10#include <linux/init.h> 10#include <linux/init.h>
11#include <linux/pci.h> 11#include <linux/pci.h>
12#include <linux/platform_device.h> 12#include <linux/platform_device.h>
13#include <linux/i2c/pxa-i2c.h> 13#include <linux/platform_data/i2c-pxa.h>
14#include <linux/of.h> 14#include <linux/of.h>
15#include <linux/of_device.h> 15#include <linux/of_device.h>
16#include <linux/of_address.h> 16#include <linux/of_address.h>
diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c
index 600d264e080c..fbf91d383b40 100644
--- a/drivers/i2c/busses/i2c-pxa.c
+++ b/drivers/i2c/busses/i2c-pxa.c
@@ -36,7 +36,7 @@
36#include <linux/clk.h> 36#include <linux/clk.h>
37#include <linux/slab.h> 37#include <linux/slab.h>
38#include <linux/io.h> 38#include <linux/io.h>
39#include <linux/i2c/pxa-i2c.h> 39#include <linux/platform_data/i2c-pxa.h>
40 40
41#include <asm/irq.h> 41#include <asm/irq.h>
42 42
diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile
index deecb16e7256..342768df3530 100644
--- a/drivers/soc/Makefile
+++ b/drivers/soc/Makefile
@@ -9,6 +9,7 @@ obj-y += bcm/
9obj-$(CONFIG_ARCH_DOVE) += dove/ 9obj-$(CONFIG_ARCH_DOVE) += dove/
10obj-$(CONFIG_MACH_DOVE) += dove/ 10obj-$(CONFIG_MACH_DOVE) += dove/
11obj-y += fsl/ 11obj-y += fsl/
12obj-$(CONFIG_ARCH_GEMINI) += gemini/
12obj-$(CONFIG_ARCH_MXC) += imx/ 13obj-$(CONFIG_ARCH_MXC) += imx/
13obj-$(CONFIG_SOC_XWAY) += lantiq/ 14obj-$(CONFIG_SOC_XWAY) += lantiq/
14obj-y += mediatek/ 15obj-y += mediatek/
diff --git a/drivers/soc/gemini/Makefile b/drivers/soc/gemini/Makefile
new file mode 100644
index 000000000000..8cbd1e45db78
--- /dev/null
+++ b/drivers/soc/gemini/Makefile
@@ -0,0 +1,2 @@
1# SPDX-License-Identifier: GPL-2.0
2obj-y += soc-gemini.o
diff --git a/drivers/soc/gemini/soc-gemini.c b/drivers/soc/gemini/soc-gemini.c
new file mode 100644
index 000000000000..642b96c91ad6
--- /dev/null
+++ b/drivers/soc/gemini/soc-gemini.c
@@ -0,0 +1,71 @@
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (C) 2017 Linaro Ltd.
4 *
5 * Author: Linus Walleij <linus.walleij@linaro.org>
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2, as
9 * published by the Free Software Foundation.
10 *
11 */
12#include <linux/init.h>
13#include <linux/kernel.h>
14#include <linux/mfd/syscon.h>
15#include <linux/regmap.h>
16#include <linux/of.h>
17
18#define GLOBAL_WORD_ID 0x00
19#define GEMINI_GLOBAL_ARB1_CTRL 0x2c
20#define GEMINI_ARB1_BURST_MASK GENMASK(21, 16)
21#define GEMINI_ARB1_BURST_SHIFT 16
22/* These all define the priority on the BUS2 backplane */
23#define GEMINI_ARB1_PRIO_MASK GENMASK(9, 0)
24#define GEMINI_ARB1_DMAC_HIGH_PRIO BIT(0)
25#define GEMINI_ARB1_IDE_HIGH_PRIO BIT(1)
26#define GEMINI_ARB1_RAID_HIGH_PRIO BIT(2)
27#define GEMINI_ARB1_SECURITY_HIGH_PRIO BIT(3)
28#define GEMINI_ARB1_GMAC0_HIGH_PRIO BIT(4)
29#define GEMINI_ARB1_GMAC1_HIGH_PRIO BIT(5)
30#define GEMINI_ARB1_USB0_HIGH_PRIO BIT(6)
31#define GEMINI_ARB1_USB1_HIGH_PRIO BIT(7)
32#define GEMINI_ARB1_PCI_HIGH_PRIO BIT(8)
33#define GEMINI_ARB1_TVE_HIGH_PRIO BIT(9)
34
35#define GEMINI_DEFAULT_BURST_SIZE 0x20
36#define GEMINI_DEFAULT_PRIO (GEMINI_ARB1_GMAC0_HIGH_PRIO | \
37 GEMINI_ARB1_GMAC1_HIGH_PRIO)
38
39static int __init gemini_soc_init(void)
40{
41 struct regmap *map;
42 u32 rev;
43 u32 val;
44 int ret;
45
46 /* Multiplatform guard, only proceed on Gemini */
47 if (!of_machine_is_compatible("cortina,gemini"))
48 return 0;
49
50 map = syscon_regmap_lookup_by_compatible("cortina,gemini-syscon");
51 if (IS_ERR(map))
52 return PTR_ERR(map);
53 ret = regmap_read(map, GLOBAL_WORD_ID, &rev);
54 if (ret)
55 return ret;
56
57 val = (GEMINI_DEFAULT_BURST_SIZE << GEMINI_ARB1_BURST_SHIFT) |
58 GEMINI_DEFAULT_PRIO;
59
60 /* Set up system arbitration */
61 regmap_update_bits(map,
62 GEMINI_GLOBAL_ARB1_CTRL,
63 GEMINI_ARB1_BURST_MASK | GEMINI_ARB1_PRIO_MASK,
64 val);
65
66 pr_info("Gemini SoC %04x revision %02x, set arbitration %08x\n",
67 rev >> 8, rev & 0xff, val);
68
69 return 0;
70}
71subsys_initcall(gemini_soc_init);
diff --git a/drivers/soc/mediatek/mtk-infracfg.c b/drivers/soc/mediatek/mtk-infracfg.c
index dba3055a9493..8c310de01e93 100644
--- a/drivers/soc/mediatek/mtk-infracfg.c
+++ b/drivers/soc/mediatek/mtk-infracfg.c
@@ -19,23 +19,33 @@
19 19
20#define INFRA_TOPAXI_PROTECTEN 0x0220 20#define INFRA_TOPAXI_PROTECTEN 0x0220
21#define INFRA_TOPAXI_PROTECTSTA1 0x0228 21#define INFRA_TOPAXI_PROTECTSTA1 0x0228
22#define INFRA_TOPAXI_PROTECTEN_SET 0x0260
23#define INFRA_TOPAXI_PROTECTEN_CLR 0x0264
22 24
23/** 25/**
24 * mtk_infracfg_set_bus_protection - enable bus protection 26 * mtk_infracfg_set_bus_protection - enable bus protection
25 * @regmap: The infracfg regmap 27 * @regmap: The infracfg regmap
26 * @mask: The mask containing the protection bits to be enabled. 28 * @mask: The mask containing the protection bits to be enabled.
29 * @reg_update: The boolean flag determines to set the protection bits
30 * by regmap_update_bits with enable register(PROTECTEN) or
31 * by regmap_write with set register(PROTECTEN_SET).
27 * 32 *
28 * This function enables the bus protection bits for disabled power 33 * This function enables the bus protection bits for disabled power
29 * domains so that the system does not hang when some unit accesses the 34 * domains so that the system does not hang when some unit accesses the
30 * bus while in power down. 35 * bus while in power down.
31 */ 36 */
32int mtk_infracfg_set_bus_protection(struct regmap *infracfg, u32 mask) 37int mtk_infracfg_set_bus_protection(struct regmap *infracfg, u32 mask,
38 bool reg_update)
33{ 39{
34 unsigned long expired; 40 unsigned long expired;
35 u32 val; 41 u32 val;
36 int ret; 42 int ret;
37 43
38 regmap_update_bits(infracfg, INFRA_TOPAXI_PROTECTEN, mask, mask); 44 if (reg_update)
45 regmap_update_bits(infracfg, INFRA_TOPAXI_PROTECTEN, mask,
46 mask);
47 else
48 regmap_write(infracfg, INFRA_TOPAXI_PROTECTEN_SET, mask);
39 49
40 expired = jiffies + HZ; 50 expired = jiffies + HZ;
41 51
@@ -59,16 +69,24 @@ int mtk_infracfg_set_bus_protection(struct regmap *infracfg, u32 mask)
59 * mtk_infracfg_clear_bus_protection - disable bus protection 69 * mtk_infracfg_clear_bus_protection - disable bus protection
60 * @regmap: The infracfg regmap 70 * @regmap: The infracfg regmap
61 * @mask: The mask containing the protection bits to be disabled. 71 * @mask: The mask containing the protection bits to be disabled.
72 * @reg_update: The boolean flag determines to clear the protection bits
73 * by regmap_update_bits with enable register(PROTECTEN) or
74 * by regmap_write with clear register(PROTECTEN_CLR).
62 * 75 *
63 * This function disables the bus protection bits previously enabled with 76 * This function disables the bus protection bits previously enabled with
64 * mtk_infracfg_set_bus_protection. 77 * mtk_infracfg_set_bus_protection.
65 */ 78 */
66int mtk_infracfg_clear_bus_protection(struct regmap *infracfg, u32 mask) 79
80int mtk_infracfg_clear_bus_protection(struct regmap *infracfg, u32 mask,
81 bool reg_update)
67{ 82{
68 unsigned long expired; 83 unsigned long expired;
69 int ret; 84 int ret;
70 85
71 regmap_update_bits(infracfg, INFRA_TOPAXI_PROTECTEN, mask, 0); 86 if (reg_update)
87 regmap_update_bits(infracfg, INFRA_TOPAXI_PROTECTEN, mask, 0);
88 else
89 regmap_write(infracfg, INFRA_TOPAXI_PROTECTEN_CLR, mask);
72 90
73 expired = jiffies + HZ; 91 expired = jiffies + HZ;
74 92
diff --git a/drivers/soc/mediatek/mtk-scpsys.c b/drivers/soc/mediatek/mtk-scpsys.c
index e570b6af2e6f..435ce5ec648a 100644
--- a/drivers/soc/mediatek/mtk-scpsys.c
+++ b/drivers/soc/mediatek/mtk-scpsys.c
@@ -21,6 +21,7 @@
21#include <linux/soc/mediatek/infracfg.h> 21#include <linux/soc/mediatek/infracfg.h>
22 22
23#include <dt-bindings/power/mt2701-power.h> 23#include <dt-bindings/power/mt2701-power.h>
24#include <dt-bindings/power/mt2712-power.h>
24#include <dt-bindings/power/mt6797-power.h> 25#include <dt-bindings/power/mt6797-power.h>
25#include <dt-bindings/power/mt7622-power.h> 26#include <dt-bindings/power/mt7622-power.h>
26#include <dt-bindings/power/mt8173-power.h> 27#include <dt-bindings/power/mt8173-power.h>
@@ -32,7 +33,7 @@
32#define SPM_DIS_PWR_CON 0x023c 33#define SPM_DIS_PWR_CON 0x023c
33#define SPM_CONN_PWR_CON 0x0280 34#define SPM_CONN_PWR_CON 0x0280
34#define SPM_VEN2_PWR_CON 0x0298 35#define SPM_VEN2_PWR_CON 0x0298
35#define SPM_AUDIO_PWR_CON 0x029c /* MT8173 */ 36#define SPM_AUDIO_PWR_CON 0x029c /* MT8173, MT2712 */
36#define SPM_BDP_PWR_CON 0x029c /* MT2701 */ 37#define SPM_BDP_PWR_CON 0x029c /* MT2701 */
37#define SPM_ETH_PWR_CON 0x02a0 38#define SPM_ETH_PWR_CON 0x02a0
38#define SPM_HIF_PWR_CON 0x02a4 39#define SPM_HIF_PWR_CON 0x02a4
@@ -40,12 +41,12 @@
40#define SPM_MFG_2D_PWR_CON 0x02c0 41#define SPM_MFG_2D_PWR_CON 0x02c0
41#define SPM_MFG_ASYNC_PWR_CON 0x02c4 42#define SPM_MFG_ASYNC_PWR_CON 0x02c4
42#define SPM_USB_PWR_CON 0x02cc 43#define SPM_USB_PWR_CON 0x02cc
44#define SPM_USB2_PWR_CON 0x02d4 /* MT2712 */
43#define SPM_ETHSYS_PWR_CON 0x02e0 /* MT7622 */ 45#define SPM_ETHSYS_PWR_CON 0x02e0 /* MT7622 */
44#define SPM_HIF0_PWR_CON 0x02e4 /* MT7622 */ 46#define SPM_HIF0_PWR_CON 0x02e4 /* MT7622 */
45#define SPM_HIF1_PWR_CON 0x02e8 /* MT7622 */ 47#define SPM_HIF1_PWR_CON 0x02e8 /* MT7622 */
46#define SPM_WB_PWR_CON 0x02ec /* MT7622 */ 48#define SPM_WB_PWR_CON 0x02ec /* MT7622 */
47 49
48
49#define SPM_PWR_STATUS 0x060c 50#define SPM_PWR_STATUS 0x060c
50#define SPM_PWR_STATUS_2ND 0x0610 51#define SPM_PWR_STATUS_2ND 0x0610
51 52
@@ -64,12 +65,13 @@
64#define PWR_STATUS_ETH BIT(15) 65#define PWR_STATUS_ETH BIT(15)
65#define PWR_STATUS_HIF BIT(16) 66#define PWR_STATUS_HIF BIT(16)
66#define PWR_STATUS_IFR_MSC BIT(17) 67#define PWR_STATUS_IFR_MSC BIT(17)
68#define PWR_STATUS_USB2 BIT(19) /* MT2712 */
67#define PWR_STATUS_VENC_LT BIT(20) 69#define PWR_STATUS_VENC_LT BIT(20)
68#define PWR_STATUS_VENC BIT(21) 70#define PWR_STATUS_VENC BIT(21)
69#define PWR_STATUS_MFG_2D BIT(22) 71#define PWR_STATUS_MFG_2D BIT(22) /* MT8173 */
70#define PWR_STATUS_MFG_ASYNC BIT(23) 72#define PWR_STATUS_MFG_ASYNC BIT(23) /* MT8173 */
71#define PWR_STATUS_AUDIO BIT(24) 73#define PWR_STATUS_AUDIO BIT(24) /* MT8173, MT2712 */
72#define PWR_STATUS_USB BIT(25) 74#define PWR_STATUS_USB BIT(25) /* MT8173, MT2712 */
73#define PWR_STATUS_ETHSYS BIT(24) /* MT7622 */ 75#define PWR_STATUS_ETHSYS BIT(24) /* MT7622 */
74#define PWR_STATUS_HIF0 BIT(25) /* MT7622 */ 76#define PWR_STATUS_HIF0 BIT(25) /* MT7622 */
75#define PWR_STATUS_HIF1 BIT(26) /* MT7622 */ 77#define PWR_STATUS_HIF1 BIT(26) /* MT7622 */
@@ -84,6 +86,8 @@ enum clk_id {
84 CLK_ETHIF, 86 CLK_ETHIF,
85 CLK_VDEC, 87 CLK_VDEC,
86 CLK_HIFSEL, 88 CLK_HIFSEL,
89 CLK_JPGDEC,
90 CLK_AUDIO,
87 CLK_MAX, 91 CLK_MAX,
88}; 92};
89 93
@@ -96,10 +100,12 @@ static const char * const clk_names[] = {
96 "ethif", 100 "ethif",
97 "vdec", 101 "vdec",
98 "hif_sel", 102 "hif_sel",
103 "jpgdec",
104 "audio",
99 NULL, 105 NULL,
100}; 106};
101 107
102#define MAX_CLKS 2 108#define MAX_CLKS 3
103 109
104struct scp_domain_data { 110struct scp_domain_data {
105 const char *name; 111 const char *name;
@@ -134,6 +140,7 @@ struct scp {
134 void __iomem *base; 140 void __iomem *base;
135 struct regmap *infracfg; 141 struct regmap *infracfg;
136 struct scp_ctrl_reg ctrl_reg; 142 struct scp_ctrl_reg ctrl_reg;
143 bool bus_prot_reg_update;
137}; 144};
138 145
139struct scp_subdomain { 146struct scp_subdomain {
@@ -147,6 +154,7 @@ struct scp_soc_data {
147 const struct scp_subdomain *subdomains; 154 const struct scp_subdomain *subdomains;
148 int num_subdomains; 155 int num_subdomains;
149 const struct scp_ctrl_reg regs; 156 const struct scp_ctrl_reg regs;
157 bool bus_prot_reg_update;
150}; 158};
151 159
152static int scpsys_domain_is_on(struct scp_domain *scpd) 160static int scpsys_domain_is_on(struct scp_domain *scpd)
@@ -254,7 +262,8 @@ static int scpsys_power_on(struct generic_pm_domain *genpd)
254 262
255 if (scpd->data->bus_prot_mask) { 263 if (scpd->data->bus_prot_mask) {
256 ret = mtk_infracfg_clear_bus_protection(scp->infracfg, 264 ret = mtk_infracfg_clear_bus_protection(scp->infracfg,
257 scpd->data->bus_prot_mask); 265 scpd->data->bus_prot_mask,
266 scp->bus_prot_reg_update);
258 if (ret) 267 if (ret)
259 goto err_pwr_ack; 268 goto err_pwr_ack;
260 } 269 }
@@ -289,7 +298,8 @@ static int scpsys_power_off(struct generic_pm_domain *genpd)
289 298
290 if (scpd->data->bus_prot_mask) { 299 if (scpd->data->bus_prot_mask) {
291 ret = mtk_infracfg_set_bus_protection(scp->infracfg, 300 ret = mtk_infracfg_set_bus_protection(scp->infracfg,
292 scpd->data->bus_prot_mask); 301 scpd->data->bus_prot_mask,
302 scp->bus_prot_reg_update);
293 if (ret) 303 if (ret)
294 goto out; 304 goto out;
295 } 305 }
@@ -371,7 +381,8 @@ static void init_clks(struct platform_device *pdev, struct clk **clk)
371 381
372static struct scp *init_scp(struct platform_device *pdev, 382static struct scp *init_scp(struct platform_device *pdev,
373 const struct scp_domain_data *scp_domain_data, int num, 383 const struct scp_domain_data *scp_domain_data, int num,
374 const struct scp_ctrl_reg *scp_ctrl_reg) 384 const struct scp_ctrl_reg *scp_ctrl_reg,
385 bool bus_prot_reg_update)
375{ 386{
376 struct genpd_onecell_data *pd_data; 387 struct genpd_onecell_data *pd_data;
377 struct resource *res; 388 struct resource *res;
@@ -386,6 +397,8 @@ static struct scp *init_scp(struct platform_device *pdev,
386 scp->ctrl_reg.pwr_sta_offs = scp_ctrl_reg->pwr_sta_offs; 397 scp->ctrl_reg.pwr_sta_offs = scp_ctrl_reg->pwr_sta_offs;
387 scp->ctrl_reg.pwr_sta2nd_offs = scp_ctrl_reg->pwr_sta2nd_offs; 398 scp->ctrl_reg.pwr_sta2nd_offs = scp_ctrl_reg->pwr_sta2nd_offs;
388 399
400 scp->bus_prot_reg_update = bus_prot_reg_update;
401
389 scp->dev = &pdev->dev; 402 scp->dev = &pdev->dev;
390 403
391 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 404 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
@@ -581,6 +594,85 @@ static const struct scp_domain_data scp_domain_data_mt2701[] = {
581}; 594};
582 595
583/* 596/*
597 * MT2712 power domain support
598 */
599static const struct scp_domain_data scp_domain_data_mt2712[] = {
600 [MT2712_POWER_DOMAIN_MM] = {
601 .name = "mm",
602 .sta_mask = PWR_STATUS_DISP,
603 .ctl_offs = SPM_DIS_PWR_CON,
604 .sram_pdn_bits = GENMASK(8, 8),
605 .sram_pdn_ack_bits = GENMASK(12, 12),
606 .clk_id = {CLK_MM},
607 .active_wakeup = true,
608 },
609 [MT2712_POWER_DOMAIN_VDEC] = {
610 .name = "vdec",
611 .sta_mask = PWR_STATUS_VDEC,
612 .ctl_offs = SPM_VDE_PWR_CON,
613 .sram_pdn_bits = GENMASK(8, 8),
614 .sram_pdn_ack_bits = GENMASK(12, 12),
615 .clk_id = {CLK_MM, CLK_VDEC},
616 .active_wakeup = true,
617 },
618 [MT2712_POWER_DOMAIN_VENC] = {
619 .name = "venc",
620 .sta_mask = PWR_STATUS_VENC,
621 .ctl_offs = SPM_VEN_PWR_CON,
622 .sram_pdn_bits = GENMASK(11, 8),
623 .sram_pdn_ack_bits = GENMASK(15, 12),
624 .clk_id = {CLK_MM, CLK_VENC, CLK_JPGDEC},
625 .active_wakeup = true,
626 },
627 [MT2712_POWER_DOMAIN_ISP] = {
628 .name = "isp",
629 .sta_mask = PWR_STATUS_ISP,
630 .ctl_offs = SPM_ISP_PWR_CON,
631 .sram_pdn_bits = GENMASK(11, 8),
632 .sram_pdn_ack_bits = GENMASK(13, 12),
633 .clk_id = {CLK_MM},
634 .active_wakeup = true,
635 },
636 [MT2712_POWER_DOMAIN_AUDIO] = {
637 .name = "audio",
638 .sta_mask = PWR_STATUS_AUDIO,
639 .ctl_offs = SPM_AUDIO_PWR_CON,
640 .sram_pdn_bits = GENMASK(11, 8),
641 .sram_pdn_ack_bits = GENMASK(15, 12),
642 .clk_id = {CLK_AUDIO},
643 .active_wakeup = true,
644 },
645 [MT2712_POWER_DOMAIN_USB] = {
646 .name = "usb",
647 .sta_mask = PWR_STATUS_USB,
648 .ctl_offs = SPM_USB_PWR_CON,
649 .sram_pdn_bits = GENMASK(10, 8),
650 .sram_pdn_ack_bits = GENMASK(14, 12),
651 .clk_id = {CLK_NONE},
652 .active_wakeup = true,
653 },
654 [MT2712_POWER_DOMAIN_USB2] = {
655 .name = "usb2",
656 .sta_mask = PWR_STATUS_USB2,
657 .ctl_offs = SPM_USB2_PWR_CON,
658 .sram_pdn_bits = GENMASK(10, 8),
659 .sram_pdn_ack_bits = GENMASK(14, 12),
660 .clk_id = {CLK_NONE},
661 .active_wakeup = true,
662 },
663 [MT2712_POWER_DOMAIN_MFG] = {
664 .name = "mfg",
665 .sta_mask = PWR_STATUS_MFG,
666 .ctl_offs = SPM_MFG_PWR_CON,
667 .sram_pdn_bits = GENMASK(11, 8),
668 .sram_pdn_ack_bits = GENMASK(19, 16),
669 .clk_id = {CLK_MFG},
670 .bus_prot_mask = BIT(14) | BIT(21) | BIT(23),
671 .active_wakeup = true,
672 },
673};
674
675/*
584 * MT6797 power domain support 676 * MT6797 power domain support
585 */ 677 */
586 678
@@ -806,7 +898,18 @@ static const struct scp_soc_data mt2701_data = {
806 .regs = { 898 .regs = {
807 .pwr_sta_offs = SPM_PWR_STATUS, 899 .pwr_sta_offs = SPM_PWR_STATUS,
808 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND 900 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND
809 } 901 },
902 .bus_prot_reg_update = true,
903};
904
905static const struct scp_soc_data mt2712_data = {
906 .domains = scp_domain_data_mt2712,
907 .num_domains = ARRAY_SIZE(scp_domain_data_mt2712),
908 .regs = {
909 .pwr_sta_offs = SPM_PWR_STATUS,
910 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND
911 },
912 .bus_prot_reg_update = false,
810}; 913};
811 914
812static const struct scp_soc_data mt6797_data = { 915static const struct scp_soc_data mt6797_data = {
@@ -817,7 +920,8 @@ static const struct scp_soc_data mt6797_data = {
817 .regs = { 920 .regs = {
818 .pwr_sta_offs = SPM_PWR_STATUS_MT6797, 921 .pwr_sta_offs = SPM_PWR_STATUS_MT6797,
819 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND_MT6797 922 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND_MT6797
820 } 923 },
924 .bus_prot_reg_update = true,
821}; 925};
822 926
823static const struct scp_soc_data mt7622_data = { 927static const struct scp_soc_data mt7622_data = {
@@ -826,7 +930,8 @@ static const struct scp_soc_data mt7622_data = {
826 .regs = { 930 .regs = {
827 .pwr_sta_offs = SPM_PWR_STATUS, 931 .pwr_sta_offs = SPM_PWR_STATUS,
828 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND 932 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND
829 } 933 },
934 .bus_prot_reg_update = true,
830}; 935};
831 936
832static const struct scp_soc_data mt8173_data = { 937static const struct scp_soc_data mt8173_data = {
@@ -837,7 +942,8 @@ static const struct scp_soc_data mt8173_data = {
837 .regs = { 942 .regs = {
838 .pwr_sta_offs = SPM_PWR_STATUS, 943 .pwr_sta_offs = SPM_PWR_STATUS,
839 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND 944 .pwr_sta2nd_offs = SPM_PWR_STATUS_2ND
840 } 945 },
946 .bus_prot_reg_update = true,
841}; 947};
842 948
843/* 949/*
@@ -849,6 +955,9 @@ static const struct of_device_id of_scpsys_match_tbl[] = {
849 .compatible = "mediatek,mt2701-scpsys", 955 .compatible = "mediatek,mt2701-scpsys",
850 .data = &mt2701_data, 956 .data = &mt2701_data,
851 }, { 957 }, {
958 .compatible = "mediatek,mt2712-scpsys",
959 .data = &mt2712_data,
960 }, {
852 .compatible = "mediatek,mt6797-scpsys", 961 .compatible = "mediatek,mt6797-scpsys",
853 .data = &mt6797_data, 962 .data = &mt6797_data,
854 }, { 963 }, {
@@ -874,7 +983,8 @@ static int scpsys_probe(struct platform_device *pdev)
874 match = of_match_device(of_scpsys_match_tbl, &pdev->dev); 983 match = of_match_device(of_scpsys_match_tbl, &pdev->dev);
875 soc = (const struct scp_soc_data *)match->data; 984 soc = (const struct scp_soc_data *)match->data;
876 985
877 scp = init_scp(pdev, soc->domains, soc->num_domains, &soc->regs); 986 scp = init_scp(pdev, soc->domains, soc->num_domains, &soc->regs,
987 soc->bus_prot_reg_update);
878 if (IS_ERR(scp)) 988 if (IS_ERR(scp))
879 return PTR_ERR(scp); 989 return PTR_ERR(scp);
880 990
diff --git a/drivers/soc/renesas/rcar-sysc.c b/drivers/soc/renesas/rcar-sysc.c
index 55a47e509e49..52c25a5e2646 100644
--- a/drivers/soc/renesas/rcar-sysc.c
+++ b/drivers/soc/renesas/rcar-sysc.c
@@ -224,7 +224,7 @@ static void __init rcar_sysc_pd_setup(struct rcar_sysc_pd *pd)
224 224
225 if (!(pd->flags & (PD_CPU | PD_SCU))) { 225 if (!(pd->flags & (PD_CPU | PD_SCU))) {
226 /* Enable Clock Domain for I/O devices */ 226 /* Enable Clock Domain for I/O devices */
227 genpd->flags |= GENPD_FLAG_PM_CLK; 227 genpd->flags |= GENPD_FLAG_PM_CLK | GENPD_FLAG_ACTIVE_WAKEUP;
228 if (has_cpg_mstp) { 228 if (has_cpg_mstp) {
229 genpd->attach_dev = cpg_mstp_attach_dev; 229 genpd->attach_dev = cpg_mstp_attach_dev;
230 genpd->detach_dev = cpg_mstp_detach_dev; 230 genpd->detach_dev = cpg_mstp_detach_dev;
diff --git a/drivers/soc/renesas/renesas-soc.c b/drivers/soc/renesas/renesas-soc.c
index 9f4ee2567c72..926b7fd6db2d 100644
--- a/drivers/soc/renesas/renesas-soc.c
+++ b/drivers/soc/renesas/renesas-soc.c
@@ -250,6 +250,9 @@ static int __init renesas_soc_init(void)
250 if (chipid) { 250 if (chipid) {
251 product = readl(chipid); 251 product = readl(chipid);
252 iounmap(chipid); 252 iounmap(chipid);
253 /* R-Car M3-W ES1.1 incorrectly identifies as ES2.0 */
254 if ((product & 0x7fff) == 0x5210)
255 product ^= 0x11;
253 if (soc->id && ((product >> 8) & 0xff) != soc->id) { 256 if (soc->id && ((product >> 8) & 0xff) != soc->id) {
254 pr_warn("SoC mismatch (product = 0x%x)\n", product); 257 pr_warn("SoC mismatch (product = 0x%x)\n", product);
255 return -ENODEV; 258 return -ENODEV;
diff --git a/drivers/soc/tegra/Kconfig b/drivers/soc/tegra/Kconfig
index e9e277178c94..89ebe22a3e27 100644
--- a/drivers/soc/tegra/Kconfig
+++ b/drivers/soc/tegra/Kconfig
@@ -95,7 +95,7 @@ config ARCH_TEGRA_186_SOC
95 select TEGRA_BPMP 95 select TEGRA_BPMP
96 select TEGRA_HSP_MBOX 96 select TEGRA_HSP_MBOX
97 select TEGRA_IVC 97 select TEGRA_IVC
98 select SOC_TEGRA_PMC_TEGRA186 98 select SOC_TEGRA_PMC
99 help 99 help
100 Enable support for the NVIDIA Tegar186 SoC. The Tegra186 features a 100 Enable support for the NVIDIA Tegar186 SoC. The Tegra186 features a
101 combination of Denver and Cortex-A57 CPU cores and a GPU based on 101 combination of Denver and Cortex-A57 CPU cores and a GPU based on
@@ -118,9 +118,6 @@ config SOC_TEGRA_FLOWCTRL
118config SOC_TEGRA_PMC 118config SOC_TEGRA_PMC
119 bool 119 bool
120 120
121config SOC_TEGRA_PMC_TEGRA186
122 bool
123
124config SOC_TEGRA_POWERGATE_BPMP 121config SOC_TEGRA_POWERGATE_BPMP
125 def_bool y 122 def_bool y
126 depends on PM_GENERIC_DOMAINS 123 depends on PM_GENERIC_DOMAINS
diff --git a/drivers/soc/tegra/Makefile b/drivers/soc/tegra/Makefile
index 482e108d28aa..902759fe5f4d 100644
--- a/drivers/soc/tegra/Makefile
+++ b/drivers/soc/tegra/Makefile
@@ -4,5 +4,4 @@ obj-y += fuse/
4obj-y += common.o 4obj-y += common.o
5obj-$(CONFIG_SOC_TEGRA_FLOWCTRL) += flowctrl.o 5obj-$(CONFIG_SOC_TEGRA_FLOWCTRL) += flowctrl.o
6obj-$(CONFIG_SOC_TEGRA_PMC) += pmc.o 6obj-$(CONFIG_SOC_TEGRA_PMC) += pmc.o
7obj-$(CONFIG_SOC_TEGRA_PMC_TEGRA186) += pmc-tegra186.o
8obj-$(CONFIG_SOC_TEGRA_POWERGATE_BPMP) += powergate-bpmp.o 7obj-$(CONFIG_SOC_TEGRA_POWERGATE_BPMP) += powergate-bpmp.o
diff --git a/drivers/soc/tegra/fuse/fuse-tegra.c b/drivers/soc/tegra/fuse/fuse-tegra.c
index b7c552e3133c..a33ee8ef8b6b 100644
--- a/drivers/soc/tegra/fuse/fuse-tegra.c
+++ b/drivers/soc/tegra/fuse/fuse-tegra.c
@@ -103,6 +103,9 @@ static struct tegra_fuse *fuse = &(struct tegra_fuse) {
103}; 103};
104 104
105static const struct of_device_id tegra_fuse_match[] = { 105static const struct of_device_id tegra_fuse_match[] = {
106#ifdef CONFIG_ARCH_TEGRA_186_SOC
107 { .compatible = "nvidia,tegra186-efuse", .data = &tegra186_fuse_soc },
108#endif
106#ifdef CONFIG_ARCH_TEGRA_210_SOC 109#ifdef CONFIG_ARCH_TEGRA_210_SOC
107 { .compatible = "nvidia,tegra210-efuse", .data = &tegra210_fuse_soc }, 110 { .compatible = "nvidia,tegra210-efuse", .data = &tegra210_fuse_soc },
108#endif 111#endif
@@ -132,6 +135,7 @@ static int tegra_fuse_probe(struct platform_device *pdev)
132 135
133 /* take over the memory region from the early initialization */ 136 /* take over the memory region from the early initialization */
134 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 137 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
138 fuse->phys = res->start;
135 fuse->base = devm_ioremap_resource(&pdev->dev, res); 139 fuse->base = devm_ioremap_resource(&pdev->dev, res);
136 if (IS_ERR(fuse->base)) 140 if (IS_ERR(fuse->base))
137 return PTR_ERR(fuse->base); 141 return PTR_ERR(fuse->base);
diff --git a/drivers/soc/tegra/fuse/fuse-tegra20.c b/drivers/soc/tegra/fuse/fuse-tegra20.c
index 294413a969a0..49ff017f3ded 100644
--- a/drivers/soc/tegra/fuse/fuse-tegra20.c
+++ b/drivers/soc/tegra/fuse/fuse-tegra20.c
@@ -59,7 +59,7 @@ static u32 tegra20_fuse_read(struct tegra_fuse *fuse, unsigned int offset)
59 59
60 mutex_lock(&fuse->apbdma.lock); 60 mutex_lock(&fuse->apbdma.lock);
61 61
62 fuse->apbdma.config.src_addr = fuse->apbdma.phys + FUSE_BEGIN + offset; 62 fuse->apbdma.config.src_addr = fuse->phys + FUSE_BEGIN + offset;
63 63
64 err = dmaengine_slave_config(fuse->apbdma.chan, &fuse->apbdma.config); 64 err = dmaengine_slave_config(fuse->apbdma.chan, &fuse->apbdma.config);
65 if (err) 65 if (err)
@@ -96,6 +96,13 @@ out:
96 return value; 96 return value;
97} 97}
98 98
99static bool dma_filter(struct dma_chan *chan, void *filter_param)
100{
101 struct device_node *np = chan->device->dev->of_node;
102
103 return of_device_is_compatible(np, "nvidia,tegra20-apbdma");
104}
105
99static int tegra20_fuse_probe(struct tegra_fuse *fuse) 106static int tegra20_fuse_probe(struct tegra_fuse *fuse)
100{ 107{
101 dma_cap_mask_t mask; 108 dma_cap_mask_t mask;
@@ -103,7 +110,7 @@ static int tegra20_fuse_probe(struct tegra_fuse *fuse)
103 dma_cap_zero(mask); 110 dma_cap_zero(mask);
104 dma_cap_set(DMA_SLAVE, mask); 111 dma_cap_set(DMA_SLAVE, mask);
105 112
106 fuse->apbdma.chan = dma_request_channel(mask, NULL, NULL); 113 fuse->apbdma.chan = __dma_request_channel(&mask, dma_filter, NULL);
107 if (!fuse->apbdma.chan) 114 if (!fuse->apbdma.chan)
108 return -EPROBE_DEFER; 115 return -EPROBE_DEFER;
109 116
@@ -119,6 +126,8 @@ static int tegra20_fuse_probe(struct tegra_fuse *fuse)
119 fuse->apbdma.config.dst_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; 126 fuse->apbdma.config.dst_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES;
120 fuse->apbdma.config.src_maxburst = 1; 127 fuse->apbdma.config.src_maxburst = 1;
121 fuse->apbdma.config.dst_maxburst = 1; 128 fuse->apbdma.config.dst_maxburst = 1;
129 fuse->apbdma.config.direction = DMA_DEV_TO_MEM;
130 fuse->apbdma.config.device_fc = false;
122 131
123 init_completion(&fuse->apbdma.wait); 132 init_completion(&fuse->apbdma.wait);
124 mutex_init(&fuse->apbdma.lock); 133 mutex_init(&fuse->apbdma.lock);
diff --git a/drivers/soc/tegra/fuse/fuse-tegra30.c b/drivers/soc/tegra/fuse/fuse-tegra30.c
index 882607bcaa6c..257e254c6137 100644
--- a/drivers/soc/tegra/fuse/fuse-tegra30.c
+++ b/drivers/soc/tegra/fuse/fuse-tegra30.c
@@ -46,9 +46,13 @@
46 defined(CONFIG_ARCH_TEGRA_114_SOC) || \ 46 defined(CONFIG_ARCH_TEGRA_114_SOC) || \
47 defined(CONFIG_ARCH_TEGRA_124_SOC) || \ 47 defined(CONFIG_ARCH_TEGRA_124_SOC) || \
48 defined(CONFIG_ARCH_TEGRA_132_SOC) || \ 48 defined(CONFIG_ARCH_TEGRA_132_SOC) || \
49 defined(CONFIG_ARCH_TEGRA_210_SOC) 49 defined(CONFIG_ARCH_TEGRA_210_SOC) || \
50 defined(CONFIG_ARCH_TEGRA_186_SOC)
50static u32 tegra30_fuse_read_early(struct tegra_fuse *fuse, unsigned int offset) 51static u32 tegra30_fuse_read_early(struct tegra_fuse *fuse, unsigned int offset)
51{ 52{
53 if (WARN_ON(!fuse->base))
54 return 0;
55
52 return readl_relaxed(fuse->base + FUSE_BEGIN + offset); 56 return readl_relaxed(fuse->base + FUSE_BEGIN + offset);
53} 57}
54 58
@@ -98,7 +102,10 @@ static void __init tegra30_fuse_init(struct tegra_fuse *fuse)
98 fuse->read = tegra30_fuse_read; 102 fuse->read = tegra30_fuse_read;
99 103
100 tegra_init_revision(); 104 tegra_init_revision();
101 fuse->soc->speedo_init(&tegra_sku_info); 105
106 if (fuse->soc->speedo_init)
107 fuse->soc->speedo_init(&tegra_sku_info);
108
102 tegra30_fuse_add_randomness(); 109 tegra30_fuse_add_randomness();
103} 110}
104#endif 111#endif
@@ -158,3 +165,16 @@ const struct tegra_fuse_soc tegra210_fuse_soc = {
158 .info = &tegra210_fuse_info, 165 .info = &tegra210_fuse_info,
159}; 166};
160#endif 167#endif
168
169#if defined(CONFIG_ARCH_TEGRA_186_SOC)
170static const struct tegra_fuse_info tegra186_fuse_info = {
171 .read = tegra30_fuse_read,
172 .size = 0x300,
173 .spare = 0x280,
174};
175
176const struct tegra_fuse_soc tegra186_fuse_soc = {
177 .init = tegra30_fuse_init,
178 .info = &tegra186_fuse_info,
179};
180#endif
diff --git a/drivers/soc/tegra/fuse/fuse.h b/drivers/soc/tegra/fuse/fuse.h
index 10c2076d5089..f355b9d54915 100644
--- a/drivers/soc/tegra/fuse/fuse.h
+++ b/drivers/soc/tegra/fuse/fuse.h
@@ -105,4 +105,8 @@ extern const struct tegra_fuse_soc tegra124_fuse_soc;
105extern const struct tegra_fuse_soc tegra210_fuse_soc; 105extern const struct tegra_fuse_soc tegra210_fuse_soc;
106#endif 106#endif
107 107
108#ifdef CONFIG_ARCH_TEGRA_186_SOC
109extern const struct tegra_fuse_soc tegra186_fuse_soc;
110#endif
111
108#endif 112#endif
diff --git a/drivers/soc/tegra/fuse/tegra-apbmisc.c b/drivers/soc/tegra/fuse/tegra-apbmisc.c
index 5b18f6ffa45c..e5a4d8f98b10 100644
--- a/drivers/soc/tegra/fuse/tegra-apbmisc.c
+++ b/drivers/soc/tegra/fuse/tegra-apbmisc.c
@@ -39,16 +39,16 @@ static bool long_ram_code;
39 39
40u32 tegra_read_chipid(void) 40u32 tegra_read_chipid(void)
41{ 41{
42 return readl_relaxed(apbmisc_base + 4);
43}
44
45u8 tegra_get_chip_id(void)
46{
47 if (!apbmisc_base) { 42 if (!apbmisc_base) {
48 WARN(1, "Tegra Chip ID not yet available\n"); 43 WARN(1, "Tegra Chip ID not yet available\n");
49 return 0; 44 return 0;
50 } 45 }
51 46
47 return readl_relaxed(apbmisc_base + 4);
48}
49
50u8 tegra_get_chip_id(void)
51{
52 return (tegra_read_chipid() >> 8) & 0xff; 52 return (tegra_read_chipid() >> 8) & 0xff;
53} 53}
54 54
@@ -74,6 +74,7 @@ u32 tegra_read_ram_code(void)
74 74
75static const struct of_device_id apbmisc_match[] __initconst = { 75static const struct of_device_id apbmisc_match[] __initconst = {
76 { .compatible = "nvidia,tegra20-apbmisc", }, 76 { .compatible = "nvidia,tegra20-apbmisc", },
77 { .compatible = "nvidia,tegra186-misc", },
77 {}, 78 {},
78}; 79};
79 80
diff --git a/drivers/soc/tegra/pmc-tegra186.c b/drivers/soc/tegra/pmc-tegra186.c
deleted file mode 100644
index 6f5c6f98ba92..000000000000
--- a/drivers/soc/tegra/pmc-tegra186.c
+++ /dev/null
@@ -1,169 +0,0 @@
1/*
2 * Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms and conditions of the GNU General Public License,
6 * version 2, as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope it will be useful, but WITHOUT
9 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
11 * more details.
12 */
13
14#define pr_fmt(fmt) "tegra-pmc: " fmt
15
16#include <linux/io.h>
17#include <linux/module.h>
18#include <linux/of.h>
19#include <linux/platform_device.h>
20#include <linux/reboot.h>
21
22#include <asm/system_misc.h>
23
24#define PMC_CNTRL 0x000
25#define PMC_CNTRL_MAIN_RST BIT(4)
26
27#define PMC_RST_STATUS 0x070
28
29#define WAKE_AOWAKE_CTRL 0x4f4
30#define WAKE_AOWAKE_CTRL_INTR_POLARITY BIT(0)
31
32#define SCRATCH_SCRATCH0 0x2000
33#define SCRATCH_SCRATCH0_MODE_RECOVERY BIT(31)
34#define SCRATCH_SCRATCH0_MODE_BOOTLOADER BIT(30)
35#define SCRATCH_SCRATCH0_MODE_RCM BIT(1)
36#define SCRATCH_SCRATCH0_MODE_MASK (SCRATCH_SCRATCH0_MODE_RECOVERY | \
37 SCRATCH_SCRATCH0_MODE_BOOTLOADER | \
38 SCRATCH_SCRATCH0_MODE_RCM)
39
40struct tegra_pmc {
41 struct device *dev;
42 void __iomem *regs;
43 void __iomem *wake;
44 void __iomem *aotag;
45 void __iomem *scratch;
46
47 void (*system_restart)(enum reboot_mode mode, const char *cmd);
48 struct notifier_block restart;
49};
50
51static int tegra186_pmc_restart_notify(struct notifier_block *nb,
52 unsigned long action,
53 void *data)
54{
55 struct tegra_pmc *pmc = container_of(nb, struct tegra_pmc, restart);
56 const char *cmd = data;
57 u32 value;
58
59 value = readl(pmc->scratch + SCRATCH_SCRATCH0);
60 value &= ~SCRATCH_SCRATCH0_MODE_MASK;
61
62 if (cmd) {
63 if (strcmp(cmd, "recovery") == 0)
64 value |= SCRATCH_SCRATCH0_MODE_RECOVERY;
65
66 if (strcmp(cmd, "bootloader") == 0)
67 value |= SCRATCH_SCRATCH0_MODE_BOOTLOADER;
68
69 if (strcmp(cmd, "forced-recovery") == 0)
70 value |= SCRATCH_SCRATCH0_MODE_RCM;
71 }
72
73 writel(value, pmc->scratch + SCRATCH_SCRATCH0);
74
75 /*
76 * If available, call the system restart implementation that was
77 * registered earlier (typically PSCI).
78 */
79 if (pmc->system_restart) {
80 pmc->system_restart(reboot_mode, cmd);
81 return NOTIFY_DONE;
82 }
83
84 /* reset everything but SCRATCH0_SCRATCH0 and PMC_RST_STATUS */
85 value = readl(pmc->regs + PMC_CNTRL);
86 value |= PMC_CNTRL_MAIN_RST;
87 writel(value, pmc->regs + PMC_CNTRL);
88
89 return NOTIFY_DONE;
90}
91
92static int tegra186_pmc_setup(struct tegra_pmc *pmc)
93{
94 struct device_node *np = pmc->dev->of_node;
95 bool invert;
96 u32 value;
97
98 invert = of_property_read_bool(np, "nvidia,invert-interrupt");
99
100 value = readl(pmc->wake + WAKE_AOWAKE_CTRL);
101
102 if (invert)
103 value |= WAKE_AOWAKE_CTRL_INTR_POLARITY;
104 else
105 value &= ~WAKE_AOWAKE_CTRL_INTR_POLARITY;
106
107 writel(value, pmc->wake + WAKE_AOWAKE_CTRL);
108
109 /*
110 * We need to hook any system restart implementation registered
111 * previously so we can write SCRATCH_SCRATCH0 before reset.
112 */
113 pmc->system_restart = arm_pm_restart;
114 arm_pm_restart = NULL;
115
116 pmc->restart.notifier_call = tegra186_pmc_restart_notify;
117 pmc->restart.priority = 128;
118
119 return register_restart_handler(&pmc->restart);
120}
121
122static int tegra186_pmc_probe(struct platform_device *pdev)
123{
124 struct tegra_pmc *pmc;
125 struct resource *res;
126
127 pmc = devm_kzalloc(&pdev->dev, sizeof(*pmc), GFP_KERNEL);
128 if (!pmc)
129 return -ENOMEM;
130
131 pmc->dev = &pdev->dev;
132
133 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "pmc");
134 pmc->regs = devm_ioremap_resource(&pdev->dev, res);
135 if (IS_ERR(pmc->regs))
136 return PTR_ERR(pmc->regs);
137
138 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "wake");
139 pmc->wake = devm_ioremap_resource(&pdev->dev, res);
140 if (IS_ERR(pmc->wake))
141 return PTR_ERR(pmc->wake);
142
143 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "aotag");
144 pmc->aotag = devm_ioremap_resource(&pdev->dev, res);
145 if (IS_ERR(pmc->aotag))
146 return PTR_ERR(pmc->aotag);
147
148 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "scratch");
149 pmc->scratch = devm_ioremap_resource(&pdev->dev, res);
150 if (IS_ERR(pmc->scratch))
151 return PTR_ERR(pmc->scratch);
152
153 return tegra186_pmc_setup(pmc);
154}
155
156static const struct of_device_id tegra186_pmc_of_match[] = {
157 { .compatible = "nvidia,tegra186-pmc" },
158 { /* sentinel */ }
159};
160MODULE_DEVICE_TABLE(of, tegra186_pmc_of_match);
161
162static struct platform_driver tegra186_pmc_driver = {
163 .driver = {
164 .name = "tegra186-pmc",
165 .of_match_table = tegra186_pmc_of_match,
166 },
167 .probe = tegra186_pmc_probe,
168};
169builtin_platform_driver(tegra186_pmc_driver);
diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c
index 0453ff6839a7..ce62a47a6647 100644
--- a/drivers/soc/tegra/pmc.c
+++ b/drivers/soc/tegra/pmc.c
@@ -66,11 +66,10 @@
66 66
67#define PMC_PWR_DET 0x48 67#define PMC_PWR_DET 0x48
68 68
69#define PMC_SCRATCH0 0x50 69#define PMC_SCRATCH0_MODE_RECOVERY BIT(31)
70#define PMC_SCRATCH0_MODE_RECOVERY BIT(31) 70#define PMC_SCRATCH0_MODE_BOOTLOADER BIT(30)
71#define PMC_SCRATCH0_MODE_BOOTLOADER BIT(30) 71#define PMC_SCRATCH0_MODE_RCM BIT(1)
72#define PMC_SCRATCH0_MODE_RCM BIT(1) 72#define PMC_SCRATCH0_MODE_MASK (PMC_SCRATCH0_MODE_RECOVERY | \
73#define PMC_SCRATCH0_MODE_MASK (PMC_SCRATCH0_MODE_RECOVERY | \
74 PMC_SCRATCH0_MODE_BOOTLOADER | \ 73 PMC_SCRATCH0_MODE_BOOTLOADER | \
75 PMC_SCRATCH0_MODE_RCM) 74 PMC_SCRATCH0_MODE_RCM)
76 75
@@ -118,6 +117,10 @@
118 117
119#define GPU_RG_CNTRL 0x2d4 118#define GPU_RG_CNTRL 0x2d4
120 119
120/* Tegra186 and later */
121#define WAKE_AOWAKE_CTRL 0x4f4
122#define WAKE_AOWAKE_CTRL_INTR_POLARITY BIT(0)
123
121struct tegra_powergate { 124struct tegra_powergate {
122 struct generic_pm_domain genpd; 125 struct generic_pm_domain genpd;
123 struct tegra_pmc *pmc; 126 struct tegra_pmc *pmc;
@@ -134,6 +137,14 @@ struct tegra_io_pad_soc {
134 unsigned int voltage; 137 unsigned int voltage;
135}; 138};
136 139
140struct tegra_pmc_regs {
141 unsigned int scratch0;
142 unsigned int dpd_req;
143 unsigned int dpd_status;
144 unsigned int dpd2_req;
145 unsigned int dpd2_status;
146};
147
137struct tegra_pmc_soc { 148struct tegra_pmc_soc {
138 unsigned int num_powergates; 149 unsigned int num_powergates;
139 const char *const *powergates; 150 const char *const *powergates;
@@ -145,6 +156,12 @@ struct tegra_pmc_soc {
145 156
146 const struct tegra_io_pad_soc *io_pads; 157 const struct tegra_io_pad_soc *io_pads;
147 unsigned int num_io_pads; 158 unsigned int num_io_pads;
159
160 const struct tegra_pmc_regs *regs;
161 void (*init)(struct tegra_pmc *pmc);
162 void (*setup_irq_polarity)(struct tegra_pmc *pmc,
163 struct device_node *np,
164 bool invert);
148}; 165};
149 166
150/** 167/**
@@ -173,6 +190,9 @@ struct tegra_pmc_soc {
173struct tegra_pmc { 190struct tegra_pmc {
174 struct device *dev; 191 struct device *dev;
175 void __iomem *base; 192 void __iomem *base;
193 void __iomem *wake;
194 void __iomem *aotag;
195 void __iomem *scratch;
176 struct clk *clk; 196 struct clk *clk;
177 struct dentry *debugfs; 197 struct dentry *debugfs;
178 198
@@ -645,7 +665,7 @@ static int tegra_pmc_restart_notify(struct notifier_block *this,
645 const char *cmd = data; 665 const char *cmd = data;
646 u32 value; 666 u32 value;
647 667
648 value = tegra_pmc_readl(PMC_SCRATCH0); 668 value = readl(pmc->scratch + pmc->soc->regs->scratch0);
649 value &= ~PMC_SCRATCH0_MODE_MASK; 669 value &= ~PMC_SCRATCH0_MODE_MASK;
650 670
651 if (cmd) { 671 if (cmd) {
@@ -659,7 +679,7 @@ static int tegra_pmc_restart_notify(struct notifier_block *this,
659 value |= PMC_SCRATCH0_MODE_RCM; 679 value |= PMC_SCRATCH0_MODE_RCM;
660 } 680 }
661 681
662 tegra_pmc_writel(value, PMC_SCRATCH0); 682 writel(value, pmc->scratch + pmc->soc->regs->scratch0);
663 683
664 /* reset everything but PMC_SCRATCH0 and PMC_RST_STATUS */ 684 /* reset everything but PMC_SCRATCH0 and PMC_RST_STATUS */
665 value = tegra_pmc_readl(PMC_CNTRL); 685 value = tegra_pmc_readl(PMC_CNTRL);
@@ -954,25 +974,27 @@ static int tegra_io_pad_prepare(enum tegra_io_pad id, unsigned long *request,
954 *mask = BIT(pad->dpd % 32); 974 *mask = BIT(pad->dpd % 32);
955 975
956 if (pad->dpd < 32) { 976 if (pad->dpd < 32) {
957 *status = IO_DPD_STATUS; 977 *status = pmc->soc->regs->dpd_status;
958 *request = IO_DPD_REQ; 978 *request = pmc->soc->regs->dpd_req;
959 } else { 979 } else {
960 *status = IO_DPD2_STATUS; 980 *status = pmc->soc->regs->dpd2_status;
961 *request = IO_DPD2_REQ; 981 *request = pmc->soc->regs->dpd2_req;
962 } 982 }
963 983
964 rate = clk_get_rate(pmc->clk); 984 if (pmc->clk) {
965 if (!rate) { 985 rate = clk_get_rate(pmc->clk);
966 pr_err("failed to get clock rate\n"); 986 if (!rate) {
967 return -ENODEV; 987 pr_err("failed to get clock rate\n");
968 } 988 return -ENODEV;
989 }
969 990
970 tegra_pmc_writel(DPD_SAMPLE_ENABLE, DPD_SAMPLE); 991 tegra_pmc_writel(DPD_SAMPLE_ENABLE, DPD_SAMPLE);
971 992
972 /* must be at least 200 ns, in APB (PCLK) clock cycles */ 993 /* must be at least 200 ns, in APB (PCLK) clock cycles */
973 value = DIV_ROUND_UP(1000000000, rate); 994 value = DIV_ROUND_UP(1000000000, rate);
974 value = DIV_ROUND_UP(200, value); 995 value = DIV_ROUND_UP(200, value);
975 tegra_pmc_writel(value, SEL_DPD_TIM); 996 tegra_pmc_writel(value, SEL_DPD_TIM);
997 }
976 998
977 return 0; 999 return 0;
978} 1000}
@@ -997,7 +1019,8 @@ static int tegra_io_pad_poll(unsigned long offset, u32 mask,
997 1019
998static void tegra_io_pad_unprepare(void) 1020static void tegra_io_pad_unprepare(void)
999{ 1021{
1000 tegra_pmc_writel(DPD_SAMPLE_DISABLE, DPD_SAMPLE); 1022 if (pmc->clk)
1023 tegra_pmc_writel(DPD_SAMPLE_DISABLE, DPD_SAMPLE);
1001} 1024}
1002 1025
1003/** 1026/**
@@ -1287,27 +1310,8 @@ static int tegra_pmc_parse_dt(struct tegra_pmc *pmc, struct device_node *np)
1287 1310
1288static void tegra_pmc_init(struct tegra_pmc *pmc) 1311static void tegra_pmc_init(struct tegra_pmc *pmc)
1289{ 1312{
1290 u32 value; 1313 if (pmc->soc->init)
1291 1314 pmc->soc->init(pmc);
1292 /* Always enable CPU power request */
1293 value = tegra_pmc_readl(PMC_CNTRL);
1294 value |= PMC_CNTRL_CPU_PWRREQ_OE;
1295 tegra_pmc_writel(value, PMC_CNTRL);
1296
1297 value = tegra_pmc_readl(PMC_CNTRL);
1298
1299 if (pmc->sysclkreq_high)
1300 value &= ~PMC_CNTRL_SYSCLK_POLARITY;
1301 else
1302 value |= PMC_CNTRL_SYSCLK_POLARITY;
1303
1304 /* configure the output polarity while the request is tristated */
1305 tegra_pmc_writel(value, PMC_CNTRL);
1306
1307 /* now enable the request */
1308 value = tegra_pmc_readl(PMC_CNTRL);
1309 value |= PMC_CNTRL_SYSCLK_OE;
1310 tegra_pmc_writel(value, PMC_CNTRL);
1311} 1315}
1312 1316
1313static void tegra_pmc_init_tsense_reset(struct tegra_pmc *pmc) 1317static void tegra_pmc_init_tsense_reset(struct tegra_pmc *pmc)
@@ -1410,11 +1414,43 @@ static int tegra_pmc_probe(struct platform_device *pdev)
1410 if (IS_ERR(base)) 1414 if (IS_ERR(base))
1411 return PTR_ERR(base); 1415 return PTR_ERR(base);
1412 1416
1417 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "wake");
1418 if (res) {
1419 pmc->wake = devm_ioremap_resource(&pdev->dev, res);
1420 if (IS_ERR(pmc->wake))
1421 return PTR_ERR(pmc->wake);
1422 } else {
1423 pmc->wake = base;
1424 }
1425
1426 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "aotag");
1427 if (res) {
1428 pmc->aotag = devm_ioremap_resource(&pdev->dev, res);
1429 if (IS_ERR(pmc->aotag))
1430 return PTR_ERR(pmc->aotag);
1431 } else {
1432 pmc->aotag = base;
1433 }
1434
1435 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "scratch");
1436 if (res) {
1437 pmc->scratch = devm_ioremap_resource(&pdev->dev, res);
1438 if (IS_ERR(pmc->scratch))
1439 return PTR_ERR(pmc->scratch);
1440 } else {
1441 pmc->scratch = base;
1442 }
1443
1413 pmc->clk = devm_clk_get(&pdev->dev, "pclk"); 1444 pmc->clk = devm_clk_get(&pdev->dev, "pclk");
1414 if (IS_ERR(pmc->clk)) { 1445 if (IS_ERR(pmc->clk)) {
1415 err = PTR_ERR(pmc->clk); 1446 err = PTR_ERR(pmc->clk);
1416 dev_err(&pdev->dev, "failed to get pclk: %d\n", err); 1447
1417 return err; 1448 if (err != -ENOENT) {
1449 dev_err(&pdev->dev, "failed to get pclk: %d\n", err);
1450 return err;
1451 }
1452
1453 pmc->clk = NULL;
1418 } 1454 }
1419 1455
1420 pmc->dev = &pdev->dev; 1456 pmc->dev = &pdev->dev;
@@ -1474,6 +1510,55 @@ static const char * const tegra20_powergates[] = {
1474 [TEGRA_POWERGATE_MPE] = "mpe", 1510 [TEGRA_POWERGATE_MPE] = "mpe",
1475}; 1511};
1476 1512
1513static const struct tegra_pmc_regs tegra20_pmc_regs = {
1514 .scratch0 = 0x50,
1515 .dpd_req = 0x1b8,
1516 .dpd_status = 0x1bc,
1517 .dpd2_req = 0x1c0,
1518 .dpd2_status = 0x1c4,
1519};
1520
1521static void tegra20_pmc_init(struct tegra_pmc *pmc)
1522{
1523 u32 value;
1524
1525 /* Always enable CPU power request */
1526 value = tegra_pmc_readl(PMC_CNTRL);
1527 value |= PMC_CNTRL_CPU_PWRREQ_OE;
1528 tegra_pmc_writel(value, PMC_CNTRL);
1529
1530 value = tegra_pmc_readl(PMC_CNTRL);
1531
1532 if (pmc->sysclkreq_high)
1533 value &= ~PMC_CNTRL_SYSCLK_POLARITY;
1534 else
1535 value |= PMC_CNTRL_SYSCLK_POLARITY;
1536
1537 /* configure the output polarity while the request is tristated */
1538 tegra_pmc_writel(value, PMC_CNTRL);
1539
1540 /* now enable the request */
1541 value = tegra_pmc_readl(PMC_CNTRL);
1542 value |= PMC_CNTRL_SYSCLK_OE;
1543 tegra_pmc_writel(value, PMC_CNTRL);
1544}
1545
1546static void tegra20_pmc_setup_irq_polarity(struct tegra_pmc *pmc,
1547 struct device_node *np,
1548 bool invert)
1549{
1550 u32 value;
1551
1552 value = tegra_pmc_readl(PMC_CNTRL);
1553
1554 if (invert)
1555 value |= PMC_CNTRL_INTR_POLARITY;
1556 else
1557 value &= ~PMC_CNTRL_INTR_POLARITY;
1558
1559 tegra_pmc_writel(value, PMC_CNTRL);
1560}
1561
1477static const struct tegra_pmc_soc tegra20_pmc_soc = { 1562static const struct tegra_pmc_soc tegra20_pmc_soc = {
1478 .num_powergates = ARRAY_SIZE(tegra20_powergates), 1563 .num_powergates = ARRAY_SIZE(tegra20_powergates),
1479 .powergates = tegra20_powergates, 1564 .powergates = tegra20_powergates,
@@ -1481,6 +1566,11 @@ static const struct tegra_pmc_soc tegra20_pmc_soc = {
1481 .cpu_powergates = NULL, 1566 .cpu_powergates = NULL,
1482 .has_tsense_reset = false, 1567 .has_tsense_reset = false,
1483 .has_gpu_clamps = false, 1568 .has_gpu_clamps = false,
1569 .num_io_pads = 0,
1570 .io_pads = NULL,
1571 .regs = &tegra20_pmc_regs,
1572 .init = tegra20_pmc_init,
1573 .setup_irq_polarity = tegra20_pmc_setup_irq_polarity,
1484}; 1574};
1485 1575
1486static const char * const tegra30_powergates[] = { 1576static const char * const tegra30_powergates[] = {
@@ -1514,6 +1604,11 @@ static const struct tegra_pmc_soc tegra30_pmc_soc = {
1514 .cpu_powergates = tegra30_cpu_powergates, 1604 .cpu_powergates = tegra30_cpu_powergates,
1515 .has_tsense_reset = true, 1605 .has_tsense_reset = true,
1516 .has_gpu_clamps = false, 1606 .has_gpu_clamps = false,
1607 .num_io_pads = 0,
1608 .io_pads = NULL,
1609 .regs = &tegra20_pmc_regs,
1610 .init = tegra20_pmc_init,
1611 .setup_irq_polarity = tegra20_pmc_setup_irq_polarity,
1517}; 1612};
1518 1613
1519static const char * const tegra114_powergates[] = { 1614static const char * const tegra114_powergates[] = {
@@ -1551,6 +1646,11 @@ static const struct tegra_pmc_soc tegra114_pmc_soc = {
1551 .cpu_powergates = tegra114_cpu_powergates, 1646 .cpu_powergates = tegra114_cpu_powergates,
1552 .has_tsense_reset = true, 1647 .has_tsense_reset = true,
1553 .has_gpu_clamps = false, 1648 .has_gpu_clamps = false,
1649 .num_io_pads = 0,
1650 .io_pads = NULL,
1651 .regs = &tegra20_pmc_regs,
1652 .init = tegra20_pmc_init,
1653 .setup_irq_polarity = tegra20_pmc_setup_irq_polarity,
1554}; 1654};
1555 1655
1556static const char * const tegra124_powergates[] = { 1656static const char * const tegra124_powergates[] = {
@@ -1628,6 +1728,9 @@ static const struct tegra_pmc_soc tegra124_pmc_soc = {
1628 .has_gpu_clamps = true, 1728 .has_gpu_clamps = true,
1629 .num_io_pads = ARRAY_SIZE(tegra124_io_pads), 1729 .num_io_pads = ARRAY_SIZE(tegra124_io_pads),
1630 .io_pads = tegra124_io_pads, 1730 .io_pads = tegra124_io_pads,
1731 .regs = &tegra20_pmc_regs,
1732 .init = tegra20_pmc_init,
1733 .setup_irq_polarity = tegra20_pmc_setup_irq_polarity,
1631}; 1734};
1632 1735
1633static const char * const tegra210_powergates[] = { 1736static const char * const tegra210_powergates[] = {
@@ -1714,9 +1817,110 @@ static const struct tegra_pmc_soc tegra210_pmc_soc = {
1714 .has_gpu_clamps = true, 1817 .has_gpu_clamps = true,
1715 .num_io_pads = ARRAY_SIZE(tegra210_io_pads), 1818 .num_io_pads = ARRAY_SIZE(tegra210_io_pads),
1716 .io_pads = tegra210_io_pads, 1819 .io_pads = tegra210_io_pads,
1820 .regs = &tegra20_pmc_regs,
1821 .init = tegra20_pmc_init,
1822 .setup_irq_polarity = tegra20_pmc_setup_irq_polarity,
1823};
1824
1825static const struct tegra_io_pad_soc tegra186_io_pads[] = {
1826 { .id = TEGRA_IO_PAD_CSIA, .dpd = 0, .voltage = UINT_MAX },
1827 { .id = TEGRA_IO_PAD_CSIB, .dpd = 1, .voltage = UINT_MAX },
1828 { .id = TEGRA_IO_PAD_DSI, .dpd = 2, .voltage = UINT_MAX },
1829 { .id = TEGRA_IO_PAD_MIPI_BIAS, .dpd = 3, .voltage = UINT_MAX },
1830 { .id = TEGRA_IO_PAD_PEX_CLK_BIAS, .dpd = 4, .voltage = UINT_MAX },
1831 { .id = TEGRA_IO_PAD_PEX_CLK3, .dpd = 5, .voltage = UINT_MAX },
1832 { .id = TEGRA_IO_PAD_PEX_CLK2, .dpd = 6, .voltage = UINT_MAX },
1833 { .id = TEGRA_IO_PAD_PEX_CLK1, .dpd = 7, .voltage = UINT_MAX },
1834 { .id = TEGRA_IO_PAD_USB0, .dpd = 9, .voltage = UINT_MAX },
1835 { .id = TEGRA_IO_PAD_USB1, .dpd = 10, .voltage = UINT_MAX },
1836 { .id = TEGRA_IO_PAD_USB2, .dpd = 11, .voltage = UINT_MAX },
1837 { .id = TEGRA_IO_PAD_USB_BIAS, .dpd = 12, .voltage = UINT_MAX },
1838 { .id = TEGRA_IO_PAD_UART, .dpd = 14, .voltage = UINT_MAX },
1839 { .id = TEGRA_IO_PAD_AUDIO, .dpd = 17, .voltage = UINT_MAX },
1840 { .id = TEGRA_IO_PAD_HSIC, .dpd = 19, .voltage = UINT_MAX },
1841 { .id = TEGRA_IO_PAD_DBG, .dpd = 25, .voltage = UINT_MAX },
1842 { .id = TEGRA_IO_PAD_HDMI_DP0, .dpd = 28, .voltage = UINT_MAX },
1843 { .id = TEGRA_IO_PAD_HDMI_DP1, .dpd = 29, .voltage = UINT_MAX },
1844 { .id = TEGRA_IO_PAD_PEX_CNTRL, .dpd = 32, .voltage = UINT_MAX },
1845 { .id = TEGRA_IO_PAD_SDMMC2_HV, .dpd = 34, .voltage = UINT_MAX },
1846 { .id = TEGRA_IO_PAD_SDMMC4, .dpd = 36, .voltage = UINT_MAX },
1847 { .id = TEGRA_IO_PAD_CAM, .dpd = 38, .voltage = UINT_MAX },
1848 { .id = TEGRA_IO_PAD_DSIB, .dpd = 40, .voltage = UINT_MAX },
1849 { .id = TEGRA_IO_PAD_DSIC, .dpd = 41, .voltage = UINT_MAX },
1850 { .id = TEGRA_IO_PAD_DSID, .dpd = 42, .voltage = UINT_MAX },
1851 { .id = TEGRA_IO_PAD_CSIC, .dpd = 43, .voltage = UINT_MAX },
1852 { .id = TEGRA_IO_PAD_CSID, .dpd = 44, .voltage = UINT_MAX },
1853 { .id = TEGRA_IO_PAD_CSIE, .dpd = 45, .voltage = UINT_MAX },
1854 { .id = TEGRA_IO_PAD_CSIF, .dpd = 46, .voltage = UINT_MAX },
1855 { .id = TEGRA_IO_PAD_SPI, .dpd = 47, .voltage = UINT_MAX },
1856 { .id = TEGRA_IO_PAD_UFS, .dpd = 49, .voltage = UINT_MAX },
1857 { .id = TEGRA_IO_PAD_DMIC_HV, .dpd = 52, .voltage = UINT_MAX },
1858 { .id = TEGRA_IO_PAD_EDP, .dpd = 53, .voltage = UINT_MAX },
1859 { .id = TEGRA_IO_PAD_SDMMC1_HV, .dpd = 55, .voltage = UINT_MAX },
1860 { .id = TEGRA_IO_PAD_SDMMC3_HV, .dpd = 56, .voltage = UINT_MAX },
1861 { .id = TEGRA_IO_PAD_CONN, .dpd = 60, .voltage = UINT_MAX },
1862 { .id = TEGRA_IO_PAD_AUDIO_HV, .dpd = 61, .voltage = UINT_MAX },
1863};
1864
1865static const struct tegra_pmc_regs tegra186_pmc_regs = {
1866 .scratch0 = 0x2000,
1867 .dpd_req = 0x74,
1868 .dpd_status = 0x78,
1869 .dpd2_req = 0x7c,
1870 .dpd2_status = 0x80,
1871};
1872
1873static void tegra186_pmc_setup_irq_polarity(struct tegra_pmc *pmc,
1874 struct device_node *np,
1875 bool invert)
1876{
1877 struct resource regs;
1878 void __iomem *wake;
1879 u32 value;
1880 int index;
1881
1882 index = of_property_match_string(np, "reg-names", "wake");
1883 if (index < 0) {
1884 pr_err("failed to find PMC wake registers\n");
1885 return;
1886 }
1887
1888 of_address_to_resource(np, index, &regs);
1889
1890 wake = ioremap_nocache(regs.start, resource_size(&regs));
1891 if (!wake) {
1892 pr_err("failed to map PMC wake registers\n");
1893 return;
1894 }
1895
1896 value = readl(wake + WAKE_AOWAKE_CTRL);
1897
1898 if (invert)
1899 value |= WAKE_AOWAKE_CTRL_INTR_POLARITY;
1900 else
1901 value &= ~WAKE_AOWAKE_CTRL_INTR_POLARITY;
1902
1903 writel(value, wake + WAKE_AOWAKE_CTRL);
1904
1905 iounmap(wake);
1906}
1907
1908static const struct tegra_pmc_soc tegra186_pmc_soc = {
1909 .num_powergates = 0,
1910 .powergates = NULL,
1911 .num_cpu_powergates = 0,
1912 .cpu_powergates = NULL,
1913 .has_tsense_reset = false,
1914 .has_gpu_clamps = false,
1915 .num_io_pads = ARRAY_SIZE(tegra186_io_pads),
1916 .io_pads = tegra186_io_pads,
1917 .regs = &tegra186_pmc_regs,
1918 .init = NULL,
1919 .setup_irq_polarity = tegra186_pmc_setup_irq_polarity,
1717}; 1920};
1718 1921
1719static const struct of_device_id tegra_pmc_match[] = { 1922static const struct of_device_id tegra_pmc_match[] = {
1923 { .compatible = "nvidia,tegra186-pmc", .data = &tegra186_pmc_soc },
1720 { .compatible = "nvidia,tegra210-pmc", .data = &tegra210_pmc_soc }, 1924 { .compatible = "nvidia,tegra210-pmc", .data = &tegra210_pmc_soc },
1721 { .compatible = "nvidia,tegra132-pmc", .data = &tegra124_pmc_soc }, 1925 { .compatible = "nvidia,tegra132-pmc", .data = &tegra124_pmc_soc },
1722 { .compatible = "nvidia,tegra124-pmc", .data = &tegra124_pmc_soc }, 1926 { .compatible = "nvidia,tegra124-pmc", .data = &tegra124_pmc_soc },
@@ -1749,7 +1953,6 @@ static int __init tegra_pmc_early_init(void)
1749 struct device_node *np; 1953 struct device_node *np;
1750 struct resource regs; 1954 struct resource regs;
1751 bool invert; 1955 bool invert;
1752 u32 value;
1753 1956
1754 mutex_init(&pmc->powergates_lock); 1957 mutex_init(&pmc->powergates_lock);
1755 1958
@@ -1810,14 +2013,7 @@ static int __init tegra_pmc_early_init(void)
1810 */ 2013 */
1811 invert = of_property_read_bool(np, "nvidia,invert-interrupt"); 2014 invert = of_property_read_bool(np, "nvidia,invert-interrupt");
1812 2015
1813 value = tegra_pmc_readl(PMC_CNTRL); 2016 pmc->soc->setup_irq_polarity(pmc, np, invert);
1814
1815 if (invert)
1816 value |= PMC_CNTRL_INTR_POLARITY;
1817 else
1818 value &= ~PMC_CNTRL_INTR_POLARITY;
1819
1820 tegra_pmc_writel(value, PMC_CNTRL);
1821 2017
1822 of_node_put(np); 2018 of_node_put(np);
1823 } 2019 }
diff --git a/include/linux/i2c/pxa-i2c.h b/include/linux/platform_data/i2c-pxa.h
index 53aab243cbd8..5236f216dfae 100644
--- a/include/linux/i2c/pxa-i2c.h
+++ b/include/linux/platform_data/i2c-pxa.h
@@ -71,15 +71,4 @@ struct i2c_pxa_platform_data {
71 unsigned char master_code; 71 unsigned char master_code;
72 unsigned long rate; 72 unsigned long rate;
73}; 73};
74
75extern void pxa_set_i2c_info(struct i2c_pxa_platform_data *info);
76
77#ifdef CONFIG_PXA27x
78extern void pxa27x_set_i2c_power_info(struct i2c_pxa_platform_data *info);
79#endif
80
81#ifdef CONFIG_PXA3xx
82extern void pxa3xx_set_i2c_power_info(struct i2c_pxa_platform_data *info);
83#endif
84
85#endif 74#endif
diff --git a/include/linux/soc/mediatek/infracfg.h b/include/linux/soc/mediatek/infracfg.h
index e8d9f0d52933..b0a507d356ef 100644
--- a/include/linux/soc/mediatek/infracfg.h
+++ b/include/linux/soc/mediatek/infracfg.h
@@ -28,7 +28,8 @@
28#define MT7622_TOP_AXI_PROT_EN_WB (BIT(2) | BIT(6) | \ 28#define MT7622_TOP_AXI_PROT_EN_WB (BIT(2) | BIT(6) | \
29 BIT(7) | BIT(8)) 29 BIT(7) | BIT(8))
30 30
31int mtk_infracfg_set_bus_protection(struct regmap *infracfg, u32 mask); 31int mtk_infracfg_set_bus_protection(struct regmap *infracfg, u32 mask,
32int mtk_infracfg_clear_bus_protection(struct regmap *infracfg, u32 mask); 32 bool reg_update);
33 33int mtk_infracfg_clear_bus_protection(struct regmap *infracfg, u32 mask,
34 bool reg_update);
34#endif /* __SOC_MEDIATEK_INFRACFG_H */ 35#endif /* __SOC_MEDIATEK_INFRACFG_H */
diff --git a/include/soc/tegra/pmc.h b/include/soc/tegra/pmc.h
index 1c3982bc558f..c32bf91c23e6 100644
--- a/include/soc/tegra/pmc.h
+++ b/include/soc/tegra/pmc.h
@@ -83,6 +83,7 @@ enum tegra_io_pad {
83 TEGRA_IO_PAD_BB, 83 TEGRA_IO_PAD_BB,
84 TEGRA_IO_PAD_CAM, 84 TEGRA_IO_PAD_CAM,
85 TEGRA_IO_PAD_COMP, 85 TEGRA_IO_PAD_COMP,
86 TEGRA_IO_PAD_CONN,
86 TEGRA_IO_PAD_CSIA, 87 TEGRA_IO_PAD_CSIA,
87 TEGRA_IO_PAD_CSIB, 88 TEGRA_IO_PAD_CSIB,
88 TEGRA_IO_PAD_CSIC, 89 TEGRA_IO_PAD_CSIC,
@@ -92,31 +93,42 @@ enum tegra_io_pad {
92 TEGRA_IO_PAD_DBG, 93 TEGRA_IO_PAD_DBG,
93 TEGRA_IO_PAD_DEBUG_NONAO, 94 TEGRA_IO_PAD_DEBUG_NONAO,
94 TEGRA_IO_PAD_DMIC, 95 TEGRA_IO_PAD_DMIC,
96 TEGRA_IO_PAD_DMIC_HV,
95 TEGRA_IO_PAD_DP, 97 TEGRA_IO_PAD_DP,
96 TEGRA_IO_PAD_DSI, 98 TEGRA_IO_PAD_DSI,
97 TEGRA_IO_PAD_DSIB, 99 TEGRA_IO_PAD_DSIB,
98 TEGRA_IO_PAD_DSIC, 100 TEGRA_IO_PAD_DSIC,
99 TEGRA_IO_PAD_DSID, 101 TEGRA_IO_PAD_DSID,
102 TEGRA_IO_PAD_EDP,
100 TEGRA_IO_PAD_EMMC, 103 TEGRA_IO_PAD_EMMC,
101 TEGRA_IO_PAD_EMMC2, 104 TEGRA_IO_PAD_EMMC2,
102 TEGRA_IO_PAD_GPIO, 105 TEGRA_IO_PAD_GPIO,
103 TEGRA_IO_PAD_HDMI, 106 TEGRA_IO_PAD_HDMI,
107 TEGRA_IO_PAD_HDMI_DP0,
108 TEGRA_IO_PAD_HDMI_DP1,
104 TEGRA_IO_PAD_HSIC, 109 TEGRA_IO_PAD_HSIC,
105 TEGRA_IO_PAD_HV, 110 TEGRA_IO_PAD_HV,
106 TEGRA_IO_PAD_LVDS, 111 TEGRA_IO_PAD_LVDS,
107 TEGRA_IO_PAD_MIPI_BIAS, 112 TEGRA_IO_PAD_MIPI_BIAS,
108 TEGRA_IO_PAD_NAND, 113 TEGRA_IO_PAD_NAND,
109 TEGRA_IO_PAD_PEX_BIAS, 114 TEGRA_IO_PAD_PEX_BIAS,
115 TEGRA_IO_PAD_PEX_CLK_BIAS,
110 TEGRA_IO_PAD_PEX_CLK1, 116 TEGRA_IO_PAD_PEX_CLK1,
111 TEGRA_IO_PAD_PEX_CLK2, 117 TEGRA_IO_PAD_PEX_CLK2,
118 TEGRA_IO_PAD_PEX_CLK3,
112 TEGRA_IO_PAD_PEX_CNTRL, 119 TEGRA_IO_PAD_PEX_CNTRL,
113 TEGRA_IO_PAD_SDMMC1, 120 TEGRA_IO_PAD_SDMMC1,
121 TEGRA_IO_PAD_SDMMC1_HV,
122 TEGRA_IO_PAD_SDMMC2,
123 TEGRA_IO_PAD_SDMMC2_HV,
114 TEGRA_IO_PAD_SDMMC3, 124 TEGRA_IO_PAD_SDMMC3,
125 TEGRA_IO_PAD_SDMMC3_HV,
115 TEGRA_IO_PAD_SDMMC4, 126 TEGRA_IO_PAD_SDMMC4,
116 TEGRA_IO_PAD_SPI, 127 TEGRA_IO_PAD_SPI,
117 TEGRA_IO_PAD_SPI_HV, 128 TEGRA_IO_PAD_SPI_HV,
118 TEGRA_IO_PAD_SYS_DDC, 129 TEGRA_IO_PAD_SYS_DDC,
119 TEGRA_IO_PAD_UART, 130 TEGRA_IO_PAD_UART,
131 TEGRA_IO_PAD_UFS,
120 TEGRA_IO_PAD_USB0, 132 TEGRA_IO_PAD_USB0,
121 TEGRA_IO_PAD_USB1, 133 TEGRA_IO_PAD_USB1,
122 TEGRA_IO_PAD_USB2, 134 TEGRA_IO_PAD_USB2,