menu "mpc85xx CPU"
	depends on MPC85xx

config SYS_CPU
	default "mpc85xx"

config CMD_ERRATA
	bool "Enable the 'errata' command"
	depends on MPC85xx
	default y
	help
	  This enables the 'errata' command which displays a list of errata
	  work-arounds which are enabled for the current board.

choice
	prompt "Target select"
	optional

config TARGET_SOCRATES
	bool "Support socrates"
	select ARCH_MPC8544

config TARGET_P3041DS
	bool "Support P3041DS"
	select PHYS_64BIT
	select ARCH_P3041
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_P4080DS
	bool "Support P4080DS"
	select PHYS_64BIT
	select ARCH_P4080
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_P5040DS
	bool "Support P5040DS"
	select PHYS_64BIT
	select ARCH_P5040
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_MPC8548CDS
	bool "Support MPC8548CDS"
	select ARCH_MPC8548
	select FSL_VIA
	select SYS_CACHE_SHIFT_5

config TARGET_P1010RDB_PA
	bool "Support P1010RDB_PA"
	select ARCH_P1010
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select SUPPORT_SPL
	select SUPPORT_TPL
	imply CMD_EEPROM
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_P1010RDB_PB
	bool "Support P1010RDB_PB"
	select ARCH_P1010
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select SUPPORT_SPL
	select SUPPORT_TPL
	imply CMD_EEPROM
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_P1020RDB_PC
	bool "Support P1020RDB-PC"
	select SUPPORT_SPL
	select SUPPORT_TPL
	select ARCH_P1020
	imply CMD_EEPROM
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_P1020RDB_PD
	bool "Support P1020RDB-PD"
	select SUPPORT_SPL
	select SUPPORT_TPL
	select ARCH_P1020
	imply CMD_EEPROM
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_P2020RDB
	bool "Support P2020RDB-PC"
	select SUPPORT_SPL
	select SUPPORT_TPL
	select ARCH_P2020
	imply CMD_EEPROM
	imply CMD_SATA
	imply SATA_SIL

config TARGET_P2041RDB
	bool "Support P2041RDB"
	select ARCH_P2041
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select PHYS_64BIT
	imply CMD_SATA
	imply FSL_SATA

config TARGET_QEMU_PPCE500
	bool "Support qemu-ppce500"
	select ARCH_QEMU_E500
	select PHYS_64BIT
	imply OF_HAS_PRIOR_STAGE

config TARGET_T1024RDB
	bool "Support T1024RDB"
	select ARCH_T1024
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select SUPPORT_SPL
	select PHYS_64BIT
	select FSL_DDR_INTERACTIVE
	imply CMD_EEPROM
	imply PANIC_HANG

config TARGET_T1042RDB
	bool "Support T1042RDB"
	select ARCH_T1042
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select SUPPORT_SPL
	select PHYS_64BIT

config TARGET_T1042D4RDB
	bool "Support T1042D4RDB"
	select ARCH_T1042
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select SUPPORT_SPL
	select PHYS_64BIT
	imply PANIC_HANG

config TARGET_T1042RDB_PI
	bool "Support T1042RDB_PI"
	select ARCH_T1042
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select SUPPORT_SPL
	select PHYS_64BIT
	imply PANIC_HANG

config TARGET_T2080QDS
	bool "Support T2080QDS"
	select ARCH_T2080
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select SUPPORT_SPL
	select PHYS_64BIT
	select FSL_DDR_FIRST_SLOT_QUAD_CAPABLE
	select FSL_DDR_INTERACTIVE
	imply CMD_SATA

config TARGET_T2080RDB
	bool "Support T2080RDB"
	select ARCH_T2080
	select BOARD_LATE_INIT if CHAIN_OF_TRUST
	select SUPPORT_SPL
	select PHYS_64BIT
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_T4240RDB
	bool "Support T4240RDB"
	select ARCH_T4240
	select SUPPORT_SPL
	select PHYS_64BIT
	select FSL_DDR_FIRST_SLOT_QUAD_CAPABLE
	imply CMD_SATA
	imply PANIC_HANG

