lkml.org 
[lkml]   [2021]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v7 3/6] clk: ralink: add clock driver for mt7621 SoC
    Hi Sergio,

    I love your patch! Perhaps something to improve:

    [auto build test WARNING on staging/staging-testing]
    [also build test WARNING on clk/clk-next robh/for-next linus/master v5.11 next-20210216]
    [If your patch is applied to the wrong git tree, kindly drop us a note.
    And when submitting patch, we suggest to use '--base' as documented in
    https://git-scm.com/docs/git-format-patch]

    url: https://github.com/0day-ci/linux/commits/Sergio-Paracuellos/MIPS-ralink-add-CPU-clock-detection-and-clock-driver-for-MT7621/20210217-194316
    base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git 4eb839aef182fccf8995ee439fc2b48d43e45918
    config: riscv-randconfig-r036-20210217 (attached as .config)
    compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project c9439ca36342fb6013187d0a69aef92736951476)
    reproduce (this is a W=1 build):
    wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
    chmod +x ~/bin/make.cross
    # install riscv cross compiling tool for clang build
    # apt-get install binutils-riscv64-linux-gnu
    # https://github.com/0day-ci/linux/commit/9b83f7b7032e26686ddc5d89e82ee2df4dc260d3
    git remote add linux-review https://github.com/0day-ci/linux
    git fetch --no-tags linux-review Sergio-Paracuellos/MIPS-ralink-add-CPU-clock-detection-and-clock-driver-for-MT7621/20210217-194316
    git checkout 9b83f7b7032e26686ddc5d89e82ee2df4dc260d3
    # save the attached .config to linux build tree
    COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv

    If you fix the issue, kindly add following tag as appropriate
    Reported-by: kernel test robot <lkp@intel.com>

    All warnings (new ones prefixed by >>):

    >> drivers/clk/ralink/clk-mt7621.c:459:2: warning: variable 'ret' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    if (!clk_data)
    ^~~~~~~~~~~~~~
    include/linux/compiler.h:56:28: note: expanded from macro 'if'
    #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/compiler.h:58:30: note: expanded from macro '__trace_if_var'
    #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/clk/ralink/clk-mt7621.c:517:9: note: uninitialized use occurs here
    return ret;
    ^~~
    drivers/clk/ralink/clk-mt7621.c:459:2: note: remove the 'if' if its condition is always false
    if (!clk_data)
    ^~~~~~~~~~~~~~
    include/linux/compiler.h:56:23: note: expanded from macro 'if'
    #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
    ^
    drivers/clk/ralink/clk-mt7621.c:451:2: warning: variable 'ret' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    if (IS_ERR(priv->memc)) {
    ^~~~~~~~~~~~~~~~~~~~~~~
    include/linux/compiler.h:56:28: note: expanded from macro 'if'
    #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/compiler.h:58:30: note: expanded from macro '__trace_if_var'
    #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/clk/ralink/clk-mt7621.c:517:9: note: uninitialized use occurs here
    return ret;
    ^~~
    drivers/clk/ralink/clk-mt7621.c:451:2: note: remove the 'if' if its condition is always false
    if (IS_ERR(priv->memc)) {
    ^~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/compiler.h:56:23: note: expanded from macro 'if'
    #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
    ^
    drivers/clk/ralink/clk-mt7621.c:445:2: warning: variable 'ret' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    if (IS_ERR(priv->sysc)) {
    ^~~~~~~~~~~~~~~~~~~~~~~
    include/linux/compiler.h:56:28: note: expanded from macro 'if'
    #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/compiler.h:58:30: note: expanded from macro '__trace_if_var'
    #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/clk/ralink/clk-mt7621.c:517:9: note: uninitialized use occurs here
    return ret;
    ^~~
    drivers/clk/ralink/clk-mt7621.c:445:2: note: remove the 'if' if its condition is always false
    if (IS_ERR(priv->sysc)) {
    ^~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/compiler.h:56:23: note: expanded from macro 'if'
    #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
    ^
    drivers/clk/ralink/clk-mt7621.c:438:9: note: initialize the variable 'ret' to silence this warning
    int ret, i, count;
    ^
    = 0
    3 warnings generated.


    vim +459 drivers/clk/ralink/clk-mt7621.c

    431
    432 static int mt7621_clk_probe(struct platform_device *pdev)
    433 {
    434 struct device_node *np = pdev->dev.of_node;
    435 struct clk_hw_onecell_data *clk_data;
    436 struct device *dev = &pdev->dev;
    437 struct mt7621_clk_priv *priv;
    438 int ret, i, count;
    439
    440 priv = kzalloc(sizeof(*priv), GFP_KERNEL);
    441 if (!priv)
    442 return -ENOMEM;
    443
    444 priv->sysc = syscon_regmap_lookup_by_phandle(np, "ralink,sysctl");
    445 if (IS_ERR(priv->sysc)) {
    446 dev_err(dev, "Could not get sysc syscon regmap\n");
    447 goto free_clk_priv;
    448 }
    449
    450 priv->memc = syscon_regmap_lookup_by_phandle(np, "ralink,memctl");
    451 if (IS_ERR(priv->memc)) {
    452 dev_err(dev, "Could not get memc syscon regmap\n");
    453 goto free_clk_priv;
    454 }
    455
    456 count = ARRAY_SIZE(mt7621_clks_base) +
    457 ARRAY_SIZE(mt7621_fixed_clks) + ARRAY_SIZE(mt7621_gates);
    458 clk_data = kzalloc(struct_size(clk_data, hws, count), GFP_KERNEL);
    > 459 if (!clk_data)
    460 goto free_clk_priv;
    461
    462 for (i = 0; i < ARRAY_SIZE(mt7621_clks_base); i++)
    463 clk_data->hws[i] = mt7621_clk_early[i];
    464
    465 ret = mt7621_register_fixed_clocks(dev, clk_data);
    466 if (ret) {
    467 dev_err(dev, "Couldn't register fixed clocks\n");
    468 goto free_clk_data;
    469 }
    470
    471 ret = mt7621_register_gates(dev, clk_data, priv);
    472 if (ret) {
    473 dev_err(dev, "Couldn't register fixed clock gates\n");
    474 goto unreg_clk_fixed;
    475 }
    476
    477 clk_data->num = count;
    478
    479 ret = mt7621_prepare_enable_clocks(clk_data);
    480 if (ret) {
    481 dev_err(dev, "Couldn't register fixed clock gates\n");
    482 goto unreg_clk_gates;
    483 }
    484
    485 ret = devm_of_clk_add_hw_provider(dev, of_clk_hw_onecell_get, clk_data);
    486 if (ret) {
    487 dev_err(dev, "Couldn't add clk hw provider\n");
    488 goto disable_clks;
    489 }
    490
    491 return 0;
    492
    493 disable_clks:
    494 for (i = 0; i < MT7621_CLK_MAX; i++)
    495 clk_disable_unprepare(clk_data->hws[i]->clk);
    496
    497 unreg_clk_gates:
    498 for (i = 0; i < ARRAY_SIZE(mt7621_gates); i++) {
    499 struct mt7621_gate *sclk = &mt7621_gates[i];
    500
    501 clk_hw_unregister(&sclk->hw);
    502 }
    503
    504 unreg_clk_fixed:
    505 for (i = 0; i < ARRAY_SIZE(mt7621_fixed_clks); i++) {
    506 struct mt7621_fixed_clk *sclk = &mt7621_fixed_clks[i];
    507
    508 clk_hw_unregister_fixed_rate(sclk->hw);
    509 }
    510
    511 free_clk_data:
    512 kfree(clk_data);
    513
    514 free_clk_priv:
    515 kfree(priv);
    516
    517 return ret;
    518 }
    519

    ---
    0-DAY CI Kernel Test Service, Intel Corporation
    https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
    [unhandled content-type:application/gzip]
    \
     
     \ /
      Last update: 2021-02-17 15:12    [W:3.459 / U:1.112 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site