Am 18. Oktober 2022 21:01:39 UTC schrieb Bernhard Beschow <shen...@gmail.com>: >Cover letter: > >~~~~~~~~~~~~~ > > > >This series adds support for -pflash and direct SD card access to the > >PPC e500 boards. The idea is to increase compatibility with "real" firmware > >images where only the bare minimum of drivers is compiled in. > > > >The series is structured as follows: > > > >Patches 1-4 perform some general cleanup which paves the way for the rest of > >the series. > > > >Patch 5 adds -pflash handling where memory-mapped flash can be added on > >user's behalf. That is, the flash memory region in the eLBC is only added if > >the -pflash argument is supplied. Note that the cfi01 device model becomes > >stricter in checking the size of the emulated flash space. > > > >Patches 6 and 7 add a new device model - the Freescale eSDHC - to the e500 > >boards which was missing so far. > > > >User documentation is also added as the new features become available. > > > >Tesing done: > >* `qemu-system-ppc -M ppce500 -cpu e500mc -m 256 -kernel uImage -append > >"console=ttyS0 rootwait root=/dev/mtdblock0 nokaslr" -drive > >if=pflash,file=rootfs.ext2,format=raw` > >* `qemu-system-ppc -M ppce500 -cpu e500mc -m 256 -kernel uImage -append > >"console=ttyS0 rootwait root=/dev/mmcblk0" -device sd-card,drive=mydrive -drive > >id=mydrive,if=none,file=rootfs.ext2,format=raw` > > > >The load was created using latest Buildroot with `make > >qemu_ppc_e500mc_defconfig` where the rootfs was configured to be of ext2 type. > >In both cases it was possible to log in and explore the root file system. > > > >v4: > >~~~ > >Zoltan: > >- Don't suggest presence of qemu-system-ppc32 in documentation > > > >Bin: > >- New patch: docs/system/ppc/ppce500: Use qemu-system-ppc64 across the board(s) > > > >Peter: > >- Inline pflash_cfi01_register() rather than modify it (similar to v2) >
Ping > > >v3: > >~~~ > >Phil: > >- Also add power-of-2 fix to pflash_cfi02 > >- Resolve cfi01-specific assertion in e500 code > >- Resolve unused define in eSDHC device model > >- Resolve redundant alignment checks in eSDHC device model > > > >Bin: > >- Add dedicated flash chapter to documentation > > > >Bernhard: > >- Use is_power_of_2() instead of ctpop64() for better readability > >- Only instantiate eSDHC device model in ppce500 (not used in MPC8544DS) > >- Rebase onto gitlab.com/danielhb/qemu/tree/ppc-next > > > >v2: > >~~~ > >Bin: > >- Add source for MPC8544DS platform bus' memory map in commit message. > >- Keep "ESDHC" in comment referring to Linux driver. > >- Use "qemu-system-ppc{64|32} in documentation. > >- Use g_autofree in device tree code. > >- Remove unneeded device tree properties. > >- Error out if pflash size doesn't fit into eLBC memory window. > >- Remove unused ESDHC defines. > >- Define macro ESDHC_WML for register offset with magic constant. > >- Fix some whitespace issues when adding eSDHC device to e500. > > > >Phil: > >- Fix tense in commit message. > > > >Bernhard Beschow (7): > > docs/system/ppc/ppce500: Use qemu-system-ppc64 across the board(s) > > hw/block/pflash_cfi0{1,2}: Error out if device length isn't a power of > > two > > hw/sd/sdhci-internal: Unexport ESDHC defines > > hw/sd/sdhci: Rename ESDHC_* defines to USDHC_* > > hw/ppc/e500: Implement pflash handling > > hw/sd/sdhci: Implement Freescale eSDHC device model > > hw/ppc/e500: Add Freescale eSDHC to e500plat > > > > docs/system/ppc/ppce500.rst | 38 +++++++- > > hw/block/pflash_cfi01.c | 8 +- > > hw/block/pflash_cfi02.c | 5 + > > hw/ppc/Kconfig | 2 + > > hw/ppc/e500.c | 114 +++++++++++++++++++++- > > hw/ppc/e500.h | 1 + > > hw/ppc/e500plat.c | 1 + > > hw/sd/sdhci-internal.h | 20 ---- > > hw/sd/sdhci.c | 183 +++++++++++++++++++++++++++++++----- > > include/hw/sd/sdhci.h | 3 + > > 10 files changed, 324 insertions(+), 51 deletions(-) > > > >-- > >2.38.0 > > >