config TARGET_KMP204X
	bool "Support kmp204x"
	select VENDOR_KM

config TARGET_KMCENT2
	bool "Support kmcent2"
	select VENDOR_KM

endchoice

config ARCH_B4420
	bool
	select E500MC
	select E6500
	select FSL_LAW
	select HETROGENOUS_CLUSTERS
	select SYS_FSL_DDR_VER_47
	select SYS_FSL_ERRATUM_A004477
	select SYS_FSL_ERRATUM_A005871
	select SYS_FSL_ERRATUM_A006379
	select SYS_FSL_ERRATUM_A006384
	select SYS_FSL_ERRATUM_A006475
	select SYS_FSL_ERRATUM_A006593
	select SYS_FSL_ERRATUM_A007075
	select SYS_FSL_ERRATUM_A007186 if CHAIN_OF_TRUST
	select SYS_FSL_ERRATUM_A007212
	select SYS_FSL_ERRATUM_A009942
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS2
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select SYS_PPC64
	select FSL_IFC
	imply CMD_EEPROM
	imply CMD_NAND
	imply CMD_REGINFO

config ARCH_B4860
	bool
	select E500MC
	select E6500
	select FSL_LAW
	select HETROGENOUS_CLUSTERS
	select SYS_FSL_DDR_VER_47
	select SYS_FSL_ERRATUM_A004477
	select SYS_FSL_ERRATUM_A005871
	select SYS_FSL_ERRATUM_A006379
	select SYS_FSL_ERRATUM_A006384
	select SYS_FSL_ERRATUM_A006475
	select SYS_FSL_ERRATUM_A006593
	select SYS_FSL_ERRATUM_A007075
	select SYS_FSL_ERRATUM_A007186 if CHAIN_OF_TRUST
	select SYS_FSL_ERRATUM_A007212
	select SYS_FSL_ERRATUM_A007907
	select SYS_FSL_ERRATUM_A009942
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS2
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select SYS_PPC64
	select FSL_IFC
	imply CMD_EEPROM
	imply CMD_NAND
	imply CMD_REGINFO

config ARCH_BSC9131
	bool
	select FSL_LAW
	select SYS_FSL_DDR_VER_44
	select SYS_FSL_ERRATUM_A004477
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select FSL_IFC
	imply CMD_EEPROM
	imply CMD_NAND
	imply CMD_REGINFO

config ARCH_BSC9132
	bool
	select FSL_LAW
	select SYS_FSL_DDR_VER_46
	select SYS_FSL_ERRATUM_A004477
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_A005434
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_ERRATUM_I2C_A004447
	select SYS_FSL_ERRATUM_IFC_A002769
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_IFC
	imply CMD_EEPROM
	imply CMD_MTDPARTS
	imply CMD_NAND
	imply CMD_PCI
	imply CMD_REGINFO

config ARCH_C29X
	bool
	select FSL_LAW
	select SYS_FSL_DDR_VER_46
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_ESDHC111
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_6
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_IFC
	imply CMD_NAND
	imply CMD_PCI
	imply CMD_REGINFO

config ARCH_MPC8536
	bool
	select FSL_LAW
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR2
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_ELBC
	imply CMD_NAND
	imply CMD_SATA
	imply CMD_REGINFO

config ARCH_MPC8540
	bool
	select FSL_LAW
	select SYS_FSL_HAS_DDR1

config ARCH_MPC8544
	bool
	select BTB
	select FSL_LAW
	select SYS_CACHE_SHIFT_5
	select SYS_FSL_ERRATUM_A005125
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR2
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_ELBC

config ARCH_MPC8548
	bool
	select BTB
	select FSL_LAW
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_NMG_DDR120
	select SYS_FSL_ERRATUM_NMG_LBC103
	select SYS_FSL_ERRATUM_NMG_ETSEC129
	select SYS_FSL_ERRATUM_I2C_A004447
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR2
	select SYS_FSL_HAS_DDR1
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	imply CMD_REGINFO

config ARCH_MPC8560
	bool
	select FSL_LAW
	select SYS_FSL_HAS_DDR1

