Kconfig 15.4 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
config PLAT_S3C24XX
	def_bool y
	select ARCH_REQUIRE_GPIOLIB
15
	select NO_IOPORT_MAP
16 17 18 19 20
	select S3C_DEV_NAND
	select IRQ_DOMAIN
	help
	  Base platform code for any Samsung S3C24XX device

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

comment "S3C24XX SoCs"

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

40 41
config CPU_S3C2412
	bool "SAMSUNG S3C2412"
42
	depends on SAMSUNG_CLOCK
43 44 45
	select CPU_ARM926T
	select CPU_LLSERIAL_S3C2440
	select S3C2412_DMA if S3C24XX_DMA
46
	select S3C2412_PM if PM
47 48 49
	help
	  Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line

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

61 62
config CPU_S3C2440
	bool "SAMSUNG S3C2440"
63
	depends on SAMSUNG_CLOCK
64 65 66 67 68 69 70 71 72 73
	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"
74
	depends on SAMSUNG_CLOCK
75 76 77
	select CPU_ARM920T
	select CPU_LLSERIAL_S3C2440
	select S3C2410_CLOCK
78
	select S3C2410_DMA if S3C24XX_DMA
79 80 81 82 83 84 85
	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
86
	select SAMSUNG_WDT_RESET
87

88 89 90 91
config CPU_S3C2443
	bool "SAMSUNG S3C2443"
	select CPU_ARM920T
	select CPU_LLSERIAL_S3C2440
92
	select S3C2443_COMMON
93
	select S3C2443_DMA if S3C24XX_DMA
94
	select SAMSUNG_CLKSRC
95 96 97
	help
	  Support for the S3C2443 SoC from the S3C24XX line

98 99
# common code

100 101 102 103 104 105 106 107 108 109 110
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

111 112 113 114 115
config S3C24XX_SMDK
	bool
	help
	  Common machine code for SMDK2410 and SMDK2440

116 117 118 119 120 121 122 123 124 125 126 127 128
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

129 130 131 132 133
config S3C24XX_SIMTEC_USB
	bool
	help
	  USB management code for common Simtec S3C24XX boards

134 135 136 137 138
config S3C24XX_SETUP_TS
	bool
	help
	  Compile in platform device definition for Samsung TouchScreen.

139 140 141 142 143 144 145 146 147 148
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"
149
	depends on S3C2410_DMA
150 151 152 153
	help
	  Enable debugging output for the DMA code. This option sends info
	  to the kernel log, at priority KERN_DEBUG.

154 155
config S3C2410_DMA
	bool
156
	depends on S3C24XX_DMA && (CPU_S3C2410 || CPU_S3C2442)
157 158 159 160 161 162 163 164
	help
	  DMA device selection for S3C2410 and compatible CPUs

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

165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186
# 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

187 188
config S3C24XX_PLL
	bool "Support CPUfreq changing of PLL frequency (EXPERIMENTAL)"
189
	depends on ARM_S3C24XX_CPUFREQ
190 191 192 193 194 195 196 197
	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.

198 199 200 201
# cpu frequency items common between s3c2410 and s3c2440/s3c2442

config S3C2410_IOTIMING
	bool
202
	depends on ARM_S3C24XX_CPUFREQ
203 204 205 206 207
	help
	  Internal node to select io timing code that is common to the s3c2410
	  and s3c2440/s3c2442 cpu frequency support.

config S3C2410_CPUFREQ_UTILS
208 209 210 211 212
       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.
213 214 215 216 217

# cpu frequency support common to s3c2412, s3c2413 and s3c2442

config S3C2412_IOTIMING
	bool
218
	depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2412 || CPU_S3C2443)
219 220 221 222
	help
	  Intel node to select io timing code that is common to the s3c2412
	  and the s3c2443.

223 224 225 226
# cpu-specific sections

if CPU_S3C2410

227 228
config S3C2410_PLL
	bool
