Commit 82a5e7f9 authored by Luca Ellero's avatar Luca Ellero Committed by Greg Kroah-Hartman

staging: ced1401: remove typedef for TRANSAREA

Signed-off-by: default avatarLuca Ellero <luca.ellero@brickedbrain.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent d13778d5
...@@ -593,7 +593,8 @@ int ced_clear_area(DEVICE_EXTENSION *pdx, int nArea) ...@@ -593,7 +593,8 @@ int ced_clear_area(DEVICE_EXTENSION *pdx, int nArea)
dev_err(&pdx->interface->dev, "%s: Attempt to clear area %d\n", dev_err(&pdx->interface->dev, "%s: Attempt to clear area %d\n",
__func__, nArea); __func__, nArea);
} else { } else {
TRANSAREA *pTA = &pdx->rTransDef[nArea]; /* to save typing */ /* to save typing */
struct transarea *pTA = &pdx->rTransDef[nArea];
if (!pTA->bUsed) /* if not used... */ if (!pTA->bUsed) /* if not used... */
iReturn = U14ERR_NOTSET; /* ...nothing to be done */ iReturn = U14ERR_NOTSET; /* ...nothing to be done */
else { else {
...@@ -622,10 +623,10 @@ int ced_clear_area(DEVICE_EXTENSION *pdx, int nArea) ...@@ -622,10 +623,10 @@ int ced_clear_area(DEVICE_EXTENSION *pdx, int nArea)
&& (pdx->rDMAInfo.wIdent == nArea)) && (pdx->rDMAInfo.wIdent == nArea))
pdx->bXFerWaiting = false; /* Cannot have pending xfer if area cleared */ pdx->bXFerWaiting = false; /* Cannot have pending xfer if area cleared */
/* Clean out the TRANSAREA except for the wait queue, which is at the end */ /* Clean out the struct transarea except for the wait queue, which is at the end */
/* This sets bUsed to false and dwEventSz to 0 to say area not used and no events. */ /* This sets bUsed to false and dwEventSz to 0 to say area not used and no events. */
memset(pTA, 0, memset(pTA, 0,
sizeof(TRANSAREA) - sizeof(struct transarea) -
sizeof(wait_queue_head_t)); sizeof(wait_queue_head_t));
} }
spin_unlock_irq(&pdx->stagedLock); spin_unlock_irq(&pdx->stagedLock);
...@@ -670,7 +671,7 @@ static int ced_set_area(DEVICE_EXTENSION *pdx, int nArea, char __user *puBuf, ...@@ -670,7 +671,7 @@ static int ced_set_area(DEVICE_EXTENSION *pdx, int nArea, char __user *puBuf,
unsigned int ulOffset = ((unsigned long)puBuf) & (PAGE_SIZE - 1); unsigned int ulOffset = ((unsigned long)puBuf) & (PAGE_SIZE - 1);
int len = (dwLength + ulOffset + PAGE_SIZE - 1) >> PAGE_SHIFT; int len = (dwLength + ulOffset + PAGE_SIZE - 1) >> PAGE_SHIFT;
TRANSAREA *pTA = &pdx->rTransDef[nArea]; /* to save typing */ struct transarea *pTA = &pdx->rTransDef[nArea]; /* to save typing */
struct page **pPages = NULL; /* space for page tables */ struct page **pPages = NULL; /* space for page tables */
int nPages = 0; /* and number of pages */ int nPages = 0; /* and number of pages */
...@@ -791,7 +792,7 @@ int ced_set_event(DEVICE_EXTENSION *pdx, struct transfer_event __user *pTE) ...@@ -791,7 +792,7 @@ int ced_set_event(DEVICE_EXTENSION *pdx, struct transfer_event __user *pTE)
if (te.wAreaNum >= MAX_TRANSAREAS) /* the area must exist */ if (te.wAreaNum >= MAX_TRANSAREAS) /* the area must exist */
return U14ERR_BADAREA; return U14ERR_BADAREA;
else { else {
TRANSAREA *pTA = &pdx->rTransDef[te.wAreaNum]; struct transarea *pTA = &pdx->rTransDef[te.wAreaNum];
mutex_lock(&pdx->io_mutex); /* make sure we have no competitor */ mutex_lock(&pdx->io_mutex); /* make sure we have no competitor */
spin_lock_irq(&pdx->stagedLock); spin_lock_irq(&pdx->stagedLock);
if (pTA->bUsed) { /* area must be in use */ if (pTA->bUsed) { /* area must be in use */
...@@ -821,7 +822,7 @@ int ced_wait_event(DEVICE_EXTENSION *pdx, int nArea, int msTimeOut) ...@@ -821,7 +822,7 @@ int ced_wait_event(DEVICE_EXTENSION *pdx, int nArea, int msTimeOut)
return U14ERR_BADAREA; return U14ERR_BADAREA;
else { else {
int iWait; int iWait;
TRANSAREA *pTA = &pdx->rTransDef[nArea]; struct transarea *pTA = &pdx->rTransDef[nArea];
msTimeOut = (msTimeOut * HZ + 999) / 1000; /* convert timeout to jiffies */ msTimeOut = (msTimeOut * HZ + 999) / 1000; /* convert timeout to jiffies */
/* We cannot wait holding the mutex, but we check the flags while holding */ /* We cannot wait holding the mutex, but we check the flags while holding */
...@@ -867,7 +868,7 @@ int ced_test_event(DEVICE_EXTENSION *pdx, int nArea) ...@@ -867,7 +868,7 @@ int ced_test_event(DEVICE_EXTENSION *pdx, int nArea)
if ((unsigned)nArea >= MAX_TRANSAREAS) if ((unsigned)nArea >= MAX_TRANSAREAS)
iReturn = U14ERR_BADAREA; iReturn = U14ERR_BADAREA;
else { else {
TRANSAREA *pTA = &pdx->rTransDef[nArea]; struct transarea *pTA = &pdx->rTransDef[nArea];
mutex_lock(&pdx->io_mutex); /* make sure we have no competitor */ mutex_lock(&pdx->io_mutex); /* make sure we have no competitor */
spin_lock_irq(&pdx->stagedLock); spin_lock_irq(&pdx->stagedLock);
iReturn = pTA->iWakeUp; /* get wakeup count since last call */ iReturn = pTA->iWakeUp; /* get wakeup count since last call */
...@@ -1354,7 +1355,8 @@ int ced_get_circ_block(DEVICE_EXTENSION *pdx, TCIRCBLOCK __user *pCB) ...@@ -1354,7 +1355,8 @@ int ced_get_circ_block(DEVICE_EXTENSION *pdx, TCIRCBLOCK __user *pCB)
cb.dwSize = 0; cb.dwSize = 0;
if (nArea < MAX_TRANSAREAS) { /* The area number must be OK */ if (nArea < MAX_TRANSAREAS) { /* The area number must be OK */
TRANSAREA *pArea = &pdx->rTransDef[nArea]; /* Pointer to relevant info */ /* Pointer to relevant info */
struct transarea *pArea = &pdx->rTransDef[nArea];
spin_lock_irq(&pdx->stagedLock); /* Lock others out */ spin_lock_irq(&pdx->stagedLock); /* Lock others out */
if ((pArea->bUsed) && (pArea->bCircular) && /* Must be circular area */ if ((pArea->bUsed) && (pArea->bCircular) && /* Must be circular area */
...@@ -1405,7 +1407,8 @@ int ced_free_circ_block(DEVICE_EXTENSION *pdx, TCIRCBLOCK __user *pCB) ...@@ -1405,7 +1407,8 @@ int ced_free_circ_block(DEVICE_EXTENSION *pdx, TCIRCBLOCK __user *pCB)
cb.dwSize = 0; cb.dwSize = 0;
if (nArea < MAX_TRANSAREAS) { /* The area number must be OK */ if (nArea < MAX_TRANSAREAS) { /* The area number must be OK */
TRANSAREA *pArea = &pdx->rTransDef[nArea]; /* Pointer to relevant info */ /* Pointer to relevant info */
struct transarea *pArea = &pdx->rTransDef[nArea];
spin_lock_irq(&pdx->stagedLock); /* Lock others out */ spin_lock_irq(&pdx->stagedLock); /* Lock others out */
if ((pArea->bUsed) && (pArea->bCircular) && /* Must be circular area */ if ((pArea->bUsed) && (pArea->bCircular) && /* Must be circular area */
......
...@@ -441,7 +441,8 @@ static void ced_copy_user_space(DEVICE_EXTENSION *pdx, int n) ...@@ -441,7 +441,8 @@ static void ced_copy_user_space(DEVICE_EXTENSION *pdx, int n)
{ {
unsigned int nArea = pdx->StagedId; unsigned int nArea = pdx->StagedId;
if (nArea < MAX_TRANSAREAS) { if (nArea < MAX_TRANSAREAS) {
TRANSAREA *pArea = &pdx->rTransDef[nArea]; /* area to be used */ /* area to be used */
struct transarea *pArea = &pdx->rTransDef[nArea];
unsigned int dwOffset = unsigned int dwOffset =
pdx->StagedDone + pdx->StagedOffset + pArea->dwBaseOffset; pdx->StagedDone + pdx->StagedOffset + pArea->dwBaseOffset;
char *pCoherBuf = pdx->pCoherStagedIO; /* coherent buffer */ char *pCoherBuf = pdx->pCoherStagedIO; /* coherent buffer */
...@@ -541,7 +542,8 @@ static void staged_callback(struct urb *pUrb) ...@@ -541,7 +542,8 @@ static void staged_callback(struct urb *pUrb)
if ((pdx->StagedDone == pdx->StagedLength) || /* If no more to do */ if ((pdx->StagedDone == pdx->StagedLength) || /* If no more to do */
(bCancel)) { /* or this IRP was cancelled */ (bCancel)) { /* or this IRP was cancelled */
TRANSAREA *pArea = &pdx->rTransDef[pdx->StagedId]; /* Transfer area info */ /* Transfer area info */
struct transarea *pArea = &pdx->rTransDef[pdx->StagedId];
dev_dbg(&pdx->interface->dev, dev_dbg(&pdx->interface->dev,
"%s: transfer done, bytes %d, cancel %d\n", "%s: transfer done, bytes %d, cancel %d\n",
__func__, pdx->StagedDone, bCancel); __func__, pdx->StagedDone, bCancel);
...@@ -761,7 +763,8 @@ static int ced_stage_chunk(DEVICE_EXTENSION *pdx) ...@@ -761,7 +763,8 @@ static int ced_stage_chunk(DEVICE_EXTENSION *pdx)
int ced_read_write_mem(DEVICE_EXTENSION *pdx, bool Read, unsigned short wIdent, int ced_read_write_mem(DEVICE_EXTENSION *pdx, bool Read, unsigned short wIdent,
unsigned int dwOffs, unsigned int dwLen) unsigned int dwOffs, unsigned int dwLen)
{ {
TRANSAREA *pArea = &pdx->rTransDef[wIdent]; /* Transfer area info */ /* Transfer area info */
struct transarea *pArea = &pdx->rTransDef[wIdent];
if (!can_accept_io_requests(pdx)) { /* Are we in a state to accept new requests? */ if (!can_accept_io_requests(pdx)) { /* Are we in a state to accept new requests? */
dev_err(&pdx->interface->dev, "%s: can't accept requests\n", dev_err(&pdx->interface->dev, "%s: can't accept requests\n",
......
...@@ -101,7 +101,7 @@ struct circ_blk { ...@@ -101,7 +101,7 @@ struct circ_blk {
/* A structure holding all of the information about a transfer area - an area of */ /* A structure holding all of the information about a transfer area - an area of */
/* memory set up for use either as a source or destination in DMA transfers. */ /* memory set up for use either as a source or destination in DMA transfers. */
typedef struct transarea { struct transarea {
void __user *lpvBuff; /* User address of xfer area saved for completeness */ void __user *lpvBuff; /* User address of xfer area saved for completeness */
UINT dwBaseOffset; /* offset to start of xfer area in first page */ UINT dwBaseOffset; /* offset to start of xfer area in first page */
UINT dwLength; /* Length of xfer area, in bytes */ UINT dwLength; /* Length of xfer area, in bytes */
...@@ -116,7 +116,7 @@ typedef struct transarea { ...@@ -116,7 +116,7 @@ typedef struct transarea {
UINT dwEventSz; /* ...notification by the event SZ is 0 if unset */ UINT dwEventSz; /* ...notification by the event SZ is 0 if unset */
struct circ_blk aBlocks[2]; /* Info on a pair of circular blocks */ struct circ_blk aBlocks[2]; /* Info on a pair of circular blocks */
wait_queue_head_t wqEvent; /* The wait queue for events in this area MUST BE LAST */ wait_queue_head_t wqEvent; /* The wait queue for events in this area MUST BE LAST */
} TRANSAREA; };
/* The DMADESC structure is used to hold information on the transfer in progress. It */ /* The DMADESC structure is used to hold information on the transfer in progress. It */
/* is set up by ReadDMAInfo, using information sent by the 1401 in an escape sequence. */ /* is set up by ReadDMAInfo, using information sent by the 1401 in an escape sequence. */
...@@ -156,7 +156,7 @@ typedef struct _DEVICE_EXTENSION { ...@@ -156,7 +156,7 @@ typedef struct _DEVICE_EXTENSION {
__u8 bInterval; /* Interrupt end point interval */ __u8 bInterval; /* Interrupt end point interval */
volatile unsigned int dwDMAFlag; /* state of DMA */ volatile unsigned int dwDMAFlag; /* state of DMA */
TRANSAREA rTransDef[MAX_TRANSAREAS];/* transfer area info */ struct transarea rTransDef[MAX_TRANSAREAS]; /* transfer area info */
volatile DMADESC rDMAInfo; /* info on current DMA transfer */ volatile DMADESC rDMAInfo; /* info on current DMA transfer */
volatile bool bXFerWaiting; /* Flag set if DMA transfer stalled */ volatile bool bXFerWaiting; /* Flag set if DMA transfer stalled */
volatile bool bInDrawDown; /* Flag that we want to halt transfers */ volatile bool bInDrawDown; /* Flag that we want to halt transfers */
......
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