All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v4 0/2] new board LS1028ARDB
@ 2022-08-16 17:55 Francois Perrad
  2022-08-16 17:55 ` [Buildroot] [PATCH v4 1/2] boot/arm-trusted-firmware: allow to generate BL2 from RCW Francois Perrad
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Francois Perrad @ 2022-08-16 17:55 UTC (permalink / raw)
  To: buildroot

This serie introduces a new board.

The first commit tweak an existing module,
and the second commit introduces the new board.

v3 --> v4
- remove qoriq-cadence-dp-firmware part
- use imx_v8_defconfig from LSDK instead of arm64 default

v2 --> v3
- restore my SoB
- add Reviewed-by Giulio Benetti

v1 --> v2
- add missing udev rules
- improved commit messages
- tweak readme.txt
  - of=/dev/sdX
- minor cleanup in defconfig
  - BR2_TOOLCHAIN_BUILDROOT_GLIBC becomes BR2_TOOLCHAIN_BUILDROOT_WCHAR
  - BR2_PACKAGE_BUSYBOX_SHOW_OTHERS removed

Francois Perrad (2):
  boot/arm-trusted-firmware: allow to generate BL2 from RCW
  board/freescale/ls1028ardb: new board

 DEVELOPERS                                    |  2 +
 board/freescale/ls1028ardb/genimage.cfg       | 23 +++++++
 board/freescale/ls1028ardb/readme.txt         | 60 +++++++++++++++++++
 .../boot/extlinux/extlinux.conf               |  4 ++
 .../rules.d/73-fsl-enetc-networking.rules     | 16 +++++
 boot/arm-trusted-firmware/Config.in           |  6 ++
 .../arm-trusted-firmware.mk                   |  6 ++
 configs/ls1028ardb_defconfig                  | 57 ++++++++++++++++++
 8 files changed, 174 insertions(+)
 create mode 100644 board/freescale/ls1028ardb/genimage.cfg
 create mode 100644 board/freescale/ls1028ardb/readme.txt
 create mode 100644 board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf
 create mode 100644 board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules
 create mode 100644 configs/ls1028ardb_defconfig

-- 
2.34.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH v4 1/2] boot/arm-trusted-firmware: allow to generate BL2 from RCW
  2022-08-16 17:55 [Buildroot] [PATCH v4 0/2] new board LS1028ARDB Francois Perrad
@ 2022-08-16 17:55 ` Francois Perrad
  2022-08-23 21:21   ` Thomas Petazzoni via buildroot
  2022-08-16 17:55 ` [Buildroot] [PATCH v4 2/2] board/freescale/ls1028ardb: new board Francois Perrad
  2022-08-18 21:50 ` [Buildroot] [PATCH v4 0/2] new board LS1028ARDB Giulio Benetti
  2 siblings, 1 reply; 7+ messages in thread
From: Francois Perrad @ 2022-08-16 17:55 UTC (permalink / raw)
  To: buildroot; +Cc: Giulio Benetti

This patch adds option BR2_TARGETARM_TRUSTED_FIRMWARE_RCW that allows
TF-A to encapsulate a pre-loader RCW (Reset Configuration Word) file
into BL2.

Upcoming NXP QorIQ family board needs this option.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
---
 boot/arm-trusted-firmware/Config.in               | 6 ++++++
 boot/arm-trusted-firmware/arm-trusted-firmware.mk | 6 ++++++
 2 files changed, 12 insertions(+)

diff --git a/boot/arm-trusted-firmware/Config.in b/boot/arm-trusted-firmware/Config.in
index 100ac8348..2a59a325d 100644
--- a/boot/arm-trusted-firmware/Config.in
+++ b/boot/arm-trusted-firmware/Config.in
@@ -90,6 +90,12 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP
 	  platforms were ATF encapsulates the second stage bootloader
 	  (such as U-Boot).
 
+config BR2_TARGET_ARM_TRUSTED_FIRMWARE_RCW
+	bool "Include RCW"
+	select BR2_PACKAGE_HOST_QORIQ_RCW
+	help
+	  Include the RCW in BL2.
+
 config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31
 	bool "Build BL31 image"
 	help
diff --git a/boot/arm-trusted-firmware/arm-trusted-firmware.mk b/boot/arm-trusted-firmware/arm-trusted-firmware.mk
index 7c4e7edb0..246c0699b 100644
--- a/boot/arm-trusted-firmware/arm-trusted-firmware.mk
+++ b/boot/arm-trusted-firmware/arm-trusted-firmware.mk
@@ -144,6 +144,12 @@ define ARM_TRUSTED_FIRMWARE_BUILD_FIPTOOL
 endef
 endif
 
+ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_RCW),y)
+ARM_TRUSTED_FIRMWARE_DEPENDENCIES += host-qoriq-rcw
+ARM_TRUSTED_FIRMWARE_MAKE_TARGETS += pbl
+ARM_TRUSTED_FIRMWARE_MAKE_OPTS += RCW=$(BINARIES_DIR)/PBL.bin
+endif
+
 ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31),y)
 ARM_TRUSTED_FIRMWARE_MAKE_TARGETS += bl31
 endif
-- 
2.34.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH v4 2/2] board/freescale/ls1028ardb: new board
  2022-08-16 17:55 [Buildroot] [PATCH v4 0/2] new board LS1028ARDB Francois Perrad
  2022-08-16 17:55 ` [Buildroot] [PATCH v4 1/2] boot/arm-trusted-firmware: allow to generate BL2 from RCW Francois Perrad
