1*71b9114dSArnd Bergmann# SPDX-License-Identifier: GPL-2.0 2*71b9114dSArnd Bergmann# 3*71b9114dSArnd Bergmann# Copyright 2008 Openmoko, Inc. 4*71b9114dSArnd Bergmann# Simtec Electronics, Ben Dooks <ben@simtec.co.uk> 5*71b9114dSArnd Bergmann 6*71b9114dSArnd Bergmannmenuconfig ARCH_S3C64XX 7*71b9114dSArnd Bergmann bool "Samsung S3C64XX" 8*71b9114dSArnd Bergmann depends on ARCH_MULTI_V6 9*71b9114dSArnd Bergmann select ARM_AMBA 10*71b9114dSArnd Bergmann select ARM_VIC 11*71b9114dSArnd Bergmann select CLKSRC_SAMSUNG_PWM 12*71b9114dSArnd Bergmann select COMMON_CLK_SAMSUNG 13*71b9114dSArnd Bergmann select GPIO_SAMSUNG if ATAGS 14*71b9114dSArnd Bergmann select GPIOLIB 15*71b9114dSArnd Bergmann select HAVE_S3C2410_I2C if I2C 16*71b9114dSArnd Bergmann select HAVE_TCM 17*71b9114dSArnd Bergmann select PLAT_SAMSUNG 18*71b9114dSArnd Bergmann select PM_GENERIC_DOMAINS if PM 19*71b9114dSArnd Bergmann select S3C_DEV_NAND if ATAGS 20*71b9114dSArnd Bergmann select S3C_GPIO_TRACK if ATAGS 21*71b9114dSArnd Bergmann select S3C2410_WATCHDOG 22*71b9114dSArnd Bergmann select SAMSUNG_ATAGS if ATAGS 23*71b9114dSArnd Bergmann select SAMSUNG_WAKEMASK if PM 24*71b9114dSArnd Bergmann select WATCHDOG 25*71b9114dSArnd Bergmann help 26*71b9114dSArnd Bergmann Samsung S3C64XX series based systems 27*71b9114dSArnd Bergmann 28*71b9114dSArnd Bergmannif ARCH_S3C64XX 29*71b9114dSArnd Bergmann 30*71b9114dSArnd Bergmann# Configuration options for the S3C6410 CPU 31*71b9114dSArnd Bergmann 32*71b9114dSArnd Bergmannconfig CPU_S3C6400 33*71b9114dSArnd Bergmann bool 34*71b9114dSArnd Bergmann help 35*71b9114dSArnd Bergmann Enable S3C6400 CPU support 36*71b9114dSArnd Bergmann 37*71b9114dSArnd Bergmannconfig CPU_S3C6410 38*71b9114dSArnd Bergmann bool 39*71b9114dSArnd Bergmann help 40*71b9114dSArnd Bergmann Enable S3C6410 CPU support 41*71b9114dSArnd Bergmann 42*71b9114dSArnd Bergmannconfig S3C64XX_PL080 43*71b9114dSArnd Bergmann def_bool DMADEVICES 44*71b9114dSArnd Bergmann select AMBA_PL08X 45*71b9114dSArnd Bergmann 46*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_SDHCI 47*71b9114dSArnd Bergmann bool 48*71b9114dSArnd Bergmann select S3C64XX_SETUP_SDHCI_GPIO 49*71b9114dSArnd Bergmann help 50*71b9114dSArnd Bergmann Internal configuration for default SDHCI setup for S3C6400 and 51*71b9114dSArnd Bergmann S3C6410 SoCs. 52*71b9114dSArnd Bergmann 53*71b9114dSArnd Bergmannconfig S3C64XX_DEV_ONENAND1 54*71b9114dSArnd Bergmann bool 55*71b9114dSArnd Bergmann help 56*71b9114dSArnd Bergmann Compile in platform device definition for OneNAND1 controller 57*71b9114dSArnd Bergmann 58*71b9114dSArnd Bergmannconfig SAMSUNG_DEV_BACKLIGHT 59*71b9114dSArnd Bergmann bool 60*71b9114dSArnd Bergmann depends on SAMSUNG_DEV_PWM 61*71b9114dSArnd Bergmann help 62*71b9114dSArnd Bergmann Compile in platform device definition LCD backlight with PWM Timer 63*71b9114dSArnd Bergmann 64*71b9114dSArnd Bergmann# platform specific device setup 65*71b9114dSArnd Bergmann 66*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_I2C0 67*71b9114dSArnd Bergmann bool 68*71b9114dSArnd Bergmann default y 69*71b9114dSArnd Bergmann help 70*71b9114dSArnd Bergmann Common setup code for i2c bus 0. 71*71b9114dSArnd Bergmann 72*71b9114dSArnd Bergmann Note, currently since i2c0 is always compiled, this setup helper 73*71b9114dSArnd Bergmann is always compiled with it. 74*71b9114dSArnd Bergmann 75*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_I2C1 76*71b9114dSArnd Bergmann bool 77*71b9114dSArnd Bergmann help 78*71b9114dSArnd Bergmann Common setup code for i2c bus 1. 79*71b9114dSArnd Bergmann 80*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_IDE 81*71b9114dSArnd Bergmann bool 82*71b9114dSArnd Bergmann help 83*71b9114dSArnd Bergmann Common setup code for S3C64XX IDE. 84*71b9114dSArnd Bergmann 85*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_FB_24BPP 86*71b9114dSArnd Bergmann bool 87*71b9114dSArnd Bergmann help 88*71b9114dSArnd Bergmann Common setup code for S3C64XX with an 24bpp RGB display helper. 89*71b9114dSArnd Bergmann 90*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_KEYPAD 91*71b9114dSArnd Bergmann bool 92*71b9114dSArnd Bergmann help 93*71b9114dSArnd Bergmann Common setup code for S3C64XX KEYPAD GPIO configurations 94*71b9114dSArnd Bergmann 95*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_SDHCI_GPIO 96*71b9114dSArnd Bergmann bool 97*71b9114dSArnd Bergmann help 98*71b9114dSArnd Bergmann Common setup code for S3C64XX SDHCI GPIO configurations 99*71b9114dSArnd Bergmann 100*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_SPI 101*71b9114dSArnd Bergmann bool 102*71b9114dSArnd Bergmann help 103*71b9114dSArnd Bergmann Common setup code for SPI GPIO configurations 104*71b9114dSArnd Bergmann 105*71b9114dSArnd Bergmannconfig S3C64XX_SETUP_USB_PHY 106*71b9114dSArnd Bergmann bool 107*71b9114dSArnd Bergmann help 108*71b9114dSArnd Bergmann Common setup code for USB PHY controller 109*71b9114dSArnd Bergmann 110*71b9114dSArnd Bergmann# S36400 Macchine support 111*71b9114dSArnd Bergmann 112*71b9114dSArnd Bergmannconfig MACH_SMDK6400 113*71b9114dSArnd Bergmann bool "SMDK6400" 114*71b9114dSArnd Bergmann depends on ATAGS 115*71b9114dSArnd Bergmann select CPU_S3C6400 116*71b9114dSArnd Bergmann select S3C64XX_SETUP_SDHCI 117*71b9114dSArnd Bergmann select S3C_DEV_HSMMC1 118*71b9114dSArnd Bergmann help 119*71b9114dSArnd Bergmann Machine support for the Samsung SMDK6400 120*71b9114dSArnd Bergmann 121*71b9114dSArnd Bergmann# S3C6410 machine support 122*71b9114dSArnd Bergmann 123*71b9114dSArnd Bergmannconfig MACH_ANW6410 124*71b9114dSArnd Bergmann bool "A&W6410" 125*71b9114dSArnd Bergmann depends on ATAGS 126*71b9114dSArnd Bergmann select CPU_S3C6410 127*71b9114dSArnd Bergmann select S3C64XX_SETUP_FB_24BPP 128*71b9114dSArnd Bergmann select S3C_DEV_FB 129*71b9114dSArnd Bergmann help 130*71b9114dSArnd Bergmann Machine support for the A&W6410 131*71b9114dSArnd Bergmann 132*71b9114dSArnd Bergmannconfig MACH_MINI6410 133*71b9114dSArnd Bergmann bool "MINI6410" 134*71b9114dSArnd Bergmann depends on ATAGS 135*71b9114dSArnd Bergmann select CPU_S3C6410 136*71b9114dSArnd Bergmann select S3C64XX_SETUP_FB_24BPP 137*71b9114dSArnd Bergmann select S3C64XX_SETUP_SDHCI 138*71b9114dSArnd Bergmann select S3C_DEV_FB 139*71b9114dSArnd Bergmann select S3C_DEV_HSMMC 140*71b9114dSArnd Bergmann select S3C_DEV_HSMMC1 141*71b9114dSArnd Bergmann select S3C_DEV_NAND 142*71b9114dSArnd Bergmann select S3C_DEV_USB_HOST 143*71b9114dSArnd Bergmann select SAMSUNG_DEV_ADC 144*71b9114dSArnd Bergmann select SAMSUNG_DEV_TS 145*71b9114dSArnd Bergmann help 146*71b9114dSArnd Bergmann Machine support for the FriendlyARM MINI6410 147*71b9114dSArnd Bergmann 148*71b9114dSArnd Bergmannconfig MACH_REAL6410 149*71b9114dSArnd Bergmann bool "REAL6410" 150*71b9114dSArnd Bergmann depends on ATAGS 151*71b9114dSArnd Bergmann select CPU_S3C6410 152*71b9114dSArnd Bergmann select S3C64XX_SETUP_FB_24BPP 153*71b9114dSArnd Bergmann select S3C64XX_SETUP_SDHCI 154*71b9114dSArnd Bergmann select S3C_DEV_FB 155*71b9114dSArnd Bergmann select S3C_DEV_HSMMC 156*71b9114dSArnd Bergmann select S3C_DEV_HSMMC1 157*71b9114dSArnd Bergmann select S3C_DEV_NAND 158*71b9114dSArnd Bergmann select S3C_DEV_USB_HOST 159*71b9114dSArnd Bergmann select SAMSUNG_DEV_ADC 160*71b9114dSArnd Bergmann select SAMSUNG_DEV_TS 161*71b9114dSArnd Bergmann help 162*71b9114dSArnd Bergmann Machine support for the CoreWind REAL6410 163*71b9114dSArnd Bergmann 164*71b9114dSArnd Bergmannconfig MACH_SMDK6410 165*71b9114dSArnd Bergmann bool "SMDK6410" 166*71b9114dSArnd Bergmann depends on ATAGS 167*71b9114dSArnd Bergmann select CPU_S3C6410 168*71b9114dSArnd Bergmann select S3C64XX_SETUP_FB_24BPP 169*71b9114dSArnd Bergmann select S3C64XX_SETUP_I2C1 170*71b9114dSArnd Bergmann select S3C64XX_SETUP_IDE 171*71b9114dSArnd Bergmann select S3C64XX_SETUP_KEYPAD 172*71b9114dSArnd Bergmann select S3C64XX_SETUP_SDHCI 173*71b9114dSArnd Bergmann select S3C64XX_SETUP_USB_PHY 174*71b9114dSArnd Bergmann select S3C_DEV_FB 175*71b9114dSArnd Bergmann select S3C_DEV_HSMMC 176*71b9114dSArnd Bergmann select S3C_DEV_HSMMC1 177*71b9114dSArnd Bergmann select S3C_DEV_I2C1 178*71b9114dSArnd Bergmann select S3C_DEV_RTC 179*71b9114dSArnd Bergmann select S3C_DEV_USB_HOST 180*71b9114dSArnd Bergmann select S3C_DEV_USB_HSOTG 181*71b9114dSArnd Bergmann select S3C_DEV_WDT 182*71b9114dSArnd Bergmann select SAMSUNG_DEV_ADC 183*71b9114dSArnd Bergmann select SAMSUNG_DEV_BACKLIGHT 184*71b9114dSArnd Bergmann select SAMSUNG_DEV_IDE 185*71b9114dSArnd Bergmann select SAMSUNG_DEV_KEYPAD 186*71b9114dSArnd Bergmann select SAMSUNG_DEV_PWM 187*71b9114dSArnd Bergmann select SAMSUNG_DEV_TS 188*71b9114dSArnd Bergmann help 189*71b9114dSArnd Bergmann Machine support for the Samsung SMDK6410 190*71b9114dSArnd Bergmann 191*71b9114dSArnd Bergmann# At least some of the SMDK6410s were shipped with the card detect 192*71b9114dSArnd Bergmann# for the MMC/SD slots connected to the same input. This means that 193*71b9114dSArnd Bergmann# either the boards need to be altered to have channel0 to an alternate 194*71b9114dSArnd Bergmann# configuration or that only one slot can be used. 195*71b9114dSArnd Bergmann 196*71b9114dSArnd Bergmannchoice 197*71b9114dSArnd Bergmann prompt "SMDK6410 MMC/SD slot setup" 198*71b9114dSArnd Bergmann depends on MACH_SMDK6410 199*71b9114dSArnd Bergmann 200*71b9114dSArnd Bergmannconfig SMDK6410_SD_CH0 201*71b9114dSArnd Bergmann bool "Use channel 0 only" 202*71b9114dSArnd Bergmann depends on MACH_SMDK6410 203*71b9114dSArnd Bergmann help 204*71b9114dSArnd Bergmann Select CON7 (channel 0) as the MMC/SD slot, as 205*71b9114dSArnd Bergmann at least some SMDK6410 boards come with the 206*71b9114dSArnd Bergmann resistors fitted so that the card detects for 207*71b9114dSArnd Bergmann channels 0 and 1 are the same. 208*71b9114dSArnd Bergmann 209*71b9114dSArnd Bergmannconfig SMDK6410_SD_CH1 210*71b9114dSArnd Bergmann bool "Use channel 1 only" 211*71b9114dSArnd Bergmann depends on MACH_SMDK6410 212*71b9114dSArnd Bergmann help 213*71b9114dSArnd Bergmann Select CON6 (channel 1) as the MMC/SD slot, as 214*71b9114dSArnd Bergmann at least some SMDK6410 boards come with the 215*71b9114dSArnd Bergmann resistors fitted so that the card detects for 216*71b9114dSArnd Bergmann channels 0 and 1 are the same. 217*71b9114dSArnd Bergmann 218*71b9114dSArnd Bergmannendchoice 219*71b9114dSArnd Bergmann 220*71b9114dSArnd Bergmannconfig SMDK6410_WM1190_EV1 221*71b9114dSArnd Bergmann bool "Support Wolfson Microelectronics 1190-EV1 PMIC card" 222*71b9114dSArnd Bergmann depends on MACH_SMDK6410 223*71b9114dSArnd Bergmann depends on I2C=y 224*71b9114dSArnd Bergmann select MFD_WM8350_I2C 225*71b9114dSArnd Bergmann select REGULATOR 226*71b9114dSArnd Bergmann select REGULATOR_WM8350 227*71b9114dSArnd Bergmann help 228*71b9114dSArnd Bergmann The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC 229*71b9114dSArnd Bergmann and audio daughtercard for the Samsung SMDK6410 reference 230*71b9114dSArnd Bergmann platform. Enabling this option will build support for this 231*71b9114dSArnd Bergmann module into the kernel. The presence of the module will be 232*71b9114dSArnd Bergmann detected at runtime so the resulting kernel can be used 233*71b9114dSArnd Bergmann with or without the 1190-EV1 fitted. 234*71b9114dSArnd Bergmann 235*71b9114dSArnd Bergmannconfig SMDK6410_WM1192_EV1 236*71b9114dSArnd Bergmann bool "Support Wolfson Microelectronics 1192-EV1 PMIC card" 237*71b9114dSArnd Bergmann depends on MACH_SMDK6410 238*71b9114dSArnd Bergmann depends on I2C=y 239*71b9114dSArnd Bergmann select MFD_WM831X 240*71b9114dSArnd Bergmann select MFD_WM831X_I2C 241*71b9114dSArnd Bergmann select REGULATOR 242*71b9114dSArnd Bergmann select REGULATOR_WM831X 243*71b9114dSArnd Bergmann help 244*71b9114dSArnd Bergmann The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC 245*71b9114dSArnd Bergmann daughtercard for the Samsung SMDK6410 reference platform. 246*71b9114dSArnd Bergmann Enabling this option will build support for this module into 247*71b9114dSArnd Bergmann the kernel. The presence of the daughtercard will be 248*71b9114dSArnd Bergmann detected at runtime so the resulting kernel can be used 249*71b9114dSArnd Bergmann with or without the 1192-EV1 fitted. 250*71b9114dSArnd Bergmann 251*71b9114dSArnd Bergmannconfig MACH_NCP 252*71b9114dSArnd Bergmann bool "NCP" 253*71b9114dSArnd Bergmann depends on ATAGS 254*71b9114dSArnd Bergmann select CPU_S3C6410 255*71b9114dSArnd Bergmann select S3C64XX_SETUP_I2C1 256*71b9114dSArnd Bergmann select S3C_DEV_HSMMC1 257*71b9114dSArnd Bergmann select S3C_DEV_I2C1 258*71b9114dSArnd Bergmann help 259*71b9114dSArnd Bergmann Machine support for the Samsung NCP 260*71b9114dSArnd Bergmann 261*71b9114dSArnd Bergmannconfig MACH_HMT 262*71b9114dSArnd Bergmann bool "Airgoo HMT" 263*71b9114dSArnd Bergmann depends on ATAGS 264*71b9114dSArnd Bergmann select CPU_S3C6410 265*71b9114dSArnd Bergmann select S3C64XX_SETUP_FB_24BPP 266*71b9114dSArnd Bergmann select S3C_DEV_FB 267*71b9114dSArnd Bergmann select S3C_DEV_NAND 268*71b9114dSArnd Bergmann select S3C_DEV_USB_HOST 269*71b9114dSArnd Bergmann select SAMSUNG_DEV_PWM 270*71b9114dSArnd Bergmann help 271*71b9114dSArnd Bergmann Machine support for the Airgoo HMT 272*71b9114dSArnd Bergmann 273*71b9114dSArnd Bergmannconfig MACH_SMARTQ 274*71b9114dSArnd Bergmann bool 275*71b9114dSArnd Bergmann select CPU_S3C6410 276*71b9114dSArnd Bergmann select S3C64XX_SETUP_FB_24BPP 277*71b9114dSArnd Bergmann select S3C64XX_SETUP_SDHCI 278*71b9114dSArnd Bergmann select S3C64XX_SETUP_USB_PHY 279*71b9114dSArnd Bergmann select S3C_DEV_FB 280*71b9114dSArnd Bergmann select S3C_DEV_HSMMC 281*71b9114dSArnd Bergmann select S3C_DEV_HSMMC1 282*71b9114dSArnd Bergmann select S3C_DEV_HSMMC2 283*71b9114dSArnd Bergmann select S3C_DEV_HWMON 284*71b9114dSArnd Bergmann select S3C_DEV_RTC 285*71b9114dSArnd Bergmann select S3C_DEV_USB_HOST 286*71b9114dSArnd Bergmann select S3C_DEV_USB_HSOTG 287*71b9114dSArnd Bergmann select SAMSUNG_DEV_ADC 288*71b9114dSArnd Bergmann select SAMSUNG_DEV_PWM 289*71b9114dSArnd Bergmann select SAMSUNG_DEV_TS 290*71b9114dSArnd Bergmann help 291*71b9114dSArnd Bergmann Shared machine support for SmartQ 5/7 292*71b9114dSArnd Bergmann 293*71b9114dSArnd Bergmannconfig MACH_SMARTQ5 294*71b9114dSArnd Bergmann bool "SmartQ 5" 295*71b9114dSArnd Bergmann depends on ATAGS 296*71b9114dSArnd Bergmann select MACH_SMARTQ 297*71b9114dSArnd Bergmann help 298*71b9114dSArnd Bergmann Machine support for the SmartQ 5 299*71b9114dSArnd Bergmann 300*71b9114dSArnd Bergmannconfig MACH_SMARTQ7 301*71b9114dSArnd Bergmann bool "SmartQ 7" 302*71b9114dSArnd Bergmann depends on ATAGS 303*71b9114dSArnd Bergmann select MACH_SMARTQ 304*71b9114dSArnd Bergmann help 305*71b9114dSArnd Bergmann Machine support for the SmartQ 7 306*71b9114dSArnd Bergmann 307*71b9114dSArnd Bergmannconfig MACH_WLF_CRAGG_6410 308*71b9114dSArnd Bergmann bool "Wolfson Cragganmore 6410" 309*71b9114dSArnd Bergmann depends on ATAGS 310*71b9114dSArnd Bergmann depends on I2C=y 311*71b9114dSArnd Bergmann select CPU_S3C6410 312*71b9114dSArnd Bergmann select LEDS_GPIO_REGISTER 313*71b9114dSArnd Bergmann select S3C64XX_DEV_SPI0 314*71b9114dSArnd Bergmann select S3C64XX_SETUP_FB_24BPP 315*71b9114dSArnd Bergmann select S3C64XX_SETUP_I2C1 316*71b9114dSArnd Bergmann select S3C64XX_SETUP_IDE 317*71b9114dSArnd Bergmann select S3C64XX_SETUP_KEYPAD 318*71b9114dSArnd Bergmann select S3C64XX_SETUP_SDHCI 319*71b9114dSArnd Bergmann select S3C64XX_SETUP_SPI 320*71b9114dSArnd Bergmann select S3C64XX_SETUP_USB_PHY 321*71b9114dSArnd Bergmann select S3C_DEV_FB 322*71b9114dSArnd Bergmann select S3C_DEV_HSMMC 323*71b9114dSArnd Bergmann select S3C_DEV_HSMMC1 324*71b9114dSArnd Bergmann select S3C_DEV_HSMMC2 325*71b9114dSArnd Bergmann select S3C_DEV_I2C1 326*71b9114dSArnd Bergmann select S3C_DEV_RTC 327*71b9114dSArnd Bergmann select S3C_DEV_USB_HOST 328*71b9114dSArnd Bergmann select S3C_DEV_USB_HSOTG 329*71b9114dSArnd Bergmann select S3C_DEV_WDT 330*71b9114dSArnd Bergmann select SAMSUNG_DEV_ADC 331*71b9114dSArnd Bergmann select SAMSUNG_DEV_KEYPAD 332*71b9114dSArnd Bergmann select SAMSUNG_DEV_PWM 333*71b9114dSArnd Bergmann help 334*71b9114dSArnd Bergmann Machine support for the Wolfson Cragganmore S3C6410 variant. 335*71b9114dSArnd Bergmann 336*71b9114dSArnd Bergmannconfig MACH_S3C64XX_DT 337*71b9114dSArnd Bergmann bool "Samsung S3C6400/S3C6410 machine using Device Tree" 338*71b9114dSArnd Bergmann select CPU_S3C6400 339*71b9114dSArnd Bergmann select CPU_S3C6410 340*71b9114dSArnd Bergmann select PINCTRL 341*71b9114dSArnd Bergmann select PINCTRL_S3C64XX 342*71b9114dSArnd Bergmann help 343*71b9114dSArnd Bergmann Machine support for Samsung S3C6400/S3C6410 machines with Device Tree 344*71b9114dSArnd Bergmann enabled. 345*71b9114dSArnd Bergmann Select this if a fdt blob is available for your S3C64XX SoC based 346*71b9114dSArnd Bergmann board. 347*71b9114dSArnd Bergmann Note: This is under development and not all peripherals can be 348*71b9114dSArnd Bergmann supported with this machine file. 349*71b9114dSArnd Bergmann 350*71b9114dSArnd Bergmannendif 351