Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 337043
b: refs/heads/master
c: 7c75095
h: refs/heads/master
i:
  337041: a70af04
  337039: 429cdd9
v: v3
  • Loading branch information
Kevin McKinney authored and Greg Kroah-Hartman committed Oct 19, 2012
1 parent 2610822 commit 6d3b2c0
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 16 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 1917e7f916352d82f0a88f769b7c6ac7bc76f5af
refs/heads/master: 7c7509597a3193a840311cece78c37ab545e884c
30 changes: 15 additions & 15 deletions trunk/drivers/staging/bcm/CmHost.c
Original file line number Diff line number Diff line change
Expand Up @@ -1573,36 +1573,36 @@ ULONG SetUpTargetDsxBuffers(struct bcm_mini_adapter *Adapter)

static ULONG GetNextTargetBufferLocation(struct bcm_mini_adapter *Adapter, B_UINT16 tid)
{
ULONG ulTargetDSXBufferAddress;
ULONG ulTargetDsxBufferIndexToUse, ulMaxTry;
ULONG dsx_buf;
ULONG idx, max_try;

if ((Adapter->ulTotalTargetBuffersAvailable == 0) || (Adapter->ulFreeTargetBufferCnt == 0)) {
ClearTargetDSXBuffer(Adapter, tid, FALSE);
return 0;
}

ulTargetDsxBufferIndexToUse = Adapter->ulCurrentTargetBuffer;
ulMaxTry = Adapter->ulTotalTargetBuffersAvailable;
while ((ulMaxTry) && (Adapter->astTargetDsxBuffer[ulTargetDsxBufferIndexToUse].valid != 1)) {
ulTargetDsxBufferIndexToUse = (ulTargetDsxBufferIndexToUse+1) % Adapter->ulTotalTargetBuffersAvailable;
ulMaxTry--;
idx = Adapter->ulCurrentTargetBuffer;
max_try = Adapter->ulTotalTargetBuffersAvailable;
while ((max_try) && (Adapter->astTargetDsxBuffer[idx].valid != 1)) {
idx = (idx+1) % Adapter->ulTotalTargetBuffersAvailable;
max_try--;
}

if (ulMaxTry == 0) {
if (max_try == 0) {
BCM_DEBUG_PRINT(Adapter, DBG_TYPE_PRINTK, 0, 0, "\n GetNextTargetBufferLocation : Error No Free Target DSX Buffers FreeCnt : %lx ", Adapter->ulFreeTargetBufferCnt);
ClearTargetDSXBuffer(Adapter, tid, FALSE);
return 0;
}

ulTargetDSXBufferAddress = Adapter->astTargetDsxBuffer[ulTargetDsxBufferIndexToUse].ulTargetDsxBuffer;
Adapter->astTargetDsxBuffer[ulTargetDsxBufferIndexToUse].valid = 0;
Adapter->astTargetDsxBuffer[ulTargetDsxBufferIndexToUse].tid = tid;
dsx_buf = Adapter->astTargetDsxBuffer[idx].ulTargetDsxBuffer;
Adapter->astTargetDsxBuffer[idx].valid = 0;
Adapter->astTargetDsxBuffer[idx].tid = tid;
Adapter->ulFreeTargetBufferCnt--;
ulTargetDsxBufferIndexToUse = (ulTargetDsxBufferIndexToUse+1)%Adapter->ulTotalTargetBuffersAvailable;
Adapter->ulCurrentTargetBuffer = ulTargetDsxBufferIndexToUse;
BCM_DEBUG_PRINT(Adapter, DBG_TYPE_PRINTK, 0, 0, "GetNextTargetBufferLocation :Returning address %lx tid %d\n", ulTargetDSXBufferAddress, tid);
idx = (idx+1)%Adapter->ulTotalTargetBuffersAvailable;
Adapter->ulCurrentTargetBuffer = idx;
BCM_DEBUG_PRINT(Adapter, DBG_TYPE_PRINTK, 0, 0, "GetNextTargetBufferLocation :Returning address %lx tid %d\n", dsx_buf, tid);

return ulTargetDSXBufferAddress;
return dsx_buf;
}

int AllocAdapterDsxBuffer(struct bcm_mini_adapter *Adapter)
Expand Down

0 comments on commit 6d3b2c0

Please sign in to comment.