s3c6410 linux 2.6.27 firmware load error

Dan Williams dcbw at redhat.com
Fri Jul 23 15:47:39 EDT 2010


On Thu, 2010-07-01 at 16:20 +0800, 林旻億 wrote:
> My target is s3c6410 and I am using the linux 2.6.27 kernel and the
> associated libertas driver.

This looks like either the SD host controller isn't correctly set up,
doesn't support features that Libertas requires, or there is some
mis-wiring of the libertas chip to the SD host controller.  Sometimes
host controller errata require workarounds on your part too.  The list
archives are full of issues with host controllers that are eventually
solved in various ways.

Dan

> And my sd8686 chip is build on the board.
> 
> When I start the libertas driver, I got the following message
> 
> mmc0: starting CMD52 arg 10004000 flags 00000195
> 
> mmc0: req done (CMD52): 0: 0000100d 00000000 00000000 00000000
> 
> mmc0: starting CMD52 arg 10002000 flags 00000195
> 
> mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
> 
> mmc0: starting CMD52 arg 80022000 flags 00000195
> 
> mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
> 
> libertas: failed to load firmware
> 
> SDIO: Disabling IRQ for mmc0:0001:1...
> 
> mmc0: IRQ thread exiting with code 1
> 
> mmc0: starting CMD52 arg 00000800 flags 00000195
> 
> mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
> 
> SDIO: Disabling device mmc0:0001:1...
> 
> mmc0: starting CMD52 arg 00000400 flags 00000195
> 
> mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
> 
> SDIO: Failed to disable device mmc0:0001:1
> 
> libertas_sdio: probe of mmc0:0001:1 failed with error -110
> 
>  
> 
> I trace the if_sdio.c , then I found the driver break on 
> 
> static int if_sdio_prog_real(struct if_sdio_card *card)
> 
> {
> 
>         ……
> 
>         
> 
>                 req_size = sdio_readb(card->func, IF_SDIO_RD_BASE,
> &ret); => ret always return -110
> 
>                 if (ret){
> 
>                         goto release;
> 
>                 }
> 
>                         
> 
>  
> 
>                 req_size |= sdio_readb(card->func, IF_SDIO_RD_BASE +
> 1, &ret) << 8;
> 
>                 if (ret){
> 
>                         goto release;
> 
>                 }
> 
>         …….
> 
> }
> 
>  
> 
> Can tell me how to fix this issue ?
> 
>  
> 
> Thanks
> 
>  
> 
>  
> 
> 詹記科技(股)公司
> 
> Minyi Lin, 林旻億
> 
> 114 台北市內湖區瑞光路258巷2號4樓之3
> 
> 4F-3., No. 2, Lane 258, Rui Guang Rd., Taipei, Taiwan 114
> 
> TEL: 02-27993616 ext.303
> 
> FAX: 02-27995519
> 
> http://www.ahoya.com.tw
> 
> http://www.clara-comm.com
> 
> http://www.areagroup.com.tw
> 
>  
> 
> 
> 
> -- 
> This message has been scanned for viruses and 
> dangerous content by MailScanner, and is 
> believed to be clean. 
> _______________________________________________
> libertas-dev mailing list
> libertas-dev at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/libertas-dev





More information about the libertas-dev mailing list