firmware: zynqmp: Do not report error if node is already configured
authorMichal Simek <michal.simek@xilinx.com>
Fri, 14 Jan 2022 12:25:37 +0000 (13:25 +0100)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 19 Jan 2022 14:14:29 +0000 (15:14 +0100)
Power domain driver sends PM fragment to PMUFW. It is sent for every node
which is listed in DT. But some nodes could be already enabled but driver
is not capable to find it out. That's why it blinly sents request for every
listed IP. When PMUFW response by XST_PM_ALREADY_CONFIGURED error code
there is no need to show any error message because node is already enabled.
That's why cover this case with message when DEBUG is enabled.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Link: https://lore.kernel.org/r/8c15ef0b68cf191f693d3d010f70ac24cfd8171f.1642163135.git.michal.simek@xilinx.com
drivers/firmware/firmware-zynqmp.c

index 18a092c..839203e 100644 (file)
@@ -20,6 +20,7 @@
 #define PMUFW_PAYLOAD_ARG_CNT  8
 
 #define XST_PM_NO_ACCESS       2002L
+#define XST_PM_ALREADY_CONFIGURED      2009L
 
 struct zynqmp_power {
        struct mbox_chan tx_chan;
@@ -110,6 +111,11 @@ void zynqmp_pmufw_load_config_object(const void *cfg_obj, size_t size)
                return;
        }
 
+       if (err == XST_PM_ALREADY_CONFIGURED) {
+               debug("PMUFW Node is already configured\n");
+               return;
+       }
+
        if (err)
                printf("Cannot load PMUFW configuration object (%d)\n", err);