From b463010be067ba4b8ef9b7b80919f592a0f83bfb Mon Sep 17 00:00:00 2001 From: Michael Walle Date: Fri, 8 Jan 2021 00:08:58 +0100 Subject: [PATCH] board: sl28: add network variant 2 support Although this variant has two external network ports, they are not (yet) supported by the bootloader because they are connected via an internal network switch. Otherwise its the same as the other variants. Signed-off-by: Michael Walle Reviewed-by: Priyanka Jain --- arch/arm/dts/Makefile | 1 + .../dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi | 33 +++++++++++++++++-- .../fsl-ls1028a-kontron-sl28-var2-u-boot.dtsi | 2 ++ .../arm/dts/fsl-ls1028a-kontron-sl28-var2.dts | 25 ++++++++++++++ board/kontron/sl28/spl.c | 2 ++ 5 files changed, 60 insertions(+), 3 deletions(-) create mode 100644 arch/arm/dts/fsl-ls1028a-kontron-sl28-var2-u-boot.dtsi create mode 100644 arch/arm/dts/fsl-ls1028a-kontron-sl28-var2.dts diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 882ea0274b6..918af8c0931 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -439,6 +439,7 @@ dtb-$(CONFIG_FSL_LSCH2) += fsl-ls1043a-qds-duart.dtb \ fsl-ls1012a-frwy.dtb dtb-$(CONFIG_TARGET_SL28) += fsl-ls1028a-kontron-sl28.dtb \ fsl-ls1028a-kontron-sl28-var1.dtb \ + fsl-ls1028a-kontron-sl28-var2.dtb \ fsl-ls1028a-kontron-sl28-var3.dtb \ fsl-ls1028a-kontron-sl28-var4.dtb \ diff --git a/arch/arm/dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi b/arch/arm/dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi index 585753c14d1..240178ab4e7 100644 --- a/arch/arm/dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi +++ b/arch/arm/dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi @@ -61,6 +61,17 @@ }; fdt-3 { + description = "fsl-ls1028a-kontron-sl28-var2"; + type = "flat_dt"; + arch = "arm"; + compression = "none"; + + blob { + filename = "arch/arm/dts/fsl-ls1028a-kontron-sl28-var2.dtb"; + }; + }; + + fdt-4 { description = "fsl-ls1028a-kontron-sl28-var3"; type = "flat_dt"; arch = "arm"; @@ -71,7 +82,7 @@ }; }; - fdt-4 { + fdt-5 { description = "fsl-ls1028a-kontron-sl28-var4"; type = "flat_dt"; arch = "arm"; @@ -99,17 +110,24 @@ }; conf-3 { - description = "fsl-ls1028a-kontron-sl28-var3"; + description = "fsl-ls1028a-kontron-sl28-var2"; firmware = "uboot"; fdt = "fdt-3"; }; conf-4 { - description = "fsl-ls1028a-kontron-sl28-var4"; + description = "fsl-ls1028a-kontron-sl28-var3"; firmware = "uboot"; loadables = "uboot"; fdt = "fdt-4"; }; + + conf-5 { + description = "fsl-ls1028a-kontron-sl28-var4"; + firmware = "uboot"; + loadables = "uboot"; + fdt = "fdt-5"; + }; }; }; }; @@ -154,6 +172,11 @@ firmware = "bl31"; loadables = "uboot"; }; + + conf-5 { + firmware = "bl31"; + loadables = "uboot"; + }; }; }; }; @@ -194,6 +217,10 @@ conf-4 { loadables = "uboot", "bl32"; }; + + conf-5 { + loadables = "uboot", "bl32"; + }; }; }; }; diff --git a/arch/arm/dts/fsl-ls1028a-kontron-sl28-var2-u-boot.dtsi b/arch/arm/dts/fsl-ls1028a-kontron-sl28-var2-u-boot.dtsi new file mode 100644 index 00000000000..79b771e0746 --- /dev/null +++ b/arch/arm/dts/fsl-ls1028a-kontron-sl28-var2-u-boot.dtsi @@ -0,0 +1,2 @@ +// SPDX-License-Identifier: GPL-2.0+ +#include "fsl-ls1028a-kontron-sl28-u-boot.dtsi" diff --git a/arch/arm/dts/fsl-ls1028a-kontron-sl28-var2.dts b/arch/arm/dts/fsl-ls1028a-kontron-sl28-var2.dts new file mode 100644 index 00000000000..1ea1265bcf5 --- /dev/null +++ b/arch/arm/dts/fsl-ls1028a-kontron-sl28-var2.dts @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Device Tree file for the Kontron SMARC-sAL28 board. + * + * This is for the network variant 2 which has no ethernet support in the + * bootloader. + * + * Copyright (C) 2020 Michael Walle + * + */ + +/dts-v1/; +#include "fsl-ls1028a-kontron-sl28.dts" + +/ { + model = "Kontron SMARC-sAL28 (TSN-on-module)"; + compatible = "kontron,sl28-var2", "kontron,sl28", "fsl,ls1028a"; +}; + +&enetc0 { + status = "disabled"; + /delete-property/ phy-handle; +}; + +/delete-node/ &phy0; diff --git a/board/kontron/sl28/spl.c b/board/kontron/sl28/spl.c index 92f8342c45f..0ef67e2886a 100644 --- a/board/kontron/sl28/spl.c +++ b/board/kontron/sl28/spl.c @@ -19,6 +19,8 @@ int board_fit_config_name_match(const char *name) switch (variant) { case 1: return strcmp(name, "fsl-ls1028a-kontron-sl28-var1"); + case 2: + return strcmp(name, "fsl-ls1028a-kontron-sl28-var2"); case 3: return strcmp(name, "fsl-ls1028a-kontron-sl28-var3"); case 4: -- 2.39.5