From owner-freebsd-arm@FreeBSD.ORG  Mon Sep  1 09:58:48 2008
Return-Path: <owner-freebsd-arm@FreeBSD.ORG>
Delivered-To: freebsd-arm@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id C90081065694
	for <freebsd-arm@freebsd.org>; Mon,  1 Sep 2008 09:58:48 +0000 (UTC)
	(envelope-from jacques.fourie@gmail.com)
Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.158])
	by mx1.freebsd.org (Postfix) with ESMTP id CE7368FC1D
	for <freebsd-arm@freebsd.org>; Mon,  1 Sep 2008 09:58:47 +0000 (UTC)
	(envelope-from jacques.fourie@gmail.com)
Received: by fg-out-1718.google.com with SMTP id l26so1194893fgb.35
	for <freebsd-arm@freebsd.org>; Mon, 01 Sep 2008 02:58:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma;
	h=domainkey-signature:received:received:message-id:date:from:to
	:subject:cc:in-reply-to:mime-version:content-type:references;
	bh=0gkfVDC7Y0GL+QvSEZ8Y+R05DrmZ3/84TG6wjwLyaP4=;
	b=ZceMpdXHPCdOHGQPaGIZzDKWQrtX+8GSPy3U+lSHCzjzjMVMjbuss/cDmTY+g+vbo9
	DoizjsshRCrVBUTtk1U7upqzndvC1My2p/uaLKzLl5nWXJw1xVWplFLkAIYzUgZu3van
	2+Y5+pHv0YtwM3uVkTL6J1rt/4N9ZplBidPXc=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma;
	h=message-id:date:from:to:subject:cc:in-reply-to:mime-version
	:content-type:references;
	b=nzBZ5Obx7S5GGxdFicbnKxKIzqdu/3aqguS/0JdrGGoJvicnTPmOfzs3RRmezx7M/e
	6O5IJVMsqaWpS0UwPMf4DMxAm9CQeNsUdeqZsJuXvBTQYQ0XJDGPFDR49b1BDoNnFKDO
	Rk4DB5uyWCx2YN44VW1aDUWEFa9s+3LrZKCBw=
Received: by 10.103.18.19 with SMTP id v19mr4148267mui.113.1220262808348;
	Mon, 01 Sep 2008 02:53:28 -0700 (PDT)
Received: by 10.103.17.17 with HTTP; Mon, 1 Sep 2008 02:53:28 -0700 (PDT)
Message-ID: <be2f52430809010253wbd5054fn783a3b420296406@mail.gmail.com>
Date: Mon, 1 Sep 2008 11:53:28 +0200
From: "Jacques Fourie" <jacques.fourie@gmail.com>
To: "Stanislav Sedov" <stas@freebsd.org>
In-Reply-To: <be2f52430808300037y79723a2ascf62c33aec7579f3@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_7236_33491345.1220262808340"
References: <be2f52430808290920w5e586180q657c842cae07277b@mail.gmail.com>
	<20080829231522.201a591b.stas@FreeBSD.org>
	<be2f52430808300037y79723a2ascf62c33aec7579f3@mail.gmail.com>
Cc: freebsd-arm@freebsd.org
Subject: Re: MMC Controller driver for PXA255
X-BeenThere: freebsd-arm@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Porting FreeBSD to the StrongARM Processor <freebsd-arm.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-arm>,
	<mailto:freebsd-arm-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-arm>
List-Post: <mailto:freebsd-arm@freebsd.org>
List-Help: <mailto:freebsd-arm-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-arm>,
	<mailto:freebsd-arm-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 01 Sep 2008 09:58:49 -0000

------=_Part_7236_33491345.1220262808340
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

