--- v7
+++ v5
@@ -35,21 +35,21 @@
arch/powerpc/platforms/powernv/Makefile | 1 +
arch/powerpc/platforms/powernv/vas-window.c | 19 +++
arch/powerpc/platforms/powernv/vas.c | 183 +++++++++++++++++++++
- arch/powerpc/platforms/powernv/vas.h | 3 +
- 7 files changed, 252 insertions(+)
+ arch/powerpc/platforms/powernv/vas.h | 10 +-
+ 7 files changed, 257 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/powerpc/ibm,vas.txt
create mode 100644 arch/powerpc/platforms/powernv/vas-window.c
create mode 100644 arch/powerpc/platforms/powernv/vas.c
diff --git a/Documentation/devicetree/bindings/powerpc/ibm,vas.txt b/Documentation/devicetree/bindings/powerpc/ibm,vas.txt
new file mode 100644
-index 0000000..0e3111d
+index 0000000..8468a3a
--- /dev/null
+++ b/Documentation/devicetree/bindings/powerpc/ibm,vas.txt
@@ -0,0 +1,24 @@
+* IBM Powerpc Virtual Accelerator Switchboard (VAS)
+
-+VAS is a hardware mechanism that allows kernel subsystems and user processes
++VAS is a hardware mechanism that allows ekrnel subsystems and user processes
+to directly submit compression and other requests to Nest accelerators (NX)
+or other coprocessors functions.
+
@@ -72,10 +72,10 @@
+ };
+
diff --git a/MAINTAINERS b/MAINTAINERS
-index 3c41902..abc235f 100644
+index 9e98464..4c4f05e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -6425,6 +6425,14 @@ F: drivers/crypto/nx/nx.*
+@@ -6331,6 +6331,14 @@ F: drivers/crypto/nx/nx.*
F: drivers/crypto/nx/nx_csbcpb.h
F: drivers/crypto/nx/nx_debugfs.h
@@ -87,8 +87,8 @@
+F: arch/powerpc/include/asm/vas.h
+F: arch/powerpc/include/uapi/asm/vas.h
+
- IBM Power Linux RAID adapter
- M: Brian King <brking@us.ibm.com>
+ IBM Power 842 compression accelerator
+ M: Haren Myneni <haren@us.ibm.com>
S: Supported
diff --git a/arch/powerpc/platforms/powernv/Kconfig b/arch/powerpc/platforms/powernv/Kconfig
index 6a6f4ef..f565454 100644
@@ -336,10 +336,30 @@
+MODULE_AUTHOR("Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>");
+MODULE_LICENSE("GPL");
diff --git a/arch/powerpc/platforms/powernv/vas.h b/arch/powerpc/platforms/powernv/vas.h
-index c66aaf0..150d7b1 100644
+index c6bcc0c..12c6380 100644
--- a/arch/powerpc/platforms/powernv/vas.h
+++ b/arch/powerpc/platforms/powernv/vas.h
-@@ -382,4 +382,7 @@ struct vas_winctx {
+@@ -291,14 +291,17 @@ enum vas_notify_after_count {
+ */
+ struct vas_instance {
+ int vas_id;
++ bool ready;
+ struct ida ida;
++ struct list_head node;
++ struct platform_device *pdev;
+
+ u64 hvwc_bar_start;
+ u64 hvwc_bar_len;
+ u64 uwc_bar_start;
+ u64 uwc_bar_len;
+- u64 win_base_addr;
+- u64 win_id_shift;
++ u64 paste_base_addr;
++ u64 paste_win_id_shift;
+
+ struct mutex mutex;
+ struct vas_window *rxwin[VAS_COP_TYPE_MAX];
+@@ -376,4 +379,7 @@ struct vas_winctx {
enum vas_notify_after_count notify_after_count;
};