CC: [email protected]
CC: [email protected]
TO: "Pierre-Louis Bossart" <[email protected]>
CC: Vinod Koul <[email protected]>
CC: Rander Wang <[email protected]>
CC: Bard Liao <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   26291c54e111ff6ba87a164d85d4a4e134b7315c
commit: dd81e7c3f0bb4fbe48b770b389ab6ccb95058dab soundwire: cadence: override 
PDI configurations to create loopback
date:   6 months ago
:::::: branch date: 29 hours ago
:::::: commit date: 6 months ago
compiler: gcc-9 (Debian 9.3.0-22) 9.3.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/soundwire/cadence_master.c:1379:0: warning: Same expression used in 
>> consecutive assignments of 'target_num' and 'source_num'. 
>> [duplicateAssignExpression]
    int target_num = p_params->num;
   ^
   drivers/soundwire/cadence_master.c:1380:0: note: Same expression used in 
consecutive assignments of 'target_num' and 'source_num'.
    int source_num = p_params->num;
   ^
   drivers/soundwire/cadence_master.c:1379:0: note: Same expression used in 
consecutive assignments of 'target_num' and 'source_num'.
    int target_num = p_params->num;
   ^
>> drivers/soundwire/cadence_master.c:1429:0: warning: Same expression used in 
>> consecutive assignments of 'source_num' and 'target_num'. 
>> [duplicateAssignExpression]
    int source_num = t_params->port_num;
   ^
   drivers/soundwire/cadence_master.c:1430:0: note: Same expression used in 
consecutive assignments of 'source_num' and 'target_num'.
    int target_num = t_params->port_num;
   ^
   drivers/soundwire/cadence_master.c:1429:0: note: Same expression used in 
consecutive assignments of 'source_num' and 'target_num'.
    int source_num = t_params->port_num;
   ^

vim +1379 drivers/soundwire/cadence_master.c

