All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@lists.01.org
Subject: Re: [PATCH net-next v4 5/8] net: phy: mscc: 1588 block initialization
Date: Thu, 25 Jun 2020 14:52:15 +0300	[thread overview]
Message-ID: <20200625115215.GD2549@kadam> (raw)
In-Reply-To: <20200623143014.47864-6-antoine.tenart@bootlin.com>

[-- Attachment #1: Type: text/plain, Size: 18284 bytes --]

Hi Antoine,

url:    https://github.com/0day-ci/linux/commits/Antoine-Tenart/net-phy-mscc-PHC-and-timestamping-support/20200623-223712
base:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 8af7b4525acf5012b2f111a8b168b8647f2c8d60
config: x86_64-randconfig-m001-20200624 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0

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

smatch warnings:
drivers/net/phy/mscc/mscc_main.c:1472 vsc8584_config_init() error: double unlocked 'phydev->mdio.bus->mdio_lock' (orig line 1431)
drivers/net/phy/mscc/mscc_ptp.c:87 vsc85xx_ts_read_csr() error: uninitialized symbol 'blk_hw'.

# https://github.com/0day-ci/linux/commit/b3225965b276bd4f492184090bbac3a117bc77ae
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout b3225965b276bd4f492184090bbac3a117bc77ae
vim +1472 drivers/net/phy/mscc/mscc_main.c

a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1326  static int vsc8584_config_init(struct phy_device *phydev)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1327  {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1328  	struct vsc8531_private *vsc8531 = phydev->priv;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1329  	int ret, i;
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1330  	u16 val;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1331  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1332  	phydev->mdix_ctrl = ETH_TP_MDI_AUTO;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1333  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1334  	mutex_lock(&phydev->mdio.bus->mdio_lock);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1335  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1336  	/* Some parts of the init sequence are identical for every PHY in the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1337  	 * package. Some parts are modifying the GPIO register bank which is a
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1338  	 * set of registers that are affecting all PHYs, a few resetting the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1339  	 * microprocessor common to all PHYs. The CRC check responsible of the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1340  	 * checking the firmware within the 8051 microprocessor can only be
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1341  	 * accessed via the PHY whose internal address in the package is 0.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1342  	 * All PHYs' interrupts mask register has to be zeroed before enabling
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1343  	 * any PHY's interrupt in this register.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1344  	 * For all these reasons, we need to do the init sequence once and only
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1345  	 * once whatever is the first PHY in the package that is initialized and
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1346  	 * do the correct init sequence for all PHYs that are package-critical
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1347  	 * in this pre-init function.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1348  	 */
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1349  	if (phy_package_init_once(phydev)) {
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1350  		/* The following switch statement assumes that the lowest
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1351  		 * nibble of the phy_id_mask is always 0. This works because
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1352  		 * the lowest nibble of the PHY_ID's below are also 0.
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1353  		 */
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1354  		WARN_ON(phydev->drv->phy_id_mask & 0xf);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1355  
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1356  		switch (phydev->phy_id & phydev->drv->phy_id_mask) {
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1357  		case PHY_ID_VSC8504:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1358  		case PHY_ID_VSC8552:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1359  		case PHY_ID_VSC8572:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1360  		case PHY_ID_VSC8574:
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1361  			ret = vsc8574_config_pre_init(phydev);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1362  			break;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1363  		case PHY_ID_VSC856X:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1364  		case PHY_ID_VSC8575:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1365  		case PHY_ID_VSC8582:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1366  		case PHY_ID_VSC8584:
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1367  			ret = vsc8584_config_pre_init(phydev);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1368  			break;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1369  		default:
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1370  			ret = -EINVAL;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1371  			break;
1e8795b1b20d27 drivers/net/phy/mscc.c           kbuild test robot 2019-11-16  1372  		}
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1373  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1374  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1375  			goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1376  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1377  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1378  	phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS,
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1379  		       MSCC_PHY_PAGE_EXTENDED_GPIO);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1380  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1381  	val = phy_base_read(phydev, MSCC_PHY_MAC_CFG_FASTLINK);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1382  	val &= ~MAC_CFG_MASK;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1383  	if (phydev->interface == PHY_INTERFACE_MODE_QSGMII) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1384  		val |= MAC_CFG_QSGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1385  	} else if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1386  		val |= MAC_CFG_SGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1387  	} else if (phy_interface_is_rgmii(phydev)) {
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1388  		val |= MAC_CFG_RGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1389  	} else {
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1390  		ret = -EINVAL;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1391  		goto err;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1392  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1393  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1394  	ret = phy_base_write(phydev, MSCC_PHY_MAC_CFG_FASTLINK, val);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1395  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1396  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1397  
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1398  	if (!phy_interface_is_rgmii(phydev)) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1399  		val = PROC_CMD_MCB_ACCESS_MAC_CONF | PROC_CMD_RST_CONF_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1400  			PROC_CMD_READ_MOD_WRITE_PORT;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1401  		if (phydev->interface == PHY_INTERFACE_MODE_QSGMII)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1402  			val |= PROC_CMD_QSGMII_MAC;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1403  		else
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1404  			val |= PROC_CMD_SGMII_MAC;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1405  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1406  		ret = vsc8584_cmd(phydev, val);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1407  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1408  			goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1409  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1410  		usleep_range(10000, 20000);
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1411  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1412  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1413  	/* Disable SerDes for 100Base-FX */
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1414  	ret = vsc8584_cmd(phydev, PROC_CMD_FIBER_MEDIA_CONF |
49113d5e0c3f3f drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-06-05  1415  			  PROC_CMD_FIBER_PORT(vsc8531->addr) |
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1416  			  PROC_CMD_FIBER_DISABLE |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1417  			  PROC_CMD_READ_MOD_WRITE_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1418  			  PROC_CMD_RST_CONF_PORT | PROC_CMD_FIBER_100BASE_FX);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1419  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1420  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1421  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1422  	/* Disable SerDes for 1000Base-X */
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1423  	ret = vsc8584_cmd(phydev, PROC_CMD_FIBER_MEDIA_CONF |
49113d5e0c3f3f drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-06-05  1424  			  PROC_CMD_FIBER_PORT(vsc8531->addr) |
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1425  			  PROC_CMD_FIBER_DISABLE |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1426  			  PROC_CMD_READ_MOD_WRITE_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1427  			  PROC_CMD_RST_CONF_PORT | PROC_CMD_FIBER_1000BASE_X);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1428  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1429  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1430  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08 @1431  	mutex_unlock(&phydev->mdio.bus->mdio_lock);
                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1432  
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1433  	ret = vsc8584_macsec_init(phydev);
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1434  	if (ret)
fa164e40c53b38 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-13  1435  		return ret;
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1436  
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1437  	ret = vsc8584_ptp_init(phydev);
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1438  	if (ret)
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1439  		goto err;
                                                                                                ^^^^^^^^
This should be a direct return.


b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1440  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1441  	phy_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_STANDARD);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1442  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1443  	val = phy_read(phydev, MSCC_PHY_EXT_PHY_CNTL_1);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1444  	val &= ~(MEDIA_OP_MODE_MASK | VSC8584_MAC_IF_SELECTION_MASK);
1ac7b090ec4618 drivers/net/phy/mscc.c           Antoine Tenart    2020-02-26  1445  	val |= (MEDIA_OP_MODE_COPPER << MEDIA_OP_MODE_POS) |
1ac7b090ec4618 drivers/net/phy/mscc.c           Antoine Tenart    2020-02-26  1446  	       (VSC8584_MAC_IF_SELECTION_SGMII << VSC8584_MAC_IF_SELECTION_POS);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1447  	ret = phy_write(phydev, MSCC_PHY_EXT_PHY_CNTL_1, val);
09d65e6d631c05 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1448  	if (ret)
09d65e6d631c05 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1449  		return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1450  
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1451  	if (phy_interface_is_rgmii(phydev)) {
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1452  		ret = vsc85xx_rgmii_set_skews(phydev, VSC8572_RGMII_CNTL,
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1453  					      VSC8572_RGMII_RX_DELAY_MASK,
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1454  					      VSC8572_RGMII_TX_DELAY_MASK);
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1455  		if (ret)
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1456  			return ret;
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1457  	}
dee48f78d02e15 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1458  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1459  	ret = genphy_soft_reset(phydev);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1460  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1461  		return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1462  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1463  	for (i = 0; i < vsc8531->nleds; i++) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1464  		ret = vsc85xx_led_cntl_set(phydev, i, vsc8531->leds_mode[i]);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1465  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1466  			return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1467  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1468  
c227ce4423855b drivers/net/phy/mscc.c           Heiner Kallweit   2019-08-17  1469  	return 0;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1470  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1471  err:
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08 @1472  	mutex_unlock(&phydev->mdio.bus->mdio_lock);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1473  	return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1474  }

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 33424 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH net-next v4 5/8] net: phy: mscc: 1588 block initialization
Date: Thu, 25 Jun 2020 14:52:15 +0300	[thread overview]
Message-ID: <20200625115215.GD2549@kadam> (raw)
In-Reply-To: <20200623143014.47864-6-antoine.tenart@bootlin.com>

