mirror of
https://github.com/torvalds/linux.git
synced 2024-11-17 01:22:07 +00:00
Merge branch 'netdev-2.6.20' of master.kernel.org:/pub/scm/linux/kernel/git/viro/bird into tmp
This commit is contained in:
commit
2ad657c88d
@ -922,7 +922,7 @@ int __init init_module(void)
|
||||
* and then free up the resources we took when the card was found.
|
||||
*/
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
struct net_device *dev = dev_3c501;
|
||||
unregister_netdev(dev);
|
||||
|
@ -726,7 +726,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
iounmap(ei_status.mem);
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
@ -1670,7 +1670,7 @@ int __init init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
||||
|
@ -940,7 +940,7 @@ int __init init_module(void)
|
||||
return IS_ERR(dev_3c507) ? PTR_ERR(dev_3c507) : 0;
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
struct net_device *dev = dev_3c507;
|
||||
|
@ -1302,7 +1302,7 @@ int __init init_module(void)
|
||||
} else return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
for (this_dev=0; this_dev<MAX_3C523_CARDS; this_dev++) {
|
||||
|
@ -1659,7 +1659,7 @@ int __init init_module(void)
|
||||
* transmit operations are allowed to start scribbling into memory.
|
||||
*/
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(this_device);
|
||||
cleanup_card(this_device);
|
||||
|
@ -405,7 +405,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
iounmap(ei_status.mem);
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
@ -568,7 +568,7 @@ static irqreturn_t apne_interrupt(int irq, void *dev_id)
|
||||
#ifdef MODULE
|
||||
static struct net_device *apne_dev;
|
||||
|
||||
int init_module(void)
|
||||
int __init init_module(void)
|
||||
{
|
||||
apne_dev = apne_probe(-1);
|
||||
if (IS_ERR(apne_dev))
|
||||
@ -576,7 +576,7 @@ int init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(apne_dev);
|
||||
|
||||
|
@ -1041,7 +1041,7 @@ int __init init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(cops_dev);
|
||||
cleanup_card(cops_dev);
|
||||
|
@ -254,7 +254,7 @@ ether1_readbuffer (struct net_device *dev, void *data, unsigned int start, unsig
|
||||
} while (thislen);
|
||||
}
|
||||
|
||||
static int __init
|
||||
static int __devinit
|
||||
ether1_ramtest(struct net_device *dev, unsigned char byte)
|
||||
{
|
||||
unsigned char *buffer = kmalloc (BUFFER_SIZE, GFP_KERNEL);
|
||||
@ -308,7 +308,7 @@ ether1_reset (struct net_device *dev)
|
||||
return BUS_16;
|
||||
}
|
||||
|
||||
static int __init
|
||||
static int __devinit
|
||||
ether1_init_2(struct net_device *dev)
|
||||
{
|
||||
int i;
|
||||
@ -986,7 +986,7 @@ ether1_setmulticastlist (struct net_device *dev)
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
||||
static void __init ether1_banner(void)
|
||||
static void __devinit ether1_banner(void)
|
||||
{
|
||||
static unsigned int version_printed = 0;
|
||||
|
||||
|
@ -198,7 +198,7 @@ static inline void ether3_ledon(struct net_device *dev)
|
||||
* Read the ethernet address string from the on board rom.
|
||||
* This is an ascii string!!!
|
||||
*/
|
||||
static int __init
|
||||
static int __devinit
|
||||
ether3_addr(char *addr, struct expansion_card *ec)
|
||||
{
|
||||
struct in_chunk_dir cd;
|
||||
@ -223,7 +223,7 @@ ether3_addr(char *addr, struct expansion_card *ec)
|
||||
|
||||
/* --------------------------------------------------------------------------- */
|
||||
|
||||
static int __init
|
||||
static int __devinit
|
||||
ether3_ramtest(struct net_device *dev, unsigned char byte)
|
||||
{
|
||||
unsigned char *buffer = kmalloc(RX_END, GFP_KERNEL);
|
||||
@ -272,7 +272,7 @@ ether3_ramtest(struct net_device *dev, unsigned char byte)
|
||||
|
||||
/* ------------------------------------------------------------------------------- */
|
||||
|
||||
static int __init ether3_init_2(struct net_device *dev)
|
||||
static int __devinit ether3_init_2(struct net_device *dev)
|
||||
{
|
||||
int i;
|
||||
|
||||
@ -765,7 +765,7 @@ static void ether3_tx(struct net_device *dev)
|
||||
}
|
||||
}
|
||||
|
||||
static void __init ether3_banner(void)
|
||||
static void __devinit ether3_banner(void)
|
||||
{
|
||||
static unsigned version_printed = 0;
|
||||
|
||||
|
@ -908,7 +908,7 @@ int __init init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(dev_at1700);
|
||||
|
@ -1179,7 +1179,7 @@ static int lance_set_mac_address( struct net_device *dev, void *addr )
|
||||
#ifdef MODULE
|
||||
static struct net_device *atarilance_dev;
|
||||
|
||||
int init_module(void)
|
||||
int __init init_module(void)
|
||||
{
|
||||
atarilance_dev = atarilance_probe(-1);
|
||||
if (IS_ERR(atarilance_dev))
|
||||
@ -1187,7 +1187,7 @@ int init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(atarilance_dev);
|
||||
free_irq(atarilance_dev->irq, atarilance_dev);
|
||||
|
@ -1974,7 +1974,7 @@ out:
|
||||
return ret;
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(dev_cs89x0);
|
||||
|
@ -463,7 +463,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
release_region(dev->base_addr, E21_IO_EXTENT);
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
@ -1827,7 +1827,7 @@ int __init init_module(void)
|
||||
return n_eepro ? 0 : -ENODEV;
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int i;
|
||||
|
@ -1719,7 +1719,7 @@ int __init init_module(void)
|
||||
return -ENXIO;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
||||
|
@ -455,7 +455,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
iounmap(ei_status.mem);
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
@ -1475,7 +1475,7 @@ int __init init_module(void)
|
||||
return -ENXIO;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
||||
|
@ -482,7 +482,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
release_region(dev->base_addr - NIC_OFFSET, HP_IO_EXTENT);
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
@ -444,7 +444,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
release_region(dev->base_addr - NIC_OFFSET, HP_IO_EXTENT);
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
@ -368,7 +368,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
kfree(lp);
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
||||
|
@ -440,7 +440,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
iounmap(ei_status.mem);
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
||||
|
@ -1098,7 +1098,7 @@ static void eth_tx_fill_frag_descs(struct mv643xx_private *mp,
|
||||
ETH_TX_ENABLE_INTERRUPT;
|
||||
mp->tx_skb[tx_index] = skb;
|
||||
} else
|
||||
mp->tx_skb[tx_index] = 0;
|
||||
mp->tx_skb[tx_index] = NULL;
|
||||
|
||||
desc = &mp->p_tx_desc_area[tx_index];
|
||||
desc->l4i_chk = 0;
|
||||
@ -1134,7 +1134,7 @@ static void eth_tx_submit_descs_for_skb(struct mv643xx_private *mp,
|
||||
eth_tx_fill_frag_descs(mp, skb);
|
||||
|
||||
length = skb_headlen(skb);
|
||||
mp->tx_skb[tx_index] = 0;
|
||||
mp->tx_skb[tx_index] = NULL;
|
||||
} else {
|
||||
cmd_sts |= ETH_ZERO_PADDING |
|
||||
ETH_TX_LAST_DESC |
|
||||
|
@ -184,7 +184,7 @@ static int m147lance_close(struct net_device *dev)
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
static struct net_device *dev_mvme147_lance;
|
||||
int init_module(void)
|
||||
int __init init_module(void)
|
||||
{
|
||||
dev_mvme147_lance = mvme147lance_probe(-1);
|
||||
if (IS_ERR(dev_mvme147_lance))
|
||||
@ -192,7 +192,7 @@ int init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
struct m147lance_private *lp = dev_mvme147_lance->priv;
|
||||
unregister_netdev(dev_mvme147_lance);
|
||||
|
@ -89,7 +89,7 @@ MODULE_LICENSE("Dual BSD/GPL");
|
||||
#define MYRI10GE_EEPROM_STRINGS_SIZE 256
|
||||
#define MYRI10GE_MAX_SEND_DESC_TSO ((65536 / 2048) * 2)
|
||||
|
||||
#define MYRI10GE_NO_CONFIRM_DATA 0xffffffff
|
||||
#define MYRI10GE_NO_CONFIRM_DATA htonl(0xffffffff)
|
||||
#define MYRI10GE_NO_RESPONSE_RESULT 0xffffffff
|
||||
|
||||
struct myri10ge_rx_buffer_state {
|
||||
@ -156,8 +156,8 @@ struct myri10ge_priv {
|
||||
int sram_size;
|
||||
unsigned long board_span;
|
||||
unsigned long iomem_base;
|
||||
u32 __iomem *irq_claim;
|
||||
u32 __iomem *irq_deassert;
|
||||
__be32 __iomem *irq_claim;
|
||||
__be32 __iomem *irq_deassert;
|
||||
char *mac_addr_string;
|
||||
struct mcp_cmd_response *cmd;
|
||||
dma_addr_t cmd_bus;
|
||||
@ -165,10 +165,10 @@ struct myri10ge_priv {
|
||||
dma_addr_t fw_stats_bus;
|
||||
struct pci_dev *pdev;
|
||||
int msi_enabled;
|
||||
unsigned int link_state;
|
||||
__be32 link_state;
|
||||
unsigned int rdma_tags_available;
|
||||
int intr_coal_delay;
|
||||
u32 __iomem *intr_coal_delay_ptr;
|
||||
__be32 __iomem *intr_coal_delay_ptr;
|
||||
int mtrr;
|
||||
int wake_queue;
|
||||
int stop_queue;
|
||||
@ -273,6 +273,11 @@ MODULE_PARM_DESC(myri10ge_debug, "Debug level (0=none,...,16=all)");
|
||||
|
||||
#define myri10ge_pio_copy(to,from,size) __iowrite64_copy(to,from,size/8)
|
||||
|
||||
static inline void put_be32(__be32 val, __be32 __iomem *p)
|
||||
{
|
||||
__raw_writel((__force __u32)val, (__force void __iomem *)p);
|
||||
}
|
||||
|
||||
static int
|
||||
myri10ge_send_cmd(struct myri10ge_priv *mgp, u32 cmd,
|
||||
struct myri10ge_cmd *data, int atomic)
|
||||
@ -296,7 +301,7 @@ myri10ge_send_cmd(struct myri10ge_priv *mgp, u32 cmd,
|
||||
|
||||
buf->response_addr.low = htonl(dma_low);
|
||||
buf->response_addr.high = htonl(dma_high);
|
||||
response->result = MYRI10GE_NO_RESPONSE_RESULT;
|
||||
response->result = htonl(MYRI10GE_NO_RESPONSE_RESULT);
|
||||
mb();
|
||||
myri10ge_pio_copy(cmd_addr, buf, sizeof(*buf));
|
||||
|
||||
@ -311,14 +316,14 @@ myri10ge_send_cmd(struct myri10ge_priv *mgp, u32 cmd,
|
||||
* (1ms will be enough for those commands) */
|
||||
for (sleep_total = 0;
|
||||
sleep_total < 1000
|
||||
&& response->result == MYRI10GE_NO_RESPONSE_RESULT;
|
||||
&& response->result == htonl(MYRI10GE_NO_RESPONSE_RESULT);
|
||||
sleep_total += 10)
|
||||
udelay(10);
|
||||
} else {
|
||||
/* use msleep for most command */
|
||||
for (sleep_total = 0;
|
||||
sleep_total < 15
|
||||
&& response->result == MYRI10GE_NO_RESPONSE_RESULT;
|
||||
&& response->result == htonl(MYRI10GE_NO_RESPONSE_RESULT);
|
||||
sleep_total++)
|
||||
msleep(1);
|
||||
}
|
||||
@ -393,7 +398,7 @@ abort:
|
||||
static void myri10ge_dummy_rdma(struct myri10ge_priv *mgp, int enable)
|
||||
{
|
||||
char __iomem *submit;
|
||||
u32 buf[16];
|
||||
__be32 buf[16];
|
||||
u32 dma_low, dma_high;
|
||||
int i;
|
||||
|
||||
@ -410,7 +415,7 @@ static void myri10ge_dummy_rdma(struct myri10ge_priv *mgp, int enable)
|
||||
|
||||
buf[0] = htonl(dma_high); /* confirm addr MSW */
|
||||
buf[1] = htonl(dma_low); /* confirm addr LSW */
|
||||
buf[2] = htonl(MYRI10GE_NO_CONFIRM_DATA); /* confirm data */
|
||||
buf[2] = MYRI10GE_NO_CONFIRM_DATA; /* confirm data */
|
||||
buf[3] = htonl(dma_high); /* dummy addr MSW */
|
||||
buf[4] = htonl(dma_low); /* dummy addr LSW */
|
||||
buf[5] = htonl(enable); /* enable? */
|
||||
@ -479,7 +484,7 @@ static int myri10ge_load_hotplug_firmware(struct myri10ge_priv *mgp, u32 * size)
|
||||
}
|
||||
|
||||
/* check id */
|
||||
hdr_offset = ntohl(*(u32 *) (fw->data + MCP_HEADER_PTR_OFFSET));
|
||||
hdr_offset = ntohl(*(__be32 *) (fw->data + MCP_HEADER_PTR_OFFSET));
|
||||
if ((hdr_offset & 3) || hdr_offset + sizeof(*hdr) > fw->size) {
|
||||
dev_err(dev, "Bad firmware file\n");
|
||||
status = -EINVAL;
|
||||
@ -550,7 +555,7 @@ static int myri10ge_adopt_running_firmware(struct myri10ge_priv *mgp)
|
||||
static int myri10ge_load_firmware(struct myri10ge_priv *mgp)
|
||||
{
|
||||
char __iomem *submit;
|
||||
u32 buf[16];
|
||||
__be32 buf[16];
|
||||
u32 dma_low, dma_high, size;
|
||||
int status, i;
|
||||
|
||||
@ -600,7 +605,7 @@ static int myri10ge_load_firmware(struct myri10ge_priv *mgp)
|
||||
|
||||
buf[0] = htonl(dma_high); /* confirm addr MSW */
|
||||
buf[1] = htonl(dma_low); /* confirm addr LSW */
|
||||
buf[2] = htonl(MYRI10GE_NO_CONFIRM_DATA); /* confirm data */
|
||||
buf[2] = MYRI10GE_NO_CONFIRM_DATA; /* confirm data */
|
||||
|
||||
/* FIX: All newest firmware should un-protect the bottom of
|
||||
* the sram before handoff. However, the very first interfaces
|
||||
@ -705,21 +710,21 @@ static int myri10ge_reset(struct myri10ge_priv *mgp)
|
||||
|
||||
status |=
|
||||
myri10ge_send_cmd(mgp, MXGEFW_CMD_GET_IRQ_ACK_OFFSET, &cmd, 0);
|
||||
mgp->irq_claim = (__iomem u32 *) (mgp->sram + cmd.data0);
|
||||
mgp->irq_claim = (__iomem __be32 *) (mgp->sram + cmd.data0);
|
||||
if (!mgp->msi_enabled) {
|
||||
status |= myri10ge_send_cmd
|
||||
(mgp, MXGEFW_CMD_GET_IRQ_DEASSERT_OFFSET, &cmd, 0);
|
||||
mgp->irq_deassert = (__iomem u32 *) (mgp->sram + cmd.data0);
|
||||
mgp->irq_deassert = (__iomem __be32 *) (mgp->sram + cmd.data0);
|
||||
|
||||
}
|
||||
status |= myri10ge_send_cmd
|
||||
(mgp, MXGEFW_CMD_GET_INTR_COAL_DELAY_OFFSET, &cmd, 0);
|
||||
mgp->intr_coal_delay_ptr = (__iomem u32 *) (mgp->sram + cmd.data0);
|
||||
mgp->intr_coal_delay_ptr = (__iomem __be32 *) (mgp->sram + cmd.data0);
|
||||
if (status != 0) {
|
||||
dev_err(&mgp->pdev->dev, "failed set interrupt parameters\n");
|
||||
return status;
|
||||
}
|
||||
__raw_writel(htonl(mgp->intr_coal_delay), mgp->intr_coal_delay_ptr);
|
||||
put_be32(htonl(mgp->intr_coal_delay), mgp->intr_coal_delay_ptr);
|
||||
|
||||
/* Run a small DMA test.
|
||||
* The magic multipliers to the length tell the firmware
|
||||
@ -786,14 +791,14 @@ static inline void
|
||||
myri10ge_submit_8rx(struct mcp_kreq_ether_recv __iomem * dst,
|
||||
struct mcp_kreq_ether_recv *src)
|
||||
{
|
||||
u32 low;
|
||||
__be32 low;
|
||||
|
||||
low = src->addr_low;
|
||||
src->addr_low = DMA_32BIT_MASK;
|
||||
src->addr_low = htonl(DMA_32BIT_MASK);
|
||||
myri10ge_pio_copy(dst, src, 8 * sizeof(*src));
|
||||
mb();
|
||||
src->addr_low = low;
|
||||
__raw_writel(low, &dst->addr_low);
|
||||
put_be32(low, &dst->addr_low);
|
||||
mb();
|
||||
}
|
||||
|
||||
@ -939,11 +944,11 @@ done:
|
||||
return retval;
|
||||
}
|
||||
|
||||
static inline void myri10ge_vlan_ip_csum(struct sk_buff *skb, u16 hw_csum)
|
||||
static inline void myri10ge_vlan_ip_csum(struct sk_buff *skb, __wsum hw_csum)
|
||||
{
|
||||
struct vlan_hdr *vh = (struct vlan_hdr *)(skb->data);
|
||||
|
||||
if ((skb->protocol == ntohs(ETH_P_8021Q)) &&
|
||||
if ((skb->protocol == htons(ETH_P_8021Q)) &&
|
||||
(vh->h_vlan_encapsulated_proto == htons(ETH_P_IP) ||
|
||||
vh->h_vlan_encapsulated_proto == htons(ETH_P_IPV6))) {
|
||||
skb->csum = hw_csum;
|
||||
@ -953,7 +958,7 @@ static inline void myri10ge_vlan_ip_csum(struct sk_buff *skb, u16 hw_csum)
|
||||
|
||||
static inline unsigned long
|
||||
myri10ge_rx_done(struct myri10ge_priv *mgp, struct myri10ge_rx_buf *rx,
|
||||
int bytes, int len, int csum)
|
||||
int bytes, int len, __wsum csum)
|
||||
{
|
||||
dma_addr_t bus;
|
||||
struct sk_buff *skb;
|
||||
@ -986,12 +991,12 @@ myri10ge_rx_done(struct myri10ge_priv *mgp, struct myri10ge_rx_buf *rx,
|
||||
|
||||
skb->protocol = eth_type_trans(skb, mgp->dev);
|
||||
if (mgp->csum_flag) {
|
||||
if ((skb->protocol == ntohs(ETH_P_IP)) ||
|
||||
(skb->protocol == ntohs(ETH_P_IPV6))) {
|
||||
skb->csum = ntohs((u16) csum);
|
||||
if ((skb->protocol == htons(ETH_P_IP)) ||
|
||||
(skb->protocol == htons(ETH_P_IPV6))) {
|
||||
skb->csum = csum;
|
||||
skb->ip_summed = CHECKSUM_COMPLETE;
|
||||
} else
|
||||
myri10ge_vlan_ip_csum(skb, ntohs((u16) csum));
|
||||
myri10ge_vlan_ip_csum(skb, csum);
|
||||
}
|
||||
|
||||
netif_receive_skb(skb);
|
||||
@ -1060,12 +1065,12 @@ static inline void myri10ge_clean_rx_done(struct myri10ge_priv *mgp, int *limit)
|
||||
int idx = rx_done->idx;
|
||||
int cnt = rx_done->cnt;
|
||||
u16 length;
|
||||
u16 checksum;
|
||||
__wsum checksum;
|
||||
|
||||
while (rx_done->entry[idx].length != 0 && *limit != 0) {
|
||||
length = ntohs(rx_done->entry[idx].length);
|
||||
rx_done->entry[idx].length = 0;
|
||||
checksum = ntohs(rx_done->entry[idx].checksum);
|
||||
checksum = csum_unfold(rx_done->entry[idx].checksum);
|
||||
if (length <= mgp->small_bytes)
|
||||
rx_ok = myri10ge_rx_done(mgp, &mgp->rx_small,
|
||||
mgp->small_bytes,
|
||||
@ -1142,7 +1147,7 @@ static int myri10ge_poll(struct net_device *netdev, int *budget)
|
||||
|
||||
if (rx_done->entry[rx_done->idx].length == 0 || !netif_running(netdev)) {
|
||||
netif_rx_complete(netdev);
|
||||
__raw_writel(htonl(3), mgp->irq_claim);
|
||||
put_be32(htonl(3), mgp->irq_claim);
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
@ -1166,7 +1171,7 @@ static irqreturn_t myri10ge_intr(int irq, void *arg)
|
||||
netif_rx_schedule(mgp->dev);
|
||||
|
||||
if (!mgp->msi_enabled) {
|
||||
__raw_writel(0, mgp->irq_deassert);
|
||||
put_be32(0, mgp->irq_deassert);
|
||||
if (!myri10ge_deassert_wait)
|
||||
stats->valid = 0;
|
||||
mb();
|
||||
@ -1195,7 +1200,7 @@ static irqreturn_t myri10ge_intr(int irq, void *arg)
|
||||
|
||||
myri10ge_check_statblock(mgp);
|
||||
|
||||
__raw_writel(htonl(3), mgp->irq_claim + 1);
|
||||
put_be32(htonl(3), mgp->irq_claim + 1);
|
||||
return (IRQ_HANDLED);
|
||||
}
|
||||
|
||||
@ -1233,7 +1238,7 @@ myri10ge_set_coalesce(struct net_device *netdev, struct ethtool_coalesce *coal)
|
||||
struct myri10ge_priv *mgp = netdev_priv(netdev);
|
||||
|
||||
mgp->intr_coal_delay = coal->rx_coalesce_usecs;
|
||||
__raw_writel(htonl(mgp->intr_coal_delay), mgp->intr_coal_delay_ptr);
|
||||
put_be32(htonl(mgp->intr_coal_delay), mgp->intr_coal_delay_ptr);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -1748,7 +1753,7 @@ static int myri10ge_open(struct net_device *dev)
|
||||
goto abort_with_rings;
|
||||
}
|
||||
|
||||
mgp->link_state = -1;
|
||||
mgp->link_state = htonl(~0U);
|
||||
mgp->rdma_tags_available = 15;
|
||||
|
||||
netif_poll_enable(mgp->dev); /* must happen prior to any irq */
|
||||
@ -1876,7 +1881,7 @@ myri10ge_submit_req(struct myri10ge_tx_buf *tx, struct mcp_kreq_ether_send *src,
|
||||
|
||||
/* re-write the last 32-bits with the valid flags */
|
||||
src->flags = last_flags;
|
||||
__raw_writel(*((u32 *) src + 3), (u32 __iomem *) dst + 3);
|
||||
put_be32(*((__be32 *) src + 3), (__be32 __iomem *) dst + 3);
|
||||
tx->req += cnt;
|
||||
mb();
|
||||
}
|
||||
@ -1919,7 +1924,8 @@ static int myri10ge_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
struct myri10ge_tx_buf *tx = &mgp->tx;
|
||||
struct skb_frag_struct *frag;
|
||||
dma_addr_t bus;
|
||||
u32 low, high_swapped;
|
||||
u32 low;
|
||||
__be32 high_swapped;
|
||||
unsigned int len;
|
||||
int idx, last_idx, avail, frag_cnt, frag_idx, count, mss, max_segments;
|
||||
u16 pseudo_hdr_offset, cksum_offset;
|
||||
@ -1964,7 +1970,6 @@ again:
|
||||
cksum_offset = 0;
|
||||
pseudo_hdr_offset = 0;
|
||||
} else {
|
||||
pseudo_hdr_offset = htons(pseudo_hdr_offset);
|
||||
odd_flag = MXGEFW_FLAGS_ALIGN_ODD;
|
||||
flags |= MXGEFW_FLAGS_CKSUM;
|
||||
}
|
||||
@ -1986,7 +1991,7 @@ again:
|
||||
/* for TSO, pseudo_hdr_offset holds mss.
|
||||
* The firmware figures out where to put
|
||||
* the checksum by parsing the header. */
|
||||
pseudo_hdr_offset = htons(mss);
|
||||
pseudo_hdr_offset = mss;
|
||||
} else
|
||||
#endif /*NETIF_F_TSO */
|
||||
/* Mark small packets, and pad out tiny packets */
|
||||
@ -2086,7 +2091,7 @@ again:
|
||||
#endif /* NETIF_F_TSO */
|
||||
req->addr_high = high_swapped;
|
||||
req->addr_low = htonl(low);
|
||||
req->pseudo_hdr_offset = pseudo_hdr_offset;
|
||||
req->pseudo_hdr_offset = htons(pseudo_hdr_offset);
|
||||
req->pad = 0; /* complete solid 16-byte block; does this matter? */
|
||||
req->rdma_count = 1;
|
||||
req->length = htons(seglen);
|
||||
@ -2199,6 +2204,7 @@ static void myri10ge_set_multicast_list(struct net_device *dev)
|
||||
struct myri10ge_cmd cmd;
|
||||
struct myri10ge_priv *mgp;
|
||||
struct dev_mc_list *mc_list;
|
||||
__be32 data[2] = {0, 0};
|
||||
int err;
|
||||
|
||||
mgp = netdev_priv(dev);
|
||||
@ -2237,10 +2243,9 @@ static void myri10ge_set_multicast_list(struct net_device *dev)
|
||||
|
||||
/* Walk the multicast list, and add each address */
|
||||
for (mc_list = dev->mc_list; mc_list != NULL; mc_list = mc_list->next) {
|
||||
memcpy(&cmd.data0, &mc_list->dmi_addr, 4);
|
||||
memcpy(&cmd.data1, ((char *)&mc_list->dmi_addr) + 4, 2);
|
||||
cmd.data0 = htonl(cmd.data0);
|
||||
cmd.data1 = htonl(cmd.data1);
|
||||
memcpy(data, &mc_list->dmi_addr, 6);
|
||||
cmd.data0 = ntohl(data[0]);
|
||||
cmd.data1 = ntohl(data[1]);
|
||||
err = myri10ge_send_cmd(mgp, MXGEFW_JOIN_MULTICAST_GROUP,
|
||||
&cmd, 1);
|
||||
|
||||
|
@ -6,23 +6,23 @@
|
||||
|
||||
/* 8 Bytes */
|
||||
struct mcp_dma_addr {
|
||||
u32 high;
|
||||
u32 low;
|
||||
__be32 high;
|
||||
__be32 low;
|
||||
};
|
||||
|
||||
/* 4 Bytes */
|
||||
struct mcp_slot {
|
||||
u16 checksum;
|
||||
u16 length;
|
||||
__sum16 checksum;
|
||||
__be16 length;
|
||||
};
|
||||
|
||||
/* 64 Bytes */
|
||||
struct mcp_cmd {
|
||||
u32 cmd;
|
||||
u32 data0; /* will be low portion if data > 32 bits */
|
||||
__be32 cmd;
|
||||
__be32 data0; /* will be low portion if data > 32 bits */
|
||||
/* 8 */
|
||||
u32 data1; /* will be high portion if data > 32 bits */
|
||||
u32 data2; /* currently unused.. */
|
||||
__be32 data1; /* will be high portion if data > 32 bits */
|
||||
__be32 data2; /* currently unused.. */
|
||||
/* 16 */
|
||||
struct mcp_dma_addr response_addr;
|
||||
/* 24 */
|
||||
@ -31,8 +31,8 @@ struct mcp_cmd {
|
||||
|
||||
/* 8 Bytes */
|
||||
struct mcp_cmd_response {
|
||||
u32 data;
|
||||
u32 result;
|
||||
__be32 data;
|
||||
__be32 result;
|
||||
};
|
||||
|
||||
/*
|
||||
@ -73,10 +73,10 @@ union mcp_pso_or_cumlen {
|
||||
|
||||
/* 16 Bytes */
|
||||
struct mcp_kreq_ether_send {
|
||||
u32 addr_high;
|
||||
u32 addr_low;
|
||||
u16 pseudo_hdr_offset;
|
||||
u16 length;
|
||||
__be32 addr_high;
|
||||
__be32 addr_low;
|
||||
__be16 pseudo_hdr_offset;
|
||||
__be16 length;
|
||||
u8 pad;
|
||||
u8 rdma_count;
|
||||
u8 cksum_offset; /* where to start computing cksum */
|
||||
@ -85,8 +85,8 @@ struct mcp_kreq_ether_send {
|
||||
|
||||
/* 8 Bytes */
|
||||
struct mcp_kreq_ether_recv {
|
||||
u32 addr_high;
|
||||
u32 addr_low;
|
||||
__be32 addr_high;
|
||||
__be32 addr_low;
|
||||
};
|
||||
|
||||
/* Commands */
|
||||
@ -219,19 +219,19 @@ enum myri10ge_mcp_cmd_status {
|
||||
|
||||
struct mcp_irq_data {
|
||||
/* add new counters at the beginning */
|
||||
u32 future_use[5];
|
||||
u32 dropped_multicast_filtered;
|
||||
__be32 future_use[5];
|
||||
__be32 dropped_multicast_filtered;
|
||||
/* 40 Bytes */
|
||||
u32 send_done_count;
|
||||
__be32 send_done_count;
|
||||
|
||||
u32 link_up;
|
||||
u32 dropped_link_overflow;
|
||||
u32 dropped_link_error_or_filtered;
|
||||
u32 dropped_runt;
|
||||
u32 dropped_overrun;
|
||||
u32 dropped_no_small_buffer;
|
||||
u32 dropped_no_big_buffer;
|
||||
u32 rdma_tags_available;
|
||||
__be32 link_up;
|
||||
__be32 dropped_link_overflow;
|
||||
__be32 dropped_link_error_or_filtered;
|
||||
__be32 dropped_runt;
|
||||
__be32 dropped_overrun;
|
||||
__be32 dropped_no_small_buffer;
|
||||
__be32 dropped_no_big_buffer;
|
||||
__be32 rdma_tags_available;
|
||||
|
||||
u8 tx_stopped;
|
||||
u8 link_down;
|
||||
|
@ -36,7 +36,7 @@
|
||||
struct mcp_gen_header {
|
||||
/* the first 4 fields are filled at compile time */
|
||||
unsigned header_length;
|
||||
unsigned mcp_type;
|
||||
__be32 mcp_type;
|
||||
char version[128];
|
||||
unsigned mcp_globals; /* pointer to mcp-type specific structure */
|
||||
|
||||
|
@ -867,7 +867,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
release_region(dev->base_addr, NE_IO_EXTENT);
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
||||
|
@ -813,7 +813,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
release_region(dev->base_addr, NE_IO_EXTENT);
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
||||
|
@ -1335,7 +1335,7 @@ int __init init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(dev_ni52);
|
||||
release_region(dev_ni52->base_addr, NI52_TOTAL_SIZE);
|
||||
|
@ -1259,7 +1259,7 @@ int __init init_module(void)
|
||||
return IS_ERR(dev_ni65) ? PTR_ERR(dev_ni65) : 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(dev_ni65);
|
||||
cleanup_card(dev_ni65);
|
||||
|
@ -414,10 +414,10 @@ struct rx_info {
|
||||
|
||||
struct sk_buff *skbs[NR_RX_DESC];
|
||||
|
||||
u32 *next_rx_desc;
|
||||
__le32 *next_rx_desc;
|
||||
u16 next_rx, next_empty;
|
||||
|
||||
u32 *descs;
|
||||
__le32 *descs;
|
||||
dma_addr_t phy_descs;
|
||||
};
|
||||
|
||||
@ -459,7 +459,7 @@ struct ns83820 {
|
||||
struct sk_buff *tx_skbs[NR_TX_DESC];
|
||||
|
||||
char pad[16] __attribute__((aligned(16)));
|
||||
u32 *tx_descs;
|
||||
__le32 *tx_descs;
|
||||
dma_addr_t tx_phy_descs;
|
||||
|
||||
struct timer_list tx_watchdog;
|
||||
@ -533,7 +533,7 @@ static void ns83820_vlan_rx_kill_vid(struct net_device *ndev, unsigned short vid
|
||||
* conditions, still route realtime traffic with as low jitter as
|
||||
* possible.
|
||||
*/
|
||||
static inline void build_rx_desc(struct ns83820 *dev, u32 *desc, dma_addr_t link, dma_addr_t buf, u32 cmdsts, u32 extsts)
|
||||
static inline void build_rx_desc(struct ns83820 *dev, __le32 *desc, dma_addr_t link, dma_addr_t buf, u32 cmdsts, u32 extsts)
|
||||
{
|
||||
desc_addr_set(desc + DESC_LINK, link);
|
||||
desc_addr_set(desc + DESC_BUFPTR, buf);
|
||||
@ -547,7 +547,7 @@ static inline int ns83820_add_rx_skb(struct ns83820 *dev, struct sk_buff *skb)
|
||||
{
|
||||
unsigned next_empty;
|
||||
u32 cmdsts;
|
||||
u32 *sg;
|
||||
__le32 *sg;
|
||||
dma_addr_t buf;
|
||||
|
||||
next_empty = dev->rx_info.next_empty;
|
||||
@ -874,7 +874,8 @@ static void fastcall rx_irq(struct net_device *ndev)
|
||||
struct rx_info *info = &dev->rx_info;
|
||||
unsigned next_rx;
|
||||
int rx_rc, len;
|
||||
u32 cmdsts, *desc;
|
||||
u32 cmdsts;
|
||||
__le32 *desc;
|
||||
unsigned long flags;
|
||||
int nr = 0;
|
||||
|
||||
@ -1010,7 +1011,8 @@ static inline void kick_tx(struct ns83820 *dev)
|
||||
static void do_tx_done(struct net_device *ndev)
|
||||
{
|
||||
struct ns83820 *dev = PRIV(ndev);
|
||||
u32 cmdsts, tx_done_idx, *desc;
|
||||
u32 cmdsts, tx_done_idx;
|
||||
__le32 *desc;
|
||||
|
||||
dprintk("do_tx_done(%p)\n", ndev);
|
||||
tx_done_idx = dev->tx_done_idx;
|
||||
@ -1077,7 +1079,7 @@ static void ns83820_cleanup_tx(struct ns83820 *dev)
|
||||
struct sk_buff *skb = dev->tx_skbs[i];
|
||||
dev->tx_skbs[i] = NULL;
|
||||
if (skb) {
|
||||
u32 *desc = dev->tx_descs + (i * DESC_SIZE);
|
||||
__le32 *desc = dev->tx_descs + (i * DESC_SIZE);
|
||||
pci_unmap_single(dev->pci_dev,
|
||||
desc_addr_get(desc + DESC_BUFPTR),
|
||||
le32_to_cpu(desc[DESC_CMDSTS]) & CMDSTS_LEN_MASK,
|
||||
@ -1107,7 +1109,7 @@ static int ns83820_hard_start_xmit(struct sk_buff *skb, struct net_device *ndev)
|
||||
skb_frag_t *frag;
|
||||
int stopped = 0;
|
||||
int do_intr = 0;
|
||||
volatile u32 *first_desc;
|
||||
volatile __le32 *first_desc;
|
||||
|
||||
dprintk("ns83820_hard_start_xmit\n");
|
||||
|
||||
@ -1180,7 +1182,7 @@ again:
|
||||
first_desc = dev->tx_descs + (free_idx * DESC_SIZE);
|
||||
|
||||
for (;;) {
|
||||
volatile u32 *desc = dev->tx_descs + (free_idx * DESC_SIZE);
|
||||
volatile __le32 *desc = dev->tx_descs + (free_idx * DESC_SIZE);
|
||||
|
||||
dprintk("frag[%3u]: %4u @ 0x%08Lx\n", free_idx, len,
|
||||
(unsigned long long)buf);
|
||||
@ -1455,7 +1457,8 @@ static int ns83820_stop(struct net_device *ndev)
|
||||
static void ns83820_tx_timeout(struct net_device *ndev)
|
||||
{
|
||||
struct ns83820 *dev = PRIV(ndev);
|
||||
u32 tx_done_idx, *desc;
|
||||
u32 tx_done_idx;
|
||||
__le32 *desc;
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&dev->tx_lock, flags);
|
||||
|
@ -750,7 +750,7 @@ int __init init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(dev_seeq);
|
||||
release_region(dev_seeq->base_addr, SEEQ8005_IO_EXTENT);
|
||||
|
@ -593,7 +593,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
iounmap(ei_status.mem);
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
@ -437,7 +437,7 @@ int __init init_module(void)
|
||||
return -ENXIO;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
||||
|
@ -1616,7 +1616,7 @@ int __init init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(devSMC9194);
|
||||
free_irq(devSMC9194->irq, devSMC9194);
|
||||
|
@ -1216,7 +1216,7 @@ static const char * chip_ids[ 16 ] = {
|
||||
if (SMC_CAN_USE_32BIT) { \
|
||||
void *__ptr = (p); \
|
||||
int __len = (l); \
|
||||
void *__ioaddr = ioaddr; \
|
||||
void __iomem *__ioaddr = ioaddr; \
|
||||
if (__len >= 2 && (unsigned long)__ptr & 2) { \
|
||||
__len -= 2; \
|
||||
SMC_outw(*(u16 *)__ptr, ioaddr, DATA_REG); \
|
||||
@ -1240,7 +1240,7 @@ static const char * chip_ids[ 16 ] = {
|
||||
if (SMC_CAN_USE_32BIT) { \
|
||||
void *__ptr = (p); \
|
||||
int __len = (l); \
|
||||
void *__ioaddr = ioaddr; \
|
||||
void __iomem *__ioaddr = ioaddr; \
|
||||
if ((unsigned long)__ptr & 2) { \
|
||||
/* \
|
||||
* We want 32bit alignment here. \
|
||||
|
@ -945,7 +945,7 @@ static void set_multicast_list( struct net_device *dev )
|
||||
|
||||
static struct net_device *sun3lance_dev;
|
||||
|
||||
int init_module(void)
|
||||
int __init init_module(void)
|
||||
{
|
||||
sun3lance_dev = sun3lance_probe(-1);
|
||||
if (IS_ERR(sun3lance_dev))
|
||||
@ -953,7 +953,7 @@ int init_module(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
unregister_netdev(sun3lance_dev);
|
||||
#ifdef CONFIG_SUN3
|
||||
|
@ -5706,7 +5706,7 @@ int __init init_module(void)
|
||||
return found ? 0 : -ENODEV;
|
||||
}
|
||||
|
||||
void cleanup_module(void)
|
||||
void __exit cleanup_module(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
|
@ -538,7 +538,7 @@ static void cleanup_card(struct net_device *dev)
|
||||
iounmap(ei_status.mem);
|
||||
}
|
||||
|
||||
void
|
||||
void __exit
|
||||
cleanup_module(void)
|
||||
{
|
||||
int this_dev;
|
||||
|
Loading…
Reference in New Issue
Block a user