diff options
Diffstat (limited to 'src/kernel')
-rw-r--r-- | src/kernel/basesegment.C | 6 | ||||
-rw-r--r-- | src/kernel/cpuid.C | 10 | ||||
-rw-r--r-- | src/kernel/cpumgr.C | 7 | ||||
-rw-r--r-- | src/kernel/exception.C | 2 | ||||
-rw-r--r-- | src/kernel/misc.C | 8 |
5 files changed, 29 insertions, 4 deletions
diff --git a/src/kernel/basesegment.C b/src/kernel/basesegment.C index bde57a0e4..ea5846a46 100644 --- a/src/kernel/basesegment.C +++ b/src/kernel/basesegment.C @@ -5,7 +5,9 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* COPYRIGHT International Business Machines Corp. 2011,2014 */ +/* Contributors Listed Below - COPYRIGHT 2011,2015 */ +/* [+] International Business Machines Corp. */ +/* */ /* */ /* Licensed under the Apache License, Version 2.0 (the "License"); */ /* you may not use this file except in compliance with the License. */ @@ -55,6 +57,8 @@ void BaseSegment::_init() case CORE_POWER8_MURANO: case CORE_POWER8_VENICE: case CORE_POWER8_NAPLES: + case CORE_POWER9_NIMBUS: + case CORE_POWER9_CUMULUS: default: iv_physMemSize = VMM_BASE_BLOCK_SIZE; break; diff --git a/src/kernel/cpuid.C b/src/kernel/cpuid.C index 638942438..576c74043 100644 --- a/src/kernel/cpuid.C +++ b/src/kernel/cpuid.C @@ -5,7 +5,9 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* COPYRIGHT International Business Machines Corp. 2011,2014 */ +/* Contributors Listed Below - COPYRIGHT 2011,2015 */ +/* [+] International Business Machines Corp. */ +/* */ /* */ /* Licensed under the Apache License, Version 2.0 (the "License"); */ /* you may not use this file except in compliance with the License. */ @@ -51,6 +53,12 @@ namespace CpuID case 0x004D0000: return CORE_POWER8_VENICE; + case 0x004E0000: + return CORE_POWER9_NIMBUS; + + case 0x004F0000: + return CORE_POWER9_CUMULUS; + default: return CORE_UNKNOWN; } diff --git a/src/kernel/cpumgr.C b/src/kernel/cpumgr.C index 44f61a173..1aef65650 100644 --- a/src/kernel/cpumgr.C +++ b/src/kernel/cpumgr.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2010,2014 */ +/* Contributors Listed Below - COPYRIGHT 2010,2015 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -450,6 +450,11 @@ size_t CpuManager::getThreadCount() threads = 8; break; + case CORE_POWER9_NIMBUS: + case CORE_POWER9_CUMULUS: + threads = 4; + break; + case CORE_UNKNOWN: default: kassert(false); diff --git a/src/kernel/exception.C b/src/kernel/exception.C index 1ac76c09a..5c16d46cd 100644 --- a/src/kernel/exception.C +++ b/src/kernel/exception.C @@ -282,6 +282,8 @@ void kernel_execute_softpatch() case CORE_POWER8_MURANO: case CORE_POWER8_VENICE: case CORE_POWER8_NAPLES: + case CORE_POWER9_NIMBUS: + case CORE_POWER9_CUMULUS: case CORE_UNKNOWN: p8_softpatch_denorm_assist(t->fp_context); break; diff --git a/src/kernel/misc.C b/src/kernel/misc.C index 69e235ba0..a4b438ceb 100644 --- a/src/kernel/misc.C +++ b/src/kernel/misc.C @@ -442,6 +442,8 @@ namespace KernelMisc case CORE_POWER8_MURANO: case CORE_POWER8_VENICE: case CORE_POWER8_NAPLES: + case CORE_POWER9_NIMBUS: + case CORE_POWER9_CUMULUS: cache_columns = 4; break; @@ -486,10 +488,12 @@ namespace KernelMisc case CORE_POWER8_MURANO: case CORE_POWER8_VENICE: case CORE_POWER8_NAPLES: + case CORE_POWER9_NIMBUS: + case CORE_POWER9_CUMULUS: startAddr = reinterpret_cast<uint64_t*> ( VmmManager::INITIAL_MEM_SIZE ) ; endAddr = - reinterpret_cast<uint64_t*>(8 * MEGABYTE); + reinterpret_cast<uint64_t*>(VMM_BASE_BLOCK_SIZE); break; default: @@ -542,6 +546,8 @@ namespace KernelMisc case CORE_POWER8_MURANO: case CORE_POWER8_VENICE: case CORE_POWER8_NAPLES: + case CORE_POWER9_NIMBUS: + case CORE_POWER9_CUMULUS: case CORE_UNKNOWN: l_scratch_addr = l_scratch_addr + 0x40; break; |