staging: vt6655: replace typedef struct tagSRxDesc
with struct vnt_rx_desc and all members the same. volatile is removed from pointers as this generates warning message. Only the first four members of vnt_rx_desc need to be volatile. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
88defe2b35
commit
9cb693f6f3
@ -564,7 +564,7 @@ CARDvSafeResetRx(
|
||||
)
|
||||
{
|
||||
unsigned int uu;
|
||||
PSRxDesc pDesc;
|
||||
struct vnt_rx_desc *pDesc;
|
||||
|
||||
/* initialize RD index */
|
||||
pDevice->pCurrRD[0] = &(pDevice->aRD0Ring[0]);
|
||||
|
@ -195,16 +195,14 @@ struct vnt_rdes1 {
|
||||
} __packed;
|
||||
|
||||
/* Rx descriptor*/
|
||||
typedef struct tagSRxDesc {
|
||||
struct vnt_rx_desc {
|
||||
volatile struct vnt_rdes0 rd0;
|
||||
volatile struct vnt_rdes1 rd1;
|
||||
volatile __le32 buff_addr;
|
||||
volatile __le32 next_desc;
|
||||
struct tagSRxDesc *next __aligned(8);
|
||||
struct vnt_rx_desc *next __aligned(8);
|
||||
struct vnt_rd_info *rd_info __aligned(8);
|
||||
} __attribute__ ((__packed__))
|
||||
SRxDesc, *PSRxDesc;
|
||||
typedef const SRxDesc *PCSRxDesc;
|
||||
} __packed;
|
||||
|
||||
struct vnt_tdes0 {
|
||||
volatile u8 tsr0;
|
||||
|
@ -258,9 +258,9 @@ struct vnt_private {
|
||||
struct vnt_tx_desc *apTD0Rings;
|
||||
struct vnt_tx_desc *apTD1Rings;
|
||||
|
||||
volatile PSRxDesc aRD0Ring;
|
||||
volatile PSRxDesc aRD1Ring;
|
||||
volatile PSRxDesc pCurrRD[TYPE_MAXRD];
|
||||
struct vnt_rx_desc *aRD0Ring;
|
||||
struct vnt_rx_desc *aRD1Ring;
|
||||
struct vnt_rx_desc *pCurrRD[TYPE_MAXRD];
|
||||
|
||||
OPTIONS sOpts;
|
||||
|
||||
|
@ -155,7 +155,7 @@ static void device_init_td1_ring(struct vnt_private *pDevice);
|
||||
|
||||
static int device_rx_srv(struct vnt_private *pDevice, unsigned int uIdx);
|
||||
static int device_tx_srv(struct vnt_private *pDevice, unsigned int uIdx);
|
||||
static bool device_alloc_rx_buf(struct vnt_private *pDevice, PSRxDesc pDesc);
|
||||
static bool device_alloc_rx_buf(struct vnt_private *, struct vnt_rx_desc *);
|
||||
static void device_init_registers(struct vnt_private *pDevice);
|
||||
static void device_free_tx_buf(struct vnt_private *, struct vnt_tx_desc *);
|
||||
static void device_free_td0_ring(struct vnt_private *pDevice);
|
||||
@ -520,8 +520,8 @@ static bool device_init_rings(struct vnt_private *pDevice)
|
||||
|
||||
/*allocate all RD/TD rings a single pool*/
|
||||
vir_pool = dma_zalloc_coherent(&pDevice->pcid->dev,
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc) +
|
||||
pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc) +
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(struct vnt_rx_desc) +
|
||||
pDevice->sOpts.nRxDescs1 * sizeof(struct vnt_rx_desc) +
|
||||
pDevice->sOpts.nTxDescs[0] * sizeof(struct vnt_tx_desc) +
|
||||
pDevice->sOpts.nTxDescs[1] * sizeof(struct vnt_tx_desc),
|
||||
&pDevice->pool_dma, GFP_ATOMIC);
|
||||
@ -532,11 +532,11 @@ static bool device_init_rings(struct vnt_private *pDevice)
|
||||
|
||||
pDevice->aRD0Ring = vir_pool;
|
||||
pDevice->aRD1Ring = vir_pool +
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc);
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(struct vnt_rx_desc);
|
||||
|
||||
pDevice->rd0_pool_dma = pDevice->pool_dma;
|
||||
pDevice->rd1_pool_dma = pDevice->rd0_pool_dma +
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc);
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(struct vnt_rx_desc);
|
||||
|
||||
pDevice->tx0_bufs = dma_zalloc_coherent(&pDevice->pcid->dev,
|
||||
pDevice->sOpts.nTxDescs[0] * PKT_BUF_SZ +
|
||||
@ -549,8 +549,8 @@ static bool device_init_rings(struct vnt_private *pDevice)
|
||||
dev_err(&pDevice->pcid->dev, "allocate buf dma memory failed\n");
|
||||
|
||||
dma_free_coherent(&pDevice->pcid->dev,
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc) +
|
||||
pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc) +
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(struct vnt_rx_desc) +
|
||||
pDevice->sOpts.nRxDescs1 * sizeof(struct vnt_rx_desc) +
|
||||
pDevice->sOpts.nTxDescs[0] * sizeof(struct vnt_tx_desc) +
|
||||
pDevice->sOpts.nTxDescs[1] * sizeof(struct vnt_tx_desc),
|
||||
vir_pool, pDevice->pool_dma
|
||||
@ -559,19 +559,19 @@ static bool device_init_rings(struct vnt_private *pDevice)
|
||||
}
|
||||
|
||||
pDevice->td0_pool_dma = pDevice->rd1_pool_dma +
|
||||
pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc);
|
||||
pDevice->sOpts.nRxDescs1 * sizeof(struct vnt_rx_desc);
|
||||
|
||||
pDevice->td1_pool_dma = pDevice->td0_pool_dma +
|
||||
pDevice->sOpts.nTxDescs[0] * sizeof(struct vnt_tx_desc);
|
||||
|
||||
/* vir_pool: pvoid type */
|
||||
pDevice->apTD0Rings = vir_pool
|
||||
+ pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc)
|
||||
+ pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc);
|
||||
+ pDevice->sOpts.nRxDescs0 * sizeof(struct vnt_rx_desc)
|
||||
+ pDevice->sOpts.nRxDescs1 * sizeof(struct vnt_rx_desc);
|
||||
|
||||
pDevice->apTD1Rings = vir_pool
|
||||
+ pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc)
|
||||
+ pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc)
|
||||
+ pDevice->sOpts.nRxDescs0 * sizeof(struct vnt_rx_desc)
|
||||
+ pDevice->sOpts.nRxDescs1 * sizeof(struct vnt_rx_desc)
|
||||
+ pDevice->sOpts.nTxDescs[0] * sizeof(struct vnt_tx_desc);
|
||||
|
||||
pDevice->tx1_bufs = pDevice->tx0_bufs +
|
||||
@ -595,8 +595,8 @@ static bool device_init_rings(struct vnt_private *pDevice)
|
||||
static void device_free_rings(struct vnt_private *pDevice)
|
||||
{
|
||||
dma_free_coherent(&pDevice->pcid->dev,
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc) +
|
||||
pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc) +
|
||||
pDevice->sOpts.nRxDescs0 * sizeof(struct vnt_rx_desc) +
|
||||
pDevice->sOpts.nRxDescs1 * sizeof(struct vnt_rx_desc) +
|
||||
pDevice->sOpts.nTxDescs[0] * sizeof(struct vnt_tx_desc) +
|
||||
pDevice->sOpts.nTxDescs[1] * sizeof(struct vnt_tx_desc)
|
||||
,
|
||||
@ -617,10 +617,11 @@ static void device_init_rd0_ring(struct vnt_private *pDevice)
|
||||
{
|
||||
int i;
|
||||
dma_addr_t curr = pDevice->rd0_pool_dma;
|
||||
PSRxDesc pDesc;
|
||||
struct vnt_rx_desc *pDesc;
|
||||
|
||||
/* Init the RD0 ring entries */
|
||||
for (i = 0; i < pDevice->sOpts.nRxDescs0; i ++, curr += sizeof(SRxDesc)) {
|
||||
for (i = 0; i < pDevice->sOpts.nRxDescs0;
|
||||
i ++, curr += sizeof(struct vnt_rx_desc)) {
|
||||
pDesc = &(pDevice->aRD0Ring[i]);
|
||||
pDesc->rd_info = alloc_rd_info();
|
||||
|
||||
@ -628,7 +629,7 @@ static void device_init_rd0_ring(struct vnt_private *pDevice)
|
||||
dev_err(&pDevice->pcid->dev, "can not alloc rx bufs\n");
|
||||
|
||||
pDesc->next = &(pDevice->aRD0Ring[(i+1) % pDevice->sOpts.nRxDescs0]);
|
||||
pDesc->next_desc = cpu_to_le32(curr + sizeof(SRxDesc));
|
||||
pDesc->next_desc = cpu_to_le32(curr + sizeof(struct vnt_rx_desc));
|
||||
}
|
||||
|
||||
if (i > 0)
|
||||
@ -640,10 +641,11 @@ static void device_init_rd1_ring(struct vnt_private *pDevice)
|
||||
{
|
||||
int i;
|
||||
dma_addr_t curr = pDevice->rd1_pool_dma;
|
||||
PSRxDesc pDesc;
|
||||
struct vnt_rx_desc *pDesc;
|
||||
|
||||
/* Init the RD1 ring entries */
|
||||
for (i = 0; i < pDevice->sOpts.nRxDescs1; i ++, curr += sizeof(SRxDesc)) {
|
||||
for (i = 0; i < pDevice->sOpts.nRxDescs1;
|
||||
i ++, curr += sizeof(struct vnt_rx_desc)) {
|
||||
pDesc = &(pDevice->aRD1Ring[i]);
|
||||
pDesc->rd_info = alloc_rd_info();
|
||||
|
||||
@ -651,7 +653,7 @@ static void device_init_rd1_ring(struct vnt_private *pDevice)
|
||||
dev_err(&pDevice->pcid->dev, "can not alloc rx bufs\n");
|
||||
|
||||
pDesc->next = &(pDevice->aRD1Ring[(i+1) % pDevice->sOpts.nRxDescs1]);
|
||||
pDesc->next_desc = cpu_to_le32(curr + sizeof(SRxDesc));
|
||||
pDesc->next_desc = cpu_to_le32(curr + sizeof(struct vnt_rx_desc));
|
||||
}
|
||||
|
||||
if (i > 0)
|
||||
@ -664,7 +666,7 @@ static void device_free_rd0_ring(struct vnt_private *pDevice)
|
||||
int i;
|
||||
|
||||
for (i = 0; i < pDevice->sOpts.nRxDescs0; i++) {
|
||||
PSRxDesc pDesc = &(pDevice->aRD0Ring[i]);
|
||||
struct vnt_rx_desc *pDesc = &(pDevice->aRD0Ring[i]);
|
||||
struct vnt_rd_info *rd_info = pDesc->rd_info;
|
||||
|
||||
dma_unmap_single(&pDevice->pcid->dev, rd_info->skb_dma,
|
||||
@ -681,7 +683,7 @@ static void device_free_rd1_ring(struct vnt_private *pDevice)
|
||||
int i;
|
||||
|
||||
for (i = 0; i < pDevice->sOpts.nRxDescs1; i++) {
|
||||
PSRxDesc pDesc = &(pDevice->aRD1Ring[i]);
|
||||
struct vnt_rx_desc *pDesc = &(pDevice->aRD1Ring[i]);
|
||||
struct vnt_rd_info *rd_info = pDesc->rd_info;
|
||||
|
||||
dma_unmap_single(&pDevice->pcid->dev, rd_info->skb_dma,
|
||||
@ -774,7 +776,7 @@ static void device_free_td1_ring(struct vnt_private *pDevice)
|
||||
|
||||
static int device_rx_srv(struct vnt_private *pDevice, unsigned int uIdx)
|
||||
{
|
||||
PSRxDesc pRD;
|
||||
struct vnt_rx_desc *pRD;
|
||||
int works = 0;
|
||||
|
||||
for (pRD = pDevice->pCurrRD[uIdx];
|
||||
@ -801,7 +803,8 @@ static int device_rx_srv(struct vnt_private *pDevice, unsigned int uIdx)
|
||||
return works;
|
||||
}
|
||||
|
||||
static bool device_alloc_rx_buf(struct vnt_private *pDevice, PSRxDesc pRD)
|
||||
static bool device_alloc_rx_buf(struct vnt_private *pDevice,
|
||||
struct vnt_rx_desc *pRD)
|
||||
{
|
||||
struct vnt_rd_info *pRDInfo = pRD->rd_info;
|
||||
|
||||
|
@ -132,7 +132,7 @@ static bool vnt_rx_data(struct vnt_private *priv, struct sk_buff *skb,
|
||||
return true;
|
||||
}
|
||||
|
||||
bool vnt_receive_frame(struct vnt_private *priv, PSRxDesc curr_rd)
|
||||
bool vnt_receive_frame(struct vnt_private *priv, struct vnt_rx_desc *curr_rd)
|
||||
{
|
||||
struct vnt_rd_info *rd_info = curr_rd->rd_info;
|
||||
struct sk_buff *skb;
|
||||
|
@ -31,6 +31,6 @@
|
||||
|
||||
#include "device.h"
|
||||
|
||||
bool vnt_receive_frame(struct vnt_private *priv, PSRxDesc curr_rd);
|
||||
bool vnt_receive_frame(struct vnt_private *priv, struct vnt_rx_desc *curr_rd);
|
||||
|
||||
#endif /* __RXTX_H__ */
|
||||
|
Loading…
Reference in New Issue
Block a user