linux-amlogic.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* arm64: dts: meson: Boot failure with using eMMC
@ 2019-05-11 20:49 Bob
  2019-05-13  9:53 ` Jerome Brunet
  0 siblings, 1 reply; 3+ messages in thread
From: Bob @ 2019-05-11 20:49 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: linux-amlogic

Even though I come with a problem, I first want to thank you folks for all
that you do. It's much appreciated.

So on to the problem. I've got an Odroid C2 (meson-gxbb) with an eMMC chip
that Ameridroid claims to be an "eMMC Version 4.5 - HS200 interface with
8bit DDR mode from Samsung".

I run the Arch Linux "mainline" kernel and it had been working well. But when
I upgraded the kernel from 4.20 to 5.0 it failed to boot when UBoot couldn't
mount the root filesystem, so it dropped into it's shell. Using an USB serial
dongle, I noticed that none of the usual /dev/mmcblk* files were created.

I saved the failing boot output from the USB dongle, downgraded back to the
4.20 kernel, and now it booted successfully. When I compared the good/bad
dongle outputs it seems that the first error messages were:

   [2.790141] meson-gx-mmc d0074000.mmc: no support for card's volts
       (snip)
   [2.799730] mmc0: error -22 whilst initialising MMC card

I then did a bunch of "git bisect" compiles on Linus' "vanilla" kernel from his
git tree and ultimately it pointed to commit:

   arm64: dts: meson: disable pad bias for mmc pinmuxes
   96a13691c1ddfafc301d1ee451d91fc2cca48d27

Sure enough, when I now revert that commit in /boot/dtbs/amlogic/meson-gxbb-
odroidc2.dtb on the latest shipping 5.1 kernel, it boots successfully. That
same 5.1 kernel fails to boot with the same error messages when that commit
is engaged.


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: arm64: dts: meson: Boot failure with using eMMC
  2019-05-11 20:49 arm64: dts: meson: Boot failure with using eMMC Bob
@ 2019-05-13  9:53 ` Jerome Brunet
  2019-05-13 20:54   ` Bob
  0 siblings, 1 reply; 3+ messages in thread
From: Jerome Brunet @ 2019-05-13  9:53 UTC (permalink / raw)
  To: Bob, linux-arm-kernel; +Cc: linux-amlogic

On Sat, 2019-05-11 at 20:49 +0000, Bob wrote:
> Even though I come with a problem, I first want to thank you folks for all
> that you do. It's much appreciated.
> 
> So on to the problem. I've got an Odroid C2 (meson-gxbb) with an eMMC chip
> that Ameridroid claims to be an "eMMC Version 4.5 - HS200 interface with
> 8bit DDR mode from Samsung".

Could you share the complete part number that is written on the samsung MMC
module ?

> 
> I run the Arch Linux "mainline" kernel and it had been working well. But when
> I upgraded the kernel from 4.20 to 5.0 it failed to boot when UBoot couldn't
> mount the root filesystem, so it dropped into it's shell. Using an USB serial
> dongle, I noticed that none of the usual /dev/mmcblk* files were created.
> 
> I saved the failing boot output from the USB dongle, downgraded back to the
> 4.20 kernel, and now it booted successfully. When I compared the good/bad
> dongle outputs it seems that the first error messages were:
> 
>    [2.790141] meson-gx-mmc d0074000.mmc: no support for card's volts
>        (snip)
>    [2.799730] mmc0: error -22 whilst initialising MMC card
> 
> I then did a bunch of "git bisect" compiles on Linus' "vanilla" kernel from his
> git tree and ultimately it pointed to commit:
> 
>    arm64: dts: meson: disable pad bias for mmc pinmuxes
>    96a13691c1ddfafc301d1ee451d91fc2cca48d27
> 
> Sure enough, when I now revert that commit in /boot/dtbs/amlogic/meson-gxbb-
> odroidc2.dtb on the latest shipping 5.1 kernel, it boots successfully. That
> same 5.1 kernel fails to boot with the same error messages when that commit
> is engaged.

Would you mind trying this branch from kevin:

https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic.git/log/?h=integ

This particular commit might be useful considering your bisect results:

https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic.git/commit/?h=integ&id=1c10023f4d1b75ed164f60bb0ee6bc239655408c

> 
> 
> _______________________________________________
> linux-amlogic mailing list
> linux-amlogic@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-amlogic



_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: arm64: dts: meson: Boot failure with using eMMC
  2019-05-13  9:53 ` Jerome Brunet
