Linux Sound subsystem development
 help / color / mirror / Atom feed
From: Jack Yu <jack.yu@realtek.com>
To: Syed Saba Kareem <syed.sabakareem@amd.com>,
	"Mukunda,Vijendar" <vijendar.mukunda@amd.com>,
	Cristian Timohi <cristiantimohi@gmail.com>,
	"Flove(HsinFu)" <flove@realtek.com>
Cc: "venkataprasad.potturu@amd.com" <venkataprasad.potturu@amd.com>,
	"linux-sound@vger.kernel.org" <linux-sound@vger.kernel.org>,
	"Oder Chiou" <oder_chiou@realtek.com>,
	"vkoul@kernel.org" <vkoul@kernel.org>,
	"yung-chuan.liao@linux.intel.com"
	<yung-chuan.liao@linux.intel.com>,
	"pierre-louis.bossart@linux.dev" <pierre-louis.bossart@linux.dev>,
	"broonie@kernel.org" <broonie@kernel.org>,
	"lgirdwood@gmail.com" <lgirdwood@gmail.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Dommati, Sunil-kumar" <Sunil-kumar.Dommati@amd.com>,
	Fish690103 <fish690103@realtek.com>,
	"Mike Lin (林曉能)" <mikelin@realtek.com>
Subject: RE: [BUG] ASoC/AMD ACP70/RT721: ASUS TUF Gaming A14 FA401EA speakers silent and headphone jack buzzes on playback
Date: Fri, 4 Sep 2026 06:00:56 +0000	[thread overview]
Message-ID: <30fed968a6f54a6c81eca4ee23ea4166@realtek.com> (raw)
In-Reply-To: <bc542e80-e572-452b-81ba-53e57ed3126e@amd.com>

