1# SPDX-License-Identifier: GPL-2.0 2# 3# Copyright (c) 2012 Samsung Electronics Co., Ltd. 4# http://www.samsung.com/ 5# 6# Copyright 2007 Simtec Electronics 7menuconfig ARCH_S3C24XX 8 bool "Samsung S3C24XX SoCs (deprecated, see help)" 9 depends on ARCH_MULTI_V4T || ARCH_MULTI_V5 10 depends on CPU_LITTLE_ENDIAN 11 depends on ATAGS && UNUSED_BOARD_FILES 12 select CLKSRC_SAMSUNG_PWM 13 select GPIO_SAMSUNG 14 select GPIOLIB 15 select S3C2410_WATCHDOG 16 select SAMSUNG_ATAGS 17 select WATCHDOG 18 help 19 Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443 20 and S3C2450 SoCs based systems, such as the Simtec Electronics BAST 21 (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or the 22 Samsung SMDK2410 development board (and derivatives). 23 24 The platform is deprecated and scheduled for removal. Please reach to 25 the maintainers of the platform and linux-samsung-soc@vger.kernel.org if 26 you still use it. 27 Without such feedback, the platform will be removed after 2022. 28 29if ARCH_S3C24XX 30 31config PLAT_S3C24XX 32 def_bool y 33 select GPIOLIB 34 select NO_IOPORT_MAP 35 select S3C_DEV_NAND 36 select COMMON_CLK 37 help 38 Base platform code for any Samsung S3C24XX device 39 40menu "Samsung S3C24XX SoCs Support" 41 42comment "S3C24XX SoCs" 43 44config CPU_S3C2410 45 bool "Samsung S3C2410" 46 depends on ARCH_MULTI_V4T 47 default y 48 select CPU_ARM920T 49 select S3C2410_COMMON_CLK 50 select ARM_S3C2410_CPUFREQ if ARM_S3C24XX_CPUFREQ 51 select S3C2410_PM if PM 52 help 53 Support for S3C2410 and S3C2410A family from the S3C24XX line 54 of Samsung Mobile CPUs. 55 56config CPU_S3C2412 57 bool "Samsung S3C2412" 58 depends on ARCH_MULTI_V5 59 select CPU_ARM926T 60 select S3C2412_COMMON_CLK 61 select S3C2412_PM if PM_SLEEP 62 help 63 Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line 64 65config CPU_S3C2416 66 bool "Samsung S3C2416/S3C2450" 67 depends on ARCH_MULTI_V5 68 select CPU_ARM926T 69 select S3C2416_PM if PM_SLEEP 70 select S3C2443_COMMON_CLK 71 help 72 Support for the S3C2416 SoC from the S3C24XX line 73 74config CPU_S3C2440 75 bool "Samsung S3C2440" 76 depends on ARCH_MULTI_V4T 77 select CPU_ARM920T 78 select S3C2410_COMMON_CLK 79 select S3C2410_PM if PM_SLEEP 80 help 81 Support for S3C2440 Samsung Mobile CPU based systems. 82 83config CPU_S3C2442 84 bool "Samsung S3C2442" 85 depends on ARCH_MULTI_V4T 86 select CPU_ARM920T 87 select S3C2410_COMMON_CLK 88 select S3C2410_PM if PM_SLEEP 89 help 90 Support for S3C2442 Samsung Mobile CPU based systems. 91 92config CPU_S3C244X 93 def_bool y 94 depends on CPU_S3C2440 || CPU_S3C2442 95 96config CPU_S3C2443 97 bool "Samsung S3C2443" 98 depends on ARCH_MULTI_V4T 99 select CPU_ARM920T 100 select S3C2443_COMMON_CLK 101 help 102 Support for the S3C2443 SoC from the S3C24XX line 103 104# common code 105 106config S3C24XX_SMDK 107 bool 108 help 109 Common machine code for SMDK2410 and SMDK2440 110 111config S3C24XX_SIMTEC_AUDIO 112 bool 113 depends on (ARCH_BAST || MACH_VR1000 || MACH_OSIRIS || MACH_ANUBIS) 114 default y 115 help 116 Add audio devices for common Simtec S3C24XX boards 117 118config S3C24XX_SIMTEC_PM 119 bool 120 help 121 Common power management code for systems that are 122 compatible with the Simtec style of power management 123 124config S3C24XX_SIMTEC_USB 125 bool 126 help 127 USB management code for common Simtec S3C24XX boards 128 129config S3C24XX_SETUP_TS 130 bool 131 help 132 Compile in platform device definition for Samsung TouchScreen. 133 134config S3C2410_PM 135 bool 136 help 137 Power Management code common to S3C2410 and better 138 139config S3C24XX_PLL 140 bool "Support CPUfreq changing of PLL frequency (EXPERIMENTAL)" 141 depends on ARM_S3C24XX_CPUFREQ 142 help 143 Compile in support for changing the PLL frequency from the 144 S3C24XX series CPUfreq driver. The PLL takes time to settle 145 after a frequency change, so by default it is not enabled. 146 147 This also means that the PLL tables for the selected CPU(s) will 148 be built which may increase the size of the kernel image. 149 150# cpu frequency items common between s3c2410 and s3c2440/s3c2442 151 152config S3C2410_IOTIMING 153 bool 154 depends on ARM_S3C24XX_CPUFREQ 155 help 156 Internal node to select io timing code that is common to the s3c2410 157 and s3c2440/s3c2442 cpu frequency support. 158 159# cpu frequency support common to s3c2412, s3c2413 and s3c2442 160 161config S3C2412_IOTIMING 162 bool 163 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2412 || CPU_S3C2443) 164 help 165 Intel node to select io timing code that is common to the s3c2412 166 and the s3c2443. 167 168# cpu-specific sections 169 170if CPU_S3C2410 171 172config S3C2410_PLL 173 bool 174 depends on ARM_S3C2410_CPUFREQ && S3C24XX_PLL 175 default y 176 help 177 Select the PLL table for the S3C2410 178 179config S3C24XX_SIMTEC_NOR 180 bool 181 help 182 Internal node to specify machine has simtec NOR mapping 183 184config MACH_BAST_IDE 185 bool 186 select HAVE_PATA_PLATFORM 187 help 188 Internal node for machines with an BAST style IDE 189 interface 190 191comment "S3C2410 Boards" 192 193# 194# The "S3C2410 Boards" list is ordered alphabetically by option text. 195# (without ARCH_ or MACH_) 196# 197 198config MACH_AML_M5900 199 bool "AML M5900 Series" 200 select S3C24XX_SIMTEC_PM if PM 201 select S3C_DEV_USB_HOST 202 help 203 Say Y here if you are using the American Microsystems M5900 Series 204 <http://www.amltd.com> 205 206config ARCH_BAST 207 bool "Simtec Electronics BAST (EB2410ITX)" 208 select MACH_BAST_IDE 209 select S3C2410_COMMON_DCLK 210 select S3C2410_IOTIMING if ARM_S3C2410_CPUFREQ 211 select S3C24XX_SIMTEC_NOR 212 select S3C24XX_SIMTEC_PM if PM 213 select S3C24XX_SIMTEC_USB 214 select S3C_DEV_HWMON 215 select S3C_DEV_NAND 216 select S3C_DEV_USB_HOST 217 help 218 Say Y here if you are using the Simtec Electronics EB2410ITX 219 development board (also known as BAST) 220 221config BAST_PC104_IRQ 222 bool "BAST PC104 IRQ support" 223 depends on ARCH_BAST 224 default y 225 help 226 Say Y here to enable the PC104 IRQ routing on the 227 Simtec BAST (EB2410ITX) 228 229config ARCH_H1940 230 bool "IPAQ H1940" 231 select PM_H1940 if PM 232 select S3C24XX_SETUP_TS 233 select S3C_DEV_NAND 234 select S3C_DEV_USB_HOST 235 help 236 Say Y here if you are using the HP IPAQ H1940 237 238config H1940BT 239 tristate "Control the state of H1940 bluetooth chip" 240 depends on ARCH_H1940 241 depends on RFKILL 242 help 243 This is a simple driver that is able to control 244 the state of built in bluetooth chip on h1940. 245 246config MACH_N30 247 bool "Acer N30 family" 248 select S3C_DEV_NAND 249 select S3C_DEV_USB_HOST 250 help 251 Say Y here if you want suppt for the Acer N30, Acer N35, 252 Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs. 253 254config MACH_OTOM 255 bool "NexVision OTOM Board" 256 select S3C_DEV_NAND 257 select S3C_DEV_USB_HOST 258 help 259 Say Y here if you are using the Nex Vision OTOM board 260 261config MACH_QT2410 262 bool "QT2410" 263 select S3C_DEV_NAND 264 select S3C_DEV_USB_HOST 265 help 266 Say Y here if you are using the Armzone QT2410 267 268config ARCH_SMDK2410 269 bool "SMDK2410/A9M2410" 270 select S3C24XX_SMDK 271 select S3C_DEV_USB_HOST 272 help 273 Say Y here if you are using the SMDK2410 or the derived module A9M2410 274 <http://www.fsforth.de> 275 276config MACH_TCT_HAMMER 277 bool "TCT Hammer Board" 278 select S3C_DEV_USB_HOST 279 help 280 Say Y here if you are using the TinCanTools Hammer Board 281 <https://www.tincantools.com> 282 283config MACH_VR1000 284 bool "Thorcom VR1000" 285 select MACH_BAST_IDE 286 select S3C2410_COMMON_DCLK 287 select S3C24XX_SIMTEC_NOR 288 select S3C24XX_SIMTEC_PM if PM 289 select S3C24XX_SIMTEC_USB 290 select S3C_DEV_USB_HOST 291 help 292 Say Y here if you are using the Thorcom VR1000 board. 293 294endif # CPU_S3C2410 295 296config S3C2412_PM_SLEEP 297 bool 298 help 299 Internal config node to apply sleep for S3C2412 power management. 300 Can be selected by another SoCs such as S3C2416 with similar 301 sleep procedure. 302 303if CPU_S3C2412 304 305config CPU_S3C2412_ONLY 306 bool 307 depends on !CPU_S3C2410 && !CPU_S3C2416 && !CPU_S3C2440 && \ 308 !CPU_S3C2442 && !CPU_S3C2443 309 default y 310 311config S3C2412_PM 312 bool 313 select S3C2412_PM_SLEEP 314 select SAMSUNG_WAKEMASK 315 help 316 Internal config node to apply S3C2412 power management 317 318comment "S3C2412 Boards" 319 320# 321# The "S3C2412 Boards" list is ordered alphabetically by option text. 322# (without ARCH_ or MACH_) 323# 324 325config MACH_JIVE 326 bool "Logitech Jive" 327 select S3C_DEV_NAND 328 select S3C_DEV_USB_HOST 329 help 330 Say Y here if you are using the Logitech Jive. 331 332config MACH_JIVE_SHOW_BOOTLOADER 333 bool "Allow access to bootloader partitions in MTD" 334 depends on MACH_JIVE 335 336config MACH_S3C2413 337 bool 338 help 339 Internal node for S3C2413 version of SMDK2413, so that 340 machine_is_s3c2413() will work when MACH_SMDK2413 is 341 selected 342 343config MACH_SMDK2412 344 bool "SMDK2412" 345 select MACH_SMDK2413 346 help 347 Say Y here if you are using an SMDK2412 348 349 Note, this shares support with SMDK2413, so will automatically 350 select MACH_SMDK2413. 351 352config MACH_SMDK2413 353 bool "SMDK2413" 354 select MACH_S3C2413 355 select S3C24XX_SMDK 356 select S3C_DEV_NAND 357 select S3C_DEV_USB_HOST 358 help 359 Say Y here if you are using an SMDK2413 360 361config MACH_VSTMS 362 bool "VMSTMS" 363 select S3C_DEV_NAND 364 select S3C_DEV_USB_HOST 365 help 366 Say Y here if you are using an VSTMS board 367 368endif # CPU_S3C2412 369 370if CPU_S3C2416 371 372config S3C2416_PM 373 bool 374 select S3C2412_PM_SLEEP 375 select SAMSUNG_WAKEMASK 376 help 377 Internal config node to apply S3C2416 power management 378 379config S3C2416_SETUP_SDHCI 380 bool 381 select S3C2416_SETUP_SDHCI_GPIO 382 help 383 Internal helper functions for S3C2416 based SDHCI systems 384 385config S3C2416_SETUP_SDHCI_GPIO 386 bool 387 help 388 Common setup code for SDHCI gpio. 389 390comment "S3C2416 Boards" 391 392config MACH_SMDK2416 393 bool "SMDK2416" 394 select S3C2416_SETUP_SDHCI 395 select S3C24XX_SMDK 396 select S3C_DEV_FB 397 select S3C_DEV_HSMMC 398 select S3C_DEV_HSMMC1 399 select S3C_DEV_NAND 400 select S3C_DEV_USB_HOST 401 help 402 Say Y here if you are using an SMDK2416 403 404config MACH_S3C2416_DT 405 bool "Samsung S3C2416 machine using devicetree" 406 select TIMER_OF 407 select USE_OF 408 select PINCTRL 409 select PINCTRL_S3C24XX 410 help 411 Machine support for Samsung S3C2416 machines with device tree enabled. 412 Select this if a fdt blob is available for the S3C2416 SoC based board. 413 Note: This is under development and not all peripherals can be supported 414 with this machine file. 415 416endif # CPU_S3C2416 417 418if CPU_S3C2440 || CPU_S3C2442 419 420config S3C2440_XTAL_12000000 421 bool 422 help 423 Indicate that the build needs to support 12MHz system 424 crystal. 425 426config S3C2440_XTAL_16934400 427 bool 428 help 429 Indicate that the build needs to support 16.9344MHz system 430 crystal. 431 432config S3C2440_PLL_12000000 433 bool 434 depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_12000000 435 default y if S3C24XX_PLL 436 help 437 PLL tables for S3C2440 or S3C2442 CPUs with 12MHz crystals. 438 439config S3C2440_PLL_16934400 440 bool 441 depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_16934400 442 default y if S3C24XX_PLL 443 help 444 PLL tables for S3C2440 or S3C2442 CPUs with 16.934MHz crystals. 445endif # CPU_S3C2440 || CPU_S3C2442 446 447if CPU_S3C2440 448 449comment "S3C2440 Boards" 450 451# 452# The "S3C2440 Boards" list is ordered alphabetically by option text. 453# (without ARCH_ or MACH_) 454# 455 456config MACH_ANUBIS 457 bool "Simtec Electronics ANUBIS" 458 select HAVE_PATA_PLATFORM 459 select S3C2410_COMMON_DCLK 460 select S3C2440_XTAL_12000000 461 select S3C24XX_SIMTEC_PM if PM 462 select S3C_DEV_USB_HOST 463 help 464 Say Y here if you are using the Simtec Electronics ANUBIS 465 development system 466 467config MACH_AT2440EVB 468 bool "Avantech AT2440EVB development board" 469 select S3C_DEV_NAND 470 select S3C_DEV_USB_HOST 471 help 472 Say Y here if you are using the AT2440EVB development board 473 474config MACH_MINI2440 475 bool "MINI2440 development board" 476 select LEDS_CLASS 477 select LEDS_TRIGGERS 478 select LEDS_TRIGGER_BACKLIGHT 479 select NEW_LEDS 480 select S3C_DEV_NAND 481 select S3C_DEV_USB_HOST 482 help 483 Say Y here to select support for the MINI2440. Is a 10cm x 10cm board 484 available via various sources. It can come with a 3.5" or 7" touch LCD. 485 486config MACH_NEXCODER_2440 487 bool "NexVision NEXCODER 2440 Light Board" 488 select S3C2440_XTAL_12000000 489 select S3C_DEV_NAND 490 select S3C_DEV_USB_HOST 491 help 492 Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board 493 494config MACH_OSIRIS 495 bool "Simtec IM2440D20 (OSIRIS) module" 496 select S3C2410_COMMON_DCLK 497 select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ 498 select S3C2440_XTAL_12000000 499 select S3C24XX_SIMTEC_PM if PM 500 select S3C_DEV_NAND 501 select S3C_DEV_USB_HOST 502 help 503 Say Y here if you are using the Simtec IM2440D20 module, also 504 known as the Osiris. 505 506config MACH_OSIRIS_DVS 507 tristate "Simtec IM2440D20 (OSIRIS) Dynamic Voltage Scaling driver" 508 depends on MACH_OSIRIS 509 depends on TPS65010 510 help 511 Say Y/M here if you want to have dynamic voltage scaling support 512 on the Simtec IM2440D20 (OSIRIS) module via the TPS65011. 513 514 The DVS driver alters the voltage supplied to the ARM core 515 depending on the frequency it is running at. The driver itself 516 does not do any of the frequency alteration, which is left up 517 to the cpufreq driver. 518 519config MACH_RX3715 520 bool "HP iPAQ rx3715" 521 select PM_H1940 if PM 522 select S3C2440_XTAL_16934400 523 select S3C_DEV_NAND 524 help 525 Say Y here if you are using the HP iPAQ rx3715. 526 527config ARCH_S3C2440 528 bool "SMDK2440" 529 select S3C2440_XTAL_16934400 530 select S3C24XX_SMDK 531 select S3C_DEV_NAND 532 select S3C_DEV_USB_HOST 533 help 534 Say Y here if you are using the SMDK2440. 535 536config SMDK2440_CPU2440 537 bool "SMDK2440 with S3C2440 CPU module" 538 default y if ARCH_S3C2440 539 select S3C2440_XTAL_16934400 540 541endif # CPU_S3C2440 542 543if CPU_S3C2442 544 545comment "S3C2442 Boards" 546 547# 548# The "S3C2442 Boards" list is ordered alphabetically by option text. 549# (without ARCH_ or MACH_) 550# 551 552config MACH_NEO1973_GTA02 553 bool "Openmoko GTA02 / Freerunner phone" 554 select I2C 555 select MFD_PCF50633 556 select PCF50633_GPIO 557 select POWER_SUPPLY 558 select S3C_DEV_USB_HOST 559 help 560 Say Y here if you are using the Openmoko GTA02 / Freerunner GSM Phone 561 562config MACH_RX1950 563 bool "HP iPAQ rx1950" 564 select I2C 565 select PM_H1940 if PM 566 select S3C2410_COMMON_DCLK 567 select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ 568 select S3C2440_XTAL_16934400 569 select S3C_DEV_NAND 570 help 571 Say Y here if you're using HP iPAQ rx1950 572 573endif # CPU_S3C2442 574 575if CPU_S3C2443 || CPU_S3C2416 576 577config S3C2443_SETUP_SPI 578 bool 579 help 580 Common setup code for SPI GPIO configurations 581 582endif # CPU_S3C2443 || CPU_S3C2416 583 584if CPU_S3C2443 585 586comment "S3C2443 Boards" 587 588config MACH_SMDK2443 589 bool "SMDK2443" 590 select S3C24XX_SMDK 591 select S3C_DEV_HSMMC1 592 help 593 Say Y here if you are using an SMDK2443 594 595endif # CPU_S3C2443 596 597config PM_H1940 598 bool 599 help 600 Internal node for H1940 and related PM 601 602endmenu # "Samsung S3C24XX SoCs Support" 603 604endif # ARCH_S3C24XX 605