net: Use NULL to signal lack of promisc/multicast
[akaros.git] / kern / drivers / net / bnx2x / bnx2x_dcb.c
index 423d3e2..7400456 100644 (file)
@@ -17,7 +17,7 @@
  *
  */
 
-#include "akaros_compat.h"
+#include <linux_compat.h>
 
 #include "bnx2x.h"
 #include "bnx2x_cmn.h"
@@ -179,7 +179,7 @@ static void bnx2x_dcbx_get_ap_priority(struct bnx2x *bp,
        }
 
        if (pri < MAX_PFC_PRIORITIES)
-               ttp[llfc_traf_type] = max_t(uint32_t, ttp[llfc_traf_type],
+               ttp[llfc_traf_type] = MAX_T(uint32_t, ttp[llfc_traf_type],
                                            pri);
 }
 
@@ -1698,10 +1698,9 @@ static void bnx2x_dcbx_cee_fill_cos_params(struct bnx2x *bp,
 
                        entry++;
                } else {
-                       need_num_of_entries =  min_t(uint8_t,
-                               (uint8_t)pg->num_of_dif_pri,
-                               (uint8_t)DCBX_COS_MAX_NUM_E3B0 -
-                                                help_data->num_of_pg + 1);
+                       need_num_of_entries =  MIN_T(uint8_t,
+                                                    (uint8_t)pg->num_of_dif_pri,
+                                                    (uint8_t)DCBX_COS_MAX_NUM_E3B0 - help_data->num_of_pg + 1);
                        /*
                         * If there are still VOQ-s which have no associated PG,
                         * then associate these VOQ-s to PG15. These PG-s will
@@ -1904,14 +1903,14 @@ static inline bool bnx2x_dcbnl_set_valid(struct bnx2x *bp)
        return bp->dcb_state && bp->dcbx_mode_uset;
 }
 
-static uint8_t bnx2x_dcbnl_get_state(struct net_device *netdev)
+static uint8_t bnx2x_dcbnl_get_state(struct ether *netdev)
 {
        struct bnx2x *bp = netdev_priv(netdev);
        DP(BNX2X_MSG_DCB, "state = %d\n", bp->dcb_state);
        return bp->dcb_state;
 }
 
-static uint8_t bnx2x_dcbnl_set_state(struct net_device *netdev, uint8_t state)
+static uint8_t bnx2x_dcbnl_set_state(struct ether *netdev, uint8_t state)
 {
        struct bnx2x *bp = netdev_priv(netdev);
        DP(BNX2X_MSG_DCB, "state = %s\n", state ? "on" : "off");
@@ -1927,14 +1926,14 @@ static uint8_t bnx2x_dcbnl_set_state(struct net_device *netdev, uint8_t state)
        return 0;
 }
 
-static void bnx2x_dcbnl_get_perm_hw_addr(struct net_device *netdev,
+static void bnx2x_dcbnl_get_perm_hw_addr(struct ether *netdev,
                                         uint8_t *perm_addr)
 {
        struct bnx2x *bp = netdev_priv(netdev);
        DP(BNX2X_MSG_DCB, "GET-PERM-ADDR\n");
 
        /* first the HW mac address */
-       memcpy(perm_addr, netdev->dev_addr, netdev->addr_len);
+       memcpy(perm_addr, netdev->ea, netdev->addr_len);
 
        if (CNIC_LOADED(bp))
                /* second SAN address */
@@ -1942,7 +1941,7 @@ static void bnx2x_dcbnl_get_perm_hw_addr(struct net_device *netdev,
                       netdev->addr_len);
 }
 