[-- Attachment #1: Type: text/plain, Size: 9237 bytes --]

Loop more 

Hi Mukunda,

Regarding to speakers silent issue, a patch has been merged as below

[1/1] ASoC: rt721-sdca: Adjust latency control to fix no-sound issue
      https://git.kernel.org/broonie/sound/c/a20afec40ea1

and for headphone buzzes issue on playback, could you merge the attached patch and check if buzzes issue can be fixed?

Regards,
Jack

> -----Original Message-----
> From: Syed Saba Kareem <syed.sabakareem@amd.com>
> Sent: Thursday, September 3, 2026 4:41 PM
> To: Mukunda,Vijendar <vijendar.mukunda@amd.com>; Cristian Timohi
> <cristiantimohi@gmail.com>; Jack Yu <jack.yu@realtek.com>; Flove(HsinFu)
> <flove@realtek.com>
> Cc: venkataprasad.potturu@amd.com; linux-sound@vger.kernel.org; Oder
> Chiou <oder_chiou@realtek.com>; vkoul@kernel.org;
> yung-chuan.liao@linux.intel.com; pierre-louis.bossart@linux.dev;
> broonie@kernel.org; lgirdwood@gmail.com; linux-kernel@vger.kernel.org;
> Dommati, Sunil-kumar <Sunil-kumar.Dommati@amd.com>
> Subject: Re: [BUG] ASoC/AMD ACP70/RT721: ASUS TUF Gaming A14 FA401EA
> speakers silent and headphone jack buzzes on playback
> 
> 
> External mail : This email originated from outside the organization. Do not
> reply, click links, or open attachments unless you recognize the sender and
> know the content is safe.
> 
> 
> 
> On 9/3/26 11:11, Mukunda,Vijendar wrote:
> >
> >
> > On 9/2/26 22:13, Cristian Timohi wrote:
> >> [You don't often get email from cristiantimohi@gmail.com. Learn why
> >> this is important at https://aka.ms/LearnAboutSenderIdentification ]
> >>
> >> ****
> >> Resending as plain text, as the previous message was rejected by the
> >> vger.kernel.org mailing list due to an HTML MIME part.
> >> Apologies to recipients who received the previous copy directly.
> >> ***
> >>
> >> Hello,
> >>
> >> I'm reporting an audio issue on an ASUS TUF Gaming A14 FA401EA (Ryzen
> >> AI MAX+ 392) using AMD ACP70 SoundWire and a Realtek RT721 SDCA
> >> codec.
> >>
> >> I have reproduced the issue on a clean current vanilla 7.3-rc1
> >> kernel, so this does not appear to be Fedora-, PipeWire-, or
> >> desktop-specific.
> >>
> >> Current clean test environment
> >> ==============================
> >>
> >> Distribution:
> >>      Fedora 45
> >>
> >> Kernel:
> >>      7.3.0-0.rc1.260901.786262be.417.vanilla.fc45.x86_64
> >>
> >> snd_acp_sdw_legacy_mach quirk:
> >>      -1
> >>
> >> There are no remaining custom snd_acp_sdw_legacy_mach/modprobe
> >> overrides in the current reproduction environment.
> >>
> >> Hardware
> >> ========
> >>
> >> Laptop:
> >>      ASUS TUF Gaming A14 FA401EA
> >>
> >> DMI product:
> >>      TUF Gaming A14 FA401EA
> >>
> >> DMI board:
> >>      FA401EA
> >>
> >> BIOS:
> >>      FA401EA.304
> >>
> >> CPU/APU:
> >>      AMD Ryzen AI MAX+ 392
> >>
> >> Audio:
> >>      AMD ACP70 SoundWire
> >>      Realtek RT721 SDCA
> >>
> >> The SoundWire bus exposes one peripheral:
> >>
> >>      sdw:0:1:025d:0721:01: Attached
> >>
> >> I do not see TAS2783 devices enumerated on this unit.
> >>
> >> Known-good cases
> >> ================
> >>
> >> The laptop's built-in speakers worked correctly under the
> >> factory-installed Windows 11.
> >>
> >> USB audio also works correctly under Linux. I tested Corsair Virtuoso
> >> USB headphones and normal audio playback works.
> >>
> >> Therefore the issue appears specific to the internal AMD ACP70 ->
> >> SoundWire -> RT721 audio path.
> >>
> >> Actual behavior
> >> ===============
> >>
> >> Internal speakers:
> >>      Completely silent.
> >>
> >> 3.5 mm headphone jack:
> >>      No intelligible audio is produced.
> >>      When the analog audio path becomes active, the headphones
> produce
> >>      a continuous buzzing noise. The buzz stops when the playback/path
> >>      is deactivated.
> >>
> >> Opening the desktop sound control panel can also trigger the buzzing
> >> while the analog audio path is active.
> >>
> >> ALSA playback devices
> >> =====================
> >>
> >> The amd-soundwire card exposes:
> >>
> >>      device 0:
> >>      SDW1-PIN0-PLAYBACK-SimpleJack rt721-sdca-aif1-0
> >>
> >>      device 2:
> >>      SDW1-PIN1-PLAYBACK-SmartAmp rt721-sdca-aif2-2
> >>
> >> Direct ALSA reproduction
> >> ========================
> >>
> >> Internal speakers:
> >>
> >>      speaker-test -D hw:CARD=amdsoundwire,DEV=2 \
> >>          -c 2 -r 48000 -F S16_LE -t wav
> >>
> >> The PCM stream starts normally without an ALSA error, but there is no
> >> physical speaker output.
> >>
> >> Analog headphones:
> >>
> >>      aplay -D plughw:CARD=amdsoundwire,DEV=0 \
> >>          /usr/share/sounds/alsa/Front_Left.wav
> >>
> >> No speech is heard. The headphone output only buzzes while the audio
> >> path is active.
> >>
> >> Zero-PCM test
> >> =============
> >>
> >> I also sent only zero-valued PCM samples:
> >>
> >>      timeout 10s bash -c '
> >>      dd if=/dev/zero bs=192000 2>/dev/null |
> >>      aplay -D hw:CARD=amdsoundwire,DEV=0 \
> >>            -t raw -f S16_LE -r 48000 -c 2
> >>      '
> >>
> >> The headphone jack still buzzes while the zero-PCM stream is active.
> >>
> >> Therefore the buzz does not appear to represent corrupted application
> >> audio; merely activating playback is sufficient to produce it.
> >>
> >> Mixer / UCM
> >> ===========
> >>
> >> Speaker:
> >>
> >>      Speaker Switch = on
> >>      rt721 FU06 Playback Volume = 87,87
> >>
> >> Headphones:
> >>
> >>      Headphone Switch = on
> >>      rt721 FU05 Playback Volume = 87,87
> >>
> >> I also explicitly enabled the corresponding Speaker and Headphones
> >> UCM devices. This did not change the result.
> >>
> >> ASoC DAPM during speaker playback
> >> =================================
> >>
> >> I inspected debugfs while speaker-test on the SmartAmp PCM was
> >> actively running.
> >>
> >> All relevant widgets were ON:
> >>
> >>      Speaker: On
> >>      rt721 DP3 Speaker Playback: On
> >>          stream DP3 Speaker Playback active
> >>      rt721 DP3RX: On
> >>      rt721 FU 21: On
> >>      rt721 FU 23: On
> >>      rt721 PDE 41: On
> >>      rt721 SPK: On
> >>
> >> The DAPM graph therefore appears to activate the entire expected
> >> speaker path:
> >>
> >>      DP3 Speaker Playback
> >>        -> DP3RX
> >>        -> FU 21 / FU 23
> >>        -> SPK
> >>        -> Speaker
> >>
> >> but the physical speakers remain silent.
> >>
> >> Kernel messages
> >> ===============
> >>
> >> RT721 attaches successfully.
> >>
> >> I see:
> >>
> >>      rt721-sdca sdw:0:1:025d:0721:01:
> >>      Driver needs fixing: Unsorted reg_defaults, sorting the copy
> >>
> >> On an earlier 7.2.x boot I also observed:
> >>
> >>      soundwire sdw:0:1:025d:0721:01:
> >>      PARITY error detected before INT mask is enabled
> >>
> >> I did not observe additional SoundWire/RT721 errors when starting or
> >> stopping playback.
> >>
> >> Kernels tested
> >> ==============
> >>
> >> The same issue was reproduced on:
> >>
> >>      Fedora 44:
> >>      7.2.2-300.fc44.x86_64
> >>
> >>      Fedora 45:
> >>      7.2.2-300.fc45.x86_64
> >>
> >>      Vanilla mainline:
> >>      7.3.0-0.rc1.260901.786262be.417.vanilla.fc45.x86_64
> >>
> >>      CachyOS kernel:
> >>      7.2.2-cachyos1.fc45.x86_64
> >>
> >> The current reproduction is on the clean vanilla 7.3-rc1 kernel.
> >>
> >> Previous experiments
> >> ====================
> >>
> >> Before testing clean mainline, I also built a Fedora 7.2.2 kernel
> >> locally and experimentally changed the RT721 speaker endpoint in:
> >>
> >>      sound/soc/amd/acp/amd-acp70-acpi-match.c
> >>
> >> from:
> >>
> >>      .aggregated = 0
> >>      .group_id = 0
> >>
> >> to:
> >>
> >>      .aggregated = 1
> >>      .group_id = 1
> >>
> >> This did not change the behavior.
> >>
> >> I also tested that custom kernel with:
> >>
> >>      options snd_acp_sdw_legacy_mach quirk=32768
> >>
> >> The kernel reported:
> >>
> >>      amd_sdw amd_sdw: Overriding quirk 0x1 => 0x8000
> >>
> >> but there was still no speaker output.
> >>
> >> Those experimental overrides have been removed. The current vanilla
> >> 7.3-rc1 reproduction uses quirk=-1 and no custom modprobe options.
> >>
> >> Question
> >> ========
> >>
> >> Could this FA401EA variant require a different RT721-only topology,
> >> ACP70 configuration, SoundWire setup, or codec initialization quirk?
> >>
> >> The fact that all-zero PCM causes the analog headphone output to buzz
> >> while the stream is active may be particularly relevant.
> >>
> >> I'm happy to test patches or provide register/debug output.
> >>
> >> I can also provide full alsa-info, kernel journal, lspci output,
> >> SoundWire sysfs state, mixer state, and DAPM debugfs output.
> >
> > Could you please log a Bugzilla ticket adding ACPI dump, dmi
> > information and along with alsa info output?
> ++RTK Team
> 
> Similar kind of issue reported in another mail thread, realtek is working on it.
> 
> @jack could you please comment on it.
> 
> >>
> >> Thank you.
> >> Cristian
> >

[-- Attachment #2: 0001-ASoC-rt721-sdca-Update-preset-for-all-functions.patch --]
[-- Type: application/octet-stream, Size: 10972 bytes --]

From 6c021b1c8709f3497a1298d02ae72f3a1f4efe2f Mon Sep 17 00:00:00 2001
From: Jack Yu <jack.yu@realtek.com>
Date: Fri, 4 Sep 2026 10:41:56 +0800
Subject: [PATCH] ASoC: rt721-sdca: Update preset for all functions

Improve preset on all functions for better performance.

Signed-off-by: Jack Yu <jack.yu@realtek.com>
---
 sound/soc/codecs/rt721-sdca-sdw.c |   4 +
 sound/soc/codecs/rt721-sdca.c     | 174 ++++++++++++++++--------------
 2 files changed, 99 insertions(+), 79 deletions(-)

diff --git a/sound/soc/codecs/rt721-sdca-sdw.c b/sound/soc/codecs/rt721-sdca-sdw.c
index eae7d662efae..a3924522def1 100644
--- a/sound/soc/codecs/rt721-sdca-sdw.c
+++ b/sound/soc/codecs/rt721-sdca-sdw.c
@@ -74,10 +74,12 @@ static bool rt721_sdca_mbq_readable_register(struct device *dev, unsigned int re
 	case 0x200003c:
 	case 0x2000046:
 	case 0x5810000:
+	case 0x5810033:
 	case 0x5810036:
 	case 0x5810037:
 	case 0x5810038:
 	case 0x5810039:
+	case 0x5b10017:
 	case 0x5b10018:
 	case 0x5b10019:
 	case 0x5f00045:
@@ -149,10 +151,12 @@ static bool rt721_sdca_mbq_volatile_register(struct device *dev, unsigned int re
 	case 0x2000084:
 	case 0x2000086:
 	case 0x5810000:
+	case 0x5810033:
 	case 0x5810036:
 	case 0x5810037:
 	case 0x5810038:
 	case 0x5810039:
+	case 0x5b10017:
 	case 0x5b10018:
 	case 0x5b10019:
 		return true;
diff --git a/sound/soc/codecs/rt721-sdca.c b/sound/soc/codecs/rt721-sdca.c
index b1c3dc060c24..7a166594775c 100644
--- a/sound/soc/codecs/rt721-sdca.c
+++ b/sound/soc/codecs/rt721-sdca.c
@@ -173,7 +173,10 @@ static void rt721_sdca_dmic_preset(struct rt721_sdca_priv *rt721)
 		RT721_RC_CALIB_CTRL0, 0x0b00);
 	rt_sdca_index_write(rt721->mbq_regmap, RT721_RC_CALIB_CTRL,
 		RT721_RC_CALIB_CTRL0, 0x0b40);
-	regmap_write(rt721->regmap, 0x2f5c, 0x25);
+	regmap_write(rt721->regmap,
+		SDW_SDCA_CTL(FUNC_NUM_MIC_ARRAY, RT721_SDCA_ENT_USER_FU10,
+			RT721_SDCA_CTL_SAMPLE_FREQ_INDEX, 0), 0x11);
+	regmap_write(rt721->regmap, 0x2f5c, 0x01);
 }
 
 static void rt721_sdca_amp_preset(struct rt721_sdca_priv *rt721)
@@ -184,9 +187,6 @@ static void rt721_sdca_amp_preset(struct rt721_sdca_priv *rt721)
 		RT721_VREF1_HV_CTRL1, 0xe000);
 	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
 		RT721_MISC_POWER_CTL31, 0x8007);