config ARCH_P1010
	bool
	select A003399_NOR_WORKAROUND if SYS_FSL_ERRATUM_IFC_A003399 && !SPL
	select BTB
	select FSL_LAW
	select SYS_CACHE_SHIFT_5
	select SYS_HAS_SERDES
	select SYS_FSL_ERRATUM_A004477
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_A005275
	select SYS_FSL_ERRATUM_A006261
	select SYS_FSL_ERRATUM_A007075
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_ERRATUM_I2C_A004447
	select SYS_FSL_ERRATUM_IFC_A002769
	select SYS_FSL_ERRATUM_P1010_A003549
	select SYS_FSL_ERRATUM_SEC_A003571
	select SYS_FSL_ERRATUM_IFC_A003399
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_IFC
	imply CMD_EEPROM
	imply CMD_MTDPARTS
	imply CMD_NAND
	imply CMD_SATA
	imply CMD_PCI
	imply CMD_REGINFO
	imply FSL_SATA
	imply TIMESTAMP

config ARCH_P1011
	bool
	select FSL_LAW
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_ELBC_A001
	select SYS_FSL_ERRATUM_ESDHC111
	select FSL_PCIE_DISABLE_ASPM
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_ELBC

config ARCH_P1020
	bool
	select BTB
	select FSL_LAW
	select SYS_CACHE_SHIFT_5
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_ELBC_A001
	select SYS_FSL_ERRATUM_ESDHC111
	select FSL_PCIE_DISABLE_ASPM
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_ELBC
	imply CMD_NAND
	imply CMD_SATA
	imply CMD_PCI
	imply CMD_REGINFO
	imply SATA_SIL

config ARCH_P1021
	bool
	select FSL_LAW
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_ELBC_A001
	select SYS_FSL_ERRATUM_ESDHC111
	select FSL_PCIE_DISABLE_ASPM
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_ELBC
	imply CMD_REGINFO
	imply CMD_NAND
	imply CMD_SATA
	imply CMD_REGINFO
	imply SATA_SIL

config ARCH_P1023
	bool
	select FSL_LAW
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_I2C_A004447
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select FSL_ELBC

config ARCH_P1024
	bool
	select FSL_LAW
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_ELBC_A001
	select SYS_FSL_ERRATUM_ESDHC111
	select FSL_PCIE_DISABLE_ASPM
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_ELBC
	imply CMD_EEPROM
	imply CMD_NAND
	imply CMD_SATA
	imply CMD_PCI
	imply CMD_REGINFO
	imply SATA_SIL

config ARCH_P1025
	bool
	select FSL_LAW
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_ELBC_A001
	select SYS_FSL_ERRATUM_ESDHC111
	select FSL_PCIE_DISABLE_ASPM
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_ELBC
	imply CMD_SATA
	imply CMD_REGINFO

config ARCH_P2020
	bool
	select BTB
	select FSL_LAW
	select SYS_CACHE_SHIFT_5
	select SYS_FSL_ERRATUM_A004477
	select SYS_FSL_ERRATUM_A004508
	select SYS_FSL_ERRATUM_A005125
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_ERRATUM_ESDHC_A001
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_2
	select SYS_PPC_E500_USE_DEBUG_TLB
	select FSL_ELBC
	imply CMD_EEPROM
	imply CMD_NAND
	imply CMD_REGINFO
	imply TIMESTAMP

config ARCH_P2041
	bool
	select BACKSIDE_L2_CACHE
	select E500MC
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_ERRATUM_A004510
	select SYS_FSL_ERRATUM_A004849
	select SYS_FSL_ERRATUM_A005275
	select SYS_FSL_ERRATUM_A006261
	select SYS_FSL_ERRATUM_CPU_A003999
	select SYS_FSL_ERRATUM_DDR_A003
	select SYS_FSL_ERRATUM_DDR_A003474
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_ERRATUM_I2C_A004447
	select SYS_FSL_ERRATUM_NMG_CPU_A011
	select SYS_FSL_ERRATUM_SRIO_A004034
	select SYS_FSL_ERRATUM_USB14
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS1
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select FSL_ELBC
	imply CMD_NAND

