diff options
author | Brad Bishop <bradleyb@us.ibm.com> | 2013-01-22 15:42:58 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-02-13 16:53:32 -0600 |
commit | 5f5ecb46d1838847dedd33791d4da86d3df39638 (patch) | |
tree | fd8976c312278d45cbdb6c6d47ce4712c9b04a70 /src/usr/diag/attn | |
parent | 0ce339b741e724400f6c36790d9d878068fe5fc7 (diff) | |
download | talos-hostboot-5f5ecb46d1838847dedd33791d4da86d3df39638.tar.gz talos-hostboot-5f5ecb46d1838847dedd33791d4da86d3df39638.zip |
ATTN: Revert most of 3147572991fa9eff4be6095b08b0299421e596b5
It was correct in the first place.
Change-Id: I72a9ae0eaeae41825e1a4bea4cc93e599ea3f037
RTC: 59222
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/2981
Tested-by: Jenkins Server
Reviewed-by: Zane Shelley <zshelle@us.ibm.com>
Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/diag/attn')
-rw-r--r-- | src/usr/diag/attn/attn.C | 4 | ||||
-rw-r--r-- | src/usr/diag/attn/attnmem.C | 6 | ||||
-rw-r--r-- | src/usr/diag/attn/attnproc.C | 6 | ||||
-rw-r--r-- | src/usr/diag/attn/attnsvc.C | 8 | ||||
-rw-r--r-- | src/usr/diag/attn/test/attnfakeipoll.C | 51 | ||||
-rw-r--r-- | src/usr/diag/attn/test/attntestmem.H | 57 | ||||
-rw-r--r-- | src/usr/diag/attn/test/attntestproc.H | 63 | ||||
-rw-r--r-- | src/usr/diag/attn/test/attnvalidate.C | 51 |
8 files changed, 121 insertions, 125 deletions
diff --git a/src/usr/diag/attn/attn.C b/src/usr/diag/attn/attn.C index ce0d52dee..eb59e1b52 100644 --- a/src/usr/diag/attn/attn.C +++ b/src/usr/diag/attn/attn.C @@ -98,7 +98,7 @@ errlHndl_t checkForIplAttentions() // query the proc resolver for active attentions - err = procOps.resolve(*tit, ~0, attentions); + err = procOps.resolve(*tit, 0, attentions); if(err) { @@ -107,7 +107,7 @@ errlHndl_t checkForIplAttentions() // query the mem resolver for active attentions - err = memOps.resolve(*tit, ~0, attentions); + err = memOps.resolve(*tit, 0, attentions); if(err) { diff --git a/src/usr/diag/attn/attnmem.C b/src/usr/diag/attn/attnmem.C index 2e26c0712..3ac1b7d60 100644 --- a/src/usr/diag/attn/attnmem.C +++ b/src/usr/diag/attn/attnmem.C @@ -63,7 +63,7 @@ errlHndl_t MemOps::mask(const AttnData & i_data) IPOLL::getCheckbits(HOST, ipollMaskWriteBits); err = modifyScom(proc, IPOLL::address, - ~ipollMaskWriteBits, SCOM_AND); + ipollMaskWriteBits, SCOM_OR); if(err) { @@ -105,7 +105,7 @@ errlHndl_t MemOps::unmask(const AttnData & i_data) IPOLL::getCheckbits(HOST, ipollMaskWriteBits); err = modifyScom(proc, IPOLL::address, - ipollMaskWriteBits, SCOM_OR); + ~ipollMaskWriteBits, SCOM_AND); if(err) { @@ -230,7 +230,7 @@ errlHndl_t MemOps::resolve( do { - if(hostMask & ~i_typeMask) + if(hostMask & i_typeMask) { // host attentions are masked.... diff --git a/src/usr/diag/attn/attnproc.C b/src/usr/diag/attn/attnproc.C index 681326e28..fca10e312 100644 --- a/src/usr/diag/attn/attnproc.C +++ b/src/usr/diag/attn/attnproc.C @@ -48,7 +48,7 @@ errlHndl_t ProcOps::mask(const AttnData & i_data) IPOLL::getCheckbits(i_data.attnType, ipollMaskWriteBits); err = modifyScom(i_data.targetHndl, IPOLL::address, - ~ipollMaskWriteBits, SCOM_AND); + ipollMaskWriteBits, SCOM_OR); return err; } @@ -62,7 +62,7 @@ errlHndl_t ProcOps::unmask(const AttnData & i_data) IPOLL::getCheckbits(i_data.attnType, ipollMaskWriteBits); err = modifyScom(i_data.targetHndl, IPOLL::address, - ipollMaskWriteBits, SCOM_OR); + ~ipollMaskWriteBits, SCOM_AND); return err; } @@ -127,7 +127,7 @@ errlHndl_t ProcOps::resolve( IPOLL::getCheckbits(type, mask); - if(mask & ~i_typeMask) + if(!(mask & ~i_typeMask)) { // this attention type is masked diff --git a/src/usr/diag/attn/attnsvc.C b/src/usr/diag/attn/attnsvc.C index 8ee253a5f..4fa19e846 100644 --- a/src/usr/diag/attn/attnsvc.C +++ b/src/usr/diag/attn/attnsvc.C @@ -143,10 +143,10 @@ errlHndl_t Service::configureInterrupts( IPOLL::forEach(~0, &mask, &getMask); err = modifyScom( - *it, - IPOLL::address, - i_mode == UP ? mask : ~mask, - i_mode == UP ? SCOM_OR : SCOM_AND); + *it, + IPOLL::address, + i_mode == UP ? ~mask : mask, + i_mode == UP ? SCOM_AND : SCOM_OR); if(err) { diff --git a/src/usr/diag/attn/test/attnfakeipoll.C b/src/usr/diag/attn/test/attnfakeipoll.C index a84747c05..4c63db25e 100644 --- a/src/usr/diag/attn/test/attnfakeipoll.C +++ b/src/usr/diag/attn/test/attnfakeipoll.C @@ -1,26 +1,25 @@ -/* IBM_PROLOG_BEGIN_TAG - * This is an automatically generated prolog. - * - * $Source: src/usr/diag/attn/test/attnfakeipoll.C $ - * - * IBM CONFIDENTIAL - * - * COPYRIGHT International Business Machines Corp. 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/diag/attn/test/attnfakeipoll.C $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* COPYRIGHT International Business Machines Corp. 2012,2013 */ +/* */ +/* 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 attnfakeipoll.C * @@ -65,11 +64,11 @@ errlHndl_t FakeIpoll::processPutReg( ? i_new : i_sys.getReg(i_target, iv_address); - bool masked = (~ipollContent & iv_ipollbits); + bool masked = (ipollContent & iv_ipollbits); bool hi = (content & iv_gfirbits); bool unmasked = i_address == IPOLL::address - ? ipollContent & ~i_old & iv_ipollbits + ? ~ipollContent & i_old & iv_ipollbits : false; bool set = i_address == IPOLL::address @@ -96,7 +95,7 @@ void FakeIpoll::processEoi( uint64_t ipollContent = i_sys.getReg(i_source, IPOLL::address); uint64_t content = i_sys.getReg(i_source, iv_address); - bool masked = ~ipollContent & iv_ipollbits; + bool masked = ipollContent & iv_ipollbits; bool high = content & iv_gfirbits; if(high && !masked) diff --git a/src/usr/diag/attn/test/attntestmem.H b/src/usr/diag/attn/test/attntestmem.H index 48e10a558..2d804d48b 100644 --- a/src/usr/diag/attn/test/attntestmem.H +++ b/src/usr/diag/attn/test/attntestmem.H @@ -1,26 +1,25 @@ -/* IBM_PROLOG_BEGIN_TAG - * This is an automatically generated prolog. - * - * $Source: src/usr/diag/attn/test/attntestmem.H $ - * - * IBM CONFIDENTIAL - * - * COPYRIGHT International Business Machines Corp. 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/diag/attn/test/attntestmem.H $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* COPYRIGHT International Business Machines Corp. 2012,2013 */ +/* */ +/* 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 */ #ifndef __TEST_ATTNTESTMEM_H #define __TEST_ATTNTESTMEM_H @@ -101,7 +100,7 @@ class AttnMemTest: public CxxTest::TestSuite break; } - randomData = randomData | maskbits; + randomData = randomData & ~maskbits; err = putScom( proc, @@ -132,13 +131,13 @@ class AttnMemTest: public CxxTest::TestSuite // verify that the attn was masked, and that // other bits weren't touched - if(!(~data & maskbits)) + if(!(data & maskbits)) { TS_FAIL("attention not masked"); break; } - if((data | maskbits) != randomData) + if((data & ~maskbits) != randomData) { TS_FAIL("unexpected data in mask register"); break; @@ -212,7 +211,7 @@ class AttnMemTest: public CxxTest::TestSuite break; } - randomData = randomData & ~maskbits; + randomData = randomData | maskbits; err = putScom(proc, IPOLL::address, randomData); if(err) @@ -240,13 +239,13 @@ class AttnMemTest: public CxxTest::TestSuite // verify that the attn was masked, and that // other bits weren't touched - if(!(data & maskbits)) + if(!(~data & maskbits)) { TS_FAIL("attention not unmasked"); break; } - if((data & ~maskbits) != randomData) + if((data | maskbits) != randomData) { TS_FAIL("unexpected data in mask register"); break; diff --git a/src/usr/diag/attn/test/attntestproc.H b/src/usr/diag/attn/test/attntestproc.H index 218f97036..6ac062ff9 100644 --- a/src/usr/diag/attn/test/attntestproc.H +++ b/src/usr/diag/attn/test/attntestproc.H @@ -1,26 +1,25 @@ -/* IBM_PROLOG_BEGIN_TAG - * This is an automatically generated prolog. - * - * $Source: src/usr/diag/attn/test/attntestproc.H $ - * - * IBM CONFIDENTIAL - * - * COPYRIGHT International Business Machines Corp. 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/diag/attn/test/attntestproc.H $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* COPYRIGHT International Business Machines Corp. 2012,2013 */ +/* */ +/* 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 */ #ifndef __TEST_ATTNTESTPROC_H #define __TEST_ATTNTESTPROC_H @@ -96,7 +95,7 @@ class AttnProcTest: public CxxTest::TestSuite break; } - randomData = randomData | maskbits; + randomData = randomData & ~maskbits; err = putScom( d.targetHndl, @@ -127,13 +126,13 @@ class AttnProcTest: public CxxTest::TestSuite // verify that the attn was masked, and that // other bits weren't touched - if(!(~data & maskbits)) + if(!(data & maskbits)) { - TS_FAIL("attention unmasked"); + TS_FAIL("attention not masked"); break; } - if((data | maskbits) != randomData) + if((data & ~maskbits) != randomData) { TS_FAIL("unexpected data in mask register"); break; @@ -204,7 +203,7 @@ class AttnProcTest: public CxxTest::TestSuite break; } - randomData = randomData & ~maskbits; + randomData = randomData | maskbits; err = putScom(d.targetHndl, IPOLL::address, randomData); if(err) @@ -217,7 +216,7 @@ class AttnProcTest: public CxxTest::TestSuite if(err) { - TS_FAIL("unexpected error unmasking attention"); + TS_FAIL("unexpected error masking attention"); break; } @@ -232,13 +231,13 @@ class AttnProcTest: public CxxTest::TestSuite // verify that the attn was unmasked, and that // other bits weren't touched - if(!(data & maskbits)) + if(!(~data & maskbits)) { - TS_FAIL("attention masked"); + TS_FAIL("attention not unmasked"); break; } - if((data & ~maskbits) != randomData) + if((data | maskbits) != randomData) { TS_FAIL("unexpected data in mask register"); break; diff --git a/src/usr/diag/attn/test/attnvalidate.C b/src/usr/diag/attn/test/attnvalidate.C index 1897f2f6c..6d37a426c 100644 --- a/src/usr/diag/attn/test/attnvalidate.C +++ b/src/usr/diag/attn/test/attnvalidate.C @@ -1,26 +1,25 @@ -/* IBM_PROLOG_BEGIN_TAG - * This is an automatically generated prolog. - * - * $Source: src/usr/diag/attn/test/attnvalidate.C $ - * - * IBM CONFIDENTIAL - * - * COPYRIGHT International Business Machines Corp. 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/diag/attn/test/attnvalidate.C $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* COPYRIGHT International Business Machines Corp. 2012,2013 */ +/* */ +/* 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 attnvalidate.C * @@ -68,7 +67,7 @@ errlHndl_t Validator::processPutAttention( target = getTargetService().getProc(i_attention.targetHndl); } - bool masked = ~i_sys.getReg(target, IPOLL::address) & ipollCheckbits; + bool masked = i_sys.getReg(target, IPOLL::address) & ipollCheckbits; if(!masked) { @@ -217,7 +216,7 @@ errlHndl_t Validator::processPutReg( // these bits turned off - IPOLL::forEach(i_new & ~i_old, &args, &appendOuterLoop); + IPOLL::forEach(i_old & ~i_new, &args, &appendOuterLoop); AttnList::iterator it = args.list.begin(); @@ -231,7 +230,7 @@ errlHndl_t Validator::processPutReg( // these bits turned on - IPOLL::forEach(i_old & ~i_new, &args, &appendOuterLoop); + IPOLL::forEach(i_new & ~i_old, &args, &appendOuterLoop); it = args.list.begin(); |