What is the difference between ARCH_XXX MACH_XXX TARGET_XXX macros

Hello, I am trying to port u-boot to a new board,
There are several macros, how to use them properly?
CONFIG_ARCH_XXX CONFIG_MACH_XXX CONFIG_TARGET_XXX
for example, my board has:
SoC: LS2K1000 ISA: MIPS32r1, MIPS32r2, MIPS64r1, MIPS64r2 Board: UselessRouter or HelloRouter, TBD NIC: 4 1000Mbps NIC(No built in switcher)
thanks very much!
Regards, Tim

On Wed, Dec 04, 2019 at 05:49:09PM +0800, Tim Williams wrote:
Hello, I am trying to port u-boot to a new board,
There are several macros, how to use them properly?
CONFIG_ARCH_XXX CONFIG_MACH_XXX CONFIG_TARGET_XXX
for example, my board has:
SoC: LS2K1000 ISA: MIPS32r1, MIPS32r2, MIPS64r1, MIPS64r2 Board: UselessRouter or HelloRouter, TBD NIC: 4 1000Mbps NIC(No built in switcher)
Code that is generic to LS2K1000 but not your boards should use CONFIG_SOC_xxx and everything board-specific should be CONFIG_TARGET_xxx. CONFIG_ARCH_xxx / CONFIG_MACH_xxx should get used likely sparingly, but we are indeed inconsistent and could use CONFIG_SOC_xxx in some of those cases.
participants (2)
-
Tim Williams
-
Tom Rini