-	regmap_write(rt721->mbq_regmap, 0x5810000, 0x6420);
-	regmap_write(rt721->mbq_regmap, 0x5810000, 0x6421);
-	regmap_write(rt721->mbq_regmap, 0x5810000, 0xe421);
 	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
 		RT721_CH_FLOAT_CTL6, 0x5561);
 	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_REG,
@@ -211,81 +211,97 @@ static void rt721_sdca_amp_preset(struct rt721_sdca_priv *rt721)
 
 static void rt721_sdca_jack_preset(struct rt721_sdca_priv *rt721)
 {
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
-		RT721_MISC_POWER_CTL31, 0x8000);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_ANA_POW_PART,
-		RT721_VREF1_HV_CTRL1, 0xe000);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
-		RT721_MISC_POWER_CTL31, 0x8007);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_GE_REL_CTRL1, 0x8011);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_UMP_HID_CTRL3, 0xcf00);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_UMP_HID_CTRL4, 0x000f);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_UMP_HID_CTRL1, 0x1100);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_UMP_HID_CTRL5, 0x0c12);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_JD_CTRL,
-		RT721_JD_1PIN_GAT_CTRL2, 0xc002);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_RC_CALIB_CTRL,
-		RT721_RC_CALIB_CTRL0, 0x0b00);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_RC_CALIB_CTRL,
-		RT721_RC_CALIB_CTRL0, 0x0b40);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
-		RT721_UAJ_TOP_TCON14, 0x3333);
-	regmap_write(rt721->mbq_regmap, 0x5810035, 0x0036);
-	regmap_write(rt721->mbq_regmap, 0x5810030, 0xee00);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_CAP_PORT_CTRL,
-		RT721_HP_AMP_2CH_CAL1, 0x0140);
-	regmap_write(rt721->mbq_regmap, 0x5810000, 0x0021);
-	regmap_write(rt721->mbq_regmap, 0x5810000, 0x8021);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_CAP_PORT_CTRL,
-		RT721_HP_AMP_2CH_CAL18, 0x5522);
-	regmap_write(rt721->mbq_regmap, 0x5b10007, 0x2000);
-	regmap_write(rt721->mbq_regmap, 0x5B10017, 0x1b0f);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_CBJ_CTRL,
-		RT721_CBJ_A0_GAT_CTRL1, 0x2205);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_CAP_PORT_CTRL,
-		RT721_HP_AMP_2CH_CAL4, 0xa105);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
-		RT721_UAJ_TOP_TCON14, 0x3b33);
-	regmap_write(rt721->mbq_regmap, 0x310400, 0x3043);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
-		RT721_UAJ_TOP_TCON14, 0x3f33);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
-		RT721_UAJ_TOP_TCON13, 0x6048);
-	regmap_write(rt721->mbq_regmap, 0x310401, 0x3000);
-	regmap_write(rt721->mbq_regmap, 0x310402, 0x1b00);
-	regmap_write(rt721->mbq_regmap, 0x310300, 0x000f);
-	regmap_write(rt721->mbq_regmap, 0x310301, 0x3000);
-	regmap_write(rt721->mbq_regmap, 0x310302, 0x1b00);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
-		RT721_UAJ_TOP_TCON17, 0x0008);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_DAC_CTRL,
-		RT721_DAC_2CH_CTRL3, 0x55ff);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_DAC_CTRL,
-		RT721_DAC_2CH_CTRL4, 0xcc00);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_ANA_POW_PART,
-		RT721_MBIAS_LV_CTRL2, 0x6677);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_ANA_POW_PART,
-		RT721_VREF2_LV_CTRL1, 0x7600);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_ENT_FLOAT_CTL2, 0x1234);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_ENT_FLOAT_CTL3, 0x3512);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_ENT_FLOAT_CTL1, 0x4040);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_ENT_FLOAT_CTL4, 0x1201);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_BOOST_CTRL,
-		RT721_BST_4CH_TOP_GATING_CTRL1, 0x002a);
-	regmap_write(rt721->regmap, 0x2f58, 0x07);
-
-	regmap_write(rt721->regmap, 0x2f51, 0x00);
-	rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
-		RT721_MISC_CTL, 0x0004);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_MISC_POWER_CTL31, 0x8000);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_ANA_POW_PART,
+				RT721_VREF1_HV_CTRL1, 0xe000);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_MISC_POWER_CTL31, 0x8007);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				0x10, 0xffb7);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				0x20, 0xffb7);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				0x30, 0xffb7);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_UAJ_TOP_TCON13, 0x6048);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_GE_REL_CTRL1, 0x8011);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_UMP_HID_CTRL3, 0xcf00);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_UMP_HID_CTRL4, 0x000f);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_UMP_HID_CTRL1, 0x1100);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_UMP_HID_CTRL5, 0x0c12);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_JD_CTRL,
+				RT721_JD_1PIN_GAT_CTRL2, 0xc004);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_RC_CALIB_CTRL,
+				RT721_RC_CALIB_CTRL0, 0x0b00);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_RC_CALIB_CTRL,
+				RT721_RC_CALIB_CTRL0, 0x0b40);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_UAJ_TOP_TCON14, 0x333b);
+		regmap_write(rt721->mbq_regmap, 0x5810035, 0x8036);
+		regmap_write(rt721->mbq_regmap, 0x5810030, 0xee03);
+		regmap_write(rt721->mbq_regmap, 0x5810033, 0x6000);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_CAP_PORT_CTRL,
+				RT721_HP_AMP_2CH_CAL1, 0x4140);
+		regmap_write(rt721->mbq_regmap, 0x5810000, 0x0021);
+		regmap_write(rt721->mbq_regmap, 0x5810100, 0x8021);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_CAP_PORT_CTRL,
+				RT721_HP_AMP_2CH_CAL18, 0x5522);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_CAP_PORT_CTRL,
+				RT721_HP_AMP_2CH_CAL1, 0x4540);
+		regmap_write(rt721->mbq_regmap, 0x5b10017, 0x1b0f);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_CBJ_CTRL,
+				RT721_CBJ_A0_GAT_CTRL1, 0x2205);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_UAJ_TOP_TCON14, 0x3b3b);
+		regmap_write(rt721->mbq_regmap, 0x310400, 0x3043);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_UAJ_TOP_TCON14, 0x3f33);
+		regmap_write(rt721->mbq_regmap, 0x310401, 0x3000);
+		regmap_write(rt721->mbq_regmap, 0x310402, 0x1b00);
+		regmap_write(rt721->mbq_regmap, 0x310300, 0x000f);
+		regmap_write(rt721->mbq_regmap, 0x310301, 0x3000);
+		regmap_write(rt721->mbq_regmap, 0x310302, 0x1b00);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_UAJ_TOP_TCON17, 0x0008);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_DAC_CTRL,
+				RT721_DAC_2CH_CTRL3, 0x55ff);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_DAC_CTRL,
+				RT721_DAC_2CH_CTRL4, 0xcc00);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_ANA_POW_PART,
+				RT721_MBIAS_LV_CTRL2, 0x6677);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_ANA_POW_PART,
+				RT721_VREF2_LV_CTRL1, 0x7600);
+		regmap_write(rt721->mbq_regmap, 0x910000, 0x00a1);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_UAJ_TOP_TCON13, 0x6048);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_ENT_FLOAT_CTL2, 0x1234);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_ENT_FLOAT_CTL3, 0x3512);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_ENT_FLOAT_CTL1, 0x4040);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_HDA_SDCA_FLOAT,
+				RT721_ENT_FLOAT_CTL4, 0x1201);
+		regmap_write(rt721->regmap, 0x2f58, 0x01);
+		regmap_write(rt721->regmap, 0x2f59, 0x01);
+		regmap_write(rt721->regmap, 0x2f51, 0x00);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_VENDOR_ANA_CTL,
+				RT721_UAJ_TOP_TCON13, 0x6040);
+		regmap_write(rt721->mbq_regmap, 0x910001, 0x3256);
+		regmap_write(rt721->mbq_regmap, 0x910002, 0x0000);
+		regmap_write(rt721->mbq_regmap, 0x910003, 0x0000);
+		regmap_write(rt721->mbq_regmap, 0x900004, 0x7778);
+		regmap_write(rt721->mbq_regmap, 0x910202, 0x02e4);
+		regmap_write(rt721->mbq_regmap, 0x800002, 0xcc04);
+		rt_sdca_index_write(rt721->mbq_regmap, RT721_CAP_PORT_CTRL,
+				RT721_HP_AMP_2CH_CAL4, 0xa105);
+		rt_sdca_index_write(rt721->mbq_regmap, 0x0b, 0x01, 0x0000);
 }
 
 static void rt721_sdca_jack_init(struct rt721_sdca_priv *rt721)
-- 
2.54.0


      reply	other threads:[~2026-09-04  6:01 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-02 16:43 [BUG] ASoC/AMD ACP70/RT721: ASUS TUF Gaming A14 FA401EA speakers silent and headphone jack buzzes on playback Cristian Timohi
2026-09-03  5:41 ` Mukunda,Vijendar
2026-09-03  8:40   ` Syed Saba Kareem
2026-09-04  6:00     ` Jack Yu [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=30fed968a6f54a6c81eca4ee23ea4166@realtek.com \
    --to=jack.yu@realtek.com \
    --cc=Sunil-kumar.Dommati@amd.com \
    --cc=broonie@kernel.org \
    --cc=cristiantimohi@gmail.com \
    --cc=fish690103@realtek.com \
    --cc=flove@realtek.com \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=mikelin@realtek.com \
    --cc=oder_chiou@realtek.com \
    --cc=pierre-louis.bossart@linux.dev \
    --cc=syed.sabakareem@amd.com \
    --cc=venkataprasad.potturu@amd.com \
    --cc=vijendar.mukunda@amd.com \
    --cc=vkoul@kernel.org \
    --cc=yung-chuan.liao@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox