This series reworks the coreboot firmware driver a bit to fix some bugs and then simplify the code by changing the design to get rid of the different platform drivers, remap memory with memremap(), and use devm to simplify error paths. There's some risk in changing to memremap() but I think that should work out alright. It will either return memory directly, or fallback to ioremap_cache() as has been done before.
Changes from v2: * A bunch more patches * Fix iounmap missing on error path * Fix bus getting unregistered on driver unbind and never registered again * Request exclusive access to table region * Pull out table signature check to driver probe Changes from v1: * Split out fixlet for DT based driver from platform driver change Cc: Wei-Ning Huang <wnhu...@chromium.org> Cc: Julius Werner <jwer...@chromium.org> Cc: Brian Norris <briannor...@chromium.org> Cc: Samuel Holland <sam...@sholland.org> Stephen Boyd (7): firmware: coreboot: Let OF core populate platform device firmware: coreboot: Unmap ioregion on failure firmware: coreboot: Make bus registration symmetric firmware: coreboot: Collapse platform drivers into bus core firmware: coreboot: Remap RAM with memremap() instead of ioremap() firmware: coreboot: Only populate devices in coreboot_table_init() firmware: coreboot: Request table region for exclusive access drivers/firmware/google/Kconfig | 26 ++-- drivers/firmware/google/Makefile | 2 - drivers/firmware/google/coreboot_table-acpi.c | 88 ------------ drivers/firmware/google/coreboot_table-of.c | 82 ----------- drivers/firmware/google/coreboot_table.c | 135 +++++++++++++----- drivers/firmware/google/coreboot_table.h | 6 - 6 files changed, 107 insertions(+), 232 deletions(-) delete mode 100644 drivers/firmware/google/coreboot_table-acpi.c delete mode 100644 drivers/firmware/google/coreboot_table-of.c -- Sent by a computer through tubes