@ 2022-08-16 17:55 ` Francois Perrad
  2022-08-21 17:58   ` Giulio Benetti
  2022-08-23 21:22   ` Thomas Petazzoni via buildroot
  2022-08-18 21:50 ` [Buildroot] [PATCH v4 0/2] new board LS1028ARDB Giulio Benetti
  2 siblings, 2 replies; 7+ messages in thread
From: Francois Perrad @ 2022-08-16 17:55 UTC (permalink / raw)
  To: buildroot; +Cc: Giulio Benetti

This is the reference design board for the NXP LS1028a SoC.

see https://www.nxp.com/design/qoriq-developer-resources/layerscape-ls1028a-reference-design-board:LS1028ARDB

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
---
 DEVELOPERS                                    |  2 +
 board/freescale/ls1028ardb/genimage.cfg       | 23 +++++++
 board/freescale/ls1028ardb/readme.txt         | 60 +++++++++++++++++++
 .../boot/extlinux/extlinux.conf               |  4 ++
 .../rules.d/73-fsl-enetc-networking.rules     | 16 +++++
 configs/ls1028ardb_defconfig                  | 57 ++++++++++++++++++
 6 files changed, 162 insertions(+)
 create mode 100644 board/freescale/ls1028ardb/genimage.cfg
 create mode 100644 board/freescale/ls1028ardb/readme.txt
 create mode 100644 board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf
 create mode 100644 board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules
 create mode 100644 configs/ls1028ardb_defconfig

diff --git a/DEVELOPERS b/DEVELOPERS
index d2bd0d809..a034471fa 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1018,9 +1018,11 @@ N:	Francisco Gonzalez <gzmorell@gmail.com>
 F:	package/ser2net/
 
 N:	Francois Perrad <francois.perrad@gadz.org>
+F:	board/freescale/ls1028ardb/
 F:	board/olimex/a20_olinuxino
 F:	board/olimex/imx233_olinuxino/
 F:	board/olimex/stmp1_olinuxino/
+F:	configs/ls1028ardb_defconfig
 F:	configs/olimex_a20_olinuxino_*
 F:	configs/olimex_imx233_olinuxino_defconfig
 F:	configs/olimex_stmp157_olinuxino_lime_defconfig
