Re: [PATCH v2] net: ethernet: ti: am65-cpsw-qos: Add Frame Preemption MAC Merge support

From: kernel test robot
Date: Sun Aug 13 2023 - 03:51:35 EST


Hi Roger,

kernel test robot noticed the following build warnings:

[auto build test WARNING on net-next/main]
[also build test WARNING on net/main linus/master v6.5-rc5 next-20230809]
[cannot apply to horms-ipvs/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Roger-Quadros/net-ethernet-ti-am65-cpsw-qos-Add-Frame-Preemption-MAC-Merge-support/20230810-232714
base: net-next/main
patch link: https://lore.kernel.org/r/20230810152538.138718-1-rogerq%40kernel.org
patch subject: [PATCH v2] net: ethernet: ti: am65-cpsw-qos: Add Frame Preemption MAC Merge support
config: arm64-allyesconfig (https://download.01.org/0day-ci/archive/20230813/202308131536.NSsIpOzG-lkp@xxxxxxxxx/config)
compiler: aarch64-linux-gcc (GCC) 12.3.0
reproduce: (https://download.01.org/0day-ci/archive/20230813/202308131536.NSsIpOzG-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202308131536.NSsIpOzG-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

drivers/net/ethernet/ti/am65-cpsw-ethtool.c: In function 'am65_cpsw_get_mm':
>> drivers/net/ethernet/ti/am65-cpsw-ethtool.c:749:56: warning: variable 'verify_cnt' set but not used [-Wunused-but-set-variable]
749 | u32 port_ctrl, cmn_ctrl, iet_ctrl, iet_status, verify_cnt;
| ^~~~~~~~~~
>> drivers/net/ethernet/ti/am65-cpsw-ethtool.c:749:24: warning: variable 'cmn_ctrl' set but not used [-Wunused-but-set-variable]
749 | u32 port_ctrl, cmn_ctrl, iet_ctrl, iet_status, verify_cnt;
| ^~~~~~~~
--
>> drivers/net/ethernet/ti/am65-cpsw-qos.c:196:6: warning: no previous prototype for 'am65_cpsw_iet_change_preemptible_tcs' [-Wmissing-prototypes]
196 | void am65_cpsw_iet_change_preemptible_tcs(struct am65_cpsw_port *port, u8 preemptible_tcs)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/ti/am65-cpsw-qos.c:202:6: warning: no previous prototype for 'am65_cpsw_iet_link_state_update' [-Wmissing-prototypes]
202 | void am65_cpsw_iet_link_state_update(struct net_device *ndev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


vim +/verify_cnt +749 drivers/net/ethernet/ti/am65-cpsw-ethtool.c

745
746 static int am65_cpsw_get_mm(struct net_device *ndev, struct ethtool_mm_state *state)
747 {
748 struct am65_cpsw_common *common = am65_ndev_to_common(ndev);
> 749 u32 port_ctrl, cmn_ctrl, iet_ctrl, iet_status, verify_cnt;
750 struct am65_cpsw_port *port = am65_ndev_to_port(ndev);
751 struct am65_cpsw_ndev_priv *priv = netdev_priv(ndev);
752 u32 add_frag_size;
753
754 mutex_lock(&priv->mm_lock);
755
756 iet_ctrl = readl(port->port_base + AM65_CPSW_PN_REG_IET_CTRL);
757 cmn_ctrl = readl(common->cpsw_base + AM65_CPSW_REG_CTL);
758 port_ctrl = readl(port->port_base + AM65_CPSW_PN_REG_CTL);
759
760 state->tx_enabled = !!(iet_ctrl & AM65_CPSW_PN_IET_MAC_PENABLE);
761 state->pmac_enabled = !!(port_ctrl & AM65_CPSW_PN_CTL_IET_PORT_EN);
762
763 iet_status = readl(port->port_base + AM65_CPSW_PN_REG_IET_STATUS);
764
765 if (iet_ctrl & AM65_CPSW_PN_IET_MAC_DISABLEVERIFY)
766 state->verify_status = ETHTOOL_MM_VERIFY_STATUS_DISABLED;
767 else if (iet_status & AM65_CPSW_PN_MAC_VERIFIED)
768 state->verify_status = ETHTOOL_MM_VERIFY_STATUS_SUCCEEDED;
769 else if (iet_status & AM65_CPSW_PN_MAC_VERIFY_FAIL)
770 state->verify_status = ETHTOOL_MM_VERIFY_STATUS_FAILED;
771 else
772 state->verify_status = ETHTOOL_MM_VERIFY_STATUS_UNKNOWN;
773
774 add_frag_size = AM65_CPSW_PN_IET_MAC_GET_ADDFRAGSIZE(iet_ctrl);
775 state->tx_min_frag_size = ethtool_mm_frag_size_add_to_min(add_frag_size);
776
777 /* Errata i2208: RX min fragment size cannot be less than 124 */
778 state->rx_min_frag_size = 124;
779
780 /* FPE active if common tx_enabled and verification success or disabled (forced) */
781 state->tx_active = state->tx_enabled &&
782 (state->verify_status == ETHTOOL_MM_VERIFY_STATUS_SUCCEEDED ||
783 state->verify_status == ETHTOOL_MM_VERIFY_STATUS_DISABLED);
784 state->verify_enabled = !(iet_ctrl & AM65_CPSW_PN_IET_MAC_DISABLEVERIFY);
785
786 verify_cnt = AM65_CPSW_PN_MAC_GET_VERIFY_CNT(readl(port->port_base +
787 AM65_CPSW_PN_REG_IET_VERIFY));
788 state->verify_time = port->qos.iet.verify_time_ms;
789 state->max_verify_time = am65_cpsw_iet_get_verify_timeout_ms(AM65_CPSW_PN_MAC_VERIFY_CNT_MASK,
790 port);
791 mutex_unlock(&priv->mm_lock);
792
793 return 0;
794 }
795

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki