Kconfig 15.7 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11
# arch/arm/mach-s3c24xx/Kconfig
#
# Copyright (c) 2012 Samsung Electronics Co., Ltd.
#		http://www.samsung.com/
#
# Copyright 2007 Simtec Electronics
#
# Licensed under GPLv2

if ARCH_S3C24XX

12 13 14 15 16 17 18 19 20
config PLAT_S3C24XX
	def_bool y
	select ARCH_REQUIRE_GPIOLIB
	select NO_IOPORT
	select S3C_DEV_NAND
	select IRQ_DOMAIN
	help
	  Base platform code for any Samsung S3C24XX device

21 22 23 24 25 26 27 28 29
menu "SAMSUNG S3C24XX SoCs Support"

comment "S3C24XX SoCs"

config CPU_S3C2410
	bool "SAMSUNG S3C2410"
	default y
	select CPU_ARM920T
	select CPU_LLSERIAL_S3C2410
30
	select S3C2410_CLOCK
31
	select ARM_S3C2410_CPUFREQ if ARM_S3C24XX_CPUFREQ
32
	select S3C2410_PM if PM
33
	select SAMSUNG_WDT_RESET
34 35 36 37
	help
	  Support for S3C2410 and S3C2410A family from the S3C24XX line
	  of Samsung Mobile CPUs.

38 39 40 41 42
config CPU_S3C2412
	bool "SAMSUNG S3C2412"
	select CPU_ARM926T
	select CPU_LLSERIAL_S3C2440
	select S3C2412_DMA if S3C24XX_DMA
43
	select S3C2412_PM if PM
44 45 46
	help
	  Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line

47 48 49 50
config CPU_S3C2416
	bool "SAMSUNG S3C2416/S3C2450"
	select CPU_ARM926T
	select CPU_LLSERIAL_S3C2440
51
	select S3C2416_PM if PM
52
	select S3C2443_COMMON
53
	select S3C2443_DMA if S3C24XX_DMA
54
	select SAMSUNG_CLKSRC
55 56 57
	help
	  Support for the S3C2416 SoC from the S3C24XX line

58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
config CPU_S3C2440
	bool "SAMSUNG S3C2440"
	select CPU_ARM920T
	select CPU_LLSERIAL_S3C2440
	select S3C2410_CLOCK
	select S3C2410_PM if PM
	select S3C2440_DMA if S3C24XX_DMA
	help
	  Support for S3C2440 Samsung Mobile CPU based systems.

config CPU_S3C2442
	bool "SAMSUNG S3C2442"
	select CPU_ARM920T
	select CPU_LLSERIAL_S3C2440
	select S3C2410_CLOCK
	select S3C2410_PM if PM
	help
	  Support for S3C2442 Samsung Mobile CPU based systems.

config CPU_S3C244X
	def_bool y
	depends on CPU_S3C2440 || CPU_S3C2442
80
	select SAMSUNG_WDT_RESET
81

82 83 84 85
config CPU_S3C2443
	bool "SAMSUNG S3C2443"
	select CPU_ARM920T
	select CPU_LLSERIAL_S3C2440
86
	select S3C2443_COMMON
87
	select S3C2443_DMA if S3C24XX_DMA
88
	select SAMSUNG_CLKSRC
89 90 91
	help
	  Support for the S3C2443 SoC from the S3C24XX line

92 93
# common code

94 95 96 97 98 99 100 101 102 103 104
config S3C2410_CLOCK
	bool
	help
	  Clock code for the S3C2410, and similar processors which
	  is currently includes the S3C2410, S3C2440, S3C2442.

config S3C24XX_DCLK
	bool
	help
	  Clock code for supporting DCLK/CLKOUT on S3C24XX architectures

105 106 107 108 109
config S3C24XX_SMDK
	bool
	help
	  Common machine code for SMDK2410 and SMDK2440

