From: Arnd Bergmann <[email protected]>
The s3c24xx platform was marked as deprecated a while ago,
and for the s3c64xx platform, we marked all except one legacy
board file as unused.
This series removes all of those, leaving only s3c64xx support
for DT based boots as well as the cragg6410 board file.
About half of the s3c specific drivers were only used on
the now removed machines, so these drivers can be retired
as well. I can either merge the driver removal patches through
the soc tree along with the board file patches, or subsystem
maintainers can pick them up into their own trees, whichever
they prefer.
Arnd Bergmann (21):
ARM: s3c: remove all s3c24xx support
ARM: s3c: remove s3c24xx specific hacks
ARM: s3c: remove most s3c64xx board support
ARM: s3c: remove adc.c
ARM: s3c: simplify platform code
ARM: s3c: remove s3c6400 support
power: remove s3c adc battery driver
hwmon: remove s3c driver
pata: remove samsung_cf driver
mmc: remove s3cmci driver
clk: remove s3c24xx driver
leds: remove s3c24xx driver
usb: gadget: remove s3c24xx drivers
dmaengine: remove s3c24xx driver
cpufreq: remove s3c24xx drivers
fbdev: remove s3c2410 framebuffer
input: remove s3c24xx touchscreen driver
pinctrl: remove s3c24xx driver
spi: remove s3c24xx driver
soc: s3c: remove pm-debug hack
ASoC: samsung: remove unused drivers
Cc: Krzysztof Kozlowski <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Simtec Linux Team <[email protected]>
Bcc: Alim Akhtar <[email protected]>
Bcc: Rob Herring <[email protected]>
Bcc: Damien Le Moal <[email protected]>
Bcc: Sergey Shtylyov <[email protected]>
Bcc: Sylwester Nawrocki <[email protected]>
Bcc: Tomasz Figa <[email protected]>
Bcc: Chanwoo Choi <[email protected]>
Bcc: Michael Turquette <[email protected]>
Bcc: Stephen Boyd <[email protected]>
Bcc: Daniel Lezcano <[email protected]>
Bcc: Thomas Gleixner <[email protected]>
Bcc: "Rafael J. Wysocki" <[email protected]>
Bcc: Viresh Kumar <[email protected]>
Bcc: Vinod Koul <[email protected]>
Bcc: Jean Delvare <[email protected]>
Bcc: Guenter Roeck <[email protected]>
Bcc: Jonathan Cameron <[email protected]>
Bcc: Lars-Peter Clausen <[email protected]>
Bcc: Dmitry Torokhov <[email protected]>
Bcc: Pavel Machek <[email protected]>
Bcc: Mauro Carvalho Chehab <[email protected]>
Bcc: Ulf Hansson <[email protected]>
Bcc: Miquel Raynal <[email protected]>
Bcc: Richard Weinberger <[email protected]>
Bcc: Vignesh Raghavendra <[email protected]>
Bcc: Linus Walleij <[email protected]>
Bcc: Sebastian Reichel <[email protected]>
Bcc: Alexandre Belloni <[email protected]>
Bcc: Mark Brown <[email protected]>
Bcc: Greg Kroah-Hartman <[email protected]>
Bcc: Jiri Slaby <[email protected]>
Bcc: Felipe Balbi <[email protected]>
Bcc: Helge Deller <[email protected]>
Bcc: Wim Van Sebroeck <[email protected]>
Bcc: Liam Girdwood <[email protected]>
Bcc: Thierry Reding <[email protected]>
Bcc: "Uwe Kleine-König" <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Documentation/arm/index.rst | 1 -
Documentation/arm/samsung-s3c24xx/cpufreq.rst | 77 -
.../arm/samsung-s3c24xx/eb2410itx.rst | 59 -
Documentation/arm/samsung-s3c24xx/gpio.rst | 172 --
Documentation/arm/samsung-s3c24xx/h1940.rst | 41 -
Documentation/arm/samsung-s3c24xx/index.rst | 20 -
Documentation/arm/samsung-s3c24xx/nand.rst | 30 -
.../arm/samsung-s3c24xx/overview.rst | 311 ---
Documentation/arm/samsung-s3c24xx/s3c2412.rst | 121 -
Documentation/arm/samsung-s3c24xx/s3c2413.rst | 22 -
.../arm/samsung-s3c24xx/smdk2440.rst | 57 -
Documentation/arm/samsung-s3c24xx/suspend.rst | 137 --
.../arm/samsung-s3c24xx/usb-host.rst | 91 -
Documentation/arm/samsung/overview.rst | 13 -
MAINTAINERS | 31 -
arch/arm/Kconfig | 3 +-
arch/arm/Kconfig.debug | 58 +-
arch/arm/Makefile | 2 -
arch/arm/boot/dts/Makefile | 2 -
arch/arm/boot/dts/s3c2410-pinctrl.h | 19 -
arch/arm/boot/dts/s3c2416-pinctrl.dtsi | 172 --
arch/arm/boot/dts/s3c2416-smdk2416.dts | 77 -
arch/arm/boot/dts/s3c2416.dtsi | 124 --
arch/arm/boot/dts/s3c24xx.dtsi | 92 -
arch/arm/configs/mini2440_defconfig | 338 ---
arch/arm/configs/s3c2410_defconfig | 437 ----
arch/arm/configs/tct_hammer_defconfig | 58 -
arch/arm/include/debug/s3c24xx.S | 10 -
arch/arm/mach-s3c/Kconfig | 92 +-
arch/arm/mach-s3c/Kconfig.s3c24xx | 604 -----
arch/arm/mach-s3c/Kconfig.s3c64xx | 212 --
arch/arm/mach-s3c/Makefile | 12 -
arch/arm/mach-s3c/Makefile.s3c24xx | 102 -
arch/arm/mach-s3c/Makefile.s3c64xx | 15 -
arch/arm/mach-s3c/adc-core.h | 24 -
arch/arm/mach-s3c/adc.c | 510 -----
arch/arm/mach-s3c/anubis.h | 50 -
arch/arm/mach-s3c/ata-core-s3c64xx.h | 24 -
arch/arm/mach-s3c/backlight-s3c64xx.h | 22 -
arch/arm/mach-s3c/bast-ide.c | 82 -
arch/arm/mach-s3c/bast-irq.c | 137 --
arch/arm/mach-s3c/bast.h | 194 --
arch/arm/mach-s3c/common-smdk-s3c24xx.c | 228 --
arch/arm/mach-s3c/common-smdk-s3c24xx.h | 11 -
arch/arm/mach-s3c/cpu.h | 47 -
arch/arm/mach-s3c/cpufreq-utils-s3c24xx.c | 94 -
arch/arm/mach-s3c/dev-audio-s3c64xx.c | 127 --
arch/arm/mach-s3c/dev-backlight-s3c64xx.c | 137 --
arch/arm/mach-s3c/devs.c | 726 ------
arch/arm/mach-s3c/devs.h | 37 -
arch/arm/mach-s3c/dma-s3c24xx.h | 51 -
arch/arm/mach-s3c/dma-s3c64xx.h | 57 -
arch/arm/mach-s3c/dma.h | 9 -
arch/arm/mach-s3c/fb-core-s3c24xx.h | 24 -
arch/arm/mach-s3c/gpio-cfg-helpers.h | 124 --
arch/arm/mach-s3c/gpio-cfg.h | 19 -
arch/arm/mach-s3c/gpio-core.h | 3 -
arch/arm/mach-s3c/gpio-samsung-s3c24xx.h | 103 -
arch/arm/mach-s3c/gpio-samsung.c | 443 +---
arch/arm/mach-s3c/gpio-samsung.h | 7 -
arch/arm/mach-s3c/gta02.h | 20 -
arch/arm/mach-s3c/h1940-bluetooth.c | 140 --
arch/arm/mach-s3c/h1940.h | 52 -
arch/arm/mach-s3c/hardware-s3c24xx.h | 14 -
arch/arm/mach-s3c/iic-core.h | 7 -
arch/arm/mach-s3c/init.c | 26 +-
arch/arm/mach-s3c/iotiming-s3c2410.c | 472 ----
arch/arm/mach-s3c/iotiming-s3c2412.c | 278 ---
arch/arm/mach-s3c/irq-pm-s3c24xx.c | 115 -
arch/arm/mach-s3c/irq-s3c24xx-fiq-exports.c | 9 -
arch/arm/mach-s3c/irq-s3c24xx-fiq.S | 112 -
arch/arm/mach-s3c/irq-s3c24xx.c | 1352 -----------
arch/arm/mach-s3c/irqs-s3c24xx.h | 219 --
arch/arm/mach-s3c/irqs.h | 7 -
arch/arm/mach-s3c/mach-amlm5900.c | 248 ---
arch/arm/mach-s3c/mach-anubis.c | 422 ----
arch/arm/mach-s3c/mach-anw6410.c | 230 --
arch/arm/mach-s3c/mach-at2440evb.c | 233 --
arch/arm/mach-s3c/mach-bast.c | 583 -----
arch/arm/mach-s3c/mach-crag6410.c | 1 -
arch/arm/mach-s3c/mach-gta02.c | 588 -----
arch/arm/mach-s3c/mach-h1940.c | 809 -------
arch/arm/mach-s3c/mach-hmt.c | 282 ---
arch/arm/mach-s3c/mach-jive.c | 693 ------
arch/arm/mach-s3c/mach-mini2440.c | 804 -------
arch/arm/mach-s3c/mach-mini6410.c | 365 ---
arch/arm/mach-s3c/mach-n30.c | 682 ------
arch/arm/mach-s3c/mach-ncp.c | 100 -
arch/arm/mach-s3c/mach-nexcoder.c | 162 --
arch/arm/mach-s3c/mach-osiris-dvs.c | 178 --
arch/arm/mach-s3c/mach-osiris.c | 405 ----
arch/arm/mach-s3c/mach-otom.c | 124 --
arch/arm/mach-s3c/mach-qt2410.c | 375 ----
arch/arm/mach-s3c/mach-real6410.c | 333 ---
arch/arm/mach-s3c/mach-rx1950.c | 884 --------
arch/arm/mach-s3c/mach-rx3715.c | 213 --
arch/arm/mach-s3c/mach-s3c2416-dt.c | 48 -
arch/arm/mach-s3c/mach-smartq.c | 424 ----
arch/arm/mach-s3c/mach-smartq.h | 16 -
arch/arm/mach-s3c/mach-smartq5.c | 154 --
arch/arm/mach-s3c/mach-smartq7.c | 170 --
arch/arm/mach-s3c/mach-smdk2410.c | 112 -
arch/arm/mach-s3c/mach-smdk2413.c | 169 --
arch/arm/mach-s3c/mach-smdk2416.c | 248 ---
arch/arm/mach-s3c/mach-smdk2440.c | 180 --
arch/arm/mach-s3c/mach-smdk2443.c | 126 --
arch/arm/mach-s3c/mach-smdk6400.c | 90 -
arch/arm/mach-s3c/mach-smdk6410.c | 706 ------
arch/arm/mach-s3c/mach-tct_hammer.c | 157 --
arch/arm/mach-s3c/mach-vr1000.c | 364 ---
arch/arm/mach-s3c/mach-vstms.c | 166 --
arch/arm/mach-s3c/map-s3c.h | 37 -
arch/arm/mach-s3c/map-s3c24xx.h | 159 --
arch/arm/mach-s3c/map.h | 7 -
arch/arm/mach-s3c/nand-core-s3c24xx.h | 24 -
arch/arm/mach-s3c/onenand-core-s3c64xx.h | 32 -
arch/arm/mach-s3c/osiris.h | 50 -
arch/arm/mach-s3c/otom.h | 25 -
arch/arm/mach-s3c/pll-s3c2410.c | 83 -
arch/arm/mach-s3c/pll-s3c2440-12000000.c | 95 -
arch/arm/mach-s3c/pll-s3c2440-16934400.c | 122 -
arch/arm/mach-s3c/pm-core-s3c24xx.h | 96 -
arch/arm/mach-s3c/pm-core-s3c64xx.h | 17 -
arch/arm/mach-s3c/pm-core.h | 7 -
arch/arm/mach-s3c/pm-h1940.S | 19 -
arch/arm/mach-s3c/pm-s3c2410.c | 170 --
arch/arm/mach-s3c/pm-s3c2412.c | 126 --
arch/arm/mach-s3c/pm-s3c2416.c | 81 -
arch/arm/mach-s3c/pm-s3c24xx.c | 121 -
arch/arm/mach-s3c/pm-s3c64xx.c | 83 -
arch/arm/mach-s3c/pm.c | 7 +-
arch/arm/mach-s3c/pm.h | 12 -
arch/arm/mach-s3c/regs-adc.h | 64 -
arch/arm/mach-s3c/regs-clock-s3c24xx.h | 146 --
arch/arm/mach-s3c/regs-clock.h | 7 -
arch/arm/mach-s3c/regs-dsc-s3c24xx.h | 22 -
arch/arm/mach-s3c/regs-gpio-s3c24xx.h | 608 -----
arch/arm/mach-s3c/regs-gpio.h | 7 -
arch/arm/mach-s3c/regs-irq-s3c24xx.h | 51 -
arch/arm/mach-s3c/regs-irq.h | 7 -
arch/arm/mach-s3c/regs-mem-s3c24xx.h | 53 -
arch/arm/mach-s3c/regs-s3c2443-clock.h | 238 --
arch/arm/mach-s3c/regs-srom-s3c64xx.h | 55 -
arch/arm/mach-s3c/rtc-core-s3c24xx.h | 23 -
arch/arm/mach-s3c/s3c2410.c | 130 --
arch/arm/mach-s3c/s3c2412-power.h | 34 -
arch/arm/mach-s3c/s3c2412.c | 175 --
arch/arm/mach-s3c/s3c2412.h | 25 -
arch/arm/mach-s3c/s3c2416.c | 132 --
arch/arm/mach-s3c/s3c2440.c | 71 -
arch/arm/mach-s3c/s3c2442.c | 62 -
arch/arm/mach-s3c/s3c2443.c | 112 -
arch/arm/mach-s3c/s3c244x.c | 128 --
arch/arm/mach-s3c/s3c24xx.c | 687 ------
arch/arm/mach-s3c/s3c24xx.h | 124 --
arch/arm/mach-s3c/s3c6400.c | 90 -
arch/arm/mach-s3c/s3c6410.c | 9 -
arch/arm/mach-s3c/s3c64xx.c | 8 -
arch/arm/mach-s3c/sdhci.h | 25 -
arch/arm/mach-s3c/setup-i2c-s3c24xx.c | 23 -
arch/arm/mach-s3c/setup-ide-s3c64xx.c | 40 -
arch/arm/mach-s3c/setup-sdhci-gpio-s3c24xx.c | 31 -
arch/arm/mach-s3c/setup-spi-s3c24xx.c | 27 -
arch/arm/mach-s3c/setup-ts-s3c24xx.c | 29 -
arch/arm/mach-s3c/simtec-audio.c | 76 -
arch/arm/mach-s3c/simtec-nor.c | 74 -
arch/arm/mach-s3c/simtec-pm.c | 60 -
arch/arm/mach-s3c/simtec-usb.c | 125 --
arch/arm/mach-s3c/simtec.h | 17 -
arch/arm/mach-s3c/sleep-s3c2410.S | 54 -
arch/arm/mach-s3c/sleep-s3c2412.S | 53 -
arch/arm/mach-s3c/sleep-s3c24xx.S | 69 -
arch/arm/mach-s3c/sleep-s3c64xx.S | 27 -
arch/arm/mach-s3c/spi-core-s3c24xx.h | 21 -
arch/arm/mach-s3c/vr1000.h | 113 -
drivers/ata/Kconfig | 10 -
drivers/ata/Makefile | 1 -
drivers/ata/pata_samsung_cf.c | 662 ------
drivers/clk/samsung/Kconfig | 32 -
drivers/clk/samsung/Makefile | 4 -
drivers/clk/samsung/clk-s3c2410-dclk.c | 440 ----
drivers/clk/samsung/clk-s3c2410.c | 446 ----
drivers/clk/samsung/clk-s3c2412.c | 254 ---
drivers/clk/samsung/clk-s3c2443.c | 438 ----
drivers/clocksource/Kconfig | 2 +-
drivers/cpufreq/Kconfig.arm | 78 -
drivers/cpufreq/Makefile | 6 -
drivers/cpufreq/s3c2410-cpufreq.c | 155 --
drivers/cpufreq/s3c2412-cpufreq.c | 240 --
drivers/cpufreq/s3c2416-cpufreq.c | 492 ----
drivers/cpufreq/s3c2440-cpufreq.c | 321 ---
drivers/cpufreq/s3c24xx-cpufreq-debugfs.c | 163 --
drivers/cpufreq/s3c24xx-cpufreq.c | 648 ------
drivers/dma/Kconfig | 12 -
drivers/dma/Makefile | 1 -
drivers/dma/s3c24xx-dma.c | 1428 ------------
drivers/hwmon/Kconfig | 17 -
drivers/hwmon/Makefile | 1 -
drivers/hwmon/s3c-hwmon.c | 379 ----
drivers/i2c/busses/Kconfig | 3 +-
drivers/i2c/busses/i2c-s3c2410.c | 72 -
drivers/iio/adc/Kconfig | 6 +-
drivers/input/touchscreen/Kconfig | 12 -
drivers/input/touchscreen/Makefile | 1 -
drivers/input/touchscreen/s3c2410_ts.c | 464 ----
drivers/leds/Kconfig | 8 -
drivers/leds/Makefile | 1 -
drivers/leds/leds-s3c24xx.c | 83 -
.../media/platform/samsung/s3c-camif/Kconfig | 8 +-
drivers/mmc/host/Kconfig | 48 +-
drivers/mmc/host/Makefile | 1 -
drivers/mmc/host/s3cmci.c | 1777 ---------------
drivers/mmc/host/s3cmci.h | 75 -
drivers/mtd/nand/raw/Kconfig | 2 +-
drivers/mtd/nand/raw/s3c2410.c | 60 -
drivers/pinctrl/samsung/Kconfig | 5 -
drivers/pinctrl/samsung/Makefile | 1 -
drivers/pinctrl/samsung/pinctrl-s3c24xx.c | 653 ------
drivers/pinctrl/samsung/pinctrl-samsung.c | 10 -
drivers/power/supply/Kconfig | 6 -
drivers/power/supply/Makefile | 1 -
drivers/power/supply/s3c_adc_battery.c | 453 ----
drivers/rtc/Kconfig | 8 +-
drivers/soc/samsung/Kconfig | 26 +-
drivers/soc/samsung/Makefile | 1 -
drivers/soc/samsung/s3c-pm-debug.c | 79 -
drivers/spi/Kconfig | 18 -
drivers/spi/Makefile | 2 -
drivers/spi/spi-s3c24xx-regs.h | 41 -
drivers/spi/spi-s3c24xx.c | 596 -----
drivers/tty/serial/Kconfig | 8 +-
drivers/tty/serial/samsung_tty.c | 199 --
drivers/usb/gadget/udc/Kconfig | 25 -
drivers/usb/gadget/udc/Makefile | 2 -
drivers/usb/gadget/udc/s3c-hsudc.c | 1319 -----------
drivers/usb/gadget/udc/s3c2410_udc.c | 1980 -----------------
drivers/usb/gadget/udc/s3c2410_udc.h | 99 -
drivers/usb/gadget/udc/s3c2410_udc_regs.h | 146 --
drivers/usb/host/Kconfig | 8 +-
drivers/video/fbdev/Kconfig | 33 +-
drivers/video/fbdev/Makefile | 1 -
drivers/video/fbdev/s3c2410fb-regs-lcd.h | 143 --
drivers/video/fbdev/s3c2410fb.c | 1142 ----------
drivers/video/fbdev/s3c2410fb.h | 48 -
drivers/watchdog/Kconfig | 9 +-
drivers/watchdog/s3c2410_wdt.c | 84 +-
include/dt-bindings/clock/s3c2410.h | 59 -
include/dt-bindings/clock/s3c2412.h | 70 -
include/dt-bindings/clock/s3c2443.h | 91 -
include/linux/amba/pl093.h | 77 -
include/linux/clk/samsung.h | 32 -
.../linux/platform_data/asoc-s3c24xx_simtec.h | 30 -
include/linux/platform_data/ata-samsung_cf.h | 31 -
include/linux/platform_data/clk-s3c2410.h | 19 -
include/linux/platform_data/dma-s3c24xx.h | 48 -
include/linux/platform_data/fb-s3c2410.h | 99 -
include/linux/platform_data/leds-s3c24xx.h | 18 -
include/linux/platform_data/media/s5p_hdmi.h | 32 -
include/linux/platform_data/mmc-s3cmci.h | 51 -
include/linux/platform_data/s3c-hsudc.h | 33 -
include/linux/platform_data/usb-s3c2410_udc.h | 33 -
include/linux/s3c_adc_battery.h | 39 -
include/linux/soc/samsung/s3c-adc.h | 32 -
include/linux/soc/samsung/s3c-cpufreq-core.h | 299 ---
include/linux/soc/samsung/s3c-pm.h | 58 -
include/linux/spi/s3c24xx-fiq.h | 33 -
include/linux/spi/s3c24xx.h | 20 -
include/sound/s3c24xx_uda134x.h | 14 -
sound/soc/samsung/Kconfig | 93 -
sound/soc/samsung/Makefile | 26 -
sound/soc/samsung/h1940_uda1380.c | 224 --
sound/soc/samsung/jive_wm8750.c | 143 --
sound/soc/samsung/neo1973_wm8753.c | 360 ---
sound/soc/samsung/regs-i2s-v2.h | 111 -
sound/soc/samsung/regs-iis.h | 66 -
sound/soc/samsung/rx1950_uda1380.c | 245 --
sound/soc/samsung/s3c-i2s-v2.c | 670 ------
sound/soc/samsung/s3c-i2s-v2.h | 108 -
sound/soc/samsung/s3c2412-i2s.c | 251 ---
sound/soc/samsung/s3c2412-i2s.h | 22 -
sound/soc/samsung/s3c24xx-i2s.c | 463 ----
sound/soc/samsung/s3c24xx-i2s.h | 31 -
sound/soc/samsung/s3c24xx_simtec.c | 372 ----
sound/soc/samsung/s3c24xx_simtec.h | 18 -
sound/soc/samsung/s3c24xx_simtec_hermes.c | 112 -
.../soc/samsung/s3c24xx_simtec_tlv320aic23.c | 100 -
sound/soc/samsung/s3c24xx_uda134x.c | 257 ---
sound/soc/samsung/smartq_wm8987.c | 224 --
sound/soc/samsung/smdk_wm8580.c | 211 --
289 files changed, 48 insertions(+), 48148 deletions(-)
delete mode 100644 Documentation/arm/samsung-s3c24xx/cpufreq.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/eb2410itx.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/gpio.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/h1940.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/index.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/nand.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/overview.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/s3c2412.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/s3c2413.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/smdk2440.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/suspend.rst
delete mode 100644 Documentation/arm/samsung-s3c24xx/usb-host.rst
delete mode 100644 arch/arm/boot/dts/s3c2410-pinctrl.h
delete mode 100644 arch/arm/boot/dts/s3c2416-pinctrl.dtsi
delete mode 100644 arch/arm/boot/dts/s3c2416-smdk2416.dts
delete mode 100644 arch/arm/boot/dts/s3c2416.dtsi
delete mode 100644 arch/arm/boot/dts/s3c24xx.dtsi
delete mode 100644 arch/arm/configs/mini2440_defconfig
delete mode 100644 arch/arm/configs/s3c2410_defconfig
delete mode 100644 arch/arm/configs/tct_hammer_defconfig
delete mode 100644 arch/arm/mach-s3c/Kconfig.s3c24xx
delete mode 100644 arch/arm/mach-s3c/Makefile.s3c24xx
delete mode 100644 arch/arm/mach-s3c/adc-core.h
delete mode 100644 arch/arm/mach-s3c/adc.c
delete mode 100644 arch/arm/mach-s3c/anubis.h
delete mode 100644 arch/arm/mach-s3c/ata-core-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/backlight-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/bast-ide.c
delete mode 100644 arch/arm/mach-s3c/bast-irq.c
delete mode 100644 arch/arm/mach-s3c/bast.h
delete mode 100644 arch/arm/mach-s3c/common-smdk-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/common-smdk-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/cpufreq-utils-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/dev-backlight-s3c64xx.c
delete mode 100644 arch/arm/mach-s3c/dma-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/dma-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/dma.h
delete mode 100644 arch/arm/mach-s3c/fb-core-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/gpio-samsung-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/gta02.h
delete mode 100644 arch/arm/mach-s3c/h1940-bluetooth.c
delete mode 100644 arch/arm/mach-s3c/h1940.h
delete mode 100644 arch/arm/mach-s3c/hardware-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/iotiming-s3c2410.c
delete mode 100644 arch/arm/mach-s3c/iotiming-s3c2412.c
delete mode 100644 arch/arm/mach-s3c/irq-pm-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/irq-s3c24xx-fiq-exports.c
delete mode 100644 arch/arm/mach-s3c/irq-s3c24xx-fiq.S
delete mode 100644 arch/arm/mach-s3c/irq-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/irqs-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/mach-amlm5900.c
delete mode 100644 arch/arm/mach-s3c/mach-anubis.c
delete mode 100644 arch/arm/mach-s3c/mach-anw6410.c
delete mode 100644 arch/arm/mach-s3c/mach-at2440evb.c
delete mode 100644 arch/arm/mach-s3c/mach-bast.c
delete mode 100644 arch/arm/mach-s3c/mach-gta02.c
delete mode 100644 arch/arm/mach-s3c/mach-h1940.c
delete mode 100644 arch/arm/mach-s3c/mach-hmt.c
delete mode 100644 arch/arm/mach-s3c/mach-jive.c
delete mode 100644 arch/arm/mach-s3c/mach-mini2440.c
delete mode 100644 arch/arm/mach-s3c/mach-mini6410.c
delete mode 100644 arch/arm/mach-s3c/mach-n30.c
delete mode 100644 arch/arm/mach-s3c/mach-ncp.c
delete mode 100644 arch/arm/mach-s3c/mach-nexcoder.c
delete mode 100644 arch/arm/mach-s3c/mach-osiris-dvs.c
delete mode 100644 arch/arm/mach-s3c/mach-osiris.c
delete mode 100644 arch/arm/mach-s3c/mach-otom.c
delete mode 100644 arch/arm/mach-s3c/mach-qt2410.c
delete mode 100644 arch/arm/mach-s3c/mach-real6410.c
delete mode 100644 arch/arm/mach-s3c/mach-rx1950.c
delete mode 100644 arch/arm/mach-s3c/mach-rx3715.c
delete mode 100644 arch/arm/mach-s3c/mach-s3c2416-dt.c
delete mode 100644 arch/arm/mach-s3c/mach-smartq.c
delete mode 100644 arch/arm/mach-s3c/mach-smartq.h
delete mode 100644 arch/arm/mach-s3c/mach-smartq5.c
delete mode 100644 arch/arm/mach-s3c/mach-smartq7.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk2410.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk2413.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk2416.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk2440.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk2443.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk6400.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk6410.c
delete mode 100644 arch/arm/mach-s3c/mach-tct_hammer.c
delete mode 100644 arch/arm/mach-s3c/mach-vr1000.c
delete mode 100644 arch/arm/mach-s3c/mach-vstms.c
delete mode 100644 arch/arm/mach-s3c/map-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/nand-core-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/onenand-core-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/osiris.h
delete mode 100644 arch/arm/mach-s3c/otom.h
delete mode 100644 arch/arm/mach-s3c/pll-s3c2410.c
delete mode 100644 arch/arm/mach-s3c/pll-s3c2440-12000000.c
delete mode 100644 arch/arm/mach-s3c/pll-s3c2440-16934400.c
delete mode 100644 arch/arm/mach-s3c/pm-core-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/pm-h1940.S
delete mode 100644 arch/arm/mach-s3c/pm-s3c2410.c
delete mode 100644 arch/arm/mach-s3c/pm-s3c2412.c
delete mode 100644 arch/arm/mach-s3c/pm-s3c2416.c
delete mode 100644 arch/arm/mach-s3c/pm-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/regs-adc.h
delete mode 100644 arch/arm/mach-s3c/regs-clock-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/regs-dsc-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/regs-gpio-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/regs-irq-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/regs-mem-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/regs-s3c2443-clock.h
delete mode 100644 arch/arm/mach-s3c/regs-srom-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/rtc-core-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/s3c2410.c
delete mode 100644 arch/arm/mach-s3c/s3c2412-power.h
delete mode 100644 arch/arm/mach-s3c/s3c2412.c
delete mode 100644 arch/arm/mach-s3c/s3c2412.h
delete mode 100644 arch/arm/mach-s3c/s3c2416.c
delete mode 100644 arch/arm/mach-s3c/s3c2440.c
delete mode 100644 arch/arm/mach-s3c/s3c2442.c
delete mode 100644 arch/arm/mach-s3c/s3c2443.c
delete mode 100644 arch/arm/mach-s3c/s3c244x.c
delete mode 100644 arch/arm/mach-s3c/s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/s3c6400.c
delete mode 100644 arch/arm/mach-s3c/setup-i2c-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/setup-ide-s3c64xx.c
delete mode 100644 arch/arm/mach-s3c/setup-sdhci-gpio-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/setup-spi-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/setup-ts-s3c24xx.c
delete mode 100644 arch/arm/mach-s3c/simtec-audio.c
delete mode 100644 arch/arm/mach-s3c/simtec-nor.c
delete mode 100644 arch/arm/mach-s3c/simtec-pm.c
delete mode 100644 arch/arm/mach-s3c/simtec-usb.c
delete mode 100644 arch/arm/mach-s3c/simtec.h
delete mode 100644 arch/arm/mach-s3c/sleep-s3c2410.S
delete mode 100644 arch/arm/mach-s3c/sleep-s3c2412.S
delete mode 100644 arch/arm/mach-s3c/sleep-s3c24xx.S
delete mode 100644 arch/arm/mach-s3c/spi-core-s3c24xx.h
delete mode 100644 arch/arm/mach-s3c/vr1000.h
delete mode 100644 drivers/ata/pata_samsung_cf.c
delete mode 100644 drivers/clk/samsung/clk-s3c2410-dclk.c
delete mode 100644 drivers/clk/samsung/clk-s3c2410.c
delete mode 100644 drivers/clk/samsung/clk-s3c2412.c
delete mode 100644 drivers/clk/samsung/clk-s3c2443.c
delete mode 100644 drivers/cpufreq/s3c2410-cpufreq.c
delete mode 100644 drivers/cpufreq/s3c2412-cpufreq.c
delete mode 100644 drivers/cpufreq/s3c2416-cpufreq.c
delete mode 100644 drivers/cpufreq/s3c2440-cpufreq.c
delete mode 100644 drivers/cpufreq/s3c24xx-cpufreq-debugfs.c
delete mode 100644 drivers/cpufreq/s3c24xx-cpufreq.c
delete mode 100644 drivers/dma/s3c24xx-dma.c
delete mode 100644 drivers/hwmon/s3c-hwmon.c
delete mode 100644 drivers/input/touchscreen/s3c2410_ts.c
delete mode 100644 drivers/leds/leds-s3c24xx.c
delete mode 100644 drivers/mmc/host/s3cmci.c
delete mode 100644 drivers/mmc/host/s3cmci.h
delete mode 100644 drivers/pinctrl/samsung/pinctrl-s3c24xx.c
delete mode 100644 drivers/power/supply/s3c_adc_battery.c
delete mode 100644 drivers/soc/samsung/s3c-pm-debug.c
delete mode 100644 drivers/spi/spi-s3c24xx-regs.h
delete mode 100644 drivers/spi/spi-s3c24xx.c
delete mode 100644 drivers/usb/gadget/udc/s3c-hsudc.c
delete mode 100644 drivers/usb/gadget/udc/s3c2410_udc.c
delete mode 100644 drivers/usb/gadget/udc/s3c2410_udc.h
delete mode 100644 drivers/usb/gadget/udc/s3c2410_udc_regs.h
delete mode 100644 drivers/video/fbdev/s3c2410fb-regs-lcd.h
delete mode 100644 drivers/video/fbdev/s3c2410fb.c
delete mode 100644 drivers/video/fbdev/s3c2410fb.h
delete mode 100644 include/dt-bindings/clock/s3c2410.h
delete mode 100644 include/dt-bindings/clock/s3c2412.h
delete mode 100644 include/dt-bindings/clock/s3c2443.h
delete mode 100644 include/linux/amba/pl093.h
delete mode 100644 include/linux/platform_data/asoc-s3c24xx_simtec.h
delete mode 100644 include/linux/platform_data/ata-samsung_cf.h
delete mode 100644 include/linux/platform_data/clk-s3c2410.h
delete mode 100644 include/linux/platform_data/dma-s3c24xx.h
delete mode 100644 include/linux/platform_data/fb-s3c2410.h
delete mode 100644 include/linux/platform_data/leds-s3c24xx.h
delete mode 100644 include/linux/platform_data/media/s5p_hdmi.h
delete mode 100644 include/linux/platform_data/mmc-s3cmci.h
delete mode 100644 include/linux/platform_data/s3c-hsudc.h
delete mode 100644 include/linux/platform_data/usb-s3c2410_udc.h
delete mode 100644 include/linux/s3c_adc_battery.h
delete mode 100644 include/linux/soc/samsung/s3c-adc.h
delete mode 100644 include/linux/soc/samsung/s3c-cpufreq-core.h
delete mode 100644 include/linux/spi/s3c24xx-fiq.h
delete mode 100644 include/linux/spi/s3c24xx.h
delete mode 100644 include/sound/s3c24xx_uda134x.h
delete mode 100644 sound/soc/samsung/h1940_uda1380.c
delete mode 100644 sound/soc/samsung/jive_wm8750.c
delete mode 100644 sound/soc/samsung/neo1973_wm8753.c
delete mode 100644 sound/soc/samsung/regs-i2s-v2.h
delete mode 100644 sound/soc/samsung/regs-iis.h
delete mode 100644 sound/soc/samsung/rx1950_uda1380.c
delete mode 100644 sound/soc/samsung/s3c-i2s-v2.c
delete mode 100644 sound/soc/samsung/s3c-i2s-v2.h
delete mode 100644 sound/soc/samsung/s3c2412-i2s.c
delete mode 100644 sound/soc/samsung/s3c2412-i2s.h
delete mode 100644 sound/soc/samsung/s3c24xx-i2s.c
delete mode 100644 sound/soc/samsung/s3c24xx-i2s.h
delete mode 100644 sound/soc/samsung/s3c24xx_simtec.c
delete mode 100644 sound/soc/samsung/s3c24xx_simtec.h
delete mode 100644 sound/soc/samsung/s3c24xx_simtec_hermes.c
delete mode 100644 sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
delete mode 100644 sound/soc/samsung/s3c24xx_uda134x.c
delete mode 100644 sound/soc/samsung/smartq_wm8987.c
delete mode 100644 sound/soc/samsung/smdk_wm8580.c
--
2.29.2
From: Arnd Bergmann <[email protected]>
All traditional board files except for MACH_WLF_CRAGG_6410 were
marked as unused, so remove them now.
Cc: Kwangwoo Lee <[email protected]>
Cc: Peter Korsgaard <[email protected]>
Cc: Darius Augulis <[email protected]>
Cc: Maurus Cuelenaere <[email protected]>
Cc: Ben Dooks <[email protected]>
Signed-off-by: Arnd Bergmann <[email protected]>
---
arch/arm/mach-s3c/Kconfig.s3c64xx | 206 -------
arch/arm/mach-s3c/Makefile.s3c64xx | 13 -
arch/arm/mach-s3c/dev-backlight-s3c64xx.c | 137 -----
arch/arm/mach-s3c/mach-anw6410.c | 230 -------
arch/arm/mach-s3c/mach-hmt.c | 282 ---------
arch/arm/mach-s3c/mach-mini6410.c | 365 -----------
arch/arm/mach-s3c/mach-ncp.c | 100 ---
arch/arm/mach-s3c/mach-real6410.c | 333 ----------
arch/arm/mach-s3c/mach-smartq.c | 424 -------------
arch/arm/mach-s3c/mach-smartq.h | 16 -
arch/arm/mach-s3c/mach-smartq5.c | 154 -----
arch/arm/mach-s3c/mach-smartq7.c | 170 ------
arch/arm/mach-s3c/mach-smdk6400.c | 90 ---
arch/arm/mach-s3c/mach-smdk6410.c | 706 ----------------------
14 files changed, 3226 deletions(-)
delete mode 100644 arch/arm/mach-s3c/dev-backlight-s3c64xx.c
delete mode 100644 arch/arm/mach-s3c/mach-anw6410.c
delete mode 100644 arch/arm/mach-s3c/mach-hmt.c
delete mode 100644 arch/arm/mach-s3c/mach-mini6410.c
delete mode 100644 arch/arm/mach-s3c/mach-ncp.c
delete mode 100644 arch/arm/mach-s3c/mach-real6410.c
delete mode 100644 arch/arm/mach-s3c/mach-smartq.c
delete mode 100644 arch/arm/mach-s3c/mach-smartq.h
delete mode 100644 arch/arm/mach-s3c/mach-smartq5.c
delete mode 100644 arch/arm/mach-s3c/mach-smartq7.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk6400.c
delete mode 100644 arch/arm/mach-s3c/mach-smdk6410.c
diff --git a/arch/arm/mach-s3c/Kconfig.s3c64xx b/arch/arm/mach-s3c/Kconfig.s3c64xx
index 0c1b91c3ac5f..0da214c43fba 100644
--- a/arch/arm/mach-s3c/Kconfig.s3c64xx
+++ b/arch/arm/mach-s3c/Kconfig.s3c64xx
@@ -54,17 +54,6 @@ config S3C64XX_SETUP_SDHCI
Internal configuration for default SDHCI setup for S3C6400 and
S3C6410 SoCs.
-config S3C64XX_DEV_ONENAND1
- bool
- help
- Compile in platform device definition for OneNAND1 controller
-
-config SAMSUNG_DEV_BACKLIGHT
- bool
- depends on SAMSUNG_DEV_PWM
- help
- Compile in platform device definition LCD backlight with PWM Timer
-
# platform specific device setup
config S3C64XX_SETUP_I2C0
@@ -113,201 +102,6 @@ config S3C64XX_SETUP_USB_PHY
# S36400 Macchine support
-config MACH_SMDK6400
- bool "SMDK6400"
- depends on ATAGS && UNUSED_BOARD_FILES
- select CPU_S3C6400
- select S3C64XX_SETUP_SDHCI
- select S3C_DEV_HSMMC1
- help
- Machine support for the Samsung SMDK6400
-
-# S3C6410 machine support
-
-config MACH_ANW6410
- bool "A&W6410"
- depends on ATAGS && UNUSED_BOARD_FILES
- select CPU_S3C6410
- select S3C64XX_SETUP_FB_24BPP
- select S3C_DEV_FB
- help
- Machine support for the A&W6410
-
-config MACH_MINI6410
- bool "MINI6410"
- depends on ATAGS && UNUSED_BOARD_FILES
- select CPU_S3C6410
- select S3C64XX_SETUP_FB_24BPP
- select S3C64XX_SETUP_SDHCI
- select S3C_DEV_FB
- select S3C_DEV_HSMMC
- select S3C_DEV_HSMMC1
- select S3C_DEV_NAND
- select S3C_DEV_USB_HOST
- select SAMSUNG_DEV_ADC
- select SAMSUNG_DEV_TS
- help
- Machine support for the FriendlyARM MINI6410
-
-config MACH_REAL6410
- bool "REAL6410"
- depends on ATAGS && UNUSED_BOARD_FILES
- select CPU_S3C6410
- select S3C64XX_SETUP_FB_24BPP
- select S3C64XX_SETUP_SDHCI
- select S3C_DEV_FB
- select S3C_DEV_HSMMC
- select S3C_DEV_HSMMC1
- select S3C_DEV_NAND
- select S3C_DEV_USB_HOST
- select SAMSUNG_DEV_ADC
- select SAMSUNG_DEV_TS
- help
- Machine support for the CoreWind REAL6410
-
-config MACH_SMDK6410
- bool "SMDK6410"
- depends on ATAGS && UNUSED_BOARD_FILES
- select CPU_S3C6410
- select S3C64XX_SETUP_FB_24BPP
- select S3C64XX_SETUP_I2C1
- select S3C64XX_SETUP_IDE
- select S3C64XX_SETUP_KEYPAD
- select S3C64XX_SETUP_SDHCI
- select S3C64XX_SETUP_USB_PHY
- select S3C_DEV_FB
- select S3C_DEV_HSMMC
- select S3C_DEV_HSMMC1
- select S3C_DEV_I2C1
- select S3C_DEV_RTC
- select S3C_DEV_USB_HOST
- select S3C_DEV_USB_HSOTG
- select S3C_DEV_WDT
- select SAMSUNG_DEV_ADC
- select SAMSUNG_DEV_BACKLIGHT
- select SAMSUNG_DEV_IDE
- select SAMSUNG_DEV_KEYPAD
- select SAMSUNG_DEV_PWM
- select SAMSUNG_DEV_TS
- help
- Machine support for the Samsung SMDK6410
-
-# At least some of the SMDK6410s were shipped with the card detect
-# for the MMC/SD slots connected to the same input. This means that
-# either the boards need to be altered to have channel0 to an alternate
-# configuration or that only one slot can be used.
-
-choice
- prompt "SMDK6410 MMC/SD slot setup"
- depends on MACH_SMDK6410
-
-config SMDK6410_SD_CH0
- bool "Use channel 0 only"
- depends on MACH_SMDK6410
- help
- Select CON7 (channel 0) as the MMC/SD slot, as
- at least some SMDK6410 boards come with the
- resistors fitted so that the card detects for
- channels 0 and 1 are the same.
-
-config SMDK6410_SD_CH1
- bool "Use channel 1 only"
- depends on MACH_SMDK6410
- help
- Select CON6 (channel 1) as the MMC/SD slot, as
- at least some SMDK6410 boards come with the
- resistors fitted so that the card detects for
- channels 0 and 1 are the same.
-
-endchoice
-
-config SMDK6410_WM1190_EV1
- bool "Support Wolfson Microelectronics 1190-EV1 PMIC card"
- depends on MACH_SMDK6410
- depends on I2C=y
- select MFD_WM8350_I2C
- select REGULATOR
- select REGULATOR_WM8350
- help
- The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC
- and audio daughtercard for the Samsung SMDK6410 reference
- platform. Enabling this option will build support for this
- module into the kernel. The presence of the module will be
- detected at runtime so the resulting kernel can be used
- with or without the 1190-EV1 fitted.
-
-config SMDK6410_WM1192_EV1
- bool "Support Wolfson Microelectronics 1192-EV1 PMIC card"
- depends on MACH_SMDK6410
- depends on I2C=y
- select MFD_WM831X
- select MFD_WM831X_I2C
- select REGULATOR
- select REGULATOR_WM831X
- help
- The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC
- daughtercard for the Samsung SMDK6410 reference platform.
- Enabling this option will build support for this module into
- the kernel. The presence of the daughtercard will be
- detected at runtime so the resulting kernel can be used
- with or without the 1192-EV1 fitted.
-
-config MACH_NCP
- bool "NCP"
- depends on ATAGS && UNUSED_BOARD_FILES
- select CPU_S3C6410
- select S3C64XX_SETUP_I2C1
- select S3C_DEV_HSMMC1
- select S3C_DEV_I2C1
- help
- Machine support for the Samsung NCP
-
-config MACH_HMT
- bool "Airgoo HMT"
- depends on ATAGS && UNUSED_BOARD_FILES
- select CPU_S3C6410
- select S3C64XX_SETUP_FB_24BPP
- select S3C_DEV_FB
- select S3C_DEV_NAND
- select S3C_DEV_USB_HOST
- select SAMSUNG_DEV_PWM
- help
- Machine support for the Airgoo HMT
-
-config MACH_SMARTQ
- bool
- select CPU_S3C6410
- select S3C64XX_SETUP_FB_24BPP
- select S3C64XX_SETUP_SDHCI
- select S3C64XX_SETUP_USB_PHY
- select S3C_DEV_FB
- select S3C_DEV_HSMMC
- select S3C_DEV_HSMMC1
- select S3C_DEV_HSMMC2
- select S3C_DEV_HWMON
- select S3C_DEV_RTC
- select S3C_DEV_USB_HOST
- select S3C_DEV_USB_HSOTG
- select SAMSUNG_DEV_ADC
- select SAMSUNG_DEV_PWM
- select SAMSUNG_DEV_TS
- help
- Shared machine support for SmartQ 5/7
-
-config MACH_SMARTQ5
- bool "SmartQ 5"
- depends on ATAGS && UNUSED_BOARD_FILES
- select MACH_SMARTQ
- help
- Machine support for the SmartQ 5
-
-config MACH_SMARTQ7
- bool "SmartQ 7"
- depends on ATAGS && UNUSED_BOARD_FILES
- select MACH_SMARTQ
- help
- Machine support for the SmartQ 7
-
config MACH_WLF_CRAGG_6410
bool "Wolfson Cragganmore 6410"
depends on ATAGS
diff --git a/arch/arm/mach-s3c/Makefile.s3c64xx b/arch/arm/mach-s3c/Makefile.s3c64xx
index 21e919bf2cd1..ba179a22c2af 100644
--- a/arch/arm/mach-s3c/Makefile.s3c64xx
+++ b/arch/arm/mach-s3c/Makefile.s3c64xx
@@ -39,20 +39,7 @@ obj-$(CONFIG_S3C64XX_SETUP_SDHCI_GPIO) += setup-sdhci-gpio-s3c64xx.o
obj-$(CONFIG_S3C64XX_SETUP_SPI) += setup-spi-s3c64xx.o
obj-$(CONFIG_S3C64XX_SETUP_USB_PHY) += setup-usb-phy-s3c64xx.o
-obj-$(CONFIG_SAMSUNG_DEV_BACKLIGHT) += dev-backlight-s3c64xx.o
-
# Machine support
-
-obj-$(CONFIG_MACH_ANW6410) += mach-anw6410.o
-obj-$(CONFIG_MACH_HMT) += mach-hmt.o
-obj-$(CONFIG_MACH_MINI6410) += mach-mini6410.o
-obj-$(CONFIG_MACH_NCP) += mach-ncp.o
-obj-$(CONFIG_MACH_REAL6410) += mach-real6410.o
-obj-$(CONFIG_MACH_SMARTQ) += mach-smartq.o
-obj-$(CONFIG_MACH_SMARTQ5) += mach-smartq5.o
-obj-$(CONFIG_MACH_SMARTQ7) += mach-smartq7.o
-obj-$(CONFIG_MACH_SMDK6400) += mach-smdk6400.o
-obj-$(CONFIG_MACH_SMDK6410) += mach-smdk6410.o
obj-$(CONFIG_MACH_WLF_CRAGG_6410) += mach-crag6410.o mach-crag6410-module.o
endif
diff --git a/arch/arm/mach-s3c/dev-backlight-s3c64xx.c b/arch/arm/mach-s3c/dev-backlight-s3c64xx.c
deleted file mode 100644
index 65488b61e50c..000000000000
diff --git a/arch/arm/mach-s3c/mach-anw6410.c b/arch/arm/mach-s3c/mach-anw6410.c
deleted file mode 100644
index b67eae43e04f..000000000000
diff --git a/arch/arm/mach-s3c/mach-hmt.c b/arch/arm/mach-s3c/mach-hmt.c
deleted file mode 100644
index 49ba16c447aa..000000000000
diff --git a/arch/arm/mach-s3c/mach-mini6410.c b/arch/arm/mach-s3c/mach-mini6410.c
deleted file mode 100644
index 058ae9e8b89f..000000000000
diff --git a/arch/arm/mach-s3c/mach-ncp.c b/arch/arm/mach-s3c/mach-ncp.c
deleted file mode 100644
index 1e65f8bce5c4..000000000000
diff --git a/arch/arm/mach-s3c/mach-real6410.c b/arch/arm/mach-s3c/mach-real6410.c
deleted file mode 100644
index 8c10ebc38a9c..000000000000
diff --git a/arch/arm/mach-s3c/mach-smartq.c b/arch/arm/mach-s3c/mach-smartq.c
deleted file mode 100644
index 5b6e7c2a85ef..000000000000
diff --git a/arch/arm/mach-s3c/mach-smartq.h b/arch/arm/mach-s3c/mach-smartq.h
deleted file mode 100644
index f98132f4f430..000000000000
diff --git a/arch/arm/mach-s3c/mach-smartq5.c b/arch/arm/mach-s3c/mach-smartq5.c
deleted file mode 100644
index ce3fce0bba20..000000000000
diff --git a/arch/arm/mach-s3c/mach-smartq7.c b/arch/arm/mach-s3c/mach-smartq7.c
deleted file mode 100644
index 78ca0e704797..000000000000
diff --git a/arch/arm/mach-s3c/mach-smdk6400.c b/arch/arm/mach-s3c/mach-smdk6400.c
deleted file mode 100644
index a3c1b2a82455..000000000000
diff --git a/arch/arm/mach-s3c/mach-smdk6410.c b/arch/arm/mach-s3c/mach-smdk6410.c
deleted file mode 100644
index e57b2bb61484..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
This driver could not be enabled on s3c64xx for a long time
because of the ARCH_MULTIPLATFORM dependency, so remove it.
Signed-off-by: Arnd Bergmann <[email protected]>
---
arch/arm/mach-s3c/Kconfig | 15 -
arch/arm/mach-s3c/Kconfig.s3c64xx | 1 -
arch/arm/mach-s3c/Makefile | 4 -
arch/arm/mach-s3c/adc.c | 510 ----------------------------
arch/arm/mach-s3c/mach-crag6410.c | 1 -
arch/arm/mach-s3c/regs-adc.h | 64 ----
include/linux/soc/samsung/s3c-adc.h | 32 --
7 files changed, 627 deletions(-)
delete mode 100644 arch/arm/mach-s3c/adc.c
delete mode 100644 arch/arm/mach-s3c/regs-adc.h
delete mode 100644 include/linux/soc/samsung/s3c-adc.h
diff --git a/arch/arm/mach-s3c/Kconfig b/arch/arm/mach-s3c/Kconfig
index 809f84fca0b8..0dde4010aa64 100644
--- a/arch/arm/mach-s3c/Kconfig
+++ b/arch/arm/mach-s3c/Kconfig
@@ -63,16 +63,6 @@ config S3C_GPIO_TRACK
Internal configuration option to enable the s3c specific gpio
chip tracking if the platform requires it.
-# ADC driver
-
-config S3C_ADC
- bool "ADC common driver support"
- depends on !ARCH_MULTIPLATFORM
- help
- Core support for the ADC block found in the Samsung SoC systems
- for drivers such as the touchscreen and hwmon to use to share
- this resource.
-
# device definitions to compile in
config S3C_DEV_HSMMC
@@ -165,11 +155,6 @@ config S3C_DEV_RTC
help
Compile in platform device definition for RTC
-config SAMSUNG_DEV_ADC
- bool
- help
- Compile in platform device definition for ADC controller
-
config S3C64XX_DEV_SPI0
bool
help
diff --git a/arch/arm/mach-s3c/Kconfig.s3c64xx b/arch/arm/mach-s3c/Kconfig.s3c64xx
index 0da214c43fba..c403d7642f0a 100644
--- a/arch/arm/mach-s3c/Kconfig.s3c64xx
+++ b/arch/arm/mach-s3c/Kconfig.s3c64xx
@@ -125,7 +125,6 @@ config MACH_WLF_CRAGG_6410
select S3C_DEV_USB_HOST
select S3C_DEV_USB_HSOTG
select S3C_DEV_WDT
- select SAMSUNG_DEV_ADC
select SAMSUNG_DEV_KEYPAD
select SAMSUNG_DEV_PWM
help
diff --git a/arch/arm/mach-s3c/Makefile b/arch/arm/mach-s3c/Makefile
index a5135137e648..bae7316be5c7 100644
--- a/arch/arm/mach-s3c/Makefile
+++ b/arch/arm/mach-s3c/Makefile
@@ -8,10 +8,6 @@ include $(src)/Makefile.s3c64xx
obj-y += init.o cpu.o
-# ADC
-
-obj-$(CONFIG_S3C_ADC) += adc.o
-
# devices
obj-$(CONFIG_SAMSUNG_ATAGS) += platformdata.o
diff --git a/arch/arm/mach-s3c/adc.c b/arch/arm/mach-s3c/adc.c
deleted file mode 100644
index 0232520d3c13..000000000000
diff --git a/arch/arm/mach-s3c/mach-crag6410.c b/arch/arm/mach-s3c/mach-crag6410.c
index 9a45474d1bf7..fab6b3efc9f6 100644
--- a/arch/arm/mach-s3c/mach-crag6410.c
+++ b/arch/arm/mach-s3c/mach-crag6410.c
@@ -57,7 +57,6 @@
#include "keypad.h"
#include "devs.h"
#include "cpu.h"
-#include <linux/soc/samsung/s3c-adc.h>
#include <linux/platform_data/i2c-s3c2410.h>
#include "pm.h"
diff --git a/arch/arm/mach-s3c/regs-adc.h b/arch/arm/mach-s3c/regs-adc.h
deleted file mode 100644
index 58953c7381dd..000000000000
diff --git a/include/linux/soc/samsung/s3c-adc.h b/include/linux/soc/samsung/s3c-adc.h
deleted file mode 100644
index 591c94ef957d..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
No board file and no dts file references the s3c6400 now, it's only
s3c6410, so remove the final bits as well.
Signed-off-by: Arnd Bergmann <[email protected]>
---
arch/arm/mach-s3c/Makefile.s3c64xx | 1 -
arch/arm/mach-s3c/s3c6400.c | 84 ------------------------------
arch/arm/mach-s3c/s3c64xx.c | 8 ---
3 files changed, 93 deletions(-)
delete mode 100644 arch/arm/mach-s3c/s3c6400.c
diff --git a/arch/arm/mach-s3c/Makefile.s3c64xx b/arch/arm/mach-s3c/Makefile.s3c64xx
index 13cda2fe7b6c..61287ad2ea42 100644
--- a/arch/arm/mach-s3c/Makefile.s3c64xx
+++ b/arch/arm/mach-s3c/Makefile.s3c64xx
@@ -16,7 +16,6 @@ obj-$(CONFIG_PM_SLEEP) += irq-pm-s3c64xx.o
# Core
obj-y += s3c64xx.o
-obj-$(CONFIG_CPU_S3C6400) += s3c6400.o
obj-$(CONFIG_CPU_S3C6410) += s3c6410.o
# DMA support
diff --git a/arch/arm/mach-s3c/s3c6400.c b/arch/arm/mach-s3c/s3c6400.c
deleted file mode 100644
index d47f1d6067b4..000000000000
diff --git a/arch/arm/mach-s3c/s3c64xx.c b/arch/arm/mach-s3c/s3c64xx.c
index 0a8116c108fe..ad13d7e13e5e 100644
--- a/arch/arm/mach-s3c/s3c64xx.c
+++ b/arch/arm/mach-s3c/s3c64xx.c
@@ -72,18 +72,10 @@ static void __init s3c64xx_init_uarts(struct s3c2410_uartcfg *cfg, int no)
/* table of supported CPUs */
-static const char name_s3c6400[] = "S3C6400";
static const char name_s3c6410[] = "S3C6410";
static struct cpu_table cpu_ids[] __initdata = {
{
- .idcode = S3C6400_CPU_ID,
- .idmask = S3C64XX_CPU_MASK,
- .map_io = s3c6400_map_io,
- .init_uarts = s3c64xx_init_uarts,
- .init = s3c6400_init,
- .name = name_s3c6400,
- }, {
.idcode = S3C6410_CPU_ID,
.idmask = S3C64XX_CPU_MASK,
.map_io = s3c6410_map_io,
--
2.29.2
From: Arnd Bergmann <[email protected]>
Following down the now unused symbols and header files, some additional
content can be dropped that is used by neither the s3c64xx DT support
nor the crag6410 board.
Signed-off-by: Arnd Bergmann <[email protected]>
---
arch/arm/mach-s3c/Kconfig | 50 --
arch/arm/mach-s3c/Kconfig.s3c64xx | 5 -
arch/arm/mach-s3c/Makefile | 2 -
arch/arm/mach-s3c/Makefile.s3c64xx | 1 -
arch/arm/mach-s3c/adc-core.h | 24 -
arch/arm/mach-s3c/ata-core-s3c64xx.h | 24 -
arch/arm/mach-s3c/backlight-s3c64xx.h | 22 -
arch/arm/mach-s3c/cpu.h | 47 --
arch/arm/mach-s3c/dev-audio-s3c64xx.c | 127 ----
arch/arm/mach-s3c/devs.c | 725 -------------------
arch/arm/mach-s3c/devs.h | 37 -
arch/arm/mach-s3c/dma-s3c64xx.h | 57 --
arch/arm/mach-s3c/dma.h | 2 -
arch/arm/mach-s3c/gpio-cfg-helpers.h | 124 ----
arch/arm/mach-s3c/gpio-cfg.h | 19 -
arch/arm/mach-s3c/gpio-core.h | 3 -
arch/arm/mach-s3c/gpio-samsung.c | 443 +----------
arch/arm/mach-s3c/iic-core.h | 7 -
arch/arm/mach-s3c/init.c | 26 +-
arch/arm/mach-s3c/map-s3c.h | 37 -
arch/arm/mach-s3c/onenand-core-s3c64xx.h | 32 -
arch/arm/mach-s3c/otom.h | 25 -
arch/arm/mach-s3c/pm-core-s3c64xx.h | 17 -
arch/arm/mach-s3c/pm-s3c64xx.c | 83 ---
arch/arm/mach-s3c/pm.c | 7 +-
arch/arm/mach-s3c/pm.h | 12 -
arch/arm/mach-s3c/regs-srom-s3c64xx.h | 55 --
arch/arm/mach-s3c/s3c6400.c | 6 -
arch/arm/mach-s3c/s3c6410.c | 9 -
arch/arm/mach-s3c/sdhci.h | 25 -
arch/arm/mach-s3c/setup-ide-s3c64xx.c | 40 -
arch/arm/mach-s3c/sleep-s3c64xx.S | 27 -
include/linux/platform_data/media/s5p_hdmi.h | 32 -
33 files changed, 6 insertions(+), 2146 deletions(-)
delete mode 100644 arch/arm/mach-s3c/adc-core.h
delete mode 100644 arch/arm/mach-s3c/ata-core-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/backlight-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/dma-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/dma.h
delete mode 100644 arch/arm/mach-s3c/onenand-core-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/otom.h
delete mode 100644 arch/arm/mach-s3c/regs-srom-s3c64xx.h
delete mode 100644 arch/arm/mach-s3c/setup-ide-s3c64xx.c
delete mode 100644 include/linux/platform_data/media/s5p_hdmi.h
diff --git a/arch/arm/mach-s3c/Kconfig b/arch/arm/mach-s3c/Kconfig
index 0dde4010aa64..b3656109f1f7 100644
--- a/arch/arm/mach-s3c/Kconfig
+++ b/arch/arm/mach-s3c/Kconfig
@@ -90,36 +90,6 @@ config S3C_DEV_I2C1
help
Compile in platform device definitions for I2C channel 1
-config S3C_DEV_I2C2
- bool
- help
- Compile in platform device definitions for I2C channel 2
-
-config S3C_DEV_I2C3
- bool
- help
- Compile in platform device definition for I2C controller 3
-
-config S3C_DEV_I2C4
- bool
- help
- Compile in platform device definition for I2C controller 4
-
-config S3C_DEV_I2C5
- bool
- help
- Compile in platform device definition for I2C controller 5
-
-config S3C_DEV_I2C6
- bool
- help
- Compile in platform device definition for I2C controller 6
-
-config S3C_DEV_I2C7
- bool
- help
- Compile in platform device definition for I2C controller 7
-
config S3C_DEV_FB
bool
help
@@ -135,26 +105,6 @@ config S3C_DEV_USB_HSOTG
help
Compile in platform device definition for USB high-speed OtG
-config S3C_DEV_WDT
- bool
- help
- Compile in platform device definition for Watchdog Timer
-
-config S3C_DEV_NAND
- bool
- help
- Compile in platform device definition for NAND controller
-
-config S3C_DEV_ONENAND
- bool
- help
- Compile in platform device definition for OneNAND controller
-
-config S3C_DEV_RTC
- bool
- help
- Compile in platform device definition for RTC
-
config S3C64XX_DEV_SPI0
bool
help
diff --git a/arch/arm/mach-s3c/Kconfig.s3c64xx b/arch/arm/mach-s3c/Kconfig.s3c64xx
index c403d7642f0a..c52c7ce1d8fa 100644
--- a/arch/arm/mach-s3c/Kconfig.s3c64xx
+++ b/arch/arm/mach-s3c/Kconfig.s3c64xx
@@ -15,12 +15,9 @@ menuconfig ARCH_S3C64XX
select HAVE_TCM
select PLAT_SAMSUNG
select PM_GENERIC_DOMAINS if PM
- select S3C_DEV_NAND if ATAGS
select S3C_GPIO_TRACK if ATAGS
- select S3C2410_WATCHDOG
select SAMSUNG_ATAGS if ATAGS
select SAMSUNG_WAKEMASK if PM
- select WATCHDOG
help
Samsung S3C64XX series based systems
@@ -121,10 +118,8 @@ config MACH_WLF_CRAGG_6410
select S3C_DEV_HSMMC1
select S3C_DEV_HSMMC2
select S3C_DEV_I2C1
- select S3C_DEV_RTC
select S3C_DEV_USB_HOST
select S3C_DEV_USB_HSOTG
- select S3C_DEV_WDT
select SAMSUNG_DEV_KEYPAD
select SAMSUNG_DEV_PWM
help
diff --git a/arch/arm/mach-s3c/Makefile b/arch/arm/mach-s3c/Makefile
index bae7316be5c7..988c49672715 100644
--- a/arch/arm/mach-s3c/Makefile
+++ b/arch/arm/mach-s3c/Makefile
@@ -11,7 +11,6 @@ obj-y += init.o cpu.o
# devices
obj-$(CONFIG_SAMSUNG_ATAGS) += platformdata.o
-
obj-$(CONFIG_SAMSUNG_ATAGS) += devs.o
obj-$(CONFIG_SAMSUNG_ATAGS) += dev-uart.o
@@ -21,5 +20,4 @@ obj-$(CONFIG_GPIO_SAMSUNG) += gpio-samsung.o
obj-$(CONFIG_SAMSUNG_PM) += pm.o pm-common.o
obj-$(CONFIG_SAMSUNG_PM_GPIO) += pm-gpio.o
-
obj-$(CONFIG_SAMSUNG_WAKEMASK) += wakeup-mask.o
diff --git a/arch/arm/mach-s3c/Makefile.s3c64xx b/arch/arm/mach-s3c/Makefile.s3c64xx
index ba179a22c2af..13cda2fe7b6c 100644
--- a/arch/arm/mach-s3c/Makefile.s3c64xx
+++ b/arch/arm/mach-s3c/Makefile.s3c64xx
@@ -33,7 +33,6 @@ obj-y += dev-audio-s3c64xx.o
obj-$(CONFIG_S3C64XX_SETUP_FB_24BPP) += setup-fb-24bpp-s3c64xx.o
obj-$(CONFIG_S3C64XX_SETUP_I2C0) += setup-i2c0-s3c64xx.o
obj-$(CONFIG_S3C64XX_SETUP_I2C1) += setup-i2c1-s3c64xx.o
-obj-$(CONFIG_S3C64XX_SETUP_IDE) += setup-ide-s3c64xx.o
obj-$(CONFIG_S3C64XX_SETUP_KEYPAD) += setup-keypad-s3c64xx.o
obj-$(CONFIG_S3C64XX_SETUP_SDHCI_GPIO) += setup-sdhci-gpio-s3c64xx.o
obj-$(CONFIG_S3C64XX_SETUP_SPI) += setup-spi-s3c64xx.o
diff --git a/arch/arm/mach-s3c/adc-core.h b/arch/arm/mach-s3c/adc-core.h
deleted file mode 100644
index 039f6862b6a7..000000000000
diff --git a/arch/arm/mach-s3c/ata-core-s3c64xx.h b/arch/arm/mach-s3c/ata-core-s3c64xx.h
deleted file mode 100644
index 4863ad9d3a42..000000000000
diff --git a/arch/arm/mach-s3c/backlight-s3c64xx.h b/arch/arm/mach-s3c/backlight-s3c64xx.h
deleted file mode 100644
index 2a2b35821d58..000000000000
diff --git a/arch/arm/mach-s3c/cpu.h b/arch/arm/mach-s3c/cpu.h
index 20ff98d05c53..d0adc9b40e25 100644
--- a/arch/arm/mach-s3c/cpu.h
+++ b/arch/arm/mach-s3c/cpu.h
@@ -16,15 +16,6 @@
extern unsigned long samsung_cpu_id;
-#define S3C2410_CPU_ID 0x32410000
-#define S3C2410_CPU_MASK 0xFFFFFFFF
-
-#define S3C24XX_CPU_ID 0x32400000
-#define S3C24XX_CPU_MASK 0xFFF00000
-
-#define S3C2412_CPU_ID 0x32412000
-#define S3C2412_CPU_MASK 0xFFFFF000
-
#define S3C6400_CPU_ID 0x36400000
#define S3C6410_CPU_ID 0x36410000
#define S3C64XX_CPU_MASK 0xFFFFF000
@@ -38,29 +29,9 @@ static inline int is_samsung_##name(void) \
return ((samsung_cpu_id & mask) == (id & mask)); \
}
-IS_SAMSUNG_CPU(s3c2410, S3C2410_CPU_ID, S3C2410_CPU_MASK)
-IS_SAMSUNG_CPU(s3c24xx, S3C24XX_CPU_ID, S3C24XX_CPU_MASK)
-IS_SAMSUNG_CPU(s3c2412, S3C2412_CPU_ID, S3C2412_CPU_MASK)
IS_SAMSUNG_CPU(s3c6400, S3C6400_CPU_ID, S3C64XX_CPU_MASK)
IS_SAMSUNG_CPU(s3c6410, S3C6410_CPU_ID, S3C64XX_CPU_MASK)
-#if defined(CONFIG_CPU_S3C2410) || defined(CONFIG_CPU_S3C2412) || \
- defined(CONFIG_CPU_S3C2416) || defined(CONFIG_CPU_S3C2440) || \
- defined(CONFIG_CPU_S3C2442) || defined(CONFIG_CPU_S3C244X) || \
- defined(CONFIG_CPU_S3C2443)
-# define soc_is_s3c24xx() is_samsung_s3c24xx()
-# define soc_is_s3c2410() is_samsung_s3c2410()
-#else
-# define soc_is_s3c24xx() 0
-# define soc_is_s3c2410() 0
-#endif
-
-#if defined(CONFIG_CPU_S3C2412)
-# define soc_is_s3c2412() is_samsung_s3c2412()
-#else
-# define soc_is_s3c2412() 0
-#endif
-
#if defined(CONFIG_CPU_S3C6400) || defined(CONFIG_CPU_S3C6410)
# define soc_is_s3c6400() is_samsung_s3c6400()
# define soc_is_s3c6410() is_samsung_s3c6410()
@@ -71,12 +42,6 @@ IS_SAMSUNG_CPU(s3c6410, S3C6410_CPU_ID, S3C64XX_CPU_MASK)
# define soc_is_s3c64xx() 0
#endif
-#define IODESC_ENT(x) { (unsigned long)S3C24XX_VA_##x, __phys_to_pfn(S3C24XX_PA_##x), S3C24XX_SZ_##x, MT_DEVICE }
-
-#ifndef KHZ
-#define KHZ (1000)
-#endif
-
#ifndef MHZ
#define MHZ (1000*1000)
#endif
@@ -96,7 +61,6 @@ struct cpu_table {
unsigned long idmask;
void (*map_io)(void);
void (*init_uarts)(struct s3c2410_uartcfg *cfg, int no);
- void (*init_clocks)(int xtal);
int (*init)(void);
const char *name;
};
@@ -105,24 +69,13 @@ extern void s3c_init_cpu(unsigned long idcode,
struct cpu_table *cpus, unsigned int cputab_size);
/* core initialisation functions */
-
-extern void s3c24xx_init_io(struct map_desc *mach_desc, int size);
-
extern void s3c64xx_init_cpu(void);
extern void s3c24xx_init_uarts(struct s3c2410_uartcfg *cfg, int no);
-
-extern void s3c24xx_init_clocks(int xtal);
-
extern void s3c24xx_init_uartdevs(char *name,
struct s3c24xx_uart_resources *res,
struct s3c2410_uartcfg *cfg, int no);
-extern struct syscore_ops s3c2410_pm_syscore_ops;
-extern struct syscore_ops s3c2412_pm_syscore_ops;
-extern struct syscore_ops s3c2416_pm_syscore_ops;
-extern struct syscore_ops s3c244x_pm_syscore_ops;
-
extern struct bus_type s3c6410_subsys;
#endif
diff --git a/arch/arm/mach-s3c/dev-audio-s3c64xx.c b/arch/arm/mach-s3c/dev-audio-s3c64xx.c
index 909e82c148ba..7ce119dc3a72 100644
--- a/arch/arm/mach-s3c/dev-audio-s3c64xx.c
+++ b/arch/arm/mach-s3c/dev-audio-s3c64xx.c
@@ -83,130 +83,3 @@ struct platform_device s3c64xx_device_iis1 = {
},
};
EXPORT_SYMBOL(s3c64xx_device_iis1);
-
-static struct resource s3c64xx_iisv4_resource[] = {
- [0] = DEFINE_RES_MEM(S3C64XX_PA_IISV4, SZ_256),
-};
-
-static struct s3c_audio_pdata i2sv4_pdata = {
- .cfg_gpio = s3c64xx_i2s_cfg_gpio,
- .type = {
- .quirks = QUIRK_PRI_6CHAN,
- },
-};
-
-struct platform_device s3c64xx_device_iisv4 = {
- .name = "samsung-i2s",
- .id = 2,
- .num_resources = ARRAY_SIZE(s3c64xx_iisv4_resource),
- .resource = s3c64xx_iisv4_resource,
- .dev = {
- .platform_data = &i2sv4_pdata,
- },
-};
-EXPORT_SYMBOL(s3c64xx_device_iisv4);
-
-
-/* PCM Controller platform_devices */
-
-static int s3c64xx_pcm_cfg_gpio(struct platform_device *pdev)
-{
- unsigned int base;
-
- switch (pdev->id) {
- case 0:
- base = S3C64XX_GPD(0);
- break;
- case 1:
- base = S3C64XX_GPE(0);
- break;
- default:
- printk(KERN_DEBUG "Invalid PCM Controller number: %d\n",
- pdev->id);
- return -EINVAL;
- }
-
- s3c_gpio_cfgpin_range(base, 5, S3C_GPIO_SFN(2));
- return 0;
-}
-
-static struct resource s3c64xx_pcm0_resource[] = {
- [0] = DEFINE_RES_MEM(S3C64XX_PA_PCM0, SZ_256),
-};
-
-static struct s3c_audio_pdata s3c_pcm0_pdata = {
- .cfg_gpio = s3c64xx_pcm_cfg_gpio,
-};
-
-struct platform_device s3c64xx_device_pcm0 = {
- .name = "samsung-pcm",
- .id = 0,
- .num_resources = ARRAY_SIZE(s3c64xx_pcm0_resource),
- .resource = s3c64xx_pcm0_resource,
- .dev = {
- .platform_data = &s3c_pcm0_pdata,
- },
-};
-EXPORT_SYMBOL(s3c64xx_device_pcm0);
-
-static struct resource s3c64xx_pcm1_resource[] = {
- [0] = DEFINE_RES_MEM(S3C64XX_PA_PCM1, SZ_256),
-};
-
-static struct s3c_audio_pdata s3c_pcm1_pdata = {
- .cfg_gpio = s3c64xx_pcm_cfg_gpio,
-};
-
-struct platform_device s3c64xx_device_pcm1 = {
- .name = "samsung-pcm",
- .id = 1,
- .num_resources = ARRAY_SIZE(s3c64xx_pcm1_resource),
- .resource = s3c64xx_pcm1_resource,
- .dev = {
- .platform_data = &s3c_pcm1_pdata,
- },
-};
-EXPORT_SYMBOL(s3c64xx_device_pcm1);
-
-/* AC97 Controller platform devices */
-
-static int s3c64xx_ac97_cfg_gpd(struct platform_device *pdev)
-{
- return s3c_gpio_cfgpin_range(S3C64XX_GPD(0), 5, S3C_GPIO_SFN(4));
-}
-
-static int s3c64xx_ac97_cfg_gpe(struct platform_device *pdev)
-{
- return s3c_gpio_cfgpin_range(S3C64XX_GPE(0), 5, S3C_GPIO_SFN(4));
-}
-
-static struct resource s3c64xx_ac97_resource[] = {
- [0] = DEFINE_RES_MEM(S3C64XX_PA_AC97, SZ_256),
- [1] = DEFINE_RES_IRQ(IRQ_AC97),
-};
-
-static struct s3c_audio_pdata s3c_ac97_pdata = {
-};
-
-static u64 s3c64xx_ac97_dmamask = DMA_BIT_MASK(32);
-
-struct platform_device s3c64xx_device_ac97 = {
- .name = "samsung-ac97",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c64xx_ac97_resource),
- .resource = s3c64xx_ac97_resource,
- .dev = {
- .platform_data = &s3c_ac97_pdata,
- .dma_mask = &s3c64xx_ac97_dmamask,
- .coherent_dma_mask = DMA_BIT_MASK(32),
- },
-};
-EXPORT_SYMBOL(s3c64xx_device_ac97);
-
-void __init s3c64xx_ac97_setup_gpio(int num)
-{
- if (num == S3C64XX_AC97_GPD)
- s3c_ac97_pdata.cfg_gpio = s3c64xx_ac97_cfg_gpd;
- else
- s3c_ac97_pdata.cfg_gpio = s3c64xx_ac97_cfg_gpe;
-}
diff --git a/arch/arm/mach-s3c/devs.c b/arch/arm/mach-s3c/devs.c
index a31d1c3038e8..8c26d592d2a3 100644
--- a/arch/arm/mach-s3c/devs.c
+++ b/arch/arm/mach-s3c/devs.c
@@ -21,17 +21,11 @@
#include <linux/dma-mapping.h>
#include <linux/fb.h>
#include <linux/gfp.h>
-#include <linux/mtd/mtd.h>
-#include <linux/mtd/onenand.h>
-#include <linux/mtd/partitions.h>
#include <linux/mmc/host.h>
#include <linux/ioport.h>
#include <linux/sizes.h>
-#include <linux/platform_data/s3c-hsudc.h>
#include <linux/platform_data/s3c-hsotg.h>
-#include <linux/platform_data/media/s5p_hdmi.h>
-
#include <asm/irq.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
@@ -42,104 +36,19 @@
#include "gpio-samsung.h"
#include "gpio-cfg.h"
-#ifdef CONFIG_PLAT_S3C24XX
-#include "regs-s3c2443-clock.h"
-#endif /* CONFIG_PLAT_S3C24XX */
-
#include "cpu.h"
#include "devs.h"
-#include <linux/soc/samsung/s3c-adc.h>
-#include <linux/platform_data/ata-samsung_cf.h>
#include "fb.h"
-#include <linux/platform_data/fb-s3c2410.h>
-#include <linux/platform_data/hwmon-s3c.h>
#include <linux/platform_data/i2c-s3c2410.h>
#include "keypad.h"
-#include <linux/platform_data/mmc-s3cmci.h>
-#include <linux/platform_data/mtd-nand-s3c2410.h>
#include "pwm-core.h"
#include "sdhci.h"
-#include <linux/platform_data/touchscreen-s3c2410.h>
-#include <linux/platform_data/usb-s3c2410_udc.h>
-#include <linux/platform_data/usb-ohci-s3c2410.h>
#include "usb-phy.h"
#include <linux/platform_data/asoc-s3c.h>
#include <linux/platform_data/spi-s3c64xx.h>
#define samsung_device_dma_mask (*((u64[]) { DMA_BIT_MASK(32) }))
-/* AC97 */
-#ifdef CONFIG_CPU_S3C2440
-static struct resource s3c_ac97_resource[] = {
- [0] = DEFINE_RES_MEM(S3C2440_PA_AC97, S3C2440_SZ_AC97),
- [1] = DEFINE_RES_IRQ(IRQ_S3C244X_AC97),
-};
-
-struct platform_device s3c_device_ac97 = {
- .name = "samsung-ac97",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_ac97_resource),
- .resource = s3c_ac97_resource,
- .dev = {
- .dma_mask = &samsung_device_dma_mask,
- .coherent_dma_mask = DMA_BIT_MASK(32),
- }
-};
-#endif /* CONFIG_CPU_S3C2440 */
-
-/* ADC */
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct resource s3c_adc_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_ADC, S3C24XX_SZ_ADC),
- [1] = DEFINE_RES_IRQ(IRQ_TC),
- [2] = DEFINE_RES_IRQ(IRQ_ADC),
-};
-
-struct platform_device s3c_device_adc = {
- .name = "s3c24xx-adc",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_adc_resource),
- .resource = s3c_adc_resource,
-};
-#endif /* CONFIG_PLAT_S3C24XX */
-
-#if defined(CONFIG_SAMSUNG_DEV_ADC)
-static struct resource s3c_adc_resource[] = {
- [0] = DEFINE_RES_MEM(SAMSUNG_PA_ADC, SZ_256),
- [1] = DEFINE_RES_IRQ(IRQ_ADC),
- [2] = DEFINE_RES_IRQ(IRQ_TC),
-};
-
-struct platform_device s3c_device_adc = {
- .name = "exynos-adc",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_adc_resource),
- .resource = s3c_adc_resource,
-};
-#endif /* CONFIG_SAMSUNG_DEV_ADC */
-
-/* Camif Controller */
-
-#ifdef CONFIG_CPU_S3C2440
-static struct resource s3c_camif_resource[] = {
- [0] = DEFINE_RES_MEM(S3C2440_PA_CAMIF, S3C2440_SZ_CAMIF),
- [1] = DEFINE_RES_IRQ(IRQ_S3C2440_CAM_C),
- [2] = DEFINE_RES_IRQ(IRQ_S3C2440_CAM_P),
-};
-
-struct platform_device s3c_device_camif = {
- .name = "s3c2440-camif",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_camif_resource),
- .resource = s3c_camif_resource,
- .dev = {
- .dma_mask = &samsung_device_dma_mask,
- .coherent_dma_mask = DMA_BIT_MASK(32),
- }
-};
-#endif /* CONFIG_CPU_S3C2440 */
-
/* FB */
#ifdef CONFIG_S3C_DEV_FB
@@ -168,22 +77,6 @@ void __init s3c_fb_set_platdata(struct s3c_fb_platdata *pd)
}
#endif /* CONFIG_S3C_DEV_FB */
-/* HWMON */
-
-#ifdef CONFIG_S3C_DEV_HWMON
-struct platform_device s3c_device_hwmon = {
- .name = "s3c-hwmon",
- .id = -1,
- .dev.parent = &s3c_device_adc.dev,
-};
-
-void __init s3c_hwmon_set_platdata(struct s3c_hwmon_pdata *pd)
-{
- s3c_set_platdata(pd, sizeof(struct s3c_hwmon_pdata),
- &s3c_device_hwmon);
-}
-#endif /* CONFIG_S3C_DEV_HWMON */
-
/* HSMMC */
#ifdef CONFIG_S3C_DEV_HSMMC
@@ -373,220 +266,6 @@ void __init s3c_i2c1_set_platdata(struct s3c2410_platform_i2c *pd)
}
#endif /* CONFIG_S3C_DEV_I2C1 */
-#ifdef CONFIG_S3C_DEV_I2C2
-static struct resource s3c_i2c2_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_IIC2, SZ_4K),
- [1] = DEFINE_RES_IRQ(IRQ_IIC2),
-};
-
-struct platform_device s3c_device_i2c2 = {
- .name = "s3c2410-i2c",
- .id = 2,
- .num_resources = ARRAY_SIZE(s3c_i2c2_resource),
- .resource = s3c_i2c2_resource,
-};
-
-void __init s3c_i2c2_set_platdata(struct s3c2410_platform_i2c *pd)
-{
- struct s3c2410_platform_i2c *npd;
-
- if (!pd) {
- pd = &default_i2c_data;
- pd->bus_num = 2;
- }
-
- npd = s3c_set_platdata(pd, sizeof(*npd), &s3c_device_i2c2);
-
- if (!npd->cfg_gpio)
- npd->cfg_gpio = s3c_i2c2_cfg_gpio;
-}
-#endif /* CONFIG_S3C_DEV_I2C2 */
-
-#ifdef CONFIG_S3C_DEV_I2C3
-static struct resource s3c_i2c3_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_IIC3, SZ_4K),
- [1] = DEFINE_RES_IRQ(IRQ_IIC3),
-};
-
-struct platform_device s3c_device_i2c3 = {
- .name = "s3c2440-i2c",
- .id = 3,
- .num_resources = ARRAY_SIZE(s3c_i2c3_resource),
- .resource = s3c_i2c3_resource,
-};
-
-void __init s3c_i2c3_set_platdata(struct s3c2410_platform_i2c *pd)
-{
- struct s3c2410_platform_i2c *npd;
-
- if (!pd) {
- pd = &default_i2c_data;
- pd->bus_num = 3;
- }
-
- npd = s3c_set_platdata(pd, sizeof(*npd), &s3c_device_i2c3);
-
- if (!npd->cfg_gpio)
- npd->cfg_gpio = s3c_i2c3_cfg_gpio;
-}
-#endif /*CONFIG_S3C_DEV_I2C3 */
-
-#ifdef CONFIG_S3C_DEV_I2C4
-static struct resource s3c_i2c4_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_IIC4, SZ_4K),
- [1] = DEFINE_RES_IRQ(IRQ_IIC4),
-};
-
-struct platform_device s3c_device_i2c4 = {
- .name = "s3c2440-i2c",
- .id = 4,
- .num_resources = ARRAY_SIZE(s3c_i2c4_resource),
- .resource = s3c_i2c4_resource,
-};
-
-void __init s3c_i2c4_set_platdata(struct s3c2410_platform_i2c *pd)
-{
- struct s3c2410_platform_i2c *npd;
-
- if (!pd) {
- pd = &default_i2c_data;
- pd->bus_num = 4;
- }
-
- npd = s3c_set_platdata(pd, sizeof(*npd), &s3c_device_i2c4);
-
- if (!npd->cfg_gpio)
- npd->cfg_gpio = s3c_i2c4_cfg_gpio;
-}
-#endif /*CONFIG_S3C_DEV_I2C4 */
-
-#ifdef CONFIG_S3C_DEV_I2C5
-static struct resource s3c_i2c5_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_IIC5, SZ_4K),
- [1] = DEFINE_RES_IRQ(IRQ_IIC5),
-};
-
-struct platform_device s3c_device_i2c5 = {
- .name = "s3c2440-i2c",
- .id = 5,
- .num_resources = ARRAY_SIZE(s3c_i2c5_resource),
- .resource = s3c_i2c5_resource,
-};
-
-void __init s3c_i2c5_set_platdata(struct s3c2410_platform_i2c *pd)
-{
- struct s3c2410_platform_i2c *npd;
-
- if (!pd) {
- pd = &default_i2c_data;
- pd->bus_num = 5;
- }
-
- npd = s3c_set_platdata(pd, sizeof(*npd), &s3c_device_i2c5);
-
- if (!npd->cfg_gpio)
- npd->cfg_gpio = s3c_i2c5_cfg_gpio;
-}
-#endif /*CONFIG_S3C_DEV_I2C5 */
-
-#ifdef CONFIG_S3C_DEV_I2C6
-static struct resource s3c_i2c6_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_IIC6, SZ_4K),
- [1] = DEFINE_RES_IRQ(IRQ_IIC6),
-};
-
-struct platform_device s3c_device_i2c6 = {
- .name = "s3c2440-i2c",
- .id = 6,
- .num_resources = ARRAY_SIZE(s3c_i2c6_resource),
- .resource = s3c_i2c6_resource,
-};
-
-void __init s3c_i2c6_set_platdata(struct s3c2410_platform_i2c *pd)
-{
- struct s3c2410_platform_i2c *npd;
-
- if (!pd) {
- pd = &default_i2c_data;
- pd->bus_num = 6;
- }
-
- npd = s3c_set_platdata(pd, sizeof(*npd), &s3c_device_i2c6);
-
- if (!npd->cfg_gpio)
- npd->cfg_gpio = s3c_i2c6_cfg_gpio;
-}
-#endif /* CONFIG_S3C_DEV_I2C6 */
-
-#ifdef CONFIG_S3C_DEV_I2C7
-static struct resource s3c_i2c7_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_IIC7, SZ_4K),
- [1] = DEFINE_RES_IRQ(IRQ_IIC7),
-};
-
-struct platform_device s3c_device_i2c7 = {
- .name = "s3c2440-i2c",
- .id = 7,
- .num_resources = ARRAY_SIZE(s3c_i2c7_resource),
- .resource = s3c_i2c7_resource,
-};
-
-void __init s3c_i2c7_set_platdata(struct s3c2410_platform_i2c *pd)
-{
- struct s3c2410_platform_i2c *npd;
-
- if (!pd) {
- pd = &default_i2c_data;
- pd->bus_num = 7;
- }
-
- npd = s3c_set_platdata(pd, sizeof(*npd), &s3c_device_i2c7);
-
- if (!npd->cfg_gpio)
- npd->cfg_gpio = s3c_i2c7_cfg_gpio;
-}
-#endif /* CONFIG_S3C_DEV_I2C7 */
-
-/* I2S */
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct resource s3c_iis_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_IIS, S3C24XX_SZ_IIS),
-};
-
-struct platform_device s3c_device_iis = {
- .name = "s3c24xx-iis",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_iis_resource),
- .resource = s3c_iis_resource,
- .dev = {
- .dma_mask = &samsung_device_dma_mask,
- .coherent_dma_mask = DMA_BIT_MASK(32),
- }
-};
-#endif /* CONFIG_PLAT_S3C24XX */
-
-/* IDE CFCON */
-
-#ifdef CONFIG_SAMSUNG_DEV_IDE
-static struct resource s3c_cfcon_resource[] = {
- [0] = DEFINE_RES_MEM(SAMSUNG_PA_CFCON, SZ_16K),
- [1] = DEFINE_RES_IRQ(IRQ_CFCON),
-};
-
-struct platform_device s3c_device_cfcon = {
- .id = 0,
- .num_resources = ARRAY_SIZE(s3c_cfcon_resource),
- .resource = s3c_cfcon_resource,
-};
-
-void __init s3c_ide_set_platdata(struct s3c_ide_platdata *pdata)
-{
- s3c_set_platdata(pdata, sizeof(struct s3c_ide_platdata),
- &s3c_device_cfcon);
-}
-#endif /* CONFIG_SAMSUNG_DEV_IDE */
-
/* KEYPAD */
#ifdef CONFIG_SAMSUNG_DEV_KEYPAD
@@ -613,175 +292,6 @@ void __init samsung_keypad_set_platdata(struct samsung_keypad_platdata *pd)
}
#endif /* CONFIG_SAMSUNG_DEV_KEYPAD */
-/* LCD Controller */
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct resource s3c_lcd_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_LCD, S3C24XX_SZ_LCD),
- [1] = DEFINE_RES_IRQ(IRQ_LCD),
-};
-
-struct platform_device s3c_device_lcd = {
- .name = "s3c2410-lcd",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_lcd_resource),
- .resource = s3c_lcd_resource,
- .dev = {
- .dma_mask = &samsung_device_dma_mask,
- .coherent_dma_mask = DMA_BIT_MASK(32),
- }
-};
-
-void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *pd)
-{
- struct s3c2410fb_mach_info *npd;
-
- npd = s3c_set_platdata(pd, sizeof(*npd), &s3c_device_lcd);
- if (npd) {
- npd->displays = kmemdup(pd->displays,
- sizeof(struct s3c2410fb_display) * npd->num_displays,
- GFP_KERNEL);
- if (!npd->displays)
- printk(KERN_ERR "no memory for LCD display data\n");
- } else {
- printk(KERN_ERR "no memory for LCD platform data\n");
- }
-}
-#endif /* CONFIG_PLAT_S3C24XX */
-
-/* NAND */
-
-#ifdef CONFIG_S3C_DEV_NAND
-static struct resource s3c_nand_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_NAND, SZ_1M),
-};
-
-struct platform_device s3c_device_nand = {
- .name = "s3c2410-nand",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_nand_resource),
- .resource = s3c_nand_resource,
-};
-
-/*
- * s3c_nand_copy_set() - copy nand set data
- * @set: The new structure, directly copied from the old.
- *
- * Copy all the fields from the NAND set field from what is probably __initdata
- * to new kernel memory. The code returns 0 if the copy happened correctly or
- * an error code for the calling function to display.
- *
- * Note, we currently do not try and look to see if we've already copied the
- * data in a previous set.
- */
-static int __init s3c_nand_copy_set(struct s3c2410_nand_set *set)
-{
- void *ptr;
- int size;
-
- size = sizeof(struct mtd_partition) * set->nr_partitions;
- if (size) {
- ptr = kmemdup(set->partitions, size, GFP_KERNEL);
- set->partitions = ptr;
-
- if (!ptr)
- return -ENOMEM;
- }
-
- if (set->nr_map && set->nr_chips) {
- size = sizeof(int) * set->nr_chips;
- ptr = kmemdup(set->nr_map, size, GFP_KERNEL);
- set->nr_map = ptr;
-
- if (!ptr)
- return -ENOMEM;
- }
-
- return 0;
-}
-
-void __init s3c_nand_set_platdata(struct s3c2410_platform_nand *nand)
-{
- struct s3c2410_platform_nand *npd;
- int size;
- int ret;
-
- /* note, if we get a failure in allocation, we simply drop out of the
- * function. If there is so little memory available at initialisation
- * time then there is little chance the system is going to run.
- */
-
- npd = s3c_set_platdata(nand, sizeof(*npd), &s3c_device_nand);
- if (!npd)
- return;
-
- /* now see if we need to copy any of the nand set data */
-
- size = sizeof(struct s3c2410_nand_set) * npd->nr_sets;
- if (size) {
- struct s3c2410_nand_set *from = npd->sets;
- struct s3c2410_nand_set *to;
- int i;
-
- to = kmemdup(from, size, GFP_KERNEL);
- npd->sets = to; /* set, even if we failed */
-
- if (!to) {
- printk(KERN_ERR "%s: no memory for sets\n", __func__);
- return;
- }
-
- for (i = 0; i < npd->nr_sets; i++) {
- ret = s3c_nand_copy_set(to);
- if (ret) {
- printk(KERN_ERR "%s: failed to copy set %d\n",
- __func__, i);
- return;
- }
- to++;
- }
- }
-}
-#endif /* CONFIG_S3C_DEV_NAND */
-
-/* ONENAND */
-
-#ifdef CONFIG_S3C_DEV_ONENAND
-static struct resource s3c_onenand_resources[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_ONENAND, SZ_1K),
- [1] = DEFINE_RES_MEM(S3C_PA_ONENAND_BUF, S3C_SZ_ONENAND_BUF),
- [2] = DEFINE_RES_IRQ(IRQ_ONENAND),
-};
-
-struct platform_device s3c_device_onenand = {
- .name = "samsung-onenand",
- .id = 0,
- .num_resources = ARRAY_SIZE(s3c_onenand_resources),
- .resource = s3c_onenand_resources,
-};
-#endif /* CONFIG_S3C_DEV_ONENAND */
-
-#ifdef CONFIG_S3C64XX_DEV_ONENAND1
-static struct resource s3c64xx_onenand1_resources[] = {
- [0] = DEFINE_RES_MEM(S3C64XX_PA_ONENAND1, SZ_1K),
- [1] = DEFINE_RES_MEM(S3C64XX_PA_ONENAND1_BUF, S3C64XX_SZ_ONENAND1_BUF),
- [2] = DEFINE_RES_IRQ(IRQ_ONENAND1),
-};
-
-struct platform_device s3c64xx_device_onenand1 = {
- .name = "samsung-onenand",
- .id = 1,
- .num_resources = ARRAY_SIZE(s3c64xx_onenand1_resources),
- .resource = s3c64xx_onenand1_resources,
-};
-
-void __init s3c64xx_onenand1_set_platdata(struct onenand_platform_data *pdata)
-{
- s3c_set_platdata(pdata, sizeof(struct onenand_platform_data),
- &s3c64xx_device_onenand1);
-}
-#endif /* CONFIG_S3C64XX_DEV_ONENAND1 */
-
/* PWM Timer */
#ifdef CONFIG_SAMSUNG_DEV_PWM
@@ -802,162 +312,6 @@ void __init samsung_pwm_set_platdata(struct samsung_pwm_variant *pd)
}
#endif /* CONFIG_SAMSUNG_DEV_PWM */
-/* RTC */
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct resource s3c_rtc_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_RTC, SZ_256),
- [1] = DEFINE_RES_IRQ(IRQ_RTC),
- [2] = DEFINE_RES_IRQ(IRQ_TICK),
-};
-
-struct platform_device s3c_device_rtc = {
- .name = "s3c2410-rtc",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_rtc_resource),
- .resource = s3c_rtc_resource,
-};
-#endif /* CONFIG_PLAT_S3C24XX */
-
-#ifdef CONFIG_S3C_DEV_RTC
-static struct resource s3c_rtc_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_RTC, SZ_256),
- [1] = DEFINE_RES_IRQ(IRQ_RTC_ALARM),
- [2] = DEFINE_RES_IRQ(IRQ_RTC_TIC),
-};
-
-struct platform_device s3c_device_rtc = {
- .name = "s3c64xx-rtc",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_rtc_resource),
- .resource = s3c_rtc_resource,
-};
-#endif /* CONFIG_S3C_DEV_RTC */
-
-/* SDI */
-
-#ifdef CONFIG_PLAT_S3C24XX
-void s3c24xx_mci_def_set_power(unsigned char power_mode, unsigned short vdd)
-{
- switch (power_mode) {
- case MMC_POWER_ON:
- case MMC_POWER_UP:
- /* Configure GPE5...GPE10 pins in SD mode */
- s3c_gpio_cfgall_range(S3C2410_GPE(5), 6, S3C_GPIO_SFN(2),
- S3C_GPIO_PULL_NONE);
- break;
-
- case MMC_POWER_OFF:
- default:
- gpio_direction_output(S3C2410_GPE(5), 0);
- break;
- }
-}
-
-static struct resource s3c_sdi_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_SDI, S3C24XX_SZ_SDI),
- [1] = DEFINE_RES_IRQ(IRQ_SDI),
-};
-
-static struct s3c24xx_mci_pdata s3cmci_def_pdata = {
- /* This is currently here to avoid a number of if (host->pdata)
- * checks. Any zero fields to ensure reasonable defaults are picked. */
- .no_wprotect = 1,
- .no_detect = 1,
- .set_power = s3c24xx_mci_def_set_power,
-};
-
-struct platform_device s3c_device_sdi = {
- .name = "s3c2410-sdi",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_sdi_resource),
- .resource = s3c_sdi_resource,
- .dev.platform_data = &s3cmci_def_pdata,
-};
-
-void __init s3c24xx_mci_set_platdata(struct s3c24xx_mci_pdata *pdata)
-{
- s3c_set_platdata(pdata, sizeof(struct s3c24xx_mci_pdata),
- &s3c_device_sdi);
-}
-#endif /* CONFIG_PLAT_S3C24XX */
-
-/* SPI */
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct resource s3c_spi0_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_SPI, SZ_32),
- [1] = DEFINE_RES_IRQ(IRQ_SPI0),
-};
-
-struct platform_device s3c_device_spi0 = {
- .name = "s3c2410-spi",
- .id = 0,
- .num_resources = ARRAY_SIZE(s3c_spi0_resource),
- .resource = s3c_spi0_resource,
- .dev = {
- .dma_mask = &samsung_device_dma_mask,
- .coherent_dma_mask = DMA_BIT_MASK(32),
- }
-};
-
-static struct resource s3c_spi1_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_SPI1, SZ_32),
- [1] = DEFINE_RES_IRQ(IRQ_SPI1),
-};
-
-struct platform_device s3c_device_spi1 = {
- .name = "s3c2410-spi",
- .id = 1,
- .num_resources = ARRAY_SIZE(s3c_spi1_resource),
- .resource = s3c_spi1_resource,
- .dev = {
- .dma_mask = &samsung_device_dma_mask,
- .coherent_dma_mask = DMA_BIT_MASK(32),
- }
-};
-#endif /* CONFIG_PLAT_S3C24XX */
-
-/* Touchscreen */
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct resource s3c_ts_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_ADC, S3C24XX_SZ_ADC),
- [1] = DEFINE_RES_IRQ(IRQ_TC),
-};
-
-struct platform_device s3c_device_ts = {
- .name = "s3c2410-ts",
- .id = -1,
- .dev.parent = &s3c_device_adc.dev,
- .num_resources = ARRAY_SIZE(s3c_ts_resource),
- .resource = s3c_ts_resource,
-};
-
-void __init s3c24xx_ts_set_platdata(struct s3c2410_ts_mach_info *hard_s3c2410ts_info)
-{
- s3c_set_platdata(hard_s3c2410ts_info,
- sizeof(struct s3c2410_ts_mach_info), &s3c_device_ts);
-}
-#endif /* CONFIG_PLAT_S3C24XX */
-
-#ifdef CONFIG_SAMSUNG_DEV_TS
-static struct s3c2410_ts_mach_info default_ts_data __initdata = {
- .delay = 10000,
- .presc = 49,
- .oversampling_shift = 2,
-};
-
-void __init s3c64xx_ts_set_platdata(struct s3c2410_ts_mach_info *pd)
-{
- if (!pd)
- pd = &default_ts_data;
-
- s3c_set_platdata(pd, sizeof(struct s3c2410_ts_mach_info),
- &s3c_device_adc);
-}
-#endif /* CONFIG_SAMSUNG_DEV_TS */
-
/* USB */
#ifdef CONFIG_S3C_DEV_USB_HOST
@@ -976,44 +330,8 @@ struct platform_device s3c_device_ohci = {
.coherent_dma_mask = DMA_BIT_MASK(32),
}
};
-
-/*
- * s3c_ohci_set_platdata - initialise OHCI device platform data
- * @info: The platform data.
- *
- * This call copies the @info passed in and sets the device .platform_data
- * field to that copy. The @info is copied so that the original can be marked
- * __initdata.
- */
-
-void __init s3c_ohci_set_platdata(struct s3c2410_hcd_info *info)
-{
- s3c_set_platdata(info, sizeof(struct s3c2410_hcd_info),
- &s3c_device_ohci);
-}
#endif /* CONFIG_S3C_DEV_USB_HOST */
-/* USB Device (Gadget) */
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct resource s3c_usbgadget_resource[] = {
- [0] = DEFINE_RES_MEM(S3C24XX_PA_USBDEV, S3C24XX_SZ_USBDEV),
- [1] = DEFINE_RES_IRQ(IRQ_USBD),
-};
-
-struct platform_device s3c_device_usbgadget = {
- .name = "s3c2410-usbgadget",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_usbgadget_resource),
- .resource = s3c_usbgadget_resource,
-};
-
-void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *pd)
-{
- s3c_set_platdata(pd, sizeof(*pd), &s3c_device_usbgadget);
-}
-#endif /* CONFIG_PLAT_S3C24XX */
-
/* USB HSOTG */
#ifdef CONFIG_S3C_DEV_USB_HSOTG
@@ -1046,49 +364,6 @@ void __init dwc2_hsotg_set_platdata(struct dwc2_hsotg_plat *pd)
}
#endif /* CONFIG_S3C_DEV_USB_HSOTG */
-/* USB High Spped 2.0 Device (Gadget) */
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct resource s3c_hsudc_resource[] = {
- [0] = DEFINE_RES_MEM(S3C2416_PA_HSUDC, S3C2416_SZ_HSUDC),
- [1] = DEFINE_RES_IRQ(IRQ_USBD),
-};
-
-struct platform_device s3c_device_usb_hsudc = {
- .name = "s3c-hsudc",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_hsudc_resource),
- .resource = s3c_hsudc_resource,
- .dev = {
- .dma_mask = &samsung_device_dma_mask,
- .coherent_dma_mask = DMA_BIT_MASK(32),
- },
-};
-
-void __init s3c24xx_hsudc_set_platdata(struct s3c24xx_hsudc_platdata *pd)
-{
- s3c_set_platdata(pd, sizeof(*pd), &s3c_device_usb_hsudc);
- pd->phy_init = s3c_hsudc_init_phy;
- pd->phy_uninit = s3c_hsudc_uninit_phy;
-}
-#endif /* CONFIG_PLAT_S3C24XX */
-
-/* WDT */
-
-#ifdef CONFIG_S3C_DEV_WDT
-static struct resource s3c_wdt_resource[] = {
- [0] = DEFINE_RES_MEM(S3C_PA_WDT, SZ_1K),
- [1] = DEFINE_RES_IRQ(IRQ_WDT),
-};
-
-struct platform_device s3c_device_wdt = {
- .name = "s3c2410-wdt",
- .id = -1,
- .num_resources = ARRAY_SIZE(s3c_wdt_resource),
- .resource = s3c_wdt_resource,
-};
-#endif /* CONFIG_S3C_DEV_WDT */
-
#ifdef CONFIG_S3C64XX_DEV_SPI0
static struct resource s3c64xx_spi0_resource[] = {
[0] = DEFINE_RES_MEM(S3C_PA_SPI0, SZ_256),
diff --git a/arch/arm/mach-s3c/devs.h b/arch/arm/mach-s3c/devs.h
index 991b9b2006a1..21c00786c264 100644
--- a/arch/arm/mach-s3c/devs.h
+++ b/arch/arm/mach-s3c/devs.h
@@ -25,60 +25,23 @@ extern struct s3c24xx_uart_resources s3c64xx_uart_resources[];
extern struct platform_device *s3c24xx_uart_devs[];
extern struct platform_device *s3c24xx_uart_src[];
-extern struct platform_device s3c64xx_device_ac97;
extern struct platform_device s3c64xx_device_iis0;
extern struct platform_device s3c64xx_device_iis1;
-extern struct platform_device s3c64xx_device_iisv4;
-extern struct platform_device s3c64xx_device_onenand1;
-extern struct platform_device s3c64xx_device_pcm0;
-extern struct platform_device s3c64xx_device_pcm1;
extern struct platform_device s3c64xx_device_spi0;
-extern struct platform_device s3c_device_adc;
-extern struct platform_device s3c_device_cfcon;
extern struct platform_device s3c_device_fb;
-extern struct platform_device s3c_device_hwmon;
extern struct platform_device s3c_device_hsmmc0;
extern struct platform_device s3c_device_hsmmc1;
extern struct platform_device s3c_device_hsmmc2;
extern struct platform_device s3c_device_hsmmc3;
extern struct platform_device s3c_device_i2c0;
extern struct platform_device s3c_device_i2c1;
-extern struct platform_device s3c_device_i2c2;
-extern struct platform_device s3c_device_i2c3;
-extern struct platform_device s3c_device_i2c4;
-extern struct platform_device s3c_device_i2c5;
-extern struct platform_device s3c_device_i2c6;
-extern struct platform_device s3c_device_i2c7;
-extern struct platform_device s3c_device_iis;
-extern struct platform_device s3c_device_lcd;
-extern struct platform_device s3c_device_nand;
extern struct platform_device s3c_device_ohci;
-extern struct platform_device s3c_device_onenand;
-extern struct platform_device s3c_device_rtc;
-extern struct platform_device s3c_device_sdi;
-extern struct platform_device s3c_device_spi0;
-extern struct platform_device s3c_device_spi1;
-extern struct platform_device s3c_device_ts;
-extern struct platform_device s3c_device_timer[];
-extern struct platform_device s3c_device_usbgadget;
extern struct platform_device s3c_device_usb_hsotg;
-extern struct platform_device s3c_device_usb_hsudc;
-extern struct platform_device s3c_device_wdt;
-extern struct platform_device samsung_asoc_idma;
extern struct platform_device samsung_device_keypad;
extern struct platform_device samsung_device_pwm;
-/* s3c2440 specific devices */
-
-#ifdef CONFIG_CPU_S3C2440
-
-extern struct platform_device s3c_device_camif;
-extern struct platform_device s3c_device_ac97;
-
-#endif
-
/**
* s3c_set_platdata() - helper for setting platform data
* @pd: The default platform data for this device.
diff --git a/arch/arm/mach-s3c/dma-s3c64xx.h b/arch/arm/mach-s3c/dma-s3c64xx.h
deleted file mode 100644
index 40ca8de21096..000000000000
diff --git a/arch/arm/mach-s3c/dma.h b/arch/arm/mach-s3c/dma.h
deleted file mode 100644
index 48057cb90070..000000000000
diff --git a/arch/arm/mach-s3c/gpio-cfg-helpers.h b/arch/arm/mach-s3c/gpio-cfg-helpers.h
index db0c56f5ca15..9d6f6319ae3e 100644
--- a/arch/arm/mach-s3c/gpio-cfg-helpers.h
+++ b/arch/arm/mach-s3c/gpio-cfg-helpers.h
@@ -26,134 +26,10 @@ static inline int samsung_gpio_do_setcfg(struct samsung_gpio_chip *chip,
return (chip->config->set_config)(chip, off, config);
}
-static inline unsigned samsung_gpio_do_getcfg(struct samsung_gpio_chip *chip,
- unsigned int off)
-{
- return (chip->config->get_config)(chip, off);
-}
-
static inline int samsung_gpio_do_setpull(struct samsung_gpio_chip *chip,
unsigned int off, samsung_gpio_pull_t pull)
{
return (chip->config->set_pull)(chip, off, pull);
}
-static inline samsung_gpio_pull_t samsung_gpio_do_getpull(struct samsung_gpio_chip *chip,
- unsigned int off)
-{
- return chip->config->get_pull(chip, off);
-}
-
-/* Pull-{up,down} resistor controls.
- *
- * S3C2410,S3C2440 = Pull-UP,
- * S3C2412,S3C2413 = Pull-Down
- * S3C6400,S3C6410 = Pull-Both [None,Down,Up,Undef]
- * S3C2443 = Pull-Both [not same as S3C6400]
- */
-
-/**
- * s3c24xx_gpio_setpull_1up() - Pull configuration for choice of up or none.
- * @chip: The gpio chip that is being configured.
- * @off: The offset for the GPIO being configured.
- * @param: pull: The pull mode being requested.
- *
- * This is a helper function for the case where we have GPIOs with one
- * bit configuring the presence of a pull-up resistor.
- */
-extern int s3c24xx_gpio_setpull_1up(struct samsung_gpio_chip *chip,
- unsigned int off, samsung_gpio_pull_t pull);
-
-/**
- * s3c24xx_gpio_setpull_1down() - Pull configuration for choice of down or none
- * @chip: The gpio chip that is being configured
- * @off: The offset for the GPIO being configured
- * @param: pull: The pull mode being requested
- *
- * This is a helper function for the case where we have GPIOs with one
- * bit configuring the presence of a pull-down resistor.
- */
-extern int s3c24xx_gpio_setpull_1down(struct samsung_gpio_chip *chip,
- unsigned int off, samsung_gpio_pull_t pull);
-
-/**
- * samsung_gpio_setpull_upown() - Pull configuration for choice of up,
- * down or none
- *
- * @chip: The gpio chip that is being configured.
- * @off: The offset for the GPIO being configured.
- * @param: pull: The pull mode being requested.
- *
- * This is a helper function for the case where we have GPIOs with two
- * bits configuring the presence of a pull resistor, in the following
- * order:
- * 00 = No pull resistor connected
- * 01 = Pull-up resistor connected
- * 10 = Pull-down resistor connected
- */
-extern int samsung_gpio_setpull_updown(struct samsung_gpio_chip *chip,
- unsigned int off, samsung_gpio_pull_t pull);
-
-/**
- * samsung_gpio_getpull_updown() - Get configuration for choice of up,
- * down or none
- *
- * @chip: The gpio chip that the GPIO pin belongs to
- * @off: The offset to the pin to get the configuration of.
- *
- * This helper function reads the state of the pull-{up,down} resistor
- * for the given GPIO in the same case as samsung_gpio_setpull_upown.
-*/
-extern samsung_gpio_pull_t samsung_gpio_getpull_updown(struct samsung_gpio_chip *chip,
- unsigned int off);
-
-/**
- * s3c24xx_gpio_getpull_1up() - Get configuration for choice of up or none
- * @chip: The gpio chip that the GPIO pin belongs to
- * @off: The offset to the pin to get the configuration of.
- *
- * This helper function reads the state of the pull-up resistor for the
- * given GPIO in the same case as s3c24xx_gpio_setpull_1up.
-*/
-extern samsung_gpio_pull_t s3c24xx_gpio_getpull_1up(struct samsung_gpio_chip *chip,
- unsigned int off);
-
-/**
- * s3c24xx_gpio_getpull_1down() - Get configuration for choice of down or none
- * @chip: The gpio chip that the GPIO pin belongs to
- * @off: The offset to the pin to get the configuration of.
- *
- * This helper function reads the state of the pull-down resistor for the
- * given GPIO in the same case as s3c24xx_gpio_setpull_1down.
-*/
-extern samsung_gpio_pull_t s3c24xx_gpio_getpull_1down(struct samsung_gpio_chip *chip,
- unsigned int off);
-
-/**
- * s3c2443_gpio_setpull() - Pull configuration for s3c2443.
- * @chip: The gpio chip that is being configured.
- * @off: The offset for the GPIO being configured.
- * @param: pull: The pull mode being requested.
- *
- * This is a helper function for the case where we have GPIOs with two
- * bits configuring the presence of a pull resistor, in the following
- * order:
- * 00 = Pull-up resistor connected
- * 10 = Pull-down resistor connected
- * x1 = No pull up resistor
- */
-extern int s3c2443_gpio_setpull(struct samsung_gpio_chip *chip,
- unsigned int off, samsung_gpio_pull_t pull);
-
-/**
- * s3c2443_gpio_getpull() - Get configuration for s3c2443 pull resistors
- * @chip: The gpio chip that the GPIO pin belongs to.
- * @off: The offset to the pin to get the configuration of.
- *
- * This helper function reads the state of the pull-{up,down} resistor for the
- * given GPIO in the same case as samsung_gpio_setpull_upown.
-*/
-extern samsung_gpio_pull_t s3c2443_gpio_getpull(struct samsung_gpio_chip *chip,
- unsigned int off);
-
#endif /* __PLAT_GPIO_CFG_HELPERS_H */
diff --git a/arch/arm/mach-s3c/gpio-cfg.h b/arch/arm/mach-s3c/gpio-cfg.h
index 469c220e092b..2dfb0561001e 100644
--- a/arch/arm/mach-s3c/gpio-cfg.h
+++ b/arch/arm/mach-s3c/gpio-cfg.h
@@ -94,17 +94,6 @@ struct samsung_gpio_cfg {
*/
extern int s3c_gpio_cfgpin(unsigned int pin, unsigned int to);
-/**
- * s3c_gpio_getcfg - Read the current function for a GPIO pin
- * @pin: The pin to read the configuration value for.
- *
- * Read the configuration state of the given @pin, returning a value that
- * could be passed back to s3c_gpio_cfgpin().
- *
- * @sa s3c_gpio_cfgpin
- */
-extern unsigned s3c_gpio_getcfg(unsigned int pin);
-
/**
* s3c_gpio_cfgpin_range() - Change the GPIO function for configuring pin range
* @start: The pin number to start at
@@ -142,14 +131,6 @@ extern int s3c_gpio_cfgpin_range(unsigned int start, unsigned int nr,
*/
extern int s3c_gpio_setpull(unsigned int pin, samsung_gpio_pull_t pull);
-/**
- * s3c_gpio_getpull() - get the pull resistor state of a gpio pin
- * @pin: The pin number to get the settings for
- *
- * Read the pull resistor value for the specified pin.
-*/
-extern samsung_gpio_pull_t s3c_gpio_getpull(unsigned int pin);
-
/* configure `all` aspects of an gpio */
/**
diff --git a/arch/arm/mach-s3c/gpio-core.h b/arch/arm/mach-s3c/gpio-core.h
index b361c8c0d669..6801c85fb9da 100644
--- a/arch/arm/mach-s3c/gpio-core.h
+++ b/arch/arm/mach-s3c/gpio-core.h
@@ -93,9 +93,6 @@ static inline struct samsung_gpio_chip *to_samsung_gpio(struct gpio_chip *gpc)
*/
extern int samsung_gpiolib_to_irq(struct gpio_chip *chip, unsigned int offset);
-/* exported for core SoC support to change */
-extern struct samsung_gpio_cfg s3c24xx_gpiocfg_default;
-
#ifdef CONFIG_S3C_GPIO_TRACK
extern struct samsung_gpio_chip *s3c_gpios[S3C_GPIO_END];
diff --git a/arch/arm/mach-s3c/gpio-samsung.c b/arch/arm/mach-s3c/gpio-samsung.c
index b7fc7c41309c..87daaa09e2c3 100644
--- a/arch/arm/mach-s3c/gpio-samsung.c
+++ b/arch/arm/mach-s3c/gpio-samsung.c
@@ -35,10 +35,9 @@
#include "gpio-core.h"
#include "gpio-cfg.h"
#include "gpio-cfg-helpers.h"
-#include "hardware-s3c24xx.h"
#include "pm.h"
-int samsung_gpio_setpull_updown(struct samsung_gpio_chip *chip,
+static int samsung_gpio_setpull_updown(struct samsung_gpio_chip *chip,
unsigned int off, samsung_gpio_pull_t pull)
{
void __iomem *reg = chip->base + 0x08;
@@ -53,7 +52,7 @@ int samsung_gpio_setpull_updown(struct samsung_gpio_chip *chip,
return 0;
}
-samsung_gpio_pull_t samsung_gpio_getpull_updown(struct samsung_gpio_chip *chip,
+static samsung_gpio_pull_t samsung_gpio_getpull_updown(struct samsung_gpio_chip *chip,
unsigned int off)
{
void __iomem *reg = chip->base + 0x08;
@@ -66,113 +65,6 @@ samsung_gpio_pull_t samsung_gpio_getpull_updown(struct samsung_gpio_chip *chip,
return (__force samsung_gpio_pull_t)pup;
}
-int s3c2443_gpio_setpull(struct samsung_gpio_chip *chip,
- unsigned int off, samsung_gpio_pull_t pull)
-{
- switch (pull) {
- case S3C_GPIO_PULL_NONE:
- pull = 0x01;
- break;
- case S3C_GPIO_PULL_UP:
- pull = 0x00;
- break;
- case S3C_GPIO_PULL_DOWN:
- pull = 0x02;
- break;
- }
- return samsung_gpio_setpull_updown(chip, off, pull);
-}
-
-samsung_gpio_pull_t s3c2443_gpio_getpull(struct samsung_gpio_chip *chip,
- unsigned int off)
-{
- samsung_gpio_pull_t pull;
-
- pull = samsung_gpio_getpull_updown(chip, off);
-
- switch (pull) {
- case 0x00:
- pull = S3C_GPIO_PULL_UP;
- break;
- case 0x01:
- case 0x03:
- pull = S3C_GPIO_PULL_NONE;
- break;
- case 0x02:
- pull = S3C_GPIO_PULL_DOWN;
- break;
- }
-
- return pull;
-}
-
-static int s3c24xx_gpio_setpull_1(struct samsung_gpio_chip *chip,
- unsigned int off, samsung_gpio_pull_t pull,
- samsung_gpio_pull_t updown)
-{
- void __iomem *reg = chip->base + 0x08;
- u32 pup = __raw_readl(reg);
-
- if (pull == updown)
- pup &= ~(1 << off);
- else if (pull == S3C_GPIO_PULL_NONE)
- pup |= (1 << off);
- else
- return -EINVAL;
-
- __raw_writel(pup, reg);
- return 0;
-}
-
-static samsung_gpio_pull_t s3c24xx_gpio_getpull_1(struct samsung_gpio_chip *chip,
- unsigned int off,
- samsung_gpio_pull_t updown)
-{
- void __iomem *reg = chip->base + 0x08;
- u32 pup = __raw_readl(reg);
-
- pup &= (1 << off);
- return pup ? S3C_GPIO_PULL_NONE : updown;
-}
-
-samsung_gpio_pull_t s3c24xx_gpio_getpull_1up(struct samsung_gpio_chip *chip,
- unsigned int off)
-{
- return s3c24xx_gpio_getpull_1(chip, off, S3C_GPIO_PULL_UP);
-}
-
-int s3c24xx_gpio_setpull_1up(struct samsung_gpio_chip *chip,
- unsigned int off, samsung_gpio_pull_t pull)
-{
- return s3c24xx_gpio_setpull_1(chip, off, pull, S3C_GPIO_PULL_UP);
-}
-
-samsung_gpio_pull_t s3c24xx_gpio_getpull_1down(struct samsung_gpio_chip *chip,
- unsigned int off)
-{
- return s3c24xx_gpio_getpull_1(chip, off, S3C_GPIO_PULL_DOWN);
-}
-
-int s3c24xx_gpio_setpull_1down(struct samsung_gpio_chip *chip,
- unsigned int off, samsung_gpio_pull_t pull)
-{
- return s3c24xx_gpio_setpull_1(chip, off, pull, S3C_GPIO_PULL_DOWN);
-}
-
-/*
- * samsung_gpio_setcfg_2bit - Samsung 2bit style GPIO configuration.
- * @chip: The gpio chip that is being configured.
- * @off: The offset for the GPIO being configured.
- * @cfg: The configuration value to set.
- *
- * This helper deal with the GPIO cases where the control register
- * has two bits of configuration per gpio, which have the following
- * functions:
- * 00 = input
- * 01 = output
- * 1x = special function
- */
-
static int samsung_gpio_setcfg_2bit(struct samsung_gpio_chip *chip,
unsigned int off, unsigned int cfg)
{
@@ -289,70 +181,6 @@ static unsigned samsung_gpio_getcfg_4bit(struct samsung_gpio_chip *chip,
return S3C_GPIO_SPECIAL(con);
}
-#ifdef CONFIG_PLAT_S3C24XX
-/*
- * s3c24xx_gpio_setcfg_abank - S3C24XX style GPIO configuration (Bank A)
- * @chip: The gpio chip that is being configured.
- * @off: The offset for the GPIO being configured.
- * @cfg: The configuration value to set.
- *
- * This helper deal with the GPIO cases where the control register
- * has one bit of configuration for the gpio, where setting the bit
- * means the pin is in special function mode and unset means output.
- */
-
-static int s3c24xx_gpio_setcfg_abank(struct samsung_gpio_chip *chip,
- unsigned int off, unsigned int cfg)
-{
- void __iomem *reg = chip->base;
- unsigned int shift = off;
- u32 con;
-
- if (samsung_gpio_is_cfg_special(cfg)) {
- cfg &= 0xf;
-
- /* Map output to 0, and SFN2 to 1 */
- cfg -= 1;
- if (cfg > 1)
- return -EINVAL;
-
- cfg <<= shift;
- }
-
- con = __raw_readl(reg);
- con &= ~(0x1 << shift);
- con |= cfg;
- __raw_writel(con, reg);
-
- return 0;
-}
-
-/*
- * s3c24xx_gpio_getcfg_abank - S3C24XX style GPIO configuration read (Bank A)
- * @chip: The gpio chip that is being configured.
- * @off: The offset for the GPIO being configured.
- *
- * The reverse of s3c24xx_gpio_setcfg_abank() turning an GPIO into a usable
- * GPIO configuration value.
- *
- * @sa samsung_gpio_getcfg_2bit
- * @sa samsung_gpio_getcfg_4bit
- */
-
-static unsigned s3c24xx_gpio_getcfg_abank(struct samsung_gpio_chip *chip,
- unsigned int off)
-{
- u32 con;
-
- con = __raw_readl(chip->base);
- con >>= off;
- con &= 1;
- con++;
-
- return S3C_GPIO_SFN(con);
-}
-#endif
-
static void __init samsung_gpiolib_set_cfg(struct samsung_gpio_cfg *chipcfg,
int nr_chips)
{
@@ -368,18 +196,6 @@ static void __init samsung_gpiolib_set_cfg(struct samsung_gpio_cfg *chipcfg,
}
}
-struct samsung_gpio_cfg s3c24xx_gpiocfg_default = {
- .set_config = samsung_gpio_setcfg_2bit,
- .get_config = samsung_gpio_getcfg_2bit,
-};
-
-#ifdef CONFIG_PLAT_S3C24XX
-static struct samsung_gpio_cfg s3c24xx_gpiocfg_banka = {
- .set_config = s3c24xx_gpio_setcfg_abank,
- .get_config = s3c24xx_gpio_getcfg_abank,
-};
-#endif
-
static struct samsung_gpio_cfg samsung_gpio_cfgs[] = {
[0] = {
.cfg_eint = 0x0,
@@ -614,44 +430,6 @@ static int samsung_gpiolib_4bit2_output(struct gpio_chip *chip,
return 0;
}
-#ifdef CONFIG_PLAT_S3C24XX
-/* The next set of routines are for the case of s3c24xx bank a */
-
-static int s3c24xx_gpiolib_banka_input(struct gpio_chip *chip, unsigned offset)
-{
- return -EINVAL;
-}
-
-static int s3c24xx_gpiolib_banka_output(struct gpio_chip *chip,
- unsigned offset, int value)
-{
- struct samsung_gpio_chip *ourchip = to_samsung_gpio(chip);
- void __iomem *base = ourchip->base;
- unsigned long flags;
- unsigned long dat;
- unsigned long con;
-
- local_irq_save(flags);
-
- con = __raw_readl(base + 0x00);
- dat = __raw_readl(base + 0x04);
-
- dat &= ~(1 << offset);
- if (value)
- dat |= 1 << offset;
-
- __raw_writel(dat, base + 0x04);
-
- con &= ~(1 << offset);
-
- __raw_writel(con, base + 0x00);
- __raw_writel(dat, base + 0x04);
-
- local_irq_restore(flags);
- return 0;
-}
-#endif
-
static void samsung_gpiolib_set(struct gpio_chip *chip,
unsigned offset, int value)
{
@@ -756,33 +534,6 @@ static void __init samsung_gpiolib_add(struct samsung_gpio_chip *chip)
s3c_gpiolib_track(chip);
}
-static void __init s3c24xx_gpiolib_add_chips(struct samsung_gpio_chip *chip,
- int nr_chips, void __iomem *base)
-{
- int i;
- struct gpio_chip *gc = &chip->chip;
-
- for (i = 0 ; i < nr_chips; i++, chip++) {
- /* skip banks not present on SoC */
- if (chip->chip.base >= S3C_GPIO_END)
- continue;
-
- if (!chip->config)
- chip->config = &s3c24xx_gpiocfg_default;
- if (!chip->pm)
- chip->pm = __gpio_pm(&samsung_gpio_pm_2bit);
- if ((base != NULL) && (chip->base == NULL))
- chip->base = base + ((i) * 0x10);
-
- if (!gc->direction_input)
- gc->direction_input = samsung_gpiolib_2bit_input;
- if (!gc->direction_output)
- gc->direction_output = samsung_gpiolib_2bit_output;
-
- samsung_gpiolib_add(chip);
- }
-}
-
static void __init samsung_gpiolib_add_2bit_chips(struct samsung_gpio_chip *chip,
int nr_chips, void __iomem *base,
unsigned int offset)
@@ -865,24 +616,6 @@ int samsung_gpiolib_to_irq(struct gpio_chip *chip, unsigned int offset)
return samsung_chip->irq_base + offset;
}
-#ifdef CONFIG_PLAT_S3C24XX
-static int s3c24xx_gpiolib_fbank_to_irq(struct gpio_chip *chip, unsigned offset)
-{
- if (offset < 4) {
- if (soc_is_s3c2412())
- return IRQ_EINT0_2412 + offset;
- else
- return IRQ_EINT0 + offset;
- }
-
- if (offset < 8)
- return IRQ_EINT4 + offset - 4;
-
- return -EINVAL;
-}
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
static int s3c64xx_gpiolib_mbank_to_irq(struct gpio_chip *chip, unsigned pin)
{
return pin < 5 ? IRQ_EINT(23) + pin : -ENXIO;
@@ -892,109 +625,6 @@ static int s3c64xx_gpiolib_lbank_to_irq(struct gpio_chip *chip, unsigned pin)
{
return pin >= 8 ? IRQ_EINT(16) + pin - 8 : -ENXIO;
}
-#endif
-
-struct samsung_gpio_chip s3c24xx_gpios[] = {
-#ifdef CONFIG_PLAT_S3C24XX
- {
- .config = &s3c24xx_gpiocfg_banka,
- .chip = {
- .base = S3C2410_GPA(0),
- .owner = THIS_MODULE,
- .label = "GPIOA",
- .ngpio = 27,
- .direction_input = s3c24xx_gpiolib_banka_input,
- .direction_output = s3c24xx_gpiolib_banka_output,
- },
- }, {
- .chip = {
- .base = S3C2410_GPB(0),
- .owner = THIS_MODULE,
- .label = "GPIOB",
- .ngpio = 11,
- },
- }, {
- .chip = {
- .base = S3C2410_GPC(0),
- .owner = THIS_MODULE,
- .label = "GPIOC",
- .ngpio = 16,
- },
- }, {
- .chip = {
- .base = S3C2410_GPD(0),
- .owner = THIS_MODULE,
- .label = "GPIOD",
- .ngpio = 16,
- },
- }, {
- .chip = {
- .base = S3C2410_GPE(0),
- .label = "GPIOE",
- .owner = THIS_MODULE,
- .ngpio = 16,
- },
- }, {
- .chip = {
- .base = S3C2410_GPF(0),
- .owner = THIS_MODULE,
- .label = "GPIOF",
- .ngpio = 8,
- .to_irq = s3c24xx_gpiolib_fbank_to_irq,
- },
- }, {
- .irq_base = IRQ_EINT8,
- .chip = {
- .base = S3C2410_GPG(0),
- .owner = THIS_MODULE,
- .label = "GPIOG",
- .ngpio = 16,
- .to_irq = samsung_gpiolib_to_irq,
- },
- }, {
- .chip = {
- .base = S3C2410_GPH(0),
- .owner = THIS_MODULE,
- .label = "GPIOH",
- .ngpio = 15,
- },
- },
- /* GPIOS for the S3C2443 and later devices. */
- {
- .base = S3C2440_GPJCON,
- .chip = {
- .base = S3C2410_GPJ(0),
- .owner = THIS_MODULE,
- .label = "GPIOJ",
- .ngpio = 16,
- },
- }, {
- .base = S3C2443_GPKCON,
- .chip = {
- .base = S3C2410_GPK(0),
- .owner = THIS_MODULE,
- .label = "GPIOK",
- .ngpio = 16,
- },
- }, {
- .base = S3C2443_GPLCON,
- .chip = {
- .base = S3C2410_GPL(0),
- .owner = THIS_MODULE,
- .label = "GPIOL",
- .ngpio = 15,
- },
- }, {
- .base = S3C2443_GPMCON,
- .chip = {
- .base = S3C2410_GPM(0),
- .owner = THIS_MODULE,
- .label = "GPIOM",
- .ngpio = 2,
- },
- },
-#endif
-};
/*
* GPIO bank summary:
@@ -1023,7 +653,6 @@ struct samsung_gpio_chip s3c24xx_gpios[] = {
*/
static struct samsung_gpio_chip s3c64xx_gpios_4bit[] = {
-#ifdef CONFIG_ARCH_S3C64XX
{
.chip = {
.base = S3C64XX_GPA(0),
@@ -1072,11 +701,9 @@ static struct samsung_gpio_chip s3c64xx_gpios_4bit[] = {
.to_irq = s3c64xx_gpiolib_mbank_to_irq,
},
},
-#endif
};
static struct samsung_gpio_chip s3c64xx_gpios_4bit2[] = {
-#ifdef CONFIG_ARCH_S3C64XX
{
.base = S3C64XX_GPH_BASE + 0x4,
.chip = {
@@ -1102,11 +729,9 @@ static struct samsung_gpio_chip s3c64xx_gpios_4bit2[] = {
.to_irq = s3c64xx_gpiolib_lbank_to_irq,
},
},
-#endif
};
static struct samsung_gpio_chip s3c64xx_gpios_2bit[] = {
-#ifdef CONFIG_ARCH_S3C64XX
{
.base = S3C64XX_GPF_BASE,
.config = &samsung_gpio_cfgs[6],
@@ -1161,7 +786,6 @@ static struct samsung_gpio_chip s3c64xx_gpios_2bit[] = {
.to_irq = samsung_gpiolib_to_irq,
},
},
-#endif
};
/* TODO: cleanup soc_is_* */
@@ -1176,12 +800,7 @@ static __init int samsung_gpiolib_init(void)
if (of_have_populated_dt())
return 0;
- if (soc_is_s3c24xx()) {
- samsung_gpiolib_set_cfg(samsung_gpio_cfgs,
- ARRAY_SIZE(samsung_gpio_cfgs));
- s3c24xx_gpiolib_add_chips(s3c24xx_gpios,
- ARRAY_SIZE(s3c24xx_gpios), S3C24XX_VA_GPIO);
- } else if (soc_is_s3c64xx()) {
+ if (soc_is_s3c64xx()) {
samsung_gpiolib_set_cfg(samsung_gpio_cfgs,
ARRAY_SIZE(samsung_gpio_cfgs));
samsung_gpiolib_add_2bit_chips(s3c64xx_gpios_2bit,
@@ -1249,25 +868,6 @@ int s3c_gpio_cfgall_range(unsigned int start, unsigned int nr,
}
EXPORT_SYMBOL_GPL(s3c_gpio_cfgall_range);
-unsigned s3c_gpio_getcfg(unsigned int pin)
-{
- struct samsung_gpio_chip *chip = samsung_gpiolib_getchip(pin);
- unsigned long flags;
- unsigned ret = 0;
- int offset;
-
- if (chip) {
- offset = pin - chip->chip.base;
-
- samsung_gpio_lock(chip, flags);
- ret = samsung_gpio_do_getcfg(chip, offset);
- samsung_gpio_unlock(chip, flags);
- }
-
- return ret;
-}
-EXPORT_SYMBOL(s3c_gpio_getcfg);
-
int s3c_gpio_setpull(unsigned int pin, samsung_gpio_pull_t pull)
{
struct samsung_gpio_chip *chip = samsung_gpiolib_getchip(pin);
@@ -1286,40 +886,3 @@ int s3c_gpio_setpull(unsigned int pin, samsung_gpio_pull_t pull)
return ret;
}
EXPORT_SYMBOL(s3c_gpio_setpull);
-
-samsung_gpio_pull_t s3c_gpio_getpull(unsigned int pin)
-{
- struct samsung_gpio_chip *chip = samsung_gpiolib_getchip(pin);
- unsigned long flags;
- int offset;
- u32 pup = 0;
-
- if (chip) {
- offset = pin - chip->chip.base;
-
- samsung_gpio_lock(chip, flags);
- pup = samsung_gpio_do_getpull(chip, offset);
- samsung_gpio_unlock(chip, flags);
- }
-
- return (__force samsung_gpio_pull_t)pup;
-}
-EXPORT_SYMBOL(s3c_gpio_getpull);
-
-#ifdef CONFIG_PLAT_S3C24XX
-unsigned int s3c2410_modify_misccr(unsigned int clear, unsigned int change)
-{
- unsigned long flags;
- unsigned long misccr;
-
- local_irq_save(flags);
- misccr = __raw_readl(S3C24XX_MISCCR);
- misccr &= ~clear;
- misccr ^= change;
- __raw_writel(misccr, S3C24XX_MISCCR);
- local_irq_restore(flags);
-
- return misccr;
-}
-EXPORT_SYMBOL(s3c2410_modify_misccr);
-#endif
diff --git a/arch/arm/mach-s3c/iic-core.h b/arch/arm/mach-s3c/iic-core.h
index c5cfd5af3874..6672691bd7b8 100644
--- a/arch/arm/mach-s3c/iic-core.h
+++ b/arch/arm/mach-s3c/iic-core.h
@@ -28,11 +28,4 @@ static inline void s3c_i2c1_setname(char *name)
#endif
}
-static inline void s3c_i2c2_setname(char *name)
-{
-#ifdef CONFIG_S3C_DEV_I2C2
- s3c_device_i2c2.name = name;
-#endif
-}
-
#endif /* __ASM_ARCH_IIC_H */
diff --git a/arch/arm/mach-s3c/init.c b/arch/arm/mach-s3c/init.c
index bf513616f55d..0ac079f23d51 100644
--- a/arch/arm/mach-s3c/init.c
+++ b/arch/arm/mach-s3c/init.c
@@ -63,29 +63,6 @@ void __init s3c_init_cpu(unsigned long idcode,
pr_err("The platform is deprecated and scheduled for removal. Please reach to the maintainers of the platform and [email protected] if you still use it. Without such feedback, the platform will be removed after 2022.\n");
}
-/* s3c24xx_init_clocks
- *
- * Initialise the clock subsystem and associated information from the
- * given master crystal value.
- *
- * xtal = 0 -> use default PLL crystal value (normally 12MHz)
- * != 0 -> PLL crystal value in Hz
-*/
-
-void __init s3c24xx_init_clocks(int xtal)
-{
- if (xtal == 0)
- xtal = 12*1000*1000;
-
- if (cpu == NULL)
- panic("s3c24xx_init_clocks: no cpu setup?\n");
-
- if (cpu->init_clocks == NULL)
- panic("s3c24xx_init_clocks: cpu has no clock init\n");
- else
- (cpu->init_clocks)(xtal);
-}
-
/* uart management */
#if IS_ENABLED(CONFIG_SAMSUNG_ATAGS)
static int nr_uarts __initdata = 0;
@@ -150,8 +127,7 @@ static int __init s3c_arch_init(void)
int ret;
/* init is only needed for ATAGS based platforms */
- if (!IS_ENABLED(CONFIG_ATAGS) ||
- (!soc_is_s3c24xx() && !soc_is_s3c64xx()))
+ if (!IS_ENABLED(CONFIG_ATAGS))
return 0;
// do the correct init for cpu
diff --git a/arch/arm/mach-s3c/map-s3c.h b/arch/arm/mach-s3c/map-s3c.h
index a18fdd3d6ae2..b5f5bdba384f 100644
--- a/arch/arm/mach-s3c/map-s3c.h
+++ b/arch/arm/mach-s3c/map-s3c.h
@@ -11,20 +11,6 @@
#include "map.h"
-#define S3C24XX_VA_IRQ S3C_VA_IRQ
-#define S3C24XX_VA_MEMCTRL S3C_VA_MEM
-#define S3C24XX_VA_UART S3C_VA_UART
-
-#define S3C24XX_VA_TIMER S3C_VA_TIMER
-#define S3C24XX_VA_CLKPWR S3C_VA_SYS
-#define S3C24XX_VA_WATCHDOG S3C_VA_WATCHDOG
-
-#define S3C2412_VA_SSMC S3C_ADDR_CPU(0x00000000)
-#define S3C2412_VA_EBI S3C_ADDR_CPU(0x00100000)
-
-#define S3C2410_PA_UART (0x50000000)
-#define S3C24XX_PA_UART S3C2410_PA_UART
-
/*
* GPIO ports
*
@@ -35,11 +21,6 @@
* 0xFA800000, which is not in the way of any current mapping
* by the base system.
*/
-
-#define S3C2410_PA_GPIO (0x56000000)
-#define S3C24XX_PA_GPIO S3C2410_PA_GPIO
-
-#define S3C24XX_VA_GPIO ((S3C24XX_PA_GPIO - S3C24XX_PA_UART) + S3C24XX_VA_UART)
#define S3C64XX_VA_GPIO S3C_ADDR_CPU(0x00000000)
#define S3C64XX_VA_MODEM S3C_ADDR_CPU(0x00100000)
@@ -47,24 +28,6 @@
#define S3C_VA_USB_HSPHY S3C64XX_VA_USB_HSPHY
-#define S3C2410_ADDR(x) S3C_ADDR(x)
-
-/* deal with the registers that move under the 2412/2413 */
-
-#if defined(CONFIG_CPU_S3C2412)
-#ifndef __ASSEMBLY__
-extern void __iomem *s3c24xx_va_gpio2;
-#endif
-#ifdef CONFIG_CPU_S3C2412_ONLY
-#define S3C24XX_VA_GPIO2 (S3C24XX_VA_GPIO + 0x10)
-#else
-#define S3C24XX_VA_GPIO2 s3c24xx_va_gpio2
-#endif
-#else
-#define s3c24xx_va_gpio2 S3C24XX_VA_GPIO
-#define S3C24XX_VA_GPIO2 S3C24XX_VA_GPIO
-#endif
-
#include "map-s5p.h"
#endif /* __ASM_PLAT_MAP_S3C_H */
diff --git a/arch/arm/mach-s3c/onenand-core-s3c64xx.h b/arch/arm/mach-s3c/onenand-core-s3c64xx.h
deleted file mode 100644
index e2dfdd1fec93..000000000000
diff --git a/arch/arm/mach-s3c/otom.h b/arch/arm/mach-s3c/otom.h
deleted file mode 100644
index c800f67d03d4..000000000000
diff --git a/arch/arm/mach-s3c/pm-core-s3c64xx.h b/arch/arm/mach-s3c/pm-core-s3c64xx.h
index 06f564e5cf63..24933c4ea1a2 100644
--- a/arch/arm/mach-s3c/pm-core-s3c64xx.h
+++ b/arch/arm/mach-s3c/pm-core-s3c64xx.h
@@ -20,23 +20,6 @@
static inline void s3c_pm_debug_init_uart(void)
{
-#ifdef CONFIG_SAMSUNG_PM_DEBUG
- u32 tmp = __raw_readl(S3C_PCLK_GATE);
-
- /* As a note, since the S3C64XX UARTs generally have multiple
- * clock sources, we simply enable PCLK at the moment and hope
- * that the resume settings for the UART are suitable for the
- * use with PCLK.
- */
-
- tmp |= S3C_CLKCON_PCLK_UART0;
- tmp |= S3C_CLKCON_PCLK_UART1;
- tmp |= S3C_CLKCON_PCLK_UART2;
- tmp |= S3C_CLKCON_PCLK_UART3;
-
- __raw_writel(tmp, S3C_PCLK_GATE);
- udelay(10);
-#endif
}
static inline void s3c_pm_arch_prepare_irqs(void)
diff --git a/arch/arm/mach-s3c/pm-s3c64xx.c b/arch/arm/mach-s3c/pm-s3c64xx.c
index 7bc7417fd803..284d5f462513 100644
--- a/arch/arm/mach-s3c/pm-s3c64xx.c
+++ b/arch/arm/mach-s3c/pm-s3c64xx.c
@@ -173,23 +173,6 @@ static struct s3c64xx_pm_domain *s3c64xx_pm_domains[] = {
&s3c64xx_pm_f,
};
-#ifdef CONFIG_S3C_PM_DEBUG_LED_SMDK
-void s3c_pm_debug_smdkled(u32 set, u32 clear)
-{
- unsigned long flags;
- int i;
-
- local_irq_save(flags);
- for (i = 0; i < 4; i++) {
- if (clear & (1 << i))
- gpio_set_value(S3C64XX_GPN(12 + i), 0);
- if (set & (1 << i))
- gpio_set_value(S3C64XX_GPN(12 + i), 1);
- }
- local_irq_restore(flags);
-}
-#endif
-
#ifdef CONFIG_PM_SLEEP
static struct sleep_save core_save[] = {
SAVE_ITEM(S3C64XX_MEM0DRVCON),
@@ -224,8 +207,6 @@ void s3c_pm_restore_core(void)
{
__raw_writel(0, S3C64XX_EINT_MASK);
- s3c_pm_debug_smdkled(1 << 2, 0);
-
s3c_pm_do_restore_core(core_save, ARRAY_SIZE(core_save));
s3c_pm_do_restore(misc_save, ARRAY_SIZE(misc_save));
}
@@ -258,9 +239,6 @@ static int s3c64xx_cpu_suspend(unsigned long arg)
__raw_writel(__raw_readl(S3C64XX_WAKEUP_STAT),
S3C64XX_WAKEUP_STAT);
- /* set the LED state to 0110 over sleep */
- s3c_pm_debug_smdkled(3 << 1, 0xf);
-
/* issue the standby signal into the pm unit. Note, we
* issue a write-buffer drain just in case */
@@ -305,56 +283,6 @@ static void s3c64xx_pm_prepare(void)
__raw_writel(__raw_readl(S3C64XX_WAKEUP_STAT), S3C64XX_WAKEUP_STAT);
}
-#ifdef CONFIG_SAMSUNG_PM_DEBUG
-void s3c_pm_arch_update_uart(void __iomem *regs, struct pm_uart_save *save)
-{
- u32 ucon;
- u32 ucon_clk
- u32 save_clk;
- u32 new_ucon;
- u32 delta;
-
- if (!soc_is_s3c64xx())
- return;
-
- ucon = __raw_readl(regs + S3C2410_UCON);
- ucon_clk = ucon & S3C6400_UCON_CLKMASK;
- sav_clk = save->ucon & S3C6400_UCON_CLKMASK;
-
- /* S3C64XX UART blocks only support level interrupts, so ensure that
- * when we restore unused UART blocks we force the level interrupt
- * settings. */
- save->ucon |= S3C2410_UCON_TXILEVEL | S3C2410_UCON_RXILEVEL;
-
- /* We have a constraint on changing the clock type of the UART
- * between UCLKx and PCLK, so ensure that when we restore UCON
- * that the CLK field is correctly modified if the bootloader
- * has changed anything.
- */
- if (ucon_clk != save_clk) {
- new_ucon = save->ucon;
- delta = ucon_clk ^ save_clk;
-
- /* change from UCLKx => wrong PCLK,
- * either UCLK can be tested for by a bit-test
- * with UCLK0 */
- if (ucon_clk & S3C6400_UCON_UCLK0 &&
- !(save_clk & S3C6400_UCON_UCLK0) &&
- delta & S3C6400_UCON_PCLK2) {
- new_ucon &= ~S3C6400_UCON_UCLK0;
- } else if (delta == S3C6400_UCON_PCLK2) {
- /* as an precaution, don't change from
- * PCLK2 => PCLK or vice-versa */
- new_ucon ^= S3C6400_UCON_PCLK2;
- }
-
- S3C_PMDBG("ucon change %04x => %04x (save=%04x)\n",
- ucon, new_ucon, save->ucon);
- save->ucon = new_ucon;
- }
-}
-#endif
-
int __init s3c64xx_pm_init(void)
{
int i;
@@ -384,17 +312,6 @@ static __init int s3c64xx_pm_initcall(void)
pm_cpu_prep = s3c64xx_pm_prepare;
pm_cpu_sleep = s3c64xx_cpu_suspend;
-#ifdef CONFIG_S3C_PM_DEBUG_LED_SMDK
- gpio_request(S3C64XX_GPN(12), "DEBUG_LED0");
- gpio_request(S3C64XX_GPN(13), "DEBUG_LED1");
- gpio_request(S3C64XX_GPN(14), "DEBUG_LED2");
- gpio_request(S3C64XX_GPN(15), "DEBUG_LED3");
- gpio_direction_output(S3C64XX_GPN(12), 0);
- gpio_direction_output(S3C64XX_GPN(13), 0);
- gpio_direction_output(S3C64XX_GPN(14), 0);
- gpio_direction_output(S3C64XX_GPN(15), 0);
-#endif
-
return 0;
}
arch_initcall(s3c64xx_pm_initcall);
diff --git a/arch/arm/mach-s3c/pm.c b/arch/arm/mach-s3c/pm.c
index 06f019690d81..5698cbceaf7a 100644
--- a/arch/arm/mach-s3c/pm.c
+++ b/arch/arm/mach-s3c/pm.c
@@ -100,7 +100,7 @@ static int s3c_pm_enter(suspend_state_t state)
samsung_pm_saved_gpios();
}
- s3c_pm_save_uarts(soc_is_s3c2410());
+ s3c_pm_save_uarts(false);
s3c_pm_save_core();
/* set the irq configuration for wake */
@@ -137,7 +137,7 @@ static int s3c_pm_enter(suspend_state_t state)
/* restore the system state */
s3c_pm_restore_core();
- s3c_pm_restore_uarts(soc_is_s3c2410());
+ s3c_pm_restore_uarts(false);
if (!of_have_populated_dt()) {
samsung_pm_restore_gpios();
@@ -152,9 +152,6 @@ static int s3c_pm_enter(suspend_state_t state)
S3C_PMDBG("%s: post sleep, preparing to return\n", __func__);
- /* LEDs should now be 1110 */
- s3c_pm_debug_smdkled(1 << 1, 0);
-
s3c_pm_check_restore();
/* ok, let's return from sleep */
diff --git a/arch/arm/mach-s3c/pm.h b/arch/arm/mach-s3c/pm.h
index eed61e585457..35d266ab6958 100644
--- a/arch/arm/mach-s3c/pm.h
+++ b/arch/arm/mach-s3c/pm.h
@@ -64,18 +64,6 @@ extern int s3c_irqext_wake(struct irq_data *data, unsigned int state);
#define s3c_irqext_wake NULL
#endif
-#ifdef CONFIG_S3C_PM_DEBUG_LED_SMDK
-/**
- * s3c_pm_debug_smdkled() - Debug PM suspend/resume via SMDK Board LEDs
- * @set: set bits for the state of the LEDs
- * @clear: clear bits for the state of the LEDs.
- */
-extern void s3c_pm_debug_smdkled(u32 set, u32 clear);
-
-#else
-static inline void s3c_pm_debug_smdkled(u32 set, u32 clear) { }
-#endif /* CONFIG_S3C_PM_DEBUG_LED_SMDK */
-
/**
* s3c_pm_configure_extint() - ensure pins are correctly set for IRQ
*
diff --git a/arch/arm/mach-s3c/regs-srom-s3c64xx.h b/arch/arm/mach-s3c/regs-srom-s3c64xx.h
deleted file mode 100644
index 2b37988bdf94..000000000000
diff --git a/arch/arm/mach-s3c/s3c6400.c b/arch/arm/mach-s3c/s3c6400.c
index 802f4fb7462d..d47f1d6067b4 100644
--- a/arch/arm/mach-s3c/s3c6400.c
+++ b/arch/arm/mach-s3c/s3c6400.c
@@ -36,7 +36,6 @@
#include "iic-core.h"
#include "s3c64xx.h"
-#include "onenand-core-s3c64xx.h"
void __init s3c6400_map_io(void)
{
@@ -48,11 +47,6 @@ void __init s3c6400_map_io(void)
/* the i2c devices are directly compatible with s3c2440 */
s3c_i2c0_setname("s3c2440-i2c");
-
- s3c_device_nand.name = "s3c6400-nand";
-
- s3c_onenand_setname("s3c6400-onenand");
- s3c64xx_onenand1_setname("s3c6400-onenand");
}
void __init s3c6400_init_irq(void)
diff --git a/arch/arm/mach-s3c/s3c6410.c b/arch/arm/mach-s3c/s3c6410.c
index dae17d5fd092..e79f18d0ca81 100644
--- a/arch/arm/mach-s3c/s3c6410.c
+++ b/arch/arm/mach-s3c/s3c6410.c
@@ -35,12 +35,9 @@
#include "cpu.h"
#include "devs.h"
#include "sdhci.h"
-#include "adc-core.h"
#include "iic-core.h"
-#include "ata-core-s3c64xx.h"
#include "s3c64xx.h"
-#include "onenand-core-s3c64xx.h"
void __init s3c6410_map_io(void)
{
@@ -52,12 +49,6 @@ void __init s3c6410_map_io(void)
/* the i2c devices are directly compatible with s3c2440 */
s3c_i2c0_setname("s3c2440-i2c");
s3c_i2c1_setname("s3c2440-i2c");
-
- s3c_adc_setname("s3c64xx-adc");
- s3c_device_nand.name = "s3c6400-nand";
- s3c_onenand_setname("s3c6410-onenand");
- s3c64xx_onenand1_setname("s3c6410-onenand");
- s3c_cfcon_setname("s3c64xx-pata");
}
void __init s3c6410_init_irq(void)
diff --git a/arch/arm/mach-s3c/sdhci.h b/arch/arm/mach-s3c/sdhci.h
index 9f9d419e58d7..1010f94d4a18 100644
--- a/arch/arm/mach-s3c/sdhci.h
+++ b/arch/arm/mach-s3c/sdhci.h
@@ -48,35 +48,10 @@ extern struct s3c_sdhci_platdata s3c_hsmmc3_def_platdata;
/* Helper function availability */
-extern void s3c2416_setup_sdhci0_cfg_gpio(struct platform_device *, int w);
-extern void s3c2416_setup_sdhci1_cfg_gpio(struct platform_device *, int w);
extern void s3c64xx_setup_sdhci0_cfg_gpio(struct platform_device *, int w);
extern void s3c64xx_setup_sdhci1_cfg_gpio(struct platform_device *, int w);
extern void s3c64xx_setup_sdhci2_cfg_gpio(struct platform_device *, int w);
-/* S3C2416 SDHCI setup */
-
-#ifdef CONFIG_S3C2416_SETUP_SDHCI
-static inline void s3c2416_default_sdhci0(void)
-{
-#ifdef CONFIG_S3C_DEV_HSMMC
- s3c_hsmmc0_def_platdata.cfg_gpio = s3c2416_setup_sdhci0_cfg_gpio;
-#endif /* CONFIG_S3C_DEV_HSMMC */
-}
-
-static inline void s3c2416_default_sdhci1(void)
-{
-#ifdef CONFIG_S3C_DEV_HSMMC1
- s3c_hsmmc1_def_platdata.cfg_gpio = s3c2416_setup_sdhci1_cfg_gpio;
-#endif /* CONFIG_S3C_DEV_HSMMC1 */
-}
-
-#else
-static inline void s3c2416_default_sdhci0(void) { }
-static inline void s3c2416_default_sdhci1(void) { }
-
-#endif /* CONFIG_S3C2416_SETUP_SDHCI */
-
/* S3C64XX SDHCI setup */
#ifdef CONFIG_S3C64XX_SETUP_SDHCI
diff --git a/arch/arm/mach-s3c/setup-ide-s3c64xx.c b/arch/arm/mach-s3c/setup-ide-s3c64xx.c
deleted file mode 100644
index f11f2b02e49f..000000000000
diff --git a/arch/arm/mach-s3c/sleep-s3c64xx.S b/arch/arm/mach-s3c/sleep-s3c64xx.S
index 739e53fbce09..908aa76b1062 100644
--- a/arch/arm/mach-s3c/sleep-s3c64xx.S
+++ b/arch/arm/mach-s3c/sleep-s3c64xx.S
@@ -39,31 +39,4 @@
ENTRY(s3c_cpu_resume)
msr cpsr_c, #PSR_I_BIT | PSR_F_BIT | SVC_MODE
ldr r2, =LL_UART /* for debug */
-
-#ifdef CONFIG_S3C_PM_DEBUG_LED_SMDK
-
-#define S3C64XX_GPNCON (S3C64XX_GPN_BASE + 0x00)
-#define S3C64XX_GPNDAT (S3C64XX_GPN_BASE + 0x04)
-
-#define S3C64XX_GPN_CONMASK(__gpio) (0x3 << ((__gpio) * 2))
-#define S3C64XX_GPN_OUTPUT(__gpio) (0x1 << ((__gpio) * 2))
-
- /* Initialise the GPIO state if we are debugging via the SMDK LEDs,
- * as the uboot version supplied resets these to inputs during the
- * resume checks.
- */
-
- ldr r3, =S3C64XX_PA_GPIO
- ldr r0, [ r3, #S3C64XX_GPNCON ]
- bic r0, r0, #(S3C64XX_GPN_CONMASK(12) | S3C64XX_GPN_CONMASK(13) | \
- S3C64XX_GPN_CONMASK(14) | S3C64XX_GPN_CONMASK(15))
- orr r0, r0, #(S3C64XX_GPN_OUTPUT(12) | S3C64XX_GPN_OUTPUT(13) | \
- S3C64XX_GPN_OUTPUT(14) | S3C64XX_GPN_OUTPUT(15))
- str r0, [ r3, #S3C64XX_GPNCON ]
-
- ldr r0, [ r3, #S3C64XX_GPNDAT ]
- bic r0, r0, #0xf << 12 @ GPN12..15
- orr r0, r0, #1 << 15 @ GPN15
- str r0, [ r3, #S3C64XX_GPNDAT ]
-#endif
b cpu_resume
diff --git a/include/linux/platform_data/media/s5p_hdmi.h b/include/linux/platform_data/media/s5p_hdmi.h
deleted file mode 100644
index 457321e917b9..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx platform is gone, so the led driver can be
removed as well.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/leds/Kconfig | 8 ---
drivers/leds/Makefile | 1 -
drivers/leds/leds-s3c24xx.c | 83 ----------------------
include/linux/platform_data/leds-s3c24xx.h | 18 -----
4 files changed, 110 deletions(-)
delete mode 100644 drivers/leds/leds-s3c24xx.c
delete mode 100644 include/linux/platform_data/leds-s3c24xx.h
diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
index 3642ed8a75b4..9dbce09eabac 100644
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
@@ -244,14 +244,6 @@ config LEDS_MT6323
This option enables support for on-chip LED drivers found on
Mediatek MT6323 PMIC.
-config LEDS_S3C24XX
- tristate "LED Support for Samsung S3C24XX GPIO LEDs"
- depends on LEDS_CLASS
- depends on ARCH_S3C24XX || COMPILE_TEST
- help
- This option enables support for LEDs connected to GPIO lines
- on Samsung S3C24XX series CPUs, such as the S3C2410 and S3C2440.
-
config LEDS_NET48XX
tristate "LED Support for Soekris net48xx series Error LED"
depends on LEDS_CLASS
diff --git a/drivers/leds/Makefile b/drivers/leds/Makefile
index 0c1543a4a7a8..d30395d11fd8 100644
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
@@ -73,7 +73,6 @@ obj-$(CONFIG_LEDS_PM8058) += leds-pm8058.o
obj-$(CONFIG_LEDS_POWERNV) += leds-powernv.o
obj-$(CONFIG_LEDS_PWM) += leds-pwm.o
obj-$(CONFIG_LEDS_REGULATOR) += leds-regulator.o
-obj-$(CONFIG_LEDS_S3C24XX) += leds-s3c24xx.o
obj-$(CONFIG_LEDS_SC27XX_BLTC) += leds-sc27xx-bltc.o
obj-$(CONFIG_LEDS_SUNFIRE) += leds-sunfire.o
obj-$(CONFIG_LEDS_SYSCON) += leds-syscon.o
diff --git a/drivers/leds/leds-s3c24xx.c b/drivers/leds/leds-s3c24xx.c
deleted file mode 100644
index 3c0c7aa63b8c..000000000000
diff --git a/include/linux/platform_data/leds-s3c24xx.h b/include/linux/platform_data/leds-s3c24xx.h
deleted file mode 100644
index 64f8d14876e0..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
similar symbols that are no longer available with the platform gone,
though the drivers themselves are still used on newer platforms,
so remove these hacks.
Signed-off-by: Arnd Bergmann <[email protected]>
---
arch/arm/include/debug/s3c24xx.S | 10 -
arch/arm/mach-s3c/Makefile | 2 -
arch/arm/mach-s3c/devs.c | 1 -
arch/arm/mach-s3c/dma.h | 7 -
arch/arm/mach-s3c/gpio-samsung.h | 7 -
arch/arm/mach-s3c/irqs.h | 7 -
arch/arm/mach-s3c/map.h | 7 -
arch/arm/mach-s3c/pm-core.h | 7 -
arch/arm/mach-s3c/regs-clock.h | 7 -
arch/arm/mach-s3c/regs-gpio.h | 7 -
arch/arm/mach-s3c/regs-irq.h | 7 -
drivers/clocksource/Kconfig | 2 +-
drivers/i2c/busses/Kconfig | 3 +-
drivers/i2c/busses/i2c-s3c2410.c | 72 -------
drivers/iio/adc/Kconfig | 6 +-
.../media/platform/samsung/s3c-camif/Kconfig | 8 +-
drivers/mmc/host/Kconfig | 5 +-
drivers/mtd/nand/raw/Kconfig | 2 +-
drivers/mtd/nand/raw/s3c2410.c | 60 ------
drivers/pinctrl/samsung/pinctrl-samsung.c | 10 -
drivers/rtc/Kconfig | 8 +-
drivers/tty/serial/Kconfig | 8 +-
drivers/tty/serial/samsung_tty.c | 199 ------------------
drivers/usb/host/Kconfig | 8 +-
drivers/watchdog/Kconfig | 9 +-
drivers/watchdog/s3c2410_wdt.c | 84 +-------
include/linux/clk/samsung.h | 32 ---
include/linux/soc/samsung/s3c-pm.h | 58 -----
28 files changed, 29 insertions(+), 614 deletions(-)
diff --git a/arch/arm/include/debug/s3c24xx.S b/arch/arm/include/debug/s3c24xx.S
index af873b526677..7ab5e577cd42 100644
--- a/arch/arm/include/debug/s3c24xx.S
+++ b/arch/arm/include/debug/s3c24xx.S
@@ -28,16 +28,6 @@
and \rd, \rd, #S3C2410_UFSTAT_TXMASK
.endm
-/* Select the correct implementation depending on the configuration. The
- * S3C2440 will get selected by default, as these are the most widely
- * used variants of these
-*/
-
-#if defined(CONFIG_DEBUG_S3C2410_UART)
-#define fifo_full fifo_full_s3c2410
-#define fifo_level fifo_level_s3c2410
-#endif
-
/* include the reset of the code which will do the work */
#include <debug/samsung.S>
diff --git a/arch/arm/mach-s3c/Makefile b/arch/arm/mach-s3c/Makefile
index e7f18039b149..a5135137e648 100644
--- a/arch/arm/mach-s3c/Makefile
+++ b/arch/arm/mach-s3c/Makefile
@@ -2,9 +2,7 @@
#
# Copyright 2009 Simtec Electronics
-ifdef CONFIG_ARCH_S3C64XX
include $(src)/Makefile.s3c64xx
-endif
# Objects we always build independent of SoC choice
diff --git a/arch/arm/mach-s3c/devs.c b/arch/arm/mach-s3c/devs.c
index 9ac07c023adf..a31d1c3038e8 100644
--- a/arch/arm/mach-s3c/devs.c
+++ b/arch/arm/mach-s3c/devs.c
@@ -29,7 +29,6 @@
#include <linux/sizes.h>
#include <linux/platform_data/s3c-hsudc.h>
#include <linux/platform_data/s3c-hsotg.h>
-#include <linux/platform_data/dma-s3c24xx.h>
#include <linux/platform_data/media/s5p_hdmi.h>
diff --git a/arch/arm/mach-s3c/dma.h b/arch/arm/mach-s3c/dma.h
index 59a4578c5f00..48057cb90070 100644
--- a/arch/arm/mach-s3c/dma.h
+++ b/arch/arm/mach-s3c/dma.h
@@ -1,9 +1,2 @@
/* SPDX-License-Identifier: GPL-2.0 */
-
-#ifdef CONFIG_ARCH_S3C24XX
-#include "dma-s3c24xx.h"
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
#include "dma-s3c64xx.h"
-#endif
diff --git a/arch/arm/mach-s3c/gpio-samsung.h b/arch/arm/mach-s3c/gpio-samsung.h
index 02f6f4a96862..4233515eddaa 100644
--- a/arch/arm/mach-s3c/gpio-samsung.h
+++ b/arch/arm/mach-s3c/gpio-samsung.h
@@ -1,9 +1,2 @@
/* SPDX-License-Identifier: GPL-2.0 */
-
-#ifdef CONFIG_ARCH_S3C24XX
-#include "gpio-samsung-s3c24xx.h"
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
#include "gpio-samsung-s3c64xx.h"
-#endif
diff --git a/arch/arm/mach-s3c/irqs.h b/arch/arm/mach-s3c/irqs.h
index 0bff1c1c8eb0..3ff0e0963080 100644
--- a/arch/arm/mach-s3c/irqs.h
+++ b/arch/arm/mach-s3c/irqs.h
@@ -1,9 +1,2 @@
/* SPDX-License-Identifier: GPL-2.0 */
-
-#ifdef CONFIG_ARCH_S3C24XX
-#include "irqs-s3c24xx.h"
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
#include "irqs-s3c64xx.h"
-#endif
diff --git a/arch/arm/mach-s3c/map.h b/arch/arm/mach-s3c/map.h
index 7cfb517d4886..778d6f81cb2b 100644
--- a/arch/arm/mach-s3c/map.h
+++ b/arch/arm/mach-s3c/map.h
@@ -1,9 +1,2 @@
/* SPDX-License-Identifier: GPL-2.0 */
-
-#ifdef CONFIG_ARCH_S3C24XX
-#include "map-s3c24xx.h"
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
#include "map-s3c64xx.h"
-#endif
diff --git a/arch/arm/mach-s3c/pm-core.h b/arch/arm/mach-s3c/pm-core.h
index b0e1d277f599..3e0c2df79120 100644
--- a/arch/arm/mach-s3c/pm-core.h
+++ b/arch/arm/mach-s3c/pm-core.h
@@ -1,9 +1,2 @@
/* SPDX-License-Identifier: GPL-2.0 */
-
-#ifdef CONFIG_ARCH_S3C24XX
-#include "pm-core-s3c24xx.h"
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
#include "pm-core-s3c64xx.h"
-#endif
diff --git a/arch/arm/mach-s3c/regs-clock.h b/arch/arm/mach-s3c/regs-clock.h
index 7df31f203d28..fc7e3886b07c 100644
--- a/arch/arm/mach-s3c/regs-clock.h
+++ b/arch/arm/mach-s3c/regs-clock.h
@@ -1,9 +1,2 @@
/* SPDX-License-Identifier: GPL-2.0 */
-
-#ifdef CONFIG_ARCH_S3C24XX
-#include "regs-clock-s3c24xx.h"
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
#include "regs-clock-s3c64xx.h"
-#endif
diff --git a/arch/arm/mach-s3c/regs-gpio.h b/arch/arm/mach-s3c/regs-gpio.h
index 0d41cb76d440..4e08e8609663 100644
--- a/arch/arm/mach-s3c/regs-gpio.h
+++ b/arch/arm/mach-s3c/regs-gpio.h
@@ -1,9 +1,2 @@
/* SPDX-License-Identifier: GPL-2.0 */
-
-#ifdef CONFIG_ARCH_S3C24XX
-#include "regs-gpio-s3c24xx.h"
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
#include "regs-gpio-s3c64xx.h"
-#endif
diff --git a/arch/arm/mach-s3c/regs-irq.h b/arch/arm/mach-s3c/regs-irq.h
index 57f0dda8dbf5..4243daa54bd1 100644
--- a/arch/arm/mach-s3c/regs-irq.h
+++ b/arch/arm/mach-s3c/regs-irq.h
@@ -1,9 +1,2 @@
/* SPDX-License-Identifier: GPL-2.0 */
-
-#ifdef CONFIG_ARCH_S3C24XX
-#include "regs-irq-s3c24xx.h"
-#endif
-
-#ifdef CONFIG_ARCH_S3C64XX
#include "regs-irq-s3c64xx.h"
-#endif
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 4469e7f555e9..fc10ecc3602d 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -441,7 +441,7 @@ config CLKSRC_EXYNOS_MCT
config CLKSRC_SAMSUNG_PWM
bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
depends on HAS_IOMEM
- depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
+ depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
help
This is a new clocksource driver for the PWM timer found in
Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
index f427c8ea5c7b..84d21e0a7cdf 100644
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
@@ -1009,8 +1009,7 @@ config I2C_RZV2M
config I2C_S3C2410
tristate "S3C/Exynos I2C Driver"
- depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || \
- ARCH_S5PV210 || COMPILE_TEST
+ depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
help
Say Y here to include support for I2C controller in the
Samsung SoCs (S3C, S5Pv210, Exynos).
diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
index 36dab9cd208c..45e9df81345a 100644
--- a/drivers/i2c/busses/i2c-s3c2410.c
+++ b/drivers/i2c/busses/i2c-s3c2410.c
@@ -116,9 +116,6 @@ struct s3c24xx_i2c {
struct s3c2410_platform_i2c *pdata;
struct gpio_desc *gpios[2];
struct pinctrl *pctrl;
-#if defined(CONFIG_ARM_S3C24XX_CPUFREQ)
- struct notifier_block freq_transition;
-#endif
struct regmap *sysreg;
unsigned int sys_i2c_cfg;
};
@@ -885,65 +882,6 @@ static int s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got)
return 0;
}
-#if defined(CONFIG_ARM_S3C24XX_CPUFREQ)
-
-#define freq_to_i2c(_n) container_of(_n, struct s3c24xx_i2c, freq_transition)
-
-static int s3c24xx_i2c_cpufreq_transition(struct notifier_block *nb,
- unsigned long val, void *data)
-{
- struct s3c24xx_i2c *i2c = freq_to_i2c(nb);
- unsigned int got;
- int delta_f;
- int ret;
-
- delta_f = clk_get_rate(i2c->clk) - i2c->clkrate;
-
- /* if we're post-change and the input clock has slowed down
- * or at pre-change and the clock is about to speed up, then
- * adjust our clock rate. <0 is slow, >0 speedup.
- */
-
- if ((val == CPUFREQ_POSTCHANGE && delta_f < 0) ||
- (val == CPUFREQ_PRECHANGE && delta_f > 0)) {
- i2c_lock_bus(&i2c->adap, I2C_LOCK_ROOT_ADAPTER);
- ret = s3c24xx_i2c_clockrate(i2c, &got);
- i2c_unlock_bus(&i2c->adap, I2C_LOCK_ROOT_ADAPTER);
-
- if (ret < 0)
- dev_err(i2c->dev, "cannot find frequency (%d)\n", ret);
- else
- dev_info(i2c->dev, "setting freq %d\n", got);
- }
-
- return 0;
-}
-
-static inline int s3c24xx_i2c_register_cpufreq(struct s3c24xx_i2c *i2c)
-{
- i2c->freq_transition.notifier_call = s3c24xx_i2c_cpufreq_transition;
-
- return cpufreq_register_notifier(&i2c->freq_transition,
- CPUFREQ_TRANSITION_NOTIFIER);
-}
-
-static inline void s3c24xx_i2c_deregister_cpufreq(struct s3c24xx_i2c *i2c)
-{
- cpufreq_unregister_notifier(&i2c->freq_transition,
- CPUFREQ_TRANSITION_NOTIFIER);
-}
-
-#else
-static inline int s3c24xx_i2c_register_cpufreq(struct s3c24xx_i2c *i2c)
-{
- return 0;
-}
-
-static inline void s3c24xx_i2c_deregister_cpufreq(struct s3c24xx_i2c *i2c)
-{
-}
-#endif
-
#ifdef CONFIG_OF
static int s3c24xx_i2c_parse_dt_gpio(struct s3c24xx_i2c *i2c)
{
@@ -1152,13 +1090,6 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
}
}
- ret = s3c24xx_i2c_register_cpufreq(i2c);
- if (ret < 0) {
- dev_err(&pdev->dev, "failed to register cpufreq notifier\n");
- clk_unprepare(i2c->clk);
- return ret;
- }
-
/*
* Note, previous versions of the driver used i2c_add_adapter()
* to add the bus at any number. We now pass the bus number via
@@ -1175,7 +1106,6 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
ret = i2c_add_numbered_adapter(&i2c->adap);
if (ret < 0) {
pm_runtime_disable(&pdev->dev);
- s3c24xx_i2c_deregister_cpufreq(i2c);
clk_unprepare(i2c->clk);
return ret;
}
@@ -1192,8 +1122,6 @@ static int s3c24xx_i2c_remove(struct platform_device *pdev)
pm_runtime_disable(&pdev->dev);
- s3c24xx_i2c_deregister_cpufreq(i2c);
-
i2c_del_adapter(&i2c->adap);
return 0;
diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig
index 791612ca6012..9de7f05d40e2 100644
--- a/drivers/iio/adc/Kconfig
+++ b/drivers/iio/adc/Kconfig
@@ -437,11 +437,11 @@ config EP93XX_ADC
config EXYNOS_ADC
tristate "Exynos ADC driver support"
- depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
+ depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
depends on HAS_IOMEM
help
- Driver for the ADC block found in the Samsung S3C (S3C2410, S3C2416,
- S3C2440, S3C2443, S3C6410), S5Pv210 and Exynos SoCs.
+ Driver for the ADC block found in the Samsung S3C6410, S5Pv210 and
+ Exynos SoCs.
Choose Y here only if you build for such Samsung SoC.
To compile this driver as a module, choose M here: the module will be
diff --git a/drivers/media/platform/samsung/s3c-camif/Kconfig b/drivers/media/platform/samsung/s3c-camif/Kconfig
index 8cb8d1ac3edc..f359f6382fff 100644
--- a/drivers/media/platform/samsung/s3c-camif/Kconfig
+++ b/drivers/media/platform/samsung/s3c-camif/Kconfig
@@ -1,15 +1,15 @@
# SPDX-License-Identifier: GPL-2.0-only
config VIDEO_S3C_CAMIF
- tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver"
+ tristate "Samsung 3C64XX SoC Camera Interface driver"
depends on V4L_PLATFORM_DRIVERS
depends on VIDEO_DEV && I2C && PM
- depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST
+ depends on ARCH_S3C64XX || COMPILE_TEST
select MEDIA_CONTROLLER
select VIDEO_V4L2_SUBDEV_API
select VIDEOBUF2_DMA_CONTIG
help
- This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera
- host interface (CAMIF).
+ This is a v4l2 driver for s3c64xx SoC series camera host interface
+ (CAMIF).
To compile this driver as a module, choose M here: the module
will be called s3c-camif.
diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
index 84dd37ff2735..79d8ddf1f616 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -312,9 +312,8 @@ config MMC_SDHCI_S3C
depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
help
This selects the Secure Digital Host Controller Interface (SDHCI)
- often referrered to as the HSMMC block in some of the Samsung S3C
- (S3C2416, S3C2443, S3C6410), S5Pv210 and Exynos (Exynso4210,
- Exynos4412) SoCs.
+ often referrered to as the HSMMC block in some of the Samsung
+ S3C6410, S5Pv210 and Exynos (Exynso4210, Exynos4412) SoCs.
If you have a controller with this interface (thereforeyou build for
such Samsung SoC), say Y or M here.
diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
index 280a55139387..a347833b8f29 100644
--- a/drivers/mtd/nand/raw/Kconfig
+++ b/drivers/mtd/nand/raw/Kconfig
@@ -79,7 +79,7 @@ config MTD_NAND_NDFC
config MTD_NAND_S3C2410
tristate "Samsung S3C NAND controller"
- depends on ARCH_S3C24XX || ARCH_S3C64XX
+ depends on ARCH_S3C64XX
help
This enables the NAND flash controller on the S3C24xx and S3C64xx
SoCs
diff --git a/drivers/mtd/nand/raw/s3c2410.c b/drivers/mtd/nand/raw/s3c2410.c
index f0a4535c812a..80d96f94d6cb 100644
--- a/drivers/mtd/nand/raw/s3c2410.c
+++ b/drivers/mtd/nand/raw/s3c2410.c
@@ -166,10 +166,6 @@ struct s3c2410_nand_info {
enum s3c_nand_clk_state clk_state;
enum s3c_cpu_type cpu_type;
-
-#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
- struct notifier_block freq_transition;
-#endif
};
struct s3c24XX_nand_devtype_data {
@@ -711,54 +707,6 @@ static void s3c2440_nand_write_buf(struct nand_chip *this, const u_char *buf,
}
}
-/* cpufreq driver support */
-
-#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
-
-static int s3c2410_nand_cpufreq_transition(struct notifier_block *nb,
- unsigned long val, void *data)
-{
- struct s3c2410_nand_info *info;
- unsigned long newclk;
-
- info = container_of(nb, struct s3c2410_nand_info, freq_transition);
- newclk = clk_get_rate(info->clk);
-
- if ((val == CPUFREQ_POSTCHANGE && newclk < info->clk_rate) ||
- (val == CPUFREQ_PRECHANGE && newclk > info->clk_rate)) {
- s3c2410_nand_setrate(info);
- }
-
- return 0;
-}
-
-static inline int s3c2410_nand_cpufreq_register(struct s3c2410_nand_info *info)
-{
- info->freq_transition.notifier_call = s3c2410_nand_cpufreq_transition;
-
- return cpufreq_register_notifier(&info->freq_transition,
- CPUFREQ_TRANSITION_NOTIFIER);
-}
-
-static inline void
-s3c2410_nand_cpufreq_deregister(struct s3c2410_nand_info *info)
-{
- cpufreq_unregister_notifier(&info->freq_transition,
- CPUFREQ_TRANSITION_NOTIFIER);
-}
-
-#else
-static inline int s3c2410_nand_cpufreq_register(struct s3c2410_nand_info *info)
-{
- return 0;
-}
-
-static inline void
-s3c2410_nand_cpufreq_deregister(struct s3c2410_nand_info *info)
-{
-}
-#endif
-
/* device management functions */
static int s3c24xx_nand_remove(struct platform_device *pdev)
@@ -768,8 +716,6 @@ static int s3c24xx_nand_remove(struct platform_device *pdev)
if (info == NULL)
return 0;
- s3c2410_nand_cpufreq_deregister(info);
-
/* Release all our mtds and their partitions, then go through
* freeing the resources used
*/
@@ -1184,12 +1130,6 @@ static int s3c24xx_nand_probe(struct platform_device *pdev)
if (err != 0)
goto exit_error;
- err = s3c2410_nand_cpufreq_register(info);
- if (err < 0) {
- dev_err(&pdev->dev, "failed to init cpufreq support\n");
- goto exit_error;
- }
-
if (allow_clk_suspend(info)) {
dev_info(&pdev->dev, "clock idle support enabled\n");
s3c2410_nand_clk_set_state(info, CLOCK_SUSPEND);
diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.c b/drivers/pinctrl/samsung/pinctrl-samsung.c
index bd13b5ef246d..1a478854293f 100644
--- a/drivers/pinctrl/samsung/pinctrl-samsung.c
+++ b/drivers/pinctrl/samsung/pinctrl-samsung.c
@@ -1322,16 +1322,6 @@ static const struct of_device_id samsung_pinctrl_dt_match[] = {
#ifdef CONFIG_PINCTRL_S3C64XX
{ .compatible = "samsung,s3c64xx-pinctrl",
.data = &s3c64xx_of_data },
-#endif
-#ifdef CONFIG_PINCTRL_S3C24XX
- { .compatible = "samsung,s3c2412-pinctrl",
- .data = &s3c2412_of_data },
- { .compatible = "samsung,s3c2416-pinctrl",
- .data = &s3c2416_of_data },
- { .compatible = "samsung,s3c2440-pinctrl",
- .data = &s3c2440_of_data },
- { .compatible = "samsung,s3c2450-pinctrl",
- .data = &s3c2450_of_data },
#endif
{},
};
diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
index 312dccfa3f18..d13ca620ea5d 100644
--- a/drivers/rtc/Kconfig
+++ b/drivers/rtc/Kconfig
@@ -1406,18 +1406,14 @@ config RTC_DRV_OMAP
config RTC_DRV_S3C
tristate "Samsung S3C series SoC RTC"
- depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S3C24XX || ARCH_S5PV210 || \
+ depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || \
COMPILE_TEST
help
RTC (Realtime Clock) driver for the clock inbuilt into the
- Samsung S3C24XX series of SoCs. This can provide periodic
+ Samsung S3C64XX series of SoCs. This can provide periodic
interrupt rates from 1Hz to 64Hz for user programs, and
wakeup from Alarm.
- The driver currently supports the common features on all the
- S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
- and S3C2442.
-
This driver can also be build as a module. If so, the module
will be called rtc-s3c.
diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
index 434f83168546..3ba8a39655a3 100644
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
@@ -242,23 +242,23 @@ config SERIAL_SAMSUNG
select SERIAL_CORE
help
Support for the on-chip UARTs on the Samsung
- S3C24xx/S3C64xx/S5Pv210/Exynos and Apple M1 SoCs, providing
+ S3C64xx/S5Pv210/Exynos and Apple M1 SoCs, providing
/dev/ttySAC0, 1 and 2 (note, some machines may not provide all of
these ports, depending on how the serial port pins are configured.
+
Choose Y/M here only if you build for such SoC.
config SERIAL_SAMSUNG_UARTS_4
bool
depends on SERIAL_SAMSUNG
- default y if !(CPU_S3C2410 || CPU_S3C2412 || CPU_S3C2440 || CPU_S3C2442)
+ default y
help
Internal node for the common case of 4 Samsung compatible UARTs
config SERIAL_SAMSUNG_UARTS
int
depends on SERIAL_SAMSUNG
- default 4 if SERIAL_SAMSUNG_UARTS_4 || CPU_S3C2416
- default 3
+ default 4
help
Select the number of available UART ports for the Samsung S3C
serial driver
diff --git a/drivers/tty/serial/samsung_tty.c b/drivers/tty/serial/samsung_tty.c
index 77d1363029f5..5adf3963b2f6 100644
--- a/drivers/tty/serial/samsung_tty.c
+++ b/drivers/tty/serial/samsung_tty.c
@@ -152,10 +152,6 @@ struct s3c24xx_uart_port {
const struct s3c2410_uartcfg *cfg;
struct s3c24xx_uart_dma *dma;
-
-#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
- struct notifier_block freq_transition;
-#endif
};
static void s3c24xx_serial_tx_chars(struct s3c24xx_uart_port *ourport);
@@ -1859,93 +1855,6 @@ static void s3c24xx_serial_resetport(struct uart_port *port,
udelay(1);
}
-#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
-
-static int s3c24xx_serial_cpufreq_transition(struct notifier_block *nb,
- unsigned long val, void *data)
-{
- struct s3c24xx_uart_port *port;
- struct uart_port *uport;
-
- port = container_of(nb, struct s3c24xx_uart_port, freq_transition);
- uport = &port->port;
-
- /* check to see if port is enabled */
-
- if (port->pm_level != 0)
- return 0;
-
- /* try and work out if the baudrate is changing, we can detect
- * a change in rate, but we do not have support for detecting
- * a disturbance in the clock-rate over the change.
- */
-
- if (IS_ERR(port->baudclk))
- goto exit;
-
- if (port->baudclk_rate == clk_get_rate(port->baudclk))
- goto exit;
-
- if (val == CPUFREQ_PRECHANGE) {
- /* we should really shut the port down whilst the
- * frequency change is in progress.
- */
-
- } else if (val == CPUFREQ_POSTCHANGE) {
- struct ktermios *termios;
- struct tty_struct *tty;
-
- if (uport->state == NULL)
- goto exit;
-
- tty = uport->state->port.tty;
-
- if (tty == NULL)
- goto exit;
-
- termios = &tty->termios;
-
- if (termios == NULL) {
- dev_warn(uport->dev, "%s: no termios?\n", __func__);
- goto exit;
- }
-
- s3c24xx_serial_set_termios(uport, termios, NULL);
- }
-
-exit:
- return 0;
-}
-
-static inline int
-s3c24xx_serial_cpufreq_register(struct s3c24xx_uart_port *port)
-{
- port->freq_transition.notifier_call = s3c24xx_serial_cpufreq_transition;
-
- return cpufreq_register_notifier(&port->freq_transition,
- CPUFREQ_TRANSITION_NOTIFIER);
-}
-
-static inline void
-s3c24xx_serial_cpufreq_deregister(struct s3c24xx_uart_port *port)
-{
- cpufreq_unregister_notifier(&port->freq_transition,
- CPUFREQ_TRANSITION_NOTIFIER);
-}
-
-#else
-static inline int
-s3c24xx_serial_cpufreq_register(struct s3c24xx_uart_port *port)
-{
- return 0;
-}
-
-static inline void
-s3c24xx_serial_cpufreq_deregister(struct s3c24xx_uart_port *port)
-{
-}
-#endif
-
static int s3c24xx_serial_enable_baudclk(struct s3c24xx_uart_port *ourport)
{
struct device *dev = ourport->port.dev;
@@ -2237,10 +2146,6 @@ static int s3c24xx_serial_probe(struct platform_device *pdev)
if (!IS_ERR(ourport->baudclk))
clk_disable_unprepare(ourport->baudclk);
- ret = s3c24xx_serial_cpufreq_register(ourport);
- if (ret < 0)
- dev_err(&pdev->dev, "failed to add cpufreq notifier\n");
-
probe_index++;
return 0;
@@ -2251,7 +2156,6 @@ static int s3c24xx_serial_remove(struct platform_device *dev)
struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
if (port) {
- s3c24xx_serial_cpufreq_deregister(to_ourport(port));
uart_remove_one_port(&s3c24xx_uart_drv, port);
}
@@ -2589,94 +2493,6 @@ static struct console s3c24xx_serial_console = {
};
#endif /* CONFIG_SERIAL_SAMSUNG_CONSOLE */
-#ifdef CONFIG_CPU_S3C2410
-static const struct s3c24xx_serial_drv_data s3c2410_serial_drv_data = {
- .info = {
- .name = "Samsung S3C2410 UART",
- .type = TYPE_S3C24XX,
- .port_type = PORT_S3C2410,
- .fifosize = 16,
- .rx_fifomask = S3C2410_UFSTAT_RXMASK,
- .rx_fifoshift = S3C2410_UFSTAT_RXSHIFT,
- .rx_fifofull = S3C2410_UFSTAT_RXFULL,
- .tx_fifofull = S3C2410_UFSTAT_TXFULL,
- .tx_fifomask = S3C2410_UFSTAT_TXMASK,
- .tx_fifoshift = S3C2410_UFSTAT_TXSHIFT,
- .def_clk_sel = S3C2410_UCON_CLKSEL0,
- .num_clks = 2,
- .clksel_mask = S3C2410_UCON_CLKMASK,
- .clksel_shift = S3C2410_UCON_CLKSHIFT,
- },
- .def_cfg = {
- .ucon = S3C2410_UCON_DEFAULT,
- .ufcon = S3C2410_UFCON_DEFAULT,
- },
-};
-#define S3C2410_SERIAL_DRV_DATA (&s3c2410_serial_drv_data)
-#else
-#define S3C2410_SERIAL_DRV_DATA NULL
-#endif
-
-#ifdef CONFIG_CPU_S3C2412
-static const struct s3c24xx_serial_drv_data s3c2412_serial_drv_data = {
- .info = {
- .name = "Samsung S3C2412 UART",
- .type = TYPE_S3C24XX,
- .port_type = PORT_S3C2412,
- .fifosize = 64,
- .has_divslot = 1,
- .rx_fifomask = S3C2440_UFSTAT_RXMASK,
- .rx_fifoshift = S3C2440_UFSTAT_RXSHIFT,
- .rx_fifofull = S3C2440_UFSTAT_RXFULL,
- .tx_fifofull = S3C2440_UFSTAT_TXFULL,
- .tx_fifomask = S3C2440_UFSTAT_TXMASK,
- .tx_fifoshift = S3C2440_UFSTAT_TXSHIFT,
- .def_clk_sel = S3C2410_UCON_CLKSEL2,
- .num_clks = 4,
- .clksel_mask = S3C2412_UCON_CLKMASK,
- .clksel_shift = S3C2412_UCON_CLKSHIFT,
- },
- .def_cfg = {
- .ucon = S3C2410_UCON_DEFAULT,
- .ufcon = S3C2410_UFCON_DEFAULT,
- },
-};
-#define S3C2412_SERIAL_DRV_DATA (&s3c2412_serial_drv_data)
-#else
-#define S3C2412_SERIAL_DRV_DATA NULL
-#endif
-
-#if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2416) || \
- defined(CONFIG_CPU_S3C2443) || defined(CONFIG_CPU_S3C2442)
-static const struct s3c24xx_serial_drv_data s3c2440_serial_drv_data = {
- .info = {
- .name = "Samsung S3C2440 UART",
- .type = TYPE_S3C24XX,
- .port_type = PORT_S3C2440,
- .fifosize = 64,
- .has_divslot = 1,
- .rx_fifomask = S3C2440_UFSTAT_RXMASK,
- .rx_fifoshift = S3C2440_UFSTAT_RXSHIFT,
- .rx_fifofull = S3C2440_UFSTAT_RXFULL,
- .tx_fifofull = S3C2440_UFSTAT_TXFULL,
- .tx_fifomask = S3C2440_UFSTAT_TXMASK,
- .tx_fifoshift = S3C2440_UFSTAT_TXSHIFT,
- .def_clk_sel = S3C2410_UCON_CLKSEL2,
- .num_clks = 4,
- .clksel_mask = S3C2412_UCON_CLKMASK,
- .clksel_shift = S3C2412_UCON_CLKSHIFT,
- .ucon_mask = S3C2440_UCON0_DIVMASK,
- },
- .def_cfg = {
- .ucon = S3C2410_UCON_DEFAULT,
- .ufcon = S3C2410_UFCON_DEFAULT,
- },
-};
-#define S3C2440_SERIAL_DRV_DATA (&s3c2440_serial_drv_data)
-#else
-#define S3C2440_SERIAL_DRV_DATA NULL
-#endif
-
#if defined(CONFIG_CPU_S3C6400) || defined(CONFIG_CPU_S3C6410)
static const struct s3c24xx_serial_drv_data s3c6400_serial_drv_data = {
.info = {
@@ -2845,15 +2661,6 @@ static const struct s3c24xx_serial_drv_data artpec8_serial_drv_data = {
static const struct platform_device_id s3c24xx_serial_driver_ids[] = {
{
- .name = "s3c2410-uart",
- .driver_data = (kernel_ulong_t)S3C2410_SERIAL_DRV_DATA,
- }, {
- .name = "s3c2412-uart",
- .driver_data = (kernel_ulong_t)S3C2412_SERIAL_DRV_DATA,
- }, {
- .name = "s3c2440-uart",
- .driver_data = (kernel_ulong_t)S3C2440_SERIAL_DRV_DATA,
- }, {
.name = "s3c6400-uart",
.driver_data = (kernel_ulong_t)S3C6400_SERIAL_DRV_DATA,
}, {
@@ -2881,12 +2688,6 @@ MODULE_DEVICE_TABLE(platform, s3c24xx_serial_driver_ids);
#ifdef CONFIG_OF
static const struct of_device_id s3c24xx_uart_dt_match[] = {
- { .compatible = "samsung,s3c2410-uart",
- .data = S3C2410_SERIAL_DRV_DATA },
- { .compatible = "samsung,s3c2412-uart",
- .data = S3C2412_SERIAL_DRV_DATA },
- { .compatible = "samsung,s3c2440-uart",
- .data = S3C2440_SERIAL_DRV_DATA },
{ .compatible = "samsung,s3c6400-uart",
.data = S3C6400_SERIAL_DRV_DATA },
{ .compatible = "samsung,s5pv210-uart",
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index fb7b603dddf8..8ba4fe9364b1 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -443,12 +443,12 @@ config USB_OHCI_HCD_STI
STMicroelectronics consumer electronics SoC's.
config USB_OHCI_HCD_S3C2410
- tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
- depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX || COMPILE_TEST)
- default y if (ARCH_S3C24XX || ARCH_S3C64XX)
+ tristate "OHCI support for Samsung S3C64xx SoC series"
+ depends on USB_OHCI_HCD && (ARCH_S3C64XX || COMPILE_TEST)
+ default ARCH_S3C64XX
help
Enables support for the on-chip OHCI controller on
- S3C24xx/S3C64xx chips.
+ S3C64xx chips.
config USB_OHCI_HCD_LPC32XX
tristate "Support for LPC on-chip OHCI USB controller"
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index b64bc49c7f30..eee7df45347a 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -491,14 +491,13 @@ config IXP4XX_WATCHDOG
Say N if you are unsure.
config S3C2410_WATCHDOG
- tristate "S3C2410 Watchdog"
- depends on ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || \
- COMPILE_TEST
+ tristate "S3C6410/S5Pv210/Exynos Watchdog"
+ depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
select WATCHDOG_CORE
select MFD_SYSCON if ARCH_EXYNOS
help
- Watchdog timer block in the Samsung S3C24xx, S3C64xx, S5Pv210 and
- Exynos SoCs. This will reboot the system when the timer expires with
+ Watchdog timer block in the Samsung S3C64xx, S5Pv210 and Exynos
+ SoCs. This will reboot the system when the timer expires with
the watchdog enabled.
The driver is limited by the speed of the system's PCLK
diff --git a/drivers/watchdog/s3c2410_wdt.c b/drivers/watchdog/s3c2410_wdt.c
index d3fc8ed886ff..200ba236a72e 100644
--- a/drivers/watchdog/s3c2410_wdt.c
+++ b/drivers/watchdog/s3c2410_wdt.c
@@ -562,73 +562,6 @@ static irqreturn_t s3c2410wdt_irq(int irqno, void *param)
return IRQ_HANDLED;
}
-#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
-
-static int s3c2410wdt_cpufreq_transition(struct notifier_block *nb,
- unsigned long val, void *data)
-{
- int ret;
- struct s3c2410_wdt *wdt = freq_to_wdt(nb);
-
- if (!s3c2410wdt_is_running(wdt))
- goto done;
-
- if (val == CPUFREQ_PRECHANGE) {
- /* To ensure that over the change we don't cause the
- * watchdog to trigger, we perform an keep-alive if
- * the watchdog is running.
- */
-
- s3c2410wdt_keepalive(&wdt->wdt_device);
- } else if (val == CPUFREQ_POSTCHANGE) {
- s3c2410wdt_stop(&wdt->wdt_device);
-
- ret = s3c2410wdt_set_heartbeat(&wdt->wdt_device,
- wdt->wdt_device.timeout);
-
- if (ret >= 0)
- s3c2410wdt_start(&wdt->wdt_device);
- else
- goto err;
- }
-
-done:
- return 0;
-
- err:
- dev_err(wdt->dev, "cannot set new value for timeout %d\n",
- wdt->wdt_device.timeout);
- return ret;
-}
-
-static inline int s3c2410wdt_cpufreq_register(struct s3c2410_wdt *wdt)
-{
- wdt->freq_transition.notifier_call = s3c2410wdt_cpufreq_transition;
-
- return cpufreq_register_notifier(&wdt->freq_transition,
- CPUFREQ_TRANSITION_NOTIFIER);
-}
-
-static inline void s3c2410wdt_cpufreq_deregister(struct s3c2410_wdt *wdt)
-{
- wdt->freq_transition.notifier_call = s3c2410wdt_cpufreq_transition;
-
- cpufreq_unregister_notifier(&wdt->freq_transition,
- CPUFREQ_TRANSITION_NOTIFIER);
-}
-
-#else
-
-static inline int s3c2410wdt_cpufreq_register(struct s3c2410_wdt *wdt)
-{
- return 0;
-}
-
-static inline void s3c2410wdt_cpufreq_deregister(struct s3c2410_wdt *wdt)
-{
-}
-#endif
-
static inline unsigned int s3c2410wdt_get_bootstatus(struct s3c2410_wdt *wdt)
{
unsigned int rst_stat;
@@ -761,12 +694,6 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
wdt->wdt_device.min_timeout = 1;
wdt->wdt_device.max_timeout = s3c2410wdt_max_timeout(wdt);
- ret = s3c2410wdt_cpufreq_register(wdt);
- if (ret < 0) {
- dev_err(dev, "failed to register cpufreq\n");
- goto err_src_clk;
- }
-
watchdog_set_drvdata(&wdt->wdt_device, wdt);
/* see if we can actually set the requested timer margin, and if
@@ -783,7 +710,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
S3C2410_WATCHDOG_DEFAULT_TIME);
} else {
dev_err(dev, "failed to use default timeout\n");
- goto err_cpufreq;
+ goto err_src_clk;
}
}
@@ -791,7 +718,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
pdev->name, pdev);
if (ret != 0) {
dev_err(dev, "failed to install irq (%d)\n", ret);
- goto err_cpufreq;
+ goto err_src_clk;
}
watchdog_set_nowayout(&wdt->wdt_device, nowayout);
@@ -817,7 +744,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
ret = watchdog_register_device(&wdt->wdt_device);
if (ret)
- goto err_cpufreq;
+ goto err_src_clk;
ret = s3c2410wdt_enable(wdt, true);
if (ret < 0)
@@ -839,9 +766,6 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
err_unregister:
watchdog_unregister_device(&wdt->wdt_device);
- err_cpufreq:
- s3c2410wdt_cpufreq_deregister(wdt);
-
err_src_clk:
clk_disable_unprepare(wdt->src_clk);
@@ -862,8 +786,6 @@ static int s3c2410wdt_remove(struct platform_device *dev)
watchdog_unregister_device(&wdt->wdt_device);
- s3c2410wdt_cpufreq_deregister(wdt);
-
clk_disable_unprepare(wdt->src_clk);
clk_disable_unprepare(wdt->bus_clk);
diff --git a/include/linux/clk/samsung.h b/include/linux/clk/samsung.h
index 38b774001712..0cf7aac83439 100644
--- a/include/linux/clk/samsung.h
+++ b/include/linux/clk/samsung.h
@@ -21,36 +21,4 @@ static inline void s3c64xx_clk_init(struct device_node *np,
bool s3c6400, void __iomem *base) { }
#endif /* CONFIG_S3C64XX_COMMON_CLK */
-#ifdef CONFIG_S3C2410_COMMON_CLK
-void s3c2410_common_clk_init(struct device_node *np, unsigned long xti_f,
- int current_soc,
- void __iomem *reg_base);
-#else
-static inline void s3c2410_common_clk_init(struct device_node *np,
- unsigned long xti_f,
- int current_soc,
- void __iomem *reg_base) { }
-#endif /* CONFIG_S3C2410_COMMON_CLK */
-
-#ifdef CONFIG_S3C2412_COMMON_CLK
-void s3c2412_common_clk_init(struct device_node *np, unsigned long xti_f,
- unsigned long ext_f, void __iomem *reg_base);
-#else
-static inline void s3c2412_common_clk_init(struct device_node *np,
- unsigned long xti_f,
- unsigned long ext_f,
- void __iomem *reg_base) { }
-#endif /* CONFIG_S3C2412_COMMON_CLK */
-
-#ifdef CONFIG_S3C2443_COMMON_CLK
-void s3c2443_common_clk_init(struct device_node *np, unsigned long xti_f,
- int current_soc,
- void __iomem *reg_base);
-#else
-static inline void s3c2443_common_clk_init(struct device_node *np,
- unsigned long xti_f,
- int current_soc,
- void __iomem *reg_base) { }
-#endif /* CONFIG_S3C2443_COMMON_CLK */
-
#endif /* __LINUX_CLK_SAMSUNG_H_ */
diff --git a/include/linux/soc/samsung/s3c-pm.h b/include/linux/soc/samsung/s3c-pm.h
index f9164559c99f..5b23d85d20ab 100644
--- a/include/linux/soc/samsung/s3c-pm.h
+++ b/include/linux/soc/samsung/s3c-pm.h
@@ -14,58 +14,10 @@
/* PM debug functions */
-/**
- * struct pm_uart_save - save block for core UART
- * @ulcon: Save value for S3C2410_ULCON
- * @ucon: Save value for S3C2410_UCON
- * @ufcon: Save value for S3C2410_UFCON
- * @umcon: Save value for S3C2410_UMCON
- * @ubrdiv: Save value for S3C2410_UBRDIV
- *
- * Save block for UART registers to be held over sleep and restored if they
- * are needed (say by debug).
-*/
-struct pm_uart_save {
- u32 ulcon;
- u32 ucon;
- u32 ufcon;
- u32 umcon;
- u32 ubrdiv;
- u32 udivslot;
-};
-
-#ifdef CONFIG_SAMSUNG_PM_DEBUG
-/**
- * s3c_pm_dbg() - low level debug function for use in suspend/resume.
- * @msg: The message to print.
- *
- * This function is used mainly to debug the resume process before the system
- * can rely on printk/console output. It uses the low-level debugging output
- * routine printascii() to do its work.
- */
-extern void s3c_pm_dbg(const char *msg, ...);
-
-#define S3C_PMDBG(fmt...) s3c_pm_dbg(fmt)
-
-extern void s3c_pm_save_uarts(bool is_s3c24xx);
-extern void s3c_pm_restore_uarts(bool is_s3c24xx);
-
-#ifdef CONFIG_ARCH_S3C64XX
-extern void s3c_pm_arch_update_uart(void __iomem *regs,
- struct pm_uart_save *save);
-#else
-static inline void
-s3c_pm_arch_update_uart(void __iomem *regs, struct pm_uart_save *save)
-{
-}
-#endif
-
-#else
#define S3C_PMDBG(fmt...) pr_debug(fmt)
static inline void s3c_pm_save_uarts(bool is_s3c24xx) { }
static inline void s3c_pm_restore_uarts(bool is_s3c24xx) { }
-#endif
/* suspend memory checking */
@@ -81,14 +33,4 @@ extern void s3c_pm_check_store(void);
#define s3c_pm_check_store() do { } while (0)
#endif
-/* system device subsystems */
-
-extern struct bus_type s3c2410_subsys;
-extern struct bus_type s3c2410a_subsys;
-extern struct bus_type s3c2412_subsys;
-extern struct bus_type s3c2416_subsys;
-extern struct bus_type s3c2440_subsys;
-extern struct bus_type s3c2442_subsys;
-extern struct bus_type s3c2443_subsys;
-
#endif
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx platform is gone, so this driver can be removed as well.
Signed-off-by: Arnd Bergmann <[email protected]>
---
MAINTAINERS | 6 -
drivers/mmc/host/Kconfig | 43 -
drivers/mmc/host/Makefile | 1 -
drivers/mmc/host/s3cmci.c | 1777 ----------------------
drivers/mmc/host/s3cmci.h | 75 -
include/linux/platform_data/mmc-s3cmci.h | 51 -
6 files changed, 1953 deletions(-)
delete mode 100644 drivers/mmc/host/s3cmci.c
delete mode 100644 drivers/mmc/host/s3cmci.h
delete mode 100644 include/linux/platform_data/mmc-s3cmci.h
diff --git a/MAINTAINERS b/MAINTAINERS
index 2caf42b0328a..503ebd9800db 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -17920,12 +17920,6 @@ S: Supported
W: http://www.ibm.com/developerworks/linux/linux390/
F: drivers/s390/scsi/zfcp_*
-S3C24XX SD/MMC Driver
-M: Ben Dooks <[email protected]>
-L: [email protected] (moderated for non-subscribers)
-S: Supported
-F: drivers/mmc/host/s3cmci.*
-
SAA6588 RDS RECEIVER DRIVER
M: Hans Verkuil <[email protected]>
L: [email protected]
diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
index 79d8ddf1f616..75e8c364243d 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -619,49 +619,6 @@ config MMC_SPI
If unsure, or if your system has no SPI master driver, say N.
-config MMC_S3C
- tristate "Samsung S3C SD/MMC Card Interface support"
- depends on ARCH_S3C24XX || COMPILE_TEST
- depends on S3C24XX_DMAC || COMPILE_TEST
- help
- This selects a driver for the MCI interface found in
- Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
- If you have a board based on one of those and a MMC/SD
- slot, say Y or M here.
-
- If unsure, say N.
-
-config MMC_S3C_HW_SDIO_IRQ
- bool "Hardware support for SDIO IRQ"
- depends on MMC_S3C
- help
- Enable the hardware support for SDIO interrupts instead of using
- the generic polling code.
-
-choice
- prompt "Samsung S3C SD/MMC transfer code"
- depends on MMC_S3C
-
-config MMC_S3C_PIO
- bool "Use PIO transfers only"
- help
- Use PIO to transfer data between memory and the hardware.
-
- PIO is slower than DMA as it requires CPU instructions to
- move the data. This has been the traditional default for
- the S3C MCI driver.
-
-config MMC_S3C_DMA
- bool "Use DMA transfers only"
- help
- Use DMA to transfer data between memory and the hardware.
-
- Currently, the DMA support in this driver seems to not be
- working properly and needs to be debugged before this
- option is useful.
-
-endchoice
-
config MMC_SDRICOH_CS
tristate "MMC/SD driver for Ricoh Bay1Controllers"
depends on PCI && PCMCIA
diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
index 0baeb0b004f7..885e19e21e75 100644
--- a/drivers/mmc/host/Makefile
+++ b/drivers/mmc/host/Makefile
@@ -34,7 +34,6 @@ obj-$(CONFIG_MMC_MVSDIO) += mvsdio.o
obj-$(CONFIG_MMC_DAVINCI) += davinci_mmc.o
obj-$(CONFIG_MMC_SPI) += mmc_spi.o
obj-$(CONFIG_MMC_SPI) += of_mmc_spi.o
-obj-$(CONFIG_MMC_S3C) += s3cmci.o
obj-$(CONFIG_MMC_SDRICOH_CS) += sdricoh_cs.o
obj-$(CONFIG_MMC_TMIO_CORE) += tmio_mmc_core.o
obj-$(CONFIG_MMC_SDHI) += renesas_sdhi_core.o
diff --git a/drivers/mmc/host/s3cmci.c b/drivers/mmc/host/s3cmci.c
deleted file mode 100644
index 8d5929a32d34..000000000000
diff --git a/drivers/mmc/host/s3cmci.h b/drivers/mmc/host/s3cmci.h
deleted file mode 100644
index 8b65d7ad9f97..000000000000
diff --git a/include/linux/platform_data/mmc-s3cmci.h b/include/linux/platform_data/mmc-s3cmci.h
deleted file mode 100644
index bacb86db3112..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
All s3c24xx platforms were removed, so these five drivers are all
obsolete now.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/cpufreq/Kconfig.arm | 78 ---
drivers/cpufreq/Makefile | 6 -
drivers/cpufreq/s3c2410-cpufreq.c | 155 -----
drivers/cpufreq/s3c2412-cpufreq.c | 240 -------
drivers/cpufreq/s3c2416-cpufreq.c | 492 --------------
drivers/cpufreq/s3c2440-cpufreq.c | 321 ---------
drivers/cpufreq/s3c24xx-cpufreq-debugfs.c | 163 -----
drivers/cpufreq/s3c24xx-cpufreq.c | 648 -------------------
include/linux/soc/samsung/s3c-cpufreq-core.h | 299 ---------
9 files changed, 2402 deletions(-)
delete mode 100644 drivers/cpufreq/s3c2410-cpufreq.c
delete mode 100644 drivers/cpufreq/s3c2412-cpufreq.c
delete mode 100644 drivers/cpufreq/s3c2416-cpufreq.c
delete mode 100644 drivers/cpufreq/s3c2440-cpufreq.c
delete mode 100644 drivers/cpufreq/s3c24xx-cpufreq-debugfs.c
delete mode 100644 drivers/cpufreq/s3c24xx-cpufreq.c
delete mode 100644 include/linux/soc/samsung/s3c-cpufreq-core.h
diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm
index 8f7a1065f344..e3e0367305ec 100644
--- a/drivers/cpufreq/Kconfig.arm
+++ b/drivers/cpufreq/Kconfig.arm
@@ -180,84 +180,6 @@ config ARM_RASPBERRYPI_CPUFREQ
If in doubt, say N.
-config ARM_S3C_CPUFREQ
- bool
- help
- Internal configuration node for common cpufreq on Samsung SoC
-
-config ARM_S3C24XX_CPUFREQ
- bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
- depends on ARCH_S3C24XX
- select ARM_S3C_CPUFREQ
- help
- This enables the CPUfreq driver for the Samsung S3C24XX family
- of CPUs.
-
- For details, take a look at <file:Documentation/cpu-freq>.
-
- If in doubt, say N.
-
-config ARM_S3C24XX_CPUFREQ_DEBUG
- bool "Debug CPUfreq Samsung driver core"
- depends on ARM_S3C24XX_CPUFREQ
- help
- Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
-
-config ARM_S3C24XX_CPUFREQ_IODEBUG
- bool "Debug CPUfreq Samsung driver IO timing"
- depends on ARM_S3C24XX_CPUFREQ
- help
- Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
-
-config ARM_S3C24XX_CPUFREQ_DEBUGFS
- bool "Export debugfs for CPUFreq"
- depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
- help
- Export status information via debugfs.
-
-config ARM_S3C2410_CPUFREQ
- bool
- depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
- help
- CPU Frequency scaling support for S3C2410
-
-config ARM_S3C2412_CPUFREQ
- bool
- depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
- default y
- select S3C2412_IOTIMING
- help
- CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
-
-config ARM_S3C2416_CPUFREQ
- bool "S3C2416 CPU Frequency scaling support"
- depends on CPU_S3C2416
- help
- This adds the CPUFreq driver for the Samsung S3C2416 and
- S3C2450 SoC. The S3C2416 supports changing the rate of the
- armdiv clock source and also entering a so called dynamic
- voltage scaling mode in which it is possible to reduce the
- core voltage of the CPU.
-
- If in doubt, say N.
-
-config ARM_S3C2416_CPUFREQ_VCORESCALE
- bool "Allow voltage scaling for S3C2416 arm core"
- depends on ARM_S3C2416_CPUFREQ && REGULATOR
- help
- Enable CPU voltage scaling when entering the dvs mode.
- It uses information gathered through existing hardware and
- tests but not documented in any datasheet.
-
- If in doubt, say N.
-
-config ARM_S3C2440_CPUFREQ
- bool "S3C2440/S3C2442 CPU Frequency scaling support"
- depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
- default y
- help
- CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
-
config ARM_S3C64XX_CPUFREQ
bool "Samsung S3C64XX"
depends on CPU_S3C6410
diff --git a/drivers/cpufreq/Makefile b/drivers/cpufreq/Makefile
index 8de99b213146..692c16e4ee55 100644
--- a/drivers/cpufreq/Makefile
+++ b/drivers/cpufreq/Makefile
@@ -70,13 +70,7 @@ obj-$(CONFIG_PXA3xx) += pxa3xx-cpufreq.o
obj-$(CONFIG_ARM_QCOM_CPUFREQ_HW) += qcom-cpufreq-hw.o
obj-$(CONFIG_ARM_QCOM_CPUFREQ_NVMEM) += qcom-cpufreq-nvmem.o
obj-$(CONFIG_ARM_RASPBERRYPI_CPUFREQ) += raspberrypi-cpufreq.o
-obj-$(CONFIG_ARM_S3C2410_CPUFREQ) += s3c2410-cpufreq.o
-obj-$(CONFIG_ARM_S3C2412_CPUFREQ) += s3c2412-cpufreq.o
-obj-$(CONFIG_ARM_S3C2416_CPUFREQ) += s3c2416-cpufreq.o
-obj-$(CONFIG_ARM_S3C2440_CPUFREQ) += s3c2440-cpufreq.o
obj-$(CONFIG_ARM_S3C64XX_CPUFREQ) += s3c64xx-cpufreq.o
-obj-$(CONFIG_ARM_S3C24XX_CPUFREQ) += s3c24xx-cpufreq.o
-obj-$(CONFIG_ARM_S3C24XX_CPUFREQ_DEBUGFS) += s3c24xx-cpufreq-debugfs.o
obj-$(CONFIG_ARM_S5PV210_CPUFREQ) += s5pv210-cpufreq.o
obj-$(CONFIG_ARM_SA1110_CPUFREQ) += sa1110-cpufreq.o
obj-$(CONFIG_ARM_SCMI_CPUFREQ) += scmi-cpufreq.o
diff --git a/drivers/cpufreq/s3c2410-cpufreq.c b/drivers/cpufreq/s3c2410-cpufreq.c
deleted file mode 100644
index 5dcfbf0bfb74..000000000000
diff --git a/drivers/cpufreq/s3c2412-cpufreq.c b/drivers/cpufreq/s3c2412-cpufreq.c
deleted file mode 100644
index 5945945ead7c..000000000000
diff --git a/drivers/cpufreq/s3c2416-cpufreq.c b/drivers/cpufreq/s3c2416-cpufreq.c
deleted file mode 100644
index 5c221bc90210..000000000000
diff --git a/drivers/cpufreq/s3c2440-cpufreq.c b/drivers/cpufreq/s3c2440-cpufreq.c
deleted file mode 100644
index 2011fb9c03a4..000000000000
diff --git a/drivers/cpufreq/s3c24xx-cpufreq-debugfs.c b/drivers/cpufreq/s3c24xx-cpufreq-debugfs.c
deleted file mode 100644
index 93971dfe7c75..000000000000
diff --git a/drivers/cpufreq/s3c24xx-cpufreq.c b/drivers/cpufreq/s3c24xx-cpufreq.c
deleted file mode 100644
index 7380c32b238e..000000000000
diff --git a/include/linux/soc/samsung/s3c-cpufreq-core.h b/include/linux/soc/samsung/s3c-cpufreq-core.h
deleted file mode 100644
index 3b278afb769b..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx platform was removed, so the framebuffer driver is no longer
needed.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/video/fbdev/Kconfig | 33 +-
drivers/video/fbdev/Makefile | 1 -
drivers/video/fbdev/s3c2410fb-regs-lcd.h | 143 ---
drivers/video/fbdev/s3c2410fb.c | 1142 ----------------------
drivers/video/fbdev/s3c2410fb.h | 48 -
include/linux/platform_data/fb-s3c2410.h | 99 --
6 files changed, 4 insertions(+), 1462 deletions(-)
delete mode 100644 drivers/video/fbdev/s3c2410fb-regs-lcd.h
delete mode 100644 drivers/video/fbdev/s3c2410fb.c
delete mode 100644 drivers/video/fbdev/s3c2410fb.h
delete mode 100644 include/linux/platform_data/fb-s3c2410.h
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index d1d74269075a..fa5bdbf82d59 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1822,19 +1822,17 @@ config FB_SH_MOBILE_LCDC
config FB_S3C
tristate "Samsung S3C framebuffer support"
depends on FB && HAVE_CLK && HAS_IOMEM
- depends on (CPU_S3C2416 || ARCH_S3C64XX) || COMPILE_TEST
+ depends on ARCH_S3C64XX || COMPILE_TEST
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
help
Frame buffer driver for the built-in FB controller in the Samsung
- SoC line from the S3C2443 onwards, including the S3C2416, S3C2450,
- and the S3C64XX series such as the S3C6400 and S3C6410.
+ SoC line such as the S3C6400 and S3C6410.
These chips all have the same basic framebuffer design with the
- actual capabilities depending on the chip. For instance the S3C6400
- and S3C6410 support 4 hardware windows whereas the S3C24XX series
- currently only have two.
+ actual capabilities depending on the chip. The S3C6400
+ and S3C6410 support 4 hardware windows.
Currently the support is only for the S3C6400 and S3C6410 SoCs.
@@ -1844,29 +1842,6 @@ config FB_S3C_DEBUG_REGWRITE
help
Show all register writes via pr_debug()
-config FB_S3C2410
- tristate "S3C2410 LCD framebuffer support"
- depends on FB && ARCH_S3C24XX
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
- help
- Frame buffer driver for the built-in LCD controller in the Samsung
- S3C2410 processor.
-
- This driver is also available as a module ( = code which can be
- inserted and removed from the running kernel whenever you want). The
- module will be called s3c2410fb. If you want to compile it as a module,
- say M here and read <file:Documentation/kbuild/modules.rst>.
-
- If unsure, say N.
-config FB_S3C2410_DEBUG
- bool "S3C2410 lcd debug messages"
- depends on FB_S3C2410
- help
- Turn on debugging messages. Note that you can set/unset at run time
- through sysfs
-
config FB_SM501
tristate "Silicon Motion SM501 framebuffer support"
depends on FB && MFD_SM501
diff --git a/drivers/video/fbdev/Makefile b/drivers/video/fbdev/Makefile
index 279cb0066aec..e6b0ae094b8b 100644
--- a/drivers/video/fbdev/Makefile
+++ b/drivers/video/fbdev/Makefile
@@ -98,7 +98,6 @@ obj-$(CONFIG_FB_S1D13XXX) += s1d13xxxfb.o
obj-$(CONFIG_FB_SH7760) += sh7760fb.o
obj-$(CONFIG_FB_IMX) += imxfb.o
obj-$(CONFIG_FB_S3C) += s3c-fb.o
-obj-$(CONFIG_FB_S3C2410) += s3c2410fb.o
obj-$(CONFIG_FB_FSL_DIU) += fsl-diu-fb.o
obj-$(CONFIG_FB_COBALT) += cobalt_lcdfb.o
obj-$(CONFIG_FB_IBM_GXT4500) += gxt4500.o
diff --git a/drivers/video/fbdev/s3c2410fb-regs-lcd.h b/drivers/video/fbdev/s3c2410fb-regs-lcd.h
deleted file mode 100644
index 1e46f7a788e5..000000000000
diff --git a/drivers/video/fbdev/s3c2410fb.c b/drivers/video/fbdev/s3c2410fb.c
deleted file mode 100644
index d8ae5258de46..000000000000
diff --git a/drivers/video/fbdev/s3c2410fb.h b/drivers/video/fbdev/s3c2410fb.h
deleted file mode 100644
index cdd11e2f8859..000000000000
diff --git a/include/linux/platform_data/fb-s3c2410.h b/include/linux/platform_data/fb-s3c2410.h
deleted file mode 100644
index 10c11e6316d6..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx SoC support and its adc driver was removed, so this driver
has no remaining users.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/input/touchscreen/Kconfig | 12 -
drivers/input/touchscreen/Makefile | 1 -
drivers/input/touchscreen/s3c2410_ts.c | 464 -------------------------
3 files changed, 477 deletions(-)
delete mode 100644 drivers/input/touchscreen/s3c2410_ts.c
diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
index 4fde2b93b990..4d451640a223 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
@@ -462,18 +462,6 @@ config TOUCHSCREEN_IPROC
To compile this driver as a module, choose M here: the
module will be called bcm_iproc_tsc.
-config TOUCHSCREEN_S3C2410
- tristate "Samsung S3C2410/generic touchscreen input driver"
- depends on ARCH_S3C24XX || SAMSUNG_DEV_TS
- depends on S3C_ADC
- help
- Say Y here if you have the s3c2410 touchscreen.
-
- If unsure, say N.
-
- To compile this driver as a module, choose M here: the
- module will be called s3c2410_ts.
-
config TOUCHSCREEN_S6SY761
tristate "Samsung S6SY761 Touchscreen driver"
depends on I2C
diff --git a/drivers/input/touchscreen/Makefile b/drivers/input/touchscreen/Makefile
index 533a80ad054c..eb53d652c935 100644
--- a/drivers/input/touchscreen/Makefile
+++ b/drivers/input/touchscreen/Makefile
@@ -73,7 +73,6 @@ obj-$(CONFIG_TOUCHSCREEN_PCAP) += pcap_ts.o
obj-$(CONFIG_TOUCHSCREEN_PENMOUNT) += penmount.o
obj-$(CONFIG_TOUCHSCREEN_PIXCIR) += pixcir_i2c_ts.o
obj-$(CONFIG_TOUCHSCREEN_RM_TS) += raydium_i2c_ts.o
-obj-$(CONFIG_TOUCHSCREEN_S3C2410) += s3c2410_ts.o
obj-$(CONFIG_TOUCHSCREEN_S6SY761) += s6sy761.o
obj-$(CONFIG_TOUCHSCREEN_SILEAD) += silead.o
obj-$(CONFIG_TOUCHSCREEN_SIS_I2C) += sis_i2c.o
diff --git a/drivers/input/touchscreen/s3c2410_ts.c b/drivers/input/touchscreen/s3c2410_ts.c
deleted file mode 100644
index 2e70c0b79444..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c-adc driver is removed along with the s3c24xx platform,
so the battery driver is no longer needed either.
Signed-off-by: Arnd Bergmann <[email protected]>
---
MAINTAINERS | 7 -
drivers/power/supply/Kconfig | 6 -
drivers/power/supply/Makefile | 1 -
drivers/power/supply/s3c_adc_battery.c | 453 -------------------------
include/linux/s3c_adc_battery.h | 39 ---
5 files changed, 506 deletions(-)
delete mode 100644 drivers/power/supply/s3c_adc_battery.c
delete mode 100644 include/linux/s3c_adc_battery.h
diff --git a/MAINTAINERS b/MAINTAINERS
index 071d64e2a7ca..2caf42b0328a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -17920,13 +17920,6 @@ S: Supported
W: http://www.ibm.com/developerworks/linux/linux390/
F: drivers/s390/scsi/zfcp_*
-S3C ADC BATTERY DRIVER
-M: Krzysztof Kozlowski <[email protected]>
-L: [email protected]
-S: Odd Fixes
-F: drivers/power/supply/s3c_adc_battery.c
-F: include/linux/s3c_adc_battery.h
-
S3C24XX SD/MMC Driver
M: Ben Dooks <[email protected]>
L: [email protected] (moderated for non-subscribers)
diff --git a/drivers/power/supply/Kconfig b/drivers/power/supply/Kconfig
index 568b3ede993a..e2f8dfcdd2a9 100644
--- a/drivers/power/supply/Kconfig
+++ b/drivers/power/supply/Kconfig
@@ -406,12 +406,6 @@ config BATTERY_MAX1721X
Say Y here to enable support for the MAX17211/MAX17215 standalone
battery gas-gauge.
-config BATTERY_S3C_ADC
- tristate "Battery driver for Samsung ADC based monitoring"
- depends on S3C_ADC
- help
- Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery
-
config BATTERY_TWL4030_MADC
tristate "TWL4030 MADC battery driver"
depends on TWL4030_MADC
diff --git a/drivers/power/supply/Makefile b/drivers/power/supply/Makefile
index af43866b3980..8cb3c7f5c111 100644
--- a/drivers/power/supply/Makefile
+++ b/drivers/power/supply/Makefile
@@ -54,7 +54,6 @@ obj-$(CONFIG_BATTERY_MAX17042) += max17042_battery.o
obj-$(CONFIG_BATTERY_MAX1721X) += max1721x_battery.o
obj-$(CONFIG_BATTERY_RT5033) += rt5033_battery.o
obj-$(CONFIG_CHARGER_RT9455) += rt9455_charger.o
-obj-$(CONFIG_BATTERY_S3C_ADC) += s3c_adc_battery.o
obj-$(CONFIG_BATTERY_TWL4030_MADC) += twl4030_madc_battery.o
obj-$(CONFIG_CHARGER_88PM860X) += 88pm860x_charger.o
obj-$(CONFIG_CHARGER_PCF50633) += pcf50633-charger.o
diff --git a/drivers/power/supply/s3c_adc_battery.c b/drivers/power/supply/s3c_adc_battery.c
deleted file mode 100644
index 68d31a3bee48..000000000000
diff --git a/include/linux/s3c_adc_battery.h b/include/linux/s3c_adc_battery.h
deleted file mode 100644
index 57f982c375f8..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx platform was removed and this driver is no longer
needed.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/dma/Kconfig | 12 -
drivers/dma/Makefile | 1 -
drivers/dma/s3c24xx-dma.c | 1428 ---------------------
include/linux/platform_data/dma-s3c24xx.h | 48 -
4 files changed, 1489 deletions(-)
delete mode 100644 drivers/dma/s3c24xx-dma.c
delete mode 100644 include/linux/platform_data/dma-s3c24xx.h
diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
index b73fc89ba877..ea81d825575f 100644
--- a/drivers/dma/Kconfig
+++ b/drivers/dma/Kconfig
@@ -609,18 +609,6 @@ config SPRD_DMA
help
Enable support for the on-chip DMA controller on Spreadtrum platform.
-config S3C24XX_DMAC
- bool "Samsung S3C24XX DMA support"
- depends on ARCH_S3C24XX || COMPILE_TEST
- select DMA_ENGINE
- select DMA_VIRTUAL_CHANNELS
- help
- Support for the Samsung S3C24XX DMA controller driver. The
- DMA controller is having multiple DMA channels which can be
- configured for different peripherals like audio, UART, SPI.
- The DMA controller can transfer data from memory to peripheral,
- periphal to memory, periphal to periphal and memory to memory.
-
config TXX9_DMAC
tristate "Toshiba TXx9 SoC DMA support"
depends on MACH_TX49XX
diff --git a/drivers/dma/Makefile b/drivers/dma/Makefile
index 5b55ada052a7..a4fd1ce29510 100644
--- a/drivers/dma/Makefile
+++ b/drivers/dma/Makefile
@@ -70,7 +70,6 @@ obj-$(CONFIG_STM32_DMA) += stm32-dma.o
obj-$(CONFIG_STM32_DMAMUX) += stm32-dmamux.o
obj-$(CONFIG_STM32_MDMA) += stm32-mdma.o
obj-$(CONFIG_SPRD_DMA) += sprd-dma.o
-obj-$(CONFIG_S3C24XX_DMAC) += s3c24xx-dma.o
obj-$(CONFIG_TXX9_DMAC) += txx9dmac.o
obj-$(CONFIG_TEGRA186_GPC_DMA) += tegra186-gpc-dma.o
obj-$(CONFIG_TEGRA20_APB_DMA) += tegra20-apb-dma.o
diff --git a/drivers/dma/s3c24xx-dma.c b/drivers/dma/s3c24xx-dma.c
deleted file mode 100644
index a09eeb545f7d..000000000000
diff --git a/include/linux/platform_data/dma-s3c24xx.h b/include/linux/platform_data/dma-s3c24xx.h
deleted file mode 100644
index 96d02dbeea67..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx platform is gone, so both the udc and hsudc drivers
can be removed as well.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/usb/gadget/udc/Kconfig | 25 -
drivers/usb/gadget/udc/Makefile | 2 -
drivers/usb/gadget/udc/s3c-hsudc.c | 1319 -----------
drivers/usb/gadget/udc/s3c2410_udc.c | 1980 -----------------
drivers/usb/gadget/udc/s3c2410_udc.h | 99 -
drivers/usb/gadget/udc/s3c2410_udc_regs.h | 146 --
include/linux/platform_data/s3c-hsudc.h | 33 -
include/linux/platform_data/usb-s3c2410_udc.h | 33 -
8 files changed, 3637 deletions(-)
delete mode 100644 drivers/usb/gadget/udc/s3c-hsudc.c
delete mode 100644 drivers/usb/gadget/udc/s3c2410_udc.c
delete mode 100644 drivers/usb/gadget/udc/s3c2410_udc.h
delete mode 100644 drivers/usb/gadget/udc/s3c2410_udc_regs.h
delete mode 100644 include/linux/platform_data/s3c-hsudc.h
delete mode 100644 include/linux/platform_data/usb-s3c2410_udc.h
diff --git a/drivers/usb/gadget/udc/Kconfig b/drivers/usb/gadget/udc/Kconfig
index 82fe0c72b496..a96163f70a8c 100644
--- a/drivers/usb/gadget/udc/Kconfig
+++ b/drivers/usb/gadget/udc/Kconfig
@@ -218,31 +218,6 @@ config USB_PXA27X
dynamically linked module called "pxa27x_udc" and force all
gadget drivers to also be dynamically linked.
-config USB_S3C2410
- tristate "S3C2410 USB Device Controller"
- depends on ARCH_S3C24XX
- help
- Samsung's S3C2410 is an ARM-4 processor with an integrated
- full speed USB 1.1 device controller. It has 4 configurable
- endpoints, as well as endpoint zero (for control transfers).
-
- This driver has been tested on the S3C2410, S3C2412, and
- S3C2440 processors.
-
-config USB_S3C2410_DEBUG
- bool "S3C2410 udc debug messages"
- depends on USB_S3C2410
-
-config USB_S3C_HSUDC
- tristate "S3C2416, S3C2443 and S3C2450 USB Device Controller"
- depends on ARCH_S3C24XX
- help
- Samsung's S3C2416, S3C2443 and S3C2450 is an ARM9 based SoC
- integrated with dual speed USB 2.0 device controller. It has
- 8 endpoints, as well as endpoint zero.
-
- This driver has been tested on S3C2416 and S3C2450 processors.
-
config USB_MV_UDC
tristate "Marvell USB2.0 Device Controller"
depends on HAS_DMA
diff --git a/drivers/usb/gadget/udc/Makefile b/drivers/usb/gadget/udc/Makefile
index 12f9e4c9eb0c..a05db5ea376c 100644
--- a/drivers/usb/gadget/udc/Makefile
+++ b/drivers/usb/gadget/udc/Makefile
@@ -17,7 +17,6 @@ obj-$(CONFIG_USB_PXA25X) += pxa25x_udc.o
obj-$(CONFIG_USB_PXA27X) += pxa27x_udc.o
obj-$(CONFIG_USB_GOKU) += goku_udc.o
obj-$(CONFIG_USB_OMAP) += omap_udc.o
-obj-$(CONFIG_USB_S3C2410) += s3c2410_udc.o
obj-$(CONFIG_USB_AT91) += at91_udc.o
obj-$(CONFIG_USB_ATMEL_USBA) += atmel_usba_udc.o
obj-$(CONFIG_USB_BCM63XX_UDC) += bcm63xx_udc.o
@@ -28,7 +27,6 @@ obj-$(CONFIG_USB_M66592) += m66592-udc.o
obj-$(CONFIG_USB_R8A66597) += r8a66597-udc.o
obj-$(CONFIG_USB_RENESAS_USB3) += renesas_usb3.o
obj-$(CONFIG_USB_FSL_QE) += fsl_qe_udc.o
-obj-$(CONFIG_USB_S3C_HSUDC) += s3c-hsudc.o
obj-$(CONFIG_USB_LPC32XX) += lpc32xx_udc.o
obj-$(CONFIG_USB_EG20T) += pch_udc.o
obj-$(CONFIG_USB_MV_UDC) += mv_udc.o
diff --git a/drivers/usb/gadget/udc/s3c-hsudc.c b/drivers/usb/gadget/udc/s3c-hsudc.c
deleted file mode 100644
index 4b7eb7701470..000000000000
diff --git a/drivers/usb/gadget/udc/s3c2410_udc.c b/drivers/usb/gadget/udc/s3c2410_udc.c
deleted file mode 100644
index 8c57b191e52b..000000000000
diff --git a/drivers/usb/gadget/udc/s3c2410_udc.h b/drivers/usb/gadget/udc/s3c2410_udc.h
deleted file mode 100644
index cdbf202e5ee8..000000000000
diff --git a/drivers/usb/gadget/udc/s3c2410_udc_regs.h b/drivers/usb/gadget/udc/s3c2410_udc_regs.h
deleted file mode 100644
index d8d2eeaca088..000000000000
diff --git a/include/linux/platform_data/s3c-hsudc.h b/include/linux/platform_data/s3c-hsudc.h
deleted file mode 100644
index a170939832d5..000000000000
diff --git a/include/linux/platform_data/usb-s3c2410_udc.h b/include/linux/platform_data/usb-s3c2410_udc.h
deleted file mode 100644
index c0fbe1fe3426..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx platform was removed, so this driver has no
remaining users.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/pinctrl/samsung/Kconfig | 5 -
drivers/pinctrl/samsung/Makefile | 1 -
drivers/pinctrl/samsung/pinctrl-s3c24xx.c | 653 ----------------------
3 files changed, 659 deletions(-)
delete mode 100644 drivers/pinctrl/samsung/pinctrl-s3c24xx.c
diff --git a/drivers/pinctrl/samsung/Kconfig b/drivers/pinctrl/samsung/Kconfig
index 7b0576f71376..697ff7812d8e 100644
--- a/drivers/pinctrl/samsung/Kconfig
+++ b/drivers/pinctrl/samsung/Kconfig
@@ -23,11 +23,6 @@ config PINCTRL_EXYNOS_ARM64
bool "ARMv8-specific pinctrl driver for Samsung Exynos SoCs" if COMPILE_TEST
depends on PINCTRL_EXYNOS
-config PINCTRL_S3C24XX
- bool "Samsung S3C24XX SoC pinctrl driver"
- depends on ARCH_S3C24XX || (COMPILE_TEST && OF)
- select PINCTRL_SAMSUNG
-
config PINCTRL_S3C64XX
bool "Samsung S3C64XX SoC pinctrl driver"
depends on ARCH_S3C64XX || (COMPILE_TEST && OF)
diff --git a/drivers/pinctrl/samsung/Makefile b/drivers/pinctrl/samsung/Makefile
index ed951df6a112..4dd4a92ab6cc 100644
--- a/drivers/pinctrl/samsung/Makefile
+++ b/drivers/pinctrl/samsung/Makefile
@@ -5,5 +5,4 @@ obj-$(CONFIG_PINCTRL_SAMSUNG) += pinctrl-samsung.o
obj-$(CONFIG_PINCTRL_EXYNOS) += pinctrl-exynos.o
obj-$(CONFIG_PINCTRL_EXYNOS_ARM) += pinctrl-exynos-arm.o
obj-$(CONFIG_PINCTRL_EXYNOS_ARM64) += pinctrl-exynos-arm64.o
-obj-$(CONFIG_PINCTRL_S3C24XX) += pinctrl-s3c24xx.o
obj-$(CONFIG_PINCTRL_S3C64XX) += pinctrl-s3c64xx.o
diff --git a/drivers/pinctrl/samsung/pinctrl-s3c24xx.c b/drivers/pinctrl/samsung/pinctrl-s3c24xx.c
deleted file mode 100644
index 625cb1065eaf..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx platform was removed,s o there are no remaining users
for its spi driver.
Signed-off-by: Arnd Bergmann <[email protected]>
---
MAINTAINERS | 1 -
drivers/spi/Kconfig | 18 -
drivers/spi/Makefile | 2 -
drivers/spi/spi-s3c24xx-regs.h | 41 ---
drivers/spi/spi-s3c24xx.c | 596 --------------------------------
include/linux/spi/s3c24xx-fiq.h | 33 --
include/linux/spi/s3c24xx.h | 20 --
7 files changed, 711 deletions(-)
delete mode 100644 drivers/spi/spi-s3c24xx-regs.h
delete mode 100644 drivers/spi/spi-s3c24xx.c
delete mode 100644 include/linux/spi/s3c24xx-fiq.h
delete mode 100644 include/linux/spi/s3c24xx.h
diff --git a/MAINTAINERS b/MAINTAINERS
index caf196041e3a..331301006f93 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -18088,7 +18088,6 @@ S: Maintained
F: Documentation/devicetree/bindings/spi/samsung,spi*.yaml
F: drivers/spi/spi-s3c*
F: include/linux/platform_data/spi-s3c64xx.h
-F: include/linux/spi/s3c24xx-fiq.h
SAMSUNG SXGBE DRIVERS
M: Byungho An <[email protected]>
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
index bf0dc704abbe..5992b5db8d76 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
@@ -818,24 +818,6 @@ config SPI_QCOM_GENI
This driver can also be built as a module. If so, the module
will be called spi-geni-qcom.
-config SPI_S3C24XX
- tristate "Samsung S3C24XX series SPI"
- depends on ARCH_S3C24XX
- select SPI_BITBANG
- help
- SPI driver for Samsung S3C24XX series ARM SoCs
-
-config SPI_S3C24XX_FIQ
- bool "S3C24XX driver with FIQ pseudo-DMA"
- depends on SPI_S3C24XX
- select FIQ
- help
- Enable FIQ support for the S3C24XX SPI driver to provide pseudo
- DMA by using the fast-interrupt request framework, This allows
- the driver to get DMA-like performance when there are either
- no free DMA channels, or when doing transfers that required both
- TX and RX data paths.
-
config SPI_S3C64XX
tristate "Samsung S3C64XX/Exynos SoC series type SPI"
depends on (PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST)
diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile
index ae5ba0109d4b..4cd32f76402c 100644
--- a/drivers/spi/Makefile
+++ b/drivers/spi/Makefile
@@ -109,8 +109,6 @@ obj-$(CONFIG_SPI_RB4XX) += spi-rb4xx.o
obj-$(CONFIG_MACH_REALTEK_RTL) += spi-realtek-rtl.o
obj-$(CONFIG_SPI_RPCIF) += spi-rpc-if.o
obj-$(CONFIG_SPI_RSPI) += spi-rspi.o
-obj-$(CONFIG_SPI_S3C24XX) += spi-s3c24xx-hw.o
-spi-s3c24xx-hw-y := spi-s3c24xx.o
obj-$(CONFIG_SPI_S3C64XX) += spi-s3c64xx.o
obj-$(CONFIG_SPI_SC18IS602) += spi-sc18is602.o
obj-$(CONFIG_SPI_SH) += spi-sh.o
diff --git a/drivers/spi/spi-s3c24xx-regs.h b/drivers/spi/spi-s3c24xx-regs.h
deleted file mode 100644
index f51464ab5677..000000000000
diff --git a/drivers/spi/spi-s3c24xx.c b/drivers/spi/spi-s3c24xx.c
deleted file mode 100644
index ef25b5e93900..000000000000
diff --git a/include/linux/spi/s3c24xx-fiq.h b/include/linux/spi/s3c24xx-fiq.h
deleted file mode 100644
index d2842ac1de27..000000000000
diff --git a/include/linux/spi/s3c24xx.h b/include/linux/spi/s3c24xx.h
deleted file mode 100644
index 9b8bb22d5b0c..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c adc driver was removed along with the s3c24xx platform, so the
hwmon driver is orphaned and can be removed.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/hwmon/Kconfig | 17 --
drivers/hwmon/Makefile | 1 -
drivers/hwmon/s3c-hwmon.c | 379 --------------------------------------
3 files changed, 397 deletions(-)
delete mode 100644 drivers/hwmon/s3c-hwmon.c
diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig
index 7ac3daaf59ce..c98a068b5be2 100644
--- a/drivers/hwmon/Kconfig
+++ b/drivers/hwmon/Kconfig
@@ -1729,23 +1729,6 @@ config SENSORS_SHTC1
This driver can also be built as a module. If so, the module
will be called shtc1.
-config SENSORS_S3C
- tristate "Samsung built-in ADC"
- depends on S3C_ADC
- help
- If you say yes here you get support for the on-board ADCs of
- the Samsung S3C24XX, S3C64XX and other series of SoC
-
- This driver can also be built as a module. If so, the module
- will be called s3c-hwmon.
-
-config SENSORS_S3C_RAW
- bool "Include raw channel attributes in sysfs"
- depends on SENSORS_S3C
- help
- Say Y here if you want to include raw copies of all the ADC
- channels in sysfs.
-
config SENSORS_SIS5595
tristate "Silicon Integrated Systems Corp. SiS5595"
depends on PCI
diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile
index 11d076cad8a2..b5a401ce3285 100644
--- a/drivers/hwmon/Makefile
+++ b/drivers/hwmon/Makefile
@@ -173,7 +173,6 @@ obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o
obj-$(CONFIG_SENSORS_POWR1220) += powr1220.o
obj-$(CONFIG_SENSORS_PWM_FAN) += pwm-fan.o
obj-$(CONFIG_SENSORS_RASPBERRYPI_HWMON) += raspberrypi-hwmon.o
-obj-$(CONFIG_SENSORS_S3C) += s3c-hwmon.o
obj-$(CONFIG_SENSORS_SBTSI) += sbtsi_temp.o
obj-$(CONFIG_SENSORS_SBRMI) += sbrmi.o
obj-$(CONFIG_SENSORS_SCH56XX_COMMON)+= sch56xx-common.o
diff --git a/drivers/hwmon/s3c-hwmon.c b/drivers/hwmon/s3c-hwmon.c
deleted file mode 100644
index 70ae665db477..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
This device was only used by the smdk6410 board file that is now
gone, so the driver can be removed as well.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/ata/Kconfig | 10 -
drivers/ata/Makefile | 1 -
drivers/ata/pata_samsung_cf.c | 662 -------------------
include/linux/platform_data/ata-samsung_cf.h | 31 -
4 files changed, 704 deletions(-)
delete mode 100644 drivers/ata/pata_samsung_cf.c
delete mode 100644 include/linux/platform_data/ata-samsung_cf.h
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 6b446cfc3455..3b8cb7a29efd 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -1136,16 +1136,6 @@ config PATA_RZ1000
If unsure, say N.
-config PATA_SAMSUNG_CF
- tristate "Samsung SoC PATA support"
- depends on SAMSUNG_DEV_IDE || COMPILE_TEST
- select PATA_TIMINGS
- help
- This option enables basic support for Samsung's S3C/S5P board
- PATA controllers via the new ATA layer
-
- If unsure, say N.
-
config PATA_WINBOND_VLB
tristate "Winbond W83759A VLB PATA support (Experimental)"
depends on ISA
diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
index 2cca9f500649..4ee5c0761d90 100644
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
@@ -109,7 +109,6 @@ obj-$(CONFIG_PATA_PLATFORM) += pata_platform.o
obj-$(CONFIG_PATA_OF_PLATFORM) += pata_of_platform.o
obj-$(CONFIG_PATA_RB532) += pata_rb532_cf.o
obj-$(CONFIG_PATA_RZ1000) += pata_rz1000.o
-obj-$(CONFIG_PATA_SAMSUNG_CF) += pata_samsung_cf.o
obj-$(CONFIG_PATA_PXA) += pata_pxa.o
diff --git a/drivers/ata/pata_samsung_cf.c b/drivers/ata/pata_samsung_cf.c
deleted file mode 100644
index aba1536ddd44..000000000000
diff --git a/include/linux/platform_data/ata-samsung_cf.h b/include/linux/platform_data/ata-samsung_cf.h
deleted file mode 100644
index fccf969dc4da..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
CONFIG_SAMSUNG_PM_DEBUG was only used on s3c24xx because of the
DEBUG_S3C24XX_UART dependency. Since s3c24xx is now gone, and nobody
ever noticed this option being missing from s3c64xx, it can be safely
removed as well.
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/soc/samsung/Kconfig | 22 +--------
drivers/soc/samsung/Makefile | 1 -
drivers/soc/samsung/s3c-pm-debug.c | 79 ------------------------------
3 files changed, 1 insertion(+), 101 deletions(-)
delete mode 100644 drivers/soc/samsung/s3c-pm-debug.c
diff --git a/drivers/soc/samsung/Kconfig b/drivers/soc/samsung/Kconfig
index b4f538d7412f..7a8f291e7704 100644
--- a/drivers/soc/samsung/Kconfig
+++ b/drivers/soc/samsung/Kconfig
@@ -52,29 +52,9 @@ config EXYNOS_PM_DOMAINS
bool "Exynos PM domains" if COMPILE_TEST
depends on (ARCH_EXYNOS && PM_GENERIC_DOMAINS) || COMPILE_TEST
-config SAMSUNG_PM_DEBUG
- bool "Samsung PM Suspend debug"
- depends on PM && DEBUG_KERNEL
- depends on PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210
- depends on DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART
- depends on DEBUG_LL && MMU
- help
- Say Y here if you want verbose debugging from the PM Suspend and
- Resume code. See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
- for more information.
-
-config S3C_PM_DEBUG_LED_SMDK
- bool "SMDK LED suspend/resume debugging"
- depends on PM && (MACH_SMDK6410)
- help
- Say Y here to enable the use of the SMDK LEDs on the baseboard
- for debugging of the state of the suspend and resume process.
-
- Note, this currently only works for S3C64XX based SMDK boards.
-
config SAMSUNG_PM_CHECK
bool "S3C2410 PM Suspend Memory CRC"
- depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210)
+ depends on PM && (ARCH_S3C64XX || ARCH_S5PV210)
select CRC32
help
Enable the PM code's memory area checksum over sleep. This option
diff --git a/drivers/soc/samsung/Makefile b/drivers/soc/samsung/Makefile
index 9f59d1905ab0..d35270fc6b2b 100644
--- a/drivers/soc/samsung/Makefile
+++ b/drivers/soc/samsung/Makefile
@@ -14,4 +14,3 @@ obj-$(CONFIG_EXYNOS_PM_DOMAINS) += pm_domains.o
obj-$(CONFIG_EXYNOS_REGULATOR_COUPLER) += exynos-regulator-coupler.o
obj-$(CONFIG_SAMSUNG_PM_CHECK) += s3c-pm-check.o
-obj-$(CONFIG_SAMSUNG_PM_DEBUG) += s3c-pm-debug.o
diff --git a/drivers/soc/samsung/s3c-pm-debug.c b/drivers/soc/samsung/s3c-pm-debug.c
deleted file mode 100644
index b5ce0e9a41e5..000000000000
--
2.29.2
From: Arnd Bergmann <[email protected]>
The s3c24xx SoC platform was completely removed, as were most of the
s3c64xx based board files, leaving only the DT based machines as well
as the MACH_WLF_CRAGG_6410 machine. All other board specific ASoC
driver can can now be recycled.
Signed-off-by: Arnd Bergmann <[email protected]>
---
.../linux/platform_data/asoc-s3c24xx_simtec.h | 30 -
include/sound/s3c24xx_uda134x.h | 14 -
sound/soc/samsung/Kconfig | 93 ---
sound/soc/samsung/Makefile | 26 -
sound/soc/samsung/h1940_uda1380.c | 224 ------
sound/soc/samsung/jive_wm8750.c | 143 ----
sound/soc/samsung/neo1973_wm8753.c | 360 ----------
sound/soc/samsung/regs-i2s-v2.h | 111 ---
sound/soc/samsung/regs-iis.h | 66 --
sound/soc/samsung/rx1950_uda1380.c | 245 -------
sound/soc/samsung/s3c-i2s-v2.c | 670 ------------------
sound/soc/samsung/s3c-i2s-v2.h | 108 ---
sound/soc/samsung/s3c2412-i2s.c | 251 -------
sound/soc/samsung/s3c2412-i2s.h | 22 -
sound/soc/samsung/s3c24xx-i2s.c | 463 ------------
sound/soc/samsung/s3c24xx-i2s.h | 31 -
sound/soc/samsung/s3c24xx_simtec.c | 372 ----------
sound/soc/samsung/s3c24xx_simtec.h | 18 -
sound/soc/samsung/s3c24xx_simtec_hermes.c | 112 ---
.../soc/samsung/s3c24xx_simtec_tlv320aic23.c | 100 ---
sound/soc/samsung/s3c24xx_uda134x.c | 257 -------
sound/soc/samsung/smartq_wm8987.c | 224 ------
sound/soc/samsung/smdk_wm8580.c | 211 ------
23 files changed, 4151 deletions(-)
delete mode 100644 include/linux/platform_data/asoc-s3c24xx_simtec.h
delete mode 100644 include/sound/s3c24xx_uda134x.h
delete mode 100644 sound/soc/samsung/h1940_uda1380.c
delete mode 100644 sound/soc/samsung/jive_wm8750.c
delete mode 100644 sound/soc/samsung/neo1973_wm8753.c
delete mode 100644 sound/soc/samsung/regs-i2s-v2.h
delete mode 100644 sound/soc/samsung/regs-iis.h
delete mode 100644 sound/soc/samsung/rx1950_uda1380.c
delete mode 100644 sound/soc/samsung/s3c-i2s-v2.c
delete mode 100644 sound/soc/samsung/s3c-i2s-v2.h
delete mode 100644 sound/soc/samsung/s3c2412-i2s.c
delete mode 100644 sound/soc/samsung/s3c2412-i2s.h
delete mode 100644 sound/soc/samsung/s3c24xx-i2s.c
delete mode 100644 sound/soc/samsung/s3c24xx-i2s.h
delete mode 100644 sound/soc/samsung/s3c24xx_simtec.c
delete mode 100644 sound/soc/samsung/s3c24xx_simtec.h
delete mode 100644 sound/soc/samsung/s3c24xx_simtec_hermes.c
delete mode 100644 sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
delete mode 100644 sound/soc/samsung/s3c24xx_uda134x.c
delete mode 100644 sound/soc/samsung/smartq_wm8987.c
delete mode 100644 sound/soc/samsung/smdk_wm8580.c
diff --git a/include/linux/platform_data/asoc-s3c24xx_simtec.h b/include/linux/platform_data/asoc-s3c24xx_simtec.h
deleted file mode 100644
index 1a7efc98d108..000000000000
diff --git a/include/sound/s3c24xx_uda134x.h b/include/sound/s3c24xx_uda134x.h
deleted file mode 100644
index 0232b80ff486..000000000000
diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig
index 2a61e620cd3b..93c2b1b08d0a 100644
--- a/sound/soc/samsung/Kconfig
+++ b/sound/soc/samsung/Kconfig
@@ -11,16 +11,6 @@ menuconfig SND_SOC_SAMSUNG
if SND_SOC_SAMSUNG
-config SND_S3C24XX_I2S
- tristate
-
-config SND_S3C_I2SV2_SOC
- tristate
-
-config SND_S3C2412_SOC_I2S
- tristate
- select SND_S3C_I2SV2_SOC
-
config SND_SAMSUNG_PCM
tristate "Samsung PCM interface support"
@@ -31,35 +21,6 @@ config SND_SAMSUNG_SPDIF
config SND_SAMSUNG_I2S
tristate "Samsung I2S interface support"
-config SND_SOC_SAMSUNG_NEO1973_WM8753
- tristate "Audio support for Openmoko Neo1973 Smartphones (GTA02)"
- depends on MACH_NEO1973_GTA02 || COMPILE_TEST
- depends on SND_SOC_I2C_AND_SPI
- select SND_S3C24XX_I2S
- select SND_SOC_WM8753
- select SND_SOC_BT_SCO
- help
- Say Y here to enable audio support for the Openmoko Neo1973
- Smartphones.
-
-config SND_SOC_SAMSUNG_JIVE_WM8750
- tristate "SoC I2S Audio support for Jive"
- depends on MACH_JIVE && I2C || COMPILE_TEST && ARM
- depends on SND_SOC_I2C_AND_SPI
- select SND_SOC_WM8750
- select SND_S3C2412_SOC_I2S
- help
- Say Y if you want to add support for SoC audio on the Jive.
-
-config SND_SOC_SAMSUNG_SMDK_WM8580
- tristate "SoC I2S Audio support for WM8580 on SMDK"
- depends on MACH_SMDK6410 || COMPILE_TEST
- depends on I2C
- select SND_SOC_WM8580
- select SND_SAMSUNG_I2S
- help
- Say Y if you want to add support for SoC audio on the SMDKs.
-
config SND_SOC_SAMSUNG_SMDK_WM8994
tristate "SoC I2S Audio support for WM8994 on SMDK"
depends on I2C=y
@@ -69,60 +30,6 @@ config SND_SOC_SAMSUNG_SMDK_WM8994
help
Say Y if you want to add support for SoC audio on the SMDKs.
-config SND_SOC_SAMSUNG_S3C24XX_UDA134X
- tristate "SoC I2S Audio support UDA134X wired to a S3C24XX"
- depends on ARCH_S3C24XX || COMPILE_TEST
- select SND_S3C24XX_I2S
- select SND_SOC_L3
- select SND_SOC_UDA134X
-
-config SND_SOC_SAMSUNG_SIMTEC
- tristate
- help
- Internal node for common S3C24XX/Simtec support.
-
-config SND_SOC_SAMSUNG_SIMTEC_TLV320AIC23
- tristate "SoC I2S Audio support for TLV320AIC23 on Simtec boards"
- depends on ARCH_S3C24XX || COMPILE_TEST
- depends on I2C
- select SND_S3C24XX_I2S
- select SND_SOC_TLV320AIC23_I2C
- select SND_SOC_SAMSUNG_SIMTEC
-
-config SND_SOC_SAMSUNG_SIMTEC_HERMES
- tristate "SoC I2S Audio support for Simtec Hermes board"
- depends on ARCH_S3C24XX || COMPILE_TEST
- depends on I2C
- select SND_S3C24XX_I2S
- select SND_SOC_TLV320AIC3X
- select SND_SOC_SAMSUNG_SIMTEC
-
-config SND_SOC_SAMSUNG_H1940_UDA1380
- tristate "Audio support for the HP iPAQ H1940"
- depends on ARCH_H1940 || COMPILE_TEST
- depends on I2C
- select SND_S3C24XX_I2S
- select SND_SOC_UDA1380
- help
- This driver provides audio support for HP iPAQ h1940 PDA.
-
-config SND_SOC_SAMSUNG_RX1950_UDA1380
- tristate "Audio support for the HP iPAQ RX1950"
- depends on MACH_RX1950 || COMPILE_TEST
- depends on I2C
- select SND_S3C24XX_I2S
- select SND_SOC_UDA1380
- help
- This driver provides audio support for HP iPAQ RX1950 PDA.
-
-config SND_SOC_SMARTQ
- tristate "SoC I2S Audio support for SmartQ board"
- depends on MACH_SMARTQ || COMPILE_TEST
- depends on GPIOLIB || COMPILE_TEST
- depends on I2C
- select SND_SAMSUNG_I2S
- select SND_SOC_WM8750
-
config SND_SOC_SAMSUNG_SMDK_SPDIF
tristate "SoC S/PDIF Audio support for SMDK"
select SND_SAMSUNG_SPDIF
diff --git a/sound/soc/samsung/Makefile b/sound/soc/samsung/Makefile
index 398e843f388c..f5d327b90a4e 100644
--- a/sound/soc/samsung/Makefile
+++ b/sound/soc/samsung/Makefile
@@ -2,35 +2,19 @@
# S3c24XX Platform Support
snd-soc-s3c-dma-objs := dmaengine.o
snd-soc-idma-objs := idma.o
-snd-soc-s3c24xx-i2s-objs := s3c24xx-i2s.o
-snd-soc-s3c2412-i2s-objs := s3c2412-i2s.o
-snd-soc-s3c-i2s-v2-objs := s3c-i2s-v2.o
snd-soc-samsung-spdif-objs := spdif.o
snd-soc-pcm-objs := pcm.o
snd-soc-i2s-objs := i2s.o
obj-$(CONFIG_SND_SOC_SAMSUNG) += snd-soc-s3c-dma.o
-obj-$(CONFIG_SND_S3C24XX_I2S) += snd-soc-s3c24xx-i2s.o
-obj-$(CONFIG_SND_S3C2412_SOC_I2S) += snd-soc-s3c2412-i2s.o
-obj-$(CONFIG_SND_S3C_I2SV2_SOC) += snd-soc-s3c-i2s-v2.o
obj-$(CONFIG_SND_SAMSUNG_SPDIF) += snd-soc-samsung-spdif.o
obj-$(CONFIG_SND_SAMSUNG_PCM) += snd-soc-pcm.o
obj-$(CONFIG_SND_SAMSUNG_I2S) += snd-soc-i2s.o
obj-$(CONFIG_SND_SAMSUNG_I2S) += snd-soc-idma.o
# S3C24XX Machine Support
-snd-soc-jive-wm8750-objs := jive_wm8750.o
-snd-soc-neo1973-wm8753-objs := neo1973_wm8753.o
-snd-soc-s3c24xx-uda134x-objs := s3c24xx_uda134x.o
-snd-soc-s3c24xx-simtec-objs := s3c24xx_simtec.o
-snd-soc-s3c24xx-simtec-hermes-objs := s3c24xx_simtec_hermes.o
-snd-soc-s3c24xx-simtec-tlv320aic23-objs := s3c24xx_simtec_tlv320aic23.o
-snd-soc-h1940-uda1380-objs := h1940_uda1380.o
-snd-soc-rx1950-uda1380-objs := rx1950_uda1380.o
-snd-soc-smdk-wm8580-objs := smdk_wm8580.o
snd-soc-smdk-wm8994-objs := smdk_wm8994.o
snd-soc-snow-objs := snow.o
-snd-soc-s3c64xx-smartq-wm8987-objs := smartq_wm8987.o
snd-soc-smdk-spdif-objs := smdk_spdif.o
snd-soc-smdk-wm8994pcm-objs := smdk_wm8994pcm.o
snd-soc-speyside-objs := speyside.o
@@ -44,18 +28,8 @@ snd-soc-tm2-wm5110-objs := tm2_wm5110.o
snd-soc-aries-wm8994-objs := aries_wm8994.o
snd-soc-midas-wm1811-objs := midas_wm1811.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_JIVE_WM8750) += snd-soc-jive-wm8750.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_NEO1973_WM8753) += snd-soc-neo1973-wm8753.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_S3C24XX_UDA134X) += snd-soc-s3c24xx-uda134x.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_SIMTEC) += snd-soc-s3c24xx-simtec.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_SIMTEC_HERMES) += snd-soc-s3c24xx-simtec-hermes.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_SIMTEC_TLV320AIC23) += snd-soc-s3c24xx-simtec-tlv320aic23.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_H1940_UDA1380) += snd-soc-h1940-uda1380.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_RX1950_UDA1380) += snd-soc-rx1950-uda1380.o
-obj-$(CONFIG_SND_SOC_SAMSUNG_SMDK_WM8580) += snd-soc-smdk-wm8580.o
obj-$(CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994) += snd-soc-smdk-wm8994.o
obj-$(CONFIG_SND_SOC_SNOW) += snd-soc-snow.o
-obj-$(CONFIG_SND_SOC_SMARTQ) += snd-soc-s3c64xx-smartq-wm8987.o
obj-$(CONFIG_SND_SOC_SAMSUNG_SMDK_SPDIF) += snd-soc-smdk-spdif.o
obj-$(CONFIG_SND_SOC_SMDK_WM8994_PCM) += snd-soc-smdk-wm8994pcm.o
obj-$(CONFIG_SND_SOC_SPEYSIDE) += snd-soc-speyside.o
diff --git a/sound/soc/samsung/h1940_uda1380.c b/sound/soc/samsung/h1940_uda1380.c
deleted file mode 100644
index fa45a54ab18f..000000000000
diff --git a/sound/soc/samsung/jive_wm8750.c b/sound/soc/samsung/jive_wm8750.c
deleted file mode 100644
index 40a85f539509..000000000000
diff --git a/sound/soc/samsung/neo1973_wm8753.c b/sound/soc/samsung/neo1973_wm8753.c
deleted file mode 100644
index e9f2334028bf..000000000000
diff --git a/sound/soc/samsung/regs-i2s-v2.h b/sound/soc/samsung/regs-i2s-v2.h
deleted file mode 100644
index 867984e75709..000000000000
diff --git a/sound/soc/samsung/regs-iis.h b/sound/soc/samsung/regs-iis.h
deleted file mode 100644
index 253e172ad3b6..000000000000
diff --git a/sound/soc/samsung/rx1950_uda1380.c b/sound/soc/samsung/rx1950_uda1380.c
deleted file mode 100644
index abf28321f7d7..000000000000
diff --git a/sound/soc/samsung/s3c-i2s-v2.c b/sound/soc/samsung/s3c-i2s-v2.c
deleted file mode 100644
index 2b221cb0ed03..000000000000
diff --git a/sound/soc/samsung/s3c-i2s-v2.h b/sound/soc/samsung/s3c-i2s-v2.h
deleted file mode 100644
index 8c6fc0d3d77e..000000000000
diff --git a/sound/soc/samsung/s3c2412-i2s.c b/sound/soc/samsung/s3c2412-i2s.c
deleted file mode 100644
index 0579a352961c..000000000000
diff --git a/sound/soc/samsung/s3c2412-i2s.h b/sound/soc/samsung/s3c2412-i2s.h
deleted file mode 100644
index bff2a797cb08..000000000000
diff --git a/sound/soc/samsung/s3c24xx-i2s.c b/sound/soc/samsung/s3c24xx-i2s.c
deleted file mode 100644
index 7b7bbe007acd..000000000000
diff --git a/sound/soc/samsung/s3c24xx-i2s.h b/sound/soc/samsung/s3c24xx-i2s.h
deleted file mode 100644
index e073e31855d0..000000000000
diff --git a/sound/soc/samsung/s3c24xx_simtec.c b/sound/soc/samsung/s3c24xx_simtec.c
deleted file mode 100644
index 0cc66774b85d..000000000000
diff --git a/sound/soc/samsung/s3c24xx_simtec.h b/sound/soc/samsung/s3c24xx_simtec.h
deleted file mode 100644
index 38d8384755cd..000000000000
diff --git a/sound/soc/samsung/s3c24xx_simtec_hermes.c b/sound/soc/samsung/s3c24xx_simtec_hermes.c
deleted file mode 100644
index ed0d1b8fa2d4..000000000000
diff --git a/sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c b/sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
deleted file mode 100644
index c03d52990267..000000000000
diff --git a/sound/soc/samsung/s3c24xx_uda134x.c b/sound/soc/samsung/s3c24xx_uda134x.c
deleted file mode 100644
index 6272070dcd92..000000000000
diff --git a/sound/soc/samsung/smartq_wm8987.c b/sound/soc/samsung/smartq_wm8987.c
deleted file mode 100644
index 29bf917242fe..000000000000
diff --git a/sound/soc/samsung/smdk_wm8580.c b/sound/soc/samsung/smdk_wm8580.c
deleted file mode 100644
index 78703d095a6f..000000000000
--
2.29.2
On Fri, Oct 21, 2022 at 10:51 PM Arnd Bergmann <[email protected]> wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform was removed, so this driver has no
> remaining users.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Linus Walleij <[email protected]>
Yours,
Linus Walleij
From: Arnd Bergmann <[email protected]>
The s3c24xx platform is gone, so the clk driver can be removed as
well.
Signed-off-by: Arnd Bergmann <[email protected]>
---
MAINTAINERS | 1 -
drivers/clk/samsung/Kconfig | 32 --
drivers/clk/samsung/Makefile | 4 -
drivers/clk/samsung/clk-s3c2410-dclk.c | 440 ---------------------
drivers/clk/samsung/clk-s3c2410.c | 446 ----------------------
drivers/clk/samsung/clk-s3c2412.c | 254 ------------
drivers/clk/samsung/clk-s3c2443.c | 438 ---------------------
include/linux/platform_data/clk-s3c2410.h | 19 -
8 files changed, 1634 deletions(-)
delete mode 100644 drivers/clk/samsung/clk-s3c2410-dclk.c
delete mode 100644 drivers/clk/samsung/clk-s3c2410.c
delete mode 100644 drivers/clk/samsung/clk-s3c2412.c
delete mode 100644 drivers/clk/samsung/clk-s3c2443.c
delete mode 100644 include/linux/platform_data/clk-s3c2410.h
diff --git a/MAINTAINERS b/MAINTAINERS
index 503ebd9800db..caf196041e3a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -18078,7 +18078,6 @@ F: include/dt-bindings/clock/s3c*.h
F: include/dt-bindings/clock/s5p*.h
F: include/dt-bindings/clock/samsung,*.h
F: include/linux/clk/samsung.h
-F: include/linux/platform_data/clk-s3c2410.h
SAMSUNG SPI DRIVERS
M: Krzysztof Kozlowski <[email protected]>
diff --git a/drivers/clk/samsung/Kconfig b/drivers/clk/samsung/Kconfig
index 8e8245ab3fd1..c07bb50513bf 100644
--- a/drivers/clk/samsung/Kconfig
+++ b/drivers/clk/samsung/Kconfig
@@ -94,38 +94,6 @@ config EXYNOS_CLKOUT
status of the certains clocks from SoC, but it could also be tied to
other devices as an input clock.
-# For S3C24XX platforms, select following symbols:
-config S3C2410_COMMON_CLK
- bool "Samsung S3C2410 clock controller support" if COMPILE_TEST
- select COMMON_CLK_SAMSUNG
- help
- Support for the clock controller present on the Samsung
- S3C2410/S3C2440/S3C2442 SoCs. Choose Y here only if you build for
- this SoC.
-
-config S3C2410_COMMON_DCLK
- bool
- select COMMON_CLK_SAMSUNG
- select REGMAP_MMIO
- help
- Support for the dclk clock controller present on the Samsung
- S3C2410/S3C2412/S3C2440/S3C2443 SoCs. Choose Y here only if you build
- for this SoC.
-
-config S3C2412_COMMON_CLK
- bool "Samsung S3C2412 clock controller support" if COMPILE_TEST
- select COMMON_CLK_SAMSUNG
- help
- Support for the clock controller present on the Samsung S3C2412 SoCs.
- Choose Y here only if you build for this SoC.
-
-config S3C2443_COMMON_CLK
- bool "Samsung S3C2443 clock controller support" if COMPILE_TEST
- select COMMON_CLK_SAMSUNG
- help
- Support for the clock controller present on the Samsung
- S3C2416/S3C2443 SoCs. Choose Y here only if you build for this SoC.
-
config TESLA_FSD_COMMON_CLK
bool "Tesla FSD clock controller support" if COMPILE_TEST
depends on COMMON_CLK_SAMSUNG
diff --git a/drivers/clk/samsung/Makefile b/drivers/clk/samsung/Makefile
index 239d9eead77f..ebbeacabe88f 100644
--- a/drivers/clk/samsung/Makefile
+++ b/drivers/clk/samsung/Makefile
@@ -21,10 +21,6 @@ obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos7.o
obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos7885.o
obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos850.o
obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynosautov9.o
-obj-$(CONFIG_S3C2410_COMMON_CLK)+= clk-s3c2410.o
-obj-$(CONFIG_S3C2410_COMMON_DCLK)+= clk-s3c2410-dclk.o
-obj-$(CONFIG_S3C2412_COMMON_CLK)+= clk-s3c2412.o
-obj-$(CONFIG_S3C2443_COMMON_CLK)+= clk-s3c2443.o
obj-$(CONFIG_S3C64XX_COMMON_CLK) += clk-s3c64xx.o
obj-$(CONFIG_S5PV210_COMMON_CLK) += clk-s5pv210.o clk-s5pv210-audss.o
obj-$(CONFIG_TESLA_FSD_COMMON_CLK) += clk-fsd.o
diff --git a/drivers/clk/samsung/clk-s3c2410-dclk.c b/drivers/clk/samsung/clk-s3c2410-dclk.c
deleted file mode 100644
index f5e0a6ba2d12..000000000000
diff --git a/drivers/clk/samsung/clk-s3c2410.c b/drivers/clk/samsung/clk-s3c2410.c
deleted file mode 100644
index 3d152a46169b..000000000000
diff --git a/drivers/clk/samsung/clk-s3c2412.c b/drivers/clk/samsung/clk-s3c2412.c
deleted file mode 100644
index 724ef642f048..000000000000
diff --git a/drivers/clk/samsung/clk-s3c2443.c b/drivers/clk/samsung/clk-s3c2443.c
deleted file mode 100644
index a827d63766d1..000000000000
diff --git a/include/linux/platform_data/clk-s3c2410.h b/include/linux/platform_data/clk-s3c2410.h
deleted file mode 100644
index 7eb1cfa5409b..000000000000
--
2.29.2
On Fri, Oct 21, 2022 at 10:27:35PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Wolfram Sang <[email protected]> # for I2C
On 10/21/22 13:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c adc driver was removed along with the s3c24xx platform, so the
> hwmon driver is orphaned and can be removed.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Guenter Roeck <[email protected]>
I assume you plan to push the series together. If not, please let me know.
Guenter
> ---
> drivers/hwmon/Kconfig | 17 --
> drivers/hwmon/Makefile | 1 -
> drivers/hwmon/s3c-hwmon.c | 379 --------------------------------------
> 3 files changed, 397 deletions(-)
> delete mode 100644 drivers/hwmon/s3c-hwmon.c
>
> diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig
> index 7ac3daaf59ce..c98a068b5be2 100644
> --- a/drivers/hwmon/Kconfig
> +++ b/drivers/hwmon/Kconfig
> @@ -1729,23 +1729,6 @@ config SENSORS_SHTC1
> This driver can also be built as a module. If so, the module
> will be called shtc1.
>
> -config SENSORS_S3C
> - tristate "Samsung built-in ADC"
> - depends on S3C_ADC
> - help
> - If you say yes here you get support for the on-board ADCs of
> - the Samsung S3C24XX, S3C64XX and other series of SoC
> -
> - This driver can also be built as a module. If so, the module
> - will be called s3c-hwmon.
> -
> -config SENSORS_S3C_RAW
> - bool "Include raw channel attributes in sysfs"
> - depends on SENSORS_S3C
> - help
> - Say Y here if you want to include raw copies of all the ADC
> - channels in sysfs.
> -
> config SENSORS_SIS5595
> tristate "Silicon Integrated Systems Corp. SiS5595"
> depends on PCI
> diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile
> index 11d076cad8a2..b5a401ce3285 100644
> --- a/drivers/hwmon/Makefile
> +++ b/drivers/hwmon/Makefile
> @@ -173,7 +173,6 @@ obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o
> obj-$(CONFIG_SENSORS_POWR1220) += powr1220.o
> obj-$(CONFIG_SENSORS_PWM_FAN) += pwm-fan.o
> obj-$(CONFIG_SENSORS_RASPBERRYPI_HWMON) += raspberrypi-hwmon.o
> -obj-$(CONFIG_SENSORS_S3C) += s3c-hwmon.o
> obj-$(CONFIG_SENSORS_SBTSI) += sbtsi_temp.o
> obj-$(CONFIG_SENSORS_SBRMI) += sbrmi.o
> obj-$(CONFIG_SENSORS_SCH56XX_COMMON)+= sch56xx-common.o
> diff --git a/drivers/hwmon/s3c-hwmon.c b/drivers/hwmon/s3c-hwmon.c
> deleted file mode 100644
> index 70ae665db477..000000000000
On Sat, Oct 22, 2022, at 06:02, Guenter Roeck wrote:
> On 10/21/22 13:27, Arnd Bergmann wrote:
>> From: Arnd Bergmann <[email protected]>
>>
>> The s3c adc driver was removed along with the s3c24xx platform, so the
>> hwmon driver is orphaned and can be removed.
>>
>> Signed-off-by: Arnd Bergmann <[email protected]>
>
> Acked-by: Guenter Roeck <[email protected]>
>
> I assume you plan to push the series together. If not, please let me know.
Yes. I plan to pick up all the patches from the series through the
soc tree that have not been NaK'd or applied to subsystem maintainer
trees.
Arnd
Hi!
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform is gone, so the led driver can be
> removed as well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
git am failed, but I guess this is not critical...
Best regards,
Pavel
--
People of Russia, stop Putin before his war on Ukraine escalates.
Hi Arnd,
On 22. 10. 22. 05:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform is gone, so the clk driver can be removed as
> well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> MAINTAINERS | 1 -
> drivers/clk/samsung/Kconfig | 32 --
> drivers/clk/samsung/Makefile | 4 -
> drivers/clk/samsung/clk-s3c2410-dclk.c | 440 ---------------------
> drivers/clk/samsung/clk-s3c2410.c | 446 ----------------------
> drivers/clk/samsung/clk-s3c2412.c | 254 ------------
> drivers/clk/samsung/clk-s3c2443.c | 438 ---------------------
> include/linux/platform_data/clk-s3c2410.h | 19 -
> 8 files changed, 1634 deletions(-)
> delete mode 100644 drivers/clk/samsung/clk-s3c2410-dclk.c
> delete mode 100644 drivers/clk/samsung/clk-s3c2410.c
> delete mode 100644 drivers/clk/samsung/clk-s3c2412.c
> delete mode 100644 drivers/clk/samsung/clk-s3c2443.c
> delete mode 100644 include/linux/platform_data/clk-s3c2410.h
(snip)
I think that it should remove the pll code related to s3c24xx as following:
diff --git a/drivers/clk/samsung/clk-pll.c b/drivers/clk/samsung/clk-pll.c
index fe383471c5f0..0daea2aadce4 100644
--- a/drivers/clk/samsung/clk-pll.c
+++ b/drivers/clk/samsung/clk-pll.c
@@ -1061,48 +1061,6 @@ static void samsung_s3c2410_upll_disable(struct clk_hw *hw)
samsung_s3c2410_pll_enable(hw, 7, false);
}
-static const struct clk_ops samsung_s3c2410_mpll_clk_min_ops = {
- .recalc_rate = samsung_s3c2410_pll_recalc_rate,
- .enable = samsung_s3c2410_mpll_enable,
- .disable = samsung_s3c2410_mpll_disable,
-};
-
-static const struct clk_ops samsung_s3c2410_upll_clk_min_ops = {
- .recalc_rate = samsung_s3c2410_pll_recalc_rate,
- .enable = samsung_s3c2410_upll_enable,
- .disable = samsung_s3c2410_upll_disable,
-};
-
-static const struct clk_ops samsung_s3c2440_mpll_clk_min_ops = {
- .recalc_rate = samsung_s3c2440_mpll_recalc_rate,
- .enable = samsung_s3c2410_mpll_enable,
- .disable = samsung_s3c2410_mpll_disable,
-};
-
-static const struct clk_ops samsung_s3c2410_mpll_clk_ops = {
- .recalc_rate = samsung_s3c2410_pll_recalc_rate,
- .enable = samsung_s3c2410_mpll_enable,
- .disable = samsung_s3c2410_mpll_disable,
- .round_rate = samsung_pll_round_rate,
- .set_rate = samsung_s3c2410_pll_set_rate,
-};
-
-static const struct clk_ops samsung_s3c2410_upll_clk_ops = {
- .recalc_rate = samsung_s3c2410_pll_recalc_rate,
- .enable = samsung_s3c2410_upll_enable,
- .disable = samsung_s3c2410_upll_disable,
- .round_rate = samsung_pll_round_rate,
- .set_rate = samsung_s3c2410_pll_set_rate,
-};
-
-static const struct clk_ops samsung_s3c2440_mpll_clk_ops = {
- .recalc_rate = samsung_s3c2440_mpll_recalc_rate,
- .enable = samsung_s3c2410_mpll_enable,
- .disable = samsung_s3c2410_mpll_disable,
- .round_rate = samsung_pll_round_rate,
- .set_rate = samsung_s3c2410_pll_set_rate,
-};
-
/*
* PLL2550x Clock Type
*/
@@ -1530,24 +1488,6 @@ static void __init _samsung_clk_register_pll(struct samsung_clk_provider *ctx,
else
init.ops = &samsung_pll46xx_clk_ops;
break;
- case pll_s3c2410_mpll:
- if (!pll->rate_table)
- init.ops = &samsung_s3c2410_mpll_clk_min_ops;
- else
- init.ops = &samsung_s3c2410_mpll_clk_ops;
- break;
- case pll_s3c2410_upll:
- if (!pll->rate_table)
- init.ops = &samsung_s3c2410_upll_clk_min_ops;
- else
- init.ops = &samsung_s3c2410_upll_clk_ops;
- break;
- case pll_s3c2440_mpll:
- if (!pll->rate_table)
- init.ops = &samsung_s3c2440_mpll_clk_min_ops;
- else
- init.ops = &samsung_s3c2440_mpll_clk_ops;
- break;
case pll_2550x:
init.ops = &samsung_pll2550x_clk_ops;
break;
diff --git a/drivers/clk/samsung/clk-pll.h b/drivers/clk/samsung/clk-pll.h
index a9892c2d1f57..5d5a58d40e7e 100644
--- a/drivers/clk/samsung/clk-pll.h
+++ b/drivers/clk/samsung/clk-pll.h
@@ -25,9 +25,6 @@ enum samsung_pll_type {
pll_6552,
pll_6552_s3c2416,
pll_6553,
- pll_s3c2410_mpll,
- pll_s3c2410_upll,
- pll_s3c2440_mpll,
pll_2550x,
pll_2550xx,
pll_2650x,
@@ -56,24 +53,6 @@ enum samsung_pll_type {
.sdiv = (_s), \
}
-#define PLL_S3C2410_MPLL_RATE(_fin, _rate, _m, _p, _s) \
- { \
- .rate = PLL_VALID_RATE(_fin, _rate, \
- _m + 8, _p + 2, _s, 0, 16), \
- .mdiv = (_m), \
- .pdiv = (_p), \
- .sdiv = (_s), \
- }
-
-#define PLL_S3C2440_MPLL_RATE(_fin, _rate, _m, _p, _s) \
- { \
- .rate = PLL_VALID_RATE(_fin, _rate, \
- 2 * (_m + 8), _p + 2, _s, 0, 16), \
- .mdiv = (_m), \
- .pdiv = (_p), \
- .sdiv = (_s), \
- }
-
#define PLL_36XX_RATE(_fin, _rate, _m, _p, _s, _k) \
{ \
.rate = PLL_VALID_RATE(_fin, _rate, \
--
Best Regards,
Samsung Electronics
Chanwoo Choi
On Fri, Oct 21, 2022 at 10:27:35PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Greg Kroah-Hartman <[email protected]>
On Fri, Oct 21, 2022 at 10:37 PM Arnd Bergmann <[email protected]> wrote:
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Linus Walleij <[email protected]>
Yours,
Linus Walleij
On 21/10/2022 16:22, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform was marked as deprecated a while ago,
> and for the s3c64xx platform, we marked all except one legacy
> board file as unused.
>
> This series removes all of those, leaving only s3c64xx support
> for DT based boots as well as the cragg6410 board file.
>
> About half of the s3c specific drivers were only used on
> the now removed machines, so these drivers can be retired
> as well. I can either merge the driver removal patches through
> the soc tree along with the board file patches, or subsystem
> maintainers can pick them up into their own trees, whichever
> they prefer.
Just to be sure - do you expect me to ack the series, or rather as usual
pick them up?
Best regards,
Krzysztof
On Sat, Oct 22, 2022, at 17:18, Krzysztof Kozlowski wrote:
> On 21/10/2022 16:22, Arnd Bergmann wrote:
>> From: Arnd Bergmann <[email protected]>
>>
>> The s3c24xx platform was marked as deprecated a while ago,
>> and for the s3c64xx platform, we marked all except one legacy
>> board file as unused.
>>
>> This series removes all of those, leaving only s3c64xx support
>> for DT based boots as well as the cragg6410 board file.
>>
>> About half of the s3c specific drivers were only used on
>> the now removed machines, so these drivers can be retired
>> as well. I can either merge the driver removal patches through
>> the soc tree along with the board file patches, or subsystem
>> maintainers can pick them up into their own trees, whichever
>> they prefer.
>
> Just to be sure - do you expect me to ack the series, or rather as usual
> pick them up?
I think in this case it is easier if I pick them up with your
Ack along with the other platforms I posted, as there are
some minor conflicts between Makefile/Kconfig changes where
I remove adjacent lines.
Arnd
On Fri, 21 Oct 2022 22:27:35 +0200
Arnd Bergmann <[email protected]> wrote:
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
For the IIO Kconfig change
Acked-by: Jonathan Cameron <[email protected]>
> ---
> arch/arm/include/debug/s3c24xx.S | 10 -
> arch/arm/mach-s3c/Makefile | 2 -
> arch/arm/mach-s3c/devs.c | 1 -
> arch/arm/mach-s3c/dma.h | 7 -
> arch/arm/mach-s3c/gpio-samsung.h | 7 -
> arch/arm/mach-s3c/irqs.h | 7 -
> arch/arm/mach-s3c/map.h | 7 -
> arch/arm/mach-s3c/pm-core.h | 7 -
> arch/arm/mach-s3c/regs-clock.h | 7 -
> arch/arm/mach-s3c/regs-gpio.h | 7 -
> arch/arm/mach-s3c/regs-irq.h | 7 -
> drivers/clocksource/Kconfig | 2 +-
> drivers/i2c/busses/Kconfig | 3 +-
> drivers/i2c/busses/i2c-s3c2410.c | 72 -------
> drivers/iio/adc/Kconfig | 6 +-
> .../media/platform/samsung/s3c-camif/Kconfig | 8 +-
> drivers/mmc/host/Kconfig | 5 +-
> drivers/mtd/nand/raw/Kconfig | 2 +-
> drivers/mtd/nand/raw/s3c2410.c | 60 ------
> drivers/pinctrl/samsung/pinctrl-samsung.c | 10 -
> drivers/rtc/Kconfig | 8 +-
> drivers/tty/serial/Kconfig | 8 +-
> drivers/tty/serial/samsung_tty.c | 199 ------------------
> drivers/usb/host/Kconfig | 8 +-
> drivers/watchdog/Kconfig | 9 +-
> drivers/watchdog/s3c2410_wdt.c | 84 +-------
> include/linux/clk/samsung.h | 32 ---
> include/linux/soc/samsung/s3c-pm.h | 58 -----
> 28 files changed, 29 insertions(+), 614 deletions(-)
>
> diff --git a/arch/arm/include/debug/s3c24xx.S b/arch/arm/include/debug/s3c24xx.S
> index af873b526677..7ab5e577cd42 100644
> --- a/arch/arm/include/debug/s3c24xx.S
> +++ b/arch/arm/include/debug/s3c24xx.S
> @@ -28,16 +28,6 @@
> and \rd, \rd, #S3C2410_UFSTAT_TXMASK
> .endm
>
> -/* Select the correct implementation depending on the configuration. The
> - * S3C2440 will get selected by default, as these are the most widely
> - * used variants of these
> -*/
> -
> -#if defined(CONFIG_DEBUG_S3C2410_UART)
> -#define fifo_full fifo_full_s3c2410
> -#define fifo_level fifo_level_s3c2410
> -#endif
> -
> /* include the reset of the code which will do the work */
>
> #include <debug/samsung.S>
> diff --git a/arch/arm/mach-s3c/Makefile b/arch/arm/mach-s3c/Makefile
> index e7f18039b149..a5135137e648 100644
> --- a/arch/arm/mach-s3c/Makefile
> +++ b/arch/arm/mach-s3c/Makefile
> @@ -2,9 +2,7 @@
> #
> # Copyright 2009 Simtec Electronics
>
> -ifdef CONFIG_ARCH_S3C64XX
> include $(src)/Makefile.s3c64xx
> -endif
>
> # Objects we always build independent of SoC choice
>
> diff --git a/arch/arm/mach-s3c/devs.c b/arch/arm/mach-s3c/devs.c
> index 9ac07c023adf..a31d1c3038e8 100644
> --- a/arch/arm/mach-s3c/devs.c
> +++ b/arch/arm/mach-s3c/devs.c
> @@ -29,7 +29,6 @@
> #include <linux/sizes.h>
> #include <linux/platform_data/s3c-hsudc.h>
> #include <linux/platform_data/s3c-hsotg.h>
> -#include <linux/platform_data/dma-s3c24xx.h>
>
> #include <linux/platform_data/media/s5p_hdmi.h>
>
> diff --git a/arch/arm/mach-s3c/dma.h b/arch/arm/mach-s3c/dma.h
> index 59a4578c5f00..48057cb90070 100644
> --- a/arch/arm/mach-s3c/dma.h
> +++ b/arch/arm/mach-s3c/dma.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "dma-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "dma-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/gpio-samsung.h b/arch/arm/mach-s3c/gpio-samsung.h
> index 02f6f4a96862..4233515eddaa 100644
> --- a/arch/arm/mach-s3c/gpio-samsung.h
> +++ b/arch/arm/mach-s3c/gpio-samsung.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "gpio-samsung-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "gpio-samsung-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/irqs.h b/arch/arm/mach-s3c/irqs.h
> index 0bff1c1c8eb0..3ff0e0963080 100644
> --- a/arch/arm/mach-s3c/irqs.h
> +++ b/arch/arm/mach-s3c/irqs.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "irqs-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "irqs-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/map.h b/arch/arm/mach-s3c/map.h
> index 7cfb517d4886..778d6f81cb2b 100644
> --- a/arch/arm/mach-s3c/map.h
> +++ b/arch/arm/mach-s3c/map.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "map-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "map-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/pm-core.h b/arch/arm/mach-s3c/pm-core.h
> index b0e1d277f599..3e0c2df79120 100644
> --- a/arch/arm/mach-s3c/pm-core.h
> +++ b/arch/arm/mach-s3c/pm-core.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "pm-core-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "pm-core-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/regs-clock.h b/arch/arm/mach-s3c/regs-clock.h
> index 7df31f203d28..fc7e3886b07c 100644
> --- a/arch/arm/mach-s3c/regs-clock.h
> +++ b/arch/arm/mach-s3c/regs-clock.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "regs-clock-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "regs-clock-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/regs-gpio.h b/arch/arm/mach-s3c/regs-gpio.h
> index 0d41cb76d440..4e08e8609663 100644
> --- a/arch/arm/mach-s3c/regs-gpio.h
> +++ b/arch/arm/mach-s3c/regs-gpio.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "regs-gpio-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "regs-gpio-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/regs-irq.h b/arch/arm/mach-s3c/regs-irq.h
> index 57f0dda8dbf5..4243daa54bd1 100644
> --- a/arch/arm/mach-s3c/regs-irq.h
> +++ b/arch/arm/mach-s3c/regs-irq.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "regs-irq-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "regs-irq-s3c64xx.h"
> -#endif
> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> index 4469e7f555e9..fc10ecc3602d 100644
> --- a/drivers/clocksource/Kconfig
> +++ b/drivers/clocksource/Kconfig
> @@ -441,7 +441,7 @@ config CLKSRC_EXYNOS_MCT
> config CLKSRC_SAMSUNG_PWM
> bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
> depends on HAS_IOMEM
> - depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
> + depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
> help
> This is a new clocksource driver for the PWM timer found in
> Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
> diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
> index f427c8ea5c7b..84d21e0a7cdf 100644
> --- a/drivers/i2c/busses/Kconfig
> +++ b/drivers/i2c/busses/Kconfig
> @@ -1009,8 +1009,7 @@ config I2C_RZV2M
>
> config I2C_S3C2410
> tristate "S3C/Exynos I2C Driver"
> - depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || \
> - ARCH_S5PV210 || COMPILE_TEST
> + depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
> help
> Say Y here to include support for I2C controller in the
> Samsung SoCs (S3C, S5Pv210, Exynos).
> diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
> index 36dab9cd208c..45e9df81345a 100644
> --- a/drivers/i2c/busses/i2c-s3c2410.c
> +++ b/drivers/i2c/busses/i2c-s3c2410.c
> @@ -116,9 +116,6 @@ struct s3c24xx_i2c {
> struct s3c2410_platform_i2c *pdata;
> struct gpio_desc *gpios[2];
> struct pinctrl *pctrl;
> -#if defined(CONFIG_ARM_S3C24XX_CPUFREQ)
> - struct notifier_block freq_transition;
> -#endif
> struct regmap *sysreg;
> unsigned int sys_i2c_cfg;
> };
> @@ -885,65 +882,6 @@ static int s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got)
> return 0;
> }
>
> -#if defined(CONFIG_ARM_S3C24XX_CPUFREQ)
> -
> -#define freq_to_i2c(_n) container_of(_n, struct s3c24xx_i2c, freq_transition)
> -
> -static int s3c24xx_i2c_cpufreq_transition(struct notifier_block *nb,
> - unsigned long val, void *data)
> -{
> - struct s3c24xx_i2c *i2c = freq_to_i2c(nb);
> - unsigned int got;
> - int delta_f;
> - int ret;
> -
> - delta_f = clk_get_rate(i2c->clk) - i2c->clkrate;
> -
> - /* if we're post-change and the input clock has slowed down
> - * or at pre-change and the clock is about to speed up, then
> - * adjust our clock rate. <0 is slow, >0 speedup.
> - */
> -
> - if ((val == CPUFREQ_POSTCHANGE && delta_f < 0) ||
> - (val == CPUFREQ_PRECHANGE && delta_f > 0)) {
> - i2c_lock_bus(&i2c->adap, I2C_LOCK_ROOT_ADAPTER);
> - ret = s3c24xx_i2c_clockrate(i2c, &got);
> - i2c_unlock_bus(&i2c->adap, I2C_LOCK_ROOT_ADAPTER);
> -
> - if (ret < 0)
> - dev_err(i2c->dev, "cannot find frequency (%d)\n", ret);
> - else
> - dev_info(i2c->dev, "setting freq %d\n", got);
> - }
> -
> - return 0;
> -}
> -
> -static inline int s3c24xx_i2c_register_cpufreq(struct s3c24xx_i2c *i2c)
> -{
> - i2c->freq_transition.notifier_call = s3c24xx_i2c_cpufreq_transition;
> -
> - return cpufreq_register_notifier(&i2c->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -static inline void s3c24xx_i2c_deregister_cpufreq(struct s3c24xx_i2c *i2c)
> -{
> - cpufreq_unregister_notifier(&i2c->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -#else
> -static inline int s3c24xx_i2c_register_cpufreq(struct s3c24xx_i2c *i2c)
> -{
> - return 0;
> -}
> -
> -static inline void s3c24xx_i2c_deregister_cpufreq(struct s3c24xx_i2c *i2c)
> -{
> -}
> -#endif
> -
> #ifdef CONFIG_OF
> static int s3c24xx_i2c_parse_dt_gpio(struct s3c24xx_i2c *i2c)
> {
> @@ -1152,13 +1090,6 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
> }
> }
>
> - ret = s3c24xx_i2c_register_cpufreq(i2c);
> - if (ret < 0) {
> - dev_err(&pdev->dev, "failed to register cpufreq notifier\n");
> - clk_unprepare(i2c->clk);
> - return ret;
> - }
> -
> /*
> * Note, previous versions of the driver used i2c_add_adapter()
> * to add the bus at any number. We now pass the bus number via
> @@ -1175,7 +1106,6 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
> ret = i2c_add_numbered_adapter(&i2c->adap);
> if (ret < 0) {
> pm_runtime_disable(&pdev->dev);
> - s3c24xx_i2c_deregister_cpufreq(i2c);
> clk_unprepare(i2c->clk);
> return ret;
> }
> @@ -1192,8 +1122,6 @@ static int s3c24xx_i2c_remove(struct platform_device *pdev)
>
> pm_runtime_disable(&pdev->dev);
>
> - s3c24xx_i2c_deregister_cpufreq(i2c);
> -
> i2c_del_adapter(&i2c->adap);
>
> return 0;
> diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig
> index 791612ca6012..9de7f05d40e2 100644
> --- a/drivers/iio/adc/Kconfig
> +++ b/drivers/iio/adc/Kconfig
> @@ -437,11 +437,11 @@ config EP93XX_ADC
>
> config EXYNOS_ADC
> tristate "Exynos ADC driver support"
> - depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
> + depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
> depends on HAS_IOMEM
> help
> - Driver for the ADC block found in the Samsung S3C (S3C2410, S3C2416,
> - S3C2440, S3C2443, S3C6410), S5Pv210 and Exynos SoCs.
> + Driver for the ADC block found in the Samsung S3C6410, S5Pv210 and
> + Exynos SoCs.
> Choose Y here only if you build for such Samsung SoC.
>
> To compile this driver as a module, choose M here: the module will be
> diff --git a/drivers/media/platform/samsung/s3c-camif/Kconfig b/drivers/media/platform/samsung/s3c-camif/Kconfig
> index 8cb8d1ac3edc..f359f6382fff 100644
> --- a/drivers/media/platform/samsung/s3c-camif/Kconfig
> +++ b/drivers/media/platform/samsung/s3c-camif/Kconfig
> @@ -1,15 +1,15 @@
> # SPDX-License-Identifier: GPL-2.0-only
> config VIDEO_S3C_CAMIF
> - tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver"
> + tristate "Samsung 3C64XX SoC Camera Interface driver"
> depends on V4L_PLATFORM_DRIVERS
> depends on VIDEO_DEV && I2C && PM
> - depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST
> + depends on ARCH_S3C64XX || COMPILE_TEST
> select MEDIA_CONTROLLER
> select VIDEO_V4L2_SUBDEV_API
> select VIDEOBUF2_DMA_CONTIG
> help
> - This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera
> - host interface (CAMIF).
> + This is a v4l2 driver for s3c64xx SoC series camera host interface
> + (CAMIF).
>
> To compile this driver as a module, choose M here: the module
> will be called s3c-camif.
> diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
> index 84dd37ff2735..79d8ddf1f616 100644
> --- a/drivers/mmc/host/Kconfig
> +++ b/drivers/mmc/host/Kconfig
> @@ -312,9 +312,8 @@ config MMC_SDHCI_S3C
> depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
> help
> This selects the Secure Digital Host Controller Interface (SDHCI)
> - often referrered to as the HSMMC block in some of the Samsung S3C
> - (S3C2416, S3C2443, S3C6410), S5Pv210 and Exynos (Exynso4210,
> - Exynos4412) SoCs.
> + often referrered to as the HSMMC block in some of the Samsung
> + S3C6410, S5Pv210 and Exynos (Exynso4210, Exynos4412) SoCs.
>
> If you have a controller with this interface (thereforeyou build for
> such Samsung SoC), say Y or M here.
> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
> index 280a55139387..a347833b8f29 100644
> --- a/drivers/mtd/nand/raw/Kconfig
> +++ b/drivers/mtd/nand/raw/Kconfig
> @@ -79,7 +79,7 @@ config MTD_NAND_NDFC
>
> config MTD_NAND_S3C2410
> tristate "Samsung S3C NAND controller"
> - depends on ARCH_S3C24XX || ARCH_S3C64XX
> + depends on ARCH_S3C64XX
> help
> This enables the NAND flash controller on the S3C24xx and S3C64xx
> SoCs
> diff --git a/drivers/mtd/nand/raw/s3c2410.c b/drivers/mtd/nand/raw/s3c2410.c
> index f0a4535c812a..80d96f94d6cb 100644
> --- a/drivers/mtd/nand/raw/s3c2410.c
> +++ b/drivers/mtd/nand/raw/s3c2410.c
> @@ -166,10 +166,6 @@ struct s3c2410_nand_info {
> enum s3c_nand_clk_state clk_state;
>
> enum s3c_cpu_type cpu_type;
> -
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> - struct notifier_block freq_transition;
> -#endif
> };
>
> struct s3c24XX_nand_devtype_data {
> @@ -711,54 +707,6 @@ static void s3c2440_nand_write_buf(struct nand_chip *this, const u_char *buf,
> }
> }
>
> -/* cpufreq driver support */
> -
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> -
> -static int s3c2410_nand_cpufreq_transition(struct notifier_block *nb,
> - unsigned long val, void *data)
> -{
> - struct s3c2410_nand_info *info;
> - unsigned long newclk;
> -
> - info = container_of(nb, struct s3c2410_nand_info, freq_transition);
> - newclk = clk_get_rate(info->clk);
> -
> - if ((val == CPUFREQ_POSTCHANGE && newclk < info->clk_rate) ||
> - (val == CPUFREQ_PRECHANGE && newclk > info->clk_rate)) {
> - s3c2410_nand_setrate(info);
> - }
> -
> - return 0;
> -}
> -
> -static inline int s3c2410_nand_cpufreq_register(struct s3c2410_nand_info *info)
> -{
> - info->freq_transition.notifier_call = s3c2410_nand_cpufreq_transition;
> -
> - return cpufreq_register_notifier(&info->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -static inline void
> -s3c2410_nand_cpufreq_deregister(struct s3c2410_nand_info *info)
> -{
> - cpufreq_unregister_notifier(&info->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -#else
> -static inline int s3c2410_nand_cpufreq_register(struct s3c2410_nand_info *info)
> -{
> - return 0;
> -}
> -
> -static inline void
> -s3c2410_nand_cpufreq_deregister(struct s3c2410_nand_info *info)
> -{
> -}
> -#endif
> -
> /* device management functions */
>
> static int s3c24xx_nand_remove(struct platform_device *pdev)
> @@ -768,8 +716,6 @@ static int s3c24xx_nand_remove(struct platform_device *pdev)
> if (info == NULL)
> return 0;
>
> - s3c2410_nand_cpufreq_deregister(info);
> -
> /* Release all our mtds and their partitions, then go through
> * freeing the resources used
> */
> @@ -1184,12 +1130,6 @@ static int s3c24xx_nand_probe(struct platform_device *pdev)
> if (err != 0)
> goto exit_error;
>
> - err = s3c2410_nand_cpufreq_register(info);
> - if (err < 0) {
> - dev_err(&pdev->dev, "failed to init cpufreq support\n");
> - goto exit_error;
> - }
> -
> if (allow_clk_suspend(info)) {
> dev_info(&pdev->dev, "clock idle support enabled\n");
> s3c2410_nand_clk_set_state(info, CLOCK_SUSPEND);
> diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.c b/drivers/pinctrl/samsung/pinctrl-samsung.c
> index bd13b5ef246d..1a478854293f 100644
> --- a/drivers/pinctrl/samsung/pinctrl-samsung.c
> +++ b/drivers/pinctrl/samsung/pinctrl-samsung.c
> @@ -1322,16 +1322,6 @@ static const struct of_device_id samsung_pinctrl_dt_match[] = {
> #ifdef CONFIG_PINCTRL_S3C64XX
> { .compatible = "samsung,s3c64xx-pinctrl",
> .data = &s3c64xx_of_data },
> -#endif
> -#ifdef CONFIG_PINCTRL_S3C24XX
> - { .compatible = "samsung,s3c2412-pinctrl",
> - .data = &s3c2412_of_data },
> - { .compatible = "samsung,s3c2416-pinctrl",
> - .data = &s3c2416_of_data },
> - { .compatible = "samsung,s3c2440-pinctrl",
> - .data = &s3c2440_of_data },
> - { .compatible = "samsung,s3c2450-pinctrl",
> - .data = &s3c2450_of_data },
> #endif
> {},
> };
> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
> index 312dccfa3f18..d13ca620ea5d 100644
> --- a/drivers/rtc/Kconfig
> +++ b/drivers/rtc/Kconfig
> @@ -1406,18 +1406,14 @@ config RTC_DRV_OMAP
>
> config RTC_DRV_S3C
> tristate "Samsung S3C series SoC RTC"
> - depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S3C24XX || ARCH_S5PV210 || \
> + depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || \
> COMPILE_TEST
> help
> RTC (Realtime Clock) driver for the clock inbuilt into the
> - Samsung S3C24XX series of SoCs. This can provide periodic
> + Samsung S3C64XX series of SoCs. This can provide periodic
> interrupt rates from 1Hz to 64Hz for user programs, and
> wakeup from Alarm.
>
> - The driver currently supports the common features on all the
> - S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
> - and S3C2442.
> -
> This driver can also be build as a module. If so, the module
> will be called rtc-s3c.
>
> diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
> index 434f83168546..3ba8a39655a3 100644
> --- a/drivers/tty/serial/Kconfig
> +++ b/drivers/tty/serial/Kconfig
> @@ -242,23 +242,23 @@ config SERIAL_SAMSUNG
> select SERIAL_CORE
> help
> Support for the on-chip UARTs on the Samsung
> - S3C24xx/S3C64xx/S5Pv210/Exynos and Apple M1 SoCs, providing
> + S3C64xx/S5Pv210/Exynos and Apple M1 SoCs, providing
> /dev/ttySAC0, 1 and 2 (note, some machines may not provide all of
> these ports, depending on how the serial port pins are configured.
> +
> Choose Y/M here only if you build for such SoC.
>
> config SERIAL_SAMSUNG_UARTS_4
> bool
> depends on SERIAL_SAMSUNG
> - default y if !(CPU_S3C2410 || CPU_S3C2412 || CPU_S3C2440 || CPU_S3C2442)
> + default y
> help
> Internal node for the common case of 4 Samsung compatible UARTs
>
> config SERIAL_SAMSUNG_UARTS
> int
> depends on SERIAL_SAMSUNG
> - default 4 if SERIAL_SAMSUNG_UARTS_4 || CPU_S3C2416
> - default 3
> + default 4
> help
> Select the number of available UART ports for the Samsung S3C
> serial driver
> diff --git a/drivers/tty/serial/samsung_tty.c b/drivers/tty/serial/samsung_tty.c
> index 77d1363029f5..5adf3963b2f6 100644
> --- a/drivers/tty/serial/samsung_tty.c
> +++ b/drivers/tty/serial/samsung_tty.c
> @@ -152,10 +152,6 @@ struct s3c24xx_uart_port {
> const struct s3c2410_uartcfg *cfg;
>
> struct s3c24xx_uart_dma *dma;
> -
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> - struct notifier_block freq_transition;
> -#endif
> };
>
> static void s3c24xx_serial_tx_chars(struct s3c24xx_uart_port *ourport);
> @@ -1859,93 +1855,6 @@ static void s3c24xx_serial_resetport(struct uart_port *port,
> udelay(1);
> }
>
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> -
> -static int s3c24xx_serial_cpufreq_transition(struct notifier_block *nb,
> - unsigned long val, void *data)
> -{
> - struct s3c24xx_uart_port *port;
> - struct uart_port *uport;
> -
> - port = container_of(nb, struct s3c24xx_uart_port, freq_transition);
> - uport = &port->port;
> -
> - /* check to see if port is enabled */
> -
> - if (port->pm_level != 0)
> - return 0;
> -
> - /* try and work out if the baudrate is changing, we can detect
> - * a change in rate, but we do not have support for detecting
> - * a disturbance in the clock-rate over the change.
> - */
> -
> - if (IS_ERR(port->baudclk))
> - goto exit;
> -
> - if (port->baudclk_rate == clk_get_rate(port->baudclk))
> - goto exit;
> -
> - if (val == CPUFREQ_PRECHANGE) {
> - /* we should really shut the port down whilst the
> - * frequency change is in progress.
> - */
> -
> - } else if (val == CPUFREQ_POSTCHANGE) {
> - struct ktermios *termios;
> - struct tty_struct *tty;
> -
> - if (uport->state == NULL)
> - goto exit;
> -
> - tty = uport->state->port.tty;
> -
> - if (tty == NULL)
> - goto exit;
> -
> - termios = &tty->termios;
> -
> - if (termios == NULL) {
> - dev_warn(uport->dev, "%s: no termios?\n", __func__);
> - goto exit;
> - }
> -
> - s3c24xx_serial_set_termios(uport, termios, NULL);
> - }
> -
> -exit:
> - return 0;
> -}
> -
> -static inline int
> -s3c24xx_serial_cpufreq_register(struct s3c24xx_uart_port *port)
> -{
> - port->freq_transition.notifier_call = s3c24xx_serial_cpufreq_transition;
> -
> - return cpufreq_register_notifier(&port->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -static inline void
> -s3c24xx_serial_cpufreq_deregister(struct s3c24xx_uart_port *port)
> -{
> - cpufreq_unregister_notifier(&port->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -#else
> -static inline int
> -s3c24xx_serial_cpufreq_register(struct s3c24xx_uart_port *port)
> -{
> - return 0;
> -}
> -
> -static inline void
> -s3c24xx_serial_cpufreq_deregister(struct s3c24xx_uart_port *port)
> -{
> -}
> -#endif
> -
> static int s3c24xx_serial_enable_baudclk(struct s3c24xx_uart_port *ourport)
> {
> struct device *dev = ourport->port.dev;
> @@ -2237,10 +2146,6 @@ static int s3c24xx_serial_probe(struct platform_device *pdev)
> if (!IS_ERR(ourport->baudclk))
> clk_disable_unprepare(ourport->baudclk);
>
> - ret = s3c24xx_serial_cpufreq_register(ourport);
> - if (ret < 0)
> - dev_err(&pdev->dev, "failed to add cpufreq notifier\n");
> -
> probe_index++;
>
> return 0;
> @@ -2251,7 +2156,6 @@ static int s3c24xx_serial_remove(struct platform_device *dev)
> struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
>
> if (port) {
> - s3c24xx_serial_cpufreq_deregister(to_ourport(port));
> uart_remove_one_port(&s3c24xx_uart_drv, port);
> }
>
> @@ -2589,94 +2493,6 @@ static struct console s3c24xx_serial_console = {
> };
> #endif /* CONFIG_SERIAL_SAMSUNG_CONSOLE */
>
> -#ifdef CONFIG_CPU_S3C2410
> -static const struct s3c24xx_serial_drv_data s3c2410_serial_drv_data = {
> - .info = {
> - .name = "Samsung S3C2410 UART",
> - .type = TYPE_S3C24XX,
> - .port_type = PORT_S3C2410,
> - .fifosize = 16,
> - .rx_fifomask = S3C2410_UFSTAT_RXMASK,
> - .rx_fifoshift = S3C2410_UFSTAT_RXSHIFT,
> - .rx_fifofull = S3C2410_UFSTAT_RXFULL,
> - .tx_fifofull = S3C2410_UFSTAT_TXFULL,
> - .tx_fifomask = S3C2410_UFSTAT_TXMASK,
> - .tx_fifoshift = S3C2410_UFSTAT_TXSHIFT,
> - .def_clk_sel = S3C2410_UCON_CLKSEL0,
> - .num_clks = 2,
> - .clksel_mask = S3C2410_UCON_CLKMASK,
> - .clksel_shift = S3C2410_UCON_CLKSHIFT,
> - },
> - .def_cfg = {
> - .ucon = S3C2410_UCON_DEFAULT,
> - .ufcon = S3C2410_UFCON_DEFAULT,
> - },
> -};
> -#define S3C2410_SERIAL_DRV_DATA (&s3c2410_serial_drv_data)
> -#else
> -#define S3C2410_SERIAL_DRV_DATA NULL
> -#endif
> -
> -#ifdef CONFIG_CPU_S3C2412
> -static const struct s3c24xx_serial_drv_data s3c2412_serial_drv_data = {
> - .info = {
> - .name = "Samsung S3C2412 UART",
> - .type = TYPE_S3C24XX,
> - .port_type = PORT_S3C2412,
> - .fifosize = 64,
> - .has_divslot = 1,
> - .rx_fifomask = S3C2440_UFSTAT_RXMASK,
> - .rx_fifoshift = S3C2440_UFSTAT_RXSHIFT,
> - .rx_fifofull = S3C2440_UFSTAT_RXFULL,
> - .tx_fifofull = S3C2440_UFSTAT_TXFULL,
> - .tx_fifomask = S3C2440_UFSTAT_TXMASK,
> - .tx_fifoshift = S3C2440_UFSTAT_TXSHIFT,
> - .def_clk_sel = S3C2410_UCON_CLKSEL2,
> - .num_clks = 4,
> - .clksel_mask = S3C2412_UCON_CLKMASK,
> - .clksel_shift = S3C2412_UCON_CLKSHIFT,
> - },
> - .def_cfg = {
> - .ucon = S3C2410_UCON_DEFAULT,
> - .ufcon = S3C2410_UFCON_DEFAULT,
> - },
> -};
> -#define S3C2412_SERIAL_DRV_DATA (&s3c2412_serial_drv_data)
> -#else
> -#define S3C2412_SERIAL_DRV_DATA NULL
> -#endif
> -
> -#if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2416) || \
> - defined(CONFIG_CPU_S3C2443) || defined(CONFIG_CPU_S3C2442)
> -static const struct s3c24xx_serial_drv_data s3c2440_serial_drv_data = {
> - .info = {
> - .name = "Samsung S3C2440 UART",
> - .type = TYPE_S3C24XX,
> - .port_type = PORT_S3C2440,
> - .fifosize = 64,
> - .has_divslot = 1,
> - .rx_fifomask = S3C2440_UFSTAT_RXMASK,
> - .rx_fifoshift = S3C2440_UFSTAT_RXSHIFT,
> - .rx_fifofull = S3C2440_UFSTAT_RXFULL,
> - .tx_fifofull = S3C2440_UFSTAT_TXFULL,
> - .tx_fifomask = S3C2440_UFSTAT_TXMASK,
> - .tx_fifoshift = S3C2440_UFSTAT_TXSHIFT,
> - .def_clk_sel = S3C2410_UCON_CLKSEL2,
> - .num_clks = 4,
> - .clksel_mask = S3C2412_UCON_CLKMASK,
> - .clksel_shift = S3C2412_UCON_CLKSHIFT,
> - .ucon_mask = S3C2440_UCON0_DIVMASK,
> - },
> - .def_cfg = {
> - .ucon = S3C2410_UCON_DEFAULT,
> - .ufcon = S3C2410_UFCON_DEFAULT,
> - },
> -};
> -#define S3C2440_SERIAL_DRV_DATA (&s3c2440_serial_drv_data)
> -#else
> -#define S3C2440_SERIAL_DRV_DATA NULL
> -#endif
> -
> #if defined(CONFIG_CPU_S3C6400) || defined(CONFIG_CPU_S3C6410)
> static const struct s3c24xx_serial_drv_data s3c6400_serial_drv_data = {
> .info = {
> @@ -2845,15 +2661,6 @@ static const struct s3c24xx_serial_drv_data artpec8_serial_drv_data = {
>
> static const struct platform_device_id s3c24xx_serial_driver_ids[] = {
> {
> - .name = "s3c2410-uart",
> - .driver_data = (kernel_ulong_t)S3C2410_SERIAL_DRV_DATA,
> - }, {
> - .name = "s3c2412-uart",
> - .driver_data = (kernel_ulong_t)S3C2412_SERIAL_DRV_DATA,
> - }, {
> - .name = "s3c2440-uart",
> - .driver_data = (kernel_ulong_t)S3C2440_SERIAL_DRV_DATA,
> - }, {
> .name = "s3c6400-uart",
> .driver_data = (kernel_ulong_t)S3C6400_SERIAL_DRV_DATA,
> }, {
> @@ -2881,12 +2688,6 @@ MODULE_DEVICE_TABLE(platform, s3c24xx_serial_driver_ids);
>
> #ifdef CONFIG_OF
> static const struct of_device_id s3c24xx_uart_dt_match[] = {
> - { .compatible = "samsung,s3c2410-uart",
> - .data = S3C2410_SERIAL_DRV_DATA },
> - { .compatible = "samsung,s3c2412-uart",
> - .data = S3C2412_SERIAL_DRV_DATA },
> - { .compatible = "samsung,s3c2440-uart",
> - .data = S3C2440_SERIAL_DRV_DATA },
> { .compatible = "samsung,s3c6400-uart",
> .data = S3C6400_SERIAL_DRV_DATA },
> { .compatible = "samsung,s5pv210-uart",
> diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> index fb7b603dddf8..8ba4fe9364b1 100644
> --- a/drivers/usb/host/Kconfig
> +++ b/drivers/usb/host/Kconfig
> @@ -443,12 +443,12 @@ config USB_OHCI_HCD_STI
> STMicroelectronics consumer electronics SoC's.
>
> config USB_OHCI_HCD_S3C2410
> - tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
> - depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX || COMPILE_TEST)
> - default y if (ARCH_S3C24XX || ARCH_S3C64XX)
> + tristate "OHCI support for Samsung S3C64xx SoC series"
> + depends on USB_OHCI_HCD && (ARCH_S3C64XX || COMPILE_TEST)
> + default ARCH_S3C64XX
> help
> Enables support for the on-chip OHCI controller on
> - S3C24xx/S3C64xx chips.
> + S3C64xx chips.
>
> config USB_OHCI_HCD_LPC32XX
> tristate "Support for LPC on-chip OHCI USB controller"
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index b64bc49c7f30..eee7df45347a 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -491,14 +491,13 @@ config IXP4XX_WATCHDOG
> Say N if you are unsure.
>
> config S3C2410_WATCHDOG
> - tristate "S3C2410 Watchdog"
> - depends on ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || \
> - COMPILE_TEST
> + tristate "S3C6410/S5Pv210/Exynos Watchdog"
> + depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
> select WATCHDOG_CORE
> select MFD_SYSCON if ARCH_EXYNOS
> help
> - Watchdog timer block in the Samsung S3C24xx, S3C64xx, S5Pv210 and
> - Exynos SoCs. This will reboot the system when the timer expires with
> + Watchdog timer block in the Samsung S3C64xx, S5Pv210 and Exynos
> + SoCs. This will reboot the system when the timer expires with
> the watchdog enabled.
>
> The driver is limited by the speed of the system's PCLK
> diff --git a/drivers/watchdog/s3c2410_wdt.c b/drivers/watchdog/s3c2410_wdt.c
> index d3fc8ed886ff..200ba236a72e 100644
> --- a/drivers/watchdog/s3c2410_wdt.c
> +++ b/drivers/watchdog/s3c2410_wdt.c
> @@ -562,73 +562,6 @@ static irqreturn_t s3c2410wdt_irq(int irqno, void *param)
> return IRQ_HANDLED;
> }
>
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> -
> -static int s3c2410wdt_cpufreq_transition(struct notifier_block *nb,
> - unsigned long val, void *data)
> -{
> - int ret;
> - struct s3c2410_wdt *wdt = freq_to_wdt(nb);
> -
> - if (!s3c2410wdt_is_running(wdt))
> - goto done;
> -
> - if (val == CPUFREQ_PRECHANGE) {
> - /* To ensure that over the change we don't cause the
> - * watchdog to trigger, we perform an keep-alive if
> - * the watchdog is running.
> - */
> -
> - s3c2410wdt_keepalive(&wdt->wdt_device);
> - } else if (val == CPUFREQ_POSTCHANGE) {
> - s3c2410wdt_stop(&wdt->wdt_device);
> -
> - ret = s3c2410wdt_set_heartbeat(&wdt->wdt_device,
> - wdt->wdt_device.timeout);
> -
> - if (ret >= 0)
> - s3c2410wdt_start(&wdt->wdt_device);
> - else
> - goto err;
> - }
> -
> -done:
> - return 0;
> -
> - err:
> - dev_err(wdt->dev, "cannot set new value for timeout %d\n",
> - wdt->wdt_device.timeout);
> - return ret;
> -}
> -
> -static inline int s3c2410wdt_cpufreq_register(struct s3c2410_wdt *wdt)
> -{
> - wdt->freq_transition.notifier_call = s3c2410wdt_cpufreq_transition;
> -
> - return cpufreq_register_notifier(&wdt->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -static inline void s3c2410wdt_cpufreq_deregister(struct s3c2410_wdt *wdt)
> -{
> - wdt->freq_transition.notifier_call = s3c2410wdt_cpufreq_transition;
> -
> - cpufreq_unregister_notifier(&wdt->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -#else
> -
> -static inline int s3c2410wdt_cpufreq_register(struct s3c2410_wdt *wdt)
> -{
> - return 0;
> -}
> -
> -static inline void s3c2410wdt_cpufreq_deregister(struct s3c2410_wdt *wdt)
> -{
> -}
> -#endif
> -
> static inline unsigned int s3c2410wdt_get_bootstatus(struct s3c2410_wdt *wdt)
> {
> unsigned int rst_stat;
> @@ -761,12 +694,6 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
> wdt->wdt_device.min_timeout = 1;
> wdt->wdt_device.max_timeout = s3c2410wdt_max_timeout(wdt);
>
> - ret = s3c2410wdt_cpufreq_register(wdt);
> - if (ret < 0) {
> - dev_err(dev, "failed to register cpufreq\n");
> - goto err_src_clk;
> - }
> -
> watchdog_set_drvdata(&wdt->wdt_device, wdt);
>
> /* see if we can actually set the requested timer margin, and if
> @@ -783,7 +710,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
> S3C2410_WATCHDOG_DEFAULT_TIME);
> } else {
> dev_err(dev, "failed to use default timeout\n");
> - goto err_cpufreq;
> + goto err_src_clk;
> }
> }
>
> @@ -791,7 +718,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
> pdev->name, pdev);
> if (ret != 0) {
> dev_err(dev, "failed to install irq (%d)\n", ret);
> - goto err_cpufreq;
> + goto err_src_clk;
> }
>
> watchdog_set_nowayout(&wdt->wdt_device, nowayout);
> @@ -817,7 +744,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
>
> ret = watchdog_register_device(&wdt->wdt_device);
> if (ret)
> - goto err_cpufreq;
> + goto err_src_clk;
>
> ret = s3c2410wdt_enable(wdt, true);
> if (ret < 0)
> @@ -839,9 +766,6 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
> err_unregister:
> watchdog_unregister_device(&wdt->wdt_device);
>
> - err_cpufreq:
> - s3c2410wdt_cpufreq_deregister(wdt);
> -
> err_src_clk:
> clk_disable_unprepare(wdt->src_clk);
>
> @@ -862,8 +786,6 @@ static int s3c2410wdt_remove(struct platform_device *dev)
>
> watchdog_unregister_device(&wdt->wdt_device);
>
> - s3c2410wdt_cpufreq_deregister(wdt);
> -
> clk_disable_unprepare(wdt->src_clk);
> clk_disable_unprepare(wdt->bus_clk);
>
> diff --git a/include/linux/clk/samsung.h b/include/linux/clk/samsung.h
> index 38b774001712..0cf7aac83439 100644
> --- a/include/linux/clk/samsung.h
> +++ b/include/linux/clk/samsung.h
> @@ -21,36 +21,4 @@ static inline void s3c64xx_clk_init(struct device_node *np,
> bool s3c6400, void __iomem *base) { }
> #endif /* CONFIG_S3C64XX_COMMON_CLK */
>
> -#ifdef CONFIG_S3C2410_COMMON_CLK
> -void s3c2410_common_clk_init(struct device_node *np, unsigned long xti_f,
> - int current_soc,
> - void __iomem *reg_base);
> -#else
> -static inline void s3c2410_common_clk_init(struct device_node *np,
> - unsigned long xti_f,
> - int current_soc,
> - void __iomem *reg_base) { }
> -#endif /* CONFIG_S3C2410_COMMON_CLK */
> -
> -#ifdef CONFIG_S3C2412_COMMON_CLK
> -void s3c2412_common_clk_init(struct device_node *np, unsigned long xti_f,
> - unsigned long ext_f, void __iomem *reg_base);
> -#else
> -static inline void s3c2412_common_clk_init(struct device_node *np,
> - unsigned long xti_f,
> - unsigned long ext_f,
> - void __iomem *reg_base) { }
> -#endif /* CONFIG_S3C2412_COMMON_CLK */
> -
> -#ifdef CONFIG_S3C2443_COMMON_CLK
> -void s3c2443_common_clk_init(struct device_node *np, unsigned long xti_f,
> - int current_soc,
> - void __iomem *reg_base);
> -#else
> -static inline void s3c2443_common_clk_init(struct device_node *np,
> - unsigned long xti_f,
> - int current_soc,
> - void __iomem *reg_base) { }
> -#endif /* CONFIG_S3C2443_COMMON_CLK */
> -
> #endif /* __LINUX_CLK_SAMSUNG_H_ */
> diff --git a/include/linux/soc/samsung/s3c-pm.h b/include/linux/soc/samsung/s3c-pm.h
> index f9164559c99f..5b23d85d20ab 100644
> --- a/include/linux/soc/samsung/s3c-pm.h
> +++ b/include/linux/soc/samsung/s3c-pm.h
> @@ -14,58 +14,10 @@
>
> /* PM debug functions */
>
> -/**
> - * struct pm_uart_save - save block for core UART
> - * @ulcon: Save value for S3C2410_ULCON
> - * @ucon: Save value for S3C2410_UCON
> - * @ufcon: Save value for S3C2410_UFCON
> - * @umcon: Save value for S3C2410_UMCON
> - * @ubrdiv: Save value for S3C2410_UBRDIV
> - *
> - * Save block for UART registers to be held over sleep and restored if they
> - * are needed (say by debug).
> -*/
> -struct pm_uart_save {
> - u32 ulcon;
> - u32 ucon;
> - u32 ufcon;
> - u32 umcon;
> - u32 ubrdiv;
> - u32 udivslot;
> -};
> -
> -#ifdef CONFIG_SAMSUNG_PM_DEBUG
> -/**
> - * s3c_pm_dbg() - low level debug function for use in suspend/resume.
> - * @msg: The message to print.
> - *
> - * This function is used mainly to debug the resume process before the system
> - * can rely on printk/console output. It uses the low-level debugging output
> - * routine printascii() to do its work.
> - */
> -extern void s3c_pm_dbg(const char *msg, ...);
> -
> -#define S3C_PMDBG(fmt...) s3c_pm_dbg(fmt)
> -
> -extern void s3c_pm_save_uarts(bool is_s3c24xx);
> -extern void s3c_pm_restore_uarts(bool is_s3c24xx);
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> -extern void s3c_pm_arch_update_uart(void __iomem *regs,
> - struct pm_uart_save *save);
> -#else
> -static inline void
> -s3c_pm_arch_update_uart(void __iomem *regs, struct pm_uart_save *save)
> -{
> -}
> -#endif
> -
> -#else
> #define S3C_PMDBG(fmt...) pr_debug(fmt)
>
> static inline void s3c_pm_save_uarts(bool is_s3c24xx) { }
> static inline void s3c_pm_restore_uarts(bool is_s3c24xx) { }
> -#endif
>
> /* suspend memory checking */
>
> @@ -81,14 +33,4 @@ extern void s3c_pm_check_store(void);
> #define s3c_pm_check_store() do { } while (0)
> #endif
>
> -/* system device subsystems */
> -
> -extern struct bus_type s3c2410_subsys;
> -extern struct bus_type s3c2410a_subsys;
> -extern struct bus_type s3c2412_subsys;
> -extern struct bus_type s3c2416_subsys;
> -extern struct bus_type s3c2440_subsys;
> -extern struct bus_type s3c2442_subsys;
> -extern struct bus_type s3c2443_subsys;
> -
> #endif
Hello!
On 10/21/22 11:27 PM, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> This device was only used by the smdk6410 board file that is now
> gone, so the driver can be removed as well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Sergey Shtylyov <[email protected]>
[...]
MBR, Sergey
On 21/10/2022 22:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Daniel Lezcano <[email protected]>
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
On 10/22/22 05:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> This device was only used by the smdk6410 board file that is now
> gone, so the driver can be removed as well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Arnd,
This patch does not apply to the for-6.2 branch of libata tree. I can fix
that easily, but I am concerned about the fact that this deletes the
header file include/linux/platform_data/ata-samsung_cf.h, which has some
function declarations for gpio used under arch/arm/mach-s3c. So If I apply
this before you queue the other patches for this driver in for-next, we
may endup with build failures. No ?
> ---
> drivers/ata/Kconfig | 10 -
> drivers/ata/Makefile | 1 -
> drivers/ata/pata_samsung_cf.c | 662 -------------------
> include/linux/platform_data/ata-samsung_cf.h | 31 -
> 4 files changed, 704 deletions(-)
> delete mode 100644 drivers/ata/pata_samsung_cf.c
> delete mode 100644 include/linux/platform_data/ata-samsung_cf.h
>
> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
> index 6b446cfc3455..3b8cb7a29efd 100644
> --- a/drivers/ata/Kconfig
> +++ b/drivers/ata/Kconfig
> @@ -1136,16 +1136,6 @@ config PATA_RZ1000
>
> If unsure, say N.
>
> -config PATA_SAMSUNG_CF
> - tristate "Samsung SoC PATA support"
> - depends on SAMSUNG_DEV_IDE || COMPILE_TEST
> - select PATA_TIMINGS
> - help
> - This option enables basic support for Samsung's S3C/S5P board
> - PATA controllers via the new ATA layer
> -
> - If unsure, say N.
> -
> config PATA_WINBOND_VLB
> tristate "Winbond W83759A VLB PATA support (Experimental)"
> depends on ISA
> diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
> index 2cca9f500649..4ee5c0761d90 100644
> --- a/drivers/ata/Makefile
> +++ b/drivers/ata/Makefile
> @@ -109,7 +109,6 @@ obj-$(CONFIG_PATA_PLATFORM) += pata_platform.o
> obj-$(CONFIG_PATA_OF_PLATFORM) += pata_of_platform.o
> obj-$(CONFIG_PATA_RB532) += pata_rb532_cf.o
> obj-$(CONFIG_PATA_RZ1000) += pata_rz1000.o
> -obj-$(CONFIG_PATA_SAMSUNG_CF) += pata_samsung_cf.o
>
> obj-$(CONFIG_PATA_PXA) += pata_pxa.o
>
> diff --git a/drivers/ata/pata_samsung_cf.c b/drivers/ata/pata_samsung_cf.c
> deleted file mode 100644
> index aba1536ddd44..000000000000
> diff --git a/include/linux/platform_data/ata-samsung_cf.h b/include/linux/platform_data/ata-samsung_cf.h
> deleted file mode 100644
> index fccf969dc4da..000000000000
--
Damien Le Moal
Western Digital Research
On 10/24/22 07:41, Damien Le Moal wrote:
> On 10/22/22 05:27, Arnd Bergmann wrote:
>> From: Arnd Bergmann <[email protected]>
>>
>> This device was only used by the smdk6410 board file that is now
>> gone, so the driver can be removed as well.
>>
>> Signed-off-by: Arnd Bergmann <[email protected]>
>
> Arnd,
>
> This patch does not apply to the for-6.2 branch of libata tree. I can fix
> that easily, but I am concerned about the fact that this deletes the
> header file include/linux/platform_data/ata-samsung_cf.h, which has some
> function declarations for gpio used under arch/arm/mach-s3c. So If I apply
> this before you queue the other patches for this driver in for-next, we
> may endup with build failures. No ?
It may be simpler for you to take this patch ? If yes, then:
Acked-by: Damien Le Moal <[email protected]>
>
>> ---
>> drivers/ata/Kconfig | 10 -
>> drivers/ata/Makefile | 1 -
>> drivers/ata/pata_samsung_cf.c | 662 -------------------
>> include/linux/platform_data/ata-samsung_cf.h | 31 -
>> 4 files changed, 704 deletions(-)
>> delete mode 100644 drivers/ata/pata_samsung_cf.c
>> delete mode 100644 include/linux/platform_data/ata-samsung_cf.h
>>
>> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
>> index 6b446cfc3455..3b8cb7a29efd 100644
>> --- a/drivers/ata/Kconfig
>> +++ b/drivers/ata/Kconfig
>> @@ -1136,16 +1136,6 @@ config PATA_RZ1000
>>
>> If unsure, say N.
>>
>> -config PATA_SAMSUNG_CF
>> - tristate "Samsung SoC PATA support"
>> - depends on SAMSUNG_DEV_IDE || COMPILE_TEST
>> - select PATA_TIMINGS
>> - help
>> - This option enables basic support for Samsung's S3C/S5P board
>> - PATA controllers via the new ATA layer
>> -
>> - If unsure, say N.
>> -
>> config PATA_WINBOND_VLB
>> tristate "Winbond W83759A VLB PATA support (Experimental)"
>> depends on ISA
>> diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
>> index 2cca9f500649..4ee5c0761d90 100644
>> --- a/drivers/ata/Makefile
>> +++ b/drivers/ata/Makefile
>> @@ -109,7 +109,6 @@ obj-$(CONFIG_PATA_PLATFORM) += pata_platform.o
>> obj-$(CONFIG_PATA_OF_PLATFORM) += pata_of_platform.o
>> obj-$(CONFIG_PATA_RB532) += pata_rb532_cf.o
>> obj-$(CONFIG_PATA_RZ1000) += pata_rz1000.o
>> -obj-$(CONFIG_PATA_SAMSUNG_CF) += pata_samsung_cf.o
>>
>> obj-$(CONFIG_PATA_PXA) += pata_pxa.o
>>
>> diff --git a/drivers/ata/pata_samsung_cf.c b/drivers/ata/pata_samsung_cf.c
>> deleted file mode 100644
>> index aba1536ddd44..000000000000
>> diff --git a/include/linux/platform_data/ata-samsung_cf.h b/include/linux/platform_data/ata-samsung_cf.h
>> deleted file mode 100644
>> index fccf969dc4da..000000000000
>
--
Damien Le Moal
Western Digital Research
On Fri, 21 Oct 2022, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c-adc driver is removed along with the s3c24xx platform,
> so the battery driver is no longer needed either.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> MAINTAINERS | 7 -
> drivers/power/supply/Kconfig | 6 -
> drivers/power/supply/Makefile | 1 -
> drivers/power/supply/s3c_adc_battery.c | 453 -------------------------
> include/linux/s3c_adc_battery.h | 39 ---
> 5 files changed, 506 deletions(-)
> delete mode 100644 drivers/power/supply/s3c_adc_battery.c
> delete mode 100644 include/linux/s3c_adc_battery.h
Any idea why I was Cc'ed on this (and only this) patch?
--
Lee Jones [李琼斯]
On Mon, Oct 24, 2022, at 09:28, Lee Jones wrote:
> On Fri, 21 Oct 2022, Arnd Bergmann wrote:
>
>> From: Arnd Bergmann <[email protected]>
>>
>> The s3c-adc driver is removed along with the s3c24xx platform,
>> so the battery driver is no longer needed either.
>>
>> Signed-off-by: Arnd Bergmann <[email protected]>
>> ---
>> MAINTAINERS | 7 -
>> drivers/power/supply/Kconfig | 6 -
>> drivers/power/supply/Makefile | 1 -
>> drivers/power/supply/s3c_adc_battery.c | 453 -------------------------
>> include/linux/s3c_adc_battery.h | 39 ---
>> 5 files changed, 506 deletions(-)
>> delete mode 100644 drivers/power/supply/s3c_adc_battery.c
>> delete mode 100644 include/linux/s3c_adc_battery.h
>
> Any idea why I was Cc'ed on this (and only this) patch?
Not sure. I use "get_maintainer.pl -i" to generate the list
and try to prune it manually to avoid adding too many
people to Cc. It appears that for this patch I accidentally
included everyone who showed up in the git history for the
maintainers file, rather than the people who touched the
actual driver.
Arnd
On Mon, 24 Oct 2022, Arnd Bergmann wrote:
> On Mon, Oct 24, 2022, at 09:28, Lee Jones wrote:
> > On Fri, 21 Oct 2022, Arnd Bergmann wrote:
> >
> >> From: Arnd Bergmann <[email protected]>
> >>
> >> The s3c-adc driver is removed along with the s3c24xx platform,
> >> so the battery driver is no longer needed either.
> >>
> >> Signed-off-by: Arnd Bergmann <[email protected]>
> >> ---
> >> MAINTAINERS | 7 -
> >> drivers/power/supply/Kconfig | 6 -
> >> drivers/power/supply/Makefile | 1 -
> >> drivers/power/supply/s3c_adc_battery.c | 453 -------------------------
> >> include/linux/s3c_adc_battery.h | 39 ---
> >> 5 files changed, 506 deletions(-)
> >> delete mode 100644 drivers/power/supply/s3c_adc_battery.c
> >> delete mode 100644 include/linux/s3c_adc_battery.h
> >
> > Any idea why I was Cc'ed on this (and only this) patch?
>
> Not sure. I use "get_maintainer.pl -i" to generate the list
> and try to prune it manually to avoid adding too many
> people to Cc. It appears that for this patch I accidentally
> included everyone who showed up in the git history for the
> maintainers file, rather than the people who touched the
> actual driver.
Understood. Thanks for the explanation.
--
Lee Jones [李琼斯]
Hi Arnd,
[email protected] wrote on Fri, 21 Oct 2022 22:27:35 +0200:
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Miquel Raynal <[email protected]>
Thanks,
Miquèl
On Fri, Oct 21, 2022 at 10:27:38PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> Following down the now unused symbols and header files, some additional
> content can be dropped that is used by neither the s3c64xx DT support
> nor the crag6410 board.
Acked-by: Mark Brown <[email protected]>
On Fri, Oct 21, 2022 at 10:27:37PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> This driver could not be enabled on s3c64xx for a long time
> because of the ARCH_MULTIPLATFORM dependency, so remove it.
Acked-by: Mark Brown <[email protected]>
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform is gone, so this driver can be removed as well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> No board file and no dts file references the s3c6400 now, it's only
> s3c6410, so remove the final bits as well.
>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> This device was only used by the smdk6410 board file that is now
> gone, so the driver can be removed as well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/ata/Kconfig | 10 -
> drivers/ata/Makefile | 1 -
> drivers/ata/pata_samsung_cf.c | 662 -------------------
> include/linux/platform_data/ata-samsung_cf.h | 31 -
> 4 files changed, 704 deletions(-)
> delete mode 100644 drivers/ata/pata_samsung_cf.c
> delete mode 100644 include/linux/platform_data/ata-samsung_cf.h
>
> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
> index 6b446cfc3455..3b8cb7a29efd 100644
> --- a/drivers/ata/Kconfig
> +++ b/drivers/ata/Kconfig
> @@ -1136,16 +1136,6 @@ config PATA_RZ1000
>
> If unsure, say N.
>
> -config PATA_SAMSUNG_CF
> - tristate "Samsung SoC PATA support"
> - depends on SAMSUNG_DEV_IDE || COMPILE_TEST
> - select PATA_TIMINGS
> - help
> - This option enables basic support for Samsung's S3C/S5P board
> - PATA controllers via the new ATA layer
> -
This driver is present and somehow usable on newer platform: S5PV210.
It's not converted to DT, but someone might want to do it. OTOH, if no
one added DT for all this time, I doubt anyone will.
Postmarket/Lineage-folks target smartphones, so don't use it.
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform is gone, so the clk driver can be removed as
> well.
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform was removed,s o there are no remaining users
> for its spi driver.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> Following down the now unused symbols and header files, some additional
> content can be dropped that is used by neither the s3c64xx DT support
> nor the crag6410 board.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> arch/arm/mach-s3c/Kconfig | 50 --
> arch/arm/mach-s3c/Kconfig.s3c64xx | 5 -
> arch/arm/mach-s3c/Makefile | 2 -
> arch/arm/mach-s3c/Makefile.s3c64xx | 1 -
> arch/arm/mach-s3c/adc-core.h | 24 -
> arch/arm/mach-s3c/ata-core-s3c64xx.h | 24 -
> arch/arm/mach-s3c/backlight-s3c64xx.h | 22 -
> arch/arm/mach-s3c/cpu.h | 47 --
> arch/arm/mach-s3c/dev-audio-s3c64xx.c | 127 ----
> arch/arm/mach-s3c/devs.c | 725 -------------------
> arch/arm/mach-s3c/devs.h | 37 -
> arch/arm/mach-s3c/dma-s3c64xx.h | 57 --
> arch/arm/mach-s3c/dma.h | 2 -
> arch/arm/mach-s3c/gpio-cfg-helpers.h | 124 ----
> arch/arm/mach-s3c/gpio-cfg.h | 19 -
> arch/arm/mach-s3c/gpio-core.h | 3 -
> arch/arm/mach-s3c/gpio-samsung.c | 443 +----------
> arch/arm/mach-s3c/iic-core.h | 7 -
> arch/arm/mach-s3c/init.c | 26 +-
> arch/arm/mach-s3c/map-s3c.h | 37 -
> arch/arm/mach-s3c/onenand-core-s3c64xx.h | 32 -
> arch/arm/mach-s3c/otom.h | 25 -
> arch/arm/mach-s3c/pm-core-s3c64xx.h | 17 -
> arch/arm/mach-s3c/pm-s3c64xx.c | 83 ---
> arch/arm/mach-s3c/pm.c | 7 +-
> arch/arm/mach-s3c/pm.h | 12 -
> arch/arm/mach-s3c/regs-srom-s3c64xx.h | 55 --
> arch/arm/mach-s3c/s3c6400.c | 6 -
> arch/arm/mach-s3c/s3c6410.c | 9 -
> arch/arm/mach-s3c/sdhci.h | 25 -
> arch/arm/mach-s3c/setup-ide-s3c64xx.c | 40 -
> arch/arm/mach-s3c/sleep-s3c64xx.S | 27 -
> include/linux/platform_data/media/s5p_hdmi.h | 32 -
> 33 files changed, 6 insertions(+), 2146 deletions(-)
> delete mode 100644 arch/arm/mach-s3c/adc-core.h
> delete mode 100644 arch/arm/mach-s3c/ata-core-s3c64xx.h
> delete mode 100644 arch/arm/mach-s3c/backlight-s3c64xx.h
> delete mode 100644 arch/arm/mach-s3c/dma-s3c64xx.h
> delete mode 100644 arch/arm/mach-s3c/dma.h
> delete mode 100644 arch/arm/mach-s3c/onenand-core-s3c64xx.h
> delete mode 100644 arch/arm/mach-s3c/otom.h
> delete mode 100644 arch/arm/mach-s3c/regs-srom-s3c64xx.h
> delete mode 100644 arch/arm/mach-s3c/setup-ide-s3c64xx.c
> delete mode 100644 include/linux/platform_data/media/s5p_hdmi.h
>
> diff --git a/arch/arm/mach-s3c/Kconfig b/arch/arm/mach-s3c/Kconfig
> index 0dde4010aa64..b3656109f1f7 100644
> --- a/arch/arm/mach-s3c/Kconfig
> +++ b/arch/arm/mach-s3c/Kconfig
> @@ -90,36 +90,6 @@ config S3C_DEV_I2C1
> help
> Compile in platform device definitions for I2C channel 1
>
> -config S3C_DEV_I2C2
> - bool
> - help
> - Compile in platform device definitions for I2C channel 2
> -
> -config S3C_DEV_I2C3
> - bool
> - help
> - Compile in platform device definition for I2C controller 3
> -
> -config S3C_DEV_I2C4
> - bool
> - help
> - Compile in platform device definition for I2C controller 4
> -
> -config S3C_DEV_I2C5
> - bool
> - help
> - Compile in platform device definition for I2C controller 5
> -
> -config S3C_DEV_I2C6
> - bool
> - help
> - Compile in platform device definition for I2C controller 6
> -
> -config S3C_DEV_I2C7
> - bool
> - help
> - Compile in platform device definition for I2C controller 7
> -
> config S3C_DEV_FB
> bool
> help
> @@ -135,26 +105,6 @@ config S3C_DEV_USB_HSOTG
> help
> Compile in platform device definition for USB high-speed OtG
>
> -config S3C_DEV_WDT
> - bool
> - help
> - Compile in platform device definition for Watchdog Timer
> -
> -config S3C_DEV_NAND
> - bool
> - help
> - Compile in platform device definition for NAND controller
> -
> -config S3C_DEV_ONENAND
> - bool
> - help
> - Compile in platform device definition for OneNAND controller
> -
> -config S3C_DEV_RTC
> - bool
> - help
> - Compile in platform device definition for RTC
> -
> config S3C64XX_DEV_SPI0
> bool
> help
> diff --git a/arch/arm/mach-s3c/Kconfig.s3c64xx b/arch/arm/mach-s3c/Kconfig.s3c64xx
> index c403d7642f0a..c52c7ce1d8fa 100644
> --- a/arch/arm/mach-s3c/Kconfig.s3c64xx
> +++ b/arch/arm/mach-s3c/Kconfig.s3c64xx
> @@ -15,12 +15,9 @@ menuconfig ARCH_S3C64XX
> select HAVE_TCM
> select PLAT_SAMSUNG
> select PM_GENERIC_DOMAINS if PM
> - select S3C_DEV_NAND if ATAGS
> select S3C_GPIO_TRACK if ATAGS
> - select S3C2410_WATCHDOG
This does not seem right. S3C2410_WATCHDOG is a driver used by all
(including Exynos) platforms.
> select SAMSUNG_ATAGS if ATAGS
> select SAMSUNG_WAKEMASK if PM
> - select WATCHDOG
> help
> Samsung S3C64XX series based systems
>
> @@ -121,10 +118,8 @@ config MACH_WLF_CRAGG_6410
> select S3C_DEV_HSMMC1
> select S3C_DEV_HSMMC2
> select S3C_DEV_I2C1
> - select S3C_DEV_RTC
This as well.
> select S3C_DEV_USB_HOST
> select S3C_DEV_USB_HSOTG
> - select S3C_DEV_WDT
> select SAMSUNG_DEV_KEYPAD
> select SAMSUNG_DEV_PWM
> help
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform is gone, so the led driver can be
> removed as well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> This driver could not be enabled on s3c64xx for a long time
> because of the ARCH_MULTIPLATFORM dependency, so remove it.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On Fri, Oct 21, 2022 at 10:22:28PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform was marked as deprecated a while ago,
> and for the s3c64xx platform, we marked all except one legacy
> board file as unused.
>
> This series removes all of those, leaving only s3c64xx support
> for DT based boots as well as the cragg6410 board file.
>
> About half of the s3c specific drivers were only used on
> the now removed machines, so these drivers can be retired
> as well. I can either merge the driver removal patches through
> the soc tree along with the board file patches, or subsystem
> maintainers can pick them up into their own trees, whichever
> they prefer.
[...]
> Documentation/arm/index.rst | 1 -
> Documentation/arm/samsung-s3c24xx/cpufreq.rst | 77 -
> .../arm/samsung-s3c24xx/eb2410itx.rst | 59 -
> Documentation/arm/samsung-s3c24xx/gpio.rst | 172 --
> Documentation/arm/samsung-s3c24xx/h1940.rst | 41 -
> Documentation/arm/samsung-s3c24xx/index.rst | 20 -
> Documentation/arm/samsung-s3c24xx/nand.rst | 30 -
> .../arm/samsung-s3c24xx/overview.rst | 311 ---
> Documentation/arm/samsung-s3c24xx/s3c2412.rst | 121 -
> Documentation/arm/samsung-s3c24xx/s3c2413.rst | 22 -
> .../arm/samsung-s3c24xx/smdk2440.rst | 57 -
> Documentation/arm/samsung-s3c24xx/suspend.rst | 137 --
> .../arm/samsung-s3c24xx/usb-host.rst | 91 -
> Documentation/arm/samsung/overview.rst | 13 -
What about?:
Documentation/devicetree/bindings/clock/samsung,s3c2410-clock.txt
Documentation/devicetree/bindings/interrupt-controller/samsung,s3c24xx-irq.txt
Documentation/devicetree/bindings/mmc/samsung,s3cmci.txt
Documentation/devicetree/bindings/mtd/samsung-s3c2410.txt
Documentation/devicetree/bindings/usb/s3c2410-usb.txt
Rob
On Mon, Oct 24, 2022, at 14:50, Krzysztof Kozlowski wrote:
> On 21/10/2022 16:27, Arnd Bergmann wrote:
>> From: Arnd Bergmann <[email protected]>
>>
>> The s3c24xx SoC support and its adc driver was removed, so this driver
>> has no remaining users.
>>
>> Signed-off-by: Arnd Bergmann <[email protected]>
>> ---
>> drivers/input/touchscreen/Kconfig | 12 -
>> drivers/input/touchscreen/Makefile | 1 -
>> drivers/input/touchscreen/s3c2410_ts.c | 464 -------------------------
>> 3 files changed, 477 deletions(-)
>
> This also could be usable on S3C64xx, but it seems no one added any DT
> nodes, so:
>
> Reviewed-by: Krzysztof Kozlowski <[email protected]>
Thanks. To clarify, the key bit here is the 'depends on S3C_ADC',
and that driver in turn 'depends on !ARCH_MULTIPLATFORM' since
2014. So even for the boardfile variant of s3c64xx, it was
already impossible to use for a long time without anyone complaining
or trying to fix it.
Arnd
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx SoC support and its adc driver was removed, so this driver
> has no remaining users.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/input/touchscreen/Kconfig | 12 -
> drivers/input/touchscreen/Makefile | 1 -
> drivers/input/touchscreen/s3c2410_ts.c | 464 -------------------------
> 3 files changed, 477 deletions(-)
This also could be usable on S3C64xx, but it seems no one added any DT
nodes, so:
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> All s3c24xx platforms were removed, so these five drivers are all
> obsolete now.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform was removed and this driver is no longer
> needed.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform was removed, so this driver has no
> remaining users.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> All traditional board files except for MACH_WLF_CRAGG_6410 were
> marked as unused, so remove them now.
>
> Cc: Kwangwoo Lee <[email protected]>
> Cc: Peter Korsgaard <[email protected]>
> Cc: Darius Augulis <[email protected]>
> Cc: Maurus Cuelenaere <[email protected]>
> Cc: Ben Dooks <[email protected]>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On Fri, Oct 21, 2022 at 10:27:50PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx SoC support and its adc driver was removed, so this driver
> has no remaining users.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Dmitry Torokhov <[email protected]>
Thanks.
--
Dmitry
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c-adc driver is removed along with the s3c24xx platform,
> so the battery driver is no longer needed either.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 24/10/2022 09:32, Arnd Bergmann wrote:
> On Mon, Oct 24, 2022, at 14:29, Krzysztof Kozlowski wrote:
>
>>> diff --git a/arch/arm/mach-s3c/Kconfig.s3c64xx b/arch/arm/mach-s3c/Kconfig.s3c64xx
>>> index c403d7642f0a..c52c7ce1d8fa 100644
>>> --- a/arch/arm/mach-s3c/Kconfig.s3c64xx
>>> +++ b/arch/arm/mach-s3c/Kconfig.s3c64xx
>>> @@ -15,12 +15,9 @@ menuconfig ARCH_S3C64XX
>>> select HAVE_TCM
>>> select PLAT_SAMSUNG
>>> select PM_GENERIC_DOMAINS if PM
>>> - select S3C_DEV_NAND if ATAGS
>>> select S3C_GPIO_TRACK if ATAGS
>>> - select S3C2410_WATCHDOG
>>
>> This does not seem right. S3C2410_WATCHDOG is a driver used by all
>> (including Exynos) platforms.
>
> I don't remember why I removed this line, probably because I
> removed S3C_DEV_WDT after there are no references to that
> symbol left in board files. The watchdog driver is now DT-only
> with cragg6410 being the last remaining board file.
>
> Ideally we should not 'select' it from here but instead have
> it enabled in the defconfig file, but I agree that would
> be something to do in a separate patch, while the patch here
> should not change the behavior. I'll revert this part.
>
>>> @@ -121,10 +118,8 @@ config MACH_WLF_CRAGG_6410
>>> select S3C_DEV_HSMMC1
>>> select S3C_DEV_HSMMC2
>>> select S3C_DEV_I2C1
>>> - select S3C_DEV_RTC
>>
>> This as well.
>
> I'm fairly sure this can be removed along with S3C_DEV_WDT,
> S3C_DEV_I2C[2-7], S3C_DEV_NAND, and S3C_DEV_ONENAND
> as I remove the symbols due to the lack of references
> from cragg6410.
Yes, you are right. This can be dropped.
>
> I folded in this fixup now:
>
> --- a/arch/arm/mach-s3c/Kconfig.s3c64xx
> +++ b/arch/arm/mach-s3c/Kconfig.s3c64xx
> @@ -16,8 +16,10 @@ menuconfig ARCH_S3C64XX
> select PLAT_SAMSUNG
> select PM_GENERIC_DOMAINS if PM
> select S3C_GPIO_TRACK if ATAGS
> + select S3C2410_WATCHDOG
> select SAMSUNG_ATAGS if ATAGS
> select SAMSUNG_WAKEMASK if PM
> + select WATCHDOG
Looks ok.
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c adc driver was removed along with the s3c24xx platform, so the
> hwmon driver is orphaned and can be removed.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform was removed, so the framebuffer driver is no longer
> needed.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On Mon, Oct 24, 2022, at 00:41, Damien Le Moal wrote:
> On 10/22/22 05:27, Arnd Bergmann wrote:
>> From: Arnd Bergmann <[email protected]>
>>
>> This device was only used by the smdk6410 board file that is now
>> gone, so the driver can be removed as well.
>
> This patch does not apply to the for-6.2 branch of libata tree. I can fix
> that easily, but I am concerned about the fact that this deletes the
> header file include/linux/platform_data/ata-samsung_cf.h, which has some
> function declarations for gpio used under arch/arm/mach-s3c. So If I apply
> this before you queue the other patches for this driver in for-next, we
> may endup with build failures. No ?
Right, that was a mistake on my end. I had tested the full 98-patch
series in sequence and assumed that the driver removal would be
fine to apply separately. I'll just merge this one through the
SoC tree then. I have double-checked the pbk3710 and palmld
drivers, and those should not have a problem like this one.
I still need to send the palmld driver, as the mach-pxa series
had some unrelated issues.
Arnd
On Mon, Oct 24, 2022, at 14:29, Krzysztof Kozlowski wrote:
>> diff --git a/arch/arm/mach-s3c/Kconfig.s3c64xx b/arch/arm/mach-s3c/Kconfig.s3c64xx
>> index c403d7642f0a..c52c7ce1d8fa 100644
>> --- a/arch/arm/mach-s3c/Kconfig.s3c64xx
>> +++ b/arch/arm/mach-s3c/Kconfig.s3c64xx
>> @@ -15,12 +15,9 @@ menuconfig ARCH_S3C64XX
>> select HAVE_TCM
>> select PLAT_SAMSUNG
>> select PM_GENERIC_DOMAINS if PM
>> - select S3C_DEV_NAND if ATAGS
>> select S3C_GPIO_TRACK if ATAGS
>> - select S3C2410_WATCHDOG
>
> This does not seem right. S3C2410_WATCHDOG is a driver used by all
> (including Exynos) platforms.
I don't remember why I removed this line, probably because I
removed S3C_DEV_WDT after there are no references to that
symbol left in board files. The watchdog driver is now DT-only
with cragg6410 being the last remaining board file.
Ideally we should not 'select' it from here but instead have
it enabled in the defconfig file, but I agree that would
be something to do in a separate patch, while the patch here
should not change the behavior. I'll revert this part.
>> @@ -121,10 +118,8 @@ config MACH_WLF_CRAGG_6410
>> select S3C_DEV_HSMMC1
>> select S3C_DEV_HSMMC2
>> select S3C_DEV_I2C1
>> - select S3C_DEV_RTC
>
> This as well.
I'm fairly sure this can be removed along with S3C_DEV_WDT,
S3C_DEV_I2C[2-7], S3C_DEV_NAND, and S3C_DEV_ONENAND
as I remove the symbols due to the lack of references
from cragg6410.
I folded in this fixup now:
--- a/arch/arm/mach-s3c/Kconfig.s3c64xx
+++ b/arch/arm/mach-s3c/Kconfig.s3c64xx
@@ -16,8 +16,10 @@ menuconfig ARCH_S3C64XX
select PLAT_SAMSUNG
select PM_GENERIC_DOMAINS if PM
select S3C_GPIO_TRACK if ATAGS
+ select S3C2410_WATCHDOG
select SAMSUNG_ATAGS if ATAGS
select SAMSUNG_WAKEMASK if PM
+ select WATCHDOG
help
Samsung S3C64XX series based systems
Arnd
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform is gone, so both the udc and hsudc drivers
> can be removed as well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On Mon, Oct 24, 2022, at 15:00, Rob Herring wrote:
> On Fri, Oct 21, 2022 at 10:22:28PM +0200, Arnd Bergmann wrote:
>> From: Arnd Bergmann <[email protected]>
>>
>> The s3c24xx platform was marked as deprecated a while ago,
>> and for the s3c64xx platform, we marked all except one legacy
>> board file as unused.
>>
>> This series removes all of those, leaving only s3c64xx support
>> for DT based boots as well as the cragg6410 board file.
>>
>> About half of the s3c specific drivers were only used on
>> the now removed machines, so these drivers can be retired
>> as well. I can either merge the driver removal patches through
>> the soc tree along with the board file patches, or subsystem
>> maintainers can pick them up into their own trees, whichever
>> they prefer.
>
> [...]
>
>> Documentation/arm/index.rst | 1 -
>> Documentation/arm/samsung-s3c24xx/cpufreq.rst | 77 -
>> .../arm/samsung-s3c24xx/eb2410itx.rst | 59 -
>> Documentation/arm/samsung-s3c24xx/gpio.rst | 172 --
>> Documentation/arm/samsung-s3c24xx/h1940.rst | 41 -
>> Documentation/arm/samsung-s3c24xx/index.rst | 20 -
>> Documentation/arm/samsung-s3c24xx/nand.rst | 30 -
>> .../arm/samsung-s3c24xx/overview.rst | 311 ---
>> Documentation/arm/samsung-s3c24xx/s3c2412.rst | 121 -
>> Documentation/arm/samsung-s3c24xx/s3c2413.rst | 22 -
>> .../arm/samsung-s3c24xx/smdk2440.rst | 57 -
>> Documentation/arm/samsung-s3c24xx/suspend.rst | 137 --
>> .../arm/samsung-s3c24xx/usb-host.rst | 91 -
>> Documentation/arm/samsung/overview.rst | 13 -
>
> What about?:
>
> Documentation/devicetree/bindings/clock/samsung,s3c2410-clock.txt
> Documentation/devicetree/bindings/interrupt-controller/samsung,s3c24xx-irq.txt
> Documentation/devicetree/bindings/mmc/samsung,s3cmci.txt
Good catch!
I've removed these three now and and will add the removal to
the same patch, also the related
samsung,s3c2412-clock.txt and samsung,s3c2443-clock.txt
files.
> Documentation/devicetree/bindings/mtd/samsung-s3c2410.txt
samsung,s3c2412-nand is apparently still used on s3c6400,
and the driver is selectable on that platform, so I think
that should remain in there until we remove s3c64xx in 2024,
even if it is not referenced by the dts files in the kernel.
> Documentation/devicetree/bindings/usb/s3c2410-usb.txt
Similarly, the driver is used on the crag6410 board
(without DT), and probably just works with the DT based
boards if one adds a node to s3c64xx.dtsi.
I've also checked if any of the other removed drivers
matches of_device_id[] strings to see if there are more
bindings to kill off, but I don't see any that have
now become obsolete. It did point me to pxa2xx_ac97_dt_ids,
which Robert already complained about, this apparently
is still used with dts files outside of mainline.
Arnd
On Fri, 21 Oct 2022 at 22:37, Arnd Bergmann <[email protected]> wrote:
>
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Ulf Hansson <[email protected]> # For MMC
Kind regards
Uffe
> ---
> arch/arm/include/debug/s3c24xx.S | 10 -
> arch/arm/mach-s3c/Makefile | 2 -
> arch/arm/mach-s3c/devs.c | 1 -
> arch/arm/mach-s3c/dma.h | 7 -
> arch/arm/mach-s3c/gpio-samsung.h | 7 -
> arch/arm/mach-s3c/irqs.h | 7 -
> arch/arm/mach-s3c/map.h | 7 -
> arch/arm/mach-s3c/pm-core.h | 7 -
> arch/arm/mach-s3c/regs-clock.h | 7 -
> arch/arm/mach-s3c/regs-gpio.h | 7 -
> arch/arm/mach-s3c/regs-irq.h | 7 -
> drivers/clocksource/Kconfig | 2 +-
> drivers/i2c/busses/Kconfig | 3 +-
> drivers/i2c/busses/i2c-s3c2410.c | 72 -------
> drivers/iio/adc/Kconfig | 6 +-
> .../media/platform/samsung/s3c-camif/Kconfig | 8 +-
> drivers/mmc/host/Kconfig | 5 +-
> drivers/mtd/nand/raw/Kconfig | 2 +-
> drivers/mtd/nand/raw/s3c2410.c | 60 ------
> drivers/pinctrl/samsung/pinctrl-samsung.c | 10 -
> drivers/rtc/Kconfig | 8 +-
> drivers/tty/serial/Kconfig | 8 +-
> drivers/tty/serial/samsung_tty.c | 199 ------------------
> drivers/usb/host/Kconfig | 8 +-
> drivers/watchdog/Kconfig | 9 +-
> drivers/watchdog/s3c2410_wdt.c | 84 +-------
> include/linux/clk/samsung.h | 32 ---
> include/linux/soc/samsung/s3c-pm.h | 58 -----
> 28 files changed, 29 insertions(+), 614 deletions(-)
>
> diff --git a/arch/arm/include/debug/s3c24xx.S b/arch/arm/include/debug/s3c24xx.S
> index af873b526677..7ab5e577cd42 100644
> --- a/arch/arm/include/debug/s3c24xx.S
> +++ b/arch/arm/include/debug/s3c24xx.S
> @@ -28,16 +28,6 @@
> and \rd, \rd, #S3C2410_UFSTAT_TXMASK
> .endm
>
> -/* Select the correct implementation depending on the configuration. The
> - * S3C2440 will get selected by default, as these are the most widely
> - * used variants of these
> -*/
> -
> -#if defined(CONFIG_DEBUG_S3C2410_UART)
> -#define fifo_full fifo_full_s3c2410
> -#define fifo_level fifo_level_s3c2410
> -#endif
> -
> /* include the reset of the code which will do the work */
>
> #include <debug/samsung.S>
> diff --git a/arch/arm/mach-s3c/Makefile b/arch/arm/mach-s3c/Makefile
> index e7f18039b149..a5135137e648 100644
> --- a/arch/arm/mach-s3c/Makefile
> +++ b/arch/arm/mach-s3c/Makefile
> @@ -2,9 +2,7 @@
> #
> # Copyright 2009 Simtec Electronics
>
> -ifdef CONFIG_ARCH_S3C64XX
> include $(src)/Makefile.s3c64xx
> -endif
>
> # Objects we always build independent of SoC choice
>
> diff --git a/arch/arm/mach-s3c/devs.c b/arch/arm/mach-s3c/devs.c
> index 9ac07c023adf..a31d1c3038e8 100644
> --- a/arch/arm/mach-s3c/devs.c
> +++ b/arch/arm/mach-s3c/devs.c
> @@ -29,7 +29,6 @@
> #include <linux/sizes.h>
> #include <linux/platform_data/s3c-hsudc.h>
> #include <linux/platform_data/s3c-hsotg.h>
> -#include <linux/platform_data/dma-s3c24xx.h>
>
> #include <linux/platform_data/media/s5p_hdmi.h>
>
> diff --git a/arch/arm/mach-s3c/dma.h b/arch/arm/mach-s3c/dma.h
> index 59a4578c5f00..48057cb90070 100644
> --- a/arch/arm/mach-s3c/dma.h
> +++ b/arch/arm/mach-s3c/dma.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "dma-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "dma-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/gpio-samsung.h b/arch/arm/mach-s3c/gpio-samsung.h
> index 02f6f4a96862..4233515eddaa 100644
> --- a/arch/arm/mach-s3c/gpio-samsung.h
> +++ b/arch/arm/mach-s3c/gpio-samsung.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "gpio-samsung-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "gpio-samsung-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/irqs.h b/arch/arm/mach-s3c/irqs.h
> index 0bff1c1c8eb0..3ff0e0963080 100644
> --- a/arch/arm/mach-s3c/irqs.h
> +++ b/arch/arm/mach-s3c/irqs.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "irqs-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "irqs-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/map.h b/arch/arm/mach-s3c/map.h
> index 7cfb517d4886..778d6f81cb2b 100644
> --- a/arch/arm/mach-s3c/map.h
> +++ b/arch/arm/mach-s3c/map.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "map-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "map-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/pm-core.h b/arch/arm/mach-s3c/pm-core.h
> index b0e1d277f599..3e0c2df79120 100644
> --- a/arch/arm/mach-s3c/pm-core.h
> +++ b/arch/arm/mach-s3c/pm-core.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "pm-core-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "pm-core-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/regs-clock.h b/arch/arm/mach-s3c/regs-clock.h
> index 7df31f203d28..fc7e3886b07c 100644
> --- a/arch/arm/mach-s3c/regs-clock.h
> +++ b/arch/arm/mach-s3c/regs-clock.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "regs-clock-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "regs-clock-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/regs-gpio.h b/arch/arm/mach-s3c/regs-gpio.h
> index 0d41cb76d440..4e08e8609663 100644
> --- a/arch/arm/mach-s3c/regs-gpio.h
> +++ b/arch/arm/mach-s3c/regs-gpio.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "regs-gpio-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "regs-gpio-s3c64xx.h"
> -#endif
> diff --git a/arch/arm/mach-s3c/regs-irq.h b/arch/arm/mach-s3c/regs-irq.h
> index 57f0dda8dbf5..4243daa54bd1 100644
> --- a/arch/arm/mach-s3c/regs-irq.h
> +++ b/arch/arm/mach-s3c/regs-irq.h
> @@ -1,9 +1,2 @@
> /* SPDX-License-Identifier: GPL-2.0 */
> -
> -#ifdef CONFIG_ARCH_S3C24XX
> -#include "regs-irq-s3c24xx.h"
> -#endif
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> #include "regs-irq-s3c64xx.h"
> -#endif
> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> index 4469e7f555e9..fc10ecc3602d 100644
> --- a/drivers/clocksource/Kconfig
> +++ b/drivers/clocksource/Kconfig
> @@ -441,7 +441,7 @@ config CLKSRC_EXYNOS_MCT
> config CLKSRC_SAMSUNG_PWM
> bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
> depends on HAS_IOMEM
> - depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
> + depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
> help
> This is a new clocksource driver for the PWM timer found in
> Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
> diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
> index f427c8ea5c7b..84d21e0a7cdf 100644
> --- a/drivers/i2c/busses/Kconfig
> +++ b/drivers/i2c/busses/Kconfig
> @@ -1009,8 +1009,7 @@ config I2C_RZV2M
>
> config I2C_S3C2410
> tristate "S3C/Exynos I2C Driver"
> - depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || \
> - ARCH_S5PV210 || COMPILE_TEST
> + depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
> help
> Say Y here to include support for I2C controller in the
> Samsung SoCs (S3C, S5Pv210, Exynos).
> diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
> index 36dab9cd208c..45e9df81345a 100644
> --- a/drivers/i2c/busses/i2c-s3c2410.c
> +++ b/drivers/i2c/busses/i2c-s3c2410.c
> @@ -116,9 +116,6 @@ struct s3c24xx_i2c {
> struct s3c2410_platform_i2c *pdata;
> struct gpio_desc *gpios[2];
> struct pinctrl *pctrl;
> -#if defined(CONFIG_ARM_S3C24XX_CPUFREQ)
> - struct notifier_block freq_transition;
> -#endif
> struct regmap *sysreg;
> unsigned int sys_i2c_cfg;
> };
> @@ -885,65 +882,6 @@ static int s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got)
> return 0;
> }
>
> -#if defined(CONFIG_ARM_S3C24XX_CPUFREQ)
> -
> -#define freq_to_i2c(_n) container_of(_n, struct s3c24xx_i2c, freq_transition)
> -
> -static int s3c24xx_i2c_cpufreq_transition(struct notifier_block *nb,
> - unsigned long val, void *data)
> -{
> - struct s3c24xx_i2c *i2c = freq_to_i2c(nb);
> - unsigned int got;
> - int delta_f;
> - int ret;
> -
> - delta_f = clk_get_rate(i2c->clk) - i2c->clkrate;
> -
> - /* if we're post-change and the input clock has slowed down
> - * or at pre-change and the clock is about to speed up, then
> - * adjust our clock rate. <0 is slow, >0 speedup.
> - */
> -
> - if ((val == CPUFREQ_POSTCHANGE && delta_f < 0) ||
> - (val == CPUFREQ_PRECHANGE && delta_f > 0)) {
> - i2c_lock_bus(&i2c->adap, I2C_LOCK_ROOT_ADAPTER);
> - ret = s3c24xx_i2c_clockrate(i2c, &got);
> - i2c_unlock_bus(&i2c->adap, I2C_LOCK_ROOT_ADAPTER);
> -
> - if (ret < 0)
> - dev_err(i2c->dev, "cannot find frequency (%d)\n", ret);
> - else
> - dev_info(i2c->dev, "setting freq %d\n", got);
> - }
> -
> - return 0;
> -}
> -
> -static inline int s3c24xx_i2c_register_cpufreq(struct s3c24xx_i2c *i2c)
> -{
> - i2c->freq_transition.notifier_call = s3c24xx_i2c_cpufreq_transition;
> -
> - return cpufreq_register_notifier(&i2c->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -static inline void s3c24xx_i2c_deregister_cpufreq(struct s3c24xx_i2c *i2c)
> -{
> - cpufreq_unregister_notifier(&i2c->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -#else
> -static inline int s3c24xx_i2c_register_cpufreq(struct s3c24xx_i2c *i2c)
> -{
> - return 0;
> -}
> -
> -static inline void s3c24xx_i2c_deregister_cpufreq(struct s3c24xx_i2c *i2c)
> -{
> -}
> -#endif
> -
> #ifdef CONFIG_OF
> static int s3c24xx_i2c_parse_dt_gpio(struct s3c24xx_i2c *i2c)
> {
> @@ -1152,13 +1090,6 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
> }
> }
>
> - ret = s3c24xx_i2c_register_cpufreq(i2c);
> - if (ret < 0) {
> - dev_err(&pdev->dev, "failed to register cpufreq notifier\n");
> - clk_unprepare(i2c->clk);
> - return ret;
> - }
> -
> /*
> * Note, previous versions of the driver used i2c_add_adapter()
> * to add the bus at any number. We now pass the bus number via
> @@ -1175,7 +1106,6 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
> ret = i2c_add_numbered_adapter(&i2c->adap);
> if (ret < 0) {
> pm_runtime_disable(&pdev->dev);
> - s3c24xx_i2c_deregister_cpufreq(i2c);
> clk_unprepare(i2c->clk);
> return ret;
> }
> @@ -1192,8 +1122,6 @@ static int s3c24xx_i2c_remove(struct platform_device *pdev)
>
> pm_runtime_disable(&pdev->dev);
>
> - s3c24xx_i2c_deregister_cpufreq(i2c);
> -
> i2c_del_adapter(&i2c->adap);
>
> return 0;
> diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig
> index 791612ca6012..9de7f05d40e2 100644
> --- a/drivers/iio/adc/Kconfig
> +++ b/drivers/iio/adc/Kconfig
> @@ -437,11 +437,11 @@ config EP93XX_ADC
>
> config EXYNOS_ADC
> tristate "Exynos ADC driver support"
> - depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
> + depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
> depends on HAS_IOMEM
> help
> - Driver for the ADC block found in the Samsung S3C (S3C2410, S3C2416,
> - S3C2440, S3C2443, S3C6410), S5Pv210 and Exynos SoCs.
> + Driver for the ADC block found in the Samsung S3C6410, S5Pv210 and
> + Exynos SoCs.
> Choose Y here only if you build for such Samsung SoC.
>
> To compile this driver as a module, choose M here: the module will be
> diff --git a/drivers/media/platform/samsung/s3c-camif/Kconfig b/drivers/media/platform/samsung/s3c-camif/Kconfig
> index 8cb8d1ac3edc..f359f6382fff 100644
> --- a/drivers/media/platform/samsung/s3c-camif/Kconfig
> +++ b/drivers/media/platform/samsung/s3c-camif/Kconfig
> @@ -1,15 +1,15 @@
> # SPDX-License-Identifier: GPL-2.0-only
> config VIDEO_S3C_CAMIF
> - tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver"
> + tristate "Samsung 3C64XX SoC Camera Interface driver"
> depends on V4L_PLATFORM_DRIVERS
> depends on VIDEO_DEV && I2C && PM
> - depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST
> + depends on ARCH_S3C64XX || COMPILE_TEST
> select MEDIA_CONTROLLER
> select VIDEO_V4L2_SUBDEV_API
> select VIDEOBUF2_DMA_CONTIG
> help
> - This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera
> - host interface (CAMIF).
> + This is a v4l2 driver for s3c64xx SoC series camera host interface
> + (CAMIF).
>
> To compile this driver as a module, choose M here: the module
> will be called s3c-camif.
> diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
> index 84dd37ff2735..79d8ddf1f616 100644
> --- a/drivers/mmc/host/Kconfig
> +++ b/drivers/mmc/host/Kconfig
> @@ -312,9 +312,8 @@ config MMC_SDHCI_S3C
> depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
> help
> This selects the Secure Digital Host Controller Interface (SDHCI)
> - often referrered to as the HSMMC block in some of the Samsung S3C
> - (S3C2416, S3C2443, S3C6410), S5Pv210 and Exynos (Exynso4210,
> - Exynos4412) SoCs.
> + often referrered to as the HSMMC block in some of the Samsung
> + S3C6410, S5Pv210 and Exynos (Exynso4210, Exynos4412) SoCs.
>
> If you have a controller with this interface (thereforeyou build for
> such Samsung SoC), say Y or M here.
> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
> index 280a55139387..a347833b8f29 100644
> --- a/drivers/mtd/nand/raw/Kconfig
> +++ b/drivers/mtd/nand/raw/Kconfig
> @@ -79,7 +79,7 @@ config MTD_NAND_NDFC
>
> config MTD_NAND_S3C2410
> tristate "Samsung S3C NAND controller"
> - depends on ARCH_S3C24XX || ARCH_S3C64XX
> + depends on ARCH_S3C64XX
> help
> This enables the NAND flash controller on the S3C24xx and S3C64xx
> SoCs
> diff --git a/drivers/mtd/nand/raw/s3c2410.c b/drivers/mtd/nand/raw/s3c2410.c
> index f0a4535c812a..80d96f94d6cb 100644
> --- a/drivers/mtd/nand/raw/s3c2410.c
> +++ b/drivers/mtd/nand/raw/s3c2410.c
> @@ -166,10 +166,6 @@ struct s3c2410_nand_info {
> enum s3c_nand_clk_state clk_state;
>
> enum s3c_cpu_type cpu_type;
> -
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> - struct notifier_block freq_transition;
> -#endif
> };
>
> struct s3c24XX_nand_devtype_data {
> @@ -711,54 +707,6 @@ static void s3c2440_nand_write_buf(struct nand_chip *this, const u_char *buf,
> }
> }
>
> -/* cpufreq driver support */
> -
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> -
> -static int s3c2410_nand_cpufreq_transition(struct notifier_block *nb,
> - unsigned long val, void *data)
> -{
> - struct s3c2410_nand_info *info;
> - unsigned long newclk;
> -
> - info = container_of(nb, struct s3c2410_nand_info, freq_transition);
> - newclk = clk_get_rate(info->clk);
> -
> - if ((val == CPUFREQ_POSTCHANGE && newclk < info->clk_rate) ||
> - (val == CPUFREQ_PRECHANGE && newclk > info->clk_rate)) {
> - s3c2410_nand_setrate(info);
> - }
> -
> - return 0;
> -}
> -
> -static inline int s3c2410_nand_cpufreq_register(struct s3c2410_nand_info *info)
> -{
> - info->freq_transition.notifier_call = s3c2410_nand_cpufreq_transition;
> -
> - return cpufreq_register_notifier(&info->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -static inline void
> -s3c2410_nand_cpufreq_deregister(struct s3c2410_nand_info *info)
> -{
> - cpufreq_unregister_notifier(&info->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -#else
> -static inline int s3c2410_nand_cpufreq_register(struct s3c2410_nand_info *info)
> -{
> - return 0;
> -}
> -
> -static inline void
> -s3c2410_nand_cpufreq_deregister(struct s3c2410_nand_info *info)
> -{
> -}
> -#endif
> -
> /* device management functions */
>
> static int s3c24xx_nand_remove(struct platform_device *pdev)
> @@ -768,8 +716,6 @@ static int s3c24xx_nand_remove(struct platform_device *pdev)
> if (info == NULL)
> return 0;
>
> - s3c2410_nand_cpufreq_deregister(info);
> -
> /* Release all our mtds and their partitions, then go through
> * freeing the resources used
> */
> @@ -1184,12 +1130,6 @@ static int s3c24xx_nand_probe(struct platform_device *pdev)
> if (err != 0)
> goto exit_error;
>
> - err = s3c2410_nand_cpufreq_register(info);
> - if (err < 0) {
> - dev_err(&pdev->dev, "failed to init cpufreq support\n");
> - goto exit_error;
> - }
> -
> if (allow_clk_suspend(info)) {
> dev_info(&pdev->dev, "clock idle support enabled\n");
> s3c2410_nand_clk_set_state(info, CLOCK_SUSPEND);
> diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.c b/drivers/pinctrl/samsung/pinctrl-samsung.c
> index bd13b5ef246d..1a478854293f 100644
> --- a/drivers/pinctrl/samsung/pinctrl-samsung.c
> +++ b/drivers/pinctrl/samsung/pinctrl-samsung.c
> @@ -1322,16 +1322,6 @@ static const struct of_device_id samsung_pinctrl_dt_match[] = {
> #ifdef CONFIG_PINCTRL_S3C64XX
> { .compatible = "samsung,s3c64xx-pinctrl",
> .data = &s3c64xx_of_data },
> -#endif
> -#ifdef CONFIG_PINCTRL_S3C24XX
> - { .compatible = "samsung,s3c2412-pinctrl",
> - .data = &s3c2412_of_data },
> - { .compatible = "samsung,s3c2416-pinctrl",
> - .data = &s3c2416_of_data },
> - { .compatible = "samsung,s3c2440-pinctrl",
> - .data = &s3c2440_of_data },
> - { .compatible = "samsung,s3c2450-pinctrl",
> - .data = &s3c2450_of_data },
> #endif
> {},
> };
> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
> index 312dccfa3f18..d13ca620ea5d 100644
> --- a/drivers/rtc/Kconfig
> +++ b/drivers/rtc/Kconfig
> @@ -1406,18 +1406,14 @@ config RTC_DRV_OMAP
>
> config RTC_DRV_S3C
> tristate "Samsung S3C series SoC RTC"
> - depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S3C24XX || ARCH_S5PV210 || \
> + depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || \
> COMPILE_TEST
> help
> RTC (Realtime Clock) driver for the clock inbuilt into the
> - Samsung S3C24XX series of SoCs. This can provide periodic
> + Samsung S3C64XX series of SoCs. This can provide periodic
> interrupt rates from 1Hz to 64Hz for user programs, and
> wakeup from Alarm.
>
> - The driver currently supports the common features on all the
> - S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
> - and S3C2442.
> -
> This driver can also be build as a module. If so, the module
> will be called rtc-s3c.
>
> diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
> index 434f83168546..3ba8a39655a3 100644
> --- a/drivers/tty/serial/Kconfig
> +++ b/drivers/tty/serial/Kconfig
> @@ -242,23 +242,23 @@ config SERIAL_SAMSUNG
> select SERIAL_CORE
> help
> Support for the on-chip UARTs on the Samsung
> - S3C24xx/S3C64xx/S5Pv210/Exynos and Apple M1 SoCs, providing
> + S3C64xx/S5Pv210/Exynos and Apple M1 SoCs, providing
> /dev/ttySAC0, 1 and 2 (note, some machines may not provide all of
> these ports, depending on how the serial port pins are configured.
> +
> Choose Y/M here only if you build for such SoC.
>
> config SERIAL_SAMSUNG_UARTS_4
> bool
> depends on SERIAL_SAMSUNG
> - default y if !(CPU_S3C2410 || CPU_S3C2412 || CPU_S3C2440 || CPU_S3C2442)
> + default y
> help
> Internal node for the common case of 4 Samsung compatible UARTs
>
> config SERIAL_SAMSUNG_UARTS
> int
> depends on SERIAL_SAMSUNG
> - default 4 if SERIAL_SAMSUNG_UARTS_4 || CPU_S3C2416
> - default 3
> + default 4
> help
> Select the number of available UART ports for the Samsung S3C
> serial driver
> diff --git a/drivers/tty/serial/samsung_tty.c b/drivers/tty/serial/samsung_tty.c
> index 77d1363029f5..5adf3963b2f6 100644
> --- a/drivers/tty/serial/samsung_tty.c
> +++ b/drivers/tty/serial/samsung_tty.c
> @@ -152,10 +152,6 @@ struct s3c24xx_uart_port {
> const struct s3c2410_uartcfg *cfg;
>
> struct s3c24xx_uart_dma *dma;
> -
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> - struct notifier_block freq_transition;
> -#endif
> };
>
> static void s3c24xx_serial_tx_chars(struct s3c24xx_uart_port *ourport);
> @@ -1859,93 +1855,6 @@ static void s3c24xx_serial_resetport(struct uart_port *port,
> udelay(1);
> }
>
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> -
> -static int s3c24xx_serial_cpufreq_transition(struct notifier_block *nb,
> - unsigned long val, void *data)
> -{
> - struct s3c24xx_uart_port *port;
> - struct uart_port *uport;
> -
> - port = container_of(nb, struct s3c24xx_uart_port, freq_transition);
> - uport = &port->port;
> -
> - /* check to see if port is enabled */
> -
> - if (port->pm_level != 0)
> - return 0;
> -
> - /* try and work out if the baudrate is changing, we can detect
> - * a change in rate, but we do not have support for detecting
> - * a disturbance in the clock-rate over the change.
> - */
> -
> - if (IS_ERR(port->baudclk))
> - goto exit;
> -
> - if (port->baudclk_rate == clk_get_rate(port->baudclk))
> - goto exit;
> -
> - if (val == CPUFREQ_PRECHANGE) {
> - /* we should really shut the port down whilst the
> - * frequency change is in progress.
> - */
> -
> - } else if (val == CPUFREQ_POSTCHANGE) {
> - struct ktermios *termios;
> - struct tty_struct *tty;
> -
> - if (uport->state == NULL)
> - goto exit;
> -
> - tty = uport->state->port.tty;
> -
> - if (tty == NULL)
> - goto exit;
> -
> - termios = &tty->termios;
> -
> - if (termios == NULL) {
> - dev_warn(uport->dev, "%s: no termios?\n", __func__);
> - goto exit;
> - }
> -
> - s3c24xx_serial_set_termios(uport, termios, NULL);
> - }
> -
> -exit:
> - return 0;
> -}
> -
> -static inline int
> -s3c24xx_serial_cpufreq_register(struct s3c24xx_uart_port *port)
> -{
> - port->freq_transition.notifier_call = s3c24xx_serial_cpufreq_transition;
> -
> - return cpufreq_register_notifier(&port->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -static inline void
> -s3c24xx_serial_cpufreq_deregister(struct s3c24xx_uart_port *port)
> -{
> - cpufreq_unregister_notifier(&port->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -#else
> -static inline int
> -s3c24xx_serial_cpufreq_register(struct s3c24xx_uart_port *port)
> -{
> - return 0;
> -}
> -
> -static inline void
> -s3c24xx_serial_cpufreq_deregister(struct s3c24xx_uart_port *port)
> -{
> -}
> -#endif
> -
> static int s3c24xx_serial_enable_baudclk(struct s3c24xx_uart_port *ourport)
> {
> struct device *dev = ourport->port.dev;
> @@ -2237,10 +2146,6 @@ static int s3c24xx_serial_probe(struct platform_device *pdev)
> if (!IS_ERR(ourport->baudclk))
> clk_disable_unprepare(ourport->baudclk);
>
> - ret = s3c24xx_serial_cpufreq_register(ourport);
> - if (ret < 0)
> - dev_err(&pdev->dev, "failed to add cpufreq notifier\n");
> -
> probe_index++;
>
> return 0;
> @@ -2251,7 +2156,6 @@ static int s3c24xx_serial_remove(struct platform_device *dev)
> struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
>
> if (port) {
> - s3c24xx_serial_cpufreq_deregister(to_ourport(port));
> uart_remove_one_port(&s3c24xx_uart_drv, port);
> }
>
> @@ -2589,94 +2493,6 @@ static struct console s3c24xx_serial_console = {
> };
> #endif /* CONFIG_SERIAL_SAMSUNG_CONSOLE */
>
> -#ifdef CONFIG_CPU_S3C2410
> -static const struct s3c24xx_serial_drv_data s3c2410_serial_drv_data = {
> - .info = {
> - .name = "Samsung S3C2410 UART",
> - .type = TYPE_S3C24XX,
> - .port_type = PORT_S3C2410,
> - .fifosize = 16,
> - .rx_fifomask = S3C2410_UFSTAT_RXMASK,
> - .rx_fifoshift = S3C2410_UFSTAT_RXSHIFT,
> - .rx_fifofull = S3C2410_UFSTAT_RXFULL,
> - .tx_fifofull = S3C2410_UFSTAT_TXFULL,
> - .tx_fifomask = S3C2410_UFSTAT_TXMASK,
> - .tx_fifoshift = S3C2410_UFSTAT_TXSHIFT,
> - .def_clk_sel = S3C2410_UCON_CLKSEL0,
> - .num_clks = 2,
> - .clksel_mask = S3C2410_UCON_CLKMASK,
> - .clksel_shift = S3C2410_UCON_CLKSHIFT,
> - },
> - .def_cfg = {
> - .ucon = S3C2410_UCON_DEFAULT,
> - .ufcon = S3C2410_UFCON_DEFAULT,
> - },
> -};
> -#define S3C2410_SERIAL_DRV_DATA (&s3c2410_serial_drv_data)
> -#else
> -#define S3C2410_SERIAL_DRV_DATA NULL
> -#endif
> -
> -#ifdef CONFIG_CPU_S3C2412
> -static const struct s3c24xx_serial_drv_data s3c2412_serial_drv_data = {
> - .info = {
> - .name = "Samsung S3C2412 UART",
> - .type = TYPE_S3C24XX,
> - .port_type = PORT_S3C2412,
> - .fifosize = 64,
> - .has_divslot = 1,
> - .rx_fifomask = S3C2440_UFSTAT_RXMASK,
> - .rx_fifoshift = S3C2440_UFSTAT_RXSHIFT,
> - .rx_fifofull = S3C2440_UFSTAT_RXFULL,
> - .tx_fifofull = S3C2440_UFSTAT_TXFULL,
> - .tx_fifomask = S3C2440_UFSTAT_TXMASK,
> - .tx_fifoshift = S3C2440_UFSTAT_TXSHIFT,
> - .def_clk_sel = S3C2410_UCON_CLKSEL2,
> - .num_clks = 4,
> - .clksel_mask = S3C2412_UCON_CLKMASK,
> - .clksel_shift = S3C2412_UCON_CLKSHIFT,
> - },
> - .def_cfg = {
> - .ucon = S3C2410_UCON_DEFAULT,
> - .ufcon = S3C2410_UFCON_DEFAULT,
> - },
> -};
> -#define S3C2412_SERIAL_DRV_DATA (&s3c2412_serial_drv_data)
> -#else
> -#define S3C2412_SERIAL_DRV_DATA NULL
> -#endif
> -
> -#if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2416) || \
> - defined(CONFIG_CPU_S3C2443) || defined(CONFIG_CPU_S3C2442)
> -static const struct s3c24xx_serial_drv_data s3c2440_serial_drv_data = {
> - .info = {
> - .name = "Samsung S3C2440 UART",
> - .type = TYPE_S3C24XX,
> - .port_type = PORT_S3C2440,
> - .fifosize = 64,
> - .has_divslot = 1,
> - .rx_fifomask = S3C2440_UFSTAT_RXMASK,
> - .rx_fifoshift = S3C2440_UFSTAT_RXSHIFT,
> - .rx_fifofull = S3C2440_UFSTAT_RXFULL,
> - .tx_fifofull = S3C2440_UFSTAT_TXFULL,
> - .tx_fifomask = S3C2440_UFSTAT_TXMASK,
> - .tx_fifoshift = S3C2440_UFSTAT_TXSHIFT,
> - .def_clk_sel = S3C2410_UCON_CLKSEL2,
> - .num_clks = 4,
> - .clksel_mask = S3C2412_UCON_CLKMASK,
> - .clksel_shift = S3C2412_UCON_CLKSHIFT,
> - .ucon_mask = S3C2440_UCON0_DIVMASK,
> - },
> - .def_cfg = {
> - .ucon = S3C2410_UCON_DEFAULT,
> - .ufcon = S3C2410_UFCON_DEFAULT,
> - },
> -};
> -#define S3C2440_SERIAL_DRV_DATA (&s3c2440_serial_drv_data)
> -#else
> -#define S3C2440_SERIAL_DRV_DATA NULL
> -#endif
> -
> #if defined(CONFIG_CPU_S3C6400) || defined(CONFIG_CPU_S3C6410)
> static const struct s3c24xx_serial_drv_data s3c6400_serial_drv_data = {
> .info = {
> @@ -2845,15 +2661,6 @@ static const struct s3c24xx_serial_drv_data artpec8_serial_drv_data = {
>
> static const struct platform_device_id s3c24xx_serial_driver_ids[] = {
> {
> - .name = "s3c2410-uart",
> - .driver_data = (kernel_ulong_t)S3C2410_SERIAL_DRV_DATA,
> - }, {
> - .name = "s3c2412-uart",
> - .driver_data = (kernel_ulong_t)S3C2412_SERIAL_DRV_DATA,
> - }, {
> - .name = "s3c2440-uart",
> - .driver_data = (kernel_ulong_t)S3C2440_SERIAL_DRV_DATA,
> - }, {
> .name = "s3c6400-uart",
> .driver_data = (kernel_ulong_t)S3C6400_SERIAL_DRV_DATA,
> }, {
> @@ -2881,12 +2688,6 @@ MODULE_DEVICE_TABLE(platform, s3c24xx_serial_driver_ids);
>
> #ifdef CONFIG_OF
> static const struct of_device_id s3c24xx_uart_dt_match[] = {
> - { .compatible = "samsung,s3c2410-uart",
> - .data = S3C2410_SERIAL_DRV_DATA },
> - { .compatible = "samsung,s3c2412-uart",
> - .data = S3C2412_SERIAL_DRV_DATA },
> - { .compatible = "samsung,s3c2440-uart",
> - .data = S3C2440_SERIAL_DRV_DATA },
> { .compatible = "samsung,s3c6400-uart",
> .data = S3C6400_SERIAL_DRV_DATA },
> { .compatible = "samsung,s5pv210-uart",
> diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> index fb7b603dddf8..8ba4fe9364b1 100644
> --- a/drivers/usb/host/Kconfig
> +++ b/drivers/usb/host/Kconfig
> @@ -443,12 +443,12 @@ config USB_OHCI_HCD_STI
> STMicroelectronics consumer electronics SoC's.
>
> config USB_OHCI_HCD_S3C2410
> - tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
> - depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX || COMPILE_TEST)
> - default y if (ARCH_S3C24XX || ARCH_S3C64XX)
> + tristate "OHCI support for Samsung S3C64xx SoC series"
> + depends on USB_OHCI_HCD && (ARCH_S3C64XX || COMPILE_TEST)
> + default ARCH_S3C64XX
> help
> Enables support for the on-chip OHCI controller on
> - S3C24xx/S3C64xx chips.
> + S3C64xx chips.
>
> config USB_OHCI_HCD_LPC32XX
> tristate "Support for LPC on-chip OHCI USB controller"
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index b64bc49c7f30..eee7df45347a 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -491,14 +491,13 @@ config IXP4XX_WATCHDOG
> Say N if you are unsure.
>
> config S3C2410_WATCHDOG
> - tristate "S3C2410 Watchdog"
> - depends on ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || \
> - COMPILE_TEST
> + tristate "S3C6410/S5Pv210/Exynos Watchdog"
> + depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
> select WATCHDOG_CORE
> select MFD_SYSCON if ARCH_EXYNOS
> help
> - Watchdog timer block in the Samsung S3C24xx, S3C64xx, S5Pv210 and
> - Exynos SoCs. This will reboot the system when the timer expires with
> + Watchdog timer block in the Samsung S3C64xx, S5Pv210 and Exynos
> + SoCs. This will reboot the system when the timer expires with
> the watchdog enabled.
>
> The driver is limited by the speed of the system's PCLK
> diff --git a/drivers/watchdog/s3c2410_wdt.c b/drivers/watchdog/s3c2410_wdt.c
> index d3fc8ed886ff..200ba236a72e 100644
> --- a/drivers/watchdog/s3c2410_wdt.c
> +++ b/drivers/watchdog/s3c2410_wdt.c
> @@ -562,73 +562,6 @@ static irqreturn_t s3c2410wdt_irq(int irqno, void *param)
> return IRQ_HANDLED;
> }
>
> -#ifdef CONFIG_ARM_S3C24XX_CPUFREQ
> -
> -static int s3c2410wdt_cpufreq_transition(struct notifier_block *nb,
> - unsigned long val, void *data)
> -{
> - int ret;
> - struct s3c2410_wdt *wdt = freq_to_wdt(nb);
> -
> - if (!s3c2410wdt_is_running(wdt))
> - goto done;
> -
> - if (val == CPUFREQ_PRECHANGE) {
> - /* To ensure that over the change we don't cause the
> - * watchdog to trigger, we perform an keep-alive if
> - * the watchdog is running.
> - */
> -
> - s3c2410wdt_keepalive(&wdt->wdt_device);
> - } else if (val == CPUFREQ_POSTCHANGE) {
> - s3c2410wdt_stop(&wdt->wdt_device);
> -
> - ret = s3c2410wdt_set_heartbeat(&wdt->wdt_device,
> - wdt->wdt_device.timeout);
> -
> - if (ret >= 0)
> - s3c2410wdt_start(&wdt->wdt_device);
> - else
> - goto err;
> - }
> -
> -done:
> - return 0;
> -
> - err:
> - dev_err(wdt->dev, "cannot set new value for timeout %d\n",
> - wdt->wdt_device.timeout);
> - return ret;
> -}
> -
> -static inline int s3c2410wdt_cpufreq_register(struct s3c2410_wdt *wdt)
> -{
> - wdt->freq_transition.notifier_call = s3c2410wdt_cpufreq_transition;
> -
> - return cpufreq_register_notifier(&wdt->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -static inline void s3c2410wdt_cpufreq_deregister(struct s3c2410_wdt *wdt)
> -{
> - wdt->freq_transition.notifier_call = s3c2410wdt_cpufreq_transition;
> -
> - cpufreq_unregister_notifier(&wdt->freq_transition,
> - CPUFREQ_TRANSITION_NOTIFIER);
> -}
> -
> -#else
> -
> -static inline int s3c2410wdt_cpufreq_register(struct s3c2410_wdt *wdt)
> -{
> - return 0;
> -}
> -
> -static inline void s3c2410wdt_cpufreq_deregister(struct s3c2410_wdt *wdt)
> -{
> -}
> -#endif
> -
> static inline unsigned int s3c2410wdt_get_bootstatus(struct s3c2410_wdt *wdt)
> {
> unsigned int rst_stat;
> @@ -761,12 +694,6 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
> wdt->wdt_device.min_timeout = 1;
> wdt->wdt_device.max_timeout = s3c2410wdt_max_timeout(wdt);
>
> - ret = s3c2410wdt_cpufreq_register(wdt);
> - if (ret < 0) {
> - dev_err(dev, "failed to register cpufreq\n");
> - goto err_src_clk;
> - }
> -
> watchdog_set_drvdata(&wdt->wdt_device, wdt);
>
> /* see if we can actually set the requested timer margin, and if
> @@ -783,7 +710,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
> S3C2410_WATCHDOG_DEFAULT_TIME);
> } else {
> dev_err(dev, "failed to use default timeout\n");
> - goto err_cpufreq;
> + goto err_src_clk;
> }
> }
>
> @@ -791,7 +718,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
> pdev->name, pdev);
> if (ret != 0) {
> dev_err(dev, "failed to install irq (%d)\n", ret);
> - goto err_cpufreq;
> + goto err_src_clk;
> }
>
> watchdog_set_nowayout(&wdt->wdt_device, nowayout);
> @@ -817,7 +744,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
>
> ret = watchdog_register_device(&wdt->wdt_device);
> if (ret)
> - goto err_cpufreq;
> + goto err_src_clk;
>
> ret = s3c2410wdt_enable(wdt, true);
> if (ret < 0)
> @@ -839,9 +766,6 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
> err_unregister:
> watchdog_unregister_device(&wdt->wdt_device);
>
> - err_cpufreq:
> - s3c2410wdt_cpufreq_deregister(wdt);
> -
> err_src_clk:
> clk_disable_unprepare(wdt->src_clk);
>
> @@ -862,8 +786,6 @@ static int s3c2410wdt_remove(struct platform_device *dev)
>
> watchdog_unregister_device(&wdt->wdt_device);
>
> - s3c2410wdt_cpufreq_deregister(wdt);
> -
> clk_disable_unprepare(wdt->src_clk);
> clk_disable_unprepare(wdt->bus_clk);
>
> diff --git a/include/linux/clk/samsung.h b/include/linux/clk/samsung.h
> index 38b774001712..0cf7aac83439 100644
> --- a/include/linux/clk/samsung.h
> +++ b/include/linux/clk/samsung.h
> @@ -21,36 +21,4 @@ static inline void s3c64xx_clk_init(struct device_node *np,
> bool s3c6400, void __iomem *base) { }
> #endif /* CONFIG_S3C64XX_COMMON_CLK */
>
> -#ifdef CONFIG_S3C2410_COMMON_CLK
> -void s3c2410_common_clk_init(struct device_node *np, unsigned long xti_f,
> - int current_soc,
> - void __iomem *reg_base);
> -#else
> -static inline void s3c2410_common_clk_init(struct device_node *np,
> - unsigned long xti_f,
> - int current_soc,
> - void __iomem *reg_base) { }
> -#endif /* CONFIG_S3C2410_COMMON_CLK */
> -
> -#ifdef CONFIG_S3C2412_COMMON_CLK
> -void s3c2412_common_clk_init(struct device_node *np, unsigned long xti_f,
> - unsigned long ext_f, void __iomem *reg_base);
> -#else
> -static inline void s3c2412_common_clk_init(struct device_node *np,
> - unsigned long xti_f,
> - unsigned long ext_f,
> - void __iomem *reg_base) { }
> -#endif /* CONFIG_S3C2412_COMMON_CLK */
> -
> -#ifdef CONFIG_S3C2443_COMMON_CLK
> -void s3c2443_common_clk_init(struct device_node *np, unsigned long xti_f,
> - int current_soc,
> - void __iomem *reg_base);
> -#else
> -static inline void s3c2443_common_clk_init(struct device_node *np,
> - unsigned long xti_f,
> - int current_soc,
> - void __iomem *reg_base) { }
> -#endif /* CONFIG_S3C2443_COMMON_CLK */
> -
> #endif /* __LINUX_CLK_SAMSUNG_H_ */
> diff --git a/include/linux/soc/samsung/s3c-pm.h b/include/linux/soc/samsung/s3c-pm.h
> index f9164559c99f..5b23d85d20ab 100644
> --- a/include/linux/soc/samsung/s3c-pm.h
> +++ b/include/linux/soc/samsung/s3c-pm.h
> @@ -14,58 +14,10 @@
>
> /* PM debug functions */
>
> -/**
> - * struct pm_uart_save - save block for core UART
> - * @ulcon: Save value for S3C2410_ULCON
> - * @ucon: Save value for S3C2410_UCON
> - * @ufcon: Save value for S3C2410_UFCON
> - * @umcon: Save value for S3C2410_UMCON
> - * @ubrdiv: Save value for S3C2410_UBRDIV
> - *
> - * Save block for UART registers to be held over sleep and restored if they
> - * are needed (say by debug).
> -*/
> -struct pm_uart_save {
> - u32 ulcon;
> - u32 ucon;
> - u32 ufcon;
> - u32 umcon;
> - u32 ubrdiv;
> - u32 udivslot;
> -};
> -
> -#ifdef CONFIG_SAMSUNG_PM_DEBUG
> -/**
> - * s3c_pm_dbg() - low level debug function for use in suspend/resume.
> - * @msg: The message to print.
> - *
> - * This function is used mainly to debug the resume process before the system
> - * can rely on printk/console output. It uses the low-level debugging output
> - * routine printascii() to do its work.
> - */
> -extern void s3c_pm_dbg(const char *msg, ...);
> -
> -#define S3C_PMDBG(fmt...) s3c_pm_dbg(fmt)
> -
> -extern void s3c_pm_save_uarts(bool is_s3c24xx);
> -extern void s3c_pm_restore_uarts(bool is_s3c24xx);
> -
> -#ifdef CONFIG_ARCH_S3C64XX
> -extern void s3c_pm_arch_update_uart(void __iomem *regs,
> - struct pm_uart_save *save);
> -#else
> -static inline void
> -s3c_pm_arch_update_uart(void __iomem *regs, struct pm_uart_save *save)
> -{
> -}
> -#endif
> -
> -#else
> #define S3C_PMDBG(fmt...) pr_debug(fmt)
>
> static inline void s3c_pm_save_uarts(bool is_s3c24xx) { }
> static inline void s3c_pm_restore_uarts(bool is_s3c24xx) { }
> -#endif
>
> /* suspend memory checking */
>
> @@ -81,14 +33,4 @@ extern void s3c_pm_check_store(void);
> #define s3c_pm_check_store() do { } while (0)
> #endif
>
> -/* system device subsystems */
> -
> -extern struct bus_type s3c2410_subsys;
> -extern struct bus_type s3c2410a_subsys;
> -extern struct bus_type s3c2412_subsys;
> -extern struct bus_type s3c2416_subsys;
> -extern struct bus_type s3c2440_subsys;
> -extern struct bus_type s3c2442_subsys;
> -extern struct bus_type s3c2443_subsys;
> -
> #endif
> --
> 2.29.2
>
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx SoC platform was completely removed, as were most of the
> s3c64xx based board files, leaving only the DT based machines as well
> as the MACH_WLF_CRAGG_6410 machine. All other board specific ASoC
> driver can can now be recycled.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On Fri, 21 Oct 2022 at 22:45, Arnd Bergmann <[email protected]> wrote:
>
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform is gone, so this driver can be removed as well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Acked-by: Ulf Hansson <[email protected]>
Kind regards
Uffe
> ---
> MAINTAINERS | 6 -
> drivers/mmc/host/Kconfig | 43 -
> drivers/mmc/host/Makefile | 1 -
> drivers/mmc/host/s3cmci.c | 1777 ----------------------
> drivers/mmc/host/s3cmci.h | 75 -
> include/linux/platform_data/mmc-s3cmci.h | 51 -
> 6 files changed, 1953 deletions(-)
> delete mode 100644 drivers/mmc/host/s3cmci.c
> delete mode 100644 drivers/mmc/host/s3cmci.h
> delete mode 100644 include/linux/platform_data/mmc-s3cmci.h
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 2caf42b0328a..503ebd9800db 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -17920,12 +17920,6 @@ S: Supported
> W: http://www.ibm.com/developerworks/linux/linux390/
> F: drivers/s390/scsi/zfcp_*
>
> -S3C24XX SD/MMC Driver
> -M: Ben Dooks <[email protected]>
> -L: [email protected] (moderated for non-subscribers)
> -S: Supported
> -F: drivers/mmc/host/s3cmci.*
> -
> SAA6588 RDS RECEIVER DRIVER
> M: Hans Verkuil <[email protected]>
> L: [email protected]
> diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
> index 79d8ddf1f616..75e8c364243d 100644
> --- a/drivers/mmc/host/Kconfig
> +++ b/drivers/mmc/host/Kconfig
> @@ -619,49 +619,6 @@ config MMC_SPI
>
> If unsure, or if your system has no SPI master driver, say N.
>
> -config MMC_S3C
> - tristate "Samsung S3C SD/MMC Card Interface support"
> - depends on ARCH_S3C24XX || COMPILE_TEST
> - depends on S3C24XX_DMAC || COMPILE_TEST
> - help
> - This selects a driver for the MCI interface found in
> - Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
> - If you have a board based on one of those and a MMC/SD
> - slot, say Y or M here.
> -
> - If unsure, say N.
> -
> -config MMC_S3C_HW_SDIO_IRQ
> - bool "Hardware support for SDIO IRQ"
> - depends on MMC_S3C
> - help
> - Enable the hardware support for SDIO interrupts instead of using
> - the generic polling code.
> -
> -choice
> - prompt "Samsung S3C SD/MMC transfer code"
> - depends on MMC_S3C
> -
> -config MMC_S3C_PIO
> - bool "Use PIO transfers only"
> - help
> - Use PIO to transfer data between memory and the hardware.
> -
> - PIO is slower than DMA as it requires CPU instructions to
> - move the data. This has been the traditional default for
> - the S3C MCI driver.
> -
> -config MMC_S3C_DMA
> - bool "Use DMA transfers only"
> - help
> - Use DMA to transfer data between memory and the hardware.
> -
> - Currently, the DMA support in this driver seems to not be
> - working properly and needs to be debugged before this
> - option is useful.
> -
> -endchoice
> -
> config MMC_SDRICOH_CS
> tristate "MMC/SD driver for Ricoh Bay1Controllers"
> depends on PCI && PCMCIA
> diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
> index 0baeb0b004f7..885e19e21e75 100644
> --- a/drivers/mmc/host/Makefile
> +++ b/drivers/mmc/host/Makefile
> @@ -34,7 +34,6 @@ obj-$(CONFIG_MMC_MVSDIO) += mvsdio.o
> obj-$(CONFIG_MMC_DAVINCI) += davinci_mmc.o
> obj-$(CONFIG_MMC_SPI) += mmc_spi.o
> obj-$(CONFIG_MMC_SPI) += of_mmc_spi.o
> -obj-$(CONFIG_MMC_S3C) += s3cmci.o
> obj-$(CONFIG_MMC_SDRICOH_CS) += sdricoh_cs.o
> obj-$(CONFIG_MMC_TMIO_CORE) += tmio_mmc_core.o
> obj-$(CONFIG_MMC_SDHI) += renesas_sdhi_core.o
> diff --git a/drivers/mmc/host/s3cmci.c b/drivers/mmc/host/s3cmci.c
> deleted file mode 100644
> index 8d5929a32d34..000000000000
> diff --git a/drivers/mmc/host/s3cmci.h b/drivers/mmc/host/s3cmci.h
> deleted file mode 100644
> index 8b65d7ad9f97..000000000000
> diff --git a/include/linux/platform_data/mmc-s3cmci.h b/include/linux/platform_data/mmc-s3cmci.h
> deleted file mode 100644
> index bacb86db3112..000000000000
> --
> 2.29.2
>
On 21/10/2022 16:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> CONFIG_SAMSUNG_PM_DEBUG was only used on s3c24xx because of the
> DEBUG_S3C24XX_UART dependency. Since s3c24xx is now gone, and nobody
> ever noticed this option being missing from s3c64xx, it can be safely
> removed as well.
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On 21-10-22, 22:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> All s3c24xx platforms were removed, so these five drivers are all
> obsolete now.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/cpufreq/Kconfig.arm | 78 ---
> drivers/cpufreq/Makefile | 6 -
> drivers/cpufreq/s3c2410-cpufreq.c | 155 -----
> drivers/cpufreq/s3c2412-cpufreq.c | 240 -------
> drivers/cpufreq/s3c2416-cpufreq.c | 492 --------------
> drivers/cpufreq/s3c2440-cpufreq.c | 321 ---------
> drivers/cpufreq/s3c24xx-cpufreq-debugfs.c | 163 -----
> drivers/cpufreq/s3c24xx-cpufreq.c | 648 -------------------
> include/linux/soc/samsung/s3c-cpufreq-core.h | 299 ---------
> 9 files changed, 2402 deletions(-)
> delete mode 100644 drivers/cpufreq/s3c2410-cpufreq.c
> delete mode 100644 drivers/cpufreq/s3c2412-cpufreq.c
> delete mode 100644 drivers/cpufreq/s3c2416-cpufreq.c
> delete mode 100644 drivers/cpufreq/s3c2440-cpufreq.c
> delete mode 100644 drivers/cpufreq/s3c24xx-cpufreq-debugfs.c
> delete mode 100644 drivers/cpufreq/s3c24xx-cpufreq.c
> delete mode 100644 include/linux/soc/samsung/s3c-cpufreq-core.h
>
> diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm
> index 8f7a1065f344..e3e0367305ec 100644
> --- a/drivers/cpufreq/Kconfig.arm
> +++ b/drivers/cpufreq/Kconfig.arm
> @@ -180,84 +180,6 @@ config ARM_RASPBERRYPI_CPUFREQ
>
> If in doubt, say N.
>
> -config ARM_S3C_CPUFREQ
> - bool
> - help
> - Internal configuration node for common cpufreq on Samsung SoC
> -
> -config ARM_S3C24XX_CPUFREQ
> - bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
> - depends on ARCH_S3C24XX
> - select ARM_S3C_CPUFREQ
> - help
> - This enables the CPUfreq driver for the Samsung S3C24XX family
> - of CPUs.
> -
> - For details, take a look at <file:Documentation/cpu-freq>.
> -
> - If in doubt, say N.
> -
> -config ARM_S3C24XX_CPUFREQ_DEBUG
> - bool "Debug CPUfreq Samsung driver core"
> - depends on ARM_S3C24XX_CPUFREQ
> - help
> - Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
> -
> -config ARM_S3C24XX_CPUFREQ_IODEBUG
> - bool "Debug CPUfreq Samsung driver IO timing"
> - depends on ARM_S3C24XX_CPUFREQ
> - help
> - Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
> -
> -config ARM_S3C24XX_CPUFREQ_DEBUGFS
> - bool "Export debugfs for CPUFreq"
> - depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
> - help
> - Export status information via debugfs.
> -
> -config ARM_S3C2410_CPUFREQ
> - bool
> - depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
> - help
> - CPU Frequency scaling support for S3C2410
> -
> -config ARM_S3C2412_CPUFREQ
> - bool
> - depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
> - default y
> - select S3C2412_IOTIMING
> - help
> - CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
> -
> -config ARM_S3C2416_CPUFREQ
> - bool "S3C2416 CPU Frequency scaling support"
> - depends on CPU_S3C2416
> - help
> - This adds the CPUFreq driver for the Samsung S3C2416 and
> - S3C2450 SoC. The S3C2416 supports changing the rate of the
> - armdiv clock source and also entering a so called dynamic
> - voltage scaling mode in which it is possible to reduce the
> - core voltage of the CPU.
> -
> - If in doubt, say N.
> -
> -config ARM_S3C2416_CPUFREQ_VCORESCALE
> - bool "Allow voltage scaling for S3C2416 arm core"
> - depends on ARM_S3C2416_CPUFREQ && REGULATOR
> - help
> - Enable CPU voltage scaling when entering the dvs mode.
> - It uses information gathered through existing hardware and
> - tests but not documented in any datasheet.
> -
> - If in doubt, say N.
> -
> -config ARM_S3C2440_CPUFREQ
> - bool "S3C2440/S3C2442 CPU Frequency scaling support"
> - depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
> - default y
> - help
> - CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
> -
> config ARM_S3C64XX_CPUFREQ
> bool "Samsung S3C64XX"
> depends on CPU_S3C6410
> diff --git a/drivers/cpufreq/Makefile b/drivers/cpufreq/Makefile
> index 8de99b213146..692c16e4ee55 100644
> --- a/drivers/cpufreq/Makefile
> +++ b/drivers/cpufreq/Makefile
> @@ -70,13 +70,7 @@ obj-$(CONFIG_PXA3xx) += pxa3xx-cpufreq.o
> obj-$(CONFIG_ARM_QCOM_CPUFREQ_HW) += qcom-cpufreq-hw.o
> obj-$(CONFIG_ARM_QCOM_CPUFREQ_NVMEM) += qcom-cpufreq-nvmem.o
> obj-$(CONFIG_ARM_RASPBERRYPI_CPUFREQ) += raspberrypi-cpufreq.o
> -obj-$(CONFIG_ARM_S3C2410_CPUFREQ) += s3c2410-cpufreq.o
> -obj-$(CONFIG_ARM_S3C2412_CPUFREQ) += s3c2412-cpufreq.o
> -obj-$(CONFIG_ARM_S3C2416_CPUFREQ) += s3c2416-cpufreq.o
> -obj-$(CONFIG_ARM_S3C2440_CPUFREQ) += s3c2440-cpufreq.o
> obj-$(CONFIG_ARM_S3C64XX_CPUFREQ) += s3c64xx-cpufreq.o
> -obj-$(CONFIG_ARM_S3C24XX_CPUFREQ) += s3c24xx-cpufreq.o
> -obj-$(CONFIG_ARM_S3C24XX_CPUFREQ_DEBUGFS) += s3c24xx-cpufreq-debugfs.o
> obj-$(CONFIG_ARM_S5PV210_CPUFREQ) += s5pv210-cpufreq.o
> obj-$(CONFIG_ARM_SA1110_CPUFREQ) += sa1110-cpufreq.o
> obj-$(CONFIG_ARM_SCMI_CPUFREQ) += scmi-cpufreq.o
> diff --git a/drivers/cpufreq/s3c2410-cpufreq.c b/drivers/cpufreq/s3c2410-cpufreq.c
> deleted file mode 100644
> index 5dcfbf0bfb74..000000000000
> diff --git a/drivers/cpufreq/s3c2412-cpufreq.c b/drivers/cpufreq/s3c2412-cpufreq.c
> deleted file mode 100644
> index 5945945ead7c..000000000000
> diff --git a/drivers/cpufreq/s3c2416-cpufreq.c b/drivers/cpufreq/s3c2416-cpufreq.c
> deleted file mode 100644
> index 5c221bc90210..000000000000
> diff --git a/drivers/cpufreq/s3c2440-cpufreq.c b/drivers/cpufreq/s3c2440-cpufreq.c
> deleted file mode 100644
> index 2011fb9c03a4..000000000000
> diff --git a/drivers/cpufreq/s3c24xx-cpufreq-debugfs.c b/drivers/cpufreq/s3c24xx-cpufreq-debugfs.c
> deleted file mode 100644
> index 93971dfe7c75..000000000000
> diff --git a/drivers/cpufreq/s3c24xx-cpufreq.c b/drivers/cpufreq/s3c24xx-cpufreq.c
> deleted file mode 100644
> index 7380c32b238e..000000000000
> diff --git a/include/linux/soc/samsung/s3c-cpufreq-core.h b/include/linux/soc/samsung/s3c-cpufreq-core.h
> deleted file mode 100644
> index 3b278afb769b..000000000000
Acked-by: Viresh Kumar <[email protected]>
--
viresh
Quoting Arnd Bergmann (2022-10-21 13:27:35)
> From: Arnd Bergmann <[email protected]>
>
> A number of device drivers reference CONFIG_ARM_S3C24XX_CPUFREQ or
> similar symbols that are no longer available with the platform gone,
> though the drivers themselves are still used on newer platforms,
> so remove these hacks.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
Acked-by: Stephen Boyd <[email protected]> # clk
Quoting Arnd Bergmann (2022-10-21 13:27:44)
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform is gone, so the clk driver can be removed as
> well.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
Acked-by: Stephen Boyd <[email protected]>
Hi,
On Fri, Oct 21, 2022 at 10:27:40PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c-adc driver is removed along with the s3c24xx platform,
> so the battery driver is no longer needed either.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
I suppose queuing this via power-supply will result in temporary
build failures because the header is included in s3c24xx arch code.
So better to merge via the same tree that is killing the arch code:
Acked-by: Sebastian Reichel <[email protected]>
-- Sebastian
> MAINTAINERS | 7 -
> drivers/power/supply/Kconfig | 6 -
> drivers/power/supply/Makefile | 1 -
> drivers/power/supply/s3c_adc_battery.c | 453 -------------------------
> include/linux/s3c_adc_battery.h | 39 ---
> 5 files changed, 506 deletions(-)
> delete mode 100644 drivers/power/supply/s3c_adc_battery.c
> delete mode 100644 include/linux/s3c_adc_battery.h
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 071d64e2a7ca..2caf42b0328a 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -17920,13 +17920,6 @@ S: Supported
> W: http://www.ibm.com/developerworks/linux/linux390/
> F: drivers/s390/scsi/zfcp_*
>
> -S3C ADC BATTERY DRIVER
> -M: Krzysztof Kozlowski <[email protected]>
> -L: [email protected]
> -S: Odd Fixes
> -F: drivers/power/supply/s3c_adc_battery.c
> -F: include/linux/s3c_adc_battery.h
> -
> S3C24XX SD/MMC Driver
> M: Ben Dooks <[email protected]>
> L: [email protected] (moderated for non-subscribers)
> diff --git a/drivers/power/supply/Kconfig b/drivers/power/supply/Kconfig
> index 568b3ede993a..e2f8dfcdd2a9 100644
> --- a/drivers/power/supply/Kconfig
> +++ b/drivers/power/supply/Kconfig
> @@ -406,12 +406,6 @@ config BATTERY_MAX1721X
> Say Y here to enable support for the MAX17211/MAX17215 standalone
> battery gas-gauge.
>
> -config BATTERY_S3C_ADC
> - tristate "Battery driver for Samsung ADC based monitoring"
> - depends on S3C_ADC
> - help
> - Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery
> -
> config BATTERY_TWL4030_MADC
> tristate "TWL4030 MADC battery driver"
> depends on TWL4030_MADC
> diff --git a/drivers/power/supply/Makefile b/drivers/power/supply/Makefile
> index af43866b3980..8cb3c7f5c111 100644
> --- a/drivers/power/supply/Makefile
> +++ b/drivers/power/supply/Makefile
> @@ -54,7 +54,6 @@ obj-$(CONFIG_BATTERY_MAX17042) += max17042_battery.o
> obj-$(CONFIG_BATTERY_MAX1721X) += max1721x_battery.o
> obj-$(CONFIG_BATTERY_RT5033) += rt5033_battery.o
> obj-$(CONFIG_CHARGER_RT9455) += rt9455_charger.o
> -obj-$(CONFIG_BATTERY_S3C_ADC) += s3c_adc_battery.o
> obj-$(CONFIG_BATTERY_TWL4030_MADC) += twl4030_madc_battery.o
> obj-$(CONFIG_CHARGER_88PM860X) += 88pm860x_charger.o
> obj-$(CONFIG_CHARGER_PCF50633) += pcf50633-charger.o
> diff --git a/drivers/power/supply/s3c_adc_battery.c b/drivers/power/supply/s3c_adc_battery.c
> deleted file mode 100644
> index 68d31a3bee48..000000000000
> diff --git a/include/linux/s3c_adc_battery.h b/include/linux/s3c_adc_battery.h
> deleted file mode 100644
> index 57f982c375f8..000000000000
> --
> 2.29.2
>
On 21-10-22, 22:27, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The s3c24xx platform was removed and this driver is no longer
> needed.
Applied, thanks
--
~Vinod
The linux/platform_data/dma-s3c24xx.h header file was removed. It didn't
declare or define any symbol needed in devs.c though, so the #include
can just be dropped.
Fixes: cccc46ae3623 ("dmaengine: remove s3c24xx driver")
Signed-off-by: Uwe Kleine-König <[email protected]>
---
arch/arm/mach-s3c/devs.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm/mach-s3c/devs.c b/arch/arm/mach-s3c/devs.c
index 9ac07c023adf..a31d1c3038e8 100644
--- a/arch/arm/mach-s3c/devs.c
+++ b/arch/arm/mach-s3c/devs.c
@@ -29,7 +29,6 @@
#include <linux/sizes.h>
#include <linux/platform_data/s3c-hsudc.h>
#include <linux/platform_data/s3c-hsotg.h>
-#include <linux/platform_data/dma-s3c24xx.h>
#include <linux/platform_data/media/s5p_hdmi.h>
--
2.38.1
On 18/11/2022 22:54, Uwe Kleine-König wrote:
> The linux/platform_data/dma-s3c24xx.h header file was removed. It didn't
> declare or define any symbol needed in devs.c though, so the #include
> can just be dropped.
>
> Fixes: cccc46ae3623 ("dmaengine: remove s3c24xx driver")
> Signed-off-by: Uwe Kleine-König <[email protected]>
> ---
The file was not removed... or it should not have been yet. The s3c24xx
dma driver removal should be part of Arnd series taken via SoC ARM.
Best regards,
Krzysztof
On 20/11/2022 11:31, Krzysztof Kozlowski wrote:
> On 18/11/2022 22:54, Uwe Kleine-König wrote:
>> The linux/platform_data/dma-s3c24xx.h header file was removed. It didn't
>> declare or define any symbol needed in devs.c though, so the #include
>> can just be dropped.
>>
>> Fixes: cccc46ae3623 ("dmaengine: remove s3c24xx driver")
>> Signed-off-by: Uwe Kleine-König <[email protected]>
>> ---
>
> The file was not removed... or it should not have been yet. The s3c24xx
> dma driver removal should be part of Arnd series taken via SoC ARM.
Also: I don't think the fix is correct. The header was used in mach-s3c,
so removing the header should still cause broken build.
It also fails in other places:
arch/arm/mach-s3c/s3c24xx.c:21:10: fatal error:
linux/platform_data/dma-s3c24xx.h: No such file or directory
21 | #include <linux/platform_data/dma-s3c24xx.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
I think that commit should be just dropped instead.
Best regards,
Krzysztof
On 25/11/2022 09:51, Uwe Kleine-König wrote:
> Hello,
>
> On Sun, Nov 20, 2022 at 12:22:31PM +0100, Krzysztof Kozlowski wrote:
>> On 20/11/2022 11:31, Krzysztof Kozlowski wrote:
>>> On 18/11/2022 22:54, Uwe Kleine-König wrote:
>>>> The linux/platform_data/dma-s3c24xx.h header file was removed. It didn't
>>>> declare or define any symbol needed in devs.c though, so the #include
>>>> can just be dropped.
>>>>
>>>> Fixes: cccc46ae3623 ("dmaengine: remove s3c24xx driver")
>>>> Signed-off-by: Uwe Kleine-König <[email protected]>
>>>> ---
>>>
>>> The file was not removed... or it should not have been yet. The s3c24xx
>>> dma driver removal should be part of Arnd series taken via SoC ARM.
>
> The patch enters next with the merge of
>
> git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.git next
>
> Ah, the patch that became cccc46ae3623 (i.e. patch #14) is part of a
> bigger series. Its patch #1 removes s3c24xx.c (which you pointed out to be still
> broken) and patch #2 includes the change I suggested here.
>
>> I think that commit should be just dropped instead.
>
> +1
>
> BTW, cccc46ae3623 is included in next since next-20221107 and breaks
> (at least) arm/s3c2410_defconfig. So I would consider reverting
> cccc46ae3623 a fix. (Added linux-next to Cc:)
Yes. The build failure of next was reported already by kernel test robot.
Vinod, can we drop this patch?
Best regards,
Krzysztof
Hello,
On Sun, Nov 20, 2022 at 12:22:31PM +0100, Krzysztof Kozlowski wrote:
> On 20/11/2022 11:31, Krzysztof Kozlowski wrote:
> > On 18/11/2022 22:54, Uwe Kleine-K?nig wrote:
> >> The linux/platform_data/dma-s3c24xx.h header file was removed. It didn't
> >> declare or define any symbol needed in devs.c though, so the #include
> >> can just be dropped.
> >>
> >> Fixes: cccc46ae3623 ("dmaengine: remove s3c24xx driver")
> >> Signed-off-by: Uwe Kleine-K?nig <[email protected]>
> >> ---
> >
> > The file was not removed... or it should not have been yet. The s3c24xx
> > dma driver removal should be part of Arnd series taken via SoC ARM.
The patch enters next with the merge of
git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.git next
Ah, the patch that became cccc46ae3623 (i.e. patch #14) is part of a
bigger series. Its patch #1 removes s3c24xx.c (which you pointed out to be still
broken) and patch #2 includes the change I suggested here.
> I think that commit should be just dropped instead.
+1
BTW, cccc46ae3623 is included in next since next-20221107 and breaks
(at least) arm/s3c2410_defconfig. So I would consider reverting
cccc46ae3623 a fix. (Added linux-next to Cc:)
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | https://www.pengutronix.de/ |
Hello,
I made the subject a bit more expressive.
On Fri, Nov 25, 2022 at 09:52:51AM +0100, Krzysztof Kozlowski wrote:
> On 25/11/2022 09:51, Uwe Kleine-K?nig wrote:
> > On Sun, Nov 20, 2022 at 12:22:31PM +0100, Krzysztof Kozlowski wrote:
> >> On 20/11/2022 11:31, Krzysztof Kozlowski wrote:
> >>> On 18/11/2022 22:54, Uwe Kleine-K?nig wrote:
> >>>> The linux/platform_data/dma-s3c24xx.h header file was removed. It didn't
> >>>> declare or define any symbol needed in devs.c though, so the #include
> >>>> can just be dropped.
> >>>>
> >>>> Fixes: cccc46ae3623 ("dmaengine: remove s3c24xx driver")
> >>>> Signed-off-by: Uwe Kleine-K?nig <[email protected]>
> >>>> ---
> >>>
> >>> The file was not removed... or it should not have been yet. The s3c24xx
> >>> dma driver removal should be part of Arnd series taken via SoC ARM.
> >
> > The patch enters next with the merge of
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.git next
> >
> > Ah, the patch that became cccc46ae3623 (i.e. patch #14) is part of a
> > bigger series. Its patch #1 removes s3c24xx.c (which you pointed out to be still
> > broken) and patch #2 includes the change I suggested here.
> >
> >> I think that commit should be just dropped instead.
> >
> > +1
> >
> > BTW, cccc46ae3623 is included in next since next-20221107 and breaks
> > (at least) arm/s3c2410_defconfig. So I would consider reverting
> > cccc46ae3623 a fix. (Added linux-next to Cc:)
>
> Yes. The build failure of next was reported already by kernel test robot.
>
> Vinod, can we drop this patch?
That patch is still contained in the next tags of this week. :-(
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | https://www.pengutronix.de/ |
On 02-12-22, 12:20, Uwe Kleine-K?nig wrote:
> Hello,
>
> I made the subject a bit more expressive.
>
> On Fri, Nov 25, 2022 at 09:52:51AM +0100, Krzysztof Kozlowski wrote:
> > On 25/11/2022 09:51, Uwe Kleine-K?nig wrote:
> > > On Sun, Nov 20, 2022 at 12:22:31PM +0100, Krzysztof Kozlowski wrote:
> > >> On 20/11/2022 11:31, Krzysztof Kozlowski wrote:
> > >>> On 18/11/2022 22:54, Uwe Kleine-K?nig wrote:
> > >>>> The linux/platform_data/dma-s3c24xx.h header file was removed. It didn't
> > >>>> declare or define any symbol needed in devs.c though, so the #include
> > >>>> can just be dropped.
> > >>>>
> > >>>> Fixes: cccc46ae3623 ("dmaengine: remove s3c24xx driver")
> > >>>> Signed-off-by: Uwe Kleine-K?nig <[email protected]>
> > >>>> ---
> > >>>
> > >>> The file was not removed... or it should not have been yet. The s3c24xx
> > >>> dma driver removal should be part of Arnd series taken via SoC ARM.
> > >
> > > The patch enters next with the merge of
> > >
> > > git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.git next
> > >
> > > Ah, the patch that became cccc46ae3623 (i.e. patch #14) is part of a
> > > bigger series. Its patch #1 removes s3c24xx.c (which you pointed out to be still
> > > broken) and patch #2 includes the change I suggested here.
> > >
> > >> I think that commit should be just dropped instead.
> > >
> > > +1
> > >
> > > BTW, cccc46ae3623 is included in next since next-20221107 and breaks
> > > (at least) arm/s3c2410_defconfig. So I would consider reverting
> > > cccc46ae3623 a fix. (Added linux-next to Cc:)
> >
> > Yes. The build failure of next was reported already by kernel test robot.
> >
> > Vinod, can we drop this patch?
>
> That patch is still contained in the next tags of this week. :-(
Apologies for delay, I was moving...
I have reverted and pushed now
Thanks for following up!
--
~Vinod
Hello Vinod,
On Fri, Dec 02, 2022 at 05:12:53PM +0530, Vinod Koul wrote:
> On 02-12-22, 12:20, Uwe Kleine-K?nig wrote:
> > I made the subject a bit more expressive.
I wonder what I intended to write there, something like "Regression in
dmaengine/next in arm/s3c2410_defconfig", sorry to make it look as if
you already fixed the regression :-)
> > On Fri, Nov 25, 2022 at 09:52:51AM +0100, Krzysztof Kozlowski wrote:
> > > On 25/11/2022 09:51, Uwe Kleine-K?nig wrote:
> > > > On Sun, Nov 20, 2022 at 12:22:31PM +0100, Krzysztof Kozlowski wrote:
> > > >> On 20/11/2022 11:31, Krzysztof Kozlowski wrote:
> > > >>> On 18/11/2022 22:54, Uwe Kleine-K?nig wrote:
> > > >>>> The linux/platform_data/dma-s3c24xx.h header file was removed. It didn't
> > > >>>> declare or define any symbol needed in devs.c though, so the #include
> > > >>>> can just be dropped.
> > > >>>>
> > > >>>> Fixes: cccc46ae3623 ("dmaengine: remove s3c24xx driver")
> > > >>>> Signed-off-by: Uwe Kleine-K?nig <[email protected]>
> > > >>>> ---
> > > >>>
> > > >>> The file was not removed... or it should not have been yet. The s3c24xx
> > > >>> dma driver removal should be part of Arnd series taken via SoC ARM.
> > > >
> > > > The patch enters next with the merge of
> > > >
> > > > git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.git next
> > > >
> > > > Ah, the patch that became cccc46ae3623 (i.e. patch #14) is part of a
> > > > bigger series. Its patch #1 removes s3c24xx.c (which you pointed out to be still
> > > > broken) and patch #2 includes the change I suggested here.
> > > >
> > > >> I think that commit should be just dropped instead.
> > > >
> > > > +1
> > > >
> > > > BTW, cccc46ae3623 is included in next since next-20221107 and breaks
> > > > (at least) arm/s3c2410_defconfig. So I would consider reverting
> > > > cccc46ae3623 a fix. (Added linux-next to Cc:)
> > >
> > > Yes. The build failure of next was reported already by kernel test robot.
> > >
> > > Vinod, can we drop this patch?
> >
> > That patch is still contained in the next tags of this week. :-(
>
> Apologies for delay, I was moving...
>
> I have reverted and pushed now
Thanks!
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | https://www.pengutronix.de/ |