[PATCH 00/19] ARM: SAMSUNG: S5PV210 platform clean-up

Tomasz Figa
2014-07-04T17:53:40Z

Aha, I forgot to add that the series is based on Kukjin's for-next
branch with "pwm: samsung: remove s5pc100 related pwm codes" patch
reverted and you can find a ready branch here:

https://github.com/tom3q/linux.git v3.17-s5pv210-dt

Sorry for the noise.

Best regards,
Tomasz

On 04.07.2014 19:48, Tomasz Figa wrote:
> This huge series is a (hopefully final) attempt to convert Samsung S5PV210
> into a DT-only and multiplatform-aware platform. It consists of several
> steps to gradually replace legacy code with one meeting current standards
> and then finally remove unused remnants.
>
> Patches 1-6 migrate the platform to fully use the Common Clock Framework
> and get rid of legacy private clock code, of which s5pv210 was the last
> user. Then patch 7 adds generic PHY driver for USB PHY on S5PV210 to allow
> USB to be supported when using DT. Further three patches (8-10) add DT
> support for mach-s5pv210 and necessary DT sources for currently supported
> boards. Patch 11 removes board files and code directly related to them,
> effectively making s5pv210 a DT-only platform. In next step, patches 12-15
> prepare remaining code for multiplatform enablement, which is finally done
> in patch 16. Patches 17-19 are a final clean-up, which remove a lot of
> unused code left after making the last S5P platform DT-only.
>
> Build tested patch by patch on following configs:
> - s3c2410_defconfig (with DT support enabled),
> - s3c6400_defconfig (with DT support enabled),
> - s5pv210_defconfig (with DT support enabled after patches adding it),
> - exynos_defconfig,
> - exynos_defconfig with S5PV210 enabled in multiplatform configuration.
>
> Boot tested on s5pv210-goni board.
>
> Note that support for smdkc110, smdkv210 and torbreck boards is provided
> by moving data from existing board files to new device tree sources. No
> testing was performed due to mentioned board not being available anymore.
> However I believe we agreed on this approach, because apparently there
> are no active users of them. See the RFC from August 2013 asking for
> removal of the whole platform [1].
>
> [1] http://www.mail-archive.com/linux-samsung-soc%40vger.kernel.org/msg21882.html
>
> Mateusz Krawczuk (6):
> clk: samsung: Add clock driver for S5PV210 and compatible SoCs
> ARM: s5pv210: Migrate clock handling to Common Clock Framework
> phy: Add support for S5PV210 to the Exynos USB 2.0 PHY driver
> ARM: s5pv210: Add board file for boot using Device Tree
> ARM: Samsung: DT: Add Device tree for s5pv210
> ARM: Samsung: DT: Add Device tree for S5PC110/S5PV210 Boards
>
> Tomasz Figa (13):
> cpufreq: s3c24xx: Remove some dead code
> serial: samsung: Remove support for legacy clock code
> ARM: SAMSUNG: Remove legacy clock code
> clk: samsung: Add S5PV210 Audio Subsystem clock driver
> ARM: S5PV210: Remove support for board files
> ARM: S5PV210: Untie PM support from legacy code
> ARM: s5pv210: move debug-macro.S into the common space
> ARM: s5pv210: Register cpufreq platform device
> cpufreq: s5pv210: Make the driver multiplatform aware
> ARM: s5pv210: Enable multi-platform build support
> gpio: samsung: Remove legacy support of S5PV210
> ARM: SAMSUNG: Remove remaining legacy code
> clk: samsung: s5pv210: Remove legacy board support
>
> .../bindings/clock/clk-s5pv210-audss.txt | 53 +
> .../bindings/clock/samsung,s5pv210-clock.txt | 78 ++
> .../devicetree/bindings/phy/samsung-phy.txt | 1 +
> arch/arm/Kconfig | 22 +-
> arch/arm/Kconfig.debug | 12 +-
> arch/arm/Makefile | 4 +-
> arch/arm/boot/dts/Makefile | 5 +
> arch/arm/boot/dts/s5pv210-aquila.dts | 392 ++++++
> arch/arm/boot/dts/s5pv210-goni.dts | 449 +++++++
> arch/arm/boot/dts/s5pv210-pinctrl.dtsi | 839 ++++++++++++
> arch/arm/boot/dts/s5pv210-smdkc110.dts | 78 ++
> arch/arm/boot/dts/s5pv210-smdkv210.dts | 238 ++++
> arch/arm/boot/dts/s5pv210-torbreck.dts | 92 ++
> arch/arm/boot/dts/s5pv210.dtsi | 633 +++++++++
> arch/arm/include/debug/s5pv210.S | 34 +
> arch/arm/mach-exynos/pm.c | 1 -
> arch/arm/mach-s3c24xx/common.c | 2 -
> arch/arm/mach-s3c24xx/iotiming-s3c2412.c | 1 -
> arch/arm/mach-s3c24xx/mach-h1940.c | 5 +-
> arch/arm/mach-s3c24xx/mach-jive.c | 1 -
> arch/arm/mach-s3c24xx/mach-smdk2413.c | 1 -
> arch/arm/mach-s3c24xx/mach-smdk2416.c | 1 -
> arch/arm/mach-s3c24xx/mach-smdk2443.c | 1 -
> arch/arm/mach-s3c24xx/mach-vstms.c | 1 -
> arch/arm/mach-s3c24xx/s3c2410.c | 6 -
> arch/arm/mach-s3c24xx/s3c2412.c | 6 -
> arch/arm/mach-s3c24xx/s3c2442.c | 1 -
> arch/arm/mach-s3c24xx/s3c244x.c | 6 -
> arch/arm/mach-s3c64xx/mach-anw6410.c | 1 -
> arch/arm/mach-s3c64xx/mach-crag6410.c | 1 -
> arch/arm/mach-s3c64xx/mach-hmt.c | 1 -
> arch/arm/mach-s3c64xx/mach-ncp.c | 1 -
> arch/arm/mach-s3c64xx/mach-smartq.c | 1 -
> arch/arm/mach-s3c64xx/mach-smdk6400.c | 1 -
> arch/arm/mach-s3c64xx/mach-smdk6410.c | 1 -
> arch/arm/mach-s3c64xx/s3c6400.c | 1 -
> arch/arm/mach-s3c64xx/s3c6410.c | 1 -
> arch/arm/mach-s5pv210/Kconfig | 197 +--
> arch/arm/mach-s5pv210/Makefile | 29 +-
> arch/arm/mach-s5pv210/Makefile.boot | 2 -
> arch/arm/mach-s5pv210/clock.c | 1365 --------------------
> arch/arm/mach-s5pv210/common.c | 279 ----
> arch/arm/mach-s5pv210/common.h | 21 +-
> arch/arm/mach-s5pv210/dev-audio.c | 246 ----
> arch/arm/mach-s5pv210/dma.c | 130 --
> arch/arm/mach-s5pv210/include/mach/debug-macro.S | 41 -
> arch/arm/mach-s5pv210/include/mach/dma.h | 26 -
> arch/arm/mach-s5pv210/include/mach/gpio.h | 140 --
> arch/arm/mach-s5pv210/include/mach/hardware.h | 18 -
> arch/arm/mach-s5pv210/include/mach/irqs.h | 137 --
> arch/arm/mach-s5pv210/include/mach/map.h | 158 ---
> arch/arm/mach-s5pv210/include/mach/memory.h | 27 -
> arch/arm/mach-s5pv210/include/mach/pm-core.h | 46 -
> arch/arm/mach-s5pv210/include/mach/regs-clock.h | 2 +-
> arch/arm/mach-s5pv210/include/mach/regs-gpio.h | 41 -
> arch/arm/mach-s5pv210/include/mach/regs-irq.h | 18 -
> arch/arm/mach-s5pv210/mach-aquila.c | 687 ----------
> arch/arm/mach-s5pv210/mach-goni.c | 916 -------------
> arch/arm/mach-s5pv210/mach-smdkc110.c | 159 ---
> arch/arm/mach-s5pv210/mach-smdkv210.c | 337 -----
> arch/arm/mach-s5pv210/mach-torbreck.c | 135 --
> arch/arm/mach-s5pv210/pm.c | 147 ++-
> arch/arm/mach-s5pv210/s5pv210.c | 77 ++
> arch/arm/mach-s5pv210/setup-fb-24bpp.c | 49 -
> arch/arm/mach-s5pv210/setup-fimc.c | 43 -
> arch/arm/mach-s5pv210/setup-i2c0.c | 28 -
> arch/arm/mach-s5pv210/setup-i2c1.c | 28 -
> arch/arm/mach-s5pv210/setup-i2c2.c | 28 -
> arch/arm/mach-s5pv210/setup-ide.c | 39 -
> arch/arm/mach-s5pv210/setup-keypad.c | 24 -
> arch/arm/mach-s5pv210/setup-sdhci-gpio.c | 103 --
> arch/arm/mach-s5pv210/setup-spi.c | 34 -
> arch/arm/mach-s5pv210/setup-usb-phy.c | 95 --
> arch/arm/mach-s5pv210/sleep.S | 36 +
> arch/arm/plat-samsung/Kconfig | 143 +-
> arch/arm/plat-samsung/Makefile | 15 -
> arch/arm/plat-samsung/clock-clksrc.c | 212 ---
> arch/arm/plat-samsung/clock.c | 539 --------
> arch/arm/plat-samsung/cpu.c | 3 +-
> arch/arm/plat-samsung/devs.c | 330 -----
> arch/arm/plat-samsung/include/plat/camport.h | 28 -
> arch/arm/plat-samsung/include/plat/clock-clksrc.h | 83 --
> arch/arm/plat-samsung/include/plat/clock.h | 152 ---
> arch/arm/plat-samsung/include/plat/cpu-freq-core.h | 3 -
> arch/arm/plat-samsung/include/plat/cpu.h | 13 -
> arch/arm/plat-samsung/include/plat/devs.h | 42 -
> arch/arm/plat-samsung/include/plat/fb-core.h | 15 -
> arch/arm/plat-samsung/include/plat/fb.h | 22 -
> arch/arm/plat-samsung/include/plat/fimc-core.h | 51 -
> arch/arm/plat-samsung/include/plat/gpio-cfg.h | 64 -
> arch/arm/plat-samsung/include/plat/hdmi.h | 16 -
> arch/arm/plat-samsung/include/plat/irqs.h | 72 --
> arch/arm/plat-samsung/include/plat/mfc.h | 35 -
> arch/arm/plat-samsung/include/plat/pll.h | 323 -----
> arch/arm/plat-samsung/include/plat/s5p-clock.h | 65 -
> arch/arm/plat-samsung/include/plat/sdhci.h | 47 -
> arch/arm/plat-samsung/include/plat/tv-core.h | 44 -
> arch/arm/plat-samsung/init.c | 1 -
> arch/arm/plat-samsung/pm-gpio.c | 4 +-
> arch/arm/plat-samsung/s5p-clock.c | 294 -----
> arch/arm/plat-samsung/s5p-dev-mfc.c | 81 +-
> arch/arm/plat-samsung/s5p-dev-uart.c | 88 --
> arch/arm/plat-samsung/s5p-irq-eint.c | 221 ----
> arch/arm/plat-samsung/s5p-irq-gpioint.c | 218 ----
> arch/arm/plat-samsung/s5p-irq-pm.c | 92 --
> arch/arm/plat-samsung/s5p-irq.c | 31 -
> arch/arm/plat-samsung/s5p-pm.c | 40 -
> arch/arm/plat-samsung/s5p-sleep.S | 45 -
> drivers/clk/samsung/Makefile | 1 +
> drivers/clk/samsung/clk-s5pv210-audss.c | 241 ++++
> drivers/clk/samsung/clk-s5pv210.c | 856 ++++++++++++
> drivers/cpufreq/s3c2410-cpufreq.c | 2 -
> drivers/cpufreq/s3c2412-cpufreq.c | 3 -
> drivers/cpufreq/s3c2440-cpufreq.c | 3 -
> drivers/cpufreq/s3c24xx-cpufreq.c | 1 -
> drivers/cpufreq/s5pv210-cpufreq.c | 131 +-
> drivers/gpio/gpio-samsung.c | 240 ----
> drivers/phy/Kconfig | 10 +
> drivers/phy/Makefile | 1 +
> drivers/phy/phy-s5pv210-usb2.c | 187 +++
> drivers/phy/phy-samsung-usb2.c | 6 +
> drivers/phy/phy-samsung-usb2.h | 1 +
> drivers/tty/serial/samsung.c | 4 -
> include/dt-bindings/clock/s5pv210-audss.h | 34 +
> include/dt-bindings/clock/s5pv210.h | 239 ++++
> 125 files changed, 4843 insertions(+), 9409 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/clock/clk-s5pv210-audss.txt
> create mode 100644 Documentation/devicetree/bindings/clock/samsung,s5pv210-clock.txt
> create mode 100644 arch/arm/boot/dts/s5pv210-aquila.dts
> create mode 100644 arch/arm/boot/dts/s5pv210-goni.dts
> create mode 100644 arch/arm/boot/dts/s5pv210-pinctrl.dtsi
> create mode 100644 arch/arm/boot/dts/s5pv210-smdkc110.dts
> create mode 100644 arch/arm/boot/dts/s5pv210-smdkv210.dts
> create mode 100644 arch/arm/boot/dts/s5pv210-torbreck.dts
> create mode 100644 arch/arm/boot/dts/s5pv210.dtsi
> create mode 100644 arch/arm/include/debug/s5pv210.S
> delete mode 100644 arch/arm/mach-s5pv210/Makefile.boot
> delete mode 100644 arch/arm/mach-s5pv210/clock.c
> delete mode 100644 arch/arm/mach-s5pv210/common.c
> delete mode 100644 arch/arm/mach-s5pv210/dev-audio.c
> delete mode 100644 arch/arm/mach-s5pv210/dma.c
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/debug-macro.S
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/dma.h
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/gpio.h
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/hardware.h
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/irqs.h
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/map.h
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/memory.h
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/pm-core.h
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/regs-gpio.h
> delete mode 100644 arch/arm/mach-s5pv210/include/mach/regs-irq.h
> delete mode 100644 arch/arm/mach-s5pv210/mach-aquila.c
> delete mode 100644 arch/arm/mach-s5pv210/mach-goni.c
> delete mode 100644 arch/arm/mach-s5pv210/mach-smdkc110.c
> delete mode 100644 arch/arm/mach-s5pv210/mach-smdkv210.c
> delete mode 100644 arch/arm/mach-s5pv210/mach-torbreck.c
> create mode 100644 arch/arm/mach-s5pv210/s5pv210.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-fb-24bpp.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-fimc.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-i2c0.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-i2c1.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-i2c2.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-ide.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-keypad.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-sdhci-gpio.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-spi.c
> delete mode 100644 arch/arm/mach-s5pv210/setup-usb-phy.c
> create mode 100644 arch/arm/mach-s5pv210/sleep.S
> delete mode 100644 arch/arm/plat-samsung/clock-clksrc.c
> delete mode 100644 arch/arm/plat-samsung/clock.c
> delete mode 100644 arch/arm/plat-samsung/include/plat/camport.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/clock-clksrc.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/clock.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/fimc-core.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/hdmi.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/irqs.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/mfc.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/pll.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/s5p-clock.h
> delete mode 100644 arch/arm/plat-samsung/include/plat/tv-core.h
> delete mode 100644 arch/arm/plat-samsung/s5p-clock.c
> delete mode 100644 arch/arm/plat-samsung/s5p-dev-uart.c
> delete mode 100644 arch/arm/plat-samsung/s5p-irq-eint.c
> delete mode 100644 arch/arm/plat-samsung/s5p-irq-gpioint.c
> delete mode 100644 arch/arm/plat-samsung/s5p-irq-pm.c
> delete mode 100644 arch/arm/plat-samsung/s5p-irq.c
> delete mode 100644 arch/arm/plat-samsung/s5p-pm.c
> delete mode 100644 arch/arm/plat-samsung/s5p-sleep.S
> create mode 100644 drivers/clk/samsung/clk-s5pv210-audss.c
> create mode 100644 drivers/clk/samsung/clk-s5pv210.c
> create mode 100644 drivers/phy/phy-s5pv210-usb2.c
> create mode 100644 include/dt-bindings/clock/s5pv210-audss.h
> create mode 100644 include/dt-bindings/clock/s5pv210.h
>