[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/5] ppc/pnv: Add PNOR support
From: |
Cédric Le Goater |
Subject: |
[PATCH 0/5] ppc/pnv: Add PNOR support |
Date: |
Mon, 21 Oct 2019 15:12:10 +0200 |
Hello,
On a POWERPC PowerNV system, the host firmware is stored in a PNOR
flash chip which contents is mapped on the LPC bus. This model adds a
simple dummy device to map the contents of a block device in the host
address space and activates HIOMAP support on the QEMU PowerNV machine
to let the host negotiate with the BMC the access to the mapping.
The command options to activate these models in QEMU:
-device ipmi-bmc-sim,id=bmc0 -device isa-ipmi-bt,bmc=bmc0,irq=10 \
-drive file=./witherspoon.pnor,format=raw,if=mtd
The last two patches add the logic to load in the machine memory the
PAYLOAD partition (skiboot) from an OpenPOWER firmware file. These
should be considered as RFCs as the firmware file could have a
different format. Something to discuss.
Thanks,
C.
Cédric Le Goater (5):
ppc/pnv: Add a PNOR model
ipmi: Add support to customize OEM functions
ppc/pnv: Add HIOMAP commands
libxz: Add XZ Embedded library for PPC
ppc/pnv: Read the PNOR partition table
include/hw/ipmi/ipmi.h | 36 ++
include/hw/ppc/ffs.h | 150 +++++
include/hw/ppc/pnv.h | 4 +
include/hw/ppc/pnv_pnor.h | 36 ++
libxz/xz.h | 304 ++++++++++
libxz/xz_config.h | 124 ++++
libxz/xz_lzma2.h | 204 +++++++
libxz/xz_private.h | 156 +++++
libxz/xz_stream.h | 62 ++
hw/ipmi/ipmi_bmc_sim.c | 41 +-
hw/ppc/pnv.c | 48 +-
hw/ppc/pnv_bmc.c | 101 ++++
hw/ppc/pnv_lpc.c | 13 +
hw/ppc/pnv_pnor.c | 291 +++++++++
libxz/xz_crc32.c | 59 ++
libxz/xz_dec_lzma2.c | 1171 +++++++++++++++++++++++++++++++++++++
libxz/xz_dec_stream.c | 847 +++++++++++++++++++++++++++
hw/ppc/Makefile.objs | 4 +-
libxz/Makefile.objs | 1 +
target/ppc/Makefile.objs | 1 +
20 files changed, 3606 insertions(+), 47 deletions(-)
create mode 100644 include/hw/ppc/ffs.h
create mode 100644 include/hw/ppc/pnv_pnor.h
create mode 100644 libxz/xz.h
create mode 100644 libxz/xz_config.h
create mode 100644 libxz/xz_lzma2.h
create mode 100644 libxz/xz_private.h
create mode 100644 libxz/xz_stream.h
create mode 100644 hw/ppc/pnv_pnor.c
create mode 100644 libxz/xz_crc32.c
create mode 100644 libxz/xz_dec_lzma2.c
create mode 100644 libxz/xz_dec_stream.c
create mode 100644 libxz/Makefile.objs
--
2.21.0