diff --git a/board/freescale/ls1028ardb/genimage.cfg b/board/freescale/ls1028ardb/genimage.cfg
new file mode 100644
index 000000000..3efef0bff
--- /dev/null
+++ b/board/freescale/ls1028ardb/genimage.cfg
@@ -0,0 +1,23 @@
+image sdcard.img {
+	hdimage {
+	}
+
+	partition fsbl {
+		offset = 4K
+		in-partition-table = "no"
+		image = "bl2_sd.pbl"
+	}
+
+	partition ssbl {
+		offset = 1M
+		in-partition-table = "no"
+		image = "fip.bin"
+	}
+
+	partition rootfs {
+		offset = 8M
+		partition-type = 0x83
+		bootable = "true"
+		image = "rootfs.ext4"
+	}
+}
diff --git a/board/freescale/ls1028ardb/readme.txt b/board/freescale/ls1028ardb/readme.txt
new file mode 100644
index 000000000..93396a419
--- /dev/null
+++ b/board/freescale/ls1028ardb/readme.txt
@@ -0,0 +1,60 @@
+**************
+NXP LS1028ARDB
+**************
+
+This file documents the Buildroot support for the LS1028A Reference Design Board.
+
+for more details about the board and the QorIQ Layerscape SoC, see the following pages:
+  - https://www.nxp.com/design/qoriq-developer-resources/layerscape-ls1028a-reference-design-board:LS1028ARDB
+  - https://www.nxp.com/LS1028A
+
+Build
+=====
+
+First, configure Buildroot for the LS1028ARDB board:
+
+  make ls1028ardb_defconfig
+
+Build all components:
+
+  make
+
+You will find in output/images/ the following files:
+  - bl2_sd.pbl
+  - fip.bin
+  - fsl-ls1028a-rdb.dtb
+  - Image
+  - PBL.bin
+  - rootfs.ext2
+  - rootfs.ext4 -> rootfs.ext2
+  - sdcard.img
+  - u-boot.bin
+
+Create a bootable SD card
+=========================
+
+To determine the device associated to the SD card have a look in the
+/proc/partitions file:
+
+  cat /proc/partitions
+
+Buildroot prepares a bootable "sdcard.img" image in the output/images/
+directory, ready to be dumped on a SD card. Launch the following
+command as root:
+
+  dd if=output/images/sdcard.img of=/dev/sdX
+
+*** WARNING! This will destroy all the card content. Use with care! ***
+
+For details about the medium image layout, see the definition in
+board/freescale/ls1028ardb/genimage.cfg.
+
+Boot the LS1028ARDB board
+=========================
+
+To boot your newly created system:
+- insert the SD card in the SD slot of the board;
+- Configure the switches SW2[1:4] = 1000 (select SD Card boot option)
+- put a DB9F cable into the UART1 Port and connect using a terminal
+  emulator at 115200 bps, 8n1;
+- power on the board.
diff --git a/board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf b/board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf
new file mode 100644
index 000000000..c08ddde10
--- /dev/null
+++ b/board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf
@@ -0,0 +1,4 @@
+label ls1028ardb-buildroot
+  kernel /boot/Image
+  devicetree /boot/fsl-ls1028a-rdb.dtb
+  append root=/dev/mmcblk0p1 rootwait
diff --git a/board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules b/board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules
new file mode 100644
index 000000000..19f41634b
--- /dev/null
+++ b/board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules
@@ -0,0 +1,16 @@
+# ENETC rules
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.0", DRIVERS=="fsl_enetc", NAME:="eno0"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.1", DRIVERS=="fsl_enetc", NAME:="eno1"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.2", DRIVERS=="fsl_enetc", NAME:="eno2"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.6", DRIVERS=="fsl_enetc", NAME:="eno3"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.0", DRIVERS=="fsl_enetc_vf", NAME:="eno0vf0"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.1", DRIVERS=="fsl_enetc_vf", NAME:="eno0vf1"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.2", DRIVERS=="fsl_enetc_vf", NAME:="eno1vf0"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.3", DRIVERS=="fsl_enetc_vf", NAME:="eno1vf1"
+# LS1028 switch rules
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p0", NAME="swp0"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p1", NAME="swp1"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p2", NAME="swp2"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p3", NAME="swp3"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p4", NAME="swp4"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p5", NAME="swp5"
diff --git a/configs/ls1028ardb_defconfig b/configs/ls1028ardb_defconfig
new file mode 100644
index 000000000..605e41d70
--- /dev/null
+++ b/configs/ls1028ardb_defconfig
@@ -0,0 +1,57 @@
+# Architecture
+BR2_aarch64=y
+BR2_cortex_a72=y
+
+# Toolchain
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+# wchar required by eudev
+BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
+
+# System configuration
+BR2_TARGET_GENERIC_HOSTNAME="ls1028a"
+BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
+BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
+BR2_ROOTFS_OVERLAY="board/freescale/ls1028ardb/rootfs_overlay"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/freescale/ls1028ardb/genimage.cfg"
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/qoriq/qoriq-components/linux"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="LSDK-21.08"
+BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm64/configs/lsdk.config"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/fsl-ls1028a-rdb"
+BR2_LINUX_KERNEL_INSTALL_TARGET=y
+
+# Filesystem
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
+# BR2_TARGET_ROOTFS_TAR is not set
+
+# Bootloaders
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://source.codeaurora.org/external/qoriq/qoriq-components/atf"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="LSDK-21.08"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="ls1028ardb"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_RCW=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="BOOT_MODE=sd"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="fip.bin bl2_sd.pbl"
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_GIT=y
+BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/qoriq/qoriq-components/u-boot"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="LSDK-21.08"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="ls1028ardb_tfa"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
+
+# Host utilities
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_QORIQ_RCW_INTREE="ls1028ardb/R_SQPP_0x85bb/rcw_1300_sdboot.bin"
-- 
2.34.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [Buildroot] [PATCH v4 0/2] new board LS1028ARDB
  2022-08-16 17:55 [Buildroot] [PATCH v4 0/2] new board LS1028ARDB Francois Perrad
  2022-08-16 17:55 ` [Buildroot] [PATCH v4 1/2] boot/arm-trusted-firmware: allow to generate BL2 from RCW Francois Perrad
  2022-08-16 17:55 ` [Buildroot] [PATCH v4 2/2] board/freescale/ls1028ardb: new board Francois Perrad
