mb/google/nissa/var/teliks: Force audio mute to avoid screen flick

Panel CSOT MNB601LS1-3 will flicker once during enter Chrome login
screen, it is because it inserts 12 blank frames if it receives the
unmute in VB-ID.

Always override the mute in VB-ID to avoid Tcon EC detected the
audiomute_flag change.

BUG=b:360243615
BRANCH=firmware-nissa-15217.B
TEST:Verfied on Teliks and cannot reproduce the issue

Change-Id: Iff488f6844c717ef24069c7176e7b8dfb07d8abc
Signed-off-by: Jianeng Ceng <cengjianeng@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84137
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Qinghong Zeng <zengqinghong@huaqin.corp-partner.google.com>
This commit is contained in:
cengjianeng 2024-08-30 10:25:04 +08:00 committed by Felix Held
commit f6bca6b649

View file

@ -5,6 +5,11 @@
#include <fw_config.h>
#include <sar.h>
#include <soc/gpio_soc_defs.h>
#include <intelblocks/graphics.h>
/* Per-pipe DDI Function Control 2 */
#define TRANS_DDI_FUNC_CTL2_A 0x60404
#define TRANS_DDI_AUDIO_MUTE_OVERRIDE_BITS_FIELDS (3 << 6)
const char *get_wifi_sar_cbfs_filename(void)
{
@ -36,3 +41,16 @@ void fw_config_gpio_padbased_override(struct pad_config *padbased_table)
ARRAY_SIZE(wifi_pcie_enable_pad));
}
}
void variant_finalize(void)
{
/*
* Panel CSOT MNB601LS1-3 will flicker once during enter Chrome login screen,
* it is because it inserts 12 blank frames if it receives the unmute in VB-ID.
*
* Always override the mute in VB-ID to avoid Tcon EC detected the
* audiomute_flag change.
*/
graphics_gtt_rmw(TRANS_DDI_FUNC_CTL2_A, ~TRANS_DDI_AUDIO_MUTE_OVERRIDE_BITS_FIELDS,
TRANS_DDI_AUDIO_MUTE_OVERRIDE_BITS_FIELDS);
}