config ARCH_P3041
	bool
	select BACKSIDE_L2_CACHE
	select E500MC
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_DDR_VER_44
	select SYS_FSL_ERRATUM_A004510
	select SYS_FSL_ERRATUM_A004849
	select SYS_FSL_ERRATUM_A005275
	select SYS_FSL_ERRATUM_A005812
	select SYS_FSL_ERRATUM_A006261
	select SYS_FSL_ERRATUM_CPU_A003999
	select SYS_FSL_ERRATUM_DDR_A003
	select SYS_FSL_ERRATUM_DDR_A003474
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_ERRATUM_I2C_A004447
	select SYS_FSL_ERRATUM_NMG_CPU_A011
	select SYS_FSL_ERRATUM_SRIO_A004034
	select SYS_FSL_ERRATUM_USB14
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS1
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select FSL_ELBC
	imply CMD_NAND
	imply CMD_SATA
	imply CMD_REGINFO
	imply FSL_SATA

config ARCH_P4080
	bool
	select BACKSIDE_L2_CACHE
	select E500MC
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_DDR_VER_44
	select SYS_FSL_ERRATUM_A004510
	select SYS_FSL_ERRATUM_A004580
	select SYS_FSL_ERRATUM_A004849
	select SYS_FSL_ERRATUM_A005812
	select SYS_FSL_ERRATUM_A007075
	select SYS_FSL_ERRATUM_CPC_A002
	select SYS_FSL_ERRATUM_CPC_A003
	select SYS_FSL_ERRATUM_CPU_A003999
	select SYS_FSL_ERRATUM_DDR_A003
	select SYS_FSL_ERRATUM_DDR_A003474
	select SYS_FSL_ERRATUM_ELBC_A001
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_ERRATUM_ESDHC13
	select SYS_FSL_ERRATUM_ESDHC135
	select SYS_FSL_ERRATUM_I2C_A004447
	select SYS_FSL_ERRATUM_NMG_CPU_A011
	select SYS_FSL_ERRATUM_SRIO_A004034
	select SYS_P4080_ERRATUM_CPU22
	select SYS_P4080_ERRATUM_PCIE_A003
	select SYS_P4080_ERRATUM_SERDES8
	select SYS_P4080_ERRATUM_SERDES9
	select SYS_P4080_ERRATUM_SERDES_A001
	select SYS_P4080_ERRATUM_SERDES_A005
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS1
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select FSL_ELBC
	imply CMD_SATA
	imply CMD_REGINFO
	imply SATA_SIL

config ARCH_P5040
	bool
	select BACKSIDE_L2_CACHE
	select E500MC
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_DDR_VER_44
	select SYS_FSL_ERRATUM_A004510
	select SYS_FSL_ERRATUM_A004699
	select SYS_FSL_ERRATUM_A005275
	select SYS_FSL_ERRATUM_A005812
	select SYS_FSL_ERRATUM_A006261
	select SYS_FSL_ERRATUM_DDR_A003
	select SYS_FSL_ERRATUM_DDR_A003474
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_ERRATUM_USB14
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS1
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select SYS_PPC64
	select FSL_ELBC
	imply CMD_SATA
	imply CMD_REGINFO
	imply FSL_SATA

config ARCH_QEMU_E500
	bool
	select SYS_CACHE_SHIFT_5

config ARCH_T1024
	bool
	select BACKSIDE_L2_CACHE
	select E500MC
	select E5500
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_DDR_VER_50
	select SYS_FSL_ERRATUM_A008378
	select SYS_FSL_ERRATUM_A008109
	select SYS_FSL_ERRATUM_A009663
	select SYS_FSL_ERRATUM_A009942
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_DDR4
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS2
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_5
	select FSL_IFC
	imply CMD_EEPROM
	imply CMD_NAND
	imply CMD_MTDPARTS
	imply CMD_REGINFO