@ 2022-08-18 21:50 ` Giulio Benetti
  2 siblings, 0 replies; 7+ messages in thread
From: Giulio Benetti @ 2022-08-18 21:50 UTC (permalink / raw)
  To: Francois Perrad, buildroot

Hi Francois,

remember to set as "Superseded" the v3 patchset in Patchwork:
https://patchwork.ozlabs.org/project/buildroot/list/

Thank you
Best regards
-- 
Giulio Benetti
Benetti Engineering sas

On 16/08/22 19:55, Francois Perrad wrote:
> This serie introduces a new board.
> 
> The first commit tweak an existing module,
> and the second commit introduces the new board.
> 
> v3 --> v4
> - remove qoriq-cadence-dp-firmware part
> - use imx_v8_defconfig from LSDK instead of arm64 default
> 
> v2 --> v3
> - restore my SoB
> - add Reviewed-by Giulio Benetti
> 
> v1 --> v2
> - add missing udev rules
> - improved commit messages
> - tweak readme.txt
>    - of=/dev/sdX
> - minor cleanup in defconfig
>    - BR2_TOOLCHAIN_BUILDROOT_GLIBC becomes BR2_TOOLCHAIN_BUILDROOT_WCHAR
>    - BR2_PACKAGE_BUSYBOX_SHOW_OTHERS removed
> 
> Francois Perrad (2):
>    boot/arm-trusted-firmware: allow to generate BL2 from RCW
>    board/freescale/ls1028ardb: new board
> 
>   DEVELOPERS                                    |  2 +
>   board/freescale/ls1028ardb/genimage.cfg       | 23 +++++++
>   board/freescale/ls1028ardb/readme.txt         | 60 +++++++++++++++++++
>   .../boot/extlinux/extlinux.conf               |  4 ++
>   .../rules.d/73-fsl-enetc-networking.rules     | 16 +++++
>   boot/arm-trusted-firmware/Config.in           |  6 ++
>   .../arm-trusted-firmware.mk                   |  6 ++
>   configs/ls1028ardb_defconfig                  | 57 ++++++++++++++++++
>   8 files changed, 174 insertions(+)
>   create mode 100644 board/freescale/ls1028ardb/genimage.cfg
>   create mode 100644 board/freescale/ls1028ardb/readme.txt
>   create mode 100644 board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf
>   create mode 100644 board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules
>   create mode 100644 configs/ls1028ardb_defconfig
> 

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Buildroot] [PATCH v4 2/2] board/freescale/ls1028ardb: new board
  2022-08-16 17:55 ` [Buildroot] [PATCH v4 2/2] board/freescale/ls1028ardb: new board Francois Perrad