07abeff1ef1ae8 Vinod Koul           2018-04-26  1372  
07abeff1ef1ae8 Vinod Koul           2018-04-26  1373  static int 
cdns_port_params(struct sdw_bus *bus,
07abeff1ef1ae8 Vinod Koul           2018-04-26  1374                        
struct sdw_port_params *p_params, unsigned int bank)
07abeff1ef1ae8 Vinod Koul           2018-04-26  1375  {
07abeff1ef1ae8 Vinod Koul           2018-04-26  1376    struct sdw_cdns *cdns = 
bus_to_cdns(bus);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1377    int 
dpn_config_off_source;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1378    int 
dpn_config_off_target;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14 @1379    int target_num = 
p_params->num;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1380    int source_num = 
p_params->num;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1381    bool override = false;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1382    int dpn_config;
07abeff1ef1ae8 Vinod Koul           2018-04-26  1383  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1384    if (target_num == 
cdns->pdi_loopback_target &&
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1385        
cdns->pdi_loopback_source != -1) {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1386            source_num = 
cdns->pdi_loopback_source;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1387            override = true;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1388    }
07abeff1ef1ae8 Vinod Koul           2018-04-26  1389  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1390    if (bank) {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1391            
dpn_config_off_source = CDNS_DPN_B1_CONFIG(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1392            
dpn_config_off_target = CDNS_DPN_B1_CONFIG(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1393    } else {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1394            
dpn_config_off_source = CDNS_DPN_B0_CONFIG(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1395            
dpn_config_off_target = CDNS_DPN_B0_CONFIG(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1396    }
07abeff1ef1ae8 Vinod Koul           2018-04-26  1397  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1398    dpn_config = 
cdns_readl(cdns, dpn_config_off_source);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1399  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1400    /* use port params if 
there is no loopback, otherwise use source as is */
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1401    if (!override) {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1402            
u32p_replace_bits(&dpn_config, p_params->bps - 1, CDNS_DPN_CONFIG_WL);
714db045cf30f7 Vinod Koul           2020-09-17  1403            
u32p_replace_bits(&dpn_config, p_params->flow_mode, CDNS_DPN_CONFIG_PORT_FLOW);
714db045cf30f7 Vinod Koul           2020-09-17  1404            
u32p_replace_bits(&dpn_config, p_params->data_mode, CDNS_DPN_CONFIG_PORT_DAT);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1405    }
07abeff1ef1ae8 Vinod Koul           2018-04-26  1406  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1407    cdns_writel(cdns, 
dpn_config_off_target, dpn_config);
07abeff1ef1ae8 Vinod Koul           2018-04-26  1408  
07abeff1ef1ae8 Vinod Koul           2018-04-26  1409    return 0;
07abeff1ef1ae8 Vinod Koul           2018-04-26  1410  }
07abeff1ef1ae8 Vinod Koul           2018-04-26  1411  
07abeff1ef1ae8 Vinod Koul           2018-04-26  1412  static int 
cdns_transport_params(struct sdw_bus *bus,
07abeff1ef1ae8 Vinod Koul           2018-04-26  1413                            
 struct sdw_transport_params *t_params,
07abeff1ef1ae8 Vinod Koul           2018-04-26  1414                            
 enum sdw_reg_bank bank)
07abeff1ef1ae8 Vinod Koul           2018-04-26  1415  {
07abeff1ef1ae8 Vinod Koul           2018-04-26  1416    struct sdw_cdns *cdns = 
bus_to_cdns(bus);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1417    int dpn_config;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1418    int 
dpn_config_off_source;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1419    int 
dpn_config_off_target;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1420    int dpn_hctrl;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1421    int 
dpn_hctrl_off_source;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1422    int 
dpn_hctrl_off_target;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1423    int dpn_offsetctrl;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1424    int 
dpn_offsetctrl_off_source;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1425    int 
dpn_offsetctrl_off_target;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1426    int dpn_samplectrl;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1427    int 
dpn_samplectrl_off_source;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1428    int 
dpn_samplectrl_off_target;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14 @1429    int source_num = 
t_params->port_num;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1430    int target_num = 
t_params->port_num;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1431    bool override = false;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1432  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1433    if (target_num == 
cdns->pdi_loopback_target &&
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1434        
cdns->pdi_loopback_source != -1) {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1435            source_num = 
cdns->pdi_loopback_source;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1436            override = true;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1437    }
07abeff1ef1ae8 Vinod Koul           2018-04-26  1438  
07abeff1ef1ae8 Vinod Koul           2018-04-26  1439    /*
07abeff1ef1ae8 Vinod Koul           2018-04-26  1440     * Note: Only full data 
port is supported on the Master side for
07abeff1ef1ae8 Vinod Koul           2018-04-26  1441     * both PCM and PDM 
ports.
07abeff1ef1ae8 Vinod Koul           2018-04-26  1442     */
07abeff1ef1ae8 Vinod Koul           2018-04-26  1443  
07abeff1ef1ae8 Vinod Koul           2018-04-26  1444    if (bank) {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1445            
dpn_config_off_source = CDNS_DPN_B1_CONFIG(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1446            
dpn_hctrl_off_source = CDNS_DPN_B1_HCTRL(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1447            
dpn_offsetctrl_off_source = CDNS_DPN_B1_OFFSET_CTRL(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1448            
dpn_samplectrl_off_source = CDNS_DPN_B1_SAMPLE_CTRL(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1449  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1450            
dpn_config_off_target = CDNS_DPN_B1_CONFIG(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1451            
dpn_hctrl_off_target = CDNS_DPN_B1_HCTRL(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1452            
dpn_offsetctrl_off_target = CDNS_DPN_B1_OFFSET_CTRL(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1453            
dpn_samplectrl_off_target = CDNS_DPN_B1_SAMPLE_CTRL(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1454  
07abeff1ef1ae8 Vinod Koul           2018-04-26  1455    } else {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1456            
dpn_config_off_source = CDNS_DPN_B0_CONFIG(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1457            
dpn_hctrl_off_source = CDNS_DPN_B0_HCTRL(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1458            
dpn_offsetctrl_off_source = CDNS_DPN_B0_OFFSET_CTRL(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1459            
dpn_samplectrl_off_source = CDNS_DPN_B0_SAMPLE_CTRL(source_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1460  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1461            
dpn_config_off_target = CDNS_DPN_B0_CONFIG(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1462            
dpn_hctrl_off_target = CDNS_DPN_B0_HCTRL(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1463            
dpn_offsetctrl_off_target = CDNS_DPN_B0_OFFSET_CTRL(target_num);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1464            
dpn_samplectrl_off_target = CDNS_DPN_B0_SAMPLE_CTRL(target_num);
07abeff1ef1ae8 Vinod Koul           2018-04-26  1465    }
07abeff1ef1ae8 Vinod Koul           2018-04-26  1466  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1467    dpn_config = 
cdns_readl(cdns, dpn_config_off_source);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1468    if (!override) {
714db045cf30f7 Vinod Koul           2020-09-17  1469            
u32p_replace_bits(&dpn_config, t_params->blk_grp_ctrl, CDNS_DPN_CONFIG_BGC);
714db045cf30f7 Vinod Koul           2020-09-17  1470            
u32p_replace_bits(&dpn_config, t_params->blk_pkg_mode, CDNS_DPN_CONFIG_BPM);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1471    }
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1472    cdns_writel(cdns, 
dpn_config_off_target, dpn_config);
07abeff1ef1ae8 Vinod Koul           2018-04-26  1473  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1474    if (!override) {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1475            dpn_offsetctrl 
= 0;
714db045cf30f7 Vinod Koul           2020-09-17  1476            
u32p_replace_bits(&dpn_offsetctrl, t_params->offset1, CDNS_DPN_OFFSET_CTRL_1);
714db045cf30f7 Vinod Koul           2020-09-17  1477            
u32p_replace_bits(&dpn_offsetctrl, t_params->offset2, CDNS_DPN_OFFSET_CTRL_2);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1478    } else {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1479            dpn_offsetctrl 
= cdns_readl(cdns, dpn_offsetctrl_off_source);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1480    }
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1481    cdns_writel(cdns, 
dpn_offsetctrl_off_target,  dpn_offsetctrl);
07abeff1ef1ae8 Vinod Koul           2018-04-26  1482  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1483    if (!override) {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1484            dpn_hctrl = 0;
714db045cf30f7 Vinod Koul           2020-09-17  1485            
u32p_replace_bits(&dpn_hctrl, t_params->hstart, CDNS_DPN_HCTRL_HSTART);
714db045cf30f7 Vinod Koul           2020-09-17  1486            
u32p_replace_bits(&dpn_hctrl, t_params->hstop, CDNS_DPN_HCTRL_HSTOP);
714db045cf30f7 Vinod Koul           2020-09-17  1487            
u32p_replace_bits(&dpn_hctrl, t_params->lane_ctrl, CDNS_DPN_HCTRL_LCTRL);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1488    } else {
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1489            dpn_hctrl = 
cdns_readl(cdns, dpn_hctrl_off_source);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1490    }
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1491    cdns_writel(cdns, 
dpn_hctrl_off_target, dpn_hctrl);
07abeff1ef1ae8 Vinod Koul           2018-04-26  1492  
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1493    if (!override)
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1494            dpn_samplectrl 
= t_params->sample_interval - 1;
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1495    else
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1496            dpn_samplectrl 
= cdns_readl(cdns, dpn_samplectrl_off_source);
dd81e7c3f0bb4f Pierre-Louis Bossart 2021-07-14  1497    cdns_writel(cdns, 
dpn_samplectrl_off_target, dpn_samplectrl);
07abeff1ef1ae8 Vinod Koul           2018-04-26  1498  
07abeff1ef1ae8 Vinod Koul           2018-04-26  1499    return 0;
07abeff1ef1ae8 Vinod Koul           2018-04-26  1500  }
07abeff1ef1ae8 Vinod Koul           2018-04-26  1501  

---
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