if ARCH_UNIPHIER

config SYS_CONFIG_NAME
	default "uniphier"

config UNIPHIER_SMP
	bool

choice
	prompt "UniPhier SoC select"
	default ARCH_UNIPHIER_PH1_PRO4

config ARCH_UNIPHIER_PH1_SLD3
	bool "PH1-sLD3"
	select UNIPHIER_SMP

config ARCH_UNIPHIER_PH1_LD4
	bool "PH1-LD4"

config ARCH_UNIPHIER_PH1_PRO4
	bool "PH1-Pro4"
	select UNIPHIER_SMP

config ARCH_UNIPHIER_PH1_SLD8
	bool "PH1-sLD8"

endchoice

config MICRO_SUPPORT_CARD
	bool "Use Micro Support Card"
	help
	  This option provides support for the expansion board, available
	  on some UniPhier reference boards.

	  Say Y to use the on-board UART, Ether, LED devices.

config CMD_PINMON
	bool "Enable boot mode pins monitor command"
	default y
	help
	  The command "pinmon" shows the state of the boot mode pins.
	  The boot mode pins are latched when the system reset is deasserted
	  and determine which device the system should load a boot image from.

config CMD_DDRPHY_DUMP
	bool "Enable dump command of DDR PHY parameters"
	help
	  The command "ddrphy" shows the resulting parameters of DDR PHY
	  training; it is useful for the evaluation of DDR PHY training.

choice
	prompt "DDR3 Frequency select"

config DDR_FREQ_1600
	bool "DDR3 1600"
	depends on ARCH_UNIPHIER_PH1_SLD3 || ARCH_UNIPHIER_PH1_LD4 || ARCH_UNIPHIER_PH1_PRO4

config DDR_FREQ_1333
	bool "DDR3 1333"
	depends on ARCH_UNIPHIER_PH1_SLD3 || ARCH_UNIPHIER_PH1_LD4 || ARCH_UNIPHIER_PH1_SLD8

endchoice

config DDR_FREQ
	int
	default 1333 if DDR_FREQ_1333
	default 1600 if DDR_FREQ_1600

endif
