if ARCH_IPQSOC

config SYS_SOC
	default "ipqsoc"

config SMEM_VERSION_C
	bool "IPQSOC Shared memory version"
	default n

config SMEM_BASE_ADDR
	hex "Define memory for shared memory"

config NUM_ALT_PARTITION
	int
	default 16

config RAM_NUM_PART_ENTRIES
	int "Number of RAM partition entries which are usable by APPS"
	default 32

config RAM_PART_NAME_LENGTH
	int "Max length of ram partition name"
	default 16

config TEXT_SIZE
	hex "Define Size of u-boot text size in DDR region"
	default 0x200000

config SOC_HW_VERSION_REG
	hex "Define SoC HW version register"
	default 0x194D000

config IPQ_DEFAULTS
	bool "Enable default configs & tool support for IPQ SOC"
	select PINCTRL_QTI
	select CLK_QTI
	select BOARD_LATE_INIT
	select SYS_DEVICE_NULLDEV
	select CMD_XIMG
	select CMD_MEMTEST
	select CMD_CACHE
	select DMA
	select DMA_CHANNELS
	select BAM_DMA
	imply WDT
	imply WDT_QTI
	imply CMD_WDT

config IPQ_I2C
	bool "Enable I2C support in IPQ SOC"
	select I2C
	select DM_I2C
	select SYS_I2C_QUP
	select CMD_I2C

config IPQ_MMC
	bool "Enable eMMC support in IPQ SOC"
	select MMC_SDHCI
	select MMC_SDHCI_MSM
	select MMC_SDHCI_ADMA
	imply MMC_HS200_SUPPORT
	select EFI_PARTITION
	select CMD_GPT
	select CMD_MMC

config IPQ_NAND
	bool "Enable NAND flash support in IPQ SOC"
	select QTI_BAM
	select NAND_QTI
	select DM_MTD
	select MTD_RAW_NAND
	select MTD_UBI
	select UBI_WRITE
	select CMD_MTD
	select CMD_NAND
	select CMD_UBI

config IPQ_SPI_NOR
	bool "Enable SPI NOR flash support in IPQ SOC"
	select SPI
	select SPI_QUP
	select DM_SPI
	select DM_SPI_FLASH
	select SPI_FLASH_STMICRO
	select SPI_FLASH_GIGADEVICE
	select SPI_FLASH_MACRONIX
	select SPI_FLASH_MTD if ENV_IS_IN_SPI_FLASH

config IPQ_NET
	bool "Enable default Network Configurations for IPQ SOC"
	select ETH
	select DM_MDIO
	select MDIO_IPQ4019
	select PHYLIB
	select PHY_QTI
	select CMD_NET
	select CMD_MDIO
	select CMD_MII
	select CMD_PING
	select CMD_TFTPPUT
	select CMD_DHCP
	select TFTP_PORT

config ETH_MAX_MAC
	hex "Define Maximum MAC support in SoC"
	default 2

config ETH_MAX_UNIPHY
	int "Maximum number of uniphy available"
	default 2

config IPQ_MBN_ARCH
	string
	default "ipq5332" if TARGET_IPQ5332

config IPQ_MBN_VERSION
	int
	default 6 if TARGET_IPQ5332

config IPQ_MBN_SWID
	int
	default 9 if TARGET_IPQ5332

choice
	prompt "IPQ board select"

config TARGET_IPQ5332
	bool "QTI IPQ5332 SOC"
	select SMEM_VERSION_C
	select IPQ_DEFAULTS
	imply IPQ_I2C
	select IPQ_NET
	select QTI_NSS_SWITCH
	select PHY_QTI_8X8X
	select PHY_QTI_8081
	help
	  Support for the IPQ53XX SoC.
	  - Board Open Platform Specifications.
	  - Quad Cores A53, Nom@1.2G ,Turbo@1.5G, L1@32KB L2@512KB
	  - DDR3L/DDR4
	  - QSPI NAND / NOR / eMMC
	  - USB 3.0/I2C/UART/PCIe Gen3 2Lane
	  - 1G/2.5G/10G Ethernet Ports

endchoice

source "board/qti/ipq5332/Kconfig"

endif
