aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/cxl/pci.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/misc/cxl/pci.c')
-rw-r--r--drivers/misc/cxl/pci.c41
1 files changed, 16 insertions, 25 deletions
diff --git a/drivers/misc/cxl/pci.c b/drivers/misc/cxl/pci.c
index 6dfb4ed345d3..b66d832d3233 100644
--- a/drivers/misc/cxl/pci.c
+++ b/drivers/misc/cxl/pci.c
@@ -463,23 +463,21 @@ int cxl_get_xsl9_dsnctl(struct pci_dev *dev, u64 capp_unit_id, u64 *reg)
463 /* nMMU_ID Defaults to: b’000001001’*/ 463 /* nMMU_ID Defaults to: b’000001001’*/
464 xsl_dsnctl |= ((u64)0x09 << (63-28)); 464 xsl_dsnctl |= ((u64)0x09 << (63-28));
465 465
466 if (!(cxl_is_power9_dd1())) { 466 /*
467 /* 467 * Used to identify CAPI packets which should be sorted into
468 * Used to identify CAPI packets which should be sorted into 468 * the Non-Blocking queues by the PHB. This field should match
469 * the Non-Blocking queues by the PHB. This field should match 469 * the PHB PBL_NBW_CMPM register
470 * the PHB PBL_NBW_CMPM register 470 * nbwind=0x03, bits [57:58], must include capi indicator.
471 * nbwind=0x03, bits [57:58], must include capi indicator. 471 * Not supported on P9 DD1.
472 * Not supported on P9 DD1. 472 */
473 */ 473 xsl_dsnctl |= (nbwind << (63-55));
474 xsl_dsnctl |= (nbwind << (63-55));
475 474
476 /* 475 /*
477 * Upper 16b address bits of ASB_Notify messages sent to the 476 * Upper 16b address bits of ASB_Notify messages sent to the
478 * system. Need to match the PHB’s ASN Compare/Mask Register. 477 * system. Need to match the PHB’s ASN Compare/Mask Register.
479 * Not supported on P9 DD1. 478 * Not supported on P9 DD1.
480 */ 479 */
481 xsl_dsnctl |= asnind; 480 xsl_dsnctl |= asnind;
482 }
483 481
484 *reg = xsl_dsnctl; 482 *reg = xsl_dsnctl;
485 return 0; 483 return 0;
@@ -537,15 +535,8 @@ static int init_implementation_adapter_regs_psl9(struct cxl *adapter,
537 /* Snoop machines */ 535 /* Snoop machines */
538 cxl_p1_write(adapter, CXL_PSL9_APCDEDALLOC, 0x800F000200000000ULL); 536 cxl_p1_write(adapter, CXL_PSL9_APCDEDALLOC, 0x800F000200000000ULL);
539 537
540 if (cxl_is_power9_dd1()) { 538 /* Enable NORST and DD2 features */
541 /* Disabling deadlock counter CAR */ 539 cxl_p1_write(adapter, CXL_PSL9_DEBUG, 0xC000000000000000ULL);
542 cxl_p1_write(adapter, CXL_PSL9_GP_CT, 0x0020000000000001ULL);
543 /* Enable NORST */
544 cxl_p1_write(adapter, CXL_PSL9_DEBUG, 0x8000000000000000ULL);
545 } else {
546 /* Enable NORST and DD2 features */
547 cxl_p1_write(adapter, CXL_PSL9_DEBUG, 0xC000000000000000ULL);
548 }
549 540
550 /* 541 /*
551 * Check if PSL has data-cache. We need to flush adapter datacache 542 * Check if PSL has data-cache. We need to flush adapter datacache