fix boot pop

This commit is contained in:
Steven Dan
2026-05-27 16:57:28 +08:00
parent a06ad4ad19
commit 52692c5a95
2 changed files with 7 additions and 6 deletions

View File

@@ -802,8 +802,8 @@ static void tx1_sync_game_mode_state(unsigned mode, unsigned persist,
if (persist) {
/* 改动原因GAME 键/HID 切档前先拉低 p_ctl_mute避免 EX3D/固件切换 pop */
tx1_amp_ctl_mute_force(led_if, TX1_AMP_CTL_MUTE_VAL);
delay_milliseconds(50);
//tx1_amp_ctl_mute_force(led_if, TX1_AMP_CTL_MUTE_VAL);
//delay_milliseconds(50);
}
switch (mode) {
@@ -825,8 +825,8 @@ static void tx1_sync_game_mode_state(unsigned mode, unsigned persist,
if (persist) {
tx1_save_game_mode((unsigned char)mode);
/* 改动原因:按键只切算法不 reboot短暂静音减轻 EX3D 切换 pop */
delay_milliseconds(30);
tx1_amp_ctl_mute_force(led_if, TX1_AMP_CTL_UNMUTE_VAL);
//delay_milliseconds(30);
// tx1_amp_ctl_mute_force(led_if, TX1_AMP_CTL_UNMUTE_VAL);
}
}
@@ -1148,7 +1148,7 @@ void AudioHwRemote2(streaming chanend c, chanend cc_mic_level, client interface
/* 改动原因codec + HTR3236 + 开机流程结束后拉高 p_ctl_mute 放音 */
if (htr3236_bringup_done && !tx1_amp_unmuted_after_boot) {
delay_milliseconds(20);
delay_milliseconds(500);
tx1_amp_ctl_mute_force(led_if, TX1_AMP_CTL_UNMUTE_VAL);
tx1_amp_unmuted_after_boot = 1;
debug_printf("TX1: AMP ctl_mute unmute after boot config\n");

View File

@@ -23,6 +23,7 @@ on tile[1]: out port p_ctl_mute = PORT_CTL_MUTE;
// Receives commands via tx1_led_if interface from AudioHwRemote2 on tile[0]
void tx1_led_helper_task(server interface tx1_led_if led_if)
{
p_ctl_mute <: TX1_AMP_GPIO_MUTE; /* 改动原因:上电先拉低静音,等 tile0 codec/RGB 配置完再拉高 */
// Local state mirrors for tile[1] ports
unsigned d1_state = 1; // active low: 1=off, 0=on
unsigned mic_det_state = 0;
@@ -41,7 +42,7 @@ void tx1_led_helper_task(server interface tx1_led_if led_if)
p_led_d4_d7_d6 <: 0xF;
/* 改动原因:上电即拉高 SDB与 jok tile1_io_control_task 一致;勿长期拉低否则 I2C 配置无效 */
p_htr3236_sdb <: 1;
p_ctl_mute <: TX1_AMP_GPIO_MUTE; /* 改动原因:上电先拉低静音,等 tile0 codec/RGB 配置完再拉高 */
delay_milliseconds(300);
while (1)
{