From: Luca Ceresoli via buildroot <buildroot@buildroot.org>
To: Neal Frager <neal.frager@amd.com>
Cc: Bradley.Gamble@entrust.com, ibai.erkiaga-elorza@amd.com,
kris.chaplin@amd.com, thomas.petazzoni@bootlin.com,
buildroot@buildroot.org, david.evans@ebv.com,
michal.simek@amd.com
Subject: Re: [Buildroot] [PATCH v1 1/1] configs/zynqmp_kria_kr260_defconfig: new defconfig
Date: Mon, 5 Jun 2023 10:34:09 +0200 [thread overview]
Message-ID: <20230605103409.129d9ea9@booty> (raw)
In-Reply-To: <20230531111602.1623985-1-neal.frager@amd.com>
Hi Neal,
On Wed, 31 May 2023 12:16:02 +0100
Neal Frager <neal.frager@amd.com> wrote:
> This patch adds support for Xilinx Kria KR260 starter kit.
>
> KR260 features can be found here:
> https://www.xilinx.com/products/som/kria/kr260-robotics-starter-kit.html
>
> While the Kria SOM is based on a ZynqMP SoC, there are some key
> boot config differences from the other ZynqMP evaluation boards.
>
> 1. There are no boot switches on Kria SOMs. The boot mode is thus
> hard configured for QSPI flash. A pre-programmed boot.bin comes
> with every Starter Kit. U-Boot can then find the Linux kernel and
> file system on the SD card.
>
> Optional instructions for updating the boot.bin in the QSPI flash
> can be found in the readme.txt file and the link below.
>
> https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/1641152513/Kria+K26+SOM
>
> 2. Kria SOMs use UART1 for the console instead of UART0. For this
> reason, Kria Starter Kits will use a separate extlinux.conf file
> from other ZynqMP evaluation boards.
>
> 3. The KR260 has a USB to SD card bridge, so the Linux kernel
> and file system are found on /dev/sda1 and /dev/sda2.
>
> Signed-off-by: Neal Frager <neal.frager@amd.com>
> ---
> DEVELOPERS | 3 +-
> board/zynqmp/kria/kr260/kr260.sh | 12 +
> ...inctrl-zynqmp-add-tri-state-controls.patch | 90 ++++
> board/zynqmp/kria/kr260/pm_cfg_obj.c | 496 ++++++++++++++++++
> board/zynqmp/kria/readme.txt | 29 +-
> configs/zynqmp_kria_kr260_defconfig | 42 ++
> 6 files changed, 665 insertions(+), 7 deletions(-)
> create mode 100755 board/zynqmp/kria/kr260/kr260.sh
> create mode 100644 board/zynqmp/kria/kr260/patches/uboot/v1-0001-drivers-pinctrl-zynqmp-add-tri-state-controls.patch
> create mode 100644 board/zynqmp/kria/kr260/pm_cfg_obj.c
> create mode 100644 configs/zynqmp_kria_kr260_defconfig
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index e76717e845..26bcf93b0a 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -2152,9 +2152,10 @@ F: board/zynqmp/
> F: board/zynqmp/kria/
> F: configs/versal_vck190_defconfig
> F: configs/zynq_zc706_defconfig
> +F: configs/zynqmp_kria_kr260_defconfig
> +F: configs/zynqmp_kria_kv260_defconfig
> F: configs/zynqmp_zcu102_defconfig
> F: configs/zynqmp_zcu106_defconfig
> -F: configs/zynqmp_kria_kv260_defconfig
> F: package/bootgen/
> F: package/versal-firmware/
>
> diff --git a/board/zynqmp/kria/kr260/kr260.sh b/board/zynqmp/kria/kr260/kr260.sh
> new file mode 100755
> index 0000000000..df8b0ccde5
> --- /dev/null
> +++ b/board/zynqmp/kria/kr260/kr260.sh
> @@ -0,0 +1,12 @@
> +#!/bin/sh
> +
> +# This is a temporary work around for generating kr260 u-boot.itb.
> +# The problem is there is no way to currently configure u-boot to apply
> +# the carrier board dtb overlay during build, so all kr260 carrier board
> +# drivers are missing.
> +# This will be removed when u-boot can build the kr260 u-boot.itb natively.
> +
> +UBOOT_DIR=$4
> +
> +fdtoverlay -o ${UBOOT_DIR}/fit-dtb.blob -i ${UBOOT_DIR}/arch/arm/dts/zynqmp-smk-k26-revA.dtb ${UBOOT_DIR}/arch/arm/dts/zynqmp-sck-kr-g-revB.dtbo
> +${UBOOT_DIR}/tools/mkimage -E -f ${UBOOT_DIR}/u-boot.its -B 0x8 ${BINARIES_DIR}/u-boot.itb
> diff --git a/board/zynqmp/kria/kr260/patches/uboot/v1-0001-drivers-pinctrl-zynqmp-add-tri-state-controls.patch b/board/zynqmp/kria/kr260/patches/uboot/v1-0001-drivers-pinctrl-zynqmp-add-tri-state-controls.patch
I know we have a similar script for the KV260 carrier, but I wonder
whether U-Boot would be able to load the base dtb and then apply the
overlay at runtime before loading Linux.
Another question is of course: is there any effort ongoing to fix this
upstream?
> new file mode 100644
> index 0000000000..422a5d091c
> --- /dev/null
> +++ b/board/zynqmp/kria/kr260/patches/uboot/v1-0001-drivers-pinctrl-zynqmp-add-tri-state-controls.patch
> @@ -0,0 +1,90 @@
> +From 560b2e0b6de66c4c9f4b261308263dd091c6002a Mon Sep 17 00:00:00 2001
> +From: Neal Frager <neal.frager@amd.com>
> +Date: Tue, 28 Mar 2023 14:42:59 +0100
> +Subject: [PATCH v1 1/1] drivers: pinctrl-zynqmp: add tri-state controls
> +
> +This patch enables u-boot pinctrl of the tri-state registers. As it does not
> +check pmufw version, it assumes version 2 of the pmufw pinctrl driver which
> +comes only in pmufw 2023.1 or newer.
Why is this needed? Since you are using a vendor U-Boot, it feels
strange that you need further patches on top.
Is this patch being upstreamed?
As a general rule, every commit message should always explain _why_ the
patch is needed. Explaining _what_ the patch changes is often evident
from the diff and thus useless in the commit message.
Otherwise looks good.
Luca
--
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-06-05 8:34 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-31 11:16 [Buildroot] [PATCH v1 1/1] configs/zynqmp_kria_kr260_defconfig: new defconfig Neal Frager via buildroot
2023-06-05 8:23 ` Luca Ceresoli via buildroot
2023-06-12 11:51 ` Frager, Neal via buildroot
2023-06-05 8:34 ` Luca Ceresoli via buildroot [this message]
2023-06-05 8:49 ` Frager, Neal via buildroot
-- strict thread matches above, loose matches on Subject: below --
2022-12-07 14:04 Neal Frager via buildroot
2022-12-07 10:33 Neal Frager via buildroot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230605103409.129d9ea9@booty \
--to=buildroot@buildroot.org \
--cc=Bradley.Gamble@entrust.com \
--cc=david.evans@ebv.com \
--cc=ibai.erkiaga-elorza@amd.com \
--cc=kris.chaplin@amd.com \
--cc=luca.ceresoli@bootlin.com \
--cc=michal.simek@amd.com \
--cc=neal.frager@amd.com \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox