public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Ding, Shenghao" <shenghao-ding@ti.com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Cc: "robh+dt@kernel.org" <robh+dt@kernel.org>,
	"andriy.shevchenko@linux.intel.com"
	<andriy.shevchenko@linux.intel.com>,
	"Lu, Kevin" <kevin-lu@ti.com>, "Xu, Baojun" <baojun.xu@ti.com>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"lgirdwood@gmail.com" <lgirdwood@gmail.com>,
	"perex@perex.cz" <perex@perex.cz>,
	"pierre-louis.bossart@linux.intel.com"
	<pierre-louis.bossart@linux.intel.com>,
	"13916275206@139.com" <13916275206@139.com>,
	"linux-sound@vger.kernel.org" <linux-sound@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"liam.r.girdwood@intel.com" <liam.r.girdwood@intel.com>,
	"soyer@irl.hu" <soyer@irl.hu>, "tiwai@suse.de" <tiwai@suse.de>,
	"Gupta, Peeyush" <peeyush@ti.com>,
	"Navada Kanyana, Mukund" <navada@ti.com>,
	"broonie@kernel.org" <broonie@kernel.org>,
	"conor+dt@kernel.org" <conor+dt@kernel.org>
Subject: RE: [EXTERNAL] Re: [PATCH v3 5/5] ASoC: dt-bindings: Add tas2563 into ti,ta2781.yaml to enable DSP mode
Date: Wed, 27 Dec 2023 06:58:09 +0000	[thread overview]
Message-ID: <2a84eb1157a4421ba19900eeb2bfc7db@ti.com> (raw)
In-Reply-To: <954a2ab8-3931-4022-a004-6a560c1a6a25@linaro.org>



> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Sent: Monday, December 25, 2023 9:18 PM
> To: Ding, Shenghao <shenghao-ding@ti.com>; broonie@kernel.org;
> conor+dt@kernel.org
> Cc: robh+dt@kernel.org; andriy.shevchenko@linux.intel.com; Lu, Kevin
> <kevin-lu@ti.com>; Xu, Baojun <baojun.xu@ti.com>;
> devicetree@vger.kernel.org; lgirdwood@gmail.com; perex@perex.cz; pierre-
> louis.bossart@linux.intel.com; 13916275206@139.com; linux-
> sound@vger.kernel.org; linux-kernel@vger.kernel.org;
> liam.r.girdwood@intel.com; soyer@irl.hu; tiwai@suse.de; Gupta, Peeyush
> <peeyush@ti.com>; Navada Kanyana, Mukund <navada@ti.com>
> Subject: [EXTERNAL] Re: [PATCH v3 5/5] ASoC: dt-bindings: Add tas2563 into
> ti,ta2781.yaml to enable DSP mode
> 
> On 25/12/2023 06:39, Shenghao Ding wrote:
> > Move tas2563 from tas2562.yaml to tas2781.yaml, because tas2563 only
> > work in bypass-DSP mode with tas2562 driver. In oder to enable DSP
> > mode for tas2563, it has been moved to tas2781 driver. As to the
> > hardware part, such as register setting and DSP firmware, all these
> > are stored in the binary firmware. What tas2781 drivder dooes is to
> > parse the firmware and download them to the tas2781 or tas2563, then
> power on tas2781 or tas2563.
> > So, tas2781 driver can be resued as tas2563 driver. Only attention
> > will be paid to downloading corresponding firmware.
> >
> > Signed-off-by: Shenghao Ding <shenghao-ding@ti.com>
> >
> > ---
> > Change in v3:
> >  - Add devicetree list and other list of necessary people and lists to
> > CC
> >  - Express Compatibility in the bindings
> 
> Where?
> 
> >  - Add more comments on why move tas2563 to tas2781 driver
> >  - Provide rationale in terms of bindings and hardware, not in terms of
> driver.
> >    Or at least not only.
> > ---
> >  .../devicetree/bindings/sound/ti,tas2781.yaml | 66
> > ++++++++++++++-----
> >  1 file changed, 51 insertions(+), 15 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/sound/ti,tas2781.yaml
> > b/Documentation/devicetree/bindings/sound/ti,tas2781.yaml
> > index a69e6c223308..bbe8e5f2c013 100644
> > --- a/Documentation/devicetree/bindings/sound/ti,tas2781.yaml
> > +++ b/Documentation/devicetree/bindings/sound/ti,tas2781.yaml
> > @@ -5,36 +5,72 @@
> >  $id: http://devicetree.org/schemas/sound/ti,tas2781.yaml#
> >  $schema: http://devicetree.org/meta-schemas/core.yaml#
> >
> > -title: Texas Instruments TAS2781 SmartAMP
> > +title: Texas Instruments TAS2781/TAS2563 SmartAMP
> >
> >  maintainers:
> >    - Shenghao Ding <shenghao-ding@ti.com>
> >
> >  description:
> > -  The TAS2781 is a mono, digital input Class-D audio amplifier
> > -  optimized for efficiently driving high peak power into small
> > -  loudspeakers. An integrated on-chip DSP supports Texas Instruments
> > -  Smart Amp speaker protection algorithm. The integrated speaker
> > -  voltage and current sense provides for real time
> > +  The TAS2781/TAS2563 is a mono, digital input Class-D audio
> > + amplifier optimized for efficiently driving high peak power into
> > + small loudspeakers. An integrated on-chip DSP supports Texas
> > + Instruments Smart Amp speaker protection algorithm. The  integrated
> > + speaker voltage and current sense provides for real time
> >    monitoring of loudspeaker behavior.
> >
> >  allOf:
> >    - $ref: dai-common.yaml#
> > +  - if:
> > +      properties:
> > +        compatible:
> > +          contains:
> > +            enum:
> > +              - ti,tas2781
> > +    then:
> > +      properties:
> > +        reg:
> > +          description:
> > +            I2C address, in multiple AMP case, all the i2c address
> > +            aggregate as one Audio Device to support multiple audio slots.
> > +          maxItems: 8
> > +          minItems: 1
> > +          items:
> > +            minimum: 0x38
> > +            maximum: 0x3f
> > +    else:
> 
> How this else is possible? Please show me any DTS which triggers this else
> case.
Do you mean add two if and remove else branch. Like following
  - if:
      properties:
        compatible:
          contains:
            enum:
              - ti,tas2781
    then:
      properties:
        reg:
          description:
            I2C address, in multiple-AMP case, all the i2c address
            aggregate as one Audio Device to support multiple audio slots.
          maxItems: 8
          minItems: 1
          items:
            minimum: 0x38
            maximum: 0x3f
  - if:
      properties:
        compatible:
          contains:
            enum:
              - ti,tas2563
    then:
      properties:
        reg:
          description:
            I2C address, in multiple-AMP case, all the i2c address
            aggregate as one Audio Device to support multiple audio slots.
          maxItems: 4
          minItems: 1
          items:
            minimum: 0x4c
            maximum: 0x4f
> 
> 
> > +      properties:
> > +        reg:
> > +          description:
> > +            I2C address, in multiple AMP case, all the i2c address
> > +            aggregate as one Audio Device to support multiple audio slots.
> > +          maxItems: 4
> > +          minItems: 1
> > +          items:
> > +            minimum: 0x4c
> > +            maximum: 0x4f
> >
> >  properties:
> >    compatible:
> > +    description: |
> > +      ti,tas2781: 24-V Class-D Amplifier with Real Time Integrated Speaker
> > +      Protection and Audio Processing, 16/20/24/32bit stereo I2S or
> > +      multichannel TDM.
> > +
> > +      ti,tas2563: 6.1-W Boosted Class-D Audio Amplifier With Integrated
> > +      DSP and IV Sense, 16/20/24/32bit stereo I2S or multichannel TDM.
> >      enum:
> >        - ti,tas2781
> > +      - ti,tas2563
> 
> Still nothing improved. Where is the fallback?
Do you mean to add following as fallback?
    oneOf:
      - items:
          - enum:
              - ti,tas2781
      - items:
          - enum:
              - ti,tas2563
