[Armadillo:05877] Re: Armadillo-440で802.11 SDIO無線LANカードを使う
Kazunao Yokoo
email@hidden
2010年 10月 1日 (金) 15:35:55 JST
横尾です。
お世話になっております。
パッチですが、dataの中身がひっくり返っていたので、
> + if (chunk_remain)
> + writel(htonl(data), host->ioaddr + SDHCI_BUFFER);
というように、dataをひっくり返してから
bufferに書き込みました。
上記修正にて、ping疎通まで確認できました。
ありがとうございました
m(__)m
以上、よろしくお願いいたします。
(2010/10/01 14:51), nakai wrote:
> nakaiです。
>
>> Complete sending cmd, transfer mode would be 0x353a0002.
>> *** mmc1 got interrupt: 0x00000011
>> PIO writing
>> PIO transfer complete.
>> *** mmc1 got interrupt: 0x00000010 <---[★2]
>> *** mmc1 got interrupt: 0x00000010
>
> 成功時と失敗時の違いは、"transfer complete"が発生するかですね。
> ソースコードをみると、「blklen:1, blkcnt:1」の場合は、
> データ書き込みをしていないように見えます。
> 以下のパッチをあててみてもらえますか?
>
> diff --git a/drivers/mmc/host/mx_sdhci.c b/drivers/mmc/host/mx_sdhci.c
> index a803426..f16eb1a 100644
> --- a/drivers/mmc/host/mx_sdhci.c
> +++ b/drivers/mmc/host/mx_sdhci.c
> @@ -382,6 +382,8 @@ static void sdhci_write_block_pio(struct sdhci_host *host)
>
> if (host->remain == 0) {
> if (sdhci_next_sg(host) == 0) {
> + if (chunk_remain)
> + writel(data, host->ioaddr + SDHCI_BUFFER);
> BUG_ON(blksize != 0);
> return;
> }
>
armadillo メーリングリストの案内