[Skiboot] [PATCH 00/17] FSP code free OPAL
Stewart Smith
stewart at linux.ibm.com
Tue Jun 18 17:29:08 AEST 2019
This is mostly an RFC series, although I'd be interested in thoughts on
merging it. This does the bulk of the work to allow us to build a
skiboot without all the FSP support, which has had various tentacles
into core code for hysterical raisins.
It gets us a modest (52kb xz compressed, ~200k uncompressed) image size
benefit.
I've also done it in a way that would allow us to just have two link
targets, a skiboot-fsp.lid and a skiboot.lid (or a skiboot-nofsp.lid)
rather than it be an actual build option, which is something I kind of
like to be able to do.
I've only boot tested in qemu so far, so YMMV here :)
Stewart Smith (17):
op_display: make platform function rather than "FSP" specific
Move more FSP functions to FSP platform
Split FSP OCC code out into hw/fsp/
Move core/hostservices.c to platforms/ibm-fsp/
host_services_occ_base_setup is core homer code not host_services
core/init.c: use if (platform.bmc) rather than !fsp_present()
core/init.c: no longer need to include FSP headers
Move FSP specific op-panel calls to platform.exit()
core/opal: move HIR trigger to FSP poller
hw/fsp/fsp.c: remove lying comments
core/pci: use !platform.bmc hack over fsp_present()
fast-reboot: move platform specific bits to a platform call
Move FSP-specific VPD functionality to platforms/ibm-fsp/
core/timer: Use platform heartmeat_time call for FSP platforms
Separate FSP specific PSI code
Move platform specific PRD functionality to struct platform
Experimental support for building without FSP code
Makefile | 3 +-
core/Makefile.inc | 2 +-
core/fast-reboot.c | 4 +-
core/init.c | 30 +-
core/opal.c | 14 -
core/pci.c | 3 +-
core/platform.c | 6 +
core/timer.c | 2 +-
core/vpd.c | 143 -------
hw/fsp/Makefile.inc | 5 +-
hw/fsp/fsp-occ.c | 424 +++++++++++++++++++++
hw/fsp/fsp-op-panel.c | 6 +-
hw/fsp/fsp-psi.c | 97 +++++
hw/fsp/fsp.c | 26 +-
hw/homer.c | 25 ++
hw/occ.c | 389 +------------------
hw/phb3.c | 3 +-
hw/phb4.c | 3 +-
hw/prd.c | 36 +-
hw/psi.c | 94 +----
include/fsp.h | 2 +
include/hostservices.h | 3 -
include/occ.h | 2 +
include/platform.h | 53 +++
include/psi.h | 2 +-
include/vpd.h | 3 -
platforms/astbmc/barreleye.c | 1 +
platforms/astbmc/firestone.c | 1 +
platforms/astbmc/garrison.c | 1 +
platforms/astbmc/habanero.c | 1 +
platforms/astbmc/p8dnu.c | 1 +
platforms/astbmc/p8dtu.c | 2 +
platforms/astbmc/p9dsu.c | 1 +
platforms/astbmc/palmetto.c | 1 +
platforms/astbmc/romulus.c | 1 +
platforms/astbmc/talos.c | 1 +
platforms/astbmc/vesnin.c | 1 +
platforms/astbmc/witherspoon.c | 1 +
platforms/astbmc/zaius.c | 1 +
platforms/ibm-fsp/Makefile.inc | 6 +-
platforms/ibm-fsp/common.c | 48 +++
platforms/ibm-fsp/firenze.c | 6 +
platforms/ibm-fsp/fsp-vpd.c | 165 ++++++++
{core => platforms/ibm-fsp}/hostservices.c | 24 --
platforms/ibm-fsp/ibm-fsp.h | 10 +
platforms/ibm-fsp/zz.c | 6 +
46 files changed, 936 insertions(+), 723 deletions(-)
create mode 100644 hw/fsp/fsp-occ.c
create mode 100644 hw/fsp/fsp-psi.c
create mode 100644 platforms/ibm-fsp/fsp-vpd.c
rename {core => platforms/ibm-fsp}/hostservices.c (96%)
--
2.21.0
More information about the Skiboot
mailing list