>> On Fri, 29 Aug 2008 18:20:16 +0200
>> "Jacques Fourie" <jacques.fourie@gmail.com> mentioned:
>>
>>> Hi,
>>>
>>> I've written a driver for the MMC controller found on the Intel Xscale
>>> PXA255 (as found on the Gumstix Connex). It seems to work OK - I've
>>> tested with a range of SD cards. The driver works in PIO mode (still
>>> busy to debug some DMA issues) and on my Gumstix Connex I get around
>>> 400kB/s. If anyone wants to review the code for inclusion let me know
>>> and I'll be happy to provide it.
>>>
>>
>> Great work!
>> Upload it somewhere or post here, so we can take a look.
>>
>> Thanks!
>> --
>> Stanislav Sedov
>> ST4096-RIPE
>>
> Hi,
>
> I previously sent Warner some mods but forgot to cc the list. Here is
> a diff against current (svn revision 182470).  I also made some minor
> mods to the mmc stack that I'll post as soon as I've cleaned them up -
> they contain a lot of extra printf's at the moment.
>
> Jacques
>
Here is a diff against mmc.c that contains my mods to the mmc stack.
Very minor - I've added support for retrying commands. Some SD cards
that I've tested with requires one extra ACMD_SD_SEND_OP_COND so I've
included that as well.

Jacques

------=_Part_7236_33491345.1220262808340
Content-Type: text/plain; name=mmc_diff.txt
Content-Transfer-Encoding: base64
X-Attachment-Id: f_fkkx0tq11
Content-Disposition: attachment; filename=mmc_diff.txt

