Hi Robert,

I love your patch! Yet something to improve:

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

url:    
https://github.com/0day-ci/linux/commits/Robert-Marko/Add-support-for-Qualcomm-QCA807x-PHYs/20210210-210217
base:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 
de1db4a6ed6241e34cab0e5059d4b56f6bae39b9
config: arm64-allyesconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.0
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
        # 
https://github.com/0day-ci/linux/commit/bf3f094b38fe42c313ba63d67c21b64cffb7f7b1
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review 
Robert-Marko/Add-support-for-Qualcomm-QCA807x-PHYs/20210210-210217
        git checkout bf3f094b38fe42c313ba63d67c21b64cffb7f7b1
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross 
ARCH=arm64 

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

All errors (new ones prefixed by >>):

   drivers/net/phy/qca807x.c: In function 'qca807x_read_copper_status':
>> drivers/net/phy/qca807x.c:404:12: error: 'struct phy_device' has no member 
>> named 'port'
     404 |  if (phydev->port != PORT_TP)
         |            ^~
   drivers/net/phy/qca807x.c:405:9: error: 'struct phy_device' has no member 
named 'port'
     405 |   phydev->port = PORT_TP;
         |         ^~
   drivers/net/phy/qca807x.c: In function 'qca807x_read_fiber_status':
   drivers/net/phy/qca807x.c:494:12: error: 'struct phy_device' has no member 
named 'port'
     494 |  if (phydev->port != PORT_FIBRE)
         |            ^~
   drivers/net/phy/qca807x.c:495:9: error: 'struct phy_device' has no member 
named 'port'
     495 |   phydev->port = PORT_FIBRE;
         |         ^~


vim +404 drivers/net/phy/qca807x.c

   399  
   400  static int qca807x_read_copper_status(struct phy_device *phydev, bool 
combo_port)
   401  {
   402          int ss, err, page, old_link = phydev->link;
   403  
 > 404          if (phydev->port != PORT_TP)
   405                  phydev->port = PORT_TP;
   406  
   407          /* Only combo port has dual pages */
   408          if (combo_port) {
   409                  /* Check whether copper page is set and set if needed */
   410                  page = phy_read(phydev, QCA807X_CHIP_CONFIGURATION);
   411                  if (!(page & QCA807X_BT_BX_REG_SEL)) {
   412                          page |= QCA807X_BT_BX_REG_SEL;
   413                          phy_write(phydev, QCA807X_CHIP_CONFIGURATION, 
page);
   414                  }
   415          }
   416  
   417          /* Update the link, but return if there was an error */
   418          err = genphy_update_link(phydev);
   419          if (err)
   420                  return err;
   421  
   422          /* why bother the PHY if nothing can have changed */
   423          if (phydev->autoneg == AUTONEG_ENABLE && old_link && 
phydev->link)
   424                  return 0;
   425  
   426          phydev->speed = SPEED_UNKNOWN;
   427          phydev->duplex = DUPLEX_UNKNOWN;
   428          phydev->pause = 0;
   429          phydev->asym_pause = 0;
   430  
   431          err = genphy_read_lpa(phydev);
   432          if (err < 0)
   433                  return err;
   434  
   435          /* Read the QCA807x PHY-Specific Status register copper page,
   436           * which indicates the speed and duplex that the PHY is actually
   437           * using, irrespective of whether we are in autoneg mode or not.
   438           */
   439          ss = phy_read(phydev, QCA807X_PHY_SPECIFIC_STATUS);
   440          if (ss < 0)
   441                  return ss;
   442  
   443          if (ss & QCA807X_SS_SPEED_AND_DUPLEX_RESOLVED) {
   444                  int sfc;
   445  
   446                  sfc = phy_read(phydev, QCA807X_FUNCTION_CONTROL);
   447                  if (sfc < 0)
   448                          return sfc;
   449  
   450                  switch (FIELD_GET(QCA807X_SS_SPEED_MASK, ss)) {
   451                  case QCA807X_SS_SPEED_10:
   452                          phydev->speed = SPEED_10;
   453                          break;
   454                  case QCA807X_SS_SPEED_100:
   455                          phydev->speed = SPEED_100;
   456                          break;
   457                  case QCA807X_SS_SPEED_1000:
   458                          phydev->speed = SPEED_1000;
   459                          break;
   460                  }
   461                  if (ss & QCA807X_SS_DUPLEX)
   462                          phydev->duplex = DUPLEX_FULL;
   463                  else
   464                          phydev->duplex = DUPLEX_HALF;
   465  
   466                  if (ss & QCA807X_SS_MDIX)
   467                          phydev->mdix = ETH_TP_MDI_X;
   468                  else
   469                          phydev->mdix = ETH_TP_MDI;
   470  
   471                  switch (FIELD_GET(QCA807X_FC_MDI_CROSSOVER_MODE_MASK, 
sfc)) {
   472                  case QCA807X_FC_MDI_CROSSOVER_MANUAL_MDI:
   473                          phydev->mdix_ctrl = ETH_TP_MDI;
   474                          break;
   475                  case QCA807X_FC_MDI_CROSSOVER_MANUAL_MDIX:
   476                          phydev->mdix_ctrl = ETH_TP_MDI_X;
   477                          break;
   478                  case QCA807X_FC_MDI_CROSSOVER_AUTO:
   479                          phydev->mdix_ctrl = ETH_TP_MDI_AUTO;
   480                          break;
   481                  }
   482          }
   483  
   484          if (phydev->autoneg == AUTONEG_ENABLE && 
phydev->autoneg_complete)
   485                  phy_resolve_aneg_pause(phydev);
   486  
   487          return 0;
   488  }
   489  

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

Attachment: .config.gz
Description: application/gzip

Reply via email to