[alsa-devel] [PATCH] ASoC:hdac_hda: use correct format to setup hda codec

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Mon Feb 25 19:04:13 CET 2019


On 2/25/19 1:48 AM, Rander Wang wrote:
> The current implementation of the hdac_hda codec results in zero-valued
> samples on capture and noise with headset playback when SOF is used on
> platforms with an on-board HDaudio codec. This is root-caused to SOF
> using be_hw_params_fixup, and the prepare() call using invalid runtime
> fields to determine the format.
>
> This patch moves the format handling to the hw_params() callback, as
> done already for hdac_hdmi, to make sure the fixed-up information is
> taken into account but keeps the codec initialization in prepare() as
> the stream_tag is only available at that time. Moving everything in the
> prepare() callback is possible but the code is less elegant so this
> two-step solution was chosen.
>
> The solution was tested with the SST driver with no regressions, and all
> the issues with SOF playback and capture are solved.
>
> Signed-off-by: Rander Wang <rander.wang at linux.intel.com>

I suggested to Rander to send this patch upstream last week, but since 
there are two additional fixes suggested over the week-end on the SOF 
github we probably want to discard this patch.

We will resubmit a series once all the current ASoC+HDaudio issues are 
sorted out (both with the Skylake and SOF drivers). It's easier for 
reviewers and people backporting stuff.




More information about the Alsa-devel mailing list