Re: [v3 3/3] drm/bridge: it6505: Add audio support

From: Chen-Yu Tsai
Date: Mon Nov 27 2023 - 22:17:36 EST


On Tue, Nov 21, 2023 at 8:54 PM AngeloGioacchino Del Regno
<angelogioacchino.delregno@xxxxxxxxxxxxx> wrote:
>
> Il 30/07/23 20:08, Jiaxin Yu ha scritto:
> > Add audio support for it6505
> >
> > 1. Bridge to hdmi-codec to support audio feature. At the same time,
> > the function of automatically detecting audio is removed.
> > 2. It is observed that some DP-to-HDMI dongles will get into bad
> > states if sending InfoFrame without audio data. Defer to enable
> > it6505's audio feature when PCM triggers START or RESUME.
> >
> > Signed-off-by: Jiaxin Yu <jiaxin.yu@xxxxxxxxxxxx>
>
> Hello Jiaxin,
> this patch doesn't apply anymore (and it won't build anymore) upstream.
>
> > ---
> > drivers/gpu/drm/bridge/ite-it6505.c | 81 ++++++++++++++++++++++++++---
> > 1 file changed, 75 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/bridge/ite-it6505.c b/drivers/gpu/drm/bridge/ite-it6505.c
> > index 504d51c42f79..1cfcb0731288 100644
> > --- a/drivers/gpu/drm/bridge/ite-it6505.c
> > +++ b/drivers/gpu/drm/bridge/ite-it6505.c
> > @@ -2162,7 +2162,6 @@ static void it6505_stop_link_train(struct it6505 *it6505)
> >
> > static void it6505_link_train_ok(struct it6505 *it6505)
> > {
> > - struct device *dev = &it6505->client->dev;
>
> This is because this changed to `struct device *dev = it6505->dev;`
>
> >
> > it6505->link_state = LINK_OK;
> > /* disalbe mute enable avi info frame */
> > @@ -2170,11 +2169,6 @@ static void it6505_link_train_ok(struct it6505 *it6505)
> > it6505_set_bits(it6505, REG_INFOFRAME_CTRL,
> > EN_VID_CTRL_PKT, EN_VID_CTRL_PKT);
> >
> > - if (it6505_audio_input(it6505)) {
> > - DRM_DEV_DEBUG_DRIVER(dev, "Enable audio!");
> > - it6505_enable_audio(it6505);
> > - }
> > -
> > if (it6505->hdcp_desired)
> > it6505_start_hdcp(it6505);
> > }
> > @@ -2846,6 +2840,45 @@ static void __maybe_unused it6505_audio_shutdown(struct device *dev, void *data)
> > it6505_disable_audio(it6505);
> > }
> >
> > +static int it6505_audio_hw_params(struct device *dev, void *data,
> > + struct hdmi_codec_daifmt *daifmt,
> > + struct hdmi_codec_params *params)
> > +{
> > + struct it6505 *it6505 = dev_get_drvdata(dev);
> > +
> > + return it6505_audio_setup_hw_params(it6505, params);
> > +}
> > +
> > +static int it6505_audio_setup_trigger(struct it6505 *it6505, int cmd)
> > +{
> > + struct device *dev = &it6505->client->dev;
>
> ...and because you'll have to change this one, and other occurrences of that
> as well.
>
> Can you please respin this series?

Please also add a patch adding #sound-dai-cells to the it6505 binding.