mbox series

[kvm-unit-tests,v2,00/10] powerpc: updates, P10, PNV support

Message ID 20230320070339.915172-1-npiggin@gmail.com (mailing list archive)
Headers show
Series powerpc: updates, P10, PNV support | expand

Message

Nicholas Piggin March 20, 2023, 7:03 a.m. UTC
Since v1 series, I fixed the sleep API and implementation in patch 2
as noted by Thomas. Added usleep and msleep variants to match [um]delay
we already have.

Also some minor tidy ups and fixes mainly with reporting format in the
sprs test rework.

And added PowerNV support to the harness with the 3 new patches at the
end because it didn't turn out to be too hard. We could parse the dt to
get a console UART directly for a really minimal firmware, but it is
better for us to have a test harness like this that can also be used for
skiboot testing.

Thanks,
Nick

Nicholas Piggin (10):
  MAINTAINERS: Update powerpc list
  powerpc: add local variant of SPR test
  powerpc: abstract H_CEDE calls into a sleep functions
  powerpc: Add ISA v3.1 (POWER10) support to SPR test
  powerpc: Indirect SPR accessor functions
  powerpc/sprs: Specify SPRs with data rather than code
  powerpc/spapr_vpa: Add basic VPA tests
  powerpc: Discover runtime load address dynamically
  powerpc: Support powernv machine with QEMU TCG
  powerpc/sprs: Test hypervisor registers on powernv machine

 MAINTAINERS                 |   2 +-
 lib/linux/compiler.h        |   2 +
 lib/powerpc/asm/handlers.h  |   2 +-
 lib/powerpc/asm/hcall.h     |   1 +
 lib/powerpc/asm/ppc_asm.h   |   6 +
 lib/powerpc/asm/processor.h |  21 ++
 lib/powerpc/handlers.c      |  10 +-
 lib/powerpc/hcall.c         |   4 +-
 lib/powerpc/io.c            |  33 +-
 lib/powerpc/io.h            |   6 +
 lib/powerpc/processor.c     |  52 +++
 lib/powerpc/setup.c         |  10 +-
 lib/ppc64/asm/opal.h        |  11 +
 lib/ppc64/asm/vpa.h         |  62 ++++
 lib/ppc64/opal-calls.S      |  46 +++
 lib/ppc64/opal.c            |  67 ++++
 powerpc/Makefile.ppc64      |   4 +-
 powerpc/cstart64.S          |  26 +-
 powerpc/run                 |  30 +-
 powerpc/spapr_vpa.c         |  90 +++++
 powerpc/sprs.c              | 641 ++++++++++++++++++++++++++----------
 powerpc/tm.c                |  20 +-
 powerpc/unittests.cfg       |   4 +
 23 files changed, 925 insertions(+), 225 deletions(-)
 create mode 100644 lib/ppc64/asm/opal.h
 create mode 100644 lib/ppc64/asm/vpa.h
 create mode 100644 lib/ppc64/opal-calls.S
 create mode 100644 lib/ppc64/opal.c
 create mode 100644 powerpc/spapr_vpa.c

Comments

Nicholas Piggin March 21, 2023, 6:14 a.m. UTC | #1
On Mon Mar 20, 2023 at 5:03 PM AEST, Nicholas Piggin wrote:
> Since v1 series, I fixed the sleep API and implementation in patch 2
> as noted by Thomas. Added usleep and msleep variants to match [um]delay
> we already have.
>
> Also some minor tidy ups and fixes mainly with reporting format in the
> sprs test rework.
>
> And added PowerNV support to the harness with the 3 new patches at the
> end because it didn't turn out to be too hard. We could parse the dt to
> get a console UART directly for a really minimal firmware, but it is
> better for us to have a test harness like this that can also be used for
> skiboot testing.

I'll send out one more series, I have a couple of fixes for PowerNV code
(I didn't make the OPAL call to set interrupts little endian for LE
builds, for one). I'll wait for a week or so for more feedback though.

Thanks,
Nick