On Sat, Oct 05, 2019 at 05:47:43PM +0200, Philippe Mathieu-Daudé wrote: > Hi all, > > Yesterday Peter Maydell asked on IRC if I had any working Exynos4 > image. I looked at some old backuped notes and could boot Guenter > initrd with BusyBox. > I'll use this cover letter to share my notes, they might help to > have this board fully usable again. > > This board is listed as "Odd Fixes". Since we have it covered, I > thought it was worthwhile to have it covered by tests to avoid > more regressions. > > Frédéric Basse used this board last year: > https://fredericb.info/2018/03/emulating-exynos-4210-bootrom-in-qemu.html > > I'll have a look a these particular commits he added: > > - https://github.com/frederic/qemu-exynos-bootrom/commit/9be5c9f2253dbc04ee > > sd: add sd clock support to SDHC_CLKCON > > - https://github.com/frederic/qemu-exynos-bootrom/commit/6f045949ee2fdec624 > > sd: always reply to ACMD41 (SD_APP_OP_COND) > > Guenter also carries on this patch: > > - https://github.com/groeck/qemu/commit/0a80543cc910d > > hw/timer/exynos4210_mct: Initialize timer before starting it > > When booting a recent Linux kernel, the qemu message "Timer with period > zero, disabling" is seen, apparently because a timer is started before > being initialized. Fix the problem by initializing the offending timer > before starting it. > > It might also be interesting to use Krzysztof's initramfs image: > https://github.com/krzk/tools/blob/master/run-qemu.sh#L29
I haven't been working on QEMU since 2 years but I can try to find that initramfs image. The recent initramfs I create, is for testing kernel under my Buildbot. I take standard initramfs from Arch ARM and then I add some more stuff: Source/instruction is here: https://github.com/krzk/tools/tree/master/buildbot/initramfs and the script making it for each boot is here: https://github.com/krzk/tools/blob/master/buildbot/build-slave-deploy.sh#L50 https://github.com/krzk/tools/blob/master/pi/make-initramfs.sh Best regards, Krzysztof > > The 1st test added works fine, however the 2nd (SD card) is not > reliable so it is disabled. We might need to adapt the ADMA patch > Igor sent once: > https://patchwork.ozlabs.org/patch/181854/ > > If you want to run the Avocado tests, you need these other patches > pending review: > > - https://lists.gnu.org/archive/html/qemu-devel/2019-09/msg06439.html > "tests/boot_linux_console: Extract the gunzip() helper" > > - https://lists.gnu.org/archive/html/qemu-devel/2019-09/msg06438.html > "python/qemu/machine: Allow to use other serial consoles than default" > (only for the 2nd disabled test) > > Regards, > > Phil. > > Based-on: 20190926173428.10713-16-f4...@amsat.org > > Philippe Mathieu-Daudé (5): > tests/boot_linux_console: Add initrd test for the Exynos4210 > hw/sd/sdhci: Add a comment to distinct the i.MX eSDHC functions > hw/sd/sdhci: Add dummy Samsung SDHCI controller > hw/arm/exynos4210: Use the Samsung s3c SDHCI controller > tests/boot_linux_console: Add sdcard test for the Exynos4210 > > hw/arm/exynos4210.c | 2 +- > hw/sd/sdhci.c | 68 +++++++++++++++++++- > include/hw/sd/sdhci.h | 2 + > tests/acceptance/boot_linux_console.py | 88 ++++++++++++++++++++++++++ > 4 files changed, 158 insertions(+), 2 deletions(-) > > -- > 2.20.1 >