@ 2022-08-21 17:58   ` Giulio Benetti
  2022-08-23 21:22   ` Thomas Petazzoni via buildroot
  1 sibling, 0 replies; 7+ messages in thread
From: Giulio Benetti @ 2022-08-21 17:58 UTC (permalink / raw)
  To: Francois Perrad, buildroot

Hi Francois, All,

On 16/08/22 19:55, Francois Perrad wrote:
> This is the reference design board for the NXP LS1028a SoC.
> 
> see https://www.nxp.com/design/qoriq-developer-resources/layerscape-ls1028a-reference-design-board:LS1028ARDB
> 
> Signed-off-by: Francois Perrad <francois.perrad@gadz.org>Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
> Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>

Here ^^^ there is a double Reviewed-by:
I think that the Maintainer that will commit this patch could reword it.

Best regards
-- 
Giulio Benetti
Benetti Engineering sas

> ---
>   DEVELOPERS                                    |  2 +
>   board/freescale/ls1028ardb/genimage.cfg       | 23 +++++++
>   board/freescale/ls1028ardb/readme.txt         | 60 +++++++++++++++++++
>   .../boot/extlinux/extlinux.conf               |  4 ++
>   .../rules.d/73-fsl-enetc-networking.rules     | 16 +++++
>   configs/ls1028ardb_defconfig                  | 57 ++++++++++++++++++
>   6 files changed, 162 insertions(+)
>   create mode 100644 board/freescale/ls1028ardb/genimage.cfg
>   create mode 100644 board/freescale/ls1028ardb/readme.txt
>   create mode 100644 board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf
>   create mode 100644 board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules
>   create mode 100644 configs/ls1028ardb_defconfig
> 
> diff --git a/DEVELOPERS b/DEVELOPERS
> index d2bd0d809..a034471fa 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1018,9 +1018,11 @@ N:	Francisco Gonzalez <gzmorell@gmail.com>
>   F:	package/ser2net/
>   
>   N:	Francois Perrad <francois.perrad@gadz.org>
> +F:	board/freescale/ls1028ardb/
>   F:	board/olimex/a20_olinuxino
>   F:	board/olimex/imx233_olinuxino/
>   F:	board/olimex/stmp1_olinuxino/
> +F:	configs/ls1028ardb_defconfig
>   F:	configs/olimex_a20_olinuxino_*
>   F:	configs/olimex_imx233_olinuxino_defconfig
>   F:	configs/olimex_stmp157_olinuxino_lime_defconfig
> diff --git a/board/freescale/ls1028ardb/genimage.cfg b/board/freescale/ls1028ardb/genimage.cfg
> new file mode 100644
> index 000000000..3efef0bff
> --- /dev/null
> +++ b/board/freescale/ls1028ardb/genimage.cfg
> @@ -0,0 +1,23 @@
> +image sdcard.img {
> +	hdimage {
> +	}
> +
> +	partition fsbl {
> +		offset = 4K
> +		in-partition-table = "no"
> +		image = "bl2_sd.pbl"
> +	}
> +
> +	partition ssbl {
> +		offset = 1M
> +		in-partition-table = "no"
> +		image = "fip.bin"
> +	}
> +
> +	partition rootfs {
> +		offset = 8M
> +		partition-type = 0x83
> +		bootable = "true"
> +		image = "rootfs.ext4"
> +	}
> +}
> diff --git a/board/freescale/ls1028ardb/readme.txt b/board/freescale/ls1028ardb/readme.txt
> new file mode 100644
> index 000000000..93396a419
> --- /dev/null
> +++ b/board/freescale/ls1028ardb/readme.txt
> @@ -0,0 +1,60 @@
> +**************
> +NXP LS1028ARDB
> +**************
> +
> +This file documents the Buildroot support for the LS1028A Reference Design Board.
> +
> +for more details about the board and the QorIQ Layerscape SoC, see the following pages:
> +  - https://www.nxp.com/design/qoriq-developer-resources/layerscape-ls1028a-reference-design-board:LS1028ARDB
> +  - https://www.nxp.com/LS1028A
> +
> +Build
> +=====
> +
> +First, configure Buildroot for the LS1028ARDB board:
> +
> +  make ls1028ardb_defconfig
> +
> +Build all components:
> +
> +  make
> +
> +You will find in output/images/ the following files:
> +  - bl2_sd.pbl
> +  - fip.bin
> +  - fsl-ls1028a-rdb.dtb
> +  - Image
> +  - PBL.bin
> +  - rootfs.ext2
> +  - rootfs.ext4 -> rootfs.ext2
> +  - sdcard.img
> +  - u-boot.bin
> +
> +Create a bootable SD card
> +=========================
> +
> +To determine the device associated to the SD card have a look in the
> +/proc/partitions file:
> +
> +  cat /proc/partitions
> +
> +Buildroot prepares a bootable "sdcard.img" image in the output/images/
> +directory, ready to be dumped on a SD card. Launch the following
> +command as root:
> +
> +  dd if=output/images/sdcard.img of=/dev/sdX
> +
> +*** WARNING! This will destroy all the card content. Use with care! ***
> +
> +For details about the medium image layout, see the definition in
> +board/freescale/ls1028ardb/genimage.cfg.
> +
> +Boot the LS1028ARDB board
> +=========================
> +
> +To boot your newly created system:
> +- insert the SD card in the SD slot of the board;
> +- Configure the switches SW2[1:4] = 1000 (select SD Card boot option)
> +- put a DB9F cable into the UART1 Port and connect using a terminal
> +  emulator at 115200 bps, 8n1;
> +- power on the board.
> diff --git a/board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf b/board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf
> new file mode 100644
> index 000000000..c08ddde10
> --- /dev/null
> +++ b/board/freescale/ls1028ardb/rootfs_overlay/boot/extlinux/extlinux.conf
> @@ -0,0 +1,4 @@
> +label ls1028ardb-buildroot
> +  kernel /boot/Image
> +  devicetree /boot/fsl-ls1028a-rdb.dtb
> +  append root=/dev/mmcblk0p1 rootwait
> diff --git a/board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules b/board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules
> new file mode 100644
> index 000000000..19f41634b
> --- /dev/null
> +++ b/board/freescale/ls1028ardb/rootfs_overlay/etc/udev/rules.d/73-fsl-enetc-networking.rules
> @@ -0,0 +1,16 @@
> +# ENETC rules
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.0", DRIVERS=="fsl_enetc", NAME:="eno0"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.1", DRIVERS=="fsl_enetc", NAME:="eno1"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.2", DRIVERS=="fsl_enetc", NAME:="eno2"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.6", DRIVERS=="fsl_enetc", NAME:="eno3"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.0", DRIVERS=="fsl_enetc_vf", NAME:="eno0vf0"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.1", DRIVERS=="fsl_enetc_vf", NAME:="eno0vf1"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.2", DRIVERS=="fsl_enetc_vf", NAME:="eno1vf0"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:01.3", DRIVERS=="fsl_enetc_vf", NAME:="eno1vf1"
> +# LS1028 switch rules
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p0", NAME="swp0"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p1", NAME="swp1"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p2", NAME="swp2"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p3", NAME="swp3"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p4", NAME="swp4"
> +ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:00.5", DRIVERS=="mscc_felix", ATTR{phys_port_name}=="p5", NAME="swp5"
> diff --git a/configs/ls1028ardb_defconfig b/configs/ls1028ardb_defconfig
> new file mode 100644
> index 000000000..605e41d70
> --- /dev/null
> +++ b/configs/ls1028ardb_defconfig
> @@ -0,0 +1,57 @@
> +# Architecture
> +BR2_aarch64=y
> +BR2_cortex_a72=y
> +
> +# Toolchain
> +# Linux headers same as kernel, a 5.10 series
> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
> +# wchar required by eudev
> +BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
> +
> +# System configuration
> +BR2_TARGET_GENERIC_HOSTNAME="ls1028a"
> +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
> +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> +BR2_ROOTFS_OVERLAY="board/freescale/ls1028ardb/rootfs_overlay"
> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/freescale/ls1028ardb/genimage.cfg"
> +
> +# Kernel
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_GIT=y
> +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/qoriq/qoriq-components/linux"
> +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="LSDK-21.08"
> +BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
> +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm64/configs/lsdk.config"
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/fsl-ls1028a-rdb"
> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> +
> +# Filesystem
> +BR2_TARGET_ROOTFS_EXT2=y
> +BR2_TARGET_ROOTFS_EXT2_4=y
> +BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
> +# BR2_TARGET_ROOTFS_TAR is not set
> +
> +# Bootloaders
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://source.codeaurora.org/external/qoriq/qoriq-components/atf"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="LSDK-21.08"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="ls1028ardb"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_RCW=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="BOOT_MODE=sd"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="fip.bin bl2_sd.pbl"
> +BR2_TARGET_UBOOT=y
> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> +BR2_TARGET_UBOOT_CUSTOM_GIT=y
> +BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/qoriq/qoriq-components/u-boot"
> +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="LSDK-21.08"
> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="ls1028ardb_tfa"
> +BR2_TARGET_UBOOT_NEEDS_DTC=y
> +
> +# Host utilities
> +BR2_PACKAGE_HOST_GENIMAGE=y
> +BR2_PACKAGE_HOST_QORIQ_RCW_INTREE="ls1028ardb/R_SQPP_0x85bb/rcw_1300_sdboot.bin"

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Buildroot] [PATCH v4 1/2] boot/arm-trusted-firmware: allow to generate BL2 from RCW
  2022-08-16 17:55 ` [Buildroot] [PATCH v4 1/2] boot/arm-trusted-firmware: allow to generate BL2 from RCW Francois Perrad
@ 2022-08-23 21:21   ` Thomas Petazzoni via buildroot
  0 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni via buildroot @ 2022-08-23 21:21 UTC (permalink / raw)
  To: Francois Perrad; +Cc: buildroot, Giulio Benetti