110 111 112 113 114 115 116 117 118 119 120 121 122
config S3C24XX_SIMTEC_AUDIO
	bool
	depends on (ARCH_BAST || MACH_VR1000 || MACH_OSIRIS || MACH_ANUBIS)
	default y
	help
	  Add audio devices for common Simtec S3C24XX boards

config S3C24XX_SIMTEC_PM
	bool
	help
	  Common power management code for systems that are
	  compatible with the Simtec style of power management

123 124 125 126 127
config S3C24XX_SIMTEC_USB
	bool
	help
	  USB management code for common Simtec S3C24XX boards

128 129 130 131 132
config S3C24XX_SETUP_TS
	bool
	help
	  Compile in platform device definition for Samsung TouchScreen.

133 134 135 136 137 138 139 140 141 142
config S3C24XX_DMA
	bool "S3C2410 DMA support"
	select S3C_DMA
	help
	  S3C2410 DMA support. This is needed for drivers like sound which
	  use the S3C2410's DMA system to move data to and from the
	  peripheral blocks.

config S3C2410_DMA_DEBUG
	bool "S3C2410 DMA support debug"
143
	depends on S3C2410_DMA
144 145 146 147
	help
	  Enable debugging output for the DMA code. This option sends info
	  to the kernel log, at priority KERN_DEBUG.

148 149
config S3C2410_DMA
	bool
150 151
	depends on S3C24XX_DMA && (CPU_S3C2410 || CPU_S3C2442)
	default y if CPU_S3C2410 || CPU_S3C2442
152 153 154 155 156 157 158 159
	help
	  DMA device selection for S3C2410 and compatible CPUs

config S3C2410_PM
	bool
	help
	  Power Management code common to S3C2410 and better

160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202
# low-level serial option nodes

config CPU_LLSERIAL_S3C2410_ONLY
	bool
	default y if CPU_LLSERIAL_S3C2410 && !CPU_LLSERIAL_S3C2440

config CPU_LLSERIAL_S3C2440_ONLY
	bool
	default y if CPU_LLSERIAL_S3C2440 && !CPU_LLSERIAL_S3C2410

config CPU_LLSERIAL_S3C2410
	bool
	help
	  Selected if there is an S3C2410 (or register compatible) serial
	  low-level implementation needed

config CPU_LLSERIAL_S3C2440
	bool
	help
	  Selected if there is an S3C2440 (or register compatible) serial
	  low-level implementation needed

# gpio configurations

config S3C24XX_GPIO_EXTRA
	int
	default 128 if S3C24XX_GPIO_EXTRA128
	default 64 if S3C24XX_GPIO_EXTRA64
	default 16 if ARCH_H1940
	default 0

config S3C24XX_GPIO_EXTRA64
	bool
	help
	  Add an extra 64 gpio numbers to the available GPIO pool. This is
	  available for boards that need extra gpios for external devices.

config S3C24XX_GPIO_EXTRA128
	bool
	help
	  Add an extra 128 gpio numbers to the available GPIO pool. This is
	  available for boards that need extra gpios for external devices.

203 204
config S3C24XX_PLL
	bool "Support CPUfreq changing of PLL frequency (EXPERIMENTAL)"
205
	depends on ARM_S3C24XX_CPUFREQ
206 207 208 209 210 211 212 213
	help
	  Compile in support for changing the PLL frequency from the
	  S3C24XX series CPUfreq driver. The PLL takes time to settle
	  after a frequency change, so by default it is not enabled.

	  This also means that the PLL tables for the selected CPU(s) will
	  be built which may increase the size of the kernel image.

214 215 216 217
# cpu frequency items common between s3c2410 and s3c2440/s3c2442

config S3C2410_IOTIMING
	bool
218
	depends on ARM_S3C24XX_CPUFREQ
219 220 221 222 223
	help
	  Internal node to select io timing code that is common to the s3c2410
	  and s3c2440/s3c2442 cpu frequency support.

