Skip to content

Commit 2e040a6

Browse files
Mario Hrosmarcan
authored andcommitted
chickens: Add T6021 chickens
Signed-off-by: Mario Hros <[email protected]>
1 parent d033044 commit 2e040a6

4 files changed

Lines changed: 43 additions & 7 deletions

File tree

src/chickens.c

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818
#define MIDR_PART_T8110_AVALANCHE 0x31
1919
#define MIDR_PART_T8112_BLIZZARD 0x32
2020
#define MIDR_PART_T8112_AVALANCHE 0x33
21+
#define MIDR_PART_T6021_BLIZZARD 0x38
22+
#define MIDR_PART_T6021_AVALANCHE 0x39
2123

2224
#define MIDR_REV_LOW GENMASK(3, 0)
2325
#define MIDR_PART GENMASK(15, 4)
@@ -27,9 +29,10 @@ void init_m1_icestorm(void);
2729
void init_t8103_firestorm(int rev);
2830
void init_t6000_firestorm(int rev);
2931
void init_t6001_firestorm(int rev);
30-
31-
void init_m2_blizzard(void);
32+
void init_t8112_blizzard(void);
3233
void init_t8112_avalanche(int rev);
34+
void init_t6021_blizzard(void);
35+
void init_t6021_avalanche(int rev);
3336

3437
const char *init_cpu(void)
3538
{
@@ -87,7 +90,17 @@ const char *init_cpu(void)
8790

8891
case MIDR_PART_T8112_BLIZZARD:
8992
cpu = "M2 Blizzard";
90-
init_m2_blizzard();
93+
init_t8112_blizzard();
94+
break;
95+
96+
case MIDR_PART_T6021_AVALANCHE:
97+
cpu = "M2 Max Avalanche";
98+
init_t6021_avalanche(rev);
99+
break;
100+
101+
case MIDR_PART_T6021_BLIZZARD:
102+
cpu = "M2 Max Blizzard";
103+
init_t6021_blizzard();
91104
break;
92105

93106
default:

src/chickens_avalanche.c

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,10 @@ static void init_common_avalanche(void)
3232
reg_mask(SYS_IMP_APL_HID27, HID27_GROUP3_OFFSET_MASK, HID27_GROUP3_OFFSET(31));
3333
}
3434

35-
static void init_m2_avalanche(void)
35+
void init_t8112_avalanche(int rev)
3636
{
37+
UNUSED(rev);
38+
3739
init_common_avalanche();
3840

3941
reg_mask(SYS_IMP_APL_HID3, HID3_DEV_PCIE_THROTTLE_LIMIT_MASK, HID3_DEV_PCIE_THROTTLE_LIMIT(60));
@@ -42,9 +44,16 @@ static void init_m2_avalanche(void)
4244
reg_set(SYS_IMP_APL_HID16, HID16_AVL_UNK12);
4345
}
4446

45-
void init_t8112_avalanche(int rev)
47+
void init_t6021_avalanche(int rev)
4648
{
4749
UNUSED(rev);
4850

49-
init_m2_avalanche();
51+
init_common_avalanche();
52+
53+
reg_mask(SYS_IMP_APL_HID3, HID3_DEV_PCIE_THROTTLE_LIMIT_MASK, HID3_DEV_PCIE_THROTTLE_LIMIT(62));
54+
reg_set(SYS_IMP_APL_HID3, HID3_DEV_PCIE_THROTTLE_ENABLE);
55+
reg_set(SYS_IMP_APL_HID18, HID18_AVL_UNK27 | HID18_AVL_UNK29);
56+
reg_set(SYS_IMP_APL_HID16, HID16_AVL_UNK12);
57+
58+
reg_mask(SYS_IMP_APL_HID5, HID5_BLZ_UNK_19_18_MASK, HID5_BLZ_UNK19);
5059
}

src/chickens_blizzard.c

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,22 @@ static void init_common_blizzard(void)
88
reg_set(SYS_IMP_APL_EHID0, EHID0_BLI_UNK32);
99
}
1010

11-
void init_m2_blizzard(void)
11+
void init_t8112_blizzard(void)
1212
{
1313
init_common_blizzard();
1414

1515
reg_mask(SYS_IMP_APL_EHID9, EHID9_DEV_2_THROTTLE_LIMIT_MASK, EHID9_DEV_2_THROTTLE_LIMIT(60));
1616
reg_set(SYS_IMP_APL_EHID9, EHID9_DEV_2_THROTTLE_ENABLE);
1717
reg_set(SYS_IMP_APL_EHID18, EHID18_BLZ_UNK34);
1818
}
19+
20+
void init_t6021_blizzard(void)
21+
{
22+
init_common_blizzard();
23+
24+
reg_mask(SYS_IMP_APL_EHID9, EHID9_DEV_2_THROTTLE_LIMIT_MASK, EHID9_DEV_2_THROTTLE_LIMIT(62));
25+
reg_set(SYS_IMP_APL_EHID9, EHID9_DEV_2_THROTTLE_ENABLE);
26+
reg_set(SYS_IMP_APL_EHID18, EHID18_BLZ_UNK34);
27+
28+
reg_mask(SYS_IMP_APL_HID5, HID5_BLZ_UNK_19_18_MASK, HID5_BLZ_UNK19);
29+
}

src/cpu_regs.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@
5353
#define HID4_ENABLE_LFSR_STALL_STQ_REPLAY BIT(53)
5454

5555
#define SYS_IMP_APL_HID5 sys_reg(3, 0, 15, 5, 0)
56+
#define HID5_BLZ_UNK_19_18_MASK GENMASK(19, 18)
57+
#define HID5_BLZ_UNK18 BIT(18)
58+
#define HID5_BLZ_UNK19 BIT(19)
5659
#define HID5_DISABLE_FILL_2C_MERGE BIT(61)
5760

5861
#define SYS_IMP_APL_HID6 sys_reg(3, 0, 15, 6, 0)

0 commit comments

Comments
 (0)