LS0tIGZic2RfY3VycmVudF8yMDA4MDgzMC9zcmMvc3lzL2Rldi9tbWMvbW1jLmMJMjAwOC0wOC0z
MCAwODo0NToxMS4wMDAwMDAwMDAgKzAyMDAKKysrIGZic2RfamZfcHJpdi9zcmMvc3lzL2Rldi9t
bWMvbW1jLmMJMjAwOC0wOS0wMSAxMTozNTozOS4wMDAwMDAwMDAgKzAyMDAKQEAgLTUxLDcgKzUx
LDcgQEAKICAqLwogCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci1fX0ZCU0RJRCgiJEZyZWVCU0Q6
IGhlYWQvc3lzL2Rldi9tbWMvbW1jLmMgMTcwMzM3IDIwMDctMDYtMDUgMTc6MDQ6NDRaIGltcCAk
Iik7CitfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CiAKICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KICNp
bmNsdWRlIDxzeXMvc3lzdG0uaD4KQEAgLTI1OCwxMyArMjU4LDIyIEBACiBtbWNfd2FrZXVwKHN0
cnVjdCBtbWNfcmVxdWVzdCAqcmVxKQogewogCXN0cnVjdCBtbWNfc29mdGMgKnNjOworCXN0cnVj
dCBtbWNfY29tbWFuZCAqY21kID0gcmVxLT5jbWQ7CiAKIC8vCXByaW50ZigiV2FrZXVwIGZvciBy
ZXEgJXAgZG9uZV9kYXRhICVwXG4iLCByZXEsIHJlcS0+ZG9uZV9kYXRhKTsKIAlzYyA9IChzdHJ1
Y3QgbW1jX3NvZnRjICopcmVxLT5kb25lX2RhdGE7CiAJTU1DX0xPQ0soc2MpOwotCXJlcS0+Zmxh
Z3MgfD0gTU1DX1JFUV9ET05FOwotCXdha2V1cChyZXEpOwotCU1NQ19VTkxPQ0soc2MpOworCWlm
IChjbWQtPmVycm9yICYmIGNtZC0+cmV0cmllcykgeworCQljbWQtPnJldHJpZXMtLTsKKwkJY21k
LT5lcnJvciA9IDA7CisJCU1NQ19VTkxPQ0soc2MpOworCQlNTUNCUl9SRVFVRVNUKGRldmljZV9n
ZXRfcGFyZW50KHNjLT5kZXYpLCBzYy0+ZGV2LCByZXEpOworCX0KKwllbHNlIHsKKwkJcmVxLT5m
bGFncyB8PSBNTUNfUkVRX0RPTkU7CisJCXdha2V1cChyZXEpOworCQlNTUNfVU5MT0NLKHNjKTsK
Kwl9CiB9CiAKIHN0YXRpYyBpbnQKQEAgLTU1Niw3ICs1NjUsNyBAQAogCWNtZC5vcGNvZGUgPSBN
TUNfQUxMX1NFTkRfQ0lEOwogCWNtZC5hcmcgPSAwOwogCWNtZC5mbGFncyA9IE1NQ19SU1BfUjIg
fCBNTUNfQ01EX0JDUjsKLQllcnIgPSBtbWNfd2FpdF9mb3JfY21kKHNjLCAmY21kLCAwKTsKKwll
cnIgPSBtbWNfd2FpdF9mb3JfY21kKHNjLCAmY21kLCBDTURfUkVUUklFUyk7CiAJbWVtY3B5KHJh
d2NpZCwgY21kLnJlc3AsIDQgKiBzaXplb2YodWludDMyX3QpKTsKIAlyZXR1cm4gKGVycik7CiB9
CkBAIC01NzAsNyArNTc5LDcgQEAKIAljbWQub3Bjb2RlID0gTU1DX1NFTkRfQ1NEOwogCWNtZC5h
cmcgPSByY2EgPDwgMTY7CiAJY21kLmZsYWdzID0gTU1DX1JTUF9SMiB8IE1NQ19DTURfQkNSOwot
CWVyciA9IG1tY193YWl0X2Zvcl9jbWQoc2MsICZjbWQsIDApOworCWVyciA9IG1tY193YWl0X2Zv
cl9jbWQoc2MsICZjbWQsIENNRF9SRVRSSUVTKTsKIAltZW1jcHkocmF3Y2lkLCBjbWQucmVzcCwg
NCAqIHNpemVvZih1aW50MzJfdCkpOwogCXJldHVybiAoZXJyKTsKIH0KQEAgLTU4NCw3ICs1OTMs
NyBAQAogCWNtZC5vcGNvZGUgPSBTRF9TRU5EX1JFTEFUSVZFX0FERFI7CiAJY21kLmFyZyA9IDA7
CiAJY21kLmZsYWdzID0gTU1DX1JTUF9SNiB8IE1NQ19DTURfQkNSOwotCWVyciA9IG1tY193YWl0
X2Zvcl9jbWQoc2MsICZjbWQsIDApOworCWVyciA9IG1tY193YWl0X2Zvcl9jbWQoc2MsICZjbWQs
IENNRF9SRVRSSUVTKTsKIAkqcmVzcCA9IGNtZC5yZXNwWzBdOwogCXJldHVybiAoZXJyKTsKIH0K
QEAgLTY2NCwxMiArNjczLDE2IEBACiAJLyoKIAkgKiBSZXNlbGVjdCB0aGUgY2FyZHMgYWZ0ZXIg
d2UndmUgaWRsZWQgdGhlbSBhYm92ZS4KIAkgKi8KLQlpZiAobW1jYnJfZ2V0X21vZGUoZGV2KSA9
PSBtb2RlX3NkKQotCQltbWNfc2VuZF9hcHBfb3BfY29uZChzYywgbW1jYnJfZ2V0X29jcihkZXYp
LCBOVUxMKTsKKwlpZiAobW1jYnJfZ2V0X21vZGUoZGV2KSA9PSBtb2RlX3NkKSB7CisJCWludCBp
OworCisJCWZvciAoaSA9IDA7IGkgPCAyOyBpKyspCisJCQltbWNfc2VuZF9hcHBfb3BfY29uZChz
YywgbW1jYnJfZ2V0X29jcihkZXYpLCBOVUxMKTsKKwl9CiAJZWxzZQogCQltbWNfc2VuZF9vcF9j
b25kKHNjLCBtbWNicl9nZXRfb2NyKGRldiksIE5VTEwpOwogCW1tY19kaXNjb3Zlcl9jYXJkcyhz
Yyk7Ci0KKwkKIAltbWNicl9zZXRfYnVzX21vZGUoZGV2LCBwdXNocHVsbCk7CiAJbW1jYnJfdXBk
YXRlX2lvcyhkZXYpOwogCWJ1c19nZW5lcmljX2F0dGFjaChkZXYpOwpAQCAtNzkwLDQgKzgwMyw1
IEBACiAKIAogRFJJVkVSX01PRFVMRShtbWMsIGF0OTFfbWNpLCBtbWNfZHJpdmVyLCBtbWNfZGV2
Y2xhc3MsIDAsIDApOworRFJJVkVSX01PRFVMRShtbWMsIHB4YV9tY2ksIG1tY19kcml2ZXIsIG1t
Y19kZXZjbGFzcywgMCwgMCk7CiBEUklWRVJfTU9EVUxFKG1tYywgc2RoLCBtbWNfZHJpdmVyLCBt
bWNfZGV2Y2xhc3MsIDAsIDApOwo=
------=_Part_7236_33491345.1220262808340--