[-- Attachment #1: Type: text/plain, Size: 18284 bytes --]

Hi Antoine,

url:    https://github.com/0day-ci/linux/commits/Antoine-Tenart/net-phy-mscc-PHC-and-timestamping-support/20200623-223712
base:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 8af7b4525acf5012b2f111a8b168b8647f2c8d60
config: x86_64-randconfig-m001-20200624 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0

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

smatch warnings:
drivers/net/phy/mscc/mscc_main.c:1472 vsc8584_config_init() error: double unlocked 'phydev->mdio.bus->mdio_lock' (orig line 1431)
drivers/net/phy/mscc/mscc_ptp.c:87 vsc85xx_ts_read_csr() error: uninitialized symbol 'blk_hw'.

# https://github.com/0day-ci/linux/commit/b3225965b276bd4f492184090bbac3a117bc77ae
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout b3225965b276bd4f492184090bbac3a117bc77ae
vim +1472 drivers/net/phy/mscc/mscc_main.c

a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1326  static int vsc8584_config_init(struct phy_device *phydev)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1327  {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1328  	struct vsc8531_private *vsc8531 = phydev->priv;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1329  	int ret, i;
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1330  	u16 val;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1331  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1332  	phydev->mdix_ctrl = ETH_TP_MDI_AUTO;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1333  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1334  	mutex_lock(&phydev->mdio.bus->mdio_lock);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1335  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1336  	/* Some parts of the init sequence are identical for every PHY in the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1337  	 * package. Some parts are modifying the GPIO register bank which is a
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1338  	 * set of registers that are affecting all PHYs, a few resetting the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1339  	 * microprocessor common to all PHYs. The CRC check responsible of the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1340  	 * checking the firmware within the 8051 microprocessor can only be
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1341  	 * accessed via the PHY whose internal address in the package is 0.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1342  	 * All PHYs' interrupts mask register has to be zeroed before enabling
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1343  	 * any PHY's interrupt in this register.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1344  	 * For all these reasons, we need to do the init sequence once and only
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1345  	 * once whatever is the first PHY in the package that is initialized and
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1346  	 * do the correct init sequence for all PHYs that are package-critical
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1347  	 * in this pre-init function.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1348  	 */
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1349  	if (phy_package_init_once(phydev)) {
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1350  		/* The following switch statement assumes that the lowest
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1351  		 * nibble of the phy_id_mask is always 0. This works because
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1352  		 * the lowest nibble of the PHY_ID's below are also 0.
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1353  		 */
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1354  		WARN_ON(phydev->drv->phy_id_mask & 0xf);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1355  
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1356  		switch (phydev->phy_id & phydev->drv->phy_id_mask) {
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1357  		case PHY_ID_VSC8504:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1358  		case PHY_ID_VSC8552:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1359  		case PHY_ID_VSC8572:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1360  		case PHY_ID_VSC8574:
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1361  			ret = vsc8574_config_pre_init(phydev);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1362  			break;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1363  		case PHY_ID_VSC856X:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1364  		case PHY_ID_VSC8575:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1365  		case PHY_ID_VSC8582:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1366  		case PHY_ID_VSC8584:
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1367  			ret = vsc8584_config_pre_init(phydev);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1368  			break;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1369  		default:
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1370  			ret = -EINVAL;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1371  			break;
1e8795b1b20d27 drivers/net/phy/mscc.c           kbuild test robot 2019-11-16  1372  		}
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1373  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1374  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1375  			goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1376  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1377  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1378  	phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS,
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1379  		       MSCC_PHY_PAGE_EXTENDED_GPIO);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1380  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1381  	val = phy_base_read(phydev, MSCC_PHY_MAC_CFG_FASTLINK);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1382  	val &= ~MAC_CFG_MASK;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1383  	if (phydev->interface == PHY_INTERFACE_MODE_QSGMII) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1384  		val |= MAC_CFG_QSGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1385  	} else if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1386  		val |= MAC_CFG_SGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1387  	} else if (phy_interface_is_rgmii(phydev)) {
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1388  		val |= MAC_CFG_RGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1389  	} else {
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1390  		ret = -EINVAL;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1391  		goto err;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1392  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1393  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1394  	ret = phy_base_write(phydev, MSCC_PHY_MAC_CFG_FASTLINK, val);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1395  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1396  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1397  
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1398  	if (!phy_interface_is_rgmii(phydev)) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1399  		val = PROC_CMD_MCB_ACCESS_MAC_CONF | PROC_CMD_RST_CONF_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1400  			PROC_CMD_READ_MOD_WRITE_PORT;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1401  		if (phydev->interface == PHY_INTERFACE_MODE_QSGMII)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1402  			val |= PROC_CMD_QSGMII_MAC;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1403  		else
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1404  			val |= PROC_CMD_SGMII_MAC;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1405  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1406  		ret = vsc8584_cmd(phydev, val);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1407  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1408  			goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1409  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1410  		usleep_range(10000, 20000);
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1411  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1412  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1413  	/* Disable SerDes for 100Base-FX */
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1414  	ret = vsc8584_cmd(phydev, PROC_CMD_FIBER_MEDIA_CONF |
49113d5e0c3f3f drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-06-05  1415  			  PROC_CMD_FIBER_PORT(vsc8531->addr) |
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1416  			  PROC_CMD_FIBER_DISABLE |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1417  			  PROC_CMD_READ_MOD_WRITE_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1418  			  PROC_CMD_RST_CONF_PORT | PROC_CMD_FIBER_100BASE_FX);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1419  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1420  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1421  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1422  	/* Disable SerDes for 1000Base-X */
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1423  	ret = vsc8584_cmd(phydev, PROC_CMD_FIBER_MEDIA_CONF |
49113d5e0c3f3f drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-06-05  1424  			  PROC_CMD_FIBER_PORT(vsc8531->addr) |
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1425  			  PROC_CMD_FIBER_DISABLE |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1426  			  PROC_CMD_READ_MOD_WRITE_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1427  			  PROC_CMD_RST_CONF_PORT | PROC_CMD_FIBER_1000BASE_X);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1428  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1429  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1430  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08 @1431  	mutex_unlock(&phydev->mdio.bus->mdio_lock);
                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1432  
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1433  	ret = vsc8584_macsec_init(phydev);
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1434  	if (ret)
fa164e40c53b38 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-13  1435  		return ret;
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1436  
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1437  	ret = vsc8584_ptp_init(phydev);
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1438  	if (ret)
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1439  		goto err;
                                                                                                ^^^^^^^^
This should be a direct return.


b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1440  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1441  	phy_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_STANDARD);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1442  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1443  	val = phy_read(phydev, MSCC_PHY_EXT_PHY_CNTL_1);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1444  	val &= ~(MEDIA_OP_MODE_MASK | VSC8584_MAC_IF_SELECTION_MASK);
1ac7b090ec4618 drivers/net/phy/mscc.c           Antoine Tenart    2020-02-26  1445  	val |= (MEDIA_OP_MODE_COPPER << MEDIA_OP_MODE_POS) |
1ac7b090ec4618 drivers/net/phy/mscc.c           Antoine Tenart    2020-02-26  1446  	       (VSC8584_MAC_IF_SELECTION_SGMII << VSC8584_MAC_IF_SELECTION_POS);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1447  	ret = phy_write(phydev, MSCC_PHY_EXT_PHY_CNTL_1, val);
09d65e6d631c05 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1448  	if (ret)
09d65e6d631c05 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1449  		return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1450  
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1451  	if (phy_interface_is_rgmii(phydev)) {
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1452  		ret = vsc85xx_rgmii_set_skews(phydev, VSC8572_RGMII_CNTL,
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1453  					      VSC8572_RGMII_RX_DELAY_MASK,
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1454  					      VSC8572_RGMII_TX_DELAY_MASK);
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1455  		if (ret)
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1456  			return ret;
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1457  	}
dee48f78d02e15 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1458  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1459  	ret = genphy_soft_reset(phydev);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1460  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1461  		return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1462  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1463  	for (i = 0; i < vsc8531->nleds; i++) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1464  		ret = vsc85xx_led_cntl_set(phydev, i, vsc8531->leds_mode[i]);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1465  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1466  			return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1467  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1468  
c227ce4423855b drivers/net/phy/mscc.c           Heiner Kallweit   2019-08-17  1469  	return 0;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1470  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1471  err:
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08 @1472  	mutex_unlock(&phydev->mdio.bus->mdio_lock);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1473  	return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1474  }

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 33424 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@lists.01.org, Antoine Tenart <antoine.tenart@bootlin.com>,
	davem@davemloft.net, andrew@lunn.ch, f.fainelli@gmail.com,
	hkallweit1@gmail.com, richardcochran@gmail.com,
	alexandre.belloni@bootlin.com, UNGLinuxDriver@microchip.com
