Skip to content

Commit 0ddf8eb

Browse files
authored
Merge pull request #5354 from pratiklp00/p11
Add Support for POWER11
2 parents d2ea9bb + 1dde4a1 commit 0ddf8eb

File tree

4 files changed

+16
-1
lines changed

4 files changed

+16
-1
lines changed

TargetList.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ POWER7
5252
POWER8
5353
POWER9
5454
POWER10
55+
POWER11
5556
PPCG4
5657
PPC970
5758
PPC970MP

cpuid_power.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ int detect(void){
131131
if (!strncasecmp(p, "POWER8", 6)) return CPUTYPE_POWER8;
132132
if (!strncasecmp(p, "POWER9", 6)) return CPUTYPE_POWER9;
133133
if (!strncasecmp(p, "POWER10", 7)) return CPUTYPE_POWER10;
134+
if (!strncasecmp(p, "POWER11", 7)) return CPUTYPE_POWER10;
134135
if (!strncasecmp(p, "Cell", 4)) return CPUTYPE_CELL;
135136
if (!strncasecmp(p, "7447", 4)) return CPUTYPE_PPCG4;
136137

@@ -171,6 +172,9 @@ int detect(void){
171172
int id;
172173
__asm __volatile("mfpvr %0" : "=r"(id));
173174
switch ( id >> 16 ) {
175+
case 0x82: // POWER11
176+
return CPUTYPE_POWER10;
177+
break;
174178
case 0x80: // POWER10
175179
return CPUTYPE_POWER10;
176180
break;

driver/others/dynamic_power.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,9 @@ static int cpuid(void)
7070
#endif
7171
#ifdef POWER_10
7272
else if (arch >= POWER_10) return CPU_POWER10;
73+
#endif
74+
#ifdef POWER_11
75+
else if (arch >= POWER_11) return CPU_POWER10;
7376
#endif
7477
return CPU_UNKNOWN;
7578
}
@@ -173,6 +176,13 @@ static struct {
173176
.cpu_type = CPU_POWER10,
174177
},
175178

179+
{ /* Power11 */
180+
.pvr_mask = 0xffff0000,
181+
.pvr_value = 0x00820000,
182+
.cpu_name = "POWER11 (raw)",
183+
.cpu_type = CPU_POWER10,
184+
},
185+
176186
{ /* End of table, pvr_mask and pvr_value must be zero */
177187
.pvr_mask = 0x0,
178188
.pvr_value = 0x0,

getarch.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -836,7 +836,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
836836
#define CORENAME "POWER9"
837837
#endif
838838

839-
#if defined(FORCE_POWER10)
839+
#if defined(FORCE_POWER10) || (FORCE_POWER11)
840840
#define FORCE
841841
#define ARCHITECTURE "POWER"
842842
#define SUBARCHITECTURE "POWER10"

0 commit comments

Comments
 (0)