On Tue, 16 Aug 2022 19:55:02 +0200
Francois Perrad <fperrad@gmail.com> wrote:

> This patch adds option BR2_TARGETARM_TRUSTED_FIRMWARE_RCW that allows
> TF-A to encapsulate a pre-loader RCW (Reset Configuration Word) file
> into BL2.
> 
> Upcoming NXP QorIQ family board needs this option.
> 
> Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
> Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>

Thanks, I have applied with some changes.

> ---
>  boot/arm-trusted-firmware/Config.in               | 6 ++++++
>  boot/arm-trusted-firmware/arm-trusted-firmware.mk | 6 ++++++
>  2 files changed, 12 insertions(+)
> 
> diff --git a/boot/arm-trusted-firmware/Config.in b/boot/arm-trusted-firmware/Config.in
> index 100ac8348..2a59a325d 100644
> --- a/boot/arm-trusted-firmware/Config.in
> +++ b/boot/arm-trusted-firmware/Config.in
> @@ -90,6 +90,12 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP
>  	  platforms were ATF encapsulates the second stage bootloader
>  	  (such as U-Boot).
>  
> +config BR2_TARGET_ARM_TRUSTED_FIRMWARE_RCW

I have moved this option further down, next to the options where we can
say what BL32 to use, what BL33 to use. It made more sense to me than
to have the option in the middle of the list of images to build.

