CC: [email protected]
CC: [email protected]
TO: Ansuel Smith <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   0c947b893d69231a9add855939da7c66237ab44f
commit: def975307c01191b6f0170048c3724b0ed3348af net: dsa: qca8k: add LAG 
support
date:   8 weeks ago
:::::: branch date: 17 hours ago
:::::: commit date: 8 weeks ago
compiler: arceb-elf-gcc (GCC) 11.2.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


cppcheck possible warnings: (new ones prefixed by >>, may not real problems)

>> drivers/net/dsa/qca8k.c:2315:44: warning: Boolean result is used in bitwise 
>> operation. Clarify expression with parentheses. [clarifyCondition]
        !val << QCA8K_REG_GOL_TRUNK_SHIFT(id) |
                                              ^
   drivers/net/dsa/qca8k.c:2353:61: warning: Boolean result is used in bitwise 
operation. Clarify expression with parentheses. [clarifyCondition]
         !delete << QCA8K_REG_GOL_TRUNK_ID_MEM_ID_SHIFT(id, i) |
                                                               ^
>> drivers/net/dsa/qca8k.c:693:52: warning: Uninitialized variable: val 
>> [uninitvar]
    ret = read_poll_timeout(qca8k_mii_read32, ret1, !(val & mask), 0,
                                                      ^

vim +2315 drivers/net/dsa/qca8k.c

def975307c01191 Ansuel Smith 2021-11-23  2287  
def975307c01191 Ansuel Smith 2021-11-23  2288  static int
def975307c01191 Ansuel Smith 2021-11-23  2289  qca8k_lag_refresh_portmap(struct 
dsa_switch *ds, int port,
def975307c01191 Ansuel Smith 2021-11-23  2290                     struct 
net_device *lag, bool delete)
def975307c01191 Ansuel Smith 2021-11-23  2291  {
def975307c01191 Ansuel Smith 2021-11-23  2292   struct qca8k_priv *priv = 
ds->priv;
def975307c01191 Ansuel Smith 2021-11-23  2293   int ret, id, i;
def975307c01191 Ansuel Smith 2021-11-23  2294   u32 val;
def975307c01191 Ansuel Smith 2021-11-23  2295  
def975307c01191 Ansuel Smith 2021-11-23  2296   id = dsa_lag_id(ds->dst, lag);
def975307c01191 Ansuel Smith 2021-11-23  2297  
def975307c01191 Ansuel Smith 2021-11-23  2298   /* Read current port member */
def975307c01191 Ansuel Smith 2021-11-23  2299   ret = regmap_read(priv->regmap, 
QCA8K_REG_GOL_TRUNK_CTRL0, &val);
def975307c01191 Ansuel Smith 2021-11-23  2300   if (ret)
def975307c01191 Ansuel Smith 2021-11-23  2301           return ret;
def975307c01191 Ansuel Smith 2021-11-23  2302  
def975307c01191 Ansuel Smith 2021-11-23  2303   /* Shift val to the correct 
trunk */
def975307c01191 Ansuel Smith 2021-11-23  2304   val >>= 
QCA8K_REG_GOL_TRUNK_SHIFT(id);
def975307c01191 Ansuel Smith 2021-11-23  2305   val &= 
QCA8K_REG_GOL_TRUNK_MEMBER_MASK;
def975307c01191 Ansuel Smith 2021-11-23  2306   if (delete)
def975307c01191 Ansuel Smith 2021-11-23  2307           val &= ~BIT(port);
def975307c01191 Ansuel Smith 2021-11-23  2308   else
def975307c01191 Ansuel Smith 2021-11-23  2309           val |= BIT(port);
def975307c01191 Ansuel Smith 2021-11-23  2310  
def975307c01191 Ansuel Smith 2021-11-23  2311   /* Update port member. With 
empty portmap disable trunk */
def975307c01191 Ansuel Smith 2021-11-23  2312   ret = 
regmap_update_bits(priv->regmap, QCA8K_REG_GOL_TRUNK_CTRL0,
def975307c01191 Ansuel Smith 2021-11-23  2313                            
QCA8K_REG_GOL_TRUNK_MEMBER(id) |
def975307c01191 Ansuel Smith 2021-11-23  2314                            
QCA8K_REG_GOL_TRUNK_EN(id),
def975307c01191 Ansuel Smith 2021-11-23 @2315                            !val 
<< QCA8K_REG_GOL_TRUNK_SHIFT(id) |
def975307c01191 Ansuel Smith 2021-11-23  2316                            val << 
QCA8K_REG_GOL_TRUNK_SHIFT(id));
def975307c01191 Ansuel Smith 2021-11-23  2317  
def975307c01191 Ansuel Smith 2021-11-23  2318   /* Search empty member if 
adding or port on deleting */
def975307c01191 Ansuel Smith 2021-11-23  2319   for (i = 0; i < 
QCA8K_NUM_PORTS_FOR_LAG; i++) {
def975307c01191 Ansuel Smith 2021-11-23  2320           ret = 
regmap_read(priv->regmap, QCA8K_REG_GOL_TRUNK_CTRL(id), &val);
def975307c01191 Ansuel Smith 2021-11-23  2321           if (ret)
def975307c01191 Ansuel Smith 2021-11-23  2322                   return ret;
def975307c01191 Ansuel Smith 2021-11-23  2323  
def975307c01191 Ansuel Smith 2021-11-23  2324           val >>= 
QCA8K_REG_GOL_TRUNK_ID_MEM_ID_SHIFT(id, i);
def975307c01191 Ansuel Smith 2021-11-23  2325           val &= 
QCA8K_REG_GOL_TRUNK_ID_MEM_ID_MASK;
def975307c01191 Ansuel Smith 2021-11-23  2326  
def975307c01191 Ansuel Smith 2021-11-23  2327           if (delete) {
def975307c01191 Ansuel Smith 2021-11-23  2328                   /* If port 
flagged to be disabled assume this member is
def975307c01191 Ansuel Smith 2021-11-23  2329                    * empty
def975307c01191 Ansuel Smith 2021-11-23  2330                    */
def975307c01191 Ansuel Smith 2021-11-23  2331                   if (val != 
QCA8K_REG_GOL_TRUNK_ID_MEM_ID_EN_MASK)
def975307c01191 Ansuel Smith 2021-11-23  2332                           
continue;
def975307c01191 Ansuel Smith 2021-11-23  2333  
def975307c01191 Ansuel Smith 2021-11-23  2334                   val &= 
QCA8K_REG_GOL_TRUNK_ID_MEM_ID_PORT_MASK;
def975307c01191 Ansuel Smith 2021-11-23  2335                   if (val != port)
def975307c01191 Ansuel Smith 2021-11-23  2336                           
continue;
def975307c01191 Ansuel Smith 2021-11-23  2337           } else {
def975307c01191 Ansuel Smith 2021-11-23  2338                   /* If port 
flagged to be enabled assume this member is
def975307c01191 Ansuel Smith 2021-11-23  2339                    * already set
def975307c01191 Ansuel Smith 2021-11-23  2340                    */
def975307c01191 Ansuel Smith 2021-11-23  2341                   if (val == 
QCA8K_REG_GOL_TRUNK_ID_MEM_ID_EN_MASK)
def975307c01191 Ansuel Smith 2021-11-23  2342                           
continue;
def975307c01191 Ansuel Smith 2021-11-23  2343           }
def975307c01191 Ansuel Smith 2021-11-23  2344  
def975307c01191 Ansuel Smith 2021-11-23  2345           /* We have found the 
member to add/remove */
def975307c01191 Ansuel Smith 2021-11-23  2346           break;
def975307c01191 Ansuel Smith 2021-11-23  2347   }
def975307c01191 Ansuel Smith 2021-11-23  2348  
def975307c01191 Ansuel Smith 2021-11-23  2349   /* Set port in the correct port 
mask or disable port if in delete mode */
def975307c01191 Ansuel Smith 2021-11-23  2350   return 
regmap_update_bits(priv->regmap, QCA8K_REG_GOL_TRUNK_CTRL(id),
def975307c01191 Ansuel Smith 2021-11-23  2351                             
QCA8K_REG_GOL_TRUNK_ID_MEM_ID_EN(id, i) |
def975307c01191 Ansuel Smith 2021-11-23  2352                             
QCA8K_REG_GOL_TRUNK_ID_MEM_ID_PORT(id, i),
def975307c01191 Ansuel Smith 2021-11-23  2353                             
!delete << QCA8K_REG_GOL_TRUNK_ID_MEM_ID_SHIFT(id, i) |
def975307c01191 Ansuel Smith 2021-11-23  2354                             port 
<< QCA8K_REG_GOL_TRUNK_ID_MEM_ID_SHIFT(id, i));
def975307c01191 Ansuel Smith 2021-11-23  2355  }
def975307c01191 Ansuel Smith 2021-11-23  2356  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to