Cc: lkp@intel.com, kbuild-all@lists.01.org, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org, thomas.petazzoni@bootlin.com
Subject: Re: [PATCH net-next v4 5/8] net: phy: mscc: 1588 block initialization
Date: Thu, 25 Jun 2020 14:52:15 +0300	[thread overview]
Message-ID: <20200625115215.GD2549@kadam> (raw)
In-Reply-To: <20200623143014.47864-6-antoine.tenart@bootlin.com>

[-- Attachment #1: Type: text/plain, Size: 18102 bytes --]

Hi Antoine,

url:    https://github.com/0day-ci/linux/commits/Antoine-Tenart/net-phy-mscc-PHC-and-timestamping-support/20200623-223712
base:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 8af7b4525acf5012b2f111a8b168b8647f2c8d60
config: x86_64-randconfig-m001-20200624 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0

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

smatch warnings:
drivers/net/phy/mscc/mscc_main.c:1472 vsc8584_config_init() error: double unlocked 'phydev->mdio.bus->mdio_lock' (orig line 1431)
drivers/net/phy/mscc/mscc_ptp.c:87 vsc85xx_ts_read_csr() error: uninitialized symbol 'blk_hw'.

# https://github.com/0day-ci/linux/commit/b3225965b276bd4f492184090bbac3a117bc77ae
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout b3225965b276bd4f492184090bbac3a117bc77ae
vim +1472 drivers/net/phy/mscc/mscc_main.c

a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1326  static int vsc8584_config_init(struct phy_device *phydev)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1327  {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1328  	struct vsc8531_private *vsc8531 = phydev->priv;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1329  	int ret, i;
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1330  	u16 val;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1331  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1332  	phydev->mdix_ctrl = ETH_TP_MDI_AUTO;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1333  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1334  	mutex_lock(&phydev->mdio.bus->mdio_lock);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1335  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1336  	/* Some parts of the init sequence are identical for every PHY in the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1337  	 * package. Some parts are modifying the GPIO register bank which is a
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1338  	 * set of registers that are affecting all PHYs, a few resetting the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1339  	 * microprocessor common to all PHYs. The CRC check responsible of the
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1340  	 * checking the firmware within the 8051 microprocessor can only be
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1341  	 * accessed via the PHY whose internal address in the package is 0.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1342  	 * All PHYs' interrupts mask register has to be zeroed before enabling
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1343  	 * any PHY's interrupt in this register.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1344  	 * For all these reasons, we need to do the init sequence once and only
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1345  	 * once whatever is the first PHY in the package that is initialized and
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1346  	 * do the correct init sequence for all PHYs that are package-critical
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1347  	 * in this pre-init function.
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1348  	 */
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1349  	if (phy_package_init_once(phydev)) {
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1350  		/* The following switch statement assumes that the lowest
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1351  		 * nibble of the phy_id_mask is always 0. This works because
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1352  		 * the lowest nibble of the PHY_ID's below are also 0.
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1353  		 */
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1354  		WARN_ON(phydev->drv->phy_id_mask & 0xf);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1355  
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1356  		switch (phydev->phy_id & phydev->drv->phy_id_mask) {
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1357  		case PHY_ID_VSC8504:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1358  		case PHY_ID_VSC8552:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1359  		case PHY_ID_VSC8572:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1360  		case PHY_ID_VSC8574:
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1361  			ret = vsc8574_config_pre_init(phydev);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1362  			break;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1363  		case PHY_ID_VSC856X:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1364  		case PHY_ID_VSC8575:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1365  		case PHY_ID_VSC8582:
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1366  		case PHY_ID_VSC8584:
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1367  			ret = vsc8584_config_pre_init(phydev);
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1368  			break;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1369  		default:
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1370  			ret = -EINVAL;
75a1ccfe6c726b drivers/net/phy/mscc.c           Bryan Whitehead   2019-11-13  1371  			break;
1e8795b1b20d27 drivers/net/phy/mscc.c           kbuild test robot 2019-11-16  1372  		}
00d70d8e0e7811 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1373  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1374  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1375  			goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1376  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1377  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1378  	phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS,
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1379  		       MSCC_PHY_PAGE_EXTENDED_GPIO);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1380  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1381  	val = phy_base_read(phydev, MSCC_PHY_MAC_CFG_FASTLINK);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1382  	val &= ~MAC_CFG_MASK;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1383  	if (phydev->interface == PHY_INTERFACE_MODE_QSGMII) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1384  		val |= MAC_CFG_QSGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1385  	} else if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1386  		val |= MAC_CFG_SGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1387  	} else if (phy_interface_is_rgmii(phydev)) {
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1388  		val |= MAC_CFG_RGMII;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1389  	} else {
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1390  		ret = -EINVAL;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1391  		goto err;
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1392  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1393  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1394  	ret = phy_base_write(phydev, MSCC_PHY_MAC_CFG_FASTLINK, val);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1395  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1396  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1397  
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1398  	if (!phy_interface_is_rgmii(phydev)) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1399  		val = PROC_CMD_MCB_ACCESS_MAC_CONF | PROC_CMD_RST_CONF_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1400  			PROC_CMD_READ_MOD_WRITE_PORT;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1401  		if (phydev->interface == PHY_INTERFACE_MODE_QSGMII)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1402  			val |= PROC_CMD_QSGMII_MAC;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1403  		else
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1404  			val |= PROC_CMD_SGMII_MAC;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1405  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1406  		ret = vsc8584_cmd(phydev, val);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1407  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1408  			goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1409  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1410  		usleep_range(10000, 20000);
e8e4223046e19d drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1411  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1412  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1413  	/* Disable SerDes for 100Base-FX */
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1414  	ret = vsc8584_cmd(phydev, PROC_CMD_FIBER_MEDIA_CONF |
49113d5e0c3f3f drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-06-05  1415  			  PROC_CMD_FIBER_PORT(vsc8531->addr) |
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1416  			  PROC_CMD_FIBER_DISABLE |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1417  			  PROC_CMD_READ_MOD_WRITE_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1418  			  PROC_CMD_RST_CONF_PORT | PROC_CMD_FIBER_100BASE_FX);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1419  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1420  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1421  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1422  	/* Disable SerDes for 1000Base-X */
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1423  	ret = vsc8584_cmd(phydev, PROC_CMD_FIBER_MEDIA_CONF |
49113d5e0c3f3f drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-06-05  1424  			  PROC_CMD_FIBER_PORT(vsc8531->addr) |
deb04e9c0ff2b4 drivers/net/phy/mscc/mscc_main.c Michael Walle     2020-05-06  1425  			  PROC_CMD_FIBER_DISABLE |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1426  			  PROC_CMD_READ_MOD_WRITE_PORT |
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1427  			  PROC_CMD_RST_CONF_PORT | PROC_CMD_FIBER_1000BASE_X);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1428  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1429  		goto err;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1430  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08 @1431  	mutex_unlock(&phydev->mdio.bus->mdio_lock);
                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1432  
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1433  	ret = vsc8584_macsec_init(phydev);
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1434  	if (ret)
fa164e40c53b38 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-13  1435  		return ret;
1bbe0ecc2a1a00 drivers/net/phy/mscc.c           Antoine Tenart    2020-01-13  1436  
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1437  	ret = vsc8584_ptp_init(phydev);
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1438  	if (ret)
b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1439  		goto err;
                                                                                                ^^^^^^^^
This should be a direct return.


b3225965b276bd drivers/net/phy/mscc/mscc_main.c Quentin Schulz    2020-06-23  1440  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1441  	phy_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_STANDARD);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1442  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1443  	val = phy_read(phydev, MSCC_PHY_EXT_PHY_CNTL_1);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1444  	val &= ~(MEDIA_OP_MODE_MASK | VSC8584_MAC_IF_SELECTION_MASK);
1ac7b090ec4618 drivers/net/phy/mscc.c           Antoine Tenart    2020-02-26  1445  	val |= (MEDIA_OP_MODE_COPPER << MEDIA_OP_MODE_POS) |
1ac7b090ec4618 drivers/net/phy/mscc.c           Antoine Tenart    2020-02-26  1446  	       (VSC8584_MAC_IF_SELECTION_SGMII << VSC8584_MAC_IF_SELECTION_POS);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1447  	ret = phy_write(phydev, MSCC_PHY_EXT_PHY_CNTL_1, val);
09d65e6d631c05 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1448  	if (ret)
09d65e6d631c05 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1449  		return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1450  
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1451  	if (phy_interface_is_rgmii(phydev)) {
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1452  		ret = vsc85xx_rgmii_set_skews(phydev, VSC8572_RGMII_CNTL,
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1453  					      VSC8572_RGMII_RX_DELAY_MASK,
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1454  					      VSC8572_RGMII_TX_DELAY_MASK);
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1455  		if (ret)
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1456  			return ret;
2283a02b67d412 drivers/net/phy/mscc/mscc_main.c Vladimir Oltean   2020-03-24  1457  	}
dee48f78d02e15 drivers/net/phy/mscc/mscc_main.c Antoine Tenart    2020-03-19  1458  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1459  	ret = genphy_soft_reset(phydev);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1460  	if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1461  		return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1462  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1463  	for (i = 0; i < vsc8531->nleds; i++) {
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1464  		ret = vsc85xx_led_cntl_set(phydev, i, vsc8531->leds_mode[i]);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1465  		if (ret)
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1466  			return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1467  	}
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1468  
c227ce4423855b drivers/net/phy/mscc.c           Heiner Kallweit   2019-08-17  1469  	return 0;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1470  
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1471  err:
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08 @1472  	mutex_unlock(&phydev->mdio.bus->mdio_lock);
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1473  	return ret;
a5afc1678044a3 drivers/net/phy/mscc.c           Quentin Schulz    2018-10-08  1474  }

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 33424 bytes --]

  reply	other threads:[~2020-06-25 11:52 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-23 14:30 [PATCH net-next v4 0/8] net: phy: mscc: PHC and timestamping support Antoine Tenart
2020-06-23 14:30 ` [PATCH net-next v4 1/8] net: phy: add support for a common probe between shared PHYs Antoine Tenart
2020-06-23 14:30 ` [PATCH net-next v4 2/8] net: phy: mscc: fix copyright and author information in MACsec Antoine Tenart
2020-06-23 14:30 ` [PATCH net-next v4 3/8] net: phy: mscc: remove the TR CLK disable magic value Antoine Tenart
2020-06-23 14:30 ` [PATCH net-next v4 4/8] net: phy: mscc: take into account the 1588 block in MACsec init Antoine Tenart
2020-06-23 14:30 ` [PATCH net-next v4 5/8] net: phy: mscc: 1588 block initialization Antoine Tenart
2020-06-25 11:52   ` Dan Carpenter [this message]
2020-06-25 11:52     ` Dan Carpenter
2020-06-25 11:52     ` Dan Carpenter
2020-06-23 14:30 ` [PATCH net-next v4 6/8] net: phy: mscc: timestamping and PHC support Antoine Tenart
2020-06-25 13:22   ` Richard Cochran
2020-06-25 13:38     ` Antoine Tenart
2020-06-23 14:30 ` [PATCH net-next v4 7/8] dt-bindings: net: phy: vsc8531: document the load/save GPIO Antoine Tenart
2020-06-23 14:30 ` [PATCH net-next v4 8/8] MIPS: dts: ocelot: describe " Antoine Tenart
2020-06-24 21:33 ` [PATCH net-next v4 0/8] net: phy: mscc: PHC and timestamping support David Miller
  -- strict thread matches above, loose matches on Subject: below --
2020-06-25  2:04 [PATCH net-next v4 5/8] net: phy: mscc: 1588 block initialization kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200625115215.GD2549@kadam \
    --to=dan.carpenter@oracle.com \
    --cc=kbuild@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.