config S3C2410_CPUFREQ_UTILS
224 225 226 227 228
       bool
       depends on ARM_S3C24XX_CPUFREQ
       help
         Internal node to select timing code that is common to the s3c2410
         and s3c2440/s3c244 cpu frequency support.
229 230 231 232 233

# cpu frequency support common to s3c2412, s3c2413 and s3c2442

config S3C2412_IOTIMING
	bool
234
	depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2412 || CPU_S3C2443)
235 236 237 238
	help
	  Intel node to select io timing code that is common to the s3c2412
	  and the s3c2443.

239 240 241 242
# cpu-specific sections

if CPU_S3C2410

243 244
config S3C2410_PLL
	bool
245
	depends on ARM_S3C2410_CPUFREQ && S3C24XX_PLL
246 247 248 249
	default y
	help
	  Select the PLL table for the S3C2410

250
config S3C24XX_SIMTEC_NOR
251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270
	bool
	help
	  Internal node to specify machine has simtec NOR mapping

config MACH_BAST_IDE
	bool
	select HAVE_PATA_PLATFORM
	help
	  Internal node for machines with an BAST style IDE
	  interface

comment "S3C2410 Boards"

#
# The "S3C2410 Boards" list is ordered alphabetically by option text.
# (without ARCH_ or MACH_)
#

config MACH_AML_M5900
	bool "AML M5900 Series"
271
	select S3C24XX_SIMTEC_PM if PM
272 273 274 275 276 277 278
	select S3C_DEV_USB_HOST
	help
	  Say Y here if you are using the American Microsystems M5900 Series
	  <http://www.amltd.com>

config ARCH_BAST
	bool "Simtec Electronics BAST (EB2410ITX)"
279 280
	select ISA
	select MACH_BAST_IDE
281
	select S3C2410_IOTIMING if ARM_S3C2410_CPUFREQ
282
	select S3C24XX_DCLK
283
	select S3C24XX_SIMTEC_NOR
284
	select S3C24XX_SIMTEC_PM if PM
285
	select S3C24XX_SIMTEC_USB
286 287
	select S3C_DEV_HWMON
	select S3C_DEV_NAND
288
	select S3C_DEV_USB_HOST
289 290 291 292 293 294 295 296 297 298 299 300 301 302 303
	help
	  Say Y here if you are using the Simtec Electronics EB2410ITX
	  development board (also known as BAST)

config BAST_PC104_IRQ
	bool "BAST PC104 IRQ support"
	depends on ARCH_BAST
	default y
	help
	  Say Y	here to enable the PC104 IRQ routing on the
	  Simtec BAST (EB2410ITX)

config ARCH_H1940
	bool "IPAQ H1940"
	select PM_H1940 if PM
304
	select S3C24XX_SETUP_TS
305 306
	select S3C_DEV_NAND
	select S3C_DEV_USB_HOST
307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325
	help
	  Say Y here if you are using the HP IPAQ H1940

config H1940BT
	tristate "Control the state of H1940 bluetooth chip"
	depends on ARCH_H1940
	select RFKILL
	help
	  This is a simple driver that is able to control
	  the state of built in bluetooth chip on h1940.

config PM_H1940
	bool
	help
	  Internal node for H1940 and related PM

config MACH_N30
	bool "Acer N30 family"
	select S3C_DEV_NAND
326
	select S3C_DEV_USB_HOST
327 328 329 330 331 332 333
	help
	  Say Y here if you want suppt for the Acer N30, Acer N35,
	  Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs.

config MACH_OTOM
	bool "NexVision OTOM Board"
	select S3C_DEV_NAND
334
	select S3C_DEV_USB_HOST
335 336 337 338 339 340
	help
	  Say Y here if you are using the Nex Vision OTOM board

config MACH_QT2410
	bool "QT2410"
	select S3C_DEV_NAND
341
	select S3C_DEV_USB_HOST
342 343 344 345 346
	help
	  Say Y here if you are using the Armzone QT2410

config ARCH_SMDK2410
	bool "SMDK2410/A9M2410"
