From 4fe380d6c555e464b308ad5790b19dac6884d0af Mon Sep 17 00:00:00 2001 From: "Richard J. Knight" Date: Thu, 30 Apr 2015 13:55:27 -0500 Subject: [PATCH 01/14] Update palmetto/habanero/firestone config flags. -Set BMC_AST2400 in config files to enable serial console and to enable SIO boot config functions RTC:118752 --- openpower/configs/hostboot/firestone.config | 2 +- openpower/configs/hostboot/habanero.config | 2 +- openpower/configs/hostboot/palmetto.config | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/openpower/configs/hostboot/firestone.config b/openpower/configs/hostboot/firestone.config index 4b96cd973d..cc599522a9 100755 --- a/openpower/configs/hostboot/firestone.config +++ b/openpower/configs/hostboot/firestone.config @@ -32,7 +32,7 @@ unset PCIE_HOTPLUG_CONTROLLER # turn on console output set CONSOLE -set CONSOLE_AST2400 +set BMC_AST2400 # Enable Kingston dimm voltage workaround set KINGSTON_1_35_VOLT diff --git a/openpower/configs/hostboot/habanero.config b/openpower/configs/hostboot/habanero.config index 90e5735298..ff2c4494e3 100755 --- a/openpower/configs/hostboot/habanero.config +++ b/openpower/configs/hostboot/habanero.config @@ -34,7 +34,7 @@ unset PCIE_HOTPLUG_CONTROLLER # turn on console output set CONSOLE -set CONSOLE_AST2400 +set BMC_AST2400 # Enable Kingston dimm voltage workaround set KINGSTON_1_35_VOLT diff --git a/openpower/configs/hostboot/palmetto.config b/openpower/configs/hostboot/palmetto.config index 12ebc2cebb..bcd2e59548 100755 --- a/openpower/configs/hostboot/palmetto.config +++ b/openpower/configs/hostboot/palmetto.config @@ -34,7 +34,7 @@ unset PCIE_HOTPLUG_CONTROLLER # turn on console output set CONSOLE -set CONSOLE_AST2400 +set BMC_AST2400 set PNOR_IS_32MB From 2075be015218f2742da69fd60888e87b0465bd55 Mon Sep 17 00:00:00 2001 From: Bill Schwartz Date: Thu, 30 Apr 2015 14:17:52 -0500 Subject: [PATCH 02/14] Add Support for Planar VPD Add Planar VPD configuration options --- openpower/configs/hostboot/firestone.config | 4 ++++ openpower/configs/hostboot/habanero.config | 4 ++++ openpower/configs/hostboot/palmetto.config | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/openpower/configs/hostboot/firestone.config b/openpower/configs/hostboot/firestone.config index 4b96cd973d..cf77dee92e 100755 --- a/openpower/configs/hostboot/firestone.config +++ b/openpower/configs/hostboot/firestone.config @@ -18,6 +18,10 @@ set CVPD_READ_FROM_HW set CVPD_WRITE_TO_HW set CVPD_READ_FROM_PNOR set CVPD_WRITE_TO_PNOR +set PVPD_READ_FROM_HW +set PVPD_WRITE_TO_HW +set PVPD_READ_FROM_PNOR +set PVPD_WRITE_TO_PNOR set SKIP_RESTRICT_EX_UNITS unset CDIMM_FORMAT_FOR_CVPD diff --git a/openpower/configs/hostboot/habanero.config b/openpower/configs/hostboot/habanero.config index 90e5735298..8e1a3609e9 100755 --- a/openpower/configs/hostboot/habanero.config +++ b/openpower/configs/hostboot/habanero.config @@ -18,6 +18,10 @@ set CVPD_READ_FROM_HW set CVPD_WRITE_TO_HW set CVPD_READ_FROM_PNOR set CVPD_WRITE_TO_PNOR +set PVPD_READ_FROM_HW +set PVPD_WRITE_TO_HW +set PVPD_READ_FROM_PNOR +set PVPD_WRITE_TO_PNOR set SKIP_RESTRICT_EX_UNITS unset CDIMM_FORMAT_FOR_CVPD diff --git a/openpower/configs/hostboot/palmetto.config b/openpower/configs/hostboot/palmetto.config index 12ebc2cebb..47ef401224 100755 --- a/openpower/configs/hostboot/palmetto.config +++ b/openpower/configs/hostboot/palmetto.config @@ -18,6 +18,10 @@ set CVPD_READ_FROM_HW set CVPD_WRITE_TO_HW set CVPD_READ_FROM_PNOR set CVPD_WRITE_TO_PNOR +set PVPD_READ_FROM_HW +set PVPD_WRITE_TO_HW +set PVPD_READ_FROM_PNOR +set PVPD_WRITE_TO_PNOR set SKIP_RESTRICT_EX_UNITS unset CDIMM_FORMAT_FOR_CVPD From c4ca66b2dec1580099a196feaf15426a98b91b5c Mon Sep 17 00:00:00 2001 From: Jeremy Kerr Date: Fri, 1 May 2015 14:45:03 +0800 Subject: [PATCH 03/14] openpower/package/skiboot: Update to skiboot-5.0.1 Alistair Popple (1): bt: Add a temporary workaround for bmc dropping messages Benjamin Herrenschmidt (2): xscom: Remove recursive locking Add xscom_ok() and lpc_ok() to check XSCOM and LPC usability Dan Streetman (1): nx: use gcid + 1 for CI Jeremy Kerr (1): prd: Only alter host presentation bits of IPOLL mask Joel Stanley (2): hw/ipmi: Fix FW Boot Progress sensor init: Display message before loading kernel Vasant Hegde (1): FSP/CUPD: Fix lock issue Signed-off-by: Jeremy Kerr --- ...host-presentation-bits-of-IPOLL-mask.patch | 47 ------- ...-0003-xscom-remove-recursive-locking.patch | 70 ----------- ..._ok-to-check-XSCOM-and-LPC-usability.patch | 117 ------------------ openpower/package/skiboot/skiboot.mk | 2 +- 4 files changed, 1 insertion(+), 235 deletions(-) delete mode 100644 openpower/package/skiboot/skiboot-0002-prd-Only-alter-host-presentation-bits-of-IPOLL-mask.patch delete mode 100644 openpower/package/skiboot/skiboot-0003-xscom-remove-recursive-locking.patch delete mode 100644 openpower/package/skiboot/skiboot-0004-Add-xscom_ok-and-lpc_ok-to-check-XSCOM-and-LPC-usability.patch diff --git a/openpower/package/skiboot/skiboot-0002-prd-Only-alter-host-presentation-bits-of-IPOLL-mask.patch b/openpower/package/skiboot/skiboot-0002-prd-Only-alter-host-presentation-bits-of-IPOLL-mask.patch deleted file mode 100644 index 68a4cbda72..0000000000 --- a/openpower/package/skiboot/skiboot-0002-prd-Only-alter-host-presentation-bits-of-IPOLL-mask.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff --git a/hw/prd.c b/hw/prd.c -index e65ae57..4862213 100644 ---- a/hw/prd.c -+++ b/hw/prd.c -@@ -226,12 +226,13 @@ static int ipoll_record_and_mask_pending(uint32_t proc) - - lock(&ipoll_lock); - rc = xscom_read(proc, PRD_IPOLL_REG_STATUS, &status); -+ status &= PRD_IPOLL_MASK; - if (!rc) - __ipoll_update_mask(proc, true, status); - unlock(&ipoll_lock); - - if (!rc) -- ipoll_status[proc] |= (status & PRD_IPOLL_MASK); -+ ipoll_status[proc] |= status; - - return rc; - } -@@ -284,7 +285,8 @@ static int prd_msg_handle_init(struct opal_prd_msg *msg) - - lock(&ipoll_lock); - for_each_chip(chip) { -- __ipoll_update_mask(chip->id, false, msg->init.ipoll); -+ __ipoll_update_mask(chip->id, false, -+ msg->init.ipoll & PRD_IPOLL_MASK); - } - unlock(&ipoll_lock); - -@@ -309,7 +311,7 @@ static int prd_msg_handle_fini(void) - - lock(&ipoll_lock); - for_each_chip(chip) { -- __ipoll_update_mask(chip->id, true, -1ul); -+ __ipoll_update_mask(chip->id, true, PRD_IPOLL_MASK); - } - unlock(&ipoll_lock); - -@@ -345,7 +347,7 @@ void prd_init(void) - /* mask everything */ - lock(&ipoll_lock); - for_each_chip(chip) { -- __ipoll_update_mask(chip->id, true, -1ul); -+ __ipoll_update_mask(chip->id, true, PRD_IPOLL_MASK); - } - unlock(&ipoll_lock); - diff --git a/openpower/package/skiboot/skiboot-0003-xscom-remove-recursive-locking.patch b/openpower/package/skiboot/skiboot-0003-xscom-remove-recursive-locking.patch deleted file mode 100644 index e71e17e1d1..0000000000 --- a/openpower/package/skiboot/skiboot-0003-xscom-remove-recursive-locking.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff --git a/hw/xscom.c b/hw/xscom.c -index 6bd71a3..a3533be 100644 ---- a/hw/xscom.c -+++ b/hw/xscom.c -@@ -342,7 +342,6 @@ static uint32_t xscom_decode_chiplet(uint32_t partid, uint64_t *pcb_addr) - */ - int xscom_read(uint32_t partid, uint64_t pcb_addr, uint64_t *val) - { -- bool need_unlock; - uint32_t gcid; - int rc; - -@@ -360,12 +359,8 @@ int xscom_read(uint32_t partid, uint64_t pcb_addr, uint64_t *val) - return OPAL_PARAMETER; - } - -- /* -- * HW822317 requires locking. We use a recursive lock as error -- * conditions might cause printf's which might then try to take -- * the lock again -- */ -- need_unlock = lock_recursive(&xscom_lock); -+ /* HW822317 requires us to do global locking */ -+ lock(&xscom_lock); - - /* Direct vs indirect access */ - if (pcb_addr & XSCOM_ADDR_IND_FLAG) -@@ -374,8 +369,7 @@ int xscom_read(uint32_t partid, uint64_t pcb_addr, uint64_t *val) - rc = __xscom_read(gcid, pcb_addr & 0x7fffffff, val); - - /* Unlock it */ -- if (need_unlock) -- unlock(&xscom_lock); -+ unlock(&xscom_lock); - return rc; - } - -@@ -383,7 +377,6 @@ opal_call(OPAL_XSCOM_READ, xscom_read, 3); - - int xscom_write(uint32_t partid, uint64_t pcb_addr, uint64_t val) - { -- bool need_unlock; - uint32_t gcid; - int rc; - -@@ -401,12 +394,8 @@ int xscom_write(uint32_t partid, uint64_t pcb_addr, uint64_t val) - return OPAL_PARAMETER; - } - -- /* -- * HW822317 requires locking. We use a recursive lock as error -- * conditions might cause printf's which might then try to take -- * the lock again -- */ -- need_unlock = lock_recursive(&xscom_lock); -+ /* HW822317 requires us to do global locking */ -+ lock(&xscom_lock); - - /* Direct vs indirect access */ - if (pcb_addr & XSCOM_ADDR_IND_FLAG) -@@ -415,8 +404,7 @@ int xscom_write(uint32_t partid, uint64_t pcb_addr, uint64_t val) - rc = __xscom_write(gcid, pcb_addr & 0x7fffffff, val); - - /* Unlock it */ -- if (need_unlock) -- unlock(&xscom_lock); -+ unlock(&xscom_lock); - return rc; - } - opal_call(OPAL_XSCOM_WRITE, xscom_write, 3); diff --git a/openpower/package/skiboot/skiboot-0004-Add-xscom_ok-and-lpc_ok-to-check-XSCOM-and-LPC-usability.patch b/openpower/package/skiboot/skiboot-0004-Add-xscom_ok-and-lpc_ok-to-check-XSCOM-and-LPC-usability.patch deleted file mode 100644 index f19f6aa9c9..0000000000 --- a/openpower/package/skiboot/skiboot-0004-Add-xscom_ok-and-lpc_ok-to-check-XSCOM-and-LPC-usability.patch +++ /dev/null @@ -1,117 +0,0 @@ -diff --git a/hw/bt.c b/hw/bt.c -index 7bf1b2f..8bb44cd 100644 ---- a/hw/bt.c -+++ b/hw/bt.c -@@ -350,7 +350,8 @@ static void print_debug_queue_info(void) {} - - static void bt_send_and_unlock(void) - { -- if (bt.state == BT_STATE_IDLE && !list_empty(&bt.msgq)) -+ if (lpc_ok() && -+ bt.state == BT_STATE_IDLE && !list_empty(&bt.msgq)) - bt_send_msg(); - - unlock(&bt.lock); -@@ -361,6 +362,10 @@ static void bt_poll(struct timer *t __unused, void *data __unused) - { - uint8_t bt_ctrl; - -+ /* Don't do anything if the LPC bus is offline */ -+ if (!lpc_ok()) -+ return; -+ - /* If we can't get the lock assume someone else will notice - * the new message and process it. */ - lock(&bt.lock); -@@ -440,7 +445,9 @@ static int bt_add_ipmi_msg(struct ipmi_msg *ipmi_msg) - - void bt_irq(void) - { -- uint8_t ireg = bt_inb(BT_INTMASK); -+ uint8_t ireg; -+ -+ ireg = bt_inb(BT_INTMASK); - - bt.irq_ok = true; - if (ireg & BT_INTMASK_B2H_IRQ) { -diff --git a/hw/lpc-uart.c b/hw/lpc-uart.c -index 2e6114a..7c3190e 100644 ---- a/hw/lpc-uart.c -+++ b/hw/lpc-uart.c -@@ -135,6 +135,10 @@ static size_t uart_con_write(const char *buf, size_t len) - { - size_t written = 0; - -+ /* If LPC bus is bad, we just swallow data */ -+ if (!lpc_ok()) -+ return written; -+ - lock(&uart_lock); - while(written < len) { - if (tx_room == 0) { -diff --git a/hw/lpc.c b/hw/lpc.c -index 0db674f..b287020 100644 ---- a/hw/lpc.c -+++ b/hw/lpc.c -@@ -500,3 +500,15 @@ void lpc_used_by_console(void) - unlock(&chip->lpc_lock); - } - } -+ -+bool lpc_ok(void) -+{ -+ struct proc_chip *chip; -+ -+ if (lpc_default_chip_id < 0) -+ return false; -+ if (!xscom_ok()) -+ return false; -+ chip = get_chip(lpc_default_chip_id); -+ return !lock_held_by_me(&chip->lpc_lock); -+} -diff --git a/hw/xscom.c b/hw/xscom.c -index a3533be..07b9b94 100644 ---- a/hw/xscom.c -+++ b/hw/xscom.c -@@ -531,3 +531,8 @@ void xscom_used_by_console(void) - lock(&xscom_lock); - unlock(&xscom_lock); - } -+ -+bool xscom_ok(void) -+{ -+ return !lock_held_by_me(&xscom_lock); -+} -diff --git a/include/lpc.h b/include/lpc.h -index 5611c54..a0990fd 100644 ---- a/include/lpc.h -+++ b/include/lpc.h -@@ -27,6 +27,12 @@ extern void lpc_init(void); - /* Check for a default bus */ - extern bool lpc_present(void); - -+/* Return of LPC is currently usable. This can be false if the caller -+ * currently holds a lock that would make it unsafe, or the LPC bus -+ * is known to be in some error condition (TBI). -+ */ -+extern bool lpc_ok(void); -+ - /* Handle the interrupt from LPC source */ - extern void __attrconst lpc_interrupt(uint32_t chip_id); - -diff --git a/include/xscom.h b/include/xscom.h -index b1ecaf5..a841261 100644 ---- a/include/xscom.h -+++ b/include/xscom.h -@@ -173,6 +173,11 @@ extern void xscom_init(void); - /* Mark XSCOM lock as being in console path */ - extern void xscom_used_by_console(void); - -+/* Returns true if XSCOM can be used. Typically this returns false if -+ * the current CPU holds the XSCOM lock (to avoid re-entrancy from error path). -+ */ -+extern bool xscom_ok(void); -+ - extern int64_t xscom_read_cfam_chipid(uint32_t partid, uint32_t *chip_id); - - #endif /* __XSCOM_H */ diff --git a/openpower/package/skiboot/skiboot.mk b/openpower/package/skiboot/skiboot.mk index 3b4ad1ae8d..ca508dc1b5 100644 --- a/openpower/package/skiboot/skiboot.mk +++ b/openpower/package/skiboot/skiboot.mk @@ -4,7 +4,7 @@ # ################################################################################ -SKIBOOT_VERSION = skiboot-5.0-rc3 +SKIBOOT_VERSION = skiboot-5.0.1 SKIBOOT_SITE = $(call github,open-power,skiboot,$(SKIBOOT_VERSION)) SKIBOOT_INSTALL_IMAGES = YES SKIBOOT_INSTALL_TARGET = NO From 3368ee0d1b08982a44d291b6521b6096b9b4f8cd Mon Sep 17 00:00:00 2001 From: Jeremy Kerr Date: Fri, 1 May 2015 14:46:03 +0800 Subject: [PATCH 04/14] buildroot: Update to 80a2f83e Jeremy Kerr (1): package/petitboot: Update to 83a3159f Signed-off-by: Jeremy Kerr --- buildroot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildroot b/buildroot index 9ac423f6f0..80a2f83e60 160000 --- a/buildroot +++ b/buildroot @@ -1 +1 @@ -Subproject commit 9ac423f6f0d99b33e7bb7ad703cf83e80716da8a +Subproject commit 80a2f83e60f3fd21a38e2bc9aac149f2c3a9ffdd From 88a4d32618d3fa52133922ee87c06a7f7db62696 Mon Sep 17 00:00:00 2001 From: Jeremy Kerr Date: Fri, 1 May 2015 14:47:44 +0800 Subject: [PATCH 05/14] configs: Update linux to d0ff068a Benjamin Herrenschmidt (2): powerpc: Add PVR for POWER8NVL processor of/address: Don't throw errors on absent ranges properties Joel Stanley (1): powerpc/powernv: Silence SYSPARAM warning on boot Michael Neuling (1): powerpc/powernv: Add OPAL check token call Stewart Smith (3): powerpc/powernv: only register log if OPAL supports doing so powerpc/powernv: only call OPAL_ELOG_RESEND if firmware supports it powerpc/powernv: only call OPAL_RESEND_DUMP if firmware supports it Signed-off-by: Jeremy Kerr --- openpower/configs/firestone_defconfig | 2 +- openpower/configs/habanero_defconfig | 2 +- openpower/configs/palmetto_defconfig | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/openpower/configs/firestone_defconfig b/openpower/configs/firestone_defconfig index d72cb81b53..074809c7ff 100644 --- a/openpower/configs/firestone_defconfig +++ b/openpower/configs/firestone_defconfig @@ -37,7 +37,7 @@ BR2_ROOTFS_OVERLAY="overlay" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/open-power/linux.git" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="1444a4e78a9ce324b0b6ac243ccfbfc8fce25d7e" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="d0ff068a9962ba96d4e6ddfba2a4e9fd8bc9a763" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig" BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y diff --git a/openpower/configs/habanero_defconfig b/openpower/configs/habanero_defconfig index 64b827af73..59ae12c6ae 100644 --- a/openpower/configs/habanero_defconfig +++ b/openpower/configs/habanero_defconfig @@ -37,7 +37,7 @@ BR2_ROOTFS_OVERLAY="overlay" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/open-power/linux.git" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="1444a4e78a9ce324b0b6ac243ccfbfc8fce25d7e" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="d0ff068a9962ba96d4e6ddfba2a4e9fd8bc9a763" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig" BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y diff --git a/openpower/configs/palmetto_defconfig b/openpower/configs/palmetto_defconfig index 5a4bf38c9d..7af16e9b79 100644 --- a/openpower/configs/palmetto_defconfig +++ b/openpower/configs/palmetto_defconfig @@ -36,7 +36,7 @@ BR2_ROOTFS_OVERLAY="overlay" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/open-power/linux.git" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="1444a4e78a9ce324b0b6ac243ccfbfc8fce25d7e" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="d0ff068a9962ba96d4e6ddfba2a4e9fd8bc9a763" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig" BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y From ed20c8b192a70ef0eb2382b68983cf016faab89e Mon Sep 17 00:00:00 2001 From: Matt Ploetz Date: Tue, 12 May 2015 16:20:04 -0500 Subject: [PATCH 06/14] Fix PCIe swap issue in processMRW.pl --- .../hostboot-0008-Fix-PCIe-swap-issue.txt | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.txt diff --git a/openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.txt b/openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.txt new file mode 100644 index 0000000000..3777b1197b --- /dev/null +++ b/openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.txt @@ -0,0 +1,63 @@ +From a4f739abb72b8ac5748138183b274cca5eef50ff Mon Sep 17 00:00:00 2001 +From: Matt Ploetz +Date: Tue, 12 May 2015 15:32:20 -0500 +Subject: [PATCH] PCIe lane swap fix in processMRW.pl + +Change-Id: Iee7127fef7f4a911a77e0c24c896d840b1b45ff4 +--- + src/usr/targeting/common/processMrw.pl | 25 +++++++++++-------------- + 1 file changed, 11 insertions(+), 14 deletions(-) + +diff --git a/src/usr/targeting/common/processMrw.pl b/src/usr/targeting/common/processMrw.pl +index 5d44e74..bbdb936 100644 +--- a/src/usr/targeting/common/processMrw.pl ++++ b/src/usr/targeting/common/processMrw.pl +@@ -805,8 +805,8 @@ sub processPcie + $iop_swap{0}{1}{'11'}=$t[7]; + + $iop_swap{1}{0}{'00'}=$t[8]; +- $iop_swap{1}{0}{'01'}=$t[9]; +- $iop_swap{1}{0}{'10'}=$t[10]; ++ $iop_swap{1}{0}{'10'}=$t[9]; ++ $iop_swap{1}{0}{'01'}=$t[10]; + $iop_swap{1}{0}{'11'}=$t[11]; + $iop_swap{1}{1}{'00'}=$t[12]; + $iop_swap{1}{1}{'10'}=$t[13]; +@@ -906,25 +906,22 @@ sub processPcie + die "PCIE config for $iop,$iop_lane_swap[$iop],$lane_rev not found\n"; + } + } +- my $lane_swap_attr0 = sprintf("%s,%s",$iop_lane_swap[0], +- $iop_lane_swap[1]); +- my $lane_swap_attr1 = sprintf("%s,0,%s,0",$iop_lane_swap[0], +- $iop_lane_swap[1]); ++ ++ my $lane_rev_attr0 = sprintf("%s,%s", ++ oct($iop_swap_lu[0]),oct($iop_swap_lu[1])); ++ my $lane_rev_attr1 = sprintf("%s,0,%s,0", ++ oct($iop_swap_lu[0]),oct($iop_swap_lu[1])); + + $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_SWAP", +- $lane_swap_attr0); ++ $lane_rev_attr0); + $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_SWAP_NON_BIFURCATED", +- $lane_swap_attr1); ++ $lane_rev_attr1); + $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_SWAP_BIFURCATED", + "0,0,0,0"); +- +- my $lane_rev_attr = sprintf("%s,0,%s,0", +- oct($iop_swap_lu[0]),oct($iop_swap_lu[1])); +- + $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_REVERSAL", +- $lane_rev_attr); ++ "0,0,0,0"); + $targetObj->setAttribute($parentTarget, +- "PROC_PCIE_IOP_REVERSAL_NON_BIFURCATED",$lane_rev_attr); ++ "PROC_PCIE_IOP_REVERSAL_NON_BIFURCATED","0,0,0,0"); + $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_REVERSAL_BIFURCATED", + "0,0,0,0"); + +-- +1.8.2.2 + From 86f9a119a42e6bfe39165b744dd63b7b4ef14043 Mon Sep 17 00:00:00 2001 From: Matt Ploetz Date: Wed, 13 May 2015 09:09:13 -0500 Subject: [PATCH 07/14] Rename PCIe swap patch --- ...CIe-swap-issue.txt => hostboot-0008-Fix-PCIe-swap-issue.patch} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename openpower/package/hostboot/{hostboot-0008-Fix-PCIe-swap-issue.txt => hostboot-0008-Fix-PCIe-swap-issue.patch} (100%) diff --git a/openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.txt b/openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.patch similarity index 100% rename from openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.txt rename to openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.patch From af3f64e2731ff22c255857554b931a063330cf07 Mon Sep 17 00:00:00 2001 From: Matt Ploetz Date: Thu, 14 May 2015 14:49:55 -0500 Subject: [PATCH 08/14] Update hostboot, hostboot binaries and openpower-pnor packages --- openpower/configs/firestone_defconfig | 1 + openpower/configs/habanero_defconfig | 1 + openpower/configs/palmetto_defconfig | 1 + openpower/package/hostboot-binaries/hostboot_binaries.mk | 4 ++-- openpower/package/hostboot/hostboot.mk | 2 +- openpower/package/openpower-pnor/Config.in | 5 +++++ openpower/package/openpower-pnor/openpower-pnor.mk | 4 +++- 7 files changed, 14 insertions(+), 4 deletions(-) diff --git a/openpower/configs/firestone_defconfig b/openpower/configs/firestone_defconfig index 074809c7ff..cd32a2c674 100644 --- a/openpower/configs/firestone_defconfig +++ b/openpower/configs/firestone_defconfig @@ -8,6 +8,7 @@ BR2_HOSTBOOT_CONFIG_FILE="firestone.config" BR2_HOSTBOOT_BINARY_SBE_FILENAME="venice_sbe.img.ecc" BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc" +BR2_HOSTBOOT_BINARY_WINK_FILENAME="p8.ref_image.hdr.bin.ecc" BR2_OCC_BIN_FILENAME="occ.bin" diff --git a/openpower/configs/habanero_defconfig b/openpower/configs/habanero_defconfig index 59ae12c6ae..edcad58fab 100644 --- a/openpower/configs/habanero_defconfig +++ b/openpower/configs/habanero_defconfig @@ -8,6 +8,7 @@ BR2_HOSTBOOT_CONFIG_FILE="habanero.config" BR2_HOSTBOOT_BINARY_SBE_FILENAME="venice_sbe.img.ecc" BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc" +BR2_HOSTBOOT_BINARY_WINK_FILENAME="p8.ref_image.hdr.bin.ecc" BR2_OCC_BIN_FILENAME="occ.bin" diff --git a/openpower/configs/palmetto_defconfig b/openpower/configs/palmetto_defconfig index 7af16e9b79..b589463d64 100644 --- a/openpower/configs/palmetto_defconfig +++ b/openpower/configs/palmetto_defconfig @@ -8,6 +8,7 @@ BR2_HOSTBOOT_CONFIG_FILE="palmetto.config" BR2_HOSTBOOT_BINARY_SBE_FILENAME="venice_sbe.img.ecc" BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc" +BR2_HOSTBOOT_BINARY_WINK_FILENAME="p8.ref_image.hdr.bin.ecc" BR2_OCC_BIN_FILENAME="occ.bin" diff --git a/openpower/package/hostboot-binaries/hostboot_binaries.mk b/openpower/package/hostboot-binaries/hostboot_binaries.mk index 03523c3453..d9a23df2f3 100644 --- a/openpower/package/hostboot-binaries/hostboot_binaries.mk +++ b/openpower/package/hostboot-binaries/hostboot_binaries.mk @@ -4,7 +4,7 @@ # ################################################################################ -HOSTBOOT_BINARIES_VERSION ?= d41753f2b5e2510d6bc6ce58adf8e55207b8d317 +HOSTBOOT_BINARIES_VERSION ?= 22470e51b6342f9c307e28b3ea7cdb194ff954d4 HOSTBOOT_BINARIES_SITE ?= $(call github,open-power,hostboot-binaries,$(HOSTBOOT_BINARIES_VERSION)) HOSTBOOT_BINARIES_LICENSE = Apache-2.0 @@ -13,7 +13,7 @@ HOSTBOOT_BINARIES_INSTALL_TARGET = NO define HOSTBOOT_BINARIES_INSTALL_IMAGES_CMDS $(INSTALL) -D $(@D)/cvpd.bin $(STAGING_DIR)/hostboot_binaries/cvpd.bin - $(INSTALL) -D $(@D)/p8.ref_image.hdr.bin.ecc $(STAGING_DIR)/hostboot_binaries/p8.ref_image.hdr.bin.ecc + $(INSTALL) -D $(@D)/$(BR2_HOSTBOOT_BINARY_WINK_FILENAME) $(STAGING_DIR)/hostboot_binaries/ $(INSTALL) -D $(@D)/$(BR2_HOSTBOOT_BINARY_SBEC_FILENAME) $(STAGING_DIR)/hostboot_binaries/ $(INSTALL) -D $(@D)/$(BR2_HOSTBOOT_BINARY_SBE_FILENAME) $(STAGING_DIR)/hostboot_binaries/ endef diff --git a/openpower/package/hostboot/hostboot.mk b/openpower/package/hostboot/hostboot.mk index 83aae71cf0..3b7bc6fbf9 100644 --- a/openpower/package/hostboot/hostboot.mk +++ b/openpower/package/hostboot/hostboot.mk @@ -4,7 +4,7 @@ # ################################################################################ -HOSTBOOT_VERSION ?= 70b5e31d74487d51e69a0e0a390adea6b4f32dc5 +HOSTBOOT_VERSION ?= c646754e720b5cd21534425ca90bb414a4a3ff12 HOSTBOOT_SITE ?= $(call github,open-power,hostboot,$(HOSTBOOT_VERSION)) HOSTBOOT_LICENSE = Apache-2.0 diff --git a/openpower/package/openpower-pnor/Config.in b/openpower/package/openpower-pnor/Config.in index 6a23e519d9..2234d4e9d9 100644 --- a/openpower/package/openpower-pnor/Config.in +++ b/openpower/package/openpower-pnor/Config.in @@ -46,6 +46,11 @@ config BR2_HOSTBOOT_BINARY_SBEC_FILENAME help String used to define name of sbec hostboot binary file +config BR2_HOSTBOOT_BINARY_WINK_FILENAME + string "Name of winkle hostboot binary" + help + String used to define name of winkle hostboot binary file + config BR2_OPENPOWER_TARGETING_BIN_FILENAME string "Name of openpower binary targeting file" help diff --git a/openpower/package/openpower-pnor/openpower-pnor.mk b/openpower/package/openpower-pnor/openpower-pnor.mk index fb7e2306fd..658a949dda 100644 --- a/openpower/package/openpower-pnor/openpower-pnor.mk +++ b/openpower/package/openpower-pnor/openpower-pnor.mk @@ -8,7 +8,7 @@ # make doesn't care for quotes in the dependencies. XML_PACKAGE=$(subst $\",,$(BR2_OPENPOWER_XML_PACKAGE)) -OPENPOWER_PNOR_VERSION ?= 3748ff041448a3909d5ffc5e62befcfcb597c0c1 +OPENPOWER_PNOR_VERSION ?= ed1682e10526ebd85825427fbf397361bb0e34aa OPENPOWER_PNOR_SITE ?= $(call github,open-power,pnor,$(OPENPOWER_PNOR_VERSION)) OPENPOWER_PNOR_LICENSE = Apache-2.0 @@ -48,6 +48,7 @@ define OPENPOWER_PNOR_INSTALL_IMAGES_CMDS -targeting_binary_source $(BR2_OPENPOWER_TARGETING_BIN_FILENAME) \ -sbe_binary_filename $(BR2_HOSTBOOT_BINARY_SBE_FILENAME) \ -sbec_binary_filename $(BR2_HOSTBOOT_BINARY_SBEC_FILENAME) \ + -wink_binary_filename $(BR2_HOSTBOOT_BINARY_WINK_FILENAME) \ -occ_binary_filename $(OCC_STAGING_DIR)/$(BR2_OCC_BIN_FILENAME) \ -capp_binary_filename $(BINARIES_DIR)/$(BR2_CAPP_UCODE_BIN_FILENAME) \ -openpower_version_filename $(OPENPOWER_PNOR_VERSION_FILE) @@ -63,6 +64,7 @@ define OPENPOWER_PNOR_INSTALL_IMAGES_CMDS -bootkernel $(BINARIES_DIR)/$(LINUX_IMAGE_NAME) \ -sbe_binary_filename $(BR2_HOSTBOOT_BINARY_SBE_FILENAME) \ -sbec_binary_filename $(BR2_HOSTBOOT_BINARY_SBEC_FILENAME) \ + -wink_binary_filename $(BR2_HOSTBOOT_BINARY_WINK_FILENAME) \ -occ_binary_filename $(OCC_STAGING_DIR)/$(BR2_OCC_BIN_FILENAME) \ -targeting_binary_filename $(BR2_OPENPOWER_TARGETING_ECC_FILENAME) \ -openpower_version_filename $(OPENPOWER_PNOR_VERSION_FILE) From 93157d13a3990c7fd65eafe1f488fa5fd211f236 Mon Sep 17 00:00:00 2001 From: Stewart Smith Date: Thu, 14 May 2015 16:01:44 +1000 Subject: [PATCH 09/14] Make pkg-versions.mk handle versions/tags with package name Some SCM tags/versions can include the package name, in this event, we want to exclude the package name from the generated version that ends up in the VERSION partition. This patch simply uses some sed to rip out 'package-' from anything from git. Signed-off-by: Stewart Smith --- openpower/package/pkg-versions.mk | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/openpower/package/pkg-versions.mk b/openpower/package/pkg-versions.mk index e3acbda5d5..e2e3af0c7e 100644 --- a/openpower/package/pkg-versions.mk +++ b/openpower/package/pkg-versions.mk @@ -70,16 +70,16 @@ whoami | xargs echo -n >> $$($(2)_VERSION_FILE); \ echo -n "-" >> $$($(2)_VERSION_FILE); \ \ cd "$$($(2)_SITE)"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \ - | sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/' | xargs echo -n \ + | sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/;s/$(1)-//;' | xargs echo -n \ >> $$($(2)_VERSION_FILE); \ \ -cd "$$($(2)_SITE)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \ +cd "$$($(2)_SITE)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/;' | \ xargs echo -n >> $$($(2)_VERSION_FILE); \ else \ \ [ `echo -n $$($(2)_VERSION) | wc -c` == "40" ] && (echo -n $$($(2)_VERSION) | \ - sed "s/^\([0-9a-f]\{7\}\).*/\1/" >> $$($(2)_VERSION_FILE)) \ - || echo -n $$($(2)_VERSION) >> $$($(2)_VERSION_FILE); \ + sed "s/^\([0-9a-f]\{7\}\).*/\1/;s/$(1)-//;" >> $$($(2)_VERSION_FILE)) \ + || echo -n $$($(2)_VERSION) | sed -e 's/$(1)-//' >> $$($(2)_VERSION_FILE); \ \ cd "$$(BR2_EXTERNAL)"; git describe --all --dirty | \ if grep -e "-dirty"; then \ From ade788aebcedcd0c50e65424807bab6c34ba179a Mon Sep 17 00:00:00 2001 From: Stewart Smith Date: Thu, 21 May 2015 21:03:55 +1000 Subject: [PATCH 10/14] Bump skiboot to 5.0.2 Signed-off-by: Stewart Smith --- openpower/package/skiboot/skiboot.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openpower/package/skiboot/skiboot.mk b/openpower/package/skiboot/skiboot.mk index ca508dc1b5..7034ad7fa8 100644 --- a/openpower/package/skiboot/skiboot.mk +++ b/openpower/package/skiboot/skiboot.mk @@ -4,7 +4,7 @@ # ################################################################################ -SKIBOOT_VERSION = skiboot-5.0.1 +SKIBOOT_VERSION = skiboot-5.0.2 SKIBOOT_SITE = $(call github,open-power,skiboot,$(SKIBOOT_VERSION)) SKIBOOT_INSTALL_IMAGES = YES SKIBOOT_INSTALL_TARGET = NO From d2a4a489ff32a7116150676e4424db7211d0a6aa Mon Sep 17 00:00:00 2001 From: Guillermo J Silva Date: Thu, 21 May 2015 13:34:22 -0500 Subject: [PATCH 11/14] OCC fixes for Tyan Issue 134 and other miscellaneous fixes --- openpower/package/occ/occ.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openpower/package/occ/occ.mk b/openpower/package/occ/occ.mk index 1a0b6368d0..85a893aef8 100644 --- a/openpower/package/occ/occ.mk +++ b/openpower/package/occ/occ.mk @@ -4,7 +4,7 @@ # ################################################################################ -OCC_VERSION ?= 19678d6a7dd078e3206bac6f1d5e3cf03008542b +OCC_VERSION ?= db9b6efae0555cbc4df2200e0e8a18e4a4c4477c OCC_SITE ?= $(call github,open-power,occ,$(OCC_VERSION)) OCC_LICENSE = Apache-2.0 OCC_DEPENDENCIES = host-binutils host-p8-pore-binutils From c439171b076b6b1672f910fd177597beb80f9c29 Mon Sep 17 00:00:00 2001 From: Matt Ploetz Date: Thu, 21 May 2015 16:27:07 -0500 Subject: [PATCH 12/14] Add patch for IPOLL interrupt workaround --- ...0009-ATTN-IPOLL-interrupt-workaround.patch | 141 ++++++++++++++++++ 1 file changed, 141 insertions(+) create mode 100644 openpower/package/hostboot/hostboot-0009-ATTN-IPOLL-interrupt-workaround.patch diff --git a/openpower/package/hostboot/hostboot-0009-ATTN-IPOLL-interrupt-workaround.patch b/openpower/package/hostboot/hostboot-0009-ATTN-IPOLL-interrupt-workaround.patch new file mode 100644 index 0000000000..eb8d12aae5 --- /dev/null +++ b/openpower/package/hostboot/hostboot-0009-ATTN-IPOLL-interrupt-workaround.patch @@ -0,0 +1,141 @@ +From d2bdfed735f6c5e69b606f0251aba131fec4275d Mon Sep 17 00:00:00 2001 +From: Brian Stegmiller +Date: Thu, 14 May 2015 13:47:36 -0500 +Subject: [PATCH] ATTN: IPOLL interrupt workaround + +Circumvents issue where interrupts happen before OPAL is ready +to handle them + +Change-Id: I3d378cd03dac51aaa5b2f77e8940eb63f170016b +Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/17795 +Reviewed-by: A. Patrick Williams III +Tested-by: Jenkins Server +--- + src/usr/diag/attn/common/attnsvc_common.C | 83 +++++++++++++++++++++++++++++-- + 1 file changed, 79 insertions(+), 4 deletions(-) + +diff --git a/src/usr/diag/attn/common/attnsvc_common.C b/src/usr/diag/attn/common/attnsvc_common.C +index c56b8a8..5067438 100644 +--- a/src/usr/diag/attn/common/attnsvc_common.C ++++ b/src/usr/diag/attn/common/attnsvc_common.C +@@ -43,6 +43,13 @@ using namespace ERRORLOG; + + namespace ATTN + { ++const uint64_t MCIFIRACT0 = 0x02011846; ++const uint64_t MCIFIRACT1 = 0x02011847; ++ ++const uint64_t MCIFIRMASK = 0x02011843; ++const uint64_t MCIFIRMASK_AND = 0x02011844; ++const uint64_t MCIFIRMASK_OR = 0x02011845; ++ + + void getPbGp2Mask(uint64_t i_pos, void * i_data) + { +@@ -104,11 +111,11 @@ errlHndl_t ServiceCommon::configureInterrupts( + ConfigureMode i_mode) + { + errlHndl_t err = NULL; +- +- TargetHandleList procs; ++ TargetHandleList procs; + getTargetService().getAllChips(procs, TYPE_PROC); + TargetHandleList::iterator it = procs.begin(); + ++ + while(it != procs.end()) + { + uint64_t mask = 0; +@@ -172,12 +179,10 @@ errlHndl_t ServiceCommon::configureInterrupts( + + #ifndef __HOSTBOOT_RUNTIME + // enable attentions in ipoll mask +- + mask = HostMask::nonHost(); + mask |= HostMask::host(); + + // this doesn't have an and/or reg for some reason... +- + err = modifyScom(*it, + IPOLL::address, + i_mode == UP ? ~mask : mask, +@@ -187,6 +192,76 @@ errlHndl_t ServiceCommon::configureInterrupts( + { + break; + } ++ ++ #else // HOSTBOOT_RUNTIME ++ ++ if (i_mode == UP) ++ { ++ HwasState l_functional; ++ uint64_t l_mciAct0 = 0; ++ uint64_t l_mciAct1 = 0; ++ uint64_t l_mciBitMask = 0; ++ TargetHandleList l_mcsList; ++ // Get list of MCS units associated with this proc ++ getTargetService().getMcsList( *it, l_mcsList ); ++ ++ // We need to set/clear mask bits in the MCIFIRs that ++ // are associated with host attentions. This should ++ // cause interrupts to re-occur if they had happened ++ // prior to starting the opal-prd application. ++ TargetHandleList::iterator l_mcsIt = l_mcsList.begin(); ++ ++ while(l_mcsIt != l_mcsList.end()) ++ { ++ // Make sure functional prior to using ++ if (!((*l_mcsIt)->tryGetAttr(l_functional))) ++ { ++ // Can't tell if functional so skip this MCS ++ break; ++ } ++ ++ if ( !(l_functional.functional) ) ++ { ++ // Not functional MCS so skip it ++ break; ++ } ++ ++ // Read ACTION registers to see if HOST ATTN ++ err = getScom(*l_mcsIt, MCIFIRACT0, l_mciAct0); ++ ++ if (NULL == err) ++ { ++ err = getScom(*l_mcsIt, MCIFIRACT1, l_mciAct1); ++ } ++ ++ if (NULL == err) ++ { ++ // Create bit mask we will use to write to MCIFIR ++ // (ACT0=1, ACT1=0) indicate bits we want ++ l_mciBitMask = l_mciAct0 & ~l_mciAct1; ++ // Set mask bits ++ err = putScom(*l_mcsIt, MCIFIRMASK_OR, l_mciBitMask); ++ } ++ ++ if (NULL == err) ++ { ++ // Clear mask bits ++ err = putScom(*l_mcsIt, MCIFIRMASK_AND, ~l_mciBitMask); ++ } ++ ++ // Commit any failure we had and move to next MCS unit ++ if (NULL != err) ++ { ++ errlCommit(err, ATTN_COMP_ID); ++ } ++ ++ l_mcsIt++; ++ ++ } // end while on MCS units ++ ++ l_mcsList.clear(); ++ } // end if UP MODE -- enabling ++ + #endif //__HOSTBOOT_RUNTIME + + ++it; +-- +1.8.2.2 + From 67ecb1818b84ef8c3e3e2f976ad34014df551630 Mon Sep 17 00:00:00 2001 From: Nick Bofferding Date: Thu, 21 May 2015 16:24:39 -0500 Subject: [PATCH 13/14] Increase UART timeout to 10s Up UART timeout to 10s to compensate for loaded BMC during auto boot --- .../package/hostboot/hostboot-0001-Increase-uart-delay.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openpower/package/hostboot/hostboot-0001-Increase-uart-delay.patch b/openpower/package/hostboot/hostboot-0001-Increase-uart-delay.patch index 74cb584d4b..5c916d2bb1 100644 --- a/openpower/package/hostboot/hostboot-0001-Increase-uart-delay.patch +++ b/openpower/package/hostboot/hostboot-0001-Increase-uart-delay.patch @@ -18,7 +18,7 @@ index 385a05c..a269168 100644 { const uint64_t DELAY_NS = 100; - const uint64_t DELAY_LOOPS = 10000; -+ const uint64_t DELAY_LOOPS = 1000000; ++ const uint64_t DELAY_LOOPS = 100000000; uint8_t data = 0; uint64_t loops = 0; From 2339fe25df2a254feb3741e4bf4618cf1b2c23bf Mon Sep 17 00:00:00 2001 From: Patrick Williams Date: Fri, 29 May 2015 07:47:07 -0500 Subject: [PATCH 14/14] Hostboot: Incorrect guarding on plugging rule violations. --- ...d-actions-for-memory-plugging-errors.patch | 764 ++++++++++++++++++ 1 file changed, 764 insertions(+) create mode 100644 openpower/package/hostboot/hostboot-0010-Remove-gard-actions-for-memory-plugging-errors.patch diff --git a/openpower/package/hostboot/hostboot-0010-Remove-gard-actions-for-memory-plugging-errors.patch b/openpower/package/hostboot/hostboot-0010-Remove-gard-actions-for-memory-plugging-errors.patch new file mode 100644 index 0000000000..ef2a89670b --- /dev/null +++ b/openpower/package/hostboot/hostboot-0010-Remove-gard-actions-for-memory-plugging-errors.patch @@ -0,0 +1,764 @@ +From c53b40e0dcc250d75a159389e099dd40b64e5468 Mon Sep 17 00:00:00 2001 +From: Dan Crowell +Date: Wed, 27 May 2015 16:39:23 -0500 +Subject: [PATCH] Remove gard actions for memory plugging errors + +Modified errors related to unsupported or invalid dimm +configurations to no longer gard any hardware. + +Change-Id: I67459425e973ad1c6f4cf95ccd164b73bdd46a80 +--- + .../mss_eff_config/memory_mss_eff_config.xml | 208 +++++---------------- + .../memory_mss_eff_config_termination.xml | 69 +------ + 2 files changed, 50 insertions(+), 227 deletions(-) + +diff --git a/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config.xml b/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config.xml +index ed1de55..c6a2d37 100644 +--- a/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config.xml ++++ b/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config.xml +@@ -5,7 +5,7 @@ + + + +- ++ + + + +@@ -22,7 +22,7 @@ + + + +- ++ + + + +@@ -47,9 +47,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -71,9 +68,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -98,9 +92,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -125,9 +116,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -169,10 +157,10 @@ + Plug rule violation, one position is empty but other are present + + TARGET_MBA +- CUR_DIMM_SPD_VALID_U8ARRAY_0_0 +- CUR_DIMM_SPD_VALID_U8ARRAY_0_1 +- CUR_DIMM_SPD_VALID_U8ARRAY_1_0 +- CUR_DIMM_SPD_VALID_U8ARRAY_1_1 ++ CUR_DIMM_SPD_VALID_U8ARRAY_0_0 ++ CUR_DIMM_SPD_VALID_U8ARRAY_0_1 ++ CUR_DIMM_SPD_VALID_U8ARRAY_1_0 ++ CUR_DIMM_SPD_VALID_U8ARRAY_1_1 + + MEMORY_PLUGGING_ERROR + HIGH +@@ -186,10 +174,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -198,10 +182,10 @@ + Plug rule violation, sides do not match + + TARGET_MBA +- CUR_DIMM_SPD_VALID_U8ARRAY_0_0 +- CUR_DIMM_SPD_VALID_U8ARRAY_0_1 +- CUR_DIMM_SPD_VALID_U8ARRAY_1_0 +- CUR_DIMM_SPD_VALID_U8ARRAY_1_1 ++ CUR_DIMM_SPD_VALID_U8ARRAY_0_0 ++ CUR_DIMM_SPD_VALID_U8ARRAY_0_1 ++ CUR_DIMM_SPD_VALID_U8ARRAY_1_0 ++ CUR_DIMM_SPD_VALID_U8ARRAY_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -216,10 +200,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -229,10 +209,10 @@ + Plug rule violation, top and bottom do not match + + TARGET_MBA +- CUR_DIMM_SPD_VALID_U8ARRAY_0_0 +- CUR_DIMM_SPD_VALID_U8ARRAY_0_1 +- CUR_DIMM_SPD_VALID_U8ARRAY_1_0 +- CUR_DIMM_SPD_VALID_U8ARRAY_1_1 ++ CUR_DIMM_SPD_VALID_U8ARRAY_0_0 ++ CUR_DIMM_SPD_VALID_U8ARRAY_0_1 ++ CUR_DIMM_SPD_VALID_U8ARRAY_1_0 ++ CUR_DIMM_SPD_VALID_U8ARRAY_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -247,10 +227,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -259,10 +235,10 @@ + Incompatable DRAM generation + + TARGET_MBA +- DRAM_DEVICE_TYPE_0_0 +- DRAM_DEVICE_TYPE_0_1 +- DRAM_DEVICE_TYPE_1_0 +- DRAM_DEVICE_TYPE_1_1 ++ DRAM_DEVICE_TYPE_0_0 ++ DRAM_DEVICE_TYPE_0_1 ++ DRAM_DEVICE_TYPE_1_0 ++ DRAM_DEVICE_TYPE_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -277,10 +253,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -289,10 +261,10 @@ + Incompatable DIMM type + + TARGET_MBA +- MODULE_TYPE_0_0 +- MODULE_TYPE_0_1 +- MODULE_TYPE_1_0 +- MODULE_TYPE_1_1 ++ MODULE_TYPE_0_0 ++ MODULE_TYPE_0_1 ++ MODULE_TYPE_1_0 ++ MODULE_TYPE_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -307,10 +279,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -319,10 +287,10 @@ + Incompatable DIMM ranks + + TARGET_MBA +- NUM_RANKS_0_0 +- NUM_RANKS_0_1 +- NUM_RANKS_1_0 +- NUM_RANKS_1_1 ++ NUM_RANKS_0_0 ++ NUM_RANKS_0_1 ++ NUM_RANKS_1_0 ++ NUM_RANKS_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -337,10 +305,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -349,10 +313,10 @@ + Incompatable DIMM banks + + TARGET_MBA +- SDRAM_BANKS_0_0 +- SDRAM_BANKS_0_1 +- SDRAM_BANKS_1_0 +- SDRAM_BANKS_1_1 ++ SDRAM_BANKS_0_0 ++ SDRAM_BANKS_0_1 ++ SDRAM_BANKS_1_0 ++ SDRAM_BANKS_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -367,10 +331,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -379,10 +339,10 @@ + Incompatable DIMM rows + + TARGET_MBA +- SDRAM_ROWS_0_0 +- SDRAM_ROWS_0_1 +- SDRAM_ROWS_1_0 +- SDRAM_ROWS_1_1 ++ SDRAM_ROWS_0_0 ++ SDRAM_ROWS_0_1 ++ SDRAM_ROWS_1_0 ++ SDRAM_ROWS_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -397,10 +357,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -409,10 +365,10 @@ + Incompatable DIMM columns + + TARGET_MBA +- SDRAM_COLS_0_0 +- SDRAM_COLS_0_1 +- SDRAM_COLS_1_0 +- SDRAM_COLS_1_1 ++ SDRAM_COLS_0_0 ++ SDRAM_COLS_0_1 ++ SDRAM_COLS_1_0 ++ SDRAM_COLS_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -427,10 +383,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -439,10 +391,10 @@ + Incompatable DRAM primary bus width + + TARGET_MBA +- BUS_WIDTH_0_0 +- BUS_WIDTH_0_1 +- BUS_WIDTH_1_0 +- BUS_WIDTH_1_1 ++ BUS_WIDTH_0_0 ++ BUS_WIDTH_0_1 ++ BUS_WIDTH_1_0 ++ BUS_WIDTH_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -457,10 +409,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -483,10 +431,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -496,10 +440,10 @@ + Incompatable DRAM width + + TARGET_MBA +- DRAM_WIDTH_0_0 +- DRAM_WIDTH_0_1 +- DRAM_WIDTH_1_0 +- DRAM_WIDTH_1_1 ++ DRAM_WIDTH_0_0 ++ DRAM_WIDTH_0_1 ++ DRAM_WIDTH_1_0 ++ DRAM_WIDTH_1_1 + + + MEMORY_PLUGGING_ERROR +@@ -514,10 +458,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -540,10 +480,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -566,10 +502,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -591,10 +523,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -616,10 +544,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -641,10 +565,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -666,10 +586,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -691,10 +607,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -716,10 +628,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -741,10 +649,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -766,10 +670,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -791,10 +691,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -816,10 +712,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -841,10 +733,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +@@ -866,10 +754,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- HIGH +- + + + +diff --git a/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config_termination.xml b/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config_termination.xml +index 9f3c89c..f04b0a6 100644 +--- a/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config_termination.xml ++++ b/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config_termination.xml +@@ -5,7 +5,9 @@ + + + +- ++ ++ ++ + + + +@@ -20,7 +22,7 @@ + + + +- ++ + + + +@@ -195,9 +197,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -220,9 +219,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -245,9 +241,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -271,9 +264,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -297,9 +287,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -323,9 +310,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -349,9 +333,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -374,9 +355,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -400,9 +378,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -425,9 +400,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -450,9 +422,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -476,9 +445,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -497,9 +463,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -523,9 +486,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -650,9 +610,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -675,9 +632,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -699,9 +653,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -724,9 +675,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -750,9 +698,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -820,9 +765,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +@@ -845,9 +787,6 @@ + TARGET_MBA + + +- +- TARGET_MBA +- + + + +-- +2.3.0 +