-static void bnx2x_dcbnl_set_pg_tccfg_tx(struct net_device *netdev, int prio,
+static void bnx2x_dcbnl_set_pg_tccfg_tx(struct ether *netdev, int prio,
                                        uint8_t prio_type, uint8_t pgid,
                                        uint8_t bw_pct,
                                        uint8_t up_map)
@@ -1970,7 +1969,7 @@ static void bnx2x_dcbnl_set_pg_tccfg_tx(struct net_device *netdev, int prio,
        bp->dcbx_config_params.admin_ets_configuration_tx_enable = 1;
 }
 
-static void bnx2x_dcbnl_set_pg_bwgcfg_tx(struct net_device *netdev,
+static void bnx2x_dcbnl_set_pg_bwgcfg_tx(struct ether *netdev,
                                         int pgid, uint8_t bw_pct)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -1983,7 +1982,7 @@ static void bnx2x_dcbnl_set_pg_bwgcfg_tx(struct net_device *netdev,
        bp->dcbx_config_params.admin_ets_configuration_tx_enable = 1;
 }
 
-static void bnx2x_dcbnl_set_pg_tccfg_rx(struct net_device *netdev, int prio,
+static void bnx2x_dcbnl_set_pg_tccfg_rx(struct ether *netdev, int prio,
                                        uint8_t prio_type, uint8_t pgid,
                                        uint8_t bw_pct,
                                        uint8_t up_map)
@@ -1992,14 +1991,14 @@ static void bnx2x_dcbnl_set_pg_tccfg_rx(struct net_device *netdev, int prio,
        DP(BNX2X_MSG_DCB, "Nothing to set; No RX support\n");
 }
 
-static void bnx2x_dcbnl_set_pg_bwgcfg_rx(struct net_device *netdev,
+static void bnx2x_dcbnl_set_pg_bwgcfg_rx(struct ether *netdev,
                                         int pgid, uint8_t bw_pct)
 {
        struct bnx2x *bp = netdev_priv(netdev);
        DP(BNX2X_MSG_DCB, "Nothing to set; No RX support\n");
 }
 
-static void bnx2x_dcbnl_get_pg_tccfg_tx(struct net_device *netdev, int prio,
+static void bnx2x_dcbnl_get_pg_tccfg_tx(struct ether *netdev, int prio,
                                        uint8_t *prio_type, uint8_t *pgid,
                                        uint8_t *bw_pct,
                                        uint8_t *up_map)
@@ -2027,7 +2026,7 @@ static void bnx2x_dcbnl_get_pg_tccfg_tx(struct net_device *netdev, int prio,
        *pgid = DCBX_PRI_PG_GET(bp->dcbx_local_feat.ets.pri_pg_tbl, prio);
 }
 
-static void bnx2x_dcbnl_get_pg_bwgcfg_tx(struct net_device *netdev,
+static void bnx2x_dcbnl_get_pg_bwgcfg_tx(struct ether *netdev,
                                         int pgid, uint8_t *bw_pct)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2041,7 +2040,7 @@ static void bnx2x_dcbnl_get_pg_bwgcfg_tx(struct net_device *netdev,
        *bw_pct = DCBX_PG_BW_GET(bp->dcbx_local_feat.ets.pg_bw_tbl, pgid);
 }
 
-static void bnx2x_dcbnl_get_pg_tccfg_rx(struct net_device *netdev, int prio,
+static void bnx2x_dcbnl_get_pg_tccfg_rx(struct ether *netdev, int prio,
                                        uint8_t *prio_type, uint8_t *pgid,
                                        uint8_t *bw_pct,
                                        uint8_t *up_map)
@@ -2052,7 +2051,7 @@ static void bnx2x_dcbnl_get_pg_tccfg_rx(struct net_device *netdev, int prio,
        *prio_type = *pgid = *bw_pct = *up_map = 0;
 }
 
-static void bnx2x_dcbnl_get_pg_bwgcfg_rx(struct net_device *netdev,
+static void bnx2x_dcbnl_get_pg_bwgcfg_rx(struct ether *netdev,
                                         int pgid, uint8_t *bw_pct)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2061,7 +2060,7 @@ static void bnx2x_dcbnl_get_pg_bwgcfg_rx(struct net_device *netdev,
        *bw_pct = 0;
 }
 
-static void bnx2x_dcbnl_set_pfc_cfg(struct net_device *netdev, int prio,
+static void bnx2x_dcbnl_set_pfc_cfg(struct ether *netdev, int prio,
                                    uint8_t setting)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2078,7 +2077,7 @@ static void bnx2x_dcbnl_set_pfc_cfg(struct net_device *netdev, int prio,
        }
 }
 
-static void bnx2x_dcbnl_get_pfc_cfg(struct net_device *netdev, int prio,
+static void bnx2x_dcbnl_get_pfc_cfg(struct ether *netdev, int prio,
                                    uint8_t *setting)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2092,7 +2091,7 @@ static void bnx2x_dcbnl_get_pfc_cfg(struct net_device *netdev, int prio,
        *setting = (bp->dcbx_local_feat.pfc.pri_en_bitmap >> prio) & 0x1;
 }
 
-static uint8_t bnx2x_dcbnl_set_all(struct net_device *netdev)
+static uint8_t bnx2x_dcbnl_set_all(struct ether *netdev)
 {
        struct bnx2x *bp = netdev_priv(netdev);
 
@@ -2117,7 +2116,7 @@ static uint8_t bnx2x_dcbnl_set_all(struct net_device *netdev)
        return 0;
 }
 
-static uint8_t bnx2x_dcbnl_get_cap(struct net_device *netdev, int capid,
+static uint8_t bnx2x_dcbnl_get_cap(struct ether *netdev, int capid,
                                   uint8_t *cap)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2163,7 +2162,7 @@ static uint8_t bnx2x_dcbnl_get_cap(struct net_device *netdev, int capid,
        return rval;
 }
 
-static int bnx2x_dcbnl_get_numtcs(struct net_device *netdev, int tcid,
+static int bnx2x_dcbnl_get_numtcs(struct ether *netdev, int tcid,
                                  uint8_t *num)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2194,7 +2193,7 @@ static int bnx2x_dcbnl_get_numtcs(struct net_device *netdev, int tcid,
        return rval;
 }
 
-static int bnx2x_dcbnl_set_numtcs(struct net_device *netdev, int tcid,
+static int bnx2x_dcbnl_set_numtcs(struct ether *netdev, int tcid,
                                  uint8_t num)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2202,7 +2201,7 @@ static int bnx2x_dcbnl_set_numtcs(struct net_device *netdev, int tcid,
        return -EINVAL;
 }
 
-static uint8_t bnx2x_dcbnl_get_pfc_state(struct net_device *netdev)
+static uint8_t bnx2x_dcbnl_get_pfc_state(struct ether *netdev)
 {
        struct bnx2x *bp = netdev_priv(netdev);
        DP(BNX2X_MSG_DCB, "state = %d\n", bp->dcbx_local_feat.pfc.enabled);
@@ -2213,7 +2212,7 @@ static uint8_t bnx2x_dcbnl_get_pfc_state(struct net_device *netdev)
        return bp->dcbx_local_feat.pfc.enabled;
 }
 
-static void bnx2x_dcbnl_set_pfc_state(struct net_device *netdev,
+static void bnx2x_dcbnl_set_pfc_state(struct ether *netdev,
                                      uint8_t state)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2308,7 +2307,7 @@ static int bnx2x_set_admin_app_up(struct bnx2x *bp, uint8_t idtype,
        return 0;
 }
 
-static int bnx2x_dcbnl_set_app_up(struct net_device *netdev, uint8_t idtype,
+static int bnx2x_dcbnl_set_app_up(struct ether *netdev, uint8_t idtype,
                                  uint16_t idval, uint8_t up)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2333,7 +2332,7 @@ static int bnx2x_dcbnl_set_app_up(struct net_device *netdev, uint8_t idtype,
        return bnx2x_set_admin_app_up(bp, idtype, idval, up);
 }
 
-static uint8_t bnx2x_dcbnl_get_dcbx(struct net_device *netdev)
+static uint8_t bnx2x_dcbnl_get_dcbx(struct ether *netdev)
 {
        struct bnx2x *bp = netdev_priv(netdev);
        uint8_t state;
@@ -2346,7 +2345,7 @@ static uint8_t bnx2x_dcbnl_get_dcbx(struct net_device *netdev)
        return state;
 }
 
-static uint8_t bnx2x_dcbnl_set_dcbx(struct net_device *netdev, uint8_t state)
+static uint8_t bnx2x_dcbnl_set_dcbx(struct ether *netdev, uint8_t state)
 {
        struct bnx2x *bp = netdev_priv(netdev);
        DP(BNX2X_MSG_DCB, "state = %02x\n", state);
@@ -2373,7 +2372,7 @@ static uint8_t bnx2x_dcbnl_set_dcbx(struct net_device *netdev, uint8_t state)
        return 0;
 }
 
-static uint8_t bnx2x_dcbnl_get_featcfg(struct net_device *netdev, int featid,
+static uint8_t bnx2x_dcbnl_get_featcfg(struct ether *netdev, int featid,
                                  uint8_t *flags)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2420,7 +2419,7 @@ static uint8_t bnx2x_dcbnl_get_featcfg(struct net_device *netdev, int featid,
        return rval;
 }
 
-static uint8_t bnx2x_dcbnl_set_featcfg(struct net_device *netdev, int featid,
+static uint8_t bnx2x_dcbnl_set_featcfg(struct ether *netdev, int featid,
                                  uint8_t flags)
 {
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2461,7 +2460,7 @@ static uint8_t bnx2x_dcbnl_set_featcfg(struct net_device *netdev, int featid,
        return rval;
 }
 
-static int bnx2x_peer_appinfo(struct net_device *netdev,
+static int bnx2x_peer_appinfo(struct ether *netdev,
                              struct dcb_peer_app_info *info,
                              uint16_t* app_count)
 {
@@ -2481,7 +2480,7 @@ static int bnx2x_peer_appinfo(struct net_device *netdev,
        return 0;
 }
 
-static int bnx2x_peer_apptable(struct net_device *netdev,
+static int bnx2x_peer_apptable(struct ether *netdev,
                               struct dcb_app *table)
 {
        int i, j;
@@ -2502,7 +2501,7 @@ static int bnx2x_peer_apptable(struct net_device *netdev,
        return 0;
 }
 
-static int bnx2x_cee_peer_getpg(struct net_device *netdev, struct cee_pg *pg)
+static int bnx2x_cee_peer_getpg(struct ether *netdev, struct cee_pg *pg)
 {
        int i;
        struct bnx2x *bp = netdev_priv(netdev);
@@ -2518,7 +2517,7 @@ static int bnx2x_cee_peer_getpg(struct net_device *netdev, struct cee_pg *pg)
        return 0;
 }
 
-static int bnx2x_cee_peer_getpfc(struct net_device *netdev,
+static int bnx2x_cee_peer_getpfc(struct ether *netdev,
                                 struct cee_pfc *pfc)
 {
        struct bnx2x *bp = netdev_priv(netdev);