config ARCH_T1040
	bool
	select BACKSIDE_L2_CACHE
	select E500MC
	select E5500
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_DDR_VER_50
	select SYS_FSL_ERRATUM_A008044
	select SYS_FSL_ERRATUM_A008378
	select SYS_FSL_ERRATUM_A008109
	select SYS_FSL_ERRATUM_A009663
	select SYS_FSL_ERRATUM_A009942
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_DDR4
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS2
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_5
	select FSL_IFC
	imply CMD_MTDPARTS
	imply CMD_NAND
	imply CMD_REGINFO

config ARCH_T1042
	bool
	select BACKSIDE_L2_CACHE
	select E500MC
	select E5500
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_DDR_VER_50
	select SYS_FSL_ERRATUM_A008044
	select SYS_FSL_ERRATUM_A008378
	select SYS_FSL_ERRATUM_A008109
	select SYS_FSL_ERRATUM_A009663
	select SYS_FSL_ERRATUM_A009942
	select SYS_FSL_ERRATUM_ESDHC111
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_DDR4
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS2
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_5
	select FSL_IFC
	imply CMD_MTDPARTS
	imply CMD_NAND
	imply CMD_REGINFO

config ARCH_T2080
	bool
	select E500MC
	select E6500
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_DDR_VER_47
	select SYS_FSL_ERRATUM_A006379
	select SYS_FSL_ERRATUM_A006593
	select SYS_FSL_ERRATUM_A007186 if CHAIN_OF_TRUST
	select SYS_FSL_ERRATUM_A007212
	select SYS_FSL_ERRATUM_A007815
	select SYS_FSL_ERRATUM_A007907
	select SYS_FSL_ERRATUM_A008109
	select SYS_FSL_ERRATUM_A009942
	select SYS_FSL_ERRATUM_ESDHC111
	select FSL_PCIE_RESET
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS2
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select SYS_PPC64
	select FSL_IFC
	imply CMD_SATA
	imply CMD_NAND
	imply CMD_REGINFO
	imply FSL_SATA
	imply ID_EEPROM

config ARCH_T4240
	bool
	select E500MC
	select E6500
	select FSL_LAW
	select SYS_CACHE_SHIFT_6
	select SYS_FSL_DDR_VER_47
	select SYS_FSL_ERRATUM_A004468
	select SYS_FSL_ERRATUM_A005871
	select SYS_FSL_ERRATUM_A006261
	select SYS_FSL_ERRATUM_A006379
	select SYS_FSL_ERRATUM_A006593
	select SYS_FSL_ERRATUM_A007186 if CHAIN_OF_TRUST
	select SYS_FSL_ERRATUM_A007798
	select SYS_FSL_ERRATUM_A007815
	select SYS_FSL_ERRATUM_A007907
	select SYS_FSL_ERRATUM_A008109
	select SYS_FSL_ERRATUM_A009942
	select SYS_FSL_HAS_DDR3
	select SYS_FSL_HAS_SEC
	select SYS_FSL_QORIQ_CHASSIS2
	select SYS_FSL_SEC_BE
	select SYS_FSL_SEC_COMPAT_4
	select SYS_PPC64
	select FSL_IFC
	imply CMD_SATA
	imply CMD_NAND
	imply CMD_REGINFO
	imply FSL_SATA

config MPC85XX_HAVE_RESET_VECTOR
	bool "Indicate reset vector at CONFIG_RESET_VECTOR_ADDRESS - 0xffc"
	depends on MPC85xx

config BTB
	bool "toggle branch predition"

config BOOKE
	bool
	default y

config E500
	bool
	default y
	help
		Enable PowerPC E500 cores, including e500v1, e500v2, e500mc

config E500MC
	bool
	select BTB
	imply CMD_PCI
	help
		Enble PowerPC E500MC core

config E5500
	bool

config E6500
	bool
	select BTB
	help
		Enable PowerPC E6500 core

config FSL_LAW
	bool
	help
		Use Freescale common code for Local Access Window

config HETROGENOUS_CLUSTERS
	bool

config MAX_CPUS
	int "Maximum number of CPUs permitted for MPC85xx"
	default 12 if ARCH_T4240
	default 8 if ARCH_P4080
	default 4 if ARCH_B4860 || \
		     ARCH_P2041 || \
		     ARCH_P3041 || \
		     ARCH_P5040 || \
		     ARCH_T1040 || \
		     ARCH_T1042 || \
		     ARCH_T2080
	default 2 if ARCH_B4420 || \
		     ARCH_BSC9132 || \
		     ARCH_P1020 || \
		     ARCH_P1021 || \
		     ARCH_P1023 || \
		     ARCH_P1024 || \
		     ARCH_P1025 || \
		     ARCH_P2020 || \
		     ARCH_T1024
	default 1
	help
	  Set this number to the maximum number of possible CPUs in the SoC.
	  SoCs may have multiple clusters with each cluster may have multiple
	  ports. If some ports are reserved but higher ports are used for
	  cores, count the reserved ports. This will allocate enough memory
	  in spin table to properly handle all cores.

config SYS_CCSRBAR_DEFAULT
	hex "Default CCSRBAR address"
	default	0xff700000 if	ARCH_BSC9131	|| \
				ARCH_BSC9132	|| \
				ARCH_C29X	|| \
				ARCH_MPC8536	|| \
				ARCH_MPC8540	|| \
				ARCH_MPC8544	|| \
				ARCH_MPC8548	|| \
				ARCH_MPC8560	|| \
				ARCH_P1010	|| \
				ARCH_P1011	|| \
				ARCH_P1020	|| \
				ARCH_P1021	|| \
				ARCH_P1024	|| \
				ARCH_P1025	|| \
				ARCH_P2020
	default 0xff600000 if	ARCH_P1023
	default 0xfe000000 if	ARCH_B4420	|| \
				ARCH_B4860	|| \
				ARCH_P2041	|| \
				ARCH_P3041	|| \
				ARCH_P4080	|| \
				ARCH_P5040	|| \
				ARCH_T1024	|| \
				ARCH_T1040	|| \
				ARCH_T1042	|| \
				ARCH_T2080	|| \
				ARCH_T4240
	default 0xe0000000 if ARCH_QEMU_E500
	help
		Default value of CCSRBAR comes from power-on-reset. It
		is fixed on each SoC. Some SoCs can have different value
		if changed by pre-boot regime. The value here must match
		the current value in SoC. If not sure, do not change.

config A003399_NOR_WORKAROUND
	bool
	help
	  Enables a workaround for IFC erratum A003399. It is only required
	  during NOR boot.

config A008044_WORKAROUND
	bool
	help
	  Enables a workaround for T1040/T1042 erratum A008044. It is only
	  required during NAND boot and valid for Rev 1.0 SoC revision

config SYS_FSL_ERRATUM_A004468
	bool

config SYS_FSL_ERRATUM_A004477
	bool

config SYS_FSL_ERRATUM_A004508
	bool

config SYS_FSL_ERRATUM_A004580
	bool

config SYS_FSL_ERRATUM_A004699
	bool

config SYS_FSL_ERRATUM_A004849
	bool

config SYS_FSL_ERRATUM_A004510
	bool

config SYS_FSL_ERRATUM_A004510_SVR_REV
	hex
	depends on SYS_FSL_ERRATUM_A004510
	default 0x20 if ARCH_P4080
	default 0x10

config SYS_FSL_ERRATUM_A004510_SVR_REV2
	hex
	depends on (SYS_FSL_ERRATUM_A004510 && (ARCH_P2041 || ARCH_P3041))
	default 0x11

config SYS_FSL_ERRATUM_A005125
	bool

config SYS_FSL_ERRATUM_A005434
	bool

config SYS_FSL_ERRATUM_A005812
	bool

config SYS_FSL_ERRATUM_A005871
	bool

config SYS_FSL_ERRATUM_A005275
	bool

config SYS_FSL_ERRATUM_A006261
	bool

config SYS_FSL_ERRATUM_A006379
	bool

config SYS_FSL_ERRATUM_A006384
	bool

config SYS_FSL_ERRATUM_A006475
	bool

config SYS_FSL_ERRATUM_A006593
	bool

config SYS_FSL_ERRATUM_A007075
	bool

config SYS_FSL_ERRATUM_A007186
	bool

