All of lore.kernel.org
 help / color / mirror / Atom feed
* [net-next:master 367/387] drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c:224:11: error: 'DCBX_APP_SF_DEFAULT' undeclared
@ 2016-02-17  7:57 kbuild test robot
  0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2016-02-17  7:57 UTC (permalink / raw)
  To: Yuval Mintz; +Cc: kbuild-all, netdev, Ariel Elior

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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git master
head:   547b9ca879eafeb3507c00dc77002953c9c04b0b
commit: e5d3a51cefbb08c8b8c521f627aef1f998834530 [367/387] bnx2x: extend DCBx support
config: powerpc-defconfig (attached as .config)
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout e5d3a51cefbb08c8b8c521f627aef1f998834530
        # save the attached .config to linux build tree
        make.cross ARCH=powerpc 

All errors (new ones prefixed by >>):

   In file included from drivers/net/ethernet/broadcom/bnx2x/bnx2x.h:56:0,
                    from drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c:30:
   drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c: In function 'bnx2x_dcbx_get_ap_feature':
>> drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c:224:11: error: 'DCBX_APP_SF_DEFAULT' undeclared (first use in this function)
              DCBX_APP_SF_DEFAULT) &&
              ^
   drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.h:120:45: note: in definition of macro 'GET_FLAGS'
    #define GET_FLAGS(flags, bits)  ((flags) & (bits))
                                                ^
   drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c:224:11: note: each undeclared identifier is reported only once for each function it appears in
              DCBX_APP_SF_DEFAULT) &&
              ^
   drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.h:120:45: note: in definition of macro 'GET_FLAGS'
    #define GET_FLAGS(flags, bits)  ((flags) & (bits))
                                                ^

