[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201501301523.34410@pali>
Date: Fri, 30 Jan 2015 15:23:34 +0100
From: Pali Rohár <pali.rohar@...il.com>
To: Aaro Koskinen <aaro.koskinen@....fi>
Cc: Chris Ball <chris@...ntf.net>,
Ulf Hansson <ulf.hansson@...aro.org>,
linux-mmc@...r.kernel.org, linux-kernel@...r.kernel.org,
Pavel Machek <pavel@....cz>,
Ivaylo Dimitrov <ivo.g.dimitrov.75@...il.com>,
Sebastian Reichel <sre@...nel.org>
Subject: Re: mmc does not work in qemu n900
On Tuesday 27 January 2015 10:17:39 Pali Rohár wrote:
> On Tuesday 27 January 2015 00:21:04 Aaro Koskinen wrote:
> > Hi,
> >
> > On Mon, Jan 26, 2015 at 10:04:59PM +0100, Pali Rohár wrote:
> > > problem? Why any of these two patches fix problem when mmc
> > > is not detected by kernel in qemu (machine n900)?
> > > Detection of mmc fails because function
> > > mmc_send_op_cond() without one of above patches fails.
> >
> > Has it ever worked? It could be just that QEMU's emulation
> > is broken. Since the kernel works on actual HW, you
> > probably should contact QEMU maintainers.
> >
> > I don't see n900 in Debian's QEMU. There's n800 and n810 but
> > I couldn't boot any of my kernels with those...
> >
> > A.
>
> It worked with stock Nokia kernel (2.6.28).
>
> N900 qemu support is not in upstream qemu project, but in
> linaro qemu version. You can find it e.g. in ubuntu:
> http://packages.ubuntu.com/source/precise-updates/qemu-linaro
Here is another alternative patch which enable internal eMMC
support in qemu n900:
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index 9584bff..225df49 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -2330,13 +2330,13 @@ static int mmc_rescan_try_freq(struct
mmc_host *host, unsigned freq)
sdio_reset(host);
mmc_go_idle(host);
- mmc_send_if_cond(host, host->ocr_avail);
-
- /* Order's important: probe SDIO, then SD, then MMC */
- if (!mmc_attach_sdio(host))
- return 0;
- if (!mmc_attach_sd(host))
- return 0;
+// mmc_send_if_cond(host, host->ocr_avail);
+//
+// /* Order's important: probe SDIO, then SD, then MMC */
+// if (!mmc_attach_sdio(host))
+// return 0;
+// if (!mmc_attach_sd(host))
+// return 0;
if (!mmc_attach_mmc(host))
return 0;
It just disable SDIO and SD code. It looks like using some SDIO
or SD commands on mmc controller in qemu cause problems...
Any idea?
--
Pali Rohár
pali.rohar@...il.com
Download attachment "signature.asc " of type "application/pgp-signature" (199 bytes)
Powered by blists - more mailing lists