summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/usr/fsi/fsidd.C57
-rw-r--r--src/usr/fsi/fsipres.C65
2 files changed, 55 insertions, 67 deletions
diff --git a/src/usr/fsi/fsidd.C b/src/usr/fsi/fsidd.C
index 021df633d..8d47c5e7b 100644
--- a/src/usr/fsi/fsidd.C
+++ b/src/usr/fsi/fsidd.C
@@ -1,26 +1,25 @@
-/* IBM_PROLOG_BEGIN_TAG
- * This is an automatically generated prolog.
- *
- * $Source: src/usr/fsi/fsidd.C $
- *
- * IBM CONFIDENTIAL
- *
- * COPYRIGHT International Business Machines Corp. 2011-2012
- *
- * p1
- *
- * Object Code Only (OCO) source materials
- * Licensed Internal Code Source Materials
- * IBM HostBoot Licensed Internal Code
- *
- * The source code for this program is not published or other-
- * wise divested of its trade secrets, irrespective of what has
- * been deposited with the U.S. Copyright Office.
- *
- * Origin: 30
- *
- * IBM_PROLOG_END_TAG
- */
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/usr/fsi/fsidd.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2011,2012 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
/**
* @file fsidd.C
*
@@ -1385,12 +1384,22 @@ errlHndl_t FsiDD::initMasterControl(const TARGETING::Target* i_master,
if( l_err ) { break; }
- //Set MMODE reg to enable HW recovery, parity checking, setup clock ratio
+ //Set MMODE reg to enable HW recovery, parity checking,
+ // setup clock ratio
// 1= Enable hardware error recovery
// 3= Enable parity checking
// 4:13= FSI clock ratio 0 is 1:1
// 14:23= FSI clock ratio 1 is 4:1
databuf = 0x50040400;
+ //Hardware Bug HW204566 on Murano DD1.0 requires legacy
+ // mode to be enabled
+ if( (i_master->getAttr<TARGETING::ATTR_MODEL>()
+ == TARGETING::MODEL_MURANO) &&
+ (i_master->getAttr<TARGETING::ATTR_EC>() == 0x10) )
+ {
+ // 25=clock/4 mode
+ databuf |= 0x00000040;
+ }
l_err = write( ctl_reg|FSI_MMODE_000, &databuf );
if( l_err ) { break; }
}
diff --git a/src/usr/fsi/fsipres.C b/src/usr/fsi/fsipres.C
index 7332b09c3..7c4aff01c 100644
--- a/src/usr/fsi/fsipres.C
+++ b/src/usr/fsi/fsipres.C
@@ -1,26 +1,25 @@
-/* IBM_PROLOG_BEGIN_TAG
- * This is an automatically generated prolog.
- *
- * $Source: src/usr/fsi/fsipres.C $
- *
- * IBM CONFIDENTIAL
- *
- * COPYRIGHT International Business Machines Corp. 2011-2012
- *
- * p1
- *
- * Object Code Only (OCO) source materials
- * Licensed Internal Code Source Materials
- * IBM HostBoot Licensed Internal Code
- *
- * The source code for this program is not published or other-
- * wise divested of its trade secrets, irrespective of what has
- * been deposited with the U.S. Copyright Office.
- *
- * Origin: 30
- *
- * IBM_PROLOG_END_TAG
- */
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/usr/fsi/fsipres.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2011,2012 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
#include <devicefw/driverif.H>
#include <targeting/common/attributes.H>
#include <fsi/fsiif.H>
@@ -150,16 +149,6 @@ errlHndl_t procPresenceDetect(DeviceFW::OperationType i_opType,
}
}
- //@fixme-RTC:35551 : FSI presence detection is wrong in VPO
- // Force FSI to follow MVPD
- if( (fsi_present != mvpd_present) && TARGETING::is_vpo() )
- {
- TRACFCOMP(g_trac_fsi,
- ERR_MRK "FSI::procPresenceDetect> Lying about FSI presence for %.8X",
- TARGETING::get_huid(i_target));
- fsi_present = mvpd_present;
- }
-
// Finally compare the 2 methods
if( fsi_present != mvpd_present )
{
@@ -294,16 +283,6 @@ errlHndl_t membPresenceDetect(DeviceFW::OperationType i_opType,
}
}
- //@fixme-RTC:35551 : FSI presence detection is wrong in VPO
- // Force FSI to follow VPD
- if( (fsi_present != vpd_present) && TARGETING::is_vpo() )
- {
- TRACFCOMP(g_trac_fsi,
- ERR_MRK "FSI::membPresenceDetect> Lying about FSI presence for %.8X",
- TARGETING::get_huid(i_target));
- fsi_present = vpd_present;
- }
-
// Finally compare the 2 methods
if( fsi_present != vpd_present )
{
OpenPOWER on IntegriCloud