31.03.09, 22:09, "satish sethuraman" <[email protected]>: 
> i am using rb433ah board which as atheros AR7161 mips24K processor.
> I have a AR5414 chipset wifi card in my mini-pci slot. The wifi card is 
> driven  by ath5k driver obtained from compat-wireless-2009-03-24. The git 
> describe of compat wirless is v2.6.29-rc8-18695-g8fe80c6.
>  I am trying to put the wifi card in Access point mode using hostapd.

You should use 4B DMA data transfers, bigger DMA RX burst does not work on all 
not 802.11n Atheros' chipsets and Atheros MIPS CPU.
It is an old and known bug.

diff -urNbd --exclude='*.*o*' --exclude='*.mod.c' ath5k.orig/initvals.c 
ath5k/initvals.c                                                   
--- ath5k.orig/initvals.c       2009-03-17 08:14:07.000000000 +0300             
                                                           
+++ ath5k/initvals.c    2009-03-17 17:09:26.000000000 +0300                     
                                                           
@@ -59,7 +59,11 @@                                                              
                                                           
        { AR5K_IER,             AR5K_IER_DISABLE },                             
                                                           
        { AR5K_BSR,             0, AR5K_INI_READ },                             
                                                           
        { AR5K_TXCFG,           AR5K_DMASIZE_128B },                            
                                                           
+#ifndef CONFIG_ATHEROS_AR71XX                                                  
                                                           
        { AR5K_RXCFG,           AR5K_DMASIZE_128B },                            
                                                           
+#else                                                                          
                                                           
+       { AR5K_RXCFG,           AR5K_DMASIZE_4B },                              
                                                           
+#endif                                                                         
                                                           
        { AR5K_CFG,             AR5K_INIT_CFG },                                
                                                           
        { AR5K_TOPS,            8 },                                            
                                                           
        { AR5K_RXNOFRM,         8 },                                            
                                                           
diff -urNbd --exclude='*.*o*' --exclude='*.mod.c' ath5k.orig/reset.c 
ath5k/reset.c                                                         
--- ath5k.orig/reset.c  2009-03-17 08:14:07.000000000 +0300                     
                                                           
+++ ath5k/reset.c       2009-03-17 17:09:06.000000000 +0300                     
                                                           
@@ -1296,8 +1296,13 @@                                                          
                                                           
        if (ah->ah_version != AR5K_AR5210) {                                    
                                                           
                AR5K_REG_WRITE_BITS(ah, AR5K_TXCFG,                             
                                                           
                        AR5K_TXCFG_SDMAMR, AR5K_DMASIZE_128B);                  
                                                           
+#ifndef CONFIG_ATHEROS_AR71XX                                                  
                                                           
                AR5K_REG_WRITE_BITS(ah, AR5K_RXCFG,                             
                                                           
                        AR5K_RXCFG_SDMAMW, AR5K_DMASIZE_128B);                  
                                                           
+#else                                                                          
                                                           
+               AR5K_REG_WRITE_BITS(ah, AR5K_RXCFG,                             
                                                           
+                       AR5K_RXCFG_SDMAMW, AR5K_DMASIZE_4B);                    
                                                           
+#endif                                                                         
                                                           
        }                                                                       
                                                           
                                                                                
                                                           
        /* Pre-enable interrupts on 5211/5212*/ 

Without these changes ath5k does not work on RB4xx.
_______________________________________________
ath5k-devel mailing list
[email protected]
https://lists.ath5k.org/mailman/listinfo/ath5k-devel

Reply via email to