ARM: s3c: remove most s3c64xx board support
authorArnd Bergmann <arnd@arndb.de>
Thu, 29 Sep 2022 13:39:28 +0000 (15:39 +0200)
committerArnd Bergmann <arnd@arndb.de>
Mon, 16 Jan 2023 08:26:05 +0000 (09:26 +0100)
All traditional board files except for MACH_WLF_CRAGG_6410 were
marked as unused, so remove them now.

Cc: Kwangwoo Lee <kwangwoo.lee@gmail.com>
Cc: Peter Korsgaard <jacmet@sunsite.dk>
Cc: Darius Augulis <augulis.darius@gmail.com>
Cc: Maurus Cuelenaere <mcuelenaere@gmail.com>
Cc: Ben Dooks <ben-linux@fluff.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
14 files changed:
arch/arm/mach-s3c/Kconfig.s3c64xx
arch/arm/mach-s3c/Makefile.s3c64xx
arch/arm/mach-s3c/dev-backlight-s3c64xx.c [deleted file]
arch/arm/mach-s3c/mach-anw6410.c [deleted file]
arch/arm/mach-s3c/mach-hmt.c [deleted file]
arch/arm/mach-s3c/mach-mini6410.c [deleted file]
arch/arm/mach-s3c/mach-ncp.c [deleted file]
arch/arm/mach-s3c/mach-real6410.c [deleted file]
arch/arm/mach-s3c/mach-smartq.c [deleted file]
arch/arm/mach-s3c/mach-smartq.h [deleted file]
arch/arm/mach-s3c/mach-smartq5.c [deleted file]
arch/arm/mach-s3c/mach-smartq7.c [deleted file]
arch/arm/mach-s3c/mach-smdk6400.c [deleted file]
arch/arm/mach-s3c/mach-smdk6410.c [deleted file]

