[PATCH v2 1/2] dt-bindings: tas2562: Convert the tas2562 binding to yaml
Convert the TAS2562 text file to yaml format.
Signed-off-by: Dan Murphy dmurphy@ti.com ---
v2 - Updated the shutdown-gpio to shutdown-gpios and fixed licensing to be GPL-2.0-only.
.../devicetree/bindings/sound/tas2562.yaml | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/tas2562.yaml
diff --git a/Documentation/devicetree/bindings/sound/tas2562.yaml b/Documentation/devicetree/bindings/sound/tas2562.yaml new file mode 100644 index 000000000000..8d75a798740b --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tas2562.yaml @@ -0,0 +1,69 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +# Copyright (C) 2019 Texas Instruments Incorporated +%YAML 1.2 +--- +$id: "http://devicetree.org/schemas/sound/tas2562.yaml#" +$schema: "http://devicetree.org/meta-schemas/core.yaml#" + +title: Texas Instruments TAS2562 Smart PA + +maintainers: + - Dan Murphy dmurphy@ti.com + +description: | + The TAS2562 is a mono, digital input Class-D audio amplifier optimized for + efficiently driving high peak power into small loudspeakers. + Integrated speaker voltage and current sense provides for + real time monitoring of loudspeaker behavior. + +properties: + compatible: + enum: + - ti,tas2562 + - ti,tas2563 + + reg: + maxItems: 1 + description: | + I2C address of the device can be one of these 0x4c, 0x4d, 0x4e or 0x4f + + shut-down-gpios: + description: GPIO used to control the state of the device. + deprecated: true + + shutdown-gpios: + description: GPIO used to control the state of the device. + + interrupts: + maxItems: 1 + + ti,imon-slot-no: + $ref: /schemas/types.yaml#/definitions/uint32 + description: TDM TX current sense time slot. + + '#sound-dai-cells': + const: 1 + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + i2c0 { + #address-cells = <1>; + #size-cells = <0>; + codec: codec@4c { + compatible = "ti,tas2562"; + reg = <0x4c>; + #sound-dai-cells = <1>; + interrupt-parent = <&gpio1>; + interrupts = <14>; + shutdown-gpios = <&gpio1 15 0>; + ti,imon-slot-no = <0>; + }; + }; +
Update the shutdown GPIO property to be shutdown from shut-down.
Fixes: c173dba44c2d2 ("ASoC: tas2562: Introduce the TAS2562 amplifier") Signed-off-by: Dan Murphy dmurphy@ti.com ---
v2 - Set sdz_gpio to NULL if gpio property not present.
sound/soc/codecs/tas2562.c | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-)
diff --git a/sound/soc/codecs/tas2562.c b/sound/soc/codecs/tas2562.c index e74628061040..8a53633a3853 100644 --- a/sound/soc/codecs/tas2562.c +++ b/sound/soc/codecs/tas2562.c @@ -680,12 +680,25 @@ static int tas2562_parse_dt(struct tas2562_data *tas2562) struct device *dev = tas2562->dev; int ret = 0;
- tas2562->sdz_gpio = devm_gpiod_get_optional(dev, "shut-down", - GPIOD_OUT_HIGH); + tas2562->sdz_gpio = devm_gpiod_get_optional(dev, "shutdown", + GPIOD_OUT_HIGH); if (IS_ERR(tas2562->sdz_gpio)) { - if (PTR_ERR(tas2562->sdz_gpio) == -EPROBE_DEFER) { - tas2562->sdz_gpio = NULL; + tas2562->sdz_gpio = NULL; + if (PTR_ERR(tas2562->sdz_gpio) == -EPROBE_DEFER) return -EPROBE_DEFER; + } + + /* + * The shut-down property is deprecated but needs to be checked for + * backwards compatibility. + */ + if (tas2562->sdz_gpio == NULL) { + tas2562->sdz_gpio = devm_gpiod_get_optional(dev, "shut-down", + GPIOD_OUT_HIGH); + if (IS_ERR(tas2562->sdz_gpio)) { + tas2562->sdz_gpio = NULL; + if (PTR_ERR(tas2562->sdz_gpio) == -EPROBE_DEFER) + return -EPROBE_DEFER; } }
Hello
On 7/22/20 10:47 AM, Dan Murphy wrote:
Update the shutdown GPIO property to be shutdown from shut-down.
Fixes: c173dba44c2d2 ("ASoC: tas2562: Introduce the TAS2562 amplifier") Signed-off-by: Dan Murphy dmurphy@ti.com
v2 - Set sdz_gpio to NULL if gpio property not present.
sound/soc/codecs/tas2562.c | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-)
diff --git a/sound/soc/codecs/tas2562.c b/sound/soc/codecs/tas2562.c index e74628061040..8a53633a3853 100644 --- a/sound/soc/codecs/tas2562.c +++ b/sound/soc/codecs/tas2562.c @@ -680,12 +680,25 @@ static int tas2562_parse_dt(struct tas2562_data *tas2562) struct device *dev = tas2562->dev; int ret = 0;
- tas2562->sdz_gpio = devm_gpiod_get_optional(dev, "shut-down",
GPIOD_OUT_HIGH);
- tas2562->sdz_gpio = devm_gpiod_get_optional(dev, "shutdown",
if (IS_ERR(tas2562->sdz_gpio)) {GPIOD_OUT_HIGH);
if (PTR_ERR(tas2562->sdz_gpio) == -EPROBE_DEFER) {
tas2562->sdz_gpio = NULL;
tas2562->sdz_gpio = NULL;
This is incorrect. We will never see EPROBE_DEFER since we cleared out the gpio. I need to revert this.
Same for below.
if (PTR_ERR(tas2562->sdz_gpio) == -EPROBE_DEFER) return -EPROBE_DEFER;
- }
- /*
* The shut-down property is deprecated but needs to be checked for
* backwards compatibility.
*/
- if (tas2562->sdz_gpio == NULL) {
tas2562->sdz_gpio = devm_gpiod_get_optional(dev, "shut-down",
GPIOD_OUT_HIGH);
if (IS_ERR(tas2562->sdz_gpio)) {
tas2562->sdz_gpio = NULL;
Same comment as above
Dan
On Wed, Jul 22, 2020 at 10:47:05AM -0500, Dan Murphy wrote:
Convert the TAS2562 text file to yaml format.
Signed-off-by: Dan Murphy dmurphy@ti.com
v2 - Updated the shutdown-gpio to shutdown-gpios and fixed licensing to be GPL-2.0-only.
.../devicetree/bindings/sound/tas2562.yaml | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/tas2562.yaml
diff --git a/Documentation/devicetree/bindings/sound/tas2562.yaml b/Documentation/devicetree/bindings/sound/tas2562.yaml new file mode 100644 index 000000000000..8d75a798740b --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tas2562.yaml @@ -0,0 +1,69 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +# Copyright (C) 2019 Texas Instruments Incorporated +%YAML 1.2 +--- +$id: "http://devicetree.org/schemas/sound/tas2562.yaml#" +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+title: Texas Instruments TAS2562 Smart PA
+maintainers:
- Dan Murphy dmurphy@ti.com
+description: |
- The TAS2562 is a mono, digital input Class-D audio amplifier optimized for
- efficiently driving high peak power into small loudspeakers.
- Integrated speaker voltage and current sense provides for
- real time monitoring of loudspeaker behavior.
+properties:
- compatible:
- enum:
- ti,tas2562
- ti,tas2563
- reg:
- maxItems: 1
- description: |
I2C address of the device can be one of these 0x4c, 0x4d, 0x4e or 0x4f
- shut-down-gpios:
- description: GPIO used to control the state of the device.
- deprecated: true
I think you should just remove this given it never worked with any released kernel. Otherwise,
Reviewed-by: Rob Herring robh@kernel.org
- shutdown-gpios:
- description: GPIO used to control the state of the device.
- interrupts:
- maxItems: 1
- ti,imon-slot-no:
- $ref: /schemas/types.yaml#/definitions/uint32
- description: TDM TX current sense time slot.
- '#sound-dai-cells':
- const: 1
+required:
- compatible
- reg
+additionalProperties: false
+examples:
- |
- #include <dt-bindings/gpio/gpio.h>
- i2c0 {
#address-cells = <1>;
#size-cells = <0>;
codec: codec@4c {
compatible = "ti,tas2562";
reg = <0x4c>;
#sound-dai-cells = <1>;
interrupt-parent = <&gpio1>;
interrupts = <14>;
shutdown-gpios = <&gpio1 15 0>;
ti,imon-slot-no = <0>;
};
- };
-- 2.27.0
Rob
On 7/23/20 3:18 PM, Rob Herring wrote:
On Wed, Jul 22, 2020 at 10:47:05AM -0500, Dan Murphy wrote:
Convert the TAS2562 text file to yaml format.
Signed-off-by: Dan Murphy dmurphy@ti.com
v2 - Updated the shutdown-gpio to shutdown-gpios and fixed licensing to be GPL-2.0-only.
.../devicetree/bindings/sound/tas2562.yaml | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/tas2562.yaml
diff --git a/Documentation/devicetree/bindings/sound/tas2562.yaml b/Documentation/devicetree/bindings/sound/tas2562.yaml new file mode 100644 index 000000000000..8d75a798740b --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tas2562.yaml @@ -0,0 +1,69 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +# Copyright (C) 2019 Texas Instruments Incorporated +%YAML 1.2 +--- +$id: "http://devicetree.org/schemas/sound/tas2562.yaml#" +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+title: Texas Instruments TAS2562 Smart PA
+maintainers:
- Dan Murphy dmurphy@ti.com
+description: |
- The TAS2562 is a mono, digital input Class-D audio amplifier optimized for
- efficiently driving high peak power into small loudspeakers.
- Integrated speaker voltage and current sense provides for
- real time monitoring of loudspeaker behavior.
+properties:
- compatible:
- enum:
- ti,tas2562
- ti,tas2563
- reg:
- maxItems: 1
- description: |
I2C address of the device can be one of these 0x4c, 0x4d, 0x4e or 0x4f
- shut-down-gpios:
- description: GPIO used to control the state of the device.
- deprecated: true
I think you should just remove this given it never worked with any released kernel. Otherwise,
Reviewed-by: Rob Herring robh@kernel.org
I would but I came to know that there are customer DTs out there that have this property already in their product.
Dan
participants (2)
-
Dan Murphy
-
Rob Herring