Skip to content

Commit

Permalink
net: fec: add struct bufdesc_prop
Browse files Browse the repository at this point in the history
This reduces code and gains speed.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Troy Kisky authored and David S. Miller committed Feb 11, 2016
1 parent 93c595f commit 7355f27
Show file tree
Hide file tree
Showing 2 changed files with 132 additions and 185 deletions.
29 changes: 14 additions & 15 deletions drivers/net/ethernet/freescale/fec.h
Original file line number Diff line number Diff line change
Expand Up @@ -448,33 +448,34 @@ struct bufdesc_ex {
/* Controller supports RACC register */
#define FEC_QUIRK_HAS_RACC (1 << 12)

struct bufdesc_prop {
int qid;
/* Address of Rx and Tx buffers */
struct bufdesc *base;
struct bufdesc *last;
struct bufdesc *cur;
dma_addr_t dma;
unsigned short ring_size;
unsigned char dsize;
unsigned char dsize_log2;
};

struct fec_enet_priv_tx_q {
int index;
struct bufdesc_prop bd;
unsigned char *tx_bounce[TX_RING_SIZE];
struct sk_buff *tx_skbuff[TX_RING_SIZE];

dma_addr_t bd_dma;
struct bufdesc *tx_bd_base;
uint tx_ring_size;

unsigned short tx_stop_threshold;
unsigned short tx_wake_threshold;

struct bufdesc *cur_tx;
struct bufdesc *dirty_tx;
char *tso_hdrs;
dma_addr_t tso_hdrs_dma;
};

struct fec_enet_priv_rx_q {
int index;
struct bufdesc_prop bd;
struct sk_buff *rx_skbuff[RX_RING_SIZE];

dma_addr_t bd_dma;
struct bufdesc *rx_bd_base;
uint rx_ring_size;

struct bufdesc *cur_rx;
};

/* The FEC buffer descriptors track the ring buffers. The rx_bd_base and
Expand Down Expand Up @@ -514,8 +515,6 @@ struct fec_enet_private {
unsigned long work_ts;
unsigned long work_mdio;

unsigned short bufdesc_size;

struct platform_device *pdev;

int dev_id;
Expand Down
Loading

0 comments on commit 7355f27

Please sign in to comment.