347
	select S3C24XX_SMDK
348
	select S3C_DEV_USB_HOST
349 350 351 352 353 354 355 356 357 358 359 360 361
	help
	  Say Y here if you are using the SMDK2410 or the derived module A9M2410
	  <http://www.fsforth.de>

config MACH_TCT_HAMMER
	bool "TCT Hammer Board"
	select S3C_DEV_USB_HOST
	help
	  Say Y here if you are using the TinCanTools Hammer Board
	  <http://www.tincantools.com>

config MACH_VR1000
	bool "Thorcom VR1000"
362
	select MACH_BAST_IDE
363
	select S3C24XX_DCLK
364
	select S3C24XX_SIMTEC_NOR
365
	select S3C24XX_SIMTEC_PM if PM
366
	select S3C24XX_SIMTEC_USB
367
	select S3C_DEV_USB_HOST
368 369 370 371 372
	help
	  Say Y here if you are using the Thorcom VR1000 board.

endif	# CPU_S3C2410

373 374 375 376 377 378 379 380 381 382 383
config S3C2412_PM_SLEEP
	bool
	help
	  Internal config node to apply sleep for S3C2412 power management.
	  Can be selected by another SoCs such as S3C2416 with similar
	  sleep procedure.

if CPU_S3C2412

config CPU_S3C2412_ONLY
	bool
384
	depends on !CPU_S3C2410 && !CPU_S3C2416 && !CPU_S3C2440 && \
385
		   !CPU_S3C2442 && !CPU_S3C2443
386 387 388 389 390 391 392 393 394
	default y

config S3C2412_DMA
	bool
	help
	  Internal config node for S3C2412 DMA support

config S3C2412_PM
	bool
395
	select S3C2412_PM_SLEEP
396
	select SAMSUNG_WAKEMASK
397 398 399 400 401 402 403 404 405 406 407 408 409
	help
	  Internal config node to apply S3C2412 power management

comment "S3C2412 Boards"

#
# The "S3C2412 Boards" list is ordered alphabetically by option text.
# (without ARCH_ or MACH_)
#

config MACH_JIVE
	bool "Logitech Jive"
	select S3C_DEV_NAND
410
	select S3C_DEV_USB_HOST
411 412 413 414
	help
	  Say Y here if you are using the Logitech Jive.

config MACH_JIVE_SHOW_BOOTLOADER
415 416
	bool "Allow access to bootloader partitions in MTD"
	depends on MACH_JIVE
417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436

config MACH_S3C2413
	bool
	help
	  Internal node for S3C2413 version of SMDK2413, so that
	  machine_is_s3c2413() will work when MACH_SMDK2413 is
	  selected

config MACH_SMDK2412
	bool "SMDK2412"
	select MACH_SMDK2413
	help
	  Say Y here if you are using an SMDK2412

	  Note, this shares support with SMDK2413, so will automatically
	  select MACH_SMDK2413.

config MACH_SMDK2413
	bool "SMDK2413"
	select MACH_S3C2413
437
	select S3C24XX_SMDK
438
	select S3C_DEV_NAND
439
	select S3C_DEV_USB_HOST
440 441 442 443 444 445
	help
	  Say Y here if you are using an SMDK2413

config MACH_VSTMS
	bool "VMSTMS"
	select S3C_DEV_NAND
446
	select S3C_DEV_USB_HOST
447 448 449 450 451
	help
	  Say Y here if you are using an VSTMS board

endif	# CPU_S3C2412

452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474
if CPU_S3C2416

config S3C2416_PM
	bool
	select S3C2412_PM_SLEEP
	help
	  Internal config node to apply S3C2416 power management

config S3C2416_SETUP_SDHCI
	bool
	select S3C2416_SETUP_SDHCI_GPIO
	help
	  Internal helper functions for S3C2416 based SDHCI systems

config S3C2416_SETUP_SDHCI_GPIO
	bool
	help
	  Common setup code for SDHCI gpio.

comment "S3C2416 Boards"

config MACH_SMDK2416
	bool "SMDK2416"
475
	select S3C2416_SETUP_SDHCI
476
	select S3C24XX_SMDK
477 478 479 480 481 482 483 484
	select S3C_DEV_FB
	select S3C_DEV_HSMMC
	select S3C_DEV_HSMMC1
	select S3C_DEV_NAND
	select S3C_DEV_USB_HOST
	help
	  Say Y here if you are using an SMDK2416

485 486 487 488 489 490 491 492 493 494 495 496
config MACH_S3C2416_DT
	bool "Samsung S3C2416 machine using devicetree"
	select CLKSRC_OF
	select USE_OF
	select PINCTRL
	select PINCTRL_S3C24XX
	help
	  Machine support for Samsung S3C2416 machines with device tree enabled.
	  Select this if a fdt blob is available for the S3C2416 SoC based board.
	  Note: This is under development and not all peripherals can be supported
	  with this machine file.

497 498
endif	# CPU_S3C2416

499 500 501 502 503 504 505
if CPU_S3C2440

config S3C2440_DMA
	bool
	help
	  Support for S3C2440 specific DMA code5A

506 507 508 509 510 511 512 513 514 515 516 517 518 519
config S3C2440_XTAL_12000000
	bool
	help
	  Indicate that the build needs to support 12MHz system
	  crystal.

config S3C2440_XTAL_16934400
	bool
	help
	  Indicate that the build needs to support 16.9344MHz system
	  crystal.

config S3C2440_PLL_12000000
	bool
520 521
	depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_12000000
	default y if S3C24XX_PLL
522 523 524 525 526
	help
	  PLL tables for S3C2440 or S3C2442 CPUs with 12MHz crystals.

config S3C2440_PLL_16934400
	bool
527 528
	depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_16934400
	default y if S3C24XX_PLL
529 530 531
	help
	  PLL tables for S3C2440 or S3C2442 CPUs with 16.934MHz crystals.

532 533 534 535 536 537 538 539 540 541 542
comment "S3C2440 Boards"

#
# The "S3C2440 Boards" list is ordered alphabetically by option text.
# (without ARCH_ or MACH_)
#

config MACH_ANUBIS
	bool "Simtec Electronics ANUBIS"
	select HAVE_PATA_PLATFORM
	select S3C2440_XTAL_12000000
543 544 545
	select S3C24XX_DCLK
	select S3C24XX_GPIO_EXTRA64
	select S3C24XX_SIMTEC_PM if PM
546 547 548 549 550 551 552 553
	select S3C_DEV_USB_HOST
	help
	  Say Y here if you are using the Simtec Electronics ANUBIS
	  development system

config MACH_AT2440EVB
	bool "Avantech AT2440EVB development board"
	select S3C_DEV_NAND
554
	select S3C_DEV_USB_HOST
555 556 557 558 559 560 561
	help
	  Say Y here if you are using the AT2440EVB development board

config MACH_MINI2440
	bool "MINI2440 development board"
	select EEPROM_AT24
	select LEDS_CLASS
562
	select LEDS_TRIGGERS
563
	select LEDS_TRIGGER_BACKLIGHT
564
	select NEW_LEDS
565 566
	select S3C_DEV_NAND
	select S3C_DEV_USB_HOST
567
	select S3C_SETUP_CAMIF
568 569 570 571 572 573 574 575
	help
	  Say Y here to select support for the MINI2440. Is a 10cm x 10cm board
	  available via various sources. It can come with a 3.5" or 7" touch LCD.

config MACH_NEXCODER_2440
	bool "NexVision NEXCODER 2440 Light Board"
	select S3C2440_XTAL_12000000
	select S3C_DEV_NAND
576
	select S3C_DEV_USB_HOST
577 578 579 580 581
	help
	  Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board

config MACH_OSIRIS
	bool "Simtec IM2440D20 (OSIRIS) module"
