Answer· embeded -----Original Message----- From: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> Sent: Wednesday, May 10, 2023 3:04 PM To: Shenghao Ding <13916275206@xxxxxxx>; broonie@xxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; krzysztof.kozlowski+dt@xxxxxxxxxx; robh+dt@xxxxxxxxxx; lgirdwood@xxxxxxxxx; perex@xxxxxxxx; pierre-louis.bossart@xxxxxxxxxxxxxxx Cc: Lu, Kevin <kevin-lu@xxxxxx>; Ding, Shenghao <shenghao-ding@xxxxxx>; alsa-devel@xxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Xu, Baojun <x1077012@xxxxxx>; Gupta, Peeyush <peeyush@xxxxxx>; Navada Kanyana, Mukund <navada@xxxxxx>; gentuser@xxxxxxxxx; Ryan_Chu@xxxxxxxxxxx; Sam_Wu@xxxxxxxxxxx Subject: [EXTERNAL] Re: [PATCH v2 2/5] ASoC: dt-bindings: Add tas2781 amplifier On 08/05/2023 07:45, Shenghao Ding wrote: > Create tas2781.yaml for tas2781 driver. > > Signed-off-by: Shenghao Ding <13916275206@xxxxxxx> > > --- > Changes in v7: Your subject says it is v2 and previously it was v6. Make it consistent. [Ding] v2 is the version no for all of the pathes, in each patch there is separated version, v7 is the version number for yaml > - Submit together with tas2781 codec driver code Fix your patchset threading. I don't think it's possible to apply your one. > - Add more detail description for ti,audio-slots > - Keep consistent for "I2C" > - remove reset-gpios description > - For reg, express as constraints instead > - remove unnecessary '|' > Changes to be committed: > new file: Documentation/devicetree/bindings/sound/ti,tas2781.yaml > --- > .../devicetree/bindings/sound/ti,tas2781.yaml | 90 > +++++++++++++++++++ > 1 file changed, 90 insertions(+) > create mode 100644 > Documentation/devicetree/bindings/sound/ti,tas2781.yaml > > diff --git a/Documentation/devicetree/bindings/sound/ti,tas2781.yaml > b/Documentation/devicetree/bindings/sound/ti,tas2781.yaml > new file mode 100644 > index 000000000000..96c2584855d4 > --- /dev/null > +++ b/Documentation/devicetree/bindings/sound/ti,tas2781.yaml > @@ -0,0 +1,90 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) # Copyright > +(C) 2022 - 2023 Texas Instruments Incorporated %YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/sound/ti,tas2781.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Texas Instruments TAS2781 SmartAMP > + > +maintainers: > + - Shenghao Ding <shenghao-ding@xxxxxx> > + > +description: > + The TAS2781 is a mono, digital input Class-D audio amplifier > + optimized for efficiently driving high peak power into small > + loudspeakers. Integrated an 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. > + you miss allOf with ref to saound-dai-common. [Ding] Add it in next patch > +properties: > + compatible: > + enum: > + - ti,tas2781 > + > + reg: > + description: I2C address of the primary device. > + items: > + minimum: 0x38 > + maximum: 0x3f > + > + reset-gpios: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + ti,audio-slots: > + description: > + Multiple tas2781s aggregate as one Audio Amp to support > + multiple audio slots > + $ref: /schemas/types.yaml#/definitions/uint32-array > + maxItems: 4 You said you can have here two addresses. You don't allow it, test it. Missing minItems, but... > + items: > + minimum: 0x38 > + maximum: 0x3f ... So these are fixed? No need to encode them in such case... and anyway actually I agree with Rob here - these addresses should be put in reg. [DING] if all the put in reg, the i2c_probe will be called several time. The code don not want to register several codecs, but one codec including several tas2781s. > + description: > + I2C address of the device for different audio slots, > + useless in mono case. > + > + ti,broadcast-addr: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: > + Generic I2C address for all the tas2781 devices in > + purpose of I2C broadcast during the multi-device > + writes, useless in mono case. Probably you can figure it out from previous addresses and there is no need for this property. [Ding] this address is the common address for all the tas2781, it can be used for dsp firmware downloading to all the tas2781s in parallel, which can save more downloading time > + > + '#sound-dai-cells': > + const: 1 > + > +required: > + - compatible > + - reg > + Best regards, Krzysztof