[PATCH v7 0/4] Move qfw to DM, add Arm support

Asherah Connor ashe at kivikakk.ee
Fri Mar 19 04:02:40 CET 2021


This series moves the QFW driver into a uclass, UCLASS_QFW, and splits
the driver into qfw_pio and qfw_mmio.  Each driver is selected on the
appropriate QEMU board.  A sandbox driver is also added, and a DM unit
test against that driver.  The qfw command is tested in QEMU, and
documentation added.

Version 7 ensures the qfw test assertions work both against real QEMU
instances and the sandbox and removes CMD_QFW from the sandbox_spl
config.

To view the changes online, see:
https://git.src.kameliya.ee/~kameliya/u-boot/log/qfw-priv

Changes in v7:
* Make the qfw tests agnostic to running against a real QEMU instance or
  in the sandbox.
* Remove CONFIG_CMD_QFW=y from sandbox_spl_defconfig, per trini's
  request.

Changes in v6:
* Sandbox driver and tests are split into own commit.

Changes in v5:
* Split conversion of existing x86-only QFW to DM into its own patch.
* Split MMIO driver into its own commit.
* Split adding MMIO driver to QEMU arm/64 into own commit.

Asherah Connor (4):
  x86: qemu: move QFW to its own uclass
  test: qemu: add qfw sandbox driver, dm tests, qemu tests
  qemu: add MMIO driver for QFW
  qemu: arm: select QFW, MMIO on qemu-arm

 arch/x86/cpu/qemu/cpu.c          |   9 +-
 arch/x86/cpu/qemu/qemu.c         |  49 +------
 arch/x86/cpu/qfw_cpu.c           |  11 +-
 board/emulation/qemu-arm/Kconfig |   2 +
 board/emulation/qemu-x86/Kconfig |   1 +
 cmd/qfw.c                        |  56 ++++---
 common/Makefile                  |   2 +
 common/qfw.c                     | 105 +++++++++++++
 configs/sandbox_spl_defconfig    |   1 -
 drivers/misc/Kconfig             |  18 ++-
 drivers/misc/Makefile            |   7 +-
 drivers/misc/qfw.c               | 243 +++++++++++--------------------
 drivers/misc/qfw_mmio.c          | 119 +++++++++++++++
 drivers/misc/qfw_pio.c           |  69 +++++++++
 drivers/misc/qfw_sandbox.c       | 128 ++++++++++++++++
 include/dm/uclass-id.h           |   1 +
 include/qfw.h                    | 200 +++++++++++++++++++++----
 test/dm/Makefile                 |   1 +
 test/dm/qfw.c                    |  42 ++++++
 test/py/tests/test_qfw.py        |  26 ++++
 20 files changed, 817 insertions(+), 273 deletions(-)
 create mode 100644 common/qfw.c
 create mode 100644 drivers/misc/qfw_mmio.c
 create mode 100644 drivers/misc/qfw_pio.c
 create mode 100644 drivers/misc/qfw_sandbox.c
 create mode 100644 test/dm/qfw.c
 create mode 100644 test/py/tests/test_qfw.py

-- 
2.20.1



More information about the U-Boot mailing list