229
	depends on ARM_S3C2410_CPUFREQ && S3C24XX_PLL
230 231 232 233
	default y
	help
	  Select the PLL table for the S3C2410

234
config S3C24XX_SIMTEC_NOR
235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254
	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"
255
	select S3C24XX_SIMTEC_PM if PM
256 257 258 259 260 261 262
	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)"
263 264
	select ISA
	select MACH_BAST_IDE
265
	select S3C2410_IOTIMING if ARM_S3C2410_CPUFREQ
266
	select S3C24XX_DCLK
267
	select S3C24XX_SIMTEC_NOR
268
	select S3C24XX_SIMTEC_PM if PM
269
	select S3C24XX_SIMTEC_USB
270 271
	select S3C_DEV_HWMON
	select S3C_DEV_NAND
272
	select S3C_DEV_USB_HOST
273 274 275 276 277 278 279 280 281 282 283 284 285 286 287
	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
288
	select S3C24XX_SETUP_TS
289 290
	select S3C_DEV_NAND
	select S3C_DEV_USB_HOST
291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309
	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
310
	select S3C_DEV_USB_HOST
311 312 313 314 315 316 317
	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
318
	select S3C_DEV_USB_HOST
319 320 321 322 323 324
	help
	  Say Y here if you are using the Nex Vision OTOM board

config MACH_QT2410
	bool "QT2410"
	select S3C_DEV_NAND
325
	select S3C_DEV_USB_HOST
326 327 328 329 330
	help
	  Say Y here if you are using the Armzone QT2410

config ARCH_SMDK2410
	bool "SMDK2410/A9M2410"
331
	select S3C24XX_SMDK
332
	select S3C_DEV_USB_HOST
333 334 335 336 337 338 339 340 341 342 343 344 345
	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"
346
	select MACH_BAST_IDE
347
	select S3C24XX_DCLK
348
	select S3C24XX_SIMTEC_NOR
349
	select S3C24XX_SIMTEC_PM if PM
350
	select S3C24XX_SIMTEC_USB
351
	select S3C_DEV_USB_HOST
352 353 354 355 356
	help
	  Say Y here if you are using the Thorcom VR1000 board.

endif	# CPU_S3C2410

357 358 359 360 361 362 363 364 365 366 367
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
368
	depends on !CPU_S3C2410 && !CPU_S3C2416 && !CPU_S3C2440 && \
369
		   !CPU_S3C2442 && !CPU_S3C2443
370 371 372 373 374 375 376 377 378
	default y

config S3C2412_DMA
	bool
	help
	  Internal config node for S3C2412 DMA support

config S3C2412_PM
	bool
379
	select S3C2412_PM_SLEEP
380
	select SAMSUNG_WAKEMASK
381 382 383 384 385 386 387 388 389 390 391 392 393
	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
394
	select S3C_DEV_USB_HOST
395 396 397 398
	help
	  Say Y here if you are using the Logitech Jive.

config MACH_JIVE_SHOW_BOOTLOADER
399 400
	bool "Allow access to bootloader partitions in MTD"
	depends on MACH_JIVE
401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420

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
421
	select S3C24XX_SMDK
422
	select S3C_DEV_NAND
423
	select S3C_DEV_USB_HOST
424 425 426 427 428 429
	help
	  Say Y here if you are using an SMDK2413

config MACH_VSTMS
	bool "VMSTMS"
	select S3C_DEV_NAND
430
	select S3C_DEV_USB_HOST
431 432 433 434 435
	help
	  Say Y here if you are using an VSTMS board

endif	# CPU_S3C2412

436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458
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"
459
	select S3C2416_SETUP_SDHCI
460
	select S3C24XX_SMDK
461 462 463 464 465 466 467 468
	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

469 470 471 472 473 474 475 476 477 478 479 480
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.

481 482
endif	# CPU_S3C2416

483 484 485 486 487 488 489
if CPU_S3C2440

