Re: [PATCH v2 2/7] ASoC: dt-bindings: mediatek,mt8188-mt6359: remove ADDA_BE from link-name

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2023-05-24 at 16:46 +0200, Alexandre Mergnat wrote:
> On 24/05/2023 15:45, Trevor Wu (吳文良) wrote:
> > On Wed, 2023-05-24 at 15:28 +0200, Alexandre Mergnat wrote:
> > > External email : Please do not click links or open attachments
> > > until
> > > you have verified the sender or the content.
> > > 
> > > 
> > > On 24/05/2023 04:25, Trevor Wu (吳文良) wrote:
> > > > On Tue, 2023-05-23 at 18:26 +0200, Alexandre Mergnat wrote:
> > > > > On 23/05/2023 04:19, Trevor Wu wrote:
> > > > > > ADDA_BE is used to connect to mt6359. For machine mt8188-
> > > > > > mt6359,
> > > > > > codec
> > > > > > for ADDA_BE must be mt6359 which are configured on the
> > > > > > machine
> > > > > > driver.
> > > > > > Besides, ADDA_BE is divided into two dais, UL_SRC_BE and
> > > > > > DL_SRC_BE.
> > > > > > As a result, remove ADDA_BE from items of link-name.
> > > > > > 
> > > > > > Signed-off-by: Trevor Wu<trevor.wu@xxxxxxxxxxxx>
> > > > > 
> > > > > I don't understand how "DL_SRC_BE" and "UL_SRC_BE" links are
> > > > > done.
> > > > > Why these dais don't replace "ADDA_BE" in this binding ?
> > > > > 
> > > > > Regards,
> > > > > Alexandre
> > > > > 
> > > > 
> > > > Hi Alexandre,
> > > > 
> > > > Because the sound card is mt8188-mt6359, the codec for these
> > > > two
> > > > links
> > > > must be mt6359. Thus, I specifiy the codec in machine driver
> > > > directly.
> > > > If the codec is changed, there will be a new sound card and
> > > > binding
> > > > file. In conclusion, the codec won't be updated via dts, and
> > > > that's
> > > > why
> > > > I don't just replace ADDA_BE in this binding.
> > > > 
> > > > Do you suggest me add some information in the commit message?
> > > 
> > > No it's fine, I'm just trying to understand.
> > > 
> > > When you say "I specifiy the codec in machine driver directly",
> > > you
> > > are talking about this change ?
> > > 
> > > +               } else if (strcmp(dai_link->name, "DL_SRC_BE") ==
> > > 0
> > > > > 
> > > 
> > > +                          strcmp(dai_link->name, "UL_SRC_BE") ==
> > > 0)
> > > {
> > > +                       if (!init_mt6359) {
> > > +                               dai_link->init =
> > > mt8188_mt6359_init;
> > > 
> > > I'm asking because the equivalent was done here:
> > > 
> > > -       [DAI_LINK_ADDA_BE] = {
> > > -               .name = "ADDA_BE",
> > > +       [DAI_LINK_DL_SRC_BE] = {
> > > +               .name = "DL_SRC_BE",
> > >                  .no_pcm = 1,
> > >                  .dpcm_playback = 1,
> > > -               .dpcm_capture = 1,
> > > -               .init = mt8188_mt6359_init,
> > > -               SND_SOC_DAILINK_REG(adda),
> > > +               SND_SOC_DAILINK_REG(dl_src),
> > > 
> > > So I'm wondering why "ADDA_BE" & "DPTX_BE" & "ETDM3_OUT_BE" are
> > > in
> > > the
> > > enum list of the binding since the codec is already specified in
> > > machine driver too. I probably miss something but I don't know
> > > what.
> > > 
> > > 
> > 
> > 
> > The following code snippet is cut from [PATCH v2 1/7].
> > 
> >   /* BE */
> > -SND_SOC_DAILINK_DEFS(adda,
> > -                    DAILINK_COMP_ARRAY(COMP_CPU("ADDA")),
> > +SND_SOC_DAILINK_DEFS(dl_src,
> > +                    DAILINK_COMP_ARRAY(COMP_CPU("DL_SRC")),
> >                       DAILINK_COMP_ARRAY(COMP_CODEC("mt6359-sound",
> >                                                     "mt6359-snd-
> > codec-
> > aif1")),
> >                       DAILINK_COMP_ARRAY(COMP_EMPTY()));
> > @@ -140,6 +140,12 @@ SND_SOC_DAILINK_DEFS(pcm1,
> >                       DAILINK_COMP_ARRAY(COMP_DUMMY()),
> >                       DAILINK_COMP_ARRAY(COMP_EMPTY()));
> > 
> > +SND_SOC_DAILINK_DEFS(ul_src,
> > +                    DAILINK_COMP_ARRAY(COMP_CPU("UL_SRC")),
> > +                    DAILINK_COMP_ARRAY(COMP_CODEC("mt6359-sound",
> > +                                                  "mt6359-snd-
> > codec-
> > aif1")),
> > +                    DAILINK_COMP_ARRAY(COMP_EMPTY()));
> > 
> > 
> > This is why I talk about specifying the codec it connects in the
> > machine driver.
> > If you check other dai-links, you would see COMP_DUMMY() in the
> > COMP_CODEC() field.
> 
> Ok thanks for the explanation. If I understand well, ADDA_BE could
> have
> been removed from the enum list before your serie because the codec
> was
> already specified for ADDA_BE.
> 
> Reviewed-by: Alexandre Mergnat <amergnat@xxxxxxxxxxxx>
> 


Actually, it's allowed to be overwritten by DTS configuration. That's
why I listed ADDA_BE in the enum list before. However, I found the
binding and machine driver was implemented for mt6359, so I think it's
more reasonable to remove it from the list.

Thanks,
Trevor




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux