[PATCH] arm64: versal2: Show major and minor silicon version
Michal Simek
michal.simek at amd.com
Wed Feb 26 10:54:39 CET 2025
On 2/18/25 13:43, Michal Simek wrote:
> ES1 silicon is 0x10 (16) and production is 0x20 (32) but correct number to
> see are v1.0 or v2.0 instead of v16 or v32.
>
> Signed-off-by: Michal Simek <michal.simek at amd.com>
> ---
>
> arch/arm/mach-versal2/include/mach/hardware.h | 3 ++-
> drivers/soc/soc_amd_versal2.c | 4 +++-
> 2 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-versal2/include/mach/hardware.h b/arch/arm/mach-versal2/include/mach/hardware.h
> index 42e3061a0aea..15085f941e02 100644
> --- a/arch/arm/mach-versal2/include/mach/hardware.h
> +++ b/arch/arm/mach-versal2/include/mach/hardware.h
> @@ -51,7 +51,8 @@ struct crp_regs {
> #define PMC_TAP_VERSION (PMC_TAP + 0x4)
> # define PMC_VERSION_MASK GENMASK(7, 0)
> # define PS_VERSION_MASK GENMASK(15, 8)
> -# define PS_VERSION_PRODUCTION 0x20
> +# define PS_VERSION_MAJOR GENMASK(7, 4)
> +# define PS_VERSION_MINOR GENMASK(3, 0)
> # define RTL_VERSION_MASK GENMASK(23, 16)
> # define PLATFORM_MASK GENMASK(27, 24)
> # define PLATFORM_VERSION_MASK GENMASK(31, 28)
> diff --git a/drivers/soc/soc_amd_versal2.c b/drivers/soc/soc_amd_versal2.c
> index 66bcb22b4fa9..8507da0bd228 100644
> --- a/drivers/soc/soc_amd_versal2.c
> +++ b/drivers/soc/soc_amd_versal2.c
> @@ -35,7 +35,9 @@ static int soc_amd_versal2_get_revision(struct udevice *dev, char *buf, int size
> {
> struct soc_amd_versal2_priv *priv = dev_get_priv(dev);
>
> - return snprintf(buf, size, "v%d", priv->revision);
> + return snprintf(buf, size, "v%d.%d",
> + (u32)FIELD_GET(PS_VERSION_MAJOR, priv->revision),
> + (u32)FIELD_GET(PS_VERSION_MINOR, priv->revision));
> }
>
> static const struct soc_ops soc_amd_versal2_ops = {
Applied.
M
More information about the U-Boot
mailing list