config S3C2440_DMA
	bool
	help
	  Support for S3C2440 specific DMA code5A

490 491 492 493 494 495 496 497 498 499 500 501 502 503
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
504 505
	depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_12000000
	default y if S3C24XX_PLL
506 507 508 509 510
	help
	  PLL tables for S3C2440 or S3C2442 CPUs with 12MHz crystals.

config S3C2440_PLL_16934400
	bool
511 512
	depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_16934400
	default y if S3C24XX_PLL
513 514 515
	help
	  PLL tables for S3C2440 or S3C2442 CPUs with 16.934MHz crystals.

516 517 518 519 520 521 522 523 524 525 526
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
527 528
	select S3C24XX_DCLK
	select S3C24XX_SIMTEC_PM if PM
529 530 531 532 533 534 535 536
	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
537
	select S3C_DEV_USB_HOST
538 539 540 541 542
	help
	  Say Y here if you are using the AT2440EVB development board

config MACH_MINI2440
	bool "MINI2440 development board"
543
	select EEPROM_AT24 if I2C
544
	select LEDS_CLASS
545
	select LEDS_TRIGGERS
546
	select LEDS_TRIGGER_BACKLIGHT
547
	select NEW_LEDS
548 549
	select S3C_DEV_NAND
	select S3C_DEV_USB_HOST
550
	select S3C_SETUP_CAMIF
551 552 553 554 555 556 557 558
	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
559
	select S3C_DEV_USB_HOST
560 561 562 563 564
	help
	  Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board

config MACH_OSIRIS
	bool "Simtec IM2440D20 (OSIRIS) module"
565
	select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
566
	select S3C2440_XTAL_12000000
567
	select S3C24XX_DCLK
568
	select S3C24XX_SIMTEC_PM if PM
569
	select S3C_DEV_NAND
570
	select S3C_DEV_USB_HOST
571 572 573 574 575 576 577
	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
578
	depends on TPS65010
579 580 581 582 583 584 585 586 587 588 589 590
	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
591
	select S3C2440_XTAL_16934400
592 593 594 595 596 597 598
	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
599
	select S3C24XX_SMDK
600
	select S3C_DEV_NAND
601
	select S3C_DEV_USB_HOST
602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622
	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"
623
	select I2C
624 625 626
	select MFD_PCF50633
	select PCF50633_GPIO
	select POWER_SUPPLY
A
Arnd Bergmann 已提交
627
	select S3C24XX_PWM
628 629 630 631 632 633 634
	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
635
	select PM_H1940 if PM
636
	select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
637
	select S3C2440_XTAL_16934400
638 639 640
	select S3C24XX_DCLK
	select S3C24XX_PWM
	select S3C_DEV_NAND
641 642 643
	help
	   Say Y here if you're using HP iPAQ rx1950

644
endif	# CPU_S3C2442
645

646 647 648 649 650 651 652 653
if CPU_S3C2443 || CPU_S3C2416

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

654 655 656 657 658 659
config S3C2443_COMMON_CLK
	bool
	help
	  Temporary symbol to build the clock driver based on the common clock
	  framework.

660 661 662 663 664
config S3C2443_DMA
	bool
	help
	  Internal config node for S3C2443 DMA support

665 666 667 668 669
config S3C2443_SETUP_SPI
	bool
	help
	  Common setup code for SPI GPIO configurations

670 671 672 673
endif	# CPU_S3C2443 || CPU_S3C2416

if CPU_S3C2443

674 675 676 677
comment "S3C2443 Boards"

config MACH_SMDK2443
	bool "SMDK2443"
678
	select S3C24XX_SMDK
679 680 681 682 683 684
	select S3C_DEV_HSMMC1
	help
	  Say Y here if you are using an SMDK2443

endif	# CPU_S3C2443

685 686 687
endmenu	# SAMSUNG S3C24XX SoCs Support

endif	# ARCH_S3C24XX