[PATCH 1/2] firmware: zynqmp: Mask expected and show unexpected warning

Michal Simek michal.simek at amd.com
Mon Apr 17 12:16:32 CEST 2023



On 4/3/23 15:34, Stefan Herbrechtsmeier wrote:
> From: Stefan Herbrechtsmeier <stefan.herbrechtsmeier at weidmueller.com>
> 
> Mask the expected and show the unexpected warning "No permission to
> change config object" for NODE_OCM_BANK_0 because this node is used to
> detect if further zynqmp_pmufw_node function calls should be skipped.
> 
> Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier at weidmueller.com>
> ---
> 
>   drivers/firmware/firmware-zynqmp.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/firmware/firmware-zynqmp.c b/drivers/firmware/firmware-zynqmp.c
> index dc8e3ad2b9..8435b58ef9 100644
> --- a/drivers/firmware/firmware-zynqmp.c
> +++ b/drivers/firmware/firmware-zynqmp.c
> @@ -251,7 +251,7 @@ int zynqmp_pmufw_load_config_object(const void *cfg_obj, size_t size)
>          err = xilinx_pm_request(PM_SET_CONFIGURATION, (u32)(u64)cfg_obj, 0, 0,
>                                  0, ret_payload);
>          if (err == XST_PM_NO_ACCESS) {
> -               if (((u32 *)cfg_obj)[NODE_ID_LOCATION] == NODE_OCM_BANK_0) {
> +               if (((u32 *)cfg_obj)[NODE_ID_LOCATION] != NODE_OCM_BANK_0) {
>                          printf("PMUFW:  No permission to change config object\n");
>                          return err;
>                  }

First of all we should very likely create a macro for NODE_OCM_BANK_0 to cover 
that dependency that it is used in 3 different locations which have to match.

The second is the change you have in 2/2 should be the part of this patch 
because when only 1/2 is applied you change behavior.

And changes in 2/2 makes sense.

I would be even fine to move skip_config out of zynqmp_pmufw_node()
and setting up skip_config value directly in zynqmp_power_probe() not to check 
in every call.

  85         if (ret == XST_PM_NO_ACCESS && id == NODE_OCM_BANK_0)
  86                 skip_config = true;

Thanks,
Michal






More information about the U-Boot mailing list