
On Sat, 6 Mar 2021 at 21:01, Asherah Connor ashe@kivikakk.ee wrote:
We move qfw into its own uclass and split the PIO functions into a specific driver for that uclass. The PIO driver is selected in the qemu-x86 board config (this covers x86 and x86_64).
include/qfw.h is cleaned up and documentation added.
Signed-off-by: Asherah Connor ashe@kivikakk.ee
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.
- Fix qfw_get_dev() so it actually returns -ENODEV when device is
missing.
- Add CONFIG_QFW_PIO.
- Choose CONFIG_QFW_PIO in board/emulation/qemu-x86/Kconfig.
- QFW sandbox driver no longer inserts itself from device tree; wasn't
relevant to implementation and the ``compatible'' string was too made-up. Use U_BOOT_DRVINFO like the other QFW driver in this patch.
- Relevant documentation and sandbox/qemu tests are now here.
arch/x86/cpu/qemu/cpu.c | 9 +- arch/x86/cpu/qemu/qemu.c | 49 +------ arch/x86/cpu/qfw_cpu.c | 11 +- board/emulation/qemu-x86/Kconfig | 1 + cmd/qfw.c | 56 ++++--- common/Makefile | 2 + common/qfw.c | 105 +++++++++++++ drivers/misc/Kconfig | 11 +- drivers/misc/Makefile | 5 +- drivers/misc/qfw.c | 243 +++++++++++-------------------- drivers/misc/qfw_pio.c | 69 +++++++++ include/dm/uclass-id.h | 1 + include/qfw.h | 200 +++++++++++++++++++++---- 13 files changed, 490 insertions(+), 272 deletions(-) create mode 100644 common/qfw.c create mode 100644 drivers/misc/qfw_pio.c
Reviewed-by: Simon Glass sjg@chromium.org