• Michal Simek's avatar
    clk: zynqmp: fix compile testing without ZYNQMP_FIRMWARE · 6c9feabc
    Michal Simek authored
    When the firmware code is disabled, the incomplete error handling
    in the clk driver causes compile-time warnings:
    
    drivers/clk/zynqmp/pll.c: In function 'zynqmp_pll_recalc_rate':
    drivers/clk/zynqmp/pll.c:147:29: error: 'fbdiv' is used uninitialized [-Werror=uninitialized]
      147 |         rate =  parent_rate * fbdiv;
          |                 ~~~~~~~~~~~~^~~~~~~
    In function 'zynqmp_pll_get_mode',
        inlined from 'zynqmp_pll_recalc_rate' at drivers/clk/zynqmp/pll.c:148:6:
    drivers/clk/zynqmp/pll.c:61:27: error: 'ret_payload' is used uninitialized [-Werror=uninitialized]
       61 |         return ret_payload[1];
          |                ~~~~~~~~~~~^~~
    drivers/clk/zynqmp/pll.c: In function 'zynqmp_pll_recalc_rate':
    drivers/clk/zynqmp/pll.c:53:13: note: 'ret_payload' declared here
       53 |         u32 ret_payload[PAYLOAD_ARG_CNT];
          |             ^~~~~~~~~~~
    drivers/clk/zynqmp/clk-mux-zynqmp.c: In function 'zynqmp_clk_mux_get_parent':
    drivers/clk/zynqmp/clk-mux-zynqmp.c:57:16: error: 'val' is used uninitialized [-Werror=uninitialized]
       57 |         return val;
          |                ^~~
    
    As it was apparently intentional to support this for compile testing
    purposes, change the code to have just enough error handling for the
    compiler to not notice the remaining bugs.
    
    Fixes: 21f23753 ("clk: zynqmp: Drop dependency on ARCH_ZYNQMP")
    Co-developed-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
    Link: https://lore.kernel.org/r/f1c4e8c903fe2d5df5413421920a56890a46387a.1624356908.git.michal.simek@xilinx.comSigned-off-by: default avatarStephen Boyd <sboyd@kernel.org>
    6c9feabc
clk-mux-zynqmp.c 3.51 KB