Hi Mario,
SeaBIOS supports eMMC, but it's a bit hacky. For eMMC in ACPI mode you have to add files containing the address of the eMMC to the cbfs. No idea, if eMMC in PCI mode works out-of-box.
cbfstool coreboot.rom add -n etc/sdcard0 -f /tmp/sdcard0 -t raw cbfstool coreboot.rom add -n etc/sdcard1 -f /tmp/sdcard1 -t raw
Best, lynxis
PS. Tested on a baytrail based chromebook.
On Mon, 11 Jan 2016 08:29:48 +0000 "Scheithauer, Mario" Mario.Scheithauer@siemens.com wrote:
Hello Together,
I play with coreboot and SeaBIOS on a BayTrail platform. We have an 8GB eMMC flash on the board. With that combination I can boot a Lubuntu. It seems that the current version of SeaBIOS does not support High-speed eMMC. Could someone say something about that? Are there some activities to expand sdcard.c for eMMC bus initialisation?
I would be grateful for any information.
Thanks, Mario
On Mon, Jan 11, 2016 at 02:46:24PM +0100, Alexander Couzens wrote:
Hi Mario,
SeaBIOS supports eMMC, but it's a bit hacky. For eMMC in ACPI mode you have to add files containing the address of the eMMC to the cbfs. No idea, if eMMC in PCI mode works out-of-box.
There were some machines that apparently boot with the SDHCI controller in PCI mode, but then coreboot implements some hardware sequence to hide them via PCI and only advertise them via ACPI. The "etc/sdcard" mechanism was implemented as a hack to get around the coreboot oddity (implementing an acpi dsdt parser isn't really an option).
Detection of normal PCI SDHCI controllers should work fine.
cbfstool coreboot.rom add -n etc/sdcard0 -f /tmp/sdcard0 -t raw cbfstool coreboot.rom add -n etc/sdcard1 -f /tmp/sdcard1 -t raw
The above can also be done with: cbfstool coreboot.rom add-int -i 0xd071c000 -n etc/sdcard0 cbfstool coreboot.rom add-int -i 0xd071f000 -n etc/sdcard1
But, I wouldn't do that without inspecting the coreboot log (cbmem) to verify that the device is in acpi mode and present at those addresses.
-Kevin
Hello Kevin, Alexander,
Attached is the boot log. Thanks that you have a look at the eMMC initialization. I will try the other way about both files (sdcard0, sdcard1). I think for my case the address should be 0xd0520000 and 0xd0521000, or isn't it?
Thanks and best regards, Mario
-----Ursprüngliche Nachricht----- Von: Kevin O'Connor [mailto:kevin@koconnor.net] Gesendet: Montag, 11. Januar 2016 15:39 An: Alexander Couzens Cc: Scheithauer, Mario; seabios@seabios.org Betreff: Re: [SeaBIOS] Does SeaBIOS support eMMC?
On Mon, Jan 11, 2016 at 02:46:24PM +0100, Alexander Couzens wrote:
Hi Mario,
SeaBIOS supports eMMC, but it's a bit hacky. For eMMC in ACPI mode you have to add files containing the address of the eMMC to the cbfs. No idea, if eMMC in PCI mode works out-of-box.
There were some machines that apparently boot with the SDHCI controller in PCI mode, but then coreboot implements some hardware sequence to hide them via PCI and only advertise them via ACPI. The "etc/sdcard" mechanism was implemented as a hack to get around the coreboot oddity (implementing an acpi dsdt parser isn't really an option).
Detection of normal PCI SDHCI controllers should work fine.
cbfstool coreboot.rom add -n etc/sdcard0 -f /tmp/sdcard0 -t raw cbfstool coreboot.rom add -n etc/sdcard1 -f /tmp/sdcard1 -t raw
The above can also be done with: cbfstool coreboot.rom add-int -i 0xd071c000 -n etc/sdcard0 cbfstool coreboot.rom add-int -i 0xd071f000 -n etc/sdcard1
But, I wouldn't do that without inspecting the coreboot log (cbmem) to verify that the device is in acpi mode and present at those addresses.
-Kevin