mirror of
https://github.com/torvalds/linux.git
synced 2024-10-31 09:11:49 +00:00
[PATCH] ns83820 annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
40f6cff5c4
commit
c69fda4e18
@ -414,10 +414,10 @@ struct rx_info {
|
|||||||
|
|
||||||
struct sk_buff *skbs[NR_RX_DESC];
|
struct sk_buff *skbs[NR_RX_DESC];
|
||||||
|
|
||||||
u32 *next_rx_desc;
|
__le32 *next_rx_desc;
|
||||||
u16 next_rx, next_empty;
|
u16 next_rx, next_empty;
|
||||||
|
|
||||||
u32 *descs;
|
__le32 *descs;
|
||||||
dma_addr_t phy_descs;
|
dma_addr_t phy_descs;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -459,7 +459,7 @@ struct ns83820 {
|
|||||||
struct sk_buff *tx_skbs[NR_TX_DESC];
|
struct sk_buff *tx_skbs[NR_TX_DESC];
|
||||||
|
|
||||||
char pad[16] __attribute__((aligned(16)));
|
char pad[16] __attribute__((aligned(16)));
|
||||||
u32 *tx_descs;
|
__le32 *tx_descs;
|
||||||
dma_addr_t tx_phy_descs;
|
dma_addr_t tx_phy_descs;
|
||||||
|
|
||||||
struct timer_list tx_watchdog;
|
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
|
* conditions, still route realtime traffic with as low jitter as
|
||||||
* possible.
|
* 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_LINK, link);
|
||||||
desc_addr_set(desc + DESC_BUFPTR, buf);
|
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;
|
unsigned next_empty;
|
||||||
u32 cmdsts;
|
u32 cmdsts;
|
||||||
u32 *sg;
|
__le32 *sg;
|
||||||
dma_addr_t buf;
|
dma_addr_t buf;
|
||||||
|
|
||||||
next_empty = dev->rx_info.next_empty;
|
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;
|
struct rx_info *info = &dev->rx_info;
|
||||||
unsigned next_rx;
|
unsigned next_rx;
|
||||||
int rx_rc, len;
|
int rx_rc, len;
|
||||||
u32 cmdsts, *desc;
|
u32 cmdsts;
|
||||||
|
__le32 *desc;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
int nr = 0;
|
int nr = 0;
|
||||||
|
|
||||||
@ -1010,7 +1011,8 @@ static inline void kick_tx(struct ns83820 *dev)
|
|||||||
static void do_tx_done(struct net_device *ndev)
|
static void do_tx_done(struct net_device *ndev)
|
||||||
{
|
{
|
||||||
struct ns83820 *dev = PRIV(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);
|
dprintk("do_tx_done(%p)\n", ndev);
|
||||||
tx_done_idx = dev->tx_done_idx;
|
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];
|
struct sk_buff *skb = dev->tx_skbs[i];
|
||||||
dev->tx_skbs[i] = NULL;
|
dev->tx_skbs[i] = NULL;
|
||||||
if (skb) {
|
if (skb) {
|
||||||
u32 *desc = dev->tx_descs + (i * DESC_SIZE);
|
__le32 *desc = dev->tx_descs + (i * DESC_SIZE);
|
||||||
pci_unmap_single(dev->pci_dev,
|
pci_unmap_single(dev->pci_dev,
|
||||||
desc_addr_get(desc + DESC_BUFPTR),
|
desc_addr_get(desc + DESC_BUFPTR),
|
||||||
le32_to_cpu(desc[DESC_CMDSTS]) & CMDSTS_LEN_MASK,
|
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;
|
skb_frag_t *frag;
|
||||||
int stopped = 0;
|
int stopped = 0;
|
||||||
int do_intr = 0;
|
int do_intr = 0;
|
||||||
volatile u32 *first_desc;
|
volatile __le32 *first_desc;
|
||||||
|
|
||||||
dprintk("ns83820_hard_start_xmit\n");
|
dprintk("ns83820_hard_start_xmit\n");
|
||||||
|
|
||||||
@ -1180,7 +1182,7 @@ again:
|
|||||||
first_desc = dev->tx_descs + (free_idx * DESC_SIZE);
|
first_desc = dev->tx_descs + (free_idx * DESC_SIZE);
|
||||||
|
|
||||||
for (;;) {
|
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,
|
dprintk("frag[%3u]: %4u @ 0x%08Lx\n", free_idx, len,
|
||||||
(unsigned long long)buf);
|
(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)
|
static void ns83820_tx_timeout(struct net_device *ndev)
|
||||||
{
|
{
|
||||||
struct ns83820 *dev = PRIV(ndev);
|
struct ns83820 *dev = PRIV(ndev);
|
||||||
u32 tx_done_idx, *desc;
|
u32 tx_done_idx;
|
||||||
|
__le32 *desc;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
spin_lock_irqsave(&dev->tx_lock, flags);
|
spin_lock_irqsave(&dev->tx_lock, flags);
|
||||||
|
Loading…
Reference in New Issue
Block a user