config SYS_FSL_ERRATUM_A007212
	bool

config SYS_FSL_ERRATUM_A007815
	bool

config SYS_FSL_ERRATUM_A007798
	bool

config SYS_FSL_ERRATUM_A007907
	bool

config SYS_FSL_ERRATUM_A008044
	bool
	select A008044_WORKAROUND if MTD_RAW_NAND

config SYS_FSL_ERRATUM_CPC_A002
	bool

config SYS_FSL_ERRATUM_CPC_A003
	bool

config SYS_FSL_ERRATUM_CPU_A003999
	bool

config SYS_FSL_ERRATUM_ELBC_A001
	bool

config SYS_FSL_ERRATUM_I2C_A004447
	bool

config SYS_FSL_A004447_SVR_REV
	hex
	depends on SYS_FSL_ERRATUM_I2C_A004447
	default 0x00 if ARCH_MPC8548
	default 0x10 if ARCH_P1010
	default 0x11 if ARCH_P1023 || ARCH_P2041 || ARCH_BSC9132
	default 0x20 if ARCH_P3041 || ARCH_P4080

config SYS_FSL_ERRATUM_IFC_A002769
	bool

config SYS_FSL_ERRATUM_IFC_A003399
	bool

config SYS_FSL_ERRATUM_NMG_CPU_A011
	bool

config SYS_FSL_ERRATUM_NMG_ETSEC129
	bool

config SYS_FSL_ERRATUM_NMG_LBC103
	bool

config SYS_FSL_ERRATUM_P1010_A003549
	bool

config SYS_FSL_ERRATUM_SATA_A001
	bool

config SYS_FSL_ERRATUM_SEC_A003571
	bool

config SYS_FSL_ERRATUM_SRIO_A004034
	bool

config SYS_FSL_ERRATUM_USB14
	bool

config SYS_HAS_SERDES
	bool

config SYS_P4080_ERRATUM_CPU22
	bool

config SYS_P4080_ERRATUM_PCIE_A003
	bool

config SYS_P4080_ERRATUM_SERDES8
	bool

config SYS_P4080_ERRATUM_SERDES9
	bool

config SYS_P4080_ERRATUM_SERDES_A001
	bool

config SYS_P4080_ERRATUM_SERDES_A005
	bool

config FSL_PCIE_DISABLE_ASPM
	bool

config FSL_PCIE_RESET
	bool

config SYS_FSL_QORIQ_CHASSIS1
	bool

config SYS_FSL_QORIQ_CHASSIS2
	bool

config SYS_FSL_NUM_LAWS
	int "Number of local access windows"
	depends on FSL_LAW
	default 32 if	ARCH_B4420	|| \
			ARCH_B4860	|| \
			ARCH_P2041	|| \
			ARCH_P3041	|| \
			ARCH_P4080	|| \
			ARCH_P5040	|| \
			ARCH_T2080	|| \
			ARCH_T4240
	default 16 if	ARCH_T1024	|| \
			ARCH_T1040	|| \
			ARCH_T1042
	default 12 if	ARCH_BSC9131	|| \
			ARCH_BSC9132	|| \
			ARCH_C29X	|| \
			ARCH_MPC8536	|| \
			ARCH_P1010	|| \
			ARCH_P1011	|| \
			ARCH_P1020	|| \
			ARCH_P1021	|| \
			ARCH_P1023	|| \
			ARCH_P1024	|| \
			ARCH_P1025	|| \
			ARCH_P2020
	default 10 if	ARCH_MPC8544	|| \
			ARCH_MPC8548
	default 8 if	ARCH_MPC8540	|| \
			ARCH_MPC8560
	help
		Number of local access windows. This is fixed per SoC.
		If not sure, do not change.

config SYS_FSL_THREADS_PER_CORE
	int
	default 2 if E6500
	default 1

config SYS_NUM_TLBCAMS
	int "Number of TLB CAM entries"
	default 64 if E500MC
	default 16
	help
		Number of TLB CAM entries for Book-E chips. 64 for E500MC,
		16 for other E500 SoCs.

if HETROGENOUS_CLUSTERS

config SYS_MAPLE
	def_bool y