> +	bool "Include RCW"

Changed to "Include NXP RCW" to hint it's some NXP-specific stufff.

> +	select BR2_PACKAGE_HOST_QORIQ_RCW

Changed to "depends on". Indeed, sub-options of
BR2_PACKAGE_HOST_QORIQ_RCW must be set for this to work correctly, so
the user needs to be aware that qoriq-rcw is used.

Thanks!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Buildroot] [PATCH v4 2/2] board/freescale/ls1028ardb: new board
  2022-08-16 17:55 ` [Buildroot] [PATCH v4 2/2] board/freescale/ls1028ardb: new board Francois Perrad
  2022-08-21 17:58   ` Giulio Benetti
@ 2022-08-23 21:22   ` Thomas Petazzoni via buildroot
  1 sibling, 0 replies; 7+ messages in thread
From: Thomas Petazzoni via buildroot @ 2022-08-23 21:22 UTC (permalink / raw)
  To: Francois Perrad; +Cc: buildroot, Giulio Benetti

On Tue, 16 Aug 2022 19:55:03 +0200
Francois Perrad <fperrad@gmail.com> wrote:

> diff --git a/configs/ls1028ardb_defconfig b/configs/ls1028ardb_defconfig
> new file mode 100644
> index 000000000..605e41d70
> --- /dev/null
> +++ b/configs/ls1028ardb_defconfig
> @@ -0,0 +1,57 @@
> +# Architecture
> +BR2_aarch64=y
> +BR2_cortex_a72=y
> +
> +# Toolchain
> +# Linux headers same as kernel, a 5.10 series
> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
> +# wchar required by eudev
> +BR2_TOOLCHAIN_BUILDROOT_WCHAR=y

I dropped this since we're now using glibc by default.

> +# Host utilities
> +BR2_PACKAGE_HOST_GENIMAGE=y

I added:

BR2_PACKAGE_HOST_QORIQ_RCW=y

because the arm-trusted-firmware now depends on qoriq-rcw instead of
selecting it.

Applied to next with those two changes!

Thanks!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-08-23 21:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-16 17:55 [Buildroot] [PATCH v4 0/2] new board LS1028ARDB Francois Perrad
2022-08-16 17:55 ` [Buildroot] [PATCH v4 1/2] boot/arm-trusted-firmware: allow to generate BL2 from RCW Francois Perrad
2022-08-23 21:21   ` Thomas Petazzoni via buildroot
2022-08-16 17:55 ` [Buildroot] [PATCH v4 2/2] board/freescale/ls1028ardb: new board Francois Perrad
2022-08-21 17:58   ` Giulio Benetti
2022-08-23 21:22   ` Thomas Petazzoni via buildroot
2022-08-18 21:50 ` [Buildroot] [PATCH v4 0/2] new board LS1028ARDB Giulio Benetti

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.