Commit c3ccc123 authored by Wang Chen's avatar Wang Chen Committed by David S. Miller

netdevice chelsio: Convert directly reference of netdev->priv

Several netdev share one adapter here.
We use netdev->ml_priv of the netdevs point to the first netdev's priv.
Signed-off-by: default avatarWang Chen <wangchen@cn.fujitsu.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 4d24b52a
...@@ -120,7 +120,7 @@ static const char pci_speed[][4] = { ...@@ -120,7 +120,7 @@ static const char pci_speed[][4] = {
*/ */
static void t1_set_rxmode(struct net_device *dev) static void t1_set_rxmode(struct net_device *dev)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct cmac *mac = adapter->port[dev->if_port].mac; struct cmac *mac = adapter->port[dev->if_port].mac;
struct t1_rx_mode rm; struct t1_rx_mode rm;
...@@ -252,7 +252,7 @@ static void cxgb_down(struct adapter *adapter) ...@@ -252,7 +252,7 @@ static void cxgb_down(struct adapter *adapter)
static int cxgb_open(struct net_device *dev) static int cxgb_open(struct net_device *dev)
{ {
int err; int err;
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
int other_ports = adapter->open_device_map & PORT_MASK; int other_ports = adapter->open_device_map & PORT_MASK;
napi_enable(&adapter->napi); napi_enable(&adapter->napi);
...@@ -272,7 +272,7 @@ static int cxgb_open(struct net_device *dev) ...@@ -272,7 +272,7 @@ static int cxgb_open(struct net_device *dev)
static int cxgb_close(struct net_device *dev) static int cxgb_close(struct net_device *dev)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct port_info *p = &adapter->port[dev->if_port]; struct port_info *p = &adapter->port[dev->if_port];
struct cmac *mac = p->mac; struct cmac *mac = p->mac;
...@@ -298,7 +298,7 @@ static int cxgb_close(struct net_device *dev) ...@@ -298,7 +298,7 @@ static int cxgb_close(struct net_device *dev)
static struct net_device_stats *t1_get_stats(struct net_device *dev) static struct net_device_stats *t1_get_stats(struct net_device *dev)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct port_info *p = &adapter->port[dev->if_port]; struct port_info *p = &adapter->port[dev->if_port];
struct net_device_stats *ns = &p->netstats; struct net_device_stats *ns = &p->netstats;
const struct cmac_statistics *pstats; const struct cmac_statistics *pstats;
...@@ -346,14 +346,14 @@ static struct net_device_stats *t1_get_stats(struct net_device *dev) ...@@ -346,14 +346,14 @@ static struct net_device_stats *t1_get_stats(struct net_device *dev)
static u32 get_msglevel(struct net_device *dev) static u32 get_msglevel(struct net_device *dev)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
return adapter->msg_enable; return adapter->msg_enable;
} }
static void set_msglevel(struct net_device *dev, u32 val) static void set_msglevel(struct net_device *dev, u32 val)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
adapter->msg_enable = val; adapter->msg_enable = val;
} }
...@@ -434,7 +434,7 @@ static int get_regs_len(struct net_device *dev) ...@@ -434,7 +434,7 @@ static int get_regs_len(struct net_device *dev)
static void get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *info) static void get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *info)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
strcpy(info->driver, DRV_NAME); strcpy(info->driver, DRV_NAME);
strcpy(info->version, DRV_VERSION); strcpy(info->version, DRV_VERSION);
...@@ -461,7 +461,7 @@ static void get_strings(struct net_device *dev, u32 stringset, u8 *data) ...@@ -461,7 +461,7 @@ static void get_strings(struct net_device *dev, u32 stringset, u8 *data)
static void get_stats(struct net_device *dev, struct ethtool_stats *stats, static void get_stats(struct net_device *dev, struct ethtool_stats *stats,
u64 *data) u64 *data)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct cmac *mac = adapter->port[dev->if_port].mac; struct cmac *mac = adapter->port[dev->if_port].mac;
const struct cmac_statistics *s; const struct cmac_statistics *s;
const struct sge_intr_counts *t; const struct sge_intr_counts *t;
...@@ -552,7 +552,7 @@ static inline void reg_block_dump(struct adapter *ap, void *buf, ...@@ -552,7 +552,7 @@ static inline void reg_block_dump(struct adapter *ap, void *buf,
static void get_regs(struct net_device *dev, struct ethtool_regs *regs, static void get_regs(struct net_device *dev, struct ethtool_regs *regs,
void *buf) void *buf)
{ {
struct adapter *ap = dev->priv; struct adapter *ap = dev->ml_priv;
/* /*
* Version scheme: bits 0..9: chip version, bits 10..15: chip revision * Version scheme: bits 0..9: chip version, bits 10..15: chip revision
...@@ -574,7 +574,7 @@ static void get_regs(struct net_device *dev, struct ethtool_regs *regs, ...@@ -574,7 +574,7 @@ static void get_regs(struct net_device *dev, struct ethtool_regs *regs,
static int get_settings(struct net_device *dev, struct ethtool_cmd *cmd) static int get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct port_info *p = &adapter->port[dev->if_port]; struct port_info *p = &adapter->port[dev->if_port];
cmd->supported = p->link_config.supported; cmd->supported = p->link_config.supported;
...@@ -634,7 +634,7 @@ static int speed_duplex_to_caps(int speed, int duplex) ...@@ -634,7 +634,7 @@ static int speed_duplex_to_caps(int speed, int duplex)
static int set_settings(struct net_device *dev, struct ethtool_cmd *cmd) static int set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct port_info *p = &adapter->port[dev->if_port]; struct port_info *p = &adapter->port[dev->if_port];
struct link_config *lc = &p->link_config; struct link_config *lc = &p->link_config;
...@@ -669,7 +669,7 @@ static int set_settings(struct net_device *dev, struct ethtool_cmd *cmd) ...@@ -669,7 +669,7 @@ static int set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
static void get_pauseparam(struct net_device *dev, static void get_pauseparam(struct net_device *dev,
struct ethtool_pauseparam *epause) struct ethtool_pauseparam *epause)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct port_info *p = &adapter->port[dev->if_port]; struct port_info *p = &adapter->port[dev->if_port];
epause->autoneg = (p->link_config.requested_fc & PAUSE_AUTONEG) != 0; epause->autoneg = (p->link_config.requested_fc & PAUSE_AUTONEG) != 0;
...@@ -680,7 +680,7 @@ static void get_pauseparam(struct net_device *dev, ...@@ -680,7 +680,7 @@ static void get_pauseparam(struct net_device *dev,
static int set_pauseparam(struct net_device *dev, static int set_pauseparam(struct net_device *dev,
struct ethtool_pauseparam *epause) struct ethtool_pauseparam *epause)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct port_info *p = &adapter->port[dev->if_port]; struct port_info *p = &adapter->port[dev->if_port];
struct link_config *lc = &p->link_config; struct link_config *lc = &p->link_config;
...@@ -709,14 +709,14 @@ static int set_pauseparam(struct net_device *dev, ...@@ -709,14 +709,14 @@ static int set_pauseparam(struct net_device *dev,
static u32 get_rx_csum(struct net_device *dev) static u32 get_rx_csum(struct net_device *dev)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
return (adapter->flags & RX_CSUM_ENABLED) != 0; return (adapter->flags & RX_CSUM_ENABLED) != 0;
} }
static int set_rx_csum(struct net_device *dev, u32 data) static int set_rx_csum(struct net_device *dev, u32 data)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
if (data) if (data)
adapter->flags |= RX_CSUM_ENABLED; adapter->flags |= RX_CSUM_ENABLED;
...@@ -727,7 +727,7 @@ static int set_rx_csum(struct net_device *dev, u32 data) ...@@ -727,7 +727,7 @@ static int set_rx_csum(struct net_device *dev, u32 data)
static int set_tso(struct net_device *dev, u32 value) static int set_tso(struct net_device *dev, u32 value)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
if (!(adapter->flags & TSO_CAPABLE)) if (!(adapter->flags & TSO_CAPABLE))
return value ? -EOPNOTSUPP : 0; return value ? -EOPNOTSUPP : 0;
...@@ -736,7 +736,7 @@ static int set_tso(struct net_device *dev, u32 value) ...@@ -736,7 +736,7 @@ static int set_tso(struct net_device *dev, u32 value)
static void get_sge_param(struct net_device *dev, struct ethtool_ringparam *e) static void get_sge_param(struct net_device *dev, struct ethtool_ringparam *e)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
int jumbo_fl = t1_is_T1B(adapter) ? 1 : 0; int jumbo_fl = t1_is_T1B(adapter) ? 1 : 0;
e->rx_max_pending = MAX_RX_BUFFERS; e->rx_max_pending = MAX_RX_BUFFERS;
...@@ -752,7 +752,7 @@ static void get_sge_param(struct net_device *dev, struct ethtool_ringparam *e) ...@@ -752,7 +752,7 @@ static void get_sge_param(struct net_device *dev, struct ethtool_ringparam *e)
static int set_sge_param(struct net_device *dev, struct ethtool_ringparam *e) static int set_sge_param(struct net_device *dev, struct ethtool_ringparam *e)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
int jumbo_fl = t1_is_T1B(adapter) ? 1 : 0; int jumbo_fl = t1_is_T1B(adapter) ? 1 : 0;
if (e->rx_pending > MAX_RX_BUFFERS || e->rx_mini_pending || if (e->rx_pending > MAX_RX_BUFFERS || e->rx_mini_pending ||
...@@ -776,7 +776,7 @@ static int set_sge_param(struct net_device *dev, struct ethtool_ringparam *e) ...@@ -776,7 +776,7 @@ static int set_sge_param(struct net_device *dev, struct ethtool_ringparam *e)
static int set_coalesce(struct net_device *dev, struct ethtool_coalesce *c) static int set_coalesce(struct net_device *dev, struct ethtool_coalesce *c)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
adapter->params.sge.rx_coalesce_usecs = c->rx_coalesce_usecs; adapter->params.sge.rx_coalesce_usecs = c->rx_coalesce_usecs;
adapter->params.sge.coalesce_enable = c->use_adaptive_rx_coalesce; adapter->params.sge.coalesce_enable = c->use_adaptive_rx_coalesce;
...@@ -787,7 +787,7 @@ static int set_coalesce(struct net_device *dev, struct ethtool_coalesce *c) ...@@ -787,7 +787,7 @@ static int set_coalesce(struct net_device *dev, struct ethtool_coalesce *c)
static int get_coalesce(struct net_device *dev, struct ethtool_coalesce *c) static int get_coalesce(struct net_device *dev, struct ethtool_coalesce *c)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
c->rx_coalesce_usecs = adapter->params.sge.rx_coalesce_usecs; c->rx_coalesce_usecs = adapter->params.sge.rx_coalesce_usecs;
c->rate_sample_interval = adapter->params.sge.sample_interval_usecs; c->rate_sample_interval = adapter->params.sge.sample_interval_usecs;
...@@ -797,7 +797,7 @@ static int get_coalesce(struct net_device *dev, struct ethtool_coalesce *c) ...@@ -797,7 +797,7 @@ static int get_coalesce(struct net_device *dev, struct ethtool_coalesce *c)
static int get_eeprom_len(struct net_device *dev) static int get_eeprom_len(struct net_device *dev)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
return t1_is_asic(adapter) ? EEPROM_SIZE : 0; return t1_is_asic(adapter) ? EEPROM_SIZE : 0;
} }
...@@ -810,7 +810,7 @@ static int get_eeprom(struct net_device *dev, struct ethtool_eeprom *e, ...@@ -810,7 +810,7 @@ static int get_eeprom(struct net_device *dev, struct ethtool_eeprom *e,
{ {
int i; int i;
u8 buf[EEPROM_SIZE] __attribute__((aligned(4))); u8 buf[EEPROM_SIZE] __attribute__((aligned(4)));
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
e->magic = EEPROM_MAGIC(adapter); e->magic = EEPROM_MAGIC(adapter);
for (i = e->offset & ~3; i < e->offset + e->len; i += sizeof(u32)) for (i = e->offset & ~3; i < e->offset + e->len; i += sizeof(u32))
...@@ -848,7 +848,7 @@ static const struct ethtool_ops t1_ethtool_ops = { ...@@ -848,7 +848,7 @@ static const struct ethtool_ops t1_ethtool_ops = {
static int t1_ioctl(struct net_device *dev, struct ifreq *req, int cmd) static int t1_ioctl(struct net_device *dev, struct ifreq *req, int cmd)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct mii_ioctl_data *data = if_mii(req); struct mii_ioctl_data *data = if_mii(req);
switch (cmd) { switch (cmd) {
...@@ -887,7 +887,7 @@ static int t1_ioctl(struct net_device *dev, struct ifreq *req, int cmd) ...@@ -887,7 +887,7 @@ static int t1_ioctl(struct net_device *dev, struct ifreq *req, int cmd)
static int t1_change_mtu(struct net_device *dev, int new_mtu) static int t1_change_mtu(struct net_device *dev, int new_mtu)
{ {
int ret; int ret;
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct cmac *mac = adapter->port[dev->if_port].mac; struct cmac *mac = adapter->port[dev->if_port].mac;
if (!mac->ops->set_mtu) if (!mac->ops->set_mtu)
...@@ -902,7 +902,7 @@ static int t1_change_mtu(struct net_device *dev, int new_mtu) ...@@ -902,7 +902,7 @@ static int t1_change_mtu(struct net_device *dev, int new_mtu)
static int t1_set_mac_addr(struct net_device *dev, void *p) static int t1_set_mac_addr(struct net_device *dev, void *p)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct cmac *mac = adapter->port[dev->if_port].mac; struct cmac *mac = adapter->port[dev->if_port].mac;
struct sockaddr *addr = p; struct sockaddr *addr = p;
...@@ -918,7 +918,7 @@ static int t1_set_mac_addr(struct net_device *dev, void *p) ...@@ -918,7 +918,7 @@ static int t1_set_mac_addr(struct net_device *dev, void *p)
static void vlan_rx_register(struct net_device *dev, static void vlan_rx_register(struct net_device *dev,
struct vlan_group *grp) struct vlan_group *grp)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
spin_lock_irq(&adapter->async_lock); spin_lock_irq(&adapter->async_lock);
adapter->vlan_grp = grp; adapter->vlan_grp = grp;
...@@ -931,7 +931,7 @@ static void vlan_rx_register(struct net_device *dev, ...@@ -931,7 +931,7 @@ static void vlan_rx_register(struct net_device *dev,
static void t1_netpoll(struct net_device *dev) static void t1_netpoll(struct net_device *dev)
{ {
unsigned long flags; unsigned long flags;
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
local_irq_save(flags); local_irq_save(flags);
t1_interrupt(adapter->pdev->irq, adapter); t1_interrupt(adapter->pdev->irq, adapter);
...@@ -1077,7 +1077,7 @@ static int __devinit init_one(struct pci_dev *pdev, ...@@ -1077,7 +1077,7 @@ static int __devinit init_one(struct pci_dev *pdev,
SET_NETDEV_DEV(netdev, &pdev->dev); SET_NETDEV_DEV(netdev, &pdev->dev);
if (!adapter) { if (!adapter) {
adapter = netdev->priv; adapter = netdev_priv(netdev);
adapter->pdev = pdev; adapter->pdev = pdev;
adapter->port[0].dev = netdev; /* so we don't leak it */ adapter->port[0].dev = netdev; /* so we don't leak it */
...@@ -1118,7 +1118,7 @@ static int __devinit init_one(struct pci_dev *pdev, ...@@ -1118,7 +1118,7 @@ static int __devinit init_one(struct pci_dev *pdev,
netdev->if_port = i; netdev->if_port = i;
netdev->mem_start = mmio_start; netdev->mem_start = mmio_start;
netdev->mem_end = mmio_start + mmio_len - 1; netdev->mem_end = mmio_start + mmio_len - 1;
netdev->priv = adapter; netdev->ml_priv = adapter;
netdev->features |= NETIF_F_SG | NETIF_F_IP_CSUM; netdev->features |= NETIF_F_SG | NETIF_F_IP_CSUM;
netdev->features |= NETIF_F_LLTX; netdev->features |= NETIF_F_LLTX;
...@@ -1382,7 +1382,7 @@ static inline void t1_sw_reset(struct pci_dev *pdev) ...@@ -1382,7 +1382,7 @@ static inline void t1_sw_reset(struct pci_dev *pdev)
static void __devexit remove_one(struct pci_dev *pdev) static void __devexit remove_one(struct pci_dev *pdev)
{ {
struct net_device *dev = pci_get_drvdata(pdev); struct net_device *dev = pci_get_drvdata(pdev);
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
int i; int i;
for_each_port(adapter, i) { for_each_port(adapter, i) {
......
...@@ -1785,7 +1785,7 @@ static inline int eth_hdr_len(const void *data) ...@@ -1785,7 +1785,7 @@ static inline int eth_hdr_len(const void *data)
*/ */
int t1_start_xmit(struct sk_buff *skb, struct net_device *dev) int t1_start_xmit(struct sk_buff *skb, struct net_device *dev)
{ {
struct adapter *adapter = dev->priv; struct adapter *adapter = dev->ml_priv;
struct sge *sge = adapter->sge; struct sge *sge = adapter->sge;
struct sge_port_stats *st = per_cpu_ptr(sge->port_stats[dev->if_port], struct sge_port_stats *st = per_cpu_ptr(sge->port_stats[dev->if_port],
smp_processor_id()); smp_processor_id());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment