# Copyright 2009 Samsung Electronics Co.
#	Byungho Min <bhmin@samsung.com>
#
# Licensed under GPLv2

# Configuration options for the S5PC100 CPU

if ARCH_S5PC100

config CPU_S5PC100
	bool
	select S5P_EXT_INT
	select SAMSUNG_DMADEV
	help
	  Enable S5PC100 CPU support

config S5PC100_SETUP_FB_24BPP
	bool
	help
	  Common setup code for S5PC1XX with an 24bpp RGB display helper.

config S5PC100_SETUP_I2C1
	bool
	help
	  Common setup code for i2c bus 1.

config S5PC100_SETUP_IDE
	bool
	help
	  Common setup code for S5PC100 IDE GPIO configurations

config S5PC100_SETUP_KEYPAD
	bool
	help
	  Common setup code for KEYPAD GPIO configurations.

config S5PC100_SETUP_SDHCI
	bool
	select S5PC100_SETUP_SDHCI_GPIO
	help
	  Internal helper functions for S5PC100 based SDHCI systems

config S5PC100_SETUP_SDHCI_GPIO
	bool
	help
	  Common setup code for SDHCI gpio.

config S5PC100_SETUP_SPI
	bool
	help
	  Common setup code for SPI GPIO configurations.

config MACH_SMDKC100
	bool "SMDKC100"
	select CPU_S5PC100
	select S3C_DEV_FB
	select S3C_DEV_HSMMC
	select S3C_DEV_HSMMC1
	select S3C_DEV_HSMMC2
	select S3C_DEV_I2C1
	select S3C_DEV_RTC
	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
	select S5PC100_SETUP_FB_24BPP
	select S5PC100_SETUP_I2C1
	select S5PC100_SETUP_IDE
	select S5PC100_SETUP_KEYPAD
	select S5PC100_SETUP_SDHCI
	select S5P_DEV_FIMC0
	select S5P_DEV_FIMC1
	select S5P_DEV_FIMC2
	help
	  Machine support for the Samsung SMDKC100

endif
