[PATCH 4.17 059/220] cxl: Configure PSL to not use APC virtual machines

From: Greg Kroah-Hartman
Date: Sun Jul 01 2018 - 12:39:24 EST


4.17-stable review patch. If anyone has any objections, please let me know.

------------------

From: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>

commit 9a6d2022bacd8fca0be6297459a02dfd28dad6ba upstream.

APC virtual machines arent used on POWER-9 chips and are already
disabled in on-chip CAPP. They also need to be disabled on the PSL via
'PSL Data Send Control Register' by setting bit(47). This forces the
PSL to send commands to CAPP with queue.id == 0.

Fixes: 5632874311db ("cxl: Add support for POWER9 DD2")
Cc: stable@xxxxxxxxxxxxxxx # v4.15+
Signed-off-by: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
Acked-by: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx>
Reviewed-by: Alastair D'Silva <alastair@xxxxxxxxxxx>
Reviewed-by: Christophe Lombard <clombard@xxxxxxxxxxxxxxxxxx>
Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
drivers/misc/cxl/pci.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/misc/cxl/pci.c
+++ b/drivers/misc/cxl/pci.c
@@ -514,9 +514,9 @@ static int init_implementation_adapter_r
cxl_p1_write(adapter, CXL_PSL9_FIR_CNTL, psl_fircntl);

/* Setup the PSL to transmit packets on the PCIe before the
- * CAPP is enabled
+ * CAPP is enabled. Make sure that CAPP virtual machines are disabled
*/
- cxl_p1_write(adapter, CXL_PSL9_DSNDCTL, 0x0001001000002A10ULL);
+ cxl_p1_write(adapter, CXL_PSL9_DSNDCTL, 0x0001001000012A10ULL);

/*
* A response to an ASB_Notify request is returned by the