@@ -142,6 +142,12 @@ const card_config_t card_configs[] = {
142
142
{" Elqui" , 5 },
143
143
{" Caroni" , 5 },
144
144
{" Florin" , 6 },
145
+ {" Python" , 3 },
146
+ {" Adder" , 3 },
147
+ {" Henbury" ,3 },
148
+ {" Belknap" ,3 },
149
+ {" Carswell" ,3 },
150
+
145
151
{" Radeon" ,4 },
146
152
};
147
153
@@ -320,18 +326,18 @@ const radeon_card_info_t radeon_cards[] = {
320
326
{ 0x67CA , CHIP_FAMILY_ELLESMERE, " AMD Radeon Polaris 10" , kNull },
321
327
{ 0x67CC , CHIP_FAMILY_ELLESMERE, " AMD Radeon Polaris 10" , kNull },
322
328
{ 0x67CF , CHIP_FAMILY_ELLESMERE, " AMD Radeon Polaris 10" , kNull },
323
- { 0x67DF , CHIP_FAMILY_ELLESMERE, " AMD Radeon RX 480/570/580" , kBaladi },
329
+ { 0x67DF , CHIP_FAMILY_ELLESMERE, " AMD Radeon RX 480/570/580" , kOrinoco },
324
330
325
331
// Polaris 11
326
332
{ 0x67E0 , CHIP_FAMILY_BAFFIN, " AMD Radeon RX 460" , kAcre },
327
333
{ 0x67E1 , CHIP_FAMILY_BAFFIN, " AMD Radeon Polaris 11" , kNull },
328
- { 0x67E3 , CHIP_FAMILY_BAFFIN, " AMD Radeon Polaris 11 " , kNull },
334
+ { 0x67E3 , CHIP_FAMILY_BAFFIN, " AMD Radeon Pro WX4100 " , kNull },
329
335
{ 0x67E7 , CHIP_FAMILY_BAFFIN, " AMD Radeon Polaris 11" , kNull },
330
336
{ 0x67E8 , CHIP_FAMILY_BAFFIN, " AMD Radeon Polaris 11" , kNull },
331
337
{ 0x67E9 , CHIP_FAMILY_BAFFIN, " AMD Radeon Polaris 11" , kNull },
332
338
{ 0x67EB , CHIP_FAMILY_BAFFIN, " AMD Radeon Polaris 11" , kNull },
333
- { 0x67EF , CHIP_FAMILY_BAFFIN, " AMD Radeon Pro 555" , kAcre }, // fb=Caroni in 10.13.6
334
- { 0x67FF , CHIP_FAMILY_BAFFIN, " AMD Radeon RX 560" , kNull },
339
+ { 0x67EF , CHIP_FAMILY_BAFFIN, " AMD Radeon Pro 555" , kAcre }, // fb=Caroni in 10.13.6
340
+ { 0x67FF , CHIP_FAMILY_BAFFIN, " AMD Radeon RX 560" , kNull },
335
341
336
342
// PITCAIRN
337
343
{ 0x6800 , CHIP_FAMILY_PITCAIRN, " AMD Radeon HD 7970M" , kBuri }, // Mobile
@@ -504,6 +510,8 @@ const radeon_card_info_t radeon_cards[] = {
504
510
{ 0x7300 , CHIP_FAMILY_FIJI, " AMD Radeon R9 Fury" , kNull },
505
511
// Navi10
506
512
{ 0x731F , CHIP_FAMILY_NAVI10, " AMD Radeon RX5700" , kNull },
513
+ // Navi15
514
+ { 0x7340 , CHIP_FAMILY_NAVI10, " AMD Radeon RX5500" , kNull },
507
515
// Navi21
508
516
{ 0x73BF , CHIP_FAMILY_NAVI20, " AMD Radeon RX6800XT" , kNull },
509
517
/*
@@ -1287,7 +1295,7 @@ AtiDevProp ati_devprop_list[] = {
1287
1295
1288
1296
// {FLAGTRUE, false, "ATY,MCLK", get_mclk_val, NULVAL },
1289
1297
// {FLAGTRUE, false, "ATY,SCLK", get_sclk_val, NULVAL },
1290
- {FLAGTRUE, false , " ATY,RefCLK" , get_refclk_val, DWRVAL (0x0a8c ) },
1298
+ // {FLAGTRUE, false, "ATY,RefCLK", get_refclk_val, DWRVAL(0x0a8c) },
1291
1299
1292
1300
{FLAGTRUE, false , " ATY,PlatformInfo" , get_platforminfo_val, NULVAL },
1293
1301
{FLAGOLD, false , " compatible" , get_name_pci_val, NULVAL },
@@ -1312,7 +1320,7 @@ XBool get_bootdisplay_val(value_t *val, INTN index, XBool Sier)
1312
1320
v = 1 ;
1313
1321
val->type = kCst ;
1314
1322
val->size = 4 ;
1315
- val->data = (__typeof__ (val->data ))AllocatePool (4 );
1323
+ val->data = (__typeof__ (val->data ))AllocateZeroPool (4 );
1316
1324
*(val->data ) = (UINT8)v;
1317
1325
return true ;
1318
1326
}
@@ -1334,7 +1342,7 @@ XBool get_dual_link_val(value_t *val, INTN index, XBool Sier)
1334
1342
1335
1343
val->type = kCst ;
1336
1344
val->size = 4 ;
1337
- val->data = (__typeof__ (val->data ))AllocatePool (4 );
1345
+ val->data = (__typeof__ (val->data ))AllocateZeroPool (4 );
1338
1346
*(val->data ) = (UINT8)v;
1339
1347
return true ;
1340
1348
}
@@ -1415,6 +1423,8 @@ XBool get_name_pci_val(value_t *val, INTN index, XBool Sier)
1415
1423
return true ;
1416
1424
}
1417
1425
1426
+ const char AMDRadeon[] = " AMD Radeon %s" ;
1427
+
1418
1428
XBool get_model_val (value_t *val, INTN index, XBool Sier)
1419
1429
{
1420
1430
CHAR8 *ModelName = (__typeof__ (ModelName))AllocateZeroPool (35 );
@@ -1428,25 +1438,25 @@ XBool get_model_val(value_t *val, INTN index, XBool Sier)
1428
1438
} else {
1429
1439
switch (card->pci_dev ->revision ) {
1430
1440
case 0xC4 :
1431
- snprintf (ModelName, 35 , " AMD Radeon %s " , " Pro 550" );
1441
+ snprintf (ModelName, 35 , AMDRadeon , " Pro 550" );
1432
1442
break ;
1433
1443
case 0xC7 :
1434
- snprintf (ModelName, 35 , " AMD Radeon %s " , " RX 480" );
1444
+ snprintf (ModelName, 35 , AMDRadeon , " RX 480" );
1435
1445
break ;
1436
1446
case 0xC5 :
1437
1447
case 0xCF :
1438
1448
case 0xD7 :
1439
1449
case 0xE0 :
1440
- snprintf (ModelName, 35 , " AMD Radeon %s " , " RX 470" );
1450
+ snprintf (ModelName, 35 , AMDRadeon , " RX 470" );
1441
1451
break ;
1442
1452
case 0xC2 :
1443
1453
case 0xC6 :
1444
1454
case 0xEF :
1445
- snprintf (ModelName, 35 , " AMD Radeon %s " , " RX 570" );
1455
+ snprintf (ModelName, 35 , AMDRadeon , " RX 570" );
1446
1456
break ;
1447
1457
1448
1458
default :
1449
- snprintf (ModelName, 35 , " AMD Radeon %s " , " RX 580" );
1459
+ snprintf (ModelName, 35 , AMDRadeon , " RX 580" );
1450
1460
break ;
1451
1461
}
1452
1462
val->size = (UINT32)AsciiStrLen (ModelName);
@@ -1529,7 +1539,7 @@ XBool get_binimage_owr(value_t *val, INTN index, XBool Sier)
1529
1539
}
1530
1540
val->type = kCst ;
1531
1541
val->size = 4 ;
1532
- val->data = (__typeof__ (val->data ))AllocatePool (4 );
1542
+ val->data = (__typeof__ (val->data ))AllocateZeroPool (4 );
1533
1543
*(val->data ) = 1 ;
1534
1544
return true ;
1535
1545
}
@@ -1944,7 +1954,7 @@ XBool radeon_card_posted(void)
1944
1954
{
1945
1955
UINTN reg;
1946
1956
// ati_chip_family_t chip_family = card->info->chip_family;
1947
- #if 1
1957
+ #if 0
1948
1958
//dump radeon registers after BIOS POST
1949
1959
reg = (UINTN)REG32(card->mmio, RADEON_BIOS_0_SCRATCH);
1950
1960
// DBG("BIOS_0_SCRATCH=0x%08llX, ", reg);
@@ -2233,7 +2243,6 @@ XBool setup_ati_devprop(LOADER_ENTRY *Entry, pci_dt_t *ati_dev)
2233
2243
}
2234
2244
}
2235
2245
2236
-
2237
2246
DBG (" ATI %s %s %dMB (%s) [%04hX:%04hX] (subsys [%04hX:%04hX]):: %s\n " ,
2238
2247
chip_family_name[card->info ->chip_family ], card->info ->model_name ,
2239
2248
(UINT32)RShiftU64 (card->vram_size , 20 ), card->cfg_name ,
0 commit comments