On Thu, 2021-06-03 at 13:32 +1000, Nicholas Piggin wrote: > Excerpts from Haren Myneni's message of May 21, 2021 7:28 pm: > > Using the same /dev/crypto/nx-gzip interface for both powerNV and > > pseries. So this patch creates platforms/book3s/ and moves VAS API > > to that directory. The actual functionality is not changed. > > > > Signed-off-by: Haren Myneni <ha...@linux.ibm.com> > > --- > > arch/powerpc/include/asm/vas.h | 3 +++ > > arch/powerpc/platforms/Kconfig | 1 + > > arch/powerpc/platforms/Makefile | 1 + > > arch/powerpc/platforms/book3s/Kconfig | 15 > > +++++++++++++++ > > arch/powerpc/platforms/book3s/Makefile | 2 ++ > > If Michael is happy with the new directory structure then fine by me. > > > .../platforms/{powernv => book3s}/vas-api.c | 2 +- > > arch/powerpc/platforms/powernv/Kconfig | 14 --------- > > ----- > > arch/powerpc/platforms/powernv/Makefile | 2 +- > > 8 files changed, 24 insertions(+), 16 deletions(-) > > create mode 100644 arch/powerpc/platforms/book3s/Kconfig > > create mode 100644 arch/powerpc/platforms/book3s/Makefile > > rename arch/powerpc/platforms/{powernv => book3s}/vas-api.c (99%) > > > > diff --git a/arch/powerpc/include/asm/vas.h > > b/arch/powerpc/include/asm/vas.h > > index e33f80b0ea81..3be76e813e2d 100644 > > --- a/arch/powerpc/include/asm/vas.h > > +++ b/arch/powerpc/include/asm/vas.h > > @@ -162,6 +162,9 @@ int vas_copy_crb(void *crb, int offset); > > */ > > int vas_paste_crb(struct vas_window *win, int offset, bool re); > > > > +void vas_win_paste_addr(struct vas_window *window, u64 *addr, > > + int *len); > > + > > /* > > * Register / unregister coprocessor type to VAS API which will be > > exported > > * to user space. Applications can use this API to open / close > > window > > If you do this, then the prototype should be removed from > arch/powerpc/platforms/powernv/vas.h
Thanks for your review comments. vas_win_paste_addr() should be PowerNV specific, so will remove from include/asm/vas.h > > > diff --git a/arch/powerpc/platforms/Kconfig > > b/arch/powerpc/platforms/Kconfig > > index 7a5e8f4541e3..594544a65b02 100644 > > --- a/arch/powerpc/platforms/Kconfig > > +++ b/arch/powerpc/platforms/Kconfig > > @@ -20,6 +20,7 @@ source > > "arch/powerpc/platforms/embedded6xx/Kconfig" > > source "arch/powerpc/platforms/44x/Kconfig" > > source "arch/powerpc/platforms/40x/Kconfig" > > source "arch/powerpc/platforms/amigaone/Kconfig" > > +source "arch/powerpc/platforms/book3s/Kconfig" > > > > config KVM_GUEST > > bool "KVM Guest support" > > diff --git a/arch/powerpc/platforms/Makefile > > b/arch/powerpc/platforms/Makefile > > index 143d4417f6cc..0e75d7df387b 100644 > > --- a/arch/powerpc/platforms/Makefile > > +++ b/arch/powerpc/platforms/Makefile > > @@ -22,3 +22,4 @@ obj-$(CONFIG_PPC_CELL) += cell/ > > obj-$(CONFIG_PPC_PS3) += ps3/ > > obj-$(CONFIG_EMBEDDED6xx) += embedded6xx/ > > obj-$(CONFIG_AMIGAONE) += amigaone/ > > +obj-$(CONFIG_PPC_BOOK3S) += book3s/ > > diff --git a/arch/powerpc/platforms/book3s/Kconfig > > b/arch/powerpc/platforms/book3s/Kconfig > > new file mode 100644 > > index 000000000000..bed21449e8e5 > > --- /dev/null > > +++ b/arch/powerpc/platforms/book3s/Kconfig > > @@ -0,0 +1,15 @@ > > +# SPDX-License-Identifier: GPL-2.0 > > +config PPC_VAS > > + bool "IBM Virtual Accelerator Switchboard (VAS)" > > + depends on (PPC_POWERNV || PPC_PSERIES) && PPC_64K_PAGES > > + default y > > + help > > + This enables support for IBM Virtual Accelerator Switchboard > > (VAS). > > + > > + VAS allows accelerators in co-processors like NX-GZIP and NX- > > 842 > > + to be accessible to kernel subsystems and user processes. > > + VAS adapters are found in POWER9 and later based systems. > > + The user mode NX-GZIP support is added on P9 for powerNV and > > on > > + P10 for powerVM. > > The changelog has changed. The last sentence is difficult to > understand > (also please consistently capitalise PowerNV and PowerVM). Is it > supposed to say that PPC_VAS will provide user-mode NX-GZIP support > on > P9 PowerNV systems and P10 PowerVM systems? If you respin the patch > for > the prototype... > > This enables support for IBM Virtual Accelerator Switchboard (VAS). > > VAS devices are found in POWER9-based and later systems, they > provide > access to accelerator coprocessors such as NX-GZIP and NX-842. This > driver allows the kernel to use NX-GZIP and NX-842 accelerators, > and > user-mode APIs for the NX-GZIP accelerator on POWER9 PowerNV and > POWER10 PowerVM platforms. <here is a userspace library you can > use> > etc > > Thanks, > Nick