# arch/arm/mach-s3c2416/Kconfig
#
# Copyright 2009 Yauhen Kharuzhy <jekhor@gmail.com>
#
# Licensed under GPLv2

# note, this also supports the S3C2450 which is so similar it has the same
# ID code as the S3C2416.

config CPU_S3C2416
	bool
	depends on ARCH_S3C2410
	select CPU_ARM926T
	select S3C2416_DMA if S3C2410_DMA
	select CPU_LLSERIAL_S3C2440
	select S3C_GPIO_PULL_UPDOWN
	select SAMSUNG_CLKSRC
	select S3C2443_CLOCK
	help
	  Support for the S3C2416 SoC from the S3C24XX line

config S3C2416_DMA
	bool
	depends on CPU_S3C2416
	help
	  Internal config node for S3C2416 DMA support

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

menu "S3C2416 Machines"

config MACH_SMDK2416
	bool "SMDK2416"
	select CPU_S3C2416
	select MACH_SMDK
	select S3C_DEV_FB
	select S3C_DEV_HSMMC
	select S3C_DEV_HSMMC1
	select S3C_DEV_NAND
	select S3C_DEV_USB_HOST
	select S3C2416_PM if PM
	help
	  Say Y here if you are using an SMDK2416

endmenu
