Merge pull request #274 from Lynn-Becky/feat/PCB-SWTG024AS-V2.0

fix(machine): move SWTG024AS-specific SDS0 setup to machine.c
This commit is contained in:
feelfree69
2026-06-28 21:32:53 +02:00
committed by GitHub
2 changed files with 11 additions and 10 deletions
+11
View File
@@ -941,10 +941,21 @@ __code const struct machine machine = {
void machine_custom_init(void) void machine_custom_init(void)
{ {
uint16_t pval;
reg_bit_set(RTL837X_REG_LED_GLB_IO_EN, 6); reg_bit_set(RTL837X_REG_LED_GLB_IO_EN, 6);
reg_bit_set(RTL837X_REG_LED_MODE, 17); reg_bit_set(RTL837X_REG_LED_MODE, 17);
reg_bit_clear(RTL837X_REG_LED_MODE, 9); reg_bit_clear(RTL837X_REG_LED_MODE, 9);
reg_bit_clear(RTL837X_REG_LED_MODE, 7); reg_bit_clear(RTL837X_REG_LED_MODE, 7);
// OEM firmware sets these companion SDS0 polarity bits for the RTL8221B.
sds_read(0, 0, 0);
pval = SFR_DATA_U16;
sds_write_v(0, 0, 0, pval | 0x100);
sds_read(0, 6, 2);
pval = SFR_DATA_U16;
sds_write_v(0, 6, 2, pval | 0x4000);
} }
#elif defined MACHINE_ZX310S_4T2XT #elif defined MACHINE_ZX310S_4T2XT
-10
View File
@@ -76,16 +76,6 @@ void static sds_init(void)
sds_read(0, 0, 0); sds_read(0, 0, 0);
pval = SFR_DATA_U16; pval = SFR_DATA_U16;
sds_write_v(0, 0, 0, pval | 0x200); sds_write_v(0, 0, 0, pval | 0x200);
#if defined MACHINE_SWTG024AS_V2_0
// OEM firmware also sets the companion SDS0 polarity bits.
sds_read(0, 0, 0);
pval = SFR_DATA_U16;
sds_write_v(0, 0, 0, pval | 0x100);
sds_read(0, 6, 2);
pval = SFR_DATA_U16;
sds_write_v(0, 6, 2, pval | 0x4000);
#endif
} }
} else if (machine.n_10g == 1) { } else if (machine.n_10g == 1) {
reg_read_m(RTL837X_CFG_PHY_MDI_REVERSE); reg_read_m(RTL837X_CFG_PHY_MDI_REVERSE);