> 
> > +      # Tas781 driver can support both tas2563 and tas2781, because the
> > +      # hardware part in the driver code, such as register setting and DSP
> > +      # firmware, all these are stored in the binary firmware. What drivder
> > +      # dooes is to parse the firmware and download it to the tas2781 or
> > +      # tas2563, then control tas2781 or tas2563 to power on/off or switch
> > +      # different dsp params. So, tas2781 driver can be resued as tas2563
> > +      # driver. Only attention will be paid to downloading corresponding
> > +      # firmware.
> 
> Don't write useless driver description and implement proper list of two
> compatibles using one as fallback for another. I already pointed you to
> example-schema which gives you nice example for this.
> 
> It is third try not doing what I asked you. Probably we misunderstand each
> other, then please answer:
> 
> 1. Please find example-schema.yaml and share whether this succeeded or not.
> 2. Open the example-schema.yaml in your editor.
> 3. Read the section about compatibles. You need oneOf and items, just like it
> is there.
> 
> Now, please confirm that you did all these steps before you send v4 with
> more test.
> 
> >
> > -  reg:
> > -    description:
> > -      I2C address, in multiple tas2781s case, all the i2c address
> > -      aggregate as one Audio Device to support multiple audio slots.
> > -    maxItems: 8
> > -    minItems: 1
> > -    items:
> > -      minimum: 0x38
> > -      maximum: 0x3f
> > +  reg: true
> 
> OK, you clearly just keep ignoring my comments.
> 
> This is a friendly reminder during the review process.
> 
> It seems my or other reviewer's previous comments were not fully addressed.
> Maybe the feedback got lost between the quotes, maybe you just forgot to
> apply it. Please go back to the previous discussion and either implement all
> requested changes or keep discussing them.
> 
> Thank you.
> 
> 
> 
> Best regards,
> Krzysztof


  reply	other threads:[~2023-12-27  7:00 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-25  5:39 [PATCH v3 1/5] ASoC: dt-bindings: move tas2563 from tas2562.yaml to tas2781.yaml Shenghao Ding
2023-12-25  5:39 ` [PATCH v3 2/5] ASoC: tas2562: move tas2563 from tas2562 driver to tas2781 driver Shenghao Ding
2023-12-27 16:50   ` Andy Shevchenko
2023-12-25  5:39 ` [PATCH v3 3/5] ASoC: tas2781: Add tas2563 into header file for DSP mode Shenghao Ding
2023-12-25  5:39 ` [PATCH v3 4/5] ASoC: tas2781: Add tas2563 into driver Shenghao Ding
2023-12-27 16:51   ` Andy Shevchenko
2023-12-25  5:39 ` [PATCH v3 5/5] ASoC: dt-bindings: Add tas2563 into ti,ta2781.yaml to enable DSP mode Shenghao Ding
2023-12-25 13:18   ` Krzysztof Kozlowski
2023-12-27  6:58     ` Ding, Shenghao [this message]
2023-12-27 11:02       ` [EXTERNAL] " Krzysztof Kozlowski
2023-12-25 13:12 ` [PATCH v3 1/5] ASoC: dt-bindings: move tas2563 from tas2562.yaml to tas2781.yaml Krzysztof Kozlowski

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=2a84eb1157a4421ba19900eeb2bfc7db@ti.com \
    --to=shenghao-ding@ti.com \
    --cc=13916275206@139.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=baojun.xu@ti.com \
    --cc=broonie@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=kevin-lu@ti.com \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=lgirdwood@gmail.com \
    --cc=liam.r.girdwood@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=navada@ti.com \
    --cc=peeyush@ti.com \
    --cc=perex@perex.cz \
    --cc=pierre-louis.bossart@linux.intel.com \
    --cc=robh+dt@kernel.org \
    --cc=soyer@irl.hu \
    --cc=tiwai@suse.de \
    /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