lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201902271458.s9IERHtC%fengguang.wu@intel.com>
Date:   Wed, 27 Feb 2019 14:47:55 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Tristram.Ha@...rochip.com
Cc:     kbuild-all@...org, Andrew Lunn <andrew@...n.ch>,
        Florian Fainelli <f.fainelli@...il.com>,
        Pavel Machek <pavel@....cz>,
        Tristram Ha <Tristram.Ha@...rochip.com>,
        UNGLinuxDriver@...rochip.com, netdev@...r.kernel.org
Subject: Re: [PATCH net-next 3/3] net: dsa: microchip: add other KSZ9477
 switch variants

Hi Tristram,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on net-next/master]

url:    https://github.com/0day-ci/linux/commits/Tristram-Ha-microchip-com/net-dsa-microchip-add-KSZ9893-switch-support/20190227-141333
config: i386-randconfig-x009-201908 (attached as .config)
compiler: gcc-8 (Debian 8.2.0-20) 8.2.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   drivers/net/dsa/microchip/ksz9477.c: In function 'ksz9477_switch_detect':
>> drivers/net/dsa/microchip/ksz9477.c:1516:8: error: implicit declaration of function 'of_modalias_node'; did you mean 'of_match_node'? [-Werror=implicit-function-declaration]
      if (!of_modalias_node(dev->dev->of_node, name, sizeof(name))) {
           ^~~~~~~~~~~~~~~~
           of_match_node
   cc1: some warnings being treated as errors

vim +1516 drivers/net/dsa/microchip/ksz9477.c

  1433	
  1434	static int ksz9477_switch_detect(struct ksz_device *dev)
  1435	{
  1436		int chip = -1;
  1437		u8 data8;
  1438		u8 id_hi;
  1439		u8 id_lo;
  1440		u32 id32;
  1441		int ret;
  1442	
  1443		/* turn off SPI DO Edge select */
  1444		ret = ksz_read8(dev, REG_SW_GLOBAL_SERIAL_CTRL_0, &data8);
  1445		if (ret)
  1446			return ret;
  1447	
  1448		data8 &= ~SPI_AUTO_EDGE_DETECTION;
  1449		ret = ksz_write8(dev, REG_SW_GLOBAL_SERIAL_CTRL_0, data8);
  1450		if (ret)
  1451			return ret;
  1452	
  1453		/* read chip id */
  1454		ret = ksz_read32(dev, REG_CHIP_ID0__1, &id32);
  1455		if (ret)
  1456			return ret;
  1457		ret = ksz_read8(dev, REG_GLOBAL_OPTIONS, &data8);
  1458		if (ret)
  1459			return ret;
  1460	
  1461		/* Number of ports can be reduced depending on chip. */
  1462		dev->mib_port_cnt = TOTAL_PORT_NUM;
  1463		dev->phy_port_cnt = 5;
  1464	
  1465		/* Default capability is gigabit capable. */
  1466		dev->features = GBIT_SUPPORT;
  1467	
  1468		id_hi = (u8)(id32 >> 16);
  1469		id_lo = (u8)(id32 >> 8);
  1470		if ((id_lo & 0xf) == 3) {
  1471			/* Chip is from KSZ9893 design. */
  1472			dev->features |= IS_9893;
  1473	
  1474			/* Chip does not support gigabit. */
  1475			if (data8 & SW_QW_ABLE)
  1476				dev->features &= ~GBIT_SUPPORT;
  1477			dev->mib_port_cnt = 3;
  1478			dev->phy_port_cnt = 2;
  1479			if (!(data8 & SW_AVB_ABLE))
  1480				chip = KSZ9893_SW_CHIP;
  1481			else if (data8 & SW_QW_ABLE)
  1482				chip = KSZ8563_SW_CHIP;
  1483			else
  1484				chip = KSZ9563_SW_CHIP;
  1485		} else {
  1486			/* Chip uses new XMII register definitions. */
  1487			dev->features |= NEW_XMII;
  1488	
  1489			/* Chip does not support gigabit. */
  1490			if (!(data8 & SW_GIGABIT_ABLE))
  1491				dev->features &= ~GBIT_SUPPORT;
  1492			if ((id_lo & 0xf) == 6)
  1493				dev->mib_port_cnt = 6;
  1494			if (id_hi == FAMILY_ID_94)
  1495				chip = KSZ9477_SW_CHIP;
  1496			else if (id_hi == FAMILY_ID_98 && id_lo == CHIP_ID_97)
  1497				chip = KSZ9897_SW_CHIP;
  1498			else if (id_hi == FAMILY_ID_98 && id_lo == CHIP_ID_96)
  1499				chip = KSZ9896_SW_CHIP;
  1500			else if (id_hi == FAMILY_ID_95 && id_lo == CHIP_ID_67)
  1501				chip = KSZ9567_SW_CHIP;
  1502			else if (id_hi == FAMILY_ID_85 && id_lo == CHIP_ID_67)
  1503				chip = KSZ8567_SW_CHIP;
  1504			if (id_lo == CHIP_ID_67) {
  1505				id_hi = FAMILY_ID_98;
  1506				id_lo = CHIP_ID_97;
  1507			} else if (id_lo == CHIP_ID_66) {
  1508				id_hi = FAMILY_ID_98;
  1509				id_lo = CHIP_ID_96;
  1510			}
  1511		}
  1512		if (dev->dev->of_node) {
  1513			char name[80];
  1514	
  1515			/* KSZ8565 chip can only be set through device tree. */
> 1516			if (!of_modalias_node(dev->dev->of_node, name, sizeof(name))) {
  1517				if (!strcmp(name, "ksz8565")) {
  1518					chip = KSZ8565_SW_CHIP;
  1519					id_hi = FAMILY_ID_98;
  1520					id_lo = 0x95;
  1521				}
  1522			}
  1523		}
  1524	
  1525		/* Change chip id to known ones so it can be matched against them. */
  1526		id32 = (id_hi << 16) | (id_lo << 8);
  1527	
  1528		dev->chip_id = id32;
  1529	
  1530		/* Update switch device name to matched chip. */
  1531		if (chip >= 0)
  1532			dev->name = ksz9477_chip_names[chip];
  1533	
  1534		return 0;
  1535	}
  1536	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (31591 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