On 31.03.2021 19:01, Alexandre Belloni wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > > On 31/03/2021 13:59:06+0300, Claudiu Beznea wrote: >> From: Eugen Hristev <eugen.hristev@xxxxxxxxxxxxx> >> >> Introduce new family of SoCs, sama7, and first SoC, sama7g5. >> >> Signed-off-by: Eugen Hristev <eugen.hristev@xxxxxxxxxxxxx> >> Signed-off-by: Claudiu Beznea <claudiu.beznea@xxxxxxxxxxxxx> >> --- >> arch/arm/mach-at91/Makefile | 1 + >> arch/arm/mach-at91/sama7.c | 48 +++++++++++++++++++++++++++++++++++++ >> 2 files changed, 49 insertions(+) >> create mode 100644 arch/arm/mach-at91/sama7.c >> >> diff --git a/arch/arm/mach-at91/Makefile b/arch/arm/mach-at91/Makefile >> index f565490f1b70..6cc6624cddac 100644 >> --- a/arch/arm/mach-at91/Makefile >> +++ b/arch/arm/mach-at91/Makefile >> @@ -9,6 +9,7 @@ obj-$(CONFIG_SOC_AT91SAM9) += at91sam9.o >> obj-$(CONFIG_SOC_SAM9X60) += sam9x60.o >> obj-$(CONFIG_SOC_SAMA5) += sama5.o >> obj-$(CONFIG_SOC_SAMV7) += samv7.o >> +obj-$(CONFIG_SOC_SAMA7) += sama7.o >> >> # Power Management >> obj-$(CONFIG_ATMEL_PM) += pm.o pm_suspend.o >> diff --git a/arch/arm/mach-at91/sama7.c b/arch/arm/mach-at91/sama7.c >> new file mode 100644 >> index 000000000000..e04cadb569ad >> --- /dev/null >> +++ b/arch/arm/mach-at91/sama7.c >> @@ -0,0 +1,48 @@ >> +// SPDX-License-Identifier: GPL-2.0-or-later >> +/* >> + * Setup code for SAMA7 >> + * >> + * Copyright (C) 2021 Microchip Technology, Inc. and its subsidiaries >> + * >> + */ >> + >> +#include <linux/of.h> >> +#include <linux/of_platform.h> >> + >> +#include <asm/mach/arch.h> >> +#include <asm/system_misc.h> >> + >> +#include "generic.h" >> + >> +static void __init sama7_common_init(void) >> +{ >> + of_platform_default_populate(NULL, NULL, NULL); > > Is this necessary? This is left as a workaround for the old SoCs using > pinctrl-at91. I guess this will be using pio4 so this has to be removed. OK, I'll have a look. BTW, SAMA5D2 which is also using PIO4 calls of_platform_default_populate(NULL, NULL, NULL); > >> +} >> + >> +static void __init sama7_dt_device_init(void) >> +{ >> + sama7_common_init(); >> +} >> + >> +static const char *const sama7_dt_board_compat[] __initconst = { >> + "microchip,sama7", >> + NULL >> +}; >> + >> +DT_MACHINE_START(sama7_dt, "Microchip SAMA7") >> + /* Maintainer: Microchip */ >> + .init_machine = sama7_dt_device_init, >> + .dt_compat = sama7_dt_board_compat, >> +MACHINE_END >> + >> +static const char *const sama7g5_dt_board_compat[] __initconst = { >> + "microchip,sama7g5", >> + NULL >> +}; >> + >> +DT_MACHINE_START(sama7g5_dt, "Microchip SAMA7G5") >> + /* Maintainer: Microchip */ >> + .init_machine = sama7_dt_device_init, >> + .dt_compat = sama7g5_dt_board_compat, >> +MACHINE_END >> + >> -- >> 2.25.1 >> > > -- > Alexandre Belloni, co-owner and COO, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com >