@ 2019-05-13 20:54   ` Bob
  0 siblings, 0 replies; 3+ messages in thread
From: Bob @ 2019-05-13 20:54 UTC (permalink / raw)
  To: Jerome Brunet; +Cc: linux-amlogic, linux-arm-kernel






‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Monday, May 13, 2019 4:53 AM, Jerome Brunet <jbrunet@baylibre.com> wrote:

> On Sat, 2019-05-11 at 20:49 +0000, Bob wrote:
>
> > Even though I come with a problem, I first want to thank you folks for all
> > that you do. It's much appreciated.
> > So on to the problem. I've got an Odroid C2 (meson-gxbb) with an eMMC chip
> > that Ameridroid claims to be an "eMMC Version 4.5 - HS200 interface with
> > 8bit DDR mode from Samsung".
>
> Could you share the complete part number that is written on the samsung MMC
> module ?
>
This is the eMMC chip I purchased, and it describes the chip like I said above:

https://ameridroid.com/collections/storage-emmc-and-microsd/products/
emmc-module-c2-linux-red-box

Yet, when I peeled off the red sticker, this is what was scribed on the chip:

   SanDisk
   NBDG4 - 32G
   7424DPHJ80HK

Google tells me that's SanDisk part number SDINBDG4-32G. *If* that's correct,
then the interface is actually "eMMC 5.1 HS400". So perhaps that changes
things??? But my google-fu should probably be verified.

> > I run the Arch Linux "mainline" kernel and it had been working well. But when
> > I upgraded the kernel from 4.20 to 5.0 it failed to boot when UBoot couldn't
> > mount the root filesystem, so it dropped into it's shell. Using an USB serial
> > dongle, I noticed that none of the usual /dev/mmcblk* files were created.
> > I saved the failing boot output from the USB dongle, downgraded back to the
> > 4.20 kernel, and now it booted successfully. When I compared the good/bad
> > dongle outputs it seems that the first error messages were:
> > [2.790141] meson-gx-mmc d0074000.mmc: no support for card's volts
> > (snip)
> > [2.799730] mmc0: error -22 whilst initialising MMC card
> > I then did a bunch of "git bisect" compiles on Linus' "vanilla" kernel from his
> > git tree and ultimately it pointed to commit:
> > arm64: dts: meson: disable pad bias for mmc pinmuxes
> > 96a13691c1ddfafc301d1ee451d91fc2cca48d27
> > Sure enough, when I now revert that commit in /boot/dtbs/amlogic/meson-gxbb-
> > odroidc2.dtb on the latest shipping 5.1 kernel, it boots successfully. That
> > same 5.1 kernel fails to boot with the same error messages when that commit
> > is engaged.
>
> Would you mind trying this branch from kevin:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic.git/log/?h=integ
>
> This particular commit might be useful considering your bisect results:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic.git/commit/?h=integ&id=1c10023f4d1b75ed164f60bb0ee6bc239655408c
>
> > linux-amlogic mailing list
> > linux-amlogic@lists.infradead.org
> > http://lists.infradead.org/mailman/listinfo/linux-amlogic

For completeness, here's what I did:

Performed a "git clone" of Kevin's tree and then ran "make localmodconfig" to
keep the compile time down (I had done the same on all of those other bisect
compiles). I answered "N" for "no" on all of it's config questions, since I
assumed those would support new code compile options that wouldn't be needed
for my system hardware. And then I compiled/installed the new kernel and booted.

UBoot still couldn't find the root filesystem and dropped into it's shell. Yet,
this time I don't see any other errors. Here's the output from the USB serial
dongle:

   http://dpaste.com/25A3H78

NOTE: I saw those "_regulator_put" WARN_ON() errors on *some* of those previous
bisect compiles where the kernel still booted up correctly (i.e. Got to a login
prompt).

As an experiment, I replaced (reverted and now working) "/boot/dtbs/amlogic/
meson-gxbb-odroidc2.dtb" file on the 5.1 kernel I'm currently using, with the
one from Kevin's compile.

That boot failed to find the root filesystem again (and dropped into the UBoot
shell), but displayed the same 2 error messages described yesterday.


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-05-13 20:55 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-11 20:49 arm64: dts: meson: Boot failure with using eMMC Bob
2019-05-13  9:53 ` Jerome Brunet
2019-05-13 20:54   ` Bob

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).