vim +/DCBX_APP_SF_DEFAULT +224 drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c

    24	#include <linux/netdevice.h>
    25	#include <linux/types.h>
    26	#include <linux/errno.h>
    27	#include <linux/rtnetlink.h>
    28	#include <net/dcbnl.h>
    29	
  > 30	#include "bnx2x.h"
    31	#include "bnx2x_cmn.h"
    32	#include "bnx2x_dcb.h"
    33	
    34	/* forward declarations of dcbx related functions */
    35	static void bnx2x_pfc_set_pfc(struct bnx2x *bp);
    36	static void bnx2x_dcbx_update_ets_params(struct bnx2x *bp);
    37	static void bnx2x_dcbx_get_ets_pri_pg_tbl(struct bnx2x *bp,
    38						  u32 *set_configuration_ets_pg,
    39						  u32 *pri_pg_tbl);
    40	static void bnx2x_dcbx_get_num_pg_traf_type(struct bnx2x *bp,
    41						    u32 *pg_pri_orginal_spread,
    42						    struct pg_help_data *help_data);
    43	static void bnx2x_dcbx_fill_cos_params(struct bnx2x *bp,
    44					       struct pg_help_data *help_data,
    45					       struct dcbx_ets_feature *ets,
    46					       u32 *pg_pri_orginal_spread);
    47	static void bnx2x_dcbx_separate_pauseable_from_non(struct bnx2x *bp,
    48					struct cos_help_data *cos_data,
    49					u32 *pg_pri_orginal_spread,
    50					struct dcbx_ets_feature *ets);
    51	static void bnx2x_dcbx_fw_struct(struct bnx2x *bp,
    52					 struct bnx2x_func_tx_start_params*);
    53	
    54	/* helpers: read/write len bytes from addr into buff by REG_RD/REG_WR */
    55	static void bnx2x_read_data(struct bnx2x *bp, u32 *buff,
    56					   u32 addr, u32 len)
    57	{
    58		int i;
    59		for (i = 0; i < len; i += 4, buff++)
    60			*buff = REG_RD(bp, addr + i);
    61	}
    62	
    63	static void bnx2x_write_data(struct bnx2x *bp, u32 *buff,
    64					    u32 addr, u32 len)
    65	{
    66		int i;
    67		for (i = 0; i < len; i += 4, buff++)
    68			REG_WR(bp, addr + i, *buff);
    69	}
    70	
    71	static void bnx2x_pfc_set(struct bnx2x *bp)
    72	{
    73		struct bnx2x_nig_brb_pfc_port_params pfc_params = {0};
    74		u32 pri_bit, val = 0;
    75		int i;
    76	
    77		pfc_params.num_of_rx_cos_priority_mask =
    78						bp->dcbx_port_params.ets.num_of_cos;
    79	
    80		/* Tx COS configuration */
    81		for (i = 0; i < bp->dcbx_port_params.ets.num_of_cos; i++)
    82			/*
    83			 * We configure only the pauseable bits (non pauseable aren't
    84			 * configured at all) it's done to avoid false pauses from
    85			 * network
    86			 */
    87			pfc_params.rx_cos_priority_mask[i] =
    88				bp->dcbx_port_params.ets.cos_params[i].pri_bitmask
    89					& DCBX_PFC_PRI_PAUSE_MASK(bp);
    90	
    91		/*
    92		 * Rx COS configuration
    93		 * Changing PFC RX configuration .
    94		 * In RX COS0 will always be configured to lossless and COS1 to lossy
    95		 */
    96		for (i = 0 ; i < MAX_PFC_PRIORITIES ; i++) {
    97			pri_bit = 1 << i;
    98	
    99			if (!(pri_bit & DCBX_PFC_PRI_PAUSE_MASK(bp)))
   100				val |= 1 << (i * 4);
   101		}
   102	
   103		pfc_params.pkt_priority_to_cos = val;
   104	
   105		/* RX COS0 */
   106		pfc_params.llfc_low_priority_classes = DCBX_PFC_PRI_PAUSE_MASK(bp);
   107		/* RX COS1 */
   108		pfc_params.llfc_high_priority_classes = 0;
   109	
   110		bnx2x_acquire_phy_lock(bp);
   111		bp->link_params.feature_config_flags |= FEATURE_CONFIG_PFC_ENABLED;
   112		bnx2x_update_pfc(&bp->link_params, &bp->link_vars, &pfc_params);
   113		bnx2x_release_phy_lock(bp);
   114	}
   115	
   116	static void bnx2x_pfc_clear(struct bnx2x *bp)
   117	{
   118		struct bnx2x_nig_brb_pfc_port_params nig_params = {0};
   119		nig_params.pause_enable = 1;
   120		bnx2x_acquire_phy_lock(bp);
   121		bp->link_params.feature_config_flags &= ~FEATURE_CONFIG_PFC_ENABLED;
   122		bnx2x_update_pfc(&bp->link_params, &bp->link_vars, &nig_params);
   123		bnx2x_release_phy_lock(bp);
   124	}
   125	
   126	static void  bnx2x_dump_dcbx_drv_param(struct bnx2x *bp,
   127					       struct dcbx_features *features,
   128					       u32 error)
   129	{
   130		u8 i = 0;
   131		DP(NETIF_MSG_LINK, "local_mib.error %x\n", error);
   132	
   133		/* PG */
   134		DP(NETIF_MSG_LINK,
   135		   "local_mib.features.ets.enabled %x\n", features->ets.enabled);
   136		for (i = 0; i < DCBX_MAX_NUM_PG_BW_ENTRIES; i++)
   137			DP(NETIF_MSG_LINK,
   138			   "local_mib.features.ets.pg_bw_tbl[%d] %d\n", i,
   139			   DCBX_PG_BW_GET(features->ets.pg_bw_tbl, i));
   140		for (i = 0; i < DCBX_MAX_NUM_PRI_PG_ENTRIES; i++)
   141			DP(NETIF_MSG_LINK,
   142			   "local_mib.features.ets.pri_pg_tbl[%d] %d\n", i,
   143			   DCBX_PRI_PG_GET(features->ets.pri_pg_tbl, i));
   144	
   145		/* pfc */
   146		DP(BNX2X_MSG_DCB, "dcbx_features.pfc.pri_en_bitmap %x\n",
   147						features->pfc.pri_en_bitmap);
   148		DP(BNX2X_MSG_DCB, "dcbx_features.pfc.pfc_caps %x\n",
   149						features->pfc.pfc_caps);
   150		DP(BNX2X_MSG_DCB, "dcbx_features.pfc.enabled %x\n",
   151						features->pfc.enabled);
   152	
   153		DP(BNX2X_MSG_DCB, "dcbx_features.app.default_pri %x\n",
   154						features->app.default_pri);
   155		DP(BNX2X_MSG_DCB, "dcbx_features.app.tc_supported %x\n",
   156						features->app.tc_supported);
   157		DP(BNX2X_MSG_DCB, "dcbx_features.app.enabled %x\n",
   158						features->app.enabled);
   159		for (i = 0; i < DCBX_MAX_APP_PROTOCOL; i++) {
   160			DP(BNX2X_MSG_DCB,
   161			   "dcbx_features.app.app_pri_tbl[%x].app_id %x\n",
   162			   i, features->app.app_pri_tbl[i].app_id);
   163			DP(BNX2X_MSG_DCB,
   164			   "dcbx_features.app.app_pri_tbl[%x].pri_bitmap %x\n",
   165			   i, features->app.app_pri_tbl[i].pri_bitmap);
   166			DP(BNX2X_MSG_DCB,
   167			   "dcbx_features.app.app_pri_tbl[%x].appBitfield %x\n",
   168			   i, features->app.app_pri_tbl[i].appBitfield);
   169		}
   170	}
   171	
   172	static void bnx2x_dcbx_get_ap_priority(struct bnx2x *bp,
   173					       u8 pri_bitmap,
   174					       u8 llfc_traf_type)
   175	{
   176		u32 pri = MAX_PFC_PRIORITIES;
   177		u32 index = MAX_PFC_PRIORITIES - 1;
   178		u32 pri_mask;
   179		u32 *ttp = bp->dcbx_port_params.app.traffic_type_priority;
   180	
   181		/* Choose the highest priority */
   182		while ((MAX_PFC_PRIORITIES == pri) && (0 != index)) {
   183			pri_mask = 1 << index;
   184			if (GET_FLAGS(pri_bitmap, pri_mask))
   185				pri = index ;
   186			index--;
   187		}
   188	
   189		if (pri < MAX_PFC_PRIORITIES)
   190			ttp[llfc_traf_type] = max_t(u32, ttp[llfc_traf_type], pri);
   191	}
   192	
   193	static void bnx2x_dcbx_get_ap_feature(struct bnx2x *bp,
   194					   struct dcbx_app_priority_feature *app,
   195					   u32 error) {
   196		u8 index;
   197		u32 *ttp = bp->dcbx_port_params.app.traffic_type_priority;
   198		u8 iscsi_pri_found = 0, fcoe_pri_found = 0;
   199	
   200		if (GET_FLAGS(error, DCBX_LOCAL_APP_ERROR))
   201			DP(BNX2X_MSG_DCB, "DCBX_LOCAL_APP_ERROR\n");
   202	
   203		if (GET_FLAGS(error, DCBX_LOCAL_APP_MISMATCH))
   204			DP(BNX2X_MSG_DCB, "DCBX_LOCAL_APP_MISMATCH\n");
   205	
   206		if (GET_FLAGS(error, DCBX_REMOTE_APP_TLV_NOT_FOUND))
   207			DP(BNX2X_MSG_DCB, "DCBX_REMOTE_APP_TLV_NOT_FOUND\n");
   208		if (app->enabled &&
   209		    !GET_FLAGS(error, DCBX_LOCAL_APP_ERROR | DCBX_LOCAL_APP_MISMATCH |
   210				      DCBX_REMOTE_APP_TLV_NOT_FOUND)) {
   211	
   212			bp->dcbx_port_params.app.enabled = true;
   213	
   214			/* Use 0 as the default application priority for all. */
   215			for (index = 0 ; index < LLFC_DRIVER_TRAFFIC_TYPE_MAX; index++)
   216				ttp[index] = 0;
   217	
   218			for (index = 0 ; index < DCBX_MAX_APP_PROTOCOL; index++) {
   219				struct dcbx_app_priority_entry *entry =
   220								app->app_pri_tbl;
   221				enum traffic_type type = MAX_TRAFFIC_TYPE;
   222	
   223				if (GET_FLAGS(entry[index].appBitfield,
 > 224					      DCBX_APP_SF_DEFAULT) &&
   225				    GET_FLAGS(entry[index].appBitfield,
   226					      DCBX_APP_SF_ETH_TYPE)) {
   227					type = LLFC_TRAFFIC_TYPE_NW;

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

[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 21907 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-02-17  7:58 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-17  7:57 [net-next:master 367/387] drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c:224:11: error: 'DCBX_APP_SF_DEFAULT' undeclared kbuild test robot

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.