582
	select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
583
	select S3C2440_XTAL_12000000
584 585
	select S3C24XX_DCLK
	select S3C24XX_GPIO_EXTRA128
586
	select S3C24XX_SIMTEC_PM if PM
587
	select S3C_DEV_NAND
588
	select S3C_DEV_USB_HOST
589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608
	help
	  Say Y here if you are using the Simtec IM2440D20 module, also
	  known as the Osiris.

config MACH_OSIRIS_DVS
	tristate "Simtec IM2440D20 (OSIRIS) Dynamic Voltage Scaling driver"
	depends on MACH_OSIRIS
	select TPS65010
	help
	  Say Y/M here if you want to have dynamic voltage scaling support
	  on the Simtec IM2440D20 (OSIRIS) module via the TPS65011.

	  The DVS driver alters the voltage supplied to the ARM core
	  depending on the frequency it is running at. The driver itself
	  does not do any of the frequency alteration, which is left up
	  to the cpufreq driver.

config MACH_RX3715
	bool "HP iPAQ rx3715"
	select PM_H1940 if PM
609
	select S3C2440_XTAL_16934400
610 611 612 613 614 615 616
	select S3C_DEV_NAND
	help
	  Say Y here if you are using the HP iPAQ rx3715.

config ARCH_S3C2440
	bool "SMDK2440"
	select S3C2440_XTAL_16934400
617
	select S3C24XX_SMDK
618
	select S3C_DEV_NAND
619
	select S3C_DEV_USB_HOST
620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640
	help
	  Say Y here if you are using the SMDK2440.

config SMDK2440_CPU2440
	bool "SMDK2440 with S3C2440 CPU module"
	default y if ARCH_S3C2440
	select S3C2440_XTAL_16934400

endif	# CPU_S3C2440

if CPU_S3C2442

comment "S3C2442 Boards"

#
# The "S3C2442 Boards" list is ordered alphabetically by option text.
# (without ARCH_ or MACH_)
#

config MACH_NEO1973_GTA02
	bool "Openmoko GTA02 / Freerunner phone"
641
	select I2C
642 643 644
	select MFD_PCF50633
	select PCF50633_GPIO
	select POWER_SUPPLY
A
Arnd Bergmann 已提交
645
	select S3C24XX_PWM
646 647 648 649 650 651 652
	select S3C_DEV_USB_HOST
	help
	   Say Y here if you are using the Openmoko GTA02 / Freerunner GSM Phone

config MACH_RX1950
	bool "HP iPAQ rx1950"
	select I2C
653
	select PM_H1940 if PM
654
	select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
655
	select S3C2440_XTAL_16934400
656 657 658
	select S3C24XX_DCLK
	select S3C24XX_PWM
	select S3C_DEV_NAND
659 660 661
	help
	   Say Y here if you're using HP iPAQ rx1950

662
endif	# CPU_S3C2442
663

664 665 666 667 668 669 670 671
if CPU_S3C2443 || CPU_S3C2416

config S3C2443_COMMON
	bool
	help
	  Common code for the S3C2443 and similar processors, which includes
	  the S3C2416 and S3C2450.

672 673 674 675 676
config S3C2443_DMA
	bool
	help
	  Internal config node for S3C2443 DMA support

677 678 679 680 681
config S3C2443_SETUP_SPI
	bool
	help
	  Common setup code for SPI GPIO configurations

682 683 684 685
endif	# CPU_S3C2443 || CPU_S3C2416

if CPU_S3C2443

686 687 688 689
comment "S3C2443 Boards"

config MACH_SMDK2443
	bool "SMDK2443"
690
	select S3C24XX_SMDK
691 692 693 694 695 696
	select S3C_DEV_HSMMC1
	help
	  Say Y here if you are using an SMDK2443

endif	# CPU_S3C2443

697 698 699
endmenu	# SAMSUNG S3C24XX SoCs Support

endif	# ARCH_S3C24XX