index 0c1b91c..0da214c 100644 (file)
@@ -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
index 21e919b..ba179a2 100644 (file)
@@ -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 (file)
index 65488b6..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright (c) 2011 Samsung Electronics Co., Ltd.
-//              http://www.samsung.com
-//
-// Common infrastructure for PWM Backlight for Samsung boards
-
-#include <linux/gpio.h>
-#include <linux/platform_device.h>
-#include <linux/slab.h>
-#include <linux/io.h>
-#include <linux/pwm_backlight.h>
-
-#include "devs.h"
-#include "gpio-cfg.h"
-
-#include "backlight-s3c64xx.h"
-
-struct samsung_bl_drvdata {
-       struct platform_pwm_backlight_data plat_data;
-       struct samsung_bl_gpio_info *gpio_info;
-};
-
-static int samsung_bl_init(struct device *dev)
-{
-       int ret = 0;
-       struct platform_pwm_backlight_data *pdata = dev->platform_data;
-       struct samsung_bl_drvdata *drvdata = container_of(pdata,
-                                       struct samsung_bl_drvdata, plat_data);
-       struct samsung_bl_gpio_info *bl_gpio_info = drvdata->gpio_info;
-
-       ret = gpio_request(bl_gpio_info->no, "Backlight");
-       if (ret) {
-               printk(KERN_ERR "failed to request GPIO for LCD Backlight\n");
-               return ret;
-       }
-
-       /* Configure GPIO pin with specific GPIO function for PWM timer */
-       s3c_gpio_cfgpin(bl_gpio_info->no, bl_gpio_info->func);
-
-       return 0;
-}
-
-static void samsung_bl_exit(struct device *dev)
-{
-       struct platform_pwm_backlight_data *pdata = dev->platform_data;
-       struct samsung_bl_drvdata *drvdata = container_of(pdata,
-                                       struct samsung_bl_drvdata, plat_data);
-       struct samsung_bl_gpio_info *bl_gpio_info = drvdata->gpio_info;
-
-       s3c_gpio_cfgpin(bl_gpio_info->no, S3C_GPIO_OUTPUT);
-       gpio_free(bl_gpio_info->no);
-}
-
-/* Initialize few important fields of platform_pwm_backlight_data
- * structure with default values. These fields can be overridden by
- * board-specific values sent from machine file.
- * For ease of operation, these fields are initialized with values
- * used by most samsung boards.
- * Users has the option of sending info about other parameters
- * for their specific boards
- */
-
-static struct samsung_bl_drvdata samsung_dfl_bl_data __initdata = {
-       .plat_data = {
-               .max_brightness = 255,
-               .dft_brightness = 255,
-               .init           = samsung_bl_init,
-               .exit           = samsung_bl_exit,
-       },
-};
-
-static struct platform_device samsung_dfl_bl_device __initdata = {
-       .name           = "pwm-backlight",
-};
-
-/* samsung_bl_set - Set board specific data (if any) provided by user for
- * PWM Backlight control and register specific PWM and backlight device.
- * @gpio_info: structure containing GPIO info for PWM timer
- * @bl_data:   structure containing Backlight control data
- */
-void __init samsung_bl_set(struct samsung_bl_gpio_info *gpio_info,
-       struct platform_pwm_backlight_data *bl_data)
-{
-       int ret = 0;
-       struct platform_device *samsung_bl_device;
-       struct samsung_bl_drvdata *samsung_bl_drvdata;
-       struct platform_pwm_backlight_data *samsung_bl_data;
-
-       samsung_bl_device = kmemdup(&samsung_dfl_bl_device,
-                       sizeof(struct platform_device), GFP_KERNEL);
-       if (!samsung_bl_device)
-               return;
-
-       samsung_bl_drvdata = kmemdup(&samsung_dfl_bl_data,
-                               sizeof(samsung_dfl_bl_data), GFP_KERNEL);
-       if (!samsung_bl_drvdata)
-               goto err_data;
-
-       samsung_bl_device->dev.platform_data = &samsung_bl_drvdata->plat_data;
-       samsung_bl_drvdata->gpio_info = gpio_info;
-       samsung_bl_data = &samsung_bl_drvdata->plat_data;
-
-       /* Copy board specific data provided by user */
-       samsung_bl_device->dev.parent = &samsung_device_pwm.dev;
-
-       if (bl_data->max_brightness)
-               samsung_bl_data->max_brightness = bl_data->max_brightness;
-       if (bl_data->dft_brightness)
-               samsung_bl_data->dft_brightness = bl_data->dft_brightness;
-       if (bl_data->lth_brightness)
-               samsung_bl_data->lth_brightness = bl_data->lth_brightness;
-       if (bl_data->init)
-               samsung_bl_data->init = bl_data->init;
-       if (bl_data->notify)
-               samsung_bl_data->notify = bl_data->notify;
-       if (bl_data->notify_after)
-               samsung_bl_data->notify_after = bl_data->notify_after;
-       if (bl_data->exit)
-               samsung_bl_data->exit = bl_data->exit;
-       if (bl_data->check_fb)
-               samsung_bl_data->check_fb = bl_data->check_fb;
-
-       /* Register the Backlight dev */
-       ret = platform_device_register(samsung_bl_device);
-       if (ret) {
-               printk(KERN_ERR "failed to register backlight device: %d\n", ret);
-               goto err_plat_reg2;
-       }
-
-       return;
-
-err_plat_reg2:
-       kfree(samsung_bl_data);
-err_data:
-       kfree(samsung_bl_device);
-}
diff --git a/arch/arm/mach-s3c/mach-anw6410.c b/arch/arm/mach-s3c/mach-anw6410.c
deleted file mode 100644 (file)
index b67eae4..0000000
+++ /dev/null
@@ -1,230 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright 2008 Openmoko, Inc.
-// Copyright 2008 Simtec Electronics
-//     Ben Dooks <ben@simtec.co.uk>
-//     http://armlinux.simtec.co.uk/
-// Copyright 2009 Kwangwoo Lee
-//     Kwangwoo Lee <kwangwoo.lee@gmail.com>
-
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/interrupt.h>
-#include <linux/list.h>
-#include <linux/timer.h>
-#include <linux/init.h>
-#include <linux/serial_core.h>
-#include <linux/serial_s3c.h>
-#include <linux/platform_device.h>
-#include <linux/io.h>
-#include <linux/i2c.h>
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/delay.h>
-#include <linux/dm9000.h>
-
-#include <video/platform_lcd.h>
-#include <video/samsung_fimd.h>
-
-#include <asm/mach/arch.h>
-#include <asm/mach/map.h>
-#include <asm/mach/irq.h>
-
-#include "map.h"
-
-#include <asm/irq.h>
-#include <asm/mach-types.h>
-
-#include <linux/platform_data/i2c-s3c2410.h>
-#include "fb.h"
-
-#include "devs.h"
-#include "cpu.h"
-#include "irqs.h"
-#include "regs-gpio.h"
-#include "gpio-samsung.h"
-
-#include "s3c64xx.h"
-#include "regs-modem-s3c64xx.h"
-
-/* DM9000 */
-#define ANW6410_PA_DM9000      (0x18000000)
-
-/* A hardware buffer to control external devices is mapped at 0x30000000.
- * It can not be read. So current status must be kept in anw6410_extdev_status.
- */
-#define ANW6410_VA_EXTDEV      S3C_ADDR(0x02000000)
-#define ANW6410_PA_EXTDEV      (0x30000000)
-
-#define ANW6410_EN_DM9000      (1<<11)
-#define ANW6410_EN_LCD         (1<<14)
-
-static __u32 anw6410_extdev_status;
-
-static struct s3c2410_uartcfg anw6410_uartcfgs[] __initdata = {
-       [0] = {
-               .hwport      = 0,
-               .flags       = 0,
-               .ucon        = 0x3c5,
-               .ulcon       = 0x03,
-               .ufcon       = 0x51,
-       },
-       [1] = {
-               .hwport      = 1,
-               .flags       = 0,
-               .ucon        = 0x3c5,
-               .ulcon       = 0x03,
-               .ufcon       = 0x51,
-       },
-};
-
-/* framebuffer and LCD setup. */
-static void __init anw6410_lcd_mode_set(void)
-{
-       u32 tmp;
-
-       /* set the LCD type */
-       tmp = __raw_readl(S3C64XX_SPCON);
-       tmp &= ~S3C64XX_SPCON_LCD_SEL_MASK;
-       tmp |= S3C64XX_SPCON_LCD_SEL_RGB;
-       __raw_writel(tmp, S3C64XX_SPCON);
-
-       /* remove the LCD bypass */
-       tmp = __raw_readl(S3C64XX_MODEM_MIFPCON);
-       tmp &= ~MIFPCON_LCD_BYPASS;
-       __raw_writel(tmp, S3C64XX_MODEM_MIFPCON);
-}
-
-/* GPF1 = LCD panel power
- * GPF4 = LCD backlight control
- */
-static void anw6410_lcd_power_set(struct plat_lcd_data *pd,
-                                  unsigned int power)
-{
-       if (power) {
-               anw6410_extdev_status |= (ANW6410_EN_LCD << 16);
-               __raw_writel(anw6410_extdev_status, ANW6410_VA_EXTDEV);
-
-               gpio_direction_output(S3C64XX_GPF(1), 1);
-               gpio_direction_output(S3C64XX_GPF(4), 1);
-       } else {
-               anw6410_extdev_status &= ~(ANW6410_EN_LCD << 16);
-               __raw_writel(anw6410_extdev_status, ANW6410_VA_EXTDEV);
-
-               gpio_direction_output(S3C64XX_GPF(1), 0);
-               gpio_direction_output(S3C64XX_GPF(4), 0);
-       }
-}
-
-static struct plat_lcd_data anw6410_lcd_power_data = {
-       .set_power      = anw6410_lcd_power_set,
-};
-
-static struct platform_device anw6410_lcd_powerdev = {
-       .name                   = "platform-lcd",
-       .dev.parent             = &s3c_device_fb.dev,
-       .dev.platform_data      = &anw6410_lcd_power_data,
-};
-
-static struct s3c_fb_pd_win anw6410_fb_win0 = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-static struct fb_videomode anw6410_lcd_timing = {
-       .left_margin    = 8,
-       .right_margin   = 13,
-       .upper_margin   = 7,
-       .lower_margin   = 5,
-       .hsync_len      = 3,
-       .vsync_len      = 1,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-/* 405566 clocks per frame => 60Hz refresh requires 24333960Hz clock */
-static struct s3c_fb_platdata anw6410_lcd_pdata __initdata = {
-       .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-       .vtiming        = &anw6410_lcd_timing,
-       .win[0]         = &anw6410_fb_win0,
-       .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-       .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC,
-};
-
-/* DM9000AEP 10/100 ethernet controller */
-static void __init anw6410_dm9000_enable(void)
-{
-       anw6410_extdev_status |= (ANW6410_EN_DM9000 << 16);
-       __raw_writel(anw6410_extdev_status, ANW6410_VA_EXTDEV);
-}
-
-static struct resource anw6410_dm9000_resource[] = {
-       [0] = DEFINE_RES_MEM(ANW6410_PA_DM9000, 4),
-       [1] = DEFINE_RES_MEM(ANW6410_PA_DM9000 + 4, 501),
-       [2] = DEFINE_RES_NAMED(IRQ_EINT(15), 1, NULL, IORESOURCE_IRQ \
-                                       | IRQF_TRIGGER_HIGH),
-};
-
-static struct dm9000_plat_data anw6410_dm9000_pdata = {
-       .flags    = (DM9000_PLATF_16BITONLY | DM9000_PLATF_NO_EEPROM),
-       /* dev_addr can be set to provide hwaddr. */
-};
-
-static struct platform_device anw6410_device_eth = {
-       .name   = "dm9000",
-       .id     = -1,
-       .num_resources  = ARRAY_SIZE(anw6410_dm9000_resource),
-       .resource       = anw6410_dm9000_resource,
-       .dev    = {
-               .platform_data  = &anw6410_dm9000_pdata,
-       },
-};
-
-static struct map_desc anw6410_iodesc[] __initdata = {
-       {
-               .virtual        = (unsigned long)ANW6410_VA_EXTDEV,
-               .pfn            = __phys_to_pfn(ANW6410_PA_EXTDEV),
-               .length         = SZ_64K,
-               .type           = MT_DEVICE,
-       },
-};
-
-static struct platform_device *anw6410_devices[] __initdata = {
-       &s3c_device_fb,
-       &anw6410_lcd_powerdev,
-       &anw6410_device_eth,
-};
-
-static void __init anw6410_map_io(void)
-{
-       s3c64xx_init_io(anw6410_iodesc, ARRAY_SIZE(anw6410_iodesc));
-       s3c64xx_set_xtal_freq(12000000);
-       s3c24xx_init_uarts(anw6410_uartcfgs, ARRAY_SIZE(anw6410_uartcfgs));
-       s3c64xx_set_timer_source(S3C64XX_PWM3, S3C64XX_PWM4);
-
-       anw6410_lcd_mode_set();
-}
-
-static void __init anw6410_machine_init(void)
-{
-       s3c_fb_set_platdata(&anw6410_lcd_pdata);
-
-       gpio_request(S3C64XX_GPF(1), "panel power");
-       gpio_request(S3C64XX_GPF(4), "LCD backlight");
-
-       anw6410_dm9000_enable();
-
-       platform_add_devices(anw6410_devices, ARRAY_SIZE(anw6410_devices));
-}
-
-MACHINE_START(ANW6410, "A&W6410")
-       /* Maintainer: Kwangwoo Lee <kwangwoo.lee@gmail.com> */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6410_init_irq,
-       .map_io         = anw6410_map_io,
-       .init_machine   = anw6410_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END
diff --git a/arch/arm/mach-s3c/mach-hmt.c b/arch/arm/mach-s3c/mach-hmt.c
deleted file mode 100644 (file)
index 49ba16c..0000000
+++ /dev/null
@@ -1,282 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// mach-hmt.c - Platform code for Airgoo HMT
-//
-// Copyright 2009 Peter Korsgaard <jacmet@sunsite.dk>
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/serial_core.h>
-#include <linux/serial_s3c.h>
-#include <linux/platform_device.h>
-#include <linux/io.h>
-#include <linux/i2c.h>
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/delay.h>
-#include <linux/leds.h>
-#include <linux/pwm.h>
-#include <linux/pwm_backlight.h>
-#include <linux/mtd/mtd.h>
-#include <linux/mtd/partitions.h>
-
-#include <asm/mach/arch.h>
-#include <asm/mach/map.h>
-#include <asm/mach/irq.h>
-
-#include <video/samsung_fimd.h>
-#include "map.h"
-#include "irqs.h"
-
-#include <asm/irq.h>
-#include <asm/mach-types.h>
-
-#include <linux/platform_data/i2c-s3c2410.h>
-#include "gpio-samsung.h"
-#include "fb.h"
-#include <linux/platform_data/mtd-nand-s3c2410.h>
-
-#include "devs.h"
-#include "cpu.h"
-
-#include "s3c64xx.h"
-
-#define UCON S3C2410_UCON_DEFAULT
-#define ULCON (S3C2410_LCON_CS8 | S3C2410_LCON_PNONE)
-#define UFCON (S3C2410_UFCON_RXTRIG8 | S3C2410_UFCON_FIFOMODE)
-
-static struct s3c2410_uartcfg hmt_uartcfgs[] __initdata = {
-       [0] = {
-               .hwport      = 0,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [1] = {
-               .hwport      = 1,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [2] = {
-               .hwport      = 2,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-};
-
-static struct pwm_lookup hmt_pwm_lookup[] = {
-       PWM_LOOKUP("samsung-pwm", 1, "pwm-backlight.0", NULL,
-                  1000000000 / (100 * 256 * 20), PWM_POLARITY_NORMAL),
-};
-
-static int hmt_bl_init(struct device *dev)
-{
-       int ret;
-
-       ret = gpio_request(S3C64XX_GPB(4), "lcd backlight enable");
-       if (!ret)
-               ret = gpio_direction_output(S3C64XX_GPB(4), 0);
-
-       return ret;
-}
-
-static int hmt_bl_notify(struct device *dev, int brightness)
-{
-       /*
-        * translate from CIELUV/CIELAB L*->brightness, E.G. from
-        * perceived luminance to light output. Assumes range 0..25600
-        */
-       if (brightness < 0x800) {
-               /* Y = Yn * L / 903.3 */
-               brightness = (100*256 * brightness + 231245/2) / 231245;
-       } else {
-               /* Y = Yn * ((L + 16) / 116 )^3 */
-               int t = (brightness*4 + 16*1024 + 58)/116;
-               brightness = 25 * ((t * t * t + 0x100000/2) / 0x100000);
-       }
-
-       gpio_set_value(S3C64XX_GPB(4), brightness);
-
-       return brightness;
-}
-
-static void hmt_bl_exit(struct device *dev)
-{
-       gpio_free(S3C64XX_GPB(4));
-}
-
-static struct platform_pwm_backlight_data hmt_backlight_data = {
-       .max_brightness = 100 * 256,
-       .dft_brightness = 40 * 256,
-       .init           = hmt_bl_init,
-       .notify         = hmt_bl_notify,
-       .exit           = hmt_bl_exit,
-
-};
-
-static struct platform_device hmt_backlight_device = {
-       .name           = "pwm-backlight",
-       .dev            = {
-               .parent = &samsung_device_pwm.dev,
-               .platform_data = &hmt_backlight_data,
-       },
-};
-
-static struct s3c_fb_pd_win hmt_fb_win0 = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-static struct fb_videomode hmt_lcd_timing = {
-       .left_margin    = 8,
-       .right_margin   = 13,
-       .upper_margin   = 7,
-       .lower_margin   = 5,
-       .hsync_len      = 3,
-       .vsync_len      = 1,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-/* 405566 clocks per frame => 60Hz refresh requires 24333960Hz clock */
-static struct s3c_fb_platdata hmt_lcd_pdata __initdata = {
-       .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-       .vtiming        = &hmt_lcd_timing,
-       .win[0]         = &hmt_fb_win0,
-       .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-       .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC,
-};
-
-static struct mtd_partition hmt_nand_part[] = {
-       [0] = {
-               .name   = "uboot",
-               .size   = SZ_512K,
-               .offset = 0,
-       },
-       [1] = {
-               .name   = "uboot-env1",
-               .size   = SZ_256K,
-               .offset = SZ_512K,
-       },
-       [2] = {
-               .name   = "uboot-env2",
-               .size   = SZ_256K,
-               .offset = SZ_512K + SZ_256K,
-       },
-       [3] = {
-               .name   = "kernel",
-               .size   = SZ_2M,
-               .offset = SZ_1M,
-       },
-       [4] = {
-               .name   = "rootfs",
-               .size   = MTDPART_SIZ_FULL,
-               .offset = SZ_1M + SZ_2M,
-       },
-};
-
-static struct s3c2410_nand_set hmt_nand_sets[] = {
-       [0] = {
-               .name           = "nand",
-               .nr_chips       = 1,
-               .nr_partitions  = ARRAY_SIZE(hmt_nand_part),
-               .partitions     = hmt_nand_part,
-       },
-};
-
-static struct s3c2410_platform_nand hmt_nand_info = {
-       .tacls          = 25,
-       .twrph0         = 55,
-       .twrph1         = 40,
-       .nr_sets        = ARRAY_SIZE(hmt_nand_sets),
-       .sets           = hmt_nand_sets,
-       .engine_type    = NAND_ECC_ENGINE_TYPE_SOFT,
-};
-
-static struct gpio_led hmt_leds[] = {
-       { /* left function keys */
-               .name                   = "left:blue",
-               .gpio                   = S3C64XX_GPO(12),
-               .default_trigger        = "default-on",
-       },
-       { /* right function keys - red */
-               .name                   = "right:red",
-               .gpio                   = S3C64XX_GPO(13),
-       },
-       { /* right function keys - green */
-               .name                   = "right:green",
-               .gpio                   = S3C64XX_GPO(14),
-       },
-       { /* right function keys - blue */
-               .name                   = "right:blue",
-               .gpio                   = S3C64XX_GPO(15),
-               .default_trigger        = "default-on",
-       },
-};
-
-static struct gpio_led_platform_data hmt_led_data = {
-       .num_leds = ARRAY_SIZE(hmt_leds),
-       .leds = hmt_leds,
-};
-
-static struct platform_device hmt_leds_device = {
-       .name                   = "leds-gpio",
-       .id                     = -1,
-       .dev.platform_data      = &hmt_led_data,
-};
-
-static struct map_desc hmt_iodesc[] = {};
-
-static struct platform_device *hmt_devices[] __initdata = {
-       &s3c_device_i2c0,
-       &s3c_device_nand,
-       &s3c_device_fb,
-       &s3c_device_ohci,
-       &samsung_device_pwm,
-       &hmt_backlight_device,
-       &hmt_leds_device,
-};
-
-static void __init hmt_map_io(void)
-{
-       s3c64xx_init_io(hmt_iodesc, ARRAY_SIZE(hmt_iodesc));
-       s3c64xx_set_xtal_freq(12000000);
-       s3c24xx_init_uarts(hmt_uartcfgs, ARRAY_SIZE(hmt_uartcfgs));
-       s3c64xx_set_timer_source(S3C64XX_PWM3, S3C64XX_PWM4);
-}
-
-static void __init hmt_machine_init(void)
-{
-       s3c_i2c0_set_platdata(NULL);
-       s3c_fb_set_platdata(&hmt_lcd_pdata);
-       s3c_nand_set_platdata(&hmt_nand_info);
-
-       gpio_request(S3C64XX_GPC(7), "usb power");
-       gpio_direction_output(S3C64XX_GPC(7), 0);
-       gpio_request(S3C64XX_GPM(0), "usb power");
-       gpio_direction_output(S3C64XX_GPM(0), 1);
-       gpio_request(S3C64XX_GPK(7), "usb power");
-       gpio_direction_output(S3C64XX_GPK(7), 1);
-       gpio_request(S3C64XX_GPF(13), "usb power");
-       gpio_direction_output(S3C64XX_GPF(13), 1);
-
-       pwm_add_table(hmt_pwm_lookup, ARRAY_SIZE(hmt_pwm_lookup));
-       platform_add_devices(hmt_devices, ARRAY_SIZE(hmt_devices));
-}
-
-MACHINE_START(HMT, "Airgoo-HMT")
-       /* Maintainer: Peter Korsgaard <jacmet@sunsite.dk> */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6410_init_irq,
-       .map_io         = hmt_map_io,
-       .init_machine   = hmt_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END
diff --git a/arch/arm/mach-s3c/mach-mini6410.c b/arch/arm/mach-s3c/mach-mini6410.c
deleted file mode 100644 (file)
index 058ae9e..0000000
+++ /dev/null
@@ -1,365 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright 2010 Darius Augulis <augulis.darius@gmail.com>
-// Copyright 2008 Openmoko, Inc.
-// Copyright 2008 Simtec Electronics
-//     Ben Dooks <ben@simtec.co.uk>
-//     http://armlinux.simtec.co.uk/
-
-#include <linux/init.h>
-#include <linux/interrupt.h>
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/kernel.h>
-#include <linux/list.h>
-#include <linux/dm9000.h>
-#include <linux/mtd/mtd.h>
-#include <linux/mtd/partitions.h>
-#include <linux/serial_core.h>
-#include <linux/serial_s3c.h>
-#include <linux/types.h>
-
-#include <asm/mach-types.h>
-#include <asm/mach/arch.h>
-#include <asm/mach/map.h>
-
-#include "map.h"
-#include "regs-gpio.h"
-#include "gpio-samsung.h"
-
-#include <linux/soc/samsung/s3c-adc.h>
-#include "cpu.h"
-#include "devs.h"
-#include "fb.h"
-#include <linux/platform_data/mtd-nand-s3c2410.h>
-#include <linux/platform_data/mmc-sdhci-s3c.h>
-#include "sdhci.h"
-#include <linux/platform_data/touchscreen-s3c2410.h>
-#include "irqs.h"
-
-#include <video/platform_lcd.h>
-#include <video/samsung_fimd.h>
-
-#include "s3c64xx.h"
-#include "regs-modem-s3c64xx.h"
-#include "regs-srom-s3c64xx.h"
-
-#define UCON S3C2410_UCON_DEFAULT
-#define ULCON (S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB)
-#define UFCON (S3C2410_UFCON_RXTRIG8 | S3C2410_UFCON_FIFOMODE)
-
-static struct s3c2410_uartcfg mini6410_uartcfgs[] __initdata = {
-       [0] = {
-               .hwport = 0,
-               .flags  = 0,
-               .ucon   = UCON,
-               .ulcon  = ULCON,
-               .ufcon  = UFCON,
-       },
-       [1] = {
-               .hwport = 1,
-               .flags  = 0,
-               .ucon   = UCON,
-               .ulcon  = ULCON,
-               .ufcon  = UFCON,
-       },
-       [2] = {
-               .hwport = 2,
-               .flags  = 0,
-               .ucon   = UCON,
-               .ulcon  = ULCON,
-               .ufcon  = UFCON,
-       },
-       [3] = {
-               .hwport = 3,
-               .flags  = 0,
-               .ucon   = UCON,
-               .ulcon  = ULCON,
-               .ufcon  = UFCON,
-       },
-};
-
-/* DM9000AEP 10/100 ethernet controller */
-
-static struct resource mini6410_dm9k_resource[] = {
-       [0] = DEFINE_RES_MEM(S3C64XX_PA_XM0CSN1, 2),
-       [1] = DEFINE_RES_MEM(S3C64XX_PA_XM0CSN1 + 4, 2),
-       [2] = DEFINE_RES_NAMED(S3C_EINT(7), 1, NULL, IORESOURCE_IRQ \
-                                       | IORESOURCE_IRQ_HIGHLEVEL),
-};
-
-static struct dm9000_plat_data mini6410_dm9k_pdata = {
-       .flags          = (DM9000_PLATF_16BITONLY | DM9000_PLATF_NO_EEPROM),
-};
-
-static struct platform_device mini6410_device_eth = {
-       .name           = "dm9000",
-       .id             = -1,
-       .num_resources  = ARRAY_SIZE(mini6410_dm9k_resource),
-       .resource       = mini6410_dm9k_resource,
-       .dev            = {
-               .platform_data  = &mini6410_dm9k_pdata,
-       },
-};
-
-static struct mtd_partition mini6410_nand_part[] = {
-       [0] = {
-               .name   = "uboot",
-               .size   = SZ_1M,
-               .offset = 0,
-       },
-       [1] = {
-               .name   = "kernel",
-               .size   = SZ_2M,
-               .offset = SZ_1M,
-       },
-       [2] = {
-               .name   = "rootfs",
-               .size   = MTDPART_SIZ_FULL,
-               .offset = SZ_1M + SZ_2M,
-       },
-};
-
-static struct s3c2410_nand_set mini6410_nand_sets[] = {
-       [0] = {
-               .name           = "nand",
-               .nr_chips       = 1,
-               .nr_partitions  = ARRAY_SIZE(mini6410_nand_part),
-               .partitions     = mini6410_nand_part,
-       },
-};
-
-static struct s3c2410_platform_nand mini6410_nand_info = {
-       .tacls          = 25,
-       .twrph0         = 55,
-       .twrph1         = 40,
-       .nr_sets        = ARRAY_SIZE(mini6410_nand_sets),
-       .sets           = mini6410_nand_sets,
-       .engine_type    = NAND_ECC_ENGINE_TYPE_SOFT,
-};
-
-static struct s3c_fb_pd_win mini6410_lcd_type0_fb_win = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 480,
-       .yres           = 272,
-};
-
-static struct fb_videomode mini6410_lcd_type0_timing = {
-       /* 4.3" 480x272 */
-       .left_margin    = 3,
-       .right_margin   = 2,
-       .upper_margin   = 1,
-       .lower_margin   = 1,
-       .hsync_len      = 40,
-       .vsync_len      = 1,
-       .xres           = 480,
-       .yres           = 272,
-};
-
-static struct s3c_fb_pd_win mini6410_lcd_type1_fb_win = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-static struct fb_videomode mini6410_lcd_type1_timing = {
-       /* 7.0" 800x480 */
-       .left_margin    = 8,
-       .right_margin   = 13,
-       .upper_margin   = 7,
-       .lower_margin   = 5,
-       .hsync_len      = 3,
-       .vsync_len      = 1,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-static struct s3c_fb_platdata mini6410_lcd_pdata[] __initdata = {
-       {
-               .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-               .vtiming        = &mini6410_lcd_type0_timing,
-               .win[0]         = &mini6410_lcd_type0_fb_win,
-               .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-               .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC,
-       }, {
-               .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-               .vtiming        = &mini6410_lcd_type1_timing,
-               .win[0]         = &mini6410_lcd_type1_fb_win,
-               .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-               .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC,
-       },
-       { },
-};
-
-static void mini6410_lcd_power_set(struct plat_lcd_data *pd,
-                                  unsigned int power)
-{
-       if (power)
-               gpio_direction_output(S3C64XX_GPE(0), 1);
-       else
-               gpio_direction_output(S3C64XX_GPE(0), 0);
-}
-
-static struct plat_lcd_data mini6410_lcd_power_data = {
-       .set_power      = mini6410_lcd_power_set,
-};
-
-static struct platform_device mini6410_lcd_powerdev = {
-       .name                   = "platform-lcd",
-       .dev.parent             = &s3c_device_fb.dev,
-       .dev.platform_data      = &mini6410_lcd_power_data,
-};
-
-static struct s3c_sdhci_platdata mini6410_hsmmc1_pdata = {
-       .max_width              = 4,
-       .cd_type                = S3C_SDHCI_CD_GPIO,
-       .ext_cd_gpio            = S3C64XX_GPN(10),
-       .ext_cd_gpio_invert     = true,
-};
-
-static struct platform_device *mini6410_devices[] __initdata = {
-       &mini6410_device_eth,
-       &s3c_device_hsmmc0,
-       &s3c_device_hsmmc1,
-       &s3c_device_ohci,
-       &s3c_device_nand,
-       &s3c_device_fb,
-       &mini6410_lcd_powerdev,
-       &s3c_device_adc,
-};
-
-static void __init mini6410_map_io(void)
-{
-       u32 tmp;
-
-       s3c64xx_init_io(NULL, 0);
-       s3c64xx_set_xtal_freq(12000000);
-       s3c24xx_init_uarts(mini6410_uartcfgs, ARRAY_SIZE(mini6410_uartcfgs));
-       s3c64xx_set_timer_source(S3C64XX_PWM3, S3C64XX_PWM4);
-
-       /* set the LCD type */
-       tmp = __raw_readl(S3C64XX_SPCON);
-       tmp &= ~S3C64XX_SPCON_LCD_SEL_MASK;
-       tmp |= S3C64XX_SPCON_LCD_SEL_RGB;
-       __raw_writel(tmp, S3C64XX_SPCON);
-
-       /* remove the LCD bypass */
-       tmp = __raw_readl(S3C64XX_MODEM_MIFPCON);
-       tmp &= ~MIFPCON_LCD_BYPASS;
-       __raw_writel(tmp, S3C64XX_MODEM_MIFPCON);
-}
-
-/*
- * mini6410_features string
- *
- * 0-9 LCD configuration
- *
- */
-static char mini6410_features_str[12] __initdata = "0";
-
-static int __init mini6410_features_setup(char *str)
-{
-       if (str)
-               strscpy(mini6410_features_str, str,
-                       sizeof(mini6410_features_str));
-       return 1;
-}
-
-__setup("mini6410=", mini6410_features_setup);
-
-#define FEATURE_SCREEN (1 << 0)
-
-struct mini6410_features_t {
-       int done;
-       int lcd_index;
-};
-
-static void mini6410_parse_features(
-               struct mini6410_features_t *features,
-               const char *features_str)
-{
-       const char *fp = features_str;
-
-       features->done = 0;
-       features->lcd_index = 0;
-
-       while (*fp) {
-               char f = *fp++;
-
-               switch (f) {
-               case '0'...'9': /* tft screen */
-                       if (features->done & FEATURE_SCREEN) {
-                               printk(KERN_INFO "MINI6410: '%c' ignored, "
-                                       "screen type already set\n", f);
-                       } else {
-                               int li = f - '0';
-                               if (li >= ARRAY_SIZE(mini6410_lcd_pdata))
-                                       printk(KERN_INFO "MINI6410: '%c' out "
-                                               "of range LCD mode\n", f);
-                               else {
-                                       features->lcd_index = li;
-                               }
-                       }
-                       features->done |= FEATURE_SCREEN;
-                       break;
-               }
-       }
-}
-
-static void __init mini6410_machine_init(void)
-{
-       u32 cs1;
-       struct mini6410_features_t features = { 0 };
-
-       printk(KERN_INFO "MINI6410: Option string mini6410=%s\n",
-                       mini6410_features_str);
-
-       /* Parse the feature string */
-       mini6410_parse_features(&features, mini6410_features_str);
-
-       printk(KERN_INFO "MINI6410: selected LCD display is %dx%d\n",
-               mini6410_lcd_pdata[features.lcd_index].win[0]->xres,
-               mini6410_lcd_pdata[features.lcd_index].win[0]->yres);
-
-       s3c_nand_set_platdata(&mini6410_nand_info);
-       s3c_fb_set_platdata(&mini6410_lcd_pdata[features.lcd_index]);
-       s3c_sdhci1_set_platdata(&mini6410_hsmmc1_pdata);
-       s3c64xx_ts_set_platdata(NULL);
-
-       /* configure nCS1 width to 16 bits */
-
-       cs1 = __raw_readl(S3C64XX_SROM_BW) &
-               ~(S3C64XX_SROM_BW__CS_MASK << S3C64XX_SROM_BW__NCS1__SHIFT);
-       cs1 |= ((1 << S3C64XX_SROM_BW__DATAWIDTH__SHIFT) |
-               (1 << S3C64XX_SROM_BW__WAITENABLE__SHIFT) |
-               (1 << S3C64XX_SROM_BW__BYTEENABLE__SHIFT)) <<
-                       S3C64XX_SROM_BW__NCS1__SHIFT;
-       __raw_writel(cs1, S3C64XX_SROM_BW);
-
-       /* set timing for nCS1 suitable for ethernet chip */
-
-       __raw_writel((0 << S3C64XX_SROM_BCX__PMC__SHIFT) |
-               (6 << S3C64XX_SROM_BCX__TACP__SHIFT) |
-               (4 << S3C64XX_SROM_BCX__TCAH__SHIFT) |
-               (1 << S3C64XX_SROM_BCX__TCOH__SHIFT) |
-               (13 << S3C64XX_SROM_BCX__TACC__SHIFT) |
-               (4 << S3C64XX_SROM_BCX__TCOS__SHIFT) |
-               (0 << S3C64XX_SROM_BCX__TACS__SHIFT), S3C64XX_SROM_BC1);
-
-       gpio_request(S3C64XX_GPF(15), "LCD power");
-       gpio_request(S3C64XX_GPE(0), "LCD power");
-
-       platform_add_devices(mini6410_devices, ARRAY_SIZE(mini6410_devices));
-}
-
-MACHINE_START(MINI6410, "MINI6410")
-       /* Maintainer: Darius Augulis <augulis.darius@gmail.com> */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6410_init_irq,
-       .map_io         = mini6410_map_io,
-       .init_machine   = mini6410_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END
diff --git a/arch/arm/mach-s3c/mach-ncp.c b/arch/arm/mach-s3c/mach-ncp.c
deleted file mode 100644 (file)
index 1e65f8b..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright (C) 2008-2009 Samsung Electronics
-
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/interrupt.h>
-#include <linux/list.h>
-#include <linux/timer.h>
-#include <linux/init.h>
-#include <linux/serial_core.h>
-#include <linux/serial_s3c.h>
-#include <linux/platform_device.h>
-#include <linux/io.h>
-#include <linux/i2c.h>
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/delay.h>
-
-#include <video/platform_lcd.h>
-#include <video/samsung_fimd.h>
-
-#include <asm/mach/arch.h>
-#include <asm/mach/map.h>
-#include <asm/mach/irq.h>
-
-#include "irqs.h"
-#include "map.h"
-
-#include <asm/irq.h>
-#include <asm/mach-types.h>
-
-#include <linux/platform_data/i2c-s3c2410.h>
-#include "fb.h"
-
-#include "devs.h"
-#include "cpu.h"
-
-#include "s3c64xx.h"
-
-#define UCON S3C2410_UCON_DEFAULT
-#define ULCON S3C2410_LCON_CS8 | S3C2410_LCON_PNONE
-#define UFCON S3C2410_UFCON_RXTRIG8 | S3C2410_UFCON_FIFOMODE
-
-static struct s3c2410_uartcfg ncp_uartcfgs[] __initdata = {
-       /* REVISIT: NCP uses only serial 1, 2 */
-       [0] = {
-               .hwport      = 0,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [1] = {
-               .hwport      = 1,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [2] = {
-               .hwport      = 2,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-};
-
-static struct platform_device *ncp_devices[] __initdata = {
-       &s3c_device_hsmmc1,
-       &s3c_device_i2c0,
-};
-
-static struct map_desc ncp_iodesc[] __initdata = {};
-
-static void __init ncp_map_io(void)
-{
-       s3c64xx_init_io(ncp_iodesc, ARRAY_SIZE(ncp_iodesc));
-       s3c64xx_set_xtal_freq(12000000);
-       s3c24xx_init_uarts(ncp_uartcfgs, ARRAY_SIZE(ncp_uartcfgs));
-       s3c64xx_set_timer_source(S3C64XX_PWM3, S3C64XX_PWM4);
-}
-
-static void __init ncp_machine_init(void)
-{
-       s3c_i2c0_set_platdata(NULL);
-
-       platform_add_devices(ncp_devices, ARRAY_SIZE(ncp_devices));
-}
-
-MACHINE_START(NCP, "NCP")
-       /* Maintainer: Samsung Electronics */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6410_init_irq,
-       .map_io         = ncp_map_io,
-       .init_machine   = ncp_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END
diff --git a/arch/arm/mach-s3c/mach-real6410.c b/arch/arm/mach-s3c/mach-real6410.c
deleted file mode 100644 (file)
index 8c10ebc..0000000
+++ /dev/null
@@ -1,333 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright 2010 Darius Augulis <augulis.darius@gmail.com>
-// Copyright 2008 Openmoko, Inc.
-// Copyright 2008 Simtec Electronics
-//     Ben Dooks <ben@simtec.co.uk>
-//     http://armlinux.simtec.co.uk/
-
-#include <linux/init.h>
-#include <linux/interrupt.h>
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/kernel.h>
-#include <linux/list.h>
-#include <linux/dm9000.h>
-#include <linux/mtd/mtd.h>
-#include <linux/mtd/partitions.h>
-#include <linux/platform_device.h>
-#include <linux/serial_core.h>
-#include <linux/serial_s3c.h>
-#include <linux/types.h>
-
-#include <asm/mach-types.h>
-#include <asm/mach/arch.h>
-#include <asm/mach/map.h>
-
-#include "map.h"
-#include "regs-gpio.h"
-#include "gpio-samsung.h"
-#include "irqs.h"
-
-#include <linux/soc/samsung/s3c-adc.h>
-#include "cpu.h"
-#include "devs.h"
-#include "fb.h"
-#include <linux/platform_data/mtd-nand-s3c2410.h>
-#include <linux/platform_data/touchscreen-s3c2410.h>
-
-#include <video/platform_lcd.h>
-#include <video/samsung_fimd.h>
-
-#include "s3c64xx.h"
-#include "regs-modem-s3c64xx.h"
-#include "regs-srom-s3c64xx.h"
-
-#define UCON S3C2410_UCON_DEFAULT
-#define ULCON (S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB)
-#define UFCON (S3C2410_UFCON_RXTRIG8 | S3C2410_UFCON_FIFOMODE)
-
-static struct s3c2410_uartcfg real6410_uartcfgs[] __initdata = {
-       [0] = {
-               .hwport = 0,
-               .flags  = 0,
-               .ucon   = UCON,
-               .ulcon  = ULCON,
-               .ufcon  = UFCON,
-       },
-       [1] = {
-               .hwport = 1,
-               .flags  = 0,
-               .ucon   = UCON,
-               .ulcon  = ULCON,
-               .ufcon  = UFCON,
-       },
-       [2] = {
-               .hwport = 2,
-               .flags  = 0,
-               .ucon   = UCON,
-               .ulcon  = ULCON,
-               .ufcon  = UFCON,
-       },
-       [3] = {
-               .hwport = 3,
-               .flags  = 0,
-               .ucon   = UCON,
-               .ulcon  = ULCON,
-               .ufcon  = UFCON,
-       },
-};
-
-/* DM9000AEP 10/100 ethernet controller */
-
-static struct resource real6410_dm9k_resource[] = {
-       [0] = DEFINE_RES_MEM(S3C64XX_PA_XM0CSN1, 2),
-       [1] = DEFINE_RES_MEM(S3C64XX_PA_XM0CSN1 + 4, 2),
-       [2] = DEFINE_RES_NAMED(S3C_EINT(7), 1, NULL, IORESOURCE_IRQ \
-                                       | IORESOURCE_IRQ_HIGHLEVEL),
-};
-
-static struct dm9000_plat_data real6410_dm9k_pdata = {
-       .flags          = (DM9000_PLATF_16BITONLY | DM9000_PLATF_NO_EEPROM),
-};
-
-static struct platform_device real6410_device_eth = {
-       .name           = "dm9000",
-       .id             = -1,
-       .num_resources  = ARRAY_SIZE(real6410_dm9k_resource),
-       .resource       = real6410_dm9k_resource,
-       .dev            = {
-               .platform_data  = &real6410_dm9k_pdata,
-       },
-};
-
-static struct s3c_fb_pd_win real6410_lcd_type0_fb_win = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 480,
-       .yres           = 272,
-};
-
-static struct fb_videomode real6410_lcd_type0_timing = {
-       /* 4.3" 480x272 */
-       .left_margin    = 3,
-       .right_margin   = 2,
-       .upper_margin   = 1,
-       .lower_margin   = 1,
-       .hsync_len      = 40,
-       .vsync_len      = 1,
-};
-
-static struct s3c_fb_pd_win real6410_lcd_type1_fb_win = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-static struct fb_videomode real6410_lcd_type1_timing = {
-       /* 7.0" 800x480 */
-       .left_margin    = 8,
-       .right_margin   = 13,
-       .upper_margin   = 7,
-       .lower_margin   = 5,
-       .hsync_len      = 3,
-       .vsync_len      = 1,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-static struct s3c_fb_platdata real6410_lcd_pdata[] __initdata = {
-       {
-               .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-               .vtiming        = &real6410_lcd_type0_timing,
-               .win[0]         = &real6410_lcd_type0_fb_win,
-               .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-               .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC,
-       }, {
-               .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-               .vtiming        = &real6410_lcd_type1_timing,
-               .win[0]         = &real6410_lcd_type1_fb_win,
-               .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-               .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC,
-       },
-       { },
-};
-
-static struct mtd_partition real6410_nand_part[] = {
-       [0] = {
-               .name   = "uboot",
-               .size   = SZ_1M,
-               .offset = 0,
-       },
-       [1] = {
-               .name   = "kernel",
-               .size   = SZ_2M,
-               .offset = SZ_1M,
-       },
-       [2] = {
-               .name   = "rootfs",
-               .size   = MTDPART_SIZ_FULL,
-               .offset = SZ_1M + SZ_2M,
-       },
-};
-
-static struct s3c2410_nand_set real6410_nand_sets[] = {
-       [0] = {
-               .name           = "nand",
-               .nr_chips       = 1,
-               .nr_partitions  = ARRAY_SIZE(real6410_nand_part),
-               .partitions     = real6410_nand_part,
-       },
-};
-
-static struct s3c2410_platform_nand real6410_nand_info = {
-       .tacls          = 25,
-       .twrph0         = 55,
-       .twrph1         = 40,
-       .nr_sets        = ARRAY_SIZE(real6410_nand_sets),
-       .sets           = real6410_nand_sets,
-       .engine_type    = NAND_ECC_ENGINE_TYPE_SOFT,
-};
-
-static struct platform_device *real6410_devices[] __initdata = {
-       &real6410_device_eth,
-       &s3c_device_hsmmc0,
-       &s3c_device_hsmmc1,
-       &s3c_device_fb,
-       &s3c_device_nand,
-       &s3c_device_adc,
-       &s3c_device_ohci,
-};
-
-static void __init real6410_map_io(void)
-{
-       u32 tmp;
-
-       s3c64xx_init_io(NULL, 0);
-       s3c24xx_init_clocks(12000000);
-       s3c24xx_init_uarts(real6410_uartcfgs, ARRAY_SIZE(real6410_uartcfgs));
-       s3c64xx_set_timer_source(S3C64XX_PWM3, S3C64XX_PWM4);
-
-       /* set the LCD type */
-       tmp = __raw_readl(S3C64XX_SPCON);
-       tmp &= ~S3C64XX_SPCON_LCD_SEL_MASK;
-       tmp |= S3C64XX_SPCON_LCD_SEL_RGB;
-       __raw_writel(tmp, S3C64XX_SPCON);
-
-       /* remove the LCD bypass */
-       tmp = __raw_readl(S3C64XX_MODEM_MIFPCON);
-       tmp &= ~MIFPCON_LCD_BYPASS;
-       __raw_writel(tmp, S3C64XX_MODEM_MIFPCON);
-}
-
-/*
- * real6410_features string
- *
- * 0-9 LCD configuration
- *
- */
-static char real6410_features_str[12] __initdata = "0";
-
-static int __init real6410_features_setup(char *str)
-{
-       if (str)
-               strlcpy(real6410_features_str, str,
-                       sizeof(real6410_features_str));
-       return 1;
-}
-
-__setup("real6410=", real6410_features_setup);
-
-#define FEATURE_SCREEN (1 << 0)
-
-struct real6410_features_t {
-       int done;
-       int lcd_index;
-};
-
-static void real6410_parse_features(
-               struct real6410_features_t *features,
-               const char *features_str)
-{
-       const char *fp = features_str;
-
-       features->done = 0;
-       features->lcd_index = 0;
-
-       while (*fp) {
-               char f = *fp++;
-
-               switch (f) {
-               case '0'...'9': /* tft screen */
-                       if (features->done & FEATURE_SCREEN) {
-                               printk(KERN_INFO "REAL6410: '%c' ignored, "
-                                       "screen type already set\n", f);
-                       } else {
-                               int li = f - '0';
-                               if (li >= ARRAY_SIZE(real6410_lcd_pdata))
-                                       printk(KERN_INFO "REAL6410: '%c' out "
-                                               "of range LCD mode\n", f);
-                               else {
-                                       features->lcd_index = li;
-                               }
-                       }
-                       features->done |= FEATURE_SCREEN;
-                       break;
-               }
-       }
-}
-
-static void __init real6410_machine_init(void)
-{
-       u32 cs1;
-       struct real6410_features_t features = { 0 };
-
-       printk(KERN_INFO "REAL6410: Option string real6410=%s\n",
-                       real6410_features_str);
-
-       /* Parse the feature string */
-       real6410_parse_features(&features, real6410_features_str);
-
-       printk(KERN_INFO "REAL6410: selected LCD display is %dx%d\n",
-               real6410_lcd_pdata[features.lcd_index].win[0]->xres,
-               real6410_lcd_pdata[features.lcd_index].win[0]->yres);
-
-       s3c_fb_set_platdata(&real6410_lcd_pdata[features.lcd_index]);
-       s3c_nand_set_platdata(&real6410_nand_info);
-       s3c64xx_ts_set_platdata(NULL);
-
-       /* configure nCS1 width to 16 bits */
-
-       cs1 = __raw_readl(S3C64XX_SROM_BW) &
-               ~(S3C64XX_SROM_BW__CS_MASK << S3C64XX_SROM_BW__NCS1__SHIFT);
-       cs1 |= ((1 << S3C64XX_SROM_BW__DATAWIDTH__SHIFT) |
-               (1 << S3C64XX_SROM_BW__WAITENABLE__SHIFT) |
-               (1 << S3C64XX_SROM_BW__BYTEENABLE__SHIFT)) <<
-                       S3C64XX_SROM_BW__NCS1__SHIFT;
-       __raw_writel(cs1, S3C64XX_SROM_BW);
-
-       /* set timing for nCS1 suitable for ethernet chip */
-
-       __raw_writel((0 << S3C64XX_SROM_BCX__PMC__SHIFT) |
-               (6 << S3C64XX_SROM_BCX__TACP__SHIFT) |
-               (4 << S3C64XX_SROM_BCX__TCAH__SHIFT) |
-               (1 << S3C64XX_SROM_BCX__TCOH__SHIFT) |
-               (13 << S3C64XX_SROM_BCX__TACC__SHIFT) |
-               (4 << S3C64XX_SROM_BCX__TCOS__SHIFT) |
-               (0 << S3C64XX_SROM_BCX__TACS__SHIFT), S3C64XX_SROM_BC1);
-
-       gpio_request(S3C64XX_GPF(15), "LCD power");
-
-       platform_add_devices(real6410_devices, ARRAY_SIZE(real6410_devices));
-}
-
-MACHINE_START(REAL6410, "REAL6410")
-       /* Maintainer: Darius Augulis <augulis.darius@gmail.com> */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6410_init_irq,
-       .map_io         = real6410_map_io,
-       .init_machine   = real6410_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END
diff --git a/arch/arm/mach-s3c/mach-smartq.c b/arch/arm/mach-s3c/mach-smartq.c
deleted file mode 100644 (file)
index 5b6e7c2..0000000
+++ /dev/null
@@ -1,424 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright (C) 2010 Maurus Cuelenaere
-
-#include <linux/delay.h>
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/gpio/machine.h>
-#include <linux/init.h>
-#include <linux/platform_device.h>
-#include <linux/pwm.h>
-#include <linux/pwm_backlight.h>
-#include <linux/serial_core.h>
-#include <linux/serial_s3c.h>
-#include <linux/spi/spi_gpio.h>
-#include <linux/platform_data/s3c-hsotg.h>
-
-#include <asm/mach-types.h>
-#include <asm/mach/map.h>
-
-#include "map.h"
-#include "regs-gpio.h"
-#include "gpio-samsung.h"
-
-#include "cpu.h"
-#include "devs.h"
-#include <linux/platform_data/i2c-s3c2410.h>
-#include "gpio-cfg.h"
-#include <linux/platform_data/hwmon-s3c.h>
-#include <linux/platform_data/usb-ohci-s3c2410.h>
-#include "sdhci.h"
-#include <linux/platform_data/touchscreen-s3c2410.h>
-
-#include <video/platform_lcd.h>
-
-#include "s3c64xx.h"
-#include "mach-smartq.h"
-#include "regs-modem-s3c64xx.h"
-
-#define UCON S3C2410_UCON_DEFAULT
-#define ULCON (S3C2410_LCON_CS8 | S3C2410_LCON_PNONE)
-#define UFCON (S3C2410_UFCON_RXTRIG8 | S3C2410_UFCON_FIFOMODE)
-
-static struct s3c2410_uartcfg smartq_uartcfgs[] __initdata = {
-       [0] = {
-               .hwport      = 0,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [1] = {
-               .hwport      = 1,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [2] = {
-               .hwport      = 2,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-};
-
-static void smartq_usb_host_powercontrol(int port, int to)
-{
-       pr_debug("%s(%d, %d)\n", __func__, port, to);
-
-       if (port == 0) {
-               gpio_set_value(S3C64XX_GPL(0), to);
-               gpio_set_value(S3C64XX_GPL(1), to);
-       }
-}
-
-static irqreturn_t smartq_usb_host_ocirq(int irq, void *pw)
-{
-       struct s3c2410_hcd_info *info = pw;
-
-       if (gpio_get_value(S3C64XX_GPL(10)) == 0) {
-               pr_debug("%s: over-current irq (oc detected)\n", __func__);
-               s3c2410_usb_report_oc(info, 3);
-       } else {
-               pr_debug("%s: over-current irq (oc cleared)\n", __func__);
-               s3c2410_usb_report_oc(info, 0);
-       }
-
-       return IRQ_HANDLED;
-}
-
-static void smartq_usb_host_enableoc(struct s3c2410_hcd_info *info, int on)
-{
-       int ret;
-
-       /* This isn't present on a SmartQ 5 board */
-       if (machine_is_smartq5())
-               return;
-
-       if (on) {
-               ret = request_irq(gpio_to_irq(S3C64XX_GPL(10)),
-                                 smartq_usb_host_ocirq,
-                                 IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
-                                 "USB host overcurrent", info);
-               if (ret != 0)
-                       pr_err("failed to request usb oc irq: %d\n", ret);
-       } else {
-               free_irq(gpio_to_irq(S3C64XX_GPL(10)), info);
-       }
-}
-
-static struct s3c2410_hcd_info smartq_usb_host_info = {
-       .port[0]        = {
-               .flags  = S3C_HCDFLG_USED
-       },
-       .port[1]        = {
-               .flags  = 0
-       },
-
-       .power_control  = smartq_usb_host_powercontrol,
-       .enable_oc      = smartq_usb_host_enableoc,
-};
-
-static struct gpiod_lookup_table smartq_usb_otg_vbus_gpiod_table = {
-       .dev_id = "gpio-vbus",
-       .table = {
-               GPIO_LOOKUP("GPL", 9, "vbus", GPIO_ACTIVE_LOW),
-               { },
-       },
-};
-
-static struct platform_device smartq_usb_otg_vbus_dev = {
-       .name                   = "gpio-vbus",
-};
-
-static struct pwm_lookup smartq_pwm_lookup[] = {
-       PWM_LOOKUP("samsung-pwm", 1, "pwm-backlight.0", NULL,
-                  1000000000 / (1000 * 20), PWM_POLARITY_NORMAL),
-};
-
-static int smartq_bl_init(struct device *dev)
-{
-    s3c_gpio_cfgpin(S3C64XX_GPF(15), S3C_GPIO_SFN(2));
-
-    return 0;
-}
-
-static struct platform_pwm_backlight_data smartq_backlight_data = {
-       .max_brightness = 1000,
-       .dft_brightness = 600,
-       .init           = smartq_bl_init,
-};
-
-static struct platform_device smartq_backlight_device = {
-       .name           = "pwm-backlight",
-       .dev            = {
-               .parent = &samsung_device_pwm.dev,
-               .platform_data = &smartq_backlight_data,
-       },
-};
-
-static struct s3c2410_ts_mach_info smartq_touchscreen_pdata __initdata = {
-       .delay                  = 65535,
-       .presc                  = 99,
-       .oversampling_shift     = 4,
-};
-
-static struct s3c_sdhci_platdata smartq_internal_hsmmc_pdata = {
-       .max_width              = 4,
-       .cd_type                = S3C_SDHCI_CD_PERMANENT,
-};
-
-static struct s3c_hwmon_pdata smartq_hwmon_pdata __initdata = {
-       /* Battery voltage (?-4.2V) */
-       .in[0] = &(struct s3c_hwmon_chcfg) {
-               .name           = "smartq:battery-voltage",
-               .mult           = 3300,
-               .div            = 2048,
-       },
-       /* Reference voltage (1.2V) */
-       .in[1] = &(struct s3c_hwmon_chcfg) {
-               .name           = "smartq:reference-voltage",
-               .mult           = 3300,
-               .div            = 4096,
-       },
-};
-
-static struct dwc2_hsotg_plat smartq_hsotg_pdata;
-
-static int __init smartq_lcd_setup_gpio(void)
-{
-       int ret;
-
-       ret = gpio_request(S3C64XX_GPM(3), "LCD power");
-       if (ret < 0)
-               return ret;
-
-       /* turn power off */
-       gpio_direction_output(S3C64XX_GPM(3), 0);
-
-       return 0;
-}
-
-/* GPM0 -> CS */
-static struct spi_gpio_platform_data smartq_lcd_control = {
-       .num_chipselect = 1,
-};
-
-static struct platform_device smartq_lcd_control_device = {
-       .name                   = "spi_gpio",
-       .id                     = 1,
-       .dev.platform_data      = &smartq_lcd_control,
-};
-
-static struct gpiod_lookup_table smartq_lcd_control_gpiod_table = {
-       .dev_id         = "spi_gpio",
-       .table          = {
-               GPIO_LOOKUP("GPIOM", 1,
-                           "sck", GPIO_ACTIVE_HIGH),
-               GPIO_LOOKUP("GPIOM", 2,
-                           "mosi", GPIO_ACTIVE_HIGH),
-               GPIO_LOOKUP("GPIOM", 3,
-                           "miso", GPIO_ACTIVE_HIGH),
-               GPIO_LOOKUP("GPIOM", 0,
-                           "cs", GPIO_ACTIVE_HIGH),
-               { },
-       },
-};
-
-static void smartq_lcd_power_set(struct plat_lcd_data *pd, unsigned int power)
-{
-       gpio_direction_output(S3C64XX_GPM(3), power);
-}
-
-static struct plat_lcd_data smartq_lcd_power_data = {
-       .set_power      = smartq_lcd_power_set,
-};
-
-static struct platform_device smartq_lcd_power_device = {
-       .name                   = "platform-lcd",
-       .dev.parent             = &s3c_device_fb.dev,
-       .dev.platform_data      = &smartq_lcd_power_data,
-};
-
-static struct i2c_board_info smartq_i2c_devs[] __initdata = {
-       { I2C_BOARD_INFO("wm8987", 0x1a), },
-};
-
-static struct platform_device *smartq_devices[] __initdata = {
-       &s3c_device_hsmmc1,     /* Init iNAND first, ... */
-       &s3c_device_hsmmc0,     /* ... then the external SD card */
-       &s3c_device_hsmmc2,
-       &s3c_device_adc,
-       &s3c_device_fb,
-       &s3c_device_hwmon,
-       &s3c_device_i2c0,
-       &s3c_device_ohci,
-       &s3c_device_rtc,
-       &samsung_device_pwm,
-       &s3c_device_usb_hsotg,
-       &s3c64xx_device_iis0,
-       &smartq_backlight_device,
-       &smartq_lcd_control_device,
-       &smartq_lcd_power_device,
-       &smartq_usb_otg_vbus_dev,
-};
-
-static void __init smartq_lcd_mode_set(void)
-{
-       u32 tmp;
-
-       /* set the LCD type */
-       tmp = __raw_readl(S3C64XX_SPCON);
-       tmp &= ~S3C64XX_SPCON_LCD_SEL_MASK;
-       tmp |= S3C64XX_SPCON_LCD_SEL_RGB;
-       __raw_writel(tmp, S3C64XX_SPCON);
-
-       /* remove the LCD bypass */
-       tmp = __raw_readl(S3C64XX_MODEM_MIFPCON);
-       tmp &= ~MIFPCON_LCD_BYPASS;
-       __raw_writel(tmp, S3C64XX_MODEM_MIFPCON);
-}
-
-static void smartq_power_off(void)
-{
-       gpio_direction_output(S3C64XX_GPK(15), 1);
-}
-
-static int __init smartq_power_off_init(void)
-{
-       int ret;
-
-       ret = gpio_request(S3C64XX_GPK(15), "Power control");
-       if (ret < 0) {
-               pr_err("%s: failed to get GPK15\n", __func__);
-               return ret;
-       }
-
-       /* leave power on */
-       gpio_direction_output(S3C64XX_GPK(15), 0);
-
-       pm_power_off = smartq_power_off;
-
-       return ret;
-}
-
-static int __init smartq_usb_host_init(void)
-{
-       int ret;
-
-       ret = gpio_request(S3C64XX_GPL(0), "USB power control");
-       if (ret < 0) {
-               pr_err("%s: failed to get GPL0\n", __func__);
-               return ret;
-       }
-
-       ret = gpio_request(S3C64XX_GPL(1), "USB host power control");
-       if (ret < 0) {
-               pr_err("%s: failed to get GPL1\n", __func__);
-               goto err;
-       }
-
-       if (!machine_is_smartq5()) {
-               /* This isn't present on a SmartQ 5 board */
-               ret = gpio_request(S3C64XX_GPL(10), "USB host overcurrent");
-               if (ret < 0) {
-                       pr_err("%s: failed to get GPL10\n", __func__);
-                       goto err2;
-               }
-       }
-
-       /* turn power off */
-       gpio_direction_output(S3C64XX_GPL(0), 0);
-       gpio_direction_output(S3C64XX_GPL(1), 0);
-       if (!machine_is_smartq5())
-               gpio_direction_input(S3C64XX_GPL(10));
-
-       s3c_device_ohci.dev.platform_data = &smartq_usb_host_info;
-
-       return 0;
-
-err2:
-       gpio_free(S3C64XX_GPL(1));
-err:
-       gpio_free(S3C64XX_GPL(0));
-       return ret;
-}
-
-static int __init smartq_wifi_init(void)
-{
-       int ret;
-
-       ret = gpio_request(S3C64XX_GPK(1), "wifi control");
-       if (ret < 0) {
-               pr_err("%s: failed to get GPK1\n", __func__);
-               return ret;
-       }
-
-       ret = gpio_request(S3C64XX_GPK(2), "wifi reset");
-       if (ret < 0) {
-               pr_err("%s: failed to get GPK2\n", __func__);
-               gpio_free(S3C64XX_GPK(1));
-               return ret;
-       }
-
-       /* turn power on */
-       gpio_direction_output(S3C64XX_GPK(1), 1);
-
-       /* reset device */
-       gpio_direction_output(S3C64XX_GPK(2), 0);
-       mdelay(100);
-       gpio_set_value(S3C64XX_GPK(2), 1);
-       gpio_direction_input(S3C64XX_GPK(2));
-
-       return 0;
-}
-
-static struct map_desc smartq_iodesc[] __initdata = {};
-void __init smartq_map_io(void)
-{
-       s3c64xx_init_io(smartq_iodesc, ARRAY_SIZE(smartq_iodesc));
-       s3c64xx_set_xtal_freq(12000000);
-       s3c64xx_set_xusbxti_freq(12000000);
-       s3c24xx_init_uarts(smartq_uartcfgs, ARRAY_SIZE(smartq_uartcfgs));
-       s3c64xx_set_timer_source(S3C64XX_PWM3, S3C64XX_PWM4);
-
-       smartq_lcd_mode_set();
-}
-
-static struct gpiod_lookup_table smartq_audio_gpios = {
-       .dev_id = "smartq-audio",
-       .table = {
-               GPIO_LOOKUP("GPL", 12, "headphone detect", 0),
-               GPIO_LOOKUP("GPK", 12, "amplifiers shutdown", 0),
-               { },
-       },
-};
-
-void __init smartq_machine_init(void)
-{
-       s3c_i2c0_set_platdata(NULL);
-       dwc2_hsotg_set_platdata(&smartq_hsotg_pdata);
-       s3c_hwmon_set_platdata(&smartq_hwmon_pdata);
-       s3c_sdhci1_set_platdata(&smartq_internal_hsmmc_pdata);
-       s3c_sdhci2_set_platdata(&smartq_internal_hsmmc_pdata);
-       s3c64xx_ts_set_platdata(&smartq_touchscreen_pdata);
-
-       i2c_register_board_info(0, smartq_i2c_devs,
-                               ARRAY_SIZE(smartq_i2c_devs));
-
-       WARN_ON(smartq_lcd_setup_gpio());
-       WARN_ON(smartq_power_off_init());
-       WARN_ON(smartq_usb_host_init());
-       WARN_ON(smartq_wifi_init());
-
-       pwm_add_table(smartq_pwm_lookup, ARRAY_SIZE(smartq_pwm_lookup));
-       gpiod_add_lookup_table(&smartq_lcd_control_gpiod_table);
-       gpiod_add_lookup_table(&smartq_usb_otg_vbus_gpiod_table);
-       platform_add_devices(smartq_devices, ARRAY_SIZE(smartq_devices));
-
-       gpiod_add_lookup_table(&smartq_audio_gpios);
-       platform_device_register_simple("smartq-audio", -1, NULL, 0);
-}
diff --git a/arch/arm/mach-s3c/mach-smartq.h b/arch/arm/mach-s3c/mach-smartq.h
deleted file mode 100644 (file)
index f98132f..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-/*
- * linux/arch/arm/mach-s3c64xx/mach-smartq.h
- *
- * Copyright (C) 2010 Maurus Cuelenaere
- */
-
-#ifndef __MACH_SMARTQ_H
-#define __MACH_SMARTQ_H __FILE__
-
-#include <linux/init.h>
-
-extern void __init smartq_map_io(void);
-extern void __init smartq_machine_init(void);
-
-#endif /* __MACH_SMARTQ_H */
diff --git a/arch/arm/mach-s3c/mach-smartq5.c b/arch/arm/mach-s3c/mach-smartq5.c
deleted file mode 100644 (file)
index ce3fce0..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright (C) 2010 Maurus Cuelenaere
-
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/gpio_keys.h>
-#include <linux/init.h>
-#include <linux/input.h>
-#include <linux/leds.h>
-#include <linux/platform_device.h>
-
-#include <asm/mach-types.h>
-#include <asm/mach/arch.h>
-
-#include <video/samsung_fimd.h>
-#include "irqs.h"
-#include "map.h"
-#include "regs-gpio.h"
-#include "gpio-samsung.h"
-
-#include "cpu.h"
-#include "devs.h"
-#include "fb.h"
-#include "gpio-cfg.h"
-
-#include "s3c64xx.h"
-#include "mach-smartq.h"
-
-static struct gpio_led smartq5_leds[] = {
-       {
-               .name                   = "smartq5:green",
-               .active_low             = 1,
-               .gpio                   = S3C64XX_GPN(8),
-       },
-       {
-               .name                   = "smartq5:red",
-               .active_low             = 1,
-               .gpio                   = S3C64XX_GPN(9),
-       },
-};
-
-static struct gpio_led_platform_data smartq5_led_data = {
-       .num_leds = ARRAY_SIZE(smartq5_leds),
-       .leds = smartq5_leds,
-};
-
-static struct platform_device smartq5_leds_device = {
-       .name                   = "leds-gpio",
-       .id                     = -1,
-       .dev.platform_data      = &smartq5_led_data,
-};
-
-/* Labels according to the SmartQ manual */
-static struct gpio_keys_button smartq5_buttons[] = {
-       {
-               .gpio                   = S3C64XX_GPL(14),
-               .code                   = KEY_POWER,
-               .desc                   = "Power",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-       {
-               .gpio                   = S3C64XX_GPN(2),
-               .code                   = KEY_KPMINUS,
-               .desc                   = "Minus",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-       {
-               .gpio                   = S3C64XX_GPN(12),
-               .code                   = KEY_KPPLUS,
-               .desc                   = "Plus",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-       {
-               .gpio                   = S3C64XX_GPN(15),
-               .code                   = KEY_ENTER,
-               .desc                   = "Move",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-};
-
-static struct gpio_keys_platform_data smartq5_buttons_data  = {
-       .buttons        = smartq5_buttons,
-       .nbuttons       = ARRAY_SIZE(smartq5_buttons),
-};
-
-static struct platform_device smartq5_buttons_device  = {
-       .name           = "gpio-keys",
-       .id             = 0,
-       .num_resources  = 0,
-       .dev            = {
-               .platform_data  = &smartq5_buttons_data,
-       }
-};
-
-static struct s3c_fb_pd_win smartq5_fb_win0 = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-static struct fb_videomode smartq5_lcd_timing = {
-       .left_margin    = 216,
-       .right_margin   = 40,
-       .upper_margin   = 35,
-       .lower_margin   = 10,
-       .hsync_len      = 1,
-       .vsync_len      = 1,
-       .xres           = 800,
-       .yres           = 480,
-       .refresh        = 80,
-};
-
-static struct s3c_fb_platdata smartq5_lcd_pdata __initdata = {
-       .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-       .vtiming        = &smartq5_lcd_timing,
-       .win[0]         = &smartq5_fb_win0,
-       .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-       .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC |
-                         VIDCON1_INV_VDEN,
-};
-
-static struct platform_device *smartq5_devices[] __initdata = {
-       &smartq5_leds_device,
-       &smartq5_buttons_device,
-};
-
-static void __init smartq5_machine_init(void)
-{
-       s3c_fb_set_platdata(&smartq5_lcd_pdata);
-
-       smartq_machine_init();
-
-       platform_add_devices(smartq5_devices, ARRAY_SIZE(smartq5_devices));
-}
-
-MACHINE_START(SMARTQ5, "SmartQ 5")
-       /* Maintainer: Maurus Cuelenaere <mcuelenaere AT gmail DOT com> */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6410_init_irq,
-       .map_io         = smartq_map_io,
-       .init_machine   = smartq5_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END
diff --git a/arch/arm/mach-s3c/mach-smartq7.c b/arch/arm/mach-s3c/mach-smartq7.c
deleted file mode 100644 (file)
index 78ca0e7..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright (C) 2010 Maurus Cuelenaere
-
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/gpio_keys.h>
-#include <linux/init.h>
-#include <linux/input.h>
-#include <linux/leds.h>
-#include <linux/platform_device.h>
-
-#include <asm/mach-types.h>
-#include <asm/mach/arch.h>
-
-#include <video/samsung_fimd.h>
-#include "irqs.h"
-#include "map.h"
-#include "regs-gpio.h"
-#include "gpio-samsung.h"
-
-#include "cpu.h"
-#include "devs.h"
-#include "fb.h"
-#include "gpio-cfg.h"
-
-#include "s3c64xx.h"
-#include "mach-smartq.h"
-
-static struct gpio_led smartq7_leds[] = {
-       {
-               .name                   = "smartq7:red",
-               .active_low             = 1,
-               .gpio                   = S3C64XX_GPN(8),
-       },
-       {
-               .name                   = "smartq7:green",
-               .active_low             = 1,
-               .gpio                   = S3C64XX_GPN(9),
-       },
-};
-
-static struct gpio_led_platform_data smartq7_led_data = {
-       .num_leds = ARRAY_SIZE(smartq7_leds),
-       .leds = smartq7_leds,
-};
-
-static struct platform_device smartq7_leds_device = {
-       .name                   = "leds-gpio",
-       .id                     = -1,
-       .dev.platform_data      = &smartq7_led_data,
-};
-
-/* Labels according to the SmartQ manual */
-static struct gpio_keys_button smartq7_buttons[] = {
-       {
-               .gpio                   = S3C64XX_GPL(14),
-               .code                   = KEY_POWER,
-               .desc                   = "Power",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-       {
-               .gpio                   = S3C64XX_GPN(2),
-               .code                   = KEY_FN,
-               .desc                   = "Function",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-       {
-               .gpio                   = S3C64XX_GPN(3),
-               .code                   = KEY_KPMINUS,
-               .desc                   = "Minus",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-       {
-               .gpio                   = S3C64XX_GPN(4),
-               .code                   = KEY_KPPLUS,
-               .desc                   = "Plus",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-       {
-               .gpio                   = S3C64XX_GPN(12),
-               .code                   = KEY_ENTER,
-               .desc                   = "Enter",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-       {
-               .gpio                   = S3C64XX_GPN(15),
-               .code                   = KEY_ESC,
-               .desc                   = "Cancel",
-               .active_low             = 1,
-               .debounce_interval      = 5,
-               .type                   = EV_KEY,
-       },
-};
-
-static struct gpio_keys_platform_data smartq7_buttons_data  = {
-       .buttons        = smartq7_buttons,
-       .nbuttons       = ARRAY_SIZE(smartq7_buttons),
-};
-
-static struct platform_device smartq7_buttons_device  = {
-       .name           = "gpio-keys",
-       .id             = 0,
-       .num_resources  = 0,
-       .dev            = {
-               .platform_data  = &smartq7_buttons_data,
-       }
-};
-
-static struct s3c_fb_pd_win smartq7_fb_win0 = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-static struct fb_videomode smartq7_lcd_timing = {
-       .left_margin    = 3,
-       .right_margin   = 5,
-       .upper_margin   = 1,
-       .lower_margin   = 20,
-       .hsync_len      = 10,
-       .vsync_len      = 3,
-       .xres           = 800,
-       .yres           = 480,
-       .refresh        = 80,
-};
-
-static struct s3c_fb_platdata smartq7_lcd_pdata __initdata = {
-       .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-       .vtiming        = &smartq7_lcd_timing,
-       .win[0]         = &smartq7_fb_win0,
-       .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-       .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC |
-                         VIDCON1_INV_VCLK,
-};
-
-static struct platform_device *smartq7_devices[] __initdata = {
-       &smartq7_leds_device,
-       &smartq7_buttons_device,
-};
-
-static void __init smartq7_machine_init(void)
-{
-       s3c_fb_set_platdata(&smartq7_lcd_pdata);
-
-       smartq_machine_init();
-
-       platform_add_devices(smartq7_devices, ARRAY_SIZE(smartq7_devices));
-}
-
-MACHINE_START(SMARTQ7, "SmartQ 7")
-       /* Maintainer: Maurus Cuelenaere <mcuelenaere AT gmail DOT com> */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6410_init_irq,
-       .map_io         = smartq_map_io,
-       .init_machine   = smartq7_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END
diff --git a/arch/arm/mach-s3c/mach-smdk6400.c b/arch/arm/mach-s3c/mach-smdk6400.c
deleted file mode 100644 (file)
index a3c1b2a..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright 2008 Simtec Electronics
-//     Ben Dooks <ben@simtec.co.uk>
-//     http://armlinux.simtec.co.uk/
-
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/interrupt.h>
-#include <linux/list.h>
-#include <linux/timer.h>
-#include <linux/init.h>
-#include <linux/serial_core.h>
-#include <linux/serial_s3c.h>
-#include <linux/platform_device.h>
-#include <linux/i2c.h>
-#include <linux/io.h>
-
-#include <asm/mach-types.h>
-
-#include <asm/mach/arch.h>
-#include <asm/mach/map.h>
-#include <asm/mach/irq.h>
-
-#include "irqs.h"
-#include "map.h"
-
-#include "devs.h"
-#include "cpu.h"
-#include <linux/platform_data/i2c-s3c2410.h>
-#include "gpio-samsung.h"
-
-#include "s3c64xx.h"
-
-#define UCON S3C2410_UCON_DEFAULT | S3C2410_UCON_UCLK
-#define ULCON S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB
-#define UFCON S3C2410_UFCON_RXTRIG8 | S3C2410_UFCON_FIFOMODE
-
-static struct s3c2410_uartcfg smdk6400_uartcfgs[] __initdata = {
-       [0] = {
-               .hwport      = 0,
-               .flags       = 0,
-               .ucon        = 0x3c5,
-               .ulcon       = 0x03,
-               .ufcon       = 0x51,
-       },
-       [1] = {
-               .hwport      = 1,
-               .flags       = 0,
-               .ucon        = 0x3c5,
-               .ulcon       = 0x03,
-               .ufcon       = 0x51,
-       },
-};
-
-static struct map_desc smdk6400_iodesc[] = {};
-
-static void __init smdk6400_map_io(void)
-{
-       s3c64xx_init_io(smdk6400_iodesc, ARRAY_SIZE(smdk6400_iodesc));
-       s3c64xx_set_xtal_freq(12000000);
-       s3c24xx_init_uarts(smdk6400_uartcfgs, ARRAY_SIZE(smdk6400_uartcfgs));
-       s3c64xx_set_timer_source(S3C64XX_PWM3, S3C64XX_PWM4);
-}
-
-static struct platform_device *smdk6400_devices[] __initdata = {
-       &s3c_device_hsmmc1,
-       &s3c_device_i2c0,
-};
-
-static struct i2c_board_info i2c_devs[] __initdata = {
-       { I2C_BOARD_INFO("wm8753", 0x1A), },
-       { I2C_BOARD_INFO("24c08", 0x50), },
-};
-
-static void __init smdk6400_machine_init(void)
-{
-       i2c_register_board_info(0, i2c_devs, ARRAY_SIZE(i2c_devs));
-       platform_add_devices(smdk6400_devices, ARRAY_SIZE(smdk6400_devices));
-}
-
-MACHINE_START(SMDK6400, "SMDK6400")
-       /* Maintainer: Ben Dooks <ben-linux@fluff.org> */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6400_init_irq,
-       .map_io         = smdk6400_map_io,
-       .init_machine   = smdk6400_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END
diff --git a/arch/arm/mach-s3c/mach-smdk6410.c b/arch/arm/mach-s3c/mach-smdk6410.c
deleted file mode 100644 (file)
index e57b2bb..0000000
+++ /dev/null
@@ -1,706 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-//
-// Copyright 2008 Openmoko, Inc.
-// Copyright 2008 Simtec Electronics
-//     Ben Dooks <ben@simtec.co.uk>
-//     http://armlinux.simtec.co.uk/
-
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/interrupt.h>
-#include <linux/list.h>
-#include <linux/timer.h>
-#include <linux/init.h>
-#include <linux/input.h>
-#include <linux/serial_core.h>
-#include <linux/serial_s3c.h>
-#include <linux/platform_device.h>
-#include <linux/io.h>
-#include <linux/i2c.h>
-#include <linux/leds.h>
-#include <linux/fb.h>
-#include <linux/gpio.h>
-#include <linux/delay.h>
-#include <linux/smsc911x.h>
-#include <linux/regulator/fixed.h>
-#include <linux/regulator/machine.h>
-#include <linux/pwm.h>
-#include <linux/pwm_backlight.h>
-#include <linux/platform_data/s3c-hsotg.h>
-
-#ifdef CONFIG_SMDK6410_WM1190_EV1
-#include <linux/mfd/wm8350/core.h>
-#include <linux/mfd/wm8350/pmic.h>
-#endif
-
-#ifdef CONFIG_SMDK6410_WM1192_EV1
-#include <linux/mfd/wm831x/core.h>
-#include <linux/mfd/wm831x/pdata.h>
-#endif
-
-#include <video/platform_lcd.h>
-#include <video/samsung_fimd.h>
-
-#include <asm/mach/arch.h>
-#include <asm/mach/map.h>
-#include <asm/mach/irq.h>
-
-#include "irqs.h"
-#include "map.h"
-
-#include <asm/irq.h>
-#include <asm/mach-types.h>
-
-#include "regs-gpio.h"
-#include "gpio-samsung.h"
-#include <linux/platform_data/ata-samsung_cf.h>
-#include <linux/platform_data/i2c-s3c2410.h>
-#include "fb.h"
-#include "gpio-cfg.h"
-
-#include "devs.h"
-#include "cpu.h"
-#include <linux/soc/samsung/s3c-adc.h>
-#include <linux/platform_data/touchscreen-s3c2410.h>
-#include "keypad.h"
-
-#include "backlight-s3c64xx.h"
-#include "s3c64xx.h"
-#include "regs-modem-s3c64xx.h"
-#include "regs-srom-s3c64xx.h"
-#include "regs-sys-s3c64xx.h"
-
-#define UCON S3C2410_UCON_DEFAULT | S3C2410_UCON_UCLK
-#define ULCON S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB
-#define UFCON S3C2410_UFCON_RXTRIG8 | S3C2410_UFCON_FIFOMODE
-
-static struct s3c2410_uartcfg smdk6410_uartcfgs[] __initdata = {
-       [0] = {
-               .hwport      = 0,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [1] = {
-               .hwport      = 1,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [2] = {
-               .hwport      = 2,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-       [3] = {
-               .hwport      = 3,
-               .flags       = 0,
-               .ucon        = UCON,
-               .ulcon       = ULCON,
-               .ufcon       = UFCON,
-       },
-};
-
-/* framebuffer and LCD setup. */
-
-/* GPF15 = LCD backlight control
- * GPF13 => Panel power
- * GPN5 = LCD nRESET signal
- * PWM_TOUT1 => backlight brightness
- */
-
-static void smdk6410_lcd_power_set(struct plat_lcd_data *pd,
-                                  unsigned int power)
-{
-       if (power) {
-               gpio_direction_output(S3C64XX_GPF(13), 1);
-
-               /* fire nRESET on power up */
-               gpio_direction_output(S3C64XX_GPN(5), 0);
-               msleep(10);
-               gpio_direction_output(S3C64XX_GPN(5), 1);
-               msleep(1);
-       } else {
-               gpio_direction_output(S3C64XX_GPF(13), 0);
-       }
-}
-
-static struct plat_lcd_data smdk6410_lcd_power_data = {
-       .set_power      = smdk6410_lcd_power_set,
-};
-
-static struct platform_device smdk6410_lcd_powerdev = {
-       .name                   = "platform-lcd",
-       .dev.parent             = &s3c_device_fb.dev,
-       .dev.platform_data      = &smdk6410_lcd_power_data,
-};
-
-static struct s3c_fb_pd_win smdk6410_fb_win0 = {
-       .max_bpp        = 32,
-       .default_bpp    = 16,
-       .xres           = 800,
-       .yres           = 480,
-       .virtual_y      = 480 * 2,
-       .virtual_x      = 800,
-};
-
-static struct fb_videomode smdk6410_lcd_timing = {
-       .left_margin    = 8,
-       .right_margin   = 13,
-       .upper_margin   = 7,
-       .lower_margin   = 5,
-       .hsync_len      = 3,
-       .vsync_len      = 1,
-       .xres           = 800,
-       .yres           = 480,
-};
-
-/* 405566 clocks per frame => 60Hz refresh requires 24333960Hz clock */
-static struct s3c_fb_platdata smdk6410_lcd_pdata __initdata = {
-       .setup_gpio     = s3c64xx_fb_gpio_setup_24bpp,
-       .vtiming        = &smdk6410_lcd_timing,
-       .win[0]         = &smdk6410_fb_win0,
-       .vidcon0        = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB,
-       .vidcon1        = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC,
-};
-
-/*
- * Configuring Ethernet on SMDK6410
- *
- * Both CS8900A and LAN9115 chips share one chip select mediated by CFG6.
- * The constant address below corresponds to nCS1
- *
- *  1) Set CFGB2 p3 ON others off, no other CFGB selects "ethernet"
- *  2) CFG6 needs to be switched to "LAN9115" side
- */
-
-static struct resource smdk6410_smsc911x_resources[] = {
-       [0] = DEFINE_RES_MEM(S3C64XX_PA_XM0CSN1, SZ_64K),
-       [1] = DEFINE_RES_NAMED(S3C_EINT(10), 1, NULL, IORESOURCE_IRQ \
-                                       | IRQ_TYPE_LEVEL_LOW),
-};
-
-static struct smsc911x_platform_config smdk6410_smsc911x_pdata = {
-       .irq_polarity  = SMSC911X_IRQ_POLARITY_ACTIVE_LOW,
-       .irq_type      = SMSC911X_IRQ_TYPE_OPEN_DRAIN,
-       .flags         = SMSC911X_USE_32BIT | SMSC911X_FORCE_INTERNAL_PHY,
-       .phy_interface = PHY_INTERFACE_MODE_MII,
-};
-
-
-static struct platform_device smdk6410_smsc911x = {
-       .name          = "smsc911x",
-       .id            = -1,
-       .num_resources = ARRAY_SIZE(smdk6410_smsc911x_resources),
-       .resource      = &smdk6410_smsc911x_resources[0],
-       .dev = {
-               .platform_data = &smdk6410_smsc911x_pdata,
-       },
-};
-
-#ifdef CONFIG_REGULATOR
-static struct regulator_consumer_supply smdk6410_b_pwr_5v_consumers[] = {
-       REGULATOR_SUPPLY("PVDD", "0-001b"),
-       REGULATOR_SUPPLY("AVDD", "0-001b"),
-};
-
-static struct regulator_init_data __maybe_unused smdk6410_b_pwr_5v_data = {
-       .constraints = {
-               .always_on = 1,
-       },
-       .num_consumer_supplies = ARRAY_SIZE(smdk6410_b_pwr_5v_consumers),
-       .consumer_supplies = smdk6410_b_pwr_5v_consumers,
-};
-
-static struct fixed_voltage_config smdk6410_b_pwr_5v_pdata = {
-       .supply_name = "B_PWR_5V",
-       .microvolts = 5000000,
-       .init_data = &smdk6410_b_pwr_5v_data,
-};
-
-static struct platform_device smdk6410_b_pwr_5v = {
-       .name          = "reg-fixed-voltage",
-       .id            = -1,
-       .dev = {
-               .platform_data = &smdk6410_b_pwr_5v_pdata,
-       },
-};
-#endif
-
-static struct s3c_ide_platdata smdk6410_ide_pdata __initdata = {
-       .setup_gpio     = s3c64xx_ide_setup_gpio,
-};
-
-static uint32_t smdk6410_keymap[] __initdata = {
-       /* KEY(row, col, keycode) */
-       KEY(0, 3, KEY_1), KEY(0, 4, KEY_2), KEY(0, 5, KEY_3),
-       KEY(0, 6, KEY_4), KEY(0, 7, KEY_5),
-       KEY(1, 3, KEY_A), KEY(1, 4, KEY_B), KEY(1, 5, KEY_C),
-       KEY(1, 6, KEY_D), KEY(1, 7, KEY_E)
-};
-
-static struct matrix_keymap_data smdk6410_keymap_data __initdata = {
-       .keymap         = smdk6410_keymap,
-       .keymap_size    = ARRAY_SIZE(smdk6410_keymap),
-};
-
-static struct samsung_keypad_platdata smdk6410_keypad_data __initdata = {
-       .keymap_data    = &smdk6410_keymap_data,
-       .rows           = 2,
-       .cols           = 8,
-};
-
-static struct map_desc smdk6410_iodesc[] = {};
-
-static struct platform_device *smdk6410_devices[] __initdata = {
-#ifdef CONFIG_SMDK6410_SD_CH0
-       &s3c_device_hsmmc0,
-#endif
-#ifdef CONFIG_SMDK6410_SD_CH1
-       &s3c_device_hsmmc1,
-#endif
-       &s3c_device_i2c0,
-       &s3c_device_i2c1,
-       &s3c_device_fb,
-       &s3c_device_ohci,
-       &samsung_device_pwm,
-       &s3c_device_usb_hsotg,
-       &s3c64xx_device_iisv4,
-       &samsung_device_keypad,
-
-#ifdef CONFIG_REGULATOR
-       &smdk6410_b_pwr_5v,
-#endif
-       &smdk6410_lcd_powerdev,
-
-       &smdk6410_smsc911x,
-       &s3c_device_adc,
-       &s3c_device_cfcon,
-       &s3c_device_rtc,
-       &s3c_device_wdt,
-};
-
-#ifdef CONFIG_REGULATOR
-/* ARM core */
-static struct regulator_consumer_supply smdk6410_vddarm_consumers[] = {
-       REGULATOR_SUPPLY("vddarm", NULL),
-};
-
-/* VDDARM, BUCK1 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddarm = {
-       .constraints = {
-               .name = "PVDD_ARM",
-               .min_uV = 1000000,
-               .max_uV = 1300000,
-               .always_on = 1,
-               .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE,
-       },
-       .num_consumer_supplies = ARRAY_SIZE(smdk6410_vddarm_consumers),
-       .consumer_supplies = smdk6410_vddarm_consumers,
-};
-
-/* VDD_INT, BUCK2 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddint = {
-       .constraints = {
-               .name = "PVDD_INT",
-               .min_uV = 1000000,
-               .max_uV = 1200000,
-               .always_on = 1,
-               .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE,
-       },
-};
-
-/* VDD_HI, LDO3 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddhi = {
-       .constraints = {
-               .name = "PVDD_HI",
-               .always_on = 1,
-       },
-};
-
-/* VDD_PLL, LDO2 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddpll = {
-       .constraints = {
-               .name = "PVDD_PLL",
-               .always_on = 1,
-       },
-};
-
-/* VDD_UH_MMC, LDO5 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vdduh_mmc = {
-       .constraints = {
-               .name = "PVDD_UH+PVDD_MMC",
-               .always_on = 1,
-       },
-};
-
-/* VCCM3BT, LDO8 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vccmc3bt = {
-       .constraints = {
-               .name = "PVCCM3BT",
-               .always_on = 1,
-       },
-};
-
-/* VCCM2MTV, LDO11 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vccm2mtv = {
-       .constraints = {
-               .name = "PVCCM2MTV",
-               .always_on = 1,
-       },
-};
-
-/* VDD_LCD, LDO12 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddlcd = {
-       .constraints = {
-               .name = "PVDD_LCD",
-               .always_on = 1,
-       },
-};
-
-/* VDD_OTGI, LDO9 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddotgi = {
-       .constraints = {
-               .name = "PVDD_OTGI",
-               .always_on = 1,
-       },
-};
-
-/* VDD_OTG, LDO14 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddotg = {
-       .constraints = {
-               .name = "PVDD_OTG",
-               .always_on = 1,
-       },
-};
-
-/* VDD_ALIVE, LDO15 on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddalive = {
-       .constraints = {
-               .name = "PVDD_ALIVE",
-               .always_on = 1,
-       },
-};
-
-/* VDD_AUDIO, VLDO_AUDIO on J5 */
-static struct regulator_init_data __maybe_unused smdk6410_vddaudio = {
-       .constraints = {
-               .name = "PVDD_AUDIO",
-               .always_on = 1,
-       },
-};
-#endif
-
-#ifdef CONFIG_SMDK6410_WM1190_EV1
-/* S3C64xx internal logic & PLL */
-static struct regulator_init_data __maybe_unused wm8350_dcdc1_data = {
-       .constraints = {
-               .name = "PVDD_INT+PVDD_PLL",
-               .min_uV = 1200000,
-               .max_uV = 1200000,
-               .always_on = 1,
-               .apply_uV = 1,
-       },
-};
-
-/* Memory */
-static struct regulator_init_data __maybe_unused wm8350_dcdc3_data = {
-       .constraints = {
-               .name = "PVDD_MEM",
-               .min_uV = 1800000,
-               .max_uV = 1800000,
-               .always_on = 1,
-               .state_mem = {
-                        .uV = 1800000,
-                        .mode = REGULATOR_MODE_NORMAL,
-                        .enabled = 1,
-               },
-               .initial_state = PM_SUSPEND_MEM,
-       },
-};
-
-/* USB, EXT, PCM, ADC/DAC, USB, MMC */
-static struct regulator_consumer_supply wm8350_dcdc4_consumers[] = {
-       REGULATOR_SUPPLY("DVDD", "0-001b"),
-};
-
-static struct regulator_init_data __maybe_unused wm8350_dcdc4_data = {
-       .constraints = {
-               .name = "PVDD_HI+PVDD_EXT+PVDD_SYS+PVCCM2MTV",
-               .min_uV = 3000000,
-               .max_uV = 3000000,
-               .always_on = 1,
-       },
-       .num_consumer_supplies = ARRAY_SIZE(wm8350_dcdc4_consumers),
-       .consumer_supplies = wm8350_dcdc4_consumers,
-};
-
-/* OTGi/1190-EV1 HPVDD & AVDD */
-static struct regulator_init_data __maybe_unused wm8350_ldo4_data = {
-       .constraints = {
-               .name = "PVDD_OTGI+HPVDD+AVDD",
-               .min_uV = 1200000,
-               .max_uV = 1200000,
-               .apply_uV = 1,
-               .always_on = 1,
-       },
-};
-
-static struct {
-       int regulator;
-       struct regulator_init_data *initdata;
-} wm1190_regulators[] = {
-       { WM8350_DCDC_1, &wm8350_dcdc1_data },
-       { WM8350_DCDC_3, &wm8350_dcdc3_data },
-       { WM8350_DCDC_4, &wm8350_dcdc4_data },
-       { WM8350_DCDC_6, &smdk6410_vddarm },
-       { WM8350_LDO_1, &smdk6410_vddalive },
-       { WM8350_LDO_2, &smdk6410_vddotg },
-       { WM8350_LDO_3, &smdk6410_vddlcd },
-       { WM8350_LDO_4, &wm8350_ldo4_data },
-};
-
-static int __init smdk6410_wm8350_init(struct wm8350 *wm8350)
-{
-       int i;
-
-       /* Configure the IRQ line */
-       s3c_gpio_setpull(S3C64XX_GPN(12), S3C_GPIO_PULL_UP);
-
-       /* Instantiate the regulators */
-       for (i = 0; i < ARRAY_SIZE(wm1190_regulators); i++)
-               wm8350_register_regulator(wm8350,
-                                         wm1190_regulators[i].regulator,
-                                         wm1190_regulators[i].initdata);
-
-       return 0;
-}
-
-static struct wm8350_platform_data __initdata smdk6410_wm8350_pdata = {
-       .init = smdk6410_wm8350_init,
-       .irq_high = 1,
-       .irq_base = IRQ_BOARD_START,
-};
-#endif
-
-#ifdef CONFIG_SMDK6410_WM1192_EV1
-static struct gpio_led wm1192_pmic_leds[] = {
-       {
-               .name = "PMIC:red:power",
-               .gpio = GPIO_BOARD_START + 3,
-               .default_state = LEDS_GPIO_DEFSTATE_ON,
-       },
-};
-
-static struct gpio_led_platform_data wm1192_pmic_led = {
-       .num_leds = ARRAY_SIZE(wm1192_pmic_leds),
-       .leds = wm1192_pmic_leds,
-};
-
-static struct platform_device wm1192_pmic_led_dev = {
-       .name          = "leds-gpio",
-       .id            = -1,
-       .dev = {
-               .platform_data = &wm1192_pmic_led,
-       },
-};
-
-static int wm1192_pre_init(struct wm831x *wm831x)
-{
-       int ret;
-
-       /* Configure the IRQ line */
-       s3c_gpio_setpull(S3C64XX_GPN(12), S3C_GPIO_PULL_UP);
-
-       ret = platform_device_register(&wm1192_pmic_led_dev);
-       if (ret != 0)
-               dev_err(wm831x->dev, "Failed to add PMIC LED: %d\n", ret);
-
-       return 0;
-}
-
-static struct wm831x_backlight_pdata wm1192_backlight_pdata = {
-       .isink = 1,
-       .max_uA = 27554,
-};
-
-static struct regulator_init_data __maybe_unused wm1192_dcdc3 = {
-       .constraints = {
-               .name = "PVDD_MEM+PVDD_GPS",
-               .always_on = 1,
-       },
-};
-
-static struct regulator_consumer_supply wm1192_ldo1_consumers[] = {
-       REGULATOR_SUPPLY("DVDD", "0-001b"),   /* WM8580 */
-};
-
-static struct regulator_init_data __maybe_unused wm1192_ldo1 = {
-       .constraints = {
-               .name = "PVDD_LCD+PVDD_EXT",
-               .always_on = 1,
-       },
-       .consumer_supplies = wm1192_ldo1_consumers,
-       .num_consumer_supplies = ARRAY_SIZE(wm1192_ldo1_consumers),
-};
-
-static struct wm831x_status_pdata wm1192_led7_pdata = {
-       .name = "LED7:green:",
-};
-
-static struct wm831x_status_pdata wm1192_led8_pdata = {
-       .name = "LED8:green:",
-};
-
-static struct wm831x_pdata smdk6410_wm1192_pdata = {
-       .pre_init = wm1192_pre_init,
-
-       .backlight = &wm1192_backlight_pdata,
-       .dcdc = {
-               &smdk6410_vddarm,  /* DCDC1 */
-               &smdk6410_vddint,  /* DCDC2 */
-               &wm1192_dcdc3,
-       },
-       .gpio_base = GPIO_BOARD_START,
-       .ldo = {
-                &wm1192_ldo1,        /* LDO1 */
-                &smdk6410_vdduh_mmc, /* LDO2 */
-                NULL,                /* LDO3 NC */
-                &smdk6410_vddotgi,   /* LDO4 */
-                &smdk6410_vddotg,    /* LDO5 */
-                &smdk6410_vddhi,     /* LDO6 */
-                &smdk6410_vddaudio,  /* LDO7 */
-                &smdk6410_vccm2mtv,  /* LDO8 */
-                &smdk6410_vddpll,    /* LDO9 */
-                &smdk6410_vccmc3bt,  /* LDO10 */
-                &smdk6410_vddalive,  /* LDO11 */
-       },
-       .status = {
-               &wm1192_led7_pdata,
-               &wm1192_led8_pdata,
-       },
-};
-#endif
-
-static struct i2c_board_info i2c_devs0[] __initdata = {
-       { I2C_BOARD_INFO("24c08", 0x50), },
-       { I2C_BOARD_INFO("wm8580", 0x1b), },
-
-#ifdef CONFIG_SMDK6410_WM1192_EV1
-       { I2C_BOARD_INFO("wm8312", 0x34),
-         .platform_data = &smdk6410_wm1192_pdata,
-         .irq = S3C_EINT(12),
-       },
-#endif
-
-#ifdef CONFIG_SMDK6410_WM1190_EV1
-       { I2C_BOARD_INFO("wm8350", 0x1a),
-         .platform_data = &smdk6410_wm8350_pdata,
-         .irq = S3C_EINT(12),
-       },
-#endif
-};
-
-static struct i2c_board_info i2c_devs1[] __initdata = {
-       { I2C_BOARD_INFO("24c128", 0x57), },    /* Samsung S524AD0XD1 */
-};
-
-/* LCD Backlight data */
-static struct samsung_bl_gpio_info smdk6410_bl_gpio_info = {
-       .no = S3C64XX_GPF(15),
-       .func = S3C_GPIO_SFN(2),
-};
-
-static struct pwm_lookup smdk6410_pwm_lookup[] = {
-       PWM_LOOKUP("samsung-pwm", 1, "pwm-backlight.0", NULL, 78770,
-                  PWM_POLARITY_NORMAL),
-};
-
-static struct platform_pwm_backlight_data smdk6410_bl_data = {
-       /* Intentionally blank */
-};
-
-static struct dwc2_hsotg_plat smdk6410_hsotg_pdata;
-
-static void __init smdk6410_map_io(void)
-{
-       u32 tmp;
-
-       s3c64xx_init_io(smdk6410_iodesc, ARRAY_SIZE(smdk6410_iodesc));
-       s3c64xx_set_xtal_freq(12000000);
-       s3c24xx_init_uarts(smdk6410_uartcfgs, ARRAY_SIZE(smdk6410_uartcfgs));
-       s3c64xx_set_timer_source(S3C64XX_PWM3, S3C64XX_PWM4);
-
-       /* set the LCD type */
-
-       tmp = __raw_readl(S3C64XX_SPCON);
-       tmp &= ~S3C64XX_SPCON_LCD_SEL_MASK;
-       tmp |= S3C64XX_SPCON_LCD_SEL_RGB;
-       __raw_writel(tmp, S3C64XX_SPCON);
-
-       /* remove the lcd bypass */
-       tmp = __raw_readl(S3C64XX_MODEM_MIFPCON);
-       tmp &= ~MIFPCON_LCD_BYPASS;
-       __raw_writel(tmp, S3C64XX_MODEM_MIFPCON);
-}
-
-static void __init smdk6410_machine_init(void)
-{
-       u32 cs1;
-
-       s3c_i2c0_set_platdata(NULL);
-       s3c_i2c1_set_platdata(NULL);
-       s3c_fb_set_platdata(&smdk6410_lcd_pdata);
-       dwc2_hsotg_set_platdata(&smdk6410_hsotg_pdata);
-
-       samsung_keypad_set_platdata(&smdk6410_keypad_data);
-
-       s3c64xx_ts_set_platdata(NULL);
-
-       /* configure nCS1 width to 16 bits */
-
-       cs1 = __raw_readl(S3C64XX_SROM_BW) &
-                   ~(S3C64XX_SROM_BW__CS_MASK << S3C64XX_SROM_BW__NCS1__SHIFT);
-       cs1 |= ((1 << S3C64XX_SROM_BW__DATAWIDTH__SHIFT) |
-               (1 << S3C64XX_SROM_BW__WAITENABLE__SHIFT) |
-               (1 << S3C64XX_SROM_BW__BYTEENABLE__SHIFT)) <<
-                                                  S3C64XX_SROM_BW__NCS1__SHIFT;
-       __raw_writel(cs1, S3C64XX_SROM_BW);
-
-       /* set timing for nCS1 suitable for ethernet chip */
-
-       __raw_writel((0 << S3C64XX_SROM_BCX__PMC__SHIFT) |
-                    (6 << S3C64XX_SROM_BCX__TACP__SHIFT) |
-                    (4 << S3C64XX_SROM_BCX__TCAH__SHIFT) |
-                    (1 << S3C64XX_SROM_BCX__TCOH__SHIFT) |
-                    (0xe << S3C64XX_SROM_BCX__TACC__SHIFT) |
-                    (4 << S3C64XX_SROM_BCX__TCOS__SHIFT) |
-                    (0 << S3C64XX_SROM_BCX__TACS__SHIFT), S3C64XX_SROM_BC1);
-
-       gpio_request(S3C64XX_GPN(5), "LCD power");
-       gpio_request(S3C64XX_GPF(13), "LCD power");
-
-       i2c_register_board_info(0, i2c_devs0, ARRAY_SIZE(i2c_devs0));
-       i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1));
-
-       s3c_ide_set_platdata(&smdk6410_ide_pdata);
-
-       platform_add_devices(smdk6410_devices, ARRAY_SIZE(smdk6410_devices));
-
-       pwm_add_table(smdk6410_pwm_lookup, ARRAY_SIZE(smdk6410_pwm_lookup));
-       samsung_bl_set(&smdk6410_bl_gpio_info, &smdk6410_bl_data);
-}
-
-MACHINE_START(SMDK6410, "SMDK6410")
-       /* Maintainer: Ben Dooks <ben-linux@fluff.org> */
-       .atag_offset    = 0x100,
-       .nr_irqs        = S3C64XX_NR_IRQS,
-       .init_irq       = s3c6410_init_irq,
-       .map_io         = smdk6410_map_io,
-       .init_machine   = smdk6410_machine_init,
-       .init_time      = s3c64xx_timer_init,
-MACHINE_END