Hello Rob,
Thank you for your comment.
On 2020/07/14 11:43, Rob Herring wrote:
On Tue, Jun 30, 2020 at 10:54:12PM +0900, Katsuhiro Suzuki wrote:
This patch converts Rockchip rk3328 audio codec binding to DT schema. And adds description about "mclk" clock and fixes some errors in original example.
Signed-off-by: Katsuhiro Suzuki katsuhiro@katsuster.net
.../bindings/sound/rockchip,rk3328-codec.txt | 28 -------- .../bindings/sound/rockchip,rk3328-codec.yaml | 70 +++++++++++++++++++ 2 files changed, 70 insertions(+), 28 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/rockchip,rk3328-codec.txt create mode 100644 Documentation/devicetree/bindings/sound/rockchip,rk3328-codec.yaml
Need to Cc Mark Brown...
Oops... I'll add him in the next time.
diff --git a/Documentation/devicetree/bindings/sound/rockchip,rk3328-codec.txt b/Documentation/devicetree/bindings/sound/rockchip,rk3328-codec.txt deleted file mode 100644 index 1ecd75d2032a..000000000000 --- a/Documentation/devicetree/bindings/sound/rockchip,rk3328-codec.txt +++ /dev/null @@ -1,28 +0,0 @@ -* Rockchip Rk3328 internal codec
-Required properties:
-- compatible: "rockchip,rk3328-codec" -- reg: physical base address of the controller and length of memory mapped
- region.
-- rockchip,grf: the phandle of the syscon node for GRF register. -- clocks: a list of phandle + clock-specifer pairs, one for each entry in clock-names. -- clock-names: should be "pclk". -- spk-depop-time-ms: speak depop time msec.
-Optional properties:
-- mute-gpios: GPIO specifier for external line driver control (typically the
dedicated GPIO_MUTE pin)
-Example for rk3328 internal codec:
-codec: codec@ff410000 {
- compatible = "rockchip,rk3328-codec";
- reg = <0x0 0xff410000 0x0 0x1000>;
- rockchip,grf = <&grf>;
- clocks = <&cru PCLK_ACODEC>;
- clock-names = "pclk";
- mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
- spk-depop-time-ms = 100;
-}; diff --git a/Documentation/devicetree/bindings/sound/rockchip,rk3328-codec.yaml b/Documentation/devicetree/bindings/sound/rockchip,rk3328-codec.yaml new file mode 100644 index 000000000000..525b48c2f5de --- /dev/null +++ b/Documentation/devicetree/bindings/sound/rockchip,rk3328-codec.yaml @@ -0,0 +1,70 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/rockchip,rk3328-codec.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Rockchip rk3328 internal codec
+maintainers:
- Heiko Stuebner heiko@sntech.de
+properties:
- compatible:
- const: rockchip,rk3328-codec
- reg:
- maxItems: 1
- clocks:
- items:
- description: clock for audio codec
- description: clock for I2S master clock
- clock-names:
- items:
- const: pclk
- const: mclk
- rockchip,grf:
- $ref: /schemas/types.yaml#/definitions/phandle
- description:
The phandle of the syscon node for the GRF register.
- spk-depop-time-ms:
- $ref: /schemas/types.yaml#/definitions/uint32
Don't need a type with standard unit suffixes.
- default: 200
Is there a range of values? Surely 2^32 would be too long.
No there isn't. Unfortunately detail specification of rk3328 internal audio codec is not public. I also think 2^32 is too long, but no one knows correct range...
Otherwise,
Reviewed-by: Rob Herring robh@kernel.org
Best Regards, Katsuhiro Suzuki
- description:
Speaker depop time in msec.
- mute-gpios:
- maxItems: 1
- description:
GPIO specifier for external line driver control (typically the
dedicated GPIO_MUTE pin)
- "#sound-dai-cells":
- const: 0
+required:
- compatible
- reg
- clocks
- clock-names
- rockchip,grf
- "#sound-dai-cells"
+examples:
- |
- #include <dt-bindings/gpio/gpio.h>
- #include <dt-bindings/clock/rk3328-cru.h>
- codec: codec@ff410000 {
compatible = "rockchip,rk3328-codec";
reg = <0xff410000 0x1000>;
clocks = <&cru PCLK_ACODECPHY>, <&cru SCLK_I2S1>;
clock-names = "pclk", "mclk";
rockchip,grf = <&grf>;
mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
spk-depop-time-ms = <100>;
#sound-dai-cells = <0>;
- };
-- 2.27.0