diff mbox

cxl: Set psl_fir_cntl to production environment value

Message ID 1470650268-25085-1-git-send-email-fbarrat@linux.vnet.ibm.com (mailing list archive)
State Accepted
Headers show

Commit Message

Frederic Barrat Aug. 8, 2016, 9:57 a.m. UTC
Switch the setting of psl_fir_cntl from debug to production
environment recommended value. It mostly affects the PSL behavior when
an error is raised in psl_fir1/2.

Tested with cxlflash.

Signed-off-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
---
 drivers/misc/cxl/pci.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

Comments

Michael Ellerman Aug. 9, 2016, 10:53 a.m. UTC | #1
Frederic Barrat <fbarrat@linux.vnet.ibm.com> writes:

> Switch the setting of psl_fir_cntl from debug to production
> environment recommended value. It mostly affects the PSL behavior when
> an error is raised in psl_fir1/2.
>
> Tested with cxlflash.

Is this a fix you want in rc1, or something for 4.9 ?

cheers
Frederic Barrat Aug. 9, 2016, 11:12 a.m. UTC | #2
Le 09/08/2016 à 12:53, Michael Ellerman a écrit :
> Frederic Barrat <fbarrat@linux.vnet.ibm.com> writes:
>
>> Switch the setting of psl_fir_cntl from debug to production
>> environment recommended value. It mostly affects the PSL behavior when
>> an error is raised in psl_fir1/2.
>>
>> Tested with cxlflash.
>
> Is this a fix you want in rc1, or something for 4.9 ?

rc1 would be great. The cxlflash folks are eagerly waiting for it.

   Fred
Uma Krishnan Aug. 9, 2016, 3:17 p.m. UTC | #3
Reviewed-by: Uma Krishnan <ukrishn@linux.vnet.ibm.com>

On 8/8/2016 4:57 AM, Frederic Barrat wrote:
> Switch the setting of psl_fir_cntl from debug to production
> environment recommended value. It mostly affects the PSL behavior when
> an error is raised in psl_fir1/2.
>
> Tested with cxlflash.
>
> Signed-off-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
> ---
>  drivers/misc/cxl/pci.c | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/misc/cxl/pci.c b/drivers/misc/cxl/pci.c
> index d152e2d..4be25c4 100644
> --- a/drivers/misc/cxl/pci.c
> +++ b/drivers/misc/cxl/pci.c
> @@ -379,7 +379,7 @@ static int calc_capp_routing(struct pci_dev *dev, u64 *chipid, u64 *capp_unit_id
>
>  static int init_implementation_adapter_psl_regs(struct cxl *adapter, struct pci_dev *dev)
>  {
> -	u64 psl_dsnctl;
> +	u64 psl_dsnctl, psl_fircntl;
>  	u64 chipid;
>  	u64 capp_unit_id;
>  	int rc;
> @@ -398,8 +398,11 @@ static int init_implementation_adapter_psl_regs(struct cxl *adapter, struct pci_
>  	cxl_p1_write(adapter, CXL_PSL_RESLCKTO, 0x20000000200ULL);
>  	/* snoop write mask */
>  	cxl_p1_write(adapter, CXL_PSL_SNWRALLOC, 0x00000000FFFFFFFFULL);
> -	/* set fir_accum */
> -	cxl_p1_write(adapter, CXL_PSL_FIR_CNTL, 0x0800000000000000ULL);
> +	/* set fir_cntl to recommended value for production env */
> +	psl_fircntl = (0x2ULL << (63-3)); /* ce_report */
> +	psl_fircntl |= (0x1ULL << (63-6)); /* FIR_report */
> +	psl_fircntl |= 0x1ULL; /* ce_thresh */
> +	cxl_p1_write(adapter, CXL_PSL_FIR_CNTL, psl_fircntl);
>  	/* for debugging with trace arrays */
>  	cxl_p1_write(adapter, CXL_PSL_TRACE, 0x0000FF7C00000000ULL);
>
Michael Ellerman Aug. 10, 2016, 12:46 p.m. UTC | #4
On Mon, 2016-08-08 at 09:57:48 UTC, Frederic Barrat wrote:
> Switch the setting of psl_fir_cntl from debug to production
> environment recommended value. It mostly affects the PSL behavior when
> an error is raised in psl_fir1/2.
> 
> Tested with cxlflash.
> 
> Signed-off-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
> Reviewed-by: Uma Krishnan <ukrishn@linux.vnet.ibm.com>

Applied to powerpc fixes, thanks.

https://git.kernel.org/powerpc/c/c6d2ee09c2fffd3efdd31be2b2

cheers
diff mbox

Patch

diff --git a/drivers/misc/cxl/pci.c b/drivers/misc/cxl/pci.c
index d152e2d..4be25c4 100644
--- a/drivers/misc/cxl/pci.c
+++ b/drivers/misc/cxl/pci.c
@@ -379,7 +379,7 @@  static int calc_capp_routing(struct pci_dev *dev, u64 *chipid, u64 *capp_unit_id
 
 static int init_implementation_adapter_psl_regs(struct cxl *adapter, struct pci_dev *dev)
 {
-	u64 psl_dsnctl;
+	u64 psl_dsnctl, psl_fircntl;
 	u64 chipid;
 	u64 capp_unit_id;
 	int rc;
@@ -398,8 +398,11 @@  static int init_implementation_adapter_psl_regs(struct cxl *adapter, struct pci_
 	cxl_p1_write(adapter, CXL_PSL_RESLCKTO, 0x20000000200ULL);
 	/* snoop write mask */
 	cxl_p1_write(adapter, CXL_PSL_SNWRALLOC, 0x00000000FFFFFFFFULL);
-	/* set fir_accum */
-	cxl_p1_write(adapter, CXL_PSL_FIR_CNTL, 0x0800000000000000ULL);
+	/* set fir_cntl to recommended value for production env */
+	psl_fircntl = (0x2ULL << (63-3)); /* ce_report */
+	psl_fircntl |= (0x1ULL << (63-6)); /* FIR_report */
+	psl_fircntl |= 0x1ULL; /* ce_thresh */
+	cxl_p1_write(adapter, CXL_PSL_FIR_CNTL, psl_fircntl);
 	/* for debugging with trace arrays */
 	cxl_p1_write(adapter, CXL_PSL_TRACE, 0x0000FF7C00000000ULL);