config SYS_CPRI
	def_bool y

config PPC_CLUSTER_START
	int
	default 0

config DSP_CLUSTER_START
	int
	default 1

config SYS_CPRI_CLK
	int
	default 3

config SYS_ULB_CLK
	int
	default 4

config SYS_ETVPE_CLK
	int
	default 1
endif

config BACKSIDE_L2_CACHE
	bool

config SYS_PPC64
	bool

config SYS_PPC_E500_USE_DEBUG_TLB
	bool

config FSL_ELBC
	bool

config SYS_PPC_E500_DEBUG_TLB
	int "Temporary TLB entry for external debugger"
	depends on SYS_PPC_E500_USE_DEBUG_TLB
	default 0 if	ARCH_MPC8544 || ARCH_MPC8548
	default 1 if	ARCH_MPC8536
	default 2 if	ARCH_P1011	|| \
			ARCH_P1020	|| \
			ARCH_P1021	|| \
			ARCH_P1024	|| \
			ARCH_P1025	|| \
			ARCH_P2020
	default 3 if	ARCH_P1010	|| \
			ARCH_BSC9132	|| \
			ARCH_C29X
	help
		Select a temporary TLB entry to be used during boot to work
                around limitations in e500v1 and e500v2 external debugger
                support. This reduces the portions of the boot code where
                breakpoints and single stepping do not work. The value of this
                symbol should be set to the TLB1 entry to be used for this
                purpose. If unsure, do not change.

config SYS_FSL_IFC_CLK_DIV
	int "Divider of platform clock"
	depends on FSL_IFC
	default 2 if	ARCH_B4420	|| \
			ARCH_B4860	|| \
			ARCH_T1024	|| \
			ARCH_T1040	|| \
			ARCH_T1042	|| \
			ARCH_T4240
	default 1
	help
		Defines divider of platform clock(clock input to
		IFC controller).

config SYS_FSL_LBC_CLK_DIV
	int "Divider of platform clock"
	depends on FSL_ELBC || ARCH_MPC8540 || \
		ARCH_MPC8548 || \
		ARCH_MPC8560

	default 2 if	ARCH_P2041	|| \
			ARCH_P3041	|| \
			ARCH_P4080	|| \
			ARCH_P5040
	default 1

	help
		Defines divider of platform clock(clock input to
		eLBC controller).

config ENABLE_36BIT_PHYS
	bool "Enable 36bit physical address space support"

config SYS_MPC85XX_NO_RESETVEC
	bool "Discard resetvec section and move bootpg section up"
	depends on MPC85xx
	help
	  If this variable is specified, the section .resetvec is not kept and
	  the section .bootpg is placed in the previous 4k of the .text section.

config SPL_SYS_MPC85XX_NO_RESETVEC
	bool "Discard resetvec section and move bootpg section up, in SPL"
	depends on MPC85xx && SPL
	help
	  If this variable is specified, the section .resetvec is not kept and
	  the section .bootpg is placed in the previous 4k of the .text section,
	  of the SPL portion of the binary.

config TPL_SYS_MPC85XX_NO_RESETVEC
	bool "Discard resetvec section and move bootpg section up, in TPL"
	depends on MPC85xx && TPL
	help
	  If this variable is specified, the section .resetvec is not kept and
	  the section .bootpg is placed in the previous 4k of the .text section,
	  of the SPL portion of the binary.

config FSL_VIA
	bool

source "board/emulation/qemu-ppce500/Kconfig"
source "board/freescale/corenet_ds/Kconfig"
source "board/freescale/mpc8548cds/Kconfig"
source "board/freescale/p1010rdb/Kconfig"
source "board/freescale/p1_p2_rdb_pc/Kconfig"
source "board/freescale/p2041rdb/Kconfig"
source "board/freescale/t102xrdb/Kconfig"
source "board/freescale/t104xrdb/Kconfig"
source "board/freescale/t208xqds/Kconfig"
source "board/freescale/t208xrdb/Kconfig"
source "board/freescale/t4rdb/Kconfig"
source "board/socrates/Kconfig"

endmenu
