summaryrefslogtreecommitdiffstats
path: root/hw
diff options
context:
space:
mode:
authorChristophe Lombard <clombard@linux.vnet.ibm.com>2018-02-03 10:45:53 +0100
committerStewart Smith <stewart@linux.vnet.ibm.com>2018-02-08 18:21:42 -0600
commite88bb694d32e909960b1ae6f717265cc0aba8e4d (patch)
tree5eb84016aca872eda7014928fc26a68f14028153 /hw
parent893660c3e4ee52f5c3cba6e9d72c00d5e3283808 (diff)
downloadtalos-skiboot-e88bb694d32e909960b1ae6f717265cc0aba8e4d.tar.gz
talos-skiboot-e88bb694d32e909960b1ae6f717265cc0aba8e4d.zip
capi: Fix the max tlbi divider and the directory size.
Switch to 512KB mode (directory size) as we don’t use bit 48 of the tag in addressing the array. This mode is controlled by the Snoop CAPI Configuration Register. Set the maximum of the number of data polls received before signaling TLBI hang detect timer expired. The value of '0000' is equal to 16. Signed-off-by: Christophe Lombard <clombard@linux.vnet.ibm.com> Reviewed-by: Vaibhav Jain <vaibhav@linux.vnet.ibm.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/phb4.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/hw/phb4.c b/hw/phb4.c
index 93ed1e06..b3badec2 100644
--- a/hw/phb4.c
+++ b/hw/phb4.c
@@ -3597,8 +3597,8 @@ static void phb4_init_capp_regs(struct phb4 *p, uint32_t capp_eng)
0x1772000000000000);
PHBINF(p, "CAPP: port attached\n");
- /* Set snoop ttype decoding , dir size to 256k */
- xscom_write(p->chip_id, SNOOP_CAPI_CONFIG + offset, 0xA000000000000000);
+ /* Set snoop ttype decoding , dir size to 512K */
+ xscom_write(p->chip_id, SNOOP_CAPI_CONFIG + offset, 0x9000000000000000);
/* Use Read Epsilon Tier2 for all scopes.
* Set Tier2 Read Epsilon.
@@ -3638,6 +3638,7 @@ static void phb4_init_capp_regs(struct phb4 *p, uint32_t capp_eng)
reg &= ~PPC_BIT(12); /* Set CI Store Buffer Threshold=5 */
reg |= PPC_BIT(13); /* Set CI Store Buffer Threshold=5 */
reg &= ~PPC_BITMASK(14, 17); /* Set Max LPC CI store buffer to zeros */
+ reg &= ~PPC_BITMASK(18, 21); /* Set Max tlbi divider */
if (capp_eng & CAPP_MIN_STQ_ENGINES) {
/* 2 CAPP msg engines */
reg |= PPC_BIT(59);
OpenPOWER on IntegriCloud