diff options
author | Samuel Ortiz <sameo@openedhand.com> | 2008-10-01 15:15:41 +0000 |
---|---|---|
committer | Samuel Ortiz <sameo@openedhand.com> | 2008-10-01 15:15:41 +0000 |
commit | 9b52d247545fb19e6ef9813d376007e518b50e48 (patch) | |
tree | 5f838f5cc45bce1a478eb617412f14a9a6a86429 /meta/packages/rt2860/rt2860-1.7.0.0/05-iwpriv.patch | |
parent | f36ea090d1d591ca37208f808ba40cf95d68a45d (diff) | |
download | openembedded-core-9b52d247545fb19e6ef9813d376007e518b50e48.tar.gz openembedded-core-9b52d247545fb19e6ef9813d376007e518b50e48.tar.bz2 openembedded-core-9b52d247545fb19e6ef9813d376007e518b50e48.zip |
rt2860: Fix iwpriv oops
Triggered by powertop, iwpriv -a oops this driver when the interface is
down.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5370 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/rt2860/rt2860-1.7.0.0/05-iwpriv.patch')
-rw-r--r-- | meta/packages/rt2860/rt2860-1.7.0.0/05-iwpriv.patch | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/meta/packages/rt2860/rt2860-1.7.0.0/05-iwpriv.patch b/meta/packages/rt2860/rt2860-1.7.0.0/05-iwpriv.patch new file mode 100644 index 0000000000..5d1ff82e0e --- /dev/null +++ b/meta/packages/rt2860/rt2860-1.7.0.0/05-iwpriv.patch @@ -0,0 +1,62 @@ +--- + src/cmm_info.c | 34 ++++++++++++++++++++-------------- + 1 file changed, 20 insertions(+), 14 deletions(-) + +Index: rt2860-1.7.0.0/src/cmm_info.c +=================================================================== +--- rt2860-1.7.0.0.orig/src/cmm_info.c 2008-10-01 16:16:04.000000000 +0200 ++++ rt2860-1.7.0.0/src/cmm_info.c 2008-10-01 17:03:10.000000000 +0200 +@@ -808,33 +808,39 @@ INT Show_DescInfo_Proc( + #ifdef RT2860 + INT i, QueIdx=0; + PRT28XX_RXD_STRUC pRxD; +- PTXD_STRUC pTxD; ++ PTXD_STRUC pTxD; + PRTMP_TX_RING pTxRing = &pAd->TxRing[QueIdx]; + PRTMP_MGMT_RING pMgmtRing = &pAd->MgmtRing; +- PRTMP_RX_RING pRxRing = &pAd->RxRing; +- ++ PRTMP_RX_RING pRxRing = &pAd->RxRing; ++ + for(i=0;i<TX_RING_SIZE;i++) + { + pTxD = (PTXD_STRUC) pTxRing->Cell[i].AllocVa; +- printk("Desc #%d\n",i); +- hex_dump("Tx Descriptor", (char *)pTxD, 16); +- printk("pTxD->DMADONE = %x\n", pTxD->DMADONE); ++ if (pTxD) { ++ printk("Desc #%d\n",i); ++ hex_dump("Tx Descriptor", (char *)pTxD, 16); ++ printk("pTxD->DMADONE = %x\n", pTxD->DMADONE); ++ } + } +- printk("---------------------------------------------------\n"); ++ + for(i=0;i<MGMT_RING_SIZE;i++) + { + pTxD = (PTXD_STRUC) pMgmtRing->Cell[i].AllocVa; +- printk("Desc #%d\n",i); +- hex_dump("Mgmt Descriptor", (char *)pTxD, 16); +- printk("pMgmt->DMADONE = %x\n", pTxD->DMADONE); ++ if (pTxD) { ++ printk("Desc #%d\n",i); ++ hex_dump("Mgmt Descriptor", (char *)pTxD, 16); ++ printk("pMgmt->DMADONE = %x\n", pTxD->DMADONE); ++ } + } +- printk("---------------------------------------------------\n"); ++ + for(i=0;i<RX_RING_SIZE;i++) + { + pRxD = (PRT28XX_RXD_STRUC) pRxRing->Cell[i].AllocVa; +- printk("Desc #%d\n",i); +- hex_dump("Rx Descriptor", (char *)pRxD, 16); +- printk("pRxD->DDONE = %x\n", pRxD->DDONE); ++ if (pRxD) { ++ printk("Desc #%d\n",i); ++ hex_dump("Rx Descriptor", (char *)pRxD, 16); ++ printk("pRxD->DDONE = %x\n", pRxD->DDONE); ++ } + } + #endif // RT2860 // + |