cxl: Configure PSL to not use APC virtual machines

Message ID 20180417051102.7577-1-vaibhav@linux.vnet.ibm.com
State New
Headers show
Series
  • cxl: Configure PSL to not use APC virtual machines
Related show

Commit Message

Vaibhav Jain April 17, 2018, 5:11 a.m.
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.

Signed-off-by: Vaibhav Jain <vaibhav@linux.vnet.ibm.com>
---
 drivers/misc/cxl/pci.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Andrew Donnellan April 17, 2018, 5:14 a.m. | #1
On 17/04/18 15:11, Vaibhav Jain wrote:
> 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.
> 
> Signed-off-by: Vaibhav Jain <vaibhav@linux.vnet.ibm.com>

LGTM. Does this need to be sent to stable?

Acked-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Alastair D'Silva April 17, 2018, 5:17 a.m. | #2
On Tue, 2018-04-17 at 10:41 +0530, Vaibhav Jain wrote:
> 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.
> 
> Signed-off-by: Vaibhav Jain <vaibhav@linux.vnet.ibm.com>
> ---
>  drivers/misc/cxl/pci.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/misc/cxl/pci.c b/drivers/misc/cxl/pci.c
> index c32432168e6b..af30ee848d35 100644
> --- a/drivers/misc/cxl/pci.c
> +++ b/drivers/misc/cxl/pci.c
> @@ -516,9 +516,9 @@ static int
> init_implementation_adapter_regs_psl9(struct cxl *adapter,
>  	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
> 

Reviewed-by: Alastair D'Silva <alastair@d-silva.org>

Patch

diff --git a/drivers/misc/cxl/pci.c b/drivers/misc/cxl/pci.c
index c32432168e6b..af30ee848d35 100644
--- a/drivers/misc/cxl/pci.c
+++ b/drivers/misc/cxl/pci.c
@@ -516,9 +516,9 @@  static int init_implementation_adapter_regs_psl9(struct cxl *adapter,
 	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