From 4b1368a184ce2e2c99b37d64b823216a2712a6f5 Mon Sep 17 00:00:00 2001 From: Matt Madison Date: Sat, 2 Mar 2024 08:25:17 -0800 Subject: [PATCH] jetson-agx-orin-devkit: rework PMIC config selection R35.5.0 introduces different logic for selecting the PMIC config, based on board SKU. Update the machine config to expect a sed rewrite in the flash variable, and update the flash helper to perform that rewrite. Signed-off-by: Matt Madison --- conf/machine/jetson-agx-orin-devkit.conf | 2 +- .../tegra-flash-helper.sh | 29 +++++++++++++++++-- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/conf/machine/jetson-agx-orin-devkit.conf b/conf/machine/jetson-agx-orin-devkit.conf index 2506459d..cc6807b0 100644 --- a/conf/machine/jetson-agx-orin-devkit.conf +++ b/conf/machine/jetson-agx-orin-devkit.conf @@ -42,7 +42,7 @@ TEGRA_FLASHVAR_MINRATCHET_CONFIG = "--minratchet_config tegra234-mb1-bct-ratchet TEGRA_FLASHVAR_MISC_CONFIG = "tegra234-mb1-bct-misc-p3701-0000.dts" TEGRA_FLASHVAR_PINMUX_CONFIG = "tegra234-mb1-bct-pinmux-p3701-0000-a04.dtsi" TEGRA_FLASHVAR_PMC_CONFIG = "tegra234-mb1-bct-padvoltage-p3701-0000-a04.dtsi" -TEGRA_FLASHVAR_PMIC_CONFIG = "tegra234-mb1-bct-pmic-p3701-0000.dts" +TEGRA_FLASHVAR_PMIC_CONFIG = "tegra234-mb1-bct-pmic-p3701-@PMICBOARDSKU@.dts" TEGRA_FLASHVAR_PROD_CONFIG = "tegra234-mb1-bct-prod-p3701-0000.dts" TEGRA_FLASHVAR_SCR_CONFIG = "tegra234-mb2-bct-scr-p3701-0000.dts" TEGRA_FLASHVAR_UPHY_CONFIG = "--uphy tegra234-mb1-bct-uphylane-si.dtsi" diff --git a/recipes-bsp/tegra-binaries/tegra-helper-scripts/tegra-flash-helper.sh b/recipes-bsp/tegra-binaries/tegra-helper-scripts/tegra-flash-helper.sh index 278a75a5..0b2deb23 100644 --- a/recipes-bsp/tegra-binaries/tegra-helper-scripts/tegra-flash-helper.sh +++ b/recipes-bsp/tegra-binaries/tegra-helper-scripts/tegra-flash-helper.sh @@ -471,6 +471,11 @@ elif [ "$CHIPID" = "0x23" ]; then exit 1 ;; esac + if [ "$BOARDSKU" = "0004" -o "$BOARDSKU" = "0005" ]; then + PMICBOARDSKU="0005" + else + PMICBOARDSKU="0000" + fi if [ "$BOARDSKU" != "0005" ]; then if [ "$chip_sku" = "00" -o "$chip_sku" = "D0" ] && echo "$FAB" | egrep -q '^(TS[123]|EB[123]|[012]00)$'; then PINMUX_CONFIG="tegra234-mb1-bct-pinmux-p3701-0000.dtsi" @@ -491,7 +496,28 @@ elif [ "$CHIPID" = "0x23" ]; then else fsifw_binsarg= fi + for var in $FLASHVARS; do + eval pat=$`echo $var` + if [ -n "$pat" ]; then + val=$(echo $pat | sed -e"s,@PMICBOARDSKU@,$PMICBOARDSKU,") + eval $var='$val' + fi + done elif [ "$BOARDID" = "3767" ]; then + case $chip_sku in + 00) + ;; + D3|D4) + BPF_FILE=$(echo "$BPF_FILE" | sed -e"s,T.*-A1,TE980M-A1,") + ;; + D5|D6) + BPF_FILE=$(echo "$BPF_FILE" | sed -e"s,T.*-A1,TE950M-A1,") + ;; + *) + echo "ERR: unrecognized chip SKU: $chip_sku" >&2 + exit 1 + ;; + esac PINMUXREV="a03" BPFDTBREV="a02" PMCREV="a03" @@ -511,9 +537,6 @@ elif [ "$CHIPID" = "0x23" ]; then EMMC_BCT="tegra234-p3767-0004-sdram-l4t.dts" WB0SDRAM_BCT="tegra234-p3767-0004-wb0sdram-l4t.dts" fi - if [ "$BOARDSKU" = "0003" -o "$BOARDSKU" = "0004" -o "$BOARDSKU" = "0005" ]; then - BPF_FILE="bpmp_t234-TE950M-A1_prod.bin" - fi PINMUX_CONFIG=$(echo "$PINMUX_CONFIG" | sed -e"s,@PINMUXREV@,$PINMUXREV,") PMC_CONFIG=$(echo "$PMC_CONFIG" | sed -e"s,@PMCREV@,$PMCREV,") PMIC_CONFIG=$(echo "$PMIC_CONFIG" | sed -e"s,@PMICREV@,$PMICREV,")